(57)【要約】【課題】単語ベクトルデータ集合の語彙を限定しなくても、精度よく単語ベクトルを生成することができるようにする。【解決手段】入力文Ｐを表わすベクトルを生成するベクトル生成装置１０であって、定義文考慮文脈符号化部２８０が、入力文Ｐに含まれる各単語に対するベクトルに基づいて、入力文Ｐを表すベクトルの系列を生成する際に、見出し語ｙと、見出し語ｙを定義する文である定義文Ｄｙとの組を格納した辞書ＤＢ２３０に基づいて、入力文Ｐに含まれる単語のうち、辞書ＤＢに格納されている見出し語である単語について、見出し語ｙの定義文Ｄｙを用いて、入力文Ｐを表すベクトルの系列を生成する。【選択図】図１
2019153098.tif 000002
【特許請求の範囲】
【請求項１】
入力文を表わすベクトルの系列を生成するベクトル生成装置であって、
前記入力文に含まれる各単語に対応するベクトルに基づいて、前記入力文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、前記入力文に含まれる単語のうち、前記辞書ＤＢに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する定義文考慮文脈符号化部
を備えることを特徴とするベクトル生成装置。
【請求項２】
前記定義文考慮文脈符号化部は、
前記入力文に含まれる単語のうち、前記辞書ＤＢに格納されている見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する際に、前記入力文と、前記単語を見出し語とする前記定義文に含まれる各単語との関係性を考慮して、当該見出し語を表すベクトルを生成し、前記入力文に含まれる単語のベクトルとして用いる
ことを特徴とする請求項１記載のベクトル生成装置。
【請求項３】
前記入力文は、第１の入力文と、第２の入力文とのペアであって、
前記定義文考慮文脈符号化部により得られた、前記第１の入力文を表わす第１ベクトルの系列と、前記第２の入力文を表わす第２ベクトルの系列とに基づいて、前記第１の入力文と、前記第２の入力文との関係性を示す関係ラベルを推定する関係ラベル推定部
を更に備えることを特徴とする請求項１又は２記載のベクトル生成装置。
【請求項４】
関係性を示す関係ラベルが予め付与された文ペアの入力を受け付ける入力部と、
ニューラルネットワークを用いて、前記文ペアに含まれる各単語に対応するベクトルに基づいて、前記文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、前記文ペアに含まれる単語のうち、前記辞書ＤＢに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記文ペアの各文を表すベクトルの系列をそれぞれ生成する定義文考慮文脈符号化部と、
ニューラルネットワークを用いて、前記定義文考慮文脈符号化部により得られた、前記文ペアの各文を表すベクトルの系列の各々に基づいて、前記文ペアの関係性を示す関係ラベルを推定する関係ラベル推定部と、
前記文ペアに付与された関係ラベルと、前記関係ラベル推定部により推定された関係ラベルとに基づいて、前記ニューラルネットワークのパラメータを更新するパラメータ学習部と、
を備えることを特徴とする文ペア学習装置。
【請求項５】
入力文を表わすベクトルの系列を生成するベクトル生成方法であって、
定義文考慮文脈符号化部が、前記入力文に含まれる各単語に対応するベクトルに基づいて、前記入力文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、前記入力文に含まれる単語のうち、前記辞書ＤＢに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する
ことを特徴とするベクトル生成方法。
【請求項６】
入力部が、関係性を示す関係ラベルが予め付与された文ペアの入力を受け付け、
定義文考慮文脈符号化部が、ニューラルネットワークを用いて、前記文ペアに含まれる各単語に対応するベクトルに基づいて、前記文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、前記文ペアに含まれる単語のうち、前記辞書ＤＢに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記文ペアの各文を表すベクトルの系列をそれぞれ生成し、
関係ラベル推定部が、ニューラルネットワークを用いて、前記定義文考慮文脈符号化部により得られた、前記文ペアの各文を表すベクトルの系列の各々に基づいて、前記文ペアの関係性を示す関係ラベルを推定し、
パラメータ学習部が、前記文ペアに付与された関係ラベルと、前記関係ラベル推定部により推定された関係ラベルとに基づいて、前記ニューラルネットワークのパラメータを更新する
ことを特徴とする文ペア学習方法。
【請求項７】
コンピュータを、請求項１乃至３の何れか１項記載のベクトル生成装置、又は請求項４記載の文ペア学習装置の各部として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラムに係り、特に、ニューラルネットワークが自然言語処理に用いる入力文のベクトルを有用に生成するためのベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラムに関する。
【背景技術】
【０００２】
従来より、機械による文の意味理解のための基本的な技術のひとつとして、文と文との関係性を表わすラベルを推定する関係性推定技術がある。例えば、文と文の含意関係を認識する課題は「含意認識」として幅広く研究されている。
【０００３】
含意認識の課題では、前提文（文Ｐ）と呼ばれる文と仮定文（文Ｈ）と呼ばれる文のペアが与えられ、文Ｐと文Ｈの含意関係を推定する。含意関係として、文Ｐが真であるときに文Ｈが（１）真である、（２）偽である、（３）判断がつけられない、の３種類の関係が定義されている。
【０００４】
このような関係性推定の課題をニューラルネットワークにより解く際には、まず事前に文ペアと当該文ペアの関係を示す関係ラベルとの集合が学習データとして大量に与えられ、学習器は文ペアの関係ラベルを正しく推定できるようニューラルネットワークのパラメータを学習しておく。
【０００５】
そして、関係性推定の際には、入力された文ペアを、ｗｏｒｄ２ｖｅｃやＧｌｏｖｅに代表される既存の単語ベクトルデータ集合を用いて、単語ベクトル系列のペアに変換する。そして、この単語ベクトル系列のペアを、関係性推定の際の特徴量として用いる。
【０００６】
このようなニューラルネットワークによる関係性推定技術として、非特許文献１では、単語ベクトルデータ集合と学習データ以外に辞書ＤＢ（データベース）を用いて含意認識を行う。辞書ＤＢは、見出し語ｙと見出し語ｙを説明する文のペアで構成される。ここで、見出し語ｙを説明する文を見出し語の定義文Ｄｙと呼ぶ。また、全ての見出し語ｙの集合を語彙ＶＤと呼ぶ。
【０００７】
非特許文献１では、単語ベクトル系列のペアに変換する際、文ペアを構成する単語のうち、単語ベクトルデータ集合に含まれない単語について、辞書ＤＢから当該単語を見出し語ｙとする単語の定義文Ｄｙを抽出し、ニューラルネットワークを用いて定義文Ｄｙに含まれる単語をベクトルに変換し、合成することで、当該単語の単語ベクトルとする。
【０００８】
これは、推定対象となる文ペアに含まれる単語のうち、既存の単語ベクトルデータ集合には含まれにくい低頻度語・固有名詞・専門用語に対処するためである。
【０００９】
非特許文献１の実験では、単語ベクトルデータ集合の語彙ＶＥを限定した状況下での精度向上が確認された。また、単語の定義文Ｄｙを利用することで、学習後に学習データに含まれない専門用語などの単語を追加した場合も、関係性推定に資するベクトル表現を得ることができる。
【００１０】
既存の手法では単語ベクトルデータ集合に含まれない単語のベクトルはランダムまたは任意に設定することが多い。
【００１１】
この点、非特許文献１では、辞書の定義文を変換するネットワークを学習時に獲得しているため、学習されたニューラルネットワークを用いて定義文をベクトルに変換することができる。さらに、辞書への単語と定義文Ｄｙの追加はモデルの学習後であっても逐次的に行うことが可能である。
【先行技術文献】
【非特許文献】
【００１２】
【非特許文献１】D. Bahdanau, T. Bosc, S. Jastrzebski, E. Grefenstette, P. Vincent, and Y. Bengio. Learning to compute word embeddings on the fly. CoRR, bs/1706.00286, 2017.
【発明の概要】
【発明が解決しようとする課題】
【００１３】
しかし、非特許文献１では推定対象となる文ペアに含まれる単語を、辞書ＤＢの定義文Ｄｙを用いてベクトル化する際に、推定対象である文ペアの情報を使わず、一意なベクトルに変換しているという課題がある。
【００１４】
実験で示された精度の向上も単語ベクトルデータ集合の語彙ＶＥを限定した特別な状況下での精度向上に留まっている。
【００１５】
また、辞書ＤＢの定義文Ｄｙは単語ベクトル系列で表現されるため、単語ベクトル系列から単語ベクトルに変換する際に多くの情報が失われる、という性質がある。
【００１６】
よって、単語ベクトル系列である定義文Ｄｙは、文関係性認識に資する特徴量をできるだけ残して単語ベクトルに変換されることが望ましい。
【００１７】
本発明は上記の点に鑑みてなされたものであり、入力文を表す適切なベクトルを生成することができるベクトル生成装置、ベクトル生成方法、およびプログラムを提供することを目的とする。
【００１８】
また、本発明は、文ペアの関係性を精度よく推定するためのニューラルネットワークを学習することができる文ペア学習装置、文ペア学習方法、およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
本発明に係るベクトル生成装置は、入力文を表わすベクトルの系列を生成するベクトル生成装置であって、前記入力文に含まれる各単語に対応するベクトルに基づいて、前記入力文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、前記入力文に含まれる単語のうち、前記辞書ＤＢに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する定義文考慮文脈符号化部を備えて構成される。
【００２０】
また、本発明に係るベクトル生成方法は、入力文を表わすベクトルの系列を生成するベクトル生成方法であって、定義文考慮文脈符号化部が、前記入力文に含まれる各単語に対応するベクトルに基づいて、前記入力文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、前記入力文に含まれる単語のうち、前記辞書ＤＢに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する。
【００２１】
本発明に係るベクトル生成装置及びベクトル生成方法によれば、定義文考慮文脈符号化部が、入力文に含まれる各単語に対応するベクトル基づいて、入力文を表すベクトルの系列を生成する際に、見出し語と、当該見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、入力文に含まれる単語のうち、辞書ＤＢに格納されている当該見出し語である単語について、当該見出し語の定義文を用いて、入力文を表すベクトルの系列を生成する。
【００２２】
このように、入力文に含まれる各単語に対応するベクトルに基づいて、入力文を表すベクトルの系列を生成する際に、見出し語と、当該見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、入力文に含まれる単語のうち、辞書ＤＢに格納されている当該見出し語である単語について、当該見出し語の定義文を用いて、入力文を表すベクトルの系列を生成することにより、入力文を表す適切なベクトルを生成することができる。
【００２３】
また、本発明に係るベクトル生成装置の前記定義文考慮文脈符号化部は、前記入力文に含まれる単語のうち、前記辞書ＤＢに格納されている見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する際に、前記入力文と、前記単語を見出し語とする前記定義文に含まれる各単語との関係性を考慮して、当該見出し語を表すベクトルを生成し、前記入力文に含まれる当該単語のベクトルとして用いることができる。
【００２４】
また、本発明に係るベクトル生成装置は、前記入力文は、第１の入力文と、第２の入力文とのペアであって、前記定義文考慮文脈符号化部により得られた、前記第１の入力文を表わす第１ベクトルの系列と、前記第２の入力文を表わす第２ベクトルの系列とに基づいて、前記第１の入力文と、前記第２の入力文との関係性を示す関係ラベルを推定する関係ラベル推定部を更に備えることができる。
【００２５】
本発明に係る文ペア学習装置は、関係性を示す関係ラベルが予め付与された文ペアの入力を受け付ける入力部と、ニューラルネットワークを用いて、前記文ペアに含まれる各単語に対応するベクトルに基づいて、前記文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、前記文ペアに含まれる単語のうち、前記辞書ＤＢに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記文ペアの各文を表すベクトルの系列をそれぞれ生成する定義文考慮文脈符号化部と、ニューラルネットワークを用いて、前記定義文考慮文脈符号化部により得られた、前記文ペアの各文を表すベクトルの系列の各々に基づいて、前記文ペアの関係性を示す関係ラベルを推定する関係ラベル推定部と、前記文ペアに付与された関係ラベルと、前記関係ラベル推定部により推定された関係ラベルとに基づいて、前記ニューラルネットワークのパラメータを更新するパラメータ学習部と、を備えて構成される。
【００２６】
また、本発明に係る文ペア学習方法は、入力部が、関係性を示す関係ラベルが予め付与された文ペアの入力を受け付け、定義文考慮文脈符号化部が、ニューラルネットワークを用いて、前記文ペアに含まれる各単語に対応するベクトルに基づいて、前記文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、前記文ペアに含まれる単語のうち、前記辞書ＤＢに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記文ペアの各文を表すベクトルの系列をそれぞれ生成し、関係ラベル推定部が、ニューラルネットワークを用いて、前記定義文考慮文脈符号化部により得られた、前記文ペアの各文を表すベクトルの系列の各々に基づいて、前記文ペアの関係性を示す関係ラベルを推定し、パラメータ学習部が、前記文ペアに付与された関係ラベルと、前記関係ラベル推定部により推定された関係ラベルとに基づいて、前記ニューラルネットワークのパラメータを更新する。
【００２７】
本発明に係る文ペア学習装置及び文ペア学習方法によれば、入力部が、関係性を示す関係ラベルが予め付与された文ペアの入力を受け付け、定義文考慮文脈符号化部が、ニューラルネットワークを用いて、文ペアに含まれる各単語に対応するベクトルに基づいて、文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、文ペアに含まれる単語のうち、辞書ＤＢに格納されている見出し語である単語について、見出し語の定義文を用いて、文ペアの各文を表すベクトルの系列をそれぞれ生成する。
【００２８】
そして、関係ラベル推定部が、ニューラルネットワークを用いて、定義文考慮文脈符号化部により得られた、文ペアの各文を表すベクトルの系列の各々に基づいて、文ペアの関係性を示す関係ラベルを推定し、パラメータ学習部が、文ペアに付与された関係ラベルと、関係ラベル推定部により推定された関係ラベルとに基づいて、ニューラルネットワークのパラメータを更新する。
【００２９】
このように、ニューラルネットワークを用いて、文ペアに含まれる各単語に対応するベクトルに基づいて、文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、文ペアに含まれる単語のうち、辞書ＤＢに格納されている見出し語である単語について、見出し語の定義文を用いて、文ペアの各文を表すベクトルの系列をそれぞれ生成し、ニューラルネットワークを用いて、文ペアの各文を表すベクトルの系列の各々に基づいて、文ペアの関係性を示す関係ラベルを推定し、文ペアに付与された関係ラベルと、推定された関係ラベルとに基づいて、ニューラルネットワークのパラメータを更新することにより、文ペアの関係性を精度よく推定するためのニューラルネットワークを学習することができる。
【００３０】
本発明に係るプログラムは、上記のベクトル生成装置、又は文ペア学習装置の各部として機能させるためのプログラムである。
【発明の効果】
【００３１】
本発明のベクトル生成装置、ベクトル生成方法、およびプログラムによれば、入力文を表す適切なベクトルを生成することができる。
【００３２】
また、本発明の文ペア学習装置、文ペア学習方法、およびプログラムによれば、文ペアの関係性を精度よく推定するためのニューラルネットワークを学習することができる。
【図面の簡単な説明】
【００３３】
【図１】本発明の第１の実施の形態に係るベクトル生成装置の構成を示す機能ブロック図である。
【図２】本発明の第１の実施の形態に係るベクトル生成装置のベクトル生成処理ルーチンを示すフローチャートである。
【図３】本発明の第２の実施の形態に係る文ペア学習装置の構成を示す機能ブロック図である。
【図４】本発明の第２の実施の形態に係る関係ラベル推定装置の構成を示す機能ブロック図である。
【図５】本発明の第２の実施の形態に係る文ペア学習装置の学習処理ルーチンを示すフローチャートである。
【図６】本発明の第２の実施の形態に係る関係ラベル推定装置の関係ラベル推定処理ルーチンを示すフローチャートである。
【図７】本発明の第２の実施の形態に係る実験１の結果を示す図である。
【図８】本発明の第２の実施の形態に係る実験２の結果を示す図である。
【図９】本発明の第２の実施の形態に係る実験３の結果を示す図である。
【発明を実施するための形態】
【００３４】
以下、本発明の実施の形態について図面を用いて説明する。
【００３５】
＜本発明の第１の実施の形態に係るベクトル生成装置の概要＞
まず、本発明の実施形態の概要について説明する。
【００３６】
ニューラルネットワークによる、入力を文（テキスト）とする様々なタスク、例えば分類タスク、文生成タスク等では、まず、最初に入力となる文をベクトル表現に変換する。
【００３７】
本実施形態では、単語の定義文Ｄｙをベクトル化する際に、処理対象である文の情報を用いることで、より推定に資する特徴量を残した変換をする。
【００３８】
これにより、文のベクトル表現をより高精度化することができ、その後のタスクの精度を向上させることができる。
【００３９】
＜本発明の第１の実施の形態に係るベクトル生成装置の構成＞
図１を参照して、本発明の実施の形態に係るベクトル生成装置１０の構成について説明する。図１は、本発明の実施の形態に係るベクトル生成装置１０の構成を示すブロック図である。
【００４０】
ベクトル生成装置１０は、ＣＰＵと、ニューラルネットワークの計算を実行するためのＧＰＵと、ＲＡＭと、後述するベクトル生成処理ルーチンを実行するためのプログラムを記憶したＲＯＭとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
【００４１】
図１に示すように、本実施形態に係るベクトル生成装置１０は、入力部１００と、解析部２００と、出力部１１０とを備えて構成される。
【００４２】
入力部１００は、入力文Ｐの入力を受け付ける。
【００４３】
入力部１００は、受け付けた入力文Ｐを、トークン系列生成部２１０に渡す。
【００４４】
解析部２００は、見出し語ｙと、当該見出し語ｙを定義する文である定義文Ｄｙとの組を格納した辞書ＤＢ２３０に基づいて、入力文Ｐに含まれる単語のうち、辞書ＤＢ２３０に格納されている見出し語である単語について、見出し語ｙの定義文Ｄｙを表すベクトルを生成し、生成された定義文Ｄｙを表すベクトルを用いて、入力文Ｐを表すベクトルを生成する。
【００４５】
具体的には、解析部２００は、トークン系列生成部２１０と、定義文生成部２２０と、辞書ＤＢ（データベース）２３０と、トークン符号化部２４０と、トークンＤＢ（データベース）２５０と、第１文脈符号化部２６０と、第２文脈符号化部２７０と、定義文考慮文脈符号化部２８０とを備えて構成される。
【００４６】
トークン系列生成部２１０は、入力文Ｐから、トークンの系列Ｐを生成する。
【００４７】
具体的には、トークン系列生成部２１０は、入力文Ｐをトークンに分割し、トークンの系列Ｐを生成する。入力された文の長さをＬＰとすると、生成されるトークンの系列Ｐは、ＬＰの大きさのベクトルとなる。
【００４８】
トークンとして単語を用いた場合、文の長さは単語の数で定義される。トークンとして単語以外に任意の分割単位を用いることができる。以下、本実施形態では、トークンとして単語を用いた場合について説明する。
【００４９】
そして、トークン系列生成部２１０は、生成した単語の系列Ｐ’を、定義文生成部２２０、及びトークン符号化部２４０に渡す。
【００５０】
定義文生成部２２０は、トークン系列生成部２１０により生成された単語の系列Ｐ’のうち、辞書ＤＢ２３０に格納されている見出し語である単語の各々について、当該見出し語ｙの定義文Ｄｙから単語の系列Ｄを生成する。
【００５１】
具体的には、定義文生成部２２０は、辞書ＤＢ２３０の見出し語ｙのうち、トークン系列生成部２１０により生成された単語の系列Ｐ’に含まれる単語を検索し、該当する単語の各々について、当該単語を見出し語ｙとする定義文Ｄｙを単語に分割して系列とした単語の系列Ｄを生成する。単語の系列Ｐ’に含まれる見出し語である単語ｗの集合を語彙ＶＰとする。
【００５２】
ここで、語彙ＶＰの語彙数（単語ｗ異なり数）をＮｅ、定義文Ｄｙの長さで最大のものをＬｅとすると、語彙ＶＰに含まれる単語ｗ毎に生成される単語の系列Ｄは、Ｌｅの大きさのベクトルとなる。なお、定義文Ｄｙの長さがＬｅに満たない場合は、特殊単語「ＰＡＤ」を末尾に追加する等により長さをＬｅとする。
【００５３】
そして、定義文生成部２２０は、語彙ＶＰに含まれる単語ｗ毎に生成した単語の系列Ｄ（Ｎｅ個分）を、トークン符号化部２４０及び第２文脈符号化部２７０に渡す。
【００５４】
辞書ＤＢ２３０は、見出し語ｙの単語と、見出し語ｙの定義文Ｄｙとの組を格納している。辞書ＤＢ２３０に含まれる見出し語ｙの集合を語彙ＶＤとする。
【００５５】
トークン符号化部２４０は、トークン系列生成部２１０により生成された単語の系列Ｐと、定義文生成部２２０により語彙ＶＰに含まれる単語ｗ毎に生成された単語の系列Ｄと、トークンＤＢ２５０に格納された複数の単語ベクトルとに基づいて、単語の系列Ｐに含まれる単語の各々についての単語ベクトル系列Ｐ１と、語彙ＶＰに含まれる単語ｗ毎の、単語の系列Ｄに含まれる単語の各々についての単語ベクトル系列Ｄ１とを生成する。
【００５６】
具体的には、トークン符号化部２４０は、単語の系列Ｐに含まれる単語の各々について、トークンＤＢ２５０から当該単語に対応する単語ベクトルを抽出して、単語ベクトル系列Ｐ１を生成する。
【００５７】
同様に、トークン符号化部２４０は、語彙ＶＰに含まれる単語ｗ毎に、単語の系列Ｄに含まれる単語の各々について、トークンＤＢ２５０から当該単語に対応する単語ベクトルを抽出して、単語ベクトル系列Ｄ１を生成する。
【００５８】
ここで、トークンＤＢ２５０に格納された単語ベクトルの次元をｄとすると、単語ベクトル系列Ｐ１はＬＰ×ｄの大きさの行列、語彙ＶＰに含まれる単語ｗ毎の単語ベクトル系列Ｄ１はＬｅ×ｄの大きさの行列（Ｎｅ個分）となる。
【００５９】
そして、トークン符号化部２４０は、生成した単語ベクトル系列Ｐ１を第１文脈符号化部２６０に、単語ベクトル系列Ｄ１を第２文脈符号化部２７０に、それぞれ渡す。単語ベクトル系列Ｐ１、Ｄ１は、定義文考慮文脈符号化部２８０で用いる場合もある。
【００６０】
トークンＤＢ２５０は、単語と、当該単語に対応する単語ベクトルの対が複数格納されている。単語ベクトルは、予めニューラルネットワークにより学習された単語のベクトルの集合である。
【００６１】
具体的には、例えばトークンＤＢ２５０は、単語と、当該単語に対応する単語ベクトルの対として、ｗｏｒｄ２ｖｅｃやＧｌｏＶｅ等既存の単語ベクトルデータ集合を格納しておけばよい。また、既存の単語ベクトルデータ集合の単語ベクトルに、新しく学習した単語ベクトルを繋げてもよい。単語ベクトルの学習には、単語の文字情報を符号化する技術（参考文献１）等、任意の単語ｅｍｂｅｄｄｉｎｇ技術が使用可能である。単語ベクトルは、誤差逆伝播法によって計算できる勾配から学習することも可能である。
［参考文献１］Convolutional neural networks for sentence classification.
【００６２】
また、トークンＤＢ２５０は、第２文脈符号化部２７０により取得した単語ベクトル系列Ｄ２を格納する。
【００６３】
第１文脈符号化部２６０は、トークン符号化部２４０により生成された単語ベクトル系列Ｐ１を、ニューラルネットワークを用い、文脈を考慮して単語ベクトル系列Ｐ２に変換する。
【００６４】
ここでのニューラルネットワークとしては、例えばＲＮＮが挙げられる。ＲＮＮの構造には、ＬＳＴＭやＳＲＵ等の既存技術を用いる。ＳＲＵは、参考文献２によって提案されたＲＮＮの一種である。
［参考文献２］T. Lei and Y. Zhang. Training RNNs as fast as CNNs. CoRR, abs/1709.02755, 2017.
【００６５】
本実施形態においては、第１文脈符号化部２６０は、文頭から文末への順方向に処理するＲＮＮと逆方向に処理するＲＮＮとからなる、双方向ＲＮＮ（Ｂｉｄｉｒｅｃｔｉｏｎａｌ  ＲＮＮ）を用いて、単語ベクトル系列Ｐ１を単語ベクトル系列Ｐ２に変換する。双方向ＲＮＮの出力する単語ベクトルの次元をｄ１とすると、単語ベクトル系列Ｐ２はＬＰ×ｄ１の大きさの行列となる。
【００６６】
そして、第１文脈符号化部２６０は、変換した単語ベクトル系列Ｐ２を、定義文考慮文脈符号化部２８０に渡す。
【００６７】
第２文脈符号化部２７０は、トークン符号化部２４０により生成された語彙ＶＰに含まれる単語ｗ毎の単語ベクトル系列Ｄ１を、ニューラルネットワークによって単語ベクトル系列Ｄ２に変換する。
【００６８】
具体的には、第２文脈符号化部２７０は、語彙ＶＰに含まれる単語ｗ毎に、第１文脈符号化部２６０と同様の手法により、単語ベクトル系列Ｄ１を単語ベクトル系列Ｄ２に変換する。語彙ＶＰに含まれる単語ｗ毎の単語ベクトル系列Ｄ２はＬｅ×ｄ１の大きさの行列（Ｎｅ個分）となる。
【００６９】
第２文脈符号化部２７０の学習するニューラルネットワークのパラメータは、第１文脈符号化部２６０とは別に保持するが、パラメータを文脈符号化部２６０と共有する構成としてもよい。
【００７０】
ここで、定義文Ｄｙが複数あるときは、定義文Ｄｙ同士をつなげることにより、一つの文として処理することができる。
【００７１】
また、単語ベクトル系列Ｄ２を用いてトークンＤＢ２５０を更新することができる。トークンＤＢ２５０の単語ｗの単語ベクトルを更新する新しい単語ベクトルとして、非特許文献１と同じく、単語ｗに対応する単語ベクトル系列Ｄ２の末尾の単語ベクトル（ＲＮＮの最終状態の出力）を用いる、または、単語ベクトル系列Ｄ２の全単語ベクトル（ＲＮＮの全状態の出力）の平均を用いる等の手法がある。
【００７２】
そして、第２文脈符号化部２７０は、語彙ＶＰに含まれる単語ｗ毎に変換した単語ベクトル系列Ｄ２（Ｎｅ個分）を、トークンＤＢ２５０及び定義文考慮文脈符号化部２８０に渡す。
【００７３】
定義文考慮文脈符号化部２８０は、入力文Ｐに含まれる単語のうち、辞書ＤＢ２３０に格納されている見出し語である単語ｗについて、入力文Ｐと、定義文Ｄｗに含まれる各単語との関係性を考慮して、単語ｗの定義文Ｄｗを表すベクトルを生成し、生成された定義文Ｄｗを表すベクトルを用いて、入力文Ｐを表すベクトルの系列を生成する。
【００７４】
ここで、考慮する入力文Ｐと定義文Ｄｗとの関係性とは、入力文Ｐを構成する単語と、定義文Ｄｗを構成する単語との意味的な類似性を指す。
【００７５】
単語ｗに対応する定義文のベクトル系列Ｄ２を用いて入力文Ｐの単語ｗの単語ベクトルを生成する際に、単語ベクトル系列Ｄ２のうち、入力文Ｐの各単語の単語ベクトルとの意味的類似性が高いものが強調されるよう、処理を行う。
【００７６】
具体的には、定義文考慮文脈符号化部２８０は、語彙ＶＰに含まれるＮｅ個の単語ｗの各々について、ステップ１〜ステップ３を繰り返す。
【００７７】
（ステップ１）Ｎｅ個の単語ベクトル系列Ｄ２のうち、処理対象となる単語ｗに対応する単語ベクトル系列をＤ４とし、第１文脈符号化部２６０により得られた単語ベクトル系列Ｐ２と、第２文脈符号化部２７０により得られた単語ベクトル系列Ｄ４とのアテンションを取り、（ステップ２）アテンション結果を用いて単語ベクトル系列Ｄ２を単語ベクトルＤ６に変換し、（ステップ３）単語ベクトルＤ６を用いて、単語ベクトル系列Ｐ２を変換した新しい単語ベクトル系列Ｐ３を求める。
【００７８】
そして、定義文考慮文脈符号化部２８０は、（ステップ４）最終的に得られた単語ベクトル系列Ｐ３を入力文Ｐを表すベクトルＰ４に変換する。
【００７９】
＜＜ステップ１＞＞
定義文考慮文脈符号化部２８０においては、第２文脈符号化部２７０により得られた語彙ＶＰに含まれるＮｅ個の単語ｗ毎の単語ベクトル系列Ｄ２（Ｌｅ×ｄ１）のうち、処理対象となる単語ｗに対応する単語ベクトル系列をＤ４とする。単語ベクトル系列Ｄ４は、Ｌｅ×ｄ１の行列である。
【００８０】
そして、定義文考慮文脈符号化部２８０は、第１文脈符号化部２６０により得られた単語ベクトル系列Ｐ２と、単語ベクトル系列Ｄ４とを用いて、アラインメント行列Ａを下記式（１）により計算する。
【００８１】
【数１】
2019153098.tif 000003
【００８２】
入力文Ｐに単語ｗが含まれている場合、アラインメント行列Ａのうち、単語ｗに相当する行は、削除または０ベクトルを代入することができる。アラインメント行列Ａから、アラインメントベクトル
2019153098.tif 000004
を計算する。
【００８３】
アラインメント行列Ａからアラインメントベクトルａへの変換では、ｍａｘ  ｐｏｏｌｉｎｇ（下記式（２））、またはａｖｅｒａｇｅ  ｐｏｏｌｉｎｇ（下記式（３））を用いて
2019153098.tif 000005
空間上のベクトルに変換した後、ソフトマックス変換をする。
【００８４】
【数２】
2019153098.tif 000006
【００８５】
【数３】
2019153098.tif 000007
【００８６】
そして、定義文考慮文脈符号化部２８０は、アテンションベクトルＤ５を下記式（４）により計算する。すなわち、アラインメント行列Ａとして求めた入力文Ｐと定義文Ｄｗの意味的なマッチング結果に基づき、定義文Ｄｗを構成する単語に重み付けを行ってアテンションベクトルＤ５を生成する。
【００８７】
【数４】
2019153098.tif 000008
【００８８】
アテンションベクトルＤ５はｎＰ個（ｎｐ≧１）用意してもよい。アテンションベクトルＤ５を複数用意するための設計の自由度として、以下の方法を組み合わせることができる。
・ｍａｘ  ｐｏｏｌｉｎｇ／ａｖｅｒａｇｅ  ｐｏｏｌｉｎｇの違い。
・ｐｏｏｌｉｎｇの方向を変えてアラインメントベクトルａを
2019153098.tif 000009
とし、アテンションベクトルＤ５を
2019153098.tif 000010
とすることができる。
・ｐｏｏｌｉｎｇせずに、アテンションベクトル
2019153098.tif 000011
に対してｐｏｏｌｉｎｇをすることができる。
【００８９】
式（４）において、単語ベクトル系列Ｄ４の代わりに、単語ベクトル系列Ｄ１のうち単語ｗに対応する単語ベクトル系列を用いることができる。
・ｐｏｏｌｉｎｇの代わりに単語ベクトル系列Ｐ２の末尾の単語ベクトル（ＲＮＮの最終状態）を使うことができる。また、入力文Ｐに単語ｗが現れる場合、単語ｗに相当する単語ベクトルを使うことができる。
・非特許文献１にあるように、元のベクトルとの差を取ったもの、要素積を取ったものを用いることができる。元のベクトルとしては、単語ベクトル系列Ｄ４の最終状態を用いる他、単語ベクトル系列Ｐ２内の単語ｗの単語ベクトルを用いることが可能である。
【００９０】
このように複数の方法を用いてアテンションベクトルを作成して利用することによって、入力文Ｐと定義文Ｄｗの各単語との、複数の観点における関係性（意味的な類似性）を考慮することができる。
【００９１】
＜＜ステップ２＞＞
ステップ１の結果、単語ｗはｎＰ個のアテンションベクトルＤ５で表現される。それぞれのアテンションベクトルＤ５を並べた行列を
2019153098.tif 000012
としたとき、定義文考慮文脈符号化部２８０は、下記式（５）を用いて、一つのベクトルＤ６に変換し、定義文を表すベクトルとする。
【００９２】
【数５】
2019153098.tif 000013
【００９３】
ここで、
2019153098.tif 000014
はニューラルネットワークのパラメータであり、学習中に学習できる他、事前に指定することが可能である。
【００９４】
また、式（５）の線形変換に加えて、多層パーセプトロン（ＭＬＰ）を用いることができる。
【００９５】
また、アテンションベクトルＤ５を縦に並べて
2019153098.tif 000015
とするようにしてもよい。この場合、パラメータＷは
2019153098.tif 000016
となる。同様に、アテンションベクトルＤ５を縦横に並べる数を自由に設計することができる。
【００９６】
＜＜ステップ３＞＞
定義文考慮文脈符号化部２８０は、単語ベクトル系列Ｐ２の内の単語ｗに対応する単語ベクトルに、定義文を表すベクトルＤ６を代入する。なお、代入の他、元の単語ベクトルにベクトルＤ６を加算または連結するようにしてもよい。なお、連結する場合は、単語ベクトルの次元ｄ１を調整する必要がある。
【００９７】
ステップ１〜３までの語彙ＶＰに含まれるＮｅ個の単語に関する反復が終わったとき、代入後の単語ベクトル系列Ｐ２を単語ベクトル系列Ｐ３とする。単語ベクトル系列Ｐ３は、ＬＰ×ｄ１の大きさの行列である。
【００９８】
なお、単語ベクトル系列Ｐ２の単語ベクトルの内、語彙ＶＤに含まれない単語ｕの単語ベクトルにも操作を加えることができる。具体的な操作として、単語ベクトル系列Ｐ２の単語ｕに対応する単語ベクトルに対し、任意のｄ１次元ベクトルの所定係数倍したものを加える、単語ベクトル系列Ｐ１のうち単語ｕに相当する単語ベクトルの所定係数倍したものを加える、またはこれらの組み合わせである。係数や加える任意のベクトルは事前に指定する場合と、ニューラルネットワークのパラメータとして学習する場合がある。
【００９９】
＜＜ステップ４＞＞
定義文考慮文脈符号化部２８０は、単語ベクトル系列Ｐ３を、ＬＳＴＭ等の既存手法を用いて単語ベクトル系列Ｐ４に変換することができる。単語ベクトル系列Ｐ４は、ＬＰ×ｄ１の大きさの行列である。
【０１００】
そして、定義文考慮文脈符号化部２８０は、生成した単語ベクトル系列Ｐ４を、入力文Ｐを表すベクトルの系列として、出力部１１０に渡す。
【０１０１】
出力部１１０は、定義文考慮文脈符号化部２８０により得られた入力文Ｐを表すベクトルの系列を出力する。
【０１０２】
＜本発明の第１の実施の形態に係るベクトル生成装置の作用＞
図２は、本発明の実施の形態に係るベクトル生成処理ルーチンを示すフローチャートである。
【０１０３】
入力部１００に入力文Ｐが入力されると、解析部２００において、図２に示すベクトル生成処理ルーチンが実行される。
【０１０４】
まず、ステップＳ１００において、入力部１００は、入力文Ｐの入力を受け付ける。
【０１０５】
ステップＳ１１０において、トークン系列生成部２１０は、入力文Ｐから、トークンの系列Ｐを生成する。
【０１０６】
ステップＳ１２０において、定義文生成部２２０は、トークン系列生成部２１０により生成された単語の系列Ｐのうち、辞書ＤＢ２３０に格納されている見出し語である単語の各々について、当該見出し語ｙの定義文Ｄｙから単語の系列Ｄを生成する。
【０１０７】
ステップＳ１３０において、トークン符号化部２４０は、上記ステップＳ１１０により生成された単語の系列Ｐと、上記ステップＳ１２０により語彙ＶＰに含まれる単語ｗ毎に生成された単語の系列Ｄと、トークンＤＢ２５０に格納された複数の単語ベクトルとに基づいて、単語の系列Ｐに含まれる単語の各々についての単語ベクトル系列Ｐ１と、語彙ＶＰに含まれる単語ｗ毎の、単語の系列Ｄに含まれる単語の各々についての単語ベクトル系列Ｄ１とを生成する。
【０１０８】
ステップＳ１４０において、第１文脈符号化部２６０は、上記ステップＳ１３０により生成された単語ベクトルＰ１を、ニューラルネットワークを用いて単語ベクトル系列Ｐ２に変換する。
【０１０９】
ステップＳ１５０において、第２文脈符号化部２７０は、上記ステップＳ１３０により生成された語彙ＶＰに含まれる単語ｗ毎の単語ベクトル系列Ｄ１を、ニューラルネットワークによって単語ベクトル系列Ｄ２に変換する。
【０１１０】
ステップＳ１６０において、トークンＤＢ２５０は、第２文脈符号化部２７０により取得した単語ベクトル系列Ｄ２を格納する。
【０１１１】
ステップＳ１７０において、定義文考慮文脈符号化部２８０は、語彙ＶＰに含まれるＮｅ個の単語のうち、１番目の単語ｗを選択する。
【０１１２】
ステップＳ１８０において、定義文考慮文脈符号化部２８０は、上記ステップＳ１５０により得られた単語ベクトルＤ２から、単語ｗに対応する単語ベクトル系列Ｄ４を抽出し、上記ステップＳ１４０により得られた単語ベクトル系列Ｐ２と、単語ベクトル系列Ｄ４とを用いて、アテンションベクトルＤ５を計算する。
【０１１３】
ステップＳ１９０において、定義文考慮文脈符号化部２８０は、ｎＰ個のアテンションベクトルＤ５を、式（５）を用いて、一つのベクトルＤ６に変換する。
【０１１４】
ステップＳ２００において、定義文考慮文脈符号化部２８０は、単語ベクトル系列Ｐ２の内の単語ｗに対応する単語ベクトルに、ベクトルＤ６を代入する。
【０１１５】
ステップＳ２１０において、定義文考慮文脈符号化部２８０は、語彙ＶＰに含まれるＮｅ個の単語の全てについて処理したか否かを判定する。
【０１１６】
全ての単語について処理していない場合（ステップＳ２１０のＮＯ）、ステップＳ２２０において、語彙ＶＰに含まれる次の単語ｗを選択し、ステップＳ１８０に戻る。
【０１１７】
一方、全ての単語について処理した場合（ステップＳ２１０のＹＥＳ）、ステップＳ２３０において、定義文考慮文脈符号化部２８０は、単語ベクトル系列Ｐ３を、ＬＳＴＭ等の既存手法を用いて入力文Ｐを表すベクトルに変換する。
【０１１８】
ステップＳ２４０において、出力部１１０は、上記ステップＳ２３０により得られた入力文Ｐを表すベクトルを出力する。
【０１１９】
以上説明したように、本実施形態に係るベクトル生成装置によれば、入力文に含まれる各単語のベクトルに基づいて、入力文を表すベクトルの系列を生成する際に、見出し語と、当該見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、入力文に含まれる単語のうち、辞書ＤＢに格納されている当該見出し語である単語について、当該見出し語の定義文を表すベクトルを生成し、定義文を表すベクトルを用いて、入力文を表すベクトルの系列を生成することにより、入力文を表す適切なベクトルを生成することができる。
【０１２０】
なお、本実施形態において、第２文脈符号化部２７０と、第１文脈符号化部２６０とを同様の構成としたが、異なる構成にしてもよい。例えば、一方を各単語ベクトルに対する線形変換とすることができる。線形変換のパラメータは学習することも事前に指定することも可能である。
【０１２１】
＜本発明の第２の実施の形態に係る文ペア学習装置の概要＞
本実施形態では、単語の定義文Ｄｙをベクトル化する際に、処理対象である文ペア（文Ｐ及び文Ｈのペア）の情報を用いることで、より推定に資する特徴量を残した変換をするようにネットワークを学習可能にする。
【０１２２】
単語の定義文Ｄｙを利用することで、単語のベクトル表現をより「文関係性の認識に資する」ように得ることが期待される。
【０１２３】
よって、推定対象である文ペアの情報を用いて単語の定義文Ｄｙを動的に変換し、文ペアに応じた異なる単語ベクトルに変換することができる。
【０１２４】
すなわち、文ペアの関係性を高精度に実施することができる。特に、低頻度語・固有名詞・専門用語を含む文の関係性推定の精度を向上することができる。
【０１２５】
また、学習データに無い専門用語が含まれるテストデータの推定を、従来よりも高い精度で行うことができる。また、学習後の専門用語の逐次的な追加が可能になる。
【０１２６】
＜本発明の第２の実施の形態に係る文ペア学習装置の構成＞
図３を参照して、本発明の第２の実施の形態に係る文ペア学習装置の構成について説明する。図３は、本発明の実施の形態に係る文ペア学習装置２０の構成を示すブロック図である。なお、第１の実施の形態に係るベクトル生成装置１０と同様の構成については、同一の符号を付して詳細な説明は省略する。
【０１２７】
図３に示すように、本実施形態に係る文ペア学習装置２０は、入力部４００と、解析部５００と、パラメータ学習部４１０とを備えて構成される。
【０１２８】
入力部４００は、関係性を示す関係ラベルが予め付与された文ペア（文Ｐ及び文Ｈ）の入力を受け付ける。
【０１２９】
そして、入力部４００は、受け付けた文ペアを、トークン系列生成部２１０及びパラメータ学習部４１０に渡す。
【０１３０】
解析部５００は、トークン系列生成部５１０と、定義文生成部５２０と、辞書ＤＢ２３０と、トークン符号化部５４０と、トークンＤＢ２５０と、第１文脈符号化部５６０と、第２文脈符号化部２７０と、定義文考慮文脈符号化部５８０と、文ペア符号化部５９０と、関係ラベル推定部６００とを備えて構成される。
【０１３１】
トークン系列生成部５１０は、文ペアに含まれる文Ｐ、文Ｈの各々について、トークンの系列Ｐ’、Ｈ’を生成する。以下、本実施形態では、第１の実施形態と同様に、トークンとして単語を用いた場合について説明する。
【０１３２】
具体的には、トークン系列生成部５１０は、トークン系列生成部２１０と同様に、文Ｐ、文Ｈをそれぞれ単語に分割し、単語の系列Ｐ’、Ｈ’を生成する。入力された文Ｐ、文Ｈの長さをそれぞれＬＰ、ＬＨとすると、生成される単語の系列Ｐ’、Ｈ’は、それぞれＬＰ、ＬＨの大きさのベクトルとなる。
【０１３３】
そして、トークン系列生成部５１０は、生成した単語の系列Ｐ’、Ｈ’を、定義文生成部５２０、及びトークン符号化部５４０に渡す。
【０１３４】
定義文生成部５２０は、トークン系列生成部５１０により生成された単語の系列Ｐ’、Ｈ’のうち、辞書ＤＢ２３０に格納されている見出し語ｙである単語の各々について、当該見出し語の定義文Ｄｙから単語の系列Ｄを生成する。
【０１３５】
具体的には、定義文生成部５２０は、辞書ＤＢ２３０の見出し語ｙのうち、トークン系列生成部５１０により生成された単語の系列Ｐ’、Ｈ’に含まれる単語を検索し、該当する単語の各々について、当該単語を見出し語とする定義文Ｄｙを単語に分割して系列とした単語の系列Ｄを生成する。単語の系列Ｐ’、Ｈ’に含まれる見出し語である単語ｗの集合を語彙ＶＰＨとする。
【０１３６】
ここで、語彙ＶＰＨの語彙数（単語ｗの異なり数）をＮｅ、定義文Ｄｙの長さで最大のものをＬｅとする。すなわち、Ｎｅは、語彙ＶＰＨに含まれ、かつ、単語の系列Ｐ’、Ｈ’に含まれる単語の個数のうち、単語の系列Ｐ及びＨにおいて重複する単語を排除した個数である。単語の系列Ｄは、Ｌｅの大きさのベクトルとなる。
【０１３７】
そして、定義文生成部５２０は、語彙ＶＰＨに含まれる単語ｗ毎に、生成した単語の系列Ｄ（Ｎｅ個分）を、トークン符号化部５４０及び第２文脈符号化部２７０に渡す。
【０１３８】
トークン符号化部５４０は、トークン系列生成部５１０により生成された単語の系列Ｐ’、Ｈ’と、定義文生成部２２０により語彙ＶＰＨに含まれる単語ｗ毎に生成された単語の系列Ｄと、トークンＤＢ２５０に格納された複数の単語ベクトルとに基づいて、単語の系列Ｐ’に含まれる単語の各々についての単語ベクトル系列Ｐ１と、語彙ＶＰＨに含まれる単語ｗ毎に、単語の系列Ｈ’に含まれる単語の各々についての単語ベクトルＨ１と、語彙ＶＰＨに含まれる単語ｗ毎の、単語の系列Ｄに含まれる単語の各々についての単語ベクトル系列Ｄ１とを生成する。
【０１３９】
具体的には、トークン符号化部５４０は、トークン符号化部２４０と同様に、単語ベクトル系列Ｐ１と、単語ベクトル系列Ｄ１とを生成する。また、トークン符号化部５４０は、トークン符号化部２４０における単語ベクトル系列Ｐ１の生成と同様に、単語の系列Ｈに含まれる単語の各々について、トークンＤＢ２５０から当該単語に対応する単語ベクトルを抽出して、単語ベクトル系列Ｈ１を生成する。
【０１４０】
ここで、トークンＤＢ２５０に格納された単語ベクトルの次元をｄとすると、単語ベクトル系列Ｐ１はＬＰ×ｄの大きさの行列、単語ベクトル系列Ｈ１はＬＨ×ｄの大きさの行列、語彙ＶＰＨに含まれる単語ｗ毎の単語ベクトル系列Ｄ１はＬｅ×ｄの大きさの行列（Ｎｅ個分）となる。
【０１４１】
そして、トークン符号化部５４０は、生成した単語ベクトル系列Ｐ１、Ｈ１を第１文脈符号化部５６０に、単語ベクトル系列Ｄ１を第２文脈符号化部２７０に、それぞれ渡す。単語ベクトル系列Ｐ１、Ｈ１、Ｄ１は、定義文考慮文脈符号化部５８０で用いる場合もある。
【０１４２】
第１文脈符号化部５６０は、トークン符号化部５４０により生成された単語ベクトル系列Ｐ１、Ｈ１を、ニューラルネットワークを用い、文脈を考慮して単語ベクトル系列Ｐ２、Ｈ２にそれぞれ変換する。
【０１４３】
具体的には、第１文脈符号化部５６０は、第１文脈符号化部２６０と同様に、単語ベクトル系列Ｐ１を単語ベクトル系列Ｐ２に、単語ベクトル系列Ｈ１を、単語ベクトル系列Ｈ２に変換する。
【０１４４】
そして、第１文脈符号化部５６０は、変換した単語ベクトル系列Ｐ２、Ｈ２を、定義文考慮文脈符号化部５８０に渡す。
【０１４５】
定義文考慮文脈符号化部５８０は、ニューラルネットワークを用いて、文ペア（文Ｐ、文Ｈ）に含まれる単語のうち、辞書ＤＢ２３０に格納されている見出し語である単語ｗについて、単語ｗの定義文Ｄｗを表すベクトルを生成し、生成された定義文Ｄｗを表すベクトルを用いて、文ペアの各文を表すベクトルの系列をそれぞれ生成する。
【０１４６】
ここで、考慮する文ペア（文Ｐ、文Ｈ）と定義文Ｄｗとの関係性とは、入力文Ｐを構成する単語と、入力文Ｈを構成する単語と、定義文Ｄｗを構成する単語との意味的な類似性を指す。
【０１４７】
単語ｗに対応する定義文のベクトル系列Ｄ２を用いて入力文Ｐ、Ｈの単語ｗの単語ベクトルを生成する際に、単語ベクトル系列Ｄ２のうち、入力文Ｐ、Ｈの各単語の単語ベクトルとの意味的類似性が高いものが強調されるよう、処理を行う。
【０１４８】
具体的には、定義文考慮文脈符号化部５８０は、語彙ＶＤに含まれるＮｅ個の単語ｗの各々について、ステップ１〜ステップ４を繰り返す。
【０１４９】
（ステップ１）Ｎｅ個の単語ベクトル系列Ｄ２のうち、処理対象となる単語ｗに対応する単語ベクトル系列をＤ４とし、第１文脈符号化部５６０により得られた単語ベクトル系列Ｐ２と、第２文脈符号化部２７０により得られた単語ベクトル系列Ｄ４とのアテンションを取り、（ステップ２）第１文脈符号化部５６０により得られた単語ベクトル系列Ｈ２と、単語ベクトル系列Ｄ４とのアテンションを取り、（ステップ３）アテンション結果を用いて単語ベクトル系列Ｄ２を単語ベクトルＤ６に変換し、（ステップ４）単語ベクトルＤ６を用いて、単語ベクトル系列Ｐ２を変換した新しい単語ベクトル系列Ｐ３を求めると共に、単語ベクトルＤ６を用いて、単語ベクトル系列Ｈ２を変換した新しい単語ベクトル系列Ｈ３を求める。
【０１５０】
そして、定義文考慮文脈符号化部５８０は、（ステップ５）最終的に得られた単語ベクトル系列Ｐ３を文Ｐを表すベクトルの系列Ｐ４に変換すると共に、最終的に得られた単語ベクトル系列Ｈ３を文Ｈを表すベクトルの系列Ｈ４に変換する。
【０１５１】
＜＜ステップ１＞＞
定義文考慮文脈符号化部５８０においては、定義文考慮文脈符号化部２８０のステップ１と同様に、語彙ＶＤに含まれる単語ｗ毎の単語ベクトル系列Ｄ２から、単語ベクトル系列Ｄ４を抽出する。
【０１５２】
そして、定義文考慮文脈符号化部５８０は、定義文考慮文脈符号化部２８０のステップ１と同様に、第１文脈符号化部５６０により得られた単語ベクトル系列Ｐ２と、単語ベクトル系列Ｄ４とを用いて、アテンションベクトルＤ５，Ｐを式（４）により計算する。
【０１５３】
すなわち、ｎＰ個のアテンションベクトルＤ５，Ｐが得られる。
【０１５４】
＜＜ステップ２＞＞
ステップ１と同様に、定義文考慮文脈符号化部５８０は、第１文脈符号化部５６０により得られた単語ベクトル系列Ｈ２と、単語ベクトル系列Ｄ４とを用いて、アテンションベクトルＤ５，Ｈを計算する。
【０１５５】
すなわち、ｎｈ個のアテンションベクトルＤ５Ｈとが得られる。
【０１５６】
＜＜ステップ３＞＞
ステップ１及び２の結果、単語ｗはｎＰ＋ｎｈ個のアテンションベクトルＤ５で表現される。それぞれのアテンションベクトルＤ５を並べた行列を
2019153098.tif 000017
としたとき、定義文考慮文脈符号化部５８０は、式（６）を用いて、一つのベクトルＤ６に変換し、定義文を表すベクトルとする。
【０１５７】
【数６】
2019153098.tif 000018
【０１５８】
ここで、
2019153098.tif 000019
はニューラルネットワークのパラメータであり、学習中に学習できる他、事前に指定することが可能である。
【０１５９】
また、式（６）の線形変換に加えて、多層パーセプトロン（ＭＬＰ）を用いることができる。
【０１６０】
また、アテンションベクトルＤ５を縦に並べて
2019153098.tif 000020
とするようにしてもよい。この場合、パラメータＷは
2019153098.tif 000021
となる。同様に、アテンションベクトルＤ５を縦横に並べる数を自由に設計することができる。
【０１６１】
＜＜ステップ４＞＞
定義文考慮文脈符号化部５８０は、単語ベクトル系列Ｐ２、Ｈ２の内の単語ｗに対応する単語ベクトルに、当該単語ｗの定義文を表すベクトルＤ６を代入する。なお、代入の他、元の単語ベクトルにベクトルＤ６を加算または連結するようにしてもよい。なお、連結する場合は、単語ベクトルの次元ｄ１を調整する必要がある。
【０１６２】
ステップ１〜３までの語彙ＶＰＨに含まれるＮｅ個の単語に関する反復が終わったとき、代入後の単語ベクトル系列Ｐ２を単語ベクトル系列Ｐ３とし、代入後の単語ベクトル系列Ｈ２を単語ベクトル系列Ｈ３とする。単語ベクトル系列Ｐ３は、Ｌｐ×ｄ１の大きさの行列、単語ベクトル系列Ｈ３は、ＬＨ×ｄ１の大きさの行列である。
【０１６３】
なお、定義文考慮文脈符号化部２８０のステップ３と同様に、単語ベクトル系列Ｐ２、Ｈ２の単語ベクトルの内、語彙ＶＤに含まれない単語ｕの単語ベクトルにも操作を加えることができる。
【０１６４】
＜＜ステップ５＞＞
定義文考慮文脈符号化部５８０は、単語ベクトル系列Ｐ３、Ｈ３を、ＬＳＴＭ等の既存手法を用いて単語ベクトル系列Ｐ４、Ｈ４に変換することができる。単語ベクトル系列Ｐ４は、Ｌｐ×ｄ１の大きさのテンソル、単語ベクトル系列Ｈ４は、ＬＨ×ｄ１の大きさの行列である。
【０１６５】
そして、定義文考慮文脈符号化部５８０は、生成した単語ベクトル系列Ｐ４、Ｈ４をそれぞれ文Ｐを表わすベクトルの系列、文Ｈを表すベクトルの系列として、文ペア符号化部５９０に渡す。
【０１６６】
文ペア符号化部５９０は、定義文考慮文脈符号化部５８０により得られた文ペアの各文を表すベクトルの系列である単語ベクトル系列Ｐ４、Ｈ４の各々に基づいて、関係ラベル推定に用いるベクトルＢを生成する。
【０１６７】
具体的には、文ペア符号化部５９０は、従来技術（例えば、参考文献３〜５）の技術を用いて、関係ラベル推定に用いるベクトルを生成する。
［参考文献３］Q. Chen, X. Zhu, Z. Ling, S. Wei, H. Jiang, and D. Inkpen. Enhanced LSTM for natural language in-ference. In ACL, 2017.
［参考文献４］Bilateral Multi-Perspective Matching for Natural Language Sentences.
［参考文献５］Natural Language Inference Over Interaction Space.
【０１６８】
以下、参考文献３を用いた場合について説明する。
【０１６９】
まず、文ペア符号化部５９０は、定義文考慮文脈符号化部５８０により得られた単語ベクトル系列Ｐ４、Ｈ４を用いて、アラインメント行列
2019153098.tif 000022
を計算する。
【０１７０】
次に、文ペア符号化部５９０は、行列ＡＰの各行に関して、ソフトマックス関数を用いたＡＰを計算する。
2019153098.tif 000023
を縦につなげた単語ベクトル系列Ｐ５を計算する。単語ベクトル系列Ｐ５は、ＬＰ×４ｄ１である。また、
2019153098.tif 000024
は要素積である。
【０１７１】
また、文ペア符号化部５９０は、Ｈに関しても同様に単語ベクトル系列Ｈ５を計算する。単語ベクトル系列Ｈ５は、ＬＨ×４ｄ１である。
【０１７２】
そして、文ペア符号化部５９０は、単語ベクトル系列Ｐ５、Ｈ５の各ベクトルを１層Ｆｅｅｄ  Ｆｏｒｗａｒｄ  Ｎｅｔｗｏｒｋを用いて変換し、ベクトル系列Ｐ６、Ｈ６を計算する。ベクトル系列Ｐ６、Ｈ６は、それぞれＬＰ×ｄ２、ＬＨ×ｄ２となる。
【０１７３】
次に、文ペア符号化部５９０は、ベクトル系列Ｐ６、Ｈ６を、ＲＮＮによってベクトル系列Ｐ７、Ｈ７に変換する。そして、文ペア符号化部５９０は、ベクトル系列Ｐ７、Ｈ７を行方向にｍａｘ  ｐｏｏｌｉｎｇ、ａｖｅｒａｇｅ  ｐｏｏｌｉｎｇしたベクトル
2019153098.tif 000025
を計算する。
【０１７４】
そして、文ペア符号化部５９０は、ＰＭ、ＰＡ、ＨＭ、ＨＡを縦に並べたベクトルＢを、関係ラベル推定部６００に渡す。
【０１７５】
関係ラベル推定部６００は、ニューラルネットワークを用いて、文ペア符号化部５９０により得られた、ベクトルＢに基づいて、文ペアの関係性を示す関係ラベルを推定する。
【０１７６】
具体的には、関係ラベル推定部６００は、従来技術（例えば、参考文献３〜５）の技術を用いて、関係ラベル推定を行う。
【０１７７】
参考文献３を用いた場合、関係ラベル推定部６００は、文ペア符号化部５９０から取得したベクトルＢをＭＬＰによって所定のＺ次元ベクトルに変換し、ソフトマックス関数を用いて文ペアの関係ラベルに関する確率分布を計算する。Ｚの値は、推定する関係ラベルの数に基づき決定される。例えば、含意認識タスクにおいては、（１）真である、（２）偽である、（３）判断がつけられない、に対応した３次元となる。
【０１７８】
ここで、関係ラベル推定部６００は、確率分布を推定結果としても、最も高い確率の関係ラベルを推定結果としてもよい。
【０１７９】
そして、関係ラベル推定部６００は、推定結果を、パラメータ学習部４１０に渡す。
【０１８０】
パラメータ学習部４１０は、文ペアに付与された関係ラベルと、関係ラベル推定部により推定された関係ラベルとに基づいて、文ペアの関係性を示す関係ラベルを推定するためのニューラルネットワークのパラメータを更新する。
【０１８１】
具体的には、パラメータ学習部４１０は、関係ラベル推定部６００により得られた推定結果と、正解ラベルから損失を計算し、計算された損失に基づいて、文ペアの関係性を示す関係ラベルを推定するためのニューラルネットワークのパラメータを更新する。損失を計算する際に、クロスエントロピー関数等の損失関数を用いる。
【０１８２】
そして、パラメータ学習部４１０は、学習データである文ペアの推定精度に基づいて、収束判定を行う。例えば、推定精度の増減に基づいて、収束判定を行い、収束したら学習を終了する。
【０１８３】
そして、パラメータ学習部４１０は、学習したパラメータを解析部５００に渡す。解析部５００は、学習したパラメータを記憶部（図示しない）に格納する。
【０１８４】
＜本発明の第２の実施の形態に係る文ペア学習装置の作用＞
図４は、本発明の第２の実施の形態に係る文ペア学習ルーチンを示すフローチャートである。なお、第１の実施の形態に係るベクトル生成処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。また、以下では本実施形態に係る文ペア学習装置が、ミニバッチを用いて学習する場合について説明するが、任意のニューラルネットワークの学習方法を用いることができる。
【０１８５】
ステップＳ３００において、入力部４００は、関係性を示す関係ラベルが予め付与された文ペア（文Ｐ及び文Ｈ）の入力を受け付ける。
【０１８６】
ステップＳ３０２において、トークン系列生成部５１０は、ステップＳ３００により受け付けた文ペアを、ミニバッチに分割する。ミニバッチとは、文ペアをランダムに分割した文ペアｋ個の集合である。ｋは１以上の自然数である。
【０１８７】
ステップＳ３０４において、トークン系列生成部５１０は、１番目のミニバッチを選択する。
【０１８８】
ステップＳ３０６において、トークン系列生成部５１０は、１番目の文を選択する。
【０１８９】
ステップＳ３１０において、トークン系列生成部５１０は、１番目のミニバッチに含まれる文Ｐ、文Ｈの各々について、トークンの系列Ｐ、Ｈを生成する。
【０１９０】
ステップＳ３２０において、定義文生成部５２０は、辞書ＤＢ２３０の見出し語ｙと、上記ステップＳ３１０により生成された単語の系列Ｐ、Ｈとにおいて共通する単語の各々について、当該単語の定義文Ｄｙから単語の系列Ｄを生成する。
【０１９１】
ステップＳ３３０において、トークン符号化部５４０は、上記ステップＳ３１０により生成された単語の系列Ｐ、Ｈと、ステップＳ１２０により生成された単語の系列Ｄと、トークンＤＢ２５０に格納された複数の単語ベクトルとに基づいて、単語の系列Ｐに含まれる単語の各々についての単語ベクトル系列Ｐ１と、語彙ＶＰＨに含まれる単語ｗ毎に、単語の系列Ｈに含まれる単語の各々についての単語ベクトルＨ１と、語彙ＶＰＨに含まれる単語ｗ毎の、単語の系列Ｄに含まれる単語の各々についての単語ベクトル系列Ｄ１とを生成する。
【０１９２】
ステップＳ３４０において、第１文脈符号化部５６０は、上記ステップＳ３３０により生成された単語ベクトルＰ１、Ｈ１を、ニューラルネットワークを用いて単語ベクトル系列Ｐ２、Ｈ２にそれぞれ変換する。
【０１９３】
ステップＳ３８０において、定義文考慮文脈符号化部５８０は、ニューラルネットワークを用いて、ステップＳ１５０により得られた単語ベクトルＤ２から、単語ｗに対応する単語ベクトル系列Ｄ４を抽出し、上記ステップＳ３４０により得られた単語ベクトル系列Ｐ２及びＨ２と、単語ベクトル系列Ｄ４とを用いて、アテンションベクトルＤ５を計算する。
【０１９４】
ステップＳ３９０において、定義文考慮文脈符号化部５８０は、ｎＰ＋ｎＨ個のアテンションベクトルＤ５を、式（５）を用いて、一つのベクトルＤ６に変換する。
【０１９５】
ステップＳ４００において、定義文考慮文脈符号化部５８０は、単語ベクトル系列Ｐ２、Ｈ２の内の単語ｗに対応する単語ベクトルに、ベクトルＤ６を代入する。
【０１９６】
ステップＳ４３０において、定義文考慮文脈符号化部５８０は、単語ベクトル系列Ｐ３、Ｈ３を、ＬＳＴＭ等の既存手法を用いて単語ベクトル系列Ｐ４、Ｈ４に変換する。
【０１９７】
ステップＳ４４０において、関係ラベル推定部６００は、ニューラルネットワークを用いて、上記ステップＳ４３０により得られた、文ペアの各文を表すベクトルの各々に基づいて、文ペアの関係性を示す関係ラベルを推定する。
【０１９８】
ステップＳ４４２において、パラメータ学習部４１０は、全ての文について処理を行ったか否かを判定する。
【０１９９】
全ての文について処理を行っていない場合（ステップＳ４４２のＮＯ）、ステップＳ４４４において、次の文を選択し、ステップＳ３１０に戻る。
【０２００】
一方、全ての文について処理を行っている場合（ステップＳ４４２のＹＥＳ）、ステップＳ４５０において、パラメータ学習部４１０は、上記ステップＳ４４０により得られた推定結果と、正解ラベルから損失を計算する。
【０２０１】
ステップＳ４６０において、パラメータ学習部４１０は、全てのミニバッチについて処理を行ったか否かを判定する。
【０２０２】
全てのミニバッチについて処理を行っていない場合（ステップＳ４６０のＮＯ）、ステップＳ４７０において、次のミニバッチを選択し、ステップＳ３１０に戻る。
【０２０３】
一方、全てのミニバッチについて処理を行っている場合（ステップＳ４６０のＹＥＳ）、ステップＳ４８０において、パラメータ学習部４１０は、推定精度に基づいて、収束判定を行う。
【０２０４】
収束している場合（ステップＳ４８０のＮＯ）、ステップＳ３００に戻り、新たな学習データの入力を受け付け、ステップＳ３００〜ステップＳ４８０の処理を繰り返す。
【０２０５】
一方、収束している場合（ステップＳ４８０のＹＥＳ）、ステップＳ４９０において、パラメータ学習部４１０は、学習したパラメータを更新する。
【０２０６】
＜本発明の第２の実施の形態に係る関係ラベル推定装置の構成＞
次に、本発明の第２の実施の形態に係る文ペア学習装置２０により学習されたニューラルネットワークを用いて、入力された関係ラベルを推定する関係ラベル推定装置３０の構成について説明する。なお、第１の実施の形態に係るベクトル生成装置１０と、文ペア学習装置２０と同様の構成については、同一の符号を付して詳細な説明は省略する。
【０２０７】
関係ラベル推定装置３０は、入力部７００と、解析部８００と、出力部７１０とを備えて構成される。
【０２０８】
入力部７００は、文ペア（文Ｐ、文Ｈ）の入力を受け付ける。
【０２０９】
そして、入力部７００は、トークン系列生成部８１０に、受け付けた文ペアを渡す。
【０２１０】
解析部８００は、トークン系列生成部５１０と、定義文生成部５２０と、辞書ＤＢ２３０と、トークン符号化部５４０と、トークンＤＢ２５０と、第１文脈符号化部５６０と、第２文脈符号化部２７０と、定義文考慮文脈符号化部５８０と、文ペア符号化部５９０と、関係ラベル推定部６００とを備えて構成される。
【０２１１】
具体的には、解析部８００の各ブロックは、文ペア学習装置２０により学習されたニューラルネットワークのパラメータに基づいて、各処理を行う。
【０２１２】
出力部７１０は、関係ラベル推定部６００による推定結果を出力する。
【０２１３】
＜本発明の第２の実施の形態に係る関係ラベル推定装置の作用＞
図６は、本発明の第２の実施の形態に係る関係ラベル推定処理ルーチンを示すフローチャートである。なお、第１の実施の形態に係るベクトル生成処理ルーチン、及び文ペア学習処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。
【０２１４】
ステップＳ５００において、入力部７００は、文ペア（文Ｐ、文Ｈ）の入力を受け付ける。
【０２１５】
ステップＳ５１０において、出力部７１０は、関係ラベル推定部６００による推定結果を出力する。
【０２１６】
＜本発明の第２の実施の形態に係る手法の実験結果＞
次に、第２の実施形態で説明した手法における実験について述べる。
【０２１７】
＜＜比較手法＞＞
ベースラインモデルとして、参考文献３の手法（以下、ＥＳＩＭ）、非特許文献１の手法（以下、Ｂａｈｄａｎａｕ）の２つと比較した。Ｂａｈｄａｎａｕ及び本実施形態は、それぞれＥＳＩＭにモジュールを追加して実験を行った。
【０２１８】
なお、Ｂａｈｄａｎａｕは、文ペア内に現れる単語のうち、トークンＤＢ２５０に格納された単語ベクトルを持たない単語の集合（ＯＯＶ）の単語ベクトルを補完することが目的であるため、用い得る単語の集合は、（ＶＩ∩ＶＤ）−ＶＥである。
【０２１９】
ここで、ＶＩは、文Ｐと文Ｈに現れる単語の、全ての文ペアに関する和集合であり、ＶＥは、事前学習されたトークンＤＢ２５０が持つ単語の集合である。
【０２２０】
また、本実施形態では、辞書情報による関係ラベル推定精度の向上が目的であるため、用い得る単語の集合はＶＩ∩ＶＤである。
【０２２１】
＜＜実験設定＞＞
ＭＮＬＩデータセットとは、参考文献６に記述されたデータセットである。
［参考文献６］A. Williams, N. Nangia, and S. R. Bowman. A broad-coverage challenge corpus for sentence understanding through inference. CoRR, abs/1704.05426, 2017.
【０２２２】
また、Ｐｙｔｈｏｎのｓｔｒ．ｓｐｌｉｔ（）関数を行って単語化した後、小文字への統一と句読点等一部記号を削除する前処理を行った。トークンＤＢ２５０に事前学習された３００次元ＧｌｏＶｅ８４０Ｂベクトルを用いた（参考文献７）
［参考文献７］G. A. Miller. WordNet: A lexical database for english. Commun. ACM, 38(11):39-41, 1995.
【０２２３】
ＯＯＶの単語は正規分布からランダムにサンプリングした。トークンＤＢ２５０内の単語ベクトルは学習中固定した。
【０２２４】
また、エンコーダとデコーダに用いるＲＮＮには、２層双方向ＳＲＵを用いた（参考文献２）。双方向ＳＲＵの出力次元数をｎ２＝２００とし、活性化関数にｔａｎｈ関数を用いた。
【０２２５】
デコーダのアテンションを
2019153098.tif 000026
でスケーリングした。ドロップアウト率は０．４５とし、既存研究（参考文献３）と同じ層を用いた。
【０２２６】
学習は１つのＧＰＵで行った。ミニバッチサイズは３２とした。最適化は参考文献８の手法を用い、第１モメンタムを０．９、第２モメンタムを０．９９９とした。初期学習率は０．０００４とし、減衰率は０．２５とした。学習データから学習を行い、スケジューリングで学習率を減衰させ、開発データで評価を行った。
［参考文献８］D. P. Kingma and J. Ba. Adam: A method for stochastic optimization. CoRR, abs/1412.6980, 2014.
【０２２７】
＜＜辞書＞＞
辞書ＤＢ２３０として、ＷｏｒｄＮｅｔ（参考文献７）の語彙ＶＤと定義文Ｄｙを用いた。参考文献７をＰｙｔｈｏｎのｓｔｒ．ｓｐｌｉｔ（）関数で行った後、小文字への統一と句読点など一部記号を削除する前処理を行った。１つの見出し語ｙに定義文Ｄｙが複数文ある多義語では、参考文献７に提供されている語義の出現頻度で降順に、５つの定義文をつなげた文章を定義文Ｄｙとした。
【０２２８】
また、参考文献９のストップワードを語彙ＶＤから取り除いた。
［参考文献９］S. Bird, E. Klein, and E. Loper. Natural Language Pro-cessing with Python. O'Reilly Media, Inc., 2009.
【０２２９】
＜＜評価＞＞
＜＜＜実験１＞＞＞
実験１では、ＯＯＶが多い状況下での含意認識精度比較既存研究（非特許文献１）に即して、トークンＤＢ２５０に含まれる単語ベクトルの語彙を制限した状況での精度（正解率）の比較をした。
【０２３０】
トークンＤＢ２５０に含まれる単語ベクトルの語彙を意図的に制限することで、ＯＯＶの単語が多い状況下での辞書情報の精度への影響を調べることができる。語彙ＶＥに学習データで出現頻度が高い３０００語のみ使用した。残りの単語はＯＯＶとした。辞書の語彙はＷｏｒｄＮｅｔの全語彙とした。
【０２３１】
図７に実験１の結果を示す。図７の数値は関係ラベルの推定精度を表す。ＭＮＬＩは１０のドメインから成る。５つのドメインは学習データ・開発データともに含まれ、ｍａｔｃｈｅｄドメインと呼ばれる。残り５つのドメインは開発データのみに含まれ、ｍｉｓｍａｔｃｈｅｄドメインと呼ばれる。
【０２３２】
実験１では、双方のドメインで本実施形態の手法が最も高い推定精度を示した。よって、ＯＯＶの単語が多い状況下で本実施形態の手法がベースラインモデルの精度を向上することを確認した。本実験のように、３０００語にＶＥを限定した場合、基本的な語以外はＯＯＶとなるため、ｍａｔｃｈｅｄとｍｉｓｍａｔｃｈｅｄのドメインの違いによる大きな差が見られなかった。
【０２３３】
＜＜＜実験２＞＞＞
実験２では、辞書ＤＢ２３０の語彙数を増やした時に学習ラベル推定の精度は向上するかを確認するため、ＭＮＬＩデータセットにおいて辞書ＤＢ２３０の語彙数を変化させたときの推定精度の変化を調べた。
【０２３４】
辞書ＤＢ２３０の語彙は、学習データ・開発データでの出現頻度が高い語から順に使用した。辞書ＤＢ２３０の語彙数が０のとき、Ｂａｈｄａｎａｕの手法と本実施形態の手法はＥＳＩＭと一致する。
【０２３５】
図８に実験２の結果を示す。図８は、辞書ＤＢ２３０の語彙数による関係ラベルの推定精度の変化を示す。図８の語彙数の右端は全ての語彙を用いたときの結果である。
【０２３６】
図８から、辞書ＤＢ２３０の語彙を増やすほど精度が向上する傾向が見られる。Ｂａｈｄａｎａｕの手法は、語彙数が小さいときは精度の向上が起きない。これは、語彙数が小さい辞書ＤＢ２３０にはＯＯＶが含まれないため、Ｂａｈｄａｎａｕらの手法がＥＳＩＭと一致することに因る。
【０２３７】
図８において、本実施形態では、全ての語彙数で最も高い精度を達成している。特に、語彙数が小さい時のＢａｈｄａｎａｕらの手法と本実施形態の手法との差は、頻出語における定義文ＤｙについてトークンＤＢ２５０の有用性を示唆している。
【０２３８】
＜＜＜実験３＞＞＞
実験３では、ＯＯＶ数と関係ラベルの推定精度に相関関係があるかについて実験した。実験１、実験２の結果では、定義文ＤｙについてのトークンＤＢ２５０の有用性が、単語がＯＯＶであることに依存しているかどうかが明らかになっていない。ＭＮＬＩデータセットではドメイン毎にＯＯＶの数が違うため、ＯＯＶ数と関係ラベルの推定精度の関係を調べることができる。
【０２３９】
そこで、実験３では、ドメイン毎のＯＯＶ数と関係ラベルの推定精度を調べた。図９に実験３の結果を示す。図９の数値は各ドメインでの関係ラベルの推定精度を表す。
【０２４０】
まず、ＭＮＬＩデータセット全体を含む多くのドメインで本実施形態が最も高い関係ラベルの推定精度を達成した。次に、ＯＯＶが現れる文ペアにおける関係ラベルの推定精度を見ると、他の文ペアと同程度で推定精度が向上している。
【０２４１】
ドメイン毎のＯＯＶ数に注目した場合も、例えばＴｅｌｅｐｈｏｎｅ、Ｆａｃｅ  ｔｏ  ＦａｃｅのドメインはＯＯＶ数が小さいにも関わらず大きな精度の向上が見られる。１０のドメインをサンプルとしてＯＯＶ数と関係ラベルの推定精度の相関係数を計算すると、ＥＳＩＭ、Ｂａｈｄａｎａｕらの手法、本実施形態ではそれぞれ−０．０７、−０．３８、−０．２１であり、ｐ値は０．８６、０．２８、０．５６であった。
【０２４２】
＜＜＜考察＞＞＞
ＯＯＶの数と性能に有意な関係が見られない理由について以下考察する。本実験の設定ではＧｌｏＶｅで用意される語彙がＭＮＬＩの語彙を広くカバーするため、非ＯＯＶの方がＯＯＶに比べて多く出現する。このため、定義文Ｄｙに係るトークンＤＢ２５０が及ぼす影響はＯＯＶよりも非ＯＯＶに対して大きくなる。よって、辞書に含まれる全ての見出し語ｙに対してトークンＤＢ２５０を用いる本実施形態は、Ｂａｈｄａｎａｕに比べて精度を改善することができたと考える。
【０２４３】
すなわち、常に単語の定義文Ｄｙを用いる事で、よりリッチな情報をもとに推定ができる。また、本実験では比較のためトークンＤＢ２５０の単語ベクトルを固定したが、ニューラルネットワークの学習後に、トークンＤＢ２５０への単語ベクトルの追加が可能であるため、より関係ラベルの推定精度を高めることができる。
【０２４４】
また、辞書ＤＢ２３０の定義文Ｄｙを元に、定義文Ｄｙの情報に応じた単語ベクトルを生成するため、学習ラベルの推定の際に有用な特徴量をできるだけ残して、入力及び定義文Ｄｙから単語ベクトルを作成できる。定義文考慮文脈符号化部の導入により、定義文Ｄｙ内の特定の箇所に注目することができるため、定義文Ｄｙが長文である場合や多義を表す複数文である場合に優位性がある。特に、多義性のある単語については、語義曖昧性解消の効果がある。
【０２４５】
以上説明したように、本実施形態に係る文ペア学習装置によれば、ニューラルネットワークを用いて、文ペアに含まれる各単語のベクトルに基づいて、文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、見出し語を定義する文である定義文との組を格納した辞書ＤＢに基づいて、文ペアに含まれる単語のうち、辞書ＤＢに格納されている見出し語である単語について、見出し語の定義文を表すベクトルを生成し、生成された定義文を表すベクトルを用いて、文ペアの各文を表すベクトルの系列をそれぞれ生成し、ニューラルネットワークを用いて、文ペアの各文を表すベクトルの系列の各々に基づいて、文ペアの関係性を示す関係ラベルを推定し、文ペアに付与された関係ラベルと、推定された関係ラベルとに基づいて、ニューラルネットワークのパラメータを更新することにより、文ペアの関係性を精度よく推定するためのニューラルネットワークを学習することができる。
【０２４６】
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０２４７】
本実施形態において、学習方法はミニバッチを用いた場合を例に説明したが、これに限定されるものではない。任意のニューラルネットワークの学習方法を用いる構成としてもよい。
【０２４８】
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
【符号の説明】
【０２４９】
１０   ベクトル生成装置
２０   文ペア学習装置
３０   関係ラベル推定装置
１００ 入力部
１１０ 出力部
２００ 解析部
２１０ トークン系列生成部
２２０ 定義文生成部
２３０ 辞書ＤＢ
２４０ トークン符号化部
２５０ トークンＤＢ
２６０ 文脈符号化部
２７０ 文脈符号化部
２８０ 定義文考慮文脈符号化部
４００ 入力部
４１０ パラメータ学習部
５００ 解析部
５１０ トークン系列生成部
５２０ 定義文生成部
５４０ トークン符号化部
５６０ 文脈符号化部
５８０ 定義文考慮文脈符号化部
５９０ 文ペア符号化部
６００ 関係ラベル推定部
７００ 入力部
７１０ 出力部
８００ 解析部
８１０ トークン系列生成部
【図１】
2019153098.tif 000027
【図２】
2019153098.tif 000028
【図３】
2019153098.tif 000029
【図４】
2019153098.tif 000030
【図５】
2019153098.tif 000031
【図６】
2019153098.tif 000032
【図７】
2019153098.tif 000033
【図８】
2019153098.tif 000034
【図９】
2019153098.tif 000035