(57)【要約】【課題】翻訳精度を向上させることのできる機械翻訳技術を提供する。【解決手段】機械翻訳装置２は、同期文脈自由文法における生成規則の右辺の翻訳先言語の記号列が終端記号から始まるように制約された生成規則を格納したルールテーブル１１４から部分仮説に対して生成規則を探索する生成規則探索手段２４１と、その生成規則に対して生成規則の非終端記号が被う入力文の範囲を示す単語範囲を付加する単語範囲付き生成規則生成手段２４２と、単語範囲付き生成規則に含まれる翻訳済み単語と単語範囲とを新たな部分仮説として作成し、生成規則をトップダウンに適用し且つ生成規則の翻訳先言語側の非終端記号が文頭から文末に亘って並べられた順序で新たな部分仮説を順次拡張し、部分仮説スコアを算出する部分仮説スコア算出手段２４３と、適用可能な仮説のうちで部分仮説スコアが最大となる仮説を探索する仮説探索手段２４４とを備える。【選択図】図５
2008015844.tif 000002
【特許請求の範囲】
【請求項１】
同期文脈自由文法を用いて翻訳元言語の単語列から翻訳先言語の単語列を生成する生成規則の右辺の前記翻訳先言語の記号列が終端記号から始まるように生成された生成規則が複数格納されたルールテーブルを利用して、入力された翻訳元言語の単語列の翻訳結果である前記入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して前記所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する機械翻訳装置であって、
前記所定の部分仮説を拡張するために適用可能な生成規則を前記ルールテーブルからそれぞれ探索する生成規則探索手段と、
前記探索された生成規則の翻訳元言語側に対して、前記入力された翻訳元言語の単語列を構成する単語の単語数と単語位置とに基づいて、前記探索された生成規則の非終端記号が被う翻訳元言語の単語列の範囲を示す単語範囲を付加して、適用可能な単語範囲付き生成規則をそれぞれ生成する単語範囲付き生成規則生成手段と、
前記生成された単語範囲付き生成規則に含まれる翻訳先言語側の翻訳済み単語と前記単語範囲とを、前記新たな部分仮説として作成すると共に、前記適用可能な生成規則をトップダウンに適用し且つ前記適用可能な生成規則において翻訳先言語側の非終端記号が文頭から文末に亘って並べられた順序で、前記新たな部分仮説を拡張し、前記生成規則ごとにそれぞれ予め求められた、翻訳の確からしさを表す翻訳モデルのスコアと、前記翻訳先言語の単語列としての確からしさを表す言語モデルのスコアとに基づいて、前記作成された部分仮説の評価値を示す部分仮説スコアを算出する部分仮説スコア算出手段と、
前記入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、前記所定の部分仮説を拡張することによって最終的に生成された部分仮説のうちで、前記部分仮説スコアが最大となる部分仮説を、前記仮説として探索する仮説探索手段と、
を備えることを特徴とする機械翻訳装置。
【請求項２】
同期文脈自由文法を用いて翻訳元言語の単語列から翻訳先言語の単語列を生成する生成規則の右辺の前記翻訳先言語の記号列が終端記号から始まるように生成された生成規則が複数格納されたルールテーブルを利用して、入力された翻訳元言語の単語列の翻訳結果である前記入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して前記所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する機械翻訳装置の機械翻訳方法であって、
前記機械翻訳装置は、
前記所定の部分仮説を拡張するために適用可能な生成規則を前記ルールテーブルからそれぞれ探索する生成規則探索ステップと、
前記探索された生成規則の翻訳元言語側に対して、前記入力された翻訳元言語の単語列を構成する単語の単語数と単語位置とに基づいて、前記探索された生成規則の非終端記号が被う翻訳元言語の単語列の範囲を示す単語範囲を付加して、適用可能な単語範囲付き生成規則をそれぞれ生成する単語範囲付き生成規則生成ステップと、
前記生成された単語範囲付き生成規則に含まれる翻訳先言語側の翻訳済み単語と前記単語範囲とを、前記新たな部分仮説として作成すると共に、前記適用可能な生成規則をトップダウンに適用し且つ前記適用可能な生成規則において翻訳先言語側の非終端記号が文頭から文末に亘って並べられた順序で、前記新たな部分仮説を拡張し、前記生成規則ごとにそれぞれ予め求められた、翻訳の確からしさを表す翻訳モデルのスコアと、前記翻訳先言語の単語列としての確からしさを表す言語モデルのスコアとに基づいて、前記作成された部分仮説の評価値を示す部分仮説スコアを算出する部分仮説スコア算出ステップと、
前記入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、前記所定の部分仮説を拡張することによって最終的に生成された部分仮説のうちで、前記部分仮説スコアが最大となる部分仮説を、前記仮説として探索する仮説探索ステップと、
を有することを特徴とする機械翻訳方法。
【請求項３】
請求項１に記載の機械翻訳装置で利用する生成規則を作成する生成規則作成装置であって、
翻訳元言語の単語と翻訳先言語の単語との単語対応に基づき、互いに同じ意味を有する翻訳元言語の単語列と翻訳先言語の単語列との組合せを複数備える対訳コーパスに格納された前記組合せから、前記翻訳元言語と翻訳先言語において互いに同じ意味を有する単語または句の組合せをフレーズペアとして抽出するフレーズペア抽出手段と、
前記抽出されたフレーズペアに基づいて、同期文脈自由文法の生成規則において、右辺の前記翻訳先言語の記号列が終端記号から始まるという制約を加えた生成規則を作成する生成規則作成手段と、
を備えることを特徴とする生成規則作成装置。
【請求項４】
請求項１に記載の機械翻訳装置で利用する生成規則を作成する生成規則作成装置の生成規則作成方法であって、
前記生成規則作成装置は、
翻訳元言語の単語と翻訳先言語の単語との単語対応に基づき、互いに同じ意味を有する翻訳元言語の単語列と翻訳先言語の単語列との組合せを複数備える対訳コーパスに格納された前記組合せから、前記翻訳元言語と翻訳先言語において互いに同じ意味を有する単語または句の組合せをフレーズペアとして抽出するフレーズペア抽出ステップと、
前記抽出されたフレーズペアに基づいて、同期文脈自由文法の生成規則において、右辺の前記翻訳先言語の記号列が終端記号から始まるという制約を加えた生成規則を作成する生成規則作成ステップと、
を有することを特徴とする生成規則作成方法。
【請求項５】
請求項２に記載の機械翻訳方法をコンピュータに実行させることを特徴とする機械翻訳プログラム。
【請求項６】
請求項４に記載の生成規則作成方法をコンピュータに実行させることを特徴とする生成規則作成プログラム。
【請求項７】
請求項５に記載の機械翻訳プログラムまたは請求項６に記載の生成規則作成プログラムが記録されたことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械翻訳装置、機械翻訳方法、および生成規則作成装置、生成規則作成方法、ならびにそれらのプログラムおよび記録媒体に関する。
【背景技術】
【０００２】
従来、統計モデルを用いて機械翻訳を実現する技術（統計的機械翻訳）が知られている（例えば、非特許文献１〜４）。
統計的機械翻訳は、翻訳元言語の単語列（文）が与えられたとき、翻訳確率を最大化するような翻訳先言語の単語列（文）を探索する問題として定式化される。ここで、翻訳確率を対数線形モデルで表現すると、最終的に統計的機械翻訳は式（１）で定式化される。
【０００３】
【数１】
2008015844.tif 000003
【０００４】
ここで、翻訳元言語の単語列には、各単語位置に整数「１」〜「Ｊ」の識別符号が付与されている。すなわち、翻訳元言語の単語列は、「Ｊ」個の単語から構成される。なお、翻訳元言語が日本語の場合には、翻訳元言語の単語列は、「Ｊ」個の自立語、付属語、句読点（。、）から構成されることとなる。また、翻訳先言語の単語列には、各単語位置に整数「１」〜「Ｉ」の識別符号が付与されている。すなわち、翻訳先言語の単語列は、「Ｉ」個の単語から構成される。また、ｍ（１≦ｍ≦Ｍ）は、素性関数を識別するための整数を示し、Ｍは、素性関数の個数を示す。また、各素性関数は、翻訳としての確からしさを表すものや、翻訳先言語としての確からしさを表すもの等である。単語列集合Ｅは、翻訳先言語の単語のあらゆる組み合わせで生成可能なすべての単語列集合を表す。各素性重みλmは、誤り最小化学習法等を用いて素性重み学習用対訳コーパスにおける翻訳精度の値が最大になるように設定される（例えば、非特許文献１参照）。
【０００５】
翻訳元言語の文から翻訳先言語の文への翻訳に対して、重み付き同期文脈自由文法（weighted synchronous context-free grammar）を利用して、翻訳元言語の文と翻訳先言語の文との対応付けをモデル化する方法が知られている（例えば、非特許文献２参照）。
重み付き同期文脈自由文法は、式（２）に示す生成規則に、重みが付いたものの集合からなるものである。
【０００６】
【数２】
2008015844.tif 000004
【０００７】
ここで、矢印の左辺のＸは、非終端記号を示す。矢印の右辺のγは、終端記号または非終端記号から構成された記号列であって翻訳元言語に対応している。また、αは、終端記号または非終端記号から構成された記号列であって翻訳先言語に対応している。また、「〜」は、記号列γに含まれる非終端記号と、記号列αに含まれる非終端記号との一対一の対応関係を表している。ここでは、記号列γに含まれる非終端記号の個数と、記号列αに含まれる非終端記号の個数とは同じものとする。
【０００８】
式（２）に示した生成規則の具体例を表１に示す。ここで、Ｘ(k)は、非終端記号であり、ｋ（ｋ＝１，２，…）は、翻訳元言語の非終端記号の配置と、翻訳先言語の非終端記号の配置との対応関係を示している。
【０００９】
【表１】
2008015844.tif 000005
【００１０】
非特許文献２に記載された方法の特殊な形として、式（３）に示す形式の生成規則だけを用いた方法も知られている（非特許文献３参照）。非特許文献３に記載された方法は、句単位で統計的機械翻訳を行うものであり、フレーズペアに基づく翻訳方法である。この方法では、抽出されたフレーズペアの集合から同期文脈自由文法を生成する際に、式（３）に示す形式の生成規則だけ用いる。この生成規則の形式に依存して解探索を行う場合には、効率的なビームサーチの手法が利用可能である（非特許文献４参照）。非特許文献４に記載の方法では、解探索において、翻訳された単語範囲を、翻訳済みの単語の位置をマークしたビット列で表現してメモリに保持している。
【００１１】
【数３】
2008015844.tif 000006
【００１２】
重み付き同期文脈自由文法を利用した従来のモデル化では、重み付き同期文脈自由文法の導出Ｄを用いて、翻訳元言語の単語列と翻訳先言語の単語列とをそれぞれｆ（Ｄ）、ｅ（Ｄ）と記述する。ここで、例えば、翻訳元言語の単語列ｆ（Ｄ）の「ｉ」番目の単語から「ｊ」番目単語を被う生成規則をｒとすると、導出Ｄは、三つ組＜ｒ，ｉ，ｊ＞の集合で表される。
【００１３】
そして、非特許文献２のモデル化では、統計的機械翻訳を定式化した式（１）を導出ベースに修正した式（４）を用いる。この定式化では、翻訳元言語の単語列が与えられたとき、素性関数と素性重みとの積の線形和が最大となるような導出Ｄ＾を求めたときに、それに対応するｅ（Ｄ＾）が翻訳結果となる。ここで、記号「＾（ハット）」は、文字「Ｄ」の上に付される記号を示し、本明細書では、以下、記号「＾（ハット）」を同様な意味で使用する。
【００１４】
【数４】
2008015844.tif 000007
【００１５】
式（４）に示す各素性関数の値ｈm（Ｄ）に何を用いるかについては様々なバリエーションが考えられる。例えば、以下の６つの関数の値の自然対数loge（以下、lnと表記する）を用いる場合がある（例えば、非特許文献３参照）。これら６つの関数の値とは、式（５）に示す翻訳確率Ｐe｜f（Ｄ），Ｐf｜e（Ｄ）と、式（６）に示すレキシカル重みLexe｜f（Ｄ），Lexf｜e（Ｄ）と、n-gram言語モデルの確率ＰLM（ｅ（Ｄ））と、フレーズペナルテイexp（length（ｅ（Ｄ）））である。ここで、length（・）は、単語数を返す関数を示す。
【００１６】
【数５】
2008015844.tif 000008
【数６】
2008015844.tif 000009
【００１７】
翻訳確率Ｐe｜f（Ｄ），Ｐf｜e（Ｄ）と、レキシカル重みLexe｜f（Ｄ），Lexf｜e（Ｄ）とは、翻訳としての確からしさを評価するための値であり、翻訳モデルとも呼ばれている。詳細には、例えば、翻訳確率Ｐe｜f（Ｄ）は、式（５）に示すように、導出Ｄに含まれる生成規則ｒごとの確率Ｐ（α｜γ）を生成規則ごとのスコアとして、導出Ｄに含まれるすべての生成規則ｒについて生成規則ごとのスコアを積算したものである。
【００１８】
例えば、非特許文献２に記載された方法では、翻訳における解探索を次の手順で行う。
まず、ＣＫＹ（Cocke-Kasami-Younger）法に基づくボトムアップ構文解析において、同期文脈自由文法の翻訳元言語側の生成規則を、翻訳元言語の単語列に適用し、翻訳元言語の構文解析木を得る。そして、翻訳元言語の構文解析木に対応する同期文脈自由文法の最適な導出Ｄ＾を、前記した式（４）に基づいて求め、その最適な導出Ｄ＾に基づいて翻訳先言語の単語列を生成する。ただし、統計的機械翻訳の解探索において解の候補（以下、仮説と呼ぶ）は膨大であるため、計算量の観点から、全探索をして真の最適解を求めることは事実上不可能となっている。そこで、従来、解探索の過程で部分的に構成された、同期文脈自由文法の部分木の導出Ｄに対して所定の枝刈りを実行しながら処理をすすめて準最適解を求めることとしている。
【非特許文献１】Franz Josef Och. Minimum error rate training in statistical machine translation. In Proc.of ACL 2003、p. 160-167、Sapporo、Japan、July 2003
【非特許文献２】David Chiang. A hierarchical phrase-based model for statistical machine translation. In Proc. of ACL 2005, p. 263-270, Ann Arbor, Michigan, June 2005
【非特許文献３】Philipp Koehn, Franz Josef Och, and Daniel Marcu. Statistical phrase-based translation. In Proc. of NAACL 2003, p. 48-54、Edmonton, Canada, 2003
【非特許文献４】Philipp Koehn. Pharaoh: A beam search decoder for phrase-based statistical machine translation models. In Proc. of the 6th Conference of the Association for Machine Translation in the Americas(AMTA), p. l15-124, September-October 2004
【発明の開示】
【発明が解決しようとする課題】
【００１９】
統計的機械翻訳の解探索において、副作用の少ない枝刈りを実現するためには、前記した式（４）に示される導出Ｄの仮説の尤度を正確に見積もることが必要である。その際に、翻訳精度を向上させるために、素性関数の１つとして、翻訳先言語のn-gram言語モデルを用いることが重要である。そのため、仮説のもととなる部分仮説のスコアとして、n-gram言語モデルのスコアを有効利用するためには、翻訳先言語の文頭から文末にかけて逐次的に生成されることが望まれる。しかしながら、従来の方法では、部分仮説が翻訳先言語の文頭からの文末にかけて逐次的に生成されることが保証されていなかった。
【００２０】
そこで、本発明では、前記した問題を解決し、翻訳精度を向上させることのできる機械翻訳技術を提供することを目的とする。
【課題を解決するための手段】
【００２１】
前記課題を解決するため、請求項１に記載の機械翻訳装置は、同期文脈自由文法を用いて翻訳元言語の単語列から翻訳先言語の単語列を生成する生成規則の右辺の前記翻訳先言語の記号列が終端記号から始まるように生成された生成規則が複数格納されたルールテーブルを利用して、入力された翻訳元言語の単語列の翻訳結果である前記入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して前記所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する機械翻訳装置であって、前記所定の部分仮説を拡張するために適用可能な生成規則を前記ルールテーブルからそれぞれ探索する生成規則探索手段と、前記探索された生成規則の翻訳元言語側に対して、前記入力された翻訳元言語の単語列を構成する単語の単語数と単語位置とに基づいて、前記探索された生成規則の非終端記号が被う翻訳元言語の単語列の範囲を示す単語範囲を付加して、適用可能な単語範囲付き生成規則をそれぞれ生成する単語範囲付き生成規則生成手段と、前記生成された単語範囲付き生成規則に含まれる翻訳先言語側の翻訳済み単語と前記単語範囲とを、前記新たな部分仮説として作成すると共に、前記適用可能な生成規則をトップダウンに適用し且つ前記適用可能な生成規則において翻訳先言語側の非終端記号が文頭から文末に亘って並べられた順序で、前記新たな部分仮説を順次拡張し、前記生成規則ごとにそれぞれ予め求められた、翻訳の確からしさを表す翻訳モデルのスコアと、前記翻訳先言語の単語列としての確からしさを表す言語モデルのスコアとに基づいて、前記作成された部分仮説の評価値を示す部分仮説スコアを算出する部分仮説スコア算出手段と、前記入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、前記所定の部分仮説を拡張することによって最終的に生成された部分仮説のうちで、前記部分仮説スコアが最大となる部分仮説を、前記仮説として探索する仮説探索手段とを備えることを特徴とする。
【００２２】
また、請求項２に記載の機械翻訳方法は、同期文脈自由文法を用いて翻訳元言語の単語列から翻訳先言語の単語列を生成する生成規則の右辺の前記翻訳先言語の記号列が終端記号から始まるように生成された生成規則が複数格納されたルールテーブルを利用して、入力された翻訳元言語の単語列の翻訳結果である前記入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して前記所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する機械翻訳装置の機械翻訳方法であって、前記機械翻訳装置は、前記所定の部分仮説を拡張するために適用可能な生成規則を前記ルールテーブルからそれぞれ探索する生成規則探索ステップと、前記探索された生成規則の翻訳元言語側に対して、前記入力された翻訳元言語の単語列を構成する単語の単語数と単語位置とに基づいて、前記探索された生成規則の非終端記号が被う翻訳元言語の単語列の範囲を示す単語範囲を付加して、適用可能な単語範囲付き生成規則をそれぞれ生成する単語範囲付き生成規則生成ステップと、前記生成された単語範囲付き生成規則に含まれる翻訳先言語側の翻訳済み単語と前記単語範囲とを、前記新たな部分仮説として作成すると共に、前記適用可能な生成規則をトップダウンに適用し且つ前記適用可能な生成規則において翻訳先言語側の非終端記号が文頭から文末に亘って並べられた順序で、前記新たな部分仮説を順次拡張し、前記生成規則ごとにそれぞれ予め求められた、翻訳の確からしさを表す翻訳モデルのスコアと、前記翻訳先言語の単語列としての確からしさを表す言語モデルのスコアとに基づいて、前記作成された部分仮説の評価値を示す部分仮説スコアを算出する部分仮説スコア算出ステップと、前記入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、前記所定の部分仮説を拡張することによって最終的に生成された部分仮説のうちで、前記部分仮説スコアが最大となる部分仮説を、前記仮説として探索する仮説探索ステップとを有することを特徴とする。
【００２３】
請求項１に記載の機械翻訳装置または請求項２に記載の機械翻訳方法によれば、生成規則の右辺の翻訳先言語の記号列が終端記号から始まっているので、機械翻訳装置は、終端記号、すなわち、翻訳先の単語から始まる部分仮説を生成することができる。したがって、機械翻訳装置は、入力された翻訳元言語の単語列において未翻訳の部分に対して部分仮説を順次拡張するように、生成規則をトップダウンに展開し、翻訳先言語側の非終端記号の並ぶ順序で部分仮説を作成することにより、入力に対応する翻訳先言語の単語列の候補としての仮説を、翻訳先言語の文頭から文末にかけて逐次的に生成することができる。また、機械翻訳装置は、生成規則ごとの翻訳モデルおよび言語モデルに基づいて、各部分仮説の評価値である部分仮説スコアを算出し、部分仮説スコアが最大となる部分仮説を仮説として探索する。したがって、翻訳先言語の単語列の翻訳精度を向上させることができる。また、機械翻訳装置は、部分仮説を翻訳先言語の文頭から文末にかけて逐次的に生成するので、比較的長いn-gram言語モデルに対しても読み出し易くなる。そのため、比較的長いn-gram言語モデルを採用することにより、それに応じた翻訳性能の向上を図ることが可能となる。さらに、部分仮説を翻訳先言語の文頭から文末にかけて逐次的に生成するため、所定のしきい値を定めておくことにより枝刈りを効果的に実行し、解探索空間を低減することも可能となる。
【００２４】
また、請求項３に記載の生成規則作成装置は、請求項１に記載の機械翻訳装置で利用する生成規則を作成する生成規則作成装置であって、翻訳元言語の単語と翻訳先言語の単語との単語対応に基づき、互いに同じ意味を有する翻訳元言語の単語列と翻訳先言語の単語列との組合せを複数備える対訳コーパスに格納された前記組合せから、前記翻訳元言語と翻訳先言語において互いに同じ意味を有する単語または句の組合せをフレーズペアとして抽出するフレーズペア抽出手段と、前記抽出されたフレーズペアに基づいて、同期文脈自由文法の生成規則において、右辺の前記翻訳先言語の記号列が終端記号から始まるという制約を加えた生成規則を作成する生成規則作成手段とを備えることを特徴とする。
【００２５】
また、請求項４に記載の生成規則作成方法は、請求項１に記載の機械翻訳装置で利用する生成規則を作成する生成規則作成装置の生成規則作成方法であって、前記生成規則作成装置は、翻訳元言語の単語と翻訳先言語の単語との単語対応に基づき、互いに同じ意味を有する翻訳元言語の単語列と翻訳先言語の単語列との組合せを複数備える対訳コーパスに格納された前記組合せから、前記翻訳元言語と翻訳先言語において互いに同じ意味を有する単語または句の組合せをフレーズペアとして抽出するフレーズペア抽出ステップと、前記抽出されたフレーズペアに基づいて、同期文脈自由文法の生成規則において、右辺の前記翻訳先言語の記号列が終端記号から始まるという制約を加えた生成規則を作成する生成規則作成ステップとを有することを特徴とする。
【００２６】
請求項３に記載の生成規則作成装置または請求項４に記載の生成規則作成方法によれば、生成規則作成装置は、同期文脈自由文法の生成規則に対して、右辺の翻訳先言語の記号列が終端記号から始まるという制約を加えた生成規則を作成する。このように生成規則における翻訳先言語側に制約を加えることにより、作成された生成規則を用いて仮説探索を行う際に、翻訳元言語よりも翻訳先言語を優先した構文木を構築することを容易に行えるようになる。
【００２７】
また、請求項５に記載の機械翻訳プログラムは、請求項２に記載の機械翻訳方法をコンピュータに実行させることを特徴とする。このように構成されることにより、このプログラムをインストールされたコンピュータは、このプログラムに基づいた各機能を実現することができる。
【００２８】
また、請求項６に記載の生成規則作成プログラムは、請求項４に記載の生成規則作成方法をコンピュータに実行させることを特徴とする。このように構成されることにより、このプログラムをインストールされたコンピュータは、このプログラムに基づいた各機能を実現することができる。
【００２９】
また、請求項７に記載のコンピュータ読み取り可能な記録媒体は、請求項５に記載の機械翻訳プログラムまたは請求項６に記載の生成規則作成プログラムが記録されたことを特徴とする。このように構成されることにより、この記録媒体を装着されたコンピュータは、この記録媒体に記録されたプログラムに基づいた各機能を実現することができる。
【発明の効果】
【００３０】
本発明によれば、翻訳精度を向上させることが可能となる。
【発明を実施するための最良の形態】
【００３１】
以下、図面を参照して本発明の機械翻訳装置および機械翻訳方法、並びに、生成規則作成装置および生成規則作成方法を実施するための最良の形態（以下「実施形態」という）について詳細に説明する。以下では、生成規則作成装置および生成規則作成方法と、機械翻訳装置および機械翻訳方法とに分けて順次説明を行う。
【００３２】
［生成規則作成装置の構成］
図１は、本発明の実施形態に係る生成規則作成装置の構成を示す機能ブロック図である。
生成規則作成装置１は、翻訳元言語の単語列を翻訳先言語の単語列に機械的に翻訳する機械翻訳装置で利用する生成規則を作成するものである。以下では、翻訳元言語を日本語、翻訳先言語を英語として説明することとする。
生成規則作成装置１は、例えば、ＣＰＵ（Central Processing Unit）と、ＲＡＭ（Random Access Memory）と、ＲＯＭ（Read Only Memory）と、ＨＤＤ（Hard Disk Drive）と、入出力インタフェース等から構成され、図１に示すように、入出力手段１０と、記憶手段１１と、単語対応作成モジュール１２と、制御手段１３とを備えている。
【００３３】
入出力手段１０は、対訳コーパス１５０を単語対応作成モジュール１２に入力したり、演算処理の結果や記憶手段１１に記憶されたデータ等を出力装置Ｄに出力したりするものである。また、入出力手段１０は、入力装置Ｋから、所定のコマンド（モード選択コマンドや動作コマンド等）を制御手段１３に入力する。本実施形態では、モード選択コマンドは、「単語対応作成」モードを選択するコマンドと、「ルールテーブル作成」モードを選択するコマンドとを含む。
対訳コーパス１５０は、互いに同じ意味を有する翻訳元言語の単語列と翻訳先言語の単語列との組合せのデータを複数備える。
【００３４】
記憶手段１１は、例えば、ＣＰＵによる演算処理等に利用されるＲＡＭや、例えば、所定のプログラム、各種データベース、処理結果等を格納するＲＯＭやＨＤＤを備えている。例えば、記憶手段１１には、処理結果として、単語対応１１１と、フレーズペア１１２と、ルール１１３と、ルールテーブル１１４とが格納される。
【００３５】
単語対応作成モジュール１２は、「単語対応作成」モードを選択するコマンドが入力されたときに、対訳コーパス１５０から得られる単語共起に関する統計量を活用し、多対多（翻訳元言語または翻訳先言語の単語がどこにも対応付かないことを含む）の単語対応１１１を自動的に求めるものである。単語対応作成モジュール１２は、多対多の単語対応１１１を求めるために、例えば、単語単位の翻訳モデルを活用して、文全体で最適な１対多対応と多対１対応とを求め、その両者を組み合わせる。組み合わせ方の一例としては、１対多対応と多対１対応とのインターセクションを使い、それに隣接する１対多対応と多対１対応とのユニオンの要素を追加する方法がある（非特許文献３参照）。なお、単語単位の翻訳モデルについては、「Peter F. Brown, Stephen A. Della Pietra, Vincent J. Della Pietra, and Robert L. Mercer. The mathematics of statistical machine translation: Parameter estimation. Computatinal Linguistics, 19(2):263-311, 1993」に記載されている。また、対訳コーパス１５０自体が単語対応１１１の情報を保持している場合には、単語対応作成モジュール１２を省略した構成としてもよい。
【００３６】
図２に、日英の対訳の単語対応の例を示す。８個の単語および句点（ピリオド）を示す黒丸が単語対応である。
「違憲  の  問題  について  は  、  連邦  憲法  裁判所  が  決定  する  。」
「The Federal Constitutional Court decides on the question of unconstitutionality  .」
【００３７】
制御手段１３は、モード判定手段１３１と、フレーズペア抽出手段１３２と、生成規則作成手段１３３と、翻訳スコア計算手段１３４とを備えている。
【００３８】
モード判定手段１３１は、入力装置Ｋから入出力手段１０を介して入力したモード選択コマンドの示すモードを判定するものである。モード判定手段１３１は、モードが「単語対応作成」モードの場合には、単語対応作成モジュール１２に対して対訳コーパス１５０を入力するように指示する。また、モード判定手段１３１は、モードが「ルールテーブル作成」モードの場合には、フレーズペア抽出手段１３２に対して対訳コーパス１５０を入力するように指示する。
【００３９】
フレーズペア抽出手段１３２は、翻訳元言語の単語と翻訳先言語の単語との単語対応１１１に基づき、対訳コーパス１５０から、翻訳元言語と翻訳先言語において互いに同じ意味を有する単語または句の組合せをフレーズペア１１２として抽出するものである。抽出されたフレーズペア１１２は記憶手段１１に格納される。フレーズペア抽出手段１３２は、式（１）に示した翻訳元言語の単語列と翻訳先言語の単語列との対訳文に対して、ある単語対応ａが計算されたとき、式（７）に示すフレーズペアを抽出する。ここで、単語対応ａは、翻訳先言語の単語位置と翻訳元言語の単語位置の組の集合である。式（７）の「ｉ，ｍ，ｊ，ｎ」は整数を示し、単語対応ａとの間で式（８）の関係を満たすものである。
【００４０】
【数７】
2008015844.tif 000010
【００４１】
【数８】
2008015844.tif 000011
【００４２】
例えば、図２に示した対訳文の単語対応からは、以下のようなフレーズペアが抽出されることとなる。
【００４３】
【表２】
2008015844.tif 000012
【００４４】
生成規則作成手段１３３は、対訳コーパス１５０の中の対訳文ペア（対訳文の組合わせ）ごとに、その対訳文ペアから抽出されたフレーズペア１１２内に格納されたフレーズペアのリストをもとに、同期文脈自由文法の生成規則を作成し、ルール１１３に格納するものである。ここで、作成する生成規則では、翻訳先言語側は終端記号で始まらなければならないという制約を設ける。また、ルール１１３に格納する生成規則は、重複を許すものとする。こうして作成される生成規則においては、非特許文献２で用いられる以下のようなグルー規則は用いない。なお、グルー規則とは、Ｓを開始記号、Ｘを非終端記号としたときに、以下の２つの規則のことを示す。
Ｓ → ＜Ｓ(1)Ｘ(1) ，Ｓ(1)Ｘ(1)＞
Ｓ → ＜Ｘ(1) ，Ｘ(1)＞
【００４５】
生成規則作成手段１３３は、フレーズペア
2008015844.tif 000013
に対応して、式（９）〜式（９ｄ）の生成規則を生成する。このうち、式（９ａ）〜式（９ｄ）の生成規則は、式（９）の生成規則から自動的に生成することができる。また、式（９ａ）〜式（９ｄ）の生成規則に付与されるスコアについても、式（９）の生成規則と同一値を用いることができる。このような理由から、実装上は、式（９ａ）〜式（９ｄ）の生成規則は明示的にストレージに格納する必要がない。式（９ａ）〜式（９ｄ）の生成規則は、非特許文献２で用いられるグルー規則の非終端記号Ｘを、Ｘを左辺とする個々の規則で１回書き換えたものに対応している。
【００４６】
【数９】
2008015844.tif 000014
【００４７】
生成規則作成手段１３３は、式（１０）で示す生成規則が生成され、かつ、式（９）の右辺のフレーズペアが、式（１１）の関係を満たす場合、式（１２）で示す生成規則を生成する。
【００４８】
【数１０】
2008015844.tif 000015
【００４９】
【数１１】
2008015844.tif 000016
【００５０】
【数１２】
2008015844.tif 000017
【００５１】
ここで、αには終端記号で始まらなければならないという制約を設ける。なお、本実施形態に必須のものではないが、生成規則作成手段１３３は、例えば、以下の制約も採用する。第１に、γとαの両方とも、少なくとも１つの終端記号を含まなければならない。第２に、生成規則は、最大２つの非終端記号を有することができる。しかし、翻訳元言語側のγで、非終端記号は隣接してはならない。
【００５２】
翻訳スコア計算手段１３４は、ルール１１３に重複を許して格納されている生成規則を数え上げ、各生成規則ｒに対応する翻訳確率Ｐe｜f（ｒ），Ｐf｜e（ｒ）と、レキシカル重みLex e｜f（ｒ），Lex f｜e（ｒ）とを計算し、各生成規則ｒに対応づけてルールテーブル１１４に格納する。図３に、ルールテーブルの一例を示す。また、表３に生成規則ｒに対応した各翻訳確率、レキシカル重みの計算式を示す。このスコア計算は非特許文献２に倣ったものである。
【００５３】
【表３】
2008015844.tif 000018
【００５４】
［具体例］
具体的には、生成規則作成手段１３３は、図２に示した対訳文から表４に示すような規則（右辺だけ示す）を生成する。表４の例では、各生成規則の右辺の翻訳先言語側は必ず終端記号（単語）で始まっている。一方、従来の方法では、生成規則の右辺の翻訳先言語側は必ずしも終端記号で始まることはなく、例えば、表１に示したように、非終端記号Ｘで始まる場合がある。
【００５５】
【表４】
2008015844.tif 000019
【００５６】
なお、モード判定手段１３１と、フレーズペア抽出手段１３２と、生成規則作成手段１３３と、翻訳スコア計算手段１３４とは、ＣＰＵが記憶手段１１のＨＤＤ等に格納された所定のプログラムをＲＡＭに展開して実行することにより実現されるものである。
【００５７】
［生成規則作成装置の動作］
図１に示した生成規則作成装置の動作について図４を参照（適宜図１参照）して説明する。図４は、図１に示した生成規則作成装置の動作を示すフローチャートである。
生成規則作成装置１は、モード判定手段１３１によって、モードを判定する（ステップＳ１）。判定の結果、モードが「単語対応作成」モードの場合には、生成規則作成装置１は、入出力手段１０を介して、対訳コーパス１５０を単語対応作成モジュール１２に入力し（ステップＳ２）、単語対応作成モジュール１２によって、単語対応を作成する（ステップＳ３）。作成された単語対応１１１は、記憶手段１１に格納される。
【００５８】
一方、ステップＳ１での判定の結果、モードが「ルールテーブル作成」モードの場合には、生成規則作成装置１は、入出力手段１０を介して、対訳コーパス１５０を制御手段１３に入力し（ステップＳ４）、フレーズペア抽出手段１３２によって、対訳コーパス１５０からフレーズペアを抽出する（ステップＳ５：フレーズペア抽出ステップ）。抽出されたフレーズペア１１２は、記憶手段１１に格納される。
【００５９】
続いて、生成規則作成装置１は、生成規則作成手段１３３によって、フレーズペア１１２に基づいて、同期文脈自由文法の生成規則の右辺の翻訳先言語の記号列が終端記号から始まるという制約を加えた生成規則を作成する（ステップＳ６：生成規則作成ステップ）。作成されたルール１１３は、記憶手段１１に格納される。そして、生成規則作成装置１は、翻訳スコア計算手段１３４によって、ルール１１３の各生成規則から計算した各翻訳スコアを各生成規則に対応付ける（ステップＳ７）。対応付けられた生成規則と翻訳スコアとは、ルールテーブル１１４として記憶手段１１に格納される。
【００６０】
なお、生成規則作成装置１は、一般的なコンピュータに、前記した各ステップを実行させる生成規則作成プログラムを実行することで実現することもできる。このプログラムは、通信回線を介して配布することも可能であるし、ＣＤ−ＲＯＭ等の記録媒体に書き込んで配布することも可能である。
【００６１】
本実施形態の生成規則作成装置１によれば、生成規則の数を従来よりも大幅に削減できる。例えば、図２に示した対訳文の単語対応の場合には、抽出されるフレーズペアは、実際には合計で７１対応存在する。各生成規則の非終端記号の数を「２」までに制限した場合であっても、従来法ではこのフレーズペアをもとに、５３３もの生成規則が作成される（ただしグルー規則は除く）。一方、本実施形態では、制約を課して生成規則を作成するので、生成規則数を１１０に削減できる。その結果、本実施形態の生成規則を利用して翻訳解を探索する場合には従来法よりも解探索空間を大幅に小さくすることが可能となる。
【００６２】
[機械翻訳装置の構成]
図５は、本発明の実施形態に係る機械翻訳装置の構成を示す機能ブロック図である。
機械翻訳装置２は、生成規則作成装置１（図１参照）で作成されたルールテーブルを利用して、入力された翻訳元言語の単語列を、入力に対応する翻訳先言語の単語列に機械的に翻訳するものである。機械翻訳装置２は、例えば、ＣＰＵと、ＲＡＭと、ＲＯＭと、ＨＤＤと、入出力インタフェース等から構成され、図５に示すように、入出力手段２０と、記憶手段２１と、素性重み学習モジュール２２と、単語情報抽出モジュール２３と、制御手段２４とを備えている。
【００６３】
入出力手段２０は、入力装置Ｋから翻訳元言語の単語列を制御手段２４に入力したり、制御手段２４から、翻訳結果である翻訳先言語の単語列を出力装置Ｄに出力したりするものである。また、入出力手段２０は、素性重み学習用対訳コーパス２５０を素性重み学習モジュール２２に入力する。
素性重み学習用対訳コーパス２５０は、生成規則作成装置１（図１参照）が生成規則を作成する際に利用する対訳コーパス１５０とは別に用意するものである。
【００６４】
記憶手段２１は、例えば、ＣＰＵによる演算処理等に利用されるＲＡＭや、例えば、所定のプログラム、各種データベース、処理結果等を格納するＲＯＭやＨＤＤを備えている。例えば、記憶手段２１には、処理結果として、素性重み２１１と、単語情報２１２と、単語範囲付きルール２１３と、部分仮説２１４と、部分仮説スコア２１６とが格納される。また、記憶手段１１には、生成規則作成装置１（図１参照）で作成されたルールテーブル１１４と、別に予め作成された言語モデル２１５とが格納される。言語モデル２１５は、翻訳先言語としての確からしさを表すn‐gramを格納したものである。このn-gramは別途、膨大な量の翻訳先言語のコーパスから学習される。
【００６５】
素性重み学習モジュール２２は、素性重み学習用対訳コーパス２５０と、ルールテーブル１１４と、言語モデル２１５とに基づいて、各素性関数の値に対応した重みを学習し、学習結果を素性重み２１１として記憶手段２１に格納するものである。
【００６６】
単語情報抽出モジュール２３は、入出力手段２０を介して入力装置Ｋから入力する翻訳元言語の文を単語単位に分割して、翻訳元言語の文を構成する単語についての情報（単語情報）を抽出するものである。単語情報は、例えば、単語列、単語位置、単語数等を含む。抽出された単語情報２１２は記憶手段２１に格納される。なお、入力装置Ｋから入力する翻訳元言語の文が単語分割済みの場合には、単語情報抽出モジュール２３を省略することもできる。
【００６７】
制御手段２４は、後記する手順で部分仮説を展開しながら文全体を被う仮説を求め、その中で最適（実際は準最適）なものを求めるものであり、生成規則探索手段２４１と、単語範囲付き生成規則生成手段２４２と、部分仮説スコア算出手段２４３と、部分仮説スコア算出手段２４３と、仮説探索手段２４４とを備えている。
【００６８】
生成規則探索手段２４１は、所定の部分仮説を拡張するために適用可能な生成規則をルールテーブル１１４からそれぞれ探索するものである。
【００６９】
単語範囲付き生成規則生成手段２４２は、生成規則探索手段２４１で探索された生成規則に対して、入力された翻訳元言語の単語列を構成する単語の単語数と単語位置とに基づいて、探索された生成規則の非終端記号が被う翻訳元言語の単語列の範囲を示す単語範囲を付加して、適用可能な単語範囲付き生成規則をそれぞれ生成するものである。
【００７０】
ここでは、入力された翻訳元言語の単語列の変換対象部分（非終端記号が被う範囲）を、その単語位置の左端（left）と右端（right）で、［ｌ，ｒ］のように表記することとする。初期段階では、例えば、入力が１１単語であれば、[ｌ，ｒ]＝[１，１１]となる。この場合、生成規則の翻訳元言語側の各非終端記号の単語範囲（未翻訳の単語範囲）を［ｌ1，ｒ1］，［ｌ2，ｒ2］，…のように表記する。例えば、［ｌ1，ｒ1］＝[１，２]等となる。なお、ある生成規則の翻訳元言語側の非終端記号が２つあれば、単語範囲も２つ設定される。また、ある生成規則の翻訳元言語側の非終端記号に対して、「ｌ1」の値や「ｒ1」の値として、複数の可能性がある。
【００７１】
部分仮説スコア算出手段２４３は、単語範囲付き生成規則に含まれる翻訳先言語側の翻訳済み単語と単語範囲とを、新たな部分仮説として作成すると共に、適用可能な生成規則をトップダウンに適用し且つ適用可能な生成規則において翻訳先言語側の非終端記号が文頭から文末に亘って並べられた順序で、新たな部分仮説を拡張し、生成規則ごとにそれぞれ予め求められた、翻訳の確からしさを表す翻訳モデルのスコアと、翻訳先言語の単語列としての確からしさを表す言語モデルのスコアなどに基づいて、作成された部分仮説Ｈ′の評価値を示す部分仮説スコアを算出するものである。
【００７２】
具体的には、部分仮説スコア算出手段２４３は、「翻訳先言語の文頭からの単語列」と「翻訳元言語の単語列のうち未翻訳の単語の範囲を保持するスタック」の二つ組みからなる部分仮説Ｈをもとに、適用可能な単語範囲付き生成規則を使って、新たな部分仮説Ｈ′を作成するということを繰り返す。ＨをもとにＨ′を作成することを部分仮説の拡張と呼ぶ。部分仮説が拡張されるに従い、部分仮説中の「翻訳先言語の文頭からの単語列は文頭から文末にかけて逐次的に追加される。また、部分仮説スコア算出手段２４３は、メモリを節約するため、他の部分仮説との間で単語列の共有を行う。なお、翻訳元言語の単語数がＪの場合、初期部分仮説（部分仮説の初期値）は、「空列」と、「［１，Ｊ］だけが積まれたスタック」とからなる。
【００７３】
部分仮説スコア算出手段２４３は、部分仮説Ｈ′の翻訳元言語の翻訳されている単語数をｍ（０≦ｍ≦Ｊ）とすると、優先度付きキューＱ0，Ｑ1，…，ＱJに部分仮説Ｈ′を入れる。つまり、部分仮説スコア算出手段２４３は、Ｑ0＝｛初期部分仮説｝から始めて、翻訳された翻訳元言語の単語数に同期して優先度付きキューＱmに格納する部分仮説を拡張していく。
【００７４】
部分仮説スコア算出手段２４３は、ある部分仮説を拡張するとき、そのスタックの先頭から（積まれた上方から）翻訳されていない翻訳元言語の単語範囲［ｌ，ｒ］をポップする。翻訳元言語の入力文に対応する生成規則はEarley法のチャート構造で管理する。チャート構造を用いることにより、部分仮説に対して適用可能な生成規則を効率良く見つけることが可能となる。例えば、部分仮説スコア算出手段２４３は、前記した式（９ｄ）から生成された式（１３）に示すような単語範囲つき生成規則から部分仮説を抽出する場合には、単語範囲［ｌ2，ｒ2］，［ｌ1，ｒ1］の順序でスタックにプッシュして、［ｌ1，ｒ1］が先に処理されるようにする。こうして、翻訳先言語側は、常に文頭から翻訳が生成されることが保証されることになる。
【００７５】
【数１３】
2008015844.tif 000020
【００７６】
部分仮説スコア算出手段２４３は、もととなった部分仮説ＨのスコアＳ（Ｈ）に差分スコアを加算することで、式（１４）に示すような、拡張された部分仮説Ｈ′のスコアＳ（Ｈ′）を算出する。
【００７７】
【数１４】
2008015844.tif 000021
【００７８】
ここで、ｍ（１≦ｍ≦Ｍ）は素性関数の値の識別番号を示す。本実施形態では、部分仮説スコア算出手段２４３は、Ｍ＝６として、表５に示す６つの素性関数の値ｈm（Ｈ′）と、そのｈm（Ｈ′）に対して対応する素性重みλm（Ｈ′）とを用いる。また、仮説を生成する際に、部分仮説の展開により新たに生成された翻訳先言語の単語列を、
2008015844.tif 000022
と表記する。ここで、生成された翻訳先言語の単語列は、「ｉ」番目の単語から「ｉ＋ε」番目の単語で構成されている。
【００７９】
【表５】
2008015844.tif 000023
【００８０】
ここで、Ｐe｜f（ｒ）、Ｐf｜e（ｒ）、Lexe｜f（ｒ）、Lexf｜e（ｒ）は、記憶手段２１のルールテーブル１１４に規定されている生成規則ｒに対応した素性関数の値である。また、素性重みλmは、記憶手段２１に格納された素性重み２１１に予め規定されているものとする。
【００８１】
つまり、本実施形態では、式（１４）と表５とから、部分仮説スコア算出手段２４３は、最終的に、部分仮説Ｈ′のスコアＳ（Ｈ′）を、式（１５）で算出する。この式（１５）の２番目の等号の右辺は、もととなった部分仮説ＨのスコアＳ（Ｈ）に、差分スコアを加算することを示している。また、部分仮説スコア算出手段２４３は、優先度付きキューＱ0，Ｑ1，…，ＱJには、最大Ｙ個（例えば、1000個）の部分仮説しか保持しない。また、部分仮説スコア算出手段２４３は、部分仮説スコアＳ（Ｈ′）が優先度付きキューＱ0，Ｑ1，…，ＱJ内の最大の部分仮説スコアとある定数との積よりも小さい場合、その部分仮説Ｈ′を捨てる。これにより、部分仮説スコア算出手段２４３は、優先度付きキューＱ0，Ｑ1，…，ＱJに格納される各部分仮説に対して効果的な枝刈りを行うことができる。
【００８２】
【数１５】
2008015844.tif 000024
【００８３】
仮説探索手段２４４は、入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、所定の部分仮説を拡張することによって最終的に生成された翻訳元言語の文全体に対応する部分仮説（これを仮説と呼ぶ）のうちで、部分仮説スコアが最大となる仮説を探索するものである。具体的には、仮説探索手段２４４は、翻訳元言語の文全体から得られる所定数の仮説のうちで、仮説スコアが最大となる仮説Ｈ＾を、式（１６）の関係から探索する。式（１６）に示す仮説Ｈは、優先度付きキューＱJに含まれる部分仮説Ｈのことなので、式（１６）で求める仮説Ｈ＾は、部分仮説スコアＳ（Ｈ）の値を最大とする部分仮説Ｈ（つまり仮説Ｈ）を求めることで実現できる。
【００８４】
【数１６】
2008015844.tif 000025
【００８５】
また、仮説探索手段２４４は、求めた仮説に対応する翻訳先言語の文頭から文末までの単語列を翻訳結果として、入出力手段２０を介して出力装置Ｄに出力する。
【００８６】
なお、生成規則探索手段２４１、単語範囲付き生成規則生成手段２４２、部分仮説スコア算出手段２４３、部分仮説スコア算出手段２４３および仮説探索手段２４４は、ＣＰＵが記憶手段２１のＨＤＤ等に格納された所定のプログラムをＲＡＭに展開して実行することにより実現されるものである。
【００８７】
［機械翻訳装置の動作］
図５に示した機械翻訳装置の動作について図６を参照（適宜図５参照）して説明する。図６は、図５に示した機械翻訳装置の動作を示すフローチャートである。予め、機械翻訳装置２は、素性重み学習モジュール２２によって、素性重み学習用対訳コーパス２５０と、言語モデル２１５と、ルールテーブル１１４とに基づいて、素性関数の値の重みを学習し、学習結果である素性重み２１１を記憶手段２１に格納しておく。
【００８８】
そして、機械翻訳装置２は、入力装置Ｋから入出力手段２０を介して入力された翻訳元言語の文を単語情報抽出モジュール２３に入力する（ステップＳ１１）。機械翻訳装置２は、単語情報抽出モジュール２３によって、入力された翻訳元言語の文（入力文）を単語に分割し、単語列、単語数Ｊやそれぞれの単語の単語位置を抽出する（ステップＳ１２）。抽出された単語列、単語列単語数Ｊや単語位置は、単語情報２１２として記憶手段２１に格納される。
【００８９】
機械翻訳装置２は、仮説探索手段２４４によって、初期部分仮説Ｈ0を作成し、入力単語数Ｊに合わせて、Ｊ個の優先度付きキューＱ0，…，ＱJを空にして、そのうちの優先度付きキューＱ0に初期部分仮説Ｈ0を格納する（ステップＳ１３）。そして、機械翻訳装置２は、仮説探索手段２４４によって、初期部分仮説Ｈ0に対する部分仮説スコアＳ（Ｈ0）と、優先度付きキューの識別変数ｍとを初期化する。すなわち、Ｓ（Ｈ0）＝０，ｍ＝０とする（ステップＳ１４）。続いて、機械翻訳装置２は、生成規則探索手段２４１によって、ｍ番目の優先度付きキューＱmから、そこに格納されている適用可能なそれぞれの部分仮説Ｈを順次ポップし、それぞれの部分仮説Ｈを拡張できるような適用可能なそれぞれの生成規則ｒをルールテーブル１１４から探索する。そして、探索結果であるそれぞれの生成規則ｒの翻訳元言語側に記述されている翻訳済単語の個数（翻訳済単語個数）Ｖ（ｒ）を取得し、現在の優先度付きキューの識別変数ｍの値に加算することによって、処理対象の部分仮説Ｈに対する翻訳済単語数ｎの値を更新する。すなわち、ｎ＝ｍ＋Ｖ（ｒ）とする（ステップＳ１５：生成規則探索ステップ）。
【００９０】
そして、機械翻訳装置２は、単語範囲付き生成規則生成手段２４２によって、探索した生成規則に対して適用可能なそれぞれの単語範囲付き生成規則ｒ′を生成する（ステップＳ１６：単語範囲付き生成規則生成ステップ）。そして、機械翻訳装置２は、部分仮説スコア算出手段２４３によって、処理対象の部分仮説Ｈを、それぞれの単語範囲付き生成規則ｒ′で展開して部分仮説Ｈ′をそれぞれ作成し、作成した部分仮説Ｈ′について前記した式（１５）に基づいて部分仮説スコアＳ（Ｈ′）を算出する。そして、作成した部分仮説Ｈ′を、ｎ番目の優先度付きキューＱnに格納し、所定の枝刈りを行う（ステップＳ１７：部分仮説スコア算出ステップ）。ここで、枝刈りによって不要となった部分仮説Ｈ′は、優先度付きキューＱnから削除される。また、算出された部分仮説スコアＳ（Ｈ′）は記憶手段２１の部分仮説スコア２１６に格納されるが、枝刈りによって削除された部分仮説Ｈ′に対する部分仮説スコアＳ（Ｈ′）は削除されることとなる。
【００９１】
そして、機械翻訳装置２は、仮説探索手段２４４によって、適用可能な単語範囲付き生成規則ｒ′をすべて選択したか否かを判別する（ステップＳ１８）。適用可能なｒ′がまだ存在する場合（ステップＳ１８：Ｎｏ）、機械翻訳装置２は、ステップＳ１６に戻る。一方、ｒ′をすべて選択した場合（ステップＳ１８：Ｙｅｓ）、仮説探索手段２４４は、適用可能な生成規則ｒをすべて選択したか否かを判別する（ステップＳ１９）。適用可能なｒがまだ存在する場合（ステップＳ１９：Ｎｏ）、機械翻訳装置２は、ステップＳ１５に戻る。一方、ｒをすべて選択した場合（ステップＳ１９：Ｙｅｓ）、仮説探索手段２４４は、適用可能な部分仮説Ｈをすべて選択したか否かを判別する（ステップＳ２０）。適用可能なＨがまだ存在する場合（ステップＳ２０：Ｎｏ）、機械翻訳装置２は、ステップＳ１５に戻る。一方、Ｈをすべて選択した場合（ステップＳ２０：Ｙｅｓ）、仮説探索手段２４４は、現在の優先度付きキューの識別変数ｍの値が入力単語数Ｊと等しい（ｍ＝Ｊ）か否かを判別する（ステップＳ２１）。ｍ≠Ｊである場合（ステップＳ２１：Ｎｏ）、機械翻訳装置２は、仮説探索手段２４４によって、優先度付きキューの識別変数ｍをインクリメントする。すなわち、ｍ＝ｍ＋１とする（ステップＳ２２）。続いて、ステップＳ１５に戻る。
【００９２】
一方、ｍ＝Ｊである場合（ステップＳ２１：Ｙｅｓ）、Ｊ番目の優先度付きキューＱJには、翻訳元言語の文全体を被う部分仮説Ｈが複数格納されている。これら部分仮説Ｈは、翻訳元言語の文に対する仮説Ｈとみなすことができる。同様に、優先度付きキューＱJに格納された部分仮説Ｈに対する部分仮説スコアＳ（Ｈ）は、この意味で、仮説スコアＳ（Ｈ）と呼ぶ。そして、この場合、機械翻訳装置２は、仮説探索手段２４４によって、Ｊ番目の優先度付きキューＱJから仮説スコアＳ（Ｈ）の値が最大となる仮説Ｈを探索する（ステップＳ２３：仮説探索ステップ）。そして、機械翻訳装置２は、仮説探索手段２４４によって、探索された仮説を翻訳先言語の文として出力する（ステップＳ２４）。これにより、探索された仮説に対応する翻訳先言語の文頭から文末までの単語列が出力装置Ｄに出力される。
【００９３】
なお、機械翻訳装置２は、一般的なコンピュータに、前記した各ステップを実行させる機械翻訳プログラムを実行することで実現することもできる。このプログラムは、通信回線を介して配布することも可能であるし、ＣＤ−ＲＯＭ等の記録媒体に書き込んで配布することも可能である。
【００９４】
［具体例］
図７と、表６と、表７と、表８とを参照して具体例について説明する。
図７は、図５に示した部分仮説から仮説への拡張例を示す図である。表６は、１１単語からなる翻訳元言語文を示し、表７は、表６に示した翻訳元言語文に対応して適用可能な生成規則を示す。なお、表７中の「生成規則の種類」とは、前記した式（９）〜式（９ｄ）のいずれに対応するかを示すものである。表８は、表７に示した生成規則の適用順とそれに基づく単語範囲付き生成規則を示すものである。
【００９５】
【表６】
2008015844.tif 000026
【００９６】
【表７】
2008015844.tif 000027
【００９７】
【表８】
2008015844.tif 000028
【００９８】
初期状態において、部分仮説スコア算出手段２４３は、スタックを空にし、図７に示すように、状態「０」で翻訳元言語の単語列（文）全体を被う単語範囲［１，１１］をプッシュする。状態「０」では、部分仮説Ｈ′（０）は、初期部分仮説なので、スタックにプッシュした単語範囲［１，１１］と空列との組である。部分仮説Ｈ′（０）の部分仮説スコアＳ（Ｈ′）は「０」とする。
【００９９】
次に、状態「１」で、部分仮説スコア算出手段２４３は、スタックから範囲［１，１１］をポップし、生成規則探索手段２４１は、表７から、ポップされた範囲に適用可能な生成規則ｒ（３）を選択する。生成規則ｒ（３）における翻訳解「The」に対応した「は」の入力文における単語位置は、「３」なので、単語範囲付き生成規則生成手段２４２は、表８に示すように、生成規則ｒ（３）における非終端記号Ｘ(1)および非終端記号Ｘ(2)の単語範囲が、それぞれ［１，２］、［４，１１］となるような単語範囲付き生成規則ｒ′（３）を生成する。この単語範囲付き生成規則ｒ′（３）では、翻訳先言語側において非終端記号Ｘ(1)が非終端記号Ｘ(2)より先に処理されなければならない。そのため、部分仮説スコア算出手段２４３は、図７に示すように、単語範囲付き生成規則ｒ′（３）において、非終端記号Ｘ(2)に対応する単語範囲［４，１１］をスタックにプッシュしてから、非終端記号Ｘ(1)に対応する単語範囲［１，２］をプッシュする。部分仮説スコア算出手段２４３は、スタックにプッシュした単語範囲［１，２］、［４，１１］と、翻訳先言語の文頭からの単語列としての翻訳解「The」とを部分仮説Ｈ′（１）とする。部分仮説スコア算出手段２４３は、部分仮説Ｈ′（１）について部分仮説スコアを算出する。
【０１００】
次に、状態「２」で、部分仮説スコア算出手段２４３は、スタックから単語範囲［１，２］をポップし、生成規則探索手段２４１は、表７から、この単語範囲に適用可能な生成規則ｒ（１）を選択する。生成規則ｒ（１）における翻訳解「international」に対応した「国際」の入力文における単語位置は、「１」なので、単語範囲付き生成規則生成手段２４２は、表８に示すように、生成規則ｒ（１）における非終端記号Ｘ(1)の単語範囲が［２，２］となるような単語範囲付き生成規則ｒ′（１）を生成する。部分仮説スコア算出手段２４３は、図７に示すように、単語範囲付き生成規則ｒ′（１）において、単語範囲［２，２］をスタックにプッシュする。部分仮説スコア算出手段２４３は、スタックにプッシュした単語範囲［２，２］と、以前プッシュした単語範囲［４，１１］と、翻訳先言語の文頭からの単語列としての翻訳解「The international」とを部分仮説Ｈ′（２）とする。部分仮説スコア算出手段２４３は、部分仮説Ｈ′（２）について部分仮説スコアを算出する。
【０１０１】
次に、状態「３」で、部分仮説スコア算出手段２４３は、スタックから単語範囲［２，２］をポップし、生成規則探索手段２４１は、表７から、この単語範囲に適用可能な生成規則ｒ（２）を選択する。生成規則ｒ（２）には「テロ」に対応した翻訳解「terrorism」が記述されているが、非終端記号が無いので、単語範囲付き生成規則生成手段２４２は、生成規則ｒ（２）をそのまま単語範囲付き生成規則ｒ′（２）とする。部分仮説スコア算出手段２４３は、単語範囲付き生成規則ｒ′（２）において単語範囲が指定されていないのでスタックに対する操作を行わない。部分仮説スコア算出手段２４３は、図７に示すように、スタックに以前プッシュした単語範囲［４，１１］と、翻訳先言語の文頭からの単語列としての翻訳解「The international terrorism」とを部分仮説Ｈ′（３）とする。部分仮説スコア算出手段２４３は、部分仮説Ｈ′（３）について部分仮説スコアを算出する。
【０１０２】
以下、同様にして、表８に記載した適用順に、状態「４」から状態「９」に対応する操作を行うと、スタックが空になるので、部分仮説スコア算出手段２４３は、部分仮説の展開を終了し、仮説を生成する。このとき、翻訳先言語の文頭からの単語列としての翻訳解は、以下のように、１０単語の単語列となる。
「The international terrorism also is a possible threat in Japan」
【０１０３】
ここで、生成規則ｒ（９）は、２つの終端記号（単語）「で  ある，is a」を有しているため、部分仮説スコア算出手段２４３は、９回の状態遷移で１０単語を訳出する。図７では、部分仮説展開の過程で、翻訳先言語側が文頭から文末にかけて生成されたことが示されている。
【０１０４】
図８は、図７に示した仮説への拡張例に対応した同期文脈自由文法の木構造を示す図である。これは部分仮説展開に用いた生成規則の系列を木として表現したものである。図８において、（１）〜（９）は同期文脈自由文法の生成規則の展開順序を表す。生成規則は、右辺の翻訳先言語側は終端記号で始まっており、木はトップダウンかつ翻訳先言語の文頭から文末の順序に展開されるので、翻訳先言語の単語は必ず文頭から文末にかけて逐次的に生成される。これとは対照的に翻訳元言語側は必ずしも文頭から文末にかけて解析されるわけではなく、この点が従来手法と大きく異なる。
【０１０５】
表８に示した単語範囲付き生成規則と異なる例を表９に示す。表９では、適用順「１」，「２」の内容が異なる以外は表８と同じである。この場合には、状態「１」で、生成規則ｒ（１）を選択し、状態「２」で生成規則ｒ（３）を選択する。このとき、翻訳先言語の文頭からの単語列としての翻訳解は、以下のように、より不自然な英語となるため、この場合の仮説の仮説スコアは、表８の場合の仮説の仮説スコアよりも小さくなる。
「international The terrorism also is a possible threat in Japan」
【０１０６】
【表９】
2008015844.tif 000029
【０１０７】
本実施形態の機械翻訳装置２によれば、入力された翻訳元言語の単語列において未翻訳の部分に対して部分仮説を順次拡張するように、生成規則をトップダウンに展開し、対応する部分仮説を作成することにより、入力に対応する翻訳先言語の仮説を、文頭から文末にかけて逐次的に生成することができる。また、機械翻訳装置２は、生成規則ごとの翻訳モデルおよび言語モデルに基づいて、部分仮説スコアを算出し、部分仮説スコア（この場合には仮説スコア）が最大となる仮説を翻訳先言語の単語列として探索する。したがって、翻訳先言語の単語列の翻訳精度を向上させることができる。
【０１０８】
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、その趣旨を変えない範囲で実施することができる。例えば、本実施形態では、日英の翻訳を例に説明したが、これに限定されるものではない。生成規則作成装置により生成規則を作成すれば、任意の多言語間でこの翻訳装置を使用することが可能である。
【実施例】
【０１０９】
本発明の効果を確認するために翻訳実験を行った。具体的には、約18万文からなる新聞記事の日英対訳コーパスから、素性重み学習用対訳コーパス（development set）と、翻訳結果を評価するための評価セット（test set）を各々1500文ずつサンプリングした。新聞記事の日英対訳コーパスについては、「Masao Utiyama and Hitoshi Isahara. Reliable measures for aligning Japanese-English news articles and sentences. In Pro. of ACL 2003, pages 72-79, 2003」に記載されている。また、残りの対訳に約130万エントリの日英辞書（dictionary）を加えたものを、「生成規則作成装置」の学習用の対訳コーパス（training set）とした。各training set、development set、test setの大きさを表１０に示す。
【０１１０】
【表１０】
2008015844.tif 000030
【０１１１】
trainingsetで、単語ベースのＨＭＭ（Hidden Markov Model）翻訳モデルを学習し、それを活用して多対多の単語対応を求めた。なお、ＨＭＭ翻訳モデルについては、「Franz Josef Och and Hermann Ney. A systematic comparison of various statistical alignment models. Computational Linguistics,29(1):19-51,March 2003」に記載されている。
【０１１２】
さらにそれを用いてフレーズペアを抽出するとともに、生成規則の生成を行なった（表１１参照）。表１１のPhraseやHierarchalのrules/phrasesには、グルー規則の数は入っていない。また、Normalized-2、Normalized-3の規則数は、前記した式（９）〜式（９ｄ）のうち、式（９）だけをカウントしている。
【０１１３】
【表１１】
2008015844.tif 000031
【０１１４】
Phraseは非特許文献３にあるフレーズペアを用いた翻訳手法（比較例１）を示す。一方、Normalized-2およびNormalized-3は本実施形態による翻訳手法を表す。ここで、Nomalized-2は、非終端記号の数を２個までという制約のもとに生成規則を求めたものに対応している（実施例１）。また、Nomalized-3は、非終端記号の数を３個までという制約のもとに生成規則を求めたものに対応している（実施例２）。また、Hierarchicalは非特許文献２による翻訳手法を表す（比較例２）。表１１で明らかなように、本実施形態（Normalized-2、Normalized-3）は、Phraseより生成規則数が増えるものの、Hierarchicalと比べて大幅に生成規則数を抑えることができた。さらに、表１２に翻訳精度示す。
【０１１５】
【表１２】
2008015844.tif 000032
【０１１６】
翻訳精度を比較する実験では、句に基づく統計的機械翻訳（Phraseを翻訳手法として使用）と本実施形態による統計的機械翻訳（Nomalized-2を翻訳手法として使用）を比較した。それぞれ、言語モデルとして3-gram、5-gramを用いた。評価尺度には、n-gramの正解率に基づく指標であるＢＬＥＵとＮＩＳＴとを用いた。
【０１１７】
なお、ＢＬＥＵについては、「Kishore Papineni, Salim Roukos, Todd Ward, and Wei-Jing Zhu. BLEU: a method for automatic evaluation of machine translation. In Proc. of  ACL 2002, p. 311-318, 2002」に記載されている。また、ＮＩＳＴについては、「National Institute of Standards and Technology. Automatic evaluation of machine translation quality using n-gram co-occurrence statistics. http://www.nist.gov/speech/tests/mt/doc/ngram-study.pdf, 2002」に記載されている。
【０１１８】
表１２の実験結果は、Normalized-2（実施例１）がPhrase（比較例１）よりも高精度の翻訳が得られることを示している。また、3-gramから5-gramに変えたとき、Phraseと比べてNomalized-2の精度改善が著しいことから、実施例１が長いn-gramを有効活用できることを示唆している。本発明の実施形態は、生成規則に強い制約を設けているが、PhraseとNormalized-2との翻訳精度を比較した実験結果から、生成規則に設けた制約が翻訳モデルとして妥当であると言える。
【図面の簡単な説明】
【０１１９】
【図１】本発明の実施形態に係る生成規則作成装置の構成を示す機能ブロック図である。
【図２】日英の対訳の単語対応の例を示す図である。
【図３】図１に示したルールテーブルの例を示す図である。
【図４】図１に示した生成規則作成装置の動作を示すフローチャートである。
【図５】本発明の実施形態に係る機械翻訳装置の構成を示す機能ブロック図である。
【図６】図５に示した機械翻訳装置の動作を示すフローチャートである。
【図７】図５に示した部分仮説から仮説への拡張例を示す図である。
【図８】図７に示した仮説への拡張例に対応した同期文脈自由文法の木構造を示す図である。
【符号の説明】
【０１２０】
１      生成規則作成装置
２      機械翻訳装置
１０    入出力手段
１１    記憶手段
１１１  単語対応
１１２  フレーズペア
１１３  ルール
１１４  ルールテーブル
１２    単語対応作成モジュール
１３    制御手段
１３１  モード判定手段
１３２  フレーズペア抽出手段
１３３  生成規則作成手段
１３４  翻訳スコア計算手段
１５０  対訳コーパス
２０    入出力手段
２１    記憶手段
２１１  素性重み
２１２  単語情報
２１３  単語範囲付きルール
２１４  部分仮説
２１５  言語モデル
２１６  部分仮説スコア
２２    素性重み学習モジュール
２３    単語情報抽出モジュール
２４    制御手段
２４１  生成規則探索手段
２４２  単語範囲付き生成規則生成手段
２４３  部分仮説スコア算出手段
２４４  仮説探索手段
２５０  素性重み学習用対訳コーパス
Ｋ      入力装置
Ｄ      出力装置
【図１】
2008015844.tif 000033
【図２】
2008015844.tif 000034
【図３】
2008015844.tif 000035
【図４】
2008015844.tif 000036
【図５】
2008015844.tif 000037
【図６】
2008015844.tif 000038
【図７】
2008015844.tif 000039
【図８】
2008015844.tif 000040