AlexNet -----深度学习
论文:ImageNet Classification with Deep Convolutional Neural Networks
ImageNet是个什么东西?
因为ImageNet是一个超过15 million的图像数据集,大约有22,000类。 详细介绍(内容存在部分引用)
ILSVRC是什么东西?
是一个比赛,全称是ImageNet Large-Scale Visual Recognition Challenge,平常说的ImageNet比赛指的是这个比赛。ILSVRC比赛介绍以及历届冠军
为什么要介绍?
因为我在学习目标检测的相关论文时发现有很多模型都是基于AlexNet或者VGG而改进的论文,存在一定的学习意义!
以上内容与AlexNet的关系?
AlexNet是在基于ImageNet的ILSVRC中获胜的最优论文,并且掀起了CNN的浪潮。有很多不同领域的论文都是基于AlexNet等预训练之后完成的。
下面介绍主要内容!
1.Relu的提出
Rule是被提出的**函数,函数公式如下:
函数图像如下:
不用simgoid和tanh作为**函数,而用ReLU作为**函数的原因是:加速收敛。因为sigmoid和tanh都是饱和(saturating)的。何为饱和?可理解为把这两者的函数曲线和导数曲线plot出来:他们的导数都是倒过来的碗状,也就是越接近目标,对应的导数越小。而ReLu的导数对于大于0的部分恒为1。于是ReLU确实可以在BP的时候能够将梯度很好地传到较前面的网络。
原文链接
2局部归一化
ReLU本来是不需要对输入进行标准化,但本文发现进行局部标准化能提高性能。
其中a代表在feature map中第i个卷积核(x,y)坐标经过了ReLU**函数的输出(i其实是双GPU共同训练的结果,),n表示相邻的几个卷积核。N表示这一层总的卷积核数量。k, n, α和β是hyper-parameters,他们的值是在验证集上实验得到的,其中k = 2,n = 5,α = 0.0001,β = 0.75。
3重叠池化
在AlexNet中使用的池化(Pooling)却是可重叠的,也就是说,在池化的时候,每次移动的步长小于池化的窗口长度。AlexNet池化的大小为3×3的正方形,每次池化移动步长为2,这样就会出现重叠。重叠池化可以避免过拟合。
4 降低过拟合( Reducing Overfitting)
数据增强(Data Augmentation)
-
方法1:生成平移图像和水平翻转图像。做法就是从256x256的图像中提取随机的224x224大小的块(以及它们的水平翻转),然后基于这些提取的块训练网络。softmax层对这十个块做出的预测取均值。
-
方法2:改变训练图像的RGB通道的强度。特别的,本文对整个ImageNet训练集的RGB像素值进行了PCA。对每一幅训练图像,本文加上多倍的主成分,倍数的值为相应的特征值乘以一个均值为0标准差为0.1的高斯函数产生的随机变量。
Dropout
- 它将每一个隐藏神经元的输出以50%的概率设为0。这些以这种方式被“踢出”的神经元不会参加前向传递,也不会加入反向传播。因此每次有输入时,神经网络采样一个不同的结构,但是所有这些结构都共享权值。这个技术降低了神经元之间复杂的联合适应性。 Dropout方法和数据增强一样,都是防止过拟合的。Dropout应该算是AlexNet中一个很大的创新
5总体分析
具体分析建议看:https://www.cnblogs.com/xiaoboge/p/10465534.html 因为我也不知道网络架构有什么好讲的重点应该是自己实现一遍就好了。
最后的Reference
https://www.cnblogs.com/wangguchangqing/p/10333370.html
https://blog.csdn.net/luoluonuoyasuolong/article/details/81750190