TPAMI 2020 | 無監督多類域適應:理論,算法與實踐

©作者|張亞斌

學校|香港理工大學

研究方向|遷移學習

本文介紹我們最近的一篇 TPAMI 工作:Unsupervised Multi-Class Domain Adaptation: Theory, Algorithms, and Practice。

 

論文標題

Unsupervised Multi-Class Domain Adaptation: Theory, Algorithms, and Practice

論文鏈接

https://arxiv.org/abs/2002.08681

代碼鏈接:

https://github.com/YBZh/MultiClassDA

 

太長不看精簡版:

 

理論方面:基於對 score functions 差異的充分度量,我們提出了 MCSD divergence 來充分衡量兩個 domain 的 divergence;進而引出新的 theoretical bound.

算法方面:基於 MCSD divergence 提出了兩個新的算法框架:McDalNets 和 SymNets. McDalNets 統一了 MCD, DANN, MDD 等經典算法,SymNets 對我們 CVPR 論文的初始版本進行了改進。

實踐方面:在 Closed set, partial, and open set 三個任務多個數據集上驗證了我們方法的有效性。

 

域適應(domain adaptation)是遷移學習中的重要課題。該課題的目標是:

輸入有標籤的源域數據和無標籤的目標域數據,輸出一個適用於目標域的模型。 源域和目標域假設任務相同但是數據分佈不同。

既然源域和目標域的數據分佈不同,該任務的經典解決方法是:

找到一個特徵空間,將分佈不同的源域和目標域數據映射到該特徵空間後,希望源域和目標域的數據分佈差異儘可能小;這樣基於源域數據訓練的模型,就可以用於目標域數據上。

因此如何找到該特徵空間,更具體來說,如何衡量兩個域數據分佈之間的差異是域適應任務的核心問題。

 

通過對抗訓練的方式實現兩個域的數據分佈對齊在域適應任務中被廣泛採用 [1]。近期很多對抗域適應的算法採用特徵映射網絡和分類器進行對抗的方式 [2,3,4,5]。

雖然基於分類器進行對抗訓練的方法 [2,3,4,5] 取得了不錯的結果,但是這些算法與現有理論並不是完全吻合的;也就是說,理論和算法之間存在一定的差距。出於此目的,我們對現有的域適應理論進行了改進,使其可以更好的支撐現有算法。

同時,基於該理論框架,我們提出了一系列新的算法,並在 closed set, partial, and open set 域適應三個任務上驗證了其有效性。該文章的要點可以總結如下:

1. 理論方面:提出了 Multi-Class Scoring Disagreement (MCSD) divergence 來衡量兩個域數據分佈之間的差異;其中 MCSD 可以充分衡量兩 個 scoring hypotheses(可以理解爲分類器)之間的差異。基於 MCSD divergence, 我們提出了新的 Adaptation Bound,並詳細討論了我們理論框架和之前框架的關係。

2. 算法方面:基於 MCSD divergence 的理論,我們提出了一套新的代碼框架 Multi-class Domain-adversarial learning Networks (McDalNets)。McDalNets的不同實現與近期的流行方法相似或相同,因此從理論層面支撐了這些方法 [2,3,4,5]。此外,我們提出了一個新的算法 SymmNets-V2, 該方法是我們之前會議工作 [3] 的改進版本。

3. 實踐方面:我們在 closed set, partial, and open set 三種實驗設置下驗證了我們提出方法的有效性。

 

理論方面

如上文所言,如何衡量兩個域之間的差異是域適應任務的核心問題。爲了更加細粒度地衡量兩個域之間的差異,我們引入瞭如下的 MCSD divergence:

其中

充分衡量了 scoring functions 在域 D 上的不一致性(相對於下面將要描述的其他度量方法)。

的定義如下:

是 ramp loss, 指代 absolute margin function   的第 k 個值。上述定義有些複雜,我們接下來對其直觀描述: 的每一列 計算了 violations of absolute margin function  ,進而 度量了 之間margin violations 的差異,一個直觀的例子如 Fig 1(c) 所示:

到了這裏,大家應該會疑惑:這個 MCSD divergence 看上去挺複雜的,它有什麼好處?MCSD 的優勢如下:

理論角度:MCSD 可以充分度量 兩個 scoring functions 的差異!!同時導出後續的 bound.

算法角度:對 scoring functions 的差異的充分度量可以直接支撐基於分類器進行對抗訓練的方法 [2,3,4,5].

爲了展示 MCSD 對 scoring functions 差異的充分度量,我們基於 absolute margin function 引入其他 domain divergence [6,7] 的變種或等效形式。

是absolute margin-based variant of margin disparity (MD) [6]: , where 是relative margin function,進而基於 得到的 divergence 是 MDD [6] 的變種。

是absolute margin-based equivalent of the hypothesis disagreement (HD) [7]: 。進而基於 得到的 divergence 等效於 。

作爲 3 種不同的度量 scoring functions 差異的方法,其直觀對比如 Fig 1 所示,可以總結如下:

  • 採用 0-1 二值 loss 只衡量了 的最終類別預測是否一致。

  • 相對 , 通過引入 margin 在 0 和 1 之間做了一個平滑的過渡。

  • 以上兩者都只考慮了 scoring functions 的部分輸出, 首次將 scoring functions 的所有輸出值加以考慮。故而 MCSD 可以充分度量 scoring functions 的差異。

基於 MCSD divergence, 我們可以得到如下的 bound:

,其中 是 targer error, 是 source error, 可視爲與數據集合 hypothesis space 相關的常數。相應的 PAC bound 也可以導出。

總的來說,我們提出了一種 MCSD divergence 來充分度量兩個 scoring functions 的差異,進而提出了一種新的 adaptation bound. 那麼充分度量兩個 scoring functions 的差異有什麼好處呢?後續的對比實驗經驗性的回答了該問題。

算法方面

上述理論可以推導出一系列的算法,我們將這些算法統一命名爲 McDalNets。基於上述 bound, 爲了最小化 target error ,我們需要找到可以最小化 的 feature extractor 以及可以最小化 source error 的 和 。將 展開成 的形式可以得到如下的優化目標:

其中 分別是分佈 , 經由映射 得到的特徵分佈。該優化目標如下圖所示:

 

上述目標仍然難以直接優化,因爲 ramp loss 會導致梯度消失的問題。爲了便於優化,我們引入了一些 MCSD 的替代度量方法。這些替代度量方法應該具有如下特點:

  1. 當 在 domain 上的輸出越趨於一致,替代度量方法的值越小

  2. 當 在 domain 上的輸出越差異越大,替代度量方法的值越大

我們在本文中採用了三種 MCSD 的替代度量方法,分別是:

其中 是 softmax 函數, 是 KL 散度, 是交叉熵函數。其他具有上述兩點特點且便於優化的函數都可以用來作爲 MCSD 的替代度量方法。

當採用 loss 作爲替代度量時,McDalNet 與 MCD [2] 方法極其相似。需要強調的是,雖然 MCD 算法是從 -divergence [7] 推導而出的,但是 MCD 算法與 -divergence 存在明顯 gap:MCD 算法採用 L_1 loss 衡量了classifiers outputs 在 element-wise 的差異,而 -divergence只考慮了classifiers 類別預測的不一致性。

考慮到 MCSD 是基於對 classifiers outputs 在 element-wise 的差異的度量,因此 MCSD divergence 可以更直接,更緊密的支撐 MCD 這類基於 classifiers outputs 差異做對抗訓練的方法。

類似 ,我們也可以基於 和 得到對應的類似 McDalNet 的算法。其中基於 得到的方法完全等效於 DANN [1],基於 得到的方法是 MDD [6] 的一個變種。

我們將不同 McDalNet 的算法在標準的域適應數據集上進行對比,結果如下圖所示:

除了上述的 McDalNet 框架,基於 MCSD divergence, 我們還引入了一個  Domain-Symmetric Networks (SymmNets) 的新框架,如下圖所示。

該框架是基於 CVPR 的論文 [3] 做的改進,因此我們稱之爲 SymmNets-V2. 相對於 McDalNets, SymmNets-V2 沒有額外的 task classifier,而是將其與 classifiers for 域對齊進行了合併。

該方法在網絡結構上的鮮明特點是將兩個 classifiers 拼接到一起,並用拼接得到的 classifier 用作域對齊;通過這種方式,我們賦予了兩個 classifiers 明確的 domain 信息,同時取得了更優的實驗結果。SymmNets-V2 的優化目標如下:

其中 是分類損失,用來賦予 類別信息, 用來增大 的輸出差異, 分別用來減小 在源域數據和目標域數據上的輸出差異。其具體定義和與 MCSD 的聯繫請參考論文。

對於熟悉 DANN [1] 的讀者,可以將 SymmNets 看做將 category information 引入 DANN 的直接擴展。具體來說,如果我們分別將 中的所有類別當成整體,那麼整體化之後的 就分別對應着 DANN 二分類 domain classifier 中的源域和目標域;

這樣 SymmNets 中的增大/減小 的輸出差異就對應着 DANN 中的 domain discrimination/domain confusion. 將 DANN 二分類 domain classifier 中的源域和目標域擴展成由 拼接成的 2K 分類器,可以爲在域對齊過程中引入 category information 做好模型結構準備。

實踐方面

我們在 closed set, partial, and open set domain adaptation 三個任務共七個數據集上驗證了我們提出的 McDalNets 和 SymmNets 的有效性。

相對 closed set 的任務,partial and open set domain adaptation 任務中的難度增大很大程度是兩個域中共享類別的樣本與其中一個域中獨有類別的樣本在 adaptation 過程中發生了錯誤對齊帶來的;因此 SymmNets 中對 category information 的引入和對 category level alignment 的促進可以極大的緩解該錯誤對齊現象,從而對 partial 和 open set domain adaptation 帶來幫助。

最後,我們通過如下的 t-SNE 可視化來說明我們提出的 SymmNets 的有效性。

參考文獻

[1] Domain-Adversarial Training of Neural Networks, JMLR16
[2] Maximum Classifier Discrepancy for Unsupervised Domain Adaptation, CVPR18
[3] Domain-Symmetric Networks for Adversarial Domain Adaptation, CVPR19
[4] Unsupervised Domain Adaptation via Regularized Conditional Alignment, ICCV19
[5] Sliced wasserstein discrepancy for unsupervised domain adaptation, CVPR19
[6] Bridging Theory and Algorithm for Domain Adaptation, ICML19
[7] A theory of learning from different domains,ML10






 

更多閱讀

 

#投 稿 通 道#

 讓你的論文被更多人看到 

如何才能讓更多的優質內容以更短路徑到達讀者羣體,縮短讀者尋找優質內容的成本呢?答案就是:你不認識的人。

總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成爲一座橋樑,促使不同背景、不同方向的學者和學術靈感相互碰撞,迸發出更多的可能性。 

PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優質內容,可以是最新論文解讀,也可以是學習心得技術乾貨。我們的目的只有一個,讓知識真正流動起來。

???? 來稿標準:

• 稿件確係個人原創作品,來稿需註明作者個人信息(姓名+學校/工作單位+學歷/職位+研究方向) 

• 如果文章並非首發,請在投稿時提醒並附上所有已發佈鏈接 

• PaperWeekly 默認每篇文章都是首發,均會添加“原創”標誌

???? 投稿郵箱:

• 投稿郵箱:[email protected] 

• 所有文章配圖,請單獨在附件中發送 

• 請留下即時聯繫方式(微信或手機),以便我們在編輯發佈時和作者溝通

????

現在,在「知乎」也能找到我們了

進入知乎首頁搜索「PaperWeekly」

點擊「關注」訂閱我們的專欄吧

關於PaperWeekly

PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學術平臺。如果你研究或從事 AI 領域,歡迎在公衆號後臺點擊「交流羣」,小助手將把你帶入 PaperWeekly 的交流羣裏。

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