搜档网
当前位置:搜档网 › 卷积神经网络

卷积神经网络

卷积神经网络
卷积神经网络

卷积神经网络

摘要:卷积神经网络是近年来广泛应用于模式识别、图像处理等领域的一种高效识别算法,它具有结构简单、训练参数少和适应性强等特点。本文从卷积神经网络的发展历史开始,详细阐述了卷积神经网络的网络结构、神经元模型和训练算法。在此基础上以卷积神经网络在人脸检测和形状识别方面的应用为例,简单介绍了卷积神经网络在工程上的应用,并给出了设计思路和网络结构。

关键字:模型;结构;训练算法;人脸检测;形状识别

0 引言

卷积神经网络是人工神经网络的一种已成为当前语音分析和图像识别领域的研究热点,它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。卷积网络是为识别二维形状而特殊设计的一个多层感知器,这种网络结构对平移、比例缩放、倾斜或者共他形式的变形具有高度不变性。

1 卷积神经网络的发展历史

1962年Hubel和Wiesel通过对猫视觉皮层细胞的研究,提出了感受野(receptive field)的概念,1984年日本学者Fukushima基于感受野概念提出的神经认知机(neocognitron)可以看作是卷积神经网络的第一个实现网络,也是感受野概念在人工神经网络领域的首次应用。神经认知机将一个视觉模式分解成许多子模式(特征),然后进入分层

递阶式相连的特征平面进行处理,它试图将视觉系统模型化,使其能够在即使物体有位移或轻微变形的时候,也能完成识别。神经认知机能够利用位移恒定能力从激励模式中学习,并且可识别这些模式的变化形,在其后的应用研究中,Fukushima将神经认知机主要用于手写数字的识别。随后,国内外的研究人员提出多种卷积神经网络形式,在邮政编码识别和人脸识别方面得到了大规模的应用。

通常神经认知机包含两类神经元,即承担特征抽取的S-元和抗变形的C-元。S-元中涉及两个重要参数,即感受野与阈值参数,前者确定输入连接的数目,后者则控制对特征子模式的反应程度。许多学者一直致力于提高神经认知机的性能的研究:在传统的神经认知机中,每个S-元的感光区中由C-元带来的视觉模糊量呈正态分布。如果感光区的边缘所产生的模糊效果要比中央来得大,S-元将会接受这种非正态模糊所导致的更大的变形容忍性。我们希望得到的是,(训练模式与变形刺激模式在感受野的边缘与其中心所产生的效果之间的差异变得越来越大。)为了有效地形成这种非正态模糊,Fukushima 提出了带双C-元层的改进型神经认知机。

Trotin 等人提出了动态构造神经认知机并自动降低闭值的方法[1],初始态的神经认知机各层的神经元数目设为零,然后会对于给定的应用找到合适的网络规模。在构造网络过程中,利用一个反馈信号来预测降低阈值的效果,再基于这种预测来调节阈值。他们指出这种自动阈值调节后的识别率与手工设置阈值的识别率相若,然而,上述反馈信号的具体机制并未给出,并且在他们后来的研究中承认这种自

动阈值调节是很困难的【8】。

Hildebrandt将神经认知机看作是一种线性相关分类器,也通过修改阈值以使神经认知机成为最优的分类器。Lovell应用Hildebrandt 的训练方法却没有成功。对此,Hildebrandt解释的是,该方法只能应用于输出层,而不能应用于网络的每一层。事实上,Hildebrandt没有考虑信息在网络传播中会逐层丢失。

Van Ooyen和Niehuis为提高神经认知机的区别能力引入了一个

新的参数。事实上,该参数作为一种抑制信号,抑制了神经元对重复激励特征的激励。多数神经网络在权值中记忆训练信息。根据

Hebb学习规则,某种特征训练的次数越多,在以后的识别过程中就越容易被检测。也有学者将进化计算理论与神经认知机结合【9】,通过减弱对重复性激励特征的训练学习,而使得网络注意那些不同的特征以助于提高区分能力。上述都是神经认知机的发展过程,而卷积神经网络可看作是神经认知机的推广形式,神经认知机是卷积神经网络的一种特例。

卷积神经网络本身可采用不同的神经元和学习规则的组合形式。其中一种方法是采用M-P神经元和BP学习规则的组合,常用于邮政编码识别中。还有一种是先归一化卷积神经网络,然后神经元计算出用输入信号将权值和归一化处理后的值,再单独训练每个隐层得到权值,最后获胜的神经元输出活性,这个方法在处理二值数字图像时比较可行,但没有在大数据库中得到验证。第三种方法综合前两种方法的优势,即采用McCulloch-Pitts神经元代替复杂的基于神经认知

机的神经元。(在该方法中,网络的隐层和神经认知机一样,是一层一层训练的,但是回避了耗时的误差反向传播算法。)这种神经网络被称为改进的神经认知机。随后神经认知机和改进的神经认知机作为卷积神经网络的例子,广泛用于各种识别任务中,比如大数据库的人脸识别和数字识别。下面详细介绍卷积神经网络的原理、网络结构及训练算法。

2 卷积神经网络

2.1 网络结构

卷积神经网络是一个多层的神经网络,每层由多个二维平面组成,而每个平面由多个独立神经元组成。网络中包含一些简单元和复杂元,分别记为S-元和C-元。S-元聚合在一起组成S-面,S-面聚合在一起组成S-层,用U s表示。C-元、C-面和C-层(U s)之间存在类似的关系。网络的任一中间级由S-层与C-层串接而成,而输入级只含一层,它直接接受二维视觉模式,样本特征提取步骤已嵌入到卷积神经网络模型的互联结构中。一般地,U s为特征提取层,每个神经元的输入与前一层的局部感受野相连,并提取该局部的特征,一旦该局部特征被提取后,它与其他特征间的位置关系也随之确定下来;U c是特征映射层,网络的每个计算层由多个特征映射组成,每个特征映射为一个平面,平面上所有神经元的权值相等。特征映射结构采用影响函数核小的sigmoid函数作为卷积网络的激活函数,使得特征映射具有位移不变性。此外,由于一个映射面上的神经元共享权值,因而减少了网络自由参数的个数,降低了网络参数选择的复杂度。卷积神经

网络中的每一个特征提取层(S-层)都紧跟着一个用来求局部平均与二次提取的计算层(C-层),这种特有的两次特征提取结构使网络在识别时对输入样本有较高的畸变容忍能力【10】。

网络中神经元的输出连接值符合“最大值检出假说”【15】,(即在某一小区域内存在的一个神经元集合中,只有输出最大的神经元才强化输出连接值。所以若神经元近旁存在有输出比其更强的神经元时,其输出连接值将不被强化。)根据上述假说,就(限定了只有一个神经元会发生强化。)卷积神经网络的种元就是某S-面上最大输出的S-元,它不仅可以使其自身强化,而且还控制了邻近元的强化结果。因而,所有的S-元渐渐提取了几乎所有位置上相同的特征。在卷积神经网络早期研究中占主导的无监督学习中,训练一种模式时需花费相当长的时间去自动搜索一层上所有元中具有最大输出的种元,而现在的有监督学习方式中,训练模式同它们的种元皆由教师设定。

图1是文献[12]中卷积神经网络的典型结构图。将原始图像直接输入到输入层(U c1),原始图像的大小决定了输入向量的尺寸,神经元提取图像的局部特征,因此每个神经元都与前一层的局部感受野相连。文中使用了4层网络结构,隐层由S-层和C-层组成。每层均包含多个平面,输入层直接映射到U s2层包含的多个平面上。每层中各平面的神经元提取图像中特定区域的局部特征,如边缘特征,方向特征等,在训练时不断修正S-层神经元的权值。同一平面上的神经元权值相同,这样可以有相同程度的位移、旋转不变性。S-层中每个神经元局部输入窗口的大小均为5x5,由于同一个平面上的神经元共享一

个权值向量,所以从一个平面到下一个平面的映射可以看作是作卷积运算,S-层可看作是模糊滤波器,起到二次特征提取的作用。隐层与隐层之间空间分辨率递减,而每层所含的平面数递增,这样可用于检测更多的特征信息。

图1 卷积神经网络结构图

Fig.1 The structure of convolutional neural network

2.2 神经元模型

在卷积神经网络中,只有S-元间的输入连接是可变的,而其他元的输入连接是固定的。用U sl (k l ,n )表示第l 级,第k l 个S-面上,

一个S-元的输出,用U cl (k l ,n)表示在该级第k l 个C-面上一个C-元

的输出。其中,n 是一个二维坐标,代表输入层中神经元的感受野所在位置,在第一级,感受野的面积较小,随后随着l 的增大而增加。

()()()()()()()()?????

???????-++++=∑∑--∈---111,,,1,111111n u k b k r k r v n k u k k v a k r n k u vl l l K k A v l cl l l l sl l l l φ

(2.1)

式(2.1)中a l (v ,k l-1,k )和b l (k)分别表示兴奋性输入和抑制

性输入的连接系数;r l (k)控制特征提取的选择性,其值越大,对噪音和特征畸变的容错性越差,它是一常量,它控制着位于每一S-层处的单个抑制子平面中每个神经元的输入: r l (k)的值越大,与抑制

性成比例的兴奋性就得越大,以便能产生一个非零输出,换句话说就是相当好的匹配才一能激活神经元,然而因为r l (k)还需乘以φ(),

所以r l 值越大就能产生越大的输出,相反,小的r l (k)值允许不太匹

配的神经元兴奋,但它只能产生一个比较小的输出;φ(x)为非线性函数。v 是一个矢量,表示处于n 感受野中的前层神经元n 的相对位置,A l 确定S 神经元要提取特征的大小,代表n 的感受野。所以式中

对v 的求和也就包含了指定区域当中所有的神经元;外面对于勺k l-1的求和,也就包含了前一级的所有子平面,因此在分子中的求和项有时也被称作兴奋项,实际上为乘积的和,输入到n 的神经元的输出都

乘上它们相应的权值然后再输出到n c 。

()?

??<≥=0,00,x x x x φ (2.2)

式(2.2)表示的是指定某级(第l 级)、某层(S-层)、某面(第k l 个S-面)、某元(向量为n 处)的一个输出。对于一个S-元的作用函数可分为两部分,即兴奋性作用函数和抑制性作用函数。兴奋性作用使得膜电位上升,而抑制性作用起分流作用。

兴奋性作用为:

()()∑∑--∈---+11,,,111l l l K k A v l cl l l

v n k u k k v a

(2.3)

S-元与其前一级C-层的所有C-面均有连接,所连接的C-元个数由该S-级的参数感受野A l 唯一确定。

网络中另一个重要的神经元是假设存在的抑制性神经元V-元U vl (n),它位于S-面上满足以下三个条件:环元的抑制作用影响整个

网络的运作;C-元与V-元间存在着固定的连接;V-元的输出事先设为多个C-元输出的平均值。可以用它来表示网络的抑制性作用,发送一个抑制信号给U sl (k l ,n )神经元,从与U sl (k l ,n )类似的元接

收它的输入连接值,并输出:

()()()2112111,???? ??+=∑∑--∈--l l l K k A v l cl l vl v n k u v c n u

权c l (v)是位于V —元感受野中的v 处的神经元相连的权值,不需要训

练这些

值,但它们应随着│v │的增加而单调减小。因此,选择式2.5的归一化权值。

r l l C c c ='

(2.5)

式2.5中的归一化常量C 由式2.6给出,其中:r(v)是从v 处到感受野中心的

归一化距离:

∑∑--∈=11)()(l l j K K A v v r l a l C

(2.6) C 神经元的输出由式2.7给出:

????????????-+++=∑∑=∈-=1)(1),()(),(1),(111n V v n k u v d k k j n k u sl K K D v l st l l l l l d t l t ψ

(2.7)

上式中ψ(x)为:

?????<≥+=0,00,)(x x x

x x βψ

式中β为一常量。

k l 是第l 级中的S 子平面的数量。D l 是C —元的感受野。因此,它和

特征的大小相对应。d l (v)是固定兴奋连接权的权值,它是│v │的单调递减函数。如果第k l 个S 神经元子平面从第k l-1子平面处收到信号,那么j l (k l ,k l-1)的值为,1否则为0。

最后,S _层的V s 神经元的输出为

∑∑--=∈+=111),()(1l l t K K V v j sl l

st v n k u v dl K V

(2.9) 图2为卷积神经网络中不同神经元之间的连接关系图,从图中可以很清楚地看出各种不同神经元之间的连接关系。

图2 卷积神经网络中不同神经元间的连接

Fig.2 The connections convolutional neural network among different

neurons

2.3 卷积网络的训练过程

神经网络用于模式识别的主流是有指导学习网络,无指导学习网络更多的是用于聚类分析。对于有指导的模式识别,由于任一样本的类别是已知的,样本在空间的分布不再是依据其自然分布倾向来划

分,而是要根据同类样本在空间的分布及不同类样本之间的分离程度找一种适当的空间划分方法,或者找到一个分类边界,使得不同类样本分别位于不同的区域内。这就需要一个长时间且复杂的学习过程,不断调整用以划分样本空间的分类边界的位置,使尽可能少的样本被划分到非同类区域中。由于本文主要是检测图像中的人脸,所以可将样本空间分成两类:样本空间和非样本空间,因而本文所使用的学习网络也是有指导的学习网络。卷积网络在本质上是一种输入到输出的映射,它能够学习大量的输入与输出之间的映射关系,而不需要任何输入和输出之间的精确的数学表达式,只要用已知的模式对卷积网络加以训练,网络就具有输入输出对之间的映射能力。卷积网络执行的是有导师训练,所以其样本集是由形如:(输入向量,理想输出向量)的向量对构成的。所有这些向量对,都应该是来源于网络即将模拟的系统的实际“运行”结果。它们可以是从实际运行系统中采集来的。在开始训练前,所有的权都应该用一些不同的小随机数进行初始化。“小随机数”用来保证网络不会因权值过大而进入饱和状态,从而导致训练失败;“不同”用来保证网络可以正常地学习。实际上,如果用相同的数去初始化权矩阵,则网络无能力学习。

训练算法主要包括4步,这4步被分为两个阶段:

第一阶段,向前传播阶段:

①从样本集中取一个样本(X,Y p),将X输入网络;

②计算相应的实际输出O p。

在此阶段,信息从输入层经过逐级的变换,传送到输出层。这个

过程也是网络

在完成训练后正常运行时执行的过程。在此过程中,网络执行的是由式(2.7)计算:

O p =F n (…(F 2(F 1(X p W (1))W (2))…)W (n ))

第二阶段,向后传播阶段

①计算实际输出O p 与相应的理想输出Y p 的差;

②按极小化误差的方法调整权矩阵。

这两个阶段的工作一般应受到精度要求的控制,在这里,用式(2.8)计算Ep 。

作为网络关于第p 个样本的误差测度。而将网络关于整个样本集的误差测度定义为:

E=∑Ep 。

2

1)(21∑=-=m j pj pj p o y E (2.8)

如前所述,之所以将此阶段称为向后传播阶段,是对应于输入信号的正常传播而言的。因为在开始调整神经元的连接权时,只能求出输出层的误差,而其他层的误差要通过此误差反向逐层后推才能得到。有时候也称之为误差传播阶段。为了更清楚地说明本文所使用的卷积神经网络的训练过程,首先假设输入层、中间层和输出层的单元数分别是N 、L 和M 。X=(x0,x1,…,xN)是加到网络的输入矢量,H=(h0,h1,…,hL)是中间层输出矢量,Y=(y0,y1,…,yM)是网络的实际输出矢量,并且用D=(d0,d1,…,dM)来表示训练组中各模式的目标输出

矢量输出单元i 到隐单元j 的权值是V ij ,而隐单元j 到输出单元k 的权值是W jk 。另外用θk 和φj 来分别表示输出单元和隐含单元的阈值。

于是,中间层各单元的输出为式(2.9):

)

(10∑-=+=N i j i ij j x V f h φ

(2.9)

而输出层各单元的输出是式(2.10):

k

L j j u k h W f y θ+=∑-=10

(2.10)

其中f(*)是激励函数采用S 型函数式(2.11):

e kx x

f -+=11

)( (2.11)

在上述条件下,网络的训练过程如下:

1)选定训练组。从样本集中分别随机地选取300个样本作为训练组。

2)将各权值V ij ,W jk 和阈值φj ,θk 置成小的接近于0的随机值,并初始化

精度控制参数ε和学习率α。

3)从训练组中取一个输入模式X 加到网络,并给定它的目标输出矢量D 。

4)利用式(2.9)计算出一个中间层输出矢量H ,再用式(2.10)计算出网络的实际输出矢Y 。

5)将输出矢量中的元素y k 与目标矢量中的元素d k 进行比较,计

算出M 个输出误差项式(2.12):

)1()(k k k k k y y y d --=δ

(2.12)

对中间层的隐单元也计算出L 个误差项式(2.13):

jk M k k j j j W h h ∑-=-=1

)1(δδ

(2.13)

6)依次计算出各权值的调整量式(2.14)和式(2.15):

j

k jk jk h n W L n W **)1)1((*))1/(()(δα+-?+=? (2.14)

j

k ij ij h n V N n V **)1)1((*))1/(()(δα+-?+=? (2.15)

和阈值的调整量式(2.16)和(2.17):

k k k n L n δθαθ*)1)1((*))1/(()(+-?+=?

(2.16) j j j n L n δφαφ*)1)1((*))1/(()(+-?+=? (2.17)

7)调整权值式(2.18)和式(2.19):

)()()1(n W n W n W jk jk jk ?+=+

(2.18) )()()1(n V n V n V ij ij ij ?+=+

(2.19) 调整阈值式(2.20)和(2.21):

)()()1(n n n k k k θθθ?+=+

(2.20)

)()()1(n n n j j j φφφ?+=+

(2.21)

8)当k 每经历1至M 后,判断指标是否满足精度要求:E ≤ε,其中E 是 总误差函数,且210

)(21k M k k y d E -=∑-=。如果不满足,就返回(3),继续迭代。如果满

足就进入下一步。

9)训练结束,将权值和阈值保存在文件中。这时可以认为各个权值已经达稳

定,分类器形成。再一次进行训练时,直接从文件导出权值和阈值进行训练,不需

要进行初始化。

2.4 卷积神经网络的优点

卷积神经网络CNN 主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。由于CNN 的特征检测层通过训练数据进行学习,所以在使用CNN 时,避免了显示的特征抽取,而隐式地从训练数据中进行学习;再者由于同一特征映射面上的神经元权值相同,所以网络可以并行学习,这也是卷积网络相对于神经元彼此相连网络的一大优势。卷积神经网络以其局部权值共享的特殊结构在语音识别和图像处理方面有着独特的优越性,其布局更接近于实际的生物神经网络,权值共享降低了网络的复杂性,特别是多维输入向量的图像可以直接输入网络这一特点避免了特征提取和分类过程中数据重建的复杂度。

流的分类方式几乎都是基于统计特征的,这就意味着在进行分辨前必须提取某些特征。然而,显式的特征提取并不容易,在一些应用问题中也并非总是可靠的。卷积神经网络,它避免了显式的特征取样,隐式地从训练数据中进行学习。这使得卷积神经网络明显有别于其他基于神经网络的分类器,通过结构重组和减少权值将特征提取功能融合进多层感知器。它可以直接处理灰度图片,能够直接用于处理基于图像的分类。

卷积网络较一般神经网络在图像处理方面有如下优点: a) 输入图像和网络的拓扑结构能很好的吻合;b) 特征提取和模式分类同时

进行,并同时在训练中产生;c)权重共享可以减少网络的训练参数,使神经网络结构变得更简单,适应性更强。

3 卷积神经网络的应用

3.1基于卷积网络的形状识别

物体的形状是人的视觉系统分析和识别物体的基础,几何形状是物体的本质特征的表现,并具有平移、缩放和旋转不变等特点,所以在模式识别领域,对于形状的分析和识别具有十分重要的意义,而二维图像作为三维图像的特例以及组成部分,因此二维图像的识别是三维图像识别的基础。物体形状的识别方法可以归纳为如下两类,其中,第一类是基于物体边界形状的识别,这种边界的特征主要有周长、角、弯曲度、宽度、高度、直径等,第二类是基于物体所覆盖区域的形状识别,这种区域的特征主要有面积、圆度、矩特征等,上述两类方法都适用于物体形状的结构或区域的识别。卷积神经网络也是一种基于物体边界形状的识别,它既可以识别封闭形状同时对不封闭形状也有较高的识别率。

图3 试验用卷积神经网络的结构图

Fig.3 The structure of convolutional neural network

图3 是所用的网络结构,U0是输入层,U c4是识别层。Us为特征提取层,U s1的输入是光感受器的像素位图,该层只是提取一些相对简单的像素特征,随后几层的S-元提取一些更为复杂的像素特征,随着层数的增加,提取的特征也相应递增;Uc是特征映射层,提取高阶特征,提取这些高阶特征时不需要提取像简单特征那样的精确位置信息。

网络中S-元的闭值是预先设定值,训练时权值的更新基于Fukushima提出

的增强型学习规则,如式(2.10)所示,网络的训练方式采用的是无监督学习方式。

图4与图5是部分实验样本图

图4部分训练样本图

Fig.4 Part of the training sample plans

图5部分测试样本图

Fig.5 Part of the test sample plans

样本分为三角形,四边形,八边形,圆形四类,每类10个共80个样本,实验训练时采用40个样本,测试时采用剩余的40个样本,最终的识别结果如表2所示。

表1 训练后网络参数

Table1 Network parameters after training

表2 识别结果

Table3.2 Recognition results

识别错误样本如图6所示:

图6测试出错样本

Fig.6 The sample error in test 识别错误的原因是由于训练所用样本模式较少,不能覆盖所有的圆形模式,以至于该测试模式输入网络时,与之相近的四边形模式获胜,最终得到错误的输出结果。这里采用卷积神经网络进行形状识别目的主要是为了验证卷积神经网络的模式识别能力,所以虽然采用的

卷积神经网络Convolutional Neural Networks(CNN)

卷积神经网络Convolutional Neural Networks(CNN)一、什么是卷积 首先回顾一下,数字图像处理中我们用卷积模板和原始图像的像素卷积。过程如下:Step 1、先将模板旋转180度(又称折叠) Step 2、然后让模板依次和原始图像重叠,并且计算重叠部分的数值乘积之和 以2D为例 先对模板K做折叠,然后依次覆盖图像I,并且计算重叠部分的数值乘积之和 依次进行到最后,会多出一圈,得到最后的卷积结果

卷积的意义(图像处理而言);对图像使用不同的卷积模板,对图像做不同的处理。比如平滑模板可以使图像模糊,并且可以减少噪声、锐化模板可以使图像的轮廓变得清晰。 二、卷积网络的结构 2.1 从BP网络到卷积网络 回想一下BP神经网络。BP网络每一层节点是一个线性的一维排列状态,层与层的网络节点之间是全连接的。这样设想一下,如果BP网络中层与层之间的节点连接不再是全连接,而是局部连接的。这样,就是一种最简单的一维卷积网络。如果我们把上述这个思路扩展到二维,这就是我们在大多数参考资料上看到的卷积神经网络。具体参看下图: 图1:全连接的2D 网络(BP网络)图2:局部连接的2D网络(卷积网络) 现在我们考虑单隐层结构, 上图左:全连接网络。如果我们有1000x1000像素的图像,有1百万个隐层神经元,每个隐层神经元都连接图像的每一个像素点,就有1000x1000x1000000=10^12个连接,也就是10^12个权值参数。上图右:局部连接网络,每一个节点与上层节点同位置附近10x10的窗口相连接,则1百万个隐层神经元就只有100w乘以100,即10^8个参数。其权值连接个数比原来减少了四个数量级。 因此,卷积网络降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。

神经网络最新发展综述

神经网络最新发展综述 学校:上海海事大学 专业:物流工程 姓名:周巧珍 学号:201530210155

神经网络最新发展综述 摘要:作为联接主义智能实现的典范,神经网络采用广泛互联的结构与有效的学习机制来模拟人脑信息处理的过程,是人工智能发展中的重要方法,也是当前类脑智能研究中的有效工具。目前,模拟人脑复杂的层次化认知特点的深度学习成为类脑智能中的一个重要研究方向。通过增加网络层数所构造的“深层神经网络”使机器能够获得“抽象概念”能力,在诸多领域都取得了巨大的成功,又掀起了神经网络研究的一个新高潮。本文分8个方面综述了其当前研究进展以及存在的问题,展望了未来神经网络的发展方向。 关键词: 类脑智能;神经网络;深度学习;大数据 Abstract: As a typical realization of connectionism intelligence, neural network, which tries to mimic the information processing patterns in the human brain by adopting broadly interconnected structures and effective learning mechanisms, is an important branch of artificial intelligence and also a useful tool in the research on brain-like intelligence at present. Currently, as a way to imitate the complex hierarchical cognition characteristic of human brain, deep learning brings an important trend for brain-like intelligence. With the increasing number of layers, deep neural network entitles machines the capability to capture “abstract concepts” and it has achieved great success in various fields, leading a new and advanced trend in neural network research. This paper summarizes the latest progress in eight applications and existing problems considering neural network and points out its possible future directions. Key words : artificial intelligence; neural network; deep learning; big data 1 引言 实现人工智能是人类长期以来一直追求的梦想。虽然计算机技术在过去几十年里取得了长足的发展,但是实现真正意义上的机器智能至今仍然困难重重。伴随着神经解剖学的发展,观测大脑微观结构的技术手段日益丰富,人类对大脑组织的形态、结构与活动的认识越来越深入,人脑信息处理的奥秘也正在被逐步揭示。如何借助神经科学、脑科学与认知科学的研究成果,研究大脑信息表征、转换机理和学习规则,建立模拟大脑信息处理过程的智能计算模型,最终使机器掌握人类的认知规律,是“类脑智能”的研究目标。 类脑智能是涉及计算科学、认知科学、神经科学与脑科学的交叉前沿方向。类脑智能的

(完整版)卷积神经网络CNN原理、改进及应用

卷积神经网络(CNN) 一、简介 卷积神经网络(Convolutional Neural Networks,简称CNN)是近年发展起来,并引起广泛重视的一种高效的识别方法。 1962年,Hubel和Wiesel在研究猫脑皮层中用于局部敏感和方向选择的神经元时发现其独特的局部互连网络结构可以有效地降低反馈神经网络的复杂性,继而提出了卷积神经网络[1](Convolutional Neural Networks-简称CNN)7863。现在,CNN已经成为众多科学领域的研究热点之一,特别是在模式分类领域,由于该网络避免了对图像的复杂前期预处理,可以直接输入原始图像,因而得到了更为广泛的应用。 Fukushima在1980年基于神经元间的局部连通性和图像的层次组织转换,为解决模式识别问题,提出的新识别机(Neocognitron)是卷积神经网络的第一个实现网络[2]。他指出,当在不同位置应用具有相同参数的神经元作为前一层的patches时,能够实现平移不变性1296。随着1986年BP算法以及T-C问题[3](即权值共享和池化)9508的提出,LeCun和其合作者遵循这一想法,使用误差梯度(the error gradient)设计和训练卷积神经网络,在一些模式识别任务中获得了最先进的性能[4][5]。在1998年,他们建立了一个多层人工神经网络,被称为LeNet-5[5],用于手写数字分类,这是第一个正式的卷积神经网

络模型3579。类似于一般的神经网络,LeNet-5有多层,利用BP算法来训练参数。它可以获得原始图像的有效表示,使得直接从原始像素(几乎不经过预处理)中识别视觉模式成为可能。然而,由于当时大型训练数据和计算能力的缺乏,使得LeNet-5在面对更复杂的问题时,如大规模图像和视频分类,不能表现出良好的性能。 因此,在接下来近十年的时间里,卷积神经网络的相关研究趋于停滞,原因有两个:一是研究人员意识到多层神经网络在进行BP训练时的计算量极其之大,当时的硬件计算能力完全不可能实现;二是包括SVM在内的浅层机器学习算法也渐渐开始暂露头脚。直到2006年,Hinton终于一鸣惊人,在《科学》上发表文章,使得CNN再度觉醒,并取得长足发展。随后,更多的科研工作者对该网络进行了改进。其中,值得注意的是Krizhevsky等人提出的一个经典的CNN架构,相对于图像分类任务之前的方法,在性能方面表现出了显著的改善2674。他们方法的整体架构,即AlexNet[9](也叫ImageNet),与LeNet-5相似,但具有更深的结构。它包括8个学习层(5个卷积与池化层和3个全连接层),前边的几层划分到2个GPU上,(和ImageNet 是同一个)并且它在卷积层使用ReLU作为非线性激活函数,在全连接层使用Dropout减少过拟合。该深度网络在ImageNet大赛上夺冠,进一步掀起了CNN学习热潮。 一般地,CNN包括两种基本的计算,其一为特征提取,每个神经元的输入与前一层的局部接受域相连,并提取该局部的特征。一旦该

基于卷积神经网络的文本分类研究综述

第34卷第3期2019年5月 内蒙古民族大学学报(自然科学版) Journal of Inner Mongolia University for Nationalities Vol.34No.3 May2019 基于卷积神经网络的文本分类研究综述 裴志利1,阿茹娜2,姜明洋2,卢奕南3 (1.内蒙古民族大学计算机科学与技术学院,内蒙古通辽028043;2.内蒙古民族大学数学学院,内蒙古通辽028000;3.吉林大学计算机科学与技术学院,吉林长春130012) [摘要]随着互联网及其相关技术的高速发展,网络数据呈现出井喷式的增长,其中主要以文本的形式大量 存在,数据在这种增长趋势下,文本分类已经成为越来越重要的研究课题.如今,采用深度学习技术对文本进 行表示受到研究者的极大关注.如采用卷积神经网络对文档进行表示和分类等自然语言处理.本文主要对基 于卷积神经网络的文本分类方法进行了研究,介绍了几个具有代表性的卷积神经网络模型结构.最后提出了 对基于该方法文本分类的展望. [关键词]卷积神经网络;文本分类;深度学习 [中图分类号]TP393[文献标识码]A[文章编号]1671-0815(2019)03-0206-05 Survey of Text Classification Research Based on Convolutional Neural Networks PEI Zhi-li1,Aruna2,JIANG Ming-yang2,LU Yi-nan3 (1.College of Computer Science and Technology,Inner Mongolia University for Nationalities,Tongliao028043,China; 2.College of Mathematics,Inner Mongolia University for Nationalities,Tongliao028000,China; 3.College of Computer Science and Technology,Jilin University,Changchun130012,China) Abstract:With the rapid development of the Internet and related technologies,network data has shown a spurt growth trend,which mainly exists in the form of text.Under this growth trend,text classification has become an increasingly important research topic.The use of deep learning technology to express the text has received great attention.For example, natural language processing such as convolutional neural network is used to represent and classify documents.The text classification method based on convolutional neural network is investigated.Several representative convolutional neural network model structures are introduced.Finally,the prospect of text classification based on this method is proposed. Key wrrds:Convolutional neural network;Text classification;Deep learning 0引言 随着网络媒体的出现,用户生成的内容以飞快的速度填充数据资源,这些数据的自动处理引起了研究者的巨大关注.文本分类是自然语言处理领域的重要任务,包括情感分析、对话分析、文献综述、机器翻译等[1].文本分类具有多种方法,传统的机器学习分类算法有支持向量机算法(Support Vector Machine,SVM)[2]、朴素贝叶斯算法(Naive Bayesian Classifier,NBC)[3]、决策树算法(Decision Tree,DT)[4]、K-最近邻算法(K-Nearest Neighbor,KNN)[5]等,采用传统算法文本分类时需要人工进行特征提取,耗费时间和精 基金项目:国家自然科学基金项目(61672301);内蒙古自治区“草原英才”工程产业创新人才团队(2017);内蒙古自治区科技创新引导奖励资金项目(2016);内蒙古民族大学特色交叉学科群建设项目(MDXK004);2019年度内蒙古自治区高等学校“青年科技英才支持计划”(NJYT-19-B18) 作者简介:裴志利,内蒙古民族大学计算机科学与技术学院教授,博士. DOI:10.14045/https://www.sodocs.net/doc/0d4377921.html,ki.15-1220.2019.03.005

基于深度卷积神经网络的图像分类

SHANGHAI JIAO TONG UNIVERSITY 论文题目:基于卷积神经网络的自然图像分类技术研究 姓名: 高小宁 专业:控制科学与工程

基于卷积神经网络的自然图像分类技术研究 摘要:卷积神经网络已在图像分类领域取得了很好的效果,但其网络结构及参数的选择对图像分类的效果和效率有较大的影响。为改善卷积网络的图像分类性能,本文对卷积神经网络模型进行了详细的理论分析,并通过大量的对比实验,得出了影响卷积网络性能的因素。结合理论分析及对比实验,本文设计了一个卷积层数为8层的深度卷积网络,并结合Batch Normalization、dropout等方法,在CIFAR-10数据集上取得了88.1%的分类精度,有效地提高了卷积神经网络的分类效果。 关键词:卷积神经网络,图像分类,Batch Normalization,Dropout Research on Natural Image Classification Based on Convolution Neural Network Abstract: Convolution neural network has achieved very good results in image classification, but its network structure and the choice of parameters have a greater impact on image classification efficiency and efficiency. In order to improve the image classification performance of the convolution network, a convolutional neural network model is analyzed in detail, and a large number of contrastive experiments are conducted to get the factors that influence the performance of the convolution network. Combining the theory analysis and contrast experiment, a convolution layer depth convolution network with 8 layers is designed. Combined with Batch Normalization and dropout, 88.1% classification accuracy is achieved on CIFAR-10 dataset. Which improves the classification effect of convolution neural network. Key Words:Convolution neural network(CNN), image classification, Batch Normalization,Dropout

卷积神经网络CNN从入门到精通

卷积神经网络CNN从入门到精通 卷积神经网络算法的一个实现 前言 从理解卷积神经到实现它,前后花了一个月时间,现在也还有一些地方没有理解透彻,CNN还是有一定难度的,不是看哪个的博客和一两篇论文就明白了,主要还是靠自己去专研,阅读推荐列表在末尾的参考文献。目前实现的CNN在MINIT数据集上效果还不错,但是还有一些bug,因为最近比较忙,先把之前做的总结一下,以后再继续优化。 卷积神经网络CNN是Deep Learning的一个重要算法,在很多应用上表现出卓越的效果,[1]中对比多重算法在文档字符识别的效果,结论是CNN优于其他所有的算法。CNN在手写体识别取得最好的效果,[2]将CNN应用在基于人脸的性别识别,效果也非常不错。前段时间我用BP神经网络对手机拍照图片的数字进行识别,效果还算不错,接近98%,但在汉字识别上表现不佳,于是想试试卷积神经网络。 1、CNN的整体网络结构 卷积神经网络是在BP神经网络的改进,与BP类似,都采用了前向传播计算输出值,反向传播调整权重和偏置;CNN与标准的BP最大的不同是:CNN中相邻层之间的神经单元并不是全连接,而是部分连接,也就是某个神经单元的感知区域来自于上层的部分神经单元,而不是像BP那样与所有的神经单元相连接。CNN的有三个重要的思想架构: 局部区域感知 权重共享 空间或时间上的采样 局部区域感知能够发现数据的一些局部特征,比如图片上的一个角,一段弧,这些基本特征是构成动物视觉的基础[3];而BP中,所有的像素点是一堆混乱的点,相互之间的关系没有被挖掘。 CNN中每一层的由多个map组成,每个map由多个神经单元组成,同一个map 的所有神经单元共用一个卷积核(即权重),卷积核往往代表一个特征,比如某个卷积和代表一段弧,那么把这个卷积核在整个图片上滚一下,卷积值较大的区域就很有可能是一段弧。注意卷积核其实就是权重,我们并不需要单独去计算一个卷积,而是一个固定大小的权重矩阵去图像上匹配时,这个操作与卷积类似,因此我们称为卷积神经网络,实际上,BP也可以看做一种特殊的卷积神经网络,只是这个卷积核就是某层的所有权重,即感知区域是整个图像。权重共享策略减少了需要训练的参数,使得训练出来的模型的泛华能力更强。 采样的目的主要是混淆特征的具体位置,因为某个特征找出来后,它的具体位置已经不重要了,我们只需要这个特征与其他的相对位置,比如一个“8”,当我们得到了上面一个"o"时,我们不需要知道它在图像的具体位置,只需要知道它下面又是一个“o”我们就可以知道是一个'8'了,因为图片中"8"在图片中偏左或者偏右都不影响我们认识它,这种混淆具体位置的策略能对变形和扭曲的图片进行识别。 CNN的这三个特点是其对输入数据在空间(主要针对图像数据)上和时间(主要针对时间序列数据,参考TDNN)上的扭曲有很强的鲁棒性。CNN一般采用卷积层与

综述卷积神经网络:从基础技术到

1 引言 1.1 动机 过去几年来,计算机视觉研究主要集中在卷积神经网络(常简称为ConvNet 或CNN)上。这些工作已经在广泛的分类和回归任务上实现了新的当前最佳表现。相对而言,尽管这些方法的历史可以追溯到多年前,但对这些系统得到出色结果的方式的理论理解还很滞后。事实上,当前计算机视觉领域的很多成果都是将CNN 当作黑箱使用,这种做法是有效的,但其有效的原因却非常模糊不清,这严重满足不了科学研究的要求。尤其是这两个可以互补的问题:(1)在被学习的方面(比如卷积核),究竟被学习的是什么?(2)在架构设计方面(比如层的数量、核的数量、池化策略、非线性的选择),为什么某些选择优于另一些选择?这些问题的答案不仅有利于提升我们对 CNN 的科学理解,而且还能提升它们的实用性。 此外,目前实现CNN 的方法需要大量训练数据,而且设计决策对结果表现有很大的影响。更深度的理论理解应该能减轻对数据驱动的设计的依赖。尽管已有实证研究调查了所实现的网络的运行方式,但到目前为止,这些结果很大程度上还局限在内部处理过程的可视化上,目的是为了理解 CNN 中不同层中发生的情况。 1.2 目标 针对上述情况,本报告将概述研究者提出的最突出的使用多层卷积架构的方法。要重点指出的是,本报告将通过概述不同的方法来讨论典型卷积网络的各种组件,并将介绍它们的设计决策所基于的生物学发现和/或合理的理论基础。此外,本报告还将概述通过可视化和实证研究来理解 CNN 的不同尝试。本报告的最终目标是阐释 CNN 架构中涉及的每一个处理层的作用,汇集我们当前对CNN 的理解以及说明仍待解决的问题。

1.3 报告提纲 本报告的结构如下:本章给出了回顾我们对卷积网络的理解的动机。第2 章将描述各种多层网络并给出计算机视觉应用中使用的最成功的架构。第3 章将更具体地关注典型卷积网络的每种构造模块,并将从生物学和理论两个角度讨论不同组件的设计。最后,第4 章将会讨论CNN 设计的当前趋势以及理解CNN 的工作,并且还将重点说明仍然存在的一些关键短板。 2 多层网络 总的来说,本章将简要概述计算机视觉领域中所用的最突出的多层架构。需要指出,尽管本章涵盖了文献中最重要的贡献,但却不会对这些架构进行全面概述,因为其它地方已经存在这样的概述了(比如 [17, 56, 90])。相反,本章的目的是为本报告的剩余部分设定讨论基础,以便我们详细展示和讨论当前对用于视觉信息处理的卷积网络的理解。 2.1 多层架构 在近来基于深度学习的网络取得成功之前,最先进的用于识别的计算机视觉系统依赖于两个分离但又互补步骤。第一步是通过一组人工设计的操作(比如与基本集的卷积、局部或全局编码方法)将输入数据变换成合适的形式。对输入的变换通常需要找到输入数据的一种紧凑和/或抽象的表征,同时还要根据当前任务注入一些不变量。这种变换的目标是以一种更容易被分类器分离的方式改变数据。其次,被变换的数据通常用于训练某些类型的分类器(比如支持向量机)来识别输入信号的内容。通常而言,任何分类器的表现都会受到所使用的变换方法的严重影响。 多层学习架构为这一问题带来了不同的前景,这种架构提出不仅要学习分类器,而且要从数据中直接学习所需的变换操作。这种形式的学习通常被称为「表征学习」,当应用在深度多层架构中时即被称为「深度学习」。

卷积神经网络总结

卷积神经网络总结-标准化文件发布号:(9556-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

1 卷积神经网络 卷积神经网络是深度学习的一种,已成为当前图像理解领域的研究热点它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。这个优点在网络的输入是多维图像时表现得更为明显, 图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程. 卷积网络是为识别二维形状而特殊设计的一个多层感知器,这种网络结构对平移、比例缩放以及其他形式的变形具有一定不变性. 在典型的CNN 中,开始几层通常是卷积层和下采样层的交替, 在靠近输出层的最后几层网络通常是全连接网络。卷积神经网络的训练过程主要是学习卷积层的卷积核参数和层间连接权重等网络参数, 预测过程主要是基于输入图像和网络参数计算类别标签。卷积神经网络的关键是:网络结构(含卷积层、下采样层、全连接层等) 和反向传播算法等。在本节中, 我们先介绍典型CNN 的网络结构和反向传播算法, 然后概述常用的其他CNN 网络结构和方法。神经网络参数的中文名称主要参考文献[18] 卷积神经网络的结构和反向传播算法主要参考文献[17] 。 1.1 网络结构 1.1.1 卷积层 在卷积层, 上一层的特征图(Feature map) 被一个可学习的卷积核进行卷积, 然后通过一个激活函数(Activation function), 就可以得到输出特征图. 每个输出特征图可以组合卷积多个特征图的值[17] : ()l l j j x f u = 1j l l l l j j ij j i M u x k b -∈= *+∑ 其中, l j u 称为卷积层l 的第j 个通道的净激活(Netactivation), 它通过对前一层 输出特征图1l j x -进行卷积求和与偏置后得到的, l j x 是卷积层l 的第j 个通道的输 出。()f 称为激活函数, 通常可使用sigmoid 和tanh 等函数。j M 表示用于计算l j u 的输入特征图子集, l ij k 是卷积核矩阵, l j b 是对卷积后特征图的偏置。对于一个输 出特征图l j x ,每个输入特征图1l j x -对应的卷积核l ij k 可能不同,“*”是卷积符号。 1.1.2 下采样层 下采样层将每个输入特征图通过下面的公式下采样输出特征图[17]: ()l l j j x f u = 1()l l l l j j j j u down x b β-=+ 其中, l j u 称为下采样层l 的第j 通道的净激活, 它由前一层输出特征图1l j x -进行 下采样加权、偏置后得到, β是下采样层的权重系数, l j b 是下采样层的偏置项. 符

一文读懂卷积神经网络CNN

一文读懂卷积神经网络CNN ★据说阿尔法狗战胜李世乭靠的是卷积神经网络算法,所以小编找到了一篇介绍该算法的文章,大家可以看一看。★ 自去年七月份以来,一直在实验室负责卷积神经网络(Convolutional Neural Network,CNN),期间配置和使用过theano和cuda-convnet、cuda-convnet2。为了增进CNN的理解和使用,特写此博文,以其与人交流,互有增益。正文之前,先说几点自己对于CNN的感触。先明确一点就是,Deep Learning是全部深度学习算法的总称,CNN是深度学习算法在图像处理领域的一个应用。第一点,在学习Deep learning 和CNN之前,总以为它们是很了不得的知识,总以为它们能解决很多问题,学习了之后,才知道它们不过与其他机器学习算法如svm等相似,仍然可以把它当做一个分类器,仍然可以像使用一个黑盒子那样使用它。第二点,Deep Learning强大的地方就是可以利用网络中间某一层的输出当做是数据的另一种表达,从而可以将其认为是经过网络学习到的特征。基于该特征,可以进行进一步的相似度比较等。第三点,Deep Learning算法能够有效的关键其实是大规模的数据,这一点原因在于每个DL都有众多的参数,少量数据无法将参数训练充分。接下来话不多说,直接奔入主题开始

CNN之旅。卷积神经网络简介(Convolutional Neural Networks,简称CNN)卷积神经网络是近年发展起来,并引起广泛重视的一种高效识别方法。20世纪60年代,Hubel 和Wiesel在研究猫脑皮层中用于局部敏感和方向选择的神经元时发现其独特的网络结构可以有效地降低反馈神经网 络的复杂性,继而提出了卷积神经网络(Convolutional Neural Networks-简称CNN)。现在,CNN已经成为众多科学领域的研究热点之一,特别是在模式分类领域,由于该网络避免了对图像的复杂前期预处理,可以直接输入原始图像,因而得到了更为广泛的应用。K.Fukushima在1980年提出的新识别机是卷积神经网络的第一个实现网络。随后,更多的科研工作者对该网络进行了改进。其中,具有代表性的研究成果是Alexander和Taylor提出的“改进认知机”,该方法综合了各种改进方法的优点并避免了耗时的误差反向传播。一般地,CNN的基本结构包括两层,其一为特征提取层,每个神经元的输入与前一层的局部接受域相连,并提取该局部的特征。一旦该局部特征被提取后,它与其它特征间的位置关系也随之确定下来;其二是特征映射层,网络的每个计算层由多个特征映射组成,每个特征映射是一个平面,平面上所有神经元的权值相等。特征映射结构采用影响函数核小的sigmoid 函数作为卷积网络的激活函数,使得特征映射具有位移不变性。此外,由于一个映射面上的神经元共享权值,因而减少

卷积神经网络 论文版

卷积神经网络 摘要:卷积神经网络是近年来广泛应用于模式识别、图像处理等领域的一种高效识别算法,它具有结构简单、训练参数少和适应性强等特点。本文从卷积神经网络的发展历史开始,详细阐述了卷积神经网络的网络结构、神经元模型和训练算法。在此基础上以卷积神经网络在人脸检测和形状识别方面的应用为例,简单介绍了卷积神经网络在工程上的应用,并给出了设计思路和网络结构。 关键字:模型;结构;训练算法;人脸检测;形状识别 Convolution Neural Network Abstract:Convolution neural network is an efficient recognition algorithm which is widely used in pattern recognition, image processing and other fields recent years.It has a simple structure, few training parameters and good adaptability and other advantages. In this paper, begin with the history of convolutional neural networks,describes the structure of convolutional neural network,neuron models and training algorithms in detail. On this basis,uses the applications of convolutional neural network in face detection and shape recognition as examples, introduces the applications of convolution neural network in engineering, and gives design ideas and network structure. Keywords:Model; Training Algorithm; Advantage; Face detection; Shape recognition 0 引言 卷积神经网络是人工神经网络的一种已成为当前语音分析和图像识别领域的研究热点,它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。卷积网络是为识别二维形状而特殊设计的一个多层感知器,这种网络结构对平移、比例缩放、倾斜或者共他形式的变形具有高度不变性。 1 卷积神经网络的发展历史 1962年Hubel和Wiesel通过对猫视觉皮层细胞的研究,提出了感受野(receptive field)的概念,1984年日本学者Fukushima基于感受野概念提出的神经认知机(neocognitron)可以看作是卷积神经网络的第一个实现网络,也是感受野概念在人工神经网络领域的首次应用。神经认知机将一个视觉模式分解成许多子模式(特征),然后进入分层递阶式相连的特征平面进行处理,它试图将视觉系统模型化,使其能够在即使物体有位移或轻微变形的时候,也能完成识别。神经认知机能够利用位移恒定能力从激励模式中学习,并且可识别这些模式的变化形,在其后的应用研究中,Fukushima将神经认知机主要用于手写数字的识别。随后,国内外的研究人员提出多种卷积神经网络形式,在邮政编码识别和人脸识别方面得到了大规模的应用。 通常神经认知机包含两类神经元,即承担特征抽取的S-元和抗变形的C-元。S-元中涉及两个重要参数,即感受野与阈值参数,前者确定输入连接的数目,后者则控制对特征子模式的反应程度。许多学者一直致力于提高神经认知机的性能的研究:在传统的神经认知机中,每个S-元的感光区中由C-元带来的视觉模糊量呈正态分布。如果感光区的边缘所产生的模糊效果要比中央来得大,S-元将会接受这种非正态模糊所导致的更大的变形容忍性。我们希望得到的是,训练模式与变形刺激模式在感受野的边缘与其中心所产生的效果之间的差异变得越来越大。为了有效地形成这种非正态模糊,Fukushima提出了带双C-元层的改进型神经

深度神经网络全面概述

深度神经网络全面概述从基本概念到实际模型和硬件基础 深度神经网络(DNN)所代表的人工智能技术被认为是这一次技术变革的基石(之一)。近日,由IEEE Fellow Joel Emer 领导的一个团队发布了一篇题为《深度神经网络的有效处理:教程和调研(Efficient Processing of Deep Neural Networks: A Tutorial and Survey)》的综述论文,从算法、模型、硬件和架构等多个角度对深度神经网络进行了较为全面的梳理和总结。鉴于该论文的篇幅较长,机器之心在此文中提炼了原论文的主干和部分重要内容。 目前,包括计算机视觉、语音识别和机器人在内的诸多人工智能应用已广泛使用了深度神经网络(deep neural networks,DNN)。DNN 在很多人工智能任务之中表现出了当前最佳的准确度,但同时也存在着计算复杂度高的问题。因此,那些能帮助DNN 高效处理并提升效率和吞吐量,同时又无损于表现准确度或不会增加硬件成本的技术是在人工智能系统之中广泛部署DNN 的关键。 论文地址:https://https://www.sodocs.net/doc/0d4377921.html,/pdf/1703.09039.pdf 本文旨在提供一个关于实现DNN 的有效处理(efficient processing)的目标的最新进展的全面性教程和调查。特别地,本 文还给出了一个DNN 综述——讨论了支持DNN 的多种平台和架构,并强调了最新的有效处理的技术的关键趋势,这些技术或者只是通过改善硬件设计或者同时改善硬件设计和网络算法以降低DNN 计算成本。本文也会对帮助研究者和从业者快速上手DNN 设计的开发资源做一个总结,并凸显重要的基准指标和设计考量以评估数量快速增长的DNN 硬件设计,还包括学界和产业界共同推荐的算法联合设计。 读者将从本文中了解到以下概念:理解DNN 的关键设计考量;通过基准和对比指标评估不同的DNN 硬件实现;理解不同架构和平台之间的权衡;评估不同DNN 有效处理技术的设计有效性;理解最新的实现趋势和机遇。 一、导语 深度神经网络(DNN)目前是许多人工智能应用的基础[1]。由于DNN 在语音识别[2] 和图像识别[3] 上的突破性应用,使用DNN 的应用量有了爆炸性的增长。这些DNN 被部署到了从自动驾驶汽车[4]、癌症检测[5] 到复杂游戏[6] 等各种应用中。在这许多领域中,DNN 能够超越人类的准确率。而DNN 的出众表现源于它能使用统计学习方法从原始感官数据中提取高层特征,在大量的数据中获得输入空间的有效表征。这与之前使用手动提取特征或专家设计规则的方法不同。 然而DNN 获得出众准确率的代价是高计算复杂性成本。虽然通用计算引擎(尤其是GPU),已经成为许多DNN 处理的砥柱,但提供对DNN 计算更专门化的加速方法也越来越热门。本文的目标是提供对DNN、理解DNN 行为的各种工具、有效加速计算的各项技术的概述。 该论文的结构如下:

卷积神经网络总结

1 卷积神经网络 卷积神经网络是深度学习的一种,已成为当前图像理解领域的研究热点它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。这个优点在网络的输入是多维图像时表现得更为明显, 图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程. 卷积网络是为识别二维形状而特殊设计的一个多层感知器,这种网络结构对平移、比例缩放以及其他形式的变形具有一定不变性. 在典型的CNN 中,开始几层通常是卷积层和下采样层的交替, 在靠近输出层的最后几层网络通常是全连接网络。卷积神经网络的训练过程主要是学习卷积层的卷积核参数和层间连接权重等网络参数, 预测过程主要是基于输入图像和网络参数计算类别标签。卷积神经网络的关键是:网络结构(含卷积层、下采样层、全连接层等) 和反向传播算法等。在本节中, 我们先介绍典型CNN 的网络结构和反向传播算法, 然后概述常用的其他CNN 网络结构和方法。神经网络参数的中文名称主要参考文献 [18] 卷积神经网络的结构和反向传播算法主要参考文献[17] 。 网络结构 卷积层 在卷积层, 上一层的特征图(Feature map) 被一个可学习的卷积核进行卷积, 然后通过一个激活函数(Activation function), 就可以得到输出特征图. 每个输出特征图可以组 合卷积多个特征图的值[17] : ()l l j j x f u = 1j l l l l j j ij j i M u x k b -∈= *+∑ 其中, l j u 称为卷积层l 的第j 个通道的净激活(Netactivation), 它通过对前一层输出 特征图1l j x -进行卷积求和与偏置后得到的, l j x 是卷积层l 的第j 个通道的输出。()f 称为激活函数, 通常可使用sigmoid 和tanh 等函数。j M 表示用于计算l j u 的输入特征图子集, l ij k 是卷积核矩阵, l j b 是对卷积后特征图的偏置。对于一个输出特征图l j x ,每个输入特征图1l j x -对应的卷积核l ij k 可能不同,“*”是卷积符号。 ; 下采样层 下采样层将每个输入特征图通过下面的公式下采样输出特征图[17]: ()l l j j x f u = 1()l l l l j j j j u down x b β-=+ 其中, l j u 称为下采样层l 的第j 通道的净激活, 它由前一层输出特征图1 l j x -进行下采样

卷积神经网络CNN代码解析-matlab

卷积神经网络CNN代码解析 deepLearnToolbox-master是一个深度学习matlab包,里面含有很多机器学习算法,如卷积神经网络CNN,深度信念网络DBN,自动编码AutoEncoder(堆栈SAE,卷积CAE)的作者是Rasmus Berg Palm (rasmusbergpalm@https://www.sodocs.net/doc/0d4377921.html,) 代码下载:https://https://www.sodocs.net/doc/0d4377921.html,/rasmusbergpalm/DeepLearnToolbox 这里我们介绍deepLearnToolbox-master中的CNN部分。 DeepLearnToolbox-master中CNN内的函数: 调用关系为: 该模型使用了mnist的数字mnist_uint8.mat作为训练样本,作为cnn的一个使用样例, 每个样本特征为一个28*28=的向量。

网络结构为: 让我们来看看各个函数: 一、Test_example_CNN: (2) 三、cnntrain.m (5) 四、cnnff.m (6) 五、cnnbp.m (7) 五、cnnapplygrads.m (10) 六、cnntest.m (11) 一、Test_example_CNN: Test_example_CNN: 1设置CNN的基本参数规格,如卷积、降采样层的数量,卷积核的大小、降采样的降幅 2 cnnsetup函数初始化卷积核、偏置等 3 cnntrain函数训练cnn,把训练数据分成batch,然后调用 3.1 cnnff 完成训练的前向过程,

3.2 cnnbp计算并传递神经网络的error,并计算梯度(权重的修改量) 3.3 cnnapplygrads 把计算出来的梯度加到原始模型上去 4 cnntest 函数,测试当前模型的准确率 该模型采用的数据为mnist_uint8.mat, 含有70000个手写数字样本其中60000作为训练样本,10000作为测试样本。把数据转成相应的格式,并归一化。 设置网络结构及训练参数 初始化网络,对数据进行批训练,验证模型准确率 绘制均方误差曲线 二、Cnnsetup.m 该函数你用于初始化CNN的参数。 设置各层的mapsize大小, 初始化卷积层的卷积核、bias 尾部单层感知机的参数设置 * bias统一设置为0

卷积神经网络全面解析之代码详解复习进程

卷积神经网络全面解析之代码详解

卷积神经网络全面解析之代码详解 本文介绍多层感知机算法,特别是详细解读其代码实现,基于python theano,代码来自:Convolutional Neural Networks (LeNet)。 一、CNN卷积神经网络原理简介 要讲明白卷积神经网络,估计得长篇大论,网上有很多博文已经写得很好了,所以本文就不重复了,如果你了解CNN,那可以往下看,本文主要是详细地解读CNN的实现代码。 CNN的最大特点就是稀疏连接(局部感受)和权值共享,如下面两图所示,左为稀疏连接,右为权值共享。稀疏连接和权值共享可以减少所要训练的参数,减少计算复杂度。 至于CNN的结构,以经典的LeNet5来说明:

这个图真是无处不在,一谈CNN,必说LeNet5,这图来自于这篇论文:Gradient-Based Learning Applied to Document Recognition,论文很长,第7页那里开始讲LeNet5这个结构,建议看看那部分。 我这里简单说一下,LeNet5这张图从左到右,先是input,这是输入层,即输入的图片。input-layer到C1这部分就是一个卷积层(convolution运算),C1到S2是一个子采样层(pooling运算),关于卷积和子采样的具体过程可以参考下图: 然后,S2到C3又是卷积,C3到S4又是子采样,可以发现,卷积和子采样都是成对出现的,卷积后面一般跟着子采样。S4到C5之间是全连接的,这就相当于一个MLP的隐含层了(如果你不清楚MLP,参考《DeepLearning tutorial(3)MLP多层感知机原理简介+代码详解》)。C5到F6同样是全连接,也是相当于一个MLP的隐含层。最后从F6到输出output,其实就是一个分类器,这一层就叫分类层。ok,CNN的基本结构大概就是这样,由输入、卷积层、子采样层、全连接层、分类层、输出这些基本“构件”组成,一般根据具体的应用或

相关主题