統計的機械翻訳における フレーズ対応最適化を利用した

統計翻訳における
フレーズ対応最適化を利用した
翻訳候補のリランキング
~整数計画法の機械翻訳への応用~
越川 満(筑波大学)
内山将夫(情報通信機構)
梅谷俊治(大阪大学)
松井知己(中央大学)
山本幹雄(筑波大学)
SCOPE@つくば 2009
1
Webページの言語別割合
韓国語
ポルトガル語
その他
イタリア語
ロシア語
スペイン語
フランス語
韓国語
その他
ポルトガル語
イタリア語
ロシア語
中国語
英語
スペイン語
ドイツ語
フランス語
日本語
英語
中国語
ドイツ語
日本語
2002年
2004~2006年
童芳, 平手,山名. 2008. 全世界のWebサイトの言語分布と日本語
を含むWebサイトのリンク・地理的位置の解析, DEWS2008.
SCOPE@つくば 2009
2
翻訳とは暗号解読だ!

The letter of Warren Weaver to Nobert Wiener, March 4, 1947.
When I look at an article in Russian, I say:
"This is really written in English,
but is has been coded in some strange symbols.
I will now proceed to decode."
(Statistical) Machine Translation
(統計的)機械翻訳
(統計翻訳システムのことをdecoderと呼ぶ)
SCOPE@つくば 2009
3
暗号解読ライクな翻訳
翻訳規則の抽出

実際の翻訳
共起回数から規則を見出す
ドイツ語
対訳文
翻訳元言語の文(原言語文)
Es ist warm heute .
Es ist sonnig heute .
今日
は 暖かい です 。
頻度を調べれば(=統計的に)
Es
ist warm .
翻訳が可能!
暖かい です 。
Es ist sonnig .
晴れ です 。
翻訳規則の適用
翻訳先言語の文(目的言語文)
…
今日 は 晴れ です 。
対訳データ
SCOPE@つくば 2009
4
統計的機械翻訳の枠組み
対訳データ
(数百~数千万
対訳文)
本発表のテーマ
おおよそ
整数計画問題に落ちる
翻訳結果
目的言語文
(翻訳候補)
モデル化の問題
eˆ  arg max P(e | f )
e
デコードの問題
原言語文(入力文)
デコーダ
翻訳の(確率)モデル
fに対してモデルの確率
が最大となるeを探索
文(の組)に対する確率は組合せが
多すぎて表にできない
部分的な翻訳規則の組合せ
f: 原言語文 Source language
e:目的言語 Target language
SCOPE@つくば 2009
5
フレーズ翻訳モデルとフレーズ対応a
P(e | f) ∝ P(e, f) = ΣP(e,a, f )
フレーズ
a
原言語文 f
文頭
フレーズ対応 a
a0
目的言語文 e 文頭
But
a1
しかし
it is
rainy
a2
今日 は
Mono.
Dis.
P(e,a, f )=P(e) P(a|e) P( f |e,a)
a3
雨
today
.
a5
a4
です
。
Swap.
言語モデル: P(e) ≒ P(しかし)×P(今日 | しかし)×P(は | しかし, 今日
×
歪みモデル: P(a|e) ≒P(Mono| しかし)×P(Dis.| 今日は)×P(Swap| 雨)×...
×
翻訳モデル: P(f |e,a) ≒ P(But|しかし)×P(today|今日 は)×...
SCOPE@つくば 2009
6
デコーダの近似とフレーズ対応問題
eˆ  arg
(e | f . )  arg原言語文
max P
f (e
it max
is rainy Ptoday
it ,is f )
rainy
原言語文 f
e
e
 arg
max
P(e, a, f )目的言語文 e
今日
は 
雨です 。
フレーズ対応 a
目的言語文 e^
today
.
です
。
フレーズ対応 a
e
今日 は
雨
a
 arg max P(e ) P(a | e ) P( f | e, a )
e
a
 arg max P(e ) max P(a | e ) P( f | e, a )
e
a
フレーズ対応問題(フレーズ対応最適化)
f と e が与えられた状況で、
P(a|e)P( f |e,a) を最大とする a を求める
しかし、現在のデコーダは両方のmaxを同時にかつ近似的に解いている
7
SCOPE@つくば 2009
さらに
ˆ  arg max P(e | f )  arg max P(e, f )
e
研究の目的
e

 arg max  P(e, a, f )
デコーダの探索を厳密化
e

a
e
整数計画法を用いて
 arg max P(e ) P(a | e ) P( f | e, a )
翻訳候補に最適なフレーズ対応を付与
e

a
 arg max P(e )| max
(a |max
e ) P(Pf(e|,ef, a) )
eˆ 
f ) Parg
e
a
 arg max  P(e, a, f )
e
maxaを厳密化=フレーズ対応最適化
e
a
 arg max P(e ) P(a | e ) P( f | e, a )
e
a
→ デコーダの探索エラーの低減
 arg max P(e ) max P(a | e ) P( f | e, a )
→ 翻訳精度の改善
e
a
SCOPE@つくば 2009
8
フレーズ対応問題
~
~
歪みコストdi
翻訳コストti
フレーズ対応問題はコスト最小化問題
SCOPE@つくば 2009
9
フレーズ対応問題の入出力

入力:
 原言語文
 目的言語文
f = ( f1, f2, f3, f4 )
e = (e1 , e2, e3)
対訳文
pi (i=1~K(=4))
 フレーズ翻訳コスト
ti
 各フレーズ対間の歪みコスト dij
 フレーズ対
f=
e=

p1
f 1, p 2
e1 ,
f2,
p3 e2,
フレーズ対
f3,
f4
p4
e3
出力:
全単語を一度ずつ覆うフレーズ対集合(=フレーズ対応)のう
ち、コスト最小のもの
SCOPE@つくば 2009
10
提案手法:フレーズ対応の制約
原言語側
F1
F4
f1 f2
f3 f4
フレーズ対応
F2
F3
F4
f1
f2
f3 f4
集合
f1 f2 f3 f4
F2
F3
F4
f1
f2
f3 f4
分割
e1
e2
e3
f1
f2
E3
E2
E4
F2
F3
目的言語側
e1
歪み
f1
e2
e3
フレーズ対番号
1
4
f2
e1
e2
P3
P2
s(文頭)
3
2
SCOPE@つくば 2009
g(文末)
11
フレーズ対応問題の定式化

目的関数
 min. Σ tk xk + Σ de ye
k∈K

e∈E
あとはCPLEXに
おまかせ
制約条件





Fx = 1
・・・原言語側の集合分割制約
My = b
・・・目的言語側の流量保存則(s→g)
x = Ny
・・・目的言語側の変数yからxを導出
xk ∈ {0,1} (∀k∈K)・・・フレーズ対の変数
ye ∈ {0,1} (∀e∈E) ・・・目的言語側の枝変数
SCOPE@つくば 2009
E:目的言語側 枝集合 12
フレーズ対応最適化を用いた翻訳候補の
リランキング
デコーダにより翻訳候補上位n個を獲得
2. フレーズ対応を最適化、確率を再計算
1.
フレーズ対応最適化後
翻訳候補上位n 個
順位
1
翻訳候補
確率
it is fine today .
0.21
それは 今日 晴れ
2
it is fine
today
順位
1
翻訳候補
it is fine today .
0.21
だ。
それは 今日 晴れ
.
確率
2
だ。
it is fine today .
0.35
0.13
今日 は
よい 天気
だ。
今日 は
・
・
・
よい 天気 だ 。
・
・
・
SCOPE@つくば 2009
13
実験条件

データセット:NTCIR-7 特許翻訳タスク コーパス
 学習用対訳データ:
180万文ペア
 テストデータ: 1,371文(フォーマルラン)

翻訳精度の評価基準:BLEU
 正解翻訳例との一致率
= 100%に近いほどよい

翻訳方向:日→英


比較:Mosesデコーダ vs. 提案手法
ビーム幅(翻訳候補数):
10, 20, 50, 100, 200, 500, 1,000

整数計画問題のSolver: CPLEX 11.0
オープンソースの世界標準 統計翻訳システム
SCOPE@つくば 2009
14
翻訳精度:高
ビーム幅と翻訳精度(BLEU)の関係
有意水準5%で有意差あり
ベースラインシステム
Mosesに比べて
rerank(提案手法)は
翻訳精度が若干高い
ビーム幅が大きいとき
Mosesとrerankの差は
ほとんどなくなる
ベースラインの探索精度:良
SCOPE@つくば 2009
翻訳候補数:多
15
まとめ

提案手法
 フレーズ対応問題の新たな定式化
フレーズ対応についての厳密な確率最大化
 リオーダリングモデルの考慮

 フレーズ対応最適化による翻訳候補のリランキング

評価実験
 フレーズ対応最適化により若干精度向上
⇔ フレーズ対応についての探索精度は従来法で十分
 そもそもデコーダはあまり多くの目的言語文のバリエー
ションを探索していない
SCOPE@つくば 2009
16
大きな可能性 ~翻訳速度向上~
29
翻訳精度:高
入力文:The vehicle has also a pair of rear wheels wr .
また、車両が一対の
後輪Wrを備える 。
BLEU [%]
28
27
26
25
24
また、車両が一対の後輪Wr。
0.01
0.1
1
10
100
翻訳時間 [sec/sentence]
SCOPE@つくば 2009
17
大きな可能性 ~翻訳速度向上~
29
翻訳精度:高
入力文:The vehicle has also a pair of rear wheels wr .
また、車両が一対の
後輪Wrを備える 。
BLEU [%]
28
翻訳時間をかければ翻訳精度改善
ただし、1000倍の時間・・・
27
私たち(AI系)の探索技術がしょぼい?
タブーサーチ etc…
26
デコーダ本体へのOR系探索技法の導入
25
→ デコーダの劇的な速度向上の可能性!
24
また、車両が一対の後輪Wr。
→
統計翻訳の(一般的な)実用化
0.01
0.1
1
10
100
翻訳時間 [sec/sentence]
SCOPE@つくば 2009
18
ご清聴ありがとうございました
SCOPE@つくば 2009
19
P(e | f )の近似
フレーズ対応 a
P (e | f )  P (e ) P ( f | e )
 P (e )  P ( f , a | e )
a=
a
 P(e ) P( f | e, a )P(a | e)
f1 f2 f3
f1 f2 f3
e1 e2
e1 e2
f1 f2 f3
f1 f2 f3
e1 e2
e1 e2
f1 f2 f3
e1 e2
a
言語モデル
歪みモデル
l
P(e)   P(ei | eii1n1 )
i 1
翻訳モデル*
m'
m'
i 1
i 1
P(a | e)   P(ai | ai 1 , ei )   P(oi | ei )
m'
P( f | e, a )   P( f ai | ei )
i 1
フレーズ(単語列)
(*フレーズ翻訳モデル)
SCOPE@つくば 2009
aiとai-1が
・モノトーンoi=M,
・スワップoi=S,
・その他 oi=D.
20
実行可能解の例

出力:コスト最小のフレーズ対応候補
実行可能解1
実行可能解2
p2
p3
p4
p1
f = f1,
f2,
f3, f4
f = f1,
e=
e1 ,
e2,
e3
e=
C可能解1= t2+t3+t4
+ d文頭 2+ d23+d34+d4 文末
e1 ,
p4
f2,
e2,
f3, f4
e3
C可能解2=t1+t4
+ d文頭 1+d14+d4 文末
SCOPE@つくば 2009
21
単純な定式化の制約条件 Fx = 1
フレーズ対集合
原言語側
フレーズ対kを使うか?
使う
:xk=1
使わない:xk=0
フレーズ対番号
 x1 
 
 x2 
1
0
1
1
0
0


f1 
 x 
3
f2  1 1 0 0 1 0 
・x 


0 1 0 0 0 1
4
f3

  

f 4  0 1 0 0 0 1   x5 
x 
各フレーズが被覆する単語位置を
 6
1として表す0-1行列
1 2 3 4 5 6
SCOPE@つくば 2009
=
1
 
1
1
 
1
 
f1
f2
f3
f4
各単語が一度だけ被覆
されることを表す
22
目的言語側の有向グラフ

変数: 枝(i, j)の使用有無を表す0-1変数 yij
 yijが1
・・・ 枝(i,j)の両端のフレーズ対iとjが使用される
 リオーダリング確率は枝に対する重み
P3とP2との
フレーズ対番号
e1
e2
リオーダリング確率
e3
y32・d32
1
4
s
3
2
g
リオーダリング確率
フレーズ対 P2
フレーズ対 P3
f1
e1
f2 f3 f4
e2 e3
f1
f2
e1
e2
P3
P2
SCOPE@つくば 2009
f1
e1
f2 f3 f4
e2
e3
23
補足:制約条件My=b
e1
フレーズ対番号
1
e2
e3
4
1
4
s
2
枝番号
3
2
6
g
5
3
SCOPE@つくば 2009
24
処理時間とBLEUの関係
同じ翻訳精度を得るなら
Moses(従来法)の方が、
2倍速い
Moses(従来法)
rerank(提案手法)
SCOPE@つくば 2009
適化時間
・・・翻訳時間そのもの
・・・翻訳時間 + フレーズ対応最
25
補足:翻訳例
正解例の下線部が
Mosesでは分離していたのに対して、
提案手法(rerank)ではリオーダリング
スコアも考慮して最適化したことで
結合している
SCOPE@つくば 2009
26
補足:翻訳例(詳細)


翻訳結果にリオーダリングスコア最適化効果が見られる
(上図:黒下線部)
フレーズ対応がよりよくなった?(下図:赤太枠)
SCOPE@つくば 2009
27
まとめ2

統計的機械翻訳
 自然言語処理で現在最もホットな研究テーマ


自動学習で
ルールベースを超える可能性
 WEBの多言語化により機械翻訳のニーズが高くなっている
 Googleが機械翻訳を統計的なものに置き換えた
 今のところ最適化の技術はあまり重要視されていない


学習データの問題
モデル化の問題
 しかし、上記の問題は解決されつつある
 デコードの問題ではおそらく最適化技術が主役!

今がチャンス!
SCOPE@つくば 2009
28