JP2018022496A - 自然言語処理装置に用いられるトレーニングデータを作成する方法と機器 - Google Patents
自然言語処理装置に用いられるトレーニングデータを作成する方法と機器 Download PDFInfo
- Publication number
- JP2018022496A JP2018022496A JP2017151426A JP2017151426A JP2018022496A JP 2018022496 A JP2018022496 A JP 2018022496A JP 2017151426 A JP2017151426 A JP 2017151426A JP 2017151426 A JP2017151426 A JP 2017151426A JP 2018022496 A JP2018022496 A JP 2018022496A
- Authority
- JP
- Japan
- Prior art keywords
- training data
- natural language
- classifier
- bag
- training
- 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.)
- Pending
Links
Classifications
-
- 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/35—Clustering; Classification
- G06F16/353—Clustering; Classification into predefined classes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Machine Translation (AREA)
Abstract
【課題】自然言語処理に用いられるトレーニングデータの用途に応じて、トレーニングデータのノイズを柔軟に最適化することによって、分類器モデルのトレーニングの精度を向上する。
【解決手段】トレーニングデータを作成する請求を受信することと、トレーニングデータの作成に用いられる自然言語コーパスの入力を取得することと、トレーニングデータに必要なバッグ分割パラメータを特定することと、バッグ分割パラメータに基づき、自然言語コーパスの入力をそれぞれが複数のインスタンスを含む複数のバッグに分割することと、複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出することを含む。センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとする。
【選択図】図1
【解決手段】トレーニングデータを作成する請求を受信することと、トレーニングデータの作成に用いられる自然言語コーパスの入力を取得することと、トレーニングデータに必要なバッグ分割パラメータを特定することと、バッグ分割パラメータに基づき、自然言語コーパスの入力をそれぞれが複数のインスタンスを含む複数のバッグに分割することと、複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出することを含む。センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとする。
【選択図】図1
Description
本発明は、人工知能分野に関し、より具体的に、本発明は、自然言語処理装置に用いられるトレーニングデータを作成する方法と機器、及び当該トレーニングデータを利用する自然言語処理装置に関する。
近年、コンピューター技術の発展に伴い、コンピューター技術に基づいた人工知能は、実用上では多くの場合に人間の意識や思考の情報過程に対するシミュレーションを実現した。言語が人類と他の動物とを区別するための根本的なものであるため、コンピューターを利用して人類の言語を処理する自然言語処理は、人工知能の最高の課題と境界を表している。問答(QA)システムといった自然言語処理システムでは、人間ユーザが自然言語で提出した問題に対し、正確、簡潔な自然言語で回答することを実現した。
問答システムでは、通常、事前にトレーニングされたニューラルネットワークに基づいた分類器を利用して自然言語言葉の構造的特徴を抽出し、当該構造的特徴に基づき、事前に建立された知識ベース中から該当する回答を検索又は推定して得る。上記ニューラルネットワークに基づいた分類器のトレーニング及び知識ベースの建立過程では、ニューラルネットワークに基づいた分類器がディープラーニングを実行するために、構造的特徴がマークされたトレーニングデータを多く提供する必要がある。一つの従来の問答システムでは、分類器に対する事前トレーニングを実行するために、特徴が事前に手動でマークされたトレーニングデータを利用する必要があるが、手動でマークすることは時間とコストがかかる。もう一つの従来の問答システムでは、伝統的な自然言語解析(NLP)ツールに頼りテキストを解析することで特徴を抽出する。それは、精密的に特徴を設計する必要があり、且つ誤差伝達が生じる恐れがあるので、汎用性に欠け、多くの人力がかかる。また、従来の問答システムは、従来の知識ベースに頼る場合が多いため、その性能と応用場面が非常に限られている。
従って、自然言語処理装置に用いられるトレーニングデータを作成する方法と機器、及び当該トレーニングデータを利用する自然言語処理装置を提供することが望まれている。それは、自然コーパスからのマークされないテキストを利用して自動的にトレーニングデータを生成し、分類器のトレーニングと知識ベースの構築に利用し、且つトレーニングデータの用途に応じて、トレーニングデータのノイズを柔軟に最適化することによって、分類器モデルのトレーニングの精度を向上させ、演算全体の複雑さを低減することができた。
上記問題を鑑み、本発明は、自然言語処理装置に用いられるトレーニングデータを作成する方法と機器、及び当該トレーニングデータを利用する自然言語処理装置を提供する。
本発明の一実施例によれば、自然言語処理システムに用いられるトレーニングデータを作成する方法を提供し、当該方法は、前記トレーニングデータを作成する請求を受信することと、前記トレーニングデータの作成に用いられる自然言語コーパスの入力を取得することと、前記トレーニングデータに必要なバッグ分割パラメータを特定することと、前記バッグ分割パラメータに基づき、前記自然言語コーパスの入力を複数のバッグに分割し、前記複数のバッグのそれぞれが複数のインスタンスを含むものであることと、前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出することと、を含み、前記センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとする。
また、本発明の一実施例の方法によれば、前記トレーニングデータに必要なバッグ分割パラメータを特定することは、前記トレーニングデータを作成する請求及び/又は前記自然言語コーパスの入力のソースに基づき、前記バッグ分割パラメータを特定することを含む。
また、本発明の一実施例の方法によれば、前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出することは、前記複数のインスタンスのうちのそれぞれのインスタンスにおける語彙エレメントごとに、予定したウィンドー範囲内の複数の語彙を単語特徴として抽出し、語彙エレメントと目標語との距離を位置特徴として抽出することと、前記単語特徴と前記位置特徴とによって構成される特徴ベクトルに対し、最大プーリング(Max Pooling)を実行し、前記センテンスレベル特徴ベクトルを取得することと、を含む。
また、本発明の一実施例の方法によれば、前記トレーニングデータを利用して、分類器をトレーニングし、または知識ベースを構築することを含む。
また、本発明の一実施例の方法によれば、前記トレーニングデータを利用して、分類器をトレーニングすることは、前記分類器のニューラルネットワークパラメータを初期化することと、前記複数のバッグのうちの一つのバッグをランダムに選択することと、前記一つのバッグのうち、目標関数を最大化にする一つのインスタンスを特定することと、前記一つのインスタンスの勾配に基づき、前記ニューラルネットワークが収束するまで、前記分類器のニューラルネットワークパラメータを更新することと、を含む。
本発明のもう一つの実施例によれば、自然言語処理システムに用いられるトレーニングデータを作成する機器を提供し、当該機器は、前記トレーニングデータを作成する請求を受信する請求受信モジュールと、前記トレーニングデータの作成に用いられる自然言語コーパスの入力を取得する入力モジュールと、前記トレーニングデータに必要なバッグ分割パラメータを特定するバッグ分割パラメータ特定モジュールと、前記バッグ分割パラメータに基づき、前記自然言語コーパスの入力を複数のバッグに分割し、前記複数のバッグのそれぞれが複数のインスタンスを含むものであるバッグ分割モジュールと、前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出する特徴ベクトル抽出モジュールとを含み、前記センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとする。
また、本発明のもう一つの実施例の機器によれば、前記バッグ分割パラメータ特定モジュールは、前記トレーニングデータを作成する請求及び/又は前記自然言語コーパスの入力のソースに基づき、前記バッグ分割パラメータを特定する。
また、本発明のもう一つの実施例の機器によれば、前記特徴ベクトル抽出モジュールは、前記複数のインスタンスのうちのそれぞれのインスタンスにおける語彙エレメントごとに、予定したウィンドー範囲内の複数の語彙を単語特徴として抽出し、語彙エレメントと目標語との距離を位置特徴として抽出し、前記単語特徴と前記位置特徴とによって構成される特徴ベクトルに対し、最大プーリングを実行し、前記センテンスレベル特徴ベクトルを取得する。
また、本発明のもう一つの実施例の機器によれば、前記トレーニングデータは、分類器のトレーニング又は知識ベースの構築に用いられる。
また、本発明のもう一つの実施例の機器によれば、前記分類器のニューラルネットワークパラメータを初期化することと、前記複数のバッグのうちの一つのバッグをランダムに選択することと、前記一つのバッグのうち、目標関数を最大化にする一つのインスタンスを特定することと、前記一つのインスタンスの勾配に基づき、前記ニューラルネットワークが収束するまで、前記分類器のニューラルネットワークパラメータを更新することとに用いられる分類器トレーニングモジュール、をさらに含む。
本発明のさらにもう一つの実施例によれば、自然言語処理装置を提供し、当該自然言語処理装置は、ユーザの自然言語問題の入力を受信し、回答の出力を実行するユーザインタフェース機器と、前記自然言語問題の入力に対し、特徴を抽出し、前記特徴を関係分類し、構造化の問題を取得する分類器機器と、前記構造化の問題に基づき、事前に記憶した知識ベースデータを検索し、前記構造化の問題に対応する構造化の情報を取得する知識ベース機器と、前記構造化の情報に基づき、前記回答を推定して特定する回答推定機器と、前記分類器機器のトレーニング又は前記知識ベース機器における知識ベースデータの構築に用いられるトレーニングデータを作成するトレーニングデータ作成機器と、を含み、前記トレーニングデータ作成機器は、さらに、前記トレーニングデータを作成する請求を受信する請求受信モジュールと、前記トレーニングデータの作成に用いられる自然言語コーパスの入力を取得する入力モジュールと、前記トレーニングデータに必要なバッグ分割パラメータを特定するバッグ分割パラメータ特定モジュールと、前記バッグ分割パラメータに基づき、前記自然言語コーパスの入力を複数のバッグに分割し、前記複数のバッグのそれぞれが複数のインスタンスを含むものであるバッグ分割モジュールと、前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出する特徴ベクトル抽出モジュールとを含み、前記センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとする。
また、本発明のさらにもう一つの実施例の自然言語処理装置によれば、前記バッグ分割パラメータ特定モジュールは、前記トレーニングデータを作成する請求及び/又は前記自然言語コーパスの入力のソースに基づき、前記バッグ分割パラメータを特定する。
また、本発明のさらにもう一つの実施例の自然言語処理装置によれば、前記特徴ベクトル抽出モジュールは、前記複数のインスタンスのうちのそれぞれのインスタンスにおける語彙エレメントごとに、予定したウィンドー範囲内の複数の語彙を単語特徴として抽出し、語彙エレメントと目標語との距離を位置特徴として抽出し、前記単語特徴と前記位置特徴とによって構成される特徴ベクトルに対し、最大プーリングを実行し、前記センテンスレベル特徴ベクトルを取得する。
また、本発明のさらにもう一つの実施例の自然言語処理装置によれば、前記トレーニングデータ作成機器は、さらに、分類器機器トレーニングモジュールを含み、前記分類器機器トレーニングモジュールは、前記分類器機器のニューラルネットワークパラメータを初期化することと、前記複数のバッグのうちの一つのバッグをランダムに選択することと、前記一つのバッグのうち、目標関数を最大化にする一つのインスタンスを特定することと、前記一つのインスタンスの勾配に基づき、前記ニューラルネットワークが収束するまで、前記分類器機器のニューラルネットワークパラメータを更新する。
本発明の実施例に係る自然言語処理装置に用いられるトレーニングデータを作成する方法と機器、及び当該トレーニングデータを利用する自然言語処理装置は、自然コーパスからのマークされないテキストを利用して自動的にトレーニングデータを生成し、分類器のトレーニングと知識ベースの構築に利用し、且つトレーニングデータの用途に応じて、トレーニングデータのノイズを柔軟に最適化することによって、分類器モデルのトレーニングの精度を向上させ、演算全体の複雑さを低減することができた。
前記の一般的な説明と以下の詳しい説明は、両者とも例示的なものであり、保護したい技術に対するさらなる説明を提供することを意図すると理解すべきである。
前記の一般的な説明と以下の詳しい説明は、両者とも例示的なものであり、保護したい技術に対するさらなる説明を提供することを意図すると理解すべきである。
図面を参照して本発明の実施例をより詳しく説明し、本発明の上記の内容及び他の目的、特徴、利点をより明確にする。図面は、本発明の実施例に対するさらなる理解のためのものであり、明細書の一部を構成し、本発明の実施例と共に本発明を解釈する。図面は本発明に対する制限するものではない。図面において、同じ符号は、一般的に、同じ部品又はステップを表す。
本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法を示すフローチャートである。
本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する機器を示すブロック図である。
本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法におけるセンテンスレベル特徴抽出を示す模式図である。
本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法におけるウィンドー処理をさらに示す模式図である。
本発明の実施例に係るトレーニングデータを用いて分類器をトレーニングする方法を示すフローチャートである。
本発明の実施例に係る自然言語処理装置を示すブロック図である。
本発明の目的、技術案及び利点をより明確にするために、以下、図面を参照して、本発明に係る例示的な実施例を詳しく説明する。勿論、説明される実施例は、本発明の一部の実施例に過ぎず、全部の実施例ではない。本発明は、ここで説明される例示的な実施例に限らないと理解すべきである。本発明で説明される実施例に基づいて、当業者が創造的な労力を必要とせずに想到し得るすべての他の実施例は、本発明の請求範囲に属する。
問答システムでは、通常、事前にトレーニングされたニューラルネットワークに基づいた分類器を利用して自然言語言葉の構造的特徴を抽出し、当該構造的特徴に基づき、事前に建立された知識ベース中から該当する回答を検索又は推定して得る。従って、ニューラルネットワークに基づいた分類器のトレーニング及び知識ベースの建立過程では、ニューラルネットワークに基づいた分類器がディープラーニングを実行するために、構造的特徴がマークされたトレーニングデータを多く提供する必要がある。従来の問答システムでは、分類器に対する事前トレーニングを実行するために、特徴が事前に手動でマークされたトレーニングデータを利用する必要があるが、手動でマークすることは時間とコストがかかる。また、もう一つの従来の問答システムでは、伝統的な自然言語解析(NLP)ツールに頼りテキストを解析することで特徴を抽出する。それは、精密的に特徴を設計する必要があり、且つ誤差伝達が生じる恐れがあるので、汎用性に欠け、多くの人力がかかる。また、従来の問答システムは、従来の知識ベースに頼る場合が多いため、その性能と応用場面が非常に限られている。
本発明は、自然言語処理装置に用いられるトレーニングデータを作成する方法と機器を提供する。それは、自然コーパスからのマークされないテキストを利用して自動的にトレーニングデータを生成し、分類器のトレーニングと知識ベースの構築に利用することで、時間又はコストをかけて手動でマークする必要がない。さらに、トレーニングデータの用途に応じて、トレーニングデータのノイズを柔軟に最適化し、即ち、トレーニングデータが分類器のトレーニングに用いられるか、又は知識ベースの構築に用いられるか、及び自然言語コーパスの入力のソースに応じて、異なるバッグ分割パラメータを柔軟に設定することによって、分類器モデルのトレーニングの精度を向上させ、演算全体の複雑さを低減することができた。
以下、図面を参照し、本発明の実施例を詳しく説明する。
図1は、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法を示すフローチャートである。図1に示すように、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法は、以下のステップを含む。
ステップS101において、トレーニングデータを作成する請求を受信する。本発明の一態様では、問答システムにおける異なる実体に用いられるトレーニングデータを作成する請求を受信可能である。例えば、問答システムにおける知識ベースサーバーから、知識ベースの構築に用いられるトレーニングデータを作成する請求を受信可能である。或いは、問答システムにおける意味解析実体から分類器のトレーニングに用いられるトレーニングデータを作成する請求を受信可能である。つまり、トレーニングデータを作成する請求のソースから、トレーニングデータを作成する目的を特定することができる。次に、処理がステップS102に進む。
ステップS102において、前記トレーニングデータの作成に用いられる自然言語コーパスの入力を取得する。本発明の一態様では、異なるソースから自然言語コーパスの入力を取得することができる。例えば、「食べログ」(登録商標)、「Wikipedia」(登録商標)などのウェブサイトから自然言語コーパスの入力を取得することができる。つまり、本発明の一態様では、前記トレーニングデータの作成に用いられる自然言語コーパスの入力として、特徴がマークされないコーパスの入力を取得する。次に、処理がステップS103に進む。
ステップS103において、トレーニングデータに必要なバッグ分割パラメータを特定する。以下に説明するように、本発明の実施例に係る知識ベースの構造と分類器のトレーニングは、畳み込みニューラルネットワークに基づいたマルチインスタンスラーニング(Multiple Instance Learning)を利用する。マルチインスタンスラーニングでは、「バッグ」を複数のインスタンスの集合と定義する。本発明の一態様では、前記トレーニングデータを作成する請求及び/又は前記自然言語コーパスの入力のソースに基づいて、前記バッグ分割パラメータを特定する。例えば、「食べログ」からのトレーニングデータには、「Wikipedia」からのトレーニングデータよりも厳しいバッグ分割パラメータを設定する。これは、「Wikipedia」からの自然言語コーパスの入力よりも多くのノイズデータが「食べログ」からの自然言語コーパスの入力に存在するからである。また、分類器のトレーニングに用いられるトレーニングデータには、知識ベースの構築に用いられるトレーニングデータよりも厳しいバッグ分割パラメータを設定する。次に、処理がステップS104に進む。
ステップS104において、バッグ分割パラメータに基づき、自然言語コーパスの入力を複数のバッグに分割し、複数のバッグのそれぞれが複数のインスタンスを含むものである。本発明の一態様では、例えば、T個のバッグM1,M2,・・・MTが存在し、その中に、第i個がqi個のインスタンスを有するものであり、Mi={mi 1,mi 2,・・・mi qi}である。次に、処理がステップS105に進む。
ステップS105において、複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出し、前記センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとする。以下に説明するように、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法は、畳み込みニューラルネットワークに基づき、マークされない自然言語コーパスの入力を上記バッグ分割したインスタンスに対して、センテンスレベル特徴ベクトルの自動抽出を実行することによって、分類器のトレーニング或いは知識ベースの構築に用いられる。以下、図面を参照し、本発明の実施例に係る畳み込みニューラルネットワークに基づいたセンテンスレベル特徴ベクトルの自動抽出をより詳しく説明する。
図2は、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する機器を示すブロック図である。本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成するトレーニングデータ作成機器20は、問答システムに配置されてもよい。
図2に示すように、本発明の実施例に係るトレーニングデータ作成機器20は、請求受信モジュール201、入力モジュール202、バッグ分割パラメータ特定モジュール203、バッグ分割モジュール204、特徴ベクトル抽出モジュール205、分類器トレーニングモジュール206を含む。
前記請求受信モジュール201は、前記トレーニングデータを作成する請求を受信するものである。具体的に、前記請求受信モジュール201は、問答システムにおける異なる実体に用いられるトレーニングデータを作成する請求を受信することができる。例えば、問答システムにおける知識ベースサーバーから知識ベースの構築に用いられるトレーニングデータを作成する請求を受信可能である。或いは、問答システムにおける意味解析実体から分類器のトレーニングに用いられるトレーニングデータを作成する請求を受信可能である。
前記入力モジュール202は、前記トレーニングデータの作成に用いられる自然言語コーパスの入力を取得するものである。具体的に、異なるソースから自然言語コーパスの入力を取得することができる。例えば、「食べログ」、「Wikipedia」などのウェブサイトから自然言語コーパスの入力を取得することができる。つまり、本発明の一態様では、前記トレーニングデータの作成に用いられる自然言語コーパスの入力として、特徴がマークされないコーパスの入力を取得する。
前記バッグ分割パラメータ特定モジュール203は、前記トレーニングデータに必要なバッグ分割パラメータを特定するものである。具体的に、前記バッグ分割パラメータ特定モジュール203は、前記トレーニングデータを作成する請求及び/又は前記自然言語コーパスの入力のソースに基づき、前記バッグ分割パラメータを特定する。例えば、「食べログ」からのトレーニングデータには、「Wikipedia」からのトレーニングデータよりも厳しいバッグ分割パラメータを設定する。これは、「Wikipedia」からの自然言語コーパスの入力よりも多くのノイズデータが「食べログ」からの自然言語コーパスの入力に存在するからである。また、分類器のトレーニングに用いられるトレーニングデータには、知識ベースの構築に用いられるトレーニングデータよりも厳しいバッグ分割パラメータを設定する。
前記バッグ分割モジュール204は、前記バッグ分割パラメータに基づき、前記自然言語コーパスの入力を複数のバッグに分割し、前記複数のバッグのそれぞれが複数のインスタンスを含むものである。
前記特徴ベクトル抽出モジュール205は、前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出する。前記センテンスレベル特徴ベクトルを有する前記複数のバッグが前記トレーニングデータとして、分類器のトレーニング又は知識ベースの構築に用いられる。
前記分類器トレーニングモジュール206は、前記トレーニングデータを利用し、分類器のトレーニングを実行するものである。本発明の一態様では、前記分類器トレーニングモジュール206は、分類器のニューラルネットワークパラメータを初期化し、前記複数のバッグのうちの一つのバッグをランダムに選択し、前記一つのバッグのうち、目標関数を最大化にする一個のインスタンスを特定し、且つ、前記一つのインスタンスの勾配に基づいて、前記ニューラルネットワークが収束するまで、前記分類器のニューラルネットワークパラメータを更新する。
以上、図1と図2を参照し、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法と機器を説明した。以下、さらに、図3と図4を参照し、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータの作成方法におけるセンテンスレベル特徴抽出と、センテンスレベル特徴抽出におけるウィンドー処理とを説明する。
図3は、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法におけるセンテンスレベル特徴抽出を示す模式図である。図4A、4Bは、さらに、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法におけるウィンドー処理を示す模式図である。
一つの語彙のベクトルモデルが非常に限られるため、本発明に基づいてセンテンスレベルの特徴ベクトル抽出を採用する。図3に示すように、複数のバッグのそれぞれにおける複数のインスタンスのそれぞれ、即ち自然言語コーパスから入力されたセンテンスに対し、まずウィンドー処理を実行する。ウィンドー処理を採用して、異なるセンテンスに対応する語彙系列の長さが異なるという問題を解決するために、語彙の位置特徴を導入した。
具体的には、コンテキストのスライドウィンドーにおける語彙特徴ベクトルマトリックスを取得する。即ち、入力された一つのセンテンスに対し、大きさがwのスライドウィンドーを考慮する。例えば、図4Aに示すように、入力されたセンテンス「People have been moving back into downtown」に対し、語彙特徴ベクトルは、
と表される。
さらに、二つの語彙との間の距離を用いて語彙の位置を表すことで、語彙の位置マトリックスPFを取得する。例えば、図4Bに示すように、語彙「been」に対し、それが「People」と「downtown」との間の距離は、それぞれが「2」と「−4」であり、つまり、その位置特徴ベクトルは、
と表される。
このように、ウィンドー処理を行った後に、SF=[WF,PF]Tより構成されたマトリックスがセンテンスベクトルを表す。
図3に戻り、さらに、ウィンドー処理により取得されたセンテンスベクトルに対し最大プーリング処理を実行し、各領域の最大値を当該領域のプーリングされた値として選択する。最後に、アクティベーション関数としてtanhを利用し、高度な非線形性を取得したセンテンスレベル特徴を抽出する。
図3に戻り、さらに、ウィンドー処理により取得されたセンテンスベクトルに対し最大プーリング処理を実行し、各領域の最大値を当該領域のプーリングされた値として選択する。最後に、アクティベーション関数としてtanhを利用し、高度な非線形性を取得したセンテンスレベル特徴を抽出する。
以上、図3〜図4Bを参照し、本発明の実施例に係るトレーニングデータのセンテンスレベル特徴抽出を説明した。以下、図5を参照し、センテンスレベル特徴が抽出されたトレーニングデータを用いて分類器をトレーニングする方法を説明する。
図5は、本発明の実施例に係るトレーニングデータを用いて分類器をトレーニングする方法を示すフローチャートである。図5に示すように、本発明の実施例に係る分類器をトレーニングする方法は、以下のステップを含む。
ステップS501において、分類器のニューラルネットワークパラメータを初期化する。本発明に採用されるマルチインスタンスラーニングにおいて、畳み込みニューラルネットワーク(CNN)に基づいた関係分類モデルは、θとみなしてもよい。前文で想定したように、T個のバッグM1,M2,・・・MTが存在し、その中に、第i個がqi個のインスタンスを有するものであり、Mi={mi 1,mi 2,・・・mi qi}である。それで、目標関数が
と定義される。ここでjは、
とする。
次に、処理がステップS502に進む。
ステップS502において、複数のバッグのうちの一つのバッグをランダムに選択する。ランダムに選択されたバッグにおけるインスタンスを一つずつニューラルネットワークに伝送する。次に、ステップS503に進む。
ステップS502において、複数のバッグのうちの一つのバッグをランダムに選択する。ランダムに選択されたバッグにおけるインスタンスを一つずつニューラルネットワークに伝送する。次に、ステップS503に進む。
ステップS503において、前記一つのバッグのうち、目標関数を最大化にする一つのインスタンスを特定する。例えば、第j個のインスタンスmi jを特定することによって、目標関数を最大化にする。次に、処理がステップS504に進む。
ステップS504において、前記一つのインスタンスの勾配に基づき、前記ニューラルネットワークが収束するまで、前記分類器のニューラルネットワークパラメータを更新する。本発明の一態様では、例えばAdadelta法を通じてmi jの勾配に基づいてθを更新する。さらに、前記ニューラルネットワークが収束するまで、ステップS502〜S504を繰り返す。
図5を参照して説明した本発明の実施例に係るレーニングデータを利用した分類器をトレーニングする方法において、図3に示した過程で得られた二つ以上の語彙実体を含むセンテンスをサンプルとして取得されたセンテンスレベル特徴を、入力とし、ベクトル空間モデルを採用し、特徴の近似度を算出する。複数のバッグを設定することによって、目標関数の最大化に最大の貢献を有するインスタンスの選択を行うことで、より精確なトレーニングモデルを取得した。また、繰り返しごとの算出の複雑さが低い。
以上、図1〜図5を参照し、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを作成する方法と機器、及び当該トレーニングデータを利用した分類器のトレーニングを説明した。以下、さらに図6を参照して当該トレーニングデータを作成する機器が配置される自然言語処理装置を説明する。
図6は、本発明の実施例に係る自然言語処理装置を示すブロック図である。図6に示すように、本発明の実施例に係る自然言語処理装置60は、ユーザインタフェース機器601、分類器機器602、知識ベース機器603、回答推定機器604及びトレーニングデータ作成機器605を含む。
前記ユーザインタフェース機器601は、ユーザの自然言語問題の入力を受信し、回答を出力するものである。本発明の一態様では、前記ユーザインタフェース機器601は、前記自然言語処理装置60とユーザとのインタラクションを実現するものである。例えば、前記ユーザインタフェース機器601は、ユーザの入力した問題を受信し、ユーザの入力した問題の表現を検査し、検査を通したユーザの入力した問題を後継の機器パーツに伝送する。また、後継的機器パーツでユーザの入力した問題を分類や推定して回答を取得した後に、前記ユーザインタフェース機器601は、ユーザの入力した問題に対する応答を実現するように、取得された回答をユーザに提示する。
前記分類器機器602は、前記自然言語問題の入力に対し、特徴を抽出し、前記特徴を関係分類し、構造化の問題を取得するものである。本発明の一態様では、前記分類器機器602は、図5に示した分類器のトレーニング方法でトレーニングして得られたものである。
前記知識ベース機器603は、前記構造化の問題に基づき、その中に事前に記憶した知識ベースデータを検索し、前記構造化の問題に対応する構造化の情報を取得する。本発明の一態様では、前記知識ベース機器603は、前記分類器機器602から入力された構造化の問題に基づき、事前に記憶した知識ベースデータに基づき、問題に対する検索を実行する。例えば、前記知識ベース機器603は、既知の問題と回答がペアとなるインデックスファイルを事前に記憶し、前記インデックスファイルが既知の問題のセマンティックブロック系列と回答の位置情報とを記入しており、ユーザの入力した問題に対する回答のために知識ソースを提供してもよい。前記知識ベース機器603は、事前に、本発明の実施例に係る自然言語処理システムに用いられるトレーニングデータを利用して構築される。
前記回答推定機器604は、前記構造化の情報に基づき、前記回答を推定して特定する。本発明の一態様では、前記回答推定機器604は、前記知識ベース機器603から提供された構造化の情報に基づき、ユーザの入力した問題と同じ又は近似するキーワードを有する関連問題を見出し、それぞれの関連問題とユーザの入力した問題との近似度を取得し、近似度に応じて応答用の関連問題を選択し、インデックスファイルに記載の位置情報に応じて応答用の関連問題の回答を抽出し、且つ前記ユーザインタフェース機器601を通じてユーザに提示する。
前記トレーニングデータ作成機器605は、トレーニングデータを作成するものであり、前記トレーニングデータは、前記分類器機器602のトレーニング又は前記知識ベース機器603における知識ベースデータの構築に用いられる。本発明の一態様では、前記トレーニングデータ作成機器605は、図2に示した請求受信モジュール201、入力モジュール202、バッグ分割パラメータ特定モジュール203、バッグ分割モジュール204、特徴ベクトル抽出モジュール205、分類器トレーニングモジュール206を含み、ここで、各モジュールに対する重複な説明を省略する。
以上、図1〜図6を参照して自然言語処理装置に用いられるトレーニングデータを作成する方法と機器、及び当該トレーニングデータを利用する自然言語処理装置を説明した。それは、自然コーパスからのマークされないテキストを利用して自動的にトレーニングデータを生成し、分類器のトレーニングと知識ベースの構築に利用し、且つトレーニングデータの用途に応じて、トレーニングデータのノイズを柔軟に最適化することによって、分類器モデルのトレーニングの精度を向上させ、演算全体の複雑さを低減することができた。
なお、本明細書において、用語「含む」、「有する」或いはその他の変形は、非排他的に含むことを意味するので、一連の要素を含む過程、方法、物品、機器は、それらの要素だけではなく、明確に挙げられない他の要素も含み、或いは、その過程、方法、物品、機器が固有する要素を含む。さらに制限を掛けない場合、言葉の「一個……を含む」によって限定される要素は、前記の要素を含む過程、方法、物品、機器に他の同じ要素をさらに含むことを排除しない。
最後に、上記の一連の処理は、前記の順番の通りに時系列で実行した処理だけを含むのではなく、時間順ではなく並行又は個別に実行する処理も含む。
以上の実施態様の説明を通して、当業者は、ソフトウェアと必要なハードウェアで本発明を実現することが明確に理解できるが、もちろん、すべてをハードウェアで実現することも可能である。この理解に基づき、本発明の技術案が技術背景に対して貢献した全部又は一部は、ソフトウェア製品で表現でき、当該コンピューターソフトウェア製品は、例えば、ROM/RAM、磁気ディスク、光ディスク等の記憶媒体に記憶されており、コンピューター機器(個人コンピューター、サーバー、或いはネットワーク機器など)に本発明の各実施例或いは実施例の一部の前記の方法を実行させる若干のコマンドを含む。
以上は、本発明に対し詳しく説明した。本明細書は、具体的な例を利用して、本発明の原理及び実施態様に対して詳しく説明したが、以上の実施例に対する説明は本発明の方法及びその思想に対する理解に利用するものである。当業者は、本発明の思想に基づき、具体的な実施態様及び応用の範囲に変更を行うことがある。以上により、本明細書の内容が本発明を限定するものであると理解すべきではない。
Claims (14)
- 自然言語処理システムに用いられるトレーニングデータを作成する方法であって、
前記トレーニングデータを作成する請求を受信することと、
前記トレーニングデータの作成に用いられる自然言語コーパスの入力を取得することと、
前記トレーニングデータに必要なバッグ分割パラメータを特定することと、
前記バッグ分割パラメータに基づき、前記自然言語コーパスの入力を複数のバッグに分割し、前記複数のバッグのそれぞれが複数のインスタンスを含むものであることと、
前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出することと、を含み、
前記センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとすることを特徴とする方法。 - 前記トレーニングデータに必要なバッグ分割パラメータを特定することは、
前記トレーニングデータを作成する請求及び/又は前記自然言語コーパスの入力のソースに基づき、前記バッグ分割パラメータを特定することを含むことを特徴とする請求項1記載の方法。 - 前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出することは、
前記複数のインスタンスのうちのそれぞれのインスタンスにおける語彙エレメントごとに、予定したウィンドー範囲内の複数の語彙を単語特徴として抽出し、語彙エレメントと目標語との距離を位置特徴として抽出することと、
前記単語特徴と前記位置特徴とによって構成される特徴ベクトルに対し、最大プーリングを実行し、前記センテンスレベル特徴ベクトルを取得することと、を含むことを特徴とする請求項1記載の方法。 - 前記トレーニングデータを利用して、分類器をトレーニングし、または知識ベースを構築することを特徴とする請求項1乃至3のいずれか記載の方法。
- 前記トレーニングデータを利用して、分類器をトレーニングすることは、
前記分類器のニューラルネットワークパラメータを初期化することと、
前記複数のバッグのうちの一つのバッグをランダムに選択することと、
前記一つのバッグのうち、目標関数を最大化にする一つのインスタンスを特定することと、
前記一つのインスタンスの勾配に基づき、前記ニューラルネットワークが収束するまで、前記分類器のニューラルネットワークパラメータを更新することと、を含むことを特徴とする請求項4記載の方法。 - 自然言語処理システムに用いられるトレーニングデータを作成する機器であって、
前記トレーニングデータを作成する請求を受信する請求受信モジュールと、
前記トレーニングデータの作成に用いられる自然言語コーパスの入力を取得する入力モジュールと、
前記トレーニングデータに必要なバッグ分割パラメータを特定するバッグ分割パラメータ特定モジュールと、
前記バッグ分割パラメータに基づき、前記自然言語コーパスの入力を複数のバッグに分割し、前記複数のバッグのそれぞれが複数のインスタンスを含むものであるバッグ分割モジュールと、
前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出する特徴ベクトル抽出モジュールと、を含み、
前記センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとすることを特徴とする機器。 - 前記バッグ分割パラメータ特定モジュールは、前記トレーニングデータを作成する請求及び/又は前記自然言語コーパスの入力のソースに基づき、前記バッグ分割パラメータを特定することを特徴とする請求項6記載の機器。
- 前記特徴ベクトル抽出モジュールは、前記複数のインスタンスのうちのそれぞれのインスタンスにおける語彙エレメントごとに、予定したウィンドー範囲内の複数の語彙を単語特徴として抽出し、語彙エレメントと目標語との距離を位置特徴として抽出し、
前記単語特徴と前記位置特徴とによって構成される特徴ベクトルに対し、最大プーリングを実行し、前記センテンスレベル特徴ベクトルを取得する、ことを特徴とする請求項6記載の機器。 - 前記トレーニングデータは、分類器のトレーニング又は知識ベースの構築に用いられる、ことを特徴とする請求項6乃至8のいずれか記載の機器。
- 前記分類器のニューラルネットワークパラメータを初期化することと、
前記複数のバッグのうちの一つのバッグをランダムに選択することと、
前記一つのバッグのうち、目標関数を最大化にする一つのインスタンスを特定することと、
前記一つのインスタンスの勾配に基づき、前記ニューラルネットワークが収束するまで、前記分類器のニューラルネットワークパラメータを更新することと、に用いられる分類器トレーニングモジュールをさらに含むことを特徴とする請求項9記載の機器。 - ユーザの自然言語問題の入力を受信し、回答の出力を実行するユーザインタフェース機器と、
前記自然言語問題の入力に対し、特徴を抽出し、前記特徴を関係分類し、構造化の問題を取得する分類器機器と、
前記構造化の問題に基づき、事前に記憶した知識ベースデータを検索し、前記構造化の問題に対応する構造化の情報を取得する知識ベース機器と、
前記構造化の情報に基づき、前記回答を推定して特定する回答推定機器と、
前記分類器機器のトレーニング又は前記知識ベース機器における知識ベースデータの構築に用いられる前記トレーニングデータを作成するトレーニングデータ作成機器と、
を含み、
前記トレーニングデータ作成機器は、さらに、
前記トレーニングデータを作成する請求を受信する請求受信モジュールと、
前記トレーニングデータの作成に用いられる自然言語コーパスの入力を取得する入力モジュールと、
前記トレーニングデータに必要なバッグ分割パラメータを特定するバッグ分割パラメータ特定モジュールと、
前記バッグ分割パラメータに基づき、前記自然言語コーパスの入力を複数のバッグに分割し、前記複数のバッグのそれぞれが複数のインスタンスを含むものであるバッグ分割モジュールと、
前記複数のインスタンスのそれぞれに対し、センテンスレベル特徴ベクトルを自動的に抽出する特徴ベクトル抽出モジュールと、を含み、
前記センテンスレベル特徴ベクトルを有する前記複数のバッグを前記トレーニングデータとすることを特徴とする自然言語処理装置。 - 前記バッグ分割パラメータ特定モジュールは、前記トレーニングデータを作成する請求及び/又は前記自然言語コーパスの入力のソースに基づき、前記バッグ分割パラメータを特定することを特徴とする請求項11記載の自然言語処理装置。
- 前記特徴ベクトル抽出モジュールは、前記複数のインスタンスのうちのそれぞれのインスタンスにおける語彙エレメントごとに、予定したウィンドー範囲内の複数の語彙を単語特徴として抽出し、語彙エレメントと目標語との距離を位置特徴として抽出し、
前記単語特徴と前記位置特徴とによって構成される特徴ベクトルに対し、最大プーリングを実行し、前記センテンスレベル特徴ベクトルを取得することを特徴とする請求項11記載の自然言語処理装置。 - 前記トレーニングデータ作成機器は、さらに、分類器機器トレーニングモジュールを含み、
前記分類器機器トレーニングモジュールは、
前記分類器機器のニューラルネットワークパラメータを初期化することと、
前記複数のバッグのうちの一つのバッグをランダムに選択することと、
前記一つのバッグのうち、目標関数を最大化にする一つのインスタンスを特定することと、
前記一つのインスタンスの勾配に基づき、前記ニューラルネットワークが収束するまで、前記分類器機器のニューラルネットワークパラメータを更新することと、に用いられることを特徴とする請求項11乃至13のいずれか記載の自然言語処理装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610640647.X | 2016-08-05 | ||
CN201610640647.XA CN107688583A (zh) | 2016-08-05 | 2016-08-05 | 创建用于自然语言处理装置的训练数据的方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018022496A true JP2018022496A (ja) | 2018-02-08 |
Family
ID=61152105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017151426A Pending JP2018022496A (ja) | 2016-08-05 | 2017-08-04 | 自然言語処理装置に用いられるトレーニングデータを作成する方法と機器 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2018022496A (ja) |
CN (1) | CN107688583A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109766994A (zh) * | 2018-12-25 | 2019-05-17 | 华东师范大学 | 一种自然语言推理的神经网络架构 |
WO2020215457A1 (zh) * | 2019-04-26 | 2020-10-29 | 网宿科技股份有限公司 | 一种基于对抗学习的文本标注方法和设备 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110298372B (zh) * | 2018-03-23 | 2023-06-09 | 鼎捷软件股份有限公司 | 自动训练虚拟助理的方法及系统 |
CN108875045B (zh) * | 2018-06-28 | 2021-06-04 | 第四范式(北京)技术有限公司 | 针对文本分类来执行机器学习过程的方法及其系统 |
US11488055B2 (en) * | 2018-07-26 | 2022-11-01 | International Business Machines Corporation | Training corpus refinement and incremental updating |
CN109933602B (zh) * | 2019-02-28 | 2021-05-04 | 武汉大学 | 一种自然语言与结构化查询语言的转换方法及装置 |
CN113806489A (zh) * | 2021-09-26 | 2021-12-17 | 北京有竹居网络技术有限公司 | 用于数据集创建的方法、电子设备和计算机程序产品 |
-
2016
- 2016-08-05 CN CN201610640647.XA patent/CN107688583A/zh active Pending
-
2017
- 2017-08-04 JP JP2017151426A patent/JP2018022496A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109766994A (zh) * | 2018-12-25 | 2019-05-17 | 华东师范大学 | 一种自然语言推理的神经网络架构 |
WO2020215457A1 (zh) * | 2019-04-26 | 2020-10-29 | 网宿科技股份有限公司 | 一种基于对抗学习的文本标注方法和设备 |
Also Published As
Publication number | Publication date |
---|---|
CN107688583A (zh) | 2018-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102071582B1 (ko) | 딥 뉴럴 네트워크(Deep Neural Network)를 이용하여 문장이 속하는 클래스(class)를 분류하는 방법 및 장치 | |
US11361225B2 (en) | Neural network architecture for attention based efficient model adaptation | |
JP2018022496A (ja) | 自然言語処理装置に用いられるトレーニングデータを作成する方法と機器 | |
US10475442B2 (en) | Method and device for recognition and method and device for constructing recognition model | |
CN106815252B (zh) | 一种搜索方法和设备 | |
CN106503055B (zh) | 一种从结构化文本到图像描述的生成方法 | |
CN106845411B (zh) | 一种基于深度学习和概率图模型的视频描述生成方法 | |
CN104462066B (zh) | 语义角色标注方法及装置 | |
CN113761218B (zh) | 一种实体链接的方法、装置、设备及存储介质 | |
CN110083693B (zh) | 机器人对话回复方法及装置 | |
WO2019072166A1 (zh) | 语义分析方法、装置和存储介质 | |
US20150095017A1 (en) | System and method for learning word embeddings using neural language models | |
CN110457708B (zh) | 基于人工智能的词汇挖掘方法、装置、服务器及存储介质 | |
CN110895559B (zh) | 模型训练、文本处理方法、装置以及设备 | |
CN110795913B (zh) | 一种文本编码方法、装置、存储介质及终端 | |
KR20180094664A (ko) | 텍스트 데이터로부터 정보를 추출하기 위한 정보 추출 방법 및 장치 | |
US11941867B2 (en) | Neural network training using the soft nearest neighbor loss | |
US20200272812A1 (en) | Human body part segmentation with real and synthetic images | |
CN113656563A (zh) | 一种神经网络搜索方法及相关设备 | |
CN112307048A (zh) | 语义匹配模型训练方法、匹配方法、装置、设备及存储介质 | |
JP7081454B2 (ja) | 処理装置、処理方法、及び処理プログラム | |
Eshmawi et al. | Design of Automated Opinion Mining Model Using Optimized Fuzzy Neural Network. | |
CN114238764A (zh) | 基于循环神经网络的课程推荐方法、装置及设备 | |
Banerjee et al. | Relation extraction using multi-encoder lstm network on a distant supervised dataset | |
CN113569018A (zh) | 问答对挖掘方法及装置 |