説明

統計機械翻訳装置および統計機械翻訳プログラム

【課題】 対訳フレーズを利用した統計機械翻訳装置において、より高い精度で翻訳を行うことができる装置を提供する。
【解決手段】 日英機械翻訳のデコーダ42は、日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58、英語言語モデル60、および英語から日本語へのフレーズ翻訳モデル68と、日本語の入力文40に対し可能な全てのセグメンテーションを行なうセグメンテーション処理部80と、得られたセグメンテーションにしたがい、モデル68、56、58および60を用い、英語のフレーズを任意の順序で確率付きで並べたフレーズシーケンスを表すラッティスを作成するラッティス作成部84と、ラッティス作成部84が作成したラッティスのうちで最も確率の高い上位M個の経路を探索して出力するA*探索処理部88とを含む。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は機械翻訳装置に関し、特に、統計機械翻訳において対訳コーパス中に現れるフレーズの対訳を生かしながら効率的に翻訳を行なう機械翻訳装置に関する。なお、本明細書において「フレーズ」とは、1または連続する複数の単語のまとまり(単語列)のことをいう。
【背景技術】
【0002】
機械翻訳を統計的に行なう立場では、非特許文献1において提案されているように、翻訳のソース言語の文fを、ターゲット言語eの文に翻訳するという問題は、次の最大化問題として定式化される。
【0003】
【数1】

この問題に関し、雑音を含む通信路モデルを適用すると次の式が得られる。
【0004】
【数2】

統計機械翻訳においてフレーズを用いた手法を試みた文献として、式(2)の第1番目の因子P(f|e)を、さらに制約を課した一連のフレーズの翻訳を掛合わせたもので近似しているものがある(非特許文献2、3、4)。
【0005】
【数3】

ただし/fi(本明細書では、符号の直前の「/」は、直後の符号の直上に記載されるべき上線をあらわすものとする。)は、文fに対するフレーズセグメンテーション(フレーズ分割)がされたフレーズセグメンテーション後の文/fのi番目のフレーズのことをいい、aiはフレーズセグメンテーションされたテキストのi番目のフレーズアライメントのことをいう。
【非特許文献1】P.F.ブラウン他、「機械翻訳に対する統計的アプローチ」、計算機言語学、第16巻、第2号、pp.79−85、1990年(P. F. Brown et al., "A statistical approach to machine translation," Computational Linguistics, vol. 16, no. 2, pp. 79-85, 1990.)
【非特許文献2】P.ケーン他、「フレーズによる統計翻訳」、HLT−NAACL2003予稿集、pp.48−54、2003年(P. Koehn et al., "Statistical phrase-based translation," in Proc. of HLT-NAACL 2003, pp. 48-54 2003.)
【非特許文献3】S.フォーゲル他、「cmu統計翻訳システム」、MTサミットIX予稿集、pp.402−409、2003年(S. Vogel et al., "The cmu statistical translation system," in Proceedings of MT Summit IX, pp. 402-409, 2003.)
【非特許文献4】C.ティルマン、「統計機械翻訳のための射影拡張アルゴリズム」、自然言語処理における経験法2003年大会予稿集、pp.1−8、2003年(C. Tillmann, "A projection extension algorithm for statistical machine translation," in Proceedings of the 2003 Conference on Empirical Methods in Natural Language Processing, pp. 1-8, 2003.)
【非特許文献5】H.ダウメ III他、「文書/要約アライメントのためのフレーズによるhmmアプローチ」、EMNLP2004予稿集、pp.119−126、2004年(H. Daume III et al., "A phrase-based hmm approach to document/abstract alignment," in Proceedings of EMNLP 2004, pp. 119-126, 2004.)
【非特許文献6】A.P.デンプスター他、「不完全なデータからのemアルゴリズムによる最大尤度」、王室統計学会ジャーナル、第B巻、第39号、pp.1−38、1977年(A. P. Dempster et al., "Maximum likelihood from incomplete data via the em algorithm," Journal of the Royal Statistical Society, vol. B, no. 39, pp. 1-38, 1977.)
【非特許文献7】F.J.オク他、「さまざまな統計的アライメントモデルの系統的比較」、コンピュータ言語学、第29巻、第1号、pp.19−51、2003年(F. J. Och et al. "A systematic comparison of various statistical alignment models," Computational Linguistics, vol. 29, no. 1, pp. 19-51, 2003)
【非特許文献8】F.J.オク他、「統計機械翻訳のための弁別トレーニングおよび最大エントロピーモデル」、ACL2002予稿集、pp.295−302、2002年(F. J. Och et al., "Discriminative training and maximum entropy models for statistical machine translation," in Proc. of ACL 2002, pp. 295-302, 2002.)
【非特許文献9】F.J.オク、「統計機械翻訳における最小誤差率学習」、ACL2003予稿集、pp.160−167、2003年(F. J. Och, "Minimum error rate training in statistical machine translation," in Proc. of ACL 2003, pp. 160-167, 2003.)
【非特許文献10】W.H.プレス他、「C++の数値的レシピ」、ケンブリッジ大学出版会、2002年(W. H. Press et al., "Numerical Recipes in C++," Cambridge University Press, 2002.)
【非特許文献11】N.ユッフィインク他、「統計機械翻訳における単語グラフの生成」、自然言語処理における経験法大会(EMNLP02)予稿集、pp.156−163、2002年(N. Ueffing et al., "Generation of word graphs in statistical machine translation," in Proc. of Conference on Empirical Methods for Natural Language Processing (EMNLP02), pp. 156-163, 2002.)
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかし、従来の手法では、フレーズの翻訳対を求める際の方法が単純であって、式(3)にしたがってP(/fi|/eai)を推定しても、例えばフレーズの相互関係などについての条件が含まれていないため、翻訳の精度が低くなるという問題がある。
【0007】
それゆえに本発明の目的は、対訳フレーズを利用した統計機械翻訳装置において、より高い精度で翻訳を行なうことができる機械翻訳装置を提供することである。
【0008】
本発明の他の目的は、対訳フレーズを利用した統計機械翻訳装置において、フレーズのセグメンテーションの推定とフレーズの対訳との推定を連携させて行なうことにより、より高い精度で翻訳を行なうことができる機械翻訳装置を提供することである。
【課題を解決するための手段】
【0009】
本発明の第1の局面に係る機械翻訳装置は、ソース言語の入力文をターゲット言語に翻訳する翻訳装置であって、ソース言語のフレーズNグラムモデル、ターゲット言語のフレーズNグラムモデルおよび所定の言語モデル、およびターゲット言語からソース言語へのフレーズによる翻訳モデルを記憶するための記憶手段と、ソース言語の入力文に対するセグメンテーションを行なうためのセグメンテーション手段と、セグメンテーション手段により得られたセグメンテーションにしたがい、記憶手段に記憶されたソース言語のフレーズNグラムモデル、ターゲット言語のフレーズNグラムモデルおよび言語モデル、ならびにターゲット言語からソース言語へのフレーズによる翻訳モデルを用いて、ターゲット言語のフレーズを任意の順序で、かつソース言語のフレーズNグラムモデル、ターゲット言語のフレーズNグラムモデルおよび言語モデル、ならびにフレーズによる翻訳モデルを用いて得た確率を各ノードとエッジとに付して並べた、フレーズのラッティスを作成するためのラッティス作成手段と、ラッティス作成手段により作成されたラッティスのうちで、最大確率を与える上位M個のフレーズシーケンスを探索するための探索手段とを含む。
【0010】
フレーズによる翻訳モデルという、従来にない概念を用い、ソース言語の入力文が与えられると、当該入力文に対する翻訳である確率が統計的に最も高い上位M個の翻訳文を出力することができる。単語レベルのみではなく、フレーズレベルでの確率をも用いるため、入力文と翻訳文との間のフレーズの対応関係を直接的に用い、精度の高い翻訳を行なうことができる。
【0011】
好ましくは、探索手段は、ラッティス作成手段により作成されたラッティスのうちで、最大確率を与える上位M個のフレーズシーケンスをA*探索アルゴリズムにより探索するための手段を含む。
【0012】
さらに好ましくは、ラッティス作成手段は、所定の確率条件を充足するノードのみを用いてラッティスを作成するための手段を含む。
【0013】
フレーズによる翻訳モデルは、ターゲット言語のフレーズNグラムモデル、ソース言語によるフレーズセグメンテーションモデル、およびターゲット言語からソース言語へのフレーズ翻訳モデルの組合せにより形成されるようにしてもよい。
【0014】
本発明の第2の局面に係る統計機械翻訳プログラムは、コンピュータにより実行されると、上記したいずれかの機械翻訳装置として当該コンピュータを動作させる統計機械翻訳プログラムである。
【発明を実施するための最良の形態】
【0015】
[基本的概念]
従来の技術では、翻訳対を求める方法と、式(3)におけるP(/fi|/eai)の推定とが別の問題となっており、そのために精度の向上が望めないという問題があったと考えられる。本実施の形態では、以下のような思想に基づいてフレーズを用いた機械翻訳を行なう。すなわち、従来の技術で用いられていた式(3)に代えて、新たに/fおよび/eという変数を導入し、次の式(4)によってP(f|e)を算出することにより、フレーズ翻訳に相当する関係を直接的に翻訳に反映させる。
【0016】
【数4】

ただし/fは入力文fのセグメンテーションを表し、/eはターゲット文eのセグメンテーションを表す。
【0017】
式(4)において、P(f,/f,/e|e)はさらに3つの項に分解される。
【0018】
【数5】

式(5)の第1項はセグメンテーションされた入力文/fが再構成により入力文fとなる確率を表す。第2項は/eと/fという二つのフレーズシーケンスに対する翻訳確率を表す。最後の項は、フレーズセグメンテーションされた文/eが文eから生成される尤度を示す。本明細書では、これらの項をそれぞれフレーズセグメンテーションモデル、フレーズ翻訳モデル,およびフレーズNグラムモデルと呼ぶ。以下、これらにつき個別に説明する。
【0019】
−フレーズNグラムモデル−
フレーズNグラムモデルは以下のように近似できる。
【0020】
【数6】

式(6)において、P(/ei|/ei-1)は、互いに隣接する、翻訳されたフレーズに関するバイグラム制約として取扱う。
【0021】
フレーズNグラムモデルは、文eに対し可能な全てのフレーズセグメンテーションを、図1に示すようなラッティス構造/Eに広げることで、前向き・後向きアルゴリズムを使用して容易に算出できる。図1に示すように、このラッティス内の各ノードは文e内の特定のフレーズ/Ei(i=1〜6)を表しており、これらノード/E1〜/E6はエッジで互いに結ばれている。また各エッジには、当該エッジの前端のノードに対応するフレーズとその後端のノードに対応するフレーズとが連続して生ずる確率が付されている。例えばノード/Eiとその直前のノード/Ei'とは、確率P(/Ei|/Ei')が付されたエッジにより結ばれている。図1の例で言えば、ノード/E2とその直前のノード(図1では/E1)とを結ぶエッジには確率P(/E2|/E1)が付されている。
【0022】
P(/Ei|/Ei')の値の推定は以下の手順により行なわれる。
【0023】
1)確率テーブルを何らかの一様な値で初期化する。
【0024】
2)学習コーパス内の各文eに対し、前向き・後向きアルゴリズムを用い、ラッティス内における事後確率P(/Ei,/Ei'|e)を推定する。
【0025】
3)推定された事後確率を単語の発生頻度として用いて最尤アルゴリズムを用いて事前確率を以下のように算出する。
【0026】
【数7】

ステップ2および3を所定の終了条件が成立するまで繰返す。終了条件としては、予め定められた繰返し回数を完了したことなどの条件を用いることができる。
【0027】
−フレーズセグメンテーションモデル−
式(4)に示されたモデル化によると、P(f|/f,/e,e)は、フレーズセグメンテーションがされた文/fをいかにして並べ替えればソース文fが得られるか、を示すディストーション確率とみなすことができる。本実施の形態では、これに代えて、このモデルを特定のフレーズセグメント/fjが文f内に生ずる尤度を表すものとみなす。すなわち、
【0028】
【数8】

このセグメンテーションは、前節に述べたフレーズNグラムモデルのユニグラム事後確率として実現することができる。このユニグラム事後確率は、文fに対するラッティス構造/Fを用い、前向き・後向きアルゴリズムを用いて効率的に計算できる。
【0029】
【数9】

このフレーズセグメンテーションモデルは、ソース文が与えられたときに、あるフレーズに対してある重みを与えるものと考えることができる。仮にフレーズ長を1に限定すると、すなわちどのフレーズも単語を一つしか含まないものとすると、フレーズセグメンテーションの結果は一通りとなる。したがってフレーズセグメンテーションモデルはどのフレーズにも「1」という重みを割当てる。
【0030】
−フレーズ翻訳モデル−
フレーズ翻訳モデルは、フレーズ翻訳が各フレーズの翻訳の積として得られるように近似したものである。
【0031】
【数10】

ただしaiは単語アライメントによる翻訳モデル(例えばIBM(登録商標)モデル)において見られるようなフレーズアライメントを表す。
【0032】
フレーズ翻訳モデルの一つの実現形式としては、学習コーパスに現れる全てのフレーム翻訳対を、それらの現れる確率とともにテーブル形式で格納したものが考えられる。
【0033】
−フレーズによるHMM統計翻訳−
上記したフレーズNグラムモデル、フレーズセグメンテーションモデル、およびフレーズ翻訳モデルを全て統合すると、式(4)は次のように書換えることができる。
【0034】
【数11】

フレーズセグメンテーションがされた文/eと文/fとを、それぞれ対応する/Eおよび/Fというラッティス構造にまで拡張すると、式(12)は隠れマルコフモデル(HMM)と考えることができる。ただしこの場合、図2に示すように、ラッティス/F内の各ソースフレーズ/Fj(j=1〜6)は、ラッティス/E内のターゲットフレーズである状態/Ei(i=1〜6)から出力された観測量として扱われる。図2に示す例でいえば、ラッティス/F内のフレーズ/F2は、ラッティス/E中のフレーズ/E3からの観測量として扱われる。
【0035】
図2においてラッティス/Fにおいて生ずるフレーズ/F2は、フレーズ/E3からは確率P(/F2|/E3)で観測されるということになる。ラッティス/Eにおいてフレーズ/E1の次にフレーズ/E3が続く確率をP(/E3|/E1)、文fのセグメンテーションにおいてフレーズ/F2が生ずる確率をP(/F2|f)とすれば、これらを乗算することで式(12)のうちi=3、j=2に相当する項の値が得られる。これをラッティス/Eおよびラッティス/F内の全てのノード(フレーズ)の組合せに対し計算し、合計することで式(4)の値が近似できる。
【0036】
フレーズによるHMM構造は、文書と要約との対応を付ける、という問題について、非特許文献5において既に提案されている。非特許文献5に記載の手法では、ジャンプの確率は状態遷移として明確にエンコードされており、その確率は、単語による統計翻訳モデルにおけるアライメント確率にほぼ対応していると言える。ジャンプまたはアライメント確率を明確な形で使用すると、翻訳のモデル化を完全なものにすることができるが、そのかわりにフレーズによるHMM構造では学習の際に広大なサーチ空間が必要になるという問題がある。
【0037】
本実施の形態に係る手法では、状態遷移はフレーズNグラムモデルと、フレーズバイグラムの連結確率とを用いているが、フレーズアライメント確率については無視している。したがって、フレーズによるHMM翻訳モデルは不完全なモデルということもできる。しかし、その単純さのゆえにパラメータの推定を高速に行なうことができる。
【0038】
−パラメータ推定−
フレーズによるHMM翻訳モデルに対するパラメータは、既に説明したように前向き・後向きアルゴリズムを用いて効率的に推定できる。
【0039】
前向き・後向きアルゴリズムの処理では、二つの補助変数α(ei1i2,fj1j2)とβ(ei1i2,fj1j2)とを定義する。α(ei1i2、fj1j2)は、e1i1-1に存在する全てのフレーズの組合せの出力後にフレーズei1i2がfj1j2に翻訳される確率の前向き推定値を表す。同様にβ(ei1i2,fj1j2)は、ei2+1lの右側の全てのフレーズの組合せを考慮したときの、フレーズei1i2がフレーズfj1j2に翻訳される確率の後向き推定値である。
【0040】
したがって、前向き・後向きアルゴリズムは、次の漸化式を解くという形に定式化される。
【0041】
【数12】

EMアルゴリズムでよく見られるような局所的収束という問題(非特許文献6)を避けるため、本実施の形態では、フレーズによる翻訳モデルの学習にあたって、初期値として非特許文献7に記載のGIZA++学習より得られるレキシコンモデルを用いる。さらに、フレーズNグラムモデルとフレーズセグメンテーションモデルとを単言語コーパスを用いて別々に学習させ、HMM学習の繰返し時には固定させておく。
【0042】
−フレーズセグメントの誘導−
式(13)および(14)は、ラッティス構造/Eの左側と右側とにおいてそれぞれ全ての可能な経路についての合計という処理と、/Fに対し可能な全てのセグメンテーションに関する合計という処理とを含んでいる。この処理は仮にダイナミックプログラミングを使用しても依然として膨大な計算を必要とするので、本実施の形態では、考慮するセグメンテーションを予め限定する。
【0043】
フレーズ対を導出するにあたってはまず、バイリンガル学習コーパス内において見出し得る全てのバイリンガルフレーズ対について、次の式に示す二つのフレーズ翻訳確率の積を用いる。
【0044】
【数13】

ただしcount(/e,/f)は二つのフレーズ/eおよび/fの共起頻度である。式(15)の基本的な概念は、2方向の対応関係を見ることにより、バイリンガルのフレーズの対応をとらえる、ということである。
【0045】
さらに、それ以外のフレーズについては、GIZA++(非特許文献2)により計算したP(e|f)およびP(f|e)という2方向のモデルを用いたビタビ単語アライメントの積集合/和集合に基づき網羅的に導出する。
【0046】
フレーズ翻訳対の抽出後、それらに対する単言語フレーズレキシコンを抽出し、ソース文およびターゲット文に対する可能なセグメンテーションとして使用する。
【0047】
−デコーダ−
最良訳を算出するための決定規則は、非特許文献8において示されている、翻訳モデルの全ての構成要素の対数線形和によって行なう。
【0048】
【数14】

ただしPrj(e,f)は翻訳モデルの構成要素であって、例えばフレーズNグラムモデルまたは言語モデルなどであり、λjは各モデルに与えられた重みである。重みλjはIIS(Improved Iterative Scaling)またはGIS(Generalized Iterative Scaling)アルゴリズムを用いた最尤基準を用いても、滑降シンプレックス法(Downhill Simplex Method:非特許文献9)のように制約なしの最適化アルゴリズムを用いた最小誤差率基準(非特許文献9)を用いてもよい。
【0049】
デコーダは単語グラフによるデコーダ(非特許文献11)に類似したものであり、サブモデルの複雑な構造を組込むため、マルチパスでコーディングを行なえるようにしたものである。デコードの最初のパスではビームサーチを用いて入力文に対する翻訳の単語グラフ、すなわちラッティスを生成する。このパスでは、フレーズによるHMM翻訳モデルのすべてのサブモデルを、ターゲット言語の単語によるトライグラム言語モデルおよびクラス5グラム言語モデルとともに使用する。次のパスでは、この単語グラフに対してA*探索法を用いて翻訳のNベストパスを探索する。
【0050】
[構成]
図3に、本実施の形態に係る統計機械翻訳システム20のブロック図を示す。この統計機械翻訳システム20は、日本語の文(f)を英語の文(e)に翻訳する日英翻訳装置である。つまり、本実施の形態ではソース言語fは日本語、ターゲット言語eは英語ということになる。
【0051】
図3を参照して、統計機械翻訳システム20は、日本語の単言語コーパス(以下「日本語コーパス」と呼ぶ。)30と、英語の単言語コーパス(以下「英語コーパス」と呼ぶ。)34と、日本語および英語の対訳コーパス32と、日本語コーパス30、対訳コーパス32、および英語コーパス34から日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58、英語言語モデル60、およびフレーズ翻訳モデル68を作成するためのフレーズによるHMM翻訳モデル作成部36と、フレーズによるHMM翻訳モデル作成部36により作成された日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58、英語言語モデル60、およびフレーズ翻訳モデル68を用いて、日本語の入力文40に対し翻訳を行ない、英語の訳文44を出力するためのデコーダ(統計機械翻訳装置)42とを含む。なお図3に示す統計機械翻訳システム20では、フレーズNグラムとしてフレーズバイグラムを用いる。また、英語フレーズNグラムモデル58と、日本語フレーズNグラムモデル56と、フレーズ翻訳モデル68とは、フレーズによるHMM翻訳モデル38を構成する。
【0052】
フレーズによるHMM翻訳モデル作成部36は、日本語コーパス30から日本語フレーズNグラムモデル56を作成するための日本語フレーズNグラムモデル作成部50と、英語コーパス34から英語フレーズNグラムモデル58を作成するための英語フレーズNグラムモデル作成部52と、英語コーパス34から英語言語モデル60を作成するための英語言語モデル作成部54とを含む。英語言語モデル60は、図示してはいないが、前述したとおり英語単語トライグラム言語モデルと、英語のクラス5グラム言語モデルとを含む。なおクラスNグラム言語モデルとは品詞に着目した単語Nグラム言語モデルであり、同一の品詞の単語は同じ単語であるとみなして作成したNグラム言語モデルである。
【0053】
なお、日本語フレーズNグラムモデル作成部50は、日本語フレーズNグラムモデル56の作成にあたり、日本語コーパス30に出現するNグラムのうち上位の所定個数のみを採用すること、および対訳コーパス32にフレーズ対として出現する日本語Nグラムのみを採用すること、という制約にしたがっている。同様に英語フレーズNグラムモデル作成部52は、英語フレーズNグラムモデル58の作成にあたって、英語コーパス34に出現するNグラムのうち上位の所定個数のみを採用すること、対訳コーパス32に出現するフレーズ対として出現する英語Nグラムのみを採用すること、という制約にしたがっている。
【0054】
フレーズによるHMM翻訳モデル作成部36はさらに、日本語フレーズNグラムモデル56に基づき、前述した手法により日本語のフレーズセグメンテーションモデル66を作成するためのフレーズセグメンテーションモデル作成部62と、英語フレーズNグラムモデル58およびフレーズセグメンテーションモデル66を用いてフレーズ翻訳モデル68を構成するHMMのパラメータの推定を行なうHMM学習部70とを含む。
【0055】
一方デコーダ42は、日本語の入力文40が与えられると、入力文40に対して可能な全てのセグメンテーションを行なうためのセグメンテーション処理部80と、セグメンテーション処理部80により作成されたセグメンテーションをすべて記憶するためのセグメンテーション記憶部82と、セグメンテーション記憶部82に記憶された、入力文40の全セグメンテーションに基づき、入力文40に対する翻訳フレーズからなるラッティスを作成するためのラッティス作成部84とを含む。ラッティス作成部84は、ラッティス作成にあたって、フレーズ翻訳モデル68を用いて、セグメンテーション記憶部82に記憶されている日本語の各フレーズを対応する英語のフレーズに置換し、さらにそれら英語のフレーズを任意の順序で組合せてラッティスを作成し、日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58、および英語言語モデル60を加えて使用して、ラッティスの各エッジおよびノードに確率を割当てていく。なお、英語のフレーズによるラッティス作成時には探索空間が非常に広いので、ラッティス作成部84は上記した確率を用いたビームサーチを行ない、確率が大きなエッジおよびノードのみを残してラッティスの作成を行なう。
【0056】
デコーダ42はさらに、ラッティス作成部84により作成された確率付きの英語のフレーズからなるラッティスを記憶するためのラッティス記憶部86と、ラッティス記憶部86に記憶された確率付きの英語のラッティスに対しA*探索を行なうことにより、ラッティスの経路のうちスコアの高いM個をMベストの訳文44として出力するためのA*探索処理部88を含む。
【0057】
図4に、英語フレーズNグラムモデル58の作成におけるP(/Ei|/Ei')の値の推定手順を示す。図4を参照して、まずステップ100において上記した確率を格納するための確率テーブルを何らかの一様な値で初期化する。ステップ102では繰返し制御変数iを0に初期化する。ステップ104で変数iに1を加算する。ステップ106で変数iの値が2を超えたか否かを判定する。変数iの値が2を超えていれば処理を終了する。変数iの値が2以下であればステップ108に進む。
【0058】
ステップ108ではステップ110からステップ116までの処理を英語コーパス34(図3参照)内の各文に対し繰返す。
【0059】
まずステップ110においてコーパス中の文に対して可能な全てのセグメンテーションをし、その結果に基づいてラッティスを作成する。ステップ112にて、このラッティス中の全てのエッジに図1に示すように確率を割当てる。ステップ114では、前向き・後向きアルゴリズムにより、各ノードの事後確率P(/Ei,/Ei'|e)を推定する。
【0060】
ステップ116では以上の処理を全ての文に対して完了したか否かを判定する。まだ完了していなければステップ110以下の処理を繰返す。全ての文に対して完了した後、ステップ118において、ステップ114で推定された事後確率を単語の発生頻度として用い、最尤アルゴリズムによってフレーズNグラムモデルの事前確率を式(7)に示すように算出する。
【0061】
続いて再度ステップ104に戻り、次の繰返しを行なう。本実施の形態では、上記した処理を2回繰返したところで処理を終了する。
【0062】
図5に、ある日本語の文Fに対するフレーズセグメンテーションモデルを算出する手順を示す。図5を参照して、まずステップ140で文Fに対して可能な全てのフレーズセグメンテーションを求め、ラッティスを作成する。ステップ142において、ステップ140により得られたラッティスに出現する全てのフレーズに対し、日本語フレーズNグラムモデル56を用い、前向き・後向きアルゴリズムによって前向き確率α、後向き確率βを算出する。ステップ144では、式(10)にしたがってP(/F|F)を計算する。この処理を全ての文に対して行なう。
【0063】
図6に、フレーズ翻訳モデルを算出する手順を示す。図6を参照して、まずステップ160で、図3に示す対訳コーパス32内の全ての対訳文についてフレーズを単位としたラッティス対<F,E>を作成する。
【0064】
ステップ162では、ステップ164〜ステップ170までの処理を繰返す。まずステップ164において、ソース文Fのラッティスにより、文Fの各セグメンテーション/Fに対する事後確率P(/F|F)を求める。ステップ166で、ターゲット文Eのラッティスで、セグメンテーション/Eとセグメンテーション/Fとを組合せたものに対する前向き確率α、後向き確率βを前向き・後向きアルゴリズムを用いて算出する。ステップ168では、こうして求めた確率をセグメンテーション/Eとセグメンテーション/Fとに含まれるフレーズの共起数としてカウントを加算する。
【0065】
ステップ170では、上記したステップ164〜168までの処理が全ての<F,E>に対して行なわれたか否かを判定し、まだ行なわれていなければ再びステップ164から繰返す。
【0066】
全ての<F,E>に対して処理が完了すると、ステップ172において、ステップ168で計算されたカウント値に基づき、P(/F|/E)を算出して処理を終了する。
【0067】
[動作]
以上に構成を説明した図3に示す統計機械翻訳システム20の動作について以下に説明する。統計機械翻訳システム20の動作には、以上の説明から明らかなように二つのフェーズがある。第1はフレーズ翻訳モデル68および関連する日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58、英語言語モデル60を作成するフェーズである。第2は、こうして作成されたフレーズ翻訳モデル68、日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58、および英語言語モデル60を用い、入力文40に対する翻訳を行なって訳文44を出力するフェーズである。以下順に説明する。
【0068】
−モデル作成フェーズ−
日本語コーパス30、対訳コーパス32、および英語コーパス34が予め準備されているものとする。日本語フレーズNグラムモデル作成部50は、日本語コーパス30から日本語フレーズNグラムモデル56を作成する。英語フレーズNグラムモデル作成部52は、英語コーパス34から英語フレーズNグラムモデル58を作成する。英語言語モデル作成部54は、英語コーパス34から英語言語モデル60を作成する。
【0069】
フレーズセグメンテーションモデル作成部62は、日本語フレーズNグラムモデル56および日本語コーパス30に基づき、フレーズセグメンテーションモデル66を作成する。
【0070】
HMM学習部70は、こうして作成されたフレーズセグメンテーションモデル66および英語フレーズNグラムモデル58を用い、さらに対訳コーパス32を用いてフレーズ翻訳モデル68の学習を行なう。
【0071】
−翻訳フェーズ−
フレーズによるHMM翻訳モデル38、すなわち日本語フレーズNグラムモデル56と英語フレーズNグラムモデル58とフレーズ翻訳モデル68、および英語言語モデル60が準備できると、デコーダ42は入力文40に対する翻訳が可能になる。セグメンテーション処理部80が入力文40に対して可能な全てのセグメンテーションを行ないセグメンテーション記憶部82に記憶させる。ラッティス作成部84は、セグメンテーション記憶部82に記憶されたセグメンテーションに基づき、フレーズ翻訳モデル68などを用いながら、フレーズをノードとする翻訳文のラッティスを作成する。この際作成される翻訳文のラッティスのエッジおよびノードには、モデルに基づいて計算される確率が割当てられる。作成されたラッティスはラッティス記憶部86に記憶される。
【0072】
A*探索処理部88は、A*探索アルゴリズムを用いて、ラッティス記憶部86に記憶された確率付きのラッティスの中で確率が最も高いMベストのパスを探索し、それらに対応フレーズシーケンスを訳文44として出力する。
【0073】
[効果]
以上のように本実施の形態では、対訳コーパスに含まれるフレーズの対応関係を直接にモデル化してHMM化し、効率的に翻訳フレーズ対を作成し翻訳を行なうことができる。精度も従来のものと比較してより高くなるという効果が得られる。
【0074】
[コンピュータによる実現]
この実施の形態の統計機械翻訳システム20は、コンピュータハードウェアと、そのコンピュータハードウェアにより実行されるプログラムと、コンピュータハードウェアに格納されるデータとにより実現される。図7はこのコンピュータシステム330の外観を示し、図8はコンピュータシステム330の内部構成を示す。
【0075】
図7を参照して、このコンピュータシステム330は、FD(フレキシブルディスク)ドライブ352およびCD−ROM(コンパクトディスク読出専用メモリ)ドライブ350を有するコンピュータ340と、キーボード346と、マウス348と、モニタ342とを含む。
【0076】
図8を参照して、コンピュータ340は、FDドライブ352およびCD−ROMドライブ350に加えて、CPU(中央処理装置)356と、CPU356、FDドライブ352およびCD−ROMドライブ350に接続されたバス366と、ブートアッププログラム等を記憶する読出専用メモリ(ROM)358と、バス366に接続され、プログラム命令、システムプログラム、および作業データ等を記憶するランダムアクセスメモリ(RAM)360とを含む。コンピュータシステム330はさらに、プリンタ344を含んでいる。
【0077】
ここでは示さないが、コンピュータ340はさらにローカルエリアネットワーク(LAN)への接続を提供するネットワークアダプタボードを含んでもよい。
【0078】
コンピュータシステム330に統計機械翻訳システム20としての動作を行なわせるためのコンピュータプログラムは、CD−ROMドライブ350またはFDドライブ352に挿入されるCD−ROM362またはFD364に記憶され、さらにハードディスク354に転送される。または、プログラムは図示しないネットワークを通じてコンピュータ340に送信されハードディスク354に記憶されてもよい。プログラムは実行の際にRAM360にロードされる。CD−ROM362から、FD364から、またはネットワークを介して、直接にRAM360にプログラムをロードしてもよい。
【0079】
なお、本実施の形態においては、図3に示すフレーズ翻訳モデル68、日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58、および英語言語モデル60などはいずれも図8に示すハードディスク354に記憶されており、必要に応じてRAM360に読出され、プログラム実行時に利用される。図3に示すセグメンテーション記憶部82、ラッティス記憶部86などは、いずれもRAM360により実現される。
【0080】
このプログラムは、コンピュータ340にこの実施の形態に係る統計機械翻訳システム20として動作を行なわせる複数の命令を含む。この動作を行なわせるのに必要な基本的機能のいくつかはコンピュータ340上で動作するオペレーティングシステム(OS)またはサードパーティのプログラム、もしくはコンピュータ340にインストールされる各種ツールキットのモジュールにより提供される。したがって、このプログラムはこの実施の形態のシステムを実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能または「ツール」を呼出すことにより、上記した統計機械翻訳システム20としての動作を実行する命令のみを含んでいればよい。コンピュータシステム330の動作は周知であるので、ここでは繰返さない。
【0081】
[変形例]
上記した実施の形態では、日本語フレーズNグラムモデル56および英語言語モデル60はいずれも、独立した単言語の日本語コーパス30および英語コーパス34から作成される。一般に単言語のコーパスの場合、その内容が充実しているため、こうした手順によって作成された日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58、英語言語モデル60は精度が高くなる。しかし本発明はそのような実施の形態には限定されない。例えば、対訳コーパス32に含まれる対訳数が十分多い場合には、対訳コーパス32のうちの日本語文から日本語フレーズNグラムモデル56を作成し、英語文から英語フレーズNグラムモデル58および英語言語モデル60を作成するようにしてもよい。
【0082】
なお、本実施の形態では、図4に示す処理は2回繰返し、図6に示す処理は1回のみで終了するが、本発明はそのような実施の形態に限定されるわけではない。例えば図4における処理は1回以上、任意の回数だけ繰返すようにしてもよい。また図6に示す処理では、ステップ172の後ステップ160に戻るようにし、その繰返しを2回以上行なうようにしてもよい。さらに、繰返し数を固定するのではなく、何らかの条件が成立したら繰返しを終了するようにしてもよい。
【0083】
また、日本語フレーズNグラムモデル作成部50および英語フレーズNグラムモデル作成部52による日本語フレーズNグラムモデル56および英語フレーズNグラムモデル58の作成の際、上記実施の形態では日本語コーパス30、対訳コーパス32、および英語コーパス34を制約として用いている。しかし本発明はそのような実施の形態には限定されない。例えばこれに加えて、またはこれらのいずれかに代えて、フレーズ形式の対訳辞書を制約として用いて日本語フレーズNグラムモデル56、英語フレーズNグラムモデル58の作成を行なうようにしてもよい。
【0084】
上記した実施の形態では、日本語から英語への翻訳を行なっている。しかし本発明はそのような実施の形態には限定されない。適切なコーパスが利用可能なものであれば、どのような言語の組合せに対しても本発明を適用できる。
【0085】
今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味および範囲内でのすべての変更を含む。
【図面の簡単な説明】
【0086】
【図1】ターゲット言語のフレーズラッティス構造の一例を示す図である。
【図2】フレーズ翻訳モデル作成の際に使用されるソース言語とターゲット言語とのフレーズラッティス構造の関係を示す図である。
【図3】本発明の一実施の形態に係る統計機械翻訳システム20のブロック図である。
【図4】英語フレーズNグラムモデル58の作成におけるP(/Ei|/Ei')の値の推定手順を示すフローチャートである。
【図5】日本語の文Fに対するフレーズセグメンテーションモデルを算出する手順を示すフローチャートである。
【図6】フレーズ翻訳モデルを算出する手順を示すフローチャートである。
【図7】本発明の一実施の形態を実現するコンピュータシステムの外観図である。
【図8】図7に示すコンピュータシステムのブロック図である。
【符号の説明】
【0087】
20 統計機械翻訳システム、30 日本語コーパス、32 対訳コーパス、34 英語コーパス、36 フレーズによるHMM翻訳モデル作成部、38 フレーズによるHMM翻訳モデル、40 入力文、42 デコーダ、44 訳文、50 日本語フレーズNグラムモデル作成部、52 英語フレーズNグラムモデル作成部、54 英語言語モデル作成部、56 日本語フレーズNグラムモデル、58 英語フレーズNグラムモデル、60 英語言語モデル、62 フレーズセグメンテーションモデル作成部、66 フレーズセグメンテーションモデル、68 フレーズ翻訳モデル、70 HMM学習部、80 セグメンテーション処理部、82 セグメンテーション記憶部、84 ラッティス作成部、86 ラッティス記憶部

【特許請求の範囲】
【請求項1】
ソース言語の入力文をターゲット言語に翻訳する翻訳装置であって、
前記ソース言語のフレーズNグラムモデル(Nは2以上の整数)、前記ターゲット言語のフレーズNグラムモデルおよび所定の言語モデル、および前記ターゲット言語から前記ソース言語へのフレーズによる翻訳モデルを記憶するための記憶手段と、
前記ソース言語の入力文に対するセグメンテーションを行なうためのセグメンテーション手段と、
前記セグメンテーション手段により得られたセグメンテーションにしたがい、前記記憶手段に記憶された前記ソース言語の前記フレーズNグラムモデル、前記ターゲット言語の前記フレーズNグラムモデルおよび前記言語モデル、ならびに前記ターゲット言語から前記ソース言語への前記フレーズによる翻訳モデルを用いて、前記ターゲット言語のフレーズを任意の順序で、かつ前記ソース言語のフレーズNグラムモデル、前記ターゲット言語の前記フレーズNグラムモデルおよび前記言語モデル、ならびに前記フレーズによる翻訳モデルを用いて得た確率を各ノードとエッジとに付した、フレーズのラッティスを作成するためのラッティス作成手段と、
前記ラッティス作成手段により作成された前記ラッティスのうちで、最大確率を与える上位M個のフレーズシーケンスを探索するための探索手段とを含む、統計機械翻訳装置。
【請求項2】
前記探索手段は、前記ラッティス作成手段により作成された前記ラッティスのうちで、最大確率を与える上位M個のフレーズシーケンスをA*探索アルゴリズムにより探索するための手段を含む、請求項1に記載の統計機械翻訳装置。
【請求項3】
前記ラッティス作成手段は、所定の確率条件を充足するノードのみを用いて前記ラッティスを作成するための手段を含む、請求項1または請求項2に記載の統計機械翻訳装置。
【請求項4】
前記フレーズによる翻訳モデルは、前記ターゲット言語の前記フレーズNグラムモデル、前記ソース言語によるフレーズセグメンテーションモデル、および前記ターゲット言語から前記ソース言語へのフレーズ翻訳モデルの組合せにより形成される、請求項1〜請求項3のいずれかに記載の統計機械翻訳装置。
【請求項5】
コンピュータにより実行されると、請求項1〜請求項4のいずれかに記載の統計機械翻訳装置として当該コンピュータを動作させる統計機械翻訳プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2006−99208(P2006−99208A)
【公開日】平成18年4月13日(2006.4.13)
【国際特許分類】
【出願番号】特願2004−281636(P2004−281636)
【出願日】平成16年9月28日(2004.9.28)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成16年度独立行政法人情報通信研究機構、研究テーマ「大規模コーパスベース音声対話翻訳技術の研究開発」に関する委託研究、産業活力再生特別措置法第30条の適用を受ける特許出願
【出願人】(393031586)株式会社国際電気通信基礎技術研究所 (905)
【Fターム(参考)】