tensorflow::ops::ScatterNdUpdate
#include <state_ops.h> Áp dụng updates thưa thớt cho từng giá trị hoặc từng phần riêng lẻ trong một phạm vi nhất định.
Bản tóm tắt
thay đổi theo indices .
ref là một Tensor có hạng P và indices là một Tensor có hạng Q
indices phải là tensor số nguyên, chứa các chỉ số vào ref . Nó phải có hình dạng \([d_0, ..., d_{Q-2}, K]\) trong đó 0 < K <= P .
Chiều trong cùng của indices (với độ dài K ) tương ứng với các chỉ số vào các phần tử (nếu K = P ) hoặc các lát cắt (nếu K < P ) dọc theo chiều thứ K của ref .
updates là Tensor bậc Q-1+PK với hình dạng:
Ví dụ, giả sử chúng ta muốn cập nhật 4 phần tử rải rác thành một tensor bậc 1 có 8 phần tử. Trong Python, thao tác cập nhật đó sẽ trông như sau:
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)
Kết quả cập nhật cho ref sẽ trông như thế này:
[1, 11, 3, 10, 9, 6, 7, 12]
Xem tf.scatter_nd để biết thêm chi tiết về cách cập nhật các slice.
Xem thêm tf.scatter_update và tf.batch_scatter_update .
Luận điểm:
- phạm vi: Một đối tượng Phạm vi
- Tham chiếu: Một Tensor có thể thay đổi. Nên được lấy từ một nút Biến .
- chỉ số: Một Tensor . Phải là một trong các kiểu sau: int32, int64. Một tensor chứa các chỉ số trỏ đến ref.
- updates: Một Tensor . Phải có cùng kiểu với ref. Một tensor chứa các giá trị được cập nhật để thêm vào ref.
Các thuộc tính tùy chọn (xem Attrs ):
- use_locking: Một giá trị boolean tùy chọn. Mặc định là True. Nếu True, việc gán sẽ được bảo vệ bằng khóa; ngược lại, hành vi không được xác định, nhưng có thể ít xảy ra xung đột hơn.
Trả về:
-
Output: Giống như tham chiếu. Được trả về như một tiện ích cho các thao tác muốn sử dụng các giá trị đã cập nhật sau khi quá trình cập nhật hoàn tất.
Hàm khởi tạo và hàm hủy | |
|---|---|
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) |
Thuộc tính công khai | |
|---|---|
operation | |
output_ref | |
Chức năng công cộng | |
|---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const | |
Các hàm tĩnh công khai | |
|---|---|
UseLocking (bool x) | |
Cấu trúc | |
|---|---|
| tensorflow::ops::ScatterNdUpdate::Attrs | Các thiết lập thuộc tính tùy chọn cho ScatterNdUpdate . |
Thuộc tính công khai
hoạt động
Operation operation
tham chiếu đầu ra
::tensorflow::Output output_ref
Chức năng công cộng
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 )
nút
::tensorflow::Node * node() const
operator::tensorflow::Input
operator::tensorflow::Input() const
operator::tensorflow::Output
operator::tensorflow::Output() const
Các hàm tĩnh công khai
Sử dụng khóa
Attrs UseLocking( bool x )