本发明涉及机器学习技术领域,特别是涉及一种基于特定语义的图表示学习框架及其多标签分类方法。
背景技术:
图像分类任务在日常生活中经常发生,其是根据图像的语义信息将不同类别图像区分开来,是计算机视觉中重要的基本问题,也是图像检测、图像分割、物体跟踪、行为分析等其他高层视觉任务的基础。
多标签图像分类是计算机视觉中的基本但实际的任务,因为真实世界图像通常包含多个不同的语义对象。目前,它正在受到越来越多的关注,因为它支持基于内容的图像检索和推荐系统中的大量关键应用。除了处理角度,比例,遮挡,照明的复杂变化的挑战,预测多个标签的存在还需要挖掘语义对象区域以及对这些区域之间的关联和交互进行建模,使得多标签图像分类成为未解决的挑战任务。
用于多标签图像分类的当前方法通常采用对象定位技术或借助于视觉注意网络来定位语义对象区域。然而,对象定位技术搜索众多类别不可知和冗余的提议,很难被集成到深度神经网络中用于端到端训练,而视觉注意网络则由于缺乏监督或指导而仅仅粗略地定位对象区域。
目前,虽然rnn(recurrentneuralnetwork,循环神经网络)/lstm(longshorttermmemorynetwork,长短时记忆网络),进一步模拟语义区域之间的上下文依赖关系并捕获标签依赖关系,然而,rnn/lstm顺序地模拟区域/标签依赖性,其不能完全利用该属性,因为在每个区域或标签对之间存在直接关联,此外,他们没有明确地模拟统计标签共现,这也是本发明帮助多标签图像分类的关键。
技术实现要素:
为克服上述现有技术存在的不足,本发明之目的在于提供一种基于特定语义的图表示学习框架及其多标签分类方法,通过设计语义结耦模块,利用类别的语义特征指导学习类别相关的特征,并构建一个基于统计标签共存的图形来关联该些特征并通过图形传播机制以促进多标签图像分类。
为达上述目的,本发明提出一种基于特定语义的图表示学习框架,包括:
语义结耦模块,用于利用卷积神经网络对输入图像提取图像特征,将图像特征与语义特征相结合,并引入注意机制,利用语义特征引导图像特征权重的学习,并作用于图像特征,得到新的特征向量;
语义交互模块,用于先通过构建知识图谱统计数据集中类别共存的关联性来构建大型知识图谱,再利用一个门图网络来对知识图谱进行特征表达,迭代的更新知识图谱得到知识图谱的特征表示;
知识嵌入表达模块,用于将所述语义交互模块知识表达学习到的特征表示与所述语义结耦模块提取的图像特征学习相结合,以实现多标签分类。
优选地,所述语义结耦模块进一步包括:
图像特征提取单元,用于利用卷积神经网络对输入图像提取图像特征;
语义特征提取单元,用于利用预训练的glove模型提取所采用数据集所有类别的类别语义特征;
特征向量获取单元,用于通过引入语义引导注意机制,利用所述语义特征提取单元获得的类别语义特征来引导学习特征权重,并作用于原图像特征形成新的特征向量。
优选地,所述特征向量获取单元引入语义引导注意机制,其结合了通过所述语义特征提取单元获取的类别语义特征,以指导更多地关注语义感知区域,从而学习对应于该类别的特征向量,表示如下:
其中tanh(·)为双曲正切函数,
优选地,对于每个位置(w,h),所述特征向量获取单元首先使用低维双线性池化的方法将相应的图像特征
优选地,所述语义交互模块进一步包括:
知识图谱构建单元,用于统计数据集中类别标签和属性的关联性,构建大型知识图谱;
门图网络构建单元,用于定义一个门图网络以对知识图谱进行特征表达,利用所述知识图谱构建单元获得的数据集节点共存的统计信息初始化门图网络ggnn中类别节点之间的连接值,并利用所述特征向量获取单元得到的特征向量来初始化门图网络ggnn类别节点特征;
迭代更新单元,用于在所述门图网络中迭代地更新每个节点的信息。
优选地,所述知识图谱构建单元根据数据集中类别节点之间的共存性得到类别节点之间共存的共存统计信息,该信息为n×n维矩阵,构成知识图谱。
优选地,迭代过程如下:
对于每个节点v∈v,在迭代次数t都有一个隐藏信息
优选地,所述知识嵌入表达模块将门图网络ggnn的输入特征与最后迭代更新的节点特征进行结合,定义分类器及分类过程的损失函数,输入图片训练样本,并按照前向算法,后向算法和定义的损失函数进行分类网络参数的学习。
优选地,所述知识嵌入表达模块将输入图卷积神经网络的特征与传播后得到的特征进行融合,来引导网络分类,过程如下:
sc=fc(oc)
其中输入特征为
为达到上述目的,本发明还提供一种基于特定语义的图表示学习框架的多标签分类方法,包括如下步骤:
步骤s1,对输入图像提取图像特征,将图像特征与语义特征相结合,并引入注意机制,用语义特征引导图片特征权重的学习,并作用于图片特征,得到新的特征向量;
步骤s2,先通过构建知识图谱统计数据集中类别共存的关联性来构建大型知识图谱,再利用一个门图网络来对知识图谱进行特征表达,迭代的更新知识图谱得到知识图谱的特征表示;
步骤s3,将步骤s2知识表达学习到的特征表示与步骤s1提取的图像特征学习相结合,以实现多标签分类。
与现有技术相比,本发明一种基于特定语义的图表示学习框架及其多标签分类方法通过设计语义结耦模块,利用类别的语义特征指导学习类别相关的特征,并构建一个基于统计标签共存的图形来关联该些特征并通过图形传播机制以促进多标签图像分类,在pascalvoc2007和2012,microsoft-coco和visualgenome数据集的大量实验证明了本发明提出的框架相对于当前最先进方法的效果有着显著提高。
附图说明
图1为本发明一种基于元对抗学习的多目标域适应迁移方法的步骤流程图;
图2为本发明具体实施例中以两个目标域为例的基于元对抗学习的多目标域适应迁移方法的流程图;
图3为本发明具体实施例步骤s1的细部流程图;
图4为本发明具体实施例步骤s2的细部流程图;
图5为本发明具体实施例中基于特定语义的图表示学习框架的多标签分类过程示意图。
具体实施方式
以下通过特定的具体实例并结合附图说明本发明的实施方式,本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其它优点与功效。本发明亦可通过其它不同的具体实例加以施行或应用,本说明书中的各项细节亦可基于不同观点与应用,在不背离本发明的精神下进行各种修饰与变更。
图1为本发明一种基于特定语义的图表示学习框架的结构示意图。如图1所示,本发明一种基于特定语义的图表示学习框架,包括:
语义结耦模块10,用于利用卷积神经网络对输入图像提取图像特征,将图像特征与语义特征相结合,并引入注意机制,用语义特征引导图像特征权重的学习,并作用于图片特征,得到新的特征向量
具体地,语义结耦模块10进一步包括:
图像特征提取单元101,用于利用卷积神经网络对输入图像提取图像特征。
在本发明具体实施例中,利用深度残差网络resnet101来提取输入图片的特征,具体地,提取的图像特征fi表示为:
fi=fcnn(i)
其中i为输入图像,fcnn(·)为特征提取器,由卷积神经网络resnet101构成。
语义特征提取单元102,用于利用预训练的glove模型提取所采用数据集所有类别的类别语义特征。
在本发明具体实施例中,语义特征提取单元102通过预训练的glove模型得到的类别c的单词语义向量,其维度为300维,这里的类别是指所采用的数据集定义的所有类别,如coco数据集定义了person、bicycle等类别,
具体地,类别语义特征xc表示为:
xc=fg(wc)
其中wc是通过预训练的glove模型得到的类别c的单词语义向量,fg(.)指的是卷积神经网络。
也就是说,glove模型可以把一个单词转换成一个语义向量,如输入hand和cat等输出一个300维的向量,两个单词语义越相近,两个向量的余弦距离会越接近,如cat和dog的距离会比cat和car的距离近。由于glove模型提取类别语义特征为现有技术,在此不予赘述。
特征向量获取单元103,用于通过引入语义引导注意机制,利用语义特征提取单元102获得的类别语义特征来引导学习特征权重,并作用于原图像特征形成新的特征向量。
具体地说,特征向量获取单元103引入一个语义引导注意机制,其结合了通过语义特征提取单元102获取的语义向量,以指导更多地关注语义感知区域。从而学习对应于该类别的特征向量。具体如下:
也就是说,对于每个位置(w,h)(即图片特征上的位置,图片特征是一个三维的向量,纬度是c*w*h,w和h表示在这个向量上w和h对应维度上的位置),特征向量获取单元103首先使用低维双线性池化的方法将相应的图像特征
然后,在类别语义特征xc的引导下计算权重系数
其中,fa为卷积神经网络,对每个位置重复该项操作,再进行正则化:
最后,对所有位置执行加权平均合并以获得特征向量fc:
这里fc得到了关于类别c的相关信息。对所有类别重复该过程,获得所有类别相关的特征向量{f0,f1,...,fc-1}。
语义交互模块20,用于先通过构建知识图谱统计数据集中类别共存的关联性来构建大型知识图谱,再利用一个门图网络(gatedgraphneuralnetwork,ggnn)来对知识图谱进行特征表达,迭代的更新知识图谱得到知识图谱的特征表示。在本发明中,该网络的结构是一种递归神经网络,可以通过迭代更新节点特征来学习任意图结构数据的特征。
具体地,语义交互模块20进一步包括:
知识图谱构建单元201,用于统计数据集中类别标签和属性的关联性,构建大型知识图谱。具体地,知识图谱构建单元201根据数据集中类别节点之间的共存性得到类别节点之间共存的共存统计信息,该信息为n×n维矩阵,构成知识图谱,这里的数据集是指microsoftcoco多分类数据集,可以在网上下载。
门图网络构建单元202,用于定义一个门图网络(gatedgraphneuralnetwork,ggnn)以对知识图谱进行特征表达,利用知识图谱构建单元201获得的数据集节点共存的统计信息初始化门图网络ggnn中类别节点之间的连接值,并利用特征向量获取单元103得到的特征向量来初始化门图网络ggnn类别节点特征。在本发明具体实施例中,该门图网络ggnn的结构是一种递归神经网络,其可以通过迭代更新节点特征来学习任意图结构数据的特征,迭代的更新知识图谱得到知识图谱的特征表示。
迭代更新单元203,用于在图网络中迭代地更新每个节点的信息。
具体地说,在传播过程中,输入的是一个图
其中,av表示节点v和其相邻节点关系的a的子矩阵,σ和tanh分别是激活函数logisticsigmoid和双曲正切函数,⊙表示向量点乘,wz,
知识嵌入表达模块30,用于将语义交互模块20知识表达学习到的特征表示与语义结耦模块10提取的图像特征学习相结合,以进行多标签分类。具体地,知识嵌入表达模块30将ggnn知识表达学习到的特征与之前语义结耦模块10提取的特征进行结合,即将门图网络ggnn的输入特征与最后迭代更新的节点特征进行结合,定义分类器及分类过程的损失函数,输入图片训练样本,并按照前向算法,后向算法和定义的损失函数进行分类网络参数的学习。
具体地,将输入图卷积神经网络的特征与传播后得到的特征进行融合,来引导网络分类。过程如下:
sc=fc(oc)
其中输入特征为
图2为本发明一种基于特定语义的图表示学习框架的多标签分类方法的步骤流程图。如图2所示,本发明一种基于特定语义的图表示学习框架的多标签分类方法,包括如下步骤:
步骤s1,对输入图像提取图像特征,将图像特征与语义特征相结合,并引入注意机制,用语义特征引导图片特征权重的学习,并作用于图片特征,得到新的特征向量。
具体地,如图3所示,步骤s1进一步包括:
步骤s100,利用卷积神经网络对输入图像提取图像特征。
在本发明具体实施例中,利用深度残差网络resnet101来提取输入图片的特征,具体地,提取的图像特征fi表示为:
fi=fcnn(i)
其中i为输入图像,fcnn(·)为特征提取器,由卷积神经网络resnet101构成。
步骤s101,利用预训练的glove模型提取类别语义特征。
在本发明具体实施例中,通过预训练的glove模型得到的类别c的单词语义向量,其维度为300维,具体地,类别语义特征xc表示为:
xc=fg(wc)
其中wc是通过预训练的glove模型得到的类别c的单词语义向量。
步骤s102,通过引入语义引导注意机制,利用步骤s101获得的类别语义特征来引导学习特征权重,并作用于原图像特征形成新的特征向量。
具体地说,于步骤s102中,引入一个语义引导注意机制,其结合了通过步骤s101获取的语义向量,以指导更多地关注语义感知区域。从而学习对应于该类别的特征向量。具体如下:
也就是说,对于每个位置(w,h),首先使用低维双线性池化的方法将相应的图像特征
然后,在类别语义特征xc的引导下计算权重系数
其中,fa为卷积神经网络,对每个位置重复该项操作,再进行正则化:
最后,对所有位置执行加权平均合并以获得特征向量fc:
这里fc得到了关于类别c的相关信息。对所有类别重复该过程,获得所有类别相关的特征向量{f0,f1,...,fc-1}。
步骤s2,先通过构建知识图谱统计数据集中类别共存的关联性来构建大型知识图谱,再利用一个门图网络(gatedgraphneuralnetwork,ggnn)来对知识图谱进行特征表达,迭代的更新知识图谱得到知识图谱的特征表示。在本发明中,该网络的结构是一种递归神经网络,可以通过迭代更新节点特征来学习任意图结构数据的特征。
具体地,如图4所示,步骤s2进一步包括:
步骤s200,统计数据集中类别标签和属性的关联性,构建大型知识图谱。具体地,于步骤s200中,根据数据集中类别节点之间的共存性得到类别节点之间共存的共存统计信息,该信息为n×n维矩阵,构成知识图谱。
步骤s201,定义一个门图网络(gatedgraphneuralnetwork,ggnn)以对知识图谱进行特征表达,利用步骤s200获得的数据集节点共存的统计信息初始化门图网络ggnn中类别节点之间的连接值,并利用步骤s102得到的特征向量来初始化门图网络ggnn类别节点特征。在本发明具体实施例中,该门图网络ggnn的结构是一种递归神经网络,其可以通过迭代更新节点特征来学习任意图结构数据的特征,迭代的更新知识图谱得到知识图谱的特征表示。
步骤s202,在门图网络ggnn中迭代地更新每个节点的信息。
具体地说,在传播过程中,输入的是一个图
其中,av表示节点v和其相邻节点关系的a的子矩阵,σ和tanh分别是激活函数logisticsigmoid和双曲正切函数,⊙表示向量点乘,整个过程一共迭代t次,最终得到隐藏信息的集合
步骤s3,将步骤s2知识表达学习到的特征表示与步骤s1提取的图像特征学习相结合,以进行多标签分类。具体地,于步骤s3中,将ggnn知识表达学习到的特征与步骤s1提取的特征进行结合,即将门图网络ggnn的输入特征与最后迭代更新的节点特征进行结合,定义分类器及分类过程的损失函数,输入图片训练样本,并按照前向算法,后向算法和定义的损失函数进行分类网络参数的学习。
具体地,将输入图卷积神经网络的特征与传播后得到的特征进行融合,来引导网络分类,过程表示如下:
sc=fc(oc)
其中输入特征为
图5为本发明具体实施例中基于特定语义的图表示学习框架的多标签分类过程示意图。如图5所示,本实施例中,该基于特定语义的图表示学习框架的多标签分类过程如下:
1)cnn提取图像特征,具体表示如下:
fi=fcnn(i)
其中i为输入图像,fcnn(·)为特征提取器,由卷积神经网络构成,具体地,利用resnet101来提取输入图像的特征。
2)cnn提取语义特征,具体表示如下:
xc=fg(wc)
其中wc是通过预训练的glove模型得到的类别c的单词语义向量,维度为300维。
3)语义引导注意机制:
引入一个语义引导注意机制,其结合语义向量,以指导更多地关注语义感知区域,从而学习对应于该类别的特征向量:
更具体地说,对于每个位置(w,h),首先使用低维双线性池化的方法将相应的图像特征
然后在xc的引导下计算权重系数
其中,fa是一个卷积神经网络,然后对每个位置重复该项操作,再进行正则化:
最后,对所有位置执行加权平均合并以获得特征向量:
fc得到了关于类别c的相关信息,对所有类别重复该过程,并获得所有类别相关的特征向量{f0,f1,...,fc-1}。
4)知识图谱构建:
首先根据数据集中类别节点之间的共存性来得到一个类别节点之间共存的共存统计信息。该信息为n×n维矩阵,构成一个知识图谱。
5)定义ggnn网络结构:该网络的结构是一种递归神经网络,可以通过迭代更新节点特征来学习任意图结构数据的特征。
6)ggnn知识表达学习过程如下:
将3)得到的类别特征来作为门图网络中类别节点的值,将4)中统计矩阵作为类别节点之间的连接值,然后在网络中迭代更新类别节点的值。
具体地,在传播过程中,输入的是一个图
整个迭代过程如下:
其中,av是表示节点v和其相邻节点关系的a的子矩阵。σ和tanh分别是激活函数logisticsigmoid和双曲正切函数,⊙表示向量点乘。整个过程一共迭代t次,最终得到隐藏信息的集合
7)知识嵌入表达过程:
将ggnn知识表达学习到的特征与之前提取的特征进行结合;并定义分类器及分类过程的损失函数,输入图片训练样本,按照前向算法,后向算法和定义的损失函数进行分类网络参数的学习。
与现有技术相比,本发明具有如下优点:
第一,本发明制定了一个特定语义的图表表示学习框架,可以更好地学习特定语义的功能并探索它们之间的交互,以帮助多标签图像识别。
第二,本发明引入了语义结耦模块,它结合了类别语义来指导学习类别相关的功能。
第三,通过在各种基准测试中进行了实验,包括pascalvoc2007和2012,microsoft-coco以及具有更大规模类别的visualgenome,证明了本发明的框架显示出明显的性能改进。
综上所述,本发明一种基于特定语义的图表示学习框架及其多标签分类方法通过设计语义结耦模块,利用类别的语义特征指导学习类别相关的特征,并构建一个基于统计标签共存的图形来关联该些特征并通过图形传播机制以促进多标签图像分类,在pascalvoc2007和2012,microsoft-coco和visualgenome数据集的大量实验证明了本发明提出的框架相对于当前最先进方法的效果有着显著提高。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何本领域技术人员均可在不违背本发明的精神及范畴下,对上述实施例进行修饰与改变。因此,本发明的权利保护范围,应如权利要求书所列。