筆記:Deep transfer network: unsupervised domain adaptation

這篇文章裏提出了一種用MMD來同時對兩個域上的marginal distribution和conditional distribution進行約束的遷移網絡。
具體而言,用MMD來對兩個域(源域和目標域)上的提取到的特徵分佈進行約束,從而使兩個域上的特徵分佈儘可能相同,這個分佈叫做marginal distribution;同時對兩個域上的softmax分類結果用MMD來進行約束,使得兩個分類結果的分佈儘可能相同,這個分佈叫做conditional distribution。這兩個方面應該和這篇文章Long M, Wang J, Ding G, et al. Transfer feature learning with joint distribution adaptation[C]//Proceedings of the IEEE International Conference on Computer Vision. 2013: 2200-2207.的思路基本相同,不同之處在於這篇文章使用的是基於傳統的方法,這裏使用了深度學習。
由於本文並沒有使用標準的卷積網絡結構,所以最後取得的效果和之前的deep learning的方法並沒有可比性,最後實驗部分也是用的傳統的淺層方法進行對比,沒有與最新的基於deep learning方法對比。
文章方法的網絡結構在文中表示如下:
architecture
首先是特徵提取層,也就是圖中的前l-1層,最後一層是分類層,輸出的是屬於每個類的概率。本文在第l-1層以及分類器的輸出衡量源域和目標域基於MMD的分佈損失。在特徵分佈上,通過在目標函數中的marginal MMD來衡量兩個域上的分佈區別,具體如下:
marginal MMD
其中的h(l-1)分別代表網絡層第l-1層的輸出。
在分類器的輸出層添加MMD損失使得兩個域在條件分佈(conditional distribution)上儘可能一致。定義如下的conditional MMD:
cond MMD
其中q是對應某一類的所有輸出構成的向量。
最後加上網絡結構中標準的分類損失,得到整個網絡的目標函數如下:
loss
其中:
class loss
接着本文給出了對這個目標函數基於梯度的優化方法:
optimal method
需要注意以下三點:
1. 如果在每次梯度法中使用全部的樣本,那麼當樣本數很大的時候效率會很低,所以本文采取了基於mini-batch的梯度法。
2. Minibatch構造時隨機抽取一半的源域和一半的目標域上的樣本,由於兩個域上樣本數往往不同,本文通過樣本複製方式將兩個樣本集的樣本數變爲一致。
3. 在構造conditional MMD時,需要用到源域和目標域的標籤信息,由於目標域上沒有ground-truth,這裏通過一個簡單的分類器來預測這種label。這個網絡就是當前訓練得到的網絡,隨着每次網絡更新的結束,這個label也會不斷更新,直到收斂或者達到最大的循環次數。
分析:本文的目標函數中的三個部分:標準的分類損失,基於特徵分佈的marginal MMD損失,基於分類結果的conditional MMD損失,前兩個部分在構造domain invariant特徵的網絡中比較常見。第三個損失是衡量每類輸出構成的向量分佈之間的差異,這個差異越小,那麼兩個域上的conditional distribution越相近。對於第三個損失在這裏簡單對比了它與simultaneous Deep Transfer Across Domains and Tasks文章中提到的soft label loss之間的關係。
另外一個比較conditional MMD損失與之前的soft label結構之間的關係: softlabel方案中是基於目標域上的監督信息,儘可能在目標域上保存源域上學習得到類別之間的關係(relationship between classes),最後的損失用一個交叉熵來構造(兩個分佈越相似,兩者的交叉熵損失越小)。本文基於conditional MMD的損失基於softmax輸出的scalar,它要求在同一類上,源域和目標域上的樣本在softmax的輸出上具有相同的分佈。按照這種思路,我們需要也目標域上樣本的監督信息,文章裏面的做法是先用一個base classifier對目標域上的樣本構造一個pseudo label,按照這個label分別來構造conditional MMD損失。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章