cs231n:第三讲 CNN的初体验

转载请注明:http://blog.csdn.net/c602273091/article/details/54288285

大纲

这里写图片描述
设计参数更新、学习率设置、dropout、梯度检测、模型集成等等方面。

参数更新

在计算梯度下降的时候,我们采用的是如下图所示的算子进行更新。
这里写图片描述

这种方法是普通的SGD梯度下降方法,在优化的过程中,它会发生震荡。

Momentum Update

这里写图片描述
这里的v初始化为0,mu取0.5,0.9,0.99等等。

这里写图片描述

Nesterov Momentum update(NAG)

这里写图片描述

vt1 考虑到了梯度计算里面。

为了让公式更加好看,然后就转化成下面的形式:
这里写图片描述

AdaGrad update

这里写图片描述

RMSProp update

这里写图片描述

Adam update

把上面两种结合起来。
这里写图片描述

这里写图片描述

L-BFGS

full-batch的训练。使用二阶泰勒展开近似得到更新的式子。

这里写图片描述

regularization(dropout)

在forward pass的过程中,随机设置神经元的权重为0.
这里写图片描述

dropout以后,计算得到的score需要做一个调整。
两种调整的方法:
这里写图片描述

这里写图片描述

Convolution

这里写图片描述

这里写图片描述
每个kenel的size是5x5,那么32x32,stride为1之后的map就是(32-5)/1+1。有的时候为了使size保持不变,会使用padding的技巧。

为什么把这个叫做卷积呢?是因为这里计算wx的时候就是用来图像上的卷积。

这里写图片描述

这里写图片描述
计算参数的个数的时候,这里可以看到一个区域采用的是一样的权值,这就是所谓的权值共享。所以有10个kernel的时候,就有(5x5x3+1)x10个参数。

对卷基层各个参数进行总结:
这里写图片描述
这里有一个叫做NiN的东西,就是kernel的size是1x1。

Pooling

池化就是做map的数据压缩。有max pooling、mean pooling等等。

可以看这个demo:
http://cs.stanford.edu/people/karpathy/convnetjs/demo/cifar10.html

各个神经网络介绍

这里写图片描述
这个经典的神经网络应用于识别数字。

AlexNet:在12年ImageNet比赛上出尽风头的。
这里写图片描述

这里写图片描述

ZF net和alxe基本一样,除了map的数目不同。
这里写图片描述

VGGNet:vgg-16是目前最好的模型之一,当然没有resNet好。
这里写图片描述

GoogleNet:增加了一个perception modul。
这里写图片描述

ResNet: 在前向网络的时候,增加了残差。
这里写图片描述

这里写图片描述

PS:截图来自于Standford cs231n的ppt。
网址是:http://cs231n.stanford.edu/syllabus.html

不得不说,这门课讲得太好了~ 完美~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值