想自己动手写一个CNN很久了,论文和代码之间的差距有一个银河系那么大. 在实现两层的CNN之前,首先实现了UFLDL中与CNN有关的作业.然后参考它的代码搭建了一个一层的CNN.最后实现了一个两层的CNN,码代码花了一天,调试花了5天,我也是醉了.这里记录一下通过代码对CNN加深的理解. 首先,dataset是MNIST.这里层的概念是指convolution+pooling,有些地方会把convolution和pooling分别作为两层看待. 1.CNN的结构 这个两层CNN的结构如下: 图一