12.卷积神经网络CNN

视频链接

12.卷积神经网络CNN

Network的一个架构 Convolutional Neural Network,专门被用在影像

注:在下面的讨论中,我们都假设我们的模型输入的图片大小固定。

image-20210424164033940

模型的输入是一个图片,模型的目标是分类,输入是一个向量,向量的长度就决定了你现在的模型可以辨识出多少不同种类的东西。

接下来的问题是怎么把一个图像当做一个模型的输入呢?

对电脑来说一张图片是一个三维的Tensor(维度大于2的矩阵就是Tensor)

我们只要把图片变成一个向量,我们就可以把他当做是network的输入。

image-20210424183308046

每一个neuron 它跟输入的向量的每一个数值都会有一个weight,所有如果输入的向量长度是100 x 100 x 3,有1000个 neuron,那我们现在第一层的 weight 就有 3 x 107 个。

image-20210424190406081

随着参数的增加,我们可以增加模型的弹性,增加它的能力,但是我们也增加了Overfitting的风险。

如何避免使用这么多的参数?

对一个影像辨识的神经网络里面的神经而言,它要做的急速侦测现在这张图片里面有没有出现一些特别重要的 pattern。而这些 pattern 是代表了某种物件的。

image-20210424190753893

简化1 每个neuron 只需要看图片的一小部分即可

image-20210424190954094

在CNN中设定一个Receptive field 区域。每个neuron只需要关心自己receptive field里面发生的事情就好了。

image-20210424191206520

注:Receptive field 彼此之间可以重叠,两个neuron看到一个Receptive field也是可以的

image-20210424194634146

把你在最左上角的这个Receptive field往右移一点,然后制造一个新的范围。

这个移动的量叫做Stride(Hyper Parameter),往往设为1 或 2(使相邻的区域有高度的重合,防止错过pattern) 。

超出范围后,需要padding(填充信息)。

简化2:共享参数

image-20210424195006788

image-20210424194953063

总结:

image-20210424195219740

蓝色:Fully Connected 的Network 弹性最大

绿色:我们说不需要看整张图片,只需要看一小部分,所以有了Receptive Field 的概念,弹性变小。

橙色:参数共享,又更进一步限制了Network的弹性。

Receptive Field + Parameter Sharing 就是Convolutional Layer

有用 Convolutional Layer 的 network就叫Convolutional Neural Network。

简化3: pooling
pooling能有效减少运算量。
(一些CNN中可能不会用到pooling)

image-20210424202707872

image-20210424202757636
一个经典的影像辨识的network例子
image-20210424202811267

Flatten:把这个影像里面本来排成矩阵的样子拉直

李宏毅2021春机器学习笔记–13.自注意力机制(Self-attention)

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

与 或

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

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

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

打赏作者

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

抵扣说明:

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

余额充值