TheMathematicsofStatistical
Machine
Translation:
ParameterEstimation
PeterEBrown,VincentJ.DellaPietra,
StephenA.DellaPietra,RobertL.Mercer
ComputationalLinguistics,Vol
19‐2,1993,
ACL,pp.263‐311
(Jun.,23,2009
揚石担当)
目的
• 背景
– 統計機械翻訳に注目
• 利用可能なパラレルコーパスが増大
• 過去の研究により、有用性確認
• 統計モデルの提案
– 文対からのパラメタ推定
• 単語アラインメント
5つのmodelを提案
アラインメントの種類
英単語が独立
フランス単語が独立
一般的
統計翻訳
• フランス語Fから英語Eへの翻訳
– P(e|f)
が最大となるようなe
^
が最尤な翻訳
•
– ベイズの定理より
•
– P(f)は無視⇒入力に対し、一定値
– P(e)
:languagemodel
– P(f|e)
:translationmodel
⇒これに注目
翻訳モデル
• アラインメントを導入
–
–
• 英文:
• 仏文:
• アラインメント:
それぞれ 0からlの間の値を持つ
– a
1
=2
Model1
•
– 様々な仮定を適用
• Pr(m|e)
=仏文の長さ(単語数)がmである確率
=ある定数ε
• =j番目の仏単語がつながるのが
a
j
番目の英単語の確率
=どの場所にも同確率
=(l+1)
‐1
• =j番目の仏単語がf
j
の確率
=f
j
とe
aj
のみで決まる
=
•
Model1
•
• aについて和をとる
– (j:1~m、a
j
:0~l)
– 上式で推定すべきパラメタはt()のみ
– 制約条件:
より
ラグランジュの未定乗数法を用いて極値を求める
–
• t(f|e)で偏微分
–
– これを0として
•
• 両辺にt()が出現
– EMアルゴリズムによりt()を求める
eとfがaで繋がっている回数
• 簡単化
– よりt(f|e)は
–
– 期待値を定義
•
• Pr(a|e,f)=Pr(f,a|e)/Pr(f|e)を用いλ
e
Pr(f|e)をλ
e
とすると
– S個のデータセットでは
–
λ
e
:正規化項
計算量の問題
•
• を導入
– 計算量:(l+1)
m
⇒m(l+1)
– m=3,l=1として
• 左辺:t
10
t
20
t
30
+t
10
t
20
t
31
+…+t
11
t
21
t
30
+t
11
t
21
t
31
• 右辺:(t
10
+t
11
)(t
20
+t
21
)(t
30
+t
31
)
– また、Pr(f|e)は
•
(l+1)
m
回の計算が必要
偏微分の再計算
•
• これにより
–
– 計算量:l+m
重み
fとeの対応数
パラメタ推定アルゴリズム
1.
t(f|e)の初期化
2.
各文sについて、
を計算
3.
各eについて、λ
e
を計算
–
4.
各fについて、t(f|e)を更新
–
5.
繰り返し
実行例
– 私は、皆と喜びを分かち合うことの中に
123456789
10111213
共同の冒険があることを主張したい。
1415161718192021
2223
24
– NULL({224}) I({1})call({572022})for({})a
({317})collective({18})adventure({16})in({
111315})generalized({489101214192123
})joy({6})
Model2
• Model1:単語の位置を考慮しない
⇒単語の位置考慮で精度向上の可能性
• Mode1を変更
–
• (l+1)
m
⇒
• 制約条件を追加:
–
–
Model2
• の変更
– 期待値:
– Model1と同様に
•
•
– 効率化
•
• これにより、期待値は
–
–
Model2
• Model1
– Model2の特殊なケース
• a(i|j,m,l)=(l+1)
m
• Model2
– 複数の極大値を持つ=最適解の保証はなし
– 初期値をModel1によって計算
Model3
• Model1、Model2
– 1対1の単語対応を想定
– 実際の翻訳
• 1対多
または
1対なし
がありえる
• “the”
⇒ “lelo,…”
or“”
• “only”
⇒ “seulement”
or“ne…que”
• Model3
– これを扱う明示的なパラメータを導入
• “fertility”:繁殖力
Model3のパラメタ
• n(φ|e
i
):繁殖確率(fertilityprobabilities)
– 英単語eがφ個の仏単語に対応する確率
• t(f|e
i
):翻訳確率 (translationprobabilities)
– 英単語eが仏単語fに翻訳される確率
• d(j|i,l,m):歪み確率(distortionprobabilities)
– 英文長がl、仏文長がmで、i番目の英単語がjの
仏単語に翻訳される確率
Model3のパラメタ
• e
0
の繁殖確率φ
0
:別の確率を仮定
– 翻訳されない語数⇒仏文長に依存
–
• p
0
+p
1
=1
• 翻訳されない語数=翻訳されない回数
Model3
•
Model3の構成
1.
繁殖確率で単語をコピー
– n(φ|e
i
)
2.
Null生成
–
3.
単語ごとに翻訳確率で翻訳
– t(f|e
i
)
4.
歪み確率で位置決定
– d(j|i,l,m)
計算量の問題
• Model1,2と同様に計算すると
–
– 膨大な計算量⇒近似的に求める
ビタビアライメントと近傍の定義
• ビタビアライメント(Viterbialighment)
– 対訳ペア中の全アライメントで、確率最大アライメント
• 近傍
– あるアライメントa
• 一つの仏単語fの対応先
– 別の英単語に移動させたことによって得られるアライメントa’
• aの二つの仏語単語の対応先
– 交換することによって得られるアライメントa
– a’はaの近傍
効率的な計算
• i⇒i’の変更によって得られる近傍アラインメントa’
–
効率的な計算
• i⇒i’の変更によって得られる近傍アラインメントa’
–
変更先の繁殖力