View
7.095
Download
0
Category
Preview:
DESCRIPTION
第4回自然言語処理勉強会@東京の発表資料です。統計的機械翻訳の入門になっています。
Citation preview
統計的機械翻訳入門
#tokyonlp
@nokuno
自己紹介
• Twitter: @nokuno
• はてな: id:nokuno
• TokyoNLP主催
• Social IME, StaKK開発者
統計的機械翻訳とは
• 機械翻訳:プログラムが翻訳すること
• 統計的:コーパスに基づくアプローチ
• 対訳コーパスと単言語コーパスを使う
Google翻訳してみる
• I was among the first Canadians to
own a Kindle.
• 私はこの本を所有している最初のカナダ人の間であった。
http://lemire.me/blog/archives/2011/01/01/surprising2010/
Noisy-Channel Model
• 言語モデルと翻訳モデルに分解
e = argmaxe P(e | f )
= argmaxe P(e)P( f | e)
e: 翻訳先の文、f: 翻訳元の文
P(e): 言語モデル
文の滑らかさに関するスコア
P(f|e): 翻訳モデル
意味の近さに関するスコア
言語モデルの例:単語N-gram
• 文の滑らかさ=単語の滑らかさの組合せ
P(e) = P(wi |wi-1)i
Õ
C(w): コーパス中のwの頻度ブログ で 日記 を 書く
0.1 0.05 0.1 0.08
単言語コーパスから推定可能
翻訳モデル
• 単語ベース(IBMモデル)
• フレーズベース
• ツリーベース
今回はIBMモデル2までを扱います
単語の翻訳
• 単語1つを翻訳するには?→辞書を引く
– Haus – house, building, home, household, shell.
• いろいろな翻訳が考えられる
– 「流暢な」翻訳とそうでない翻訳がある
–例えば:houseとbuildingはよく使われている
• ここでドイツ語を英語に翻訳するものとする
訳語の集計
• Hausの訳語を集計する
翻訳確率の推定
• 最尤推定により以下が求まる:
単語アライメント
• 単語の対応付け
単語アライメント
• 単語の並び替え
単語アライメント
• 単語数の増加
単語アライメント
• 単語の削除
単語アライメント
• 単語の挿入
IBM Model 1
• 生成モデル:翻訳プロセスをモデル化
• 文の翻訳を語彙の翻訳に帰着させる
入力
出力
アライメント a: j→i : e_jがf_iに対応する
例
翻訳モデルを学習するには?
• 対訳コーパスから学習したい
• しかし、アライメントがわからない
• 鶏と卵の問題
–アライメントがあれば、パラメータ推定できる
–パラメータがあれば、アライメントを推定できる
EMアルゴリズム
• 不完全データ
–完全データが手に入れば、モデルを推定できる
–モデルがあれば、欠損データを推定できる
• EMアルゴリズムの概要
1. モデルパラメータを初期化(一様分布など)
2. 欠損データに確率を与える
3. 推定データからモデルパラメータを更新する
4. 収束するまで2-3を繰り返す
EMアルゴリズム
• 初期化:すべてのアライメントは等確率
• モデル学習:la は theとよく共起する
EMアルゴリズム
• 1回目のイテレーション後
• laとtheはより強くアライメントされている
EMアルゴリズム
• 2回目のイテレーション後
• fleur とflowerが対応する(鳩の巣原理)
EMアルゴリズム
• 収束後
• 隠れたアライメントが推定された
EMアルゴリズム
• アライメントからパラメータを推定
IBMモデル1におけるEM
• EMアルゴリズムは2つのステップからなる
• Eステップ:モデルをデータに適用
–モデルは隠れ変数を含む
–取りうる値の確率を推定する
• Mステップ:データからモデルを推定
–確率で重み付けして頻度を集計する
–集計した頻度からモデルを推定する
• これらを収束まで繰り返す
Eステップ(1)
• アライメント確率p(a|e,f)を求める
∵
(IBM Model1の定義)
Eステップ(2)
• 和と積を入れ替える
Eステップ(3)
• 以下の確率を求めれば良い
Mステップ
• P(a|e,f)は既知として尤度の期待値を最大化
そのアライメントでeとfが対応している回数
(最尤推定)
EM:擬似コード
実験結果
日英対訳コーパスの例
• NICTの日英対訳コーパスで実験
• GIZA++を使ってアライメント
• セグメンテーションのミスが多い
日本語 英語 確率
精神 sentimentality 0.000189816
平安京 Heian-Kyo 0.0121956
李 Takutori-tenno 0.00148212
は NULL 0.251252
まとめ
• 機械翻訳はNoisy Channel Modelの枠組み
• IBMモデル1:語彙の翻訳
• アライメントとEMアルゴリズム
参考文献• 統計的機械翻訳サーベイ, 岡野原大輔
• http://www.slideshare.net/pfi/smt-
survey
• 統計的機械翻訳ことはじめ, 渡辺太郎
• http://www.kecl.ntt.co.jp/icl/kpro/taro/papers/smt-
tutorial.pdf
• Foundations of Statistical Machine Translation:
Past, Present and Future, Taro Watanabe
• http://mastarpj.nict.go.jp/~t_watana/papers/interspeech2010-
tutorial.pdf
ご清聴ありがとうございました
高次のIBMモデル• IBMモデル1: アライメントは一様分布
• IBMモデル2: 絶対アライメントを追加
• IBMモデル3: 単語数の増減を追加
• IBMモデル4: 相対アライメントを追加
• IBMモデル5: 単語の欠損を追加
上位のモデルは下位のモデルによる学習を初期値として再学習
Recommended