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不同的类别中,分类结果比以往的神经网络的分类都要好.为了训练更快,使 ...
随机推荐
- swfupload详解
前提: Ajax解决了不刷新页面提交表单,但是却没有解决文件上传不刷新页面,当然也有其它技术让不刷新页面而提交文件,该技术主要是利用隐藏的iFrame,较Ajax要麻烦许多,而且其提交方式依然在底层是 ...
- ps钢笔工具 (重要工具)
ps钢笔工具 ctrl键 + 鼠标选中操作的点 = 移动点 alt键 + 方点 + 拖拉 = 拖出两个手柄 和 控制两端弧度 alt键 + 圆点 = 控制单向弧度
- Java:HttpClient篇,HttpClient4.2在Java中的几则应用:Get、Post参数、Session(会话)保持、Proxy(代理服务器)设置,多线程设置...
新版HttpClient4.2与之前的3.x版本有了很大变化,建议从http://hc.apache.org/处以得到最新的信息. 关于HttpCore与HttpClient:HttpCore是位于H ...
- 使用Xcode 5创建Cocoa Touch Static Library(静态库)
转自:http://blog.csdn.net/jymn_chen/article/details/21036035 首先科普一下静态库的相关知识: 程序编译一般需经预处理.编译.汇编和链接几个步骤. ...
- prequeue receive queue backlog queue
prequeue和backlog和receive 5.6 TCP prequeue http://blog.csdn.net/u011130578/article/details/44814201 t ...
- xml相关术语说明
<project xmlns="http://maven.apache.org/POM/4.0.0" --命名空间,类似包名,因为xml的标签可自定义,需要命名空间来区分x ...
- 简单的java程序
1.二分查找,java的输入与输出 package com; public class Firstapp{ public static void main(String args[]) { java. ...
- linqtosql 实现数据分页
cs代码 using System; using System.Collections.Generic; using System.Linq; using System.Web; using Syst ...
- WampServer安装环境
今天在阿里云ESC服务器上,用的Window Server2012版本,安装WampServer时,报错msvcr100.dll缺失.上网下了好几次,也确定是64位的放到了C:\Windows\Sys ...
- [shell]shell脚本统计数值大小
#! /bin/bash array=( ... ) var1= var2= ;i<=;i++)); do array[i]="$( cat /sys/bus/iio/devices/ ...