(57)【要約】【課題】ユーザからの発話音声に対する応答音声の出力が開始されるまでに、ユーザにフィラー情報を出力できるようにする。【解決手段】音声データ取得部１１１および発話音声データ抽出部１１２の制御の下、ユーザからの発話音声に係る発話音声データが取得される。応答準備時間予測部１１３の制御の下、当該発話音声データに基づくユーザ発話時間と、過去の発話音声に係る応答内容データに関する情報とに基づいて、上記発話音声データに関する発話音声の認識に要する第１の時間、応答内容データの生成に要する第２の時間、および応答音声の合成に要する第３の時間が予測され、予測された第１、第２および第３の時間に基づいて、ユーザからの発話音声の終了時点から応答音声の出力を開始するまでに要する遅延時間が予測される。フィラー情報出力部１１４の制御の下、予測された遅延時間に応じたフィラー音声データが上記遅延時間内にスピーカ１５に出力される。【選択図】図２
2019045831.tif 000002
【特許請求の範囲】
【請求項１】
ユーザからの発話音声の認識、当該認識の結果に基づく応答内容データの生成、および当該応答内容データに対応する応答音声の合成の実施とともに使用される、音声処理装置であって、
前記発話音声の長さと、過去の応答内容データに関する情報とに基づいて、前記発話音声の終了時点から前記応答音声の出力を開始するまでに要する遅延時間を予測する予測部と、
前記予測された遅延時間内において、当該遅延時間に応じたフィラー情報を出力するフィラー情報出力部と
を備える音声処理装置。
【請求項２】
前記予測部は、
前記発話音声の長さを検出し、当該検出された発話音声の長さに基づいて前記発話音声の認識に要する第１の時間を予測する手段と、
前記過去の応答内容データに関する情報に基づいて、前記発話音声の認識の結果に基づく応答内容データの生成に要する第２の時間を予測する手段と、
前記過去の応答内容データに関する情報に基づいて、前記生成される応答内容データに対応する応答音声の合成に要する第３の時間を予測する手段と、
前記予測された第１、第２および第３の時間に基づいて、前記発話音声の終了時点から前記応答音声の出力を開始するまでに要する遅延時間を予測する手段と
を備える、請求項１記載の音声処理装置。
【請求項３】
前記第１の時間を予測する手段は、
ユーザからの過去の発話音声の長さと、当該長さの発話音声の認識に要した時間とに基づいて、発話音声の長さと発話音声の認識に要する時間との係数を算出する手段と、
前記検出された発話音声の長さと、前記算出された、発話音声の長さと発話音声の認識に要する時間との係数とに基づいて、前記第１の時間を予測する手段と
を備える、請求項２に記載の音声処理装置。
【請求項４】
前記過去の応答内容データに関する情報は、過去の応答内容データに対応する応答音声の合成に要した時間を含み、
前記第３の時間を予測する手段は、前記第３の時間を、所定の回数の前記過去の応答音声の合成に要した時間の平均値に基づいて予測する、請求項２又は３に記載の音声処理装置。
【請求項５】
前記出力されたフィラー情報の再生が終了した際に、前記ユーザからの発話音声に対する応答音声の合成が完了しているか否かを判定する判定部をさらに備え、
前記フィラー情報出力部は、前記応答音声の合成が完了していないと判定された場合に、追加のフィラー情報を出力する、請求項１乃至４のいずれかに記載の音声処理装置。
【請求項６】
前記出力されたフィラー情報の再生が終了した際に、前記ユーザからの発話音声に対する応答音声の合成が完了しているか否かを判定し、さらに、前記応答音声の合成が完了していないと判定された場合に、前記ユーザからの発話音声の認識と、当該認識の結果に基づく応答内容データの生成が完了しているか否かを判定する判定部をさらに備え、
前記過去の応答内容データに関する情報は、ユーザからの過去の発話音声に対する応答内容データの長さと、当該長さの応答内容データに対応する応答音声の合成に要した時間とを含み、
前記第３の時間を予測する手段は、
前記ユーザからの過去の発話音声に対する応答内容データの長さと、当該長さの応答内容データに対応する応答音声の合成に要した時間とに基づいて、応答内容データの長さと応答音声の合成に要する時間との係数を算出する手段と、
前記応答音声の合成が完了していないと判定され、かつ、前記ユーザからの発話音声の認識と、当該認識の結果に基づく応答内容データの生成が完了していると判定された場合に、前記ユーザからの発話音声に対する応答内容データの長さと、前記算出された、応答内容データの長さと応答音声の合成に要する時間との係数とに基づいて、前記第３の時間を再予測する手段とを備え、
前記遅延時間を予測する手段は、前記再予測された第３の時間に基づいて、前記ユーザからの発話音声の終了時点から前記応答音声の出力を開始するまでに要する遅延時間を再予測し、
前記フィラー情報出力部は、前記再予測された遅延時間内において、前記ユーザからの発話音声の終了時点からの経過時間を前記再予測された遅延時間から減算した時間に応じた、追加のフィラー情報を出力する、請求項２乃至４のいずれかに記載の音声処理装置。
【請求項７】
ユーザからの発話音声の認識、当該認識の結果に基づく応答内容データの生成、および当該応答内容データに対応する応答音声の合成の実施とともに使用される、コンピュータおよびメモリを備える装置が実行する音声処理方法であって、
前記発話音声の長さと、過去の応答内容データに関する情報とに基づいて、前記発話音声の終了時点から前記応答音声の出力を開始するまでに要する遅延時間を予測する過程と、
前記予測された遅延時間内において、当該遅延時間に応じたフィラー情報を出力する過程と
を備える音声処理方法。
【請求項８】
請求項１乃至６のいずれかに記載の音声処理装置が備える各部としてコンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ユーザとの音声対話を支援する音声処理装置、方法およびプログラムに関する。
【背景技術】
【０００２】
従来、スマートフォンやロボット等のように、音声による対話機能を備えた装置が様々開発されている。
【０００３】
このような音声対話では、ユーザからの発話音声の認識、当該認識の結果に基づく応答内容データの生成、および、当該応答内容データに対応する応答音声の合成を実施することにより、応答音声がユーザに返される（例えば、特許文献１を参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−２１８５６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところが、発話音声の認識、応答内容データの生成、および応答音声の合成には、ある程度の処理時間が必要とされる。したがって、発話音声を発したユーザは、装置が応答音声を発するまでの間、装置からレスポンスが返らないことによって不安にさせられるという問題がある。
【０００６】
この発明は上記事情に着目してなされたもので、その目的とするところは、ユーザからの発話音声に対する応答音声の出力が開始されるまでに、ユーザにフィラー情報を出力する音声処理装置、方法およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、この発明の第１の態様は、ユーザからの発話音声の認識、当該認識の結果に基づく応答内容データの生成、および当該応答内容データに対応する応答音声の合成の実施とともに使用される、音声処理装置であって、前記発話音声の長さと、過去の応答内容データに関する情報とに基づいて、前記発話音声の終了時点から前記応答音声の出力を開始するまでに要する遅延時間を予測する予測部と、前記予測された遅延時間内において、当該遅延時間に応じたフィラー情報を出力するフィラー情報出力部とを備えるようにしたものである。
【０００８】
この発明の第２の態様は、前記予測部が、前記発話音声の長さを検出し、当該検出された発話音声の長さに基づいて前記発話音声の認識に要する第１の時間を予測する手段と、前記過去の応答内容データに関する情報に基づいて、前記発話音声の認識の結果に基づく応答内容データの生成に要する第２の時間を予測する手段と、前記過去の応答内容データに関する情報に基づいて、前記生成される応答内容データに対応する応答音声の合成に要する第３の時間を予測する手段と、前記予測された第１、第２および第３の時間に基づいて、前記発話音声の終了時点から前記応答音声の出力を開始するまでに要する遅延時間を予測する手段とを備えるようにしたものである。
【０００９】
この発明の第３の態様は、前記第１の時間を予測する手段が、ユーザからの過去の発話音声の長さと、当該長さの発話音声の認識に要した時間とに基づいて、発話音声の長さと発話音声の認識に要する時間との係数を算出する手段と、前記検出された発話音声の長さと、前記算出された、発話音声の長さと発話音声の認識に要する時間との係数とに基づいて、前記第１の時間を予測する手段とを備えるようにしたものである。
【００１０】
この発明の第４の態様は、前記過去の応答内容データに関する情報が、過去の応答内容データに対応する応答音声の合成に要した時間を含み、前記第３の時間を予測する手段が、前記第３の時間を、所定の回数の前記過去の応答音声の合成に要した時間の平均値に基づいて予測するようにしたものである。
【００１１】
この発明の第５の態様は、前記音声処理装置が、前記出力されたフィラー情報の再生が終了した際に、前記ユーザからの発話音声に対する応答音声の合成が完了しているか否かを判定する判定部をさらに備え、前記フィラー情報出力部が、前記応答音声の合成が完了していないと判定された場合に、追加のフィラー情報を出力するようにしたものである。
【００１２】
この発明の第６の態様は、前記音声処理装置が、前記出力されたフィラー情報の再生が終了した際に、前記ユーザからの発話音声に対する応答音声の合成が完了しているか否かを判定し、さらに、前記応答音声の合成が完了していないと判定された場合に、前記ユーザからの発話音声の認識と、当該認識の結果に基づく応答内容データの生成が完了しているか否かを判定する判定部をさらに備え、前記過去の応答内容データに関する情報が、ユーザからの過去の発話音声に対する応答内容データの長さと、当該長さの応答内容データに対応する応答音声の合成に要した時間とを含み、前記第３の時間を予測する手段が、前記ユーザからの過去の発話音声に対する応答内容データの長さと、当該長さの応答内容データに対応する応答音声の合成に要した時間とに基づいて、応答内容データの長さと応答音声の合成に要する時間との係数を算出する手段と、前記応答音声の合成が完了していないと判定され、かつ、前記ユーザからの発話音声の認識と、当該認識の結果に基づく応答内容データの生成が完了していると判定された場合に、前記ユーザからの発話音声に対する応答内容データの長さと、前記算出された、応答内容データの長さと応答音声の合成に要する時間との係数とに基づいて、前記第３の時間を再予測する手段とを備え、前記遅延時間を予測する手段が、前記再予測された第３の時間に基づいて、前記ユーザからの発話音声の終了時点から前記応答音声の出力を開始するまでに要する遅延時間を再予測し、前記フィラー情報出力部が、前記再予測された遅延時間内において、前記ユーザからの発話音声の終了時点からの経過時間を前記再予測された遅延時間から減算した時間に応じた、追加のフィラー情報を出力するようにしたものである。
【発明の効果】
【００１３】
この発明の第１の態様によれば、ユーザからの発話音声の長さと、過去の応答内容データに関する情報とに基づいて、ユーザからの発話音声の終了時点から、当該発話音声に対する応答音声の出力を開始するまでに要する遅延時間が予測される。その後、予測された遅延時間内において、当該遅延時間に応じた、応答音声の準備処理中の通知であるフィラー情報が出力される。このため、発話音声を発したユーザが、レスポンスが返らないことにより不安にさせられることがなくなる。また、例えば、遅延時間に対応する時間的な長さで意味を有する言葉を発するフィラー音声を出力するようにすると、ユーザは、出力されるフィラー音声の種類によって、応答音声が返ってくるまでに待つ必要がある時間を予測でき、これにより、ユーザをさらに安心させることができる。
【００１４】
この発明の第２の態様によれば、上記発話音声の長さが検出され、検出された発話音声の長さに基づいて上記発話音声の認識に要する第１の時間が予測される。また、過去の応答内容データに関する情報に基づいて、上記発話音声の認識の結果に基づく応答内容データの生成に要する第２の時間と、生成される応答内容データに対応する応答音声の合成に要する第３の時間とが予測される。予測された第１、第２および第３の時間に基づいて、上記遅延時間が予測される。このように、発話音声の認識に要する第１の時間については、検出された発話音声の長さを利用することにより精度が高い予測をすることができる。また、応答内容データの生成に要する第２の時間については、多くの場合、発話音声の認識の相違による応答内容データ生成処理時間の変動は少ないので、過去の応答内容データに関する情報を用いることにより信頼度が高い予測をすることができる。また、応答音声の合成に要する第３の時間についても、過去の応答内容データに関する情報を用いることにより信頼性のある予測をすることができる。
【００１５】
この発明の第３の態様によれば、ユーザからの過去の発話音声の長さと、当該長さの発話音声の認識に要した時間とに基づいて、発話音声の長さと発話音声の認識に要する時間との係数が算出される。上記検出された発話音声の長さと、当該算出された係数とに基づいて、第１の時間が予測される。例えば応答音声の準備処理を別の装置で行う場合等のように、実装によっては通信処理等の遅延時間も生じ得るが、このように過去の発話音声に係る実際の情報を用いることにより、着目する発話音声についても当該過去の情報を取得したのと同条件で処理すれば、このような通信処理等の時間も含めて発話音声の認識に要する第１の時間を予測することができる。
【００１６】
この発明の第４の態様によれば、第３の時間が、所定の回数の過去の応答音声の合成に要した時間の平均値に基づいて予測される。このように過去の応答音声の合成に要した実際の時間を用いることにより、応答音声の合成に要する第３の時間について、信頼度が高い予測をすることができる。
【００１７】
この発明の第５の態様によれば、上記出力されたフィラー情報の再生が終了した際に、応答音声の合成が完了しているか否かが判定される。応答音声の合成が完了していないと判定された場合に、追加のフィラー情報が出力される。このため、出力されたフィラー情報の再生が終了した後に、発話音声を発したユーザが、応答音声が出力されるのをさらに待つ必要がある場合にも、レスポンスが返らないことにより不安にさせられることがなくなる。
【００１８】
この発明の第６の態様によれば、上記出力されたフィラー情報の再生が終了した際に、応答音声の合成が完了しているか否かが判定される。さらに、応答音声の合成が完了していないと判定された場合には、ユーザからの発話音声の認識と、当該認識の結果に基づく応答内容データの生成が完了しているか否かが判定される。ユーザからの発話音声の認識と、当該認識の結果に基づく応答内容データの生成が完了していると判定された場合には、ユーザからの発話音声に対する応答内容データの長さと、過去の応答内容データに関する情報に基づいて算出された応答内容データの長さと応答音声の合成に要する時間との係数とに基づいて、第３の時間が再予測される。再予測された第３の時間に基づいて、ユーザからの発話音声の終了時点から応答音声の出力を開始するまでに要する遅延時間が再予測される。ユーザからの発話音声の終了時点からの経過時間を再予測された遅延時間から減算した時間に応じた、追加のフィラー情報が、再予測された遅延時間内に出力される。このように、第３の時間について、応答内容データの長さを用いることにより精度が高い再予測をすることができ、遅延時間について精度の高い再予測がされることになる。これにより、追加のフィラー情報も、ユーザがさらに待つ必要がある時間に応じたものとすることができ、ユーザをさらに安心させることができる。
【００１９】
すなわち、この発明によれば、ユーザからの発話音声に対する応答音声の出力が開始されるまでに、ユーザにフィラー情報を出力する音声処理装置、方法およびプログラムを提供することができる。
【図面の簡単な説明】
【００２０】
【図１】この発明の第１の実施形態に係る、ユーザとの音声対話を実現するシステムの概略構成図。
【図２】図１に示したシステム中の音声対話装置の機能構成を示すブロック図。
【図３】図１に示したシステム中のサーバの機能構成を示すブロック図。
【図４Ａ】図２に示した音声対話装置の制御ユニットによって実行されるフィラー情報出力処理の一例を示すフロー図。
【図４Ｂ】図２に示した音声対話装置の制御ユニットによって実行されるフィラー情報出力処理の一例を示すフロー図。
【発明を実施するための形態】
【００２１】
以下、図面を参照してこの発明に係わる実施形態を説明する。  
［第１の実施形態］
（構成）
図１は、この発明の第１の実施形態に係る、ユーザとの音声対話を実現するシステムの概略構成図である。本実施形態では、音声処理装置の非限定的な例として音声対話装置について説明する。
【００２２】
本実施形態のシステムは、音声対話装置１と、当該音声対話装置１に通信ネットワークにより接続されたサーバ２とからなる。
【００２３】
音声対話装置１は、マイク１４を介して入力されたユーザからの発話音声に対して、スピーカ１５を介して応答音声を返すものであり、また、当該応答音声を返すまでに、ユーザが待たされる遅延時間に応じたフィラー（例えば音声による応答音声準備処理中の通知）を出力することができる。サーバ２は、音声対話装置１から上記発話音声のデータを受け取り、音声対話装置１から出力されることになる上記応答音声の合成をする装置である。なお、本明細書では、発話音声から応答音声を準備する処理は、音声対話装置１とは別の装置であるサーバ２において実現するようなシステムについて説明しているが、当該準備処理を音声対話装置１において実現するようにしてもよい。
【００２４】
図２は、図１に示したシステム中の音声対話装置１の機能構成を示すブロック図である。
【００２５】
音声対話装置１は、制御ユニット１１と、記憶ユニット１２と、通信インタフェースユニット１３と、マイク１４と、スピーカ１５とを備えている。
【００２６】
マイク１４は、ユーザからの発話音声を制御ユニット１１に入力する。
【００２７】
通信インタフェースユニット１３は、例えば１つ以上の有線または無線の通信インタフェースユニットを含んでいる。通信インタフェースユニット１３は、制御ユニット１１から出力される発話音声データを取得し、取得された発話音声データを通信ネットワークを介してサーバ２に送信する。さらに、通信インタフェースユニット１３は、通信ネットワークを介してサーバ２から応答音声データ等の情報を取得し、取得された情報を制御ユニット１１に入力する。
【００２８】
スピーカ１５は、制御ユニット１１から出力されるフィラー情報および応答音声データを再生する。
【００２９】
記憶ユニット１２は、記憶媒体としてＨＤＤ（Hard Disc Drive）またはＳＳＤ（Solid State Drive）等の随時書き込みおよび読み出しが可能な不揮発メモリを使用したものであり、本実施形態を実現するために使用される記憶領域として、音声データ記憶部１２１と、発話時間記憶部１２２と、応答準備時間記憶部１２３と、応答文字数記憶部１２４と、フィラー情報記憶部１２５とを備えている。なお、発話時間記憶部１２２、応答準備時間記憶部１２３、および応答文字数記憶部１２４は、図面中では別個の記憶部として図示しているが、これらの記憶部に記憶された内容を、例えば１つのテーブルにまとめて記憶するようにしてもよい。
【００３０】
音声データ記憶部１２１は、マイク１４を介して取得された音声のデータを記憶させるために使用される。
【００３１】
発話時間記憶部１２２は、ユーザからの過去の発話音声の時間的な長さであるユーザ発話時間、および、ユーザからの着目する発話音声の時間的な長さであるユーザ発話時間を記憶させるために使用される。
【００３２】
応答準備時間記憶部１２３は、ユーザからの過去の発話音声の認識に要した時間と、当該認識の結果に基づく応答内容データの生成に要した時間と、当該応答内容データに対応する応答音声の合成に要した時間とを記憶させるために使用される。
【００３３】
応答文字数記憶部１２４は、ユーザからの過去の発話音声に対する応答内容データの長さである応答文字数を記憶させるために使用される。
【００３４】
フィラー情報記憶部１２５は、さまざまな長さの時間に応じたフィラー情報を記憶させるために使用される。
【００３５】
制御ユニット１１は、ＣＰＵ（Central Processing Unit）を含み、本実施形態における処理機能を実行するために、音声データ取得部１１１と、発話音声データ抽出部１１２と、応答準備時間予測部１１３と、フィラー情報出力部１１４と、処理完了通知取得部１１５と、応答準備完了判定部１１６と、応答音声データ出力部１１７とを備えている。これらの各部における処理機能はいずれも、図示しないプログラムメモリに格納されたプログラムを上記ＣＰＵに実行させることによって実現される。
【００３６】
音声データ取得部１１１は、マイク１４を介して入力されたユーザからの発話音声を含む音声をデジタルデータに変換し、変換後の音声データを記憶ユニット１２の音声データ記憶部１２１に記憶させる処理を実行する。
【００３７】
発話音声データ抽出部１１２は、記憶ユニット１２の音声データ記憶部１２１に記憶される音声データを読み出し、読み出された音声データにおいてユーザが実際に発話している区間を抽出し、抽出された発話音声データを、通信インタフェースユニット１３に入力する処理を実行する。当該発話音声データは、通信インタフェースユニット１３を介してサーバ２に送信され、サーバ２において、応答音声の準備処理が行われる。また、発話音声データ抽出部１１２は、抽出された発話音声データに基づいて、ユーザからの発話音声に係るユーザ発話時間を検出し、検出されたユーザ発話時間を、記憶ユニット１２の発話時間記憶部１２２に記憶させる処理を実行する。
【００３８】
応答準備時間予測部１１３は、取得された発話音声データに基づく発話音声の認識に要する第１の時間と、当該認識の結果に基づく応答内容データの生成に要する第２の時間と、当該応答内容データに対応する応答音声の合成に要する第３の時間をそれぞれ予測して、予測された第１、第２および第３の時間に基づいて、ユーザからの発話音声の終了時点から、当該発話音声に対する応答音声の出力を開始するまでに要する遅延時間を予測する処理を実行する。第１、第２および第３の時間の予測処理は、応答準備時間予測部１１３が備える、音声認識時間予測部１１３１、応答内容生成時間予測部１１３２、および音声合成時間予測部１１３３において実行される。
【００３９】
音声認識時間予測部１１３１は、記憶ユニット１２の発話時間記憶部１２２に記憶される、取得された発話音声データに基づくユーザ発話時間を読み出す処理を実行する。また、音声認識時間予測部１１３１は、記憶ユニット１２の発話時間記憶部１２２に記憶される、過去の発話音声に係るユーザ発話時間と、記憶ユニット１２の応答準備時間記憶部１２３に記憶される、当該ユーザ発話時間に対応する過去の発話音声の認識に要した時間とを読み出す処理を実行する。音声認識時間予測部１１３１は、取得された発話音声データに基づくユーザ発話時間と、過去の発話音声に係るユーザ発話時間と、当該ユーザ発話時間に対応する過去の発話音声の認識に要した時間とに基づいて、上記発話音声の認識に要する第１の時間を予測する処理を実行する。
【００４０】
応答内容生成時間予測部１１３２は、記憶ユニット１２の応答準備時間記憶部１２３に記憶される過去の応答内容データの生成に要した時間を読み出し、読み出された過去の応答内容データの生成に要した時間に基づいて、上記応答内容データの生成に要する第２の時間を予測する処理を実行する。
【００４１】
音声合成時間予測部１１３３は、記憶ユニット１２の応答文字数記憶部１２４に記憶される、過去の発話音声に対する応答内容データに係る応答文字数と、記憶ユニット１２の応答準備時間記憶部１２３に記憶される、過去の応答内容データに対応する応答音声の合成に要した時間とを読み出す処理を実行する。また、音声合成時間予測部１１３３は、通信インタフェースユニット１３を介してサーバ２から、取得された発話音声データに対する応答内容データに係る応答文字数の通知を受信する処理を実行する。音声合成時間予測部１１３３は、過去の発話音声に対する応答内容データに係る応答文字数と、過去の応答内容データに対応する応答音声の合成に要した時間と、通知される応答文字数とのうちの少なくとも１つに基づいて、上記応答音声の合成に要する第３の時間を予測する処理を実行する。
【００４２】
フィラー情報出力部１１４は、記憶ユニット１２のフィラー情報記憶部１２５に記憶されるさまざまな長さの時間に応じたフィラー情報の中から、予測された遅延時間に応じたフィラー情報を読み出し、読み出されたフィラー情報を上記遅延時間内にスピーカ１５に出力する処理を実行する。なお、フィラー情報記憶部１２５に記憶されたフィラー情報を利用する代わりに、予測された遅延時間に応じたフィラー情報を、ネットワーク上のデータベースからその都度検索して取得するようにしてもよい。
【００４３】
処理完了通知取得部１１５は、音声対話装置１からサーバ２に送信された発話音声データに関する、上記発話音声の認識が完了したことの通知、上記応答内容データの生成が完了したことの通知、および、上記応答音声の合成が完了したことの通知を、通信インタフェースユニット１３を介してサーバ２からそれぞれ取得する処理を実行する。
【００４４】
応答準備完了判定部１１６は、上記出力されたフィラー情報の再生が終了した際に、上記各通知をすべて取得しているか否かに基づいて、ユーザからの発話音声に対する応答音声の合成が完了しているか否かを判定する処理を実行する。
【００４５】
応答音声の合成が完了していないと判定された場合に、フィラー情報出力部１１４は、追加のフィラー情報をスピーカ１５に出力する処理を実行する。
【００４６】
応答音声データ出力部１１７は、応答音声の合成が完了していると判定された場合に、通信インタフェースユニット１３を介してサーバ２から応答音声データを取得し、取得された応答音声データをスピーカ１５に出力する処理を実行する。その後、出力された応答音声データがスピーカ１５から再生され、ユーザとの音声対話がなされる。
【００４７】
図３は、図１に示したシステム中のサーバ２の機能構成を示すブロック図である。
【００４８】
サーバ２は、制御ユニット２１と、記憶ユニット２２と、通信インタフェースユニット２３とを備えている。
【００４９】
通信インタフェースユニット２３は、例えば１つ以上の有線または無線の通信インタフェースユニットを含んでいる。通信インタフェースユニット２３は、通信ネットワークを介して音声対話装置１から発話音声データを取得し、取得された発話音声データを制御ユニット２１に出力する。さらに、通信インタフェースユニット２３は、制御ユニット２１から出力された、発話音声データに対する応答音声データを、通信ネットワークを介して音声対話装置１に出力する。
【００５０】
記憶ユニット２２は、記憶媒体としてＨＤＤ（Hard Disc Drive）またはＳＳＤ（Solid State Drive）等の随時書き込みおよび読み出しが可能な不揮発メモリを使用したものであり、本実施形態を実現するために使用される記憶領域として、発話音声データ記憶部２２１と、発話テキストデータ記憶部２２２と、応答テキストデータ記憶部２２３と、応答音声データ記憶部２２４とを備えている。
【００５１】
発話音声データ記憶部２２１は、音声対話装置１から取得された発話音声データを記憶させるために使用される。
【００５２】
発話テキストデータ記憶部２２２は、発話音声データに基づく発話音声の認識の結果である発話テキストデータを記憶させるために使用される。
【００５３】
応答テキストデータ記憶部２２３は、上記認識の結果に基づく応答内容データである応答テキストデータを記憶させるために使用される。
【００５４】
応答音声データ記憶部２２４は、応答テキストデータに対応する応答音声データを記憶させるために使用される。
【００５５】
制御ユニット２１は、ＣＰＵ（Central Processing Unit）を含み、本実施形態における処理機能を実行するために、音声認識機能部２１１と、応答内容生成機能部２１２と、音声合成機能部２１３とを備えている。これらの各部における処理機能はいずれも、図示しないプログラムメモリに格納されたプログラムを上記ＣＰＵに実行させることによって実現される。
【００５６】
音声認識機能部２１１、応答内容生成機能部２１２、および音声合成機能部２１３はそれぞれ、発話音声データに関する上記発話音声の認識、上記応答内容データの生成、および上記応答音声の合成をする処理を実行する。なお、音声認識機能部２１１、応答内容生成機能部２１２、および音声合成機能部２１３はそれぞれ、各機能部における以下に説明する処理が完了した際に、上記発話音声の認識が完了したことの通知、上記応答内容データの生成が完了したことの通知、および、上記応答音声の合成が完了したことの通知を、通信インタフェースユニット２３を介して音声対話装置１に送信する処理を実行する。
【００５７】
まず、音声認識機能部２１１は、発話音声データ取得部２１１１と、発話テキストデータ生成部２１１２とを備えている。
【００５８】
発話音声データ取得部２１１１は、通信インタフェースユニット２３を介して音声対話装置１から発話音声データを取得し、取得された発話音声データを記憶ユニット２２の発話音声データ記憶部２２１に記憶させる処理を実行する。
【００５９】
発話テキストデータ生成部２１１２は、記憶ユニット２２の発話音声データ記憶部２２１に記憶される発話音声データを読み出す処理を実行する。その後、発話テキストデータ生成部２１１２は、読み出された発話音声データに対応する発話テキストデータを生成し、生成された発話テキストデータを記憶ユニット２２の発話テキストデータ記憶部２２２に記憶させる処理を実行する。
【００６０】
応答内容生成機能部２１２は、応答テキストデータ生成部２１２１を備えている。
【００６１】
応答テキストデータ生成部２１２１は、記憶ユニット２２の発話テキストデータ記憶部２２２に記憶される発話テキストデータを読み出す処理を実行する。その後、応答テキストデータ生成部２１２１は、読み出された発話テキストデータに基づいて、ユーザからの発話音声に対する応答文章である、応答内容データとしての応答テキストデータを生成し、生成された応答テキストデータを記憶ユニット２２の応答テキストデータ記憶部２２３に記憶させる処理を実行する。
【００６２】
音声合成機能部２１３は、応答音声データ合成部２１３１と、応答音声データ出力部２１３２とを備えている。
【００６３】
応答音声データ合成部２１３１は、記憶ユニット２２の応答テキストデータ記憶部２２３に記憶される応答テキストデータを読み出し、読み出された応答テキストデータに対応する応答音声データを合成し、合成された応答音声データを記憶ユニット２２の応答音声データ記憶部２２４に記憶させる処理を実行する。
【００６４】
応答音声データ出力部２１３２は、記憶ユニット２２の応答音声データ記憶部２２４に記憶される応答音声データを読み出し、読み出された応答音声データを通信インタフェースユニット２３を介して音声対話装置１に出力する処理を実行する。
【００６５】
（動作）
次に、以上のように構成された音声対話装置１の動作を説明する。
【００６６】
図４Ａ，４Ｂは、図２に示した音声対話装置１の制御ユニット１１によって実行されるフィラー情報出力処理の一例を示すフロー図である。
【００６７】
最初に、ステップＳ１０１において、制御ユニット１１は、予めフィラー情報として、例えばさまざまな長さの時間のフィラーの音声データを合成し、合成されたフィラー音声データをフィラー情報記憶部１２５に記憶させておく。例えば、フィラー音声データとして、１秒から１０秒までの時間的な長さを有する、１秒毎に１０個のフィラー音声データを記憶させておく。例えば、１秒の時間的な長さを有するフィラー音声データとしては「ええっと」と発話されるフィラー音声データを、３秒の時間的な長さを有するフィラー音声データとしては「考えているから、ちょっと待ってね」と発話されるフィラー音声データ等を用いる。なお、フィラー情報としてフィラー音声データを用いる例を説明するが、フィラー情報は音声データに限られず、例えば、ユーザからの発話音声に対する応答音声が出力されるまでの遅延時間を（図示していない）ディスプレイに表示してユーザに知らせ続けるテキストデータ等であってもよい。
【００６８】
ステップＳ１０２において、制御ユニット１１は、音声データ取得部１１１の制御の下、マイク１４を介して入力されたユーザからの発話音声を含む音声をデジタルデータに変換し、発話音声データ抽出部１１２の制御の下、当該デジタルデータにおいてユーザが実際に発話している区間を抽出して、ユーザからの発話音声データを取得する。なお、制御ユニット１１は、発話音声データ抽出部１１２の制御の下、取得された発話音声データに基づく発話音声の時間的な長さであるユーザ発話時間を、発話時間記憶部１２２に記憶させる。
【００６９】
取得された発話音声データは、音声対話装置１からサーバ２に送信され、サーバ２において、当該発話音声データに基づく発話音声の認識、当該認識の結果に基づく応答内容データの生成、当該応答内容データに対応する応答音声の合成が実施される。
【００７０】
ステップＳ１０３において、制御ユニット１１は、応答準備時間予測部１１３の制御の下、上記発話音声の認識に要する第１の時間、上記応答内容データの生成に要する第２の時間、および、上記応答音声の合成に要する第３の時間を予測し、例えば、予測された第１、第２および第３の時間の合計時間を算出することによって、ユーザからの発話音声の終了時点から、当該発話音声に対する応答音声の出力を開始するまでに要する遅延時間を予測する。
【００７１】
なお、第１の時間は、応答準備時間予測部１１３の音声認識時間予測部１１３１の制御の下で予測される。具体的には、制御ユニット１１は、音声認識時間予測部１１３１の制御の下、発話時間記憶部１２２に記憶される、過去の発話音声に係るユーザ発話時間と、応答準備時間記憶部１２３に記憶される、当該ユーザ発話時間に対応する過去の発話音声の認識に要した時間とを読み出す。その後、制御ユニット１１は、音声認識時間予測部１１３１の制御の下、読み出された、過去の発話音声に係るユーザ発話時間と、当該ユーザ発話時間に対応する過去の発話音声の認識に要した時間とに基づいて、ユーザ発話時間と発話音声の認識に要する時間との係数を算出する。当該係数は、例えば、ユーザ発話時間を発話音声の認識に要した時間で割った値の平均として算出する、あるいは、最小二乗法により一次関数を求めることによって算出する。その後、制御ユニット１１は、音声認識時間予測部１１３１の制御の下、発話時間記憶部１２２に記憶される、取得された発話音声データに基づく、ユーザからの発話音声に係るユーザ発話時間を読み出し、読み出されたユーザ発話時間と、上記算出された、ユーザ発話時間と発話音声の認識に要する時間との係数とに基づいて、第１の時間を予測する。
【００７２】
第２の時間は、応答準備時間予測部１１３の応答内容生成時間予測部１１３２の制御の下で予測される。具体的には、制御ユニット１１は、応答内容生成時間予測部１１３２の制御の下、応答準備時間記憶部１２３に記憶される過去の応答内容データの生成に要した時間を読み出す。その後、制御ユニット１１は、応答内容生成時間予測部１１３２の制御の下、読み出された所定の回数の過去の応答内容データの生成に要した時間の平均値を算出し、第２の時間を、当該算出された平均値に基づいて予測する。
【００７３】
第３の時間は、応答準備時間予測部１１３の音声合成時間予測部１１３３の制御の下で予測される。具体的には、制御ユニット１１は、音声合成時間予測部１１３３の制御の下、応答準備時間記憶部１２３に記憶される、過去の応答内容データに対応する応答音声の合成に要した時間を読み出す。その後、制御ユニット１１は、音声合成時間予測部１１３３の制御の下、読み出された所定の回数の過去の応答音声の合成に要した時間の平均値を算出し、第３の時間を、当該算出された平均値に基づいて予測する。
【００７４】
ステップＳ１０４において、制御ユニット１１は、フィラー情報出力部１１４の制御の下、フィラー情報記憶部１２５に記憶されたフィラー音声データの中から、例えば、第１、第２および第３の時間の合計時間に基づいて予測された遅延時間に最も近い時間的な長さを有するフィラー音声データを読み出し、読み出されたフィラー音声データをスピーカ１５に出力する。これにより、スピーカ１５において上記遅延時間内にフィラーが発話される。
【００７５】
ステップＳ１０５において、制御ユニット１１は、応答準備完了判定部１１６の制御の下、出力されたフィラー音声データの再生が終了した際に、サーバ２から、上記発話音声の認識が完了したことの通知、上記応答内容データの生成が完了したことの通知、および、上記応答音声の合成が完了したことの通知が取得されているか否かに基づいて、ユーザからの発話音声に対する応答音声の合成が完了しているか否かを判定する。
【００７６】
ステップＳ１０５において応答音声の合成が完了していると判定された場合には、ステップＳ１０６において、制御ユニット１１は、応答音声データ出力部１１７の制御の下、サーバ２から応答音声データを取得し、取得された応答音声データをスピーカ１５に出力する。その後、出力された応答音声データがスピーカ１５から再生され、ユーザとの音声対話がなされる。
【００７７】
ステップＳ１０５において応答音声の合成が完了していないと判定された場合には、応答音声が出力されるまでにユーザがさらに待つ必要があることをユーザに通知するために、追加のフィラーを発話するための処理が実行される。
【００７８】
まず、ステップＳ１０７において、制御ユニット１１は、応答準備完了判定部１１６の制御の下、さらに、上記発話音声の認識が完了したことの通知と、上記応答内容データの生成が完了したことの通知とを取得しているか否かに基づいて、発話音声の認識および応答内容データの生成が完了しているか否かを判定する。
【００７９】
ステップＳ１０７において発話音声の認識および応答内容データの生成が完了していると判定された場合には、ステップＳ１０８において、制御ユニット１１は、応答準備時間予測部１１３の制御の下、上記遅延時間を再予測する。
【００８０】
具体的には、制御ユニット１１は、応答準備時間予測部１１３の音声合成時間予測部１１３３の制御の下、応答文字数記憶部１２４に記憶される、過去の発話音声に対する応答内容データの長さである応答文字数を読み出す。また、制御ユニット１１は、応答準備時間予測部１１３の音声合成時間予測部１１３３の制御の下、応答準備時間記憶部１２３に記憶される、当該応答文字数に係る過去の応答内容データに対応する応答音声の合成に要した時間を読み出す。制御ユニット１１は、音声合成時間予測部１１３３の制御の下、読み出された、過去の発話音声に対する応答内容データに係る応答文字数と、当該応答文字数に係る過去の応答内容データに対応する応答音声の合成に要した時間とに基づいて、応答文字数と応答音声の合成に要する時間との係数を算出する。当該係数は、例えば、応答文字数を応答音声の合成に要した時間で割った値の平均として算出する、あるいは、最小二乗法により一次関数を求めることによって算出する。制御ユニット１１は、音声合成時間予測部１１３３の制御の下、サーバ２から、取得された発話音声データに対する応答内容データに係る応答文字数の通知を受信し、当該応答文字数と、上記算出された、応答文字数と応答音声の合成に要する時間との係数とに基づいて、第３の時間を再予測する。再予測された第３の時間に基づいて、上記遅延時間が再予測される。なお、遅延時間の再予測では、ステップＳ１０３において予測された第１の時間および第２の時間を利用してもよい、あるいは、ステップＳ１０３において予測された第１の時間および第２の時間を利用する代わりに、処理完了通知取得部１１５の制御の下に上記発話音声の認識が完了したことの通知および上記応答内容データの生成が完了したことの通知をそれぞれ取得したタイミングを計測して利用してもよい。
【００８１】
ステップＳ１０９において、制御ユニット１１は、フィラー情報出力部１１４の制御の下、フィラー情報記憶部１２５に記憶されたフィラー音声データの中から、例えば、ユーザからの発話音声の終了時点からの経過時間を上記再予測された遅延時間から減算した時間に最も近い時間的な長さを有する、追加のフィラー音声データを読み出し、読み出されたフィラー音声データをスピーカ１５に出力する。これにより、スピーカ１５において上記再予測された遅延時間内に追加のフィラーが発話される。
【００８２】
ステップＳ１０７において発話音声の認識および応答内容データの生成が完了していないと判定された場合には、ステップＳ１１０において、制御ユニット１１は、フィラー情報出力部１１４の制御の下、フィラー情報記憶部１２５に記憶されたフィラー音声データの中からランダムにフィラー音声データを読み出し、読み出されたフィラー音声データをスピーカ１５に出力する。これにより、スピーカ１５において、ランダムに読み出された追加のフィラーが発話される。
【００８３】
ステップＳ１０９において出力された追加のフィラー音声データの再生が終了した際には、ステップＳ１１１において、制御ユニット１１は、応答準備完了判定部１１６の制御の下、ステップＳ１０５における動作において説明したのと同様に、ユーザからの発話音声に対する応答音声の合成が完了しているか否かを判定する。
【００８４】
ステップＳ１１１において応答音声の合成が完了していると判定された場合には、ステップＳ１１２において、制御ユニット１１は、応答音声データ出力部１１７の制御の下、ステップＳ１０６における動作において説明したのと同様に、応答音声データをスピーカ１５に出力する。その後、出力された応答音声データがスピーカ１５から再生され、ユーザとの音声対話がなされる。
【００８５】
ステップＳ１１１において応答音声の合成が完了していないと判定された場合には、ステップＳ１１３において、制御ユニット１１は、フィラー情報出力部１１４の制御の下、ステップＳ１１０における動作において説明したのと同様に、ランダムに読み出されたフィラー音声データをスピーカ１５に出力する。これにより、スピーカ１５において、ランダムに読み出された追加のフィラーが発話される。
【００８６】
なお、ステップＳ１１０においてランダムに読み出された追加のフィラーが発話された後には、ステップＳ１０５からの動作が繰り返され、ステップＳ１１３においてランダムに読み出された追加のフィラーが発話された後には、ステップＳ１１１からの動作が繰り返される。
【００８７】
（効果）
以上詳述したように、この発明の第１の実施形態では、以下のような効果が奏せられる。
【００８８】
（１）音声データ取得部１１１および発話音声データ抽出部１１２の制御の下、ユーザからの発話音声に係る発話音声データが取得される。ここで、取得された発話音声データは、サーバ２に送信され、サーバ２において、当該発話音声データに基づく発話音声の認識、当該認識の結果に基づく応答内容データの生成、当該応答内容データに対応する応答音声の合成が実施される。応答準備時間予測部１１３の制御の下、当該発話音声データに基づくユーザ発話時間と、過去の発話音声に係る応答内容データに関する情報とに基づいて、上記発話音声の認識に要する第１の時間、上記応答内容データの生成に要する第２の時間、および、上記応答音声の合成に要する第３の時間が予測され、予測された第１、第２および第３の時間の合計時間を算出することによって、ユーザからの発話音声の終了時点から、当該発話音声に対する応答音声の出力を開始するまでに要する遅延時間が予測される。
【００８９】
このように、発話音声の認識に要する第１の時間については、発話音声データに係るユーザ発話時間を利用することにより精度が高い予測をすることができる。また、応答内容データの生成に要する第２の時間については、多くの場合、発話音声の認識の相違による応答内容データ生成処理時間の変動は少ないので、過去の応答内容データに関する情報を用いることにより信頼度が高い予測をすることができる。また、応答音声の合成に要する第３の時間についても、過去の応答内容データに関する情報を用いることにより信頼性のある予測をすることができる。
【００９０】
また、例えば応答音声の準備処理を別の装置で行う場合等のように、実装によっては通信処理等の遅延時間も生じ得るが、このように過去の発話音声に係る実際の情報を用いることにより、着目する発話音声についても当該過去の情報を取得したのと同条件で処理すれば、このような通信処理等の時間も含めて処理時間を予測することができる。
【００９１】
（２）フィラー情報出力部１１４の制御の下、記憶されたフィラー音声データの中から、予測された遅延時間に最も近い時間的な長さを有するフィラー音声データが読み出され、読み出されたフィラー音声データがスピーカ１５に出力され、スピーカ１５において上記遅延時間内にフィラーが発話される。
【００９２】
このため、発話音声を発したユーザが、レスポンスが返らないことにより不安にさせられることがなくなる。また、例えば、遅延時間に対応する時間的な長さで意味を有する言葉を発するフィラー音声を出力するようにすると、ユーザは、出力されるフィラー音声の種類によって、応答音声が返ってくるまでに待つ必要がある時間を予測でき、これにより、ユーザをさらに安心させることができる。
【００９３】
（３）応答準備完了判定部１１６の制御の下、出力されたフィラー音声データの再生が終了した際に、ユーザからの発話音声に対する応答音声の合成が完了しているか否かが判定される。ユーザからの発話音声に対する応答音声の合成が完了していないと判定された場合に、フィラー情報出力部１１４の制御の下、追加のフィラー音声データがスピーカ１５に出力される。
【００９４】
このため、出力されたフィラー音声データの再生が終了した後に、発話音声を発したユーザが、応答音声が出力されるのをさらに待つ必要がある場合にも、レスポンスが返らないことにより不安にさせられることがなくなる。
【００９５】
（４）応答準備完了判定部１１６の制御の下、ユーザからの発話音声に対する応答音声の合成が完了していないと判定された場合に、さらに、発話音声の認識および応答内容データの生成が完了しているか否かが判定される。発話音声の認識および応答内容データの生成が完了していると判定された場合に、音声合成時間予測部１１３３の制御の下、通知された応答内容データに係る応答文字数と、過去の発話音声に係る応答内容データに関する情報とに基づいて、第３の時間が再予測される。応答準備時間予測部１１３の制御の下、再予測された第３の時間に基づいて、上記遅延時間が再予測される。フィラー情報出力部１１４の制御の下、記憶されたフィラー音声データの中から、ユーザからの発話音声の終了時点からの経過時間を上記再予測された遅延時間から減算した時間に最も近い時間的な長さを有する、追加のフィラー音声データが読み出され、読み出されたフィラー音声データがスピーカ１５に出力され、スピーカ１５において上記再予測された遅延時間内にフィラーが発話される。
【００９６】
このように、第３の時間について、応答内容データに係る文字数を用いることにより精度が高い再予測をすることができ、遅延時間について精度の高い再予測がされることになる。これにより、追加のフィラー情報も、ユーザがさらに待つ必要がある時間に応じたものとすることができ、ユーザをさらに安心させることができる。
【００９７】
［他の実施形態］
なお、この発明は上記第１の実施形態に限定されるものではない。例えば、上記第１の実施形態では、音声対話装置とサーバとの組み合わせによってユーザとの対話を実現している。しかしながら、音声対話装置とサーバとを１つの装置として実現してもよい。また、上記第１の実施形態では、応答音声の出力とフィラー情報の出力との両方を実現する音声対話装置について説明したが、これらを別個の異なる装置によって実現してもよい。
【００９８】
その他、音声対話装置およびサーバの装置の種類とその構成、ならびに、発話音声に対する応答音声を準備するための処理等についても、この発明の要旨を逸脱しない範囲で種々変形して実施可能である。
【００９９】
要するにこの発明は、上記第１の実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記第１の実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、上記第１の実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【０１００】
１…音声対話装置、１１…制御ユニット、１１１…音声データ取得部、１１２…発話音声データ抽出部、１１３…応答準備時間予測部、１１３１…音声認識時間予測部、１１３２…応答内容生成時間予測部、１１３３…音声合成時間予測部、１１４…フィラー情報出力部、１１５…処理完了通知取得部、１１６…応答準備完了判定部、１１７…応答音声データ出力部、１２…記憶ユニット、１２１…音声データ記憶部、１２２…発話時間記憶部、１２３…応答準備時間記憶部、１２４…応答文字数記憶部、１２５…フィラー情報記憶部、１３…通信インタフェースユニット、１４…マイク、１５…スピーカ、２…サーバ、２１…制御ユニット、２１１…音声認識機能部、２１１１…発話音声データ取得部、２１１２…発話テキストデータ生成部、２１２…応答内容生成機能部、２１２１…応答テキストデータ生成部、２１３…音声合成機能部、２１３１…応答音声データ合成部、２１３２…応答音声データ出力部、２２…記憶ユニット、２２１…発話音声データ記憶部、２２２…発話テキストデータ記憶部、２２３…応答テキストデータ記憶部、２２４…応答音声データ記憶部、２３…通信インタフェースユニット
【図１】
2019045831.tif 000003
【図２】
2019045831.tif 000004
【図３】
2019045831.tif 000005
【図４Ａ】
2019045831.tif 000006
【図４Ｂ】
2019045831.tif 000007