Jia*_*Liu 4 python deep-learning tensorflow
有tensorflow.pad()的示例:
Run Code Online (Sandbox Code Playgroud)# 't' = is [[1, 2, 3], [4, 5, 6]]. # 'paddings' is [[1, 1,], [2, 2]]. # rank of 't' is 2. ' tf.pad(t, paddings, "CONSTANT")' ==> [[0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 2, 3, 0, 0], [0, 0, 4, 5, 6, 0, 0], [0, 0, 0, 0, 0, 0, 0]]
我的问题是如何在每个输入维度中填充零?并且t的形状为[2,3],为什么pad()之后的输出为[4,x],“ 4”如何出现?感谢您的帮助!!!
'paddings'是[[1,1,],[2,2]]。尝试将此谷歌映射为[[top,bottom],[left,right]]。即
top = 1, //Extra padding introduce on top
bottom = 1, //Extra padding introduce on bottom
left = 2, //Extra padding introduce on left
right = 2. //Extra padding introduce on right
Run Code Online (Sandbox Code Playgroud)
尝试另一个示例,其中“填充”为[[2,1],[2,3]]。输出将是:
[[0 0 0 0 0 0 0 0]
[0 0 0 0 0 0 0 0]
[0 0 1 2 3 0 0 0]
[0 0 4 5 6 0 0 0]
[0 0 0 0 0 0 0 0]]
Run Code Online (Sandbox Code Playgroud)
此处top = 2,bottom = 1,left = 2,right = 3。
文档对此非常清楚。对于输入的每个维度 D,paddings[D, 0] 表示在该维度的张量内容之前添加多少个值,paddings[D, 1] 表示在该维度的张量内容之后添加多少个值。
为什么输出是[4, x]?
4 是维度 0 的大小,维度 0 有 padding [1, 1],根据文档,在t的零维度之前加一,在 t 的零维度之后加一, t的零维度的大小是 2, 2 + 1 + 1,你有 4结果。即它分别在 t 的开头和结尾填充一个零行。类似地,对于维度 1,由于padding[1]为[2,2] ,因此分别在开头和结尾处向t添加两个零列。
| 归档时间: |
|
| 查看次数: |
3020 次 |
| 最近记录: |