(57)【要約】【課題】非線形に素性を結合するニューラルネットワークを利用した場合、探索中に、翻訳候補のスコアを再計算する必要があり、負荷が大きかった。【解決手段】非局所的な素性関数に適用される第一重みベクトル、および局所的な素性関数に適用される第二重みベクトルを格納し得るパラメータ格納部と、非局所的な第一素性関数情報、および局所的な第二素性関数情報を格納し得る素性関数情報格納部と、フレーズペアまたはルールペア等である２以上の部分対情報を格納し得る部分対情報格納部と、フレーズペアまたはルールペア等の単位に非線形モデルを導入し、かつ非線形モデルはフレーズペアまたはルールペアに閉じた素性に限定して、２以上の目的言語文のスコアを取得するスコア取得部と、スコアが最も大きい目的言語文を取得する目的言語文取得部と、目的言語文を出力する出力部とを具備する翻訳装置により、機械翻訳において、精度高く高速に翻訳できる。【選択図】図１
2014235599.tif 000002
【特許請求の範囲】
【請求項１】
非局所的な素性関数に適用される重みベクトルである第一重みベクトル、および局所的な素性関数に適用される重みベクトルである第二重みベクトルを格納し得るパラメータ格納部と、
非局所的な素性関数に関する情報である第一素性関数情報、および局所的な素性関数に関する情報である第二素性関数情報を格納し得る素性関数情報格納部と、
原言語文の部分を構成するための原言語部分情報と目的言語文の部分を構成するための目的言語部分情報とを有する２以上の部分対情報を格納し得る部分対情報格納部と、
原言語文を受け付ける受付部と、
前記受付部が受け付けた原言語文と、前記部分対情報格納部に格納されている１以上の部分対情報とを、前記第一素性関数情報で示される非局所的な素性関数に適用し第一ベクトルを取得し、かつ前記受付部が受け付けた原言語文を構成する１以上の用語と、前記部分対情報格納部に格納されている１以上の部分対情報とを、前記第二素性関数情報で示される局所的な素性関数に適用し第二ベクトルを取得するベクトル取得部と、
前記ベクトル取得部が取得した第一ベクトルと前記第一重みベクトルとを用いて非局所的なスコアである非局所的スコアを算出し、前記ベクトル取得部が取得した第二ベクトルと前記第二重みベクトルとを用いて局所的なスコアである局所的スコアを算出し、前記非局所的スコアと前記局所的スコアとを用いて、前記受付部が受け付けた原言語文に対する２以上の目的言語文のスコアを取得するスコア取得部と、
前記スコア取得部が取得したスコアが最も大きい目的言語文を取得する目的言語文取得部と、
前記目的言語文取得部が取得した目的言語文を出力する出力部とを具備する翻訳装置。
【請求項２】
前記パラメータ格納部は、
前記局所的スコアを算出する際に使用されるパラメータであり、重みマトリクスＭ（ｕ×Ｋ次元）とｕ次元のバイアスであるベクトルＢをも格納しており、
前記第一素性関数情報は、
「ｈ（ｆ，ｅ，ｄ）」（ｆ：原言語文，ｅ：目的言語文，ｄ：導出，ｈ：Ｋ次元の素性関数）を示す情報であり、
前記第二素性関数情報は、
「ｈ'（ｒ）」（ｒ：導出ｄに含まれる一要素，ｈ'：Ｋ次元の素性関数）を示す情報であり、
前記スコア取得部は、
前記第一素性関数情報（ｈ（ｆ，ｅ，ｄ））と前記第一重みベクトル（Ｗ）とを用いて、式「ＷＴ・ｈ（ｆ，ｅ，ｄ）」により前記非局所的スコアを算出し、前記第二素性関数情報（Ｗ'）と前記第二重みベクトル「ｈ'（ｒ）」とを用いて、導出ｄの各要素（ｒ）ごとに、式「Ｗ'Ｔ・σ（Ｍ・ｈ'（ｒ）＋Ｂ）」（ただし、σはｕ個の各要素単位のsigmoid関数）により前記局所的スコアを算出し、数式１４により２以上の各目的言語文のスコアを取得する請求項１記載の翻訳装置。
【数１４】
2014235599.tif 000016
【請求項３】
コンピュータがアクセス可能な記録媒体は、
非局所的な素性関数に適用される重みベクトルである第一重みベクトル、および局所的な素性関数に適用される重みベクトルである第二重みベクトルを格納し得るパラメータ格納部と、
非局所的な素性関数に関する情報である第一素性関数情報、および局所的な素性関数に関する情報である第二素性関数情報を格納し得る素性関数情報格納部と、
原言語文の部分を構成するための原言語部分情報と目的言語文の部分を構成するための目的言語部分情報とを有する２以上の部分対情報を格納し得る部分対情報格納部とを有し、コンピュータを、
原言語文を受け付ける受付部と、
前記受付部が受け付けた原言語文と、前記部分対情報格納部に格納されている１以上の部分対情報とを、前記第一素性関数情報で示される非局所的な素性関数に適用し第一ベクトルを取得し、かつ前記受付部が受け付けた原言語文を構成する１以上の用語と、前記部分対情報格納部に格納されている１以上の部分対情報とを、前記第二素性関数情報で示される局所的な素性関数に適用し第二ベクトルを取得するベクトル取得部と、
前記ベクトル取得部が取得した第一ベクトルと前記第一重みベクトルとを用いて非局所的なスコアである非局所的スコアを算出し、前記ベクトル取得部が取得した第二ベクトルと前記第二重みベクトルとを用いて局所的なスコアである局所的スコアを算出し、前記非局所的スコアと前記局所的スコアとを用いて、前記受付部が受け付けた原言語文に対する２以上の目的言語文のスコアを取得するスコア取得部と、
前記スコア取得部が取得したスコアが最も大きい目的言語文を取得する目的言語文取得部と、
前記目的言語文取得部が取得した目的言語文を出力する出力部として機能させるためのプログラム。
【請求項４】
記録媒体は、
非局所的な素性関数に適用される重みベクトルである第一重みベクトル、および局所的な素性関数に適用される重みベクトルである第二重みベクトルを格納し得るパラメータ格納部と、
非局所的な素性関数に関する情報である第一素性関数情報、および局所的な素性関数に関する情報である第二素性関数情報を格納し得る素性関数情報格納部と、
原言語文の部分を構成するための原言語部分情報と目的言語文の部分を構成するための目的言語部分情報とを有する２以上の部分対情報を格納し得る部分対情報格納部とを有し、
受付部、ベクトル取得部、スコア取得部、目的言語文取得部、および出力部により実現される翻訳方法であって、
前記受付部が、原言語文を受け付ける受付ステップと、
前記ベクトル取得部が、前記受付ステップで受け付けられた原言語文と、前記部分対情報格納部に格納されている１以上の部分対情報とを、前記第一素性関数情報で示される非局所的な素性関数に適用し第一ベクトルを取得し、かつ前記受付部が受け付けた原言語文を構成する１以上の用語と、前記部分対情報格納部に格納されている１以上の部分対情報とを、前記第二素性関数情報で示される局所的な素性関数に適用し第二ベクトルを取得するベクトル取得ステップと、
前記スコア取得部が、前記ベクトル取得ステップで取得された第一ベクトルと前記第一重みベクトルとを用いて非局所的なスコアである非局所的スコアを算出し、前記ベクトル取得ステップで取得された第二ベクトルと前記第二重みベクトルとを用いて局所的なスコアである局所的スコアを算出し、前記非局所的スコアと前記局所的スコアとを用いて、前記受付部が受け付けた原言語文に対する２以上の目的言語文のスコアを取得するスコア取得ステップと、
前記目的言語文取得部が、前記スコア取得ステップで取得されたスコアが最も大きい目的言語文を取得する目的言語文取得ステップと、
前記出力部が、前記目的言語文取得ステップで取得された目的言語文を出力する出力ステップとを具備する翻訳方法。
【請求項５】
非局所的な素性関数に適用される重みベクトルである第一重みベクトル（Ｗ）、局所的な素性関数に適用される重みベクトルである第二重みベクトル（Ｗ'）、局所的スコアを算出する際に使用される重みマトリクスＭ（ｕ×Ｋ次元）、およびｕ次元のバイアスであるベクトルＢを格納し得るパラメータ格納部と、
学習のために最大化する目的関数に関する情報である目的関数情報を格納し得る目的関数情報格納部と、
「第二重みベクトル（Ｗ'）＝０」として、前記目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）の初期値である初期第一重みベクトル（Ｗ１）を取得する第一学習部と、
前記第一学習部が取得した初期第一重みベクトル（Ｗ１）を用いて、前記目的関数情報で示される目的関数を最適化するように学習を行い、重みマトリクスＭとベクトルＢとを取得する第二学習部と、
前記第二学習部が取得したＭとＢとを用いて、前記目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）とを取得する第三学習部と、
前記第三学習部が取得した第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）、前記第二学習部が取得した重みマトリクスＭ、およびベクトルＢを、前記パラメータ格納部に蓄積するパラメータ蓄積部とを具備する学習装置。
【請求項６】
コンピュータがアクセス可能な記録媒体は、
非局所的な素性関数に適用される重みベクトルである第一重みベクトル（Ｗ）、局所的な素性関数に適用される重みベクトルである第二重みベクトル（Ｗ'）、局所的スコアを算出する際に使用される重みマトリクスＭ（ｕ×Ｋ次元）、およびｕ次元のバイアスであるベクトルＢを格納し得るパラメータ格納部と、
学習のために最大化する目的関数に関する情報である目的関数情報を格納し得る目的関数情報格納部とを有し、
コンピュータを、
「第二重みベクトル（Ｗ'）＝０」として、前記目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）の初期値である初期第一重みベクトル（Ｗ１）を取得する第一学習部と、
前記第一学習部が取得した初期第一重みベクトル（Ｗ１）を用いて、前記目的関数情報で示される目的関数を最適化するように学習を行い、重みマトリクスＭとベクトルＢとを取得する第二学習部と、
前記第二学習部が取得したＭとＢとを用いて、前記目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）とを取得する第三学習部と、
前記第三学習部が取得した第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）、前記第二学習部が取得した重みマトリクスＭ、およびベクトルＢを、前記パラメータ格納部に蓄積するパラメータ蓄積部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、翻訳装置等に関するものである。
【背景技術】
【０００２】
例えば、統計的機械翻訳等の従来の翻訳装置は、複数の素性を組み合わせた線形モデルにより実現され、その線形モデルのスコアを最大とする翻訳を探索する問題として定式化されている。このようなモデル化では、翻訳装置の向上は、翻訳に貢献する素性を開発する問題として捉えられるが、翻訳の良さを評価する評価関数と翻訳装置で用いられる素性とが線形な関係で表現できるとは限らない。このため、新たに素性を線形モデルに追加したとしても、新たな素性が翻訳装置の向上に貢献するとは限らない。また、より良い素性が開発されたとしても線形モデルの制約により、翻訳装置の向上への貢献は限られたものになる可能性がある。
【０００３】
そこで、従来、統計的機械翻訳において、線形モデルにとらわれない、非線形なモデルが提案されている（非特許文献１〜５参照）。非特許文献１、２では、ブースティングアルゴリズムにより、非線形な翻訳モデルを実現しており、翻訳装置から出力された複数の翻訳候補のリランキングで用いられている。
【０００４】
また、非特許文献３では、ニューラルネットワークをトランスデューサとして表現された翻訳モデルへと導入した。
【０００５】
非特許文献４、５では、フレーズペアやルールペアなどの翻訳知識の基本単位でニューラルネットワークによるモデル化をしており、リランキングやフレーズペア単位の素性として導入されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Kevin Duh and Katrin Kirchhoff. 2008. Beyond log-linear models: Boosted minimum error rate training for n-best re-ranking. In Proceedings of ACL-08: HLT, Short Papers, pages 37-40, Columbus, Ohio, June. Association for Computational Linguistics.
【非特許文献２】A. Sokolov, G. Wisniewski, and F. Yvon. 2012. Non-linear n-best list reranking with few features. In AMTA, San Diego, USA.
【非特許文献３】M. Asuncion Castano, Francisco Casacuberta, and Enrique Vidal. 1997. Machine translation using neural networks and finite-state models. In TMI, pages 160-167.
【非特許文献４】Le Hai Son, Alexandre Allauzen, and Francois Yvon. 2012. Continuous space translation models with neural networks. In Proceedings of the 2012 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, NAACL HLT '12, pages 39-48, Stroudsburg, PA, USA. Association for Computational Linguistics.
【非特許文献５】Holger Schwenk. 2012. Continuous space translation models for phrase-based statistical machine translation. In Proceedings of the 24th International Conference on Computational Linguistics, COLING '12, Mumbai, India. Association for Computational Linguistics.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の翻訳装置においては、非線形に素性を結合するニューラルネットワークを利用した場合、探索中に、翻訳候補のスコアを再計算する必要があり、負荷が大きかった。
【０００８】
さらに、非特許文献１、２、４などの非線形モデルでは、既存の翻訳装置から出力される複数の翻訳候補から正しい翻訳を選択する、といったリランキングモデルとして実現されている。このようなリランキングモデルでは、正しい翻訳がその翻訳候補の中に含まれるとは限らないため、リランキングモデルを使用することの効果は限定的である。
【０００９】
また、非特許文献３のように、機械翻訳装置自体に非線形モデルを適用する手法が提案されているが、非特許文献３では、有限状態重み付きトランスデューサとして実現されており、並び替えを考慮せず、英語とフランス語など比較的近い言語対のみにしか適用できない。
【００１０】
非特許文献３、５では、各フレーズペアやルールペア単位で非線形モデルが構築されており、そのフレーズペアやルールを組み合わせて生成される文単位の翻訳に関して最適化をすることができない。特に、ngram言語モデルなど、フレーズペアやルールペアに関して、局所的に計算することが不可能な素性を組み合わせた場合、非特許文献３、５では、最適化が不可能であった。
【００１１】
さらに、図９で示されるルールを用いて、従来技術の問題点を、具体的に説明する。図９におけるルールｒ１は「Ｘ→＜友好  合作；friendly cooperation＞」、ルールｒ２は「Ｘ→＜多年来  的  Ｘ；Ｘ over the last year＞」である。
【００１２】
かかるルールから構成される部分翻訳の例において、各ルールの素性ベクトルが、以下の数式１である、と仮定する。数式１において、ｈ（）は素性関数である。
【数１】
2014235599.tif 000003
【００１３】
この場合、この部分翻訳の素性ベクトルは、以下の数式２となる。
【数２】
2014235599.tif 000004
【００１４】
部分翻訳のスコアに、以下の数式３の線形モデルを使用し、重みベクトルＷを数式４と仮定する、とする。なお、数式３において、ｆは原言語文、ｅは目的言語文、ｄは導出である。また、ｄは、２以上の部分対情報を含む。部分対情報とは、原言語文の部分を構成するための原言語部分情報と、目的言語文の部分を構成するための目的言語部分情報とを有する情報である。部分対情報は、例えば、フレーズペア、ルールペア、単語対等である。また、数式３、数式４において、Ｗは重みベクトルである。また、ｅ＾（＾はｅの真上に存在するものとする）は目的言語文、ｄ＾（＾はｄの真上に存在するものとする）は目的言語文を構成する部分対情報（例えば、フレーズペア、ルールペア等）である。
【数３】
2014235599.tif 000005
【数４】
2014235599.tif 000006
【００１５】
かかる場合、この部分翻訳（ｆ，ｅ，ｄ）のスコアは、「０．３×１．３＋０．５×０．２１＋０．１×（−０．６）＝０．４３５」となる。
【００１６】
そして、線形モデルの場合、動的計画法によりこの計算をフレーズペア単位、あるいはルールペア単位に計算して合計を求めることができ、例えば、数式５のように計算可能である。
【数５】
2014235599.tif 000007
【００１７】
また、非線形モデルの場合、例えば、以下の数式６のような一段階のニューラルネットワークを仮定する。数式６において、Ｍは重みマトリクス、Ｂはｕ次元のバイアスであるベクトルである。なお、重みマトリクスＭは、ｕ×Ｋ次元である。また、数式６において、Ｍ，Ｂを以下の数式７に示す。また、σは各要素単位のsigmoid関数とする（数式８参照）。
【数６】
2014235599.tif 000008
【数７】
2014235599.tif 000009
【数８】
2014235599.tif 000010
【００１８】
この時、部分翻訳のスコアは、以下の数式９のようになる。
【数９】
2014235599.tif 000011
【００１９】
もし、線形モデル同様、フレーズペアあるいはルールペア単位に計算した場合、そのスコアをＳという関数で表現すると、以下の数式１０のようになる。
【数１０】
2014235599.tif 000012
【００２０】
このように、各要素単位に計算し、その計により部分翻訳のスコアを求めると、０．９５７となり、丸め誤差を考慮しても０．５２２と大幅に異なる。このため、非線形なモデルでは、動的計画法に基づく探索手法を直接用いることができない。
【００２１】
本発明は、かかる点に鑑み、非局所的な素性関数に関して線形モデルを導入し、局所的な素性関数に関して非線形モデルを導入することにより、翻訳候補のスコアを効率良く計算できる翻訳装置を提供することを目的とする。
【課題を解決するための手段】
【００２２】
本第一の発明の翻訳装置は、非局所的な素性関数に適用される重みベクトルである第一重みベクトル、および局所的な素性関数に適用される重みベクトルである第二重みベクトルを格納し得るパラメータ格納部と、非局所的な素性関数に関する情報である第一素性関数情報、および局所的な素性関数に関する情報である第二素性関数情報を格納し得る素性関数情報格納部と、原言語文の部分を構成するための原言語部分情報と目的言語文の部分を構成するための目的言語部分情報とを有する２以上の部分対情報を格納し得る部分対情報格納部と、原言語文を受け付ける受付部と、受付部が受け付けた原言語文と、部分対情報格納部に格納されている１以上の部分対情報とを、第一素性関数情報で示される非局所的な素性関数に適用し第一ベクトルを取得し、かつ受付部が受け付けた原言語文を構成する１以上の用語と、部分対情報格納部に格納されている１以上の部分対情報とを、第二素性関数情報で示される局所的な素性関数に適用し第二ベクトルを取得するベクトル取得部と、ベクトル取得部が取得した第一ベクトルと第一重みベクトルとを用いて非局所的なスコアである非局所的スコアを算出し、ベクトル取得部が取得した第二ベクトルと第二重みベクトルとを用いて局所的なスコアである局所的スコアを算出し、非局所的スコアと局所的スコアとを用いて、受付部が受け付けた原言語文に対する２以上の目的言語文のスコアを取得するスコア取得部と、スコア取得部が取得したスコアが最も大きい目的言語文を取得する目的言語文取得部と、目的言語文取得部が取得した目的言語文を出力する出力部とを具備する翻訳装置である。
【００２３】
かかる構成により、機械翻訳において、翻訳候補のスコアを効率良く計算できる。
【００２４】
また、本第二の発明の翻訳装置は、第一の発明に対して、パラメータ格納部は、局所的スコアを算出する際に使用されるパラメータであり、重みマトリクスＭ（ｕ×Ｋ次元）とｕ次元のバイアスであるベクトルＢをも格納しており、第一素性関数情報は、「ｈ（ｆ，ｅ，ｄ）」（ｆ：原言語文，ｅ：目的言語文，ｄ：導出，ｈ：Ｋ次元の素性関数）を示す情報であり、第二素性関数情報は、「ｈ'（ｒ）」（ｒ：導出ｄに含まれる一要素，ｈ'：Ｋ次元の素性関数）を示す情報であり、スコア取得部は、第一素性関数情報（ｈ（ｆ，ｅ，ｄ））と第一重みベクトル（Ｗ）とを用いて、式「ＷＴ・ｈ（ｆ，ｅ，ｄ）」により非局所的スコアを算出し、第二素性関数情報（Ｗ'）と第二重みベクトル「ｈ'（ｒ）」とを用いて、導出ｄの各要素（ｒ）ごとに、式「Ｗ'Ｔ・σ（Ｍ・ｈ'（ｒ）＋Ｂ」（ただし、σはｕ個の各要素単位のsigmoid関数）により局所的スコアを算出し、数式１１により２以上の各目的言語文のスコアを取得する翻訳装置である。
【数１１】
2014235599.tif 000013
【００２５】
かかる構成により、機械翻訳において、翻訳候補のスコアを効率良く計算できる。さらに具体的には、かかる構成により、フレーズペアあるいはルールペア等の単位に非線形モデルを導入し、かつ非線形モデルはフレーズペアあるいはルールペアに閉じた素性に限定することですることにより、線形モデルと同様に高速な探索を実現できる。
【００２６】
また、本第三の発明の学習装置は、非局所的な素性関数に適用される重みベクトルである第一重みベクトル（Ｗ）、局所的な素性関数に適用される重みベクトルである第二重みベクトル（Ｗ'）、局所的スコアを算出する際に使用される重みマトリクスＭ（ｕ×Ｋ次元）、およびｕ次元のバイアスであるベクトルＢを格納し得るパラメータ格納部と、学習のために最大化する目的関数に関する情報である目的関数情報を格納し得る目的関数情報格納部と、「第二重みベクトル（Ｗ'）＝０」として、目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）の初期値である初期第一重みベクトル（Ｗ１）を取得する第一学習部と、第一学習部が取得した初期第一重みベクトル（Ｗ１）を用いて、目的関数情報で示される目的関数を最適化するように学習を行い、重みマトリクスＭとベクトルＢとを取得する第二学習部と、第二学習部が取得したＭとＢとを用いて、目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）とを取得する第三学習部と、第三学習部が取得した第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）、第二学習部が取得した重みマトリクスＭ、およびベクトルＢを、パラメータ格納部に蓄積するパラメータ蓄積部とを具備する学習装置である。
【００２７】
かかる構成により、機械翻訳において、翻訳候補のスコアを効率良く計算するために使用するパラメータを学習できる。
【発明の効果】
【００２８】
本発明による翻訳装置によれば、機械翻訳において、翻訳候補のスコアを効率良く計算できる。
【図面の簡単な説明】
【００２９】
【図１】本発明の実施の形態１における翻訳装置１のブロック図
【図２】本発明の実施の形態１における翻訳装置１の動作について説明するフローチャート
【図３】本発明の実施の形態１における実験結果を示す図
【図４】本発明の実施の形態１における実験結果を示す図
【図５】本発明の実施の形態２における学習装置２のブロック図
【図６】本発明の実施の形態２における学習装置２の動作について説明するフローチャート
【図７】本発明の上記実施の形態におけるコンピュータシステムの概観図
【図８】本発明の上記実施の形態におけるコンピュータシステムのブロック図
【図９】従来技術の問題点を具体的に説明するための図
【発明を実施するための形態】
【００３０】
以下、本発明の翻訳装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
【００３１】
（実施の形態１）
本実施の形態において、非局所的な素性関数に関して線形モデルを導入し、局所的な素性関数に関して非線形モデルを導入することにより、目的言語文を取得する翻訳装置１について、図１を参照しつつ説明する。なお、翻訳装置１は、通常、統計的機械翻訳を行う装置である。また、翻訳装置１は、フレーズベースの統計的機械翻訳を行う装置でも良いし、他の統計的機械翻訳を行う装置でも良い。
【００３２】
図１は、本実施の形態における翻訳装置１のブロック図である。翻訳装置１は、パラメータ格納部１１、素性関数情報格納部１２、部分対情報格納部１３、受付部１４、ベクトル取得部１５、スコア取得部１６、目的言語文取得部１７、および出力部１８を備える。
【００３３】
パラメータ格納部１１は、パラメータを格納し得る。パラメータは、例えば、第一重みベクトル（以下、「Ｗ」とも記載する。）と第二重みベクトル（以下、「Ｗ'」とも記載する。）である。第一重みベクトル（Ｗ）は、非局所的な素性関数に適用される重みベクトルである。また、第二重みベクトル（Ｗ' ）は、局所的な素性関数に適用される重みベクトルである。
【００３４】
また、パラメータには、例えば、重みマトリクス（以下、「Ｍ」とも記載する。）、ｕ次元のバイアスであるベクトル（以下、「Ｂ」とも記載する。）をも含まれることは好適である。なお、重みマトリクスＭは、ｕ×Ｋ次元である。また、ｕはニューラルネットワークの出力の数であり、Ｗ'の次元数である。さらに、Ｋはニューラルネットの入力である素性の数である。
【００３５】
素性関数情報格納部１２は、第一素性関数情報、および第二素性関数情報を格納し得る。第一素性関数情報は、非局所的な素性関数に関する情報であり、例えば、「ｈ（ｆ，ｅ，ｄ）」を示す情報である。ここで、「ｈ（ｆ，ｅ，ｄ）」は、Ｋ次元からなる素性関数であり、ｆは原言語文、ｅは目的言語文、ｄは導出である。ｄは、２以上の部分対情報を含む。部分対情報は、例えば、フレーズペア、ルールペア等である。また、第二素性関数情報は、局所的な素性関数に関する情報であり、例えば、「ｈ'（ｒ）」（ｒ：導出ｄに含まれる一要素，ｈ'：Ｋ次元の素性関数）を示す情報である。
【００３６】
部分対情報格納部１３は、１または２以上の部分対情報を格納し得る。ここで、部分対情報とは、上述したように、原言語文の部分を構成する原言語部分情報と、目的言語文の部分を構成する目的言語部分情報とを有する情報であり、例えば、フレーズペア、ルールペア、単語対等である。
【００３７】
受付部１４は、原言語文を受け付ける。ここで、受け付けとは、キーボードやマウス、タッチパネルなどの入力デバイスから入力された情報の受け付け、有線もしくは無線の通信回線を介して送信された情報の受信、光ディスクや磁気ディスク、半導体メモリなどの記録媒体から読み出された情報の受け付けなどを含む概念である。原言語文の入力手段は、キーボードやマウスやメニュー画面によるもの等、何でも良い。
【００３８】
ベクトル取得部１５は、受付部１４が受け付けた原言語文と、部分対情報格納部１３に格納されている１以上の部分対情報とを用いて、第一ベクトルと第二ベクトルを取得する。さらに具体的には、ベクトル取得部１５は、原言語文と１以上の部分対情報とを第一素性関数情報で示される非局所的な素性関数に適用し第一ベクトルを取得する。また、ベクトル取得部１５は、原言語文を構成する１以上の用語と１以上の部分対情報とを、第二素性関数情報で示される局所的な素性関数に適用し第二ベクトルを取得する。なお、非局所的な素性は、例えば、ngram言語モデル、依存構造言語モデル、句構造言語モデル、統語論的言語モデルなどである。また、局所的な素性は、例えば、word embedding素性、フレーズペアまたはルールペアの数、単語数、生成確率、原言語側条件付き確率、目的言語側条件付き確率、原言語側語彙確率、目的言語側語彙確率などである。
【００３９】
スコア取得部１６は、ベクトル取得部１５が取得した第一ベクトルと第一重みベクトルとを用いて非局所的なスコアである非局所的スコアを算出する。具体的には、例えば、このスコア取得部１６は、第一素性関数情報（ｈ（ｆ，ｅ，ｄ））と第一重みベクトル（Ｗ）とを用いて、式「ＷＴ・ｈ（ｆ，ｅ，ｄ）」により非局所的スコアを算出する。
【００４０】
また、スコア取得部１６は、非線形モデルにより局所的スコアを算出する。具体的には、ベクトル取得部１５が取得した第二ベクトルと第二重みベクトルとを用いて局所的なスコアである局所的スコアを算出する。具体的には、例えば、スコア取得部１６は、第二素性関数情報（Ｗ'）と第二重みベクトル「ｈ'（ｒ）」とを用いて、導出ｄの要素（ｒ）ごとに、式「Ｗ'Ｔ・σ（Ｍ・ｈ'（ｒ）＋Ｂ」（ただし、σはｕ個の各要素単位のsigmoid関数）により局所的スコアを算出する。
【００４１】
さらに、スコア取得部１６は、非局所的スコアと局所的スコアとを用いて、受付部１４が受け付けた原言語文に対する２以上の目的言語文のスコアを取得する。具体的には、例えば、スコア取得部１６は、数式１１により２以上の各目的言語文のスコアを取得する。  なお、スコア取得部１６は、数式１１をどのように用いても良い。
【００４２】
目的言語文取得部１７は、スコア取得部１６が取得したスコアが最も大きい目的言語文を取得する。
【００４３】
出力部１８は、目的言語文取得部１７が取得した目的言語文を出力する。ここで、出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタでの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラムなどへの処理結果の引渡しなどを含む概念である。
【００４４】
以上より、翻訳装置１は、以下の数式１２を満たす目的言語文を取得し、出力する装置である、と言える。また、数式１２におけるモデルを、ＡｄｄＮＮモデル（加法型ニューラルネットワークモデル）と言うこととする。
【数１２】
2014235599.tif 000014
【００４５】
なお、数式１２において、ｅ＾（＾はｅの真上に存在するものとする）は目的言語文、ｄ＾（＾はｄの真上に存在するものとする）は目的言語文を構成する部分対情報（例えば、フレーズペア、ルールペア等）である。また、ｈ'（）では、各フレーズペアあるいはルールペア等の部分対情報の単位に閉じて計算される素性を仮定する。また、ｈ（）は、ngram言語モデルなど、複数のフレーズまたはルールペア等の複数の部分対情報にもとづいて計算される素性を線形に組み合わせる。
【００４６】
つまり、翻訳装置１は、フレーズペアまたはルールペア等の部分対情報の単位に非線形モデルを導入し、かつ非線形モデルはフレーズペアまたはルールペア等の部分対情報に閉じた素性に限定することで線形モデルと同様に高速な探索を実現している。
【００４７】
パラメータ格納部１１、素性関数情報格納部１２、部分対情報格納部１３は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００４８】
パラメータ格納部１１等にパラメータ等が記憶される過程は問わない。例えば、記録媒体を介してパラメータ等がパラメータ格納部１１等で記憶されるようになってもよく、通信回線等を介して送信されたパラメータ等がパラメータ格納部１１等で記憶されるようになってもよく、あるいは、入力デバイスを介して入力されたパラメータ等がパラメータ格納部１１等で記憶されるようになってもよい。
【００４９】
受付部１４は、キーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
【００５０】
ベクトル取得部１５、スコア取得部１６、および目的言語文取得部１７は、通常、ＭＰＵやメモリ等から実現され得る。ベクトル取得部１５の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００５１】
出力部１８は、ディスプレイやスピーカー等の出力デバイスを含むと考えても含まないと考えても良い。出力部１８は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
【００５２】
次に、翻訳装置１の動作の一例について、図２のフローチャートを用いて説明する。
【００５３】
（ステップＳ２０１）受付部１４は、原言語文ｆを受け付けたか否かを判断する。原言語文ｆを受け付ければステップＳ２０２に行き、原言語文ｆを受け付けなければステップＳ２０１に戻る。
【００５４】
（ステップＳ２０２）ベクトル取得部１５は、初期処理を行う。初期処理は、例えば、パラメータ格納部１１から第一重みベクトル（Ｗ）、第二重みベクトル（Ｗ'）、重みマトリクス（Ｍ）、およびベクトル（Ｂ）を読み出すこと、および素性関数情報格納部１２から第一素性関数情報と第二素性関数情報とを読み出すことである。
【００５５】
（ステップＳ２０３）ベクトル取得部１５は、カウンタｉに１を代入する。
【００５６】
（ステップＳ２０４）ベクトル取得部１５は、原言語文ｆからｉ番目の要素の候補が存在するか否かを判断する。ｉ番目の要素の候補が存在すればステップＳ２０５に行き、ｉ番目の要素の候補が存在しなければステップＳ２１２に行く。なお、原言語文ｆの要素の候補とは、原言語文の部分を構成するための原言語部分情報（例えば、原言語文ｆを構成するフレーズ）である。
【００５７】
（ステップＳ２０５）ベクトル取得部１５は、原言語文ｆにおけるｉ番目の要素の候補に対応する目的言語文ｅの候補における１以上の要素の候補を、部分対情報格納部１３から取得する。目的言語文ｅの候補における１以上の要素の候補は、目的言語部分情報である。
【００５８】
（ステップＳ２０６）ベクトル取得部１５は、ステップＳ２０５で取得した１以上の各要素の候補を含む目的言語文の非局所的な素性を１以上、取得する。
【００５９】
（ステップＳ２０７）ベクトル取得部１５は、ステップＳ２０６で取得した１以上の素性を第一素性関数情報に適用し、第一ベクトルを取得する。
【００６０】
（ステップＳ２０８）ベクトル取得部１５は、ステップＳ２０５で取得した１以上の各要素の候補における局所的な素性を１以上、取得する。
【００６１】
（ステップＳ２０９）ベクトル取得部１５は、ステップＳ２０８で取得した１以上の素性を第二素性関数情報に適用し、第二ベクトルを取得する。
【００６２】
（ステップＳ２１０）スコア取得部１６は、第一ベクトルと第一重みベクトルとを用いて非局所的なスコアである非局所的スコアを算出する。また、スコア取得部１６は、第二ベクトルと第二重みベクトルとを用いて局所的なスコアである局所的スコアを算出する。さらに、スコア取得部１６は、非局所的スコアと局所的スコアを用いて、スコアを算出する。なお、このスコア取得部１６で行われるスコア算出は、例えば、数式１１を用いて行われる。
【００６３】
（ステップＳ２１１）スコア取得部１６は、カウンタｉを１、インクリメントし、ステップＳ２０４に戻る。
【００６４】
（ステップＳ２１２）目的言語文取得部１７は、１または２以上の目的言語文ｅの候補の中で、スコア取得部１６が取得したスコアが最も大きい目的言語文を取得する。
【００６５】
（ステップＳ２１３）出力部１８は、ステップＳ２１２で取得された目的言語文ｅを出力し、ステップＳ２０１に戻る。
【００６６】
なお、図２のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
（実験）
【００６７】
以下、本実施の形態における翻訳装置１の実験結果について説明する。本実験では、中国語から英語への中英翻訳（Chinese-to-English）、および日本語から英語への日英翻訳（Japanese-to-English）を用いて行った。また、実験結果を図３、および図４に示す。また、図３、図４は、後述するように、中英翻訳および日英翻訳における、モデルごとの翻訳の性能の評価を示す実験結果である。
【００６８】
中英翻訳（図３、図４のChinese-to-English）において、トレーニングデータは、２４０Ｋの翻訳文の対を有するＦＢＩＳコーパス（新しいドメイン）を用いた。また、デベロップメントセットは、ＮＩＳＴ０２評価データを用いた。デベロップメントテストデータは、ＮＩＳＴ０５である。また、テストデータセットは、ＮＩＳＴ０６とＮＩＳＴ０８とを用いた。なお、ＮＩＳＴ０２、０５、０６、０８評価データとは、それぞれ８７８文、１０８２文、１６６４文、１３５７文から構成され、新聞記事やブログなど、様々なトピックの記事から選択されたものであり、各文に対し英語の参照訳が４つ付与されているデータである。
【００６９】
日英翻訳（図３、図４のJapanese-to-English）において、トレーニングデータは、３００Ｋの翻訳文の対を用いた。この翻訳文の対は、ＮＴＣＩＲ特許タスク（「Atsushi Fujii, Masao Utiyama, Mikio Yamamoto, and Takehito Utsuro. 2010. Overview of the patent translation task at the ntcir-8 workshop. In In Proceedings of the 8th NTCIR Workshop Meeting on Evaluation of Information Access Technologies:Information Retrieval, Question Answering and Cross-lingual Information Access, pages 293-302.」参照）から取得されたものである。また、デベロップメントセット、デベロップメントテストデータ、および２つのテストデータセットは、平均４０００の文から抽出した。これらの４つのデータセットをｔｅｓｔ１、ｔｅｓｔ２、ｔｅｓｔ３、ｔｅｓｔ４とする。なお、図３、図４では、ｔｅｓｔ２、ｔｅｓｔ３、ｔｅｓｔ４について示している。
【００７０】
本実験において、各文のペアにおける単語アライメントを取得するために、トレーニングコーパス上で、ＧＩＺＡ＋＋（「Franz Josef Och and Hermann Ney. 2000. Improved statistical alignment models. In Proceedings of the 38th Annual Meeting on Association for Computational Linguistics, ACL '00, pages 440-447,Stroudsburg, PA, USA. Association for Computational Linguistics.」参照）を双方向で実行した。
【００７１】
また、Kneser-Ney スムージングを修正するためにＳＲＩＬＭツールキット（「Andreas Stolcke. 2002. Srilm - an extensible language modeling toolkit. In Proc. of ICSLP.」参照）を用いた。そして、中英翻訳（English Gigaword コーパス上の Xinhua 部分）のために、４−ｇｒａｍ言語モデルを学習した。また、トレーニングデータのターゲット側における日英翻訳のために、４−ｇｒａｍ言語モデルを学習した。
【００７２】
本実験において、翻訳の性能の評価に、大文字と小文字を区別するBLEU４のメトリクス４（「Kishore Papineni, Salim Roukos, ToddWard, andWei-Jing Zhu. 2002. Bleu: a method for automatic evaluation of machine translation. In Proceedings of 40th Annual Meeting of the Association for Computational Linguistics, pages 311-318, Philadelphia,Pennsylvania, USA, July. Association for Computational Linguistics.」参照）を用いた。また、有意性検定は、一対のブートストラップリサンプリング（「Philipp Koehn. 2004b. Statistical significance tests for machine translation evaluation. In Proc. of EMNLP.ACL.」参照）によって行った。
【００７３】
また、我々は、内製した階層型フレーズベース翻訳システム（「David Chiang. 2005. A hierarchical phrase-based model for statistical machine translation. In Proceedings of the 43rd Annual Meeting on Association for Computational Linguistics, ACL '05, pages 263-270, Stroudsburg, PA, USA. Association for Computational Linguistics.」参照）をベースラインシステムとして用いた。このシステムは、「ビームサイズ＝１００」「ｋｂｅｓｔサイズ＝１００」等、Ｈｉｅｒｏ（「David Chiang. 2005. A hierarchical phrase-based model for statistical machine translation. In Proceedings of the 43rd Annual Meeting on Association for Computational Linguistics, ACL '05, pages 263-270, Stroudsburg, PA, USA. Association for Computational Linguistics.」参照）と同様の設定であり、対数線形モデルを強調するために、Ｌ−Ｈｉｅｒｏ（図３、図４参照）と言うこととする。また、本実験において、Ｌ−Ｈｉｅｒｏを、Ｍｏｓｅｓのツールキットを用いて実装されているＭＥＲＴとＰＲＯの２つの方法（図３参照）によりチューニングした。
【００７４】
また、本実験において、Ｌ−Ｈｉｅｒｏにおけるデフォルトの特徴量を有する対数線形モデルに、word embedding特徴量を統合した。これをＬ−Ｈｉｅｒｏ−Ｅ（図３参照）と言うこととする。Ｌ−Ｈｉｅｒｏ−Ｅを、Ｍｏｓｅｓのツールキットを用いて実装されているＰＲＯ（図３参照）によりチューニングした。
【００７５】
また、翻訳装置１は上述したＡｄｄＮＮモデルの実装であり、本実験では、Ｌ−Ｈｉｅｒｏと同じコードベースと設定を有し、ＡｄＮＮ−Ｈｉｅｒｏ−Ｅ（図３、図４参照）と言うこととする。
【００７６】
かかる場合の実験結果を図３に示す。図３において、「＋」は、ブートストラップ法で、ＡｄＮＮ−Ｈｉｅｒｏ−Ｅとの比較において、「ｐ＜０．０５」の確率で有意差があることを示す。
【００７７】
また、ＡｄＮＮ−Ｈｉｅｒｏ−Ｄをも用いて、実験を行った。ＡｄＮＮ−Ｈｉｅｒｏ−Ｄは、素性関数ｈのうち、非局所的なものをそのままｈ'として使用したものである。非局所的なものとは、例えば、フレーズペアやルールペアの数、単語数、生成確率、原言語側条件付き確率、目的言語側条件付き確率、原言語側語彙確率、目的言語側語彙確率などである。
【００７８】
また、Ｌ−Ｈｉｅｒｏ、ＡｄＮＮ−Ｈｉｅｒｏ−Ｅ、およびＡｄＮＮ−Ｈｉｅｒｏ−Ｄを比較した実験結果を図４に示す。図４において、「＋」は、ブートストラップ法で、ＡｄＮＮ−Ｈｉｅｒｏ−Ｄとの比較において、「ｐ＜０．０５」の確率で有意差があることを示す。
【００７９】
以上、本実施の形態によれば、機械翻訳において、翻訳候補のスコアを効率良く計算できる。
【００８０】
さらに具体的には、本実施の形態によれば、フレーズペアあるいはルールペア等の単位に非線形モデルを導入し、かつ非線形モデルはフレーズペアあるいはルールペアに閉じた素性に限定することですることで線形モデルと同様に高速な探索を実現できる。
【００８１】
なお、本実施の形態において、翻訳装置１が行う翻訳方法、翻訳アルゴリズムは問わない。また、翻訳装置１が行う翻訳対象の原言語、および目的言語は問わない。
【００８２】
また、本実施の形態の翻訳装置１において、従来の統計的機械翻訳システムの各フレーズペアあるいはルールペアに対して、ｕ次元の素性を追加するとみなすことができ、容易に拡張可能である。また、翻訳装置１において、任意の素性を導入可能であり、またその素性が線形モデルを前提とした素性でなくても、組み合わせることが可能となり、よりよい翻訳を生成する可能性が大きくなる。つまり、ＡｄｄＮＮモデルは、「Ｗ'＝０」の時、線形モデルへと還元され、従来の線形モデルに基づく機械翻訳システムと全く同じとなる。従って、ＡｄｄＮＮモデルは、従来のシステムに対して非線形のモデルを追加するだけで実現される。また、ＡｄｄＮＮモデルにおいて、ＭおよびＢをある一定の固定値とすると、非線形モデルの要素は、ｕ次元の素性関数としてみなすことができ、全体として、（Ｗ，Ｗ'）を重みベクトルとした線形モデルとしてみなすことができる。これは、フレーズペアあるいはルールペア等の単位の素性関数の次元をｕ増加させることに相当し、このため、従来の線形モデルに基づく機械翻訳システムを容易に拡張可能である。ＡｄｄＮＮモデルにおいて、フレーズペアあるいはルールペア等の単位ではあるは、非線形なモデルのため、任意の素性を導入可能であり、例えば、word embedding素性など各単語を複数次元の特徴量として表現した素性を容易に導入可能である。
【００８３】
この加法型ニューラルネットワークは、文単位に定義され、文全体の線形モデルおよび要素単位の非線形モデルを線形に結合している。このため、パラメータの推定時には、文全体の損失関数を導入し、かつ直接そのエラーをフレーズペアあるいはルールペア等の要素単位のパラメータへと伝搬させることにより、よりよいパラメータを推定可能となる。
【００８４】
また、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における翻訳装置１を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータがアクセス可能な記録媒体は、非局所的な素性関数に適用される重みベクトルである第一重みベクトル、および局所的な素性関数に適用される重みベクトルである第二重みベクトルを格納し得るパラメータ格納部と、非局所的な素性関数に関する情報である第一素性関数情報、および局所的な素性関数に関する情報である第二素性関数情報を格納し得る素性関数情報格納部と、原言語文の部分を構成するための原言語部分情報と目的言語文の部分を構成するための目的言語部分情報とを有する２以上の部分対情報を格納し得る部分対情報格納部とを有し、コンピュータを、原言語文を受け付ける受付部と、前記受付部が受け付けた原言語文と、前記部分対情報格納部に格納されている１以上の部分対情報とを、前記第一素性関数情報で示される非局所的な素性関数に適用し第一ベクトルを取得し、かつ前記受付部が受け付けた原言語文を構成する１以上の用語と、前記部分対情報格納部に格納されている１以上の部分対情報とを、前記第二素性関数情報で示される局所的な素性関数に適用し第二ベクトルを取得するベクトル取得部と、前記ベクトル取得部が取得した第一ベクトルと前記第一重みベクトルとを用いて非局所的なスコアである非局所的スコアを算出し、前記ベクトル取得部が取得した第二ベクトルと前記第二重みベクトルとを用いて局所的なスコアである局所的スコアを算出し、前記非局所的スコアと前記局所的スコアとを用いて、前記受付部が受け付けた原言語文に対する２以上の目的言語文のスコアを取得するスコア取得部と、前記スコア取得部が取得したスコアが最も大きい目的言語文を取得する目的言語文取得部と、前記目的言語文取得部が取得した目的言語文を出力する出力部として機能させるためのプログラムである。
【００８５】
また、上記プログラムにおいて、前記パラメータ格納部は、前記局所的スコアを算出する際に使用されるパラメータであり、重みマトリクスＭ（ｕ×Ｋ次元）とｕ次元のバイアスであるベクトルＢをも格納しており、前記第一素性関数情報は、「ｈ（ｆ，ｅ，ｄ）」（ｆ：原言語文，ｅ：目的言語文，ｄ：導出，ｈ：Ｋ次元の素性関数）を示す情報であり、前記第二素性関数情報は、「ｈ'（ｒ）」（ｒ：導出ｄに含まれる一要素，ｈ'：Ｋ次元の素性関数）を示す情報であり、前記スコア取得部は、前記第一素性関数情報（ｈ（ｆ，ｅ，ｄ））と前記第一重みベクトル（Ｗ）とを用いて、式「ＷＴ・ｈ（ｆ，ｅ，ｄ）」により前記非局所的スコアを算出し、前記第二素性関数情報（Ｗ'）と前記第二重みベクトル「ｈ'（ｒ）」とを用いて、導出ｄの各要素（ｒ）ごとに、式「Ｗ'Ｔ・σ（Ｍ・ｈ'（ｒ）＋Ｂ」（ただし、σはｕ個の各要素単位のsigmoid関数）により前記局所的スコアを算出し、数式１１により２以上の各目的言語文のスコアを取得するものとして、コンピュータを機能させることは好適である。
【００８６】
（実施の形態２）
本実施の形態において、翻訳装置１で使用するパラメータを学習する学習装置２について説明する。
【００８７】
図５は、本実施の形態における学習装置２のブロック図である。学習装置２は、パラメータ格納部１１、対訳コーパス格納部２１、目的関数情報格納部２２、第一学習部２３、第二学習部２４、第三学習部２５、パラメータ蓄積部２６を備える。
【００８８】
パラメータ格納部１１は、上述した通り、第一重みベクトル（Ｗ）、第二重みベクトル（Ｗ'）、重みマトリクスＭ（ｕ×Ｋ次元）、およびベクトルＢ（ｕ次元）を格納し得る。
【００８９】
対訳コーパス格納部２１は、対訳コーパスを格納し得る。対訳コーパスは、２以上の原言語文（ｆ）と目的言語文（ｅ）との組である。原言語文の訳が、当該原言語文と組になる目的言語文である。
【００９０】
目的関数情報格納部２２は、学習のために最大化する目的関数に関する情報である目的関数情報を格納し得る。目的関数は、線形モデルにおける学習に用いられる関数であり、種々あり得る。目的関数は、例えば、数式１３である。また、数式１３の目的関数は、数千のパラメータを有し、統計的機械翻訳におけるチューニングでは、当該目的関数を最小化するパラメータ群を決定する。
【数１３】
2014235599.tif 000015
【００９１】
数式１３において、ｆは、与えられたデベロップメントセット（対訳コーパスと同意義である。）の中の原言語文、＜＜ｅ＊，ｄ＊＞＜ｅ'，ｄ'＞＞は、ｆをデコードして得られるｋ?bestリストからランダムにサンプルされた翻訳候補のペアであり、＜ｅ＊，ｄ＊＞のBLEUスコアは、＜ｅ'，ｄ'＞よりも高いとする。Ｎはこのようなペアの数であり、λは０より大きいハイパーパラメータとする。また、θは学習されるパラメータ群である。また、関数δはヒンジ損失関数であり、BLEUスコアの低い翻訳候補のスコアＳ（ｆ，ｅ'，ｄ'；θ）が、BLEUスコアの高い翻訳候補のスコアＳ（ｆ，ｅ＊，ｄ＊；θ）よりも高い場合、そのスコアの差をそのまま損失の量として用いる。
【００９２】
第一学習部２３は、「第二重みベクトル（Ｗ'）＝０」として、目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）の初期値である初期第一重みベクトル（Ｗ１）を取得する。かかる学習処理を第一の学習処理と言うこととする。第一学習部２３が行う学習方法は種々あるが、例えば、ＭＥＲＴ、ＭＩＲＡ、ＰＲＯ等の公知技術により実現できる。なお、ＭＥＲＴは、「Franz Josef Och. 2003. Minimum error rate training in statistical machine translation. In Proceedings of the 41st Annual Meeting of the Association for Computational Linguistics, pages 160-167, Sapporo,Japan, July. Association for Computational Linguistics.」参照のこと。また、ＭＩＲＡは「Taro Watanabe, Jun Suzuki, Hajime Tsukada, and Hideki Isozaki. 2007. Online large-margin training for statistical machine translation. In Proceedings of the 2007 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning (EMNLP-CoNLL),pages 764-773, Prague, Czech Republic, June. Association for Computational Linguistics.」参照のこと。また、ＰＲＯは「Mark Hopkins and Jonathan May. 2011. Tuning as ranking. In Proceedings of the 2011 Conference on Empirical Methods in Natural Language Processing,pages 1352-1362, Edinburgh, Scotland, UK.,July. Association for Computational Linguistics.」参照のこと。
【００９３】
第二学習部２４は、第一学習部２３が取得した初期第一重みベクトル（Ｗ１）を用いて、目的関数情報で示される目的関数を最適化するように学習を行い、重みマトリクスＭとベクトルＢとを取得する。第二学習部２４が行う学習方法は、通常、第一学習部２３が行う学習方法と同様である。かかる学習処理を第二の学習処理と言うこととする。
【００９４】
第三学習部２５は、第二学習部２４が取得した重みマトリクスＭとベクトルＢとを用いて、目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）とを取得する。第三学習部２５が行う学習方法は、通常、第一学習部２３や第二学習部２４が行う学習方法と同様である。かかる学習処理を第三の学習処理と言うこととする。
【００９５】
パラメータ蓄積部２６は、第三学習部２５が取得した第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）、第二学習部２４が取得した重みマトリクスＭ、およびベクトルＢを、パラメータ格納部１１に蓄積する。
【００９６】
対訳コーパス格納部２１、目的関数情報格納部２２は、不揮発性の記録媒体が好適であるが、揮発性の記録媒体でも実現可能である。
【００９７】
対訳コーパス格納部２１、目的関数情報格納部２２に対訳コーパス等が記憶される過程は問わない。例えば、記録媒体を介して対訳コーパス等が対訳コーパス格納部２１で記憶されるようになってもよく、通信回線等を介して送信された対訳コーパス等が対訳コーパス格納部２１で記憶されるようになってもよく、あるいは、入力デバイスを介して入力された対訳コーパス等が対訳コーパス格納部２１で記憶されるようになってもよい。
【００９８】
第一学習部２３、第二学習部２４、第三学習部２５、パラメータ蓄積部２６は、通常、ＭＰＵやメモリ等から実現され得る。これら第一学習部２３等の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはＲＯＭ等の記録媒体に記録されている。但し、ハードウェア（専用回路）で実現しても良い。
【００９９】
次に、学習装置２の動作について、図６のフローチャートを用いて説明する。
【０１００】
（ステップＳ６０１）第一学習部２３は、初期化処理を行う。初期化処理は、例えば、第二の学習処理の繰り返し回数（ＭａｘＩｔｅｒ）の設定、デベロップメントセットの取得、パラメータ（例えば、数式１３のλ）の設定等である。
【０１０１】
（ステップＳ６０２）第一学習部２３は、第二重みベクトル（Ｗ'）に０を代入する。
【０１０２】
（ステップＳ６０３）第一学習部２３は、目的関数情報格納部２２に格納されている目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）の初期値である初期第一重みベクトル（Ｗ１）を取得する。つまり、第一学習部２３は、初期のパラメータ「θ１＝（Ｗ，Ｗ'＝０，Ｍ，Ｂ）」を取得する。なお、かかる学習は、第一の学習処理という。
【０１０３】
（ステップＳ６０４）第二学習部２４は、カウンタｉに１を代入する。
【０１０４】
（ステップＳ６０５）第二学習部２４は、「ｉ＝繰り返し回数の最大値（ＭａｘＩｔｅｒ）」であるか否かを判断する。「ｉ＝最大値」であればステップＳ６０８に行き、「ｉ＝最大値」でなければステップＳ６０６に行く。
【０１０５】
（ステップＳ６０６）第二学習部２４は、第一学習部２３が取得した初期第一重みベクトル（Ｗ１）を用いて、目的関数情報で示される目的関数を最適化するように学習を行い、ｉ番目の第二の学習処理における重みマトリクスＭとベクトルＢとを取得する。さらに具体的には、第二学習部２４は、パラメータθｉを用いてデベロップメントセットをデコードし、すべてのｋ−ｂｅｓｔリストをマージする。次に、第二学習部２４は、例えば、ＰＲＯ等の学習方法により、マージしたｋ−ｂｅｓｔリストを用いて、パラメータθｉ＋１を得る。
【０１０６】
（ステップＳ６０７）第二学習部２４は、カウンタｉを１、インクリメントし、ステップＳ６０５に戻る。
【０１０７】
（ステップＳ６０８）第三学習部２５は、第二学習部２４が最後に取得した重みマトリクスＭとベクトルＢとを取得する。
【０１０８】
（ステップＳ６０９）第三学習部２５は、第二学習部２４が最後に取得した重みマトリクスＭとベクトルＢとを用いて、目的関数情報で示される目的関数を最適化するように学習を行う。なお、かかる学習処理は、第三の学習処理という。
【０１０９】
（ステップＳ６１０）第三学習部２５は、第三の学習処理の結果である、θ（Ｗ，Ｗ'，Ｍ，Ｂ）を取得する。
【０１１０】
（ステップＳ６１１）パラメータ蓄積部２６は、第三学習部２５が取得したθ（Ｗ，Ｗ'，Ｍ，Ｂ）を、パラメータ格納部１１に蓄積し、処理を終了する。
【０１１１】
なお、図６のフローチャートにおいて、第一学習部２３、第二学習部２４、および第三学習部２５が行う学習方法は、通常、同一である。なお、第一学習部２３、第二学習部２４、および第三学習部２５が行う学習方法は、問わない。
【０１１２】
以上、本実施の形態によれば、翻訳装置１で使用するパラメータを効率的に学習できる。
【０１１３】
なお、本実施の形態における処理は、ソフトウェアで実現しても良い。そして、このソフトウェアをソフトウェアダウンロード等により配布しても良い。また、このソフトウェアをＣＤ−ＲＯＭなどの記録媒体に記録して流布しても良い。なお、このことは、本明細書における他の実施の形態においても該当する。なお、本実施の形態における学習装置２を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータがアクセス可能な記録媒体は、非局所的な素性関数に適用される重みベクトルである第一重みベクトル（Ｗ）、局所的な素性関数に適用される重みベクトルである第二重みベクトル（Ｗ'）、局所的スコアを算出する際に使用される重みマトリクスＭ（ｕ×Ｋ次元）、およびｕ次元のバイアスであるベクトルＢを格納し得るパラメータ格納部と、学習のために最大化する目的関数に関する情報である目的関数情報を格納し得る目的関数情報格納部とを有し、コンピュータを、「第二重みベクトル（Ｗ'）＝０」として、前記目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）の初期値である初期第一重みベクトル（Ｗ１）を取得する第一学習部と、前記第一学習部が取得した初期第一重みベクトル（Ｗ１）を用いて、前記目的関数情報で示される目的関数を最適化するように学習を行い、重みマトリクスＭとベクトルＢとを取得する第二学習部と、前記第二学習部が取得したＭとＢとを用いて、前記目的関数情報で示される目的関数を最適化するように学習を行い、第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）とを取得する第三学習部と、前記第三学習部が取得した第一重みベクトル（Ｗ）と第二重みベクトル（Ｗ'）、前記第二学習部が取得した重みマトリクスＭ、およびベクトルＢを、前記パラメータ格納部に蓄積するパラメータ蓄積部として機能させるためのプログラム、である。
【０１１４】
また、図７は、本明細書で述べたプログラムを実行して、上述した種々の実施の形態の翻訳装置１または学習装置２を実現するコンピュータの外観を示す。上述の実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムで実現され得る。図７は、このコンピュータシステム３００の概観図であり、図８は、システム３００のブロック図である。
【０１１５】
図７において、コンピュータシステム３００は、ＣＤ−ＲＯＭドライブを含むコンピュータ３０１と、キーボード３０２と、マウス３０３と、モニタ３０４とを含む。
【０１１６】
図８において、コンピュータ３０１は、ＣＤ−ＲＯＭドライブ３０１２に加えて、ＭＰＵ３０１３と、ＭＰＵ３０１３、ＣＤ−ＲＯＭドライブ３０１２に接続されたバス３０１４と、ブートアッププログラム等のプログラムを記憶するためのＲＯＭ３０１５と、ＭＰＵ３０１３に接続され、アプリケーションプログラムの命令を一時的に記憶するとともに一時記憶空間を提供するためのＲＡＭ３０１６と、アプリケーションプログラム、システムプログラム、及びデータを記憶するためのハードディスク３０１７とを含む。ここでは、図示しないが、コンピュータ３０１は、さらに、ＬＡＮへの接続を提供するネットワークカードを含んでも良い。
【０１１７】
コンピュータシステム３００に、上述した実施の形態の翻訳装置等の機能を実行させるプログラムは、ＣＤ−ＲＯＭ３１０１に記憶されて、ＣＤ−ＲＯＭドライブ３０１２に挿入され、さらにハードディスク３０１７に転送されても良い。これに代えて、プログラムは、図示しないネットワークを介してコンピュータ３０１に送信され、ハードディスク３０１７に記憶されても良い。プログラムは実行の際にＲＡＭ３０１６にロードされる。プログラムは、ＣＤ−ＲＯＭ３１０１またはネットワークから直接、ロードされても良い。
【０１１８】
プログラムは、コンピュータ３０１に、上述した実施の形態の翻訳装置等の機能を実行させるオペレーティングシステム（ＯＳ）、またはサードパーティープログラム等は、必ずしも含まなくても良い。プログラムは、制御された態様で適切な機能（モジュール）を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいれば良い。コンピュータシステム３００がどのように動作するかは周知であり、詳細な説明は省略する。
【０１１９】
また、上記プログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
【０１２０】
また、上記各実施の形態において、各処理（各機能）は、単一の装置（システム）によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
【０１２１】
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０１２２】
以上のように、本発明にかかる翻訳装置は、翻訳候補のスコアを効率良く計算できる、という効果を有し、統計的機械翻訳装置等として有用である。
【符号の説明】
【０１２３】
１  翻訳装置
２  学習装置
１１  パラメータ格納部
１２  素性関数情報格納部
１３  部分対情報格納部
１４  受付部
１５  ベクトル取得部
１６  スコア取得部
１７  目的言語文取得部
１８  出力部
２１  対訳コーパス格納部
２２  目的関数情報格納部
２３  第一学習部
２４  第二学習部
２５  第三学習部
２６  パラメータ蓄積部
【図１】
2014235599.tif 000017
【図２】
2014235599.tif 000018
【図３】
2014235599.tif 000019
【図４】
2014235599.tif 000020
【図５】
2014235599.tif 000021
【図６】
2014235599.tif 000022
【図７】
2014235599.tif 000023
【図８】
2014235599.tif 000024
【図９】
2014235599.tif 000025