卷积神经网络通常可以通过训练网络来学习大量的输入输出间的映射关系,且并不需要设计精确复杂的数字表达式。
卷积神经网络:
通常包括输入层、卷积层、池化层、全连接层和输出层。输入层作为整个网络的输入,在图像处理中表示图像的三维像素矩阵,分别是长度、宽度和深度。
卷积层:
核心内容
是卷积神经网络中非常核心的一个部分,通过对输入数据进行大量卷积运算
来提取特征,决定着网络的学习能力。
每一个卷积层需要设置的参数有卷积核大小(f)、卷积步长(s)、填充边长(p)等。列如卷积前图像的大小(n)是 6×6, 卷积核大小为 3×3,卷积步长为 1,最终的卷积矩阵的大小(n')便是4×4。
valid 填充法:n' = (n - f) / s + 1
same 填充法:n' = (n + 2p - f) / s + 1
卷积化两大问题
一.多次卷积后,卷积矩阵会变得特别小,失去很多有用信息。
二.边缘图像信息仅仅被运算了一次,而中心图像信息却多次运算,导致边缘图像在输出中采用很少,边缘信息缺失。
解决方案(通过边缘填充的方式)
same填充法:将原图形边缘填充一些像素点,生成的图像大小(n + 2p)* (n + 2p),然后在进行卷积化处理,保证输出图像的大小与原图像一样。
因为输出图像的大小与原图像一样,得出 (n + 2p - f) / s + 1 = n。
反推出 2p = n * (s - 1) + f - 1
由于same填充法中 s 一般为 1,故公式可简化为 2p = f - 1 (推出 p = (f - 1) / 2)
所以一般只有卷积核 为奇数时才使用same 法填充,不然易导致不对称填充