• 2.卷积神经网络(CNN)


    一句话引入: 如果我们要做图像识别,用的是一个200x200的图片,那么BP神经网络的输入层就需要40000个神经元,因为是全连接,所以整个BP神经网络的参数量就是160亿个,显然不能这样来训练网络,所以我们就需要在输入层之前,加入一个处理图片的操作,而这个操作的目的,
    1.为了把图片的特征提取出来,减去没有必要的噪音。
    2.降低矩阵的参数数量。

    然后再输入到BP神经网络中去训练权重和偏置量。

    1.感受野:

    人的眼睛看见东西,不是一个神经元就能做到的,而是很多个神经元,每个神经元只负责自己的那块局部信息,而很多个神经元组合而成,就成了我们可以看见的图像。
    在这里插入图片描述

    2.卷积运算:

    卷积运算,是用来提取图片中的特征的,一次卷积运算的过程,就是使用一个卷积核,对整个图像进行一次运算,不同的卷积核,可以提取出来不同的特征,比如直线,曲线。卷积运算如下图:
    在这里插入图片描述
    这实际上就是两个矩阵相乘求和的结果。卷积核会根据步长 来顺着对图片矩阵进行一次卷积运算,假如步长为1,那么下一步就如下图:
    在这里插入图片描述
    其中不同的卷积核,可以提取出不同的图片特征,可以理解为,有些卷积核是用来提取猪耳朵,有些来提取猪鼻子。
    Padding: 所谓的padding操作,实际上就是在图片边缘,上下左右补0,目的就是为了可以获取图片的边缘特征。
    在这里插入图片描述

    3.卷积核和感受野

    不同的卷积核,就像不同的视觉神经细胞,不同的卷积核提取图片中不同的特征,而当这些特征组合在一起的时候,就成了一幅图(当然是特征图)。

    4.多通道卷积:

    因为图片是彩色的,所以我们一般会对RGB三个通道,都做卷积运算,然后在合并这三个矩阵:
    在这里插入图片描述

    4.池化:

    在进行完卷积运算后,需要对特征矩阵进行池化操作,池化就是把特征矩阵变小!
    比较常见的池化操作如下:
    在这里插入图片描述

    5. CNN

    一个完整的CNN如下
    在这里插入图片描述
    这也是LeNet网络的结构,两个卷积和池化,最后一个池化中的多个特征矩阵,拉成一个一维的矩阵,作为BP神经网络输入,如下图。
    在这里插入图片描述
    其中隐含层使用ReLu,输出层使用的是softMax,这样输出值就是标签和概率。
    参考:深度学习及应用-赵卫亮,神经网络与深度学习-牟奇

  • 相关阅读:
    QT day1
    技术人创业:失败不是成功,但反思是
    Arm Neoverse 路线图再添新品,基于四项关键原则打造
    Vue3快速入门
    华为AGC-远程配置类AB测试实战指导
    谨慎使用多线程中的 fork !!!!
    JVM的三种常见GC:Minor GC、Major GC与Full GC
    “菜鸟”程序员逆袭:独立开发iOS音乐应用,年底参加Amazon DeepRacer 全球锦标赛
    Java基于J2EE的流浪动物收容与领养管理系统
    YourKit Java Profiler 2022.9.X Crack
  • 原文地址:https://blog.csdn.net/weixin_42596778/article/details/133965490