JP2021189348A - Voice dialogue device, voice dialogue method, and voice dialogue program - Google Patents
Voice dialogue device, voice dialogue method, and voice dialogue program Download PDFInfo
- Publication number
- JP2021189348A JP2021189348A JP2020096174A JP2020096174A JP2021189348A JP 2021189348 A JP2021189348 A JP 2021189348A JP 2020096174 A JP2020096174 A JP 2020096174A JP 2020096174 A JP2020096174 A JP 2020096174A JP 2021189348 A JP2021189348 A JP 2021189348A
- Authority
- JP
- Japan
- Prior art keywords
- voice
- word
- voice dialogue
- sentence
- reliability
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 120
- 230000008569 process Effects 0.000 claims abstract description 99
- 230000004044 response Effects 0.000 claims description 44
- 238000013179 statistical model Methods 0.000 claims description 7
- 235000010724 Wisteria floribunda Nutrition 0.000 description 40
- 238000012545 processing Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 13
- 230000015572 biosynthetic process Effects 0.000 description 7
- 230000010365 information processing Effects 0.000 description 7
- 238000003786 synthesis reaction Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 2
- 230000000877 morphologic effect Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000000547 structure data Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 210000003462 vein Anatomy 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Landscapes
- Machine Translation (AREA)
Abstract
Description
本発明は、音声対話を実行する音声対話装置、音声対話方法、および音声対話プログラムに関する。 The present invention relates to a voice dialogue device, a voice dialogue method, and a voice dialogue program for performing a voice dialogue.
人間との音声対話が可能なコミュニケーションロボットは、テキスト入力の対話システムに比べ、誤りを含む音声入力を受け付けることが多い。この誤りを含む音声入力には様々なパターンがあり、たとえば、音声区間検出誤り、音声認識誤り、無関係な音声の認識、言い淀みや発話途中での訂正発話による崩れた発話がある。したがって、このような音声入力を受け付けた場合、コミュニケーションロボットが入力音声が正常か否かを判定し、適切な例外処理を行うという処理を実行しないと、人間との対話が成立しない。 Communication robots capable of voice dialogue with humans often accept voice input including errors, as compared with text input dialogue systems. There are various patterns of voice input including this error, for example, voice section detection error, voice recognition error, recognition of irrelevant voice, stagnation, and broken utterance due to correction utterance in the middle of utterance. Therefore, when such a voice input is accepted, a dialogue with a human cannot be established unless the communication robot determines whether or not the input voice is normal and performs an appropriate exception handling process.
このような音声対話技術として、特許文献1および特許文献2がある。特許文献1は、音声認識の精度が所定値に満たなかった語句に対応する音声データを、音声により対象者に通知するロボットを開示する。このロボットは、対象者からの発話音声を取得し、取得した発話音声の音声データの内、音声認識の精度が所定値に満たなかった語句に対応する音声データを、前記対象者に対して音声出力する。 Patent Document 1 and Patent Document 2 are such voice dialogue techniques. Patent Document 1 discloses a robot that notifies a subject by voice of voice data corresponding to a phrase whose voice recognition accuracy is less than a predetermined value. This robot acquires the utterance voice from the target person, and among the voice data of the acquired utterance voice, the voice data corresponding to the phrase whose voice recognition accuracy does not reach the predetermined value is voiced to the target person. Output.
特許文献2は、人間の行う確認動作を行うように対話装置を制御し、対話装置の誤った応答を低減する対話制御装置を開示する。この対話制御装置は、対話装置側から対話の契機となる音声を出力して対話を開始する話しかけシナリオ、利用者側からの発話に対して応答する応答シナリオ、及び、利用者に対して対話を開始するか否かを確認する確認シナリオを記憶するシナリオ記憶部と、対話装置側から対話の契機となる音声を出力して対話を開始すべきであるか否かを示す話しかけ開始指標Sと、ある音声に対して応答すべきであるか否かを示す応答開始指標Rとを入力とし、J及びKをそれぞれ1以上の整数の何れかとし、話しかけ開始指標SとJ個の閾値との大小関係、及び、応答開始指標RとK個の閾値との大小関係とに基づき、話しかけシナリオ、応答シナリオ、または、確認シナリオを選択するシナリオ選択部を含む。 Patent Document 2 discloses a dialogue control device that controls the dialogue device so as to perform a confirmation operation performed by a human and reduces an erroneous response of the dialogue device. This dialogue control device outputs a voice that triggers a dialogue from the dialogue device side to start a dialogue, a response scenario that responds to a speech from the user side, and a dialogue with the user. A scenario storage unit that stores a confirmation scenario that confirms whether or not to start, a talk start index S that outputs a voice that triggers the dialogue from the dialogue device side, and indicates whether or not the dialogue should be started. The response start index R, which indicates whether or not a response should be made to a certain voice, is used as an input, J and K are set to any of integers of 1 or more, and the magnitude of the talk start index S and the thresholds of J is set. It includes a scenario selection unit that selects a talking scenario, a response scenario, or a confirmation scenario based on the relationship and the magnitude relationship between the response start index R and K thresholds.
しかしながら、上述した特許文献1,2では、コミュニケーションロボットが、入力された対話音声のどの部分を認識でき、どの部分を認識できなかったかといった点については考慮されていない。したがって、対話音声を発話したユーザは、コミュニケーションロボットにどの部分が伝わっていてどの部分が伝わっていないのかを知ることができない。したがって、ユーザに何度も同じ質問をさせてしまい、ユーザのわずらわしさが増加し、ユーザとの対話が破綻しかねない。 However, in the above-mentioned Patent Documents 1 and 2, it is not considered which part of the input dialogue voice can be recognized and which part cannot be recognized by the communication robot. Therefore, the user who utters the dialogue voice cannot know which part is transmitted to the communication robot and which part is not transmitted. Therefore, the user may be asked the same question over and over again, which may increase the annoyance of the user and disrupt the dialogue with the user.
本発明は、ユーザとの対話の円滑化することを目的とする。 An object of the present invention is to facilitate dialogue with a user.
本願において開示される発明の一側面となる音声対話装置は、プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有する音声対話装置であって、前記プロセッサは、発話音声に関する単語列を構成する各単語の信頼度に基づいて、前記発話音声の発話元に聞き返す聞き返し文を生成する生成処理と、前記生成処理によって生成された聞き返し文を出力する出力処理と、を実行することを特徴とする。 The voice dialogue device according to one aspect of the invention disclosed in the present application is a voice dialogue device having a processor for executing a program and a storage device for storing the program, and the processor is a word string related to spoken voice. Based on the reliability of each word constituting the It is a feature.
本発明の代表的な実施の形態によれば、ユーザとの対話の円滑化を図ることができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。 According to a typical embodiment of the present invention, it is possible to facilitate dialogue with the user. Issues, configurations and effects other than those described above will be clarified by the description of the following examples.
<音声対話例>
図1は、実施例1にかかるユーザとコミュニケーションロボット(以下、単に、「ロボット」)との音声対話例を示す説明図である。図1では、ユーザ101がロボット102に対し「明日の富士山の日の出の時刻は?」という発話音声110と発話した場合のロボット102からの聞き返しパターンP1〜P5を示す。なお、発話音声110の大きさ、発話速度、発音の正確さ、および周囲の環境の少なくとも1つは、下記(A)〜(E)ごとに異なるものとする。
<Example of voice dialogue>
FIG. 1 is an explanatory diagram showing an example of voice dialogue between a user and a communication robot (hereinafter, simply “robot”) according to the first embodiment. FIG. 1 shows the hearing patterns P1 to P5 from the
(A)は、聞き返しパターンP1での応答例を示す。具体的には、たとえば、ロボット102は、発話音声110を「明日の富士山の日の出の〇×△□」(「〇×△□」は、信頼度が低く認識できなかった部分)として音声認識し、信頼度がしきい値以上である高い部分(明日の富士山の日の出の)を聞き返す応答文(以下、聞き返し文)「よく聞き取れませんでした。『明日の富士山の日の出の』の何ですか?」を聞き返しパターンP1として生成し、発話元であるユーザ101に発話する。
(A) shows an example of a response in the listening pattern P1. Specifically, for example, the
(B)は、聞き返しパターンP2での応答例を示す。具体的には、たとえば、ロボット102は、発話音声110を「〇×△富士山〇×△□時刻は?」(「〇×△」および「〇×△□」は、それぞれ信頼度がしきい値未満で低く認識できなかった部分)として音声認識し、信頼度がしきい値以上の高い単語「富士山」および「時刻」を聞き返す聞き返し文「『富士山』?『時刻』? もう一度質問をお願いします。」を聞き返しパターンP2として生成し、ユーザ101に発話する。
(B) shows a response example in the listening back pattern P2. Specifically, for example, the
(C)は、聞き返しパターンP3での応答例を示す。具体的には、たとえば、ロボット102は、発話音声110を「明日の〇×△□の日の出の時刻は?」(「〇×△□」は、信頼度がしきい値未満で低く認識できなかった部分)として音声認識し、信頼度がしきい値未満の低い部分(〇×△□)の推測結果(富士山)と、当該推測結果を含めたユーザ101が発話した発話音声110を確認する聞き返し文「『明日の富士山の日の出の時刻は』とおっしゃいましたか?」とを、聞き返しパターンP3として生成し、ユーザ101に発話する。
(C) shows a response example in the listening back pattern P3. Specifically, for example, the
(D)は、聞き返しパターンP4での応答例を示す。具体的には、たとえば、ロボット102は、発話音声110を高精度に認識し、認識した質問全体を確認するために聞き返す聞き返し文「『明日の富士山の日の出の時刻は』とおっしゃいましたか?」を聞き返しパターンP4として生成し、ユーザ101に発話する。
(D) shows an example of a response in the listening pattern P4. Specifically, for example, the
(E)は、聞き返しパターンP5での応答例を示す。具体的には、たとえば、ロボット102は、発話音声110を認識できず、再質問を依頼する聞き返し文「よく聞き取れなかったのでもう一度お願いします。」を聞き返しパターンP5として生成し、ユーザ101に発話する。
(E) shows an example of a response in the listening pattern P5. Specifically, for example, the
ロボット102は、発話音声110の音声認識結果に対し、音声認識の信頼度に加え、言語尤度(言語モデルのPerplexity)を計算し、音声認識の信頼度および言語尤度によって、通常の対話制御での応答と、上記聞き返しパターンP1〜P5による聞き返し文の生成と、のいずれかを選択する。
The
このように、ロボット102は、発話音声110の一部または全部が音声認識できなかったことをユーザ101に伝えることで、必要な再発話をユーザ101に促し、ユーザ101との対話を円滑に進めることができる。また、ユーザ101は、発話音声110のどの部分が伝わっていてどの部分が伝わっていないのかを知ることができる。
In this way, the
<音声対話システム>
図2は、実施例1にかかる音声対話システムのシステム構成例を示す説明図である。音声対話システム200は、たとえば、クライアントサーバシステムであり、サーバ201と、ロボット102,スマートフォン103などの情報処理装置104と、を有する。サーバ201と情報処理装置104とは、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)などのネットワーク202を介して通信可能である。
<Voice dialogue system>
FIG. 2 is an explanatory diagram showing a system configuration example of the voice dialogue system according to the first embodiment. The
クライアントサーバシステムの場合、音声対話プログラムは、サーバ201にインストールされる。したがって、サーバ201は、音声対話装置として、音声認識処理や音声認識の信頼度算出、言語尤度計算、応答文生成を実行する。この場合、情報処理装置104は、発話音声110の入力、入力した発話音声110のデータ変換、当該変換による音声データのサーバ201への送信、サーバ201からの応答文の受信、応答文の発話を実行する対話インタフェースとなる。
In the case of a client-server system, the voice dialogue program is installed on the
一方、スタンドアロン型の場合、音声対話プログラムは、情報処理装置104にインストールされ、サーバ201は不要である。したがって、情報処理装置104は、音声対話装置として、発話音声110の入力、入力した発話音声110のデータ変換、音声認識処理、音声認識の信頼度算出、言語尤度計算、応答文生成、および応答文の発話を実行する。
On the other hand, in the stand-alone type, the voice dialogue program is installed in the
<音声対話装置のハードウェア構成例>
図3は、音声対話装置のハードウェア構成例を示すブロック図である。音声対話装置300は、プロセッサ301と、記憶デバイス302と、入力デバイス303と、出力デバイス304と、通信インタフェース(通信IF)305と、を有する。プロセッサ301、記憶デバイス302、入力デバイス303、出力デバイス304、および通信IF305は、バス306により接続される。プロセッサ301は、音声対話装置300を制御する。記憶デバイス302は、プロセッサ301の作業エリアとなる。また、記憶デバイス302は、各種プログラムやデータを記憶する非一時的なまたは一時的な記録媒体である。記憶デバイス302としては、たとえば、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、フラッシュメモリがある。入力デバイス303は、データを入力する。入力デバイス303としては、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナ、マイク、生体センサがある。出力デバイス304は、データを出力する。出力デバイス304としては、たとえば、ディスプレイ、プリンタ、スピーカがある。通信IF305は、ネットワーク202と接続し、データを送受信する。
<Hardware configuration example of voice dialogue device>
FIG. 3 is a block diagram showing a hardware configuration example of the voice dialogue device. The
<音声対話装置300の機能的構成例>
図4は、実施例1にかかる音声対話装置300の機能的構成例を示すブロック図である。音声対話装置300は、音声対話プログラムがインストールされたコンピュータである。音声対話装置300は、音声認識モデル411と、標準言語モデル412と、分野別言語モデル413、質問文言語モデル414、対話文脈言語モデル415、および対話知識DB416(データベース)416にアクセス可能である。これらは、図3に示した音声対話装置300の記憶デバイス302または音声対話装置300と通信可能な他のコンピュータの記憶デバイス302に記憶される。
<Example of functional configuration of
FIG. 4 is a block diagram showing a functional configuration example of the
音声認識モデル411は、音響的特徴量と音素との対応関係、音素列と単語との対応関係、および単語列の統計モデルである。音声認識モデル411としては、たとえば、音響モデルと言語モデルとを一つのオブジェクトに組み合わせた重み付き有限状態トランスデューサ(Weighted Finite‐State Transducer:WFST)がある。音響モデルとしては、たとえば、Deep Neural Netowrk(DNN)と隠れマルコフモデル(HMM)とのハイブリッド型の音響モデル(DNN‐HMM)がある。また、言語モデルにはN−gramがある。
The
標準言語モデル412は、対話文を含む様々な分野のテキストから得られた単語の並びの統計モデルである。標準言語モデル412としては、たとえば、単語N−gramでもよく、リカレントニューラルネットワーク(RNN)でもよい。標準言語モデル412は、特定の言語(本例では日本語)としての尤もらしさを評価するために使用される。
The
分野別言語モデル413は、ロボット102の運用環境に関するテキスト(たとえば、運用環境が観光案内であればその観光地の案内に関するテキスト)や想定質問集などから得られた単語の並びの統計モデルである。分野別言語モデル413としては、たとえば、単語N−gramでもよく、RNNでもよい。分野別言語モデル413は、その運用環境で発話される内容としての尤もらしさを評価するために使用される。なお、標準言語モデル412は、複数種類の分野の分野別言語モデル413を集約した言語モデルでもよく、分野別言語モデル413を除いた一般的な話し言葉に関する言語モデルでもよい。
The field-
質問文言語モデル414は、想定質問集や実際にこれまでユーザ101から受けた質問例から得られた品詞レベルでの単語の並びの統計モデルである。質問文言語モデル414としては、たとえば、品詞N−gramでもよく、RNNでもよい。質問文言語モデル414は、単語の並びからユーザ101の発話が質問かどうかを判定するために用いられる言語モデルである。
The question
対話文脈言語モデル415は、対話文を含むあらゆる分野のテキストについて、任意の単語とその周辺に現れる単語群の統計と句の並びの統計を学習させた統計モデルである。対話文脈言語モデル415としては、Bidirectional Encoder Representations from Transformers(BERT)がある。
The dialogue
対話知識DB416は、想定質問文や過去の質問文の例とそれらの答えとを関連付けて格納したデータベースである。
The
また、音声対話装置300は、音声認識部401と、言語尤度取得部402と、信頼度取得部403と、聞き返し判定部404と、対話制御部405と、聞き返し文生成部406と、対話履歴管理部407と、音声合成部408と、を有する。これらは、具体的には、たとえば、図3に示した記憶デバイス302に記憶された音声対話プログラムをプロセッサ301に実行させることにより実現される。
Further, the
音声認識部401は、発話音声110の波形データを入力し、音声認識モデル411を用いて、波形データを音声特徴量Xに変換する。具体的には、たとえば、音声認識部401は、波形データを25[msec]程度の長さで切り出し、音声特徴量ベクトルxに変換する。音声特徴量ベクトルxには、たとえば、13次元のメル周波数ケプストラム係数(MFCC)が用いられる。
The
音声認識部401は、この音声特徴量ベクトルxを10[msec]程度シフトさせながら波形データの全区間を変換し、音声特徴量X=[x_1,…,x_t,…,x_T]を生成する。x_tは、波形データのt番目の区間で変換された音声特徴量ベクトルである。Tは、波形データの区間数である。そして、音声認識部401は、下記式(1)により、音声特徴量Xが与えられた条件で、最も可能性の高い単語列Wtを求める。なお、Wは単語列である。
The
音声認識部401は、単語列Wtを言語尤度取得部402に出力する。また、音声認識部401は、単語ラティスを生成して、信頼度取得部403に出力する。単語列Wtと単語ラティスとを音声認識結果とする。
The
図5は、音声認識結果の一例を示す説明図である。音声認識結果500は、単語列Wtと単語ラティスWLとを含む。単語列Wt(単語列Wも同様)は、1以上の単語の各々の表記、読み、および品詞により構成される。単語列Wtが「今日」、「は」および「晴れ」の場合、単語列Wtは、単語「今日」の表記「今日」、読み「キョー」、および品詞「名詞」と、単語「は」の表記「は」、読み「ワ」、および品詞「助詞」と、単語「晴れ」の表記「晴れ」、読み「ハレ」、および品詞「名詞」により構成される。
FIG. 5 is an explanatory diagram showing an example of the voice recognition result. The
なお、音声認識モデル411と各言語モデル(対話文脈言語モデル415を除く)では、単語の区切りおよび品詞体系は同じ仕様とする。対話文脈言語モデル415で使用するBERTは、対話文脈言語モデル415の学習時に自動的に単語の区切りを決定する。
The
単語ラティスWLは、音声認識の仮説候補のネットワーク構造データである。単語ごとに音響尤度と言語尤度とを合算した数値が付与される。たとえば、単語A(今日)についての音響尤度と言語尤度とを合算した数値は「0.7」であり、単語B(は)についての音響尤度と言語尤度とを合算した数値は「0.6」であり、単語C(晴れ)についての音響尤度と言語尤度とを合算した数値は「0.7」である。これらの数値の合計が最大となるような経路の単語の並びが、単語列Wtである。 The word lattice WL is network structure data of hypothetical candidates for speech recognition. A numerical value that is the sum of the acoustic likelihood and the language likelihood is given for each word. For example, the sum of the acoustic and linguistic likelihoods for word A (today) is "0.7", and the sum of the acoustic and linguistic likelihoods for word B (ha) is. It is "0.6", and the total value of the acoustic likelihood and the language likelihood for the word C (sunny) is "0.7". The sequence of words in the route that maximizes the sum of these numerical values is the word string Wt.
なお、音声認識部401は、音声対話装置300と通信可能な他のコンピュータにユーザ101対話音声の波形データを転送し、当該他のコンピュータが生成した音声認識結果500を取得してもよい。
The
図4に戻り、言語尤度取得部402は、音声認識部401から入力された単語列Wtに対し、複数の言語モデルを使用して、それぞれの言語モデルでの言語尤度(テストセットパープレキシティ)を算出する。複数の言語モデルとは、標準言語モデル412、分野別言語モデル413、質問文言語モデル414、および対話文脈言語モデル415である。このうち、標準言語モデル412および質問文言語モデル414が言語尤度取得部402に必須の言語モデルである。
Returning to FIG. 4, the language
N−gram(単語N−gram、品詞N−gram)を用いた場合の単語列W1nの生起確率は、たとえば、下記式(2)の通りであり、RNNを用いた場合の単語列W1nの生起確率は、下記式(3)の通りであり、BERTを用いた場合の単語列W1nの生起確率は、下記式(4)の通りである。単語列W1nは、単語W1から単語Wn(nは単語列W1nに含まれる単語の総数)までの単語の配列を意味し、ここでは、単語列W1n=単語列Wtである。言語尤度取得部402は、言語モデルごとに算出した言語尤度を聞き返し判定部404に出力する。
The probability of occurrence of the word string W1n when N-gram (word N-gram, part word N-gram) is used is, for example, as shown in the following equation (2), and the occurrence probability of the word string W1n when RNN is used. The probability is as shown in the following formula (3), and the probability of occurrence of the word string W1n when BERT is used is as shown in the following formula (4). The word string W1n means an array of words from the word W1 to the word Wn (n is the total number of words included in the word string W1n), and here, the word string W1n = the word string Wt. The language
なお、言語尤度取得部402は、上記式(2)により、品詞N−gramの質問文言語モデル414を用いて言語尤度を算出する場合、単語列Wtを品詞列に変換する。単語列Wtの各単語は、表記、読み、および品詞により構成されているため、言語尤度取得部402は、単語列Wtの各単語から表記および読みを削除して、品詞のみからなる単語列、すなわち、品詞列に変換する。
When the language
図6は、単語列から品詞列への変換例を示す説明図である。単語列Wtの場合、名詞→助詞→名詞という品詞列に変換される。言語尤度取得部402は、品詞列を単語列W1nとみなして、上記式(2)を適用して言語尤度を算出する。なお、言語尤度取得部402は、品詞列への変換によって必要以上に情報が欠落しないように、活用形がある品詞には活用形を、代名詞および助詞には基本形(単語)を付与してもよい。
FIG. 6 is an explanatory diagram showing an example of conversion from a word string to a part-of-speech string. In the case of the word string Wt, it is converted into a part of speech string of noun → particle → noun. The language
図7および図8は、品詞列の品詞分類定義700の一例を示す説明図で、国立国語研究所が規定した短単位の定義(形態素解析用辞書の品詞分類)に従っている。品詞分類定義700は、たとえば、記憶デバイス302に記憶された情報である。品詞分類定義700は、大分類701と、中分類702と、小分類703と、補足情報704と、を有する。大分類701は、単語W1〜Wnに含まれる品詞を規定する。中分類702は、大分類701を細分化した項目を規定する。小分類703は、中分類702を細分化した項目を規定する。補足情報704は、大分類701〜小分類703に補足すべき情報を規定する。単語列Wtの各単語W1〜Wnの品詞には、大分類701〜小分類703と、活用形がある品詞は活用形、英単語由来のカタカナ語には英語表記など情報が含まれているものとする。
7 and 8 are explanatory diagrams showing an example of the part-
言語尤度取得部402は、単語列Wtから品詞列への変換に際し、品詞分類定義700を参照して、各品詞に対し品詞分類定義700にある情報のみを残し、補足情報704に基本形の記載のある品詞については基本形(単語)を付与する。これにより、品詞列における情報の欠落が抑制される。
When converting the word string Wt to the part of speech string, the language
なお、言語尤度取得部402は、音声対話装置300と通信可能な他のコンピュータに、音声認識部401から入力された単語列Wtを転送し、当該他のコンピュータが単語列Wtに基づいて算出した言語モデルごとの言語尤度を取得してもよい。
The language
図4に戻り、信頼度取得部403は、単語ラティスWLに基づいて、単語列Wtおよび単語列Wtを構成する各単語W1〜Wnの音声認識信頼度(以下、単に、「信頼度」)を算出する。具体的には、たとえば、信頼度とは、音声認識部401によって得られた単語列Wtがどの程度信頼できるかを示す指標値である。ここでは、値が大きいほど信頼度が高いものとする。
Returning to FIG. 4, the
図9は、信頼度取得部403による信頼度算出例を示す説明図である。信頼度取得部403は、まず、単語ラティスWLをネットワーク600に変換する。なお、状態遷移が1つしかない単語(たとえば、単語E)については、信頼度取得部403は、単語の信頼度が1.0である空シンボルεを有する状態遷移を挿入して、単語Eの状態遷移とアライメントをとる。
FIG. 9 is an explanatory diagram showing an example of reliability calculation by the
つぎに、信頼度取得部403は、ネットワーク600における各単語A〜Fの信頼度を区間ごとに1.0で正規化し、単語コンフュージョンネットワーク601に変換する。また、信頼度取得部403は、単語コンフュージョンネットワーク601において、正規化された単語A〜Fの信頼度の調和平均を算出し、単語列Wtの信頼度とする。信頼度取得部403は、正規化された単語A〜Fの信頼度と、単語列Wtの信頼度と、を聞き返し判定部404に出力する。
Next, the
なお、信頼度取得部403は、音声対話装置300と通信可能な他のコンピュータに、音声認識部401から入力された単語ラティスWLを転送し、当該他のコンピュータが単語ラティスWLに基づいて算出した信頼度を取得してもよい。
The
図4に戻り、聞き返し判定部404は、ユーザ101への聞き返しをすべきか否かを判定する。具体的には、たとえば、聞き返し判定部404は、言語尤度取得部402からの言語モデルごとの言語尤度と信頼度取得部403からの単語列Wtの信頼度とを用いて、対話制御部405による対話制御と、聞き返し文生成部406による聞き返し処理と、のうち、いずれの処理を実行するかを判定する。
Returning to FIG. 4, the listening back
なお、言語モデルごとの言語尤度、単語列Wtの信頼度、および正規化された各単語W1〜Wnの信頼度の各々には、それぞれしきい値が設定される。聞き返し判定部404は、言語モデルごとの言語尤度および単語列Wtの信頼度のいずれか1つでもしきい値未満であれば、聞き返し文生成処理を実行する。なお、正規化された各単語W1〜Wnの信頼度は、聞き返し文生成部406で用いられる。
A threshold value is set for each of the language likelihood for each language model, the reliability of the word string Wt, and the reliability of each normalized word W1 to Wn. If any one of the language likelihood and the reliability of the word string Wt for each language model is less than the threshold value, the listening back
対話制御部405は、聞き返し判定部404によってユーザ101に聞き返す必要がないと判定された場合に、対話知識DB416を参照して、発話音声110の音声認識結果500に対応する応答文を生成する。
When the
聞き返し文生成部406は、聞き返し判定部404によってユーザ101に聞き返すべきと判定された場合に、ユーザ101の発話音声110に対する聞き返し文を生成する。具体的には、たとえば、聞き返し文生成部406は、聞き返し判定部404の判定結果(どの言語モデルの言語尤度がしきい値未満か)に応じて聞き返し文を生成する。たとえば、単語列Wtについて一部の単語のみ信頼度がしきい値未満である場合、対話文脈言語モデル415を使用して、当該部分に当てはまる尤もらしい言葉を推定し、推定した言葉をユーザ101が発話したかどうかを聞き返す聞き返し文を応答文として生成する。
The back-to-back
対話履歴管理部407は、ユーザ101の発話音声110の単語列Wtと音声対話装置300が生成した応答文とを蓄積する。音声合成部408は、対話制御部405または聞き返し文生成部406が生成した応答文を音声に変換して出力する。なお、音声対話装置300がクライアントサーバシステムのサーバ201によって実現される場合、音声対話装置300は、音声合成部408を有さず、対話制御部405または聞き返し文生成部406が生成した応答文を、クライアントとなるロボット102やスマートフォン103などの情報処理装置104に送信する。この場合、クライアントが音声合成部408を有し、サーバ201から受信した応答文を音声に変換して出力する。
The dialogue
<音声対話処理手順例>
図10は、実施例1にかかる音声対話装置300による音声対話処理手順例を示すフローチャートである。音声対話装置300は、図5に示したように、ユーザ101対話音声を入力して音声認識部401により音声認識処理を実行し、音声認識結果500を出力する(ステップS1001)。
<Example of voice dialogue processing procedure>
FIG. 10 is a flowchart showing an example of a voice dialogue processing procedure by the
つぎに、音声対話装置300は、信頼度取得部403により、図9に示したように、単語列Wtの信頼度と、単語列Wtを構成する単語W1〜Wnの信頼度と、を取得する(ステップS1002)。また、音声対話装置300は、言語尤度取得部402により、言語モデルごとに言語尤度を取得する(ステップS1003)。
Next, the
なお、ステップS1003において、対話文脈言語モデル415を用いる場合、言語尤度取得部402は、ユーザ101の発話音声110よりも前の音声対話装置300およびユーザ101の発話音声110を繋げた文(単語列)を入力として、言語尤度を取得する。
When the dialogue
たとえば、
音声対話装置300:「こんにちは」
ユーザ101:「こんにちは、あなたの名前は」
音声対話装置300:「僕の名前はロボットです」
ユーザ101:「へーそうなんだ、かわいいね」
音声対話装置300:「ありがとうございます」
ユーザ101:「あなたは何ができるの?」(発話音声110)
という対話を例に挙げる。
for example,
Voice Dialogue Device 300: "Hello"
User 101: "Hello, your name is"
Voice Dialogue Device 300: "My name is a robot"
User 101: "Hey, that's cute, isn't it?"
Voice dialogue device 300: "Thank you"
User 101: "What can you do?" (Voice voice 110)
Take the dialogue as an example.
この場合、ユーザ101の発話音声110である「あなたは何ができるの?」よりも前の音声対話装置300の発話音声「こんにちは」、ユーザ101の発話音声「こんにちは、あなたの名前は」、音声対話装置300の発話音声「僕の名前はロボット102です」、ユーザ101の発話音声「へーそうなんだ、かわいいね」、音声対話装置300の発話音声「ありがとうございます」について音声認識部401から得られた単語列を繋げて、「こんにちは。こんにちは、あなたの名前は。僕の名前はロボットです。へーそうなんだ、かわいいね。ありがとうございます。あなたは何ができるの。」という単語列とする。
In this case, the voice "hello" of the
音声対話装置300は、この繋げた単語列「こんにちは。こんにちは、あなたの名前は。僕の名前はロボットです。へーそうなんだ、かわいいね。ありがとうございます。あなたは何ができるの。」を対話文脈言語モデル415に入力して、言語尤度を算出する。このように、ユーザ101の発話音声110だけではなく、それ以前の対話も対話文脈言語モデル415に入力することにより、対話文脈言語モデル415から得られる言語尤度の高精度化を図ることができる。
The
なお、ステップS1003において、対話文脈言語モデル415を用いる場合、言語尤度取得部402は、音声認識結果500の単語列Wtの各単語をつなげて文を生成し、対話文脈言語モデル415が有する形態素解析器の形態素解析で単語列Wt´にしてもよい。これにより、単語列Wtと単語列Wt´とでは、単語の区切りが異なる場合がある。そして、言語尤度取得部402は、単語列Wt´で尤度算出を行う。
When the dialogue
そして、音声対話装置300は、聞き返し判定部404により、ユーザ101への聞き返しをすべきか否かを判定する(ステップS1004)。具体的には、たとえば、音声対話装置300は、言語モデルごとの言語尤度、および単語列Wtの信頼度のいずれか1つでもしきい値未満であるか否かを判定する。言語モデルごとの言語尤度、および単語列Wtの信頼度のいずれか1つでもしきい値未満である場合(ステップS1004:Yes)、すなわち、ユーザ101への聞き返しをすべき場合、音声対話装置300は、聞き返し文生成部406により聞き返し処理を実行する(ステップS1005)。
Then, the
音声対話装置300は、聞き返し文生成処理(ステップS1005)により、聞き返しパターンP1〜P5のいずれかの応答文を生成、または、応答文の非生成を通知して、ステップS1009に移行する。聞き返し文生成処理(ステップS1005)の詳細は、図11で後述する。
The
一方、言語モデルごとの言語尤度、および単語列Wtの信頼度のいずれもしきい値未満でない場合(ステップS1005:No)、すなわち、ユーザ101への聞き返しの必要がない場合、音声対話装置300は、ユーザ101に対し聞き返しパターンP1、P3、またはP4で聞き返し中であるか否かを判定する(ステップS1006)。
On the other hand, when neither the language likelihood for each language model nor the reliability of the word string Wt is less than the threshold value (step S1005: No), that is, when there is no need to listen back to the
聞き返しパターンP1、P3、またはP4で聞き返し中である場合(ステップS1006:Yes)、音声対話装置300は、聞き返し文生成部406により、言い直し発話解釈処理を実行して(ステップS1007)、ステップS1009に移行する。言い直し発話解釈処理(ステップS1007)とは、ユーザ101が言い直した発話音声を解釈して、当該解釈に応じて応答する処理である。言い直し解釈処理(ステップS1007)の詳細は、図14で後述する。
When the listening pattern P1, P3, or P4 is being heard back (step S1006: Yes), the
一方、聞き返しパターンP1、P3、またはP4で聞き返し中でない場合(ステップS1006:No)、音声対話装置300は、対話制御部405により、対話制御処理を実行し(ステップS1008)、ステップS1009に移行する。対話制御処理(ステップS1008)は、ユーザ101発話音声に応答する応答文を生成する処理である。対話制御処理(ステップS1008)の詳細については、図15で後述する。
On the other hand, when the listening pattern P1, P3, or P4 is not being heard back (step S1006: No), the
ステップS1009では、音声対話装置300は、対話履歴管理部407により、ユーザ101発話音声の単語列Wtと、聞き返し処理(ステップS1005)、言い直し解釈処理(ステップS1007)、および対話制御処理(ステップS1008)によって生成された応答文とを、対話履歴として蓄積する(ステップS1009)。
In step S1009, the dialogue
そして、音声対話装置300は、音声合成部408により、対話制御部405または聞き返し文生成部406によって生成された応答文を、音声に変換して出力する(ステップS1010)。なお、音声対話装置300がスタンドアロン型で実現される場合、音声対話装置300は、図10に示したステップS1001〜S1010の処理を実行する。
Then, the
一方、音声対話装置300がクライアントサーバシステムのサーバ201によって実現される場合、音声対話装置300は、ステップS1001〜1009まで実行し、クライアントとなるコミュニケーションロボット102やスマートフォンなどの通信装置に、応答文を送信する。そして、クライアントが、音声合成部408により、対話制御部405または聞き返し文生成部406によって生成された応答文を、音声に変換して出力する(ステップS1010)。
On the other hand, when the
<聞き返し文生成処理(ステップS1005)>
図11は、図10に示した聞き返し文生成処理(ステップS1005)の詳細な処理手順例を示すフローチャートである。聞き返し文生成部406は、単語列Wtの信頼度がしきい値未満か否かを判定する(ステップS1101)。
<Return sentence generation process (step S1005)>
FIG. 11 is a flowchart showing a detailed processing procedure example of the hearing back sentence generation processing (step S1005) shown in FIG. The hearing back
単語列Wtの信頼度がしきい値未満である場合(ステップS1102:Yes)、聞き返し文生成部406は、単語W1〜Wnの全信頼度がしきい値未満であるか否かを判定する(ステップS1102)。単語W1〜Wnの全信頼度がしきい値未満である場合(ステップS1102:Yes)、聞き返し文生成部406は、単語W1〜Wnのうちどの部分の単語の信頼度がしきい値未満であるかを判定する(ステップS1103)。
When the reliability of the word string Wt is less than the threshold value (step S1102: Yes), the response
部分Aの場合(ステップS1103:部分A)、ステップS1104に移行し、部分Bの場合(ステップS1103:部分B)、ステップS1105に移行し、部分Cの場合(ステップS1103:部分C)、ステップS1106に移行する。なお、一例として、単語列Wtが部分Aおよび部分Bの両方に該当する場合は、部分Aを優先適用し、部分Bおよび部分Cの両方に該当する場合は、部分Bを優先適用する。
In the case of part A (step S1103: part A), the process proceeds to step S1104, and in the case of part B (step S1103: part B), the process proceeds to step S1105, and in the case of part C (step S1103: part C), step S1106. Move to. As an example, when the word string Wt corresponds to both the part A and the part B, the part A is preferentially applied, and when the word string Wt corresponds to both the part B and the part C, the part B is preferentially applied.
部分Aとは、単語列Wtのうち前半または後半に存在し、かつ、信頼度がしきい値未満の複数の単語である。単語W1〜Wnの単語数nが偶数であれば、前半とは単語W1〜Wnのうち単語W1〜W(n/2)であり、後半とは単語W1〜Wnのうち単語W(n/2+1)〜Wnである。単語W1〜Wnの単語数nが奇数であれば、前半とは単語W1〜Wnのうち単語W1〜W((n+1)/2)であり、後半とは単語W1〜Wnのうち単語W((n+1)/2)〜Wnである。 The part A is a plurality of words existing in the first half or the second half of the word string Wt and having a reliability of less than the threshold value. If the number of words n of the words W1 to Wn is even, the first half is the words W1 to W (n / 2) among the words W1 to Wn, and the second half is the word W (n / 2 + 1) among the words W1 to Wn. ) ~ Wn. If the number of words n of the words W1 to Wn is odd, the first half is the words W1 to W ((n + 1) / 2) among the words W1 to Wn, and the latter half is the word W (((n + 1) / 2) among the words W1 to Wn. n + 1) / 2) to Wn.
ただし、当該複数の単語は、自立語を少なくとも一つ含む。自立語とは、付属語以外の品詞(動詞、形容詞、形容動詞、名詞、副詞、連体詞、接続詞、感動詞)の単語である。付属語とは、品詞が助動詞または助詞である単語である。部分Aの場合(ステップS1103:部分A)、ユーザ101の発話音声の前半または後半に、音声対話装置300が音声認識しにくかった単語群が存在する。すなわち、部分Aは、音声対話装置300が、ユーザ101の発話音声のうち半分を聞き取れなかった場合に相当する。
However, the plurality of words include at least one independent word. An independent word is a word of a part of a word (verb, adjective, adjective verb, noun, adverb, adnominal adjective, connective verb, emotional verb) other than an adverb. An adjunct is a word whose part of speech is an auxiliary verb or particle. In the case of the part A (step S1103: part A), there is a word group in the first half or the second half of the spoken voice of the
部分Aの場合(ステップS1103:部分A)、聞き返し文生成部406は、単語列Wtのうち部分を除いた残余の部分、すなわち、信頼度がしきい値以上の単語を聞き返す聞き返し文を聞き返しパターンP1(図1を参照)として生成して(ステップS1104)、ステップS1009に移行する。
In the case of the part A (step S1103: part A), the back
また、部分Bとは、単語列Wtのうち離散的に存在し、かつ、信頼度がしきい値未満の複数の単語(自立語を少なくとも一つ含む)である。ただし、部分Aとの重複を回避するため、単語列Wtの前半と後半のそれぞれに、信頼度がしきい値未満の単語が少なくとも1つ存在する必要がある。すなわち、部分Bは、音声対話装置300が、ユーザ101の発話音声110のうち断片的に聞き取れない部分があった場合に相当する。
Further, the portion B is a plurality of words (including at least one independent word) that exist discretely in the word string Wt and whose reliability is less than the threshold value. However, in order to avoid duplication with the part A, it is necessary that at least one word having a reliability lower than the threshold value exists in each of the first half and the second half of the word string Wt. That is, the part B corresponds to the case where the
部分Bの場合(ステップS1103:部分B)、単語列Wtのうち部分Bに該当しない信頼度が閾値以上の単語を聞き返す聞き返し文を聞き返しパターンP2(図1を参照)として生成して(ステップS1104)、ステップS1009に移行する。 In the case of the part B (step S1103: part B), a back sentence for listening back a word whose reliability does not correspond to the part B in the word string Wt is generated as a back pattern P2 (see FIG. 1) (step S1104). ), The process proceeds to step S1009.
また、部分Cとは、単語列Wtのうち信頼度がしきい値未満の1個の自立語、または、単語列Wtのうち信頼度がしきい値未満の連続する2個の単語(自立語を少なくとも一つ含む)である。ただし、部分Aと重複した場合は部分Aが優先される(部分Aよりも部分Cを優先適用してもよい。)。すなわち、部分Cは、音声対話装置300が、ユーザ101の発話音声110のうち一部分が聞き取れなかった場合に相当する。
Further, the partial C is one independent word whose reliability is less than the threshold value in the word string Wt, or two consecutive words (independent words) whose reliability is less than the threshold value in the word string Wt. Including at least one). However, if it overlaps with the part A, the part A has priority (the part C may be applied preferentially over the part A). That is, the portion C corresponds to the case where the
部分Cの場合(ステップS1103:部分C)、聞き返し文生成部406は、マスク単語推定処理を実行する(ステップS1106)。マスク単語推定処理(ステップS1106)は、マスク単語を推定する処理である。マスク単語とは、部分Cに該当する単語である。マスク単語推定処理(ステップS1106)の詳細については、図12で後述する。
In the case of the part C (step S1103: part C), the hearing back
マスク単語推定処理(ステップS1106)の実行後、聞き返し文生成部406は、マスク単語の推定が成功したか否かを判定する(ステップS1107)。マスク単語の推定が成功した場合(ステップS1107:Yes)、聞き返し文生成部406は、信頼度がしきい値未満である部分Cの推定結果と当該推定結果を含めたユーザ101の発話音声110を確認する聞き返し文とを聞き返しパターンP3(図1を参照)として生成する。
After executing the mask word estimation process (step S1106), the listening back
図1の聞き返しパターンP3の場合、部分Cの推定結果が「富士山」であり、当該推定結果を含めたユーザ101の発話音声110を確認する聞き返し文が、『明日の富士山の日の出の時刻は』である。
In the case of the back-to-back pattern P3 in FIG. 1, the estimation result of the portion C is "Mt. Fuji", and the back-to-back sentence confirming the
一方、マスク単語の推定が成功しなかった場合(ステップS1107:No)、聞き返し文生成部406は、再質問を依頼、すなわち、発話音声110を再要求する聞き返し文を聞き返しパターンP5(図1を参照)として生成し(ステップS1109)、ステップS1009に移行する。
On the other hand, when the estimation of the mask word is not successful (step S1107: No), the hearing-back
また、ステップS1102において、全単語W1〜Wnの信頼度がしきい値未満である場合(ステップS1102:Yes)も、聞き返し文生成部406は、ステップS1109を実行し、ステップS1009に移行する。
Further, in step S1102, even when the reliability of all words W1 to Wn is less than the threshold value (step S1102: Yes), the hearing back
また、ステップS1101において、単語列Wtの信頼度がしきい値以上である場合(ステップS1102:No)、聞き返し文生成部406は、標準言語モデル412の言語尤度がしきい値未満であるか否かを判定する(ステップS1110)。標準言語モデル412の言語尤度がしきい値未満である場合(ステップS1110:Yes)、ステップS1109を実行し、ステップS1009に移行する。
Further, in step S1101, when the reliability of the word string Wt is equal to or higher than the threshold value (step S1102: No), whether the verbal likelihood of the
一方、標準言語モデル412の言語尤度がしきい値以上である場合(ステップS1110:No)、聞き返し文生成部406は、質問文言語モデル414の言語尤度がしきい値未満であるか否かを判定する(ステップS1111)。
On the other hand, when the language likelihood of the
質問文言語モデル414の言語尤度がしきい値以上である場合(ステップS1111:No)、分野別言語モデル413または対話文脈言語モデル415の言語尤度がしきい値未満となる。したがって、聞き返し文生成部406は、質問(ユーザ101の発話音声110)全体を復唱して確認する聞き返し文を聞き返しパターンP4(図1を参照)として生成し(ステップS1112)、ステップS1009に移行する。また、分野別言語モデル413および対話文脈言語モデル415のいずれも用いられていない場合も、質問文言語モデル414の言語尤度がしきい値以上である場合(ステップS1111:No)、聞き返し文生成部406は、ステップS1112を実行する。
When the language likelihood of the question
一方、質問文言語モデル414の言語尤度がしきい値未満である場合(ステップS1111:Yes)、聞き返し文生成部406は、聞き返し文を生成せず、聞き返し文の非生成を通知して(ステップS1113)、ステップS1009に移行する。このように、聞き返し文生成部406は、各単語の信頼度や各言語モデルの言語尤度に応じた聞き返しパターンP1〜P5の聞き返し文を生成することができる。
On the other hand, when the language likelihood of the question
<マスク単語推定処理(ステップS1106)>
図12は、図11に示したマスク単語推定処理(ステップS1106)の詳細な処理手順例を示すフローチャートである。図13は、図11に示したマスク単語推定処理(ステップS1106)の一例を示す説明図である。マスク単語推定処理(ステップS1106)は、ステップS1103:部分Cの場合に実行される。図13では、部分Cである「○×▽」を含む単語列Wtを「○×▽の高さを教えて」という単語列1300とする。
<Mask word estimation process (step S1106)>
FIG. 12 is a flowchart showing a detailed processing procedure example of the mask word estimation process (step S1106) shown in FIG. FIG. 13 is an explanatory diagram showing an example of the mask word estimation process (step S1106) shown in FIG. The mask word estimation process (step S1106) is executed in the case of step S1103: partial C. In FIG. 13, the word string Wt including the partial C “○ × ▽” is defined as the
聞き返し文生成部406は、部分Cである「○×▽」の単語の読みを抽出する(ステップS1201)。図13では、「○×▽」の読み1302として“フサン”が抽出されたとする。つぎに、聞き返し文生成部406は、部分Cの単語「○×▽」をマスク加工して、「***」にする(ステップS1202)。部分Cの単語「○×▽」のマスク後の単語列1300を単語列1301とする。
The hearing-back
つぎに、聞き返し文生成部406は、マスク後の単語列1301を対話文脈言語モデル415の一例であるBERT1310に入力し、マスク単語を予測する(ステップS1203)。ここでは、予測結果1303として、「ランドマークタワー」(予測マスク単語1303A)、「東京タワー」(予測マスク単語1303B)、および「富士山」(予測マスク単語1303C)が予測される。
Next, the listening back
つぎに、聞き返し文生成部406は、予測マスク単語1303A〜1303Cの読みを抽出する(ステップS1204)。ここでは、抽出結果1304として、“ランドマークタワー”(予測マスク単語の読み1304A)、“トーキョータワー”(予測マスク単語の読み1304B)、および“フジサン”(予測マスク単語の読み1304C)が予測される。
Next, the listening back
そして、聞き返し文生成部406は、部分Cの単語「○×▽」の読み1302である“フサン”と、予測マスク単語の読み1304A〜1304Cの各々とを、たとえば、編集距離(レーベンシュタイン距離)で比較する(ステップS1206)。聞き返し文生成部406は、部分Cの単語「○×▽」の読み1302である“フサン”と所定距離以内の予測マスク単語の読み1304A〜1304Cがあるか否かを判定する(ステップS1206)。
Then, the hearing-back
所定距離以内の予測マスク単語の読み1304A〜1304Cがない場合(ステップS1206:No)、聞き返し文生成部406は、マスク単語推定処理(ステップS1106)を終了し、ステップS1107に移行する。この場合、ステップS1107では、マスク単語推定失敗(ステップS1107:No)となる。
When there is no reading 1304A to 1304C of the predicted mask word within a predetermined distance (step S1206: No), the listening back
一方、所定距離以内の予測マスク単語の読み1304A〜1304Cがある場合(ステップS1206:Yes)、聞き返し文生成部406は、編集距離が最も短い予測マスク単語を最も読みが近い予測マスク単語として選択する(ステップS1207)。ここでは、例として“フジサン”(予測マスク単語の読み1304C)を読みとする「富士山」(予測マスク単語1303C)を選択する。そして、聞き返し文生成部406は、マスク単語推定処理(ステップS1106)を終了し、ステップS1107に移行する。この場合、ステップS1107では、マスク単語推定成功(ステップS1107:Yes)となる。
On the other hand, when there are
<言い直し発話解釈処理(ステップS1007)>
図14は、図10に示した言い直し発話解釈処理(ステップS1007)の詳細な処理手順例を示すフローチャートである。言い直し発話解釈処理(ステップS1007)は、ステップS1006:Yesの場合、すなわち、聞き返しパターンP1、P3またはP4で聞き返し中の場合に実行される。
<Rephrasing utterance interpretation processing (step S1007)>
FIG. 14 is a flowchart showing a detailed processing procedure example of the rephrasing utterance interpretation processing (step S1007) shown in FIG. The rephrasing utterance interpretation process (step S1007) is executed in the case of step S1006: Yes, that is, in the case of listening back in the listening back pattern P1, P3 or P4.
ステップS1006:Yesの場合、聞き返し中の聞き返しパターンがP1であれば(ステップS1401:P1)、聞き返し文生成部406は、ユーザ101の言い直し発話音声(今回入力された発話音声の単語列Wt)と前回の発話の認識結果とを結合して(ステップS1402)、対話制御処理(ステップS1403)に移行する。
In the case of step S1006: Yes, if the listening back pattern during listening back is P1 (step S1401: P1), the listening back
ここで、聞き返しパターンP1である前回の発話の認識結果を『明日の富士山の日の出の』であるとする。『明日の富士山の日の出の』は、各単語の信頼度がしきい値以上の単語群である。 Here, it is assumed that the recognition result of the previous utterance, which is the listening pattern P1, is "tomorrow's sunrise of Mt. Fuji". "Tomorrow's sunrise of Mt. Fuji" is a group of words whose reliability of each word is above the threshold.
『明日の富士山の日の出の』が前回のユーザ101の発話音声の単語列の前半部分である場合、聞き返し文生成部406は、ユーザ101の言い直し発話音声(今回入力された発話音声の単語列Wt(たとえば、「時刻教えて」))を、『明日の富士山の日の出の』の末尾に連結して、「明日の富士山の日の出の時刻教えて」を生成する。
When "Tomorrow's sunrise of Mt. Fuji" is the first half of the word string of the previous spoken voice of the
また、聞き返しパターンP1である前回の発話の認識結果を『日の出の時刻教えて』であるとする。『日の出の時刻教えて』は、各単語の信頼度がしきい値以上の単語群である。 Further, it is assumed that the recognition result of the previous utterance, which is the listening pattern P1, is "Tell me the time of sunrise". "Tell me the time of sunrise" is a group of words whose reliability of each word is equal to or higher than the threshold value.
『日の出の時刻教えて』が前回のユーザ101の発話音声の単語列の前半部分である場合、聞き返し文生成部406は、ユーザ101の言い直し発話音声(今回入力された発話音声の単語列Wt(たとえば、「明日の富士山」))を、『日の出の時刻教えて』の先頭に連結して、「明日の富士山 日の出の時刻教えて」を生成する。
When "Tell me the time of sunrise" is the first half of the word string of the utterance voice of the
ただし、聞き返し文生成部406は、ユーザ101の言い直し発話音声(今回入力された発話音声の単語列Wt)と前回の発話の認識結果との一致する部分についてはいずれか一方を削除して、冗長化を防止する。
However, the rehearsal
たとえば、『日の出の時刻教えて』が前回の発話の認識結果であり、前回のユーザ101の発話音声の単語列が「明日の富士山の日の出の時刻」であるとすると、結合結果は、「明日の富士山の日の出の時刻日の出の時刻教えて」となる。この場合、「日の出の時刻」が2回出現しているため、聞き返し文生成部406は、「日の出の時刻」を1つ削除して、「明日の富士山の日の出の時刻教えて」にする。
For example, if "tell me the time of sunrise" is the recognition result of the previous utterance and the word string of the utterance voice of the
また、聞き返し中の聞き返しパターンがP3またはP4であれば(ステップS1401:P3,P4)、聞き返し文生成部406は、聞き返しパターンがP3またはP4(例:「富士山の高さを教えて、とおっしゃいましたか?」)に対するユーザ101の回答(今回入力された発話音声の単語列Wt)が肯定であるか否定であるかを判定する(ステップS1404)。肯定である場合(ステップS1404:肯定)、対話制御処理(ステップS1403)に移行する。対話制御処理(ステップS1403)については、図15で後述する。
Further, if the listening back pattern during listening back is P3 or P4 (step S1401: P3, P4), the listening back
一方、否定である場合(ステップS1404:否定)、聞き返し文生成部406は、再質問を依頼する応答文(例:「質問をもう一度お願いします」)を生成して(ステップS1406)、ステップS1007に移行する。
On the other hand, if it is negative (step S1404: negative), the response
<対話制御処理(ステップS1008、S1403)>
図15は、図10および図14に示した対話制御処理(ステップS1008、S1403)の詳細な処理手順例を示すフローチャートである。まず、対話制御部405は、対話知識DB416を参照して音声認識結果500の単語列Wtに近い想定質問文を検索する(ステップS1501)。具体的には、たとえば、対話制御部405は、単語列Wtと対話知識DB416の想定質問文との編集距離により、単語列Wtとの類似度を想定質問文ごとに算出する。ここでは、例として、編集距離の逆数を類似度とする。したがって、類似度の値が大きい想定質問文ほど単語列Wtに類似する。
<Dialogue control processing (steps S1008, S1403)>
FIG. 15 is a flowchart showing a detailed processing procedure example of the dialogue control processing (steps S1008 and S1403) shown in FIGS. 10 and 14. First, the
つぎに、対話制御部405は、類似度がしきい値以上の想定質問文があるか否かを判定する(ステップS1502)。類似度がしきい値以上の想定質問文がない場合(ステップS1503:No)、対話制御部405は、質問の意味が分からない旨の応答文を生成して、ステップS1009、S1007に移行する。一方、類似度がしきい値以上の想定質問文がある場合(ステップS1502:Yes)、対話制御部405は、対話知識DB416において類似度がしきい値以上の想定質問文に対応する回答文を応答文として出力して(ステップS1504)、ステップS1009、S1007に移行する。
Next, the
<対話例>
図16は、ユーザ101と音声対話装置300との対話の流れの一例を示すフローチャートである。ユーザ101が「富士山の高さを教えて」と発話したとする(ステップS1601)。音声対話装置300は、「富士山の高さを教えて」を「***の高さを教えて」と認識した場合(ステップS1602)、マスク部分の「***」を推定して、「富士山ですか?」と応答する(ステップS1603)(聞き返しパターンP3)。
<Dialogue example>
FIG. 16 is a flowchart showing an example of the flow of dialogue between the
ユーザ101が、「富士山ですか?」に対して否定を意味する「いいえ」を応答した場合(ステップS1604)、音声対話装置300は、マスク部分の推定結果である「富士山」を否定されたため、「質問をもう一度お願いします」と発話する(ステップS1605)。
When the
また、ステップS1603での「富士山ですか?」の質問に、ユーザ101が肯定を意味する「はい」を応答した場合(ステップS1606)、音声対話装置300は、S1601のユーザ101の発話を「富士山の高さを教えて」と認識する。したがって、音声対話装置300は、「富士山の高さ」を想定質問文として、対応する回答「3776メートル」を対話知識DB416から検索し(ステップS1610)、「富士山の高さは3776メートルです。」と発話する(ステップS1611)。
Further, when the
また、ステップS1601のユーザ101の発話音声110である「富士山の高さを教えて」に対し、音声対話装置300が、「富士山の***」と認識した場合(ステップS1607)、「富士山の何ですか?」と応答する(ステップS1608)(聞き返しパターンP1)。これに対し、ユーザ101が「高さ」と応答すると(ステップS1609)、音声対話装置300は、「富士山の高さ」を想定質問文として、対応する回答「3776メートル」を対話知識DB416から検索し(ステップS1610)、「富士山の高さは3776メートルです。」と発話する(ステップS1611)。
Further, when the
このように、実施例1によれば、単語の信頼度や言語尤度に応じて、ユーザ101の発話音声110に対する聞き返しパターンP1〜P5を選択することができる。特に、標準言語モデル412、分野別言語モデル413、質問文言語モデル414、および対話文脈言語モデル415を使ってユーザ101の発話音声110を評価することで、それぞれ、日本語として尤もらしいか、その場での発話として尤もらしいか、質問として尤もらしいか、対話文脈を考慮した上で尤もらしいか、を判定することができ、判定結果に基づいて聞き返しを行うことで、対話の破綻を防ぐことができる。
As described above, according to the first embodiment, the listening back patterns P1 to P5 for the spoken
このように、音声認識の信頼度をもとに必要最低限の聞き返しを行うことで、ユーザ101に何度も同じ質問をさせないようにすることができ、ユーザ101のわずらわしさを低減することができる。
In this way, by performing the minimum necessary re-listening based on the reliability of voice recognition, it is possible to prevent the
実施例2は、実施例1において、ユーザ101の発話音声110の独特の言い回しにより、分野別言語モデル413や対話文脈別言語モデルによってそれらの言語尤度がしきい値以上であるような場合に対し、誤判定、すなわち、ステップS1004:Noに遷移するのを防止する例である。これにより、音声対話装置300がユーザ101に再質問を依頼したり(ステップS1405)、対話制御処理(ステップS1008、S1403)により想定質問文の意味が分からない旨の応答をしたり(ステップS1503)、尤もらしくない想定質問文に対応する尤もらしくない回答をしたり(ステップS1504)するのを防止する。なお、ここでは、実施例2の内容を中心に説明するため、実施例1と重複する部分については説明を省略する。
In the second embodiment, in the case where the language likelihood of the
<音声対話装置300の機能的構成例>
図17は、実施例2にかかる音声対話装置300の機能的構成例を示すブロック図である。音声対話装置300は、実施例1の図4に示した構成のほか、個人性言語モデル1701と、個人識別部1702と、を有する。個人性言語モデル1701は、は、図3に示した音声対話装置300の記憶デバイス302または音声対話装置300と通信可能な他のコンピュータの記憶デバイス302に記憶される。個人識別部1702は、具体的には、たとえば、図3に示した記憶デバイス302に記憶された音声対話プログラムをプロセッサ301に実行させることにより実現される。
<Example of functional configuration of
FIG. 17 is a block diagram showing a functional configuration example of the
個人性言語モデル1701は、ユーザ101固有の性質(個人性)により作成された言語モデルであり、具体的には、たとえば、ユーザ101ごとの対話履歴からユーザ101別に作成される。したがって、対話履歴管理部407は、ユーザ101ごとに対話履歴を管理する。個人性言語モデル1701は、たとえば、単語N−gramやRNNにより実現される。
The
個人識別部1702は、ユーザ101を識別する。個人識別部1702は、具体的には、たとえば、指紋や掌の静脈、虹彩、顔画像、音声といったユーザ101の生体情報を管理し、入力された生体情報と一致した場合に、入力者をその生体情報を持つユーザ101として識別する。また、個人識別部1702は、ユーザIDおよびパスワードを管理し、入力されたユーザIDおよびパスワードと一致した場合に、入力者をユーザ101として識別してもよい。
The
<音声対話処理手順例>
図18は、実施例2にかかる音声対話装置300による音声対話処理手順例を示すフローチャートである。音声対話装置300は、図10に示したステップS1001〜S1010に先立って、ステップS1801〜S1804を実行する。
<Example of voice dialogue processing procedure>
FIG. 18 is a flowchart showing an example of a voice dialogue processing procedure by the
具体的には、たとえば、音声対話装置300は、個人識別部1702により、生体情報を入力したユーザ101を識別する(ステップS1801)。音声対話装置300は、生体情報を入力したユーザ101が登録済みのユーザ101であるか否かを判定する(ステップS1802)。具体的には、たとえば、音声対話装置300は、登録済みの生体情報と入力された生体情報とが一致するか否かを判定し、一致すれば、生体情報を入力したユーザ101が登録済みのユーザ101であると判定する。
Specifically, for example, the
登録済みのユーザ101である場合(ステップS1802:Yes)、音声対話装置300は、当該ユーザ101の個人性言語モデル1701と対話履歴とをロードし(ステップS1803)、ステップS1001に移行する。一方、登録済みのユーザ101でない場合(ステップS1802:No)、音声対話装置300は、当該ユーザ101(以下、新規ユーザ101)の個人性言語モデル1701と対話履歴とを新規作成する(ステップS1804)。具体的には、たとえば、音声対話装置300は、新規ユーザ101と対話して対話履歴を取得し、取得した対話履歴をもとに新規ユーザ101の個人性言語モデル1701を作成する。そして、ステップS1001に移行する。
When the user is a registered user 101 (step S1802: Yes), the
個人性言語モデル1701は、言語尤度算出(ステップS1003)において用いられる。そして、図11に示したステップS1111で質問文言語モデル414の言語尤度がしきい値以上の場合(ステップS1111:No)、分野別言語モデル413、対話文脈言語モデル415または個人性言語モデル1701のいずれかの言語尤度がしきい値未満となる。したがって、聞き返し文生成部406は、質問(ユーザ101の発話音声)全体を復唱して確認する聞き返し文を聞き返しパターンP4(図1を参照)として生成し(ステップS1112)、ステップS1009に移行する。
The
また、分野別言語モデル413、対話文脈言語モデル415および個人性言語モデル1701のいずれも用いられていない場合も、質問文言語モデル414の言語尤度がしきい値以上である場合(ステップS1111:No)、聞き返し文生成部406は、ステップS1112を実行する。
Further, even when none of the field-
このように、実施例2によれば、ユーザ101独特の言い回しによって生じる言語尤度の誤判定を抑制し、対話の円滑化を図ることができる。
As described above, according to the second embodiment, it is possible to suppress the erroneous determination of the language likelihood caused by the wording peculiar to the
また、上述した実施例1および実施例2にかかる音声対話装置300は、下記(1)〜(13)のように構成することもできる。
Further, the
(1)音声対話プログラムを実行するプロセッサ301と、音声対話プログラムを記憶する記憶デバイス302と、を有する音声対話装置300では、プロセッサ301が、発話音声110に関する単語列Wtを構成する各単語W1〜Wnの信頼度を取得する信頼度取得処理(ステップS1102)と、信頼度取得処理(ステップS1102)によって取得された信頼度に基づいて、発話音声110の発話元であるユーザ101に聞き返す聞き返し文を生成する聞き返し文生成処理(ステップS1005)と、を実行する。
(1) In the
これにより、音声対話装置300は、たとえば、図11に示したような聞き返しパターンP1〜P3、P5の中から適切な聞き返し文を生成することができる。
As a result, the
(2)上記(1)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、単語列Wtを構成する全単語W1〜Wnの信頼度がいずれも第1しきい値未満である場合(ステップS1102:Yes)、発話音声110を再要求する聞き返し文を生成する(ステップS1109)。
(2) In the
これにより、音声対話装置300は、たとえば、図11に示したような聞き返しパターンP1〜P3、P5の中から聞き返しパターンP5の聞き返し文を生成して、ユーザ101に再質問を依頼することができる。
As a result, the
(3)上記(1)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、単語列Wtに信頼度が第1しきい値以上の単語が存在する場合(ステップS1102:No)、単語列Wtにおける信頼度が第1しきい値未満の単語の位置に基づいて、聞き返し文を生成する。
(3) In the
これにより、音声対話装置300は、たとえば、図11に示したような聞き返しパターンP1〜P3、P5の中から、信頼度が第1しきい値未満の単語の位置に応じた聞き返し文を生成することができる。
As a result, the
(4)上記(3)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、信頼度が第1しきい値未満の単語が単語列Wtの前半または後半に存在する場合(ステップS1103:部分A)、前半または後半のうち信頼度が第1しきい値未満の単語が存在しない方を聞き返す聞き返し文を生成する(ステップS1104)。
(4) In the
これにより、音声対話装置300は、たとえば、図11に示したような聞き返しパターンP1〜P3、P5の中から聞き返しパターンP1の聞き返し文を生成して、ユーザ101に、発話音声110のうち聞き取れている部分を発話して、聞き取れていない部分の再発話を促すことができる。
As a result, the
(5)上記(3)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、信頼度が第1しきい値未満の単語が単語列Wtの前半および後半にわたって複数存在する場合(ステップS1103:部分B)、単語列Wtのうち第1しきい値以上の単語を聞き返す聞き返し文を生成する(ステップS1105)。
(5) In the
これにより、音声対話装置300は、たとえば、図11に示したような聞き返しパターンP1〜P3、P5の中から聞き返しパターンP2の聞き返し文を生成して、ユーザ101に、発話音声110のうち聞き取れている部分を発話して、ユーザ101に再質問を依頼することができる。
As a result, the
(6)上記(3)の音声対話装置300において、プロセッサ301は、信頼度が第1しきい値未満の1個の単語、または信頼度が第1しきい値未満の連続する2個の単語が単語列に存在する場合(ステップS1103:部分C)、任意の単語とその周辺に現れる単語群の統計と句の並びの統計を学習させた対話文脈言語モデル415に基づいて、1個の単語または連続する2個の単語がどのような単語であるかを推定するマスク単語推定処理(ステップS1106)を実行し、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、マスク単語推定処理(ステップS1106)による推定結果に応じた聞き返し文を生成する。
(6) In the
これにより、音声対話装置300は、たとえば、信頼度が第1しきい値未満の1個の単語、または信頼度が第1しきい値未満の連続する2個の単語を文脈から推定することにより、聞き返しの頻度の低減化を図ることができる。
Thereby, the
(7)上記(6)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、マスク単語推定処理(ステップS1106)による推定が成功した場合(ステップS1107:Yes)、推定した単語を含み、かつ、発話音声110を確認する聞き返し文を生成する(ステップS1108)。
(7) In the
これにより、音声対話装置300は、たとえば、聞き返しパターンP3として、推定した単語と、発話音声110全体とを確認する聞き返し文を生成することができ、どの部分が認識しにくかったか、および全体として、どのように認識したかを、ユーザ101に伝え、聞き返しの頻度の低減化を図ることができる。
As a result, the
(8)上記(6)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、マスク単語推定処理(ステップS1106)による推定が失敗した場合(ステップS1107:No)、発話音声110を再要求する聞き返し文を生成する。
(8) In the
これにより、音声対話装置300は、たとえば、聞き返しパターンP5の聞き返し文を生成して、ユーザ101に再質問を依頼することができる。
As a result, the
(9)上記(1)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、単語列Wtの信頼度が第1しきい値未満である場合(ステップS1101:Yes)、単語列Wtを構成する各単語W1〜Wnの信頼度に基づいて、聞き返し文を生成する。
(9) In the
これにより、単語列Wtの信頼度が第1しきい値未満であれば、発話音声110が正しく認識されていないとして、個々の単語W1〜Wnの信頼度で、どのように聞き返すかを聞き返しパターンP1〜P3、P5から選択することができる。
As a result, if the reliability of the word string Wt is less than the first threshold value, it is assumed that the spoken
(10)上記(1)の音声対話装置300において、プロセッサ301は、複数の言語モデル412〜415の各々に単語列を入力した結果得られる複数の言語尤度を取得する言語尤度取得処理(ステップS1103)を実行し、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、単語列Wtの信頼度が第1しきい値以上である場合(ステップS1101:No)、言語尤度取得処理(ステップS1103)によって取得された複数の言語尤度に基づいて、聞き返し文を生成する。
(10) In the
これにより、発話音声110の認識の信頼性が高い場合に、その単語列Wtがどの言語モデルによる発話として尤もらしいかを特定して、聞き返しパターンP4、P5、または聞き返しなしを選択することができる。
Thereby, when the recognition of the spoken
(11)上記(10)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、複数の言語モデル412〜415のうち複数の分野のテキストから得られた単語の並びの統計モデルである標準言語モデル412に、単語列Wtを入力した結果得られる第1言語尤度が、第2しきい値未満である場合(ステップS1110:Yes)、発話音声110を再要求する聞き返し文を生成する(ステップS1109)。
(11) In the
これにより、標準的な言語の発話として尤もらしくない場合に、聞き返しパターンP5の聞き返し文を生成して、ユーザ101に再質問を促すことができる。
As a result, when it is not plausible as an utterance in a standard language, it is possible to generate a back-to-back sentence of the back-to-back pattern P5 and prompt the
(12)上記(11)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、第1言語尤度が第2しきい値以上である場合(ステップS1110:Yes)、質問文を構成する単語の並びから発話音声110が質問であるかどうかを判定する質問文言語モデル414に、単語列Wtを入力した結果得られる第2言語尤度が、第2しきい値未満であれば(ステップS1111:Yes)、聞き返し文を生成しない(ステップS1113)。
(12) In the
これにより、質問文言語モデル414で質問文として尤もらしいとされた場合に、聞き返しの無駄な繰り返しを抑制し、対話の円滑化を促進することができる。
As a result, when the question sentence is considered to be plausible as a question sentence in the question
(13)上記(11)の音声対話装置300において、聞き返し文生成処理(ステップS1005)では、プロセッサ301は、第1言語尤度が第2しきい値以上である場合、質問文を構成する単語の並びから発話音声110が質問であるかどうかを判定する質問文言語モデル414に、単語列Wtを入力した結果得られる第2言語尤度が、第2しきい値以上であれば(ステップS1111:No)、発話音声110を聞き返す聞き返し文を生成する(ステップS1112)。
(13) In the
これにより、発話音声110が音声認識されても、質問文言語モデル414で質問文として尤もらしくないとされた場合に、聞き返しパターンP4の聞き返し文を生成して、質問全体を再度依頼することができる。
As a result, even if the spoken
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。たとえば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。 It should be noted that the present invention is not limited to the above-mentioned examples, but includes various modifications and equivalent configurations within the scope of the attached claims. For example, the above-described embodiment has been described in detail in order to explain the present invention in an easy-to-understand manner, and the present invention is not necessarily limited to those having all the described configurations. Further, a part of the configuration of one embodiment may be replaced with the configuration of another embodiment. Further, the configuration of another embodiment may be added to the configuration of one embodiment. In addition, other configurations may be added, deleted, or replaced with respect to a part of the configurations of each embodiment.
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、たとえば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサ301がそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
Further, each of the above-mentioned configurations, functions, processing units, processing means, etc. may be realized by hardware by designing a part or all of them by, for example, an integrated circuit, and the
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、IC(Integrated Circuit)カード、SDカード、DVD(Digital Versatile Disc)の記録媒体に格納することができる。 Information such as programs, tables, and files that realize each function is recorded in a storage device such as a memory, a hard disk, an SSD (Solid State Drive), or an IC (Integrated Circuit) card, an SD card, or a DVD (Digital Versail Disc). It can be stored in a medium.
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。 In addition, the control lines and information lines show what is considered necessary for explanation, and do not necessarily show all the control lines and information lines necessary for mounting. In practice, it can be considered that almost all configurations are interconnected.
W1〜Wn 単語
WL 単語ラティス
Wt 単語列
101 ユーザ
102 コミュニケーションロボット
103 スマートフォン
104 情報処理装置
110 発話音声
200 音声対話システム
201 サーバ
202 ネットワーク
300 音声対話装置
301 プロセッサ
302 記憶デバイス
401 音声認識部
402 言語尤度取得部
403 信頼度取得部
404 聞き返し判定部
405 対話制御部
406 聞き返し文生成部
407 対話履歴管理部
408 音声合成部
411 音声認識モデル
412 標準言語モデル
413 分野別言語モデル
414 質問文言語モデル
415 対話文脈言語モデル
416 対話知識DB
W1 to Wn Word WL Word Lattice
Claims (15)
前記プロセッサは、
発話音声に関する単語列を構成する各単語の信頼度を取得する取得処理と、
前記取得処理によって取得された信頼度に基づいて、前記発話音声の発話元に聞き返す聞き返し文を生成する生成処理と、
を実行することを特徴とする音声対話装置。 A voice dialogue device comprising a processor that executes a program and a storage device that stores the program.
The processor
The acquisition process to acquire the reliability of each word that composes the word string related to the spoken voice, and
Based on the reliability acquired by the acquisition process, a generation process for generating a back sentence to be heard back to the originator of the uttered voice, and a generation process.
A voice dialogue device characterized by performing.
前記生成処理では、前記プロセッサは、前記単語列を構成する全単語の信頼度がいずれも第1しきい値未満である場合、前記発話音声を再要求する聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 1.
In the generation process, the processor generates a back sentence that re-requests the spoken voice when the reliability of all the words constituting the word string is less than the first threshold value.
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記単語列に前記信頼度が第1しきい値以上の単語が存在する場合、前記単語列における前記信頼度が第1しきい値未満の単語の位置に基づいて、前記聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 1.
In the generation process, the processor is based on the position of the word having the reliability less than the first threshold value in the word string when the word having the reliability equal to or higher than the first threshold value is present in the word string. To generate the above-mentioned return sentence,
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記信頼度が前記第1しきい値未満の単語が前記単語列の前半または後半に存在する場合、前記前半または前記後半のうち前記信頼度が前記第1しきい値未満の単語が存在しない方を聞き返す聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 3.
In the generation process, when a word whose reliability is less than the first threshold value is present in the first half or the second half of the word string, the processor has the first reliability among the first half or the second half. Generate a reply sentence that listens back to the person who does not have a word less than the threshold value,
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記信頼度が前記第1しきい値未満の単語が前記単語列の前半および後半にわたって複数存在する場合、前記単語列のうち前記第1しきい値以上の単語を聞き返す聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 3.
In the generation process, when the processor has a plurality of words whose reliability is less than the first threshold value over the first half and the second half of the word string, the word of the word string having the first threshold value or more is present. Generate a reply sentence,
A voice dialogue device characterized by that.
前記プロセッサは、
前記信頼度が前記第1しきい値未満の1個の単語、または前記信頼度が前記第1しきい値未満の連続する2個の単語が前記単語列に存在する場合、任意の単語とその周辺に現れる単語群の統計と句の並びの統計を学習させた対話文脈言語モデルに基づいて、前記1個の単語または前記連続する2個の単語がどのような単語であるかを推定する推定処理を実行し、
前記生成処理では、前記プロセッサは、前記推定処理による推定結果に応じた聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 3.
The processor
If one word whose reliability is less than the first threshold value or two consecutive words whose reliability is less than the first threshold value are present in the word string, any word and its word are present. Estimating what kind of word the one word or two consecutive words are based on the dialogue context language model trained by the statistics of the word group appearing in the surroundings and the statistics of the sequence of phrases. Execute the process,
In the generation process, the processor generates a back sentence according to the estimation result by the estimation process.
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記推定処理による推定が成功した場合、推定した単語を含み、かつ、前記発話音声を確認する聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 6.
In the generation process, when the estimation by the estimation process is successful, the processor generates a back sentence including the estimated word and confirming the spoken voice.
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記推定処理による推定が失敗した場合、前記発話音声を再要求する聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 6.
In the generation process, the processor generates a back sentence that re-requests the spoken voice when the estimation by the estimation process fails.
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記単語列の信頼度が第1しきい値未満である場合、前記単語列を構成する各単語の信頼度に基づいて、前記聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 1.
In the generation process, when the reliability of the word string is less than the first threshold value, the processor generates the back sentence based on the reliability of each word constituting the word string.
A voice dialogue device characterized by that.
前記取得処理では、前記プロセッサは、複数の言語モデルの各々に前記単語列を入力した結果得られる複数の言語尤度を取得し、
前記生成処理では、前記プロセッサは、前記単語列の信頼度が第1しきい値以上である場合、前記取得処理によって取得された複数の言語尤度に基づいて、前記聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 1.
In the acquisition process, the processor acquires a plurality of language likelihoods obtained as a result of inputting the word string into each of the plurality of language models.
In the generation process, when the reliability of the word string is equal to or higher than the first threshold value, the processor generates the return sentence based on the plurality of language likelihoods acquired by the acquisition process.
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記複数の言語モデルのうち複数の分野のテキストから得られた単語の並びの統計モデルである第1言語モデルに、前記単語列を入力した結果得られる第1言語尤度が、第2しきい値未満である場合、前記発話音声を再要求する聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 10.
In the generation process, the processor inputs the word string into the first language model, which is a statistical model of a sequence of words obtained from texts in a plurality of fields among the plurality of language models. If the language likelihood is less than the second threshold, a response sentence reclaiming the spoken voice is generated.
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記第1言語尤度が前記第2しきい値以上である場合、質問文を構成する単語の並びから前記発話音声が質問であるかどうかを判定する第2言語モデルに、前記単語列を入力した結果得られる第2言語尤度が、前記第2しきい値未満であれば、前記聞き返し文を生成しない、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 11.
In the generation process, when the first language likelihood is equal to or higher than the second threshold value, the processor determines from the sequence of words constituting the question sentence whether or not the spoken voice is a question. If the second language likelihood obtained as a result of inputting the word string into the language model is less than the second threshold value, the utterance sentence is not generated.
A voice dialogue device characterized by that.
前記生成処理では、前記プロセッサは、前記第1言語尤度が前記第2しきい値以上である場合、質問文を構成する単語の並びから前記発話音声が質問であるかどうかを判定する第2言語モデルに、前記単語列を入力した結果得られる第2言語尤度が、前記第2しきい値以上であれば、前記発話音声を聞き返す聞き返し文を生成する、
ことを特徴とする音声対話装置。 The voice dialogue device according to claim 11.
In the generation process, when the first language likelihood is equal to or higher than the second threshold value, the processor determines from the sequence of words constituting the question sentence whether or not the spoken voice is a question. If the second language likelihood obtained as a result of inputting the word string into the language model is equal to or greater than the second threshold value, a back sentence that listens back to the spoken voice is generated.
A voice dialogue device characterized by that.
前記音声対話方法は、
前記プロセッサが、
発話音声に関する単語列を構成する各単語の信頼度を取得する取得処理と、
前記取得処理によって取得された信頼度に基づいて、前記発話音声の発話元に聞き返す聞き返し文を生成する生成処理と、
を実行することを特徴とする音声対話方法。 A voice dialogue method executed by a voice dialogue device having a processor for executing a program and a storage device for storing the program.
The voice dialogue method is
The processor
The acquisition process to acquire the reliability of each word that composes the word string related to the spoken voice, and
Based on the reliability acquired by the acquisition process, a generation process for generating a back sentence to be heard back to the originator of the uttered voice, and a generation process.
A voice dialogue method characterized by performing.
発話音声に関する単語列を構成する各単語の信頼度を取得する取得処理と、
前記取得処理によって取得された信頼度に基づいて、前記発話音声の発話元に聞き返す聞き返し文を生成する生成処理と、
を実行させることを特徴とする音声対話プログラム。 To the processor
The acquisition process to acquire the reliability of each word that composes the word string related to the spoken voice, and
Based on the reliability acquired by the acquisition process, a generation process for generating a back sentence to be heard back to the originator of the uttered voice, and a generation process.
A voice dialogue program characterized by executing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020096174A JP7471921B2 (en) | 2020-06-02 | 2020-06-02 | Speech dialogue device, speech dialogue method, and speech dialogue program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020096174A JP7471921B2 (en) | 2020-06-02 | 2020-06-02 | Speech dialogue device, speech dialogue method, and speech dialogue program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021189348A true JP2021189348A (en) | 2021-12-13 |
JP7471921B2 JP7471921B2 (en) | 2024-04-22 |
Family
ID=78849346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020096174A Active JP7471921B2 (en) | 2020-06-02 | 2020-06-02 | Speech dialogue device, speech dialogue method, and speech dialogue program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7471921B2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006083020A1 (en) * | 2005-02-04 | 2006-08-10 | Hitachi, Ltd. | Audio recognition system for generating response audio by using audio data extracted |
JP2008039928A (en) * | 2006-08-02 | 2008-02-21 | Xanavi Informatics Corp | Speech interactive apparatus and speech interactive program |
JP2014137430A (en) * | 2013-01-16 | 2014-07-28 | Sharp Corp | Electronic apparatus and cleaner |
WO2015079575A1 (en) * | 2013-11-29 | 2015-06-04 | 株式会社 東芝 | Interactive support system, method, and program |
JP2018081147A (en) * | 2016-11-14 | 2018-05-24 | シャープ株式会社 | Communication device, server, control method and information processing program |
-
2020
- 2020-06-02 JP JP2020096174A patent/JP7471921B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006083020A1 (en) * | 2005-02-04 | 2006-08-10 | Hitachi, Ltd. | Audio recognition system for generating response audio by using audio data extracted |
JP2008039928A (en) * | 2006-08-02 | 2008-02-21 | Xanavi Informatics Corp | Speech interactive apparatus and speech interactive program |
JP2014137430A (en) * | 2013-01-16 | 2014-07-28 | Sharp Corp | Electronic apparatus and cleaner |
WO2015079575A1 (en) * | 2013-11-29 | 2015-06-04 | 株式会社 東芝 | Interactive support system, method, and program |
JP2018081147A (en) * | 2016-11-14 | 2018-05-24 | シャープ株式会社 | Communication device, server, control method and information processing program |
Also Published As
Publication number | Publication date |
---|---|
JP7471921B2 (en) | 2024-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kumar et al. | A Hindi speech recognition system for connected words using HTK | |
KR100563365B1 (en) | Hierarchical Language Model | |
Klatt | Review of the ARPA speech understanding project | |
EP3832643A1 (en) | Dynamic wakewords for speech-enabled devices | |
US6067514A (en) | Method for automatically punctuating a speech utterance in a continuous speech recognition system | |
JP4267081B2 (en) | Pattern recognition registration in distributed systems | |
Komatani et al. | Flexible mixed-initiative dialogue management using concept-level confidence measures of speech recognizer output | |
US9396726B2 (en) | System and methods to create and determine when to use a minimal user specific language model | |
US11615787B2 (en) | Dialogue system and method of controlling the same | |
US12087291B2 (en) | Dialogue system, dialogue processing method, translating apparatus, and method of translation | |
KR20210034276A (en) | Dialogue system, dialogue processing method and electronic apparatus | |
Rabiner et al. | Speech recognition: Statistical methods | |
US10248649B2 (en) | Natural language processing apparatus and a natural language processing method | |
Rabiner et al. | Statistical methods for the recognition and understanding of speech | |
US20040006469A1 (en) | Apparatus and method for updating lexicon | |
Hirschberg et al. | Generalizing prosodic prediction of speech recognition errors | |
KR101283271B1 (en) | Apparatus for language learning and method thereof | |
JP7471921B2 (en) | Speech dialogue device, speech dialogue method, and speech dialogue program | |
EP4205104B1 (en) | System and method for speech processing | |
Choudhary et al. | Process speech recognition system using artificial intelligence technique | |
Jackson | Automatic speech recognition: Human computer interface for kinyarwanda language | |
Liao et al. | Towards the Development of Automatic Speech Recognition for Bikol and Kapampangan | |
JP2008242059A (en) | Device for creating speech recognition dictionary, and speech recognition apparatus | |
Wright | Modelling Prosodic and Dialogue Information for Automatic Speech Recognition | |
JP4947545B2 (en) | Speech recognition apparatus and computer program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230203 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231025 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231107 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231226 |
|
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: 20240319 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240410 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7471921 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |