王紫沁,楊 維
(北京交通大學 電子信息工程學院,北京 100044)
當測試數據中的類別(不可見類)在訓練數據的類別(可見類)中沒有出現時,零樣本學習算法(zero-shot learning,ZSL)通過利用包含類別關聯信息的語義空間和已知類的訓練數據對不可見類識別[1,2]。基于映射方法的ZSL做法是用可見類數據學習圖像空間和語義空間的映射模型,將模型運用到不可見類上,然后在映射空間使用相似性度量對未知類進行識別。針對視覺-語義映射模型,已有的工作可以分為3類:第一類將圖像特征映射到語義空間[3-5],第二類將圖像特征和語義特征映射到公共空間[6-9]。不論是語義空間還是公共空間映射都會加劇高維空間樞紐問題,采用KNN算法時,一些“hubs”會成為大多樣本的預測類別。第三類采用反向映射回歸方法可以規避樞紐問題[10,11],但是語義原型特征映射到圖像空間后易于匯聚到原點,偏離每類的圖像特征區域。除了樞紐問題外,第二類方法中Fu等提出域漂移現象,并提出使用多個語義和圖像特征的正規相關分析來緩解漂移問題,但使用了測試數據并且算法復雜[7]。第一類方法中Kodirov E等提出語義自編碼(SAE)方法,通過構建語義空間映射模型并增加重構圖像空間的約束。該方法存在語義特征到圖像特征的映射,但是體現在CUB數據集,在AwA數據集是正向映射為主體。SAE針對解決的是域漂移問題,算法高效且簡單[5]。
為了聯合考慮上述兩個問題,提出了基于語義對齊和重構的零樣本學習算法RMSASC(reverse mapping via semantic alignment and semantic reconstruction)。首先,本文采用語義空間到圖像空間映射規避樞紐問題,并針對語義原型偏離現象提出基于語義對齊的約束,使語義原型特征都映射至每類圖像特征原型處,促使兩個空間特征對齊,緩解了樞紐問題。同時為了緩解域漂移問題提出語義特征重構的約束,使模型學習到完整的映射到圖像空間的、沒有丟失不可見類的有效語義特征維度信息,使模型更具有泛化性和魯棒性。通過在零樣本學習的基準數據集(AWA和CUB)上實驗,驗證了所提零樣本算法具有較好的分類效果。


RMSASC零樣本學習算法是為了緩解零樣本學習中的樞紐問題和域漂移問題而提出的,該算法的基本映射模型是語義空間到圖像空間的反向回歸映射。模型的架構采用兩層的神經網絡,每層神經網絡是線性層和激活層的組合,比線性映射模型有更強的表達能力,充分學習兩個空間特征的關系。采用基本模型,映射后的語義特征比圖像特征方差小,仍會偏離圖像特征中心區域,在采用KNN算法找最近鄰時,hubs會導致預測失誤。語義對齊的正則化約束可以使每個樣本的語義原型特征映射至每類圖像特征原型處,促使兩個空間特征原型對齊,有效緩解了樞紐問題。同時,為了緩解零樣本學習中的域漂移問題,提出加入將圖像空間中的語義特征映射點重新映射到語義空間的正則化約束,重構完整有效的語義特征信息。因為在用可見類訓練數據訓練模型中,有的語義特征維度對于不可見類是重要的,而于可見類是不重要的,在模型學習中可能會被丟掉。語義重構的約束會重構完整的語義特征信息,使得模型更具有泛化性和魯棒性。接下來從RMSASC零樣本學習算法的基本模型、語義對齊和語義重構約束介紹。
本文提出的基于語義對齊和重構的零樣本學習算法——RMSASC的整體架構如圖1所示,主要包含兩個分支:圖像特征提取分支和語義特征映射分支。

圖1 RMSASC模型整體架構
圖像特征提取分支是將訓練圖像Ii輸入CNN卷積特征提取網絡,輸出得到維度為D的圖像特征向量φ(Ii)∈RD×1。 圖像特征空間將作為圖像的嵌入空間和該圖像所對應的可見類語義特征的映射空間。


圖2 語義特征映射分支
語義特征映射分支中的映射模型中的參數是需要學習的,當每個訓練圖像的語義特征映射到圖像特征空間后,和提取的圖像特征之間計算通過平方損失函數,目標是最小化訓練樣本的圖像特征和語義嵌入特征的誤差,使得訓練圖像的語義嵌入特征與圖像特征的相似度變大。通過上述定義,則RMSASC算法的基本模型(RM)如下所示

(1)
其中,W1∈RL×M是語義特征映射分支映射模型的神經網絡的第一個FC層的權重,W2∈RM×D是第二個FC層的權重。γ是損失函數中對權重的正則化損失的參數,是一個超參數。f(·)=max(0,·) 是ReLU激活函數。
反向回歸映射后,會存在一種現象:在圖像特征空間中,語義嵌入特征的方差小于圖像特征的方差,即映射后的數據更加接近空間的原點而不是目標數據分布。雖然式(1)的目標函數是為了使每個圖像的語義特征映射后盡可能接近于該圖像特征,但是存在的這個現象,使每個樣本的語義特征不能通過映射模型學習到圖像空間中最佳的映射點,在進行最近鄰預測算法中,hubs可能導致類別預測錯誤。因此,設計一個語義對齊約束,讓每個樣本所屬類別的語義特征通過映射后,與該類樣本圖像特征的原型對齊。這種約束對數據進行了增強處理,增加了樣本的多樣性,進而增強了模型的學習表達能力;同時提供了圖像空間每個類的標準,利于語義原型特征映射到正確類別的圖像特征處而不是原點附近,緩解了樞紐問題。
每類樣本的圖像特征的原型是具有代表性的點,大量的樣本的數據分布滿足高斯分布,因此原型點是每類圖像特征的均值。提出的語義對齊的約束如下
(2)

在基于語義對齊的反向映射零樣本學習算法(RMSA)中,其目的是最小化語義特征和圖像特征、語義特征和圖像特征原型的歐氏距離,很好學習到了可見類圖像的兩個特征空間的數據相似關系。但是,可見類和不可見類別對象分別具有不同的互斥的類集,因此在兩個空間的數據分布是不同的。如果直接把在可見類數據集上學習到映射模型運用到不可見類別的對象上,則結果會產生一定的偏差。因此,為了緩解這一問題,受語義自編碼模型的啟發,考慮添加將語義嵌入特征映射的結果再反向映射到語義空間的語義重構約束。這一約束可以使得語義-視覺的映射模型重構原始完整的語義特征信息。因為有的語義特征對于不可見類別是重要的,對可見類是不重要的,所以可能用訓練數據學習模型過程中,某些不可見類的語義特征被丟失。因此語義重構約束使得模型具有魯棒性和泛化性,更好的應用于未知類對象。語義重構約束如下
(3)

通過結合上述的基本模型、語義對齊約束和語義重構約束,得到了基于語義對齊和重構的零樣本分類算法(RMSASC)。算法模型表示為
(4)
其中,λ、β和γ是需要學習的超參。
當映射模型學習完以后,將測試圖像Ij輸入圖像特征提取分支得到圖像視覺特征φ(Ij)∈RD×1, 將所有不可見類語義特征經過語義特征映射分支映射到圖像特征空間中,得到語義嵌入特征φ(yv)∈RD×1, 然后計算測試圖像視覺特征與所有的語義潛入特征的距離,最后找到距離最小的語義嵌入特征,其所對應的類為該對象的類別。計算如下
(5)
其中,D是距離度量函數,本文采用的是歐式距離。yv是語義特征空間的第v類的語義特征。
本文基于PyTorch[12]深度學習框架實現了RMSASC算法,并在兩大主流零樣本標準數據集上進行了實驗。實驗的環境是一臺擁有4張12 196 MB顯存的Titan Xp和1塊62 GB的CPU內存的Ubuntu服務器。
本次實驗使用的是各具特點的且含有公開圖像的標準的零樣本學習數據集,即AwA(animals with attribu-tes)[13]和Caltech-UCSD Bird2011(CUB)[14]。數據集的詳細細節見表1。

表1 數據集的詳細信息
AwA是動物數據集,屬于粗粒度圖像,共包括50個類別的30 475張圖像。按照官方劃分,其中可見類類別是40類,不可見類類別是10類,每個類別都具有85維的連續屬性。CUB是鳥類數據集,屬于細粒度圖像,共包括200個類別的11 788張圖像,其中,可見類類別是150類,不可見類別是50類,每個類別都具有312維的連續屬性。
本文實驗數據集的圖像特征提取網絡采用的是在ImageNet數據集上進行過預訓練的ResNet101卷積網絡[15],并沒有在相應的數據集上做微調處理。首先把本文數據集的圖像按照中心裁剪方式裁剪成256×256尺寸,然后縮放成224×224尺寸;其次,將圖像的3個顏色通道分別按均值為(0.229,0.224,0.225),標準差為(0.485,0.456,0.406)進行歸一化處理后,輸入到預訓練的ResNet101卷積網絡,得到全局池化層(GAP)輸出的2048維的圖像特征。
本文使用的語義空間的特征是屬性特征。具體地說,AwA使用的是數據集提供的85維度的類級別的連續屬性;CUB使用的是數據集提供的312維度的類級別的連續屬性。
(1)首先要確定在基本模型RM下語義特征映射分支的神經網絡的架構,輸入層神經元數目由屬性維度決定,輸出神經元數目由圖像特征維度確定,中間第一個FC層的神經元個數通過實驗確定。對于AwA,設置FC層神經元數目m取值范圍是m∈[100,2000]; 對于CUB,設置FC層神經元數目m取值范圍是m∈[400,2000]。 通過實驗確定AwA和CUB的第一個FC層的神經元個數分別為300和800。
(2)當確定了神經網絡模型后,調節目標函數(4)的超參,設置λ∈[0,0.2,0.4,0.6,0.8,1],β∈[0,0.00001,0.0001,0.001,0.01,0.1,1]。 通過取不同數值進行網格搜索,得到了RMSASC模型。
在第(1)和第(2)的訓練過程中,采用的是Adam優化算法,對于AwA數據集,學習率設置為0.0001,mini-batch設置為64,梯度裁剪設置為5;對于CUB數據集,學習率設置為0.000 01,mini-batch設置為100,梯度裁剪設置為1。
經過在AwA和CUB的20 000次和30 000次的迭代訓練和權重更新,本文得到了在數據集AwA和CUB上的ZSL實驗結果,表2給出了本文方法與其它方法的比較結果。本文對比的零樣本學習算法有直接屬性預測(DAP)[4]、語義相似性嵌入零樣本學習算法(SSE)[16]、聯合嵌入零樣本學習算法(SJE)[6]、一種簡單的不可靠約束的零樣本學習算法(ESZSL)[8]、合成分類器的零樣本學習算法(SYNC)[17]、指數族的零樣本學習算法(GFZSL)[18]、語義自編碼器的零樣本學習算法(SAE)[5]和深度嵌入約束的零樣本學習算法(DEM)[10]。

表2 不同的零樣本分類方法在數據集上的正確率比較
表2中,“-”表示該文獻并沒有對相應的數據集做實驗。
我們可以看到本文提出的RMSASC模型在AwA數據集的未知類別上取得了88.8%的分類正確率,在CUB數據集的未知類別上取得了59.6%的分類正確率。對于AWA,本文的分類正確率是最高的,與本文具有較大競爭力的是SAE和DEM模型,本文模型比SAE和DEM模型分別提高了4.1%和2.1%;對于CUB,本文模型的分類正確率雖然比SAE模型小,但是效果仍然是比較好的,比GFZEL和DEM模型分別提高了3.1%和1.3%。驗證了本文的方法對未知類別具有較高的識別能力。
本文是在反向映射的基本模型上,增加了基于語義對齊和語義重構的約束,得到了RMSASC模型。接下來想考察一下RM、RMSA和RMSASC模型在數據集上的分類識別率,來驗證一下兩個約束的有效性。
下面定義一下3種模型:
(1)RM基本模型:設置目標函數(4)中的λ=0,β=0;
(2)RMSA模型:設置目標函數(4)中β=0, 調節λ;
(3)RMSASC模型:目標函數(4)不變,調節λ和β。
圖3和圖4分別是RMSA模型在AwA和CUB數據集的分類識別率情況。從圖中可以看出,增加語義對齊約束可以提高零樣本分類算法的分類性能。對于AwA,當λ等于0.6的時候,RMSA的分類正確率比λ等于0(RM基本模型)的分類正確率高。對于CUB,當λ等于0.4的時候,RMSA的分類正確率比λ等于0(RM基本模型)的分類正確率高。根據結果,說明了基于語義對齊的約束,可以幫助語義空間的每類的語義特征較優地映射到圖像空間中每類的圖像特征中,提高了分類識別率,驗證了它的有效性。

圖3 RMSA模型在AwA數據集的分類識別率

圖4 RMSA模型在CUB數據集的分類識別率
圖5和圖6分別是RMSASC模型在AwA和CUB數據上的分類識別率情況。圖中,橫坐標顯示的是不同的語義約束,圖中央顯示的6個不同的語義重構約束,縱坐標顯示的是分類正確率。

圖5 RMSASC模型在AwA數據集的分類識別率

圖6 RMSASC模型在CUB數據集的分類識別率
如圖5所示,對于AwA數據集,當λ等于0時,只存在重構約束的情況下,仍然可以得到比RM模型較高的分類識別率。當λ不等于0時,可以看到beta等于0.000 01、0.0001時,RMSASC模型的分類識別率具有明顯的提升,比RM模型的分類識別率高1.73%,比RMSA模型分類識別率高1.4%。如圖6所示,對于CUB數據集,當λ等于0時,只存在重構約束的情況下,仍然可以得到比RM模型較高的分類識別率。當λ不等于0時,可以看到beta等于0.000 01、0.0001時,RMSASC模型的分類識別率也有一定的提升,比RM模型的分類識別率高0.88%,比RMSA模型分類識別率高0.61%。根據結果,表明了基于語義重構的約束,幫助重構語義空間語義特征,可以提高模型的泛化能力,緩解了ZSL的域漂移,提高了分類識別率,驗證了它的有效性。
本文聯合樞紐問題和域漂移問題,提出了一種基于語義對齊和語義重構約束的零樣本學習算法。本文采用語義空間回歸映射到圖像空間來避免映射到其它空間加劇樞紐問題。針對反向映射現象存在的不足:映射后的語義特征比圖像特征方差小,易于匯聚到處于原點附近。加入語義對齊的正則化約束,有利于語義空間類級別的語義原型特征和圖像特征原型點的對齊,進一步緩解了樞紐問題,提高了最近鄰算法的預測正確率。同時提出加入語義重構的正則化約束,重構語義特征信息,使得模型更具有泛化性和魯棒性,緩解了域漂移問題。實驗結果表明,在基本模型的基礎上所加入的約束對于AwA和CUB數據集測試類樣本的識別率具有較明顯的提升,驗證了所提算法的有效性。