Encoder-Decoder と Attention - 機械翻訳の革命

seq2seqのEncoder-Decoder構造と、そのボトルネックを解決したAttention機構を解説。Transformer理解の前提を押さえます。

機械翻訳を革新した『Encoder-Decoder』と『Attention』。Transformer理解の前提として不可欠なテーマです。

雷門 あかり(普段) 雷門 あかり

Encoder-Decoderって、要は符号化と復号化ってこと?

六角 いずみ 先生(笑顔) 六角 いずみ 先生

その通り。
Encoder-Decoder(エンコーダ・デコーダ) は、入力を中間表現 (コンテキストベクトル) に変換し、それから出力を生成する2段階構造よ。

白銀 エマ(普段) 白銀 エマ

機械翻訳が代表例ね。
英文をエンコーダがベクトル化して、デコーダが日本語文を生成する、という流れよ。
2014年のsutskever等のSequence-to-Sequence (seq2seq)論文が画期的だったわ。

紫藤 ゆら(笑顔) 紫藤 ゆら

わぁ、2段階構造なんですねぇ♪

六角 いずみ 先生(普段) 六角 いずみ 先生

でも当初のseq2seqには弱点があって、長い文を固定長のベクトルに圧縮すると情報が失われるボトルネック問題があったの。

白銀 エマ(普段) 白銀 エマ

これを解決したのがAttention機構(Attention Mechanism)。
2014年にバダナウ等が提案したわ。
デコーダが出力する各ステップで、入力のどこに注目すべきかを学習するの。

雷門 あかり(笑い) 雷門 あかり

注意を向けるってどういうこと?

六角 いずみ 先生(笑顔) 六角 いずみ 先生

例えば『The cat sat on the mat』を日本語訳する時、『猫は』を出力する瞬間は『cat』に強く注目し、『マット』を出力する時は『mat』に注目する、というイメージね。

白銀 エマ(普段) 白銀 エマ

Attentionはクエリ (Q)、キー (K)、バリュー (V)の3つのベクトルで計算される。
QとKの内積で注目度を算出し、その重みでVを集約するの。

紫藤 ゆら(しょんぼり) 紫藤 ゆら

Q・K・V…あわわ、覚えられるかなぁ…

六角 いずみ 先生(普段) 六角 いずみ 先生

ソフトアテンション(全位置に重み)、ハードアテンション(離散的に1箇所選ぶ) の違いもあるわ。
実用ではソフトが主流よ。

白銀 エマ(普段) 白銀 エマ

Attentionは翻訳精度を飛躍的に向上させ、Google翻訳の品質改善にも寄与したわ。
2017年のTransformerはAttentionを中核に据えた発展形よ。

雷門 あかり(笑い) 雷門 あかり

Attentionって、めっちゃ大事なんだね!

六角 いずみ 先生(普段) 六角 いずみ 先生

G検定では『Encoder-Decoder』『ボトルネック問題』『Attention (バダナウ, 2014)』『Q・K・V』を押さえて!

確認クイズ

機械翻訳でデコーダが入力のどの部分に注目すべきかを学習する機構はどれか。

  1. Dropout
  2. Attention
  3. Batch Normalization
  4. ResNet
こたえを見る

正解: 2. Attention

Attention機構は、デコーダの各ステップで入力のどこに注目すべきかを重み付けして学習する機構です。2014年にバダナウ等が提案し、機械翻訳の品質を飛躍的に向上させました。

六角いずみ先生、白銀エマ、紫藤ゆら、雷門あかりが雪だるま作りを楽しむ様子

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。