Download - 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP
![Page 1: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/1.jpg)
統計的機械翻訳入門 その2 ~フレーズベース編~
#tokyonlp @nokuno
![Page 2: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/2.jpg)
自己紹介 • @nokuno / id:nokuno
• #TokyoNLP主催 • Social IME / StaKK開発者 • Web系ソフトウェアエンジニア
![Page 3: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/3.jpg)
近況報告
![Page 4: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/4.jpg)
Speller Challengeで 入賞しました
![Page 5: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/5.jpg)
ICML読み会 &
ACL読み会 やります
![Page 6: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/6.jpg)
今日の内容
1. IBM Model [1-5]の復習 2. アライメントの拡張 3. フレーズベース機械翻訳 4. 色々な拡張
![Page 7: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/7.jpg)
参考文献
• 機械翻訳の教科書 • 5章を中心に • http://amzn.to/hIvoo6
![Page 8: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/8.jpg)
IBMモデルの復習
![Page 9: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/9.jpg)
統計的機械翻訳とは • 入力: • 出力: • アライメント: • 単語 が単語 に対応
![Page 10: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/10.jpg)
NoisyChannelモデル • 言語モデル×翻訳モデルに分解
• 対訳コーパスから翻訳モデルを学習
(4.23)
![Page 11: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/11.jpg)
IBMモデル1 • 文の翻訳を語彙の翻訳に分解
• アライメントaは隠れ変数 (4.7)
![Page 12: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/12.jpg)
EMアルゴリズム • Eステップ
• Mステップ (4.11)
(4.14)
(4.13)
![Page 13: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/13.jpg)
人工的な例
![Page 14: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/14.jpg)
IBMモデル2 • アライメントにも確率分布を考える
• 語彙の確率分布tと組み合わせる
(4.25)
![Page 15: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/15.jpg)
IBMモデル2 • 語彙の翻訳とアライメントの ���
2ステップモデル
t:語彙の翻訳
a:アライメント
![Page 16: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/16.jpg)
EMアルゴリズム • IBMモデル1と同様の計算が可能
• アライメントの頻度も求まる
(4.26)
(4.28)
i
i
![Page 17: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/17.jpg)
高次のIBMモデル • IBMモデル1: アライメントは一様分布 • IBMモデル2: 絶対アライメントを追加 • IBMモデル3: 単語数の増減を追加 • IBMモデル4: 相対アライメントを追加 • IBMモデル5: 単語の欠損を追加
上位のモデルは下位のモデルを 初期値として再学習
![Page 18: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/18.jpg)
IBMモデル3 • 4つのステップを経て翻訳するモデル
単語数の増減
NULL挿入
語彙の翻訳
位置の並べ替え
![Page 19: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/19.jpg)
アライメントの拡張
![Page 20: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/20.jpg)
モチベーション • アライメントを単独で評価したい • 後のフレーズベースで使いたい • アライメントの推定にはIBMモデルを利用可能だが…
• IBMモデルでは一対多のアライメント • 多対多のアライメントはフレーズベースで
![Page 21: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/21.jpg)
アライメントの表現
![Page 22: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/22.jpg)
アライメントの対称化
![Page 23: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/23.jpg)
アライメントの評価 • 正解セットを使った正解率
• S (Sure): 完璧なアライメント • P (Possible): まあまあのアライメント
※AER=Alignment Error Rateのはずが、誤植で逆の意味に
![Page 24: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/24.jpg)
フレーズベース���機械翻訳
![Page 25: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/25.jpg)
モチベーション • IBMモデルは単語単位で翻訳する • 単語より長いフレーズ単位で翻訳したい • アドバンテージ
• 多対多の関係を翻訳できる • リッチなコンテキストを考慮できる • データさえあれば非常に長いフレーズも学習できる
• Google翻訳でも使われている←本当?
![Page 26: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/26.jpg)
フレーズベースモデル • フレーズ単位で翻訳・並べ替えを行う • フレーズの定義は言語学的ではなく機械的
![Page 27: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/27.jpg)
フレーズ翻訳テーブル • 例:natuerlichに対する翻訳テーブル
![Page 28: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/28.jpg)
実際の例 • 例:den Vorschlagに対する翻訳テーブル
![Page 29: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/29.jpg)
確率モデル • IBMモデルと比べても、単位がフレーズになったくらいの違いしかない
• d: 距離に応じた並べ替え確率
(5.2)
![Page 30: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/30.jpg)
書いてないけど… • フレーズ分割の周辺化が必要 • 異なる分割で同じ翻訳になる確率を足す • Sを可能なフレーズ分割として、
![Page 31: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/31.jpg)
距離の計算方法
![Page 32: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/32.jpg)
並べ替え確率 • d(x)は単純には指数関数とか • 距離が遠いほど確率が低くなる
• ※日本語と英語だとうまくいかない
![Page 33: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/33.jpg)
フレーズベースの学習 • 問題設定:対訳コーパスからフレーズテーブルを学習する
• 以下の3ステップで学習 • 単語アライメントを推定する • 整合するフレーズペアを抽出する • フレーズの翻訳確率を推定する
![Page 34: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/34.jpg)
単語アライメント
![Page 35: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/35.jpg)
フレーズ抽出
抽出結果:assumes that / geht davon aus , dass
![Page 36: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/36.jpg)
整合性とは? • アライメントと「整合性のある」フレーズを抽出したい
• 「整合性」を定義すると…
![Page 37: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/37.jpg)
見たほうが早い • ルール1:隣り合う■はつながる • ルール2:全ての■がカバーされる
これはOK これはOK これはダメ
![Page 38: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/38.jpg)
フレーズ抽出方法
• 以下のステップでフレーズ抽出 • 最も小さなフレーズを見つける • フレーズをマージして大きなフレーズを見つける
• 文単位のフレーズになるまで続ける
![Page 39: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/39.jpg)
短いフレーズの例
michael assumes michael geht davon aus assumes that geht davon aus , dass that he dass er in the house im haus
![Page 40: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/40.jpg)
長いフレーズの例
michael assumes that he will stay in the house
michael geht davon aus , dass er im haus bleibt
assumes that he will stay in the house
geht davon aus , dass er im haus bleibt
he will stay in the house er im haus bleibt
![Page 41: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/41.jpg)
翻訳確率の推定 • 抽出したフレーズの相対頻度を取るだけ • 最尤推定…?
• フレーズも隠れ変数とみなしてEMアルゴリズムで解く方法もあるが遅い
(5.4)
![Page 42: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/42.jpg)
色々な拡張
![Page 43: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/43.jpg)
識別モデル • これまで言語モデル、フレーズ翻訳確率、並べ替え確率の3つのモデルを考えてきた
• これらを識別モデルで重み付けする
• 他の素性を加えられるようになった • これ以降は追加する素性の話
∝
![Page 44: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/44.jpg)
双方向の翻訳確率 • ベイズの定理で翻訳モデルを逆向きにしたが、順向きのほうが良い場合も
• 珍しい単語eと一般語fではφ(f|e)が不当に高くなりやすい
• 識別モデルの素性としてp(f|e) と p(e|f) の両方を突っ込んでしまう
![Page 45: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/45.jpg)
スムージング • 低頻度なフレーズを正確に評価したい • フレーズを構成する単語の翻訳確率を使ってスムージングする
• 単語の翻訳確率にはIBMモデルを使う
(5.9)
a: フレーズ内部のアライメント
![Page 46: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/46.jpg)
長さに対する罰則項
• 言語モデルは短い出力を好む 単語数:
• 長いフレーズが有利になりすぎる フレーズ数:
![Page 47: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/47.jpg)
語彙に基づく���並べ替え
• 距離に基づく並べ替えは貧弱 →語彙ごとに並べ替えを学習しよう!
• 並べ替えのパターンは多すぎる…
• 典型的な3タイプの並べ替えを考える
![Page 48: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/48.jpg)
3タイプの並べ替え
• m (monotne): 連続的 • s (swap): 隣同士の並べ替え • d (discontinuous): 非連続的
orientation
![Page 49: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/49.jpg)
並べ替え確率の推定 • 単語ペアごとのorientationの相対頻度
• スパースなのでスムージング
p(o): 語彙による条件がない分布
(5.11)
(5.13)
![Page 50: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/50.jpg)
まとめと感想 • IBMモデルは正当な確率モデル+最尤推定
• フレーズベースも確率モデルだが、フレーズ抽出はヒューリスティック
• ちゃんとした方法は遅いので近似する • 識別モデルはなんでもありのフレームワーク
![Page 51: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/51.jpg)
発表者を募集しております
![Page 52: 統計的機械翻訳入門 その2 〜フレーズベース機械翻訳〜 #TokyoNLP](https://reader033.vdocuments.net/reader033/viewer/2022061613/55660d29d8b42aa6628b5226/html5/thumbnails/52.jpg)
ご清聴ありがとうございました