深度学习笔记整理(三)——卷积神经网络

1.神经认知机模型

由负责对比度提取的G层,负责图形特征提取的S细胞层和抗变形的C细胞层交替排列组成。

  • 经过交替排列,反复迭代,底层提取的局部特征会逐渐变成全局特征;
  • 因输入模式变化引起的畸变可以很好地被C细胞消除,对变形有较好的稳健性。

2.卷积神经网络CNN

基于人类视觉皮层感受野的结构得到的模型,由输入层、卷积层、池化层、全连接层、输出层组成,接下来分别具体介绍不同层。

卷积的本质:如果全部都是全连接层,参数太多,无法调整,无法实现,因此改用卷积核,共享参数,减少参数量。

卷积层

  • 由输入样本和卷积核进行内积运算,得到特征图
  • 特征图尺寸一般小于输入样本大小,可以先对输入样本零填充得到尺寸大小相同的特征图;
  • 滑动步长越大,得到的特征图越小;
  • 将卷积结果通过激活函数计算得到特征图;
  • 一个卷积层可以有多个卷积核,每个卷积核对应一个特征图。

池化层

  • 目的:减小卷积层产生的特征图的尺寸,降低了特征图的维度,使特征表示对输入数据的位置变化具有稳健性;
  • 方法:
  1. 最大池化:选取图像区域内的最大值;
  2. 平均池化:选取图像区域内的平均值;
  3. Lp池化:突出图像区域内的中央值,p越大越能突出中心位置的值。

全连接层

  • 首先计算激活值,然后通过激活函数(sigmoid/tanh/ReLU)计算各单元的输出值。

输出层

  • 使用似然函数计算各类别的似然概率;
  • softmax函数、线性输出函数。

3.卷积神经网络的训练

池化层的误差传播

  • 把池化层看作有部分连接的全连接层;
  • 误差值只在激活值最大的单元之间传播,即误差只传递给池化时选定的单元,该单元连接权重为1,其它单元连接权重为0。

卷积层的误差传播

  • 改写成全连接层的形式;
  • \Delta w_{2jk}=\eta (r-y_{k})y_{k}(1-y_{k})z_{j}
  • \Delta w_{1ij}^{n}=\eta \sum_{k=1}^{q}[(r_{k}-y_{k})y_{k}(1-y_{k})w_{2jk}\, z_{j}(1-z_{j})x_{i}]

参数设定对结果的影响

  • 其中,卷积核数量。激活函数种类和预处理对卷积结果有较大影响;
  • 在训练过程中,应该先确定重要参数,然后对其它参数进行微调。
卷积核大小 无显著影响
卷积核数量 越多越好
激活函数种类 ReLU和maxout好于sigmoid和tanh
全连接层个数 无显著影响
有无预处理 ZCA白色化和GCN+ZCA白色化都可以提高性能
有无DropOut 提高些许性能
不同学习率 无显著影响
Mini-Batch大小 无显著影响
有无归一化层 无显著影响

4.一些问题

标准BP算法&累积BP算法

  • 标准BP算法:每次针对一个训练样例更新参数,参数更新频繁,迭代次数较多。
  • 累积BP算法:针对累积误差最小化,读取整个数据集后更新参数,参数更新频率低,累计误差进一步下降会越来越缓慢。

BP神经网络的过拟合问题

  • 早停策略:训练误差+验证误差,当验证误差达到最小时停止训练。
  • 加入正则化项E=\lambda \frac{1}{m}\sum_{k=1}^{m}E_{k}+(1-\lambda )\sum w_{i}^{2}

跳出局部最小值的方法

  • 用多组不同的参数初始化多个神经网络,取误差最小的为最优解;
  • “模拟退火算法”,以一定概率接受次优解,概率逐渐降低以保持算法稳定;
  • 随机梯度下降;
  • 遗传算法。

你可能感兴趣的:(机器学习&强化学习,神经网络,卷积,深度学习)