スライド 1

機械翻訳
昔の機械翻訳
統計的機械翻訳
翻訳の評価
昔の機械翻訳
 入力文:私はりんごを食べた。

 形態素解析構文解析
 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)), に対して、efの翻訳回数の期待値
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
a10
j
 (4)
| ea j )
a m 0 1
 t( f | e )  1
この項を2種類の方法で書き換
えて等しく置くとことがミソ
f

h(t ,  ) 
(l  1) m
l
m
l
...  t ( f
a10
am0 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
a10
ミソ その2
は、単項式だから
am0 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  20 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