(57)【要約】【課題】自由な発話順序でも入力値を間違えなく理解して入力値として取り込むことができ、然も入力された入力値から次に動作すべき発話シナリオを選択する部分のプログラムの記述量を低減することができる音声入力処理方法を提供する。【解決手段】音声入力される発話内容から属性別にキーワードを抽出するキーワード抽出処理と、抽出されたキーワードと利用者からの音声入力がなされる前の対話理解状態とから新たな対話理解状態を判定し記録する対話理解状態記録処理と、対話理解状態記録処理での記録内容と状態変化参照表を参照して各属性ごとに理解状態の変化情報に変換する変化情報生成処理とを含む。【選択図】  図１
2004333641.tif 000002
【特許請求の範囲】
【請求項１】
音声入力される発話内容から属性別に分類してキーワードを抽出するキーワード抽出処理と、
上記キーワード抽出処理で属性別に抽出されたキーワードと、利用者からの音声入力がなされる前の対話理解状態とから、新たな対話理解状態を判定し記録する、対話理解状態記録処理と、
上記対話理解状態記録処理の記録内容と、上記キーワード抽出処理で抽出された入力値とから、各属性ごとに理解状態の変化情報を算出する、変化情報生成処理と、
を含むことを特徴とする音声入力処理方法。
【請求項２】
請求項１記載の音声入力処理方法で生成される変化情報で表わされる音声入力の属性別の状態変化に従って、表示装置に表示される各属性別の表示内容を変更制御することを特徴とする音声対話用表示制御方法。
【請求項３】
音声入力される発話内容から属性別に分類してキーワードを抽出するキーワード抽出手段と、
上記キーワード抽出手段で属性別に抽出されたキーワードと、利用者からの音声入力がなされる前の対話理解状態とから、新たな対話理解状態を判定し記録する、対話理解状態記録手段と、
直前までの対話理解状態と、現在入力された入力値との組合せに応じて、理解状態の状態変化を判定し、変化情報に変換するための状態変化参照表と、
上記対話理解状態記録手段の記録内容と、上記状態変化参照表とを照合し、理解状態の状態変化を各属性ごとに変化情報に変換する変化情報生成手段、
とによって構成したことを特徴とする音声入力処理装置。
【請求項４】
請求項３記載の音声入力処理装置で生成した変化情報で表わされる音声入力の属性別の状態変化に従って表示装置に表示される各属性別の表示内容を変更制御することを特徴とする音声対話用表示制御装置。
【請求項５】
コンピュータが解読可能な符号列によって記述され、コンピュータに請求項１記載の音声入力処理方法を実行させる音声入力処理プログラム。
【請求項６】
コンピュータが解読可能な符号列によって記述され、コンピュータに請求項２記載の音声対話用表示制御方法を実行させる音声対話用表示制御プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は各種の予約システム等に応用することができる音声入力方法、音声対話用表示制御方法、音声入力処理装置、音声対話用表示制御装置、音声入力処理プログラム、音声対話用表示制御プログラムに関し、特に自由な発話入力に対しても適確に入力値を理解し、入力を確定することができ、利用者にとっては使い勝手のよい音声入力処理装置及び音声対話用表示制御装置を提供すると共に、これらの装置を製造する側から見ても装置の規模を縮小し、製造が容易な音声入力処理方法、音声対話用表示制御方法、音声入力処理装置、音声対話用表示制御装置、音声入力処理プログラム、音声対話用表示制御プログラムを提供しようとするものである。
【０００２】
【従来の技術】
従来より各種の予約システムに音声入力を可能としたものが提供されている。その一つに特許文献１で提案されている対話処理システムがある。特許文献１で提案されている対話処理システムは、入力された音声に含まれるキーワードを抽出し、このキーワードを入力項目ごとに設けた記録部（以下スロットと称す）に記録し、スロットでの記録の有無によって値が入力されたか否かを判定し、値が入力されていないスロットが存在する場合は、その入力項目に関して入力を促す音声を出力し、すべてのスロットに入力が完了すると対話を終了する。
【０００３】
このような従来技術のもとで、既に入力してしまった値の変更を行おうとすると、利用者が、入力済のスロットの値を別の値で更新（上書き）したり、入力済のスロットの値を取り消したり、などの操作を行おうにも、そのための処理が存在しないため困難である。
しかし、利用者がシステムと対話する中で、入力したはずの値と異なる値が間違って受理されていた場合や、利用者自身が言い誤って異なる値が入力されてしまった場合には、その場で正しい入力値で訂正することで、直ちに直前までの値を修正できる入力処理方法は、使い易い音声入力方法として必須と考えられる。
【０００４】
ここではまず、従来の技術を用いた場合に、音声入力により必要な入力項目に値を埋めていく音声入力処理方法を、対話が円滑に進み、入力値の訂正などが生じない場合について、図２４乃至２７を用いて簡便に説明する。
図２４Ａは対話開始の初期状態を示す。この例では航空券の予約システムを例示して説明する。入力項目としては日付、便名、出発地、到着地が設定されている。各入力項目に関して、値が入力されたか否かの状態を、ここでは「スロットの状態（入力項目の記録状態）」と称することにする。図２４Ａに示す初期状態では各入力項目のスロットの状態は×で表わされ、入力値は空であることを示している。このスロットの状態で対話シナリオ（予め用意された応答文の群）から選択される応答文（システムから利用者への音声出力又は視覚表示）は「ご搭乗予約の航空機を指定してください」とされる。
【０００５】
この応答文に対して、利用者から日付と便名が入力されたとすると、図２４Ｂに示すように入力項目の出発地と到着地のスロットの状態は×のままであるが、日付と便名のスロットの状態が○（入力値有りを表わす）に変化する。このスロットの状態を監視することでシステムは最新の理解状態として日付と便名のスロットは埋まっており（○で表現）、出発地と到着地のスロットはまだ入力されていない（×で表現）と判定できるため、システムは対話シナリオから応答文として「出発地と到着地をご指定ください」を選択し、入力項目で欠けている「出発地」と「到着地」を入力することを促す通知を利用者に行なう。
【０００６】
また、図２４Ｃに示すように、初期状態から日付と到着地のみに入力が行なわれた場合にはシステムは応答文として「便名と出発地をご指定ください」を選択して利用者に通知する。
このように、各入力項目の最新のスロットの状態に応じて、対話シナリオの中から応答文を選択し、選択した応答文を利用者に音声又は視覚的表示器を通じて通知し、対話形式で必要な入力事項が全てシステム側で取得できるようにガイドする。
【０００７】
【特許文献１】
特開２００２−２３７８３号公報
【０００８】
【発明が解決しようとする課題】
図２４を用いて説明した対話例はシステムと利用者との間で円滑に対話が行なわれた例を示しているが、現実には利用者からの音声入力は必ずしもシステム側で予想している状態ばかりではない。つまり、利用者が入力した値が間違ってしまい、異なる値が受理されてしまったり、利用者自身が勘違いや言い誤りで、異なる値が入力されてしまう場面は高い可能性で存在する。このような場面では、利用者による訂正や打消しなどの発話が行われる。そこで、従来の技術でこのような場面に対応するためには、例えば、各入力項目ごとに、現在の入力に含まれていたスロットに保存すべき値を記録しておくだけでなく、前回までにスロットに入力されて記録されていた値も共に記録しておき、さらに、前回までのスロットの値と、現在の入力による値が一致しているか、不一致であるかを比較し判定する判定機構を設けた上で、その判定結果を利用して応答文の選択を行う方法が考えられる。
【０００９】
図２５はその様子を示す。この例では、現在入力されたスロット値と共に、前回までの入力値の状態も記録しておき、前回と現在のスロット値を比較した判定結果を記録する部分の様子について、便名スロットだけを抜粋して示す（同様の機構を、日付、出発地、到着地の残りの３スロットに関しても設定する必要がある）。直前スロットが「○」、現スロットが「○」であることから、前回までの対話で便名に関する入力が「有り」、現在入力された利用者の発話にも便名が「有り」を表わしている。つまり、前回までの対話の中で既に便名に関する入力が行われたにも関わらず、今回処理すべき入力においても、発話に便名が含まれていたことになる。ここで、値の一致を示す欄は「×」であり、直前スロットに記録されている値と、現スロットに記録される値は「不一致」だったことを表わしている。
【００１０】
この状態が与えられた場合のシステムは、「便名を＜前回までに入力されていた便名＞から＜今回入力した便名＞に変更なさいますか？」とする応答文を選択し、利用者に通知する。図２５に示した記録、判定機能は、便名だけでなく、日付、出発地、到着地などのすべての入力項目ごとに同様に設ける必要がある。
更に図２５に示した判定機能を実際に実行するにはプログラム上では図２６に示すようなプログラムの記述が必要となる。図２６に示すＬ１は、図２４Ａに示した初期入力状態で合致して実行されるルーチン、Ｌ２は利用者からの訂正により便名が変更された状況で合致して実行されるルーチン、Ｌ３は利用者からの現在の入力で便名に関して言及があったものの、前回までに入力が行われた値と同一であり、記録されている便名の値を変更するには及ばない状況で合致して実行されるルーチンを示している。図２６には、便名に関する判定機能の記述の一部としてＬ１〜Ｌ３を示しているが、現実には、一つの入力項目に関して、直前スロットが空か有りかを表現するパラメータと、現在入力に該当する入力項目の言及の有無を表現するパラメータと、直前までのスロット値と現在入力に含まれていた値とが一致しているか、不一致であるかを判定して表現しておくパラメータの３種のパラメータが設定されており、これらのパラメータの状態の組合せに応じて、次に実行すべき動作（例えば応答文の選択）を決定するものであるから、値の有無×値の有無×一致不一致の組合せで２３個のルーチンを記述することが必要となる。図２７に図２６に示したプログラムのフローチャートを示す。
【００１１】
初期入力用ルーチンＬ１を除く、他のルーチンＬ２，Ｌ３…では、一つのルーチンを記述するために、少なくとも３つのパラメータに関する条件の記述が必要となるため、入力項目数が増えた場合には、組合せが増大するため、各ルーチンの記述量が多いと、プログラム全体の記述量は膨大になるという不都合が生じる。
更に、ここまでの説明では、入力された値が否定されている場合は想定していなかったが、実際の利用場面では「羽田じゃないです」のような打消しの発話が行われることがあり、スロットでの値の管理は、単に値を記録しておくだけでなく、その値が否定されているかどうかまで含めて管理する必要が生じる。その場合、値の有無だけでなく、記録されている値に関する否定の有無を考慮すると、各ルーチンでのパラメータに関する条件の記述が増えるため、プログラム全体の記述量はさらに増大するという不都合が生じる。
【００１２】
この発明の目的は、プログラムの作成に要する手間を低減し、簡素な記述で入力値の状態の変化を認識することができる、音声入力処理方法、及び音声入力処理装置を提案する。
この発明では更に、音声入力処理方法で処理された結果を利用して次に実行すべき動作を一義的に決定する際に、利用者にとって適切に表示することができる音声対話用表示制御方法及び音声入力処理装置を提供しようとするものである。
【００１３】
【課題を解決するための手段】
この発明の請求項１では音声入力される発話内容から属性別にキーワードを抽出するキーワード抽出処理と、このキーワード抽出処理で属性別に抽出されたキーワードと、利用者からの音声入力がなされる前の対話理解状態とから、新たな対話理解状態を判定し記録する、対話理解状態記録処理と、対話理解状態記録処理の記録内容と、状態変化参照表とを照合し、理解状態の状態変化を各属性ごとに変化情報に変換する変化情報生成処理とを含む音声入力処理方法を提案する。
この発明では、更に請求項１記載の音声入力処理方法で生成される変化情報で表わされる音声入力の属性別の状態変化に従って、表示装置に表示される各属性別の表示内容を変更制御する音声対話用表示制御方法を提案する。
【００１４】
この発明では、更に音声入力される発話内容から属性別にキーワードを抽出するキーワード抽出手段と、このキーワード抽出手段で属性別に抽出されたキーワードと、利用者からの音声入力がなされる前の対話理解状態とから、新たな対話理解状態を判定し記録する、対話理解状態記録手段と、直前までの対話理解状態と、現在入力された入力値との組合せに応じて、理解状態の状態変化を判定し、変化情報に変換するための状態変化参照表と、対話理解状態記録手段の記録内容と、状態変化参照表とを照合し、理解状態の状態変化を各属性ごとに変化情報に変換する変化情報生成手段とによって構成した音声入力処理装置を提案する。
【００１５】
この発明では、更に請求項３記載の音声入力処理装置で生成した変化情報で表わされる音声入力の属性別の状態変化に従って表示装置に表示される各属性別の表示内容を変更制御する音声対話用表示制御装置を提案する。
この発明では、更にコンピュータが解読可能な符号列によって記述され、コンピュータに請求項１記載の音声入力処理方法を実行させる音声入力処理プログラムを提案する。
この発明では、更にコンピュータが解読可能な符号列によって記述され、コンピュータに請求項２記載の音声対話用表示制御方法を実行させる音声対話用表示制御プログラムを提案する。
【００１６】
作用
この発明の第１の特徴は、利用者から入力される音声入力が音声認識手段により音声認識され、テキスト形式の単語列に変換される。キーワード抽出手段では、単語列の中から、予め登録されているキーワードと合致する単語を抽出する。このキーワードの抽出においては、言語表現を規定した文法規則に従って単語列中の前後の文意を考慮してキーワードを抽出し、属性を付与する点である。この第１の特徴によれば、入力された発話内容（単語列）からキーワードが含まれるか検出することができ、キーワードに属性を与えることができるため、どの入力項目に対応する入力値が入力されたのかを判定することができる。
【００１７】
従って、この属性を付与する機能により、入力発話（単語列）での入力項目の配置順序は自由となり、利用者は入力項目を自由な順序で発話しても、システム側で適切に入力項目ごとにキーワードを抽出することができる。更に、入力項目の配置順序の自由は、１入力発話にとどまるものではなく、利用者が入力項目を複数の発話にまたがって発話しても、更に、同じ入力項目に関して複数回にわたって言及してもシステムは各入力項目に適切にキーワードを記録することができる。すなわち、同一の入力項目に関して、複数の発話にまたがって、値の訂正（更新・上書き）や、取り消しなどを入力しても、システムでは適切に入力項目のスロット値を管理することができる。
【００１８】
この発明の第２の特徴は、直前までのスロットの状態と現在の入力値を比較し、この比較結果を予め用意してある状態変化参照表と照合することで、スロット値の変化を変化情報に変換し、この変化情報に従って、次に実行すべき動作を決定する点である。
つまり、直前までのスロット値が「有り」で現入力値も「有り」で、かつ、その２つの値が不一致であれば、「Ａ  ｔｏ  Ｂ」のような変化情報に変換して記録する。また、２つの値が一致していれば「Ａ  ｔｏ  Ａ」のような変化情報に変換して記録する。更に、否定語が付されて入力された値には、例えば「Ｎｏｔ」を付与した変化情報を記録する。
【００１９】
このように、この発明によれば、直前までのスロット値と、現入力値との一致、不一致に応じて参照表に照らして得られる変化情報として記録して対話の進行状況を把握しておくから、この変化情報だけで対話の進行状況が表現されている。
この結果、個別のスロットの値や、直前までの状態と現入力値との比較結果に関する条件をプログラム中に記述せずとも、変化情報に関する条件だけを記述することで、システムが次に実行すべき対話シナリオを選択・決定させることが可能となり、プログラムの総記述量を大幅に少なくすることができる利点が得られる。
【００２０】
この発明の第３の特徴は、利用者からの入力に対しての応答を、画面表示を介して行う際に、変化情報を用いて表示内容を決定する点である。例えば、ある項目へ否定を表す入力が入ったことを示す変化情報を見て、この項目への入力が未完了と判断し、表示装置が表示している項目の入力情報を消去することで、その項目への入力が未完了であることを利用者に対して示すことができる。この結果、対話システムの現在の対話理解状態が利用者へ分かりやすく伝わる対話システムを提供することができる。
【００２１】
【発明の実施の形態】
図１にこの発明による音声入力処理装置、音声対話用表示制御装置を適用した予約システムの全体の構成を示す。以下に図１に示した予約システムの概要を簡単に説明する。
図１に例示した予約システムは例えばインターネットのような通信網１０に接続されたサーバＳＶと、予約システム用の端末ＴＭとによって構成した場合を示す。この発明による音声入力処理装置と音声対話用表示制御装置は端末ＴＭに装備される。
【００２２】
つまり、端末ＴＭは対話制御装置１００と、音声対話用表示制御装置２００と、表示装置３００、音声再生装置４００等によって構成される。対話制御装置１００にはマイクロホンＭが接続され、このマイクロホンＭから利用者の発話が電気信号として入力される。
サーバＳＶには対話制御装置１００で用いる対話シナリオ、音声認識用の認識リソース、音声認識結果から各項目に対する入力値を取り出すための理解リソース、音声対話用表示制御装置２００で用いる再生用音声ファイル等を装備し、例えば端末ＴＭが立ち上がるとこれらのデータが端末ＴＭに読み込まれ、端末ＴＭが予約システム用の端末として動作可能な状態となる。
【００２３】
サーバＳＶから端末ＴＭに送り込まれた対話シナリオには、音声対話用表示制御装置２００により表示装置３００に画面表示させる際の画面表示用の出力内容データと、音声対話用表示制御装置２００の動作を制御する対話制御規則などが含まれる。
また音声認識用の認識リソースには音響モデル、単語辞書、言語モデル、文法データ等を具備し、更に理解リソースには言語表現を規定した文法規則を含む。
対話シナリオの出力内容データにより表示装置３００に例えば搭乗券の予約受付のための初期画面が表示される。初期画面の指示に従って利用者は予約受付のための入力を例えば押釦操作等により行なう。予約受付けのための入力が発生することにより表示装置３００は予約受付け画面を表示し、また音声再生装置４００は音声で予約の受付を開始する旨の音声を再生する。
【００２４】
その後、利用者と端末ＴＭとの間で対話シナリオに従って対話が行われ、対話を通じて、端末ＴＭは利用者の発話から予約に必要なキーワードを抽出し、入力項目に該当するデータを取得する。予約に必要な条件を満たすデータが全て揃うと、入力されたデータに間違いが無いか否かを利用者に確認し、利用者から例えば「ハイ」或いは「ＯＫ」のような肯定語が入力されたことをもって予約の受付を終了する。予約の受付が終了すると、表示装置３００の表示は初期画面に戻る。
以上は予約システムの概要である。この発明で提案する音声入力処理方法及び音声入力処理装置は上述した予約システムとして動作する端末ＴＭ内に設けられている対話制御装置１００に適用され、また、音声対話用表示制御方法は音声対話用表示制御装置２００に適用される。
【００２５】
以下にこの発明による音声入力処理装置と音声対話用表示制御装置の一実施例を方法と共に説明する。図２にこの発明による音声入力処理装置の一実施例を示す。この発明による音声入力処理装置は図１に示した対話制御装置１００の内部に装備される。対話制御装置１００はこの実施例では音声認識装置１１０とこの発明による音声入力処理装置１２０と、外部記録装置等に格納したデータベース１３０等により構成した場合を示す。
音声認識装置１１０はマイクロホンＭから入力される利用者の発話を音声認識し、テキスト形式の単語列に変換し、このテキスト形式の単語列をこの発明による音声入力処理装置１２０に入力する。
【００２６】
この発明による音声入力処理装置１２０は音声認識装置１１０から入力されるテキスト形式の単語列から入力項目の属性別にキーワードを抽出するキーワード抽出手段１２１と、このキーワード抽出手段で属性別に抽出されたキーワードと、利用者からの音声入力がなされる前の対話理解状態とから、新たな対話理解状態を判定し記録する対話理解状態記録手段１２２と、状態変化参照表１２３を参照し照合して、対話理解状態記録手段１２２に記録されている理解状態の状態変化を各属性ごとに変化情報に変換する変化情報生成手段１２４とによって構成される。
【００２７】
データベース１３０に図３に示すように上述した対話シナリオ１３１、認識リソース１３２、理解リソース１３３、再生用音声ファイル１３４が設けられる。キーワード抽出手段１２１は音声認識装置１１０から入力される単語列から、予め登録されているキーワードに合致する単語を抽出する。このキーワードの抽出においては、理解リソース１３３に含まれる文法規則に従って単語列中の前後の文意を考慮してキーワードを抽出し属性を付与する。
このように、抽出するキーワードには適切に属性が付与されるので、一回の発話中で入力項目を自由な順序で話しても、また、複数の発話にまたがって入力項目を分散させて発話しても、システムは入力された発話内容から、各入力項目ごとに該当するキーワードを適切に抽出することができる。
【００２８】
例えばシステムから利用者への問い合わせとして、出発地、到着地、発時刻の順に３つの項目を入力するように利用者を誘導したにも係わらず、利用者が例えば「エーと、２０時の羽田発の伊丹着です」等と発話しても、出発地＝羽田、到着地＝伊丹、発時刻＝２０時と理解し、自由な発話でも目的とする入力項目のデータを取得することができる。
【００２９】
対話理解状態記録手段１２２はキーワード抽出手段１２１で抽出されたキーワードを、直前までの対話理解状態と比較して、各属性ごとに、最新の対話理解状態として入力項目に値を記録する。図４にその様子を示す。各属性Ａ，Ｂ，Ｃは入力項目を表わし、例えば、この例では「出発地」「到着地」「発時刻」を表わす。対話理解状態記録手段１２２には、各属性ごとに、直前までの対話理解状態が格納されており、キーワード抽出手段１２１から入力される現在のキーワード抽出結果も取り込まれると、各属性ごとに入力項目の値を更新し、最新の対話理解状態の入力項目値を得る。図４に示す例では初期入力の状態を示す。つまり、直前までの対話理解状態は各属性とも「ｎｕｌｌ」が記録されており、現在のキーワード抽出結果として、この例では、属性Ａは「羽田」、属性Ｂは「伊丹」、属性Ｃは「２０時」が入力され、その結果、最新の対話理解状態として属性Ａは「羽田」、属性Ｂは「伊丹」、属性Ｃは「２０時」が得られる。
【００３０】
ここで例えば「やっぱり伊丹着じゃないです」等と利用者から訂正を求める言い直しが発生した場合には、図５に示すように、到着地を表わす属性Ｂの現在のキーワード抽出結果として「伊丹（否定）」が入力され、最新の対話理解状態として「伊丹（否定）」が記録される。
変化情報生成手段１２４は、対話理解状態記録手段１２２に記録されている入力値の状態から、状態変化参照表１２３を参照し、入力値の状態変化に該当する変化情報を生成する。
【００３１】
状態変化参照表１２３の一例を図７に示す。図７に示す例では状態記録手段１２２に記録された入力値の状態変化を１２種類の変化情報に変換する構成とした場合を示す。表中「直前状態」は図４及び図５に示した「直前までの対話理解状態」を指す。また「入力値」は図４及び図５に示した「現在のキーワード抽出結果」を指す。また「−」は無入力、「○」は入力値が存在していることを示す。更に「○（否定）」は入力値に否定語が付加されている様子を示す。
【００３２】
図５に示した入力値の状態変化を図７に示した状態変化参照表１２３を参照して変化情報に変換すると、図６に示す変換結果が得られる。つまり、図５に示す属性Ａでは直前状態が「羽田」で入力値が「−」であるから、ＩＤ・Ｎｏ．１２に該当する。従って、変化情報としては「Ｎｏ  ｃｈａｎｇｅ」に変換される。また、属性Ｂは直前状態が「伊丹」で、入力値が「伊丹（否定）」であるから、表のＩＤ・Ｎｏ．５に該当する。従って変化情報は「Ａ  ｔｏ  Ｎｏｔ  Ａ」に変換される。更に、属性Ｃでは直前状態が「２０時」、入力値が「−」であるから、ＩＤ・Ｎｏ．１２に該当する。従って、変化情報としては「Ｎｏ  ｃｈａｎｇｅ」に変換される。
【００３３】
変化情報生成手段１２４で生成した変化情報はこの発明で提案した音声対話用表示制御装置２００に送り込まれる。音声対話用表示制御装置２００は変化情報生成手段１２４から送り込まれた変化情報を解読し、次に実行すべき動作（主に表示動作）を決定する。
ここで特に、この発明の音声対話用表示制御装置２００によれば次に実行すべき動作の決定を変化情報の解読により一義的に決定する点を特徴とするものである。例えば属性Ｂ（到着地）の変化情報が「Ａ  ｔｏ  Ｎｏｔ  Ａ」であった場合、入力項目の値がＡからＮｏｔ  Ａに変化したことがこの変化情報から一義的に解読することができる。この結果、次に実行すべき表示動作としては、応答文として「到着地は＜現スロット値＞でなければどちらになさいますか？」を選択すればよい。
【００３４】
図８にこの応答文の選択を実行する部分のプログラムを例示する。この例ではｉｆに続いて初期入力ルーチンＬ１として状態変化参照表１２３（図７）に示したＩＤ・ＮＯ．１に該当する変化情報の「ｎｕｌｌ  ｔｏ  Ａ」を記述し、その条件が一致した場合はＴｈｅｎ以下に示す応答文「到着地は＜現スロット値＞でよろしいですか？」を記述し、この応答文を音声合成して音声として表示し、また視覚表示すればよい。
また、次のルーチンＬ２でもＩＤ・Ｎｏ．２に該当する「ｎｕｌｌ  ｔｏ  Ｎｏｔ  Ａ」に一致すれば応答文は「到着地はから＜現スロット値＞でなければどちらになさいますか？」を記述すればよく、これが音声及び視覚表示器で表示される。
【００３５】
従って、この発明によれば、次に実行させたい動作を決定させるための条件判定のプログラムの記述としては、各ルーチンＬ１，Ｌ２，Ｌ３…ごとに示したように、一つの入力項目に関して、１行の条件判定の記述で済ませることができる。図８に示したプログラムの処理過程を図９にフローチャートで示す。各ルーチンＬ１，Ｌ２，Ｌ３…ごとに一つの入力項目に関する条件判定ステップは１ステップで済むため、従来のプログラムと比較して、全体としてプログラムの規模を大幅に低減させることができる。
図１０乃至図２１に図７に示した状態変化参照表で規定した変化情報に該当する対話例と、変化情報を変換する過程を示す。図１０乃至図２１においてＡは対話例、Ｂは変化情報の変換過程を示す。
【００３６】
図１０は初期入力の対話例を示す。この場合の変化情報の変換過程は直前の（便名）が「ｎｕｌｌ」で、更に現在入力された（便名）が「ｎｕｌｌ」でなければ、図７に示した状態変化表１２３の変換規定により、変化情報（便名）は「ｎｕｌｌ  ｔｏ  Ａ」に変換される。
図１１は初期入力の対話例を示す。この場合の変化情報の変換過程は直前の（便名）が「ｎｕｌｌ」で、入力された（便名）が「ｎｕｌｌ」でなく、否定語が付加されていれば、変化情報（便名）は「ｎｕｌｌ  ｔｏ  ｎｏｔ  Ａ」に変換される。
【００３７】
図１２は便名に関してのみ継続入力の対話例を示す。この場合の変化情報への変換過程は直前の（便名）が「ｎｕｌｌ」でなく、かつ、直前の（便名）に否定語が付加されてなく、入力された（便名）が「ｎｕｌｌ」でなく、かつ、入力された（便名）に否定語が付加されてなく、かつ、直前の（便名）と入力された（便名）が等しい場合は、変化情報は「Ａ  ｔｏ  Ａ」である。
【００３８】
図１３は便名に関してのみ継続入力の対話例を示す。この場合便名をＡからＢに変更した場合を示す。変化情報の変換過程は直前の（便名）が「ｎｕｌｌ」でなく、直前の（便名）に否定語が付加されてなく、入力された（便名）が「ｎｕｌｌ」でなく、入力された（便名）に否定語が付加されてなく、直前の（便名）と入力された（便名）が等しくなければ、変化情報は「Ａ  ｔｏ  Ｂ」である。
【００３９】
図１４は便名のみ継続入力で同一便名が入力が入力されて、これが否定された場合を示す。この場合の変換情報の変換過程は直前の（便名）が「ｎｕｌｌ」でなく、直前の（便名）に否定語が付加されてなく、入力された（便名）が「ｎｕｌｌ」でなく、入力された（便名）に否定語が付加されており、直前の（便名）と入力された（便名）が等しければ、変化情報は「Ａ  ｔｏ  Ｎｏｔ  Ａ」である。
【００４０】
図１５は便名が入力されているが、その入力されている便名とは異なる便名を否定する入力を行なった対話例を示す。この場合の変化情報の変換過程は、直前の（便名）が「ｎｕｌｌ」でなく、直前の（便名）に否定語が付加されてなく、入力された（便名）が「ｎｕｌｌ」でなく、入力された（便名）に否定語が付加されており、直前の（便名）と入力された（便名）が等しくない場合、変化情報は「Ａ  ｔｏ  Ｎｏｔ  Ｂ」に変換される。
【００４１】
図１６では既に入力されている便名が否定されている状態で新たな便名を入力した場合の対話例を示す。この場合の変化情報の変換過程は直前の（便名）が「ｎｕｌｌ」でなく、直前の（便名）に否定語が付加されており、入力された（便名）が「ｎｕｌｌ」でなく、入力された（便名）に否定語が付加されてなく、直前の（便名）と入力された（便名）が等しい場合、変化情報は「Ｎｏｔ  Ａ  ｔｏ  Ａ」に変換される。
【００４２】
図１７は否定された便名に正しい便名を入力した場合の対話例を示す。この場合の変化情報の変換過程は、直前の（便名）が（ｎｕｌｌ）でなく、直前の（便名）に否定語が付加されており、入力された（便名）が「ｎｕｌｌ」でなく、入力された（便名）に否定語が付加されてなく、直前の（便名）と入力された（便名）が等しくない場合、変化情報は「Ｎｏｔ  Ａ  ｔｏ  Ｂ」である。
【００４３】
図１８は否定された入力値に否定された入力値を入力した場合の対話例を示す。この場合の変化情報の変換過程は直前の（便名）が「ｎｕｌｌ」でなく、直前の（便名）に否定語が付加されている。入力された（便名）が「ｎｕｌｌ」でなく、入力された（便名）に否定語が付加されており、直前の（便名）と入力された（便名）が等しければ変化情報は「Ｎｏｔ  Ａ  ｔｏ  Ｎｏｔ  Ａ」である。
【００４４】
図１９は否定された入力値が存在し、その上に否定した異なる入力値を入力した場合の対話例を示す。この場合の変化情報の変換過程は、直前の（便名）が「ｎｕｌｌ」でなく、直前の（便名）に否定語が付加されており、入力された（便名）が「ｎｕｌｌ」でなく、入力された（便名）に否定語が付加されており、直前の（便名）と入力された（便名）が等しくない場合、変化情報は「Ｎｏｔ  Ａｔｏ  Ｎｏｔ  Ｂ」である。
【００４５】
図２０はキーワードに存在しない内容が発話された場合の対話例を示す。この場合の変化情報の変換過程は、直前の（便名）が「ｎｕｌｌ」であり、直前の便名に否定語が付いているかは不定であり、入力された（便名）が「ｎｕｌｌ」であり、入力された（便名）に否定語が付加されているかは不定であり、直前の（便名）と入力された便名を比較することは不能である場合、変化情報は「Ｎｏ  ｃｈａｎｇｅ」に変換される。
【００４６】
図２１は入力値が存在している状態で次の発話がキーワードに存在しない内容であった場合の対話例を示す。この場合の変化情報の変換過程は、直前の（便名）が「ｎｕｌｌ」でなく、直前の（便名）に否定語が付いているかは不定で、直前の（便名）に否定語が付加されているか、又は直前の（便名）に否定語が付加されていない、及び入力された（便名）が「ｎｕｌｌ」で、入力された（便名）に否定語が付加されているかは不定であり、直前の（便名）と入力された（便名）は比較不能である場合、変化情報は「Ｎｏ  ｃｈａｎｇｅ」に変換される。
【００４７】
図２２と図２３にこの発明による音声入力処理装置と音声対話用表示制御装置の対話と動作の一例を示す。図２２と図２３において縦軸は時間の経過を示す。時点Ｔ１は初期状態を表わしている。初期状態では対話理解状態（スロット値）は全てのスロット値は（ｎｕｌｌ）となっている。また表示内容は全ての属性に関して空欄になっている。この初期状態において、システムからＳＹＳ１により「ご用件を承ります」と音声及び表示器に表示し、利用者との対話が開始された様子を示す。このシステムからの問い合わせＳＹＳ１に対し、時点Ｔ２（ＵＳＲ２）で利用者から「エーと、２０時の羽田発の伊丹着です」と音声入力されたとすると、音声認識装置１１０（図２）のキーワード抽出結果は「出発＝羽田」、「到着地＝伊丹」、「発時間＝２０時」と抽出した様子を示す。
【００４８】
キーワード抽出結果は、対話理解状態記録手段１２２（図２）で最新の対話理解状態が判定され、図４に示したように格納される。更に変化情報生成手段１２４により対話理解状態１２２の記録状態と状態変化参照表１２３とから、変化情報に変換する。この場合、変化情報はすべての入力項目の属性にわたって一様に「ｎｕｌｌ  ｔｏ  Ａ」となる。
変化情報生成手段１２５は変換した変化情報を音声対話用表示制御装置２００に送り込む。音声対話用表示制御装置２００では全ての属性にわたって「ｎｕｌｌ  ｔｏ  Ａ」を判定条件に照らし、次に表示すべき内容の対話シナリオを実行する。この場合に選択される対話シナリオとしては「２０時、羽田発、伊丹着ですね」と確認の問い合せ（ＳＹＳ３）となる。
【００４９】
この確認の問い合わせＳＹＳ３に対し、利用者がＵＳＲ４で「やっぱり、伊丹着じゃなくて」と伊丹着を否定する発話を行なったとすると、この発話のキーワード抽出結果は到着地に係わる属性のみが「到着地＝伊丹（否定）」となる。従って、このキーワード抽出結果が対話理解状態記録手段１２２に入力され、最新の対話理解状態としては「到着地＝伊丹（否定）」が記録される。次に、変化情報生成手段１２４では出発地と発時間に係わる発話が無であり、前回までの入力により出発地に関しては「羽田」が存在し、発時間に関しては「２０時」がスロットに既に存在することから、これらの属性に関しては変化情報として変化がなかったことを表わす「Ｎｏ  ｃｈａｎｇｅ」に変換される。これに対し、到着地に関しては「Ａ  ｔｏ  Ｎｏｔ  Ａ」が変化情報として出力される。
【００５０】
これらの変化情報が音声対話用表示制御装置２００に渡されることにより、次の動作として、時点Ｔ５でシステムから「伊丹着じゃないとするとどこですか？」とする問い合わせＳＹＳ５が発せられる。この問い合せは出発地と発時間が「Ｎｏ  ｃｈａｎｇｅ」であることと、「Ａ  ｔｏ  Ｎｏｔ  Ａ」により前回入力された到着地「伊丹」が否定されたことをシステムが理解して対話シナリオを選択したことを表わしている。このような変化情報がＡ  ｔｏ  Ｎｏｔ  Ａ，ｎｕｌｌ  ｔｏ  Ｎｏｔ  Ａ，Ａ  ｔｏ  Ｎｏｔ  Ｂ，Ｎｏｔ  Ａ  ｔｏ  Ｎｏｔ  Ｂ…などの否定語が付与された入力が発生したことを示す項目は、次以降の利用者の発話により訂正された値が入力されると考えられるために、システム内部では未入力状態であるのと同様に判断される。この場合、表示器には出発地：羽田、発時間：２０時、到着地：空欄が表示され、到着地に関してシステムが未入力として扱っていることを利用者に対して通知する。
【００５１】
時点Ｔ５で発せられたシステムからの問い合わせＳＹＳ５に対し、利用者は時点Ｔ６（図２３）で例えば「関空着で発時間も１９時です」と音声入力したとすると、音声認識結果からキーワードを抽出し、対話理解状態としては「出発地＝羽田」、「到着地＝関空」、「発時間＝１９時」がスロット値として記録される。このスロット値が対話理解状態記録手段１２２に記録されることにより変化情報生成手段１２４は出発地に関しては「Ｎｏ  ｃｈａｎｇｅ」、到着地に関しては「到着地＝Ｎｏｔ  Ａ  ｔｏ  Ｂ」、発時間に関しては「発時間＝Ａ  ｔｏ  Ｂ」に変化情報の変更を行なう。この変化情報を音声対話用表示制御装置２００に送り込む。この結果として表示装置３００には「出発地：羽田」、「発時間：１９時」、「到着地：関空」と表示される。
【００５２】
これと共に、システムからは時点Ｔ７で「到着地は、伊丹じゃなく関空で、出発も２０時から１９時に変更ですね」と確認を求める対話シナリオが選択されて音声で表示されると共に表示装置３００で視覚的に表示される。
この問い合せＳＹＳ７に対して時点Ｔ８で例えば「はい」と肯定語を利用者が入力することにより、入力の完了が決定される。入力の完了条件は、各入力項目の値が、否定の付かない状態で存在し、かつ、各属性の変化情報がすべて「Ｎｏｃｈａｎｇｅ」に収束している状況と言える。
この場合の次の動作としては表示装置３００に「出発地：羽田」、「発時間：１９時」、「到着地：関空」を表示し、利用者には時点Ｔ９に示すように「検索を開始いたしております。そのままお待ちください」と通知する。これと共に、入力値として取得したデータを図１に示したサーバＳＶに送り予約の処理を完了する。
【００５３】
以上説明した音声入力方法及び音声対話用表示制御方法は、コンピュータにコンピュータが解読可能な符号列によって記述された音声入力処理プログラム、音声対話用表示制御プログラムを実行させることにより実現される。この発明による音声入力処理プログラム及び音声対話用表示制御プログラムはコンピュータが書き込み、読み出しが可能な例えば磁気ディスク或はＣＤ−ＲＯＭのような記録媒体に記録され、これらの記録媒体からコンピュータにインストールするか、又は通信回線を通じてコンピュータにインストールし、コンピュータに備えられたＣＰＵに解読されて実行される。
尚、上述では変化情報生成手段１２４において、状態変化をＡとＢの２値に変換した例を説明したが、ＡとＢに加えて、Ｃ，Ｄ，…の多値に変換する構成も考えられ、例えば時間の経過に従って変化するパラメータに対してＡから順次符号番号を繰り上げて符号を付与することも考えられる。
【００５４】
【発明の効果】
以上説明したように、この発明によれば、利用者の発話からキーワードを属性別に抽出する構成としたから、１発話中で自由な順序で項目を入力しても、また、複数の発話にわたって項目を入力しても、各入力項目の属性に従ってキーワードを適切に理解でき、正しく入力値を取得することができる。この結果、利用者には入力の仕方に制限を加えない、使い勝手のよい対話システムを提供することができる。
更に、抽出したキーワードとシステム内部の対話理解状態との比較判定から変化情報を生成して表記する方法を採ったから、その変化情報だけを参照することで入力値の変化などの対話の進行状況を解読することができる。この結果、システムが次に実行すべき動作を規定するプログラムの記述において、条件判定の記述量を大幅に低減することができ、システムの構成を簡素化できる利点が得られる。
また、上記変化情報を付加して表記する対話装置内部の対話理解の状態を、利用者にとっても適切に表示を行うことができる。
【図面の簡単な説明】
【図１】この発明による音声入力処理装置と音声対話用表示制御装置を適用することができる予約システムの全体の構成を説明するためのブロック図。
【図２】この発明の音声入力処理装置及び音声対話用表示制御装置の実施例を説明するためのブロック図。
【図３】図２に示した音声対話制御装置に装備したデータベースの内部を説明するための構成概念図。
【図４】図２に示した音声入力処理装置に用いた対話理解状態記録手段の動作を説明するための構成概念図。
【図５】図４と同様の構成概念図。
【図６】図２に示した変化情報生成手段の動作を説明するための図。
【図７】図２に示した状態変化参照表を説明するための図。
【図８】この発明により簡素化されたプログラムの概要を説明するための図。
【図９】図８に示したプログラムの概要を説明するためのフローチャート。
【図１０】この発明を適用した場合の対話例と変化情報変換過程を説明するための図。
【図１１】図１０と同様の図。
【図１２】図１０と同様の図。
【図１３】図１０と同様の図。
【図１４】図１０と同様の図。
【図１５】図１０と同様の図。
【図１６】図１０と同様の図。
【図１７】図１０と同様の図。
【図１８】図１０と同様の図。
【図１９】図１０と同様の図。
【図２０】図１０と同様の図。
【図２１】図１０と同様の図。
【図２２】この発明による音声入力処理装置及び音声対話用表示制御装置と利用者との対話例と、表示の制御状態を説明するための図。
【図２３】図２２と同様の図。
【図２４】従来の技術を説明するための図。
【図２５】図２４と同様の図。
【図２６】従来の音声入力処理プログラムの記述例を説明するための図。
【図２７】図２６に示した従来の音声入力処理プログラムの流れを説明するためのフローチャート。
【符号の説明】
１０    通信網                １２２    対話理解状態記録手段
ＳＶ    サーバ                １２３    状態変化参照表
ＴＭ    端末                  １２４    変化情報生成手段
１００    対話制御装置          １３０    データベース
１１０    音声認識装置          ２００    音声対話用表示制御装置
１２０    音声入力処理装置      ３００    表示装置
１２１    キーワード抽出手段
【図１】
2004333641.tif 000003
【図２】
2004333641.tif 000004
【図３】
2004333641.tif 000005
【図４】
2004333641.tif 000006
【図５】
2004333641.tif 000007
【図６】
2004333641.tif 000008
【図７】
2004333641.tif 000009
【図８】
2004333641.tif 000010
【図９】
2004333641.tif 000011
【図１０】
2004333641.tif 000012
【図１１】
2004333641.tif 000013
【図１２】
2004333641.tif 000014
【図１３】
2004333641.tif 000015
【図１４】
2004333641.tif 000016
【図１５】
2004333641.tif 000017
【図１６】
2004333641.tif 000018
【図１７】
2004333641.tif 000019
【図１８】
2004333641.tif 000020
【図１９】
2004333641.tif 000021
【図２０】
2004333641.tif 000022
【図２１】
2004333641.tif 000023
【図２２】
2004333641.tif 000024
【図２３】
2004333641.tif 000025
【図２４】
2004333641.tif 000026
【図２５】
2004333641.tif 000027
【図２６】
2004333641.tif 000028
【図２７】
2004333641.tif 000029