(57)【特許請求の範囲】
【請求項１】
複数言語による対訳文書の組である対訳文書組データを複数記憶する対訳文書組群データ記憶部と、
前記対訳文書組データ記憶部から読み出した前記対訳文書組データに基づき、単一の前記対訳文書組データ内に出現する語系列の前記複数の言語間での共起頻度をカウントし、全ての前記対訳文書組データにおける前記共起頻度の合計値が所定の頻度閾値以上となるような、前記複数言語による前記語系列の組を対訳フレーズ組候補として抽出して出力する対訳文書組群データ分析処理部と、
を具備する対訳表現処理装置であって、
前記対訳文書組群データ分析処理部は、前記複数言語のうちの第１の言語のデータ内で語系列を探索することによって全ての前記対訳文書組データ内の当該第１の言語における語系列の出現頻度をカウントし、前記出現頻度が前記頻度閾値以上であるような前記第１の言語における語系列それぞれについて、前記複数言語のうちの他の言語のデータ内で語系列を探索することによって、前記第１の言語の語系列と前記他の言語の語系列の前記共起頻度をカウントし、これを前記複数の言語間での共起頻度とするとともに、
前記対訳文書組群データ分析処理部は、前記の語系列の探索を順次行なう際に、現在の語系列の次に、前記現在の語系列の中の一語を置き換えて得られる新たな語系列よりも、前記現在の語系列に一語を加えて得られる新たな語系列のほうを、優先して先に探索対象とする、
ことを特徴とする対訳表現処理装置。
【請求項２】
請求項１に記載の対訳表現処理装置であって、
前記対訳文書組群データ分析処理部は、抽出する前記対訳フレーズ組候補それぞれについて対訳フレーズ組である確からしさを表わす統計量を算出し、算出した統計量を前記対訳フレーズ組候補とともに出力する、
ことを特徴とする対訳表現処理装置。
【請求項３】
複数言語による対訳文書の組である対訳文書組データを複数記憶する対訳文書組群データ記憶部と、
前記対訳文書組データ記憶部から読み出した前記対訳文書組データに基づき、単一の前記対訳文書組データ内に出現する語系列の前記複数の言語間での共起頻度をカウントし、全ての前記対訳文書組データにおける前記共起頻度の合計値が所定の頻度閾値以上となるような、前記複数言語による前記語系列の組を対訳フレーズ組候補として抽出して出力する対訳文書組群データ分析処理部と、
を具備する対訳表現処理装置であって、
前記対訳文書組群データ分析処理部は、前記複数言語のうちの第１の言語のデータ内で語系列を探索することによって全ての前記対訳文書組データ内の当該第１の言語における語系列の出現頻度をカウントし、前記出現頻度が前記頻度閾値以上であるような前記第１の言語における語系列それぞれについて、前記複数言語のうちの他の言語のデータ内で語系列を探索することによって、前記第１の言語の語系列と前記他の言語の語系列の前記共起頻度をカウントし、これを前記複数の言語間での共起頻度とするとともに、
前記対訳文書組群データ分析処理部は、前記他の言語のデータ内での語系列の探索中に、前記第１の言語の語系列と前記他の言語の語系列との組が対訳フレーズ組である確からしさを表わす統計量を算出し、現在の当該他の言語の語系列に関して算出した前記統計量が表わす確からしさが、当該現在の当該他の言語の語系列から一語を除いた語系列について既に算出されていた前記統計量が表わす確からしさよりも低く、かつ所定の統計量閾値が表わす確からしさよりも低い場合には、以後の、当該現在の当該他の言語の語系列に一語を加えて得られる新たな語系列の探索を抑止する、
ことを特徴とする対訳表現処理装置。
【請求項４】
複数言語による対訳文書の組である対訳文書組データを複数記憶する対訳文書組群データ記憶部を具備するコンピュータに、
前記対訳文書組データ記憶部から読み出した前記対訳文書組データに基づき、単一の前記対訳文書組データ内に出現する語系列の前記複数の言語間での共起頻度をカウントし、全ての前記対訳文書組データにおける前記共起頻度の合計値が所定の頻度閾値以上となるような、前記複数言語による前記語系列の組を対訳フレーズ組候補として抽出して出力する対訳文書組群データ分析処理過程、
の処理を実行させるコンピュータプログラムであって、
前記対訳文書組群データ分析処理過程では、前記複数言語のうちの第１の言語のデータ内で語系列を探索することによって全ての前記対訳文書組データ内の当該第１の言語における語系列の出現頻度をカウントし、前記出現頻度が前記頻度閾値以上であるような前記第１の言語における語系列それぞれについて、前記複数言語のうちの他の言語のデータ内で語系列を探索することによって、前記第１の言語の語系列と前記他の言語の語系列の前記共起頻度をカウントし、これを前記複数の言語間での共起頻度とするとともに、
前記対訳文書組群データ分析処理過程では、前記の語系列の探索を順次行なう際に、現在の語系列の次に、前記現在の語系列の中の一語を置き換えて得られる新たな語系列よりも、前記現在の語系列に一語を加えて得られる新たな語系列のほうを、優先して先に探索対象とする、
ことを特徴とするコンピュータプログラム。
【請求項５】
複数言語による対訳文書の組である対訳文書組データを複数記憶する対訳文書組群データ記憶部を具備するコンピュータに、
前記対訳文書組データ記憶部から読み出した前記対訳文書組データに基づき、単一の前記対訳文書組データ内に出現する語系列の前記複数の言語間での共起頻度をカウントし、全ての前記対訳文書組データにおける前記共起頻度の合計値が所定の頻度閾値以上となるような、前記複数言語による前記語系列の組を対訳フレーズ組候補として抽出して出力する対訳文書組群データ分析処理過程、
の処理を実行させるコンピュータプログラムであって、
前記対訳文書組群データ分析処理過程では、前記複数言語のうちの第１の言語のデータ内で語系列を探索することによって全ての前記対訳文書組データ内の当該第１の言語における語系列の出現頻度をカウントし、前記出現頻度が前記頻度閾値以上であるような前記第１の言語における語系列それぞれについて、前記複数言語のうちの他の言語のデータ内で語系列を探索することによって、前記第１の言語の語系列と前記他の言語の語系列の前記共起頻度をカウントし、これを前記複数の言語間での共起頻度とするとともに、
前記対訳文書組群データ分析処理過程では、前記他の言語のデータ内での語系列の探索中に、前記第１の言語の語系列と前記他の言語の語系列との組が対訳フレーズ組である確からしさを表わす統計量を算出し、現在の当該他の言語の語系列に関して算出した前記統計量が表わす確からしさが、当該現在の当該他の言語の語系列から一語を除いた語系列について既に算出されていた前記統計量が表わす確からしさよりも低く、かつ所定の統計量閾値が表わす確からしさよりも低い場合には、以後の、当該現在の当該他の言語の語系列に一語を加えて得られる新たな語系列の探索を抑止する、
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自然言語処理に関する。特に、相互に対応する複数言語の文書間の対訳表現の対応を自動的に推定するなどの処理を行なう対訳表現処理装置およびそのプログラムに関する。
【背景技術】
【０００２】
二言語による対訳文中に含まれる表現の対応関係を自動的に推定するための従来技術は、下記の通りである。
［単語単位の手法］  非特許文献１には、単語単位で対訳関係を推定する手法が記載されている。また、この文献の筆者は、単語単位で対訳関係を推定するコンピュータプログラム「GIZA++」を公開している。
［同時生起確率に基づく手法］  非特許文献２には、各言語の文書を複数の表現の列に分割し、対訳表現候補のペアの同時生起確率に基づいて，確率が最も高くなる表現のペアを対訳表現として推定する手法が記載されている。
【非特許文献１】Franz Josef Och，Hermann Ney，“A Systematic Comparison of Various Statistical Alignment Models”，Computational Linguistics，２００３年，volume 29，number 1，ｐｐ．１９−５１，March 2003.
【非特許文献２】Daniel Marcu，外１名，“A Phrase-Based, Joint Probability Model for Statistical Machine Translation”，Proceedings of the ACL-02 conference on Empirical methods in natural language processing，２００２年，Volume 10，ｐ．１３３−１３９．
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上述した従来技術には、次のような問題がある。
非特許文献１に記載された手法では、１単語と複数単語との対訳関係を推定するため、複数単語からなる表現同士の対訳関係を推定することができないという問題があった。
また、非特許文献２に記載された手法では、長い対訳表現を獲得することができないという問題があった。
【０００４】
本発明は、上記の課題認識に基づいて行なわれたものであり、対訳の文書対において、対訳関係である表現同士を推定（以下、アラインメント（alignment）と呼ぶ）する処理であって、より広く対訳の表現同士の対応が取れるように、複数単語同士のアラインメントができるとともに、長い対訳表現のアラインメントを可能とする対訳表現処理装置およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
［１］上記の課題を解決するため、本発明の一態様による対訳表現処理装置は、複数言語による対訳文書の組である対訳文書組データを複数記憶する対訳文書組群データ記憶部と、前記対訳文書組データ記憶部から読み出した前記対訳文書組データに基づき、単一の前記対訳文書組データ内に出現する語系列の前記複数の言語間での共起頻度をカウントし、全ての前記対訳文書組データにおける前記共起頻度の合計値が所定の頻度閾値以上となるような、前記複数言語による前記語系列の組を対訳フレーズ組候補として抽出して出力する対訳文書組群データ分析処理部とを具備することを特徴とする。
ここで、複数言語とは、代表的には二言語の場合であるが、三言語以上の場合も含む。
この構成によれば、文書内における言語間の語系列の共起頻度を計算し、その共起頻度が頻度閾値（ζ）以上のものを抽出することができる。共起頻度が頻度閾値以上であるということは、対訳フレーズである可能性が高く、これを対訳フレーズの組の候補とすることは妥当である。
【０００６】
［２］また、本発明の一態様は、上記の対訳表現処理装置において、前記対訳文書組群データ分析処理部は、前記複数言語のうちの第１の言語のデータ内で語系列を探索することによって全ての前記対訳文書組データ内の当該第１の言語における語系列の出現頻度をカウントし、前記出現頻度が前記頻度閾値以上であるような前記第１の言語における語系列それぞれについて、前記複数言語のうちの他の言語のデータ内で語系列を探索することによって、前記第１の言語の語系列と前記他の言語の語系列の前記共起頻度をカウントし、これを前記複数の言語間での共起頻度とすることを特徴とする。
この構成による具体的な手順で、共起頻度を実際にカウントすることが可能である。
【０００７】
［３］また、本発明の一態様は、上記の対訳表現処理装置において、前記対訳文書組群データ分析処理部は、前記の語系列の探索を順次行なう際に、現在の語系列の次に、前記現在の語系列の中の一語を置き換えて得られる新たな語系列よりも、前記現在の語系列に一語を加えて得られる新たな語系列のほうを、優先して先に探索対象とすることを特徴とする。
つまり、この態様における対訳文書組群データ分析処理部は、深さ優先の探索（Depth First Search）を行なう。幅優先の探索（Breadth First Search）を行なう場合には、幅方向の広がりに伴う膨大な状態の情報をメモリに記憶しておく必要があるが、本態様では深さ優先探索であるため、メモリ量が少なくて済み、現実的な装置構成で探索処理を行なうことができる。
【０００８】
［４］また、本発明の一態様は、上記の対訳表現処理装置において、前記対訳文書組群データ分析処理部は、抽出する前記対訳フレーズ組候補それぞれについて対訳フレーズ組である確からしさを表わす統計量を算出し、算出した統計量を前記対訳フレーズ組候補とともに出力することを特徴とする。
【０００９】
［５］また、本発明の一態様は、上記の対訳表現処理装置において、前記対訳文書組群データ分析処理部は、前記他の言語のデータ内での語系列の探索中に、前記第１の言語の語系列と前記他の言語の語系列との組が対訳フレーズ組である確からしさを表わす統計量を算出し、現在の当該他の言語の語系列に関して算出した前記統計量が表わす確からしさが、当該現在の当該他の言語の語系列から一語を除いた語系列について既に算出されていた前記統計量が表わす確からしさよりも低く、かつ所定の統計量閾値（τ）が表わす確からしさよりも低い場合には、以後の、当該現在の当該他の言語の語系列に一語を加えて得られる新たな語系列の探索を抑止することを特徴とする。
この構成により、統計量に基づいて、枝刈りしながらの探索を行なうことができ、トータルな計算量を削減することができる。
【００１０】
［６］また、本発明の一態様によるコンピュータプログラムは、複数言語による対訳文書の組である対訳文書組データを複数記憶する対訳文書組群データ記憶部を具備するコンピュータに、前記対訳文書組データ記憶部から読み出した前記対訳文書組データに基づき、単一の前記対訳文書組データ内に出現する語系列の前記複数の言語間での共起頻度をカウントし、全ての前記対訳文書組データにおける前記共起頻度の合計値が所定の頻度閾値以上となるような、前記複数言語による前記語系列の組を対訳フレーズ組候補として抽出して出力する対訳文書組群データ分析処理過程の処理を実行させる。
【発明の効果】
【００１１】
本発明によれば、対訳文書組群データ内の表現（語系列）を探索して、言語間におけるその表現の共起頻度（文数）をカウントし、その結果に基づいて対訳フレーズ候補を抽出するため、複数単語の表現同士を対訳フレーズ候補として対応付けることができる。
また、この方法により、アラインメントする表現の長さに制約を受けない。
また上記において、対訳文書組群データ分析処理部は、深さ優先の探索を行なうため、探索空間中に記憶しておくべきメモリの量が少なくて済む。膨大な探索空間を探索することになるが、深さ優先としていることによって、現実的なメモリ量で必要な探索を実際に行なうことができる。
また、統計量を用いて、探索空間の枝刈りを行なうため、全体の計算量が少なくて済み、短時間で処理を行なえるようになる。
また、包含的にアラインメントするため，長い表現から短い表現まで複数の長さのアラインメント結果が得られる．
【発明を実施するための最良の形態】
【００１２】
以下、図面を参照して本発明の実施形態を説明する。
本実施形態は、次の２段階の処理でアラインメントを行なう。まず、第１段階で、対訳文書対群データ（パラレルデータ）から複数の統計量がしきい値以上となる対訳フレーズ候補を抽出する。次の第２段階では、他のアラインメントと整合性がとれる対訳フレーズ候補の中から、複数の特徴量を用いて識別的に候補を選択していくことでアラインメントを確立させていく。この特徴量としては、単語レベルとフレーズレベルの統計量や対訳辞書の登録の有無を利用する。以下では、これらの段階ごとの処理について述べる。
【００１３】
＜１．  対訳フレーズ候補の抽出＞
図１は、本実施形態による対訳表現処理装置１００の機能構成を示すブロック図である。この対訳表現処理装置１００は、対訳文書の対を大量に記憶する対訳文書対群データを基に、対訳フレーズ候補（対訳フレーズ組候補）を抽出するとともにそれら候補の統計量を算出するものである。
【００１４】
図示するように、対訳表現処理装置１００は、対訳文書対群データ記憶部１（対訳文書組群データ記憶部）と、対訳文書対群データ分析処理部２（対訳文書組群データ分析処理部）と、対訳フレーズ候補データ記憶部３とを含んで構成される。
対訳文書対群データ記憶部１は、二言語（複数言語）による対訳文書の対（組）である対訳文書対（組）データを、数多く記憶するものである。
対訳文書対群データ分析処理部２は、対訳文書対データ記憶部１から読み出した対訳文書対（組）データに基づき、単一の対訳文書対（組）データ内に出現する語系列の複数の言語間での共起頻度をカウントし、全ての対訳文書対（組）データにおける共起頻度の合計値が所定の頻度閾値以上となるような、複数言語による語系列の対（組）を対訳フレーズ対（組）候補として抽出して、対訳フレーズ候補データ記憶部３に書き込む。
対訳フレーズ候補データ記憶部３は、抽出された対訳フレーズ候補データを記憶する。
なお、対訳文書対群データ分析処理部２は電子的な回路等によって構成される。また、対訳文書対群データ記憶部１や対訳フレーズ候補データ記憶部３は、半導体メモリやハードディスク装置などを用いて実現され、電子的な手段を介してデータを読み書きすることが可能となっている。
【００１５】
図２は、対訳表現文書対群データ記憶部に格納される対訳表現文書対群データの構成を示す概略図である。図示するように、対訳表現文書対群データは、例えば表形式のデータとして表現され、文番号と文（言語Ｊ、第１の言語）と文（言語Ｅ、他の言語）のデータ項目（列）を有する。つまり、複数の言語による文が関連付けられている。このデータの各行が対訳表現文書対に対応する。文番号は、この対訳表現文書対群データ内において対訳表現文書対を一意に特定することのできる通し番号である。文（言語Ｊ）の列は、各行の対訳表現文書対における第１の言語（言語Ｊ）による文を格納する。文（言語Ｅ）の列は、各行の対訳表現文書対における第２の言語（言語Ｅ）による文を格納する。ここで、言語Ｊおよび言語Ｅは、例えば、日本語や英語などといった言語であるが、これら２種類の言語には限定されず、任意の言語であってよい。
【００１６】
図３は、対訳表現文書対群データ記憶部に格納される対訳表現文書対の例を示す概略図である。このデータの例では、言語Ｊは日本語であり、言語Ｅは英語である。そして、格納されている文番号「１」のデータは、言語Ｊの文「台風  は  あす  の  昼  頃  九州  の  南東  の  海上  で  温帯  低  気圧  に  変わる  見込み  です  。」と言語Ｅの文「The typhoon is expected to downgrade over the sea southeast of Kyushu tomorrow afternoon .」が対訳表現文書対であることを表わしている。ここで、両言語による対訳は、必ずしも厳密な逐語訳であることを要しない。なお、日本語のように通常使われる際に分かち書きされない言語の文の場合には、予め形態素解析処理などを行なうことによって、形態素間に空白文字を入れておく。また、日本語の句点「。」や読点「、」、および英語のピリオドやカンマなども、便宜上、独立した形態素として扱う。
【００１７】
図４は、対訳フレーズ候補データ記憶部３に記憶される対訳フレーズ候補データの構成およびデータ例を示す概略図である。対訳フレーズ候補データは、例えば表形式で表わされるデータであり、フレーズ（言語Ｊ）ｐｊとフレーズ（言語Ｅ）ｐｅと４種類の統計量の各項目（列）を有する。本実施形態で用いている統計量は、有意確率（−ｌｏｇ（p-value×２））と、Ｄｉｃｅ係数と、フレーズ平均生成確率と、フレーズ生成確率の４種類である。これらの統計量の詳細については後述する。一例として、図中のテーブルのデータの第６行目は、言語Ｊのフレーズ「気象庁」と言語Ｅのフレーズ「The meteorological agency」とが対訳フレーズとなる対の候補であり、この対の統計値としては、有意確率が２４３０．２５、Ｄｉｃｅ係数が０．７４３７９７、フレーズ平均生成確率が０．２８６２８８、フレーズ生成確率が０．２４０４３６であることを表わしている。
【００１８】
次に、対訳表現処理装置１００の具体的な処理内容について説明する。
ここでは、フレーズ対の列挙アルゴリズムと枝刈り手法を用いて、複数の統計量が閾値以上となるフレーズ対を効率的に抽出する手法について述べる。ここでフレーズとは、連続する１つ以上の単語からなる任意長の表現である。二種類の言語（ここでは、日本語と英語）各々毎に頻出表現を抽出すると、取得される表現の数が多くなるため、それら二言語の表現の組合せ数は膨大になり、従ってデータ量の多い組合せの計算は困難である。ただし、共起する文数が閾値以上であるような表現対を探索する場合に，各言語毎に出現文数が閾値以上の表現を抽出して、得られた各言語の表現の組（ここでは、日本語表現と英語表現の組）が共起する文を数えるとしきい値未満になる組が多く含まれることになる。そこで、本実施形態の手法では、共起する文数が閾値以上となるフレーズ対を直接探索するアルゴリズムを用いる。この手法のアルゴリズムの基本的な考え方は、深さ優先探索を２段階で行い、頻度以外の統計量を用いて枝刈りするというものである。
以下においては、まず、単言語での出現文数が多いフレーズの深さ優先探索を定式化し、その次に、２段階の深さ優先探索を行なう方法について説明する。
【００１９】
＜１．１  単言語でのフレーズの深さ優先探索手法＞
深さ優先探索を利用した、出現文数が多いフレーズの単言語での探索を以下のように定式化する。
単語の集合をＷ＝｛ｗ１，ｗ２，・・・，ｗｎ｝とする。文をsとし、文番号をｄとし、文番号と文のペア（ｄ，ｓ）の集合をコーパスＳとする。フレーズをｐとする。単語の系列（語系列）をｆ＝ｆ１ｆ２・・・ｆｌ（ただし、ｆｉ∈Ｗ，ｉ∈{１，２，・・・，ｌ}と定義する。ｓとｐは系列で表される。コーパスＳの中でのフレーズｐの出現文数をｃ（ｐ）とする。
【００２０】
単言語での出現文数が閾値ζ（頻度閾値）以上のフレーズの探索とは、任意の自然数ζに対し、ｃ（ｐ）≧ζとなるようなフレーズｐをすべて列挙することである。このような列挙は、以下に説明する深さ優先探索に基づくアルゴリズムにより実行することができる。
【００２１】
ここで、アルゴリズムの説明の前に、以下で使用する変数を定義する。ある系列ｆを含む部分コーパスをＸとする（Ｘ⊆Ｓ）。索引として利用する集合Ｙ，Ｈ，Ｇを次のように定義する。
即ち、Ｘにおいて、文番号ｄに対応する文の中において系列ｆに一致する末尾の単語位置に１を加えた値をrとする。そして、文番号ｄと値ｒとのペア（ｄ，ｒ）の集合をＹとする。ただし、r が文末の単語位置より大きい場合にはそのペア（ｄ，ｒ）を集合Ｙに含めない。
部分コーパスＸの中の全てのペア（ｄ，ｓ）において、（ｄ，ｒ）∈Ｙとなるような文番号ｄおよび値ｒと、その文における単語位置ｒの単語ｇとの組（ｄ，ｒ，ｇ）の集合をＨとする。
そして、集合Ｈに含まれる単語ｇの集合をＧとする。
【００２２】
図５は、ζ＝２とした場合に，単語”ａ”で開始するフレーズを取得する処理の動作を説明的に示す概略図である。つまり、この図は、単言語における深さ優先でのフレーズの探索の例である。
【００２３】
深さ優先でのフレーズの探索の処理は、次の手順の通りである。
ステップ１：  初期値として、ｆ１＝ａとし、ｆ＝ｆ１とする。
ステップ２：  ｆを含む文の文番号ｄとその文ｓのペア（ｄ，ｓ）の集合Ｘを生成するとともに、文番号ｄと、ｆが出現した末尾位置プラス１の値ｒからなるペア（ｄ，ｒ）の集合Ｙを生成する。
ステップ３：  Ｘの基数であるところの｜Ｘ｜がζ以上（ここでは、ζ＝２）の場合にはそのｆをフレーズとして出力する。｜Ｘ｜がζ未満の場合には、現在のｆについての処理を終了する。
ステップ４：  集合Ｘと集合Ｙから、集合Ｈと集合Ｇを生成する。そして、ｆに後続する各単語ｗｉ（ｗｉ∈Ｇ）について、ｆの末尾にｗｉを追加したところの、
【００２４】
【数１】
0005341375.tif 000002
【００２５】
を作成し、さらに、
【００２６】
【数２】
0005341375.tif 000003
【数３】
0005341375.tif 000004
【００２７】
を作成する。そして、作成したこれらの、
【００２８】
【数４】
0005341375.tif 000005
【００２９】
を新たなｆ，Ｘ，Ｙとして、上記のステップ３に戻る。
この「新たなｆ」とは、現在のｆに、集合Ｙの各要素（ｄ，ｒ）について、コーパスＸ内の文番号ｄなる文の単語位置ｒにおける単語ｇを連結したものである。
【００３０】
上記のステップ１から３までの処理は、探索する対象の探索空間を木（tree）構造と見たときに、その木における現ノードから伸びる各枝につながる副木（sub tree）の探索の処理を再帰的に呼び出している。これを繰り返すことによって、ａから始まり、且つｃ（ｐ）≧２となる、全てのフレーズを抽出することができる。
なお、この探索の際には、深さ優先の探索を行なう。このように深さ優先の探索とすることによって、探索処理の途中で記憶しておくべき情報の量が爆発的に増えるのを防ぐことができる。
【００３１】
上記手順を図示している実例に適用した場合の具体的処理について説明する。
ノード（１）：  図の一番左のノードでは、探索の初期値として、ｆ＝ａとなっている。そして、コーパスＳの中で、系列ｆに対応する集合Ｘを求める。すると、（ｄ＝１，ｓ＝ａｂｃｄ）、（ｄ＝２，ｓ＝ｄａｂｃ）、（ｄ＝３，ｓ＝ａｃａｂ）、（ｄ＝４，ｓ＝ｂｄａｃ）という４つのペアを要素とする集合Ｘが得られる。ここで｜Ｘ｜＝４（｜Ｘ｜≧ζ）であるので、ｆ＝ａはフレーズとして出力される。そして、新たなｆとして、ｆ＝ａｂ（ｄ＝１，２，３で出現）とｆ＝ａｃ（ｄ＝３，４で出現）について、次の探索を行なう。
ノード（１−１）：  図中の上の枝の最初のノードは、ｆ＝ａｂに対応している。ここでは、｜Ｘ｜＝３であるので（｜Ｘ｜≧ζ）、ｆ＝ａｂはフレーズとして出力される。そして、新たなｆとして、ｆ＝ａｂｃ（ｄ＝１，２で出現）について、次の探索を行なう。ここでｄ＝３に対応する文ｓは、ａｂの後に単語が存在しないため、集合Ｙには含まれず、よってこれ以上の探索の対象とはならない。
ノード（１−１−１）：  次のノードは、ｆ＝ａｂｃに対応している。ここでは、｜Ｘ｜＝２であるので（｜Ｘ｜≧ζ）、ｆ＝ａｂｃはフレーズとして出力される。そして、新たなｆとして、ｆ＝ａｂｃｄ（ｄ＝１で出現）について、次の探索を行なう。
ノード（１−１−１−１）：  次のノードは、ｆ＝ａｂｃｄに対応している。ここでは、｜Ｘ｜＝１であるので（｜Ｘ｜＜ζ）、ｆ＝ａｂｃｄは出力されない。そして、この枝の処理を終了する。
ノード（１−２）：  次に、ノード（１）の直下のもう一つのノードであるノード（１−２）に移る。このノードは、ｆ＝ａｃに対応している。ここでは、｜Ｘ｜＝２であるので（｜Ｘ｜≧ζ）、ｆ＝ａｃはフレーズとして出力される。そして、新たなｆとして、ｆ＝ａｃａ（ｄ＝３で出現）について、次の探索を行なう。
ノード（１−２−１）：  次のノードは、ｆ＝ａｃａに対応している。ここでは、｜Ｘ｜＝１であるので（｜Ｘ｜＜ζ）、ｆ＝ａｃａは出力されない。そして、この枝の処理を終了する。
以上で、ｆ＝ａを初期値としたときのすべての探索が終了した。
【００３２】
図６は、上記の、単言語でのフレーズの深さ優先探索の処理手順を示す疑似コードである。この疑似コードは、ブロック構造を有する手続き型の言語によるものである。また、この図において、コードの左側の数字は行番号である。
１行目のコードは、φ（空系列）と、コーパスＳと、集合Ｙｉｎｉｔとを実引数として、下に述べる手続きＤｅｐｔｈＦｉｒｓｔＳｅａｒｃｈを呼び出すものである。ここで集合Ｙｉｎｉｔとは、（ｄ，ｓ）∈Ｓにおける、ｄと（その文ｓの中の全ての単語の位置）−１の値との、ペアの集合である。
２行目のコードは、手続きＤｅｐｔｈＦｉｒｓｔＳｅａｒｃｈおよびそのパラメータｆ，Ｘ，Ｙの宣言である。
３行目から１４行目までが、手続きＤｅｐｔｈＦｉｒｓｔＳｅａｒｃｈの実行部分である。
３行目は、ブロックの始まりを表わすｂｅｇｉｎ文である。
４行目は、集合Ｘと集合Ｙとを基に、集合Ｈと集合Ｇとを作る処理である。
５行目は、集合Ｇに含まれる各々の単語ｗｉについて、６行目から１３行目までの処理を実行させるための制御文「ｆｏｒｅａｃｈ」である。
６行目から８行目までは、現在のｗｉについて、
【００３３】
【数５】
0005341375.tif 000006
【００３４】
を作成させるための処理である。
９行目から１２行目までは、
【００３５】
【数６】
0005341375.tif 000007
【００３６】
の基数が閾値ζ以上の場合には（９行目のｉｆ文の条件が真の場合）、現在の
【００３７】
【数７】
0005341375.tif 000008
【００３８】
をフレーズとして出力する（１０行目の「ｏｕｔｐｕｔ」）とともに、
【００３９】
【数８】
0005341375.tif 000009
【００４０】
を実引数として再帰的に手続きＤｅｐｔｈＦｉｒｓｔＳｅａｒｃｈを呼び出す（１１行目）、という処理である。
なお、９行目のｉｆ文の条件が偽の場合には、何もしない。
１３行目のコードは、５行目の「ｆｏｒｅａｃｈ」に対応するｅｎｄ文である。
１４行目のコードは、３行目の「ｂｅｇｉｎ」に対応するｅｎｄ文である。
【００４１】
＜１．２  対訳フレーズ候補の抽出方法＞
次に、本実施形態の対訳文書対群データ分析処理部２による対訳フレーズ候補の抽出処理の手順について説明する。この手順は、上で図５と図６を参照しながら説明した単言語におけるフレーズ探索の処理手順を拡張している。
以下では、まず共起文数に基づくフレーズ対の列挙アルゴリズムについて述べ、次に対訳らしさの統計的指標について述べ、最後に統計量に基づく枝刈り手法について述べる。
【００４２】
＜１．２．１  共起文数に基づくフレーズ対の列挙アルゴリズム＞
まず、パラレルデータの各言語を区別するために、単言語におけるフレーズ探索の際に導入した変数を次のように拡張する。即ち、前で導入した変数に言語を識別するための文字を付加する。第１の言語である言語Ｊ（例として、ここでは日本語）についての変数には、変数の右肩に「ｊ」を付け、第２の言語である言語Ｅ（例として、ここでは英語）についての変数には、変数の右肩に「ｅ」を付ける。つまり、例えば変数ｓｊは日本語の文を示し、変数ｓｅは英語の文を示す。また、コーパスＳおよびＸのそれぞれは、文番号ｄと言語Ｊの文ｓｊと言語Ｅの文ｓｅとの組（ｄ，ｓｊ，ｓｅ）の集合である。なお、パラレルデータは対訳関係にある両言語（言語Ｊと言語Ｅ）の文が文番号を共有するため、言い換えればある文番号ｄに対応して言語Ｊの文のｓｊと言語Ｅの文ｓｅが存在しているため、文番号自体には言語を区別するための情報を付加する必要はない。この組（ｄ，ｓｊ，ｓｅ）は、対訳表現文書対群データ記憶部１に記憶されている対訳表現文書対群データにあたり、先に説明したデータ構成に対応している。
【００４３】
図７は、対訳文書対群データ分析処理部２による処理の手順を示す疑似コードであり、このコードは、深さ優先探索に基づく頻出フレーズ対を対訳文書対群データの中から抽出する処理を実現するものである。この図において、コードの左側の数字は行番号である。
図示するように、このコードには、手続きＥｘｐａｎｄＪの定義と、手続きＥｘｐａｎｄＥの定義と、メイン処理部分とが含まれている。メイン処理部分からは手続きＥｘｐａｎｄＪを呼び出し、手続きＥｘｐａｎｄＪの中からは手続きＥｘｐａｎｄＥを呼び出すとともに手続きＥｘｐａｎｄＪを再帰的に呼び出し、手続きＥｘｐａｎｄＥの中からは手続きＥｘｐａｎｄＥを再帰的に呼び出す構造となっている。
【００４４】
１行目のコードは、メイン処理部分であり、φ（空系列）と、コーパスＳと、集合Ｙｊｉｎｉｔとを実引数として、手続きＥｘｐａｎｄＪを呼び出すものである。ここで集合Ｙｊｉｎｉｔとは、（ｄ，ｓｊ，ｓｅ）∈Ｓにおける、文番号ｄと（その文番号ｄに対応する言語Ｊの文ｓｊの中の全ての単語の位置）−１の値ｒｊとの、ペアの集合である。
２行目のコードは、手続きＥｘｐａｎｄＪおよびそのパラメータｆｊ，Ｘ，Ｙｊの宣言である。
３行目から１５行目までが、手続きＥｘｐａｎｄＪの実行部分である。
３行目は、ブロックの始まりを表わすｂｅｇｉｎ文である。
４行目は、集合Ｘと集合Ｙｊとを基に、集合Ｈｊと集合Ｇｊとを作る処理である。
５行目は、集合Ｇｊに含まれる各々の単語ｗｊｉについて、６行目から１４行目までの処理を実行させるための制御文「ｆｏｒｅａｃｈ」である。
６行目から８行目までは、現在のｗｊｉについて、
【００４５】
【数９】
0005341375.tif 000010
【００４６】
を作成させるための処理である。
９行目から１２行目までは、
【００４７】
【数１０】
0005341375.tif 000011
【００４８】
の基数が閾値ζ以上の場合には（９行目のｉｆ文の条件が真の場合）、
【００４９】
【数１１】
0005341375.tif 000012
【００５０】
を作成する（なお、ここで集合Ｙｅｉｎｉｔとは、（ｄ，ｓｊ，ｓｅ）∈Ｓにおける、文番号ｄと（その文番号ｄに対応する言語Ｅの文ｓｅの中の全ての単語の位置）−１の値ｒｅとの、ペアの集合である）とともに、手続きＥｘｐａｎｄＥを呼び出し（１１行目のｃａｌｌ）、そして手続きＥｘｐａｎｄＪを再帰的に呼び出す（１２行目のｃａｌｌ）。ここで手続きＥｘｐａｎｄＥを呼び出す際には、実引数として、
【００５１】
【数１２】
0005341375.tif 000013
【００５２】
を渡す。また、手続きＥｘｐａｎｄＪを呼び出す際には、実引数として、
【００５３】
【数１３】
0005341375.tif 000014
【００５４】
を渡す。
なお、９行目のｉｆ文の条件が偽の場合には、何もしない。
１４行目のコードは、５行目の「ｆｏｒｅａｃｈ」に対応するｅｎｄ文である。
１５行目のコードは、３行目の「ｂｅｇｉｎ」に対応するｅｎｄ文である。
【００５５】
１６行目のコードは、手続きＥｘｐａｎｄＥおよびそのパラメータｆｅ，Ｘ，Ｙｅ，ｆｊの宣言である。
１７行目から２８行目までが、手続きＥｘｐａｎｄＥの実行部分である。
１７行目は、ブロックの始まりを表わすｂｅｇｉｎ文である。
１８行目は、集合Ｘと集合Ｙｅとを基に、集合Ｈｅと集合Ｇｅとを作る処理である。
１９行目は、集合Ｇｅに含まれる各々の単語ｗｅｉについて、２０行目から２７行目までの処理を実行させるための制御文「ｆｏｒｅａｃｈ」である。
２０行目から２２行目までは、現在のｗｅｉについて、
【００５６】
【数１４】
0005341375.tif 000015
【００５７】
を作成させるための処理である。
２３行目から２６行目までは、
【００５８】
【数１５】
0005341375.tif 000016
【００５９】
の基数が閾値ζ以上の場合には（２３行目のｉｆ文の条件が真の場合）、ｆｊと
【００６０】
【数１６】
0005341375.tif 000017
【００６１】
をフレーズ対として出力するとともに、手続きＥｘｐａｎｄＥを再帰的に呼び出す（２５行目のｃａｌｌ）。ここで手続ＥｘｐａｎｄＥを呼び出す際には、実引数として、
【００６２】
【数１７】
0005341375.tif 000018
【００６３】
を渡す。
なお、２３行目のｉｆ文の条件が偽の場合には、何もしない。
２７行目のコードは、１９行目の「ｆｏｒｅａｃｈ」に対応するｅｎｄ文である。
２８行目のコードは、１７行目の「ｂｅｇｉｎ」に対応するｅｎｄ文である。
【００６４】
つまり、疑似コードを用いて上で説明した処理手順では、単言語（言語Ｊ）でフレーズを深さ優先探索する手続きＥｘｐａｎｄＪの中で、他方の言語（言語Ｅ）のフレーズを深さ優先探索するための手続きＥｘｐａｎｄＥを呼び出す（１１行目のコード）といったように、深さ優先探索を２段階で行なっている。また、この処理手順の特徴は、手続きＥｘｐａｎｄＪの中で手続きＥｘｐａｎｄＥを呼び出す（１１行目のコード）際に、その２番目の実引数として、対訳文書対群データ全体にあたるコーパスＳではなく、
【００６５】
【数１８】
0005341375.tif 000019
【００６６】
を渡している点である。これにより、呼び出される手続きＥｘｐａｎｄＥの側ではｆｊが出現する文のみを探索することとなる。これにより、手続きＥｘｐａｎｄＥの中の２３行目のコードにおける
【００６７】
【数１９】
0005341375.tif 000020
【００６８】
は、パラメータとして渡されたｆｊと手続きＥｘｐａｎｄＥで探索するノードに対応する
【００６９】
【数２０】
0005341375.tif 000021
【００７０】
とのフレーズ対が共起する文数となり、共起文数が閾値ζ以上のフレーズ対を直接列挙することができる。
【００７１】
言い換えれば、上で説明した手続きＥｘｐａｎｄＪおよびＥｘｐａｎｄＥの処理を実行することにより、第１の言語（言語Ｊ）のデータ内で語系列を探索することによって全ての対訳文書対のデータ（コーパスＳ）内の当該第１の言語における語系列の出現頻度をカウントし、カウント結果の出現頻度が頻度閾値ζ以上であるような第１の言語における語系列それぞれについて、手続きＥｘｐａｎｄＥを呼び出し、他の言語（言語Ｅ）のデータ内で語系列を探索することによって、第１の言語の語系列と他の言語の語系列の共起頻度をカウントし、この共起頻度が頻度閾値ζ以上であるか否かに応じて、対訳フレーズ対候補を抽出している。
【００７２】
また、上で説明した手続きＥｘｐａｎｄＪおよびＥｘｐａｎｄＥの処理では、それぞれの言語について深さ優先探索を行なっているが、これは、言い換えれば、語系列の探索を順次行なう際に、現在の語系列の次に、現在の語系列の中の一語を置き換えて得られる新たな語系列（この新たな語系列は幅方向に広がる）よりも、現在の語系列に一語を加えて得られる新たな語系列（この新たな語系列は深さ方向に広がる）のほうを、優先して先に探索対象としているということである。
【００７３】
＜１．２．２  対訳らしさの統計的指標＞
対訳文書対群データ分析処理部２は、上述した探索処理の際に、フレーズ対を抽出する処理を行ないながら、同時にフレーズ対の統計的指標値を算出する処理を行なう。以下、統計的指標について説明する。
【００７４】
上述した列挙アルゴリズムは、共起文数に基づいてフレーズ対を列挙するものであるが、これによって列挙されるフレーズ対の中には、実際には対訳である可能性が低いものも多く含まれてしまう。そこで、対訳らしさを示す指標として、以下で説明する４種類の統計量を用いることによって、実際に対訳である可能性が高いものを対訳フレーズ候補として選択することが可能となる。
【００７５】
そこで、対訳文書対群データ分析処理部２は、これら４種類の統計量を算出して、算出された統計量が所定の閾値以上となるフレーズ対のみを、対訳フレーズ候補として抽出し、対訳候補フレーズデータとする。また、対訳文書対群データ分析処理部２は、算出した統計量を、フレーズ対と関連付けて、対訳フレーズ候補データ記憶部３に書き込んでおく。言い換えれば、対訳文書対群データ分析処理部２は、抽出する対訳フレーズ対候補それぞれについて対訳フレーズ対である確からしさを表わす統計量を算出し、算出した統計量を対訳フレーズ対候補とともに関連付けて出力する（対訳フレーズ候補データ記憶部３に書き込む）。
これにより、フレーズ対と関連付けたれた統計量の値を後で利用することができるようになる。なお、これら４種類の統計量は、図４にも示して、対訳フレーズ候補データの一部として説明した通りである。
【００７６】
本実施形態におけるこれら４種類の統計量とは、有意確率、Ｄｉｃｅ係数、フレーズ平均生成確率，フレーズ生成確率である。
＜１．２．２．１  有意確率＞
統計的仮説検定であるフィッシャーの正確確率検定（Ｆｉｓｈｅｒ’ｓ  Ｅｘａｃｔ  Ｔｅｓｔ）の片側検定をフレーズ対の共起文数について行い、その有意確率（ｐ−ｖａｌｕｅ）を２倍して負の対数をとった値を統計量として用いる。つまり、式で表わすと、
−ｌｏｇ（ｐ−ｖａｌｕｅ  ×  ２）
である。
【００７７】
ここで、図８は、コーパス中のデータ数（文数）ａ１，ａ２，ａ３，ａ４を要素とする２×２（２行・２列）の分割表である。ａ１，ａ２，ａ３，ａ４各々の定義は次の通りである。
ａ１は、言語Ｊの系列ｆｊと言語Ｅの系列ｆｅがどちらも出現するコーパス中のデータ数である。つまり、分割表におけるｆｅの行でｆｊの列の位置がａ１である。
ａ２は、系列ｆｊが出現せず、且つ系列ｆｅが出現するデータ数である。つまり、分割表におけるｆｅの行で¬（ｎｏｔ）ｆｊの列の位置がａ２である。
ａ３は、系列ｆｊが出現し、且つ系列ｆｅが出現しないデータ数である。つまり、分割表における¬ｆｅの行でｆｊの列の位置がａ３である。
ａ４は、系列ｆｊも系列ｆｅもどちらも出現しないデータ数である。つまり、分割表における¬ｆｅの行で¬ｆｊの列の位置がａ４である。
【００７８】
このとき、ｐ−ｖａｌｕｅは、次の式（１）で計算することができる。
【００７９】
【数２１】
0005341375.tif 000022
但し、
【数２２】
0005341375.tif 000023
【００８０】
上の式において、ｍｉｎ（ａ２，ａ３）は、ａ２あるいはａ３のいずれか小さいほうを値とする関数である。
なお、対訳文書対群データ分析処理部２は、手続きＥｘｐａｎｄＪの中の８行目において手続きＥｘｐａｎｄＥを呼び出す際に、２個目の引数として、
【００８１】
【数２３】
0005341375.tif 000024
【００８２】
を用いているが、さらに別に、２個目の引数としてＳを用いて手続きＥｘｐａｎｄＥを呼び出すことによってコーパスＳ全体を対象とするｆｅの探索ができるため、その結果としてａ１＋ａ２の値を得ることができる。
【００８３】
＜１．２．２．２  Ｄｉｃｅ係数＞
図８に示した２×２分割表の値を用いて、対訳文書対群データ分析処理部２は、次の式（２）で表わされるＤｉｃｅ係数を計算する。
【００８４】
【数２４】
0005341375.tif 000025
【００８５】
＜１．２．２．３  フレーズ平均生成確率＞
対訳文書対群データ分析処理部２は、次の式（３）で定義されるフレーズ平均生成確率を計算する。
【００８６】
【数２５】
0005341375.tif 000026
【００８７】
上の式における単語の条件付き確率Ｐは、ＥＭアルゴリズムにより最尤推定する確率モデルであるＩＢＭ  ｍｏｄｅｌ  １を用いる。なお、ＩＢＭ  ｍｏｄｅｌ  １については、次の文献に記載されている。文献：Franz Josef Och，Hermann Ney，“A Systematic Comparison of Various Statistical Alignment Models”，Computational Linguistics，２００３年，volume 29，number 1，ｐｐ．１９−５１，March 2003.
＜１．２．２．４  フレーズ生成確率＞
対訳文書対群データ分析処理部２は、次の式（４）で定義されるフレーズ生成確率を計算する。
【００８８】
【数２６】
0005341375.tif 000027
【００８９】
上の式における単語の条件付き確率Ｐは、ＥＭアルゴリズムにより最尤推定する確率モデルであるＩＢＭ  ｍｏｄｅｌ  １を用いる。
【００９０】
＜１．２．３  統計量に基づく枝刈りの方法＞
前述した処理手順によって、対訳文書対群データ分析処理部２はコーパス内のフレーズ対の探索を行なってフレーズ対候補を抽出することができるが、ここで述べる方法を用いることによって、さらに探索の処理時間を削減することも可能である。
具体的には、対訳文書対群データ分析処理部２は、計算量を削減するために探索中に、統計量を用いて探索対象の空間の枝刈りを行なう。
【００９１】
前述した処理手順では、言語Jと言語Ｅのフレーズ対の候補のうち、共起文数が閾値ζ以上のものを列挙することとした。ここでは、たとえ共起文数が閾値ζ以上であっても前記の統計量が所定の閾値未満となるものを探索空間から除外することにより計算量を削減する。しかしながら、探索処理の途中で前記の４種類の統計量（有意確率、Ｄｉｃｅ係数、フレーズ平均生成確率、フレーズ生成確率）が閾値以上となるフレーズ対を直接列挙することは困難である。
【００９２】
そこで、探索中に、これから探索する範囲の空間に統計量が閾値以上となるフレーズ対が出現するかどうかを予測し、その結果により、出現する見込みが少ないと予測した範囲を探索空間から除く枝刈りを行なう。具体的には次の通りである。
【００９３】
対訳文書対群データ分析処理部２は、手続きＥｘｐａｎｄＥを再帰的に呼び出して深さ優先の探索を行なっていくが、その探索途中において、言語Ｅの現在の系列（フレーズ候補）である
【００９４】
【数２７】
0005341375.tif 000028
【００９５】
の統計量が閾値（統計量閾値）未満で、かつひとつ前の（言い換えれば探索木において一段階分上の）系列であるｆｅの統計量よりも小さくなった場合には、それ以上深く探索しても（言い換えれば語を加えて系列をさらに長く伸ばしても）統計量は十分には大きくならないと予測して、それ以上深い探索を行なわずにその段階で打ち切る。言い換えれば、それ以上深い枝（つまり、その枝に続く探索空間）を刈る。
【００９６】
上記のような予測が有効である理由は次の通りである。言語Ｊのフレーズｐｊの対訳であるところの言語Ｅの対訳のｐｅが長い表現である場合、ｐｅの先頭からの部分的な系列ｆｅは、深さ方向への探索に伴ってその長さが対訳のｐｅに近づくほど統計量が大きくなることが期待される。つまり、統計量が所定の閾値未満の場合であって、且つ系列を一語分伸ばしても統計量がより小さくなってしまうような場合は、それ以上系列を延長しても統計量が当該閾値以上にはならないことが期待される。
【００９７】
図９は、枝刈り手法を適用した探索処理の手順を示す疑似コードである。この図において、コードの左側の数字は行番号である。この図に示す手続きＥｘｐａｎｄＥのコードによって図７で説明した手続きＥｘｐａｎｄＥのコードを置き換え、探索処理をすることによって、上で説明した枝刈りしながらの探索が行なえる。この疑似コードでは、統計量を一つの変数ｕとして簡略的に表現しているが、判断に用いる統計量は複数であっても良い。複数の統計量を用いて枝刈りを行なうか否かを判断する場合にも、この変数ｕをベクトルとみなして、そのベクトルの大小関係を適宜定義して閾値（複数の統計量のベクトル）との関係を判断すれば良いので、本質的にはこの図に示すコードの処理手順を適用できる。
【００９８】
１行目のコードは、手続きＥｘｐａｎｄＥおよびそのパラメータｆｅ，Ｘ，Ｙｅ，ｆｊ，ｕの宣言である。手続きＥｘｐａｎｄＥがパラメータとして受け取るｕは、系列ｆｅに対応する統計量である。
２行目から１８行目までが、手続きＥｘｐａｎｄＥの実行部分である。
２行目は、ブロックの始まりを表わすｂｅｇｉｎ文である。
３行目は、集合Ｘと集合Ｙｅとを基に、集合Ｈｅと集合Ｇｅとを作る処理である。
４行目は、集合Ｇｅに含まれる各々の単語ｗｅｉについて、５行目から１７行目までの処理を実行させるための制御文「ｆｏｒｅａｃｈ」である。
５行目から７行目までは、現在のｗｅｉについて、
【００９９】
【数２８】
0005341375.tif 000029
【０１００】
を作成させるための処理である。
８行目は、
【０１０１】
【数２９】
0005341375.tif 000030
【０１０２】
の基数が閾値ζ以上であるか否かを条件とする条件節を備えたｉｆ文である。この条件が真の場合には、９行目から１５行目までの処理を実行する。
９行目は、系列ｆｊと系列
【０１０３】
【数３０】
0005341375.tif 000031
【０１０４】
を対とするときの統計量である
【０１０５】
【数３１】
0005341375.tif 000032
【０１０６】
を算出する処理である。
１０行目は、９行目で算出した統計量が所定の閾値τ（統計量閾値）以上であるか否かを条件とする条件節を備えたｉｆ文である。この条件が真の場合には、系列ｆｊと系列
【０１０７】
【数３２】
0005341375.tif 000033
【０１０８】
をフレーズ対として出力する（１１行目）とともに、手続きＥｘｐａｎｄＥを再帰的に呼び出す（１２行目）。
１０行目の条件が偽の場合には、１３行目のｉｆ文の中の
【０１０９】
【数３３】
0005341375.tif 000034
【０１１０】
が真である場合（言い換えれば、９行目で算出した統計量が、ひとつ前からパラメータとして受け取った統計量ｕよりも大きい場合）、現在のフレーズ対を出力することはないものの、さらに深く探索するために手続きＥｘｐａｎｄＥを再帰的に呼び出す（１４行目）。
１２行目あるいは１４行目の処理で手続きＥｘｐａｎｄＥを呼び出す場合の実引数は、
【０１１１】
【数３４】
0005341375.tif 000035
【０１１２】
である。
８行目のｉｆ文の条件が偽の場合には、何もしない。
１７行目のコードは、４行目の「ｆｏｒｅａｃｈ」に対応するｅｎｄ文である。
１８行目のコードは、２行目の「ｂｅｇｉｎ」に対応するｅｎｄ文である。
以上のように、ここに示した処理手順の特徴は、たとえフレーズ対候補の共起文数が閾値ζ以上であっても、特徴量が閾値τ以上でない限りはそのフレーズ対を出力せず、さらに、特徴量が一つ前のそれよりも低下した場合には当該枝に関してはそれ以上の深さ優先の探索（手続きＥｘｐａｎｄＥの再帰的呼び出し）すら行なわない（枝刈りしている）ということである。
【０１１３】
なお、枝刈りするか否かの判断を行なう際には、次の系列に関する有意確率（−ｌｏｇ（ｐ−ｖａｌｕｅ  ×  ２）の値）とＤｉｃｅ係数の両方ともが、現在の系列に関するそれらの値よりも小さくなったときに、次の系列の枝を刈るようにすることが好適である。このように、これら２種類の統計量が両方とも悪く（小さく）なる場合に限って枝刈りするようにしたことで、枝刈りのし過ぎを防止でき、従って、計算量を削減しながらも必要な対訳フレーズ候補を十分に抽出することができる。
【０１１４】
以上、枝刈りを行なう手続きＥｘｐａｎｄＥの処理を言い換えれば、他の言語（言語Ｅ）のデータ内での語系列の探索中に、第１の言語（言語Ｊ）の語系列と前記他の言語の語系列との組が対訳フレーズ組である確からしさを表わす統計量を算出し（図９の疑似コードの９行目）、現在の言語Ｅの語系列に関して算出した統計量が表わす確からしさが、現在の言語Ｅの語系列から一語を除いた語系列（つまり、これは、探索空間の木における親ノードに対応する語系列）について既に算出されていた統計量（その疑似コードでは、手続きＥｘｐａｎｄＥの第５パラメータである変数ｕ）が表わす確からしさよりも低く（その疑似コードの１３行目のｉｆ文における比較）、かつ閾値（統計量閾値τ）が表わす確からしさよりも低い場合（その疑似コードの１０行目のｉｆ文における比較）には、以後の、現在の言語Ｅの語系列に一語を加えて得られる新たな語系列の探索を抑止する（つまり、その疑似コードの１４行目に記述されている手続きＥｘｐａｎｄＥの再帰的呼び出しを行なわない）。
【０１１５】
＜２．  フレーズ対のアラインメント＞
次に、対訳フレーズ候補データに基づいて、与えられる対訳文書対におけるフレーズ対のアラインメントを行なう処理について説明する。
図１０は、アラインメント処理を行なうための対訳表現処理装置２００の機能構成を示すブロック図である。図示するように、対訳表現処理装置２００は、対訳フレーズ候補データ記憶部３と、対訳辞書データ記憶部４と、対訳文書対データ入力部５と、対訳フレーズ候補取得部６と、対訳フレーズ候補順位付け処理部７と、アラインメント処理部８とを含んで構成され、そのアラインメント処理の結果を出力する。
【０１１６】
対訳フレーズ候補データ記憶部３は、前述した処理によって作成された対訳フレーズ候補データを記憶している。つまり、対訳フレーズ候補データとは、複数言語のそれぞれによる語系列を関連付けてなる対訳フレーズ対（組）候補を複数有するものである。対訳フレーズ候補データの構成については、図４を参照して説明した通りである。
【０１１７】
対訳辞書データ記憶部４は、二言語間の対訳フレーズ同士を関連付けて保持している対訳辞書データを記憶する。このデータは、語学的には充分な信頼度を有するデータである。但し、単言語でのフレーズの出現頻度や、二言語間でのフレーズ対の共起頻度や、フレーズの長さ（語数）などに基づく優先度を、付加的に、フレーズ対に関連付けて保持するようにしても良い。この優先度がフレーズの長さにも依存する理由は、例えば英語のイディオムに直接対応する日本語のフレーズが、そのイディオムを構成する個々の語に対応する日本語の語を組み合わせて成立するフレーズよりも、対訳フレーズとして優先されるべきである場合などがあるためである。
つまり、対訳辞書データ記憶部４は、複数言語（言語Ｊおよび言語Ｅ）のそれぞれによる語系列を関連付けてなる対訳フレーズを複数有する対訳辞書データを記憶する。
【０１１８】
対訳文書対データ入力部５は、アライメント処理の対象となる対訳文書の入力を受け付ける機能を有する。対訳文書対データ入力部５は、具体的には、利用者からの入力を受け付けるキーボード等であったり、ハードディスク装置からテキストを読み取る読み取り手段であったり、光学的に文字を読み取って認識するＯＣＲ（光学式文字認識，Optical Character Recognition）装置など、処理対象のテキストを取り込む手段である。
【０１１９】
対訳フレーズ候補取得部６は、対訳フレーズ候補データ記憶部３や対訳辞書データ記憶部４から読み取ったデータを参照することにより、対訳文書対データ入力部５が取り込んだ対訳文書対に合致する対訳フレーズ候補を全て取得する。対訳フレーズ候補が「合致する」とは、その対訳フレーズ候補の各言語のフレーズが、対訳文書対の中のそれぞれの言語に含まれている状態である。なお、このとき、対訳フレーズ候補取得部６は、対訳フレーズ候補データの中から取得した対訳フレーズ候補と、対訳辞書データから取得した対訳フレーズ候補とを区別する情報も保持しておく。また、対訳フレーズ候補データの中から取得した対訳フレーズ候補については、その統計量の値も関連付けて保持しておく。また、対訳辞書データが上記の優先度のデータを有している場合は、対訳辞書データの中から取得した対訳フレーズ候補については、その優先度の値も関連付けて保持しておく。
言い換えれば、対訳フレーズ候補取得部６は、複数言語それぞれによる文書を関連付けてなる対訳文書を表わす対訳文書対（組）データを基に、対訳フレーズ候補データ記憶部３から対訳フレーズ候補データを読み出し、複数言語の全てについて（つまり言語Ｊと言語Ｅの両方について）対訳文書の中に語系列が存在するような対訳フレーズ組候補を選択して取得する。
また、対訳フレーズ候補取得部６は、対訳辞書データ記憶部４から対訳辞書データを読み出し、対訳辞書に登録されているエントリであって、複数言語の全てについて対訳文書対の中に当該エントリの語系列が存在するような対訳フレーズを選択して取得する。
【０１２０】
対訳フレーズ候補順位付け処理部７は、フレーズ候補取得部６によって取得された順位付けを行なう。順位付けはスコア等に基づくものである。順位およびスコアの詳細については後述する。対訳フレーズ候補順位付け処理部７が順位付けを行なうことによって、対訳フレーズ候補取得部６によって取得されたすべての対訳フレーズ候補に全順序が与えられる。言い換えれば、対訳フレーズ候補取得部６取得されたすべての対訳フレーズ候補の中から任意に選んだ２つの対訳フレーズ候補について、一方が上位で他方が下位であるか或いはこれらが同順位であるかが決定的となる。
【０１２１】
アラインメント処理部８は、対訳フレーズ候補順位付け処理部７によって付けられた対訳フレーズ候補の順位に従って、所定の手順で包含的にアラインメントを行い、その処理結果を出力する。「包含的」の定義や、アラインメントの処理手順については後述する。
【０１２２】
なお、後述するように、本実施形態では、アラインメント結果を利用する統計量（対訳フレーズ候補アラインメント率）にも基づいてスコアを算出し、このスコアに基づいた医薬フレーズ候補の順位付けを行なっている。よって、対訳フレーズ候補順位付け処理部７の処理とアラインメント処理部８の処理とを複数回繰り返すようにしている。このとき、最初の順位付けでは、アラインメント処理結果がないため、アラインメント処理結果に基づく統計量を使わずにスコアを計算し、順位付けを行ない、その順位に基づいてアラインメント処理を行なう。その結果、アラインメント処理結果が得られるため、２回目以降は、アラインメント結果を利用する統計量を利用してアラインメント処理を行なえるようになる。２回目のアラインメント処理結果は最初のアラインメント結果より信頼性が高いので、２回目のアラインメント処理結果からさらにまたアラインメント処理結果を利用する統計量を計算し、その結果の順位に基づいて３回目のアラインメントを行なう。このように、処理結果が所定範囲に収束するまで、上記の繰り返しを行なっても良いし、予め定めた所定回数（例えば、３回）で繰り返しを停止するようにしても良い。
【０１２３】
次に、対訳表現処理装置２００による処理の詳細について説明する。以下では、まずアラインメントの方法について述べ、次にアラインメントで利用する統計的な特徴量について述べ、その後スコアの計算方法について述べ、最後に位置選択手法について述べる。
【０１２４】
＜２．１  アラインメントの方法＞
対訳フレーズ候補順位付け処理部７は、対訳フレーズ候補取得部６によって取得された対訳フレーズについて、対訳らしさの順位付けを行なう。対訳らしさの順位は次のように決定する。即ち、まず、前述した対訳辞書データに登録がある対訳フレーズ候補をまとめて便宜的にティア１とする。次に、ティア１には含まれず、且つ、フレーズ対の両言語側に内容語類を含む対訳フレーズ候補であってそのスコアが所定の閾値以上のものをまとめてティア２とする。次に、ティア１にも２にも含まれず、且つ、そのスコアが所定の閾値以上の対訳フレーズ候補をまとめてティア３とする。
ティア１から３までのいずれにも入らなかった対訳フレーズ候補（即ち、スコアが上記の各閾値に未たなかったもの）は、使われない。
【０１２５】
ここで、内容語類とは、日本語では一般的な名詞や動詞や形容詞など内容的な意味を持つ語である。一方、内容語類でないものは機能語であり、機能語は文法上の機能を果たすものの内容的な意味を持たない。
【０１２６】
上記の３つのティア間の順位としては、上位から順に、ティア１、ティア２、ティア３の順である。
ティア１内での対訳フレーズ候補の順位は、次の通りである。即ち、対訳辞書データが、前述した優先度を持っている場合には、各対訳フレーズ候補の順位は、その優先度の順である。但し、優先度がたまたま同じ場合には、同順位となる。対訳辞書データがこの優先度を持たない場合には、ティア１内のすべての対訳フレーズ候補は同順位である。
ティア２内での対訳フレーズ候補の順位は、各対訳フレーズ候補のスコアの順である。スコアがたまたま同じ場合には、同順位となる。
ティア３内での対訳フレーズ候補の順位は、各対訳フレーズ候補のスコアの順である。スコアがたまたま同じ場合には、同順位となる。
以上により、対象とするすべての対訳フレーズ候補の順位付けが行なわれる。
【０１２７】
言い換えれば、対訳フレーズ候補順位付け処理部７は、対訳フレーズ候補データ記憶部３から読み出した統計量に基づき、対訳フレーズ対（組）候補の確からしさの順位付けを行なう。
【０１２８】
アラインメント処理部８は、対訳の文ペアに出現する対訳フレーズ候補の中から、対訳フレーズを識別的に選択することでアラインメントする。ここでアラインメントするフレーズ対は、他のアラインメントと連結しないもの（非連結）、または他のアラインメントと包含的な関係にあるものに制限する。ここで言う「非連結」および「包含的」の定義については、後述する。
【０１２９】
上記の制限を満たすアラインメントを整合するアラインメントと呼ぶ。アラインメント処理部８は、順位が上位の対訳フレーズ候補から順に、アラインメントを試みていく。ある順位の対訳フレーズ候補を用いたアラインメントを試みるとき、そのアラインメントが既に確立しているアラインメントと連結しない場合或いは連結しても包含的である場合にはそのアラインメントは確立し、その他の場合にはそのアラインメントは確立しない（つまりその対訳フレーズ候補は使われない）。そして、アラインメント処理部８は、順位に従って、対象となるすべての対訳フレーズ候補のアラインメントを試みた結果を出力する。このような手順で処理を行なうことにより、処理結果に含まれるすべてのアラインメントは整合するアラインメントとなる。また、順位に従ってアラインメントを試みることにより、対訳である可能性が高いフレーズ対が優先的にアラインされる。
【０１３０】
図１１は、アラインメント処理部８によって出力されるアラインメント処理結果の例を示す概略図である。この処理結果の例は、図３にも示した対訳文の例を、対訳文書対データ入力部５から入力して処理した結果である。図１１は、まず、入力される対訳文の各言語における文中の単語の位置を、その単語の直後の括弧内の数字で示している。例えば、日本語文の中の単語「台風」は位置「１」であり、単語「は」は位置「２」であり、単語「あす」は位置「３」であり、以下同様である。日本語文の最後の句点「。」もここでは便宜的に単語として扱い、その位置は「２０」である。また対する英語文の中の単語「The」は位置「１」であり、単語「typhoon」は位置「２」であり、単語「is」は位置「３」であり、以下同様である。英語文の最後のピリオド「．」もここでは便宜的に単語として扱い、その位置は「１５」である。
【０１３１】
また、図１１は、アラインメントの処理結果も示している。処理結果の１行目では、日本語のフレーズ「台風」（位置「１」）が英語のフレーズ「typhoon」（位置「２」）にアラインされている。同２行目では、日本語のフレーズ「台風」（位置「１」）が英語のフレーズ「The」（位置「１」）・「typhoon」（位置「２」）にアラインされている。同３行目では、日本語のフレーズ「あす」（位置「３」）・「の」（位置「４」）が英語のフレーズ「tomorrow」（位置「１３」）にアラインされている。４行目以下に示すフレーズ同士のアラインメントも同様である。
以上説明したように、アラインメント処理結果のデータには、採用された対訳フレーズ対（組）候補の情報が含まれている。
【０１３２】
図１２は、アラインメントの整合性について説明するための概略図である。ここでは、図１１のアラインメント処理結果を参照しながら図１２（ａ）〜（ｃ）を説明する。
【０１３３】
まず図１２（ａ）は、図１１に示した１行目および２行目のアラインメントを、概念的に平面図で表わしている。この図において、記号Ｊ１は位置「１」の日本語単語「台風」に対応する。また、記号Ｅ１は位置「１」の英語単語「The」に対応し、記号Ｅ２は位置「２」の英語単語「typhoon」に対応する。記号アは１行目のアラインメントに対応する。「ア」の枠線が記号Ｊ１とＥ２を囲っているのは、１行目のアラインメントにおいては日本語フレーズ「台風」と英語フレーズ「typhoon」が対応していることを表わしている。同様に、記号イは、２行目のアラインメントに対応し、「イ」の枠線が記号Ｊ１とＥ１とＥ２を囲っているのは、日本語フレーズ「台風」と英語フレーズ「The」・「typhoon」が対応していることを表わしている。この図に示すように、記号「イ」は記号「ア」を包含している。よって、これらの記号「ア」と「イ」が表わすアラインメントは整合している。
【０１３４】
次に図１２（ｂ）は、図１１に示したアラインメントの３行目、４行目、５行目、６行目を表わしており、これらはそれぞれ、記号カ、キ、ク、ケに対応している。上と同様に、Ｊ３は日本語単語「あす」を表わし、Ｊ４は単語「の」を表わし、Ｊ５は単語「昼」を表わし、Ｊ６は単語「頃」を表わし、Ｅ１３は英語単語「tomorrow」を表わし、Ｅ１４は単語「afternoon」を表わしている。この図では、記号「カ」が記号「キ」を包含している。また、記号「ク」は、記号「カ」、「キ」、「ケ」をそれぞれ包含している。また、記号「カ」と記号「ケ」とは非連結であり、記号「キ」と記号「ケ」とは非連結である。このように、記号「カ」から「ク」までは互いに包含関係にあるか非連結であるかのいずれかであるので、これらの記号「カ」から「ク」までが表わすアラインメントは整合している。
【０１３５】
次に図１２（ｃ）は、２つのアラインメントが互いに整合しない例を示している。この図において、実線の枠で示すアラインメントは、単語Ｊ３とＥ１３とを含んでいる。一方、破線の枠で示すアラインメントは、単語Ｊ４とＥ１３とを含んでいる。つまり、これら両者は、包含関係でもなく非連結関係でもないため、互いに整合していない。逆に言うと、実線の枠で示すアラインメントが既に確立している場合、破線の枠で示す対訳フレーズ候補がたとえ存在していたとしても、先に述べたアラインメント処理部８は、この候補を採用せず、よって破線の枠で示されるアラインメントは確立されない。
【０１３６】
図１２を用いて例示した包含関係および非連結関係の定義は次の通りである。
アラインメントＡとＢとが包含関係にある（包含的である）とは、アラインメントＡに含まれる要素（単語）は全てアラインメントＢに含まれる要素であるか、或いは、アラインメントＢに含まれる要素は全てアラインメントＡに含まれる要素である、の少なくともいずれかが成り立つ場合であり、且つその場合のみである。
アラインメントＡとＢとが非連結関係にあるとは、アラインメントＡに含まれる要素（単語）のいずれもアラインメントＢの要素ではなく、且つ、アラインメントＢに含まれる要素のいずれもアラインメントＡの要素ではない場合であり、且つその場合のみである。
【０１３７】
そして、処理手順として、アラインメント処理部８が対訳フレーズ候補を用いて新たなアラインメントを確立させることができるのは、その新たなアラインメントが、既に確立しているいかなるアラインメントに対しても包含関係あるいは非連結関係のいずれかの関係が成り立つ場合であって、且つその場合のみである。
【０１３８】
まとめると、アラインメント処理部８は、対訳文書対（組）データを基に、対訳フレーズ候補取得部６によって取得された複数の対訳フレーズ対（組）候補から、複数の対訳フレーズ対（組）候補が互いに整合する関係（包含的関係あるいは非連結関係のいずれかの関係）を有するように、各々の前記対訳フレーズ対（組）候補を採用するか否かを決定し、採用された対訳フレーズ対（組）候補の情報を含んだアラインメント処理結果を出力する。
また、アラインメント処理部８は、対訳フレーズ候補順位付け処理部７による順位付けに基づき、確からしい対訳フレーズ対（組）候補を優先的に採用する。
また、アラインメント処理部８は、対訳フレーズ候補取得部６によって対訳辞書データ記憶部４から取得された対訳フレーズを、対訳フレーズ候補データ記憶部３から取得された対訳フレーズ対（組）候補よりも優先的に採用して、採用された対訳フレーズの情報をも含んだアラインメント処理結果を出力する。これは、対訳フレーズ候補順位付け処理部７が、対訳辞書データに登録されていた対訳フレーズに対して、前述の通りティア１として高い順位を与えていることによる。
【０１３９】
＜２．２  統計的な特徴量＞
次に、対訳フレーズ候補に関する対訳らしさのスコアを計算するために用いる特徴量について説明する。ここでは、６種類の特徴量を使用することができる。それらは、有意確率、Ｄｉｃｅ係数、フレーズ平均生成確率、フレーズ生成確率、単語アラインメント結果含有率、対訳フレーズ候補アラインメント率である。これら６種のうち、最初の４種の特徴量については既に説明したのでここでは説明を省略する。
【０１４０】
＜２．２．１  単語アラインメント結果含有率＞
単語単位のアラインメント結果において、対訳フレーズ候補のフレーズ中の単語のうち、対応するフレーズ中の単語にアラインメントされた単語の率が、単語アラインメント結果含有率である。ここでは，単語単位のアラインメント結果としてコンピュータプログラム「GIZA++」の標準設定であるＩＢＭ  ｍｏｄｅｌ  ４のアラインメント結果を用いる。単語アラインメントは、一方の言語の１単語と他方の言語の任意の数の単語とのアラインメントを行なうため、どの言語からどの言語に向けてアラインメントを行なうかによって、その結果が異なる。ここでは、単語アラインメントを日英および英日の双方向について行った結果、どちらの方向においてもアラインメントされた単語対のみをアラインメント結果とした場合の含有率（便宜上、「ＡＮＤ」と呼ぶ）と、少なくともいずれか一方の方向においてアラインメントされた単語対をアラインメント結果とした場合の含有率（便宜上、「ＯＲ」と呼ぶ）とを、統計量として算出し用いることができる。
【０１４１】
＜２．２．２  対訳フレーズ候補アラインメント率＞
パラレルデータをアラインメントした結果において、対訳フレーズ候補がアラインメントとして選択された数ｑｓと対訳フレーズ候補が出現した総数ｑａを用いて、（ｑｓ＋１）／（ｑａ＋１）を対訳フレーズ候補アラインメント率と定義する。
このように、対訳フレーズ候補アラインメント率は、アラインメント処理結果を基に算出される統計量（第２の統計量）である。
【０１４２】
＜２．３  スコアの計算手法＞
前記の６種類（そのうち単語アラインメント結果含有率は、さらにＡＮＤとＯＲの２種類に分かれる）の特徴量のうち、−ｌｏｇ（ｐ−ｖａｌｕｅ  ×  ２）をｈ１とし、Ｄｉｃｅ係数をｈ２とし、フレーズ平均生成確率をｈ３とし、フレーズ生成確率をｈ４とし、単語アラインメント結果含有率（ＡＮＤ）をｈ５とし、単語アラインメント結果含有率（ＯＲ）をｈ６とし、対訳フレーズ候補アラインメント率をｈ７とする。対訳フレーズ候補順位付け処理部７は、これらｈ１〜ｈ７の特徴量を用いて、次の式（５）によりスコア（ｓｃｏｒｅ）を計算する。
【０１４３】
【数３５】
0005341375.tif 000036
【０１４４】
ここで、λｉは各特徴量を重みづけるパラメータであり、γｉはスムージングのパラメータである。これらのパラメータの値は、どのような手段を用いて設定しても良いが、例えば、エラー率最小化学習によりパラメータの値を設定することができる。エラー率最小化学習については、次の文献に記載されている。文献：Franz Josef Och，“Minimum Error Rate Training in Statistical Machine Translation”，ACL，pp.160-167，2003．
【０１４５】
＜３．  対訳フレーズ候補の抽出およびフレーズ対のアラインメント＞
次に、対訳フレーズ候補の抽出処理およびフレーズ対のアラインメント処理を併せ持つ形態の対訳表現処理装置３００について説明する。
図１３は、この対訳表現処理装置３００の機能構成を示すブロック図である。図示するように、対訳表現処理装置３００は、対訳文書対群データ記憶部１Ａと、対訳文書対群データ分析処理部２Ａと、対訳フレーズ候補データ記憶部３Ａと、対訳辞書データ記憶部４Ａと、対訳文書対データ入力部５Ａと、対訳フレーズ候補取得部６Ａと、対訳フレーズ候補順位付け処理部７Ａと、アラインメント処理部８Ａとを含んで構成される。
【０１４６】
対訳表現処理装置３００の機能のうち、対訳文書対群データ記憶部１Ａと、対訳文書対群データ分析処理部２Ａと、対訳フレーズ候補データ記憶部３Ａの部分は、対訳文書対群データから対訳フレーズ候補を抽出する処理であり、その具体的な処理手順等は前述の対訳表現処理装置１００のそれと同様である。また、対訳フレーズ候補データ記憶部３Ａおよび対訳辞書データ記憶部４Ａのデータに基づく、対訳文書対データ入力部５Ａと、対訳フレーズ候補取得部６Ａと、対訳フレーズ候補順位付け処理部７Ａと、アラインメント処理部８Ａの部分の処理は、アラインメントを行なう処理であり、その具体的な処理手順等は前述の対訳表現処理装置２００のそれと同様である。
このように、対訳表現処理装置３００は、対訳フレーズ候補抽出処理を行なって対訳フレーズ候補データ記憶部３Ａに対訳フレーズ候補データを書き込み、この対訳フレーズ候補データを読み出しながらアラインメント処理を行なう。
【０１４７】
なお、図１３に示した対訳文書対群データ記憶部１Ａのデータと対訳文書対データ入力部５Ａから入力されるデータが同一の場合は、対訳フレーズ候補を抽出する際に、図７に示したアルゴリズムにおける出てくるＹｊおよびＹｅの値を対訳フレーズ候補とセットで出力して保存しておくことにより、どの対訳文書対のどの位置にどの候補が出現するのかが既にわかっている状態で対訳フレーズ候補取得の処理を開始することができ、つまり図１３の構成における対訳フレーズ候補取得部６Ａの処理を効率化することができる。
【０１４８】
なお、上述した実施形態における対訳表現処理装置の一部または全部の機能をコンピュータで実現するようにしても良い。その場合、対訳文書処理を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時刻の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時刻プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【０１４９】
以上、本発明の実施形態を説明したが、本発明はさらに次のような変形例でも実施することが可能である。
例えば、上述した実施形態では、二言語（言語Jと言語Ｅ）のみに対訳文書および対訳フレーズを対象としたが、三言語以上の役の組を対象としても、本質的には同様の処理方法で対訳フレーズ候補の抽出やアラインメントが行なえる。例えば、言語Ｊと言語Ｅに加えて言語Ｆの三言語とする場合、図７や図９に示した疑似コードを拡張してＥｘｐａｎｄＦという手続きを設け、ＥｘｐａｎｄＥでフレーズ対を出力する代わりに手続きＥｘｐａｎｄＦを呼び出すようにして、手続きＥｘｐａｎｄＦの中でフレーズの組を出力するとともに手続きＥｘｐａｎｄＦを再帰的に呼び出すようにする。四言語以上の場合も本質的には同様である。
【０１５０】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【０１５１】
例えば、上述した実施形態では、統計量として、有意確率、Ｄｉｃｅ係数、フレーズ平均生成確率、フレーズ生成確率、単語アラインメント結果含有率、対訳フレーズ候補アラインメント率を用いたが、適宜、別の統計量を用いるようにしても良い。また、本実施形態では、アラインメント処理結果に基づく統計量を一部に用いているため、アラインメント処理部８による処理結果を対訳フレーズ候補順位付け処理部７に帰還させ、順位付けの処理とアラインメント処理とを複数回繰り返すようにしているが、対訳フレーズ候補の順位付けの際にアラインメント処理結果に依存しない統計量のみに基づく順位付けを行なうようにすれば、このような複数回繰り返しの処理は必要ない。
また、上述した実施形態では、深さ優先探索の処理を行なう際に、木状の探索空間において、親ノードから子ノードに移る際に、系列の最後に語を加えて新たな系列を作成しているが、語を加える場所は任意であり、先頭に語を連結して新たな系列を生成しても良いし、また、既存系列中の任意の位置に語を挿入して新たな系列を生成しても良い。
また、上述した実施形態では、深さ優先の探索処理を行なうようにしたが、代わりに幅優先探索を行なっても良い。幅優先探索の場合は探索途中の状態を記憶するメモリ（空間計算量）が膨大に必要になるが、装置が充分なメモリさえ備えていれば、深さ優先探索と同等の結果が得られる。
【図面の簡単な説明】
【０１５２】
【図１】本発明の実施形態による対訳表現処理装置（対訳フレーズ候補の抽出処理）の機能構成を示すブロック図である。
【図２】同実施形態による対訳表現文書対群データの構成を示す概略図である。
【図３】同実施形態における対訳表現文書対の一例を示す概略図である。
【図４】同実施形態による対訳フレーズ候補データの構成およびデータ例を示す概略図である。
【図５】同実施形態による、単言語におけるフレーズの深さ優先探索（単語ａで始まるフレーズを探索し、閾値ζ＝２）の処理の動作を説明的に示す概略図である。
【図６】同実施形態による、単言語でのフレーズの深さ優先探索の処理手順を示す疑似コードである。
【図７】同実施形態による、深さ優先探索に基づく頻出フレーズ対を対訳文書対群データの中から抽出する処理を示す疑似コードである。
【図８】同実施形態による、コーパス中のデータ数（文数）の２×２分割表である。
【図９】同実施形態による、探索空間の枝刈り手法を適用した探索処理の手順を示す疑似コードである。
【図１０】本発明の実施形態による対訳表現処理装置（アラインメント処理）の機能構成を示すブロック図である。
【図１１】同実施形態によるアラインメント処理部によって出力されるアラインメント処理結果の例を示す概略図である。
【図１２】同実施形態におけるアラインメントの整合性を説明する概略図である。
【図１３】本発明の実施形態による対訳表現処理装置（対訳フレーズ候補の抽出処理およびアラインメント処理）の機能構成を示すブロック図である。
【符号の説明】
【０１５３】
１，１Ａ  対訳文書対群データ記憶部（対訳文書組群データ記憶部）
２，２Ａ  対訳文書対群データ分析処理部（対訳文書組群データ分析処理部）
３，３Ａ  対訳フレーズ候補データ記憶部
４，４Ａ  対訳辞書データ記憶部
５，５Ａ  対訳文書対データ入力部
６，６Ａ  対訳フレーズ候補取得部
７，７Ａ  対訳フレーズ候補順位付け処理部
８，８Ａ  アラインメント処理部
１００  対訳表現処理装置（対訳フレーズ候補データを抽出する処理）
２００  対訳表現処理装置（対訳フレーズをアラインメントする処理）
３００  対訳表現処理装置（対訳フレーズ候補データの抽出処理および対訳フレーズのアラインメント処理）
【図１】
0005341375.tif 000037
【図２】
0005341375.tif 000038
【図３】
0005341375.tif 000039
【図４】
0005341375.tif 000040
【図５】
0005341375.tif 000041
【図６】
0005341375.tif 000042
【図７】
0005341375.tif 000043
【図８】
0005341375.tif 000044
【図９】
0005341375.tif 000045
【図１０】
0005341375.tif 000046
【図１１】
0005341375.tif 000047
【図１２】
0005341375.tif 000048
【図１３】
0005341375.tif 000049