随着计算机技术的发展,文化与科技融合的趋势越来越明显.2019年,科技部等六部委联合印发意见[1]指出文化科技创新能力的重要性,提出建立文化科技融合创新体系.传统民族服饰是文化的重要载体,服饰图案一直以来都是学者用来研究传统文化特色与历史传承的重点对象.如今对传统服饰图像的应用局限于图像数字化处理中的识别[2]、分割[3]和检索[4]等,很少有文献对文化内涵进行深入的挖掘解读.近年来,图像处理,特别是图像多标签标注研究成为热点[5-9].一方面,随着深度学习方法的研究深入,多标签标注算法性能得到很大程度的提升;另一方面,区别于传统的单分类和多分类,多标签标注算法可以为每个样本分配多个类别,算法的适应场景更加丰富,特别是适合含义丰富的传统民族服饰图像.但由于传统民族服饰图像数据集规模较小,因此用于深度学习方法容易造成过拟合而影响模型性能;同时,现有多标签标注方法多用于自然图像或是文本,很少针对传统民族服饰文化应用.在服饰多标签标注方向,文献[10]提出一种相似系数结构不相关字典学习算法(similar coefficient dictionary learning with structured incoherence,SCMIDL),该算法为每一个类别构建一个字典.但SCMIDL算法仅仅通过降低类内散度对重建系数判别能力提升有限,而且对数据集要求较高,不同数据集效果稳定性差.为了解决上述问题,在SCMIDL算法基础上,本研究提出一种增强重建系数线性判别能力的方法(enhanced reconstruction cofficient dictionary learning with structured incoherence,ERCDLSI).ERCDLSI方法引入SVM思想,为每个不同类别的样本重建系数构建一个SVM分类器,在目标函数中对使用线性SVM分类错误的样本自适应不同程度的惩罚.增强样本重建系数的线性判别能力.在测试阶段,利用样本在不同类别字典上的重建系数以及距离不同分类器超平面距离来完成标签排序.最终提升算法标注性能,并使不同训练集划分的结果更加稳定.为了证明算法的有效性,从数据集中多次选取训练集进行实验,采用Average-Precision等常用的多标签学习性能指标作为评价标准.1 SCMIDL算法原理1.1 SCMIDL算法描述字典学习算法在用做分类任务时,一般构造一个结构化的字典,字典中不同原子对应不同类别,将样本在字典上进行重建,获得重建系数.测试阶段,把输入的测试数据在不同类别原子上实现重建.一方面,利用重建系数的差别实现对输入数据的多标签标注任务;另一方面,经过重建后得到的重建系数,也具有一部分判别能力.当然也可以通过两种方法结合来提升最终的标注性能.相比较于传统方法中构建一个结构化的字典的做法,SCMIDL算法通过为每一个类别单独构建一个字典来解决多标签标注的问题.算法模型定义为minD,A∑i=1C{f(Xi)+2λ1||Ai||1+λ2f(R)+λ3f(Mi)},(1)式中:D为字典原子组成的矩阵;A为样本重建系数向量组成的矩阵;Xi为第i类样本的特征;Di为该类样本的字典;Ai为该类样本在字典Di上的重建系数;λ1,λ2,λ3为三个超参数;C为样本类别数;Mi为第i个类别中所有样本的中心.令式(1)中f(Xi)=||Xi-DiAi||F2,f(R)=(∑j≠iRij||DjTDi||F2),其中Rij表示类别之间的余弦距离.令f(M)=||Ai-Mi||F2,将所有样本进行重建.为了能够更好地构建不同类别的字典,使之能够包含标签之间的相关信息,添加标签相关项,其中||DjTDi||约束不同类别字典原子之间的相似性.通过相关系数Rij来衡量两个类别之间的相关程度.在SCMIDL算法中使用余弦距离来计算Rij.在进行测试过程中,一方面利用输入数据的重建误差;另一方面使用其在本类字典上的重建系数距离本类样本中心点的距离来完成最终的分类标注任务.分类标注表示为ei=||x-Diα̂i||22+λ1||α̂i||1+γ||α̂i-mi||22,(2)式中:ei为该测试样本在第i类上的置信度;α̂i为重建系数.根据不同类别的置信度获得最终每个标签的排列结果.1.2 SCMIDL算法分析SCMIDL算法通过利用重建系数类内散度惩罚项,使相同类内样本的重建系数之间更加接近,提升重建系数自身的分类能力.但是算法本身存在一定问题,如果重建系数分布呈独立的团状,如图1所示,那么类别之间相交很少或者没有相交.通过添加类内惩罚项,可以将类别之间独立出来.但事实上,由于样本是在不同类别的字典上进行重建,因此重建系数的分布接近于随机,如图1(a)所示,这种情况下对于提升重建系数的分类能力效果有限.10.13245/j.hust.210304.F001图1SCMIDL算法增强重建系数在测试阶段,测试样本置信度计算方法为在某一类别字典上的重建误差加上测试样本距离该类类中心的距离.如果最终结果如图1(b)中所示,那么测试样本距离某类类中心的距离不但无法作为衡量是否输入该类的标准,而且可能取得相反效果.2 增强重建系数的多标签标注算法2.1 算法原理根据上文分析,SCMIDL算法对重建系数判别能力的增强有着一定限制.为了弥补这个缺陷,使重建系数增强更具有普遍性,提出一种增强重建系数算法ERCDLSI.该方法在迭代过程中,不断提升重建系数的线性分类能力,同时使用经典的支持向量机(SVM)线性分类器对样本重建系数进行分类,并利用分类结果完成最终标注任务.ERCDLSI算法改进原理是将图像的特征和标签作为模型输入.由于原始模型是将图像在不同的字典中进行重建,因此重建系数之间没有可区分性,得到样本杂乱的分布.SCMIDL算法则通过类间散度惩罚缩短同类样本距离.但尽管相同类别重建系数之间距离变小,不同类别重建系数之间的差别并没有区分出来,重建系数的判别能力依然很弱.ERCDLSI算法则通过对重建系数增强,使其逐渐接近于线性可分状态.最终通过利用重建误差及重建系数的分类能力进行多标签标注,获得更好的标注效果.2.2 算法流程通过引入文献[11]的思想解决多标签标注问题.利用分类性能更好地利用SVM分类机制对重建系数进行约束,使样本重建系数在不断迭代过程中更加接近线性可分的状态,提升重建系数的分类能力,提高最终标注性能.因为原始重建系数分布接近随机,经过调整之后,其线性分类能力得到增强.相比于降低相同类别重建系数之间的距离,直接提升其线性分类能力,最终分类效果在不同数据集中提升更加具有普适性.测试时通过使用其线性分类能力辅助完成多标签标注任务.ERCDLSI算法的初始模型为minD,A∑i=1C{f(X)+λ1||Ai||1+λ2f(R)+λ3fA},(3)式中f(A)=∑l2(A,Uc,bc)为训练样本重建系数类内散度,通过对其进行惩罚约束,使得样本重建系数距离其中心点更近,从而根据距离来区别其他类别.首先利用线性SVM对重建系数完成分类,分类采用one-vs-all策略,然后构建本类与非本类样本之间的平面U∈Rp×C,b∈RC(其中p为字典原子个数)共C个分类器.将所有重建系数分为两类,一类为能够通过SVM正确预测的样本,另一类为预测出错的样本.对不同样本赋予不同权重值,其中分类正确的不做惩罚约束,即权重值为0.而对于分类错误的,根据其距离分类超平面的距离做相应程度惩罚.其中f(A)=l(A,Uc,bc)为SVM中样本的经验损失,且l(Ai,Uc,bc)=max[0, (1-yic(UcAi+bc))],(4)式中yi为样本标签,属于该类,则值为1,否则值为-1.因此将整个ERCDLSI算法模型可定义为minD,A∑i=1C{f(X)+2λ1||Ai||1+λ2f(R)+λ3∑[f(A)]2}. (5)在式(5)求解过程中根据超参数调整对目标函数不同部分偏向程度,通过对分类错误样本进行惩罚,使得在整个算法迭代过程中,线性分类器预测错误的样本会逐渐减少,重建系数线性分类能力得到提升.在测试阶段,计算输入测试样本在所有类别字典上的重建误差âc=argmina||x-Dca||22.(6)结合重建系数分类能力,利用线性SVM分类器,计算样本重建系数距离每一类对应超平面的距离,作为衡量样本属于本类的可能性.因此定义ec=||x-Dca||22-γ(S(Uca+bc)-1/2),(7)式中:S(x)=sigmoid(x),这里使用sigmoid函数将距离进行缩放;γ为超参数;ec为该样本在第c类字典上进行测试的最终结果,其值越小,表示含有这一类标签的可能性越高.整个算法流程如下所示.输入 训练样本集合X.参数λ1,λ2,λ3,γ.字典原子个数p.最大循环次数T.输出 字典Di  (i=0,1,⋯,C),SVM超平面ui0  (i=0,1,⋯,C),bi0  (i=0,1,⋯,C).步骤1 初始化字典Di0  (i=0,1,⋯,C),重建系数A0.步骤2 循环:计算uit,bit,共C个超平面;更新重建系数a=argmina||x-Dia||F2+λ1||a||1+λ3∑c[l(ai,Uc,bc)]2,更新字典minD∑i=1C{f(X)+λ1||Ai||1+λ2f(R)}.步骤3 计算测试样本重建系数âc=argmina||x-Dca||22.步骤4 计算测试样本ec=||x-Dcâ||22-γ(S(ucâ+bc)-1/2).步骤5 测试样本每一类计算结果排序.3 实验结果与分析3.1 实验数据集为了验证使用字典学习方法在构建量化空间与使用量化空间解决多标签标注问题上的有效性,在传统民族服饰图像中的明清宫廷服饰图像数据集(ethnic costume dataset,ECD)中进行实验.为了验证算法因图像不同类别数量和比例对实验结果的影响,同时使用自然图像数据集(natural image dataset,NID)[12]进行实验.数据集相关参数如表1所示.10.13245/j.hust.210304.T001表1数据集属性数据集数量标签数平均标签数标签密度标签组合数标签集比例训练集数ECD89951.358 20.271 6120.013 3600NID2 00051.239 50.247 9200.010 01 500在明清宫廷服饰多标签数据集上选取600张用于训练模型,其他数据用于测试,其中3张如图2所示.为了证明提出算法能够有效稳定地提升模型性能,通过多次随机选取训练集,完成实验.10.13245/j.hust.210304.F002图2明清宫廷服饰图像数据集示例整个服饰数据集包含龙纹、花草、蝴蝶、云纹和鸟五类标签,全部来自明清服饰上的纹样.标签主要为时间、地点、民族、寓意、名称、构型、色彩和材质等纹样八个属性.在整个数据集中,各类标签分布组合较为合理,基本能够反映不同类别之间关系,如龙纹和云纹共同出现的概率比较大,蝴蝶花草经常同时出现.这种关系诠释了在固定文化背景下,人们对纹样内涵的认知、理解与喜好,对这种含有文化背景的数据集进行多标签标注算法研究与实现,有利于理解和解读传统文化,对于传统服饰的研究、理解、弘扬及传承有着重大的意义.3.2 参数分析在进行基于字典学习的传统民族服饰图像多标签标注任务中,字典原子的个数起着非常重要的作用.在ERCMIDL算法中,为每一个类别分别构建一个字典,样本在该类字典上进行重建.字典原子一定程度上相当于特征的进一步提取.每个字典原子相当于本类样本的一个特征.关于字典原子个数p的选取,如果字典原子个数太多,那么不但计算复杂度增大,而且类别间相似性也不必要的增强.字典空间的冗余可能会导致标注结果变差.而字典原子个数太少,则无法有效地重建样本.分别采用不同的字典原子数进行实验,观察字典原子数的多少对于标注平均正确率(δAP)指标[13]的影响,得到图3所示结果.可以发现:如果字典原子个数太少,那么标注的平均正确率较低.随着原子数量变多,标注性能也不断改善.但随着字典原子个数超过30,多标签标注的平均正确率开始下降.在之后的实验中,选择字典原子个数p=30.10.13245/j.hust.210304.F003图3字典原子数3.3 实验结果分析采用多标签标注中常用的指标为:第一错误率(OE,one-error),覆盖率(CO,coverage),排序损失(RL,ranking-loss),平均正确率AP[13]算法性能评价.为了验证提出的改进算法的有效性,除了与SCMIDL算法对比外,同时与其他经典的多标签标注算法比较,其中包括ML-KNN[14](multi-label KNN),Rank-SVM[15],MLNB[16](multi-label naive Bayes)及LLSF(learning label specific features)[17]算法.在本实验中,实验参数分别设置为λ1=0.04,λ2=0.003,λ3=0.006,γ=0.02.实验结果如表2所示,其中数值前面部分为5次随机划分训练集实验结果的均值,后面部分为5次实验指标数值上下浮动范围.10.13245/j.hust.210304.T002表2明清宫廷服饰图案数据集实验结果对比算法OECORLAPML-KNN0.403 9±0.019 31.218 2±0.104 50.220 5±0.002 30.744 3±0.020 9Rank-SVM0.357 0±0.022 61.138 0±0.015 90.196 7±0.003 40.773 2±0.009 5MLNB0.472 4±0.025 91.363 7±0.041 00.257 8±0.010 10.710 0±0.010 2LLSF-BR0.367 1±0.007 61.163 0±0.051 00.203 6±0.010 70.766 1±0.004 9LLSF-CC0.389 6±0.025 11.305 1±0.096 10.238 8±0.021 00.747 3±0.014 8LLSF0.386 3±0.025 11.260 9±0.030 10.225 1±0.010 80.746 6±0.012 9SCMIDL0.315 2±0.037 61.028 4±0.028 40.169 3±0.010 30.799 3±0.013 8ERCMIDL0.300 2±0.007 51.009 2±0.049 30.163 8±0.010 50.808 6±0.005 7从表2结果可以看出:在明清宫廷服饰多标签数据集中,经典多标签算法表现出了较好的实验效果,在一些指标的稳定性上甚至超过改进后的算法.如LLSF-BR算法的实验结果中,平均正确率平均值较高,同时在多个不同划分的数据集上表现十分稳定.但在整体效果上,依然与ERCMIDL算法相差很多.通过对重建系数增强后的算法,相比于改进前的算法,在进行多标签标注过程中各项指标均有不同程度的提升,而且都较大幅度高于其他算法.同时在不同的数据集划分后取得的结果中,OE和AP指标的稳定性也较大程度地优于其他算法.这表明在进过重建系数增强后,不同的数据集划分结果对重建系数分类能力提升的影响较小,算法的适应性也要高于之前的算法.通过对增强重建系数的相关系数进行讨论,来分析模型中相关的系数的改变对整个实验结果的影响.图4为取不同λ3,γ值对平均正确率AP的影响.λ3表示在模型训练过程中对分类错误的样本进行的惩罚项部分的参数,γ表示在测试过程中使用SVM分类器对样本辅助分类部分的参数.可以看出:两个参数太高或者太低都会降低模型的效果.算法能够明显提升重建系数判别能力,但保证重建效果对最终标注效果提升依然很重要.如果只追求重建系数线性分类能力的提高,那么字典重建的误差较大,无法对本类样本进行有效表示.在测试过程中,结合测试样本在字典上的重建误差以及重建系数在分类器上的表现,能达到一个更好的多标签标注效果.如图4所示,在γ开始增加的阶段,标注性能提升效果较快,在参数值达到一定程度后,随着参数增加,标注效果开始慢慢降低,SVM分类器对于标注效果的提升明显.实验中将测试样本距离相应超平面的距离通过函数映射到 (-0.5,0.5)之间,测试样本重建系数均值为0.260 5,最大值为0.682 5,最小值为0.119 1,可以看出:参数取值0.04或0.05时实验效果较好,即距超平面距离范围为(-0.025,0.025).距超平面距离对重建误差分类效果起到辅助调整的效果.10.13245/j.hust.210304.F004图4不同参数取值与AP的关系为了验证算法性能的稳定,避免数据集中类别数量、比例带来的误差影响,在自然图像数据集中分别选取沙漠(409张)、山峰(458张)、海洋(580张)、日落(461张)和树(460张)等5类图像进行实验,如图片包含多个类别就重复计算.实验结果如表3所示.10.13245/j.hust.210304.T003表3自然图像数据集实验结果对比算法OECORLAPML-KNN0.393 0±0.013 01.039 5±0.083 50.195 1±0.013 60.757 5±0.009 4Rank-SVM0.458 0±0.090 01.205 3±0.286 70.231 4±0.075 40.717 0±0.067 7MLNB0.557 5±0.014 51.607 0±0.051 00.330 5±0.005 50.629 0±0.005 1LLSF-BR0.385 5±0.018 51.033 0±0.079 00.190 4±0.007 60.761 2±0.005 1LLSF-CC0.411 0±0.035 01.128 5±0.055 50.217 8±0.012 10.741 7±0.015 0LLSF0.461 4±0.030 51.300 0±0.130 00.260 6±0.022 50.703 3±0.021 3SCMIDL0.381 0±0.025 01.002 5±0.059 50.183 1±0.006 30.766 0±0.111 0ERCMIDL0.375 5±0.028 50.976 0±0.060 00.176 3±0.012 30.771 8±0.013 7从表3中数据可以看出:在各类别图像数量基本相同的情况下,ERCMIDL算法各项指标均值依然领先其他算法,并且平均正确率浮动范围较改进前算法有很大提升,进一步说明改进算法在标注性能稳定性上的提升方面效果明显.实验结果表明:ERCMIDL在多次数据集划分中AP实验指标均值相较于改进前分别提高了0.009和3,OE实验指标均值相较于改进前分别降低了0.015和0,并且在不同数据集划分中表现得更加稳定,满足了在传统民族服饰图像文化内涵解读工作中的准确性要求,同时在不同数据集上的表现进一步证明本算法的有效性和稳定性.

使用Chrome浏览器效果最佳,继续浏览,你可能不会看到最佳的展示效果,

确定继续浏览么?

复制成功,请在其他浏览器进行阅读