JP2004233852A - 音声応答アプリケーション作成支援システム及び方法 - Google Patents
音声応答アプリケーション作成支援システム及び方法 Download PDFInfo
- Publication number
- JP2004233852A JP2004233852A JP2003024488A JP2003024488A JP2004233852A JP 2004233852 A JP2004233852 A JP 2004233852A JP 2003024488 A JP2003024488 A JP 2003024488A JP 2003024488 A JP2003024488 A JP 2003024488A JP 2004233852 A JP2004233852 A JP 2004233852A
- Authority
- JP
- Japan
- Prior art keywords
- script
- primary
- recognition grammar
- user
- generated
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】認識文法がない場合であっても、対話スクリプトを生成することによって音声応答アプリケーションを構築することができる音声応答アプリケーション作成支援システム及び方法を提供する。
【解決手段】認識文法を含んだ二次スクリプトの存在の有無を確認し、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、ユーザによる発話を音声信号として入力して一時記憶し、少なくとも言語コード及び音声認識エンジンを選択し、音声信号を解析してキーワードを抽出し、キーワードに基づいて認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する。二次スクリプトが生成されている場合には、二次スクリプトを解釈して実行する。
【選択図】 図1
【解決手段】認識文法を含んだ二次スクリプトの存在の有無を確認し、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、ユーザによる発話を音声信号として入力して一時記憶し、少なくとも言語コード及び音声認識エンジンを選択し、音声信号を解析してキーワードを抽出し、キーワードに基づいて認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する。二次スクリプトが生成されている場合には、二次スクリプトを解釈して実行する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、エンドユーザと対話を進めてタスクを実行する対話システムに関する。特に、対話と実行タスクを記述したスクリプト言語とそのスクリプト言語によって記述された対話スクリプトを解釈・実行するインタプリタ、およびインタプリタとユーザを仲介する実装プラットホーム、および対話スクリプトに付随して必要なキーワード抽出用文法生成装置に関する。
【0002】
【従来の技術】
昨今のコンピュータ技術の急速な伸展に伴って、音声による対話を活用したアプリケーションが多々開発されるようになってきている。これらの音声対話システムにおいては、ユーザによる発話とシステムによる合成音声等による発話を交互に繰り返しながら、ユーザ発話の内容に応じて階層的な分岐を行いながらユーザから必要となる情報を収集し、十分な情報が得られた時点において何らかのタスクを実行する。
【0003】
これらの応答シナリオを記述するスクリプト言語としては、VoiceXMLフォーラム( HYPERLINK http://www.voicexml.org/ http://www.voicexml.org/)によって策定されたVoiceXML1.0が主流であり、商用ベースで既にリリースされている。現在では、後継バージョンとしてVoiceXML2.0がワールドワイドウェブコンソーシアム(W3C;http://www.w3.org/)において策定段階に入っている。
【0004】
これ以外にも、音声対話サービスを提供するシステムインテグレータが独自に策定したスクリプト言語も存在する。例えば、富士通株式会社からは、「VoiceScript(R)」という対話記述用スクリプト言語がリリースされている。
【0005】
これらの音声対話システムを正常に稼動させるには、入力されるユーザによる発話の内容をより精度良く認識することが最も重要な課題となる。認識精度を高めるためには、(特許文献1)のように認識辞書の語彙を自動的に増強する方法や、(特許文献2)のようにキーワードを抽出してから当該キーワードに対応した認識辞書を生成する方法当が考えられている。
【0006】
さらに、スクリプト言語を利用する場合には、ユーザによる発話の内容をより正確に認識するために、人間の発する言葉から必要なコマンドを抽出するために必要な認識文法(グラマー)を必要とする。この場合、ユーザの発話内容に合致する認識文法が想定されている場合には、当該認識文法に従ってユーザの発話内容を解析して、含まれているキーワードの抽出を行う。したがって、音声対話システムを運用するためには、対話を記述する上述したようなスクリプト言語で記述された対話スクリプトだけでは足りず、ユーザの発話内容を一次認識するための認識文法についても記述しておく必要がある。
【0007】
認識文法の書式についてはJava Speech Grammar Format(JSGF)、ワールドワイドウェブコンソーシアムによって策定段階となっているSpeechRecognition Grammar Specification Version 1.0(SRGS)において検討されている2つの書式Augmented BNF syntax(ABNF)とGrXML等が代表的である。また、その他にも、以前から音声認識アプリケーションを市場に提供してきた音声認識プロバイダ各社が独自に策定した書式も存在している。
【0008】
VoiceXMLやSRGSといったスクリプト言語は、ウェブページ記述用スクリプトであるHTML言語をベースとして拡張されたXML言語から派生した言語であるが、主にデータを修飾する用途であったHTML言語に比べると、プログラミング言語としての色彩が非常に強くなっている。各言語仕様によって定義されたタグを利用してスクリプトを記述するにはテキストエディタを利用する方法もあるが、C言語、あるいはC++やJava(R)といったプログラミング言語にエディット環境やデバッガを統合した統合開発環境があるように、簡易にスクリプトを記述するための専用開発環境を用意する対話システムベンダーもある。
【0009】
【特許文献1】
特開2002−14693号公報
【0010】
【特許文献2】
特開平11−202890号公報
【0011】
【発明が解決しようとする課題】
しかし、上述したような方法では、書式の相違する対話スクリプトと認識文法を準備しておく必要があるが、それぞれ単独では何ら対話アプリケーションを構成できるものではない。すなわち、対話スクリプトおのおのに対応する認識文法を準備する必要があり、対話アプリケーションの作成者は、認識文法の生成を同時に行う必要があり、作成負荷が過大となっているという問題点があった。
【0012】
また、一つ一つの対話スクリプトに対応するすべての認識文法を事前に準備することは、その認識文法の多様性によって現実的には困難であり、また記憶容量の物理的な制約によって、すべての認識文法を事前に登録しておくことも困難である。
【0013】
さらに、認識文法が存在しない場合には、ユーザの発話内容を認識することができず、システムによる応答が見当違いの応答になってしまうことから、音声応答アプリケーションとして成立しないという問題点もあった。
【0014】
本発明は、上記問題点を解決するために、認識文法がない場合であっても、対話スクリプトを生成することによって音声応答アプリケーションを構築することができる音声応答アプリケーション作成支援システム及び方法を提供することを目的とする。
【0015】
【課題を解決するための手段】
上記目的を達成するために本発明にかかる音声応答アプリケーション作成支援システムは、ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援システムであって、認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは二次スクリプトを選択して取得し、一次スクリプトもしくは二次スクリプトを解釈して実行するインタプリタであるスクリプト解釈部と、ユーザによる発話を音声信号として入力する音声入力部と、入力された音声信号を一時記憶する一時記憶部と、入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択するプラットホーム制御部と、一次記憶されている音声信号を解析してキーワードを抽出するユーザ入力解析部と、一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する二次スクリプト生成部とを含み、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成し、スクリプト解釈部において解釈して実行し、二次スクリプトが生成されている場合には、二次スクリプトを前記スクリプト解釈部において解釈して実行することを特徴とする。
【0016】
かかる構成により、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【0017】
また、本発明にかかる音声応答アプリケーション作成支援システムは、認識文法を保存する認識文法記憶部をさらに含むことが好ましい。ユーザの発話内容に応じて認識文法を随時更新・蓄積することができるからである。
【0018】
また、本発明にかかる音声応答アプリケーション作成支援システムは、二次スクリプトが生成されているか否かを判定し、生成されていない場合には仮の二次スクリプトを、生成されている場合には二次スクリプトを、それぞれスクリプト解釈部へ渡すリソースフェッチャーをさらに含むことが好ましい。
【0019】
また、本発明は、上記のような音声応答アプリケーション作成支援システムの機能をコンピュータの処理ステップとして実行するソフトウェアを特徴とするものであり、具体的には、ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援方法であって、認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは二次スクリプトを選択して取得し、一次スクリプトもしくは二次スクリプトを解釈して実行する工程と、ユーザによる発話を音声信号として入力する工程と、入力された音声信号を一時記憶する工程と、入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択する工程と、一次記憶されている音声信号を解析してキーワードを抽出する工程と、一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する工程とを含み、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、二次スクリプトが生成されている場合には、二次スクリプトを解釈して実行する自動応答アプリケーション作成支援方法並びにそのような工程を具現化するコンピュータ実行可能なプログラムであることを特徴とする。
【0020】
かかる構成により、コンピュータ上へ当該プログラムをロードさせ実行することで、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる自動応答アプリケーション作成支援システムを実現することが可能となる。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムについて、図面を参照しながら説明する。図1は本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの構成図である。
【0022】
図1において、まず音声出力部12から合成音声等により出力されているシステムによる音声出力により促されたユーザによる発話を、音声入力部11において音声信号として入力する。そして、プラットホーム制御部13において、言語属性の切り替えや、認識エンジンの切り替えを行う。すなわち、音声入力部11から入力された音声信号に応じて、言語コードを切り替えたり、適切な認識エンジンを選択する作業を行う。
【0023】
プラットホーム制御部13では、音声入力部11から入力された音声信号そのものを、一時記憶部14に記憶する。記憶された音声信号を用いて、認識文法を生成するためのキーワードを抽出するためである。
【0024】
また、スクリプト解釈部15では、音声対話アプリケーションにおいて用意されているスクリプトを解釈して実行する。もちろん、解釈されたスクリプトに対して、プラットホーム制御部13において、解釈されたスクリプトの内容に応じて言語コードを切り替えたり適切な合成音声を選択することによって生成された合成音声が、音声対話アプリケーションの出力として音声出力部12から出力される。
【0025】
次に、ユーザ入力解析部16では、一次記憶部14に記憶されているユーザにより発声された音声信号を形態素解析等して、必要なキーワードを分析することになる。
【0026】
そして、二次スクリプト生成部17では、記述されたスクリプト及び音声信号から得られたキーワードに基づいて、認識文法を生成し、認識文法を組み込むように当初から準備されている一次スクリプトを更新することで、二次スクリプトを生成する。また、認識文法が存在しない場合には、仮の二次スクリプトを生成する。生成された二次スクリプトあるいは仮の二次スクリプトがスクリプト解釈部15によって解釈され、実行されることによって、ユーザは音声対話を行うことができる。ここで生成された認識文法は、認識文法記憶部19に記憶される。認識文法記憶部19へ生成された認識文法を記憶しておくことで、次に音声入力がなされた時点においては、当該認識文法を参照することが可能となる。
【0027】
また、認識文法の有無の確認は、二次スクリプト生成部17において二次スクリプトの生成時に判断するものであっても良いし、認識文法記憶部19に対応する認識文法が記憶されているか否かを確認するものであっても良い。
【0028】
なお、リソースフェッチャー20は、スクリプト解釈部15で解釈して実行するスクリプトを、アプリケーション作成時に記述されている一次スクリプトに基づいて生成される仮の二次スクリプトと、新たに生成された二次スクリプトとの間で切り替える。
【0029】
また、キーワードについては、ユーザ入力解析部16において解析されることによって抽出されたキーワードに限定されるものではなく、あらかじめドキュメントデータベース18に記憶させておいたキーワードを使用するものであっても良い。
【0030】
次に、かかる構成を有する本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける処理の流れについて説明する。図2に本発明の実施の形態にかかる音声応答アプリケーション作成支援システムを実現するプログラムの処理の流れ図を示す。
【0031】
図2において、まずプラットホーム制御部13からスクリプト解釈部15に対して電話の着信等の対話開始依頼がなされると(ステップS201)、スクリプト解釈部15は認識文法を含んだ二次スクリプトの有無を確認する(ステップS202)。
【0032】
なお、認識文法の有無の確認方法は特に限定されるものではなく、二次スクリプト生成部17において二次スクリプトの生成時に判断するものであっても良いし、認識文法記憶部19に対応する認識文法が記憶されているか否かを確認するものであっても良い。
【0033】
認識文法を含んだ二次スクリプトが既に生成されている場合には(ステップS202:Yes)、当該二次スクリプトの取り出しをリソースフェッチャー20に対して依頼し(ステップS203)、スクリプト解釈部15において当該二次スクリプトが解釈されて実行され(ステップS204)、合成音声等を用いたシステムによる音声出力によりユーザに対する発話依頼を行う(ステップS205)。
【0034】
認識文法を含んだ二次スクリプトが生成されていない場合には(ステップS202:No)、リソースフェッチャー20に対して一次スクリプトの取り出しを依頼する(ステップS206)。リソースフェッチャー20がその旨を二次スクリプト生成部17へ伝えると、二次スクリプト生成部17は一次スクリプトをドキュメントデータベース18から取り出すとともに、形式的な仮の二次スクリプトを生成する(ステップS207)。仮の二次スクリプトには、この時点では認識文法が含まれていない。
【0035】
生成された仮の二次スクリプトがスクリプト解釈部15へ渡されたら、当該スクリプトが解釈されて実行され(ステップS208)、合成音声等を用いたシステムによる音声出力によりユーザに対する発話依頼を行う(ステップS209)。
【0036】
次に、発話依頼により促されたユーザによる発話を音声信号として入力する(ステップS210)。そして、入力された音声信号に基づいて、言語コードを切り替えたり、適切な認識エンジンを選択するとともに(ステップS211)、入力された音声信号そのものを一時記憶する(ステップS212)。
【0037】
そして、一次記憶されているユーザにより発声された音声信号を形態素解析等して、必要なキーワードを分析する(ステップS213)。さらに、記述された一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、一次スクリプトを更新することによって、認識文法が組み込まれた二次スクリプトを生成する(ステップS214)。
【0038】
このような構成とすることによって、認識文法が存在しない場合であっても、音声信号に基づいて必要な認識文法を生成することができることから、音声応答アプリケーションを正常に実行させることが可能となる。
【0039】
次に、具体的にどのようなスクリプト処理が行われるのかについて、具体例を示しながら説明する。
【0040】
まず、ユーザからの電話を着呼するか、あるいは音声応答アプリケーションの始動動作を行うことによって、プラットホーム制御部13からインタプリタであるスクリプト解釈部15に対して応答依頼がなされる。
【0041】
そして、スクリプト解釈部15は、音声応答アプリケーションの初期動作スクリプトとして一次スクリプトを指定し、リソースフェッチャー20に対して一次スクリプトの取得を指示する。一次スクリプトは、例えば図3に示すようなVoiceXMLで記述されたスクリプトである場合を想定する。
【0042】
ところが、図3に示す一次スクリプトの記述からも明らかなように、当該一次スクリプトの記述内容では、どんなユーザの発話を受け付けるのか、認識するための情報としての認識文法が記述されていないため、意図した対話が成立せず、スクリプト自体の正しさも確認することができない。したがって、音声応答アプリケーションの作成者は、記述された一次スクリプトの動作を確かめるために、認識文法を別途用意する必要が生じることになる。
【0043】
そこで、リソースフェッチャー20は、一次スクリプトを二次スクリプト生成部17に引渡し、二次スクリプト生成部17においては、図4に示すような仮の二次スクリプトが生成される。ここで仮の二次スクリプトとは、認識文法が組み込まれる前の状態の二次スクリプトを意味しており、ユーザの発話による音声信号をどのタイミングで取得するのか等について記述されているものと定義する。
【0044】
図4に示す仮の二次スクリプトは、下線部により示されているように、一次スクリプトで使用されている定数データがそのまま流用されている。また、それ以外の部分については、一次スクリプトに記述された構文から生成されたテンプレートによって生成される。
【0045】
当該テンプレートは以下の処理によって生成される。まず、ユーザによる音声入力を促して、実際にスロットを埋める動作をするタグを用意し、当該タグを生の音声信号を収集するタグに置き換える。図4においては、ユーザによる音声入力を促してスロットを埋める動作をするタグとしては<initial>及び<field>が用意されており、一方、生の音声信号を収集するタグとしては<record>が用意されている。図3と図4を対比することで、<initial>タグ及び<field>タグが、それぞれ一対一対応で<record>タグに置換されていることがわかる。
【0046】
一方、仮の二次スクリプトにのみ記述されているタグである<block>、<filled>、及び<submit>については、一次スクリプトで定義されている定数値をデータとして定型的に生成される。なお、<submit>タグはタグ内に実行するべき処理内容も記述されており、当該タグを実行することによって、ユーザによる音声入力がユーザ入力解析部16へと渡される。
【0047】
すなわち、VoiceXMLにおける<field>タグに代表されるようなユーザによる入力を制限してキーワードを取得するためのタグを、生の音声信号を収集し(<record>タグ)、収集された音声信号の中からキーワードを取得する(<submit>タグを用いてユーザ入力解析部16へと渡してキーワード抽出する)という一連の動作に置換する点に特徴を有している。
【0048】
なお、図3に示す一次スクリプトにおいても<submit>タグが存在しているが、これは<field>タグに基づいて次のタスクへと遷移するために記述しているものであり、仮の二次スクリプトにおける<submit>タグとは用途が異なっている。
【0049】
また、本実施例においては、かかる置換処理をテンプレートを生成することによって行っているが、事前にスクリプト変換テーブルを設けておき、当該スクリプト変換テーブルを参照することによってタグを置換する方法であっても良い。
【0050】
次に、スクリプト解釈部15は、生成された仮の二次スクリプトを読み込んで、解釈して実行することで、図5に示すような対話をユーザと行う。図5においては、ユーザが発話した音声信号が一時記憶部13に一時記憶されるファイル名を括弧内に表示している。
【0051】
そして、図5に示す対話が終了し、ユーザが要求された全ての音声信号を入力し一時記憶された後、スクリプト解釈部15はユーザが発話した一時記憶部13に記憶されている音声信号及び対応する一次スクリプトを、いわゆるサーブレットのような形態をとるユーザ入力解析部16へと引き渡す。
【0052】
なお、本実施例においては、仮の二次スクリプトを生成するための発話例(図5)に基づいて、音声信号をすべて収集した後に認識文法の生成処理を行っているが、特にこれに限定されるものではなく、ユーザによる音声入力があるごとに認識文法の生成処理を行うものであっても良い。
【0053】
次に、ユーザ入力解析部16は、例えば連続音声認識モジュールや形態素解析モジュールをサブモジュールとして有しており、ユーザが発話した音声信号の内容からキーワードとなる語句を切り出す。例えば、図5に示す対話に登場しているファイル名tmp1.wavについては、図6に示すように解析される
そして、解析された内容は、二次スクリプト生成部17へと送られ、二次スクリプト生成部17では、タスクに必要なキーワードと不要なキーワードを確定して、認識文法を生成することになる。二次スクリプト生成部17で生成される認識文法の一例として、XML形式で記述されたものを図7に示す。
【0054】
図7においては、ユーザ発話から抽出された品詞のうち、名詞のみをキーワードとして受け付けるようにしている。また、図7に示すように、本実施例においては名詞が二つ現れているのは、同時に受け取った一次スクリプトにおいて対応している<initial>タグに対する応答例であることから、それぞれ<field>タグに対応する発話であると想定しているからである。なお本実施例においては、各キーワードと<field>タグとの関連付けを自動で行っているが、さらに補助スクリプトを用意することで、それぞれのキーワードがどちらの<field>タグに対応するかをユーザに問い合わせるようにしても良い。
【0055】
そして、二次スクリプト生成部17は、一次スクリプトを更新することによって、図8に示すように認識文法を埋め込んだ二次スクリプトを生成する。図8における下線部では、図7に示す認識文法ファイルを認識文法記憶部19に記憶する際のファイル名を明示することによって、当該音声応答アプリケーション実行時に用いるべき認識文法が明確になる。
【0056】
このようにすることで、本来認識文法が準備されていなかったスクリプトについても、最適な認識文法を付与することができ、音声応答アプリケーションとして実行させることが可能となる。
【0057】
次に、一次スクリプトが図9に示すような形で与えられている場合について説明する。図9では、下線部に示すように、受け付けることのできるキーワードの代表値として“ドリンク”及び“食べ物”が、一次スクリプトの記述時点において埋め込まれている。もちろん、当該キーワードリストは別のファイルとして保存しておき、参照するものであっても良い。以下の処理はキーワードの抽出処理以外、同様の処理となる。
【0058】
すなわち、あらかじめキーワードリストを生成しておくことによって、キーワード抽出処理が不要あるいは簡易的な処理で十分となることから、全体の処理負荷を軽減することが可能となる。
【0059】
また、図10に示す仮の二次スクリプトのように、キーワードである“drink”及び“number”に相当する発話された音声信号を、一次スクリプトに記述されているタスク処理プログラム名とともにユーザ入力解析部16に渡すよう記述することも考えられる。本実施例では、タスク処理プログラム名は変数名TASK_PROCESSORに格納している。
【0060】
このようにスクリプトを構成することにより、認識文法を組み込んだ二次スクリプトを生成することなく、直接、音声応答アプリケーションとして実行することも可能となる。
【0061】
以上のように本実施の形態によれば、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【0062】
なお、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムを実現するプログラムは、図11に示すように、CD−ROM112−1やフレキシブルディスク112−2等の可搬型記録媒体112だけでなく、通信回線の先に備えられた他の記憶装置111や、コンピュータ113のハードディスクやRAM等の記録媒体114のいずれに記憶されるものであっても良く、プログラム実行時には、プログラムはローディングされ、主メモリ上で実行される。
【0063】
また、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにより生成された認識文法に関する情報等についても、図11に示すように、CD−ROM112−1やフレキシブルディスク112−2等の可搬型記録媒体112だけでなく、通信回線の先に備えられた他の記憶装置111や、コンピュータ113のハードディスクやRAM等の記録媒体114のいずれに記憶されるものであっても良く、例えば本発明にかかる音声応答アプリケーション作成支援システムを利用する際にコンピュータ113により読み取られる。
【0064】
【発明の効果】
以上のように本発明にかかる音声応答アプリケーション作成支援システムによれば、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの構成図
【図2】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの処理の流れ図
【図3】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける一次スクリプトの例示図
【図4】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける仮の二次スクリプトの例示図
【図5】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける音声応答の例示図
【図6】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける形態素解析の例示図
【図7】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける認識文法の例示図
【図8】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける認識文法を組み込んだ二次スクリプトの例示図
【図9】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける一次スクリプトの他の例示図
【図10】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける仮の二次スクリプトの他の例示図
【図11】コンピュータ環境の例示図
【符号の説明】
11 音声入力部
12 音声出力部
13 プラットホーム制御部
14 一時記憶部
15 スクリプト解釈部
16 ユーザ入力解析部
17 二次スクリプト生成部
18 ドキュメントデータベース
19 認識文法記憶部
20 リソースフェッチャー
111 回線先の記憶装置
112 CD−ROMやフレキシブルディスク等の可搬型記録媒体
112−1 CD−ROM
112−2 フレキシブルディスク
113 コンピュータ
114 コンピュータ上のRAM/ハードディスク等の記録媒体
【発明の属する技術分野】
本発明は、エンドユーザと対話を進めてタスクを実行する対話システムに関する。特に、対話と実行タスクを記述したスクリプト言語とそのスクリプト言語によって記述された対話スクリプトを解釈・実行するインタプリタ、およびインタプリタとユーザを仲介する実装プラットホーム、および対話スクリプトに付随して必要なキーワード抽出用文法生成装置に関する。
【0002】
【従来の技術】
昨今のコンピュータ技術の急速な伸展に伴って、音声による対話を活用したアプリケーションが多々開発されるようになってきている。これらの音声対話システムにおいては、ユーザによる発話とシステムによる合成音声等による発話を交互に繰り返しながら、ユーザ発話の内容に応じて階層的な分岐を行いながらユーザから必要となる情報を収集し、十分な情報が得られた時点において何らかのタスクを実行する。
【0003】
これらの応答シナリオを記述するスクリプト言語としては、VoiceXMLフォーラム( HYPERLINK http://www.voicexml.org/ http://www.voicexml.org/)によって策定されたVoiceXML1.0が主流であり、商用ベースで既にリリースされている。現在では、後継バージョンとしてVoiceXML2.0がワールドワイドウェブコンソーシアム(W3C;http://www.w3.org/)において策定段階に入っている。
【0004】
これ以外にも、音声対話サービスを提供するシステムインテグレータが独自に策定したスクリプト言語も存在する。例えば、富士通株式会社からは、「VoiceScript(R)」という対話記述用スクリプト言語がリリースされている。
【0005】
これらの音声対話システムを正常に稼動させるには、入力されるユーザによる発話の内容をより精度良く認識することが最も重要な課題となる。認識精度を高めるためには、(特許文献1)のように認識辞書の語彙を自動的に増強する方法や、(特許文献2)のようにキーワードを抽出してから当該キーワードに対応した認識辞書を生成する方法当が考えられている。
【0006】
さらに、スクリプト言語を利用する場合には、ユーザによる発話の内容をより正確に認識するために、人間の発する言葉から必要なコマンドを抽出するために必要な認識文法(グラマー)を必要とする。この場合、ユーザの発話内容に合致する認識文法が想定されている場合には、当該認識文法に従ってユーザの発話内容を解析して、含まれているキーワードの抽出を行う。したがって、音声対話システムを運用するためには、対話を記述する上述したようなスクリプト言語で記述された対話スクリプトだけでは足りず、ユーザの発話内容を一次認識するための認識文法についても記述しておく必要がある。
【0007】
認識文法の書式についてはJava Speech Grammar Format(JSGF)、ワールドワイドウェブコンソーシアムによって策定段階となっているSpeechRecognition Grammar Specification Version 1.0(SRGS)において検討されている2つの書式Augmented BNF syntax(ABNF)とGrXML等が代表的である。また、その他にも、以前から音声認識アプリケーションを市場に提供してきた音声認識プロバイダ各社が独自に策定した書式も存在している。
【0008】
VoiceXMLやSRGSといったスクリプト言語は、ウェブページ記述用スクリプトであるHTML言語をベースとして拡張されたXML言語から派生した言語であるが、主にデータを修飾する用途であったHTML言語に比べると、プログラミング言語としての色彩が非常に強くなっている。各言語仕様によって定義されたタグを利用してスクリプトを記述するにはテキストエディタを利用する方法もあるが、C言語、あるいはC++やJava(R)といったプログラミング言語にエディット環境やデバッガを統合した統合開発環境があるように、簡易にスクリプトを記述するための専用開発環境を用意する対話システムベンダーもある。
【0009】
【特許文献1】
特開2002−14693号公報
【0010】
【特許文献2】
特開平11−202890号公報
【0011】
【発明が解決しようとする課題】
しかし、上述したような方法では、書式の相違する対話スクリプトと認識文法を準備しておく必要があるが、それぞれ単独では何ら対話アプリケーションを構成できるものではない。すなわち、対話スクリプトおのおのに対応する認識文法を準備する必要があり、対話アプリケーションの作成者は、認識文法の生成を同時に行う必要があり、作成負荷が過大となっているという問題点があった。
【0012】
また、一つ一つの対話スクリプトに対応するすべての認識文法を事前に準備することは、その認識文法の多様性によって現実的には困難であり、また記憶容量の物理的な制約によって、すべての認識文法を事前に登録しておくことも困難である。
【0013】
さらに、認識文法が存在しない場合には、ユーザの発話内容を認識することができず、システムによる応答が見当違いの応答になってしまうことから、音声応答アプリケーションとして成立しないという問題点もあった。
【0014】
本発明は、上記問題点を解決するために、認識文法がない場合であっても、対話スクリプトを生成することによって音声応答アプリケーションを構築することができる音声応答アプリケーション作成支援システム及び方法を提供することを目的とする。
【0015】
【課題を解決するための手段】
上記目的を達成するために本発明にかかる音声応答アプリケーション作成支援システムは、ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援システムであって、認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは二次スクリプトを選択して取得し、一次スクリプトもしくは二次スクリプトを解釈して実行するインタプリタであるスクリプト解釈部と、ユーザによる発話を音声信号として入力する音声入力部と、入力された音声信号を一時記憶する一時記憶部と、入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択するプラットホーム制御部と、一次記憶されている音声信号を解析してキーワードを抽出するユーザ入力解析部と、一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する二次スクリプト生成部とを含み、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成し、スクリプト解釈部において解釈して実行し、二次スクリプトが生成されている場合には、二次スクリプトを前記スクリプト解釈部において解釈して実行することを特徴とする。
【0016】
かかる構成により、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【0017】
また、本発明にかかる音声応答アプリケーション作成支援システムは、認識文法を保存する認識文法記憶部をさらに含むことが好ましい。ユーザの発話内容に応じて認識文法を随時更新・蓄積することができるからである。
【0018】
また、本発明にかかる音声応答アプリケーション作成支援システムは、二次スクリプトが生成されているか否かを判定し、生成されていない場合には仮の二次スクリプトを、生成されている場合には二次スクリプトを、それぞれスクリプト解釈部へ渡すリソースフェッチャーをさらに含むことが好ましい。
【0019】
また、本発明は、上記のような音声応答アプリケーション作成支援システムの機能をコンピュータの処理ステップとして実行するソフトウェアを特徴とするものであり、具体的には、ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援方法であって、認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは二次スクリプトを選択して取得し、一次スクリプトもしくは二次スクリプトを解釈して実行する工程と、ユーザによる発話を音声信号として入力する工程と、入力された音声信号を一時記憶する工程と、入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択する工程と、一次記憶されている音声信号を解析してキーワードを抽出する工程と、一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、認識文法を組み込んだ二次スクリプトを生成する工程とを含み、二次スクリプトが生成されていない場合には、一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、二次スクリプトが生成されている場合には、二次スクリプトを解釈して実行する自動応答アプリケーション作成支援方法並びにそのような工程を具現化するコンピュータ実行可能なプログラムであることを特徴とする。
【0020】
かかる構成により、コンピュータ上へ当該プログラムをロードさせ実行することで、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる自動応答アプリケーション作成支援システムを実現することが可能となる。
【0021】
【発明の実施の形態】
以下、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムについて、図面を参照しながら説明する。図1は本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの構成図である。
【0022】
図1において、まず音声出力部12から合成音声等により出力されているシステムによる音声出力により促されたユーザによる発話を、音声入力部11において音声信号として入力する。そして、プラットホーム制御部13において、言語属性の切り替えや、認識エンジンの切り替えを行う。すなわち、音声入力部11から入力された音声信号に応じて、言語コードを切り替えたり、適切な認識エンジンを選択する作業を行う。
【0023】
プラットホーム制御部13では、音声入力部11から入力された音声信号そのものを、一時記憶部14に記憶する。記憶された音声信号を用いて、認識文法を生成するためのキーワードを抽出するためである。
【0024】
また、スクリプト解釈部15では、音声対話アプリケーションにおいて用意されているスクリプトを解釈して実行する。もちろん、解釈されたスクリプトに対して、プラットホーム制御部13において、解釈されたスクリプトの内容に応じて言語コードを切り替えたり適切な合成音声を選択することによって生成された合成音声が、音声対話アプリケーションの出力として音声出力部12から出力される。
【0025】
次に、ユーザ入力解析部16では、一次記憶部14に記憶されているユーザにより発声された音声信号を形態素解析等して、必要なキーワードを分析することになる。
【0026】
そして、二次スクリプト生成部17では、記述されたスクリプト及び音声信号から得られたキーワードに基づいて、認識文法を生成し、認識文法を組み込むように当初から準備されている一次スクリプトを更新することで、二次スクリプトを生成する。また、認識文法が存在しない場合には、仮の二次スクリプトを生成する。生成された二次スクリプトあるいは仮の二次スクリプトがスクリプト解釈部15によって解釈され、実行されることによって、ユーザは音声対話を行うことができる。ここで生成された認識文法は、認識文法記憶部19に記憶される。認識文法記憶部19へ生成された認識文法を記憶しておくことで、次に音声入力がなされた時点においては、当該認識文法を参照することが可能となる。
【0027】
また、認識文法の有無の確認は、二次スクリプト生成部17において二次スクリプトの生成時に判断するものであっても良いし、認識文法記憶部19に対応する認識文法が記憶されているか否かを確認するものであっても良い。
【0028】
なお、リソースフェッチャー20は、スクリプト解釈部15で解釈して実行するスクリプトを、アプリケーション作成時に記述されている一次スクリプトに基づいて生成される仮の二次スクリプトと、新たに生成された二次スクリプトとの間で切り替える。
【0029】
また、キーワードについては、ユーザ入力解析部16において解析されることによって抽出されたキーワードに限定されるものではなく、あらかじめドキュメントデータベース18に記憶させておいたキーワードを使用するものであっても良い。
【0030】
次に、かかる構成を有する本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける処理の流れについて説明する。図2に本発明の実施の形態にかかる音声応答アプリケーション作成支援システムを実現するプログラムの処理の流れ図を示す。
【0031】
図2において、まずプラットホーム制御部13からスクリプト解釈部15に対して電話の着信等の対話開始依頼がなされると(ステップS201)、スクリプト解釈部15は認識文法を含んだ二次スクリプトの有無を確認する(ステップS202)。
【0032】
なお、認識文法の有無の確認方法は特に限定されるものではなく、二次スクリプト生成部17において二次スクリプトの生成時に判断するものであっても良いし、認識文法記憶部19に対応する認識文法が記憶されているか否かを確認するものであっても良い。
【0033】
認識文法を含んだ二次スクリプトが既に生成されている場合には(ステップS202:Yes)、当該二次スクリプトの取り出しをリソースフェッチャー20に対して依頼し(ステップS203)、スクリプト解釈部15において当該二次スクリプトが解釈されて実行され(ステップS204)、合成音声等を用いたシステムによる音声出力によりユーザに対する発話依頼を行う(ステップS205)。
【0034】
認識文法を含んだ二次スクリプトが生成されていない場合には(ステップS202:No)、リソースフェッチャー20に対して一次スクリプトの取り出しを依頼する(ステップS206)。リソースフェッチャー20がその旨を二次スクリプト生成部17へ伝えると、二次スクリプト生成部17は一次スクリプトをドキュメントデータベース18から取り出すとともに、形式的な仮の二次スクリプトを生成する(ステップS207)。仮の二次スクリプトには、この時点では認識文法が含まれていない。
【0035】
生成された仮の二次スクリプトがスクリプト解釈部15へ渡されたら、当該スクリプトが解釈されて実行され(ステップS208)、合成音声等を用いたシステムによる音声出力によりユーザに対する発話依頼を行う(ステップS209)。
【0036】
次に、発話依頼により促されたユーザによる発話を音声信号として入力する(ステップS210)。そして、入力された音声信号に基づいて、言語コードを切り替えたり、適切な認識エンジンを選択するとともに(ステップS211)、入力された音声信号そのものを一時記憶する(ステップS212)。
【0037】
そして、一次記憶されているユーザにより発声された音声信号を形態素解析等して、必要なキーワードを分析する(ステップS213)。さらに、記述された一次スクリプト及び音声信号から抽出されたキーワードに基づいて、認識文法を生成し、一次スクリプトを更新することによって、認識文法が組み込まれた二次スクリプトを生成する(ステップS214)。
【0038】
このような構成とすることによって、認識文法が存在しない場合であっても、音声信号に基づいて必要な認識文法を生成することができることから、音声応答アプリケーションを正常に実行させることが可能となる。
【0039】
次に、具体的にどのようなスクリプト処理が行われるのかについて、具体例を示しながら説明する。
【0040】
まず、ユーザからの電話を着呼するか、あるいは音声応答アプリケーションの始動動作を行うことによって、プラットホーム制御部13からインタプリタであるスクリプト解釈部15に対して応答依頼がなされる。
【0041】
そして、スクリプト解釈部15は、音声応答アプリケーションの初期動作スクリプトとして一次スクリプトを指定し、リソースフェッチャー20に対して一次スクリプトの取得を指示する。一次スクリプトは、例えば図3に示すようなVoiceXMLで記述されたスクリプトである場合を想定する。
【0042】
ところが、図3に示す一次スクリプトの記述からも明らかなように、当該一次スクリプトの記述内容では、どんなユーザの発話を受け付けるのか、認識するための情報としての認識文法が記述されていないため、意図した対話が成立せず、スクリプト自体の正しさも確認することができない。したがって、音声応答アプリケーションの作成者は、記述された一次スクリプトの動作を確かめるために、認識文法を別途用意する必要が生じることになる。
【0043】
そこで、リソースフェッチャー20は、一次スクリプトを二次スクリプト生成部17に引渡し、二次スクリプト生成部17においては、図4に示すような仮の二次スクリプトが生成される。ここで仮の二次スクリプトとは、認識文法が組み込まれる前の状態の二次スクリプトを意味しており、ユーザの発話による音声信号をどのタイミングで取得するのか等について記述されているものと定義する。
【0044】
図4に示す仮の二次スクリプトは、下線部により示されているように、一次スクリプトで使用されている定数データがそのまま流用されている。また、それ以外の部分については、一次スクリプトに記述された構文から生成されたテンプレートによって生成される。
【0045】
当該テンプレートは以下の処理によって生成される。まず、ユーザによる音声入力を促して、実際にスロットを埋める動作をするタグを用意し、当該タグを生の音声信号を収集するタグに置き換える。図4においては、ユーザによる音声入力を促してスロットを埋める動作をするタグとしては<initial>及び<field>が用意されており、一方、生の音声信号を収集するタグとしては<record>が用意されている。図3と図4を対比することで、<initial>タグ及び<field>タグが、それぞれ一対一対応で<record>タグに置換されていることがわかる。
【0046】
一方、仮の二次スクリプトにのみ記述されているタグである<block>、<filled>、及び<submit>については、一次スクリプトで定義されている定数値をデータとして定型的に生成される。なお、<submit>タグはタグ内に実行するべき処理内容も記述されており、当該タグを実行することによって、ユーザによる音声入力がユーザ入力解析部16へと渡される。
【0047】
すなわち、VoiceXMLにおける<field>タグに代表されるようなユーザによる入力を制限してキーワードを取得するためのタグを、生の音声信号を収集し(<record>タグ)、収集された音声信号の中からキーワードを取得する(<submit>タグを用いてユーザ入力解析部16へと渡してキーワード抽出する)という一連の動作に置換する点に特徴を有している。
【0048】
なお、図3に示す一次スクリプトにおいても<submit>タグが存在しているが、これは<field>タグに基づいて次のタスクへと遷移するために記述しているものであり、仮の二次スクリプトにおける<submit>タグとは用途が異なっている。
【0049】
また、本実施例においては、かかる置換処理をテンプレートを生成することによって行っているが、事前にスクリプト変換テーブルを設けておき、当該スクリプト変換テーブルを参照することによってタグを置換する方法であっても良い。
【0050】
次に、スクリプト解釈部15は、生成された仮の二次スクリプトを読み込んで、解釈して実行することで、図5に示すような対話をユーザと行う。図5においては、ユーザが発話した音声信号が一時記憶部13に一時記憶されるファイル名を括弧内に表示している。
【0051】
そして、図5に示す対話が終了し、ユーザが要求された全ての音声信号を入力し一時記憶された後、スクリプト解釈部15はユーザが発話した一時記憶部13に記憶されている音声信号及び対応する一次スクリプトを、いわゆるサーブレットのような形態をとるユーザ入力解析部16へと引き渡す。
【0052】
なお、本実施例においては、仮の二次スクリプトを生成するための発話例(図5)に基づいて、音声信号をすべて収集した後に認識文法の生成処理を行っているが、特にこれに限定されるものではなく、ユーザによる音声入力があるごとに認識文法の生成処理を行うものであっても良い。
【0053】
次に、ユーザ入力解析部16は、例えば連続音声認識モジュールや形態素解析モジュールをサブモジュールとして有しており、ユーザが発話した音声信号の内容からキーワードとなる語句を切り出す。例えば、図5に示す対話に登場しているファイル名tmp1.wavについては、図6に示すように解析される
そして、解析された内容は、二次スクリプト生成部17へと送られ、二次スクリプト生成部17では、タスクに必要なキーワードと不要なキーワードを確定して、認識文法を生成することになる。二次スクリプト生成部17で生成される認識文法の一例として、XML形式で記述されたものを図7に示す。
【0054】
図7においては、ユーザ発話から抽出された品詞のうち、名詞のみをキーワードとして受け付けるようにしている。また、図7に示すように、本実施例においては名詞が二つ現れているのは、同時に受け取った一次スクリプトにおいて対応している<initial>タグに対する応答例であることから、それぞれ<field>タグに対応する発話であると想定しているからである。なお本実施例においては、各キーワードと<field>タグとの関連付けを自動で行っているが、さらに補助スクリプトを用意することで、それぞれのキーワードがどちらの<field>タグに対応するかをユーザに問い合わせるようにしても良い。
【0055】
そして、二次スクリプト生成部17は、一次スクリプトを更新することによって、図8に示すように認識文法を埋め込んだ二次スクリプトを生成する。図8における下線部では、図7に示す認識文法ファイルを認識文法記憶部19に記憶する際のファイル名を明示することによって、当該音声応答アプリケーション実行時に用いるべき認識文法が明確になる。
【0056】
このようにすることで、本来認識文法が準備されていなかったスクリプトについても、最適な認識文法を付与することができ、音声応答アプリケーションとして実行させることが可能となる。
【0057】
次に、一次スクリプトが図9に示すような形で与えられている場合について説明する。図9では、下線部に示すように、受け付けることのできるキーワードの代表値として“ドリンク”及び“食べ物”が、一次スクリプトの記述時点において埋め込まれている。もちろん、当該キーワードリストは別のファイルとして保存しておき、参照するものであっても良い。以下の処理はキーワードの抽出処理以外、同様の処理となる。
【0058】
すなわち、あらかじめキーワードリストを生成しておくことによって、キーワード抽出処理が不要あるいは簡易的な処理で十分となることから、全体の処理負荷を軽減することが可能となる。
【0059】
また、図10に示す仮の二次スクリプトのように、キーワードである“drink”及び“number”に相当する発話された音声信号を、一次スクリプトに記述されているタスク処理プログラム名とともにユーザ入力解析部16に渡すよう記述することも考えられる。本実施例では、タスク処理プログラム名は変数名TASK_PROCESSORに格納している。
【0060】
このようにスクリプトを構成することにより、認識文法を組み込んだ二次スクリプトを生成することなく、直接、音声応答アプリケーションとして実行することも可能となる。
【0061】
以上のように本実施の形態によれば、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【0062】
なお、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムを実現するプログラムは、図11に示すように、CD−ROM112−1やフレキシブルディスク112−2等の可搬型記録媒体112だけでなく、通信回線の先に備えられた他の記憶装置111や、コンピュータ113のハードディスクやRAM等の記録媒体114のいずれに記憶されるものであっても良く、プログラム実行時には、プログラムはローディングされ、主メモリ上で実行される。
【0063】
また、本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにより生成された認識文法に関する情報等についても、図11に示すように、CD−ROM112−1やフレキシブルディスク112−2等の可搬型記録媒体112だけでなく、通信回線の先に備えられた他の記憶装置111や、コンピュータ113のハードディスクやRAM等の記録媒体114のいずれに記憶されるものであっても良く、例えば本発明にかかる音声応答アプリケーション作成支援システムを利用する際にコンピュータ113により読み取られる。
【0064】
【発明の効果】
以上のように本発明にかかる音声応答アプリケーション作成支援システムによれば、認識文法がない場合であっても、ユーザによる発話の内容に応じた適切な認識文法を生成することができ、音声応答アプリケーションとして確実に対話を構成することが可能となる。
【図面の簡単な説明】
【図1】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの構成図
【図2】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムの処理の流れ図
【図3】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける一次スクリプトの例示図
【図4】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける仮の二次スクリプトの例示図
【図5】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける音声応答の例示図
【図6】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける形態素解析の例示図
【図7】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける認識文法の例示図
【図8】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける認識文法を組み込んだ二次スクリプトの例示図
【図9】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける一次スクリプトの他の例示図
【図10】本発明の実施の形態にかかる音声応答アプリケーション作成支援システムにおける仮の二次スクリプトの他の例示図
【図11】コンピュータ環境の例示図
【符号の説明】
11 音声入力部
12 音声出力部
13 プラットホーム制御部
14 一時記憶部
15 スクリプト解釈部
16 ユーザ入力解析部
17 二次スクリプト生成部
18 ドキュメントデータベース
19 認識文法記憶部
20 リソースフェッチャー
111 回線先の記憶装置
112 CD−ROMやフレキシブルディスク等の可搬型記録媒体
112−1 CD−ROM
112−2 フレキシブルディスク
113 コンピュータ
114 コンピュータ上のRAM/ハードディスク等の記録媒体
Claims (5)
- ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援システムであって、
認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは前記二次スクリプトを選択して取得し、前記一次スクリプトもしくは前記二次スクリプトを解釈して実行するインタプリタであるスクリプト解釈部と、
ユーザによる発話を音声信号として入力する音声入力部と、
入力された前記音声信号を一時記憶する一時記憶部と、
入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択するプラットホーム制御部と、
一次記憶されている前記音声信号を解析してキーワードを抽出するユーザ入力解析部と、
前記一次スクリプト及び前記音声信号から抽出された前記キーワードに基づいて、認識文法を生成し、前記認識文法を組み込んだ二次スクリプトを生成する二次スクリプト生成部とを含み、
前記二次スクリプトが生成されていない場合には、前記一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成し、前記スクリプト解釈部において解釈して実行し、
前記二次スクリプトが生成されている場合には、前記二次スクリプトを前記スクリプト解釈部において解釈して実行することを特徴とする自動応答アプリケーション作成支援システム。 - 前記認識文法を保存する認識文法記憶部をさらに含む請求項1に記載の自動応答アプリケーション作成支援システム。
- 前記二次スクリプトが生成されているか否かを判定し、生成されていない場合には前記仮の二次スクリプトを、生成されている場合には前記二次スクリプトを、それぞれ前記スクリプト解釈部へ渡すリソースフェッチャーをさらに含む請求項1又は2に記載の自動応答アプリケーション作成支援システム。
- ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援方法であって、
認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは前記二次スクリプトを選択して取得し、前記一次スクリプトもしくは前記二次スクリプトを解釈して実行する工程と、
ユーザによる発話を音声信号として入力する工程と、
入力された前記音声信号を一時記憶する工程と、
入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択する工程と、
一次記憶されている前記音声信号を解析してキーワードを抽出する工程と、
前記一次スクリプト及び前記音声信号から抽出された前記キーワードに基づいて、認識文法を生成し、前記認識文法を組み込んだ二次スクリプトを生成する工程とを含み、
前記二次スクリプトが生成されていない場合には、前記一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、
前記二次スクリプトが生成されている場合には、前記二次スクリプトを解釈して実行することを特徴とする自動応答アプリケーション作成支援方法。 - ユーザ発話と自動的に対応する自動応答アプリケーションの作成を支援する自動応答アプリケーション作成支援方法を具現化するコンピュータ実行可能なプログラムであって、
認識文法を含んだ二次スクリプトの存在の有無を確認し、有無に応じて一次スクリプトもしくは前記二次スクリプトを選択して取得し、前記一次スクリプトもしくは前記二次スクリプトを解釈して実行するステップと、
ユーザによる発話を音声信号として入力するステップと、
入力された前記音声信号を一時記憶するステップと、
入力された音声信号に基づいて、少なくとも言語コード及び音声認識エンジンを選択するステップと、
一次記憶されている前記音声信号を解析してキーワードを抽出するステップと、
前記一次スクリプト及び前記音声信号から抽出された前記キーワードに基づいて、認識文法を生成し、前記認識文法を組み込んだ二次スクリプトを生成するステップとを含み、
前記二次スクリプトが生成されていない場合には、前記一次スクリプトに基づいて、ユーザによる発話を促すための仮の二次スクリプトを生成して解釈して実行し、
前記二次スクリプトが生成されている場合には、前記二次スクリプトを解釈して実行することを特徴とするコンピュータ実行可能なプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003024488A JP2004233852A (ja) | 2003-01-31 | 2003-01-31 | 音声応答アプリケーション作成支援システム及び方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003024488A JP2004233852A (ja) | 2003-01-31 | 2003-01-31 | 音声応答アプリケーション作成支援システム及び方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004233852A true JP2004233852A (ja) | 2004-08-19 |
Family
ID=32953007
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003024488A Pending JP2004233852A (ja) | 2003-01-31 | 2003-01-31 | 音声応答アプリケーション作成支援システム及び方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004233852A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100908445B1 (ko) | 2006-09-04 | 2009-07-21 | 한국전자통신연구원 | 응답 문장 생성 장치 및 방법 |
-
2003
- 2003-01-31 JP JP2003024488A patent/JP2004233852A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100908445B1 (ko) | 2006-09-04 | 2009-07-21 | 한국전자통신연구원 | 응답 문장 생성 장치 및 방법 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7546382B2 (en) | Methods and systems for authoring of mixed-initiative multi-modal interactions and related browsing mechanisms | |
| KR100661687B1 (ko) | 대화형 음성 응답 애플리케이션 구현 장치 및 방법, 머신 판독가능 매체 및 대화형 음성 응답 시스템 | |
| US6801897B2 (en) | Method of providing concise forms of natural commands | |
| Reddy et al. | Speech to text conversion using android platform | |
| JP3936718B2 (ja) | インターネットコンテンツのアクセスに関するシステム及び方法 | |
| US7890333B2 (en) | Using a WIKI editor to create speech-enabled applications | |
| US20050165607A1 (en) | System and method to disambiguate and clarify user intention in a spoken dialog system | |
| US20080228494A1 (en) | Speech-Enabled Web Content Searching Using A Multimodal Browser | |
| US20060235694A1 (en) | Integrating conversational speech into Web browsers | |
| JP2003015860A (ja) | 音声対応プログラムにおける音声主導型データ選択 | |
| WO2018021237A1 (ja) | 音声対話装置、音声対話方法、および記録媒体 | |
| CN107077843A (zh) | 对话控制装置和对话控制方法 | |
| JP3423296B2 (ja) | 音声対話インターフェース装置 | |
| EP1352316A2 (en) | A method and system for voice activating web pages | |
| US7257529B2 (en) | Apparatus and method for an automated grammar file expansion tool | |
| US20050234720A1 (en) | Voice application system | |
| US20110161927A1 (en) | Generating voice extensible markup language (vxml) documents | |
| JP2008145769A (ja) | 対話シナリオ生成システム,その方法およびプログラム | |
| US7437294B1 (en) | Methods for selecting acoustic model for use in a voice command platform | |
| US6662157B1 (en) | Speech recognition system for database access through the use of data domain overloading of grammars | |
| JP2004233852A (ja) | 音声応答アプリケーション作成支援システム及び方法 | |
| JP3581044B2 (ja) | 音声対話処理方法、音声対話処理システムおよびプログラムを記憶した記憶媒体 | |
| JP4206253B2 (ja) | 自動音声応答装置及び自動音声応答方法 | |
| Fernandez et al. | Implementation of dialog applications in an open-source VoiceXML platform | |
| Baggia | THE IMPACT OF STANDARDS ON TODAY’S SPEECH APPLICATIONS |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050511 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071009 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071016 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080703 |