图像是像素构成的数组。
收集数据-定义模型-训练-预测 图像是像素构成的数组。
收集数据-定义模型-训练-预测图片
特征工程:设计算法找图像的方向梯度,找到图像的基本特征,保留了一些信息
这种方法在2011年以前是主流的,但是达到了一个瓶颈
深度学习:学习如何产生适合分类的特征
实现一步特征提取:
卷积 卷积神经网络
特征图像和图像一样有二维结构,,后层特征为空间邻域内前层特征的加权求和。
多头注意力 Transformer
2012年的AlexNet首次使用深度学习方法,把图像分类质量提高了一个层次
2014 VGG Google Net 增加网络层数提升精度
VGG把卷积核从5x5->3x3
GN 使用了一个Inception的模块,节省了很多参数
但是增加卷积层不能无限增加,有瓶颈
残差学习
ResNet 以VGG为基础,保持多级结构,增加层数,增加跨层连接
ResNet是CV领域影响力最大,使用最广泛的模型结构,获得CVPR2016最佳论文奖
为什么ResNet这么强?
1. 是深浅模型的集成,残差网络每添加一个块,都会是路径翻倍
2. 残差链接让损失曲面更平滑
ResNet后续改进
后续发展:
神经结构搜索:让机器搜一些模型出来,接触强化学习等方法搜索最佳网络,是强化学习的逻辑,它的网络结构就没有人工设计的那么规整。
NASNet、MnasNet、Efficient Net、RegNet
卷积的参数量:
GoogleNet的卷积核有三个不同大小,
ResNet 用的Bottleneck来压缩通道
Transformer一开始是在NLP领域的,2020年被用来代替卷积网络实现图像分类。
ConvNeXt在2022年将Swin Transformer的模型元素迁移到卷积网络中,性能反超了Transformer,可以说是一种返璞归真。
Transformer的主要机制是注意力机制,这是和卷积的区别
ICCV2021最佳paper 就是swinTransformer
基于梯度下降训练神经网络的整体流程
这样的一个步骤是一个iteration,整个步骤是一个epoch
权重的初始化可以用随机初始化,也可以用预训练好的模型。
学习率:要不高不低刚刚好,从头训练可以用较大的学习率,0.01-0.1,微调就只用很小的学习率。
损失函数稳定后,可以下降学习率,有很多下降的策略
学习率升温:warm up
前几轮学习率应该逐渐上升,直到预设的学习率。
Linear Scaling Rule:一个经验性结论,当batch size扩大到原来的k倍,学习率也应该扩大k倍。(或者缩小)
训练数据集的处理:
数据增强:通过简单的变换产生一系列的副本,对训练数据集进行扩充,用更多样化的数据来训练泛化性好的模型,降低标注数据集的成本
组合图像
标签平滑
自监督学习:
基于代理任务,基于对比学习,基于掩码学习
今天学习了图像分类的任务。这是计算机视觉的基础,任何图像识别算法都离不开图像分类。图片
特征工程:设计算法找图像的方向梯度,找到图像的基本特征,保留了一些信息
这种方法在2011年以前是主流的,但是达到了一个瓶颈
深度学习:学习如何产生适合分类的特征
实现一步特征提取:
卷积 卷积神经网络
特征图像和图像一样有二维结构,,后层特征为空间邻域内前层特征的加权求和。
多头注意力 Transformer
2012年的AlexNet首次使用深度学习方法,把图像分类质量提高了一个层次
2014 VGGGoogle Net 增加网络层数提升精度
VGG把卷积核从5x5->3x3
GN 使用了一个Inception的模块,节省了很多参数
但是增加卷积层不能无限增加,有瓶颈
残差学习
ResNet 以VGG为基础,保持多级结构,增加层数,增加跨层连接
ResNet是CV领域影响力最大,使用最广泛的模型结构,获得CVPR2016最佳论文奖
为什么ResNet这么强?
是深浅模型的集成,残差网络每添加一个块,都会是路径翻倍
残差链接让损失曲面更平滑
ResNet后续改进
后续发展:
神经结构搜索:让机器搜一些模型出来,接触强化学习等方法搜索最佳网络,是强化学习的逻辑,它的网络结构就没有人工设计的那么规整。
NASNet、MnasNet、EfficientNet、RegNet
卷积的参数量:
GoogleNet的卷积核有三个不同大小,
ResNet 用的Bottleneck来压缩通道
Transformer一开始是在NLP领域的,2020年被用来代替卷积网络实现图像分类。
ConvNeXt在2022年将SwinTransformer的模型元素迁移到卷积网络中,性能反超了Transformer,可以说是一种返璞归真。
Transformer的主要机制是注意力机制,这是和卷积的区别
ICCV2021最佳paper 就是swinTransformer
基于梯度下降训练神经网络的整体流程
这样的一个步骤是一个iteration,整个步骤是一个epoch
权重的初始化可以用随机初始化,也可以用预训练好的模型。
学习率:要不高不低刚刚好,从头训练可以用较大的学习率,0.01-0.1,微调就只用很小的学习率。
损失函数稳定后,可以下降学习率,有很多下降的策略
学习率升温:warm up
前几轮学习率应该逐渐上升,直到预设的学习率。
Linear Scaling Rule:一个经验性结论,当batch size扩大到原来的k倍,学习率也应该扩大k倍。(或者缩小)
训练数据集的处理:
数据增强:通过简单的变换产生一系列的副本,对训练数据集进行扩充,用更多样化的数据来训练泛化性好的模型,降低标注数据集的成本
组合图像
标签平滑
自监督学习:
基于代理任务,基于对比学习,基于掩码学习
今天学习了图像分类的任务。这是计算机视觉的基础,任何图像识别算法都离不开图像分类。