AlexNet模型
来源:互联网 发布:什么是网络信息收集 编辑:程序博客网 时间:2024/06/05 04:33
- 简介
- 数据集
- 激活函数
- 网络结构
- Dropout策略
- 网络各层次阶段
简介
2012年,Alex Krizhevsky及其同学Ilya Sutskever在多伦多大学Geoff Hinton的实验室设计了一个深层的卷积神经网络,夺得了2012年ImageNet LSVRC的冠军,且准确率远超第二名(top5 error rate 15.3%,第二名为26.2%),这在学术界引起了很大的轰动,大家争先恐后地研究深度神经网络,带来了深度学习的大爆发。之后的ImageNet冠军都是用CNN来做的,并且层次越来越深。
数据集
实验采用的数据集是ImageNet,它有超过1500万张人工标注好的高分辨率的图片,分别属于约22000个类别。ImageNet的图片全部来自网络,并通过亚马逊的Mechanical Turk众包服务进行了人工标注。自2010年开始举办ILSVRC比赛,每年一次。ILSVRC用的是ImageNet的一个子集,总共有1000个类别,每个类别大约有1000张图片,其中训练集有约120万张图片,验证集约5万张图片,测试集约15万张图片。ImageNet比赛会给出2个错误率,top-1和top-5,top-5错误率是指你的模型预测的概率最高的5个类别中都不包含正确的类别。
激活函数
神经元的激活函数通常选择sigmoid函数或tanh函数,但在AlexNet中用的却是max(0, x)函数,它的名字叫Rectified Linear Unit (ReLU)。用这个激活函数的神经网络的训练速度要比用传统激活函数的神经网络快数倍。4层的卷积神经网络在CIFAR-10数据集上训练达到25%的错误率。
网络结构
基本结构如下图:
a. 共有8层,其中前5层convolutional,后边3层full-connected ,最后的一个full-connected层的output是具有1000个输出的softmax,最后的优化目标是最大化平均的multinomial logistic regression
b. 在第一层conv1和conv2之后直接跟的是Response-nomalization layer,也就是norm1,norm2层。
c. 在每一个conv层以及full-connected层后紧跟的操作是ReLU操作。
d. Max pooling操作是紧跟在第一个norm1,norm2,以及第5个conv层,也就是conv5
e.Dropout操作是在最后两个full-connected层。
Dropout策略
使用多个model来共同进行预测是一个降低test errors的基本方法,但是单独的训练多个model组合会导致整个的训练成本增加,毕竟训练一个单一的网络需要很长的时间,即便计算资源足够,在不影响精度的情况下降低整个运算时间还是我们追求的目标。
由此Hinton提出了dropout策略,这个策略很简单,对于每一个隐层的output,以50%的概率将他们设置为0,不再对于forward或者backward的过程起任何作用。对于每一个input来说,使用的不同的网络结构,但是权重是共享的。这样求得的参数能够适应不同的情况下的网络结构,也就是提高了系统的泛化能力。
在AlexNet中最后的两个full-connected层中使用了这个策略。
网络各层次阶段
1.conv1阶段DFD(data flow diagram):
2.conv2阶段DFD(data flow diagram):
3.conv3阶段DFD(data flow diagram):
4.conv4阶段DFD(data flow diagram):
5.conv5阶段DFD(data flow diagram):
6.fc6阶段DFD(data flow diagram):
7.fc7阶段DFD(data flow diagram):
8.fc8阶段DFD(data flow diagram):
- AlexNet模型
- AlexNet模型
- AlexNet模型
- 论文笔记:AlexNet模型
- 深度学习之AlexNet模型
- 深度学习之Alexnet模型
- 深度学习网络模型AlexNet
- 图像分类模型AlexNet解读
- Caffe环境AlexNet模型训练
- 【AlexNet】模型训练与测试导读
- 【深度学习理论3】ALexNet模型的详解
- windows10下alexnet模型训练步骤
- windows 下alexnet模型的总结
- Lenet、Alexnet 、VGG、 GoogleNet、ResNet模型
- 深度学习AlexNet模型详细分析
- 神经网络模型之AlexNet的一些总结
- 深度学习之基础模型---AlexNet
- 神经网络模型之AlexNet的一些总结
- java反射学习笔记(3)---使用Class来获取方法、成员变量、构造函数信息
- 安卓 SurfaceView 和 View 的区别和使用方法
- 抽象工厂
- [BZOJ4397]Breed Counting-前缀和乱搞
- X86CPU对中断的硬件支持
- AlexNet模型
- 初识配置文件与反射
- LyX,所见即所得--利用Latex来排版的文件编辑软体
- 连接VirtualBox下的CentOS
- java代码在内存体现
- [知了堂学习笔记]_Java中session的学习
- hbase修复--数据无法写入到表中。
- 5.5
- 如何学习C语言