《Aspect-augmented Adversarial Networks for Domain Adaptation》閱讀筆記

轉載請註明出處:西土城的搬磚日常

原文鏈接:Aspect-augmented Adversarial Networks for Domain Adaptation

文章來源:ICLR 2017

學術機構:MIT

關鍵詞:Invariant/general representation, Adversarial Networks, Domain Adaptation

摘要:本篇文章提出了一種在同一個領域不同方面進行遷移的神經網路方法,通過對抗學習,最終網路輸出獨立於aspect的Invariant representation,從而實現遷移。除了實現上述遷移學習以外,本文的模型也能夠實現不同領域之間的遷移。本篇文章的基礎任務是分類任務,並且在兩類領域遷移任務上都實現了對state-of-the-art模型的超越。

此論文的Related work非常完整,主要涉及以下幾個方面;

1)深度學習中的領域遷移;

2)對抗學習在CV和NLP中的應用;

3)NLP中的attention機制,但是attention 都是in-domain的;

兩個任務/數據集介紹:

Pathology dataset: 這個數據集來自病理學報告,一共有20個類別的標註,代表乳腺疾病的不同方面(aspect),label為正,負,二分類任務;本篇文章的實驗針對DCIS,LCIS,IDC,ALH這四個方面進行遷移。

Review dataset:從Hotel reviews遷移到Restaurant reviews,review的評分從1到5不等,作者在實驗中把1,2作為負情感,4,5作為正情感,3為中立情感(但是棄掉不要),只做二分類任務。

模型:

模型主要由五部分組成:

1)sentence embedding:

CNN + Reconstruction step:

作者在這個任務上對比了LSTM和Bi-LSTM,發現二者並沒有什麼提升,所以就使用了CNN;

Reconstruction step就是將x_{i,j}為卷積窗口的中心時得到的隱層狀態h_{i,j}重建為詞x_{i,j}(這個操作的意義會在結果分析中給出):

重建的損失函數如下:

2) nRelevance prediction:

relevance的定義:relevance也是binary的,分為相關(1)和不相關(0)兩類,label是根據keywords通過規則方法來定義的weak-supervision。如上圖所述,每個aspect都有其相應的keywords,給定aspect以後,如果句子中含有對應的keywords,則label為1,否則為0。

具體由一個單隱層的網路實現,由CNN輸出的句子向量作為輸入,輸出是句子與選定aspect的relevance,用在下邊對文檔向量的建模模塊Document encoding中,

損失函數為:

3)Linear Transformation layer:

主要對當前文檔向量執行以下操作來將其轉化成與aspect/domain無關的文檔向量:

為了避免對抗學習wipe up所有的文檔向量信息,所以對transformation操作加入了正則項:

4)nPrimary label classifier:

具體實現為以Relu為激活函數的單隱層前饋網路加一個softmax層,以經過transformation的文檔向量為輸入,輸出在文檔類別上的分布,損失函數為交叉熵:

5)Domain classifier:

這部分就是對抗學習的模塊,具體實現也是以Relu為激活函數的單隱層前饋網路加一個softmax層,輸入也是經過transformation的文檔向量,但是輸出是在aspect類別上的分布。當此分類器不能分辨文檔向量屬於哪個aspect的時候,我們就認為網路達到aspect-invariant了。

損失函數也是交叉熵:

模型訓練:

其他幾個模塊都是最小化loss,而對抗學習模塊恰恰相反,不斷增大分類錯誤率。

Baselines:

SVM只利用soure的label數據,然後在target上做測試;

mSDA是遷移學習中比較好的一個模型;

In-Domain是在target labeled的數據上訓練模型,作為本文模型的上限;

SourceOnly只利用source的數據,沒有對抗學習模塊和target aspect-relevance scoring模塊;

Ours-NA,NA表示沒有對抗學習模塊;

Ours-NR,NR表示沒有aspect-relevance scoring模塊;

Ours-Full表示本文提出的完整模型;

實驗結果:

SVM,mSDA,SourceOnly表現比較差是因為它們只用到了source的信息,並且沒有利用aspect-specific keywords提供的弱監督信息;

Ours-NA和Ours-NR分別是在完整模型上去掉對抗學習模塊和relevance-scoring模塊的效果;通過實驗結果可以觀察到對抗學習模塊對兩個領域遷移實驗的效果提升幫助都很大,但是relevance-scoring對Review dataset的提升並不大,主要是因為這兩個語料上aspect的相關度不同,Pathology中aspect之間基本零相關,但是Review中各個aspect之間是很相關的,所以會導致這個模塊的作用沒那麼顯著。

這個文檔表示向量的熱圖的上半部分表示的是source domain的文檔,下半部分表示的是target domain的文檔;說明的是reconstruction step和對抗學習模塊搭配使用的重要性:

如果二者都不使用的話,模型會更偏重source domain的學習;

如果只使用對抗學習模塊的話,模型會傾向於抹掉文檔表示向量的信息;

二者都使用的話,既能夠學習好的文檔表示向量,又能夠使得模型對domain無偏;

下邊這張表單獨列出了reconstruction step對模型學習的重要性:

論文中還有一些針對正則化參數進行的實驗,不再進行介紹。

總結:本篇文章在普通的分類任務的基礎上加入了對抗學習的思想,生成invariant representation,便於做任務遷移

本文做了大量的實驗,針對模型的各個模塊和各個參數做了對比實驗。

推薦閱讀:

如何評價 On Unifying Deep Generative Models 這篇 paper?
GAN的discriminator,與同樣結構的神經網路比,會有更好的性能嗎?
通過DCGAN的判別器可以反向得到近似的隱空間表達向量Z嗎?

TAG:迁移学习TransferLearning | 文本情感分析 | 生成对抗网络GAN |