dòng chảy :: hoạt động :: DepthToSpace
#include <array_ops.h>
DepthToSpace cho tensors loại T.
Tóm lược
Sắp xếp lại dữ liệu theo chiều sâu thành các khối dữ liệu không gian. Đây là sự chuyển đổi ngược lại của SpaceToDepth. Cụ thể hơn, op này xuất ra một bản sao của tensor đầu vào trong đó các giá trị từ kích thước chiều depth
được di chuyển trong các khối không gian sang kích thước chiều height
và width
. block_size
cho biết kích thước khối đầu vào và cách dữ liệu được di chuyển.
- Các đoạn dữ liệu có kích thước
block_size * block_size
từ độ sâu được sắp xếp lại thành các khối không chồng chéo có kích thướcblock_size x block_size
- Chiều rộng của tensor đầu ra là
input_depth * block_size
, trong khi chiều cao làinput_height * block_size
. - Các tọa độ Y, X trong mỗi khối của hình ảnh đầu ra được xác định bởi thành phần bậc cao của chỉ số kênh đầu vào.
- Độ sâu của tensor đầu vào phải chia hết cho
block_size * block_size
.
data_format
attr chỉ định cách bố trí các bộ căng đầu vào và đầu ra với các tùy chọn sau: "NHWC": [ batch, height, width, channels ]
"NCHW": [ batch, channels, height, width ]
"NCHW_VECT_C": qint8 [ batch, channels / 4, height, width, 4 ]
Sẽ rất hữu ích nếu coi hoạt động này như biến đổi một Tensor 6-D. ví dụ: đối với data_format = NHWC, Mỗi phần tử trong tensor đầu vào có thể được chỉ định thông qua 6 tọa độ, được sắp xếp theo thứ tự ý nghĩa bố cục bộ nhớ giảm dần như: n, iY, iX, bY, bX, oC (trong đó n = chỉ số lô, iX, iY nghĩa là X hoặc tọa độ Y trong hình ảnh đầu vào, bX, bY có nghĩa là tọa độ trong khối đầu ra, oC có nghĩa là các kênh đầu ra). Đầu ra sẽ là đầu vào được chuyển sang bố cục sau: n, iY, bY, iX, bX, oC
Thao tác này hữu ích để thay đổi kích thước kích hoạt giữa các lần kết hợp (nhưng giữ tất cả dữ liệu), ví dụ thay vì gộp chung. Nó cũng hữu ích cho việc đào tạo các mô hình tích chập thuần túy.
Ví dụ: đã cho một đầu vào là shape [1, 1, 1, 4]
, data_format = "NHWC" và block_size = 2:
x = [[[[1, 2, 3, 4]]]]
This operation will output a tensor of shape
[1, 2, 2, 1]
:
[[[[1], [2]], [[3], [4]]]]Ở đây, đầu vào có lô 1 và mỗi phần tử lô có hình dạng
[1, 1, 4]
, đầu ra tương ứng sẽ có 2x2 phần tử và sẽ có độ sâu là 1 kênh (1 =4 / (block_size * block_size)
). Hình dạng phần tử đầu ra là[2, 2, 1]
.Đối với một tensor đầu vào có độ sâu lớn hơn, đây là hình dạng
[1, 1, 1, 12]
, ví dụ:
x = [[[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]]]]Phép toán này, đối với kích thước khối là 2, sẽ trả về hình dạng tensor sau
[1, 2, 2, 3]
[[[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]]]
Similarly, for the following input of shape
[1 2 2 4]
, and a block size of 2:
x = [[[[1, 2, 3, 4], [5, 6, 7, 8]], [[9, 10, 11, 12], [13, 14, 15, 16]]]]toán tử sẽ trả về tensor hình dạng sau
[1 4 4 1]
:
x = [[[ [1], [2], [5], [6]], [ [3], [4], [7], [8]], [ [9], [10], [13], [14]], [ [11], [12], [15], [16]]]]
Arguments:
- scope: A Scope object
- block_size: The size of the spatial block, same as in Space2Depth.
Returns:
Output
: The output tensor.
Constructors and Destructors |
|
---|---|
DepthToSpace(const ::tensorflow::Scope & scope, ::tensorflow::Input input, int64 block_size)
|
|
DepthToSpace(const ::tensorflow::Scope & scope, ::tensorflow::Input input, int64 block_size, const DepthToSpace::Attrs & attrs)
|
Public attributes |
|
---|---|
operation
|
|
output
|
Public functions |
|
---|---|
node() const
|
::tensorflow::Node *
|
operator::tensorflow::Input() const
|
|
operator::tensorflow::Output() const
|
|
Public static functions |
|
---|---|
DataFormat(StringPiece x)
|
Structs |
|
---|---|
tensorflow:: |
Optional attribute setters for DepthToSpace. |
Public attributes
operation
Operation operation
đầu ra
::tensorflow::Output output
Chức năng công cộng
DepthToSpace
DepthToSpace( const ::tensorflow::Scope & scope, ::tensorflow::Input input, int64 block_size )
DepthToSpace
DepthToSpace( const ::tensorflow::Scope & scope, ::tensorflow::Input input, int64 block_size, const DepthToSpace::Attrs & attrs )
nút
::tensorflow::Node * node() const
toán tử :: tensorflow :: Đầu vào
operator::tensorflow::Input() const
toán tử :: tensorflow :: Đầu ra
operator::tensorflow::Output() const
Các chức năng tĩnh công khai
DataFormat
Attrs DataFormat( StringPiece x )