3.3 局部响应归一化(LRN)
在后续研究中被发现没啥用
3.4 Overlapping Pooling
- 层叠池化如下图:
- 进行了层叠池化,相比非层叠池化的model,更可以抵抗过拟合
3.5 总体的架构
- 共8个layer:前五个是卷积层,后三个是全连接层
- 最后一个全连接层作为input输入一个1000-维的softmax,得到一个1000维vector,即是其对应1000classes的分布
- 目标函数:log-损失函数
input规模计算
- 每一层feature map规模的计算:
- filter size = f*f
- stride = s
- padding size = p
- n_l = ([n_(l-1) + 2p - f] / s) + 1
4 对抗overfitting的方法
4.1 数据增强(data augmentation)
<方法1>
- 原数据规模:256*256,现在该图像上随意选取224*224的image patches作为训练集;
- 同时对数据进行水平的镜面翻转
- 意义:增加数据量,使用“造平移”、“造对称”的方法来抵抗过拟合。其意义是,一只狗的图像平移或者镜面对称后还是狗。。。
<方法2>
- 改变RGB三通道的intensity。具体改变方法:进行主成分分析(PCA),将找到的主要成分乘以一个乘数。这个乘数抽取自0均值、0.1标准差的高斯分布
4.2 Dropout
- 每个神经元都有一定的概率(AlexNet为0.5)被“遗弃”。
- 这样做的原因:每次训练,神经网络的结构都不一样,这导致神经网络会去学习更robust的、更可以满足“shared weights”这一特性的特征。
- AlexNet只在前两个FC层使用了dropout(当然,也就是这两层参数最多)
5. 学习详情
- learning rate decay:0.0005(LR初始值:0.01)
- batch size:128
- bias的初始化情况
6. 其他
- depth是对于AlexNet极其重要的因素
- 最后一个FC层输出的feature activation vector可以被视作CNN自己学到的视觉知识。用此可以去表示一张image。两个image的该vector的欧氏距离较小,则两张图片的确是较为近似