tree-to-sequence attentional neural machine translation (acl 2016)

21
Tree-to-Sequence Attentional Neural Machine Translation 10/12/2016 新領域 ⼈間環境学 陳研究室 D1 藤野暢

Upload: toru-fujino

Post on 24-Jan-2017

141 views

Category:

Technology


2 download

TRANSCRIPT

Page 1: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

Tree-to-Sequence Attentional Neural Machine Translation

10/12/2016新領域 ⼈間環境学 陳研究室 D1 藤野暢

Page 2: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

書誌情報

• タイトル: Tree-to-Sequence Attentional Neural Machine Translation

• 著者: Akiko Eriguchi, Kazuma Hashimoto and Yoshimasa Tsuruoka (鶴岡研の⽅々)

• Conference: ACL 2016• Date: 03/19/2016• 第22回 ⾔語処理学会(2016)でも⼀部発表あり

• 「句構造へのアテンションに基づくニューラル機械翻訳モデル」(若⼿奨励賞)

• Code: https://github.com/tempra28/tree2seq

Page 3: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

概要

• やったこと• English -> Japanese におけるニューラル翻訳• Sequential な Attention に加えて, 句構造に対する

Attention を導⼊

• 系列⻑に応じた新しい beam search 法を導⼊• 結果

• 先⾏研究の Attention model を outperform• 統計的機械翻訳に匹敵

普通の 句構造に対するもの

Page 4: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

Attention Mechanism

• Attention Mechanism1)2)

• Seq2Seq Learning において, decode の際に ⼊⼒系列のどこに注意して decode するか考慮する

• 機械翻訳や⾃動要約などでつかわれる• ⼊⼒⽂と出⼒⽂のアライメントを学習することが可能に• En-Fr, En-Ge など European ⾔語では SotA

attention

重み

重み付けの可視化

1)Luongetal.,“EffectiveApproachestoAttention-basedNeuralMachineTranslation”,EMNLP20152)Rushetal.,“ANeuralAttentionModelforSentenceSummarization”,EMNLP2015

Page 5: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

En-Ja の場合

• En-Ja のように構造的に遠い⾔語間のタスクでは,ニューラル翻訳はSMTに匹敵するかどうかはまだわかっていない• ⾔語間の遠さの例)

• a cup of に対応する単語がない• a cup of tea -> 緑茶

としたい

Page 6: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

Attentional Encoder-Decoder Model

• Decoder の各ステップで, ⼊⼒⽂の各隠れ層の情報を重み付けで考慮

重み

重み付け平均 (文脈ベクトル)

新しい出力ベクトル

Page 7: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

Attentional Tree-to-Sequence Model

• ⼊⼒⽂を⼆分⽊で表現し, ⼦ノードから親ノードのベクトルを計算

• f_tree は Tree-LSTM1)

• 全ての親ノードに対して Attention の重みを同様に計算

1)K.S.Taietal.,“ImprovedSemanticRepresentationsFromTree-StructuredLongShort-TermMemoryNetworks”,ACL-IJCNLP2015

Page 8: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

⽂脈ベクトルの計算

• 系列データ(n個)と句構造データ(n-1個)両⽅から計算

Page 9: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

input-feeding method

• Luong et al., 20141)で提案された⼿法• decode の各隠れ層の計算の際, 前の隠れ層だけではなく attention のベクトルも考慮する

• これにより, 本論⽂でも考慮しない場合より良い結果が⽰された模様

1)Luongetal.,“EffectiveApproachestoAttention-basedNeuralMachineTranslation”,EMNLP2015

Page 10: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

BlackOut1)

• Decoder の各 softmax の計算で 全てのボキャブラリに対する内積を計算するのは⼤変• negative sampling に基づく近似 BlackOutにより, 計算量を減らす

• の代わりに

• を計算

1)Jietal.,“BLACKOUT:SPEEDINGUPRECURRENTNEURALNETWORKLANGUAGEMODELSWITHVERYLARGEVOCABULARIES”,ICLR2016

Page 11: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

Beam Search

• Beam Search: decode の各ステップで, 確率の⾼い k 個を計算し, 最後にスコアの⾼いパスを採⽤

1)

1)Le,“SequencetoSequenceLearningforNLPandSpeech”,DeepLearningSchool(http://www.bayareadlschool.org/)

Page 12: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

系列⻑を考慮したBeam Search

• 普通の Beam Search だと, 出⼒が⻑い場合にスコアが低くなってうまく働かない• 系列⻑に応じたペナルティを導⼊することで, 系列⻑を考慮したスコア付が可能に

Page 13: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

実験詳細

• mini batch でサイズは 128• SGD で lr の初期値は 1. dev loss が上がったら 半分にする• 閾値 3 で gradient clipping• CPU• 系列⻑が50以下のもののみ• ⼊⼒⽂がうまく parse されなかったものも使わない

Page 14: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

評価

• RIBES と BLEU• BLEU: n-gram の precison に基づく指標

• RIBES: 語順(順位正解率)を考慮した指標

• En-Ja の評価においては BLEU よりも⼈⼿に近いという報告あり

1) Papineni etal.,“BLEU:aMethodforAutomaticEvaluationofMachineTranslation”,ACL20022) Isozaki etal,“AutomaticEvaluationofTranslationQualityforDistantLanguagePairs”,EMNLP2010

Page 15: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

結果 (⼩さいデータセット)

• 先⾏研究よりも良い RIBES, BLEU• softmax のほうが BlackOut よりも結果はいい. ただ時間はかかる• ANMT では reverse input により 結果が悪くなっている (En-Ja)

Page 16: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

結果 (⼩さいデータセット)

• 提案 Beam Search

• 良くなった

Page 17: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

結果 (⼤きいデータセット)

• 先⾏の NMT よりも良い結果• SMT より BLEU は低いが, BLEU の性質上不利 (同義語が考慮されていないため. • ʻ⼥ʼ と ʻ⼥性ʼ など

Page 18: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

Attention の例 (短い系列の場合)

• ʻセルʼ は ʻthe cellsʼ に 0.35 の重み付け. ⽇本語には ʻtheʼ に対応する単語がないので, これでよい

Page 19: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

Attention の例 (⻑い系列の場合)

• ʻ⽰ʼ に対する重みは, ʻshowedʼ が 0.01, ʻshowed excellent performanceʼ が 0.25• 前(後)の⽂脈にたいする重み付けがなされている

Page 20: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

結論

• 句構造に attention を適⽤した• 従来の attentional NMT よりも良い性能を⽰した.• 構造の違う⾔語に対して適切な Attention がなされていることが確認できた

Page 21: Tree-to-Sequence Attentional Neural Machine Translation (ACL 2016)

感想

• ⽂要約など, 句・節の短縮が必要になるタスクではより有効なのではと思った