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