通用视觉框架OpenMMLab图像分类与基础视觉模型
图像分类与基础视觉模型学习笔记
课程以图像的定义为起点逐步深入,在这一过程中讲解了图像分类与基础视觉模型的核心概念,并阐述了包括卷积神经网络(CNN)等技术的基本原理和发展趋势。
一、发展
- 问题的数学化描述
y_i = f(x_i; \theta) 表示第i个样本在经过函数f作用后的输出结果,
其中x_i代表第i个输入样本,
\theta代表模型参数,
y_i代表对应的标签输出。

2.突破传统模式:机器通过数据学习。
构建模型框架并进行分类任务。
3.从特征工程到自动学习
(1)早期阶段:创造图像特征表示 (1990s~2000s)

方向梯度直方图(Histogram of Oriented Gradients)通过在局部区域计算像素梯度方向的分布信息,并将其转化为一个相对低维但能充分反映物体识别特性的特征向量。

伴随卷积神经网络和Transformer的出现, 进一步地发展为分层次实现了特征提取, 并提升了运行效率.

二、深度学习
1.发展过程
AlexNet(2012)→Going Deeper (2012~2014) →VGG (2014)→GoogLeNet (Inception v1, 2014) →残差网络 ResNet (2015)
2.介绍
(1)AlexNet
5 个卷积层,3 个全连接层,共有 60M 个可学习参数,使用 ReLU 激活函数,大幅提高收敛速度。

Going Deeper
VGG-19网络由19个卷积层构成,并通过分层使用3×3卷积核实现大尺寸卷积的分解。该架构在保持相同的空间感知能力的同时,显著降低了计算资源消耗,并进一步提升了网络深度与表征能力。

网络层号为第 1 至 4 层(即第 5 至 8 层)、第 9 至 12 层(即第 5 至 8 层)及第 9 至 12 层),通过在每个 3\times3 卷积核周围附加 1 像素宽度的边界填充策略来保持边缘信息完整性的同时,在每个卷积操作后均进行一次最大池化操作以降低采样率并减少计算量;随后每隔一定数量的层翻倍其通道数量以增强特征表示能力并使图像的空间分辨率减半;进而构建出不同尺度(如 ½ 和 ¼ 大小)以及更高抽象层级的空间位置信息特征图

该网络包含22层结构,并基于Inception模块构建而成。其中包含了共计22个可训练层,在分类阶段仅依赖于单一层全连接结构实现识别任务。值得注意的是该模型在参数规模上具有显著优势其分类阶段仅包含7 million trainable parameters(AlexNet 60M、VGG 138M)

- 残差网络 ResNet
(1)基本思路

通过新增加的层来适应浅层和深层网络之间的差异,在学习过程中更容易实现目标;梯度能够直接传递至浅层网络来监督其学习过程;无需额外增加参数使得这些参数能够更加有效地参与到最终模型的整体构建中

(2)残差网络
ResNet-34是一种拥有34层架构的深度学习模型,在ImageNet数据库上达到Top-5水平,并分为五个不同的等级(Level)。其中每一级内部包含多种类型的残差模块,并且每种残差模块的数量根据其所在的层级而有所不同。整体架构设计使得在每个层级中输出分辨率减半的同时通道数量翻倍,并经过全局平均池化处理后将特征图的空间维度进行压缩。通过单个全连接层计算出各类别样本的概率分布信息。

三、更为先进的图像分类模型
(1)Vision Transformers
通过高效地将Transformer架构应用于图像分类任务,并基于更大规模的数据集进行训练,在分类精度上显著超越了传统的CNN架构。

(2)ConvNeXt
将 Swin Transformer 的模型元素迁移到卷积网络中,并且其性能超越了传统 Transformer架构

四、轻量化卷积神经网络
(1)卷积的参数量
在卷积层中,可训练的参数由卷积核与偏置值共同构成。其参数数量可通过以下公式进行计算:C' \times (C \times K \times K + 1) = C' C K^2 + C'
(2)卷积的计算量(乘加次数)
针对卷积操作而言,其计算负担主要体现在乘法与加法的操作次数上。具体而言,则是通过乘加运算的总次数来表征其计算复杂度

(3)可分离卷积 通过将常规卷积分解为layer-wise convolutions和pointwise convolutions的形式来实现对参数量和计算复杂度的优化

