Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python tensorflow Conven2d奇偶步幅之间的不同起始指数_Python_Machine Learning_Tensorflow_Deep Learning_Convolution - Fatal编程技术网

Python tensorflow Conven2d奇偶步幅之间的不同起始指数

Python tensorflow Conven2d奇偶步幅之间的不同起始指数,python,machine-learning,tensorflow,deep-learning,convolution,Python,Machine Learning,Tensorflow,Deep Learning,Convolution,根据我的理解,对于相同的卷积(无论步幅如何),第一个点积应该以(0,0)为中心 尽管如您所见,当步幅为奇数时,第一个点积似乎以(1,1)为中心: 在这个玩具示例中 输入形状为[5,5,1] 文件管理器形状为[3,3,1,1] res=tf.nn.conv2d(X,F,步长=[1,X,X,1],padding='SAME') 第1步结果: array([[ 1.49573362, 2.65084887, 2.96818447, 3.04787111, 1.89275599], [ 3

根据我的理解,对于相同的卷积(无论步幅如何),第一个点积应该以(0,0)为中心 尽管如您所见,当步幅为奇数时,第一个点积似乎以(1,1)为中心: 在这个玩具示例中

输入形状为[5,5,1]

文件管理器形状为[3,3,1,1]

res=tf.nn.conv2d(X,F,步长=[1,X,X,1],padding='SAME')

第1步结果:

array([[ 1.49573362,  2.65084887,  2.96818447,  3.04787111,  1.89275599],
   [ 3.1941781 ,  4.47312069,  4.10260868,  4.13415051,  2.85520792],
   [ 2.65490007,  3.41439581,  2.93415952,  3.65811515,  2.89861989],
   [ 2.22547054,  2.98453856,  2.89428496,  3.29111433,  2.53204632],
   [ 0.52702606,  1.16226625,  1.75986075,  2.20483446,  1.56959426]], dtype=float32)
第2步结果:

array([[ 1.49573362,  2.96818447,  1.89275599],
   [ 2.65490007,  2.93415952,  2.89861989],
   [ 0.52702606,  1.75986075,  1.56959426]], dtype=float32)
第3步结果:

array([[ 4.47312069,  2.85520792],
   [ 1.16226625,  1.56959426]], dtype=float32)

这是一个bug还是我遗漏了什么?

如果额外的零列数(来自填充)是奇数,则tensorflow将在末尾添加列

在stride=1的示例中,它需要添加两列,因此它在开始处添加一列,在结束处添加一列(表示每边的开始、结束:左、右、上、下)。步幅=2也会这样做


但是,对于stride=3,只需添加一列,并在末尾(右侧和底部)添加。如果需要添加5列,它将在开头(左、上)添加2列,在结尾(右、下)添加3列。

您是否尝试过用实际可以计算的值制作一个玩具示例?”正如你在下面看到的…“我不知道你的情况,但我什么也看不到:有很多随机数。是的,我看到了,但你所要做的就是比较步幅1的输出和步幅1的输出。因为带有步幅的结果是步幅1结果的子采样版本。例如,您可以看到步幅3的(0,0)结果是步幅1的(1,1)结果。