关于理解tf.pad结果的正确方法

use*_*099 6 tensorflow

在阅读tf.pad的文档时,我对本教程中给出的示例感到非常困惑.例如,填充是[[1,1,],[2,2]]如何导致得到的张量具有如图所示的形状.此外,生成这些填充值的机制是什么,例如,用红色圆圈标记的值.如何将解释与示例联系起来还不是很清楚.

在此输入图像描述

小智 7

同意文档不能很好地解释该方法。无论如何

pad(t, paddings, "CONSTANT");根据示例,对于“填充”,我们从维度0(即按行)开始,这paddings[0,0]=1,意味着在上方添加一行,并在末尾paddings[0,1]=1,添加一行

现在,考虑填充的尺寸1(按列)。paddings[1,0]=2,表示在开头添加两列,并paddings[1,1]=2,表示在末尾添加两列

我希望这是有帮助的。


Jul*_*.M. 2

填充元组中的第一对是水平填充,第二对是垂直填充

反射的填充似乎完全反射,就好像您在填充之前的最后一个数字上放置了一面镜子

输入:123

[2,2] 水平输出:32 123 21

水平方向的逻辑相同

对称似乎做同样的事情,除了它也首先重复边界数

21 123 32

对角线(角)将填充方案应用于垂直填充输出

用 [1,1],[2,2] 和输入反映:

123
456
Run Code Online (Sandbox Code Playgroud)

输出:

65 456 54
32 123  23
65  456 54
32  123 21
Run Code Online (Sandbox Code Playgroud)