TensorScatterNdAdd

lớp cuối cùng công khai TensorScatterNdAdd

Thêm `cập nhật` thưa thớt vào một tensor hiện có theo `chỉ số`.

Thao tác này tạo ra một tensor mới bằng cách thêm `updates` thưa thớt vào `tensor` được truyền vào. Thao tác này rất giống với `tf.scatter_nd_add`, ngoại trừ việc các bản cập nhật được thêm vào một tensor hiện có (ngược lại với một biến). Nếu bộ nhớ dành cho tensor hiện có không thể được sử dụng lại thì một bản sao sẽ được tạo và cập nhật.

`indices` là một tenxơ số nguyên chứa các chỉ số thành một tenxơ mới có hình dạng `tensor.shape`. Chiều cuối cùng của `chỉ số` tối đa có thể là cấp `tensor.shape`:

chỉ số.shape[-1] <= tensor.shape.rank

Chiều cuối cùng của `indices` tương ứng với các chỉ số thành các phần tử (nếu `indices.shape[-1] = tensor.shape.rank`) hoặc slice (nếu `indices.shape[-1] < tensor.shape.rank`) dọc theo chiều `indices.shape[-1]` của `tensor.shape`. `updates` là một tensor có hình dạng

index.shape[:-1] + tensor.shape[indices.shape[-1]:]

Hình thức đơn giản nhất của tensor_scatter_add là thêm các phần tử riêng lẻ vào một tensor theo chỉ mục. Ví dụ: giả sử chúng ta muốn thêm 4 phần tử vào một tensor hạng 1 có 8 phần tử.

Trong Python, thao tác thêm phân tán này sẽ trông như thế này:

indices = tf.constant([[4], [3], [1], [7]])
     updates = tf.constant([9, 10, 11, 12])
     tensor = tf.ones([8], dtype=tf.int32)
     updated = tf.tensor_scatter_nd_add(tensor, indices, updates)
     print(updated)
 
Tensor kết quả sẽ trông như thế này:

[1, 12, 1, 11, 10, 1, 1, 13]

Chúng ta cũng có thể chèn toàn bộ các lát cắt của tensor cấp cao hơn cùng một lúc. Ví dụ: nếu chúng ta muốn chèn hai lát cắt vào chiều thứ nhất của tensor hạng 3 với hai ma trận có giá trị mới.

Trong Python, thao tác thêm phân tán này sẽ trông như thế này:

indices = tf.constant([[0], [2]])
     updates = tf.constant([[[5, 5, 5, 5], [6, 6, 6, 6],
                             [7, 7, 7, 7], [8, 8, 8, 8]],
                            [[5, 5, 5, 5], [6, 6, 6, 6],
                             [7, 7, 7, 7], [8, 8, 8, 8]]])
     tensor = tf.ones([4, 4, 4],dtype=tf.int32)
     updated = tf.tensor_scatter_nd_add(tensor, indices, updates)
     print(updated)
 
Tensor kết quả sẽ trông như thế này:

[[[6, 6, 6, 6], [7, 7, 7, 7], [8, 8, 8, 8], [9, 9, 9, 9]], [[1, 1, 1 , 1], [1, 1, 1, 1], [1, 1, 1, 1], [1, 1, 1, 1]], [[6, 6, 6, 6], [7, 7 , 7, 7], [8, 8, 8, 8], [9, 9, 9, 9]], [[1, 1, 1, 1], [1, 1, 1, 1], [1 , 1, 1, 1], [1, 1, 1, 1]]]

Lưu ý rằng trên CPU, nếu tìm thấy chỉ mục ngoài giới hạn, lỗi sẽ được trả về. Trên GPU, nếu tìm thấy chỉ mục ngoài giới hạn, chỉ mục đó sẽ bị bỏ qua.

Hằng số

Sợi dây OP_NAME Tên của op này, được biết đến bởi công cụ lõi TensorFlow

Phương pháp công khai

Đầu ra <T>
asOutput ()
Trả về tay cầm tượng trưng của tensor.
tĩnh <T mở rộng TType > TensorScatterNdAdd <T>
tạo ( Phạm vi phạm vi, tensor Toán hạng <T>, Toán hạng <? mở rộng TNumber > chỉ số, cập nhật Toán hạng <T>)
Phương thức gốc để tạo một lớp bao bọc một thao tác TensorScatterNdAdd mới.
Đầu ra <T>
đầu ra ()
Một tensor mới được sao chép từ tensor và các bản cập nhật được thêm vào theo các chỉ số.

Phương pháp kế thừa

Hằng số

Chuỗi cuối cùng tĩnh công khai OP_NAME

Tên của op này, được biết đến bởi công cụ lõi TensorFlow

Giá trị không đổi: "TensorScatterAdd"

Phương pháp công khai

Đầu ra công khai <T> asOutput ()

Trả về tay cầm tượng trưng của tensor.

Đầu vào của các hoạt động TensorFlow là đầu ra của một hoạt động TensorFlow khác. Phương pháp này được sử dụng để thu được một thẻ điều khiển mang tính biểu tượng đại diện cho việc tính toán đầu vào.

public static TensorScatterNdAdd <T> tạo ( Phạm vi phạm vi, tensor toán hạng <T>, toán hạng <? mở rộng TNumber > chỉ mục, cập nhật toán hạng <T>)

Phương thức gốc để tạo một lớp bao bọc một thao tác TensorScatterNdAdd mới.

Thông số
phạm vi phạm vi hiện tại
tenxơ Tenor để sao chép/cập nhật.
chỉ số Tenxơ chỉ số.
cập nhật Cập nhật để phân tán vào đầu ra.
Trả lại
  • một phiên bản mới của TensorScatterNdAdd

Đầu ra công khai đầu ra <T> ()

Một tensor mới được sao chép từ tensor và các bản cập nhật được thêm vào theo các chỉ số.