Alex Krizhevsky在ImageNet大赛中获胜的代码的说明文章
1. 整体架构
Overall Architecture
//概括:5个卷积层+3个全连接层+1个softmax层。在第1,2,5个卷积层后加了一个LRN和Max Pooling。
每层的尺寸演算
2. 创新点
2.1 ReLU
//概括:不用simgoid和tanh作为激活函数,而用ReLU作为激活函数的原因是:加速收敛。
因为sigmoid和tanh都是饱和(saturating)的(他们的导数都是倒过来的碗状,i.e.,越接近目标,对应的导数越小)。而ReLu的导数对于大于0的部分恒为1。于是ReLU确实可以在BP的时候能够将梯度很好地传到较前面的网络。
2.2 Local Responce Normalization
//概括:本质上,这个层也是为了防止激活函数的饱和的。
个人理解原理是通过正则化让激活函数的输入靠近“碗”的中间,从而获得比较大的导数值。
所以从功能上说,跟ReLU是重复的。
不过作者说,从试验结果看,LRN操作可以提高网络的泛化能力,将错误率降低了大约1个百分点。
2.3 Reducing Overfitting