張慶亮,朱松豪
(南京郵電大學(xué) 自動化學(xué)院、人工智能學(xué)院,江蘇 南京 210023)
目前,深度卷積神經(jīng)網(wǎng)絡(luò)被廣泛用于解決許多計算機(jī)視覺任務(wù),并顯著提高了性能。但是,訓(xùn)練一個有效的深度卷積網(wǎng)絡(luò)模型需要大量帶標(biāo)簽的樣本,這需要消耗大量的人力物力財力,因此通常難以獲得這樣的數(shù)據(jù)。這種缺陷阻礙了深度神經(jīng)網(wǎng)絡(luò)在圖像任務(wù)中的進(jìn)一步發(fā)展,尤其是在醫(yī)學(xué)圖像等標(biāo)注樣本極為稀缺的領(lǐng)域[1-2]。當(dāng)標(biāo)注樣本稀缺時,來自分布不同但語義相關(guān)的數(shù)據(jù)集樣本對模型訓(xùn)練很有幫助,但由于不同數(shù)據(jù)集的分布不同,直接用其進(jìn)行訓(xùn)練會產(chǎn)生“域移位”現(xiàn)象[3]。為解決該問題,域自適應(yīng)方法被廣泛研究[4]。在域自適應(yīng)問題中,將未標(biāo)記的數(shù)據(jù)集稱為目標(biāo)域,已標(biāo)記的數(shù)據(jù)集稱為源域。在本文的設(shè)定中,目標(biāo)域樣本的標(biāo)簽信息完全未知,因此,可視為無監(jiān)督問題。現(xiàn)有的域自適應(yīng)方法大多屬于閉集域自適應(yīng)[5-9],即源域和目標(biāo)域的類別完全重合,但在實(shí)際應(yīng)用中,目標(biāo)域樣本可能是源域中未出現(xiàn)過的類別,即“未知類別”。這個問題被稱為開集域自適應(yīng)[10],如圖1所示。由于“未知類別”的信息完全未知,因此開集域自適應(yīng)比傳統(tǒng)的閉集域自適應(yīng)問題更具挑戰(zhàn)性。
圖1 兩種域自適應(yīng)
本文在文獻(xiàn)[11]的基礎(chǔ)上,提出了一個新的方法,使用了奇異值平衡策略和基于對抗思想的域?qū)R方法。文獻(xiàn)[12]的研究表明,在遷移學(xué)習(xí)過程中,模型的遷移性得到增加,但同時也導(dǎo)致了奇異值分布的不平衡。深度網(wǎng)絡(luò)在遷移學(xué)習(xí)過程中會損失一定的可辨別性,而模型的可辨別性越高,意味著預(yù)測的準(zhǔn)確性越高。這種現(xiàn)象的內(nèi)在原因是較大奇異值對應(yīng)的向量決定了模型的可遷移性,同時遷移學(xué)習(xí)過程中會抑制較小的奇異值,懲罰對應(yīng)的向量。然而,這些被懲罰的向量對模型的可辨別性也至關(guān)重要,因此,模型的可辨別性會下降。該文獻(xiàn)通過抑制最大的奇異值來實(shí)現(xiàn)奇異值分布的平衡,從而在提高遷移性的同時盡可能確保較高的可辨別性。由于特征值的大小會影響模型預(yù)測的準(zhǔn)確性,因此在保持奇異值平衡的同時,我們盡可能增加奇異值的大小。此外,本文通過設(shè)置合理的閾值,避免了目標(biāo)域中未知類別的特征對齊;同時,通過對抗性訓(xùn)練實(shí)現(xiàn)源域和目標(biāo)域中已知類別的特征分布對齊。在此基礎(chǔ)上,源域和目標(biāo)域同類別樣本間的偏差進(jìn)一步縮小,且模型的可辨別性進(jìn)一步得到增強(qiáng)。
在過去的幾年中,域自適應(yīng)已成為計算機(jī)視覺領(lǐng)域中一個非?;鸨膯栴}[13]。通過域自適應(yīng),可以實(shí)現(xiàn)不同域之間的知識轉(zhuǎn)移,從而減少大量不同域圖像的標(biāo)記成本。由于不同域間的特征分布不同,在源域上訓(xùn)練的分類器直接在目標(biāo)域上進(jìn)行測試,性能會有較大下降。解決該問題的一個有效方法是確保源域樣本和目標(biāo)域樣本的分布盡可能相似,其目的是獲取域不變特征?;谶@種觀點(diǎn),對抗生成網(wǎng)絡(luò)思想越來越多地應(yīng)用于域自適應(yīng)研究中[14]。對抗生成網(wǎng)絡(luò)訓(xùn)練鑒別器來識別輸入樣本的真實(shí)性,并利用生成器生成假樣本欺騙鑒別器。與之類似,近年來出現(xiàn)了許多采用對抗思想的域自適應(yīng)模型,例如文獻(xiàn)[15-18]提出的方法。在這些方法中,鑒別器用于區(qū)分圖片是來自源域還是目標(biāo)域,生成器用于特征提取。
雖然這些方法取得了很大成功,但它們最基本的假設(shè)是源域和目標(biāo)域共享完全相同的類別,即閉集域自適應(yīng)。一旦目標(biāo)域中含有源域中未出現(xiàn)的類別,這些方法的性能會出現(xiàn)很大的下降。
由于開集域自適應(yīng)的設(shè)定更加接近真實(shí)場景,因此逐漸受到研究人員重視。開集域自適應(yīng)的目標(biāo)域中包含源域中不存在的類別,其最終目的是對已知類別進(jìn)行正確分類的同時,識別出所有未知類樣本。最近一些研究者提出了幾種方法來解決該問題。例如,文獻(xiàn)[10]通過每個目標(biāo)樣本的特征與每個源類別特征的中心距離,來確定目標(biāo)樣本是屬于已知類別還是未知類別。文獻(xiàn)[11]通過二分類對抗訓(xùn)練,實(shí)現(xiàn)未知樣本的檢測。文獻(xiàn)[19]通過多二進(jìn)制分類器實(shí)現(xiàn)未知樣本的識別,并對齊兩個域的特征分布。文獻(xiàn)[20]使用支持向量機(jī)獲得的概率值,實(shí)現(xiàn)目標(biāo)域中未知樣本的識別和剔除。文獻(xiàn)[21]利用對抗生成網(wǎng)絡(luò)生成未知類樣本,并用其訓(xùn)練神經(jīng)網(wǎng)絡(luò)。此外,文獻(xiàn)[22]從半監(jiān)督學(xué)習(xí)中得到啟發(fā),提出了學(xué)生和教師兩個子網(wǎng)絡(luò)的自嵌入方法,在開集域自適應(yīng)中也表現(xiàn)出了很好的效果。
要解決開放集域自適應(yīng)問題,須準(zhǔn)確區(qū)分已知樣本和未知樣本;同時,也要對齊源域和目標(biāo)域中所有已知類別樣本的特征分布,以消除域間的偏差。
圖2給出本文提出的域自適應(yīng)方法,具體而言:首先,將樣本輸入由卷積神經(jīng)網(wǎng)絡(luò)和全連接層構(gòu)成的特征生成器G中,其中fs、ft和fkt分別表示生成器G從源域、目標(biāo)域和目標(biāo)域中的已知類別提取的特征;然后,標(biāo)簽預(yù)測器將這些樣本分為K+1個類別,其中K表示已知類別的數(shù)量,而第K+1個類別表示僅在目標(biāo)域中存在的未知類別,同時利用p(xsi|ysi)=C{G(θg,xsi),θc}(θg表示特征生成器G的參數(shù),θc表示分類器Cy的參數(shù))表示每個目標(biāo)域樣本被識別為相應(yīng)類別的概率;接下來,通過對抗訓(xùn)練獲得域不變特征;此外,通過提高樣本特征矩陣中較小的奇異值,提升對應(yīng)特征向量的重要性,從而提高模型的可辨別性。
圖2 本文提出的改進(jìn)的域自適應(yīng)方法
具體訓(xùn)練過程如下所述。首先,將源域中的帶標(biāo)簽樣本進(jìn)行正確分類,此時源域中的分類損失函數(shù)LS應(yīng)最小,對應(yīng)的公式如下
之后,在目標(biāo)域中的已知類別和未知類別之間建立邊界。類似于文獻(xiàn)[11],這里將未知類別的概率設(shè)置為β用于訓(xùn)練分類器,并通過訓(xùn)練特征生成器提高分類器的性能。最終的輸出可視為一個二分類任務(wù),也即Cy識別的所有K個已知類別的概率之和,與第K+1個類別即未知類別的概率。二者通過對抗訓(xùn)練,相互博弈。具體來說,生成器通過增加或減小未知類別的概率使得K+1類的輸出偏離β,從而增大分類器的誤差,此時分類器需要使得第K+1類的輸出概率接近β,以減小分類器誤差。如果生成器選擇增加未知類別的概率β,這意味著將樣本識別為未知類別,否則識別為已知類別。通過上一步對源域中標(biāo)簽樣本的訓(xùn)練,網(wǎng)絡(luò)已具備了一定的辨別能力,經(jīng)過多次迭代,最終可正確識別出未知類別。因此,Ladv使用二分類交叉熵?fù)p失,公式如下
其中,xt表示目標(biāo)域的樣本,p(xt|y=K+1)表示樣本xt屬于第K+1個類別的概率,β為未知類設(shè)置的一個超參數(shù),這里將β設(shè)置為0.5,以達(dá)到在目標(biāo)域中分離未知類別樣本的目的。
通過之前的研究,可以知道特征的可遷移性主要取決于較大奇異值對應(yīng)的向量。對于域自適應(yīng),可遷移性的增加將導(dǎo)致奇異值分布的不平衡,這將對網(wǎng)絡(luò)的可辨別性產(chǎn)生不良影響。此外,可遷移性的增強(qiáng)是通過犧牲其他相對較小奇異值對應(yīng)的向量為代價實(shí)現(xiàn)的,這些向量具有不同的信息,對準(zhǔn)確識別發(fā)揮著至關(guān)重要的作用。文獻(xiàn)[23]通過最大化矩陣核范數(shù)提高了標(biāo)簽預(yù)測矩陣的可分辨性和多樣性。本文中,通過使用奇異值分解獲得較小的奇異值并增加它們,一方面減小對最大奇異值的影響,保持特征的可遷移性;另一方面相當(dāng)于間接減小最大奇異值,平衡奇異值的分布,提高特征的可辨別性。對應(yīng)的公式如下
其中,δsi和δti分別表示源域特征矩陣fS和目標(biāo)域特征矩陣ft中第i大的奇異值。例如,δs1為源域特征矩陣最大的奇異值,δsn則表示源域特征矩陣第n大的奇異值,n的取值一般為批訓(xùn)練大小。此外,由于源域和目標(biāo)域的差異性,對源域和目標(biāo)域單獨(dú)進(jìn)行奇異值分解操作。
由于不同域中樣本特征的分布不同,因此,提取兩個域的共同特征變得至關(guān)重要,這也是實(shí)現(xiàn)域自適應(yīng)的關(guān)鍵?;趯顾枷氲奶卣鲗R,通過特征提取器和域辨別器的相互對抗,學(xué)習(xí)到域不變特征。如果不考慮目標(biāo)域中的未知類別,直接進(jìn)行域不變特征的提取,最后強(qiáng)行將兩個域的特征分布對齊,會造成已知類與未知類的不匹配,模型的性能會下降,造成負(fù)遷移。因此,要先對目標(biāo)樣本進(jìn)行篩選,剔除其中的未知類別。具體而言,首先獲得目標(biāo)樣本xt預(yù)測為各個類別,即K+1類的概率。如果概率最大的類別是已知類別,且概率值大于預(yù)設(shè)閾值P,則將該樣本標(biāo)記為目標(biāo)域中的已知類別,對應(yīng)的公式如下
之后,將源域樣本和目標(biāo)域中識別為已知類別的樣本輸入特征生成器G,再將生成的特征輸入給域標(biāo)簽鑒別器Cd。為獲得域不變特征,特征生成器G需最大化域辨別誤差Ld,域鑒別器Cd則要最小化域分類誤差Ld,公式如下其中,Lbce表示二分類交叉熵?fù)p失,θg和θd分別表示特征生成器G和域標(biāo)簽鑒別器Cd的網(wǎng)絡(luò)參數(shù),訓(xùn)練樣本xi來自源域或目標(biāo)域中的已知類別xkt,yd表示相應(yīng)的域類別標(biāo)簽(1或0)。 利用式(5)中的最后兩個公式分別更新特征生成器的參數(shù)θg和域鑒別器的參數(shù)θd。 為有效計算梯度和更新參數(shù),這里使用了梯度反轉(zhuǎn)層。因此,網(wǎng)絡(luò)最終的損失函數(shù)計算公式為
其中,λ設(shè)置為2。因此,網(wǎng)絡(luò)參數(shù)的訓(xùn)練目標(biāo)如下
利用Office-31和Visda-2017兩個公開數(shù)據(jù)集評估本文所提方法的性能,并與其他一些最新的開集域自適應(yīng)方法進(jìn)行比較。為證明本文所提方法的有 效 性,分 別 使 用 AlexNet[24]、ResNet-50[25]和VGG[26]作為特征提取網(wǎng)絡(luò),并利用ImageNet[27]的預(yù)訓(xùn)練模型作為初始神經(jīng)網(wǎng)絡(luò)參數(shù),同時在網(wǎng)絡(luò)中加入批量歸一化和Leakly-ReLU層。對于網(wǎng)絡(luò)參數(shù)的更新,選用了帶動量的隨機(jī)梯度下降更新策略,學(xué)習(xí)率設(shè)為1.0×10-3,動量設(shè)為0.9。
此外,將所有類別的平均準(zhǔn)確率表示為OS,已知類別的平均準(zhǔn)確率表示為OS*,目標(biāo)域中未知類的準(zhǔn)確率表示為UNK。
Office-31[28]是域自適應(yīng)領(lǐng)域的一個標(biāo)準(zhǔn)數(shù)據(jù)集。該數(shù)據(jù)集共有三個域:Amazon(A),Webcam(W)和DSLR(D)。它總共包含來自31個類別的4 652張圖像,圖3(a)展示了其中的一些圖片樣本。按照文獻(xiàn)[10]提出的數(shù)據(jù)集劃分,這里使用其中10個與Caltech數(shù)據(jù)集[29]重疊的類別樣本作為已知類別樣本;之后按照字母順序,將第21至31類別樣本作為目標(biāo)域中的未知樣本。由于本次實(shí)驗(yàn)?zāi)康氖菍⒛繕?biāo)域樣本正確分類為10個已知類和一個未知類,因此這里丟棄了第11至20類別。為公正地評估本文所提方法的性能,這里采用了文獻(xiàn)[11]中的實(shí)驗(yàn)設(shè)置。在該數(shù)據(jù)集上,使用Alexnet和Resnet-50作為網(wǎng)絡(luò)的特征提取器,且將提取的特征輸入兩個全連接層后,分別送入標(biāo)簽預(yù)測器和域辨別器進(jìn)行訓(xùn)練。由于Resnet-50具有更深的網(wǎng)絡(luò)結(jié)構(gòu),因此表現(xiàn)出了更好的性能。實(shí)驗(yàn)結(jié)果如表1所示,這是600個epoch之后的結(jié)果。由于該數(shù)據(jù)集不同域之間的語義信息和分布比較接近,因此域間差異相對較小,準(zhǔn)確率也較高。
表1 Office-31數(shù)據(jù)集上的準(zhǔn)確率 %
VisDA-2017[33]是一個大型的域自適應(yīng)挑戰(zhàn)數(shù)據(jù)集。該數(shù)據(jù)集共有兩個域(合成域和真實(shí)域),每個域包含12個類別,其中,作為源域的“合成域”約有15萬張圖片,這些圖片為從不同角度和不同光線對3D合成對象截取的2D圖像,作為目標(biāo)域的“真實(shí)域”約有5萬張真實(shí)場景下的圖片。圖3(b)展示了其中的一些圖片樣本。根據(jù)文獻(xiàn)[11]中的實(shí)驗(yàn)設(shè)置,這里將目標(biāo)域中的六個類設(shè)置為未知類,且在訓(xùn)練過程中將源域中的這六個類別的圖片剔除,不讓它們參加訓(xùn)練。VisDA-2017數(shù)據(jù)集與實(shí)際應(yīng)用場景更加吻合,該數(shù)據(jù)集具有更大的“域間距”,即可從語義相關(guān)的標(biāo)記樣本域中獲取有價值的信息。實(shí)驗(yàn)結(jié)果表明,本文所提方法在總體性能上要優(yōu)于其他一些方法。在本次實(shí)驗(yàn)中,由于訓(xùn)練樣本較多,因此選擇VGG作為特征提取網(wǎng)絡(luò)(特征生成器)。VGG提取的特征會經(jīng)過三個全連接層,然后進(jìn)入標(biāo)簽預(yù)測器和鑒別器部分。在此次實(shí)驗(yàn)中,批訓(xùn)練大小設(shè)置為32。表2表示15個epoch之后的實(shí)驗(yàn)結(jié)果。
表2 VisDA數(shù)據(jù)集上的準(zhǔn)確率 %
本次實(shí)驗(yàn)也探究了β對實(shí)驗(yàn)結(jié)果的影響。不同的β值,OS、OS*和UNK的實(shí)驗(yàn)結(jié)果如圖4所示。從圖4所示結(jié)果可以清楚看到,隨著β值的增大,OS和OS*不斷減小,而UNK卻在不斷增大。未知類別的準(zhǔn)確性和β值具有相同的趨勢,這與文獻(xiàn)[11]的結(jié)論是相似的。當(dāng)β取0.5時,模型總體性能較為均衡。
圖4 不同β值下實(shí)驗(yàn)結(jié)果的變化(A→D)
本文通過使用奇異值平衡和基于對抗思想的特征對齊,提高了開集域自適應(yīng)的性能。在樣本特征矩陣中提升了較小的奇異值,以獲得更多信息用于提高特征的可辨別性;同時,采用對抗學(xué)習(xí)的思想,對齊了源域和目標(biāo)域中已知類別的特征分布,獲得域不變特征。實(shí)驗(yàn)結(jié)果表明,本文所提方法可有效提高開集域自適應(yīng)的性能。