JP6872505B2 - ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラム - Google Patents
ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラム Download PDFInfo
- Publication number
- JP6872505B2 JP6872505B2 JP2018038074A JP2018038074A JP6872505B2 JP 6872505 B2 JP6872505 B2 JP 6872505B2 JP 2018038074 A JP2018038074 A JP 2018038074A JP 2018038074 A JP2018038074 A JP 2018038074A JP 6872505 B2 JP6872505 B2 JP 6872505B2
- Authority
- JP
- Japan
- Prior art keywords
- sentence
- word
- vector
- definition
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/242—Dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/253—Grammatical analysis; Style critique
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラムに係り、特に、ニューラルネットワークが自然言語処理に用いる入力文のベクトルを有用に生成するためのベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラムに関する。
従来より、機械による文の意味理解のための基本的な技術のひとつとして、文と文との関係性を表わすラベルを推定する関係性推定技術がある。例えば、文と文の含意関係を認識する課題は「含意認識」として幅広く研究されている。
含意認識の課題では、前提文(文P)と呼ばれる文と仮定文(文H)と呼ばれる文のペアが与えられ、文Pと文Hの含意関係を推定する。含意関係として、文Pが真であるときに文Hが(1)真である、(2)偽である、(3)判断がつけられない、の3種類の関係が定義されている。
このような関係性推定の課題をニューラルネットワークにより解く際には、まず事前に文ペアと当該文ペアの関係を示す関係ラベルとの集合が学習データとして大量に与えられ、学習器は文ペアの関係ラベルを正しく推定できるようニューラルネットワークのパラメータを学習しておく。
そして、関係性推定の際には、入力された文ペアを、word2vecやGloveに代表される既存の単語ベクトルデータ集合を用いて、単語ベクトル系列のペアに変換する。そして、この単語ベクトル系列のペアを、関係性推定の際の特徴量として用いる。
このようなニューラルネットワークによる関係性推定技術として、非特許文献1では、単語ベクトルデータ集合と学習データ以外に辞書DB(データベース)を用いて含意認識を行う。辞書DBは、見出し語yと見出し語yを説明する文のペアで構成される。ここで、見出し語yを説明する文を見出し語の定義文Dyと呼ぶ。また、全ての見出し語yの集合を語彙VDと呼ぶ。
非特許文献1では、単語ベクトル系列のペアに変換する際、文ペアを構成する単語のうち、単語ベクトルデータ集合に含まれない単語について、辞書DBから当該単語を見出し語yとする単語の定義文Dyを抽出し、ニューラルネットワークを用いて定義文Dyに含まれる単語をベクトルに変換し、合成することで、当該単語の単語ベクトルとする。
これは、推定対象となる文ペアに含まれる単語のうち、既存の単語ベクトルデータ集合には含まれにくい低頻度語・固有名詞・専門用語に対処するためである。
非特許文献1の実験では、単語ベクトルデータ集合の語彙VEを限定した状況下での精度向上が確認された。また、単語の定義文Dyを利用することで、学習後に学習データに含まれない専門用語などの単語を追加した場合も、関係性推定に資するベクトル表現を得ることができる。
既存の手法では単語ベクトルデータ集合に含まれない単語のベクトルはランダムまたは任意に設定することが多い。
この点、非特許文献1では、辞書の定義文を変換するネットワークを学習時に獲得しているため、学習されたニューラルネットワークを用いて定義文をベクトルに変換することができる。さらに、辞書への単語と定義文Dyの追加はモデルの学習後であっても逐次的に行うことが可能である。
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.
しかし、非特許文献1では推定対象となる文ペアに含まれる単語を、辞書DBの定義文Dyを用いてベクトル化する際に、推定対象である文ペアの情報を使わず、一意なベクトルに変換しているという課題がある。
実験で示された精度の向上も単語ベクトルデータ集合の語彙VEを限定した特別な状況下での精度向上に留まっている。
また、辞書DBの定義文Dyは単語ベクトル系列で表現されるため、単語ベクトル系列から単語ベクトルに変換する際に多くの情報が失われる、という性質がある。
よって、単語ベクトル系列である定義文Dyは、文関係性認識に資する特徴量をできるだけ残して単語ベクトルに変換されることが望ましい。
本発明は上記の点に鑑みてなされたものであり、入力文を表す適切なベクトルを生成することができるベクトル生成装置、ベクトル生成方法、およびプログラムを提供することを目的とする。
また、本発明は、文ペアの関係性を精度よく推定するためのニューラルネットワークを学習することができる文ペア学習装置、文ペア学習方法、およびプログラムを提供することを目的とする。
本発明に係るベクトル生成装置は、入力文を表わすベクトルの系列を生成するベクトル生成装置であって、前記入力文に含まれる各単語に対応するベクトルに基づいて、前記入力文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、前記入力文に含まれる単語のうち、前記辞書DBに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する定義文考慮文脈符号化部を備えて構成される。
また、本発明に係るベクトル生成方法は、入力文を表わすベクトルの系列を生成するベクトル生成方法であって、定義文考慮文脈符号化部が、前記入力文に含まれる各単語に対応するベクトルに基づいて、前記入力文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、前記入力文に含まれる単語のうち、前記辞書DBに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する。
本発明に係るベクトル生成装置及びベクトル生成方法によれば、定義文考慮文脈符号化部が、入力文に含まれる各単語に対応するベクトル基づいて、入力文を表すベクトルの系列を生成する際に、見出し語と、当該見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、入力文に含まれる単語のうち、辞書DBに格納されている当該見出し語である単語について、当該見出し語の定義文を用いて、入力文を表すベクトルの系列を生成する。
このように、入力文に含まれる各単語に対応するベクトルに基づいて、入力文を表すベクトルの系列を生成する際に、見出し語と、当該見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、入力文に含まれる単語のうち、辞書DBに格納されている当該見出し語である単語について、当該見出し語の定義文を用いて、入力文を表すベクトルの系列を生成することにより、入力文を表す適切なベクトルを生成することができる。
また、本発明に係るベクトル生成装置の前記定義文考慮文脈符号化部は、前記入力文に含まれる単語のうち、前記辞書DBに格納されている見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する際に、前記入力文と、前記単語を見出し語とする前記定義文に含まれる各単語との関係性を考慮して、当該見出し語を表すベクトルを生成し、前記入力文に含まれる当該単語のベクトルとして用いることができる。
また、本発明に係るベクトル生成装置は、前記入力文は、第1の入力文と、第2の入力文とのペアであって、前記定義文考慮文脈符号化部により得られた、前記第1の入力文を表わす第1ベクトルの系列と、前記第2の入力文を表わす第2ベクトルの系列とに基づいて、前記第1の入力文と、前記第2の入力文との関係性を示す関係ラベルを推定する関係ラベル推定部を更に備えることができる。
本発明に係る文ペア学習装置は、関係性を示す関係ラベルが予め付与された文ペアの入力を受け付ける入力部と、ニューラルネットワークを用いて、前記文ペアに含まれる各単語に対応するベクトルに基づいて、前記文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、前記文ペアに含まれる単語のうち、前記辞書DBに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記文ペアの各文を表すベクトルの系列をそれぞれ生成する定義文考慮文脈符号化部と、ニューラルネットワークを用いて、前記定義文考慮文脈符号化部により得られた、前記文ペアの各文を表すベクトルの系列の各々に基づいて、前記文ペアの関係性を示す関係ラベルを推定する関係ラベル推定部と、前記文ペアに付与された関係ラベルと、前記関係ラベル推定部により推定された関係ラベルとに基づいて、前記ニューラルネットワークのパラメータを更新するパラメータ学習部と、を備えて構成される。
また、本発明に係る文ペア学習方法は、入力部が、関係性を示す関係ラベルが予め付与された文ペアの入力を受け付け、定義文考慮文脈符号化部が、ニューラルネットワークを用いて、前記文ペアに含まれる各単語に対応するベクトルに基づいて、前記文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、前記文ペアに含まれる単語のうち、前記辞書DBに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記文ペアの各文を表すベクトルの系列をそれぞれ生成し、関係ラベル推定部が、ニューラルネットワークを用いて、前記定義文考慮文脈符号化部により得られた、前記文ペアの各文を表すベクトルの系列の各々に基づいて、前記文ペアの関係性を示す関係ラベルを推定し、パラメータ学習部が、前記文ペアに付与された関係ラベルと、前記関係ラベル推定部により推定された関係ラベルとに基づいて、前記ニューラルネットワークのパラメータを更新する。
本発明に係る文ペア学習装置及び文ペア学習方法によれば、入力部が、関係性を示す関係ラベルが予め付与された文ペアの入力を受け付け、定義文考慮文脈符号化部が、ニューラルネットワークを用いて、文ペアに含まれる各単語に対応するベクトルに基づいて、文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、文ペアに含まれる単語のうち、辞書DBに格納されている見出し語である単語について、見出し語の定義文を用いて、文ペアの各文を表すベクトルの系列をそれぞれ生成する。
そして、関係ラベル推定部が、ニューラルネットワークを用いて、定義文考慮文脈符号化部により得られた、文ペアの各文を表すベクトルの系列の各々に基づいて、文ペアの関係性を示す関係ラベルを推定し、パラメータ学習部が、文ペアに付与された関係ラベルと、関係ラベル推定部により推定された関係ラベルとに基づいて、ニューラルネットワークのパラメータを更新する。
このように、ニューラルネットワークを用いて、文ペアに含まれる各単語に対応するベクトルに基づいて、文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、文ペアに含まれる単語のうち、辞書DBに格納されている見出し語である単語について、見出し語の定義文を用いて、文ペアの各文を表すベクトルの系列をそれぞれ生成し、ニューラルネットワークを用いて、文ペアの各文を表すベクトルの系列の各々に基づいて、文ペアの関係性を示す関係ラベルを推定し、文ペアに付与された関係ラベルと、推定された関係ラベルとに基づいて、ニューラルネットワークのパラメータを更新することにより、文ペアの関係性を精度よく推定するためのニューラルネットワークを学習することができる。
本発明に係るプログラムは、上記のベクトル生成装置、又は文ペア学習装置の各部として機能させるためのプログラムである。
本発明のベクトル生成装置、ベクトル生成方法、およびプログラムによれば、入力文を表す適切なベクトルを生成することができる。
また、本発明の文ペア学習装置、文ペア学習方法、およびプログラムによれば、文ペアの関係性を精度よく推定するためのニューラルネットワークを学習することができる。
以下、本発明の実施の形態について図面を用いて説明する。
<本発明の第1の実施の形態に係るベクトル生成装置の概要>
まず、本発明の実施形態の概要について説明する。
まず、本発明の実施形態の概要について説明する。
ニューラルネットワークによる、入力を文(テキスト)とする様々なタスク、例えば分類タスク、文生成タスク等では、まず、最初に入力となる文をベクトル表現に変換する。
本実施形態では、単語の定義文Dyをベクトル化する際に、処理対象である文の情報を用いることで、より推定に資する特徴量を残した変換をする。
これにより、文のベクトル表現をより高精度化することができ、その後のタスクの精度を向上させることができる。
<本発明の第1の実施の形態に係るベクトル生成装置の構成>
図1を参照して、本発明の実施の形態に係るベクトル生成装置10の構成について説明する。図1は、本発明の実施の形態に係るベクトル生成装置10の構成を示すブロック図である。
図1を参照して、本発明の実施の形態に係るベクトル生成装置10の構成について説明する。図1は、本発明の実施の形態に係るベクトル生成装置10の構成を示すブロック図である。
ベクトル生成装置10は、CPUと、ニューラルネットワークの計算を実行するためのGPUと、RAMと、後述するベクトル生成処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。
図1に示すように、本実施形態に係るベクトル生成装置10は、入力部100と、解析部200と、出力部110とを備えて構成される。
入力部100は、入力文Pの入力を受け付ける。
入力部100は、受け付けた入力文Pを、トークン系列生成部210に渡す。
解析部200は、見出し語yと、当該見出し語yを定義する文である定義文Dyとの組を格納した辞書DB230に基づいて、入力文Pに含まれる単語のうち、辞書DB230に格納されている見出し語である単語について、見出し語yの定義文Dyを表すベクトルを生成し、生成された定義文Dyを表すベクトルを用いて、入力文Pを表すベクトルを生成する。
具体的には、解析部200は、トークン系列生成部210と、定義文生成部220と、辞書DB(データベース)230と、トークン符号化部240と、トークンDB(データベース)250と、第1文脈符号化部260と、第2文脈符号化部270と、定義文考慮文脈符号化部280とを備えて構成される。
トークン系列生成部210は、入力文Pから、トークンの系列Pを生成する。
具体的には、トークン系列生成部210は、入力文Pをトークンに分割し、トークンの系列Pを生成する。入力された文の長さをLPとすると、生成されるトークンの系列Pは、LPの大きさのベクトルとなる。
トークンとして単語を用いた場合、文の長さは単語の数で定義される。トークンとして単語以外に任意の分割単位を用いることができる。以下、本実施形態では、トークンとして単語を用いた場合について説明する。
そして、トークン系列生成部210は、生成した単語の系列P’を、定義文生成部220、及びトークン符号化部240に渡す。
定義文生成部220は、トークン系列生成部210により生成された単語の系列P’のうち、辞書DB230に格納されている見出し語である単語の各々について、当該見出し語yの定義文Dyから単語の系列Dを生成する。
具体的には、定義文生成部220は、辞書DB230の見出し語yのうち、トークン系列生成部210により生成された単語の系列P’に含まれる単語を検索し、該当する単語の各々について、当該単語を見出し語yとする定義文Dyを単語に分割して系列とした単語の系列Dを生成する。単語の系列P’に含まれる見出し語である単語wの集合を語彙VPとする。
ここで、語彙VPの語彙数(単語w異なり数)をNe、定義文Dyの長さで最大のものをLeとすると、語彙VPに含まれる単語w毎に生成される単語の系列Dは、Leの大きさのベクトルとなる。なお、定義文Dyの長さがLeに満たない場合は、特殊単語「PAD」を末尾に追加する等により長さをLeとする。
そして、定義文生成部220は、語彙VPに含まれる単語w毎に生成した単語の系列D(Ne個分)を、トークン符号化部240及び第2文脈符号化部270に渡す。
辞書DB230は、見出し語yの単語と、見出し語yの定義文Dyとの組を格納している。辞書DB230に含まれる見出し語yの集合を語彙VDとする。
トークン符号化部240は、トークン系列生成部210により生成された単語の系列Pと、定義文生成部220により語彙VPに含まれる単語w毎に生成された単語の系列Dと、トークンDB250に格納された複数の単語ベクトルとに基づいて、単語の系列Pに含まれる単語の各々についての単語ベクトル系列P1と、語彙VPに含まれる単語w毎の、単語の系列Dに含まれる単語の各々についての単語ベクトル系列D1とを生成する。
具体的には、トークン符号化部240は、単語の系列Pに含まれる単語の各々について、トークンDB250から当該単語に対応する単語ベクトルを抽出して、単語ベクトル系列P1を生成する。
同様に、トークン符号化部240は、語彙VPに含まれる単語w毎に、単語の系列Dに含まれる単語の各々について、トークンDB250から当該単語に対応する単語ベクトルを抽出して、単語ベクトル系列D1を生成する。
ここで、トークンDB250に格納された単語ベクトルの次元をdとすると、単語ベクトル系列P1はLP×dの大きさの行列、語彙VPに含まれる単語w毎の単語ベクトル系列D1はLe×dの大きさの行列(Ne個分)となる。
そして、トークン符号化部240は、生成した単語ベクトル系列P1を第1文脈符号化部260に、単語ベクトル系列D1を第2文脈符号化部270に、それぞれ渡す。単語ベクトル系列P1、D1は、定義文考慮文脈符号化部280で用いる場合もある。
トークンDB250は、単語と、当該単語に対応する単語ベクトルの対が複数格納されている。単語ベクトルは、予めニューラルネットワークにより学習された単語のベクトルの集合である。
具体的には、例えばトークンDB250は、単語と、当該単語に対応する単語ベクトルの対として、word2vecやGloVe等既存の単語ベクトルデータ集合を格納しておけばよい。また、既存の単語ベクトルデータ集合の単語ベクトルに、新しく学習した単語ベクトルを繋げてもよい。単語ベクトルの学習には、単語の文字情報を符号化する技術(参考文献1)等、任意の単語embedding技術が使用可能である。単語ベクトルは、誤差逆伝播法によって計算できる勾配から学習することも可能である。
[参考文献1]Convolutional neural networks for sentence classification.
[参考文献1]Convolutional neural networks for sentence classification.
また、トークンDB250は、第2文脈符号化部270により取得した単語ベクトル系列D2を格納する。
第1文脈符号化部260は、トークン符号化部240により生成された単語ベクトル系列P1を、ニューラルネットワークを用い、文脈を考慮して単語ベクトル系列P2に変換する。
ここでのニューラルネットワークとしては、例えばRNNが挙げられる。RNNの構造には、LSTMやSRU等の既存技術を用いる。SRUは、参考文献2によって提案されたRNNの一種である。
[参考文献2]T. Lei and Y. Zhang. Training RNNs as fast as CNNs. CoRR, abs/1709.02755, 2017.
[参考文献2]T. Lei and Y. Zhang. Training RNNs as fast as CNNs. CoRR, abs/1709.02755, 2017.
本実施形態においては、第1文脈符号化部260は、文頭から文末への順方向に処理するRNNと逆方向に処理するRNNとからなる、双方向RNN(Bidirectional RNN)を用いて、単語ベクトル系列P1を単語ベクトル系列P2に変換する。双方向RNNの出力する単語ベクトルの次元をd1とすると、単語ベクトル系列P2はLP×d1の大きさの行列となる。
そして、第1文脈符号化部260は、変換した単語ベクトル系列P2を、定義文考慮文脈符号化部280に渡す。
第2文脈符号化部270は、トークン符号化部240により生成された語彙VPに含まれる単語w毎の単語ベクトル系列D1を、ニューラルネットワークによって単語ベクトル系列D2に変換する。
具体的には、第2文脈符号化部270は、語彙VPに含まれる単語w毎に、第1文脈符号化部260と同様の手法により、単語ベクトル系列D1を単語ベクトル系列D2に変換する。語彙VPに含まれる単語w毎の単語ベクトル系列D2はLe×d1の大きさの行列(Ne個分)となる。
第2文脈符号化部270の学習するニューラルネットワークのパラメータは、第1文脈符号化部260とは別に保持するが、パラメータを文脈符号化部260と共有する構成としてもよい。
ここで、定義文Dyが複数あるときは、定義文Dy同士をつなげることにより、一つの文として処理することができる。
また、単語ベクトル系列D2を用いてトークンDB250を更新することができる。トークンDB250の単語wの単語ベクトルを更新する新しい単語ベクトルとして、非特許文献1と同じく、単語wに対応する単語ベクトル系列D2の末尾の単語ベクトル(RNNの最終状態の出力)を用いる、または、単語ベクトル系列D2の全単語ベクトル(RNNの全状態の出力)の平均を用いる等の手法がある。
そして、第2文脈符号化部270は、語彙VPに含まれる単語w毎に変換した単語ベクトル系列D2(Ne個分)を、トークンDB250及び定義文考慮文脈符号化部280に渡す。
定義文考慮文脈符号化部280は、入力文Pに含まれる単語のうち、辞書DB230に格納されている見出し語である単語wについて、入力文Pと、定義文Dwに含まれる各単語との関係性を考慮して、単語wの定義文Dwを表すベクトルを生成し、生成された定義文Dwを表すベクトルを用いて、入力文Pを表すベクトルの系列を生成する。
ここで、考慮する入力文Pと定義文Dwとの関係性とは、入力文Pを構成する単語と、定義文Dwを構成する単語との意味的な類似性を指す。
単語wに対応する定義文のベクトル系列D2を用いて入力文Pの単語wの単語ベクトルを生成する際に、単語ベクトル系列D2のうち、入力文Pの各単語の単語ベクトルとの意味的類似性が高いものが強調されるよう、処理を行う。
具体的には、定義文考慮文脈符号化部280は、語彙VPに含まれるNe個の単語wの各々について、ステップ1〜ステップ3を繰り返す。
(ステップ1)Ne個の単語ベクトル系列D2のうち、処理対象となる単語wに対応する単語ベクトル系列をD4とし、第1文脈符号化部260により得られた単語ベクトル系列P2と、第2文脈符号化部270により得られた単語ベクトル系列D4とのアテンションを取り、(ステップ2)アテンション結果を用いて単語ベクトル系列D2を単語ベクトルD6に変換し、(ステップ3)単語ベクトルD6を用いて、単語ベクトル系列P2を変換した新しい単語ベクトル系列P3を求める。
そして、定義文考慮文脈符号化部280は、(ステップ4)最終的に得られた単語ベクトル系列P3を入力文Pを表すベクトルP4に変換する。
<<ステップ1>>
定義文考慮文脈符号化部280においては、第2文脈符号化部270により得られた語彙VPに含まれるNe個の単語w毎の単語ベクトル系列D2(Le×d1)のうち、処理対象となる単語wに対応する単語ベクトル系列をD4とする。単語ベクトル系列D4は、Le×d1の行列である。
定義文考慮文脈符号化部280においては、第2文脈符号化部270により得られた語彙VPに含まれるNe個の単語w毎の単語ベクトル系列D2(Le×d1)のうち、処理対象となる単語wに対応する単語ベクトル系列をD4とする。単語ベクトル系列D4は、Le×d1の行列である。
そして、定義文考慮文脈符号化部280は、第1文脈符号化部260により得られた単語ベクトル系列P2と、単語ベクトル系列D4とを用いて、アラインメント行列Aを下記式(1)により計算する。
アラインメント行列Aからアラインメントベクトルaへの変換では、max pooling(下記式(2))、またはaverage pooling(下記式(3))を用いて
空間上のベクトルに変換した後、ソフトマックス変換をする。
空間上のベクトルに変換した後、ソフトマックス変換をする。
そして、定義文考慮文脈符号化部280は、アテンションベクトルD5を下記式(4)により計算する。すなわち、アラインメント行列Aとして求めた入力文Pと定義文Dwの意味的なマッチング結果に基づき、定義文Dwを構成する単語に重み付けを行ってアテンションベクトルD5を生成する。
アテンションベクトルD5はnP個(np≧1)用意してもよい。アテンションベクトルD5を複数用意するための設計の自由度として、以下の方法を組み合わせることができる。
・max pooling/average poolingの違い。
・poolingの方向を変えてアラインメントベクトルaを
とし、アテンションベクトルD5を
とすることができる。
・poolingせずに、アテンションベクトル
に対してpoolingをすることができる。
・max pooling/average poolingの違い。
・poolingの方向を変えてアラインメントベクトルaを
とし、アテンションベクトルD5を
とすることができる。
・poolingせずに、アテンションベクトル
に対してpoolingをすることができる。
式(4)において、単語ベクトル系列D4の代わりに、単語ベクトル系列D1のうち単語wに対応する単語ベクトル系列を用いることができる。
・poolingの代わりに単語ベクトル系列P2の末尾の単語ベクトル(RNNの最終状態)を使うことができる。また、入力文Pに単語wが現れる場合、単語wに相当する単語ベクトルを使うことができる。
・非特許文献1にあるように、元のベクトルとの差を取ったもの、要素積を取ったものを用いることができる。元のベクトルとしては、単語ベクトル系列D4の最終状態を用いる他、単語ベクトル系列P2内の単語wの単語ベクトルを用いることが可能である。
・poolingの代わりに単語ベクトル系列P2の末尾の単語ベクトル(RNNの最終状態)を使うことができる。また、入力文Pに単語wが現れる場合、単語wに相当する単語ベクトルを使うことができる。
・非特許文献1にあるように、元のベクトルとの差を取ったもの、要素積を取ったものを用いることができる。元のベクトルとしては、単語ベクトル系列D4の最終状態を用いる他、単語ベクトル系列P2内の単語wの単語ベクトルを用いることが可能である。
このように複数の方法を用いてアテンションベクトルを作成して利用することによって、入力文Pと定義文Dwの各単語との、複数の観点における関係性(意味的な類似性)を考慮することができる。
<<ステップ2>>
ステップ1の結果、単語wはnP個のアテンションベクトルD5で表現される。それぞれのアテンションベクトルD5を並べた行列を
としたとき、定義文考慮文脈符号化部280は、下記式(5)を用いて、一つのベクトルD6に変換し、定義文を表すベクトルとする。
ステップ1の結果、単語wはnP個のアテンションベクトルD5で表現される。それぞれのアテンションベクトルD5を並べた行列を
としたとき、定義文考慮文脈符号化部280は、下記式(5)を用いて、一つのベクトルD6に変換し、定義文を表すベクトルとする。
また、式(5)の線形変換に加えて、多層パーセプトロン(MLP)を用いることができる。
<<ステップ3>>
定義文考慮文脈符号化部280は、単語ベクトル系列P2の内の単語wに対応する単語ベクトルに、定義文を表すベクトルD6を代入する。なお、代入の他、元の単語ベクトルにベクトルD6を加算または連結するようにしてもよい。なお、連結する場合は、単語ベクトルの次元d1を調整する必要がある。
定義文考慮文脈符号化部280は、単語ベクトル系列P2の内の単語wに対応する単語ベクトルに、定義文を表すベクトルD6を代入する。なお、代入の他、元の単語ベクトルにベクトルD6を加算または連結するようにしてもよい。なお、連結する場合は、単語ベクトルの次元d1を調整する必要がある。
ステップ1〜3までの語彙VPに含まれるNe個の単語に関する反復が終わったとき、代入後の単語ベクトル系列P2を単語ベクトル系列P3とする。単語ベクトル系列P3は、LP×d1の大きさの行列である。
なお、単語ベクトル系列P2の単語ベクトルの内、語彙VDに含まれない単語uの単語ベクトルにも操作を加えることができる。具体的な操作として、単語ベクトル系列P2の単語uに対応する単語ベクトルに対し、任意のd1次元ベクトルの所定係数倍したものを加える、単語ベクトル系列P1のうち単語uに相当する単語ベクトルの所定係数倍したものを加える、またはこれらの組み合わせである。係数や加える任意のベクトルは事前に指定する場合と、ニューラルネットワークのパラメータとして学習する場合がある。
<<ステップ4>>
定義文考慮文脈符号化部280は、単語ベクトル系列P3を、LSTM等の既存手法を用いて単語ベクトル系列P4に変換することができる。単語ベクトル系列P4は、LP×d1の大きさの行列である。
定義文考慮文脈符号化部280は、単語ベクトル系列P3を、LSTM等の既存手法を用いて単語ベクトル系列P4に変換することができる。単語ベクトル系列P4は、LP×d1の大きさの行列である。
そして、定義文考慮文脈符号化部280は、生成した単語ベクトル系列P4を、入力文Pを表すベクトルの系列として、出力部110に渡す。
出力部110は、定義文考慮文脈符号化部280により得られた入力文Pを表すベクトルの系列を出力する。
<本発明の第1の実施の形態に係るベクトル生成装置の作用>
図2は、本発明の実施の形態に係るベクトル生成処理ルーチンを示すフローチャートである。
図2は、本発明の実施の形態に係るベクトル生成処理ルーチンを示すフローチャートである。
入力部100に入力文Pが入力されると、解析部200において、図2に示すベクトル生成処理ルーチンが実行される。
まず、ステップS100において、入力部100は、入力文Pの入力を受け付ける。
ステップS110において、トークン系列生成部210は、入力文Pから、トークンの系列Pを生成する。
ステップS120において、定義文生成部220は、トークン系列生成部210により生成された単語の系列Pのうち、辞書DB230に格納されている見出し語である単語の各々について、当該見出し語yの定義文Dyから単語の系列Dを生成する。
ステップS130において、トークン符号化部240は、上記ステップS110により生成された単語の系列Pと、上記ステップS120により語彙VPに含まれる単語w毎に生成された単語の系列Dと、トークンDB250に格納された複数の単語ベクトルとに基づいて、単語の系列Pに含まれる単語の各々についての単語ベクトル系列P1と、語彙VPに含まれる単語w毎の、単語の系列Dに含まれる単語の各々についての単語ベクトル系列D1とを生成する。
ステップS140において、第1文脈符号化部260は、上記ステップS130により生成された単語ベクトルP1を、ニューラルネットワークを用いて単語ベクトル系列P2に変換する。
ステップS150において、第2文脈符号化部270は、上記ステップS130により生成された語彙VPに含まれる単語w毎の単語ベクトル系列D1を、ニューラルネットワークによって単語ベクトル系列D2に変換する。
ステップS160において、トークンDB250は、第2文脈符号化部270により取得した単語ベクトル系列D2を格納する。
ステップS170において、定義文考慮文脈符号化部280は、語彙VPに含まれるNe個の単語のうち、1番目の単語wを選択する。
ステップS180において、定義文考慮文脈符号化部280は、上記ステップS150により得られた単語ベクトルD2から、単語wに対応する単語ベクトル系列D4を抽出し、上記ステップS140により得られた単語ベクトル系列P2と、単語ベクトル系列D4とを用いて、アテンションベクトルD5を計算する。
ステップS190において、定義文考慮文脈符号化部280は、nP個のアテンションベクトルD5を、式(5)を用いて、一つのベクトルD6に変換する。
ステップS200において、定義文考慮文脈符号化部280は、単語ベクトル系列P2の内の単語wに対応する単語ベクトルに、ベクトルD6を代入する。
ステップS210において、定義文考慮文脈符号化部280は、語彙VPに含まれるNe個の単語の全てについて処理したか否かを判定する。
全ての単語について処理していない場合(ステップS210のNO)、ステップS220において、語彙VPに含まれる次の単語wを選択し、ステップS180に戻る。
一方、全ての単語について処理した場合(ステップS210のYES)、ステップS230において、定義文考慮文脈符号化部280は、単語ベクトル系列P3を、LSTM等の既存手法を用いて入力文Pを表すベクトルに変換する。
ステップS240において、出力部110は、上記ステップS230により得られた入力文Pを表すベクトルを出力する。
以上説明したように、本実施形態に係るベクトル生成装置によれば、入力文に含まれる各単語のベクトルに基づいて、入力文を表すベクトルの系列を生成する際に、見出し語と、当該見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、入力文に含まれる単語のうち、辞書DBに格納されている当該見出し語である単語について、当該見出し語の定義文を表すベクトルを生成し、定義文を表すベクトルを用いて、入力文を表すベクトルの系列を生成することにより、入力文を表す適切なベクトルを生成することができる。
なお、本実施形態において、第2文脈符号化部270と、第1文脈符号化部260とを同様の構成としたが、異なる構成にしてもよい。例えば、一方を各単語ベクトルに対する線形変換とすることができる。線形変換のパラメータは学習することも事前に指定することも可能である。
<本発明の第2の実施の形態に係る文ペア学習装置の概要>
本実施形態では、単語の定義文Dyをベクトル化する際に、処理対象である文ペア(文P及び文Hのペア)の情報を用いることで、より推定に資する特徴量を残した変換をするようにネットワークを学習可能にする。
本実施形態では、単語の定義文Dyをベクトル化する際に、処理対象である文ペア(文P及び文Hのペア)の情報を用いることで、より推定に資する特徴量を残した変換をするようにネットワークを学習可能にする。
単語の定義文Dyを利用することで、単語のベクトル表現をより「文関係性の認識に資する」ように得ることが期待される。
よって、推定対象である文ペアの情報を用いて単語の定義文Dyを動的に変換し、文ペアに応じた異なる単語ベクトルに変換することができる。
すなわち、文ペアの関係性を高精度に実施することができる。特に、低頻度語・固有名詞・専門用語を含む文の関係性推定の精度を向上することができる。
また、学習データに無い専門用語が含まれるテストデータの推定を、従来よりも高い精度で行うことができる。また、学習後の専門用語の逐次的な追加が可能になる。
<本発明の第2の実施の形態に係る文ペア学習装置の構成>
図3を参照して、本発明の第2の実施の形態に係る文ペア学習装置の構成について説明する。図3は、本発明の実施の形態に係る文ペア学習装置20の構成を示すブロック図である。なお、第1の実施の形態に係るベクトル生成装置10と同様の構成については、同一の符号を付して詳細な説明は省略する。
図3を参照して、本発明の第2の実施の形態に係る文ペア学習装置の構成について説明する。図3は、本発明の実施の形態に係る文ペア学習装置20の構成を示すブロック図である。なお、第1の実施の形態に係るベクトル生成装置10と同様の構成については、同一の符号を付して詳細な説明は省略する。
図3に示すように、本実施形態に係る文ペア学習装置20は、入力部400と、解析部500と、パラメータ学習部410とを備えて構成される。
入力部400は、関係性を示す関係ラベルが予め付与された文ペア(文P及び文H)の入力を受け付ける。
そして、入力部400は、受け付けた文ペアを、トークン系列生成部210及びパラメータ学習部410に渡す。
解析部500は、トークン系列生成部510と、定義文生成部520と、辞書DB230と、トークン符号化部540と、トークンDB250と、第1文脈符号化部560と、第2文脈符号化部270と、定義文考慮文脈符号化部580と、文ペア符号化部590と、関係ラベル推定部600とを備えて構成される。
トークン系列生成部510は、文ペアに含まれる文P、文Hの各々について、トークンの系列P’、H’を生成する。以下、本実施形態では、第1の実施形態と同様に、トークンとして単語を用いた場合について説明する。
具体的には、トークン系列生成部510は、トークン系列生成部210と同様に、文P、文Hをそれぞれ単語に分割し、単語の系列P’、H’を生成する。入力された文P、文Hの長さをそれぞれLP、LHとすると、生成される単語の系列P’、H’は、それぞれLP、LHの大きさのベクトルとなる。
そして、トークン系列生成部510は、生成した単語の系列P’、H’を、定義文生成部520、及びトークン符号化部540に渡す。
定義文生成部520は、トークン系列生成部510により生成された単語の系列P’、H’のうち、辞書DB230に格納されている見出し語yである単語の各々について、当該見出し語の定義文Dyから単語の系列Dを生成する。
具体的には、定義文生成部520は、辞書DB230の見出し語yのうち、トークン系列生成部510により生成された単語の系列P’、H’に含まれる単語を検索し、該当する単語の各々について、当該単語を見出し語とする定義文Dyを単語に分割して系列とした単語の系列Dを生成する。単語の系列P’、H’に含まれる見出し語である単語wの集合を語彙VPHとする。
ここで、語彙VPHの語彙数(単語wの異なり数)をNe、定義文Dyの長さで最大のものをLeとする。すなわち、Neは、語彙VPHに含まれ、かつ、単語の系列P’、H’に含まれる単語の個数のうち、単語の系列P及びHにおいて重複する単語を排除した個数である。単語の系列Dは、Leの大きさのベクトルとなる。
そして、定義文生成部520は、語彙VPHに含まれる単語w毎に、生成した単語の系列D(Ne個分)を、トークン符号化部540及び第2文脈符号化部270に渡す。
トークン符号化部540は、トークン系列生成部510により生成された単語の系列P’、H’と、定義文生成部220により語彙VPHに含まれる単語w毎に生成された単語の系列Dと、トークンDB250に格納された複数の単語ベクトルとに基づいて、単語の系列P’に含まれる単語の各々についての単語ベクトル系列P1と、語彙VPHに含まれる単語w毎に、単語の系列H’に含まれる単語の各々についての単語ベクトルH1と、語彙VPHに含まれる単語w毎の、単語の系列Dに含まれる単語の各々についての単語ベクトル系列D1とを生成する。
具体的には、トークン符号化部540は、トークン符号化部240と同様に、単語ベクトル系列P1と、単語ベクトル系列D1とを生成する。また、トークン符号化部540は、トークン符号化部240における単語ベクトル系列P1の生成と同様に、単語の系列Hに含まれる単語の各々について、トークンDB250から当該単語に対応する単語ベクトルを抽出して、単語ベクトル系列H1を生成する。
ここで、トークンDB250に格納された単語ベクトルの次元をdとすると、単語ベクトル系列P1はLP×dの大きさの行列、単語ベクトル系列H1はLH×dの大きさの行列、語彙VPHに含まれる単語w毎の単語ベクトル系列D1はLe×dの大きさの行列(Ne個分)となる。
そして、トークン符号化部540は、生成した単語ベクトル系列P1、H1を第1文脈符号化部560に、単語ベクトル系列D1を第2文脈符号化部270に、それぞれ渡す。単語ベクトル系列P1、H1、D1は、定義文考慮文脈符号化部580で用いる場合もある。
第1文脈符号化部560は、トークン符号化部540により生成された単語ベクトル系列P1、H1を、ニューラルネットワークを用い、文脈を考慮して単語ベクトル系列P2、H2にそれぞれ変換する。
具体的には、第1文脈符号化部560は、第1文脈符号化部260と同様に、単語ベクトル系列P1を単語ベクトル系列P2に、単語ベクトル系列H1を、単語ベクトル系列H2に変換する。
そして、第1文脈符号化部560は、変換した単語ベクトル系列P2、H2を、定義文考慮文脈符号化部580に渡す。
定義文考慮文脈符号化部580は、ニューラルネットワークを用いて、文ペア(文P、文H)に含まれる単語のうち、辞書DB230に格納されている見出し語である単語wについて、単語wの定義文Dwを表すベクトルを生成し、生成された定義文Dwを表すベクトルを用いて、文ペアの各文を表すベクトルの系列をそれぞれ生成する。
ここで、考慮する文ペア(文P、文H)と定義文Dwとの関係性とは、入力文Pを構成する単語と、入力文Hを構成する単語と、定義文Dwを構成する単語との意味的な類似性を指す。
単語wに対応する定義文のベクトル系列D2を用いて入力文P、Hの単語wの単語ベクトルを生成する際に、単語ベクトル系列D2のうち、入力文P、Hの各単語の単語ベクトルとの意味的類似性が高いものが強調されるよう、処理を行う。
具体的には、定義文考慮文脈符号化部580は、語彙VDに含まれるNe個の単語wの各々について、ステップ1〜ステップ4を繰り返す。
(ステップ1)Ne個の単語ベクトル系列D2のうち、処理対象となる単語wに対応する単語ベクトル系列をD4とし、第1文脈符号化部560により得られた単語ベクトル系列P2と、第2文脈符号化部270により得られた単語ベクトル系列D4とのアテンションを取り、(ステップ2)第1文脈符号化部560により得られた単語ベクトル系列H2と、単語ベクトル系列D4とのアテンションを取り、(ステップ3)アテンション結果を用いて単語ベクトル系列D2を単語ベクトルD6に変換し、(ステップ4)単語ベクトルD6を用いて、単語ベクトル系列P2を変換した新しい単語ベクトル系列P3を求めると共に、単語ベクトルD6を用いて、単語ベクトル系列H2を変換した新しい単語ベクトル系列H3を求める。
そして、定義文考慮文脈符号化部580は、(ステップ5)最終的に得られた単語ベクトル系列P3を文Pを表すベクトルの系列P4に変換すると共に、最終的に得られた単語ベクトル系列H3を文Hを表すベクトルの系列H4に変換する。
<<ステップ1>>
定義文考慮文脈符号化部580においては、定義文考慮文脈符号化部280のステップ1と同様に、語彙VDに含まれる単語w毎の単語ベクトル系列D2から、単語ベクトル系列D4を抽出する。
定義文考慮文脈符号化部580においては、定義文考慮文脈符号化部280のステップ1と同様に、語彙VDに含まれる単語w毎の単語ベクトル系列D2から、単語ベクトル系列D4を抽出する。
そして、定義文考慮文脈符号化部580は、定義文考慮文脈符号化部280のステップ1と同様に、第1文脈符号化部560により得られた単語ベクトル系列P2と、単語ベクトル系列D4とを用いて、アテンションベクトルD5,Pを式(4)により計算する。
すなわち、nP個のアテンションベクトルD5,Pが得られる。
<<ステップ2>>
ステップ1と同様に、定義文考慮文脈符号化部580は、第1文脈符号化部560により得られた単語ベクトル系列H2と、単語ベクトル系列D4とを用いて、アテンションベクトルD5,Hを計算する。
ステップ1と同様に、定義文考慮文脈符号化部580は、第1文脈符号化部560により得られた単語ベクトル系列H2と、単語ベクトル系列D4とを用いて、アテンションベクトルD5,Hを計算する。
すなわち、nh個のアテンションベクトルD5Hとが得られる。
<<ステップ3>>
ステップ1及び2の結果、単語wはnP+nh個のアテンションベクトルD5で表現される。それぞれのアテンションベクトルD5を並べた行列を
としたとき、定義文考慮文脈符号化部580は、式(6)を用いて、一つのベクトルD6に変換し、定義文を表すベクトルとする。
ステップ1及び2の結果、単語wはnP+nh個のアテンションベクトルD5で表現される。それぞれのアテンションベクトルD5を並べた行列を
としたとき、定義文考慮文脈符号化部580は、式(6)を用いて、一つのベクトルD6に変換し、定義文を表すベクトルとする。
また、式(6)の線形変換に加えて、多層パーセプトロン(MLP)を用いることができる。
<<ステップ4>>
定義文考慮文脈符号化部580は、単語ベクトル系列P2、H2の内の単語wに対応する単語ベクトルに、当該単語wの定義文を表すベクトルD6を代入する。なお、代入の他、元の単語ベクトルにベクトルD6を加算または連結するようにしてもよい。なお、連結する場合は、単語ベクトルの次元d1を調整する必要がある。
定義文考慮文脈符号化部580は、単語ベクトル系列P2、H2の内の単語wに対応する単語ベクトルに、当該単語wの定義文を表すベクトルD6を代入する。なお、代入の他、元の単語ベクトルにベクトルD6を加算または連結するようにしてもよい。なお、連結する場合は、単語ベクトルの次元d1を調整する必要がある。
ステップ1〜3までの語彙VPHに含まれるNe個の単語に関する反復が終わったとき、代入後の単語ベクトル系列P2を単語ベクトル系列P3とし、代入後の単語ベクトル系列H2を単語ベクトル系列H3とする。単語ベクトル系列P3は、Lp×d1の大きさの行列、単語ベクトル系列H3は、LH×d1の大きさの行列である。
なお、定義文考慮文脈符号化部280のステップ3と同様に、単語ベクトル系列P2、H2の単語ベクトルの内、語彙VDに含まれない単語uの単語ベクトルにも操作を加えることができる。
<<ステップ5>>
定義文考慮文脈符号化部580は、単語ベクトル系列P3、H3を、LSTM等の既存手法を用いて単語ベクトル系列P4、H4に変換することができる。単語ベクトル系列P4は、Lp×d1の大きさのテンソル、単語ベクトル系列H4は、LH×d1の大きさの行列である。
定義文考慮文脈符号化部580は、単語ベクトル系列P3、H3を、LSTM等の既存手法を用いて単語ベクトル系列P4、H4に変換することができる。単語ベクトル系列P4は、Lp×d1の大きさのテンソル、単語ベクトル系列H4は、LH×d1の大きさの行列である。
そして、定義文考慮文脈符号化部580は、生成した単語ベクトル系列P4、H4をそれぞれ文Pを表わすベクトルの系列、文Hを表すベクトルの系列として、文ペア符号化部590に渡す。
文ペア符号化部590は、定義文考慮文脈符号化部580により得られた文ペアの各文を表すベクトルの系列である単語ベクトル系列P4、H4の各々に基づいて、関係ラベル推定に用いるベクトルBを生成する。
具体的には、文ペア符号化部590は、従来技術(例えば、参考文献3〜5)の技術を用いて、関係ラベル推定に用いるベクトルを生成する。
[参考文献3]Q. Chen, X. Zhu, Z. Ling, S. Wei, H. Jiang, and D. Inkpen. Enhanced LSTM for natural language in-ference. In ACL, 2017.
[参考文献4]Bilateral Multi-Perspective Matching for Natural Language Sentences.
[参考文献5]Natural Language Inference Over Interaction Space.
[参考文献3]Q. Chen, X. Zhu, Z. Ling, S. Wei, H. Jiang, and D. Inkpen. Enhanced LSTM for natural language in-ference. In ACL, 2017.
[参考文献4]Bilateral Multi-Perspective Matching for Natural Language Sentences.
[参考文献5]Natural Language Inference Over Interaction Space.
以下、参考文献3を用いた場合について説明する。
次に、文ペア符号化部590は、行列APの各行に関して、ソフトマックス関数を用いたAPを計算する。
を縦につなげた単語ベクトル系列P5を計算する。単語ベクトル系列P5は、LP×4d1である。また、
は要素積である。
を縦につなげた単語ベクトル系列P5を計算する。単語ベクトル系列P5は、LP×4d1である。また、
は要素積である。
また、文ペア符号化部590は、Hに関しても同様に単語ベクトル系列H5を計算する。単語ベクトル系列H5は、LH×4d1である。
そして、文ペア符号化部590は、単語ベクトル系列P5、H5の各ベクトルを1層Feed Forward Networkを用いて変換し、ベクトル系列P6、H6を計算する。ベクトル系列P6、H6は、それぞれLP×d2、LH×d2となる。
次に、文ペア符号化部590は、ベクトル系列P6、H6を、RNNによってベクトル系列P7、H7に変換する。そして、文ペア符号化部590は、ベクトル系列P7、H7を行方向にmax pooling、average poolingしたベクトル
を計算する。
を計算する。
そして、文ペア符号化部590は、PM、PA、HM、HAを縦に並べたベクトルBを、関係ラベル推定部600に渡す。
関係ラベル推定部600は、ニューラルネットワークを用いて、文ペア符号化部590により得られた、ベクトルBに基づいて、文ペアの関係性を示す関係ラベルを推定する。
具体的には、関係ラベル推定部600は、従来技術(例えば、参考文献3〜5)の技術を用いて、関係ラベル推定を行う。
参考文献3を用いた場合、関係ラベル推定部600は、文ペア符号化部590から取得したベクトルBをMLPによって所定のZ次元ベクトルに変換し、ソフトマックス関数を用いて文ペアの関係ラベルに関する確率分布を計算する。Zの値は、推定する関係ラベルの数に基づき決定される。例えば、含意認識タスクにおいては、(1)真である、(2)偽である、(3)判断がつけられない、に対応した3次元となる。
ここで、関係ラベル推定部600は、確率分布を推定結果としても、最も高い確率の関係ラベルを推定結果としてもよい。
そして、関係ラベル推定部600は、推定結果を、パラメータ学習部410に渡す。
パラメータ学習部410は、文ペアに付与された関係ラベルと、関係ラベル推定部により推定された関係ラベルとに基づいて、文ペアの関係性を示す関係ラベルを推定するためのニューラルネットワークのパラメータを更新する。
具体的には、パラメータ学習部410は、関係ラベル推定部600により得られた推定結果と、正解ラベルから損失を計算し、計算された損失に基づいて、文ペアの関係性を示す関係ラベルを推定するためのニューラルネットワークのパラメータを更新する。損失を計算する際に、クロスエントロピー関数等の損失関数を用いる。
そして、パラメータ学習部410は、学習データである文ペアの推定精度に基づいて、収束判定を行う。例えば、推定精度の増減に基づいて、収束判定を行い、収束したら学習を終了する。
そして、パラメータ学習部410は、学習したパラメータを解析部500に渡す。解析部500は、学習したパラメータを記憶部(図示しない)に格納する。
<本発明の第2の実施の形態に係る文ペア学習装置の作用>
図4は、本発明の第2の実施の形態に係る文ペア学習ルーチンを示すフローチャートである。なお、第1の実施の形態に係るベクトル生成処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。また、以下では本実施形態に係る文ペア学習装置が、ミニバッチを用いて学習する場合について説明するが、任意のニューラルネットワークの学習方法を用いることができる。
図4は、本発明の第2の実施の形態に係る文ペア学習ルーチンを示すフローチャートである。なお、第1の実施の形態に係るベクトル生成処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。また、以下では本実施形態に係る文ペア学習装置が、ミニバッチを用いて学習する場合について説明するが、任意のニューラルネットワークの学習方法を用いることができる。
ステップS300において、入力部400は、関係性を示す関係ラベルが予め付与された文ペア(文P及び文H)の入力を受け付ける。
ステップS302において、トークン系列生成部510は、ステップS300により受け付けた文ペアを、ミニバッチに分割する。ミニバッチとは、文ペアをランダムに分割した文ペアk個の集合である。kは1以上の自然数である。
ステップS304において、トークン系列生成部510は、1番目のミニバッチを選択する。
ステップS306において、トークン系列生成部510は、1番目の文を選択する。
ステップS310において、トークン系列生成部510は、1番目のミニバッチに含まれる文P、文Hの各々について、トークンの系列P、Hを生成する。
ステップS320において、定義文生成部520は、辞書DB230の見出し語yと、上記ステップS310により生成された単語の系列P、Hとにおいて共通する単語の各々について、当該単語の定義文Dyから単語の系列Dを生成する。
ステップS330において、トークン符号化部540は、上記ステップS310により生成された単語の系列P、Hと、ステップS120により生成された単語の系列Dと、トークンDB250に格納された複数の単語ベクトルとに基づいて、単語の系列Pに含まれる単語の各々についての単語ベクトル系列P1と、語彙VPHに含まれる単語w毎に、単語の系列Hに含まれる単語の各々についての単語ベクトルH1と、語彙VPHに含まれる単語w毎の、単語の系列Dに含まれる単語の各々についての単語ベクトル系列D1とを生成する。
ステップS340において、第1文脈符号化部560は、上記ステップS330により生成された単語ベクトルP1、H1を、ニューラルネットワークを用いて単語ベクトル系列P2、H2にそれぞれ変換する。
ステップS380において、定義文考慮文脈符号化部580は、ニューラルネットワークを用いて、ステップS150により得られた単語ベクトルD2から、単語wに対応する単語ベクトル系列D4を抽出し、上記ステップS340により得られた単語ベクトル系列P2及びH2と、単語ベクトル系列D4とを用いて、アテンションベクトルD5を計算する。
ステップS390において、定義文考慮文脈符号化部580は、nP+nH個のアテンションベクトルD5を、式(5)を用いて、一つのベクトルD6に変換する。
ステップS400において、定義文考慮文脈符号化部580は、単語ベクトル系列P2、H2の内の単語wに対応する単語ベクトルに、ベクトルD6を代入する。
ステップS430において、定義文考慮文脈符号化部580は、単語ベクトル系列P3、H3を、LSTM等の既存手法を用いて単語ベクトル系列P4、H4に変換する。
ステップS440において、関係ラベル推定部600は、ニューラルネットワークを用いて、上記ステップS430により得られた、文ペアの各文を表すベクトルの各々に基づいて、文ペアの関係性を示す関係ラベルを推定する。
ステップS442において、パラメータ学習部410は、全ての文について処理を行ったか否かを判定する。
全ての文について処理を行っていない場合(ステップS442のNO)、ステップS444において、次の文を選択し、ステップS310に戻る。
一方、全ての文について処理を行っている場合(ステップS442のYES)、ステップS450において、パラメータ学習部410は、上記ステップS440により得られた推定結果と、正解ラベルから損失を計算する。
ステップS460において、パラメータ学習部410は、全てのミニバッチについて処理を行ったか否かを判定する。
全てのミニバッチについて処理を行っていない場合(ステップS460のNO)、ステップS470において、次のミニバッチを選択し、ステップS310に戻る。
一方、全てのミニバッチについて処理を行っている場合(ステップS460のYES)、ステップS480において、パラメータ学習部410は、推定精度に基づいて、収束判定を行う。
収束している場合(ステップS480のNO)、ステップS300に戻り、新たな学習データの入力を受け付け、ステップS300〜ステップS480の処理を繰り返す。
一方、収束している場合(ステップS480のYES)、ステップS490において、パラメータ学習部410は、学習したパラメータを更新する。
<本発明の第2の実施の形態に係る関係ラベル推定装置の構成>
次に、本発明の第2の実施の形態に係る文ペア学習装置20により学習されたニューラルネットワークを用いて、入力された関係ラベルを推定する関係ラベル推定装置30の構成について説明する。なお、第1の実施の形態に係るベクトル生成装置10と、文ペア学習装置20と同様の構成については、同一の符号を付して詳細な説明は省略する。
次に、本発明の第2の実施の形態に係る文ペア学習装置20により学習されたニューラルネットワークを用いて、入力された関係ラベルを推定する関係ラベル推定装置30の構成について説明する。なお、第1の実施の形態に係るベクトル生成装置10と、文ペア学習装置20と同様の構成については、同一の符号を付して詳細な説明は省略する。
関係ラベル推定装置30は、入力部700と、解析部800と、出力部710とを備えて構成される。
入力部700は、文ペア(文P、文H)の入力を受け付ける。
そして、入力部700は、トークン系列生成部810に、受け付けた文ペアを渡す。
解析部800は、トークン系列生成部510と、定義文生成部520と、辞書DB230と、トークン符号化部540と、トークンDB250と、第1文脈符号化部560と、第2文脈符号化部270と、定義文考慮文脈符号化部580と、文ペア符号化部590と、関係ラベル推定部600とを備えて構成される。
具体的には、解析部800の各ブロックは、文ペア学習装置20により学習されたニューラルネットワークのパラメータに基づいて、各処理を行う。
出力部710は、関係ラベル推定部600による推定結果を出力する。
<本発明の第2の実施の形態に係る関係ラベル推定装置の作用>
図6は、本発明の第2の実施の形態に係る関係ラベル推定処理ルーチンを示すフローチャートである。なお、第1の実施の形態に係るベクトル生成処理ルーチン、及び文ペア学習処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。
図6は、本発明の第2の実施の形態に係る関係ラベル推定処理ルーチンを示すフローチャートである。なお、第1の実施の形態に係るベクトル生成処理ルーチン、及び文ペア学習処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。
ステップS500において、入力部700は、文ペア(文P、文H)の入力を受け付ける。
ステップS510において、出力部710は、関係ラベル推定部600による推定結果を出力する。
<本発明の第2の実施の形態に係る手法の実験結果>
次に、第2の実施形態で説明した手法における実験について述べる。
次に、第2の実施形態で説明した手法における実験について述べる。
<<比較手法>>
ベースラインモデルとして、参考文献3の手法(以下、ESIM)、非特許文献1の手法(以下、Bahdanau)の2つと比較した。Bahdanau及び本実施形態は、それぞれESIMにモジュールを追加して実験を行った。
ベースラインモデルとして、参考文献3の手法(以下、ESIM)、非特許文献1の手法(以下、Bahdanau)の2つと比較した。Bahdanau及び本実施形態は、それぞれESIMにモジュールを追加して実験を行った。
なお、Bahdanauは、文ペア内に現れる単語のうち、トークンDB250に格納された単語ベクトルを持たない単語の集合(OOV)の単語ベクトルを補完することが目的であるため、用い得る単語の集合は、(VI∩VD)−VEである。
ここで、VIは、文Pと文Hに現れる単語の、全ての文ペアに関する和集合であり、VEは、事前学習されたトークンDB250が持つ単語の集合である。
また、本実施形態では、辞書情報による関係ラベル推定精度の向上が目的であるため、用い得る単語の集合はVI∩VDである。
<<実験設定>>
MNLIデータセットとは、参考文献6に記述されたデータセットである。
[参考文献6]A. Williams, N. Nangia, and S. R. Bowman. A broad-coverage challenge corpus for sentence understanding through inference. CoRR, abs/1704.05426, 2017.
MNLIデータセットとは、参考文献6に記述されたデータセットである。
[参考文献6]A. Williams, N. Nangia, and S. R. Bowman. A broad-coverage challenge corpus for sentence understanding through inference. CoRR, abs/1704.05426, 2017.
また、Pythonのstr.split()関数を行って単語化した後、小文字への統一と句読点等一部記号を削除する前処理を行った。トークンDB250に事前学習された300次元GloVe840Bベクトルを用いた(参考文献7)
[参考文献7]G. A. Miller. WordNet: A lexical database for english. Commun. ACM, 38(11):39-41, 1995.
[参考文献7]G. A. Miller. WordNet: A lexical database for english. Commun. ACM, 38(11):39-41, 1995.
OOVの単語は正規分布からランダムにサンプリングした。トークンDB250内の単語ベクトルは学習中固定した。
また、エンコーダとデコーダに用いるRNNには、2層双方向SRUを用いた(参考文献2)。双方向SRUの出力次元数をn2=200とし、活性化関数にtanh関数を用いた。
学習は1つのGPUで行った。ミニバッチサイズは32とした。最適化は参考文献8の手法を用い、第1モメンタムを0.9、第2モメンタムを0.999とした。初期学習率は0.0004とし、減衰率は0.25とした。学習データから学習を行い、スケジューリングで学習率を減衰させ、開発データで評価を行った。
[参考文献8]D. P. Kingma and J. Ba. Adam: A method for stochastic optimization. CoRR, abs/1412.6980, 2014.
[参考文献8]D. P. Kingma and J. Ba. Adam: A method for stochastic optimization. CoRR, abs/1412.6980, 2014.
<<辞書>>
辞書DB230として、WordNet(参考文献7)の語彙VDと定義文Dyを用いた。参考文献7をPythonのstr.split()関数で行った後、小文字への統一と句読点など一部記号を削除する前処理を行った。1つの見出し語yに定義文Dyが複数文ある多義語では、参考文献7に提供されている語義の出現頻度で降順に、5つの定義文をつなげた文章を定義文Dyとした。
辞書DB230として、WordNet(参考文献7)の語彙VDと定義文Dyを用いた。参考文献7をPythonのstr.split()関数で行った後、小文字への統一と句読点など一部記号を削除する前処理を行った。1つの見出し語yに定義文Dyが複数文ある多義語では、参考文献7に提供されている語義の出現頻度で降順に、5つの定義文をつなげた文章を定義文Dyとした。
また、参考文献9のストップワードを語彙VDから取り除いた。
[参考文献9]S. Bird, E. Klein, and E. Loper. Natural Language Pro-cessing with Python. O'Reilly Media, Inc., 2009.
[参考文献9]S. Bird, E. Klein, and E. Loper. Natural Language Pro-cessing with Python. O'Reilly Media, Inc., 2009.
<<評価>>
<<<実験1>>>
実験1では、OOVが多い状況下での含意認識精度比較既存研究(非特許文献1)に即して、トークンDB250に含まれる単語ベクトルの語彙を制限した状況での精度(正解率)の比較をした。
<<<実験1>>>
実験1では、OOVが多い状況下での含意認識精度比較既存研究(非特許文献1)に即して、トークンDB250に含まれる単語ベクトルの語彙を制限した状況での精度(正解率)の比較をした。
トークンDB250に含まれる単語ベクトルの語彙を意図的に制限することで、OOVの単語が多い状況下での辞書情報の精度への影響を調べることができる。語彙VEに学習データで出現頻度が高い3000語のみ使用した。残りの単語はOOVとした。辞書の語彙はWordNetの全語彙とした。
図7に実験1の結果を示す。図7の数値は関係ラベルの推定精度を表す。MNLIは10のドメインから成る。5つのドメインは学習データ・開発データともに含まれ、matchedドメインと呼ばれる。残り5つのドメインは開発データのみに含まれ、mismatchedドメインと呼ばれる。
実験1では、双方のドメインで本実施形態の手法が最も高い推定精度を示した。よって、OOVの単語が多い状況下で本実施形態の手法がベースラインモデルの精度を向上することを確認した。本実験のように、3000語にVEを限定した場合、基本的な語以外はOOVとなるため、matchedとmismatchedのドメインの違いによる大きな差が見られなかった。
<<<実験2>>>
実験2では、辞書DB230の語彙数を増やした時に学習ラベル推定の精度は向上するかを確認するため、MNLIデータセットにおいて辞書DB230の語彙数を変化させたときの推定精度の変化を調べた。
実験2では、辞書DB230の語彙数を増やした時に学習ラベル推定の精度は向上するかを確認するため、MNLIデータセットにおいて辞書DB230の語彙数を変化させたときの推定精度の変化を調べた。
辞書DB230の語彙は、学習データ・開発データでの出現頻度が高い語から順に使用した。辞書DB230の語彙数が0のとき、Bahdanauの手法と本実施形態の手法はESIMと一致する。
図8に実験2の結果を示す。図8は、辞書DB230の語彙数による関係ラベルの推定精度の変化を示す。図8の語彙数の右端は全ての語彙を用いたときの結果である。
図8から、辞書DB230の語彙を増やすほど精度が向上する傾向が見られる。Bahdanauの手法は、語彙数が小さいときは精度の向上が起きない。これは、語彙数が小さい辞書DB230にはOOVが含まれないため、Bahdanauらの手法がESIMと一致することに因る。
図8において、本実施形態では、全ての語彙数で最も高い精度を達成している。特に、語彙数が小さい時のBahdanauらの手法と本実施形態の手法との差は、頻出語における定義文DyについてトークンDB250の有用性を示唆している。
<<<実験3>>>
実験3では、OOV数と関係ラベルの推定精度に相関関係があるかについて実験した。実験1、実験2の結果では、定義文DyについてのトークンDB250の有用性が、単語がOOVであることに依存しているかどうかが明らかになっていない。MNLIデータセットではドメイン毎にOOVの数が違うため、OOV数と関係ラベルの推定精度の関係を調べることができる。
実験3では、OOV数と関係ラベルの推定精度に相関関係があるかについて実験した。実験1、実験2の結果では、定義文DyについてのトークンDB250の有用性が、単語がOOVであることに依存しているかどうかが明らかになっていない。MNLIデータセットではドメイン毎にOOVの数が違うため、OOV数と関係ラベルの推定精度の関係を調べることができる。
そこで、実験3では、ドメイン毎のOOV数と関係ラベルの推定精度を調べた。図9に実験3の結果を示す。図9の数値は各ドメインでの関係ラベルの推定精度を表す。
まず、MNLIデータセット全体を含む多くのドメインで本実施形態が最も高い関係ラベルの推定精度を達成した。次に、OOVが現れる文ペアにおける関係ラベルの推定精度を見ると、他の文ペアと同程度で推定精度が向上している。
ドメイン毎のOOV数に注目した場合も、例えばTelephone、Face to FaceのドメインはOOV数が小さいにも関わらず大きな精度の向上が見られる。10のドメインをサンプルとしてOOV数と関係ラベルの推定精度の相関係数を計算すると、ESIM、Bahdanauらの手法、本実施形態ではそれぞれ−0.07、−0.38、−0.21であり、p値は0.86、0.28、0.56であった。
<<<考察>>>
OOVの数と性能に有意な関係が見られない理由について以下考察する。本実験の設定ではGloVeで用意される語彙がMNLIの語彙を広くカバーするため、非OOVの方がOOVに比べて多く出現する。このため、定義文Dyに係るトークンDB250が及ぼす影響はOOVよりも非OOVに対して大きくなる。よって、辞書に含まれる全ての見出し語yに対してトークンDB250を用いる本実施形態は、Bahdanauに比べて精度を改善することができたと考える。
OOVの数と性能に有意な関係が見られない理由について以下考察する。本実験の設定ではGloVeで用意される語彙がMNLIの語彙を広くカバーするため、非OOVの方がOOVに比べて多く出現する。このため、定義文Dyに係るトークンDB250が及ぼす影響はOOVよりも非OOVに対して大きくなる。よって、辞書に含まれる全ての見出し語yに対してトークンDB250を用いる本実施形態は、Bahdanauに比べて精度を改善することができたと考える。
すなわち、常に単語の定義文Dyを用いる事で、よりリッチな情報をもとに推定ができる。また、本実験では比較のためトークンDB250の単語ベクトルを固定したが、ニューラルネットワークの学習後に、トークンDB250への単語ベクトルの追加が可能であるため、より関係ラベルの推定精度を高めることができる。
また、辞書DB230の定義文Dyを元に、定義文Dyの情報に応じた単語ベクトルを生成するため、学習ラベルの推定の際に有用な特徴量をできるだけ残して、入力及び定義文Dyから単語ベクトルを作成できる。定義文考慮文脈符号化部の導入により、定義文Dy内の特定の箇所に注目することができるため、定義文Dyが長文である場合や多義を表す複数文である場合に優位性がある。特に、多義性のある単語については、語義曖昧性解消の効果がある。
以上説明したように、本実施形態に係る文ペア学習装置によれば、ニューラルネットワークを用いて、文ペアに含まれる各単語のベクトルに基づいて、文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、文ペアに含まれる単語のうち、辞書DBに格納されている見出し語である単語について、見出し語の定義文を表すベクトルを生成し、生成された定義文を表すベクトルを用いて、文ペアの各文を表すベクトルの系列をそれぞれ生成し、ニューラルネットワークを用いて、文ペアの各文を表すベクトルの系列の各々に基づいて、文ペアの関係性を示す関係ラベルを推定し、文ペアに付与された関係ラベルと、推定された関係ラベルとに基づいて、ニューラルネットワークのパラメータを更新することにより、文ペアの関係性を精度よく推定するためのニューラルネットワークを学習することができる。
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
本実施形態において、学習方法はミニバッチを用いた場合を例に説明したが、これに限定されるものではない。任意のニューラルネットワークの学習方法を用いる構成としてもよい。
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
10 ベクトル生成装置
20 文ペア学習装置
30 関係ラベル推定装置
100 入力部
110 出力部
200 解析部
210 トークン系列生成部
220 定義文生成部
230 辞書DB
240 トークン符号化部
250 トークンDB
260 文脈符号化部
270 文脈符号化部
280 定義文考慮文脈符号化部
400 入力部
410 パラメータ学習部
500 解析部
510 トークン系列生成部
520 定義文生成部
540 トークン符号化部
560 文脈符号化部
580 定義文考慮文脈符号化部
590 文ペア符号化部
600 関係ラベル推定部
700 入力部
710 出力部
800 解析部
810 トークン系列生成部
20 文ペア学習装置
30 関係ラベル推定装置
100 入力部
110 出力部
200 解析部
210 トークン系列生成部
220 定義文生成部
230 辞書DB
240 トークン符号化部
250 トークンDB
260 文脈符号化部
270 文脈符号化部
280 定義文考慮文脈符号化部
400 入力部
410 パラメータ学習部
500 解析部
510 トークン系列生成部
520 定義文生成部
540 トークン符号化部
560 文脈符号化部
580 定義文考慮文脈符号化部
590 文ペア符号化部
600 関係ラベル推定部
700 入力部
710 出力部
800 解析部
810 トークン系列生成部
Claims (7)
- 入力文を表わすベクトルの系列を生成するベクトル生成装置であって、
前記入力文に含まれる各単語に対応するベクトルに基づいて、前記入力文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、前記入力文に含まれる単語のうち、前記辞書DBに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する定義文考慮文脈符号化部
を備えることを特徴とするベクトル生成装置。 - 前記定義文考慮文脈符号化部は、
前記入力文に含まれる単語のうち、前記辞書DBに格納されている見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する際に、前記入力文と、前記単語を見出し語とする前記定義文に含まれる各単語との関係性を考慮して、当該見出し語を表すベクトルを生成し、前記入力文に含まれる単語のベクトルとして用いる
ことを特徴とする請求項1記載のベクトル生成装置。 - 前記入力文は、第1の入力文と、第2の入力文とのペアであって、
前記定義文考慮文脈符号化部により得られた、前記第1の入力文を表わす第1ベクトルの系列と、前記第2の入力文を表わす第2ベクトルの系列とに基づいて、前記第1の入力文と、前記第2の入力文との関係性を示す関係ラベルを推定する関係ラベル推定部
を更に備えることを特徴とする請求項1又は2記載のベクトル生成装置。 - 関係性を示す関係ラベルが予め付与された文ペアの入力を受け付ける入力部と、
ニューラルネットワークを用いて、前記文ペアに含まれる各単語に対応するベクトルに基づいて、前記文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、前記文ペアに含まれる単語のうち、前記辞書DBに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記文ペアの各文を表すベクトルの系列をそれぞれ生成する定義文考慮文脈符号化部と、
ニューラルネットワークを用いて、前記定義文考慮文脈符号化部により得られた、前記文ペアの各文を表すベクトルの系列の各々に基づいて、前記文ペアの関係性を示す関係ラベルを推定する関係ラベル推定部と、
前記文ペアに付与された関係ラベルと、前記関係ラベル推定部により推定された関係ラベルとに基づいて、前記ニューラルネットワークのパラメータを更新するパラメータ学習部と、
を備えることを特徴とする文ペア学習装置。 - 入力文を表わすベクトルの系列を生成するベクトル生成方法であって、
定義文考慮文脈符号化部が、前記入力文に含まれる各単語に対応するベクトルに基づいて、前記入力文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、前記入力文に含まれる単語のうち、前記辞書DBに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記入力文を表すベクトルの系列を生成する
ことを特徴とするベクトル生成方法。 - 入力部が、関係性を示す関係ラベルが予め付与された文ペアの入力を受け付け、
定義文考慮文脈符号化部が、ニューラルネットワークを用いて、前記文ペアに含まれる各単語に対応するベクトルに基づいて、前記文ペアの各文を表すベクトルの系列を生成する際に、見出し語と、前記見出し語を定義する文である定義文との組を格納した辞書DBに基づいて、前記文ペアに含まれる単語のうち、前記辞書DBに格納されている前記見出し語である単語について、前記見出し語の定義文を用いて、前記文ペアの各文を表すベクトルの系列をそれぞれ生成し、
関係ラベル推定部が、ニューラルネットワークを用いて、前記定義文考慮文脈符号化部により得られた、前記文ペアの各文を表すベクトルの系列の各々に基づいて、前記文ペアの関係性を示す関係ラベルを推定し、
パラメータ学習部が、前記文ペアに付与された関係ラベルと、前記関係ラベル推定部により推定された関係ラベルとに基づいて、前記ニューラルネットワークのパラメータを更新する
ことを特徴とする文ペア学習方法。 - コンピュータを、請求項1乃至3の何れか1項記載のベクトル生成装置、又は請求項4記載の文ペア学習装置の各部として機能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018038074A JP6872505B2 (ja) | 2018-03-02 | 2018-03-02 | ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラム |
PCT/JP2019/008473 WO2019168202A1 (ja) | 2018-03-02 | 2019-03-04 | ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラム |
US16/977,045 US11893353B2 (en) | 2018-03-02 | 2019-03-04 | Vector generation device, sentence pair learning device, vector generation method, sentence pair learning method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018038074A JP6872505B2 (ja) | 2018-03-02 | 2018-03-02 | ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019153098A JP2019153098A (ja) | 2019-09-12 |
JP6872505B2 true JP6872505B2 (ja) | 2021-05-19 |
Family
ID=67805414
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018038074A Active JP6872505B2 (ja) | 2018-03-02 | 2018-03-02 | ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US11893353B2 (ja) |
JP (1) | JP6872505B2 (ja) |
WO (1) | WO2019168202A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7116309B2 (ja) * | 2018-10-10 | 2022-08-10 | 富士通株式会社 | コンテキスト情報生成方法、コンテキスト情報生成装置およびコンテキスト情報生成プログラム |
CN111428508A (zh) * | 2018-12-24 | 2020-07-17 | 微软技术许可有限责任公司 | 风格可定制的文本生成 |
CN110738059B (zh) * | 2019-10-21 | 2023-07-14 | 支付宝(杭州)信息技术有限公司 | 一种文本相似度计算方法及系统 |
CN111274794B (zh) * | 2020-01-19 | 2022-03-18 | 浙江大学 | 一种基于传递的同义词扩展方法 |
US11625555B1 (en) * | 2020-03-12 | 2023-04-11 | Amazon Technologies, Inc. | Artificial intelligence system with unsupervised model training for entity-pair relationship analysis |
US11461081B2 (en) * | 2021-01-27 | 2022-10-04 | X Development Llc | Adapting existing source code snippets to new contexts |
CN113095070B (zh) * | 2021-04-06 | 2022-03-04 | 山东省人工智能研究院 | 基于改进词级别注意力机制的关系抽取方法 |
CN115422932A (zh) * | 2022-11-01 | 2022-12-02 | 摩尔线程智能科技(北京)有限责任公司 | 一种词向量训练方法及装置、电子设备和存储介质 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9330175B2 (en) * | 2004-11-12 | 2016-05-03 | Make Sence, Inc. | Techniques for knowledge discovery by constructing knowledge correlations using concepts or terms |
US20080195601A1 (en) * | 2005-04-14 | 2008-08-14 | The Regents Of The University Of California | Method For Information Retrieval |
US20140279971A1 (en) * | 2013-03-15 | 2014-09-18 | Make Sence, Inc. | Method for resource decomposition and related devices |
US9672206B2 (en) * | 2015-06-01 | 2017-06-06 | Information Extraction Systems, Inc. | Apparatus, system and method for application-specific and customizable semantic similarity measurement |
US9678954B1 (en) * | 2015-10-29 | 2017-06-13 | Google Inc. | Techniques for providing lexicon data for translation of a single word speech input |
US10706309B2 (en) * | 2016-02-29 | 2020-07-07 | Nec Corporation | Recursive neural networks on future event prediction |
US10936945B2 (en) * | 2016-06-06 | 2021-03-02 | Microsoft Technology Licensing, Llc | Query classification for appropriateness |
US10839284B2 (en) * | 2016-11-03 | 2020-11-17 | Salesforce.Com, Inc. | Joint many-task neural network model for multiple natural language processing (NLP) tasks |
US11468234B2 (en) * | 2017-06-26 | 2022-10-11 | International Business Machines Corporation | Identifying linguistic replacements to improve textual message effectiveness |
US10789942B2 (en) * | 2017-10-24 | 2020-09-29 | Nec Corporation | Word embedding system |
WO2019115236A1 (en) * | 2017-12-11 | 2019-06-20 | Koninklijke Philips N.V. | Independent and dependent reading using recurrent networks for natural language inference |
WO2019133676A1 (en) * | 2017-12-29 | 2019-07-04 | Robert Bosch Gmbh | System and method for domain-and language-independent definition extraction using deep neural networks |
-
2018
- 2018-03-02 JP JP2018038074A patent/JP6872505B2/ja active Active
-
2019
- 2019-03-04 WO PCT/JP2019/008473 patent/WO2019168202A1/ja active Application Filing
- 2019-03-04 US US16/977,045 patent/US11893353B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2019168202A1 (ja) | 2019-09-06 |
US11893353B2 (en) | 2024-02-06 |
US20210042472A1 (en) | 2021-02-11 |
JP2019153098A (ja) | 2019-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6872505B2 (ja) | ベクトル生成装置、文ペア学習装置、ベクトル生成方法、文ペア学習方法、およびプログラム | |
Kong et al. | On fast sampling of diffusion probabilistic models | |
US20220043972A1 (en) | Answer generating device, answer learning device, answer generating method, and answer generating program | |
Henderson et al. | Word-based dialog state tracking with recurrent neural networks | |
KR20160069329A (ko) | 언어 모델 학습 방법 및 장치, 음성 인식 방법 및 장치 | |
CN107437417B (zh) | 基于循环神经网络语音识别中语音数据增强方法及装置 | |
CN110570879A (zh) | 基于情绪识别的智能会话方法、装置及计算机设备 | |
CN111428490B (zh) | 一种利用语言模型的指代消解弱监督学习方法 | |
CN111680494A (zh) | 相似文本的生成方法及装置 | |
CN105830058B (zh) | 对话管理器 | |
CN110634476A (zh) | 一种快速搭建鲁棒性声学模型的方法及系统 | |
CN114841142A (zh) | 文本生成方法、装置、电子设备和存储介质 | |
CN110717027B (zh) | 多轮智能问答方法、系统以及控制器和介质 | |
CN110347833B (zh) | 一种多轮对话的分类方法 | |
KR102582744B1 (ko) | Qa 모델을 이용하여 지식 그래프를 구축하는 방법, 장치 및 컴퓨터 프로그램 | |
WO2019244803A1 (ja) | 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム | |
CN110956039A (zh) | 一种基于多维度向量化编码的文本相似度计算方法及装置 | |
CN114239589A (zh) | 语义理解模型的鲁棒性评估方法、装置及计算机设备 | |
WO2021027257A1 (zh) | 计算机执行的、利用神经网络进行语言处理的方法及装置 | |
JP6586026B2 (ja) | 単語ベクトル学習装置、自然言語処理装置、方法、及びプログラム | |
JP5914054B2 (ja) | 言語モデル作成装置、音声認識装置、およびそのプログラム | |
CN117077667A (zh) | 一种基于适配器的语言模型知识注入方法和系统 | |
CN110399619A (zh) | 面向神经机器翻译的位置编码方法及计算机存储介质 | |
JP5980142B2 (ja) | 学習データ選択装置、識別的音声認識精度推定装置、学習データ選択方法、識別的音声認識精度推定方法、プログラム | |
JP5268825B2 (ja) | モデルパラメータ推定装置、方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200226 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20210413 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210419 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6872505 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |