昔の機械翻訳 統計的機械翻訳 翻訳の評価
DESCRIPTION
機械翻訳. 昔の機械翻訳 統計的機械翻訳 翻訳の評価. 昔の機械翻訳. 入力文:私はりんごを食べた。 形態素解析構文解析 noun verb noun subj predicate object 意味解析 (action= 食べる , agent= 私 , target= りんご , time=past) 英語の語彙に変換(つまり意味表現のレベルないしはそれに近い深さで変換 対訳辞書利用 (action=eat, agent=I, target=an apple, time=past) - PowerPoint PPT PresentationTRANSCRIPT
機械翻訳
昔の機械翻訳統計的機械翻訳翻訳の評価
入力文:私はりんごを食べた。
形態素解析構文解析 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 を選ぶのは、構文および形態素のレベル
翻訳対の例文が類似検索可能な形でデータベース化例:私はみかんを食べた。 I ate an orange.
入力文:私はりんごを食べた。翻訳対データベースから類似した日本語例文を検索
私はみかんを食べた。違っている部分みかんをりんごに置き換え
さらに日英辞書でりんごを an apple に置き換え
結果出力: I ate an apple.当然ながら、冠詞の選択などは文法規則によって行う。
つまり、相当程度に従来の構文規則や、形態素解析技術と共同することになる。
少し前の機械翻訳: example based machine translation
類似検索の部分が重要。ここで構文解析を使うことも可能だが、だんだん古典的な機械翻訳に近づく。
翻訳対を集めれれば集めるほどが翻訳の質があがる。この収集作業は機械的にできる。
少し前の機械翻訳: 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
は文。 Given French string: f, find e^=arg maxePr(e|f)
種々の f に対応しそうな e はやたらと多い!!
then ))Pr(Pr(argmax
)Pr(
))Pr(Pr()Pr(
^
f|eee
f
f|eee|f
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. t(f|e) の初期値を適当に決める2. 対訳コーパス中の S 個の対訳文 f(s),e(s) : 1=<s =<S
各々の組 (f(s),e(s)), に対して、 ef の翻訳回数の期待値
を計算する。 ccorpus(f|e; f(s),e(s)) の値は f,e が f(s),e(s) の対訳の組に出現した
ときだけ0でない。また、 ei (i=1,..,l) は対訳英文の各単語、 l は対訳文に含まれる英単語の語彙数
)e,f;|()|(...)|(
)|()e,f;|( (s)(s)
0
(s)(s) efcefteft
eftefc corpus
l
フランス語単語列 fが英単語列 eに翻訳される確率 t(f|e)を求める。ーつづき
3. もうひとつの重要な式 を すると左辺が1になるので、
この λe の値を用いて t(f|e) の新たな値を推定する。
4. t(f|e) が収束するまで 2,3 を繰り返す。
このような繰り返し方法で未知の確率を推定する方法をExpectation and Maximization(EM)algorithm と言い、情報科学の基本の
ひとつ。
)ef (s)(s)
1
1 ;|()|( efceftS
se
f
),;|( (s)
1
(s) ef f
S
se efc
f
S
s
S
s
efc
efceft
1
(s)(s)
1
(s)(s)
)e,f;|(
)e,f;|()|(
もう少し本格的に説明まず記法
• Alignment も考慮した Pr(f,a|e)
• 以後は Pr(f,a,|e) を評価する方法),,,|Pr(),,,|Pr()Pr(Pr(
,
.....
....
....
)Pr()Pr(
m
,
a
eeee|af,
aef,
a
f
e
e|af,e|f
11
11
11
11
1
211
211
211
mfafmfaa|m)
efalignment
iawhereaaaa
wordsfrenchmwhereffff
wordsEnglishlwhereeeee
jjj
jjj
jai
jmm
mm
ll
は単語はは文字列
IBM Model 1このモデルでは、英、仏文の単語の出現順序には相関がないとしている。-( 1 )
また対訳は個々の単語にだけ依存する-( 2 )
は単語はは文字列j
j
j
ai
ajm
ajjj
j
jjj
efalignment
eftl
eftmfaf
lmfaa
|m
,aef,
)3()|()1(
)e|af,Pr(
)2()|()e,,,|Pr(
)1()1()e,,,|Pr(
)ePr(
m
1
11
11
111
11
Model 1
• このモデルでは、 Alignment aj は0から m の任意の値をとる。ラグランジュ未定乗数法によって Pr(f|e) を最大化する。
)6()|()|(),(),(...)1()|(
0
)5()1)|(()|(...)1(
),(
1)|( :constraint
)4()|(...)1(
)e|fPr(
m
1
1
0 0 1
m
1
m
1
1
01 0
01 0
ek
ak
l
a
l
a
m
jajm
fee
l
a
l
a jajm
f
l
a
l
aajm
k
m
j
m
j
m
j
eftefteeffleft
h
efteftl
th
eft
eftl
この項を 2 種類の方法で書き換えて等しく置くとこと
がミソ
• c(…) とは翻訳 (f|e) において、英単語 e が フランス語単語 f に翻訳される回数。2番目の∑はあるalignment a において f,e の接続回数。
)8(),(),()ef,|aPr(e)f,;|(
)7(),(),()e|af,Pr(
)|(),(),(...)1(
)|(
1
1
1
10 0 1
1
1
m
jaj
a
m
jaj
ae
m
kak
l
a
l
a
m
jajme
j
j
k
m
j
eeffefc
eeff
efteeffl
eft
(10)-e)f,;|()e|fPr(
)9()e|fPr(
),(),()e|af,Pr(
e)f,;|(
ea,f,)e|f/Pr()e|af,Pr()ef,|aPr(
1
1
efce)|t(f
eeff
efc
e
m
jaj
aj
は文字列
ミソ その1
t(f|e) を求めるまではもう一工夫 は、単項式だから
例これによると
)11()|()|(...1 0
m
101 0
i
m
j
l
ij
l
a
l
a jaj efteft
m
j
)|(iaj eft
))(( 212011102111201121102010 tttttttttttt
)12()|()1(
)e|fPr(01
l
iij
m
jm
eftl
ミソ その2
)16(),(),()|(...)|(
)|(e)f,;|()15)(10(
(10)-e)f,;|()e|fPr(
15),(),(
)|(
e)|Pr(f
)|()1(
)e|fPr()12()14(
)14(),(),()|()|()1()|(
0
)13()1)|(()|()1(
),(
1)|( :constraint
1 00
1
1 0
01
01
1 101
0
01
m
ji
l
ij
l
e
m
j
l
iij
l
iij
e
l
iij
m
jm
e
m
j
l
iij
l
iij
m
jl
iij
m
fee
l
iij
m
jm
f
eeffefteft
eftefcby
efce)|t(fagain
eeff
eft
eftl
andby
eeffefteftleft
h
efteftl
th
eft
そこで、またラグランジュ未定乗数法でミソ その2 (12)式を使って h(t,λ )の第 1項を書き換えた!
• (16)式の の部分は(12)式から f と e の接続回数になることが分かる。( 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 がコーパスから知られているので、以下の式を使う。
m
ji
l
ij eeff
1 0
),(),(
)ef;|( (s)(s)
1
efcS
s
いよいよ EM で t(f|e) を推定-1
1. t(f|e) の初期値を適当に決める2. 各 (f(s),e(s)), 1=<s =<S に対して、
を利用して c(f|e; f(s),e(s)) を計算する。 この値は f,e が f(s),e(s) の要素のとき
だけ0でない。
m
ji
l
ij
l
eeffefteft
eftefc
1 00
e)f, ),(),()|(...)|(
)|(;|(
いよいよ EM で t(f|e) を推定-2
3. を すると左辺が1になるので、
この λe の値を用いて t(f|e) の新たな値を推定する。
(ただし、 λe を λePr(f|e) と置き換えた)。4. t(f|e) が収束するまで 2,3 を繰り返す。
)ef (s)(s)
1
1 ;|()|( efceftS
se
f
),;|( (s)
1
(s) ef f
S
se efc
f
S
s
S
s
efc
efceft
1
(s)(s)
1
(s)(s)
)e,f;|(
)e,f;|()|(
Model 2• Alignment が位置に依存する。つまり、
if jjml
ja
l
a
l
a
m
jj
l
i
j
jjjj
lmjiaeft
),a,h(t,
lmjaaeftthen
lmjia
lmaj
lmfaalmjaa
j
m
)1),,|(()1)|((e)|Pr(f
),,|()|(...)e|fPr(
1),,|(
),,,|Pr(),,|(
ee
0 0 1
0
11
11
1
ラグランジュ
に依存が
ラグランジュ未定乗数法で h を微分し計算すると
jmljml
S
sjml
aj
S
se
e
m
jaj
a
m
jjj
ae
ef
efaefefa
lmjiclmjia
a(i,)lmjic
efcefeft
efcefeft
eeffefc
eeffe|af,eft
j
)|Pr(
)|,Pr()|Pr(),|Pr(
)e,f;,,|(),,|(
)fe,|aPr(e)f,;,,|(
)ef;|()|Pr()|(
e)f,;|()|Pr()|(
),(),()ef,|aPr(e)f,;|(
),(),()Pr()|(
(s)
1
(s)1
(s)(s)
1
1
1
1
1
1
注:
さらに意味的に考えてここまでは同じだが、
Model 1 と同じように計算し
• Model 1 では (l+1)-1 だった a(i|j,m,l) をModel 2 では変数と見ているので、
• 後は同じく EM アルゴリズムで t(f|e) を求める
• 初期値には Model 1 の結果を用いる。
),,|()|(....),,|()|(
),,|()|();,,|(
),,|()|(....),,|()|(
),(),(),,|()|();|(
),,|()|()Pr(
lmjlaeftlmjaeft
lmjiaeftlmjic
lmjlaeftlmjaeft
eefflmjiaeftefc
lmjiaeft
ljj
ij
m
j
l
i l
ij
i
m
j
l
ij
0ef,
0ef,
e|f
0
1 0 0
1 0
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 で挿入されるとすると、
m
pp
ppe
m
ii
ll l
0
10
1..
00
110
1
..),|Pr( 001
以上の準備の下
)32(),,|()|(
)|(!...
e)|aPr(f,...e)|Pr(f
1
11
20
0
0
00
00
00
1
1
lmajdeft
enppm
ja
m
jj
ii
l
ii
ml
a
l
a
l
a
l
a
j
m
m
• (32 )式を用いて、 n,t,d,p0,1 に関する各々の総和=1の確率による条件をつけてラグランジュ未定乗数法で Pr(e|f) を最大化すればよい。
• しかし、 model1,2 と異なり和積の交換ができないので、直接計算する。
• 組み合わせの数が多いので、ビタビ法で近似計算する。
近年、MTの評価尺度として頻繁に使用されているBLEUが人間が見て良い訳文を良い訳文と評価するのかが疑問視されている。例えば、SYSTRANのようなルールベー
スMTの結果のBLEU値は悪いが、人間が見ると悪くない、という場合もある。
もう一つの問題としてSMTが良い訳文を生成しているのか、という問題がある。
機械翻訳評価尺度についての議論
代表的なMT評価尺度(1)
BLEU
WER(word error rate)機械翻訳文と参照訳との編集距離を正規化した
値
機械翻訳長参考訳長
長い機械翻訳が参照訳より
数文内の全機械翻訳
数で一致した文と参照訳翻訳
1exp1
log4
1exp
4
1
otherwisefiBP
gramni
gramniiBPBLEU
n i
i
i
i
i
iiiWER
の語数参照訳
置換語数削除語数挿入語数1
代表的なMT評価尺度(2)
PER(position independent WER)
GTM(General Text Matcher)機械翻訳文と参照訳との最長一致単語列の集
合 :MMS
i
i
i
iiPER
の語数参照訳
の一致語数と参照訳機械翻訳1
recallpre
recallpreGTM
i
iiMMSrecall
i
iiMMSpre
2
),(,
),(
の語数参照訳参照訳機械翻訳文
の語数機械翻訳文参照訳機械翻訳文
評価尺度とMT方式の関係
この議論を整理すると、評価尺度とMT方式の関係を分析する必要性も浮かび上がる
ルールベース翻訳(RMT)
統計翻訳(SMT)
BLEU 悪い?? 良い??
人間の評価 けっこう良い 部分的な訳は良い
代替尺度 良いところは良いと評価する尺度がほしい
特許文に対するSMTの評価 利用データ:JAPIO提供の公開特許公報要約/PAJ対訳データ (1993 年から 2004 年までの 12 年分。G06分野77万文で学習、 1000文でパラメータ調整、 500 文で評価
フレーズベースSMT入力文をフレーズ(翻訳する上で固定的に扱える単位)に分割 SMT は短い表現の翻訳に強い
各フレーズを統計翻訳フレーズ順序を統計的に調節
動作例
BLEU WER PER GTM0.2713 0.848 0.452 0.88
1
Tommrow I will go to the conference in Japan
明日 Φ 日本の 会議に 行きます
機械翻訳のMT評価尺度による評価
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. MercerThe 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 は現実のデータしか見ないから、予測能力が低いのだ。 しかし、最初のモデルが外れだったら?
チョムスキーの個別言語に依存しない言語理論(普遍文法)に依拠
言語だけを相手にしたとき、自立した言語のモデルは構文論が最適
下図のどこかのレベルで言語 A から言語 B に移行する。 移行するレベルにおいては、言語 A と言語 B の表現の
間で変換対応表を作れる(という信念) たとえ対応表が膨大でも
言語独立な表現(=意味??)
深層格表現(動作主、経験者 etc)
構文構造表現
句構造表現
単語列
言語 A の文 言語 B の文
移行派原理主義: transfer fundamentalist
移行派原理主義の問題点レベルが上がるにつれて構造が大きくなる。それで
も言語 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 言語コーパスからの対訳抽出
Parallel Corpus (平行、対訳コーパス)Aligned Corpus: 種々の研究あり。要はどのように
して 2 つの言語のコーパスにおける文、単語、複合語、句を 対応付ける (align) するかに集中。
90年代前半にきれいな 2 言語対訳コーパスを対象にした多数の研究があり。
90年代後半に、 Noisy Parallel Corpus への展開が試みられた (Fung94,Fung98)
二言語コーパスからの対訳抽出-- Aligned corpus の場合 --
対訳コーパスからの対応文のペアを求める
Gale and Church 19932 言語の文書 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番目の構造(名詞句などの
ようなもの))(),,(
K
k kBPTSAP1
対訳コーパスからの対応文のペアを求める
例 B=( 言語 language), B=(les eaux mineral, mineral water)
これらから分かるように、よい対応付けは、単語や collocation レベルでの 2 言語での対応付けから得られる構造 : Bk の確からしさ P(Bk) が大きいものを集めて作る。
具体的なアルゴリズムはDPによる
)(maxarg),,(maxarg
K
k kAA BPTSAPAlign1
対訳コーパスからの対応文のペアを求める
このようにして、文内部の対応がうまく付く文同士が高い対応付け確率を持つとする。
文書同士で文同士が高い対応付けを持つペアを連ねるように選ぶと対応文ペアが求まる。文書を構成する各文同士の対応付けもまた、文の対応
付け確率を用いたDPによる。構造を作る単語同士の対訳の他に、文の長さが
類似しているほど、よく対応する文のペアと考える方法も加味できる。
Aligned corpus からの単語や collocation 対訳抽出の概要
対訳判定の尺度: 各言語の対訳文毎に対訳かどうか判定し
たい表現 w1,w2 (=各言語から抽出された表現)が出現する文としない文を数える。
w1,w2 が対訳文の出現する確率による。ただし、この確率=0なら EM アルゴリズムで推定。 Kupiec93
w1,w2 の相互情報量 Haruno93, Smadja96w1,w2 の Dice係数 Smadja96ヒュ-リスティック
語の共起とその有意さの尺度 あるテキストの単位(文、段落など)への W1 (言
語 A),w2 (言語 B) の contingency matrix (頻度) a+b+c+d=N
相互情報量
Dice係数
W2 出現 W2非出現W1 出現 a b
W1非出現 c d
))((log
)2()1(
)2,1(log)2,1(
caba
aN
wPwP
wwPwwMI
)()(
2)2,1(
caba
awwDice
Champollion ( Smdja et al 96)Translating collocations : based on
sentence aligned bilingual corpus1つの言語において Xtract で
collocation を抽出相手側の言語の対応文である統計的
フィルタをパスするような分布で出現している collocation を対訳とする。
フィルタとしては、相互情報量、 Dice係数を比較した結果、
Champollion
Dice係数は、 X=0,Y=0(双方の言語の文に collocation の要素がない場合)に影響されないので、精度が高いので、これを使う。
大雑把には collocation (の要素たち)の Dice係数が閾値以上のもののみを残す。
なお、極端に出現頻度の低い要素語は捨てる。
)Y(freq)X(freq
)Y,X(freq)Y,X(Dice
11
112
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%
基本的方法は、まず双方の言語で用語あるいは collocation を抽出し、次に何らかの方法で対応をつけようとする。
二言語コーパスからの対訳抽出-- non aligned corpus の場合 --
非平行な同一分野の 2 言語コーパスからの訳語抽出
• Non-parallel comparable corpora• Similarity of context is cue.
• language A
• language B
• Calculation of contexts similarity is heavy
a b X c d
a’ b’ Y c’ d’