论文地址:ImageNet Classification with Deep Convolutional Neural Networkspapers.nips.cc
笔者读论文的学习笔记,本人水平有限,如有错误,请指出。
码字不易,如果您觉得写得不错,请点个赞,谢谢。
1、设备:两块GTX 580 3GB GPUs(并行,可互相读写)(作者经过实验发现:在单GPU上训练AlexNet近似一半的网络结构速度比双GPU训练整个网络慢)
2、数据集:ILSVRC-2010和ILSVRC-2012(ImageNet的子集,AlexNet是ILSVRC-2012冠军所用的模型),模型的指标有TOP-1 和TOP-5 error;数据预处理:由于图片不是所有尺寸都一样,先rescale到短边256,然后裁剪出中间一块256 x 256,之后对所有图片减均值(这里用的应该是下图中的image mean),除此之外没有预处理操作了不同的均值度量
3、开创性地使用了不饱和非线性单元:ReLU(Rectified Linear Units),训练速度提升很多(注意这里还提到了
这个函数,但不能提升训练速度,只能防止过拟合)
4、作者采用了Local Response Normalization,LRN,局部响应归一化:对于某个点,其归一化所选择的点为周围同一个位置不同特征图(feature map)的n个值(前n/2个,后n/2个,不足n/2的话到达0或N-1即可),然后再代入下面的公式(其中
,
,
,
为超参数):
LRN为什么有效:可以使不同的kernel产生的输出(即不同的feature map)相互竞争,这一步提高了较多正确率
5、Overlapping Pooling,带重叠的池化:一般采用的最大池化都是非重叠的,如卷积核大小2 x 2,步长2,AlexNet采用的卷积核大小3 x 3,步长2,根据作者的实验发现这样做效果更好,有效地防止了过拟合
6、整个网络结构:
注意第一层卷积核大小为11 x 11(卷积核过大,参数多,速度慢),后面的卷积核大小为5 x 5和3 x 3;第三层的feature map来源于上下两条分支;第一层、第二层、第五层后面都有LRN层和带重叠的最大池化层;ReLU在每一个卷积层和全连接层后面都有;最后是一个1000路的Softmax(因为共有1000个类别)
7、防止过拟合的方法:第一种是数据增强(Data Augmentation):从一张256 x 256的图片中提取五张224 x 224(分别是左上、左下、右上、右下和中间,这也就是为什么上面网络的输入是224 x 224),再加上这五张图片的水平翻转(一共十张图片),测试时同样这样操作(即TTA,test time augmentation),对这十张图片的预测值取均值即可;另一种数据增强方法是利用PCA给每个像素的RGB加上特征值乘上来自于一个均值0标准差0.1的高斯分布的随机值,这样做可以改变图片的光照强度和图片亮度,模型可以学习到这一点变得更强大(具体细节还有待研究)
8、Dropout,随机失活(这里用于两个全连接层):一种简便的实现模型集成的方法(如果要训练很多个模型太费时),每个输入的网络结构都不相同,这样可以使神经元不单独依赖某些特定的神经元,从而使网络被迫去学习更鲁棒的特征,同时神经元之间权重共享;当测试时,每个神经元的输出均乘以0.5(假设训练时随机失活的概率为0.5)。全连接层的参数占整个网络的绝大部分,所以当加入了dropout之后,迭代次数增大了一倍
9、训练细节:batch size = 128,momentum = 0.9,weight decay = 0.0005(L2正则化),网络参数更新公式如下:
这里需要注意的是:最后的梯度是一个batch,128个输入的梯度的平均值
网络初始化:参数初始化服从一个均值0,标准差0.01的高斯分布,第二、四、五卷积层和全连接层的bias初始化为1,其余初始化为0
学习率设置及调节:所有层的学习率都相同,不区分对待,初始值为0.01;手调学习率:当验证集的误差不下降时,学习率乘以原来的0.1,作者训练了90个epoch,共乘了三次0.1
10、作者在实际训练过程中还尝试了在ImageNet Fall 2011数据集上预训练过的相似的模型,然后在ILSVRC-2012上fine-tuning,这样做也提升了效果
11、作者还尝试了利用最后Softmax之前的4096维向量,即对于测试集,找到与其L2距离最近的训练集的图片,发现找到的图片正确率挺高,但4096维向量的L2距离计算太费时,所以考虑使用auto-encoder自动编码器把这个向量压缩,再进行比较
本文详述了AlexNet论文的关键点,包括使用双GPU加速训练,ReLU激活函数,局部响应归一化,带重叠的池化,网络结构,数据增强和Dropout等技术。AlexNet在ILSVRC-2012比赛中获胜,其设计对后续深度学习模型产生了深远影响。
4033

被折叠的 条评论
为什么被折叠?



