Không gianToBatchNd

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

SpaceToBatch cho các tensor ND loại T.

Thao tác này chia các kích thước "không gian" `[1, ..., M]` của đầu vào thành một lưới gồm các khối có hình dạng `block_shape` và xen kẽ các khối này với kích thước "lô" (0) sao cho ở đầu ra , kích thước không gian `[1, ..., M]` tương ứng với vị trí trong lưới và kích thước lô kết hợp cả vị trí trong khối không gian và vị trí lô ban đầu. Trước khi chia thành các khối, kích thước không gian của đầu vào tùy chọn được đệm bằng 0 theo `phần đệm`. Xem bên dưới để biết mô tả chính xác.

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ố, V mở rộng Số> SpaceToBatchNd <T>
tạo ( Phạm vi phạm vi, đầu vào Toán hạng <T>, Hình dạng khối Toán hạng <U>, phần đệm Toán hạng <V>)
Phương thức xuất xưởng để tạo một lớp bao bọc thao tác SpaceToBatchNd mới.
Đầu ra <T>

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 SpaceToBatchNd <T> tạo (Phạm vi phạm vi , đầu vào Toán hạng <T>, Khối toán hạng <U>, phần đệm Toán hạng <V>)

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

Thông số
phạm vi phạm vi hiện tại
đầu vào ND có hình dạng `input_shape = [batch] + không gian_shape + còn lại_shape`, trong đó không gian_shape có kích thước `M`.
hình khối 1-D có hình dạng `[M]`, tất cả các giá trị phải >= 1.
phần đệm 2-D với hình dạng `[M, 2]`, tất cả các giá trị phải >= 0. `paddings[i] = [pad_start, pad_end]` chỉ định phần đệm cho thứ nguyên đầu vào `i + 1`, tương ứng với thứ nguyên không gian `tôi`. Yêu cầu `block_shape[i]` chia `input_shape[i + 1] + pad_start + pad_end`.

Thao tác này tương đương với các bước sau:

1. Zero-pad phần bắt đầu và kết thúc của kích thước `[1, ..., M]` của đầu vào theo `paddings` để tạo ra `padding` có hình dạng `padding_shape`.

2. Định hình lại hình dạng `đệm` thành `được định hình lại`:

[lô] + [đệm_shape[1] / block_shape[0], block_shape[0], ..., độn_shape[M] / block_shape[M-1], block_shape[M-1]] + còn lại_shape

3. Hoán đổi các kích thước của `reshape_pddle` để tạo ra `permuted_reformed_padding` của hình dạng:

block_shape + [batch] + [padd_shape[1] / block_shape[0], ..., độn_shape[M] / block_shape[M-1]] + còn lại_shape

4. Định hình lại `permuted_reformed_pddle` để làm phẳng `block_shape` thành kích thước lô, tạo ra một tenxơ đầu ra có hình dạng:

[batch * prod(block_shape)] + [padd_shape[1] / block_shape[0], ..., độn_shape[M] / block_shape[M-1]] + còn lại_shape

Vài ví dụ:

(1) Đối với đầu vào sau của hình dạng `[1, 2, 2, 1]`, `block_shape = [2, 2]` và `paddings = [[0, 0], [0, 0]]`:

x = [[[[1], [2]], [[3], [4]]]]
 
Tenxor đầu ra có hình dạng `[4, 1, 1, 1]` và giá trị:
[[[[1]]], [[[2]]], [[[3]]], [[[4]]]]
 
(2) Đối với đầu vào sau của hình dạng `[1, 2, 2, 3]`, `block_shape = [ 2, 2]` và `paddings = [[0, 0], [0, 0]]`:
x = [[[[1, 2, 3], [4, 5, 6]],
       [[7, 8, 9], [10, 11, 12]]]]
 
Tenxor đầu ra có hình dạng `[4, 1, 1, 3]` và giá trị:
[[[[1, 2, 3]]], [[[4, 5, 6]]], [[[7, 8, 9]]], [[[10, 11, 12]]]]
 
(3) Đối với đầu vào sau của hình dạng `[1, 4, 4, 1]`, `block_shape = [2, 2]` và `paddings = [[0, 0], [0, 0]]`:
x = [[[[1],   [2],  [3],  [4]],
       [[5],   [6],  [7],  [8]],
       [[9],  [10], [11],  [12]],
       [[13], [14], [15],  [16]]]]
 
Tenxor đầu ra có hình dạng `[4, 2, 2, 1]` và giá trị:
x = [[[[1], [3]], [[9], [11]]],
      [[[2], [4]], [[10], [12]]],
      [[[5], [7]], [[13], [15]]],
      [[[6], [8]], [[14], [16]]]]
 
(4) Đối với đầu vào sau của hình dạng `[2, 2, 4, 1]`, block_shape = `[ 2, 2]` và phần đệm = `[[0, 0], [2, 0]]`:
x = [[[[1],   [2],  [3],  [4]],
       [[5],   [6],  [7],  [8]]],
      [[[9],  [10], [11],  [12]],
       [[13], [14], [15],  [16]]]]
 
Tenxor đầu ra có hình dạng `[8, 1, 3, 1]` và giá trị:
x = [[[[0], [1], [3]]], [[[0], [9], [11]]],
      [[[0], [2], [4]]], [[[0], [10], [12]]],
      [[[0], [5], [7]]], [[[0], [13], [15]]],
      [[[0], [6], [8]]], [[[0], [14], [16]]]]
 
Trong số những hoạt động khác, thao tác này rất hữu ích để giảm sự tích chập nhĩ thành tích chập đều.
Trả lại
  • một phiên bản mới của SpaceToBatchNd

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