JP2019220142A - 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム - Google Patents
回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム Download PDFInfo
- Publication number
- JP2019220142A JP2019220142A JP2019032127A JP2019032127A JP2019220142A JP 2019220142 A JP2019220142 A JP 2019220142A JP 2019032127 A JP2019032127 A JP 2019032127A JP 2019032127 A JP2019032127 A JP 2019032127A JP 2019220142 A JP2019220142 A JP 2019220142A
- Authority
- JP
- Japan
- Prior art keywords
- answer
- unit
- sentence
- question
- polarity
- 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
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B17/00—Teaching reading
- G09B17/003—Teaching reading electrically operated apparatus or devices
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B7/00—Electrically-operated teaching apparatus or devices working with questions and answers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Electrically Operated Instructional Devices (AREA)
Abstract
【課題】極性で回答することができる質問に対して、精度よく、極性で回答することができるようにする。【解決手段】機械読解部210が、入力された文章及び質問文に基づいて、当該文章における当該質問文に対する回答の根拠となる範囲を推定するための予め学習された読解モデルを用いて、当該範囲の始端及び終端を推定し、判断部220が、機械読解部210の処理によって得られる情報に基づいて、質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、当該質問文に対する回答の極性を判断する。【選択図】図1
Description
本発明は、回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラムに係り、特に、質問文に対して極性で回答するための回答生成装置、回答学習装置、回答生成方法、回答学習方法、及びプログラムに関する。
近年、機械が文章を読み解いて質問に答える機械読解技術(例えば、BiDAF(非特許文献1))が注目を集めている。機械読解の代表的なデータセットにはSQuAD(非特許文献2)が存在し、大規模な深層学習技術の適用が可能となっている。
SQuADは1つの質問に対して1段落の文章が紐づき、文章に書いてある回答をそのまま抽出して回答とする抽出型のタスクのためのデータセットである。
Minjoon Seo, Aniruddha Kembhavi, Ali Farhadi, Hananneh Hajishirzi, "BI-DIRECTIONAL ATTENTION FLOW FOR MACHINE COMPREHENSION", Published as a conference paper at ICLR, 2017.
Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, Percy Liang, "SQuAD: 100,000+ Questions for Machine Comprehension of Text", Computer Science Department Stanford University, 2016.
しかし、抽出型タスクのための手法では、テキストに書いていない形式で答えを出力することができない、という問題があった。具体的には、Yes又はNo等の極性で回答することができる質問に対して、その極性(Yes又はNo)で回答する、ということができない。このようなテキストに書いていない形式で答えを出力するためには、機械が文章の中から質問に関連する部分に注目するだけでなく、関連部分から質問に対する回答を判断する必要がある。
本発明は上記の点に鑑みてなされたものであり、極性で回答することができる質問に対して、精度よく、極性で回答することができる回答生成装置、回答生成方法、及びプログラムを提供することを目的とする。
また、本発明は上記の点に鑑みてなされたものであり、極性で回答することができる質問に対して、精度よく、極性で回答するためのモデルを学習することができる回答学習装置、回答学習方法、及びプログラムを提供することを目的とする。
本発明に係る回答生成装置は、入力された文章及び質問文に基づいて、前記文章における前記質問文に対する回答の根拠となる範囲を推定するための予め学習された読解モデルを用いて、前記範囲の始端及び終端を推定する機械読解部と、前記機械読解部の処理によって得られる情報に基づいて、前記質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、前記質問文に対する回答の極性を判断する判断部と、を備えて構成される。
また、本発明に係る回答生成方法は、機械読解部が、入力された文章及び質問文に基づいて、前記文章における前記質問文に対する回答の根拠となる範囲を推定するための予め学習された読解モデルを用いて、前記範囲の始端及び終端を推定し、判断部が、前記機械読解部の処理によって得られる情報に基づいて、前記質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、前記質問文に対する回答の極性を判断する。
本発明に係る回答生成装置及び回答生成方法によれば、機械読解部が、入力された文章及び質問文に基づいて、当該文章における当該質問文に対する回答の根拠となる範囲を推定するための読解モデルを用いて、当該範囲の始端及び終端を推定し、判断部が、機械読解部の処理によって得られる情報に基づいて、質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、当該質問文に対する回答の極性を判断する。
このように、入力された文章及び質問文に基づいて、当該文章における当該質問文に対する回答の根拠となる範囲を推定するための読解モデルを用いて、当該範囲の始端及び終端を推定し、当該推定する処理によって得られる情報に基づいて、質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、当該質問文に対する回答の極性を判断することにより、極性で回答することができる質問に対して、精度よく、極性で回答することができる。
また、本発明に係る回答生成装置の前記読解モデル及び前記判断モデルは、ニューラルネットワークであり、前記機械読解部は、前記文章及び前記質問文を入力として、前記文章を符号化した結果と、前記質問文を符号化した結果とに基づいて、前記範囲を推定するための前記読解モデルを用いて、読解行列を生成し、前記読解行列を用いて前記範囲の始端及び終端を推定し、前記判断部は、前記機械読解部により生成された前記読解行列に基づいて、前記質問文に対する回答の極性が正か否かを判断する前記判断モデルを用いて、前記質問文に対する回答の極性を判断することができる。
また、本発明に係る回答生成装置は、前記質問文が、極性で答えることができる質問である否かを判定する質問判定部を更に備え、前記判断部は、前記質問判定部によって前記質問文が極性で答えることができる質問であると判定された場合に、前記判断モデルを用いて、前記質問文に対する回答の極性を判断することができる。
また、本発明に係る回答生成装置の前記回答の極性は、Yes若しくはNo、又はOK若しくはNGであるとすることができる。
また、本発明に係る回答生成装置は、出力部を更に備え、前記機械読解部は、前記処理によって得られる情報に基づいて、質問文に対する回答の根拠となる情報である根拠情報を抽出する抽出モデルを用いて、前記質問文に対する回答の根拠情報を抽出する根拠抽出部を含み、前記出力部は、前記判断部により判断された前記回答の極性と、前記根拠抽出部により抽出された前記根拠情報とを回答として出力することができる。
また、本発明に係る回答生成装置は、前記判断モデルは、前記質問文に対する回答が、正の極性、正でない極性、及び極性ではない回答の何れであるかを判断するためのものであり、前記判断部は、前記判断モデルを用いて、前記質問文に対する回答が、正の極性、正でない極性、及び極性ではない回答の何れであるかを判断し、前記出力部は、前記判断部によって前記極性でない回答であると判断された場合に、前記根拠抽出部により抽出された前記根拠情報を回答として出力することができる。
本発明に係る回答学習装置は、文章と、質問文と、前記文章における前記質問文に対する回答の極性を示す正解と、前記文章における前記回答の根拠となる範囲の始端及び終端とを含む学習データの入力を受け付ける入力部と、前記文章及び前記質問文に基づいて、前記範囲を推定するための読解モデルを用いて、前記範囲の始端及び終端を推定する機械読解部と、前記機械読解部の処理によって得られる情報に基づいて、前記質問文に対する回答の極性が正か否かを判断する判断モデルを用いて、前記質問文に対する回答の極性を判断する判断部と、前記学習データに含まれる前記正解と、前記判断部により判断された結果とが一致し、前記学習データに含まれる前記始端及び前記終端と、前記機械読解部により推定された前記始端及び前記終端とが一致するように、前記読解モデル及び前記判断モデルのパラメータを学習するパラメータ学習部と、を備えて構成される。
また、本発明に係る回答学習方法は、入力部が、文章と、質問文と、前記文章における前記質問文に対する回答の極性を示す正解と、前記文章における前記回答の根拠となる範囲の始端及び終端とを含む学習データの入力を受け付け、機械読解部が、前記文章及び前記質問文に基づいて、前記範囲を推定するための読解モデルを用いて、前記範囲の始端及び終端を推定し、判断部が、前記機械読解部の処理によって得られる情報に基づいて、前記質問文に対する回答の極性が正か否かを判断する判断モデルを用いて、前記質問文に対する回答の極性を判断し、パラメータ学習部が、前記学習データに含まれる前記正解と、前記判断部により判断された結果とが一致し、前記学習データに含まれる前記始端及び前記終端と、前記機械読解部により推定された前記始端及び前記終端とが一致するように、前記読解モデル及び前記判断モデルのパラメータを学習する。
本発明に係る回答学習装置及び回答学習方法によれば、入力部が、文章と、質問文と、当該文章における当該質問文に対する回答の極性を示す正解と、当該文章における回答の根拠となる範囲の始端及び終端とを含む学習データの入力を受け付け、機械読解部が、当該文章及び当該質問文に基づいて、当該範囲を推定するための読解モデルを用いて、当該範囲の始端及び終端を推定する。
そして、判断部が、機械読解部の処理によって得られる情報に基づいて、質問文に対する回答の極性が正か否かを判断する判断モデルを用いて、当該質問文に対する回答の極性を判断し、パラメータ学習部が、学習データに含まれる正解と、判断部により判断された結果とが一致し、学習データに含まれる始端及び終端と、機械読解部により推定された始端及び終端とが一致するように、読解モデル及び判断モデルのパラメータを学習する。
このように、文章と、質問文と、当該文章における当該質問文に対する回答の極性を示す正解と、当該文章における回答の根拠となる範囲の始端及び終端とを含む学習データの入力を受け付け、当該文章及び当該質問文に基づいて、当該範囲を推定するための読解モデルを用いて、当該範囲の始端及び終端を推定する処理によって得られる情報に基づいて、質問文に対する回答の極性が正か否かを判断する判断モデルを用いて、当該質問文に対する回答の極性を判断し、学習データに含まれる正解と、判断された結果とが一致し、学習データに含まれる始端及び終端と、推定された始端及び終端とが一致するように、読解モデル及び判断モデルのパラメータを学習することにより、極性で回答することができる質問に対して、精度よく、極性で回答するためのモデルを学習することができる。
また、本発明に係る回答学習装置の前記機械読解部は、前記処理によって得られる情報に基づいて、質問文に対する回答の根拠となる情報である根拠情報を抽出する抽出モデルを用いて、前記質問文に対する回答の根拠情報を抽出する根拠抽出部を備え、前記学習データは、前記文章における前記回答の根拠情報を更に含み、前記パラメータ学習部は、更に、前記学習データに含まれる前記文章における前記回答の根拠情報と、前記根拠抽出部により抽出された前記根拠情報とが一致するように、前記抽出モデルのパラメータを学習することができる。
本発明に係るプログラムは、上記の回答学習装置、又は回答生成装置の各部として機能させるためのプログラムである。
本発明の回答生成装置、回答生成方法、及びプログラムによれば、極性で回答することができる質問に対して、精度よく、極性で回答することができる。
また、本発明の回答学習装置、回答学習方法、及びプログラムによれば、極性で回答することができる質問に対して、精度よく、極性で回答するためのモデルを学習することができる。
以下、本発明の実施の形態について図面を用いて説明する。
<本発明の第1の実施の形態に係る回答学習装置の概要>
本発明の第1の実施形態は、入力された質問に対し、テキストに書いていない形式で答えを出力する新しいタスク設定として、「Yes又はNo等の極性で回答することができる質問に対してYes又はNo等の極性で回答する」タスクを提案する。本実施形態では、回答の極性がYes又はNoである場合を例に説明する。このYes又はNoで回答するタスクは、既存研究の存在しない全く新しいタスクである。
本発明の第1の実施形態は、入力された質問に対し、テキストに書いていない形式で答えを出力する新しいタスク設定として、「Yes又はNo等の極性で回答することができる質問に対してYes又はNo等の極性で回答する」タスクを提案する。本実施形態では、回答の極性がYes又はNoである場合を例に説明する。このYes又はNoで回答するタスクは、既存研究の存在しない全く新しいタスクである。
機械読解の代表的なデータセットには、SQuAD(非特許文献2)の他にMS−MARCO(参考文献1)が存在する。MS−MARCOは1つの質問に10近くの段落が紐づき、その段落群から人間が答えを生成したデータセットである。このような、質問に対して、文章に書かれていない形式で回答を出力するタスクを生成型タスクという。
[参考文献1]Tri Nguyen, Mir Rosenberg, Xia Song, Jianfeng Gao, Saurabh Tiwary, Rangan Majumder, Li Deng, "MS MARCO: A Human Generated MAchine Reading COmprehension Dataset", 2016.
[参考文献1]Tri Nguyen, Mir Rosenberg, Xia Song, Jianfeng Gao, Saurabh Tiwary, Rangan Majumder, Li Deng, "MS MARCO: A Human Generated MAchine Reading COmprehension Dataset", 2016.
抽出型・生成型の2種類のタスクが存在する一方で、既存の機械読解技術の多くは抽出型のタスクを設定した技術が多い。
生成型のタスクは、「テキストに書いていない形式で答えを出力する」という特性から、抽出型のタスクに比べて難しい課題となっている。
生成型のタスクは、人間がゼロから生成した答えを正解とするデータセットを用いるので、機械も答えをゼロから作り出す必要がある。生成型のタスクの手法には、S−Net(参考文献2)が存在する。
[参考文献2]Chuanqi Tan, Furu Weiz, Nan Yang, Bowen Du, Weifeng Lv, Ming Zhouz, "S-NET: FROM ANSWER EXTRACTION TO ANSWER GENERATION FOR MACHINE READING COMPREHENSION", 2017.
[参考文献2]Chuanqi Tan, Furu Weiz, Nan Yang, Bowen Du, Weifeng Lv, Ming Zhouz, "S-NET: FROM ANSWER EXTRACTION TO ANSWER GENERATION FOR MACHINE READING COMPREHENSION", 2017.
一般的な質問応答において、Yes又はNoで回答すべき状況は多く現れる。しかし、参考文献2のような生成型の手法をこのような状況で適用した場合、回答としてYes又はNoを生成する可能性を含むものの、その可能性は極めて低く、正しく応答をすることができない。
本実施形態では、「Yes又はNoで回答することができる質問に対してYes又はNoで回答する」タスクに特化した手法を提案するため、Yes又はNoで回答すべき状況で正しく応答することが可能である。そのため、機械によって質問応答可能な範囲を大きく広げることができる。
本実施形態に係る回答学習装置は、単語系列である文章Pと質問文Qをベクトル系列に変換し、機械読解部が読解技術を用いて回答範囲スコア(sd:se)に変換し、ベクトル系列と回答範囲のスコアから新しい技術である判断部を用いて判断スコアに変換し、回答範囲スコアと判断スコアを用いて学習する。
すなわち、Yes、Noの単なる2値判定(文章P全体を特徴量として、何も考えず機械学習で判定)を行うのではなく、機械読解技術によって、質問文Qに対する回答が書かれている場所を同定し、それを根拠としてYesかNoかの判定を行う。
この際、機械読解部と判定部とのニューラルネットワークは層を共有しているので、Yes/No判定に合わせた機械読解、読解に基づくYes/No判定の両側面から学習することが可能となる。
<本発明の第1の実施の形態に係る回答学習装置の構成>
図1を参照して、本発明の第1の実施の形態に係る回答学習装置10の構成について説明する。図1は、本発明の第1の実施の形態に係る回答学習装置10の構成を示すブロック図である。
図1を参照して、本発明の第1の実施の形態に係る回答学習装置10の構成について説明する。図1は、本発明の第1の実施の形態に係る回答学習装置10の構成を示すブロック図である。
回答学習装置10は、CPUと、RAMと、後述する回答学習処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図1に示すように、本実施形態に係る回答学習装置10は、入力部100と、解析部200と、パラメータ学習部300とを備えて構成される。
入力部100は、文章Pと、質問文Qと、文章Pにおける当該質問文に対する回答の極性を示す正解Yと、文章Pにおける回答の根拠となる範囲の始端D及び終端Eとを含む複数の学習データの入力を受け付ける。
具体的には、学習データは、テキストデータからなる文章P及び質問文Qと、回答がYes/Noのいずれかであるかを示す正解Yと、文章Pにおける回答の根拠となる範囲(D:E)で構成される。ここで、D、Eは文章P中の単語の位置番号で表現され、Dは回答の根拠となる範囲の開始位置の単語の位置番号、Eは回答の根拠となる範囲の終了位置の単語の位置番号である。
テキストデータである文章P及び質問文Qは、既存のトークナイザによってトークン系列として表現されている。なお、トークンとして任意の単位を用いることができるが、本実施形態では、トークンを単語と表記する。
単語系列で表現されている文章P及び質問文Qの長さを単語の数で定義し、文章Pの単語の数をLP、質問文Qの単語の数をLQとする。
なお、複数の学習データをミニバッチとしてミニバッチ毎にまとめて処理してもよいし、学習データ毎に処理されてもよい。
そして、入力部100は、受け付けた学習データのうち、文章Pと質問文Qとを、機械読解部210に、学習データをパラメータ学習部300に渡す。
解析部200は、機械読解部210と、判断部220とを備えて構成される。
機械読解部210は、文章P及び質問文Qに基づいて、文章Pにおける回答の根拠となる範囲D:Eを推定するための読解モデルを用いて、当該範囲の始端sd及び終端seを推定する。
具体的には、機械読解部210は、単語符号化部211と、単語データベース(DB)212と、第1文脈符号化部213と、アテンション部214と、第2文脈符号化部215と、根拠探索部216とを備えて構成される。
単語符号化部211は、文章P及び質問文Qに基づいて、単語ベクトルの系列P1及びQ1を生成する。
具体的には、単語符号化部211は、単語DB212から文章P及び質問文Qの各単語に対応するベクトルを抽出し、単語ベクトルの系列P1及びQ1を生成する。
単語DB212に格納されるベクトルの次元をdとすると、単語ベクトルの系列P1はLP×d、単語ベクトルの系列Q1はLQ×dの大きさの行列である。
そして、単語符号化部211は、生成した単語ベクトルの系列P1及びQ1を、第1文脈符号化部213に渡す。
単語DB212は、複数の単語ベクトルが格納されている。単語ベクトルは、単語を表す所定次元の実数値ベクトルの集合である。
具体的には、単語DB212は、予めニューラルネットワークにより学習された複数の単語ベクトル(word embedding)を用いる。これには例えばword2vecやGloVeのような、既存のものを用いてもよい。単語ベクトルには、既存の複数の単語ベクトルから抽出される単語ベクトルに、新しく学習した単語ベクトルを繋げることができる。なお、単語の文字情報を符号化する技術(参考文献3)等、任意の単語embedding技術が使用可能である。単語ベクトルは、誤差逆伝播法によって計算できる勾配から学習することも可能である。
[参考文献3]Yoon Kim, Yacine Jernite, David Sontag, Alexander M. Rush, "Character-Aware Neural Language Models", arXiv:1508.06615, 2016.
[参考文献3]Yoon Kim, Yacine Jernite, David Sontag, Alexander M. Rush, "Character-Aware Neural Language Models", arXiv:1508.06615, 2016.
第1文脈符号化部213は、単語符号化部211により生成された単語ベクトルの系列P1及びQ1を、ニューラルネットワークを用いてベクトルの系列P2及びQ2にそれぞれ変換する。
具体的には、第1文脈符号化部213は、単語ベクトルの系列P1及びQ1を、RNNによってベクトルの系列P2及びQ2にする。RNNの構造には、LSTM等の既存技術を用いることができる。
本実施形態では、第1文脈符号化部213は、ベクトルの系列を順方向に処理するRNNと、逆方向に処理するRNNとの2種類のRNNを組み合わせた双方向RNNを用いる。双方向RNNの出力するベクトルの次元をd1とすると、第1文脈符号化部213が変換するベクトルの系列P2はLP×d1、ベクトルの系列Q2はLQ×d1の大きさの行列となる。
そして、第1文脈符号化部213は、変換したベクトルの系列P2及びQ2を、アテンション部214に、ベクトルの系列Q2を、入力変換部221にそれぞれ渡す。
アテンション部214は、ニューラルネットワークを用いて、ベクトルの系列P2及びQ2に基づいて、文章P及び質問文Qのアテンションを表すベクトルの系列である読解行列Bを生成する。
具体的には、アテンション部214は、まず、ベクトルの系列P2及びQ2から、アテンション行列
を計算する。アテンション行列Aは、例えば、下記式(1)を用いることができる。
を計算する。アテンション行列Aは、例えば、下記式(1)を用いることができる。
上記式(1)において、行列の添え字で成分を表し、”:”は全体を表す。例えば、Ai:は、アテンション行列Aの第i行全体を表す。また、上記式(1)において、”○”は要素積であり、”,”はベクトル・行列を縦方向に結合する演算子である。wSは、モデルの訓練可能なパラメータであり、
である。
である。
アテンション部214は、アテンション行列Aを基に、文章Pから質問文Q方向へのアテンションベクトル
、質問文Qから文章P方向へのアテンションベクトル
を計算する。
、質問文Qから文章P方向へのアテンションベクトル
を計算する。
ここで、アテンションベクトル
は、下記式(2)で表すことができる。
は、下記式(2)で表すことができる。
softmaxは、ソフトマックス関数であり、
である。
である。
また、アテンションベクトル
は、下記式(3)で表すことができる。
は、下記式(3)で表すことができる。
ここで、
は、LP次元のベクトルであり、そのi番目の要素(1≦i≦LP)は、アテンション行列Aのi番目のベクトルの最大値(j方向のmax値)である。softmaxiは、i方向にsoftmaxを用いるという意味である。
は、LP次元のベクトルであり、そのi番目の要素(1≦i≦LP)は、アテンション行列Aのi番目のベクトルの最大値(j方向のmax値)である。softmaxiは、i方向にsoftmaxを用いるという意味である。
βは、アテンション行列Aにmax関数を用いることにより、長さがLPのベクトルとなり、式(3)において、βの各成分を重みとしてP2の各行の重みの和を取ることにより、
は長さd1のベクトルとなる。
は長さd1のベクトルとなる。
また、
をLP回繰り返し計算して縦に並べた行列が、
となる。
をLP回繰り返し計算して縦に並べた行列が、
となる。
アテンション部214は、ベクトルの系列P2、アテンションベクトル
、及びアテンションベクトル
に基づいて、アテンションの結果を表現する長さLPの読解行列Bを求める。例えば、読解行列
である。ただし、”,”は、ベクトル・行列を横に結合する演算子である。
、及びアテンションベクトル
に基づいて、アテンションの結果を表現する長さLPの読解行列Bを求める。例えば、読解行列
である。ただし、”,”は、ベクトル・行列を横に結合する演算子である。
そして、アテンション部214は、読解行列Bを、入力変換部221及び第2文脈符号化部215に渡す。
第2文脈符号化部215は、アテンション部214により生成された読解行列Bを、ニューラルネットワークを用いてベクトルの系列である読解行列Mに変換する。
具体的には、第2文脈符号化部215は、読解行列Bを、RNNによって読解行列Mにする。RNNの構造には、第1文脈符号化部213と同様に、LSTM等の既存技術を用いることができる。
第2文脈符号化部215のRNNが出力する単語ベクトルの次元をd2とすると、読解行列
となる。
となる。
そして、第2文脈符号化部215は、変換した読解行列Mを、入力変換部221及び根拠探索部216に渡す。
根拠探索部216は、読解行列Mに基づいて、文章Pにおける回答の根拠となる範囲D:Eを推定するための読解モデルを用いて、当該範囲の始端sd及び終端seを推定する。
具体的には、根拠探索部216は、回答の根拠となる範囲の始端sdを推定するための始端用RNN及び終端seを推定するための終端用RNNの2つのニューラルネットワークによって構成される。
根拠探索部216は、まず、読解行列Mを、始端用RNNに入力してベクトルの系列M1を得る。
根拠探索部216は、回答の根拠となる範囲の始端sdを、下記式(4)を用いて求める。
ここで、始端sdは、回答の根拠となる範囲の始端に関するスコアであり、ベクトルで表される。すなわち、ベクトルの各次元に対応する単語が回答範囲の始端になる確率(スコア)を表す。
同様に、読解行列Mを、終端用RNNに入力して単語ベクトルM2を得る。
根拠探索部216は、回答の根拠となる範囲の終端seを、下記式(5)を用いて求める。
ここで、終端seは、回答の根拠となる範囲の終端に関するスコアであり、ベクトルで表される。すなわち、ベクトルの各次元に対応する単語が回答範囲の終端になる確率(スコア)を表す。
推定した始端sd及び終端seをまとめて回答範囲スコアと呼ぶ。なお、上記式(4)及び式(5)において、w1及びw2は、式(4)及び式(5)で表される読解モデルのパラメータであり、学習することができる。
そして、根拠探索部216は、推定した回答範囲スコアを、入力変換部221及びパラメータ学習部300に渡す。
判断部220は、機械読解部210の処理によって得られる情報に基づいて、質問文Qに対する回答の極性が正か否かを判断する判断モデルを用いて、質問文Qに対する回答の極性を判断する。
具体的には、判断部220は、入力変換部221と、スコア計算部222とを備えて構成される。
入力変換部221は、機械読解部210により文章Pを符号化した結果と、機械読解部210により質問文Qを符号化した結果とに基づいて、ベクトルの系列P3及びQ3を生成する。
具体的には、入力変換部221は、まず、機械読解部210の処理によって得られる情報の入力を受け付ける。
入力を受け付ける情報は、4種類に分類することができる。すなわち、(1)文章Pの符号化結果であり、かつ、質問文Qを考慮した長さLPのベクトルの系列(例えば、読解行列B又はM)、(2)質問文Qの符号化結果である長さLQのベクトル系列(例えば、ベクトルの系列Q2)、(3)回答範囲に関する情報である長さLPのベクトル(例えば、推定した始端sdと終端se)、(4)文章Pと質問文Qとの意味的マッチング結果である大きさLP×LQの行列(例えば、アテンション行列A)の4種類を受け付ける。
ここで、受け付ける情報は、必ずしも4種類全てを受け付ける必要はなく、最低限の構成として(1)の1種類(読解行列B又はM)があれば本実施形態の目的を達することができる。(2)、(3)及び(4)は、いずれかのみ、あるいは複数を追加として受け付けても良い。本実施形態では、単純な形式として(1)読解行列B、及び(2)ベクトルの系列Q2を受け付ける場合を例に説明する。
入力変換部221は、受け付けた読解行列B及びベクトルの系列Q2に基づいて、長さLPのベクトルの系列
、長さLQのベクトルの系列
を計算する。
、長さLQのベクトルの系列
を計算する。
ベクトルの系列P3及びQ3の計算方法として、任意のニューラルネットワークを用いることができる。例えば、下記式(6)及び式(7)を用いることができる。
なお、d3の次元数は、任意に設定することができる。式(6)及び式(7)を用いた場合、Q2との次元を合わせるため、d3=d2であり、式(6)におけるRNNの出力の次元もd3=d2となる。
そして、入力変換部221は、生成したベクトルの系列P3及びQ3を、スコア計算部222に渡す。
スコア計算部222は、質問文Qに対する回答の極性が正か否かを判断する判断モデルを用いて、質問文Qに対する回答の極性を判断する。
具体的には、スコア計算部222は、ベクトルの系列P3及びQ3に基づいて、任意の文ペア分類タスクのフレームワークを用いて、質問文Qに対する回答がYesかNoかに分類するために用いる判断スコアk(0から1の実数)を求める。
例えば、文ペア分類タスクの1つである含意認識の代表的なモデルであるESIM(参考文献4)のdecoder LSTM後のフレームワークを分類問題に用いることができる。
[参考文献4]Qian Chen, Xiaodan Zhu, Zhenhua Ling, Si Wei, Hui Jiang, Diana Inkpen, "Enhanced LSTM for Natural Language Inference", arXiv:1609.06038, 2017.
[参考文献4]Qian Chen, Xiaodan Zhu, Zhenhua Ling, Si Wei, Hui Jiang, Diana Inkpen, "Enhanced LSTM for Natural Language Inference", arXiv:1609.06038, 2017.
この場合、ベクトルの系列P3及びQ3をaverage pooling(列方向の平均を取る操作)、又はmax pooling(列方向の最大値を取る操作)をして、ベクトル
を得る。
を得る。
得られたベクトルPa、Qa、Pm及びQmを結合して、4d3次元のベクトルJを得る。ベクトルJを多層パーセプトロンによって、実数(1次元のベクトル)にし、シグモイド変換をして判断スコアkを得る。
なお、Yes/Noの分類問題でなく、Yes、No、又は不明の3つに分類するように構成してもよい。この場合、ベクトルJを多層パーセプトロンによって3次元のベクトルに変換した後で、ソフトマックス変換したものを判断スコアkとしてもよい。
そして、スコア計算部222は、判断スコアkを、パラメータ学習部300に渡す。
パラメータ学習部300は、学習データに含まれる正解Yと、判断部220により判断された結果とが一致し、学習データに含まれる始端D及び終端Eと、機械読解部210により推定された始端sd及び終端seとが一致するように、読解モデル及び判断モデルのパラメータを学習する。
具体的には、パラメータ学習部300は、機械読解部210で用いる読解モデルについての目的関数LCと、判断部220で用いる判断モデルについての目的関数LJの線形和を、最適化問題の目的関数とする(下記式(8))。
ここで、λはモデルのパラメータであり、学習器によって学習可能である。λの値を事前に指定する場合、1や1/2等、学習が進むように適当な値を定める。
目的関数LCは、任意の機械読解技術の目的関数を用いることができる。例えば、非特許文献1では、下記式(9)で表されるクロスエントロピー関数を提案している。
上記式(9)において、D及びEは、それぞれ真の始端D及び終端Eの位置を表し、sd,Dは、ベクトルsdにおけるD番目の要素の値を、se,Eは、ベクトルseにおけるE番目の要素の値を表す。
目的関数LJも任意の目的関数を用いることができる。例えば、クロスエントロピー関数を用いた場合、下記式(10)となる。
上記式(10)において、Yは、真の回答の極性を示す正解Yであり、正解YがYesである場合、スコアkYes=k、正解YがNoである場合、スコアkNo=1−kである。つまり、正解YがYesの場合LJ=log(k)、正解YがNoの場合LJ=log(1−k)となる。
そして、パラメータ学習部300は、上記式(8)で表される目的関数の勾配を、誤差逆伝播勾配法を用いて計算し、任意の最適化手法を用いてパラメータを更新する。
<本発明の第1の実施の形態に係る回答学習装置の作用>
図2は、本発明の第1の実施の形態に係る回答学習処理ルーチンを示すフローチャートである。また、以下では本実施形態に係る回答学習装置が、ミニバッチを用いて学習する場合について説明するが、一般的なニューラルネットワークの学習方法を用いてもよい。なお、簡便のため、ミニバッチのサイズを1とする。
図2は、本発明の第1の実施の形態に係る回答学習処理ルーチンを示すフローチャートである。また、以下では本実施形態に係る回答学習装置が、ミニバッチを用いて学習する場合について説明するが、一般的なニューラルネットワークの学習方法を用いてもよい。なお、簡便のため、ミニバッチのサイズを1とする。
入力部100に複数の学習データが入力されると、回答学習装置10において、図2に示す回答学習処理ルーチンが実行される。
まず、ステップS100において、入力部100は、文章Pと、質問文Qと、文章Pにおける当該質問文に対する回答の極性を示す正解Yと、文章Pにおける回答の根拠となる範囲の始端D及び終端Eとを含む複数の学習データの入力を受け付ける。
ステップS110において、入力部100は、ステップS100により受け付けた学習データを、ミニバッチに分割する。ミニバッチとは、複数の学習データをランダムに分割した学習データε個の集合である。εは1以上の自然数である。
ステップS120において、単語符号化部211は、1番目のミニバッチを選択する。
ステップS130において、単語符号化部211は、選択されているミニバッチに含まれる文章P及び質問文Qに基づいて、単語ベクトルの系列P1及びQ1を生成する。
ステップS140において、第1文脈符号化部213は、上記ステップS130により生成された単語ベクトルの系列P1及びQ1を、ニューラルネットワークを用いてベクトルの系列P2及びQ2にそれぞれ変換する。
ステップS150において、アテンション部214は、ニューラルネットワークを用いて、ベクトルの系列P2及びQ2に基づいて、文章P及び質問文Qのアテンションを表す読解行列Bを生成する。
ステップS160において、第2文脈符号化部215は、上記ステップS150により生成された読解行列Bを、ニューラルネットワークを用いて読解行列Mに変換する。
ステップS170において、根拠探索部216は、読解行列Mに基づいて、文章Pにおける回答の根拠となる範囲D:Eを推定するための読解モデルを用いて、当該範囲の始端sd及び終端seを推定する。
ステップS180において、入力変換部221は、機械読解部210により文章Pを符号化した結果と、機械読解部210により質問文Qを符号化した結果とに基づいて、ベクトルの系列P3及びQ3を生成する。
ステップS190において、スコア計算部222は、ベクトルの系列P3及びQ3に基づいて、質問文Qに対する回答の極性が正か否かを判断する判断モデルを用いて、質問文Qに対する回答の極性を判断する。
ステップS200において、パラメータ学習部300は、学習データに含まれる正解Yと、判断部220により判断された結果とが一致し、学習データに含まれる始端D及び終端Eと、機械読解部210により推定された始端sd及び終端seとが一致するように、読解モデル及び判断モデルのパラメータを更新する。
ステップS210において、パラメータ学習部300は、全てのミニバッチについて処理を行ったか否かを判定する。
全てのミニバッチについて処理を行っていない場合の場合(ステップS210のNO)、ステップS220において、次のミニバッチを選択し、ステップS130に戻る
一方、全てのミニバッチについて処理を行っている場合の場合(ステップS210のYES)、ステップS230において、パラメータ学習部300は、学習が収束したか否かについての収束判定を行う。
学習が収束していない場合(ステップS230のNO)、ステップS110に戻り、再度ステップS110〜ステップS230までの処理を行う。
一方、学習が収束している場合(ステップS230のYES)、ステップS240において、パラメータ学習部300は、学習したパラメータを、メモリ(図示省略)に格納する。
なお、ミニバッチのサイズを2以上とする場合、上記ステップS120の後に、1番目の文章P及び質問Qを選択するステップと、上記ステップS210の前に、ミニバッチ内の全ての文章P及び質問Qについて処理を行ったか否かを判定し、当該判定結果が否定的な場合に、次の文章P及び質問Qを選択して上記ステップS130に戻り、当該判定が肯定的な場合に上記ステップS210に進むステップとを追加する構成とすればよい。
以上説明したように、本実施形態に係る回答学習装置によれば、文章と、質問文と、当該文章における当該質問文に対する回答の極性を示す正解と、当該文章における回答の根拠となる範囲の始端及び終端とを含む学習データの入力を受け付け、当該文章及び当該質問文に基づいて、当該範囲を推定するための読解モデルを用いて、当該範囲の始端及び終端を推定する処理によって得られる情報に基づいて、質問文に対する回答の極性が正か否かを判断する判断モデルを用いて、当該質問文に対する回答の極性を判断し、学習データに含まれる正解と、判断された結果とが一致し、学習データに含まれる始端及び終端と、推定された始端及び終端とが一致するように、読解モデル及び判断モデルのパラメータを学習することにより、極性で回答することができる質問に対して、精度よく、極性で回答するためのモデルを学習することができる。
<本発明の第1の実施の形態に係る回答生成装置の構成>
図3を参照して、本発明の第1の実施の形態に係る回答生成装置20の構成について説明する。図3は、本発明の第1の実施の形態に係る回答生成装置20の構成を示すブロック図である。なお、上述の回答学習装置10と同様の構成については、同一の符号を付して詳細な説明は省略する。
図3を参照して、本発明の第1の実施の形態に係る回答生成装置20の構成について説明する。図3は、本発明の第1の実施の形態に係る回答生成装置20の構成を示すブロック図である。なお、上述の回答学習装置10と同様の構成については、同一の符号を付して詳細な説明は省略する。
回答生成装置20は、CPUと、RAMと、後述する回答生成処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図3に示すように、本実施形態に係る回答生成装置20は、入力部400と、解析部200と、出力部500とを備えて構成される。なお、解析部200は、回答学習装置10により学習されたパラメータを用いる。
入力部400は、文章Pと、質問文Qとの入力を受け付ける。
そして、入力部400は、受け付けた文章P及び質問文Qを、機械読解部210に渡す。
出力部500は、機械読解部210の根拠探索部216により得られた回答範囲スコアを回答の根拠とし、判断部220のスコア計算部222により得られた判断スコアkを回答として出力する。
ここで、出力部500は、判断スコアkのYesのスコア、Noのスコアのうち、スコアが大きい判断結果を回答として出力する、閾値を超えたスコアの判断結果だけを出力するといった任意の出力形式を選択することができる。
また、出力部500は、回答範囲スコアについても同様に、任意の出力形式を選択することができる。回答範囲スコアには始端sdと終端seとが含まれるので、出力の計算方法として様々な手法を用いることが考えられる。例えば、非特許文献1のように、始端sdが終端seよりも前になる制約下で、始端sdと終端seとの積が最大になる範囲の単語列を出力する、といった手法を用いることができる。
<本発明の第1の実施の形態に係る回答生成装置の作用>
図4は、本発明の第1の実施の形態に係る回答生成処理ルーチンを示すフローチャートである。なお、第1の実施の形態に係る回答学習処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。
図4は、本発明の第1の実施の形態に係る回答生成処理ルーチンを示すフローチャートである。なお、第1の実施の形態に係る回答学習処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。
入力部400に文章Pと、質問文Qとが入力されると、回答生成装置20において、図2に示す回答生成処理ルーチンが実行される。
ステップS300において、入力部400は、文章Pと、質問文Qとの入力を受け付ける。
ステップS400において、出力部500は、上記ステップS170により得られた回答範囲スコアを所定の方法により回答の根拠とし、上記ステップS190により得られた判断スコアkを所定の方法により回答として生成する。
ステップS430において、出力部500は、上記ステップS400により得られた全ての回答の根拠及び回答を出力する。
以上説明したように、本実施形態に係る回答生成装置によれば、入力された文章及び質問文に基づいて、当該文章における当該質問文に対する回答の根拠となる範囲を推定するための読解モデルを用いて、当該範囲の始端及び終端を推定する処理によって得られる情報に基づいて、質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、当該質問文に対する回答の極性を判断することにより、極性で回答することができる質問に対して、精度よく、極性で回答することができる。
<本発明の第2の実施の形態に係る回答学習装置の概要>
人間が自然言語を理解して回答する場合は、自身のもつ経験、常識、及び世界知識を踏まえて、理解した質問に対して回答を推論することができる。例えば、人間が文章を読んでその文章に対する質問に回答をする場合には、文章からだけでなく、自分のもつ経験等から回答を見つけている。しかし、AIの場合は質問の対象となっている文章に含まれている情報だけから回答を推論する必要がある。
人間が自然言語を理解して回答する場合は、自身のもつ経験、常識、及び世界知識を踏まえて、理解した質問に対して回答を推論することができる。例えば、人間が文章を読んでその文章に対する質問に回答をする場合には、文章からだけでなく、自分のもつ経験等から回答を見つけている。しかし、AIの場合は質問の対象となっている文章に含まれている情報だけから回答を推論する必要がある。
特にYes/Noで答えるべき質問は、質問に答えるために必要な知識が一か所に記載されているとは限らない。例えば、必要な知識が文章内の複数箇所に書いてある場合や世界知識から補わなければならない場合がある。しかし、文章内の複数箇所にある記述や世界知識を組み合わせて考えるためには、テキストの長期の依存関係を理解する必要がある。そのため、Yes/Noの質問応答を精度よく行うことは難しい。
そこで、本発明の第2の実施形態では、「Yes又はNoで回答することができる質問に対してYes又はNoで回答する」タスクを精度よく行うために、必要な知識が文章内の複数箇所に書いてある質問や必要な知識を世界知識から補わなければならない質問に注目する。本実施形態では、第1の実施の形態と同様に、回答の極性がYes又はNoである場合を例に説明する。
文章内の複数箇所にある記述を組み合わせて考える質問応答は、ニューラルネットワークが苦手とする長期の依存関係の理解を要求するため、難しい質問応答である。本実施形態では、回答に必要な文だけを根拠文として抽出することにより、位置が離れた根拠文同士のマッチングを可能にし、長期の依存関係を理解することを実現する。
この根拠文の抽出によって、ユーザーはYes/Noの回答だけでなくその根拠となる文を過不足なく確認することが可能となり、解釈性を向上することもできる。
また、必要な知識を世界知識から補う必要がある質問応答に対しては、必要な知識が書いてあるテキストをWebでの検索等によって得て、質問対象の文章に繋げた新しい文章に対して質問応答を行うことで実現する。通常、単純に文章を繋げるだけでは、元の文章中の回答に必要な部分と新しく繋げたテキストが離れた箇所にあるためマッチングを取ることが難しい。しかし、本実施形態においては根拠文としてそれらを抽出することによって、根拠文が離れた箇所にある場合であってもマッチングが可能となる。
<本発明の第2の実施の形態に係る回答学習装置の構成>
図5を参照して、本発明の第2の実施の形態に係る回答学習装置30の構成について説明する。図5は、本発明の第2の実施の形態に係る回答学習装置30の構成を示すブロック図である。なお、上述の第1の実施の形態に係る回答学習装置10と同様の構成については、同一の符号を付して詳細な説明は省略する。
図5を参照して、本発明の第2の実施の形態に係る回答学習装置30の構成について説明する。図5は、本発明の第2の実施の形態に係る回答学習装置30の構成を示すブロック図である。なお、上述の第1の実施の形態に係る回答学習装置10と同様の構成については、同一の符号を付して詳細な説明は省略する。
回答学習装置30は、CPUと、RAMと、後述する回答学習処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図5に示すように、本実施形態に係る回答学習装置30は、入力部100と、解析部600と、パラメータ学習部700とを備えて構成される。
解析部600は、機械読解部610と、判断部220とを備えて構成される。機械読解部610は、文章P及び質問文Qに基づいて、文章Pにおける回答の根拠となる範囲D:Eを推定するための読解モデルを用いて、当該範囲の始端sd及び終端seを推定する。
具体的には、機械読解部210は、単語符号化部211と、単語データベース(DB)212と、第1文脈符号化部213と、アテンション部214と、第2文脈符号化部215と、根拠抽出部617と、根拠探索部216とを備えて構成される。
根拠抽出部617は、機械読解部610の処理によって得られる情報に基づいて、質問文に対する回答の根拠となる情報である根拠情報を抽出する抽出モデルを用いて、質問文Qに対する回答の根拠情報を抽出する。
具体的には、根拠抽出部617は、まず、第2文脈符号化部215により変換された読解行列M(変換前の読解行列Bでもよい)を入力とし、ニューラルネットワークを用いて文章Pの各文の意味を表すベクトルの系列Hを抽出する。根拠抽出部617は、例えば、ニューラルネットワークとして、Undirectional−RNNを用いることができる。
次に、根拠抽出部617は、根拠文を1つ抽出する操作を1時刻と定義し、状態ztを抽出モデルのRNNによって生成する。すなわち、根拠抽出部617は、時刻t−1に抽出された根拠文に対応するベクトルの系列Hの要素
を抽出モデルのRNNに入力することにより、状態ztを生成する。ただし、st−1は時刻t−1に抽出された根拠文の添字である。また、時刻tまでに抽出された文stの集合をStとする。
を抽出モデルのRNNに入力することにより、状態ztを生成する。ただし、st−1は時刻t−1に抽出された根拠文の添字である。また、時刻tまでに抽出された文stの集合をStとする。
根拠抽出部617は、状態ztと、質問文の各単語に対するベクトルyjからなるベクトルの系列Yとに基づいて、抽出モデルにより、時刻tにおける重要性を考慮した質問文ベクトルであるglimpseベクトルet(下記式(13))を、質問文Qに対するglimpse操作(参考文献5)を行うことで生成する。このように、抽出モデルでは質問文Qに対するglimpse操作を行うことで、根拠文の抽出結果が質問全体に対応する内容を包含することができる。
[参考文献5]O. Vinyals, S. Bengio and M. Kudlur, “Order matters: Sequence to sequence for sets”, ICLR (2016).
[参考文献5]O. Vinyals, S. Bengio and M. Kudlur, “Order matters: Sequence to sequence for sets”, ICLR (2016).
抽出モデルのRNNの初期値はベクトルの系列Hをaffine変換したベクトル系列をmaxpoolingしたベクトルとする。
根拠抽出部617は、状態ztと、glimpseベクトルetと、ベクトルの系列Hとに基づいて、抽出モデルにより、時刻tにおいて下記式(14)で表される確率分布に従って第δ文を選び、文st=δを、時刻tに抽出された根拠文とする。
そして、根拠抽出部617は、抽出した文stの集合Stを根拠情報として、根拠探索部216及びパラメータ学習部700に渡す。
パラメータ学習部700は、学習データに含まれる正解Yと、判断部220により判断された結果とが一致し、学習データに含まれる始端D及び終端Eと、機械読解部610により推定された始端sd及び終端seとが一致し、学習データに含まれる文章Pにおける正解の根拠情報と、根拠抽出部617により抽出された根拠情報とが一致するように、読解モデル、判断モデル及び抽出モデルのパラメータを学習する。
具体的には、パラメータ学習部700は、機械読解部610で用いる読解モデルについての目的関数LCと、判断部220で用いる判断モデルについての目的関数LJと、根拠抽出部617で用いる抽出モデルについての目的関数Lsとの線形和を、最適化問題の目的関数とする(下記式(15))。
ここで、λ1、λ2、λ3はハイパーパラメータであり、1/3等の学習が進むように適当な値を定める。また、サンプルによって持つ教師データが異なる場合も、持たないデータに関する項のλを0とすることで一律に扱うことができる。例えば、根拠探索部216の出力に対応するデータがないサンプルに対しては、λ1=0とする。
目的関数LC及びLJについては、第1の実施の形態と同様である。目的関数Lsは、coverage正則化(参考文献6)を行った目的関数である。例えば、目的関数Lsは下記式(16)のような目的関数を用いることができる。
[参考文献6]A. See, P. J. Liu and C. D. Manning, “Get to the point: ummarization with pointer-generator networks”, ACL, 2017, pp.1073-1083.
[参考文献6]A. See, P. J. Liu and C. D. Manning, “Get to the point: ummarization with pointer-generator networks”, ACL, 2017, pp.1073-1083.
上記式(16)において、
は、正解の根拠情報として与えられた根拠文の集合Stの中で時刻tの抽出確率P(δ;St−1)が最小の文sとし、ctは、coverageベクトルであり、
である。Tは終了時刻である。すなわち、t=Tが学習の終了条件となる。このcoverageにより、抽出結果を質問全体に対応する内容を包含させることが可能となる。ただし、抽出の終了条件を学習するために、抽出終了ベクトル
を学習可能なパラメータとする。文の意味を表すベクトルの系列Hに抽出終了ベクトル
を加え、文章Pの文数mを実際の文数+1とする。Tも真の根拠文の数+1とし、学習時は時刻T−1までに全ての根拠文を出力した後、時刻Tに抽出終了ベクトル
を抽出するように学習を行う。テスト時は、抽出終了ベクトルを出力した時点で抽出を終了する。
は、正解の根拠情報として与えられた根拠文の集合Stの中で時刻tの抽出確率P(δ;St−1)が最小の文sとし、ctは、coverageベクトルであり、
である。Tは終了時刻である。すなわち、t=Tが学習の終了条件となる。このcoverageにより、抽出結果を質問全体に対応する内容を包含させることが可能となる。ただし、抽出の終了条件を学習するために、抽出終了ベクトル
を学習可能なパラメータとする。文の意味を表すベクトルの系列Hに抽出終了ベクトル
を加え、文章Pの文数mを実際の文数+1とする。Tも真の根拠文の数+1とし、学習時は時刻T−1までに全ての根拠文を出力した後、時刻Tに抽出終了ベクトル
を抽出するように学習を行う。テスト時は、抽出終了ベクトルを出力した時点で抽出を終了する。
そして、パラメータ学習部700は、上記式(16)で表される目的関数の勾配を、誤差逆伝播勾配法を用いて計算し、任意の最適化手法を用いて各パラメータを更新する。
<本発明の第2の実施の形態に係る回答学習装置の作用>
図6は、本発明の第2の実施の形態に係る回答学習処理ルーチンを示すフローチャートである。また、以下では本実施形態に係る回答学習装置が、ミニバッチを用いて学習する場合について説明するが、一般的なニューラルネットワークの学習方法を用いてもよい。なお、簡便のため、ミニバッチのサイズを1とする。なお、上述の第1の実施の形態に係る回答学習処理ルーチンと同様の構成については、同一の符号を付して詳細な説明は省略する。
図6は、本発明の第2の実施の形態に係る回答学習処理ルーチンを示すフローチャートである。また、以下では本実施形態に係る回答学習装置が、ミニバッチを用いて学習する場合について説明するが、一般的なニューラルネットワークの学習方法を用いてもよい。なお、簡便のため、ミニバッチのサイズを1とする。なお、上述の第1の実施の形態に係る回答学習処理ルーチンと同様の構成については、同一の符号を付して詳細な説明は省略する。
ステップS555において、根拠抽出部617は、根拠情報抽出処理を実行する。
ステップS600において、パラメータ学習部700は、学習データに含まれる正解Yと、判断部220により判断された結果とが一致し、学習データに含まれる始端D及び終端Eと、機械読解部210により推定された始端sd及び終端seとが一致し、学習データに含まれる文章Pにおける回答の根拠情報と、根拠抽出部617により抽出された根拠情報とが一致するように、読解モデル、判断モデル及び抽出モデルのパラメータを学習する。
図7は、本発明の第2の実施の形態に係る回答学習装置における根拠情報抽出処理ルーチンを示すフローチャートである。根拠抽出部617は、根拠情報抽出処理により、機械読解部610の処理によって得られる情報に基づいて、質問文に対する回答の根拠となる情報である根拠情報を抽出する抽出モデルを用いて、質問文Qに対する回答の根拠情報を抽出する。
ステップS500において、根拠抽出部617は、t=1とする。
ステップS510において、根拠抽出部617は、根拠文を1つ抽出する操作を1時刻と定義し、時刻tにおける状態ztを抽出モデルのRNNによって生成する。
ステップS520において、根拠抽出部617は、時刻tにおける重要性を考慮した質問文ベクトルであるglimpseベクトルetを、質問文Qに対してglimpse操作を行うことにより生成する。
ステップS530において、根拠抽出部617は、時刻tにおいて上記式(14)で表される確率分布に従って第δ文を選び、文st=δとする。
ステップS540において、根拠抽出部617は、終了条件を満たしているか否かを判定する。
終了条件を満たしていない場合(上記ステップS540のNO)、根拠抽出部617は、ステップS550においてtに1を加算し、ステップS510に戻る。一方、終了条件を満たしている場合(上記ステップS540のYES)、根拠抽出部617は、リターンする。
以上説明したように、本実施形態に係る回答学習装置によれば、機械読解部の処理によって得られる情報に基づいて、質問文に対する回答の根拠となる情報である根拠情報を抽出する抽出モデルを用いて、質問文に対する回答の根拠情報を抽出し、学習データに含まれる文章における回答の根拠情報と、根拠抽出部により抽出された根拠情報とが一致するように、抽出モデルのパラメータを学習することにより、極性で回答することができる質問に対して、更に精度よく、極性で回答するためのモデルを学習することができる。
<本発明の第2の実施の形態に係る回答生成装置の構成>
図8を参照して、本発明の第2の実施の形態に係る回答生成装置40の構成について説明する。図8は、本発明の第2の実施の形態に係る回答生成装置40の構成を示すブロック図である。なお、上述の回答学習装置30と同様の構成については、同一の符号を付して詳細な説明は省略する。回答生成装置40は、CPUと、RAMと、後述する回答生成処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図8に示すように、第2の実施形態に係る回答生成装置40は、入力部400と、解析部600と、出力部800とを備えて構成される。
図8を参照して、本発明の第2の実施の形態に係る回答生成装置40の構成について説明する。図8は、本発明の第2の実施の形態に係る回答生成装置40の構成を示すブロック図である。なお、上述の回答学習装置30と同様の構成については、同一の符号を付して詳細な説明は省略する。回答生成装置40は、CPUと、RAMと、後述する回答生成処理ルーチンを実行するためのプログラムを記憶したROMとを備えたコンピュータで構成され、機能的には次に示すように構成されている。図8に示すように、第2の実施形態に係る回答生成装置40は、入力部400と、解析部600と、出力部800とを備えて構成される。
出力部800は、判断部220により判断された回答の極性と、根拠抽出部617により抽出された根拠情報とを回答として出力する。
<本発明の第2の実施の形態に係る回答生成装置の作用>
図9は、本発明の第2の実施の形態に係る回答生成処理ルーチンを示すフローチャートである。なお、第1の実施の形態に係る回答生成処理ルーチン及び第2の実施の形態に係る回答学習処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。
図9は、本発明の第2の実施の形態に係る回答生成処理ルーチンを示すフローチャートである。なお、第1の実施の形態に係る回答生成処理ルーチン及び第2の実施の形態に係る回答学習処理ルーチンと同様の処理については、同一の符号を付して詳細な説明は省略する。
ステップS700において、出力部800は、上記ステップS400により得られた全ての回答の根拠及び回答、及び上記ステップS555により得られた根拠情報を出力する。
<本発明の第2の実施の形態に係る回答生成装置の実施例>
次に、第2の実施の形態に係る回答生成装置の実施例について説明する。本実施例では、回答生成装置の各部の構成として、図10に示した構成を用いる。具体的には、判断部220は、RNNと線形変換とを用いて構成され、Yes/No/抽出型の回答の何れかで答えるかを判断し、Yes/No/抽出型の回答の3値の何れかを出力とする。また、根拠探索部216は、RNNと線形変換との組を2つ用いて構成され、一方の組は回答の終点、他方の組は回答の始点を出力とする。根拠抽出部617は、RNNと抽出モデル617Aとを用いて構成される。第2文脈符号化部215は、RNNとセルフアテンションとを用いて構成され、アテンション部214は、双方向アテンションにより構成される。
次に、第2の実施の形態に係る回答生成装置の実施例について説明する。本実施例では、回答生成装置の各部の構成として、図10に示した構成を用いる。具体的には、判断部220は、RNNと線形変換とを用いて構成され、Yes/No/抽出型の回答の何れかで答えるかを判断し、Yes/No/抽出型の回答の3値の何れかを出力とする。また、根拠探索部216は、RNNと線形変換との組を2つ用いて構成され、一方の組は回答の終点、他方の組は回答の始点を出力とする。根拠抽出部617は、RNNと抽出モデル617Aとを用いて構成される。第2文脈符号化部215は、RNNとセルフアテンションとを用いて構成され、アテンション部214は、双方向アテンションにより構成される。
第1文脈符号化部213は、2つのRNNを用いて構成され、単語符号化部211は、単語埋め込みと文字埋め込みとの組を2つ用いて構成される。
また、抽出モデル617Aの構成として、図11に示す構成を用いている。この構成は、参考文献7に提案されている抽出型文章要約モデルをベースとしている。
[参考文献7]Y.C. Chen and M. Bansal, “Fast abstractive summarization with reinforce-selected sentence rewriting”, ACL, 2018, pp.675-686.
[参考文献7]Y.C. Chen and M. Bansal, “Fast abstractive summarization with reinforce-selected sentence rewriting”, ACL, 2018, pp.675-686.
参考文献7の手法は、要約元文章に注意しながら要約元文章中の文を抽出する手法であるが、本実施例では質問文Qに注意しながら文章P中の文を抽出する。抽出モデル617Aでは、質問文Qに対するglimpse操作を行うことで、抽出結果が質問全体に対応する内容を包含することを意図している。
<本発明の第2の実施の形態に係る回答生成装置の実施例における実験結果>
次に、第2の実施の形態に係る回答生成装置の実施例における実験結果について説明する。
次に、第2の実施の形態に係る回答生成装置の実施例における実験結果について説明する。
<<実験設定>>
実験はGPUに、”NVIDIA Tesla P100(株式会社エルザジャパン製)”を4枚用いて行った。実装にはPytorchを用いた。Bi−RNNの出力の次元をd=300で統一した。dropoutのkeep ratioは0.8とした。バッチサイズを72、学習率を0.001とした。上記以外の設定はベースラインモデルと同じ設定である。抽出モデル617AはRNNにGRUを用いた、ベクトルの初期化を正規分布で、行列の初期化をxavier normal分布で行った。デコード時のbeam sizeを2とした。
実験はGPUに、”NVIDIA Tesla P100(株式会社エルザジャパン製)”を4枚用いて行った。実装にはPytorchを用いた。Bi−RNNの出力の次元をd=300で統一した。dropoutのkeep ratioは0.8とした。バッチサイズを72、学習率を0.001とした。上記以外の設定はベースラインモデルと同じ設定である。抽出モデル617AはRNNにGRUを用いた、ベクトルの初期化を正規分布で、行列の初期化をxavier normal分布で行った。デコード時のbeam sizeを2とした。
また、ベースラインモデルとして、本実施例に係る回答生成装置の構成(図10)のうち、抽出モデル617Aをaffine変換とsigmoid関数により各文の根拠スコアを得るモデルに変更したモデルを用いた。
本実験では、回答タイプT・回答A・根拠文Sの予測精度を評価した。ここで、回答タイプTは、HotpotQAのタスク設定における「Yes・No・抽出」の3ラベルから構成される。回答、根拠文抽出ともに完全一致(EM)と部分一致を評価した。部分一致の指標は適合率と再現率の調和平均(F1)である。回答は、回答タイプTの一致で評価し、抽出の場合は回答Aの一致でも評価する。根拠文抽出の部分一致については抽出された文のidの真の根拠文idへの一致で測った。そのため、単語レベルでの部分一致は考慮されない。回答タイプに関して、「Yes・No」質問に限定したときの回答精度をYNと記した。また、回答と根拠の精度双方を考慮した指標としてjoint EM及びjoint F1(参考文献8)を用いる。
[参考文献8]Z. Yang, P. Qi, S. Zhang, Y. Bengio, W. W. Cohen, R. Salakhutdinov and C. D. Manning, “HotpotQA: A dataset for diverse, explainable multi-hop question answering”, EMNLP, 2018, pp.2369-2380.
[参考文献8]Z. Yang, P. Qi, S. Zhang, Y. Bengio, W. W. Cohen, R. Salakhutdinov and C. D. Manning, “HotpotQA: A dataset for diverse, explainable multi-hop question answering”, EMNLP, 2018, pp.2369-2380.
本実験では、distractor設定とfullwiki設定との場合について行う。distractor設定は、大量のテキストを質問に関連する少量のテキストに絞ることが既存技術によって可能であるという仮定を置いた設定である。また、fullwiki設定は、TF−IDF類似度検索によって少量テキストへの絞り込みを行った設定である。
<<実験結果>>
テストデータにおける実験結果は、distractor設定の結果を表1に、fullwiki設定の結果を表2に示す。
テストデータにおける実験結果は、distractor設定の結果を表1に、fullwiki設定の結果を表2に示す。
distractor設定、fullwiki設定共に、本実施例はベースラインモデルを大きく上回り、state−of−the−artの精度を達成した。特に根拠文の完全一致はdistractor設定で37.5ポイント(+185%)、fullwiki設定で10.3ポイント(+268%)と大きく向上している。そのため、本実施例は根拠文を過不足なく抽出することに秀でた手法であると言える。開発データでのdistractor設定における実験結果を表3に示す。
開発データでのベースラインモデルは我々の追実験によって訓練されたため、精度がテストデータでの数値と大きく異なっている。これはハイパーパラメータの違いに起因する。まず、本実施例はベースラインモデルを根拠文抽出のEMで24.5ポイント上回っている。F1でも6.7ポイントの向上が見られる。さらに、回答でもEMで1.0ポイント、F1で1.4ポイントの上昇がある。特に「Yes・No」の判断精度については、5.6ポイント向上している。べースラインモデルと本実施例とでは、抽出モデル617A以外は全て同じモデルを用いている。それにも関わらず「Yes・No」の判断精度が向上していることは、抽出モデル617Aとのマルチタスク学習が下層のRNNを回答にも資する特徴量を獲得するように訓練できると解釈できる。結果として、Joint指標でも精度が向上している。比較手法として、glimpse操作を用いずにRNNによる文抽出だけを行う手法を実験したが、全ての指標で本実施例が上回ることを確認した。
開発データでのfullwiki設定における実験結果を表4に示す。
本実施例はベースラインモデルを根拠のEMで6.5ポイント上回っているが、F1ではベースラインモデルを下回っている。回答ではEMで0.9ポイント、F1で0.8ポイントの上昇がある。特に「Yes・No」の判断精度については、3.0ポイント向上している。そのため、やはり抽出モデル617Aによって下層のRNNの学習が進んでいると解釈できる。結果として、Joint指標でも精度が向上している。また、本実施例がglimpse操作を用いない手法と比較して全ての指標で上回っていることを確認した。
以上の結果から、少量の関連テキストの中から特に必要な文を検索することについては、distractor設定では部分一致で84.7%の精度を達成したこと、及び必要な文を使って「Yes・No」の判断精度を上げることについては、5.6ポイントの精度の向上が観察できた。
以上説明したように、本実施形態に係る回答生成装置によれば、機械読解部の処理によって得られる情報に基づいて、質問文に対する回答の根拠となる情報である根拠情報を抽出する抽出モデルを用いて、前記質問文に対する回答の根拠情報を抽出し、判断された回答の極性と、抽出された根拠情報とを回答として出力することにより、極性で回答することができる質問に対して、更に精度よく、極性で回答することができる。
なお、本発明は、上述した実施の形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
上述の実施形態では、機械読解部210により文章Pを符号化した結果と、機械読解部210により質問文Qを符号化した結果とに基づいて、ベクトルの系列P3及びQ3を生成したが、機械読解部210により推定された回答の根拠となる範囲の始端sd及び終端seの少なくとも一方、又は文章Pと質問文Qとの関係性を表すアテンション行列Aを更に入力として、質問文Qに対する回答の極性が正か否かを判断する判断モデルを用いて、質問文Qに対する回答の極性を判断してもよい。
この場合、第2文脈符号化部215は、変換した読解行列Mを、根拠探索部216は、推定した回答範囲スコアを、それぞれ入力変換部221に渡す。
例えば、入力変換部221は、ベクトルの系列P3の計算方法として、下記式(17)や、式(18)を用いることができる。
ただし,Linear()は線形変換を示す。
また、例えば、入力変換部221は、ベクトルの系列Q3の計算方法として、下記式(19)を用いることができる。
同様の操作をアテンション行列AT、ベクトルの系列Pに対して行い、得られたベクトル系列を、ベクトルの系列Q3としてもよく、得られたベクトル系列にベクトルの系列Q2を結合したものとしてもよい。
このようなバリエーションによって、入力変換部221で必要な変数が決定する。
また、タスク特有の問題に対処するため、スコア計算部222は、文ペア分類タスクの既存フレームワークに工夫を加えたものを用いることができる。
例えば、上記ESIMのフレームワークを用いた場合に、以下の工夫を用いることができる。
<<工夫1>>
文章Pが文ではなく、文章であるので、文ペア分類タスクに比べて系列の長さLPが大きくなってしまう。この問題に対処するため、max pooling、average poolingをより長い系列向きの手法に置き換える。
文章Pが文ではなく、文章であるので、文ペア分類タスクに比べて系列の長さLPが大きくなってしまう。この問題に対処するため、max pooling、average poolingをより長い系列向きの手法に置き換える。
具体的には、ベクトルの系列Q3を、LSTMに入力したときのLSTMの出力の最終状態を使う手法や、attentive pooling(列方向の重み付き平均を取る操作であり、重みとしてベクトルの系列P3の線形変換や推定した始端sd、終端se等を用いる)に置き換えることができる。
<<工夫2>>
文ペア分類タスクに比べて、上記実施形態の分類対象となるベクトルの系列P3は、文章Pの情報だけでなく、質問文Qの情報も豊富に含んでいる傾向がある。そのため、スコア計算部222においてベクトルの系列Q3を用いず、ベクトルの系列P3のみを用いてベクトルJを求めてもよい。
文ペア分類タスクに比べて、上記実施形態の分類対象となるベクトルの系列P3は、文章Pの情報だけでなく、質問文Qの情報も豊富に含んでいる傾向がある。そのため、スコア計算部222においてベクトルの系列Q3を用いず、ベクトルの系列P3のみを用いてベクトルJを求めてもよい。
この場合、入力変換部221が受け付ける情報は、(1)読解行列Bのみとすることができる。また、ベクトルの系列P3への変換は、上記式(6)を用いる。このとき、Jの定義は、
である。
である。
また、回答学習装置10は、入力された質問文Qが、「Yes又はNoで答えることができる質問」なのか否かを判定する質問判定部を更に備える構成としてもよい。
質問判定部の判定方法については、ルールベースや、機械学習による判定など、従来手法を用いればよい。この場合、質問判定部の判定の結果、「Yes又はNoで答えることができる質問ではない」と判定された時には、判断部220からの出力(Yes/No)を行わない、すなわち、機械読解部210からの出力のみを行うように構成することもできる。
このように、質問判定部を備えることにより、判断部220の出力がYes/Noの2値の場合、YesかNoかで答えることが不適切な場合に、YesかNoかで答えてしまう事を防ぐことができる。また、学習データからYesかNoかで答えることが不適切な質問を除外でき、より適切な学習を行うことができる。
また、判断部220の出力がYes/No/不明の3値である場合、「不明」となった場合の意味合いが、より明確となる。質問判定部を備えていない場合、「不明」の意味は、「Yes又はNoで答えることが不適切な質問である」、又は「(文章Pに回答の根拠となる記載がない等の理由で)分からない」の2つが混在してしまうが、質問判定部による判定を行えば、「不明」の意味は後者に絞ることができる。
また、当該質問判定部は、回答生成装置20に備えることもできる。回答生成装置20は、質問判定部を備えることにより、判断部220の出力がYes/Noの2値の場合、YesかNoかで答えることが不適切な場合に、YesかNoかで答えてしまう事を防ぐことができる。
また、本実施形態は、回答が、Yes/Noの何れであるかを判断する判断モデルを用いる場合を例に説明したが、これに限定されるものではなく、判断モデルが、回答が、Yes/No/抽出型の回答の何れかであるかを判断し、抽出型の回答である場合に、出力部が、抽出型の回答として、根拠抽出部617により出力された根拠文、又は根拠探索部216により出力された回答の根拠の範囲を出力してもよい。
また、上述の実施形態では、回答の極性を、Yes又はNoである場合を例に説明したが、これに限定されるものではなく、回答の極性を、例えば、OK又はNGとしてもよい。
また、本願明細書中において、プログラムが予めインストールされている実施形態として説明したが、当該プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供することも可能である。
10、30 回答学習装置
20、40 回答生成装置
100 入力部
200、600 解析部
210、610 機械読解部
211 単語符号化部
213 第1文脈符号化部
214 アテンション部
215 第2文脈符号化部
216 根拠探索部
220 判断部
221 入力変換部
222 スコア計算部
300、700 パラメータ学習部
400 入力部
500、800 出力部
617 根拠抽出部
20、40 回答生成装置
100 入力部
200、600 解析部
210、610 機械読解部
211 単語符号化部
213 第1文脈符号化部
214 アテンション部
215 第2文脈符号化部
216 根拠探索部
220 判断部
221 入力変換部
222 スコア計算部
300、700 パラメータ学習部
400 入力部
500、800 出力部
617 根拠抽出部
Claims (11)
- 入力された文章及び質問文に基づいて、前記文章における前記質問文に対する回答の根拠となる範囲を推定するための予め学習された読解モデルを用いて、前記範囲の始端及び終端を推定する機械読解部と、
前記機械読解部の処理によって得られる情報に基づいて、前記質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、前記質問文に対する回答の極性を判断する判断部と、
を備えることを特徴とする回答生成装置。 - 前記読解モデル及び前記判断モデルは、ニューラルネットワークであり、
前記機械読解部は、前記文章及び前記質問文を入力として、前記文章を符号化した結果と、前記質問文を符号化した結果とに基づいて、前記範囲を推定するための前記読解モデルを用いて、読解行列を生成し、前記読解行列を用いて前記範囲の始端及び終端を推定し、
前記判断部は、前記機械読解部により生成された前記読解行列に基づいて、前記質問文に対する回答の極性が正か否かを判断する前記判断モデルを用いて、前記質問文に対する回答の極性を判断する
ことを特徴とする請求項1記載の回答生成装置。 - 前記質問文が、極性で答えることができる質問である否かを判定する質問判定部
を更に備え、
前記判断部は、前記質問判定部によって前記質問文が極性で答えることができる質問であると判定された場合に、前記判断モデルを用いて、前記質問文に対する回答の極性を判断する
ことを特徴とする請求項1又は2記載の回答生成装置。 - 前記回答の極性は、Yes若しくはNo、又はOK若しくはNGである
ことを特徴とする請求項1乃至3の何れか1項記載の回答生成装置。 - 出力部を更に備え、
前記機械読解部は、前記処理によって得られる情報に基づいて、質問文に対する回答の根拠となる情報である根拠情報を抽出する抽出モデルを用いて、前記質問文に対する回答の根拠情報を抽出する根拠抽出部を含み、
前記出力部は、前記判断部により判断された前記回答の極性と、前記根拠抽出部により抽出された前記根拠情報とを回答として出力する、請求項1乃至4の何れか1項記載の回答生成装置。 - 前記判断モデルは、前記質問文に対する回答が、正の極性、正でない極性、及び極性ではない回答の何れであるかを判断するためのものであり、
前記判断部は、前記判断モデルを用いて、前記質問文に対する回答が、正の極性、正でない極性、及び極性ではない回答の何れであるかを判断し、
前記出力部は、前記判断部によって前記極性でない回答であると判断された場合に、前記根拠抽出部により抽出された前記根拠情報を回答として出力する
ことを特徴とする請求項5記載の回答生成装置。 - 文章と、質問文と、前記文章における前記質問文に対する回答の極性を示す正解と、前記文章における前記回答の根拠となる範囲の始端及び終端とを含む学習データの入力を受け付ける入力部と、
前記文章及び前記質問文に基づいて、前記範囲を推定するための読解モデルを用いて、前記範囲の始端及び終端を推定する機械読解部と、
前記機械読解部の処理によって得られる情報に基づいて、前記質問文に対する回答の極性が正か否かを判断する判断モデルを用いて、前記質問文に対する回答の極性を判断する判断部と、
前記学習データに含まれる前記正解と、前記判断部により判断された結果とが一致し、前記学習データに含まれる前記始端及び前記終端と、前記機械読解部により推定された前記始端及び前記終端とが一致するように、前記読解モデル及び前記判断モデルのパラメータを学習するパラメータ学習部と、
を備えることを特徴とする回答学習装置。 - 前記機械読解部は、前記処理によって得られる情報に基づいて、質問文に対する回答の根拠となる情報である根拠情報を抽出する抽出モデルを用いて、前記質問文に対する回答の根拠情報を抽出する根拠抽出部を備え、
前記学習データは、前記文章における前記回答の根拠情報を更に含み、
前記パラメータ学習部は、更に、前記学習データに含まれる前記文章における前記回答の根拠情報と、前記根拠抽出部により抽出された前記根拠情報とが一致するように、前記抽出モデルのパラメータを学習することを特徴とする請求項7記載の回答学習装置。 - 機械読解部が、入力された文章及び質問文に基づいて、前記文章における前記質問文に対する回答の根拠となる範囲を推定するための予め学習された読解モデルを用いて、前記範囲の始端及び終端を推定し、
判断部が、前記機械読解部の処理によって得られる情報に基づいて、前記質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、前記質問文に対する回答の極性を判断する
ことを特徴とする回答生成方法。 - 入力部が、文章と、質問文と、前記文章における前記質問文に対する回答の極性を示す正解と、前記文章における前記回答の根拠となる範囲の始端及び終端とを含む学習データの入力を受け付け、
機械読解部が、前記文章及び前記質問文に基づいて、前記範囲を推定するための読解モデルを用いて、前記範囲の始端及び終端を推定し、
判断部が、前記機械読解部の処理によって得られる情報に基づいて、前記質問文に対する回答の極性が正か否かを判断する判断モデルを用いて、前記質問文に対する回答の極性を判断し、
パラメータ学習部が、前記学習データに含まれる前記正解と、前記判断部により判断された結果とが一致し、前記学習データに含まれる前記始端及び前記終端と、前記機械読解部により推定された前記始端及び前記終端とが一致するように、前記読解モデル及び前記判断モデルのパラメータを学習する
ことを特徴とする回答学習方法。 - コンピュータを、請求項1乃至6の何れか1項記載の回答生成装置、又は請求項7若しくは8記載の回答学習装置の各部として機能させるためのプログラム。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2019/023755 WO2019244803A1 (ja) | 2018-06-18 | 2019-06-14 | 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム |
US17/254,187 US20210125516A1 (en) | 2018-06-18 | 2019-06-14 | Answer training device, answer training method, answer generation device, answer generation method, and program |
JP2021501617A JP7120433B2 (ja) | 2019-02-25 | 2019-12-17 | 回答生成装置、回答学習装置、回答生成方法、及び回答生成プログラム |
US17/433,096 US20220043972A1 (en) | 2019-02-25 | 2019-12-17 | Answer generating device, answer learning device, answer generating method, and answer generating program |
PCT/JP2019/049385 WO2020174826A1 (ja) | 2019-02-25 | 2019-12-17 | 回答生成装置、回答学習装置、回答生成方法、及び回答生成プログラム |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018115166 | 2018-06-18 | ||
JP2018115166 | 2018-06-18 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019227240A Division JP7247878B2 (ja) | 2018-06-18 | 2019-12-17 | 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019220142A true JP2019220142A (ja) | 2019-12-26 |
Family
ID=69096739
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019032127A Pending JP2019220142A (ja) | 2018-06-18 | 2019-02-25 | 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム |
JP2019227240A Active JP7247878B2 (ja) | 2018-06-18 | 2019-12-17 | 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019227240A Active JP7247878B2 (ja) | 2018-06-18 | 2019-12-17 | 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20210125516A1 (ja) |
JP (2) | JP2019220142A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111753053A (zh) * | 2020-06-19 | 2020-10-09 | 神思电子技术股份有限公司 | 一种基于预训练模型的阅读理解改进方法 |
JP2021022292A (ja) * | 2019-07-30 | 2021-02-18 | 株式会社三菱総合研究所 | 情報処理装置、プログラム及び情報処理方法 |
CN112464643A (zh) * | 2020-11-26 | 2021-03-09 | 广州视源电子科技股份有限公司 | 一种机器阅读理解方法、装置、设备及存储介质 |
CN112966073A (zh) * | 2021-04-07 | 2021-06-15 | 华南理工大学 | 一种基于语义和浅层特征的短文本匹配方法 |
JPWO2021176714A1 (ja) * | 2020-03-06 | 2021-09-10 | ||
CN113553837A (zh) * | 2020-04-23 | 2021-10-26 | 北京金山数字娱乐科技有限公司 | 阅读理解模型的训练方法和装置、文本分析的方法和装置 |
WO2022050060A1 (ja) * | 2020-09-01 | 2022-03-10 | ソニーグループ株式会社 | 情報処理装置及び情報処理方法 |
US11481445B2 (en) | 2020-03-05 | 2022-10-25 | Fujifilm Business Innovation Corp. | Answer generating device and non-transitory computer readable medium storing program |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7275661B2 (ja) * | 2019-03-01 | 2023-05-18 | 日本電信電話株式会社 | 文生成装置、文生成方法、文生成学習装置、文生成学習方法及びプログラム |
WO2023105596A1 (ja) * | 2021-12-06 | 2023-06-15 | 日本電信電話株式会社 | 言語処理装置、画像処理方法、及びプログラム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6150282B2 (ja) | 2013-06-27 | 2017-06-21 | 国立研究開発法人情報通信研究機構 | ノン・ファクトイド型質問応答システム及びコンピュータプログラム |
JP6388746B2 (ja) | 2016-05-20 | 2018-09-12 | 三菱電機株式会社 | 情報提供制御装置および情報提供制御方法 |
JP6929539B2 (ja) | 2016-10-07 | 2021-09-01 | 国立研究開発法人情報通信研究機構 | ノン・ファクトイド型質問応答システム及び方法並びにそのためのコンピュータプログラム |
US20220043972A1 (en) * | 2019-02-25 | 2022-02-10 | Nippon Telegraph And Telephone Corporation | Answer generating device, answer learning device, answer generating method, and answer generating program |
-
2019
- 2019-02-25 JP JP2019032127A patent/JP2019220142A/ja active Pending
- 2019-06-14 US US17/254,187 patent/US20210125516A1/en active Pending
- 2019-12-17 JP JP2019227240A patent/JP7247878B2/ja active Active
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2021022292A (ja) * | 2019-07-30 | 2021-02-18 | 株式会社三菱総合研究所 | 情報処理装置、プログラム及び情報処理方法 |
US11481445B2 (en) | 2020-03-05 | 2022-10-25 | Fujifilm Business Innovation Corp. | Answer generating device and non-transitory computer readable medium storing program |
JPWO2021176714A1 (ja) * | 2020-03-06 | 2021-09-10 | ||
WO2021176714A1 (ja) * | 2020-03-06 | 2021-09-10 | 日本電信電話株式会社 | 学習装置、情報処理装置、学習方法、情報処理方法及びプログラム |
JP7452623B2 (ja) | 2020-03-06 | 2024-03-19 | 日本電信電話株式会社 | 学習装置、情報処理装置、学習方法、情報処理方法及びプログラム |
CN113553837A (zh) * | 2020-04-23 | 2021-10-26 | 北京金山数字娱乐科技有限公司 | 阅读理解模型的训练方法和装置、文本分析的方法和装置 |
CN111753053A (zh) * | 2020-06-19 | 2020-10-09 | 神思电子技术股份有限公司 | 一种基于预训练模型的阅读理解改进方法 |
CN111753053B (zh) * | 2020-06-19 | 2024-04-09 | 神思电子技术股份有限公司 | 一种基于预训练模型的阅读理解改进方法 |
WO2022050060A1 (ja) * | 2020-09-01 | 2022-03-10 | ソニーグループ株式会社 | 情報処理装置及び情報処理方法 |
CN112464643A (zh) * | 2020-11-26 | 2021-03-09 | 广州视源电子科技股份有限公司 | 一种机器阅读理解方法、装置、设备及存储介质 |
CN112966073A (zh) * | 2021-04-07 | 2021-06-15 | 华南理工大学 | 一种基于语义和浅层特征的短文本匹配方法 |
CN112966073B (zh) * | 2021-04-07 | 2023-01-06 | 华南理工大学 | 一种基于语义和浅层特征的短文本匹配方法 |
Also Published As
Publication number | Publication date |
---|---|
US20210125516A1 (en) | 2021-04-29 |
JP7247878B2 (ja) | 2023-03-29 |
JP2020061173A (ja) | 2020-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7120433B2 (ja) | 回答生成装置、回答学習装置、回答生成方法、及び回答生成プログラム | |
JP7247878B2 (ja) | 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム | |
CN108875807B (zh) | 一种基于多注意力多尺度的图像描述方法 | |
CN108959396B (zh) | 机器阅读模型训练方法及装置、问答方法及装置 | |
CN110781680B (zh) | 基于孪生网络和多头注意力机制的语义相似度匹配方法 | |
CN108875074B (zh) | 基于交叉注意力神经网络的答案选择方法、装置和电子设备 | |
KR20180125905A (ko) | 딥 뉴럴 네트워크(Deep Neural Network)를 이용하여 문장이 속하는 클래스(class)를 분류하는 방법 및 장치 | |
JP7139626B2 (ja) | フレーズ生成関係性推定モデル学習装置、フレーズ生成装置、方法、及びプログラム | |
WO2019244803A1 (ja) | 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム | |
CN113656570A (zh) | 基于深度学习模型的视觉问答方法及装置、介质、设备 | |
CN109685212B (zh) | 一种机器阅读理解模型的分阶段训练方法及装置 | |
CN112861945B (zh) | 一种多模态融合谎言检测方法 | |
KR20180137168A (ko) | 신경망 기반의 텍스트의 카테고리를 분류하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 | |
CN113435211B (zh) | 一种结合外部知识的文本隐式情感分析方法 | |
CN111027292B (zh) | 一种限定采样文本序列生成方法及其*** | |
CN113628059A (zh) | 一种基于多层图注意力网络的关联用户识别方法及装置 | |
CN112926655B (zh) | 一种图像内容理解与视觉问答vqa方法、存储介质和终端 | |
CN111046178A (zh) | 一种文本序列生成方法及其*** | |
WO2020171904A1 (en) | Human body part segmentation with real and synthetic images | |
CN113505583A (zh) | 基于语义决策图神经网络的情感原因子句对提取方法 | |
CN110704668B (zh) | 基于网格的协同注意力vqa方法和装置 | |
CN114332565A (zh) | 一种基于分布估计的条件生成对抗网络文本生成图像方法 | |
CN113761148A (zh) | 对话信息获取方法、装置、设备及存储介质 | |
CN112732879A (zh) | 一种问答任务的下游任务处理方法及模型 | |
CN116860943A (zh) | 对话风格感知与主题引导的多轮对话方法及*** |