AlexNet论文笔记

Title: ImageNet Classification with Deep Convolutional Neural Networks(2012)

Link: paper

1 Introduction

object recognition with CNN

task: object recognition

To learn about thousands of objects from millions of images, we need a model with a large learning capacity

为了从大规模图片中完成物品识别任务,需要一个学习模型。与标准的前馈神经网络相比,CNN的连接和参数更少,所以更容易训练。

一直以来,因为训练昂贵,CNN一直没有应用于大规模高像素的图片上。幸运地是,随着GPU训练能力的提升,2D卷积最优化的实现,以及大规模有标签图片数据集如ImageNet的出现(避免overfitting),使得CNN的应用得以实现。

contribution

  1. ILSVRC-2010 and ILSVRC-2012 两个比赛中,在 ImageNet 上训练了最大的CNN之一并取得了当时最好的结果。
  2. 实现了2D卷积的GPU版本,并且代码公开
  3. 这个网络有一些能提升性能和节约训练时间的新特性(第三节阐述)
  4. 运用了防止过拟合的有效技巧(第四节阐述)
  5. Our final network contains five convolutional and three fully-connected layers(移除任意卷积层效果都变差)

2 The Dataset

ImageNet is a dataset of over 15 million labeled high-resolution images belonging to roughly 22,000 categories.

超过15万张带标签图片, 大约 22000 个类别。

ImageNet Large-Scale Visual Recognition Challenge (ILSVRC) 是一个2020年开始的年度比赛。ILSVRC-2010的测试集标签available,所以实验主要用这个版本的数据。

ImageNet包含的图片分辨率不同,拿到图片首先要down-sample到256 * 256的尺寸。图片没有进行预处理,we trained our network on the (centered) raw RGB values of the pixels.

3 The Architecture

网络8 layers——5 convolutional and 3 fully-connected.

以下是一些网络的新特点( novel or unusual features)。

3.1 ReLU Nonlinearity

Deep convolutional neural networks with ReLUs train several times faster than their equivalents with tanh units.

标准的输出层激活函数是 tanh 或 sigmoid ,但实验证明用 Relu 训练更快。

3.2 Training on Multiple GPUs

GPU是用来加速训练的,一个GPU的内存有限,所以就用两个训练(therefore we spread the net across two GPUs)。

GPU的并行机制(parallelization scheme)可以让我们把网络的一半神经元放到一个GPU上。

The two-GPU net takes slightly less time to train than the one-GPU net.

3.3 Local Response Normalization

Relu有个特性,它不需要输入数据正则化(normalization)来防止饱和(saturating),但是我们发现局部的正则化(local normalization scheme)对泛化有帮助(generalization)。

3.4 Overlapping Pooling

传统的池化层,池化单元不重叠(overlap)。

但是经过实验发现,models with overlapping pooling更难出现过拟合,所以网络采取了overlapping pooling。

3.5 Overall Architecture

网络总体框架是 5 个卷积层和 3 个全连接层。

输出:最后一个 FC layer 输入到1000-way softmax来产生1000个lable。

中间层:

  • 第二四五个卷积层的核只与它们与前一层的kernel map连接,第三个卷积层的核与第二层的所有kernel map连接。
  • 全连接的神经元与前一层的所有神经元连接。
  • Max-pooling层跟在response-normalization层和第五个卷积层后。
  • ReLU应用于每个卷积和全连接层的输出上。

输入:224×224×3 input image
在这里插入图片描述

卷积层:

  • 步长为4
  • 第一层 96 kernels size 11×11×3
  • 第二层 256 kernels size 5 × 5 × 48
  • 第三层 384 kernels size 3 × 3 × 256
  • 第四层 384 kernels size 3 × 3 × 192
  • 第五层 256 kernels size 3 × 3 × 192

全连接层:

  • 每一层有 4096 个神经元

4 Reducing Overfitting

两个主要的减少过拟合的策略。

4.1 Data Augmentation

The easiest and most common method to reduce overfitting on image data is to artificially enlarge the dataset using label-preserving transformations.

通过数据增强来减少过拟合,也就是基于给定的图片经过一些变换得到更多的图像。

第一种方法包括图像翻译和水平翻转( image translations and horizontal reflections),第二种方法是改变训练图像RGB通道的强度。

4.2 Dropout

set to zero the output of each hidden neuron with probability 0.5.

把隐藏层的输出按0.5的概率置0,这些被“移除”(drop out)的神经元就不会参加前馈(pass forward)和后传(back propagation)。

所以每次来新的输入,网络结构都不同,但权重不变,这样神经元就不会依赖其他神经元,造成过拟合。

这种方法使得网络学到更鲁棒的特性(robust feature)

5 Details of learning

训练时的策略

  • learning strategy:
    SGD
    batch size = 128
    momentum = 0.9
    weight decay = 0.0005(可以减小训练误差)
  • initialization:
    每一层的权重由均值为0,标准差为0.01的高斯分布初始化
    第二四五个卷积层和全连接隐藏层的神经元偏置(bias)设为常量(constant)1,其余层的神经元偏置设为常量0(通过给ReLU提供正值来加速早起训练)
  • learning rate:
    We used an equal learning rate for all layers, which we adjusted manually throughout training.
    所有层的学习率相等,训练时手动调整

6 Results

数据集:
分别在 ILSVRC-2010,ILSVRC-2012两个比赛的数据集上,以及Fall 2009 version of ImageNet数据集上得到结果。

结果用错误率比较,分为 top1 和 top5 两种计算错误率的方式。

top1:预测的label取概率向量里面最大的那一个作为预测结果,如过你的预测结果中概率最大的那个分类正确,则预测正确。否则预测错误
top5:概率向量最大的前五名中,只要出现了正确概率即为预测正确。否则预测错误。

由此看来,top5 的容忍度高,得到的错误率会更低些。

7 Discussion

Our results show that a large, deep convolutional neural network is capable of achieving record-breaking results on a highly challenging dataset using purely supervised learning.

CNN在监督学习上取得了打破记录的成就,但是没有用无监督学习做预训练。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值