(57)【要約】【課題】認識文法がない場合であっても、対話スクリプトを生成することによって音声応答アプリケーションを構築することができる音声応答アプリケーション作成支援システム及び方法を提供する。【解決手段】認識文法を含んだ二次スクリプトの存在の有無を確認し、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、ユーザによる発話を音声信号として入力して一時記憶し、少なくとも言語コード及び音声認識エンジンを選択し、音声信号を解析してキーワードを抽出し、キーワードに基づいて認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する。二次スクリプトが生成されている場合には、二次スクリプトを解釈して実行する。【選択図】  図１
2004233852.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援システムであって、
認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは前記二次スクリプトを選択して取得し、前記一次スクリプトもしくは前記二次スクリプトを解釈して実行するインタプリタであるスクリプト解釈部と、
ユーザによる発話を音声信号として入力する音声入力部と、
入力された前記音声信号を一時記憶する一時記憶部と、
入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択するプラットホーム制御部と、
一次記憶されている前記音声信号を解析してキーワードを抽出するユーザ入力解析部と、
前記一次スクリプト及び前記音声信号から抽出された前記キーワードに基づいて、認識文法を生成し、前記認識文法を組み込んだ二次スクリプトを生成する二次スクリプト生成部とを含み、
前記二次スクリプトが生成されていない場合には、前記一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成し、前記スクリプト解釈部において解釈して実行し、
前記二次スクリプトが生成されている場合には、前記二次スクリプトを前記スクリプト解釈部において解釈して実行することを特徴とする自動応答アプリケーション作成支援システム。
【請求項２】
前記認識文法を保存する認識文法記憶部をさらに含む請求項１に記載の自動応答アプリケーション作成支援システム。
【請求項３】
前記二次スクリプトが生成されているか否かを判定し、生成されていない場合には前記仮の二次スクリプトを、生成されている場合には前記二次スクリプトを、それぞれ前記スクリプト解釈部へ渡すリソースフェッチャーをさらに含む請求項１又は２に記載の自動応答アプリケーション作成支援システム。
【請求項４】
ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援方法であって、
認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは前記二次スクリプトを選択して取得し、前記一次スクリプトもしくは前記二次スクリプトを解釈して実行する工程と、
ユーザによる発話を音声信号として入力する工程と、
入力された前記音声信号を一時記憶する工程と、
入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択する工程と、
一次記憶されている前記音声信号を解析してキーワードを抽出する工程と、
前記一次スクリプト及び前記音声信号から抽出された前記キーワードに基づいて、認識文法を生成し、前記認識文法を組み込んだ二次スクリプトを生成する工程とを含み、
前記二次スクリプトが生成されていない場合には、前記一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、
前記二次スクリプトが生成されている場合には、前記二次スクリプトを解釈して実行することを特徴とする自動応答アプリケーション作成支援方法。
【請求項５】
ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援方法を具現化するコンピュータ実行可能なプログラムであって、
認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは前記二次スクリプトを選択して取得し、前記一次スクリプトもしくは前記二次スクリプトを解釈して実行するステップと、
ユーザによる発話を音声信号として入力するステップと、
入力された前記音声信号を一時記憶するステップと、
入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択するステップと、
一次記憶されている前記音声信号を解析してキーワードを抽出するステップと、
前記一次スクリプト及び前記音声信号から抽出された前記キーワードに基づいて、認識文法を生成し、前記認識文法を組み込んだ二次スクリプトを生成するステップとを含み、
前記二次スクリプトが生成されていない場合には、前記一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、
前記二次スクリプトが生成されている場合には、前記二次スクリプトを解釈して実行することを特徴とするコンピュータ実行可能なプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エンドユーザと対話を進めてタスクを実行する対話システムに関する。特に、対話と実行タスクを記述したスクリプト言語とそのスクリプト言語によって記述された対話スクリプトを解釈・実行するインタプリタ、およびインタプリタとユーザを仲介する実装プラットホーム、および対話スクリプトに付随して必要なキーワード抽出用文法生成装置に関する。
【０００２】
【従来の技術】
昨今のコンピュータ技術の急速な伸展に伴って、音声による対話を活用したアプリケーションが多々開発されるようになってきている。これらの音声対話システムにおいては、ユーザによる発話とシステムによる合成音声等による発話を交互に繰り返しながら、ユーザ発話の内容に応じて階層的な分岐を行いながらユーザから必要となる情報を収集し、十分な情報が得られた時点において何らかのタスクを実行する。
【０００３】
これらの応答シナリオを記述するスクリプト言語としては、ＶｏｉｃｅＸＭＬフォーラム（  ＨＹＰＥＲＬＩＮＫ  ｈｔｔｐ：／／ｗｗｗ．ｖｏｉｃｅｘｍｌ．ｏｒｇ／  ｈｔｔｐ：／／ｗｗｗ．ｖｏｉｃｅｘｍｌ．ｏｒｇ／）によって策定されたＶｏｉｃｅＸＭＬ１．０が主流であり、商用ベースで既にリリースされている。現在では、後継バージョンとしてＶｏｉｃｅＸＭＬ２．０がワールドワイドウェブコンソーシアム（Ｗ３Ｃ；ｈｔｔｐ：／／ｗｗｗ．ｗ３．ｏｒｇ／）において策定段階に入っている。
【０００４】
これ以外にも、音声対話サービスを提供するシステムインテグレータが独自に策定したスクリプト言語も存在する。例えば、富士通株式会社からは、「ＶｏｉｃｅＳｃｒｉｐｔ（Ｒ）」という対話記述用スクリプト言語がリリースされている。
【０００５】
これらの音声対話システムを正常に稼動させるには、入力されるユーザによる発話の内容をより精度良く認識することが最も重要な課題となる。認識精度を高めるためには、（特許文献１）のように認識辞書の語彙を自動的に増強する方法や、（特許文献２）のようにキーワードを抽出してから当該キーワードに対応した認識辞書を生成する方法当が考えられている。
【０００６】
さらに、スクリプト言語を利用する場合には、ユーザによる発話の内容をより正確に認識するために、人間の発する言葉から必要なコマンドを抽出するために必要な認識文法（グラマー）を必要とする。この場合、ユーザの発話内容に合致する認識文法が想定されている場合には、当該認識文法に従ってユーザの発話内容を解析して、含まれているキーワードの抽出を行う。したがって、音声対話システムを運用するためには、対話を記述する上述したようなスクリプト言語で記述された対話スクリプトだけでは足りず、ユーザの発話内容を一次認識するための認識文法についても記述しておく必要がある。
【０００７】
認識文法の書式についてはＪａｖａ  Ｓｐｅｅｃｈ  Ｇｒａｍｍａｒ  Ｆｏｒｍａｔ（ＪＳＧＦ）、ワールドワイドウェブコンソーシアムによって策定段階となっているＳｐｅｅｃｈＲｅｃｏｇｎｉｔｉｏｎ  Ｇｒａｍｍａｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  Ｖｅｒｓｉｏｎ  １．０（ＳＲＧＳ）において検討されている２つの書式Ａｕｇｍｅｎｔｅｄ  ＢＮＦ  ｓｙｎｔａｘ（ＡＢＮＦ）とＧｒＸＭＬ等が代表的である。また、その他にも、以前から音声認識アプリケーションを市場に提供してきた音声認識プロバイダ各社が独自に策定した書式も存在している。
【０００８】
ＶｏｉｃｅＸＭＬやＳＲＧＳといったスクリプト言語は、ウェブページ記述用スクリプトであるＨＴＭＬ言語をベースとして拡張されたＸＭＬ言語から派生した言語であるが、主にデータを修飾する用途であったＨＴＭＬ言語に比べると、プログラミング言語としての色彩が非常に強くなっている。各言語仕様によって定義されたタグを利用してスクリプトを記述するにはテキストエディタを利用する方法もあるが、Ｃ言語、あるいはＣ＋＋やＪａｖａ（Ｒ）といったプログラミング言語にエディット環境やデバッガを統合した統合開発環境があるように、簡易にスクリプトを記述するための専用開発環境を用意する対話システムベンダーもある。
【０００９】
【特許文献１】
特開２００２−１４６９３号公報
【００１０】
【特許文献２】
特開平１１−２０２８９０号公報
【００１１】
【発明が解決しようとする課題】
しかし、上述したような方法では、書式の相違する対話スクリプトと認識文法を準備しておく必要があるが、それぞれ単独では何ら対話アプリケーションを構成できるものではない。すなわち、対話スクリプトおのおのに対応する認識文法を準備する必要があり、対話アプリケーションの作成者は、認識文法の生成を同時に行う必要があり、作成負荷が過大となっているという問題点があった。
【００１２】
また、一つ一つの対話スクリプトに対応するすべての認識文法を事前に準備することは、その認識文法の多様性によって現実的には困難であり、また記憶容量の物理的な制約によって、すべての認識文法を事前に登録しておくことも困難である。
【００１３】
さらに、認識文法が存在しない場合には、ユーザの発話内容を認識することができず、システムによる応答が見当違いの応答になってしまうことから、音声応答アプリケーションとして成立しないという問題点もあった。
【００１４】
本発明は、上記問題点を解決するために、認識文法がない場合であっても、対話スクリプトを生成することによって音声応答アプリケーションを構築することができる音声応答アプリケーション作成支援システム及び方法を提供することを目的とする。
【００１５】
【課題を解決するための手段】
上記目的を達成するために本発明にかかる音声応答アプリケーション作成支援システムは、ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援システムであって、認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは二次スクリプトを選択して取得し、一次スクリプトもしくは二次スクリプトを解釈して実行するインタプリタであるスクリプト解釈部と、ユーザによる発話を音声信号として入力する音声入力部と、入力された音声信号を一時記憶する一時記憶部と、入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択するプラットホーム制御部と、一次記憶されている音声信号を解析してキーワードを抽出するユーザ入力解析部と、一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する二次スクリプト生成部とを含み、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成し、スクリプト解釈部において解釈して実行し、二次スクリプトが生成されている場合には、二次スクリプトを前記スクリプト解釈部において解釈して実行することを特徴とする。
【００１６】
かかる構成により、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【００１７】
また、本発明にかかる音声応答アプリケーション作成支援システムは、認識文法を保存する認識文法記憶部をさらに含むことが好ましい。ユーザの発話内容に応じて認識文法を随時更新・蓄積することができるからである。
【００１８】
また、本発明にかかる音声応答アプリケーション作成支援システムは、二次スクリプトが生成されているか否かを判定し、生成されていない場合には仮の二次スクリプトを、生成されている場合には二次スクリプトを、それぞれスクリプト解釈部へ渡すリソースフェッチャーをさらに含むことが好ましい。
【００１９】
また、本発明は、上記のような音声応答アプリケーション作成支援システムの機能をコンピュータの処理ステップとして実行するソフトウェアを特徴とするものであり、具体的には、ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援方法であって、認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは二次スクリプトを選択して取得し、一次スクリプトもしくは二次スクリプトを解釈して実行する工程と、ユーザによる発話を音声信号として入力する工程と、入力された音声信号を一時記憶する工程と、入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択する工程と、一次記憶されている音声信号を解析してキーワードを抽出する工程と、一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する工程とを含み、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、二次スクリプトが生成されている場合には、二次スクリプトを解釈して実行する自動応答アプリケーション作成支援方法並びにそのような工程を具現化するコンピュータ実行可能なプログラムであることを特徴とする。
【００２０】
かかる構成により、コンピュータ上へ当該プログラムをロードさせ実行することで、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる自動応答アプリケーション作成支援システムを実現することが可能となる。
【００２１】
【発明の実施の形態】
以下、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムについて、図面を参照しながら説明する。図１は本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの構成図である。
【００２２】
図１において、まず音声出力部１２から合成音声等により出力されているシステムによる音声出力により促されたユーザによる発話を、音声入力部１１において音声信号として入力する。そして、プラットホーム制御部１３において、言語属性の切り替えや、認識エンジンの切り替えを行う。すなわち、音声入力部１１から入力された音声信号に応じて、言語コードを切り替えたり、適切な認識エンジンを選択する作業を行う。
【００２３】
プラットホーム制御部１３では、音声入力部１１から入力された音声信号そのものを、一時記憶部１４に記憶する。記憶された音声信号を用いて、認識文法を生成するためのキーワードを抽出するためである。
【００２４】
また、スクリプト解釈部１５では、音声対話アプリケーションにおいて用意されているスクリプトを解釈して実行する。もちろん、解釈されたスクリプトに対して、プラットホーム制御部１３において、解釈されたスクリプトの内容に応じて言語コードを切り替えたり適切な合成音声を選択することによって生成された合成音声が、音声対話アプリケーションの出力として音声出力部１２から出力される。
【００２５】
次に、ユーザ入力解析部１６では、一次記憶部１４に記憶されているユーザにより発声された音声信号を形態素解析等して、必要なキーワードを分析することになる。
【００２６】
そして、二次スクリプト生成部１７では、記述されたスクリプト及び音声信号から得られたキーワードに基づいて、認識文法を生成し、認識文法を組み込むように当初から準備されている一次スクリプトを更新することで、二次スクリプトを生成する。また、認識文法が存在しない場合には、仮の二次スクリプトを生成する。生成された二次スクリプトあるいは仮の二次スクリプトがスクリプト解釈部１５によって解釈され、実行されることによって、ユーザは音声対話を行うことができる。ここで生成された認識文法は、認識文法記憶部１９に記憶される。認識文法記憶部１９へ生成された認識文法を記憶しておくことで、次に音声入力がなされた時点においては、当該認識文法を参照することが可能となる。
【００２７】
また、認識文法の有無の確認は、二次スクリプト生成部１７において二次スクリプトの生成時に判断するものであっても良いし、認識文法記憶部１９に対応する認識文法が記憶されているか否かを確認するものであっても良い。
【００２８】
なお、リソースフェッチャー２０は、スクリプト解釈部１５で解釈して実行するスクリプトを、アプリケーション作成時に記述されている一次スクリプトに基づいて生成される仮の二次スクリプトと、新たに生成された二次スクリプトとの間で切り替える。
【００２９】
また、キーワードについては、ユーザ入力解析部１６において解析されることによって抽出されたキーワードに限定されるものではなく、あらかじめドキュメントデータベース１８に記憶させておいたキーワードを使用するものであっても良い。
【００３０】
次に、かかる構成を有する本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける処理の流れについて説明する。図２に本発明の実施の形態にかかる音声応答アプリケーション作成支援システムを実現するプログラムの処理の流れ図を示す。
【００３１】
図２において、まずプラットホーム制御部１３からスクリプト解釈部１５に対して電話の着信等の対話開始依頼がなされると（ステップＳ２０１）、スクリプト解釈部１５は認識文法を含んだ二次スクリプトの有無を確認する（ステップＳ２０２）。
【００３２】
なお、認識文法の有無の確認方法は特に限定されるものではなく、二次スクリプト生成部１７において二次スクリプトの生成時に判断するものであっても良いし、認識文法記憶部１９に対応する認識文法が記憶されているか否かを確認するものであっても良い。
【００３３】
認識文法を含んだ二次スクリプトが既に生成されている場合には（ステップＳ２０２：Ｙｅｓ）、当該二次スクリプトの取り出しをリソースフェッチャー２０に対して依頼し（ステップＳ２０３）、スクリプト解釈部１５において当該二次スクリプトが解釈されて実行され（ステップＳ２０４）、合成音声等を用いたシステムによる音声出力によりユーザに対する発話依頼を行う（ステップＳ２０５）。
【００３４】
認識文法を含んだ二次スクリプトが生成されていない場合には（ステップＳ２０２：Ｎｏ）、リソースフェッチャー２０に対して一次スクリプトの取り出しを依頼する（ステップＳ２０６）。リソースフェッチャー２０がその旨を二次スクリプト生成部１７へ伝えると、二次スクリプト生成部１７は一次スクリプトをドキュメントデータベース１８から取り出すとともに、形式的な仮の二次スクリプトを生成する（ステップＳ２０７）。仮の二次スクリプトには、この時点では認識文法が含まれていない。
【００３５】
生成された仮の二次スクリプトがスクリプト解釈部１５へ渡されたら、当該スクリプトが解釈されて実行され（ステップＳ２０８）、合成音声等を用いたシステムによる音声出力によりユーザに対する発話依頼を行う（ステップＳ２０９）。
【００３６】
次に、発話依頼により促されたユーザによる発話を音声信号として入力する（ステップＳ２１０）。そして、入力された音声信号に基づいて、言語コードを切り替えたり、適切な認識エンジンを選択するとともに（ステップＳ２１１）、入力された音声信号そのものを一時記憶する（ステップＳ２１２）。
【００３７】
そして、一次記憶されているユーザにより発声された音声信号を形態素解析等して、必要なキーワードを分析する（ステップＳ２１３）。さらに、記述された一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、一次スクリプトを更新することによって、認識文法が組み込まれた二次スクリプトを生成する（ステップＳ２１４）。
【００３８】
このような構成とすることによって、認識文法が存在しない場合であっても、音声信号に基づいて必要な認識文法を生成することができることから、音声応答アプリケーションを正常に実行させることが可能となる。
【００３９】
次に、具体的にどのようなスクリプト処理が行われるのかについて、具体例を示しながら説明する。
【００４０】
まず、ユーザからの電話を着呼するか、あるいは音声応答アプリケーションの始動動作を行うことによって、プラットホーム制御部１３からインタプリタであるスクリプト解釈部１５に対して応答依頼がなされる。
【００４１】
そして、スクリプト解釈部１５は、音声応答アプリケーションの初期動作スクリプトとして一次スクリプトを指定し、リソースフェッチャー２０に対して一次スクリプトの取得を指示する。一次スクリプトは、例えば図３に示すようなＶｏｉｃｅＸＭＬで記述されたスクリプトである場合を想定する。
【００４２】
ところが、図３に示す一次スクリプトの記述からも明らかなように、当該一次スクリプトの記述内容では、どんなユーザの発話を受け付けるのか、認識するための情報としての認識文法が記述されていないため、意図した対話が成立せず、スクリプト自体の正しさも確認することができない。したがって、音声応答アプリケーションの作成者は、記述された一次スクリプトの動作を確かめるために、認識文法を別途用意する必要が生じることになる。
【００４３】
そこで、リソースフェッチャー２０は、一次スクリプトを二次スクリプト生成部１７に引渡し、二次スクリプト生成部１７においては、図４に示すような仮の二次スクリプトが生成される。ここで仮の二次スクリプトとは、認識文法が組み込まれる前の状態の二次スクリプトを意味しており、ユーザの発話による音声信号をどのタイミングで取得するのか等について記述されているものと定義する。
【００４４】
図４に示す仮の二次スクリプトは、下線部により示されているように、一次スクリプトで使用されている定数データがそのまま流用されている。また、それ以外の部分については、一次スクリプトに記述された構文から生成されたテンプレートによって生成される。
【００４５】
当該テンプレートは以下の処理によって生成される。まず、ユーザによる音声入力を促して、実際にスロットを埋める動作をするタグを用意し、当該タグを生の音声信号を収集するタグに置き換える。図４においては、ユーザによる音声入力を促してスロットを埋める動作をするタグとしては＜ｉｎｉｔｉａｌ＞及び＜ｆｉｅｌｄ＞が用意されており、一方、生の音声信号を収集するタグとしては＜ｒｅｃｏｒｄ＞が用意されている。図３と図４を対比することで、＜ｉｎｉｔｉａｌ＞タグ及び＜ｆｉｅｌｄ＞タグが、それぞれ一対一対応で＜ｒｅｃｏｒｄ＞タグに置換されていることがわかる。
【００４６】
一方、仮の二次スクリプトにのみ記述されているタグである＜ｂｌｏｃｋ＞、＜ｆｉｌｌｅｄ＞、及び＜ｓｕｂｍｉｔ＞については、一次スクリプトで定義されている定数値をデータとして定型的に生成される。なお、＜ｓｕｂｍｉｔ＞タグはタグ内に実行するべき処理内容も記述されており、当該タグを実行することによって、ユーザによる音声入力がユーザ入力解析部１６へと渡される。
【００４７】
すなわち、ＶｏｉｃｅＸＭＬにおける＜ｆｉｅｌｄ＞タグに代表されるようなユーザによる入力を制限してキーワードを取得するためのタグを、生の音声信号を収集し（＜ｒｅｃｏｒｄ＞タグ）、収集された音声信号の中からキーワードを取得する（＜ｓｕｂｍｉｔ＞タグを用いてユーザ入力解析部１６へと渡してキーワード抽出する）という一連の動作に置換する点に特徴を有している。
【００４８】
なお、図３に示す一次スクリプトにおいても＜ｓｕｂｍｉｔ＞タグが存在しているが、これは＜ｆｉｅｌｄ＞タグに基づいて次のタスクへと遷移するために記述しているものであり、仮の二次スクリプトにおける＜ｓｕｂｍｉｔ＞タグとは用途が異なっている。
【００４９】
また、本実施例においては、かかる置換処理をテンプレートを生成することによって行っているが、事前にスクリプト変換テーブルを設けておき、当該スクリプト変換テーブルを参照することによってタグを置換する方法であっても良い。
【００５０】
次に、スクリプト解釈部１５は、生成された仮の二次スクリプトを読み込んで、解釈して実行することで、図５に示すような対話をユーザと行う。図５においては、ユーザが発話した音声信号が一時記憶部１３に一時記憶されるファイル名を括弧内に表示している。
【００５１】
そして、図５に示す対話が終了し、ユーザが要求された全ての音声信号を入力し一時記憶された後、スクリプト解釈部１５はユーザが発話した一時記憶部１３に記憶されている音声信号及び対応する一次スクリプトを、いわゆるサーブレットのような形態をとるユーザ入力解析部１６へと引き渡す。
【００５２】
なお、本実施例においては、仮の二次スクリプトを生成するための発話例（図５）に基づいて、音声信号をすべて収集した後に認識文法の生成処理を行っているが、特にこれに限定されるものではなく、ユーザによる音声入力があるごとに認識文法の生成処理を行うものであっても良い。
【００５３】
次に、ユーザ入力解析部１６は、例えば連続音声認識モジュールや形態素解析モジュールをサブモジュールとして有しており、ユーザが発話した音声信号の内容からキーワードとなる語句を切り出す。例えば、図５に示す対話に登場しているファイル名ｔｍｐ１．ｗａｖについては、図６に示すように解析される
そして、解析された内容は、二次スクリプト生成部１７へと送られ、二次スクリプト生成部１７では、タスクに必要なキーワードと不要なキーワードを確定して、認識文法を生成することになる。二次スクリプト生成部１７で生成される認識文法の一例として、ＸＭＬ形式で記述されたものを図７に示す。
【００５４】
図７においては、ユーザ発話から抽出された品詞のうち、名詞のみをキーワードとして受け付けるようにしている。また、図７に示すように、本実施例においては名詞が二つ現れているのは、同時に受け取った一次スクリプトにおいて対応している＜ｉｎｉｔｉａｌ＞タグに対する応答例であることから、それぞれ＜ｆｉｅｌｄ＞タグに対応する発話であると想定しているからである。なお本実施例においては、各キーワードと＜ｆｉｅｌｄ＞タグとの関連付けを自動で行っているが、さらに補助スクリプトを用意することで、それぞれのキーワードがどちらの＜ｆｉｅｌｄ＞タグに対応するかをユーザに問い合わせるようにしても良い。
【００５５】
そして、二次スクリプト生成部１７は、一次スクリプトを更新することによって、図８に示すように認識文法を埋め込んだ二次スクリプトを生成する。図８における下線部では、図７に示す認識文法ファイルを認識文法記憶部１９に記憶する際のファイル名を明示することによって、当該音声応答アプリケーション実行時に用いるべき認識文法が明確になる。
【００５６】
このようにすることで、本来認識文法が準備されていなかったスクリプトについても、最適な認識文法を付与することができ、音声応答アプリケーションとして実行させることが可能となる。
【００５７】
次に、一次スクリプトが図９に示すような形で与えられている場合について説明する。図９では、下線部に示すように、受け付けることのできるキーワードの代表値として“ドリンク”及び“食べ物”が、一次スクリプトの記述時点において埋め込まれている。もちろん、当該キーワードリストは別のファイルとして保存しておき、参照するものであっても良い。以下の処理はキーワードの抽出処理以外、同様の処理となる。
【００５８】
すなわち、あらかじめキーワードリストを生成しておくことによって、キーワード抽出処理が不要あるいは簡易的な処理で十分となることから、全体の処理負荷を軽減することが可能となる。
【００５９】
また、図１０に示す仮の二次スクリプトのように、キーワードである“ｄｒｉｎｋ”及び“ｎｕｍｂｅｒ”に相当する発話された音声信号を、一次スクリプトに記述されているタスク処理プログラム名とともにユーザ入力解析部１６に渡すよう記述することも考えられる。本実施例では、タスク処理プログラム名は変数名ＴＡＳＫ＿ＰＲＯＣＥＳＳＯＲに格納している。
【００６０】
このようにスクリプトを構成することにより、認識文法を組み込んだ二次スクリプトを生成することなく、直接、音声応答アプリケーションとして実行することも可能となる。
【００６１】
以上のように本実施の形態によれば、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【００６２】
なお、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムを実現するプログラムは、図１１に示すように、ＣＤ−ＲＯＭ１１２−１やフレキシブルディスク１１２−２等の可搬型記録媒体１１２だけでなく、通信回線の先に備えられた他の記憶装置１１１や、コンピュータ１１３のハードディスクやＲＡＭ等の記録媒体１１４のいずれに記憶されるものであっても良く、プログラム実行時には、プログラムはローディングされ、主メモリ上で実行される。
【００６３】
また、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにより生成された認識文法に関する情報等についても、図１１に示すように、ＣＤ−ＲＯＭ１１２−１やフレキシブルディスク１１２−２等の可搬型記録媒体１１２だけでなく、通信回線の先に備えられた他の記憶装置１１１や、コンピュータ１１３のハードディスクやＲＡＭ等の記録媒体１１４のいずれに記憶されるものであっても良く、例えば本発明にかかる音声応答アプリケーション作成支援システムを利用する際にコンピュータ１１３により読み取られる。
【００６４】
【発明の効果】
以上のように本発明にかかる音声応答アプリケーション作成支援システムによれば、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【図面の簡単な説明】
【図１】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの構成図
【図２】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの処理の流れ図
【図３】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける一次スクリプトの例示図
【図４】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける仮の二次スクリプトの例示図
【図５】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける音声応答の例示図
【図６】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける形態素解析の例示図
【図７】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける認識文法の例示図
【図８】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける認識文法を組み込んだ二次スクリプトの例示図
【図９】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける一次スクリプトの他の例示図
【図１０】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける仮の二次スクリプトの他の例示図
【図１１】コンピュータ環境の例示図
【符号の説明】
１１  音声入力部
１２  音声出力部
１３  プラットホーム制御部
１４  一時記憶部
１５  スクリプト解釈部
１６  ユーザ入力解析部
１７  二次スクリプト生成部
１８  ドキュメントデータベース
１９  認識文法記憶部
２０  リソースフェッチャー
１１１  回線先の記憶装置
１１２  ＣＤ−ＲＯＭやフレキシブルディスク等の可搬型記録媒体
１１２−１  ＣＤ−ＲＯＭ
１１２−２  フレキシブルディスク
１１３  コンピュータ
１１４  コンピュータ上のＲＡＭ／ハードディスク等の記録媒体
【図１】
2004233852.tif 000003
【図２】
2004233852.tif 000004
【図３】
2004233852.tif 000005
【図４】
2004233852.tif 000006
【図５】
2004233852.tif 000007
【図６】
2004233852.tif 000008
【図７】
2004233852.tif 000009
【図８】
2004233852.tif 000010
【図９】
2004233852.tif 000011
【図１０】
2004233852.tif 000012
【図１１】
2004233852.tif 000013