(202302)OpenMMLab实战CV贰——图像分类算法基础

历史上的图像分类

  • 图像分类任务目标:给定一张图片识别图像中的物体是什么。

  • 视觉任务的难点:图像的内容是像素整体呈现出的结果,和个别像素的值没有直接关联,难以遵循具体的规则设计算法。

  • 机器学习的局限:善于处理低维分布简单的数据,难以处理图像数据这种在几十万维空间中以复杂的方式缠绕在一起的数据。

传统方法:设计图象特征(1990s~2000s)——好的特征可以计大简化数据的表达并且能够保留内容的相关信息。

特征工程的天花板:基于手工设计的特征+机器学习算法实现的图像分类,top5错误率在25%以下。受限于人类的智慧,手工设计特征更多局限在像素层面的计算,丢失信息过多,在视觉任务上的性能达到瓶颈。

变化

  • 从特征工程到特征学习:学习如何产生适合分类的特征、多个简单特征变卦符合构成一个复杂的端到端分类器。
  • 层次化特征的实现方式:
    • 卷积实现一步特征提取➡卷积神经网络。
    • 多头注意力实现一步特征提取➡Transformer。

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

关于图像分类

在这里插入图片描述

卷积神经网络

历史上出色、具有里程碑意义的网络

2012——2014

AlexNet(2012)、Going Deeper (2012~2014)、VGG (2014)、GoogLeNet (Inception v1, 2014)

出现问题与解决问题

模型层数增加到一定程度后,分类正确率不增反减,出现了过拟合的现象,由于层数过多,参数过多。

残差学习:让新增加的层拟合浅层网络与深层网络之间的差异,更容易学习 梯度可以直接回传到浅层网络监督浅层网络的学习 没有引入额外参入,让参数更有效贡献到最终的模型中

残差网络ResNet(2015)
  • RwsNet中的两种残差模块:
    在这里插入图片描述
  • ResNet的成就和影响力:视觉领域影响力最大、使用最广泛的模型结构,获得 CVPR 2016 最佳论文奖
  • ResNet是深浅模型的集成:等同于多模型集成:残差网络有 𝑂(2 𝑛 ) 个隐式的路径来连接输入和输出,每添加一个块会使路径数翻倍。
  • 残差链接让损失曲面更平滑:Loss Surface 更加平滑,更容易收敛到局部/全局最优解。
  • ResNet的后续改进:
    • B/C/D残差模块的局部改进。
    • ResNeXt使用分组卷积,降低参数量。
    • SEResNet在通道维度引入注意力机制。

更强的图像分类模型

神经结构搜索(2016+)、Vision Transformers(2020+)、ConNeXt(2020)

图像分类&视觉基础模型的发展:精度更高的分类器&更有效的视觉特征➡精度更高的下游模型

轻量化卷积神经网络

降低模型参数量和计算量的方法:降低通道数、减小卷积核的尺寸。

GoogLeNet 使用不同大小的卷积核、ResNet 使用1×1卷积压缩通道数。

可分离卷积:将常规卷积分解为逐层卷积和逐点卷积,降低参数量和计算量。

MobileNet V1/V2/V3 (2017~2019):MobileNet V1 使用可分离卷积,只有 4.2M 参数 。MobileNet V2/V3 在 V1 的基础上加入了残差模块和 SE 模块。

ResNeXt 中的分组卷积:ResNeXt 将 ResNet 的 bottleneck block 中 3×3 的卷积改为分组卷积,降低模型计算量 可分离卷积为分组卷积的特殊情形,组数=通道数

Vision Transformers

同样是分层的。多头注意力机制(使用不同参数的注意力头产生多组特征,沿通道维度拼接得到最终特征,Transformer Encoder 的核心模块)

Vision Transformer (2020):• 将图像切分成若干 16×16 的小块,当作一列"词向量",经多层 Transformer Encoder 变换产生特征 • 图块之外加入额外的 token,用于 query 其他 patch 的特征并给出最后分类 • 注意力模块基于全局感受野,复杂度为尺寸的 4 次方。

Swin Transformer (ICCV 2021 best paper):提出了分层结构,并将多头注意力机制限制在多个不相交的区域内,减少计算量。同时又提出了SW-MSA 的概念,让信息能够跨窗口传递。

模型学习

监督学习

监督学习需要标注,解决最优化问题,要寻找是的总损失最小的参数。

学习率与优化器策略

权重初始化:针对卷积层和全连接层,初始化连接权重W和偏置b
在这里插入图片描述
• 从头训练可使用较大的学习率,例如 0.01~0.1 • 微调通常使用较小学习率,例如 0.001~0.01。

如下的图形象展示了学习率对训练的影响:在这里插入图片描述常见的学习率策略是退火、升温、Linear Scaling Rule(batchsize扩大k倍,学习率也扩大k倍)、自适应梯度算法、正则化与权重衰减 Weight Decay、早停 Early Stopping、模型权重平均 EMA、模型权重平均 Stochastic Weight Averaging。

数据增强

图像可以通过简单的变换产生一系列"副本",扩充训练数据集。
在这里插入图片描述

模型相关策略

丢弃层 Dropout:破坏神经元之间的关联,鼓励学习独立的特征
随机深度 Stochastic Depth:利用不同的深度训练,最终相当于潜在地融合了多个不同深度的网络,提升了性能

整理记录自2023/2/2晚进行的课程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

早上真好

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值