(57)【要約】【課題】サーバおよび端末の音声認識の性質を使い分けて自然な対話を実現する。【解決手段】  端末は、ユーザからの音声を検出して認識し（Ｓ１１、Ｓ１２）、サーバにも音声の特徴データなどを送信する（Ｓ１３）。サーバは、端末から受領したデータの音声認識処理を行い（Ｓ２２）、その認識結果から回答を生成して端末に送信する（Ｓ２３）。端末は、必要がある場合は場つなぎ処理を適用して、不自然に間延びしないように第１応答文を生成して出力する（Ｓ１４〜Ｓ１６）。場つなぎ処理が不要な場合、端末は、端末側の認識結果に基づいて第１応答文を生成し出力する。端末は、サーバからの回答を受信すると、その回答を用いて第２応答文を生成し、出力する（Ｓ１８）。【選択図】図３
2014191030.tif 000002
【特許請求の範囲】
【請求項１】
音声を認識して応答する音声認識端末であって、
音声入力部から入力される音声を認識する端末側音声認識部と、
音声認識機能を有するサーバに前記音声に関するデータを送信し、前記サーバからサーバ側認識結果を受信する端末側通信制御部と、
前記端末側音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力し、前記サーバ側認識結果に基づき第２応答文を生成して前記音声出力部から出力する、端末側応答生成部と、
を備える
音声認識端末。
【請求項２】
前記端末側応答生成部は、前記端末側音声認識部の認識結果のうち所定値以上の尤度を有するキーワードに基づいて前記第１応答文を生成する、
請求項１に記載の音声認識端末。
【請求項３】
前記端末側応答生成部は、予め設定される場つなぎ条件が成立した場合、前記第１応答文に関して所定の場つなぎ処理を適用する、
請求項１または２のいずれかに記載の音声認識端末。
【請求項４】
前記場つなぎ条件が成立する場合とは、前記端末側音声認識部の認識結果に所定値以上の尤度を有するキーワードが存在しない場合、および／または、前記サーバ側認識結果を受信するまでの時間が所定の待ち時間以上の場合である、
請求項３に記載の音声認識端末。
【請求項５】
前記所定の場つなぎ処理には、前記第１応答文を前記音声出力部から出力する速度を所定の基準速度よりも遅くする処理、および／または、前記第１応答文の出力前、出力中、出力後のいずれか一つ以上のタイミングで所定の場つなぎ語を挿入して前記音声出力部から出力する処理が含まれる、
請求項３または４のいずれかに記載の音声認識端末。
【請求項６】
前記端末側応答生成部は、過去の応答履歴と前記サーバ側認識結果を用いて前記第２応答文を作成することができる、
請求項１〜５のいずれかに記載の音声認識端末。
【請求項７】
前記端末側応答生成部は、前記サーバ側認識結果と前記端末側認識結果とが異なる場合は前記サーバ側認識結果が正しいものとして扱い、前記第１応答文の誤りを修正するための文を含めて前記第２応答文を生成する、
請求項１〜６のいずれかに記載の音声認識端末。
【請求項８】
コンピュータ端末を用いる音声認識方法であって、
前記コンピュータ端末に接続される音声入力部から入力される音声を前記コンピュータ端末内の音声認識部で認識するステップと、
音声認識機能を有するサーバに前記音声に関するデータを送信するステップと、
前記サーバからサーバ側認識結果を受信するステップと、
前記コンピュータ端末内の音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力するステップと、
前記サーバから受信した前記サーバ側認識結果に基づき第２応答文を生成して前記音声出力部から出力するステップと、
をそれぞれ実行するコンピュータ端末を用いる音声認識方法。
【請求項９】
コンピュータを音声認識端末として機能させるコンピュータプログラムであって、
前記コンピュータに接続される音声入力部から入力される音声を認識する端末側音声認識部と、
音声認識機能を有するサーバに前記音声に関するデータを送信し、前記サーバからサーバ側認識結果を受信する端末側通信制御部と、
前記端末側音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力し、前記サーバ側認識結果に基づき第２応答文を生成して前記音声出力部から出力する端末側応答生成部と、
を前記コンピュータ上に実現するためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声認識端末およびコンピュータ端末を用いる音声認識方法に関する。
【背景技術】
【０００２】
多くの語彙を音声認識するシステムでは、大規模な辞書等の音声認識用データベースを必要とする。このため大規模なデータベースを搭載できない端末では、音声認識できる単語数などに制約がある。このような制約を取り除くため小規模な音声認識用データベースを端末に備え、大規模な音声認識用データベースをサーバに備え、通常の基本的な音声認識は端末で行い、大語彙の辞書を必要とする音声認識はサーバで行うサーバ・クライアントシステムがある。
【０００３】
特許文献１に記載の従来技術では、端末及びサーバのそれぞれの音声認識結果のうち、サーバへのアクセス可否、判定時間、認識精度等に基づいていずれか一方の認識結果を採用し、音声認識出力を生成する。
【０００４】
特許文献２に記載の従来技術では、音声の複雑度を判定し、複雑度に応じて端末側の音声認識手段を用いるか、サーバ側の音声認識手段を用いるかを決定する。
【０００５】
特許文献３に記載の従来技術では、音声認識部を端末とサーバのそれぞれに備える音声認識システムにおいて、端末側の言語モデル又は音響モデルをユーザに適応させる。サーバでは一般的な音声認識を担当し、端末ではユーザ用にカスタマイズされた音声認識を担当する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特表２０１２−５０１４８０号公報
【特許文献２】特開２００７−４１０８９号公報
【特許文献３】特開２０１２−６３５３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来技術では、端末側とサーバ側との両方に音声認識部を備えて使い分けているが、端末とサーバとが通信を行うためにはある程度の時間を要するため、端末がサーバから音声認識結果を受け取るまで時間を要する。従って、サーバでの音声認識結果と端末での音声認識結果の両方を適宜使用する音声認識システムは、ユーザとの間で、不自然な間の空いた会話を行うことになる。
【０００８】
本発明は、上記の問題に鑑みてなされたもので、その目的は、サーバでの音声認識結果を利用して自然に対話できるようにした音声認識端末およびコンピュータ端末を用いる音声認識方法を提供することにある。
【課題を解決するための手段】
【０００９】
本発明の一つの観点に係る音声を認識して応答する音声認識端末は、音声入力部から入力される音声を認識する端末側音声認識部と、音声認識機能を有するサーバに音声に関するデータを送信し、サーバからサーバ側認識結果を受信する端末側通信制御部と、端末側音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力し、サーバ側認識結果に基づき第２応答文を生成して音声出力部から出力する、端末側応答生成部と、を備える。
【００１０】
端末側応答生成部は、端末側音声認識部の認識結果のうち所定値以上の尤度を有するキーワードに基づいて第１応答文を生成してもよい。
【００１１】
端末側応答生成部は、予め設定される場つなぎ条件が成立した場合、第１応答文に関して所定の場つなぎ処理を適用してもよい。
【００１２】
場つなぎ条件が成立する場合とは、端末側音声認識部の認識結果に所定値以上の尤度を有するキーワードが存在しない場合、および／または、サーバ側認識結果を受信するまでの時間が所定の待ち時間以上の場合であってもよい。
【００１３】
所定の場つなぎ処理には、第１応答文を音声出力部から出力する時間を所定の基準出力時間よりも長くする処理、および／または、第１応答文の出力前、出力中、出力後のいずれか一つ以上のタイミングで所定の場つなぎ語を挿入して音声出力部から出力する処理が含まれてもよい。
【図面の簡単な説明】
【００１４】
【図１】音声認識端末および音声認識サーバを備える音声認識システムの構成を示すブロック図。
【図２】端末側の応答生成部のブロック図。
【図３】全体処理を示すフローチャート。
【図４】第２応答文を生成して出力する処理を示すフローチャート。
【図５】音声認識の例を示す説明図。
【図６】音声認識の他の例を示す説明図。
【図７】音声認識のさらに別の例を示す説明図。
【図８】音声認識のさらに他の例を示す説明図。
【発明を実施するための形態】
【００１５】
本実施形態では、以下に詳述する通り、サーバ・クライアント型の対話型音声認識システムにおいて、端末側の音声認識結果に基づく第１応答文を出力した後で、サーバ側の音声認識結果に基づく第２応答文を出力する。
【００１６】
第１応答文は端末側の音声認識結果に基づくため、対応可能な語彙は少ないものの、ユーザは待たせずに高速に対応できる。その後、処理可能な語彙の多いサーバ側での音声認識結果を受領して第２応答文を生成して出力すれば、広範囲の話題に対応でき、自然な対話を実現できる。
【００１７】
本実施形態で述べる対話型音声認識システムは、例えば、人型のコミュニケーションロボット、携帯情報端末（携帯電話、スマートフォン、音楽再生装置、デジタルカメラ、パーソナルコンピュータ等を含む）、テレビ、ラジオ、カラオケ装置などの各種電気製品、乗用車、トラック、建設機械などの各種車両などに広く適用できる。それら以外の装置、システムなどにも本実施例の音声認識システムを適用できる。
【実施例１】
【００１８】
図１は、本実施例の音声認識端末１を備える音声認識システムの全体構成を示すブロック図である。音声認識システムは、例えば、音声認識端末（以下、端末）１と、端末１と通信ネットワーク２を介して接続される音声認識サーバ（以下、サーバ）３と、知識データベースを備える知識データベースサーバ４とを備える。図１では、端末１、サーバ３および知識データベースサーバ４を１つずつ示すが、複数ずつ設けても良い。なお、図中では便宜上「部」を省略して示す。
【００１９】
端末１は、コンピュータ端末として構成されており、例えば、音声入力部１１、Ａ／Ｄ変換部１２、特徴ベクトル抽出部１３、音声認識部１４、通信制御部１５、応答生成部１６、音声合成部１７、Ｄ／Ａ変換部１８、音声出力部１９、複数のデータベース２０〜２２を備える。
【００２０】
音声入力部１１は、音声を入力するための装置であり、例えば、マイクロフォンなどが該当する。また、メモリ装置などに記憶された音声データを入力できる構成でもよい。この場合、音声入力部１１は、メモリ装置からデータを受け取るためのインターフェース回路を備える。
【００２１】
Ａ／Ｄ変換部１２は、アナログ信号として入力された音声信号をデジタル信号としての音声データに変換する。特徴ベクトル抽出部１３は、音声データのうち予め設定される複数の箇所での特徴を抽出する。
【００２２】
「端末側音声認識部」としての音声認識部１４は、音声データの特徴と音響モデルデータベース２０と文法データベース２１および辞書データベース２２を用いて、入力された音声データを認識する。
【００２３】
音響モデルデータベース２０は、テキスト（読み）とテキストを発音したときの波形とを対応づけて記憶したデータベースであり、どのような波形の音がどのような単語として認識されるかを定義している。文法データベース２１は、単語の並べ方（文法）などを記憶したデータベースである。辞書データベース２２は、通常の言葉とその通常の読みとを対応づけて記憶した辞書データベースであり、所定のキーワードを含む。ここで、所定キーワードとは、端末１が提供可能なサービス（詳しくは端末１と連携する他のシステムのサービス）を示すキーワードである。
【００２４】
「端末側通信制御部」としての通信制御部１５は、通信ネットワーク２を介してサーバ３と通信するための機能であり、通信インターフェース部などを含む。通信制御部１５は、特徴ベクトル抽出部１３で抽出された特徴ベクトルおよび音声認識部１４で認識された結果をサーバ３に向けて送信する。通信制御部１５は、サーバ３での音声認識結果を含む応答を受信すると、受信した情報を応答生成部１６に渡す。
【００２５】
「端末側応答生成部」としての応答生成部１６は、音声認識部１４による音声認識結果に基づいて第１応答文を生成すると共に、サーバ３での音声認識結果を用いて第２応答文を生成する。応答生成部１６の詳細は図２で後述する。
【００２６】
音声合成部１７は、波形データを組み合わせることで音声を合成する。Ｄ／Ａ変換部１８は、合成された音声データをアナログ信号に変換する。音声出力部１９は、アナログ信号で入力された音声をスピーカー等の手段を介して出力する。
【００２７】
サーバ３は、例えば、通信制御部３１、音声認識部３２、意味解釈部３３、回答生成部３４、知識データベース検索部３５、音響モデルデータベース３６、文法データベース３７、辞書データベース３８を備える。
【００２８】
サーバ側の通信制御部３１は、通信ネットワーク２を介して端末１と通信するための機能である。サーバ側の音声認識部３２は、端末１から受信した音声データの特徴と音響モデルデータベース３６と文法データベース３７および辞書データベース３８を用いて、端末１から受信した音声を認識する。音響モデルデータベース３６と文法データベース３７および辞書データベース３８は、端末１側の各データベース２０〜２２で述べたと同様に構成されているが、サーバ３は端末１よりも多くの記憶領域を使用できるため、例えば辞書データベース３８は多数の語彙を記憶している。
【００２９】
意味解釈部３３は、音声認識部３２の認識結果から意味を解釈する機能である。回答生成部３４は、音声認識結果の意味解釈に適した回答を生成する。回答生成部３４は、知識データベース検索部３５を介して知識データベースサーバ４を検索することができ、その検索結果を回答に含めることができる。
【００３０】
図２を用いて装置１の応答生成部１６の構成を説明する。応答生成部１６は、例えば、意味解釈部１６１、信頼性判定部１６２、待ち時間予測部１６３、誤認識検出部１６４、第１応答文誤り検出部１６５、回答履歴部１６６、第１応答文生成部１６７、第２応答文生成部１６８、セレクタ１６９を備える。
【００３１】
意味解釈部１６１は、音声認識部１４の認識結果に基づいて意味を解釈する。信頼性判定部１６２は、音声認識部１４の認識結果の信頼性（尤度）が所定の基準値以上であるか判定する。
【００３２】
待ち時間予測部１６３は、サーバ３からの回答（音声認識結果を含む）を受信するまでの時間を予測する。待ち時間予測部１６３は、例えば通信履歴から通信所要時間（待ち時間）を予測することができる。
【００３３】
誤認識検出部１６４は、端末１の音声認識部１４による認識結果（端末側認識結果）とサーバ３の音声認識部３２による認識結果（サーバ側認識結果）とを比較し、端末側認識結果に誤りがあるか判定する。
【００３４】
第１応答文誤り検出部１６５は、誤認識検出部１６４が端末側認識結果に誤りを検出した場合に、端末側認識結果の誤りに起因する誤りを第１応答文の中から検出する。第１応答文誤り検出部１６５は、第１応答文の中に誤りを検出すると、その誤りについての情報を第２応答文生成部１６８に入力する。
【００３５】
回答履歴部１６６は、端末１がユーザに過去に回答した第１応答文および第２応答文の情報を所定時間分または所定回答分だけ記憶して管理する。
【００３６】
第１応答文生成部１６７は、端末側認識結果と信頼度（尤度）、意味の解釈結果、待ち時間に基づいて、ユーザの入力した音声に対応する第１応答文を生成する。第２応答文生成部１６８は、第１応答文と、サーバ３の回答と、第１応答文の誤り（もしも有る場合）とに基づいて、第２応答文を生成する。
【００３７】
第１応答文は、端末１からユーザに最初に出力される応答であり、端末側認識結果のうち信頼度の高いキーワードに基づいて生成される。第１応答文については、後述する場つなぎ処理により、発話速度を調整したり、所定の語句を挿入したりする。
【００３８】
第２応答文は、サーバ３の処理結果（回答とサーバ側認識結果）に基づいて生成され、第１応答文の後に出力される。第２応答文は、第１応答文と意味的に整合があり、第１応答文よりも情報量の多い文である。第１応答文に誤りが検出された場合、第２応答文は第１応答文の誤りを訂正する。
【００３９】
セレクタ１６９は、応答タイミングに合わせて、第１応答文生成部１６７または第２応答文生成部１６８のいずれか一つを選択する。セレクタ１６９は、最初に第１応答文生成部１６７を選択し、次に第２応答文生成部１６８を選択する。音声合成部１７は、セレクタ１６９から入力される第１応答文または第２応答文に応じて、合成音声を生成する。生成された合成音声は音声出力部１９から出力される。
【００４０】
図３を用いて全体処理を説明する。端末１の音声入力部１１にユーザの音声が入力されると、その音声はＡ／Ｄ変換部１２でデジタル信号に変換される。特徴ベクトル抽出部１３は、デジタル化された音声の特徴を抽出する（Ｓ１１）。
【００４１】
このようにして前処理が終了すると、音声認識部１４は、入力された音声を音響モデルデータベース２０と文法データベース２１および辞書データベース２２を用いて解析し、認識候補キーワードのうち最も尤度の高いキーワードを当てはめる（Ｓ１２）。通信制御部１５は、特徴ベクトル抽出部１３で抽出された特徴と音声認識部１４の認識結果とを、音声に関するデータとしてサーバ３に送信する（Ｓ１３）。端末１がユーザに応答するよりも前に、サーバ３で音声認識するために必要なデータがサーバ３に送信される。
【００４２】
サーバ３の通信制御部３１は、端末１からのデータを通信ネットワーク２を介して受信すると（Ｓ２１）、その受信データ（音声の特徴、端末側認識結果）を音声認識部３２に引き渡す。
【００４３】
サーバ３の音声認識部３２は、各データベース３６〜３８を用いて、端末１から受領したデータを音声認識し、意味解釈部３３は、音声認識部３２の認識結果から、その意味内容を判定する（Ｓ２２）。
【００４４】
サーバ３の回答生成部３４は、サーバ側認識結果の意味内容に応じた応答を生成し、通信制御部３１から通信ネットワーク２を介して端末１に送信させる（Ｓ２３）。回答生成部３４は、応答生成に際して必要な場合は、知識データベースサーバ４の保有する知識を検索することができる。例えば、ユーザの入力した音声（ユーザ音声）の認識結果が「〇〇について教えて」だった場合、回答生成部３４は、「〇〇」について知識データベースサーバ４を検索し、その検索結果を応答に含めて端末１に送信することができる。
【００４５】
端末１の処理を説明する。端末１の通信制御部１５がデータをサーバ３に送信した後（Ｓ１３）、応答生成部１６は場つなぎ処理が必要であるか判定する（Ｓ１４）。
【００４６】
場つなぎ処理とは、第２応答文を出力するまでの間に、無言の期間が生じて不自然な対話になるのを防止するために、いわゆる時間稼ぎを行う処理である。つまり、場つなぎ処理とは、例えば、差し障りのない返事を挿入したり、第１応答文の出力時間を引き延ばしたりして、 第２応答文を出力できるようになるまでの時間を埋める処理である。
【００４７】
端末１の応答生成部１６は、ステップＳ１４において、所定の場つなぎ条件が成立したか判定する。所定の場つなぎ条件として、例えば下記の条件を挙げることができる。
【００４８】
（条件１）端末側認識結果に基づいて、認識した単語毎の尤度を調べ、所定値以上の尤度を持つ単語が所定数以上無かった場合は、場つなぎ処理が必要であると判定することができる。
【００４９】
（条件２）サーバ３からの回答の待ち時間が所定の待ち時間以上である場合、場つなぎ処理が必要であると判定することができる。
【００５０】
端末１の応答生成部１６は、場つなぎ処理が必要であると判定すると（Ｓ１４：ＹＥＳ）、所定の場つなぎ処理を実行し（Ｓ１５）、第１応答文を生成して音声出力部１９から出力させる（Ｓ１６）。応答生成部１６は、場つなぎ処理が不要であると判定した場合（Ｓ１４：ＮＯ）、場つなぎ処理を行わずに、第１応答文を作成して出力する。
【００５１】
場つなぎ処理の内容を説明する。場つなぎ処理としては、例えば、下記の処理を挙げることができる。
【００５２】
（処理１）第１の処理として、発話速度を調整する処理がある。発話速度調整処理では、第１応答文を出力するときの速度（発話速度）を基準速度よりも遅くする。但し、あまりにも発話速度を遅くすると会話が不自然になるため、第２応答文の出力準備が完了するまでの時間を発話速度の調整だけで埋めることはできない場合がある。
【００５３】
（処理２）第２の処理として、場つなぎ語を適宜挿入する処理がある。場つなぎ語挿入処理では、所定の場つなぎ語を対話の状況に応じて適宜挿入する。場つなぎ語挿入処理は、例えば、以下のサブ処理を単独でまたは複数組み合わせて実行する。
【００５４】
（サブ処理１）例えば「あのー」、「えーと」、「うーん」、「すいませんが、もう一度おっしゃってください」等の、挿入しても特別な害が無く会話をあまり壊さない所定の語句を、単独でまたは組み合わせて挿入する。
【００５５】
（サブ処理２）予測した待ち時間から「あと〇〇秒お待ち下さい」等の、待ち時間を明示したお詫びの言葉を挿入する。
【００５６】
（サブ処理３）例えば「〇〇を教えて」、「□□について調べて」等の質問語とキーワードの組合せからなる音声が入力された場合、質問語（「教えて」、「調べて」）の尤度が高く、質問語以外に尤度の高いキーワードが存在しないならば、「僕にはちょっと難しいご質問なので専門家に聞いてみますね。少しお待ち下さい」のように、第２応答文の出力まで時間がかかることを詫びる。
【００５７】
なお、上記の「〇〇を教えて」等のユーザ音声は、特徴データとしてサーバ３に送信され、サーバ３においても音声認識される。サーバ３の回答生成部３４は、対象キーワード「〇〇」について知識データベースサーバ４を検索し、その検索結果を含む回答を端末１に送信する。
【００５８】
（サブ処理４）回答履歴部１６６に保存されているデータを場つなぎ語の一種として再利用する。一例を説明する。ユーザの入力した音声が「北海道の帯広の産業を教えて」だったとする。端末１の辞書データベース２２には「北海道」、「産業」、「教えて」は登録されているが、「帯広」という単語は登録されていないものとする。しかし、端末１は、過去にユーザから北海道の根室の産業について訊かれたことがあり、そのときの答え（過去の第２応答文）が回答履歴部１６６に記憶されていたとする。履歴に残っている答えが「根室の産業は、サケ、マス、サンマ、スケトウダラ、ホタテガイなどを主体とする漁業です」であったとする。
【００５９】
このような場合、ユーザから「北海道の帯広の産業を教えて」と入力されると、端末１は例えば、「専門家に聞いてみますので少々お待ち下さい。ちなみに北海道の根室の産業は、サケ、マス、サンマ、スケトウダラ、ホタテガイなどを主体とする漁業です」ととりあえず回答する（第１応答文の出力）。その後、端末１はサーバ３からの回答を得ると、「お待たせしてすいません。北海道の帯広の産業は、農業を核とした食品加工や地場資源を活用した製造業です」と回答する（第２応答文の出力）。
【００６０】
上記のように、場つなぎ処理が必要な場合は所定の場つなぎ処理を行って第１応答文を生成し（Ｓ１４：ＹＥＳ→Ｓ１５→Ｓ１６）、場つなぎ処理が不要な場合は通常通りに第１応答文を生成する（Ｓ１４：ＮＯ→Ｓ１６）。
【００６１】
その後、端末１の応答生成部１６は、サーバ３の回答を受信すると（Ｓ１７）、サーバ３の回答に基づいて第２応答文を生成し、合成音声を生成して音声出力部１９から出力する（Ｓ１８）。
【００６２】
図４は、第２応答文を生成して出力する処理（図３のステップＳ１８）の詳細な一例を示すフローチャートである。
【００６３】
応答生成部１６は、サーバ３の回答に含まれるサーバ側認識結果と端末１の音声認識部１４による認識結果とが異なるか判定する（Ｓ３１）。応答生成部１６は、サーバ側認識結果と端末側認識結果とが異なると判定した場合（Ｓ３１：ＹＥＳ）、サーバ側認識結果を正しいものとして扱い、端末側認識結果の誤りを検出する（Ｓ３２）。
【００６４】
応答生成部１６は、サーバ３の回答（知識データベースの検索結果等を含んでもよい）を利用して、第１応答文と意味内容に整合性があり、かつ、第１応答文の誤りを訂正する第２応答文を生成する（Ｓ３３）。
【００６５】
応答生成部１６は、第２応答文を音声出力部１９から出力する（Ｓ３４）。ここで、第１応答文に含まれる間違いに起因して何か別の動作が実行されている場合、応答生成部１６は、その間違った動作を取り消して正しい動作を実行するためのコマンドを出力することもできる。
【００６６】
例えば、間違った音楽が演奏されている場合はその演奏を停止して正しい音楽を演奏したり、間違ったランプが点灯している場合はそのランプを消灯して正しいランプを点灯したり、ロボットの顔が間違った表情をしている場合はその表情を取り消して正しい表情に戻したり、歩行やダンスなどの間違った動作をしている場合はその動作を取り消して正しい動作を行わせたりする。
【００６７】
サーバ側認識結果と端末側認識結果とが一致する場合（Ｓ３１：ＮＯ）、応答生成部１６は、ステップＳ３２をスキップしてステップＳ３３に移る。
【００６８】
図５は、音声認識の一例を示す説明図である。ユーザから「北海道の名所のお勧めは？」という音声が入力されたとする。端末１の音声認識部１４は「北海道」と「お勧め」は所定値以上の尤度で認識することができたが、「名所」は所定値以上の尤度で認識することができなかったとする。信頼性の低い認識結果を「−−−」と示す。
【００６９】
端末１の応答生成部１６は、尤度の高い認識結果「北海道」と「お勧め」だけに基づいて意味を解釈し、その結果として、「札幌、函館、根室はお勧めです」という第１応答文を出力する。
【００７０】
サーバ３は、端末１での音声認識処理と並列して独自に音声認識処理を実行しており、その結果ユーザの音声を「北海道」、「名所」、「お勧め」と全て正しく認識できたものとする。サーバ３の意味解釈部３３はサーバ側認識結果の意味内容を解釈し、回答生成部３４は、その意味内容に応じた回答（例えば「札幌の時計台、函館の夜景はお勧めです」）を生成する。
【００７１】
端末１の応答生成部１６は、サーバ３からの回答に基づいて第２応答文を生成し、出力する。応答生成部１６は、サーバ３の回答に含まれる文をそのまま利用できる場合は、回答に含まれる文を第２応答文としてそのまま出力することができる。また例えば、応答生成部１６は、サーバ３の回答に含まれる文の先頭または末尾に他の単語を加えたり、他の単語に置き換えたりして第２応答文を生成することもできる。
【００７２】
図６は、通信混雑やサーバ３の過負荷などのために、端末１がサーバ３の回答を受信するまでに所定の待ち時間以上かかると判定され、場つなぎ処理が適用される場合の処理例である。
【００７３】
この場合、端末１は、第１応答文「札幌、函館、根室はお勧めです」の発話速度を通常速度よりも低下させ、ゆっくりと応答する。これにより、サーバ３の回答を受信するまでの時間を稼ぎ、できるだけ自然な対話を維持する。
【００７４】
図７は、端末１での音声認識結果の精度が低いために、場つなぎ処理が実行される場合の処理例を示す。端末１の音声認識部１４は、ユーザ音声「北海道の名所のお勧めは？」のうち、「北海道」だけを所定値以上の尤度をもって認識でき、他の単語は所定値以上の尤度で認識できなかったとする。ここでは、所定値以上の尤度を持つ単語が１つしか存在しない場合、場つなぎ条件を満たすものとする。
【００７５】
端末１の応答生成部１６は、「あのー」、「んー」などの当たり障りのない場つなぎ語を挿入したり、「北海道ですよね？」と聞き返したり、「北海道ねえ」と繰り返したり、「あとちょっと待ってくださいね」とお詫びしたりして、サーバ３の回答が届くまで時間を稼ぐ。
【００７６】
端末１の応答生成部１６は、サーバ３の回答を受領すると場つなぎ処理を停止し、サーバ３の回答を利用して生成した第２応答文を出力する。図７に示す例では、サーバ３の回答に「名所なら支笏湖です」と含まれており、その文をそのまま第２応答文として利用する場合を示している。
【００７７】
図８は、端末側認識結果が誤っており、第１応答文の間違いを訂正する第２応答文を出力する例を示す。
【００７８】
ユーザ音声「北海道の名所のお勧めは？」を端末１の音声認識部１４は、例えば「北海道」、「目医者」、「お勧め」と認識し、「名所」を「目医者」と間違って認識したものとする。端末１の辞書データベース２２には、北海道の眼科医のリストなどは登録されていないため場つなぎ処理が適用され、「北海道の眼科を問い合わせますね」のような第１応答文を生成して出力する。
【００７９】
サーバ３の音声認識部３２はユーザ音声を「北海道」、「名所」、「お勧め」と全て正しく認識する。サーバ３の回答生成部３４は、その意味内容に応じた文「札幌の時計台、函館の夜景はお勧めです」を含む回答を生成して端末１に送信する。
【００８０】
端末１の応答生成部１６は、サーバ３からの回答を受領すると、端末側認識結果に誤りがあったことを検出し、第１応答文の間違いを見つける。応答生成部１６は、サーバ３の回答に含まれる文と、第１応答文の間違いを正すための文とを用いて、第２応答文（ごめんなさい。聞き間違えました。札幌の時計台、函館の夜景がお勧めです）を生成して、出力する。
【００８１】
このように構成される本実施例によれば、まず最初に端末側認識結果に基づく第１応答文を出力し、次にサーバ側認識結果に基づく第２応答文を出力する。これにより、本実施例では、第１応答文をもってユーザに即応できると共に、認識可能な語彙が豊富で、外部の知識データベースも利用できるサーバ３からの回答を用いて、適切な内容の第２応答文をユーザに提供できる。従って、応答文の信頼性は低いが高速に対応できる端末１と、応答文の信頼性は高いが処理時間のかかるサーバ３との技術的性質を使い分けて、ユーザとの対話を行うことができる。これにより、ユーザを待たせずに、ユーザが自由気ままに話す広い範囲の話題にも追従することができ、自然な対話を実現することができる。
【００８２】
本実施例によれば、端末１とサーバ３の間で通信遅延や認識結果の誤りが生じた場合、場つなぎ処理を実行したり、訂正処理を実行したりして、できるだけ自然な対話を行うことができる。従って、ユーザは違和感を覚えずに音声認識端末１を使用することができ、使い勝手が向上する。
【００８３】
本実施例では、端末側認識結果のうち所定値以上の尤度で認識できたキーワードに基づいて第１応答文を生成するため、端末１の応答生成部１６は認識信頼性の高いキーワードのみに基づいて処理を実行すればよく、適切な第１応答文を短時間で生成し、出力することができる。
【００８４】
本実施例では、端末１の応答生成部１６は、第１応答文に所定の場つなぎ語を適宜挿入して出力するため、不自然な間の多い会話、間延びした会話の発生を防止して、できるだけ自然な対話を維持することができる。
【００８５】
本実施例では、音声認識処理能力が相対的に低い端末１側で認識結果に誤りが生じた場合でも、音声認識処理能力が相対的に高いサーバ３での認識結果に基づいて、端末側認識結果の誤りに起因する第１応答文の間違いを訂正することができる。従って、間違った第１応答文を訂正せずに放置する場合に比べて、ユーザの心証を良くすることができ、ユーザとの会話が破綻するのを防止することができる。
【００８６】
なお、本発明は、上述した実施の形態に限定されない。当業者であれば、本発明の範囲内で、種々の追加や変更等を行うことができる。
【符号の説明】
【００８７】
１：音声認識端末、２：通信ネットワーク、３：サーバ、４：知識データベースサーバ、１４：音声認識部、１５：通信制御部、１６：応答生成部、３１：通信制御部、３２：音声認識部、３４：回答生成部、３５：知識データベース検索部
【図１】
2014191030.tif 000003
【図２】
2014191030.tif 000004
【図３】
2014191030.tif 000005
【図４】
2014191030.tif 000006
【図５】
2014191030.tif 000007
【図６】
2014191030.tif 000008
【図７】
2014191030.tif 000009
【図８】
2014191030.tif 000010
【手続補正書】
【提出日】平成26年5月1日(2014.5.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
音声を認識して応答する音声認識端末であって、
音声入力部から入力される音声を認識する端末側音声認識部と、
音声認識機能を有するサーバに前記音声に関するデータを送信し、前記サーバからサーバ側認識結果を受信する端末側通信制御部と、
前記端末側音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力し、前記サーバ側認識結果に基づき第２応答文を生成して前記音声出力部から出力する、端末側応答生成部と、
を備え、
前記端末側応答生成部は、予め設定される場つなぎ条件が成立した場合、前記第２応答文を出力できるようになるまでの時間を埋める場つなぎ処理を前記第１応答文に適用する、
音声認識端末。
【請求項２】
前記場つなぎ条件が成立する場合とは、前記端末側音声認識部の認識結果に所定値以上の尤度を有するキーワードが存在しない場合、および／または、前記サーバ側認識結果を受信するまでの時間が所定の待ち時間以上の場合である、
請求項１に記載の音声認識端末。
【請求項３】
前記所定の場つなぎ処理には、前記第１応答文を前記音声出力部から出力する速度を所定の基準速度よりも遅くする処理、および／または、前記第１応答文の出力前、出力中、出力後のいずれか一つ以上のタイミングで所定の場つなぎ語を挿入して前記音声出力部から出力する処理が含まれる、
請求項１または２のいずれかに記載の音声認識端末。
【請求項４】
前記端末側応答生成部は、過去の応答履歴と前記サーバ側認識結果を用いて前記第２応答文を作成することができる、
請求項１〜３のいずれかに記載の音声認識端末。
【請求項５】
前記端末側応答生成部は、前記サーバ側認識結果と前記端末側認識結果とが異なる場合は前記サーバ側認識結果が正しいものとして扱い、前記第１応答文の誤りを修正するための文を含めて前記第２応答文を生成する、
請求項１〜４のいずれかに記載の音声認識端末。
【請求項６】
コンピュータ端末を用いる音声認識方法であって、
前記コンピュータ端末に接続される音声入力部から入力される音声を前記コンピュータ端末内の音声認識部で認識するステップと、
音声認識機能を有するサーバに前記音声に関するデータを送信するステップと、
前記サーバからサーバ側認識結果を受信するステップと、
前記コンピュータ端末内の音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力するステップと、
前記サーバから受信した前記サーバ側認識結果に基づき第２応答文を生成して前記音声出力部から出力するステップと、
前記第１応答文を生成して前記音声出力部から出力するステップを実行する際に実行されるステップであって、予め設定される場つなぎ条件が成立した場合、前記第２応答文を出力できるようになるまでの時間を埋める場つなぎ処理を前記第１応答文に適用するステップと、
をそれぞれ実行するコンピュータ端末を用いる音声認識方法。
【請求項７】
コンピュータを音声認識端末として機能させるコンピュータプログラムであって、
前記コンピュータに接続される音声入力部から入力される音声を認識する端末側音声認識部と、
音声認識機能を有するサーバに前記音声に関するデータを送信し、前記サーバからサーバ側認識結果を受信する端末側通信制御部と、
前記端末側音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力し、前記サーバ側認識結果に基づき第２応答文を生成して前記音声出力部から出力する端末側応答生成部であって、予め設定される場つなぎ条件が成立した場合、前記第２応答文を出力できるようになるまでの時間を埋める場つなぎ処理を前記第１応答文に適用する端末側応答生成部と、
を前記コンピュータ上に実現するためのコンピュータプログラム。
【請求項８】
音声を認識して応答する音声認識端末であって、
音声入力部から入力される音声を認識する端末側音声認識部と、
音声認識機能を有するサーバに前記音声に関するデータを送信し、前記サーバからサーバ側認識結果を受信する端末側通信制御部と、
前記端末側音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力し、前記サーバ側認識結果に基づき第２応答文を生成して前記音声出力部から出力する、端末側応答生成部と、
を備え、
前記端末側応答生成部は、過去の応答履歴と前記サーバ側認識結果を用いて前記第２応答文を作成することができる、
音声認識端末。
【請求項９】
音声を認識して応答する音声認識端末であって、
音声入力部から入力される音声を認識する端末側音声認識部と、
音声認識機能を有するサーバに前記音声に関するデータを送信し、前記サーバからサーバ側認識結果を受信する端末側通信制御部と、
前記端末側音声認識部による端末側認識結果に基づき第１応答文を生成して音声出力部から出力し、前記サーバ側認識結果に基づき第２応答文を生成して前記音声出力部から出力する、端末側応答生成部と、
を備え、
前記端末側応答生成部は、前記サーバ側認識結果と前記端末側認識結果とが異なる場合は前記サーバ側認識結果が正しいものとして扱い、前記第１応答文の誤りを修正するための文を含めて前記第２応答文を生成する、
音声認識端末。