(57)【要約】      （修正有）【課題】離れた単語間における依存関係を考慮して、文ペアの類似度を算出するためのパラメタを学習するパラメタ学習装置、方法及びプログラムを提供する。【解決手段】正例の訓練データの各々について、正例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮに基づいて、木編集操作の出現確率を推定し、推定された出現確率に基づいて、木編集操作の系列の各々の出現確率を推定する。負例の訓練データの各々について、負例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮに基づいて、木編集操作の出現確率を推定し、推定された出現確率に基づいて、木編集操作の系列の各々の出現確率を推定する。推定された木編集操作の系列の各々の出現確率に基づいて、正例及び負例に対応する荷重行列に対して、尤度関数を最適化するように、正例及び負例に対応する荷重行列を更新することを、予め定められた反復終了条件を満たすまで繰り返す。【選択図】図１
2017010249.tif 000002
【特許請求の範囲】
【請求項１】
文ペアの類似度を算出する類似度算出装置であって、
前記文ペアに含まれる文の各々について、形態素を表すノードの各々から構成され、かつ、前記ノードの各々に順序が付けられた木構造である順序付き木を生成する順序付木生成部と、
前記順序付木生成部により生成された前記文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから前記木編集操作の出現確率を推定するための、予め学習されたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定する木編集操作系列出現確率推定部と、
前記木編集操作系列出現確率推定部によって推定された木編集操作の系列の各々の出現頻度の総和を、前記文ペアの類似度として出力する文類似度出力部と、
を含む類似度算出装置。
【請求項２】
学習対象文と、前記学習対象文と類似する正例の学習目標文及び前記学習対象文と類似しない負例の学習目標文とを含む訓練データの集合を用いてパラメタを学習するパラメタ学習装置であって、
前記訓練データの集合における前記訓練データの各々に含まれる前記学習対象文及び前記学習目標文の各々について、形態素を表すノードの各々から構成され、かつ、前記ノードの各々に順序が付けられた木構造である順序付き木を生成する順序付木生成部と、
前記訓練データの集合における正例の前記訓練データの各々について、前記順序付木生成部により生成された前記学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから前記木編集操作の出現確率を推定するための、正例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、
前記訓練データの集合における負例の前記訓練データの各々について、前記順序付木生成部により生成された前記学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから、前記木編集操作の出現確率を推定するための、負例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定する木編集操作系列出現確率推定部と、
前記木編集操作系列出現確率推定部により前記訓練データの各々について推定された前記木編集操作の系列の各々の出現確率に基づいて、前記正例に対応する荷重行列及び前記負例に対応する荷重行列に対して、前記訓練データの集合における前記訓練データの各々が正例であるか負例であるかを示す教師信号ベクトルの尤もらしさを表す尤度関数を最適化するように、前記正例に対応する荷重行列及び前記負例に対応する荷重行列を更新するパラメタ推定部と、
予め定められた反復終了条件を満たすまで、前記木編集操作系列出現確率推定部による推定及び前記パラメタ推定部による更新を繰り返す反復判定部と、
を含むパラメタ学習装置。
【請求項３】
前記木編集操作系列出現確率推定部は、
前記訓練データの集合における正例の前記訓練データの各々について、前記順序付木生成部により前記訓練データの前記学習対象文及び前記学習目標文の各々について生成された順序付き木から抽出される、正例に対応する前記木編集操作の集合に含まれる、前記木編集操作の系列の各々に含まれる前記木編集操作の特徴ベクトルと、前記正例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、
前記訓練データの集合における負例の前記訓練データの各々について、前記順序付木生成部により前記訓練データの前記学習対象文及び前記学習目標文の各々について生成された順序付き木から抽出される、負例に対応する前記木編集操作の集合に含まれる、前記木編集操作の系列の各々に含まれる前記木編集操作の特徴ベクトルと、前記負例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、
前記パラメタ推定部は、更に、更新された前記正例に対応する荷重行列に基づいて、正例に対応する前記木編集操作の集合に含まれる木編集操作を削減するように、正例に対応する前記木編集操作の集合を更新し、
更新された前記負例に対応する荷重行列に基づいて、負例に対応する前記木編集操作の集合に含まれる木編集操作を削減するように、負例に対応する前記木編集操作の集合を更新する請求項２記載のパラメタ学習装置。
【請求項４】
文ペアの類似度を算出する類似度算出装置における類似度算出方法であって、
順序付木生成部が、前記文ペアに含まれる文の各々について、形態素を表すノードの各々から構成され、かつ、前記ノードの各々に順序が付けられた木構造である順序付き木を生成するステップと、
木編集操作系列出現確率推定部が、前記順序付木生成部により生成された前記文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから前記木編集操作の出現確率を推定するための、予め学習されたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定するステップと、
文類似度出力部が、前記木編集操作系列出現確率推定部によって推定された木編集操作の系列の各々の出現頻度の総和を、前記文ペアの類似度として出力するステップと、
を含む類似度算出方法。
【請求項５】
学習対象文と、前記学習対象文と類似する正例の学習目標文及び前記学習対象文と類似しない負例の学習目標文とを含む訓練データの集合を用いてパラメタを学習するパラメタ学習装置におけるパラメタ学習方法であって、
順序付木生成部が、前記訓練データの集合における前記訓練データの各々に含まれる前記学習対象文及び前記学習目標文の各々について、形態素を表すノードの各々から構成され、かつ、前記ノードの各々に順序が付けられた木構造である順序付き木を生成するステップと、
木編集操作系列出現確率推定部が、前記訓練データの集合における正例の前記訓練データの各々について、前記順序付木生成部により生成された前記学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから前記木編集操作の出現確率を推定するための、正例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、
前記訓練データの集合における負例の前記訓練データの各々について、前記順序付木生成部により生成された前記学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから、前記木編集操作の出現確率を推定するための、負例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定するステップと、
パラメタ推定部が、前記木編集操作系列出現確率推定部により前記訓練データの各々について推定された前記木編集操作の系列の各々の出現確率に基づいて、前記正例に対応する荷重行列及び前記負例に対応する荷重行列に対して、前記訓練データの集合における前記訓練データの各々が正例であるか負例であるかを示す教師信号ベクトルの尤もらしさを表す尤度関数を最適化するように、前記正例に対応する荷重行列及び前記負例に対応する荷重行列を更新するステップと、
反復判定部が、予め定められた反復終了条件を満たすまで、前記木編集操作系列出現確率推定部による推定及び前記パラメタ推定部による更新を繰り返すステップと、
を含むパラメタ学習方法。
【請求項６】
前記木編集操作系列出現確率推定部が推定するステップは、
前記訓練データの集合における正例の前記訓練データの各々について、前記順序付木生成部により前記訓練データの前記学習対象文及び前記学習目標文の各々について生成された順序付き木から抽出される、正例に対応する前記木編集操作の集合に含まれる、前記木編集操作の系列の各々に含まれる前記木編集操作の特徴ベクトルと、前記正例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、
前記訓練データの集合における負例の前記訓練データの各々について、前記順序付木生成部により前記訓練データの前記学習対象文及び前記学習目標文の各々について生成された順序付き木から抽出される、負例に対応する前記木編集操作の集合に含まれる、前記木編集操作の系列の各々に含まれる前記木編集操作の特徴ベクトルと、前記負例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、
前記パラメタ推定部が推定するステップは、更に、更新された前記正例に対応する荷重行列に基づいて、正例に対応する前記木編集操作の集合に含まれる木編集操作を削減するように、正例に対応する前記木編集操作の集合を更新し、
更新された前記負例に対応する荷重行列に基づいて、負例に対応する前記木編集操作の集合に含まれる木編集操作を削減するように、負例に対応する前記木編集操作の集合を更新する請求項５記載のパラメタ学習方法。
【請求項７】
コンピュータを、請求項１に記載の類似度算出装置、又は請求項２又は３に記載のパラメタ学習装置を構成する各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パラメタ学習装置、文類似度算出装置、方法、及びプログラムに係り、特に、文ペアの類似度を算出するためのパラメタ学習装置、文類似度算出装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、インターネット上にある大量のテキストデータが利用可能になっており、その中から必要な情報を取り出すために、文書や文間の意味内容の比較に関する技術が重要となっている。２つの文の意味内容を比較する手段の１つとして、２つの文に含まれる単語やフレーズごとの関連性から２つの文の類似度（以下、文類似度）を算出する手法が知られている（例えば非特許文献１参照）。その手法の１つとして、編集距離を利用した手法が提案されている。一般的な編集距離では、文字の挿入、削除、置換、又は入れ替えといった操作によって１つの文字列を別の文字列に変形するのに必要な最短手順と、各操作のコストから算出される合計コストとして与えられる（例えば非特許文献２参照）。文類似度を求める手法では、挿入、削除、又は置換の３つの操作がよく用いられる。
【０００３】
また、近年では、文字情報を利用するだけではなく、構文情報や係り受け情報を解析することで文を木構造で表現し、その木構造を基に編集距離を算出する木編集距離と呼ばれる手法が用いられている（例えば非特許文献３参照）。木編集距離を用いた計算では、文類似度は、文字や単語をノードとして表現し、ノードの挿入、削除、又は置換によるコストとして計算され、１つの木構造から別の木構造に変形するために必要な合計コストの最小値として与えられる。
【０００４】
また、木編集距離における挿入や削除、置換といった操作のコストは、教師信号（正例及び負例を含む）を用いた機械学習によって算出することができる。学習手法の１つとして、２つの木構造間において、考えうるすべての木編集操作系列を求め、正例の木編集操作コストの合計が小さくなるように学習する手法がある。例えば木編集操作系列を推定するために条件付き確率場（ＣＲＦ）を用いた手法などが提案されている（例えば、非特許文献４参照）。ＣＲＦを用いる手法は、２つの文の木構造の各ノードの組に対して適切な木編集操作を付与したものを木編集系列として、系列ラベリング問題を解く手法と捉えることができる。このような系列ラベリング問題を解く手法では、木編集操作系列内の連続している木編集操作間にマルコフ性を仮定しているため、２つの木構造に含まれる単語対単語や単語対フレーズといった、２つの文の木構造におけるノード間の対応付け関係を、木編集操作コストの学習と同時にある程度学習することができる。
【０００５】
例えば、文「小さい花子」と文「花子さん」の、2つの文からそれぞれ構成される木構造において、「形容詞」のノード＜小さい＞と「固有名詞」のノード＜花子＞といった、2つのノードからなる木構造から、「固有名詞」のノード＜花子さん＞から構成される木構造へと変形する木編集操作を考えるとき、「ノード＜小さい＞における形容詞の削除操作」と「ノード＜花子＞とノード＜花子さん＞間における固有名詞の置換操作」の2つの木編集操作が連続して出現しやすい操作であることを学習することで、木編集操作の出現確率を学習するだけでなく、「小さい花子」というフレーズと「花子さん」という単語間の、対応付け関係を同時に学習することができる。このとき、言語情報を持ったノード間の対応付けを精細に抽出するために、例えば「形容詞の削除を行う木編集操作」や「固有名詞の置換を行う木編集操作」など、言語情報に対応した木編集操作をあらかじめ多く用意する必要がある。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Daniel Jurafsky, James H. Martin. “Speech and Language Processing”. Pearson Education International, 2nd ed, p.107-109, 2009.
【非特許文献２】Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein. “Introduction to Algorithms”. The MIT Press, 3rd ed, p.406-407, 2009.
【非特許文献３】Milen Kouylekov, Bernardo Magnini. “Recognizing Textual Entailment with Tree Edit Distance Algorithms.”Proceedings of the PASCAL RTE Challenge, pp.17-20, 2005
【非特許文献４】Mengqiu Wang and Christopher D. “Manning. Probabilistic Tree-Edit Models with Structured Latent Variables for Textual Entailment and Question Answering.” Proceedings of the 23rd International Conference on Computational Linguistics, pp.1164-1172, 2010.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
一方で、木編集操作間のマルコフ性を仮定している手法では、木編集操作系列において一定以上離れた、長文における木編集操作間の同時出現確率や、不連続の依存関係を持つ木編集操作間の同時出現確率を学習することができないという課題がある。
【０００８】
不連続な依存関係を持つ木編集操作は、例えば、能動文と受動文の意味的類似度を算出する際に出現する。ここでは、「先生が花子を叱る」という能動文と、「花子は先生に叱られる」という受動文を例として挙げる。求めたい木編集操作系列は、３つの連続するノード＜先生が＞と＜花子を＞と＜叱る＞から構成される木構造を、３つの連続するノード＜花子は＞と＜先生に＞と＜叱られる＞から構成される木構造へと変形する木編集操作系列と考えられる。このとき、「ノード＜先生が＞の削除操作」と、「ノード＜花子を＞とノード＜花子は＞における置換操作」と、「ノード＜先生に＞の挿入操作」と、「ノード＜叱る＞とノード＜叱られる＞における置換操作」といった、４つの木編集操作系列が出現すると考えられる。この時、「ノード＜先生が＞の削除操作」と、「ノード＜先生に＞の挿入操作」の２つの木編集操作は、明らかに依存関係があると考えられるが、木編集操作系列の中で連続して出現していないため、マルコフ性を仮定している手法では、学習の対象として扱うことができない。
【０００９】
一定以上離れた単語間の依存関係を学習するために、例えば２つ以上の木編集操作を連続で行う操作を示す新たな木編集操作を生成するといった工夫により対処することは考えられる。しかしこの方法を用いると、多くの木編集操作における組み合わせを考慮しなければならず、木編集操作の種類が多い学習手法では計算時間の課題が生じる。
【００１０】
本発明は、上記問題点を解決するために成されたものであり、離れた単語間における依存関係を考慮して文ペアの類似度を算出するためのパラメタを学習することができるパラメタ学習装置、方法、及びプログラムを提供することを目的とする。
【００１１】
また、離れた単語間における依存関係を考慮して、文ペアの類似度を算出することができる類似度算出装置、方法、及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するために、第１の発明に係る類似度算出装置は、文ペアの類似度を算出する類似度算出装置であって、前記文ペアに含まれる文の各々について、形態素を表すノードの各々から構成され、かつ、前記ノードの各々に順序が付けられた木構造である順序付き木を生成する順序付木生成部と、前記順序付木生成部により生成された前記文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから前記木編集操作の出現確率を推定するための、予め学習されたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定する木編集操作系列出現確率推定部と、前記木編集操作系列出現確率推定部によって推定された木編集操作の系列の各々の出現頻度の総和を、前記文ペアの類似度として出力する文類似度出力部と、を含んで構成されている。
【００１３】
第２の発明に係るパラメタ学習装置は、学習対象文と、前記学習対象文と類似する正例の学習目標文及び前記学習対象文と類似しない負例の学習目標文とを含む訓練データの集合を用いてパラメタを学習するパラメタ学習装置であって、前記訓練データの集合における前記訓練データの各々に含まれる前記学習対象文及び前記学習目標文の各々について、形態素を表すノードの各々から構成され、かつ、前記ノードの各々に順序が付けられた木構造である順序付き木を生成する順序付木生成部と、前記訓練データの集合における正例の前記訓練データの各々について、前記順序付木生成部により生成された前記学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから前記木編集操作の出現確率を推定するための、正例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、前記訓練データの集合における負例の前記訓練データの各々について、前記順序付木生成部により生成された前記学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから、前記木編集操作の出現確率を推定するための、負例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定する木編集操作系列出現確率推定部と、前記木編集操作系列出現確率推定部により前記訓練データの各々について推定された前記木編集操作の系列の各々の出現確率に基づいて、前記正例に対応する荷重行列及び前記負例に対応する荷重行列に対して、前記訓練データの集合における前記訓練データの各々が正例であるか負例であるかを示す教師信号ベクトルの尤もらしさを表す尤度関数を最適化するように、前記正例に対応する荷重行列及び前記負例に対応する荷重行列を更新するパラメタ推定部と、予め定められた反復終了条件を満たすまで、前記木編集操作系列出現確率推定部による推定及び前記パラメタ推定部による更新を繰り返す反復判定部と、を含んで構成されている。
【００１４】
また、第２の発明に係るパラメタ学習装置において、前記木編集操作系列出現確率推定部は、前記訓練データの集合における正例の前記訓練データの各々について、前記順序付木生成部により前記訓練データの前記学習対象文及び前記学習目標文の各々について生成された順序付き木から抽出される、正例に対応する前記木編集操作の集合に含まれる、前記木編集操作の系列の各々に含まれる前記木編集操作の特徴ベクトルと、前記正例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、前記訓練データの集合における負例の前記訓練データの各々について、前記順序付木生成部により前記訓練データの前記学習対象文及び前記学習目標文の各々について生成された順序付き木から抽出される、負例に対応する前記木編集操作の集合に含まれる、前記木編集操作の系列の各々に含まれる前記木編集操作の特徴ベクトルと、前記負例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、前記パラメタ推定部は、更に、更新された前記正例に対応する荷重行列に基づいて、正例に対応する前記木編集操作の集合に含まれる木編集操作を削減するように、正例に対応する前記木編集操作の集合を更新し、更新された前記負例に対応する荷重行列に基づいて、負例に対応する前記木編集操作の集合に含まれる木編集操作を削減するように、負例に対応する前記木編集操作の集合を更新するようにしてもよい。
【００１５】
第３の発明に係る類似度算出方法は、文ペアの類似度を算出する類似度算出装置における類似度算出方法であって、順序付木生成部が、前記文ペアに含まれる文の各々について、形態素を表すノードの各々から構成され、かつ、前記ノードの各々に順序が付けられた木構造である順序付き木を生成するステップと、木編集操作系列出現確率推定部が、前記順序付木生成部により生成された前記文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから前記木編集操作の出現確率を推定するための、予め学習されたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定するステップと、文類似度出力部が、前記木編集操作系列出現確率推定部によって推定された木編集操作の系列の各々の出現頻度の総和を、前記文ペアの類似度として出力するステップと、を含んで実行することを特徴とする。
【００１６】
第４の発明に係るパラメタ学習方法は、学習対象文と、前記学習対象文と類似する正例の学習目標文及び前記学習対象文と類似しない負例の学習目標文とを含む訓練データの集合を用いてパラメタを学習するパラメタ学習装置におけるパラメタ学習方法であって、順序付木生成部が、前記訓練データの集合における前記訓練データの各々に含まれる前記学習対象文及び前記学習目標文の各々について、形態素を表すノードの各々から構成され、かつ、前記ノードの各々に順序が付けられた木構造である順序付き木を生成するステップと、木編集操作系列出現確率推定部が、前記訓練データの集合における正例の前記訓練データの各々について、前記順序付木生成部により生成された前記学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから前記木編集操作の出現確率を推定するための、正例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、前記訓練データの集合における負例の前記訓練データの各々について、前記順序付木生成部により生成された前記学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる前記木編集操作の各々について、前記順序付木生成部により生成された順序付き木から抽出される、前記木編集操作の特徴ベクトルと、前記特徴ベクトルから、前記木編集操作の出現確率を推定するための、負例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定するステップと、パラメタ推定部が、前記木編集操作系列出現確率推定部により前記訓練データの各々について推定された前記木編集操作の系列の各々の出現確率に基づいて、前記正例に対応する荷重行列及び前記負例に対応する荷重行列に対して、前記訓練データの集合における前記訓練データの各々が正例であるか負例であるかを示す教師信号ベクトルの尤もらしさを表す尤度関数を最適化するように、前記正例に対応する荷重行列及び前記負例に対応する荷重行列を更新するステップと、反復判定部が、予め定められた反復終了条件を満たすまで、前記木編集操作系列出現確率推定部による推定及び前記パラメタ推定部による更新を繰り返すステップと、を含んで実行することを特徴とする。
【００１７】
また、第４の発明に係るパラメタ学習方法において、前記木編集操作系列出現確率推定部が推定するステップは、前記訓練データの集合における正例の前記訓練データの各々について、前記順序付木生成部により前記訓練データの前記学習対象文及び前記学習目標文の各々について生成された順序付き木から抽出される、正例に対応する前記木編集操作の集合に含まれる、前記木編集操作の系列の各々に含まれる前記木編集操作の特徴ベクトルと、前記正例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、前記訓練データの集合における負例の前記訓練データの各々について、前記順序付木生成部により前記訓練データの前記学習対象文及び前記学習目標文の各々について生成された順序付き木から抽出される、負例に対応する前記木編集操作の集合に含まれる、前記木編集操作の系列の各々に含まれる前記木編集操作の特徴ベクトルと、前記負例に対応する荷重行列を用いたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、前記木編集操作の出現確率を推定し、推定された前記木編集操作の出現確率に基づいて、前記訓練データの前記学習対象文の順序付き木を前記学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、前記パラメタ推定部が推定するステップは、更に、更新された前記正例に対応する荷重行列に基づいて、正例に対応する前記木編集操作の集合に含まれる木編集操作を削減するように、正例に対応する前記木編集操作の集合を更新し、更新された前記負例に対応する荷重行列に基づいて、負例に対応する前記木編集操作の集合に含まれる木編集操作を削減するように、負例に対応する前記木編集操作の集合を更新するようにしてもよい。
【００１８】
第５の発明に係るコンピュータは、コンピュータを、第１の発明に係る類似度算出装置、又は第２の発明に係るパラメタ学習装置を構成する各部として機能させるためのプログラムである。
【発明の効果】
【００１９】
本発明のパラメタ学習装置、方法、及びプログラムによれば、正例の訓練データの各々について、生成された学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる木編集操作の各々について、正例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、訓練データの学習対象文の順序付き木を学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、負例の訓練データの各々について、順序付木生成部により生成された学習対象文の順序付き木を学習目標文の順序付き木に変形するための、木編集操作の系列の各々に含まれる木編集操作の各々について、負例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、学習対象文の順序付き木を学習目標文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、推定された木編集操作の系列の各々の出現確率に基づいて、正例に対応する荷重行列及び負例に対応する荷重行列に対して、訓練データの各々が正例であるか負例であるかを示す教師信号ベクトルの尤もらしさを表す尤度関数を最適化するように、正例に対応する荷重行列及び負例に対応する荷重行列を更新することを、予め定められた反復終了条件を満たすまで繰り返すことにより、離れた単語間における依存関係を考慮して文ペアの類似度を算出するためのパラメタを学習することができる、という効果が得られる。
【００２０】
また、本発明の類似度算出装置、方法、及びプログラムによれば、生成された文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための、木編集操作の系列の各々に含まれる木編集操作の各々について、生成された順序付き木から抽出される、木編集操作の特徴ベクトルと、特徴ベクトルから木編集操作の出現確率を推定するための、予め学習されたＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋとに基づいて、木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための複数の木編集操作系列の各々の出現確率を推定し、推定された複数の木編集操作系列の各々の出現頻度の総和を、文ペアの類似度として出力することにより、離れた単語間における依存関係を考慮して、文ペアの類似度を算出することができる、という効果が得られる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施の形態に係るパラメタ学習装置の構成を示すブロック図である。
【図２】訓練データの集合の一例を示す図である。
【図３】順序付き木の生成の結果の一例を示す図である。
【図４】特徴ベクトルφ（τｔ，τｈ）の要素である各特徴量の一例を示す図である。
【図５】２つの双方向ＲＮＮを含むネットワーク構造の構成の一例を示す図である。
【図６】木編集操作集合の初期集合の一例を示す図である。
【図７】本発明の実施の形態に係る類似度算出装置の構成を示すブロック図である。
【図８】本発明の実施の形態に係るパラメタ学習装置におけるパラメタ学習処理ルーチンを示すフローチャートである。
【図９】本発明の実施の形態に係る類似度算出装置における類似度算出処理ルーチンを示すフローチャートである。
【発明を実施するための形態】
【００２２】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００２３】
＜本発明の実施の形態に係る概要＞
【００２４】
まず、本発明の実施の形態における概要を説明する。
【００２５】
本発明の実施の形態では、２つの文から生成される木構造から木編集操作系列を推定する系列ラベリング問題について、入力系列の双方向の依存関係を処理できるＪｏｒｄａｎ型Ｒｅｃｕｒｒｅｎｔ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ（以下、ＲＮＮと称する）を用いることで、上記の木編集操作系列における木編集操作の依存関係を学習する課題に取り組む。双方向ＲＮＮは入力系列の一定以上離れた要素間に依存関係がある場合や、不連続な依存関係がある場合に有効であることが示されている（非特許文献５参照）。
【００２６】
［非特許文献５］：Tomas Mikolov, Stefan Kombrink, Lukas Burget, Jan H Cernocky, Sanjeev Khudanpur. Extensions of Recurrent Neural Network Language Model. Acoustics, Speech and Signal Processing, pp.5528-5531, 2011.
【００２７】
よって、ＲＮＮは木編集操作系列の推定に対しても効果的に機能すると考えられる。また、双方向ＲＮＮの学習時に、言語情報に対応した木編集操作の種類数を削減する機能を加える。学習対象のデータによって最適な木編集操作の種類数を取るように逐次的に削減処理を行うために、計算量を軽減しつつ一定以上離れた単語間における依存関係を学習することが可能となる。
【００２８】
＜本発明の実施の形態に係るパラメタ学習装置の構成＞
【００２９】
次に、本発明の実施の形態に係るパラメタ学習装置の構成について説明する。図１に示すように、本発明の実施の形態に係るパラメタ学習装置１００は、ＣＰＵと、ＲＡＭと、後述するパラメタ学習処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。このパラメタ学習装置１００は、機能的には図１に示すように入力部１０と、演算部２０とを備えている。
【００３０】
入力部１０は、図２に示すような、訓練データの集合を受け付ける。訓練データの集合における訓練データは、学習対象文と、学習対象文と類似する正例の学習目標文及び学習対象文と類似しない負例の学習目標文との２つ組からなる。本実施の形態では、正例の学習目標文を一つとし、負例の学習目標文を複数とする。例えば、訓練データは、「“プロメーテウスは人類に火を渡し、張り付けにされた”、“プロメテウスは人類に火を齎して罰を受けた。”」のように２つの文の間に意味的関連性を含む正例の学習目標文や、「“アメリカ海軍の最初の潜水艦は、アリゲーターだ。”、“飲むヨーグルトは、酒の一種だ。”」のように２つの文間に意味的関連性を含まない複数の負例の学習目標文などを含む。
【００３１】
演算部２０は、順序付木生成部３０と、木編集操作系列出現確率推定部３２と、パラメタ推定部３４と、反復判定部３６と、パラメタ集合ＤＢ４０とを含んで構成されている。
【００３２】
順序付木生成部３０は、以下に説明するように、入力部１０により受け付けた訓練データの集合における訓練データの各々に含まれる学習対象文及び学習目標文の各々について、形態素を表すノードの各々から構成され、かつ、ノードの各々に順序が付けられた木構造である順序付き木を生成する。
【００３３】
順序付木生成部３０は、まず、学習対象文及び学習目標文の各々に対して形態素解析及び係り受け解析の処理を行う。例えば、形態素解析に非特許文献５（Takeshi Fuchi and Shinichiro Takagi. “Japanese Morphological Analyzer using Word Co-occurrence -JTAG.”In Proceedings of the 36th Annual Meeting of the Association for Computational Linguistics and 17th International Conference on Computational Linguistics (Volume 1), pp. 409-413, 1998.）記載の方法を利用することができる。また、係り受け解析に非特許文献６（Kenji Imamura, Genichiro Kikui and Norihito Yasuda. “Japanese Dependency Parsing Using Sequential Labeling for Semi-spoken Language.” In Proceedings of the 45th Annual Meeting of the Association for Computational Linguistics Companion Volume Proceedings of the Demo and Poster Sessions, pp. 225-228, 2007.）記載の方法を利用することができる。次に、係り受け解析によって得られた係り受け木に対して順序付けを行う。ここでは、係り受け解析で得られたそれぞれの形態素をノードと見なした係り受け木に対して、当該木に対して後順に走査した順番をノードに付与する。図３に、順序付木生成部３０における順序付き木の生成の結果の一例を示す。ここで順序付き木の各ノードは、単に表層の語彙を持つだけでなく、形態素解析によって得られた、形態素の種類、連用形、読み、及び原型といった言語情報と、当該ノードの親ノードや子ノードの有無及びポインタといった木構造情報とを保持している。
【００３４】
パラメタ集合ＤＢ４０には、後述する木編集操作系列出現確率推定部３２によりある２つのノードについて算出された木編集操作に関する特徴ベクトルと、２つの双方向ＲＮＮを含むネットワーク構造と、ＲＮＮの出力値を説明するための各荷重行列の値とが格納されている。
【００３５】
図４にパラメタの一例として特徴ベクトルφ（τｔ，τｈ）の要素である各特徴量を示す。特徴ベクトルφ（τｔ，τｈ）は、対応する木編集操作の対象となる２つのノードの関連性における特徴量と、文ペアから生成される順序付き木τｔ，τｈの関連性における特徴量を要素として持つ。各特徴量の値は｛０，１｝で定義され、例えば「２つのノードの表層が等しい」という特徴量の場合、該当する木編集操作の対象である２つのノードの表層が等しければ値は１、表層が等しくなければ０の値を取る。
【００３６】
図５に２つの双方向ＲＮＮを含むネットワーク構造の構成の一例を示す。当該ネットワーク構造は、ｎ番目の木編集操作に関する特徴ベクトルである入力ベクトルｘ（ｎ）を共有する２つの双方向ＲＮＮから構成されており、木編集操作系列におけるｎ番目の木編集操作に対応する２つのノードから生成される特徴ベクトルφ（τｔ，τｈ）を入力として受け取り、２つの双方向ＲＮＮはそれぞれ当該木編集操作の出現確率を出力する。この時、一方の双方向ＲＮＮは２つの入力文に意味的な類似性がある正例に対応した、当該木編集操作の出現確率を出力し、他方の双方向ＲＮＮは負例に対応した、当該木編集操作の出現確率を出力する。２つの入力文に意味的類似性がある場合を１、ない場合は０を示す２値変数ｔ∈｛０，１｝を用いて、当該ネットワークの出力値を以下（１）式に示す。
【００３７】
【数１】
2017010249.tif 000003
【００３８】
ここで、σはシグモイド関数を示し、ｇはソフトマックス関数
【００３９】
【数２】
2017010249.tif 000004
【００４０】
を示す。
【００４１】
またＷｘ（ｔ）、Ｗｂ（ｔ）、Ｗａ（ｔ）、Ｗｈ（ｔ）は、それぞれ木編集操作の各々の出現確率を推定するための荷重ベクトルである。Ｗｘ（ｔ）は入力ベクトルｘ（ｎ）から隠れベクトルｈ（ｎ）（ｔ）へ結合する荷重行列であり、Ｗｂ（ｔ）はｎ−１番目の出力ベクトルｙ（ｎ−１）（ｔ）から隠れベクトルｈ（ｎ）（ｔ）へと結合する荷重行列であり、Ｗａ（ｔ）はｎ＋１番目の出力ベクトルｙ（ｎ＋１）（ｔ）から隠れベクトルｈ（ｎ）（ｔ）へと結合する荷重行列であり、Ｗｈ（ｔ）は隠れベクトルｈ（ｎ）（ｔ）から出力ベクトルｙ（ｎ）（ｔ）へと結合する荷重行列である。また、出力ベクトルｙ（ｎ）（ｔ）は、推定されうる木編集操作の総数であるＭ個の要素を持ち、各要素ｍは、対応する木編集操作の出現確率を表す。
【００４２】
木編集操作系列出現確率推定部３２は、以下のように正例の訓練データの各々、及び負例の訓練データの各々について、訓練データの学習対象文の順序付き木を学習目標文の順序付き木に変形するための複数の木編集操作系列の各々の出現確率を推定する。
【００４３】
木編集操作系列出現確率推定部３２は、訓練データの集合における正例の訓練データの各々について、順序付木生成部３０により生成された学習対象文の順序付き木を学習目標文の順序付き木に変形するための、正例に対応する木編集操作集合に含まれる木編集操作からなる複数の木編集操作系列の各々に含まれる木編集操作の各々について、順序付木生成部３０により生成された順序付き木から抽出される当該木編集操作の特徴ベクトルと、特徴ベクトルから木編集操作の出現確率を推定するための、正例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、当該木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、当該訓練データの学習対象文の順序付き木を学習目標文の順序付き木に変形するための複数の木編集操作系列の各々の出現確率を推定する。
【００４４】
また、木編集操作系列出現確率推定部３２は、訓練データの集合における負例の訓練データの各々について、順序付木生成部３０により生成された学習対象文の順序付き木を学習目標文の順序付き木に変形するための、負例に対応する木編集操作集合に含まれる木編集操作からなる複数の木編集操作系列の各々に含まれる木編集操作の各々について、当該木編集操作の特徴ベクトルと、特徴ベクトルから、木編集操作の出現確率を推定するための、負例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、当該木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、訓練データの学習対象文の順序付き木を学習目標文の順序付き木に変形するための複数の木編集操作系列の各々の出現確率を推定する。
【００４５】
木編集操作系列出現確率推定部３２における具体的な処理を以下に説明する。木編集操作系列出現確率推定部３２は、順序付木生成部３０から出力される学習対象文及び学習目標文の各々についての順序付き木を受けとり、学習対象文の順序付き木から学習目標文の順序付き木に変換するための、複数の木編集操作系列を求める。ここで木編集操作系列は、例えば、「ノード＜先生が＞の削除操作」及び「ノード＜先生が＞の挿入操作」のように、不要な木編集操作のペアが含まれないものである。また、木編集操作系列出現確率推定部３２は、訓練データの学習対象文及び学習目標文の各々について生成された順序付き木から抽出された木編集操作に関する特徴ベクトルをパラメタ集合ＤＢ４０に格納する。
【００４６】
そして、各木編集操作系列における木編集操作の出現確率を、パラメタ集合ＤＢ４０に保持しているネットワーク（正例及び負例の双方向ＲＮＮ）の出力値から算出する。
【００４７】
入力として与えられる学習対象文及び学習目標文から生成される順序付き木をそれぞれτｔ，τｈと定義すると、τｔからτｈへ変形する際の連続する木編集操作からなる木編集操作系列ｅ＝ｅ０，ｅ１…ｅＮ，ｅ（Ｎ＋１）の出現確率ｐ（ｅ│τｔ，τｈ）は以下（２）式で求められる。
【００４８】
【数３】
2017010249.tif 000005
【００４９】
ここで、ｙ（ｎ）ｍ（ｔ）は、Ｍ個の木編集操作のうち、ある木編集操作ｅｎに対応するネットワークのｍ番目の出力値（出現確率）である。ｅ０とｅ（Ｎ＋１）とは計算上に用意した、操作しないという操作を示す。またＺは次に説明する正規化のための変数である。
【００５０】
各木編集操作における出現確率を出力するネットワークは、正例及び負例の２つの双方向ＲＮＮから構成されているために、ある木編集操作系列を入力としたとき、正例及び負例の２つの出現確率値が出力される。ある順序付き木τｔ，からある順序付き木τｈへと変形するための木編集操作系列は複数求めることができ、これら木編集操作系列の出現確率をすべて合計した値がＺと定義される。Ｚは以下（４）式で求められる。
【００５１】
【数４】
2017010249.tif 000006
【００５２】
ここで正例及び負例に対応する２つのネットワークからの出力と対応する木編集操作の集合をそれぞれＳ１，Ｓ０と表現している。またｅ０∈Ｓｓ，ｅ（Ｎ＋１）∈Ｓｚである。
【００５３】
パラメタ推定部３４は、木編集操作系列出現確率推定部３２により訓練データの各々について推定された複数の木編集操作系列の各々の出現確率に基づいて、正例に対応する荷重行列及び負例に対応する荷重行列に対して、訓練データの集合における訓練データの各々が正例であるか負例であるかを示す教師信号ベクトルの尤もらしさを表す尤度関数を最適化するように、正例に対応する荷重行列及び負例に対応する荷重行列を更新する。更に、木編集操作系列出現確率推定部３２で更新された正例に対応する荷重行列に基づいて、正例に対応する木編集操作の集合に含まれる木編集操作を削減するように、正例に対応する木編集操作の集合を更新する。また、木編集操作系列出現確率推定部３２で更新された負例に対応する荷重行列に基づいて、負例に対応する木編集操作の集合に含まれる木編集操作を削減するように、負例に対応する木編集操作の集合を更新する。
【００５４】
パラメタ推定部３４における具体的な処理を以下に説明する。パラメタ推定部３４は、木編集操作系列出現確率推定部３２から出力される、正例及び負例についてのすべての木編集操作系列と出現確率を受け取り、パラメタ集合ＤＢ４０に保存されている正例及び負例に対応する荷重行列の値と木編集操作集合を更新する。
【００５５】
パラメタ推定部３４における荷重行列の学習は、訓練データの集合が含むすべての正例及び負例を用いた、尤度関数を最大化する最尤法の枠組みで行う。尤度関数ｐ（Ｔ｜θ）は以下（５）式で定義される。
【００５６】
【数５】
2017010249.tif 000007
【００５７】
ここでＴは、訓練データの集合が含むすべてのデータ数Ｄ個の要素を持つ、教師信号ベクトルであり、各要素はｄ番目のデータである２つの文の意味的類似性を示す２値変数ｔｄ∈｛０，１｝からなる。またτｔｄ，τｈｄは、ｄ番目のデータである２つの文から生成される順序付き木をそれぞれ示す。θはネットワークが持つパラメタ（Ｗｘ（ｔ），Ｗａ（ｔ），Ｗｂ（ｔ），Ｗｈ（ｔ））を示す。
【００５８】
パラメタ推定部３４における最尤法の学習では、尤度関数を最大化するようなθを求めればよいが、尤度関数ｐ（Ｔ｜θ）は対数の中に総和を含む式であり、そのままでは解析的に解くことができない。そのため以下（６）式のような式変形を行い、ＥＭアルゴリズムを用いて逐次的に学習を行う。
【００５９】
【数６】
2017010249.tif 000008
【００６０】
ＥＭアルゴリズムを用いて、Ｅ−ｓｔｅｐで与えられた訓練データの各々における正例及び負例に対応する学習対象文及び学習目標文の２つの順序付き木を用いてｐ（ｅ│τｔｄ，τｈｄ）を求め、Ｍ−ｓｔｅｐでｐ（ｅ│τｔｄ，τｈｄ）ｌｏｇ  ｐ（ｔｄ｜ｅ，τｔｄ，τｈｄ）を最大化する荷重行列を求める。最大化手法には、例えばＢＦＧＳ法などの準ニュートン法を用いることができる。また、荷重行列Ｗｘ（ｔ），Ｗｂ（ｔ），Ｗａ（ｔ），Ｗｈ（ｔ）の学習には誤差逆伝搬法などを用いることができる。
【００６１】
ここで、各荷重行列のある行ベクトルである荷重ベクトルｗを更新する際の更新式を、準ニュートン法におけるｋステップ目のヘッセ行列の逆行列の近似行列Ｈｋを用いて、以下（７）式のように定式化する。
【００６２】
【数７】
2017010249.tif 000009
【００６３】
ここでｆは荷重ベクトルｗが結合している出力ベクトルの要素における出力関数を示す。上記（７）式により、推定される荷重行列の値はＬ１正則化を伴って学習されるため、尤度関数を最大化するうえで影響の小さい荷重の値は０をとる。この効果を利用して、木編集操作の削減を行うことができる。
【００６４】
パラメタ推定部３４における木編集操作の削減は、具体的には、訓練データの集合に含まれるすべての訓練データに基づいてパラメタを学習する毎（１ｅｐｏｃｈ毎）に、荷重行列Ｗｂ（ｔ），Ｗａ（ｔ）が含む０の値をとる荷重の数を、それぞれｍ番目の入力値であるｙ（ｎ−１）ｍ（ｔ），ｙ（ｎ＋１）ｍ（ｔ）ごとに取得し、その数が隠れベクトルｈ（ｎ）（ｔ）の次元数の半分よりも大きいとき、対応するｙ（ｎ）ｍ（ｔ），ｙ（ｎ−１）ｍ（ｔ），ｙ（ｎ＋１）ｍ（ｔ）全てのｍ番目の出力ベクトルの要素を削除する。この操作は、ｍ番目の出力ベクトルの要素に対応する木編集操作が削減されたことに対応している。この処理によって、学習が１ｅｐｏｃｈごと進むたびに木編集操作が削除されうる。当該木編集操作の削減処理は、正例及び負例に対応する２つの双方向ＲＮＮごとに行われ、正例及び負例に対応する木編集操作集合Ｓ１及びＳ０それぞれに含まれる木編集操作の総数Ｍが更新される。
【００６５】
なお、上記のパラメタ推定手法を用いるとき、木編集操作集合の初期集合をあらかじめ複数用意する必要がある。図６に木編集操作集合の初期集合の一例を示す。また、当該学習手法では局所解が存在するため、尤度の低い局所解を避けるために、事前学習を行ってもよい。
【００６６】
反復判定部３６は、反復終了条件を満たすまで、木編集操作系列出現確率推定部３２による推定、及びパラメタ推定部３４による更新を繰り返す。反復終了条件としては、例えば予め定められた回数を繰り返すようにすればよい。
【００６７】
以上のように本実施の形態におけるパラメタ学習装置１００は、パラメタ集合ＤＢ４０に格納されているパラメタの内、双方向ＲＮＮの荷重行列の値と、出力層の種類数（木編集操作系列に含まれる木編集操作の種類数）とを更新することによりパラメタを学習する。
【００６８】
＜本発明の実施の形態に係る類似度算出装置の構成＞
【００６９】
次に、本発明の実施の形態に係る類似度算出装置の構成について説明する。図７に示すように、本発明の実施の形態に係る類似度算出装置２００は、ＣＰＵと、ＲＡＭと、後述する類似度算出処理ルーチンを実行するためのプログラムや各種データを記憶したＲＯＭと、を含むコンピュータで構成することが出来る。この類似度算出装置２００は、機能的には図７に示すように入力部２１０と、演算部２２０とを備えている。
【００７０】
入力部２１０は、類似度を算出したい文ペアの入力を受け付ける。例えば、「プロメーテウスは人類に火を渡し、張り付けにされた。」と「プロメテウスは人類に火を齎して罰を受けた。」のような文ペアのテキストデータを入力として受け付ける。
【００７１】
演算部２２０は、順序付木生成部２３０と、木編集操作系列出現確率推定部２３２と、文類似度出力部２３４と、パラメタ集合ＤＢ２４０とを含んで構成されている。
【００７２】
順序付木生成部２３０は、入力部２１０で受け付けた文ペアに含まれる文の各々について、形態素を表すノードの各々から構成され、かつ、ノードの各々に順序が付けられた木構造である順序付き木を生成する。なお、順序付木生成部２３０の具体的な処理は、上記パラメタ学習装置１００の順序付木生成部３０と同様であるため詳細な説明を省略する。
【００７３】
パラメタ集合ＤＢ２４０には、上記パラメタ学習装置１００により学習されたパラメタ集合ＤＢ４０と同様のものが格納されている。
【００７４】
木編集操作系列出現確率推定部２３２は、順序付木生成部２３０により生成された文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための、複数の木編集操作系列の各々に含まれる木編集操作の各々について、２つの順序付き木に基づいて算出される当該木編集操作の特徴ベクトルと、パラメタ集合ＤＢ２４０に記憶された、正例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、当該木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための複数の木編集操作系列の各々の出現確率を推定する。
【００７５】
文類似度出力部２３４は、木編集操作系列出現確率推定部２３２によって推定された複数の木編集操作系列の各々の出現頻度の総和を、文ペアの類似度として出力する。ここでは、文類似度ｐ（ｔｄ＝１│τｔ，τｈ）（＝１−ｐ（ｔｄ＝０│τｔ，τｈ））は以下(８)式で算出される。
【００７６】
【数８】
2017010249.tif 000010
【００７７】
ここでｅは、上記パラメタ学習装置１００により正例に対する出力層として学習された木編集操作の集合Ｓ１、Ｓｓ、Ｓｚの和集合の部分集合であり、木編集操作系列である。
【００７８】
＜本発明の実施の形態に係るパラメタ学習装置の作用＞
【００７９】
次に、本発明の実施の形態に係るパラメタ学習装置１００の作用について説明する。入力部１０において訓練データの集合を受け付けると、パラメタ学習装置１００は、図８に示すパラメタ学習処理ルーチンを実行する。
【００８０】
まず、ステップＳ１００では、入力部１０において受け付けた訓練データの集合における訓練データの各々に含まれる学習対象文及び学習目標文の各々について、木構造である順序付き木を生成する。
【００８１】
次に、ステップＳ１０２では、入力部１０において受け付けた訓練データの集合の正例の訓練データの各々に対し、ステップＳ１００で生成された学習対象文の順序付き木を学習目標文の順序付き木に変形するための、正例に対応する木編集操作集合Ｓ１，Ｓ０に含まれる木編集操作からなる複数の木編集操作系列ｅの各々に含まれる木編集操作ｅｎの各々について、上記（２）式に従って、木編集操作ｅｎの特徴ベクトルと、後述するステップＳ１０６で更新された、正例の荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、当該木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、上記（３）式に従って、訓練データの学習対象文の順序付き木τｔを学習目標文の順序付き木τｈに変形するための複数の木編集操作系列ｅの各々の出現確率を推定する。
【００８２】
また、ステップＳ１０２では、負例の訓練データの各々に対し、ステップＳ１００で生成された学習対象文の順序付き木を学習目標文の順序付き木に変形するための、負例に対応する木編集操作集合Ｓ１，Ｓ０に含まれる木編集操作からなる複数の木編集操作系列ｅの各々に含まれる木編集操作ｅｎの各々について、上記（２）式に従って、木編集操作ｅｎの特徴ベクトルと、後述するステップＳ１０６で更新された、負例の荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、当該木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、上記（３）式に従って、訓練データの学習対象文の順序付き木τｔを学習目標文の順序付き木τｈに変形するための複数の木編集操作系列ｅの各々の出現確率を推定する。
【００８３】
ステップＳ１０４では、ステップＳ１０２で推定された木編集操作系列の各々の出現確率と、後述するステップＳ１０６で更新された、正例又は負例の荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、複数の木編集操作系列ｅの各々について、上記（６）式に従って、訓練データの各々における正例又は負例に対応する学習対象文及び学習目標文の２つの順序付き木τｔ，τｈを用いて木編集操作系列ｅの出現確率ｐ（ｅ│τｔｄ，τｈｄ）を求める。
【００８４】
ステップＳ１０６では、ステップＳ１０４で算出された出現確率に基づいて、正例に対応する荷重行列Ｗｘ（1），Ｗａ（1），Ｗｂ（1），Ｗｈ（1），及び負例に対応する荷重行列Ｗｘ（0），Ｗａ（0），Ｗｂ（0），Ｗｈ（0）に対して、上記（７）式に従って、ｐ（ｅ│τｔｄ，τｈｄ）ｌｏｇ  ｐ（ｔｄ｜ｅ，τｔｄ，τｈｄ）を最大化する荷重行列Ｗｘ（ｔ），Ｗａ（ｔ），Ｗｂ（ｔ），Ｗｈ（ｔ）を求め、パラメタ集合ＤＢ４０に記憶されている荷重行列Ｗｘ（ｔ），Ｗａ（ｔ），Ｗｂ（ｔ），Ｗｈ（ｔ）を更新する。
【００８５】
ステップＳ１０８では、ステップＳ１０４〜Ｓ１０６の処理を予め定められた回数繰り返したかを判定し、繰り返していなければステップＳ１０４へ戻って繰り返し、繰り返していればステップＳ１１０へ移行する。
【００８６】
ステップＳ１１０では、ステップＳ１０６で更新された荷重行列Ｗｂ（ｔ），Ｗａ（ｔ）が含む０の値をとる荷重の数を、それぞれｍ番目の入力値であるｙ（ｎ−１）ｍ（ｔ），ｙ（ｎ＋１）ｍ（ｔ）ごとに取得し、その数が隠れベクトルｈ（ｎ）（ｔ）の次元数の半分よりも大きいとき、パラメタ集合ＤＢ４０において対応するｙ（ｎ）ｍ（ｔ），ｙ（ｎ−１）ｍ（ｔ），ｙ（ｎ＋１）ｍ（ｔ）全てのｍ番目の出力ベクトルの要素を削除することにより、木編集操作集合Ｓ１及びＳ０と、木編集操作集合Ｓ１及びＳ０それぞれに含まれる木編集操作の総数Ｍとを更新する。
【００８７】
ステップＳ１１２では、予め定められた回数を繰り返す反復終了条件を満たすかを判定し、反復終了条件を満たしていればパラメタ学習処理ルーチンを終了し、反復終了条件を満たしていなければステップＳ１０２へ戻ってステップＳ１０２〜ステップＳ１１０の処理を繰り返す。
【００８８】
以上説明したように、本実施の形態に係るパラメタ学習装置によれば、正例の訓練データの各々について、生成された学習対象文の順序付き木を学習目標文の順序付き木に変形するための、複数の木編集操作系列の各々に含まれる木編集操作の各々について、正例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、訓練データの学習対象文の順序付き木を学習目標文の順序付き木に変形するための複数の木編集操作系列の各々の出現確率を推定し、負例の訓練データの各々について、順序付木生成部３０により生成された学習対象文の順序付き木を学習目標文の順序付き木に変形するための、複数の木編集操作系列の各々に含まれる木編集操作の各々について、負例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、学習対象文の順序付き木を学習目標文の順序付き木に変形するための複数の木編集操作系列の各々の出現確率を推定し、推定された複数の木編集操作系列の各々の出現確率に基づいて、正例に対応する荷重行列及び負例に対応する荷重行列に対して、訓練データの各々が正例であるか負例であるかを示す教師信号ベクトルの尤もらしさを表す尤度関数を最適化するように、正例に対応する荷重行列及び負例に対応する荷重行列を更新することを、予め定められた反復終了条件を満たすまで繰り返すことにより、離れた単語間における依存関係を考慮して文ペアの類似度を算出するためのパラメタを学習することができる。
【００８９】
＜本発明の実施の形態に係る類似度算出装置の作用＞
【００９０】
次に、本発明の実施の形態に係る類似度算出装置２００の作用について説明する。入力部２１０において文ペアを受け付けると、類似度算出装置２００は、図９に示す類似度算出処理ルーチンを実行する。
【００９１】
ステップＳ２００では、入力部２１０において受け付けた文ペアに含まれる文の各々について、木構造である順序付き木を生成する。
【００９２】
ステップＳ２０２では、順序付木生成部２３０により生成された文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための、正例に対応する木編集操作集合Ｓ１に含まれる木編集操作からなる複数の木編集操作系列の各々に含まれる木編集操作の各々について、２つの順序付き木に基づいて算出される当該木編集操作の特徴ベクトルと、パラメタ集合ＤＢ２４０に記憶された、正例に対応する荷重行列を用いたＪｏｒｄａｎ型ＲＮＮとに基づいて、当該木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための複数の木編集操作系列の各々の出現確率を推定する。
【００９３】
ステップＳ２０４では、上記（８）式に従って、ステップＳ２０２で推定された複数の木編集操作系列の各々の出現頻度の総和を、文ペアの類似度として出力して処理を終了する。
【００９４】
以上説明したように、本実施の形態に係る類似度算出装置によれば、生成された文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための、複数の木編集操作系列の各々に含まれる木編集操作の各々について、生成された順序付き木から抽出される、木編集操作の特徴ベクトルと、特徴ベクトルから木編集操作の出現確率を推定するための、予め学習されたＪｏｒｄａｎ型ＲＮＮとに基づいて、木編集操作の出現確率を推定し、推定された木編集操作の出現確率に基づいて、文ペアの一方の文の順序付き木を他方の文の順序付き木に変形するための木編集操作の系列の各々の出現確率を推定し、推定された木編集操作の系列の各々の出現頻度の総和を、文ペアの類似度として出力することにより、離れた単語間における依存関係を考慮して、文ペアの類似度を算出することができる。
【００９５】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
また、本発明は、周知のコンピュータに媒体もしくは通信回線を介して、図１の構成図に示された機能を実現するプログラムをインストールすることによっても実現可能である。
【符号の説明】
【００９６】
１０、１１０  入力部
２０、２２０  演算部
３０、２３０  順序付木生成部
３２、２３２  木編集操作系列出現確率推定部
３４   パラメタ推定部
３６   反復判定部
１００ パラメタ学習装置
２００ 類似度算出装置
２３４ 文類似度出力部
【図１】
2017010249.tif 000011
【図２】
2017010249.tif 000012
【図３】
2017010249.tif 000013
【図４】
2017010249.tif 000014
【図５】
2017010249.tif 000015
【図６】
2017010249.tif 000016
【図７】
2017010249.tif 000017
【図８】
2017010249.tif 000018
【図９】
2017010249.tif 000019