趙文倉 袁立鎮(zhèn) 徐長凱
(青島科技大學自動化與電子工程學院 青島 266061)
深度前饋架構(gòu)為計算機視覺及其他領域的各種任務帶來了深刻的先進技術。 只有當有大量標記的訓練數(shù)據(jù)可用時,才會出現(xiàn)這些性能上的飛躍。深度卷積網(wǎng)絡在大規(guī)模數(shù)據(jù)集上訓練時,可以學習各種任務和視覺領域中通用的表示[1]。 然而,由于數(shù)據(jù)集偏差或域移位[2]的現(xiàn)象,在大型數(shù)據(jù)集上與這些表示一起訓練的識別模型不能很好地推廣到新的數(shù)據(jù)集和任務[3]。
上述問題的解決方案是無監(jiān)督域自適應方法。域自適應方法試圖減輕域移位的有害影響。 最近的域自適應方法學習深度神經(jīng)變換,將2個域映射到共同的特征空間。這通常通過優(yōu)化表示以最小化域移位的一些度量來實現(xiàn),例如最大平均差異(maximum mean discrepancy, MMD)[4]或相關距離[5]。 另一種方法是從源表示中重建目標域[6]。在機器翻譯中,丁亮等人[7]將Bi-LSTM用于構(gòu)建自動編碼器,有效翻譯系統(tǒng)的性能。曾遠柔等人[8]通過優(yōu)化非線性映射函數(shù)來對齊子空間和目標子空間,用界標無人管理域自適應法來實現(xiàn)。Ganin等人[9]引入梯度反轉(zhuǎn)層,將梯度乘以小的負數(shù),以訓練特征提取器使域分類器不能區(qū)分源域和目標域。Tzeng等人[10]考察了用于半監(jiān)督域自適應的類似設置。該方法不是采用梯度反轉(zhuǎn)層以直接最大化域分類器的損失,而是最大化域混淆以“最大程度地混淆”域分類器。當域分類器在二進制標簽上輸出均勻分布時,它是“最大混淆的”,這表明域分類器不能確定輸入圖像的學習特征表示是來自源域還是目標域,通過加入軟標簽損失,用來保持源域和目標域各類之間相對分布的一致性。
雖然這些方法已經(jīng)取得了良好的進展,但它們?nèi)匀徊荒芘c僅在目標領域進行訓練的純監(jiān)督方法相提并論。生成對抗網(wǎng)絡(generative adversarial network, GAN)[11]優(yōu)于其他生成方法的優(yōu)點是其在訓練期間不需要復雜的采樣或推理,對抗性方法尋求通過關于域鑒別符的對抗性目標來最小化近似域差異距離。針對上述問題,本文提出了一種基于鑒別模型和對抗損失的無監(jiān)督域適合方法,該方法在MNIST、MNIST-M和SVHN數(shù)字數(shù)據(jù)集上實現(xiàn)了最先進的視覺自適應結(jié)果。為了更好地驗證對抗鑒別方法,本文將該方法在較復雜的2組遙感影像數(shù)據(jù)集上進行適應。對抗鑒別方法與現(xiàn)有方法相比具有的優(yōu)勢為與特定任務的體系結(jié)構(gòu)分離,跨標簽空間的泛化以及訓練穩(wěn)定等。
根據(jù)生成對抗網(wǎng)絡對抗訓練生成逼真圖像的思想,本文提出了基于對抗網(wǎng)絡的域自適應框架,如圖1所示。首先使用源域中的標簽學習鑒別表示,然后使用通過域-對抗性損失學習的非對稱映射將目標數(shù)據(jù)映射到同一空間的單獨編碼。以無監(jiān)督的方式學習鑒別表示,運用無權重共享、對抗性損失以及輔助分類任務。
圖1 結(jié)合鑒別模型的無監(jiān)督域自適應方法
使用Goodfellow等人的符號,定義了2個網(wǎng)絡之間的極小極大博弈所使用的值函數(shù)V(G,D):
+Ez~pz(z)[log(1-D(G(z)))]
(1)
其中,x~pdata(x)從實數(shù)據(jù)分布中抽取樣本,z~pz(z)從輸入噪聲中抽取樣本,D(x;θd)是鑒別器,G(z;θg)是生成器。 如式(1)所示,目標是找到參數(shù)θd,其最大化正確區(qū)分真樣本x和假樣本G(z)的對數(shù)概率,同時找到最小化對數(shù)概率1-D(G(z))的參數(shù)θg。表達式D(G(z))表示生成的數(shù)據(jù)G(z)被鑒別為真的概率。如果鑒別器正確地對假輸入進行分類,則D(G(z))=0。目標是使D(G(z))越大越好,即以假亂真。所以使數(shù)值1-D(G(z))最小化:當D(G(z))=1時,或鑒別器將生成器的輸出錯誤分類為實際樣本時,會發(fā)生這種情況。 因此,鑒別器的任務是學習正確地將輸入分類為真實或假的,而生成器試圖欺騙鑒別器以認為其生成的輸出是真實的,二者形成對抗關系。對抗能更好地學習,而對抗學習的關鍵就是如何表示和優(yōu)化對抗性損失。
對于未標記的目標域,策略是通過最小化源和目標特征分布之間的差異來指導特征學習[10,12,13]。為此目的,有幾種方法使用最大平均差異損失,計算2個域均值之間差異的范數(shù)。 除了源上的常規(guī)分類損失之外,深度域混淆(deep domain confusion, DDC)[14]方法使用MMD來學習既具有鑒別性又具有域不變性的表示。相比之下,相關對齊(correlation alignment, CORAL)[15]方法提出匹配2個分布的均值和協(xié)方差。
域自適應的目標是從源數(shù)據(jù)分布中學習在不同但相關的目標數(shù)據(jù)分布上的良好性能模型。而生成對抗網(wǎng)絡的思想是通過對抗訓練生成與真實圖像逼真的圖像。對抗性學習方法是訓練健壯的深度網(wǎng)絡的有前景的方法,并且可以跨不同領域生成復雜樣本。
本文的對抗性損失定義為固定G的參數(shù)不變,優(yōu)化D的參數(shù),即maxV(D,G),等價于min[-V(D,G)]。因此D的損失函數(shù)等價為
J(D)(θD,θG)=-Ex~pdata(x)[logD(x)]
(2)
鑒別器認為來自真實數(shù)據(jù)樣本的標簽為1而來自生成樣本的標簽為0。因此,其優(yōu)化過程是類似于Sigmoid的二分類,即Sigmoid的交叉熵。
在固定鑒別器參數(shù)不變的情況下,生成器的代價函數(shù)可表述為
(3)
當pg=pdata時,生成器的損失為
(4)
引入JS散度(Jensen-Shannon divergence),生成器的代價函數(shù)等價為
=-log(4)+2×JSD(pdata‖pg)
(5)
由于JS散度具有非負性,當兩者分布相等時,其散度為0。因此,D(x)訓練得越好,G(z)就越接近最優(yōu),則生成器的損失越接近于生成樣本分布和真實樣本分布的JS散度。
用交替迭代的方法優(yōu)化參數(shù),其優(yōu)化流程如下。
初始化:采用批隨機梯度下降進行訓練,超參數(shù)k=1;批大小Batchsize=m;for number of training iterations do fork steps do 抽樣出m個噪聲pz(z)樣本{z(1), z(2), z(3)…z(m)} 抽樣出m個數(shù)據(jù)px(x)樣本{x(1), x(2), x(3)…x(m)} 計算鑒別器的代價函數(shù): J(D)=1m∑mi=1[-logD(x(i))-log(1-D(G(z(i))))] 通過Adam梯度下降算法更新鑒別器參數(shù): θd=Adam(▽θd(J(D)),θd) end for 抽樣出m個噪聲pz(z)的樣本{z(1), z(2), z(3)…z(m)} 計算生成器的代價函數(shù): J(G)=1m∑mi=1[log(1-D(G(z(i))))] 通過Adam梯度下降算法更新生成器的參數(shù): θg=Adam(▽θg(J(G)), θg)end for
基于鑒別模型和對抗損失的無監(jiān)督適應方法的一般框架如圖2所示。 在無監(jiān)督領域自適應中,假設源圖像Xs,從源域分布ps(x,y)繪制的標簽Ys,以及服從目標分布pt(x,y)的目標圖像Xt,沒有標簽。目的是學習目標表示即目標特征映射Ft和分類器Ct,它可以在測試時將目標圖像正確地分類為
圖2 本文方法的框架
N類別中的一個。由于目標域無標簽,不能對目標進行直接監(jiān)督學習,先域自適應學習源特征映射Fs以及源分類器Cs,然后再學習使該模型適應于目標域。
最小化源域映射后的特征空間Fs(Xs)和目標域映射后的特征空間Ft(Xt)之間的距離。由于源域有標簽,可以學習源域的特征映射Fs和源域的分類器Cs來分類:
(6)
把Fs和Cs遷移到目標域。為使實驗結(jié)果更為顯著,將源域分類器Cs直接作為目標分類器Ct,即設置C=Cs=Ct。因此,只需要學習Ft,為了獲得Ft,需要優(yōu)化分類器D,借鑒第1節(jié)GAN網(wǎng)絡的思想,優(yōu)化D的目標函數(shù)即域分類器損失為
-Ext~Xt[log(1-D(Ft(xt)))]
(7)
(8)
并且用它最普遍的約束,即源域的分層和目標域的分層完全一致:
(9)
(10)
這個目標函數(shù)與極大極小損失有相同的定點屬性,但其針對目標特征映射Ft(xt)擁有更強的梯度。這種方式是將源特征映射Fs和目標特征映射Ft獨立開來,并且僅僅去學習目標特征映射Ft,因為源特征映射Fs可以通過直接訓練得到。這模擬了GAN,其中真實圖像的分布保持固定,生成器G生成的分布來匹配真實圖像的分布。
在生成器試圖擬合1個不變的分布的時候,對抗損失是一個標準的選擇方案。但是,在2個分布都發(fā)生變化的情況下,當Ft收斂到最優(yōu)的時候此目標將會震蕩,鑒別器的變化會導致預測的符號發(fā)生反轉(zhuǎn) 。為確保Fs和Ft之間的獨立性并且避免震蕩的出現(xiàn),采用使用交叉熵損失函數(shù)對統(tǒng)一分布訓練特征映射:
(11)
在域自適應應用場景中,源域樣本中往往包含有目標域中不存在的類別樣本。為了能夠充分利用到源域樣本,本文引入輔助分類任務,其思想源自多任務學習。結(jié)合輔助的任務學習共同的特征表示,這樣最大限度地豐富訓練樣本,增強學習到特征的泛化性能,而且有效增大類間距離和減小類內(nèi)距離,有利于提高分類精度。
輔助損失函數(shù)定義為
(12)
本文方法的參數(shù)更新流程如表1所示。
表1 算法流程
本研究在MNIST[16]、MNIST-M[17]和SVHN[18]數(shù)字數(shù)據(jù)集之間的無監(jiān)督域自適應調(diào)整任務中驗證了本文方法,這些數(shù)據(jù)集都由10個數(shù)字(0~9)類組成,數(shù)據(jù)集示例見圖3。所有的實驗都在無監(jiān)督的設置中進行,其中目標域中的標簽被隱藏,主要考慮在2個方向上進行適應,即MNIST到MNIST-M,SVHN到MNIST。
圖3 數(shù)字數(shù)據(jù)集適應示例
(1)從MNIST到MNIST-M。MNIST數(shù)據(jù)集的數(shù)字圖像作為源域,MNIST-M數(shù)據(jù)集的數(shù)字圖像作為目標域。MNIST-M數(shù)據(jù)集是針對無監(jiān)督域自適應提出的MNIST的變體。它的圖像是通過每個MNIST數(shù)字為二進制掩碼和它的背景圖像反相創(chuàng)建的。背景圖像是隨機從伯克利分割數(shù)據(jù)集中(BSDS200)[19]均勻采樣。實驗遵循文獻[17]中建立的訓練協(xié)議,從MNIST采樣2 000個圖像,從MNIST-M采樣1 000個圖像。
(2)從SVHN到MNIST。在2個不同的域上測試本文方法。SVHN為街景門牌號數(shù)據(jù)集,包含著現(xiàn)實世界的復雜因素。對SVHN的訓練具有挑戰(zhàn)性,適應比較困難。在訓練的前期,分類錯誤仍然很高。由于SVHN更加多樣化,因此預計在SVHN上訓練的模型將更加通用并且可以在MNIST數(shù)據(jù)集上合理地執(zhí)行。
對于上述實驗,使用簡單修改的LeNet架構(gòu)在tensorflow[20]中實現(xiàn)。對抗性鑒別器由3個完全連接層組成,前2層具有500個隱藏單元,第3層是最終鑒別器輸出。 每個500單元層使用ReLU激活功能。優(yōu)化使用Adam優(yōu)化器[21]進行10 000次迭代,學習率為0.002,β1為0.5,β2為0.99,批量大小為256個圖像,即源域與目標域各128個。 所有訓練圖像都轉(zhuǎn)換為灰度,并重新縮放為28×28像素。
實驗結(jié)果如圖4和表2所示。根據(jù)圖表可以明顯看出,本文方法在“MNIST到MNIST-M”數(shù)據(jù)集上實現(xiàn)了比以前方法更好的結(jié)果,而且曲線上升趨勢良好,緊追“只有目標域”的表現(xiàn)。此外,與其他方法相比,該方法在具有挑戰(zhàn)性的從SVHN到MNIST適應任務上展現(xiàn)出令人信服的結(jié)果,也表明本文方法有可能推廣到其他各種設置。
圖4 各方法的精度隨訓練批次的變化
表2 數(shù)字數(shù)據(jù)集的分類精度
為了更好地驗證本文方法,將該方法在2組遙感影像數(shù)據(jù)集上適應,示例圖像如圖5所示。
(a) NWPU VHR-10
(b) NWPU-XUAN10
NWPU VHR-10數(shù)據(jù)集是公開的10個對象類地理空間物體檢測數(shù)據(jù)集,這10類物體分別是飛機、艦船、油罐、棒球場、網(wǎng)球場、籃球場、操場、 港口、橋梁和車輛。該數(shù)據(jù)集包含800個非常高分辨率(VHR)的遙感影像。對圖像進行人工切割尺寸為256×256,并人工分類標注。
NWPU-RESISC45數(shù)據(jù)集含有45類場景的遙感影像,每類影像都包含有700張圖片,尺寸均為256×256。選出與NWPU VHR-10重疊的10個類每類隨機選用100張,共1 000張影像,命名為NWPU-XUAN10。
該實驗網(wǎng)絡的各個參數(shù),如卷積核大小、步長和卷積層的層數(shù)如圖6所示。特征訓練層使用了預訓練的Alexnet網(wǎng)絡架構(gòu),對抗性鑒別器由3個完全連接層組成,前2層具有4 096個隱藏單元,第3層是對抗性鑒別器輸出。除輸出外,這些層使用ReLU激活功能。 然后,使用與數(shù)字實驗中相同的超參數(shù)訓練,再進行10 000次迭代。
圖6 本文方法的網(wǎng)絡結(jié)構(gòu)
從NWPU VHR-10到NWPU-XUAN10的分類精度與批次關系以及最終結(jié)果如圖7和表3所示。同時進行“僅源域”和本文方法監(jiān)督目標模型的混淆矩陣到深度適應實驗,并將NWPU VHR-10數(shù)據(jù)集的混淆矩陣列于圖8。
圖7 各方法的精度隨訓練批次的變化
從表3可以看出,本文方法在精度上實現(xiàn)了更好的結(jié)果,優(yōu)于其他方法。在圖7中,本文方法逐漸趕超最優(yōu)的域分離網(wǎng)絡方法,并且還有上升的趨勢。圖8中,本文方法表現(xiàn)均衡,對于容易混淆的籃球場、操場和網(wǎng)球場這3類場景的辨識度也有了一定的提高。由此表明在域自適應中對抗網(wǎng)絡和輔助任務可以很好地學習到域不變特征,并提高網(wǎng)絡的泛化能力與分類精度。
表3 遙感數(shù)據(jù)集的分類精度
圖8 NWPU VHR-10數(shù)據(jù)集混淆矩陣
本文提出了一種基于鑒別模型和對抗學習目標的無監(jiān)督域自適應方法,域自適應網(wǎng)絡結(jié)合鑒別模型,無需權重共享、對抗性損失和輔助分類任務,并建立了基于深度卷積神經(jīng)網(wǎng)絡的分類框架,使源特征映射網(wǎng)絡與目標特征映射網(wǎng)絡形成對抗的關系,引入輔助分類任務,擴充訓練樣本。這種對抗鑒別的無監(jiān)督域適應方法在數(shù)字數(shù)據(jù)集上實現(xiàn)了比以前方法更佳的結(jié)果,并在具有挑戰(zhàn)性的從SVHN到MNIST適應任務上展現(xiàn)出良好的結(jié)果,也表明本文方法有可能推廣到其他各種設置。最后在遙感數(shù)據(jù)集上的實驗表明,對抗網(wǎng)絡和輔助任務可以很好地學習到域不變特征,并提高網(wǎng)絡的泛化能力與分類精度。