CNN学习笔记之AlexNet

一、简介:

2012届图像识别大赛的冠军,top-5误差仅为15.3%,主要特点如下:

  • 参数更多:60M个;
  • 网络更大:650000个神经元;
  • 网络构成:5个卷积层(有些层后添加了池化层)+ 3个全连接层(最后一层是1000维的softmax层);
  • 使用GPU提升训练速度;
  • 使用了ReLU激活函数,改善梯度消失,提升训练速度;
  • 使用dropout减少过拟合;

二、网络结构:

以上是原文的网络结构,作者在写这篇论文的时候,GPU的处理速度还比较慢,所以AlexNet 采用了在两个 GPU 上进行训练的方法。大致原理是:这些层分别拆分到两个不同的GPU 上,同时还专门有一个方法用于两个GPU 进行交流。

这里用一张227×227×3的图片作为输入,实际上原文中使用的图像是224×224×3,其实227×227这个尺寸更好一些(我的理解是卷积后图片尺寸是整数的缘故)。

三、技术特点: 

1、使用ReLU激活函数

ReLU激活函数的优点:

  1. 程序实现时ReLU是一个 if-else 语句,而 sigmoid 函数需要进行浮点四则运算,在实践中,使用ReLU激活函数的神经网络通常会比使用 sigmoid 或者 tanh 激活函数学习的更快;
  2. sigmoid 和 tanh 函数的导数在正负饱和区的梯度都会接近于0,而ReLU函数大于 0 部分都为常数,不会产生梯度消失。

2、Local Response Normalization(局部响应归一化)

进行局部响应归一化的动机是,对于这张 13×13 的图像中的每个位置来说,我们可能并不需要太多的高激活神经元。但是后来,很多研究者发现 LRN 起不到太大作用。

3、Overlapping Pooling

使用池化层可以缩减模型的大小。作者在使用重叠窗pooling进行训练时发现更不容易出现过拟合现象。

4、Data Augmentation

使用数据增广可以对抗过拟合,有pad、水平/垂直翻转、随机裁剪、彩色转换等多种方法。

5、Dropout

使用丢弃法可以对抗过拟合。在训练时使用dropout,每次训练时的模型结构都不一样,避免过度依赖某一些神经元而导致过拟合。作者在文中提到dropout减少了过拟合,也使收敛需要的迭代次数增加一倍。

四、讨论: 

  1. 作者提到减少一个卷积层,网络的精度会下降,网络深度很重要。那么增加一层或多层会怎么样呢?
  2. 作者谈到没有使用预训练模型,但是非常推荐使用预训练模型。预训练模型可以可供更好的初始化参数,加快训练。

 

参考了吴恩达老师的deeplearning.ai。 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值