(57)【要約】【課題】  入力意味構造をデコードして出力意味構造を生成すること。【解決手段】  複数のトランスファ・マッピングから成るセットを設ける。統計モデルを使用して、複数のトランスファ・マッピングから成るセット内の少なくとも１つのトランスファ・マッピングのスコアを計算する。このスコアに基づいて少なくとも１つのトランスファ・マッピングを選択し、出力意味構造の構築に使用する。【選択図】  図１３
2005285129.tif 000002
【特許請求の範囲】
【請求項１】
入力意味構造をデコードして出力意味構造を生成する方法であって、
トランスファ・マッピングのセットを提供すること、
統計モデルを使用してトランスファ・マッピングの前記セット内の少なくとも１つのトランスファ・マッピングのスコアを計算すること、
前記スコアに基づいて少なくとも１つのトランスファ・マッピングを選択すること、および
選択された前記トランスファ・マッピングを使用して、前記出力意味構造を構築すること
を備えることを特徴とする方法。
【請求項２】
トランスファ・マッピングのセットを提供することは、各トランスファ・マッピングが、前記入力意味構造のノードを記述する入力意味側を有するとともに、前記出力意味構造のノードを記述する出力意味側を有する、トランスファ・マッピングのセットを提供することを備えることを特徴とする請求項１に記載の方法。
【請求項３】
少なくも１つのトランスファ・マッピングのスコアを計算することは、前記出力意味構造内にノードのセットが出現する確率を提供する目的言語モデルを使用してスコアを計算することを備えることを特徴とする請求項１に記載の方法。
【請求項４】
少なくとも１つのトランスファ・マッピングのスコアを計算することは、前記トランスファ・マッピングの前記出力意味側が与えられた場合の前記トランスファ・マッピングの入力意味側の確率を提供するチャネル・モデルを使用して、スコアを計算することを備えることを特徴とする請求項２に記載の方法。
【請求項５】
前記チャネル・モデルを使用してスコアを計算することは、トランスファ・マッピング間で重複するノードの数に基づいてチャネル・モデル・スコアを正規化することを備えることを特徴とする請求項４に記載の方法。
【請求項６】
少なくとも１つのトランスファ・マッピングのスコアを計算することは、トランスファ・マッピングにおけるノード削除の確率を提供するファティリティ（fertility）モデルを使用してスコアを計算することを備えることを特徴とする請求項２に記載の方法。
【請求項７】
少なくとも１つのトランスファ・マッピングのスコアを計算することは、前記トランスファ・マッピングの前記入力意味側におけるノードの数に基づいてサイズ・スコアを計算することを備えることを特徴とする請求項２に記載の方法。
【請求項８】
少なくとも１つのトランスファ・マッピングのスコアを計算することは、前記入力意味構造と、前記トランスファ・マッピングの前記入力意味側とで適合する二項素性の数に基づくランク・スコアを計算することを備えること特徴とする請求項２に記載の方法。
【請求項９】
トランスファ・マッピングの前記セット内の少なくとも１つのトランスファ・マッピングのスコアを計算することは、
複数のモデルの別々のスコアを計算すること、および
別々の前記スコアを結合して前記トランスファ・マッピングの前記スコアを決定すること
を備えることを特徴とする請求項２に記載の方法。
【請求項１０】
前記複数のモデルは、トランスファ・マッピングの前記出力意味側が与えられた場合の前記トランスファ・マッピングの入力意味側の確率を提供するチャネル・モデルを備えることを特徴とする請求項９に記載の方法。
【請求項１１】
前記複数のモデルは、トランスファ・マッピングにおけるノード削除の確率を提供するファティリティ・モデルを備えることを特徴とする請求項９に記載の方法。
【請求項１２】
前記複数のモデルは、前記出力意味構造中にノードのセットが出現する確率を提供する目的言語モデルを備えることを特徴とする請求項９に記載の方法。
【請求項１３】
前記トランスファ・マッピングの前記入力意味側のノードの数に基づく、前記トランスファ・マッピングのサイズ・スコアを計算すること、および
前記サイズ・スコアを前記複数のモデルの別々の前記スコアと結合して、前記トランスファ・マッピングの前記スコアを決定すること
をさらに備えることを特徴とする請求項９に記載の方法。
【請求項１４】
前記入力意味構造と前記トランスファ・マッピングの前記入力意味側とで適合する二項素性の数に基づく、前記トランスファ・マッピングのランク・スコアを計算すること、および
前記ランク・スコアを前記複数のモデルの別々の前記スコアと結合して前記トランスファ・マッピングの前記スコアを決定すること
をさらに備えることを特徴とする請求項９に記載の方法。
【請求項１５】
前記スコアを結合することは、
各スコアに重みを乗じて重み付きモデル・スコアを形成すること、および
前記重み付きモデル・スコアを合計して各トランスファ・マッピングの前記スコアを決定すること
を備えることを特徴とする請求項９に記載の方法。
【請求項１６】
トランスファ・マッピングのセットを提供することは、ルート・トランスファ・マッピングと、ルート・トランスファ・マッピングを含むサブツリーとを備える木構造として配列されたトランスファ・マッピングのセットを提供することを備え、トランスファ・マッピングの前記セット内の各トランスファ・マッピングは前記木構造およびサブツリーのうちの少なくとも１つにおいてルート・トランスファ・マッピングとして出現することを特徴とする請求項２に記載の方法。
【請求項１７】
トランスファ・マッピングのセットを木構造として提供することは、ネストされた複数のサブツリーの複数の階層を提供することを特徴とする請求項１６に記載の方法。
【請求項１８】
少なくとも１つのトランスファ・マッピングのスコアを計算することは、
サブツリーのスコアの計算が、再帰的に前記サブツリーの前記複数のサブツリーのスコアを決定すること、前記サブツリーの前記複数のルート・トランスファ・マッピングのスコアを計算すること、および前記サブツリーの前記サブツリーの前記スコアを前記サブツリーの前記ルート・トランスファ・マッピングの前記スコアに結合すること、を備える、ネストされたサブツリーの各階層のスコアを再帰的に計算すること、
前記ルート・トランスファ・マッピングのスコアを計算すること、および
各サブツリーの前記スコアを前記ルート・トランスファ・マッピングの前記スコアに結合すること、
を備える各ステップを通して、トランスファ・マッピングのツリーのスコアを計算すること
を備えることを特徴とする請求項１７に記載の方法。
【請求項１９】
ルート・トランスファ・マッピングのスコアを計算することは、前記ルート・トランスファ・マッピングの前記入力意味側におけるノードの数に基づく、前記ルート・トランスファ・マッピングのサイズ・スコアを計算することを備えることを特徴とする請求項１８に記載の方法。
【請求項２０】
サブツリーの前記スコアをルート・トランスファ・マッピングの前記スコアに結合することは、前記サブツリーのサイズ・スコアを前記ルート・トランスファ・マッピングの前記サイズ・スコアと共に平均することによって前記サブツリーの前記サイズ・スコアを前記ルート・トランスファ・マッピングの前記サイズ・スコアに結合することを備えることを特徴とする請求項１８に記載の方法。
【請求項２１】
ルート・トランスファ・マッピングのスコアを計算することは、前記入力意味構造と前記ルート・トランスファ・マッピングの前記入力意味側との適合する二項素性の数に基づいて前記ルート・トランスファ・マッピングのランク・スコアを計算することを備えることを特徴とする請求項１８に記載の方法。
【請求項２２】
サブツリーの前記スコアをルート・トランスファ・マッピングの前記スコアに結合することは、前記サブツリーのランク・スコアを前記ルート・トランスファ・マッピングの前記ランク・スコアと共に平均することによって前記サブツリーの前記ランク・スコアを前記ルート・トランスファ・マッピングの前記ランク・スコアと結合することを備えることを特徴とする請求項２１に記載の方法。
【請求項２３】
第１の言語の入力を第２の言語の出力に翻訳する機械翻訳システムであって、
前記入力を入力意味表現に構文解析するパーサ、
各トランスファ・マッピングが前記入力意味表現の一部に対応する、トランスファ・マッピングのセットを検出するように構成された検索部、
複数のトランスファ・マッピングのスコアを決定し、決定した前記スコアに基づいて少なくとも１つのトランスファ・マッピングを選択するように構成されたデコード部、および
選択された前記トランスファ・マッピングに基づいて前記出力を生成するように構成された生成部
を備えることを特徴とする機械翻訳システム。
【請求項２４】
前記デコード部は、複数の統計モデルを使用して各トランスファ・マッピングのスコアを決定することを特徴とする請求項２３に記載の機械翻訳システム。
【請求項２５】
前記出力は出力意味表現を含み、前記複数の統計モデルは、前記出力意味表現内にノードのシーケンスが出現する確率を提供する目的言語モデルを備えることを特徴とする請求項２４に記載の機械翻訳システム。
【請求項２６】
前記複数の統計モデルは、前記トランスファ・マッピングの出力側の意味ノードのセットが与えられた場合のトランスファ・マッピングの入力側における意味ノードのセットの確率を提供するチャネル・モデルを備えることを特徴とする請求項２４に記載の機械翻訳システム。
【請求項２７】
前記複数の統計モデルは、前記トランスファ・マッピングにおけるノード削除の確率を提供するファティリティ・モデルを備えることを特徴とする請求項２４に記載の機械翻訳システム。
【請求項２８】
前記デコード部は、各トランスファ・マッピングの入力側のノードの数に基づくサイズ・スコアを使用して、当該トランスファ・マッピングのスコアを決定することを特徴とする請求項２４に記載の機械翻訳システム。
【請求項２９】
前記デコード部は、前記入力と各トランスファ・マッピングの入力側との間で適合する二項素性の数に基づくランク・スコアを使用して当該トランスファ・マッピングのスコアを決定することを特徴とする請求項２４に記載の機械翻訳システム。
【請求項３０】
単語列のスコアを決定するコンピュータ実装方法であって、
前記単語列に関する複数のノードを有する意味構造を計算すること、および
前記意味構造内のノードのシーケンスの確率を提供する目的言語モデルを使用して前記単語列のスコアを決定すること
を備えることを特徴とするコンピュータ実装方法。
【請求項３１】
複数のノードを有する意味構造を提供することは、複数の単語ノードと、単語間の意味関係を記述する少なくとも１つの関係ノードとを有する意味構造を提供することを備えることを特徴とする請求項３０に記載のコンピュータ実装方法。
【請求項３２】
単語ノードを提供することは、見出し語（lemma）の単語ノードを提供することを備えることを特徴とする請求項３０に記載のコンピュータ実装方法。
【請求項３３】
目的言語モデルを使用して前記単語列のスコアを決定することは、機械翻訳において前記目的言語モデルを使用して前記単語列のスコアを決定することを備えることを特徴とする請求項３０に記載のコンピュータ実装方法。
【請求項３４】
目的言語モデルを使用して前記単語列のスコアを決定することは、音声認識において前記目的言語モデルを使用して前記単語列のスコアを決定することを備えることを特徴とする請求項３０に記載のコンピュータ実装方法。
【請求項３５】
目的言語モデルを使用して前記単語列のスコアを決定することは、光学式文字認識において前記目的言語モデルを使用して前記単語列のスコアを決定することを備えることを特徴とする請求項３０に記載のコンピュータ実装方法。
【請求項３６】
目的言語モデルを使用して前記単語列のスコアを決定することは、文法チェックにおいて前記目的言語モデルを使用して前記単語列のスコアを決定することを備えることを特徴とする請求項３０に記載のコンピュータ実装方法。
【請求項３７】
目的言語モデルを使用して前記単語列のスコアを決定することは、手書き文字認識において前記目的言語モデルを使用して前記単語列のスコアを決定することを備えることを特徴とする請求項３０に記載のコンピュータ実装方法。
【請求項３８】
目的言語モデルを使用して前記単語列のスコアを決定することは、情報抽出において前記目的言語モデルを使用して前記単語列のスコアを決定することを備えることを特徴とする請求項３０に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動化された言語システムに関する。より詳細には、本発明は統計的言語システムにおける言語モデルに関する。
【背景技術】
【０００２】
自動化された言語システムには、音声認識、手書き文字認識、スピーチ生成、文法チェック、および機械翻訳などが含まれる。
【０００３】
機械翻訳（ＭＴ）システムは、１つの言語（「ソース」言語）の状態で入力を受け取り、その入力を第２の言語（「目的」言語）に翻訳し、第２の言語の出力を生成するシステムである。
【０００４】
ＭＴシステムの一例は、論理形式（logical form：ＬＦ）を使用する。このＬＦは、翻訳の中間工程として、文グルーディ探索グルーディ探索字列内の内容語（content word）間の、ラベル付けされた依存関係を記述する依存グラフ（dependency graph）である。このシステムでは、まず、自然言語パーサを使用してソース言語の文字列を解析し、ソース言語ＬＦを生成する。次に、ソース言語ＬＦを目的言語ＬＦに変換する必要がある。この変換には、ソース言語ＬＦ要素（source language LF pieces）から目的言語ＬＦ要素（target language LF pieces）へのマッピング（およびマッピングのサイズや、トレーニング・セットにおけるマッピングの頻度などの、他のメタデータとともに）のデータベースを使用する。まず、ソース言語ＬＦの部分グラフであるソース言語ＬＦ要素を持つすべてのマッピングが取り出される。通常は、１つのマッピングのソース言語ＬＦ要素がソース言語ＬＦ全体をカバーすることはない。その結果、複数のマッピングから成る１つのセット（場合によっては重複することもある）を選択しなければならず、それらの目的言語ＬＦの複数の要素を組み合わせて完全な目的言語ＬＦを形成する必要がある。
【０００５】
目的言語論理形式のセットを特定するために、ＭＴシステムはグルーディ検索アルゴリズム（greedy search algorithm）を使用して、可能性のあるマッピングのうちから、ソース言語ＬＦに適合するソース言語ＬＦ要素を持つマッピングの組合せを選択する。このグルーディ検索は、そのマッピングを、サイズ、頻度、および、マッピングのソース言語ＬＦ要素がソース言語ＬＦにどの程度適合しているかを示すその他の特徴によって、
ソートすることから開始する。次に、ソートされたリストをトップ・ダウン方式で走査し、ソース言語論理形式をカバーする、最初に見つかった適合するマッピングのセットを選択する。この発見的システム（heuristic system）は、入力マッピングの可能な組合せをすべて調べるわけではなく、単純に、ソース言語ＬＦを完全にカバーする最初のマッピングのセットを選択するに過ぎない。
【０００６】
マッピングのセットを選択した後、マッピングの目的言語ＬＦ要素は、目的言語ＬＦを生成するために、ソース言語ＬＦに整合する方式で組み合わせる。最後に、目的言語ＬＦに対して自然言語生成システムを実行することによって、目的言語の出力を生成する。
【０００７】
しかし、ＭＴシステムは、必ずしも論理形式またはその他の構文解析された構造を中間表現として使用するとは限らない。また、翻訳の曖昧さを解決するために必ずしも発見的方法を使用するわけではない。ＭＴシステムによっては、統計的モデルを使用して、ソース言語の入力文字列が与えられた場合の最も可能性の高い目的言語文字列を予測しようとするものもある。そのようなＭＴシステムは、雑音チャネル(noisy-channel）フレームワークなどの従来の統計的フレームワークや統計的モデルを使用してデコードし、所与のソース言語センテンスＳに対する最も可能性の高い翻訳である目的言語センテンスＴを求める。この確率の最大化は以下の式で表される。
【０００８】
【数１】
2005285129.tif 000003
上式で、Ｔ’は、目的言語の複数のセンテンスに及ぶ。ベイズの規則を使用すれば、この確率の最大化は以下の式でも表すことができる。
【０００９】
【数２】
2005285129.tif 000004
上式で、Ｐ（Ｓ｜Ｔ’）は、目的言語文字列Ｔ’を仮定した場合のソース言語文字列Ｓの確率であり、Ｐ（Ｔ’）は、目的言語文字列Ｔ’の確率である。文字列ベースの統計的ＭＴ（構文解析された中間表現を使用しないＭＴ）では、単一言語の目的言語データでトレーニングした目的言語モデルを使用して、Ｐ（Ｔ）の推定値を計算し、複雑さの様々なアライメント・モデルを使用してＰ（Ｓ｜Ｔ）を計算し、推定する。
【００１０】
【特許文献１】米国特許第５,９６６,６８６号明細書
【非特許文献１】Powell, M. J. D., "An efficient method for finding the minimum of a function of several variables without calculating derivatives", Computer Journal, Vol. 7 pages 155-162, 1964.
【非特許文献２】Papineni et al., K. A., "Bleu: a Method for Automatic Evaluation of Machine Translation", Technical Report, RC22176 (W0109-022), IBM Research Division, Thomas J. Watson Research Center, September 17, 2001.
【非特許文献３】On structuring probabilistic dependences in stochastic language modeling（Ney、Essen、およびKneser、1994年、Computer Speech and Language、8:1〜38頁)
【非特許文献４】Brown et al., P. F., "The Mathematics of Statistical Machine Translation: Parameter Estimation", Association for Computational Linguistics, Vol. 19, pages 263-311, 1993.
【非特許文献５】Charniak, E., "Immediate-Head Parsing for Language Models", Meeting of the Association for Computational Linguistics, 2001.
【非特許文献６】Charniak et al., E., "Syntax-based Language Models for Statistical Machine Translation", Proceedings of MT Summit IX 2003, 2003.
【非特許文献７】Chelba et al., C. "Exploiting Syntactic Structure for Language Modeling" Proceedings of the Thirty-Sixth Annual Meeting of the Association for Computational Linguistics and Seventeenth International Conference on Computational Linguistics, pages 225-231, 1998.
【非特許文献８】Eisner, J., "Learning Non-Isomorphic Tree Mappings for Machine Translation", Proceedings of the 41st Meeting of the Association for Computational Linguistics (ACL 2003), Companion Volume, July 2003.
【非特許文献９】Goodman, J., "A Bit of Progress in Language Modeling", Technical Report, MSR-TR-2001-72, December 2001.
【非特許文献１０】Klein et al., D., "Accurate unlexicalized Parsing", Proceedings of the 41st Annual Meeting of the Association for Computational Linguistics, pages 423-430, July 2003.
【非特許文献１１】Knight, K. "Decoding Complexity in Word-Replacement Translation Models", Association for Computational Linguistics, 25(4), pages 607-615, 1999.
【非特許文献１２】Moore, R., "Towards a Simple and Accurate Statistical Approach to Learning Translation Relationships among Words", Proceedings, Workshop on Data-driven Machine Translation, 39th Annual Meeting and 10th Conference of the European Chapter, Association for Computation Linguistics, pages 79-86, 2001.
【非特許文献１３】Och et al., F., "Discriminative Training and Maximum Entropy Models for Statistical Machine Translation", Proceedings of the 40th Annual Meeting of the Association for Computation Linguistics, Philadelphia, pages 295-302, July 2002.
【非特許文献１４】Richardson et al., S., "Achieving commercial-quality translation with exampl- based methods", Proceedings of MT Summit VIII, pages 293-298, 2001.
【非特許文献１５】Stolcke, A., "Entropy-based Pruning of Backoff Language Models", DARPA Broadcast News Transcription and Understanding Workshop, pages 270-274, 1998.
【非特許文献１６】Yamada et al., K., "A Syntax-Based Statistical Translation Model", Proceedings of the 39th Annual Meeting of the Association for Computational Linguistics, pages 523-529, 2001.
【発明の開示】
【発明が解決しようとする課題】
【００１１】
従来の文字列ベースの統計的ＭＴシステムにはいくつかの問題がある。具体的には、検索空間（目的言語のすべての可能な文字列）がかなり大きいことである。この検索空間を制限しない限り、すべての可能な翻訳文字列を検討するのに時間がかかり過ぎるため、実用的なＭＴシステムを構築することができない。これに対処するために、多くのシステムは、文字列全体のチャネル・モデルと目的言語モデルの確率が当該文字列内の複数の部分文字列の確率の積として求めることができる、という単純化仮定を用いる。この仮定は、文字列内および文字列間の依存関係が、部分文字列によって規定される局所的な範囲に限定される限り、有効であるだけである。しかし、１つのソース言語テキストのかなりの部分に対する最良の翻訳が、予測対象要素から比較的離れたソース言語文字列および目的言語文字列の要素によって条件付けられる場合がある。文字列ベースの統計的ＭＴモデルにおけるこの単純化仮定は、主として文字列の局所性に基づいているため、この条件付け要素が、予測する要素から離れ過ぎていて、モデルによる考慮の範囲に入れることができないことがある。
【００１２】
たとえば、文字列ベースの統計的ＭＴシステムには、言語モデル（ＬＭ）として文字列のｎグラム・モデルを使用するものがある。そのようなｎグラム・モデルは、トレーニングすること、使用すること、最適化すること、が簡単である。しかし、ｎグラム・モデルにはいくつかの制約がある。１つの語をその直前の１語または２語から正確に予測することができるけれども、多くの言語構造は、予測の重要な手掛かりとなる語を、それらの語によって予測される語から離れて配置し、それらは、文字列のｎグラム・モデルの範囲から除外される。以下のような能動文と受動文を考えてみる。
【００１３】
１．John hit the ball.（ジョンがボールを打った。）  
２．The balls were hit by Lucy.（ボールがルーシーによって打たれた。）  
上記のセンテンスでは、以下のトライ・グラムが以下の頻度で出現する。  
<P> <P> John 1             <P> <P> The 1  
<P> John hit 1             <P> The balls 1  
John hit the 1             the balls were 1  
hit the ball 1             balls were hit 1  
the ball <POST> 1          were hit by 1  
hit by Lucy 1  
by Lucy <POST> 1  
ここで、＜Ｐ＞は、センテンスの先頭における仮想記号（imaginary token）で、文頭コンテクストを示し、＜ＰＯＳＴ＞は、文末の仮想記号である。両方の事例で事象（ボールを打つこと）は同じであるにもかかわらず、上記の各トライ・グラムは１回しか出現しないことに注目されたい。
【００１４】
他の統計的ＭＴシステムでは、ソース言語の統語論的構造（syntax structure）は、目的言語内文字列にマップされる。構文ベースのモデルには、文字列ベースのモデルよりも優れた利点がいくつかある。ある面において、構文ベースのモデルは、見出し語（lemmas）を正規化することによって、疎データ問題（sparse data problem）の重大さを軽減することができることである。他の面では、構文ベースのモデルは、言語の統語論的構造（syntactic structure）を考慮に入れることができることである。したがって、互いに依存する事象が、構文木においては、表面的な文字列（surface string）におけるよりも互いに近くなることが多いく、その結果、構文木における共通の親までの距離が文字列における距離よりも短くなる可能性がある。
【００１５】
しかし、構文ベースのモデルであっても、以下の欠点は残る。互いに依存した語の間の距離が、局所的モデルによって捉えられないほど遠くなる場合がある。また、類似した概念が、異なる構造（たとえば能動態と受動態）によって表され、この結果まとめてモデル化されない。これらによって、モデルのトレーニングが不十分になり、翻訳のパフォーマンスも悪くなる。
【課題を解決するための手段】
【００１６】
本発明は、入力意味構造をデコードして出力意味構造を生成する方法を含む。この技法は、入力意味構造の各部分に対して一組のトランスファ・マッピングを使用する。統計モデルを使用して、この一組のトランスファ・マッピングのうちの少なくとも１つのトランスファ・マッピングのスコアが計算される。このスコアに基づいて少なくとも１つのトランスファ・マッピングを選択し、出力意味構造の構築に使用する。本発明は、コンピュータ実装方法として、および機械翻訳システムとしても実施可能である。本発明の他の態様は、意味構造から構築される言語モデルである。
【発明を実施するための最良の形態】
【００１７】
本発明が機械翻訳システムのコンテクストで説明されるという点で、本発明は、複数の語を生成するその他のシステム、または言語モデルを必要とするその他のシステムにも適用可能であることに留意されたい。たとえば、これらのシステムとしては、音声認識、光学式文字認識（ＯＣＲ）、文法チェックなどのシステムがある。本発明について詳細に説明する前に、本発明を適用することができる例示のコンピューティング環境の実施形態について説明する。
【００１８】
図１に、本発明を実装可能な適合するコンピューティング・システム環境の一例を示す。このコンピューティング・システム環境１００は、適合するコンピューティング環境の一例に過ぎず、本発明の使用または機能の範囲に関する制限を示唆するものではない。また、このコンピューティング環境１００は、例示の動作環境１００に示す構成要素のいずれか１つまたはその組合せに関する依存または要件を有するものと解釈するべきではない。
【００１９】
本発明は、他の多くの汎用または特殊目的コンピューティング・システム環境または構成でも動作可能である。本発明と共に使用するのに適した公知のコンピューティング・システム、環境、および／または構成の例としては、パーソナル・コンピュータ、サーバ・コンピュータ、ハンドヘルド装置またはラップトップ装置、マルチ・プロセッサ・システム、マイクロ・プロセッサ使用システム、セットトップボックス、プログラム可能民生電子機器、ネットワークＰＣ、ミニ・コンピュータ、メインフレーム・コンピュータ、電話システム、およびこれらのシステムまたは装置のいずれかを備えた分散コンピューティング環境などがあるが、これらには限定されない。
【００２０】
本発明について、コンピュータによって実行されるプログラム・モジュールなどのコンピュータ実行可能命令という一般的なコンテクストで説明することができる。通常、プログラム・モジュールは、特定のタスクを実行するかまたは特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。本発明は、通信ネットワークによって接続された遠隔処理装置によってタスクが実行される分散コンピューティング環境で実施されるように設計される。分散コンピューティング環境では、メモリ記憶装置を含むローカルと遠隔の両方のコンピュータ記憶媒体にプログラム・モジュールが格納される。
【００２１】
図１を参照すると、本発明を実装する例示のシステムは、コンピュータ１１０の形態の汎用コンピューティング装置を含む。コンピュータ１１０の構成要素としては、処理装置１２０、システム・メモリ１３０、およびシステム・メモリを含む様々なシステム構成要素を処理装置に接続するシステム・バス１２１があるが、これらには限定されない。システム・バス１２１は、様々なバス・アーキテクチャのいずれかを使用した、メモリ・バスまたはメモリ・コントローラ、周辺装置バス、およびローカル・バスなどを含めた、数種類のバス構造のいずれかとすることができる。そのようなアーキテクチャとしては、たとえば、業界標準アーキテクチャ（ＩＳＡ）バス、マイクロ・チャネル・アーキテクチャ（ＭＣＡ）バス、拡張ＩＳＡ（ＥＩＳＡ）バス、ビデオ・エレクトロニクス規格協会（Video Electronics Standards Association：ＶＥＳＡ）ローカル・バス、および、メザニン・バスとも呼ばれる周辺コンポーネント・インターコネクト（Peripheral Component Interconnect：ＰＣＩ）バスがあるが、これらには限定されない。
【００２２】
コンピュータ１１０は典型的には、様々なコンピュータ可読媒体を備える。コンピュータ可読媒体は、コンピュータ１１０がアクセス可能であって、揮発性媒体と不揮発性媒体、取外し可能媒体と取外し不能媒体の両方を含む、利用可能な任意の媒体とすることができる。たとえば、コンピュータ可読媒体には、コンピュータ記憶媒体と通信媒体が含まれるが、これらには限定されない。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラム・モジュール、またはその他のデータなどの情報の記憶のための任意の方法または技法で実装された、揮発性と不揮発性、取外し可能と取外し不能の両方の媒体が含まれる。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリ、またはその他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）またはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置またはその他の磁気記憶装置、あるいは、所望の情報を記憶するために使用することができ、コンピュータ１１０がアクセス可能な他の任意の媒体が含まれるが、これらには限定されない。通信媒体は、一般には、コンピュータ可読命令、データ構造、プログラム・モジュール、またはその他のデータを、搬送波などの被変調データ信号またはその他の伝送機構として実現し、あらゆる情報配信媒体を含む。「被変調データ信号」という用語は、その特性のうちの１つまたは複数の特性が、情報を信号の形態で符号化するように設定または変更された信号を意味する。たとえば、通信媒体には、有線ネットワークや直接配線接続などの有線媒体、音響、ＲＦ、赤外線、およびその他の無線媒体などの無線（ワイヤレス）媒体が含まれるが、これらには限定されない。上記のいずれの組合せも、コンピュータ可読媒体の範囲に含まれるものとする。
【００２３】
システム・メモリ１３０は、読取り専用メモリ（ＲＯＭ）１３１およびランダム・アクセス・メモリ（ＲＡＭ）１３２などの揮発性および／または不揮発性のメモリの形態のコンピュータ記憶媒体を含む。起動時などにコンピュータ１１０内の要素間で情報を転送するのを助ける基本ルーチンを含む基本入出力システム１３３（ＢＩＯＳ）は、典型的には、ＲＯＭ１３１に記憶される。ＲＡＭ１３２は、典型的には、処理装置１２０が、ダイレクトにアクセス可能および／または現在処理中のデータおよび／またはプログラム・モジュールを含む。たとえば、図１に、オペレーティング・システム１３４、アプリケーション・プログラム１３５、その他のプログラム・モジュール１３６、およびプログラム・データ１３７が図示されているが、これらには限定されない。
【００２４】
コンピュータ１１０は、他の取外し可能／取外し不能の揮発性／不揮発性コンピュータ記憶媒体も備えることができる。たとえば、例示に過ぎないが、図１には、取外し不能な不揮発性磁気媒体の読み書きを行うハードディスク・ドライブ１４１と、取外し可能な不揮発性磁気ディスク１５２の読み書きを行う磁気ディスク・ドライブ１５１と、ＣＤ−ＲＯＭまたはその他の光媒体などの取外し可能な不揮発性光ディスク１５６の読み書きを行う光ディスク・ドライブ１５５とが図示されている。例示の動作環境で使用可能なその他の取外し可能／取外し不能な揮発性／不揮発性コンピュータ記憶媒体としては、磁気テープカセット、フラッシュ・メモリ・カード、デジタル多用途ディスク、デジタル・ビデオ・テープ、半導体ＲＡＭ、半導体ＲＯＭなどがあるが、これらには限定されない。ハードディスク・ドライブ１４１は、一般には、インターフェース１４０などの取外し不能メモリ・インターフェースを介してシステム・バス１２１に接続され、磁気ディスク・ドライブ１５１および光ディスク・ドライブ１５５は、一般には、インターフェース１５０などの取外し可能メモリ・インターフェースによってシステム・バス１２１に接続される。
【００２５】
上記および図１に図示するドライブおよびそれに付随するコンピュータ記憶媒体は、コンピュータ１１０に、コンピュータ可読命令、データ構造、プログラム・モジュール、およびその他のデータの記憶域を提供する。たとえば、図１で、ハードディスク・ドライブ１４１はオペレーティング・システム１４４と、アプリケーション・プログラム１４５と、その他のプログラム・モジュール１４６と、プログラム・データ１４７とを記憶しているものとして図示されている。これらの構成要素は、オペレーティング・システム１３４、アプリケーション・プログラム１３５、その他のプログラム・モジュール１３６、およびプログラム・データ１３７と同一のものであっても異なるものであってもよいことに注目されたい。オペレーティング・システム１４４、アプリケーション・プログラム１４５、その他のプログラム・モジュール１４６、およびプログラム・データ１４７は、ここでは少なくとも異なるコピーであることを示すために異なる番号が付与されている。
【００２６】
ユーザは、キーボード１６２、マイクロフォン１６３、マウスやトラック・ボールやタッチ・パッドなどのポインティング・デバイス１６１などの入力装置を介して、コンピュータ１１０にコマンドと情報を入力することができる。その他の入力装置（図示せず）としては、ジョイスティック、ゲームパッド、衛星通信受信アンテナ、スキャナなどがある。上記およびその他の入力装置は、システム・バスに接続されたユーザ入力インターフェース１６０を介して処理装置１２０に接続されることが多いが、パラレル・ポート、ゲームポート、ユニバーサル・シリアル・バス（ＵＳＢ）など、その他のインターフェースおよびバス構造によって接続することもできる。システム・バス１２１には、ビデオ・インターフェース１９０などのインターフェースを介してモニタ１９１またはその他の種類の表示装置も接続されている。モニタに加えて、コンピュータは、スピーカ１９７やプリンタ１９６などのその他の周辺出力装置も備えることができ、これらは出力周辺装置インターフェース１９５を介して接続することができる。
【００２７】
コンピュータ１１０は、遠隔コンピュータ１８０などの１つまたは複数の遠隔コンピュータへの論理接続を使用するネットワーク化環境で運用される。遠隔コンピュータ１８０は、パーソナル・コンピュータ、ハンドヘルド装置、サーバ、ルータ、ネットワークＰＣ、ピア装置、またはその他の共通ネットワーク・ノードとすることができ、典型的には、コンピュータ１１０に関して上述した要素の多くまたは全てを備える。図１に示す論理接続は、ローカル・エリア・ネットワーク（ＬＡＮ）１７１とワイド・エリア・ネットワーク（ＷＡＮ）１７３とを含むが、その他のネットワークも含むことができる。そのようなネットワーク環境は、オフィス、企業規模コンピュータ・ネットワーク、イントラネット、およびインターネットにおいて一般的に見られるものである。
【００２８】
ＬＡＮネットワーク環境で使用する場合、コンピュータ１１０はネットワーク・インターフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーク環境で使用する場合、コンピュータ１１０は、一般には、モデム１７２、またはインターネットなどのＷＡＮ１７３を介した通信を確立するその他の手段を備える。モデム１７２は、内蔵または外付けモデムとすることができ、ユーザ入力インターフェース１６０またはその他の適切な機構を介してシステム・バス１２１に接続することができる。ネットワーク化環境では、コンピュータ１１０に関して上述した各プログラム・モジュールまたはその一部を、遠隔メモリ記憶装置に記憶することができる。たとえば、図１には、遠隔アプリケーション・プログラム１８５が遠隔コンピュータ１８０上に常駐するものとして図示されているが、これには限定されない。図のネットワーク接続は例示に過ぎず、コンピュータ間で通信リンクを確立するその他の手段も使用可能であることがわかるであろう。
【００２９】
図２は、コンピューティング環境の一例であるモバイル装置２００のブロック図である。モバイル装置２００は、マイクロ・プロセッサ２０２と、メモリ２０４と、入出力（Ｉ／Ｏ）構成要素２０６と、遠隔コンピュータまたは他のモバイル装置と通信するための通信インターフェース２０８とを備える。一実施形態では、上記の構成要素は、適切なバス２１０を介して互いに通信するように接続されている。
【００３０】
メモリ２０４は、モバイル装置２００の全体的電源が遮断されてもメモリ２０４に記憶された情報が失われないように、バッテリ・バックアップ・モジュール（図示せず）を備えたランダム・アクセス・メモリ（ＲＡＭ）などの不揮発性電子メモリとして実装される。メモリ２０４の一部は、プログラム実行のためのアドレス可能メモリとして割り振られることが好ましく、メモリ２０４の他の部分はディスク・ドライブ上の記憶をシミュレートするためなどの記憶域として使用されることが好ましい。
【００３１】
メモリ２０４は、オペレーティング・システム２１２およびアプリケーション・プログラム２１４並びにオブジェクト・ストア２１６を含む。動作時、オペレーティング・システム２１２は、プロセッサ２０２によってメモリ２０４から実行されることが好ましい。オペレーティング・システム２１２は、好ましい一実施形態では、マイクロソフト・コーポレーションが市販するＷＩＮＤＯＷＳ（登録商標）ＣＥブランドのオペレーティング・システムである。オペレーティング・システム２１２は、モバイル装置用に設計されていることが好ましく、アプリケーション２１４が、公開されているアプリケーション・プログラミング・インターフェースおよびメソッドのセットを介して使用することができる、データベース機能を実装する。オブジェクト・ストア２１６内のオブジェクトは、少なくとも部分的には、公開アプリケーション・プログラミング・インターフェースおよびメソッドに対する呼出しに応答して、アプリケーション２１４とオペレーティング・システム２１２とによって維持される。
【００３２】
通信インターフェース２０８は、モバイル装置２００が情報の送受信を行うことができるようにする多くの装置および技法を代表的に表す。その種の装置としては、たとえば有線モデムおよび無線（ワイヤレス）モデム、衛星通信受信器、放送チューナなどがある。モバイル装置２００は、コンピュータに直接接続してコンピュータとデータを交換することもできる。その場合、通信インターフェース２０８は、赤外線送受信機またはシリアルもしくはパラレル通信接続とすることができ、これらはすべてストリーミング情報を送信することができる。
【００３３】
入出力構成要素２０６には、タッチ・センシティブ・スクリーン、ボタン、ローラ、マイクロフォンなどの各種入力装置と、音声発生装置、振動装置、表示装置などの各種出力装置が含まれる。上記の装置は例示に過ぎず、上記の装置のすべてがモバイル装置２００上に存在する必要はない。また、本発明の範囲内で、モバイル装置２００にその他の入出力装置も装着または搭載することができる。
【００３４】
論理形式（logical form）
本発明について詳細に説明する前に、論理形式について概説すれば有益であろう。論理形式およびシステムとその生成方法の詳細な説明は、特許文献１に記載されている。簡単に言えば、論理形式は、文法的な複数の関係で補強された従来の句構造解析を生成する、入力テキストに対しての形態素解析（morphological analysis）を実行することによって、生成される。統語解析は、テキスト入力内の内容語間のラベル付き依存関係を記述するデータ構造である論理形式を得るためにさらに処理される。
【００３５】
一般に、論理形式は、センテンスまたはセンテンスの一部などの単一の入力を表す関連した論理関係から成るデータ構造である。この論理形式は、少なくとも１つの論理関係から成り、入力文字列内の重要な語の間の構造的関係（すなわち統語関係および意味関係）、具体的には、項および／または付加詞関係（argument and/or adjunct relation(s)）を表す。
【００３６】
論理形式は、特定の統語的交替（syntactical alternations）（たとえば能動／受動）を正規化し、センテンス内照応関係（intrasentential anaphora）と、長距離依存関係（long distance dependencies）の両方を解決することができる。論理形式の要素の理解の助けとなるように、たとえば、「背景技術」の項で例として挙げた能動文と受動文の論理形式または依存グラフ３００および４００を、図３および図４に示す。ただし、当業者ならわかるように、コンピュータ可読媒体に記憶されると、論理形式は、グラフを表すものと容易には理解することができない。図３および図４は、背景技術の項で述べたように、表層的な文字列および構文モデルでは表現することができない重要な一般化を示している。
【００３７】
なぜ依存グラフが文字列ベースのｎグラム・モデルまたは構文木よりも優れた言語モデルを示し得るのかを理解するために、以下のセンテンスについて検討してみる。  
１．John hit the ball.  
２．The balls were hit by Lucy.  
表層文字列ベースの３グラム・モデルでは、以下のような回数となる。  
<P> <P> John 1             <P> <P> The 1  
<P> John hit 1             <P> The balls 1  
John hit the 1             the balls were 1  
hit the ball 1             balls were hit 1  
the ball <POST> 1          were hit by 1  
hit by Lucy 1  
by Lucy <POST> 1
両方のセンテンスで事象（ボールを打つこと）は同じであるにもかかわらず、これらの各トライ・グラムは１回しか出現しないことに注目されたい。
【００３８】
構文木を見ると、わずかに異なる状態がわかる。具体的には、上記のセンテンスの場合、以下のような構文木が生成される。  
John hit the ball.  
Decl1  
|_____NP1 ____NOUN1    "John"  
|_____VERB1   "hit"  
|_____NP2 ____DETP1 _____ADJ*   "the"  
|        |____NOUN2   "ball"  
|_____CHAR1  "."  
The balls were hit by Lucy.  
Decl1  
|_____NP1_____DETP1_____ADJ1*   "the"  
|       |_____NOUN1   "balls"  
|_____AUX1 ___VERB1   "were"  
|_____VERB2*  "hit"  
|_____PP1 ____PP2_______PREP1*   "by"  
|       |_____NOUN2*    "Lucy"  
|_____CHAR1   "."
この場合も、ボールを打つことが別個の２つのバケットに分かれており（能動態の規則セットと受動態の規則セット）、したがってシステムは有用な一般化を学習することができないことに注目されたい。
【００３９】
図３および図４は、論理形式３００および４００を示している。ＬＦ３００および４００は、親ノード３０２および４０２と、子ノード３０４、３０８、４０４、および４０８と、意味関係ノード３０６、３０７、４０６、および４０７とを含む。意味関係ノード３０６および４０６は、子ノード３０４、３０８、４０４、および４０８を、親ノード３０２および４０２に接続するように機能し、親ノードと子ノードとの間の意味関係を明らかにする。
【００４０】
親ノード３０２および４０２は、語形（word form）または見出し語を収容する。たとえば、親ノード３０２および４０２の見出し語は、単語「ｈｉｔ」である。子ノード３０４、３０８、４０４、および４０８も語形または見出し語を含む。意味関係ノード３０６および４０６は、子ノード３０４および４０４が深層主語であることを示し、意味関係ノード３０７および４０７は、子ノード３０８および４０８が親ノード３０２および４０２の深層目的語であることを示している。さらに、ＬＦ３００および４００は、各ノードの各見出し語に付加された二項素性（Binary features）（または「ビット」）も含む。たとえば、二項素性はＬＦ３００および４００の各見出し語に付加され、括弧内に示される。二項素性は、見出し語の統語特性を記述するものである。たとえば、ノード３０２の語形は、語「ｈｉｔ」を過去時制（past tense）および命題（proposition）として記述する「ビット」を含む。
【００４１】
文字列および構文木とは異なり、論理形式３００および４００は、同じグラフ構造内に能動態構文と受動態構文の両方を含む。ＬＦ構造のグラフを解体して、ノードが親を２つ持たないような木構造を生成することができる。論理形式３００および４００は、対応するセンテンス（またはセンテンスの断片）の階層的論理表現である。各ノードは、そのすべての先祖（ancestors）に依存する。（目的言語）言語モデルを構築するために、各子ノードがその親（または、ｎグラムのＬＦモデルの場合、ｎ−１個の先祖）にのみ依存するという近似に基づいてローカル構造をモデリングする。
【００４２】
一実施形態例では、統語解析から論理形式を構築する特定のコードを、機械翻訳システムが処理する様々なソース言語および目的言語間で共有する。この共有構造によって、２つの言語における表面上明確に異なる構造が、類似または同一の論理形式表現にまとめられるため、異なる言語からの論理形式セグメントをアライメントする作業が大幅に簡略化される。
【００４３】
機械翻訳
図５は、本発明の一実施形態による機械翻訳システム５００のアーキテクチャの一例を示すブロック図である。システム５００は、解析部５０４および５０６、統計的語彙連合学習部（statistical word association learning component）５０８、論理形式アライメント部５１０、語彙知識ベース（lexical knowledge base）（ＬＫＢ）構築部５１２、二言語対訳辞書５１４、連合リスト（association list）５２０、およびトランスファ・マッピング・データベース５１８を備える。翻訳実行時、システム５００は、解析部５２２と、検索部５２４と、デコード部５５４と、トランスファ部５２６と、生成部５２８とを使用する。
【００４４】
一実施形態例では、二言語コーパス（bilingual corpus）を使用して、システムをトレーニングする。二言語コーパス（または「バイテキスト（bitext）」）には、アライメント済み翻訳センテンス（たとえば、英語などのソース言語と目的言語のうちのいずれか一方のセンテンスと、スペイン語などのソース言語と目的言語のうちの他方の言語に人間によって作成されたそれらの翻訳文とを１対１に対応させた複数のセンテンス）が含まれている。トレーニング時、アライメント済み二言語コーパスからシステム５００に、複数のセンテンスがソース言語センテンス５３０（翻訳対象センテンス）および目的言語センテンス５３２（ソース言語センテンスの翻訳）として入力される。解析部５０４および５０６が、アライメント済み二言語コーパスからのこれらのソース言語センテンスおよび目的言語センテンスを解析して、ソース言語論理形式５３４および目的言語論理形式５３６を生成する。
【００４５】
解析時、センテンス中の複数の単語が正規化語形または正規化見出し語に変換され、統計的語彙連合学習部５０８に送ることができる。単一語連合と多語連合の両方が、それぞれの信頼性の高い組が得られるまで、統計的語彙連合学習部５０８によって反復的に仮定されて、スコアが決定される。統計的語彙連合学習部５０８は、学習された語翻訳対（learned word translation pairs）５３８を出力する。
【００４６】
語対（Word pairs）は、連合リスト５２０に登録され、この連合リストは更新された二言語対訳辞書として機能する。
【００４７】
語対５３８は、ソース言語論理形式５３４および目的言語論理形式５３６と共に、論理形式アライメント部５１０に送られる。簡単に言うと、論理形式アライメント部５１０は、まず、ソース言語論理形式および目的言語論理形式５３４および５３６それぞれの各ノード間に仮の対応付けを設定する。これは、二言語レキシコン（たとえば二言語対訳辞書）５１４からの翻訳対を使用して行われる。この二言語レキシコンは、統計的語彙連合学習部５０８からの語対５３８によって増強することができる。可能な対応付けが設定された後、アライメント部５１０が語彙と構造の両方の考察に従って、論理形式ノードのアライメントを行い、単語および／または論理形式トランスファ・マッピング５４２を作成する。
【００４８】
基本的には、アライメント部５１０は、二言語対訳辞書情報５１４と語対５３８とを使用して、論理形式間にリンクを設定する。このトランスファ・マッピングは、任意選択により、ソース言語論理形式および目的言語論理形式５３４および５３６での出現頻度に基づいてフィルタリングされ、語彙知識ベース構築部５１２に送られる。
【００４９】
フィルタリングは任意選択であるが、一実施例では、トランスファ・マッピングがトレーニング・データ内に少なくとも２回現れない場合、そのトランスファ・マッピングはトランスファ・マッピング・データベース５１８の構築には使用しない。ただし、他の所望の頻度もフィルタとして使用可能である。また、出現頻度以外の他のフィルタリング技法も使用することができることに留意されたい。たとえば、トランスファ・マッピングは、ソース言語センテンスの完全な解析から形成されているか否か、および、トランスファ・マッピングの作成に使用された論理形式が完全にアライメントされているか否かに基づいてフィルタリングすることもできる。
【００５０】
語彙知識ベース構築部５１２は、トランスファ・マッピング・データベース５１８を構築し、これは、基本的に、１つの言語の語および／または論理形式を、第２の言語の語および／または論理形式にリンクするトランスファ・マッピングを収容する。トランスファ・マッピング・データベース５１８がこのようにして作成されるにしたがって、システム５００は、翻訳の実行に備えて構成されることになる。
【００５１】
翻訳実行時、翻訳対象のソース言語テキスト５５０が解析部５２２に入力される。解析部５２２は、ソース言語テキスト５５０を受け取り、入力されたソース言語テキストに基づくソース言語論理形式５５２を作成する。
【００５２】
ソース言語論理形式５５２は、検索部５２４に送られる。検索部５２４は、当該ソース言語論理形式５５２の全部または一部をカバーするトランスファ・マッピングを得るために、トランスファ・マッピング・データベース５１８の検索を試みる。ソース言語論理形式５５２内の複数のノードのうちの１つまたはそれ以上のノードについて複数のマッピングが見つかる場合もある。
【００５３】
可能なトランスファ・マッピングのセットと、トランスファ・マッピングの可能な組合せのセットが見つかった後、デコード部５５４が複数のモデルを使用してトランスファ・マッピングの各組合わせのスコアを決定する。一実施形態では、後で詳述する線形補間スコアを使用して、個々のトランスファ・マッピングおよびトランスファ・マッピングの組合せのスコアが決定される。スコアが生成された後、デコード部５５４は、トランスファ・マッピングの最良の組合せを選択し、記憶する。
【００５４】
トランスファ部５２６が、デコード部５５４から候補マッピングの最良の組合せを受け取り、目的言語翻訳の基礎となる目的言語論理形式５５６を作成する。これは、選択されたトランスファ・マッピングのノードを組み合わせることによって行われる。
【００５５】
検索部５２４によって、適用可能なトランスファ・マッピングが見つからない場合、ソース言語論理形式５５２内のノードとそれらの関係が、単純に目的言語論理形式５５６にコピーされる。さらに、トランスファ・マッピング・データベース５１８内で、これらのノードのデフォルトの単一語翻訳（single-word translation）が検出され、目的言語論理形式５５６に挿入される場合もある。しかし、何も見つからない場合は、たとえば、アライメント時に使用した連合リスト５２０から翻訳を入手することができる。
【００５６】
生成部５２８は、たとえば目的言語論理形式５５６から目的言語テキスト（または目的言語文字列）５５８にマップする、アプリケーションに依存しないルールベースの生成部である。または、生成部５２８は、機械学習センテンス実現手法（machine learned approach to sentence realization）を使用することもできる。たとえば、生成部５２８は、入力された論理形式のソース言語に関する情報を持たず、トランスファ部５２６から渡された情報のみを使用して動作する。また、生成部５２８は、たとえば、この情報を単一言語（たとえば目的言語）辞書と共に使用して、目的言語テキスト５５８を生成する。したがって、各言語に１つの汎用生成部５２８で十分である。
【００５７】
論理形式の統計的機械翻訳
以下の説明に関しては、当業者であれば、依存グラフ、論理形式、意味構造、意味関係、および意味表現は、すべて、実行時に入力される入力論理形式に関するものであり、入力論理形式を記述するものであることが、認識されよう。さらに、当業者であれば、トランスファ・マッピングまたはマッピングは、トレーニング時に形成されたマッピングを指すことが、認識されよう。
【００５８】
以下の式は、式２と同様の式であり、本発明の一実施形態の高水準概念を示すものである。
【００５９】
【数３】
2005285129.tif 000005
ここで、Ｔ’は目的言語の論理形式であり、Ｐ（Ｓ｜Ｔ’）は、目的言語論理形式Ｔ’が与えられた場合のソース言語論理形式Ｓの確率であり、Ｐ（Ｔ’）は、目的言語論理形式Ｔ’の確率であり、
【００６０】
【数４】
2005285129.tif 000006
【００６１】
とも書き、μＴは目的言語モデルである。上記の式は、以下の式と同等である。
【００６２】
【数５】
2005285129.tif 000007
本発明の一実施形態では、以下のようないくついかの知識源を組み込むことによって、Ｐ（Ｓ｜Ｔ’）を近似する。すなわち、チャネル・モデルまたは翻訳モデル
【００６３】
【数６】
2005285129.tif 000008
【００６４】
、ファティリティ・モデル
【００６５】
【数７】
2005285129.tif 000009
【００６６】
、マッピングサイズ情報ソース
【００６７】
【数８】
2005285129.tif 000010
【００６８】
、および二項素性マッチング（binary features matching）（または「ランク」）情報ソース
【００６９】
【数９】
2005285129.tif 000011
【００７０】
である。これらの知識ソースを組み込むことによって、Ｐ（Ｓ｜Ｔ’）を以下のように近似することができる。
【００７１】
【数１０】
2005285129.tif 000012
したがって、以下のようになる。
【００７２】
【数１１】
2005285129.tif 000013
【００７３】
各スコアまたは対数確率の相対寄与率に、重み係数（λＴ、λＣ、λＦ、λＳ、およびλＢ）によって重み付けすると、線形補間近似は以下のようになる。
【００７４】
【数１２】
2005285129.tif 000014
【００７５】
実際には、本実施形態は、一度にソース言語論理形式および目的言語論理形式全体のスコアを決定するのではなく、検索（上記の各式で「ａｒｇｍａｘ」で示されている）によって、目的言語論理形式を作成し、一度に１つずつ翻訳マッピングが作成される。その際、各マッピングのスコアを使用する。トランスファ・マッピングｍの合計線形補間スコアは、次式によって表される。
【００７６】
【数１３】
2005285129.tif 000015
【００７７】
完全近似と同様に、また上記のように、各情報ソースのスコアまたは確率は、係数で重み付けされる。これらの係数（λＴ、λＣ、λＦ、λＳ、およびλＢ）または重みは、パウエルのアルゴリズムを使用してトレーニングされて、システムの出力でのＢＬＥＵスコアが最大化される。パウエルのアルゴリズムは当技術分野で周知である。このアルゴリズムの一例は、非特許文献１に記載されている。ＢＬＥＵスコアも、当技術分野で周知であり、非特許文献２に記載されている。
【００７８】
モデル
一実施形態によると、目的言語モデルは、一連のｎ−１個の先行ノードおよび関係が与えられた場合の目的言語依存グラフにおけるノードの確率を示すｎグラム・モデルである。図６に、目的言語依存グラフの例６００を示す。これは、トランスファ・マッピング・データベース５１８内の目的言語側上に見出すことができる。図６で、ノードＡ、Ｂ、Ｃ、およびＤは語形を収容する。ノードＢ、Ｃ、およびＤは子ノードであり、ノードＡは親ノードまたはルート・ノードである。ノードＲ１およびＲ２は、意味関係ノードである。
【００７９】
このｎグラム・モデルを使用すると、目的言語モデルが与えられた場合の目的言語依存グラフτ６００の全体の確率は、これらのノードのそれぞれのｎグラム確率の積になる。したがって、この目的言語モデルが与えられた場合の目的言語依存グラフ６００の確率は、以下の式で表される。
【００８０】
【数１４】
2005285129.tif 000016
ここで、ｉは論理形式τ内のすべてのノードにわたる指標である。各ノードｃｉについて、目的言語モデルによるスコアは、当該ノードのｎ−１個の最も近い先祖ｃｉ−１〜ｃｉ−（ｎ−１）を仮定した場合の、ｃｉの確率である。たとえば、この種のトライグラム・モデルによる目的言語論理形式６００の確率は、以下のようになる。
【００８１】
【数１５】
2005285129.tif 000017
このトライグラム・モデルでは、意味関係（Ｒ１、Ｒ２）は、目的言語モデルが簡略化され、その結果、見出し語と意味関係とに対して別々のモデルが不要になるような、最高クラスのエンティティとして扱われる。この目的言語モデルは、出現頻度の低いｎグラムを除去することによって切り詰められ、補間絶対ディスカウント（interpolated absolute discounting）手法を使用して平滑化される。補間絶対ディスカウントは、当技術分野で周知であり、非特許文献３に記載されている。
【００８２】
チャネル・モデルは、目的言語論理形式Ｐ（Ｓ｜Ｔ）が与えられた場合のソース言語論理形式の確率を推定する。一実施形態では、所与のソース言語論理形式Ｓおよび目的言語論理形式Ｔのトランスファ・マッピング・カバー（transfer mapping cover）Ｍを、ＳからＴへのトランスファ・マッピングのセットと定義する（Ｍ：Ｓ→Ｔで示す）。目的言語論理形式Ｔが与えられた場合のソース言語論理形式Ｓの確率は、以下の式によって、推定される。
【００８３】
【数１６】
2005285129.tif 000018
ここで、ｉはすべてのトランスファ・マッピング・カバーＭｉ：Ｓ→Ｔにおける値（潜在的に）であり、および、以下の式
【００８４】
【数１７】
2005285129.tif 000019
によって、チャネル・モデルμｃによるマッピングｍの確率が定義される。式ｃｏｕｎｔ（ｍｓ，ｍＴ）は、トレーニング・データ・セットにおいて、マッピングｍのソース言語側の構造がマッピングｍの目的言語側の構造にマップされた回数である。ｃｏｕｎｔ（ｍＴ）は、トレーニング・データにおいて、マッピングｍの目的言語側の構造が任意のマッピングの目的言語側で検出された回数である。
【００８５】
言い換えると、トランスファ・マッピングｍのチャネル・モデルμｃによる確率は、トランスファ・マッピングのソース言語側が（論理形式バイテキスト内で）トランスファ・マッピングの目的言語側に遭遇した回数ｃｏｕｎｔ（ｍｓ，ｍＴ）を、トランスファ・マッピングが遭遇した目的言語側の回数ｃｏｕｎｔ（ｍＴ）で割ることによって推定される。
【００８６】
チャネル・モデルは、重複トランスファ・マッピングも使用する。したがって、式１２で求められた確率は、非正規化確率である。この非正規化確率は、チャネル・モデルが、他のマッピングよりも多くの重複（overlap）を有する特定のマッピングに有利に働かないように正規化することができる。
【００８７】
図７に入力ＬＦ７００を示し、図８に、トランスファ・マッピング・データベース５１８内で見出されるトランスファ・マッピング８００を示す。トランスファ・マッピング８００は、マッピング８０２、８０３、８０４、８０６、および８０８を含む。図を簡単にするために、トランスファ・マッピングにおける見出し語のノードのみを本アプリケーションの図に示し、意味関係のノードは図示していない。トランスファ・マッピングは、意味関係の追加のノードも含むことに留意されたい。しかし、それらのノードは、本発明では見出し語のノードと同様に扱われるため、これらの図および以下の説明は、見出し語ノードのみの説明に限定されている。
【００８８】
マッピング８００を様々に組み合わせて、ソース言語ＬＦ７００のノードをすべてカバーすることができる。たとえば、マッピング８０２をマッピング８０８と組み合わせることができ、マッピング８０３をマッピング８０６と組み合わせることができ、マッピング８０４と８０６と８０８とを一緒に組み合わせることができる。ソース言語ＬＦ７００内の各ノードは単一のトランスファ・マッピングによってのみカバーされるため、これらの各組合わせは重複しない。しかし、ソース言語ＬＦ７００をすべてカバーするようにマッピング８００を組み合わせる他の方法は、マッピング８０２をマッピング８０３と組み合わせることである。これによって、ソース言語ノードＡがマッピング８０２とマッピング８０３の両方によってカバーされるため、重複マッピングが形成される。
【００８９】
チャネル・モデルが重複マッピングに有利に作用しないようにするため、チャネル・モデルを正規化する。チャネル・モデルμｃが与えられた場合のマッピングｍの正規化確率
【００９０】
【数１８】
2005285129.tif 000020
【００９１】
は、以下の式によって計算される。
【００９２】
【数１９】
2005285129.tif 000021
ここで、「ｎｅｗ」は、入力グラフ内で前にカバーされていなかった構成要素またはノードの数であり、「ｔｏｔａｌ」は、ソース言語側トランスファ・マッピングの構成要素の合計数であり、
【００９３】
【数２０】
2005285129.tif 000022
【００９４】
は、上記で定義したチャネル・モデルによるトランスファ・マッピングの非正規化確率である。したがって、式１３は、チャネル・モデルによるトランスファ・マッピングの正規化確率が、例示の指数を有するチャネル・モデルによるトランスファ・マッピングの非正規化確率と等しくなることを示している。
【００９５】
前述のように、場合によっては、入力ＬＦ内のノードは、解析不能であったためや単に出現しなかったためにトレーニング・データ内に存在せず、または頻度が所定の閾値（通常は１回）よりも低かったためにトランスファ・マッピング・データベース５１８から除外されることがある。そのような場合、デフォルト・ノードが挿入される。デフォルト・ノードは、辞書から単一語翻訳によって形成される。このデフォルト・マッピングの確率は、二言語テキストでトレーニングしたＩＢＭモデル１を使用して求めることができる。この確率は、他のチャネル確率とは異なる方法で求められるため、デフォルト・マッピング確率は、重み（λＬ）によって調整してから、他のチャネル確率と結合される。さらに、デフォルト・マッピングの確率を決定することができない場合、デフォルト値（λＡ）が使用される。重みλＬおよびλＡは、この翻訳システムで使用される他の重みと同様、パウエルのアルゴリズムを使用してトレーニングされ、トレーニング・センテンスのセットのＢＬＥＵスコアを最大限にする。これらのパラメータは、式８に示すようにトランスファ・マッピングの最終スコアを計算する際にチャネル・モデルに付けられる重み（λＣ）とは別個のものであることに留意されたい。
【００９６】
チャネル・モデルは、目的言語モデルとは異なる動作をする。具体的には、チャネル・モデルは翻訳の正確さを向上させるのに対し、目的言語モデルは、ソース言語を考慮せずに目的言語の流暢さ（fluency）を向上させる。
【００９７】
目的言語モデルは、大きなグラフよりも小さなグラフの方を選ぶ役目を負っている。その結果、目的言語モデルは、ソース言語構造内と目的言語構造内のノード数を同数に維持するマッピングや、目的言語構造内のノードを追加するマッピングよりも、目的言語構造内のノードを削除するマッピングをしがちである。たとえば、図９および図１０に、トレーニング・データベース５１８がトランスファ・マッピング９００および１０００を含む様子を示す。トランスファ・マッピング９００は、目的言語側がソース言語側よりもノードが１個少ないことを示している。トランスファ・マッピング１０００は、マッピングのソース言語側と目的言語側とでノード数が同じであることを示している。マッピング９００による目的言語ＬＦのフラグメントの積と成る確率の数が、マッピング１０００によるフラグメントよりも少ないため、目的言語モデルは、マッピング１０００よりもマッピング９００に高いスコアを決定することになる。
【００９８】
ファティリティ・モデル（fertility model）は、トレーニング・データ中のマッピング内のノードが削除される回数に基づくスコアを提供することによって、この問題を克服することを支援する。トレーニング・データにおいてノードが希にしか削除されない場合、ファティリティ・モデルは削除のないマッピングにより高いスコアを与える。
【００９９】
ファティリティ・モデルは、トレーニング・データを調べ、トランスファ・マッピングのソース言語側のノード毎に、対応するノードがトランスファ・マッピングの目的言語側に出現する回数をカウントすることによって、算定される。疎データ問題を回避するために、見出し語のカウントを品詞（parts of speech）別にグループ化し、意味関係のカウント（この数は、品詞の数にほぼ等しい）を別個に維持する。次に、これらの頻度を使用して、削除の発生確率を算定する。
【０１００】
各品詞または意味関係のラベルｘについて、ファティリティ・テーブル内のエントリを次式によって表す。
【０１０１】
【数２１】
2005285129.tif 000023
言い換えると、構成要素ｘのファティリティ・テーブル・エントリは、目的言語構造とソース言語構造の両方においてｘに遭遇した回数と、ソース言語構造内で構成要素ｘに遭遇した回数との比を計算することによって、取り込まれる。したがって、ファティリティ・モデルμＦによるトランスファ・マッピングｍの確率は、以下の式によって計算される。
【０１０２】
【数２２】
2005285129.tif 000024
上式で、
【０１０３】
【数２３】
2005285129.tif 000025
言い換えると、目的言語のノードがソース言語のノードに対応する場合、ｆ（ｃ）はファティリティ・テーブル・エントリＦ［ｘ］である。対応しない場合、ｆ（ｃ）は１−Ｆ［ｘ］である。
【０１０４】
次の情報ソースは、マッピング・サイズ・スコアである。これは、トランスファ・マッピングのソース言語側のノードの数を考慮に入れる。この情報ソースは、次式によって求めたスコアを割り当てる。
【０１０５】
【数２４】
2005285129.tif 000026
【０１０６】
実際に、このサイズ・スコアは、コンテクスト情報の多いマッピングの方が、コンテクスト情報の少ないマッピングよりも良くなる可能性が高いという仮定のもとに、より大きなマッピングを優先する。図９および図１０を参照すると、ソース言語側のノードが２個であるため、トランスファ・マッピング９００のスコアは２となる。トランスファ・マッピング１０００も、ソース言語側のノードが２個であるためスコアは２となる。
【０１０７】
二項素性（またはビット）情報ソースは、入力依存グラフとトランスファ・マッピングのソース言語側との間で適合する二項素性（ビット）の数を考慮に入れる。この二項素性情報ソースは、トランスファ・マッピングのソース言語側のビットに適合するソース言語依存グラフ内の入力ビットの和であるランク・スコアを与える。図１１は入力ＬＦ１１００を示し、図１２はトランスファ・マッピング・データベース５１８に格納されたトランスファ・マッピング１２００を示す。入力ＬＦ１１００内のノードＡは、ノードＡの見出し語が受動ビットおよび単数ビットを有することを示している。トランスファ・マッピング１２００のソース言語側のノードＡは、ノードＡの見出し語が単数ビットを有することを示している。したがって、入力ＬＦ１１００のノードＡとマッピング１２００のソース言語側のノードＡの両方が、適合する単数ビットを有するため、トランスファ・マッピング１２００のランク・スコアは１である。
【０１０８】
図１３は、図５のデコード部５５４によって実装されるデコード・アルゴリズムを示す流れ図１３００である。デコード部５５４は、本発明の一実施形態によるトランスファ・マッピングのセットを選択し、スコアを決定する。デコード部５５４は、メモ化（memoization）によるトップ−ダウン検索を使用して、検索部５２４が検出したトランスファ・マッピングのセットから最も確率の高いマッピングの組合せを見つける。図１４は、本発明の一実施例によるソース言語ＬＦ１４００を示す。図１５から図２１は、ソース言語ＬＦ１４００に関係する、検索部５２４が検出したトランスファ・マッピングのセットの例を示す。
【０１０９】
図５のデコード部５５４は、ブロック１３０２に示すようにソース言語ＬＦ１４００の最上位ノードを選択することから開始する。図１４では、最上位ノードはノードＡである。ノードＡを選択した後、デコード部５５４は、ブロック１３０４に進み、このコンテクストにおける当該ノードの最良のマッピングが、前に特定されているか否かを決定する。この例では、ノードＡのいずれのマッピングもまだスコアが決定していない。
【０１１０】
次に、プロセスはステップ１３０６に進み、検索部５２４が検出したマッピングのセットから、選択されたノードをカバーするソース言語側を有するトランスファ・マッピングを選択する。たとえば、デコード部５５４は、図１５のトランスファ・マッピング１５００を選択する。
【０１１１】
ブロック１３０８で、デコード部５５４は、選択されたマッピングによってカバーされず、選択されたマッピングから直接延びているソース言語ＬＦ１４００内のノードがあるか否かを決定する。上記の例では、マッピング１５００は、ノードＡとノードＢのみをカバーする。したがって、子ノードＣは、選択されたマッピングによってカバーされず、選択されたマッピングによってカバーされるノードＡから直接延びている。ステップ１３０８で、カバーされない子ノードがある場合、プロセスはブロック１３１０に進む。
【０１１２】
ブロック１３１０で、デコード部５５４は、子ノードＣを選択し、ブロック１３０４に戻る。ブロック１３０４で、デコード部５５４は、選択されたコンテクスト内の選択されたノードについて最良のマッピングがすでに特定されているか否かを決定する。具体的には、３グラムの目的言語モデルの場合は、「選択されたコンテクスト」は、ノードＣのｎ−１の目的言語側祖先から構成される（この場合、＜ＰＲＥ＿ＲＯＯＴ、ＰＲＥ＿ＲＯＯＴ、Ａ’＞）。ノードＣについては、最良のマッピングがまだ特定されておらず、したがって、プロセスはステップ１３０６に進み、デコード部５５４は、子ノードＣをカバーするトランスファ・マッピングのセットから、トランスファ・マッピングを選択する。たとえば、デコード部５５４は、図１６に示すトランスファ・マッピング１６００を選択することができる。ステップ１３０６の後、デコード部５５４はブロック１３０８に進み、当該マッピングによってカバーされるノードから延びるカバーされていない子ノードがあるか否かを決定する。上記の例では、ノードＥとノードＦが、マッピング１６００によってカバーされるノードから延びるカバーされていない子ノードである。カバーされていない子ノードの検出により、デコード部５５４はブロック１３１０に進む。
【０１１３】
ブロック１３１０で、デコード部５５４は、カバーされていない子ノードのうちの１つ、たとえばノードＥを選択し、ブロック１３０４に戻る。ブロック１３０４で、デコード部５５４は、現在アクティブな目的言語コンテクスト（この場合、＜ＰＲＥ＿ＲＯＯＴ、Ａ’、Ｃ’＞）においてノードＥの最良のマッピングがまだ決定されていないと決定する。次に、プロセスはブロック１３０６に進み、デコード部５５４は、トランスファ・マッピングのセットから、ノードＥをカバーするトランスファ・マッピングを選択する。たとえば、デコード部５５４は、図１７に示すトランスファ・マッピング１７００を選択する。次に、デコード部５５４はブロック１３０８に進み、当該トランスファ・マッピングが、カバーされていない子ノードを残しているか否かを決定する。
【０１１４】
ソース言語ＬＦ１４００によると、ノードＥには子ノードがない。したがって、デコード部５５４は、ブロック１３１２に進み、選択されたトランスファ・マッピングのスコアを計算する。このスコアは、上述のすべてのモデルを組み込んで、前述の式８を使用して計算される。図１３のトップ−ダウン手法を採用する１つの理由は、（スコアを決定するマッピングの）ノードのコンテクストが既知であり、それによって（コンテクストを必要とする）目的言語モデルを使用して目的言語モデルのスコアを計算することができることを確実にするためであることに留意されたい。
【０１１５】
マッピングのスコアを求めた後、デコード部５５４はブロック１３１４に進み、選択されたノードをカバーするトランスファ・マッピングがまだあるか否かを決定する。この例では、図１８に、選択されたノードＥのもう１つのトランスファ・マッピング１８００が示されている。他のトランスファ・マッピングがある場合、デコード部５５４は、ブロック１３０６に戻り、追加のトランスファ・マッピングを選択する。たとえば、マッピング１８００が選択される。この例では、マッピング１８００には、カバーされていない子ノードがない。したがって、デコード部５５４は、ブロック１３０８を経由してブロック１３１２に進み、式３を使用してトランスファ・マッピング１８００のスコアを計算する。
【０１１６】
次に、デコード部５５４はブロック１３１４に進み、選択されたノードについて他のトランスファ・マッピングがあるか否かを決定する。この例では、図１９に、ノードＥをカバーするトランスファ・マッピング１９００が図示されている。この場合も、デコード部はブロック１３０６に戻る。この例では、トランスファ・マッピング１９００には、カバーされていない子ノードはない。したがって、デコード部５５４は、式３を使用してトランスファ・マッピング１９００のスコアを計算する。スコアを計算した後、デコード部５５４はブロック１３１４に進む。
【０１１７】
ステップ１３１４で、デコード部５５４が、それ以上マッピングがないと決定した場合、プロセスはステップ１３１６に進み、選択されたノードをカバーするトランスファ・マッピングを比較し、最高のスコアのトランスファ・マッピングを選択する。上記の例では、マッピング１７００、１８００、および１９００のスコアを比較し、最高のスコアのトランスファ・マッピングが選択される。この例では、最高のスコアのトランスファ・マッピングは、トランスファ・マッピング１７００であるものとする。デコード部５５４は、マッピングの先頭のノードと、最高スコアのマッピングのコンテクスト（ソース言語ＬＦ内でマッピングがそこから延びているノード）と、最高のスコアのマッピングのスコアと、各モデルの確率または最高スコアのマッピングの情報ソース・スコアとを記憶する。したがって、選択されたマッピングの、目的言語モデル確率と、チャネル・モデル確率と、ファティリティ・モデル確率と、サイズ・スコアと、ランク・スコアとがすべて記憶される。各確率または各モデルのスコアが記憶されるが、式８で求めたスコアを記憶することが最も重要であることは、当業者ならわかるはずである。
【０１１８】
選択されたマッピングのスコアが記憶された後、デコード部５５４はブロック１３１８に進み、選択されたノードより上位階層があるか否かを決定する。上記の例では、ノードＣがノードＥより上位にある。現在選択されているノードより上位の他の階層のノードがある場合、デコード部５５４は、ブロック１３２０で、当該ノードについて検討した最後のマッピングに戻る。上記の例では、図１６のマッピング１６００に戻る必要がある。
【０１１９】
ブロック１３２２で、デコード部５５４は、当該マッピングに、未検討のカバーされていない子ノードが他にあるか否かを決定する。検討すべきカバーされていない子ノードがまだ他にある場合、デコード部５５４はブロック１３１０に進み、カバーされていない子ノードを選択する。上記の例では、子ノードＦを選択する必要がある。次に、デコード部５５４は、ブロック１３０４に進み、当該コンテクストにおいて当該ノードの最良のマッピングが特定されたか否かを決定する。最良のマッピングがまだ決定していない場合、デコード部５５４は、ステップ１３０６で、選択された子ノードをカバーするトランスファ・マッピング（たとえば図２０のマッピング２０００）を選択する。この例では、トランスファ・マッピング２０００はまだスコアが付けられていない。ブロック１３０８で、デコード部５５４は、ノードＦには、カバーされていない子ノードがないと決定する。したがって、デコード部５５４はブロック１３１２に進み、式３を使用してノードＦのスコアを計算する。
【０１２０】
デコード部５５４はブロック１３１４に進み、ノードＦにトランスファ・マッピングがそれ以上あるか否かを決定する。この例では、ノードＦをカバーする他のトランスファ・マッピングはない。したがって、デコード部５５４は、トランスファ・マッピング２０００のスコアを記憶し、マッピング２００の各モデル確率または情報ソース・スコアと、トランスファ・マッピング２０００を評価した目的言語側コンテクストのｎ−ａ個のノードと、トランスファ・マッピング２０００の先頭ノードに対応する入力ノードと、トランスファ・マッピング２０００の合計スコアとを記憶する。
【０１２１】
この例では、ソース言語ＬＦ１４００のノードＦよりも上位の階層が存在する。したがって、デコード部５５４はブロック１３２０に進み、検討したノードＣの最後のマッピングに戻る。ブロック１３２２で、デコード部５５４は、ノードＣの選択されたマッピングには、カバーされていない子ノードがないと決定する。したがって、デコード部５５４はブロック１３１２に進み、トランスファ・マッピング１６００の合計スコアを計算する。
【０１２２】
選択されたマッピングに、カバーされていない子ノードがある場合は、それらのカバーされていない子ノードの最高得点マッピングのスコアを、選択されたマッピングのスコアと結合することによって、当該マッピングのスコアを決定する。たとえば、マッピング１７００とマッピング２０００のスコアを、マッピング１６００のスコアと結合して、ソース言語ＬＦにおけるノードＣより下位のマッピング全体の合計スコアを提供する。
【０１２３】
一実施形態では、マッピング・スコアの各構成要素を別々に結合する。したがって、マッピング１６００の合計目的言語モデル確率は、以下のようになる。
【０１２４】
【数２５】
2005285129.tif 000027
上式で、
【０１２５】
【数２６】
2005285129.tif 000028
【０１２６】
は、マッピング１７００の目的言語モデル確率であり、
【０１２７】
【数２７】
2005285129.tif 000029
【０１２８】
は、マッピング２０００の目的言語モデル確率であり、
【０１２９】
【数２８】
2005285129.tif 000030
【０１３０】
は、マッピング１６００の目的言語モデル確率である。
【０１３１】
同様に、マッピング１６００の合計チャネル・モデル確率は以下のようになり、
【０１３２】
【数２９】
2005285129.tif 000031
【０１３３】
マッピング１６００の合計ファティリティ・モデル確率は、以下のようになる。
【０１３４】
【数３０】
2005285129.tif 000032
【０１３５】
マッピング１６００の合計マッピング・サイズ・スコアは、以下のような、子マッピング・サイズ・スコアとマッピング１６００のみのマッピング・サイズ・スコアの平均である。
【０１３６】
【数３１】
2005285129.tif 000033
【０１３７】
合計マッピング・サイズ・スコアと同様に、マッピング１６００の合計ランク・スコアは、子ランク・スコアとマッピング１６００のみのランク・スコアとの平均であり、以下のように表される
【０１３８】
【数３２】
2005285129.tif 000034
【０１３９】
各構成要素の合計スコアを求めた後は、前掲の式８を使用してそれらのスコアを結合して、選択されたマッピングの単一のスコアとする。
【０１４０】
次に、デコード部５５４はブロック１３１４に進み、ノードＣに他のトランスファ・マッピングが存在するか否かを決定する。この例では、ノードＣには他のトランスファ・マッピングが存在せず、したがって、デコード部５５４はトランスファ・マッピング１６００を、最高スコア・マッピングを有するものとして選択し、マッピング１６００の合計スコアと、マッピング１６００のコンテクスト（ノードＡ）と、マッピング１６００の先頭ノード（ノードＣ）と、マッピング１６００の個別合計構成要素スコアとを記憶する。
【０１４１】
ブロック１３１８で、デコード部５５４は、ソース言語ＬＦ１４００においてノードＣより上位の階層が存在するか否かを決定する。この例では、ノードＡがノードＣより上位である。したがって、デコード部５５４は、ブロック１３２０に示すように、マッピングの次の上位階層に戻る。この例では、図１５のマッピング１５００に戻る必要がある。ブロック１３２２で、デコード部５５４は、選択されたマッピングが、検討を必要とするカバーされていない他の子ノードを持つか否かを決定する。この例では、カバーされていない他の子ノードはなく、したがって、デコード部５５４はブロック１３１２に進み、トランスファ・マッピング１５００の合計スコアを計算する。マッピング１６００と同様、トランスファ・マッピング１５００の合計スコアは、マッピング１６００のスコアをマッピング１５００のスコアと結合することによって形成される。
【０１４２】
次に、デコード部５５４はブロック１３１４に進み、ノードＡに他のトランスファ・マッピングが存在するか否かを決定する。この例では、トランスファ・マッピング２１００もノードＡをカバーする。その結果として、プロセスはステップ１３０６に戻り、トランスファ・マッピング２１００を選択する。
【０１４３】
ステップ１３０８でプロセスは、マッピング２１００が、カバーされていない子ノードを持つか否かを決定する。具体的には、ノードＥおよびノードＦがマッピング２１００によってカバーされていない。ステップ１３１０で、ノードＥが選択され、プロセスはステップ１３０４に戻り、上記でマッピング２１００を選択した場合の現行コンテクスト（この場合、＜ＰＲＥ＿ＲＯＯＴ、Ａ’、Ｃ’＞）においてノードＥのために、最良のマッピングが選択されたか否かを決定する。そんな最良のマッピングが選択される（マッピング１７００）。次に、この最良のマッピングとそのスコアが選択され、ステップ１３２０でプロセスはマッピング２１００に戻る。
【０１４４】
次に、プロセスは、検討すべきカバーされていない子ノードが他にあるか否かを決定する。マッピング２１００の場合、子ノードＦがまだ検討されておらず、ステップ１３１０で選択される。ステップ１３０４で、ノードＤのコンテクストにおけるノードＦの最良のマッピングが求められた（マッピング２０００）と決定する。次に、この最良マッピングが選択され、ステップ１３２０でプロセスはマッピング２１００に戻る。
【０１４５】
ステップ１３２２に戻ると、検討すべきカバーされていない他の子ノードはなく、マッピング１７００および２０００の記憶されているスコアと、マッピング２１００の個々のマッピング・スコアとを使用して、マッピング２１００のスコアが計算される。以上のように、マッピング・スコアの個々の構成要素が別々に結合される。
【０１４６】
ステップ１３１４で、他のトランスファ・マッピングは存在せず、したがって、デコード部５５４はブロック１３１６に進み、トランスファ・マッピング１５００を先頭とするトランスファ・マッピング構造と、トランスファ・マッピング２１００を先頭とするトランスファ・マッピング構造とのいずれかを、その２つのマッピング構造の各合計スコアに基づいて選択する。デコード部５５４は、最高スコアのトランスファ・マッピング構造の合計スコアを記憶し、ブロック１３１８に進む。ブロック１３１８で、デコード部は、ノードＡより上位の階層が存在するか否かを決定する。この例では、ノードＡはソース言語ＬＦ１４００の最上位ノードであり、したがって、デコード部５５４はデコードを終了し、ノードＡについて決定された最高スコアのトランスファ・マッピング構造に戻る。
【０１４７】
図１５から図２１に示す記憶された最高スコアのトランスファ・マッピングに基づいて、トランスファ部５２６は目的言語ＬＦを作成することができる。たとえば、トランスファ・マッピング１５００、１６００、１７００、および１９００が、最高スコア・トランスファ・マッピングとして選択され、したがって、目的言語翻訳についての最高確率を有する場合、これらは目的言語ＬＦを形成するために結合される。
【０１４８】
本発明では、統計モデルおよびその他のスコアリング技法などの情報ソースを使用して、ある意味構造の最良の翻訳を決定する。入力意味構造は、トランスファ・マッピングのセットに対して（一実施形態では）グリーディ検索アルゴリズムを使用して出力意味構造を生成ために、使用されている。しかし、グリーディ検索アルゴリズムは、トランスファ・マッピングの可能な組合せをすべて検査するわけではなく、単に、入力意味構造を完全にカバーするトランスファ・マッピングの最初のセットを選択するに過ぎない。また、統計モデルが、入力文字列が与えられた場合の最も可能性の高い出力文字列を予測するために、使用されている。しかし、文字列ベースのシステムで使用される統計的モデルは、要素が他の隣接要素またはほぼ隣接する要素に基づいて予測されることを仮定している。したがって、本発明は、意味構造の最良の翻訳を予測するために、統計的モデルを使用する。
【０１４９】
本発明の意味構造に適用した目的言語モデルは、出力単語列の構築に使用することができるが、意味構造に適用した目的言語モデルは、他の言語プログラムにも使用することができる。たとえば、他のシステムとしては、音声認識、光学式文字認識、手書き文字認識、情報抽出、文法チェックなどがある。
【０１５０】
本発明について、特定の実施形態を参照しながら説明したが、本発明の主旨および範囲から逸脱することなく、態様および詳細に変更を加えることができることが、当業者ならわかるであろう。
【図面の簡単な説明】
【０１５１】
【図１】本発明を実施することができる一般的コンピューティング環境を示すブロック図である。
【図２】本発明を実施することができるモバイル装置を示すブロック図である。
【図３】論理形式の一例を示す図である。
【図４】論理形式の一例を示す図である。
【図５】本発明の一実施形態による機械翻訳構造を示すブロック図である。
【図６】トランスファ・マッピングの目的言語側の目的言語論理形式の一例を示す図である。
【図７】入力論理形式の一例を示す図である。
【図８】トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図９】トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図１０】トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図１１】入力論理形式の一例を示す図である。
【図１２】トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図１３】本発明の一実施形態によるデコード・アルゴリズムを示すフローチャートである。
【図１４】図１３のフローチャートと共に使用可能なソース言語論理形式の一例を示す図である。
【図１５】図１３のフローチャートと共に使用可能な、トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図１６】図１３のフローチャートと共に使用可能な、トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図１７】図１３のフローチャートと共に使用可能な、トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図１８】図１３のフローチャートと共に使用可能な、トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図１９】図１３のフローチャートと共に使用可能な、トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図２０】図１３のフローチャートと共に使用可能な、トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【図２１】図１３のフローチャートと共に使用可能な、トランスファ・マッピング・データベースに格納されたトランスファ・マッピングの一例を示す図である。
【符号の説明】
【０１５２】
１００  コンピューティング・システム環境
１１０  コンピュータ
１２０  処理装置
１２１  システム・バス
１３０  システム・メモリ
１３４  オペレーティング・システム
１３５  アプリケーション・プログラム
１３６  その他のプログラム・モジュール
１３７  プログラム・データ
１４０  取外し不能不揮発性メモリ・インターフェース
１４１  ハードディスク・ドライブ
１４４  オペレーティング・システム
１４５  アプリケーション・プログラム
１４６  その他のプログラム・モジュール
１４７  プログラム・データ
１５０  取外し可能不揮発性メモリ・インターフェース
１５１  磁気ディスク・ドライブ
１５２  磁気ディスク
１５５  光ディスク・ドライブ
１５６  光ディスク
１６０  ユーザ入力インターフェース
１６１  ポインティング・デバイス
１６２  キーボード
１６３  マイクロフォン
１７０  ネットワーク・インターフェース
１７１  ローカル・エリア・ネットワーク
１７２  モデム
１７３  ワイド・エリア・ネットワーク
１８０  リモートコンピュータ
１８５  リモート・アプリケーション・プログラム
１９０  ビデオ・インターフェース
１９１  モニタ
１９５  出力周辺装置インターフェース
１９６  プリンタ
１９７  スピーカ
２００  モバイル装置
２０２  プロセッサ
２０４  メモリ
２０８  通信インターフェース
２１４  アプリケーション・プログラム
２１６  オブジェクト・ストア
３００、４００  依存グラフ（論理形式）
５００  機械翻訳システム
５０４  解析
５０６  解析
５０８  統計語彙連合学習
５１０  ＬＦアライメント
５１２  ＬＫＢ構築
５１４  二言語対訳辞書
５１８  トランスファ・マッピング・データベース
５２０  連合リスト
５２２  解析
５２４  検索
５２６  翻訳
５２８  生成
５３０  ソース言語センテンス
５３２  目的言語センテンス
５３４  ソース言語ＬＦ
５３６  目的言語ＬＦ
５３８  語対
５４２  ＬＦトランスファ・マッピング
５５０  ソース言語テキスト
５５２  ソース言語ＬＦ
５５４  デコード
５５６  目的言語ＬＦ
５５８  目的言語テキスト
６００  目的言語依存グラフ（論理形式）の例
７００  入力ＬＦ
８００、９００，１０００  トランスファ・マッピング
１１００  入力ＬＦ
１２００  トランスファ・マッピング
１４００  ソース言語ＬＦ
１５００、１６００，１７００，１８００，１９００，２０００，２１００  トランスファ・マッピング
【図１】
2005285129.tif 000035
【図２】
2005285129.tif 000036
【図３】
2005285129.tif 000037
【図４】
2005285129.tif 000038
【図５】
2005285129.tif 000039
【図６】
2005285129.tif 000040
【図７】
2005285129.tif 000041
【図８】
2005285129.tif 000042
【図９】
2005285129.tif 000043
【図１０】
2005285129.tif 000044
【図１１】
2005285129.tif 000045
【図１２】
2005285129.tif 000046
【図１３】
2005285129.tif 000047
【図１４】
2005285129.tif 000048
【図１５】
2005285129.tif 000049
【図１６】
2005285129.tif 000050
【図１７】
2005285129.tif 000051
【図１８】
2005285129.tif 000052
【図１９】
2005285129.tif 000053
【図２０】
2005285129.tif 000054
【図２１】
2005285129.tif 000055