part1 图像分类任务
1.1从特征工程到特征学习
机器学习算法善于处理低维、分布相对简单的数据。
而图像数据在空间中具有复杂的分布,传统分类方法从图像中提取出n维的特征向量,再用机器学习的方法进行分类。提取出的特征可以简化数据的表达同时保留原始内容的重要信息。
深度学习相对于传统的特征工程,从设计算法提取特征变为不仅让算法产生分类同时让算法学习如何产生特征从而有效减少了特征提取中对信息的丢失,提取出更适合分类的特征。
实现方式一般基于卷积神经网络或Transformer的方法进行特征提取。
1.2 图像分类实现
模型设计:设计适合图像的特征提取函数(网络)
·卷积神经网络
·轻量化卷积神经网络
·神经结构搜索
·Transformer
模型学习:求解一组好的参数,主要使用监督学习与自监督学习
part2 卷积神经网络发展
2.1 AlexNet: 使用ReLU激活函数替代传统Sigmoid激活函数,大幅度提高收敛速度。
2.2 VGG:
① 将大尺寸卷积拆解为多层3*3卷积,在相同感受野下,有更少的参数,更多的层数和更好的表达能力。
② 3*3卷积配合1像素的边界填充,维持空间分辨率,使得不同层次特征在尺寸上具有1/2、1/4等简单的比例关系,方便在位置敏感的下游任务比如检测分割等任务中使用。
2.3 GoogLeNet:采用Inception模块,节省了大量参数
2.4 ResNet:
人们发现模型层数增加到一定程度后,分类正确率不增反降
提出残差网络,在浅层网络已经具有较好的性能下,新增加层去拟合浅层网络与深层网络之间的差异,从而更容易学习梯度可以直接回传到浅层网络监督浅层网络的学习。
ResNet引入残差结构使得loss平面更加平滑,更容易收敛到全局最优。
ResNet B/C/D: 对残差模块进行局部改进
ResNeXt:使用分组卷积降低参数量
SEResNet:在通道维度引入注意力机制
part3 更强图像分类模型
3.1神经结构搜索
基于强化学习方法搜索表现最佳的网络
3.2 Vision Transformer
使用Transformer替代卷积网络进行图像分类,在更大数据集上训练能够达到超越卷积网络的精度
3.3 ConvNeXt
尝试将Swim Transformer的模型元素迁移到卷积网络中,性能更好
part4 轻量化卷积神经网络
4.1 减少网络参数量
① 使用不同大小卷积核:并非所有特征都需要相同的感受野,在同一层中可以使用不同大小卷积核减少参数量
② 使用1*1卷积压缩通道数
③ 可分离卷积:将常规卷积分为逐层卷积和逐点卷积(先在每一层上单独卷积再在各层之间进行交互卷积)
④ ResNeXt中的分组卷积:按通道分组(可分离卷积是分组卷积特殊情况,即分组数等于通道数)
4.2 MobileNet
可以减少网络中的参数从而降低计算量,往往具有较好精度的同时具有更快的速度
part5 Vision Transformer
打算自己去学习了解一下
part6 模型学习
6.1 两大范式
监督学习:需要有标注好的数据
自监督学习:通过设计恰当的辅助任务,让模型在无标签数据上学习特征
6.2 训练技巧
学习率与优化策略
①权重初始化
②学习率:训练初始阶段使用较大学习率,损失函数稳定后按步长、比例、倒数、余弦函数等下降
线性扩展原则:针对同一任务,当batch size扩大为原来的k倍,学习率也扩大k倍
③ 正则化与权重衰减:可以避免过拟合
④ 早停: 划分训练集与测试集,通过在测试集观察进行
⑤ 模型权重平均:模型在优化末期会在极小值周围转动,平均值更接近极小值点
6.3 数据增强
① 几何变换,平移旋转等
② 组合数剧增强
③ 组合图像
④ 标签平滑