卷积网络

卷积网络的问题

  • 学习方面:卷积核到底学习到的是什么?

  • 模型结构设计方面:为什么某些组合会优于其他组合?比如卷积层数量、卷积核数量、池化策略、非线性函数的选择。

  • CNN的实现方法都需要大量的训练数据,模型的设计方案对最终的结果有很大影响。

多层网络结构

多层网络结构不仅能够“训练目标分类器”,还能“从输入数据中直接学习所需的变换操作”。通常称为表征学习。

多层神经网络定义为是一种从“输入数据”的“层次抽象表征”中“提取有用信息”的“计算模型”。

设计多层网络结构的目标是为了“在高层凸显输入数据的重要信息”,同时让那些“不太重要的信息变化更具有鲁棒性”。

目前已经提出了很多不同类型的多层架构,但大多数的多层神经网络都是“以堆叠的方式”,将一些“线性和非线性函数模块”“组合”形成多层结构。

全连接层

自动编码器

通过引入不同的正则化方法来防止模型学习一些无关紧要的数据特征。

如,稀疏自编码器、去噪自编码器、卷积自编码器等。

  • “稀疏编码器”允许“中间编码表示的大小”大于“输入的大小”,同时通过“稀疏表示来正则化”负相的输出。

  • “去噪编码器”改变编码重建的目标,试图重建一个干净、不带噪声的输出。

  • “卷积自编码器”

卷积神经网络

对局部操作有很强的抽象表征能力。

  • 卷积神经网络能够利用“图像2D结构”和“图像相邻像素之间的高度相关性”,使用“分组的局部连接”,从而避免在所有像素单元之间使用一对一连接。

  • 卷积神经网络结构依赖于“特征共享原则”,每个通道的输出都是通过所有位置的“相同滤波器”的卷积生成,这样就减少了模型参数。

  • 卷积神经网络还引入了一个“池化步骤”,在一定程度上保证了“图像的平移不变性”,使模型不受位置变化的影响。池化操作使得网络拥有“更大的感受野”,从而能够接受更大的输入。“感受野的增大”将允许网络在“更深层学习到更加抽象的特征表征”。

  • 卷积操作之后都会跟随一个“非线性变换单元”,常见的非线性函数是修正线性单元ReLU。

  • 在非线性之后通常会引入“池化单元”。“平均池化”通过平均化感受野中的像素值来“综合考虑周围像素的特征”。而“最大池化”则是用来“提取相邻像素间最重要的特征信息”,避免模型学习到一些无关紧要的特征。

  • 经典的卷积网络由“四个基本处理层”组成:“卷积层”、“非线性变换层”、“归一化层”和“池化层”。

多层网络的训练

当前各种多层神经网络结构所取得的成功,在很大程度上取决于网络训练学习过程的进步。

通常,神经网络的训练首先需要进行“多层无监督预训练”,随后将预训练好的模型进行“有监督训练”。

训练过程都是“基于梯度下降的反向传播原则”,通过“反向传播网络误差”,来“修正模型的参数值”,从而“优化网络结构及输出结果”。

常见网络

  • AlexNet/VGGNet/GoogleNet/ResNet/DenseNet

  • 空间变换网络STN(Spatial Transformer)

  • FCN/R-CNN

  • 时域卷积神经网络

总结

总体而言,大多数模型结构都是基于四个共同的构件块,即“卷积、非线性单元、归一化和池化操作”。

虽然优秀的卷积模型在大多数计算机视觉任务中取得了最优性能,但它们共同的缺点仍然是对“卷积内部操作、特征表征的理解相当有限”,依赖于“大规模的数据集”和“模型训练过程”,缺乏“精确的性能界限”和“超参数选择的清晰度”。

这些超参数包括“滤波器的大小”、“非线性函数”、“池化操作参数”以及“模型层数的选择”。

理解卷积神经网络的构建模块

卷积层

卷积是一种“线性的”、“具有平移不变性”的运算,它是通过“局部加权输入信号”来实现的。

选择合适的卷积核,将有助于模型获取输入信号中“最显著、最重要的特征信息”。

非线性单元

多层神经网络通常是高度的非线性模型,其将非线性函数应用到卷积层输出中。

  • Logistic 函数、tanh 函数、Sigmoid 函数、ReLU 及其变体 LReLU,SReLU,EReLU 等。

归一化

归一化(normalization)同样是卷积神经网络结构中重要的非线性处理模块。

  • 最广泛使用的归一化形式即所谓的局部响应归一化操作(LRN,Local Response Normalization)。
  • 此外,还有诸如批归一化(batch normalization),分裂归一化(divisive normalization)等。

池化操作

池化操作是为了提取特征在“不同位置和规模上”的变化,同时“聚合不同特征映射的响应”。

  • 平均池化和最大池化是两个最广泛使用的池化操作。

当前趋势

对卷积神经网络结构中各组作用的阐述凸显了卷积模块的重要性,这个模块主要“用于捕获最抽象的特征信息”。

当前趋势

  • 对所学习到的过滤器和提取的特征图进行“可视化分析”

  • 受生物视觉皮层理解方法所启发的“消融学习”(ablation study)

  • 通过引入主成分分析法设计并分析网络最小化学习过程

卷积的可视化分析

  • 反卷积/解卷积/转置卷积

  • 网络参数的可视化

卷积的消融学习

消融研究能够指导研究者设计出性能更优的网络结构。

“隔离卷积结构的不同部分”组成网络,来查看“删除或添加某些模块”如何模拟整体的性能。

卷积结构的控制设计

在网络设计时添加先验知识,从而最大限度地减少所需学习的模型参数。

受控方法

  • “逐层固定网络参数”及分析对网络行为的影响。

  • 分析“输入的特征”来研究网络结构的设计,如层的数量或每层中过滤器数量的选择方案。

  • 将受控方法应用于网络的同时,可以对卷积神经网络的其它方面的作用进行系统性的研究,可以在固定大多数参数的情况下,研究各种池化策略和残差连接的作用。