博客
关于我
重返高潮的CNN——AlexNet原理
阅读量:367 次
发布时间:2019-03-05

本文共 1301 字,大约阅读时间需要 4 分钟。

AlexNet——Alex和Hinton提出的深度学习框架,曾在2012年ImageNet LSVRC比赛中夺冠,成为深度学习领域的里程碑。该网络采用创新的设计理念,显著提升了计算效率和模型性能。

整体架构

AlexNet共包含8层,网络结构分为卷积层和全连接层。前五层为卷积层,后三层为全连接层。网络结构图展示了各层的连接关系。

卷积层设计

前两层的卷积层设计相似:

  • 第1层:输入图像尺寸为227×227×3,使用96个11×11×3的卷积核进行卷积计算。输出尺寸为55×55×48。ReLU激活函数后,经过最大重叠池化(3×3,stride=2),输出尺寸为27×27×48。池化后施加局部响应归一化(LRN)处理。
  • 第2层:使用第1层输出作为输入,增加2个像素的padding,使用256个5×5×48的卷积核进行滤波。
  • 后续卷积层(第3-5层)与前两层不同:

    • 第3层:384个3×3×256的卷积核,输出尺寸为55×55×192。
    • 第4层:与第3层结构相同。
    • 第5层:输出尺寸为6×6×256,使用最大池化(3×3,stride=2)。

    全连接层设计

    后三层全为全连接层,每层包含4096个神经元:

    • 第6层:使用6×6×256的卷积核,输出尺寸为1×1×4096,经过ReLU激活和Dropout处理。
    • 第7层:与第6层相同。
    • 第8层:输出为1000维的softmax输入,生成1000个类别概率。

    基本原理

    ReLU修正线性单元(Rectified Linear Unit)是AlexNet的核心激活函数。相比sigmoid函数,ReLU在训练过程中更具收敛性,且避免了梯度弥散和爆炸问题。ReLU函数图像显示其非饱和特性。

    梯度弥散与爆炸

    传统激活函数如sigmoid函数在深度网络中容易导致梯度弥散(前层梯度小、后层梯度大),影响训练效率。ReLU函数的线性特性有效缓解了这一问题。

    多GPU训练

    AlexNet采用并行训练策略,分为上下两部分运行。特定层(如第2、4、5层)在两个GPU之间通信,减少数据传输开销。

    局部响应归一化

    引入局部响应归一化(Local Response Normalization,LRN)层,借鉴神经生物学中的侧抑制机制。LRN通过局部归一化增强模型泛化能力,减少过拟合。

    过拟合防治

    AlexNet采用Dropout方法,在训练时随机屏蔽部分神经元,防止模型过度依赖局部特征。Dropout不仅减少过拟合,还提高了训练效率。

    数据增强

    数据增强主要包含以下内容:

  • 训练集:从256×256图像随机裁剪224×224块,类型包括镜像反射和随机裁剪,样本量扩展至2048倍。
  • 测试集:对每幅图像进行多次裁剪和翻转,生成10个样本,取平均值进行测试。
  • 此外,AlexNet还采用了对RGB通道进行主成分分析(PCA)的数据增强方法,通过随机变量增强特征多样性。

    总结

    AlexNet通过创新的网络结构和训练策略,开创了深度学习的新时代。其设计理念包括ReLU激活函数、最大池化、局部响应归一化以及多GPU并行训练等技术,为后续深度学习模型的发展奠定了重要基础。

    转载地址:http://ynlg.baihongyu.com/

    你可能感兴趣的文章
    Qt知识: 画刷风格
    查看>>
    QT的OpenGL渲染窗QOpenGLWidget Class
    查看>>
    QT的C++程序加载动态链接库DLL(Linux下是so)的方式
    查看>>
    QT界面操作1:如何跟踪鼠标位置?
    查看>>
    Qt环境搭建(Visual Studio)
    查看>>
    QT点击"X"按钮,调用closeEvent()函数来实现调用特定事件(附:粗略介绍QT的信号与槽的使用方法)...
    查看>>
    QT样式表——url路径
    查看>>
    QT数据库(三):QSqlQuery使用
    查看>>
    QT教程5:消息框
    查看>>
    SpringBoot中集成阿里开源缓存访问框架JetCache实现声明式实例和方法缓存
    查看>>
    pom.xml中提示web.xml is missing and <failonmissingw>...
    查看>>
    Pomelo开发中Web客户端开发API简介
    查看>>
    QT教程2:QT5的体系构架
    查看>>
    PON架构(全光网络)
    查看>>
    PoolingHttpClientConnectionManager原理剖析
    查看>>
    QT教程1:ubuntu18.04安装QT5
    查看>>
    POP-一个点击带有放大还原的动画效果
    查看>>
    POP3 协议在计算机网络中的优缺点
    查看>>
    qt批量操作同类型控件
    查看>>
    Portaudio笔记-WASAPI
    查看>>