ImageNet Classification with Deep Convolutional Neural Networks简介

2012年AlexNet的提出可能是DL界的又一次跃进,有幸拜读,不敢说有所领悟,姑且记录所得,以便日后翻阅。

Abstract:

简单的介绍了LSVRC-2010比赛,以及以往的最好成绩和基于CNN的better than the previous state-of-the-art。并提出几点工作:1、非饱和神经元算法以及GPU双线程网络。2、dropout(正则算法)防止过拟合。3、一个改进后的模型变体参加LSVRC-2012比赛,并再创佳绩。

Introduction:

主要讲的是:1、更大的数据集、更强劲的模型和更好的抑制过拟合技术将大大提高objects识别率。2、海量数据下学习数以千计的物体特征,应用模型需要巨大的capacity,并且即使数据量巨大,却未必能完全包含每种物体的所有特征,因此应用模型需要大量的先验知识,而CNN恰恰就是这样一种模型,what's more,CNN的capacity可以通过改变其深度与广度得到控制。(然后巴拉巴拉到CNN很好用,但是训练代价大,还好现如今GPU好,paired with 高度优化的2D卷积应用,而且ImageNet包含了足够多的带标签数据,双管齐下,万事大吉。之后又 巴拉了本文主要工作.......)

The Dateset:

介绍了ImageNet,1500万张带标签高清图belong to 22000个类别。应用到网络时:分为训练集、验证集、检测集。再者,说明了top-1(识别正确)与top-5(识别结果概率最大的前五张图含有目标label)错误率的意思。模型的输入需要一致不变,所以输入图片会被剪切为256*256大小(拿到一张图片,会对图片进行缩放,保证其最短边为256长,然后以图片中点为中心,裁剪256*256大小)。此外还会遍历训练集中每张图片中的每个像素,用其像素值减去mean activity(平均活跃值)。除此之外,不会在对图像进行预处理,输入图像即为RGB图像。

The Architecture

3.1ReLU Nonlinearity

激活函数不是sigmoid函数,不是tanh(x)函数,而是ReLU函数,就梯度下降速度而言,ReLU不饱和非线性函数f(x)=max(0,x)要比上述两种饱和非线性函数快的多(error to 25%,快6倍)。

3.2Training on Multiple GPUs

在当初时代背景下,单核GPU存储有限,限制了CNN模型的最大规模,所以将网络分布在两个GPU上,同时并行的两个GPU可以直接互相进行数据的读取与写入,且不需going through host machine memory。This scheme 在每个GPU上分布半数卷积核、仅在特定层才会有GPU之间的通讯。(这种模式对于信息的交互验证是种考验,但却也能让人们精确地调整连接数量,直到计算落入可接受的范围)。

经过验证,采用双GPU结构的模型运行速度要优于同情况下半数数据的单GPU的运行速度,可见这种结构的优越性。

3.3Local Response Normorlization:

ReLU无需将输入归一化处理以防止数据的饱和,然而在ReLU之后进行LRN(局部响应归一化)处理会得到更加泛化的结果,原文给出了公式:.......

这个式子可以理解为又一个激活函数。并且LRN只在特定层的ReLU之后采用。

LRN其实跟LCN(局部对比归一化)有着相似之处,前者是亮度归一化,后者是对比度归一化。LRN大约能将错误率降低2个百分点左右。

3.4Overlapping Pooling:

传统池化是不重叠的,现在要重叠了。即相邻的池化单元有输入层神经元交集。这样可以将错误率降低0.3%左右,且更难发生过拟合现象。

3.5Overall Architecture

AlexNet结构介绍:原文配图,网上有很多结构解释。

需要注意的是:只有第一第二卷积层插入了LRN算法,Max Pooling存在于1、2、5卷基层后,ReLU贯穿始终。

4 Reducing Overfitting:

4.1:Date Augmentation:

最简单也是最常见的方法:利用标签保护平移手段人工放大数据集,这里介绍了两种不同的数据扩增方法,并且两种方法计算量都较小,无需占用硬盘空间,且可以借助python代码在CPU下输出,再输入到GPU,因此不占用模型计算量。

1、第一种数据扩增方法包括了形成的平移图像以及其水平镜像,该方法会在256*256大小图片上随机提取5张224*224大小的图片。训练时,这五张图片可以提取的是四个角加一张中心224*224图片共五张,外加5张水平镜像共十张图,softmax会对10张图的预测值取平均。

2、第二种数据扩增的方法是改变图像RGB通道强度,利用主成分分析法,对于每个训练图像,我们添加所发现的多重主成分,其大小与对应的特征值成比例,再乘以由均值为0、标准偏差为0.1的Gaussian产生的随机变量。于是有公式:

                                                                             巴拉巴拉

可以将错误率降低1%左右。

4.2Dropout:

思想是对于隐藏层的所有输出单元,都有0.5的可能性被赋值为零。所以网络结构也是在不断随着input而变换。这种思想降低了神经元的共适性,即一个神经元是无法依赖另一个特定的神经元而存在的,所以它强迫神经元不断去学习具有鲁棒性的特征去适应更多的随机神经元子集连接。检测时,本文是将隐层输出全部乘0.5,这是一个合理的近似。

对于全连接层的前两层,无dropout过拟合严重,有dropout表现良好,只不过dropout会增加迭代次数。

5Details of learning

公式见文中,介绍了一些初始化的问题:权重由零均值,0.01标准差的Gaussian初始化、在第2、4、5卷基层和全连接层,偏置b初始化为1,让ReLU更多正输入、以加快早期阶段的学习。其余层偏置初始化为常数0。

通常情况下,学习率初始化为0.01;如果当前学习率下,错误率停止更新,则学习率除以10(并且在终止更新前,错误率至少要有3次降低更新)。

6 Results

结果很好,轰动世界。

6.1 Qualitative Evaluations

提出几个问题:

隐藏层输出的Figure3图片中,模型习得了频率和方向的选择;GPU1是一些无关颜色的特征,而GPU2则习得了很多与颜色相关的特征。

是狗还是樱桃,这是个问题,图像识别中主物体选择存在歧义。

欧氏距离影响着神经网络的判断,可以通过自动编码器加速采用欧氏距离的网络(更快更好的检索边缘模式相同的图像,而无关语意相似度)。

7 Discussion

模型不错,表现令人满意。视频是未来趋势。

 

本人才疏学浅,难免多有错误遗漏之处,还望包涵指正。







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值