深度学习优化与识别
作者简介
现任智能感知与计算**联合研究中心主任、智能感知与图像理解***重点实验室主任、智能感知与计算**合作联合实验室主任、“智能信息处理科学与技术”高等学校学科创新引智基地(“111计划”)主任、***科技委**合作部学部委员、中国人工智能学会副理事长、IET西安分会**、IEEE西安分会奖励委员会**、IEEE计算智能协会西安分会**、IEEE GRSS西安分会**,IEEE TGRS副主编、***创新团队首席专家。***学位委员会学科评议组成员、***本科教学水平评估专家。1991年被批准为享受***政府津贴的专家,1996年首批入选**“百千万”人才工程(**、二层次)。当选为全国模范教师、陕西省师德标兵和曾任第八届***代表。 焦李成教授的主要研究方向为智能感知与计算、图像理解与目标识别、深度学习与类脑计算,培养的十余名博士获全国**博士学位论文奖、提名奖及陕西省**博士论文奖。研究成果获包括**自然科学奖二等奖及省部级一等奖以上科技奖励十余项,出版学术专著十余部,五次获****科技图书奖励及全国首届三个一百**图书奖。所发表的论著被他人引用超过25000余篇次,H指数为65。
内容简介
第3章深度卷积神经网络 3.1卷积神经网络的生物机理及数学刻画 卷积神经网络是一种特殊的深度前馈神经网络,为了避免层级之间全连接造成的参数冗余,而导致网络模型的训练依赖相当参数个数的数据量; 它的设计选择局部连接,符合生物神经元的稀疏响应特性(层级之间的稀疏连接,例如在生物视觉神经系统中,神经元的感受野,即接受区域,具有局部响应特性,只有某个局部区域内的刺激才能够激活该神经元),这样便可以大大降低网络模型的参数规模,相对而言,对训练数据量的依赖性降低。 3.1.1生物机理 从生物神经研究的角度来看卷积神经网络的发展可知,1960s年代Hubel和Wiesel等人通过对猫的视觉皮层细胞的研究,提出了感受野(指听觉系统、视觉系统和感觉系统等中枢神经元的一些性质)这个概念; 之后到了20世纪80年代,Fukushima在感受野概念的基础上提出了神经认知机的概念,可以看作是卷积神经网络的**实现,神经认知机将一个视觉模式分解成许多子模式(特征),然后进入分层递阶式相连的特征平面进行处理,它试图将视觉系统模型化,使其能够在即使物体有位移或轻微变形的时候,也能完成识别。 众所周知,视觉皮层(见图3.1)中的初级视觉皮层(即V1区)和中级视觉皮层(即V2区)上的细胞可以分为简单细胞和复杂细胞,其中简单细胞的*大程度响应来自感受野范围内的边缘刺激模式,即感受野较小,呈狭长形,用小光点可以测定,对大面积的弥散光无反应,而对处于拮抗区边缘一定方位和一定宽度的条形刺激有强烈的反应,因此比较适合于检测具有明暗对比的直边,对边缘的位置和方位有严格的选择性; 而复杂细胞有*大的接受域,它对来自确切位置的刺激具有局部不变性,同时对感受野中的位置无严格要求。(本段文献参考http://www.lmbe.seu.edu.cn/biology/bess/biology/chapt16/1625.htm) 不论是视觉皮层中的腹侧视觉通路(回答输入是什么,即What功能)还是背侧视觉通路(回答输入在场景中的哪个位置,即Where功能),对信息的处理都经过初级视觉皮层和中级视觉皮层,其对应的生物响应特性包含: 局部感受野特性(空间局部性、空间方向性、信息选择性); 灵长目动物视觉皮层和猫视觉皮层的电生理实验报告和一些相关模型的研究结果都说明了视觉皮层复杂刺激的表达是采用稀疏编码原则的,例如负责视觉感知的视网膜和外侧膝状体的神经细胞只有100万个左右(输入神经元个数),而初级视觉皮层V1区第四层有5000万个(输出神经元个数),但并不是都对前者响应,1996年,加州大学伯克利分校的Olshausen等在Nature杂志发表论文指出: 自然图像经过稀疏编码后得到的基函数类似V1区简单细胞感受野的反应特性; 所以层与层之间权值的连接为全连接并不总是合理的。 图3.1视觉皮层 3.1.2卷积流的数学刻画 卷积神经网络的基础模块为卷积流,包括卷积(用于维数拓展)、非线性(稀疏性、饱和、侧抑制)、池化(空间或特征类型的聚合)和批量归一化(优化操作,目的是为了加快训练过程中的收敛速度,同时避免陷入局部*优)等四种操作,下面详细讲解这四种操作。 1. 卷积: 利用卷积核对输入图片进行处理,可学习到鲁棒性较高的特征 数学中,卷积是一种重要的线性运算; 数字信号处理中常用的卷积类型包括三种,即Full卷积、Same卷积和Valid卷积。下面假设输入信号为一维信号,即x∈Rn; 且滤波器为一维的,即w∈Rm,则有: 1) Full卷积 y=conv(x,w,'full')=(y(1),…,y(t),…,y(n+m-1))∈Rn+m-1 y(t)=∑mi=1x(t-i+1)·w(i)(3.1) 其中t=1,2,…,n+m-1。 2) Same卷积 y=conv(x,w,'same')=center(conv(x,w,'full'),n)∈Rn(3.2) 其返回的结果为Full卷积中与输入信号x∈Rn尺寸相同的中心部分。 3) Valid卷积 y=conv(x,w,'valid')=(y(1),…,y(t),…y(n-m+1))∈Rn-m+1 y(t)=∑mi=1x(t+i-1)w(i)(3.3) 其中的t=1,2,…,n-m+1,需要注意n>m。 注意: 除了特别声明外,卷积流中常用的是Valid卷积。另外,容易将上面一维的卷积操作扩展至二维的操作场景,不再赘述; 为了*为直观地说明Valid卷积,给出如图3.2所示的图示。 图3.2二维Valid卷积操作 另外,需要注意的是: 深度学**台Caffe中常用的卷积操作包含两个参数即Stride和Zero Padding,其中Stride指的是窗口从当前位置到下一个位置,跳过的中间数据个数; 例如图像从输入到卷积层的情况,窗口的初始位置在**个像素,第二个位置在第2个像素,那么stride=2-1=1; Zero Padding是指将原始数据的周边补上0值的圈数。通常在计算过程中,若输入信号为x∈Rn×m,卷积核(即滤波器)尺寸大小为w∈Rs×k,利用Valid卷积,同时结合Stride和Zero Padding得到的输出信号的大小为: y=xw∈Ru×v u=n-s+2·ZeroPaddingStride+1 v=m-k+2·ZeroPaddingStride+1(3.4) 其中‘·’操作为向下取整。 卷积操作的核心是: 可以约减不必要的权值连接,引入稀疏或局部连接,带来的权值共享策略大大地减少参数量相对地提升了数据量,从而可以避免过拟合现象的发生; 另外,由于卷积操作具有平移不变性,使得学到的特征具有拓扑对应性、鲁棒性的特性,如图3.3所示,我们分别给出全连接、局部连接和权值共享时所对应的参数,其中权值共享是指相邻神经元的活性相似,从而共享相同的权值参数。 图3.3连接类型 可以得到全连接(权值连接,不含偏置)的参数为18个,局部连接为7个,权值共享的参数为3个(即黄绿蓝线共用)。 2. 池化: 降采样操作,即在一个小区域内,采取一个特定的值作为输出值 本质上,池化操作执行空间或特征类型的聚合,降低空间维度,其主要意义是: 减少计算量,刻画平移不变特性; 约减下一层的输入维度 图3.4*大池化 (核心是对应的下一层级的参数有效地降低),有效控制过拟合风险。池化的操作方式有多种形式,例如*大池化、平均池化、范数池化和对数概率池化等,常用的池化方式为*大池化(一种非线性下采样的方式),见图3.4。 注意图3.4中是无重叠的*大池化,池化半径为2; 在深度学**台上,除了池化半径以外,还有Stride参数,与卷积阶段的意义相同。 除了上面所举的池化方式外,还有空域金字塔池化方式,它是一种多尺度的池化方式,可以获取输入(指卷积后的特征映射图)的多尺度信息; 另外,空域金字塔池化可以把任何尺度的图像的卷积特征转化成相同维度,这不仅可以让卷积神经网络处理任意尺度的图像,还能避免cropping和warping操作所导致的一些信息丢失,具有**重要的意义。下面利用图简述空域金字塔池化。 需要注意的是,这种空域金字塔池化方式尽可能在*后的卷积流中使用,避免之前的拉伸或向量化所带来的信息丢失。图3.5中卷积层指(可能经过若干层后的)已经得到的*后的特征映射图,共计256个特征映射图; 然后以半径分别为1、2、4对这个256维特征映射图进行处理,例如半径为1时,每一个特征映射图(所有元素取*大)得到一个一维的特征,共计256个特征映射图,所以得到256维特征; 半径为2是指将每一特征映射图分为四部分,所以可以得到四维特征,共计4×256维特征; 以此类推。 图3.5空域金字塔池化 3. 激活函数: 非线性操作,通过弯曲或扭曲实现表征能力的提升 激活函数的核心是: 通过层级(简单)非线性映射的复合使得整个网络的(复杂)非线性刻画能力得到提升,若网络中没有非线性操作,*多的层级组合仍为线性逼近方式,表征或挖掘数据中高层语义特性的能力有限。在应用中,常用的激活函数有: 修正线性单元ReLU(加速收敛,内蕴稀疏性)、Softmax(用于*后一层,为计算概率响应)、Softplus函数(ReLU的光滑逼近)、Sigmoid系(传统神经网络的核心所在,包括LogisticSigmoid函数和TanhSigmoid函数); 下面我们通过图示来说明这几种激活函数的生物神经特性。 如图3.6所示,从数学上来看,非线性的Sigmoid系对中央区的信号增益较大,对两侧区的信号增益小,在信号的特征空间映射上有很好的效果。但从生物神经科学上来看,中央区酷似神经元的兴奋态,两侧区酷似神经元的抑制态,因而在神经网络学习方面,是将重点特征推向中央区,将非重点特征推向两侧区。随着生物神经科学的发展,2001年神经科学家Dayan、Abott从生物学角度模拟出了脑神经元接收信号***的激活模型,如图3.7所示。 图3.6Sigmoid系——传统神经网络的核心 与Sigmoid系不同的是: 这个生物脑神经元激活函数的主要变化有三点: 一是单侧抑制; 二是相对宽阔的兴奋边界; 三是稀疏激活性(即红框里前端状态**没有激活)。同年,Charles Dugas等人在做正数回归预测论文中偶然使用了Softplus函数,Softplus的导数便是LogisticSigmoid,机器学习领域的Softplus函数和修正线性单元激活函数与神经科学领域提出的脑神经元激活频率函数有神似的地方(见图3.8),这促成了新的激活函数的研究。 图3.7生物脑神经元激活模型 图3.8Softplus函数和修正线性单元 注意: Softplus函数具有生物脑神经元激活函数的前两点特性,但是不具有稀疏激活特性,而修正线性单元作为Softplus函数的逼近,恰好具有这三点特性,并且在深度学习模型中,使用这种简单、速度快的线性激活函数可能*为合适。(此段参考ReLU激活函数.http://www.mamicode.com/infodetail873243.html) 4. 批量归一化: 优化操作,减少训练过程中的不稳定性 关于归一化操作,目的是避免随着层级的加深而导致信息的传递呈现逐层衰减的趋势,因为数据范围大的输入在模式分类中的作用可能偏大,而数据范围小的输入作用可能偏小,总之数据范围偏大或偏小,可能导致深度神经网络收敛慢、训练时间长。常用的归一化操作有: L2范数归一化、Sigmoid函数归一化(越往两边,区分度越小)等。需要注意的是: 卷积神经网络里面有时候会用到各种各样的归一化层,尤其是2015年以前的研究,经常能见到它们的身影,但是近些年来的研究表明,这个层级似乎对*后结果的帮助**小,所以之后多数时候就摒弃了。 3.2深度卷积神经网络 下面针对具体的深度卷积神经网络,我们通过模型的架构、训练技巧和模型的优势三个方面来解释其工作原理,以期获得*多关于深度卷积神经网络学习的经验与技巧。 3.2.1典型网络模型与框架 1. 分类网络——LeNet5 首先给出网络模型(图3.9),它是一个**成功的深度卷积神经网络模型,主要用于手写体数字的识别,应用在银行系统中识别支票上的数字等场景。 1) 系统讲解深度神经网络的基础理论与算法,包括深度前馈神经网络、深度卷积神经网络、深度堆栈神经网络、深度递归神经网络、深度生成网络、深度融合网络等。七个G资源请加QQ群196832021获取 2) 系统论述常用深度学**台在高光谱图像、自然图像、SAR与极化SAR影响等领域的典型应用。 3)展望深度学习发展的历史图、前沿方向及*新进展。