JP6873805B2 - Dialogue support system, dialogue support method, and dialogue support program - Google Patents
Dialogue support system, dialogue support method, and dialogue support program Download PDFInfo
- Publication number
- JP6873805B2 JP6873805B2 JP2017085246A JP2017085246A JP6873805B2 JP 6873805 B2 JP6873805 B2 JP 6873805B2 JP 2017085246 A JP2017085246 A JP 2017085246A JP 2017085246 A JP2017085246 A JP 2017085246A JP 6873805 B2 JP6873805 B2 JP 6873805B2
- Authority
- JP
- Japan
- Prior art keywords
- dialogue
- intention
- topic
- intention understanding
- 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
Links
Images
Landscapes
- Machine Translation (AREA)
- Document Processing Apparatus (AREA)
Description
本発明は、対話支援システム、対話支援方法、及び対話支援プログラムに関する。 The present invention relates to a dialogue support system, a dialogue support method, and a dialogue support program.
従来のテキスト(言語)対話システム(以下、従来システムという。)には、意図理解部と意図理解モデルを利用したものがある。例えば、意図理解部は、入力されたテキストにより示される発話者の意図(以下、トピックともいう。)を、意図理解モデルを用いて推定する。意図理解モデルには、想定される入力テキストとトピックとの対応関係が定義されている。例えば意図理解モデルにおいて、入力テキストとして想定される「通帳を作りたい」と、トピックである「口座開設の手続き」とが紐付いて定義されている場合、意図理解部は、実際の入力テキスト(例えば、「通帳を作りたいです。」)と、想定されるテキスト(「通帳を作りたい」)とを比較し、両者の類似度を計算する。そして、その類似度が高い場合、意図理解部は、その入力テキストである「通帳を作りたい」に対応する「口座開設の手続き」をトピックとして推定する。 Some conventional text (language) dialogue systems (hereinafter referred to as conventional systems) use an intention understanding unit and an intention understanding model. For example, the intention understanding unit estimates the speaker's intention (hereinafter, also referred to as a topic) indicated by the input text by using the intention understanding model. The intent understanding model defines the correspondence between the expected input text and the topic. For example, in the intention understanding model, when "I want to make a passbook", which is assumed as an input text, and "Procedure for opening an account", which is a topic, are defined in association with each other, the intention understanding department performs the actual input text (for example, , "I want to make a passbook.") And the expected text ("I want to make a passbook") are compared, and the degree of similarity between the two is calculated. Then, when the degree of similarity is high, the intention understanding department estimates the "procedure for opening an account" corresponding to the input text "I want to make a passbook" as a topic.
このような従来システムには、例えば、特許文献1の言語処理装置がある。すなわち、特許文献1には、遷移前状態と入力単語と出力と正の値である単語重み値情報と遷移先情報とを含む組である単語遷移データと、単数又は複数の単語に対応する言語理解結果であるコンセプトと、該コンセプトに対応する正の値であるコンセプト重み値情報とを含む組であるコンセプト重みデータと、遷移前状態、任意の単語にマッチするフィラー、負の値であるフィラー重み情報及び遷移先状態を含む組であるフィラー遷移データと、を言語理解モデルとして記憶する言語理解モデル記憶部と、入力される単語系列に含まれる単語と現状態とに基づき、前記言語理解モデル記憶部から読み出した前記単語遷移データに従って、定義された前記出力を理解結果候補として出力し、単語重み値を累積し、前記言語理解モデル記憶部から読み出した前記フィラー遷移データに従って、フィラー重み値を累積し、前記遷移先状態に遷移する状態遷移動作を順次行う有限状態変換器処理部と、前記言語理解モデル記憶部から読み出した前記コンセプト重みデータに従って、前記有限状態変換器処理部から出力された前記理解結果候補に含まれるコンセプトに対応するコンセプト重み値を累積するコンセプト重み付け処理部と、出力された複数の系列の前記理解結果候補の中から、前記累積された単語重み値と前記累積されたコンセプト重み値と前記累積されたフィラー重み値との重み付き和である累積重みが最大となる理解結果を決定する理解結果決定部とを具備することを特徴とする言語処理装置が記載されている。
Such a conventional system includes, for example, the language processing device of
しかし、特許文献1では、入力テキストの内容によってはトピックを推定することが困難な場合がある。例えば、「通帳を作りたい。また、預金したい。」という入力テキストにおいて、「通帳を作りたい」というテキスト部分に「口座開設の手続き」というトピックが含まれ、「預金したい」というテキスト部分に「預金の手続き」というトピックが含まれていたと仮定する。また、意図理解モデルにおいて、「通帳を作りたい」という入力テキストと、「口座開設の手続き」というトピックとが紐付けて定義されていると仮定する。同様に、「預金したい」という入力テキストと、「預金の手続き」というトピックとが紐付けて定義されていると仮定する。この場合、特許文献1によれば、入力テキストと
最も類似度の高いテキスト(例えば、「通帳を作りたい」)のみが抽出され、その結果、意図理解モデルにおける「通帳を作りたい」に紐付けられたトピック(「口座開設の手続き」)のみが推定結果として出力される。すなわち、特許文献1では、入力テキストの内容に関わらず1個のトピックを推定結果として出力するので、発話(入力テキスト)の内容によってはその意図を正確に把握することができない場合がある。
However, in
本発明はこのような点に鑑みてなされたものであり、その目的は、発話の意図を正確に把握して対話を行うことが可能な対話支援システム、対話支援方法、及び対話支援プログラムを提供することにある。 The present invention has been made in view of these points, and an object of the present invention is to provide a dialogue support system, a dialogue support method, and a dialogue support program capable of accurately grasping the intention of utterance and conducting a dialogue. To do.
前記の課題を解決するための本発明の一つは、プロセッサ及びメモリを備える対話支援システムであって、対話の主題を示す情報であるトピック情報を複数記憶している意図理解モデル記憶部と、前記トピック情報を参照することにより、外部から発せられた言葉から複数の意図を抽出する意図理解部と、前記抽出した意図のそれぞれについて、それぞれの前記意図に対応した言葉を、前記対話を構成する言葉として生成する対話生成部と、前記生成した言葉を出力する対話出力部と、を備える。 One of the present inventions for solving the above-mentioned problems is an intention understanding model storage unit which is a dialogue support system including a processor and a memory and stores a plurality of topic information which is information indicating the subject of the dialogue. By referring to the topic information, the intention understanding unit that extracts a plurality of intentions from words emitted from the outside and words corresponding to the respective intentions for each of the extracted intentions constitute the dialogue. It includes a dialogue generation unit that generates words, and a dialogue output unit that outputs the generated words.
本発明によれば、発話の意図を正確に把握して対話を行うことができる。 According to the present invention, it is possible to accurately grasp the intention of utterance and engage in dialogue.
以下、図面を参照しつつ、本発明に係る各実施例を詳述する。
−−実施例1−−
図1は、実施例1に係る音声対話支援システム2000の構成の一例を示す図である。本実施例の音声対話支援システム2000は、例えば、人間との音声対話を行ういわゆる対話型ロボット(サービスロボット)であり、対話に係る音声の入出力処理を行う音声処理システム3000と、対話に関する情報処理を行う対話支援システム1000とを含んで構成されている。
Hereinafter, each embodiment of the present invention will be described in detail with reference to the drawings.
−− Example 1−−
FIG. 1 is a diagram showing an example of the configuration of the voice
音声処理システム3000は、音声が入力される音声入力装置30(マイク等)、所定の合成音声を出力する音声出力装置50(スピーカー等)を備える。
The
対話支援システム1000は、対話支援装置1、及び対話シナリオ作成装置5を備える。対話支援装置1は音声処理システム3000と接続しており、音声入力装置30から入力された音声100に基づき所定の情報処理を行うことにより音声100に対応する音声である合成音声500を生成し、生成した合成音声500を音声出力装置50に送信する。
The
対話シナリオ作成装置5は、音声対話支援システム2000の管理者又はユーザ等(以下、ユーザという。)が利用する情報処理装置であり、対話支援装置1が処理する様々な情報を作成する。例えば、対話シナリオ作成装置5は、次述する対話シナリオ91、サブ対話シナリオ915、及び出力テキストリスト92等の内容を編集する。なお、対話支援装置1と対話シナリオ作成装置5との間は所定の通信線により直接に、もしくは、LAN(Local Area Network)、WAN(Wide Area Network)、インターネット、専用線等の
通信網を介して接続される。
The dialogue
なお、図2は、対話支援装置1及び対話シナリオ作成装置5が備えるハードウェアの一例を示す図である。同図に示すように、対話支援装置1及び対話シナリオ作成装置5は、CPU(Central Processing Unit)等の、処理の制御を司るプロセッサ11と、RAM
(Random Access Memory)、ROM(Read Only Memory)等の主記憶装置12と、HDD(Hard Disk Drive)、SSD(Solid State Drive)等の補助記憶装置13と、キーボード、マウス、タッチパネル等の入力装置14と、モニタ(ディスプレイ)等の出力装置15と、有線LANカード、無線LANカード、モデム等の通信装置16とを備える。
Note that FIG. 2 is a diagram showing an example of the hardware included in the
次に、図1に示すように、対話支援装置1は、音声認識部20、対話制御部60、前処理部70、意図理解部80、意図理解モデル記憶部85、及び音声合成部40を備える。
Next, as shown in FIG. 1, the
音声認識部20は、外部から入力された音声を文字列に変換することにより前記外部から発せられた言葉とする。具体的には、音声認識部20は、音声入力装置30から取得した音声100から音声以外の音(雑音)を除去し、雑音を除去した音声を文字列の情報(入力テキスト200)に変換する。
The
対話制御部60は、前処理部70、及び意図理解部80と情報の送受信を行うことにより、音声認識部20から受信した入力テキスト200に対応する出力テキスト400を生成し、生成した出力テキスト400を音声合成部40に送信する。
The
次に、意図理解モデル記憶部85は、意図理解モデル93を記憶している。すなわち、意図理解モデル記憶部85は、対話の主題(以下、トピックともいう。)を示す情報であるトピック情報を複数記憶している。
Next, the intention understanding
ここで、意図理解モデル93について説明する。
(意図理解モデル)
図3は、意図理解モデル93が記憶している情報の一例を示す図である。意図理解モデル93はトピック情報を記憶しており、複数の主題(トピック)のそれぞれについて、それぞれのトピックの名称と、それぞれのトピックにおいて発せられることが想定される言葉とを対応づけて記憶している。具体的には、意図理解モデル93は、トピックの識別子(以下、トピックIDという。)が格納されるトピックID931、トピックID931が示すトピックの名称が格納されるトピック名932、及び、トピックID931が示すトピックにおいて発せられることが想定される言葉を表す文字列(例えば、「通帳を作りたい」。以下、想定入力テキストという。)が格納される入力テキスト933の各項目を含む、少なくとも1つ以上のレコードを有するデータベースである。
Here, the
(Intention understanding model)
FIG. 3 is a diagram showing an example of information stored in the
次に、図1に示すように、意図理解部80は、前記トピック情報を参照することにより、外部から発せられた言葉(入力テキスト200)から複数の意図を抽出する。
Next, as shown in FIG. 1, the
前処理部70(分割部)は、前記外部から発せられた言葉(入力テキスト200)を複数の言葉の部分(分割テキスト201)に分割する。 The preprocessing unit 70 (division unit) divides the words (input text 200) emitted from the outside into a plurality of word portions (division text 201).
この場合、前記意図理解部80は、前記分割した複数の言葉の部分のそれぞれについて、それぞれの前記言葉の部分に対応する前記意図を抽出する。具体的には、前記意図理解部80は、前記トピック情報のそれぞれと、前記分割した言葉の部分との間の類似度を算出し、算出した前記類似度のうち最大の類似度を算出した前記トピック情報を参照することにより、前記分割した言葉の前記意図を抽出する。
In this case, the
なお、本実施形態では、抽出された主題(トピック)は、トピックIDのリスト(トピックIDリスト300)として抽出され、抽出されたトピックIDリスト300は、対話制御部60に入力される。
In the present embodiment, the extracted subject (topic) is extracted as a list of topic IDs (topic ID list 300), and the extracted
対話制御部60は、対話生成部62、及び対話出力部64を備える。
The
対話生成部62は、意図理解部80が前記抽出した意図のそれぞれについて、それぞれの前記意図に対応した言葉を、前記対話を構成する言葉(出力テキスト400)として生成する。
The
具体的には、前記対話生成部62は、前記抽出した意図について、当該意図に関連づけられた、発話の手順を記憶した情報である対話シナリオ(対話シナリオ91)を取得し、取得した前記対話シナリオが示す手順に基づき、前記抽出した意図に対応した言葉を生成する。
Specifically, the
なお、対話制御部60は、前記手順が示す処理のうち自身が現在行っている処理の位置(又は直前に行った処理の位置)を随時記憶している。
The
また、対話制御部60は、対話の手順の詳細(以下、サブ対話シナリオという。)を記憶しているデータベースであるサブ対話シナリオ915と、サブ対話シナリオ915における具体的な各対話の内容(出力テキスト400)が定義された出力テキストリスト92とを記憶している。
Further, the
対話出力部64は、対話生成部62が前記生成した言葉を出力する。
The
音声合成部40は、対話出力部64が前記対話を構成する言葉を音声に変換する。
In the
次に、対話シナリオ作成装置5は、対話シナリオ作成部51を備える。対話シナリオ作
成部51は、前記対話シナリオ(例えば、対話シナリオ91、サブ対話シナリオ915、及び出力テキストリスト92に関する情報)の入力を受け付けると共に受け付けた前記対話シナリオに関する情報を出力する。
Next, the dialogue
ユーザは、対話シナリオ作成装置5に出力される所定の編集画面を利用して、対話シナリオ91、サブ対話シナリオ915、及び出力テキストリスト92の作成及び編集を行うことができる。これにより、ユーザは、対話シナリオや出力テキストの情報を使用環境に応じて自由に変更することができる。
The user can create and edit the
以上に説明した対話支援装置1及び対話シナリオ作成装置5の各機能は、例えば、これらの装置が備えるハードウェアによって、又は、これらの装置のプロセッサ11が主記憶装置12又は補助記憶装置13に記憶されているプログラムを読み込んで実行することにより実現される。なお、このプログラムは、CD−ROM、SDカード、DVD等の記録媒体に記録したものであってもよい。
The functions of the
次に、音声対話支援システム2000が行う処理について説明する。
<処理>
(音声対話支援処理)
図4は、音声対話支援システム2000において行われる典型的な処理の流れを説明するフローチャートである。
Next, the processing performed by the voice
<Processing>
(Voice dialogue support processing)
FIG. 4 is a flowchart illustrating a typical processing flow performed in the voice
まず、対話支援装置1が起動すると、対話支援装置1は、外部(例えば、発問を行った人物。以下、対話相手ともいう。)から発せられた音声を言葉として認識する処理(以下、音声認識処理s1という。)を実行する(s1)。そして、対話支援装置1は、s1で認識した言葉に対する応答の言葉を生成する処理(以下、対話制御処理s2という。)を実行する(s2)。そして、対話支援装置1は、s2で生成した応答の言葉に対応する音声を出力して対話相手との対話を実現する処理(以下、音声出力処理s3という。)を実行する(s3)。
次に、音声認識処理s1の詳細を説明する。
First, when the
Next, the details of the voice recognition process s1 will be described.
(音声認識処理s1)
図5は、音声認識処理s1の詳細の一例を説明するフローチャートである。同図に示すように、音声認識部20は、音声入力装置30が取得した対話相手の音声を取得する(s11)。そして、音声認識部20は、s11で取得した音声から、対話相手の音声以外の音(雑音)を除去し、雑音を除去した音声100の入力テキスト200に変換する(s13)。音声認識部20は、s13で変換した入力テキスト200を、対話支援システム1000に送信する。以上の処理が繰り返される。
(Voice recognition process s1)
FIG. 5 is a flowchart illustrating a detailed example of the voice recognition process s1. As shown in the figure, the
次に、対話制御処理s2の詳細を説明する。対話制御処理s2は、前述のように、例えば、対話制御部60が入力テキスト200を受信したことを契機に開始される。
Next, the details of the dialogue control process s2 will be described. As described above, the dialogue control process s2 is started, for example, when the
(対話制御処理s2)
図6は、対話制御処理s2の詳細の一例を説明するフローチャートである。同図に示すように、対話制御部60は、自身が直前に行った対話シナリオ91における処理の次の処理を一つ読み込み、読み込んだ処理の種類を判断する(s21)。なお、全ての処理が読み込まれているか、又はs21で読み込んだ処理が対話制御処理s2を終了するための処理である場合は、対話制御処理s2は終了する(不図示)。また、対話制御部60は、対話シナリオ91を初めて読み込む場合には、対話シナリオ91の最初の処理を読み込む。
(Dialogue control process s2)
FIG. 6 is a flowchart illustrating a detailed example of the dialogue control process s2. As shown in the figure, the
処理の内容が、(A)入力テキスト200を解析してトピック(意図)を推定する処理
(トピック推定処理)である場合、対話制御部60は、次述するs23の処理を行い(s21:トピック推定)、(B)出力テキスト400を出力する処理(出力処理)である場合(s21:テキスト出力)、対話制御部60は、後述するs26の処理を行い、(C)所定の条件判断を行う処理(条件判断処理)である場合(s21:条件判断)、対話制御部60は後述するs27の処理を行う。
When the content of the process is (A) a process of analyzing the
(A)トピック推定
s23において前処理部70は、入力テキスト200を複数のテキストに分割して分割テキスト201を作成する。
(A) In topic estimation s23, the preprocessing
例えば、入力テキスト200が、「通帳を作りたい。また、預金したい。」である場合、前処理部70は、形態素解析により入力テキスト200に含まれる品詞を推定する。形態素解析とは、テキストを意味の持つ最小単位(一般的に形態素と呼ぶ。)に分割し、形態素の品詞等を判別することである。
For example, when the
そして、前処理部70は、入力テキスト200に1つの接続詞(例、「また」など)が含まれる場合、入力テキスト200の中に2つの意図(トピック)が含まれると判断する。そして、前処理部70は、入力テキスト200を、前記接続詞の前方にあるテキスト(例「通帳を作りたい。」)と、後方にあるテキスト(例「貯金したい」)とに分割し、それぞれのテキストを分割テキスト201とする。
Then, when the
なお、ここでは、分割テキスト201の作成方法として形態素解析を説明したが、分割テキスト201の作成方法としては、文字列を複数のトピックに分割できる方法であれば形態素解析に限らずその他の任意の方法でもよい。また、前処理部70は、ある方法によって複数の分割テキスト201を作成できなかった場合には、他の方法によって複数の分割テキスト201を作成するように再試行してもよい。
Here, morphological analysis has been described as a method for creating the
次に、意図理解部80は、s23で生成した分割テキスト201のそれぞれについて、その分割テキスト201と、意図理解モデル93に定義されている各想定入力テキストとの間の類似度を算出する。
Next, the
そして、意図理解部80は、s23で生成した分割テキスト201のそれぞれのトピックを推定する。すなわち意図理解部80は、分割テキスト201と、各想定入力テキストとの間の類似度のうち、最大の類似度を算出した想定入力テキストに対応づけられたトピックを、その分割テキスト201のトピックとする(s24)。これを全ての分割テキスト201について行う。
Then, the
例えば、ある分割テキスト201が「通帳を作りたい」である場合、意図理解モデル93に登録されている各想定入力テキスト(トピックIDが「I1」〜「I3」の想定入力テキスト)のうち、「通帳を作りたい」と最も類似度の高い想定入力テキストは、トピックIDが「I1」の「通帳を作りたい」である。そして、これに対応づけられたトピックは、「口座開設の手続き」である。
For example, when a certain divided
なお、前記の類似度の計算方法としては、例えば動的計画法(DP:Dynamic Programming)、マッチング法等がある。 As the above-mentioned calculation method of the degree of similarity, for example, there are a dynamic programming method (DP: Dynamic Programming), a matching method and the like.
意図理解部80は、s24で推定した各トピックの情報を対話制御部60に送信する。具体的には、意図理解部80は、s24で推定した各トピックのトピックIDのリスト(トピックIDリスト300)を対話制御部60に送信する。その後はs21の処理に戻る。
The
(B)テキスト出力
s26において対話制御部60は、s21で読み込んだ対話シナリオ91の処理により特定される出力テキスト400を出力テキストリスト92(出力テキスト922)から読み込み、読み込んだ出力テキスト400を出力する。その後はs21の処理に戻る。
(B) Text output In s26, the
(C)条件判断
s27において対話制御部60は、s21で読み込んだ処理に対応する条件判断の処理を行う。その後はs21の処理に戻る。
(C) Condition determination In s27, the
ここで、対話制御処理s2が読み込む対話シナリオ91の一例を説明する。
Here, an example of the
(対話シナリオ91)
図7は、対話シナリオ91の一例を示す図である。同図に示すように、対話シナリオ91は、外部からの発話(入力テキスト200)を促すための最初の言葉(最初の出力テキスト400)を出力する出力処理である「処理ステップ0」、入力された入力テキスト200に対する解析を行うことによりトピックを推定するトピック推定処理である「処理ステップ1」、推定したトピックのうち一つを選択し、選択したトピックに対応づけられた出力テキスト400をサブ対話シナリオ915が示す手順で出力する出力処理である「処理ステップ2」、選択したトピックについて出力テキスト400を全て出力したか否かの条件判断をする処理である条件判断処理である「処理ステップ3」、及び、最後の出力テキスト400を出力する出力処理である「処理ステップ4」等の各処理を含む。
(Dialogue scenario 91)
FIG. 7 is a diagram showing an example of the
次に、上記の処理ステップ2で参照されるサブ対話シナリオ915の一例を説明する。
Next, an example of the
(サブ対話シナリオ915)
図8は、サブ対話シナリオ915の一例を示す図である。同図に示すように、サブ対話シナリオ915は、トピックIDが格納されるトピックID9151、トピックID9151のトピックにおいて出力される出力テキスト400を特定する識別子(以下、出力テキストIDという。)が格納される出力テキストID9152、及び、出力テキストID9152の出力テキスト400を出力した後に実行される、対話シナリオ91における処理を特定する情報が格納される次処理9153の各項目を有する、少なくとも1つ以上のレコードで構成される。
(Sub-dialogue scenario 915)
FIG. 8 is a diagram showing an example of the
次に、上記のサブ対話シナリオ915で参照される出力テキストリスト92の一例を説明する。
Next, an example of the
(出力テキストリスト92)
図9は、出力テキストリスト92の一例を示す図である。同図に示すように、出力テキスト92は、対話制御部60が出力する言葉(テキスト)の一覧を格納したデータベースであり、出力テキストIDが格納される出力テキストID921と、出力テキストID921により特定される出力テキストの内容が格納される出力テキスト922の各項目を有する、少なくとも1つ以上のレコードで構成されている。
(Output text list 92)
FIG. 9 is a diagram showing an example of the
なお、本実施例において、出力テキストID921の「OS」は、最初に出力する出力テキスト400であることを示し、出力テキストID921の「OE」は、最後に出力する出力テキスト400であることを示す。
In this embodiment, the "OS" of the
(対話制御処理s2の一例)
ここで、図7の対話シナリオ91、図8のサブ対話シナリオ915、及び図9の出力テ
キストリスト92に基づいて行われる対話制御処理s2の一例を説明する。
(Example of dialogue control process s2)
Here, an example of the dialogue control process s2 performed based on the
まず、対話制御部60は、対話シナリオ91の処理ステップ0を読み込み、テキストの出力処理を行う旨を判断する。そこで対話制御部60は、対話制御部60は出力テキストリスト92を参照し、出力テキストID921が「OS」の出力テキスト400(「ご用件は何でしょうか?」)を取得する。対話制御部60は、取得した出力テキスト400を音声合成部40に送信する。
First, the
対話制御部60は、音声認識部20から新たな入力テキスト200を受信すると、処理ステップ1を読み込むことでトピック推定処理を行う。
When the
具体的には、例えば、対話制御部60が「通帳を作りたい。また、預金したい。」という入力テキスト200を受信した場合、前処理部70及び意図理解部80は、「口座開設の手続き」及び「貯金の手続き」という2つのトピックを推定する。そして意図理解部80は、トピックIDリスト300(「I1」及び「I2」)を対話制御部60に送信する。
Specifically, for example, when the
次に、対話制御部60は、音声認識部20から新たな入力テキスト200を受信すると、処理ステップ2を読み込むことで、処理ステップ1で推定したトピックに対応する出力テキスト400を出力する(対話を実行する)。
Next, when the
具体的には、まず対話制御部60は、前記で受信したトピックIDリスト300から1つのトピック(トピックID)を選択し、サブ対話シナリオ915から、選択したトピックに対応づけられた各出力テキスト400とその出力テキスト400を出力した後に実行する処理とを特定する。
Specifically, first, the
例えば、選択したトピックIDが「I1」であった場合、対話制御部60は、まず、トピックID9151に「I1」が格納されているサブ対話シナリオ915のレコード9154から、出力テキストID9152の内容である「O1」及び次処理9153の内容である「処理ステップ3」を取得する。また対話制御部60は、出力テキストリスト92から、前記で取得した「O1」に対応する出力テキスト400(「口座開設の手続きのため、書類Aをご記入ください。)を取得する。対話制御部60は、取得した出力テキスト400を音声合成部40に送信する。
For example, when the selected topic ID is "I1", the
なお、選択したトピックIDに対応する出力テキストが複数ある場合は、例えば、対話制御部60は、そのうち一つの出力テキスト400を音声合成部40に送信後、音声認識部20からの新たな入力テキスト200の受信を待機し、その新たな入力テキスト200を受信後、他の出力テキスト400を音声合成部40に送信する。これらの処理を全ての出力テキスト400について繰り返す。
When there are a plurality of output texts corresponding to the selected topic ID, for example, the
対話制御部60は、前記で特定した処理ステップ3を読み込むことで、条件判断の処理を実行する。具体的には、例えば、対話制御部60は、トピックIDリスト300に含まれている全てのトピックID(「I1」「I2」)に対応づけられた出力テキストリスト92の出力テキスト922の内容(出力テキスト400)を全て出力したか否かを判断する。
The
出力テキスト400を全て出力していない場合は(処理ステップ3:No)、対話制御部60は、処理ステップ2を再度読み込み、現在選択しているトピックと異なる他のトピックに関する対話を実行する。
If all the
例えば、トピックIDが「I1」のトピックに関する対話を終了したがトピックIDが「I2」のトピックに関する対話を行っていない場合には、対話制御部60は、サブ対話シナリオ915から前記と同様に、トピックIDが「I2」に対応づけられた出力テキスト400(例えば、「預金の手続きのため、書類Bをご記入ください。」)及びその出力テキスト400を出力した後に実行する処理(「処理ステップ3」)を取得する。対話制御部60は、取得した出力テキスト400を音声合成部40に送信する。
For example, when the dialogue on the topic whose topic ID is "I1" is completed but the dialogue on the topic whose topic ID is "I2" is not performed, the
一方、出力テキスト400を全て出力した場合は(処理ステップ3:Yes)、対話制御部60は、処理ステップ3の次の処理である処理ステップ4を読み込むことで、出力テキスト400を出力する。
On the other hand, when all the
具体的には、対話制御部60は、出力テキストリスト92を参照し、出力テキストID921が「OE」の出力テキスト400(「ご案内は、以上となります。ありがとうございました。」)を音声合成部40に送信する。以上で対話制御処理s2は終了する。
Specifically, the
次に、音声合成処理s3の詳細を説明する。
(音声合成処理s3)
図10は、音声合成処理s3の一例を説明するフローチャートである。同図に示すように、音声合成部40は、対話支援システム1000から出力テキスト400を受信する(s51)。そして、音声合成部40は、出力テキスト400に基づき所定の合成音声500を生成する(s53)。そして、音声合成部40は、生成した合成音声を音声出力装置50に送信し、音声出力装置50は、受信した合成音声を再生する(s55)。以上で音声合成処理s3は終了する(s57)。
Next, the details of the speech synthesis process s3 will be described.
(Speech synthesis processing s3)
FIG. 10 is a flowchart illustrating an example of the voice synthesis process s3. As shown in the figure, the
以上に説明したように、本実施例に係る音声対話支援システム2000は、トピック情報を複数記憶し(意図理解モデル93)、トピック情報に基づき、外から発せられた言葉(入力テキスト200)から複数の意図を抽出し、抽出した意図のそれぞれについて、それぞれの意図に対応した言葉を、対話を構成する言葉として生成し、生成した言葉を出力する(出力テキスト400)ので、外部から発せられた言葉に複数の意図が含まれている場合でも、その意図のそれぞれについて、対応する適切な言葉を出力することができる。これにより、例えば、発話者から複数の意図を含む言葉が発せられた場合であっても、適切な対話を行うことができる。このように、本実施例に係る音声対話支援システム2000によれば、複数ある発話の意図を正確に把握した上で対話を行うことができる。
As described above, the voice
また、本実施例に係る音声対話支援システム2000は、外部から発せられた言葉(入力テキスト200)を複数の言葉の部分に分割し(分割テキスト201)、分割した複数の言葉の部分のそれぞれについて、それぞれの言葉の部分に対応する意図を抽出するので、発せられた言葉(入力テキスト200)から複数の意図を正確に抽出することができる。これにより、複数ある発話の意図を高精度に推定することができる。
Further, the voice
また、本実施例に係る音声対話支援システム2000は、トピック情報のそれぞれと、分割した言葉の部分(分割テキスト201)との間の類似度を算出し、算出した類似度のうち最大の類似度を算出したトピック情報を参照することにより、分割した言葉の意図を抽出するので、分割した言葉のそれぞれに対応した適切な意図を抽出することができる。
Further, the voice
また、本実施例に係る音声対話支援システム2000は、抽出した意図のそれぞれについて、その意図に関連づけられた、発話の手順を記憶した情報である対話シナリオ(対話シナリオ91)を取得し、取得した対話シナリオに基づき、抽出した意図に対応した言葉を生成するので、抽出した複数の意図のそれぞれについて、適切な手順で対話を行うことができる。
In addition, the voice
また、本実施例に係る音声対話支援システム2000は、外部から入力された音声(音声100)を文字列(入力テキスト200)に変換し(音声認識部20)、また、対話を構成する言葉(出力テキスト400)を音声(合成音声500)に変換するので、複数ある発話の意図を正確に把握した音声対話を行うことができる。
Further, the voice
なお、本実施例において、音声処理システム3000は必ずしも必要ではない。例えば、音声認識部20は、入力装置14を介してユーザから入力された文字列(テキスト)を入力テキスト200として生成し、生成した入力テキスト200を対話支援システム1000に送信してもよい。同様に、音声合成部40は、対話支援システム1000から受信した出力テキスト400を出力装置15に出力してユーザに提示してもよい。これにより、チャットボット(Chatbot)等、文字列(テキスト)ベースの対話を実現することがで
きる。
In this embodiment, the
−−実施例2−−
実施例1では、意図理解モデル93に様々な想定入力テキストが定義されているが、これらの想定入力テキストのいずれにも実際の入力テキスト200が対応していない場合は、音声対話支援システム2000は、入力テキスト200に含まれる意図の推定を誤る可能性がある。
−− Example 2-−
In the first embodiment, various assumed input texts are defined in the
例えば、図11は、意図理解モデル93の一例を示す図であるが、入力テキスト200が「持っていない」である場合、同図に示す意図理解モデルにおいて、「持っていない」に対応する想定入力テキストは、トピックIDが「I1−2」である「印鑑を持っていない」と、トピックIDが「I2−2」である「通帳を持っていない」とがある。なぜなら、これらのトピックIDのトピックはいずれも「持っていない」というテキスト(文字列)を含んでいるからである。したがって、本来の入力テキスト200のトピックが「通帳を持っていない」であったとしても、実施例1では、「印鑑を持っていない」に対応する「印鑑不所持」が意図として推定されてしまい、その結果、意図の推定は誤りとなる。
For example, FIG. 11 is a diagram showing an example of the
そこで、本実施例における音声対話支援システム2000は、複数の意図理解モデルを用いることによりこの問題を解決する。
Therefore, the voice
図12は、実施例2に係る音声対話支援システム2000の構成の一例を示す図である。同図に示すように、本実施例の音声対話支援システム2000では、実施例1の音声対話支援システム2000と比べると、意図理解モデル記憶部85が、それぞれ異なる主題(トピック)の言葉について記憶した複数の意図理解モデル94(意図理解モデル94(1)(2)(3))を記憶している点が異なる。
ここで、本実施例に係る意図理解モデルについて説明する。
FIG. 12 is a diagram showing an example of the configuration of the voice
Here, the intention understanding model according to this embodiment will be described.
(意図理解モデル)
図13は、実施例2に係る意図理解モデルの一例を示す図である。同図に示すように、本実施例の意図理解モデル94は、意図理解モデル94(1)(以下、意図理解モデルM1ともいう。)、意図理解モデル94(2)(以下、意図理解モデルM2ともいう。)、及び意図理解モデル94(3)(以下、意図理解モデルM3ともいう。)を含んで構成されている。
(Intention understanding model)
FIG. 13 is a diagram showing an example of an intention understanding model according to the second embodiment. As shown in the figure, the
意図理解モデルM1は、複数のトピック情報を記憶している。具体的には、意図理解モデルM1は、「口座開設の手続き」及び「預金の手続き」という2つのトピックと、これに対応する言葉(想定入力テキスト)とを記憶している。 The intention understanding model M1 stores a plurality of topic information. Specifically, the intention understanding model M1 stores two topics, "procedure for opening an account" and "procedure for deposit", and corresponding words (assumed input text).
意図理解モデルM2は、意図理解モデルM1のうち1つのトピックに関連するトピック(以下、関連トピックという。)を記憶している。具体的には、意図理解モデルM2は、「口座開設の手続き」というトピックに関連する2つのトピック(「印鑑不所持」及び「印鑑所持」)を記憶している。 The intention understanding model M2 stores a topic related to one topic of the intention understanding model M1 (hereinafter, referred to as a related topic). Specifically, the intention understanding model M2 stores two topics (“non-possession of seal” and “possession of seal”) related to the topic of “procedure for opening an account”.
意図理解モデルM3は、意図理解モデルM1のうち他の1つのトピックに関連するトピック(関連トピック)を記憶している。具体的には、意図理解モデルM3は、「預金の手続き」というトピックに関連する2つのトピック(通常不所持」及び「通帳所持」)を記憶している。 The intention understanding model M3 stores a topic (related topic) related to the other one topic in the intention understanding model M1. Specifically, the intent understanding model M3 stores two topics (usually non-possessed) and “passbook possession” related to the topic “deposit procedure”.
なお、各意図理解モデル94の項目の構成は、実施例1の意図理解モデル93と同様である。
The composition of the items of each
このように、本実施例における意図理解モデル記憶部85は、前記トピック情報(意図理解モデルM1)と、当該トピック情報が示すトピックに関連するトピックを示す情報である関連トピック情報(意図理解モデルM2、M3)とを対応づけて記憶している。そして、前記意図理解モデル記憶部80は、前記トピック情報及び前記関連トピック情報を参照することにより、前記発せられた言葉から前記意図を抽出する。
As described above, the intention understanding
なお、本実施例では、音声対話支援システム2000は、複数の意図理解モデル94に対応したサブ対話シナリオ916及び出力テキストリスト96を記憶している。
In this embodiment, the voice
ここで、本実施例におけるサブ対話シナリオ916について説明する。
(サブ対話シナリオ)
図14は、実施例2に係るサブ対話シナリオ916の一例を示す図である。同図に示すように、本実施例に係るサブ対話シナリオ916は、実施例1のサブ対話シナリオ915と同様に、トピックIDが格納されるトピックID9161、出力テキストIDが格納される出力テキストID9162、及び、出力テキストID9162の出力テキスト400を出力した後に実行される、対話シナリオ91における処理を特定する情報が格納される次処理9163の各項目を有する、少なくとも1つ以上のレコードで構成される。
Here, the
(Sub-dialogue scenario)
FIG. 14 is a diagram showing an example of the
さらに、本実施例に係るサブ対話シナリオ916では、これらの項目に加えて、出力テキストID9162の出力テキスト400を出力した後に実行される、意図理解モデルを特定する情報が格納される次モデル9164の項目を有する。すなわち、出力テキストID9162により特定されるテキストを出力する処理の次に行う処理が、次処理9163及び次モデル9164によって特定される。
Further, in the
なお、出力テキストID9162に対応する出力テキスト400の内容は、出力テキストリスト96に格納される。
The contents of the
そこで、本実施例に係る出力テキストリスト96について説明する。
(出力テキストリスト)
図15は、実施例2に係る出力テキストリスト96の一例を示す図である。同図に示すように、出力テキストリスト96は、実施例1の出力テキストリスト92と同様に、出力テキストIDが格納される出力テキストID961と、出力テキストID961により特定される出力テキストの内容が格納される出力テキスト962の各項目を有する、少なくとも1つ以上のレコードで構成されている。
Therefore, the
(Output text list)
FIG. 15 is a diagram showing an example of the
次に、本実施例において音声対話支援システム2000が行う音声対話支援処理について説明する。
<処理>
本実施例において、音声認識処理s1、及び音声出力処理s3は実施例1と同様である。ここでは、本実施例に係る対話制御処理s2を、対話制御処理s2が実施例1で示した対話シナリオ91(図7)に基づき行われることを前提に説明する。
Next, the voice dialogue support process performed by the voice
<Processing>
In this embodiment, the voice recognition process s1 and the voice output process s3 are the same as those in the first embodiment. Here, the dialogue control process s2 according to the present embodiment will be described on the premise that the dialogue control process s2 is performed based on the dialogue scenario 91 (FIG. 7) shown in the first embodiment.
まず対話制御部60は、実施例1と同様に処理ステップ0を読み込み、出力テキストID921が「OS」の出力テキスト400(「ご用件は何でしょうか?」)を取得し、取得した出力テキスト400を音声合成部40に送信する。
First, the
次に、対話制御部60は、実施例1と同様に音声認識部20から新たな入力テキスト200を受信すると処理ステップ1を読み込み、トピック推定を行う。
Next, when the
ここで、対話制御部60が「通帳を作りたい。また、預金したい。」という入力テキスト200を受信した場合、前処理部70及び意図理解部80は、この入力テキスト200に基づき分割テキスト201を生成し、生成した分割テキスト201に基づき、入力テキスト200に含まれる各トピックを推定する。
Here, when the
具体的には、前処理部70及び意図理解部80は、意図理解モデル94(1)に基づき、「口座開設の手続き」(トピックID「I1−1」)を一つのトピックとして推定し、「貯金の手続き」(トピックID「I1−2」)を他のトピックとして推定する。そして、意図理解部80は、推定したトピックのリスト(「I−1」及び「I2−1」なるトピックIDリスト300)を対話制御部60に送信する。
Specifically, the preprocessing
続いて、対話制御部60は、音声認識部20から新たな入力テキスト200を受信すると処理ステップ2を読み込み、処理ステップ1で推定したトピックに関する出力テキスト400を出力する(対話を実行する)。
Subsequently, when the
具体的には、まず対話制御部60は、前記で受信したトピックIDリスト300から1つのトピック(トピックID)を選択し、サブ対話シナリオ915から、選択したトピックに対応づけられた各出力テキスト400とその出力テキスト400を出力した後に実行する処理とを特定する。
Specifically, first, the
例えば、対話制御部60は、トピックIDが「I1−1」のトピックを選択し、トピックID9161に「I1−1」が格納されているサブ対話シナリオ916のレコードにおける、出力テキストID9162の内容である「O1−1」と、次処理9163及び次モデル9164の内容である「意図理解モデルM2」及び「処理ステップ1」とを特定する。そして対話制御部60は、出力テキストID961が「O1−1」である出力テキストリスト96のレコードの出力テキスト400(「印鑑をお持ちですか?」)を取得する。対話制御部60は、取得した出力テキスト400を音声合成部40に送信する。
For example, the
なお、選択したトピックIDに対応する出力テキスト400が複数ある場合、対話制御部60は実施例1と同様に全ての出力テキスト400を出力する。
When there are a plurality of
対話制御部60は、出力テキスト400を音声合成部40に送信後、音声認識部20からの新たな入力テキスト200の受信を待機し、その新たな入力テキスト200を受信後、前記で特定した、「意図理解モデルM2」における「処理ステップ1」を読み込むことにより、トピック推定を行う。
After transmitting the
具体的には、例えば、対話制御部60が、出力テキスト400として「印鑑をお持ちですか?」を送信後、新たな入力テキスト200として「持っていない」を受信した場合、
前処理部70及び意図理解部80は、意図理解モデルM2を参照し、前記新たな入力テキスト200と最も類似度が高い想定入力テキストを特定する。例えば、意図理解部80は、意図理解モデルM2の各レコードのうち、前記新たな入力テキスト200と最も類似度の高い想定入力テキスト(「印鑑を持っていない」)が格納されているレコードを特定し、特定したレコードのトピック(「印鑑不所持」)を推定対象のトピックとする。
Specifically, for example, when the
The preprocessing
このように、意図理解部80は、入力テキスト200である「持っていない」が、印鑑を持っていない意図を有していることを正確に推定することができる。
In this way, the
以降は実施例1と同様である。最後に対話制御部60は、出力テキストID「OE」が出力テキストID961に格納されている出力テキストリスト96のレコードの出力テキスト400(「ご案内は、以上となります。ありがとうございました。」)を取得し、取得した出力テキスト400を音声合成部40に送信する。
The following is the same as in Example 1. Finally, the
以上のように、本実施例の音声対話支援システム2000は、トピック情報(意図理解モデルM1)と、そのトピック情報が示すトピックに関連するトピックを示す情報(関連トピック情報)とを対応づけて記憶しており(意図理解モデルM2、M3)、トピック情報及び関連トピック情報を参照することにより、発せられた言葉(入力テキスト200)から複数の意図を抽出するので、発話の意図を高精度に推定することができる。
As described above, the voice
−−実施例3−−
実施例2においては複数の意図理解モデル94が設けられているが、入力テキスト200の内容によっては、意図理解モデル94のいずれにも適切な想定入力テキストが存在しない場合がある。
−− Example 3-−
Although a plurality of
例えば、実施例2において、まず、「通帳を作りたい。」という1つのトピックが含まれる入力テキスト200のみが対話制御部60に入力され、そのトピックの対話が行われている最中に、「預金したい。」という異なるトピックを含む入力テキスト200が対話制御部60に入力された場合(例えば、発話者が急に次のトピックを思い出して言う場合)を想定する。すなわち、「通帳を作りたい。また、預金したい。」という2つのトピックを含む入力テキスト200が同機会に対話制御部60に入力されなかった場合を想定する。
For example, in the second embodiment, first, only the
この場合、実施例2に係る音声対話支援システム2000はまず、「通帳を作りたい。」という入力テキスト200に対応するトピックとして、意図理解モデルM1を参照することにより「口座開設の手続き」というトピック(トピックID「I1−1」)を推定し、意図理解モデルM2を参照することにより推定したこのトピックに対応する対話(サブ対話シナリオ916)を実行する。しかし、この意図理解モデルM2による対話の実行中に、「預金したい。」という入力テキスト200が対話制御部60に入力された場合(例えば、サブ対話シナリオ916による対話の実行中において、「印鑑をお持ちですか?」という出力テキスト400の送信後に「持っていない。それから、預金したい」という入力テキスト200が対話制御部60に入力された場合)、音声対話支援システム2000は、(現在使用している)意図理解モデルM2に基づき、「持っていない。」に対応するトピック(「I1−2」)である「印鑑不所持」を推定することはできるが、意図理解モデルM2には「預金したい。」に対応するトピックが定義されていないため、音声対話支援システム2000は、適切なトピック(例えば、意図理解モデルM1のトピックID「I2−1」に対応する「預金の手続き」)を推定できない。
In this case, the voice
この原因は、各意図理解モデル94に定義されているトピック情報の数が少ないためであるので、この対処法としては、ユーザが、各意図理解モデル94に多数のトピック情報
及び想定入力テキストを記憶させておくことが考えられるが、そのような作業はユーザにとって煩雑である。
This is because the number of topic information defined in each
そこで、本実施例に係る音声対話支援システム2000は、意図理解モデルの使用履歴を用いることにより、適切なトピックの推定を行う。
Therefore, the voice
図16は、実施例3に係る音声対話支援システム2000の構成の一例を示す図である。同図に示すように、本実施例の音声対話支援システム2000は、実施例2の音声対話支援システム2000と比べると、対話ログ記憶部82が設けられている点が異なる。対話ログ記憶部82は、過去に参照した意図理解モデル94が記録されている対話ログ99を記憶している。
FIG. 16 is a diagram showing an example of the configuration of the voice
すなわち、対話ログ記憶部82は、前記意図を抽出するために参照された前記トピック情報である参照トピック情報(対話ログ99)を記憶する。前記意図理解部80は、前記発せられた言葉から前記意図を抽出する場合に、前記トピック情報及び前記関連トピック情報を参照することにより第1の意図の候補を取得すると共に、前記参照トピック情報を参照することにより第2の意図の候補を取得し、取得した前記第1の意図の候補及び前記第2の意図の候補を所定の基準により比較することにより、前記第1の意図の候補又は前記第2の意図の候補のいずれかを前記抽出する意図とする。
ここで、対話ログ99について詳細に説明する。
That is, the dialogue
Here, the
(対話ログ)
対話ログ99には、入力テキスト200及び出力テキスト400(以下、両者をあわせて入出力テキストという。)の情報が記録される。
(Dialogue log)
Information on the
図17は、対話ログ99の一例を示す図である。同図に示すように、対話ログ99は、入出力テキストの内容が格納されるテキスト993、テキスト993の入出力テキストが出力テキスト400であるか入力テキスト200であるかを示す情報(属性の情報)が格納されるデータ属性992、テキスト993の入出力テキストに対応づけられているトピックのトピックIDが格納されるトピックID994、トピックID994のトピックの名称が格納されるトピック名995、テキスト993の入出力テキストが入力又は出力された処理において参照された意図理解モデルを特定する情報が格納される使用意図理解モデル996、及び、テキスト993の入出力テキストが使用された日時(例えば、トピックの推定日時)が格納される日時991の各項目を有する、少なくとも1つ以上のレコードで構成される。
FIG. 17 is a diagram showing an example of the
<処理>
次に、本実施例において音声対話支援システム2000が行う音声対話支援処理について説明する。
<Processing>
Next, the voice dialogue support process performed by the voice
本実施例において、音声認識処理s1、及び音声出力処理s3は実施例1、2と同様である。ここでは、対話制御処理s2が実施例1、2で示した対話シナリオ91(図7)と、実施例2の意図理解モデル94(図13)、サブ対話シナリオ916(図14)、及び出力テキストリスト96(図15)とに基づき行われることを前提に、本実施例に係る対話制御処理s2を説明する。また、図17に示した対話ログ99が記憶されているものとする。
In this embodiment, the voice recognition process s1 and the voice output process s3 are the same as those in the first and second embodiments. Here, the dialogue control process s2 includes the dialogue scenario 91 (FIG. 7) shown in Examples 1 and 2, the intention understanding model 94 (FIG. 13) of the second embodiment, the sub-dialogue scenario 916 (FIG. 14), and the output text. The dialogue control process s2 according to the present embodiment will be described on the premise that the operation is performed based on the list 96 (FIG. 15). Further, it is assumed that the
まず、図7に示すように、対話制御部60が実施例2と同様に、音声認識部20から入力テキスト200を受信すると、意図理解モデルM1を参照することにより複数のトピックを推定する(処理ステップ0及び処理ステップ1)。そして対話制御部60は、選択し
た1つのトピックについて、意図理解モデルM2を参照することにより、前記選択したトピックに対応する出力テキスト400を取得し、取得した出力テキストを音声合成部40に送信する(処理ステップ2)。
First, as shown in FIG. 7, when the
ここで、対話制御部60は、音声認識部20から新たな入力テキスト200として、複数のトピックが含まれている入力テキスト200(「持っていない。預金したい。」)を受信したとする。
Here, it is assumed that the
すると、意図理解部80は、この入力テキスト200を、第1の分割テキスト201(「持っていない。」)と、第2の分割テキスト201(「預金したい。」)に分割する。
Then, the
そして、意図理解部80は、対話ログ99を参照して、直前に行ったトピックの推定において参照された意図理解モデル94を取得する。具体的には、意図理解部80は、図17に示すように、「2016年12月1日 14:00:01」に行ったトピックの推定に参照された「
意図理解モデルM1」を取得する。
Then, the
Intention understanding model M1 ”is acquired.
ここで、意図理解部80は、第1の分割テキスト201(「持っていない。」)に対して、前記で取得した意図理解モデルM1を参照することにより、実施例1で説明した類似度を用いてトピックの推定を行う(第1の意図の候補)。また、意図理解部80は、第1の分割テキスト201(「持っていない。」)に対して、現在参照されている意図理解モデルである意図理解モデルM2を参照することにより、実施例1で説明した類似度を用いてトピックの推定を行う(第2の意図の候補)。
Here, the
そして、意図理解部80は、意図理解モデルM1及び意図理解モデルM2に基づくトピック推定において算出された類似度のうちその値が大きい方のトピック推定に係るトピック(本実施例では、意図理解モデルM2を参照して推定された、トピックIDが「I1−2」のトピック「印鑑不所持」であるとする。)を、第1の分割テキスト201(「持っていない」)に対応するトピックと推定する。
Then, the
意図理解部80は、第2の分割テキスト201(「預金したい」)に対しても同様に、意図理解モデルM1を参照することにより、実施例1で説明した類似度を用いてトピックの推定を行う(第1の意図の候補)。また、意図理解部80は、第2の分割テキスト201(「預金したい」)に対して、意図理解モデルM2を参照することにより、実施例1で説明した類似度を用いてトピックの推定を行う(第2の意図の候補)。
Similarly, the
そして、意図理解部80は、意図理解モデルM1及び意図理解モデルM2に基づくトピック推定において算出された類似度のうちその値が大きい方のトピック推定に係るトピック(本実施例では、意図理解モデルM1を参照して推定された、トピックIDが「I2−1」のトピック「預金の手続き」であるとする。)を、第2の分割テキスト201(「持っていない」)に対応するトピックと推定する。
Then, the
そして、意図理解部80は、このように推定したトピック(「I1−2」及び「I2−1」のトピックIDリスト300)を、実施例2と同様に対話制御部60に送信する。
Then, the
なお、意図理解部80は、前記で推定した各トピックについて、そのトピックID、トピック名、参照した意図理解モデルの情報、トピックの推定に用いられた入力テキスト200の情報、推定日時、入力テキスト200の属性の情報、及び入力テキスト200の内容を対話ログ99に追記することにより、対話ログ99を更新する。
For each topic estimated above, the
図18は、対話ログ99の更新後の一例を示す図である。同図に示すように、対話ログ
99には、トピックIDが「I1−2」「I2−1」のトピックを推定するために参照された意図理解モデルである「意図理解モデルM1」及び「意図理解モデルM2」に係るレコード997が追加されている。
FIG. 18 is a diagram showing an example after updating the
以上に説明したように、本実施例に係る音声対話支援システム2000は、発せられた言葉から意図を抽出する場合に、トピック情報及び関連トピック情報を参照することにより第1の意図の候補を取得すると共に、参照トピック情報を参照することにより第2の意図の候補を取得し、第1の候補及び第2の候補を所定の基準により比較することにより(例えば実施例1で説明した類似度により比較することにより)、第1の意図の候補又は第2の意図の候補のいずれかを、抽出する意図とするので、過去に行われたトピックの対話に基づいてトピックの推定を合理的に行うことができる。
As described above, the voice
すなわち、本実施例に係る音声対話支援システム2000は、対話シナリオ91において、現在参照している意図理解モデル94と直前に参照された意図理解モデルとを併用することにより、対話相手があるトピックについての対話中にその直前に話しておくべきであったトピックを思い出して対話する等、トピックが随時変化する場合であっても、それぞれのトピックについて適切な対話を行うことが可能となる。また、トピックに変化が生じる場合に備えて意図理解モデルにおけるトピック情報の記憶量を増やす必要もない。
That is, in the
以上の各実施例の説明は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明はその趣旨を逸脱することなく、変更、改良され得ると共に本発明にはその等価物が含まれる。 The above description of each embodiment is for facilitating the understanding of the present invention, and does not limit the present invention. The present invention can be modified and improved without departing from the spirit of the present invention, and the present invention includes its equivalents.
例えば、各実施例では、対話シナリオ91は全てのトピックで共通しているものとしたが、トピックごとに異なる対話シナリオ91を使用してもよい。
For example, in each embodiment, the
また、各実施例において音声対話支援システム2000は音声対話型ロボット(サービスロボット)であるものとしたが、音声対話支援システム2000はこれらの他、タブレット端末やチャットボット(Chatbot)であってもよい。音声対話支援システム2000
は、音声又はテキストを入力とした対話システムに広く適用することができる。
Further, in each embodiment, the voice
Can be widely applied to dialogue systems with voice or text input.
2000 音声対話支援システム、1000 対話支援システム、62 対話生成部、64 対話出力部、80 意図理解部、85 意図理解モデル記憶部 2000 Voice dialogue support system, 1000 Dialogue support system, 62 Dialogue generation unit, 64 Dialogue output unit, 80 Intention understanding unit, 85 Intention understanding model storage unit
Claims (7)
対話の主題を示す情報であるトピック情報と当該主題に関する言葉とを対応づけた情報である意図理解モデルを、異なる主題について複数記憶している意図理解モデル記憶部と、
外部から発せられた言葉を複数の言葉の部分に分割する分割部と、
前記分割した言葉と、前記意図理解モデルのそれぞれのトピック情報との間の類似度を算出し、算出した前記類似度のうち最大の類似度を算出した前記意図理解モデルを参照することにより、前記分割した言葉に対応する意図を抽出する意図理解部と、
前記抽出した意図のそれぞれについて、当該意図に関連づけられた、発話の手順を記憶した情報である対話シナリオを取得し、取得した前記対話シナリオが示す手順に基づき、当該意図に対応した言葉を、前記対話を構成する言葉として生成する対話生成部と、
を備え、
前記意図理解部は、前記分割した言葉に対応する意図を抽出する場合に、複数の意図理解モデルのそれぞれのトピック情報と、前記分割した言葉との間の類似度を算出し、算出した類似度のうち最大の類似度を算出した意図理解モデルを特定すると共に、直前に発せられた、分割された言葉の意図の抽出に使用された意図理解モデルのトピック情報と、前記分割した言葉との間の類似度を算出し、算出した類似度と前記最大の類似度とを比較し、類似度が高い方の意図理解モデルを参照することにより、前記分割した言葉に対応する意図を抽出する
対話支援システム。 A dialogue support system with a processor and memory
An intention understanding model storage unit that stores a plurality of intention understanding models, which are information that associates topic information that indicates the subject of dialogue with words related to the subject, for different subjects.
A division part that divides words emitted from the outside into multiple word parts,
By calculating the similarity between the divided words and the topic information of each topic information of the intention understanding model, and referring to the intention understanding model for which the maximum similarity among the calculated similarity is calculated, the said. The intention understanding department that extracts the intention corresponding to the divided words,
For each of the extracted intentions, a dialogue scenario, which is information related to the intention and memorizes the utterance procedure, is acquired, and based on the procedure indicated by the acquired dialogue scenario, words corresponding to the intention are described. A dialogue generator that is generated as words that make up the dialogue ,
With
The intention understanding unit calculates the similarity between the topic information of each of the plurality of intention understanding models and the divided words when extracting the intention corresponding to the divided words, and the calculated similarity. Between the topic information of the intention understanding model used to extract the intention of the divided words issued immediately before and the topic information of the divided words, while identifying the intention understanding model for which the maximum similarity was calculated. Dialogue support to extract the intention corresponding to the divided words by calculating the similarity of the above, comparing the calculated similarity with the maximum similarity, and referring to the intention understanding model with the higher similarity. system.
前記対話を構成する言葉を音声に変換する音声合成部と、
を備える、請求項1に記載の対話支援システム。 A voice recognition unit that converts a voice input from the outside into a character string and converts it into a word emitted from the outside.
A speech synthesizer that converts the words that make up the dialogue into speech,
The dialogue support system according to claim 1.
前記意図理解部は、前記トピック情報及び前記関連トピック情報を参照することにより、前記分割された言葉に対する意図を抽出する、請求項1に記載の対話支援システム。 The intention understanding model storing unit, and the topic information in the first of the intention understanding model, and a second of the intention understanding model including relevant topics information indicating the topics related to topics that the topic information I remember it in association with it
The dialogue support system according to claim 1, wherein the intention understanding unit extracts an intention for the divided words by referring to the topic information and the related topic information.
前記対話を構成する言葉を音声に変換する音声合成部と、
を備え、
前記意図理解モデル記憶部は、第1の前記意図理解モデルにおける前記トピック情報と、当該トピック情報が示すトピックに関連するトピックを示す情報である関連トピック情報を含む第2の前記意図理解モデルとを対応づけて記憶しており、
前記意図理解部は、前記トピック情報及び前記関連トピック情報を参照することにより、前記分割された言葉に対する意図を抽出する、
請求項1に記載の対話支援システム。 A voice recognition unit that converts a voice input from the outside into a character string and converts it into a word emitted from the outside .
A speech synthesizer that converts the words that make up the dialogue into speech,
With
The intention understanding model storing unit, and the topic information in the first of the intention understanding model, and a second of the intention understanding model including relevant topics information indicating the topics related to topics that the topic information I remember it in association with it
The intention understanding unit extracts the intention for the divided words by referring to the topic information and the related topic information.
The dialogue support system according to claim 1.
対話の主題を示す情報であるトピック情報と当該主題に関する言葉とを対応づけた情報である意図理解モデルを、異なる主題について複数記憶する意図理解モデル記憶処理と、
外部から発せられた言葉を複数の言葉の部分に分割する分割処理と、
前記分割した言葉と、前記意図理解モデルのそれぞれのトピック情報との間の類似度を算出し、算出した前記類似度のうち最大の類似度を算出した前記意図理解モデルを参照することにより、前記分割した言葉に対応する意図を抽出する意図理解処理と、
前記抽出した意図のそれぞれについて、当該意図に関連づけられた、発話の手順を記憶した情報である対話シナリオを取得し、取得した前記対話シナリオが示す手順に基づき、当該意図に対応した言葉を、前記対話を構成する言葉として生成する対話生成処理と、
前記生成した言葉を出力する対話出力処理と、
を実行し、
前記意図理解処理は、前記分割した言葉に対応する意図を抽出する場合に、複数の意図理解モデルのそれぞれのトピック情報と、前記分割した言葉との間の類似度を算出し、算出した類似度のうち最大の類似度を算出した意図理解モデルを特定すると共に、直前に発せられた、分割された言葉の意図の抽出に使用された意図理解モデルのトピック情報と、前記分割した言葉との間の類似度を算出し、算出した類似度と前記最大の類似度とを比較し、類似度が高い方の意図理解モデルを参照することにより、前記分割した言葉に対応する意図を抽出する処理である
対話支援方法。 An information processing device equipped with a processor and memory
Intention understanding model memory processing that stores multiple intention understanding models, which are information that associates topic information that indicates the subject of dialogue with words related to the subject, for different subjects.
A division process that divides words emitted from the outside into multiple word parts,
By calculating the similarity between the divided words and the topic information of each topic information of the intention understanding model, and referring to the intention understanding model for which the maximum similarity among the calculated similarity is calculated, the said. Intention understanding processing that extracts the intention corresponding to the divided words,
For each of the extracted intentions, a dialogue scenario, which is information related to the intention and memorizes the utterance procedure, is acquired, and based on the procedure indicated by the acquired dialogue scenario, words corresponding to the intention are described. Dialogue generation processing that is generated as words that make up the dialogue,
Dialogue output processing that outputs the generated words and
The execution,
In the intention understanding process, when extracting the intention corresponding to the divided words, the similarity between the topic information of each of the plurality of intention understanding models and the divided words is calculated, and the calculated similarity is calculated. Between the topic information of the intention understanding model used to extract the intention of the divided words issued immediately before and the topic information of the divided words, while identifying the intention understanding model for which the maximum similarity was calculated. In the process of calculating the similarity of the above, comparing the calculated similarity with the maximum similarity, and referring to the intention understanding model with the higher similarity, the intention corresponding to the divided words is extracted. A dialogue support method.
対話の主題を示す情報であるトピック情報と当該主題に関する言葉とを対応づけた情報である意図理解モデルを、異なる主題について複数記憶している意図理解モデル記憶処理と、
外部から発せられた言葉を複数の言葉の部分に分割する分割処理と、
前記分割した言葉と、前記意図理解モデルのそれぞれのトピック情報との間の類似度を算出し、算出した前記類似度のうち最大の類似度を算出した前記意図理解モデルを参照することにより、前記分割した言葉に対応する意図を抽出する意図理解処理と、
前記抽出した意図のそれぞれについて、当該意図に関連づけられた、発話の手順を記憶した情報である対話シナリオを取得し、取得した前記対話シナリオが示す手順に基づき、当該意図に対応した言葉を、前記対話を構成する言葉として生成する対話生成処理と、
前記生成した言葉を出力する対話出力処理と、
を実行させ、
前記意図理解処理は、前記分割した言葉に対応する意図を抽出する場合に、複数の意図理解モデルのそれぞれのトピック情報と、前記分割した言葉との間の類似度を算出し、算出した類似度のうち最大の類似度を算出した意図理解モデルを特定すると共に、直前に発せられた、分割された言葉の意図の抽出に使用された意図理解モデルのトピック情報と、前記分割した言葉との間の類似度を算出し、算出した類似度と前記最大の類似度とを比較し、類似度が高い方の意図理解モデルを参照することにより、前記分割した言葉に対応する意図を抽出する処理である
対話支援プログラム。
For information processing devices equipped with a processor and memory
Intention understanding model memory processing that stores multiple intention understanding models, which are information that associates topic information that indicates the subject of dialogue with words related to the subject, for different subjects.
A division process that divides words emitted from the outside into multiple word parts,
By calculating the similarity between the divided words and the topic information of each topic information of the intention understanding model, and referring to the intention understanding model for which the maximum similarity among the calculated similarity is calculated, the said. Intention understanding processing that extracts the intention corresponding to the divided words,
For each of the extracted intentions, a dialogue scenario, which is information related to the intention and memorizes the utterance procedure, is acquired, and based on the procedure indicated by the acquired dialogue scenario, words corresponding to the intention are described. Dialogue generation processing that is generated as words that make up the dialogue,
Dialogue output processing that outputs the generated words and
To run ,
In the intention understanding process, when extracting the intention corresponding to the divided words, the similarity between the topic information of each of the plurality of intention understanding models and the divided words is calculated, and the calculated similarity is calculated. Between the topic information of the intention understanding model used to extract the intention of the divided words issued immediately before and the topic information of the divided words, while identifying the intention understanding model for which the maximum similarity was calculated. In the process of calculating the similarity of the above, comparing the calculated similarity with the maximum similarity, and referring to the intention understanding model with the higher similarity, the intention corresponding to the divided words is extracted. A dialogue support program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017085246A JP6873805B2 (en) | 2017-04-24 | 2017-04-24 | Dialogue support system, dialogue support method, and dialogue support program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017085246A JP6873805B2 (en) | 2017-04-24 | 2017-04-24 | Dialogue support system, dialogue support method, and dialogue support program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018185561A JP2018185561A (en) | 2018-11-22 |
JP6873805B2 true JP6873805B2 (en) | 2021-05-19 |
Family
ID=64356041
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017085246A Active JP6873805B2 (en) | 2017-04-24 | 2017-04-24 | Dialogue support system, dialogue support method, and dialogue support program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6873805B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020054484A (en) * | 2018-09-28 | 2020-04-09 | 株式会社大都技研 | Game machine |
JP7271942B2 (en) * | 2018-12-25 | 2023-05-12 | 株式会社サテライトオフィス | Bot system program, artificial intelligence speaker system program |
US11790176B2 (en) | 2019-03-19 | 2023-10-17 | Servicenow, Inc. | Systems and methods for a virtual agent in a cloud computing environment |
JP6731513B1 (en) * | 2019-04-24 | 2020-07-29 | Jeインターナショナル株式会社 | Chat management method, chat system, future intention prediction server device, answer generation server device, and program |
CN111191030B (en) * | 2019-12-20 | 2024-04-26 | 北京淇瑀信息科技有限公司 | Method, device and system for identifying single sentence intention based on classification |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000200273A (en) * | 1998-11-04 | 2000-07-18 | Atr Interpreting Telecommunications Res Lab | Speaking intention recognizing device |
JP2003280687A (en) * | 2002-03-20 | 2003-10-02 | Denso Corp | Scenario creation supporting device and program for the same |
JP2004195636A (en) * | 2002-12-02 | 2004-07-15 | Sony Corp | Interaction control device and method and robot device |
JP4589843B2 (en) * | 2005-08-10 | 2010-12-01 | 日本電信電話株式会社 | Dialogue method, dialogue apparatus, dialogue program, and recording medium |
JP5897389B2 (en) * | 2012-04-23 | 2016-03-30 | Scsk株式会社 | Automatic dialogue scenario creation support device and automatic dialogue scenario creation support program |
DE112014005354T5 (en) * | 2013-11-25 | 2016-08-04 | Mitsubishi Electric Corporation | DIALOG MANAGEMENT SYSTEM AND DIALOG MANAGEMENT PROCESS |
JP2015176099A (en) * | 2014-03-18 | 2015-10-05 | 株式会社東芝 | Dialog system construction assist system, method, and program |
US10460034B2 (en) * | 2015-01-28 | 2019-10-29 | Mitsubishi Electric Corporation | Intention inference system and intention inference method |
JP6570169B2 (en) * | 2015-02-23 | 2019-09-04 | Kddi株式会社 | Dialog support program, server and method for supporting user operation together with user dialog system |
JP2016212541A (en) * | 2015-05-01 | 2016-12-15 | 株式会社ATR−Trek | Interactive device, interacting method, and computer program for the same |
KR102420518B1 (en) * | 2015-09-09 | 2022-07-13 | 삼성전자주식회사 | System, Apparatus and Method For Processing Natural Language, and Computer Readable Recording Medium |
-
2017
- 2017-04-24 JP JP2017085246A patent/JP6873805B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018185561A (en) | 2018-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6873805B2 (en) | Dialogue support system, dialogue support method, and dialogue support program | |
US10453454B2 (en) | Dialog system with self-learning natural language understanding | |
US11037553B2 (en) | Learning-type interactive device | |
JP6310150B2 (en) | Intent understanding device, method and program | |
JP6556575B2 (en) | Audio processing apparatus, audio processing method, and audio processing program | |
JP7132090B2 (en) | Dialogue system, dialogue device, dialogue method, and program | |
EP3724875B1 (en) | Text independent speaker recognition | |
RU2731334C1 (en) | Method and system for generating text representation of user's speech fragment | |
JP6370962B1 (en) | Generating device, generating method, and generating program | |
US11756544B2 (en) | Selectively providing enhanced clarification prompts in automated assistant interactions | |
JP6553015B2 (en) | Speaker attribute estimation system, learning device, estimation device, speaker attribute estimation method, and program | |
JP2017125921A (en) | Utterance selecting device, method and program | |
JP2009288567A (en) | Device, method, program and system for preparing minutes | |
JP4861941B2 (en) | Transcription content confirmation method, transcription content confirmation device, computer program | |
JP2019220115A (en) | Voice interactive system, and model creation device and method thereof | |
WO2016151692A1 (en) | Tagging support device, method and program | |
JP6633708B2 (en) | Tag assignment support apparatus, method and program | |
JP2019109424A (en) | Computer, language analysis method, and program | |
JP6830148B1 (en) | Modification candidate identification device, modification candidate identification method, and modification candidate identification program | |
WO2021131406A1 (en) | Information processing device and method for assisting in creation of dialog scenario | |
US20230006948A1 (en) | Response system, response method, and storage medium | |
JP2009129405A (en) | Feeling estimation device, case feeling information generation device, and feeling estimation program | |
WO2021234844A1 (en) | Selection device, priority determination device, answer candidate acquisition device, selection method, priority determination method, answer candidate acquisition method and program | |
JP2017199283A (en) | Information extraction device, method and program | |
JP2015034902A (en) | Information processing apparatus, and information processing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191223 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200923 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201117 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201221 |
|
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: 20210406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210421 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6873805 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |