如何从最后的maxpool层到fc层?

How to get from the last maxpool layer to the fc layer?

在此演示中:http://cs.stanford.edu/people/karpathy/convnetjs/demo/mnist.html 最后一个最大池层为 4x4x16,全连接层为 1x1x10。

我不明白如何达到 10。在我的理解中,例如我做 conv2(option: 'valid') 只有一个 4x4 过滤器,stride=1 并且没有零填充。输出将是 1x1x16。如果我做更多的过滤,输出将是 16 的倍数(例如 32)??

更新,我现在的想法是:一旦我有了 1x1x16 向量,我将做 10 个一维卷积。因此使用 conv1(option: 'valid') 进行过滤并使用 10 个过滤器(长度为 16 的向量)。输出将是一个 1x1x10 向量。请让我知道,我做的对还是错。

你误解了"fully connected"的概念。有关完全连接的网络,请参阅 this top diagram。你不做另一个卷积。相反,您线性化前一层:所有 16 个过滤器的直接逐行副本,连接成一个向量,256x1。

"Fully connected" 意味着一个层的 每个 个神经元都连接到另一个层的 每个 个神经元。这个向量中有 256 个神经元,连接(权重)到最后一层中的 10 个神经元中的每一个。总共2560个权重