機械翻訳 昔の機械翻訳 統計的機械翻訳 翻訳の評価 昔の機械翻訳 入力文:私はりんごを食べた。 形態素解析構文解析 noun verb noun subj predicate object 意味解析 (action=食べる, agent=私, target=りんご, time=past) 英語の語彙に変換(つまり意味表現のレベルないしはそれ に近い深さで変換 対訳辞書利用 (action=eat, agent=I, target=an apple, time=past) 構文および形態素の生成(語順の変換)して翻訳出力を得る。 対訳辞書利用 noun=I, verb(past)=ate, noun=an apple 出力文: I ate an apple. 昔の機械翻訳 意味のレベルで精密に日英が同一であることが前 提だった。 また、形態素解析、構文解析、意味解析が正確に 動作すると想定している。 しかし、なかなかそうとも言い切れない 意味レベルでの概念が一致しない例 湯 hot water、 もったいない? 、 checkという習慣が日本にない! 対訳辞書 日本語意味 りんご APPLE 意味英語 ALLPE if bear noun or singular: apple if plural: apples 単数の場合には an apple,複数なら applesを 選ぶのは、構文および形態素のレベル 少し前の機械翻訳:example based machine translation 翻訳対の例文が類似検索可能な形でデータベース化 例:私はみかんを食べた。 I ate an orange. 入力文:私はりんごを食べた。 翻訳対データベースから類似した日本語例文を検索 私はみかんを食べた。 違っている部分みかんをりんごに置き換え さらに日英辞書でりんごをan appleに置き換え 結果出力:I ate an apple. 当然ながら、冠詞の選択などは文法規則によって行う。つ まり、相当程度に従来の構文規則や、形態素解析技術と 共同することになる。 少し前の機械翻訳:example based translation 類似検索の部分が重要。ここで構文解析を使 うことも可能だが、だんだん古典的な機械翻 訳に近づく。 翻訳対を集めれれば集めるほどが翻訳の質 があがる。 この収集作業は機械的にできる。 統計的機械翻訳 Statistic Machine Translation (SMT) 言語的知識を全く使わずに対訳を得る。アンチ言語学理論 2言語並行コーパスが蓄積 文どうしの対応付けされた aligned corpus これを使って単語や句どうしの対応付け、すなわち対訳を自 動的に抽出 文同士の対応はあるが、単語列同士の対応は不明 探索空間が膨大 IBMの Peter Brown,S. Della Pietra, V. Della Pietra, Robert Mercerらの1993年のComputational Lingusiticsの超有名かつ 超難解な論文“The Mathematics of Statistical Machine Translation:Parameter Estimation”を中心に解説 Bayesの定理 Canadian Hansard : French-English Bilingual corpus フランス語の単語列:f に対して妥当な英語 の単語列 : e を求める なお、以下ではf,eは単語あるいは句、f,eは文。 e^=arg maxePr(e|f) 種々のfに対応しそうなeはやたらと多い!! Given French string: f, find then P r(e|f ) P r(e)P r( f|e) P r( f ) ^ e argmax P r(e)P r( f|e) e なぜPr(e|f)ではなく、Pr(f|e)×Pr(e)か? 対訳コーパスの対訳文はやはり少数 無尽蔵に多くあるフランス語の文(文字列) f に対して、対応すべき正しい英語を求めるの が目的 Pr(e|f)直接では、正しい英文eに高い確率が 割り当てられる可能性が低い。 正しい英文という要因を直接考慮するために Pr(e)を別個の情報源から得て利用する。 Alignmentとは? • The1 poor2 don’t3 have4 any5 money6 • Les1 pauvres2 sont3 demunis4 (Les pauvres sont demunis | The(1) poor(2) don’t(3,4) have(3,4) any(3,4) money(3,4)) =A(e,f)=a さて、いよいよ難解な論文の説明のさわり • フランス語vs英語の対訳コーパスを用いて 英単語列eがフランス語単語列fに翻訳される確 率t(f|e)を対訳コーパスから評価する方法 フランス語単語列fが英単語列eに 翻訳される確率t(f|e)を求める。 1. 2. t(f|e)の初期値を適当に決める 対訳コーパス中のS個の対訳文f(s),e(s) :1=<s =<S各々の 組(f(s),e(s)), に対して、efの翻訳回数の期待値 t( f | e) c( f | e; f , e ) ccorpus ( f | e; f (s) , e(s) ) t( f | e0 ) ... t ( f | el ) (s) (s) を計算する。 ccorpus(f|e; f(s),e(s)) の値は f,e がf(s),e(s)の対訳の組に出現したときだ け0でない。また、ei (i=1,..,l)は対訳英文の各単語、lは 対訳文に含まれる英単語の語彙数 フランス語単語列fが英単語列eに 翻訳される確率t(f|e)を求める。ーつづき 3. もうひとつの重要な式 t ( f | e) を すると左辺が1になるので、 f S 1 e s 1 c( f | e; f (s)e(s) ) S e c( f | e; f (s) , e(s) ) f s 1 このλeの値を用いてt(f|e)の新たな値を推定する。 t ( f | e) S s 1 S f 4. c( f | e; f (s) , e (s) ) s 1 c( f | e; f (s) , e (s) ) t(f|e)が収束するまで2,3を繰り返す。 このような繰り返し方法で未知の確率を推定する方法を Expectation and Maximization(EM)algorithmと言い、情報科学の基本のひと つ。 もう少し本格的に説明 まず記法 • Alignmentも考慮したPr(f,a|e) Pr(f | e) Pr(f, a | e) a e e1l e1e2 ....el where l f f1m f1 f 2 .... f m where a a1m a1a2 .....am , where English m f, e は文字列 a は alignment words french words aj i f i , ea j は単語 m Pr(f, a | e ) Pr(m | e) Pr(a j | a1j 1 , f1 j 1 , m , e) Pr( f j | a1j 1 , f1 j 1 , m , e) 1 • 以後はPr(f,a,|e)を評価する方法 IBM Model 1 このモデルでは、英、仏文の単語の出現順序には相関 がないとしている。-(1) また対訳は個々の単語にだけ依存する-(2) P r(m | e) j 1 1 P r(a j | a j 1 1 P r( f j | a , f1 , f1 P r(f, a | e) j 1 , m, e) (l 1) j 1 , m, e) t ( f j | ea j ) (l 1) 1 m m t( f j | ea j ) (1) (2) (3) 1 f, e は文字列 a はalignm ent f i , ea j は単語 Model 1 • このモデルでは、Alignment aj は0から m の任意の値をとる。ラグランジュ未定乗数 法によってPr(f|e)を最大化する。 Pr(f | e) (l 1) m constraint: l m l ... t ( f a10 j (4) | ea j ) a m 0 1 t( f | e ) 1 この項を2種類の方法で書き換 えて等しく置くとことがミソ f h(t , ) (l 1) m l m l ... t ( f a10 am0 j 1 h 0 t ( f | e) (l 1) m l j | ea j ) e e l m ... a1 0 ( t ( f | e ) 1) am 0 j 1 (5) f ( f , f j ) (e, ea j )t ( f | e) 1 m t( f k 1 k | eak ) e (6) t ( f | e) 1 e l (l 1) m l ... ( f , f a1 0 m m am 0 j 1 j ) (e, ea j ) t ( f k | eak ) k 1 m e 1 P r(f, a | e) ( f , f j ) (e, ea j ) (7) ミソ その1 j 1 a m c( f | e; f, e) P r(a | f, e) ( f , f j ) (e, ea j ) (8) j 1 a • c(…) とは翻訳(f|e)において、英単語e が フランス語単語 f に翻訳される回数。2番目の∑はあるalignment a におい てf,eの接続回数。 P r(a | f, e) P r(f, a | e) /P r(f | e) f, a, e m c ( f | e; f, e) P r(f, a | e) ( f , f a j 1 j は文字列 ) (e, ea j ) P r(f | e) t(f | e) e1 P r(f | e)c ( f | e; f, e) - (10) (9) t(f|e)を求めるまではもう一工夫 t ( f j | eai ) l l m ... t ( f a10 ミソ その2 は、単項式だから am0 j 1 m j l | ea j ) t ( f j | ei ) (11) j 1 i 0 例 t10t20 t10t21 t11t20 t11t21 (t10 t11 )(t20 t21 ) これによると Pr(f | e) (l 1) m m l t( f j 1 i 0 j | ei ) (12) ミソ その2 (12)式を使っ てh(t,λ)の第1項を書き換え た! そこで、またラグランジュ未定乗数法で const raint: t ( f | e ) 1 f h(t , ) m (l 1) m h 0 t ( f | e) l t( f j 1 i 0 j | ei ) e ( t ( f | e ) 1) l e m (l 1) m t ( f j | ei ) f l t( f j 1 (13) i 0 j m l j 1 i 1 | ei ) ( f , f j ) (e, ei ) e (14) i 0 by(14)and(12) P r(f | e) (l 1) m m l t( f i 0 j 1 j | ei ) l e1 P r(f | e) t( f i 0 m by(10)(15) | ei ) l ( f , f ) (e, e ) j 1 again t(f | e) e1 P r(f | e)c( f | e; f, e) j j i 0 15 i - (10) m l t ( f | e) c( f | e; f, e) ( f , f j ) (e, ei ) (16) t ( f | e0 ) ... t ( f | el ) j 1 i 0 m l ( f , f ) (e, e ) j i • (16)式の j 1 の部分は(12)式からfとeの接続回 i 0 数になることが分かる。(alignment aがないのでこの式)下図参照。 f= f1, f2(=f), f3, ..,f7(=f), …. Fm e1(=e) * * e2 e= : e8(=e) * * : el • 教師データとしてS個の翻訳 (f(s)|e(s)) s=1,…,Sがコーパスから知られてい るので、以下の式を使う。 S (s) (s) s 1 c( f | e; f e ) いよいよEMでt(f|e)を推定-1 1. t(f|e)の初期値を適当に決める 2. 各(f(s),e(s)), 1=<s =<Sに対して、 m l t ( f | e) c( f | e; f,e) ( f , f j ) (e, ei ) t ( f | e0 ) ... t ( f | el ) j 1 i 0 を利用してc(f|e; f(s),e(s))を計算する。 この値は f,e がf(s),e(s)の要素のときだけ0 でない。 いよいよEMでt(f|e)を推定-2 3. t ( f | e) S 1 e s 1 c( f | e; f (s)e(s) ) 左辺が1になるので、 を f すると S e c( f | e; f (s) , e(s) ) f s 1 このλeの値を用いてt(f|e)の新たな値を推定する。 S t ( f | e) s 1 S f c( f | e; f (s) , e (s) ) s 1 c( f | e; f (s) , e (s) ) (ただし、 λe をλePr(f|e)と置き換えた)。 4. t(f|e)が収束するまで2,3を繰り返す。 Model 2 • Alignmentが位置に依存する。つまり、 a (a j | j , m, l ) P r(a j | a1j 1 , f1 j 1 , m, l ) が j aj m l に依存 l a(i | j, m, l ) 1 i 0 l then l m P r(f | e) ... t ( f j | ea j )a(a j | j , m, l ) a1 0 am 0 j 1 ラグランジュ h(t,a, , ) P r(f | e) e ( t ( f | e) 1) jml ( a (i | j , m, l ) 1) e f j i ラグランジュ未定乗数法でhを微分し計算すると t ( f | e) 1 e m P r( f,a | e) ( f , f ) (e, e j ) j 1 a c ( f | e; f, e) j m P r(a | f, e) ( f , f j 1 a j ) (e, ea j ) t ( f | e) e 1 P r( f | e)c( f | e; f, e) t ( f | e) e 1 P r( f | e) S c ( f | e; f (s) e (s) ) s 1 ここまでは同じだが、 c (i | j , m, l ; f, e) さらに意味的に考えて P r(a | e, f ) ( i,a j ) a a (i | j , m, l ) 1 jml S c(i | j, m, l; f (s) , e (s) ) s 1 注: P r(a | f , e) P r( f | e) P r(a, f | e) jml P r( f | e) jml Model 1と同じように計算し • Model 1 では(l+1)-1 だったa(i|j,m,l)をModel 2 で は変数と見ているので、 m l Pr(f | e) t ( f j | ei )a( i | j , m , l ) j 1i 0 m l c( f | e; f, e) j 1i 0 t ( c( i | j , m , l ; f, e) t ( f | e )a( i | j , m , l ) ( f , f j ) (e , ei ) f | e0 )a(0 | j , m , l ) .... t ( f | el )a( l | j , m , l ) t ( f j | ei )a( i | j , m , l ) t ( f j | e0 )a(0 | j , m , l ) .... t ( f j | el )a( l | j , m , l ) • 後は同じくEMアルゴリズムでt(f|e)を求める • 初期値にはModel 1の結果を用いる。 Model 3 • 1単語がn単語に翻訳 not => ne … pas • n=0(翻訳されない) 冠詞は日本語にはな い。 • 対応する単語の出現場所がねじれる – 日英での語順の差 • こういった現象に対応するモデル • 繁殖確率 n(φ|e): 英語単語eがφ個のフラ ンス語単語に接続される確率 • 翻訳確率t(f|e):英語単語eがフランス語単 語fに翻訳される確率 • 歪確率d(j|i,m,l):英文長さl,フランス文長さ m,英文の単語位置iがフランス文の単語位 置jに接続される確率 • 空の英単語の繁殖数=φ0 • 空でない英単語から生成されたフランス語単 語の後に空から生成されたφ0個の単語が確 率p1で挿入されるとすると、 1 .. l 1 ..l 0 0 p0 P r(0 | , e) p1 0 p0 p1 1 l 1 m i 0 i m 以上の準備の下 l l a1 0 am 0 Pr(f | e) ... Pr(f,a | e) l l a1 0 am 0 ... m 0 m 20 0 l p0 p1 i !n(i | ei ) i 1 0 m t( f j 1 j | ea j )d ( j | a j , m, l ) (32) • (32)式を用いて、n,t,d,p0,1に関する各々の 総和=1の確率による条件をつけてラグラ ンジュ未定乗数法で Pr(e|f) を最大化すれ ばよい。 • しかし、model1,2と異なり和積の交換がで きないので、直接計算する。 • 組み合わせの数が多いので、ビタビ法で 近似計算する。 機械翻訳評価尺度についての議論 近年、MTの評価尺度として頻繁に使用され ているBLEUが人間が見て良い訳文を良い 訳文と評価するのかが疑問視されている。 例えば、SYSTRANのようなルールベースMTの 結果のBLEU値は悪いが、人間が見ると悪くな い、という場合もある。 もう一つの問題としてSMTが良い訳文を生 成しているのか、という問題がある。 代表的なMT評価尺度(1) BLEU 4 1 BLEU BP exp log n 1 4 BP 1 if 翻訳i文と参照訳 iで一致した n gram数 機械翻訳 i 文内の全 n gram 数 i i 機械翻訳が参照訳より 長い 参考訳長 otherwise exp 1 機械翻訳長 WER(word error rate) 機械翻訳文と参照訳との編集距離を正規化した値 挿入語数i 削除語数i 置換語数i W ER 1 参照訳iの語数 i i 代表的なMT評価尺度(2) PER(position independent WER) 機械翻訳iと参照訳 iの一致語数 i PER 1 参照訳iの語数 i GTM(General Text Matcher) 機械翻訳文と参照訳との最長一致単語列の集 合:MMS MMS( 機械翻訳文i, 参照訳i ) , 機械翻訳文iの語数 2 pre recall GTM pre recall pre recall MMS( 機械翻訳文i, 参照訳i ) 参照訳iの語数 評価尺度とMT方式の関係 この議論を整理すると、評価尺度とMT方式の 関係を分析する必要性も浮かび上がる ルールベース翻 訳(RMT) 統計翻訳 (SMT) 良い?? BLEU 悪い?? 人間の評価 けっこう良い 代替尺度 良いところは良いと評価する尺度 がほしい 部分的な訳は 良い 特許文に対するSMTの評価 利用データ:JAPIO提供の公開特許公報要約/P AJ対訳データ(1993年から2004年までの12年分。G 06分野77万文で学習、1000文でパラメータ調整、 500文で評価 フレーズベースSMT 入力文をフレーズ(翻訳する上で固定的に扱える単位)に 分割SMTは短い表現の翻訳に強い 各フレーズを統計翻訳 フレーズ順序を統計的に調節 動作例 個々のフレーズは統計翻訳で求める Tommrow 明日 I will go Φ 日本の to the conference 会議に in Japan 行きます 機械翻訳のMT評価尺度による評価 BLEU 0.2713 WER 0.848 PER 0.452 GTM 0.881 MT2006(NIST主催)でのBestな BLEUは0.35。 よって、特許翻訳ではフ レーズベースSMTはかなり期待できる。 レポート課題 1 NHKのニュースサイト http://www.nhk.or.jp/ に行くと、その日のニュースとその英語版ニュース http://www.nhk.or.jp/nhkworld/ が掲載されています。 一方、Google翻訳では、日英翻訳ができます。これは、統計ベー スの翻訳。IBMモデルとかかぎらないかもしれない。 また、Yahooでも翻訳サービス http://honyaku.yahoo.co.jp/ があります。 日本語NHKニュースの英語翻訳結果を参照訳として、Google翻訳 の結果とYahoo翻訳の結果のBLUE値を計算してください。そして、 BLUE値と、実際の読みやすさ、理解しやすさを検討して、レポート してください。 BLUE値の計算は手計算でけっこうですが、大変ですから短い ニュースを対象にしてもらってよいです。 もし、機械的に処理できる方は、長いニュースにトライしてください。 レポート課題 2 Statistical Machine Translation に関するIBM model1-5を提案 した論文 Peter E. Brown; Stephen A. Della Pietra; Vincent J. Della Pietra; Robert L. Mercer The Mathematics of Statistical Machine Translation: Parameter Estimation (Computational Linguistics, Volume 19, Number 2, June 1993)を読み、 (1)model2 (2)model 3 (3)model4 の各々について説明せよ。論文は下記のURLからダウンロー ドできる。 http://www.aclweb.org/anthology-new/J/J93/J93-2003.pdf 自然言語処理の歴史的変遷 参考:辻井潤一「ことばとコンピュータ」月間言語に2000年に連載 Top down vs Bottom up 合理主義 vs 経験主義 陥りがちなことは、 現実のデータを見ない理論(TopDown) 理論的方向性のないデータ集積(BottomUp) 機械翻訳の研究の歴史を例に T vs B の葛藤 の様相を示そう。 Bottom Up 旧世代:構造主義 思弁的だった言語学を科学にしようとした試み 収集した言語データを主観を排して??観察し、言 語の本質的要素を明らかにする。 動詞の接尾辞「て」vs「で」 同じ「て」だが、鼻音の動詞「死んで」の後では「で」になる。 鼻音 vs 非鼻音 という相補分布でなければいけない。 最小対(minimal pair)の考え方: しかし、「死んで」と「生きて」を同じカテゴリーだと見 るのは全く主観を排して議論できるのだろうか。 合理主義 出発点:言語から独立した計算のモデルを想定 できるだけ単純なモデルが見通しがよい。 言語を実世界から切り離したソシュール的アイデア 最初はパフォーマンスが悪いが、いずれはBottomUpシステ ムを上回る。BTは現実のデータしか見ないから、予測能力が 低いのだ。 しかし、最初のモデルが外れだったら? チョムスキーの個別言語に依存しない言語理論(普遍文法) に依拠 言語だけを相手にしたとき、自立した言語のモデルは構文論 が最適 移行派原理主義:transfer fundamentalist 下図のどこかのレベルで言語Aから言語Bに移行する。 移行するレベルにおいては、言語Aと言語Bの表現の間で変 換対応表を作れる(という信念) たとえ対応表が膨大でも 言語独立な表現(=意味??) 深層格表現(動作主、経験者 etc) 構文構造表現 句構造表現 単語列 言語Aの文 言語Bの文 移行派原理主義の問題点 レベルが上がるにつれて構造が大きくなる。それでも言語 AからBへ移行できるのは、 部分の意味は一度決まると、それを組み合わせるこ とで全体の意味が決まるという構成性原理を前提に してるからなのだが…… 言語A,B間で単語の対応は一意的でない。 湯、水 water 一方の言語にしか存在しない文法的性質や機能語 あり 冠詞、名詞の性 それでも複雑な変換表を作ればなんとかごまかせるかも 移行派原理主義の問題点 最も深刻なのは 意味の文脈依存性 名詞の単数、複数の区別のない言語Aからある言語Bへ 変換するには、文脈情報が必要。しかも文脈の数は無限。 デフォールトを単数に変換し、文脈で証拠が出れば複数 と変換。 「けっこうです」”thank you” or “no thank you” デフォールトでは解けない!? 記号について -- 少し視野を広げ人工知能の視点から-記号と公理系から閉じた知識体系を作る(前 記ヴィトゲンシュタイン) 記号はそれ自体でひとつの存在。記号を用いた 推論は、想定する集合上での操作として定義でき る(外延的論理) 80年代までの人口知能はこの路線だった。なにし ろ、入出力が貧弱で計算機の外側の世界と通信 できなかったから しかし、限定目的の貧弱なシステムしか作れ なかった。(エキスパートシステム) 80年代後半から外界とのインタラクションが 重視されるようになった。 ロボットにおける subsumption architecture 分散知能 エージェント(これは現在ではソフトウェア工学) 文脈情報を考慮した記号処理への動き 文脈情報を考慮した記号処理へ の動き 記号は、 a. コアになる意味 b. 文脈に依存した、つまり言語使用における意味 からなる。 そこで、b.を考慮するために事例を大量に集めて事例 ベース翻訳が考案された。 翻訳事例 「太郎は小説を読んだ」 vs “Taro read a novel” には太郎=人間、小説=文字メディア、という文脈によって「読む」 を規定する力あり。 しかし、それにしても個々の単語のコアな意味は予め与え ないと動かない。 単語の意味 単語の意味を要素に分解して表現する方法(80年 代) Kill = cause (someone (alive death)) 何を基本要素におけば十分なのか? 90年代以降の主流は その単語が使われた文脈に共起する単語で意味の 曖昧さを解消する。 大規模コーパス(20ヶ月分のNYタイムス)で、 capital の 資本、首都の意味の曖昧さ解消などが90%の精度でで きた。 未知語の翻訳も文脈に共起する単語の類似性を使って 推定する方法が提案されている。 経験主義あるいはデータ主義 文脈あるいは言語使用における意味というデータ主 導の方法をもっとラディカルにするのが経験主義 IBMの統計的機械翻訳(90年代初頭) 人間でも気がつかないような英仏の言い回しの翻 訳を純粋に機械的手法(統計的機械学習)で発見し た。 EM, ビタビ探索など 大量のメモリと高速な計算機 大量の質のよい翻訳文の対(教師データ) これがなかなか簡単に入手できない 現実には、質の悪い翻訳対データでなんとか しないと 対訳でない場合。同じ内容について、あるいは同 じトピックについての述べている2言語コーパス 基本語彙の辞書くらいはある 計算機は早いし、記憶容量も大きいとは言え 機械学習パラダイムもなんとなく出尽くした?? 人間との共同作業?? 補遺:2言語コーパスから の対訳抽出 二言語コーパスからの対訳抽出 -- Aligned corpus の場合-Parallel Corpus(平行、対訳コーパス) Aligned Corpus: 種々の研究あり。要はどのようにして 2つの言語のコーパスにおける文、単語、複合語、句 を 対応付ける(align) するかに集中。 90年代前半にきれいな2言語対訳コーパスを対象に した多数の研究があり。 90年代後半に、Noisy Parallel Corpus への展開が試 みられた (Fung94,Fung98) 対訳コーパスからの対応文のペアを求める Gale and Church 1993 2言語の文書 S,Tから対応付け(Alignment) A を求める。 SとTの対応する文のペアを bead という。 例 B=(言語 language), B=(les eaux mineral, mineral water) Alignment=argmaxA P(A|S,T)= argmaxA P(A,S,T) Bkは 文書先頭からk番目の構造(名詞句などのよう なもの) P ( A, S , T ) k 1 P( Bk ) K 対訳コーパスからの対応文のペアを求める 例 B=(言語 language), B=(les eaux mineral, mineral water) Align arg max A P ( A, S , T ) arg max A k 1 P( Bk ) K これらから分かるように、よい対応付けは、単 語やcollocationレベルでの2言語での対応付 けから得られる構造: Bkの確からしさP(Bk)が大き いものを集めて作る。 具体的なアルゴリズムはDPによる 対訳コーパスからの対応文のペアを求める このようにして、文内部の対応がうまく付く文同士が 高い対応付け確率を持つとする。 文書同士で文同士が高い対応付けを持つペアを連 ねるように選ぶと対応文ペアが求まる。 文書を構成する各文同士の対応付けもまた、文の対応付 け確率を用いたDPによる。 構造を作る単語同士の対訳の他に、文の長さが類 似しているほど、よく対応する文のペアと考える方法 も加味できる。 Aligned corpus からの 単語やcollocation 対訳抽出の概要 対訳判定の尺度: 各言語の対訳文毎に対訳かどうか判定した い表現w1,w2(=各言語から抽出された表現) が出現する文としない文を数える。 w1,w2 が対訳文の出現する確率による。ただ し、この確率=0ならEMアルゴリズムで推定。 Kupiec93 w1,w2の相互情報量 Haruno93, Smadja96 w1,w2のDice係数 Smadja96 ヒュ-リスティック 語の共起とその有意さの尺度 あるテキストの単位(文、段落など)へのW1(言語A),w2 (言語B)のcontingency matrix (頻度) a+b+c+d=N W1出現 W1非出現 W2出現 a c W2非出現 b d 相互情報量 MI (w1, w2) log P( w1, w2) log P( w1) P( w2) Dice係数 Dice( w1, w2) 2a ( a b) ( a c ) aN (a b)(a c) Champollion ( Smdja et al 96) Translating collocations: based on sentence aligned bilingual corpus 1つの言語においてXtractで collocation を抽出 相手側の言語の対応文である統計的フィ ルタをパスするような分布で出現している collocation を対訳とする。 フィルタとしては、相互情報量、Dice係数を 比較した結果、 Champollion Dice係数は、X=0,Y=0(双方の言語の文に collocationの要素がない場合)に影響され ないので、精度が高いので、これを使う。 2 freq( X 1,Y 1 ) Dice( X ,Y ) freq( X 1 ) freq( Y 1 ) 大雑把には collocation (の要素たち)の Dice係数が閾値以上のもののみを残す。 なお、極端に出現頻度の低い要素語は捨 てる。 Champollion Canadian Hansards (50MB order) 3000, 5000 collocations extracted by Xtract 中頻度の300 collocations で評価 Xtractのerror rate = 11% Incorrect translations = 24% Correct translations = 65% Champollion’s precsion = 73% 二言語コーパスからの対訳抽出 -- non aligned corpus の場合-基本的方法は、まず双方の言語で用語あ るいは collocation を抽出し、次に何らかの 方法で対応をつけようとする。 非平行な同一分野の2言語コー パスからの訳語抽出 • Non-parallel comparable corpora • Similarity of context is cue. • • ab X cd a’ b’ Y c’ d’ language A language B • Calculation of contexts similarity is heavy
© Copyright 2024 ExpyDoc