ImageNet Classification with Deep Convolutional Neural Networks 论文解读
这个论文应该算是把深度学习应用到图片识别(ILSVRC,ImageNet large-scale Visual Recognition Challenge)上的具有重大意义的一篇文章。因为在之前,人们一直质疑深度学习的强大有能力。
大家看看它的引用数目就知道它很厉害了,,9000多的引用。。
作者为:Hinton的学生与Hioton:
Krizhevsky A
Sutskever I
Hinton GE
要想训练好一个深层的神经网络,需要 :很大的 datasets, 很强大的硬件,很好的抵制overfitting的机制等。
文章用的dataset: Imagenet 数据集的一个subset, 包括:1.2M个样本,1000个种类。另外还有,50000的validation 数据集,150000的测试集。
ILSVRC是从2010年开始的,在2010年时,比赛的test dataset是公开的,以后的都不是公开的。这个挑战赛的常用的两个誤差标准:一个是top-1 error,一个是top-5 error,(这个在之前写的文章里都有提及到了)
网络的结构:
整体是这样的,

224*224*3的输入, 后面5个卷积层,再后面三个全连接层,最后一个softmax层分类。
具体参数吧,图上写的很清楚的:你看看啊,输入层为 224*224*3, 第一层的卷积核大小为11*11*3,共96个,然后第二层的卷积层的输入为 55*55*48(是从上面96个卷积核生成的feature maps 中选择了一半),第二层的卷积核为:5*5*48,共256个,,等 。。。。后面的看看论文,里面有。。
不过要说明一点的是:对于选择不同的feature作为输入时,会根据是不是在同一个GPU进行选择,文章说明这一点了,可能目的为了用双GPU训练时,实现起来简单一些,且速度快一些吧。
结构相对几点重要的地方:
第一,使用的激活函数为:Rectified Linear Units(ReLUs). 可以很好地提高学习速度,因为这个激活函数为non-saturating function.
第二,训练在多块GPU上,不过它怎么实现的吧,看着的有点乱。。。不很明白,可能没有编程的原因,应该是这样的。
第三点,使用了 Local Response Normalization, (我的翻译为:局部响应标准化),公式是这样的:

公式怎么来的,没有说啊。不过它的目的就是在相对的局位置上,在相邻有不同的卷积核(文中也说了,这个卷积核的排序为任意且的训练之间就是选择了的哦)之间进行相互的一个侧向抑制。这么做的原因是因为:在现实中,动物的神经元之间就会有一个侧向抑制。参数的选择吧,要自己来调整。。
第四点,重叠pooling,这个不解释,就是在pooling的时候会发生重叠。
降低Overfitting的方法
第一点,也是常用的方法:人为扩大训练样本。
文中的方法1:在256*256的大样本中,选择5个224*224的patches(左上,左下,右上,右上,中间),再加上水平翻转,共10个了吧。
方法2: altering the intensities of the RGB channels in training images. 文中的方法是什么通过PCA(主成份分析)的方法啥的,反正看了一会没有看懂,也就不看了吧。
第二点: dropout机制, dropout的概率为0.5,有作用。。简单地说,就是在训练网络过程中,让一些的neunon的不起作用,这样训练出来的神经网络应该说是很均匀,不过过度依赖某些的units, 采用dropout时,注意一点:在测试的时候注意把进行dropout机制的那些神经元的输出乘以0.5.
其它细节:
batch sizes为:128,
采用梯度下降法训练,权值更新公式:

等。。。
说一点:学习速率的改变方法:初始化为0.01,在训练过程中,当网络的validation error 不再下降时,把学习速率缩小10倍,如此反复进行3次就可以啦。
最后结果表明:效果很不错。
最后加一句,文中的原话:
Another way to probe the network’s visual knowledge is to consider the feature activations induced by an image at the last, 4096-dimensional hidden layer.
ImageNet Classification with Deep Convolutional Neural Networks 论文解读的更多相关文章
- AlexNet论文翻译-ImageNet Classification with Deep Convolutional Neural Networks
		
ImageNet Classification with Deep Convolutional Neural Networks 深度卷积神经网络的ImageNet分类 Alex Krizhevsky ...
 - 《ImageNet Classification with Deep Convolutional Neural Networks》 剖析
		
<ImageNet Classification with Deep Convolutional Neural Networks> 剖析 CNN 领域的经典之作, 作者训练了一个面向数量为 ...
 - ImageNet Classification with Deep Convolutional Neural Networks(译文)转载
		
ImageNet Classification with Deep Convolutional Neural Networks Alex Krizhevsky, Ilya Sutskever, Geo ...
 - 中文版 ImageNet Classification with Deep Convolutional Neural Networks
		
ImageNet Classification with Deep Convolutional Neural Networks 摘要 我们训练了一个大型深度卷积神经网络来将ImageNet LSVRC ...
 - 论文解读《ImageNet Classification with Deep Convolutional Neural Networks》
		
这篇论文提出了AlexNet,奠定了深度学习在CV领域中的地位. 1. ReLu激活函数 2. Dropout 3. 数据增强 网络的架构如图所示 包含八个学习层:五个卷积神经网络和三个全连接网络,并 ...
 - [论文阅读] ImageNet Classification with Deep Convolutional Neural Networks(传说中的AlexNet)
		
这篇文章使用的AlexNet网络,在2012年的ImageNet(ILSVRC-2012)竞赛中获得第一名,top-5的测试误差为15.3%,相比于第二名26.2%的误差降低了不少. 本文的创新点: ...
 - 论文阅读笔记二-ImageNet Classification with Deep Convolutional Neural Networks
		
分类的数据大小:1.2million 张,包括1000个类别. 网络结构:60million个参数,650,000个神经元.网络由5层卷积层,其中由最大值池化层和三个1000输出的(与图片的类别数相同 ...
 - AlexNet——ImageNet Classification with Deep Convolutional Neural Networks
		
1. 摘要 本文的模型采用了 5 层的卷积,一些层后面还紧跟着最大池化层,和 3 层的全连接,最后是一个 1000 维的 softmax 来进行分类. 为了减少过拟合,在全连接层采取了 dropout ...
 - 阅读笔记:ImageNet Classification with Deep Convolutional Neural Networks
		
概要: 本文中的Alexnet神经网络在LSVRC-2010图像分类比赛中得到了第一名和第五名,将120万高分辨率的图像分到1000不同的类别中,分类结果比以往的神经网络的分类都要好.为了训练更快,使 ...
 
随机推荐
- php-fpm 启动参数及重要配置详解(转)
			
约定几个目录 /usr/local/php/sbin/php-fpm /usr/local/php/etc/php-fpm.conf /usr/local/php/etc/php.ini 一,php- ...
 - html5中script的async属性
			
html5中script的async属性 我兴奋于html5的原因之一是一些久久未能实现的特性现在可以真正运用于实际项目中了. 如我们使用placeholder效果蛮久了但是那需要javascript ...
 - SGU 114. Telecasting station 三分or找中位数
			
题目链接点这儿 一開始想都没想...直接上了三分...结果...sample的答案不一样...可是过了...然后又看了看. . . 发现这不就是高中或者初中出过的求中位数的题么. . .直接找到这些的 ...
 - C#特性Attribute学习
			
起初一直纠结于如何调用特性附着在下面那个成员的值,后来发现不需要调用,通过反射加载的时候是自动绑定上去的,即 获得成员对象之后,有一个方法可以获得特性标签. 其实从类库提供者,和类库使用者的角度,分开 ...
 - 【Android】20.1 音频播放
			
分类:C#.Android.VS2015: 创建日期:2016-03-11 一.简介 MediaPlayer:适合每次播放一个音频资源或者音频文件的场合. SoundPool:适合同时播放多个音频资源 ...
 - Test for Required Behavior, Not Incidental Behavior
			
Test for Required Behavior, Not Incidental Behavior Kevlin Henney A COMMON PITFALL IN TESTING is to ...
 - 基于Harbor和CephFS搭建高可用Private Registry
			
我们有给客户搭建私有容器仓库的需求.开源的私有容器registry可供选择的不多,除了docker官方的distribution之外,比较知名的是VMware China出品的Harbor,我们选择了 ...
 - CCNotificationCenter(一)
			
const std::string testsName[MAX_COUNT] = { "Bug-350", "Bug-422", "Bug-458&q ...
 - The DiskSpd Storage Performance Tool
			
https://enterpriseitnotes.wordpress.com/2013/05/31/understanding-ios-iops-and-outstanding-ios/ https ...
 - lua的table库
			
函数列表: table.insert(table,[ pos,] value) table.remove(table[, pos]) table.concat(table[, sep[, i[, j] ...