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

#include <state_ops.h>

ใช้ updates แบบกระจัดกระจายกับแต่ละค่าหรือชิ้นส่วนภายในที่กำหนด

สรุป

แปรผันตาม indices

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

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

มิติด้านในสุดของ indices (ที่มีความยาว K ) สอดคล้องกับดัชนีในองค์ประกอบ (ถ้า K = P ) หรือชิ้นส่วน (ถ้า K < P ) ตามมิติ K th ของการ 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])
    update = tf.scatter_nd_update(ref, indices, updates)
    with tf.Session() as sess:
      print sess.run(update)

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

[1, 11, 3, 10, 9, 6, 7, 12]

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

โปรดดูที่ tf.scatter_update และ tf.batch_scatter_update

อาร์กิวเมนต์:

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

แอตทริบิวต์เสริม (ดู Attrs ):

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

ผลตอบแทน:

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

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

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

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

operation
output_ref

หน้าที่สาธารณะ

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

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

UseLocking (bool x)

โครงสร้าง

tensorflow :: ops :: ScatterNdUpdate :: Attrs

ตัวตั้งค่าแอตทริบิวต์เสริมสำหรับ ScatterNdUpdate

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

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

Operation operation

output_ref

::tensorflow::Output output_ref

หน้าที่สาธารณะ

ScatterNdUpdate

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

ScatterNdUpdate

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

โหนด

::tensorflow::Node * node() const 

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

 operator::tensorflow::Input() const 

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

 operator::tensorflow::Output() const 

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

ใช้ล็อค

Attrs UseLocking(
  bool x
)