引言
据我从用于视觉识别的CS231n卷积神经网络了解到的是,Size of the output volume
表示给定以下参数的神经元数:
我贴了两个例子。在示例1中,我完全没有问题。但是,在示例2中,我感到困惑。
示例1
在真实世界示例部分中,它们以[227 x 227 x 3]
输入映像开始。参数如下:F = 11, S = 4, P = 0, W = 227
。
我们注意到卷积有一个K = 96
深度。(为什么?)
output volume
的大小是(227 - 11)/4 + 1 = 55
。因此,我们会让55 x 55 x 96 = 290,400
神经元每个指向图像中的一个[11 x 11 x 3]
区域,这实际上是我们想要计算点积的核。
示例2
在下面的示例中,摘自Numpy示例部分。我们有一个输入图像与以下形状的[11 x 11 x 3]
。用于计算输出卷大小的参数如下:W = 11, P = 0, S = 2 and F = 5
。
我们注意到卷积有一定的K = 4
深度。
公式(11-5)/2+1 = 4
只产生4个神经元。每个神经元指向图像中一个大小为[5 x 5 x 4]
的区域。
似乎他们只是在向x方向移动内核。我们是不是应该有12个神经元,每个都有[5 x 5 x 4]
的重量。
V[0,0,0] = np.sum(X[:5,:5,:] * W0) + b0
V[1,0,0] = np.sum(X[2:7,:5,:] * W0) + b0
V[2,0,0] = np.sum(X[4:9,:5,:] * W0) + b0
V[3,0,0] = np.sum(X[6:11,:5,:] * W0) + b0
问题
K = 96
?发布于 2016-07-27 16:58:00
示例1
为什么卷积的深度为K= 96?
深度(K)等于在卷积层上使用的滤波器数目。一个更大的数字通常会带来更好的结果。问题是:训练速度慢。复杂的图像需要更多的过滤器。我通常用第一层的32个过滤器和第二层上的64个过滤器开始测试。
示例2
公式(11-5)/2+1 =4只产生4个神经元.
我不是专家,但我认为这是错误的。公式只定义输出大小(高度和宽度)。卷积层具有大小(高度和宽度)和深度。大小由这个公式定义,深度由使用的滤波器数目决定。神经元总数为:
## height * width * depth
4 * 4 * 4 = 64
问题
https://stackoverflow.com/questions/38617320
复制相似问题