当前位置: 首页 > article >正文

深度学习经典模型之Alexnet

有任何GTP需要,看我简介

1 AlexNet

1.1 模型介绍

​ AlexNet是由 A l e x Alex Alex $Krizhevsky 提出的首个应用于图像分类的深层卷积神经网络,该网络在 2012 年 I L S V R C ( I m a g e N e t L a r g e S c a l e V i s u a l R e c o g n i t i o n C o m p e t i t i o n )图像分类竞赛中以 15.3 提出的首个应用于图像分类的深层卷积神经网络,该网络在2012年ILSVRC(ImageNet Large Scale Visual Recognition Competition)图像分类竞赛中以15.3%的top-5测试错误率赢得第一名 提出的首个应用于图像分类的深层卷积神经网络,该网络在2012ILSVRCImageNetLargeScaleVisualRecognitionCompetition)图像分类竞赛中以15.3^{[2]}$。AlexNet使用GPU代替CPU进行运算,使得在可接受的时间范围内模型结构能够更加复杂,它的出现证明了深层卷积神经网络在复杂模型下的有效性,使CNN在计算机视觉中流行开来,直接或间接地引发了深度学习的热潮。

1.2 模型结构

在这里插入图片描述

​ 图1.1 AlexNet网络结构图

​ 如图4.3所示,除去下采样(池化层)和局部响应规范化操作(Local Responsible Normalization, LRN),AlexNet一共包含8层,前5层由卷积层组成,而剩下的3层为全连接层。网络结构分为上下两层,分别对应两个GPU的操作过程,除了中间某些层( C 3 C_3 C3卷积层和 F 6 − 8 F_{6-8} F68全连接层会有GPU间的交互),其他层两个GPU分别计算结 果。最后一层全连接层的输出作为 s o f t m a x softmax softmax的输入,得到1000个图像分类标签对应的概率值。除去GPU并行结构的设计,AlexNet网络结构与LeNet十分相似,其网络的参数配置如表4.2所示。

​ 表1.2 AlexNet网络参数配置

网络层输入尺寸核尺寸输出尺寸可训练参数量
卷积层 C 1 C_1 C1 ∗ ^* 224 × 224 × 3 224\times224\times3 224×224×3 11 × 11 × 3 / 4 , 48 ( × 2 G P U ) 11\times11\times3/4,48(\times2_{GPU}) 11×11×3/4,48(×2GPU) 55 × 55 × 48 ( × 2 G P U ) 55\times55\times48(\times2_{GPU}) 55×55×48(×2GPU) ( 11 × 11 × 3 + 1 ) × 48 × 2 (11\times11\times3+1)\times48\times2 (11×11×3+1)×48×2
下采样层 S m a x S_{max} Smax ∗ ^* 55 × 55 × 48 ( × 2 G P U ) 55\times55\times48(\times2_{GPU}) 55×55×48(×2GPU) 3 × 3 / 2 ( × 2 G P U ) 3\times3/2(\times2_{GPU}) 3×3/2(×2GPU) 27 × 27 × 48 ( × 2 G P U ) 27\times27\times48(\times2_{GPU}) 27×27×48(×2GPU)0
卷积层 C 2 C_2 C2 27 × 27 × 48 ( × 2 G P U ) 27\times27\times48(\times2_{GPU}) 27×27×48(×2GPU) 5 × 5 × 48 / 1 , 128 ( × 2 G P U ) 5\times5\times48/1,128(\times2_{GPU}) 5×5×48/1,128(×2GPU) 27 × 27 × 128 ( × 2 G P U ) 27\times27\times128(\times2_{GPU}) 27×27×128(×2GPU) ( 5 × 5 × 48 + 1 ) × 128 × 2 (5\times5\times48+1)\times128\times2 (5×5×48+1)×128×2
下采样层 S m a x S_{max} Smax 27 × 27 × 128 ( × 2 G P U ) 27\times27\times128(\times2_{GPU}) 27×27×128(×2GPU) 3 × 3 / 2 ( × 2 G P U ) 3\times3/2(\times2_{GPU}) 3×3/2(×2GPU) 13 × 13 × 128 ( × 2 G P U ) 13\times13\times128(\times2_{GPU}) 13×13×128(×2GPU)0
卷积层 C 3 C_3 C3 ∗ ^* 13 × 13 × 128 × 2 G P U 13\times13\times128\times2_{GPU} 13×13×128×2GPU 3 × 3 × 256 / 1 , 192 ( × 2 G P U ) 3\times3\times256/1,192(\times2_{GPU}) 3×3×256/1,192(×2GPU) 13 × 13 × 192 ( × 2 G P U ) 13\times13\times192(\times2_{GPU}) 13×13×192(×2GPU) ( 3 × 3 × 256 + 1 ) × 192 × 2 (3\times3\times256+1)\times192\times2 (3×3×256+1)×192×2
卷积层 C 4 C_4 C4 13 × 13 × 192 ( × 2 G P U ) 13\times13\times192(\times2_{GPU}) 13×13×192(×2GPU) 3 × 3 × 192 / 1 , 192 ( × 2 G P U ) 3\times3\times192/1,192(\times2_{GPU}) 3×3×192/1,192(×2GPU) 13 × 13 × 192 ( × 2 G P U ) 13\times13\times192(\times2_{GPU}) 13×13×192(×2GPU) ( 3 × 3 × 192 + 1 ) × 192 × 2 (3\times3\times192+1)\times192\times2 (3×3×192+1)×192×2
卷积层 C 5 C_5 C5 13 × 13 × 192 ( × 2 G P U ) 13\times13\times192(\times2_{GPU}) 13×13×192(×2GPU) 3 × 3 × 192 / 1 , 128 ( × 2 G P U ) 3\times3\times192/1,128(\times2_{GPU}) 3×3×192/1,128(×2GPU) 13 × 13 × 128 ( × 2 G P U ) 13\times13\times128(\times2_{GPU}) 13×13×128(×2GPU) ( 3 × 3 × 192 + 1 ) × 128 × 2 (3\times3\times192+1)\times128\times2 (3×3×192+1)×128×2
下采样层 S m a x S_{max} Smax 13 × 13 × 128 ( × 2 G P U ) 13\times13\times128(\times2_{GPU}) 13×13×128(×2GPU) 3 × 3 / 2 ( × 2 G P U ) 3\times3/2(\times2_{GPU}) 3×3/2(×2GPU) 6 × 6 × 128 ( × 2 G P U ) 6\times6\times128(\times2_{GPU}) 6×6×128(×2GPU)0
全连接层 F 6 F_6 F6 ∗ ^* 6 × 6 × 128 × 2 G P U 6\times6\times128\times2_{GPU} 6×6×128×2GPU 9216 × 2048 ( × 2 G P U ) 9216\times2048(\times2_{GPU}) 9216×2048(×2GPU) 1 × 1 × 2048 ( × 2 G P U ) 1\times1\times2048(\times2_{GPU}) 1×1×2048(×2GPU) ( 9216 + 1 ) × 2048 × 2 (9216+1)\times2048\times2 (9216+1)×2048×2
全连接层 F 7 F_7 F7 1 × 1 × 2048 × 2 G P U 1\times1\times2048\times2_{GPU} 1×1×2048×2GPU 4096 × 2048 ( × 2 G P U ) 4096\times2048(\times2_{GPU}) 4096×2048(×2GPU) 1 × 1 × 2048 ( × 2 G P U ) 1\times1\times2048(\times2_{GPU}) 1×1×2048(×2GPU) ( 4096 + 1 ) × 2048 × 2 (4096+1)\times2048\times2 (4096+1)×2048×2
全连接层 F 8 F_8 F8 1 × 1 × 2048 × 2 G P U 1\times1\times2048\times2_{GPU} 1×1×2048×2GPU 4096 × 1000 4096\times1000 4096×1000 1 × 1 × 1000 1\times1\times1000 1×1×1000 ( 4096 + 1 ) × 1000 × 2 (4096+1)\times1000\times2 (4096+1)×1000×2

卷积层 C 1 C_1 C1输入为 224 × 224 × 3 224\times224\times3 224×224×3的图片数据,分别在两个GPU中经过核为 11 × 11 × 3 11\times11\times3 11×11×3、步长(stride)为4的卷积卷积后,分别得到两条独立的 55 × 55 × 48 55\times55\times48 55×55×48的输出数据。

下采样层 S m a x S_{max} Smax实际上是嵌套在卷积中的最大池化操作,但是为了区分没有采用最大池化的卷积层单独列出来。在 C 1 − 2 C_{1-2} C12卷积层中的池化操作之后(ReLU激活操作之前),还有一个LRN操作,用作对相邻特征点的归一化处理。

卷积层 C 3 C_3 C3 的输入与其他卷积层不同, 13 × 13 × 192 × 2 G P U 13\times13\times192\times2_{GPU} 13×13×192×2GPU表示汇聚了上一层网络在两个GPU上的输出结果作为输入,所以在进行卷积操作时通道上的卷积核维度为384。

全连接层 F 6 − 8 F_{6-8} F68中输入数据尺寸也和 C 3 C_3 C3类似,都是融合了两个GPU流向的输出结果作为输入。

1.3 模型特性

  • 所有卷积层都使用ReLU作为非线性映射函数,使模型收敛速度更快
  • 在多个GPU上进行模型的训练,不但可以提高模型的训练速度,还能提升数据的使用规模
  • 使用LRN对局部的特征进行归一化,结果作为ReLU激活函数的输入能有效降低错误率
  • 重叠最大池化(overlapping max pooling),即池化范围z与步长s存在关系 z > s z>s z>s(如 S m a x S_{max} Smax中核尺度为 3 × 3 / 2 3\times3/2 3×3/2),避免平均池化(average pooling)的平均效应
  • 使用随机丢弃技术(dropout)选择性地忽略训练中的单个神经元,避免模型的过拟合

有任何GTP需要,看我简介


http://www.kler.cn/a/381411.html

相关文章:

  • 江协科技STM32学习- P35 硬件I2C读写MPU6050
  • 【工具变量】中国制造2025试点城市数据集(2000-2023年)
  • 机器学习—构建一个神经网络
  • 002-Kotlin界面开发之Kotlin旋风之旅
  • GPT-SoVITS 部署方案
  • AI - 使用LangChain构建简单LLM应用程序
  • HTTP慢速攻击原理及解决办法
  • Mac删除软件,步骤超简单!
  • 15分钟学 Go 第 38 天:数据库基础
  • Ghidra无头模式(自动化批处理执行重复性任务)
  • Set,Map课后练习
  • 【Leecode】Leecode刷题之路第42天之接雨水
  • Docker Remote API TLS 认证_docker远程接口未授权访问漏洞怎么解决
  • C++算法练习-day36——513.找树左下角的值
  • 语言模型的评测
  • 推荐!一些好用的VSCode插件
  • 【前端基础】Flex布局
  • celery加速爬虫 使用flower 可视化地查看celery的实时监控情况
  • C++和JAVA中的sort详解
  • QML项目实战:自定义Combox
  • vue-router+element-plus实现左边侧边栏+右边内容
  • 【2024最新版Kotlin教程】Kotlin第一行代码系列第三课-流程控制
  • 解决 Spring 异步处理中的 JDK 动态代理问题及相关错误分析
  • CCS下载安装(以12.3.0版本为例)
  • 学习threejs,导入OBJ格式的模型
  • BackTrader-Commission 06