(57)【要約】【課題】雑音の誤検出による応答音声の中断の発生を抑えること。【解決手段】音声対話装置は、入力音声に含まれる応答音声のエコーを除去したエコー除去音声の始端と終端を検出する音声検出部８と、前記始端が検出されてから所定期間が経過した時点で前記終端が検出されていないときに応答中断指令を出力する応答中断制御部１１と、応答中断制御部１１から前記応答中断指令を受け取ると応答音声出力部に応答音声の出力を中断させる対話制御部３と、を備える。【選択図】図１
2011215421.tif 000002
【特許請求の範囲】
【請求項１】
入力音声に含まれる応答音声のエコーを除去したエコー除去音声の始端と終端を検出する音声検出部と、
前記始端が検出されてから所定期間が経過した時点で前記終端が検出されていないときに応答中断指令を出力する応答中断制御部と、
前記応答中断制御部から前記応答中断指令を受け取ると応答音声出力部に前記応答音声の出力を中断させる対話制御部と、
を備えることを特徴とする音声対話装置。
【請求項２】
前記始端が検出されたときに前記応答中断指令を出力する第１の中断モードと、前記始端が検出されてから前記所定期間が経過した時点で前記終端が検出されていないときに前記応答中断指令を出力する第２の中断モードと、前記終端が確定されたときに前記応答中断指令を出力する第３の中断モードのうち、いずれか１つの中断モードを選択可能な中断モード選択部を更に備え、
前記応答中断制御部は、前記中断モード選択部で選択された中断モードに応じて前記応答中断指令を出力することを特徴とする請求項１に記載の音声対話装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声対話処理に関する。
【背景技術】
【０００２】
従来、音声対話処理において、応答音声の出力中に利用者による割り込み発話が検出されたときに、応答音声を中断させる技術が開示されている（特許文献１を参照）。特許文献１の方法によれば、利用者は応答音声を無用に聴き続けることがなくなる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】米国特許第５１５５７６０号明細書
【特許文献２】特許第４２８２７０４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１の方法では、雑音等を利用者の発話開始であると誤検出することによって、利用者が応答音声を聞き続けたい場合であっても、意図せず応答音声が中断してしまう場合がある。
【０００５】
本発明は、上記の課題に鑑みてなされたものであり、雑音の誤検出による応答音声の中断の発生を抑えることを目的とする。
【課題を解決するための手段】
【０００６】
音声対話装置は、入力音声に含まれる応答音声のエコーを除去したエコー除去音声の始端と終端を検出する音声検出部と、前記始端が検出されてから所定期間が経過した時点で前記終端が検出されていないときに応答中断指令を出力する応答中断制御部と、応答中断制御部から前記応答中断指令を受け取ると応答音声出力部に応答音声の出力を中断させる対話制御部と、を備える。
【発明の効果】
【０００７】
本発明によれば、雑音の誤検出による応答音声の中断の発生を抑えることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の一実施形態に係る音声対話装置の構成を示す図。
【図２】音声対話装置の処理の流れを示す図。
【図３】音声対話装置の条件分岐表を示す図。
【図４】応答音声中断のタイミングチャートを示す図。
【図５】エコーキャンセル部の構成を示す図。
【図６】中断モードを選択可能な音声対話装置の構成を示す図。
【図７】中断モード１における処理の流れを示す図。
【図８】中断モード３における処理の流れを示す図。
【図９】コンピュータの構成を示す図。
【図１０】記録媒体の構成を示す図。
【図１１】オートマトンの状態遷移を示す図。
【発明を実施するための形態】
【０００９】
以下、本発明に係る音声対話装置の実施形態を添付図面を参照しながら説明する。
【００１０】
（第１の実施形態）
本実施形態に係る音声対話装置は、音声の始端が検出されてから所定期間Ｔが経過するまでに音声の終端が検出されたときには、始終端の検出された音声が利用者音声ではなく雑音であったと判断して応答音声を中断しない。逆に言えば、音声の始端が検出されてから所定期間Ｔ経過以降に音声の終端が始めて検出されたときには、この始終端の検出された音声が雑音ではなく利用者音声であったと判断して応答音声を中断する。このようにすることで、利用者の発話が開始されたときに応答音声を中断する機能を実現しつつ、短い雑音を利用者音声として誤検出してしまうことによる応答音声の中断の発生を低減することができる。
【００１１】
図１は、本発明の第１の実施形態に係る音声対話装置の構成を示す図である。図２は、本実施形態に係る音声対話装置の動作を表すフローチャートを示す図である。
【００１２】
利用者１によるトークスイッチ２の押下によって、セッション開始指令が対話制御部３に送られると（図２のステップＳ１）、対話制御部３は、対話シーケンスに従って必要に応じて利用者１に向けて応答音声を出力するよう指示する応答制御指令を応答音声出力部４に送る。
【００１３】
これを受けた応答音声出力部４は、指示された応答音声の信号ｘ（ｔ）を生成する。信号ｘ（ｔ）は、スピーカ５から利用者１に向けて拡声出力される。
【００１４】
また、このとき対話制御部３は、音声入力の開始を指示する音声入力制御指令を音声入力部６に送り、これを受けた音声入力部６はマイク７を介した音声入力を開始し、利用者１の発話音声を入力できる状態になる（図２のステップＳ２）。
【００１５】
音声入力部６による音声の入力が開始されると、これに連動してエコーキャンセル部１０は、音声入力部６によるマイク入力音声の信号ｍ（ｔ）から応答音声の信号ｘ（ｔ）のエコーをキャンセル（除去）したエコー除去音声の信号ｅ（ｔ）を生成出力する（図２のステップＳ３）。
【００１６】
音声検出部８は、エコーキャンセル部１０によるエコー除去音声の信号ｅ（ｔ）から評価量Ｓを計算し、この評価量Ｓに基づいて利用者１の発話が行われたか否かを判別する。音声検出部８はまた、利用者１の発話音声の始端や終端を検出あるいは確定すると、それを表す始終端情報を音声認識部９と応答中断制御部１１に送る（図２のステップＳ４）。この評価量Ｓとしては、音声のパワーなどの音響的な特徴量を用いることができる。
【００１７】
音声検出部８により始端が検出されると（図２のステップＳ５で「Ｙｅｓ」）、音声認識部９は、エコー除去音声信号ｅ（ｔ）の認識を開始する。また、応答中断制御部１１は、所定期間Ｔ経過後にタイムアウトするタイマー（図示せず）を起動する（図２のステップＳ６）。
【００１８】
応答中断制御部１１がタイムアウト時間としてタイマーに設定する期間Ｔは、利用者１の最も短い発話長に設定するとよい。例えば、特許第４２８２７０４号公報（特許文献２）には、この長さが２００ｍｓ程度であることが示されている。また、応答音声に対する利用者の回答音声の長さは、その内容によってある程度予測可能である。そこで、システムの応答音声の種類毎に期間Ｔと関連付けたテーブルを作成しておき、対話の進行に伴って変化する応答音声に応じてテーブルを参照して期間Ｔを都度切り替えることも可能である。
【００１９】
次に、音声検出部８からの始終端情報とタイマーの状態を参照して、応答中断制御部１１では図３の表ａに示す条件分岐が行われる（図２のステップＳ７）。始端が検出されてから最初の終端が検出されるまでの間に（図３表ａの最初の終端が「未検出」）、タイマーがタイムアウトした場合（図３表ａのタイマーが「タイムアウト」）、すなわち、始端の検出から期間Ｔ経過するまでに終端が検出できなかった場合（図２のステップＳ７で「Ｂ」）、この音声区間を長さがＴを超える音声であるとして、応答中断制御部１１は応答中断指令を対話制御部３に送る。対話制御部３は、この応答中断指令を受けると、応答音声出力部４に応答音声の出力を中断させる（図２のステップＳ９）。
【００２０】
また、始端が検出されてから最初の終端が検出されたときに（図３表ａの最初の終端が「検出」）、タイマーがタイムアウトした場合（図３表ａのタイマーが「タイムアウト」）、すなわち、始端の検出から期間Ｔ経過したときに終端が検出された場合（図２のステップＳ７で「Ｂ」）、この音声区間を長さがＴの音声であるとして、応答中断制御部１１は応答中断指令を対話制御部３に送る。対話制御部３は、この応答中断指令を受けると、応答音声出力部４に応答音声の出力を中断させる（図２のステップＳ９）。
【００２１】
また、始端が検出されてから最初の終端が検出されたときに（図３表ａの最初の終端が「検出」）、タイマーがタイムアウトしていない場合（図表ａのタイマーが「未タイムアウト」）、すなわち、始端の検出から期間Ｔ経過する前に終端が検出された場合（図２のステップＳ７で「Ｃ」）、この音声区間を長さがＴ未満の雑音であるとして、音声認識部９は、エコー除去音声信号ｅ（ｔ）の認識を停止する。また、応答中断制御部１１は、起動しているタイマーを停止させる（図２のステップＳ８）。
【００２２】
それ以外の場合には、何もせずに処理を継続する（図２のステップＳ７で「Ａ」）。このようにして、長さがＴに満たない突発的な雑音によって応答音声が意図せず中断されないようにすることができる。
【００２３】
次に、音声検出部８により終端が確定されると（図２のステップＳ１０で「Ｙｅｓ」）、音声認識部９は、エコー除去音声信号ｅ（ｔ）の認識を終了して認識結果を出力する（図２のステップＳ１１）。すなわち、音声認識部９は、エコー除去音声信号ｅ（ｔ）の最新の始終端で挟まれる範囲の音声を認識して結果を出力するように動作する。
【００２４】
音声認識部９の認識結果を受けると、対話制御部３は、応答音声出力部４の応答音声出力を停止させる。さらに、対話制御部３は、音声入力部６の音声入力とこれに連動するエコーキャンセル部１０の動作を停止させ、この認識結果に応じた利用者１へのサービス処理を行うとともに、対話シーケンスを進行させる（図２のステップＳ１２）。
【００２５】
このようにして、本実施形態に係る音声対話装置は、始端が検出されてからタイマーで測られる期間Ｔが経過した時点で、終端がちょうど検出されるか、まだ検出されていないときに、応答音声の出力を中断するように動作する。その結果、図４に示すように、期間Ｔ未満の長さの突発的な雑音によって応答が意図せず中断してしまうことを抑えることができる。
【００２６】
なお、音声検出部８は、図１１に示すオートマトンによって音声の始終端を検出あるいは確定する。具体的には、雑音状態１０１をオートマトンの初期状態として、評価量Ｓが始端検出用の閾値Ｔｈ１以上となったとき、オートマトンは雑音状態１０１から始端検出状態１０２に遷移する。
【００２７】
始端検出状態１０２では、評価量Ｓが閾値Ｔｈ１以上となる期間Ｄ１が始端検出時間Ｔｓ継続した場合、その期間Ｄ１の開始時点を音声区間の始端として検出し、始端が検出されたことを示す始終端情報を出力する。そして、オートマトンは次の終端検出状態１０３に遷移する。一方、期間Ｄ１が始端検出時間Ｔｓ継続しなかった場合、オートマトンは雑音状態１０１に戻される。
【００２８】
終端検出状態１０３では、評価量Ｓが終端検出用の閾値Ｔｈ２を下回る期間Ｄ２が終端検出時間Ｔｅ１以上継続したとき、この期間Ｄ２の開始時点を音声区間の終端として検出し、終端が検出されたことを示す始終端情報を直ちに出力する。そして、オートマトンは終端検出状態１０３から終端確定状態１０４に遷移する。
【００２９】
終端確定状態１０４では、期間Ｄ２がさらに終端確定時間Ｔｅ２（＞Ｔｅ１）以上継続した場合、先ほど検出された終端を確定し、終端が確定されたことを示す始終端情報を出力する。そして、オートマトンは最初の雑音状態１０１に遷移する。一方、期間Ｄ２が終端確定時間Ｔｅ２以上継続しなかったときは、オートマトンは１つ前の終端検出状態１０３に戻される。この結果、始端検出から終端確定までの間に終端が複数回検出されることもある。
【００３０】
このように、音声検出部８の出力する始終端情報は始端検出（始端検出状態１０２から終端検出状態１０３への遷移）、終端検出（終端検出状態１０３から終端確定状態１０４への遷移で、場合によっては複数回起こる）、終端確定（終端確定状態１０４から雑音状態１０１への遷移）の順に出力され、それぞれの間にはＴｓ、Ｔｅ１、Ｔｅ２に応じた遅れが最低でも生じる。
【００３１】
ここで図２の処理の流れを状態別に説明すると次のようになる。
【００３２】
始端検出前には、処理はＳ３→Ｓ４→Ｓ５→Ｓ７→Ｓ１０→Ｓ３と流れている。このとき、始端はまだ検出されておらず、タイマーも起動していないので、Ｓ７では必ず「Ａ」に進むことになる。
【００３３】
Ｓ５で始端が検出されて「Ｙｅｓ」に進むと、Ｓ６でタイマーが起動されて、音声認識も開始される。以後、音声認識は停止されるまで継続することになる。
【００３４】
始端が検出されてからＳ７で最初の終端が検出されるか、タイマーがタイムアウトするまでの間は再びＳ３→Ｓ４→Ｓ５→Ｓ７→Ｓ１０→Ｓ３と処理が流れる。
【００３５】
このときはタイマーが起動しているので、始端が検出されてから最初の終端が検出されるまでの間にタイマーがタイムアウトした場合には、検出された始終端で挟まれる音声は長さがＴを超える音声であるとして、Ｓ７で「Ｂ」に分岐してＳ９→Ｓ３へと処理が進むことになる。
【００３６】
また、始端が検出されてから最初の終端が検出されたときにタイマーがタイムアウトしていなければ、検出された始終端で挟まれる音声は長さがＴ未満の雑音であるとして、Ｓ７で「Ｃ」に分岐して、Ｓ８でタイマーと音声認識を停止させ、再び新たな始端が検出されるのを待つ。このとき、図１１のオートマトンでは終端検出状態１０３から雑音状態１０１への遷移が行われる（図示せず）。そして、処理は再びＳ３→Ｓ４→Ｓ５→Ｓ７→Ｓ１０→Ｓ３と流れるようになる。
【００３７】
また、始端が検出されてから最初の終端が検出されたときにタイマーがタイムアウトした場合には、検出された始終端で挟まれる音声は長さがＴの音声であるとして、同じくＳ７で「Ｂ」に分岐してＳ９→Ｓ３へと処理が進むことになる。
【００３８】
このように、応答音声の中断は始端検出から最初の終端検出までの経過時間が所定期間Ｔに対して長いか短いかで決定される。終端検出に比べて終端確定にはＴｅ２−Ｔｅ１だけ余計に時間が掛かるので、このように最初の終端検出をもって応答中断の判断を行うことでレスポンスを良くしている。
【００３９】
一方、認識結果は検出された始終端が雑音として破棄される可能性を考慮して、終端が確定するまで待ってから出力されるものとする。このときの処理はＳ３→Ｓ４→Ｓ５→Ｓ７→Ｓ１０→Ｓ１１→Ｓ１２と流れることになる。
【００４０】
さらに、図２のステップＳ７は図３表ｂに示す条件分岐を行うことも可能である。これは、最初の終端が検出されたときにタイマーがタイムアウトした場合、図３表ａでは「Ｂ」に分岐したものを「Ｃ」に分岐させるというものである。この結果、音声対話装置は、始端が検出されてからタイマーで測られる期間Ｔが経過した時点で、終端がまだ検出されていないときにのみ、応答音声の出力を中断するように動作する。
【００４１】
図３の表ａと表ｂの相違はタイマーで測られる期間Ｔが経過した時点でちょうど終端が検出されたときに応答を中断するかしないかである。いずれの処理であっても、始端が検出されてからタイマーで測られる期間Ｔが経過した時点で終端がまだ検出されていなければ、応答音声の出力を中断することは共通である。
【００４２】
次に、エコーキャンセル部１０について説明を行う。図５は、エコーキャンセル部１０の構成を示す図である。
【００４３】
マイク信号入力部２２が入力するマイク信号ｍ（ｔ）は、音声入力部６からのマイク入力音声の信号ｍ（ｔ）である。参照信号入力部２１が入力する参照信号ｘ（ｔ）は、応答音声出力部４からの応答音声の信号ｘ（ｔ）である。誤差信号出力部２５が出力する誤差信号ｅ（ｔ）は、エコーキャンセル部１０が出力すべきエコー除去音声の信号ｅ（ｔ）である。また、応答中断指令入力部２７が入力する応答中断指令は、応答中断制御部１１からの応答中断指令である。
【００４４】
エコーキャンセル部１０は、図１におけるスピーカ５からマイク７までのエコーパスの伝達特性を模擬するためのフィルタ部２３を備える。フィルタ部２３は、タップ数Ｎの有限インパルス応答フィルタ（ＦＩＲフィルタ）で構成される。参照信号ｘ（ｔ）にこのフィルタ部２３のタップ係数ｗ（ｋ，ｔ)を数式２のように畳み込むことでエコーレプリカ信号ｙ（ｔ）を生成する。ここで、ｙ（ｔ）は時刻ｔにおけるエコーレプリカ信号の値、ｗ（ｋ，ｔ)はフィルタ部２３のｋ番目のタップ係数の時刻ｔにおける値、ｘ（ｔ−ｋ）は時刻ｔからｋ時刻過去に遡った参照信号の値である。Ｎはタップ係数の数を表し、タップ数又はフィルタ長と呼ばれる。また、Ｗ（ｔ）とＸ（ｔ）はｋを０からＮ−１まで変えたときのそれぞれタップ係数ｗ（ｋ，ｔ)を並べた列ベクトルと参照信号ｘ（ｔ−ｋ）を並べた列ベクトルである。
【００４５】
エコーレプリカ信号ｙ（ｔ）は、マイク信号ｍ（ｔ）に混入している応答音声のエコーを模擬した信号であり、減算器２４によって数式１のようにマイク信号ｍ（ｔ）から差し引くことでエコーの除去された誤差信号ｅ（ｔ）を生成することができる。この誤差信号ｅ（ｔ）を誤差信号出力部２５から出力することで、エコーキャンセル部１０はエコー除去音声の信号ｅ（ｔ）を後段に送り出すことができる。
【００４６】
エコーキャンセル出力計算式は、数式１及び数式２で表される。
【数１】
2011215421.tif 000003
【００４７】
但し、Ｗ（ｔ）とＸ（ｔ）はそれぞれ数式３の列ベクトルで表される。
【数２】
2011215421.tif 000004
【００４８】
このとき、スピーカ５からマイク７までのエコーパスの伝達特性が事前の準備によってフィルタ部２３に正しく与えられる場合には、後述する適応アルゴリズムの実行は必要ない。しかし、エコーパスの伝達特性が時々刻々変化する使用環境では、観測信号に基づいて正しい伝達特性を漸近的に見出していく適応アルゴリズムの実行が必要になる。
【００４９】
この適応アルゴリズムの１グループとして、タップ係数に関する瞬時二乗誤差ｅ２（ｔ）の勾配（確率勾配と呼ぶ）方向にタップ係数を修正する確率勾配アルゴリズムが知られている。確率勾配アルゴリズムのタップ係数修正式は、時刻ｔにおける誤差信号の瞬時値をｅ（ｔ）として数式４の漸化式で一般化することができる。
【数３】
2011215421.tif 000005
【００５０】
ここで、正数γは正規化係数、正数μは修正の規模を制御するためのステップサイズ、Ｇ（ｅ（ｔ））は誤差の瞬時値ｅ（ｔ）の関数であり、それぞれスカラ量である。数式４の右辺第２項は時刻ｔにおけるタップ係数値Ｗ（ｔ）をどれぐらい修正するかを示す係数修正量を表す。そして、この数式４に従ってタップ係数の修正処理を行うのが、図４のタップ係数修正部２６である。
【００５１】
このとき、数式４に数式５で定義される関数Ｇと正規化係数γを適用したアルゴリズムがＮＬＭＳアルゴリズム（正規化ＬＭＳアルゴリズム）である。
【数４】
2011215421.tif 000006
【００５２】
ここで、ＸＴＸは、現在からＮ−１時刻過去までのＮ個の参照信号値のパワーの総和である。ＮＬＭＳアルゴリズムは、誤差信号の二乗平均値を最小化するタップ係数を各時刻の誤差の瞬時値ｅ（ｔ）を用いて漸近的に求めていくアルゴリズムとなる。
【００５３】
しかし、上述した数式２によるエコーレプリカ信号ｙ（ｔ）の生成と、数式３によるタップ係数の修正は多くの計算コストを要求する。ところが、誤差信号ｅ（ｔ）を求める数式１を含めたこれらの演算は、応答音声出力中、すなわち応答音声のエコーが存在するときのみ必要となる。よって、応答音声が中断された場合には、少なくとも数式１と数式２の演算を、適応的にタップ係数を修正している場合には、さらに数式３の演算も停止するのが望ましい。
【００５４】
そのために、応答中断指令入力部２７を介して応答中断制御部１１からの応答中断指令を受けると、フィルタ部２３は数式２の演算を停止し、減算器２４は数式１の演算を停止し、タップ係数修正部２６は数式３の演算を停止する。
【００５５】
しかし、このままでは誤差信号出力部２５の出力する誤差信号ｅ（ｔ）がこの停止以降不定となってしまうため、信号切り替え部２８によって、マイク信号ｍ（ｔ）が誤差信号ｅ（ｔ）として出力されるように切り替えが行われる。応答音声中断後は、このマイク信号ｍ（ｔ）には応答音声のエコーが重畳していないため、このように処理しても問題が生じない。
【００５６】
以上のようにして、応答音声の中断後は、エコーキャンセル部１０におけるエコーキャンセル処理の演算を停止することで、エコーキャンセル処理と音声認識処理が同時進行する期間を高々期間Ｔまでに抑えることができる。この期間Ｔを短くすればする程、いずれか一方のより重たい方の処理をまかなえる演算装置があれば、ほぼ十分であるという状況を作ることができる。これはより低い能力の演算装置を利用できるという利点を生み、装置を安価に提供できるようにする。
【００５７】
なお、上述のようにしなければ、エコーキャンセル部１０におけるエコーキャンセル処理と音声認識部９における音声認識処理が同時進行する期間が延びることになるため、その間の計算コストは両者の合算となる。その結果、両処理をリアルタイムに実行する高い能力のより高価な演算装置が必要になる。
【００５８】
なお、本発明はその趣旨を逸脱しない限り様々に変形して実施することが可能である。
【００５９】
例えば、使用される環境や利用者の好みに応じて、上述した中断方法を含む複数の選択肢から応答音声の中断方法を利用者が選択できるようにすることも可能である。
【００６０】
例えば、音声対話装置の使用環境に雑音がほとんどないときには、雑音による誤検出が少ないと考えられる。そこで、従来技術と同様に、応答中断制御部１１が始端の検出時に応答音声を中断するようにすれば、エコーキャンセル処理と音声認識処理が同時進行する期間をなくする、すなわち計算コストを極力減らすことができるという利点が生じる。また一方で、演算能力に余裕があり、利用者の好みによっては応答音声を中断する必要がないという場合も考えられる。そこで、応答中断制御部１１が終端の確定時に応答音声を中断するようにすれば、利用者は話し終わるまでの間、応答音声を聴き続けることも可能になる。
【００６１】
このように、使用環境や利用者の好みに応じて動作を変えられるよう、図６に示すように、図１の実施形態装置に新たに中断モード入力部１２を設けてもよい。利用者１は中断モード入力部１２を介して、始端が検出されたときに応答中断指令を出力する第１の中断モードと、上述したように始端が検出されてから期間Ｔ経過時点で終端が検出されていないときに応答中断指令を出力する第２の中断モードと、終端が確定されたときに応答中断指令を出力する第３の中断モードのうち、いずれか１つのモードを選択して、応答中断制御部１１の中断モードとすることができる。
【００６２】
中断モード２における処理の流れは図２や図３に示した通りである。このとき、中断モード入力部１２を介して、利用者１が期間Ｔの値を設定できるようにしても良い。
【００６３】
次に、中断モード１における処理の流れを図７に示す。
【００６４】
利用者１によるトークスイッチ２の押下によって、セッション開始指令が対話制御部３に送られると（図７のステップＳ２１）、対話制御部３は、対話シーケンスに従って必要に応じて利用者１に向けて応答音声を出力するよう指示する応答制御指令を応答音声出力部４に送る。
【００６５】
これを受けた応答音声出力部４は、指示された応答音声の信号ｘ（ｔ）を生成する。信号ｘ（ｔ）は、スピーカ５から利用者１に向けて拡声出力される。
【００６６】
また、このとき対話制御部３は、音声入力の開始を指示する音声入力制御指令を音声入力部６に送り、これを受けた音声入力部６はマイク７を介した音声入力を開始し、利用者１の発話音声を入力できる状態になる（図７のステップＳ２２）。
【００６７】
音声入力部６による音声の入力が開始されると、これに連動してエコーキャンセル部１０は音声入力部６によるマイク入力音声の信号ｍ（ｔ）から応答音声の信号ｘ（ｔ）のエコーをキャンセル（除去）したエコー除去音声の信号ｅ（ｔ）を生成出力する（図７のステップＳ２３）。
【００６８】
音声検出部８は、エコーキャンセル部１０によるエコー除去音声の信号ｅ（ｔ）から評価量Ｓを計算し、この評価量Ｓに基づいて利用者１の発話が行われたか否かを判別する。音声検出部８はまた、利用者１の発話音声の始端や終端を検出すると、始終端情報を音声認識部９と応答中断制御部１１に送る（図７のステップＳ２４）。この評価量Ｓとしては、音声のパワーなどの音響的な特徴量を用いることができる。
【００６９】
音声検出部８により始端検出を示す始終端情報が出力されると（図７のステップＳ２５で「Ｙｅｓ」）、応答中断制御部１１は、応答中断指令を対話制御部３に送る。対話制御部３は、この応答中断指令を受けると、応答音声出力部４に応答音声の出力を中断させる（図７のステップＳ２６）。また、音声認識部９は、エコー除去音声信号ｅ（ｔ）の認識を開始する（図７のステップＳ２７）。
【００７０】
そして、音声検出部８から終端確定を示す始終端情報が出力されると（図７のステップＳ２８の右分岐）、音声認識部９は、エコー除去音声信号ｅ（ｔ）の認識を終了して認識結果を出力する（図７のステップＳ２９）。すなわち、音声認識部９は、エコー除去音声信号ｅ（ｔ）の始終端で挟まれる範囲の音声を認識して結果を出力するように動作する。
【００７１】
音声認識部９の認識結果を受けると、対話制御部３は、応答音声出力部４の応答音声出力を停止させる。さらに、対話制御部３は、音声入力部６の音声入力とこれに連動するエコーキャンセル部１０の動作を停止させ、この認識結果に応じた利用者１へのサービス処理を行うとともに、対話シーケンスを進行させる（図７のステップＳ３０）。
【００７２】
次に、中断モード３における処理の流れを図８に示す。
【００７３】
利用者１によるトークスイッチ２の押下によって、セッション開始指令が対話制御部３に送られると（図８のステップＳ４１）、対話制御部３は、対話シーケンスに従って必要に応じて利用者１に向けて応答音声を出力するよう指示する応答制御指令を応答音声出力部４に送る。
【００７４】
これを受けた応答音声出力部４は、指示された応答音声の信号ｘ（ｔ）を生成する。信号ｘ（ｔ）は、スピーカ５から利用者１に向けて拡声出力される。
【００７５】
また、このとき対話制御部３は、音声入力の開始を指示する音声入力制御指令を音声入力部６に送り、これを受けた音声入力部６はマイク７を介した音声入力を開始し、利用者１の発話音声を入力できる状態になる（図８のステップＳ４２）。
【００７６】
音声入力部６による音声の入力が開始されると、これに連動してエコーキャンセル部１０は音声入力部６によるマイク入力音声の信号ｍ（ｔ）から応答音声の信号ｘ（ｔ）のエコーをキャンセル（除去）したエコー除去音声の信号ｅ（ｔ）を生成出力する（図８のステップＳ４３）。
【００７７】
音声検出部８は、エコーキャンセル部１０によるエコー除去音声の信号ｅ（ｔ）から評価量Ｓを計算し、この評価量Ｓに基づいて利用者１の発話が行われたか否かを判別する。音声検出部８はまた、利用者１の発話音声の始端や終端を検出すると、始終端情報を音声認識部９と応答中断制御部１１に送る（図８のステップＳ４４）。この評価量Ｓとしては、音声のパワーなどの音響的な特徴量を用いることができる。
【００７８】
音声検出部８により始端検出を示す始終端情報が出力されると（図８のステップＳ４５で「Ｙｅｓ」）、音声認識部９は、エコー除去音声信号ｅ（ｔ）の認識を開始する（図８のステップＳ４６）。
【００７９】
そして、音声検出部８から終端確定を示す始終端情報が出力されると（図８のステップＳ４７で「Ｙｅｓ」）、応答中断制御部１１は、応答中断指令を対話制御部３に送る。対話制御部３は、この応答中断指令を受けると、応答音声出力部４に応答音声の出力を中断させる（図８のステップＳ４８）。また、音声認識部９は、エコー除去音声信号ｅ（ｔ）の認識を終了して認識結果を出力する（図８のステップＳ４９）。すなわち、音声認識部９は、エコー除去音声信号ｅ（ｔ）の始終端で挟まれる範囲の音声を認識して結果を出力するように動作する。
【００８０】
音声認識部９の認識結果を受けると、対話制御部３は、音声入力部６の音声入力とこれに連動するエコーキャンセル部１０の動作を停止させ、この認識結果に応じた利用者１へのサービス処理を行うとともに、対話シーケンスを進行させる（図８のステップＳ５０）。
【００８１】
なお、本発明の実施形態は、図１や図６に示した構成によって実行される図２や図３や図７や図８に示した処理を実行するコンピュータプログラムとして実施することも可能である。また、このようなプログラムを記録させたコンピュータに読み取り可能な記録媒体として実施することも可能である。
【００８２】
具体的には、本発明の実施形態は、図９に示すようにコンピュータを使って実施することが可能である。マイク３１は、利用者の音声を電気的な音響信号に変換する。Ａ／Ｄ変換器３２は、マイク３１による音響信号をデジタル音響データに変換する。ＣＰＵ３３は、変換されたデジタル音響データを処理するためのプログラム命令を実行する。ＲＡＭ３４、ＲＯＭ３５、ＨＤＤ３６、ＬＡＮ３７、マウス／キーボード３８及びディスプレイ３９は、コンピュータを構成する標準的なデバイスである。外部インタフェース４０は、通信装置やサービス提供装置などの外部装置とデータの送受信を行う。その他ストレージ４１は、外部から記憶メディアを介してプログラムやデータをコンピュータに供給するためのドライブ類（その他ストレージ）であり、具体的には、ＣＤ−ＲＯＭドライブ、フロッピー(登録商標)ディスクドライブ、ＣＦ／ＳＤカードスロットやＵＳＢインタフェースなどである。Ｄ／Ａ変換器４２は、デジタル音響データを音響信号に変換する。スピーカ４３は、音響信号を拡声出力するものであり、Ｄ／Ａ変換器４２に接続される。
【００８３】
このコンピュータは、図２や図３や図７や図８に示した処理ステップを実行する音声対話処理プログラムをＨＤＤ３６に記憶し、これをＲＡＭ３４に読み出してＣＰＵ３３で実行する。その際、マイク入力音声の信号ｍ（ｔ）の入力にマイク３１とＡ／Ｄ変換器３２を使い、応答音声の信号ｘ（ｔ）の拡声出力にＤ／Ａ変換器４２とスピーカ４３を使い、このマイク入力音声信号ｍ（ｔ）と応答音声信号ｘ（ｔ）をＣＰＵ３３で処理することで音声対話装置として機能する。また、このコンピュータは、その他ストレージ４１に挿入される記録媒体やＬＡＮ３７を介して接続される他の装置から音声対話処理プログラムの供給を受けることが可能である。なお、このコンピュータは、マウス／キーボード３８やディスプレイ３９を使うことで、利用者の操作入力を受け付けたり、利用者への情報呈示を行ったりすることも可能である。
【００８４】
また、本発明の実施形態は、図１０に示すように記録媒体として実施することが可能である。記録媒体５１は、本発明の実施形態に係る音声対話処理プログラムを記録したＣＤ−ＲＯＭやＣＦやＳＤカードやフロッピー(登録商標)ディスクやＵＳＢストレージなどを含む。この記録媒体５１を電子装置５２、５３又はロボット５４に挿入することで当該プログラムを実行可能としたり、プログラムを供給された電子装置５３から通信によって別の電子装置５５やロボット５４に当該プログラムを供給したりすることで電子装置５５やロボット５４上で当該プログラムを実行可能である。
【符号の説明】
【００８５】
１  利用者
２  トークスイッチ部
３  対話制御部
４  応答出力部
５  スピーカ
６  音声入力部
７  マイク
８  音声検出部
９  音声認識部
１０  エコーキャンセル部
１１  応答中断制御部
１２  中断モード入力部
【図１】
2011215421.tif 000007
【図２】
2011215421.tif 000008
【図３】
2011215421.tif 000009
【図４】
2011215421.tif 000010
【図５】
2011215421.tif 000011
【図６】
2011215421.tif 000012
【図７】
2011215421.tif 000013
【図８】
2011215421.tif 000014
【図９】
2011215421.tif 000015
【図１０】
2011215421.tif 000016
【図１１】
2011215421.tif 000017