混合ディリクレ分布を用いた潜在クラス翻字生成モデル

混合ディリクレ分布を用いた潜在クラス翻字生成モデル
萩原 正人
関根 聡
楽天株式会社 楽天技術研究所
{masato.hagiwara, [email protected]
1
はじめに
表記体系の異なる言語間の音韻的な翻訳である翻
字は,外来語を取り入れる主要な方法である.近年,発
音を介さずに綴りの対応関係を統計的に学習し,翻字
を検出・生成する手法 [1, 5] が主流になりつつある.し
かし,外来語には異なる起源を持つ語が混在するため,
単一の翻字モデルでは関係を捉えきれないという問題
が生じる.例えば,“piaget /ピアジェ”(仏) と “target /
ターゲット”(英) の “get” のように,原言語が異なる場合,
音韻・綴りの対応も異なる場合がある.
この問題に対して,言語・性別等の原言語の起源を
明示的にモデル化し,翻字モデルを切り替えて用いる
クラス翻字モデルが提案されている [6].この手法では
原言語の起源をタグ付けした学習データが必要である
が,このようなデータを入手することは難しい.この問題
に対して我々は,原言語の起源を,直接観察できない
潜在クラスとしてモデル化し,翻字ペアに対して尤もらし
い翻字モデルを適用する 潜在クラス翻字モデル (LST;
Latent Semantic Transliteration) を提案した [2].これに
よって,例えば “piaget /ピアジェ” と “target /ターゲッ
ト” にはそれぞれフランス語,英語に対応する潜在クラス
が結びつき,翻字関係を正しく認識できると期待される.
しかしながらこの LST モデルは,多項分布の最尤推定
に基づいているため,変則的な発音を持つ翻字ペアの
ような学習データ中のノイズに弱く,過学習してしまうと
いう問題がある.
ここで,“get /ゲット” などのような最小書き換え単位
( 翻字単位)を単語,“piaget /ピアジェ” などのような 翻
字ペアを単語の列から構成される文書とみなすと,翻字
は文書のトピックモデルにより定式化できる.実際 LST
モデルでは,翻字単位の多項分布の混合によって翻字
確率を定義しており,これはトピックモデルの一種である
ユニグラム混合 (Unigram Mixture; UM) [7] の変種とし
て定式化が可能である.ユニグラム混合に対して,混合
ディリクレ分布による事前分布を導入し,過学習の問題
を抑えたトピックモデルが提案されており [8],同様の枠
組みを用いて翻字モデルを定式化することにより,さら
に高精度な翻字モデルが構築できると期待できる.
そこで本研究では,原言語の起源に基づく翻字モデ
ルをトピックモデルの枠組みにより定式化し,混合ディリ
クレ分布に基づく潜在クラス翻字モデル (DM-LST) を
提案する.評価実験により,提案手法が過学習の問題
を抑え,優位な翻字性能を示すことを明らかにする.な
お,本研究では, 翻字生成のタスクを扱う.翻字生成と
は,語 s(例えば “piaget”)が与えられた時に,その翻字
先として最も適切な翻字先 t(例えば “ピアジェ”)を生
成する.一方,翻字のタスクとして 翻字検出があり,これ
は,入力語 s と出力候補の集合 T が与えられた時に,
その中から翻字先として最も適切な t ∈ T を 翻字モデ
ル P ( s, t ) を用いて t∗ = arg maxt∈T P ( s, t ) として
求めるタスクである.
本稿では,まず2節にて,綴りに基づく翻字モデルの
うち,最も基本的なアルファベータ法 [1] を紹介する.続
く3節において,Joint Source Channel (JSC) モデル [5]
を紹介し,アルファベータ法との関係について述べる.4
節では,その拡張として LST モデル [2] について述べ,
5節において提案手法である DM-LST を提案する.6
節では評価実験の結果を示す.
2
アルファベータ法
翻字ペアの綴りの書き換え確率を直接モデル化する
翻字モデルのうち最も単純なものとしてアルファベータ
法 [1] について述べる.アルファベータ法は,文字の置
換・挿入・削除それぞれの編集操作のコストを 1 とみな
す通常の編集距離の一般化であり, si → ti (si , ti は長
さ 0 以上, w 以下の文字列) の形の文字列書き換え操
作に対して確率値を与える.この書き換え操作の単位
ui = si , ti を,文献 [5] にならい本稿では翻字単位と
呼ぶ.本モデルを用いて,語 s を語 t に書き換える確率
は,以下のように求められる:
PAB ( s, t ) = max
u1 ...uf
f
∏
P (ui )
(1)
i=1
ただし, u1 ...uf は,入力語・出力語の翻字ペア s, t
を分割してできる任意の翻字単位系列であり,例えば
“pi /ピ a /ア get /ジェ” である.上式は,翻字単位確
率を独立と仮定しその積により翻字ペアの確率を定義
したとき,確率を最大にする分割 u1 ...uf を見つける問
題に相当する.全体の対数を取り, − log P (ui ) を文字
列書き換え操作 si → ti のコストと見なすと,この問題は
書き換えコストの合計の最小値を求める問題と等価であ
る.よって,通常の編集距離と同様に動的計画法により
解くことができる.
本モデルにおける翻字単位確率 P (ui ) は,翻字ペア
からなる学習データから学習する.しかしながら,学習
コーパスには, s のどの文字が t のどの文字に対応す
るかというアラインメントの情報が無いため,文献 [2] で
は,文字列 si , ti は同じアルファベット体系を使用すると
仮定し,日本語のカタカナをローマ字表記に変換した.
しかし本稿では,アルファベット体系の異なる文字列(例
えば日本語カタカナと英語アルファベット,中国語漢字
と英語アルファベット等)を直接対応付けられるように,そ
のような仮定を置いていない.そのため,文献 [1] にある
ような,同じ文字の対応付けを用いてアラインメントを求
めるアルゴリズムが使用できない.
そのため,本研究では翻字ペア間の可能な全てのア
ラインメントを考慮し,それらの相対頻度を数え上げるこ
とにより,翻字単位確率を計算した 1 .なお,本稿におい
て扱う全てのモデルには,翻字単位として考慮する文字
n-gram の最大長 w というパラメータがあるが,本研究で
は一貫して w = 3 を用いた.
3
Joint Source Channel モデル
上記のアルファベータ法では,翻字単位のアラインメ
ントにヒューリスティックを用いていること,および,翻字
単位の依存関係2 を捉えられないという問題がある.本
節では,このアルファベータ法とは独立に提案された,
翻字検出モデルである JSC モデル [5] について述べ
る.JSC モデルは,1) 翻字単位のバイグラム以上も考慮
できる 2) 翻字単位の統計を取る際に,アラインメントを
ヒューリスティックにより固定するのではなく,EM アルゴ
リズム的な手法により逐次的に更新するという2点以外
は,アルファベータ法と本質的に同じである.
JSC モデルでは,翻字単位 ui = si , ti の n-gram 確
率を用いて以下のように翻字確率を計算する:
PJSC ( s, t ) =
f
∏
P (ui |ui−n+1 , ..., ui−1 )
(2)
i=1
ここで, f は式 (1) 同様,翻字単位の数である.翻字
単位確率 P (ui |ui−n+1 , ..., ui−1 ) は,以下の EM アルゴ
リズム的な逐次更新により求められる:
1. 初期アラインメントをランダムに設定する.
2. E ステップ:現在のアラインメントを用い翻字 n-gram
統計を求め,翻字モデルを更新する.
3. M ステップ:現在の翻字モデルを用いアラインメント
を更新する.アラインメントはアルファベータ法と同
様の動的計画法により求められる.
4. 収束するまで 2. と 3. を繰り返す.3 .
以上のアルファベータ法および JSC モデルは翻字検
出モデルであるが,入力 s のみが与えられた時に,そ
の翻字 t を出力するために,スタックデコーダを用いて
確率の高い翻字候補を生成した.図 1にその概要を示
す.入力として語 s(ここでは “smith”)が1文字ずつ与
えられ,それが各候補の末尾の翻字単位に追加される
(図中の「append」).その後,各翻字単位を reduce もしく
1 例えば,文字列 “abc” と “xy” の文字間アラインメントは,(a-x b-y
c-ε) (a-x b-ε c-y) (a-ε b-x c-y) の 3 種類があり,例えば最初のアライン
メント (a-x b-y c-ε) から,隣接する最大2つの文字アラインメントの併合
を考慮すると,a-x, b-y, c-ε, ab-xy bc-y の6つの文字列間アラインメント
が得られる.
2 例えば「英語において,有声子音に続く “ed” の音は/d/ (ド) であ
るが,無声子音に続くと/t/(ト) となる」ような関係.
3 なお,評価実験では,Kneser-Ney スムージングを用い翻字単位
確率をスムージングした.本稿の全てのモデルにおいて,予備実験の
結果,EM アルゴリズムの繰り返しの回数は 15 回に固定した.
“m”
“s”
s
append
ap.
(s,ス)
m
(s,ズ)
ap.
(s,ズ)
m
reduce
shift
r.
(s,ス)
(s,ス)
(m,ミ)
(s,ス) (m,ム)
…
s:ス 5.22
s:ズ 6.69
m: ミ 6.14
m: マ 8.47
th: ス 6.72
…
s
ap.
sm
reduce
shift
(sm,スミ)
sm
図 1: スタックデコーダにより “smith” → “スミス” を生成
する過程
は shift する.reduce した場合,翻字単位の表(図左下)
を参照しながら,確率の高い上位 R 個の翻字単位を
生成・確定する.これにより,図中 “s” が入力された後,
(“s”, “ス”) および (“s”, “ズ”) の2つの候補が生成されて
いる.shift した場合,各候補の末尾の翻字候補は非確
定のまま残される.各文字が入力された後,各候補の翻
字確率を計算し,確率の高い上位 B 個の候補のみを
残す.この reduce 幅 R とビーム幅 B は,開発セットを用
いた予備実験により, R = 8, B = 32 と固定した.
4
潜在意味翻字モデル
上記のアルファベータ法および JSC モデルでは,1
節で述べたように,原言語の起源による違いに対処でき
ず,学習データの全ての翻字ペアを捉えるような単一の
翻字モデルを構築する.そこで,Li et al. [5] はこの問題
に対して,原言語の起源や性,および姓/名の別など,
翻字確率に影響を与える要因をクラス c として定義し,
s → t の翻字確率を以下のように求めるクラス翻字モデ
ルを提案している.
∑
∑
PLI (t|s) =
P (t, c|s) =
(3)
P (c|s)P (t|c, s)
c
c
しかしながら,このクラス翻字モデルを用いるには,ク
ラスが明示的にタグ付された学習コーパスが必要であ
る.そこで,各翻字ペアに対して明示的なクラス c を対
応づけるのではなく,潜在的なクラスを表す確率変数 z
を導入し,条件付き翻字単位確率 P (ui |z) を考え,翻
字確率を以下のように求める 潜在クラス翻字モデル
(LST) を定義する [2]4 :
PLST ( s, t ) =
K
∑
z=1
P (z)
f
∏
P (ui |z)
(4)
i=1
ここで, K は潜在クラス数を表す.潜在クラス z は,上
記の言語起源や性別など,同じ翻字書き換え傾向を持
つ翻字ペアのクラスに対応すると考えることができる. z
は学習データからは直接観察されないが,以下のように
EM アルゴリズムによって,学習データの尤度を最大化
することにより繰り返し的に求めることができる.ここで,
sn , tn は n 番目の学習用翻字ペアである.
4 なおここでは, P (t|s) ではなく JSC モデルのように翻字ペアの生
成確率 P ( s, t ) に潜在変数を導入したモデルになっていることに注
意が必要である.この両者の性能に本質的な差は無いことを実験によ
り確認している [2].
• E ステップ:
γnk
=
∑K
πk P ( sn , tn |z = k)
k =1
P ( sn , tn |z)
=
• M ステップ:
N
∑
new
πk
∝
max
u1 ..uf
γnk ,
πk P ( sn , tn |z = k )
fn
∏
(,5)
P (ui |z)
i=1
P (ui |z = k)new =
∑
ここで,Nk = n γnk であり,fn および fn (ui ) は,そ
れぞれ学習データ中 n 番目の翻字ペア中の翻字単位
の数および翻字単位 ui が出現する回数を表す.ここで,
JSC モデルと同様,M ステップの前に,現在の翻字モデ
ルを用いて学習コーパスのアラインメントを更新するた
め, fn は一般的に繰り返し毎に異なった値となる.さら
に,各 z に対して, P (ui |z) に従いアラインメントを更新
するため, M 個の異なるアラインメントを各翻字ペアに
対して保持することになり, fn の値は実際には m に依
存した fnm となる.なお,EM アルゴリズムの初期値とし
ては, P (z = k) = 1/K および P (ui |z) = PAB (u) + ε,
すなわちアルファベータ法により求めた翻字単位 u の
確率にランダムノイズ ε を乗せたものを用いた.
ここで,翻字単位を単語,翻字ペアを単語の列から構
成される文書とみなすと,この LST モデルは翻字単位
の多項分布の混合をもって翻字確率としており,これは
文書のトピックモデルの一種であるユニグラム混合 [7]
の変種として定式化が可能である.この場合,文書(=
翻字ペア)は,まずクラスを P (z) に従って選択し,その
後,単語(=翻字単位)を多項分布 P (ui |z) に従って生
成するという生成モデルとして捉えられる.ただし,1節
に述べたように,本モデルは多項分布の最尤推定に基
づいてパラメータを推定しているため,学習データ中の
ノイズに弱く過学習しやすいという問題がある.
混合ディリクレ分布に基づく潜在
意味翻字モデル
本節では,前節のユニグラム混合に基づく潜在意味
翻字モデル (LST) を拡張した,混合ディリクレ分布に基
づく潜在意味翻字モデル (DM-LST) を提案する.本モ
デルでは,単語の出現分布に事前分布として混合ディ
リクレ分布を導入することにより,複数の潜在クラスの混
合により翻字生成をモデル化するという目的を達成した
まま,最尤推定の特徴である極端な多項分布に偏ると
いう傾向を軽減することができる.多項分布のパラメー
タが混合ディリクレ分布に従う場合の合成分布は,混合
Polya 分布:
∫
PDM ( s, t ) =
PM ul ( s, t ; p)PDM (p; λ, αK
1 )dp
∝
K
∑
λk PP olya ( s, t ; αK
1 )
(6)
k=1
=
• E ステップ:
N
fn (ui )
1 ∑
γnk
Nk
fn
ηnk = ∑
n=1
n=1
5
により与えられる [8].ここで, PM ul は p をパラメータと
した多項分布, PDM は混合ディリクレ分布であり,パラ
メータ αK
1 = (α1 , α2 , ..., αK ) に従う K 個のディリクレ
分布を混合比
∑ λ1 , ..., λK によって混合した分布である.
また, αk = u αku である.
この時,モデルパラメータは,以下の EM アルゴリズム
により繰り返し的に推定できる5 :
K
∑
k=1
f
Γ(αk ) ∏ Γ(f (ui ) + αkui )
λk
Γ(αk + f ) i=1
Γ(αkui )
λk PP olya ( sn , tn ; αk )
λk PP olya ( sn , tn ; αk )
k
(7)
• M ステップ:
λnew
k
∝
N
∑
n=1
αnew
ku
=
αku
ηnk
(8)
∑
η
{fn (u)/(fn (u) − 1 + αku )}
(9)
η {fn /(fn − 1 + αk )}
n nk
∑nk
n
なお,入力として単一の翻字ペア u が与えられた
時の生成確率である予測分布 PDM は, PDM (u) =
∑K
k=1 λk αku /αk に従う.したがって,JSC モデルの更
新アルゴリズムと同様,M ステップの前に,各 k に対
し, αku /αk に従い,学習コーパスのアラインメントを更
新する.EM アルゴリズムの初期値としては,前節同様,
λk = 1/K, αku = PAB (u) + ε を用いた.
LST, DM-LST 共に,翻字生成モデルではないため,
ベースラインとして3節で説明した JSC モデルおよび
スタックデコーダーを用い,翻字候補 T を生成した後,
LST もしくは DM-LST を用いて候補を再ランキングする
ことにより,翻字先のランク付きリストを生成した.なお,
EM アルゴリズムにより学習されたパラメータは初期値
によって異なるため,同じ学習データを用いて異なる初
1
10
期値から 10 個のモデル PDM
, ..., PDM
を学習し,その
∑
10
j
1
平均 10 j=1 PDM ( s, t ) を用いて候補をランキングし
た.
なお,もう一つのトピックモデルとして Latent Dirichlet
Allocation (LDA) があるが,LDA では文書内の各単語
について異なるトピックから生成されるという仮定を置い
ている.これは,翻字ペア内の翻字単位が異なる原言
語から生成されるという状況に対応しており,翻字モデ
ルとしては適切な前提ではない6 .実際に予備実験によ
り,LDA を用いて翻字をモデリングしても翻字性能は向
上しないことが分かった.
6
評価実験
比較したモデルは,アルファベータ法 (AB),JSC モデ
ル (JSC),潜在クラス翻字モデル (LST),混合ディリクレ
分布 LST (DM-LST; 提案手法) である.
性能評価には,翻字に関するワークショップである
NEWS 2009 [3, 4] の英語→日本語カタカナ (En-Ja),英
語→中国語 (En-Ch),英語→韓国語 (En-Ko) の各翻字
データを用いた.それぞれのデータ規模を表 1の第一
5 ここでは,leaving-one-out 法を用いた推定方法を混合分布に拡
張した高速な推定手法を用いている [8].
6 ただし,異なる起源の混合したような語(例えば “naïveness”)を除
く.
表 1: 各言語ペアに対するモデルの性能比較
言語ペア
モデル
ACC MFC MRR
En-Ja
AB
0.293 0.755 0.378
学習:23,225 JSC
0.326 0.770 0.428
テスト:1,489 LST
0.345 0.768 0.437
DM-LST 0.349 0.776 0.444
En-Ch
AB
0.358 0.741 0.471
学習:31,961 JSC
0.417 0.761 0.527
テスト:2,896 LST
0.430 0.764 0.532
DM-LST 0.445 0.770 0.546
En-Ko
AB
0.145 0.537 0.211
JSC
0.151 0.543 0.221
学習:4,785
LST
0.079 0.483 0.167
テスト:989
DM-LST 0.174 0.556 0.237
カラムに示した.翻字性能の評価指標としては,以下の
3つを用いた.なお,評価データは,翻字元 sn に対し
て,正解として許容できる翻字先の集合である正解セッ
ト rn が対応している.翻字モデルによって出力された
候補を,確率の高い順に cn,i , cn,2 , ... とする.
• ACC(平均精度): 翻字候補トップ 1cn,1 が正解セッ
トに含まれていれば∑an = 1, そうでなければ an =
N
0 とし, ACC = N1 i=1 sn により計算される.
• MFC(平均 F 値): 翻字候補トップ 1cn,1 に対し,
編 集 距 離 ED の 点 で 最 も 類 似 し た 正 解 rn∗ =
arg minrn,j ∈rn ED(cn,1 , rn,j ) との間の F 値を Fn
∑N
と す る と, M F C = N1 i=1 Fn で あ る. こ こ
で, F 値 は, Pn = LSC(cn,1 , rn∗ )/|cn,1 |, Rn =
LCS(cn,1 , rn∗ )/|rn∗ |, Fn = 2Ri Pi /(Ri + Pi ) として
計算される. |x| は x の文字列の長さ, LCS(x, y)
は x と y の最小共通部分文字列の長さであり,ど
ちらも Unicode 文字を単位に計算される.
• MRR(平均順序逆数): 翻字候補リスト cn,1 , cn,2 , ...
のうち,正解セット rn に含まれているものの中で
最も順位の高い候補を cn,j とすると, M RR =
∑N
1
n=1 1/j である.候補の中に正解が含まれて
N
いない場合は 0 とする.
各モデルの性能の比較を表 1に示した.ここで,LST
および DM-LST の潜在クラス数 M は,言語ペアごとに
開発セットを用いて決定した.言語ペア En-Ja, En-Ch に
おいて,全ての評価指標で AB < JSC < LST < DMLST であり,提案手法の優位性を示している.また,言
語ペア En-Ko については,LST によるリランキングに
よって性能が JSC よりも大幅に低下しているが,これは
当該言語ペアの学習データが少ないため,過学習の影
響を受けやすいためであると考えられる.また,全ての
言語ペアに対して,DM-LST において性能が最大とな
る M の値は,LST におけるその M の値と同じかそれよ
りも小さくなることが分かった.このことは,一般的に混合
ディリクレ分布はより小さい次元数で同等以上の言語モ
デル性能を上げるという性質 [8] とも合致している.
テストセット En-Ja 提案手法により翻字性能が改善
した例には “dijon /ディジョン” や “goldenberg /ゴー
ルデンバーグ” などがある.従来手法では,それぞれ
“ディヨン”, “ゴールデンベルグ” が最も確率が高く,“j
/イ” “berg /ベルグ” などの非英語的発音にモデル
が影響されていることが分かり,LST についても同様の
傾向がある.提案手法では,学習コーパスにおいて一
般的な翻字傾向を保持しつつも,複数の言語起源に対
応できていることが分かる.この傾向はテストセット EnCh 中の “covell /科夫尔 (kefuer) →科维尔 (keweier)”
“netherwood /内特赫伍德 (neitehewude) →内瑟伍德
(neisewude)”, における英語発音 “ve /维 (wei)” “th /
瑟 (se)” や,En-Ko 中の darling /다르링 (dareuling) →
달링 (dalling) などにも見られた.
一 方 で, En-Ch 中 の “gutheim / 古 特 海 姆 (gutehaimu),En-Ko 中の martina /마르티나 (mareutina) な
どの非英語的発音をもつ語についても正しく翻字がで
きており,語の起源により適切なモデルを適用できてい
ることが分かる.ただ,これら非英語的発音を持つ語の
翻字は一般には文脈依存であり(例えば,“charles” に
は “チャールズ”(英) と “シャルル”(仏) の読みがある),
精度をより高めるには文脈の考慮や Web 統計の利用な
どが必要であろう.
7
おわりに
本研究では,原言語の起源をモデル化した潜在クラ
ス翻字法を拡張したディリクレ分布に基づく潜在クラス
翻字モデルを提案した.評価実験の結果,過学習を抑
えながら,全体の翻字性能を向上させることができること
が分かった.翻字単位のバイグラム以上の依存関係を
どのようにして潜在クラスを用いてモデル化するかは今
後の課題である.
参考文献
[1] Eric Brill and Robert C. Moore. An improved error model
for noisy channel spelling. In Proc. ACL-2000, pp. 286–293,
2000.
[2] Masato Hagiwara and Satoshi Sekine. Latent class transliteration based on source language origin. In Proc. of ACL-HLT
2011, pp. 53–57, 2011.
[3] Haizhou Li, A Kumaran, Vladimir Pervouchine, and Min
Zhang. Report of news 2009 machine transliteration shared
task. In Proc. of the 2009 Named Entities Workshop, pp.
1–18, 2009.
[4] Haizhou Li, A Kumaran, Min Zhang, and Vladimir Pervouchine. Whitepaper of news 2009 machine transliteration
shared task. In Proc. of the 2009 Named Entities Workshop,
pp. 19–26, 2009.
[5] Haizhou Li, Zhang Min, and Su Jian. A joint source-channel
model for machine transliteration. In Proc. of ACL 2004, pp.
159–166, 2004.
[6] Haizhou Li, Khe Chai Sum, Jin-Shea Kuo, and Minghui
Dong. Semantic transliteration of personal names. In Proc.
of ACL 2007, pp. 120–127, 2007.
[7] Kamal Nigam, Andrew Kachites McCallum, Sebastian
Thrun, and Tom Mitchell. Text classification from labeled
and unlabeled documents using em. Machine Learning,
Vol. 39, No. 2, pp. 103–134, 2000.
[8] 山本幹雄, 貞光九月, 三品拓也. 混合ディレクレ分布を用
いた文脈のモデル化と言語モデルへの応用. 情報処理学
会研究報告. SLP, 音声言語情報処理, Vol. 2003, No. 104,
pp. 29–34, 2003.