目标检测经典模型学习笔记(一) AlexNet

一、网络结构

有5个卷积层和3个全连接层,第三层卷积和全连接层是全连接,其他卷积层只连接本GPU的上一层输出,第一、层卷积层后面跟着池化层,最后一层是1000通道的softmax层。每一层的后面都跟着ReLu层
网络有 60 million parameters and 650,000 neurons

图片输入是256*256,首先把短边resize到256,然后从图片中部取出256*256的区块(we first rescaled the image such that the shorter side was of length 256, and then cropped out the central 256×256 patch from the resulting image);对于每张图片,减去mean activity

二、重要的贡献:
1. ReLu函数
在此之前的标准函数是tanh和sigmoid函数,当采用梯度下降法时,Relu比前两者收敛速度要快

上图是一个四层的卷积网络,错误率达到25%时,ReLu和tanh所用的循环次数,图中实线是采用ReLu函数,虚线是tanh,可以看到,ReLu比tanh要快很多倍,这也说明了很难再大型网络中采用tanh函数(因为收敛速度太慢了)。
2. 在多GPU上训练
由于机器内存的原因,讲训练模型拆分到两个GPU上进行,每个GPU上放置一半的卷积核,而两个GPU只在部分层进行通信,比如Layer3读取两个GPU中Layer2的输出,而Layer4只读取各自GPU的layer3的输出
3. 局部响应归一化(Local Response Normalization)
据其他资料显示,这种方法对于识别效果并没有多大提高,反而加大的计算量,被抛弃了,所以我也就没读这一段
4.重叠池化(Overlapping Pooling)
传统的CNN池化是不重叠的,也就是kernal的size=stride(刚刚知道,我一直以为池化都是重叠的),本文引入了重叠池化,当s = 2 and z = 3时,Top1和Top5的错误率分别比s = 2, z = 2时降低了0.4% and 0.3%。
这里解释一下什么叫Top5错误率,imagenet图像通常有1000个可能的类别,对每幅图像你可以猜5次结果(即同时预测5个类别标签),当其中有任何一次预测对了,结果都算对,当5次全都错了的时候,才算预测错误,这时候的分类错误率就叫top5错误率

三、关于如何克服过拟合
1. 数据增强(Data Augmentation)
数据加强是采用CPU上在内存中进行,而模型的训练时在GPU进行,所以二者可以并行

第一种方法是图片随机裁剪。从256*256的图片中随机抽取出224*224的图片作为输入,通过这种方法使得数据扩大了2048(32*32*2,其中32=256-224)倍,否则没有这么大数据量的话,必须要减小网络规模才能防止过拟合。在测试的时候不是随机裁剪,分别从每张图的原图和翻转图的四个角以及中心取出十张图(2*(4+1))输送给softmax函数,然后对结果取平均作为最后的结果

第二种方法是改变图像的RGB值,为图像的RGB值增加均值为0,方差为0.1的高斯白噪声。用的方法为PCA (Principal Component Analysis),具体运算法则没有看明白

2. dropput
对于前两个全连接层使用。在训练的过程中,每种神经元以0.5的概率将权重置位0,该神经元不参与运算,也不参与反向传播计算梯度。所以每一次输入,网络结构都是不一样的,但是参数是相同的,这种方法减少了神经元之间的耦合。但是在训练的时候,不用dropout,但是会对输出乘以0.5,否则测试的输出会比训练时输出的值大两倍,因为神经元多了。

四、训练参数

采用随机梯度下降法,批量值为128,动量0.9,衰减率0.0005

对参数w使用了衰减,参数初始化时,采用均值为0,标准方差为0.01的高斯分布

对于第2、4、5卷积层和全连接的隐层,讲bias置位1,因为这样会使得输出为正,正好处于ReLu函数的正半部分,由于这部分梯度比较大,所以加快了训练速度

对于每层的学习率采用相同的初始值0.01,然后在训练过程中手动调整,当验证错误率不再下降的时候,把学习率除以10

最终取得了当时最好的效果

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值