1. 基础理论
1.1 网络结构梳理
在CNN网络模型是建立在传统神经网络结构上的,对于一个传统的神经网络其结构是这样的:
从上面可以看出,其模型是全连接的。若是使用一幅512*512大小的图像作为输入,隐层1中含有10000个神经元,那么在不算偏置项的情况下,权值参数的个数就是512*512*10000个,如此巨大的参数量不计较内存其优化也是比较困难的。
在此基础上学者推出了CNN网络模型,其较为经典的运用便是LeNet,下面是其结构展示:
可以从上图中看出,其网络结构中主要存在两个之前没有的成分:卷积层(ConvNet)、池化层(PoolNet)。对于上图中的卷积层C1可以看到它包含的是6个卷积核,每个卷积核的大小是5*5,因而其参数量是6*(5*5+1)。相比之前的传统神经网络在参数量上就小了很多。说道卷积其具体的含义就是对图像使用掩膜进行运算,与传统图像处理中的中值滤波、均值滤波有类似性,可以使用下图进行解释:
在上图中可以看到黄色的滑动窗口在图像矩阵中进行滑动,从而得到了最后的卷积结果。对于卷积之后图像的尺寸是有一个计算公式的,当下假设输入图像的尺寸 W∗H W ∗ H ,卷积核的尺寸为 Wk∗Hk W k ∗ H k ,填充用的 padding=p