(57)【要約】【課題】システムに依存せず正確に翻訳文の信頼度を算出し、翻訳文を選択できるようにする。【解決手段】この方法は、バイリンガルコーパスに含まれるソース文のうち、原文と意味上で最も類似したものを特定するようコンピュータシステムを動作させるステップ２８４、２８８と、複数個の翻訳結果のうち、特定されたソース文に対応するターゲット文との意味上の類似度を予め特定された算出方法により算出し、得られた類似度を翻訳の信頼度として出力するステップ２８８，２９０，２９２とを含む。そのために、原文の意味マーカ列と最も小さなＤＰ距離を持つソース文の意味マーカ列を定め（２８８）、それに対応するターゲット文の意味マーカ列との間のＤＰ距離を基準に翻訳結果を選択する（２９２，２９６）。【選択図】　　　図７
2004102942.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ上で処理可能な形式の原文と、当該原文に対する、コンピュータ上で処理可能な形式の翻訳とに基づいて、前記翻訳の信頼度を算出するようにコンピュータシステムを動作させる方法であって、
前記コンピュータシステムの処理可能な形式のバイリンガルコーパスを準備するステップと、前記バイリンガルコーパスは第１の言語のソース文と、第２の言語の、前記ソース文の正当な翻訳であるターゲット文とからなる文ペアを複数個含み、
前記バイリンガルコーパスに含まれるソース文のうち、前記原文と意味上で最も類似したものを特定するよう前記コンピュータシステムを動作させる第１のステップと、
前記複数個の翻訳のうち、前記特定されたソース文に対応するターゲット文との意味上の類似度を予め特定された算出方法により算出し、得られた類似度を翻訳の信頼度として出力する第２のステップとを含む、翻訳の信頼度を算出するようにコンピュータを動作させる方法。
【請求項２】
前記第１のステップは、
前記原文に含まれる単語の意味を示す意味マーカからなる原文の意味マーカ列を生成するステップと、
前記バイリンガルコーパスに含まれる各ソース文に含まれる単語の意味を示す意味マーカからなるソース文の意味マーカ列を各ソース文ごとに生成するステップと、
前記原文の意味マーカ列と前記ソース文の意味マーカ列との間で予め定義された距離を算出し、前記原文の意味マーカ列と最も小さな距離を持つソース文の意味マーカ列に対応するソース文を前記原文と意味上で最も類似したものとして特定するステップとを含む、請求項１に記載の方法。
【請求項３】
前記予め定義された距離は、前記原文の意味マーカ列と前記ソース文の意味マーカ列との間で前記コンピュータシステムにより実行される動的プログラミングマッチングにより算出される距離である、請求項２に記載の方法。
【請求項４】
前記方法は、前記コンピュータシステムが処理可能な形式の前記第１の言語の意味辞書を準備するステップをさらに含み、前記第１の言語の意味辞書は、前記第１の言語のうちの予め選択された単語ごとに、１または複数個の対応する意味マーカをリストしたものであり、
前記原文の意味マーカ列を生成するステップは、前記原文に含まれる各単語ごとに前記意味辞書を参照し、対応する意味マーカがあればそれを取出して単語に対応して順番に意味マーカ列に追加するステップを含む、請求項３に記載の方法。
【請求項５】
前記第２のステップは、
前記翻訳に含まれる単語の意味を示す意味マーカからなる翻訳の意味マーカ列を生成するステップと、
前記バイリンガルコーパスに含まれる各ターゲット文に含まれる単語の意味を示す意味マーカからなるターゲット文の意味マーカ列のリストを生成し、対応するソース文に関連付けて前記コンピュータシステムが利用可能なように記憶するステップと、
前記翻訳の意味マーカ列と、前記第１のステップで特定されたソース文に対応するターゲット文の意味マーカ列のリストとの間で予め定義された距離を算出して前記翻訳の信頼度として出力するステップとを含む、請求項１から請求項４のいずれかに記載の方法。
【請求項６】
前記予め定義された距離は、前記翻訳の意味マーカ列と前記ターゲット文の意味マーカ列との間で前記コンピュータシステムにより実行される動的プログラミングマッチングにより算出される距離である、請求項５に記載の方法。
【請求項７】
前記方法は、前記コンピュータシステムが処理可能な形式の前記第２の言語の意味辞書を準備するステップをさらに含み、前記第２の言語の意味辞書は、前記第２の言語のうちの予め選択された単語ごとに、１または複数個の対応する意味マーカをリストしたものであり、
前記翻訳の意味マーカ列を生成するステップは、前記翻訳に含まれる各単語ごとに前記第２の言語の意味辞書を参照し、対応する意味マーカがあればそれを取出して単語に対応して順番に意味マーカ列に追加するステップを含む、請求項６に記載の方法。
【請求項８】
ある原文に対応する複数個の翻訳の中から一つの翻訳を選択するようにコンピュータシステムを動作させる方法であって、
前記複数個の翻訳の各々に対して、請求項１から請求項７のいずれかに記載の方法を用いて翻訳の信頼度を算出するように前記コンピュータシステムを動作させるステップと、
最も良い値の信頼度が算出された翻訳を選択するように前記コンピュータを動作させるステップとを含む方法。
【請求項９】
第１の言語のソース文と、第２の言語の、前記ソース文の正当な翻訳であるターゲット文とからなる文ペアを複数個含むバイリンガルコーパスから生成される意味対応表を記憶した記憶媒体であって、
前記意味対応表は、前記ソース文ごとに設けられた項目を含み、
各前記項目は、
対応するソース文に含まれる単語の意味を表わす意味マーカのリストであるソース文ごとの意味マーカ列と、
各前記ソース文に対応するターゲット文に含まれる単語の意味を表わす意味マーカのリストである意味マーカ列のリストとを含む、記憶媒体。
【請求項１０】
コンピュータシステム上で処理可能な形式の原文と、当該原文に対する、コンピュータシステム上で処理可能な形式の翻訳とに基づいて、前記コンピュータシステムに処理可能な形式のバイリンガルコーパスを用いて前記翻訳の翻訳の信頼度を算出するようにコンピュータシステムを動作させるプログラムであって、
前記バイリンガルコーパスは第１の言語のソース文と、第２の言語の、前記ソース文の正当な翻訳であるターゲット文とからなる文ペアを複数個含み、
前記プログラムは、
前記バイリンガルコーパスに含まれるソース文のうち、前記原文と意味上で最も類似したものを特定するよう前記コンピュータシステムを動作させる第１のプログラム部分と、
前記複数個の翻訳のうち、前記特定されたソース文に対応するターゲット文との意味上の類似度を予め特定された算出方法により算出し、得られた類似度を翻訳の信頼度として出力する第２のプログラム部分とを含む、翻訳の信頼度を算出するようにコンピュータを動作させるプログラム。
【請求項１１】
前記第１のプログラム部分は、
前記原文に含まれる単語の意味を示す意味マーカからなる原文の意味マーカ列を生成するプログラム部分と、
前記バイリンガルコーパスに含まれる各ソース文に含まれる単語の意味を示す意味マーカからなるソース文の意味マーカ列を各ソース文ごとに生成するプログラム部分と、
前記原文の意味マーカ列と前記ソース文の意味マーカ列との間で予め定義された距離を算出し、前記原文の意味マーカ列と最も小さな距離を持つソース文の意味マーカ列に対応するソース文を前記原文と意味上で最も類似したものとして特定するプログラム部分とを含む、請求項１０に記載のプログラム。
【請求項１２】
前記予め定義された距離は、前記原文の意味マーカ列と前記ソース文の意味マーカ列との間で前記コンピュータシステムにより実行される動的プログラミングマッチングにより算出される距離である、請求項１１に記載のプログラム。
【請求項１３】
前記プログラムは、前記コンピュータシステムが処理可能な形式の前記第１の言語の意味辞書をさらに利用するものであり、前記第１の言語の意味辞書は、前記第１の言語のうちの予め選択された単語ごとに、１または複数個の対応する意味マーカをリストしたものであり、
前記原文の意味マーカ列を生成するプログラム部分は、前記原文に含まれる各単語ごとに前記意味辞書を参照し、対応する意味マーカがあればそれを取出して単語に対応して順番に意味マーカ列に追加するプログラム部分を含む、請求項１２に記載のプログラム。
【請求項１４】
前記第２のプログラム部分は、
前記翻訳に含まれる単語の意味を示す意味マーカからなる翻訳の意味マーカ列を生成するプログラム部分と、
前記バイリンガルコーパスに含まれる各ターゲット文に含まれる単語の意味を示す意味マーカからなるターゲット文の意味マーカ列のリストを生成し、対応するソース文に関連付けて前記コンピュータシステムが利用可能なように記憶媒体に記憶させるためのプログラム部分と、
前記翻訳の意味マーカ列と、前記第１のステップで特定されたソース文に対応するターゲット文の意味マーカ列のリストとの間で予め定義された距離を算出して前記翻訳の信頼度として出力するためのプログラム部分とを含む、請求項１０から請求項１３のいずれかに記載のプログラム。
【請求項１５】
前記予め定義された距離は、前記翻訳の意味マーカ列と前記ターゲット文の意味マーカ列との間で前記コンピュータシステムにより実行される動的プログラミングマッチングにより算出される距離である、請求項１４に記載のプログラム。
【請求項１６】
前記プログラムは、前記コンピュータシステムが処理可能な形式の前記第２の言語の意味辞書をさらに用いるものであり、前記第２の言語の意味辞書は、前記第２の言語のうちの予め選択された単語ごとに、１または複数個の対応する意味マーカをリストしたものであり、
前記翻訳の意味マーカ列を生成するプログラム部分は、前記翻訳に含まれる各単語ごとに前記第２の言語の意味辞書を参照し、対応する意味マーカがあればそれを取出して単語に対応して順番に意味マーカ列に追加するプログラム部分を含む、請求項１５に記載のプログラム。
【請求項１７】
ある原文に対応する複数個の翻訳の中から一つの翻訳を選択するようにコンピュータシステムを動作させるプログラムであって、
前記複数個の翻訳の各々に対して、請求項１０から請求項１６のいずれかに記載のプログラムを用いて翻訳の信頼度を算出するように前記コンピュータシステムを動作させるプログラム部分と、
最も良い値の信頼度が算出された翻訳を選択するように前記コンピュータを動作させるプログラム部分とを含むプログラム。
【請求項１８】
コンピュータ上で処理可能な形式の第１の言語の原文と、当該原文に対する、コンピュータ上で処理可能な形式の第２の言語の翻訳とに基づいて、前記翻訳の信頼度を算出するようにコンピュータシステムを動作させる方法であって、
前記原文に含まれる内容語列を抽出するよう前記コンピュータシステムを動作させる第１のステップと、
前記翻訳から内容語列を抽出するよう前記コンピュータシステムを動作させる第２のステップと、
前記第１のステップで抽出された内容語列に含まれる内容語と、前記第２のステップで抽出された内容語列に含まれる内容語との対応関係に基づいて前記翻訳の信頼度を算出するようコンピュータシステムを動作させる第３のステップとを含む、方法。
【請求項１９】
前記第３のステップは、
前記第１のステップで抽出された内容語列に含まれる内容語と、前記第２のステップで抽出された内容語列に含まれる内容語とを対応付けるよう前記コンピュータシステムを動作させるステップと、
前記対応付けるステップで対応付けられた内容語を互いに同一とみなして、前記第１のステップで抽出された内容語列に含まれる内容語の集合と、前記第２のステップで抽出された内容語列に含まれる内容語の集合との、要素の重複の度合いを表わす指標を算出し、前記信頼度として出力するよう前記コンピュータシステムを動作させるステップとを含む、請求項１８に記載の方法。
【請求項２０】
前記対応付けるステップは、前記第１の言語の単語と前記第２の言語の単語との、コンピュータシステムが利用可能な予め準備された対訳辞書を参照し、前記第１のステップで抽出された内容語列中の内容語の対訳中に前記第２のステップで抽出された内容語列中の内容語があるか否かによって対応関係の有無を判定するよう前記コンピュータシステムを動作させるステップを含む、請求項１９に記載の方法。
【請求項２１】
前記対応付けるステップはさらに、
予め準備された前記第１の言語の意味辞書を参照して、前記第１のステップで抽出された内容語列中の内容語と、前記第２のステップで抽出された内容語列中の内容語とに同じ意味マーカが対応するか否かを判定するよう前記コンピュータシステムを動作させるステップを含む、請求項２０に記載の方法。
【請求項２２】
前記対応付けるステップはさらに、
バイリンガルコーパスにおける前記第１の言語の単語と前記第２の言語の単語との共起関係の、コンピュータシステムにより利用可能な統計情報を準備するステップと、
前記第１のステップで抽出された内容語列中の内容語と、前記第２のステップで抽出された内容語列中の内容語との共起関係に関する前記統計情報によって、前記第１のステップで抽出された内容語列中の内容語と、前記第２のステップで抽出された内容語列中の内容語とが対応するか否かを判定するよう前記コンピュータシステムを動作させるステップを含む、請求項２１に記載の方法。
【請求項２３】
ある原文に対応する複数個の翻訳の中から、一つの翻訳を選択するようにコンピュータシステムを動作させる方法であって、
前記複数個の翻訳の各々に対して、請求項１８から請求項２２のいずれかに記載の方法を用いて翻訳の信頼度を算出するように前記コンピュータシステムを動作させるステップと、
最も良い値の信頼度が算出された翻訳を選択するように前記コンピュータを動作させるステップとを含む方法。
【請求項２４】
コンピュータ上で処理可能な形式の第１の言語の原文と、当該原文に対する、コンピュータ上で処理可能な形式の第２の言語の翻訳とに基づいて、前記翻訳の信頼度を算出するようにコンピュータシステムを動作させるプログラムであって、
前記原文に含まれる内容語列を抽出するよう前記コンピュータシステムを動作させる第１のプログラム部分と、
前記翻訳から内容語列を抽出するよう前記コンピュータシステムを動作させる第２のプログラム部分と、
前記第１のプログラム部分により抽出された内容語列に含まれる内容語のと、前記第２のステップにより抽出された内容語列に含まれる内容語との対応関係に基づいて前記翻訳の信頼度を算出するようコンピュータシステムを動作させる第３のプログラム部分とを含む、プログラム。
【請求項２５】
前記第３のプログラム部分は、
前記第１のプログラム部分により抽出された内容語列に含まれる内容語と、前記第２のプログラム部分により抽出された内容語列に含まれる内容語とを対応付けるよう前記コンピュータシステムを動作させるプログラム部分と、
前記対応付けるプログラム部分により対応付けられた内容語を互いに同一とみなして、前記第１のプログラム部分により抽出された内容語列に含まれる内容語の集合と、前記第２のプログラム部分により抽出された内容語列に含まれる内容語の集合との、積集合の要素数と和集合の要素数との比を算出し、前記信頼度として出力するよう前記コンピュータシステムを動作させるプログラム部分とを含む、請求項２４に記載のプログラム。
【請求項２６】
前記対応付けるプログラム部分は、前記第１の言語の単語と前記第２の言語の単語との、コンピュータシステムが利用可能な予め準備された対訳辞書を参照し、前記第１のプログラム部分により抽出された内容語列中の内容語の対訳中に前記第２のプログラム部分により抽出された内容語列中の内容語があるか否かによって対応関係の有無を判定するよう前記コンピュータシステムを動作させるプログラム部分を含む、請求項２５に記載のプログラム。
【請求項２７】
前記対応付けるプログラム部分はさらに、
予め準備された前記第１の言語の意味辞書を参照して、前記第１のプログラム部分により抽出された内容語列中の内容語と、前記第２のプログラム部分により抽出された内容語列中の内容語とに同じ意味マーカが付されているか否かを判定するよう前記コンピュータシステムを動作させるプログラム部分を含む、請求項２５に記載のプログラム。
【請求項２８】
前記対応付けるプログラム部分はさらに、
バイリンガルコーパスにおける前記第１の言語の単語と前記第２の言語の単語との共起関係の、コンピュータシステムにより利用可能な統計情報を参照するプログラム部分と、
前記第１のプログラム部分により抽出された内容語列中の内容語と、前記第２のプログラム部分により抽出された内容語列中の内容語との共起関係に関する前記統計情報を参照することによって、前記第１のプログラム部分により抽出された内容語列中の内容語と、前記第２のプログラム部分により抽出された内容語列中の内容語とが対応するか否かを判定するよう前記コンピュータシステムを動作させるプログラム部分を含む、請求項２７に記載のプログラム。
【請求項２９】
ある原文に対応する複数個の翻訳の中から、一つの翻訳を選択するようにコンピュータシステムを動作させるプログラムであって、
前記複数個の翻訳の各々に対して、請求項２４から請求項２８のいずれかに記載のプログラムを用いて翻訳の信頼度を算出するように前記コンピュータシステムを動作させるプログラム部分と、
最も良い値の信頼度が算出された翻訳を選択するように前記コンピュータを動作させるプログラム部分とを含む、プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、一般的には機械翻訳装置に関し、特に、複数の機械翻訳システムの出力から所定の基準にしたがって最良の出力を選択することにより機械翻訳の精度を向上させるための技術に関する。
【０００２】
【従来の技術】
コンピュータ技術の発達により、コンピュータを利用した翻訳システム（機械翻訳システム）もほぼ実用の域に達しているといえる。たとえば外国語のホームページを即座に自国語に翻訳するシステム、複数国の参加者の間でキーボード入力を用いて会議をする際に、他の言語での発言を即座に自国語に翻訳するシステム、日本語の特許公報を求めに応じて直ちに英語に翻訳するシステムなどがあり、今後ますます利用される局面が広がることが予想される。
【０００３】
しかしながら、そうした機械翻訳システムの翻訳結果に依然として改善の余地があることも確かである。機械翻訳の精度の改善のための方策として最初に挙げられるのは、個々の機械翻訳システムを構成するソフトウェアの改善である。しかし、そうした改善を行なったとしても、それぞれの機械翻訳システムに得手・不得手は依然として残り得る。しかも、従来の機械翻訳システムは、その出力に高品質な訳と低品質な訳とが混在し得るにもかかわらず、その品質のめやすを示すことなく翻訳結果を出力している。これはちょうど、無害なキャンデーの中に毒入りのキャンデーが混じって入っているキャンデーの入れ物に似ている。だれもそれを取出して口にしようとは思わない。
【０００４】
そこで、翻訳精度の改善の方策として、複数の機械翻訳システムの出力の品質をそれぞれ定め、品質が最も高いと思われるものを自動的に選ぶという方法が考えられる。ある原文に対する第１の機械翻訳システムの翻訳結果が第２の機械翻訳システムの翻訳結果よりも好ましい場合には、第１の機械翻訳システムの翻訳結果を選択し、逆の場合には第２の機械翻訳システムを選ぶ。そうすることにより、最終的に生成される翻訳結果は、第１の機械翻訳システムおよび第２の機械翻訳システムが個々に生成する翻訳結果よりも好ましいものになることが予測できる。
【０００５】
機械翻訳システムの出力の品質を以下「（翻訳の）信頼度」と呼ぶ。信頼度には二種類あると考えられる。システムに依存するものと、システムに依存しないものとである。
【０００６】
システムに依存する信頼度とは、システムが自己の知識と処理手続とに基づいて計算するものである。たとえば後に挙げる非特許文献１のＥＢＭＴ（Ｅｘａｍｐｌｅ−ｂａｓｅｄ　Ｍａｃｈｉｎｅ　Ｔｒａｎｓｌａｔｉｏｎ）で用いられた類似度スコア、非特許文献２のＳＭＴ中で使用された確率などが典型的なものである。しかしこれらは、適用可能なシステムが限られている点で好ましくない。
【０００７】
システムに依存しない信頼度は、システムの内部情報を参照しない。ターゲット言語のコーパスのＮグラム統計（Ｎ個の特定の単語が特定の順番で並ぶ確率を種々のＮ個の単語に対してコーパスから統計的に求めたもの）が提案されている。たとえば後に挙げる非特許文献３および４である。
【０００８】
これらは以下の仮定に基づいている。
【０００９】
（１）　翻訳文の流暢さは良い翻訳を選択する上で役に立つ。なぜなら、翻訳過程での誤りによりターゲット文がまともなものにならかった場合、それをよく反映するからである。
【００１０】
（２）最新の翻訳システムではソース言語とターゲット言語との間での対応関係は、意味という観点から見ると多くの場合保存されている。
【００１１】
しかし２番目の仮定は常に成立つわけではない。
【００１２】
種々の理由により複数の翻訳を生成することがある。たとえば複数の翻訳エンジンを採用した結果、自動的な後編集または言換えの結果、解析中における複数通りの解釈の結果などである。
【００１３】
出願人も機械翻訳システムを複数個開発している。仮に前述したように複数個の機械翻訳システムの翻訳結果のうち最良のものを選ぶ理想的なシステムを実現した場合の結果を次のようにしてシミュレートした。３個の日英翻訳システムとしてｈＴＤＭＴ，ＥＢＭＴおよびＳＭＴと呼ばれるものを採用し、これら３個の日英翻訳システムの各々について、その翻訳結果を、翻訳のソース言語に堪能な、翻訳のターゲット言語のネイティブスピーカが評価し、４つのランクＡ，Ｂ，ＣおよびＤに分類した。
【００１４】
ランクＡとは、翻訳に原文の情報が漏れなく含まれ、かつ文法的な問題もないものをいう。ランクＢは、翻訳が容易に理解可能であるが、あまり重要でない情報が一部漏れていたり、文法的に一部誤りがあったりするものをいう。ランクＣとは、原文の重要な情報が漏れていたり、文法的な間違いが大分あって、かなり崩れた訳であるが、よく考えれば理解可能なものをいう。ランクＤとは、重要な情報が誤って翻訳され、理解不能なものをいう。訳文とランク付けの例を以下に示す。
【００１５】
（原文）「お支払いは現金ですか、クレジットカードですか？」
（訳文１）［Ｂ］Ｉｓ　ｔｈｅ　ｐａｙｍｅｎｔ　ｃａｓｈ？　Ｏｒ　ｉｓ　ｉｔ　ｔｈｅ　ｃｒｅｄｉｔ　ｃａｒｄ？
（訳文２）［Ａ］Ｗｏｕｌｄ　ｙｏｕ　ｌｉｋｅ　ｔｏ　ｐａｙ　ｉｎ　ｃａｓｈ　ｏｒ　ｗｉｔｈ　ａ　ｃｒｅｄｉｔ　ｃａｒｄ？
（訳文３）［Ｃ］Ｃｏｕｌｄ　ｙｏｕ　ｃａｓｈ　ｏｒ　ｃｒｅｄｉｔ　ｃａｒｄ？
これら３個の日英翻訳システムの翻訳のうち、翻訳のソース言語に堪能な、翻訳のターゲット言語のネイティブスピーカの評価が最も高い翻訳を選択することができる理想的なシステムを想定した。その結果を、各日英翻訳システムの翻訳結果とともに図１６に示す。
【００１６】
図１６において、最も左側の「Ａ」とラベル付けされた個所には、各日英翻訳システムの翻訳のうち「Ａ」評価を受けた文の割合と、それらの組合わせのうちで最良の評価を受けた文を選択した理想的選択システムでの「Ａ」評価の割合とを百分率で示す。
【００１７】
図１６において、中央の「Ａ＋Ｂ」とラベル付けされた個所には、各日英翻訳システムの翻訳のうち「Ａ」評価を受けた文と「Ｂ」評価を受けた文との合計の割合と、それらの組合わせのうちで最良の評価を受けたものを選択した理想的選択システムでの「Ａ」評価および「Ｂ」評価の合計の割合とを百分率で示す。
【００１８】
図１６において、最も右の「Ａ＋Ｂ＋Ｃ」とラベル付けされた個所には、各日英翻訳システムの翻訳のうち「Ａ」評価を受けた文と「Ｂ」評価を受けた文と「Ｃ」評価を受けた文との合計の割合と、それらの組合わせのうちで最良の評価を受けたものを選択した理想的選択システムでの「Ａ」「Ｂ」「Ｃ」評価の合計の割合とを百分率で示す。
【００１９】
図１６から分かるように、複数個の機械翻訳システムの出力のうち最良のものを選択することにより、最終的な機械翻訳の精度はかなり高くなることが分かる。そこで、このように複数個の機械翻訳システムの出力の中から最良と思われるものを選択するための、翻訳の信頼度をどのように定めるかが問題となる。
【００２０】
なお、信頼度の使用方法には二通りある。単一の信頼度を用いるものと複数の信頼度を用いるものとである。
【００２１】
単一信頼度を用いる方法は、一種類の信頼度のみを用いて複数の翻訳の順位をつける。この手法が効率的であることは、たとえば後に挙げる非特許文献３、４などにも示されている。
【００２２】
しかし、単一信頼度を用いたとしても、それによって翻訳を選択する際の性能が最も高くなるとは仮定できない。それに対して複数信頼度を用いる方法では、各信頼度は、翻訳の質のうちそれぞれ特定の局面をよく反映していると考えることができる。したがって、より正確に翻訳を選択できるようにするためには、複数信頼度の組合せを用いた方がよいであろう。
【００２３】
これまで、複数の信頼度を用いる方法として以下が提案されている。すなわち（１）複数の信頼度の尺度をあわせるための学習（非特許文献５）および（２）複数の信頼度と決定木の学習との組合せ（非特許文献６および７）である。
【００２４】
【非特許文献１】
ソマース（Ｓｏｍｅｒｓ，　Ｈ）著「レビュー論文：例ベースの機械翻訳（１９９９　Ｒｅｖｉｅｗ　Ａｒｔｉｃｌｅ：　Ｅｘａｍｐｌｅ−ｂａｓｅｄ　Ｍａｃｈｉｎｅ　Ｔｒａｎｓｌａｔｉｏｎ）」機械翻訳ジャーナル（Ｊｏｕｒｎａｌ　ｏｆ　Ｍａｃｈｉｎｅ　Ｔｒａｎｓｌａｔｉｏｎ）、１９９９年、ｐｐ．１１３−１５７
【非特許文献２】
ネイ（Ｎｅｙ，　Ｈ）、オホ（Ｏｃｈ，　Ｆ．　Ｊ．）、およびヴォーゲル（Ｖｏｇｅｌ，　Ｓ．）著「ヴァーモビルシステムにおける会話の統計的翻訳（Ｓｔａｔｉｓｔｉｃａｌ
Ｔｒａｎｓｌａｔｉｏｎ　ｏｆ　Ｓｐｏｋｅｎ　Ｄｉａｌｏｇｕｅｓ　ｉｎ　ｔｈｅ　Ｖｅｒｍｏｂｉｌ　Ｓｙｓｔｅｍ）」、ＭＳＣ２００予稿集、２０００年、ｐｐ．６９−７４
【非特許文献３】
カキ（Ｋａｋｉ，　Ｓ）、ヤマダ（Ｙａｍａｄａ，　Ｓ）およびスミタ（Ｓｕｍｉｔａ，　Ｅ）著、「文字Ｎ−グラムを用いた複数翻訳のスコアリング（Ｓｃｏｒｉｎｇ　Ｍｕｌｔｉｐｌｅ
Ｔｒａｎｓｌａｔｉｏｎｓ　Ｕｓｉｎｇ　Ｃｈａｒａｃｔｅｒ　Ｎ−ｇｒａｍ）」、ＮＬＰＲＳ予稿集、２０００年、ｐｐ．２９８−３０２
【非特許文献４】
キャリソン−バーチ（Ｃａｌｌｉｓｏｎ−Ｂｕｒｃｈ，　Ｃ）、フルモイ（Ｆｌｕｏｍｏｙ，　Ｓ）著、「複数の機械翻訳エンジンから最良の出力を自動的に選択するプログラム（Ａ　Ｐｒｏｇｒａｍ　ｆｏｒ　Ａｕｔｏｍａｔｉｃａｌｌｙ　Ｓｅｌｅｃｔｉｎｇ　ｔｈｅ　Ｂｅｓｔ　Ｏｕｔｐｕｔ　ｆｒｏｍ　ＭｕｌｔｉｐｌｅＭａｃｈｉｎｅ　Ｔｒａｎｓｌａｉｔｉｏｎ　Ｅｎｇｉｎｅｓ）」ＭＴ−ＳＵＭＭＩＴ−ＶＩＩＩ予稿集、２００１年
【非特許文献５】
ティダー、Ｄ．（Ｔｉｄｈａｒ，　Ｄ）、キュスナー　Ｕ．（Ｋｕｅｓｓｎｅｒ，　Ｕ．）著、「良好な翻訳を選択するための学習（Ｌｅａｒｎｉｎｇ　ｔｏ　Ｓｅｌｅｃｔ　ａ　Ｇｏｏｄ　Ｔｒａｎｓｌａｔｉｏｎ）」、Ｃｏｌｉｎｇ−２０００予稿集、２０００年
【非特許文献６】
アキバ（Ａｋｉｂａ，　Ｙ）、イマムラ（Ｉｍａｍｕｒａ，　Ｋ）、スミタ（Ｓｕｍｉｔａ，　Ｅ）著、「機械翻訳出力を自動的にランク付けするための複数の編集距離の使用（Ｕｓｉｎｇ　ｍｕｌｔｉｐｌｅ　Ｅｄｉｔ　Ｄｉｓｔａｎｃｅｓ　ｔｏ　ａｕｔｏｍａｔｉｃａｌｌｙ　ｒａｎｋ　ｍａｃｈｉｎｅｔｒａｎｓｌａｔｉｏｎ　ｏｕｔｐｕｔ）」、ＭＴ−ＳＵＭＭＩＴ−ＶＩＩＩ予稿集、２００１年
【非特許文献７】
ヤスダ（Ｙａｓｕｄａ，　Ｋ）、スガヤ（Ｓｕｇａｙａ，　Ｆ），タケザワ（Ｔａｋｅｚａｗａ，　Ｔ）、ヤマモト（Ｙａｍａｍｏｔｏ，　Ｓ）、ヤナギダ（Ｙａｎａｇｉｄａ，　Ｍ）著、「最良の結果を出力するための、自動的な機械翻訳選択方式（Ａｕｔｏｍａｔｉｃ
Ｍａｃｈｉｎｅ　Ｔｒａｎｓｌａｔｉｏｎ　Ｓｅｌｅｃｔｉｏｎ　Ｓｃｈｅｍｅ　ｔｏ　Ｏｕｔｐｕｔ　ｔｈｅ　Ｂｅｓｔ　Ｒｅｓｕｌｔ）」、ＬＲＥＣ予稿集、２００２年
【非特許文献８】
スー（Ｓｕ，　Ｋ．　−Ｙ．）、ウー（Ｗｕ，　Ｎ，　−Ｗ．），チャン（Ｃｈａｎｇ，　Ｊ．　−Ｓ．）著、「機械翻訳システムのための新規な品質の定量尺度（Ａ　ｎｅｗ　ｑｕａｎｔｉｔａｔｉｖｅ
ｑｕａｌｉｔｙ　ｍｅａｓｕｒｅ　ｆｏｒ　ｍａｃｈｉｎｅ　ｔｒａｎｓｌａｔｉｏｎ　ｓｙｓｔｅｍｓ）」、Ｃｏｌｉｎｇ予稿集、ｐｐ．４３３―４３９
【非特許文献９】
ヤスダ（Ｙａｓｕｄａ，　Ｋ）、スガヤ（Ｓｕｇａｙａ，　Ｆ），タケザワ（Ｔａｋｅｚａｗａ，　Ｔ）、ヤマモト（Ｙａｍａｍｏｔｏ，　Ｓ）、ヤナギダ（Ｙａｎａｇｉｄａ，　Ｍ）著、「パラレルコーパスからクエリにより取出した翻訳の解答候補を用いた、翻訳品質の自動評価方法（Ａｎ　ａｕｔｏｍａｔｉｃ　ｅｖａｌｕａｔｉ　ｍｅｔｈｏｄ　ｏｆ　ｔｒａｎｓｌａｔｉｏｎ　ｑｕａｌｉｔｙ　ｕｓｉｎｇｔｒａｎｓｌａｔｉｏｎ　ａｎｓｗｅｒ　ｃａｎｄｉｄａｔｅｓ　ｑｕｅｒｉｅｄ　ｆｒｏｍ　ａ　ｐａｒａｌｌｅｌ　ｃｏｒｐｕｓ）」、ＭＴ−ＳＵＭＭＩＴ−ＶＩＩＩ予稿集、２００１年
【発明が解決しようとする課題】
システムに依存する信頼度は、別のシステムには使用できない。したがって信頼度としてシステムに依存しないものを用いることが望ましい。システムに依存しない信頼度が複数あれば、どのようなシステムでもそれらを複数用いることができるようになるという意味でも好ましい。
【００２５】
システムに依存しないものとして、前述のコーパスから得たＮグラム統計を用いるものがある。しかしこの方法はターゲット言語の言語情報のみを利用しており、ソース言語の文に含まれている情報が過不足なく翻訳文中に含まれているか否かは考慮していない。そのため、正確さの点で疑問がある。
【００２６】
それゆえにこの発明の目的は、システムに依存せず、かつソース言語の文とターゲット言語の文との双方に基づいて翻訳文の信頼度を算出する方法およびそうして算出された信頼度を用いて翻訳文を選択する方法ならびにそのためのプログラムを提供することである。
【００２７】
この発明の他の目的は、バイリンガルコーパスに含まれるソース言語の文とターゲット言語の文との対を用いて翻訳文の信頼度を算出する方法およびそうして算出された信頼度を用いて翻訳文を選択する方法ならびにそのためのプログラムを提供することである。
【００２８】
この発明のさらに他の目的は、バイリンガルコーパスに含まれるソース言語の文とターゲット言語の文との対を用いて、原文に含まれる意味内容が翻訳文に過不足なく含まれているか否かを的確に反映した信頼度を算出する方法およびそうして算出された信頼度を用いて翻訳文を選択する方法ならびにそのためのプログラムを提供することである。
【００２９】
【課題を解決するための手段】
この発明の第１の局面にかかる方法は、コンピュータ上で処理可能な形式の原文と、当該原文に対する、コンピュータ上で処理可能な形式の翻訳とに基づいて、翻訳の信頼度を算出するようにコンピュータシステムを動作させる方法である。この方法は、コンピュータシステムの処理可能な形式のバイリンガルコーパスを準備するステップを含む。バイリンガルコーパスは第１の言語のソース文と、第２の言語の、ソース文の正当な翻訳であるターゲット文とからなる文ペアを複数個含む。この方法はさらに、バイリンガルコーパスに含まれるソース文のうち、原文と意味上で最も類似したものを特定するようコンピュータシステムを動作させる第１のステップと、複数個の翻訳のうち、特定されたソース文に対応するターゲット文との意味上の類似度を予め特定された算出方法により算出し、得られた類似度を翻訳の信頼度として出力する第２のステップとを含む。
【００３０】
好ましくは、第１のステップは、原文に含まれる単語の意味を示す意味マーカからなる原文の意味マーカ列を生成するステップと、バイリンガルコーパスに含まれる各ソース文に含まれる単語の意味を示す意味マーカからなるソース文の意味マーカ列を各ソース文ごとに生成するステップと、原文の意味マーカ列とソース文の意味マーカ列との間で予め定義された距離を算出し、原文の意味マーカ列と最も小さな距離を持つソース文の意味マーカ列に対応するソース文を原文と意味上で最も類似したものとして特定するステップとを含む。
【００３１】
さらに好ましくは、予め定義された距離は、原文の意味マーカ列とソース文の意味マーカ列との間でコンピュータシステムにより実行される動的プログラミングマッチングにより算出される距離である。
【００３２】
この方法は、コンピュータシステムが処理可能な形式の第１の言語の意味辞書を準備するステップをさらに含んでもよい。第１の言語の意味辞書は、第１の言語のうちの予め選択された単語ごとに、１または複数個の対応する意味マーカをリストしたものである。原文の意味マーカ列を生成するステップは、原文に含まれる各単語ごとに意味辞書を参照し、対応する意味マーカ列があればそれを取出して単語に対応して順番に意味マーカ列に追加するステップを含んでもよい。
【００３３】
好ましくは、第２のステップは、翻訳に含まれる単語の意味を示す意味マーカからなる翻訳の意味マーカ列を生成するステップと、バイリンガルコーパスに含まれる各ターゲット文に含まれる単語の意味を示す意味マーカからなるターゲット文の意味マーカ列のリストを生成し、対応するソース文に関連付けてコンピュータシステムが利用可能なように記憶するステップと、翻訳の意味マーカ列と、第１のステップで特定されたソース文に対応するターゲット文の意味マーカ列のリストとの間で予め定義された距離を算出して翻訳の信頼度として出力するステップとを含む。
【００３４】
さらに好ましくは、予め定義された距離は、翻訳の意味マーカ列とターゲット文の意味マーカ列との間でコンピュータシステムにより実行される動的プログラミングマッチングにより算出される距離である。
【００３５】
さらに好ましくは、この方法は、コンピュータシステムが処理可能な形式の第２の言語の意味辞書を準備するステップをさらに含む。第２の言語の意味辞書は、第２の言語のうちの予め選択された単語ごとに、１または複数個の対応する意味マーカをリストしたものである。翻訳の意味マーカ列を生成するステップは、翻訳に含まれる各単語ごとに第２の言語の意味辞書を参照し、対応する意味マーカ列があればそれを取出して単語に対応して順番に意味マーカ列に追加するステップを含んでもよい。
【００３６】
この発明の第２の局面にかかる方法は、ある原文に対応する複数個の翻訳の中から、一つの翻訳を選択するようにコンピュータシステムを動作させるための方法であって、複数個の翻訳の各々に対して、上記したいずれかに記載の方法を用いて翻訳の信頼度を算出するようにコンピュータシステムを動作させるステップと、最も良い値の信頼度が算出された翻訳を選択するようにコンピュータを動作させるステップとを含む。
【００３７】
この発明の第３の局面にかかる記憶媒体は、第１の言語のソース文と、第２の言語の、ソース文の正当な翻訳であるターゲット文とからなる文ペアを複数個含むバイリンガルコーパスから生成される意味対応表を記憶した記憶媒体であって、意味対応表は、ソース文ごとに設けられた項目を含み、各項目は、対応するソース文に含まれる単語の意味を表わす意味マーカのリストであるソース文ごとの意味マーカ列と、各ソース文に対応するターゲット文に含まれる単語の意味を表わす意味マーカのリストである意味マーカ列のリストとを含む。
【００３８】
この発明の第４の局面にかかるプログラムは、コンピュータシステム上で処理可能な形式の原文と、当該原文に対する、コンピュータシステム上で処理可能な形式の翻訳とに基づいて、コンピュータシステムに処理可能な形式のバイリンガルコーパスを用いて翻訳の信頼度を算出するようにコンピュータシステムを動作させるプログラムである。バイリンガルコーパスは第１の言語のソース文と、第２の言語の、ソース文の正当な翻訳であるターゲット文とからなる文ペアを複数個含む。このプログラムは、バイリンガルコーパスに含まれるソース文のうち、原文と意味上で最も類似したものを特定するようコンピュータシステムを動作させる第１のプログラム部分と、複数個の翻訳のうち、特定されたソース文に対応するターゲット文との意味上の類似度を予め特定された算出方法により算出し、得られた類似度を翻訳の信頼度として出力する第２のプログラム部分とを含む。
【００３９】
第１のプログラム部分は、原文に含まれる単語の意味を示す意味マーカからなる原文の意味マーカ列を生成するプログラム部分と、バイリンガルコーパスに含まれる各ソース文に含まれる単語の意味を示す意味マーカからなるソース文の意味マーカ列を各ソース文ごとに生成するプログラム部分と、原文の意味マーカ列とソース文の意味マーカ列との間で予め定義された距離を算出し、原文の意味マーカ列と最も小さな距離を持つソース文の意味マーカ列に対応するソース文を原文と意味上で最も類似したものとして特定するプログラム部分とを含んでもよい。
【００４０】
予め定義された距離は、原文の意味マーカ列とソース文の意味マーカ列との間でコンピュータシステムにより実行される動的プログラミングマッチングにより算出される距離であってもよい。
【００４１】
このプログラムは、コンピュータシステムが処理可能な形式の第１の言語の意味辞書をさらに利用するものであり、第１の言語の意味辞書は、第１の言語のうちの予め選択された単語ごとに、１または複数個の対応する意味マーカをリストしたものであり、原文の意味マーカ列を生成するプログラム部分は、原文に含まれる各単語ごとに意味辞書を参照し、対応する意味マーカ列があればそれを取出して単語に対応して順番に意味マーカ列に追加するプログラム部分を含む。
【００４２】
第２のプログラム部分は、翻訳に含まれる単語の意味を示す意味マーカからなる翻訳の意味マーカ列を生成するプログラム部分と、バイリンガルコーパスに含まれる各ターゲット文に含まれる単語の意味を示す意味マーカからなるターゲット文の意味マーカ列のリストを生成し、対応するソース文に関連付けてコンピュータシステムが利用可能なように記憶媒体に記憶させるためのプログラム部分と、翻訳の意味マーカ列と、第１のステップで特定されたソース文に対応するターゲット文の意味マーカ列のリストとの間で予め定義された距離を算出して翻訳の信頼度として出力するためのプログラム部分とを含んでもよい。
【００４３】
予め定義された距離は、翻訳の意味マーカ列とターゲット文の意味マーカ列との間でコンピュータシステムにより実行される動的プログラミングマッチングにより算出される距離であってもよい。
【００４４】
このプログラムは、コンピュータシステムが処理可能な形式の第２の言語の意味辞書をさらに用いるものであり、第２の言語の意味辞書は、第２の言語のうちの予め選択された単語ごとに、１または複数個の対応する意味マーカをリストしたものであり、翻訳の意味マーカ列を生成するプログラム部分は、翻訳に含まれる各単語ごとに第２の言語の意味辞書を参照し、対応する意味マーカ列があればそれを取出して単語に対応して順番に意味マーカ列に追加するプログラム部分を含んでもよい。
【００４５】
この発明の第５の局面にかかるプログラムは、ある原文に対応する複数個の翻訳の中から、一つの翻訳を選択するようにコンピュータシステムを動作させる、コンピュータシステムで実行可能なプログラムであって、複数個の翻訳の各々に対して、上記のいずれかに記載のプログラムを用いて翻訳の信頼度を算出するようにコンピュータシステムを動作させるプログラム部分と、最も良い値の信頼度が算出された翻訳を選択するようにコンピュータを動作させるプログラム部分とを含む。
【００４６】
本発明の第６の局面にかかる方法は、コンピュータ上で処理可能な形式の第１の言語の原文と、当該原文に対する、コンピュータ上で処理可能な形式の第２の言語の翻訳とに基づいて、翻訳の信頼度を算出するようにコンピュータシステムを動作させる方法であって、原文に含まれる内容語列を抽出するようコンピュータシステムを動作させる第１のステップと、翻訳から内容語列を抽出するようコンピュータシステムを動作させる第２のステップと、第１のステップで抽出された内容語列に含まれる内容語と、第２のステップで抽出された内容語列に含まれる内容語との対応関係に基づいて翻訳の信頼度を算出するようコンピュータシステムを動作させる第３のステップとを含む。
【００４７】
第３のステップは、第１のステップで抽出された内容語列に含まれる内容語と、第２のステップで抽出された内容語列に含まれる内容語とを対応付けるようコンピュータシステムを動作させるステップと、対応付けるステップで対応付けられた内容語を互いに同一とみなして、第１のステップで抽出された内容語列に含まれる内容語の集合と、第２のステップで抽出された内容語列に含まれる内容語の集合との、積集合の要素数と和集合の要素数との比を算出し、信頼度として出力するようコンピュータシステムを動作させるステップとを含んでもよい。
【００４８】
対応付けるステップは、第１の言語の単語と第２の言語の単語との、コンピュータシステムが利用可能な予め準備された対訳辞書を参照し、第１のステップで抽出された内容語列中の内容語の対訳中に第２のステップで抽出された内容語列中の内容語があるか否かによって対応関係の有無を判定するようコンピュータシステムを動作させるステップを含んでもよい。
【００４９】
好ましくは、対応付けるステップはさらに、予め準備された第１の言語の意味辞書を参照して、第１のステップで抽出された内容語列中の内容語と、第２のステップで抽出された内容語列中の内容語とに同じ意味マーカが付されているか否かを判定するようコンピュータシステムを動作させるステップを含む。
【００５０】
対応付けるステップはさらに、バイリンガルコーパスにおける第１の言語の単語と第２の言語の単語との共起関係の、コンピュータシステムにより利用可能な統計情報を準備するステップと、第１のステップで抽出された内容語列中の内容語と、第２のステップで抽出された内容語列中の内容語との共起関係に関する統計情報によって、第１のステップで抽出された内容語列中の内容語と、第２のステップで抽出された内容語列中の内容語とが対応するか否かを判定するようコンピュータシステムを動作させるステップを含んでもよい。
【００５１】
本発明の第７の局面にかかる方法は、ある原文に対応する複数個の翻訳の中から、一つの翻訳を選択するようにコンピュータシステムを動作させるための方法であって、複数個の翻訳の各々に対して、上のいずれかの方法を用いて翻訳の信頼度を算出するようにコンピュータシステムを動作させるステップと、最も良い値の信頼度が算出された翻訳を選択するようにコンピュータを動作させるステップとを含む。
【００５２】
本発明の第８の局面によるプログラムは、コンピュータ上で処理可能な形式の第１の言語の原文と、当該原文に対する、コンピュータ上で処理可能な形式の第２の言語の翻訳とに基づいて、翻訳の信頼度を算出するための、コンピュータシステムにより実行可能なプログラムであって、原文に含まれる内容語列を抽出するようコンピュータシステムを動作させる第１のプログラム部分と、翻訳から内容語列を抽出するようコンピュータシステムを動作させる第２のプログラム部分と、第１のプログラム部分により抽出された内容語列に含まれる内容語と、第２のステップにより抽出された内容語列に含まれる内容語との対応関係に基づいて翻訳の信頼度を算出するようコンピュータシステムを動作させる第３のプログラム部分とを含む。
【００５３】
第３のプログラム部分は、第１のプログラム部分により抽出された内容語列に含まれる内容語と、第２のプログラム部分により抽出された内容語列に含まれる内容語とを対応付けるようコンピュータシステムを動作させるプログラム部分と、対応付けるプログラム部分により対応付けられた内容語を互いに同一とみなして、第１のプログラム部分により抽出された内容語列に含まれる内容語の集合と、第２のプログラム部分により抽出された内容語列に含まれる内容語の集合との、積集合の要素数と和集合の要素数との比を算出し、信頼度として出力するようコンピュータシステムを動作させるプログラム部分とを含んでもよい。
【００５４】
対応付けるプログラム部分は、第１の言語の単語と第２の言語の単語との、コンピュータシステムが利用可能な予め準備された対訳辞書を参照し、第１のプログラム部分により抽出された内容語列中の内容語の対訳中に第２のプログラム部分により抽出された内容語列中の内容語があるか否かによって対応関係の有無を判定するようコンピュータシステムを動作させるプログラム部分を含んでもよい。
【００５５】
対応付けるプログラム部分はさらに、予め準備された第１の言語の意味辞書を参照して、第１のプログラム部分により抽出された内容語列中の内容語と、第２のプログラム部分により抽出された内容語列中の内容語とに同じ意味マーカが付されているか否かを判定するようコンピュータシステムを動作させるプログラム部分を含んでもよい。
【００５６】
また対応付けるプログラム部分はさらに、バイリンガルコーパスにおける第１の言語の単語と第２の言語の単語との共起関係の、コンピュータシステムにより利用可能な統計情報を参照するプログラム部分と、第１のプログラム部分により抽出された内容語列中の内容語と、第２のプログラム部分により抽出された内容語列中の内容語との共起関係に関する統計情報を参照することによって、第１のプログラム部分により抽出された内容語列中の内容語と、第２のプログラム部分により抽出された内容語列中の内容語とが対応するか否かを判定するようコンピュータシステムを動作させるプログラム部分を含んでもよい。
【００５７】
本発明の第９の局面にかかるプログラムは、ある原文に対応する複数個の翻訳の中から、一つの翻訳を選択するようにコンピュータシステムを動作させる、コンピュータシステムで実行可能なプログラムであって、複数個の翻訳の各々に対して、上のいずれかのプログラムを用いて翻訳の信頼度を算出するようにコンピュータシステムを動作させるプログラム部分と、最も良い値の信頼度が算出された翻訳を選択するようにコンピュータを動作させるプログラム部分とを含む。
【００５８】
【発明の実施の形態】
以下に述べる本発明の実施の形態では、信頼度を（１）システムの入力と出力、すなわち入力文（「原文」とも呼ぶ。）と、複数個の機械翻訳システムにより生成された複数の翻訳文（「出力文」とも呼ぶ。）とからなる対と、（２）システム外の知識、すなわちバイリンガルコーパスとに基づいて算出する。第１の実施の形態は「文ベースの信頼度（Ｓｅｎｔｅｎｃｅ−Ｂａｓｅｄ　Ｍｅａｓｕｒｅ）」（ＳＢＭ）と呼ばれるものを用い、第２の実施の形態は「対応関係ベースの信頼度（Ａｌｉｇｎｍｅｎｔ−Ｂａｓｅｄ　Ｍｅａｓｕｒｅ）」（ＡＢＭ）と呼ばれるものを用いる。なお、バイリンガルコーパスとは、第１の言語（ソース言語）のソース文と、第２の言語（ターゲット言語）の、前記ソース文の正当な翻訳であるターゲット文とからなる文ペアの集合をいい、対訳コーパス、２言語コーパスなどとも呼ばれる。
【００５９】
［第１の実施の形態］
―概略―
第１の実施の形態の機械翻訳システムは、複数の個別の機械翻訳システムの翻訳のうち、最良のものを選ぶ最良訳選択型の機械翻訳システムである。このシステムではバイリンガルコーパスを用い、バイリンガルコーパスの中のソース文のうち、入力文に意味上で近いものに対応するターゲット文を定め、そのターゲット文と意味上で最も近い翻訳を選択する。
【００６０】
―構成―
以下に述べる本発明の各実施の形態は、コンピュータおよびコンピュータ上で動作するソフトウェアにより実現される。もちろん、以下に述べる機能の一部又は全部を、ソフトウェアでなくハードウェアで実現することも可能である。
【００６１】
図１に、本実施の形態で利用されるコンピュータシステム２０の外観図を、図２にコンピュータシステム２０のブロック図を、それぞれ示す。なおここに示すコンピュータシステム２０はあくまで一例であり、この他にも種々の構成が可能である。
【００６２】
図１を参照して、コンピュータシステム２０は、コンピュータ４０と、いずれもこのコンピュータ４０に接続されたモニタ４２、キーボード４６、およびマウス４８を含む。コンピュータ４０にはさらに、ＣＤ―ＲＯＭ（Ｃｏｍｐａｃｔ　Ｄｉｓｃ　Ｒｅａｄ−Ｏｎｌｙ　Ｍｅｍｏｒｙ）ドライブ５０と、ＦＤ（Ｆｌｅｘｉｂｌｅ　Ｄｉｓｋ）ドライブ５２とが内蔵されている。
【００６３】
図２を参照して、コンピュータシステム２０はさらに、コンピュータ４０に接続されるプリンタ４４を含むが、これは図１には示していない。またコンピュータ４０はさらに、ＣＤ―ＲＯＭドライブ５０およびＦＤドライブ５２に接続されたバス６６と、いずれもバス６６に接続された中央演算装置（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ：ＣＰＵ）５６、コンピュータ４０のブートアッププログラムなどを記憶したＲＯＭ（Ｒｅａｄ−Ｏｎｌｙ　Ｍｅｍｏｒｙ）５８、ＣＰＵ５６が使用する作業エリアおよびＣＰＵ５６により実行されるプログラムの格納エリアを提供するＲＡＭ（Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）６０、および後述するバイリンガルコーパス、各種辞書、翻訳結果などを格納するハードディスク５４を含む。
【００６４】
以下に述べる実施の形態のシステムを実現するソフトウェアは、たとえば、ＣＤ―ＲＯＭ６２のような記録媒体上に記録されて流通し、ＣＤ―ＲＯＭドライブ５０のような読取装置を介してコンピュータ４０に読込まれ、ハードディスク５４に格納される。ＣＰＵ５６がこのプログラムを実行する際には、ハードディスク５４からこのプログラムを読み出してＲＡＭ６０に格納し、図示しないプログラムカウンタによって指定されるアドレスから命令を読出して実行する。ＣＰＵ５６は、処理対象のデータをハードディスク５４から読出し、処理結果を同じくハードディスク５４に格納する。
【００６５】
コンピュータシステム２０の動作自体は周知であるので、ここではその詳細については繰り返さない。
【００６６】
なお、ソフトウェアの流通形態は上記したように記憶媒体に固定された形には限定されない。たとえば、ネットワークを通じて接続された他のコンピュータからデータを受取る形で流通することもあり得る。また、ソフトウェアの一部が予めハードディスク５４中に格納されており、ソフトウェアの残りの部分をネットワーク経由でハードディスク５４に取込んで実行時に統合するような形の流通形態もあり得る。
【００６７】
一般的に、現代のプログラムはコンピュータのオペレーティングシステム（ＯＳ）またはいわゆるサードパーティなどによってコンピュータ上で提供される汎用の機能を利用し、それらを所望の目的にしたがって組織化した形態で実行することにより前記した所望の目的を達成する。したがって、以下に述べる本実施の形態の各機能のうち、ＯＳまたはサードパーティが提供する汎用的な機能を含まず、それら汎用的な機能の実行順序の組合せだけを指定するプログラム（群）であっても、それらを利用して全体的として所望の目的を達成する制御構造を有するプログラム（群）である限り、それらが本発明の技術的範囲に含まれることは明らかである。
【００６８】
ただし、本発明をプログラムではなくハードウェア回路によって実現することも可能であることはもちろんである。
【００６９】
本実施の形態のプログラムのうち、最良の翻訳を選択する選択部を装置とみなして機能的に示したのが図３のブロック図である。図３には、この最良訳選択部８０とともに、３つの機械翻訳エンジン８２，８４および８６とを示す。３つの機械翻訳エンジン８２，８４，８６はいずれもコンピュータ上で動作するソフトウェアからなり、ソース言語の入力文９０を与えられると、ターゲット言語の出力文９２，９４および９６を出力して最良訳選択部８０に与える機能を持つ。最良訳選択部８０は、これら３つの出力文９２、９４および９６に対して後に述べるような信頼度を計算し、最も良い値の信頼度を示した出力文を最良訳として出力する（９８）。
【００７０】
図３を参照して、最良訳選択部８０は、バイリンガルコーパス１２０と、意味辞書１２２と、後述する意味対応表１２４と、バイリンガルコーパス１２０および意味辞書１２２から意味対応表１２４を作成するための表作成部１１２と、この意味対応表１２４、意味辞書１２２およびバイリンガルコーパス１２０ならびに入力文９０および出力文９２、９４および９６に基づいて出力文９２、９４および９６の信頼度を算出し、最も高い信頼度の翻訳文を選択して出力するための翻訳文選択部１１０とを含む。
【００７１】
バイリンガルコーパス１２０は、ソース言語の文（ソース文）と、そのターゲット言語の訳文（ターゲット文）とからなる対を多数含むコーパスである。各ターゲット文は、対応するソース文の正しい訳文となっている。仮に、バイリンガルコーパス１２０中に、入力文およびその機械翻訳からなる対と意味上でよく似た対が存在していれば、その機械翻訳は正しいものと見て差し支えないだろう。本実施の形態では後述するようにこの考え方にしたがって信頼度を算出する。
【００７２】
この点に関し、非特許文献８は機械翻訳により得られた訳文と基準訳文との間のＤＰ（Ｄｙｎａｍｉｃ　Ｐｒｏｇｒａｍｍｉｎｇ）マッチングによって翻訳の品質を自動的に評価する方法を提案している。非特許文献９はさらにこの自動評価を拡張し、自然言語にもともと存在しているヴァリエーションを取扱うようにし、さらに一つの基準訳文に依存することを避ける方法を提案した。これらの方法は、類似したソース文を検索し取出して、これら類似した文の相手となるターゲット文の集合を作成して評価時にその集合を参照するというものである。また非特許文献６もまた非特許文献８の自動評価を拡張し、意味的な距離を含む複数のＤＰ距離を用いるようにし、それらの複数の距離を決定木の学習によって調和させようとする方法を提案している。
【００７３】
本実施の形態のシステムは、これらの提案を効率的に組合せたものといえ、以下の手順で翻訳文の信頼度を算出する。
【００７４】
ａ）　予め、バイリンガルコーパス中のソース文とターゲット文とを「内容語」の意味マーカのリストからなる意味マーカ列に変換し、それらの対を意味対応表として表形式で保持しておく。内容語とは、名詞、動詞などの、辞書に記載されている内容的意味のある語をいう。
【００７５】
ｂ）　翻訳時に、入力文と機械翻訳文とを同じように意味マーカ列に変換する。
【００７６】
ｃ）　バイリンガルコーパス中から、ＤＰマッチングにより入力文の意味マーカ列と近い意味マーカ列のソース文を探し、そのソース文と対になっているターゲット文を取出す。
【００７７】
ｄ）　取出されたターゲット文の意味マーカ列と、機械翻訳文の意味マーカ列とをＤＰマッチングにより比較する。
【００７８】
ｅ）　最も小さなＤＰ距離を、機械翻訳により生成された翻訳文の信頼度として出力する。
【００７９】
この例の場合、翻訳が誤っていれば得られる信頼度の値は大きくなり、翻訳が正解に近ければその値は小さくなる。
【００８０】
図４を参照して、意味辞書１２２は、ソース言語の意味辞書１２２Ａと、ターゲット言語の意味辞書１２２Ｂとを含む。意味辞書１２２Ａ，Ｂは、それぞれの言語の単語を見出しとし、その単語に対する意味を示す意味マーカを各見出しに付したもので、それぞれソース言語の文およびターゲット言語の文を意味マーカ列に変換する際に用いられる。
【００８１】
意味対応表１２４は、たとえばソース文２５０が変換された意味マーカ列２６０をキーとし、ソース文２５０に対応するターゲット文２５２が変換された意味マーカ列のリスト２６２を値とする表である。一つのソース文２５０に対して複数のターゲット文があり得るので、対応する意味カテゴリ列が複数個存在することがあり、それらがリストとして値に保持されている。なお図４において、「＜」および「＞」で囲まれた部分が一つの意味マーカ列であり、さらにその中の「（」および「）」で囲まれた部分が一つの単語に対応する意味マーカ列である。一つの単語に二つ以上の意味マーカがある場合には、「（」および「）」の間にそれらを表わす意味マーカ列が入ることになる。
【００８２】
図３に示す表作成部１１２は、図４に示すような処理をして予め意味対応表１２４を作成する機能を持つ。この処理は、バイリンガルコーパス１２０中を順に読み、各文を構成する単語ごとに意味辞書１２２を参照して意味マーカを取出してリストに保持することにより行なわれる。この処理は当業者には容易に実現可能であるので、ここではその詳細は述べない。
【００８３】
図５を参照して、翻訳文選択部１１０は、ソース言語の意味辞書１２２Ａを参照して入力文９０を入力文意味マーカ列１６０に変換するための変換部１３０と、意味対応表１２４を参照して、入力文意味マーカ列１６０に最も類似したソース文をさがし、そのソース文に対応するターゲット文の意味マーカ列１６２を抽出するための抽出部１３８とを含む。
【００８４】
翻訳文選択部１１０はさらに、それぞれ出力文９２、９４および９６を受け、ターゲット言語の意味辞書１２２Ｂを参照して出力文意味マーカ列１６４，１６６、および１６８に変換するための変換部１３２，１３４および１３６と、翻訳文意味マーカ列１６２と第１の出力文の意味マーカ列１６４との間のＤＰ距離を算出するための距離算出部１４２と、翻訳文意味マーカ列１６２と第２の出力文の意味マーカ列１６６との間のＤＰ距離を算出するための距離算出部１４４と、翻訳文意味マーカ列１６２と第３の出力文の意味マーカ列１６６との間のＤＰ距離を算出するための距離算出部１４６と、距離算出部１４２，１４４および１４６の出力するＤＰ距離を比較し、最も小さな値を信頼度１７０として出力するための比較部１４８と、比較部１４８から与えられる信頼度１７０にしたがって、出力文９２、９４および９６のうち最も小さなＤＰ距離に対応する出力文を選択して最良の翻訳文として出力するための選択部１５０とを含む。
【００８５】
図６を参照して、翻訳文選択部１１０の行なう処理について説明する。意味対応表１２４には、各々ソース文の意味マーカ列をキーとし、その翻訳であるターゲット文の意味マーカ列のリストを値とするレコード２００，２０２，２０４，２１０が格納されている。これらのうち、ソース文の意味マーカ列１８０，１８２，１８４，１８６，１８８，１９０，１９２などと、入力文（の意味マーカ列）９０との間の意味上のＤＰ距離を算出し、最も小さなＤＰ距離となる意味マーカ列（たとえば意味マーカ列１９０）を選択する。
【００８６】
意味対応表１２４内で、この意味マーカ列１９０をキーにその値を取出す。この場合、意味マーカ列１９０がレコード２０２に含まれているものとすると、レコード２０２に含まれる値（ターゲット文の意味マーカ列のリスト）を抽出し、機械翻訳エンジンの出力である出力文９２、９４および９６のうち、このリスト内の意味マーカ列２２０と意味上のＤＰ距離が最も小さなもの（たとえば第２の出力文９４）を選択する。このＤＰ距離がこの翻訳システムの出力する翻訳文の信頼度であり、選択された出力文（この場合は出力文９４）がこの翻訳システムの出力である。
【００８７】
以上の処理を実現するソフトウェアの制御構造について図７および図８を参照して説明する。まず、翻訳対象となる一文（入力文９０）と、その機械翻訳による３つの翻訳文（出力文９２、９４および９６）とを読込む（２８０）。入力すべき一文があるか否かを判定し（２８２）、入力すべき一文が存在していなければ処理を終了する。
【００８８】
入力すべき一文があったら、その入力文をソース言語の意味辞書１２２Ａを参照しながら意味マーカ列１６０に変換する（２８４）。同様に、ターゲット言語の意味辞書１２２Ｂを参照しながら３つの機械翻訳文をすべて意味マーカ列１６４，１６６，１６８に変換する（２８６）。
【００８９】
続いて、入力文の意味マーカ列１６０とＤＰ距離が最も小さな意味マーカ列を意味対応表１２４中で検索し、その意味マーカ列をキーとしてその値（ターゲット文の意味マーカ列）を抽出する（２８８）。こうして取出されたターゲット文の意味マーカ列と、３つの機械翻訳文のすべての意味マーカ列１６４，１６６，１６８との間でＤＰ距離を計算する（２９０）。計算されたＤＰ距離の中で最小値となったものを信頼度として出力する（２９２）。
【００９０】
この信頼度が所定のしきい値より小さいか否かを判定する（２９４）。信頼度がしきい値より小さければ、最小のＤＰ距離を与えた機械翻訳文を最良の翻訳文として選択し出力する（２９６）。さもなければいずれの翻訳の品質も不十分であると判断して「最良訳なし」と表示する（２９８）。
【００９１】
この後制御をステップ２８０に戻す。
【００９２】
―動作―
以上述べたハードウェアとソフトウェアとにより構成される本実施の形態のシステムは、以下のように動作する。
【００９３】
準備作業として以下のような作業を行なう。図３および図４を参照して、まず予め表作成部１１２がバイリンガルコーパス１２０中の全てのソース文およびターゲット文の対について、意味辞書１２２を参照して意味マーカ列に変換し、意味対応表１２４を作成する。意味対応表１２４は、ソース文の意味マーカ列をキーに、そのソース文に対応するターゲット文の意味マーカ列のリストを値とするレコードからなる。
【００９４】
翻訳時には以下のような処理が行なわれる。まず入力文９０を３つの機械翻訳エンジン８２，８４，８６に与え、その出力文９２、９４および９６を得る。続いて、この入力文９０と、出力文９２、９４および９６を翻訳文選択部１１０に与える。
【００９５】
翻訳文選択部１１０の変換部１３０は、ソース言語の意味辞書１２２Ａを参照して、入力文９０を意味マーカ列１６０に変換する（図７のステップ２８４）。同様に変換部１３２，１３４および１３６はそれぞれ、３つの機械翻訳エンジン８２，８４，８６の出力文９２、９４および９６を出力文意味マーカ列１６４，１６６および１６８に変換する（図７のステップ２８６）。
【００９６】
抽出部１３８が、意味対応表の中で入力文の意味マーカ列１６０とＤＰ距離の最も小さなキーを求め、そのキーに対応する値（ターゲット文の意味マーカ列１６２）を抽出する（図７のステップ２８８）。距離算出部１４２，１４４，１４６はそれぞれ、このターゲット文意味マーカ列１６２と、出力文意味マーカ列１６４，１６６および１６８との間のＤＰ距離を算出する（図７のステップ２９０）。比較部１４８が、距離算出部１４２，１４４、１４６により算出されたＤＰ距離のうちの最小値を選択し、信頼度１７０として出力する（図７のステップ２出力文９２、９４および９６）。選択部１５０は、この信頼度１７０に応じ、最小のＤＰ距離を与えた機械翻訳出力文を最良訳として選択する（図７のステップ２９６）。なおこのとき、信頼度１７０がしきい値より小さくなければ最良訳はなしと判定し、訳文の出力はしない（ステップ２９８）。
【００９７】
以上の実施の形態によれば、最良訳の選択の基準となる信頼度は、バイリンガルコーパスというシステム外部のリソースに基づいて定められる。したがって信頼度の計算はシステムに依存しない。また、この実施の形態では信頼度の算出に原文の意味的情報と、翻訳文の意味的情報との双方を使用している。そのため、ＳＭＴのようにターゲット言語の情報のみを用いる場合と比較して、翻訳前後での意味の脱落や付加などによる誤訳をよく反映するものとなり、翻訳文の選択がより正確となる。
【００９８】
［第２の実施の形態］
―概略―
第２の実施の形態のシステムは、入力文と翻訳文との間で単語の意味上の対応関係がどの程度付けられるかを表わす値を信頼度に用いる。したがってこの実施の形態でも、信頼度の算出に入力文と翻訳文との双方の情報を用いる。その結果、この第２の実施の形態のシステムでも翻訳前後での意味の脱落や付加などによる誤訳をよく反映するものとなり、翻訳文の選択がより正確となる。また、この実施の形態でも機械翻訳システムの内部の情報は参照しない。したがって、システムに依存しない信頼度を得ることができる。
【００９９】
―構成―
この第２の実施の形態のシステムを実現するためのハードウェアは、第１の実施の形態のシステムに関連して説明したものと同様である。したがってここではそれらについての詳細な説明は繰返さない。
【０１００】
図９を参照して、第２の実施の形態にかかる翻訳文選択部３１０は、バイリンガルコーパス１２０と、単語の対応付けの際に用いられる意味辞書（シソーラス）１２２、対訳辞書３２６、および意味辞書１２２と対訳辞書３２６とを補完する補完辞書３２４と、バイリンガルコーパス１２０に基づいて補完辞書３２４を作成するための補完辞書作成部３２２と、入力文９０、３つの機械翻訳エンジン８２，８４，８６の出力文９２、９４および９６を受け、対訳辞書３２６、意味辞書１２２、補完辞書３２４、およびバイリンガルコーパス１２０に基づき出力文９２、９４および９６のうちの一つを最良訳として選択し出力するための翻訳文選択部３２０とを含む。
【０１０１】
補完辞書作成部３２２は、次のようにして補完辞書３２４を作成する。図１０の中央にバイリンガルコーパス１２０に含まれるソース文とターゲット文との対を模式的に示す。ソース言語のある単語Ｘとターゲット言語のある単語ｘとが対応関係にあるか否かを判定する場合、以下のようにする。
【０１０２】
各ソース文内に単語Ｘがある場合に１、ない場合に０という値をソース文ごとに定め、それをソース文の順番に並べてベクトル２３０を作成する。同じく、各ターゲット文内に単語ｘがある場合に１、ない場合に０という値をターゲット文ごとに定め、それをターゲット順の順番に並べてベクトル２３２を作成する。このベクトル２３０とベクトル２３２との余弦値を求めると、その値はベクトル２３０および２３２のなす角度が０から９０度（π／２）まで変化するのに応じて１から０までの値をとる。両者のなす角度が完全に０度に一致する場合はその値は１、両者のなす角度が完全に９０度に一致する場合にはその値は０となる。したがってこの余弦値は、ベクトル２３０とベクトル２３２との類似度を示す値と考えることができる。
【０１０３】
ベクトルの類似度が高いということは、この単語の対Ｘとｘとが同じ対訳文内に出現する確率が高いということである。通常、ソース言語とターゲット言語とにそろって出現する確率の高い単語のペアは、互いに対応したものと考えることができる。したがって、前述した余弦値を計算し、その値があるしきい値（０＜しきい値＜１）より大きいか否かによって、この単語の対Ｘとｘとが対応するか否かを判定できる。つまり、この補完辞書によって、ソース言語の単語とターゲット言語の単語との間の、バイリンガルコーパス内における共起関係についての統計情報が得られ、それによって単語間の対応関係を付けることができる。
【０１０４】
このように補完辞書を用いるのは、通常の対訳辞書には出ていないような単語ペアが存在することがあるためである。特に、対訳辞書や意味辞書が小さい場合には、それら辞書によってカバーされていない単語の対が多数あり得るので、こうした補完辞書で辞書を補完する必要がある。
【０１０５】
図１１を参照して、翻訳文選択部３２０は、入力文９０から内容語列３６０を抽出するための内容語抽出部３３０と、それぞれ出力文９２、９４および９６から内容語列３６４，３６６および３６８を抽出するための内容語抽出部３３２，３３４および３３６と、意味辞書１２２、対訳辞書３２６および補完辞書３２４を参照しながら入力文の内容語列３６０とそれぞれの出力文の内容語列３６４，３６６および３６８との間で後述するＴａｎｉｍｏｔｏ係数を算出するためのＴａｎｉｍｏｔｏ係数算出部３４２，３４４および３４６と、算出されたＴａｎｉｍｏｔｏ係数を比較し、最も大きなＴａｎｉｍｏｔｏ係数を信頼度３７０として出力するための比較部３４８と、比較部３４８から出力される信頼度３７０に応答し、最も大きなＴａｎｉｍｏｔｏ係数を示した出力文を選択し出力するための選択部３５０とを含む。
【０１０６】
Ｔａｎｉｍｏｔｏ係数は、次の式で定義される。
【０１０７】
【数１】
2004102942.tif 000003
ここでは英語から日本語への翻訳を考えることとし、Ｅは原文に含まれる内容語の集合を、Ｊは翻訳文に含まれる内容語の集合を、それぞれ表わすものとする。また記号｜Ｓ｜は集合Ｓの要素の数を表わす。具体的な例については後述する。なお、Ｔａｎｉｍｏｔｏ係数は、原文に含まれる内容語の集合と、翻訳文に含まれる内容語の集合との要素数の比を表わしているが、両者の要素の重複の度合いを表わす指標でさえあれば、Ｔａｎｉｍｏｔｏ係数にかえて用いることができる。たとえば、次のＳｃｏｒｅ２〜Ｓｃｏｒｅ５で定義される指標をＴａｎｉｍｏｔｏ係数に代えて使用することができるし、この他にも種々の指標を定義することが可能である。
【数２】
2004102942.tif 000004
【０１０８】
図１２に、本実施の形態のシステムを実現するソフトウェアの制御構造をフローチャート形式で示す。これ以前に、入力文９０（図１１参照）について三つの機械翻訳システム８２，８４および８６からの出力文９２、９４および９６（図１１参照）が得られているものとする。図１２を参照して、システムは、翻訳文の選択の対象となる入力文の読込を試みる（２８０）。入力すべき文がなければ（２８２）処理を終了する。入力文があれば制御はステップ３８０に進む。
【０１０９】
ステップ３８０では、入力文から内容語を抽出する。同様に、機械翻訳文の全てから内容語を抽出する（３８２）。続いてステップ３８４で、入力文と機械翻訳文の全てとの間でＴａｎｉｍｏｔｏ係数を算出する。最大のＴａｎｉｍｏｔｏ係数が得られた訳文を最良訳として選択する（３８６）。以下、制御はステップ２８０に戻る。
【０１１０】
なおここでは詳細には図示していないが、Ｔａｎｉｍｏｔｏ係数の値があるしきい値より大きい場合のみ最良訳を選択し、それ以外の場合には最良訳はなかったとすることももちろん可能である。
【０１１１】
以上が複数の機械翻訳システムの出力文の中から最良訳を選択する処理を実現するプログラムの制御構造である。
【０１１２】
ここで、Ｔａｎｉｍｏｔｏ係数について例を挙げて説明する。図１３を参照して、原文（入力文）が”Ｄｏ　ｙｏｕ　ｈａｖｅ　ｔｈｉｓ　ｉｎ　ａ　ｄｉｆｆｅｒｅｎｔ　ｃｏｌｏｒ？”であったものとする。この翻訳文で正しい訳と思われるものの例として「これの違う色のものありますか。」を考える。原文の内容語の集合Ｅ＝｛ｙｏｕ　ｈａｖｅ　ｔｈｉｓ　ｄｉｆｆｅｒｅｎｔ　ｃｏｌｏｒ｝、翻訳文の内容語の集合Ｊ＝｛これ　違う　色　もの　あり｝である。
【０１１３】
原文の内容語のうち、単語「ｈａｖｅ」「ｔｈｉｓ」「ｄｉｆｆｅｒｅｎｔ」「ｃｏｌｏｒ」については翻訳文の中に対応する単語「これ」「違う」「色」「あり」がそれぞれ見出される。したがって、対応する語を同一とみなすとＥ∩Ｊ＝｛ｈａｖｅ　ｔｈｉｓ　ｄｉｆｆｅｒｅｎｔ　ｃｏｌｏｒ｝、Ｅ∪Ｊ＝｛ｙｏｕ　ｈａｖｅ　ｔｈｉｓ　ｄｉｆｆｅｒｅｎｔ　ｃｏｌｏｒ　もの｝となる。したがって｜Ｅ∩Ｊ｜＝４、｜Ｅ∪Ｊ｜＝６となり、Ｔａｎｉｍｏｔｏ係数は４／６となる。
【０１１４】
一方、図１４を参照して、上と同じ原文に対して誤った訳文の例として「これの色のものありますか。」という訳文を考える。この文についても図１３の場合と同様にして｜Ｅ∩Ｊ｜と｜Ｅ∪Ｊ｜とを考えるとそれぞれ３、６となる。その結果、この例ではＴａｎｉｍｏｔｏ係数は３／６となる。
【０１１５】
以上のようにＴａｎｉｍｏｔｏ係数は、原文と翻訳文との間で対応がつけられる内容語が多ければ多いほど大きな値をとり、対応が付けられる単語が少なければ小さな値をとる。入力文と翻訳文との間で単語の対応が付けられるということは、それだけ翻訳文が入力文の意味内容を正しく表わしていると考えることができる。したがって、３つの機械翻訳システムの出力文のうち、このＴａｎｉｍｏｔｏ係数が最も大きなものを選択することで、最良訳を定めることができる。
【０１１６】
―動作―
この機械翻訳装置は、第１の実施の形態のシステムとほぼ同様の動作を行なう。異なるのは、最良訳の選択にＴａｎｉｍｏｔｏ係数を用いること、したがってその準備作業として入力文および全ての出力文について内容語を抽出することだけである。ここではそれらの作業についてのみ説明する。
【０１１７】
内容語の抽出は、単純には対訳辞書を用いて容易に行なうことができる。すなわち、たとえば日本語の場合には文を形態素解析し、得られた形態素が辞書に見出しとして存在するか否かを判定する。辞書に存在する場合にはその見出しが内容語としてマークされているか否かを判断する。形態素が辞書に見出しとして存在し、かつその見出しが内容語としてマークされていればそれを抽出する。
【０１１８】
英語などのように分かち書きされる言語では、形態素解析が不要となる。あとは日本語の場合とほぼ同様である。
【０１１９】
Ｔａｎｉｍｏｔｏ係数の算出は次のようする。まず対訳辞書３２６を用いて入力文の内容語列３６０中の各語について、その対訳として出力文の内容語列３６４、３６６，３６８に含まれる語があるか否かを調べる。あればそれらを対応付ける。ない場合には、内容語列３６０中の各語と出力文の内容語列３６４、３６６，３６８の各語とについて意味辞書１２２を参照して意味マーカを探す。同じ意味マーカが付されている語があればそれらを対応付ける。ない場合にはさらに補完辞書３２４を使用して語の対応付けを試みる。いずれの辞書を使っても対応付けができなければ、その単語には対応語がないものとする。このような順序で辞書を用いて順次対応付けを行なうが、この順序は知識に基づく対応付けの信頼性を反映したものなので、後の処理ではそれに先立つ処理で得られた対応付けは変更させないようにした。
【０１２０】
なお、意味辞書による対応付けは上の方法には限定されない。要するに、対象となる語と出力文の内容語とが、同じ概念クラス中にあるかどうかを調べるようにすればよい。
【０１２１】
このようにして入力文の内容語列３６０中の語と、出力文の内容語列３６４，３６６，３６８中の語との対応関係が付けられれば、後は前述の式にしたがって容易にＴａｎｉｍｏｔｏ係数を算出できる。
【０１２２】
この第２の実施の形態のシステムでも、翻訳への入力文と、その翻訳文との双方を用いて最良の翻訳文を選択する。入力文の内容語列と最も対応関係がよく付けられる訳文を選択するので、選択された翻訳文は入力文の意味を的確に表わしたものであることが期待される。
【０１２３】
［実験］
上に述べた第１の実施の形態（ＳＢＭ）および第２の実施の形態（ＡＢＭ）のシステムの性能がどの程度のものかを確認するために、以下のような実験を行なった。その際、要素として使用される機械翻訳システムの個々の性能と比較して、最良訳選択型の機械翻訳システムの性能の向上がどの程度になるのかについてを評価した。
【０１２４】
使用した機械翻訳システムは３つである。すなわち、ＴＤＭＴ、Ｄ３およびＳＭＴである。これらの機械翻訳システムは異なった枠組みを用い、異なった開発スタイルで開発され、異なった期間に開発されたものである。ＴＤＭＴおよびＤ３は用例ベースの翻訳を行なうものである。ただしＴＤＭＴは専門家により手作りされた短いテンプレートを用いるが、Ｄ３はコーパスから自動的に得られた長いテンプレートを用いるという違いがある。ＳＭＴは統計ベースの翻訳を行なうシステムである。開発期間はＴＤＭＴ，Ｄ３，ＳＭＴの順で短い。この相違のため、入力文ごとに得られる結果が異なり、またそのランクも文ごとに異なってくる。
【０１２５】
実験のために、外国旅行のための会話集などから日本語の文とその英語の訳文とを集めコーパスを形成した。それらの翻訳は文ごとに行なわれているため、得られたコーパスは必然的にバイリンガルコーパスとなった。これら日本語の文と英語の文との双方について予め形態素解析プログラムを用いて分類し、品詞のタグ付けを行なっておいた。全文数は約２０００００個であった。その統計について次の表に示す。
【０１２６】
【表１】
2004102942.tif 000005
このコーパス中からランダムに１，５２４文を選び、これをテストセットとし、残りの文については照合とトレーニングとに使用した。テストセットの各文をこれらの機械翻訳システムに与え、その出力を得た。さらに、プロフェッショナルの翻訳者がこれらの出力をそれぞれ４つのランクにランク分けした。
【０１２７】
このテストの際には、ＴＤＭＴのために以前に作成された対訳辞書を用いた。この対訳辞書は２４，６５８語を収録している。同様にＴＤＭＴのために以前に作成された意味辞書（シソーラス）も使用した。日本語のシソーラスのサイズは２１，６０８であり、英語のシソーラスのサイズは１１，３５９である。
【０１２８】
さらに、処理を簡便にするために、各文ごとにこれらＴＤＭＴとＤ３との機械翻訳システムの出力から、ＡＢＭおよびＳＢＭにより最良訳を選択した。この際、ＡＢＭのために使用する対訳辞書、シソーラスは出願人において用意した比較的語彙の少ないものを用いた。結果を図１５に示す。図１５には、従来のＮグラムを用いて最良訳を選択するシステムの結果も示してある。
【０１２９】
図１５において、「Ａ」はランクＡに分類された翻訳文の割合を、「ＡＢ」はランクＡまたはランクＢに分類された翻訳文の合計の割合を、「ＡＢＣ」はランクＡ，ＢまたはＣに分類された翻訳文の合計の割合を、それぞれ示す。
【０１３０】
図１５に示されるように、ＡＢＭおよびＳＢＭはいずれも要素の機械翻訳システムの成績をすべてのランクにおいて上回っている。またＡＢＭおよびＳＢＭはいずれも、従来のＮグラムによる信頼度を用いたシステムの成績をも上回った。これは、現在利用可能な機械翻訳システムでは、原文と翻訳文との間の対応関係を保存することが必ずしも可能でないことを反映していると思われる。
【０１３１】
以上のように、本発明の実施の形態では、入力文と出力文との双方の情報を用いて翻訳の信頼度を計算する。出力文のみの情報を用いるものと比較して、より正確な選択を行なうことができる。また、本発明の実施の形態では、機械翻訳システムの外部の情報のみを選択に用いる。そのため、システムに依存せずに翻訳の信頼度を定めることができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態の装置を実現するコンピュータシステムの外観を示す図である。
【図２】図１に示すコンピュータシステムのブロック図である。
【図３】本発明の第１の実施の形態の装置の選択部を実現するプログラムの機能的構成をブロック図形式で示す図である。
【図４】表作成部の機能を模式的に示す図である。
【図５】第１の実施の形態にかかるシステムの翻訳文選択部の機能的ブロック図である。
【図６】本発明の第１の実施の形態にかかるシステムの翻訳文選択部が行なう処理を模式的に示す図である。
【図７】本発明の第１の実施の形態にかかるシステムの翻訳文選択部を実現するプログラムの制御構造を示すフローチャートである。
【図８】第１の実施の形態にかかるシステムの翻訳文選択部の動作を模式的に示す図である。
【図９】第２の実施の形態にかかるシステムの選択部を実現するプログラムの機能的構成をブロック図形式で示す図である。
【図１０】第２の実施の形態にかかるシステムにおいて補完辞書を作成する方法について説明するための模式図である。
【図１１】第２の実施の形態にかかるシステムの翻訳文選択部の機能的ブロック図である。
【図１２】本発明の第２の実施の形態にかかるシステムの翻訳文選択部を実現するプログラムの制御構造を示すフローチャートである。
【図１３】Ｔａｎｉｍｏｔｏ係数の算出例を模式的に示す図である。
【図１４】Ｔａｎｉｍｏｔｏ係数の算出例を模式的に示す図である。
【図１５】本発明の実施例の効果を示すためのグラフである。
【図１６】理想的な選択システムの効果を説明するためのグラフである。
【符号の説明】
２０　コンピュータシステム、５８　ＲＯＭ、６０　ＲＡＭ、６２　ＣＤ−ＲＯＭ、８０，３１０　選択部、９０　入力文　８２，８４，８６　機械翻訳エンジン　９２、９４、９６、９８　出力文　１１０，３２０　翻訳文選択部、１１２　表作成部、１２０　バイリンガルコーパス、１２２　意味辞書、１２４　意味対応表、３２２　補完辞書作成部、３２４　補完辞書、３２６　対訳辞書
【図１】
2004102942.tif 000006
【図２】
2004102942.tif 000007
【図３】
2004102942.tif 000008
【図４】
2004102942.tif 000009
【図５】
2004102942.tif 000010
【図６】
2004102942.tif 000011
【図７】
2004102942.tif 000012
【図８】
2004102942.tif 000013
【図９】
2004102942.tif 000014
【図１０】
2004102942.tif 000015
【図１１】
2004102942.tif 000016
【図１２】
2004102942.tif 000017
【図１３】
2004102942.tif 000018
【図１４】
2004102942.tif 000019
【図１５】
2004102942.tif 000020
【図１６】
2004102942.tif 000021