zoukankan      html  css  js  c++  java
  • AlexNet

    AlexNet

    模型结构

    AlexNet网络结构共有8层,前面5层是卷积层,后面3层是全连接层,最后一个全连接层的输出传递给一个1000路的softmax层,对应1000个类标签的分布。

    image-20200921085039731

    image-20200921085104127

    conv1

    输入数据:输入的原始图像大小为224×224×3(RGB图像),在训练时会经过预处理变为227×227×3
    卷积核:11×11×3;步长:4;数量(也就是输出个数):96
    卷积后数据:55×55×96 (原图N×N,卷积核大小n×n,卷积步长大于1为k,输出维度是(N-n)/k+1)
    relu1后的数据:55×55×96
    Max pool1的核:3×3,步长:2
    Max pool1后的数据:27×27×96
    norm1:local_size=5 (LRN(Local Response Normalization) 局部响应归一化)
    最后的输出:27×27×96

    conv2

    输入数据:27×27×96
    卷积核:5×5;步长:1;数量(也就是输出个数):256
    卷积后数据:27×27×256 (做了Same padding(相同补白),使得卷积后图像大小不变。)
    relu2后的数据:27×27×256
    Max pool2的核:3×3,步长:2
    Max pool2后的数据:13×13×256 ((27-3)/2+1=13 )
    norm2:local_size=5 (LRN(Local Response Normalization) 局部响应归一化)
    最后的输出:13×13×256

    conv2中使用了same padding,保持了卷积后图像的宽高不缩小。

    (same padding:卷积核移动到最后不够再进行一次卷积运算,就将不够的列补零再进行运算

    ​ valid padding:卷积核移动到最后不够再进行一次卷积运算,就将剩余的列舍弃

    conv3

    输入数据:13×13×256
    卷积核:3×3;步长:1;数量(也就是输出个数):384
    卷积后数据:13×13×384 (做了Same padding(相同补白),使得卷积后图像大小不变。)
    relu3后的数据:13×13×384
    最后的输出:13×13×384

    conv3层没有Max pool层和norm层

    conv4

    输入数据:13×13×384
    卷积核:3×3;步长:1;数量(也就是输出个数):384
    卷积后数据:13×13×384 (做了Same padding(相同补白),使得卷积后图像大小不变。)
    relu4后的数据:13×13×384
    最后的输出:13×13×384

    conv5

    输入数据:13×13×384
    卷积核:3×3;步长:1;数量(也就是输出个数):256
    卷积后数据:13×13×256 (做了Same padding(相同补白),使得卷积后图像大小不变。)
    relu5后的数据:13×13×256
    Max pool5的核:3×3,步长:2
    Max pool2后的数据:6×6×256 ((13-3)/2+1=6 )
    最后的输出:6×6×256

    fc6

    输入数据:6×6×256
    全连接输出:4096×1
    relu6后的数据:4096×1
    drop out6后数据:4096×1
    最后的输出:4096×1

    fc7

    输入数据:4096×1
    全连接输出:4096×1
    relu7后的数据:4096×1
    drop out7后数据:4096×1
    最后的输出:4096×1

    fc8

    输入数据:4096×1
    全连接输出:1000
    fc8输出一千种分类的概率。

    改进与创新

    1.AlexNet采用了Relu激活函数。

    2.局部响应归一化 LRN(Local Response Normalization):ReLU函数不像tanh和sigmoid一样有一个有限的值域区间,所以在ReLU之后需要进行归一化处理,LRN的思想来源于神经生物学中一个叫做“侧抑制”的概念,指的是被激活的神经元抑制周围的神经元。使用局部归一化的方案有助于增加泛化能力。

    3.引入dropout防止过拟合。

    4.Overlapping(重叠池化):重叠池化就是池化操作在部分像素上有重合,重叠池化有避免过拟合的作用。

    5.数据增强:

    (1)随机裁剪,对256×256的图片进行随机裁剪到224×224,然后进行水平翻转,相当于将样本数量增加了((256-224)^2)×2=2048倍;
    (2)测试的时候,对左上、右上、左下、右下、中间分别做了5次裁剪,然后翻转,共10个裁剪,之后对结果求平均。作者说,如果不做随机裁剪,大网络基本上都过拟合
    (3)对RGB空间做PCA(主成分分析),然后对主成分做一个(0, 0.1)的高斯扰动,也就是对颜色、光照作变换,结果使错误率又下降了1%。

    参考:https://zhuanlan.zhihu.com/p/47391705、https://zhuanlan.zhihu.com/p/42914388、https://blog.csdn.net/chenyuping333/article/details/82178335

  • 相关阅读:
    Sublime Text 3 安装及常用插件配置
    利用事件对象实现线程同步
    基于UDP(面向无连接)的socket编程
    基于TCP(面向连接)的socket编程
    基于TCP(面向连接)的socket编程
    响应式布局之媒体查询 @media
    (function($){})(jQuery)---Javascript的神级特性:闭包
    noConflict()
    $.extend()与$.fn.extend()
    Web中的宽和高
  • 原文地址:https://www.cnblogs.com/Jason66661010/p/13704417.html
Copyright © 2011-2022 走看看