李宏毅ML-卷积神经网络CNN

李宏毅ML-卷积神经网络CNN

文章目录

  • 李宏毅ML-卷积神经网络CNN
    • Image Classification
    • Convolutional Layer
      • 1. Neural Version Story
        • Receptive Field
        • Parameter Sharing
      • 2. Filter Version Story
        • Filter
        • Parameter Sharing
      • 3. Summary of Two Versions
    • Pooling Layer
    • The Whole CNN
    • Drawback of CNN

Image Classification

李宏毅ML-卷积神经网络CNN_第1张图片
图像分类任务:把图片全部都 resize 成相同的尺寸喂入模型中,得到每一个类别的预测概论 y ′ y\prime y,然后使用交叉熵的方法,将 y ′ y\prime y 转换成 y ^ \widehat{y} y y ^ \widehat{y} y 中值为 1 的类别即为模型预测的类别。

Convolutional Layer

1. Neural Version Story

Receptive Field

类似于人的观察方式,CNN 中间层的一个神经元侦测一张图片中的某一 pattern,结合多个神经元所侦测的 pattern,可以判断出输入图片是鸟。
李宏毅ML-卷积神经网络CNN_第2张图片
图片中的一个 pattern 由一个 receptive field 侦测,一个 receptive field 可以由多个神经元守卫,神经元之间守卫的 receptive field 可以有相交部分。
李宏毅ML-卷积神经网络CNN_第3张图片

Parameter Sharing

一个 pattern 在不同的图片中会出现在不同 receptive field 中,所以让每个神经元之间共享参数。
李宏毅ML-卷积神经网络CNN_第4张图片
但负责守卫同一个 receptive field 的不同神经元之间不共享参数。
李宏毅ML-卷积神经网络CNN_第5张图片
尽管全连接层的弹性很好,但是图片的特征过多,全部学习会导致过拟合;
在引入了 Receptive Field 之后,神经元只需要对图片中某一个 pattern 进行处理;
参数共享使得同一个 pattern 出现在图片中的不同位置时得到的结果一致;
由此算作是一个 convolution layer,有 convolution layer 的 network 叫作 CNN.
虽然 CNN 的 model bias 会偏大,但其针对了“图片是由一个个 pattern 组成的”这个特点,减少计算量,不断增加限制,以使在 image classification 上取得了很好的效果。
李宏毅ML-卷积神经网络CNN_第6张图片

2. Filter Version Story

Filter

每一个 Filter 负责侦测某一 Pattern,使用 Filter 将原图片进行卷积操作,图片通过一个 Filter 得到一个 Feature Map,不断提取图像特征,最后得到图像的 Feature Maps.
李宏毅ML-卷积神经网络CNN_第7张图片

Parameter Sharing

每一个 Filter 的参数也是共享的。这也对应了每一个 Neuron 的参数也是共享的。
李宏毅ML-卷积神经网络CNN_第8张图片

3. Summary of Two Versions

有关 Convolutional Layer 的两个版本介绍,其实都是一个道理。只是将 Neuron 换成了 Filter。
李宏毅ML-卷积神经网络CNN_第9张图片

Pooling Layer

由于 GPU 的内存并不是很大,太大的计算量会使用模型不 work,所以图片通过池化层后,对特征图进行稀疏处理,减少数据运算量。
李宏毅ML-卷积神经网络CNN_第10张图片

The Whole CNN

李宏毅ML-卷积神经网络CNN_第11张图片

Drawback of CNN

CNN 不适用于预测放大/缩小和旋转过的图片。因此,我们在制作数据集时,需要做 data augmentation.
李宏毅ML-卷积神经网络CNN_第12张图片

你可能感兴趣的:(机器学习,深度学习,cnn,深度学习,神经网络)