JP2021140486A - 回答生成装置及びプログラム - Google Patents

回答生成装置及びプログラム Download PDF

Info

Publication number
JP2021140486A
JP2021140486A JP2020038077A JP2020038077A JP2021140486A JP 2021140486 A JP2021140486 A JP 2021140486A JP 2020038077 A JP2020038077 A JP 2020038077A JP 2020038077 A JP2020038077 A JP 2020038077A JP 2021140486 A JP2021140486 A JP 2021140486A
Authority
JP
Japan
Prior art keywords
answer
answers
token
question
threshold value
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
Application number
JP2020038077A
Other languages
English (en)
Inventor
拓誠 高橋
Hiroaki Takahashi
拓誠 高橋
元樹 谷口
Motoki Taniguchi
元樹 谷口
友紀 谷口
Tomonori Taniguchi
友紀 谷口
智子 大熊
Tomoko Okuma
智子 大熊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fujifilm Business Innovation Corp
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 Fujifilm Business Innovation Corp filed Critical Fujifilm Business Innovation Corp
Priority to JP2020038077A priority Critical patent/JP2021140486A/ja
Priority to US17/001,885 priority patent/US11481445B2/en
Priority to CN202010914428.2A priority patent/CN113360609A/zh
Publication of JP2021140486A publication Critical patent/JP2021140486A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3346Query execution using probabilistic model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/126Character encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/55Rule-based translation
    • G06F40/56Natural language generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Probability & Statistics with Applications (AREA)
  • Human Computer Interaction (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】質問と、その質問に関連するテキスト等の解析の対象となるデータである解析対象データが与えられたときに、その質問に対する複数の回答を解析対象データから抽出し得る技術を提供する。【解決手段】回答生成装置は、関連テキスト22及び質問24を入力する入力部16、プロセッサ10、出力部18、モデル記憶部20を備える。プロセッサ10は、プログラムを実行することで、事前に用意した複数の単一回答モデルを用いて質問24に対する回答を関連テキスト22からそれぞれ独立に抽出し、抽出された回答の各トークンの出現頻度を算出し、出現頻度に基づき、単一あるいは複数の回答を抽出して出力部18に出力する。【選択図】図4

Description

本発明は、回答生成装置及びプログラムに関する。
従来から、質問と関連テキストが与えられたときに、適切な回答を関連テキストから抽出する技術が提案されている。
特許文献1には、極性で回答することができる質問に対して、精度よく、極性で回答することができるようにする装置が記載されている。機械読解部は、入力された文章及び質問文に基づいて、当該文章における当該質問文に対する回答の根拠となる範囲を推定するための予め学習された読解モデルを用いて、当該範囲の始端及び終端を推定する。判断部は、機械読解部の処理によって得られる情報に基づいて、質問文に対する回答の極性が正か否かを判断するための予め学習された判断モデルを用いて、当該質問文に対する回答の極性を判断する。
特許文献2には、精度の高い質問応答を実現する装置が記載されている。装置は、文書及び質問を入力として、所定の第1の語彙と、文書及び質問に含まれる単語により構成される第2の語彙との和集合に含まれる単語を用いて、質問に対する回答文を生成する処理を学習済モデルにより実行する回答生成手段を有する。学習済モデルは、回答文に含まれる単語が第2の語彙に含まれるか否かについて予め学習した学習済ニューラルネットワークを含み、該学習済ニューラルネットワークにより、回答文の生成時に、該回答文に含まれる単語として、第2の語彙に含まれる単語が選択される確率を増減させる。
特開2019−220142号公報 特開2019−191827号公報
本発明は、質問と、その質問に関連するテキスト等の解析の対象となるデータである解析対象データが与えられたときに、その質問に対する複数の回答を解析対象データから抽出し得る技術を提供することを目的とする。
請求項1に記載の発明は、質問及び解析の対象となるデータである解析対象データを入力する入力部と、プロセッサと、出力部と、を備え、前記プロセッサは、プログラムを実行することで、前記質問及び前記解析対象データが入力された場合に、事前に用意した複数の単一回答モデルを用いて前記質問に対する回答を前記解析対象データからそれぞれ独立に抽出し、抽出された前記回答の各トークン毎の出現頻度を算出し、前記出現頻度に基づき、単一あるいは複数の回答を抽出して前記出力部に出力する、回答生成装置である。
請求項2に記載の発明は、前記プロセッサは、第1閾値、及び前記第1閾値よりも小さい第2閾値を用い、前記出現頻度が前記第1閾値以上の場合に、前記出現頻度が前記第1閾値以上となるトークンを単一回答と判定して出力し、前記出現頻度が前記第1閾値未満であって前記第2閾値以上の場合に、前記出現頻度が前記第1閾値未満であって前記第2閾値以上となるトークンを複数回答と判定して出力し、前記出現頻度が前記第2閾値未満の場合に、対象トークンを回答として選択しない、請求項1に記載の回答生成装置である。
請求項3に記載の発明は、前記プロセッサは、連続する複数の前記トークンに対して判定結果が同一である場合に、各トークンを出力結果として出力することに代えて、系列長が最大となるようにトークンを連続的に選択して出力する、請求項2に記載の回答生成装置である。
請求項4に記載の発明は、前記プロセッサは、処理対象トークンに対して単一回答として判定した後、次の処理対象トークンに対して複数回答あるいは回答なしと判定した場合、単一回答と判定したトークンのみを出力する、請求項2に記載の回答生成装置である。
請求項5に記載の発明は、前記プロセッサは、前記複数の回答の回答数以上の前記複数の単一回答モデルを用いる、請求項1−4のいずれかに記載の回答生成装置である。
請求項6に記載の発明は、前記複数の単一回答モデルのそれぞれは、深層学習方法に基づき前記質問及び前記解析対象データを分散表現に符号化し、符号化された前記分散表現に基づき、前記回答の開始点及び終了点を推定するための全結合層により最大確率の回答範囲を前記解析対象データから抽出するモデルである、請求項1−5のいずれかに記載の回答生成装置である。
請求項7に記載の発明は、前記複数の単一回答モデルのそれぞれは、質問に対して単一の回答のみが付与された学習データを用いて学習される、請求項1−6のいずれかに記載の回答生成装置である。
請求項8に記載の発明は、前記解析対象データは、テキストデータであり、前記トークンは、前記テキストデータ中の単語あるいは文字列である、請求項1−7のいずれかに記載の回答生成装置である。
請求項9に記載の発明は、コンピュータに、質問及び解析の対象となるデータである解析対象データを入力するステップと、事前に用意した複数の単一回答モデルを用いて前記質問に対する回答を前記解析対象データからそれぞれ独立に抽出するステップと、抽出された前記回答の各トークン毎の出現頻度を算出するステップと、前記出現頻度に基づき、単一あるいは複数の回答を抽出して出力するステップと、を実行させるプログラムである。
請求項1,9に記載の発明によれば、質問と解析対象データが与えられたときに、その質問に対する複数の回答を解析対象データから抽出できる。
請求項2,3,4に記載の発明によれば、さらに、単一回答、複数回答、回答なしのいずれかを判定して出力できる。
請求項5,6に記載の発明によれば、さらに、回答の精度を上げることができる。
請求項7に記載の発明によれば、さらに、学習データを確保できる。
請求項8に記載の発明によれば、さらに、テキストデータから単語あるいは文字列を回答として抽出できる。
関連テキスト及び質問の説明図(その1)である。 関連テキスト及び質問の説明図(その2)である。 単一回答QAと複数回答QAの回答の平均異なり数を示すグラフ図である。 実施形態の回答生成装置の構成ブロック図である。 実施形態の機能ブロック図である。 実施形態の機械読解モデルの構成図である。 実施形態の処理フローチャートである。
以下、図面に基づき本発明の実施形態について、解析の対象となるデータである解析対象データとしてテキストデータを例にとり説明する。
<基本原理>
まず、本実施形態の基本原理について説明する。
機械読解タスクは、与えられたテキストを読み解き質問に回答することを目的としており、モデルの読解能力をベンチマークする上でも重要なタスクである。例えばSQuAD(Pranav Rajpurkar, Jian Zhang, Konstantin Lopyrev, and Percy Liang. SQuAD: 100,000+ questions for machine comprehension of text. In EMNLP, 2016.)のような抽出型機械読解では、質問および関連テキスト(コンテキスト) が与えられたとき、最も適切な回答をコンテキストの中から抽出する。
図1は、質問(Question)及び関連テキスト(Context)の一例を示す。関連テキスト中の、質問に対する適切な回答として「Russel」を抽出する。
但し、これまでの抽出型機械読解は、質問に対する正解が一つの回答範囲に基づく質問応答(以下、「単一回答QA」という)に限定しており、複数の回答が同時に成立するような質問応答には対応できない。
他方で、複数の範囲における回答を抽出するために、適切な回答を過不足なく抽出するためのモデルがいくつか提案されている。しかし、これらのモデルはいずれも複数回答QAをもつ機械読解のデータを用いて学習することを前提としており、このような複雑なデータを常に用意することは現実的ではない。
単一回答のみ可能とするモデル(以下、「単一回答モデル」という)を適用した場合、モデルにより推定される回答は常に一つに限定される。本願出願人は、いくつかの単一回答モデルを複数回答QAに適用したところ、各モデルの出力する回答が分散することを見出した。
図2は、単一回答QAの例と複数回答QAの例を示す。図2における上段は関連テキストであり、中段は単一回答モデルによる回答であり、下段は複数(具体的には10個)の単一回答モデルによる回答である。単一回答モデルは、回答として「50」を抽出するが、複数の単一回答モデルは、回答として「100 peso note」、「500 peso notes」を抽出し、回答が分散する。
同様に、単一/複数回答QAにおける各モデルの回答の一致度を比較すると、単一回答QAの方が回答の一致度が高い傾向にあることが分かる。
図3は、単一回答QAと複数回答QAの回答の一致度を示す。図3において、DROP(single-span)は単一回答QAを示し、DROP(multi-span)は複数回答QAを示す。また、縦軸は回答の平均異なり数を示し、各モデルの推定した回答が完全一致した場合を異なり数=1としている。各モデルは、
BiDAF:(Minjoon Seo, Aniruddha Kembhavi, Ali Farhadi, and Hannaneh Hajishirzi. Bidirectional attention flow for machine comprehension. arXiv preprint arXiv:1611.01603, 2016.)
QANet:(Adams Wei Yu, David Dohan, Minh-Thang Luong, Rui Zhao, Kai Chen, Mohammad Norouzi, and Quoc V Le. Qanet: Combining local convolution with global
self-attention for reading comprehension. arXiv preprint arXiv:1804.09541, 2018.)
BERTBASE:(Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In NAACL, 2019.)
BERTLARGE:(Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In NAACL, 2019.)
である。
単一回答QAモデルは、事前に学習した10個の単一回答QAモデルである。図3に示されるように、単一回答QAの方が回答の平均異なり数が少なく、回答の一致度が高い。これは、各単一回答QAモデルは、最適と考える回答を一つしか出力しない制約に起因するものである。従って、複数の回答がコンテキストに散在する場合、各モデルの回答はしばしば一致しない。
そこで、本実施形態では、複数の単一回答QAモデルの回答が、複数回答QAにおいて特に一致しない性質を利用する。具体的には、単一回答しかできないモデルを複数組み合わせることで、複数回答可能なモデルを実現する。
具体的なモデルは以下の通りである。
典型的な抽出型機械読解のデータセットであるSQuADでは、質問に対して与えられたコンテキストの中から最も適切な回答を一つ抽出することが目的とされており、既に多くのモデルによって人間の読解能力を上回ることが報告されている。その後、SQuAD2.0(Pranav Rajpurkar, Robin Jia, and Percy Liang. Know what you don't know: Unanswerable questions for SQuAD. In ACL, 2018.)では質問に対する回答がコンテキストに存在しない場合に回答不可と回答するための質問が新しく追加されている。DROP(Dheeru Dua, Yizhong Wang, Pradeep Dasigi, Gabriel Stanovsky, Sameer Singh, and Matt Gardner. DROP: A reading comprehension benchmark requiring discrete reasoning over paragraphs. In NAACL, 2019.)では、従来取り組まれていなかった複数の回答範囲の抽出(複数回答QA) を考慮するための質問が追加されている。SQuAD2.0は単一回答/回答なしの2パターンであるが、DROPは一つ以上の任意の数の回答を求められることから、DROPのほうがより多様な回答パターンを要求されるデータセットであるといえる。
Hu等(Minghao Hu, Yuxing Peng, Zhen Huang, and Dongsheng Li. A multi-type multi-span network for reading comprehension that requires discrete reasoning. In EMNLP-IJCNLP, 2019.)による複数回答モデルは、質問に対する回答がコンテキスト中に何個あるか予測し、予測された回答数に基づき回答範囲を繰り返し抽出するモデルにより、DROPの複数回答QAを回答可能であることを示している。Efrat等(Avia Efrat, Elad Segal, and Mor Shoham. Tag-based multi-span extraction in reading comprehension. arXiv preprint arXiv:1909.13375, 2019.)は、回答抽出を系列ラベリング問題と見立て、各トークンにBIOタグを付与するMulti-span Head を提案している。ここで、「トークン」は、単語や文字列等の文の最小構成要素である。これらのモデルは複数回答が可能であるものの、学習のために複数回答QAを含む機械読解のデータをあらかじめ十分に用意しておく必要がある。
そこで、本実施形態は、単一回答のみ対象とした抽出型機械読解のデータセットだけを必要とし、単一回答しかできない単純なモデルを複数組み合わせることで、複数回答QA を回答可能とする。本実施形態は、単一回答しかできない複数のモデルの回答が、複数回答QAにおいて特に一致しない性質を利用するものといえる。
以下、本実施形態についてより詳細に説明する。
<構成>
図4は、本実施形態における回答生成装置の構成ブロック図を示す。
回答生成装置は、コンピュータで構成され、プロセッサ10、ROM12、RAM14、入力部16、出力部18、及びモデル記憶部20を備える。
プロセッサ10は、ROM12あるいはその他のプログラムメモリに記憶された処理プログラムを読み出し、RAM14を作業メモリとして用いて実行することで、機械読解タスクを実現する。プロセッサ10は、入力された関連テキスト及び質問に基づき、モデル記憶部20に記憶された学習済モデルを用いて関連テキストから質問に対する適切な単一あるいは複数回答を抽出する。
入力部16は、キーボードや通信インターフェイス等で構成され、関連テキスト22及び質問24を入力する。関連テキスト22や質問24は、基本的にはテキストデータであるが、画像データであってもよい。画像データの場合、OCR(Optical Character Recognition)技術を用いてテキストデータに変換する。
出力部18は、ディスプレイや通信インターフェイス等で構成され、プロセッサ10での機械読解タスクの結果、すなわち関連テキストから抽出された回答を出力する。
モデル記憶部20は、N個の異なる単一回答モデルを記憶する。N個の異なる単一回答モデルは、単一回答QAのデータセットのみを用いて事前に学習した学習済モデルである。単一回答モデルは、例えば公知のBERT(Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In NAACL, 2019.)を用いることができるが、これに限定されない。単一回答モデルについてはさらに後述する。
なお、プロセッサ10は、広義的なプロセッサを指し、汎用的なプロセッサ(例えば CPU:Central Processing Unit等)や、専用のプロセッサ(例えば GPU:Graphics Processing Unit、ASIC:Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array 、プログラマブル論理デバイス等)を含むものである。また、プロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。
図5は、プロセッサ10で実行される機械読解処理を機能的に示す。
プロセッサ10は、関連テキスト22及び質問24を入力する。関連テキスト22は任意であるが、例えば、
「In the first quarter, Cincinnati trailed early as Patriots kicker Stephen Gostkowski got a 31-yard field goal, while QB Tom Brady completed a 1-yard TD pass to LB Mike Vrabel.(…) QB Carson Palmer completing a 1-yard TD pass to LB Mike Vrabel.(…)」
であるとする。質問24も任意であるが、例えば、
「Which two players both completed 1-yard TD pass ?」
であるとする。ここで、質問が、正解が一つの回答に限定されるのではなく、正解が複数の回答を含むことに留意されたい(上記の質問では、2つの正解を含む)。
機械読解モデル26は、N個の異なる単一回答モデル(M={m、・・・、m})から構成され、これらの単一回答モデルは予め単一回答QAのみを用いて学習しておく。単一回答モデルとして、例えば公知のBERTを用いた場合、質問Q及び関連テキスト(コンテキスト)を入力し、回答の開始点と終了点を表す確率分布を出力すべく学習する。N個の異なる単一回答モデルからは、N個の独立な回答候補が得られる。それぞれの回答候補は、開始点と終了点を表す確率分布である。図5では、機械読解モデル26から、
「Brady」
「Tom」
「Carson Palmer」
「Tom Brady completed」
・・・
「Palmer」
等が開始点と終了点におけるトークン、すなわち単語や文字列が出力されたことを示す。
N個の異なる単一回答モデルからのN個の独立な回答候補は、RC−リライタ28に供給される。
RC−リライタ28は、N個の独立な回答候補のうち、最終的にどの回答を採用すべきかを選択する単一/複数回答選択部30を備える。単一/複数回答選択部30は、関連テキスト(コンテキスト)中の特定のトークン(文字列や単語列)に回答範囲が集中していれば対象トークンが単一回答であり、他方で複数のトークンに回答範囲が分散していれば複数回答になると決定して回答選択を行う。図5では、複数のトークンに回答範囲が分散していると決定され、最終回答として複数の回答
「Tom Brady」
「Carson Palmer」
が出力されたことを示す。特定トークンに回答範囲が集中しているか、あるいは複数トークンに回答範囲が分散しているかは、回答の一致度を算出し、当該回答の一致値を予め設定された閾値と大小比較することで決定され得る。
図6は、機械読解モデル26を模式的に示す。機械読解モデル26は、N個の異なる単一回答モデルM={m1,2,・・・、m}から構成され、それぞれのモデルは単一回答QAデータセットのみを用いて学習する。BERTに基づく単一回答モデルでは、質問Q およびコンテキストCが与えられたとき、
x = [CLS]Q[SEP]C[SEP]
をBERTへの入力とする。ここで、[CLS] はペア文全体の表現を表すトークン、[SEP] は入力ペアの分割を明示するためのトークンを表す。従って、x をBERTへ入力することで、長さLのトークン系列に対するd次元の分散表現H
H・Rd×L
が得られる。
回答範囲の抽出のため、2種類の全結合層を用いて回答の開始点と終了点を予測するための確率分布を以下の式に基づき計算する。
Figure 2021140486
Figure 2021140486
ここで、Ws,We は重み行列、bs,be はバイアス項である。
最終的に、単一回答モデルmは、pstart とpend が最大となるトークンを回答の開始点および終了点として回答amを抽出する。
このように回答の抽出は確率分布の最大値に基づくため、単一回答モデルmはコンテキストCに潜在する回答の個数にかかわらず、常に回答を一つだけ抽出する。機械読解モデル26のN個の異なる単一回答モデルは、以上のようにして独立したN個の回答候補をRC−リライタ28に出力する。
RC−リライタ28の単一/複数回答選択部30は、コンテキストC中の特定のトークンに回答範囲が集中していれば対象トークンが単一回答であり、複数のトークンに回答範囲が分散していれば複数回答になると決定して回答を選択する。
具体的には、最初に各回答の一致度を算出するために、コンテキストCに含まれているすべてのトークンT={t、t、・・・}に対して、各トークンが回答候補aに出現した頻度を計算する。
トークンt1が回答候補aに出現した頻度fiは、以下の式で算出される。
Figure 2021140486
Figure 2021140486
この計算をコンテキストC中のすべてのトークンに対して適用することで、トークン単位で回答候補aに出現した頻度を表す系列F={f、f、・・・}を得る。
続いて、各トークンの回答候補における出現頻度Fを参照しながら、予め設定した2つの閾値である閾値u及び閾値lに基づき最終的な回答aを得る。ここで、u>lであり、u≧0.5×Nである。
より具体的には、下記の操作に基づき、コンテキストC中のすべてのトークンを選別する。
操作1:f≧uを満たす場合、tを単一回答のトークンと決定して最終回答に追加する(単一回答QA)
操作2: u>f≧lを満たす場合、tを複数回答のトークンと決定して回答に追加する(複数回答QA)
操作3:l>fを満たす場合、tを回答のトークンでないと決定する
以上の操作1〜操作3により、最終回答として単一回答または複数回答が得られる。
例えば、
u=0.9×N
l=0.2×N
とすると、出現頻度f≧0.9×N、つまり一致度が90%以上である場合、単一回答QAとなる。また、出現頻度fが0.9>f≧0.2N、つまり一致度が90%未満20%以上である場合、複数回答QAとなる。また、出現頻度f>0.2×N、つまり一致度が20%未満であれば、回答なしと決定される。
なお、操作1または操作2において、連続する複数のトークンTに対して同じ操作が繰り返される場合、各トークンを個別に最終回答に追加するのではなく、系列の長さが最大となるトークンを最終回答に追加する。
また、tに対して操作1を実行した後、tj+1に対する処理が操作1以外であった場合、操作1で得られたトークン系列を単一回答として最終回答に追加し、回答の選択を終了する。
RC−リライタ28の単一/複数回答選択部30では、機械読解モデル26が抽出した回答候補をトークン単位の頻度に基づき再構成するため、図5に示すように、
「Tom」
「Brady」
という別々に抽出されたトークンから
「Tom Brady」
といった回答を構成可能である。
<処理フローチャート>
図7は、本実施形態の処理フローチャートを示す。S101〜S103の処理がモデルの学習処理であり、S104〜S107の処理が学習済モデルを用いた回答作成処理である。
まず、複数N個の単一回答モデルを用意する(S101)。単一回答モデルの数N及び種類は任意であるが、例えばBERTに基づく単一回答モデルを20個用意する。なお、単一回答モデルは、同一種類あるいは異なる種類のいずれでもよい。
次に、用意した複数の単一回答モデルのそれぞれについて、単一回答QAデータセットのみを用いて学習する(S102)。すなわち、質問及び関連テキスト(コンテキスト)を入力し、回答の開始点と終了点を表す確率分布を出力するように学習する。学習済モデルは、記憶部に記憶される(S103)。学習処理が終了した後、次に、回答作成処理に移行する。
まず、関連テキスト及び質問を入力する(S104)。
次に、記憶部に記憶された学習済モデル、すなわち機械読解モデル26を用いて回答を出力する(S105)。機械読解モデル26のN個の単一回答モデルは、独立したN個の回答候補を出力する。
次に、機械読解モデル26から出力されたN個の回答から、RC−リライタ28により単一/複数回答を選択する(S106)。すなわち、2つの閾値u、lを用いた下記の判定操作に基づき、コンテキスト中のすべてのトークンtを選別する。
操作1:f≧uを満たす場合、tを単一回答のトークンと決定して最終回答に追加する(単一回答QA)
操作2: u>f≧lを満たす場合、tを複数回答のトークンと決定して回答に追加する(複数回答QA)
操作3:l>fを満たす場合、tを回答のトークンでないと決定する
以上のようにして単一/複数回答、あるいは回答なしを選択すると、これらの選択結果を最終回答として出力する(S107)。
データセットとして、DROP(Dheeru Dua, Yizhong Wang, Pradeep Dasigi, Gabriel Stanovsky, Sameer Singh, and Matt Gardner. DROP: A reading comprehension benchmark requiring discrete reasoning over paragraphs. In NAACL, 2019.)に含まれる抽出型機械読解のうち、回答が一つのものを単一回答QA(single-span)、回答が二つ以上のものを複数回答QA(multi-span) として使用した。なお、DROPの複数回答QAは学習データとして使用せず、評価時のみ使用した。従って、学習時にはDROP(single-span) のみ使用した。
表1に、実施例に使用した単一/複数回答QAの統計量を示す。
Figure 2021140486
単一回答の抽出型機械読解モデルとして、BiDAF、QANet、及びBERTを使用した。BERTは、事前学習済みモデルのBERTBASE及びBERTLARGEを用いた。
機械読解モデル26として使用するために、異なるシードを設定した20個のモデルを事前に学習した。学習時には、Adamによる最適化を行った。
表2に、各モデルで使用したパラメータを示す。
Figure 2021140486
また、RC−リライタ28における、回答選択する際の各トークンの頻度に対する2つの閾値を
u=0.9N
l=0.2N
に設定した。なお、Nは機械読解モデル26で用いるモデルの数に対応し、実施例では
N=20
である。
<比較例>
他方、比較例として、機械読解モデル26として用意したモデルと同様の条件で学習した単一回答モデルをベースラインとして用意した。さらに、単一回答モデルにおける性能の上限値としてOraclesingle を用意した。Oraclesingle では、各質問に付与された複数の真の回答のうち、F1の値が最も高くなる回答を一つ抽出する。
Dua等に倣い、DROPの評価用に変更したEM(Exact Match) およびF1(macro-averaged) を使用した。EMでは、正解に含まれるすべての回答とモデルの予測した回答が完全に一致することで評価値が1となる。また、F1は正解と予測回答でアライメントを取り、すべての組み合わせに対してF1を計算したのち規格化を行うため、複数の回答を過不足なく得ることで評価値が最大化される。
表3に、DROPの複数回答QA(multi-span) の実施結果を示す。
Figure 2021140486
表3に示すように、ベースラインの単一回答モデルとRC−リライタ28(RC-rewriter)を用いた手法を比較すると、すべてのモデルでF1が約10ポイント向上することを確認できた。
さらに、単一回答モデルは回答を一つしか抽出しないため、Oraclesingleを含むすべてのモデルでEM=0となる。他方で、実施例の手法は最大5.61%の複数回答QAでコンテキスト中のすべての回答を正しく抽出できることが確認された。
以上説明したように、本実施形態では、特定の単一回答モデルに依存することなく、複数回答QAにおける性能を大幅に向上させることが可能である。
<変形例1>
本実施形態における機械読解モデル26として用いる単一回答モデルの数および種類は任意に設定し得る。
本願出願人は、単一回答モデルの数を最小(N=1)にした条件と比較して、モデルの数を増やすことで性能が向上することを確認している。同時に、モデルの数が増えすぎると性能が低下する傾向にあることも確認している。従って、ある程度の数の単一回答モデルを用意することは、複数回答QAを解くために必要であるものの、モデル数を際限なく増やすことによる性能向上は見込めず、適切な数を設定することが望ましい。一般的には、所望の回答数以上の数であり、所望の回答数に応じて設定される上限数以下とし得る。
また、本実施形態において、単一回答モデルは同種類ではなく、互いに異なる種類の単一回答モデルを組み合わせることが望ましい。
表4に、異なる単一回答モデルを組み合わせた場合とそうでない場合の比較結果を示す。
Figure 2021140486
表4において、比較するモデル間で単一回答モデルの数を統一するため、組み合わせモデルの各モデルの数は5個とし、合計20個の単一回答モデルを用いた。multi-span において、組み合わせモデルを同一種類の単一回答モデルと比較した場合、EMで0.54ポイント、F1で2.9ポイント性能向上することを確認した。
以上より、機械読解モデル26として用いる単一回答モデルは、最も性能の高い単一回答モデルのみ使用するのではなく、多様な種類の単一回答モデルを組み合わせることが、複数回答QAの正解率を向上させる上で望ましいといえる。
<変形例2>
本実施形態では、解析対象データとして関連テキスト等のテキストデータとしたが、他のデータ形式、例えば画像データにも同様に適用し得る。解析対象データが画像データの場合、トークンとしてピクセルを用いることができる。
10 プロセッサ、12 ROM、14 RAM、16 入力部、18 出力部、20 モデル記憶部、22 関連テキスト(コンテキスト)、24 質問。

Claims (9)

  1. 質問及び解析の対象となるデータである解析対象データを入力する入力部と、
    プロセッサと、
    出力部と、
    を備え、前記プロセッサは、プログラムを実行することで、
    前記質問及び前記解析対象データが入力された場合に、事前に用意した複数の単一回答モデルを用いて前記質問に対する回答を前記解析対象データからそれぞれ独立に抽出し、
    抽出された前記回答の各トークン毎の出現頻度を算出し、
    前記出現頻度に基づき、単一あるいは複数の回答を抽出して前記出力部に出力する、
    回答生成装置。
  2. 前記プロセッサは、
    第1閾値、及び前記第1閾値よりも小さい第2閾値を用い、前記出現頻度が前記第1閾値以上の場合に、前記出現頻度が前記第1閾値以上となるトークンを単一回答と判定して出力し、前記出現頻度が前記第1閾値未満であって前記第2閾値以上の場合に、前記出現頻度が前記第1閾値未満であって前記第2閾値以上となるトークンを複数回答と判定して出力し、前記出現頻度が前記第2閾値未満の場合に、対象トークンを回答として選択しない、
    請求項1に記載の回答生成装置。
  3. 前記プロセッサは、
    連続する複数の前記トークンに対して判定結果が同一である場合に、各トークンを出力結果として出力することに代えて、系列長が最大となるようにトークンを連続的に選択して出力する、
    請求項2に記載の回答生成装置。
  4. 前記プロセッサは、
    処理対象トークンに対して単一回答として判定した後、次の処理対象トークンに対して複数回答あるいは回答なしと判定した場合、単一回答と判定したトークンのみを出力する、
    請求項2に記載の回答生成装置。
  5. 前記プロセッサは、
    前記複数の回答の回答数以上の前記複数の単一回答モデルを用いる、
    請求項1〜4のいずれかに記載の回答生成装置。
  6. 前記複数の単一回答モデルのそれぞれは、深層学習方法に基づき前記質問及び前記解析対象データを分散表現に符号化し、符号化された前記分散表現に基づき、前記回答の開始点及び終了点を推定するための全結合層により最大確率の回答範囲を前記解析対象データから抽出するモデルである、
    請求項1〜5のいずれかに記載の回答生成装置。
  7. 前記複数の単一回答モデルのそれぞれは、質問に対して単一の回答のみが付与された学習データを用いて学習される、
    請求項1〜6のいずれかに記載の回答生成装置。
  8. 前記解析対象データは、テキストデータであり、
    前記トークンは、前記テキストデータ中の単語あるいは文字列である、
    請求項1〜7のいずれかに記載の回答生成装置。
  9. コンピュータに、
    質問及び解析の対象となるデータである解析対象データを入力するステップと、
    事前に用意した複数の単一回答モデルを用いて前記質問に対する回答を前記解析対象データからそれぞれ独立に抽出するステップと、
    抽出された前記回答の各トークン毎の出現頻度を算出するステップと、
    前記出現頻度に基づき、単一あるいは複数の回答を抽出して出力するステップと、
    を実行させるプログラム。
JP2020038077A 2020-03-05 2020-03-05 回答生成装置及びプログラム Pending JP2021140486A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020038077A JP2021140486A (ja) 2020-03-05 2020-03-05 回答生成装置及びプログラム
US17/001,885 US11481445B2 (en) 2020-03-05 2020-08-25 Answer generating device and non-transitory computer readable medium storing program
CN202010914428.2A CN113360609A (zh) 2020-03-05 2020-09-03 回答生成装置、回答生成方法及计算机可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020038077A JP2021140486A (ja) 2020-03-05 2020-03-05 回答生成装置及びプログラム

Publications (1)

Publication Number Publication Date
JP2021140486A true JP2021140486A (ja) 2021-09-16

Family

ID=77524491

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020038077A Pending JP2021140486A (ja) 2020-03-05 2020-03-05 回答生成装置及びプログラム

Country Status (3)

Country Link
US (1) US11481445B2 (ja)
JP (1) JP2021140486A (ja)
CN (1) CN113360609A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023032620A1 (ja) 2021-08-30 2023-03-09 京セラ株式会社 電子機器、電子機器の制御方法、及びプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6772213B2 (ja) 2018-04-23 2020-10-21 日本電信電話株式会社 質問応答装置、質問応答方法及びプログラム
JP2019220142A (ja) 2018-06-18 2019-12-26 日本電信電話株式会社 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム
WO2019244803A1 (ja) 2018-06-18 2019-12-26 日本電信電話株式会社 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023032620A1 (ja) 2021-08-30 2023-03-09 京セラ株式会社 電子機器、電子機器の制御方法、及びプログラム

Also Published As

Publication number Publication date
US20210279288A1 (en) 2021-09-09
CN113360609A (zh) 2021-09-07
US11481445B2 (en) 2022-10-25

Similar Documents

Publication Publication Date Title
CN107944915B (zh) 一种游戏用户行为分析方法及计算机可读存储介质
Baskeles et al. Software effort estimation using machine learning methods
CN110032630A (zh) 话术推荐设备、方法及模型训练设备
JP2019192246A (ja) 自然言語質問回答システム用のトレーニングデータを提供する方法および装置
Hong et al. Fast analysis of optimal improved-oil-recovery switch time using a two-factor production model and least-squares Monte Carlo algorithm
An et al. Colo: A contrastive learning based re-ranking framework for one-stage summarization
Zhang Modeling error distributions of growth curve models through Bayesian methods
JP2021140486A (ja) 回答生成装置及びプログラム
Juselius On the role of theory and evidence in macroeconomics
Liu et al. Evaluating text coherence at sentence and paragraph levels
CN105159746B (zh) 面向容错组合web服务的可靠性仿真工具
US6889219B2 (en) Method of tuning a decision network and a decision tree model
JP4643586B2 (ja) 最適設計管理装置、最適設計計算システム、最適設計管理方法、最適設計管理プログラム
JP6839001B2 (ja) モデル学習装置、情報判定装置およびそれらのプログラム
Girma et al. Government grants, plant survival and employment growth: A micro-econometric analysis
Chandramohan et al. Behavior specific user simulation in spoken dialogue systems
Li et al. Feature selection for bagging of support vector machines
Etzo et al. The impact of migration on the cross‐border M&A: Some evidence for Japan
Laaksonen Multiple imputation for a continuous variable
Heuss et al. RankingSHAP--Listwise Feature Attribution Explanations for Ranking Models
KR101697992B1 (ko) 다중 개발자 네트워크 기반의 버그 정정 개발자 추천 시스템 및 방법
Banerjee et al. Convergence and Inclusiveness Aspects of Various Socio-economic Indicators in Different Income Groups Across the World
CN117216081B (zh) 题库自动更新方法、装置、电子设备和存储介质
CN107678734A (zh) 基于遗传算法的cpu基准测试程序集构造方法
Ardagna et al. Zero-knowledge evaluation of service performance based on simulation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230220

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240611