美文网首页读书程序员
Reading Notes:Alex-Net《ImageNet

Reading Notes:Alex-Net《ImageNet

作者: 水土七口刀 | 来源:发表于2018-05-30 21:10 被阅读70次

    首先介绍文中所用到的数据集:

        (1)文中所用到的数据集是来自于ImageNet数据集的ILSVRC(ImageNet Large-Scale Visual Recognition Challenge)数据集,数据集中共1000个类别每个类别大约1000张图片,其中约120万张训练集图片,5万张验证集图片,15万张测试集图片。用于文中的数据集为ILSVRC-2010,此外ILSVRC还有ILSVRC-2012数据集,在文中也涉及到了2012版数据集,但此数据集是不可获得的。

    (2)因为ImageNet数据集中的图片包括多种分辨率,但是文中实验需要固定分辨率图片,所以在实验前会对使用的图片数据进行处理(少则调整,然后下采样),将图片统一为256*256分辨率,除此之外没有其他处理,直接使用RGB图片进行训练。

    Alex-Net架构:

    (1)Alex-Net整体网络结构如下图所示:

    Alex-Net整体结构图

        Alex-Net整体网络层次:卷积层1——>局部响应归一化层1——>最大池化层1——>卷积层2——>局部响应归一化层2——>最大池化层2——>卷积层3——>卷积层4——>卷积层5——>最大池化层3——>全连接层1——>全连接层2——>全连接层3(1000softmax输出)

    (2)在第三节(The Architecture)部分,作者根据他所认为的在Alex-Net中一些创新或者不同寻常的部分的重点,当然这只是在论文发表当时作者的观点,现在其中一些技术已经得到了广泛的应用。

        <1>ReLU Nonlinearity(线性整流函数):简单用公式来说就是f(x)=max(0,x)这里引用另一文献中的一幅图片来介绍ReLU,来源在图片介绍部分包含。图中右面部分与文中图片完全一致,这部分图片所体现的也是文中采用ReLU作为激活函数的主要原因,采用ReLU作为激活函数可以加速训练。

    ReLU介绍图

    <2>Training on Multiple GPUs(多GPU训练):文中采用了两块3G内存的GTX580GPU,原因是单个GPU计算和存储能力有限同样也会限制所训练神经网络的规模,而采用多GPU可以训练更大规模的神经网络,在技术实现过程中各将一半的神经元节点放置于两块不同的GPU(我的理解:同样道理可以推广到使用更多块GPU),使不同层的神经元只能和特定层的神经元进行通信(也就是连接),比如文中说明3层只能和2层连接,而4层只能和与它同在一块GPU的层连接。采用这个技术使测试结果的TOP1和TOP5错误率(TOP1错误率指对一张图片的分类概率最大的类恰恰是正确的类,而TOP5错误率指概率最大的5个类中包含正确的类)分别降低了1.7%和1.2%。

    <3>Local Response Normalization(局部响应归一化):

    局部响应归一化的符号表达

    局部响应归一化可以归纳为以上的符号表达,其中i代表第i个kernel(核),(x,y)表示对应的位置,n表示在第i个核的相同位置邻近的kernel map(核)的数目,N表示该层kernels(核)的总数目,其中的k,n,alpha,beta都是人工设置的超参数,文中采用k=2,n=5,alpha=10的-4次方,beta=0.75。采用这个技术使测试结果的TOP1和TOP5错误率分别降低了1.4%和1.2%。

    <4>Overlapping Pooling(重叠池化)

    所谓重叠池化就是再吃化过程中每一个池化单元之间有重叠的部分(传统池化是没有重叠的),采用这个技术使测试结果的TOP1和TOP5错误率分别降低了0.4%和0.3%。

    (3)在第四节Reducing Overfitting(降低过拟合)部分,开始作者介绍了因为神经网络参数众多,所以需要考虑到过拟合问题,下面介绍了两种用于降低过拟合的方法:

    <1>Data Augmentation(数据扩充):在数据扩充部分又分为两个方法。其一是对图片进行图像转移(随机抽取224*224小块)和图像取镜像;其二是对图像的RGB像素值进行PCA(主成分分析)。整个数据扩充使TOP1错误率降低了超过1%.

    <2>Dropout(丢弃):在Alex-Net中,前两个全连接层使用了Dropout技术,用以降低过拟合,关于Dropout可以自行查看网络资源或其他文献资料。

    (4)第五节Details of learning(学习训练)中,介绍了Alex-Net采用的随机梯度下降进行训练,batch为128,momentum(学习率)为0.9,weight decay(权重衰减)为万分之5。具体公式不在此列出,大家可以查看原文。在训练过程中使用120万图片循环训练了大约90次,使用两块GTX580(3G)训练了五到六天。

    (5)Result(测试结果):在ILVRC-2010数据集数据集中,TOP1错误率和TOP5错误率分别为37.5%和17.5%。在之前该数据集的TOP1错误率和TOP5错误率分别为47.1%和28.2%,当时公开的TOP1错误率和TOP5错误率分别为45.7%和25.7%。在ImageNet2009数据集(10184类890万张图片)上TOP1错误率和TOP5错误率分别为67.4%和40.9%,当时此数据集基线TOP1错误率和TOP5错误率分别为78.1%和60.9%

    注:第一次写文献阅读笔记,且本人英语水平一般,所以可能存在众多错误与不足,希望大家谅解并给与批评指正。另外在阅读文献过程中不可避免的会参考一些网络资源,虽然已尽力尊重原文避免网络资源的影响,但仍然会有一些影响,感谢那些提供资源的前辈。

    相关文章

      网友评论

        本文标题:Reading Notes:Alex-Net《ImageNet

        本文链接:https://www.haomeiwen.com/subject/jfhxsftx.html