吴恩达深度学习课程笔记(四):卷积神经网络2 实例探究

吴恩达深度学习课程笔记(四):卷积神经网络2 实例探究

2.1 为什么要进行实例探究

学以致用。

学习经典CNN后,会对如何构建有效的CNN更有感觉。

  • 经典网络:
    • LeNet-5
    • AlexNet
    • VGG
  • ResNet
  • Inception

2.2 经典网络

LeNet-5

  • 针对灰度图;
  • 现代版本使用Relu;
  • 现代版本最后是softmax层;
  • 建议只读原论文的第二部分和第三部分,因为大部分都已过时,但网络结构仍有参考价值,即conv - pool - conv - pool - FC - FC 。

AlexNet

AlexNet与LeNet在很多地方很相似,但是要大很多。LeNet-5大概6万个参数。而AlexNet大概6000万个参数。

AlexNet(比LeNet-5)表现出色的原因:

  • 当用于训练图像和数据集的时候,AlexNet能够处理非常相似的基本构造模块。这些模块往往包含着大量的隐藏单元或数据。
  • 使用Relu激活函数。

看论文可以绕过的点:

  • 在写AlexNet论文的时候,GPU速度还很慢。所以采用了很复杂的方法在两个GPU上训练。
  • 所使用的局部响应归一化层(LRN层:local response normalization)后续研究发现起不到作用,也没人用,可以不看。

该论文是深度学习进入计算机视觉领域的开端。从这篇论文开始,计算机视觉的研究者开始重视深度学习,最后使得深度学习在其他领域也发扬光大。

VGG-16

一种没有很多超参数,只需要专注于构建卷积层的简单网络。VGG-16简化了神经网络结构。

VGG-16,即有16层网络的VGG,有13个CONV和3个FC。一共1.38亿个参数。

虽然是个大网络,但结构简单,规整,过滤器数量变化存在规律(64 - 128 - 256 - 512 - 512)。

缺点是:需要训练的特征数量非常巨大。

2.3 残差网络(ResNets:Residual Networks)

非常非常深的网络存在梯度消失和梯度爆炸问题,因此很难训练。

跳远连接(skip connections)可以从某一网络层获取激活,然后迅速反馈给另外一层,甚至是神经网络的更深层。

利用跳远连接构建能够训练深度网络的ResNets。

残差块(Residual block)

跳远连接(skip connections),又叫捷径(short cut),用来构建残差块,而残差块可以训练更深的神经网络。

a[l] a [ l ] 除了主路以外,直接在 a[l+2] a [ l + 2 ] 的激活函数前输入。

也就是 a[l+2]=g(z[l+2]+a[l]) a [ l + 2 ] = g ( z [ l + 2 ] + a [ l ] )

构成一个残差块。

ResNet网络就是由很多这样的残差块构成。

残差网络 (Residual Network)


上图,普通网络(plain network)使用跳远连接,构成5个残差块,生成了一个残差网络。

随着网络层数的增加,理论上训练误差应该越来越小;但在普通网络上却不是这样;而残差网络可以做到。

2.4 残差网络为什么有用?

深度网络存在退化问题,即随着深度的加深,训练误差反而加大。

给一个普通网络加入残差块,如图所示。

整个网络使用Relu激活函数,那么,所有的激活值a>=0。

如果使用 L2 L 2 正则化或者权重衰减,会压缩 w[l+2] w [ l + 2 ] 的值。

如果对 b b 使用权重衰减,也可以达到相同效果。

如果

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值