图像分类必备经典模型,一文打尽知多少?(一)

本文涉及的产品
模型训练 PAI-DLC,5000CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: 图像分类必备经典模型,一文打尽知多少?(一)

图像分类必备经典模型,一文打尽知多少?(一)

机器之心 2022-08-21 11:33 发表于北京

以下文章来源于机器之心SOTA模型,作者机器之心SOTA模型

机器之心专栏

本专栏由机器之心SOTA!模型资源站出品,每周日于机器之心公众号持续更新。 本专栏将逐一盘点自然语言处理、计算机视觉等领域下的常见任务,并对在这些任务上取得过 SOTA 的经典模型逐一详解。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。


本文将分 3 期进行连载,共介绍 15 图像分类任务上曾取得 SOTA 的经典模型。


  • 第1期:AlexNet、VGG、GoogleNet、ResNet、ResNetXt
  • 第2期:DenseNet、MobileNet、SENet、DPN、IGC V1
  • 第3期:Residual Attention Network、ShuffleNet、MnasNet、EfficientNet、NFNet

您正在阅读的是其中的第 1 期。前往 SOTA!模型资源站(sota.jiqizhixin.com)即可获取本文中包含的模型实现代码、预训练模型及 API 等资源。


本期收录模型速览


模型  SOTA! 模型资源站收录情况 模型来源论文
AlexNet https://sota.jiqizhixin.com/models/models/d07f8019-2816-4ce4-af44-ff9c1310e6ee
收录总数:10
支持框架:PyTorch、CANN、MindSpore、caffe、TensorFlow、PaddlePaddle 等
Imagenet Classification with Deep Convolution Neural Network
VGG https://sota.jiqizhixin.com/models/models/9d4c5378-8f0d-43aa-b64f-976a3c87273b
收录总数:16
支持框架:CANN、PyTorch、TensorFlow、MindSpore、caffe、PaddlePaddle 等
Very Deep Convolutional Networks for Large-Scale Image Recognition
GoogleNet https://sota.jiqizhixin.com/models/models/5b5254d4-c27d-4014-85b0-c1cb48488995
收录总数:10
支持框架:CANN、TensorFlow、PyTorch、MindSpore、PaddlePaddle 等
Going Deeper with Convolutions
ResNet https://sota.jiqizhixin.com/models/models/51e81484-f784-4b1d-9b4a-723d9c18a76f
收录总数:47
支持框架:CANN、TensorFlow、MindSpore、PyTorch、PaddlePaddle、JAX 等
Deep Residual Learning for Image Recognition
ResNeXt https://sota.jiqizhixin.com/models/models/0e3dac75-f35b-4813-9355-c4c9f5cb0f78
收录总数:55
支持框架:PyTorch、TensorFlow、CANN、MindSpore、Torch、PaddlePaddle、MXNet、Caffe2 等
Aggregated Residual Transformations for Deep Neural Networks


图像分类是计算机视觉领域最经典的任务之一,目的是将输入的图像对应到预定义的语义类别中,即打上类别标签。传统的图像分类方法由底层特征学习、特征编码、空间约束、分类器设计、模型融合等步骤组成。


首先,从图像中提取特征,经典的特征提取方法包括HOG(Histogram of Oriented Gradient, 方向梯度直方图) 、LBP(Local Bianray Pattern, 局部二值模式)、SIFT(Scale-Invariant Feature Transform, 尺度不变特征转换)等,也可以将多种特征融合以保留更多有用信息。然后,对特征进行编码后去除冗余和噪声,生成特征编码,经典方法包括稀疏编码、局部线性约束编码、Fisher向量编码等。再然后,经过空间特征约束后实现特征汇聚,例如经典的金字塔特征匹配方法。最后,利用分类器进行分类,经典分类器包括SVM、随机森林等等。



Alex Krizhevsky 在 2012 年 ILSVRC 提出的 CNN 模型首次将深度学习应用于大规模图像分类任务,其效果远超传统的图像分类方法,一举获得 ILSVRC 2012 的冠军,开启了深度学习模型在图像分类中的应用历程。这个模型就是著名的 AlexNet。自此,图像分类改变了传统的致力于提取有效的特征、改进分类器的有效性的研究和应用路径,转为研究不同的深度学习模型架构。


深度卷积神经网络为图像分类带来了一系列突破。深度神经网络集成了低/中/高层次的特征,可以被端到端训练,特征的层次可以通过网络的深度来丰富。甚至有研究人员称,正是在图像分类任务中应用的巨大成功,带动了深度学习的方法。


AlexNet


AlexNet 首次发表在 NIPS 2012,获得了 ILSVRC 2012 的冠军,开启了深度学习模型在图像分类中的应用历程。AlexNet 实际上就是一个 CNN,如下图,包含 8 个学习层:5 个卷积层和 3 个全连接层。在现在看来,AlexNet 的架构并不复杂。

图 1 AlexNet 架构


AlexNet 首次在 CNN 中成功应用了 ReLU、Dropout 和 LRN 等。具体如下:

(1)AlexNet 中使用 Relu 作为 CNN 的激活函数,成功解决了 Sigmoid 在网络较深时的梯度弥散问题:



(2)AlexNet 在训练时使用 Dropout 随机忽略一部分神经元,以避免模型过拟合。在AlexNet 中主要是最后几个全连接层使用了 Dropout。


(3)AlexNet 中引入了局部响应归一化( Local Response Normalization,LRN)。对于第 i 个特征图 (x,y) 上的神经元活性 (a_x,y)^i ,应用 ReLU 非线性,响应归一化的活动是


通过向局部神经元的活动引入竞争机制,使得其中响应比较大的值变得相对更大,并抑制其他反馈较小的神经元,增强了模型的泛化能力。


(4)AlexNet 使用重叠的最大池化。此前 CNN 中普遍使用平均池化,AlexNet 全部使用最大池化,避免平均池化的模糊化效果。并且 AlexNet 中提出让步长比池化核的尺寸小,这样池化层的输出之间会有重叠和覆盖,提升了特征的丰富性。


(5)使用 CUDA 加速深度卷积网络的训练,利用GPU强大的并行计算能力,处理神经网络训练时大量的矩阵运算。受限于当时的显卡显存条件,AlexNet 使用两卡并行训练,在最终的卷积层中,单 GPU 网络实际上可以具有与双 GPU 网络相同数量的内核。
(6)优化器是 SGD+Momentum。


当前 SOTA!平台收录 AlexNet 共 10 个模型实现资源,支持的主流框架包含 PyTorch、CANN、MindSpore、caffe、TensorFlow、PaddlePaddle 等。


模型 SOTA!模型资源站详情页
AlexNet 前往 SOTA!模型平台获取实现资源:https://sota.jiqizhixin.com/models/models/d07f8019-2816-4ce4-af44-ff9c1310e6ee


VGG


VGG 是指用于大规模图像识别的极深度卷积网络(VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION),重点研究的是深度对CNN 性能的影响,提出用堆叠的小卷积核来代替大卷积核,论文发表在 ICLR 2015。VGG 的核心思想是使用具有非常小的卷积核的架构,增加网络的深度,然后进行全面评估。实验表明将深度推至 16-19 层可以实现对现有技术的提升。具体的,VGG16、VGG19 中的数字都是指有参数层的数量。


表 1 ConvNet 的配置(以列显示)


如表 1 所示,ConvNet 的配置的深度从左(A)到右(E)增加,卷积层的参数表示为 "conv <receptive field size>-<number of channels>"。其中,忽视了 Relu 层。

在训练阶段,ConvNets 的输入是一个固定大小的 224×224 的 RGB 图像。我们所做的唯一预处理是减去每个像素的 RGB 平均值,该值是在训练集上计算出来的。将图像传递到卷积层的堆栈中,使用具有非常小的感受野(receptive field,RF)的过滤器:3×3。在其中一个配置中,还利用了 1x1 卷积核,这可以看作是输入通道的线性变换。卷积 stride 固定为 1 ,padding 是为了卷积前后分辨率不变。池化由 5 个 max-pooling 执行,大小为 2,stride 为 2。引入 1×1 卷积层(配置C,表1)是增加决策函数的非线性而不影响卷积层的感受野的一种方法。

卷积层的堆栈(在不同的架构中具有不同的深度)之后是三个全连接(FC)层:前两个层各有 4096 个通道,第三层进行 1000 维度的 ILSVRC 分类,因此包含 1000 个通道(每个对应一个类别)。最后一层是 softmax 层。在所有网络中,全连接层设置都是相同的。

VGG 使用 ReLu 作为激活函数,网络(除了一个)均不包含 LRN。文中实验证明这种归一化不能提高 ILSVRC 数据集的性能,还会导致内存消耗和计算时间增加。此外,VGG 使用了 Dropout 来优化网络结构。VGG 的优点是结构简单,易于推广应用。缺点则是参数量和计算量都很大。

当前 SOTA!平台收录 VGG 共 16 个模型实现资源,支持主流框架包括 CANN、PyTorch、TensorFlow、MindSpore、caffe、PaddlePaddle 等。


模型 SOTA!模型资源站详情页
VGG 前往 SOTA!模型资源站获取实现资源:https://sota.jiqizhixin.com/models/models/9d4c5378-8f0d-43aa-b64f-976a3c87273b



相关文章
|
7月前
|
存储 自然语言处理 文字识别
MLLM首篇综述 | 一文全览多模态大模型的前世、今生和未来
MLLM首篇综述 | 一文全览多模态大模型的前世、今生和未来
2744 0
|
计算机视觉
大连理工卢湖川团队TMI顶刊新作 | M^2SNet: 新颖多尺度模块 + 智能损失函数 = 通用图像分割SOTA网络
大连理工卢湖川团队TMI顶刊新作 | M^2SNet: 新颖多尺度模块 + 智能损失函数 = 通用图像分割SOTA网络
492 0
|
编解码 人工智能 搜索推荐
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型(四)
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型
423 0
|
机器学习/深度学习 数据挖掘 PyTorch
图像分类必备经典模型,一文打尽知多少?(二)
图像分类必备经典模型,一文打尽知多少?
182 0
|
人工智能
从BERT到ChatGPT,百页综述梳理预训练大模型演变史(1)
从BERT到ChatGPT,百页综述梳理预训练大模型演变史
244 0
|
机器学习/深度学习 人工智能 自然语言处理
从BERT到ChatGPT,百页综述梳理预训练大模型演变史(2)
从BERT到ChatGPT,百页综述梳理预训练大模型演变史
375 0
|
机器学习/深度学习 自然语言处理 数据可视化
泛化神器 | 李沐老师新作进一步提升模型在多域多的泛化性,CV和NLP均有大幅度提升(文末获取论文)
泛化神器 | 李沐老师新作进一步提升模型在多域多的泛化性,CV和NLP均有大幅度提升(文末获取论文)
254 0
|
计算机视觉
【前沿经典模型】ResNet最强改进之ResNeSt(附源码)(二)
【前沿经典模型】ResNet最强改进之ResNeSt(附源码)(二)
537 0
|
机器学习/深度学习 计算机视觉 网络架构
【前沿经典模型】ResNet最强改进之ResNeSt(附源码)(一)
【前沿经典模型】ResNet最强改进之ResNeSt(附源码)(一)
2183 0
|
机器学习/深度学习 编解码 自然语言处理
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型(二)
TGANv2、VideoGPT、DVG…你都掌握了吗?一文总结视频生成必备经典模型(二)
291 0

热门文章

最新文章