朱旭东,熊 贇
(1.复旦大学 计算机科学与技术学院,上海 200433;2.上海市数据科学重点实验室,上海 200433)
图像多标签分类技术作为计算机视觉领域的经典技术,在图像识别、检测等场景下得到广泛应用,具有重要研究意义。如何通过有效学习标签之间相关性的信息,提升多标签的分类效果,已受到越来越多研究人员的关注。目前,多标签场景下还存在数据分布不均衡、正负样本学习等问题。现有对多标签关系的建模多基于标签信息统计,一定程度上捕捉了标签相关信息,但仅使用标签统计信息的标签泛化性较差,容易产生不同样本分布类别间的偏差,不能有效利用图像信息学习标签关系。
本文提出一种基于图结构与多层次注意力的图像多标签分类算法,通过建立不同尺度大小的特征层次空间,对特征层次空间注意力和通道注意力的权重进行分析与学习。此外,将不同特征层次和不同特征通道的注意力权重与图像信息进行叠加,促进局部信息和整体信息的融合,从而获取标签语义空间和对应图像特征空间之间的关系信息。另外,通过分析标签相关性建立标签语义空间和图像特征空间的联系,并对标签语义特征和图像特征进行融合,引入图像特征信息和图注意力机制进行动态图模型更新。
多标签分类的主要任务是建立标签信息空间和数据特征空间的对应关系,与普通单标签分类任务最大的区别在于多标签分类中,同一实体的数据特征空间和标签信息空间存在多个映射关系。
在图像多标签分类的相关研究中,文献[1]在图像特征空间进行划分学习,文献[2-4]注重对图像中不同标签对应目标的图像特征进行学习,充分利用图像特征与分类相关的信息,但这些文献中所提算法忽略了标签相关性信息和标签语义信息,其中MRAR 算法[2]通过循环注意力模块提取图像特征不同区域信息,ORVA算法[3]通过引入无序循环网络对图像特征进行加权学习。文献[5]通过概率分布计算辅助标签分类,文献[6-8]利用标签语义信息融合图像特征辅助图像分类,但这些方法对标签相关性信息利用不充分。其中,文献[6]所提到的CMA 算法通过融合标签信息和图像进行多模态学习,而文献[8]所提的LGS 算法利用相似性网络捕捉标签与图像对应关系。文献[9-11]对标签间关系进行建模,其中CNN-RNN 算法[11]利用序列神经网络构建标签关系,结合卷积神经网络的图像特征进行学习,MLGCN 算法[12]和FGCN 算法[13]等通过构建多标签图模型,并利用图模型中的边定义标签共现关系。这些方法建模的标签关系利用了标签相关信息进行辅助分类,但是泛化性和类别分类能力不平衡,有待改进。
针对现有方法存在的一些问题,如MLGCN算法[12]在构建多标签关系时,只考虑到标签统计信息,容易造成标签关系过拟合问题;FGCN 算法[13]在对标签关系模型进行更新时,只使用标签信息,没有利用到图像特征信息,使得构建的标签关系无法有效辅助图像特征分类。本文提出基于动态图的多层级注意力(Multi Level Attention based Dynamic Graph,MLADG)算法,通过结合基于知识先验和标签共现相关性建立的图模型进行标签信息和图像特征融合,并采用图注意力动态更新机制进行模型学习。
本节主要介绍图像多标签分类算法MLADG,算法的主要框架包括通过多尺度多通道图像注意力机制学习图像特征,标签语义引导注意力机制融合标签语义,通过在共现关系和先验知识上的标签图模型结构,动态更新捕捉图像特征和标签之间关系。图1 为MLADG 模型整体架构示意图(彩色效果见《计算机工程》官网HTML 版)。
多标签分类问题中标签间的相互关系包含多标签分类的有效辅助信息。对于给定图像I的标签序列L=[l1,l2,…,ln],标签序列中任一标签li通过词嵌入层的权重矩阵W获得对应的低维表征向量ei。标签词语通常具有多种词性和词义,标签语义嵌入重点关注标签在词嵌入模型中所具有的名词词性代表的语义。通过Glove 模型获得图像标签词语义信息。定义图像多标签共现关系图模型Gs={Vs,Es},其中节点关系集合Vs∈{νs1,νs2,…,νsc}表示嵌入的标签特征信息;边集合为Es∈{es1,es2,…,esc}为图像多标签间共现关系,包含与每条边相关非负权值。对于其中一条边eij的值由pij=P(νi|νj)确定,即当标签lj标记情况下标签li同时进行标记。同理,pji表示当标签li标记的情况下标签lj同时标记的概率。
标签共现图通过统计标签共现次数,可以有效学习到标签的分布情况。但标签共现图受训练集数据分布影响很大,可能同时存在共现次数较多的标签关系,造成频率偏差,使得模型分类准确性受到数据分布不均衡的影响。为此,除共现关系图外,借助知识图谱ConceptNet[14]信息构建知识先检验关系图Gk={Vk,Ek},其中节点集合Vk∈{νk1,νk2,…,νkc}为嵌入的标签语义特征,边集合Ek∈{ek1,ek2,…,ekc}为知识图谱中标签相关性。ConceptNet 中各个标签知识实体通过多元组形式构成,将各个标签在知识图谱中同一元组的数量占该实体全部元组比重作为边权重。
对于构建的标签共现图Gs和标签知识图Gk,分别对其边权重矩阵进行标准化后得到设定图融合参数λ∈(0,1),最终得到的多标签信息融合图的计算式如式(1)所示:
多标签图像数据集I={i1,i2,…,in}中图片i所包含的图像特征空间信息与标签信息空间存在映射关系。但在图像中,真正对确定其标签有帮助的特征信息只是图像局部的关键特征信息,除此之外还存在对确定图像标签类别存在干扰的噪声信息。通过多尺度多通道图像特征注意力模块在不同特征尺度和维度上对每个标签语义对应的重点信息进行提取,标签映射注意力模块负责捕捉标签语义信息和图像特征信息相关性。
2.2.1 多通道注意力模块
给定的多标签图像中不同标签所对应的图像区域目标大小不同,占据更大图像区域的标签可以提供更多的图像特征信息。通过进行卷积神经网络学习,多标签对应的图像特征也分布在特征空间的各个通道。选取残差网络ResNet 作为图像特征提取的主干神经网络,将残差网络不同层次卷积层Conv1、Conv2、Conv3 的输出特征V1、V2、V3作为多尺度注意力的输入,其中Conv1 为ResNet 中第1 个BottleNeck模块最后一层卷积层,Conv2 为ResNet 中第2 个BottleNeck 最后一层卷积层,Conv3 为ResNet 中第3 个BottleNeck 最后一层卷积层。相应的V1表示较浅层特征信息,V2和V3分别表示中间层和深层特征信息。此外,对于每一层图像特征,通过多通道分组注意力模块得到图像通道特征注意力A1、A2、A3,再通过softmax 函数获得归一化后的注意力信息A′1、,最后图像I对应的特征表示如式(2)所示:
图像I经过卷积神经网络特征提取后得到的特征空间为X∈RH×W×C,其中:H和W分别表示特征尺度的高和宽;D表示特征空间的通道数。对于某个特定的类别lc通过多通道注意力机制获得其相应注意力权重信息ac,将权重信息和特征空间进行点积运算可以获得加权后的特征信息。对于全部类别的注意力信息空间A∈H×W,通过注意力学习后得到的图像信息表征如式(3)所示:
通过C个1×1 卷积对特征空间X∈RH×W×D进行降维至X′∈RH×W×C,对X′中第ci个通道内特征进行注意力加权为加权处理后 的ci通道特征,μx和σx分别为X特征空间中特征信息的均值和方差。的表达式如式(4)所示:
随后通过设置特征恢复参数γ和β生成注意力权重,表达式如式(5)所示:
其中:aci为特征通道ci中学习到的注意力权重信息。
2.2.2 标签引导模块
为促进标签语义特征和图像特征的融合,更好地学习图像特征的标签意义,对于嵌入学习到的标签lc的标签词语义ec,通过特征向量余弦相似度的计算捕捉标签语义和图像特征对应关系,可以得出标签k在特征ν的位置i处的注意力
2.2.3 动态特征图融合更新
标签共现关系图和知识先验图注重于标签相关性和标签语义知识的挖掘,图模型的构建依赖于静态的标签统计信息和知识信息。为利用图像信息对图模型进行更新,本文采取基于图注意力[15]模式的动态特征融合图更新模块。具体实现方式:标签融合图最后一层输出Gf和多尺度注意力模块输出特征Vf进行Concat 融合,得到动态图模型的输入信息hi。
之后,通过如式(9)所示的图注意力公式计算得出动态特征融合图注意力神经网络中注意力系数αij:
在模型训练的过程中,不同批次数据的输入提供动态的图像信息,通过对多尺度模块输出特征的动态变化更新图注意力层的输入,使得模型在捕捉多标签相关性的同时保持对图像特征信息的敏感性。
为验证本文算法的有效性,选取2 个数据集进行实验,并和相关算法进行对比。实验采用ResNet101[16]模型作为图像特征提取器,在8×1 080 ti显卡服务器训练,使用的优化器为SGD,动量参数设置为0.9,初始学习率为0.01,训练周期为100,特征融合参数λ设置为0.5。
图像多标签分类评价指标最常用的指标为平均均值精度(mean Average Precision,mAP),同时也会采用平均每类精度(Class Precision,CP)、平均每类召回(Class Recall,CR)、平均每类(Class F1,CF1)以及整体平均精度(Overall Precision,OP)、整体平均召回(Overall Recall,OR)、整体平 均(Overall F1,OF1)。相关表达式分别如式(11)~式(16)所示。
使用VOC-2007[17]和COCO-2014[18]数据集。其中,VOC-2007 数据集包括Person、Animal、Vehicle 等20 个标签类别,分 为train、val、test 这3 部分,共有9 963 张图片;COCO-2014 数据集是使用最为广泛的图像数据集之一,包含共80 现实场景常见类别,82 783 张训练图片,40 775 张测试图片。
为评估本文算法的有效性,选取ResNet101[16]、CNN-RNN[11]、RMIC[19]、MLGCN[12]、F-GCN[20]5 种算法进行对比实验分析。
ResNet101 算法通过设置残差模块解决多层神经网络随网络深度增加带来的梯度弥散问题,ResNet101 是其中神经网络共101 层的版本。CNNRNN 算法通过卷积神经网络特征提取器和序列神经网络的结合,建立多标签序列捕捉多标签相关性,为图像分类提供辅助信息。RMIC 算法基于强化学习中原始多标签问题框架,通过组合图像特征和前序标签信息作为下一轮标签预测的新状态。MLGCN 算法通过以标签为节点,标签相关性为边构建图模型,边权重为标签共现概率,使用图卷积神经网络进行图模型更新。F-GCN 算法提出一种基于图卷积神经网络的快速模型,利用多模态分解双线性池化融合图像信息和标签嵌入信息,以端到端方式进行训练。
不同算法在各个数据集的实验结果如表1、表2所示。其中表1 为VOC-2007 数据集下的实验结果,表2 为COCO-2014 数据集下的实验结果,表中加粗数字表示该组数据最大值。
表1 不同算法在VOC-2007 数据集下的实验结果对比Table1 Comparison of experimental results of different algorithms on VOC-2007 data set %
表2 不同算法在COCO-2014 数据集下的实验结果对比Table2 Comparison of experimental results of different algorithms on COCO-2014 data set %
从表1、表2 中可得以下结论:
1)本文所提MLADG 算法在VOC-2007 和COCO-2014 两个数据集中,在mAP、CP、OP 等指标上超过另外5 个对比算法。MLADG 算法在图像多标签分类的任务上有较好的表现。
2)由于MLGCN 算法相对于Resnet101 算法增加了对于标签共现数据信息的学习,因此指标有明显提升。但使用标签共现关系,可能导致数量较少的标签种类被正确分类的概率降低,而数量较多的标签种类更易被分类。本文算法能够增强对图像特征和标签相关性的关系学习。
3)F-GCN 算法相对于MLGCN 算法增加标签语义信息和图像特征信息的融合,有助于标签语义指导图像特征的学习,而MLADG 算法通过动态学习,能够更好地利用图像特征更新图模型。
为验证MLADG 算法相关模型设置的有效性,将原有模型中的各结构通过以下设置:
1)多尺度多通道注意力验证。移除多尺度多通道注意力模块,直接使用ResNet101 算法提取的特征进行后续运算,其他保持不变。
2)标签引导注意力验证。移除标签引导注意力模块,其他保持不变。
3)动态图更新验证。移除动态特征图更新机制,只使用图注意力网络,其他保持不变。
图2 为MLADG 算法中各结构有效性消融实验的结果。由图2 可知,有效性实验中各结构的移除均导致图像多标签分类各指标的下降,说明MLADG 中各结构对于提高图像多标签分类效果均有正向作用,且各结构能有效协同。其中多尺度多通道注意力模块对mAP、CP、OP 的影响最大,说明该模块对图像中重点信息注意力的学习有效。此外,移除标签引导注意力模块指标下降,说明该模块对标签信息和图像特征的融合有效引导了图像信息的学 习。相 比于MLGCN[12]等算法,MLADG 算法将标签关系图和图像特征信息分开学习,动态特征图能够将图像特征学习和标签关系建模结合,在mAP 指标上相对于静态更新的标签关系图提升了1.2%。
图2 MLADG 模块消融实验Fig.2 Ablation experiment of MLADG module
对MLADG 建模的多标签信息关系图中标签关系进行可视化,如图3 所示。对于两个标签li和lj,第i行第j列的示意图方格表示为pi,j=P(li|lj),颜色越深表示标签间相关性越强。
图3 多标签相关性可视化示意图Fig.3 Visualization diagrammatic sketch of multi label correlation
由图3 中可知,MLADG 算法能够对图像多标签中标签相关性进行清晰有效地建模。
为证明MLADG 算法中相关参数的有效性,本文在VOC-2007 数据集下进行不同参数验证实验。
在MLADG 算法中,参数λ为标签共现图和知识先验图平衡参数,参数k为图注意力神经网络层数。在参数敏感性实验中,将λ在0~1 间进行遍历,将图注意力层数由1~6 进行遍历,实验其他参数设置和硬件环境配置与对比实验相同。
图4和图5分别为参数k和参数λ验证实验的结果,由图4 可知,当k=2 时,本文所提MLADG 算法达到最好的效果。这可能是当k=1 时图注意力层过浅,无法有效建模多标签关系,而当k过大时可能存在标签特征嵌入过度平滑的问题,导致模型测试指标的下降。由图5 可知,随着参数λ增加,融合多标签图模型中标签共现图模型所占权重不断增大,mAP 指标逐渐上升,直到λ 达到0.7 后开始下降。这可能是因为标签共现图模型中包含更丰富的标签相关性信息,但由于训练数据和测试数据的分布差异性以及数据集中不同类别图像样本数量不均衡分布对模型训练的影响,导致分类器在不同类别图像样本中的分类能力偏差较大,整体指标降低。因此在参数λ过大时,融合多标签图模型中标签相关性信息容易出现不平衡的现象。
图4 k 参数在VOC-2007 数据集上的效果验证Fig.4 Effect of parameter k in VOC-2007 data set
图5 λ 参数在VOC-2007 数据集上的效果验证Fig.5 Effect of parameter λ in VOC-2007 dataset
在图像多标签分类中,根据标签关系进行建模存在标签与图像间学习关联性弱的问题,且容易导致过拟合。本文提出一种基于多层次注意力和动态图注意力机制的图像多标签分类算法MLADG。通过构建多标签信息图模型建立标签关系,将使用多层次注意力获取的多层次图像特征信息与标签语义信息进行融合,构建标签语义和图像特征相关性,并将动态图模型引入图像信息中以更新模型。实验结果表明,在相同测试环境下,与MLGCN、F-GCN 等图像多标签分类算法相比,本文算法在mAP、CP、OP 等指标上均取得了较好效果。下一步将进行更高阶维度的标签相关性学习,如多个标签间连续相关性的学习,并从标签互斥角度对标签关系的定义进行深度挖掘。