欢迎访问一起赢论文辅导网
博士论文
当前位置:首页 > 博士论文
基于深度学习的形状建模方法
来源:一起赢论文网     日期:2016-12-29     浏览数:4119     【 字体:

 39卷  计  算  机  学  报  Vol.39 2016 论文在线出版号  No.171  CHINESE JOURNAL OF COMPUTERS  Online Publishing No.171 ——————————————— 本课题得到国家自然科学基金(No.411713384147128061401265)资助.张娟,女,1992年生,硕士生,主要研究领域为机器学习、图像处理. E-mail:chenmzhang@foxmail.com.  汪西莉(通讯作者),女,1969年生,博士,教授,博士生导师,计算机学会(CCF)会员(E200034197M),  主要研究领域为智能信息处理、模式识别、图像处理. E-mail: wangxili@snnu.edu.cn.  杨建功,男,1974年生,讲师,主要研究领域为机器学习、图像处理. E-mail: yangjiangong@snnu.edu.cn.   基于深度学习的形状建模方法 张娟  汪西莉  杨建功  (陕西师范大学  计算机科学学院  西安市  710119)  摘  要  在图像应用中,一个好的目标形状模型有着非常重要的作用。本文基于深度信念网络和深度玻尔兹曼机构造形状模型,给出了各自的模型构造方法、模型训练方法以及基于模型生成目标形状的方法。这两种模型是目标形状的生成模型,能够充分利用底层特征和多层高层特征拟合关于训练集形状的概率分布,所以它们能够有效地建模形状。本文在Weizmann HorseCaltech101  Silhouettes数据集上进行了实验,结果表明,和浅层的受限玻尔兹曼机模型相比,深度学习模型能够更好地表达训练集形状,从包含多层非线性处理的深层结构中生成的形状看起来更符合实际,且深度玻尔兹曼机模型生成的目标形状要比深度信念网络模型更为清晰。实验中以形状图形化结果和形状相似性度量结果说明深度学习模型对训练形状的拟合能力较强,且具有较好的泛化能力。 关键词  形状建模;深度学习;受限玻尔兹曼机;深度信念网络;深度玻尔兹曼机 中图法分类号  TP391 论文引用格式 张娟,汪西莉,杨建功,基于深度学习的形状建模方法,2016Vol.39:在线出版号 No.171 ZHANG JuanWANG Xi-LiYANG Jian-GongShape Modeling Method Based on Deep LearningChinese Journal of Computers,2016, Vol.39: Online Publishing No.171   Shape Modeling Method Based on Deep Learning ZHANG Juan    WANG Xi-Li    YANG Jian-Gong (School of Computer Science, Shaanxi Normal University, Xian, 710119)  Abstract  Models of the object shape play an important role in many image applications such as object detection, image segmentation and inpainting. Compared with the gray, texture, edge and other low-level visual features of the image, shape as high-level visual feature helps to describe the global visual information of an object better. Recently,  deep  learning  models  have  attracted  more  and  more  attentions because  of  their  excellent  learning ability on modeling data with intrinsic structure. In this paper, we propose two kinds of shape models based on deep belief network and deep Boltzmann machine, and the methods of models constructing, training and shape generating.  Both  of  the  models  are  generating  models,  which  can  make  full  use  of  low-level  features  and multi-layer high-level features of object shape to describe the probability distribution of training set. Thus they can effectively model the shape. We give some of the experimental results on the Weizmann Horse datasets and Caltech101 Silhouettes datasets. The results show that compared with the restricted Boltzmann machine model, the  proposed  two models  based  on  deep  learning  can  express  the  shape  of  training  set  better.  That  samples generated from the deep models involving structure of multi-layer nonlinear processing look more realistic, and the  sample  from  the  deep  Boltzmann  machine  model  is  much  more  clear  than  deep  belief  network  model. 网络出版时间:2016-11-21 13:50:49网络出版地址:http://www.cnki.net/kcms/detail/11.1826.TP.20161121.1350.002.html2  计  算  机  学  报  2016年  Experimental  results  in  the  graphical  shape  and  similarity  measure  illustrate  that  deep  learning  model  is  fit  for the training shape, and the model has better generalization ability. Key words    shape  modeling;  deep  learning;  restricted  Boltzmann  machine;  deep  belief  network;  deep Boltzmann machine  1 引言 在目标检测、图像分割和图像修复等应用[1,2]中,目标的形状信息起到至关重要的作用,形状作为一种高层的视觉特征,与图像中的灰度、纹理、边缘等底层视觉特征相比,它描述的视觉信息有利于完整地表达目标物体。若图像中存在噪声、背景和目标特征比较相似、部分目标被遮挡等情况,形状作为先验知识有助于得到较为完整且正确的目标,从而提高目标检测或分割等的正确率。此外,形状在图像的生成过程中也扮演着重要的角色[3,4]。一般来说,上述这些应用的效果能够通过使用更好的目标形状模型得以改善。 目前,已经有很多方法来表示二维形状。用标记点集表示形状是一种最简单的方法,它基于标记点分布模型,先选取一批已标记的训练形状,用形状边缘位置、角点等一些关键点作为标记点描述形状,然后使用主成分分析法等统计分析获得全局的形状模型[5],但其形状表示过于被动,需要对训练集中所有的形状进行标注,要求从形状中选出的主要特征点有相同的数量和位置,并且在求解过程中容易陷入局部极值。用来表示形状属性常用的模型还有网格结构的马尔科夫随机场或条件随机场[6],网格结构的马尔科夫随机场模型可以表示为由一元项和二元项组成的能量函数形式,其中定义的二元能量项表示相邻像素之间的依赖关系,也即是施加给相邻像素之间局部区域限制强调形状的局部特征(平滑性或连通性),但无法捕捉到凸性或曲率等更复杂的形状属性,同时网格结构的马尔科夫随机场在表达全局形状时受到一定的限制。另外一种方法是使用水平集[7]表示形状,其基本思想是施加足够的约束使形状是有效的、真实的,同时允许捕获的可能的形状要具有一定的灵活性。在水平集方法中采用符号距离函数表示形状,在一个区域上确定一个点到区域边界的距离并对其符号进行定义,点位于边界内部为正,位于边界外部为负,位于边界上为0,这种方法捕获目标形状的全局特征和关于目标形状的全局变化(比如形状纵横比的变化)。但是这类方法的缺点是在曲线的演化过程中,符号距离函数会发生震荡,导致最终的曲线演化形状偏离真实的目标形状轮廓。另外,当训练集中存在不同种类时,这种方法不能有效地为形状建模,即不能拟合多峰分布,这使得形状只能在一定范围内变化。     近年来备受瞩目的深度学习模型[8]能够通过组合底层的特征形成高层的数据抽象特征进而模拟人类大脑认知机制,且能够自动发现隐藏在数据中的模式,具有强大的学习数据中包含的结构的能力,可以使用这类模型来学习形状复杂的全局特征进而表征形状。玻尔兹曼机(Boltzmann MachineBM[9]是一种根植于统计力学的随机神经网络模型,基于能量函数建模,其样本的分布服从玻尔兹曼分布。模型由可见层和隐层组成,可见层由可见单元组成,隐层由隐单元组成,其单元之间是全连接的,具有强大的无监督学习能力,能够从复杂数据中学习到隐藏在数据中的高阶特征,但是其学习时间很长,且不能够精确计算出BM所表示的分布,同时从模型中得到服从其定义的分布的样本也很困难。Smolensky提出受限的玻尔兹曼机(Restricted Boltzmann MachineRBM)模型[10],模型包括一个可见层和一个隐层,它是BM的一种特殊结构。相比于BMRBM模型去除了同层单元之间的连接,即可见层与隐层单元之间是全连接,可见层和隐层的层内单元之间无连接,这使得高效快速的模型训练算法的出现成为可能,有效地缩短了训练时间。尽管仍然无法有效计算RBM所表示的分布,但可以通过采样方法得到服从模型所表示分布的样本。但是在训练样本和计算单元有限的情况下,两层结构的RBM模型对复杂分布的表示能力有限。2006Hinton等人提出深度信念网络(Deep Belief NetworkDBN)模型[11],通过构建具有多个隐层的结构来学习更有用的高层特征。该模型是一种生成模型,包括一个可见层和多个隐层,模型可以使用极大似然估计方法来训练得到参数。DBN模型的最上面两层单元之间的连接是无向的,构成一个无向二部图,较低的其它层单元之间的连接是有向的,构成一个有向的sigmoid置信网,其较高层单元表示较低层单元之间的高阶关系。全局优化论文在线出版号  No.171  张娟等:基于深度学习的形状建模方法  3  DBN往往是困难的、耗时的,为加快模型的训练速度和获得更好的优化性能,Hinton给出了模型训练的一个高效算法——在全局训练整个模型之前,先使用逐层训练算法用于预训练模型,即先训练较低层模块后训练较高层模块,进行的是无监督训练。文献[12]表明添加隐层在严格意义上能够提高模型的建模能力,即深层模型相比于浅层模型有更好的非线性函数表示能力。深度玻尔兹曼机(Deep Boltzmann MachineDBM)模型是Salakhutdinov等人于2009年提出的另外一种深度学习模型[13],模型包括一个可见层和多个隐层,可以看作由多个RBM堆叠而成。该模型与DBN模型一样能够学习到数据的多层次抽象特征,但DBMDBN不同的是DBM是一个无向图模型,即层与层之间的连接均是无向的。由于DBM模型的深层结构,全局优化DBM模型也是很困难的  ,所以Salakhutdinov等提出了类似于DBN模型的训练算法,将训练分成了两个阶段:第一个阶段是预训练阶段,分别训练各个子模块;第二个阶段是微调阶段,即在预训练的基础上全局训练整个模型。同样,模型的训练也是无监督的。目前已有研究将RBM作为全局形状先验成功的应用于图像分割问题,文献[14]RBM模型作为形状模型添加到条件随机场图像标记模型中提供全局的形状约束,这种混合的模型比缺少形状先验信息的传统模型减少了错误标记像素的个数,提高了图像标记的正确率。文献[15]是结合DBM的一种变形模型[16]对先验形状建模方法提出的一种变分分割模型,该方法是利用深度学习方法解决先验形状的估计并作为先验形状加入到变分分割模型中用以解决自然图像的分割问题,形状模型由一个可见层和两个隐层组成,可见层与第一个隐层之间是局部连接,第一个隐层与第二个隐层之间是全连接,但是由于模型可见层与隐层间的局部连接,在使用模型生成形状时目标形状的图像会出现接缝。 针对复杂而又多变的目标形状,本文提出两种基于深度学习的形状表示模型,它们是由RBM模型扩展得到的DBNDBM模型,模型各层之间均是全连接,这两种模型通过训练样本训练得到模型参数,用以表示形状和生成形状。文中根据不同模型的结构特点,给出了各自的模型构造方法、模型的训练方法,以及当用该类模型为形状进行建模时提出了基于模型生成目标形状的方法。与传统的形状模型相比,这类模型不仅能够很好的表达出训练集中的形状,还能够生成不同于训练集中样本的形状,且形状符合实际。当训练集中的形状是多类别时,此时涉及到的形状变化比较大,该类模型同样能够定义形状所属的多峰分布。这样,在图像检测、图像分割等应用中,即使在图像存在遮挡或噪声等情况下,形状的全局特性也会使得目标结果符合实际 。本 文在Weizmann  Horse Caltech101 Silhouettes数据集上进行了实验,结果表明深度学习模型具有较强的形状表达能力,可以非常灵活地应用于生成形状、完成部分缺失或被遮挡形状的修复、噪声情况下的去噪等多种任务。 2 深度学习模型理论 2.1 受限玻尔兹曼机模型 RBM是包含一个可见层和一个隐层的两层结构且对称连接的概率图模型,如图1所示,层间全连接、层内无连接。可见层包括m个可见单元) ,..., , (2 1 mv v v v=,表示观测数据,其中iv表示第i个可见单元的状态;隐层包括n个隐单元) ,..., (1 nh h h=,可看作是从可见层数据提取的抽象特征,其中jh表示第j个隐单元的状态。  图1    RBM模型结构 给定一组状态) (h v,RBM模型定义的联合概率分布为: å--= =h vh v Eh v Ee ZZeh v P,) ; , () ; , () ( ,) () ; , (qqqqq                  (1) 其中,) (q Z称为划分函数或者归一化常量;) ; , ( q h v E是状态) , ( h v所对应的能量函数,定义为: h b v a Wh v h v ET T T- - - = ) ; , ( q                 å å åå= = = =- - - =njj jmii iminjj i ijh b v a h v w1 1 1 1      (2) 其中} , , { b a W = q是模型参数,对于所有的m} {1,..., Î i} ,..., 1 { n jÎ,ijw是可见单元iv和隐单4  计  算  机  学  报  2016年  元jh间连接边的权重,ia是第i个可见单元的偏置,jb是第j个隐单元的偏置。关于可见单元v的概率分布可通过求) ; , ( q h v P的边缘概率分布得到。 训练RBM[17]模型的任务是求出模型参数的值以拟合训练数据。给定一组训练数据l k x x x Sl k,..., 1 }, ,..., ,..., {1 = =,假定这些训练数据是独立同分布的,常用的方法是使用最大似然估计方法估计模型参数,即: )) ; ( ln( max arg*S Lq qq=    Õ==lkkx p1) ; ( ln max arg qq    å==lkkx p1) ; ( ln max arg qq                                      (3) 为获得较好的模型参数值,使用随机梯度上升法求RBM在训练集上的对数似然函数)) ; ( ln( S Lq取最大值时对应的参数。其参数更新公式为: model data, > < - > =< D D + =j i j i h v h v W W W W(4)model data, > < - > =< D D + =i i v v a a a a                      (5) model data, > < - > =< D D + =j j h h b b b b                      (6) 其中,data> × <表示经验分布下的期望,model> × <表示RBM模型所定义分布下的期望。精确的最大似然估计学习是很困难的,因为想要精确地计算第二项期望的时间复杂度是) 2 (} , min{ n mO。所以,Hinton2002年提出了一个快速学习算法——对比散度(Contrastive  Divergence  ,CD)算法[18],该算法已成为训练RBM模型的一个标准算法。 由于RBM模型的结构是层间全连接、层内无连接,这也就意味着在给定可见变量状态的情况下隐变量是相互独立的,同时在给定隐变量状态的情况下可见变量是相互独立的。尽管RBM模型所定义的分布仍然无法精确计算,但通过从边缘概率分布中采样可以得到服从RBM模型所表示分布的样本。 2.2 深度信念网络模型  DBN是包含一个可见层和多个隐层的概率图模型,可见层由可见单元组成,隐层由隐单元组成,每一个隐层都对应捕获其下面一层特征的更高阶的抽象特征,能够更好地反映输入数据的内在结构信息。DBN是由两种不同的网络混合而成,最上面两层形成一个无向网,其它较低层形成一个有向的sigmoid 信念网络,构成一个概率生成模型,如图2(a)所示,模型参数为单元之间连接的权重以及各单元所对应的偏置。最底层表示观测数据,即模型的输入。预训练时DBN模型可以被视为由多个简单的无监督模块(即RBM)组成,其中每个子模块的隐层可以作为下一个子模块的可见层输入,如图2(b)所示。这种结构特点也促使了一种快速的、逐层无监督训练算法的提出,有效地避免了传统的深层网络训练时导致的时间复杂度过高问题,每个子模型的训练使用CD算法。相比于只有一个隐层的RBM模型而言,具有多个隐层的DBN模型能够获取更多高层的抽象特征来描述输入数据,另外理论结果表明深层结构模型在表示训练数据所服从复杂分布的函数时要比浅层模型更有效[19]。                         图2    DBN模型结构及其对应的预训练模块       训练一个包含一层可见层单元与两层隐层单元的DBN模型,由模型定义的联合概率分布为: ) ; , ( ) ; | ( ) ; , , (2 2 1 1 1 2 1q q q h h P h v P h h v P =                  (7) 其中} , {2 1q q q=,1q是第一层RBM的参数,2q是 第二层RBM的参数,v是可见单元,) ; | (1 1q h v P表示在给定隐单元状态的条件下获得可见单元状态的条件分布,) ; , (2 2 1q h h P是模型最顶层RBM的联合分布。条件分布) ; | (1 1q h v P和联合分布) ; , (2 2 1q h h P共同构成生成模型DBN。由于同层单元间没有连接,即层内单元之间是相互独立的,所以有: 论文在线出版号  No.171  张娟等:基于深度学习的形状建模方法  5  Õ =iih v p h v P ) ; | ( ) ; | (1 1 1 1q q                                  (8) ) ; , (22 2 12 2 1) (1) ; , (qqqh h EeZh h P-=                     (9) 其中) ; , (2 2 1q h h E是顶层RBM定义的能量函数。 Hinton2006年提出了DBN模型的一种快速、无监督的训练算法,其训练过程分为两个阶段:预训练阶段和微调阶段[11]。在预训练阶段的一个关键特性是逐层训练,将DBN模型看作由多个RBM模块堆叠而成,通过自下而上的顺序训练各组成模块来学习深层模型。同时,在模型的训练过程中该算法也为执行近似推理提供了一个有效地方式,它利用自下而上的传递推断出较高层隐单元的状态。其预训练步骤为:   1、以训练样本作为可见层数据v,随机初始化模型参数1q。采用2.1节中介绍的RBM训练方式训练第一个RBM2、固定第一个RBM的模型参数1q不变,将上步中训练得到的隐层单元状态1h作为下一个RBM的可见层数据,随机初始化模型参数2q。构造较高一层的RBM并训练该RBM3、将训练得到的各RBM模块的参数赋值给DBN模型。 用一次只训练一个模块的方式训练DBN模型是有效的,但不是最优的。所以,在微调阶段使用基于梯度算法优化策略的对比wake-sleep 算法[20]对整个模型的参数进行全局调优,得到最终的模型参数,以预训练得到的模型参数作为该阶段的初始值。DBN的子模型除了最顶层的RBM外,其它RBM模块的权重分为向上的认知权重和向下的生成权重,向下的生成权重表示DBN是一个生成模型,向上的认知权重不属于模型的一部分,只用来执行自底向上的近似推断。在wake阶段,通过底层的特征和认知权重确定每一层的抽象特征表示,使用梯度上升法更新生成权重;在sleep 阶段,通过高层特征和生成权重产生底层状态,同时更新认知权重。本文使用上述算法训练DBN模型。 Hinton提出的快速无监督训练算法通过逐层训练各模块能够有效地加快深层结构模型的训练且得到较好的模型参数值。许多现有的机器学习算法使用浅层结构(如支持向量机、RBM等),但是理论结果表明,使用这样的模型不能有效地从输入数据中提取复杂的结构信息,而DBN等深层结构模型结合有效且快速的训练算法能够利用大量的无标签数据提取更多高层的抽象特征,更好地描述隐藏在输入数据内部的结构信息。 2.3 深度玻尔兹曼机模型 DBM是不同于DBN的另外一种深度学习模型,可以看作是RBM模型的扩展,包含多个隐层。它是一个无向图,所有层与层之间的连接都是无向的,如图3(a)所示。由于DBN模型的结构特点,训练时它是基于一种自下而上的近似推理方法,在推断过程中忽略自上而下反馈的结果,因而不能充分考虑数据的不确定性,而DBM能够结合自下而上的传递和自上而下的反馈来解决不确定性问题,从而能够生成更好地依赖于数据和高阶特征的样本。  图3    DBM模型结构及其对应的预训练模块 训练一个具有两个隐层的DBMv是可见层单元的状态,1h2h是各个隐层对应的隐层单元,关于) , , (2 1h h v对应的能量定义为: 2 2 1 1 1 2 1) ; , , ( h W h h W v h h v ET T- - = q                      2 1h c h b v aT T T- - -                        (10) 其中} , , , , {2 1c b a W W = q是模型参数,1W是可见层v与隐层1h之间连接的权重,2W是隐层1h与隐层2h之间连接的权重,abc分别是可见层v、隐层1h、隐层2h所对应的偏置。那么模型所定义的关于v的边缘概率分布为: å-=2 12 1,) ; , , () (1) ; (h hh h v EeZv Pqqq                                (11) 这里) (q Z是一个常数,定义为: åå-=v h hh h v Ee Z2 12 1,) ; , , () (qq                                      (12) 给定一批训练数据,DBM的学习就是确定式(10)中的权重矩阵和偏置。本文使用的DBM模型的训练方法是Salakhutdinov等人根据训练DBN6  计  算  机  学  报  2016年  模型的逐层预训练算法思想提出的训练算法,其训练过程也包括预训练阶段和微调阶段[21],预训练阶段为在微调阶段训练整个模型参数提供一个较好的初始训练值,但不同的是预训练时的各模块不同、微调时采用的算法不同。使用逐层预训练算法训练DBM的思想是训练一批结构上有微小改变的RBM模型,然后将其堆叠成一个DBM模型,其结构如图3(b)所示。对最底层的RBM模型的改动是用增加一倍自下而上的传递弥补缺少的自上而下的反馈确定隐层单元的状态,即可见层单元的个数翻了一番。相反,对最顶层RBM模型的改动是用增加一倍自上而下的反馈弥补缺少的自下而上的传递确定可见层单元的状态,即隐层单元的个数翻了一番。训练得到的参数为DBM模型提供一个合理的参数值,便于后续的联合训练整个模型。在微调阶段,使用预训练阶段得到的各模块参数作为训练整个DBM模型时的初始值,即使用第一个训练的RBM参数初始化DBM模型的较低层参数(1Wa,使用第二个训练的RBM模型参数作为模型的较高层参数的初始值(2Wc)。其后,使用结合均值场推理和马尔科夫链蒙特卡罗采样的随机梯度上升法可以得到关于DBM模型参数的一个很好的近似,从而更好地拟合训练数据。其预训练步骤为: 1、采用2.1节介绍的RBM训练方法训练结构经过改动的底层RBM模型,训练样本作为模型的可见层数据。连接权重为1W2、固定底层RBM模型的参数不变,并使用从) 2 ; | (1 1W v h P中采样得到的数据作为上层RBM模型的训练数据,训练上层RBM模型。 3、将上述训练得到的各模块参数赋值给DBM模型,作为微调阶段时的模型参数初始值。 目前DBM模型受到关注有很多原因。首先,它保留了DBN模型很多好的性质:能够得到输入数据的多种抽象表示;具有一个高效的贪心逐层训练的预训练算法;使用无标签数据训练,是无监督的。其次,它又与DBN等深层结构模型不同,DBM的近似推理过程包括一个自下而上的传递和自上而下的反馈,使得DBM能够更好地应对数据的不确定性问题,这也是不同于DBN模型与自动编码器等深层模型的最大的特点。最后,通过模型能量函数使用随机梯度上升法联合优化所有层的参数,这极大地促进了训练得到更好的生成模型。 3  基于DBNDBM的形状模型 DBNDBM深度学习模型能够获取输入数据的高阶特征,可以用来为形状建模,并用于表示和生成形状。给定一批训练形状,用其训练上述模型得到模型参数。模型训练时以形状像素点的二值特征作为输入,每个像素点为可见层的一个可见单元,其值是01。在确定模型参数之后,如何从模型中生成形状是一个重要的问题,通常的方法是使用采样得到服从模型所定义分布的形状样本。MCMC方法[22]是由Metropolis1954年提出的从一个特定概率分布采样的算法,最早应用于物理领域,其理论基础是在满足平衡方程的条件下可以通过状态转移到达稳态。后经Hastings改进得到M-H算法[23]M-H算法是MCMC的基础方法。MCMC方法中最常用的是Gibbs采样[24],它是M-H算法的一个特例。Gibbs采样可以应用于从变量的联合概率分布和边缘概率分布中采样,其基本思想是对高维或复杂总体采样时,构造一个不可约的马尔科夫链,得到的样本可以近似的作为模型所定义的概率分布的样本。Gibbs采样的步骤为: 1、随机初始化} ,..., 1 : {) 0 ( ) 0 (t i x xi = = 2、对,... 2 , 1 , 0 = j依次采样       ) ,..., , | ( ~) ( ) (3) (2 1) 1 (1jtj j jx x x x p x+       ) ,..., , ( ~) ( ) (3) 1 (1) 1 (2jtj j jx x x p x+ +       ...       ) ,..., , , | ( ~) 1 (1) 1 (3) 1 (2) 1 (1) 1 ( +-+ + + + jtj j jtjt x x x x x p x 按照上面的步骤,经过多步迭代采样直至收敛,则可以得到,... ,) 2 ( ) 1 (x x,即近似服从概率分布) ,..., , (2 1 tx x x p的样本。     以形状作为训练数据,在训练好模型之后,可以执行多步Gibbs采样得到服从模型定义分布的形状。图4DBNDBMRBM模型的采样过程对比。在RBM模型中执行Gibbs采样的过程是用一个形状作为可见层的初始化状态,交替进行采样,得到近似服从RBM模型所定义分布的形状,如图4(a)所示。为生成近似服从DBN模型定义分布的形状,通过在模型的最顶层RBM模块执行多步Gibbs采样得到第1 - L层(LDBN模型的层论文在线出版号  No.171  张娟等:基于深度学习的形状建模方法  7  数)的状态,然后通过自上而下的sigmoid置信网络依次随机激活每层单元,从而得到可见层状态(即样本),如图4(b)所示。DBM模型的采样过程如图4(c)所示,依次采样得到可见层、隐层的状态,并且隐层1h条件依赖于可见层v和隐层2h。从DBNDBM采样过程可以看出其不同之处在于确定隐层1h状态时的条件依赖不同,在DBN模型中推导1h时只依赖于2h,而在DBM模型中依赖于v2h两个方向信息的影响,即既受到底层特征的影响也受到高层抽象特征的影响,从而在生成可见层单元时会综合考虑输入数据和模型所表达形状的特征,其生成的形状数据会相对比较确定。  图4    DBNDBM模型与RBM模型的采样过程 4  实验与分析 4.1  实验数据与参数设置 实验环境为Windows10  64位操作系统,内存为16G,处理器为Intel(R) Xeon(R) v3 1.90GHz。编程环境为MATLAB  R2014a。为验证各模型的建模能力,以Weizmann  Horsefigure-ground)数据集和Caltech101  Silhouettes数据集作为实验对象,图像均是二值的。从Weizmann  Horse数据集中选择200幅图像形状作为训练样本,其余128幅图像形状作为测试样本,并将所有形状图像归一化至32*32像素大小,所有图像中目标(马)均是面向左方且具有不同的姿势。该数据集是具有挑战性的,原因是除了它们整体的目标形状不同之外,马的头、尾和腿的姿态与位置也各不相同。从Caltech101 Silhouettes数据集中选择Airplanes SideFacesMotorbikes类的数据作为实验数据集,其中Airplanes  Side798幅图像、Faces类有870幅图像、Motorbikes798幅图像,每幅图像的大小为28*28,共有2466幅图像。选择其中的2200幅图像作为训练样本、266幅图像作为测试样本。该实验数据集包括三种不同类别的形状数据,且形状各异。 本文中各模型的主要参数和具体数值是根据文献[25]和具体试验选取的。模型的结构及其每层的单元个数设置如下:对于Weizmann Horsefigure - ground)数据集,RBMDBNDBM模型的可见层单元个数均设置为1024、第一隐层的单元个数均设置为500DBNDBM模型中涉及到的第二隐层单元个数设置为500;对于Caltech101 Silhouettes数据集,RBMDBNDBM模型的可见层单元个数均设置为784、第一隐层的单元个数均设置为2000DBNDBM模型中涉及到的第二隐层单元个数设置为1000。训练过程中涉及到的参数设置为:对于Weizmann Horsefigure-ground)数据集,迭代次数设置为1500,学习率为0.01CD的步数设置为1;对于Caltech101  Silhouettes 数据集,训练过程中涉及到的参数及其设置为:迭代次数设置为3000,学习率为0.005CD的步数设置为14.2 模型建模能力比较与分析     为评估RBMDBNDBM深度学习模型对形状的建模能力,从每个模型中使用各模型的采样方法得到一批形状,以训练形状和测试形状作为模型采样初始时的输入。对于Weizmann Horse数据集的采样迭代次数设置为100Caltech101 Silhouettes实验数据集的采样迭代次数设置为300,此时模型的采样结果收敛。从模型中采样生成的形状如图5所示,图5(A)是以训练数据作为输入的结果,图5(B)是以测试数据作为输入的结果,其中(a)列是输入形状数据,(b)列是从RBM模型中采样得到的形状,(c)列是从DBN模型中采样得到的形状,(d)列是从DBM模型中采样得到的形状。从图5中各模型采样得出的样本对比可以看出,RBM模型在建模形状时丢失了大部分的细节形状,比如采样得到的形状图像大部分缺少马的头、尾、腿或飞机的机翼等的形状信息,形状的边缘比较模糊;DBN模型在建模形状时能够得到整体姿势变化的形状,整体结构完整,但目标形状比较模糊;DBM模型能够生成各种不同姿势的形状且能够观察到生成的形状更为清晰和确定。 8  计  算  机  学  报  2016年  (1)         (2)         (3)         (4)         (5)                   (a)      (b)      (c)      (d)              (a)      (b)      (c)      (d) (A) 训练形状                            (B) 测试形状 Weizmann Horse实验数据集   (1)             (2)               (3)               (4)               (5)                     (a)      (b)      (c)      (d)            (a)      (b)      (c)      (d) (A) 训练形状                          (B) 测试形状 Caltech101 Silhouettes实验数据集 图5   从各模型中采样生成的形状。(a)列是输入的形状数据,(b)列是从RBM模型采样得到的形状,(c)列是从DBN模型中采样得到的形状,(d)列是从DBM模型中采样得到的形状。     为定量分析模型对形状的建模能力,以形状作为输入,使用欧式距离度量各模型采样输出与输入之间的相似性。表1 展示的是图5 Weizmann Horse实验数据集的结果对比,表2展示的是图5Caltech101  Silhouettes实验数据集的结果对比,表中的各行与图5中的各行对应。从表1和表2中的数据可以看出,不管是以训练形状作为输入,还是以测试形状作为输入,使用深度学习模型采样得 表1 Weizmann Horse实验数据集各模型采样输入与输出的欧式距离对比   训练形状  测试形状 RBM  DBN  DBM  RBM  DBN  DBM 1)  2.9409  2.0273  1.4929  7.0077  5.7850  4.8580 2)  8.3623  5.3784  3.8203  8.5591  6.3248  4.9093 3)  5.6794  3.7824  2.4826  6.8093  5.6830  4.3737 4)  5.8087  4.0506  3.4129  9.4532  7.3871  6.6293 5)  8.4750  5.3821  3.3566  9.2414  8.2455  7.7785  2 Caltech101 Silhouettes实验数据集各模型采样输入与输出的欧式距离对比   训练形状  测试形状 RBM  DBN  DBM  RBM  DBN  DBM 1)  7.2408  5.1785  2.5925  8.8310  6.1231  5.8971 2)  3.8234  2.8699  2.0163  6.1590  5.4701  4.5739 3)  7.2730  5.7200  2.7203  5.2438  4.9308  4.4797 4)  6.9246  5.1209  3.1096  3.5990  3.2472  2.7927 5)  4.4929  3.7117  2.8088  6.4578  5.6874  4.7095 到的形状与输入更为相似。这说明使用深度学习模型对形状进行建模能够很好的拟合训练形状,而且对不存在于训练集中的测试形状有很好的泛化能力。 图6是从形状修复方面对比RBMDBNDBM深度学习模型的建模能力。形状修复的目标是在给定输入形状部分缺失的情况下,使用模型生成形状缺失部分可能的形状姿态。由于经过训练之后的模型能够为在oV的条件下关于uV的值指定一个确定的概率分布(o表示可确定的形状区域,u表示缺失的形状区域),所以在形状修复过程中可以通过在未丢失形状oV的条件下采样得到丢失的或未观测到的其余形状uV,这一过程可通过使用Gibbs采样方法从条件分布中采样得到,即执行一 条马尔科夫链,从可见层、隐层单元对应的条件分布中得到各自的状态。注意在每次更新可见层单元 状态时,确定的形状部分oV不作变化,只对未观测到的形状部分uV更新。Weizmann Horse数据集的迭代次数为100次,Caltech101  Silhouettes实验数据集的迭代次数为300次。图6对应的是形状修复的论文在线出版号  No.171  张娟等:基于深度学习的形状建模方法  9  实验结果,其中(a)列对应的是从训练集中选取的完整形状,(b)列对应的是缺失部分形状区域作为输入形状数据,(c)列是使用RBM模型修复的结果,(d)列是使用DBN模型修复的结果,(e)列是使用DBM模型修复的结果。对于Weizmann  Horse实验数据集,(A)组对应的是可观测的形状是头部区域,其它部分缺失;(B)组对应的是可观测的形状是部分腿部区域,其它部分缺失;(C)组对应的是缺失腿部形状区域;对于Caltech101 Silhouettes实验数据集,(A)组对应的是可观测的形状是左侧区域,右侧区域缺失;(B)组对应的是可观测的形状是下侧区域,上侧区域缺失。从实验结果中可以看出,RBM模型能够根据确定的区域采样出大体形状,但经过修复之后的形状还是缺失形状的细节信息,生成的形状缺失部分模糊;相对于RBM模型,DBN模型能够获得更为清楚的形状姿势和轮廓,整体结构完整但目标形状还是较为模糊;DBM模型则能够获得目标形状更为清晰的形状。尽管缺失形状部分的大小不确定和形状姿势不同,但经过形状修复之后的结果看起来还是较为符合实际的。      (a)      (b)      (c)      (d)      (e) (A)  可观测形状为头部区域      (a)      (b)      (c)      (d)      (e) (B)  可观测形状为腿部区域      (a)      (b)      (c)      (d)      (e) (C)  可观测形状为上部区域 Weizmann Horse实验数据集                                    (a)      (b)      (c)      (d)      (e) (A)  可观测形状为左侧区域                                              (a)     (b)    (c)     (d)     (e) (B)  可观测形状为下侧区域 Caltech101 Silhouettes实验数据集 图6 各模型图像修复的结果。(a)列是训练集形状,(b)列是输入的部分缺失形状数据,(c)列是利用RBM模型修复得到的形状,(d)列是利用DBN模型修复得到的形状,(e)列是利用DBM模型修复得到的形状。 图7给出的是不同初始化状态作为模型采样的10  计  算  机  学  报  2016年  初始化输入对从模型中采样得到形状的影响,Weizmann  Horse实验数据集的迭代次数设置为1000次,Caltech101  Silhouettes实验数据集的迭代次数设置为3000次。图7中给出的采样结果是重复采样5次的结果,其采样得到的形状有些不同。对于Weizmann  Horse实验数据集,(A)组是用一个随机初始化的数据作为各模型采样的初始状态,然后经过多次状态转移得到近似服从模型所定义的分布的形状;(B)组是用一个小的正方块作为各模型采样的初始状态得到的形状;(C)组是用一个长方块作为各模型采样的初始状态得到的形状。对于Caltech101 Silhouettes实验数据集,(A)组是用一个随机初始化的数据作为各模型采样的初始状态;(B)组的结果显示的是使用一个长方块作为各模型采样的初始状态得到的形状;(C)组是使用一个大的正方块作为模型采样的初始状态产生的形状。从实验结果中可以看出,初始化状态的不同能够影响由RBMDBNDBM模型生成的样本的形状,它能够决定形状的大体姿势和位置。并且能够从结果中看出由DBNDBM深度学习模型生成的样本要比RBM模型更符合要求,即形状的边缘比较清晰、四肢等形状比较分明,形状数据更为确定,DBN模型生成的样本目标完整但有些模糊,而DBM模型生成的形状的清晰度明显提高。这在实际应用中,可以用初始形状作为输入数据,根据模型采样的过程生成一个既受到初始输入形状的影响也受到模型约束的目标形状,该形状可以作为一个有效地形状模板为其它应用提供形状先验约束。         输入             RBM                     DBN                     DBM   (A)   随机初始化作为输入         输入              RBM                       DBN                       DBM   (B)    一个正方块作为输入           输入              RBM                       DBN                       DBM   (C)    一个长方块作为输入 Weizmann Horse实验数据集          输入             RBM                     DBN                     DBM   (A)   随机初始化作为输入         输入              RBM                       DBN                       DBM   (B)    一个长方块作为输入           输入              RBM                       DBN                     DBM   (C)    一个正方块作为输入 Caltech101 Silhouettes实验数据集 图7 不同的输入对采样得到样本的影响 图8RBMDBNDBM模型以含有噪声论文在线出版号  No.171  张娟等:基于深度学习的形状建模方法  11  的图像作为模型采样过程的输入,迭代一次后的模型输出结果。结果表明模型在输入的形状含噪声的情况下,输出能够有效地去除噪声对目标形状的干扰,模型具有较强的抑制噪声的能力。图8(A)是从测试集中选取的36幅原始形状图像,图8(B)是在图8(A)的基础上,Weizmann Horse实验数据集添加20%Caltech101  Silhouettes实验数据集添加15%的服从(0,1)均匀分布的噪声图像,图8(C)RBM模型产生的结果,图8(D)DBN模型产生的结果,图8(E)DBM模型产生的结果。从图8中可以看出以噪声作为输入经各模型采样得到的结果有效地去除了噪声,而且还保留了原图像中的许多边缘。RBM模型在采样过程中形状的边缘轮廓部分丢失严重且变得模糊;而DBNDBM模型的整体效果更好,减少了形状边缘轮廓和形状弱细节的丢失,DBM模型的形状整体相对来说更为清晰。  (A) 未添加噪声的图像     (B)  添加噪声后的图像   (C)  RBM输出图像   (D)  DBN输出图像      (E)  DBM输出图像 Weizmann Horse实验数据集  (A) 未添加噪声的图像 12  计  算  机  学  报  2016年      (B)  添加噪声后的图像   (C)  RBM输出图像   (D)  DBN输出图像      (E)  DBM输出图像 Caltech101 Silhouettes实验数据集 图8各模型抑制噪声的结果比较 5  总结 作为统计建模方法中的一种,由RBM扩展的DBNDBM深度学习模型在图像处理中有着广泛的应用。本文提出一类基于DBNDBM深度学习模型的形状建模方法,这类模型关注的是全局形状特征,能够更好的体现形状的内在特性,对目标形状更准确的建模。实验从多个方面对DBNDBM深度学习模型和RBM形状模型进行比较,结果表明DBNDBM这两种深度形状表示模型比RBM模型的建模能力强,生成的形状更为符合现实。未来的研究包括考虑形状对齐以及模型层数、节点数等参数的自适应确定,将这类模型作为形状先验进一步扩展到图像分割、图像检测应用中等。 参 考 文 献 [1]  Alexe  B,  Deselaers  T,  Ferrari  V.  ClassCut  for unsupervised class segmentatio//Proceedings  of  the  11th European  Conference  on Computer Vision. Crete, Greece, 2010: 380-393. [2]  Eslami  S  M,  Williams  C.  Factored shapes  and appearances  for parts-based object understanding//Proceedings  of  the  22nd  British Machine Vision Conference. Dundee, Scotland, 2011: 1-12. [3]  Williams C K I, Titsias M K. Greedy learning of multiple objects in images  using  robust  statistics  and  factorial  learning.  Neural Computation, 2004, 16(5): 1039-1062. [4]  Le Roux N, Heess N, Shotton J, et al. Learning a generative model of images  by  factoring  appearance  and  shape.  Neural  Computation, 2011, 3(3): 593-650. [5]  Cootes T F, Taylor C J, Cooper D H, et al. Active shape models-their training and application. Computer Vision and Image Understanding, 1995, 61(1): 38-59. [6]  Boykov Y Y, Jolly M P. Interactive graph cuts for optimal boundary & region segmentation of objects in N-D images//Proceedings of the 8th IEEE International Conference on Computer Vision. Vancouver, Canada, 2001:105-112. [7]  Rousson  M,  Paragios  N.  Prior know  ledge  level  set  represent  & visual  grouping.  International  Journal  of  Computer  Vision,  2008, 76(3): 231-243. [8]  LeCun  Y,  Bengio  Y,  Hinton  G  E.  Deep  learning.  Nature,  2015, 521(7553): 436-444. [9]  Hinton  G  E,  Sejnowski  T  J.  Learning  and  releaming  in  Boltzmann machines.  Parallel  distributed  processing:  Explorations  in  the microstructure of cognition, 1986, 1: 282-317. [10]  Smolensky  P.  Information  processing  in  dynamical  systems: Foundations  of  harmony  theory.  Boulder:  University  of  Colorado, 论文在线出版号  No.171  张娟等:基于深度学习的形状建模方法  13  Technical Report : CU-CS-321-86, 1986. [11]  Hinton  G  E,  Osinderi  S,  Teh  Y.  A  fast  learning  algorithm  for  deep belief nets. Neural Computation, 2006, 18(7): 1527-1554. [12]  Roux  N  L,  Bengio  Y.  Representational  power  of  restricted Boltzmann machines and deep belief networks. Neural Computation, 2008, 20(6): 1631-1649.   [13]  Salakhutdinov  R,  Hinton  G  E.  Deep  Boltzmann machines//Proceedings  of  the  12th  International  Conference  on Artificial Intelligence and Statistics. Florida, USA, 2009: 448-455. [14]  Kae  A,  Sohn  K,  Lee  H,  et  al.  Augmenting  CRFs  with  Boltzmann machine  shape  priors  for  image  labeling//Proceedings  of  the  IEEE Conference  on  Computer  Vision  and  Pattern  Recognition. Portland, USA, 2013: 2019-2026. [15]  Chen  F,  Yu  H,  Hu  R,  et  al.  Deep  learning  shape  priors  for  object segmentation//Proceedings  of  the  IEEE  Conference  on  Computer Vision and Pattern Recognition. Portland, USA, 2013: 1870-1877. [16]  Eslami S M A, Heess N, Williams C K I, et al. The shape Boltzmann machine:  a  strong  model  of  object shape.  International  Journal  of Computer Vision, 2014, 107(2): 155-176. [17]  Fischer  A,  Igel  C.  Training  restricted  Boltzmann  machines:  an introduction. Pattern Recognition, 2014, 47(1): 25-39. [18]  Hinton G E. Training products of experts by minimizing contrastive divergence. Neural computation, 2002, 14(8): 1771-1800. [19]  Bengio  Y,  LeCun  Y.  Scaling  learning  algorithms  towards  AI. Large-scale kernel machines, 2007, 34(5): 321-359. [20]  Hinton  G  E,  Dayan  P,  Frey  B,  et  al.  The  wake-sleep  algorithm  for unsupervised neural networks. Science, 1995, 268(5214): 1158-1161. [21]  Salakhutdinov  R,  Hinton  G  E.  An  efficient  learning  procedure  for deep  Boltzmann  machines.  Neural  computation,  2012,  24(8): 1967-2006. [22]  Zhu  S  C,  Dellaert  F,  Tu  Z  W.  Markov  chain  Monte  Carlo basics. Advances  in  Neural  Information  Processing  Systems,  2005, 5:497-537. [23]  Hastings W K. Monte Carlo sampling methods using Markov chains and their applications. Biometrika, 1970, 57(1):97-109. [24]  Walsh  B.  Markov chain  Monte  Carlo  and  Gibbs sampling.  Notes, 2004, 91(8): 497-537. [25]  Hinton  G  E.  A  practical  guide  to  training  restricted  Boltzmann machines. Momentum, 2010, 9(1): 599-619.     Zhang Juan, born in 1992, Master candidate. Her research  interests  include  machine  learning  and  image processing.   Wang Xi-Li, born in 1969, Ph.D, Professor. Her major research interests  include  intelligent  information  processing,  pattern recognition and image processing. Yang Jian-Gong, born in 1974, Ph.D candidate. His major research interests include machine learning and image processing.  Background Models of the shape of an object play a crucial role in many applications  such  as  object  detection,  image  segmentation  and inpainting. Compared with  the  gray,  texture,  edge  and  other low-level  visual  features  of  the  image,  shape  as  high  level visual feature helps to describe the global visual information of an object better. In general, the algorithms performance will be improved  after  global  shape  information  (expressed  by  good model) joined. At present, there are many methods to modeling 2-dimensinal shape. The shape expressed in marked point set is one of the easiest way. It is based on marked point distribution model. But such representation is too passive. The points need to  mark  manually  and it  is error-prone.  The  most  commonly used  models  are  Markov  random  fields  or  conditional  random fields.  In  such  models,  the  pairwise  potentials  connecting neighboring pixels impose very local constraints, thus they are unable to  capture  more  complex  properties. Level set can  also be used to represent shape. In level set method, signed distance function is  used  to represent  shape. The  shortcomings  of  this kind  of  method  is  that  during  the  curve  evolution  process, signed distance function will oscillate, and then makes the final shape of the curve evolution deviate from the real shape of the objects  contour.  In  addition,  this  method  cannot  fit multi-modal distribution.  14  计  算  机  学  报  2016年  Recently,  deep  learning  models  have  attracted  more  and more  attentions because  of  their  excellent  learning  ability  on modeling  data with  intrinsic structure.   Deep  learning  models contain  multiple levels  and  hidden perception  units. They  can extract  multi-level  features  and  represent  complicated  data distribution.  They form  high-level  data  abstract representation through combining the lower layer features. In 2012, Eslami et al.  proposed  a  probabilistic  model  for  the  task  of  modeling binary  object  shapes.  However,  duo  to  the partial connection between  visible  layer  and  hidden  layer, the object  shape  will appear seams when the model is used to generate shape. In this paper, we propose two shape models based on deep models to represent the complicated global  shape  features. The samples generated  from  the  deep  models  look  more  realistic  and completed,  which  indicate  the  proposed  shape  models  are effective in shape representing and generating.   This  work  is  supported  by  the  National  Natural  Science Foundation of China under Grant No.4117133841471280 and 61401265.  They  are  focus  on  object  detection  in high-resolution  remote  sensing  image.  We  will  apply the proposed shape models to object detection in further study.  

[返回]
上一篇:基于双层随机游走的关系推理算法
下一篇:基于黑盒遗传算法的Android驱动漏洞挖掘