pfi seminar 2010/05/27 統計的機械翻訳

24
統統統統統統統 統統統統 統統統 統統 [email protected] 2010/05/27 PFI 統統統統

Upload: preferred-infrastructure-preferred-networks

Post on 28-May-2015

8.680 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: PFI seminar 2010/05/27 統計的機械翻訳

統計的機械翻訳サーベイ

岡野原 大輔[email protected]

2010/05/27 PFI セミナー

Page 2: PFI seminar 2010/05/27 統計的機械翻訳

参考資料• [NLP] “ 統計的機械翻訳ことはじめ” , 渡辺太郎

言語処理学会チュートリアル NLP 2004– 日本語で読める

• [SMT] “Statistical Machine Translation”, P. Koehn 2010– 統計的機械翻訳の歴史・グループ・手法など– 最新手法までではないが基本は押さえられる

[ 免責事項 ]SMT は専門ではないので誤りなどありましたら教えてください

Page 3: PFI seminar 2010/05/27 統計的機械翻訳

対象者

• 自然言語処理な人ではない• EM 法ももちろん知らない• アルゴリズム / データ構造 / 数学の基礎知

識有• 機械翻訳を知っているが失望している

Page 4: PFI seminar 2010/05/27 統計的機械翻訳

機械翻訳の現状 [SMT]

• 2007 年時点では一日あたり 5 億単語が機械翻訳されている–一日あたり 5000 万ウェブページが翻訳される

• 主な利用用途は Gisting (主旨・要点の理解)– 内容をなんとなく理解するので十分

• 完璧な翻訳は限定されたドメインで–天気予報・時間情報・ニュース・マニュアル– c.f. Microsoft のマニュアル

Page 5: PFI seminar 2010/05/27 統計的機械翻訳

Gisting してみよう!

今日 17:00 時点でのアルジャジーラのトップニュース

http://www.aljazeera.net

Page 6: PFI seminar 2010/05/27 統計的機械翻訳

Gistingしてみよう!

Page 7: PFI seminar 2010/05/27 統計的機械翻訳

Gistingしてみよう!

英語読めるなら英語への翻訳がいい

英語⇔アラビア語英語⇔中国語

の精度はかなり良い

Page 8: PFI seminar 2010/05/27 統計的機械翻訳

統計的機械翻訳(SMT: Statistical Machine translation)

• パラレルコーパスを用いて翻訳ルールを獲得– c.f. ロゼッタストーン–言語の専門家がいなくてもよい(国家的な理由も)

–高品質・大量のパラレルコーパスは国連・ EUの国際会議の議事録などで大量に入手可

– LDC, Acquis, OPUS, Communautaire, …–例: Europarl の場合 11 言語毎に 4000 万単語

• 言語のスケーラビリティが高い–コーパスさえあれば良い c.f .Google 50 言語

Page 9: PFI seminar 2010/05/27 統計的機械翻訳

統計的機械翻訳の歴史 (1/2)

• ~ 1980 用例ベース機械翻訳• 1989 IBM Research による著名な論文– NLP 業界での引用数第 2 位 ( 約 1000 件)–翻訳システムのパラメータを

パラレルコーパスから自動推定する–簡単な手法から順に IBM モデル 1 - 5 がある–提案者自身らは金融業界へと去っていった

• 1998 ワークショップで開発祭り– IBM モデルを実装

Page 10: PFI seminar 2010/05/27 統計的機械翻訳

統計的機械翻訳の歴史 (2/2)

• 2000 年以降– DARPA による強力な資金援助

• 米国としてはアラブ / 中国の文章を保安上読みたい– NIST workshop で毎年翻訳精度競争– Language Waver, Google, Yahoo, MS の台頭–現在、研究グループは 50 以上

[SMT] に詳細がのっています

Page 11: PFI seminar 2010/05/27 統計的機械翻訳

基本的なアイディア (1/3)[Broun+ 1993]

• 翻訳元: J 翻訳先: E• モデル: P(E|J ; θ)– θ はモデルを特徴付けるパラメータ

• パラレルコーパスから θ を学習– θ = 単語対の翻訳スコアなど

• E* = arg maxE P(E|J; θ) ( デコーディング )

–翻訳 = 確率が最大となる翻訳先を求める

Page 12: PFI seminar 2010/05/27 統計的機械翻訳

基本的なアイディア( 2/3 )

• argmaxE P(E|J; θ)= argmaxE P(J|E; θ’) P(E; θ’’)

• P(J|E; θ’) 翻訳モデル–翻訳元の意図を正しく伝えているか?

• P(E; θ’’) 言語モデル–翻訳した結果が言語として正しいか?–単言語コーパスから推定可能

Page 13: PFI seminar 2010/05/27 統計的機械翻訳

基本的なアイディア( 3/3)

• p(J|E) = ∑Ap(J,A|E)

• A: アライメント– E 中の単語と J 中の単語の対応付け– A[i] = i番目の翻訳先の翻訳元番号

I do not go to the house

NULL ich gehe ja nicht zum haus

A = [ 1 , 0, 4, 2, 5, 5, 6 ]

0 1 2 3 4 5 6

Page 14: PFI seminar 2010/05/27 統計的機械翻訳

IBM モデル

• p(E, A, | J) をどのように定義するかで 5種類–そのうち簡単な IBM Model-2 まで紹介

• Model-1 ∝ Πk t (ek | JA[k]) –アライメントに従い、各翻訳は独立に– t (e | j) : 単語対の翻訳確率

• Model-2 ∝ Πk t (ek | JA[k]) u(A[k] | k, |E|, |J|)– u: どのくらい翻訳元と先で単語が移動し得るか

Page 15: PFI seminar 2010/05/27 統計的機械翻訳

翻訳モデルの学習

• P(J|E; θ’) の θ’ を求める–Model-1 の時は p(e | j ) for all e, j

• ある単語 j が e に翻訳される確率

• 使えるのはパラレルコーパスのみ–アライメント A の情報はついていない–もしわかったら単にペアの回数を数えるだけ

p(e| j ) = (e と j が翻訳ペアだった回数 ) / (j の回数 )

• A は観測できない隠れ変数 ⇒ EM アルゴリズムを使う

Page 16: PFI seminar 2010/05/27 統計的機械翻訳

Expectation Maximization アルゴリズム (EM 法 )

• 教師無学習の基礎中の基礎• A はわからないが、 A が無いと回数が数えられず、 θ を求められない

1. A の確率分布 p(A) を適当に決める2. p(A) に基づいて回数の期待値を求める3. θ を元に p(A) を再推定する4. 2 へ戻る  動的計画法によって O( 文長 2) で解ける

Page 17: PFI seminar 2010/05/27 統計的機械翻訳

デコーディング

• 「ねんがんの  p(J|E) をてにいれたぞ!」

• 後は arg maxE P(J|E) P(E) を求めれば良い• しかし、この問題は NP 完全問題であるこ

とが知られている • 探索問題–各状態は ( 翻訳済の元単語 , 翻訳された単語 )–遷移は未翻訳の単語を翻訳したスコア–全ての翻訳元が空になれば終了状態

Page 18: PFI seminar 2010/05/27 統計的機械翻訳

理想と現実 (1/2)

• さきほどまできれいな話だったが・・• P(J|E) P(E) だけでなく P(E|J) も使っちゃう–だけでなく他の情報も全部使っちゃう–きれいな確率モデルでは、もはやない– fi = log P(J|E) など (J, E) から得られる情報を全て特徴ベクトル Φ(J, E)∈Rm に入れる [Chiang+ 09]

–線形モデルで学習・推定する wTΦ(J, E)• 学習には MIRA などが利用される• BLEU( 翻訳精度・後述)を最大化するよう学習

Page 19: PFI seminar 2010/05/27 統計的機械翻訳

理想と現実 (2/2)

• P(E) : 翻訳先 E を出力する確率–文法的・用法的に正しい文 E に対し高い確率

を与える– P(“ipad がまだ届きません” ) >

P(“届き ipad がませんまだ” )

• 利用される言語モデルはまだ非常に粗い– N-gram モデル N-1 単語前にのみ条件付

P(w1w2w3w4) = Πi P(wi|wi-N+1wi-N+2 .. wi-1)

–非文に対しても高い確率を与えうる

Page 20: PFI seminar 2010/05/27 統計的機械翻訳

話せなかった最近の話題

• フレーズモデルが今は普通–翻訳元・翻訳先が複数単語 など–フレーズは非連続でも良い [Galley+ 10]

• Synchronous CFG で構文情報も利用可能–遅い . が高速化が進む [C. Dyer+ 10]

• アライメントの精緻化・高速化– p(E|J) P(J|E) を両方使う [Liang+ 06] etc.

– SA などの利用 [Lopez 07] etc.

–単言語コーパスから取得 [Haghighi+ 08] etc.

Page 21: PFI seminar 2010/05/27 統計的機械翻訳

翻訳精度の評価

• プロ翻訳家の間でも正解は大きく異なる• 翻訳結果の評価もばらつきが大きい• 人手による評価は非常にコストが高い–システムをつくり直すたびに評価は大変

• BLEU: 複数の正解例との N-gram マッチ–自動で評価できる .  人の評価と相関が高い–今の翻訳システムは BLUE を最大化するように

パラメータ学習をするようにしている

Page 22: PFI seminar 2010/05/27 統計的機械翻訳

オープンソース

• Moses– http://www.statmt.org/moses/–基本的な機能は一通り

• cdec– http://cdec-decoder.org/index.php– C++ と 様々な高速化により最速–最新の手法が一通り入っている 機能は不足

• joshua– SCFG base で grammer抽出とかもサポート

Page 23: PFI seminar 2010/05/27 統計的機械翻訳

機械翻訳の今後

• 日本語 多言語について– Google は人材募集 + 何でもやる [NLP2010 個人談 ]

–今の SMT モデルは日本語に不向きと言われるがSCFG があっているかも微妙 .   別のモデル?

• 世界的な流れ–翻訳のベンチャー + サービス会社が牽引–市場は拡大 ビジネスモデルは B2B   サービス

• 英西翻訳など ヒスパニック系人材向け–音声認識 , 検索など他のサービスと結合

Page 24: PFI seminar 2010/05/27 統計的機械翻訳

出展[Broun+ 93] “The Mathematics of Machine Translation: Parameter Estimation”, P. F. Brown and et. al. Computational Linguistics 1993[Chiang+ 09]“11,001 new features for statistical machine translation”, D. Chaing and et. al. NAACL 2009[Galley+ 10] “Accurate Non-Hierarchical Phrase-Based Translation”, M. Galley and C. D. Manning NAACL 2010[Dyer+ 10] “Two monolingual parses are better than one (synchronous parse)” C. Dyer NAACL 2010[Liang+ 06] “Alignment by agreement”, P. Laing and et. al. NAACL 2006[Lopez 07] “Hierarchical Phrase-Based Translation with Suffix Arrays”, A. Lopez, EMNLP 2007[Haghighi+ 08] “Learning Bilingual Lexicons from Monolingual Corpora”, A. Haghighi+ ACL 2008