JP2020135289A - 質問応答装置、学習装置、質問応答方法及びプログラム - Google Patents

質問応答装置、学習装置、質問応答方法及びプログラム Download PDF

Info

Publication number
JP2020135289A
JP2020135289A JP2019026546A JP2019026546A JP2020135289A JP 2020135289 A JP2020135289 A JP 2020135289A JP 2019026546 A JP2019026546 A JP 2019026546A JP 2019026546 A JP2019026546 A JP 2019026546A JP 2020135289 A JP2020135289 A JP 2020135289A
Authority
JP
Japan
Prior art keywords
answer
sentence
question
word
style
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.)
Granted
Application number
JP2019026546A
Other languages
English (en)
Other versions
JP7127570B2 (ja
Inventor
京介 西田
Kyosuke Nishida
京介 西田
いつみ 斉藤
Itsumi Saito
いつみ 斉藤
淳史 大塚
Atsushi Otsuka
淳史 大塚
光甫 西田
Mitsuho Nishida
光甫 西田
久子 浅野
Hisako Asano
久子 浅野
準二 富田
Junji Tomita
準二 富田
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2019026546A priority Critical patent/JP7127570B2/ja
Priority to US17/431,383 priority patent/US20220138601A1/en
Priority to PCT/JP2020/005086 priority patent/WO2020170881A1/ja
Publication of JP2020135289A publication Critical patent/JP2020135289A/ja
Application granted granted Critical
Publication of JP7127570B2 publication Critical patent/JP7127570B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models
    • 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
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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/047Probabilistic or stochastic networks
    • 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/048Activation functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Databases & Information Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

【課題】回答スタイルに応じた回答文を生成すること。【解決手段】質問応答装置は、1つ以上の文書で構成される文書集合と、質問文と、該質問文に対する回答文のスタイルとを入力として、前記文書集合に基づいて前記質問文に対する回答文を生成する処理を学習済モデルにより実行する回答生成手段を有し、前記学習済モデルは、前記回答文を生成する際に、前記スタイルに応じて、前記回答文に含まれる単語の生成確率を決定する、ことを特徴とする。【選択図】図1

Description

本発明は、質問応答装置、学習装置、質問応答方法及びプログラムに関する。
与えられた文書の集合に基づいて、質問に対する回答文を生成する「読解」を人工知能により正確に行うことができれば、質問応答、知的エージェント対話等の幅広いサービスに応用することができる。このような文書の集合は、質問をクエリとした検索エンジンの結果等から得られる。
ここで、読解による回答文の生成は、質問及び文書集合の内容の要約であるということもできる。文書の要約を行うための従来技術としては、例えば非特許文献1等に開示された技術がある。
Abigail See, Peter J. Liu, Christopher D. Manning: Get To The Point: Summarization with Pointer-Generator Networks. ACL (1) 2017: 1073-1083
ところで、ユーザの要求として、回答のスタイルを指定したい場合がある。例えば、「2020年のオリンピックが開催される都市は?」という質問に対する回答文として、「東京」といったように単語で回答するスタイルが要求されたり、「2020年のオリンピックは東京で開催されます。」といったように自然文で回答するスタイルが要求されたりする場合がある。
しかしながら、従来技術では、回答のスタイルに応じた回答文を生成することができなかった。
本発明は、上記の点に鑑みてなされたもので、回答スタイルに応じた回答文を生成することを目的とする。
上記目的を達成するため、本発明の一実施形態は、1つ以上の文書で構成される文書集合と、質問文と、該質問文に対する回答文のスタイルとを入力として、前記文書集合に基づいて前記質問文に対する回答文を生成する処理を学習済モデルにより実行する回答生成手段を有し、前記学習済モデルは、前記回答文を生成する際に、前記スタイルに応じて、前記回答文に含まれる単語の生成確率を決定する、ことを特徴とする。
回答スタイルに応じた回答文を生成することができる。
本発明の第一の実施形態における質問応答装置の機能構成(学習時)の一例を示す図である。 本発明の第一の実施形態における質問応答装置の機能構成(質問応答時)の一例を示す図である。 単語ベクトル記憶部に格納されているデータの一例を示す図である。 本発明の第一の実施形態における質問応答装置のハードウェア構成の一例を示す図である。 本発明の第一の実施形態における学習処理の一例を示すフローチャートである。 本発明の第一の実施形態におけるパラメータ更新処理の一例を示すフローチャート(1/2)である。 本発明の第一の実施形態におけるパラメータ更新処理の一例を示すフローチャート(2/2)である。 本発明の第一の実施形態における質問応答処理の一例を示すフローチャート(1/2)である。 本発明の第一の実施形態における質問応答処理の一例を示すフローチャート(2/2)である。 本発明の第二の実施形態における質問応答装置の機能構成(学習時)の一例を示す図である。 本発明の第二の実施形態における質問応答装置の機能構成(質問応答時)の一例を示す図である。 本発明の第二の実施形態における学習処理の一例を示すフローチャートである。 本発明の第二の実施形態におけるパラメータ更新処理の一例を示すフローチャート(1/2)である。 本発明の第二の実施形態におけるパラメータ更新処理の一例を示すフローチャート(2/2)である。 本発明の第二の実施形態における質問応答処理の一例を示すフローチャート(1/2)である。 本発明の第二の実施形態における質問応答処理の一例を示すフローチャート(2/2)である。
以下、本発明の各実施形態について、図面を参照しながら詳細に説明する。なお、以下で説明する各実施形態は一例に過ぎず、本発明を適用可能な形態は、以下の各実施形態に限定されない。例えば、本発明の各実施形態に係る技術は、専門文書集合に関する質問応答等に利用可能であるが、利用対象はこれに限られず、様々な対象に利用可能である。
[第一の実施形態]
まず、本発明の第一の実施形態では、任意の文書集合と、この文書集合に対する任意の質問文(以降、単に「質問」とも表す。)と、例えばユーザ等によって指定された回答スタイルとが与えられた場合に、ニューラルネットワークによる文生成技術を用いて、当該回答スタイルに応じた回答文を生成する質問応答装置10について説明する。ここで、回答スタイルとは、回答文の表現形式のことであり、例えば、単語のみで回答文を表現することを示す「単語」、フレーズ(句)で回答文を表現することを示す「フレーズ」、自然文で回答文を表現することを示す「自然文」が挙げられる。これら以外にも、回答スタイルとして、例えば、回答文に用いられる言語の種類(日本語、英語等)、回答文を表現する感情(ポジティブ、ネガティブ)や時制、口調、回答文の長さ(文字数)等も挙げられる。
ニューラルネットワークによる文生成技術では、ニューラルネットワークを学習する段階(学習時)と、学習済みのニューラルネットワークによって質問に対する回答文を生成する段階(質問応答時)とが存在する。以降では、このニューラルネットワークを「回答文生成モデル」とも表す。なお、回答文生成モデルは、1つ以上のニューラルネットワークを用いて実現される。ただし、回答文生成モデルには、ニューラルネットワークに加えて又はニューラルネットワークに代えて、任意の機械学習モデルが用いられてもよい。
<質問応答装置10の機能構成>
≪学習時≫
本発明の第一の実施形態の学習時における質問応答装置10の機能構成について、図1を参照しながら説明する。図1は、本発明の第一の実施形態における質問応答装置10の機能構成(学習時)の一例を示す図である。
図1に示すように、学習時における質問応答装置10は、記憶部として、単語ベクトル記憶部101を有する。また、学習時における質問応答装置10は、機能部として、入力部102と、単語系列ベクトル化部103と、単語系列マッチング部104と、スタイル依存回答文生成部105と、パラメータ学習部106とを有する。
単語ベクトル記憶部101は、単語と、この単語をベクトルで表現した単語ベクトルとの組を示すデータを格納している。単語ベクトル記憶部101に格納されているデータの具体例については後述する。
入力部102は、複数の訓練データで構成される訓練データセットを入力する。訓練データとは、ニューラルネットワーク(回答文生成モデル)の学習時に用いられるデータであり、質問と、文書集合と、回答スタイルと、正解となる回答文(以降、「正解回答文」とも表す。)との組で表される。なお、訓練データは「学習データ」等と称されてもよい。
ここで、訓練データの一例としては、以下のようなものが挙げられる。
・(例1)質問:「2020年のオリンピックが開催される都市は?」、文書集合:ニュース記事の集合、回答スタイル:「単語」、正解回答文:「東京」
・(例2)質問:「2020年のオリンピックが開催される都市は?」、文書集合:ニュース記事の集合、回答スタイル:「自然文」、正解回答文:「2020年のオリンピックは東京で開催されます。」
このように、各訓練データには、質問と、文書集合と、回答スタイルと、この回答スタイルに応じた正解回答文とが含まれる。なお、文書集合には少なくとも1つ以上の文書が含まれていればよい。
単語系列ベクトル化部103は、訓練データ毎に、この訓練データに含まれる文書集合を構成する各文書の単語系列をベクトル系列(以降、「文書ベクトル系列」とも表す。)に変換する。また、単語系列ベクトル化部103は、当該訓練データに含まれる質問の単語系列をベクトル系列(以降、「質問ベクトル系列」とも表す。)に変換する。
単語系列マッチング部104は、文書ベクトル系列と質問ベクトル系列とのマッチング行列を計算した上で、このマッチング行列を用いて、マッチングベクトル系列を計算する。
スタイル依存回答文生成部105は、当該訓練データに含まれる回答スタイルと、マッチングベクトル系列とを用いて、当該回答スタイルに応じた回答文を生成する。
パラメータ学習部106は、当該訓練データに含まれる正解回答文と、生成された回答文との損失(誤差)を用いて、ニューラルネットワーク(回答文生成モデル)のパラメータを学習(更新)する。これにより、ニューラルネットワーク(回答文生成モデル)が学習される。なお、ハイパーパラメータと区別するため、学習対象のパラメータを「学習パラメータ」とも表す。
≪質問応答時≫
本発明の第一の実施形態の質問応答時における質問応答装置10の機能構成について、図2を参照しながら説明する。図2は、本発明の第一の実施形態における質問応答装置10の機能構成(質問応答時)の一例を示す図である。
図2に示すように、質問応答時における質問応答装置10は、記憶部として、単語ベクトル記憶部101を有する。また、質問応答時における質問応答装置10は、機能部として、入力部102と、単語系列ベクトル化部103と、単語系列マッチング部104と、スタイル依存回答文生成部105と、出力部107とを有する。
単語ベクトル記憶部101は、単語と、この単語をベクトルで表現した単語ベクトルとの組を示すデータを格納している。単語ベクトル記憶部101に格納されているデータの具体例については後述する。
入力部102は、テストデータを入力する。テストデータとは、質問応答時に用いられるデータあり、質問と、文書集合と、回答スタイルとの組で表される。なお、テストデータは、別の呼称、例えば、「質問データ」等と称されてもよい。
単語系列ベクトル化部103は、テストデータに含まれる文書集合を構成する各文書の単語系列を文書ベクトル系列に変換する。また、単語系列ベクトル化部103は、当該テストデータに含まれる質問の単語系列を質問ベクトル系列に変換する。
単語系列マッチング部104は、文書ベクトル系列と質問ベクトル系列とのマッチング行列を計算した上で、このマッチング行列を用いて、マッチングベクトル系列を計算する。
スタイル依存回答文生成部105は、当該テストデータに含まれる回答スタイルと、マッチングベクトル系列とを用いて、当該回答スタイルに応じた回答文を生成する。
出力部107は、生成された回答文を出力する。なお、回答文の出力先は限定されない。出力部107は、例えば、ディスプレイ等に回答文を出力(表示)してもよいし、記憶装置等に回答文を出力(保存)してもよいし、通信ネットワークを介して接続される他の装置に回答文を出力(送信)してもよい。また、出力部107は、例えば、回答文を音声に変換した上で、スピーカ等から出力してもよい。
≪単語ベクトル記憶部101に格納されているデータ≫
ここで、単語ベクトル記憶部101に格納されているデータの一例を図3に示す。図3は、単語ベクトル記憶部101に格納されているデータの一例を示す図である。
図3に示すように、単語ベクトル記憶部101では、例えば、「go」や「write」、「baseball」等の単語に対して、当該単語をベクトルで表現した単語ベクトルが対応付けられている。
また、単語ベクトル記憶部101では、特殊文字に対して、当該特殊単語をベクトルで表現した単語ベクトルも対応付けられている。特殊文字とは、「<PAD>」や「<UNK>」、「<S>」、「</S>」等が存在する。<PAD>は、パディングに用いられる特殊文字である。<UNK>は、単語ベクトル記憶部101に格納されていない単語を単語ベクトルに変換する際に用いられる特殊文字である。<S>及び</S>は、単語系列の先頭及び末尾にそれぞれ挿入される特殊文字である。
ここで、単語ベクトル記憶部101に格納されているデータは、例えば、以下の参考文献1に記載されている方法により作成される。また、各単語の単語ベクトルはv次元であるものとする。なお、特殊文字の単語ベクトルもv次元であり、これら特殊文字の単語ベクトルは、ニューラルネットワーク(回答文生成モデル)の学習パラメータである。vとしては、例えば、v=300等とすればよい。
[参考文献1]
Jeffrey Pennington, Richard Socher, Christopher D. Manning: Glove: Global Vectors for Word Representation. EMNLP 2014: 1532-1543
<質問応答装置10のハードウェア構成>
次に、本発明の第一の実施形態における質問応答装置10のハードウェア構成について、図4を参照しながら説明する。図4は、本発明の第一の実施形態における質問応答装置10のハードウェア構成の一例を示す図である。
図4に示すように、本発明の第一の実施形態における質問応答装置10は、ハードウェアとして、入力装置201と、表示装置202と、外部I/F203と、RAM(Random Access Memory)204と、ROM(Read Only Memory)205と、プロセッサ206と、通信I/F207と、補助記憶装置208とを有する。これら各ハードウェアは、それぞれがバス209を介して通信可能に接続されている。
入力装置201は、例えばキーボードやマウス、タッチパネル等であり、ユーザが各種操作を入力するのに用いられる。表示装置202は、例えばディスプレイ等であり、質問応答装置10の処理結果(例えば、質問に対する回答等)を表示する。なお、質問応答装置10は、入力装置201及び表示装置202の少なくとも一方を有していなくてもよい。
外部I/F203は、外部装置とのインタフェースである。外部装置には、記録媒体203a等がある。質問応答装置10は、外部I/F203を介して、記録媒体203aの読み取りや書き込み等を行うことができる。記録媒体203aには、質問応答装置10が有する各機能部を実現する1以上のプログラム等が記録されていてもよい。
記録媒体203aには、例えば、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disk)、SDメモリカード(Secure Digital memory card)、USB(Universal Serial Bus)メモリカード等がある。
RAM204は、プログラムやデータを一時保持する揮発性の半導体メモリである。ROM205は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリである、ROM205には、例えば、OS(Operating System)に関する設定情報や通信ネットワークに関する設定情報等が格納されている。
プロセッサ206は、例えばCPU(Central Processing Unit)やGPU(Graphics Processing Unit)等であり、ROM205や補助記憶装置208等からプログラムやデータをRAM204上に読み出して処理を実行する。質問応答装置10が有する各機能部は、例えば、補助記憶装置208に格納されている1以上のプログラムがプロセッサ206に実行させる処理により実現される。なお、質問応答装置10は、プロセッサ206として、CPUとGPUとの両方を有していてもよいし、CPU又はGPUのいずれか一方のみを有していてもよい。
通信I/F207は、質問応答装置10を通信ネットワークに接続するためのインタフェースである。質問応答装置10が有する各機能部を実現する1以上のプログラムは、通信I/F207を介して、所定のサーバ装置等から取得(ダウンロード)されてもよい。
補助記憶装置208は、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等であり、プログラムやデータを格納している不揮発性の記憶装置である。補助記憶装置208に格納されているプログラムやデータには、例えば、OS、各種アプリケーションプログラム、質問応答装置10が有する各機能部を実現する1以上のプログラム等がある。また、質問応答装置10が有する単語ベクトル記憶部101は、補助記憶装置208を用いて実現可能である。ただし、質問応答装置10が有する単語ベクトル記憶部101は、例えば、質問応答装置10と通信ネットワークを介して接続される記憶装置等を用いて実現されていてもよい。
本発明の第一の実施形態における質問応答装置10は、図4に示すハードウェア構成を有することより、後述する各種処理を実現することができる。なお、図4に示す例では、本発明の第一の実施形態における質問応答装置10が1台の装置(コンピュータ)で実現されている場合について説明したが、これに限られない。質問応答装置10は、複数台の装置(コンピュータ)で実現されていてもよい。また、1台の装置(コンピュータ)には、複数のプロセッサ206と、複数のメモリ(RAM204、ROM206、補助記憶装置208等)とが含まれていてもよい。
<学習処理>
以降では、本発明の第一の実施形態における質問応答装置10によって回答文生成モデルを学習する処理(学習処理)について、図5を参照しながら説明する。図5は、本発明の第一の実施形態における学習処理の一例を示すフローチャートである。なお、上述したように、学習時の質問応答装置10は、図1に示す各機能部及び記憶部を有している。
ステップS101:入力部102は、訓練データセットを入力する。入力部102は、例えば、補助記憶装置208や記録媒体203a等に格納されている訓練データセットを入力してもよいし、通信I/F207を介して所定のサーバ装置等から取得(ダウンロード)した訓練データセットを入力してもよい。
ステップS102:入力部102は、訓練データセットの学習回数を示すエポック数nを1に初期化する。なお、エポック数nの最大値をNと表す。Nはハイパーパラメータであり、例えば、N=15等とすればよい。
ステップS103:入力部102は、訓練データセットをN個のミニバッチに分割する。なお、ミニバッチへの分割数Nはハイパーパラメータであり、例えば、N=60等とすればよい。
ステップS104:質問応答装置10は、N個のミニバッチ毎に、パラメータ更新処理を繰り返し実行する。すなわち、質問応答装置10は、ミニバッチを用いて損失を計算した上で、この損失を用いて任意の最適化方法によりパラメータを更新する。なお、パラメータ更新処理の詳細については後述する。
ステップS105:入力部102は、エポック数nがN−1より大きいか否かを判定する。エポック数nがN−1より大きいと判定されなかった場合、質問応答装置10は、ステップS106の処理を実行する。一方で、エポック数nがN−1より大きいと判定された場合、質問応答装置10は、学習処理を終了する。
ステップS106:入力部102は、エポック数nに対して「1」を加算する。そして、質問応答装置10は、ステップS103の処理を実行する。これにより、ステップS101で入力された訓練データセットを用いて、ステップS103〜ステップS104の処理がN回繰り返し実行される。
<パラメータ更新処理>
ここで、上記のステップS104におけるパラメータ更新処理の詳細について、図6A及び図6Bを参照しながら説明する。図6A及び図6Bは、本発明の第一の実施形態におけるパラメータ更新処理の一例を示すフローチャートである。なお、以降では、N個のミニバッチのうちの或る1つのミニバッチを用いたパラメータ更新処理について説明する。
ステップS201:入力部102は、ミニバッチの中から1つの訓練データを取得する。なお、以降では、訓練データに含まれる文書集合はK個の文書で構成されているものとする。
ステップS202:単語系列ベクトル化部103は、各k(k=1,・・・,K)に対して、当該訓練データに含まれる文書集合のk番目の文書の単語系列
Figure 2020135289
に含まれる各単語で単語ベクトル記憶部101を検索し、これら各単語を単語ベクトルに変換することで、k番目の文書の単語系列を文書ベクトル系列
Figure 2020135289
に変換する。Lは、文書の単語系列の長さであり、例えば、L=400等とすればよい。
このとき、単語系列ベクトル化部103は、k番目の文書の単語系列を文書ベクトル系列Xに変換する前に、当該単語系列の先頭に特殊文字<S>を挿入すると共に、末尾に特殊文字</S>を挿入する。また、単語系列ベクトル化部103は、特殊文字<S>及び</S>を挿入した後の単語系列の長さがL未満である場合は、当該単語系列の長さがLとなるように、特殊文字<PAD>でパディングする。更に、単語系列ベクトル化部103は、単語ベクトル記憶部101に格納されていない単語を単語ベクトルに変換する際には、当該単語を特殊文字<UNK>として扱って単語ベクトルに変換する。
ステップS203:次に、単語系列ベクトル化部103は、以下の参考文献2に記載されている双方向のGRU(Gated Recurrent Unit)により、各k(k=1,・・・,K)に対して、k番目の文書ベクトル系列Xを文書ベクトル系列
Figure 2020135289
に変換する。ここで、dはGRUの隠れ状態のサイズである。dとしては、例えば、d=100等とすればよい。
[参考文献2]
Kyunghyun Cho, Bart van Merrienboer, Caglar Gulcehre, Dzmitry Bahdanau, Fethi Bougares, Holger Schwenk, Yoshua Bengio: Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation. EMNLP 2014: 1724-1734
ステップS204:単語系列ベクトル化部103は、当該訓練データに含まれる質問の単語系列
Figure 2020135289
に含まれる各単語で単語ベクトル記憶部101を検索し、これら各単語を単語ベクトルに変換することで、質問の単語系列を質問ベクトル系列
Figure 2020135289
に変換する。Jは、質問の単語系列の長さであり、例えば、J=30等とすればよい。なお、このとき、単語系列ベクトル化部103は、上記のステップS202と同様に、特殊文字<S>、</S>、<PAD>及び<UNK>を用いる。
ステップS205:次に、単語系列ベクトル化部103は、上記のステップS203と同様に、参考文献2に記載されている双方向のGRUにより、質問ベクトル系列Xを質問ベクトル系列
Figure 2020135289
に変換する。
ここで、以降では、E ∈R2dの各要素のうち、逆方向のGRUに対応するd次元分の要素で構成されるベクトルと、E ∈R2dの各要素のうち、順方向のGRUに対応するd次元分の要素で構成されるベクトルとを連結したベクトルを
Figure 2020135289
とする。
ステップS206:次に、単語系列マッチング部104は、各k(k=1,・・・,K)に対して、文書ベクトル系列Eと質問ベクトル系列Eとのマッチング行列Sの(l,j)成分の要素を以下の式(1)によりそれぞれ計算する。
Figure 2020135289
ここで、
Figure 2020135289
は各ベクトルの要素毎の積(アダマール積)、「;」はベクトルの連結、τは転置を表す。また、w∈R6dは、回答文生成モデルの学習パラメータである。
ステップS207:次に、単語系列マッチング部104は、各k(k=1,・・・,K)に対して、マッチング行列Sを用いて、以下の式(2)及び(3)により行列A及びBを計算する。
Figure 2020135289
ステップS208:次に、単語系列マッチング部104は、文書ベクトル系列Eと、質問ベクトル系列Eと、行列A及びBとを用いて、以下の式(4)及び(5)によりベクトル系列Gq→k及びGk→qを計算する。
Figure 2020135289
ここで、
Figure 2020135289
である。なお、Gk→qは1度のみ計算され、Gq→kは文書毎に計算される(つまり、Gq→kは各k(k=1,・・・,K)に対して計算される。)。
ステップS209:次に、単語系列マッチング部104は、1層の双方向GRU(隠れ状態サイズd)により、ベクトル系列Gq→k及びGk→qをマッチングベクトル系列Mq→k∈R2d×L及びMk→q∈R2d×Jにそれぞれ変換する。
ステップS210:次に、スタイル依存回答文生成部105は、以下の式(6)によりデコーダの初期状態h∈R2dを計算する。
Figure 2020135289
ここで、W∈R2d×2d及びb∈R2dは、回答文生成モデルの学習パラメータである。
ステップS211:次に、スタイル依存回答文生成部105は、出力単語yを特殊文字<S>とすると共に、出力単語yのインデックスtをt=1に初期化する。また、スタイル依存回答文生成部105は、質問コンテキストベクトルc 及び文書集合コンテキストベクトルc を、それぞれ2d次元の零ベクトルに初期化する。
ステップS212:次に、スタイル依存回答文生成部105は、単方向のGRUによりデコーダの状態hを更新する。すなわち、スタイル依存回答文生成部105は、以下の式(7)によりデコーダの状態hを更新する。
Figure 2020135289
ここで、Yt−1は、単語ベクトル記憶部101に格納されているデータにより、1つ前のインデックスt−1での出力単語yt−1を、v次元の単語ベクトルに変換したものである。また、zは、回答スタイルの種類数次元のone―hotベクトルであり、指定された回答スタイル(つまり、該当の訓練データに含まれる回答スタイル)に対応する要素のみ1、他の要素は0となるベクトルである。例えば、回答スタイルの種類として「単語」と「自然文」とを考える場合、zは2次元のベクトルとなる。
ステップS213:次に、スタイル依存回答文生成部105は、デコーダの状態hを用いて、質問への注視分布αtj と質問コンテキストベクトルc とを以下の式(8)〜(10)により計算する。
Figure 2020135289
ここで、M はMk→q∈R2d×Jのj番目の列ベクトルである。また、Sはスコア関数であり、例えば、内積を用いることができる。なお、スコア関数Sとしては、内積以外に、例えば、bilinearや多層パーセプトロン等が用いられてもよい。
ステップS214:次に、スタイル依存回答文生成部105は、デコーダの状態hを用いて、文書集合への注視分布αtkl と文書コンテキストベクトルc とを以下の式(11)〜(13)により計算する。
Figure 2020135289
ここで、M はMq→k∈R2d×Lのl番目の列ベクトルである。なお、スコア関数Sは、内積を用いることができるが、上述した通り、例えば、bilinearや多層パーセプトロン等が用いられてもよい。
ステップS215:次に、スタイル依存回答文生成部105は、確率合成比λを以下の式(14)により計算する。
Figure 2020135289
ここで、Wλ∈R3×5d及びbλ∈Rは、回答文生成モデルの学習パラメータである。
確率合成比λとは、質問と、文書集合と、予め設定された出力語彙とのいずれに含まれる単語を重視して出力単語yを生成するかを調整するパラメータである。以降では、確率合成比λを、λ=[λ,λ,λτと表す。なお、出力語彙とは、回答文に用いることが可能な単語の集合のことである。出力語彙の語彙数(つまり、単語の種類数)をVoutと表す。
ステップS216:次に、スタイル依存回答文生成部105は、確率混合比λを用いて、単語yの生成確率pを以下の式(15)により計算する。
Figure 2020135289
ここで、
Figure 2020135289
として、文書の注視分布と単語の注視分布とを利用する。また、設定された出力語彙における単語の確率Pは以下により計算される。
Figure 2020135289
ここで、
Figure 2020135289
は、回答文生成モデルの学習パラメータである。また、σは活性化関数であり、例えば、ReLUが用いられる。
ステップS217:次に、スタイル依存回答文生成部105は、上記の式(15)で計算された生成確率pに基づいて、t番目の出力単語yを生成する。ここで、スタイル依存回答文生成部105は、例えば、生成確率pが最大となる単語を出力単語yとして生成してもよいし、生成確率pの分布(確率分布)に従ってサンプリングにより単語を出力単語yとして生成してもよい。
ステップS218:次に、スタイル依存回答文生成部105は、該当の訓練データに含まれる正解回答文のt番目の単語が特殊単語</S>(つまり、文末を表す特殊単語)であるか否かを判定する。正解回答文のt番目の単語が</S>でないと判定された場合、質問応答装置10は、ステップS219の処理を実行する。一方で、正解回答文のt番目の単語が</S>であると判定された場合、質問応答装置10は、ステップS220の処理を実行する。
ステップS219:スタイル依存回答文生成部105は、出力単語yのインデックスtに「1」を加算する。そして、スタイル依存回答文生成部105は、加算後のtを用いて、ステップS212の処理を実行する。これにより、各t(t=1,2,・・・)に対して、正解回答文のt番目の単語が</S>となるまで、ステップS212〜ステップS17の処理が繰り返し実行される。
ステップS220:パラメータ学習部106は、上記のステップS217で生成された出力単語yと、正解回答文とを用いて、以下の式(16)により損失Lを計算する。
Figure 2020135289
ここで、y は、正解回答文のt番目の単語(つまり、t番目の正解単語)である。また、Tは、正解回答文の長さである。これにより、1つの訓練データに関する損失Lが計算される。
ステップS221:次に、入力部102は、未取得の訓練データがミニバッチの中にあるか否かを判定する。未取得の訓練データがミニバッチの中にあると判定された場合、質問応答装置10は、ステップS201の処理を実行する。これにより、ミニバッチに含まれる訓練データ毎に、ステップS202〜ステップS220の処理が実行される。一方で、未取得の訓練データがミニバッチの中にないと判定された場合(すなわち、ミニバッチに含まれる全ての訓練データに対してステップS202〜ステップS220の処理が実行された場合)、質問応答装置10は、ステップS222の処理を実行する。
ステップS222:パラメータ学習部106は、ミニバッチに含まれる各訓練データに関してそれぞれ計算された損失Lの平均を計算した上で、計算した平均を用いて、例えば確率的勾配降下法により回答文生成モデル(ニューラルネットワーク)の学習パラメータを更新する。なお、確率的勾配降下法はパラメータ最適化方法の一例であって、任意の最適化方法により学習パラメータが更新されてもよい。これにより、1つのミニバッチを用いて、回答文生成モデルの学習パラメータが更新される。
なお、上記のステップS217では出力単語yを生成しているが、必ずしも出力単語yが生成される必要はない。出力単語yを生成せずに、上記の式(16)に示す損失Lが計算されてもよい。
<質問応答処理>
以降では、本発明の第一の実施形態における質問応答装置10によって質問応答する処理(質問応答処理)について、図7を参照しながら説明する。図7は、本発明の第一の実施形態における質問応答処理の一例を示すフローチャートである。なお、上述したように、質問応答時の質問応答装置10は、図2に示す各機能部及び記憶部を有している。
ステップS301:入力部102は、テストデータを取得する。なお、以降では、テストデータに含まれる文書集合はK個の文書で構成されているものとする。
以降のステップS302〜ステップS317及びステップS319の処理は、上記のステップS202〜ステップS217及びステップS219の処理とそれぞれ同様であるため、その説明を省略する。ただし、ステップS302〜ステップS317及びステップS319の処理では、上記のステップS301で入力されたテストデータに含まれる質問と文書集合と回答スタイルとを用いる。また、回答文生成モデル(ニューラルネットワーク)のパラメータは、学習処理で学習されたパラメータを用いる。
ステップS318:スタイル依存回答文生成部105は、ステップS317で生成された出力単語yが特殊単語</S>(つまり、文末を表す特殊単語)であるか否かを判定する。出力単語yが特殊単語</S>でないと判定された場合、質問応答装置10は、ステップS319の処理を実行する。一方で、出力単語yが特殊単語</S>であると判定された場合、質問応答装置10は、ステップS320の処理を実行する。
ステップS320:出力部107は、ステップS317で生成された各出力単語yで構成される回答文を出力する。これにより、テストデータに含まれる質問に対する回答文として、当該テストデータに含まれる回答スタイルに応じた回答文が得られる。
<本発明の第一の実施形態の実験結果>
ここで、本発明の第一の実施形態における手法(以降、「本発明の手法」と表す。)の実験結果を以下の表1に示す。
Figure 2020135289
ここで、実験データとしては、MS MARCO v.2.1のDev Setに含まれるデータのうち、回答可能な質問と自然文の回答文とが含まれるデータを用いた。また、評価指標としては、Rouge-LとBleu-1とを用いた。上記の表1中の「w/o multi-style learning」は、回答スタイルを考慮しないで回答文を生成する技術(従来技術)を表す。
上記の表1に示すように、本発明の手法では、Rouge-L及びBleu-1いずれでも従来技術より高い値が得られている。したがって、本発明の手法によれば、与えられた質問に対して、回答スタイルに応じた自然な回答文が得られていることがわかる。このため、本発明の手法によれば、或る回答スタイルに応じた回答文を出力する従来技術によりも、当該回答スタイルに応じた回答文をより高い精度で得ることが可能となる。
[第二の実施形態]
ここで、質問応答装置10に与えられた文書集合の中には、一般に、回答文の生成に適合する文書と回答文の生成に適合しない文書とが混在している場合が多い。また、文書集合全体として回答文を生成するのに不十分な場合がある。各文書が回答文の生成に適合しているか否かや文書集合全体が回答文の生成に十分であるか否かは、生成された回答文の精度等に密接な関係がある。
そこで、第二の実施形態では、任意の文書集合と、この文書集合に対する任意の質問と、例えばユーザ等によって指定された回答スタイルとが与えられた場合に、ニューラルネットワークによる文生成技術を用いて、当該回答スタイルに応じた回答文の生成に加えて、回答文の生成に対する各文書の適合度を表す文書適合性と、回答文の生成に対する文書集合全体としての十分性を表す回答可能性とを出力する質問応答装置10について説明する。
なお、本発明の第二の実施形態では、主に、第一の実施形態との相違点について説明し、第一の実施形態と同一の構成要素については、適宜、その説明を省略又は簡略化するものとする。
<質問応答装置10の機能構成>
≪学習時≫
本発明の第二の実施形態の学習時における質問応答装置10の機能構成について、図8を参照しながら説明する。図8は、本発明の第二の実施形態における質問応答装置10の機能構成(学習時)の一例を示す図である。
図8に示すように、学習時における質問応答装置10は、記憶部として、単語ベクトル記憶部101を有する。また、学習時における質問応答装置10は、機能部として、入力部102と、単語系列ベクトル化部103と、単語系列マッチング部104と、スタイル依存回答文生成部105と、パラメータ学習部106と、文書適合度計算部108と、回答可能性計算部109とを有する。
第二の実施形態では、訓練データには、質問と、文書集合と、回答スタイルと、正解回答文と、当該文書集合に含まれる各文書の文書適合度と、当該文書集合全体の回答可能性との組で表されものとする。文書適合度とは、回答文の生成に対する文書の適合度を表す指標値であり、例えば0以上1以下の値を取り得る。また、回答可能性とは、回答文の生成に対する文書集合全体としての十分性を表す指標値であり、例えば0以上1以下の値を取り得る。なお、訓練データに含まれる文書適合度及び回答可能性を、それぞれ「正解文書適合度」及び「正解回答可能性」とも表す。
文書適合度計算部108は、文書集合に含まれる各文書の文書適合度を計算する。回答可能性計算部109は、文書集合全体の回答可能性を計算する。
また、パラメータ学習部106は、当該訓練データに含まれる正解回答文と、生成された回答文との損失(誤差)、当該訓練データに含まれる正解文書適合度と、計算された文書適合度との損失(誤差)、及び当該訓練データに含まれる正解回答可能性と、計算された回答可能性との損失(誤差)を用いて、ニューラルネットワーク(回答文生成モデル)のパラメータを学習(更新)する。これにより、ニューラルネットワーク(回答文生成モデル)が学習される。
ここで、第二の実施形態では、文書ベクトル系列Eと質問ベクトル系列Eとのマッチング行列Sを計算するニューラルネットワークを、スタイル依存回答文生成部105と、文書適合度計算部108と、回答可能性計算部109とで共有している。これにより、学習後の回答文生成モデルでは、回答文と、文書適合度と、回答可能性とを高い精度で生成及び出力することが可能となる。
≪質問応答時≫
本発明の第二の実施形態の質問応答時における質問応答装置10の機能構成について、図9を参照しながら説明する。図9は、本発明の第二の実施形態における質問応答装置10の機能構成(質問応答時)の一例を示す図である。
図9に示すように、質問応答時における質問応答装置10は、記憶部として、単語ベクトル記憶部101を有する。また、質問応答時における質問応答装置10は、機能部として、入力部102と、単語系列ベクトル化部103と、単語系列マッチング部104と、スタイル依存回答文生成部105と、出力部107と、文書適合度計算部108と、回答可能性計算部109とを有する。なお、これらの記憶部及び各機能部は、上述した通りである。
<学習処理>
以降では、本発明の第二の実施形態における質問応答装置10によって回答文生成モデルを学習する処理(学習処理)について、図10を参照しながら説明する。図10は、本発明の第二の実施形態における学習処理の一例を示すフローチャートである。なお、上述したように、学習時の質問応答装置10は、図8に示す各機能部及び記憶部を有している。図10のステップS401〜ステップS406は、図5のステップS101〜ステップS106とそれぞれ同様であるため、その説明を省略する。ただし、ステップS404におけるパラメータ更新処理の詳細は、ステップS104とは異なる。
<パラメータ更新処理>
そこで、上記のステップS404におけるパラメータ更新処理の詳細について、図11A及び図11Bを参照しながら説明する。図11A及び図11Bは、本発明の第二の実施形態におけるパラメータ更新処理の一例を示すフローチャートである。なお、以降では、N個のミニバッチのうちの或る1つのミニバッチを用いたパラメータ更新処理について説明する。
ステップS501:入力部102は、ミニバッチの中から1つの訓練データを取得する。なお、以降では、訓練データに含まれる文書集合はK個の文書で構成されているものとする。
ステップS502:単語系列ベクトル化部103は、上記のステップS202と同様に、各k(k=1,・・・,K)に対して、k番目の文書の単語系列を文書ベクトル系列Xに変換する。
ステップS503:次に、単語系列ベクトル化部103は、上記のステップS203と同様に、参考文献2に記載されている双方向のGRUにより、各k(k=1,・・・,K)に対して、k番目の文書ベクトル系列Xを文書ベクトル系列Eに変換する。
なお、単語系列ベクトル化部103は、双方向のGRUの代わりに、例えば、以下の参考文献3に記載されているLSTM(Long short-term memory)や以下の参考文献4に記載されているTransformer等により、文書ベクトル系列Xを文書ベクトル系列Eに変換してもよい。
[参考文献3]
Sepp Hochreiter and Jurgen Schmidhuber. 1997. Long Short-Term Memory. Neural Computation 9, 8 (1997), 1735-1780
[参考文献4]
Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones, Aidan N. Gomez, Lukasz Kaiser, Illia Polosukhin: Attention is All you Need. NIPS 2017: 6000-6010
ステップS504:単語系列ベクトル化部103は、上記のステップS204と同様に、質問の単語系列を質問ベクトル系列Xに変換する。
ステップS505:次に、単語系列ベクトル化部103は、上記のステップS203と同様に、参考文献2に記載されている双方向のGRUにより、質問ベクトル系列Xを質問ベクトル系列Eに変換する。
なお、単語系列ベクトル化部103は、上記のステップS503と同様に、双方向のGRUの代わりに、例えば、参考文献3に記載されているLSTMや参考文献4に記載されているTransformer等により、質問ベクトル系列Xを質問ベクトル系列Eに変換してもよい。
以降のステップS506〜ステップS508の処理は、上記のステップS206〜ステップS208の処理とそれぞれ同様であるため、その説明を省略する。
ステップS509:単語系列マッチング部104は、上記のステップS209と同様に、1層の双方向GRU(隠れ状態サイズd)により、ベクトル系列Gq→k及びGk→qをマッチングベクトル系列Mq→k∈R2d×L及びMk→q∈R2d×Jにそれぞれ変換する。
なお、単語系列マッチング部104は、1層の双方向GRUの代わりに、例えば、参考文献3に記載されているLSTMや参考文献4に記載されているTransformer等により、ベクトル系列Gq→k及びGk→qをマッチングベクトル系列Mq→k∈R2d×L及びMk→q∈R2d×Jにそれぞれ変換してもよい。
ステップS510:文書適合度計算部108は、以下の式(17)により、各文書の文書適合度β∈[0,1]を計算する。
Figure 2020135289
ここで、Mk,pool∈R2dはk番目の文書のプーリング表現である。また、wrank∈R2dは、回答文生成モデルの学習パラメータである。プーリング表現Mk,poolとしては、例えば、Mk→qの双方向GRUのそれぞれの末尾ベクトルを連結したベクトルやTransformerの先頭ベクトル等が利用可能である。
ステップS511:回答可能性計算部109は、以下の式(18)により、質問に対する文書集合の回答可能性a∈[0,1]を計算する。
Figure 2020135289
ここで、wans∈R2Kdは、回答文生成モデルの学習パラメータである。
ステップS512:スタイル依存回答文生成部105は、上記のステップS211と同様に、出力単語yを特殊文字<S>とすると共に、出力単語yのインデックスtをt=1に初期化する。また、スタイル依存回答文生成部105は、質問コンテキストベクトルc 及び文書集合コンテキストベクトルc を、それぞれ2d次元の零ベクトルに初期化する。
ステップS513:次に、単語系列ベクトル化部103は、当該訓練データに含まれる正解質問の単語系列(y,y,・・・,y)に含まれる各単語で単語ベクトル記憶部101を検索し、これら各単語を単語ベクトルに変換することで、当該単語系列をベクトル系列Y=[Y,Y,・・・,Y]∈Rv×Tに変換する。
このとき、単語系列ベクトル化部103は、単語系列(y,y,・・・,y)をベクトル系列Yに変換する前に、指定された回答スタイル(つまり、該当の訓練データに含まれる回答スタイル)に応じた特殊文字を当該単語系列の先頭に挿入すると共に、末尾に特殊文字</S>を挿入する。例えば、回答スタイルの種類として「単語」と「自然文」とがあり、「単語」の特殊文字が<E>、「自然文」の特殊文字が<A>であるとする。この場合に、指定された回答スタイルが「自然文」である場合は、単語系列ベクトル化部103は、当該単語系列の先頭に特殊文字<A>を挿入する。一方で、指定された回答スタイルが「単語」である場合は、単語系列ベクトル化部103は、当該単語系列の先頭に特殊文字<E>を挿入する。
また、単語系列ベクトル化部103は、単語ベクトル記憶部101に格納されていない単語を単語ベクトルに変換する際には、当該単語を特殊文字<UNK>として扱って単語ベクトルに変換する。なお、第二の実施形態では、単語ベクトル記憶部101には、回答スタイルに応じた特殊文字と、この特殊文字の単語ベクトルとを対応付けたデータが格納されているものとする。
ステップS514:次に、スタイル依存回答文生成部105は、デコーダの状態h=[h,h,・・・,h]∈R2d×Tを計算する。スタイル依存回答文生成部105は、Transformerブロック処理によりデコーダの状態hを計算する。Transformerブロック処理では、参考文献4に記載されているMaskedSelfAttention、MultiHeadAttention及びFeedForwardNetworkを利用する。すなわち、スタイル依存回答文生成部105は、M=wdecYを計算した後、以下の式(19)〜(22)によりデコーダの状態hを計算する。
Figure 2020135289
ここで、wdec∈R2d×vは、回答文生成モデルの学習パラメータである。これにより、デコーダの状態h∈R2d×Tが得られる。なお、上記の式(19)〜(22)を1ブロックとして、スタイル依存回答文生成部105は、ブロック処理を繰り返し実行してもよい。
なお、パラメータ更新処理では、1つの訓練データに対して、上記のステップS514が1度実行されればよい(つまり、上記のステップS514をインデックスt毎に繰り返し実行しなくてもよい。)。
以降のステップS515〜ステップS521の処理は、上記のステップS213〜ステップS219の処理とそれぞれ同様であるため、その説明を省略する。
ステップS522:パラメータ学習部106は、出力単語yと、正解回答文と、文書適合度βと、正解文書適合度と、回答可能性aと、正解回答可能性とを用いて、以下の式(23)により損失Lを計算する。
Figure 2020135289
ここで、Lは以下の式(24)により計算される。
Figure 2020135289
また、Lrankは以下の式(25)により計算される。
Figure 2020135289
ここで、rは、k番目の文書の正解文書適合度である。
また、Lclsは以下の式(26)により計算される。
Figure 2020135289
なお、上記の式(23)のλrank及びλclsはユーザ等により設定されるパラメータであり、例えば、λrank=0.5、λcls=0.1等とすればよい。
以降のステップS523〜ステップS524の処理は、上記のステップS221〜ステップS222の処理とそれぞれ同様であるため、その説明を省略する。これにより、1つのミニバッチを用いて、回答文生成モデルの学習パラメータが更新される。
なお、第一の実施形態と同様に上記のステップS519では、必ずしも出力単語yが生成される必要はない。出力単語yを生成せずに、上記の式(23)に示す損失Lが計算されてもよい。
<質問応答処理>
以降では、本発明の第二の実施形態における質問応答装置10によって質問応答する処理(質問応答処理)について、図12A及び図12Bを参照しながら説明する。図12A及び図12Bは、本発明の第二の実施形態における質問応答処理の一例を示すフローチャートである。なお、上述したように、質問応答時の質問応答装置10は、図2に示す各機能部及び記憶部を有している。
ステップS601:入力部102は、テストデータを取得する。なお、以降では、テストデータに含まれる文書集合はK個の文書で構成されているものとする。
以降のステップS602〜ステップS612、ステップS614〜ステップS619及びステップS621の処理は、上記のステップS502〜ステップS512、ステップS514〜ステップS519及びステップS521の処理とそれぞれ同様であるため、その説明を省略する。ただし、ステップS602〜ステップS612、ステップS614〜ステップS619及びステップS621の処理では、上記のステップS601で入力されたテストデータに含まれる質問と文書集合と回答スタイルとを用いる。また、回答文生成モデル(ニューラルネットワーク)のパラメータは、学習処理で学習されたパラメータを用いる。
ステップS613:単語系列ベクトル化部103は、ステップS619で生成された出力単語の単語系列(y,・・・,yt−1)に含まれる各単語で単語ベクトル記憶部101を検索し、これら各単語を単語ベクトルに変換することで、当該単語系列をベクトル系列Y=[Y,Y,・・・,Y]∈Rv×Tに変換する。
このとき、単語系列ベクトル化部103は、単語系列(y,y,・・・,yt−1)をベクトル系列Yに変換する前に、指定された回答スタイル(つまり、テストデータに含まれる回答スタイル)に応じた特殊文字を当該単語系列の先頭に挿入すると共に、末尾に特殊文字</S>を挿入する。また、単語系列ベクトル化部103は、回答スタイルに応じた特殊文字と特殊文字</S>とを挿入した後の単語系列の長さがT未満である場合は、当該単語系列の長さがTとなるように、特殊文字<PAD>でパディングする。更に、単語系列ベクトル化部103は、単語ベクトル記憶部101に格納されていない単語を単語ベクトルに変換する際には、当該単語を特殊文字<UNK>として扱って単語ベクトルに変換する。なお、第二の実施形態では、単語ベクトル記憶部101には、回答スタイルに応じた特殊文字と、この特殊文字の単語ベクトルとを対応付けたデータが格納されているものとする。
ステップS620:スタイル依存回答文生成部105は、ステップS619で生成された出力単語yが特殊単語</S>(つまり、文末を表す特殊単語)であるか否かを判定する。出力単語yが特殊単語</S>でないと判定された場合、質問応答装置10は、ステップS621の処理を実行する。一方で、出力単語yが特殊単語</S>であると判定された場合、質問応答装置10は、ステップS622の処理を実行する。
ステップS622:出力部107は、ステップS619で生成された各出力単語yで構成される回答文と、ステップS610で計算された文書適合度βと、ステップS611で計算された回答可能性aとを出力する。これにより、文書集合に含まれる各文書の文書適合度βと当該文書集合の回答可能性aとが得られると共に、回答スタイルに応じた回答文が得られる。
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
10 質問応答装置
101 単語ベクトル記憶部
102 入力部
103 単語系列ベクトル化部
104 単語系列マッチング部
105 スタイル依存回答文生成部
106 パラメータ学習部
107 出力部
108 文書適合度計算部
109 回答可能性計算部

Claims (8)

  1. 1つ以上の文書で構成される文書集合と、質問文と、該質問文に対する回答文のスタイルとを入力として、前記文書集合に基づいて前記質問文に対する回答文を生成する処理を学習済モデルにより実行する回答生成手段を有し、
    前記学習済モデルは、前記回答文を生成する際に、前記スタイルに応じて、前記回答文に含まれる単語の生成確率を決定する、
    ことを特徴とする質問応答装置。
  2. 前記回答生成手段は、
    前記文書集合に含まれる単語、前記質問文に含まれる単語、及び予め設定された語彙集合に含まれる単語を用いて、前記回答文を生成し、
    前記学習済モデルは、前記回答文に含まれる単語を生成する際に、前記スタイルに応じて、前記語彙集合に含まれる単語、前記質問文に含まれる単語、又は前記語彙集合に含まれる単語のいずれを重視すべきかを表す比を算出する、ことを特徴とする請求項1に記載の質問応答装置。
  3. 前記学習済モデルは、前記回答文に含まれる単語を生成する際に、前記文書集合に含まれる単語の注視分布と、前記質問文に含まれる単語の注視分布と、前記語彙集合に含まれる単語の確率分布とを、前記比を用いて合成することで、前記生成確率を決定する、ことを特徴とする請求項2に記載の質問応答装置。
  4. 前記回答生成手段は、
    更に、前記回答文を生成する際における前記文書の適合性と、前記質問文に対する前記文書集合の回答可能性とを計算する処理を前記学習済モデルにより実行する、ことを特徴とする請求項1乃至3の何れか一項に記載の質問応答装置。
  5. 1つ以上の文書で構成される文書集合と、質問文と、該質問文に対する回答文のスタイルと、前記スタイルに応じた回答文の正解とを入力として、前記文書集合に基づいて前記質問文に対する回答文に含まれる単語の生成確率を計算する処理を学習済モデルにより実行する回答生成手段と、
    前記正解と、前記生成確率とを用いて計算された損失から、前記学習済モデルのパラメータを更新する更新手段と、
    を有することを特徴とする学習装置。
  6. 前記スタイルには、前記回答文が単語で表現されることを示す「単語」又は前記回答文が句で表現されることを示す「フレーズ」と、前記回答文が自然文で表現されることを示す「自然文」とが少なくとも含まれる、ことを特徴とする請求項5に記載の学習装置。
  7. 1つ以上の文書で構成される文書集合と、質問文と、該質問文に対する回答文のスタイルとを入力として、前記文書集合に基づいて前記質問文に対する回答文を生成する処理を学習済モデルにより実行する回答生成手順をコンピュータが実行し、
    前記学習済モデルは、前記回答文を生成する際に、前記スタイルに応じて、前記回答文に含まれる単語の生成確率を決定する、ことを特徴とする質問応答方法。
  8. コンピュータを、請求項1乃至4の何れか一項に記載の質問応答装置における各手段、又は、請求項5又は6に記載の学習装置における各手段として機能させるためのプログラム。
JP2019026546A 2019-02-18 2019-02-18 質問応答装置、学習装置、質問応答方法及びプログラム Active JP7127570B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019026546A JP7127570B2 (ja) 2019-02-18 2019-02-18 質問応答装置、学習装置、質問応答方法及びプログラム
US17/431,383 US20220138601A1 (en) 2019-02-18 2020-02-10 Question responding apparatus, learning apparatus, question responding method and program
PCT/JP2020/005086 WO2020170881A1 (ja) 2019-02-18 2020-02-10 質問応答装置、学習装置、質問応答方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019026546A JP7127570B2 (ja) 2019-02-18 2019-02-18 質問応答装置、学習装置、質問応答方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2020135289A true JP2020135289A (ja) 2020-08-31
JP7127570B2 JP7127570B2 (ja) 2022-08-30

Family

ID=72144596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019026546A Active JP7127570B2 (ja) 2019-02-18 2019-02-18 質問応答装置、学習装置、質問応答方法及びプログラム

Country Status (3)

Country Link
US (1) US20220138601A1 (ja)
JP (1) JP7127570B2 (ja)
WO (1) WO2020170881A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022224462A1 (ja) * 2021-04-23 2022-10-27 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11526692B2 (en) * 2020-02-25 2022-12-13 UST Global (Singapore) Pte. Ltd. Systems and methods for domain agnostic document extraction with zero-shot task transfer
CN116304748B (zh) * 2023-05-17 2023-07-28 成都工业学院 一种文本相似度计算方法、系统、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004133771A (ja) * 2002-10-11 2004-04-30 Just Syst Corp 質問応答装置、質問応答方法、及び質問応答プログラム
JP2016133919A (ja) * 2015-01-16 2016-07-25 日本電信電話株式会社 質問応答方法、装置、及びプログラム
US20160358072A1 (en) * 2015-06-05 2016-12-08 Google Inc. Reading comprehension neural networks
US20170323011A1 (en) * 2014-11-12 2017-11-09 International Business Machines Corporation Answering Questions Via a Persona-Based Natural Language Processing (NLP) System
US20170364586A1 (en) * 2016-06-20 2017-12-21 International Business Machines Corporation Contextual Content Graph for Automatic, Unsupervised Summarization of Content

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004133771A (ja) * 2002-10-11 2004-04-30 Just Syst Corp 質問応答装置、質問応答方法、及び質問応答プログラム
US20170323011A1 (en) * 2014-11-12 2017-11-09 International Business Machines Corporation Answering Questions Via a Persona-Based Natural Language Processing (NLP) System
JP2016133919A (ja) * 2015-01-16 2016-07-25 日本電信電話株式会社 質問応答方法、装置、及びプログラム
US20160358072A1 (en) * 2015-06-05 2016-12-08 Google Inc. Reading comprehension neural networks
US20170364586A1 (en) * 2016-06-20 2017-12-21 International Business Machines Corporation Contextual Content Graph for Automatic, Unsupervised Summarization of Content

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022224462A1 (ja) * 2021-04-23 2022-10-27 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置

Also Published As

Publication number Publication date
JP7127570B2 (ja) 2022-08-30
WO2020170881A1 (ja) 2020-08-27
US20220138601A1 (en) 2022-05-05

Similar Documents

Publication Publication Date Title
JP7120433B2 (ja) 回答生成装置、回答学習装置、回答生成方法、及び回答生成プログラム
US11741109B2 (en) Dialogue system, a method of obtaining a response from a dialogue system, and a method of training a dialogue system
US11210306B2 (en) Dialogue system, a method of obtaining a response from a dialogue system, and a method of training a dialogue system
WO2020170881A1 (ja) 質問応答装置、学習装置、質問応答方法及びプログラム
JP6772213B2 (ja) 質問応答装置、質問応答方法及びプログラム
WO2020170912A1 (ja) 生成装置、学習装置、生成方法及びプログラム
CN110347802B (zh) 一种文本分析方法及装置
JP2022158735A (ja) 学習装置、学習方法、学習プログラム、探索装置、探索方法及び探索プログラム
Banik et al. Gru based named entity recognition system for bangla online newspapers
JP7103264B2 (ja) 生成装置、学習装置、生成方法及びプログラム
Seilsepour et al. Self-supervised sentiment classification based on semantic similarity measures and contextual embedding using metaheuristic optimizer
Jong et al. Improving Performance of Automated Essay Scoring by using back-translation essays and adjusted scores
JP2019082860A (ja) 生成プログラム、生成方法及び生成装置
US20230244934A1 (en) Augmenting machine learning language models using search engine results
WO2019163752A1 (ja) 形態素解析学習装置、形態素解析装置、方法、及びプログラム
KR20200057824A (ko) 단어 교정 시스템
JP7452623B2 (ja) 学習装置、情報処理装置、学習方法、情報処理方法及びプログラム
Branco et al. Sentiment Analysis in Portuguese Restaurant Reviews: Application of Transformer Models in Edge Computing
Charpentier et al. BRENT: Bidirectional Retrieval Enhanced Norwegian Transformer
Dadas Training Effective Neural Sentence Encoders from Automatically Mined Paraphrases
Negash Developing English to dawurootsuwa machine transaltion model using rnn
US20240144049A1 (en) Computerized question answering based on evidence chains
Song et al. A hybrid model for community-oriented lexical simplification
CN115934752B (zh) 一种构建检索模型的方法、电子设备和存储介质
JP2019008476A (ja) 生成プログラム、生成装置及び生成方法

Legal Events

Date Code Title Description
A80 Written request to apply exceptions to lack of novelty of invention

Free format text: JAPANESE INTERMEDIATE CODE: A80

Effective date: 20190228

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210528

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220801

R150 Certificate of patent or registration of utility model

Ref document number: 7127570

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150