经典模型——AlexNet

Introduction

为了识别更多的图像,我们需要一个有强大学习能力的模型。CNN是一个很好的选择。随着其深度和宽度的增加,其性能也有很大的提升。同时,相比于前馈神经网络,CNN有着更少的连接和参数。

随着算力的提升,CNN有了用武之地,这也是为什么做CNN的原因。

本文基于CNN设计了一个新的网络,包含5个卷积层和3个全连接层。同时,为了避免过拟合,用了一些特别的技术。

The Dataset

直接裁剪 256 × 256 256\times 256 256×256大小的图像,作为输入。

里程碑:直接在raw image上进行训练。

The Architecture

ReLU Nonlinearity

tanh和sigmoid存在梯度饱和的问题,ReLU则没有这个问题,所以后者能帮助模型收敛得更快。

ReLU也不见得有多好,就是简单且好用。

Local Response Normalization(LRN)

ReLU不需要对于输入进行标准化来避免饱和,但还是做一个Normalization的话,效果还是有提升的。

这是因为ReLU没有一个值域区间,所以要对结果进行归一化。

对局部神经元的活动创建竞争机制,使得其中响应比较大的值变得更大,抑制反馈比较小的神经元。

(该部分没什么意义)

Overlapping Pooling

对传统的Pooling做了一个改动。通常步长是和池化尺寸一致的,这里让步长小于尺寸,使得池化层的输出之间会有重叠,提升了特征的丰富性。

Overall Architecture

请添加图片描述
图里面包含了两个AlexNet,在第三个卷积的时候会相互把数据耦合一下。

请添加图片描述

每个GPU训练一半的通道。

随着网络深度的增加,将空间信息慢慢压缩,此时语义信息慢慢增加。

全连接层部分也会把数据耦合一下,最后拼接为4096维度的向量,再压缩为1000维度,代表为1000个类别的置信度。

只是为了能够训练,所以分成了两部分进行训练,实际上是没有必要的。

Reduce Overfitting

Data Augmentation

  1. 从256x256中扣一块224x224大小的图像(他说有2048种扣法,但实际上都差不多);
  2. 把RGB的通道上做一些改变,用了PCA的方法。

Dropout

随机将隐藏层的一些输出变成0,这个概率为50%。

在这篇文章中认为这是每次训练得到的一个不同的模型然后做融合。但实际上并不是这样。

在之后的工作中指出,Dropout在线性模型上近似于一个L2正则项。

本文中把Dropout放在了两个全连接层上面。

现在的CNN中丢掉了全连接层,所以Dropout使用的不是很多,但实际上,其在RNN、Attention这样的全连接结构中还是很常见、很好用的。

Details of learning

  1. SGD;
  2. weight decay(手动确定学习率下降时的epoch,现在一般是先慢慢增加再慢慢减少);
  3. momentum(避免优化的表面不那么平滑而掉到一个坑里去);
  4. 标准差为0.01、均值为0的高斯分布做权重的初始化;偏置初始化为1;

Results

文章的最后展示了两个实验的效果。第一个图像是展示部分图片与其分类结果。第二个图片是将AlexNet最后得到的特征向量拿出来,将相似的图像归类到一起。第二个实验发现归类的结果是很不错的,这说明了AlexNet得到的特征学习得很好

总结

AlexNet的贡献在于:

  1. 提出了AlexNet;
  2. ReLU、LRN、Pooling;
  3. 数据增广(2种);
  4. 训练细节(4个)
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

右边是我女神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值