(57)【要約】【課題】  複数の対話サービスの並列動作時における認識率及び応答性の向上。【解決手段】  一対話毎に認識文法１０２及び統廃合情報１０４を生成する。これにより、認識文法の肥大化を防ぎ、認識率の低下を防止できる。また、統廃合情報１０４に基づいて、同一の入力情報に応答可能な対話サービスを特定するので、ユーザが思っても見ないような応答が返ってくることなどを防止しやすい。【選択図】      図１
2005242243.tif 000002
【特許請求の範囲】
【請求項１】
複数の対話エージェントと対話可能な対話制御システムにおいて、
ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力部と、
前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成部と、
前記入力部による入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈部と、
前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成部と、
を有する対話制御システム。
【請求項２】
前記予め生成された認識文法は、前記対話エージェント群全ての要求語彙を収集することにより生成されている、請求項１に記載の対話制御システム。
【請求項３】
前記認識文法生成部は、前記認識文法を構成する語彙数の所定の上限を超えない範囲で要求語彙を選択することにより、前記認識文法を生成する、請求項１に記載の対話制御システム。
【請求項４】
前記認識文法生成部は、各対話エージェントから各要求語彙の重要度を更に取得し、前記重要度に基づいて要求語彙を選択することにより、前記認識文法を生成する、請求項３に記載の対話制御システム。
【請求項５】
前記認識文法生成部は、各対話エージェント自体の重要度を更に取得し、前記重要度に基づいて要求語彙を選択することにより、前記認識文法を生成する、請求項３に記載の対話制御システム。
【請求項６】
前記認識文法生成部は、各対話エージェントの利用頻度を更に取得し、前記利用頻度に基づいて要求語彙を選択することにより、前記認識文法を生成する、請求項３に記載の対話制御システム。
【請求項７】
前記認識文法生成部は、前記認識文法を構成する語彙に選択されなかった語彙と、その語彙を要求した対話エージェントの識別子と、を対応付ける削除情報を生成する、請求項３〜６のいずれかに記載の対話制御システム。
【請求項８】
複数の対話エージェントと対話可能な対話制御システムが実行する対話制御方法において、
ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力ステップと、
前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成ステップと、
前記入力ステップにおける入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈ステップと、
前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成ステップと、
を含む対話制御方法。
【請求項９】
複数の対話エージェントと対話可能な対話制御システムが実行する対話制御プログラムを記録した、コンピュータ読み取り可能な記録媒体であって、
ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力ステップと、
前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成ステップと、
前記入力ステップにおける入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈ステップと、
前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成ステップと、
を実行する対話制御プログラムを記録した、コンピュータ読み取り可能な記録媒体。
【請求項１０】
複数の対話エージェントと対話可能なコンピュータが実行する対話制御プログラムであって、
ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力ステップと、
前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成ステップと、
前記入力ステップにおける入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈ステップと、
前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成ステップと、
を前記コンピュータに実行させる対話制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声を用いてコンピュータと対話することにより所定のサービスを享受するための音声対話技術及び音声認識技術に関する。
【背景技術】
【０００２】
コンピュータの演算能力の向上に伴い、ユーザの音声を計算機によって認識するための音声認識技術が広く用いられるようになってきた。また、音声認識技術と音声合成技術によって音声を用いた対話をコンピュータとユーザとで行う音声対話技術は、キーボードやマウスを用いずに計算機を利用するためのインタフェースの一つとして、多くの分野で注目されている。これらの技術は、例えば、電話回線を通して株価情報やニュースなど必要な情報を取得することができる音声ポータル、運転中に音声で操作を行うことができるカーナビゲーションシステム、音声で操作できる携帯電話、音声で航空機予約ができるチケット予約システムなど、様々な分野で実際に利用されている。
【０００３】
従来の音声対話技術では、ユーザは一つの対話サービスのシナリオにのっとって対話を行うものと想定されていることが多い。また、複数の対話サービスを提供する音声ポータルの場合でも、そのサービス構造はツリー状であり、複数の対話サービスを並列に利用することを想定していない。このような対話サービスは、特定の情報提供や特定タスクの実現など、単一のタスクを達成するには比較的効率的である。
しかし、ユーザが音声対話サービスを利用する場合の利用形態は必ずしもこのような単一タスクの達成だけとは限らず、複数のタスクを並列的に実行することが考えられる。例えば、スケジュール管理の対話サービスを受けつつ、出張の予定が見つかったところで出張先の天気を天気予報の対話サービスで確認し、再度スケジュール管理に戻ってくることが挙げられる。このように、複数の対話サービスを同時に起動しつつ、任意のタイミングで対話サービスを切り替え、また前の作業の続きに戻る、という並列的な対話サービス利用をユーザができることが望まれる。
【０００４】
複数の音声対話サービスを並列に動作させ、ユーザが任意のタイミングで対話サービスを切り替える、あるいは対話サービスが自発的にユーザに働きかけるような対話サービスの文脈を意識した複合的な音声対話サービスが、特許文献１に提案されている。この形態では、複数の音声対話サービスをユーザが自在に切り替えて利用できるようにするため、ある時点においてユーザと直接対峙する対話サービスが要求する認識語彙だけでなく、バックグラウンドで待ち受ける対話サービスが認識すべき認識語彙もあわせて認識文法に含まれている必要がある。
【特許文献１】特許出願第2003-81136号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
バックグラウンドで待ち受ける対話サービスが認識すべき認識語彙を含む認識語彙が必要な場合、対話において想定されるすべての語彙を網羅する認識文法をあらかじめ作成して利用するのが一般的である。しかし、音声認識においては一般に、認識文法内の認識語彙数が増加するほど認識率は低下する。利用する対話サービスの種類が増えれば増えるほど、想定される語彙は増加するため、このような認識文法では、ある状況では必要のない不要な語彙の割合が増加する可能性が大きい。このような不要な語彙群による認識性能低下が問題となる。
【０００６】
この問題は認識語彙数を制限することで改善できる。しかしその一方で、認識語彙数が少ないと、受け付けることができる語彙が少なくなるため、ユーザの利便性が下がるという問題が発生する。さらに、認識可能語彙が事前に決定できないような場合には、あらかじめ認識文法を作成しておくことは根本的に不可能である。この問題を解決するために、状況に応じて必要な認識語彙セットを生成し動的に文法コンパイルを行うような、動的文法の手法が利用されている。実際に、VoiceXMLの処理系においては、VoiceXMLスクリプト内に記述された文法を動的にコンパイルして利用する形態を実現することができる。しかし、動的文法では文法コンパイルの時間が対話の応答時間に影響を与えるため、認識文法の規模が大きくなると対話の応答時間が増加してしまう。
【０００７】
さらに、複数の対話サービスが並列に動作する形態では、複数の対話サービスが個別に認識語彙を要求する。そのため、複数の対話サービスが、同時に同じ文章や同じ語彙、同音異義語を要求する可能性がある。音声認識エンジンでは同音異義語のように音として同じ並びのものを区別することができないため、このような競合する認識語彙をユーザが発声した場合はどの対話サービスが要求する認識語彙かを判別することができない。そのために、ユーザが意図しない対話サービスが応答することがあり、不自然な対話の流れとなってしまうおそれがある。
【０００８】
以上の様な問題を解決するために、認識文法の規模を抑え、他の対話サービスと競合しない認識語彙となるよう、個々の対話サービス作成時に考慮することは、非現実的である。
本発明は、自由に作成された複数の対話サービスが並列動作するときに、認識語彙の競合の有無や競合する対話サービスを識別する技術を提供することを目的とする。また本発明は、複数の対話サービスを並列動作させながら、応答性の良さと高い認識率とを両立させ、なおかつ自然な対話の流れを保つ技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
前記課題を解決するために、発明１は、複数の対話エージェントと対話可能な対話制御システムにおいて、
・ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力部と、
・前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成部と、
・前記入力部による入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈部と、
・前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成部と、
を有する対話制御システムを提供する。
【００１０】
各エージェントの要求語彙の中で重複する語彙を取り除くことにより、認識文法の無駄を省くことができる。従って、全ての対話エージェントの要求語彙をそのまま認識文法にするよりも認識文法のサイズを抑えることができる。また、どの対話エージェントがどの語彙について競合しているかを統廃合情報として記憶するので、ある入力に対する対話エージェントの競合の有無を判断することにより、競合がある場合には競合するいずれかの対話エージェントに応答を依頼することができる。従って、ユーザが思っても見ない対話エージェントが応答する事態を防止できる。さらに、一対話毎に、すなわち動的に認識文法を生成することにより、認識文法そのもののサイズを抑えることができる。また、予め認識文法を準備しておくことが難しい対話サービスについても、認識率が高くユーザの利便性も高い応答が可能となる。
【００１１】
発明２は、発明１において、前記予め生成された認識文法は、前記対話エージェント群全ての要求語彙を収集することにより生成されている対話制御システムを提供する。
発明３は、発明１において、前記認識文法生成部は、前記認識文法を構成する語彙数の所定の上限を超えない範囲で要求語彙を選択することにより、前記認識文法を生成する対話制御システムを提供する。
重複する語彙を省くだけでなく、認識文法構成語彙数の上限を設け、その範囲外となる語彙を認識文法から削除する。これにより、認識文法を更にコンパクトにでき、認識率の向上と応答性の良さとを担保することができる。
【００１２】
発明４は、発明３において、前記認識文法生成部は、各対話エージェントから各要求語彙の重要度を更に取得し、重要度に基づいて要求語彙を選択することにより、前記認識文法を生成する対話制御システムを提供する。
上限数内で要求語彙を選択する際に、各要求語彙の重要度に基づいて語彙を選択する。これにより、ユーザの利便性に対する影響を抑えつつ、高い認識率と応答性の良さとを担保することができる。
発明５は、発明３において、前記認識文法生成部は、各対話エージェント自体の重要度を更に取得し、前記重要度に基づいて要求語彙を選択することにより、前記認識文法を生成する対話制御システムを提供する。
【００１３】
重要な対話エージェントの要求語彙を認識文法に含ませることにより、ユーザにとって自然な対話をしやすくなることを期待できる。
発明６は、発明３において、前記認識文法生成部は、各対話エージェントの利用頻度を更に取得し、前記利用頻度に基づいて要求語彙を選択することにより、前記認識文法を生成する対話制御システムを提供する。
利用頻度の高い対話エージェントからの要求語彙を認識文法に含ませることにより、認識率が高まると考えられる。
【００１４】
発明７は、発明３〜６のいずれかにおいて、前記認識文法生成部は、前記認識文法を構成する語彙に選択されなかった語彙と、その語彙を要求した対話エージェントの識別子と、を対応付ける削除情報を生成する対話制御システムを提供する。
要求語彙のうち、認識文法に登録しなかった語彙と、その語彙を要求した対話エージェントとを記憶しておく。これにより、入力情報が認識できない場合でも、その原因を内部的に判断することができる。
発明８は、複数の対話エージェントと対話可能な対話制御システムが実行する対話制御方法において、以下のステップを含む対話制御方法を提供する。
・ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力ステップ、
・前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成ステップ、
・前記入力ステップにおける入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈ステップ、
・前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成ステップ。
【００１５】
発明９は、前記発明８の方法を実行する対話制御プログラムを記録した、コンピュータ読み取り可能な記録媒体を提供する。ここで記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、ＣＤ−ＲＯＭ、ＤＶＤ、光磁気ディスク（ＭＯ）、その他のものが挙げられる。
発明１０は、前記発明８の方法をコンピュータに実行させる対話制御プログラムを提供する。
【発明の効果】
【００１６】
本発明を用いれば、複数の対話サービスを並列動作させながら、同一の語彙に応答可能な対話サービスを特定することができる。また、動的に認識文法を生成することにより、認識文法のサイズを抑え、認識率と応答性の良さとを両立させつつ、自然な対話の流れを保つことができる。
【発明を実施するための最良の形態】
【００１７】
＜第１実施形態＞
［構成］
図１は、本発明の第１実施形態に係る対話制御システムの構成図である。本実施形態では音声対話を例に取る。対話制御システム１０は、複数の対話エージェント２０ａ，２０ｂと接続され、入力部１１、入力管理部１２、応答出力生成部１３、出力部１４を有している。
入力部１１は、ユーザにより入力された入力情報を認識文法１０２に基づいて解釈する。入力部１１は音声認識部１０１及び認識文法１０２を有し、音声認識部１０１はユーザからの音声入力を受け付ける。認識文法１０２は、対話制御システムが認識可能な語彙の集合である。対話開始後の認識文法１０２は、入力管理部１２において一対話毎に生成される。対話開始時に用いられる認識文法１０２は、予め作成されている。例えば、各対話エージェントが用いる可能性のある全ての語彙を収集することにより、対話開始時の認識文法を作成することができる。
【００１８】
入力管理部１２は、認識文法生成部１０３と入力解釈部１０５とを有している。
入力解釈部１０５は、前記入力部１１が解釈した入力情報について競合する対話エージェントの有無を判断し、判断結果に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける。ここで、競合する対話エージェントとは、対話サービスの実行途中のある時点において、要求語彙が重複する対話エージェントである。
各対話エージェントは、入力部１１から入力された入力情報に対応する応答を対話制御システムに出力する。入力解釈部１０５によって選択された対話エージェントは、提供された入力情報に応じて適切な応答と必要な要求語彙を決定する。一方、入力情報を受け取ることができなかった対話エージェントも、必要に応じて応答や要求語彙を決定することができる。
【００１９】
認識文法生成部１０３は、一対話毎に、各対話エージェントがその時点で受け付け可能な語彙（以下、単に要求語彙という）を各対話エージェントから取得する。図２は、各対話エージェントが対話制御システムに通知する要求語彙の概念説明図である。この例では、要求語彙及びその識別子の組み合わせが、対話エージェントから対話制御システムに通知される。さらに、認識文法生成部１０３は、各対話エージェント毎の要求語彙を統合し、認識文法１０２を生成する。認識文法生成部１０３は、各対話エージェントの要求語彙の取得と、認識文法１０２及び後述する統廃合情報１０４の生成とを、一対話毎に行う。一対話毎に認識文法１０２及び統廃合情報１０４を生成することにより、認識文法１０２そのもののサイズを抑えることができる。また、予め認識文法１０２を準備しておくことが難しい対話サービスについても、認識率が高くユーザの利便性も高い応答が可能となる。
【００２０】
応答出力生成部１３は、前記入力情報に対応する応答を前記選択された対話エージェントから取得し、応答出力用データを生成する。応答出力用データとは、例えば出力機器がスピーカであれば音声データ、出力機器が表示デバイスであれば表示データである。
出力部１４は、出力処理部１０６から応答出力用データを出力する。出力処理部１０６とは、例えば画像処理部や音声処理部である。
このように構成された対話制御システムでは、各エージェントの要求語彙を統合した認識文法１０２を生成することにより、全ての対話エージェントの要求語彙をそのまま認識文法１０２にするよりも認識文法１０２のサイズを抑えることができる。また、ある入力に対する対話エージェントの競合の有無を判断することにより、競合がある場合には競合するいずれかの対話エージェントに応答を依頼することができる。従って、ユーザが思っても見ない対話エージェントが応答する事態を防止できる。
【００２１】
［機能］
（１）認識文法の生成
図３は、認識文法生成部１０３の機能説明図である。認識文法生成部１０３は、各対話エージェントの要求語彙のうち重複するものを排除することにより、認識文法１０２を生成する。ここで認識文法１０２とは、ある時点で対話制御システムが認識する語彙の集合であり、この例では一対話毎に生成される。重複語彙のない認識文法１０２を生成することにより、認識文法１０２の無駄を省いて入力情報の認識率を高めることができる。
【００２２】
さらに、認識文法生成部１０３は、各対話エージェントの要求語彙のうち重複する語彙について統廃合情報１０４を生成する。統廃合情報１０４は、重複する語彙を要求した２以上の競合する対話エージェントの識別子とその語彙とを対応付けている。また、必要に応じ、付随情報を対応付けて統廃合情報１０４に含ませても良い。付随情報は、各対話エージェント２０から対話制御システム１０に対して要求語彙と共に通知され、認識文法生成部１０３により語彙と共に統廃合情報１０４に書き込まれる。付随情報としては、以下の例が挙げられる。
(i)各対話エージェントがその語彙に付加した重要度。
(ii)対話履歴から演算して得られる対話エージェントの利用頻度。
(iii)対話エージェントがその語彙を要求した日時。
(iv)対話エージェントの重要度。
(v)語彙の属するカテゴリ情報。カテゴリとは、例えば複数の対話エージェントで共通に使用されるコマンドであることを示す情報を挙げることができる。
【００２３】
付随情報は前述したように対話エージェントから対話制御システムに要求語彙と共に通知されるが、(ii)の付随情報、すなわち利用頻度は対話制御システムにおいて演算することもできる。すなわち、対話履歴保持部（図示せず）と利用頻度演算部（図示せず）とを対話制御システム１０に設けておく。ここで、対話履歴保持部は、各ユーザ毎にそれぞれの対話エージェントの利用履歴を記憶する。また利用頻度演算部は、利用履歴から各対話エージェントの利用頻度を演算する。そして、認識文法生成部１０３は、語彙を要求してくる対話エージェントの利用頻度を利用頻度演算部から取得し、統廃合情報１０４に書き込む。これとは逆に、各対話エージェントが、ユーザ毎の利用履歴及び利用頻度を演算し、要求語彙と共に対話制御システムに通知することもできる。
【００２４】
図３を再度参照してより具体的に説明すれば、認識文法生成部１０３は、統合処理部１０３１により各対話エージェントの要求語彙を統合し、統廃合情報１０４を生成する。生成された統廃合情報１０４は、入力解釈部１０５に渡され、入力情報の解釈に用いられる。一方、統合された要求語彙１０３２は、変換部１０３３により認識文法１０２に変換され、音声認識部１０１に渡される。
図４は、認識文応生成部による要求語彙の統合例を示す説明図である。この例では、天気サービス<Weather>と、Newsサービス<News>とから、それぞれの要求語彙が対話制御システムに通知される。認識文法生成部１０３は、両者の要求語彙を統合し、要求語彙のうち重複する「today」と「tomorrow」とを統廃合情報１０４に書き込む。また、それぞれに対応する対話エージェントの識別子<Weather>と<News>とを重複する要求語彙のそれぞれに対応付けて統廃合情報１０４に書き込む。なお、重複する要求語彙「today」と「tomorrow」は、統合された語彙の中に１つずつ記憶されている。
【００２５】
（２）入力情報の振り分け
図５は、入力解釈部１０５の機能を示す説明図である。入力解釈部１０５は、統廃合情報１０４に基づいて競合する対話エージェントの有無を判断する。入力情報の解釈結果について競合がある場合には競合する対話エージェントを統廃合情報１０４により特定していずれかを選択し、選択した対話エージェントに入力情報を提供する。
より具体的には、入力部１１から入力情報の音声認識結果が渡されると、判断部１０５１は統廃合情報１０４中のいずれかの語彙と一致するか否かを判断する。入力情報の解釈結果が統廃合情報１０４に含まれていない場合、すなわち削除されていない語彙が入力された場合、入力情報はいずれかの対話エージェントに提供される。例えば直前に応答した対話エージェントや、最も使用頻度の高い対話エージェントに、入力情報を提供することができる。あるいは、いずれかの対話エージェントから応答があるまで、対話エージェントに入力情報を順次提供してもよい。
【００２６】
入力情報が統廃合情報１０４中のいずれかの語彙と一致する場合、一致する語彙に対応付けられている対話エージェントのいずれかに対し、判断部は入力情報を提供する。判断部は、統廃合情報１０４に付随情報が含まれている場合、付随情報に基づいて対話エージェントを選択しても良い。前述したように、付随情報は、認識文法生成部１０３が語彙と共に統廃合情報１０４に書き込む。付随情報の例及び付随情報に基づく対話エージェントの選択方法の例を次に示す。
(i)各対話エージェントによりその語彙に付加された重要度が付随情報に含まれる場合。最も高い重要度を付加している対話エージェントを選択することができる。
【００２７】
(ii)対話履歴から演算して得られる対話エージェントの利用頻度が付随情報に含まれる場合。最も利用頻度が高い対話エージェントを選択することができる。
(iii)対話エージェントがその語彙を要求した日時が付随情報に含まれる場合。最も最新の日時に対応する対話エージェントを選択することができる。
(iv)対話エージェントの重要度が付随情報に含まれる場合。競合した場合には、最も重要度の高い対話エージェントを選択することができる。なお、対話エージェントの重要度と語彙の重要度とが共に付随情報に含まれる場合、両者に基づいて対話エージェントを選択しても良い。例えば対話エージェントの重要度と語彙の重要度との乗算値を比較し、その比較結果に基づいて対話エージェントを選択することができる。
【００２８】
(v)語彙の属するカテゴリ情報が付随情報に含まれる場合。特定カテゴリに属する語彙を要求している対話エージェントを選択することができる。特定カテゴリとは、例えば複数の対話エージェントで共通に使用されるコマンドが属するカテゴリを挙げることができる。
付随情報及び対話エージェントの選択方法は、これらの例に限定されない。また、上述の例を適宜組み合わせることももちろん可能である。
さらに、入力解釈部１０５は、付随情報を用いず、対話エージェントに順番に入力情報の要否を問い合わせ、最初に「要」の応答をした対話エージェントを選択しても良い。
【００２９】
［処理の流れ］
図６は、対話制御システムが行う処理の流れを示す説明図である。まず、ユーザからの入力に対し（図示せず）、対話エージェントが何らかの応答を送信し（＃１）、次の応答のための要求語彙を送信する（＃２）。
応答及び要求語彙を受け取った対話制御システムは、以下の動作を行う。まず応答出力生成部１３は、各対話エージェントからの応答を集計し（＃３）、応答出力データを生成して出力部１４から出力する（＃４，＃５）。応答の集計とは、例えば複数の出力機器が出力部１４に設けられている場合、各出力機器に応じた出力データを生成することが挙げられる。
【００３０】
一方、認識文法生成部１０３は、各対話エージェントからの要求語彙を収集し、統合すると共に、統廃合情報１０４及び認識文法１０２を生成し直す（＃６）。入力解釈部１０５は統廃合情報１０４を、入力部１１は認識文法１０２を、それぞれ取得する（＃７，＃８）。
ユーザからの入力情報の入力があると（＃９）、入力部１１から入力解釈部１０５に音声認識結果が提供される（＃１０）。入力解釈部１０５は、音声認識結果を認識文法１０２を用いて解釈し（＃１１）、音声認識結果について、競合する対話エージェントの有無やその識別子を、統廃合情報１０４を参照して判断する（＃１２）。更に、入力解釈部１０５は、入力情報に対する応答を提供する対話エージェントを選択し（＃１３）、その対話エージェントに解釈結果を提供する（＃１４）。
【００３１】
［効果］
本実施形態に係る対話制御システムでは、要求語彙を統合して認識文法１０２を生成するので、認識文法１０２中に重複する語彙がなく、認識文法１０２の無駄を省くことができる。そのため、認識文法１０２中の語彙の増加を抑制し、入力情報の認識率の低下を防止することができる。さらに、統廃合情報１０４により、入力情報に応答可能な複数の対話エージェントを特定することができる。
＜第２実施形態＞
図７は、第２実施形態例に係る対話制御システムの認識文法生成部１０３の機能説明図である。第２実施形態例に係る対話制御システムは、図１と同様の構成を有している。ただし、認識文法生成部１０３は、認識文法１０２を構成する語彙数の所定の上限を超えない範囲で要求語彙を選択することにより、認識文法１０２を生成する。
【００３２】
図７を参照してより具体的に説明する。認識文法生成部１０３の統合処理部１０３１は、各対話エージェントからの要求語彙を重複する語彙がなくなるよう統合して統合された語彙１０３２を得る。また、統廃合情報１０４を生成する。制約条件バッファ１０３５には、認識文法１０２を生成するための制約条件が記憶されている。この例では、予め認識文法中の語彙数の上限が“６”という制約条件が制約条件バッファ１０３５に記憶されている。削減処理部１０３６は、統合された要求語彙から６つを選択し、残りを削除して認識文法１０３７を生成する。その後、認識文法１０３７を更に変換部１０３３により音声信号に変換し、認識文法１０２を得る。
【００３３】
重複する語彙を省くだけでなく、認識文法構成語彙数の上限を設け、その範囲外となる語彙を認識文法１０２から削除することにより、認識文法１０２を更にコンパクトにでき、認識率の向上と応答性の良さとを担保することができる。
なお、どの語彙を認識文法１０２から削除するかを決定するのに、前述の付随情報を用いることもできる。例えば、重要度の低い語彙を削除したり、重要度の低い対話エージェントの要求語彙を削除することが挙げられる。また例えば、前述のカテゴリが付随情報に含まれる場合には、特定カテゴリに属する語彙は削除対象から除外しても良い。
【００３４】
さらに、認識文法生成部１０３は、認識文法１０２を構成する語彙に選択されなかった語彙と、その語彙を要求した対話エージェントの識別子と、を対応付ける情報（削除情報に相当）を、統廃合情報１０４に書き込んでも良い。これにより、ユーザから見れば入力に対する応答がないように見える場合でも、その原因を内部的に判断することができる。
＜第３実施形態＞
図８は、第３実施形態例に係る対話制御システムの認識文法生成部１０３の機能説明図である。第３実施形態例に係る対話制御システムは、図１と同様の構成を有している。ただし、認識文法生成部１０３は、第２実施形態の機能に加え、各対話エージェントから各要求語彙の重要度を更に取得し、重要度に基づいて要求語彙を選択することにより前記認識文法１０２を生成する。
【００３５】
図８を参照して具体的に説明する。認識文法生成部１０３の統合処理部１０３１は、各対話エージェントからの要求語彙を統合し、統廃合情報１０４を生成する。制約条件バッファ１０３５には、認識文法１０２を生成するための制約条件が記憶されている。この例では、下記の制約条件１〜３が制約条件バッファ１０３５に記憶されているとする。
制約条件１：認識文法中の語彙数の上限が“６”
制約条件２：重要度の高い語彙を優先
制約条件３：重要度が同じ語彙の場合、重要度が高い対話エージェントの要求語彙を優先。
【００３６】
そうすると、削減処理部１０３６は、統合された要求語彙から優先度の高い順に６つを選択しようとする。このとき、対話エージェントＡの要求語彙「ｄｄｄｄ」（優先度６．０）と、対話エージェントＢの要求語彙「ｆｆｆｆ」とが、同じ優先度だが、両方を選択すると認識文法の語彙数が７となってしまう。この場合、対話エージェントそのものの重要度は対話エージェントＡの方が高いので、「ｄｄｄｄ」を選択し、残りを削除して認識文法１０３７を生成する。その後、認識文法１０３７を更に変換部１０３３により音声信号に変換し、認識文法１０２を得る。
【００３７】
上限数内で要求語彙を選択する際に、各要求語彙の重要度に基づいて語彙を選択することにより、ユーザの利便性に対する影響を抑えつつ、高い認識率と応答性の良さとを担保することができる。
さらに、第２実施形態と同様に、認識文法生成部１０３は、認識文法１０２を構成する語彙に選択されなかった語彙と、その語彙を要求した対話エージェントの識別子と、を対応付ける情報（削除情報に相当）を、統廃合情報１０４に書き込んでも良い。これにより、ユーザから見れば入力に対する応答がないように見える場合でも、その原因を内部的に判断することができる。
【００３８】
＜第４実施形態＞
図９は、第４実施形態の対話制御システムの全体構成図である。この実施形態では、対話制御システム１０に接続する対話エージェントの１つが対話サービスポータル３０である。このポータル３０は、入力解釈部１０５、認識文法生成部１０３、応答出力生成部１３を有する。このポータルの下位に、複数の対話エージェントが接続されている（図示せず）。これを繰り返すことで対話エージェントをツリー状に接続することも可能である。その他の各構成要素の機能は、前記第１〜３実施形態と同様とすることができる。
【００３９】
＜第５実施形態＞
図１０は、第５実施形態の対話制御システムの全体構成図である。この実施形態では、対話制御システム１０の入力部１１や出力部１４に複数の入力処理部１０３ａ，ｂ・・・、複数の出力処理部１０６ａ，ｂ・・・が設けられている。各入力処理部１０３及び出力処理部１０６は、複数の入力機器、例えばマイク、キーボード、マウスや複数の出力機器、例えばスピーカ、ディスプレイに対応して設けられている。その他の各構成要素の機能は、前記第１〜３実施形態と同様とすることができる。
【００４０】
＜その他の実施形態＞
（Ａ）前記第１実施形態では音声対話を例に取ったが、手書き文字による対話やキーボード入力による対話にも本発明を適用可能である。
（Ｂ）上記の方法を実行するためのプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここで記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、ＣＤ−ＲＯＭ、ＤＶＤ、光磁気ディスク（ＭＯ）、その他のものが挙げられる。
【００４１】
［実施例１］
図１１は、対話制御システムの一実施例を示す説明図である。この例では、天気サービスエージェント２０ａ、ニュースサービスエージェント２０ｂの二つが対話制御システムに接続されている。ある瞬間において、天気サービス２０ａの認識可能語彙は、「今日」、「明日」、「あさって」、「今日の天気」、「明日の天気」、「あさっての天気」であると仮定する。また、ニュースサービスエージェント２０ｂの認識可能語彙は、「今日」、「明日」、「あさって」、「今日のニュース」、「明日のニュース」、「あさってのニュース」であると仮定する。このとき、「今日」、「明日」、「あさって」が重複しているので、これらの語は認識文法生成部で統廃合情報として記録される。
【００４２】
このような状態でユーザが「明日」という発話を行ったと想定する。入力解釈部１０５は、統廃合情報１０４に基づいて、天気サービスエージェント２０ａとニュースサービスエージェント２０ｂとが競合していると判断する。競合するどちらの対話サービスに入力情報を通知するかを決定する方法としては、前述したように様々な方法が考えられ特に限定されない。
［実施例２］
図１２は、対話制御システムの別の一実施例を示す説明図である。この例では、天気サービスエージェント２０ａ、ニュースサービスエージェント２０ｂの二つが対話制御システムに接続されている。ある瞬間において、天気サービスエージェント２０ａの認識可能語彙は、「今日」、「明日」及び「兵庫」や「大阪」等の地名であると仮定する。一方、ニュースサービスエージェント２０ｂの認識可能語彙は、「今日」、「明日」及び「社会」、「経済」、「政治」、「国際」、「スポーツ」等のジャンルが入ると仮定する。なお、地名とジャンルとで重複している語彙はないものとする。
【００４３】
さらに、天気サービスエージェント２０ａにおいて、「今日」、「明日」の重要度が高く、兵庫を筆頭に周辺の地名、例えば「岡山」、「京都」、「鳥取」、「香川」の重要度が高くなっているとする。一方、ニュースサービスエージェント２０ｂにおいては、「今日」、「明日」、「社会」、「経済」の重要度が高くなっているとする。
今、利用環境の制約から、認識語彙は全部で10個までしか登録できず、天気サービスのほうがよく利用されるので重要度が高いとする。認識文法生成部１０３は、各対話サービスの重要度に従い、認識文法生成時に、天気の要求語彙を7個、ニュースの要求語彙を3個と割り振る。この割り振りは、例えば下式に基づいて算出される。
【００４４】
（天気サービスの重要度）
＝（（語彙の上限数）×（天気サービスの重要度））
÷（（天気サービスの重要度）＋（ニュースサービスの重要度））
（ニュースサービスの重要度）
＝（（語彙の上限数）×（ニュースサービスの重要度））
÷（（天気サービスの重要度）＋（ニュースサービスの重要度））
上式に基づけば、天気サービスの重要度は“６．６”、ニュースサービスの重要度は“３．３”となるので、四捨五入してそれぞれ“７”、“３”となる。
【００４５】
さらに、「今日」、「明日」が重複しているので、認識文法生成部１０３は統廃合情報１０４に記録する。１つの語彙を２つの対話エージェントが共有しているのでこれらを0.5個とカウントすれば天気サービスでは、「今日」、「明日」、「兵庫」、「大阪」、「岡山」、「京都」、「鳥取」、「香川」が選択され、ニュースサービスでは「今日」、「明日」、「社会」、「経済」が選択される。そして、残りの語彙は登録されなかったものとして統廃合情報に記録される。
最終的に、統合された語彙をまとめて、「今日」「明日」「兵庫」「大阪」「岡山」「京都」「鳥取」「香川」「社会」「経済」の10語彙を認識文法１０２に登録する。
【００４６】
＜付記＞
以上の実施形態及び実施例に関し、更に以下の付記を開示する。
（付記１）
複数の対話エージェントと対話可能な対話制御システムにおいて、
ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力部と、
前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成部と、
前記入力部による入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈部と、
前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成部と、
を有する対話制御システム。
【００４７】
（付記２）
前記予め生成された認識文法は、前記対話エージェント群全ての要求語彙を収集することにより生成されている、付記１に記載の対話制御システム。
（付記３）
前記認識文法生成部は、前記認識文法を構成する語彙数の所定の上限を超えない範囲で要求語彙を選択することにより、前記認識文法を生成する、付記１に記載の対話制御システム。
【００４８】
（付記４）
前記認識文法生成部は、各対話エージェントから各要求語彙の重要度を更に取得し、前記重要度に基づいて要求語彙を選択することにより、前記認識文法を生成する、付記３に記載の対話制御システム。
（付記５）
前記認識文法生成部は、各対話エージェント自体の重要度を更に取得し、前記重要度に基づいて要求語彙を選択することにより、前記認識文法を生成する、付記３に記載の対話制御システム。
【００４９】
（付記６）
前記認識文法生成部は、各対話エージェントの利用頻度を更に取得し、前記利用頻度に基づいて要求語彙を選択することにより、前記認識文法を生成する、付記３に記載の対話制御システム。
（付記７）
前記認識文法生成部は、各対話エージェントが要求語彙を要求した日時を更に取得し、前記日時に基づいて要求語彙を選択することにより、前記認識文法を生成する、付記３に記載の対話制御システム。
【００５０】
（付記８）
前記認識文法生成部は、前記認識文法を構成する語彙に選択されなかった語彙と、その語彙を要求した対話エージェントの識別子と、を対応付ける削除情報を生成する、付記３〜７のいずれかに記載の対話制御システム。
（付記９）
複数の対話エージェントと対話可能な対話制御システムが実行する対話制御方法において、
ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力ステップと、
前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成ステップと、
前記入力ステップにおける入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈ステップと、
前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成ステップと、
を含む対話制御方法。
【００５１】
（付記１０）
複数の対話エージェントと対話可能な対話制御システムが実行する対話制御プログラムを記録した、コンピュータ読み取り可能な記録媒体であって、
ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力ステップと、
前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成ステップと、
前記入力ステップにおける入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈ステップと、
前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成ステップと、
を実行する対話制御プログラムを記録した、コンピュータ読み取り可能な記録媒体。
【００５２】
（付記１１）
複数の対話エージェントと対話可能なコンピュータが実行する対話制御プログラムであって、
ユーザにより入力された入力情報を予め生成された認識文法に基づいて解釈する入力ステップと、
前記解釈の結果に対応する応答を行う対話エージェント群から各対話エージェントが要求する語彙を取得し、各対話エージェントの要求語彙のうち重複するものを排除することにより各対話エージェントの要求語彙を統合して前記認識文法を生成し直し、各対話エージェントの要求語彙のうち重複する語彙を要求した２以上の競合する対話エージェントの識別子と前記語彙とを対応付ける統廃合情報を生成し、各対話エージェントの要求語彙の取得と前記認識文法及び前記統廃合情報の生成とを一対話毎に行う認識文法生成ステップと、
前記入力ステップにおける入力情報の解釈結果と前記統廃合情報とに基づいて入力情報について競合する対話エージェントの有無を判断し、所定の基準または前記統廃合情報に応じていずれかの対話エージェントを選択し、選択した対話エージェントに前記入力情報を振り分ける入力解釈ステップと、
前記入力情報の解釈結果に対応する応答を前記選択した対話エージェントから取得し、応答出力用データを生成する応答出力生成ステップと、
を前記コンピュータに実行させる対話制御プログラム。
【図面の簡単な説明】
【００５３】
【図１】第１実施形態に係る対話制御システムの構成図
【図２】各対話エージェントが対話制御システムに通知する要求語彙の概念説明図
【図３】認識文法生成部の機能説明図
【図４】認識文応生成部による要求語彙の統合例を示す説明図
【図５】入力解釈部の機能を示す説明図
【図６】対話制御システムが行う処理の流れを示す説明図
【図７】第２実施形態例に係る対話制御システムの認識文法生成部の機能説明図
【図８】第３実施形態例に係る対話制御システムの認識文法生成部の機能説明図
【図９】第４実施形態の対話制御システムの全体構成図
【図１０】第５実施形態の対話制御システムの全体構成図
【図１１】対話制御システムの一実施例を示す説明図
【図１２】対話制御システムの別の一実施例を示す説明図
【符号の説明】
【００５４】
１１：入力部
１２：入力管理部
１３：応答出力生成部
１４：出力部
２０：対話エージェント
１０１：音声認識部
１０３：認識文法生成部
１０５：入力解釈部
【図１】
2005242243.tif 000003
【図２】
2005242243.tif 000004
【図３】
2005242243.tif 000005
【図４】
2005242243.tif 000006
【図５】
2005242243.tif 000007
【図６】
2005242243.tif 000008
【図７】
2005242243.tif 000009
【図８】
2005242243.tif 000010
【図９】
2005242243.tif 000011
【図１０】
2005242243.tif 000012
【図１１】
2005242243.tif 000013
【図１２】
2005242243.tif 000014