蘆楠楠 張欣茹 歐 倪
①(中國礦業(yè)大學(xué)信息與控制工程學(xué)院 徐州 221116)
②(北京理工大學(xué)信息與電子學(xué)院 北京 100081)
③(北京理工大學(xué)自動化學(xué)院 北京 100081)
在圖像分類任務(wù)中,為保證測試集與數(shù)據(jù)集類別相同,在每次增加新的圖像類別時(shí)需要對模型重新進(jìn)行訓(xùn)練。從而,傳統(tǒng)的圖像識別方法在大量新類別出現(xiàn)時(shí)圖像分類效果會顯著下降。為解決現(xiàn)實(shí)生活中海量類別的存在,使計(jì)算機(jī)具有知識遷移的能力,“零樣本學(xué)習(xí)”成為研究焦點(diǎn)[1-4]?;趯傩缘牧銟颖痉诸愂峭ㄟ^對不同類別之間的共享屬性進(jìn)行學(xué)習(xí),從而實(shí)現(xiàn)從訓(xùn)練類別到測試類別的遷移。在零樣本發(fā)展的前期階段,對屬性的考察僅僅停留在二值[5]層面,“1”表示具有該屬性的性質(zhì),“0”則表示不具有。采用二值屬性對于共享屬性層描述過于簡單,從而使該模型對語義的理解存在偏差,因此相對屬性(Relative Attribute, RA)[6]這一概念被提出,并在零樣本圖像分類中取得了良好的分類效果[7]。相對屬性的屬性值是連續(xù)的,其大小可以表示為樣本具有該屬性的相對強(qiáng)弱程度,從而提高了屬性信息的準(zhǔn)確性。作為樣本的另一種表示,屬性攜帶的語義信息可以建立起已知類別與未知類別的聯(lián)系。鑒于深度神經(jīng)網(wǎng)絡(luò)的特征學(xué)習(xí)能力,將語義信息用于引導(dǎo)底層特征學(xué)習(xí)過程,從而獲得具有鑒別性信息的共享特征[8,9]。語義自編碼器(Semantic AutoEncoder, SAE)[10]將屬性作為隱藏層,實(shí)現(xiàn)了零樣本圖像底層特征到語義屬性的映射,取得了突破性進(jìn)展。然而,從深度神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的圖像底層特征中提取出的共享屬性信息用作零樣本分類時(shí),會使屬性之間固有的相關(guān)性信息丟失,如何對丟失信息進(jìn)一步補(bǔ)償成為零樣本圖像分類的重要研究內(nèi)容。
在傳統(tǒng)的屬性學(xué)習(xí)[11-13]方法中,很少考慮到這些相關(guān)性信息并予以補(bǔ)償。隨著對零樣本學(xué)習(xí)研究的逐漸深入[14-16],現(xiàn)有的屬性相關(guān)性的研究證明了屬性相關(guān)性的挖掘有利于屬性分類器性能的提高[17-22]。Liu等人[17]采用屬性相關(guān)性矩陣與原始共享屬性進(jìn)行運(yùn)算從而將相關(guān)性信息引入屬性層。Wang等人[18]利用互信息對屬性間關(guān)系進(jìn)行衡量。Biswas等人[19]提出將語義屬性相關(guān)性引入嵌入空間的跨越空間結(jié)構(gòu)。Quercia等人[20]發(fā)現(xiàn),應(yīng)該對不同城市感知屬性之間的相關(guān)性進(jìn)行建模,以通過適當(dāng)共享視覺知識來實(shí)現(xiàn)更有效和準(zhǔn)確的相對屬性學(xué)習(xí)。Min等人[21]提出了一種多任務(wù)深度相對屬性學(xué)習(xí)網(wǎng)絡(luò),通過多任務(wù)連體網(wǎng)絡(luò)同時(shí)學(xué)習(xí)所有相對屬性,解決了成對排名算法獨(dú)立學(xué)習(xí)每個(gè)感知屬性時(shí)造成的不同屬性之間的關(guān)系的丟失。通過將屬性相關(guān)性向多維度擴(kuò)展,Qiao等人[22]研究了多個(gè)屬性之間的相關(guān)性,從而構(gòu)造屬性鏈,結(jié)果表明當(dāng)屬性鏈長為2時(shí)屬性分類器性能達(dá)到最優(yōu)。因此,本文重點(diǎn)研究二元屬性相關(guān)性,將屬性相關(guān)性引入共享屬性層中,以提升零樣本圖像分類時(shí)的信息量和準(zhǔn)確度。
本文提出一種自動尋找最優(yōu)屬性相關(guān)方法,彌補(bǔ)SAE在屬性學(xué)習(xí)中缺少的屬性相關(guān)性信息,對屬性進(jìn)行相關(guān)性信息補(bǔ)償。該方法將屬性相關(guān)性求解轉(zhuǎn)化為參數(shù)尋優(yōu),使用經(jīng)典啟發(fā)式粒子群優(yōu)化算法(Partial Swarm Optimization, PSO)尋找最優(yōu)的嵌入屬性相關(guān)性信息的新屬性。首先,學(xué)習(xí)屬性與屬性間的相關(guān)性,在原始的共享屬性層中加入相關(guān)性變量??紤]到參數(shù)與目標(biāo)之間的單向可解性,利用PSO平衡原始屬性與相關(guān)性變量間的關(guān)系。在每次分類過程中都要對新的屬性進(jìn)行排序,然后將預(yù)測的屬性值映射到標(biāo)簽。通過交叉驗(yàn)證下的雙向損失函數(shù)來衡量本次迭代過程中求解的映射矩陣性能,將此函數(shù)作為PSO算法尋優(yōu)的適應(yīng)度函數(shù)。實(shí)驗(yàn)結(jié)果表明,該方法在零樣本圖像分類數(shù)據(jù)集的性能相較于其他方法可以得到明顯提升。
語義自編碼器[10]是一種特殊的自編碼器,其最顯著的特點(diǎn)是中間隱藏層為一層語義層。網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。其中,輸入層為基礎(chǔ)的特征向量空間,隱藏層是一層語義層??蓪⑤斎雽犹卣飨蛄靠臻g進(jìn)行壓縮編碼和解碼,輸出層為經(jīng)過隱藏層處理后恢復(fù)出來的特征向量空間。在進(jìn)行編解碼的過程中,使用原始數(shù)據(jù)對編碼器和解碼器進(jìn)行額外的約束,使得編碼后的數(shù)據(jù)盡可能恢復(fù)成為原來的數(shù)據(jù)。
為了簡化模型,加上限制條件WX=S,其中S為數(shù)據(jù)特征X對應(yīng)的屬性向量。對式(1)做W?=WT變換,進(jìn)一步轉(zhuǎn)換為優(yōu)化問題:
因此,變換后的目標(biāo)函數(shù)式(2)是凸函數(shù), κ為大于0的權(quán)重系數(shù)。改寫式(2),可得
由于需要求式(3)的極值,所以需要對其進(jìn)行求導(dǎo)操作,導(dǎo)數(shù)為零便可獲得相應(yīng)的結(jié)果
圖1 SAE結(jié)構(gòu)框架
該方程為西爾韋斯特方程,可以通過Bartels-Stewart算法求解得出。
SAE可以通過學(xué)習(xí)訓(xùn)練樣本(X, Y)中的屬性知識完成從底層特征到屬性值的映射,用屬性共享機(jī)制將學(xué)習(xí)到的知識遷移到未知類別中,實(shí)現(xiàn)類別邊界的突破。在用SAE進(jìn)行零樣本分類時(shí),SAE的中間層為訓(xùn)練圖像相對屬性的分?jǐn)?shù)值。在使用SAE編碼器模型的時(shí)候,就可以獲取到從視覺底層特征到語義共享屬性層的映射矩陣W。在測試的過程中,使用訓(xùn)練得到的W可以將測試圖像的底層特征映射成相對屬性分?jǐn)?shù)值,然后利用高斯分布的概念來統(tǒng)計(jì)計(jì)算得出均值和方差,最后利用最大似然估計(jì)來預(yù)測出其測試樣本標(biāo)簽。
基于描述類別的屬性的可共享性,共享屬性層的屬性與屬性之間存在一定的語義相關(guān)性[23]。如在描述動物時(shí),“會飛”與“有翅膀”以及“會游泳”與“無皮毛”大多數(shù)情況總是相關(guān)聯(lián)的。將這些相關(guān)屬性予以結(jié)合或者引入相關(guān)性信息可以對分類起到積極作用,彌補(bǔ)共享屬性層的信息丟失。為表述這些屬性之間的正負(fù)相關(guān)性以及相關(guān)程度,根據(jù)類別、屬性以及訓(xùn)練樣本個(gè)數(shù),計(jì)算訓(xùn)練樣本屬性-屬性的相關(guān)性,將其記作相關(guān)性矩陣。
假設(shè)數(shù)據(jù)中共有 N個(gè)訓(xùn)練樣本,ani為第n個(gè)樣本的第i個(gè)屬性值。如果用Rij表 示屬性ai, aj間的相關(guān)性,其計(jì)算公式可表示為
在零樣本分類中,K, L為訓(xùn)練集和測試集樣本數(shù),樣本總數(shù)為K+L。樣本有H個(gè)相對屬性,則樣本表示為 H ×(K+L)的屬性矩陣,記作Score ∈RH×(K+L)。 屬性關(guān)系為H ×H的相關(guān)性矩陣,記作 R L ∈RH×H。在原始屬性的基礎(chǔ)上,為引入屬性相關(guān)性且保持原始屬性維度,采用式(7)定義新屬性S core?。
其中, λ , μ 為兩個(gè)權(quán)重系數(shù),λ 為乘性因子,對屬性相關(guān)信息做調(diào)整; μ為加性因子,對原始屬性信息保留。
考慮到參數(shù)與目標(biāo)之間的單向可解性,本文采用PSO[26,27]尋找合適的 λ , μ,提出將PSO算法與SAE算法結(jié)合,簡稱PSA。粒子群算法是一種基于群體迭代的群算法,依據(jù)粒子在解空間追隨最優(yōu)的粒子的方法進(jìn)行搜索,以使粒子能夠飛向解空間并在最好解處降落。
將PSO算法嵌入屬性尋優(yōu)過程中,其搜索步驟如下:
步驟 1 初始化D維粒子群,設(shè)定群體規(guī)模n、每個(gè)粒子的位置 Gi與 速度Vi。 將乘性因子λ 與加性因子μ 作為規(guī)模大小為250組的粒子群G,并用隨機(jī)數(shù)設(shè)定初始位置。
步驟 2 計(jì)算每個(gè)粒子的適應(yīng)度值Fit[Gi]。適應(yīng)度函數(shù)Fitness是經(jīng)過每組粒子群確定新屬性值下SAE求解最佳映射矩陣時(shí)的優(yōu)化目標(biāo):
步驟 6 如果滿足誤差結(jié)束條件或者最大循環(huán)次數(shù)則退出循環(huán)迭代,否則返回步驟2。
本文采用直接屬性預(yù)測模型(Direct Attribute Prediction, DAP)[11]實(shí)現(xiàn)零樣本分類,通過屬性分類器的學(xué)習(xí),建立屬性值到類別標(biāo)簽的映射。在DAP模型中,先將數(shù)據(jù)從特征空間映射到中間層的屬性向量層,屬性向量層的屬性標(biāo)簽是通過收集來的每一類特征的總結(jié),通過利用數(shù)據(jù)預(yù)測屬性,再通過屬性映射到類別標(biāo)簽來實(shí)現(xiàn)對于未知類別的預(yù)測。分類過程中,針對 m個(gè)已知類別,對應(yīng)地用一個(gè)生成模型表示該類別的特征。根據(jù)圖像相對屬性取值的連續(xù)性,本文采用高斯模型來估計(jì)類別特征,采用最大似然估計(jì)實(shí)現(xiàn)高斯模型的參數(shù)估計(jì)。而未知類別的模型參數(shù)則通過與已知類別間的相對模型來進(jìn)行指導(dǎo)學(xué)習(xí)。在判斷標(biāo)簽類別時(shí)本文采用高 斯貝葉斯計(jì)算最大后驗(yàn)概率來實(shí)現(xiàn)。
實(shí)驗(yàn)選用數(shù)據(jù)集Pubfig[28]和OSR[29]。Pubfig是公開人臉數(shù)據(jù)集,包括8位名人的772幅圖像,擁有11個(gè)語義屬性。OSR是戶外場景識別數(shù)據(jù)集,包括8個(gè)戶外場景共2688幅圖像,擁有6個(gè)語義屬性。
在實(shí)際處理時(shí),針對Pubfig和OSR數(shù)據(jù)集,本實(shí)驗(yàn)設(shè)定不同訓(xùn)練類別數(shù)目和測試類別數(shù)目來驗(yàn)證方法,采用交叉驗(yàn)證的方法增大實(shí)驗(yàn)量,求取所有情況的平均值來驗(yàn)證方法有效性。本實(shí)驗(yàn)討論P(yáng)SA的零樣本分類結(jié)果,并采用DAP[11], Relative[6]與SAE[10]方法做比較。
為了直觀地分析屬性相關(guān)性,采用相關(guān)性圖對屬性相關(guān)性強(qiáng)弱進(jìn)行可視化表示。圖2展示了Pubfig和OSR數(shù)據(jù)集的屬性正負(fù)相關(guān)性及強(qiáng)弱信息。如圖所示,藍(lán)色和紅色表示正、負(fù)相關(guān)。屬性相關(guān)性強(qiáng)弱由顏色深淺來表示,顏色越深表示相關(guān)性越強(qiáng),白色則表明兩屬性之間不存在相關(guān)性。根據(jù)H個(gè)屬性兩兩相關(guān)性度量,可構(gòu)建相關(guān)性矩陣RH×H。例如,就OSR的6個(gè)相對屬性,構(gòu)建兩兩屬性間的相關(guān)性中,屬性size-large與diagonal-plane有較強(qiáng)的正相關(guān)性,其相關(guān)性系數(shù)可高達(dá)0.9333;而屬性perspective與natural有較強(qiáng)的負(fù)相關(guān)性,相關(guān)性系數(shù)為-0.9491??梢姡瑢傩灾星度胂嚓P(guān)性,可有效對 原數(shù)據(jù)集屬性值進(jìn)行信息補(bǔ)償。
表1 PSA算法偽代碼
圖2 OSR和Pubfig數(shù)據(jù)集屬性相關(guān)性相比
根據(jù)建立的屬性相關(guān)性,利用PSO對屬性參數(shù)尋優(yōu)。PSO的具體參數(shù)設(shè)置如表2所示。
圖3給出Pubfig數(shù)據(jù)集(訓(xùn)練和測試類別數(shù)為6和2情況下的第9組交叉驗(yàn)證組合的情況)中,PSO在第1代與最后一代的粒子分布情況。起初250組粒子均勻地分布在設(shè)定的位置范圍內(nèi),隨著迭代次數(shù)增加,最終適應(yīng)度值下粒子所處的位置集中,并未出現(xiàn)在所設(shè)置的范圍邊界處,粒子分布隨著代數(shù)增加可以很好地聚集收斂,證明PSO整體參數(shù)設(shè)置合理。
此外,表3給出了Pubfig數(shù)據(jù)集中PSO尋優(yōu)參數(shù)下對應(yīng)的測試精度(訓(xùn)練和測試類別數(shù)分別為6和2,共計(jì)=28次交叉驗(yàn)證)。對于每一次類別組合,均可以采用PSA算法對其尋求最優(yōu)的乘性因子和加性因子的參數(shù)組合,并計(jì)算該組合下引入相關(guān)性的屬性值,將訓(xùn)練集屬性作為SAE輸入求得最優(yōu)目標(biāo)下的映射矩陣。對訓(xùn)練集屬性值進(jìn)行重新排序,利用求解出的映射矩陣計(jì)算出測試集的屬性值,再構(gòu)建高斯分布,根據(jù)最大后驗(yàn)概率分配標(biāo)簽,計(jì)算測試集的精度。
由表3可以看出PSO在尋最優(yōu) λ , μ時(shí),其值都落在所設(shè)定的位置范圍內(nèi),即再一次證明了采用PSO進(jìn)行參數(shù)設(shè)置的合理性,而對應(yīng)參數(shù)下引入相關(guān)性的新屬性值在Pubfig數(shù)據(jù)集中的分類結(jié)果也得到 了提高。
PSA將得到的最優(yōu)參數(shù)用來更新屬性值,利用SAE求解映射矩陣計(jì)算測試類別屬性值,對不可見類構(gòu)建高斯分布求解最大后驗(yàn)概率完成標(biāo)簽映射。根據(jù)訓(xùn)練類別數(shù)m與測試類別數(shù)M的不同組合,完成每一組下的交叉驗(yàn)證的分類精度(Accuracy, Acc)與ROC曲線下面積(Area Under Curve, AUC)[30,31]。其中,分類精度能夠真實(shí)地反映出分類正確的樣本數(shù)與測試樣本總數(shù)的關(guān)系。AUC可以反映誤判率(把實(shí)際為假值的樣本判定為真值的概率)與靈敏度(把實(shí)際為真值的樣本判定為真值的概率)之間的關(guān)系,以便更好地對分類效果進(jìn)行評價(jià)。表4和表5分別給出了Pubfig和OSR數(shù)據(jù)集中6組交叉驗(yàn)證的Acc和AUC值。
由表4和表5結(jié)果可見,兩種數(shù)據(jù)集的平均測試結(jié)果Acc和AUC整體均有不同程度提升,其中Acc提升明顯。特別是在 m /M =2/6和m/M =6/2時(shí),對于Acc, PSA在OSR上可提升10%以上,在Pubfig上也有近10%提升。而且,隨著訓(xùn)練類別增加,Acc逐漸升高。然而對于Pubfig中m/M =4/4和m/M =5/3兩種情況,PSA并沒有取得顯著優(yōu)勢的分類精度;在O S R 數(shù)據(jù)集中 m/M =4/4時(shí),PSA的分類精度略微降低??傮w來說,在與經(jīng)典算法比較時(shí),PSA可以得到較好的分類效果,尤其是在訓(xùn)練、測試類別不均衡的情況下。因此,PSA更加適用于處理訓(xùn)練和測試類別不均衡的情況。這是由于,當(dāng)訓(xùn)練組別和測試組別數(shù)目相差較大而造成兩類樣本不均衡且交叉驗(yàn)證組別較少時(shí),屬性之間相關(guān)性的建立能夠較大程度緩解零樣本分類的強(qiáng)偏問題。此外,在優(yōu)化屬性相關(guān)性時(shí),PSA所采用的PSO是一種進(jìn)化算法,進(jìn)化算法的優(yōu)化過程本身所具有的隨機(jī)性,難以確保所有情況下PSO找到的參數(shù)都是全局最優(yōu),而PSO現(xiàn)有的尋優(yōu)能力已經(jīng)顯著改善了零樣本分類效果。對于AUC,從表4和表5的結(jié)果來看,PSA相較于SAE略有提升。但是在OSR數(shù)據(jù)集上 m /M =4/4時(shí),AUC值略低于SAE。這是由于PSO的優(yōu)化目標(biāo)是訓(xùn)練集的Acc,并未將
AUC作為優(yōu)化目標(biāo)進(jìn)行參數(shù)尋優(yōu),因此得到的新參數(shù)并不一定滿足AUC更高的效果。本文之所以采用了單目標(biāo)優(yōu)化而未優(yōu)化AUC指標(biāo),目的是更大幅度地提升Acc指標(biāo),提高分類性能。
表2 PSO的參數(shù)設(shè)置
圖3 PSO粒子始末分布圖
表3 PSO尋優(yōu)參數(shù)及測試精度(Pubfig數(shù)據(jù)集 測試類別數(shù):2)
表4 OSR數(shù)據(jù)集的分類精度和AUC值
為了進(jìn)一步分析PSA的詳細(xì)分類表現(xiàn),本文分別給出了PSA與SAE在混淆矩陣上的實(shí)驗(yàn)結(jié)果。本文隨機(jī)選取m /M =3/5 和m /M =5/3兩種分組下交叉驗(yàn)證的其中一組混淆矩陣結(jié)果。圖4和圖5給出PSA和SAE兩種方法在OSR和Pubfig兩組數(shù)據(jù)集上的混淆矩陣分類結(jié)果,其中縱坐標(biāo)表示真實(shí)標(biāo)簽,橫坐標(biāo)表示預(yù)測標(biāo)簽。每個(gè)方格內(nèi)的小數(shù)代表測試分配標(biāo)簽個(gè)數(shù)與該標(biāo)簽的真實(shí)個(gè)數(shù)的百分比,顏色越深數(shù)值越小,顏色越淺對應(yīng)的數(shù)值越大。表征分類結(jié)果的好壞時(shí),對角線上的數(shù)值越大越好,即對角線上的方格顏色越淺越好。對比圖4(c)和圖4(d),Insidecity與Opencountry兩種戶外的場景分類中,SAE錯(cuò)分率較高,且兩者在分類過程中,互相錯(cuò)分的概率很大,而PSA 因?yàn)橄嚓P(guān)性的信息引入,分類精度大幅度提升,使得這兩種場景分類具有更強(qiáng)的辨別度。同樣地,對比圖4(a)和圖4(b),SAE在Forest類別上的分類精度很低,易錯(cuò)分為Opencountry。在引入相關(guān)性分析后,PSA提高了Coast, Opencountry及Forest 3種場景的分類精度。然而,其在Insidecity和Street上的分類精度卻略有降低。這是由于PSA是在訓(xùn)練集上優(yōu)化屬性相關(guān)性信息,所得到的屬性相關(guān)性并不能完全符合每種類別樣本的描述。甚至某種類別的屬性相關(guān)性信息與樣本平均的屬性相關(guān)性信息的正負(fù)相關(guān)性是相反的,從而相關(guān)性信息的引入會對個(gè)別類別樣本的分類產(chǎn)生消極影響。但是,通過交叉驗(yàn)證實(shí)驗(yàn)可以看到,屬性相關(guān)性信息的引入促使整體分類精度得到了顯著提高,在多種訓(xùn)練、測試類別組合中獲得較穩(wěn)定的分類效果。對比圖5(a)和圖5(b),對于JaredLeto與MileyCyrus兩人圖像,SAE分類的正確率較低,而PSA分類精度在一定程度上有明顯改善?;煜仃嚨膶?shí)驗(yàn)結(jié)果進(jìn)一步證明了在相同的算法架構(gòu)下,引入屬性相關(guān)性的信息補(bǔ)償可以有效地改進(jìn)分類精度,并且通過屬性多元化可以對共享層的屬性信息進(jìn)行進(jìn)一步挖掘。
表5 Pubfig數(shù)據(jù)集的分類精度和AUC值
圖4 分類結(jié)果混淆矩陣(OSR數(shù)據(jù)集)
圖5 分類結(jié)果混淆矩陣(Pubfig數(shù)據(jù)集)
本文致力于對零樣本圖像分類中構(gòu)建的共享屬性層進(jìn)行丟失信息的補(bǔ)償,通過PSO引入最優(yōu)屬性相關(guān)性信息,提升零樣本圖像分類的分類效果。針對特征到屬性的映射層采用SAE,針對屬性到標(biāo)簽的歸類采用對不可見類構(gòu)建高斯分布。該方法在Pubfig和OSR數(shù)據(jù)集上可獲得良好的分類效果,并與經(jīng)典的零樣本圖像分類方法相比有明顯提升。從而驗(yàn)證了PSA方法的有效性。該方法使用PSO尋優(yōu)屬性相關(guān)性參數(shù)具有很好的移植性和靈活性。屬性多元信息化有利于在已有屬性基礎(chǔ)上提取圖像的鑒別性信息。在未來的工作中將重點(diǎn)探討復(fù)雜圖像分類中的屬性鏈的動態(tài)提取。