言語情報科学 レポート

言語情報科学 レポート
数理2研 修士1年
齋木直也∗ 46209
2004 年 7 月 31 日
1
論文の要旨
1.1
Statistical Translation
フランス語の文字列に対して, 妥当な英語の文字列を求める. フランス語の文字列を f , 英語の
文字列を e とする. P (e), P (f ) は文中において e, f の出現する確率を表し, P (e|f ), P (f |e) は f
が e と訳される確率およびその逆を表すものと定義する. このとき, ベイズの定理より、
P (e|f ) =
P (e)P (f |e)
P (f )
が成り立つ. Statical Translation は,
ê = arg max P (e)P (f |e)
e
なる ê を f に対する対訳として用いようという翻訳方法である。
フランス語の単語は, 全てある英語の単語に翻訳されるわけではない. あるフランス語の単語に
対して, 英語では複数の単語の列である熟語が対応しているなどの場合である.
今考慮しているフランス語の文字列に含まれる j 番目の単語が、対応する英語の文字列の i 番
目の単語に関連していることを alignment といい, aj = i のように表す. 以降評価する対象はこの
alignment を考慮に入れた P (f, a|e) である.
1.2
Model 1
本モデルでは, 英・仏文の単語の出現順序には相関がなく, また対訳は個々の単語にだけ依存す
るという状況を考慮している.
Model 1 の目的は, P (f |e) を最大化する e を見つけることであり, EM アルゴリズムを用いた手
法を提案している.
1.3
Model 2
本モデルでは, alignment が位置に依存するという状況を考慮している.
∗ [email protected]
1
Model 2 の目的も Model 1 と同様に, P (f |e) を最大化する e を見つけることであり, EM アル
ゴリズムを用いた手法を提案している.
1.4
EM アルゴリズム
EM アルゴリズムは観測できない隠れたパラメータが存在する時に最尤推定を行うための汎用手
法である. EM アルゴリズムは反復法によって局所最適解を求めるアルゴリズムである.
観測値 x が与えられたとき, 確率モデル p(x; θ) の最尤推定量を求めることが問題である. 観測
される変数 x は, 背後にある完全な確率変数 y の不完全な観測値であるとする.
EM アルゴリズムは適当な初期値 θ(0) から始め, 以下の E と M の各ステップを繰り返すことに
よって解を更新する. t ステップ目のパラメータの値を θ(t) とする.
E (Expectation) ステップ: 次で定義される完全データの尤度の条件付き期待値を計算する.
Q(θ|x; θ(t) ) = Eθ(t) [p(y; θ)|x]
M (Maximization) ステップ: Q(θ|x; θ(t) ) を θ について最大化したものを θ(t+1) とおく.
2
他の分野への応用:強化学習
ロボットなどに適切な行動を学習させる手法として強化学習というものがある. 現在の状態 st ∈ S
とそのときに取り得る行動 at : st → st+1 の集合が与えられているという状況で、適切な行動 a∗
を取るように学習させることが目的である.
強化学習では報酬というものを定義して, この報酬を多く得ることのできる行動を学習させよう
と考える. 状況 s において行動 a を取ったとき, 外部から報酬 r(s, a) が与えられる. 一般に, どの
ような報酬が与えられるかをロボットは知らない.
ある行動指針 π : S → A に従って行動したときに得られる報酬 rπ (s) の総和を元にして, 行動
の評価関数 Qπ (s) = f (r) というものが定義されており, これはロボットが認識することができる.
すなわち, 強化学習は π ∗ = arg maxπ Qπ (s) を求めるアルゴリズムである.
従来の強化学習は報酬の与えられ方に関するモデルを仮定しなかったため, 繰り返し試行による
学習を行っていた. それに対してプランニングという手法は, 報酬などの観測できないパラメータ
に対してモデルを仮定し (すなわち P {rπ (s)} は既知), その下で学習を行う手法である. このよう
に未知のパラメータにモデルを仮定した対象に対して EM アルゴリズムを以下のように用いるこ
とができるのではないかと考えられる.
E ステップ: (s は任意の初期値)
Qπ(t) (s) = E[f (r)]
M ステップ: Qπ(t) (s) を π(t) について最大化したものを π(t + 1) とおく.
強化学習はロボットの学習以外にも様々な応用例がある. 本稿ではパケットに対する CPU 割り
当て問題を挙げる. あるサーバーに対してクライアントからパケットが送られており, それぞれの
パケットを別々の CPU を用いて処理をする. それぞれのパケットの負荷の大きさに応じて適切な
割り当てを行うことで, できるだけ待ちの少ないシステムを作ることが目的である.
2
このとき, 送信されるパケットの間隔時間に関するモデルを仮定するならば, 上述のアルゴリズ
ムを用いて適切なパケット分配規則を学習させることができる.
3