เทนเซอร์โฟลว์:: ปฏิบัติการ:: กระจายNdบวก

#include <state_ops.h>

ใช้การเพิ่มเติมแบบกระจายกับแต่ละค่าหรือส่วนย่อยใน ตัวแปร

สรุป

ref คือ Tensor ที่มีอันดับ P และ indices คือ Tensor ที่มีอันดับ Q

indices จะต้องเป็นเทนเซอร์จำนวนเต็มซึ่งมีดัชนีอยู่ใน ref จะต้องเป็นรูป [d_0, ..., d_{Q-2}, K] โดยที่ 0 < K <= P

มิติด้านในสุดของ indices (ที่มีความยาว K ) สอดคล้องกับดัชนีในองค์ประกอบ (ถ้า K = P ) หรือชิ้น (ถ้า K < P ) ตามมิติที่ K ของ ref

updates คือ Tensor อันดับ Q-1+PK ที่มีรูปร่าง:

[d_0, ..., d_{Q-2}, ref.shape[K], ..., ref.shape[P-1]]

ตัวอย่างเช่น สมมติว่าเราต้องการเพิ่มองค์ประกอบที่กระจัดกระจาย 4 รายการให้กับเทนเซอร์อันดับ 1 ให้เป็น 8 องค์ประกอบ ใน Python การเพิ่มนั้นจะมีลักษณะดังนี้:

ref = tf.Variable([1, 2, 3, 4, 5, 6, 7, 8])
indices = tf.constant([[4], [3], [1], [7]])
updates = tf.constant([9, 10, 11, 12])
add = tf.scatter_nd_add(ref, indices, updates)
with tf.Session() as sess:
  print sess.run(add)

ผลลัพธ์การอัปเดตเพื่ออ้างอิงจะมีลักษณะดังนี้:

[1, 13, 3, 14, 14, 6, 7, 20]

ดู tf.scatter_nd สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการอัปเดตสไลซ์

ข้อโต้แย้ง:

  • ขอบเขต: วัตถุ ขอบเขต
  • ref: เทนเซอร์ ที่ไม่แน่นอน ควรมาจากโหนด ตัวแปร
  • ดัชนี: เทนเซอร์ ต้องเป็นประเภทใดประเภทหนึ่งต่อไปนี้: int32, int64 เทนเซอร์ของดัชนีในการอ้างอิง
  • อัปเดต: เทนเซอร์ จะต้องมีประเภทเดียวกันกับการอ้างอิง เทนเซอร์ของค่าที่อัปเดตเพื่อเพิ่มลงในการอ้างอิง

แอ็ตทริบิวต์ทางเลือก (ดู Attrs ):

  • use_locking: บูลเสริม ค่าเริ่มต้นเป็น True ถ้าเป็น True งานที่ได้รับมอบหมายจะได้รับการปกป้องด้วยการล็อค มิฉะนั้นพฤติกรรมจะไม่ได้กำหนดไว้ แต่อาจแสดงความขัดแย้งน้อยลง

ผลตอบแทน:

  • Output : เช่นเดียวกับการอ้างอิง กลับมาเพื่อความสะดวกสำหรับการดำเนินงานที่ต้องการใช้ค่าที่อัพเดตหลังจากการอัพเดตเสร็จสิ้น

ตัวสร้างและผู้ทำลาย

ScatterNdAdd (const :: tensorflow::Scope & scope, :: tensorflow::Input ref, :: tensorflow::Input indices, :: tensorflow::Input updates)
ScatterNdAdd (const :: tensorflow::Scope & scope, :: tensorflow::Input ref, :: tensorflow::Input indices, :: tensorflow::Input updates, const ScatterNdAdd::Attrs & attrs)

คุณลักษณะสาธารณะ

operation
output_ref

งานสาธารณะ

node () const
::tensorflow::Node *
operator::tensorflow::Input () const
operator::tensorflow::Output () const

ฟังก์ชันคงที่สาธารณะ

UseLocking (bool x)

โครงสร้าง

เทนเซอร์โฟลว์ :: ops :: ScatterNdAdd :: Attrs

ตัวตั้งค่าแอ็ตทริบิวต์ทางเลือกสำหรับ ScatterNdAdd

คุณลักษณะสาธารณะ

การดำเนินการ

Operation operation

เอาท์พุท_อ้างอิง

::tensorflow::Output output_ref

งานสาธารณะ

กระจายNdบวก

 ScatterNdAdd(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input ref,
  ::tensorflow::Input indices,
  ::tensorflow::Input updates
)

กระจายNdบวก

 ScatterNdAdd(
  const ::tensorflow::Scope & scope,
  ::tensorflow::Input ref,
  ::tensorflow::Input indices,
  ::tensorflow::Input updates,
  const ScatterNdAdd::Attrs & attrs
)

โหนด

::tensorflow::Node * node() const 

ตัวดำเนินการ::tensorflow::อินพุต

 operator::tensorflow::Input() const 

ตัวดำเนินการ::tensorflow::เอาต์พุต

 operator::tensorflow::Output() const 

ฟังก์ชันคงที่สาธารณะ

ใช้ล็อค

Attrs UseLocking(
  bool x
)