ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換


ACL 2018

用循環強化學習實現無平行語料的情感轉換

Unparied Sentiment-to-Sentiment Translation: A Cycled Reinforcement Learning Approach

北京大學

Peking University

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

1 引言

本文提出了一種新的方法用於無平行語料的情感轉換問題。現有的情感轉換的模型存在的問題是,在情感轉換的同時不能保證內容不變。例如,主語從food變成movie。其原因是內容和情感在同一個隱向量中,所有信息混在一起難以解釋。因為沒有平行語料,非情感的語義信息難以不受影響。

本文提出了循環強化學習模型。包括模塊和情感化模塊。去情感模塊作用是去除情感詞,以提取非情感的語義信息。情感化模塊作用是添加情感詞,讓中性句子情感化。其核心思想是:第一步,去情感模塊先去除情感,然後情感化模塊根據原始情感和語義內容重構原句,讓情感化模塊在有監督的情況下學習增加情感。第二步,將情感詞取反,這樣就可以實現添加相反的情感詞。

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

2 模型

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

1)去情感模塊,用於去除情感詞,視為抽取問題。用LSTM來產生每個詞是中性詞或極性詞的概率。循環強化學習要求模型有初始學習能力,因此提出一個預訓練方法來讓去情感模塊學會判斷非情感詞。預訓練使用了基於自注意力機制的情感分類器,將注意力權重作為指導。這麼做的原因是,在訓練好的情感分類器模型中,注意力權重在一定程度上反映了每個詞對情感的貢獻。通常情感詞的權重大,中性詞的權重小。試驗結果表明情感分類準確率達到89%-90%,可以認為分類器充分捕捉了每個詞的情感信息。根據連續的權重提取非情感詞,將權重離散化為0和1。如果某個詞的權重小於這句話的權重的平均值,則其離散值為1,否則為0。情感詞權重為1,非情感詞為0。將這個結果可以幫助去掉情感。

2)情感化模塊

情感化模塊負責添加情感詞。使用了seq2seq模型,編碼和解碼都是LSTM。有兩個解碼器,分別用於添加正情感詞和負情感詞。

3)循環強化學習

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

因為loss對去情感模塊不再可導,所以建模為強化學習問題,並且用策略梯度來訓練去情感模塊。首先計算相同情感、相反情感的輸出的獎賞R1和R2,其次用策略梯度優化參數,通過最大化獎賞來訓練去情感模塊。這使去情感模塊更好地識別非情感詞。進一步加強情感化模塊。具體訓練過程如下:

1:初始值;

2-3:用極大似然估計分別預訓練去情感模塊和情感化模塊,其中去情感模塊的交叉熵損失為:

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

情感化模塊的交叉熵損失為:

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

4:對於每次循環:

5-6:去情感模塊生成中性句子;

7:情感化模塊用中性句子和原始情感詞生成原句;

8:計算情感化模塊的梯度:

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

9:計算獎勵R1;

10-11:情感化模塊用中性句子和反向情感生成結果;

12:計算獎勵R2;

13:計算整體獎勵Rc:Rc=R1+R2;

14:根據策略梯度,計算去情感模塊的梯度:

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

15:更新參數;

16:重複,直到收斂。

獎勵有兩個指標,分別考查情感和內容。Sentiment confidence:評價生成的文本是否符合目標情感,用預訓練中的自注意力機制情感分類器做來評價。BLEU:評價內容的保持程度。獎勵表示為二者的加權調和平均數:

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

3 實驗

3.1 數據集

Yelp Review Dataset,400k訓練,10k驗證,3k測試。

Amazon Food Review Dataset,230k訓練,10k驗證,3k測試。

基線:Cross-AlignmentAuto-Encoder(CAAE),Multi-Decoder with Adversarial Learning(MDAL)

3.2 結果

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

自動評價:

ACC:評價情感轉換。BLEU:評價內容保持。G-score:二者的幾何平均。

人工評價:

Sentiment:評價情感轉換。Semantic:評價內容保持。All:總體表現。

ACL 2018|北京大學:用循環強化學習實現無平行語料的情感轉換

4 總結

1. 對情感轉換問題,提出循環強化學習的辦法,可以使用無平行語料的數據。

2. 通過將情感和語義明確區分開來保持語義。

3. 在保持語義內容上效果尤其好。


分享到:


相關文章: