有人可以告诉我为什么密集层和输出层的大小分别为256和10?
input = 1x28x28
conv2d1 (28-(5-1))=24 -> 32x24x24
maxpool1 32x12x12
conv2d2 (12-(3-1))=10 -> 32x10x10
maxpool2 32x5x5
dense 256
output 10
答案 0 :(得分:1)
卷积层与完全连接的层不同。对于完全连接,您将矢量重新整形为一个单一维度,并应用矩阵乘法和fc图层权重(W * x + B)。
你应该在这里清楚地阅读和理解概念(了解如何运作的最佳教程):http://cs231n.github.io/convolutional-networks/#conv
对于密集层:
在您的情况下,第一个密集层的权重大小为[32 * 5 * 5,256]。将池层的输出重新整形为一个向量,并通过密集层进行馈送。第一密集层的输出是256 dim vector - 通过第二个FC层(weights_size = [256,10])得到10 dim vector
上面的链接清楚地解释了Conv,Pool,Relu,全连接层的所有细节以及每层输出大小的计算。
请仔细阅读。我希望有所帮助。