(57)【要約】【課題】使用者の発話が曖昧な場合にも、使用者の発話を精度良く認識することができる音声認識装置、音声認識方法、及び音声認識プログラムを提供する。【解決手段】音声認識装置１は、入力された音声についての認識結果に基づいて制御対象の制御内容を決定する。制御内容を表すタスクの種類を所定の決定入力に基づいて決定するタスク種類決定手段２３と、タスク種類決定手段２３により決定された種類のタスクを認識対象として、入力された音声を認識する音声認識手段１１とを備える。【選択図】図１
2008064885.tif 000002
【特許請求の範囲】
【請求項１】
入力された音声についての認識結果に基づいて制御対象の制御内容を決定する音声認識装置において、
前記制御内容を表すタスクの種類を所定の決定入力に基づいて決定するタスク種類決定手段と、
前記タスク種類決定手段により決定された種類のタスクを認識対象として、入力された音声を認識する音声認識手段とを備えることを特徴とする音声認識装置。
【請求項２】
請求項１記載の音声認識装置において、
前記所定の決定入力は、逐次入力される音声について前記音声認識手段での前回の認識結果に含まれるタスクを示すデータであることを特徴とする音声認識装置。
【請求項３】
請求項１又は２記載の音声認識装置において、
前記制御対象を表すドメインの種類を所定の決定入力に基づいて決定するドメイン種類決定手段を備え、
前記音声認識手段は、前記タスク種類決定手段により決定された種類のタスクに加えて、前記ドメイン種類決定手段により決定された種類のドメインを認識対象として、入力された音声を認識することを特徴とする音声認識装置。
【請求項４】
請求項１又は２記載の音声認識装置において、
前記音声認識手段により入力された音声を認識する際に用いる、少なくとも前記タスクの種類毎に分類された音声認識用データを備え、
前記音声認識手段は、前記音声認識用データのうち、少なくとも前記タスク種類決定手段により決定された種類のタスクに分類されたデータに基づいて、入力された音声を認識することを特徴とする音声認識装置。
【請求項５】
請求項３記載の音声認識装置において、
前記音声認識手段により入力された音声を認識する際に用いる、前記タスク及びドメインの種類毎に分類された音声認識用データを備え、
前記音声認識手段は、前記音声認識用データのうちの、前記タスク決定手段により決定された種類のタスクで、且つ前記ドメイン決定手段により決定された種類のドメインに分類されたデータに基づいて、入力された音声を認識することを特徴とする音声認識装置。
【請求項６】
請求項４又は５記載の音声認識装置において、
前記音声認識用データは、少なくとも認識対象である単語についての確率をデータとして有する言語モデルを含むことを特徴とする音声認識装置。
【請求項７】
請求項１〜６のいずれか記載の音声認識装置において、
少なくとも前記音声認識手段の認識結果に基づいて制御対象の制御内容を決定し、所定の制御処理を実行する制御手段を備えることを特徴とする音声認識装置。
【請求項８】
請求項７記載の音声認識装置において、
前記音声を入力する使用者への応答を出力する応答出力手段を備え、前記制御手段の実行する制御処理は、音声の入力を該使用者に促すように該使用者への応答を制御する処理を含むことを特徴とする音声認識装置。
【請求項９】
入力された音声についての認識結果に基づいて制御対象の制御内容を決定する音声認識方法であって、
前記制御内容を表すタスクの種類を所定の決定入力に基づいて決定するタスク種類決定ステップと、
前記タスク種類決定ステップで決定された種類のタスクを認識対象として、入力された音声を認識する音声認識ステップとを備えたことを特徴とする音声認識方法。
【請求項１０】
入力された音声についての認識結果に基づいて制御対象の制御内容を決定する処理をコンピュータに実行させる音声認識プログラムであって、
前記制御内容であるタスクの種類を所定の決定入力に基づいて決定するタスク種類決定処理と、
前記タスク種類決定処理で決定された種類のタスクを認識対象として、入力された音声を認識する音声認識処理とを前記コンピュータに実行させる機能を有することを特徴とする音声認識プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、使用者により入力される音声を認識し、認識した結果に基づいて対象を制御するための情報を取得する音声認識装置、音声認識方法、及び音声認識プログラムに関する。
【背景技術】
【０００２】
近年、例えば、使用者が機器の操作等を行うシステムにおいて、使用者により入力される音声を認識して、機器の操作等に必要な情報（コマンド）を取得する音声認識装置が用いられている。このような音声認識装置では、使用者により入力される音声（発話）を認識し、認識した結果に基づいて使用者に応答して使用者の次の発話を促すことで、使用者との対話が行われる。そして、使用者との対話を認識した結果から、機器の操作等を行うために必要な情報が取得される。このとき、例えば、認識対象であるコマンドが予め登録された音声認識辞書を用いて、入力された発話の特徴量と音声認識辞書に登録されたコマンドの特徴量とを比較することにより発話が認識される。
【０００３】
この音声認識装置は、例えば車両に装備されて、車両に搭載されたオーディオ、ナビゲーションシステム、エアコンディショナ等の複数の機器が使用者により操作される。さらに、これらの機器は高機能化しており、例えば、ナビゲーションシステムには、地図表示やＰＯＩ（Point of Interest）検索等の複数の機能が備えられ、これらの機能が使用者により操作される。しかし、このように多数の操作対象があると、これらを操作するためのコマンドの数が多くなる。そして、認識対象であるコマンドが多くなると、例えばコマンド間で特徴量が類似する場合が増加し、誤認識の可能性が高くなる。このため、使用者の発話の遷移状態（例えば使用者と装置との対話の履歴）に応じて、対話中の操作対象（例えばナビゲーションシステムにインストールされたアプリケーション）に限定したコマンドのみを認識対象として音声認識処理を行うことにより、コマンドの数を減らして認識精度を向上する技術が提案されている（例えば、特許文献１参照）。
【０００４】
この特許文献１の音声認識装置（対話型端末装置）では、認識対象であるコマンドとして、使用者が対話中のアプリケーションを操作するためのローカルコマンドと、対話中のアプリケーション以外の他のアプリケーションを操作するためのグローバルコマンドとを備える。そして、入力された発話がローカルコマンドであるか否かを判定し、ローカルコマンドであると判定した場合は、ローカルコマンドとして音声認識処理を行い、ローカルコマンドでないと判定した場合には、グローバルコマンドとして音声認識処理を行う。これにより、使用者が対話中のアプリケーションを操作する際の認識精度を向上すると共に、対話中に他のアプリケーションを操作しようとした場合に、例えば対話中のアプリケーションを終了してメニューに戻ってから他のアプリケーションを選択するといった冗長な操作を行わずに、他のアプリケーションとの対話に直接移行する。
【特許文献１】特開２００４−２３４２７３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記音声認識装置では、例えば、使用者の発話からアプリケーションが特定されなければ、認識対象であるコマンドを限定することができず、認識精度を向上することができない。よって、使用者の発話が曖昧な場合に、アプリケーションが特定されずに誤認識が生じると、例えば何度も使用者に発話の再入力を促すこととなる。また、上記音声認識装置で、例えばグローバルコマンドとローカルコマンドが類似していた場合に、使用者の発話が曖昧で、入力したグローバルコマンドがローカルコマンドと誤認識される可能性がある。この場合、対話中のアプリケーションから他のアプリケーションとの対話に移行することができず、使い勝手が良くないという不都合がある。
【０００６】
本発明は、上記事情に鑑み、使用者の発話が曖昧な場合にも、使用者の発話を精度良く認識することができる音声認識装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の音声認識装置は、入力された音声についての認識結果に基づいて制御対象の制御内容を決定する音声認識装置において、制御内容を表すタスクの種類を所定の決定入力に基づいて決定するタスク種類決定手段と、タスク種類決定手段により決定された種類のタスクを判断対象として、入力された音声を認識する音声認識手段とを備えることを特徴とする。
【０００８】
本発明の音声認識装置では、例えば使用者から対象を制御するための発話が音声入力されて、当該音声が音声認識手段により認識されることにより、対象を制御するための情報が取得される。このとき、対象を制御するための情報は、制御対象を表すドメインと制御内容を表すタスクとに大別される。
【０００９】
「ドメイン」とは、使用者が発話により「何を」対象として制御するかを示す情報である。詳細には、ドメインは、使用者が発話により制御する対象である機器や機能を表す。例えば、車両における「ナビゲーションシステム」「オーディオ」「エアコンディショナ」といった機器や、ナビゲーションシステムの「画面表示」「ＰＯＩ検索」等のコンテンツや、オーディオの「ラジオ」「ＣＤ」等のデバイスである。例えば、ナビゲーションシステムにインストールされたアプリケーション等もドメインに含まれる。また、「タスク」とは、使用者が発話により対象を「どのように」制御するかを示す情報である。詳細には、タスクは、「設定変更」「上げる」「下げる」といった動作を表す。タスクには、複数の機器や機能に共通して行われる可能性のある一般的な動作が含まれる。
【００１０】
このとき、例えば使用者の発話が曖昧である場合に、何を制御するかは特定されないが、少なくともどのように制御するかは特定される状況が想定される。これに対し、本発明によれば、タスク種類決定手段により所定の決定入力に基づいて制御内容を表すタスクが決定されると、決定された種類のタスクに認識対象を限定した音声認識処理が行われる。これにより、何を制御するかが特定されていなくても、どのように制御するかという指標で認識対象を限定して音声認識処理を行うことが可能なので、曖昧な発話に対しても認識精度を向上することができる。
【００１１】
また、本発明の音声認識装置において、制御対象を表すドメインの種類を所定の決定入力に基づいて決定するドメイン種類決定手段を備え、音声認識手段は、タスク種類決定手段により決定された種類のタスクに加えて、ドメイン種類決定手段により決定された種類のドメインを認識対象として、入力された音声を認識することが好ましい。
【００１２】
この場合、制御内容を表すタスクに加えて、制御対象を表すドメインが決定された場合には、決定された種類のタスクとドメインの両方に認識対象を限定して音声認識処理が行われる。これにより、認識対象を効率良く限定して音声認識処理を行うことが可能なので、認識精度をより向上することができる。
【００１３】
また、本発明の音声認識装置において、所定の決定入力は、逐次入力される音声について音声認識手段での前回の認識結果に含まれるタスクを示すデータであることが好ましい。この場合、使用者からの前回の発話に基づいてタスクの種類が決定されるので、使用者との対話において、認識対象を効率良く限定して音声認識処理を行うことができる。なお、所定の決定入力として、タッチパネル、キーボード、或いはボタンやダイヤル等を備えた入力インタフェース等への入力に含まれるタスクを示すデータを用いてもよい。さらに、ドメインの種類を決定する際の決定入力についても、タスクと同様に、前回の認識結果や入力インタフェース等への入力に含まれるドメインを示すデータを用いることができる。
【００１４】
また、本発明の音声認識装置において、音声認識手段により入力された音声を認識する際に用いる、少なくともタスクの種類毎に分類された音声認識用データを備え、音声認識手段は、音声認識用データのうち、少なくともタスク種類決定手段により決定された種類のタスクに分類されたデータに基づいて、入力された音声を認識することが好ましい。
【００１５】
この場合、制御内容を表すタスクが決定されると、決定された種類のタスクに認識対象を限定した音声認識処理として、音声認識用データのうちの決定された種類のタスクに分類された音声認識用データを用いて音声を認識する処理が行われる。これにより、何を制御するかが特定されていなくても、どのように制御するかという指標で認識対象を限定して音声認識処理を行うことが可能なので、曖昧な発話に対しても認識精度を向上することができる。
【００１６】
また、本発明の音声認識装置において、音声認識手段により入力された音声を認識する際に用いる、タスク及びドメインの種類毎に分類された音声認識用データを備え、音声認識手段は、音声認識用データのうちの、タスク決定手段により決定された種類のタスクで、且つドメイン決定手段により決定された種類のドメインに分類されたデータに基づいて、入力された音声を認識することが好ましい。
【００１７】
この場合、制御内容を表すタスクに加えて制御対象を表すドメインが決定されると、決定されたタスクの種類とドメインの種類の両方に認識対象を限定した音声認識処理として、決定された種類のタスクと決定された種類のドメインとの両方に分類された音声認識用データを用いて音声を認識する処理が行われる。これにより、認識対象を効率良く限定して音声認識処理を行うことが可能なので、認識精度をより向上することができる。
【００１８】
また、本発明の音声認識装置において、音声認識用データは、少なくとも認識対象である単語についての確率をデータとして有する言語モデルを含むことが好ましい。
【００１９】
ここで、「言語モデル」とは、認識対象である単語の言語的な特徴を表す、単語列の出現確率等に基づいた統計的言語モデルを意味する。この言語モデルを用いた音声認識では、例えば予め登録されたコマンドだけでなく、言い回しが限定されない使用者の自然な発話も受け付けることができる。このような言い回しが限定されない曖昧な発話では、ドメインの種類が決定されずタスクの種類のみが決定される状況が生じる可能性が高い。よって、タスクの種類だけでも決定された場合に、この種類のタスクに言語モデルのデータを限定して音声認識処理を行うことで、認識精度の向上の効果を顕著に得ることができる。
【００２０】
また、本発明の音声認識装置において、少なくとも音声認識手段の認識結果に基づいて制御対象の制御内容を決定し、所定の制御処理を実行する制御手段を備えることが好ましい。
【００２１】
この場合、制御手段により、音声認識手段の認識結果に応じて、例えば予め定められた複数の制御処理（シナリオ）のうちから所定の制御処理が決定されて実行される。所定の制御処理は、例えば、制御対象である機器や機能を、発話から取得された情報に基づいて制御する処理や、使用者への音声や画面表示による応答を制御する処理等である。このとき、本発明によれば、使用者の曖昧な発話に対しても認識精度が向上されているので、所定の制御処理を使用者の意図に応じて適切に決定して実行することができる。
【００２２】
なお、制御手段は、発話の認識結果と共に、音声認識装置が搭載されたシステム（例えば車両等）の状態や使用者の状態、或いは制御対象である機器や機能の状態等を考慮して、所定の制御処理を決定して実行することも可能である。また、使用者の対話履歴や、機器の状態変化等を記憶する記憶手段を備え、制御手段は、発話の認識結果と共にこの対話履歴や状態変化等を考慮して、所定の制御処理を決定することも可能である。
【００２３】
また、本発明の音声認識装置において、音声を入力する使用者への応答を出力する応答出力手段を備え、制御手段の実行する制御処理は、音声の入力を使用者に促すように該使用者への応答を制御する処理を含むことが好ましい。
【００２４】
この場合、例えば、使用者から入力された発話から対象を制御するための情報が十分に取得されない場合には、制御手段は、必要な情報の入力を使用者に促すように、応答出力手段から出力する応答を制御する。これにより、使用者との対話が行われ、この使用者との対話を認識した結果から、対象を制御するために必要な情報が取得される。このとき、本発明によれば、使用者の曖昧な発話に対しても認識精度が向上されているので、効率の良い対話を介して情報を取得することができる。
【００２５】
次に、本発明の音声認識方法は、入力された音声についての認識結果に基づいて制御対象の制御内容を決定する音声認識方法であって、制御内容を表すタスクの種類を所定の決定入力に基づいて決定するタスク種類決定ステップと、タスク種類決定ステップで決定された種類のタスクを認識対象として、入力された音声を認識する音声認識ステップとを備えたことを特徴とする。
【００２６】
本発明の音声認識方法によれば、本発明の音声認識装置に関して説明したように、何を制御するかが特定されていなくとも、少なくともどのように制御するかが特定されれば、認識対象を限定して音声認識処理を行うことができる。よって、この音声認識方法によれば、使用者の曖昧な発話に対しても、音声認識の認識精度を向上することができる。
【００２７】
次に、本発明の音声認識プログラムは、入力された音声についての認識結果に基づいて制御対象の制御内容を決定する処理をコンピュータに実行させる音声認識プログラムであって、制御内容であるタスクの種類を所定の決定入力に基づいて決定するタスク種類決定処理と、タスク種類決定処理で決定された種類のタスクを認識対象として、入力された音声を認識する音声認識処理とをコンピュータに実行させる機能を有することを特徴とする。
【００２８】
この場合、本発明の音声認識装置に関して説明した効果を奏し得る処理をコンピュータに実行させることができる。
【発明を実施するための最良の形態】
【００２９】
図１に示すように、本発明の実施形態の音声認識装置は音声対話ユニット１から成り、車両１０に搭載されている。この音声対話ユニット１には、車両１０の運転者から発話が入力されるマイク２が接続されると共に、車両１０の状態を検出する車両状態検出部３が接続されている。また、音声対話ユニット１には、運転者への応答を出力するスピーカ４と、運転者への表示を行うディスプレイ５とが接続されている。さらに、音声対話ユニット１には、運転者が音声等で操作可能な複数の機器６ａ〜６ｃが接続されている。
【００３０】
マイク２は、車両１０の運転者の音声が入力されるものであり、車内の所定位置に設置されている。マイク２は、例えば、トークスイッチにより音声の入力開始が指令されると、入力される音声を運転者の発話として取得する。トークスイッチは、車両１０の運転者により操作されるＯＮ・ＯＦＦスイッチであり、押下してＯＮ操作されることによって音声の入力開始が指令される。
【００３１】
車両状態検出部３は、車両１０の状態を検出するセンサ等である。車両１０の状態とは、例えば、車両１０の速度や加減速等の走行状態、車両１０の位置や走行道路等の走行環境情報、車両１０に装備された機器（ワイパー、ウィンカー、ナビゲーションシステム６ａ、オーディオ６ｂ等）の動作状態、或いは車両１０の車内温度等の車内の状態をいう。具体的には、例えば、車両１０の走行状態を検出するセンサとして、車両１０の走行速度（車速）を検出する車速センサ、車両１０のヨーレートを検出するヨーレートセンサ、車両１０のブレーキ操作（ブレーキペダルが操作されているか否か）を検出するブレーキセンサ等が挙げられる。さらに、車両１０の状態として、車両１０の運転者の状態（運転者の手掌部の発汗、運転負荷等）を検出してもよい。
【００３２】
スピーカ４は、車両１０の運転者への応答（音声ガイド）を出力するものである。なお、このスピーカ４としては、後述のオーディオ６ａが有するスピーカを用いることができる。
【００３３】
ディスプレイ５は、例えば、車両１０のフロントウィンドウに画像等の情報を表示するＨＵＤ（ヘッドアップディスプレイ）、車両１０の車速などの走行状態を表示するメータに一体的に設けられたディスプレイ、或いは後述のナビゲーションシステム６ｂに備えられたディスプレイ等である。なお、ナビゲーションシステム６ｂのディスプレイは、タッチスイッチが組み込まれたタッチパネルとなっている。
【００３４】
機器６ａ〜６ｃは、具体的には、車両１０に装備されたオーディオ６ａ、ナビゲーションシステム６ｂ、エアコンディショナ６ｃである。各機器６ａ〜６ｃには、制御可能な構成要素（デバイス，コンテンツ等）、機能、動作等が予め定められている。
【００３５】
例えば、オーディオ６ａには、デバイスとして「ＣＤ」「ＭＰ３」「ラジオ」「スピーカ」等がある。また、オーディオ６ａの機能として「音量」等がある。また、オーディオ６ａの動作として「変更」「オン」「オフ」等がある。さらに、「ＣＤ」「ＭＰ３」の動作として、「再生」「停止」等がある。また、「ラジオ」の機能として「選局」等がある。また、「音量」の動作として「上げる」「下げる」等がある。
【００３６】
また、例えば、ナビゲーションシステム６ｂには、コンテンツとして「画面表示」「経路誘導」「ＰＯＩ検索」等がある。さらに、「画面表示」の動作として「変更」「拡大」「縮小」等がある。なお、「経路誘導」は音声ガイド等により目的地へ誘導する機能であり、「ＰＯＩ検索」は、例えばレストラン、ホテル等の目的地を検索する機能である。
【００３７】
また、例えば、エアコンディショナ６ｃには、その機能として「風量」「設定温度」等がある。また、エアコンディショナ６ｃの動作として「オン」「オフ」等がある。さらに、「風量」「設定温度」の動作として「変更」「上げる」「下げる」等がある。
【００３８】
これらの機器６ａ〜６ｃは、対象を制御するための情報（機器や機能の種別、動作の内容等）を指定することにより制御される。対象を制御するための情報とは、「何を」「どのように」制御するかを示す情報であり、制御対象を表すドメイン（「何を」対象として制御するかを示す情報）と、制御内容を表すタスク（対象を「どのように」制御するかを示す情報）とに大別される。ドメインは、機器６ａ〜６ｃの種別や、各機器６ａ〜６ｃのデバイス、コンテンツ、機能の種別に相当する。また、タスクは、機器６ａ〜６ｃの動作の内容に相当し、例えば「変更」「上げる」「下げる」等の動作のように、複数のドメインに共通して行われるものが含まれる。なお、ドメインとタスクとは、それぞれ、例えば「オーディオ」のドメインが、その下位で「ＣＤ」「ラジオ」のドメインに分類されるといったように、階層的に指定することができる。
【００３９】
音声対話ユニット１は、詳細の図示は省略するが、Ａ／Ｄ変換回路、マイクロコンピュータ（ＣＰＵ、ＲＡＭ、ＲＯＭ）等を含む電子回路により構成され、マイク２の出力（アナログ信号）がＡ／Ｄ変換回路を介してデジタル信号に変換されて入力される。そして、音声対話ユニット１は、入力されたデータに基づいて、運転者から入力された発話を認識する処理や、その認識結果に基づいて、スピーカ４やディスプレイ５を介して運転者との対話や運転者への情報提示を行う処理や、機器６ａ〜６ｃを制御する処理等を実行する。これらの処理は、音声対話ユニット１のメモリに予め実装されたプログラムを音声対話ユニット１により実行することにより実現される。このプログラムは、本発明の音声認識プログラムを含んでいる。なお、当該プログラムはＣＤ−ＲＯＭ等の記録媒体を介してメモリに格納されてもよく、外部のサーバからネットワークや人工衛星を介して配信または放送され、車両１０に搭載された通信機器により受信された上でメモリに格納されてもよい。
【００４０】
より詳しくは、音声対話ユニット１は、上記プログラムにより実現される機能として、入力された音声を音響モデル１５と言語モデル１６とを用いて認識してテキストとして出力する音声認識部１１と、認識されたテキストから構文モデル１７を用いて発話の意味を理解する構文解析部１２とを備えている。また、音声対話ユニット１は、発話の認識結果に基づいてシナリオデータベース１８を用いてシナリオを決定し、運転者への応答や機器の制御等を行うシナリオ制御部１３と、運転者に出力する音声による応答を音素モデル２１を用いて合成する音声合成部１４とを備えている。さらに、シナリオ制御部１３は、発話の認識結果からドメインの種類を決定するドメイン種類決定手段２２と、発話の認識結果からタスクの種類を決定するタスク種類決定手段２３とを備えている。
【００４１】
なお、音響モデル１５、言語モデル１６、構文モデル１７、シナリオデータベース１８、音素モデル１９、固有名詞辞書２０，２１は、それぞれ、データが記録されているＣＤ−ＲＯＭ、ＤＶＤ、ＨＤＤ等の記録媒体（データベース）である。
【００４２】
また、言語モデル１６及び固有名詞辞書２０が本発明の音声認識用データを構成する。また、音声認識部１１が本発明の音声認識手段を構成する。また、シナリオ制御部１３が本発明の制御手段を構成する。また、シナリオ制御部１３及び音声合成部１４が本発明の応答出力手段を構成する。
【００４３】
音声認識部１１は、マイク２に入力された発話の音声を示す波形データを周波数分析して特徴ベクトルを抽出する。そして、音声認識部１１は、抽出された特徴ベクトルに基づいて、入力された音声を認識して、単語列で表現されたテキストとして出力する「音声認識処理」を実行する。この音声認識処理は、次に説明するような確率統計的な手法を用いて、入力音声の音響的な特徴と言語的な特徴とを総合的に判断することにより実行される。
【００４４】
すなわち、音声認識部１１は、まず、音響モデル１５を用いて、抽出された特徴ベクトルに応じた発音データの尤度（以下、この尤度を適宜「音響スコア」という。）を評価し、当該音響スコアに基づいて発音データを決定する。また、音声認識部１１は、言語モデル１６と固有名詞辞書２０とを用いて、決定された発音データに応じた単語列で表現されたテキストの尤度（以下、この尤度を適宜「言語スコア」という。）を評価し、当該言語スコアに基づいてテキストを決定する。さらに、音声認識部１１は、決定された全てのテキストについて、当該テキストの音響スコアと言語スコアとに基づいて音声認識の確信度（以下、この確信度を適宜「音声認識スコア」という。）を算出する。そして、音声認識部１１は、この音声認識スコアが所定の条件を満たす単語列で表現されたテキストを、認識されたテキスト（Recognized Text）として出力する。
【００４５】
このとき、音声認識部１１は、ドメイン種類決定手段２２及びタスク種類決定手段２３によりドメインやタスクの種類が決定されている場合には、言語モデル１６及び固有名詞辞書２０のうち当該決定された種類のドメインやタスクに分類された部分（有効な部分）のデータのみを用いて音声認識処理を行う。
【００４６】
なお、「スコア」とは、認識結果の候補が音響的観点や言語的観点等のさまざまな観点から入力音声に該当するもっともらしさ（尤度、確信度）を表す指数を意味する。
【００４７】
構文解析部１２は、音声認識部１１で認識されたテキストから、構文モデル１７と固有名詞辞書２１とを用いて、入力された発話の意味を理解する「構文解析処理」を実行する。この構文解析処理は、次に説明するように確率統計的な手法を用いて、音声認識部１１で認識されたテキストにおける単語間の関係（構文）を解析することにより実行される。
【００４８】
すなわち、構文解析部１２は、認識されたテキストの尤度（以下、この尤度を適宜「構文解析スコア」という。）を評価し、当該構文解析スコアに基づいて、当該認識されたテキストの意味に対応するクラスに分類されたテキストを決定する。そして、構文解析部１２は、構文解析スコアが所定の条件を満たすクラス分類されたテキスト（Categorized Text）を、入力された発話の認識結果として構文解析スコアと共に出力する。「クラス」とは、認識対象のカテゴリに応じた分類に相当し、具体的には、上述のドメインやタスクに相当するものである。例えば、認識されたテキストが「設定変更」「設定変更する」「設定を変える」「セッティング変更」である場合には、いずれも、クラス分類されたテキストは｛setup｝となる。
【００４９】
シナリオ制御部１３は、少なくとも構文解析部１２から出力される認識結果と、車両状態検出部３から取得される車両１０の状態とに基づいて、シナリオデータベース１８に記録されたデータを用いて、運転者に対する応答出力や機器制御のシナリオを決定する。シナリオデータベース１８には、応答出力や機器制御のための複数のシナリオが、発話の認識結果や車両状態の条件と共に予め記録されている。そして、シナリオ制御部１３は、決定されたシナリオに従って、音声や画像表示による応答を制御する処理や、機器を制御する処理を実行する。具体的には、シナリオ制御部１３は、例えば、音声による応答では、出力する応答の内容（運転者の次の発話を促すための応答文や、操作の完了等を使用者に報知するための応答文）や、応答を出力する際の速度や音量を決定する。
【００５０】
音声合成部１４は、シナリオ制御部１３で決定された応答文に応じて、音素モデル１９を用いて音声を合成して、音声を示す波形データとして出力する。音声は、例えばＴＴＳ（Text to Speech）等の処理を用いて合成される。具体的には、音声合成部１４は、シナリオ制御部１３で決定された応答文のテキストを音声出力に適した表現に正規化し、この正規化したテキストの各単語を発音データに変換する。そして、音声合成部１４は、音素モデル１９を用いて発音データから特徴ベクトルを決定し、この特徴ベクトルにフィルタ処理を施して波形データに変換する。この波形データは、スピーカ４から音声として出力される。
【００５１】
音響モデル（Acoustic Model）１５には、特徴ベクトルと発音データとの確率的な対応を示すデータが記録されている。詳細には、音響モデル１５には、認識単位（音素、形態素、単語等）毎に用意された複数のＨＭＭ（Hidden Markov Model、隠れマルコフモデル）がデータとして記録されている。ＨＭＭは、音声を定常信号源（状態）の連結で表し、時系列をある状態から次の状態への遷移確率で表現する統計的信号源モデルである。ＨＭＭにより、時系列で変動する音声の音響的な特徴を簡易な確率モデルで表現することができる。ＨＭＭの遷移確率等のパラメータは、対応する学習用の音声データを与えて学習させることにより予め決定される。また、音素モデル１９にも、発音データから特徴ベクトルを決定するための、音響モデル１５と同様のＨＭＭが記録されている。
【００５２】
言語モデル（Language Model）１６には、認識対象である単語の出現確率や接続確率を示すデータが、この単語の発音データ及びテキストと共に記録されている。認識対象である単語とは、対象を制御するための発話で使用される可能性のある単語として予め定められるものである。単語の出現確率や接続確率等のデータは、大量の学習テキストコーパスを解析することにより統計的に作成される。また、単語の出現確率は、例えば、学習テキストコーパスにおけるその単語の出現頻度等に基づいて算出される。
【００５３】
この言語モデル１６には、例えば、特定のＮ個の単語が連続して出現する確率により表現されるＮグラム（N-gram）の言語モデルが用いられる。本実施形態では、言語モデル１６には、入力された発話に含まれる単語数に応じたＮグラムが用いられる。具体的には、言語モデル１６では、Ｎの値が発音データに含まれる単語数以下のＮグラムが用いられる。例えば発音データに含まれる単語数が２である場合、１単語の出現確率で表現されるユニグラム（Uni-gram，Ｎ＝１）、及び２つの単語の列の生起確率（先行する１単語についての条件付き出現確率）で表現されるバイグラム（Bi-gram，Ｎ＝２）が用いられる。
【００５４】
さらに、言語モデル１６では、Ｎの値を所定の上限値に制限してＮグラムを用いることもできる。所定の上限値としては、例えば、予め定められた所定値（例えばＮ＝２）や、入力された発話に対する音声認識処理の処理時間が所定時間以内になるように逐次設定される値等を用いることができる。例えばＮ＝２を上限値としてＮグラムを用いる場合、発音データに含まれる単語数が２より大きいときにも、ユニグラム及びバイグラムのみが用いられる。これにより、音声認識処理の演算コストが過大になることを防止して、運転者の発話に対して適切な応答時間で応答を出力することができる。
【００５５】
構文モデル（Parser Model）１７には、認識対象である単語の出現確率や接続確率を示すデータが、この単語のテキスト及びクラスと共に記録されている。この構文モデル１７には、例えば、言語モデル１６と同様にＮグラムの言語モデルが用いられる。本実施形態では、具体的には、構文モデル１７では、Ｎ＝３を上限値として、Ｎの値が認識されたテキストに含まれる単語数以下のＮグラムが用いられる。すなわち、構文モデル１７では、ユニグラム、バイグラム、及び３つの単語の列の生起確率（先行する２単語についての条件付き出現確率）で表現されるトライグラム（Tri-gram，Ｎ＝３）が用いられる。なお、上限値は３以外でもよく、任意に設定可能である。また、上限値に制限せずに、Ｎの値が認識されたテキストに含まれる単語数以下のＮグラムを用いるものとしてもよい。
【００５６】
固有名詞辞書２０，２１には、人名、地名、ラジオの放送局の周波数等の、認識対象となる単語のうちの固有名詞の発音データ及びテキストが登録されている。これらのデータは、図２に示すように、＜Radio Station＞＜ＡＭ＞といったタグが付けられて記録されている。このタグの内容が固有名詞辞書２０，２１に登録された各固有名詞のクラスを示す。
【００５７】
図２に示すように、言語モデル１６と構文モデル１７とは、それぞれ、ドメインの種類毎に分類されて作成されている。図２の例では、ドメインの種類は、｛Audio，Climate，Passenger Climate，POI，Ambiguous，Navigation，Clock，Help｝の８種類である。｛Audio｝は制御対象がオーディオ６ａであることを示している。｛Climate｝は制御対象がエアコンディショナ６ｃであることを示している。｛Passenger Climate｝は制御対象が助手席のエアコンディショナ６ｃであることを示している。｛POI｝は制御対象がナビゲーションシステム６ｂのＰＯＩ検索機能であることを示している。｛Navigation｝は制御対象がナビゲーションシステム６ｂの経路誘導や地図操作等の機能であることを示している。｛Clock｝は制御対象が時計機能であることを示している。｛Help｝は制御対象が機器６ａ〜６ｃや音声認識装置の操作方法を知るためのヘルプ機能であることを示している。また、｛Ambiguous｝は、制御対象が不明であることを示している。
【００５８】
また、図３に示すように、言語モデル１６は、さらにタスクの種類毎に分類されて作成されている。図３の例では、ドメインが上記の８種類であり、タスクが｛Do，Ask，Set，Setup｝の４種類である。図３（ａ）に示すように、例えば、ドメインの種類が｛Audio｝である単語は、タスクの種類が｛Do｝｛Ask｝｛Set｝｛Setup｝のいずれかである。また、例えば、ドメインの種類が｛Help｝である単語は、タスクの種類が｛Ask｝のみで、｛Do｝｛Set｝｛Setup｝のものは存在しない。図３（ｂ）には、横軸をタスクの種類、縦軸をドメインの種類として、単語が存在する組合せを○で示している。このように、言語モデル１６は、ドメインとタスクとを指標としてマトリックス状に分類されている。なお、固有名詞辞書２０も、言語モデル１６と同様に、ドメインとタスクとを指標としてマトリックス状に分類されている。
【００５９】
次に、本実施形態の音声認識装置の作動（音声対話処理）について説明する。図４に示すように、まず、ＳＴＥＰ１で、車両１０の運転者から、対象を制御するための発話がマイク２に入力される。具体的には、運転者がトークスイッチをＯＮ操作して発話の入力開始を指令し、マイク２に音声を入力する。
【００６０】
次に、ＳＴＥＰ２で、音声対話ユニット１は、言語モデル１６、固有名詞辞書２０のデータを選択的に有効にする。具体的には、音声対話ユニット１は、前回の発話の認識結果から、入力された発話のドメインの種類を決定する処理と、入力された発話のタスクの種類を決定する処理とを実行する。なお、最初の発話なので、ドメイン及びタスクの種類は決定されず、言語モデル１６、固有名詞辞書２０全体のデータが有効とされる。
【００６１】
次に、ＳＴＥＰ３で、音声対話ユニット１は、入力された音声を認識してテキストとして出力する音声認識処理を実行する。
【００６２】
まず、音声対話ユニット１は、マイク２に入力された音声をＡ／Ｄ変換して音声を示す波形データを取得する。次に、音声対話ユニット１は、音声を示す波形データを周波数分析して特徴ベクトルを抽出する。これにより、音声を示す波形データは、例えば短時間スペクトル分析の手法によってフィルタ処理を施され、特徴ベクトルの時系列に変換される。この特徴ベクトルは、各時刻における音声スペクトルの特微量を抽出したもので、一般に１０次元〜１００次元（例えば３９次元）であり、ＬＰＣメルケプストラム（Linear Predictive Coding（線形予測分析） Mel Cepstrum）係数等が用いられる。
【００６３】
次に、音声対話ユニット１は、抽出された特徴ベクトルに対し、音響モデル１５に記録された複数のＨＭＭのそれぞれについて、当該特徴ベクトルの尤度（音響スコア）を評価する。そして、音声対話ユニット１は、当該複数のＨＭＭのうちの音響スコアの高いＨＭＭに対応する発音データを決定する。これにより、例えば「千歳」という発話が入力された場合、その音声の波形データから、「ti-to-se」という発音データがその音響スコアと共に得られる。このとき、例えば「マークセット」という発話が入力された場合、「ma-a-ku-se-t-to」という発音データと共に、「ma-a-ku-ri-su-to」のような音響的に類似の度合が高い発音データがそれぞれ音響スコアと共に得られる。
【００６４】
次に、音声対話ユニット１は、決定された発音データから、単語列で表現されたテキストを当該テキストの言語スコアに基づいて決定する。このとき、複数の発音データが決定されている場合には、各発音データについて、それぞれテキストが決定される。
【００６５】
まず、音声対話ユニット１は、言語モデル１６のうちのＳＴＥＰ２で有効にされたデータを用いて、発音データからテキストを決定する。具体的には、まず、音声対話ユニット１は、決定された発音データと言語モデル１６に記録された発音データとを比較して、類似の度合の高い単語を抽出する。次に、音声対話ユニット１は、抽出された単語の言語スコアを、発音データに含まれる単語数に応じたＮグラムを用いて算出する。そして、音声対話ユニット１は、発音データにおける各単語について、算出した言語スコアが所定の条件（例えば所定値以上）を満たすテキストを決定する。例えば、図５に示すように、入力された発話が「Set the station ninety nine point three FM.」である場合に、この発話から決定された発音データに応じたテキストとして、「set the station ninety nine point three FM」が決定される。
【００６６】
このとき、ユ二グラムでは、「set」「the」…「FM」のそれぞれの出現確率ａ１〜ａ８が与えられる。また、バイグラムでは、「set the」「the station」…「three FM」のそれぞれの２単語の生起確率ｂ１〜ｂ７が与えられる。同様に、Ｎ＝３〜８について、Ｎ単語の生起確率ｃ１〜ｃ６，ｄ１〜ｄ５，ｅ１〜ｅ４，ｆ１〜ｆ３，ｇ１〜ｇ２，ｈ１が与えられる。そして、例えばテキスト「ninety」の言語スコアは、発音データに含まれる単語「ninety」と当該単語に先行する単語とを合わせた単語数４に応じて、Ｎ＝１〜４のＮグラムから得られるａ４，ｂ３，ｃ２，ｄ１に基づいて算出される。
【００６７】
このように、入力された発話を、単語毎の確率統計的な言語モデルを用いてテキストとして書き起こす手法（ディクテーション）を用いることで、予め決められた言い回しの発話に限定されない、運転者の自然な発話の認識が可能となる。
【００６８】
次に、音声対話ユニット１は、固有名詞辞書２０のうちのＳＴＥＰ２で有効にされたデータを用いて、発音データからテキストを決定する。具体的には、まず、音声対話ユニット１は、決定された発音データと、固有名詞辞書２０に登録された固有名詞の発音データとの類似の度合を算出する。そして、登録された複数の固有名詞のうちの、類似の度合が所定の条件を満たす固有名詞を決定する。所定の条件は、例えば発音データが明らかに一致すると考えられる所定値以上等のように予め定められている。また、算出された類似の度合に基づいて、決定された固有名詞の尤度（言語スコア）を算出する。
【００６９】
このように、固有名詞辞書２０を用いることにより、多様な言い回しがされ易い一般語に比べて、テキストコーパスにおける出現頻度が比較的低く、言い回しが限定されている固有名詞について、精度良くテキストを決定することができる。
【００７０】
次に、音声対話ユニット１は、言語モデル１６と固有名詞辞書２０とを用いて決定された全てのテキストについて、音響スコアと言語スコアとの重み付き和を、音声認識の確信度（音声認識スコア）として算出する。なお、重み係数としては、例えば実験的に予め定められた値が用いられる。
【００７１】
次に、音声対話ユニット１は、算出した音声認識スコアが所定の条件を満たす単語列で表現されるテキストを、認識されたテキストとして決定して出力する。所定の条件は、例えば、音声認識スコアが最も高いテキスト、音声認識スコアが上位から所定順位までのテキスト、或いは音声認識スコアが所定値以上のテキスト等のように予め定められている。
【００７２】
次に、ＳＴＥＰ４で、音声対話ユニット１は、認識されたテキストから発話の意味を理解する構文解析処理を実行する。
【００７３】
まず、音声対話ユニット１は、構文モデル１７を用いて、認識されたテキストから、クラス分類されたテキストを決定する。具体的には、まず、音声対話ユニット１は、構文モデル１７全体のデータを用いて、認識されたテキストに含まれる単語について、それぞれ、１単語における各ドメインの尤度を算出する。次に、音声対話ユニット１は、当該尤度に基づいて１単語におけるドメインをそれぞれ決定する。次に、音声対話ユニット１は、構文モデル１７のうち決定された種類のドメインに分類された部分のデータを用いて、１単語における各クラスの組（クラス分類されたテキスト）の尤度（単語スコア）を算出する。そして、音声対話ユニット１は、当該単語スコアに基づいて、１単語におけるクラス分類されたテキストを決定する。
【００７４】
同様に、音声対話ユニット１は、認識されたテキストに含まれる２単語列について、それぞれ、２単語における各ドメインの尤度を算出し、当該尤度に基づいて２単語におけるドメインを決定する。さらに、音声対話ユニット１は、２単語における各クラスの組の尤度（２単語スコア）を算出し、当該２単語スコアに基づいて２単語におけるクラスの組（クラス分類されたテキスト）を決定する。また、同様に、音声対話ユニット１は、認識されたテキストに含まれる３単語列について、それぞれ、３単語における各ドメインの尤度を算出し、当該尤度に基づいて３単語におけるドメインを決定する。さらに、音声対話ユニット１は、３単語における各クラスの組の尤度（３単語スコア）を算出し、当該３単語スコアに基づいて３単語におけるクラスの組（クラス分類されたテキスト）を決定する。
【００７５】
次に、音声対話ユニット１は、１単語、２単語、３単語で決定された各クラスの組と当該クラスの組のスコア（１単語スコア、２単語スコア、３単語スコア）とに基づいて、認識されたテキスト全体における各クラスの組の尤度（構文解析スコア）を算出する。そして、音声対話ユニット１は、当該構文解析スコアに基づいて、認識されたテキスト全体におけるクラスの組（クラス分類されたテキスト）を決定する。
【００７６】
ここで、図６に示す例を用いて、構文モデル１７を用いてクラス分類されたテキストを決定する処理について説明する。図６の例では、認識されたテキストが「AC on floor to defrost」である。
【００７７】
このとき、構文モデル１７全体を用いて、ユニグラムで、「AC」「on」…「defrost」について、それぞれ、１単語における各ドメインの尤度が算出される。そして、当該尤度に基づいて１単語におけるドメインが決定される。例えば、第１位の（尤度の最も高い）ドメインは、「ＡＣ」については｛Climate｝、「on」については｛Ambiguous｝、「defrost」については｛Climate｝と決定される。
【００７８】
さらに、構文モデル１７のうちの決定されたドメインの種類に分類された部分のデータを用いて、ユニグラムで、「AC」「on」…「defrost」について、１単語における各クラスの組に対する尤度がそれぞれ算出される。そして、当該尤度に基づいて１単語におけるクラスの組が決定される。例えば、「AC」について、第１位の（尤度の最も高い）クラスの組は、｛Climate_ACOnOff_On｝と決定され、このクラスの組に対する尤度（単語スコア）ｉ１が得られる。同様に、「on」…「defrost」について、クラスの組が決定され、このクラスの組に対する尤度（単語スコア）ｉ２〜ｉ５が得られる。
【００７９】
同様に、バイグラムで、「AC on」「on floor」…「to defrost」について、それぞれ、２単語における各ドメインの尤度が算出され、当該尤度に基づいて２単語におけるドメインが決定される。そして、２単語におけるクラスの組とその尤度（２単語スコア）ｊ１〜ｊ４が決定される。また、同様に、トライグラムで、「AC on floor」「on floor to」「floor to defrost」について、それぞれ、３単語における各ドメインの尤度が算出され、当該尤度に基づいて３単語におけるドメインが決定される。そして、３単語におけるクラスの組とその尤度（３単語スコア）ｋ１〜ｋ３が決定される。
【００８０】
次に、１単語、２単語、３単語で決定された各クラスの組について、例えば、各クラスの組の単語スコアｉ１〜ｉ５、２単語スコアｊ１〜ｊ４、３単語スコアｋ１〜ｋ３の和が、テキスト全体における各クラスの組に対する尤度（構文解析スコア）として算出される。例えば、｛Climate_Fan-Vent_Floor｝に対する構文解析スコアは、ｉ３＋ｊ２＋ｊ３＋ｋ１＋ｋ２となる。また、例えば、｛Climate_ACOnOff_On｝に対する構文解析スコアは、ｉ１+ｊ１となる。また、例えば、｛Climate_Defrost_Front｝に対する構文解析スコアは、ｉ５+ｊ４となる。そして、算出された構文解析スコアに基づいて、テキスト全体についてのクラスの組（クラス分類されたテキスト）が決定される。これにより、認識されたテキストから、｛Climate_Defrost_Front｝｛Climate_Fan-Vent_Floor｝｛Climate_ACOnOff_On｝といったクラス分類されたテキストが決定される。
【００８１】
次に、音声対話ユニット１は、固有名詞辞書２１を用いて、認識されたテキストからクラス分類されたテキストを決定する。具体的には、音声対話ユニット１は、認識されたテキスト内の各単語について、その単語のテキストと、固有名詞辞書２１に登録された各固有名詞のテキストとの類似の度合を算出する。そして、音声対話ユニット１は、登録された複数の固有名詞のうちの、類似の度合が所定の条件を満たす固有名詞がテキストに含まれた単語であると決定する。所定の条件は、例えばテキストが明らかに一致すると考えられる所定値以上等のように予め定められている。そして、音声対話ユニット１は、この固有名詞に付けられたタグの内容に基づいて、クラス分類されたテキストを決定する。また、音声対話ユニット１は、算出された類似の度合に基づいて、決定されたクラス分類されたテキストの尤度（構文解析スコア）を算出する。
【００８２】
次に、音声対話ユニット１は、算出された構文解析スコアが所定の条件を満たすようなクラス分類されたテキスト（Categorized Text）を、入力された発話の認識結果として決定して、その認識結果の確信度（構文解析スコア）と共に出力する。所定の条件は、例えば、構文解析スコアが最も高いテキスト、構文解析スコアが上位から所定順位までのテキスト、或いは構文解析スコアが所定値以上のテキスト等のように予め定められている。例えば、上述のように「AC on floor to defrost」という発話が入力された場合に、認識結果として、｛Climate_Defrost_Front｝が、その構文解析スコアと共に出力される。
【００８３】
次に、ＳＴＥＰ５で、音声対話ユニット１は、車両状態検出部３により検出される、車両１０の状態（車両１０の走行状態、車両１０に搭載された機器の状態、車両１０の運転者の状態等）の検出値を取得する。
【００８４】
次に、ＳＴＥＰ６で、音声対話ユニット１は、ＳＴＥＰ４で出力された発話の認識結果と、ＳＴＥＰ５で検出された車両１０の状態とに基づいて、シナリオデータベース１８を用いて、運転者への応答や機器の制御を行うためのシナリオを決定する。
【００８５】
まず、音声対話ユニット１は、発話の認識結果と車両１０の状態から、対象を制御するための情報を取得する。図８に示すように、音声対話ユニット１には、対象を制御するための情報を格納する複数のフォームが備えられている。各フォームには、必要な情報のクラスに対応した所定数のスロットが設けられている。例えば、ナビゲーションシステム６ｂを制御するための情報を格納するフォームとして、「Plot a route」「Traffic info.」等が備えられ、エアコンディショナ６ｃを制御するための情報を格納するフォームとして「Climate control」等が備えられている。また、フォーム「Plot a route」には、４つのスロット「From」「To」「Request」「via」が設けられている。
【００８６】
音声対話ユニット１は、運転者との対話における各回の発話の認識結果と、車両１０の状態とから、該当するフォームのスロットに値を入力していく。これと共に、各フォームについての確信度（フォームに入力された値の信頼の度合）を算出してフォームに記録する。フォームの確信度は、例えば、各回の発話の認識結果の確信度と、各フォームのスロットの埋まり具合とに基づいて算出される。例えば、図９に示すように、「千歳空港まで最短ルートで案内して」という発話が運転者から入力された場合には、フォーム「Plot a route」の３つのスロット「From」「To」「Request」に値「ここ」「千歳空港」「最短」が入力される。また、フォーム「Plot a route」の「Score」に、算出されたフォームの確信度８０が記録される。
【００８７】
次に、音声対話ユニット１は、フォームの確信度と、ＳＴＥＰ５で検出された車両１０の状態とに基づいて、実際の制御処理に用いるフォームを選択する。そして、選択されたフォームに基づいて、シナリオデータベース１８に格納されたデータを用いて、シナリオを決定する。図９に示すように、シナリオデータベース１８には、例えば運転者へ出力する応答文等が、スロットの埋まり具合やレベル毎に分類されて格納されている。なお、レベルは、例えばフォームの確信度や車両１０の状態（車両１０の走行状態、運転者の状態等）等に基づいて設定される値である。
【００８８】
例えば、選択されたフォーム内に空きスロット（値が入力されていないスロット）がある場合には、運転者へフォーム内の空きスロットの入力を促すような応答文を出力するシナリオが決定される。このとき、レベルに応じて、すなわちフォームの確信度や車両１０の状態を考慮して、運転者の次回の発話を促す適切な応答文が決定される。例えば、運転者の運転負荷に応じて、運転負荷が高いと考えられる状態では、入力を促すスロットの数が少なめに設定された応答文がが決定される。そして、このように決定された応答文の出力により使用者の次の発話を促すことで、効率の良い対話が行われる。
【００８９】
図９に示す例では、フォーム「Plot a route」の第１〜第３のスロット「From」「To」「Request」には値が入力され、第４のスロット「via」には値が入力されていない。また、レベル＝２に設定されている。このとき、シナリオデータベース１８から応答文「<To>を<Request>設定します」が選択され、「千歳空港を高速優先設定します」という応答文の内容が決定される。
【００９０】
また、例えば、選択されたフォーム内の全てのスロットが全て埋まっている（値が入力されている）場合には、内容を確認するような応答文（例えば各スロットの入力値を運転者に報知する応答文）を出力するシナリオが決定される。
【００９１】
次に、ＳＴＥＰ７で、音声対話ユニット１は、決定したシナリオに基づいて、運転者との対話が終了したか否かを判断する。ＳＴＥＰ７の判断結果がＮＯの場合には、ＳＴＥＰ８に進み、音声対話ユニット１は、決定された応答文の内容や応答文を出力する際の条件に応じて音声を合成する。そして、ＳＴＥＰ８で、生成された応答文が、スピーカ４から出力される。
【００９２】
次に、ＳＴＥＰ１に戻り、２回目の発話が運転者から入力される。次に、ＳＴＥＰ２で、音声対話ユニット１は、１回目の発話の認識結果から、ドメインの種類を決定する処理と、タスクの種類を決定する処理とを実行する。そして、音声対話ユニット１は、ドメインの種類が決定された場合には、決定されたドメインの種類のデータを有効とする。また、タスクの種類が決定された場合には、音声対話ユニット１は、決定されたタスクの種類のデータを有効とする。
【００９３】
ここで、図７を参照して、言語モデル１６を選択的に有効にする処理について示す。図７の例では、言語モデル１６は、図３に示したように分類されている。
【００９４】
例えば、図７（ａ）に示すように、１回目の発話で運転者から「ナビ操作」という発話が入力されると、この発話の認識結果は｛Navigation｝となる。よって、ＳＴＥＰ２で、１回目の発話の認識結果から、ドメインの種類が｛Navigation｝と決定される。これにより、図７（ａ）の表でハッチングを付して示したように、言語モデル１６のうちの｛Navigation｝に分類された部分のデータのみが有効とされる。よって、何を制御するかが特定されれば、ドメインの種類という指標で認識対象を限定することができる。
【００９５】
また、例えば、図７（ｂ）に示すように、１回目の発話で運転者から「セットする」という発話が入力されると、この発話の認識結果は｛Ambiguous_Set｝となる。よって、ＳＴＥＰ２で、１回目の発話の認識結果から、「何を」制御するかは不明なので、ドメインの種類は決定されない。一方、この発話に基づいて、タスクの種類が｛Set｝と決定される。これにより、図６（ｂ）の表でハッチングを付して示したように、言語モデル１６のうちの｛Set｝に分類された部分のデータのみが有効とされる。よって、何を制御するかが特定されていなくても、少なくともどのように制御するかが特定されれば、タスクの種類という指標で認識対象を限定することができる。
【００９６】
さらに、例えば、図７（ｃ）に示すように、１回目の発話で運転者から「ナビのセットする」という発話が入力されると、この発話の認識結果は｛Navigation_Set｝となる。よって、ＳＴＥＰ２で、１回目の発話の認識結果から、ドメインの種類が｛Navigation｝と決定されると共に、タスクの種類が｛Set｝と決定される。これにより、図７（ｃ）で示したように、言語モデル１６のうちの｛Navigation｝｛Set｝の両方に分類された部分のデータのみが有効とされる。よって、ドメインの種類とタスクの種類との両方が決定された場合には、認識対象をより効率良く限定することができる。
【００９７】
次に、ＳＴＥＰ３で、音声対話ユニット１は、１回目の発話と同様に、音声認識処理を実行する。ただし、音声対話ユニット１は、言語モデル１６のうちのＳＴＥＰ２で有効とされた部分のデータのみを用いて、運転者からの２回目の発話の音声認識処理を実行する。これにより、認識対象を効率良く限定して音声認識処理を行うことが可能なので、テキストの認識精度を向上することができる。
【００９８】
次に、ＳＴＥＰ４で、音声対話ユニット１は、１回目の発話と同様に、認識されたテキストから、構文解析処理を実行する。このとき、ＳＴＥＰ３で認識されたテキストの精度が向上しているので、ＳＴＥＰ４で出力される発話の認識結果の精度が向上する。
【００９９】
次に、ＳＴＥＰ５で、１回目の発話と同様に、音声対話ユニット１は、車両１０の状態を検出し、ＳＴＥＰ６で、２回目の発話の認識結果と車両１０の状態とに基づいて、シナリオを決定する。
【０１００】
次に、ＳＴＥＰ７で、音声対話ユニット１は、運転者との対話が終了したか否かを判断する。ＳＴＥＰ７の判断結果がＮＯの場合には、ＳＴＥＰ８に進み、音声対話ユニット１は、決定された応答文の内容や出力する際の条件に応じて音声を合成する。そして、ＳＴＥＰ９で、生成された応答文が、スピーカ４から出力される。
【０１０１】
以下、ＳＴＥＰ７の判断結果がＹＥＳとなるまで、上述の２回目の発話に対するＳＴＥＰ１〜６，８，９と同様の処理が繰り返される。
【０１０２】
ＳＴＥＰ７の判断結果がＹＥＳの場合には、ＳＴＥＰ１０に進み、音声対話ユニット１は、決定された応答文の音声を合成する。次に、ＳＴＥＰ１１で、応答文がスピーカ４から出力される。次に、ＳＴＥＰ１２で、音声対話ユニット１は、決定されたシナリオに基づいて機器を制御して、音声対話処理を終了する。
【０１０３】
以上の処理によって、言語モデル１６、固有名詞辞書２０が効率良く選択されて発話の認識精度が向上するので、効率の良い対話を介して機器の制御が行われる。
［対話例］
次に、上述した音声対話処理について、図８（ａ）（ｂ）に示した対話例を用いて説明する。図８（ａ）（ｂ）の対話例は、いずれも運転者がラジオの選局を変更する対話例である。図８（ａ）は、上述の音声対話処理による対話例を示し、図８（ｂ）は、参考例として、上述の音声対話処理において、ＳＴＥＰ２でタスクの種類を決定して言語モデル１６を選択する処理を行わない場合における対話例を示している。
【０１０４】
まず、参考例として、図８（ｂ）の対話例について説明する。図８（ｂ）に示すように、まず、ＳＴＥＰ１で、運転者から「設定変更」という最初の発話が入力される。次に、ＳＴＥＰ２で、最初の発話であるので、言語モデル１６全体のデータが有効とされる。
【０１０５】
次に、ＳＴＥＰ３で、まず、入力された音声「設定変更」の特徴ベクトルから、発音データ「se-t-te-i」「he-n-ko-u」が音響スコアと共に決定される。次に、言語モデル１６全体に記録されたデータを用いて、発音データ「se-t-te-i」「he-n-ko-u」から、単語「設定」「変更」がその言語スコアに基づいて決定される。このとき、「設定」の言語スコアは、文頭であるので、「設定」という単語の出現確率に基づいて算出される。また、「変更」の言語スコアは、「変更」という単語の出現確率と、「設定  変更」という２単語列の生起確率とに基づいて算出される。
【０１０６】
次に、発音データ「se-t-te-i」「he-n-ko-u」と、固有名詞辞書２０全体に登録された固有名詞の発音データとの類似の度合が算出される。この場合、登録された固有名詞のうちに類似の度合が所定値以上となるような固有名詞はなく、単語は決定されない。
【０１０７】
次に、決定された各単語について、音響スコアと言語スコアとから音声認識スコアが算出される。そして、この音声認識スコアに基づいて、入力された発話から認識されたテキスト「設定  変更」が決定される。
【０１０８】
次に、ＳＴＥＰ４で、構文モデル１７を用いて、認識されたテキスト（「設定  変更」）から、クラス分類されたテキスト｛Ambiguous_Setup｝が、その構文解析スコアに基づいて決定される。次に、認識されたテキスト「設定  変更」の各単語と、固有名詞辞書２１全体に登録された固有名詞のテキストとの類似の度合が算出される。この場合、登録された固有名詞のうちに類似の度合が所定値以上となるような固有名詞はなく、クラス分類されたテキストは決定されない。これにより、クラス分類されたテキスト｛Ambiguous_Setup｝が認識結果として構文解析スコアと共に出力される。
【０１０９】
次に、ＳＴＥＰ５で、車両１０の状態が検出され、ＳＴＥＰ６で、シナリオが決定される。このとき、「何を」制御するかという情報が取得されていないので、制御対象の入力を運転者に促すような応答を出力するシナリオが決定される。具体的には、応答として「いかがしましょうか？」という応答文を運転者に出力するシナリオが決定される。次に、ＳＴＥＰ７で、対話が終了していないと判断されてＳＴＥＰ８に進み、決定された応答文の音声が合成され、ＳＴＥＰ９で、スピーカ４から応答文が出力される。
【０１１０】
ＳＴＥＰ１に戻り、運転者から「選局をかえて」という２回目の発話が入力される。次に、ＳＴＥＰ２で、１回目の発話の認識結果｛Ambiguous_Setup｝から、ドメインの種類を決定する処理が実行され、ドメインの種類が｛Ambiguous｝であると決定される。そして、ドメインの種類が不明であるので、言語モデル１６全体のデータが有効とされる。このとき、タスクの種類による言語モデル１６の選択は行われない。
【０１１１】
次に、ＳＴＥＰ３で、まず、入力された音声「選局をかえて」の特徴ベクトルから、発音データ（「se-n-kyo-ku」「wo」「ka-e-te」）が音響スコアと共に決定される。次に、言語モデル１６全体のデータを用いて、発音データ（「se-n-kyo-ku」「wo」「ka-e-te」）から認識されたテキストを決定する処理が行われる。
【０１１２】
このとき、言語モデル１６には、表１に示すように、発音データが「se-n-kyo-ku」である単語「選局」「選曲」「千曲」が記録されているものとする。すなわち、言語モデル１６の｛Audio｝ドメインのデータには、「se-n-kyo-ku」という発音データに対して、単語「選局」「選曲」「千曲」が存在し、それぞれの出現確率が記録されている。また、言語モデル１６の｛Navigation｝｛Climate｝｛Ambiguous｝ドメインのデータには、「se-n-kyo-ku」という発音データに対する単語は存在しない。また、「選局」は｛Audio｝ドメインの下位ドメインである｛Radio｝のみに存在し、「選曲」「千曲」は｛Audio｝ドメインの下位ドメインである｛ＣＤ｝のみに存在する。
【０１１３】
一方、言語モデル１６の｛Setup｝タスクのデータには、「se-n-kyo-ku」という発音データに対して単語「選局」のみが存在し、その出現確率が記録されている。また、言語モデル１６の｛Set｝ドメインのデータには、「se-n-kyo-ku」という発音データに対して単語「選曲」「千曲」が存在し、それぞれの出現確率が記録されている。
【０１１４】
【表１】
2008064885.tif 000003
【０１１５】
このため、ＳＴＥＰ３で、「se-n-kyo-ku」という発音データから、単語「選局」と共に、その同音異義語である単語「選曲」「千曲」も決定される。従って、認識されたテキスト（「選局  を  かえて」）（「選曲  を  かえて」）（「千曲  を  かえて」）が決定される。
【０１１６】
次に、ＳＴＥＰ４で、認識されたテキスト（「選局  を  かえて」）（「選曲  を  かえて」）（「千曲  を  かえて」）から、同等の構文解析スコアを有するクラス分類されたテキスト｛Audio_Setup_Radio_Station｝｛Audio_Set_CD｝が認識結果として決定される。すなわち、ＳＴＥＰ３で単語「選局」が決定されているので、クラス｛Radio｝｛Station｝が尤度の高いクラスとして決定される。また、ＳＴＥＰ３で単語「選曲」「千曲」が決定されているので、クラス｛CD｝が尤度の高いクラスとして決定される。
【０１１７】
次に、ＳＴＥＰ５で車両１０の状態が検出され、ＳＴＥＰ６で発話の認識結果と車両状態とに基づいてシナリオが決定される。このとき、オーディオ６ａのラジオを制御するための情報を格納するフォームのスロットと、ＣＤを制御するための情報を格納するフォームのスロットとに、それぞれ値が入力される。そして、｛Audio_Setup_Radio_Station｝｛Audio_Set_CD｝は同等の構文解析スコアを有するため、フォームの確信度が同等となり、いずれを運転者が意図したかが決定されない。よって、運転者の意図を確認するための「ラジオでしょうか？」という応答文を出力するシナリオが決定される。
【０１１８】
次に、ＳＴＥＰ１に戻り、運転者から「そお」という３回目の発話が入力される。次に、ＳＴＥＰ２で、２回目の発話の認識結果｛Audio_Setup_Radio_Station｝からドメインの種類｛Audio｝が決定され、言語モデル１６の｛Audio｝に分類された部分のデータが有効にされる。次に、ＳＴＥＰ３で、入力された発話の音声から発音データ「so-o」が決定され、認識されたテキスト「そお」が決定される。次に、ＳＴＥＰ４で、認識されたテキスト「そお」から、クラス分類されたテキスト｛Ambiguous_Yes｝が決定される。
【０１１９】
次に、ＳＴＥＰ５で車両１０の状態が検出され、ＳＴＥＰ６で発話の認識結果と車両状態とに基づいてシナリオが決定される。このとき、認識結果が｛Ambiguous_Yes｝であることから、オーディオ６ａのラジオを制御するための情報を格納するフォームが選択される。そして、必要な情報が全て入力されているので、入力値を確認するような応答文を出力すると共に、オーディオ６ａのラジオを制御するシナリオが決定される。具体的には、応答として「受信できるＦＭ局を探します」という応答文を運転者に出力して、オーディオ６ａのラジオの受信周波数を変更するシナリオが決定される。そして、ＳＴＥＰ７で対話終了と判断され、ＳＴＥＰ１０に進み、決定された応答文の音声が合成され、ＳＴＥＰ１１でスピーカ４から出力され、ＳＴＥＰ１２でオーディオ６ａのラジオの受信周波数が変更される。そして、各フォームのスロットが初期化され音声対話処理が終了される。
【０１２０】
これに対して、図１０（ａ）の対話例では、運転者からの最初の発話「設定変更」とシステムからの応答「いかがしましょうか？」と、運転者からの２回目の発話「選局をかえて」は、図１０（ｂ）の対話例と同じである。しかし、ＳＴＥＰ２で、１回目の発話の認識結果｛Ambiguous_Setup｝から、ドメインの種類とタスクの種類を決定する処理が実行され、ドメインの種類が｛Ambiguous｝、タスクの種類が｛Setup｝であると決定される。そして、言語モデル１６のうちのタスクの種類が｛Setup｝に分類された部分のデータが有効とされる。
【０１２１】
次に、ＳＴＥＰ３で、まず、入力された音声「選局をかえて」の特徴ベクトルから、発音データ（「se-n-kyo-ku」「wo」「ka-e-te」）が音響スコアと共に決定される。次に、言語モデル１６の｛Setup｝に分類された部分のデータを用いて、発音データ（「se-n-kyo-ku」「wo」「ka-e-te」）からテキストを決定する処理が行われる。
【０１２２】
このとき、ＳＴＥＰ２で言語モデル１６のタスクの種類が｛Setup｝に分類された部分のデータのみが有効とされているので、ＳＴＥＰ３で、「se-n-kyo-ku」という発音データに対して、単語「選局」のみが決定され、単語「選曲」「千曲」が決定される可能性はない。これにより、認識されたテキスト（「選局  を  かえて」）のみが決定される。
【０１２３】
次に、ＳＴＥＰ４で、認識されたテキスト（「選局  を  かえて」）から、クラス分類されたテキスト｛Audio_Setup_Radio_Station｝が認識結果として決定される。このように、ＳＴＥＰ３で単語「選局」のみが決定されているので、認識結果として｛Audio_Setup_Radio_Station｝のみが決定される。
【０１２４】
次に、ＳＴＥＰ５で車両１０の状態が検出され、ＳＴＥＰ６で発話の認識結果と車両状態とに基づいてシナリオが決定される。このとき、オーディオ６ａのラジオを制御するための情報を格納するフォームのスロットに値が入力される。そして、必要な情報が全て入力されているので、入力値を確認するような応答文を出力すると共に、オーディオ６ａのラジオを制御するシナリオが決定される。具体的には、応答として「受信できるＦＭ局を探します」という応答文を運転者に出力して、オーディオ６ａのラジオの受信周波数を変更する処理を実行するシナリオが決定される。
【０１２５】
次に、ＳＴＥＰ７で対話終了と判断され、ＳＴＥＰ１０に進み、決定された応答文の音声が合成され、ＳＴＥＰ１１でスピーカ４から出力され、ＳＴＥＰ１２でオーディオ６ａのラジオの受信周波数が変更される。そして、フォームのスロットが初期化され音声対話処理が終了される。
【０１２６】
このように、図１０（ａ）の対話例では、言語モデル１６が効率良く選択されて、発話の認識精度が向上している。これにより、図１０（ｂ）の参考例のように運転者の意図を確認するための応答が不要となり、効率の良い対話を介して機器の制御が行われる。
【０１２７】
なお、本実施形態においては、ドメイン種類決定手段２２とタスク種類決定手段２３とは、それぞれ、発話の認識結果からドメインの種類、タスクの種類を決定するものとしたが、図１で点線で示した決定入力部２４（タッチパネル、キーボード、或いはボタンやダイヤル等を備えた入力インタフェース等）により入力された情報を用いてタスクの種類、ドメインの種類を決定するものとしてもよい。なお、タッチパネルは、ディスプレイにタッチスイッチが組み込まれたものでもよい。
【０１２８】
この場合、上述の音声対話処理のＳＴＥＰ２で、運転者からの最初の発話でも、タッチパネル等から入力された情報を用いてドメインの種類、タスクの種類を決定して、言語モデル１６、固有名詞辞書２０を選択的に有効にすることが可能となる。そして、この有効な部分のデータを用いてＳＴＥＰ３で音声認識処理を行うことにより、最初の発話についても、テキストの認識精度が向上され、ＳＴＥＰ４の構文認識処理で出力される認識結果の精度が向上するので、より効率の良い対話を介して機器の制御が行われる。
【０１２９】
また、本実施形態においては、車両状態検出部３を備え、シナリオ制御部１３は、認識結果と検出した車両状態とに応じてシナリオを決定するものとしたが、車両状態検出部３を備えず、シナリオ制御部１３は認識結果のみからシナリオを決定するものとしてもよい。
【０１３０】
また、本実施形態においては、音声入力する使用者は、車両１０の運転者としたが、運転者以外の乗員としてもよい。
【０１３１】
また、本実施形態においては、音声認識装置は、車両１０に搭載されるものとしたが、車両以外の移動体に搭載されるものとしてもよい。さらに、移動体に限らず、使用者が発話により対象を制御するシステムに適用可能である。
【図面の簡単な説明】
【０１３２】
【図１】本発明の実施形態である音声認識装置の機能ブロック図。
【図２】図１の音声認識装置の言語モデル、構文モデル、固有名詞辞書の構成を示す説明図。
【図３】図１の音声認識装置の言語モデルの構成を示す説明図。
【図４】図１の音声認識装置の全体的な作動（音声対話処理）を示すフローチャート。
【図５】図４の音声対話処理における言語モデルを用いた音声認識処理を示す説明図。
【図６】図４の音声対話処理における構文モデルを用いた構文解析処理を示す説明図。
【図７】図４の音声対話処理におけるシナリオを決定する処理に用いるフォームを示す説明図。
【図８】図４の音声対話処理におけるシナリオを決定する処理を示す説明図。
【図９】図４の音声対話処理における言語モデル選択処理を示す説明図。
【図１０】図４の音声対話処理における対話例。
【符号の説明】
【０１３３】
１…音声対話ユニット、２…マイク、３…車両状態検出部、４…スピーカ、５…ディスプレイ、６ａ〜６ｃ…機器、１０…車両、１１…音声認識部、１２…構文解析部、１３…シナリオ制御部、１４…音声合成部、１５…音響モデル、１６…言語モデル、１７…構文モデル、１８…シナリオデータベース、１９…音素モデル、２０，２１…固有名詞辞書、２２…ドメイン種類決定手段、２３…タスク種類決定手段、２４…決定入力部。
【図１】
2008064885.tif 000004
【図２】
2008064885.tif 000005
【図３】
2008064885.tif 000006
【図４】
2008064885.tif 000007
【図５】
2008064885.tif 000008
【図６】
2008064885.tif 000009
【図７】
2008064885.tif 000010
【図８】
2008064885.tif 000011
【図９】
2008064885.tif 000012
【図１０】
2008064885.tif 000013
【手続補正書】
【提出日】平成19年8月27日(2007.8.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項５
【補正方法】変更
【補正の内容】
【請求項５】
請求項３記載の音声認識装置において、
前記音声認識手段により入力された音声を認識する際に用いる、前記タスク及びドメインの種類毎に分類された音声認識用データを備え、
前記音声認識手段は、前記音声認識用データのうちの、前記タスク種類決定手段により決定された種類のタスクで、且つ前記ドメイン種類決定手段により決定された種類のドメインに分類されたデータに基づいて、入力された音声を認識することを特徴とする音声認識装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】変更
【補正の内容】
【００１６】
また、本発明の音声認識装置において、音声認識手段により入力された音声を認識する際に用いる、タスク及びドメインの種類毎に分類された音声認識用データを備え、音声認識手段は、音声認識用データのうちの、タスク種類決定手段により決定された種類のタスクで、且つドメイン種類決定手段により決定された種類のドメインに分類されたデータに基づいて、入力された音声を認識することが好ましい。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４０
【補正方法】変更
【補正の内容】
【００４０】
より詳しくは、音声対話ユニット１は、上記プログラムにより実現される機能として、入力された音声を音響モデル１５と言語モデル１６とを用いて認識してテキストとして出力する音声認識部１１と、認識されたテキストから構文モデル１７を用いて発話の意味を理解する構文解析部１２とを備えている。また、音声対話ユニット１は、発話の認識結果に基づいてシナリオデータベース１８を用いてシナリオを決定し、運転者への応答や機器の制御等を行うシナリオ制御部１３と、運転者に出力する音声による応答を音素モデル１９を用いて合成する音声合成部１４とを備えている。さらに、シナリオ制御部１３は、発話の認識結果からドメインの種類を決定するドメイン種類決定手段２２と、発話の認識結果からタスクの種類を決定するタスク種類決定手段２３とを備えている。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００８６
【補正方法】変更
【補正の内容】
【００８６】
音声対話ユニット１は、運転者との対話における各回の発話の認識結果と、車両１０の状態とから、該当するフォームのスロットに値を入力していく。これと共に、各フォームについての確信度（フォームに入力された値の信頼の度合）を算出してフォームに記録する。フォームの確信度は、例えば、各回の発話の認識結果の確信度と、各フォームのスロットの埋まり具合とに基づいて算出される。例えば、図８に示すように、「千歳空港まで最短ルートで案内して」という発話が運転者から入力された場合には、フォーム「Plot a route」の３つのスロット「From」「To」「Request」に値「ここ」「千歳空港」「最短」が入力される。また、フォーム「Plot a route」の「Score」に、算出されたフォームの確信度８０が記録される。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００８７
【補正方法】変更
【補正の内容】
【００８７】
次に、音声対話ユニット１は、フォームの確信度と、ＳＴＥＰ５で検出された車両１０の状態とに基づいて、実際の制御処理に用いるフォームを選択する。そして、選択されたフォームに基づいて、シナリオデータベース１８に格納されたデータを用いて、シナリオを決定する。図８に示すように、シナリオデータベース１８には、例えば運転者へ出力する応答文等が、スロットの埋まり具合やレベル毎に分類されて格納されている。なお、レベルは、例えばフォームの確信度や車両１０の状態（車両１０の走行状態、運転者の状態等）等に基づいて設定される値である。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００８９
【補正方法】変更
【補正の内容】
【００８９】
図８に示す例では、フォーム「Plot a route」の第１〜第３のスロット「From」「To」「Request」には値が入力され、第４のスロット「via」には値が入力されていない。また、レベル＝２に設定されている。このとき、シナリオデータベース１８から応答文「<To>を<Request>設定します」が選択され、「千歳空港を高速優先設定します」という応答文の内容が決定される。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００９３
【補正方法】変更
【補正の内容】
【００９３】
ここで、図９を参照して、言語モデル１６を選択的に有効にする処理について示す。図９の例では、言語モデル１６は、図３に示したように分類されている。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００９４
【補正方法】変更
【補正の内容】
【００９４】
例えば、図９（ａ）に示すように、１回目の発話で運転者から「ナビ操作」という発話が入力されると、この発話の認識結果は｛Navigation｝となる。よって、ＳＴＥＰ２で、１回目の発話の認識結果から、ドメインの種類が｛Navigation｝と決定される。これにより、図９（ａ）の表でハッチングを付して示したように、言語モデル１６のうちの｛Navigation｝に分類された部分のデータのみが有効とされる。よって、何を制御するかが特定されれば、ドメインの種類という指標で認識対象を限定することができる。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００９５
【補正方法】変更
【補正の内容】
【００９５】
また、例えば、図９（ｂ）に示すように、１回目の発話で運転者から「セットする」という発話が入力されると、この発話の認識結果は｛Ambiguous_Set｝となる。よって、ＳＴＥＰ２で、１回目の発話の認識結果から、「何を」制御するかは不明なので、ドメインの種類は決定されない。一方、この発話に基づいて、タスクの種類が｛Set｝と決定される。これにより、図９（ｂ）の表でハッチングを付して示したように、言語モデル１６のうちの｛Set｝に分類された部分のデータのみが有効とされる。よって、何を制御するかが特定されていなくても、少なくともどのように制御するかが特定されれば、タスクの種類という指標で認識対象を限定することができる。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００９６
【補正方法】変更
【補正の内容】
【００９６】
さらに、例えば、図９（ｃ）に示すように、１回目の発話で運転者から「ナビのセットする」という発話が入力されると、この発話の認識結果は｛Navigation_Set｝となる。よって、ＳＴＥＰ２で、１回目の発話の認識結果から、ドメインの種類が｛Navigation｝と決定されると共に、タスクの種類が｛Set｝と決定される。これにより、図９（ｃ）で示したように、言語モデル１６のうちの｛Navigation｝｛Set｝の両方に分類された部分のデータのみが有効とされる。よって、ドメインの種類とタスクの種類との両方が決定された場合には、認識対象をより効率良く限定することができる。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】０１０３
【補正方法】変更
【補正の内容】
【０１０３】
以上の処理によって、言語モデル１６、固有名詞辞書２０が効率良く選択されて発話の認識精度が向上するので、効率の良い対話を介して機器の制御が行われる。
［対話例］
次に、上述した音声対話処理について、図１０（ａ）（ｂ）に示した対話例を用いて説明する。図１０（ａ）（ｂ）の対話例は、いずれも運転者がラジオの選局を変更する対話例である。図１０（ａ）は、上述の音声対話処理による対話例を示し、図１０（ｂ）は、参考例として、上述の音声対話処理において、ＳＴＥＰ２でタスクの種類を決定して言語モデル１６を選択する処理を行わない場合における対話例を示している。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】０１０４
【補正方法】変更
【補正の内容】
【０１０４】
まず、参考例として、図１０（ｂ）の対話例について説明する。図１０（ｂ）に示すように、まず、ＳＴＥＰ１で、運転者から「設定変更」という最初の発話が入力される。次に、ＳＴＥＰ２で、最初の発話であるので、言語モデル１６全体のデータが有効とされる。