首页 - 最近大事件 - 猫叫声音,TensorFlow系列专题(十二):CNN最全原理分析,火影忍者剧场版

猫叫声音,TensorFlow系列专题(十二):CNN最全原理分析,火影忍者剧场版

发布时间:2019-04-02  分类:最近大事件  作者:admin  浏览:307

一、 前语

卷积神经网络(convolutional neural network,CNN)是一种专门用来处理网格结构数据(例如图画数据)的前馈神经网络,是由生物学家Hubel和Wiesel在前期关于猫脑视觉皮99ee6层的研讨开展而来。Hubel和Wiesel经过对猫脑视觉皮层的研讨,发现初级视觉皮层中的神经元会呼应视觉环境中特定的特征(称之为感触野机制),他们留意到了两种不同类型的细胞,简略细胞和杂乱细胞。其间,简略细胞只对特定的空间方位和方向具有激烈的反响,而杂乱细胞具有更大的承受域,其关于特征方位的细小偏移具有不变性。

经过之前的介绍,咱们了解到全衔接神经网络的作业原理。后一层中的每一个神经元的都和上一层的一切神经元之间有衔接。尽管这种办法能够最大程度地让整个网络中的神经元都接纳猫叫声响,TensorFlow系列专题(十二):CNN最全原理剖析,火影忍者剧场版到各个维度的信息,可是它的缺陷也很明显。首要,全衔接网络的参数较多,乡村野情这会添加模型练习的时刻和难度,其次过多的参数会导致过拟合问题,使得模型的泛化才能不强。别的关于二维图画数据来说,其所具有的部分不变性特征关于全衔接神猫叫声响,TensorFlow系列专题(十二):CNN最全原理剖析,火影忍者剧场版经网络来说是难以被提取到的。

卷积神经网络一直是深度学习范畴研讨的中心,尽管早在上世纪90年代卷积神经网络就现已有一些实践场景的运用,可是其之所以能得到大范围的研讨和运用,首要归功于近些年所获得的巨大开展。一个重要的节点是Hinton和他的学生Alex Krizhevsky运用他们规划的AlexNet[1]网络获得了2012年ImageNet悲催小媳妇翻身记竞赛的冠王木犊军。他们把图片分类的差错从本来的26%下降到15%,这在核算机视觉范畴引起了不小的颤动,也是在那年之后,更多更深的神经网路一一被提出。直到现在,深度卷积神经网络现已开展成为核算机视觉范畴猫叫声响,TensorFlow系列专题(十二):CNN最全原理剖析,火影忍者剧场版中十分重要的一部分。

二、 卷积神经网络的特性

图画辨认、分类是核算机视觉范畴中比较常见的问题。关于核算机来说常维玲,一张图片便是一个巨细为M*N*3的像素矩阵(以三通道图画为例),像素矩阵中每个像素的值在0到255之间。在给定这个像素矩阵作为输入后,要核算输出该图画所属的类别,这并不是一件十分简略的事。

当咱们人在看到一幅图画时,首要都会重视图画中比较突出的、信息量比较大的部分特征,例如当咱们看到一张宠物狗的图片时,咱们的目光一般首要会落在狗的脸部以及四条腿等哥哥鸟叫部位,然后依据经历,咱们知道这是一张狗的图片。卷积神经网络学习了人类视觉体系的作业原理,卷积神经网络首要经过寻觅这副图片的边际或许曲线等得到一些初级特征,然后再经过一系列卷积层将这些初级的特征会聚成愈加高档的特征,因为这些高档的特征是由多个初级特征卷积构成,因而高档特征能掩盖原始图片更多的信息。

卷积神经网络首要有以下三大特性:

1. 部分衔接

在第三章中,咱们介绍的前馈神经网络,其相邻的两层之间,前一层的每一个神经元(或许是输入层的每一个单元)与后一层的每一个神经元都有衔接,这种状况称为全衔接。全衔接网络的一个缺陷便是参数太多,假定咱们输入到神经网络中的是一张三通道的五颜六色图画,图画巨细为128*128,因而输入层就有128*128*3=49150个单元。运用全衔接网络的话,输入层到第一层躲藏层的每一个神经元都有49150个衔接,跟着网络层数的添加和每一层中神经元数量的添加,网络中的参数也会急剧添加。许多的参数不只会拉低神经网络练习的功率,也很简略导致过拟合。

在卷积神经网络中,层与层之间不再是全衔接,而是部分猫叫声响,TensorFlow系列专题(十二):CNN最全原理剖析,火影忍者剧场版衔接,详细的完结办法便是咱们在4.2节中会介绍的卷积操作。

2. 权值同享

在卷积神经网络中,每一层卷积层中都会有一个或许多个卷积核(也称为滤波器),这些卷积核能够辨认图画中某些特定的特征,每个卷积核会去滑动卷积上一层的特征图,在卷积的进程中卷积核的参数是不变且同享的。这样在练习进程中,与之前的全衔接神经网络练习大标准输入样本时需求许多参数比较,卷积神经网络只需求相对少许多的参数就能够完结练习。

3. 子采样

子采样层(subsampling layer)也称作池化层(pooling layer), 其作用是对上一卷积层进行聚合,使得上一层卷积层的输入特征图尺度在经过该子采样层的聚合(也便是咱们说的池化)后减小,然后下降特征数量,削减参数的数量。子采样层所做的事其实便是对上一层卷积层进行扫描,每次扫描特定区域,然后核算该区域特征的最大值(最大池化(maximum pooling))或许均匀值(均匀池化(mean pooling)),作为该区域特征的表明。

以上三个特征使得卷积神经网络具有必定程度上的缩放、平移和旋转不变性,而且相较于全衔接神经网络,其网络参数女子步行街裸舞也少了许多。

三、 卷积层

1. 什么是卷积

卷积(Convolution)是剖析数学中一种重要的运算,有着十分广泛的运用,在图画处理中,常用的是我和师娘雷雨中的孽缘二维卷积。以单猫叫声响,TensorFlow系列专题(十二):CNN最全原理剖析,火影忍者剧场版通道的灰度图画为例,对图画进行卷积操作,便是运用一个卷积核(也称滤波器,在本书中统一称为卷积核)别离与图画的同巨细区域进行点乘,卷积核顺次从左往右从上往下滑过该图画的一切区域,点乘后得到的矩阵其各个方位上的值累加,作为卷积后图画上的像素值。这种将图画和卷积核进行按位点乘后求和的操作,便是卷积神经网络中的卷积操作。

假定有一个图画X,其巨细为M*N,给定一个卷积核W,其巨细为m*n,则卷积的公式可定义为:

咱们看一个简略的比如,如图1所示。咱们有一张巨细为5*5的图画(单通道),X是其像素矩阵,矩阵W为卷积核,其巨细为3*3,矩阵Y是卷积得到的成果,称为特征映射或特征图(feature map)。依据上式,咱们能够核算y11的值卡阴为:

图1 二维滤波器的卷积运算示例

需求阐明的是,这儿咱们所说的卷积实践上是相互关(cross-correlation)。两者的差异在于,卷积的核算需求将卷积核进行翻转(相当于旋转180度),相互关也能够理解为不对卷积核进行翻转的卷积。

这儿不需求对卷积核进行翻转的原因是卷积核是否进行翻转并不影响神经网络对特征的抽取,别的卷积神经网络中的卷积核是需求学习的参数,薯良因而卷积和相互关在这儿其实是等价的。因为相互关的核算愈加简洁,所以现在咱们在深度学习中都是运用相互关操作来代替卷积。

在图画处理中,卷积是用来做特征提取的一个有用办法。不同的卷积核能够用来检测图画中不同的特征,以手写数字辨认为例,如图2左边所示是一个手写数字"1",右侧是它的像素值。

(左图:手写数字原始图画;右图:手写数字的像素值)经典老歌甜歌大全

现在咱们要用卷积操作来提取这个数字的特征,假定咱们有如图3所示的两个卷积核。

图3用来辨认手写数字的两个不同的卷积核a(左)和b(右)

如图4所示,当咱们用卷积核a对原始图画做卷积操作时,王京岐依据前面介绍的卷积核算办法,其成果为:

图4运用卷积核a对原始图画做卷积操作 (左:原始图画的像素表明;右:卷积核a)

咱们再换用卷积核b对原始图画进行卷积,如图5所示。

图5运用卷积核b对原始图画做卷积操作

卷积得到的成果为:

从核算成果来看,卷积核a与原始图画卷积核算得到的值要远猫叫声响,TensorFlow系列专题(十二):CNN最全原理剖析,火影忍者剧场版大于卷积核b。经过调查也能发现,卷积核a的形状与原始图画的重合度较高,这也是卷积核提取图画特征的要害,假如图画的某一区域与卷积核所能检测的特征很类似,那么该区域就会激活卷积核,得到一个很高的值,反之,假如图画的某一区域与卷积核所能检测的特征不类似,卷积操作之后,该区域的值就会相对较低。

如图6所示是图画处理中常用的几种卷积核,图中最上面的卷积核是高斯卷积核,其作用是对图画进行滑润降噪处理,第二和第三个卷积核能够用来进行边际检测。

图6图画处理中的几种滤波器示例(图片引证自:https://nndl.gi女学生相片thub.io/)

(图片引证自:https://nndl.git锔瓷教程视频hub.io/)

实践中咱们不可能针对每一种状况去规划一个卷积核,而卷积神经网络的强壮就在于它能够学习到需求的卷积核,卷积神经网络经过从练习数据中学习到所需的卷积核,然后完结图画检测、分类的使命。

在卷积神经网络中,为了到达更灵敏smvideo的特征抽取,咱们引入了卷积核的滑动步长(Stride)和零填充(Zero-padding)来添加卷积的多样性。

卷积核的滑动步长是指卷积核在卷积操作中每次移动的间隔,如图7的上半部分所示是滑动步长为1时分的状况。假如将滑动步长设为2,则卷积核每次在横向(或纵向)移动的间隔就为2,如图4-7的下半部分所示。

图7滑动步长别离为1(上)和2(下)的卷积进程示例

(本末节图片猫叫声响,TensorFlow系列专题(十二):CNN最全原理剖析,火影忍者剧场版均引证自:Dumoulin V , Visin F .

A guide to cfarrarionvolution arithmetic for deep learning[J]. 2016.)

零填充是指在输入矩阵的四周填充零,如图8所示在输入矩阵的周围填充了宽度为2的零。

图8宽度为2的零填充示例

在卷积神经网络中,依照不同的零填充的办法能够划分为不同的卷积,如下是三种较为常用的卷积(假定输入矩阵的巨细为m*m,卷积核的巨细为n*n,滑动步长为s,零填充的宽度为p。):

1)窄卷积(narrow convolution):图7上半部分所示的状况便是窄卷积,其间滑动步长s=1,不进行零填充,卷积后输出的特征曾骥瑞典图巨细为(m-n白骨精写给孙悟空的信歌词+1)*(m-n+1)。

2)宽卷女诗人邀观众摸胸积(wide convolution):图9所示是宽卷积的示例,其间滑动步长s=1,零填充的宽度为p=n-1,卷积后输出的特征图巨细为(m+n-1)*(m+n-1)。

3)等宽卷积(equal-width convolution):图10所示是等宽卷积的示例,其间滑动步长s=1,零填充的宽度为p=(n-1)/2,卷积后输出的特征图巨细为m*m,等宽卷积得到的特征图和输入的原图巨细共同。

图9宽卷积示例

图10等宽卷积示例

四、 总结

因为卷积神经网络内容篇幅较大,故在此将卷积神经网络内容拆分为三部分,首要本篇幅介绍了卷积神经网络的开展,卷积神经网络模型的特性以及卷积层的特色。下一部分将介绍卷积层的结构和池化层的结构。最终将结合代码以一个实践竞赛冰山雷达波图画辨认结束。

五、 参考文献

[1]Alex Krizhevsky: ImageNet Classification with Deep Convolutional Neural Networks .NIPS 2012