JP7168963B2 - 自然言語処理装置及び自然言語処理方法 - Google Patents

自然言語処理装置及び自然言語処理方法 Download PDF

Info

Publication number
JP7168963B2
JP7168963B2 JP2020079199A JP2020079199A JP7168963B2 JP 7168963 B2 JP7168963 B2 JP 7168963B2 JP 2020079199 A JP2020079199 A JP 2020079199A JP 2020079199 A JP2020079199 A JP 2020079199A JP 7168963 B2 JP7168963 B2 JP 7168963B2
Authority
JP
Japan
Prior art keywords
natural language
learning data
corpus
language processing
question
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
Application number
JP2020079199A
Other languages
English (en)
Other versions
JP2021174362A (ja
Inventor
康知 橋爪
悠貴 大塩
一輝 近藤
敏樹 志岐
Original Assignee
株式会社Askプロジェクト
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 株式会社Askプロジェクト filed Critical 株式会社Askプロジェクト
Priority to JP2020079199A priority Critical patent/JP7168963B2/ja
Publication of JP2021174362A publication Critical patent/JP2021174362A/ja
Application granted granted Critical
Publication of JP7168963B2 publication Critical patent/JP7168963B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Machine Translation (AREA)

Description

本発明は、特定の技術分野での自然言語をコーパスを用いて分析する自然言語処理装置及び自然言語処理方法に関するものである。
近年、人工知能を用いてコンピューター上で自然言語からなる質問文に対する回答を出力する質疑応答システムが利用されている。
この質疑応答システムでは、自然言語からなる質問文をコーパスを用いて分析するとともに、予め学習させた質問と回答からなる学習データの中からCNN(Convolutional Neural Network:畳込みニューラルネットワーク)によって確信度の高い回答を回答候補として選択するといった自然言語処理が用いられている(たとえば、特許文献1参照。)。
特開2015-109068号公報
上記の自然言語処理においては、自然言語からなる質問文の分析の良否が直接的に回答の適否につながるため、質問文の分析に用いられるコーパスの質の向上が求められている。
特に、特定の技術分野においては、日常的に使用される文章とは異なって各分野ごとに専門的に使用される文章が多く存在しているために、汎用されるコーパスを用いたのでは質問文を良好に分析できないおそれがある。
そこで、請求項1に係る本発明では、特定の技術分野での自然言語をコーパスを用いて分析し、自然言語の質問文に対してCNN(Convolutional Neural Network:畳込みニューラルネットワーク)を用いて予め学習させた質問とその回答からなる学習データから複数の学習データを選択する、自然言語処理装置によって実行される自然言語処理方法において、コーパスとして、基準となる文章を蓄積した基準コーパスと、基準コーパスよりも特定の技術分野での専門性が高い文章を蓄積した専門コーパスとを組み合わせたものを用い、質問文に対してCNNを用いて、複数の学習データの選択と、選択された各学習データの確信度の算定をして、選択された各学習データにおける前記質問文に含まれる名詞の出現率及び前記確信度を加味して、選択された各学習データの信頼度を決定し、選択された各学習データの回答を当該信頼度とともに出力することにした。
また、請求項2に係る本発明では、特定の技術分野での自然言語をコーパスを用いて分析し、自然言語の質問文に対してCNN(Convolutional Neural Network:畳込みニューラルネットワーク)を用いて予め学習させた質問とその回答からなる学習データから複数の学習データを選択する自然言語処理装置において、コーパスとして、基準となる文章を蓄積した基準コーパスと、基準コーパスよりも特定の技術分野での専門性が高い文章を蓄積した専門コーパスとを組み合わせたものを用い、質問文に対してCNNを用いて、複数の学習データの選択と、選択された各学習データの確信度の算定をして、選択された各学習データにおける前記質問文に含まれる名詞の出現率及び前記確信度を加味して、選択された各学習データの信頼度を決定し、選択された各学習データの回答を当該信頼度とともに出力することにした。
また、請求項3に係る本発明では、前記請求項2に係る本発明において、前記専門コーパスとして、予め用意された複数の専門コーパスから選択されたいずれかの専門コーパスを用いることにした。
そして、本発明では、以下に記載する効果を奏する。
すなわち、本発明では、コーパスとして、基準となる文章を蓄積した基準コーパスと、基準コーパスよりも特定の技術分野での専門性が高い文章を蓄積した専門コーパスとを組み合わせたものを用いることにしているために、専門性の高い質問文であってもその技術分野に適したコーパスによって良好に分析を行うことができる。
自然言語処理装置を示す説明図。 自然言語処理方法を示す説明図。 自然言語処理方法を示す説明図。 自然言語処理方法を示す説明図。
以下に、本発明に係る自然言語処理装置及び自然言語処理方法の具体的な構成について図面を参照しながら説明する。なお、以下の説明では、たとえば、医薬品等の特定の技術分野で利用される質疑応答システムにおいて使用される自然言語処理装置について説明する。
図1に示すように、医薬品に関する質疑応答システム1は、システムの運営者のコンピューター(サーバーコンピューター2:自然言語処理装置)とシステムのユーザーのコンピューター(クライアントコンピューター3~6)とを電子通信回線網7を介して接続して構成している。ここで、各コンピューター2~6は、相互に通信可能なコンピューターとしての機能を有していればよく、大型コンピューターやパーソナルコンピューターや携帯端末機などが該当する。また、電子通信回線網7は、有線・無線や専用・汎用を問わず相互の通信が可能な機能を有していればよく、代表例としてインターネットが挙げられるが、必ずしもクラウドな環境である必要はなくオンプレミスな環境であってもよい。
この質疑応答システム1では、予め想定される医薬品に関する質問とその回答とを学習させた学習データを蓄積したQ&Aデータベース8を作成しておき、ユーザーのコンピューター(クライアントコンピューター3~6)からの質問に対してサーバーコンピューター2が人工知能の技術を用いて質問に対する回答をQ&Aデータベース8(学習データ)から抽出してクライアントコンピューター3~6に回答するシステムである。たとえば、質疑応答システム1は、医薬品に関する使用方法や注意点などを得るために活用することができる。
この質疑応答システム1において、サーバーコンピューター2は、図2に示すように、自然言語処理エンジン(自然言語処理プログラム)9を実行し、クライアントコンピューター3~6から自然言語からなる質問文が入力(質問文入力ステップS1)されると、自然言語からなる文章を構造化し蓄積したコーパス10を用いて質問文を分析し(質問文分析ステップS2)、質問文に対応する学習データをCNN(Convolutional Neural Network:畳込みニューラルネットワーク)を用いてQ&Aデータベース8内から信頼度を付して複数選択し(学習データ選択ステップS3)、それらを信頼度の高い順に並べて質問文に対する回答候補として出力する(回答出力ステップS4)。
ここで、自然言語処理エンジン9では、質問文分析ステップS2において、医薬品といった特定の技術分野での自然言語からなる質問文をコーパス10を用いて分析する自然言語処理を行う際に、基準となる文章を構造化し蓄積した汎用の一つの基準コーパス11だけを用いるのではなく、その基準コーパス11よりも特定の技術分野での専門性が高い文章を構造化し蓄積した専門コーパス12と基準コーパス11とを組み合わせたコーパス10を用いることにしている。
基準コーパス11としては、広く公開利用されている既存のものを使用することができ、専門コーパス12としては、質疑応答システム1(自然言語処理装置)の自然言語処理エンジン9で質問文を受付ける技術分野において使用されている文章を構造化し蓄積することで特定の技術分野にカスタマイズさせたものを使用することができる。特定の技術分野は、医学や機構学や電磁気学などのような学術分野でもよく、医薬品や食料品や家電品などのような製品分野でもよく、さらには、特定の業種や企業などのような産業(経済)分野などであってもよい。
専門コーパス12は、予め分野別に複数用意しておき、その中から選択された1又は複数を用いることにしてもよい。また、基準コーパス11は、継続して使用する一方で、専門コーパス12は、逐次カスタマイズ又はバージョンアップをしながら使用するようにしてもよい。
自然言語処理エンジン9では、コーパス10(基準コーパス11及び専門コーパス12)を用いて単語の意味を理解するための事前知識(単語間の関係を表す分散表現)を作成している。
上記自然言語処理エンジン9において、質問文入力ステップS1では、自然言語からなる質問文をテキストデータとして受付ける。
また、上記自然言語処理エンジン9において、質問文分析ステップS2では、図2に示すように、質問文を正規化し(正規化ステップS21)、正規化された質問文を分かち書きし(分かち書きステップS22)、分かち書きされた質問文からストップワードを削除する(ストップワード削除ステップS23)。
正規化ステップS21では、文字種の統一や大文字・小文字の統一などのように、予め設定したルールで文章を統一させる処理を行う。
分かち書きステップS22では、形態素解析エンジン(MeCab等)を用いて品詞の限定や原型への変換を行って文章を品詞ごとに分ける処理を行う。
ストップワード削除ステップS23では、予め設定した意味のない単語などの削除対象となる単語を文章から削除する処理を行う。
また、上記自然言語処理エンジン9において、学習データ選択ステップS3では、図2に示すように、質問文をベクトル化し(ベクトル化ステップS31)、質問文に対応する学習データをCNNを用いて判別し(CNN判別ステップS32)、予め設定したルールに基づいて各学習データの確信度を算定し(確信度算定ステップS33)、予め設定したルールに基づいて各学習データと質問文とのキーワードマッチングを行い(キーワードマッチングステップS34)、予め設定したルールに基づいて各学習データの信頼度を算定する(信頼度算定ステップS35)。
ベクトル化ステップS31では、質問文分析ステップS2で前処理した質問文について、単語のベクトル化処理(Word2Vec等)を用いて質問文に含まれる各単語をベクトル化するとともに、単語間の関係を表す分散表現を事前知識として重みを重畳することによって、質問文自体をベクトル化する。
CNN判別ステップS32では、ベクトル化ステップS31でベクトル化した質問文について、学習データによって学習済みのCNNライブラリ(たとえば、Kerasのpredictメソッド等)を用いて畳込みニューラルネットワークによる処理を行い、学習データから選択された全ての回答候補についてその確信度を得る。なお、学習データの質問は、予め上記自然言語処理エンジン9の正規化ステップS21~ベクトル化ステップS31を実行(学習処理)することでベクトル化されて学習済みとなっており、新たに学習データを追加する場合にも同様に学習処理を行っている。
上記自然言語処理エンジン9においては、CNN判別ステップS32で選択された回答候補やその確信度をそのまま使用するのではなく、以下の確信度算定ステップS33、キーワードマッチングステップS34、信頼度算定ステップS35を行うことで、最終的な回答候補とその信頼度を出力するようにしている。
確信度算定ステップS33では、図3に示すように、質問文が学習データに含まれているか(質問文と学習データの質問とが同一か)否かを判断(質問文学習データ比較ステップS331)する。
質問文学習データ比較ステップS331において質問文が既に学習データに含まれていると判断した場合には、CNN判別ステップS32で得られた回答候補の中から質問文と同一の学習データを回答候補1位とする。また、CNN判別ステップS32で得られた回答候補の中から質問文と同一の学習データを除いた回答候補について予め設定した順番(ここでは、10)から1を引いた順番(ここでは、1~9)の回答候補を1を足した順位(ここでは、2位~10位)の回答候補に繰下げる(回答候補繰下げステップS332)。
そして、質問文と同一の学習データを除いた全ての回答候補(2位~10位)の確信度を0.1%にするとともに、質問文と同一の学習データとなる回答候補(1位)の確信度を、
100-(0.1×CNN判別ステップS32で得られた回答候補の総数)
とする(確信度再計算ステップS333)。
一方、質問文学習データ比較ステップS331において質問文が既に学習データに含まれていないと判断した場合には、CNN判別ステップS32で得られた回答候補の中から予め設定した順番(ここでは、10)の回答候補をその順位(ここでは、1位~10位)の回答候補とし、その確信度をそのまま維持する(回答候補決定ステップS334)。
そして、確信度算定ステップS33では、上記のようにして順位付けた1位~10位の回答候補とその確信度を出力する(回答候補出力ステップS335)。
キーワードマッチングステップS34では、図4に示すように、質問文に含まれている名詞のリストを作成し(質問文名詞リスト作成ステップS341)、回答候補出力ステップS335で学習データから選択された最終的な回答候補についてそれぞれのスコアを算出するためのループ処理(回答候補ループS342)を行う。
回答候補ループS342では、質問文名詞リスト作成ステップS341でリストアップされた全ての名詞についてそれぞれの回答候補に出現する個数(出現数:ポイント)を算出するためのループ処理(名詞ループS343)を行う。
この名詞ループS343では、回答候補となる学習データの質問に含まれる単語が名詞と一致するか否かを判断し(名詞一致判断ステップS344)、一致する場合にだけ1ポイントを加算する処理(ポイント加算ステップS345)を行う。これにより、質問文に含まれる名詞が各回答候補にどれだけ出現するか(出現数)を算出することができる。
そして、回答候補ループS342では、各回答候補ごとに名詞の出現頻度をスコアとして算出する(スコア算出ステップS346)。スコアは、各回答候補の総ポイント(出現数)を質問文に含まれている名詞の総数で割った値としている。
回答候補ループS342によって各回答候補ごとに質問文の名詞のスコアを算出した後に、学習データの回答ごとに各学習データの質問におけるスコアの最大値を集計(加算)して最大スコアリストを作成し(最大スコアリスト作成ステップS347)、最大スコアリストの上位所定数(ここでは、10個)以外を0としてソフトマックス関数を用いて正規化することで各回答候補の一致率を算出する(一致率算出ステップS348)。
このようにして、自然言語処理エンジン9では、CNN判別ステップS32で選択された回答候補やその確信度をそのまま使用するのではなく、確信度算定ステップS33によって質問文と学習データの質問との一致を考慮して補正した各回答候補の確信度を算出し、キーワードマッチングステップS34によって質問文と回答候補の名詞の一致率を算出し、これらの確信度と一致率とから最終的な信頼度を算定する(信頼度算定ステップS35)。
信頼度算定ステップS35では、確信度算定ステップS33で算定した各回答候補の確信度とキーワードマッチングステップS34で算定した各回答候補の一致率とを用い、各回答候補の最終的な信頼度を、
信頼度=(確信度+一致率)/2×0.99
としている。
そして、自然言語処理エンジン9では、最終的な信頼度とともに回答候補を出力する(回答出力ステップS4)。
以上に説明したように、上記自然言語処理エンジン9(自然言語処理装置で用いられる自然言語処理方法)では、特定の技術分野での自然言語をコーパス10を用いて分析する際に、コーパス10として、基準となる文章を蓄積した基準コーパス11と、基準コーパス11よりも特定の技術分野での専門性が高い文章を蓄積した専門コーパス12とを組み合わせたものを用いることにしている。また、専門コーパス12として、予め用意された複数の専門コーパス12から選択されたいずれかの専門コーパス12を用いることにしている。
そのため、上記自然言語処理エンジン9では、専門性の高い質問文であってもその技術分野に適したコーパス10によって良好に分析を行うことができる。
また、上記自然言語処理エンジン9では、自然言語の質問文に対してCNN(Convolutional Neural Network:畳込みニューラルネットワーク)を用いて予め学習させた質問とその回答からなる学習データ8から選択する際に、ベクトル化した質問文及び学習データ8の質問を用いてCNNで処理することにしている。また、質問文及び学習データ8の質問を、それに含まれる各単語のベクトル化と各単語の分散表現とを用いてベクトル化することにしている。
そのため、上記自然言語処理エンジン9では、質問文と学習データ8の質問との近似の正確性を向上させることができる。
さらに、上記自然言語処理エンジン9では、自然言語の質問文に対してCNNを用いて予め学習させた質問とその回答からなる学習データ8から選択する際に、質問文に対してCNNを用いて複数の学習データ8を選択し,各学習データ8における質問文に含まれる名詞の出現率を加味して、各学習データ8の信頼度を決定することにしている。また、各学習データ8の回答に基づいて出現率を算出することにしている。
そのため、上記自然言語処理エンジン9では、質問文と学習データ8の質問との近似(信頼度)の正確性を向上させることができる。
1 質疑応答システム
2 サーバーコンピューター(自然言語処理装置)
3~6 クライアントコンピューター
7 電子通信回線網
8 Q&Aデータベース(学習データ)
9 自然言語処理エンジン(自然言語処理プログラム)
10 コーパス
11 基準コーパス
12 専門コーパス

Claims (3)

  1. 特定の技術分野での自然言語をコーパスを用いて分析し、自然言語の質問文に対してCNN(Convolutional Neural Network:畳込みニューラルネットワーク)を用いて予め学習させた質問とその回答からなる学習データから複数の学習データを選択する、自然言語処理装置によって実行される自然言語処理方法において、
    コーパスとして、基準となる文章を蓄積した基準コーパスと、基準コーパスよりも特定の技術分野での専門性が高い文章を蓄積した専門コーパスとを組み合わせたものを用い、質問文に対してCNNを用いて、複数の学習データの選択と、選択された各学習データの確信度の算定をして、選択された各学習データにおける前記質問文に含まれる名詞の出現率及び前記確信度を加味して、選択された各学習データの信頼度を決定し、選択された各学習データの回答を当該信頼度とともに出力することを特徴とする自然言語処理方法。
  2. 特定の技術分野での自然言語をコーパスを用いて分析し、自然言語の質問文に対してCNN(Convolutional Neural Network:畳込みニューラルネットワーク)を用いて予め学習させた質問とその回答からなる学習データから複数の学習データを選択する自然言語処理装置において、
    コーパスとして、基準となる文章を蓄積した基準コーパスと、基準コーパスよりも特定の技術分野での専門性が高い文章を蓄積した専門コーパスとを組み合わせたものを用い、質問文に対してCNNを用いて、複数の学習データの選択と、選択された各学習データの確信度の算定をして、選択された各学習データにおける前記質問文に含まれる名詞の出現率及び前記確信度を加味して、選択された各学習データの信頼度を決定し、選択された各学習データの回答を当該信頼度とともに出力することを特徴とする自然言語処理装置。
  3. 前記専門コーパスとして、予め用意された複数の専門コーパスから選択されたいずれかの専門コーパスを用いることを特徴とする請求項2に記載の自然言語処理装置。
JP2020079199A 2020-04-28 2020-04-28 自然言語処理装置及び自然言語処理方法 Active JP7168963B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020079199A JP7168963B2 (ja) 2020-04-28 2020-04-28 自然言語処理装置及び自然言語処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020079199A JP7168963B2 (ja) 2020-04-28 2020-04-28 自然言語処理装置及び自然言語処理方法

Publications (2)

Publication Number Publication Date
JP2021174362A JP2021174362A (ja) 2021-11-01
JP7168963B2 true JP7168963B2 (ja) 2022-11-10

Family

ID=78279720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020079199A Active JP7168963B2 (ja) 2020-04-28 2020-04-28 自然言語処理装置及び自然言語処理方法

Country Status (1)

Country Link
JP (1) JP7168963B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005128873A (ja) 2003-10-24 2005-05-19 Toshiba Solutions Corp 質問応答型文書検索システム及び質問応答型文書検索プログラム
JP2015109068A (ja) 2013-12-05 2015-06-11 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 回答候補間の関係を識別および表示する機構、方法、コンピュータ・プログラム、ならびに装置
JP2019215841A (ja) 2018-06-07 2019-12-19 日本電信電話株式会社 質問生成装置、質問生成方法及びプログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3385206B2 (ja) * 1998-02-23 2003-03-10 沖電気工業株式会社 自然言語処理装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005128873A (ja) 2003-10-24 2005-05-19 Toshiba Solutions Corp 質問応答型文書検索システム及び質問応答型文書検索プログラム
JP2015109068A (ja) 2013-12-05 2015-06-11 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 回答候補間の関係を識別および表示する機構、方法、コンピュータ・プログラム、ならびに装置
JP2019215841A (ja) 2018-06-07 2019-12-19 日本電信電話株式会社 質問生成装置、質問生成方法及びプログラム

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
中田陽介 他3名,点予測による形態素解析,情報処理学会研究報告 2010 October[CD-ROM],日本,一般社団法人 情報処理学会,2010年10月15日,ISSN 1884-0930
坪井祐太,自然言語処理におけるディープラーニングの発展,オペレーションズ・リサーチ 経営の科学,日本,公益社団法人日本オペレーションズ・リサーチ学会,2015年04月01日,第60巻, 第4号,pp. 205-211

Also Published As

Publication number Publication date
JP2021174362A (ja) 2021-11-01

Similar Documents

Publication Publication Date Title
Amin et al. Will affective computing emerge from foundation models and general artificial intelligence? A first evaluation of ChatGPT
CN110046304B (zh) 一种用户推荐方法和装置
CN109840287B (zh) 一种基于神经网络的跨模态信息检索方法和装置
CN108647205B (zh) 细粒度情感分析模型构建方法、设备及可读存储介质
CN109902159A (zh) 一种基于自然语言处理的智能运维语句相似度匹配方法
CN109829052A (zh) 一种基于人机交互的开放式对话方法和系统
Pearce et al. A comparative study of transformer-based language models on extractive question answering
CN112784532B (zh) 用于短文本情感分类的多头注意力记忆系统
US11354599B1 (en) Methods and systems for generating a data structure using graphical models
CN111695591A (zh) 基于ai的面试语料分类方法、装置、计算机设备和介质
CN111368096A (zh) 基于知识图谱的信息分析方法、装置、设备和存储介质
CN118093834B (zh) 一种基于aigc大模型的语言处理问答系统及方法
CN112632256A (zh) 基于问答系统的信息查询方法、装置、计算机设备和介质
CN114358657A (zh) 一种基于模型融合的岗位推荐方法及装置
CN111553140A (zh) 数据处理方法、数据处理设备及计算机存储介质
US20240256965A1 (en) Instruction Fine-Tuning Machine-Learned Models Using Intermediate Reasoning Steps
CN117290404A (zh) 一种主配网故障处理方法快速检索实用方法及系统
CN117494815A (zh) 面向档案的可信大语言模型训练、推理方法和装置
CN112989803B (zh) 一种基于主题向量学习的实体链接预测方法
CN113742482A (zh) 基于多重词特征融合的情感分类方法、介质
JP7168963B2 (ja) 自然言語処理装置及び自然言語処理方法
CN110633363B (zh) 一种基于nlp和模糊多准则决策的文本实体推荐方法
JP7276752B2 (ja) 自然言語処理装置及び自然言語処理方法
JP7112107B2 (ja) 自然言語処理装置及び自然言語処理方法
Sankhe et al. Survey on sentiment analysis

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210406

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220517

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220802

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: 20221004

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221020

R150 Certificate of patent or registration of utility model

Ref document number: 7168963

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150