文章目录
- 流程
- 传统方法:设计图像特征(1990s~2000s)
- 特征工程的天花板
- 从特征工程到特征学习
- 层次化特征的实现方式
- AlexNet 的诞生& 深度学习时代的开始
- 图像分类的数学表示
- AlexNet (2012)
- Going Deeper (2012~2014)
- VGG (2014)
- GoogLeNet (Inception v1, 2014)
- 精度退化问题
- 残差学习的基本思路
- 残差网络ResNet (2015)
- ResNet 中的两种残差模块
- 残差链接让损失曲面更平滑
- ResNet 的后续改进
流程
-
收集数据
-
定义模型
通常为含参变量的函数: y = F Θ ( X ) y=F_{\Theta}(X) y=FΘ(X)
例子: y = σ ( Θ T X ) y=\sigma\left(\Theta^{T} X\right) y=σ(ΘTX)
-
训练
寻找最佳参数 Θ ∗ \Theta^{*} Θ∗ ,使得模型 y = F Θ ∗ ( X ) y=F_{\Theta^{*}}(X) y=FΘ∗(X) 在训练集上达到最高正确率 -
预测
对于新图像 X ^ \hat{X} X^ ,用训练好的模型预测其 类别,即 y ^ = F Θ ∗ ( X ^ ) \hat{y}=F_{\Theta^{*}}(\hat{X}) y^=FΘ∗(X^)
传统方法:设计图像特征(1990s~2000s)
特征工程的天花板
在ImageNet 图像识别挑战赛里,2010 和2011 年的冠军队伍都使用了经典的视觉方法,基于手工设计的特征+ 机器学习算法实现图像分类,Top-5 错误率在25% 上下。
从特征工程到特征学习
层次化特征的实现方式
AlexNet 的诞生& 深度学习时代的开始
在2012 年的竞赛中,来自多伦多大学的团队首次使用深度学习方法,一举将错误率降低至15.3% ,而传统视觉算法的性能已经达到瓶颈,2015 年,卷积网络的性能超越人类。
图像分类的数学表示
-
模型设计:设计适合图像的 𝐹 Θ 𝑋 𝐹_Θ 𝑋 FΘX
• 卷积神经网络
• 轻量化卷积神经网络
• 神经结构搜索
• Transformer -
模型学习:求解一组好的参数Θ
• 监督学习:基于标注数据学习
• 损失函数
• 随机梯度下降算法
• 视觉模型常用训练技巧
• 自监督学习:基于无标注的数据学习
AlexNet (2012)
第一个成功实现大规模图像的模型,在ImageNet 数据集上达到~85% 的top-5 准确率。
特点:
- 5 个卷积层,3 个全连接层,共有60M 个可学习参数
- 使用ReLU 激活函数,大幅提高收敛速度
- 实现并开源了cuda-convnet ,在GPU 上训练大规模神经网络在工程上成为可能
Going Deeper (2012~2014)
VGG-19 19 层 ImageNet Top-5 准确率:92.7%
GoogLeNet 22 层 ImageNet Top-5 准确率:93.4%
VGG (2014)
将大尺寸的卷积拆解为多层3×3 的卷积,相同的感受野、更少的参数量、更多的层数和表达能力。
1 层5×5 的卷积与2 层3×3 的卷积有同样的感受野
- 网络层数:11、13、16、19 层
- 3×3 卷积配合1 像素的边界填充,维持空间分辨率
- 每隔几层倍增通道数、减半分辨率,生成1/2、1/4 尺度的更高抽象层级的特征
GoogLeNet (Inception v1, 2014)
- 使用Inception 模块堆叠形成, 22 个可学习层
- 最后的分类仅使用单层全连接层,可节省大量参数
- 仅7M 权重参数(AlexNet 60M、VGG 138M)
精度退化问题
模型层数增加到一定程度后,分类正确率不增反降
实验的反直觉
卷积退化为恒等映射时,深层网络与浅层网络相同。所以,深层网络应具备不差于浅层网络的分类精度。
猜想:虽然深层网络有潜力达到更高的精度,但常规的优化算法难以找到这个更优的模型。即,让新增加的卷积层拟合一个近似恒等映射,恰好可以让浅层网络变好一点
残差学习的基本思路
残差建模:让新增加的层拟合浅层网络与深层网络之间的差异,更容易学习。梯度可以直接回传到浅层网络监督浅层网络的学习。没有引入额外参入,让参数更有效贡献到最终的模型中
残差网络ResNet (2015)
ResNet-34 34层ImageNet Top-5 准确率:94.4%
5 级,每级包含若干残差模块,不同残差模块个数不同ResNet 结构
- 每级输出分辨率减半,通道倍增
- 全局平均池化压缩空间维度
- 单层全连接层产生类别概率
使用bottleneck 模块替换basic 模块,进一步增加每级种残差模块的个数。
- ResNet-50 3/4/6/3 94.8% / 76.6%
- ResNet-101 3/4/23/3 95.4% / 78.0%
- ResNet-152 3/8/36/3 95.5% / 78.5%
ResNet 中的两种残差模块
ResNet等同于多模型集成:残差网络有 𝑂 ( 2 𝑛 ) 𝑂(2^𝑛) O(2n) 个隐式的路径来连接输入和输出,每添加一个块会使路径数翻倍。
残差链接让损失曲面更平滑
Loss Surface 更加平滑,更容易收敛到局部/全局最优解