OpenMMLab AI实战营-第二节笔记

  • List item

    第二节笔记)

      • 传统方法:设计图像特征 (1990s~2000s)
      • AlexNet 的诞生 & 深度学习时代的开始
      • 卷积神经网络
        • 1.AlexNet (2012)
        • 2.Going Deeper (2012~2014)
        • 3.VGG (2014)
        • 4.GoogLeNet (Inception v1, 2014)
      • 精度退化问题
      • 神经结构搜索 Neural Architecture Search (2016+)
      • Vision Transformers (2020+)
      • ConvNeXt (2022)
    • 轻量化卷积神经网络
      • 卷积的参数量
      • 卷积的计算量(乘加次数)
      • 降低模型参数量和计算量的方法
      • GoogLeNet 使用不同大小的卷积核
      • ResNet 使用1×1卷积压缩通道数
      • 可分离卷积
      • ResNeXt 中的分组卷积
    • Vision Transformers
      • 注意力机制 Attention Mechanism
      • Swin Transformer (ICCV 2021 best paper)

传统方法:设计图像特征 (1990s~2000s)

OpenMMLab AI实战营-第二节笔记_第1张图片
在 ImageNet 图像识别挑战赛里,2010 和 2011 年的冠军队伍都使用了经典的视觉方法,基于手工设计的特征 + 机器学习算法实现图像分类,Top-5 错误率在 25% 上下。受限于人类的智慧,手工设计特征更多局限在像素层面的计算,丢失信息过多,在视觉任务上的性能达到瓶颈

AlexNet 的诞生 & 深度学习时代的开始

在 2012 年的竞赛中,来自多伦多大学的团队首次使用深度学习方法,一举将错误率降低至 15.3% ,而传统视觉算法的性能已经达到瓶颈,2015 年,卷积网络的性能超越人类。

卷积神经网络

1.AlexNet (2012)

• 第一个成功实现大规模图像的模型,在 ImageNet 数据集上达到 ~85% 的 top-5 准确率
• 5 个卷积层,3 个全连接层,共有 60M 个可学习参数
• 使用 ReLU 激活函数,大幅提高收敛速度
• 实现并开源了 cuda-convnet ,在 GPU 上训练大规模神经网络在工程上成为可能

2.Going Deeper (2012~2014)

VGG-19 19 层
ImageNet Top-5 准确率:92.7%

GoogLeNet 22 层
ImageNet Top-5 准确率:93.4%
OpenMMLab AI实战营-第二节笔记_第2张图片

3.VGG (2014)

将大尺寸的卷积拆解为多层 3×3 的卷积
相同的感受野、更少的参数量、更多的层数和表达能力
OpenMMLab AI实战营-第二节笔记_第3张图片
• 网络层数:11、13、16、19 层
• 3×3 卷积配合 1 像素的边界填充,维持空间分辨率
• 每隔几层倍增通道数、减半分辨率,生成 1/2、1/4 尺度的更高抽象层级的特征
OpenMMLab AI实战营-第二节笔记_第4张图片

4.GoogLeNet (Inception v1, 2014)

• 使用 Inception 模块堆叠形成, 22 个可学习层
• 最后的分类仅使用单层全连接层,可节省大量参数
• 仅 7M 权重参数(AlexNet 60M、VGG 138M)
OpenMMLab AI实战营-第二节笔记_第5张图片

精度退化问题

模型层数增加到一定程度后,分类正确率不增反降
OpenMMLab AI实战营-第二节笔记_第6张图片
残差学习的基本思路
OpenMMLab AI实战营-第二节笔记_第7张图片
OpenMMLab AI实战营-第二节笔记_第8张图片
OpenMMLab AI实战营-第二节笔记_第9张图片
等同于多模型集成:残差网络有 (2) 个隐式的路径来连接输入和输出,每添加一个块会使路径数翻倍
OpenMMLab AI实战营-第二节笔记_第10张图片

神经结构搜索 Neural Architecture Search (2016+)

基本思路:借助强化学习等方法搜索表现最佳的网络
代表工作:NASNet (2017)、MnasNet (2018)、EfficientNet (2019) 、RegNet (2020) 等
OpenMMLab AI实战营-第二节笔记_第11张图片

Vision Transformers (2020+)

使用 Transformer 替代卷积网络实现图像分类,使用更大的数据集训练,达到超越卷积网络的精度
代表工作:Vision Transformer (2020),Swin-Transformer (2021 ICCV 最佳论文)

ConvNeXt (2022)

将 Swin Transformer 的模型元素迁移到卷积网络中,性能反超 Transformer

轻量化卷积神经网络

卷积的参数量

⭐ 卷积层的可学习参数包括:卷积核 + 偏置值
⭐ 参数量计算公式: ′ × ( × × + 1) = ′2 +
OpenMMLab AI实战营-第二节笔记_第12张图片

卷积的计算量(乘加次数)

⭐ 输出特征图每个通道上的每个值都是输入特征图和 1 个
通道的卷积核进行一次卷积的结果
⭐ 乘加次数计算公式:
′ × ′× ′ × ( × × ) = ′′′2
OpenMMLab AI实战营-第二节笔记_第13张图片

降低模型参数量和计算量的方法

OpenMMLab AI实战营-第二节笔记_第14张图片

GoogLeNet 使用不同大小的卷积核

基本思路:并不是所有特征都需要同样大的感受野,在同一层中混合使用不同尺寸的特征可以减少参数量
OpenMMLab AI实战营-第二节笔记_第15张图片

ResNet 使用1×1卷积压缩通道数

OpenMMLab AI实战营-第二节笔记_第16张图片

可分离卷积

将常规卷积分解为逐层卷积和逐点卷积,降低参数量和计算量
OpenMMLab AI实战营-第二节笔记_第17张图片

ResNeXt 中的分组卷积

OpenMMLab AI实战营-第二节笔记_第18张图片

Vision Transformers

注意力机制 Attention Mechanism

实现层次化特征: 后层特征是空间邻域内的前层特征的加权求和
权重越大,对应位置的特征就越重要
OpenMMLab AI实战营-第二节笔记_第19张图片

Swin Transformer (ICCV 2021 best paper)

• Vision Transformer 的特征图是是直接下采样 16 倍得到的,后面的特征图也是维持这个下采样率不变,缺少了传统卷积神经网络里不同尺寸特征图的层次化结构。所以,Swin Transformer 提出了分层结构(金字塔结构)Hierarchical Transformer。• 同时,相对于 Vision Transformer 中直接对整个特征图进行 Multi-Head Self-Attention,SwinTransformer 将特征图划分成了多个不相交的区域(Window),将 Multi-Head Self-Attention 计算限制在窗口内,这样能够减少计算量的,尤其是在浅层特征图很大的时候。
OpenMMLab AI实战营-第二节笔记_第20张图片
• 由于将 Multi-Head Self-Attention 计算限制在窗口内,窗口与窗口之间无法进行信息传递。所以, Swin
Transformer 又提出了 Shifted Windows Multi-Head Self-Attention (SW-MSA) 的概念,即第 + 1 层的窗
口分别向右侧和下方各偏移了半个窗口的位置。那么,这就让信息能够跨窗口传递。
OpenMMLab AI实战营-第二节笔记_第21张图片

你可能感兴趣的:(OpenMMLab,AI实战营,人工智能,深度学习,计算机视觉)