欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

总结近几年Pytorch基于Imgagenet数据集图像分类模型

程序员文章站 2024-01-08 11:57:10
alexnet (2012 )2012 年,alexnet 由 alex krizhevsky 为 imagenet 大规模视觉识别挑战赛 ( ilsvrv ) 提出的,ilsvrv 评估用于对象检测...

alexnet (2012 )

2012 年,alexnet 由 alex krizhevsky 为 imagenet 大规模视觉识别挑战赛 ( ilsvrv ) 提出的,ilsvrv 评估用于对象检测和图像分类的算法。

alexnet 总共由八层组成

其中前5层是卷积层,后3层是全连接层。

前两个卷积层连接到重叠的最大池化层以提取最大数量的特征。

第三、四、五卷积层直接与全连接层相连。

卷积层和全连接层的所有输出都连接到 relu 非线性激活函数。

最后的输出层连接到一个 softmax 激活层,它产生 1000 个类标签的分布。

总结近几年Pytorch基于Imgagenet数据集图像分类模型

vgg (2014)

vgg 是一种流行的神经网络架构

由2014年,牛津大学的 karen simonyan 和 andrew zisserman 提出。

与 alexnet 相比,vgg 的主要改进包括使用大内核大小的过滤器

(第一和第二卷积层中的大小分别为 11 和 5)和多个(3×3)内核大小的过滤器。

总结近几年Pytorch基于Imgagenet数据集图像分类模型

googlenet (2014)

2014年,googlenet 诞生,该架构有 22 层深

包括 27 个池化层。总共有 9 个初始模块线性堆叠。inception 模块的末端连接到全局平均池化层。

下面是完整 googlenet 架构的缩小图像。

总结近几年Pytorch基于Imgagenet数据集图像分类模型

resnet (2015)

由于深度神经网络训练既费时又容易过拟合,微软引入了一个残差学习框架来改进比以前使用的更深的网络的训练。

resnet在pytorch的官方代码*有5种不同深度的结构

深度分别为18、34、50、101、152(各种网络的深度指的是“需要通过训练更新参数”的层数,如卷积层,全连接层等)。

inception v3 (2015)

与 vggnet 相比,

inception networks 已被证明在计算效率更高

inception v3 网络的架构是逐步构建的,结构图可点击查看大图

总结近几年Pytorch基于Imgagenet数据集图像分类模型

squeezenet (2016)

squeezenet 是一个较小的网络

它的参数比 alexnet 少近 50 倍,但执行速度快 3 倍。

总结近几年Pytorch基于Imgagenet数据集图像分类模型

如上图中最左边所示,squeezenet 以一个标准的卷积层开始,然后是 8 个 fire 模块,最后再以一个卷积层结束。

步长为 2 的池化分别跟在第一个卷积层、 第 4 个 fire 模块、第 8 个 fire 模块和最后一个卷积层后面。

中间的网络结构在特征图通道数相同的 fire 模块之间引入了残差网络中的跳跃连接,

而最右边的网络结构在中间结构的基础上,针对特征图通道数不一样的情况,通过一个 1×1 的卷积来调整通道数一致后再相加。

densenet (2016)

densenet 拥有与传统深度 cnn 相比的一大优势:

通过多层的信息在到达网络末端时不会被冲刷或消失。这是通过简单的连接模式实现的。

要理解这一点,必须知道普通 cnn 中的层是如何连接的。

总结近几年Pytorch基于Imgagenet数据集图像分类模型

这是一个简单的 cnn,其中各层按顺序连接。然而,在densenet 中,每一层从所有前面的层获得额外的输入,并将其自己的特征映射传递给所有后续层。

下面是描绘densenet 的图像。

总结近几年Pytorch基于Imgagenet数据集图像分类模型

xception (2016)

xception是google公司继inception后提出的

对 inception-v3 的另一种改进

xception 的结构基于 resnet,但是将其中的卷积层换成了separable convolution(极致的 inception模块)。

如下图所示。整个网络被分为了三个部分:entry,middle和exit。

总结近几年Pytorch基于Imgagenet数据集图像分类模型

shufflenet v2 (2018)

2018年,开始了轻度网络的研究,mnasnet ,mobilenet,shufflenet,,xception采用了分组卷积,

深度可分离卷积等操作,这些操作

在一定程度上大大减少了flop

整体 shufflenet v2 架构列表如下:

总结近几年Pytorch基于Imgagenet数据集图像分类模型

mnasnet (2018)

google 团队最新提出 mnasnet

使用强化学习的思路,提出一种资源约束的终端 cnn 模型的自动神经结构搜索方法。

resnext(2019)

resnext是resnet 的变体

resnet有许多版本,对应的resnext也有许多不同版本。

对比下,resnet50和resnext-50的网络结构图如下:

总结近几年Pytorch基于Imgagenet数据集图像分类模型

mobilenetv3 (2019)

在imagenet分类任务上,相对于mobilenetv2,

mobilenetv3-small精度提高了大约3.2%,时间减少了15%

mobilenetv3-large精度提高了大约34.6%,时间减少了5%。

mobilenetv3的large和small结构如下图所示。

总结近几年Pytorch基于Imgagenet数据集图像分类模型

总结近几年Pytorch基于Imgagenet数据集图像分类模型

efficientnet 2019 and efficientnet v2 2021

谷歌研究人员在一篇 icml 2019 论文《efficientnet: rethinking model scaling for convolutional neural networks》中,

提出了

一种新型模型缩放方法

该方法使用一种简单但高效的复合系数(compound coefficient)以更加结构化的方式扩展 cnn,这成为后resnet时代的顶流efficientnet,

很多模型网络及其复杂,学会怎么用*就好了。

以上就是总结近几年pytorch基于imgagenet数据集图像分类模型的详细内容,更多关于pytorch基于imgagenet数据集图像分类模型的资料请关注其它相关文章!

上一篇:

下一篇: