(57)【要約】【課題】計算量の増大を抑制して、近似オラクル文を精度よく得ることができるようにする。【解決手段】特定対象端決定部２１によって、最も内側の特定済みノードであるノードＡ、Ｂのうち、次候補数が少ない方を特定対象端ノードとして決定する。次ノード決定部２２によって、語ラティスから、ノードＡ、Ｂを接続する部分ラティスを抽出し、次ノード候補の各々について、次ノード候補を経由する部分パスを所定回生成し、部分パスの各々に対応する翻訳候補文の翻訳評価尺度を算出し、次ノード候補の改善率を算出し、改善率が最も高い次ノード候補を、特定済みノードとする。終了判定部２４によって、特定済みノードによって文頭ノードから文末ノードまで接続されるまで、特定対象端決定部２１及び次ノード決定部２２による各処理を繰り返し、特定済みノードの各々で表わされる翻訳候補文を、近似オラクル文として出力する。【選択図】図１
2014149637.tif 000002
【特許請求の範囲】
【請求項１】
入力された、翻訳元言語の文に対する翻訳処理に得られる翻訳先言語の複数の翻訳候補文を表わし、かつ、前記翻訳候補文の単語列の各単語に対応するノード及び連結される単語に対応するノードを結んだエッジからなる語ラティス、翻訳先言語の正解翻訳文、及び改善参考値αに基づいて、前記複数の翻訳候補文から、最高値に近い翻訳評価尺度が得られる翻訳候補文である近似オラクル文を選択する近似オラクル文選択装置であって、
前記語ラティスの各ノードのうちの、文頭を示す文頭ノード及び文末を示す文末ノードを特定済みノードとして記憶した特定ノード記憶手段と、
前記文頭ノードに接続されている前記特定済みノードのうち前記文頭ノードから最も遠いノードＡに対して前記文頭ノードと反対側に連結されているノード数と、前記文末ノードに接続されている前記特定済みノードのうち前記文末ノードから最も遠いノードＢに対して前記文末ノードと反対側に連結されているノード数とに基づいて、前記ノードＡ及び前記ノードＢのうち、前記ノード数が少ない方を特定対象端ノードとして決定する特定対象端決定手段と、
前記語ラティスから、前記ノードＡと前記ノードＢとを接続するノード及びエッジからなる部分ラティスを抽出し、
前記特定対象端決定手段によって前記特定対象端ノードとして決定された前記ノードＡに前記文頭ノードと反対側に連結されている各ノード、または前記特定対象端ノードとして決定された前記ノードＢに前記文末ノードと反対側に連結されている各ノードを、次ノード候補とし、
前記次ノード候補の各々について、前記部分ラティスにおいて、前記次ノード候補を経由し、かつ、前記ノードＡから前記ノードＢまでの部分パスを所定回生成し、所定回生成された部分パスの各々について、前記部分パス上の各ノードと前記特定ノード記憶手段に記憶された前記特定済みノードとで表わされる翻訳候補文の翻訳評価尺度を算出し、前記算出された翻訳評価尺度が前記改善参考値αを超えた回数を求め、求められた回数に基づいて前記次ノード候補の改善率を算出し、
前記改善率が最も高い前記次ノード候補を、前記特定済みノードとして決定して前記特定ノード記憶手段に更に格納すると共に、前記改善参考値αを、前記算出された翻訳評価尺度の最高値に更新する次ノード決定手段と、
前記特定済みノードによって前記文頭ノードから文末ノードまで接続されるまで、前記特定対象端決定手段による決定及び前記次ノード決定手段による各処理を繰り返し、前記特定済みノードによって前記文頭ノードから文末ノードまで接続されたときに、前記特定済みノードの各々で表わされる翻訳候補文を、前記近似オラクル文として出力する終了判定手段と、
を含む近似オラクル文選択装置。
【請求項２】
前記次ノード決定手段は、前記次ノード候補の各々について、前記ノードＡに連結されている前記次ノード候補から順に隣接するノードを前記ノードＢに到達するまでランダムに選択し、または前記ノードＡから順に隣接するノードを前記ノードＢに連結されている前記次ノード候補に到達するまでランダムに選択することにより前記次ノード候補を経由する前記部分パスを生成することを前記所定回行う請求項１記載の近似オラクル文選択装置。
【請求項３】
前記語ラティスの各エッジに重みが付与されており、
前記次ノード決定手段は、前記次ノード候補の各々について、前記ノードＢに到達するまで、前記ノードＡに連結されている前記次ノード候補から順に隣接するノードをエッジに付与された重みに応じた確率で選択し、または前記ノードＢに連結されている前記次ノード候補に到達するまで、前記ノードＡから順に隣接するノードをエッジに付与された重みに応じた確率で選択することにより前記次ノード候補を経由する前記部分パスを生成することを前記所定回行う請求項１記載の近似オラクル文選択装置。
【請求項４】
入力された、翻訳元言語の文に対する翻訳処理に得られる翻訳先言語の複数の翻訳候補文を表わし、かつ、前記翻訳候補文の単語列の各単語に対応するノード及び連結される単語に対応するノードを結んだエッジからなる語ラティス、翻訳先言語の正解翻訳文、及び改善参考値αに基づいて、前記複数の翻訳候補文から、最高値に近い翻訳評価尺度が得られる翻訳候補文である近似オラクル文を選択する近似オラクル文選択方法であって、前記語ラティスの各ノードのうちの、文頭を示す文頭ノード及び文末を示す文末ノードを特定済みノードとして記憶した特定ノード記憶手段を含む近似オラクル文選択装置における近似オラクル文選択方法であって、
特定対象端決定手段によって、前記文頭ノードに接続されている前記特定済みノードのうち前記文頭ノードから最も遠いノードＡに対して前記文頭ノードと反対側に連結されているノード数と、前記文末ノードに接続されている前記特定済みノードのうち前記文末ノードから最も遠いノードＢに対して前記文末ノードと反対側に連結されているノード数とに基づいて、前記ノードＡ及び前記ノードＢのうち、前記ノード数が少ない方を特定対象端ノードとして決定し、
次ノード決定手段によって、前記語ラティスから、前記ノードＡと前記ノードＢとを接続するノード及びエッジからなる部分ラティスを抽出し、
前記特定対象端決定手段によって前記特定対象端ノードとして決定された前記ノードＡに前記文頭ノードと反対側に連結されている各ノード、または前記特定対象端ノードとして決定された前記ノードＢに前記文末ノードと反対側に連結されている各ノードを、次ノード候補とし、
前記次ノード候補の各々について、前記部分ラティスにおいて、前記次ノード候補を経由し、かつ、前記ノードＡから前記ノードＢまでの部分パスを所定回生成し、所定回生成された部分パスの各々について、前記部分パス上の各ノードと前記特定ノード記憶手段に記憶された前記特定済みノードとで表わされる翻訳候補文の翻訳評価尺度を算出し、前記算出された翻訳評価尺度が前記改善参考値αを超えた回数を求め、求められた回数に基づいて前記次ノード候補の改善率を算出し、
前記改善率が最も高い前記次ノード候補を、前記特定済みノードとして決定して前記特定ノード記憶手段に更に格納すると共に、前記改善参考値αを、前記算出された翻訳評価尺度の最高値に更新し、
終了判定手段によって、前記特定済みノードによって前記文頭ノードから文末ノードまで接続されるまで、前記特定対象端決定手段による決定及び前記次ノード決定手段による各処理を繰り返し、前記特定済みノードによって前記文頭ノードから文末ノードまで接続されたときに、前記特定済みノードの各々で表わされる翻訳候補文を、前記近似オラクル文として出力する
近似オラクル文選択方法。
【請求項５】
前記次ノード決定手段によって前記部分パスを生成することは、前記次ノード候補の各々について、前記ノードＡに連結されている前記次ノード候補から順に隣接するノードを前記ノードＢに到達するまでランダムに選択し、または前記ノードＡから順に隣接するノードを前記ノードＢに連結されている前記次ノード候補に到達するまでランダムに選択することにより前記次ノード候補を経由する前記部分パスを生成することを前記所定回行う請求項４記載の近似オラクル文選択方法
【請求項６】
前記語ラティスの各エッジに重みが付与されており、
前記次ノード決定手段によって前記部分パスを生成することは、前記次ノード候補の各々について、前記ノードＢに到達するまで、前記ノードＡに連結されている前記次ノード候補から順に隣接するノードをエッジに付与された重みに応じた確率で選択し、または前記ノードＢに連結されている前記次ノード候補に到達するまで、前記ノードＡから順に隣接するノードをエッジに付与された重みに応じた確率で選択することにより前記次ノード候補を経由する前記部分パスを生成することを前記所定回行う請求項４記載の近似オラクル文選択方法。
【請求項７】
コンピュータを、請求項１〜請求項３の何れか１項記載の近似オラクル文選択装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、近似オラクル文選択装置、方法、及びプログラムに係り、特に、複数の翻訳候補文から、近似オラクル文を選択する近似オラクル文選択装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
統計的機械翻訳は、いくつかの構成要素のスコアの線形和によって出力しようとしている翻訳候補を評価し、その値が最大となるような候補を、システムの翻訳文として出力するような技術と捉えることができる。
【０００３】
ここで、構成要素としては、単語と単語の繋がりの出現確率を表した言語モデルや、翻訳元の言語での単語やフレーズと翻訳先の言語での単語やフレーズでの翻訳関係になりやすさを表した翻訳モデル、あるいは翻訳元言語での単語やフレーズが、翻訳先言語でどのように並びやすいかを表した並び換えモデルといったものが広く使われている。
【０００４】
ところで、各翻訳候補は、計算機内部においては語と語の接続を示したグラフ構造で保持されることが一般的であり、本発明でもこのようなグラフ構造を前提とする。このグラフ構造を語ラティスと呼ぶ。例として、ドイツ語「Das ist ein haus.」に対応する英語翻訳候補を表した語ラティスを図２に示す。図中、「S」は文頭を示し、「E」は文末を示す。グラフの各パスが各翻訳候補に相当する。たとえば、図中太線で示したパスは、「this the is an house」という翻訳候補を示す。
【０００５】
翻訳の善し悪しは、事前に定めた翻訳の評価尺度によって計ることが一般的である。もし、評価尺度の値が最大となるような候補文(オラクル文と呼ぶ)を得ることができれば、その候補が選ばれやすいように、先に述べた各構成要素の線形和を得る際の重みを調整することができ、翻訳精度の向上が期待できる。
【０００６】
しかし厳密なオラクル文を得ることは計算量的に困難である。なぜなら、潜在的な候補の数は文中の単語数に対して指数関数的に増大するため、それらすべてを網羅的に確認することは事実上できないからである。例外的に、文の評価尺度が特殊条件を満たす場合、たとえば、単語列に対する局所的なスコアの和や平均になっているのであれば、当業者に広く知られている効率的な手法(たとえばダイクストラ法)によって文の評価尺度が最大となるような候補を得ることが可能であるものの、一般の文評価尺度、たとえば、統計機械翻訳で広く利用されている評価尺度であるBLEU（非特許文献１参照）やRIBES（非特許文献２参照）といった評価尺度ではこのような性質を満たさないので、効率的な手法を適用することはできない。
【０００７】
そこで、厳密に最大ではないけれども、なるべく評価尺度の値が高くなるような候補文(近似オラクル文)の探索を現実的な時間内で見つけだすことが必要となる。
【０００８】
この目的のために、従来より、本来考慮したい評価尺度を局所的なスコアの和として表現できるような評価尺度に変形することによって、その変形した評価尺度に対して最大のスコアとなるような候補文をオラクル文の代替として得る方法が知られている（非特許文献３）。
【先行技術文献】
【非特許文献】
【０００９】
【非特許文献１】Papineni, K.; Roukos, S.; Ward, T.; Zhu, W. J. (2002). \BLEU: a method for automatic evaluation of machine translation". ACL-2002: 40th Annual meeting of the Association for Computational Linguistics. pp. 311―318.
【非特許文献２】平尾努、磯崎秀樹、Kevin Duh、須藤克仁、塚田元、永田昌明RIBES:順位相関に基づく翻訳の自動評価法言語処理学会第17回年次大会発表論文集pp.1115{1118,Mar.2011.
【非特許文献３】Markus Dreyer and Keith Hall and Sanjeev Khudanpur、\Com-paring Reordering Constraints for SMT Using Efficient BLEU Oracle Computation".SSST '07: Proceedings of the NAACL-HLT 2007/AMTA Workshop on Syntax and Structure in Statistical Translation. pp. 103-110.
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、変形後の評価尺度は、本来考慮したい評価尺度との間には大きな開きがある場合が多々ある。たとえば、上記の非特許文献２に記載のRIBESという評価尺度では、出力された文と、事前に作成した正解翻訳文との間での、単語の並び順を考慮する。この並び順に基づく値（順位相関）は、文全体の代わりに部分的に評価した値を用いたのでは本来の値と大きく異なってしまう、という問題がある。
【００１１】
したがって、従来法における、評価尺度の変形によって近似オラクル文を得たのでは、近似の精度が低い、という問題がある。
【００１２】
本発明は、上記の事情を鑑みてなされたもので、計算量の増大を抑制して、近似オラクル文を精度よく得ることができる近似オラクル文選択装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記の目的を達成するために本発明に係る近似オラクル文選択装置は、入力された、翻訳元言語の文に対する翻訳処理に得られる翻訳先言語の複数の翻訳候補文を表わし、かつ、前記翻訳候補文の単語列の各単語に対応するノード及び連結される単語に対応するノードを結んだエッジからなる語ラティス、翻訳先言語の正解翻訳文、及び改善参考値αに基づいて、前記複数の翻訳候補文から、最高値に近い翻訳評価尺度が得られる翻訳候補文である近似オラクル文を選択する近似オラクル文選択装置であって、前記語ラティスの各ノードのうちの、文頭を示す文頭ノード及び文末を示す文末ノードを特定済みノードとして記憶した特定ノード記憶手段と、前記文頭ノードに接続されている前記特定済みノードのうち前記文頭ノードから最も遠いノードＡに対して前記文頭ノードと反対側に連結されているノード数と、前記文末ノードに接続されている前記特定済みノードのうち前記文末ノードから最も遠いノードＢに対して前記文末ノードと反対側に連結されているノード数とに基づいて、前記ノードＡ及び前記ノードＢのうち、前記ノード数が少ない方を特定対象端ノードとして決定する特定対象端決定手段と、前記語ラティスから、前記ノードＡと前記ノードＢとを接続するノード及びエッジからなる部分ラティスを抽出し、前記特定対象端決定手段によって前記特定対象端ノードとして決定された前記ノードＡに前記文頭ノードと反対側に連結されている各ノード、または前記特定対象端ノードとして決定された前記ノードＢに前記文末ノードと反対側に連結されている各ノードを、次ノード候補とし、前記次ノード候補の各々について、前記部分ラティスにおいて、前記次ノード候補を経由し、かつ、前記ノードＡから前記ノードＢまでの部分パスを所定回生成し、所定回生成された部分パスの各々について、前記部分パス上の各ノードと前記特定ノード記憶手段に記憶された前記特定済みノードとで表わされる翻訳候補文の翻訳評価尺度を算出し、前記算出された翻訳評価尺度が前記改善参考値αを超えた回数を求め、求められた回数に基づいて前記次ノード候補の改善率を算出し、前記改善率が最も高い前記次ノード候補を、前記特定済みノードとして決定して前記特定ノード記憶手段に更に格納すると共に、前記改善参考値αを、前記算出された翻訳評価尺度の最高値に更新する次ノード決定手段と、前記特定済みノードによって前記文頭ノードから文末ノードまで接続されるまで、前記特定対象端決定手段による決定及び前記次ノード決定手段による各処理を繰り返し、前記特定済みノードによって前記文頭ノードから文末ノードまで接続されたときに、前記特定済みノードの各々で表わされる翻訳候補文を、前記近似オラクル文として出力する終了判定手段と、を含んで構成されている。
【００１４】
本発明に係る近似オラクル文選択方法は、入力された、翻訳元言語の文に対する翻訳処理に得られる翻訳先言語の複数の翻訳候補文を表わし、かつ、前記翻訳候補文の単語列の各単語に対応するノード及び連結される単語に対応するノードを結んだエッジからなる語ラティス、翻訳先言語の正解翻訳文、及び改善参考値αに基づいて、前記複数の翻訳候補文から、最高値に近い翻訳評価尺度が得られる翻訳候補文である近似オラクル文を選択する近似オラクル文選択方法であって、前記語ラティスの各ノードのうちの、文頭を示す文頭ノード及び文末を示す文末ノードを特定済みノードとして記憶した特定ノード記憶手段を含む近似オラクル文選択装置における近似オラクル文選択方法であって、特定対象端決定手段によって、前記文頭ノードに接続されている前記特定済みノードのうち前記文頭ノードから最も遠いノードＡに対して前記文頭ノードと反対側に連結されているノード数と、前記文末ノードに接続されている前記特定済みノードのうち前記文末ノードから最も遠いノードＢに対して前記文末ノードと反対側に連結されているノード数とに基づいて、前記ノードＡ及び前記ノードＢのうち、前記ノード数が少ない方を特定対象端ノードとして決定し、次ノード決定手段によって、前記語ラティスから、前記ノードＡと前記ノードＢとを接続するノード及びエッジからなる部分ラティスを抽出し、前記特定対象端決定手段によって前記特定対象端ノードとして決定された前記ノードＡに前記文頭ノードと反対側に連結されている各ノード、または前記特定対象端ノードとして決定された前記ノードＢに前記文末ノードと反対側に連結されている各ノードを、次ノード候補とし、前記次ノード候補の各々について、前記部分ラティスにおいて、前記次ノード候補を経由し、かつ、前記ノードＡから前記ノードＢまでの部分パスを所定回生成し、所定回生成された部分パスの各々について、前記部分パス上の各ノードと前記特定ノード記憶手段に記憶された前記特定済みノードとで表わされる翻訳候補文の翻訳評価尺度を算出し、前記算出された翻訳評価尺度が前記改善参考値αを超えた回数を求め、求められた回数に基づいて前記次ノード候補の改善率を算出し、前記改善率が最も高い前記次ノード候補を、前記特定済みノードとして決定して前記特定ノード記憶手段に更に格納すると共に、前記改善参考値αを、前記算出された翻訳評価尺度の最高値に更新し、終了判定手段によって、前記特定済みノードによって前記文頭ノードから文末ノードまで接続されるまで、前記特定対象端決定手段による決定及び前記次ノード決定手段による各処理を繰り返し、前記特定済みノードによって前記文頭ノードから文末ノードまで接続されたときに、前記特定済みノードの各々で表わされる翻訳候補文を、前記近似オラクル文として出力する。
【００１５】
本発明に係るプログラムは、コンピュータを、上記の近似オラクル文選択装置の各手段として機能させるためのプログラムである。
【発明の効果】
【００１６】
以上説明したように、本発明の近似オラクル文選択装置、方法、及びプログラムによれば、語ラティスの文頭ノード及び文末ノードから順に、次ノード候補の各々について、次ノード候補を経由する部分パスを生成して部分パスの翻訳候補文の翻訳評価尺度を算出し、改善率が最も高い次ノード候補を、特定済みノードとして決定することを、特定済みノードによって文頭ノードから文末ノードまで接続されるまで繰り返し、特定済みノードの各々で表わされる翻訳候補文を、近似オラクル文として出力することにより、計算量の増大を抑制して、近似オラクル文を精度よく得ることができる、という効果が得られる。
【図面の簡単な説明】
【００１７】
【図１】本発明の第１の実施の形態に係る近似オラクル文選択装置の構成を示す概略図である。
【図２】語ラティスを示す図である。
【図３】特定済みノードを説明するための図である。
【図４】部分ラティスを示す図である。
【図５】本発明の第１の実施の形態に係る近似オラクル文選択装置における近似オラクル文選択処理ルーチンの内容を示すフローチャートである。
【図６】本発明の第１の実施の形態に係る近似オラクル文選択装置における次ノードを決定する処理ルーチンの内容を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１９】
＜第１の実施の形態＞
＜システム構成＞
本発明の第１の実施の形態に係る近似オラクル文選択装置１００は、翻訳元言語の入力文に対する機械翻訳処理で得られた翻訳先言語の複数の翻訳候補文を表す語ラティスと翻訳先言語の正解翻訳文と改善参考値パラメータαとが入力され、複数の翻訳候補文から、近似オラクル文を選択する。また、近似オラクル文選択装置１００は、近似オラクル文に基づいて、複数の翻訳特徴モデルに対する重みを最適化する。この近似オラクル文選択装置１００は、ＣＰＵと、ＲＡＭと、後述する近似オラクル文選択処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図１に示すように、近似オラクル文選択装置１００は、入力部１０と、演算部２０と、出力部３０を備えている。
【００２０】
入力部１０は、入力されたデータとして、翻訳元言語の入力文に対する機械翻訳処理で得られた翻訳先言語の複数の翻訳候補文を表す語ラティスと、予め用意された翻訳先言語の正解翻訳文と、改善参考値パラメータαとを受け付ける。
【００２１】
語ラティスは、図２に示すように、翻訳元言語の文に対する機械翻訳処理で得られた翻訳先言語の複数の翻訳候補文を表わし、かつ、翻訳候補文の単語列の各単語に対応するノード及び連結される単語に対応するノードを結んだエッジからなるグラフ構造である。
【００２２】
演算部２０は、特定対象端決定部２１、次ノード決定部２２、特定済みノード記憶部２３、及び終了判定部２４を備えている。
【００２３】
演算部２０は、大まかな流れとして、語ラティスにおいて可能なさまざまなパスについて試行を繰り返し、その中でもっとも高い翻訳評価尺度のパスを出力する。ただ、やみくもに試行を繰り返したのでは高い翻訳評価尺度のパスを選択できる可能性が低いため、高い翻訳評価尺度を得られそうな単語を文頭と文末との各々から順に特定していき、次第にパスを決定していくという操作を行う。
【００２４】
特定済みノード記憶部２３は、入力された語ラティスの各ノードのうち、既に特定済みのノードを記憶する。たとえば、図３において、網かけのノード（「S」）、ノード（「this」）、及びノード（「E」）は特定済みノードであるので、これらのノードが、特定済みノード記憶部２３に特定済みノードとして記憶される。
【００２５】
近似オラクル文選択装置１００の動作開始時に、初期状態として、文頭を示すノード(「S」)と文末を示すノード(「E」)とが、特定済みノードとして特定済みノード記憶部２３に記憶される。
【００２６】
特定対象端決定部２１は、特定済みノード記憶部２３に記憶された特定済みノードに基づいて、入力された語ラティス中で、特定済みのノードのうち、最も内側の２つのノードを特定し、特定された２つのノードのうち、次候補の少ない方のノードを、特定対象端ノードとして決定する。
【００２７】
すなわち、文頭ノードに接続されている特定済みノードを辿って到達する最も文末寄りのノードＡ（文頭ノードからの距離（エッジ数）が最も遠いノード）と、文末ノードに接続されている特定済みノードを辿って到達する最も文頭寄りのノードＢ（文末ノードからの距離（エッジ数）が最も遠いノード）について、ノードＡに連結されている文末寄りのノード数NAと、ノードＢに連結されている文頭寄りのノード数NBとを比較し、NA＜NBであれば、ノードＡを、特定対象端ノードとしてノードＡを出力し、そうでなければ特定対象端ノードとしてノードＢを出力する。
【００２８】
次ノード決定部２２は、特定対象端決定部２１によって出力された特定対象端ノードＡ又はＢに連結されている内側のノードの各々を、次ノード候補とし、次ノード候補のうちのひとつを次ノードとして選択し、特定済みノードとする。上記図３の例では、次ノード候補は、特定対象端ノードとして決定される特定済みノード（「this」）に連結されている文末寄りのノード（「is」）とノード（「the」）である。
【００２９】
次ノード決定部２２は、試行結果生成部２２１と、ノード毎改善率記憶部２２２と、次ノード候補選択部２２３とを備えている。
【００３０】
試行結果生成部２２１は、まず、入力された語ラティスから、特定済みのノードのうちの最も内側の２つのノード（上述のノードＡ、Ｂ）の間を接続する各ノード及び各エッジからなる部分ラティスを抽出する(図４参照)。試行結果生成部２２１は、抽出された部分ラティスを対象に、次ノード候補のそれぞれについて、予め指定された回数ｋ回の試行を繰り返して、部分ラティス中の次ノード候補を経由する部分パスをｋ回生成しながら、当該次ノード候補を経由した部分パスの試行回数を、ノード毎改善率記憶部２２２に格納する。
【００３１】
部分パスの生成では、次ノード候補が、文頭寄りのノードである場合には、部分ラティス中の次ノード候補から順に、文末寄りに連結されているノードをランダムに選択していき、部分ラティス中の末尾（上記のノードＢ）に到達するまで繰り返し、ランダムな部分パスを得る。次ノード候補が、文末寄りのノードである場合には、部分ラティス中の先頭（上記のノードＡ）から順に、文末寄りに連結されているノードをランダムに選択していき、部分ラティス中の次ノード候補に到達するまで繰り返し、ランダムな部分パスを得る。
【００３２】
また、試行結果生成部２２１は、生成した部分パス毎に、当該部分パスと、語ラティス中の各特定済みノードとを結合して、文頭から文末までのパスを得て、翻訳候補文を取得し、当該翻訳候補文について、入力された正解翻訳文に基づいて、翻訳評価尺度（例えば、ＢＬＥＵ）を算出し、算出した翻訳評価尺度が改善参考値パラメータαを超えている場合には、改善を示す「1」を出力し、そうでなければ「0」を出力する。
【００３３】
また、試行結果生成部２２１は、次ノード候補のそれぞれについて、「1」を返した回数(改善回数)を、ノード毎改善率記憶部２２２に格納する。
【００３４】
ノード毎改善率記憶部２２２は、次ノード候補それぞれについて、当該次候補ノードを経由したパスの試行回数と改善回数とを記憶する。
【００３５】
次ノード候補選択部２２３は、次ノード候補のそれぞれの改善率を、ノード毎改善率記憶部２２２を参照して、以下の式により算出する。
【００３６】
次ノード候補の改善率＝改善回数／試行回数
【００３７】
次ノード候補選択部２２３は、改善率の最も高い次ノード候補を次ノードとして選択し、選択したノードを、特定済みノードとして、特定済みノード記憶部２３に更に格納する。
【００３８】
また、次ノード候補選択部２２３は、次回以降の改善参考値パラメータαとして利用するために、改善参考値パラメータαを、（次ノード候補数×ｋ）回の試行中で最も高かった翻訳評価尺度の値に更新する。
【００３９】
終了判定部２４は、特定済みノード記憶部２３に記憶されている特定済みノードに基づいて、語ラティスにおいて、文頭ノード及び文末ノードの各々から接続されている特定済みノードが隣接しているかを確認し、隣接していない場合は、特定済みノードによって文頭ノードから文末ノードまで接続されていないと判断し、特定対象端決定部２１及び次ノード決定部２２の処理を繰り返す。語ラティスにおいて、文頭ノード及び文末ノードの各々から接続されている特定済みノードが隣接している場合は、特定済みノードによって文頭ノードから文末ノードまで接続されていると判断し、文頭ノードから文末ノードまでの各特定済みノードの単語を結合して生成される翻訳候補文を、近似オラクル文として出力部３０により出力する。
【００４０】
そして、統計翻訳処理で参照される複数の翻訳特徴モデル（例えば、翻訳モデル、言語モデル、及び並び替えモデル）の各々に対する重みを調整する場合には、翻訳元言語の当該入力文と、上述したように得られた近似オラクル文とのデータセットに基づいて、複数の翻訳特徴モデルの各々に対する重みを調整する。
【００４１】
例えば、近似オラクル文を含む複数の翻訳候補文の各々について、複数の翻訳特徴モデルの各々に対する特徴量を算出し、各翻訳特徴モデルの特徴量からなる特徴ベクトルＦ（＝（ｆ1、ｆ2、ｆ3））を算出する。各翻訳候補文について、各翻訳特徴モデルに対する重みからなる重みベクトルＷを用いて、各翻訳特徴モデルの特徴量の重み付き加算値を、翻訳特徴スコアとして算出する。そして、近似オラクル文に、高い翻訳特徴スコアがつくように、各翻訳特徴モデルの重みを調整する。
【００４２】
＜近似オラクル文選択装置の作用＞
次に、第１の実施の形態に係る近似オラクル文選択装置１００の作用について説明する。まず、翻訳元言語の入力文に対して機械翻訳処理を行って得られた複数の翻訳候補文を表わす語ラティスと、翻訳先言語の正解翻訳文と、改善参考値パラメータαとが、近似オラクル文選択装置１００に入力されると、近似オラクル文選択装置１００によって、図５に示す近似オラクル文選択処理ルーチンが実行される。
【００４３】
まず、ステップＳ１０１において、入力された語ラティスの中から、特定済みのノードのうち、最も内側の２つのノードを特定し、特定された２つのノードのうち、次候補の少ない方のノードを、特定対象端ノードとして決定する。
【００４４】
そして、ステップＳ１０２において、上記ステップＳ１０１で決定された特定対象端ノードに連結された内側のノードの各々を、次ノード候補とし、次ノード候補のうちのひとつを次ノードとして選択し、特定済みノードとする。
【００４５】
ここで、上記ステップＳ１０２は、図６に示す処理ルーチンによって実現される。
【００４６】
まず、ステップＳ１０２１において、入力された語ラティスから、特定済みノードのうちの最も内側の２つのノードＡ、Ｂを接続する部分ラティスを抽出する。
【００４７】
そして、次ノード候補の全てについて、ステップＳ１０２１〜Ｓ１０２２の処理をｋ回繰り返す処理を、繰り返し行う。
【００４８】
ステップＳ１０２２では、処理対象の次ノード候補に対する試行を行い、上記ステップＳ１０２１で生成された部分ラティスにおける、処理対象の次ノード候補を経由するパスを生成する。そして、ステップＳ１０２３において、上記ステップＳ１０２２で生成されたパスと、特定済みノードとを結合して、翻訳候補文を生成し、入力された正解翻訳文に基づいて、当該翻訳候補文の翻訳評価尺度を算出する。そして、算出した翻訳評価尺度と改善参考値パラメータαとを比較して、翻訳評価尺度が改善されたか否かを判定し、ノード毎改善率記憶部２２２に記憶されている、処理対象の次ノード候補に対する、改善回数と試行回数とを更新する。
【００４９】
そして、ステップＳ１０２４では、ノード毎改善率記憶部２２２に記憶されている、次ノード候補の各々に対する改善回数と試行回数とに基づいて、次ノード候補の各々に対する改善率を算出し、算出された改善率が最も高い次ノード候補を、次ノードとして選択し、当該次ノード候補を、特定済みノードとして特定済みノード記憶部２３に更に格納する。
【００５０】
次のステップＳ１０２５では、改善参考値パラメータαを、上記ステップＳ１０２３で算出された翻訳評価尺度の最高値に更新し、当該処理ルーチンを終了する。
【００５１】
そして、ステップＳ１０３において、特定済みノード記憶部２３に記憶されている特定済みノードに基づいて、特定済みノードによって文頭ノードから文末ノードまで接続されているか否かを判定する。特定済みノードによって文頭ノードから文末ノードまで接続されていない場合には、上記ステップＳ１０１へ戻り、特定対象端ノードを再度決定する。
【００５２】
一方、特定済みノードによって文頭ノードから文末ノードまで接続されている場合には、ステップＳ１０４において、文頭ノードから文末ノードまでの各特定済みノードの単語を結合して生成される翻訳候補文を、近似オラクル文として出力部３０により出力して、近似オラクル文選択処理ルーチンを終了する。
【００５３】
そして、出力された近似オラクル文を用いて、翻訳特徴モデルの各々に対する重みが、近似オラクル文に対する翻訳スコアが高くなるように調整される。
【００５４】
以上説明したように、本実施の形態に係る近似オラクル文選択装置によれば、語ラティスの両端（文頭ノード及び文末ノード）から順に、次ノード候補の各々について、ｋ回の試行により、当該次ノード候補を経由する部分パスをｋ回生成して各部分パスの翻訳候補文の翻訳評価尺度を算出し、改善参考値と比較して改善回数を求め、改善率が最も高い次ノード候補を、特定済みノードとして決定することを、特定済みノードによって文頭ノードから文末ノードまで接続されるまで繰り返し、特定済みノードの各々で表わされる翻訳候補文を、近似オラクル文として出力することにより、計算量の増大を抑制して、近似オラクル文を精度よく得ることができる。
【００５５】
また、本実施の形態に係る近似オラクル文選択装置によれば、翻訳評価尺度を変更することなく近似オラクル文を得るため、より高い精度での近似が可能となる。また、単純に試行を繰り返す方法に比べて、確度の高い部分（すなわち、改善率が高い部分）から順に特定していくことにより、無駄な試行が減るため、同じ試行回数であればより高い精度の近似が可能となる。
【００５６】
＜第２の実施の形態＞
次に、第２の実施の形態について説明する。なお、第２の実施の形態に係る近似オラクル文選択装置は、第１の実施の形態と同様の構成であるため、同一符号を付して説明を省略する。
【００５７】
第２の実施の形態では、語ラティスの各エッジに重みが付与されている点が、第１の実施の形態と異なっている。
【００５８】
第２の実施の形態に係る近似オラクル文選択装置に入力される語ラティスでは、各エッジに、機械翻訳処理で求められた重みが付与されている。例えば、連結される単語間の尤もらしさに応じた重みが、機械翻訳処理において求められ、語ラティスにおける当該単語間を示すエッジに、重みが付与される。
【００５９】
試行結果生成部２２１における部分パスの生成では、次ノード候補が、文頭寄りのノードである場合には、部分ラティス中の次ノード候補から順に、文末寄りに連結されているノードを、エッジに付与された重みに応じた確率で選択していき、部分ラティス中の末尾（上記のノードＢ）に到達するまで繰り返し、確率的に部分パスを得る。次ノード候補が、文末寄りのノードである場合には、部分ラティス中の先頭（上記のノードＡ）から順に、文末寄りに連結されているノードを、エッジに付与された重みに応じた確率で選択していき、部分ラティス中の次ノード候補に到達するまで繰り返し、確率的に部分パスを得る。
【００６０】
なお、第２の実施の形態に係る近似オラクル文選択装置の他の構成及び作用については、第１の実施の形態と同様であるため、説明を省略する。
【００６１】
このように、語ラティスの各エッジに重みが付与されていても、翻訳評価尺度を変更することなく近似オラクル文を得るため、より高い精度での近似が可能となる。
【００６２】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００６３】
例えば、複数の翻訳候補文を得るための機械翻訳処理や、各翻訳特徴モデルに対する重みの調整処理を、近似オラクル文選択装置とは別の装置で行ってもよい。
【００６４】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【００６５】
１０   入力部
２０   演算部
２１   特定対象端決定部
２２   次ノード決定部
２３   ノード記憶部
２４   終了判定部
３０   出力部
１００ 近似オラクル文選択装置
２２１ 試行結果生成部
２２２ ノード毎改善率記憶部
２２３ 次ノード候補選択部
【図１】
2014149637.tif 000003
【図２】
2014149637.tif 000004
【図３】
2014149637.tif 000005
【図４】
2014149637.tif 000006
【図５】
2014149637.tif 000007
【図６】
2014149637.tif 000008