• Alexnet


    论文原文:http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf
    参考博客:https://blog.csdn.net/hongbin_xu/article/details/80271291

    5个卷积层+3个全连接层+softmax

    非饱和神经元

    non-saturating neurons: 非饱和神经元,即没有被挤压处理过的值。关键在于值是否有被挤压,且存在最大最小值
    sigmoid函数会将输入映射到[0,1]之间,属于saturating neurons(饱和神经元)
    relu函数对于输入要么保持不变,要么变成0,不存在挤压和最大值,属于非饱和神经元。

    saturate,饱和,即在函数两端,函数值会逐渐趋近于某个数值,此时在反向传播时容易产生梯度消失的现象。
    https://www.zhihu.com/question/48010350/answer/109446932

    top-1 and top-5 error

    top-1 error :在计算结果中取概率最大的项最为预测结果与真实类别相比较。
    top-5 error : 在计算结果中取概率最大的5项,真实类别若在该5项类别中,则判断正确。

    ReLu

    采用ReLu代替原本常用的sigmoid和tanh函数,极大提升了训练速度,loss值下降到一定程度所需的epoch次数减少了许多。

    多GPU训练

    采用双GPU并行训练,每个GPU上放置整个网络一半的神经元,并且只在某些特定的层上允许GPU之间相互通信。
    该方法在速度上比在单GPU上运行只有原网络一半数量的神经元的网络更快。

    局部响应归一化(Local Response Normalization)

    参考:https://www.cnblogs.com/sddai/p/10202037.html
    侧抑制:神经生物学的一个概念,即被激活的神经元抑制相邻的神经元。
    归一化:有助于快速收敛(避免梯度过大使参数波动大而错过最优解)、增强模型模型能力
    局部归一化:对局部神经元的活动创建竞争机制,使得其中响应较大的值变得更大,并抑制其它反馈较小的神经元,增强泛化能力。

    其中N为通道数,n为选取范围。
    对某个像素点的一个通道和相邻的几个通道做归一化。

    Overlapping Pooling(重叠池化)

    Alexnet中的池化是可以重叠的,当池化时每次移动的步长小于池化的窗口长度,每个元素可能与多个kernel计算。

    整体结构

    参考: https://www.cnblogs.com/wangguchangqing/p/10333370.html#autoid-1-2-0
    网络由5个卷积层+3个全连接层+softmax组成
    其中第2、4、5个卷积层仅仅与前一层中位于相同GPU的神经元相连接,第3层中的kernel与第2层中全部的输出相连接。
    响应归一化层(response-normalization layer)位于第1和第2卷积层后。
    最大池化层(max-pooling layer)位于响应归一化层和第5卷积层后。
    ReLU运用在每个卷积层和全连接层后。
    (网络在两个GPU上计算,注意分配channel数)

    Data Augmentation(数据增强)

    通过少量计算将原本的图像转换为新的图像,且新的图像不需要存储咋硬盘上,可直接参与计算。
    转换图像在CPU上生成,与此同时可以在GPU上训练上一批的图像数据,提高效率。

    方法一:随机裁减、翻转
    从图像中随机提取224224的图像块及其水平翻转,通常取四个角块和中心块(=(4+1)2=10块)
    方法二:对图像的颜色、光照进行变换。
    对RGB空间做PCA(主成分分析),再对其做均值为0,方差为0.1的高斯扰动。

    Dropout

    对于隐藏神经单元的输出,有0.5的概率将其设为0,且被dropped out的神经单元不参与前向传输和反向传播。
    对于网络中的每一次输入,神经网络呈现出不同的结构,但共享权重。
    使得神经元无法依赖于其它特定的神经元,从而迫使它学习更强大更鲁棒的功能。

    训练细节

    随机梯度下降(stochastic gradient descent): batch_size = 128, momentum = 0.9, weight decay = 0.005
    使用均值为0,方差为0.01的高斯分布初始化各层的权重。使用常数1初始化网络中第2、4、5卷积层以及全连接层中的偏置参数(bias)。其余偏置参数设为0。
    学习率:初始时所有层采用相同的学习率,在训练过程中手动调整。当验证集上的错误率不在降低时,手动将学习率除以10。

  • 相关阅读:
    Hello,Power BI
    ubuntu 14.04中Elasticsearch 2.3 中 Nginx 权限认证
    Elasticsearch中doc_value的认识
    Elasticsearch 5.0 _source field的简单认识
    在kubernetes集群上用helm安装Datadog(Monitoring)
    在Windows上安装Elasticsearch 5.0
    Matlab 高斯_拉普拉斯滤波器处理医学图像
    Logstash时区、时间转换,message重组
    Elasticsearch 2.3 (ELK)Geo_point绘图、日志Date时间获取实例
    ubuntu 安装Elasticsearch5.0(Debian包)
  • 原文地址:https://www.cnblogs.com/tjll/p/15272254.html
Copyright © 2020-2023  润新知