一、卷积神经网络介绍
1 雏形
2 全连接层
将神经元按列排列进行全连接:
信号向前传播,误差反向传播。输出值与期望对比,得到误差值,计算节点偏导数可得到每个节点的误差梯度。
3 实例
BP神经网络做车牌识别
3.1准备工作
3.1.1图像处理
3.1.2神经网络输入
彩色图像每个像素点有RGB三个分量,灰度化后每个像素点有一个分量,二值化变成黑白图像。
最右侧出现越界情况,补一列0或改用5x2的矩阵
将矩阵展平,变成1x25行向量,作为神经网络输入层
3.1.3神经网络输出
0-9十个类别分别对应one-hot 10种编码
3.2神经网络训练
4 卷积层
4.1卷积
卷积目的:特征提取
卷积特性:局部感知;权值共享
卷积核:
卷积:滑动窗口在图像上滑动并计算
卷积核与输入特征矩阵深度相同,本图中均为三维,输出特征矩阵个数与卷积核个数相同
4.2激活函数
sigmoid激活函数饱和时梯度值非常小,易出现梯度消失。
Relu激活函数导数简单,反向传播时求导方便,但若在反向传播过程有一个非常大的梯度经过时,更新后可能导致权重分布中心小于零,导数始终为0,无法更新权重,进入失活状态。
4.3卷积后的矩阵尺寸计算
- 输入图片大小 WxW
- Filter大小FxF
- 步长S
- padding像素数P
经卷积后的矩阵尺寸大小为:N=(W-F+2P)/S+1,输入图片4x4,卷积核3x3,步长2,对称补0为2p,N=2 输出矩阵2x2
5 池化层
1.目的:对特征图进行稀疏处理,减少数据运算量
2.MaxPooling下采样层
3.AveragePooling下采样层
改变矩阵高度和宽度,不改变深度,一般poolsize和stride设置一致,使特征矩阵缩小为原来一半。
二、反向传播
1 误差计算
softmax处理后使输出满足概率分布
2 优化器
使网络更快收敛
2.1 SGD优化器
易受样本噪声影响,可能陷入局部最优解
2.2 SGD+Momentum优化器
此刻梯度方向与上次梯度方向相关
2.3 Adagrad优化器(自适应学习率)
调整学习率,学习率下降过快