AlexNet
论文:
ImageNet Classification with Deep Convolutional Neural Networks
——By Alex Krizhevsky, Ilya Sutskever and Geoffrey E. Hinton
http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf
过去的观点:过拟合代表深度学习的一个派别,深度学习说可以用很大的模型,通过正则使得不要过拟合
现在的观点:正则并不重要,神经网络结构更重要,使得你在没有很好的正则情况下也一样能训练出来
文章亮点
ReLu正则化:
在过去有很好的作用,在现在的技术发展起来后,其实选哪个激活函数都一样,relu更简单。
GPU训练:
GPU训练速度快。
Local Response Normalization:
Overlapping :
Overall Architecture:
输入是 224 × 224 × 3 224\times224\times3224×224×3 的图片,然后是5个卷积层,接着是3个全连接层,最后一层是softmax层,输出为1000个类别标签的预测概率分布。使用了两个GPU进行训练(现在训练网络一般可以不同分割模型),将网络模型切成两半分别在两个GPU中进行训练。第2个、第4个和第5个卷积层的输入为同一GPU上之前一层卷积层的输出,而第3个卷积层的输入为两个GPU上的第2个卷积层输出。每个全连接层的输入都为前一层网络的全部输出。可以看到,随着网络深度的增加,卷积层中图像大小在减少,而深度在不断增加。
如何避免过拟合
1.数据增强(Data Augmentation)
1)人工放大图片,随机crop 224*224。
2)通过PCA改变rgb
2.Dropout
当时以为是ensemble的技巧,实际上等价于一个L2正则项。
模型训练
使用SGD来训练,当时调参难调(当时常用的L-BFGS等调参更容易些)
weight decay很重要、
0.01方差的高斯分布来初始化权重,全连接层初始化为1。(虽然全初始化为0更常见)
使用了学习率衰减(每过一段时间除以10),现在的学习率使用warmup策略。
结果
奇怪的现象:
GPU1学习到的东西和颜色无关,而GPU2学习到的东西和颜色有关。