(草履虫级别的精讲)卷积神经网络的基本组成结构

这篇具有很好参考价值的文章主要介绍了(草履虫级别的精讲)卷积神经网络的基本组成结构。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言

卷积神经网络的基本组成结构

一.卷积层

1.标准卷积层

2.形变卷积

3.空洞卷积

二.池化层

1.最大池化层

2.平均池化层

三.激活函数

1.Sigmoid

2.Tanh

3.ReLU

4.Leaky_ReLU

 5.Mish

四.损失函数

1.回归损失函数

2.分类损失函数

交叉熵损失函数(CrossEntropy Loss)

         平衡交叉熵损失函数(Balanced Cross Entropy)

         Focal Loss


前言

第一个典型的卷积神经网络(Convolutional Neural Network, 以下简称CNN)是由LeCun等人于1998年提出LeNet网络,是一种用于手写体字符识别的非常高效的卷积神经网络,是CNN的开山之作;但真正让CNN大放异彩的是AlexNet网络,在2012年在全球知名的图像识别竞赛 ILSVRC 中,AlexNet 横空出世,直接将错误率降低了近 10 个百分点,这是之前所有机器学习模型无法做到的,由此,开启了CNN席卷了各大视觉领域的狂热之旅,CNN也正式成为AI领域最重要的符号,成为从事AI人员竞相学习对象,随着CNN的蓬勃发展,众多网络模型也相继提出。

(草履虫级别的精讲)卷积神经网络的基本组成结构

卷积神经网络的基本组成结构

近年来,随着人们对CNN的进一步研究,CNN模型结构日趋完善和统一,基本包括以下几个组成部分:卷积层、池化层、激活函数和损失函数,下面一一介绍。

一.卷积层

1.标准卷积层

卷积层是卷积神经网络的核心层,采用一组卷积核和输入图像进行卷积运算,完成图像的特征提取,图像经过卷积层计算后输出的结果称为输出特征图,特征图通道数与该卷积层使用的卷积核数量相同。

(草履虫级别的精讲)卷积神经网络的基本组成结构

输入图像:上图的绿色矩阵,计算机中用图像的像素矩阵表达

卷积核:上图的黄色矩阵,是训练过程要训练的权重参数,矩阵中的数值可以随机初始化,矩阵的大小也可以自定义,如2×2,3×3,5×5等

输出特征层:上图的紫色部分,是输入图像与卷积层卷积之后的输出结果

以下图表示一个4×4大小的卷积核与一个5×5大小的输入特征图的卷积计算过程

第一步:

(草履虫级别的精讲)卷积神经网络的基本组成结构

第二步:

(草履虫级别的精讲)卷积神经网络的基本组成结构

 第三步:

(草履虫级别的精讲)卷积神经网络的基本组成结构

下面是标准卷积的动态计算过程 

                      (草履虫级别的精讲)卷积神经网络的基本组成结构

下面是标准卷积的立体特征图的计算过程(实际网络训练的真实过程)

(草履虫级别的精讲)卷积神经网络的基本组成结构

2.形变卷积

定义:形变卷积的是相对于标准卷积的概念而来,在标准卷积操作中卷积核作用区域始终为中心点周围标准卷积核大小的矩形区域内,为了削弱这个限制,研究员们对卷积核中每个采样点的位置都增加了一个偏移的变量,通过这些变量,卷积核就可以在当前位置附近随意的采样,而不再局限于之前的规则格点,这样扩展后的卷积操作被称为可变形卷积。

(草履虫级别的精讲)卷积神经网络的基本组成结构

                    图(a) 为标准卷积,图(b)(c)(d)为形变卷积,可见在采样点附近增加了偏移变量

作用:可变形卷积核的大小和位置可以根据当前需要识别的图像内容进行动态调整,其直观效果就是不同位置的卷积核采样点位置会根据图像内容发生自适应的变化,从而适应不同物体的形状、大小等几何形变。

(草履虫级别的精讲)卷积神经网络的基本组成结构

                                         标准卷积和形变卷积卷积计算效果图对比 

3.空洞卷积

定义:所谓空洞卷积就是在卷积核的元素之间添加间隔(空洞),是针对图像语义分割问题中下采样会降低图像分辨率、丢失信息而提出的一种卷积思路。

(草履虫级别的精讲)卷积神经网络的基本组成结构

作用:要想获取较大感受野需要用较大的卷积核或池化时采用较大的stride,对于前者计算量太大,后者会损失分辨率。然而想要对图片提取的特征具有较大的感受野,并且又想让特征图的分辨率不下降太多(分辨率损失太多会丢失许多关于图像边界的细节信息),利用标准卷积是无论如何也不能兼顾的,因为二者是矛盾的。而空洞卷积就是用来解决这个矛盾的,即可让其获得较大感受野,又可让分辨率不损失太多,如下图:

(草履虫级别的精讲)卷积神经网络的基本组成结构

空洞卷积中有个参数为rate,是用来控制卷积核元素之间间隔的大小

图一是rate = 1 的空洞卷积,卷积核的感受野为3×3,其实就是标准卷积

图二是rate = 2,padding = 2的空洞卷积,卷积核的感受野为7×7

图三是rate = 4,padding = 4的空洞卷积,卷积核的感受野为15×15

二.池化层

定义:池化层是一种子采样层,通常放置在卷积层之后,本质是对输入图像进行下采样。 池化层会将尺寸较大的特征图缩放成尺寸较小的特征图,使高层特征图获得更大的感受野。经过池化层输出的特征图仅保留输入特征图的主要的特征,降低了后续功能层运算的复杂性,因此池化层在一定程度可避免出现过拟合现象。

池化层主要包括最大池化层(Max pooling)和平均池化层(Average pooling)

1.最大池化层

(草履虫级别的精讲)卷积神经网络的基本组成结构

最大池化层的计算是获取滑动区域内数字的最大值作为输出结果 

最大池化层能很好的保留纹理特征,一般现在都用最大池化层而很少用平均池化层

2.平均池化层

(草履虫级别的精讲)卷积神经网络的基本组成结构

平均池化层的计算是取滑动区域内数字的平均值作为输出结果

平均池化层能很好的保留背景,但容易使得图片变模糊

三.激活函数

在神经网络训练过程中,特征之间的关系都是线性的,但现实世界是复杂的,仅凭这种简单的线性的关系是不能充分表达的,所以需要在各层网络之间添加一些非线性的成分,激活函数就起着这份作用

若想绘制各种激活函数可以查看我上一篇文章,有详细介绍,如下:

https://blog.csdn.net/mazhicheng123456/article/details/124780003?spm=1001.2014.3001.5501https://blog.csdn.net/mazhicheng123456/article/details/124780003?spm=1001.2014.3001.5501

1.Sigmoid

公式:   (草履虫级别的精讲)卷积神经网络的基本组成结构

(草履虫级别的精讲)卷积神经网络的基本组成结构

 优点:函数连续光滑、处处可导、取值在0-1之间,可用在概率分布

 缺点:取值在无穷时导数为零,参数得不到更新,导致梯度消失,这对于训练网络参数反向传播                时是致命的

2.Tanh

公式:  (草履虫级别的精讲)卷积神经网络的基本组成结构

(草履虫级别的精讲)卷积神经网络的基本组成结构

3.ReLU

公式: f(x) = 𝑚𝑎𝑥(0, 𝑥)

(草履虫级别的精讲)卷积神经网络的基本组成结构

优点:导数固定,梯度不变,计算方便 ,计算速度快,缓解了梯度消失、爆炸的问题,适用于做               深度学习

缺点:由于负数部分恒为0,会导致一些神经元无法激活(可通过设置小学习率部分解决)
           输出不是以0为中心的

4.Leaky_ReLU

公式:f(x) = max(0,x) + leak*min(0,x)

leak是一个很小的常数,这样就保留了负轴的值,使负轴的信息不会全部丢失,是对ReLU函数的改进

Leaky_ReLU的图像:

(草履虫级别的精讲)卷积神经网络的基本组成结构

 5.Mish

公式:

其中(草履虫级别的精讲)卷积神经网络的基本组成结构, 是一个softmax激活函数和

(草履虫级别的精讲)卷积神经网络的基本组成结构

特点:曲线平滑、非单调、上无界、有下界,YOLO V4的Backbone网络中都使用Mish激活函数

四.损失函数

损失函数是神经网络中重要的一环,是一种用来计算网络预测值𝑓(𝑥)与真实值𝑌之间差异程度的函数,这种差异程度称为损失值,用符号𝐿𝑜𝑠𝑠表示。基于损失函数的作用可分为回归损失函数和分类损失函数。

1.回归损失函数

回归损失函数主要包括L1 loss、L2 loss和Smooth L1 loss,下面链接写得可参考了解学习:

https://www.cnblogs.com/wangguchangqing/p/12021638.htmlhttps://www.cnblogs.com/wangguchangqing/p/12021638.html

2.分类损失函数

交叉熵损失函数(CrossEntropy Loss)

交叉熵能够衡量同一个随机变量中的两个不同概率分布的差异程度,在机器学习中就表示为真实概率分布与预测概率分布之间的差异,交叉熵在分类问题中常常与softmax是标配,softmax将输出的结果进行处理,使其多个分类的预测值和为1,再通过交叉熵来计算损失,交叉熵的值越小,模型预测效果就越好。

公式: (草履虫级别的精讲)卷积神经网络的基本组成结构 (草履虫级别的精讲)卷积神经网络的基本组成结构

下面举例说明交叉熵损失函数是如何计算的:

假设输入一张狗的图片:

label 0 1 0
pred 0.2 0.7 0.1

那么这个网络的损失值为:

loss=−(0∗log(0.2)+1∗log(0.7)+0∗log(0.1))=0.36

平衡交叉熵损失函数(Balanced Cross Entropy)

平衡交叉熵损失函数是对交叉熵损失函数的改进,在目标检测和分类任务中要区分物体和背景,一张图片中,物体的存在是少数,这就导致正负样本极不均衡,这个损失函数正是基于这一问题提出的。

公式:(草履虫级别的精讲)卷积神经网络的基本组成结构

参数是平衡正负样本的, 取0~0.5之间,是增大负样本的权重, 取0.5~1之间,是增大正样本的权重

Focal Loss

面对目标检测时类别不均衡问题,何凯明等人提出了新的损失函数Focal Loss,并设计了一个网络模型RetinaNet,在同期一阶段网络速度相同的前提下,其检测精度比同期最优的二阶段网络还要高。

公式:(草履虫级别的精讲)卷积神经网络的基本组成结构

引入了 权重,为了改善正负样本不平衡,提高了些精度;

是为了调节难易样本的权重,当一个边框被误分类时,接近1其损失几乎不受影响;当pt接近于1时,表明其分类结果较好,是简单样本,接近于0,因此其损失被调低了;

是调制因子,越大,简单样本损失越低

希望能帮到大家,如有问题可与我积极交流!文章来源地址https://www.toymoban.com/news/detail-439400.html

到了这里,关于(草履虫级别的精讲)卷积神经网络的基本组成结构的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 卷积神经网络 —— 图像卷积

    卷积神经网络是最具代表性的深度学习算法之一,目前已经被大范围的应用与计算机视觉等领域,并且取得了众多突破性的进展,在学习卷积神经网络之前,我们需要学习图像卷积运算。 图像卷积运算是一种图像处理算法。通过它可以实现很多不同的效果。例如,模糊图像中

    2024年02月07日
    浏览(51)
  • 神经网络实验--卷积神经网络

    本实验主要为了掌握深度学习的基本原理;能够使用TensorFlow实现卷积神经网络,完成图像识别任务。 文章目录 1. 实验目的 2. 实验内容 3. 实验过程 题目一: 题目二: 实验小结讨论题 ①掌握深度学习的基本原理; ②能够使用TensorFlow实现卷积神经网络,完成图像识别任务。

    2024年02月06日
    浏览(55)
  • 神经网络与卷积神经网络

    全连接神经网络是一种深度学习模型,也被称为多层感知机(MLP)。它由多个神经元组成的层级结构,每个神经元都与前一层的所有神经元相连,它们之间的连接权重是可训练的。每个神经元都计算输入的加权和,并通过一个非线性激活函数进行转换,然后将结果传递到下一

    2024年02月10日
    浏览(48)
  • 卷积神经网络与前馈神经网络

    常见的人工神经网络结构 人工神经网络是一类由人工神经元组成的网络,常见的神经网络结构包括: 前馈神经网络(Feedforward Neural Network,FNN):最简单的神经网络结构,由一个输入层、一个输出层和若干个隐藏层组成,信号只能从输入层流向输出层,不允许在网络中形成回

    2023年04月26日
    浏览(43)
  • 【人工智能】— 深度神经网络、卷积神经网络(CNN)、多卷积核、全连接、池化

    Pre-training + Fine-tuning Pre-training(预训练) : 监督逐层训练是多隐层网络训练的有效手段, 每次训练一层隐层结点, 训练时将上一层隐层结点的输出作为输入, 而本层隐结点的输出作为下一层隐结点的输入, 这称为”预训练”. Fine-tuning(微调) : 在预训练全部完成后, 再对整个网络进行

    2024年02月10日
    浏览(47)
  • 【卷积神经网络】卷积,池化,全连接

    随着计算机硬件的升级与性能的提高,运算量已不再是阻碍深度学习发展的难题。卷积神经网络(Convolution Neural Network,CNN)是深度学习中一项代表性的工作,CNN 是受人脑对图像的理解过程启发而提出的模型,其雏形是 1998 年 LeCun 提出的 LeNet-5 模型。如今,卷积神经网络已被

    2024年02月12日
    浏览(37)
  • 基于GUI的卷积神经网络和长短期神经网络的语音识别系统,卷积神经网的原理,长短期神经网络的原理

    背影 卷积神经网络CNN的原理 卷积神经网络CNN的定义 卷积神经网络CNN的神经元 卷积神经网络CNN的激活函数 卷积神经网络CNN的传递函数 长短期神经网络的原理 基于GUI的卷积神经网络和长短期神经网络的语音识别系统 代码下载链接:基于MATLABGUI编程的卷积神经网络和长短期神

    2024年02月12日
    浏览(37)
  • PyTorch实战:卷积神经网络详解+Python实现卷积神经网络Cifar10彩色图片分类

    目录 前言 一、卷积神经网络概述 二、卷积神经网络特点 卷积运算 单通道,二维卷积运算示例 单通道,二维,带偏置的卷积示例 带填充的单通道,二维卷积运算示例 Valid卷积 Same卷积 多通道卷积计算 1.局部感知域 2.参数共享 3.池化层 4.层次化提取  三、卷积网络组成结构

    2024年02月07日
    浏览(57)
  • 【深度学习】6-1 卷积神经网络 - 卷积层

    卷积神经网络(Convolutional Neural Network, CNN )。 CNN 被用于图像识别、语音识别等各种场合,在图像识别的比赛中,基于深度学习的方法几乎都以 CNN 为基础。 首先,来看一下 CNN 的网络结构,了解 CNN 的大致框架。CNN 和之前介绍的神经网络一样,可以像乐高积木一样通过组装层

    2024年02月10日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包