(57)【特許請求の範囲】
【請求項１】
複数種類の翻訳特徴モデル及び前記複数種類の翻訳特徴モデルの各々に対する重みに基づいて、翻訳元言語の単語列を、翻訳先言語の単語列の複数の候補ｈに翻訳する翻訳処理手段と、
前記翻訳処理手段によって翻訳された前記翻訳先言語の単語列の複数の候補ｈの各々について、複数種類の翻訳評価尺度を示す複数のスコアＭ１（ｈ）、Ｍ２（ｈ）を算出する翻訳評価手段と、
前記複数の候補ｈの各々について算出された前記複数のスコアＭ１（ｈ）、Ｍ２（ｈ）に基づいて、以下の式を用いて、変数αを０から無限大まで徐々に増加させながら、変数αの各値において、前記複数の候補の集合Ｌから、パレート最適性を満たす候補ｈ＊を抽出すると共に、前記抽出された候補ｈ＊より前記スコアＭ２（ｈ）が小さくなる候補を、前記パレート最適性を満たさない候補として識別するパレート識別手段と、
前記パレート識別手段による識別結果に応じて、前記複数種類の翻訳特徴モデルの各々に対する重みを更新する重み更新手段と、
前記翻訳処理手段による翻訳、前記翻訳評価手段による算出、前記パレート識別手段による識別、及び前記重み更新手段による更新を繰り返すことで、前記複数種類の翻訳特徴モデルの各々に対する重みを最適化する最適化手段と、
を含む翻訳最適化装置。
【数１】
0005548176.tif 000009
【請求項２】
前記翻訳処理手段は、翻訳元言語の複数の単語列の各々を、翻訳先言語の単語列の複数の候補に翻訳し、
前記重み更新手段は、前記パレート識別手段による識別結果に応じて、前記翻訳先言語の複数の単語列に対する各候補について、パレート最適性を満たすと識別された場合に、該候補に対する各スコアとして、該スコアの最大値を与えて、前記複数の単語列に対する各候補について、各スコアの合計値を累積した累計スコアを算出し、前記算出された累計スコアに基づいて、前記複数種類の翻訳特徴モデルの各々に対する重みを更新する請求項１記載の翻訳最適化装置。
【請求項３】
前記重み更新手段は、前記パレート識別手段による識別結果に応じて、前記翻訳先言語の単語列に対する各候補の少なくとも一つが、パレート最適性を満たさないと識別された場合に、前記複数種類の翻訳特徴モデルの各々に対する重みを更新する請求項１記載の翻訳最適化装置。
【請求項４】
翻訳処理手段、翻訳評価手段、パレート識別手段、重み更新手段、及び最適化手段を含む翻訳最適化装置における翻訳最適化方法であって、
前記翻訳最適化装置は、
前記翻訳処理手段によって、複数種類の翻訳特徴モデル及び前記複数種類の翻訳特徴モデルの各々に対する重みに基づいて、翻訳元言語の単語列を、翻訳先言語の単語列の複数の候補ｈに翻訳するステップと、
前記翻訳評価手段によって、前記翻訳処理手段によって翻訳された前記翻訳先言語の単語列の複数の候補ｈの各々について、複数種類の翻訳評価尺度を示す複数のスコアＭ１（ｈ）、Ｍ２（ｈ）を算出するステップと、
前記パレート識別手段によって、前記複数の候補ｈの各々について算出された前記複数のスコアＭ１（ｈ）、Ｍ２（ｈ）に基づいて、以下の式を用いて、変数αを０から無限大まで徐々に増加させながら、変数αの各値において、前記複数の候補の集合Ｌから、パレート最適性を満たす候補ｈ＊を抽出すると共に、前記抽出された候補ｈ＊より前記スコアＭ２（ｈ）が小さくなる候補を、前記パレート最適性を満たさない候補として識別するステップと、
前記重み更新手段によって、前記パレート識別手段による識別結果に応じて、前記複数種類の翻訳特徴モデルの各々に対する重みを更新するステップと、
前記最適化手段によって、前記翻訳処理手段による翻訳、前記翻訳評価手段による算出、前記パレート識別手段による識別、及び前記重み更新手段による更新を繰り返すことで、前記複数種類の翻訳特徴モデルの各々に対する重みを最適化するステップと、
を含んで実行することを特徴とする翻訳最適化方法。
【数２】
0005548176.tif 000010
【請求項５】
前記翻訳処理手段によって翻訳するステップは、翻訳元言語の複数の単語列の各々を、翻訳先言語の単語列の複数の候補に翻訳し、
前記重み更新手段によって更新するステップは、前記パレート識別手段による識別結果に応じて、前記翻訳先言語の複数の単語列に対する各候補について、パレート最適性を満たすと識別された場合には、該候補に対する各スコアとして、該スコアの最大値を与えて、前記複数の単語列に対する各候補について、各スコアの合計値を累積した累計スコアを算出し、前記算出された累計スコアに基づいて、前記複数種類の翻訳特徴モデルの各々に対する重みを更新する請求項４記載の翻訳最適化方法。
【請求項６】
前記重み更新手段によって更新するステップは、前記パレート識別手段による識別結果に応じて、前記翻訳先言語の単語列に対する各候補の少なくとも一つが、パレート最適性を満たさないと識別された場合には、前記複数種類の翻訳特徴モデルの各々に対する重みを更新する請求項４記載の翻訳最適化方法。
【請求項７】
コンピュータを、請求項１〜請求項３の何れか１項記載の翻訳最適化装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、翻訳最適化装置、方法、及びプログラムに係り、特に、翻訳処理で用いる複数の翻訳特徴モデルに対する重みを最適化する翻訳最適化装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
通常、統計翻訳システムは、複数の知識ベースを活用する。例えば、日本語から英語への翻訳の場合、翻訳モデル（入力となる日本語単語に対して最も可能性の高い英語訳を表す知識ベース）、言語モデル（出力となる英語表現の自然さを表す知識ベース）、及び並び換えモデル（入出力言語間の文法構造変換の尤もらしさ表す知識ベース）などの様々なモデルを統合した上で、入力文（日本語）に対して最も尤もらしい翻訳文（英語）を生成する。
【０００３】
翻訳文の尤もらしさはモデル特徴量の重みつき組み合わせで表現される。ここで、最も重要なステップの一つは、この重みの最適化（Ｗｅｉｇｈｔ  Ｏｐｔｉｍｉｚａｔｉｏｎ）である。従来手法では、重みの最適化の際、ただ１つの翻訳品質評価尺度（ｅｖａｌｕａｔｉｏｎ  ｍｅｔｒｉｃ）を目的関数として用いている。
【０００４】
重みの最適化の流れは以下の通りである。まず開発データとして、例えば日本語の文章（入力)と正しい英語訳（出力）を用意する。（１）機械翻訳システムは、入力文を翻訳して、出力結果と正しい訳文を比較する。（２）モデルの重みを調節する。この（１）〜（２）を何回も行い、最終的に、出力と正しい訳文が十分に一致したときの重みを求める。このような統計翻訳の最適化には、次の二つの代表的な手法が使われてきた。
【０００５】
一つの手法はＭＥＲＴ（Ｍｉｎｉｍｕｍ  Ｅｒｒｏｒ  Ｒａｔｅ  Ｔｒａｉｎｉｎｇ）であり（非特許文献１）、もう一つの手法はＭＩＲＡ（Ｍａｒｇｉｎ  Ｉｎｆｕｓｅｄ  Ｒｅｌａｘｅｄ  Ａｌｇｏｒｉｔｈｍ）である（非特許文献２）。どちらの方法も、繰り返し翻訳して、翻訳品質評価尺度の観点で最もよい翻訳を生成するように重みを調整する。
【０００６】
このように重みの最適化のために、評価尺度は重要な役割を果たす。いい評価尺度は、正しい翻訳に高いスコアを与え、悪い翻訳に低いスコア与える。現在一番広く使われている評価尺度がＢＬＥＵという尺度である（非特許文献３）。ＢＬＥＵは、出力と正しい訳文との間における連続する部分単語列の一致度に基づいて計算される（よい翻訳のときＢＬＥＵ値は高くなる）。もう一つの代表的な評価尺度はＴＥＲ（Ｔｒａｎｓｌａｔｉｏｎ  Ｅｄｉｔ  Ｒａｔｅ）である（非特許文献４）。ＴＥＲは、翻訳文を正しい訳文に書き換えるときに何ステップの作業が必要かに基づいてと計算される（よい翻訳のときにＴＥＲ値は低くなる）。
これまで数多くの評価尺度が提案されてきたが、人間の評価と一致する評価尺度は知られていない。実際は、評価尺度はそれぞれ違う観点で翻訳品質を評価しており、その意味で全ての評価尺度は一面の合理性を有している。そのため、機械翻訳の開発者は、複数の評価尺度を使ってシステムの性能を測っているのが実状である。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Franz Och, “Minimum Error Training in Statistical Machine Translation,” Proceedings of the Annual Meeting of the Association for Computational Linguistics (ACL), 2003.
【非特許文献２】Taro Watanabe, Jun Suzuki, Hajime Tsukada, Hideki Isozaki, “Oneline Large-Margin Training for Statistical Machine Translation,” Proceedings of the Conference on Empirical Methods for Natural Language Processing (EMNLP-CoNLL), 2007.
【非特許文献３】Kishore Papineni, Salim Roukas, Todd Ward, Wei-jing Zhu, “BLEU: A method for automatic evaluation of machine translation,” Proceedings of the Annual Meeting of the Association for Computational Linguistics (ACL), 2002.
【非特許文献４】Matt Snover, Bonnie Dorr, Richard Schart, Linnea Micciulla, John Makhoul, “A study of Translation Edit Rate with Targeted Human Annotation,” Proceedings of Meeting of Association for Machine Translation for the Americas (AMTA), 2006.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記非特許文献１、２に記載されたＭＥＲＴやＭＩＲＡを用いた最適化手法では一つだけの評価尺度しか利用できなかった。そのため、ある観点でよい翻訳を生成できるように最適化されるが、他の観点では適切な翻訳となることが保障されない、という問題がある。これは、開発者が、評価尺度として例えばＢＬＥＵかＴＥＲのどちらかしか使えないことに相当する。ＢＬＥＵで最適化すればＴＥＲが最適ではないかもしれない。同じように、ＴＥＲで最適化すればＢＬＥＵが悪くなるかもしれない。一つ評価尺度がよい一方で他の評価尺度が悪いという不均衡があると、人間が評価したときに決してよい翻訳にならない。
【０００９】
本発明は、上記の事情を鑑みてなされたもので、複数の評価尺度を同時に用いて、複数の翻訳特徴モデルに対する重みの最適化を行うことができる翻訳最適化装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の目的を達成するために本発明に係る翻訳最適化装置は、複数種類の翻訳特徴モデル及び前記複数種類の翻訳特徴モデルの各々に対する重みに基づいて、翻訳元言語の単語列を、翻訳先言語の単語列の複数の候補ｈに翻訳する翻訳処理手段と、前記翻訳処理手段によって翻訳された前記翻訳先言語の単語列の複数の候補ｈの各々について、複数種類の翻訳評価尺度を示す複数のスコアＭ１（ｈ）、Ｍ２（ｈ）を算出する翻訳評価手段と、前記複数の候補ｈの各々について算出された前記複数のスコアＭ１（ｈ）、Ｍ２（ｈ）に基づいて、以下の式を用いて、変数αを０から無限大まで徐々に増加させながら、変数αの各値において、前記複数の候補の集合Ｌから、パレート最適性を満たす候補ｈ＊を抽出すると共に、前記抽出された候補ｈ＊より前記スコアＭ２（ｈ）が小さくなる候補を、前記パレート最適性を満たさない候補として識別するパレート識別手段と、前記パレート識別手段による識別結果に応じて、前記複数種類の翻訳特徴モデルの各々に対する重みを更新する重み更新手段と、前記翻訳処理手段による翻訳、前記翻訳評価手段による算出、前記パレート識別手段による識別、及び前記重み更新手段による更新を繰り返すことで、前記複数種類の翻訳特徴モデルの各々に対する重みを最適化する最適化手段と、を含んで構成されている。
【数１】
0005548176.tif 000002
【００１１】
本発明に係る翻訳最適化方法は、翻訳処理手段、翻訳評価手段、パレート識別手段、重み更新手段、及び最適化手段を含む翻訳最適化装置における翻訳最適化方法であって、前記翻訳最適化装置は、前記翻訳処理手段によって、複数種類の翻訳特徴モデル及び前記複数種類の翻訳特徴モデルの各々に対する重みに基づいて、翻訳元言語の単語列を、翻訳先言語の単語列の複数の候補ｈに翻訳するステップと、前記翻訳評価手段によって、前記翻訳処理手段によって翻訳された前記翻訳先言語の単語列の複数の候補ｈの各々について、複数種類の翻訳評価尺度を示す複数のスコアＭ１（ｈ）、Ｍ２（ｈ）を算出するステップと、前記パレート識別手段によって、前記複数の候補ｈの各々について算出された前記複数のスコアＭ１（ｈ）、Ｍ２（ｈ）に基づいて、以下の式を用いて、変数αを０から無限大まで徐々に増加させながら、変数αの各値において、前記複数の候補の集合Ｌから、パレート最適性を満たす候補ｈ＊を抽出すると共に、前記抽出された候補ｈ＊より前記スコアＭ２（ｈ）が小さくなる候補を、前記パレート最適性を満たさない候補として識別するステップと、前記重み更新手段によって、前記パレート識別手段による識別結果に応じて、前記複数種類の翻訳特徴モデルの各々に対する重みを更新するステップと、前記最適化手段によって、前記翻訳処理手段による翻訳、前記翻訳評価手段による算出、前記パレート識別手段による識別、及び前記重み更新手段による更新を繰り返すことで、前記複数種類の翻訳特徴モデルの各々に対する重みを最適化するステップと、を含んで実行することを特徴とする。
【数２】
0005548176.tif 000003
【００１２】
本発明によれば、翻訳処理手段によって、複数種類の翻訳特徴モデル及び前記複数種類の翻訳特徴モデルの各々に対する重みに基づいて、翻訳元言語の単語列を、翻訳先言語の単語列の複数の候補に翻訳する。前記翻訳評価手段によって、前記翻訳処理手段によって翻訳された前記翻訳先言語の単語列の複数の候補の各々について、複数種類の翻訳評価尺度を示す複数のスコアを算出する。
【００１３】
そして、パレート識別手段によって、前記複数の候補の各々について算出された前記複数のスコアに基づいて、前記複数の候補の各々が、パレート最適性を満たすか否かを識別する。重み更新手段によって、前記パレート識別手段による識別結果に応じて、前記複数種類の翻訳特徴モデルの各々に対する重みを更新する。
【００１４】
そして、最適化手段によって、前記翻訳処理手段による翻訳、前記翻訳評価手段による算出、前記パレート識別手段による識別、及び前記重み更新手段による更新を繰り返すことで、前記複数種類の翻訳特徴モデルの各々に対する重みを最適化する。
【００１５】
このように、翻訳先言語の単語列の複数の候補の各々について複数種類の翻訳評価尺度を示す複数のスコアを算出して、パレート最適性を満たすか否かを識別し、識別結果に応じて、各翻訳特徴モデルに対する重みを更新することにより、複数の評価尺度を同時に用いて、複数の翻訳特徴モデルに対する重みの最適化を行うことができる。
【００１６】
本発明に係るパレート識別手段は、前記複数の候補ｈの各々について算出された前記複数のスコアＭ１（ｈ）、Ｍ２（ｈ）に基づいて、以下の式を用いて、変数αを０から無限大まで徐々に増加させながら、変数αの各値において、前記複数の候補の集合Ｌから、パレート最適性を満たす候補ｈ＊を抽出すると共に、前記抽出された候補ｈ＊より前記スコアＭ２（ｈ）が小さくなる候補を、前記パレート最適性を満たさない候補として識別するようにする。
【００１７】
【数１】
0005548176.tif 000004
【００１８】
本発明に係る翻訳処理手段は、翻訳元言語の複数の単語列の各々を、翻訳先言語の単語列の複数の候補に翻訳し、前記重み更新手段は、前記パレート識別手段による識別結果に応じて、前記翻訳先言語の複数の単語列に対する各候補について、パレート最適性を満たすと識別された場合に、該候補に対する各スコアとして、該スコアの最大値を与えて、前記複数の単語列に対する各候補について、各スコアの合計値を累積した累計スコアを算出し、前記算出された累計スコアに基づいて、前記複数種類の翻訳特徴モデルの各々に対する重みを更新するようにすることができる。
【００１９】
本発明に係る重み更新手段は、前記パレート識別手段による識別結果に応じて、前記翻訳先言語の単語列に対する各候補の少なくとも一つが、パレート最適性を満たさないと識別された場合に、前記複数種類の翻訳特徴モデルの各々に対する重みを更新するようにすることができる。
【００２０】
本発明に係るプログラムは、コンピュータを、上記の翻訳最適化装置の各手段として機能させるためのプログラムである。
【発明の効果】
【００２１】
以上説明したように、本発明の翻訳最適化装置、方法、及びプログラムによれば、翻訳先言語の単語列の複数の候補の各々について複数種類の翻訳評価尺度を示す複数のスコアを算出して、パレート最適性を満たすか否かを識別し、識別結果に応じて、各翻訳特徴モデルに対する重みを更新することにより、複数の評価尺度を同時に用いて、複数の翻訳特徴モデルに対する重みの最適化を行うことができる、という効果が得られる。
【図面の簡単な説明】
【００２２】
【図１】本発明の第１の実施の形態に係る翻訳最適化装置の構成を示す概略図である。
【図２】パレート最適性を説明するための図である。
【図３】パレートフロンティアを求めるアルゴリズムを示す図である。
【図４】本発明の第１の実施の形態に係る翻訳最適化装置における翻訳最適化処理ルーチンの内容を示すフローチャートである。
【発明を実施するための形態】
【００２３】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００２４】
＜第１の実施の形態＞
＜システム構成＞
本発明の第１の実施の形態に係る翻訳最適化装置１００は、翻訳元言語の入力文と翻訳先言語の正しい出力文とからなる開発データが複数入力され、複数の特徴モデルに対する重みを最適化する。この翻訳最適化装置１００は、ＣＰＵと、ＲＡＭと、後述する翻訳最適化処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図１に示すように、翻訳最適化装置１００は、入力部１０と、演算部２０とを備えている。
【００２５】
入力部１０は、入力された開発データとして、翻訳元の日本語の入力文（単語列)と正しい英語訳である出力文（単語列）とからなるデータセットを複数受け付ける。
【００２６】
演算部２０は、開発データ記憶部２１、特徴量重み記憶部２２、翻訳部２３、翻訳評価部２４、パレート識別部２５、及び最適化部２６を備えている。なお、最適化部２６が、重み更新手段及び最適化手段の一例である。
【００２７】
開発データ記憶部２１は、入力部１０により受け付けた複数の開発データを記憶する。
【００２８】
特徴量重み記憶部２２は、翻訳部２３による翻訳処理で参照される複数の翻訳特徴モデル（例えば、翻訳モデル、言語モデル、及び並び替えモデル）の各々に対する重みからなる重みベクトルＷ（＝（ｗ1、ｗ2、ｗ3））を記憶する。
【００２９】
翻訳部２３は、各開発データについて、以下のように、当該開発データの入力文を翻訳し、翻訳文の出力候補リストを出力する。
【００３０】
まず、翻訳部２３は、開発データの入力文について、翻訳処理を行い、複数の翻訳候補を求める。なお、翻訳処理については、従来既知の手法を用いればよいため、詳細な説明を省略する。翻訳部２３は、各翻訳候補について、複数の翻訳特徴モデルの各々に対する特徴量を算出し、各翻訳特徴モデルの特徴量からなる特徴ベクトルＦ（＝（ｆ1、ｆ2、ｆ3））を算出する。翻訳部２３は、各翻訳候補について、特徴量重み記憶部２２に記憶された各翻訳特徴モデルに対する重みからなる重みベクトルＷを用いて、各翻訳特徴モデルの特徴量の重み付き加算値Ｆ・Ｗ（＝ｗ1・ｆ1＋ｗ2・ｆ2＋ｗ3・ｆ3））を、翻訳特徴スコアとして算出する。翻訳部２３は、各翻訳候補を、翻訳特徴スコアの降順に並べ、上位ｋ個の翻訳候補を特定し、特定された上位ｋ個の翻訳候補を、翻訳文の出力候補リストとして出力する。
【００３１】
翻訳評価部２４は、翻訳部２３により出力された翻訳文の出力候補リストの中の各翻訳候補について、開発データに含まれる正しい翻訳文と比較して、複数種類の評価尺度（例えば、ＢＬＥＵ及びＴＥＲ）の各々に対する複数種類の評価尺度スコア（ＢＬＥＵ値、１−ＴＥＲ値）を算出する。
【００３２】
パレート識別部２５は、翻訳評価部２４によって算出された複数種類の評価尺度スコアに基づいて、翻訳文の出力候補リストの中の各翻訳候補について、パレート最適性を満たすか否かを識別し、パレート最適性を満たす翻訳候補からなる、出力候補リストのサブセットを出力する。
【００３３】
ここで、非特許文献（Marler and Arora, “Survey of multi-objective optimization methods for Engineering”, in Journal of Structural and Multidisciplinary Optimization, vol26., 2004）に記載されているパレートの概念を説明する。説明を簡単にするため、翻訳部２３は、二つの翻訳候補(Ｈ１、Ｈ２)だけを出力するものとし、この中のどちらが有効な翻訳かを決める問題として説明する。
【００３４】
翻訳評価部２４によって、出力候補リストに含まれる各翻訳候補のスコアベクトル（各要素は、出力候補のＢＬＥＵ値と（１−ＴＥＲ値）とからなる）を計算する。ここで、翻訳候補Ｈ１のスコアベクトルをＭ（Ｈ１）で表わし、翻訳候補Ｈ２のスコアベクトルをＭ（Ｈ２）で表す。スコアベクトルの各要素の値が高いほど、よい翻訳であると考えられる。もしＭ（Ｈ１）のすべての要素がＭ（Ｈ２）のすべての要素より大きければ、翻訳候補Ｈ１はすべての評価尺度で、翻訳候補Ｈ２より良い翻訳であるといえる。逆に、スコアベクトルＭ（Ｈ１）のすべての要素と比べてスコアベクトルＭ（Ｈ２）のすべての要素が大きい場合、翻訳候補Ｈ１より翻訳候補Ｈ２の方が良い翻訳といえる。しかし、ある要素はスコアベクトルＭ（Ｈ１）の方が高く、他の要素はＭ（Ｈ２）の方が高い時、翻訳候補Ｈ１とＨ２はどちらが良い翻訳かは一概にいえない。このような場合、翻訳候補Ｈ１とＨ２は同程度の品質の翻訳文と考えられる。このような直感を定式化したのがパレート最適性である。以下に、弱パレート最適性（Ｗｅａｋ  Ｐａｒｅｔｏ−ｏｐｔｉｍａｌｉｔｙ）、及びパレート最適性（Ｐａｒｅｔｏ−ｏｐｔｉｍａｌｉｔｙ）の定義について説明する。
【００３５】
（定義１）弱パレート最適性：翻訳文の出力候補リストＬが与えられており、すべての要素でＭ（Ｈ’）＞Ｍ（Ｈ）を満たすＨ’が存在しない場合かつその場合のみ、Ｈは弱パレート最適性を満たすという。
【００３６】
（定義２）パレート最適性：翻訳文の出力候補リストＬが与えられており、すべての要素でＭ（Ｈ’）≧Ｍ（Ｈ）であり、かつ、ある要素ｉでＭｉ（Ｈ’）＞Ｍｉ（Ｈ）を満たすＨ’が存在しない場合、かつその場合のみ、Ｈはパレート最適性を満たすという。
【００３７】
上記の定義に関して、１０個の翻訳候補と２つの評価尺度（ｍｅｔｒｉｃ１、２）を例として、図２にて簡単に説明する。上記図２で、「○」で示した翻訳候補はパレート最適性（および弱パレート最適性）を満たしている。一方で「△」で示した候補は、パレート最適性を満たさないが弱パレート最適性を満たしている。「＋」を示される弱パレート最適性を満たさない翻訳候補は非パレートポイント（Ｎｏｎ−ｐａｒｅｔｏ  ｐｏｉｎｔ）という。例えば、ポイント（０．４、０．７）はパレート最適性を満たした翻訳候補を示す。なぜなら、（ｍｅｔｒｉｃ１＞＝０．４，かつ、ｍｅｔｒｉｃ２＞＝０．７）となる他の翻訳候補が存在しないからである。一方で、ポイント（０．６，０．４）は他のポイント（０．７、０．６）と比べたとき、ｍｅｔｒｉｃ１  ０．７＞０．６、ｍｅｔｒｉｃ２  ０．６＞０．４となるため、非パレートポイントとなる。
【００３８】
つまり、ある翻訳候補に対して、他の翻訳候補がすべての評価尺度で勝つ場合が無ければ、弱パレート最適性を満たす。ある翻訳候補に対して、全ての評価尺度で同等以上の評価値を持ち、かつ、少なくとも一つ以上の評価尺度でより大きい（勝る）評価値を持つ他の翻訳候補が存在する場合は、当該ある翻訳候補は、パレート最適性を満たさない。逆に、そのような他の翻訳候補が全く存在しない場合は、当該ある翻訳候補はパレート最適性を満たす。
【００３９】
また、翻訳文の出力候補リストＬが与えられたとき、パレート最適性を満たす全ての翻訳候補の集合をパレートフロンティア（Ｐａｒｅｔｏ  Ｆｒｏｎｔｉｅｒ）という。
【００４０】
パレート識別部２５の目的は、パレートフロンティアを効率的に見つけることである。従来より、いくつかのアルゴリズムが提案されているが、本実施の形態では、一例として、Ｃｏｎｖｅｘ  Ｈｕｌｌ  Ａｌｇｏｒｉｔｈｍ（凸包アルゴリズム）を拡張したアルゴリズムを用いる。この拡張により、パレートフロンティアの近似解を高速に求めることができる。本実施の形態で用いるアルゴリズムは、評価尺度が２つである場合に用いることができる。
【００４１】
本実施の形態で用いるアルゴリズムでは、以下の（１）式に従って、２つの評価尺度のあらゆる線形和の各々について、最大となるポイント（翻訳候補）ｈ*を求める。
【００４２】
【数２】
0005548176.tif 000005
【００４３】
ここで、αの値をゼロから無限へ変化させて、αの各値で求めたすべての翻訳候補ｈ*は、弱パレート最適性を満たしていることが証明できる。 
【００４４】
上記（１）式は、αに関して区分的定数（ｐｉｅｃｅｗｉｓｅ−ｃｏｎｓｔａｎｔ）であるため、パレート識別部２５は、すべての０≦α＜∞に関する値を検索するのに高速なアリゴリズムが利用できる。擬似-コードは図３で示される。 
【００４５】
パレート識別部２５は、図３に示すように、複数の翻訳候補ｈの各々について算出された評価尺度スコアＭ１（ｈ）、Ｍ２（ｈ）に基づいて、上記（１）式を用いて、変数α＝０を初期値として、翻訳文の出力候補リストＬから、パレート最適性を満たす翻訳候補ｈ＊を抽出する。そして、抽出された翻訳候補ｈ＊より評価尺度スコアＭ２（ｈ）が小さくなる翻訳候補を、非パレートポイントとして識別する。
【００４６】
そして、残りの翻訳候補ｈの各々について、以下の（２）式を用いて、α（ｈ）を算出し、α（ｈ）の最小値を、次の変数αとして、上記の処理を繰り返す。変数αが無限大になるまで上記の処理を繰り返し、処理が終了した時点で、パレート最適性を満たす翻訳候補ｈ＊として抽出された翻訳候補の集合を、パレートフロンティアとする。
【００４７】
最適化部２６は、以下に説明するように、翻訳評価部２４により算出された評価尺度スコア及びパレート識別部２５による識別結果に基づいて、複数の翻訳特徴モデルに対する重みを最適化する。
【００４８】
パレート最適性を満たす翻訳候補は、複数の評価尺度スコアを考慮して得られる翻訳であるため、良い翻訳であると考えられる。そこで、最適化部２６は、翻訳候補リストの中にあるパレート最適性を満たす翻訳候補に、高い翻訳尺度スコアがつくように、各翻訳特徴モデルの重みを調整する。本実施の形態では、最適化部２６において、ＭＥＲＴを拡張した多目的最適化手法を用いる。ＭＥＲＴはＰＯＷＥＬＬ法などの勾配なしアルゴリズム（Ｇｒａｄｉｅｎｔ−Ｆｒｅｅ  ｍｅｔｈｏｄ)を使用して重みを更新する最適化手法である。
【００４９】
本実施の形態で用いる多目的最適化手法は以下の手順で動作する。
【００５０】
まず、ランダムに決定された重みベクトルＷを用いて、各開発データについて、翻訳候補リストを各々求める。そして、複数の開発データの各々について翻訳評価部２４により算出された評価尺度スコア及びパレート識別部２５による識別結果に基づいて、以下のように、累計スコアを算出する。
【００５１】
パレート最適性を満たさない翻訳候補に対しては、Ｍ１（Ｈ）＋Ｍ２（Ｈ）の合計スコアを与え、一方、パレートフロンティアに含まれる翻訳候補（パレート最適性を満たす翻訳候補）に対しては、Ｍ１＿ＭＡＸ＋Ｍ２＿ＭＡＸの合計スコアを与える。ここで、Ｍ１＿ＭＡＸは翻訳候補リスト中で、一方の評価尺度の最大スコアであり、Ｍ２＿ＭＡＸは、翻訳候補リスト中で他方の評価尺度の最大スコアを表す。
【００５２】
各候補リストに対して、上記の合計スコアを算出し、全開発データにおける合計スコアを累計することにより、累計スコアを算出する。
【００５３】
重みベクトルＷを繰り返しランダムに決定して、重みベクトルＷを毎回更新し、累計スコアを算出する。累計スコアが最大となる重みベクトルＷを特定し、最適化された重みベクトルＷとして、特徴量重み記憶部２２に記憶されている重みベクトルを更新する。
【００５４】
翻訳最適化装置１００は、翻訳部２３、翻訳評価部２４、パレート識別部２５、及び最適化部２６による一連の処理を繰り返し行う。重みベクトルを更新する毎に、累計スコアの最大値が次第に改善される。累計スコアの最大値の改善が止まったら、一連の処理の繰り返しを終了する。例えば、所定回数以上繰り返しても累計スコアの改善が止まったままである場合に、一連の処理の繰り返しを終了する。そして、特徴量重み記憶部２２に最終的に記憶されている、最大の累計スコアを与える重みベクトルを、最適化の結果とする。
【００５５】
＜翻訳最適化装置の作用＞
次に、本実施の形態に係る翻訳最適化装置１００の作用について説明する。まず、日本語の入力文と英語の正しい翻訳文とからなる開発データが、翻訳最適化装置１００に複数入力されると、翻訳最適化装置１００によって、入力された複数の開発データが、開発データ記憶部２１へ格納される。そして、翻訳最適化装置１００によって、図４に示す翻訳最適化処理ルーチンが実行される。
【００５６】
まず、ステップＳ１０１において、開発データ記憶部２１から複数の開発データの全てを取得する。そして、ステップＳ１０２において、各翻訳特徴モデルに対する重みをランダムに決定し、特徴量重み記憶部２２に格納する。ステップＳ１０３では、上記ステップＳ１０１において取得した各開発データの入力文について、翻訳処理を行い、翻訳特徴モデルに対する特徴量の重み付き加算による得られる翻訳スコアが上位ｋ個となる翻訳候補からなる翻訳文の出力候補リストを、各開発データについて生成する。
【００５７】
次のステップＳ１０４では、各開発データに対して、当該開発データについて上記ステップＳ１０３で生成された翻訳文の出力候補リストに含まれる各翻訳候補について、複数種類の翻訳評価尺度スコアを計算する。
【００５８】
そして、ステップＳ１０５において、各開発データに対して、当該開発データの各翻訳候補について上記ステップＳ１０４で算出された複数種類の翻訳評価尺度スコアに基づいて、翻訳候補リストに含まれる各翻訳候補がパレート最適性を満たすか否かを識別し、各開発データに対して、パレートフロンティアを求める。
【００５９】
次のステップＳ１０６では、各開発データに対して、上記ステップＳ１０４で計算された各翻訳候補の翻訳評価尺度スコアと、上記ステップＳ１０５で求められたパレートフロンティアとに基づいて、各翻訳候補の合計スコアを計算し、各開発データの合計スコアを累計して、累計スコアを算出する。算出した累計スコアに基づいて、最大の累計スコアを与える、各翻訳特徴モデルに対する重みを特定する。そして、ステップＳ１０７において、特徴量重み記憶部２２に記憶された各翻訳特徴モデルの重みを、上記ステップＳ１０６で特定された各翻訳特徴モデルに対する重みに更新する。
【００６０】
そして、ステップＳ１０８において、繰り返し処理を終了するか否かを判定する。例えば、上記ステップＳ１０６で算出された累計スコアの最大値が所定回数連続して改善していない場合には、繰り返し処理を終了すると判定し、翻訳最適化処理ルーチンを終了する。このとき特徴量重み記憶部２２に記憶された各翻訳特徴モデルの重みが、最適化された重みとなる。
【００６１】
一方、繰り返し処理を終了しないと判定された場合には、上記ステップＳ１０２へ戻り、各翻訳特徴モデルに対する重みをランダムに決定して、上記ステップＳ１０３〜ステップＳ１０７の処理を繰り返す。
【００６２】
特徴量重み記憶部２２に記憶された各翻訳特徴モデルの重みが出力されて、例えば、機械翻訳装置（図示省略）に入力され、各翻訳特徴モデルの重みを用いて、機械翻訳処理が行われる。
【００６３】
＜実験結果＞
次に、１６個の開発データに対して実験を行った結果について説明する。４つのタイプ(ＥＭＥＡ:医療翻訳、Ｏｐｅｎｓｕｂ:映画字幕翻訳、Ｅｕｒｏｐａｒｌ:国会スピーチの翻訳、ＮＩＳＴ:新聞やブログの翻訳)の開発データを用いて実験を行った。翻訳元言語は６種類(ＤＥ:ドイツ語、ＥＳ:スペイン語、ＦＲ:フランス語、ＮＬ:オランダ語、ＳＶ:スウェーデン、ＺＨ:中国語)とし、翻訳先言語を、英語とした。上記の第１の実施の形態で説明した最適化方法を含めて５つの最適化法を比較した。
【００６４】
比較対象として、ＢＬＥＵの評価尺度スコアを目的関数にしたＭＥＲＴ最適化手法、ＴＥＲの評価尺度スコアを目的関数にしたＭＥＲＴ最適化手法、ＢＬＥＵの評価尺度スコアとＴＥＲの評価尺度スコアを目的関数にしたＭＥＲＴ最適化手法を用いた実験を行った。また、パレート識別部２５で、後述するスカイラインアルゴリズムを用いた多目的最適化手法についても、同様に実験を行った。
【００６５】
医療翻訳の開発データについて実験を行った結果を以下の表１に示す。実験の結果として、ＢＬＥＵ値と１−ＴＥＲ値(高いスコアがよりよい)を、各最適化法について求めた。
【００６６】
【表１】
0005548176.tif 000006
【００６７】
上記表１で、「COMBINED」は、ＢＬＥＵの評価尺度スコアとＴＥＲの評価尺度スコアを目的関数にしたＭＥＲＴ最適化手法を用いた場合を示す。「SKYLINE」は、スカイラインアルゴリズムを使用した多目的最適化手法を用いた場合を示す。
【００６８】
「CVXHULL」は、上記の第１の実施の形態で説明した凸包アルゴリズムを使用した多目的最適化手法を用いた場合を示す。「MERT(BLEU)」は、ＢＬＥＵの評価尺度スコアを目的関数にしたＭＥＲＴ最適化手法を用いた場合を示す。「MERT(TER)」は、ＴＥＲの評価尺度スコアを目的関数にしたＭＥＲＴ最適化手法を用いた場合を示す。
【００６９】
映画字幕翻訳の開発データについて実験を行った結果を以下の表２に示す。
【００７０】
【表２】
0005548176.tif 000007
【００７１】
国会スピーチの翻訳の開発データ、及び新聞やブログの翻訳の開発データについて実験を行った結果を以下の表３に示す。
【００７２】
【表３】
0005548176.tif 000008
【００７３】
上記表１〜表３において、＊は最もよいシステムを示す。また、太字（ボールド）は両方の評価尺度を使用したシステム（Combined, Skyline, CvxHull）のなかで一番良いものを示す。
【００７４】
上記の実験結果から、複数の目的関数を使う場合、翻訳元言語と評価尺度の組み合わせのほとんどにおいて、上記の第１の実施の形態で提案した手法（スカイラインアルゴリズムを用いた手法も含む）で、「Combined」よりもすぐれた最適化が実現できていることがわかった。特に、上記の第１の実施の形態で提案した手法は、１−ＴＥＲ値で、「MERT(TER)」よりいい結果を出していることは特筆に値する。以上の実験結果から、上記の第１の実施の形態で提案した、パレート最適性に基づく最適化が有効な方法であることが分かった。
【００７５】
以上説明したように、本実施の形態に係る翻訳最適化装置によれば、翻訳文の出力候補リストの各翻訳候補について複数種類の評価尺度スコアを算出して、パレート最適性を満たすか否かを識別し、識別結果に応じて、各翻訳特徴モデルに対する重みを更新することにより、複数の評価尺度スコアを同時に用いて、複数の翻訳特徴モデルに対する重みの最適化を行うことができる。
【００７６】
複数の評価尺度についてパレート最適性を満たす翻訳候補（パレートポイント）に高い評価スコアがつくように翻訳特徴モデルの特徴量の重みを調整することにより、複数の評価尺度の観点で、バランスの取れた機械翻訳システムを構築することができる。
【００７７】
なお、上記の実施の形態では、翻訳部２３、翻訳評価部２４、パレート識別部２５、及び最適化部２６による一連の処理を繰り返し行う毎に、毎回、翻訳特徴モデルに対する重みをランダムに決定する場合を例に説明したが、これに限定されるものではない。翻訳評価部２４、パレート識別部２５、及び最適化部２６による一連の処理を繰り返し行う毎に、算出された累計スコアに基づいて、例えばＰＯＷＥＬＬ法を用いて、最適化方向に翻訳特徴モデルに対する重みを更新するようにしてもよい。
【００７８】
＜第２の実施の形態＞
次に、第２の実施の形態について説明する。なお、第２の実施の形態に係る翻訳最適化装置は、第１の実施の形態と同様の構成であるため、同一符号を付して説明を省略する。
【００７９】
第２の実施の形態では、各翻訳特徴モデルに対する重みを最適化するアルゴリズムが、第１の実施の形態と異なっている。
【００８０】
第２の実施の形態に係る翻訳最適化装置の最適化部２６は、ＭＩＲＡを拡張した多目的最適化手法を用いる。ここで想定する識別器は、翻訳候補をポジティブクラスとネガティブクラスに二値分類するものである。ＭＩＲＡを拡張した多目的最適化法は、当該識別器の特徴量の重みをオンライン的に更新するもので、以下の手順で動作する。
【００８１】
まず、複数の開発データの各々について、パレート識別部２５による識別結果に基づいて、パレート最適性を満たさない翻訳候補に対しては、ネガティブのクラスに分類し、パレートフロンティアに含まれる翻訳候補（パレート最適性を満たす翻訳候補）に対しては、ポジティブのクラスに分類する。各開発データの翻訳候補リストに含まれる各翻訳候補が、ポジティブである場合には、重みの更新を行わない。一方、ネガティブである翻訳候補が存在する場合には、各翻訳特徴モデルの重みを更新する。重みの更新方法は、単なる勾配法でもいいし、複雑な方法（例えば、ｍａｒｇｉｎ−ｉｎｆｕｓｅｄ  ｕｐｄａｔｅ）を用いてもよい。
【００８２】
翻訳最適化装置１００は、翻訳部２３、翻訳評価部２４、パレート識別部２５、及び最適化部２６による一連の処理を繰り返し行う。重みベクトルが更新されなくなるまで、一連の処理を繰り返す。
【００８３】
第２の実施の形態に係る翻訳最適化処理ルーチンでは、まず、開発データ記憶部２１から複数の開発データの全てを取得する。そして、各翻訳特徴モデルに対する重みをランダムに決定し、特徴量重み記憶部２２に格納する。上記で取得した各開発データの入力文について、翻訳処理を行い、翻訳特徴モデルに対する特徴量の重み付き加算による得られる翻訳スコアが上位ｋ個となる翻訳候補からなる出力候補リストを、各開発データについて生成する。
【００８４】
次に、各開発データに対して、当該開発データについて上記で生成された出力候補リストに含まれる各翻訳候補について、複数種類の翻訳評価尺度スコアを計算する。
【００８５】
そして、各開発データに対して、当該開発データの各翻訳候補について上記で算出された複数種類の翻訳評価尺度スコアに基づいて、翻訳候補リストに含まれる各翻訳候補がパレート最適性を満たすか否かを識別し、各開発データに対して、パレートフロンティアを求める。
【００８６】
次に、各開発データに対して、上記で求められたパレートフロンティアに基づいて、各翻訳候補のクラスを分類し、ネガティブとなる翻訳候補が存在する場合には、各翻訳特徴モデルに対する重みを最適化する。そして、特徴量重み記憶部２２に記憶された各翻訳特徴モデルの重みを、上記で最適化された各翻訳特徴モデルに対する重みに更新する。
【００８７】
そして、繰り返し処理を終了するか否かを判定する。例えば、重みが更新されなくなった場合には、繰り返し処理を終了すると判定し、翻訳最適化処理ルーチンを終了する。このとき特徴量重み記憶部２２に記憶された各翻訳特徴モデルの重みが、最適化された重みとなる。
【００８８】
一方、繰り返し処理を終了しないと判定された場合には、上記で更新された各翻訳特徴モデルの重みを用いて上記の処理を繰り返す。
【００８９】
なお、第２の実施の形態に係る翻訳最適化装置の他の構成及び作用については、第１の実施の形態と同様であるため、説明を省略する。
【００９０】
このように、翻訳文の出力候補リストの各翻訳候補について識別した、パレート最適性を満たすか否かの識別結果を用いて、ＭＩＲＡを拡張した多目的最適化手法により、各翻訳特徴モデルに対する重みを更新することにより、複数の評価尺度スコアを同時に用いて、複数の翻訳特徴モデルに対する重みの最適化を行うことができる。
【００９１】
なお、本発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【００９２】
例えば、パレート識別部において、スカイラインアルゴリズムを用いて、パレートフロンティアを求めるようにしてもよい。なお、スカイラインアルゴリズムとしては、非特許文献（Parke Godfrey, Ryan Shipley, Jarek Gyrz, “Algorithms and analyses for maximal vector computation”, VLDB Journal, vol16, 2006）に記載された手法と同様のものを用いればよいため、詳細な説明を省略する。
【００９３】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【００９４】
１０   入力部
２０   演算部
２１   開発データ記憶部
２２   特徴量重み記憶部
２３   翻訳部
２４   翻訳評価部
２５   パレート識別部
２６   最適化部
１００ 翻訳最適化装置
【図１】
0005548176.tif 000011
【図２】
0005548176.tif 000012
【図３】
0005548176.tif 000013
【図４】
0005548176.tif 000014