(57)【要約】【課題】構文の依存関係のツリーレットを使用する機械翻訳システムを提供すること。【解決手段】本発明の一実施形態では、デコーダが、原言語入力として依存関係ツリーを受け取り、統計モデルのセットにアクセスし、統計モデルのセットから、対数線形のフレームワークで組み合わせられた出力が生成される。デコーダは、ツリーレット翻訳対のテーブルにもアクセスし、原言語の依存関係ツリー、ツリーレット翻訳対テーブルへのアクセス、および統計モデルの適用に基づいて、目標言語の依存関係ツリーを返す。【選択図】図１２
2014142975.tif 000002
【特許請求の範囲】
【請求項１】
目標言語の依存構造を生成するコンピュータシステムであって、前記コンピュータシステムに記憶されたコンピュータ可読命令が前記コンピュータシステムの処理装置によって実行されると、
原言語のトレーニングデータテキスト断片を表す原言語の依存構造中の語彙項目が、それに対応する、前記原言語のテキスト断片の翻訳であるトレーニングデータ目標言語テキスト断片の語彙項目と並置された並置済みの構造を得るように構成されたコーパス処理システムと、
前記原言語の依存構造の語彙項目から前記目標言語のテキスト断片の前記語彙項目に依存関係を投射して、前記目標言語の依存構造を得るように構成された依存関係投射コンポーネントと
を備え、
前記目標言語の依存構造は、目標言語の依存関係ツリーを含み、
前記依存関係投射コンポーネントは、前記目標言語の依存関係ツリー中で順序が正しくないノードを特定し、語彙項目が前記目標言語のテキスト断片に現われる順序と同じ順序である目標言語文字列をもたらす前記目標言語の依存関係ツリー中で最も低いレベルに前記特定されたノードを再結合することにより、前記目標言語の依存構造を再調整するように構成される、
ことを特徴とするシステム。
【請求項２】
それぞれが、原言語のテキスト断片とそれに対応する目標言語のテキスト断片とを含む、複数の対訳テキスト断片の対を有するトレーニングデータコーパス
をさらに備えることを特徴とする請求項１に記載のシステム。
【請求項３】
前記依存関係投射コンポーネントは、前記目標言語の依存構造が前記目標言語のテキスト断片を正しく表すかどうかを判定し、正しく表さない場合は、前記目標言語のテキスト断片を正しく表すように前記目標言語の依存構造を調整するように構成されることを特徴とする請求項１に記載のシステム。
【請求項４】
前記依存関係投射コンポーネントは、前記目標言語の依存構造を読み取って目標言語のテキスト文字列を生成し、前記目標言語のテキスト文字列中の前記語彙項目が、前記目標言語のテキスト断片に現われる順序と異なる順序であるかどうかを判定することにより、前記目標言語の依存構造が前記目標言語のテキスト断片を正しく表すかどうかを判定するように構成されることを特徴とする請求項３に記載のシステム。
【請求項５】
前記依存関係投射コンポーネントは、前記目標言語の依存構造から読み取られる前記目標言語のテキスト文字列の語彙項目が、前記目標言語のテキスト断片に現われる順序と同じ順序になるまで、前記目標言語の依存構造を配列し直すことにより、前記目標言語の依存構造を調整するように構成されることを特徴とする請求項４に記載のシステム。
【請求項６】
前記コーパス処理システムは、
前記原言語のテキスト断片を構文解析して、原言語の依存構造を得るように構成されたパーサと、
前記目標言語のテキスト断片を語彙項目に区分するように構成されたセグメンタと、
前記原言語の依存構造の語彙項目を前記目標言語のテキスト断片の語彙項目と並置するように構成された並置コンポーネントと
を備えることを特徴とする請求項１に記載のシステム。
【請求項７】
目標言語の依存構造を生成する方法であって、前記方法は、コンピュータに記憶されたコンピュータ可読命令が前記コンピュータの処理装置によって実行されることによって実施され、
それぞれが、原言語のテキスト断片とそれに対応する目標言語のテキスト断片とを含む、複数の対訳テキスト断片の対を有するトレーニングデータコーパスにアクセスするステップと、
原言語のテキスト断片に基づいて生成された原言語の依存構造中の語彙項目が、それに対応する目標言語のテキスト断片中の語彙項目と並置された並置済みの構造を得るステップと、
前記原言語の依存構造中の語彙項目から前記目標言語のテキスト断片の語彙項目に依存関係を投射して、前記目標言語の依存構造を得るステップと
を備え、
前記目標言語の依存構造は、目標言語の依存関係ツリーを含み、
前記依存関係投射コンポーネントは、前記目標言語の依存関係ツリー中で順序が正しくないノードを特定し、語彙項目が前記目標言語のテキスト断片に現われる順序と同じ順序である目標言語文字列をもたらす前記目標言語の依存関係ツリー中で最も低いレベルに前記特定されたノードを再結合することにより、前記目標言語の依存構造を再調整するように構成される、
ことを特徴とする方法。
【請求項８】
前記投射するステップは、
前記原言語の依存構造中の語彙項目が前記目標言語のテキスト断片の語彙項目と並置されない場合は、前記原言語の依存構造中の前記並置されない語彙項目から前記目標言語のテキスト断片に依存関係を投射しないことを含むことを特徴とする請求項７に記載の方法。
【請求項９】
前記原言語の依存構造の依存関係は、前記原言語の依存構造中の第１の原語彙項目と第２の原語彙項目との間にあり、前記第１および第２の原語彙項目は、それぞれ前記目標言語のテキスト断片の第１および第２の目標語彙項目と並置され、投射するステップは、
前記第１の原語彙項目と前記第２の原語彙項目との間の前記依存関係を前記第１の目標語彙項目と第２の目標語彙項目に割り当てることを含むことを特徴とする請求項７に記載の方法。
【請求項１０】
前記原言語の依存構造中の語彙項目は、前記目標言語のテキスト断片の複数の語彙項目と並置され、投射するステップは、
前記目標言語の依存構造中で前記複数の語彙項目の親ノードを特定するステップと、
前記目標言語のテキスト断片中の前記複数の語彙項目のうち一番右にある語彙項目を特定するステップと、
前記一番右にある語彙項目を前記親ノードからの依存要素として割り当てるステップと、
前記目標言語のテキスト断片中の前記複数の語彙項目の残りを前記一番右にある語彙項目からの依存要素として割り当てるステップと
を含むことを特徴とする請求項７に記載の方法。
【請求項１１】
前記目標言語のテキスト断片中の並置されない語彙項目は、前記原言語の依存構造中の語彙項目と並置されず、投射するステップは、
前記目標言語のテキスト断片中で前記並置されない語彙項目のすぐ隣に位置する語彙項目を特定するステップと、
前記並置されない語彙項目を前記特定された語彙項目からの依存要素として割り当てるステップと
を含むことを特徴とする請求項７に記載の方法。
【請求項１２】
特定するステップは、
前記目標言語のテキスト断片中の前記並置されない語彙項目の前後にある目標言語の語彙項目の集合の中で、前記目標言語の依存構造において最も低い１つの語彙項目を特定するステップと、
前記特定された語彙項目からの依存要素として前記並置されない語彙項目を割り当てるステップと
を含むことを特徴とする請求項１１に記載の方法。
【請求項１３】
前記原言語の依存構造中の複数の語彙項目が、前記目標言語のテキスト断片中の１つの語彙項目と並置され、投射するステップは、
前記原言語の依存構造中の複数の語彙項目の中で、前記原言語の依存構造において最も高い語彙項目を特定するステップと、
前記目標言語のテキスト断片中の前記１つの語彙項目に、前記原言語の依存構造中の前記複数の項目のうち前記特定された項目に関連付けられた依存関係を割り当てるステップと
を含むことを特徴とする請求項７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械翻訳に関する。より詳細には、本発明は、構文の依存関係のツリーレット（ｔｒｅｅｌｅｔ）を使用する機械翻訳システムに関する。
【背景技術】
【０００２】
機械翻訳は、原言語（ｓｏｕｒｃｅ  ｌａｎｇｕａｇｅ）の入力テキスト断片（ｉｎｐｕｔ  ｔｅｘｔ  ｆｒａｇｍｅｎｔ）を受け取り、コンピューティングデバイスの使用を通じて目標言語（ｔａｒｇｅｔ  ｌａｎｇｕａｇｅ）の対応するテキスト断片（ｔｅｘｔ  ｆｒａｇｍｅｎｔ）に自動的に変換する（ｔｒａｎｓｌａｔｉｎｇ）プロセスを伴う。機械翻訳は、通例、２つの異なる手法の１つを使用して試みられてきた。第１の手法は、知識工学に基づく手法であり、通例は、言語パーサと人手で作られた変換規則を使用する。商業的な翻訳システム（Ｓｙｓｔｒａｎなど）は、ほぼすべてがこのタイプである。第２の手法は、コーパスに動機付けられた手法であり、通例は、用例に基づく機械翻訳（ＥＢＭＴ）または統計的機械翻訳（ＳＭＴ）のいずれかである。しかし、現在の研究ではＳＭＴの方が有望であるように考えられ、そのため、この論考では、ＥＢＭＴではなく、主にＳＭＴに的を当てる。通例、変換に基づくシステムは、パーサを使用して言語情報を取り込むが、ＳＭＴシステムは、これを行わない。両方の手法には、長所と短所がある。
【０００３】
【非特許文献１】Vogel  et  al.  THE  CMU  STATISTICAL  MACHINE  TRANSLATION  SYSTEM,  Proceedings  of  the  MT  Summit,  (2003)
【非特許文献２】Och  et  al.,  A  SMORGASBORD  OF  FEATURES  FOR  STATISTICAL  MACHINE  TRANSLATION,  Proceedings  of  the  Joint  HLT/NAACL  Conference  (2004)
【非特許文献３】Wu,  STOCHASTIC  INVERSION  INDUCTION  GRAMMARS  AND  BILINGUAL  PARSING  OF  PARALLEL  CORPORA,  Computational  Linguistics,  23  (3):  377-403  (1997)
【非特許文献４】Wu  and  Wong,  MACHINE  TRANSLATION  WITH  A  STOCHASTIC  GRAMMATICAL  CHANNEL,  Proceedings  of  the  ACL  (1998)
【非特許文献５】Zens  and  Ney,  A  COMPARATIVE  STUDY  ON  REORDERING  CONSTRAINTS  AND  STATISTICAL  MACHINE  TRANSLATION,  Proceedings  of  the  ACL  (2003)
【非特許文献６】Zens  et  al.,  REORDERING  CONSTRAINTS  FOR  PHRASE-BASED  STATISTICAL  MACHINE  TRANSLATION,  Proceedings  of  COLING  (2004)
【非特許文献７】Melamed  and  Wang,  STATISTICAL  MACHINE  TRANSLATION  BY  PARSING,  Technical  Report  04-024  Proteus  Project  (2004)
【非特許文献８】Alashawi,  et  al.,  LEARNING  DEPENDENCY  TRANSLATION  MODELS  AS  COLLECTIONS  OF  FINITE-STAT  HEAD  TRANSDUCERS,  Computational  Linguistics,  26  (1):  45-60  (2000)
【非特許文献９】Ding  and  Palmer,  SYNCHRONOUS  DEPENDENCY  INSERTION  GRAMMARS:  A  GRAMMAR  FORMALISM  FOR  SYNTAX  BASED  STATISTICAL  MT,  in  COLLING  2004:  Workshop  on  Recent  Advances  in  Dependency  Grammars  (2004)
【非特許文献１０】Yamada  and  Knight,  A  SYNTAX-BASED  STATISTICAL  TRANSLATION  MODEL,  Proceedings  of  the  ACL  (2001)
【非特許文献１１】Lin,  A  PATH-BASED  TRANSFER  MODEL  FOR  MACHINE  TRANSLATION,  Proceedings  of  COLLING  (2004)
【非特許文献１２】Och  et  al.,  AN  EFFICIENT  A  *  SEARCH  ALGORITHM  FOR  STATISTICAL  MACHINE  TRANSLATION,  in  ACL  2001:  Data-Driven  Machine  Translation  Workshop,  Toulouse  France,  pp.  55-62  (July  2001)
【非特許文献１３】Och,  MINIMUM  ERROR  RATE  TRAINING  AND  STATISTICAL  MACHINE  TRANSLATION,  in  Proceedings  of  the  ACL  (2003)
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ＳＭＴシステムは、領域固有の術語と固定されたフレーズの翻訳を学習することにおいては良好に機能するが、単純な文法の一般化を捉えることには優れず、変換プロセス中にしばしば混乱が生じる。それに対し、変換に基づくシステムは、文法的に正しく、滑らかな翻訳（ｆｌｕｅｎｔ  ｔｒａｎｓｌａｔｉｏｎｓ）を生成することにはうまく行くことが多いが、開発するのに非常に時間がかかる。また、変換に基づくシステムは、ちょうどＳＭＴが成功する分野、すなわち領域の固有性でうまくいかないことが多い。
【０００５】
これら２つのタイプの機械翻訳システムの様々な側面を組み合わせて１つの混合型のシステムにする試みもなされている。しかし、そうした試みは、なお不利点がある。ここで、ＳＭＴの現在の技術水準と、構文とＳＭＴを組み合わせる従来技術の試みを簡単に概観したい。
【０００６】
統計的機械翻訳は、当初は、翻訳を、１つの単語に１回行われる独立した翻訳の決定の連続としてモデル化することを試みた。しかし、この問題の計算上の複雑性そのものが克服するのが難しい障害であり、単語間の統計モデルで局所的な文脈を捉えることは難しいことが分かった。そのため、結果的に作成されたシステムは、しばしばかなり低速で、中程度の品質の翻訳しか生成しなかった。しかし、最近では、統計に基づく機械翻訳は、フレーズ翻訳を行う諸技術の導入により新たな有望性を示している。フレーズ単位の統計的機械翻訳は、１つ１つの単語の翻訳を独立してモデル化することを試みる代わりに、単語のかたまりがどのようにともに変換されるかをモデル化することを試みる。これは、外国語学習の重要な直感的洞察、すなわち短い成句と一般的なフレーズは、滑らかさと忠実性両方のために特異性があると同時に重要であるという洞察を取り込む。
【０００７】
現在のフレーズ単位の統計的機械翻訳システムは、概念的には単純である。単語の並置から開始し、すべての連続する原単語と目標単語（表層文字列で連続している）が、可能なフレーズ翻訳の対または並置のテンプレートとして集められる。それらの対を集めて、１つの変換リポジトリを作る。そして、Vogel  et  al.  THE  CMU  STATISTICAL  MACHINE  TRANSLATION  SYSTEM,  Proceedings  of  the  MT  Summit,  (2003)（非特許文献１）に記載のものなどの最大尤度推定モデルを使用することにより、翻訳の確率を異なる各対に関連付ける。他の確率モデルも使用することができる。Ｖｏｇｅｌ（非特許文献１）に記載される特定の翻訳モデルは、少なくとも目標言語モデルと組み合わせて使用されて、従来のようなノイズのあるチャンネルモデルを形成する。単純な検索によって最もスコアの高い翻訳が見つけられる。すなわち、モノトーンデコーダが、原言語のフレーズの順序が保たれているものと想定し、ビタビ復号を使用して、変換格子（ｔｒａｎｓｌａｔｉｏｎ  ｌａｔｔｉｃｅ）を通る最良のパスを見つける。一部のシステムでは、少量のフレーズの並び替えが許可され、その場合は、フレーズの移動は、オフセットの点から見てモデル化される。
【０００８】
このタイプのシステムは、並び替えが許されない他のタイプのシステムを上回る改良であるが、このタイプのシステムで使用される並び替えのモデルは、言語学的一般化の点からは制限がある。例えば、英語を日本語に翻訳する場合は、英語の主語−動詞−目的語の節が、一般には日本語の主語−目的語−動詞の節になり、英語の後置修飾の前置詞句が日本語では前置修飾の前置詞句になる。上記のフレーズの並べ替えモデルは、英語とフランス語の場合より、英語と日本語の場合に並び替えが一般的であることは学習するかもしれないが、目的語が動詞の前に移動する可能性があるのに対して、主語は恐らく元の位置のままとなることは学習せず、また、前置詞句／後置詞句の移動に関する一般化もまったく学習しない。代わりに、従来技術によるフレーズに基づくデコーダは、機械的に記憶されたフレーズと、滑らかさを目指す目標言語モデルの偏りに支配されて動作し、必ずしも正確さに支配されて動作するのではない。
【０００９】
また、上述のように、従来技術のフレーズ統計機械翻訳システムは、現在は、連続した句に限定される。つまり、従来技術のシステムでは、原言語と目標言語両方の表層文字列でフレーズが連続していることになる。この制約は、「ｎｏｔ」→「ｎｅ．．．ｐａｓ」のような単純な事さえ学習されることができないことを意味する。トレーニングのために極めて大きなデータセットを使用すると、単に幅広い確率を記憶することにより、これを部分的に補うことができる。しかし、トレーニングデータセットのサイズの実際的な制約を考えると、あまり一般的でない連続しない「フレーズ」は、学習することが不可能に近い。
【００１０】
これらの理由および他の理由から、一部の研究者は、統計に基づく機械翻訳プロセスに構文情報を組み込むことを試みている。これを行う非常に簡単な方法の１つは、再ランク付けによるものである。すなわち、基本となるＳＭＴシステムを使用して翻訳のＮ−ベストリストを生成し、可能性としては構文モデルを含むモデルのグループを使用して出力を再ランク付けする。そのようなシステムの１つが、Och  et  al.,  A  SMORGASBORD  OF  FEATURES  FOR  STATISTICAL  MACHINE  TRANSLATION,  Proceedings  of  the  Joint  HLT/NAACL  Conference  (2004)（非特許文献２）に記載されている。１６０００個の変換からなるＮ−ベストリストでさえも、２０語からなる文の翻訳の可能性のごくわずかしか捉えることができず、事後に行われる再ランク付けは、基本デコーダ中でその検索空間の大きな部分を増大させる、あるいは刈り込む機会を構文モデルに与えないので、これは、構文情報を取り込むかなり弱い手段であることが分かっている。
【００１１】
別の従来技術の試みでは、倒置変換文法（ＩＴＧ）を使用して、構成要素の概念を統計機械翻訳に組み込むことが試みられる。基本的な概念は、並置と翻訳を原言語と目標言語の同時に行われる構文解析と見なすものである。２つのタイプの二分岐規則が許可される。原言語と目標言語の構成要素が同じ順序で生成されるか、または、原言語の構成要素と目標言語の構成要素が逆の順序で生成される。そのようなシステムのいくつかが、Wu,  STOCHASTIC  INVERSION  INDUCTION  GRAMMARS  AND  BILINGUAL  PARSING  OF  PARALLEL  CORPORA,  Computational  Linguistics,  23  (3):  377-403  (1997)（非特許文献３）；Wu  and  Wong,  MACHINE  TRANSLATION  WITH  A  STOCHASTIC  GRAMMATICAL  CHANNEL,  Proceedings  of  the  ACL  (1998)（非特許文献４）；Zens  and  Ney,  A  COMPARATIVE  STUDY  ON  REORDERING  CONSTRAINTS  AND  STATISTICAL  MACHINE  TRANSLATION,  Proceedings  of  the  ACL  (2003)（日特許文献５）；Zens  et  al.,  REORDERING  CONSTRAINTS  FOR  PHRASE-BASED  STATISTICAL  MACHINE  TRANSLATION,  Proceedings  of  COLING  (2004)（非特許文献６）に記載されている。これらの文法は、理論的には興味深い。しかし、これらのタイプの手法を計算的に効率的にするためには、厳格な制限を加え、単純化するためのいくつかの前提がなされなければならない。これは、そのようなシステムのモデル化力を著しく落とす。また、このタイプの翻訳モデルは、一度に１つの語彙項目のレベル（すなわち単語レベル）でしか機能せず、フレーズの組合せは直接モデル化されない。これは、かなり深刻な制約である。実証されたこれらのシステムの翻訳品質は、最良のＳＭＴシステムに劣る。
【００１２】
より新しい理論的手法が提示されており、これは、複数テキストの文法と一般化された複数テキストの文法を使用し、非連続的な翻訳を許可し、並び替えの制約を緩くすることにより、倒置変換（ｉｎｖｅｒｓｉｏｎ  ｔｒａｎｓｄｕｃｔｉｏｎ）の文法手法を一般化しようとするものである。この理論は提案されているものの、パラメータ推定については詳細が与えられず、このフレームワークの復号がどのようにフレーズ情報を取り込むのかについての説明がなく、実際のシステムは構築されておらず、翻訳品質の数値も提示されていない。この理論は、Melamed  and  Wang,  STATISTICAL  MACHINE  TRANSLATION  BY  PARSING,  Technical  Report  04-024  Proteus  Project  (2004)（非特許文献７）により詳細に記載されている。
【００１３】
倒置変換文法に関連する別の従来技術の手法は、ヘッドトランスデューサを使用して、原言語の依存性ツリーの各レベルに独立して適用されるトランスデューサの集まりを使用して、原文を構文解析し、同時に目標言語の依存性ツリーを変換することにより、翻訳を生成するものである。このトランスデューサは、範囲に制約がある。このトランスデューサは、非常に局所的な文脈のみに依拠し、最終的な結果は、基本的に、単語に基づく（フレーズに基づくのに対して）デコーダになる。トランスデューサ導入手法は、データの少なさの問題によっても複雑化する可能性がある。翻訳のモデル化をいくつかの異なる構成要素（語彙選択、順序付けなど）に分ける代わりに、１つのみのトランスデューサがトレーニングされる。そのようなシステムの１つが、Alashawi,  et  al.,  LEARNING  DEPENDENCY  TRANSLATION  MODELS  AS  COLLECTIONS  OF  FINITE-STAT  HEAD  TRANSDUCERS,  Computational  Linguistics,  26  (1):  45-60  (2000)に記載されている。
【００１４】
依存関係のトランスデューサと複数テキストの文法の交わる領域で、本流から外れた系統の研究が形成される。この系統の研究は、同期した依存挿入文法を扱うものであり、Ding  and  Palmer,  SYNCHRONOUS  DEPENDENCY  INSERTION  GRAMMARS:  A  GRAMMAR  FORMALISM  FOR  SYNTAX  BASED  STATISTICAL  MT,  in  COLLING  2004:  Workshop  on  Recent  Advances  in  Dependency  Grammars  (2004)（非特許文献９）により詳細に記載されている。
【００１５】
さらに別の従来技術の試みでは、ＳＭＴシステムの滑らかさに伴う問題を改善するために、目標言語でパーサが用いられる。トレーニングデータ中でパーサを用いることにより、目標言語のツリーを原言語の文字列に変換する操作の集合の確率を学習することができる。それらの操作をツリーに基づく言語モデルと組み合わせて、ノイズのあるチャンネル翻訳検索を作り出すことができる。そのようなシステムの１つがYamada  and  Knight,  A  SYNTAX-BASED  STATISTICAL  TRANSLATION  MODEL,  Proceedings  of  the  ACL  (2001)（非特許文献１０）に記載されている。このタイプのシステムは、滑らかさにはいくらかのプラスの影響を有するが、構文によらないＳＭＴシステムと比べると、全体的な翻訳品質は改良しない。
【００１６】
翻訳で依存関係情報を用いる別の従来技術の手法は、依存関係ツリーのパスを介して翻訳するものである。そのようなシステムの１つがLin,  A  PATH-BASED  TRANSFER  MODEL  FOR  MACHINE  TRANSLATION,  Proceedings  of  COLLING  (2004)（非特許文献１１）に記載されている。これは、翻訳を試みる前に独立した依存関係パーサを原言語文に適用する唯一の従来技術システムであると思われる。このタイプのシステムは、より多くの記憶されたパターン（フレーズＳＭＴのように）を従属関係の分析と組み合わせて取り込むように思われるが、このシステムの統計的なモデル化は、極めて制約がある。直接の最大尤度推定翻訳モデルのみが使用される。そのため、デコードのプロセスは、例えば目標言語モデルを使用して滑らかさに対して忠実性のバランスをとることをせず、また、ＳＭＴシステムにその威力を与える多数の他の統計モデルを活かさない。パスは、任意の順序で組み合わせられる。そして、この手法で課される、従属性ツリーから抽出される「フレーズ」は線形のパスでなければならないという制約は、非常に不利である。これは、非線形に分岐する構成の有望なツリーレット翻訳を失うだけでなく、表層文字列では連続しているが、依存関係ツリーで非線形の一定の一般的なフレーズをモデル化することができない。このため、結果的に得られる翻訳は、依存関係のパスの使用から多少は益を得ているように思われるが、手法全体としては、フレーズＳＭＴデコーダの翻訳品質には及ばない。
【００１７】
上述の論述から、構文による統計機械翻訳の手法の大多数は、フレーズ単位の統計機械翻訳ではなく単語間の翻訳に着目しており、また、翻訳の前に別個のパーサを用いずに、構文解析（ｐａｒｓｉｎｇ）と翻訳（ｔｒａｎｓｌａｔｉｏｎ）を連係した問題として扱っていることが理解できよう。別個のパーサを使用する唯一の手法は、範囲が非常に限定されており、パスを任意の順序で組み合わせ、可能な翻訳品質を厳しく制限する統計モデルの組合せを用いていない。
【課題を解決するための手段】
【００１８】
現在の技術水準を考えると、文脈自由の構成要素分析（ｃｏｎｔｅｘｔ−ｆｒｅｅ  ｃｏｎｓｔｉｔｕｅｎｃｙ  ａｎａｌｙｓｉｓ）（依存関係の分析に対して）が、統計機械翻訳システムを開発する際の妥当な開始点であるように思われる。しかし、これは、機械翻訳における構文の最も効果的な表現ではないと考えられる。構成要素の分析と異なり、依存関係の分析は、意味的により関連する要素をともにまとめる傾向がある。例えば、動詞は、目的語だけでなく、そのすべての文法項と直接連続するようになる。また、依存関係ツリーは、非常に語彙化された操作（ｈｅａｖｉｌｙ  ｌｅｘｉｃａｌｉｚｅｄ  ｏｐｅｒａｔｉｏｎｓ）に合うように適合され、これは、フレーズ単位の統計機械翻訳でかなり有効であることが分かっている。
【００１９】
本発明の一実施形態では、デコーダが、原言語入力である依存関係ツリーを受け取り、統計モデルのセットにアクセスし、統計モデルのセットから、対数線形の統計フレームワークで組み合わせられた出力が生成される。デコーダは、ツリーレット翻訳対のテーブルにもアクセスし、原言語の依存関係ツリー、ツリーレット翻訳対テーブルへのアクセス、および統計モデルの適用に基づいて、目標言語の依存関係ツリーを返す。
一実施形態では、デコーダは、動的プログラミングを使用して実施される。別の実施形態では、デコーダは、Ａ＊検索を使用して実施される。
【図面の簡単な説明】
【００２０】
【図１】本発明を使用することができる例示的環境のブロック図である。
【図２】本発明の一実施形態によるトレーニングシステムのブロック図である。
【図３】図２に示すシステムの全動作を説明する流れ図である。
【図４Ａ】文の対の依存構造と単語の並置の生成を示す図である。
【図４Ｂ】文の対の依存構造と単語の並置の生成を示す図である。
【図４Ｃ】文の対の依存構造と単語の並置の生成を示す図である。
【図４Ｄ】文の対の依存構造と単語の並置の生成を示す図である。
【図５Ａ】文の対の単語の並置と原依存構造を示す図である。
【図５Ｂ】文の対の単語の並置と原依存構造を示す図である。
【図６】原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を説明する流れ図である。
【図６Ａ】原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す構造の図である。
【図６Ｂ】原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す構造の図である。
【図６Ｃ】原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す構造の図である。
【図６Ｄ】原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す構造の図である。
【図６Ｅ】原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す構造の図である。
【図６Ｆ】目標言語の依存関係ツリーのノードがどのように再結合されるかを説明する流れ図である。
【図７】並置されない目標単語への依存関係の割り当てを説明する流れ図である。
【図７Ａ】目標文の単語が並置されない場合の、原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す図である。
【図７Ｂ】目標文の単語が並置されない場合の、原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す図である。
【図７Ｃ】目標文の単語が並置されない場合の、原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す図である。
【図７Ｄ】目標文の単語が並置されない場合の、原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す図である。
【図７Ｅ】目標文中の１つの単語が並置されない場合の、原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す図である。
【図７Ｆ】目標文の単語が並置されない場合の、原言語の依存関係ツリーから目標言語の依存関係ツリーへの依存関係の投射を示す図である。
【図８Ａ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｂ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｃ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｄ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｅ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｆ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｇ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｈ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｉ】原言語入力の複数の単語が目標言語入力の１つの単語と並置される場合の、原言語ツリーから目標言語ツリーへの依存関係の投射と、ツリーレット翻訳対の抽出を表す図である。
【図８Ｊ】ツリーレット翻訳対の抽出を説明する流れ図である。
【図９Ａ】目標言語文の複数の単語が原言語文の１つの単語と並置される場合の、文の対からのツリーレット翻訳対の抽出を示す図である。
【図９Ｂ】目標言語文の複数の単語が原言語文の１つの単語と並置される場合の、文の対からのツリーレット翻訳対の抽出を示す図である。
【図９Ｃ】目標言語文の複数の単語が原言語文の１つの単語と並置される場合の、文の対からのツリーレット翻訳対の抽出を示す図である。
【図１０Ａ】本発明の一実施形態によりどのように順序モデルをトレーニングするかを説明する図である。
【図１０Ｂ】本発明の一実施形態によりどのように順序モデルをトレーニングするかを説明する図である。
【図１０Ｃ】本発明の一実施形態によりどのように順序モデルをトレーニングするかを説明する図である。
【図１０Ｄ】本発明の一実施形態によりどのように順序モデルをトレーニングするかを説明する図である。
【図１１Ａ】順序モデルの第２の実施形態の動作を説明する図である。
【図１１Ｂ】順序モデルの第２の実施形態の動作を説明する図である。
【図１１Ｃ】順序モデルの第２の実施形態の動作を説明する図である。
【図１２】本発明の一実施形態による実行時環境を表すブロック図である。
【図１３】図１２に示す実行時環境の全体的な動作を説明する流れ図である。
【図１４Ａ】本発明の一実施形態による動的プログラミングデコーダの動作を説明する図である。
【図１４Ｂ】本発明の一実施形態による動的プログラミングデコーダの動作を説明する図である。
【図１４Ｃ】本発明の一実施形態による動的プログラミングデコーダの動作を説明する図である。
【図１４Ｄ】本発明の一実施形態によるデコーダの動作を説明する流れ図である。
【図１５】本発明の一実施形態によりどのようにモデルの重みがトレーニングされるかを説明する図である。
【発明を実施するための形態】
【００２１】
本発明は、構文の依存関係ツリーを使用した機械翻訳を扱う。しかし、本発明を詳細に説明する前に、本発明を使用することができる例示的な一環境について述べる。
【００２２】
図１に、本発明が実施されることが可能な適切なコンピューティングシステム環境１００の例を示す。コンピューティングシステム環境１００は、適切なコンピューティング環境の一例に過ぎず、本発明の使用または機能の範囲についての限定を示唆するものではない。また、コンピューティング環境１００は、例示的動作環境１００に図示される構成要素の１つまたは組合せに関する依存性または必要性を有するものとも解釈すべきでない。
【００２３】
本発明は、多数の他の汎用または特殊目的のコンピューティングシステム環境または構成で動作する。本発明に使用するのに適する可能性があるよく知られるコンピューティングシステム、環境、および／または構成の例には、これらに限定しないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサを利用したシステム、セットトップボックス、プログラム可能な家電製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスを含む分散コンピューティング環境などがある。
【００２４】
本発明は、コンピュータによって実行されるプログラムモジュールなどのコンピュータ実行可能命令の一般的なコンテキストで説明することができる。一般に、プログラムモジュールには、特定のタスクを行うか、特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造（ｄａｔａ  ｓｔｒｕｃｔｕｒｅｓ）などが含まれる。本発明は、通信ネットワークを通じて結ばれた遠隔の処理デバイスによってタスクが行われる分散コンピューティング環境でも実施することができる。分散コンピューティング環境では、プログラムモジュールは、メモリ記憶装置を含むローカルおよびリモート両方のコンピュータ記憶媒体に置くことができる。
【００２５】
図１を参照すると、本発明を実施する例示的システムは、コンピュータ１１０の形態の汎用コンピューティングデバイスを含む。コンピュータ１１０の構成要素は、これらに限定しないが、処理装置１２０、システムメモリ１３０、およびシステムメモリを含む各種のシステム構成要素を処理装置１２０に結合するシステムバス１２１を含むことができる。システムバス１２１は、各種のバスアーキテクチャを使用した、メモリバスあるいはメモリコントローラ、ペリフェラルバス、およびローカルバスを含む数種のバス構造のいずれでもよい。限定ではなく例として、そのようなアーキテクチャには、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、およびメザニンバスとも称されるＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスがある。
【００２６】
コンピュータ１１０は、通例、各種のコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ１１０からのアクセスが可能な利用可能媒体でよく、揮発性および不揮発性の媒体、取り外し可能および取り外し不能の媒体を含む。限定ではなく例として、コンピュータ可読媒体は、コンピュータ記憶媒体と通信媒体からなることができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、あるいは他のデータなどの情報を記憶するための方法または技術で実施された揮発性および不揮発性、取り外し可能および取り外し不能の媒体が含まれる。コンピュータ記憶媒体には、これらに限定しないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、または他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）、または他の光ディスク記憶、磁気カセット、磁気テープ、磁気ディスク記憶、または他の磁気記憶装置、あるいは、所望の情報を記憶するために使用することができ、コンピュータ１１０によるアクセスが可能な他の媒体が含まれる。通信媒体は、通例、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを、搬送波などの変調データ信号あるいは他の移送機構として実施し、情報伝達媒体を含む。用語「変調されたデータ信号」とは、信号中に情報を符号化するような方式で特性の１つまたは複数を設定または変化させた信号を意味する。限定ではなく例として、通信媒体には、有線ネットワークや直接配線接続などの有線媒体と、音波、ＲＦ、赤外線、他の無線媒体などの無線媒体が含まれる。上記の媒体の組合せもコンピュータ可読媒体の範囲に含める。
【００２７】
システムメモリ１３０は、読出し専用メモリ（ＲＯＭ）１３１とランダムアクセスメモリ（ＲＡＭ）１３２などの揮発性メモリおよび／または不揮発性メモリの形態のコンピュータ記憶媒体を含む。起動時などにコンピュータ１１０内の要素間の情報転送を助ける基本ルーチンを含む基本入出力システム１３３（ＢＩＯＳ）は、通例、ＲＯＭ１３１に記憶される。ＲＡＭ１３２は、通例、処理装置１２０から即座にアクセス可能な、かつ／または処理装置１２０によって現在操作中のデータおよび／またはプログラムモジュールを保持する。限定ではなく例として、図１には、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７を示す。
【００２８】
コンピュータ１１０は、他の取り外し可能／取り外し不能、揮発性／不揮発性のコンピュータ記憶媒体も含むことができる。単なる例として、図１には、取り外し不能、不揮発性の磁気媒体の読み書きを行うハードディスクドライブ１４１、取り外し可能、不揮発性の磁気ディスク１５２の読み書きを行う磁気ディスクドライブ１５１、およびＣＤ−ＲＯＭや他の光学媒体などの取り外し可能、不揮発性の光ディスク１５６の読み書きを行う光ディスクドライブ１５５を示す。例示的動作環境で使用することができる他の取り外し可能／取り外し不能、揮発性／不揮発性のコンピュータ記憶媒体には、これらに限定しないが、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、固体素子ＲＡＭ、固体素子ＲＯＭなどがある。ハードディスクドライブ１４１は、通例、インターフェース１４０などの取り外し不能メモリインターフェースを通じてシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は、通例、インターフェース１５０などの取り外し可能メモリインターフェースでシステムバス１２１に接続される。
【００２９】
上述し、図１に示されるドライブとそれに関連付けられたコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および他のデータの記憶をコンピュータ１１０に提供する。図１では、例えば、ハードディスクドライブ１４１に、オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７が記憶されている。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７と同じであっても異なってもよいことに留意されたい。ここでは、それらが少なくとも異なるコピーであることを表すために、オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７には異なる参照符号を付している。
【００３０】
ユーザは、キーボード１６２、マイクロフォン１６３、およびマウス、トラックボール、タッチパッドなどのポインティングデバイス１６１などの入力装置を通じてコンピュータ１１０にコマンドと情報を入力することができる。他の入力装置（図示せず）としては、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナなどが挙げられる。上記およびその他の入力装置は、多くの場合、システムバスに結合されたユーザ入力インターフェース１６０を通じて処理装置１２０に接続されるが、パラレルポート、ゲームポート、ユニバーサルシリアルバス（ＵＳＢ）などの他のインターフェースおよびバス構造で接続してもよい。モニタ１９１または他のタイプの表示装置も、ビデオインターフェース１９０などのインターフェースを介してシステムバス１２１に接続される。モニタに加えて、コンピュータは、スピーカ１９７やプリンタ１９６などの他の周辺出力装置も含むことができ、それらの装置は、出力周辺インターフェース１９５を通じて接続することができる。
【００３１】
コンピュータ１１０は、リモートコンピュータ１８０などの１つまたは複数のリモートコンピュータとの論理接続を使用するネットワーク環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、ハンドヘルドデバイス、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、あるいは他の一般的なネットワークノードであり、通例は、コンピュータ１１０に関して上述した要素の多くまたはすべてを含む。図１に示される論理接続は、ローカルエリアネットワーク（ＬＡＮ）１７１とワイドエリアネットワーク（ＷＡＮ）１７３を含むが、他のネットワークを含むことも可能である。このようなネットワーク環境は、オフィス、企業内のコンピュータネットワーク、イントラネット、およびインターネットで一般的である。
【００３２】
ＬＡＮネットワーク環境で使用される場合、コンピュータ１１０は、ネットワークインターフェースあるいはアダプタ１７０を通じてＬＡＮ１７１に接続される。ＷＡＮネットワーク環境で使用される場合、コンピュータ１１０は、通例、インターネットなどのＷＡＮ１７３を通じて通信を確立するためのモデム１７２または他の手段を含む。モデム１７２は、内蔵型でも外付け型でもよく、ユーザ入力インターフェース１６０あるいは他の適切な機構を介してシステムバス１２１に接続することができる。ネットワーク環境では、コンピュータ１１０との関連で図示されるプログラムモジュールまたはその一部は、遠隔のメモリ記憶装置に記憶することができる。限定ではなく例として、図１では、リモートアプリケーションプログラム１８５がリモートコンピュータ１８０にある。図のネットワーク接続は例示的なものであり、コンピュータ間に通信リンクを確立する他の手段を使用してよいことは理解されよう。
【００３３】
図２は、トレーニングシステム２００を示すブロック図である。図で、トレーニングシステム２００は、文並置された（ｓｅｎｔｅｎｃｅ−ａｌｉｇｎｅｄ）大きな対訳コーパス（ｐａｒａｌｌｅｌ  ｃｏｒｐｕｓ）２０２である入力を受け取る。また、トレーニングシステム２００は、ツリーレット翻訳対データベース（ｔｒｅｅｌｅｔ  ｔｒａｎｓｌａｔｉｏｎ  ｐａｉｒ  ｄａｔａｂａｓｅ）２０４、順序モデル（ｏｒｄｅｒ  ｍｏｄｅｌ）２０６、一致モデル（ａｇｒｅｅｍｅｎｔ  ｍｏｄｅｌ）２０８、翻訳確率テーブル（ｔｒａｎｓｌａｔｉｏｎ  ｐｒｏｂａｂｉｌｉｔｙ  ｔａｂｌｅ）２１０、および目標言語モデル（ｔａｒｇｅｔ  ｌａｎｇｕａｇｅ  ｍｏｄｅｌ）２１２を含む出力を提供する。システム２００は、原言語依存関係構文解析コンポーネント（ｓｏｕｒｃｅ  ｌａｎｇｕａｇｅ  ｄｅｐｅｎｄｅｎｃｙ  ｐａｒｓｅｒ  ｃｏｍｐｏｎｅｎｔ）２１４、目標言語語分割コンポーネント（ｔａｒｇｅｔ  ｌａｎｇｕａｇｅ  ｗｏｒｄ  ｓｅｇｍｅｎｔａｔｉｏｎ  ｃｏｍｐｏｎｅｎｔ）２１６、教師なし語並置コンポーネント（ｕｎｓｕｐｅｒｖｉｓｅｄ  ｗｏｒｄ  ａｌｉｇｎｍｅｎｔ  ｃｏｍｐｏｎｅｎｔ）２１８、依存関係ツリー投射コンポーネント（ｄｅｐｅｎｄｅｎｃｙ  ｔｒｅｅ  ｐｒｏｊｅｃｔｉｏｎ  ｃｏｍｐｏｎｅｎｔ）２２０、目標言語モデルトレーニングコンポーネント（ｔａｒｇｅｔ  ｌａｎｇｕａｇｅ  ｍｏｄｅｌ  ｔｒａｉｎｉｎｇ  ｃｏｍｐｏｎｅｎｔ）２２２、ツリーレット対エクストラクタ（ｔｒｅｅｌｅｔ  ｐａｉｒ  ｅｘｔｒａｃｔｏｒ）２２４、順序モデルトレーニングコンポーネント（ｏｒｄｅｒ  ｍｏｄｅｌ  ｔｒａｉｎｉｎｇ  ｃｏｍｐｏｎｅｎｔ）２２６、および一致モデルトレーニングコンポーネント（ａｇｒｅｅｍｅｎｔ  ｍｏｄｅｌ  ｔｒａｉｎｉｎｇ  ｃｏｍｐｏｎｅｎｔ）２２８を含む。
【００３４】
図３は、図２に示すシステム２００の全動作を説明する流れ図である。初めに、システム２００は、文並置された対訳コーパス２０２にアクセスする。これを図３のブロック２５０として示す。コーパス２０２は、例示的に、大きな、対訳データコーパスである。すなわち、コーパス２０２は、互いの翻訳である複数の文の対を含み、一方の文が第１の言語（ここで原言語と称する）で、もう一方の文が第２の文（ここでは目標言語と称する）になっている。
【００３５】
依存関係構文解析コンポーネント２１４は、コーパス２０２にアクセスし、原言語の各文に依存関係の解析を行う。これを図３のブロック２５２で表す。依存関係構文解析コンポーネント２１４は、例示的に、テキスト断片を入力として受け取り、複数の動作を行う市販の依存関係パーサである。初めに、構文解析コンポーネント２１４は、入力されたテキスト断片中の単語を識別する（つまり入力文を単語に区分する）。これを行う際に、パーサは、任意で、複数の単語からなる入力を１つの単語として扱ってよく（Ｗｈｉｔｅ  Ｈｏｕｓｅなど）、また語を分けてもよい。例えば、パーサは、語「ｉｎｔｅｒｅｓｔ−ｂｅａｒｉｎｇ」を、ハイフン自体を単語として３つの単語に分けることができる。
【００３６】
いずれの場合も、原入力がパーサ２１４によって区分されると、各テキスト断片の主要語が特定される。そして、文のすべての単語の間の依存関係も特定される。したがって、依存関係構文解析コンポーネント２１４の出力２６２は、主要語が特定され、単語間の依存関係が表された単語の集合となる。
【００３７】
これの一表現を図４Ａに示す。原言語入力（あるいは表層文字列）は、「Ｔｈｅ  ｏｌｄ  ｍａｎ  ａｔｅ」である。図４Ａは、この表層文字列は単に矢印を含み、単語「ａｔｅ」への縦の下向きの矢印は、「ａｔｅ」をテキスト断片中の主要語として識別していることを表す。単語「ｍａｎ」から単語「ａｔｅ」への矢印は、単語「ｍａｎ」が単語「ａｔｅ」に前置修飾語として依存することを表す。同様に、２つの単語「ｔｈｅ」および「ｏｌｄ」から単語「ｍａｎ」への矢印は、それら２つの単語が単語「ｍａｎ」に従属していることを意味する。
【００３８】
依存関係構文解析コンポーネント２１４から出力される単語と依存関係の別の表現を図４Ｂに示す。図４Ｂに示す構造を依存関係ツリーと称し、各単語がツリーのノードを構成し、一番上のノードが主要語すなわちツリーのルートを構成する。ツリー中の２つのレベルのノードをつなぐ線が左下に傾いている場合（ノード「ａｔｅ」をノード「ｍａｎ」と結ぶ線など）、これは、ツリー中で下にある語（この場合は「ｍａｎ」）が、ツリーで上にある単語（この場合は「ａｔｅ」）の前置修飾語であることを意味する。したがって、図４Ｂの依存関係ツリーは、「ｍａｎ」が単語「ａｔｅ」の前置修飾語であり、２つの単語「ｔｈｅ」と「ｏｌｄ」は、ともに単語「ｍａｎ」の前置修飾語であることを示す。逆に、右下に傾いた線は、その主要語の後置修飾語である単語を示す。
【００３９】
目標言語分割コンポーネント２１６も、例示的に、目標言語の入力文を単語の連続に区分する、任意の市販の単語セグメンタ（ｓｅｇｍｅｎｔｅｒ）である。例えば、図４Ａおよび４Ｂに示される、「ｔｈｅ  ｏｌｄ  ｍａｎ  ａｔｅ」と並置された目標言語の文が、ドイツ語の文「ｄｅｒ  ａｌｔｅ  ｍａｎｎ  ｉｓｓｔ」であると想定する。この例では、コンポーネント２１６は、目標言語の文を図４Ｃに示す単語に分割する。したがって、目標言語語分割コンポーネント２１６の出力は、単に、並置された文の対の目標文部分の単語のリストとなる。目標言語の入力に単語の区分（ｗｏｒｄ  ｓｅｇｍｅｎｔａｔｉｏｎ）を行うことを図３のブロック２５４に示す。（単語を区切るスペースを使用しない中国語のような言語では、単語の区分作業は、英語やドイツ語などの言語よりもはるかに複雑である。）
原言語の依存関係の構文解析が生成され、目標言語の単語の区分が行われると、原言語の依存関係構文解析を目標言語の語分割の隣に配置して、図２の単語に区分された対訳コーパス２５６を形成する。したがって、図４Ａまたは４Ｂの表現の１つが、図４Ｃに示す表現に関連付けられる。
【００４０】
次いで、教師なし語並置コンポーネント２１８が、まず、並置され、単語に区分された、対訳コーパス２５６の単語間の対応関係を見つける。語並置コンポーネント２１８は、例示的に、単語に区分されたバージョンの目標言語コーパス２５６と、単語に区分されたバージョンの原言語コーパス２５６の単語間の対応関係を見つける市販の語並置コンポーネントである。この対応関係は、例えば、目標言語の並置された部分が、その部分が並置された原言語部分の翻訳であるという判断を表す。一実施形態では、教師なし語並置コンポーネントは、区分されたバージョンの原言語コーパスと目標言語コーパスのみを入力として使用する。別の実施形態では、教師なし語並置コンポーネントは、原言語の構文解析それぞれについての原言語の依存関係ツリーも使用する。
【００４１】
一実施形態では、単語に区分された原言語の文と単語に区分された目標言語の文の単語の並置は、次の要領でグラフとして表される。原言語の別個の単語１つ１つをグラフの頂点とし、目標言語の別個の単語１つ１つをグラフ中の別個の頂点とする。原単語と目標単語との対応関係を表す辺の集合がある。各辺は、原言語の単語を表す頂点を目標言語の単語を表す頂点とつなぎ、すなわち、グラフは２部グラフになる。単語の並置の他の実施形態は、原言語の単語から、その単語が並置される目標言語の単語の集合への関数など異なる表現を用いることができるが、この関数表現は、上記のグラフ表現に容易に作り変えることができる。この文献では、語並置コンポーネントは、上記のグラフ表現として書き替えることができる、文の各対についての単語の並置を生成するに任意のコンポーネントである。
【００４２】
ここまで論じた例を使用して、図４Ｄに、並置されたテキストの原言語部分を上に、並置されたテキストの目標言語部分を下に示し、２つのテキストの間の線で単語間の対応関係が表される。したがって、図４Ｄは、語並置コンポーネント２１８が、英語の単語「ｔｈｅ」とドイツ語の単語「ｄｅｒ」、英語の単語「ｏｌｄ」とドイツ語の単語「ａｌｔｅ」、英語の単語「ｍａｎ」とドイツ語の単語「ｍａｎｎ」、および、英語の単語「ａｔｅ」とドイツ語の単語「ｉｓｓｔ」の間に対応関係を見つけたことを示す。
【００４３】
図４Ｄに示される並置は、一対一の並置なのでかなり単純である。すなわち、原言語のテキストの各単語が、目標言語のテキストの１つの単語と並置される。しかし、これより複雑な単語の並置もありうる。例えば、フランス語では、否定は通例２つの単語に分けられる。単語の１つは、文の動詞の前にあり、もう一方の単語は、文の動詞の後に来る。したがって、処理しようとする、並置された、対訳文が、英語の文「Ｉ  ｄｏ  ｎｏｔ  ｓｐｅａｋ  Ｅｎｇｌｉｓｈ」と、それに対応するその文のフランス語の翻訳「Ｊｅ  ｎｅ  ｐａｒｌｅ  ｐａｓ  Ｆｒａｎｃａｉｓ」であると仮定する。フランス語の場合の否定は、動詞「ｐａｒｌｅ」の両側にある単語「ｎｅ．．．ｐａｓ」によって表される。
【００４４】
そのため、並置コンポーネント２１８は、２つの文を図５Ａに示すように並置する。原言語の単語「ｄｏ」には並置が行われず、原言語の単語「ｎｏｔ」には２つの単語、すなわち「ｎｅ」と「ｐａｓ」が並置されることに留意されたい。
【００４５】
この単語の並置された文が教師なし語並置コンポーネント２１８の出力を形成し、図２の単語の並置された対訳コーパス２５８を形成する。単語に区分された原言語の依存構造と単語に区分された目標言語のテキストとの間の単語の並置を行うステップが、図３のブロック２６０に示される。したがって、単語の並置された対訳コーパス２５８では、原言語の単語と目標言語の単語は、何らかの体系的な形式で注釈をつけられた関連付けを有する。この場合は、この関連付けは、単に単語と単語を結ぶ線で表される。
【００４６】
処理のこの時点で、原言語の文は、原言語の依存関係ツリー（または別の原言語の依存構造）に解析されており、単語の並置された対訳コーパスが生成されており、原言語のテキストの単語は、目標言語のテキストの単語と並置されている。図５Ｂに、これら両方を１つの構造として表すことができる構造を示す。図５Ｂの上の部分は、上記で図４Ａに関して述べたように矢印で形成された依存構造で原言語の入力文「Ｉ  ｄｏ  ｎｏｔ  ｓｐｅａｋ  Ｆｒｅｎｃｈ」を示す。図５Ｂに示す構造の下の部分は、単語が原言語の入力と並置された目標言語の入力「Ｊｅ  ｎｅ  ｐａｒｌｅ  ｐａｓ  Ｆｒａｎｃａｉｓ」を含む。したがって、図５Ｂは、原言語の依存関係ツリーと、原言語入力と目標言語入力との単語の並置の両方を示す。原言語の依存関係ツリーは、図２の数字２６２で表される。
【００４７】
そして、依存関係ツリー投射コンポーネント２２０が、原言語の依存関係ツリー表現の依存関係を、並置された目標言語の単語に区分された入力に投射して、目標言語の依存関係ツリー（または依存構造）を得る。これを図３のブロック２６４に示す。
【００４８】
依存関係ツリー投射コンポーネントの一実施形態は、次のように進行する。
（１）一対多の並置：目標言語のすべての別個の集合ＴiおよびＴkについて、
（ａ）ＴjとＴjのすべての単語が、原単語ｓkおよびｓlと並置される
（ｂ）ｓkおよびｓlには他の目標単語は並置されない
（ｃ）ｔiは、Ｔiの代表要素である。  
（ｄ）ｔjは、Ｔjの代表要素であり、ｓkからｓlへの依存関係がある場合のみ、ｔiからｔjへの依存を生成し、Ｔiの中の各ｔkについて、ｔk！＝ｔiであればｔkからｔiへの依存を生成し、Ｔjの中の各ｔmについて、ｔm！＝ｔjであれば、ｔmからｔjへの依存を作成する。
【００４９】
一実施形態では、目標ノードの集合の代表は、常に、その集合中で一番右にあるノードである。他の可能な実施形態では、代表は、どの語が主要語になるべきかに関するコーパスの統計によって選択されるか、または人手で作られた規則で選択されることができる。
【００５０】
（２）一対一および多対一の並置：同様に、原単語の別個の集合ＳkおよびＳlと一意に並置されたすべての目標単語ｔiおよびｔjについて、Ｓk中の何らかのｓkおよびＳl中の何らかのｓlについて、ｓkからｓlへの依存関係がある場合のみ、ｔiからｔjへの依存を生成する。
【００５１】
（３）並置されない単語：すべての並置されない目標単語ｔiについて、ｔlの左にある最も近い並置された目標単語と、ｔrの右にある最も近い並置された目標単語を見つける。ｔlが依存関係ツリーでｔiより下にある場合は、ｔiとｔlの間に依存関係を作成し、そうでない場合は、ｔiとｔrの間に依存関係を作成する。
【００５２】
（４）並置されないルート：原言語の依存関係ツリーのルートが並置されない場合は、上記のステップをすべて適用した後で、複数の目標依存関係ツリーがあることになり、各ツリーが１つのルートを有する。それらのルートの中から代表を選び、他のすべてのルートがその代表に依存するようにする。
【００５３】
（５）順序が正しくないノードの配置：すべての単語が１つの依存関係ツリーに配置された後に、ツリー中の単語の順序が目標文での順序とは異なる場合は、正しい順序で読み取られることになるツリー中で最も低い点に順序が正しくない各ノードを再結合する。
【００５４】
以下の段落では、具体的な例でこれらの規則を説明する。図６に、原言語の依存関係ツリーから、並置された目標言語のテキストに依存関係が投射されるプロセスを示す流れ図を示す。コンポーネント２２０は、目標言語の依存関係ツリーに依存関係を生成するために、原言語の依存関係ツリーから、目標言語テキストの並置された単語に依存関係を投射する。目標言語の依存関係ツリーへの依存関係の投射を図６のブロック２６８に示す。例えば、コンポーネント２２０は、原側の単語を調べて、それらの単語がどの単語に依存しているかを理解し、それらと同じ依存関係を、目標側の並置された単語に投射する。
【００５５】
この例では、コンポーネント２２０が（図６Ａに示すルート「ｐａｒｌｅ」を特定した後で）単語「Ｉ」から開始するとする。原言語の依存関係構造から、単語「Ｉ」が前置修飾語として（表層文字列で単語「ｓｐｅａｋ」の前に発生する修飾語として）単語「ｓｐｅａｋ」に依存することが見て取れる。したがって、コンポーネント２２０は、単語「Ｉ」から単語「Ｊｅ」への並置をたどり、単語「Ｊｅ」を、ルート「ｐａｒｌｅ」に従属する前置修飾語とする。これを図６Ｂに示す。
【００５６】
コンポーネント２２０は、次に単語「ｄｏ」に遭遇する。単語「ｄｏ」は、目標言語テキストのどの単語とも並置されないので、コンポーネント２２０は単に、単語「ｄｏ」を飛ばし、単語「ｎｏｔ」に進む。
【００５７】
単語「ｎｏｔ」は、目標側の２つの単語「ｎｅ」および「ｐａｓ」と並置されるので、やや複雑である。
【００５８】
これに対処するために、本発明の一実施形態によれば、原側の１つの単語と並置される目標側の単語の集合を調べてその単語の依存関係を判断するヒューリスティックが用いられる。この実施形態では、目標側の単語の集合の中で一番右にある単語（「ｐａｓ」）が主要語の依存要素にされ、目標側の元の単語の順序が保持されて、「ｐａｓ」がツリー中で前置修飾語になるか、後置修飾語になるかを判断する。「ｐａｓ」は、表層文字列で主要語「ｐａｒｌｅ」の後に来るので、依存関係ツリーでは主要語の後置修飾語にされる。これを図６Ｃに示す。
【００５９】
次いで、目標側の一致する単語の集合で残っている単語が順に取り出され、この場合も目標表層文字列の元の単語の順序に基づいて、一番右にある単語「ｐａｓ」の前置修飾語または後置修飾語にされる。この例では、「ｎｏｔ」と一致する単語の集合の中で唯一残る単語は、フランス語の単語「ｎｅ」である。したがって、「ｎｅ」が、単語「ｐａｓ」の依存要素にされる。「ｎｅ」は単語「ｐａｓ」より前に来るので、依存関係ツリーでは、単語「ｐａｓ」の前置修飾語として配置される。これを図６Ｄに示す。
【００６０】
最後に、コンポーネント２２０は、単語「Ｆｒｅｎｃｈ」に到達し、この単語が１つの目標単語「Ｆｒａｎｃａｉｓ」と並置されており、単語「Ｆｒｅｎｃｈ」が単語「ｓｐｅａｋ」に従属していることを判断する。したがって、コンポーネント２２０は、目標言語の依存関係ツリーに、単語「Ｆｒａｎｃａｉｓ」が後置修飾語として単語「ｐａｒｌｅ」（単語「ｓｐｅａｋ」と並置される）に従属するものとして配置する。これも図６Ｄに示す。
【００６１】
そして、コンポーネント２２０は、目標言語の依存関係ツリーにおける順序を計算する。この場合、図６Ｄに示す依存関係ツリーの順序では、フランス語の文字列「Ｊｅ  ｐａｒｌｅ  ｎｅ  ｐａｓ  Ｆｒａｎｃａｉｓ」になる。コンポーネント２２０は次いで、元の目標言語入力にアクセスし、表層文字列では単語「ｎｅ」が単語「ｐａｒｌｅ」の後になっているので、単語「ｎｅ」の順序が正しくないことに気づく。
【００６２】
この誤りに対処し、下記の他の潜在的ないくつかの問題を訂正するために、コンポーネント２２０は、必要な場合は、目標言語の依存関係ツリーを通る２回目のパス（ｐａｓｓ）を行って、目標言語の依存関係ツリーの誤りを取り除く。これを図６のブロック２７０に示す。
【００６３】
上記で述べたような最初の誤りは、すぐ上で述べた誤りである（目標の単語、すなわち単語「ｎｅ」が、図６Ｄに示す最終的な目標言語依存関係ツリーから読み出される翻訳で正しく順序で現われる）。図６Ｆは、コンポーネント２２０がどのようにこの誤りを修正するかを説明する流れ図である。
【００６４】
初めに、コンポーネント２２０は、目標の依存関係ツリーから読み出された目標文字列の中で、順序が間違っている単語を特定する。これを図６Ｆのブロック３００に示す。この例では、その単語は「ｎｅ」である。コンポーネント２２０は次いで、元の表層文字列の順序が保たれるように、目標言語の依存関係ツリーの中で、特定された単語より上にある（「ｎｅ」より上にある）一番低い再結合する点を特定する。この場合、元の順序を維持する、単語「ｎｅ」より上にある最も低い点は、「ｎｅ」をノード「ｐａｒｌｅ」の前置修飾語として配置するものである。この点の識別を図６Ｆのブロック３０２に示す。コンポーネント２２０は、次いで単語「ｎｅ」をその点に再結合する。これを図６Ｅに示し、図６Ｆのブロック３０４として示す。したがって、単語「ｎｅ」は、単語「ｐａｓ」の前置修飾語としての位置から取り外され、単語「ｐａｒｌｅ」の前置修飾語になるように再結合される。
【００６５】
本発明で生じる可能性のある別の問題は、単語に区分された目標文字列の中の単語が、原文字列のどの単語とも並置されない場合に発生する。例えば、フランス語では、しばしば前置詞が動詞の後に挿入され、英語で当てはまる翻訳がない。例えば、原言語の入力文字列「Ｉ  ｈａｖｅ  ｂｏｏｋｓ」を想定する。妥当なフランス語の翻訳は、「Ｊｅ  ａｉ  ｄｅ  ｌｉｖｒｅ」である。原言語と目標言語の単語に区分された入力の単語間の並置を図７Ａに示す。目標言語の文字列の単語「ｄｅ」に、原言語文字列との並置がないことが容易に見て取れよう。
【００６６】
図７Ｂに、依存関係ツリーの表現と併せて図７Ａの単語の並置を示す（原言語文字列の円弧が原言語入力の依存関係を表す）。本発明を使用してそれらの依存関係を目標言語の文字列に投射して、図７Ｃに示す目標言語の依存関係ツリーを生成する。これは、先の例で述べたように、図７Ｄに示すように表すこともできる。無論、これは、単語「ｄｅ」には関連付けられた依存関係がないことを意味する。したがって、本発明の一実施形態によれば、コンポーネント２２０は、初めに、単語に区分された元の目標文字列の中で並置されていない単語を特定する。これを図７のブロック３２０で示す。言うまでもなく、この例では、コンポーネント２２０は、単語「ｄｅ」を特定する。
【００６７】
次いで、コンポーネント２２０は、目標依存構造で並置されていない単語の上にある最も近い依存関係の円弧を特定する。図７Ｄに示す依存構造中で、並置されていない単語「ｄｅ」より上にある最も近い依存関係の円弧は、「ｌｉｖｒｅ」を始点とし、単語「ａｉ」を終点とする円弧である。この円弧の特定を図７のブロック３２２に示す。
【００６８】
コンポーネント２２０は次いで、並置されない単語を、特定された円弧の始点の依存要素にする。したがって、本発明では、コンポーネント２２０は、単語「ｄｅ」が単語「ｌｉｖｒｅ」に従属するようにする。これを図７Ｅに示す。「ｄｅ」から上に延びる点線は、依存構造中で「ｄｅ」の上にある最も近い円弧の位置を表し、「ｄｅ」から「ｌｉｖｒｅ」への円弧は、「ｄｅ」が「ｌｉｖｒｅ」の依存要素にされたことを表す。これを図７のブロック３２４に示す。図７Ｅに示す依存構造は、無論、図７Ｆに示す依存関係ツリーに書き換えることができる。
【００６９】
生じる可能性があり、コンポーネント２２０の２回目のパスで対処される別の問題は、複数の原単語が１つの目標単語と並置される場合である。例えば、原文字列「Ｅｍｐｔｙ  ｔｈｅ  ｒｅｃｙｃｌｅ  ｂｉｎ」を考えられたい。この文字列のフランス語の翻訳は、「Ｖｉｄｅｒ  ｌｅ  ｃｏｒｂｅｉｌｌｅ」である。これら２つの文字列の単語の並置を、原言語文字列に対応する依存構造と併せて図８Ａに示す。図８Ａは、原言語の２つの単語「ｒｅｃｙｃｌｅ」と「ｂｉｎ」が、目標言語の単語「ｃｏｒｂｅｉｌｌｅ」と並置されることを示す。原言語文字列に関連付けられた依存関係ツリーを図８Ｂに示す。
【００７０】
原言語の依存関係ツリーから目標言語の依存関係ツリーに依存関係を投射するには、原言語の依存関係のルートと並置される単語が特定され、その単語目標言語の依存関係ツリーのルートとされることを思い出されたい。したがって、「ｅｍｐｔｙ」と並置される単語は、「ｖｉｄｅｒ」であり、「ｖｉｄｅｒ」が図８Ｃの目標言語の依存関係ツリーのルートにされる。
【００７１】
次に、原言語の依存関係ツリーの依存関係が、目標言語の入力の並置された単語に投射されて、目標言語の依存関係ツリーを得ることを思い出されたい。しかし、目標言語の単語「ｃｏｒｂｅｉｌｌｅ」には２つの単語が並置される。そのため、コンポーネント２２０は、目標単語にどちらの依存を投射するかを決定しなければならない。本発明の一実施形態によれば、コンポーネント２２０は、原言語の依存関係ツリー構造の中で一番上にある原単語の依存関係を使用する。「ｃｏｒｂｅｉｌｌｅ」と並置される２つの単語は「ｒｅｃｙｃｌｅ」と「ｂｉｎ」なので、図８Ｂは、単語「ｂｉｎ」が依存関係ツリー構造の中で最も高く、したがってその依存関係が単語「ｃｏｒｂｅｉｌｌｅ」に投射されることを示す。「ｂｉｎ」は単語「ｅｍｐｔｙ」の後置修飾語なので、単語「ｃｏｒｂｅｉｌｌｅ」は、目標言語の依存関係ツリーで単語「ｖｉｄｅｒ」の後置修飾語になる。
【００７２】
また、言うまでもなく、「ｌｅ」は、「ｃｏｒｂｅｉｌｌｅ」の前置修飾語として投射され、目標言語の依存関係ツリーは、図８Ｃのように完成する。図８Ｄに、原言語および目標言語両方の依存構造と、原言語の文字列と目標言語の文字列間の単語に区分された単語の並置を示す。
【００７３】
図８Ｄに示す構造は、図８Ｅに示すように書き換えることもできる。図８Ｅに、原言語および目標言語両方の依存構造を依存関係ツリーとして示し、単語の並置は、２つの依存関係ツリー間の点線で示される。
【００７４】
このように、依存関係ツリー投射コンポーネント２２０の出力は、図８Ｄあるいは８Ｅに示すような、単語の並置がされた、対訳依存関係ツリー構造（あるいは依存構造）からなるコーパスをもたらす。この説明では、用語「依存関係ツリー」を使用して、単語文字列に沿った円弧で依存関係を示すタイプの構造（図７Ｅ）、または、図７Ｆに示すような実際の依存ツリー構造のいずれかを指す。したがって、「依存関係ツリー」は、これらの構造両方を同義で指す。したがって、用語「単語の並置された、対訳依存関係ツリー」を使用して、図８Ｄおよび図８Ｅに示す両方のタイプの構造を同義で指すことができる。依存関係ツリー投射コンポーネントの他の実施形態は、上記とは異なる規則、ヒューリスティック、あるいは統計のセットを用いることができる。
【００７５】
いずれの場合も、コンポーネント２２０によって生成される、単語が並置された複数の対訳依存関係ツリー構造は、図２のシステム図の単語の並置がされた、対訳依存関係ツリーコーパス４００として示される。これは、図８Ｄまたは８Ｅに示すような構造を持つコーパスであるか、または、文並置された、対訳コーパス２０２全体にそれら両方の構造が生成される。
【００７６】
再度図３を参照すると、ブロック２６４で、並置された目標言語テキストへの原言語の依存関係の投射に処理が進んで、単語の並置された、対訳依存関係ツリーコーパス４００を得たことが分かる。次のステップは、コーパス４００から、ツリーレットの翻訳対を抽出し、その対をツリーレット翻訳対データベース２０４に入れることである。これを図３のブロック４０２で示す。
【００７７】
ツリーレットの翻訳対は、原言語の依存関係ツリーの接続された部分グラフと、それに対応する目標言語の依存関係ツリーの接続された部分グラフと定義される。しかし、本発明の一実施形態によれば、「接続された部分グラフ」の定義では、ツリー中の任意のノードからの兄弟ノードがダミーの親ノードを通じて接続されているものとして扱う。ツリーレットの翻訳対の抽出は、図２に示すツリーレット対エクストラクタ２２４によって行われる。これがどのように行われるかを示す構造の例が図８Ｅ〜８Ｉに示され、これを行う方法を説明する流れ図が図８Ｊに示される。
【００７８】
ツリーレット対エクストラクタ２２４は、初めに、大きさが１の原言語のツリーレットをすべて列挙することから開始する（大きさはツリーレットに含まれるノードの数で表される）。これを図８Ｊのブロック４０４および４０６に示す。列挙される原言語ツリーレットの大きさが１であるこの最初のパスでは、原言語依存関係ツリーのすべてのノードが列挙される。図８Ｅに示す単語の並置された、対訳依存関係ツリー構造の場合は、原言語ノードそれぞれが、図８Ｆの左側に列挙される。
【００７９】
次いで、列挙された各ツリーレットの並置が特定される。これを図８Ｆの右半分に示し、図８Ｊのブロック４０８として示す。
【００８０】
ツリーレット対エクストラクタ２２４は次いで、列挙されたツリーレットとそれに対応する並置から、適切な形式のツリーレット翻訳対を抽出する。これを図８Ｊのブロック４１０に示す。ツリーレット「ｅｍｐｔｙ−ｖｉｄｅｒ」と「ｔｈｅ−ｌｅ」は、ともに形式が適切であり、したがって抽出され、ツリーレット翻訳テーブルに入れられる。しかし、語「ｂｉｎ」と「ｒｅｃｙｃｌｅ」についてのツリーレット翻訳対の全体を図８Ｇに示す。１つのノードを形成するツリーレット「ｒｅｃｙｃｌｅ」と１つのノードを形成するツリーレット「ｂｉｎ」は両方とも、同じ目標言語の単語「ｃｏｒｂｅｉｌｌｅ」と並置されるので、もう一方と無関係にどちらかの語を抽出すると、適切な形式ツリーレット翻訳対が生成されないことになる。ツリーレット翻訳対の外側に及ぶ並置になってしまう。そのため、列挙されたこれら２つの大きさ１のツリーレットは、破棄される。
【００８１】
エクストラクタ２２４は、次いで、ブロック４１２に示すように、考慮すべきより大きなツリーレットがあるかどうかを判定する。ある場合は、考慮するツリーレットの大きさがブロック４１４で１増され、処理はブロック４０６に進む。言うまでもなく、この例では、考慮すべきより大きなツリーレットがあり、したがって、エクストラクタ２２４は、大きさ２の原言語依存関係ツリーのツリーレットをすべて考慮する。
【００８２】
図８Ｈでは、大きさが２の原言語ツリーレットがすべて列挙されている。１つのノードの子は接続された部分グラフを形成するものとみなされるので、ツリーレット４２０も列挙されることに気づかれよう。このツリーレットは、星印で表すダミールートの下にある原言語の単語「ｔｈｅ」と「ｒｅｃｙｃｌｅ」を考慮する。
【００８３】
図８Ｈから、大きさ２のツリーレットのうちの３つが、もう一方を含まずに単語「ｂｉｎ」または単語「ｒｅｃｙｃｌｅ」を有することが分かる。したがって、図８Ｆおよび８Ｇの説明から、これらは、適切な形式のツリーレット翻訳対を生むことができない。したがって、それらは却下される。しかし、「ｒｅｃｙｃｌｅ」を「ｂｉｎ」の前置修飾語として示す原言語のツリーレットは、「ｃｏｒｂｅｉｌｌｅ」として翻訳され、その原言語ツリーレットの原言語の語はどちらも、ツリーレット翻訳対の外側にある並置は持たない。したがって、ツリーレット翻訳対４２２が抽出され、適切な形式のツリーレット翻訳対としてツリーレット翻訳対データベース２０４に入れられる。
【００８４】
ブロック４０６で再度処理が継続し、ここで、ツリーレット対エクストラクタ２２４は、大きさが３の原言語ツリーレットをすべて列挙する。それらを、図８Ｉの４２４、４２６、および４２８に示す。ツリーレット４２４および４２６は、原言語の単語からのすべての並置を含む翻訳を有する。したがって、それらのツリーレットは、適切な形式のツリーレット翻訳対であり、抽出され、ツリーレット翻訳対データベース２０４に入れられる。しかし、ツリーレット４２８は、この場合も単語「ｂｉｎ」のみを有し、単語「ｒｅｃｙｃｌｅ」を含まない。「ｃｏｒｂｅｉｌｌｅ」は、「ｂｉｎ」と「ｒｅｃｙｃｌｅ」の両方に割り当てられるので、「ｃｏｒｂｅｉｌｌｅ」は、ツリーレット４２８を使用して生成されるどのツリーレット翻訳対の外側にも及ぶ並置を有する。そのため、ツリーレット４２８は破棄される。
【００８５】
ツリーレット対エクストラクタ２２４は次いで、大きさが４の原言語ツリーレットをすべて考慮する。大きさが４のツリーレットは１つのみであり、図８Ｉの４３０に示される。これは、適切な形式のツリーレット翻訳対であり、そのため抽出され、ツリーレット翻訳対データベース２０４に入れられる。
【００８６】
原言語の依存関係ツリーからなるコーパスにはそれ以上大きなツリーレットがないので、ツリーレット翻訳対エクストラクタ２２４は、適切な形式のツリーレット翻訳対の抽出を完了する。
【００８７】
ここで、ノードの兄弟が接続された部分グラフを形成するとみなすことをより具体的に説明するために、先に使用した原言語の文「Ｉ  ｄｏ  ｎｏｔ  ｓｐｅａｋ  Ｆｒｅｎｃｈ」と、それに対応するフランス語の翻訳「Ｊｅ  ｎｅ  ｐａｒｌｅ  ｐａｓ  Ｆｒａｎｃａｉｓ」の例を考えたい。これら２つの文の依存構造と単語の並置を図９Ａに示す。図９Ｂに、同じ事柄（依存関係と単語の並置）を表す代替の構造を示す。この例では、大きさ１の原言語のツリーレットが各自の並置とともに列挙される際に、ツリーレットの中でも特に図９Ｃに示すツリーレットを生成する。この構造は、原単語「星印」の前置修飾語として単語「ｎｏｔ」を有するツリーレットは、前置修飾語「ｎｅ」および後置修飾語「ｐａｓ」を有する、その原単語「星印」の翻訳として変換されることができることを示す。したがって、ツリーレット翻訳対データベースは、「ｎｅ．．．ｐａｓ」を「ｎｏｔ」として翻訳してよいことを示すツリーレット翻訳対を含む。
【００８８】
再度図２に示すトレーニングシステム２００全体を参照すると、順序モデルトレーニングコンポーネント２２６は、単語の並置がされた、対訳依存関係ツリーコーパスに基づいて順序モデル２０６もトレーニングする。これを図３のブロック４８０に示す。
【００８９】
順序モデル２０６によって対処される問題は、実行時（本明細書の下記で述べる）に、原言語入力が受け取られ、構文解析されて、原言語の依存構造にされることである。その構造が次いで、ｔｅｒｅｌｅｔ翻訳対データベース２０４のツリーレットと照合される。これにより、一致するツリーレット翻訳対のリストと、したがって、原言語のツリーレットのリストが生成される。しかし、目標言語の依存関係ツリーを形成するためにそれらのツリーレットをどのような順序でつなぐべきかは、確実には分からない。したがって、ツリーレットが任意の方式で単につなげられた場合は、最終的な目標言語の表層文字列は正確でない可能性がある。
【００９０】
したがって、ツリーレットが目標言語の依存関係ツリーに現れる順序の確率論的予測を生成するように順序モデル２０６がトレーニングされる。単語の並置がされた、対訳依存関係ツリーコーパスは、図８Ｄおよび８Ｅに示すようなツリーと、図９Ａおよび９Ｂに示すツリーのような、トレーニングデータのための単語の並置がされた、対訳依存関係ツリーを含むことを思い出されたい。ここでの順序モデルの説明は、図８Ｄおよび８Ｅに示す例示的構造との関連で進める。
【００９１】
実行時に入力文が「Ｅｍｐｔｙ  ｙｏｕｒ  ｒｅｃｙｃｌｅ  ｂｉｎ」であるとする。この文は、まず構文解析されて、図１０Ａに示すような依存関係ツリーにされる。図１０Ｂに、トレーニングコーパスからエクストラクタ２２４によって抽出された、ツリーレット翻訳対データベース２０４にある２つの例示的なツリーレット翻訳対を示す。単語「ｙｏｕｒ」は、図１０Ａに示す原言語の依存関係ツリーで単語「ｂｉｎ」の依存要素なので、単語「ｖｏｔｒｅ」は、単語「ｃｏｒｂｅｉｌｌｅ」に従属することになるが、それらのノードをともに配置するにはいくつかの異なる可能性がある。
【００９２】
例えば、「ｖｏｔｒｅ」が「ｃｏｒｂｅｉｌｌｅ」の前に来るのか後に来るのかは分からない。これらの両方の可能性を示す依存関係ツリー構造を図１０Ｃに示す。順序モデル２０６は、他のレベルに関係なく、目標言語の依存関係ツリーの各レベルの依存関係の順序を予測する。この例では、順序モデル２０６は、図１０Ｃに示される依存関係ツリーのどれがより可能性が高いかを予測する。
【００９３】
例示的な一実施形態では、順序モデル２０６は、単に、すべての可能性を列挙し、各可能性にスコアをつけ、最もスコアが高い可能性を選択する。これを達成するために、順序モデル２０６は、依存関係ツリー中で親を考慮して子の順序を予測する。一実施形態では、これは、親からのオフセット位置を予測することによって行われる。例えば、図１０Ｄに、「ｖｉｄｅｒ」からの「ｃｏｒｂｅｉｌｌｅ」のオフセット位置と、「ｃｏｒｂｅｉｌｌｅ」からの「ｌｅ」のオフセット位置を示す。「ｃｏｒｂｅｉｌｌｅ」は、「ｖｉｄｅｒ」から１の位置だけ離れた後置修飾語（すなわち後に来る）なので、「ｖｉｄｅｒ」から１を足したオフセット位置を有する。「ｌｅ」は、「ｃｏｒｂｅｉｌｌｅ」のすぐ前に来るので、「ｃｏｒｂｅｉｌｌｅ」から１引いたオフセット位置を有する。言うまでもなく、親（すなわち主要語）に２つ以上の子がある場合、そのうちの複数が親の一方の側にある場合は、位置の整数は、それらの子については２以上になる可能性がある。ここでも、順序モデル２０６は、依存関係ツリーの各レベルで、位置に別個に注釈をつける。
【００９４】
順序モデル２０６は、注釈をつけられた位置に該当する、そのレベルにある各単語の確率を提供する。この確率は、式１に示すような確率とすることができる。
【００９５】
式１
以下の場合にＰ（ｐｏｓ＝＋１）
当該の単語＝ｃｏｒｂｅｉｌｌｅ
親の単語＝ｖｉｄｅｒ
当該単語と並置された単語＝ｂｉｎ
当該単語の親と並置された単語＝ｅｍｐｔｙ
当該単語と並置された原単語の位置＝＋１
当該単語と並置された単語の品詞（ＰＯＳ）＝名詞
当該単語の親と並置された単語のＰＯＳ＝動詞
【００９６】
式１は、順序モデルが、各種の要素を考慮して、単語「ｃｏｒｂｅｉｌｌｅ」に１を足した位置の確率を計算することを示す。式１に挙げられた要素は、その単語自体（ｃｏｒｂｅｉｌｌｅ）、その親、その単語と並置された原単語、その単語の親と並置された原単語、その単語と並置された原単語の位置、その単語と並置された単語の品詞、その単語の親と並置された単語の品詞である。
【００９７】
上に挙げた各特性の値は、ここで論じられる例との関連で式１に示される。したがって、順序モデルをトレーニングするために、順序モデル２０６トレーニングコンポーネント２２６は、コーパス４００全体を調べ、各依存関係ツリー構造の各レベルにある単語を読み取り、式１に列記される特性を埋め、それをトレーニングデータとして使用して確率を生成する。一実施形態では、トレーニングは、決定ツリーを使用して行われる。無論、上記とは異なる特性、あるいは追加的な特性も使用してよいことに留意されたい。しかし、いずれの場合も、順序モデルは、機械学習プロセスを使用してトレーニングされ、原言語の依存関係ツリーの原ノード（ｓｏｕｒｃｅ  ｎｏｄｅ）を考慮して、翻訳の依存関係ツリーの目標ノード（ｔａｒｇｅｔ  ｎｏｄｅｓ）を順序付ける最良の方式を予測するようにトレーニングされる。
【００９８】
一実施形態では、モデルを使用して、ツリーの他のレベルとは無関係に、各レベルの入力における単語の位置を予測する。例えば、一実施形態では、モデルは、各単語の順序を予測することにより、各レベルの順序を予測する。確率は、主要語から所与のオフセットを有する各単語について予測されることができる。モデルは、式１に挙げられた要素またはそれらとは異なる要素を使用することができる。
【００９９】
別の実施形態によれば、順序モデル２０６は、入れ替え／チャレンジモデルとして実施される。入れ替え／チャレンジモデルは、オフセットの確率を予測せず、代わりに２つの事柄を別々に予測する点を除いては、上記のモデルといくつかの共通点を有する。初めに、原言語の依存関係ツリーで所与の単語が翻訳された（あるいは並置された）元の単語が前置修飾語であった場合に、その単語が前置修飾語のままとなる確率（あるいは同様に、目標単語が原文で後置修飾語であった場合に、その単語が後置修飾語のままとなるかどうか）対（ｖｅｒｓｕｓ）、所与の単語が、原言語の依存関係ツリーで翻訳された（あるいは並置された）元の単語が前置修飾語であった場合に、その単語が「入れ替わって」、後置修飾語になる確率（あるいは、同様に、目標単語が、後置修飾語であった原単語と並置された場合、あるいは後置修飾語であった原単語から翻訳された場合に、前置修飾語になるかどうか）。すなわち、モデルは、ある単語が主要語に対して同じ方向にとどまるか、または主要語に対して入れ替わるかどうかを予測する。
【０１００】
そして、入れ替え／チャレンジモデルは、目標依存関係ツリーの所与のレベルについてどの単語が前置修飾語になり、どの単語が後置修飾語になるかを予測すると、内側からそれらの単語を順序付ける（すなわち、主要語に一番近い単語から、前置修飾語と後置修飾語を順序付けていく）。この際に、モデルは、前置修飾語の対から開始する。そして、モデルは、その対のどちらか一方がもう一方よりも主要語に近いか遠いかを判定する。モデルは、そのレベルのすべての前置修飾語を反復的に調べ、それにより最も近い修飾語、次に近い修飾語を見つけて行く。無論、これは、主要語に対する位置を予測するのではなく、単に、互いに対する各修飾語の位置を見つけるものである。
【０１０１】
例が参考となろう。入力文が「Ｔｈｅ  ｔｉｒｅｄ  ｍａｎ  ｆｒｏｍ  ｔｈｅ  ｓｅａ」であるとする。この文に生成される原言語の依存関係ツリー構造を図１１Ａに示す。可能な一致ツリーレット翻訳対を図１１Ｂに示す。ノード「ｈｏｍｍｅ」から直接依存している複数の子があり、それらの子はすべて、目標言語の依存関係ツリーで同じレベルにあるので、順序モデル２０６を使用して、「ｈｏｍｍｅ」の修飾語の順序を予測する。この順序付けを得るために、順序モデルは、初めに、ノード「ｈｏｍｍｅ」の前置修飾語のリストが「ｌｅ」だけであり、後置修飾語のリストが
【０１０２】
【表１】
2014142975.tif 000003
【０１０３】
と、「ｄｅ」をルートとするツリーレットとであると予測する。これを予測するために、順序モデル２０６は、式２に示す確率を生成する。
【０１０４】
【数１】
2014142975.tif 000004
【０１０５】
これは、語「ｌｅ」がその元の前置修飾語の位置から入れ替わらない確率と、単語
【０１０６】
【表２】
2014142975.tif 000005
【０１０７】
が元の前置修飾語の位置から後置修飾語の位置に入れ替わる確率と、単語「ｄｅ」が元の後置修飾語の位置から入れ替わらない確率とから、確率が構成されることを示している。この例では、順序モデルが、現在検討対象となっている目標言語の依存関係ツリーレベルで１つの前置修飾語と２つの後置修飾語を予測していることが理解できよう。
【０１０８】
１つしか前置修飾語がないので、主要語に対してその修飾語をどこに置くかを予測する必要はない。しかし、後置修飾語は２つある。したがって、順序モデルは、どちらが主要語に近いかを予測しなければならない。そのため、図２に示す確率に加えて、順序モデルは、どちらが主要語に近いかに関して、
【０１０９】
【表３】
2014142975.tif 000006
【０１１０】
が「ｄｅ」をルートとする後置修飾語に関してのチャレンジを満たすことを予測しなければならない。これを予測するために、式３に示される確率が計算される。
【０１１１】
【数２】
2014142975.tif 000007
【０１１２】
このように、式３は、各種の特性を考慮して、語
【０１１３】
【表４】
2014142975.tif 000008
【０１１４】
が残りの後置修飾語に関してチャレンジを満たす確率を計算する。例示的な一実施形態では、この確率を生成する際に考慮される特性は、図１に示される特性と同じである。したがって、順序モデル２０６で入れ替え／チャレンジモデルが使用される場合、トレーニングコンポーネント２２６は、トレーニングコーパス全体を調べ、列記される特性トレーニングデータとして考慮して、それらの確率を計算する。上記の確率を計算するために、各レベルを個別に調べながら各依存関係ツリーを下に移動していく。
【０１１５】
図２および３に示される再度トレーニングシステム２００の全体的な動作を参照すると、一致モデルトレーニングコンポーネント２２８も、コーパス４００にアクセスして一致モデル２０８をトレーニングする。これを図３のブロック４８２に示す。一致モデルトレーニングコンポーネント２２８は、コーパス４００のすべての目標言語依存関係ツリーにアクセスする。一致モデル２０８は、主要語から各子を予測することを試みる。子は、他の子の順序に関係なく予測される。一致モデル２０８をトレーニングするために、標準的な言語モデルフレームワークが使用される。しかし、コンポーネント２２８は、文字列中のいくつかの先行する単語から何らかの単語を予測するようにモデルをトレーニングする代わりに、目標言語の依存関係ツリーそれぞれを下に移動し、親から子を予測するようにモデルをトレーニングする。
【０１１６】
一致モデル２０８に伴う利益の１つは、ツリー中で修飾語が順序付けられていない場合でも、ツリーレットのスコアを得られることである。また、一致モデル２０８は、修飾語とそれが修飾する単語との間にある単語の数は考慮しない。考慮されるのは、その修飾語がある親の依存要素であり、したがってその親を修飾するということのみである。これは、表層文字列の言語モデルよりも有利である可能性がある。例えば、ｂｉ−ｇｒａｍの言語モデルを考えられたい。修飾語と被修飾語の間に３つ以上の単語がある場合、ｂｉ−ｇｒａｍの言語モデルでは、その修飾語は被修飾語を予測する際に考慮すらされない。
【０１１７】
再度、図２に示すトレーニングシステム全体の図を参照すると、翻訳確率テーブル２１０は、単に、原言語の単語が目標言語のある単語に翻訳される確率を予測する従来のチャンネルモデルである。
【０１１８】
最後に、目標言語モデルトレーニングコンポーネント２２２は、目標言語語分割コンポーネント２１６によって生成されたコーパス２５６の単語に区分された目標文字列にアクセスし、目標言語モデルをトレーニングする。これを図３のブロック４８４に表し、図２の目標言語モデル２１２として示す。トレーニングコンポーネント２２２は、従来の言語モデルトレーニング技術を使用して、目標言語のｎ−ｇｒａｍの言語モデルをトレーニングする。従来のｎ−ｇｒａｍモデルでは、単語の確率は、ｎ−１個の先行する単語に基づいて予測される。文全体の確率は、その文の各単語のｎ−ｇｒａｍの確率をともに乗算した確率になる。
【０１１９】
したがって、この時点で、ツリーレット翻訳対データベース２０４とともに、図２に示すモデルのセットすべてがトレーニングされたことになる。そして、入力テキスト断片の実行時の翻訳を生成するために、それらのモデルが翻訳デコーダによって使用されることができる。図１２は、本発明の一実施形態による翻訳システム６００を示すブロック図である。翻訳システム６００は、モデルの重みのセット６０２と併せて、統計モデル２０６、２０８、２１０、および２１２にアクセスすることができる。システム６００は、ツリーレット翻訳対データベース２０４にもアクセスすることができる。
【０１２０】
システム６００は、ツリーレット翻訳対一致コンポーネント６０４、原言語依存関係パーサ６０６（図２に示す原言語依存関係パーサ２１４と同じものでよい）、およびデコーダ６０８を含む。図１２に示すシステム６００の全動作を図１３に示す流れ図で説明する。
【０１２１】
システム６００は、初めに入力文（あるいは他のテキスト断片）６１０を受け取る。これを図１３のブロック６１２に示す。依存関係構文解析コンポーネント６０６は、この原入力文６１０を構文解析して原言語の依存関係ツリーにする。例として、入力テキスト部分が「ｔｈｅ  ｆｉｌｅｓ  ｉｎｓｔａｌｌｅｄ  ｏｎ  ｙｏｕｒ  ｃｏｍｐｕｔｅｒ」であるとする。コンポーネント６０６は、図１４Ａに示すような原言語の依存関係ツリー６１４を生成する。入力テキストに依存関係の解析を行うことを図１３のブロック６１６に示す。
【０１２２】
ツリーレット翻訳対一致コンポーネント６０４は、原言語の依存関係ツリー６１４を受け取り、ツリーレット翻訳対データベース２０４にアクセスする。コンポーネント６０４は、データベース２０４から一致するツリーレット翻訳対（原言語の依存関係ツリー６１４のツリーレットと一致する翻訳対）をすべて抽出し、そのツリーレット翻訳対を出力６１８として提供する。一致するツリーレット翻訳対を抽出するステップを図１３のブロック６２０に示す。
【０１２３】
デコーダ６０８は、原言語の依存関係ツリー６１４および一致するツリーレット翻訳対６１８を受け取り、翻訳ツリーの仮定を生成し、モデルの重み６０２によって重み付けされたモデル２０６、２０８、２１０、２１２で各翻訳対にスコアをつけ、上位Ｎ個の翻訳６２１を出力する。このステップを図１３のブロック６２２および６２４として示す。
【０１２４】
原言語の入力テキスト６１０が「ｔｈｅ  ｆｉｌｅｓ  ｉｎｓｔａｌｌｅｄ  ｏｎ  ｙｏｕｒ  ｃｏｍｐｕｔｅｒ」であるこの例によると、原言語の依存関係構文解析コンポーネント６０６は、図１４Ａに示す原言語依存関係ツリー６１４を生成する。ツリーレット翻訳対一致コンポーネント６０４は、次いで、ツリーレット翻訳対データベース２０４から、原言語の依存関係ツリー６１４のツリーレットと一致する原言語ツリーレットを有するツリーレットを抽出する。例えば、コンポーネント６０４によって抽出され、出力６１８として生成されるツリーレット翻訳対が図１４Ｂに示すものであるとする（図１４Ｂの対のリストは、図を簡潔にするために減らしている。実際には、このような短い文でも１０数個の一致するツリーレット翻訳対を有することが多い）。ここで、デコーダ６０８の作業は、原言語の依存関係ツリー６１４をカバーし、目標言語の依存関係ツリーを生成するために、図１４Ｂのツリーレット翻訳対の最良の組合せと配列を見つけることである。
【０１２５】
例示的な一実施形態では、デコーダ６０８は、動的プログラミングデコーダである。その実施形態では、デコーダ６０８は、全数復号検索を行う。これを説明する擬似コードの一例を表１に示す。
【０１２６】
【表５】
2014142975.tif 000009
【０１２７】
これと同じ全数検索の一実施形態を説明する流れ図を図１４Ｄの流れ図によって例示し、以下でこの検索を説明する。デコーダ６０８は、下から上へ各原ノードを別々に調べることから開始し、その原ノードをルートとする部分ツリー全体の最良の翻訳を見つけることを試みる。デコーダ６０８は、ツリーを上に移動し、原言語ツリーのルートに遭遇するまで、以前に計算された部分ツリーからの計算を再使用する。ルートに遭遇した時に、デコーダ６０８は、その原言語ツリーで表されるテキスト断片全体の最良の翻訳を見つけている。
【０１２８】
詳細には、デコーダ６０８は、まず最も低い原ノードを選択し、その原ノードをルートとするすべてのツリーレット翻訳対を特定する。図１４Ａに示す例では、デコーダ６０８は、原ノード「ｙｏｕｒ」から開始する。しかし、図１４Ｂには、ノード「ｙｏｕｒ」をルートとするツリーレット翻訳対はない。そのため、デコーダは単に次のレベルに上がり、ノード「ｃｏｍｐｕｔｅｒ」を分析する。デコーダ６０８は、図１４Ｂに示す、一致するツリーレット翻訳対７００が、ノード「ｃｏｍｐｕｔｅｒ」をルートとする原部分ツリーを有することを見つける。原ノードの選択とその原ノードをルートとするすべてのツリーレット翻訳対の特定を図１４Ｄのブロック７０２に示す。
【０１２９】
次いで、特定されたツリーレット翻訳対（この場合は１つのみの対７００がある）それぞれについて、デコーダ６０８は、選択された原ノードをルートとする（すなわち「ｃｏｍｐｕｔｅｒ」をルートとする）原部分ツリーの部分で、選択されたツリーレット翻訳対（すなわちツリーレット翻訳対７００）にカバーされない部分があるかどうかを判定する。これを図１４Ｄのブロック７０４に示す。この例では、ツリーレット翻訳対７００が、特定された唯一の翻訳対であり、この翻訳対は、「ｃｏｍｐｕｔｅｒ」をルートとする部分ツリー全体をカバーしている。したがって、この翻訳対が、単にスコアを付けられ、原ノード「ｃｏｍｐｕｔｅｒ」のＮ−ベストリストに加えられる。これを図１４Ｄのブロック７０６で示す。
【０１３０】
デコーダ６０８は次いで、ツリーを上に移動して別の原ノードを選択する。次の原ノードは「ｏｎ」であり、図１４Ｂの一致するツリーレット翻訳対にはノード「ｏｎ」をルートとするものはない。したがって、デコーダ６０８は、単に次の原ノード「ｉｎｓｔａｌｌｅｄ」に移動する。再度ブロック７０２で、デコーダ６０８は、図１４Ｂに示すリストの中で、ノード「ｉｎｓｔａｌｌｅｄ」をルートとするツリーレット翻訳対７１０を見つける。
【０１３１】
ブロック７０４で、デコーダ６０８は、ツリーレット翻訳対７１０が、「ｃｏｍｐｕｔｅｒ」およびそれより下の原部分ツリーの部分をカバーしないと判定する。デコーダ６０８はツリーを上に移動して行くので、ツリーでさらに下にあるカバーされない部分ツリーの部分にはすでにスコアが計算されている。そのため、デコーダ６０８は、「ｉｎｓｔａｌｌｅｄ」をルートとする部分ツリーのカバーされない部分の最良の翻訳を取り出す。この場合は、「ｃｏｍｐｕｔｅｒ」をルートとする部分ツリーの最良の翻訳を取り出す。これを図１４Ｄのブロック７１２で示す。取り出された最良の翻訳は、翻訳対７００を含む。
【０１３２】
ここで、デコーダ６０８は、翻訳対７００の目標言語部分を翻訳対７１０の目標言語部分とどのようにつなぐかを決定しなければならない。「ｏｎ」が「ｓｕｒ」と翻訳され、「ｏｒｄｉｎａｔｅｕｒ」が「ｃｏｍｐｕｔｅｒ」と翻訳されることが単語の並置から分かるので、デコーダ６０８は、「ｏｒｄｉｎａｔｅｕｒ」は「ｓｕｒ」につながると判断する。したがって、図１４Ａに示す原言語の依存関係ツリーの依存関係に基づき、「ｏｒｄｉｎａｔｅｕｒ」は、「ｓｕｒ」に依存しなければならない。しかし、デコーダ６０８は、単に、「ｏｒｄｉｎａｔｅｕｒ」が「ｓｕｒ」の前置修飾語であるか、後置修飾語であるかが分からない。
【０１３３】
例示的な一実施形態では、デコーダ６０８は、２つの部分ツリーをつなぐすべての可能な方式を列挙し、可能な方式それぞれをモデルの全セット（あるいは該当するすべてのモデルで）でスコア付けして、２つの部分ツリーをつなぐ最も可能性の高い方式を判断する。これを図１４Ｄのブロック７１４に示す。２つの可能性を図１４Ｃに示す。式４は、各モデルのスコアを組み合わせて各仮定の全スコアを得る例示的な方式の１つを示す。  
式４
スコア＝λ1ｌｏｇ（チャンネルモデルの確率）＋
λ2ｌｏｇ（順序モデルの確率）＋
λ3ｌｏｇ（一致モデルの確率）＋
λ4ｌｏｇ（目標言語モデルの確率）
【０１３４】
チャンネルモデル確率は、「ｉｎｓｔａｌｌｅ  ｓｕｒ」が「ｉｎｓｔａｌｌｅｄ  ｏｎ」と翻訳される確率に、「ｖｏｔｒｅ  ｏｒｄｉｎａｔｅｕｒ」が「ｙｏｕｒ  ｃｏｍｐｕｔｅｒ」と翻訳される確率を乗算した確率になる。図１４Ｃの最初の可能な順序の順序モデル確率は、「ｓｕｒ」が位置＋１で「ｉｎｓｔａｌｌｅ」の後置修飾語となる確率に、「ｏｒｄｉｎａｔｅｕｒ」が位置−１で「ｓｕｒ」の前置修飾語となる確率を乗算した確率になる。図１４Ｃの２番目の可能な順序の順序モデル確率は、「ｓｕｒ」が位置＋１で「ｉｎｓｔａｌｌｅ」の後置修飾語となる確率に、「ｏｒｄｉｎａｔｅｕｒ」が位置＋１で「ｓｕｒ」の後置修飾語となる確率を乗算した確率である。一致モデル確率は、「ｓｕｒ」が「ｉｎｓｔａｌｌｅ」の子である確率に、「ｏｒｄｉｎａｔｅｕｒ」が「ｓｕｒ」の子である確率と、「ｖｏｔｒｅ」が「ｏｒｄｉｎａｔｅｕｒ」の子である確率を乗算した確率になる。最後に、目標言語モデルの確率は単に、仮定の目標言語依存関係ツリーの各葉で読み取られる目標言語の表層文字列の文字列に基づく確率となり、この表層文字列は、最初の可能性の場合は「ｉｎｓｔａｌｌｅ  ｖｏｔｒｅ  ｏｒｄｉｎａｔｅｕｒ  ｓｕｒ」であり、２番目の可能性の場合は「ｉｎｓｔａｌｌｅ  ｓｕｒ  ｖｏｔｒｅ  ｏｒｄｉｎａｔｅｕｒ」である。
【０１３５】
デコーダ６０８は、検討対象のノードですべての仮定を構築し、すべてのモデルで各仮定をスコア付けし、各モデルに関連付けられた重みを適用し、それらを合計して、そのノードの各仮定の単一のスコアを得る。スコアが上位からＮ個の仮定は、選択されたその原ノードのＮ−ベストリストに入れられる。これを図１４Ｄのブロック７２０で示す。
【０１３６】
このプロセスは、デコーダ６０８が原言語の依存関係ツリー全体をルートまで横断するまで継続され、その後必要に応じて上位Ｎ個の翻訳が出力される。
【０１３７】
言うまでもなく、効率を高めるためにいくつかの最適化を行うことができる。例えば、原ノードごとに翻訳の候補の完全なリストを保持する代わりに、スコア付けが上位の候補のサブセットのみを保持してよい。
【０１３８】
加えて、デコーダ６０８によって行われる順序付けの動作の回数を制限するために、デコーダ６０８は、順序付けのプロセスを開始する前に、所与の単語のセットが以前にデコーダによって順序付けされているかどうかを調べることができる。一実施形態では、これは、順序付けされていないツリーで索引をつけたハッシュテーブルとして実施することができる。各親の子を標準的な順序で並べ替えた後に、同じツリー構造と語彙的選択を有する場合に、２つのツリーが等しいとみなされる。
【０１３９】
検索空間を制約する別の方式は、復号プロセスの初期に候補を破棄するものであり、これは、比較的大きく、高費用な順序付け空間を調べる前に行うことができる。例えば、早いうちに候補を取り除く方法の１つは、最終的な翻訳を作成する際に配置される子部分ツリーの完成したスコアと併せて、順序付けられていないツリーレットのチャンネルモデルスコアを調べるものである。それらスコアの合計が現在Ｎ−ベストリストにある最低のスコアより低い場合は、順序モデルの確率を加えても全スコアを下げるだけなので、最終的な候補は、Ｎ−ベストリストから脱落することになる。
【０１４０】
複雑性と時間の点から見ると、順序付けの段階がデコーダ６０８にとって最も高費用なステップであることが認められている。その複雑性は、順序付けするノードの数の階乗として増大する。また、順序付けは、翻訳の選択肢の可能な組合せごとに要求される。そのため、例示的な一実施形態では、上記の全数的な順序付けステップの代わりに、貪欲法の順序付け手法が用いられる。貪欲法の順序付けの複雑性は、所与のノードにおける子の数に比例する。前置修飾語と後置修飾語の数が固定されると、順序モデルは、他の順序付けの決定と無関係に１つの順序付けの決定を評価することができる。そして、復号の際に、表１に示されるアルゴリズムのすべての可能な順序付けを考慮するステップを、表２に示されるアルゴリズムに替える。
【０１４１】
【表６】
2014142975.tif 000010
【０１４２】
この「貪欲法による順序付け」は、すべての可能な順序付けのごく少ないサブセットのみを明らかにする。これは全数検索に比べて大幅に高速であるが、常に最良の順序付けを生成するとは限らない。
【０１４３】
別の実施形態では、試みる必要がある翻訳の組合せの数を減らすことにより、デコーダ６０８が大幅に高速にされる。ツリーレット翻訳対を使用する翻訳の数は、そのツリーレット対でカバーされない入力の部分ツリーの数とともに指数関数的に増える。解決法の１つは、大きさが可変のＮ−ベストリストを提供することである。これは、カバーされない部分ツリーを翻訳する再帰呼び出しが、現在のツリーレットにあるカバーされない部分ツリーの数に応じて、返されるＮ−ベストリストの大きさを制限することを意味する。ツリーレットがツリーのごくわずかな部分しかカバーせず、数回の再帰呼び出しを必要とする場合、それらの呼び出しは、より小さなＮ−ベストリストを返す。このようにして、指数関数的に増加しやすいツリーレット対が、人為的に指数の値を下げる。これにより、デコーダは、適切な翻訳となる可能性の高いツリーレット対、すなわち、すでにそのツリーの多くの部分を翻訳しているツリーレット対を完全に調べることもできるようになる。
【０１４４】
例示的な一実施形態では、Ｎ−ベストリストのＮの値は、シード値を、再帰呼び出しを使用して解決される必要のあるカバーされないノードの数で割ることによって求められる。そして、その数を切り上げて、どのツリーレット対も１の有効Ｎ値を得ないようにする。結果的に急速に低下する進行となるが、なお興味深い事例を区別するので、１２の数が比較的良好なシード値となることが判明している。一実施形態では、大きさが可変のＮ−ベストリストを使用することで、全数デコーダが貪欲法によるデコーダの性能を上回ることができることが判明している。
【０１４５】
また、チャンネルモデルのスコアとツリーレットの大きさが、高品質の翻訳を強力に予測することも分かっている。検索が開始する前にスコアが低いツリーレット翻訳対を除去することにより、デコーダが、高品質のツリーレット対の組合せと順序付けを調べるためにより多くの時間を費やせるようになる。翻訳対を除去するには、次を含むいくつかのヒューリスティックを使用することができる。
【０１４６】
１．何らかの閾値を上回る最大尤度推定確率を有するツリーレット翻訳対のみを保持する。０．０１のカットオフが有効であると考えられる。
【０１４７】
２．原言語のツリーレットがまったく同じであるツリーレット翻訳対のセットを与えられて、最大尤度推定確率が、最良の対の何らかの比の範囲内である対のみを保持する。例えば、最大尤度推定確率が最良の最大尤度推定確率の２０分の１以上であるツリーレット対のみが保持される。
【０１４８】
３．初めに大きさで、次いで最大尤度推定チャネルモデルスコアで、そして別のモデルスコアでランク付けされる、同じ入力ノードを有する上位Ｎ個のツリーレット翻訳対のみを保持する。Ｎ＝３〜５の閾値が、良好に働くことが認められている。
【０１４９】
本発明の別の実施形態によれば、デコーダ６０８は、動的なプログラミングデコーダとして実施されず、代わりにＡ＊検索を使用して実施される。Ａ＊検索技術は、よく知られており、その例示的な解説の１つがOch  et  al.,  AN  EFFICIENT  A  *  SEARCH  ALGORITHM  FOR  STATISTICAL  MACHINE  TRANSLATION,  in  ACL  2001:  Data-Driven  Machine  Translation  Workshop,  Toulouse  France,  pp.  55-62  (July  2001)（非特許文献１２）に記載されている。
【０１５０】
Ａ＊検索を行う際には、翻訳の候補は、実際に復号された部分についての実際のスコアと、まだ翻訳されていない候補の残りについての推定スコアを有することはよく知られる。推定スコアは、楽観的なスコアであり、候補が完了すると、デコーダは、かなり厳格な切捨てを行うことができる。すなわち、１つの候補が実際に完了されると、実際のスコアと推定スコアの合計が、完了したその候補の実際のスコアより小さい未完了の候補は破棄することができる。これは、その未完了の候補の実際のスコアは、その候補が完了したときに楽観的な推定スコア以下になることが確実であり、したがって、すでに完了した候補のスコアより小さくなることが確実であるためである。
【０１５１】
本発明の一実施形態では、Ａ＊デコーダは、入力された依存関係ツリーを下から上にも上から下にも検索しない。代わりに、ツリーレット翻訳対データベース２０４からコンポーネント６０４によって抽出され、入力６１０からコンポーネント６０６によって作成された原言語の依存関係ツリー６１４の一致する部分であると特定されたツリーレット対応付け空間（あるいは一致するツリーレット翻訳対６１８）を検索する。Ａ＊デコーダは、例えば、図１４Ｂに示す各ツリーレット翻訳対を考慮し、その翻訳対を選択するか否かの二分決定を行う。そのような決定はそれぞれ、検索空間で分岐に相当する。
【０１５２】
Ａ＊デコーダによって選択された各候補の実際のスコアを計算するために、デコーダは、選択されたツリーレット翻訳対によってカバーされる原言語の依存関係ツリーの部分にスコアをつける。各候補のスコアの推定部分は、原言語の依存関係ツリーのカバーされない部分に適用される可能性のあるすべてのツリーレット翻訳対に適用可能なモデルを適用することによって計算される。最高のスコアが、そのモデルのその候補の推定スコアとして使用される。
【０１５３】
例えば、ある候補に一致モデルを適用する場合、その候補の推定される一致モデルスコアは、原言語依存関係ツリーのカバーされない部分をカバーする可能性のある、リストにあるツリーレット翻訳対６１８すべてを調べ、それらのツリーレット翻訳対のすべての可能な組合せの一致モデルスコアを計算することによって得られる。最も高いスコアが、その候補の推定スコアの一致モデル部分の楽観的な推定値として選択される。これを、適用可能な各モデルについてその候補に繰り返して、その候補の全推定スコアを得る。
【０１５４】
適用可能なモデルとは、スコアを適用することが可能なモデルを意味する。例えば、あるノードの順序モデルスコアは、その子ノードの翻訳が選択され、それら子の順序が決定されるまで計算されることができない。同様に、目標言語モデルは、完成した候補が得られて、依存関係ツリーから表層文字列を読み取れるようにならないと適用することができない。したがって、各候補のスコアの実際の部分と推定部分は、具体的にはチャンネルモデルと一致モデルに基づいてのみ得られる。
【０１５５】
このタイプのＡ＊検索では、ツリーが互いと矛盾しない限りは、候補が重複するツリーを含むことが許されることは理解されよう。すなわち、１つまたは複数のノードで重複する２つのツリーレット翻訳対は、それらのノードが矛盾しないのであれば検討対象となる。
【０１５６】
Ａ＊検索をより具体的に説明すると、すべてのツリーレット翻訳を１つの大域的なリストにまとめることから開始し、そのリストが、いくつかの望ましさの基準の１つまたは複数によって並び替えられる。この基準は、例えば、ツリーレットの大きさやチャンネルモデルスコアとすることができる。そして、未完了候補の待ち行列が初期化され、完了した候補の別の待ち行列が初期化される。各候補は、次の構成部分を含む。
１．一致するツリーレット翻訳対の大域リストの中で考慮すべき次のツリーレット翻訳の位置。  
２．その候補の中ですでに選択されているツリーレット翻訳のセット。  
３．その候補によってカバーされる入力ノードの表現。  
４．各モデルに従った各候補のスコアの実際の推定部分と楽観的な推定部分。
【０１５７】
各ステップで、最もスコアの高い候補が未完了候補の待ち行列から抽出される。大域リストの中で、各候補の中の次のツリーレット対のポインタで示される次のツリーレット翻訳が考慮される。それ以上ツリーレット対がない場合、その候補は破棄される。
【０１５８】
下記でより詳細に説明するように、次のツリーレット翻訳がその候補にすでに選択されたツリーレット翻訳と両立しない場合、その翻訳は飛ばされ、次の翻訳が考慮される。同様に、ツリーレットが既に選択されたツリーレットと両立するが、すでに選択されたツリーレットに何も新しい情報を追加しない場合（すなわち新しい入力ノードをカバーしない場合）も、飛ばされる。
【０１５９】
ツリーレット翻訳が両立し、新しいノードをカバーする場合は、その候補がコピーされ、新しい候補を作成し、その新しいツリーレット翻訳が以前に選択されたツリーレットのセットに加えられ、新しくカバーされる入力ノードについて実際のモデルのスコアが加えられ、それらのノードの楽観的な推定値が減算される。新しいスコアには１つまたは複数の閾値のテストを行うことができ、そのテストのいずれかに不合格の場合は、候補は破棄される。閾値テストの一例は、候補のスコアが、完了した候補の待ち行列で最もスコアの低い候補より小さい場合は、破棄してよいというものである。閾値テストに合格するが、入力全体をなおカバーしない場合、候補は、未完了候補の待ち行列に戻される。
【０１６０】
新しい候補が入力全体をカバーすると、重複するツリーレットが併合され、選択されたツリーレットと整合するすべての可能な順序付けが調べられる。各順序付けについて、順序モデルと目標モデルのスコアが計算される。順序モデルのスコアと目標スコアを組み合わせて最も高くなる順序付けが選択される。この時点で、候補スコアは、推定スコアを含まず、代わりに、順序モデルと目標モデルを含むすべてのモデルの実際のスコアを含んでいる。そして、完了した候補が完了待ち行列に入れられる。
【０１６１】
一方、元の候補は、検索空間で「選択されない」の分岐に相当する。その次のツリーレット対のポインタが、選ばれなかった選択を反映するように推定スコアとして更新される。これは、検索の最適性を失わずに、選ばれなかった選択で推定を厳しくする効果がある。推定をより厳しくすると、より好適な除去が行われ、従って検索の速度が上がる。更新されたスコアには１つまたは複数の閾値テストが行われ、そのテストのいずれかに不合格の場合は候補が破棄され、そうでない場合は、その更新後のスコアに基づいて未完了待ち行列に戻される。
【０１６２】
このプロセスは、未完了待ち行列が空になるか、指定された量の検索作業が展開されるまで反復する。
【０１６３】
本発明の一実施形態によれば、ツリーレットの両立性の概念は、何らかの種の重複するツリーレットを許可するように拡大される。入力文「Ｃｌｉｃｋ  ｔｈｅ  ｓｅｌｅｃｔｅｄ  ｂｕｔｔｏｎ．」を考えられたい。「ｂｕｔｔｏｎ」の翻訳について一致する「ｃｌｉｃｋ  ｂｕｔｔｏｎ」と「ｓｅｌｅｃｔｅｄ  ｂｕｔｔｏｎ」の翻訳を有するものとする。その翻訳上の優先が互いを相互に強化できるようにする代わりに、それら２つの翻訳どちらかの選択を強制することは有害である可能性がある。
【０１６４】
ただし、ツリーレット翻訳は、一対一、一対多、多対一、あるいは多対多の翻訳、および／または単語の挿入または削除を提供することが可能であることに留意されたい。例示的な一実施形態では、ツリーレットは、トレーニング時のノードレベルの並置情報を保持する。各ツリーレット翻訳は、対になった原と目標の最小翻訳単位（ＭＴＵ）の互いに素の集合に分割され、各ＭＴＵは、並置の最小の単位に相当する。したがって、単語の挿入と削除は、それぞれ一対多の翻訳と多対一の翻訳としてモデル化される。また、ツリーレットは順序付けられるので、各ツリーレットノードは、そのノードの子の部分的な順序付けを示唆する。したがって、２つのツリーレット翻訳は、それらが重複する入力の部分で、ＭＴＵの境界と内容について一致し、さらに、重複の中の各目標ノードについて、各ツリーレット翻訳によって示唆される部分的な順序付けに従う子ノードの総合的な順序付けが存在する場合に、両立するとみなされる。
【０１６５】
本発明の一実施形態により追加的な一項目が考慮されるべきであり、それは、モデルスコアに対数線形のフレームワークで適用されるモデルの重み６０２の値のトレーニングである。一般にＢＬＥＵスコアと称される基準は、デコーダが何らかの基準となる翻訳に従って多量の文をどれだけ適切に翻訳したかを評価することを試みる、自動的に生成されるスコアである。最大ＢＬＥＵトレーニングと称されるよく知られる手法を、対数線形モデル組合せの重みをトレーニングする具体的な方式として使用することができる。
【０１６６】
比較的高いレベルでは、最大ＢＬＥＵアルゴリズムは、どの多次元関数最適化手法とも同じような働きをする。方向が選択され、線形検索を使用してその方向に沿って目的関数が最大化される。目的関数にそれ以上の向上が生成されなくなるまでそれが繰り返される。従来技術のシステムの１つであるOch,  MINIMUM  ERROR  RATE  TRAINING  AND  STATISTICAL  MACHINE  TRANSLATION,  in  Proceedings  of  the  ACL  (2003)（非特許文献１３）では、目的関数を直接最適化する方法（ＢＬＥＵスコアなど）が記載されている。この方法では、翻訳システムが、入力文についてのＮ−ベストリストと、各翻訳の連続的な値をとるモデルスコアの集合と、何らかの目的関数を生成することが必要とされる。
【０１６７】
一般に、これは、逐次最適化のように動作する。例えば、デコーダに２つのみのモデルがあり、それぞれが重みλ1とλ2を有するものとする。上記の参考方法は、重みの一方を一定に保ち、もう一方の重みのすべての値に沿って最適化し、最適な重みを選ぶことによって動作する。
【０１６８】
この手法に伴う問題の１つは、特定の一方向に沿ってＢＬＥＵスコアを見る際に、実際には、図１５に示す実線のような段階的な関数が得られることである。この実線は、特定の非常に狭い範囲のλについて、参照符号８００で示すλ値でＢＬＥＵスコアが最も高くなることを表す。ただし、ピーク８００の対応する値に重みが選択された場合には、ピークがとても狭いので、これは比較的不安定なシステムになる可能性がある。ピーク８００は、単に、その重みを使用して１つの文が非常にうまく行ったことを表す可能性がある。しかし、ピーク８００のＢＬＥＵスコアほど高くないが、文の範囲全体はλのその値の方ではるかにうまく行ったことを表す傾向があるＢＬＥＵスコアを有するはるかに広いピーク８０２がある。
【０１６９】
したがって、モデルの重みを設定する際には、本発明によれば、図１５の実線で示される生のＢＬＥＵの重みを単に考慮する代わりに、本発明は、図１５の点線で示されるＢＬＥＵスコアの移動平均を使用する。移動平均を使用すると、平均化ウィンドウは複数のスコアを含み、結果は図１５の点線になる。これは、段階的関数のピークの高さだけでなく、幅も考慮に入れる。そのため、ＢＬＥＵスコアの移動平均を見る際に、λの値は、段階的関数の幅広いピーク８０２に関連付けられた値にはるかにより近く設定され、より安定したシステムをもたらす。
【０１７０】
本発明について特定の実施形態を参照して説明したが、当業者は、本発明の主旨および範囲から逸脱することなく、形態と詳細に変更を加えてよいことを理解されよう。
【０１７１】
いくつかの態様を記載しておく。
〔態様１〕
原言語のテキスト断片を目標言語のテキスト断片に変換する機械翻訳システムであって、
前記原言語のテキスト断片中の構文的依存関係を表す原言語の依存関係ツリーと、前記原言語の依存関係ツリーの少なくとも一部分とそれぞれが一致する複数の一致ツリーレット翻訳対とを入力として受け取るように構成されたデコーダであって、前記原言語の依存関係ツリーと前記一致ツリーレット翻訳対に基づき、前記一致ツリーレット翻訳対の目標言語部分の様々な組合せに統計モデルの対数線形の組合せでスコアをつけることにより、前記目標言語のテキスト断片を表す目標言語の依存関係ツリーを生成するように構成されたデコーダ
を備えることを特徴とするシステム。
〔態様２〕
前記デコーダは、複数の異なる大きさを有する一致ツリーレット翻訳対を使用して、前記目標言語の依存関係ツリーを生成するように構成されることを特徴とする態様１に記載の機械翻訳システム。
〔態様３〕
前記デコーダは、複数の異なる形状を有する一致ツリーレット翻訳対を使用して、前記目標言語の依存関係ツリーを生成するように構成されることを特徴とする態様１に記載の機械翻訳システム。
〔態様４〕
前記デコーダは、複数の異なる分岐構成を有する一致ツリーレット翻訳対を使用して、前記目標言語の依存関係ツリーを生成するように構成されることを特徴とする態様３に記載の機械翻訳システム。
〔態様５〕
前記統計モデルは、前記目標言語の依存関係ツリーの所与のレベルにおける複数のノードの順序を統計的に予測する順序モデルを含むことを特徴とする態様１に記載の機械翻訳システム。
〔態様６〕
前記統計モデルはチャンネルモデルを含むことを特徴とする態様５に記載の機械翻訳システム。
〔態様７〕
前記統計モデルは、主要ノードを考慮して、前記目標言語の依存関係ツリー中の１つまたは複数の依存ノードを統計的に予測する一致モデルを含むことを特徴とする態様６に記載の機械翻訳システム。
〔態様８〕
複数のツリーレット翻訳対を記憶するツリーレット翻訳対データベースと、
前記ツリーレット翻訳対データベースから前記一致ツリーレット翻訳対を抽出するように構成されるツリーレット翻訳対一致コンポーネントと
をさらに備えることを特徴とする態様１に記載の機械翻訳システム。
〔態様９〕
前記デコーダは、重複するツリーレット翻訳対を翻訳の仮定として考慮することを特徴とする態様１に記載の機械翻訳システム。
〔態様１０〕
前記統計モデルは、重みで重みを付けられ、前記重みは、最大ＢＬＥＵトレーニングを使用して生成されるスコアの移動平均を使用して生成されることを特徴とする態様１に記載の機械翻訳システム。
〔態様１１〕
原言語のテキスト断片を目標言語のテキスト断片に変換する方法であって、
前記原言語のテキスト断片中の構文的依存関係を表す原言語の依存関係ツリーと、前記原言語の依存関係ツリーの少なくとも一部分とそれぞれが一致する複数の一致ツリーレット翻訳対とを入力として受け取るステップと、
前記一致ツリーレット翻訳対の目標言語部分の様々な組合せに統計モデルの対数線形の組合せでスコアをつけるステップと、
前記原言語の依存関係ツリー、前記一致ツリーレット翻訳対、および前記スコアに基づいて、前記目標言語のテキスト断片を表す目標言語の依存関係ツリーを生成するステップと
を備えることを特徴とする方法。
〔態様１２〕
スコア付けは、前記統計モデルによって生成されるスコアにモデルの重みで重みをつけることを含み、前記モデルの重みは、
前記モデルの重みの様々な値で翻訳品質を測定する翻訳の測定基準の値を計算することにより、複数の連続的な最適化動作を行うステップと、
前記翻訳の測定基準の値の移動平均に基づいて、前記モデルの重みの値を選択するステップと
を含むトレーニング方法中に生成されることを特徴とする態様１１に記載の方法。
〔態様１３〕
コンピュータによって実行されると、
複数のツリーレット翻訳対の目標言語部分の様々な組合せに、統計モデルの対数線形の組合せでスコアをつけるステップであって、前記複数のツリーレット翻訳対はそれぞれ、原言語のテキスト断片を表す原言語の依存関係ツリーの少なくとも一部分と一致するステップと、
前記原言語の依存関係ツリー、前記複数のツリーレット翻訳対、および前記スコアに基づいて、前記原言語のテキスト断片の前記目標言語への翻訳である目標言語のテキスト断片を表す目標言語の依存関係ツリーを生成するステップと
を含むステップを前記コンピュータに行わせるコンピュータ可読命令を格納したことを特徴とするコンピュータ可読媒体。
〔態様１４〕
目標言語の依存構造を生成するシステムであって、
原言語のトレーニングデータテキスト断片を表す原言語の依存構造中の語彙項目が、それに対応する、前記原言語のテキスト断片の翻訳であるトレーニングデータ目標言語テキスト断片の語彙項目と並置された並置済みの構造を得るように構成されたコーパス処理システムと、
前記原言語の依存構造の語彙項目から前記目標言語のテキスト断片の前記語彙項目に依存関係を投射して、前記目標言語の依存構造を得るように構成された依存関係投射コンポーネントと
を備えることを特徴とするシステム。
〔態様１５〕
それぞれが、原言語のテキスト断片とそれに対応する目標言語のテキスト断片とを含む、複数の対訳テキスト断片の対を有するトレーニングデータコーパス
をさらに備えることを特徴とする態様１４に記載のシステム。
〔態様１６〕
前記依存関係投射コンポーネントは、前記目標言語の依存構造が前記目標言語のテキスト断片を正しく表すかどうかを判定し、正しく表さない場合は、前記目標言語のテキスト断片を正しく表すように前記目標言語の依存構造を調整するように構成されることを特徴とする態様１４に記載のシステム。
〔態様１７〕
前記依存関係投射コンポーネントは、前記目標言語の依存構造を読み取って目標言語のテキスト文字列を生成し、前記目標言語のテキスト文字列中の前記語彙項目が、前記目標言語のテキスト断片に現われる順序と異なる順序であるかどうかを判定することにより、前記目標言語の依存構造が前記目標言語のテキスト断片を正しく表すかどうかを判定するように構成されることを特徴とする態様１６に記載のシステム。
〔態様１８〕
前記依存関係投射コンポーネントは、前記目標言語の依存構造から読み取られる前記目標言語のテキスト文字列の語彙項目が、前記目標言語のテキスト断片に現われる順序と同じ順序になるまで、前記目標言語の依存構造を配列し直すことにより、前記目標言語の依存構造を調整するように構成されることを特徴とする態様１７に記載のシステム。
〔態様１９〕
前記目標言語の依存構造は、目標言語の依存関係ツリーを含み、前記依存関係投射コンポーネントは、前記目標言語の依存関係ツリー中で順序が正しくないノードを特定し、語彙項目が前記目標言語のテキスト断片に現われる順序と同じ順序である目標言語文字列をもたらす前記目標言語の依存関係ツリー中で最も低いレベルに前記特定されたノードを再結合することにより、再配列するように構成されることを特徴とする態様１８に記載のシステム。
〔態様２０〕
前記コーパス処理システムは、
前記原言語のテキスト断片を構文解析して、原言語の依存構造を得るように構成されたパーサと、
前記目標言語のテキスト断片を語彙項目に区分するように構成されたセグメンタと、
前記原言語の依存構造の語彙項目を前記目標言語のテキスト断片の語彙項目と並置するように構成された並置コンポーネントと
を備えることを特徴とする態様１４に記載のシステム。
〔態様２１〕
目標言語の依存構造を生成するコンピュータによって実行される方法であって、
それぞれが、原言語のテキスト断片とそれに対応する目標言語のテキスト断片とを含む、複数の対訳テキスト断片の対を有するトレーニングデータコーパスにアクセスするステップと、
原言語のテキスト断片に基づいて生成された原言語の依存構造中の語彙項目が、それに対応する目標言語のテキスト断片中の語彙項目と並置された並置済みの構造を得るステップと、
前記原言語の依存構造中の語彙項目から前記目標言語のテキスト断片の語彙項目に依存関係を投射して、前記目標言語の依存構造を得るステップと
を備えることを特徴とする方法。
〔態様２２〕
前記投射するステップは、
前記原言語の依存構造中の語彙項目が前記目標言語のテキスト断片の語彙項目と並置されない場合は、前記原言語の依存構造中の前記並置されない語彙項目から前記目標言語のテキスト断片に依存関係を投射しないことを含むことを特徴とする態様２１に記載の方法。
〔態様２３〕
前記原言語の依存構造の依存関係は、前記原言語の依存構造中の第１の原語彙項目と第２の原語彙項目との間にあり、前記第１および第２の原語彙項目は、それぞれ前記目標言語のテキスト断片の第１および第２の目標語彙項目と並置され、投射するステップは、
前記第１の原語彙項目と前記第２の原語彙項目との間の前記依存関係を前記第１の目標語彙項目と第２の目標語彙項目に割り当てることを含むことを特徴とする態様２１に記載の方法。
〔態様２４〕
前記原言語の依存構造中の語彙項目は、前記目標言語のテキスト断片の複数の語彙項目と並置され、投射するステップは、
前記目標言語の依存構造中で前記複数の語彙項目の親ノードを特定するステップと、
前記目標言語のテキスト断片中の前記複数の語彙項目のうち一番右にある語彙項目を特定するステップと、
前記一番右にある語彙項目を前記親ノードからの依存要素として割り当てるステップと、
前記目標言語のテキスト断片中の前記複数の語彙項目の残りを前記一番右にある語彙項目からの依存要素として割り当てるステップと
を含むことを特徴とする態様２１に記載の方法。
〔態様２５〕
前記目標言語のテキスト断片中の並置されない語彙項目は、前記原言語の依存構造中の語彙項目と並置されず、投射するステップは、
前記目標言語のテキスト断片中で前記並置されない語彙項目のすぐ隣に位置する語彙項目を特定するステップと、
前記並置されない語彙項目を前記特定された語彙項目からの依存要素として割り当てるステップと
を含むことを特徴とする態様２１に記載の方法。
〔態様２６〕
特定するステップは、
前記目標言語のテキスト断片中の前記並置されない語彙項目の前後にある目標言語の語彙項目の集合の中で、前記目標言語の依存構造において最も低い１つの語彙項目を特定するステップと、
前記特定された語彙項目からの依存要素として前記並置されない語彙項目を割り当てるステップと
を含むことを特徴とする態様２５に記載の方法。
〔態様２７〕
前記原言語の依存構造中の複数の語彙項目が、前記目標言語のテキスト断片中の１つの語彙項目と並置され、投射するステップは、
前記原言語の依存構造中の複数の語彙項目の中で、前記原言語の依存構造において最も高い語彙項目を特定するステップと、
前記目標言語のテキスト断片中の前記１つの語彙項目に、前記原言語の依存構造中の前記複数の項目のうち前記特定された項目に関連付けられた依存関係を割り当てるステップと
を含むことを特徴とする態様２１に記載の方法。
〔態様２８〕
原言語の入力を目標言語の出力に変換する機械翻訳システムで使用するツリーレット翻訳対を特定する方法であって、
並置された、対訳構文依存関係構造の対からなるコーパスにアクセスするステップであって、各対は、語彙項目を表すノードを有する原言語の依存構造を含み、前記ノードは、目標言語の依存構造中の語彙項目を表すノードと並置されるステップと、
個々の原ノードと前記原言語の依存構造中で接続された原ノードの組合せを、語彙項目を特定する可能な原ツリーレットとして列挙し、前記目標言語の依存構造中で、前記列挙されたノードおよび接続されたノードの組合せと並置された対応する依存関係を、前記可能な原ツリーレットに対応する可能な目標ツリーレットとして列挙するステップと、
前記可能な原ツリーレットおよび可能な目標ツリーレットから、適切な形式のツリーレット翻訳対を抽出するステップと、
前記ツリーレット翻訳対をデータストアに記憶するステップと
を備えることを特徴とする方法。
〔態様２９〕
親ノードの各子ノードは、前記親ノードの他の子ノードと接続されるものとみなされることを特徴とする態様２８に記載の方法。
〔態様３０〕
前記原言語の依存構造はそれぞれ、原言語のテキスト断片を表し、列挙するステップは、
それら接続された部分が前記原言語のテキスト断片中で隣接しない単語の集合を表すかどうかに関係なく、前記原言語の依存構造の接続された部分を列挙するステップを含むことを特徴とする態様２８に記載の方法。
〔態様３１〕
前記原言語の依存構造は、原言語の依存関係ツリーを含み、列挙するステップは、
前記原言語の依存関係ツリーで非線形の分岐を表すノードの接続されたセットを列挙するステップ
を含むことを特徴とする態様２８に記載の方法。
〔態様３２〕
適切な形式のツリーレット翻訳対を抽出するステップは、
前記可能な原ツリーレット中の前記語彙項目が前記可能な目標ツリーレット中の語彙項目と並置され、前記可能な目標ツリーレット中の前記語彙項目が前記可能な原ツリーレットの語彙項目とのみ並置される場合のみ、前記可能な原ツリーレットとそれに対応する可能な目標ツリーレットを適切な形式のツリーレット翻訳対として抽出するステップを備えることを特徴とする態様２８に記載の方法。
〔態様３３〕
原言語の入力を目標言語の出力に変換する機械翻訳システムで使用するツリーレット翻訳対をトレーニングデータから特定するシステムであって、
並置された、対訳構文依存関係構造の対からなるコーパスにアクセスするように構成されたツリーレット対エクストラクタであって、各対は、語彙項目を表すノードを有する原言語の依存構造を含み、前記ノードは、目標言語の依存構造中の語彙項目を表すノードと並置されるエクストラクタを備え、
前記ツリーレット対エクストラクタはさらに、前記原言語の依存構造の接続された部分である原ノードの集合を可能な原ツリーレットとして列挙するように構成されることを特徴とするシステム。
〔態様３４〕
コンピュータによって実行されると、前記コンピュータに、原言語の入力を目標言語の出力に変換する機械翻訳システムで使用するツリーレット翻訳対を特定する方法を行わせるコンピュータ可読命令を記憶するコンピュータ可読媒体であって、前記方法は、
並置された、対訳構文依存関係構造の対からなるコーパスにアクセスするステップであって、各対は、語彙項目を表すノードを有する原言語の依存構造を含み、前記ノードは、目標言語の依存構造中の語彙項目を表すノードと並置されるステップと、
前記原言語の依存構造中の原ノードの接続された集合を可能な原ツリーレットとして列挙するステップと、
前記可能な原ツリーレットとそれに対応する目標言語の依存構造の並置された部分から、適切な形式のツリーレット翻訳対を抽出するステップと
を備えることを特徴とするコンピュータ可読媒体。
〔態様３５〕
機械翻訳システムで使用するデータ構造であって、
各対が、原テキスト断片に基づく原言語の構文依存構造の接続された部分を含む原言語部分と、前記原言語部分の語彙項目と並置された語彙項目および構文上の依存関係を有する目標言語部分とを有する、複数のツリーレット翻訳対を備え、前記原言語部分は、共通の親ノードに従属する、前記原言語の構文依存構造からの複数の子ノードを含むことを特徴とするデータ構造。
〔態様３６〕
原言語の依存構造、および前記原言語の依存構造のノードと目標言語の依存構造のノードとの並置を考慮して、前記目標言語の依存構造の順序付けにスコアを割り当てる方法であって、
原言語のテキスト断片を表す原言語の依存構造と目標言語の依存構造とを受け取るステップと、
前記目標言語の依存構造中で親ノードに直接従属する依存ノードの順序にスコアを割り当てるステップと
を備えることを特徴とする方法。
〔態様３７〕
前記目標言語の依存構造は、複数の親ノードを含み、前記依存ノードの順序にスコアを割り当てるステップは、
前記目標言語の依存構造中で前記複数の親ノードそれぞれに直接従属する依存ノードの順序にスコアを割り当てるステップ
を備えることを特徴とする態様３６に記載の方法。
〔態様３８〕
前記目標言語の依存構造は、複数のレベルを有する目標言語の依存関係ツリーを含み、スコアを割り当てるステップは、
前記複数レベルを有する目標言語の依存関係ツリーの他のレベルのノードの順序に関係なく、前記複数レベルを有する目標言語の依存関係ツリーの各レベルの依存ノードの順序にスコアを割り当てるステップと、
各レベルの前記スコアをともに組み合わせて、前記目標言語の依存構造全体の順序付けのスコアを割り当てるステップと
を含むことを特徴とする態様３６に記載の方法。
〔態様３９〕
各レベルの依存ノードの順序にスコアを割り当てるステップは、
前記目標言語の依存関係ツリーの各レベルで、順に、各ノードにスコアを割り当てるステップと、
各ノードに割り当てられた前記スコアを組み合わせて各レベルにスコアを割り当てるステップと
を含むことを特徴とする態様３８に記載の方法。
〔態様４０〕
各ノードにスコアを割り当てるステップは、
前記親ノードに対して位置のオフセットを有する各ノードの確率を計算するステップ
を含むことを特徴とする態様３９に記載の方法。
〔態様４１〕
前記原言語の依存構造は、前記目標言語の依存関係ツリーの前記ノードと並置されたノードを有し、各ノードのスコアを割り当てるステップは、
前記目標言語の依存関係ノード中の選択されたノードと並置された前記原言語の依存構造中のノードが、前記原言語の依存構造でその親ノードの前置修飾語または後置修飾語であった場合に、前記目標言語の依存関係ツリー中の前記選択されたノードが切り替わって、前記目標言語の依存構造中でその親ノードの前置修飾語または後置修飾語になる確率を計算するステップ
を含むことを特徴とする態様３９に記載の方法。
〔態様４２〕
各ノードにスコアを割り当てるステップは、
前記選択されたノードが、前記目標言語の依存関係ツリーの同じレベルにある他のノードに対してその親ノードに所与の近さを有する確率を計算するステップ
を含むことを特徴とする態様４１に記載の方法。
〔態様４３〕
各ノードにスコアを割り当てるステップは、
前記目標言語の依存関係ツリー中の選択されたノードが、前記目標言語の依存関係ツリーの同じレベルにある他のノードそれぞれに対して順序の位置を変え、前記選択されたノードと同じ修飾語関係を前記親ノードに対して有するべきかどうかを示すスコアを割り当てるステップ
を含むことを特徴とする態様４１に記載の方法。
〔態様４４〕
前記目標言語の依存構造の順序に割り当てられる前記スコアは、
前記依存ノードおよび前記親ノードに対応する目標単語、前記目標単語と並置された原単語、前記原言語の依存構造における前記原単語の位置、および前記原単語と目標単語それぞれの品詞、
を含む特性のセットの少なくとも一部を含む複数の特性に基づくことを特徴とする態様３６に記載の方法。
〔態様４５〕
並置された、対訳依存関係構造からなるコーパスに基づいて、依存ノードの順序にスコアを割り当てることを学習するステップをさらに備え、スコアを割り当てることを学習するステップは、
前記コーパス中の順序付けられた目標言語の依存構造から特性のセットを集めるステップと、
前記特性のセットに機械学習技術を使用して、原言語の依存構造、および前記原言語の依存構造と目標言語の依存構造間の並置を考慮して、目標言語の依存構造の順序付けにスコアを割り当てるためのモデルを作成するステップと
を含むことを特徴とする態様３６に記載の方法。
〔態様４６〕
原言語の依存構造、および原言語の依存構造のノードと前記目標言語の依存構造のノードとの間の並置を考慮して、目標言語依存構造の順序付けにスコアを割り当てるためのモデルであって、
前記原言語の依存構造の複数の原ノード、および前記原言語の依存構造のノードと前記目標言語の依存ノードとの間の並置を考慮して、前記目標言語の依存構造中の親ノードに従属する子ノードの順序にスコアを割り当てるように構成された順序モデル
を備えることを特徴とするモデル。
〔態様４７〕
モデルをトレーニングする方法であって、
並置された、対訳の原言語の依存構造と目標言語の依存構造からなるコーパスにアクセスするステップと、
前記コーパス中の特性のセットに基づいて、機械学習システムで目標言語の依存構造のノードの順序付けにスコアを割り当てるように前記モデルをトレーニングするステップと
を備えることを特徴とする方法。
【符号の説明】
【０１７２】
１２０  処理装置
１３０  システムメモリ
１３４  オペレーティングシステム
１３５  アプリケーションプログラム
１３６  他のプログラムモジュール
１３７  プログラムデータ
１４０  取り外し不能、不揮発性メモリインターフェース
１４４  オペレーティングシステム
１４５  アプリケーションプログラム
１４６  他のプログラムモジュール
１４７  プログラムデータ  
１５０  取り外し可能、不揮発性メモリインターフェース
１６０  ユーザ入力インターフェース
１６１  ポインティングデバイス
１６２  キーボード
１６３  マイクロフォン
１７０  ネットワークインターフェース
１７１  ローカルエリアネットワーク
１７２  モデム
１７３  ワイドエリアネットワーク
１８０  リモートコンピュータ
１８５  リモートアプリケーションプログラム
１９０  ビデオインターフェース
１９１  モニタ
１９５  出力周辺インターフェース
１９６  プリンタ
１９７  スピーカ
２０２  文並置された大きな対訳コーパス
２０４  ツリーレット翻訳対データベース
２０６  順序モデル
２０８  一致モデル
２１０  翻訳確率テーブル
２１２  目標言語モデル
２１４  原言語依存関係構文解析コンポーネント
２１６  目標言語語分割コンポーネント
２１８  教師なし語並置コンポーネント
２２０  依存関係ツリー投射コンポーネント
２２２  目標言語モデルトレーニングコンポーネント
２２４  ツリーレット対エクストラクタ
２２６  順序モデルトレーニングコンポーネント
２２８  一致モデルトレーニングコンポーネント
２５６  語分割された対訳コーパス
２５８  語並置された対訳コーパス
２６２  原言語依存関係ツリー
４００  語並置された、対訳依存関係ツリーコーパス
６０２  モデルの重み
６０４  ツリーレット翻訳対一致コンポーネント
６０６  原言語依存関係構文解析コンポーネント
６０８  デコーダ
６１０  入力文
６１４  原言語の依存関係ツリー
６１８  ツリーレット翻訳対
６２１  上位Ｎ個の翻訳
【図１】
2014142975.tif 000011
【図２】
2014142975.tif 000012
【図３】
2014142975.tif 000013
【図４Ａ】
2014142975.tif 000014
【図４Ｂ】
2014142975.tif 000015
【図４Ｃ】
2014142975.tif 000016
【図４Ｄ】
2014142975.tif 000017
【図５Ａ】
2014142975.tif 000018
【図５Ｂ】
2014142975.tif 000019
【図６】
2014142975.tif 000020
【図６Ａ】
2014142975.tif 000021
【図６Ｂ】
2014142975.tif 000022
【図６Ｃ】
2014142975.tif 000023
【図６Ｄ】
2014142975.tif 000024
【図６Ｅ】
2014142975.tif 000025
【図６Ｆ】
2014142975.tif 000026
【図７】
2014142975.tif 000027
【図７Ａ】
2014142975.tif 000028
【図７Ｂ】
2014142975.tif 000029
【図７Ｃ】
2014142975.tif 000030
【図７Ｄ】
2014142975.tif 000031
【図７Ｅ】
2014142975.tif 000032
【図７Ｆ】
2014142975.tif 000033
【図８Ａ】
2014142975.tif 000034
【図８Ｂ】
2014142975.tif 000035
【図８Ｃ】
2014142975.tif 000036
【図８Ｄ】
2014142975.tif 000037
【図８Ｅ】
2014142975.tif 000038
【図８Ｆ】
2014142975.tif 000039
【図８Ｇ】
2014142975.tif 000040
【図８Ｈ】
2014142975.tif 000041
【図８Ｉ】
2014142975.tif 000042
【図８Ｊ】
2014142975.tif 000043
【図９Ａ】
2014142975.tif 000044
【図９Ｂ】
2014142975.tif 000045
【図９Ｃ】
2014142975.tif 000046
【図１０Ａ】
2014142975.tif 000047
【図１０Ｂ】
2014142975.tif 000048
【図１０Ｃ】
2014142975.tif 000049
【図１０Ｄ】
2014142975.tif 000050
【図１１Ａ】
2014142975.tif 000051
【図１１Ｂ】
2014142975.tif 000052
【図１１Ｃ】
2014142975.tif 000053
【図１２】
2014142975.tif 000054
【図１３】
2014142975.tif 000055
【図１４Ａ】
2014142975.tif 000056
【図１４Ｂ】
2014142975.tif 000057
【図１４Ｃ】
2014142975.tif 000058
【図１４Ｄ】
2014142975.tif 000059
【図１５】
2014142975.tif 000060