卷积神经网络

整体架构#

输入层、卷积层、池化层、全连接层

卷积神经网络——深度学习第九章 - 知乎

卷积做了一件什么事?#

我们有一张64*64的图像数据,首先是全连接神经网络(如下图所示),输入数据的特征是1×4096的特征向量,每增加一个中间层的神经元,就会增加(4096+1)个参数,神经元的个数增加到10个,则参数个数会增加到525706。

image-20241211142019881

针对全连接神经网络参数量级过大,我们引入了卷积神经网络(专门针对图像数据)

我们对全校学生对校长的满意度进行调查,这里假设全校有1024名同学,共分为16个班级,

  • 全连接网络做的事情是,我们询问全校每一位同学对校长满不满意,共询问1024次,最终得出结果;
  • 卷积神经网络做的事情是,我们分班级询问对校长满不满意,即询问16次,得到最终结果。也就是说我们将一个班级的64名同学汇总成一条结果,并反馈出来。

假设有一张图像(image)它的维度是32×32×3,经过一个维度为5×5×3的滤波器,得到什么?如下图所示:

image-20241211144741967

特征图个数#

每一个滤波器所提取的特征侧重点是不一样的!!!

多个滤波器针对原始特征,所提取的特征更加丰富!!!

image-20241211145711141

注意:这里除了滤波器以外,还对应每一个滤波器存在着一个偏置项b_i(i=1,2,3,4),对学习到的特征做微调。

卷积层涉及的参数#

  • 滑动窗口步长(s)

    image-20241211152629607

  • 卷积核的大小(滤波器的大小)

    • 小的卷积核对于提取特征来说更加的细致,侧重于捕捉局部特征
    • 大的卷积核侧重于捕捉全局特征
  • 边缘填充(p)

    假设步长为1时,可能为重中间的特征像素点会被不断地提取,而在左上,左下,右上,右下的的特征像素点往往只被提取到1~2次左右(即相对中间的特征像素点被提取的次数相对较少)。这样会导致学到的特征”偏科“,所用我们在其边缘填充一圈零元素,这样会使得左上,左下,右上,右下的的特征像素点多提取几次,并且填充零,不会造成学到的特征产生偏差。

    image-20241211152733954

  • 卷积核的个数——影响特征图的大小

卷积结果计算公式#

  • 长度

    image-20241211153023004

  • 宽度

    image-20241211153120283

  • 参数说明

    W1、H1表示输入特征的宽度和长度,W2、H2表示输出特征的宽度和长度;F表示卷积核长和宽的大小;S表示滑动窗口步长;P表示边缘填充(加几圈零)

卷积参数共享#

数据依旧是32×32×3的图像,继续用10个5×5×3的滤波器来进行卷积操作,所需的权重参数有多少个呢?

5×5×3 = 75,表示每一个卷积核只需要75个参数,此时有10个不同的卷积核,就需要10×75 = 750个卷积核参数,不要忘记还有b参数,每个卷积核都有一个对应的偏置参数,最终只需要750+10=760个权重参数。

池化层 - MAX Pooling#

在每一个2×2的池化卷积核里面选择最大的数-作为该范围的代表性特征(找到最能打的那个)

image-20241211154419747

拓展#

  • 计算卷积神经网络的层数

    请问下面这张图里卷积神经网络的层数

    答案是:7层

    如何计算的呢?

    我们约定熟成的说,带有参数的,如conv,FC 记作一层,剩下就是数卷积神经网络中conv,FC 的个数

    • conv:即卷积层,它的参数包括卷积核(滤波器)和偏置项
    • FC:即全连接层,它的参数包括权重矩阵和偏置项

    image-20241211154723522

经典网络-Resnet -至少不比原来差#

image-20241211155524704

posted @   一只小小小飞猪  阅读(80)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示
主题色彩