T 類型張量的 SpaceToDepth。
用法
tf.compat.v1.space_to_depth(
input, block_size, name=None, data_format='NHWC'
)
參數
-
input
一個Tensor
。 -
block_size
int
即>= 2
。空間塊的大小。 -
data_format
一個可選的string
來自:"NHWC", "NCHW", "NCHW_VECT_C"
。默認為"NHWC"
。 -
name
操作的名稱(可選)。
返回
-
一個
Tensor
。具有與input
相同的類型。
將空間數據塊重新排列到深度。更具體地說,此操作輸出輸入張量的副本,其中來自 height
和 width
維度的值被移動到 depth
維度。 attr block_size
表示輸入塊大小。
- 大小為
block_size x block size
的非重疊塊在每個位置重新排列為深度。 - 輸出張量的深度是
block_size * block_size * input_depth
。 - 輸入的每個塊內的 Y、X 坐標成為輸出通道索引的高階分量。
- 輸入張量的高度和寬度必須能被block_size整除。
data_format
attr 使用以下選項指定輸入和輸出張量的布局: "NHWC": [ batch, height, width, channels ]
"NCHW": [ batch, channels, height, width ]
"NCHW_VECT_C": qint8 [ batch, channels / 4, height, width, 4 ]
將操作視為轉換 6-D 張量很有用。例如對於data_format = NHWC,輸入張量中的每個元素可以通過 6 個坐標指定,按內存布局重要性遞減順序排列為:n,oY,bY,oX,bX,iC(其中 n=batch index,oX,oY 表示輸出圖像內的 X 或 Y 坐標,bX,bY 表示輸入塊內的坐標,iC 表示輸入通道)。輸出將轉置為以下布局:n,oY,oX,bY,bX,iC
此操作對於調整卷積之間的激活大小(但保留所有數據)很有用,例如而不是池化。它對於訓練純卷積模型也很有用。
例如,給定形狀為 [1, 2, 2, 1]
的輸入,data_format = "NHWC" 和 block_size = 2:
x = [[[[1], [2]],
[[3], [4]]]]
此操作將輸出形狀為 [1, 1, 1, 4]
的張量:
[[[[1, 2, 3, 4]]]]
這裏,輸入有一個批次 1,每個批次元素的形狀為 [2, 2, 1]
,對應的輸出將有一個元素(即寬度和高度均為 1),並且深度為 4 個通道(1 * block_size * block_size)。輸出元素形狀為 [1, 1, 4]
。
對於深度較大的輸入張量,這裏的形狀為 [1, 2, 2, 3]
,例如
x = [[[[1, 2, 3], [4, 5, 6]],
[[7, 8, 9], [10, 11, 12]]]]
對於block_size of 2,此操作將返回以下形狀為 [1, 1, 1, 12]
的張量
[[[[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]]]]
同樣,對於以下形狀 [1 4 4 1]
的輸入,塊大小為 2:
x = [[[[1], [2], [5], [6]],
[[3], [4], [7], [8]],
[[9], [10], [13], [14]],
[[11], [12], [15], [16]]]]
運算符將返回以下形狀的張量 [1 2 2 4]
:
x = [[[[1, 2, 3, 4],
[5, 6, 7, 8]],
[[9, 10, 11, 12],
[13, 14, 15, 16]]]]
相關用法
- Python tf.compat.v1.space_to_batch用法及代碼示例
- Python tf.compat.v1.sparse_to_dense用法及代碼示例
- Python tf.compat.v1.sparse_segment_sum用法及代碼示例
- Python tf.compat.v1.sparse_split用法及代碼示例
- Python tf.compat.v1.sparse_reduce_max用法及代碼示例
- Python tf.compat.v1.sparse_merge用法及代碼示例
- Python tf.compat.v1.sparse_concat用法及代碼示例
- Python tf.compat.v1.sparse_placeholder用法及代碼示例
- Python tf.compat.v1.sparse_add用法及代碼示例
- Python tf.compat.v1.sparse_reduce_sum用法及代碼示例
- Python tf.compat.v1.strings.length用法及代碼示例
- Python tf.compat.v1.scatter_min用法及代碼示例
- Python tf.compat.v1.summary.merge用法及代碼示例
- Python tf.compat.v1.size用法及代碼示例
- Python tf.compat.v1.scatter_add用法及代碼示例
- Python tf.compat.v1.summary.FileWriter用法及代碼示例
- Python tf.compat.v1.scatter_div用法及代碼示例
- Python tf.compat.v1.string_split用法及代碼示例
- Python tf.compat.v1.squeeze用法及代碼示例
- Python tf.compat.v1.set_random_seed用法及代碼示例
注:本文由純淨天空篩選整理自tensorflow.org大神的英文原創作品 tf.compat.v1.space_to_depth。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。