基于图像自编码的神经网络特征学习方法与流程

文档序号:11408314阅读:241来源:国知局
基于图像自编码的神经网络特征学习方法与流程
本发明涉及深度学习领域和图像检索领域,尤其是设计到图像检索中的特征表达方法,该方法能够在多标签数据集上得到更加准确的相似图像。
背景技术
:随着多媒体和网络技术的发展,图像作为人们生活状态最直观的表达方式,在人们生活中扮演着越来越重要的角色。大部分图像都包含了丰富的语义信息,如何在现实生活中找到用户需求的图像是所面临的一个难题和挑战。出色的特征表达不仅能够表示图像的类别信息,更能够捕捉到图像的相关语义信息。大量的图像信息被采集利用,然而将图像处理与计算机视觉技术相结合,提取图像中有效的语意表达是现在计算机视觉领域的重中之重。但是大量的图像出现在给我们带来便利的同时,也会带来很多问题,比如如何有效的在大规模图像库中检索到符合用户语意的图像以及如何更好的将这些图像加以利用,以便于用户有效率、快速的找到所需的图像。基于内容的图像检索在过去一些年在相关领域进行了广泛的研究,并取得了很多有广泛利用价值的成果。主要是使用特征向量作为对图片的内容表达,这样每幅图都用一个特征向量来表示这张图片。在进行检索的时候就是使用表示图片的特征向量的距离来度量两张图片的相似度。可以很容易看出,图像识别的关键在于特征表达。基于内容的图像检索因为其广泛的可用性以及准确性,现在已经被应用到了很多实际的场景中。目前大量的互联网公司纷纷投入巨资加入到图像检索的研究中,都提出了通过输入图像搜索对应语意图像的功能,这也意味着该领域逐渐成为研究主流。图像检索具有高的应用价值,在知识产权方面可以通过该技术严格审查文档内容的相似程度;在医学领域可以通过该技术可以帮助医生进行医疗诊断,达到辅助治疗的目的;在安防方面可以通过匹配应用帮助公安机关实施犯罪分子抓捕,锁定目标等工作。为了提取更具有语义的图像特征表达,很多研究人员使用深度卷积神经网络提取特征代替原来的手工特征,并将之应用到图像检索领域后成为了目前最为流行和有效的特征表达技术。卷积神经网络是人工神经网络的一种,已成为当前语音分析和图像识别领域的研究热点。它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。卷积网络是为识别二维形状而特殊设计的一个多层感知器,这种网络结构对平移、比例缩放、倾斜或者共他形式的变形具有高度不变性。深度卷积神经网络在训练时通过其自顶向下的监督或非监督学习过程,使得神经网络能够分层对输入信息进行表达,自底向上的信息逐层迭代抽象,这种分层表达的思想,从最初的像素级别特征,抽象成为边缘信息,再抽象成为物体部件信息,最后抽象成为物体。深度学习由于其多层次的抽象性,使得它优于其他传统特征提取算法。所以深度神经网络可以通过相对简单的表达方法来表示复杂的函数关系,深度学习就是一种特征学习方法,把原始数据通过一些简单的但是非线性的模型转变成为更高层次的,更加抽象的表达。通过足够多的转换的组合,非常复杂的函数也可以被学习。对于分类任务,高层次的表达能够强化输入数据的区分能力方面,同时削弱不相关因素。从深度学习首次应用于ilsvrc挑战赛并取得突出的成绩,从最初的alexnet模型,历经zeiler模型,vgg模型,googlenet模型,到现在使用resnet将分类错误率降低到3.57%,可看出深度学习方法相比于传统的手工提取特征的方法在图像识别领域具有巨大优势。与此同时,一个理想的产生式模型既能够根据自然分布来产生图像,也能够根据表达的信息搜寻出图像之间相同和不同的信息。但是,一个主要的难点在于推断给定图像的潜在结构。为了解决这个问题,研究者们已经开始了很多研究性工作。如wake-sleep算法,contrastivedivergence算法,rbm以及非参贝叶斯模型。距离现在更近的工作,通过使用贝叶斯模型进行概率推测也使用在这个领域。这些方法在一些比较小的数据集上有效果,比如手写字体识别,但是上述方法暂时还没有一个能够在高分辨率的图像上有很好的效果。因为良好的特征是图像检索领域是最为重要的因素,而神经网络恰好在特征学习和提取方面有着出色的能力,所以现在的图像检索任务普遍使用深度神经网络提取的特征作为图像的特征表达。传统神经网络在大多数任务中都以图像类别为训练目标,原始图像作为输入,目标函数作为优化目标,可以看作为一个函数优化的过程。但是深度神经网络中普遍的监督信息不足使神经网络的表达能力收到了一定的局限。技术实现要素:本发明的目的在于,针对上述传统神经网络对于图像表达能力的不足,提出了一种基于图像自编码的神经网络特征学习方法。该方法充分利用图像的空间关系信息和深度学习的学习能力,使用分割图像的压缩编码作为对应训练图像的训练目标,使神经网络的特征表达具有分类信息,更具有空间关系信息,从而提升卷积神经网络的特征表达能力,应用在检索任务上提高了图像检索的准确率。实现本发明方法的主要思路是:根据两个多标签数据集的分割标签,给训练数据集对应的图像打分割标签,构建一个原始图像与分割图像对应的数据集,随后对每个图像的数据集使用自编码神经网络进行压缩编码直到收敛,提取每张分割图像对应的隐含变量信息,将此隐含变量信息与原图像构造键值对。然后利用此隐含变量信息代替one-hot标签作为神经网络的训练目标利用反向传播更新神经网络权重,训练得到对应神经网络。利用对应神经网络提取测试集特征。之后将测试集特征作为每张图像对应语义特征,通过计算并比较查询图像的特征与图像库中每幅图的欧式距离,最终快速准确的检索得到查询图像的相似图像结果。根据上述主要思路,本方法的具体实现包括如下步骤:步骤1:构造数据集将图像数据集划分为训练集和测试集,在训练集中给每张原始图像对应的分割标签标记在图像上,构造出训练图像对应的分割图像集;步骤2:初始化卷积神经网络权重与自编码神经网络权重使用高斯随机初始化卷积神经网络权重和自编码神经网络权重,卷积神经网络初始化一次,自编码神经网络在训练每张分割图像对应的隐含变量后都进行高斯随机权重初始化;步骤3:训练自编码神经网络并提取分割图像隐含变量对每张训练图像对应的分割图像对应一个进行高斯初始化权重的自编码神经网络,将分割图像经过自编码前向传播经过改自编码模型,然后经过该网络计算后得到的损失用反向传播算法调整网络权重,同时对所有全连接层参数都进行学习更新,迭代至收敛后得到训练后的自编码神经网络模型。最后将对应的分割图像进行前向传输得到自编码神经网络中间隐层的隐含变量步骤4:归一化隐含变量对步骤3中取得的隐含变量进行归一化,从而将隐含变量的每一位都映射到[0,1]之间的实数上,得到经过归一化的隐含变量步骤5:训练卷积神经网络根据训练集图像库与步骤4得到的训练图像对应的归一化隐含变量,训练深度卷积神经网络模型。将训练集中原始图像输入卷积神经网络,并将步骤4得到的归一化隐含变量视为该训练集训练目标。经过卷积神经网络计算后得到损失后使用反向传播算法调整整个神经网络明权重,同时对所有层参数进行学习更新,迭代至收敛后得到训练后的深度神经网络模型;步骤6:提取特征向量并计算欧氏距离从步骤5中得到训练完毕的深度神经网络模型后,将测试样本集中的每张图像分别作为深度神经网络的输入,经过前向传播得到测试样本集的特征向量矩阵feat。随后从feat中按顺序取出测试图像的特征向量featn,并计算该特征向量与图像库中的特征向量矩阵feat每一行之间的欧式距离,然后将欧式距离以行向量的形式组合起来得到一个欧式距离列向量;步骤7:排序输出检索结果将步骤6中得到的欧式距离向量的数值依照从小到大的顺序进行排序,顺序输出对应的原始图像,得到图像检索结果。与现有技术相比,本发明具有以下明显的优势和有益效果:本发明提出一种基于图像自编码的神经网络特征学习方法,采用分割图像对应的隐含表达作为神经网络的训练目标,充分利用了数据的空间结构信息,使神经网络同时学习到除了类别信息之外的空间关系信息,解决了传统神经网络训练目标结构信息不足的问题,从而提升神经网络对多标签图像的语义表达能力,同时应用在检索上提升了图像检索的准确率。附图说明图1为本发明所涉及方法总流程框图;图2为本发明所涉及算法总架构图;具体实施方式下面结合附图对本发明的技术方案做进一步的描述,附图1为本发明所涉及方法整体流程图,附图2为本发明所涉及算法总结构图。步骤1:构造数据集本发明所述方法实施过程中的数据库来源于两个公开多标签标准数据集pascalvoc2012segmentationclass和microsoftcoco。其中pascal包含1465张训练,1449张测试,类别总数为20类的彩色图片;microsoftcoco包含82783张训练,40504张测试,类别综述为80类的彩色图片。将图像训练集所对应的分割标签分别表示在原始图像上,其中每张图形的主要物体在进行分割图像标记的时候将会被标记为不同的颜色,其中相同类别物体被标记相同颜色,不同类别物体被标记为不同颜色;每张图像除主要物体之外的背景都被标记为黑色。原图像集合x={x1,x2,……,xn},对应的分割图像表示为每个原始训练图像样本都对应一个分割图像。步骤2:初始化卷积神经网络权重与自编码神经网络权重深度卷积神经网络和自编码神经网络需要使用高斯初始化:w~n(μ,σ2)。高斯分布通过下面公式计算得到.其中μ为均值,σ为方差,设置μ的值为0,σ为0.01。卷积神经网络每层权重按照以上策略初始化一次等待进行训练,而每张由步骤1构造的原始图像对应的分割图像都对应一个唯一的自编码神经网络,每个自编码神经网络在训练每张分割图像之前都进行符合上述高斯分布权重的初始化操作以保证隐含变量的准确性。自编码网络结构和卷积神经网络结构如附表1、表2所示。自编码神经网络的隐含变量层encode4含有h个节点,在实施过程中pascalvoc2012segmentationclass数据集设置h为5,microsoftcoco数据集设置h为20;卷积神经网络最后一层full8层神经元个数与隐含变量节点数相同。步骤3:训练自编码神经网络并提取分割图像隐含变量根据步骤1构造的分割图像集和步骤2初始化的自编码神经网络,训练自编码神经网络模型。在训练过程中,将训练图像对应的分割图像输入自编码神经网络的同时,将输入图像自身当作神经网络的训练目标,进行前向传播以后得到该分割图像对应的隐含表达,然后重构此隐含表达计算神经网络损失,最后反向传播更新全部网络权重。输入分割图像到神经网络,统一将输入图像的像素值从[0,255]映射到[0,1]区间中,以便于重构计算。将每个输入的图像像素值与bi值相乘再进行重构运算,在实施过程中设置bi=0.0039215684。自编码神经网络损失层的损失函数为:其中n为自编码神经网络的batch_size大小,在实施过程中设置n为1,pn是经过自编码神经网络输出的目标概率分布;是概率预测分布,等同于输入的分割图像。是使用的sigmoid函数σ(.)。通过最小化此损失函使输入分割图像与自身的交叉熵损失尽可能小,从而获得能够以最大概率重构出输入分割图像的隐含变量。待此自编码神经网络收敛后,通过前向操作得到对应分割图像对应特征向量步骤4:归一化隐含变量根据步骤3得到的特征向量经过归一化操作将特征向量进行归一化操作,将特征向量的值映射到[0,1]之间。使用最大最小归一化,计算公式如下:其中为归一化前特征向量,为归一化后特征向量。所有特征向量通过此映射函数,都映射到得到训练图像对应的隐含变量集合步骤5:训练卷积神经网络根据步骤1得到的训练集,步骤4得到的隐含变量集合,训练由步骤2初始化的卷积神经网络模型。在训练过程中,训练集中原始图像输入卷积神经网络进行前向传播后,得到on,然后使用梯度下降方法学习深度卷积神经网络的各层参数,损失函数如下:其中m为卷积神经网络的batch_size大小,在实施过程中设置m=128,om是经过卷积神经网络输出的目标概率分布;是概率预测分布,即步骤4得到的归一化后的隐含变量。步骤6:提取特征向量并计算欧氏距离从步骤5中得到训练完毕的深度神经网络模型后,将测试样本集中的每张图像分别作为深度神经网络的输入,经过前向传播得到测试样本集的特征向量矩阵feat。随后对测试图像库中的每幅图像做相同的操作。然后从feat中按顺序取出测试图像的特征向量featn,并计算该特征向量与图像库中的特征向量矩阵feat每一行之间的欧式距离,然后将欧式距离以行向量的形式组合起来得到一个欧式距离列向量。步骤7:排序输出检索结果欧氏距离越小图像越相似,将从步骤6得到的欧氏距离向量的数值从小到大的顺序进行排序,按照顺序返回指定数量相似图像。最后根据据检索结果中每幅图像的类别标签和查询图像的类别标签是否相同,计算出查询图像对应类别的检索map值。从附表3可以看出,以本发明提出的方法在两个数据集上拥有比传统神经网络模型更高的检索map值。表1自编码神经网络各层结构配置表表2卷积神经网络各层结构配置表layerconfigurationconv1filter96×11×11,stride4×4,pad0,lrn,pool3×3,stride2×2conv2filter256×5×5,stride1×1,pad2,lrn,pool3×3,stride2×2conv3filter384×3×3,stride1×1,pad1conv4filter384×3×3,stride1×1,pad1conv5filter256×3×3,stride1×1,pad1,pool2×2,stride2×2full6fc4096full7fc4096full8fch表3本发明与其他不同神经网络模型在两个数据库上map值对比当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1