説明

音声応答システム、音声応答プログラム

【課題】使用者の発話に合致する蓋然性の高い音声候補を特定のカテゴリに偏重することなく認識し、使用者による当該音声候補の選択結果に応答するシステム等を提供する。
【解決手段】音声応答システム10によれば、マイク2への入力音声に基づき、異なるドメインに属する複数の音声候補が認識され、かつ、出力される。これにより、当該使用者の発話から乖離したカテゴリに属する複数の音声候補が偏重的に出力される事態が回避され、当該複数の音声候補に使用者の発話に該当する音声候補を高い確率で含ませることができる。そして、当該複数の音声候補の中から使用者により選択された、当該使用者の発話に合致した1つの音声候補が高い確率で認識され、使用者の意図に沿った形での応答が可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は使用者から発せられた音声を認識してこれに応答するシステム等に関する。
【背景技術】
【0002】
使用者から発せられた音声認識の便宜を図るため、入力音声に基づいて複数の音声候補を認識し、当該複数の音声候補の中から使用者により選択された1つの音声候補を当該使用者から発せられた音声として認識する手法が提案されている(たとえば、特許文献1参照)。
【特許文献1】特開昭63−027898号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、入力音声と、複数のカテゴリに区分された複数の辞書のそれぞれに登録されている音声との音響的な近さに基づいて音声候補が認識される場合、使用者の発話から乖離したカテゴリに属する音声候補が偏重的に認識されてしまう可能性があった。このため、使用者の発話に合致する音声候補が認識されず、当該使用者の発話の正しい認識が困難となる場合があった。また、多数の音声候補が提示されるとその中から使用者が先の発話に合致した音声候補を探すのは煩わしさを伴う可能性が高くなる。
【0004】
そこで、本発明は、使用者の発話に合致する蓋然性の高い音声候補を特定のカテゴリに偏重することなく認識し、使用者による当該音声候補の選択結果に応答するシステム、および当該応答機能をコンピュータに付与するプログラムを提供することを解決課題とする。
【課題を解決するための手段】
【0005】
前記課題を解決するための第1発明の音声応答システムは、音声入力手段に入力された音声に基づき、1次ドメイン群に含まれる第1ドメインに属する音声候補を第1音声候補として認識する第1音声認識部と、該音声入力手段に入力された該音声に基づき、該第1ドメインを含まない2次ドメイン群に含まれる第2ドメインに属する音声候補を第2音声候補として認識する第2音声認識部と、該第1音声認識部により認識された第1音声候補と、該第2音声認識部により認識された第2音声候補とを出力する出力部と、該出力部により出力された該第1音声候補および該第2音声候補のうち使用者により選択された音声候補を認識する確認部とを備えていることを特徴とする。
【0006】
第1発明の音声応答システムによれば、音声入力手段への入力音声に基づき、異なるドメインに属する複数の音声候補が認識され、かつ、出力される。「ドメイン」とは音声候補のカテゴリに応じた分類を意味する。これにより、当該使用者の発話から乖離したカテゴリに属する複数の音声候補が偏重的に出力される事態が回避されうる。また、出力される複数の音声候補に使用者の発話に該当する音声候補を高い確率で含ませることができる。そして、当該複数の音声候補の中から使用者により選択された、当該使用者の発話に合致した1つの音声候補が高い確率で認識され、使用者の意図に沿った形での応答が可能となる。すなわち、使用者の発話に合致する蓋然性の高い音声候補が特定のカテゴリに偏重することなく認識され、使用者による当該音声候補の選択結果に応答することが可能となる。
【0007】
また、第2発明の音声応答システムは、第1発明の音声応答システムにおいて、前記第2音声認識部が前記第2音声候補のスコアを評価し、前記出力部が、該第2音声認識部により評価されたスコアが所定のスコア以上であることを要件として該第2音声候補を出力することを特徴とする。
第2発明の音声応答システムによれば、第2音声候補のスコア(尤度)が所定のスコア以上であることを要件として当該第2音声候補が出力される。音声候補の「スコア」とは、当該音声候補が音響的観点や言語的観点等のさまざまな観点から入力音声に該当するもっともらしさ(尤度、確信度)を表す指数を意味する。これにより、入力音声に該当する可能性が著しく低い音声候補までもが出力される事態が回避される。
【0008】
さらに、第3発明の音声応答システムは、第1発明の音声応答システムにおいて、前記確認部により認識された音声候補に基づき、機器の動作を制御する機器制御部とをさらに備えていることを特徴とする。
【0009】
第3発明の音声応答システムによれば、ユーザの発話に合致する音声候補に基づいて、当該ユーザの意思や希望に沿った形で機器が制御されうる。
【0010】
また、第4発明の音声応答システムは、第3発明の音声応答システムにおいて、前記第2音声認識部が前記第2音声候補のスコアを評価し、前記機器制御部が該第2音声認識部により評価されたスコアが所定のスコア未満である場合、前記第1音声候補に基づいて前記機器の動作を制御することを特徴とする。
【0011】
第4発明の音声応答システムによれば、ユーザの発話に該当する可能性が極めて低い音声候補にしたがって機器が制御される事態が確実に回避されうる。
【0012】
前記課題を解決するための第5発明の音声応答プログラムは、音声入力手段に入力された音声に基づき1次ドメイン群に含まれる第1ドメインに属する音声候補を第1音声候補として認識する第1音声認識機能と、該音声入力手段に入力された該音声に基づき該第1ドメインを含まない2次ドメイン群に含まれる第2ドメインに属する音声候補を第2音声候補として認識する第2音声認識機能と、該第1音声認識機能により認識された第1音声候補と、該第2音声認識機能により認識された第2音声候補とを該使用者に知らせる出力機能と、該出力機能により出力された該第1音声候補および該第2音声候補のうち使用者により選択された音声候補を認識する確認機能とをコンピュータに付与することを特徴とする。
【0013】
第5発明の音声応答プログラムによれば、使用者の発話に合致する蓋然性の高い音声候補を特定のカテゴリに偏重することなく認識し、使用者による当該音声候補の選択結果に応答する機能が任意のコンピュータに付与されうる。
【発明を実施するための最良の形態】
【0014】
本発明の音声応答システム等の実施形態について図面を用いて説明する。
【0015】
まず、本発明の音声応答システムの構成について図1〜図2を用いて説明する。
音声応答システム10はA/D変換回路、マイクロコンピュータ(CPU、RAM、ROM、I/O等により構成されている。)等を含む電子回路により構成され、マイク2の出力(アナログ信号)がA/D変換回路を介してデジタル信号に変換されて入力される。そして、音声応答システム10は、入力されたデータに基づいて、運転者から入力された発話を認識する処理や、その認識結果に基づいて、スピーカ4やディスプレイ5を介して運転者との対話や運転者への情報提示を行う処理や、機器61〜63を制御する処理等を実行する。これらの処理は、音声応答システム10のメモリに予め実装されたプログラムを音声応答システム10により実行することにより実現される。なお、当該ソフトウェアはCD−ROM等の記録媒体を介してメモリに格納されてもよく、外部のサーバからネットワークや人工衛星を介して配信または放送され、車両1に搭載された通信機器により受信された上でメモリに格納されてもよい。
【0016】
音声応答システム10にはマイク(音声入力手段)2と、車両状態検出部3と、スピーカ4と、ディスプレイ5と、複数の機器としてのオーディオ機器61、ナビゲーションシステム62、およびエアコンディショナ63とが接続されている。
【0017】
マイク2は車内の所定箇所に設置され、車両1の運転者等の使用者の音声が入力される。マイク2は、たとえばトークスイッチにより音声の入力開始が指令されると、入力される音声を運転者の発話として取得する。トークスイッチは使用者により操作されるON・OFFスイッチであり、押下してON操作されることによって音声の入力開始が指令される。
【0018】
車両状態検出部3は車両1の状態を検出するセンサ等である。車両1の状態とは、たとえば車両1の速度や加減速等の走行状態、車両1の位置や走行道路等の走行環境情報、車両1に装備された機器(ワイパー、ウィンカー、オーディオ機器61、ナビゲーションシステム62等)の動作状態、車両1の内部温度等の状態を意味する。車両1の走行状態を検出するセンサとしては、車両1の走行速度(車速)を検出する車速センサ、車両1のヨーレートを検出するヨーレートセンサ、車両1のブレーキ操作(ブレーキペダルが操作されているか否か)を検出するブレーキセンサ等が挙げられる。さらに、車両1の状態として車両1の運転者の状態(運転者の手掌部の発汗、運転負荷等)が検出されてもよい。
【0019】
スピーカ4は使用者への応答(音声ガイド)を出力する。なお、スピーカ4としてオーディオ機器61が有するスピーカが用いられてもよい。
【0020】
ディスプレイ5にはフロントウィンドウに画像等の情報を表示するHUD(ヘッドアップディスプレイ)、車速等の走行状態を表示するメータに一体的に設けられたディスプレイ、およびナビゲーションシステム62が有するディスプレイ等が含まれる。なお、ナビゲーションシステム62のディスプレイは、タッチスイッチが組み込まれたタッチパネルとなっている。
【0021】
複数の機器61〜63のそれぞれについて、制御可能な構成要素(デバイス,コンテンツ等)、機能、動作等があらかじめ定められている。
【0022】
オーディオ機器61のデバイスには「CD」「MP3」「ラジオ」「スピーカ」等が含まれている。また、オーディオ機器61の機能には「音量」等の調節が含まれている。さらに、オーディオ機器61の動作には「変更」「オン」「オフ」等が含まれている。また「CD」「MP3」の動作には「再生」「停止」等が含まれている。さらに「ラジオ」の機能には「選局」等が含まれている。また「音量」の動作として「上げる」「下げる」等が含まれている。
【0023】
ナビゲーションシステム62のコンテンツには「画面表示」「経路誘導」「POI(Point of Interest)検索」等が含まれている。さらに「画面表示」の動作には「変更」「拡大」「縮小」等が含まれている。なお「経路誘導」は音声ガイド等により目的地へ誘導する機能であり、「POI検索」はたとえばレストラン、ホテル等の目的地を検索する機能である。
【0024】
エアコンディショナ63の機能には「風量」「設定温度」等の調節が含まれている。また、エアコンディショナ63の動作には「オン」「オフ」等が含まれている。さらに「風量」「設定温度」の動作には「変更」「上げる」「下げる」等が含まれている。
【0025】
当該機器61〜63は、制御対象となる機能等が特定されることにより制御されうる。制御対象となる各機器61〜63のデバイス、コンテンツ、機能は複数のドメインに分類されている。
【0026】
音声応答システム10は音声認識部11と、構文解析部12と、シナリオ制御部13と、音声合成部14とを備えている。音声認識部11、構文解析部12およびシナリオ制御部13が本発明の「第1音声認識部」および「第2音声認識部」を構成する。シナリオ制御部13および音声合成部14が本発明の「出力部」を構成する。また、シナリオ制御部13が本発明の「確認部」および「機器制御部」のそれぞれを構成する。
【0027】
第1音声認識部はマイク2に入力された音声に基づき、1次ドメイン群に含まれる第1ドメインに属する音声候補を「第1音声候補」として認識する。
【0028】
第2音声認識部はマイク2に入力された音声に基づき、第1ドメインを含まない2次ドメイン群に含まれる第2ドメインに属する音声候補を「第2音声候補」として認識する。
【0029】
出力部は第1音声認識部により認識された第1音声候補と、第2音声認識部により認識された第2音声候補とをディスプレイ5に表示等する。
【0030】
確認部は出力部により出力された第1音声候補および第2音声候補のうち使用者により選択された音声候補を認識する。
【0031】
機器制御部は確認部により認識された当該選択音声候補等に基づき、機器61〜63の動作を制御する。
【0032】
音声認識部11はマイク2への入力音声に応じた波形データを周波数分析して特徴ベクトルを抽出し、当該特徴ベクトルに基づいて入力音声を認識し、単語列で表現されたテキストとして出力する「音声認識処理」を実行する。また、音声認識部11は言語モデル112および固有名詞辞書114のうち、シナリオ制御部13により特定されたドメインに応じたドメイン群のそれぞれに分類されたデータのみを用いて音声認識処理を実行する。音声認識処理は、次に説明するような確率統計的な手法を用いて入力音声の音響的特徴および言語的特徴を総合的に判断することにより実行される。
【0033】
すなわち、音声認識部11は音響モデル111を用いて、抽出された特徴ベクトルに応じた発音データの尤度(以下、適宜「音響スコア」という。)を評価し、当該音響スコアに基づいて発音データを特定する。また、音声認識部11は言語モデル112および固有名詞辞書114を用いて当該発音データに応じた単語列で表現されたテキストの尤度(以下、適宜「言語スコア」という。)を評価し、当該言語スコアに基づいてテキストを特定する。さらに、音声認識部11は特定されたすべてのテキストについて、音響スコアと言語スコアとの重み付き和として音声認識の確信度(以下、適宜「音声認識スコア」という。)を評価し、音声認識スコアが所定の条件を満たすテキストを、認識されたテキスト(Recognized Text)として出力する。
【0034】
構文解析部12は音声認識部11により認識されたテキストから構文モデル122および固有名詞辞書124を用いて、入力音声の意味を理解する「構文解析処理」を実行する。構文解析処理は次に説明するような確率統計的な手法を用いて、音声認識部11により認識されたテキストにおける単語間の関係または構文を解析することにより実行される。
【0035】
すなわち、構文解析部12は当該認識されたテキストの尤度(以下、適宜「構文解析スコア」という。)を評価し、かつ、意味に対応するクラスに分類されたテキストを特定する。また、構文解析部12は、構文解析スコアが所定の条件を満たすようなクラスに分類されたテキスト(Categorized Text)を、入力音声の認識結果として構文解析スコアとともに出力する。テキストの先頭部分は、制御対象である機能の分類を表すドメインに相当する。たとえば、認識されたテキストが「地図回転」である場合、クラス分類されたテキストは{navigation_mapcontrol_rotation}となり、制御対象はnavigationとなる。なお、クラス分類されたテキストの先頭部分がドメインとして定義されるほか、これとは異なる形で当該テキストの一部または全部がドメインとして定義されていてもよい。たとえば、クラス分類されたテキスト{navigation_mapcontrol_rotation}のうち「navigation_map control」がドメインとされてもよい。
【0036】
シナリオ制御部13は構文解析部12から出力される認識結果と、車両状態検出部3から取得される車両1の状態とに基づき、シナリオデータベース132に保存されているデータを用いて、使用者に対する応答出力や機器制御のシナリオを特定する。シナリオデータベース132には、応答出力や機器の動作制御のための複数のシナリオが、音声認識結果や車両状態の条件(ルール)とともにあらかじめ保存されている。そして、シナリオ制御部13は特定されたシナリオにしたがって、音声や画像表示による応答を制御する処理や、機器を制御する処理を実行する。シナリオ制御部13は、たとえば音声による応答では、出力する応答の内容(運転者の次の発話を促すための応答文や、操作の完了等を使用者に報知するための応答文)や、応答を出力する際の速度や音量を特定する。シナリオ制御部13は構文解析部12により認識された発話の意味に基づき、制御対象となる機器や、当該機器に実行させる情報処理のカテゴリを特定するドメインを特定する。
【0037】
音声合成部14はシナリオ制御部13で特定された応答文に応じて、音素モデル142を用いてTTS(Text to Speech)等の処理によって音声を合成し、音声を示す波形データとして出力する。音声合成部14は、たとえばシナリオ制御部13で特定された応答文のテキストを音声出力に適した表現に正規化し、当該正規化テキストの各単語を発音データに変換する。そして、音声合成部14は、音素モデル142を用いて発音記号から特徴ベクトルを特定し、この特徴ベクトルにフィルタ処理を施して波形データに変換する。この波形データは、スピーカ4から音声として出力される。
【0038】
音響モデル111、言語モデル112、固有名詞辞書114、構文モデル122、固有名詞辞書124、シナリオデータベース132および音素モデル142のそれぞれは、データが格納または記録されているCD−ROM、DVD、HDD等の記録媒体(データベース)である。
【0039】
音響モデル(Acoustic Model)111には、認識単位(音素、形態素、単語等)毎に用意された複数のHMM(Hidden Markov Model(隠れマルコフモデル))等、特徴ベクトルと発音データとの確率的な対応を示すデータが格納されている。HMMは音声が定常信号源(状態)の連結により表現され、時系列が状態から状態への遷移確率によって表現される統計的信号源モデルである。HMMにより、時系列で変動する音声の音響的な特徴が簡易な確率モデルによって表現される。HMMの遷移確率等のパラメータは、対応する学習用の音声データを与えて学習させることによりあらかじめ特定されている。また、音素モデル142にも、発音データから特徴ベクトルを特定するための、音響モデル111と同様のHMMが格納されている。
【0040】
言語モデル(Language Model)112には、認識対象である単語の出現確率や接続確率を示すデータが、この単語の発音データおよびテキストとともに格納されている。認識対象である単語とは、対象を制御するための発話で使用される可能性のある単語として予め定められるものである。単語の出現確率や接続確率等のデータは、大量の学習テキストコーパスを解析することにより統計的に作成される。また、単語の出現確率は、たとえば、学習テキストコーパスにおけるその単語の出現頻度等に基づいて算出する。
【0041】
言語モデル112としては1つの単語の出現確率によって表現されるユニグラム(Uni−gram,N=1)、および2つの単語の列の生起確率(先行する1単語についての条件付き出現確率)によって表現されるバイグラム(Bi−gram,N=2)等、特定のN個の単語が連続して出現する確率により表現されるN−gramの言語モデルが用いられている。
【0042】
構文モデル(Parser Model)122には、認識対象である単語の出現確率や接続確率を示すデータが、この単語のテキストおよびクラスとともに格納されている。構文モデル122としてはユニグラム、バイグラム、および3つの単語の列の生起確率(先行する2単語についての条件付き出現確率)によって表現されるトリグラム(Tri−gram,N=3)等、構文モデル122としては言語モデル112と同様にN−gramの言語モデルが用いられている。
【0043】
固有名詞辞書114、124には、人名、地名、ラジオの放送局の周波数等の、認識対象となる単語のうちの固有名詞の発音データおよびテキストが登録されている。当該データは、図2に示されように<radio station><AM>といったタグが付されて記録されている。このタグの内容が固有名詞辞書114、124に登録された各固有名詞のクラスを示す。
【0044】
言語モデル112および構文モデル122のそれぞれは、たとえば図2に示されている複数のドメイン、すなわちD1={audio}、D2={climate}、D3={passenger}、D4={POI}、D5={ambiguous}、D6={navigation}、D7={clock}およびD8={help}に分類されて作成されている。D1は制御対象がオーディオ機器61であることを示している。D2は制御対象がエアコンディショナ63であることを示している。D3は制御対象が助手席のエアコンディショナ63であることを示している。D4は制御対象がナビゲーションシステム62のPOI検索機能であることを示している。D5は制御対象が不明であることを示している。D6は制御対象がナビゲーションシステム62の経路探索や地図操作等の機能であることを示している。D7は制御対象が時計機能であることを示している。D8は機器61〜63や音声応答システムの操作方法を知るためのヘルプ機能であることを示している。
【0045】
続いて、前記構成の音声応答システム10の機能について図3〜図7を用いて説明する。
【0046】
車両1の運転者等の使用者により、トークスイッチがON操作されて発話の入力開始が指示された上で、マイク2に当該使用者の「地図回転」等の音声が入力される(図3/S002)。
【0047】
また、第1音声認識部によって1次ドメイン群が有効化され、当該1次ドメイン群に第1ドメイン{navigation}に属する第1音声候補L1が認識される(図3/S004)。これにより、図4(a)に示されているドメイン群D1〜D8または図4(b)に示されているドメイン群D4〜D8が1次ドメイン群として有効化される。そして、1次ドメイン群に含まれる第1ドメインD4={navigation}に含まれる音声候補「地図回転」が第1音声候補L1として認識される。第1音声候補L1が属するドメインはシナリオ制御部13により決定される。第1音声候補L1の認識処理の詳細については後述する。
【0048】
さらに、第1音声認識部により第1音声候補L1のスコア(音声認識スコア、構文解析スコア等が含まれる。)sc(L1)が第1閾値θ1未満であるか否かが判定される(図3/S006)。第1音声認識部による当該判定結果が肯定的である場合(図3/S006‥YES)、第2音声認識部により、第1音声候補L1が属するドメインとしてシナリオ制御部13により決定された第1ドメインが含まれない、2次ドメイン群が有効化され、当該2次ドメイン群に含まれる第2ドメインに属する第2音声候補L2が認識される(図3/S008)。これにより、図4(a)(b)に示されているドメイン群D1〜D3、D5〜D8が2次ドメイン群として有効化される。そして、2次ドメイン群に含まれる第2ドメインD5={POI}に含まれる音声候補「ラーメン食いたい」が第2音声候補L2として認識される。第2音声候補L2の認識処理の詳細については後述する。
【0049】
さらに、第2音声認識部により第2音声候補L2のスコア(音声認識スコア、構文解析スコア等が含まれる。)sc(L2)が第2閾値θ2以上であるか否かが判定される(図3/S010)。第2音声認識部による当該判定結果が肯定的である場合(図3/S010‥YES)、シナリオ制御部13により第1音声候補L1および第2音声候補L2がディスプレイ5に表示され、かつ、第1音声候補L1または第2音声候補L2の当否確認を使用者に促す音声がスピーカ4から出力される(図3/S012)。これにより、第1音声候補L1および第2音声候補L2が同時または逐次的にディスプレイ5に表示される。たとえば図5(a)に示されているように第1音声候補L1である「地図回転」および第2音声候補L2である「ラーメン食いたい」が同時にディスプレイ5に表示される。また、図5(b)に示されているようにまず第1音声候補L1である「地図回転」がディスプレイ5に表示され、使用者による「次」という発話やディスプレイ5に表示された次ボタンのタッチ操作に応じて図5(c)に示されているように第2音声候補L2である「ラーメン食いたい」がディスプレイ5に表示される。
【0050】
一方、第1音声認識部による判定結果が否定的な場合(図3/S006‥NO)、または第2音声認識部による判定結果が否定的な場合(図3/S010‥NO)、シナリオ制御部13によって第1音声候補L1のみがディスプレイ5に表示され、かつ、第1音声候補L1の当否確認を使用者に促す音声がスピーカ4から出力される(図3/S014)。これにより、たとえば図5(b)に示されているように第1音声候補L1である「地図回転」がディスプレイ5に表示される。
【0051】
さらに、シナリオ制御部13により、ディスプレイ5に表示された音声候補の選択操作の有無が判定される(図3/S016)。当該判定結果が肯定的な場合(図3/S016‥YES)、シナリオ制御部13により、当該選択された音声候補に基づいて機器が制御される(図3/S018)。たとえば、図5(a)または図5(b)において第1音声候補L1である「地図回転」がタッチ操作されると、ディスプレイ5に表示されているマップが一定角度回転された状態で表示されるようにナビゲーションシステム62の動作が制御される。また、図5(a)または図5(c)において第2音声候補L2である「ラーメン食いたい」がタッチ操作されると、ディスプレイ5に車両1の現在位置の周辺におけるラーメン店の所在位置がマップ上に表示され、あるいはラーメン店の所在地や電話番号のリスト等が表示されるようにナビゲーションシステム62の動作が制御される。一方、当該判定結果が否定的な場合(図3/S016‥NO)、音声候補に基づく機器61〜63の動作制御が実行されることなく一連の処理が終了する。
【0052】
なお、第1音声認識部による判定(図3/S006)が省略されてもよい。また、第1音声認識部による判定結果が否定的な場合(図3/S006‥NO)、または第2音声認識部による判定結果が否定的な場合(図3/S010‥NO)、第1音声候補L1に基づいてただちに機器が制御されてもよい。
【0053】
ここで、第1音声認識処理および第2音声認識処理の詳細について説明する。
【0054】
言語モデル112および固有名詞辞書114のデータが有効化され、音声認識部11により入力音声がテキストとして出力される「音声認識処理」が実行される。第1音声候補L1の認識に際して、言語モデル112および固有名詞辞書114のデータのうち、1次ドメイン群に分類されるデータが有効化される。同様に、第2音声候補L2の認識に際して、言語モデル112および固有名詞辞書114のデータのうち、2次ドメイン群に分類されるデータが有効化される。
【0055】
まず、マイク2への入力音声がA/D変換されることで得られる波形データが周波数分析され、特徴ベクトルが抽出される。これにより、波形データは短時間スペクトル分析等の手法によってフィルタ処理され、特徴ベクトルの時系列に変換される。特徴ベクトルは、各時刻における音声スペクトルの特微量を抽出したもので、一般に10次元〜100次元(たとえば39次元)であり、LPC(Linear Predictive Coding(線形予測分析))やメルケプストラム(Mel Cepstrum)係数等が用いられる。
【0056】
また、音響モデル111に格納された複数のHMMのそれぞれについて、当該特徴ベクトルの尤度(音響スコア)が評価される。さらに、当該複数のHMMのうち音響スコアが高いHMMに対応する発音データが特定される。これにより、たとえば「地図回転(chizukaiten)」という入力音声の波形データから、「chi−zu−kai−ten」という発音データおよび音響スコアが得られる。
【0057】
さらに、言語モデル112のうち先に有効化されたデータが用いられ、当該得られた発音データから単語列で表現されたテキストが当該テキストの言語スコアに基づいて特定される。具体的には、当該発音データと言語モデル112に格納されている発音データとが比較され、類似度が高い単語が抽出される。次に、抽出された単語の言語スコアが、ユニグラムで与えられる1単語の出現確率と、バイグラムで与えられる2単語の生起確率とに基づいて評価される。そして、発音データにおける各単語について、評価された言語スコアが所定値以上であること等の条件を満たすテキストが特定される。
【0058】
言語モデル112を用いたテキスト特定方法について、図6に示されているように「Set the station ninety nine point three FM.」という入力音声があった場合を例として説明する。まず、ユニグラムによって「Set」「the」等、入力音声に含まれる単語のそれぞれの出現確率a1〜a8が与えられる。また、バイグラムによって「Set the」「the station」等、入力音声に含まれる連続する2つの単語の列のそれぞれの生起確率b1〜b7が与えられる。そして、たとえば発音データ「ninety」から特定されたテキスト「ninety」の言語スコアが、単語「ninety」のユニグラムによる出現確率a4と、単語列「station ninety」のバイグラムによる生起確率b3とに基づいて評価される。また、発音データ「ninety」からテキスト「nearly」が特定された場合の言語スコアが、単語「nearly」のユニグラムによる出現確率a4’と、単語列「station nearly」のバイグラムによる生起確率b3’とに基づいて評価される。そして、当該評価された言語スコアに基づき、発音データに含まれる各単語のテキストが特定される。
【0059】
このように、単語毎の確率統計的な言語モデルを用いて入力音声をテキストとして書き起こす手法(ディクテーション)を用いることで、あらかじめ決められた言い回しの発話に限定されない、使用者の自然な発話の認識が可能となる。
【0060】
次に、固有名詞辞書114のうち有効化されたデータが用いられ、発音データからテキストが特定される。具体的には、特定された発音データと、固有名詞辞書114に登録された固有名詞の発音データとの類似度が評価または算出される。また、登録された複数の固有名詞のうち、類似度が所定度数以上である等の条件を満たす固有名詞が特定される。さらに、当該評価された類似度に基づき、特定された固有名詞の尤度(言語スコア)が評価される。
【0061】
このように固有名詞辞書114が用いられることにより、多様な言い回しがされ易い一般語に比べて、テキストコーパスにおける出現頻度が比較的低く、言い回しが限定されている固有名詞について、精度良くテキストが特定されうる。
【0062】
また、言語モデル112および固有名詞辞書114が用いられて特定されたすべてのテキストについて、音響スコアおよび言語スコアの重み付き和である音声認識の確信度(音声認識スコア)が評価または算出される。重み係数としては実験的または経験的に設定された値が用いられうる。
【0063】
さらに、音声認識スコアが所定値以上であること、音声認識スコアの順位が所定順位以上であること等、所定の条件を満たす単語列で表現されるテキストが、認識されたテキストとして特定され、かつ、出力される。
【0064】
続いて、構文解析部12により、前記の手順で音声認識部11により認識されたテキストに基づいて発話の意味が理解される「構文解析処理」が実行される。
【0065】
具体的には、認識されたテキストに基づき、構文モデル122が用いられて分類テキスト(Categorized Text)が特定される。1単語、2単語列、3単語列のそれぞれについて、各ドメインに対する尤度が評価される。そして、1単語、2単語列、3単語列のそれぞれについて、当該評価された尤度に基づいてドメインが特定される。なお、入力音声に含まれる単語数が3未満である場合、1単語および2単語列のそれぞれについて尤度が評価され、当該尤度に基づいてドメインが特定されればよい。
【0066】
また、1単語、2単語列、3単語列のそれぞれについて、構文モデル122のうち、特定されたドメインの種類に分類された部分のデータが用いられて、各クラスの組に対する尤度が評価される。そして、1単語、2単語列、3単語列のそれぞれについて、評価された尤度に基づいてクラスの組が特定される。なお、入力音声に含まれる単語数が3未満である場合、1単語および2単語列のそれぞれについて尤度が評価され、当該尤度に基づいてクラスの組が特定されればよい。
【0067】
さらに、1単語、2単語列、3単語列で特定されたクラスの組とその尤度とに基づき、テキスト全体としての各クラスの組の尤度(構文解析スコア)が評価される。また、構文解析スコアに基づき、テキスト全体について、クラス分類されたテキストが特定される。
【0068】
構文モデル122が用いられた、クラス分類されたテキストの特定方法について、図7に示されているように認識されたテキストが「AC on the floor to deforest」である場合を例として説明する。
【0069】
このとき、構文モデル122のすべてのデータが用いられ、「AC」「on」等の単語のそれぞれについて、ユ二グラムにより各ドメインに対する尤度が評価または算出される。そして、当該評価された尤度に基づき、複数のドメインの中からたとえば尤度が最高のドメインが特定される。たとえば、単語「AC」についてはドメイン{climate}が特定される。
【0070】
さらに、各単語について、構文モデル122のうち、特定されたドメインの種類に分類された部分のデータが用いられて、各クラスの組に対する尤度が評価される。たとえば、単語「AC」についてはドメイン{climate}のデータを用いて尤度が評価され、{ACOnOff_On}の組が特定される。このとき、「AC」のクラス分類されたテキストが{climate_ACOnOff_On}とされた場合の尤度c1が評価される。「on」等のその他の単語についても同様にクラスの組とその尤度(1単語スコアリスト)c2〜c5が評価される。
【0071】
また「AC on」等の2つの単語の劣のそれぞれについて、バイグラムにより各ドメインに対する尤度がそれぞれ評価され、当該尤度に基づいてドメインが特定される。すなわち、クラスの組およびその尤度(2単語スコアリスト)d1〜d4が特定される。
【0072】
さらに「AC on floor」等の3つの単語の列のそれぞれについて、トリグラムにより各ドメインに対する尤度がそれぞれ評価され、当該尤度に基づいてドメインが特定される。すなわち、クラスの組およびその尤度(3単語スコアリスト)e1〜e3が特定される。
【0073】
そして、1単語、2単語列、3単語列で特定されたクラスの組と、その尤度c1〜c5、d1〜d4、e1〜e3とに基づいて、テキスト全体としての各クラスの組の尤度(構文解析スコア)が評価される。また、構文解析スコアに基づき、テキスト全体について、分類テキストが特定される。これにより、認識されたテキストに基づき{climate_Defrost_Front}、{Climate_Fan−Vent_Floor}等の分類テキストが特定される。
【0074】
さらに、固有名詞辞書124が用いられて、認識されたテキストから分類テキストが特定される。具体的には、認識されたテキストに含まれる単語のそれぞれについて、単語のテキストと、固有名詞辞書124に登録された各固有名詞のテキストとの類似度が評価され、当該登録固有名詞のうち類似度が所定値以上である等の条件を満たす固有名詞がテキストに含まれている単語として特定される。また、固有名詞に付されたタグの内容に基づき、分類テキストが特定される。また、当該類似度に基づき、当該分類テキストの尤度(構文解析スコア)が評価される。
【0075】
また、評価された構文解析スコアが所定値以上であること、構文解析スコアの順位が所定順位以上であること等の条件を満たすような分類テキストが、入力された発話の認識結果として特定され、その認識結果の確信度(構文解析スコア)とともに出力される。これにより、たとえば、上述のように入力音声「AC on floor to deforest」の認識結果として、{Climate_Defrost_Front}が、その認識結果の確信度(構文解析スコア)とともに出力される。
【0076】
さらに、シナリオ制御部13により、構文解析部12による発話の認識結果と、車両状態検出部3により検出された車両1の状態(車両1の走行状態、車両1の搭載機器の作動状態、車両1の使用者の心身状態等)とに基づき、かつ、シナリオデータベース132が用いられ、使用者への応答や機器の制御を行うためのシナリオが特定される。
【0077】
前記機能を発揮する音声応答システム10によれば、マイク(音声入力手段)2への入力音声に基づき、異なる第1ドメインおよび第2ドメインのそれぞれに属する第1音声候補L1および第2音声候補L2が認識され、かつ、出力される(図3/S012、図5(a)〜(c)参照)。これにより、当該使用者の発話から乖離したカテゴリに属する複数の音声候補が偏重的に出力される事態が回避されうる。また、出力される第1音声候補L1および第2音声候補L2に使用者の発話に該当する音声候補を高い確率で含ませることができる。そして、当該複数の音声候補の中から使用者により選択された、当該使用者の発話に合致した1つの音声候補が高い確率で認識され、使用者の意図に沿った形での応答が可能となる(図3/S018参照)。すなわち、使用者の発話に合致する蓋然性の高い音声候補が特定のカテゴリに偏重することなく認識され、使用者による当該音声候補の選択結果に応答することが可能となる。
【0078】
また、第2音声候補L2のスコア(尤度)sc(L2)が第2閾値θ2以上であることを要件として当該第2音声候補L2が出力される(図3/S010,S012参照)。これにより、入力音声に該当する可能性が著しく低い音声候補までもが出力される事態が回避される。
【0079】
また、第2音声候補L2のスコア(尤度)sc(L2)が第2閾値θ2未満である場合、第1音声候補L1にのみ基づいて機器61〜63が制御されうる(図3/S010,S014参照)。これにより、ユーザの発話に該当する可能性が極めて低い音声候補にしたがって機器61〜63が制御される事態が確実に回避されうる。
【図面の簡単な説明】
【0080】
【図1】本発明の音声応答システムの構成説明図
【図2】言語モデル、構文モデル、固有名詞辞書の構成説明図
【図3】音声応答システムの機能説明図
【図4】音声応答システムの機能説明図
【図5】音声応答システムの機能説明図
【図6】言語モデルを用いた音声認識処理に関する説明図
【図7】構文モデルを用いた構文解析処理に関する説明図
【符号の説明】
【0081】
1‥音声応答ユニット、2‥マイク、3‥車両状態検出部、4‥スピーカ、5‥ディスプレイ、61〜63‥機器、10‥車両、11‥音声認識部、12‥構文解析部、13‥シナリオ制御部、14‥音声合成部、111‥音響モデル、112‥言語モデル、114‥固有名詞辞書、122‥構文モデル、124‥固有名詞辞書、132‥シナリオデータベース、142‥音素モデル

【特許請求の範囲】
【請求項1】
音声入力手段に入力された音声に基づき、1次ドメイン群に含まれる第1ドメインに属する音声候補を第1音声候補として認識する第1音声認識部と、
該音声入力手段に入力された該音声に基づき、該第1ドメインを含まない2次ドメイン群に含まれる第2ドメインに属する音声候補を第2音声候補として認識する第2音声認識部と、
該第1音声認識部により認識された第1音声候補と、該第2音声認識部により認識された第2音声候補とを出力する出力部と、
該出力部により出力された該第1音声候補および該第2音声候補のうち使用者により選択された音声候補を認識する確認部とを備えていることを特徴とする音声応答システム。
【請求項2】
請求項1記載の音声応答システムにおいて、
前記第2音声認識部が前記第2音声候補のスコアを評価し、
前記出力部が、該第2音声認識部により評価されたスコアが所定のスコア以上であることを要件として該第2音声候補を出力することを特徴とする音声応答システム。
【請求項3】
請求項1記載の音声応答システムにおいて、
前記確認部により認識された音声候補に基づき、機器の動作を制御する機器制御部とをさらに備えていることを特徴とする音声応答システム。
【請求項4】
請求項3記載の音声応答システムにおいて、
前記第2音声認識部が前記第2音声候補のスコアを評価し、
前記機器制御部が、該第2音声認識部により評価されたスコアが所定のスコア未満である場合、前記第1音声候補に基づいて前記機器の動作を制御することを特徴とする音声応答システム。
【請求項5】
音声入力手段に入力された音声に基づき、1次ドメイン群に含まれる第1ドメインに属する音声候補を第1音声候補として認識する第1音声認識機能と、
該音声入力手段に入力された該音声に基づき、該第1ドメインを含まない2次ドメイン群に含まれる第2ドメインに属する音声候補を第2音声候補として認識する第2音声認識機能と、
該第1音声認識機能により認識された第1音声候補と、該第2音声認識機能により認識された第2音声候補とを該使用者に知らせる出力機能と、
該出力機能により出力された該第1音声候補および該第2音声候補のうち使用者により選択された音声候補を認識する確認機能とをコンピュータに付与することを特徴とする音声応答プログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2008−58813(P2008−58813A)
【公開日】平成20年3月13日(2008.3.13)
【国際特許分類】
【出願番号】特願2006−237980(P2006−237980)
【出願日】平成18年9月1日(2006.9.1)
【出願人】(000005326)本田技研工業株式会社 (23,863)
【Fターム(参考)】