JP7295828B2 - 対話中の文脈の因果関係に応じた応答文を推定するプログラム、装置及び方法 - Google Patents

対話中の文脈の因果関係に応じた応答文を推定するプログラム、装置及び方法 Download PDF

Info

Publication number
JP7295828B2
JP7295828B2 JP2020108193A JP2020108193A JP7295828B2 JP 7295828 B2 JP7295828 B2 JP 7295828B2 JP 2020108193 A JP2020108193 A JP 2020108193A JP 2020108193 A JP2020108193 A JP 2020108193A JP 7295828 B2 JP7295828 B2 JP 7295828B2
Authority
JP
Japan
Prior art keywords
word
cause
causality
result
words
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020108193A
Other languages
English (en)
Other versions
JP2022003494A (ja
Inventor
博 楊
剣明 呉
元 服部
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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2020108193A priority Critical patent/JP7295828B2/ja
Publication of JP2022003494A publication Critical patent/JP2022003494A/ja
Application granted granted Critical
Publication of JP7295828B2 publication Critical patent/JP7295828B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ユーザと自然な対話を実現する対話処理装置の技術に関する。特に、雑談対話に適したAI(Artificial Intelligence)の技術に関する。
近年、ユーザとの対話処理装置として、スマートフォン又はタブレットのみならず、「Google Home(登録商標)」「Amazon Echo(登録商標)」のようなスマートスピーカや、「SOTA(登録商標)」「ユニボー(登録商標)」のようなロボット(以下「端末」と称す)が用いられてきている。端末は、ユーザインタフェース機能し、ユーザの発話音声を、サーバとしての対話処理装置へ送信する。
対話処理装置は、その発話文に対して自然な対話となる応答文を推定し、その応答文を端末へ返信する。
そして、端末は、その応答文を音声又はテキストによって、ユーザへ返答する。
このような対話システムとしては、例えば「Siri(登録商標)」や「しゃべってコンシェル(登録商標)」がある。このようなシステムは、ユーザの発話文との因果関係を考慮しながら応答文を生成することができる。
従来、ユーザの発話文に対して事象間の因果関係を持つ応答文を生成し、自然な対話を実現する技術がある。
一般的な従来技術によれば、直前のユーザの発話文に対する応答文を推定する。
また、例えば、ユーザとロボットとが対話を進行する場合、ユーザの直前の発話内容よりも、ユーザ感情や因果事象(発話内容と因果関係を有する事象)に基づいて、応答文を推定する技術がある(例えば特許文献1参照)。
また、ユーザの発話文に応じて、違和感の無い自然なユーザ操作で対話を支援する技術もある(例えば特許文献2参照)。この技術によれば、「状況節」->「行為節」の因果ペアを参照して支援テキストを生成することができる。
特開2010-282404号公報 特願2015-32398号公報
しかしながら、一般的な従来技術によれば、直前のユーザの発話文に対する応答文を推定する。そのために、現に対話中の文脈の中でも、数十秒前に対話した文脈との因果関係を考慮しておらず、対話生成のロジック性が不十分となりやすい。
特許文献1に記載の技術によれば、ユーザ感情や因果事象に特徴が無い場合、結局、直前のユーザの発話文に対する因果関係のみを考慮した応答文を生成しているために、ロジック的な応答文を生成することが困難となる。
また、特許文献2に記載の技術によれば、「状況節」->「行為節」の因果関係ペアしか参照していないために、対話文脈により複数且つ複合的な因果関係の要素を考慮していない。尚、この技術は、ユーザ操作を支援するものであって、雑談対話に対応できるものではない。
そこで、本発明は、現に対話中の文脈の因果関係に応じた応答文を推定するプログラム、装置及び方法を提供することを目的とする。
本発明によれば、
学習段階について、
因果関係ペアとなる原因語及び結果語を蓄積する因果関係ペア蓄積手段と、
因果関係を持つ第1の原因語から第1の結果語へ結び、第1の原因語を結果語とする他の第2の原因語から当該第1の原因語へ結び、第1の結果語から当該第1の結果語を原因語とする他の第3の結果語への、因果関係ネットワークを生成する因果関係ネットワーク生成手段と
してコンピュータを機能させ、
推定段階について、
ユーザからの原因語又は結果語に対して、因果関係ネットワークによる他方の結果語又は原因語を含む応答文を選択する制御手段と
してコンピュータを機能させることを特徴とする。
本発明のプログラムにおける他の実施形態によれば、
推定段階について、
因果関係ネットワークに基づいて、ユーザから提供される文のリンクを記録する対話ネットワーク記録手段と、
ユーザの発話文に対して、候補となる複数の応答文を生成する応答文生成エンジンと
して更にコンピュータを機能させ、
制御手段は、対話ネットワーク記録手段に現に記録された1つ以上の原因語及び結果語と結ばれた原因語又は結果語を含む応答文を選択する
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
応答文生成エンジンは、発話文及び応答文の間の特徴を抽出可能なプログラムであり、教師データとしての対話コーパスから、発話文をエンコーダ側に入力し、デコーダ側から応答文を出力するように学習したものである
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
学習段階について、
教師データとなる対話コーパスを用いて、因果関係ペアとなる原因語及び結果語を抽出し、当該原因語及び結果語を因果関係ペア蓄積手段へ出力する因果関係ペア抽出手段と
して更にコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
学習段階について、
因果関係ネットワーク生成手段は、
因果関係ペアとなる原因語及び結果語のリンクの出現頻度を更に計数し、
複数の原因語から1つの結果語へ結ぶリンクの出現頻度に対する、各原因語から1つの結果語へ結ぶ出現頻度の割合を遷移確率として、当該リンクに付与し、
1つの原因語から複数の結果語へ向かうリンクの出現頻度に対する、1つの原因語から各結果語へ結ぶ出現頻度の割合を遷移確率として、当該リンクに付与する
ようにコンピュータを機能させ、
推定段階について、
制御手段は、ユーザの発話文に含まれる原因語又は結果語に対して、因果関係ネットワークによって結ばれた他方の結果語又は原因語を含む複数の応答文の中で、遷移確率が最も高い他方の結果語又は原因語を含む応答文を選択する
ようにコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
因果関係ペア抽出手段は、
教師データとしての対話コーパスから、原因語と結果語との間で因果関係の接続助詞を含む学習文章を選別する因果関係学習文章選別手段と、
学習文章を入力層へ入力し、第1出力層から原因語が出力され、第2出力層から結果語が出力されるように、マルチタスク深層学習モデルとして学習した因果関係ペア推定エンジンと
してコンピュータを機能させることも好ましい。
本発明のプログラムにおける他の実施形態によれば、
因果関係ペア推定エンジンは、入力層と、埋め込み層と、当該埋め込み層から分岐した第1再帰ネットワーク層、第1識別層及び第1出力層と、当該埋め込み層から分岐した第2再帰ネットワーク層、第2識別層及び第2出力層とを有する
ようにコンピュータを機能させることも好ましい。
本発明によれば、
学習段階について、
因果関係ペアとなる原因語及び結果語を蓄積する因果関係ペア蓄積手段と、
因果関係を持つ第1の原因語から第1の結果語へ結び、第1の原因語を結果語とする他の第2の原因語から当該第1の原因語へ結び、第1の結果語から当該第1の結果語を原因語とする他の第3の結果語への、因果関係ネットワークを生成する因果関係ネットワーク生成手段と
を有し、
推定段階について、
ユーザからの原因語又は結果語に対して、因果関係ネットワークによる他方の結果語又は原因語を含む応答文を選択する制御手段と
を有することを特徴とする。
本発明によれば、
対話処理装置は、
学習段階について、
因果関係ペアとなる原因語及び結果語を蓄積する第1のステップと、
因果関係を持つ第1の原因語から第1の結果語へ結び、第1の原因語を結果語とする他の第2の原因語から当該第1の原因語へ結び、第1の結果語から当該第1の結果語を原因語とする他の第3の結果語への、因果関係ネットワークを生成する第2のステップとを実行し、
推定段階について、
ユーザの発話文に含まれる原因語又は結果語に対して、因果関係ネットワークによって結ばれた他方の結果語又は原因語を含む応答文を選択するステップと
を実行することを特徴とする。
本発明のプログラム、装置及び方法によれば、現に対話中の文脈の因果関係に応じた応答文を推定することができる。これによって、ユーザの対話意欲を高め、雑談のような対話を実現することができる。
本発明における対話処理装置の機能構成図である。 因果関係学習文章選別部の説明図である。 因果関係ペア推定エンジンの機能構成図である。 因果関係ネットワークの構築過程を表す説明図である。 因果関係ネットワークに遷移確率を付与した説明図である。 推定段階における応答文生成エンジン及び制御部の説明図である。 推定段階における応答文の選択を表す第1の説明図である。 推定段階における応答文の選択を表す第2の説明図である。 従来技術と比較した本発明の応答文の例を表す説明図である。
以下、本発明の実施の形態について、図面を用いて詳細に説明する。
図1は、本発明における対話処理装置の機能構成図である。
対話処理装置1は、ユーザとの間で自然な対話を実現するものであり、ユーザの発話文に対して応答文を生成する。
図1によれば、サーバ機能を有する対話処理装置1は、ユーザインタフェース機能を有する端末2と通信する。端末2は、ユーザに対する入出力デバイスとして、マイクによってユーザの音声を取得し、スピーカによってユーザへ発声するものであってもよい。また、ユーザからテキストベースの発話文を入力し、応答文を表示するものであってもよい。
尚、音声認識機能は、対話処理装置1に搭載されたものであってもよいし、端末2に搭載されていてもよい。
本発明によれば、対話処理装置1は、複数の機械学習エンジンを搭載しており、<学習段階>及び<推定段階>に分けられる。機械学習エンジンは、学習段階に、教師データによって学習モデルを構築する。
<学習段階>
対話処理装置1は、第1の教師データと、第2の教師データとを入力する。
第1の教師データは、インターネット上で、自然言語の文章を構造化して大規模に集積した大量の「コーパス」である。これは、例えばウィキペディア(Wikipedia)(登録商標)のような百科事典であって、自然言語として正当な文章群である。勿論、Webサイトにおける自然言語知識のコンテンツの文章群であってもよい。
第2の教師データは、発話文と応答文とからなる対話ログの群であって、過去に正当に対話された「対話コーパス」である。
第1の教師データ及び第2に教師データは、対話処理装置1自らが記憶しておく必要はないが、学習段階に外部から入力する必要がある。
対話処理装置1は、学習段階の機能部として、因果関係ペア抽出部11(因果関係学習文章選別部111及び因果関係ペア推定エンジン112)と、因果関係ペア蓄積部12と、因果関係ネットワーク生成部13とを有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、対話処理装置の学習方法としても理解できる。
[因果関係ペア抽出部11]
因果関係ペア抽出部11は、第1の教師データとなるコーパスを用いて、因果関係ペアとなる原因語及び結果語を抽出する。抽出した当該原因語及び結果語は、因果関係ペア蓄積部12へ出力される。
{(原因語)->(結果語)}
因果関係ペア抽出部11は、因果関係学習文章選別部111と、因果関係ペア推定エンジン112とからなる。
(因果関係学習文章選別部111)
因果関係学習文章選別部111は、第1の教師データとしてのコーパスから、原因語と結果語との間で因果関係の「接続助詞」を含む学習文章を選別する。
図2は、因果関係学習文章選別部の説明図である。
因果関係学習文章選別部111は、大規模なコーパスに含まれる文章の群から、接続助詞テーブルに登録された「接続助詞」を含む学習文章を選別する。接続助詞を含む学習文章は、接続助詞を挟んで、因果関係となる原因語及び結果語を含む場合が多い。
接続助詞テーブルは、文章中の前後を因果関係で接続する接続助詞を登録したものである。「接続助詞」とは、前文と後文との間に因果関係を構築する助詞であり、因果関係の手がかりとなるものである。
例えば、以下のような助詞がある。
「~ため、~」「~から、~」「~により、~」「~によって、~」
「~を背景に、~」「~を受け、~」「~の結果、~」「~をきっかけに、~」
「~の影響、~」「~の原因、~」「~を行うと、~」「~すれば、~」
「~しないと、~」「~に伴い、~」「~を反映し、~」
図2によれば、因果関係学習文章選別部111は、例えば以下のような学習文章を選別し、因果関係ペア推定エンジン112へ出力する。
選別された学習文章 :「新型ウイルスの{ため}、内定取り消しになった」
(因果関係ペア推定エンジン112)
因果関係ペア推定エンジン112は、因果関係を持つ学習文章を入力層へ入力し、第1出力層から原因語が出力され、第2出力層から結果語が出力されるように、マルチタスク深層学習モデルとして学習したものである。
図3は、因果関係ペア推定エンジンの機能構成図である。
因果関係ペア推定エンジン112は、以下のように2つの系列に分岐して構成される。
入力層->埋め込み層->第1再帰ネットワーク層->第1識別層->原因語出力層
->第2再帰ネットワーク層->第2識別層->結果語出力層
入力層は、学習文章を形態素解析し、単語毎に例えばone-hotのようなベクトルに変換し、これらベクトル群を入力とする。
埋め込み層(Embedding Layer)は、入力層から出力された数値型の配列から、埋め込み表現を学習する。単語の埋め込み表現としては 例えばword2vecや、TensorFlowのembedding_lookupがある。
第1再帰ネットワーク層及び第2再帰ネットワーク層は、同一のRNN(Recurrent Neural Network)である。RNNは、学習文章の時系列データをそのまま入力することによって、時間依存性を学習することができるモデルである。RNNとしては、例えばLSTM(Long Short-Term Memory)やGRU(Gated Recurrent Unit)を用いることができる。LSTMは、複数のブロックを並べて、各ブロックが、誤差を内部に留まらせて勾配消失を防ぐセルと、必要な情報を必要なタイミングで保持・消却させる入力ゲート、出力ゲート及び忘却ゲートとから構成されている。GRUは、LSTMを簡略化したものであり、リセットゲートと更新ゲートとからなる。
第1識別層及び第2識別層は、同一の識別器(Discriminator)であり、第1識別層は原因語を識別し、第2識別層は結果語を識別する。
最終的に、原因語出力層は原因語を出力し、結果語出力層は結果語を出力する。
例えば以下の学習文章に対して、因果関係ペアを抽出するように学習する。
入力された学習文章 :「内定取り消し相次ぐ、新型ウイルス影響の{ため}」
出力される因果関係ペア:原因語(新型ウイルス)->結果語(内定取り消し)}
[因果関係ペア蓄積部12]
因果関係ペア蓄積部12は、因果関係ペアとなる原因語及び結果語を蓄積する。例えば以下のような因果関係ペアを蓄積しているとする。
(原因語) ->(結果語)
{(新型ウイルス) ->(内定取り消し)}
{(卒業できなかった)->(内定取り消し)}
{(内定取り消し) ->(会社と交渉) }
{(内定取り消し) ->(大学へ相談) }
[因果関係ネットワーク生成部13]
因果関係ネットワーク生成部13は、以下のように文を結んだ因果関係ネットワークを生成する。
・因果関係を持つ第1の原因語から第1の結果語へ結ぶ
・第1の原因語を結果語とする他の第2の原因語から当該第1の原因語へ結ぶ
・第1の結果語から当該第1の結果語を原因語とする他の第3の結果語へ結ぶ
ここで、因果関係ネットワーク生成部13は、入力された原因語及び結果語のリンクが、因果関係ネットワークに存在していない場合、新たなリンクを結んでネットワークを構築していく。一方で、入力された原因語及び結果語のリンクが、因果関係ネットワークに既に存在する場合、そのリンクの出現回数を計数していく。
図4は、因果関係ネットワークの構築過程を表す説明図である。
図4(a)によれば、{(新型ウイルス)->(内定取り消し)}が入力され、因果関係を持つ第1の原因語(新型ウイルス)から第1の結果語(内定取り消し)へ結ぶ。
(新型ウイルス)->(内定取り消し)
図4(b)によれば、{(卒業できなかった)->(内定取り消し)}が入力され、第1の原因語(内定取り消し)を結果語とする他の第2の原因語(卒業できなかった)から当該第1の原因語(内定取り消し)へ結ぶ。
(新型ウイルス) ->(内定取り消し)
(卒業できなかった)->
図4(c)によれば、{(内定取り消し)->(会社と交渉)}が入力され、第1の結果語(内定取り消し)から当該第1の結果語(内定取り消し)を原因語とする他の第3の結果語(会社と交渉)へ結ぶ。
(新型ウイルス) ->(内定取り消し)
(卒業できなかった)->(内定取り消し)
(内定取り消し)->(会社と交渉)
図4(d)は、によれば、{(内定取り消し)->(大学へ相談)}が入力され、第1の結果語(内定取り消し)から当該第1の結果語(内定取り消し)を原因語とする他の第3の結果語(大学へ相談)へ結ぶ。
(新型ウイルス) ->(内定取り消し)
(卒業できなかった)->(内定取り消し)
(内定取り消し)->(会社と交渉)
(内定取り消し)->(大学へ相談)
図5は、因果関係ネットワークに遷移確率を付与した説明図である。
図5によれば、因果関係ネットワーク生成部13は、因果関係ペアとなる原因語及び結果語のリンクの出現頻度を更に計数する。
そして、因果関係ネットワーク生成部13は、以下のように遷移確率を算出する。
(1)複数の原因語から1つの結果語へ結ぶリンクの出現頻度に対する、各原因語から1つの結果語へ結ぶ出現頻度の割合を遷移確率として、当該リンクに付与する。
(2)1つの原因語から複数の結果語へ向かうリンクの出現頻度に対する、1つの原因語から各結果語へ結ぶ出現頻度の割合を遷移確率として、当該リンクに付与する。
図5(a)によれば、以下のように算出される。
(新型ウイルス -> 内定取り消し) :出現頻度200
(卒業出来なかった -> 内定取り消し):出現頻度120
遷移確率P(内定取り消し|新型ウイルス) =200/(120+200)=0.625
遷移確率P(内定取り消し|卒業出来なかった)=120/(120+200)=0.375
図5(b)によれば、以下のように算出される。
(内定取り消し -> 会社と交渉) :出現頻度90
(内定取り消し -> 大学へ相談) :出現頻度110
遷移確率P(会社と交渉|内定取り消し) =90/(90+110) =0.45
遷移確率P(大学へ相談|内定取り消し) =110/(90+110)=0.55
図6は、推定段階における応答文生成エンジン及び制御部の説明図である。
<推定段階>
対話処理装置1は、推定段階の機能部として、対話ネットワーク記録部14と、応答文生成エンジン15と、制御部16とを有する。これら機能構成部は、装置に搭載されたコンピュータを機能させるプログラムを実行することによって実現される。また、これら機能構成部の処理の流れは、対話処理装置の推定方法としても理解できる。
[対話ネットワーク記録部14]
対話ネットワーク記録部14は、因果関係ネットワークに基づいて、ユーザと現に対話中の文のリンクを記録する。因果関係ネットワークは、因果関係ネットワーク生成部13によって生成されたものであり、制御部16における発話文及び応答文に応じてノート(文)を辿っていく。
図6によれば、対話ネットワーク記録部14は、制御部16から、「内定取り消し」が入力された場合、その「内定取り消し」とリンクする原因語及び結果語の中で、最も遷移確率が高い「新型ウイルス」が参照されている。
[応答文生成エンジン15]
応答文生成エンジン15は、ユーザの発話文に対して、候補となる複数の応答文を生成する。ここで、候補となる応答文は、複数、制御部16へ出力される。
応答文生成エンジン15は、学習段階では、第2の教師データとしての対話コーパス(発話文と応答文との対)を用いて、因果関係に拘わらず、発話文と応答文との関係の特徴を学習する。具体的には、発話文を、形態素分析によって形態素に区分した上でエンコーダ側に入力し、応答文を、形態素分析によって形態素に区分した上でデコーダ側に入力して学習する。
応答文生成エンジン15は、発話文及び応答文の間の特徴を抽出可能なSeq2Seqであってもよいし、seq2seq+attentionやtransformのような改良モデルであってもよい。
seq2seqは、形態素文字列を入力して、別の形態素文字列を出力する置き換えルールを学習するニューラルネットワークである。これによって、発話文に対して1つ以上の応答文を学習していく。勿論、文字列の依存関係を学習可能なRNN(Recurrent Neural Network)の一種である例えばLSTM(Long Short-Term Memory)であってもよい。
これによって、応答文生成エンジン15は、推定段階では、エンコーダ側に発話文が入力されると、デコーダ側から、複数の応答文が出力されるようになる。このとき、候補となるスコアに応じて、複数の応答文を出力する。
図6によれば、応答文生成エンジン15は、制御部16から、以下の発話文が入力されたとする。
ユーザ:「俺、内定取り消された!」
これに対して、応答文生成エンジン15は、以下の複数の応答文を出力する。
(応答文候補1:そうですか?)
(応答文候補2:新型ウイルスの影響ですか?)
(応答文候補3:卒業できなかったのが原因ですか?)
[制御部16]
制御部16は、ユーザの発話文に含まれる原因語又は結果語に対して、因果関係ネットワークによって結ばれた他方の結果語又は原因語を含む応答文を選択する。因果関係ネットワークは、現に対話中にやりとりした文脈を考慮するべく、対話ネットワーク記録部14を参照する。制御部16は、対話ネットワーク記録部14に現に記録された1つ以上の原因語及び結果語と結ばれた原因語又は結果語を含む応答文を選択する。
また、制御部16は、ユーザの発話文に含まれる原因語又は結果語に対して、因果関係ネットワークによって結ばれた他方の結果語又は原因語を含む複数の応答文の中で、遷移確率が最も高い他方の結果語又は原因語を含む応答文を選択するものであってもよい。
尚、発話文に対する原因語又は結果語を得るのみであれば、因果関係ネットワーク生成部13によって生成された因果関係ネットワークを参照してもよい。
そして、制御部16は、応答文生成エンジン15から出力された複数の応答文の中で、応答文のリランキング機能によって最適な応答文を選択する。
図7は、推定段階における応答文の選択を表す第1の説明図である。
図7(a)によれば、ユーザから、以下の発話文が入力されたとする。
発話文:「俺、内定取り消された!」
制御部16は、対話ネットワーク記録部14の因果関係ネットワークを参照する。ユーザの発話文に含まれる「内定取り消し」とリンクする文として、以下のものがある。
遷移確率P(内定取り消し|新型ウイルス) =200/(120+200)=0.625
遷移確率P(内定取り消し|卒業出来なかった)=120/(120+200)=0.375
遷移確率P(会社と交渉 |内定取り消し) =90/(90+110) =0.450
遷移確率P(大学へ相談 |内定取り消し) =110/(90+110) =0.550
ここでは、「新型ウイルス」の遷移確率が最も高いことがわかる。
これに対して、応答文生成エンジン15は、制御部16へ以下の応答文を出力している。
(応答文候補1:そうですか?)
(応答文候補2:新型ウイルスの影響ですか?)
(応答文候補3:卒業できなかったのが原因ですか?)
図7(b)によれば、制御部16は、「新型ウイルス」を含む応答文候補2を選択する。
(応答文候補2:新型ウイルスの影響ですか?)
図8は、推定段階における応答文の選択を表す第2の説明図である。
図8(a)によれば、ユーザから、以下の発話文が入力されたとする。
発話文:「いや、実は、卒業できなかった。」
制御部16は、対話ネットワーク記録部14の因果関係ネットワークを参照する。ユーザの発話文に含まれる「卒業できなかった」とリンクする文として、以下のものがある。
遷移確率P(内定取り消し |卒業できなかった)=0.275
遷移確率P(留年する |卒業できなかった)=0.500
遷移確率P(アルバイトをする|卒業できなかった)=0.225
ここでは、「留年する」の遷移確率が最も高いことがわかる。しかしながら、ユーザと現に対話中のやりとりの中で、因果関係ネットワークにおける{(新型ウイルス)->(内定取り消し)}を辿っていることが認識できる。その場合、制御部16は、対話中にやりとりした「内定取り消し」を辿るようにする。そして、制御部16は、ユーザの発話文に含まれる「卒業できなかった」->「内定取り消し」とリンクし、対話中に辿っていない「会社と交渉」「大学へ相談」へ向かう。
遷移確率P(会社と交渉 |内定取り消し) =90/(90+110) =0.450
遷移確率P(大学へ相談 |内定取り消し) =110/(90+110) =0.550
そして、リンクを辿って、以下のように遷移確率を算出する。
遷移確率P(大学へ相談|内定取り消し,卒業できなかった)=0.550*0.275
遷移確率P(会社と交渉|内定取り消し,卒業できなかった)=0.450*0.275
遷移確率P(留年する |内定取り消し,卒業できなかった)=0*0.5
遷移確率P(アルバイトをする|内定取り消し,卒業できなかった)=0.225*0
ここでは、「大学へ相談」の遷移確率が最も高いことがわかる。
これに対して、応答文生成エンジン15は、制御部16へ以下の応答文を出力している。
(応答文候補1:留年することはできませんか?)
(応答文候補2:アルバイトをすればどう?)
(応答文候補3:大学へ相談してみたらどうでしょうか?)
このとき、制御部16は、因果関係ネットワークを参照する。ここで、遷移確率Pが高い「大学へ相談」を含む応答文候補3が選択される。
(応答文候補3:大学へ相談してみたらどうでしょうか?)
制御部16は、ユーザの発話文を端末2から受信し、その応答文を端末2へ返信する。端末2のユーザインタフェース機能が、キー入力可能であってディスプレイ表示可能であれば、制御部16は、発話文及び応答文はテキストベースで、端末2との間で送受信することができる。
制御部16は、端末2のユーザインタフェース機能に応じて、ユーザの発話音声の音声認識機能、及び、ユーザへの応答文の音声変換機能を有するものであってもよい。音声認識機能は、端末2のマイクによって取得されたユーザの発話音声を、テキストベースの発話文に変換する。音声変換機能は、返信すべき応答文を、音声信号に変換する。
この場合、制御部16は、ユーザの発話音声データを端末2から受信し、その発話音声データをテキストの発話文に変換する。また、その応答文を音声データに変換し、その音声データを端末2へ送信する。
最後に、従来技術の特許文献1及び特許文献2と、本発明との相違を表す、発話文及び応答文のサンプル例を説明する。
図9は、従来技術と比較した本発明の応答文の例を表す説明図である。
図9(a)によれば、特許文献1と本発明との例を表している。
(特許文献1)
発話文:「冬になりました!」
応答文:「時間の流れは速いものですね!」
発話文:「北海道に行きたいです!」
応答文:(・・・)
特許文献1によれば、ユーザ感情や因果事象に特徴が無い場合、結局、直前のユーザの発話文に対する因果関係のみを考慮した応答文を生成する。そのために、「時間の流れが速い」に対して、ユーザの発話文が「北海道に行きたい」となっており、因果関係を抽出できず、ロジック的な応答文を生成することが困難となる。
これに対し、本発明によれば、以下のような例となる。
(本発明)
発話文:「冬になりました!」
応答文:「時間の流れは速いものですね!」
発話文:「北海道に行きたいです!」
応答文:「冬に北海道に行くと、寒いですよ。」
本発明によれば、「冬になる->寒い」「北海度->寒い」の因果関係ネットワークを構築しているために、現に対話中の文脈からロジック的な応答文を生成することができる。
図9(b)によれば、特許文献2と本発明との例を表している。
(特許文献2)
発話文:「やっと好きな人と出会えますよ!」
応答文:「よかったですね」
発話文:「緊張する。」
応答文:「遊んでリラックスはいかがでしょうか?」
(地図から遊び所を検索する)
特許文献2によれば、「状況節」->「行為節」の簡単な因果関係ペアだけでなく、複数・複合の因果関係ペア(感情->行為、行為->行為、行為->状況など)も考慮する。しかし、直前の感情や行為しか考慮しないために、ユーザの直前の発話文のみに適した応答文しか生成しない。
即ち、「好きな人との出会い->幸せ」「緊張する->リラックスする」の因果関係しか考慮しておらず、「好きな人との出会い->・・・->リラックスする」の結びを認識することはできない。
これに対し、本発明によれば、以下のような例となる。
(本発明)
発話文:「やっと好きな人と出会えますよ!」
応答文:「よかったですね」
発話文:「緊張する。」
応答文:「緊張しても、幸せになるはず」
本発明によれば、「好きな人との出会い->緊張する->リラックスする」の因果関係ネットワークを構築しているために、現に対話中の文脈からロジック的な応答文を生成することができる。
前述したように、従来技術によれば、学習段階には、単語ペアのみを照合するために、その単語ペア以外の文脈の特徴量を全く考慮してない。前述の例によれば、因果関係ペア{(冬になる)->(寒い)}には、「北海道」や「時間の流れが速い」のような文との特徴量が、全く含まれないこととなる。推定段階には、実際のユーザの発話文に対して、予め学習された因果関係ペアが完全一致で照合しないと、リランキング(最適な応答結果の再選定)を実現できないという問題もある。
また、応答文を生成する学習エンジンを用いた場合、第2の教師データとなる対話データ(発話文及び応答文)に依存しすぎてしまう、という問題もある。
これに対し、本発明は、因果関係ネットワークを構築しているために、1つの因果関係ペアに対して、その周辺の因果関係ペアとの繋がりを認識することができる。
また、深層学習に基づく応答文生成エンジンから生成された複数の候補となる応答文から、直前のユーザの発話文に限らず、現に対話中の文脈の因果関係の繋がりから、リンランキングによって応答文を選択することができる。
以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、現に対話中の文脈の因果関係に応じた応答文を推定することができる。これによって、ユーザの対話意欲を高め、雑談のような対話を実現することができる。
前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。
1 対話処理装置
11 因果関係ペア抽出部
111 因果関係学習文章選別部
112 因果関係ペア推定エンジン
12 因果関係ペア蓄積部
13 因果関係ネットワーク生成部
14 対話ネットワーク記録部
15 応答文生成エンジン
16 制御部
2 端末

Claims (9)

  1. 学習段階について、
    因果関係ペアとなる原因語及び結果語を蓄積する因果関係ペア蓄積手段と、
    因果関係を持つ第1の原因語から第1の結果語へ結び、第1の原因語を結果語とする他の第2の原因語から当該第1の原因語へ結び、第1の結果語から当該第1の結果語を原因語とする他の第3の結果語への、因果関係ネットワークを生成する因果関係ネットワーク生成手段と
    してコンピュータを機能させ、
    推定段階について、
    ユーザからの原因語又は結果語に対して、因果関係ネットワークによる他方の結果語又は原因語を含む応答文を選択する制御手段と
    してコンピュータを機能させることを特徴とするプログラム。
  2. 推定段階について、
    因果関係ネットワークに基づいて、ユーザから提供される文のリンクを記録する対話ネットワーク記録手段と、
    ユーザの発話文に対して、候補となる複数の応答文を生成する応答文生成エンジンと
    して更にコンピュータを機能させ、
    制御手段は、対話ネットワーク記録手段に現に記録された1つ以上の原因語及び結果語と結ばれた原因語又は結果語を含む応答文を選択する
    ようにコンピュータを機能させることを特徴とする請求項1に記載のプログラム。
  3. 応答文生成エンジンは、発話文及び応答文の間の特徴を抽出可能なプログラムであり、教師データとしての対話コーパスから、発話文をエンコーダ側に入力し、デコーダ側から応答文を出力するように学習したものである
    ようにコンピュータを機能させることを特徴とする請求項2に記載のプログラム。
  4. 学習段階について、
    教師データとなる対話コーパスを用いて、因果関係ペアとなる原因語及び結果語を抽出し、当該原因語及び結果語を因果関係ペア蓄積手段へ出力する因果関係ペア抽出手段と
    して更にコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載のプログラム。
  5. 学習段階について、
    因果関係ネットワーク生成手段は、
    因果関係ペアとなる原因語及び結果語のリンクの出現頻度を更に計数し、
    複数の原因語から1つの結果語へ結ぶリンクの出現頻度に対する、各原因語から1つの結果語へ結ぶ出現頻度の割合を遷移確率として、当該リンクに付与し、
    1つの原因語から複数の結果語へ向かうリンクの出現頻度に対する、1つの原因語から各結果語へ結ぶ出現頻度の割合を遷移確率として、当該リンクに付与する
    ようにコンピュータを機能させ、
    推定段階について、
    制御手段は、ユーザの発話文に含まれる原因語又は結果語に対して、因果関係ネットワークによって結ばれた他方の結果語又は原因語を含む複数の応答文の中で、遷移確率が最も高い他方の結果語又は原因語を含む応答文を選択する
    ようにコンピュータを機能させることを特徴とする請求項4に記載のプログラム。
  6. 因果関係ペア抽出手段は、
    教師データとしての対話コーパスから、原因語と結果語との間で因果関係の接続助詞を含む学習文章を選別する因果関係学習文章選別手段と、
    学習文章を入力層へ入力し、第1出力層から原因語が出力され、第2出力層から結果語が出力されるように、マルチタスク深層学習モデルとして学習した因果関係ペア推定エンジンと
    してコンピュータを機能させることを特徴とする請求項4又は5に記載のプログラム。
  7. 因果関係ペア推定エンジンは、入力層と、埋め込み層と、当該埋め込み層から分岐した第1再帰ネットワーク層、第1識別層及び第1出力層と、当該埋め込み層から分岐した第2再帰ネットワーク層、第2識別層及び第2出力層とを有する
    ようにコンピュータを機能させることを特徴とする請求項6に記載のプログラム。
  8. 学習段階について、
    因果関係ペアとなる原因語及び結果語を蓄積する因果関係ペア蓄積手段と、
    因果関係を持つ第1の原因語から第1の結果語へ結び、第1の原因語を結果語とする他の第2の原因語から当該第1の原因語へ結び、第1の結果語から当該第1の結果語を原因語とする他の第3の結果語への、因果関係ネットワークを生成する因果関係ネットワーク生成手段と
    を有し、
    推定段階について、
    ユーザからの原因語又は結果語に対して、因果関係ネットワークによる他方の結果語又は原因語を含む応答文を選択する制御手段と
    を有することを特徴とする対話処理装置。
  9. 対話処理装置は、
    学習段階について、
    因果関係ペアとなる原因語及び結果語を蓄積する第1のステップと、
    因果関係を持つ第1の原因語から第1の結果語へ結び、第1の原因語を結果語とする他の第2の原因語から当該第1の原因語へ結び、第1の結果語から当該第1の結果語を原因語とする他の第3の結果語への、因果関係ネットワークを生成する第2のステップとを実行し、
    推定段階について、
    ユーザの発話文に含まれる原因語又は結果語に対して、因果関係ネットワークによって結ばれた他方の結果語又は原因語を含む応答文を選択するステップと
    を実行することを特徴とする対話処理方法。
JP2020108193A 2020-06-23 2020-06-23 対話中の文脈の因果関係に応じた応答文を推定するプログラム、装置及び方法 Active JP7295828B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020108193A JP7295828B2 (ja) 2020-06-23 2020-06-23 対話中の文脈の因果関係に応じた応答文を推定するプログラム、装置及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020108193A JP7295828B2 (ja) 2020-06-23 2020-06-23 対話中の文脈の因果関係に応じた応答文を推定するプログラム、装置及び方法

Publications (2)

Publication Number Publication Date
JP2022003494A JP2022003494A (ja) 2022-01-11
JP7295828B2 true JP7295828B2 (ja) 2023-06-21

Family

ID=79246955

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020108193A Active JP7295828B2 (ja) 2020-06-23 2020-06-23 対話中の文脈の因果関係に応じた応答文を推定するプログラム、装置及び方法

Country Status (1)

Country Link
JP (1) JP7295828B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019101065A (ja) 2017-11-28 2019-06-24 トヨタ自動車株式会社 音声対話装置、音声対話方法及びプログラム
JP2019133229A (ja) 2018-01-29 2019-08-08 国立研究開発法人情報通信研究機構 質問応答システムの訓練データの作成方法及び質問応答システムの訓練方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1185747A (ja) * 1997-09-08 1999-03-30 Hideo Shoji 正否を判断できる文判断システム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019101065A (ja) 2017-11-28 2019-06-24 トヨタ自動車株式会社 音声対話装置、音声対話方法及びプログラム
JP2019133229A (ja) 2018-01-29 2019-08-08 国立研究開発法人情報通信研究機構 質問応答システムの訓練データの作成方法及び質問応答システムの訓練方法

Also Published As

Publication number Publication date
JP2022003494A (ja) 2022-01-11

Similar Documents

Publication Publication Date Title
US11568855B2 (en) System and method for defining dialog intents and building zero-shot intent recognition models
Cahn CHATBOT: Architecture, design, & development
US10679613B2 (en) Spoken language understanding system and method using recurrent neural networks
KR102170563B1 (ko) 인공 지능에 기반한 휴먼 머신 인터랙티브 방법 및 장치
US20190385051A1 (en) Virtual agent with a dialogue management system and method of training a dialogue management system
CN1321401C (zh) 语音识别设备、语音识别方法、会话控制设备以及会话控制方法
CN114556354A (zh) 自动确定和呈现来自事件的个性化动作项
Khare et al. Self-supervised learning with cross-modal transformers for emotion recognition
AU2019219717B2 (en) System and method for analyzing partial utterances
US11562744B1 (en) Stylizing text-to-speech (TTS) voice response for assistant systems
CN115329779B (zh) 一种多人对话情感识别方法
JP2018055548A (ja) 対話装置、学習装置、対話方法、学習方法、およびプログラム
US11132994B1 (en) Multi-domain dialog state tracking
CN114911932A (zh) 基于主题语义增强的异构图结构多会话者情感分析方法
CN111554293A (zh) 语音识别中噪音的过滤方法、装置、介质及对话机器人
CN114676259B (zh) 一种基于因果感知交互网络的对话情绪识别方法
Schmitt et al. Towards adaptive spoken dialog systems
CN114005446A (zh) 情感分析方法、相关设备及可读存储介质
US11741945B1 (en) Adaptive virtual assistant attributes
Jain et al. Comparative analysis and development of voice-based chatbot system for differently-abled
JP7295828B2 (ja) 対話中の文脈の因果関係に応じた応答文を推定するプログラム、装置及び方法
Hung et al. Context‐Centric Speech‐Based Human–Computer Interaction
KR20200011251A (ko) 대화 인지를 위한 규칙 생성 방법, 규칙 기반의 추론 방법 및 그 방법이 적용된 장치
Grifoni et al. DAMA: a dynamic classification of multimodal ambiguities
KR20200023620A (ko) 대화 인지를 위한 규칙기반의 사용자 의도 추론 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220526

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230523

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230609

R150 Certificate of patent or registration of utility model

Ref document number: 7295828

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150