卷积神经网络基础

卷积神经网络的层级结构

数据输入层/ Input layer
卷积计算层/ CONV layer
ReLU激励层 / ReLU layer
池化层 / Pooling layer
全连接层 / FC layer

1.数据输入层

该层要做的处理主要是对原始图像数据进行预处理,其中包括:

去均值:把输入数据各个维度都中心化为0,如下图所示,其目的就是把样本的中心拉回到坐标系原点上。
归一化:幅度归一化到同样的范围,如下所示,即减少各维度数据取值范围的差异而带来的干扰,比如,我们有两个维度的特征A和B,A范围是0到10,而B范围是0到10000,如果直接使用这两个特征是有问题的,好的做法就是归一化,即A和B的数据都变为0到1的范围

2.卷积计算层

在这个卷积层,有两个关键操作:

局部关联。每个神经元看做一个滤波器(filter)
窗口(receptive field)滑动, filter对局部数据计算

填充值/zero-padding

以下图为例子,比如有这么一个5 * 5的图片(一个格子一个像素),我们滑动窗口取22,步长取2,那么我们发现还剩下1个像素没法滑完,那怎么办呢?
在这里插入图片描述那我们在原先的矩阵加了一层填充值,使得变成6
6的矩阵,那么窗口就可以刚好把所有像素遍历完。这就是填充值的作用。
在这里插入图片描述
多维卷积计算
在这里插入图片描述

激励层:激活函数一般选用ReLu函数

池化层

池化层夹在连续的卷积层中间, 用于压缩数据和参数的量,减小过拟合。

一张图片当去除无关特征,只保留重要特征时,我们仍能识别。有些信息是可有可无的,池化层可以帮助我们去除冗余信息。

常用方法为Max pooling
选出每个窗口的最大值
在这里插入图片描述