GatherNd

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

Tập hợp các lát cắt từ `params` vào một Tensor có hình dạng được chỉ định bởi `chỉ số`.

`chỉ số` là một tenxơ nguyên K chiều, tốt nhất nên coi là tenxơ hai chiều (K-1) của các chỉ số thành `params`, trong đó mỗi phần tử xác định một lát `params`:

đầu ra[\\(i_0, ..., i_{K-2}\\)] = params[indices[\\(i_0, ..., i_{K-2}\\)]]

Trong khi trong tf.gather `indices` xác định các lát cắt theo chiều `trục` của `params`, thì trong tf.gather_nd , `indices` xác định các lát cắt theo chiều `N` đầu tiên của `params`, trong đó `N =index.shape [-1]`.

Thứ nguyên cuối cùng của `chỉ số` có thể ở mức tối đa là `params`:

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

Thứ nguyên cuối cùng của `indices` tương ứng với các phần tử (nếu `indices.shape[-1] == params.rank`) hoặc các lát (nếu `indices.shape[-1] < params.rank`) dọc theo thứ nguyên `indices. hình dạng [-1]` của `params`. Tenxơ đầu ra có hình dạng

index.shape[:-1] + params.shape[indices.shape[-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, số 0 sẽ được lưu trong giá trị đầu ra tương ứng.

Một số ví dụ dưới đây.

Lập chỉ mục đơn giản thành ma trận:

indices = [[0, 0], [1, 1]]
     params = [['a', 'b'], ['c', 'd']]
     output = ['a', 'd']
 
Lập chỉ mục lát thành ma trận:
indices = [[1], [0]]
     params = [['a', 'b'], ['c', 'd']]
     output = [['c', 'd'], ['a', 'b']]
 
Lập chỉ mục thành 3-tensor:
indices = [[1]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [[['a1', 'b1'], ['c1', 'd1']]]
 
 
     indices = [[0, 1], [1, 0]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [['c0', 'd0'], ['a1', 'b1']]
 
 
     indices = [[0, 0, 1], [1, 0, 1]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = ['b0', 'b1']
 
Lập chỉ mục theo nhóm thành ma trận:
indices = [[[0, 0]], [[0, 1]]]
     params = [['a', 'b'], ['c', 'd']]
     output = [['a'], ['b']]
 
Lập chỉ mục theo nhóm thành ma trận:
indices = [[[1]], [[0]]]
     params = [['a', 'b'], ['c', 'd']]
     output = [[['c', 'd']], [['a', 'b']]]
 
Lập chỉ mục theo nhóm vào a 3-tensor:
indices = [[[1]], [[0]]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [[[['a1', 'b1'], ['c1', 'd1']]],
               [[['a0', 'b0'], ['c0', 'd0']]]]
 
     indices = [[[0, 1], [1, 0]], [[0, 0], [1, 1]]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [[['c0', 'd0'], ['a1', 'b1']],
               [['a0', 'b0'], ['c1', 'd1']]]
 
 
     indices = [[[0, 0, 1], [1, 0, 1]], [[0, 1, 1], [1, 1, 0]]]
     params = [[['a0', 'b0'], ['c0', 'd0']],
               [['a1', 'b1'], ['c1', 'd1']]]
     output = [['b0', 'b1'], ['d0', 'c1']]
 
Xem thêm tf.gather và `tf.batch_gather`.

Phương pháp công khai

Đầu ra <T>
asOutput ()
Trả về phần điều khiển tượng trưng của một tenxơ.
tĩnh <T, U mở rộng Số> Tập hợpNd <T>
tạo ( Phạm vi phạm vi, thông số Toán hạng <T>, chỉ số Toán hạng <U>)
Phương thức xuất xưởng để tạo một lớp bao bọc một hoạt động GatherNd mới.
Đầu ra <T>
đầu ra ()
Các giá trị từ `params` được thu thập từ các chỉ mục do `indices` cung cấp, có hình dạng `indices.shape[:-1] + params.shape[indices.shape[-1]:]`.

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

Phương pháp công khai

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

Trả về phần điều khiển tượng trưng của một tenxơ.

Đầ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 GatherNd <T> tạo ( Phạm vi phạm vi, thông số Toán hạng <T>, chỉ số Toán hạng <U>)

Phương thức xuất xưởng để tạo một lớp bao bọc một hoạt động GatherNd mới.

Thông số
phạm vi phạm vi hiện tại
thông số Tenxor để thu thập giá trị.
chỉ số Tenxơ chỉ số.
Trả lại
  • một phiên bản mới của GatherNd

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

Các giá trị từ `params` được thu thập từ các chỉ mục do `indices` cung cấp, có hình dạng `indices.shape[:-1] + params.shape[indices.shape[-1]:]`.