(57)【要約】【課題】  さまざまな対話の状況や訂正発話の形式に対して柔軟に訂正発話の検出を行い、システムによる誤認識を修正することにより、システムが利用者の発話を誤認識した際にも、利用者とシステムがスムーズに対話を進めることを可能とする技術を提供する。【解決手段】  対話の種類や利用者の音声を認識するために使用したルール、システムが出力したメッセージ等、対話の状態の変化を記録する対話履歴を設け、対話履歴中の情報とあらかじめ用意されているテンプレートを用いて利用者の訂正発話を認識するためのルールを生成する。利用者の発話が、生成されたルールを用いて認識された場合、利用者の発話を訂正発話と見なし、誤認識を修正する処理に移行する。誤認識の修正では、訂正発話の認識結果およびそれまでの利用者の発話の認識結果の両方を利用することにより修正を行う。【選択図】  図１
2005316247.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも、利用者の音声を入力するための手段と、
入力された利用者の音声を認識する手段と、
システムから利用者へのメッセージを音声に変換し出力するための手段と、
利用者の音声を認識するためのルールである音声認識用ルールを格納する音声認識用ルール格納手段と、
利用者とシステムとの間で行われる対話の内容に関する情報である対話シナリオを格納する対話シナリオ格納手段と、
前記対話シナリオ格納手段に格納されている情報に基づいて、利用者の音声の認識やシステムからのメッセージの音声出力等を制御することにより対話を実現する対話制御手段と、
利用者が要求する処理であるタスクを実行し結果を得るタスク実行手段と、
を有する音声対話システムにおいて、
対話の進行具合、利用者の音声を認識するために使用した音声認識用ルールおよび利用者の音声を認識した結果等からなる情報の時系列である対話履歴を格納する対話履歴格納手段と、
システムが利用者の音声を誤認識した際に、利用者がそれを訂正するために発話する訂正発話の認識に用いられる音声認識用ルールである訂正発話用ルールを生成する際に使用されるテンプレートを格納する訂正発話用テンプレート格納手段と、
前記対話履歴中の情報と前記訂正発話用テンプレート格納手段中のテンプレートを使用して、訂正発話用ルールを生成する手段と、
を有し、利用者の発話が前記訂正発話用ルールを用いて認識された場合、利用者の音声を訂正発話と判断し、前記対話履歴中の情報と訂正発話の認識結果に基づいて、システムの誤認識を訂正することを特徴とする音声対話システム。
【請求項２】
請求項１記載の音声対話システムにおいて、前記訂正発話用ルールを生成する方法として、
前記対話履歴中に記録されている音声認識用ルールを複製し、訂正発話用ルールとして利用する方法、
前記対話履歴中に記録されている音声認識用ルールを前記訂正発話用テンプレート格納手段中のテンプレートに埋め込む方法、
前記対話履歴中に記録されている音声認識用ルールから、前記対話シナリオに基づいてシステムが注目している単語あるいは句に関するルールを抽出し、それらを前記訂正発話用テンプレート格納手段中のテンプレートに埋め込む方法、
前記対話履歴中に記録されている音声認識用ルールから、前記対話シナリオに基づいてシステムが注目している単語あるいは句に関するルールを抽出し、システムが注目している単語あるいは句の種類を表す名称と抽出したルールを前記訂正発話用テンプレート格納手段中のテンプレートに埋め込む方法、
前記対話履歴中に記録されている音声認識用ルールから、前記対話シナリオに基づいてシステムが注目している単語あるいは句に関するルールを抽出し、抽出したルールと利用者の音声を認識した結果中に含まれるシステムが注目している単語あるいは句を前記訂正発話用テンプレート格納手段中のテンプレートに埋め込む方法、
前記対話履歴中に記録されている音声認識用ルールから、前記対話シナリオに基づいてシステムが注目している単語あるいは句に関するルールを抽出し、対話中で次に使用される音声認識用ルールに抽出したルールを埋め込む方法、
前記対話履歴中に記録されている音声認識用ルールから、前記対話シナリオに基づいてシステムが注目している単語あるいは句に関するルールを抽出し、また、対話中で次に使用される音声認識用ルール中からもシステムが注目している単語あるいは句に関するルールを抽出し、抽出されたルールを前記訂正発話用テンプレート格納手段中のテンプレートに埋め込む方法、
の内、少なくとも一つ以上の方法を用いて訂正発話用ルールを生成することを特徴とする音声対話システム。
【請求項３】
請求項１記載の音声対話システムにおいて、利用者の訂正発話が入力されたと判断された場合に誤認識を修正する方法として、
前記対話履歴中に記録されている利用者の音声の認識結果中における第二位の候補を修正後の単語あるいは句とする方法、
前記対話履歴中に記録されている利用者の音声の認識結果中における第一位の単語あるいは句の候補と、訂正発話の認識結果中における第一位の候補を比較し、前者が後者と異なる場合は訂正発話の認識結果中の第一位の候補を修正後の単語あるいは句とし、同じ場合は訂正発話の認識結果の第二位の候補を修正後の単語あるいは句とする方法、
前記対話履歴中に記録されている利用者の音声の認識結果中における第一位の単語あるいは句の候補と、訂正発話の認識結果中における第一位の候補を比較し、前者が後者と異なる場合は訂正発話中の第一位の候補を修正後の単語あるいは句とし、異なる場合は前記対話履歴中に記録されている利用者の音声の認識結果中における第二位の候補を修正後の単語あるいは句とする方法、
前記対話履歴中に記録されている利用者の音声の認識結果と訂正発話の認識結果における単語あるいは句の候補を、共通して含まれているかどうか、各単語あるいは句の信頼度、順位等に基づいた評価値によって統合し、対話履歴中に記録されている利用者の音声の認識結果中の第一位の候補とは異なり、且つ評価値の最も高い候補を修正後の単語あるいは句とする方法、
の内、少なくとも一つ以上の方法を用いて、誤認識の修正を行うことを特徴とする音声対話システム。
【請求項４】
請求項３記載の音声対話システムにおいて、利用者の訂正発話が継続して認識される場合、
継続した訂正発話およびその直前のユーザ発話の範囲内で、正しい候補として選択された単語あるいは句、あるいは修正後の単語あるいは句として選択された単語あるいは句は除外した後、修正後の単語あるいは句を選択することを特徴とする音声対話システム。
【請求項５】
請求項１記載の音声対話システムにおいて、利用者の訂正発話を検出し、誤認識を訂正した後、元の対話に復帰する方法として、
訂正発話が検出された際の対話状態に復帰する方法、
訂正発話が検出された際の対話状態の次の状態に復帰する方法、
訂正された単語あるいは句を確認するメッセージを利用者に対して出力し、利用者から肯定的な応答が得られた場合、訂正発話が検出された際の対話状態に復帰し、否定的な応答が得られた場合は、訂正された単語あるいは句の再入力を促すメッセージの利用者に対する出力、利用者の音声認識、および認識された単語あるいは句の確認、を利用者から肯定的な応答が得られるまで繰り返す方法、
訂正された単語あるいは句を確認するメッセージを利用者に対して出力し、利用者から肯定的な応答が得られた場合、訂正発話が検出された際の対話状態に復帰し、否定的な応答が得られた場合は、単語あるいは句の訂正を取り消して訂正発話が検出された際の対話状態に復帰する方法、
訂正された単語あるいは句を確認するメッセージを利用者に対して出力し、利用者から肯定的な応答が得られた場合、訂正発話が検出された際の対話状態に復帰し、否定的な応答が得られた場合は、単語あるいは句の訂正を取り消した後、対象となっている単語あるいは句を入力するための対話状態に復帰する方法、
訂正された単語あるいは句を確認するメッセージを利用者に対して出力し、利用者から肯定的な応答が得られた場合、訂正発話が検出された際の対話状態の次の状態に移行し、否定的な応答が得られた場合は、訂正された単語あるいは句の再入力を促すメッセージの利用者に対する出力、利用者の音声認識、および認識された単語あるいは句の確認、を利用者から肯定的な応答が得られるまで繰り返す方法、
訂正された単語あるいは句を確認するメッセージを利用者に対して出力し、利用者から肯定的な応答が得られた場合、訂正発話が検出された際の対話状態の次の状態に移行し、否定的な応答が得られた場合は、単語あるいは句の訂正を取り消して訂正発話が検出された際の対話状態に復帰する方法、
訂正された単語あるいは句を確認するメッセージを利用者に対して出力し、利用者から肯定的な応答が得られた場合、訂正発話が検出された際の対話状態の次の状態に移行し、否定的な応答が得られた場合は、単語あるいは句の訂正を取り消した後、対象となっている単語あるいは句を入力するための対話状態に復帰する方法、
の内、少なくとも一つ以上の方法を使用して元の対話に復帰することを特徴とする音声対話システム。
【請求項６】
請求項５記載の音声対話システムにおいて、訂正された単語あるいは句を確認するメッセージを利用者に対して出力した後、再度利用者から訂正発話が入力された場合、認識された単語あるいは句を用いて修正を行った後、再度、確認を行うメッセージを利用者に対して出力することを特徴とする音声対話システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声を用いて利用者とシステムが対話を行うことにより、利用者にサービスを提供する音声対話システム、利用者用インタフェース、あるいはソフトウェアに関する。
【背景技術】
【０００２】
音声を用いて利用者と対話を行い、利用者にサービスを提供する技術としては、「特許文献１」や「特許文献２」が挙げられる。  また、利用者とシステムとの音声を用いた対話において、システムが利用者の発話を誤認識した際に、利用者がシステムの誤認識を訂正するために発話する訂正発話を扱った技術としては、「特許文献３」や「特許文献４」が挙げられる。「特許文献３」では、訂正発話の特徴的パラメータが通常の発話とは異なることを利用してシステムの誤認識を検出し、それを修正する技術が述べられている。「特許文献４」では、利用者の発話に対するシステムの返答中に利用者からの訂正発話を受け付けた場合、訂正発声の認識結果に基づいてシステムの返答内容を変更する技術が述べられている。
【特許文献１】特許出願２００２−２４７９９、「音声対話装置及び方法、音声対話プログラム並びにその記録媒体」
【特許文献２】特許出願２００２−１２２４９１、「音声対話システム及び音声対話方法」
【特許文献３】特許出願２０００−４５４４２、「音声認識結果の誤り訂正方法およびその装置」
【特許文献４】特許出願２００２−４５５２、「音声対話方法および装置」
【発明の開示】
【発明が解決しようとする課題】
【０００３】
「特許文献１」や「特許文献２」に示されるような従来の多くの音声対話システムにおいては、利用者の発話を認識した結果をシステムが確認する際に、利用者の発話としては「はい」か「いいえ」のみしか想定されていない場合が多かった。しかし、システムが誤認識した内容を含む確認を行った場合、利用者は「いいえ」だけでなく、誤りを訂正するための内容を含む発話を行うことが多いことが知られている。このため、システムが利用者の発話を誤認識した際に利用者とシステムのスムーズな対話を行うことが困難であった。
【０００４】
一方、「特許文献３」では訂正発話の特徴的パラメータを利用した訂正発話の検出方法が述べられているが、さまざまな対話の形式を想定した場合、訂正発話と通常発話における差が見られない場合もあり、十分とは言えない。また、訂正発話として、訂正を行う語・句を含む発話のみが想定されているが、誤認識した語・句と訂正を行う語・句の両方を含む発話や誤認識した語を否定するだけの発話等、訂正発話にはさまざまな形式が想定される。このため、全ての訂正発話に正しく対応できないという問題がある。
【０００５】
また、「特許文献４」では、上記で述べたようなさまざまな形態の訂正発話をどのように認識するか、すなわち訂正発話を認識するために必要となるルールをどのように用意するかについては述べられていない。上記で述べたように訂正発話にはさまざまな形式が想定されることに加え、対話形式によっては状況毎に訂正発話で訂正される語・句が変化する場合がある。例えば、ある対話から別の対話に自由に移行できる形式の対話システムにおいて、別の対話への移行が、元の対話を継続するために行った発話を誤認識した結果である場合、その直後の訂正発話は元の対話の状況に依存する。このため、訂正発話を認識するためのルールをあらかじめ用意しておくためには、対話におけるあらゆる状況を考慮しなければならない。しかし、より柔軟な対話を実現するためには対話が複雑になるため、あらかじめ全ての状況を想定して必要なルールを用意しておくことが困難になるという問題がある。
【０００６】
本発明の目的は、さまざまな対話の状況や訂正発話の形式に対して柔軟に訂正発話の検出を行い、システムによる誤認識を修正することにより、システムが利用者の発話を誤認識した際にも、利用者とシステムがスムーズに対話を進めることを可能とする技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明では、対話の進行具合や利用者の音声を認識するために使用したルール、利用者の音声を認識した結果等、対話の状態の変化を記録する対話履歴を設け、対話履歴中の情報とあらかじめ用意されているテンプレートを用いて利用者の訂正発話を認識するためのルールを生成する。利用者の音声が、生成されたルールを用いて認識された場合、利用者の音声を訂正発話と見なし、誤認識を修正する処理に移行する。誤認識の修正では、訂正発話の認識結果およびそれまでの利用者の発話の認識結果の両方を利用することにより修正を行う。
【発明の効果】
【０００８】
本発明によれば、対話中で使用された各種情報を格納する対話履歴を参照することにより訂正発話を認識するためのルールを生成し、生成したルールに基づいて訂正発話の有無を判定することにより、さまざまな対話の状況や訂正発話の形式に対して柔軟に訂正発話の検出を行うことが可能となる。また、訂正発話の認識結果およびそれまでの利用者の発話の認識結果の両方を利用して誤認識の修正を行うことにより、精度良く修正を行うことが可能となる。以上により、音声対話システムが利用者の発話を誤認識した際にも、利用者と音声対話システムがスムーズに対話を進めることが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の一実施例を図１から図２５を用いて説明する。
【００１０】
図１は本発明を適用した音声対話システムの構成図である。図１において、マイク１０１は利用者の音声を入力するための装置、音声入力部１０２は利用者の音声をデジタル信号に変換するための装置である。スピーカ１０３は音声対話システムからの質問や確認あるいは処理結果等を音声として出力するための装置、音声出力部１０４はデジタル信号を音声としてスピーカ１０３から出力できるアナログ信号に変換するための装置である。情報処理部１０５は、音声対話システムにおける各種処理を行うための装置である。記憶部１０６は音声対話システムに必要となる各種処理を行うためのプログラムを格納するための装置であり、利用者が入力した音声信号から利用者の発話した内容を認識するための音声認識プログラム１０７、音声対話システムからの質問や確認、処理結果等のメッセージを音声として出力するための音声合成プログラム１０８、利用者と音声対話システムとの間の対話の進行を制御するための対話制御プログラム１０９、利用者からの要求に応じた処理を行うためのタスク実行プログラム１１０、音声対話システムによる誤認識を訂正するために利用者が発話する訂正発話を認識する際に使用される文法ルールを生成するための訂正発話用ルール生成プログラム１１１が格納される。また、記憶部１１２は対話の状態変化に関する情報である対話履歴１１３を格納するための装置である。対話シナリオ１１４には対話制御プログラム１０９で使用される対話の進行に関する情報が記述される。音声認識用文法ルール１１５は対話中に利用者が入力する発話を認識するために使用される文法ルールであり、音声認識プログラム１０７において使用される。訂正発話用テンプレート１１６は訂正発話を認識するための文法ルールを生成する際に使用されるテンプレートであり、訂正発話用ルール生成プログラム１１１において使用される。以上の各装置は全て、パーソナルコンピュータに用いられるような一般的な装置を利用することが可能である。また、音声認識プログラム１０７としては、良く知られた技術、例えば、「確率モデルによる音声認識、コロナ社、１９８８年」にあるような技術を使用することができる。音声合成プログラム１０８としても同様に、良く知られた技術、例えば、「音声情報処理  電子情報通信工学シリーズ、森北出版、１９９８年」にあるような技術を使用することができる。タスク実行プログラム１１０としては、音声対話システムから実行可能なプログラムであれば、どのようなプログラムでも利用することが可能であり、データベースの検索や各種計算、装置の制御等の一般の計算機において利用可能な機能を利用することができる。
【００１１】
図２は対話シナリオ１１４に格納される対話に関する情報のフォーマットである。図２において、対話名２０１はそれぞれの対話を識別するための文字列である。スロット名２０２および２０５はタスクを実行するために利用者が入力する必要がある項目であるスロットの名称を表わす文字列であり、各スロットに対応する情報であるスロット値は、利用者が音声により入力することを示す。システムプロンプト２０３および２０６は、スロット名２０２および２０５に対する情報の入力を利用者に促す際に出力するメッセージを表わす文字列である。システムプロンプトとしては、例えば、スロットが会議の開始時間に関する場合、「会議は何時からですか？」といったような文を使用することができる。利用者発話認識用文法名２０４および２０７は利用者の発話を認識するために使用する音声認識用文法ルールの名称である。確認用プロンプト２０８は、利用者によって入力された各スロット値を確認するために出力されるメッセージを表わす文字列である。この文字列には、スロット名やスロット値を埋め込むための特殊な文字列を含むことができる。例えば、スロット値を埋め込むための文字列をスロット名を（）で囲むことにより表す場合、「開始時間は(スロット名１)、終了時間は(スロット名２)でよろしいですか」といったような文字列を使用することができる。タスク実行用コマンド２０９はタスク実行用プログラム１１０を実行するためのコマンドであり、フォーマットはタスク実行プログラム１１０の解釈可能な形式となる。例えば、タスク実行用プログラム１１０において、開始時間と終了時間を引数として利用可能な会議室を検索する処理が「SearchRoom」というコマンドで実行される場合、「SearchRoom (スロット名１) (スロット名２)」というように記述しておけば良い。ここでも、（）で囲まれたスロット名によりスロット値が埋め込まれると仮定している。利用者確認発話用文法名２１０は、確認用プロンプト２０８に対する利用者の応答を認識するための音声認識用文法ルールの名称である。結果プロンプト２１１はタスクの実行結果を利用者に報告するための文字列であり、タスクの実行結果を埋め込むための特殊な文字列を含むことができる。例えば、タスクの実行結果がResult[n]という文字列の配列変数に入力される場合、「利用可能な会議室は(Result[1])、(Result[2])、(Result[3])です」というような文を使用することができる。ここで、（）で囲まれた配列変数名により、結果の各文字列が埋め込まれると仮定している。また、スロット名やスロット値を埋め込めるようにすることもできる。
【００１２】
図３は音声対話システムにおいて実行される対話の一例を示す。図３における対話では、３種類のスロットが想定されており、それぞれ会議室の利用開始時間、終了時間、会議室名となっている。３０１、３０３、３０５は各スロット値の入力を利用者に促すためのシステムプロンプトであり、３０２、３０４、３０６は利用者の発話である。３０７は利用者が入力した情報を確認するための確認プロンプトであり、３０８は確認プロンプトに対する利用者の応答である。３０９はタスク実行結果を報告する結果プロンプトである。
【００１３】
音声認識用文法ルール１１５は、ノードとアークを有する状態遷移ネットワークによって表現する。図４に状態遷移ネットワークで表現した音声認識用文法ルールの例を示す。図４において、４０１、４０４、４０９、４１４はノードを、４０３、４０６、４０８、４１１、４１３はあるノードから他のノードへの遷移を表わすアーク、４０２、４０５、４０７、４１０、４１２はアークで示される遷移が実行されるための条件となる利用者発話中の単語あるいは句を表わす。例えば音声認識プログラム１０７が利用者の発話を認識した結果、「１０時」、「から」、「予約して下さい」を出力したとすると、この結果を図４に示す文法ルールに順に適用した場合、４０１で示すノードから開始して、ノード４０１、アーク４０３、ノード４０４、アーク４０８、ノード４０９、アーク４１３、ノード４１４と辿ることができる。音声認識プログラム１０７は、このように文法ルールの最初から最後のノードまで辿ることができる単語(句)列のみを音声認識の結果として出力する。
【００１４】
図５に、図４で示す音声認識用文法ルールを音声対話システムにおいて記述するためのフォーマットを示す。図５において、文法名５０１は各文法ルールを識別するための名称であり、これが図２における利用者発話認識用文法名２０４、２０７あるいは２１０として記述される。ノード名５０２はノードを識別するための文字列であり、図４における４０１、４０４、４０９、４１４の名称に対応する。スロット名５０３は次のノードへの遷移条件となる利用者の発話内容が図２に示す対話シナリオ中のスロット名に対応する場合、そのスロット名を記述する。対応するスロット名がない場合は空白とする。単語名５０４から５０５は、次のノードへの遷移条件となる単語あるいは句を記述する。遷移条件となる単語名が空白の場合は、無条件に遷移先のノードに遷移することを表す。次ノード名５０６は遷移先のノード名である。このように、文法ルールは、あるノードから次のノードへの遷移を単位として記述する。
【００１５】
図６に、図５で示す音声認識用文法ルールを適用した後に出力される音声認識結果を記述するためのフォーマットを示す。図６において、信頼度６０１は音声認識結果がどの程度正しいかを表わす数値である。音声認識プログラムが複数の単語（句）列を出力可能な場合は、図６に示す音声認識結果が複数出力される。信頼度６０１は複数出力される音声認識結果の順位付けを行うために使用される。この信頼度は、後述する各単語の信頼度の和や平均値等に基づいて決定することができる。スロット名６０２および６０５は、図５におけるスロット名５０３に対応する。単語名６０３および６０６は遷移条件として採用された単語の名称であり、図５における５０４から５０５の単語名のいずれかが記述される。単語信頼度６０４および６０７は、音声認識プログラムが出力した各単語がどの程度正しいかを表わす数値であり、通常、音声認識プログラムでは単語（句）列が出力される際に同時に出力される。また図６において、スロット名が空白の項目については省略することができる。
【００１６】
図７に訂正発話用テンプレート１１６を記述するためのフォーマットを示す。図７に示す訂正発話用テンプレートは、あらかじめ用意されている文法ルールの間に別の文法ルールを挿入する形式となっている。テンプレートルール７０１、７０３、７０５は、あらかじめ用意されている文法ルールを表しており、その記述フォーマットは図５に示す音声認識用文法ルールと同様である。但し、挿入される文法ルールがテンプレートルールの直前に接続される場合は、テンプレートルールの先頭ノードのノード名として特別なノード名、例えば「Ｘ」等を記述する。また、挿入される文法ルールがテンプレートルールの後に接続される場合は、挿入される文法ルールに遷移するノードの次ノードとして挿入箇所を表わす特別なノード名、例えば「Ｘ」等を記述する。これにより、テンプレートに文法ルールを挿入する際は、テンプレート中の特別なノード名を検索し、そこに文法ルールを結合すれば良い。挿入ルールタイプ７０２および７０４は、テンプレートに挿入される文法ルールのタイプを表す。挿入ルールタイプとしては、「文」、「句」、「スロット値」、「スロット名」を用意する。それぞれのタイプは、テンプレートに別の文法ルールを挿入する際に使用される。図７では、テンプレートルールの間に、挿入される文法ルールが挟まれる形のテンプレートを表しているが、挿入される文法ルールから開始されるテンプレート、あるいは挿入される文法ルールで終了するテンプレートにすることもできる。
【００１７】
図８に、対話履歴１１３に格納される対話の状態変化に関する情報のフォーマットを示す。図８において対話名８０１は、この情報に関連する対話の名称であり、図２における対話名２０１と同じ内容が記述される。履歴種類８０２は、記述されている情報が音声対話システムに関するものであるか利用者に関するものであるかを示す。図２に示す対話シナリオでは、音声対話システムから出力されるプロンプトと利用者の発話の繰返しによって対話が進行することになる。よって、履歴種類８０２には、システムプロンプトに関する情報の場合は「システム」、利用者の発話に関する情報の場合は「利用者」が記述されることになる。対話情報８０３には、システムプロンプトあるいは利用者の発話に関する情報が記述される。対話履歴１１３には、図８で示される音声対話システムに関する情報および利用者に関する情報が、対話の進行に従った時系列情報として記録される。
【００１８】
図９にシステムプロンプトに関する情報のフォーマットを示す。図９において、プロンプト種類９０１はシステムプロンプトの種類を表わす項目であり、「質問」、「確認」、「応答」が記述される。システムプロンプトの種類は図２に示す対話シナリオを参照することにより容易に決定することができる。図１０に、利用者の発話に関する情報のフォーマットを示す。図１０において、利用者発話認識用文法名１００１は、利用者の発話を認識するために使用された音声認識用文法ルールの名称であり、図２における利用者発話認識用文法名２０４、２０７あるいは２１０が記述される。スロット名１００２は、利用者の発話が関連するスロットの名称を表しており、図２に示すスロット名２０２あるいは２０５が記述される。利用者発話認識結果１００３には、利用者の発話を認識した結果が記述される。認識結果のフォーマットは、図６に示すフォーマットと同じである。
【００１９】
図１１は、対話制御プログラム１０９における処理の流れ図である。図１１の流れ図では、ある種類の対話が選択された直後の状態を想定している。この状態では、全てのスロットの値が空白の状態である。図１１において、ステップ１１０１では値が空白であるスロットを一つ選択し、対象スロットとする。スロットの選択方法は、対話シナリオの最初から順にスロットを検索し、値が空白であるかどうかを調べれば良い。また、図２における対話シナリオで各スロットに対して優先順位を追加することも可能であり、その場合は、優先順位の高い順にスロットを調べれば良い。ステップ１１０２では、対象とするスロットに対応するシステムプロンプトを対話シナリオから読み出し、音声として出力する。ステップ１１０３では、対象とするスロットに対応する利用者発話認識用文法名に示される文法ルールを音声認識プログラムに送り、音声認識プログラム１０７では指定された文法ルールに基づいて利用者発話の認識を行い、認識結果を対話制御プログラムに返す。対話制御プログラムでは、認識結果からスロットに関連する値を抽出し、スロット値として設定する。ステップ１１０４では、ステップ１１０２およびステップ１１０３の内容に基づいて、対話履歴１１３の内容を更新する。ステップ１１０５では、値が空白のスロットがあるかどうかを調べ、ある場合はステップ１１０１に戻る。全てのスロット値が設定されている場合は、ステップ１１０６に移る。ステップ１１０６では、対話シナリオから確認用プロンプトを読み込み、必要に応じてスロット値やスロット名の埋め込みを行った後、音声として出力する。ステップ１１０７では、対話履歴の内容と音声認識用文法ルールを元に、訂正発話用文法ルールを生成する。訂正発話用文法ルールの生成方法については後述する。ステップ１１０８では、対話シナリオ中の利用者確認用文法名に示される文法ルールと、生成された訂正発話用文法ルールを音声認識プログラムに送り、音声認識プログラムでは指定された文法に基づいて利用者発話の認識を行い、認識結果を対話制御プログラムに返す。ステップ１１０９では、ステップ１１０６およびステップ１１０８の内容に基づいて、対話履歴の内容を更新する。ステップ１１１０では、ステップ１１０８で得られた利用者発話の認識結果が、ステップ１１０６における確認内容の否定であればステップ１１１１でスロットの値を全て空白にして、ステップ１１０１に戻る。ステップ１１１０において、利用者の発話が訂正発話用文法によって認識された結果である場合は、ステップ１１１４においてスロット値の修正を行い、ステップ１１０６に戻る。スロット値の修正方法についても後述する。ステップ１１１０において、利用者の発話がステップ１１０６における確認内容を肯定する発話であればステップ１１１２に進み、対話シナリオからタスク実行用コマンドを読み込み、必要に応じてスロット値を埋め込んだ後、タスク実行プログラム１１０でコマンドを実行し、結果を対話制御プログラムは受け取る。ステップ１１１３では、対話シナリオから結果プロンプトを読み込み、必要に応じてコマンドの実行結果を埋め込んだ後、音声として出力する。上記の処理では、ステップ１１１４で修正を行った後、全体の確認であるステップ１１０６に戻っているが、ステップ１１１４で修正を行った値についてのみ確認を行い、利用者から肯定の応答が得られた場合にステップ１１０６に戻るようにしても良い。この場合、修正値の確認用プロンプトを図２に示す対話シナリオに追加し、使用するようにすれば良い。また、修正値に対して利用者から肯定の応答が得られなかった場合は、修正対象となっているスロット値の入力を利用者に促すプロンプトを出力し、利用者からの入力を受けるようにしても良い。この場合に必要となるプロンプトも図２に示す対話シナリオに容易に追加することができる。修正値に対して利用者から肯定の応答が得られなかった場合、スロットを修正前の状態に戻した後、ステップ１１０６に戻るようにすることもできる。さらに、修正を行った後、確認に戻らず、直接次の対話状態に移行するようにしても良い。すなわち、図１１に示す流れ図の場合、ステップ１１１４の後、ステップ１１１２に進むようにすることができる。
【００２０】
次に、訂正発話用文法ルールを生成する方法について説明する。ここでの説明では、簡単のため、対話履歴中には、システムプロンプトおよび利用者の発話に関する最新の情報のみが格納されている場合を想定する。対話履歴中に最新の情報以前の情報を格納する場合も、以下で述べる方法は同様に使用することができる。
【００２１】
訂正発話用ルールを生成する方法には、訂正発話用テンプレートを使用する方法と、使用しない方法がある。訂正発話用テンプレートを使用しない方法では、対話履歴中の利用者発話認識用文法名で指定される文法ルールを訂正発話用文法ルールとして複製する。検索された文法ルールが図４に示す文法ルールであるとすると、これをそのまま訂正発話用文法ルールとして使用する。
【００２２】
次に訂正発話用テンプレートを用いた訂正発話用文法ルールの生成方法について説明する。この方法では、訂正発話用テンプレート中に含まれている挿入ルールタイプによって、異なる方法を使用する。訂正発話用テンプレート中のテンプレートルールを図１２および図１３に示す文法ルールとし、これらの文法ルールの間に別の文法ルールが挿入される場合を想定する。図１３において、「null」１３０２は、無条件に次のノードに遷移することを表している。また、訂正発話用テンプレート中の挿入ルールタイプを「文」とし、対話履歴中の利用者発話認識用文法名で指定される文法ルールが図４に示す文法ルールであるとする。この場合、図４に示す文法ルール全体が図１２および図１３で表されるテンプレートルール間に挿入され、図１４に示すような訂正発話用文法ルールが生成される。図１４に示す文法ルールでは、図１２および図１３において「Ｘ」で示されているノード１２０１および１３０１に、それぞれ図４における文法ルールの先頭ノード４０１および最終ノード４１４が接続されており、１４０１から１４０５で示される文法ルールが図１２のテンプレートルール、１４０５から１４１３で示される文法ルールが図４で示される文法ルール、１４１３から１４１５で示される部分が図１３のテンプレートルールに対応している。また、文法ルールを訂正発話用テンプレートへ挿入する際、挿入する文法ルールの語尾変化や適切な語の削除あるいは追加を行った後、挿入を行うようにしても良い。例えば、挿入する文法ルールの語尾が「お願いします」であり、その後に接続するテンプレートルールが「ですが」であった場合、「お願いします」を「お願いしたいの」と修正を行った後接続すれば、自然な表現に対応できる。このような修正は、個々の表現毎に変換ルールを用意することにより、容易に実現可能である。
【００２３】
訂正発話用テンプレート中のテンプレートルール間の挿入ルールタイプが「句」である場合の訂正発話用文法ルールの生成方法について説明する。テンプレートルールは図１２および図１５で示される文法ルール、対話履歴中の利用者発話に関する情報中のスロット名は「開始時刻」、対話履歴中の利用者発話認識用文法名で指定される文法ルールは図４であるとする。さらに、図４に示されるノード１（４０１）からノード２（４０２）への遷移に関する文法ルールにスロット名「開始時刻」が記述されているとする。この場合、対話履歴中のスロット名に対応するルールのみを図４に示す文法ルールから抽出し、テンプレートへ挿入する。すなわち、図４に示すノード１（４０１）からノード２（４０２）までの文法ルールを取り出し、先頭ノードを図１２に示すテンプレートルールの「Ｘ」で示されるノード１２０１に接続し、最終ノードを図１５に示すテンプレートルールの「Ｘ」で示されるノード１５０１に接続することにより、図１６に示す訂正発話用文法ルールが生成される。図１６において、１６０１から１６０５までの文法ルールが図１２に示すテンプレートルール、１６０７から１６１１までの文法ルールが図１５に示すテンプレートルールであり、１６０５から１６０７までの文法ルールが、対話履歴に基づいて抽出された文法ルールに対応している。
【００２４】
訂正発話用テンプレート中のテンプレートルール間の挿入ルールタイプが「句」であり、対話履歴中の利用者発話認識用文法名で示される文法ルールが対話履歴により指定されるスロット名を複数含んでいる場合は、それらの組み合わせを含む訂正発話用文法ルールを生成する。対話履歴によって指定される文法ルールが図１７であり、ノード１７０１から１７０３のルールに対応するスロット名とノード１７０５から１７０７に対応するスロット名が、対話履歴によって指定されるスロット名であるとする。訂正発話用テンプレートが上記と同様に、図１２および図１５で示されるテンプレートルールから構成されているとすると、それぞれのスロット名に対応する文法ルールを含む訂正発話用文法ルールとして図１８および図１９に示す文法ルールが生成される。図１８ではノード１８０１から１８０３までの文法ルールが、また、図１９ではノード１９０１から１９０３までの文法ルールが、スロット名に対応する文法ルールを表している。ここで、図１８および図１９では、スロット名に関する文法ルールの後に続く助詞に関する文法ルール、ノード１８０３から１８０５まで、およびノード１９０３から１９０５までが追加された形となっている。助詞の種類は限られているため、あらかじめ訂正発話用ルール生成プログラム１１３中に記録しておくことができる。スロット名に対応する文法ルールを抽出する際、スロット名に対応する文法ルールに継続する文法ルールを検索し、記録されている助詞と文法ルール中の単語名を比較することにより、スロットに助詞が継続しているかどうかを容易に判定することができる。助詞が継続している場合、その助詞に関連する文法ルールをスロットに関する情報と共に抽出し、訂正発話用テンプレートに挿入すれば良い。また、スロット名に対応する文法ルールの後に、助詞に関する文法ルールを接続した遷移と、無い場合の遷移の両方を挿入するようにしても良い。また、助詞に関する文法ルールは、対話履歴中の利用者発話認識用文法名で示される文法ルールから検索する以外に、あらかじめ記憶された助詞を遷移条件とする文法ルールを生成し、それを挿入するようにしても良い。また、助詞に関する情報は、プログラムとは別に記憶装置上に格納するようにしても良い。両方のスロット名に対応するルールを含む訂正発話用文法ルールとしては、図２０に示すルールが生成される。図２０において、ノード２００１から２００３までの文法ルール、およびノード２００５から２００７までの文法ルールが、各スロット名に対応する文法ルールである。また、ノード２００３から２００５、およびノード２００７から２００９までの文法ルールが、それぞれのスロットに対応する文法ルールに継続する助詞に関する文法ルールを表わしている。図２０では、スロット名に対応する文法ルールの順序は、図１７に示す文法ルール中のスロット名に対応する文法ルールの順序と同じになっている。図２０に示す文法ルールでは、助詞によって順序が決定されるため一通りの組み合わせのみ挿入されているが、順序関係が限定されない助詞が継続する場合は、任意の組み合わせを生成して訂正発話用テンプレート中に挿入することができる。順序関係は助詞の種類によって決定されるため、助詞の種類と順序に関する情報を各助詞に付属する情報として記述しておき、それらの情報に基づいて挿入する文法ルールの順序を容易に決定することができる。対話履歴が、システムプロンプトおよび利用者の発話に関する最新の情報以前の情報も記録している場合は、利用者発話認識用文法名で示される全ての文法ルールから各スロット名に対応する文法ルールを全て抽出した後、スロット間の組み合わせを求めれば良い。
【００２５】
訂正発話用テンプレート中のテンプレートルール間の挿入ルールタイプが「スロット値」である場合の訂正発話用文法ルールの生成方法について説明する。ここで、テンプレートルールとして図１２、図２１および図１５に示す文法ルールが順に訂正発話用テンプレート中に含まれており、図１２と図２１で示されるテンプレートルール間の挿入ルールタイプが「スロット値」、図２１と図１５で示されるテンプレートルール間の挿入ルールタイプを「句」とする。図２１では、前後に文法ルールが接続されるため、開始ノード２１０１、終了ノード２１０２共、ノード名が「Ｘ」となっている。また、対話履歴中の利用者発話認識用文法名で示される文法ルールは図２２で示される文法ルールであり、図２２中のノード２２０１から２２０５までの文法ルールが対話履歴中に含まれるスロット名に対応するとする。さらに、対話履歴中に含まれる利用者発話認識結果が、
開始時刻＝１０時
であったとする。なお、「開始時刻」は対話履歴中に含まれるスロット名であり、「１０時」がスロット値であるとする。この場合、訂正発話用文法ルールを生成するには、まず、挿入ルールタイプが「スロット値」の部分には、対話履歴中に含まれるスロット名に対応するスロット値を遷移条件とする文法ルールを生成し、挿入する。次に、挿入ルールタイプが「句」の部分には、対話履歴中に含まれているスロット名に対応する文法ルールを対話履歴中に含まれている利用者発話認識用文法名で指定される文法ルールから抽出し、訂正発話用テンプレートに挿入する。以上の操作により、図２３に示す文法ルールが訂正発話用文法ルールとして生成される。図２３において、２３０１から２３０３までのルールが利用者発話認識結果から抽出されたスロット値に対応する文法ルール、２３０５から２３０９までの文法ルールが対話履歴により指定される文法ルールから抽出された文法ルールに対応している。図２３に示す文法ルールでは、対話履歴により指定される文法ルールから抽出した文法ルールがそのまま挿入されているが、利用者発話認識結果から抽出されたスロット値に対応する遷移を除いたルールを挿入するようにしても良い。すなわち、図２３における「１０時」２３０６は利用者発話認識結果から抽出されたスロット値と同じであり、訂正発話としては除外することができるため、「１１時」２３０７および「１２時」２３０８のみを遷移条件としたルールにすることができる。
【００２６】
訂正発話用テンプレート中のテンプレートルール間の挿入ルールタイプが「スロット名」である場合の訂正発話用文法ルールの生成方法について説明する。テンプレートルールとしては図１２、図２４および図１５に示すルールが順に訂正発話用テンプレートに含まれており、図１２と図２４で示されるテンプレートルール間の挿入ルールタイプが「スロット名」、図２４と図１５で示されるテンプレートルール間の挿入ルールタイプを「句」とする。図２４では、前後に挿入されるルールが接続されるため、開始ノード２４０１、終了ノード２４０２共、ノード名が「Ｘ」となっている。また、対話履歴中の利用者発話認識用文法名で示される文法ルールは図２２の文法ルールであり、図２２中のノード２２０１から２２０５までの文法ルールが対話履歴中に含まれるスロット名に対応するとし、そのスロット名は「開始時刻」であるとする。この場合、訂正発話用文法ルールを生成するには、まず、挿入ルールタイプが「スロット名」の部分には、対話履歴により指定されているスロット名を遷移条件とする文法ルールを生成して挿入する。次に、挿入ルールタイプが「句」の部分には、対話履歴中に含まれるスロット名に対応する文法ルールを対話履歴中の利用者発話認識用文法で指定される文法ルールから抽出し、訂正発話用テンプレートに挿入する。以上の操作により、図２５に示す文法ルールが訂正発話用文法ルールとして生成される。図２５において、２５０１から２５０３までの文法ルールがスロット名により生成されたルール、２５０５から２５０９までのルールが対話履歴中の利用者発話認識用文法名により指定される文法ルールから抽出された文法ルールに対応している。また、スロット名を利用者がどのように発話するかには複数通りの方法が考えられる。例えば、「開始時刻」に対して「開始時刻」、「開始」、「始まり」等が在り得る。このような複数の表現に対応するために、各スロット名に対応する表現を記憶装置上に別途記録しておき、それらの表現を遷移条件とする文法ルールを生成するようにしても良い。
【００２７】
以上の方法では、訂正発話用テンプレート中にはそれぞれの挿入ルールタイプが一つずつしか含まれていないという前提となっている。同じ挿入ルールタイプの指定が複数箇所に含まれている場合は、対話履歴に基づいて抽出された文法ルールを挿入箇所に割り当てるための可能な全ての組み合わせを求め、各組み合わせ毎に訂正発話用文法ルールを生成するようにすれば良い。挿入箇所の数より抽出された文法ルールの数が少ない場合は、同じ文法ルールが複数箇所に挿入されることになる。挿入箇所に抽出された文法ルールを割り当てる際、挿入ルールタイプの順序も考慮することができる。例えば、「スロット値」や「スロット名」が挿入された場合、その次に来る「句」の挿入箇所には、通常、直前の「スロット値」や「スロット名」に関連する文法ルールのみが挿入可能である。また、挿入ルールタイプに、その前後の挿入箇所に挿入される文法ルールに関する情報も合わせて記述するようすれば、挿入さえる文法ルールの組み合わせをより容易に決定することが可能となる。
【００２８】
また、抽出したスロット名に対応する文法ルールを次に使用される利用者発話認識用文法名で指定される文法ルールに挿入することにより、訂正発話用文法ルールを生成することもできる。この場合は、次に使用される文法ルール中のスロット名に対応する箇所を挿入箇所として、対話履歴に基づいて抽出されたスロット名に対応する文法ルールをテンプレートに挿入する方法を用いることで実現することができる。さらに、対話履歴に基づいて抽出されたスロット名に対応する文法ルールと、次に使用される利用者発話認識用文法名で指定される文法ルールから抽出したスロット名に対応する文法ルールとを、テンプレートに挿入する方法を用いることもできる。この場合は、スロット名に対応する文法ルールが複数ある場合と同様に、スロットの可能な組み合わせを求め、それぞれの組み合わせに対応する文法ルールを生成し、テンプレートに挿入することにより実現することができる。ここで、次に使用される利用者発話認識用文法名で指定される文法ルールから抽出したスロット名に対応する文法ルールのみを含む組み合わせは省略することができる。また、このようにして生成された訂正発話用文法ルールを用いて利用者の発話が認識された場合、図１１におけるステップ１１１４では、対話履歴中に含まれているスロット名に対応する認識結果を用いてスロット値の修正を行うと共に、次に使用される利用者発話認識用文法名で指定される文法ルールから抽出したスロット名に対応する認識結果を対応するスロットに代入する。また、ステップ１１０６において両者の結果に対する確認プロンプトを出力する必要がある。これは、対話シナリオ中に、スロットの可能な組み合わせに対する確認プロンプトを追加することにより、容易に実現することができる。
【００２９】
以上の方法によって生成された訂正発話用文法ルール中において、対話履歴中の利用者発話認識用文法で指定される文法ルールから抽出された文法ルールには、元の文法ルールと同様にスロット名が付加される。ただし、音声認識プログラムからの認識結果が、元の文法ルールによって認識された結果であるか、訂正発話用文法ルールによって認識された結果であるかを識別するため、訂正発話用文法ルール中のスロット名には、特別な記号を付加する。例えば、スロット名が「開始時刻」であれば、「＿訂正」を付加して「開始時刻＿訂正」というスロット名を使用する。付加する記号は通常のスロット名として使用しないようにすれば、その記号があるかないかを調べることによって、利用者の発話が訂正発話であるかそうでないかを容易に判定することができる。
【００３０】
次に、訂正発話が認識された場合のスロット値の修正方法について説明する。対話履歴中の利用者発話認識結果の内容を、
開始時刻＝｛１０時、１２時｝
また、訂正発話の認識結果を、
開始時刻＿訂正＝｛１１時｝
とする。ここで、「開始時刻」はスロット名、「＿訂正」が訂正発話用文法ルールを用いて認識されたことを表すための記号であるとする。また、認識結果中には複数の候補が信頼度の高い順に並べられているとする。但し、上記の例では信頼度は省略している。この場合、訂正前のスロット「開始時刻」の値は「１０時」であり、これを訂正発話認識結果中の候補「１１時」で置き換えることにより修正が行われる。すなわち修正後のスロット値は、
開始時刻＝１１時
となる。この場合、訂正発話の認識結果に関わらず、対話履歴中の利用者発話認識結果の第二位の候補を選択することもできる。また、訂正発話の認識結果が、
開始時刻＿訂正＝｛１０時、１２時｝
であった場合、訂正前のスロット値と訂正発話の認識結果中の第一位候補の値が共に「１０時」であるため、この場合は、訂正発話の認識結果中の第二位候補「１２時」で置き換えることにより修正が行われる。すなわち修正後のスロット値は、
開始時刻＝１２時
となる。この場合も、対話履歴中の利用者発話認識結果の第二候補を用いて修正を行うこともできる。また、訂正発話の認識結果中の第二位候補と対話履歴中の利用者発話認識結果の第二位候補の内、信頼度の高い方を選択することもできる。さらに、訂正発話の認識結果と対話履歴中の利用者発話認識結果に共通する候補を選択するようにしても良い。この場合、両認識結果中の同じ候補について信頼度の和を求め、その値が最も大きい候補を選択するようにすれば良い。あるいは、訂正発話の認識結果と対話履歴中の利用者発話認識結果に共通する候補は両者における信頼度の和を新たな信頼度とし、それぞれの結果にしか含まれない候補についてはそのままの信頼度を用いることによって、両方の認識結果に含まれる全ての候補の順位付けを行い、既に選択されているスロット値と異なり、且つ信頼度の最も高い候補を用いることにより修正を行うことも可能である。両方の認識結果に含まれる候補については、高い方の信頼度を新たな信頼度としても良い。また、新たな信頼度を求める際、各認識結果における順位に基づいた重み付けを行っても良い。例えば、高い順位に対して大きな値になるような係数を用意し、それを元の信頼度に乗じる方法を使用することができる。
【００３１】
対話履歴が、システムプロンプトおよび利用者の発話に関する最新の情報以前の情報も記録している場合は、さらに、同じ内容に関する訂正発話が繰り返されているかどうかを判定し、繰り返されている場合は、既に選択された候補に含まれない候補を選択することもできる。すなわち、利用者発話の認識結果の履歴が、
開始時刻＝｛１０時、１１時、１２時｝
開始時刻＿訂正＝｛１０時、１２時｝
であった場合、訂正前のスロット値は「１０時」、一回目の訂正後のスロット値は「１２時」となる。ここで、次の訂正発話の認識結果が、
開始時刻＿訂正＝｛１０時、１２時、１１時｝
であった場合、「１０時」および「１２時」は既に選択されているため、「１１時」を新しいスロット値として選択する。スロット値として使用された候補は利用者発話認識結果の履歴から容易に判定可能であるが、処理を効率化するために、対話履歴中に選択されたスロット値の履歴を記録するようにしても良い。また、訂正発話が継続しているかどうかは、対話履歴中の認識結果に含まれるスロット名、システムプロンプト、利用者発話認識用文法名等が継続しているかどうかを確認することによって容易に判定することが可能である。
【００３２】
また、上記スロット値の修正において、訂正発話中の候補の信頼度があらかじめ定められた値より低い場合は修正を行わないようにしても良い。さらに、既に選択されているスロット値の信頼度と修正値として選択された候補の信頼度の差あるいは比があらかじめ定められた値より大きい場合のみ、修正を行うようにすることもできる。
【００３３】
上記の実施例では、音声認識用文法ルールから訂正発話用文法ルールを生成し、誤認識の検出および修正を行う例を示したが、音声認識用文法ルールだけでなく、音声認識の後に行う処理である自然言語処理用のルール等、状態遷移に基づくルールを使用して入力された音声、文字列あるいはジェスチャの列を解析する機能を有する対話システムであれば、同様に適用することが可能である。
【００３４】
また、上記の実施例は、音声対話システムからの質問に利用者が全て応えた後、音声対話システムが確認を行い、タスクを実行するという流れの対話における例であるが、本発明はそれ以外の形式の対話にも使用することが可能である。例えば、音声対話システムからの質問に利用者が応える毎に確認を行う形式の対話や、利用者が応えた内容の確認を次の音声対話システムの質問に含めて行う形式の対話、あるいは利用者が任意の発話を行える形式の対話等があるが、対話履歴中に格納する情報の範囲と、訂正発話用文法ルールを生成し使用する箇所とを、対話形式に合わせて変更することにより、上記実施例で述べた方法と同じ方法を本発明を適用することが可能である。
【図面の簡単な説明】
【００３５】
【図１】本発明の一実施例の構成を示す図。
【図２】対話シナリオのフォーマットを示す図。
【図３】音声対話システムにおいて実行される対話の一例を示す図。
【図４】音声認識用文法ルールの一例を示す図。
【図５】音声認識用文法ルールを記述するためのフォーマットを示す図。
【図６】音声認識結果のフォーマットを示す図。
【図７】訂正発話用テンプレートを記述するためのフォーマットを示す図。
【図８】対話履歴を記述するためのフォーマットを示す図。
【図９】対話履歴中のシステムプロンプトを記述するためのフォーマットを示す図。
【図１０】対話履歴中の利用者の発話に関する情報を記述するためのフォーマットを示す図。
【図１１】対話制御プログラムにおける処理の流れ図。
【図１２】訂正発話用ルールのテンプレートルールの一例を示す図。
【図１３】訂正発話用ルールのテンプレートルールの一例を示す図。
【図１４】利用者発話認識用文法ルール全体を訂正発話用ルールに挿入して生成された訂正発話用文法ルールの一例を示す図。
【図１５】訂正発話用ルールのテンプレートルールの一例を示す図。
【図１６】利用者発話認識用文法ルールから抽出したスロット名に対応するルールのみを訂正発話用ルールに挿入して生成された訂正発話用文法ルールの一例を示す図。
【図１７】利用者発話認識用文法ルールの一例を示す図。
【図１８】利用者発話認識用文法ルールから抽出したスロット名に対応するルールのみを訂正発話用ルールに挿入して生成された訂正発話用文法ルールの一例を示す図。
【図１９】利用者発話認識用文法ルールから抽出したスロット名に対応するルールのみを訂正発話用ルールに挿入して生成された訂正発話用文法ルールの一例を示す図。
【図２０】利用者発話認識用文法ルールから抽出したスロット名に対応するルールの組み合わせを訂正発話用ルールに挿入して生成された訂正発話用文法ルールの一例を示す図。
【図２１】訂正発話用ルールのテンプレートルールの一例を示す図。
【図２２】利用者発話認識用文法ルールの一例を示す図。
【図２３】利用者発話の認識結果から抽出されたスロット値と利用者発話認識用文法ルールから抽出したスロット名に対応するルールを訂正発話用ルールに挿入して生成された訂正発話用文法ルールの一例を示す図。
【図２４】訂正発話用ルールのテンプレートルールの一例を示す図。
【図２５】利用者発話認識用文法ルールから抽出したスロット名とスロット名に対応するルールを訂正発話用ルールに挿入して生成された訂正発話用文法ルールの一例を示す図。
【符号の説明】
【００３６】
１０１  マイク
１０２  音声入力部
１０３  スピーカ
１０４  音声出力部
１０５  情報処理部
１０６  記憶部
１０７  音声認識プログラム
１０８  音声合成プログラム
１０９  対話制御プログラム
１１０  タスク実行用プログラム
１１１  訂正発話用ルール生成プログラム
１１２  記憶部
１１３  対話履歴
１１４  対話シナリオ
１１５  音声認識用文法ルール
１１６  訂正発話用テンプレート
【図１】
2005316247.tif 000003
【図２】
2005316247.tif 000004
【図３】
2005316247.tif 000005
【図４】
2005316247.tif 000006
【図５】
2005316247.tif 000007
【図６】
2005316247.tif 000008
【図７】
2005316247.tif 000009
【図８】
2005316247.tif 000010
【図９】
2005316247.tif 000011
【図１０】
2005316247.tif 000012
【図１１】
2005316247.tif 000013
【図１２】
2005316247.tif 000014
【図１３】
2005316247.tif 000015
【図１４】
2005316247.tif 000016
【図１５】
2005316247.tif 000017
【図１６】
2005316247.tif 000018
【図１７】
2005316247.tif 000019
【図１８】
2005316247.tif 000020
【図１９】
2005316247.tif 000021
【図２０】
2005316247.tif 000022
【図２１】
2005316247.tif 000023
【図２２】
2005316247.tif 000024
【図２３】
2005316247.tif 000025
【図２４】
2005316247.tif 000026
【図２５】
2005316247.tif 000027