(57)【特許請求の範囲】
【請求項１】
選択処理手段を含み、元言語の文ｅｊと前記元言語の文ｅｊの対訳である目的言語の文ｆｊとのペア（ｅｊ，ｆｊ）の集合である訓練用対訳コーパスから予め生成された、元言語の文ｅｊの部分文字列であるフレーズｐｉと前記フレーズｐｉの対訳であり、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉとのフレーズ対ｘｉの集合であるフレーズテーブルから、部分集合を選択する情報処理装置における情報処理方法であって、
前記選択処理手段が、前記訓練用対訳コーパスの前記ペア（ｅｊ，ｆｊ）の各々について、前記ペア（ｅｊ，ｆｊ）の前記元言語の文ｅｊのｒ番目の単語ｅｊｒの各々が、前記フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つの前記フレーズ対ｘｉのフレーズｐｉであって、かつ、前記元言語の文ｅｊの部分文字列であるフレーズｐｉに含まれ、前記目的言語の文ｆｊのｒ番目の単語ｆｊｒの各々が、前記フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つの前記フレーズ対ｘｉの前記フレーズｑｉであって、かつ、前記目的言語の文ｆｊの部分文字列である前記フレーズｑｉに含まれるように、前記フレーズテーブルから部分集合を選択するステップ
を含む情報処理方法であって、
前記選択処理手段が前記フレーズテーブルから部分集合を選択するステップは、以下の式にしたがって、前記フレーズテーブルから部分集合を選択する、情報処理方法。
【数１】
0006482073.tif 000009
ただし、変数ｙｉ（ｉ＝１，．．．，Ｍ） は、フレーズ対ｘｉが前記部分集合に含まれるか否かを表す二値変数であり、ａｉｊｒはフレーズ対ｘｉによって元言語の文ｅｊのｒ番目の単語ｅｊｒが被覆されているかどうかを表すパラメータであり、被覆されているときにはａｉｊｒ＝１、被覆されていないときには０となるパラメータである。ｂｉｊｒはフレーズ対ｘｉによって目的言語の文ｆｊのｒ番目の単語ｆｊｒが被覆されているかどうかを表すパラメータであり、被覆されているときにはｂｉｊｒ＝１、被覆されていないときには０となるパラメータである。
【請求項２】
元言語の文ｅｊと前記元言語の文ｅｊの対訳である目的言語の文ｆｊとのペア（ｅｊ，ｆｊ）の集合である訓練用対訳コーパスから予め生成された、元言語の文ｅｊの部分文字列であるフレーズｐｉと前記フレーズｐｉの対訳であり、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉとのフレーズ対ｘｉの集合であるフレーズテーブルから、部分集合を選択する情報処理装置であって、
前記訓練用対訳コーパスの前記ペア（ｅｊ，ｆｊ）の各々について、前記ペア（ｅｊ，ｆｊ）の前記元言語の文ｅｊのｒ番目の単語ｅｊｒの各々が、前記フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つの前記フレーズ対ｘｉのフレーズｐｉであって、かつ、前記元言語の文ｅｊの部分文字列であるフレーズｐｉに含まれ、前記目的言語の文ｆｊのｒ番目の単語ｆｊｒの各々が、前記フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つの前記フレーズ対ｘｉの前記フレーズｑｉであって、かつ、前記目的言語の文ｆｊの部分文字列である前記フレーズｑｉに含まれるように、前記フレーズテーブルから部分集合を選択する選択処理手段
を含む情報処理装置であって、
前記選択処理手段は、以下の式にしたがって、前記フレーズテーブルから部分集合を選択する、情報処理方法。
【数２】
0006482073.tif 000010
ただし、変数ｙｉ（ｉ＝１，．．．，Ｍ） は、フレーズ対ｘｉが前記部分集合に含まれるか否かを表す二値変数であり、ａｉｊｒはフレーズ対ｘｉによって元言語の文ｅｊのｒ番目の単語ｅｊｒが被覆されているかどうかを表すパラメータであり、被覆されているときにはａｉｊｒ＝１、被覆されていないときには０となるパラメータである。ｂｉｊｒはフレーズ対ｘｉによって目的言語の文ｆｊのｒ番目の単語ｆｊｒが被覆されているかどうかを表すパラメータであり、被覆されているときにはｂｉｊｒ＝１、被覆されていないときには０となるパラメータである。
【請求項３】
請求項１に記載の情報処理方法の各ステップをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理方法、装置、及びプログラムに関する。
【背景技術】
【０００２】
統計的機械翻訳法とは、確率・統計の技術を用いてある言語（以下、元言語と称する。）で書かれた文書を別の言語（以下、目的言語と称する。）で書かれた文書へと自動的に翻訳する手法のことである。様々な統計的機械翻訳手法が存在するが、その中の１つであるフレーズに基づく統計的機械翻訳では、元言語の文を、語の連なりからなる句を並べたものとして表現し、それを目的言語の対応する句の並びに変換することで翻訳を行う。
【０００３】
フレーズに基づく統計的機械翻訳を行うためには、フレーズテーブルとよばれる、元言語のあるフレーズが目的言語のどのフレーズに訳されるかを示したテーブルを用意する必要がある。フレーズテーブルをＳとする。Ｓの構成要素はフレーズ対（ｐ，ｑ）である。ここでｐは元言語のフレーズであり、ｑは目的言語のフレーズである。フレーズテーブルに含まれるフレーズ対の種類が、その翻訳システムが翻訳可能な語彙を定めていることから、一般にフレーズテーブルに含まれるフレーズ対の総数は膨大な数になる。
【０００４】
フレーズに基づく統計的機械翻訳システムによって翻訳を行う際には、計算機の記憶装置に格納されたフレーズテーブルに繰り返しアクセスする必要がある。フレーズテーブルに含まれるフレーズ対の数が膨大となると、翻訳文を生成する際に取りうる選択肢が増加することから、結果的に翻訳文の生成に時間がかかるようになる。
【０００５】
また、一般に、フレーズテーブルに含まれるフレーズ対は、対訳関係にある元言語と目的言語の文の対の単語アラインメントの結果をもとにして自動的に獲得されるものであるが、こうして得られたフレーズ対には対訳関係になっていない、質の悪いフレーズ対も多く含まれる。質の悪いフレーズ対は翻訳生成時のノイズとなって生成される翻訳の質の低下につながる。これらの理由から、与えられたフレーズテーブルから質の悪いフレーズを除いてより小さなフレーズテーブルを作成する技術が検討されている（例えば、非特許文献１）。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Zens, Richard and Stanton, Daisy and Xu, Peng,“A Systematic Comparison of Phrase Table Pruning Techniques”, In Proceedings of the 2012 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning, 2012.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
非特許文献１では、頻度やエントロピーを用いてフレーズ対に点数をつけ、その点数に基づいて不要なフレーズ対を削除することで小さなフレーズテーブルを作成する手法が提案されている。
【０００８】
しかし、これらの手法ではフレーズ対の点数に対してしきい値θを定めるか、あるいは点数の上位Ｋ件を取り出すという形式でフレーズテーブルを作成するため、フレーズテーブルのサイズを決めるθまたはＫというパラメータを何らかの基準で定める必要がある。適切なフレーズテーブルの大きさは翻訳システムによって異なるため、適切なパラメータを選択することは試行錯誤を伴う困難な問題であった。
【０００９】
また、訓練用対訳コーパスに含まれる文を正しく訳せることは翻訳システムの頑健性を保証するうえで重要であるが、既存のフレーズテーブル削減法では訓練用対訳コーパスの文を正しく翻訳するために必要となるフレーズ対が選択されることを保証できないという問題があった。
【００１０】
本発明は、上記の事情を鑑みてなされたもので、フレーズ対が削減されたフレーズテーブルを得ることができる情報処理方法、装置、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記の目的を達成するために本発明に係る情報処理方法は、選択処理手段を含み、元言語の文ｅｊと前記元言語の文ｅｊの対訳である目的言語の文ｆｊとのペア（ｅｊ，ｆｊ）の集合である訓練用対訳コーパスから予め生成された、元言語の文ｅｊの部分文字列であるフレーズｐｉと前記フレーズｐｉの対訳であり、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉとのフレーズ対ｘｉの集合であるフレーズテーブルから、部分集合を選択する情報処理装置における情報処理方法であって、前記選択処理手段が、前記訓練用対訳コーパスの前記ペア（ｅｊ，ｆｊ）の各々について、前記ペア（ｅｊ，ｆｊ）の前記元言語の文ｅｊのｒ番目の単語ｅｊｒの各々が、前記フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つの前記フレーズ対ｘｉのフレーズｐｉであって、かつ、前記元言語の文ｅｊの部分文字列であるフレーズｐｉに含まれ、前記目的言語の文ｆｊのｒ番目の単語ｆｊｒの各々が、前記フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つの前記フレーズ対ｘｉの前記フレーズｑｉであって、かつ、前記目的言語の文ｆｊの部分文字列である前記フレーズｑｉに含まれるように、前記フレーズテーブルから部分集合を選択するステップを含んで構成されている。
【００１２】
本発明に係る情報処理装置は、元言語の文ｅｊと前記元言語の文ｅｊの対訳である目的言語の文ｆｊとのペア（ｅｊ，ｆｊ）の集合である訓練用対訳コーパスから予め生成された、元言語の文ｅｊの部分文字列であるフレーズｐｉと前記フレーズｐｉの対訳であり、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉとのフレーズ対ｘｉの集合であるフレーズテーブルから、部分集合を選択する情報処理装置であって、前記訓練用対訳コーパスの前記ペア（ｅｊ，ｆｊ）の各々について、前記ペア（ｅｊ，ｆｊ）の前記元言語の文ｅｊのｒ番目の単語ｅｊｒの各々が、前記フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つの前記フレーズ対ｘｉのフレーズｐｉであって、かつ、前記元言語の文ｅｊの部分文字列であるフレーズｐｉに含まれ、前記目的言語の文ｆｊのｒ番目の単語ｆｊｒの各々が、前記フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つの前記フレーズ対ｘｉの前記フレーズｑｉであって、かつ、前記目的言語の文ｆｊの部分文字列である前記フレーズｑｉに含まれるように、前記フレーズテーブルから部分集合を選択する選択処理手段を含んで構成されている。
【００１３】
前記選択処理手段が前記フレーズテーブルから部分集合を選択するステップは、以下の式にしたがって、前記フレーズテーブルから部分集合を選択するようにすることができる。
【数１】
0006482073.tif 000002
ただし、変数ｙｉ（ｉ＝１，．．．，Ｍ） は、フレーズ対ｘｉが前記部分集合に含まれるか否かを表す二値変数であり、ａｉｊｒはフレーズ対ｘｉによって元言語の文ｅｊのｒ番目の単語ｅｊｒが被覆されているかどうかを表すパラメータであり、被覆されているときにはａｉｊｒ＝１、被覆されていないときには０となるパラメータである。ｂｉｊｒはフレーズ対ｘｉによって目的言語の文ｆｊのｒ番目の単語ｆｊｒが被覆されているかどうかを表すパラメータであり、被覆されているときにはｂｉｊｒ＝１、被覆されていないときには０となるパラメータである。
【００１４】
本発明に係るプログラムは、本発明の情報処理方法の各ステップをコンピュータに実行させるためのプログラムである。
【発明の効果】
【００１５】
以上説明したように、本発明の情報処理方法、装置、及びプログラムによれば、訓練用対訳コーパスのペア（ｅｊ，ｆｊ）の各々について、当該ペア（ｅｊ，ｆｊ）の元言語の文ｅｊのｒ番目の単語ｅｊｒの各々が、フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つのフレーズ対ｘｉのフレーズｐｉであって、かつ、元言語の文ｅｊの部分文字列であるフレーズｐｉに含まれ、目的言語の文ｆｊのｒ番目の単語ｆｊｒの各々が、フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つのフレーズ対ｘｉのフレーズｑｉであって、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉに含まれるように、フレーズテーブルから部分集合を選択することにより、フレーズ対が削減されたフレーズテーブルを得ることができる、という効果が得られる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態に係る情報処理装置の構成を示す概略図である。
【図２】本発明の実施の形態に係る情報処理装置における選択処理ルーチンの内容を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１８】
＜本発明の実施の形態の概要＞
本発明の実施の形態は、フレーズに基づく統計的機械翻訳で必要となるフレーズテーブルに格納されるフレーズ対の個数を削減するためのものである。本実施の形態では、フレーズテーブルからフレーズ対の部分集合を取り出す問題を、組合せ最適化問題の一種である集合分割問題として定式化し、集合分割問題を解くことでフレーズ対の部分集合を取り出す。
【００１９】
＜システム構成＞
本発明の実施の形態に係る情報処理装置１００は、訓練用対訳コーパスから予め生成されたフレーズテーブルＳから、部分集合Ｔを選択する。この情報処理装置１００は、ＣＰＵと、ＲＡＭと、後述する選択処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図１に示すように、情報処理装置１００は、入力部１０と、演算部２０と、出力部３０とを備えている。
【００２０】
入力部１０は、フレーズテーブルＳと、元言語の文の集合Ｅ及び目的言語の文の集合Ｆを含んで構成される訓練用対訳コーパスとを入力として受け付ける。本実施の形態では、フレーズテーブルＳをＳ＝｛ｘ１，．．．，ｘＭ｝とする。フレーズテーブルＳは、フレーズ対ｘｉの集合である。
【００２１】
フレーズテーブルＳは、訓練用対訳コーパスから予め生成されている。訓練用対訳コーパスは、元言語の文ｅｊと当該元言語の文ｅｊの対訳である目的言語の文ｆｊとのペア（ｅｊ，ｆｊ）の集合である。また、フレーズテーブルＳは、訓練用対訳コーパスの元言語の文ｅｊの部分文字列であるフレーズｐｉと当該フレーズｐｉの対訳であり、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉとのフレーズ対ｘｉの集合である。
【００２２】
また、Ｍはフレーズ対の総数を表し、ｘｉ＝（ｐｉ，ｑｉ）は元言語のフレーズｐｉと目的言語のフレーズｑｉとのペアである。フレーズはそれぞれ単語の列であり、
【００２３】
【数２】
0006482073.tif 000003
【００２４】
とする。Ｅは元言語の文の集合、Ｆは目的言語の文の集合とし、ｅｉ，ｆｉをそれぞれ元言語、目的言語の文とする。Ｅ＝｛ｅ１，．．．，ｅＮ｝，Ｆ＝｛ｆ１，．．．，ｆＮ｝であり、文ｅｉと文ｆｉとは対訳関係にある。各文は単語の系列として表現されており、
【００２５】
【数３】
0006482073.tif 000004
【００２６】
とする。ｅｉｊは元言語の単語でありｎｉはｅｉの語数とする。同様に
【００２７】
【数４】
0006482073.tif 000005
【００２８】
とする。ｍｉはｆｉの語数とする。
【００２９】
あるフレーズ対ｘｊと対訳コーパス中の文のペア（ｅｉ，ｆｉ）に対して、ｘｊ＝（ｐｊ，ｑｊ） がペアに含まれるとは、ｐｊがｅｉのある部分列に一致し、かつｑｊがｆｉのある部分列に一致することと定義する。すなわち、
【００３０】
【数５】
0006482073.tif 000006
【００３１】
を満たすような
【００３２】
【数６】
0006482073.tif 000007
【００３３】
が存在することと定義する。このとき、ｐｊ，ｑｊに一致する部分列に含まれる単語はｘｊによって被覆されていると定義する。
【００３４】
演算部２０は、入力部１０によって受け付けた訓練用対訳コーパス及びフレーズテーブルＳに基づいて、フレーズテーブルＳから、部分集合を選択する。演算部２０は、選択処理部２２を備えている。
【００３５】
選択処理部２２は、入力部１０によって受け付けた訓練用対訳コーパスのペア（ｅｊ，ｆｊ）の各々について、当該ペア（ｅｊ，ｆｊ）の元言語の文ｅｊのｒ番目の単語ｅｊｒの各々が、フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つのフレーズ対ｘｉのフレーズｐｉであって、かつ、元言語の文ｅｊの部分文字列であるフレーズｐｉに含まれ、目的言語の文ｆｊのｒ番目の単語ｆｊｒの各々が、フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つのフレーズ対ｘｉのフレーズｑｉであって、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉに含まれるように、フレーズテーブルＳから部分集合Ｔを選択する。選択処理部２２は、集合分割問題を解くことによって、Ｔ⊆Ｓであるような部分集合Ｔ（フレーズテーブルＴ）を得る。
【００３６】
具体的には、選択処理部２２は、以下の式にしたがって、集合分割問題を解くことにより、フレーズテーブルＳから部分集合Ｔを選択する。ここで、解くべき集合分割問題は、
【００３７】
【数７】
0006482073.tif 000008
【００３８】
という変数ｙｉに対する整数計画問題として定式化される。
【００３９】
変数ｙｉ（ｉ＝１，．．．，Ｍ） は二値変数であり、フレーズ対ｘｉが部分集合Ｔに含まれるときにｙｉ＝１、そうでないときにｙｉ＝０となる変数である。また、ａｉｊｒはフレーズ対ｘｉによって元言語の文ｅｊのｒ番目の単語ｅｊｒが被覆されているかどうかを表すパラメータであり、被覆されているときにはａｉｊｒ＝１、そうでないときには０となるパラメータである。また、同様にｂｉｊｒはフレーズ対ｘｉによって目的言語の文ｆｊのｒ番目の単語ｆｊｒが被覆されているかどうかを表すパラメータであり、被覆されているときにはときに１、そうでないときに０となるパラメータである。
【００４０】
集合分割問題とは、各ｅｊｒ，ｆｊｒがかならず１回のみ被覆されるようなフレーズの集合を選択する問題である。
【００４１】
出力部３０は、選択処理部２２によって選択されたフレーズ対ｘｉの部分集合Ｔを、フレーズ対が削減されたフレーズテーブルとして出力する。
【００４２】
＜情報処理装置の作用＞
次に、本発明の実施の形態に係る情報処理装置１００の作用について説明する。まず、訓練用対訳コーパス及びフレーズテーブルＳが、情報処理装置１００に入力されると、情報処理装置１００によって、図２に示す選択処理ルーチンが実行される。
【００４３】
まず、ステップＳ１００において、入力部１０により訓練用対訳コーパス及びフレーズテーブルＳを受け付ける。
【００４４】
そして、ステップＳ１０２において、選択処理部２２は、上記ステップＳ１００で受け付けた訓練用対訳コーパス及びフレーズテーブルＳに基づいて、訓練用対訳コーパスのペア（ｅｊ，ｆｊ）の各々について、当該ペア（ｅｊ，ｆｊ）の元言語の文ｅｊのｒ番目の単語ｅｊｒの各々が、フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つのフレーズ対ｘｉのフレーズｐｉであって、かつ、元言語の文ｅｊの部分文字列であるフレーズｐｉに含まれ、目的言語の文ｆｊのｒ番目の単語ｆｊｒの各々が、フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つのフレーズ対ｘｉのフレーズｑｉであって、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉに含まれるように、フレーズテーブルＳから部分集合Ｔを選択する。
【００４５】
ステップＳ１０４において、上記ステップＳ１０２で選択された部分集合Ｔを結果として出力し、選択処理ルーチンを終了する。
【００４６】
以上説明したように、本実施の形態に係る情報処理装置によれば、訓練用対訳コーパスのペア（ｅｊ，ｆｊ）の各々について、当該ペア（ｅｊ，ｆｊ）の元言語の文ｅｊのｒ番目の単語ｅｊｒの各々が、フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つのフレーズ対ｘｉのフレーズｐｉであって、かつ、元言語の文ｅｊの部分文字列であるフレーズｐｉに含まれ、目的言語の文ｆｊのｒ番目の単語ｆｊｒの各々が、フレーズ対ｘｉの集合であるフレーズテーブルの部分集合の何れか１つのフレーズ対ｘｉのフレーズｑｉであって、かつ、目的言語の文ｆｊの部分文字列であるフレーズｑｉに含まれるように、フレーズテーブルから部分集合を選択することにより、訓練用対訳コーパスに含まれるフレーズ対を含み、かつフレーズ対が削減されたフレーズテーブルを得ることができ、フレーズ対の数が少ないフレーズテーブルを得ることができる。
【００４７】
また、フレーズ対の数が少ないフレーズテーブルが得られた結果として、翻訳文書生成処理の高速化、不要なフレーズ対を減らすことによる翻訳精度の向上が可能である。また、分割の概念を用いて定式化したことにより、フレーズテーブルの大きさに関するパラメータを手動で設定することなく、訓練用対訳コーパスに含まれる文に対する翻訳可能性を保証したフレーズテーブルを得ることができる。
【００４８】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００４９】
上述の情報処理装置１００は、内部にコンピュータシステムを有しているが、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
【００５０】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【００５１】
１０   入力部
２０   演算部
２２   選択処理部
３０   出力部
１００ 情報処理装置
【図１】
0006482073.tif 000011
【図２】
0006482073.tif 000012