ニュラールネットに基づく機械翻訳

ニューラルネットに基づく機械翻訳
Graham Neubig
奈良先端科学技術大学院大学 (NAIST)
2015-9-15

1

ニュラールネットに基づく機械翻訳

I am giving a talk at Kyoto University
私 は 京都 大学 で 講演 を しています ( 終 )2ニュラールネットに基づく機械翻訳

次の単語確率を推測
F = “I am giving a talk”
P(e1= 私 |F) = 0.8

P(e1= 僕 |F) = 0.03
P(e1= 講演 |F) = 0.01... e =

私P(e2= は |F, e1) = 0.9

P(e2= が |F, e1) = 0.09... e2=はP(e3= 講演 |F, e1,2) = 0.4

P(e3= トーク |F, e1,2) = 0.3... e3= 講演P(e3= 話 |F, e1,2) = 0.03

1... e4=P(e4= を |F, e1,3) = 0.99

P(e5= しています |F, e1,4) = 0.4 P(e5= している |F, e1,4) = 0.15...
P(e5= 行っています |F, e1,4) = 0.3 P(e5= 行っている |F, e1,4) = 0.1
P(e6=( 終 )|F, e1,5) = 0.8

P(e6= よ |F, e1,5) = 0.1を

e5= しています... e = ( 終3 )6

ニュラールネットに基づく機械翻訳

確率モデル

つまり、機械翻訳はI +1P( E∣F )=∏i =1 P(ei∣F , e訳出過程i −11)i=0while ei is not equal to “( 終 )”:i ← i+1ei ← argmaxe P(ei|F, e1,i-1)として定式化することができる
4

ニュラールネットに基づく機械翻訳

確率の推定法5

ニュラールネットに基づく機械翻訳

翻訳モデル・言語モデル
翻訳モデル確率I +1P( E∣F )=∏i =1 P(ei∣F , ei −11)

いったん入力を忘れて言語モデル確率

I +1P( E)= ∏i=1 P(ei∣e問題：次の単語の確率 P(e i∣ei−11i−11)) をどう計算する？
6

ニュラールネットに基づく機械翻訳

単語列の数え上げによる確率計算

P(ei∣ei−11)=i
1i −11c (e )c (e)私 は 講演 を している 

私 の 勤め先 は 奈良 に ある 

奈良 は 大阪 に 近い 
P( は | 
 私 ) = c(
 私 は )/c(
 私 ) = 1 / 2 = 0.5
P( の | 
 私 ) = c(
 私 の )/c(
 私 ) = 1 / 2 = 0.5
7

ニュラールネットに基づく機械翻訳

数え上げの問題●

頻度の低い現象に弱い：

学習：

私 は 講演 を している 

私 の 勤め先 は 奈良 に ある 

奈良 は 大阪 に 近い 

私 の 勤め先 は 大阪 に ある 


確率計算： P( 大阪 |
 私 の 勤め先 は ) = 0/1 = 0

P(E= 私 の 勤め先 は 大阪 に ある 
) = 0 8

ニュラールネットに基づく機械翻訳

履歴の制限： n-gram モデル●

2-gram モデル：直前の 1 単語のみを利用
I +1

入力：

学習：

●

P( E)= ∏i=1 P(ei∣ei−1 )私 の 勤め先 は 大阪 に ある 

私 は 講演 を している 


私 の 勤め先 は 奈良 に ある 

奈良 は 大阪 に 近い 


3-gram, 4-gram, 5-gram なども+ 精度が向上● - メモリ量、スパース性の問題が悪化●

9ニュラールネットに基づく機械翻訳

対数線形言語モデル [Chen+ 00] (1)●●

より柔軟な確率計算法

履歴の単語に基づいて全単語のスコア s を計算

s (ei−1i−n+1n−1)=b+∑k =1 w k , ei−kei-2= 勤め先ei-1= はは3.0
が2.5
奈良 b = -0.2
同僚0.1
行う
1.2
…
…

-6.0
-5.1
w1, は = 0.2
0.1
0.6
…

-0.2
-0.3
w2, 勤め先 = 1.02.00.4…

-3.2-2.9s = 1.0
2.22.2…
10

ニュラールネットに基づく機械翻訳

対数線形言語モデル [Chen+ 00] (2)●確率計算のため、スコアの指数を取り、正規化

p (ei=x∣e●i −1i −n+1)=

es(ei= x∣ei−1i−n +1)∑~x es(e i =~x∣e ii −1−n+1)

ベクトルに対して行う際 softmax 関数とも言う

p(ei∣eはが奈良同僚
行う
…

i−1
i−n+1-3.2-2.9
s = 1.0
2.2
2.2…

)=softmax ( s(ei∣esoftmax

p=i−1i−n+1

0.002
0.0020.0960.3190.319…

))

11

ニュラールネットに基づく機械翻訳

対数線形モデルの学習●●

確率的勾配降下法 (SGD) を利用することが多い

学習データの各単語 ei に対してパラメータ w をどの方向に動かしたら正解の確率が良くなりそうかを計算

di−1
δ=p (ei∣ei−n+1)dw●( 尤度の勾配 )これを学習率 α にかけてパラメータを更新w ← w +α δ
12

ニュラールネットに基づく機械翻訳問題：
変数の相互作用をうまく表現できていない
勤め先 は 奈良 → ○勤め先 は 同僚 → △●勤め先 の 奈良 → △勤め先 の 同僚 → ○単純と足し合わせるだけでは表現不可。解決策は？
●「勤め先 は」などの単語列もパラメータ化：

奈良
同僚
…

w2,1, 勤め先 , は =

2.0
-2.1
…

w2,1, 勤め先 , の =

-1.2
2.9
…

パラメータ数、メモリの爆発…
●
ニューラルネット！
13

ニュラールネットに基づく機械翻訳

ニューラルネット14

ニュラールネットに基づく機械翻訳

対数線形モデルの概念図
ei-1
ei-2

W1W2

softmaxpib(n−1pi=softmax b+ ∑k =1 W k e i−k1

ei-1 と ei-2 は各単語に当たるだけが 1 の one-hot ベクトルはei-1 = {1,ei-2 = {0,が0,0,

奈良 同僚 勤め先

0,0,0,0,0,
1,

W1, W2 は重み行列、 b は重みベクトル...}...}
15)

ニュラールネットに基づく機械翻訳

ニューラルネット●

入力と出力の間に、非線形関数を計算する隠れ層を追加
ei-1 W1
W2
ei-2
b1

tanh

Wh softhimaxpi(n−1hi=tanh b+∑k =1 W k ei −k)pi=softmax ( W h hi )1tanh → -4 -3 -2 -1 0 0 1 2 3 4-116

ニュラールネットに基づく機械翻訳

ニューラルネットで何ができるか？
●●「特徴量」が学習可能

例： 話者本人が主語の文脈「 { 私 , 僕 , 俺 } { は , が } 」

-1
は-1
が1
私
僕
W2[1]= 1-1
奈良-1
同僚
1
俺…
…
●

●

1
1-1
W1[1]= -1-1-1-1…

私 は → tanh(1)b[1]=-1

彼 は → tanh(-1)
彼 の → tanh(-3)

両方が成り立てば、隠れ層の１ノード目は正の値
そうでなければ、負の値数え上げなら、全パターンを覚える必要あり！

17

ニュラールネットに基づく機械翻訳

ニューラルネット言語モデル[Nakamura+ 90, Bengio+ 06]



●
●
●


thisisapen


低次元隠れ層で出力の類似性を考慮
単語表現で文脈の類似性を考慮

文脈のすべての単語を直接考慮するため、未知語を含めた文脈で壊れない
18

ニュラールネットに基づく機械翻訳

ニューラルネットの学習：逆伝搬●勾配を出力に近い方から逆順に伝搬

ei-1 W1
W2
ei-2bδhtanh

逆伝搬

Wh soft

himax

δppi

正解と比較して直接計算

1
19

ニュラールネットに基づく機械翻訳

リカレントニューラルネット

20

ニュラールネットに基づく機械翻訳

リカレントニューラルネット (RNN)●

ノードの一部の出力が入力として戻ってくる

ei-1 W1
W2
ei-2
bWrtanh

Wh soft

himax

pi1
●

理由：長距離に渡る依存性の「記憶」が可能
21

ニュラールネットに基づく機械翻訳

系列モデルとしての RNN
y1y2

y3y4

NETNETNET

NETx1x2x3x4

22

ニュラールネットに基づく機械翻訳

リカレントニューラルネット言語モデル[Mikolov+ 10]



●
●




thisisapen
以前の単語を「記憶」する

機械翻訳、音声認識などで精度の向上を実現

23

ニュラールネットに基づく機械翻訳

RNN の勾配計算y1

δ

δo,1y2δδo,2y3δ

δo,3y4δo,4δ

NETNETNET

NET

x1x2x3x4

まず系列のネット結果全体を計算●
後ろからエラーを計算●

24

ニュラールネットに基づく機械翻訳

ニューラルネットにおける消える勾配
極微

y1

δ

微y2

δ

小y3

δ

中y4

δo,4

δ

NET

NET

NET

NETx1x2x3x4

25

ニュラールネットに基づく機械翻訳Long Short-term Memory[Hochreiter+ 97]●

線形関数を使った隠れ状態＋ゲートで勾配をコントロール

26

ニュラールネットに基づく機械翻訳

Encoder-Decoder 翻訳モデル[Kalchbrenner+ 13, Sutskever+ 14]

27ニュラールネットに基づく機械翻訳

LSTM ニューラルネット翻訳モデル[Sutskever+ 14]
thisispen 
 これ は ペン ですa

これ は ペン です 
●つまり、入力言語で条件付けられた言語モデル
I +1P(e ∣f )=∏i =1 P(ei∣f , eI1J1J1i −11)28

ニュラールネットに基づく機械翻訳

訳文の生成
thisisapen 
 これ は ペン です

これ は入力文をエンコード

ペン です 


一単語ずつ生成J1argmax e P(ei∣f , eii−11)29ニュラールネットに基づく機械翻訳

詳細●

入力を逆順にする（学習が容易に）

pen●
●a

ビーム探索

is

this 
 これ は ペン です

これ はペン です 


モデルのアンサンブル

30

ニュラールネットに基づく機械翻訳

疑問１：本当にそれだけで翻訳できるか？

31

ニュラールネットに基づく機械翻訳

日英における再現実験●

旅行会話 11.6 万文で学習
BLEU

RIBES

Moses PBMT

38.6

80.3

Encoder-Decoder

39.0

82.9

32

ニュラールネットに基づく機械翻訳

疑問２：
人手で評価しても通用するか？
再現実験：はい、ある程度は。
入力:
バスタブからお湯があふれてしまいました。
正解:
the hot water overflowed from the bathtub .
PBMT： the hot water up the bathtub .
EncDec:the bathtub has overflowed .
入力:
コーヒーのクリーム入りをください。
正解:
i 'll have some coffee with cream , please .
PBMT: cream of coffee , please .
EncDec: i 'd like some coffee with cream .
33

ニュラールネットに基づく機械翻訳

ただし、問題はある
あきらめ：
入力:
正解:
PBMT:EncDec:

ギブス を し な けれ ば な り ま せ ん 。
you 'll have to have a cast .
i have a ギブス .
you have to have a chance .

繰り返し：
入力:
正解:
PBMT:
EncDec:どのファンデーションが私の肌の色に近いですか。
which foundation comes close to my natural skin color ?
which foundation near my natural skin color ?
which foundation is my favorite foundation with a foundation ?
34

ニュラールネットに基づく機械翻訳

注意型ニューラルネットに基づく翻訳

35

ニュラールネットに基づく機械翻訳

疑問３：
可変長の文を一定のベクトルで表せるか？
no? [Pouget-Abadie+ 2014] yes? [Sutskever+ 2014]

PBMT

RNN
36

ニュラールネットに基づく機械翻訳

注意型ニューラル翻訳[Bahdanau+ 15]●対象の文をエンコーディングし、文のどこに注意するかを決定しながら翻訳

37

ニュラールネットに基づく機械翻訳

再現実験●

日英旅行対話 11.6 万文で学習
Moses PBMT
Encoder-Decoder
Attentional

BLEU
38.6
39.0
40.8

RIBES
80.3
82.9
84.0

38

ニュラールネットに基づく機械翻訳

従来法との組み合わせ：リランキング39

ニュラールネットに基づく機械翻訳

リランキング●従来のシステムから結果を出し、ニューラル翻訳のスコアを使いながら選択
出力 1
入力候補生成

出力 2
出力 3

スコア
付け・選択

40

ニュラールネットに基づく機械翻訳[Sutskever+ 2014] の結果●

英語→フランス語●

Workshop on Machine Translation 201441

ニュラールネットに基づく機械翻訳

Workshop on Asian Translation における日本語を用いた実験●●

ベースラインは構文情報を用いる強いシステム

すべての言語、自動・人手評価で一貫して大きな性能向上
en-ja
ja-enzh-jaja-zh

Baseline
RerankingBaseline
RerankingBaseline
RerankingBaseline
Reranking

BLEU
RIBES
HUMAN
36.6
79.6
49.8
38.2
81.4
62.3
22.6
72.3
11.8
25.4
75.0
35.5
40.5
83.4
25.8
43.0
84.8
35.8
30.1
81.5
2.8
31.6
83.3
7.042

ニュラールネットに基づく機械翻訳

実例
入力： 另外，各国也进行了本国销售的食品的实态调查。
正解： また，各国でも，自国で販売している食品の実態調査が行われた。
Base: また，各国は自国販売の食品の実態調査を行った。
Rerank:また，各国でも本邦で販売される食品の実態調査を行った
入力: 在此，以研究教育现场的“风险交流”的实情为前提，整理了如下项目。
正解:
ここでは教育現場における「リスクコミュニケーション」のあり方を検討するための前提を以下の項目に分けて整理した。
Base:
ここでは，「リスクコミュニケーション」の教育現場研究の実情を前提として，以下の項目について整理した。
Rerank:
ここでは，教育現場における「リスクコミュニケーション」の実態を前提
43として，以下の項目について整理した

ニュラールネットに基づく機械翻訳

今後の課題？

44

ニュラールネットに基づく機械翻訳

大語彙
●

●
●

●

学習の都合上、出力語彙が増えると大変低頻度後に弱い→未知語処理で対応[Luong+ 15]
効率的な学習法

ノイズ対照推定 (NCE)[Vaswani+ 13]●
学習データの分割[Jean+ 15]●

45

ニュラールネットに基づく機械翻訳

統語・形態論情報の利用●●●

現在は言語構造はいっさい未考慮

統語情報を使った事前並べ替え＋系列モデル [ 外山+15]
統語情報を考慮したニューラルネットは利用可？
[Socher+11, Luong+13]

46

ニュラールネットに基づく機械翻訳

制御可能性
●
●

細かく訳出結果を制御することは不可

今のところ、データの追加以外の改良法はない？

47

ニュラールネットに基づく機械翻訳

参考資料・文献●●

●

●

●
●

●

●

●

●

●

●

●

●Kevin Duh: Deep Learning for Machine Translation
http://cl.naist.jp/~kevinduh/notes/cwmt14tutorial.pdf

D. Bahdanau, K. Cho, and Y. Bengio. Neural machine translation by jointly learning to align and translate. In Proc.
ICLR, 2015.
Y. Bengio, H. Schwenk, J.-S. Sen ́ ecal, F. Morin, and J.-L. Gauvain. Neural probabilistic language models. In
Innovations in Machine Learning, 2006.
S. F. Chen and R. Rosenfeld. A survey of smoothing techniques for me models. Speech and Audio Processing,IEEE Transactions on, 8(1):37–50, Jan 2000.
S. Hochreiter and J. Schmidhuber. Long short-term memory. Neural computation, 9(8):1735–1780, 1997.
S. Jean, K. Cho, R. Memisevic, and Y. Bengio. On using very large target vocabulary for neural machine translation.
In Proc. ACL, 2015.
N. Kalchbrenner and P. Blunsom. Recurrent continuous translation models. In Proc. EMNLP, pages 1700–1709,Seattle, Washington, USA, 2013. Association for Computational Linguistics.
M.-T. Luong, I. Sutskever, Q. Le, O. Vinyals, and W. Zaremba. Addressing the rare word problem in neural machinetranslation. In Proc. ACL, 2015.
T. Luong, R. Socher, and C. Manning. Better word representations with recursive neural networks for morphology.
pages 104–113, 2013.
T. Mikolov, M. Karafi ́ at, L. Burget, J. Cernocky`, and S. Khudanpur. Recurrent neural network based language
model. In Proc. InterSpeech, pages 1045–1048, 2010.
M. Nakamura, K. Maruyama, T. Kawabata, and K. Shikano. Neural network approach to word category prediction
for English texts. In Proc. COLING, 1990.
R. Socher, C. C. Lin, C. Manning, and A. Y. Ng. Parsing natural scenes and natural language with recursive neuralnetworks. pages 129–136, 2011.
I. Sutskever, O. Vinyals, and Q. V. Le. Sequence to sequence learning with neural networks. In Proc. NIPS, pages
3104–3112, 2014.
48
A. Vaswani, Y. Zhao, V. Fossum, and D. Chiang. Decoding with large-scale neural language models improvestranslation. In Proc. EMNLP, pages 1387–1392, 2013.

ニュラールネットに基づく機械翻訳

追加資料

49

ニュラールネットに基づく機械翻訳

NN に関する考え方 (1980 年代ごろ？ )●生理学的解釈を重視50

画像： Wikipedia

ニュラールネットに基づく機械翻訳

NN に対する考え方 (2010 年代 )pt1wr,hht-1wr,x●bosoftmax

wo,htanh

pt+11wr,hhtwr,xxt br

xt+1 b11bo

softmax

wo,hht+1tanhr

ただの（微分可能な）関数のつながり51