《Factored Neural Machine Translation》閱讀筆記

paper來源arXiv.org

問題

實驗任務----屬於機器翻譯(NMT)任務,具體來說,本paper實驗任務為英語翻譯為法語;

paperwork----在傳統NMT的「seq2seq+attention」的基礎上引入先驗知識/工具改進了decoder的結構,在一定程度上解決大詞表(Large Vocabulary)和OOV(Out Of Vocabulary)問題;

摘要:

首先,作者使用morphological and grammatical analysis(形態學與語法分析器)來獲取單詞的因素表示,lemmas, Part of Speech tag, tense, person, gender and number等;

其次,作者改進了傳統的NMT的decoder,把輸出由一個變成了兩個,分別表示lemmas和其他的factors,獨立學習,然後重組為word;

由此帶來的好處是,同樣大的詞表可以表示更多的詞;再者,它可以生產詞表中不存在的新詞,減少OOV詞項的出現頻率;

形態學與語法分析器(本文使用的是MACAON):

舉例:法語詞devient(對應英文詞becomes)可以表示為devenir和「vP3#s」, devenir為lemma,可以理解為詞根;「vP3#s」為factors,可理解為修飾限制詞根的其他因素;v表示verb,P表示Present(時態),3表示3rd person(第三人稱),#表示無關性別,s表示單數;

網路結構:

傳統的NMT結構圖:

兩個重要概念:seq2seq,attention

FNMT提出的新的decoder的結構:

P變成獨立的Lemma和factors向量(由此可能會帶來長度差異,最終翻譯結果的長度以lemma長度為準);

將P層輸入給softmax決定lemma和factor後,再將二者輸送給形態學分析器來產生word;

(feedback採用的是lemma向量,根據如下實驗效果選擇的):

由上圖可見,綜合BLEU與#OOV,在只選Lemma,二者求和,二者線性組合,非線性變化這四個方案中,只選Lemma的效果最好。

實驗結果:

1,詞表比較大的時候,表現基本持平;詞表縮小的話,FNMT的表現就要好得多;

2,相同的參數量,FNMT能夠囊括更多的word;

3,在OOV問題的解決上,FNMT表現更好;

4,最後一列是忽略factor誤差帶來的影響,lemma正確就算正確的結果;

簡評:

1,本文利用先驗知識(詞根+限制條件表示辭彙)給解決大詞表和OOV問題提供了一種思路;

2,實驗的效果很大一部分依賴於先驗的語態學分析器的效果,比如目標語言如果是中文或者英文就沒有這樣靠譜的分析器;

3,如有問題或建議,歡迎留言交流~


推薦閱讀:

古詩為什麼能自動生成?
自然語言處理怎麼最快入門?
Attention is All You Need | 每周一起讀

TAG:自然语言处理 | 机器翻译 |