tensorflow::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 ของ ref
updates คือ Tensor ที่มีอันดับ Q-1+PK และมีรูปร่างดังนี้:
ตัวอย่างเช่น สมมติว่าเราต้องการอัปเดตองค์ประกอบที่กระจัดกระจาย 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
ข้อโต้แย้ง:
- ขอบเขต: วัตถุ ขอบเขต
- อ้างอิง: เทนเซอร์ ที่เปลี่ยนแปลงได้ ควรมาจากโหนด ตัวแปร
- ดัชนี: เทนเซอร์ ต้องเป็นหนึ่งในประเภทต่อไปนี้: int32, int64 เทนเซอร์ของดัชนีไปยัง ref
- การอัปเดต: เทนเซอร์ ต้องมีประเภทเดียวกับค่าอ้างอิง เทนเซอร์ของค่าที่อัปเดตแล้วที่จะเพิ่มลงในค่าอ้างอิง
คุณลักษณะเสริม (ดูที่ Attrs ):
- use_locking: ค่าบูลีนที่ไม่บังคับ ค่าเริ่มต้นคือ True ถ้าเป็น 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
เอาต์พุต_อ้างอิง
::tensorflow::Output output_ref
หน้าที่สาธารณะ
การอัปเดตแบบกระจาย
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 )
โหนด
::tensorflow::Node * node() const
ตัวดำเนินการ::เทนเซอร์โฟลว์::อินพุต
operator::tensorflow::Input() const
ตัวดำเนินการ::เทนเซอร์โฟลว์::เอาต์พุต
operator::tensorflow::Output() const
ฟังก์ชันคงที่สาธารณะ
ใช้การล็อก
Attrs UseLocking( bool x )