基于粒子群算法寻最优属性关联下的零样本语义自编码器
2021-04-25芦楠楠张欣茹
芦楠楠 张欣茹 欧 倪
①(中国矿业大学信息与控制工程学院 徐州 221116)
②(北京理工大学信息与电子学院 北京 100081)
③(北京理工大学自动化学院 北京 100081)
1 引言
在图像分类任务中,为保证测试集与数据集类别相同,在每次增加新的图像类别时需要对模型重新进行训练。从而,传统的图像识别方法在大量新类别出现时图像分类效果会显著下降。为解决现实生活中海量类别的存在,使计算机具有知识迁移的能力,“零样本学习”成为研究焦点[1-4]。基于属性的零样本分类是通过对不同类别之间的共享属性进行学习,从而实现从训练类别到测试类别的迁移。在零样本发展的前期阶段,对属性的考察仅仅停留在二值[5]层面,“1”表示具有该属性的性质,“0”则表示不具有。采用二值属性对于共享属性层描述过于简单,从而使该模型对语义的理解存在偏差,因此相对属性(Relative Attribute, RA)[6]这一概念被提出,并在零样本图像分类中取得了良好的分类效果[7]。相对属性的属性值是连续的,其大小可以表示为样本具有该属性的相对强弱程度,从而提高了属性信息的准确性。作为样本的另一种表示,属性携带的语义信息可以建立起已知类别与未知类别的联系。鉴于深度神经网络的特征学习能力,将语义信息用于引导底层特征学习过程,从而获得具有鉴别性信息的共享特征[8,9]。语义自编码器(Semantic AutoEncoder, SAE)[10]将属性作为隐藏层,实现了零样本图像底层特征到语义属性的映射,取得了突破性进展。然而,从深度神经网络学习的图像底层特征中提取出的共享属性信息用作零样本分类时,会使属性之间固有的相关性信息丢失,如何对丢失信息进一步补偿成为零样本图像分类的重要研究内容。
在传统的属性学习[11-13]方法中,很少考虑到这些相关性信息并予以补偿。随着对零样本学习研究的逐渐深入[14-16],现有的属性相关性的研究证明了属性相关性的挖掘有利于属性分类器性能的提高[17-22]。Liu等人[17]采用属性相关性矩阵与原始共享属性进行运算从而将相关性信息引入属性层。Wang等人[18]利用互信息对属性间关系进行衡量。Biswas等人[19]提出将语义属性相关性引入嵌入空间的跨越空间结构。Quercia等人[20]发现,应该对不同城市感知属性之间的相关性进行建模,以通过适当共享视觉知识来实现更有效和准确的相对属性学习。Min等人[21]提出了一种多任务深度相对属性学习网络,通过多任务连体网络同时学习所有相对属性,解决了成对排名算法独立学习每个感知属性时造成的不同属性之间的关系的丢失。通过将属性相关性向多维度扩展,Qiao等人[22]研究了多个属性之间的相关性,从而构造属性链,结果表明当属性链长为2时属性分类器性能达到最优。因此,本文重点研究二元属性相关性,将属性相关性引入共享属性层中,以提升零样本图像分类时的信息量和准确度。
本文提出一种自动寻找最优属性相关方法,弥补SAE在属性学习中缺少的属性相关性信息,对属性进行相关性信息补偿。该方法将属性相关性求解转化为参数寻优,使用经典启发式粒子群优化算法(Partial Swarm Optimization, PSO)寻找最优的嵌入属性相关性信息的新属性。首先,学习属性与属性间的相关性,在原始的共享属性层中加入相关性变量。考虑到参数与目标之间的单向可解性,利用PSO平衡原始属性与相关性变量间的关系。在每次分类过程中都要对新的属性进行排序,然后将预测的属性值映射到标签。通过交叉验证下的双向损失函数来衡量本次迭代过程中求解的映射矩阵性能,将此函数作为PSO算法寻优的适应度函数。实验结果表明,该方法在零样本图像分类数据集的性能相较于其他方法可以得到明显提升。
2 基于语义自编码器的零样本图像分类
语义自编码器[10]是一种特殊的自编码器,其最显著的特点是中间隐藏层为一层语义层。网络结构如图1所示。其中,输入层为基础的特征向量空间,隐藏层是一层语义层。可将输入层特征向量空间进行压缩编码和解码,输出层为经过隐藏层处理后恢复出来的特征向量空间。在进行编解码的过程中,使用原始数据对编码器和解码器进行额外的约束,使得编码后的数据尽可能恢复成为原来的数据。
为了简化模型,加上限制条件WX=S,其中S为数据特征X对应的属性向量。对式(1)做W∗=WT变换,进一步转换为优化问题:
因此,变换后的目标函数式(2)是凸函数, κ为大于0的权重系数。改写式(2),可得
由于需要求式(3)的极值,所以需要对其进行求导操作,导数为零便可获得相应的结果
图1 SAE结构框架
该方程为西尔韦斯特方程,可以通过Bartels-Stewart算法求解得出。
SAE可以通过学习训练样本(X, Y)中的属性知识完成从底层特征到属性值的映射,用属性共享机制将学习到的知识迁移到未知类别中,实现类别边界的突破。在用SAE进行零样本分类时,SAE的中间层为训练图像相对属性的分数值。在使用SAE编码器模型的时候,就可以获取到从视觉底层特征到语义共享属性层的映射矩阵W。在测试的过程中,使用训练得到的W可以将测试图像的底层特征映射成相对属性分数值,然后利用高斯分布的概念来统计计算得出均值和方差,最后利用最大似然估计来预测出其测试样本标签。
3 基于粒子群算法寻最优属性关联下的零样本语义自编码器
3.1 语义属性相关性分析
基于描述类别的属性的可共享性,共享属性层的属性与属性之间存在一定的语义相关性[23]。如在描述动物时,“会飞”与“有翅膀”以及“会游泳”与“无皮毛”大多数情况总是相关联的。将这些相关属性予以结合或者引入相关性信息可以对分类起到积极作用,弥补共享属性层的信息丢失。为表述这些属性之间的正负相关性以及相关程度,根据类别、属性以及训练样本个数,计算训练样本属性-属性的相关性,将其记作相关性矩阵。
假设数据中共有 N个训练样本,ani为第n个样本的第i个属性值。如果用Rij表 示属性ai, aj间的相关性,其计算公式可表示为
3.2 粒子群优化属性相关性下的语义自编码器(PSOSAE, PSA)
在零样本分类中,K, L为训练集和测试集样本数,样本总数为K+L。样本有H个相对属性,则样本表示为 H ×(K+L)的属性矩阵,记作Score ∈RH×(K+L)。 属性关系为H ×H的相关性矩阵,记作 R L ∈RH×H。在原始属性的基础上,为引入属性相关性且保持原始属性维度,采用式(7)定义新属性S core∗。
其中, λ , µ 为两个权重系数,λ 为乘性因子,对属性相关信息做调整; µ为加性因子,对原始属性信息保留。
考虑到参数与目标之间的单向可解性,本文采用PSO[26,27]寻找合适的 λ , µ,提出将PSO算法与SAE算法结合,简称PSA。粒子群算法是一种基于群体迭代的群算法,依据粒子在解空间追随最优的粒子的方法进行搜索,以使粒子能够飞向解空间并在最好解处降落。
将PSO算法嵌入属性寻优过程中,其搜索步骤如下:
步骤 1 初始化D维粒子群,设定群体规模n、每个粒子的位置 Gi与 速度Vi。 将乘性因子λ 与加性因子µ 作为规模大小为250组的粒子群G,并用随机数设定初始位置。
步骤 2 计算每个粒子的适应度值Fit[Gi]。适应度函数Fitness是经过每组粒子群确定新属性值下SAE求解最佳映射矩阵时的优化目标:
步骤 6 如果满足误差结束条件或者最大循环次数则退出循环迭代,否则返回步骤2。
3.3 类别高斯图像分类
本文采用直接属性预测模型(Direct Attribute Prediction, DAP)[11]实现零样本分类,通过属性分类器的学习,建立属性值到类别标签的映射。在DAP模型中,先将数据从特征空间映射到中间层的属性向量层,属性向量层的属性标签是通过收集来的每一类特征的总结,通过利用数据预测属性,再通过属性映射到类别标签来实现对于未知类别的预测。分类过程中,针对 m个已知类别,对应地用一个生成模型表示该类别的特征。根据图像相对属性取值的连续性,本文采用高斯模型来估计类别特征,采用最大似然估计实现高斯模型的参数估计。而未知类别的模型参数则通过与已知类别间的相对模型来进行指导学习。在判断标签类别时本文采用高 斯贝叶斯计算最大后验概率来实现。
4 实验仿真与分析
4.1 数据集
实验选用数据集Pubfig[28]和OSR[29]。Pubfig是公开人脸数据集,包括8位名人的772幅图像,拥有11个语义属性。OSR是户外场景识别数据集,包括8个户外场景共2688幅图像,拥有6个语义属性。
在实际处理时,针对Pubfig和OSR数据集,本实验设定不同训练类别数目和测试类别数目来验证方法,采用交叉验证的方法增大实验量,求取所有情况的平均值来验证方法有效性。本实验讨论PSA的零样本分类结果,并采用DAP[11], Relative[6]与SAE[10]方法做比较。
4.2 属性相关性分析
为了直观地分析属性相关性,采用相关性图对属性相关性强弱进行可视化表示。图2展示了Pubfig和OSR数据集的属性正负相关性及强弱信息。如图所示,蓝色和红色表示正、负相关。属性相关性强弱由颜色深浅来表示,颜色越深表示相关性越强,白色则表明两属性之间不存在相关性。根据H个属性两两相关性度量,可构建相关性矩阵RH×H。例如,就OSR的6个相对属性,构建两两属性间的相关性中,属性size-large与diagonal-plane有较强的正相关性,其相关性系数可高达0.9333;而属性perspective与natural有较强的负相关性,相关性系数为-0.9491。可见,属性中嵌入相关性,可有效对 原数据集属性值进行信息补偿。
表1 PSA算法伪代码
图2 OSR和Pubfig数据集属性相关性相比
4.3 参数λ , µ分析
根据建立的属性相关性,利用PSO对属性参数寻优。PSO的具体参数设置如表2所示。
图3给出Pubfig数据集(训练和测试类别数为6和2情况下的第9组交叉验证组合的情况)中,PSO在第1代与最后一代的粒子分布情况。起初250组粒子均匀地分布在设定的位置范围内,随着迭代次数增加,最终适应度值下粒子所处的位置集中,并未出现在所设置的范围边界处,粒子分布随着代数增加可以很好地聚集收敛,证明PSO整体参数设置合理。
此外,表3给出了Pubfig数据集中PSO寻优参数下对应的测试精度(训练和测试类别数分别为6和2,共计=28次交叉验证)。对于每一次类别组合,均可以采用PSA算法对其寻求最优的乘性因子和加性因子的参数组合,并计算该组合下引入相关性的属性值,将训练集属性作为SAE输入求得最优目标下的映射矩阵。对训练集属性值进行重新排序,利用求解出的映射矩阵计算出测试集的属性值,再构建高斯分布,根据最大后验概率分配标签,计算测试集的精度。
由表3可以看出PSO在寻最优 λ , µ时,其值都落在所设定的位置范围内,即再一次证明了采用PSO进行参数设置的合理性,而对应参数下引入相关性的新属性值在Pubfig数据集中的分类结果也得到 了提高。
4.4 零样本图像分类
PSA将得到的最优参数用来更新属性值,利用SAE求解映射矩阵计算测试类别属性值,对不可见类构建高斯分布求解最大后验概率完成标签映射。根据训练类别数m与测试类别数M的不同组合,完成每一组下的交叉验证的分类精度(Accuracy, Acc)与ROC曲线下面积(Area Under Curve, AUC)[30,31]。其中,分类精度能够真实地反映出分类正确的样本数与测试样本总数的关系。AUC可以反映误判率(把实际为假值的样本判定为真值的概率)与灵敏度(把实际为真值的样本判定为真值的概率)之间的关系,以便更好地对分类效果进行评价。表4和表5分别给出了Pubfig和OSR数据集中6组交叉验证的Acc和AUC值。
由表4和表5结果可见,两种数据集的平均测试结果Acc和AUC整体均有不同程度提升,其中Acc提升明显。特别是在 m /M =2/6和m/M =6/2时,对于Acc, PSA在OSR上可提升10%以上,在Pubfig上也有近10%提升。而且,随着训练类别增加,Acc逐渐升高。然而对于Pubfig中m/M =4/4和m/M =5/3两种情况,PSA并没有取得显著优势的分类精度;在O S R 数据集中 m/M =4/4时,PSA的分类精度略微降低。总体来说,在与经典算法比较时,PSA可以得到较好的分类效果,尤其是在训练、测试类别不均衡的情况下。因此,PSA更加适用于处理训练和测试类别不均衡的情况。这是由于,当训练组别和测试组别数目相差较大而造成两类样本不均衡且交叉验证组别较少时,属性之间相关性的建立能够较大程度缓解零样本分类的强偏问题。此外,在优化属性相关性时,PSA所采用的PSO是一种进化算法,进化算法的优化过程本身所具有的随机性,难以确保所有情况下PSO找到的参数都是全局最优,而PSO现有的寻优能力已经显著改善了零样本分类效果。对于AUC,从表4和表5的结果来看,PSA相较于SAE略有提升。但是在OSR数据集上 m /M =4/4时,AUC值略低于SAE。这是由于PSO的优化目标是训练集的Acc,并未将
AUC作为优化目标进行参数寻优,因此得到的新参数并不一定满足AUC更高的效果。本文之所以采用了单目标优化而未优化AUC指标,目的是更大幅度地提升Acc指标,提高分类性能。
表2 PSO的参数设置
图3 PSO粒子始末分布图
表3 PSO寻优参数及测试精度(Pubfig数据集 测试类别数:2)
表4 OSR数据集的分类精度和AUC值
为了进一步分析PSA的详细分类表现,本文分别给出了PSA与SAE在混淆矩阵上的实验结果。本文随机选取m /M =3/5 和m /M =5/3两种分组下交叉验证的其中一组混淆矩阵结果。图4和图5给出PSA和SAE两种方法在OSR和Pubfig两组数据集上的混淆矩阵分类结果,其中纵坐标表示真实标签,横坐标表示预测标签。每个方格内的小数代表测试分配标签个数与该标签的真实个数的百分比,颜色越深数值越小,颜色越浅对应的数值越大。表征分类结果的好坏时,对角线上的数值越大越好,即对角线上的方格颜色越浅越好。对比图4(c)和图4(d),Insidecity与Opencountry两种户外的场景分类中,SAE错分率较高,且两者在分类过程中,互相错分的概率很大,而PSA 因为相关性的信息引入,分类精度大幅度提升,使得这两种场景分类具有更强的辨别度。同样地,对比图4(a)和图4(b),SAE在Forest类别上的分类精度很低,易错分为Opencountry。在引入相关性分析后,PSA提高了Coast, Opencountry及Forest 3种场景的分类精度。然而,其在Insidecity和Street上的分类精度却略有降低。这是由于PSA是在训练集上优化属性相关性信息,所得到的属性相关性并不能完全符合每种类别样本的描述。甚至某种类别的属性相关性信息与样本平均的属性相关性信息的正负相关性是相反的,从而相关性信息的引入会对个别类别样本的分类产生消极影响。但是,通过交叉验证实验可以看到,属性相关性信息的引入促使整体分类精度得到了显著提高,在多种训练、测试类别组合中获得较稳定的分类效果。对比图5(a)和图5(b),对于JaredLeto与MileyCyrus两人图像,SAE分类的正确率较低,而PSA分类精度在一定程度上有明显改善。混淆矩阵的实验结果进一步证明了在相同的算法架构下,引入属性相关性的信息补偿可以有效地改进分类精度,并且通过属性多元化可以对共享层的属性信息进行进一步挖掘。
表5 Pubfig数据集的分类精度和AUC值
图4 分类结果混淆矩阵(OSR数据集)
图5 分类结果混淆矩阵(Pubfig数据集)
5 结束语
本文致力于对零样本图像分类中构建的共享属性层进行丢失信息的补偿,通过PSO引入最优属性相关性信息,提升零样本图像分类的分类效果。针对特征到属性的映射层采用SAE,针对属性到标签的归类采用对不可见类构建高斯分布。该方法在Pubfig和OSR数据集上可获得良好的分类效果,并与经典的零样本图像分类方法相比有明显提升。从而验证了PSA方法的有效性。该方法使用PSO寻优属性相关性参数具有很好的移植性和灵活性。属性多元信息化有利于在已有属性基础上提取图像的鉴别性信息。在未来的工作中将重点探讨复杂图像分类中的属性链的动态提取。