Your SlideShare is downloading. ×
統計的機械翻訳入門 #TokyoNLP
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

統計的機械翻訳入門 #TokyoNLP

6,836
views

Published on

第4回自然言語処理勉強会@東京の発表資料です。統計的機械翻訳の入門になっています。

第4回自然言語処理勉強会@東京の発表資料です。統計的機械翻訳の入門になっています。


0 Comments
9 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,836
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
89
Comments
0
Likes
9
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. 統計的機械翻訳入門 #tokyonlp @nokuno
  • 2. 自己紹介• Twitter: @nokuno• はてな: id:nokuno• TokyoNLP主催• Social IME, StaKK開発者
  • 3. 今日の内容 • 機械翻訳の教科書 • IBM モデル1まで • http://amzn.to/hIvoo6
  • 4. 統計的機械翻訳とは• 機械翻訳:プログラムが翻訳すること• 統計的:コーパスに基づくアプローチ• 対訳コーパスと単言語コーパスを使う
  • 5. Google翻訳してみる • I was among the first Canadians to own a Kindle. • 私はこの本を所有している最初のカナ ダ人の間であった。http://lemire.me/blog/archives/2011/01/01/surprising2010/
  • 6. Noisy-Channel Model• 言語モデルと翻訳モデルに分解 e = argmax e P(e | f ) = argmax e P(e)P( f | e) e: 翻訳先の文、f: 翻訳元の文 P(e): 言語モデル 文の滑らかさに関するスコア P(f|e): 翻訳モデル 意味の近さに関するスコア
  • 7. 言語モデルの例:単語N-gram• 文の滑らかさ=単語の滑らかさの組合せ P(e) = Õ P(wi | wi-1 ) i 0.1 0.05 0.1 0.08 ブログ で 日記 を 書く C(w): コーパス中のwの頻度 単言語コーパスから推定可能
  • 8. 翻訳モデル• 単語ベース(IBMモデル)• フレーズベース• ツリーベース 今回はIBMモデル2までを扱います
  • 9. 単語の翻訳• 単語1つを翻訳するには?→辞書を引く – Haus – house, building, home, household, shell.• いろいろな翻訳が考えられる – 「流暢な」翻訳とそうでない翻訳がある – 例えば:houseとbuildingはよく使われている• ここでドイツ語を英語に翻訳するものとする
  • 10. 訳語の集計• Hausの訳語を集計する
  • 11. 翻訳確率の推定• 最尤推定により以下が求まる:
  • 12. 単語アライメント• 単語の対応付け
  • 13. 単語アライメント• 単語の並び替え
  • 14. 単語アライメント• 単語数の増加
  • 15. 単語アライメント• 単語の削除
  • 16. 単語アライメント• 単語の挿入
  • 17. IBM Model 1• 生成モデル:翻訳プロセスをモデル化• 文の翻訳を語彙の翻訳に帰着させる 入力 出力 アライメント a: j→i : e_jがf_iに対応する
  • 18.
  • 19. 翻訳モデルを学習するには?• 対訳コーパスから学習したい• しかし、アライメントがわからない• 鶏と卵の問題 – アライメントがあれば、パラメータ推定できる – パラメータがあれば、アライメントを推定できる
  • 20. EMアルゴリズム• 不完全データ – 完全データが手に入れば、モデルを推定できる – モデルがあれば、欠損データを推定できる• EMアルゴリズムの概要 1. モデルパラメータを初期化(一様分布など) 2. 欠損データに確率を与える 3. 推定データからモデルパラメータを更新する 4. 収束するまで2-3を繰り返す
  • 21. EMアルゴリズム• 初期化:すべてのアライメントは等確率• モデル学習:la は theとよく共起する
  • 22. EMアルゴリズム• 1回目のイテレーション後• laとtheはより強くアライメントされている
  • 23. EMアルゴリズム• 2回目のイテレーション後• fleur とflowerが対応する(鳩の巣原理)
  • 24. EMアルゴリズム• 収束後• 隠れたアライメントが推定された
  • 25. EMアルゴリズム• アライメントからパラメータを推定
  • 26. IBMモデル1におけるEM• EMアルゴリズムは2つのステップからなる• Eステップ:モデルをデータに適用 – モデルは隠れ変数を含む – 取りうる値の確率を推定する• Mステップ:データからモデルを推定 – 確率で重み付けして頻度を集計する – 集計した頻度からモデルを推定する• これらを収束まで繰り返す
  • 27. Eステップ(1)• アライメント確率p(a|e,f)を求める ∵ (IBM Model1の定義)
  • 28. Eステップ(2)• 和と積を入れ替える
  • 29. Eステップ(3)• 以下の確率を求めれば良い
  • 30. Mステップ• P(a|e,f)は既知として尤度の期待値を最大化 そのアライメントで eとfが対応している回数 (最尤推定)
  • 31. EM:擬似コード
  • 32. 実験結果
  • 33. 日英対訳コーパスの例• NICTの日英対訳コーパスで実験• GIZA++を使ってアライメント• セグメンテーションのミスが多い 日本語 英語 確率 精神 sentimentality 0.000189816 平安京 Heian-Kyo 0.0121956 李 Takutori-tenno 0.00148212 は NULL 0.251252
  • 34. まとめ• 機械翻訳はNoisy Channel Modelの枠組み• IBMモデル1:語彙の翻訳• アライメントとEMアルゴリズム
  • 35. 参考文献• 統計的機械翻訳サーベイ, 岡野原大輔 • 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
  • 36. ご清聴ありがとうございました
  • 37. 高次のIBMモデル• IBMモデル1: アライメントは一様分布• IBMモデル2: 絶対アライメントを追加• IBMモデル3: 単語数の増減を追加• IBMモデル4: 相対アライメントを追加• IBMモデル5: 単語の欠損を追加上位のモデルは下位のモデルによる学習を初期値として再学習