AlexNet 阅读

发布时间 2023-09-02 16:28:33作者: 代码改变头发

原文概述

Introduction

Story: 为了提高图像分类的性能,我们需要更大的数据集, 更大学习能力(learning capacity)的模型,并且模型需要有很好的泛化能力.
CNN符合要求: 其规模可以由层数和每层的宽度决定,并且CNN对自然图片有着强大而准确的假设.(? stanionarity of statistics and
locality of pixel dependencies.)

本文贡献: 训练了一个目前最大的CNN,使用了GPU加速,使用了防止过拟合的技术.

Dataset

介绍了ImageNet. 关键点: We did not pre process the images in any other way, except for subtractingthe mean activity
over the training set from each pixel. So we trained our network on the(centered) raw RGB values of the pixel.

AlexNet没有像当时主流的做法,先对图片做手工的特征处理,而是将特征处理和分类统一由CNN端到端(End-to-End)训练.

The architecture
ReLU

使用非饱和非线性函数(non-saturating nonlinearity)ReLU, 作者认为使用非饱和线性函数能加快模型的训练。然而后来的研究不认同
这个看法,但很多网络都会使用ReLU,因为其简单且有效(李沐)。

Overlapping pooling

作者发现由重叠的池化操作(步幅大小小于池化核大小)能让精度提高(with kernel size=3 and stride = 2 reduces the top-1 and top-5 error
rates by 0.4% and 0.3%).

(我用kernel size = stride = 2代替原网络训练,精度差别不大.)

Reducing overfitting
Data augmentation

第一种数据增强使用随机裁剪 + 随机水平翻转. 从\(256\times 256\)的图片随机裁剪为\(224\times224\). 作者认为通过这种方式将
数据扩大为原来的\((256 - 224)\times (256 - 224)\times 2 = 2048\)倍. 然而大部分图片信息都差不多,所以这样计算过于简单了.

此外作者使用PCA对图片颜色做了处理.(暂不了解)

Dropout

Dropout

Dropout操作让网络层中的神经原有\(p\)概率失活,不参与前向和反向传播. 作者认为Dropout操作相当于模型组合,并且减少了神经元之间的相关性.

后面的研究认为Dropout相当于L2正则项. (Why?)

Results
Qualitative evaluations

作者用视觉方式展示了CNN的特征学习能力,展示全连接层倒数第二层的特征向量欧式距离最近的图片,发现特征向量L2距离
接近的图片属于同一分类,且这些图片原始像素值的L2距离并不接近。这表面网络学习到了有意义的特征.

AlexNet 与 LeNet

...