精华内容
下载资源
问答
  • 吴恩达 卷积神经网络原理图

    吴恩达 卷积神经网络原理图

    在这里插入图片描述

    在这里插入图片描述

    在这里插入图片描述

    展开全文
  • 卷积神经网络原理详解

    前言

    这个什么鬼卷积神经网络,就是用于有趣的计算机视觉的一个人工智能分支。包括人脸识别、自动驾驶等众多技术都基于此。听上去好像的挺好玩的。

    在这里插入图片描述
    那这个卷积神经网络呢就像是一个函数,输入一个二维的像素矩阵,经过这个辣鸡函数后就可以得到其特征值
    在这里插入图片描述

    卷积(convolution)

    在这里插入图片描述
    在这里插入图片描述
    图中左上角的小九宫格为卷积核(卷积核是原图中的某一部分的特征矩阵,不一定是3X3的),将图像的每个位置与卷积核进行如图所示的运算,得到右上角的这个特征矩阵
    在这里插入图片描述
    然后再将特征矩阵的所有值相加除以数据的个数,就可以得到该区域与卷积核的匹配度(等于1的话就一毛一样的)
    在这里插入图片描述
    按照同样的方法我们可以看到这个不好玩的卷积核跟中间那一块的匹配度是0.55
    在这里插入图片描述
    然后把整个图的匹配度都算出来,得到的矩阵就是关于这个卷积核的特征矩阵
    在这里插入图片描述
    这就是经过一次卷积得到的结果
    在这里插入图片描述
    我们再用多个卷积核对原图进行卷积就可以得到多个特征矩阵,上面这个过程也就是我们说的卷积了

    池化(pooling)

    我们再进行这个好玩的训练过程中往往图片都是成千上万张的,在加上对没张图片的卷积运算。。。。哇,这不是要算死吗,心疼我的电脑啊(那就最小化后台运行假装让你休息吧)。所以,我们就需要对经过卷积的特征矩阵进行简化,简化过程当然就是池化了
    在这里插入图片描述

    在这里插入图片描述
    池化主要是有两种滴,第一种就是像上图这样,把一个区域里最大的那个数据提取出来,还有一种就是取这个区域内所有数的平均数
    在这里插入图片描述
    我们这里假装步长是2(就是这个2X2的框框每次移动都是两格),如果到某个区域数据没有的就补0就阔以了
    在这里插入图片描述
    继续这样的一波操作就会的到整个特征矩阵的池化结果
    在这里插入图片描述
    然后也是一样的方法就可以把多个特征矩阵池化了哈

    正则化(normalization)/ReLU

    正则化这个就比较好玩了
    在这里插入图片描述
    就是直接这样,把负数变成0,正数不改变就好了
    在这里插入图片描述
    Okay,就这样就好了哈哈哈

    全连接(fully connect)

    全连接啊就是把全部数据排成一列
    在这里插入图片描述
    像这样一行行一列列按顺序排成一列
    在这里插入图片描述
    在这里插入图片描述
    对于每个字母(看你想要训练的图像是什么,这里就以字母图像为例了),它所对应的全连接层中每个数据都有其对应的权重(就是这个字母在这个位置的特征值为这个数的概率),看图中的例子就是字母X的全连接层第一个特征值为1.0的概率是0.9,然后把这两个数相乘,对于每个特征值都是这样相乘,然后求和去平均值就是最终得到的概率(这个概率指的就是这一串特征值代表的字母是X的概率)。求出每个字母的概率,最大概率的字母就是我们通过机器学习认为这张图所表示的字母。

    全连接的另一种解释方式

    在这里插入图片描述
    当输入字母X的图片时,得到上图的全连接层,把值为1.0的数据用黑色粗线连接
    在这里插入图片描述
    当输入字母O的图片时,得到上图的全连接层,把值为1.0的数据用绿色粗线连接
    在这里插入图片描述
    我们输入一张图片(不知道是X还是O),比一下对应黑色粗线的值的和与对应绿色粗线的值的和,更大的就代表是这个字母的概率大,okk

    神经网络

    神经网络呢,就是把上面那几个过程按照想要的顺序进行运算,得到想要的结果
    在这里插入图片描述
    在这里插入图片描述
    就是像上面这样,是不是挺好玩的,哈哈

    损失函数(这里过两天来补充)不是偷懒哈哈哈

    机器判断的东西嘛,那肯定是有不确定性的
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    文中图片引用自视频:
    https://www.bilibili.com/video/av16175135?from=search&seid=4423559778929147632

    展开全文
  • 3.卷积神经网络中的卷积卷积神经网络中,定义图像 和卷积核 的卷积过程如下:二.卷积神经网络简介和结构在实际项目中,输入神经网络的是具有更高分辨率的彩色图片,使得送入神经网络的参数过多。随着网络层数的增加...

    一.卷积

    1.二维卷积

    在信号处理中,二维卷积的定义如下:

    为给定图像,
    为滤波器。

    2.互相关

    机器学习中,卷积其实是不翻转的二维卷积,定义为下:

    被称作卷积核。

    3.卷积神经网络中的卷积

    卷积神经网络中,定义图像

    和卷积核
    的卷积过程如下:

    二.卷积神经网络简介和结构

    在实际项目中,输入神经网络的是具有更高分辨率的彩色图片,使得送入神经网络的参数过多。随着网络层数的增加,待优化参数越多,网络越来越复杂,模型很容易过拟合。为了减少特征参数,在实际应用时,会对原始图片进行特征提取,把提取来的特征送入全连接网络进行识别。

    卷积神经网络的主要作用,就是通过卷积核,对输入特征进行特征提取再把提取到的特征送入全连接网络进行识别预测。卷积神经网络的主要模块一般包括以下四个:

    卷积(Convolutional),批标准化(BN),激活(Activation),池化(Pooling)。

    数据依次经过以上四步之后,在将其送入全连接网络。此外有时候卷积模块的终端还会添加一个Dropout层。因此,在神经网络中,卷积就是特征提取器,它的过程为CBAPD。

    三.卷积层

    1.前向传播

    斯坦福大学给出的卷积过程如下图所示。首先,图像经过了

    填充,卷积核有两个
    ,卷积核的维度
    ,前两个数字是卷积核的尺寸维度,说明每个卷积核有3行3列,第三个维度为卷积核的通道数,通道数与图像的通道保持一致,如果图像为灰度图,则通道数为1,下图所给的图像为RGB图像,有三个通道,因此,每个卷积核也有三个通道;有两个卷积核,所以输出的特征也有两个。

    ed95574507f926c57f98d51e4839cf33.png

    如上图所示,卷积的计算过程为:首先,将卷积核按照指定步长滑动。滑动后,卷积核与图像中的元素重合,然后将对应元素相乘,所有相乘的结果相加并加上偏置

    ,即得到一个点的卷积结果。

    用公式表示卷积过程:

    *代表卷积操作。

    一般情况下,卷积核不止一个。也就是说

    一般为一个三维张量。

    激活函数

    通常为ReLu函数(线性修正单元)。

    2.全零填充

    有时候,可以将原始图像的周围填充上一圈0,从而调节输出特征的维度。输出维度的计算公式如下:

    3.反向传播

    (1)已知卷积层的

    ,推导上一层的

    其中,

    代表将卷积核翻转180度。

    (2)已知卷积层的

    ,求该层的

    对于

    对于

    ,将
    的各个子矩阵的项分别求和,得到一个误差向量,即为
    的梯度:

    四.批标准化(Batch Normalization,BN)

    神经网络对0附近的数据更加敏感,但是随着网络层数的增加,特征数据会出现偏离0均值的情况。标准化可以使数据符合

    均值,1为标准差的分布。而批标准化时对一小批数据做标准化处理。其公式为:

    :批标准化前,第
    个卷积核输出特征图中的第
    个像素点。

    :批标准化前,第
    个卷积核,batch张输出特征中所有像素点的均值。

    :批标准化前,第
    个卷积核,batch张输出特征中所有像素点的标准差。

    优点:避免数据偏移,远离导数饱和区。

    缺点:对于使用sigmoid 型激活函数时,这个取值区间刚好是接近线性变换的区间,减弱了神经网络的非线性性质。因此,为了使得归一化不对网络的表示能力造成负面影响,可以通过一个附加的缩放和平移变换改变取值区间。

    五.池化层

    池化一般包括最大池化和均值池化:最大池化可提取图片纹理,均值池化可保留背景特征。

    1.前向传播

    假如输入矩阵为

    维,过滤器大小为
    ,则输出为
    矩阵。

    (1)MAX

    输出区域为输入图像对应位置的最大值。

    (2)Average

    输出区域为输入图像对应位置的平均值。

    2.反向传播

    池化层没有激活函数,直接做unsample还原。

    (1)如果使用的是MAX,前向传播时记录位置:

    (2)如果使用的是Average,则进行平均:

    六.舍弃(Dropout)层

    为了缓解神经网络过拟合,在神经网络的训练过程中,常把隐藏层的神经元按一定比例从神经网络中临时舍弃。在使用神经网络时,再把所有神经元恢复到神经网络中。

    展开全文
  • 卷积神经网络(CNN)是计算机视觉应用背后的架构。本文将阐述CNN和计算机视觉的基础,例如卷积运算,填充,跨步卷积和池化层。然后,我们将使用TensorFlow构建用于图像识别的CNN。理解卷积该卷积运算是卷积神经网络的...

    深度学习的最新进展使得计算机视觉应用的飞跃:从我们的手机解锁方式到更安全的自动驾驶汽车。

    卷积神经网络(CNN)是计算机视觉应用背后的架构。本文将阐述CNN和计算机视觉的基础,例如卷积运算,填充,跨步卷积和池化层。然后,我们将使用TensorFlow构建用于图像识别的CNN。

    理解卷积

    卷积运算是卷积神经网络的积木。

    现在,在计算机视觉领域,图像可以表示为RGB值的矩阵。这个概念实际上是在之前的文章中介绍。

    要完成卷积操作,我们需要一个图像和一个过滤器。

    因此,让我们将下面的6x6矩阵视为图像的一部分:

    378aae7b3235aae7c37f63eaf3cfcacf.png

    6x6矩阵

    过滤器将是以下矩阵:

    34acd802b7dc55f71139f5e0c9aaabe0.png

    3x3过滤器

    然后,卷积涉及将滤波器叠加到图像矩阵上,来自滤波器的值和来自图像矩阵的的乘积,其将生成4×4的旋绕层。

    这很难用文字表达,但这里有一个很好的动画来解释卷积:

    5dadfe3f03084a9c2c856d07a0d1e3e0.gif

    卷积操作

    在上面的图像矩阵上执行此操作并使用上面定义的过滤器,获得以下结果矩阵:

    2899f3212a9b85629139e2e39588d140.png

    4x4输出层

    你如何解释输出层?

    好吧,考虑到每个值都表示颜色,或者像素有多暗(正值表示光,负值表示暗),那么可以将输出层解释为:

    581f5cfbfec6bf05d6399c94f235d2f4.png

    输出层解释

    因此,似乎这个特定的滤镜负责检测图像中的垂直边缘!

    你如何选择合适的过滤器?

    这是一个自然的问题,因为你可能会发现可以应用于图像的无限数量的过滤器。

    事实证明,滤波器矩阵中的精确值可以是基于模型目标的可训练参数。因此,可以选择适用于特定应用程序的过滤器,也可以使用来确定过滤器的最佳值,从而产生最佳结果。

    在计算机视觉中填充

    以前,我们已经看到一个3x3滤波器与6x6图像进行卷积,将产生4x4矩阵。这是因为滤波器有4x4个可能的位置以适合6x6图像。

    因此,在每个卷积步骤之后,图像缩小,这意味着只能执行有限数量的卷积,直到图像不再缩小为止。此外,位于图像角落的像素仅使用一次,这导致神经网络的信息丢失。

    为了解决上述两个问题,使用填充。填充包括在输入图像周围添加边框,如下所示:

    9cf95825dd593b23037e2c96d859478f.png

    填充为1的输入图像

    正如你所看到的一样,添加的边框通常用零填充。现在,图像的角点像素将被多次使用来计算输出,从而有效地防止信息丢失。此外,它允许我们在输出中保持输入矩阵形状。

    考虑到我们的6x6输入图像,如果我们添加1的填充,我们得到一个8x8矩阵。应用3x3滤波器,这将产生6x6输出。

    一个简单的等式可以帮助我们找出输出的形状:

    1e91ba161a56097971adc8138f0865dd.png

    其中n是输入形状,p是填充大小,f是滤波器形状

    重申一下,我们有:

    • 6x6输入
    • 填充1
    • 3x3过滤器

    因此,输出形状将是:6 + 2(1)-3 + 1 = 6.因此,输出将是6x6矩阵,就像输入图像一样!

    填充并不总是必需的。但是,使用填充时,通常输出的大小与输入图像的大小相同。这产生两种类型的卷积。

    当没有应用填充时,这称为" 有效卷积"。否则,它被称为" 相同的卷积"。要确定保持输入图像尺寸所需的填充大小,只需将上面的公式等同于n即可。解决p后,你应该得到:

    704841847140a4b1184f3f3474eefc14.png

    可能已经注意到f应该是奇数,以便填充为整数。因此,计算机视觉领域的惯例是具有奇数滤波器。

    跨步卷积

    以前,我们已经看到了一个步幅为1 的卷积。这意味着滤波器水平和垂直移动了1个像素。

    一个跨步卷积是当步幅大于1.在下面的动画中,步幅为2:

    1e181308a92f7a73bb23dcecfd2c03b2.gif

    卷入2的步幅

    现在,考虑到步幅,计算输出矩阵形状的公式是:

    7bf691fff500b9ee5bf5ab72aee7b2c7.png

    s是步幅

    作为惯例,如果上面的公式不产生整数,那么我们向下舍入到最接近的整数。

    汇集层

    池化层是减少图像解释大小以增加计算速度的另一种方法,它使检测到的特征更加健壮。

    最好用图像解释池化。以下是最大池的示例:

    3a790c4bcc28391cd4b320b4d9c24fce.png

    使用2x2过滤器进行最大池化

    我们选择了一个步长为2的2x2滤波器。这相当于将输入分成4个相同的方块,然后我们取每个方块的最大值,并在输出中使用它。

    也可以执行平均池化,但它不如最大池化。

    您可以将池化视为防止过度拟合的一种方法,因为我们正在从输入图像中删除某些功能。

    为什么要使用卷积神经网络?

    我们现在对卷积神经网络有很强的基础知识。但是,为什么深度学习从业者会使用它们呢?

    与完全连接的层不同,卷积层具有要学习的小得多的参数集。这是因为:

    • 参数共享
    • 连接稀疏

    参数共享指的是一个特征检测器,例如垂直边缘检测器,将在图像的许多部分中有用。然后,连接的稀疏性指的是只有少数特征与某个输出值相关的事实。

    考虑到上面的最大池化示例,输出的左上角值仅取决于输入图像的左上角2x2平方。

    因此,我们可以训练较小的数据集并大大减少要学习的参数数量,使CNN成为计算机视觉任务的一个很好的工具。

    使用TensorFlow构建CNN

    足够理论,让我们编码CNN进行手势识别。我们重新审视之前的项目,看看CNN是否会表现更好。

    与往常一样,有完整的笔记本电脑。

    第1步:预处理图像

    导入所需的库和资源后,我们加载数据并预处理图像:

    809f9655d25618ff10dc672e7ecd7d71.png

    第2步:创建占位符

    然后,我们为功能和目标创建占位符:

    f74171e8f54442f9e330cd86614a33f7.png

    第3步:初始化参数

    然后我们使用Xavier初始化初始化我们的参数:

    3948a62d6123034ce1330bbbe78407de.png

    第4步:定义前向传播

    现在,我们定义前向传播步骤,这实际上是我们CNN的架构。我们将使用具有2个卷积层和最终完全连接层的简单3层网络:

    1c7a8c5ac986e3362b1007db5347b7db.png

    第5步:计算成本函数

    最后,我们定义一个计算成本的函数:

    10074c44efbfebe565342a6e24d88a93.png

    第6步:将所有功能组合到一个模型中

    现在,我们将上述所有功能合并到一个CNN网络中。我们将使用小批量梯度下降进行训练:

    现在,我们可以运行我们的模型并查看它的执行情况:

    _,_,parameters = model(X_train,Y_train,X_test,Y_test)

    现在你对CNN和计算机视觉领域有很好的了解。虽然还有很多东西需要学习,但更高级的技术都是使用这里介绍的概念作为基本构建块。

    展开全文
  • 卷积神经网络原理概述卷积神经网络又称作(ConvNet, CNN),它的出现解决了人工智能图像识别的难题,图像识别数据量大,并且在识别的过程中很难保留原有的信息,因此卷积的作用就体现在这里。比如我们经常说的像素,...
  • CNN卷积神经网络原理讲解+图片识别应用(附源码)

    万次阅读 多人点赞 2018-06-26 16:35:50
    二、卷积神经网络原理介绍 用CNN卷积神经网络识别图片,一般需要的步骤有: 卷积层初步提取特征 池化层提取主要特征 全连接层将各部分特征汇总 产生分类器,进行预测识别 ...
  • 卷积神经网络原理

    2019-02-09 19:43:52
    从神经网络到卷积神经网络(CNN) 我们知道神经网络的结构是这样的: 那卷积神经网络跟它是什么关系呢? 其实卷积神经网络依旧是层级网络,只是层的功能和形式做了变化,可以说是传统神经网络的一个改进。比如下...
  • 这次,我们将要使用卷积神经网络的思想来拓宽我们对神经网络工作原理的理解。简介过去我们接触到了密集连接的神经网络。那些神经网络中,所有的神经元被分成了若干组,形成了连续的层。每个这样的单元都与相邻层的每...
  • 本文转自:机器之心,作者-iotr Skalski...事实上,我们每天都在使用计算机视觉技术——我们用自己的面孔解锁手机,将图片上传到社交网络之前进行自动修……卷积神经网络可能是这一巨大成功背后的关键组成模块。这...
  • CNN卷积神经网络原理

    2018-07-11 17:42:49
    最近看了cnn神经网络,发现这篇...其实卷积神经网络依旧是层级网络,只是层的功能和形式做了变化,可以说是传统神经网络的一个改进。比如下中就多了许多传统神经网络没有的层次 卷积神经网络的层级结构: ...
  • 如何理解神经网络2.前馈网络3.反向传播算法4. 全连接网络5.卷积网络5.1卷积网络的基本概念5.2 卷积网络与全连接网络的关系5.3 怎么理解卷积5.4 卷积网络的前向传播5.5 卷积网络的反向传播 1.如何理解神经网络 神经...
  • 如何理解 Graph Convolutional Network(GCN) 空间方法的GCN论文: GCN: Kipf, T. N., & Welling, M. (2016). Semi-supervised classification with graph convolutional networks....GraphSAGE: Hamilton, W., ...
  • 卷积神经网络原理与实现过程

    千次阅读 2019-10-29 10:27:52
    卷积神经网络在回归问题中原理与实现过程 卷积原理 正向传播 反向传播 卷积原理 卷积神经网络往往被用于图像领域处理,它具有两大优势,分别是共享权重和局部连接,在数据量较大时,能够有效的降低网络压力。卷积...
  • 卷积神经网络(一):卷积层和池化层的学习 卷积神经网络(CNN)由输入层、卷积层、激活函数、池化层、全连接层组成,即INPUT-CONV-RELU-POOL-FC (1)卷积层:用它来进行特征提取,如下: 输入图像是32*...
  • 卷积神经网络原理解析

    千次阅读 2019-08-16 10:57:32
    朋友们,我是床长!... 自动驾驶、智能医疗保健和自助零售这些领域直到最近还被认为是不可能实现的,而计算机视觉已经帮助我们达到了这些事情。如今,拥有自动驾驶汽车或自动杂货店的梦想听起来不再...卷积神经网络...
  • 卷积神经网络的结构基本如所示 卷积层,池化层(或降采样层,下采样层),卷积层,池化层,最后把池化的结果拉平成一个长向量,传入到全连接层,最后输出结果。 虽然后面有很多新的结构,但是基本框架仍然没有变...
  • CNN卷积神经网络原理讲解+图片识别应用(附源码), CNN笔记:通俗理解卷积神经网络--理解不同输入通道和卷积核通道关系(红色部分) #coding=utf-8 from tensorflow.examples.tutorials.mnist import input_data...
  • 目录 1.三个性质 1.1局部性 1.2相同性 1.3不变性 2.网络的层结构 2.1卷积层 ...3.卷积神经网络的基本形式 ...卷积神经网络于1998年由Yann Lecun提出,卷积网络用于处理计算机图像。图像分类是...
  • 图卷积神经网络涉及到信号处理的相关知识,也是由信号处理领域的知识推导发展而来,了解信号处理的知识是理解图卷积神经网络的基础。 1.1 的拉普拉斯矩阵 拉普拉斯矩阵是体现结构关联的一种重要矩阵,是...
  • 卷积神经网络最让人迷惑的地方就是在于他的卷积过程,还有其权值共享的原理。下面从初始化序贯模型(一种可以在中间随意堆叠神经网络层的结构)开始记录。卷积神经网络的目的是应用于图片识别,最初的成熟的CNN模型...
  • 人工智能原理基于Python语言和TensorFlow张明 副教授 第六章卷积神经网络卷积神经网络卷积神经网络的模型架构卷积运算卷积常见层TensorFlow和图像模型训练模型评估多GPU的模型训练6.1卷积神经网络应用是深度学习技术...
  • 与常规的神经网络不同,ConvNet的神经元是三维排列的。 输入层 卷积层 非线性变换层 池化层 全连接层 感受野: 卷积核尺寸 局部连接 参数共享 feature map = filter = neuron 卷积层参数——Stride 卷积操作后,...
  • 卷积神经网络原理与实例

    千次阅读 2018-01-17 15:05:04
    一、卷积神经网络是如何工作的?参考链接https://www.zhihu.com/question/39022858/answer/203073911参考链接https://www.cnblogs.com/charlotte77/p/7759802.html1、卷积层一个例子,现在有一个4*4的灰度图像,我们...
  • CNN卷积神经网络原理讲解+图片识别应用(两层) https://blog.csdn.net/kun1280437633/article/details/80817129 写给初学者的深度学习教程之 MNIST 数字识别(一个CNN) ... 深入理解卷积层,全连接层的作用意义 ...
  • 文章有点长,但字数不多, 学习卷积神经网络资料 ...大白话讲解卷积神经网络工作原理https://www.bilibili.com/video/BV1sb411P7pQ 卷积基本操作 :对图像做平滑,如下,其结果中的每...
  • 目录 2.0 卷积神经网络简述 2.1 二维卷积层 2.1.1. 二维互相关运算 2.1.2. 图像中物体边缘检测 ...2.0 卷积神经网络简述 ...本章将介绍卷积神经网络。...我们将先描述卷积神经网络中卷积层和池化层的工作原理...
  • 卷积神经网络的主要结构是卷积层+池化层,该算法在图像上有较好的效果 小知识:图片有彩色图片和黑白图片,颜色都是有RGB三种颜色调和而成,所以彩色图片有三层通道,黑白图片有一层通道 咱们拿黑白图片说事: ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,138
精华内容 455
关键字:

卷积神经网络原理图