JP4090040B2 - 双方主導マルチモーダル対話及び関連ブラウジング機構を作成するための方法及びシステム - Google Patents

双方主導マルチモーダル対話及び関連ブラウジング機構を作成するための方法及びシステム Download PDF

Info

Publication number
JP4090040B2
JP4090040B2 JP2003142156A JP2003142156A JP4090040B2 JP 4090040 B2 JP4090040 B2 JP 4090040B2 JP 2003142156 A JP2003142156 A JP 2003142156A JP 2003142156 A JP2003142156 A JP 2003142156A JP 4090040 B2 JP4090040 B2 JP 4090040B2
Authority
JP
Japan
Prior art keywords
user
application
dialog
data model
dialog manager
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.)
Expired - Fee Related
Application number
JP2003142156A
Other languages
English (en)
Other versions
JP2004005676A (ja
Inventor
ジェニファ・エイ・ヒーリー
ラファー・エイ・ホースン
ステファン・ハーマン・メイス
サーラビルバーマ・ライ・ブイ・ラーマン
アルパナ・チワリ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2004005676A publication Critical patent/JP2004005676A/ja
Application granted granted Critical
Publication of JP4090040B2 publication Critical patent/JP4090040B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、概して云えば、情報アクセス・アプリケーション及びダイアログ・システムに関し、更に詳しく云えば、そのようなダイアログ・システムにおいて使用するために双方主導マルチモーダル対話(mixed-initiative multi-modal interactions)及び自然言語理解(natural language understanding)と関連してそのようなアプリケーションを作成する(authoring)ための技法及び会話型ブラウジング機構に関する。
【0002】
【従来の技術】
「ダイアログ・システム」は、人間が1つ又は複数の情報アクセス・アプリケーションと対話することを可能にするコンピュータ支援(computer-based)システム又はマシンを指すために一般的に使用される用語である。「アプリケーション」は、或る機能を遂行又は提供する1つ又は複数のコンピュータ・プログラムを指すために一般的に使用される用語である。
【0003】
「双方主導」ダイアログ・システムは、一般に、ユーザが対話するそのダイアログ・システムの動作にユーザ応答に影響させるということが知られている。即ち、双方主導は、一般に、ユーザによって部分的に又は全体的に推進されるダイアログを管理する能力を指す。例えば、ユーザが主導権を取り、アプリケーションにより求められた質問には必ずしも直接に関係のないリクエストに応えたり、或いはそのようなリクエストを行う。このような双方主導ダイアログ・システムは、一般に、アプリケーションの種々な部分相互間の非逐次的な態様でのナビゲーションも可能にする。このようなシステムの目的は、ユーザとマシンとの間の会話を速やかに完了させることである。
【0004】
「自然言語理解(NLU)」は、ユーザの入力の意図/意味(即ち、セマンティック上の意味 - semantic meaning)を解釈する能力に関連することも知られている。
【0005】
そのような概念を使用するアプリケーションは、最も自然な且つ融通性のあるユーザ・インターフェースを提供し、従って、ヒューマン・マシン対話を広範に開発及び受容されるようにするためのキーである。
【0006】
しかし、既存の方法によれば、双方主導ダイアログ又は自然言語理解を使用しようとするようなアプリケーションが、C、C++、java、スクリプト、又はそれらの組み合わせのような「命令型(imperative)」プログラミング言語を使用してほとんど排他的に書かれている。知られているように、1つの命令型プログラミング言語は、伝統的なプログラミング・ロジックの作成を必要とするプログラミング言語である。
【0007】
残念ながら、命令型プログラミング言語の使用は、そのようなダイアログ・システム及びアプリケーションの開発を、その命令型プログラミング言語における専門家である開発者に制限している。更に、アプリケーションの開発における命令型プログラミングの使用は、何ヶ月もの開発及び支援を必要とするかもしれない。
【0008】
一方、「宣言型(declarative)」プログラミングは、命令型プログラミングが必要とする同じタイプの伝統的なプログラミング・ロジックの作成を必ずしも必要としないことが知られている。しかし、スピーチ・イネーブルド(speech-enabled)アプリケーションのための VoiceXML(Voice Extensible Markup Language)のようなマークアップ言語を使用する宣言型作成は、主として、有向(directed)ダイアログ・システムに限定されていた。双方主導ダイアログ・システムとは反対に、有向ダイアログ・システムは、厳密には、マシン駆動される。即ち、ユーザは、アプリケーションがアクションを遂行することを必要とするすべての情報が収集されるまで、そのマシンによって与えられるプロンプトに逐次態様で応えなければならない。従って、有向ダイアログ・システムの場合、対話が質疑応答型セッションに制限されるので、ユーザは、自然にアプリケーションと対話することができない。
【0009】
【発明が解決しようとする課題】
従って、ダイアログ・システムにおいて使用するための双方主導マルチモーダル対話及び自然言語理解と関連した宣言型プログラミング及び他のプログラミングを使用するアプリケーション作成技法及びそれと関連した他の情報ブラウジング機構に対する要求が存在する。
【0010】
【課題を解決するための手段】
本発明は、ダイアログ・システムにおいて使用するための双方主導マルチモーダル対話及び自然言語理解と関連したプログラミングを使用するアプリケーション作成技法及びそれと関連した情報ブラウジング機構を提供する。
【0011】
本発明の1つの局面では、ダイアログ・システムに従ってユーザによりアクセス可能なアプリケーションを生成する方法は、ユーザが行い得るダイアログ・システムとの対話を、1つのデータ・モデル及び1つ又は複数のユーザ対話要素として表すステップを含み、 ここで該1つ又は複数のユーザ対話要素はデータ・モデルのアプリケーション状態を移植し且つそれにバインドされる。更に、そのアプリケーション生成方法によれば、ユーザが行い得る前記ダイアログ・システムとのダイアログが双方主導ダイアログであるように、前記ユーザの意図が1つ又は複数のユーザ対話要素の解釈及びユーザ入力からのセマンティク上の意味の抽出から決定され、それによって前記アプリケーションからのナビゲーションが、非逐次的な態様で及び少なくとも部分的にユーザに推進されて実行されることができ、1つ又は複数のユーザ対話要素の少なくとも一部分は、そのアプリケーションにおける1つ又は複数のモダリティ特有のレンダリング(modality-specific rendering)に変換又は関連付け可能であり、そのレンダリングは、ユーザに提示し得るし、ダイアログ・マネージャ・アルゴリズムによって選択又は生成される。
【0012】
本発明の別の局面では、ユーザによるアプリケーションへのアクセスを提供するための会話型ブラウザ装置が、対話マネージャと、その対話マネージャに動作可能なように結合され、ボイス・ベースのブラウザである少なくとも1つのモダリティベースのブラウザと、その対話マネージャに動作可能なように結合されたダイアログ・マネージャとを含む。ユーザ、対話マネージャ、音声ベースのブラウザ、及びダイアログ・マネージャの間の対話は、以下のようなステップを含む。
(1)対話マネージャがユーザ・リクエストに応答してサーバからアプリケーションを獲得し、そのアプリケーションの表示をダイアログ・マネージャに送る。
(2)ダイアログ・マネージャがそのアプリケーションの表示に従ってアプリケーションのフォーカス及びユーザの意図の少なくとも1つを決定し、そのアプリケーションのフォーカス及びユーザの意図の少なくとも1つを対話マネージャに知らせる。
(3)そこで、対話マネージャがボイス・ベースのブラウザに従ってユーザに提供するためのそのアプリケーションの特定の部分(例えば、断片)をそのアプリケーションのフォーカス及びユーザの意図の少なくとも1つの決定に基づいて指定する。なお、その部分は、少なくともプロンプト及び入力フィールドを含み、そのプロンプトはユーザに提示され、入力フィールドは、アプリケーションのフォーカス及びユーザの意図の少なくとも1つを再決定する場合に使用するためにそのプロンプトに応答して受領し得るユーザ入力を指定する。
【0013】
本発明の更にもう1つの局面では、ユーザによるアプリケーションへのアクセスを提供するための会話型ブラウザ装置は、対話マネージャ機能、対話マネージャに動作可能なように結合された少なくとも1つのモダリティベースのブラウザ機能、及び対話マネージャ機能に動作可能なように結合されたダイアログ・マネージャを含む。ユーザ、対話マネージャ機能、ブラウザ機能、及びダイアログ・マネージャ機能は、以下の動作を含む。
(1)対話マネージャがユーザ・リクエストに応答してサーバからアプリケーションを取得する。そのアプリケーションは、ユーザが行い得るそのアプリケーションとの対話を、1つのデータ・モデル及び1つ又は複数のユーザ対話要素として表す。ここで1つ又は複数のユーザ対話要素はそのデータ・モデルのアプリケーション状態を移植し且つそれにバインドされる。
(2)ダイアログ・マネージャがユーザ入力から生成された属性値ペアを受け、それらの属性値ペアを処理してデータ・モデルを移植し、次の対話フォーカスを決定する。
(3)ダイアログ・マネージャによる次の対話フォーカスの決定時に、アプリケーション状態及びコンテキストが更新され、出力が対話マネージャによって生成され、ブラウザを介した対話のためにユーザに供給される。
【0014】
本発明は、一般に、アクセス・プロトコル、モダリティ、ブラウザ、又はデバイスに関係なく、任意の情報アクセス・アプリケーションに適用可能であることは明らかである。1つの実施例では、本発明(作成局面及び(又は)アーキテクチャ局面)は、ボイス・ブラウザ及び音声拡張可能マークアップ言語(VoiceXML)に直接に適用可能である。本発明の原理は、宣言型又は非宣言型対話アプリケーション(又は、宣言型及び非宣言型対話アプリケーションを混合したアプリケーション)に適用することができる。従って、本発明は、双方主導マルチモーダル(又は、ボイス・オンリ)対話及び自然言語理解/フリー・フロー概念と関連してプログラミングを提供することが望ましい任意の情報アクセス状況に更に一般的に適用可能である。
【0015】
本発明のこれらの及び他の目的、特徴、及び利点は、添付図面に関連して読解されるべき本発明の実施例に関する以下の詳細な説明から明らかになるであろう。
【0016】
【発明の実施の形態】
以下の記述は、本発明をよりよく理解するために、IML(Interaction Markup Language)の好適な仕様、望ましい対話型ブラウジング環境、及び幾つかの例示的応用を使用して本発明を説明している。しかし、本発明がこれらの特定の望ましい実施方法及び例示的応用に限定されないことは当然である。
【0017】
「マルチモーダル」であるダイアログ・システムが、そのシステムとユーザとの間の種々なモードの対話をサポートするものであることは明らかである。そのような対話のモードは、音声、キーボード、筆跡、顔の表情、コンテキスト、感情等を含み得るが、それらに限定されない。従って、ユーザは、複数のモード(例えば、音声、テキスト等)でデータをダイアログ・システムに出力し得るけれども、そのシステムは、複数のインターフェース又はチャネル(例えば、スピーカ、グラフィカル・ユーザ・インターフェース等)を使用して複数のモードでデータをユーザに出力し得る。更に、本発明は、マルチモーダル会話型アプリケーションに関して図解的に説明されるけれども、それは、ボイス・オンリの対話に対しても実施可能であることも明らかである。
【0018】
自然言語理解(NLU)がユーザの特定の自然入力の背後にある意味/意図を理解する能力を指すことも理解されるべきである。文法により制約されたセンテンスを単に認識する代わりに(即ち、ユーザが、所与の時点で云うことができることに関して如何に制約されるかにより)、或いは、(例えば、確率的文法(stochastic grammar)、即ち、言語モデルを使用して)ユーザが云おうとしていることを理解/解釈することなく単に転写する代わりに、NLUの場合、システムは、一連の属性に対比してこれをマップするために及び入力の背後にある意図を特徴付ける一連の値ペアを生成するために自由形式の態様で表現されたその入力を処理する。
【0019】
更に、双方主導は、一般に、ユーザによって部分的又は全体的に推進されるダイアログを管理するための能力を指す。ユーザは主導権を取り、アプリケーションによって求められた質問に必ずしも直接に関連しないリクエストに応えるか又はそのリクエストを表す。アプリケーションは、リクエストを理解できなければならず、それに基づいて、対応するアクションを実行する(例えば、何かを実行する(フェッチする、サブミットする、予約する等)又は、答えを表示する)か、或いは、ダイアログを継続して更なる情報を適宜収集する。アプリケーションが進行するためには、アプリケーションは、ユーザ入力を理解ために及びフォーカスを決定するために明確化(disambiguation)タスク及び正規化(canonicalization)タスクを遂行しなければならないであろうし、或いは、これまでのは解釈に関する確認及び起こり得る訂正を可能にするために追加のダイアログを開始することさえ必要とするであろう。
【0020】
明確化タスクは、コンテキスト等に基づいた特定の入力が一義的に解釈可能であり且つ意味をなすか(例えば、1つの、しかも唯一のフライトがその時に存在するか)どうかを調べる。正規化は、異なる入力をアプリケーションにとって意味のある正規の形式にマップする(例えば、「次の火曜日」、「5月29日」、「火曜日」は「5/29/02」上にマップ可能である)。これは、一般に、アプリケーションの残りにとって何が意味のあるものであるかを知っているアプリケーション(ビジネス・ロジック)特有のコードを必要とする。正規化は、レンダされるべき入力属性値ペア又はコンテキストを、そのアプリケーションにとって標準的な且つ明白なフォーマットに変換するためのアクションとして定義される。
【0021】
従って、双方主導/フリー・フロー/会話型アプリケーションを展開するためには、ユーザが入力を供給する時、ユーザの意図を理解できることが必要である。フリー・フローが意味するように、何とかして自由がユーザに与えられなければならない。NLUは、この目的を達成するための自然な方法である。Proc. Eurospeech, 1999 誌の "Free-flow Dialog Management Using Forms" と題した K. A. Papineni 氏による論文、及び Proc. Eurospeech, Budapest, 1999 誌の"The IBM Conversational Telephony System for Financial Applications" と題した K. Davies 氏他による論文に記載されているように、NLUは、統計的な方法に従って行うことが可能である。NLUは、ユーザが自分の入力を公式化することができるあらゆる可能な方法を予測する複雑な文法を形成することによっても作成可能である。
【0022】
参照を容易にするために、詳細な説明を次のようなセクション、即ち、
(I)宣言型アプリケーション作成技法、及び
(II)会話型ブラウザ・アーキテクチャ
に分けることにする。セクション(I)は、本発明によるIMLの望ましい実施方法に関する詳細な説明を行う。セクション(II)は、本発明に従ってIMLを支援、構文解析、及びレンダする望ましい会話型ブラウジング環境に関する詳細な説明を行う。
【0023】
I.宣言型アプリケーション作成技法
詳細に後述するように、本発明は、対話マークアップ言語、即ち、IMLと呼ばれるプログラミング言語に基づいて宣言型XML(拡張可能マークアップ言語−Extensible Markup Language)におけるアプリケーションの作成を可能にする。IMLを使用する宣言型プログラミングが、本願において示される詳細な説明に基づいて当業者により直接に実施可能であることは明らかである。しかし、2000年4月6日に出願された米国特許出願番号第09/544,823号として識別され且つ「マルチモーダル・ブラウジング及び会話型マークアップ言語を実装するための方法及びシステム(Methods and Systems for Multi-Modal Browsing and Implementation of a Conversational Markup Language)」と題した米国特許出願において開示された会話型マークアップ言語(CML)に従ってIMLが実装可能であることも明らかである。シンタックス及びセマンティクスは特定のアプリケーションに依存するので、本願において発明を教示する場合、当業者が1つ又は複数の特定のアプリケーションに対して適切なシンタックス及びセマンティクスを生成できるであろうということも更に明らかである。
【0024】
IMLフレームワークにおけるアプリケーション作成に対して3つのコンポーネント、即ち、
(i)ユーザ対話
(ii)データ・モデル
(iii)プレゼンテーション
が存在する。以下は、これらの各コンポーネント及びそれらの間の関係を説明する。
【0025】
(i)ユーザ対話:会話の基本的要素をエンコードする
本発明によれば、会話型アプリケーションが、複数のモダリティにまたがり一貫して最高レベルにおける会話を可能にするように設計された宣言型言語で書かれる。そのような言語は、本願では「会話型ジェスチャ(conversational gestures)」と呼ばれる対話ベースの要素を使用して、アプリケーション作成者がアプリケーションをプログラムすることを可能にする。会話型ジェスチャは、プログラムされるアプリケーションに関連した情報をアクセスするために使用されるモダリティ、装置、又はブラウザに関係なく、任意のダイアログを特徴付けるIMLの基本的プログラミング・コンポーネント又は要素である。
【0026】
アプリケーションの機能(behavior)を指定するために使用される原始的な一連の会話型ジェスチャは、例えば、「ダイアログ」、「メッセージ」、「入力」、「選択」、及び「サブミット(submit)」を含み得る。例えば、システムがデータを提示又は収集するために使用する各「メッセージ」又は「入力」は、XPath を使用して簡単に定義され、データ・モデルにおける情報にバインド可能である。説明のために、以下は、旅行関連のダイアログ・システムのために書かれたアプリケーションからの抜粋である。
【0027】
<dialog name="trip/air"action="submit">
<message>
Welcome<value name="trip/user/firstName"/>
<value name="trip/user/lastName"/>!
</message>
<input name="arrivalCity">
<grammar src="travel.gram"/>
<caption> Where will you be flyingto?</caption>
</input>...
<submit target="http://localhost/DB"/>
</dialog>
【0028】
この例は、出力プレゼンテーションのための "firstName"及び "lastName" データ・モデル・インスタンス・ノードにバインドされた "Welcome" メッセージ・ジェスチャ、及び"arrivalCity" データ・モデル・インスタンス・ノードにバインドされた"arrivalCity" 入力ジェスチャを示す。メッセージは、"trip/user/firstName" のような完全なXPath 表現法を使用し、一方、入力は、最も近いダイアログ・ジェスチャ名="trip/air" におけるバインディング及び入力ジェスチャ名="arrivalCity"内のバインディングの両方からパス "trip/air/arrivalCity" を構成する。
【0029】
(ii)データ・モデル仕様
望ましい実施方法では、データ・モデルはXMLにおいて指定され、プレゼンテーション及びコントローラとは別個のものである。ここでは、コントローラは、対話に基づいてユーザがモデルを更新するために使われる機構を指し、例えば、これは、後述するように、ダイアログ・マネージャを含み得る。この結果、視点の更新が生じる。旅客及び飛行機旅行情報を含むデータ・モデルの一例が、次の通りに指定されうる
【0030】
<?xml version="1.0?">
<trip>
<user>
<firstName/>
<lastName/>
<password/>
</user>
<air>
<departureCity/>
<departureDate/>
<arrivalCity/>
<returnDate/>
</air>
</trip>
【0031】
"firstName"及び"departureCity"のようなこのデータモデルにおけるスロットの各々がユーザとの対話を通して移植される。ダイアログ構造は融通性があり、ユーザが単一の対話で種々の順序で複数のスロットを満たすことを可能にする。後で説明するように、アプリケーションを実行するダイアログ・システムと関連したダイアログ・マネージャは、データ・モデルを使用して会話コンテキストを追跡し、どのスロットがユーザからの情報でもって満たされているか、及びどのスロットがフォームを完成するために提示される必要があるかを決定する。
【0032】
(iii)プレゼンテーション・ルール
音声、テキスト、及びジェスチャはすべて同じ目的に対する手段として働くが、各々と関連したプレゼンテーション方法は本来異なる。視覚的プレゼンテーションでは、アプリケーション作成者は、情報の空間的プレゼンテーションにわたって厳密な制御を持つことを希望することがある。しかし、音声の会話では、システムは、適切に提示及び応答するためにユーザが選択するどのような情報でも受けるように適応する必要がある。従って、IMLの実施例では、XSLT(XSL transformation)は、作成者が、特定のモダリティにおけるデータ・プレゼンテーションの詳細を指定することを可能にするために使用される。従って、そのような構造によって、IMLは、情報がすべてのモダリティに対して融通性のある順序でユーザから収集されることを可能にする。説明上の実施例ではXSLT及びIMLという用語が使用されるけれども、他の変換機構及びフォーマットが使用可能である。
【0033】
例えば、XSLTの場合、IMLアプリケーション設計者は、下記のようにHTML(ハイパーテキスト・マークアップ言語 - Hyper Text Markup Language)に対するXSLTルールにおいて特別なタグを含むことによって、視覚的データの正確な順序、フォント、サイズ、カラー、及び配置を指定することができる。
【0034】
<xsl:template match="dialog[@format_key='D2']">
<p>I want the best round-trip travel:<p/>
<table><tr><td><b>From:</b></td>
<td><xsl:apply-templates select="input[@select_key='I4']"/>
</td><td><b>To:</b></td>
<td><xsl:apply-templatesselect="input[@select_key='I5']"/>
</td></tr>...</table>...
</xsl:template>
【0035】
更に、特別な必要性を有する個々のユーザは、より大きいフォント、より大きいボタンを示すために、或いはジェスチャ又は別の入力装置を通した選択入力を可能にするために、特別なXSLTルール使用し得る。
【0036】
プレゼンテーション・カスタム化は、対話ロジック層及びデータ・モデルとはまったく相違するものである。その結果、視覚的プレゼンテーションは、特別に配置された「From」フィールド及び「To」フィールドを出力として示し得るし、一方、ボイス・チャネルは、「どこに行きたいですか(Where would you like to go ?)」を出力として発生し得る。プレゼンテーションを基本的な対話ロジックから分離することは、ユーザの融通性が種々のモダリティを通して種々の方法で入力を表すことも可能にする。例えば、旅行のアプリケーションにおける視覚的プレゼンテーションに従って、「From」フィールドを「To」フィールドの前に示すことが可能である。それは、視覚的には、ユーザが旅行を記述した右から左への線を考え得るためである。しかし、ユーザは、依然として、そのユーザが希望するどのような順序の情報も、例えば、「私はボストンからニューヨークに飛びたい(I want a flight to New York, leaving from Boston.)」を口頭で表すことができる。ジェスチャは同期化され、XPath を使用して同じデータ・モデルにバインドされるので、ユーザがこの応答を発生するとき、情報は、HTMLディスプレイの適切なフィールドにおいて逆の順序で現れるであろう。
【0037】
XSL、XSLT、及びXPath のような周知の標準の仕様が、W3C(ワールド・ワイド・ウェブ・コンソーシアム -World Wide Web Consortium)において見ることができることは明らかである。しかし、本発明がXML又はそのような関連の変形に依存しないことも更に明らかである。本発明は、単に、プレゼンテーション(又は、マルチモーダルの場合の多重プレゼンテーション)をデータ・モデル(手操作で作成された又はプレコンパイルされた)にバインドすることを意図している。フォーカスがダイアログの特定の部分にセットされるとき、対応するプレゼンテーションが対話のためにユーザに送られる。
【0038】
代表的な例では、VoiceXMLのスニペット(snippet)がアプリケーションにおける各フォーカス位置に関連付けられる。これは、次のものだけを含む。
(1)ダイアログ・マネージャによって決定されるプロンプト(これは、フォーカス及びコンテキストに基づいて動的に発生されることもある)、及び
(2)1つの入力だけを待つ入力フィールド。関連のデータ・ファイルがNLU文法の使用を指定する。これは、ボイス・ブラウザがNLU構文解析(及びデコーディング/転記のための言語モデル)を使用することを意味する。これは、Xgrammar が指定されるときにLM(言語モデル - language model)及び構文解析をサポートするために、VoiceXML 2.0の拡張として(そのような新しい文法のタイプを理解するために)、又はVoiceXMLの再解釈として理解されるべきである。
【0039】
(iv)IMLアプリケーション
従って、本発明によれば、詳しく上述したように、IMLアプリケーションは、XMLスキーマを通してモデル化されたアプリケーション状態及びこのアプリケーション状態を移植するために使用されるユーザ対話要素(即ち、会話型ジェスチャ)を含む。アプリケーション状態は、リッチ・タイプの情報を捕捉する。例えば、フィールド「departureDate」の値は、タイプ「date」の値である。アプリケーションは、フィールド「arrivalDate」が「departureDate」に先行しないことを必要とする関係のような高レベルのセマンティック関係も捕捉する。IMLにおけるユーザ対話要素は、基礎的なアプリケーション状態にバインドし、アプリケーション状態によってモデル化された基礎的タイプの制約に基づいて豊富なユーザ対話をもたらす。
【0040】
更に、詳細に後述するように、アプリケーション状態においてカプセル化されたタイプ制約及びクロス・フィールド制約は、ダイアログ・マネージャを介して適切な明確化ダイアログの作成を援助するために、自然言語理解(NLU)エンジンに対する入力として使用される。更に、任意の所与の時点でアプリケーション状態に記憶され且つ連のモデル制約と結合された値の状態、及び入力の複数のモダリティを介して表現されたユーザの意図の解釈が、ユーザとダイアログ・システムとの間における対話の次のステージを決定するためにダイアログ・マネージャによって結合される。
【0041】
従って、本発明に従って、双方主導IMLダイアログが次のような動作によって達成される。
(1)アプリケーション状態をそれのタイプ制約及びクロス・フィールド制約と共にモデル化する。
(2)IMLインタープリタにおいて表されたアプリケーション状態を連続的に維持し、更新する。任意の所与のダイアログ・ターン時のアプリケーション状態は、ユーザによって現在満たされているスロット及び、アプリケーション・バックエンドがある場合には、そのアプリケーション・バックエンドによって満たされたスロットを含む。
(3)セマンティック上の意味を抽出するためにユーザの発言(utterance)をNLUエンジンに送る。
(4)ユーザ発言に関する豊富な文脈依存性の解釈(context-sensitive interpretation)を可能にするために、NLUエンジンによって戻されたセマンティック上の意味と共にアプリケーション状態に存在する文脈上の知識を使用する。後で説明するように、これは、アプリケーション状態及びNLUエンジンの結果をダイアログ・マネージャに送ることによって達成可能である。
(5)ダイアログのどの部分が次にトラバースされるかを決定してアプリケーション状態を更新するために文脈依存性の解釈を使用する。ダイアログ・マネージャを含むアーキテクチャでは、フォーカス決定は、ダイアログ・マネージャの文脈依存性の解釈の結果であってもよい。
(6)NLUイベントを組み込むように機能強化されたIMLにおける定義されたイベントのリストが、適切なイベント・ハンドラをこれらのイベントに付加するための機構をIML作成者に提供する。このようなイベントは、パーサ・イベント(parser event)、正規化及び明確化に対するリクエスト、明確化及び正規化からの結果、ダイアログ管理正規化、明確化又は他の外部ソースからデータ・モデルに対する1つ又は複数のスロット更新、コンテキストのサブミッション、ダイアログに対する更新(例えば、確認、修正、援助等のためにサブ・ダイアログをロードする)を含む。以下では、更に多くのイベントが提供され、説明される。
(7)機能強化されたIMLを通して、アプリケーション作成者はアプリケーション内部のナビゲーションを指定することができ、従って、現在のアプリケーション状態又は生成されたイベントの結果に基づいてフォーカス・シフトを強制する。
【0042】
都合がよいことに、IMLは、アプリケーション状態及びそれの関連制約の宣言型作成を提供する。更に、IMLは、そのような制約をNLUエンジンへの入力として「てこ作用」に使う(leverage)。従って、NLUエンジンは、ユーザの意図を解釈する目的で使用される、ダイアログ・システムにおける入力のもう1つのソースである。
【0043】
本発明による宣言型プログラミングを介して実現されたこれらの及び他の特徴及び利点が、以下のセクションで示されるように、IMLをサポートし、構文解析し、及びレンダする本発明の会話型ブラウザ・アーキテクチャの実施方法の説明に基づいて更に明らかになるであろう。
【0044】
II.会話型ブラウザ・アーキテクチャ
さて、図1を参照すると、本発明の実施例に従ってIMLアプリケーションをサポートすることができるダイアログ・システムのブロック図が示される。図示のように、ユーザ102が対話するダイアログ・システム100は、会話型ブラウザ104、アプリケーション・サーバ108、アプリケーション・バックエンド110、自動音声認識装置(ASR)エンジン112、テキスト・ツー・音声(TTS)エンジン114、及び自然言語理解(NLU)エンジン116を含む。会話型ブラウザ104自体は、ダイアログ・マネージャ106、グラフィカル・ユーザ・インターフェース(GUI)ブラウザ118、ボイス・ブラウザ120、NLU属性値(AV)ペア・エクストラクタ122、及び対話マネージャ124を含む。ダイアログ・マネージャ106は、代替え手段としては、対話マネージャ124の統合部分であってもよく、或いは、会話ブラウザ自体とは別のものであってもよいことは明らかである。更に、GUIブラウザ118は、マルチモーダルの実施例にのみ含まれることも明らかである。更に、GUIブラウザによって与えられたモダリティの代わりに、他のモダリティが使用されてもよい。
【0045】
ダイアログ・システム100は、ユーザ102が、双方主導/フリー・フロー・ダイアログを介して、アプリケーション・サーバ108のようなコンテンツ・サーバと関連した1つ又は複数のアプリケーションと対話することを可能にする。ダイアログ・システムのコンポーネントが適切なネットワーク108を介して接続可能である。本発明は、いずれの特定なネットワークにも限定されず、従って、例えば、ワイヤレス、ハードワイヤード、ローカル・エリア、ワイドエリア等であってもよい。一実施例では、ネットワークは、ワールド・ワイド・ウェブ又はインターネットである。別の実施例では、ネットワークは、イントラネットであってもよい。また、ダイアログ・システムは、幾つかのネットワーク、例えば、
(i)ワイヤレス・ネットワーク(例えば、ブロック102及び120の間、又はブロック120及び124の間);
(ii)公衆交換電話網、即ち、PSTN(例えば、ブロック102及び120の間);
(iii)インターネット(例えば、ブロック118及び124の間、又はブロック102及び120の間等);
(iv)イントラネット(例えば、ブロック120及び124の間、及びブロック124の背後)
によって接続可能である。
【0046】
会話型ブラウザ104は、2つの対話モダリティ、即ち、ビジョン/テキスト・エントリ(GUIブラウザ・コンポーネント118)及び音声(ボイス・ブラウザ・コンポーネント120)の使用を示すけれども、本発明がこれらのモダリティに限定されないことは明らかである。更に、用語「ブラウザ」は、一般には、ユーザがデータと対話することを可能にする1つ又は複数のコンピュータ・プログラムを指すことを意味することも理解されるべきである。従って、マイクロソフト社のインターネット・エクスプローラ(Internet Explorer)のような周知のHTMLブラウザによって提供される機能と同じ機能を提供するGUIブラウザが使用可能である。使用可能なボイス又は音声ブラウザの例は、Websphere Voice Server の一部であるIBM社のVoiceXMLブラウザを含む。
【0047】
会話型ブラウザ104は、ユーザ102のクライアント装置において全体的に又は部分的に実装されることが望ましい。例えば、クライアント装置は、パーソナル・コンピュータ、ラップトップ・コンピュータ、パーソナル・ディジタル・アシスタント、通常の電話を含むセル電話等であってもよい。しかし、会話型ブラウザ104は、クライアント・コンピュータ・システム及びサーバ・コンピュータ・システムの両方を含む複数の装置において実装可能であることは明らかである。
【0048】
エンジン112、114及び116は、クライアント装置においても実装可能である。従って、ダイアログ・システム100は、クライアント/サーバ・アーキテクチャの形式のものである。しかし、本発明がそのようなアーキテクチャに限定されないことは明らかである。むしろ、ダイアログ・システムの個々のコンポーネントは、適当な態様で接続された個々のコンピュータ・システムおいて実施可能である。このような構成の幾つかの例が、2000年2月18日に出願された出願番号第09/507,526号として識別される米国特許出願、2000年4月6日に出願された出願番号第09/544,823号として識別される米国特許出願、及び2001年12月4日に出願された速達便番号EL797416042USによって識別され、2000年12月4日に出願された出願番号第06/251,085号として識別される米国特許仮出願に対して優先権を主張する「モジュラDOMベースのマルチモーダル・ブラウザを実装するためのシステム及び方法(Systems and Methods for Implementing Modular DOM-Based Multi-Modal Browsers)」と題した米国特許出願において開示されている。
【0049】
概して、ユーザ102は、テキスト・インターフェース及び(又は)グラフィック・インターフェース(GUIベースの入出力装置、例えば、ディスプレイ、キーボード、マウス等)を介してダイアログ・システム100とインターフェースし、そのインターフェースは、音声(オーディオ入出力装置、例えば、マイクロフォン、スピーカ等)を介してクライアント装置と関連付けられる。これらの入出力装置は、アクセスされたアプリケーションに従って生じるダイアログの過程でユーザ・データから入力を受け、出力データをユーザに与えるために、モダリティ特有のブラウザ(GUIブラウザ118及びボイス・ブラウザ120)に対する物理的メカニズムを提供する。それらの入力は、各モダリティ/装置特有の視点を通してイベントの形に抽象化される。出力イベント及び命令は、これらのブラウザによってレンダされたプレゼンテーションを通してユーザに提供される。ブラウザが明白には存在しない他のアーキテクチャを考慮することが可能であるが、入力は入力イベントになり、出力イベントは、ユーザに対する出力に変換される。
【0050】
ユーザのリクエストに基づいて、会話型ブラウザ104は、特定の所望のアプリケーションに対するアクセスをリクエストするために、適切なURI(ユニフォーム・リソース識別子 - uniform resource identifier)をアプリケーション・サーバ108(コンテンツ・サーバ)に送る。そこで、セクションIにおいて説明した本発明の原理に従って作成された、アプリケーションと関連のIMLコードがアプリケーション・サーバ108から会話型ブラウザ104にダウンロードされる。しかる後、会話型ブラウザ104は、モダリティ特有のレンダリング、例えば、GUI表示及び(又は)音声表示を、それらがIMLコードと関連した対話要素(例えば、会話型ジェスチャ)に基づいているときに生成する(又は、それらが手操作で作成又はプリコンパイルされた場合にそれらをデータ・モデルにバインドさせる)。従って、ユーザは、これらの表示を介して会話型ブラウザ104と対話する。
【0051】
図1に示された説明的なアーキテクチャを仮定して、次に、ダイアログ・システムのコンポーネントと関連した種々の詳細な特徴及び対話を説明することにする。
【0052】
(i)双方主導会話型ブラウジング
会話型ブラウザ104は、入力を受け付け、種々のモダリティ又は装置、例えば、音声(例えば、VoiceXML)、ワイヤレス・アプリケーション・プロトコル、又はWAP(例えば、拡張可能HTMLモバイル・プロファイル - Extensible HTML Mobile Profile、即ち、XHTML-MP、及びワイヤレス・マークアップ言語 - Wireless Markup Language、即ち、WML)、及びGUI(例えば、XHTML)における利用可能な出力を同時に(並行して、又は逐次に)レンダする。他の装置又はモダリティが同じ方法で付加可能であることは明らかである。
【0053】
双方主導ダイアログ・マネージャ106は、「従来の技術」の項において説明したように、タスクを遂行するよう及び所定の順序で情報を提供するようユーザを強制する指示ダイアログ・モード(例えば、マシン始動の発声されたダイアログ)とは反対に、アプリケーションをナビゲートする方法及びタスクを完成する順序をユーザが選択することを可能にする。対話マネージャ124は、ナビゲーションの自由を維持しながら、種々のモダリティにおける同時対話をスムーズにマージする更に自然な会話態様をユーザが続行することを可能にする。対話のヒストリは、ユーザの意図を理解し、明確にするよう利用される。
【0054】
本発明によれば、対話マネージャ124は、ユーザの入力を抽象的に(即ち、モダリティとは無関係に)、関連のモダリティ特有の情報がある場合にはその情報と同様に、ダイアログ・マネージャ106に対してコミュニケーションを行う。その場合、ダイアログ・マネージャは、ユーザの対話を明確にしてそれを解釈し、必要な場合には、意図をよりよく理解することを助けるために、又は解釈を確認又は修正する可能性を提供するために、新しい対話ダイアログを開始させる。会話型ブラウザは、以下で説明されるように、ドキュメント・オブジェクト・モデル(DOM)ベースのモデル・ビュー・コントローラ(MVC)方法を使用することが望ましい。
【0055】
図1に示された実施例では、対話マネージャ124は、GUIブラウザ118及びボイス・ブラウザ120を制御する。上述のように、会話型ブラウザ104の各コンポーネント又はサブコンポーネントは、局所的なものであるか、又は相互に関して分散可能である。1つの実施例では、対話マネージャ124は、2000年2月18日に出願された出願番号第09/507,526号として識別される米国特許出願、及び2000年4月6日に出願された出願番号第09/544,823号として識別される米国特許出願において開示されたようなマルチモーダル・シェルとして実施可能である。
【0056】
対話マネージャ124は、GUIブラウザ118又はボイス・ブラウザ120からのユーザの入力を捕捉する対話イベント(DOMイベント又は作成されたイベント)を受け取り、適切なブラウザの各々におけるプレゼンテーションを更新することによってそれぞれのブラウザへの出力を適切なモダリティでレンダする。
【0057】
本発明によれば、アプリケーションがIMLにおいて作成され、ブラウザ視点の1つにおいてレンダされるとき、適切なモダリティにコード変換される。前に説明したように、コード変換する代わりに、フォーカスの決定時に、データ・モデル(例えば、事前作成された又はコンパイルされたVoiceXMLスニペット)にバインドされたプレゼンテーションを使用することが可能である。他の作成方法がこのアーキテクチャでもって使用可能である。特に、各ターゲット・チャネルに適したプレゼンテーションが手操作で作成され、同期化情報と共にIMLデータ・モデルにバインド可能である。
【0058】
対話マネージャ124及びダイアログ・マネージャ106は、ユーザ対話及びこの対話を通してユーザにより操作されたデータ・モデルを抽象的に記述したユーザ対話ロジック層のDOMツリー表示を維持する。このDOM表示は、ダイアログ・マネージャ106及び対話マネージャ124がシステムの不可欠なコンポーネントとして実装される場合、それらの間で共用可能である。ダイアログ・ジェスチャは、特定の論理的タスクに対応し、「フォーム(form)」とも呼ばれる。各フォームは、タスクを完成するために必要な情報を収集するために幾つかの「入力ジェスチャ」を含み得る。入力ジェスチャによって収集されたデータはデータ・モデルに記憶される。各入力ジェスチャは、そのフォームにおける「スロット」に対応する。IMLアプリケーションは、幾つかのフォームを含み得る。アプリケーション・コードの更なる例が以下に示される。
【0059】
双方主導のダイアログ・マネージャ106は、ユーザのリクエストに従ってタスクを遂行する。コンピュータがダイアログを通して制御を維持する有向ダイアログ方式(directed dialog scheme)とは異なり、双方主導のダイアログ・マネージャ106は、ユーザの入力がどのタスクに向けられるかというプリオリ(priori)を知らない。ダイアログ・マネージャ106の主要な機能の1つは、ユーザの入力が最も適しているスロット及びフォームを推定することである。ダイアログ・マネージャ106は、ユーザ入力を調和させること及びトップのスコアリング・フォーム(scoring form)を見つけるために各フォームにスコアを割り当てることによってこれを行う。
【0060】
何らかの1つのタスクを完成するために必要な情報をすべて収集するために、会話において幾つかのターンを行い得る。航空機座席予約アプリケーションでは、出発地、到着地、出発時間等のような幾つかの情報片がユーザから収集されなければならないことがある。この場合、ユーザは、自分がどこから出発しようとしているのか、何時に出発したいのか等のような欠落情報に対してプロンプト指示されなければならないであろう。ユーザは、座席予約を行うときに常連顧客飛行距離(frequent flier miles)をチェックするというようなことを種々のタスクの間をいつも切り替えることができる。従って、ダイアログ・マネージャ106は、ユーザの意図をモデル化し、この例では、ユーザが照会を完了することを助けるために適切なタスクに切り替わる。ユーザによって与えられた情報があいまいなことがあり、従って、ダイアログ・マネージャ106はダイアログを明確にする。矛盾があったり、或いは明らかに間違っているとき、ダイアログ・マネージャ106は、訂正、明確化、又は確認を求めるために適切なタスクに切り替わる。
【0061】
ダイアログ・マネージャ106のもう1つの重要な機能は、フォーカス決定又はその会話における次のターンを指定することである。フォーカス決定は、ダイアログ・マネージャが入力をプロンプト指示し、及び(又は)入力を明確にすることを要求する。ダイアログ・マネージャ106は、ユーザとの前の対話に基づいて会話を知的に始動させる。ダイアログ・マネージャ106は、それが会話における次のターンに対するフォーカスをセットするけれども、その特定のタスク又はサブタスクにユーザを強制しない。
【0062】
ダイアログ・マネージャ106のもう1つの特徴は、それがイベント駆動されるということである。即ち、ダイアログ・マネージャ106は、対話マネージャ124とコミュニケーションを行い、DOMイベントを介してアプリケーション・サーバ108及びそれのアプリケーション・バックエンド(ビジネス・ロジック)110とコミュニケーションを行う。対話マネージャ124及びダイアログ・マネージャ106の両方とも、アプリケーションのDOMベースのツリー表示を維持する。DOMイベントは、ダイアログ・マネージャ106及び対話マネージャ124の間におけるツリーの変更をコミュニケートするために使用される。
【0063】
アプリケーション・バックエンド110に従って、アプリケーション特有の情報がアプリケーション・サーバ108によって記憶及び解釈される。ダイアログ・マネージャ106及びアプリケーションの間のコミュニケーションもDOMイベントを通して行われ、対話マネージャ124を介して経路指定される。そのような交換は、以下で説明されるように、正規化リクエスト及び明確化リクエストを含む。
【0064】
GUIブラウザ118及びボイス・ブラウザ120は、入出力機能を提供する。即ち、それらは、ユーザが対話し得るプレゼンテーションをレンダする。対話マネージャ124は、GUIブラウザ118及びボイス・ブラウザ120の間の出力のレンダリングを同期化し、対話ロジック層の状態、即ち、対話の状態及びユーザにより操作されるデータ・モデルの状態を維持する。更に、対話マネージャ124は、XHTML又はVoiceXMLのような適切なモダリティにおけるIMLアプリケーションをレンダするために必要なコード変換を遂行し、或いはダイアログ・マネージャ106によって決定され、コミュニケートされたフォーカスに従ってデータ・モデルに既にバインドされているプレゼンテーションを選択する。更に、対話マネージャ124は、ダイアログ・マネージャ106とアプリケーション・サーバ108に関連し且つデータベースを越えたアプリケーション・ビジネス・ロジック110との間のコミュニケーション・チャネルとしても働く。
【0065】
ASRエンジン112は、ユーザからの入力受け取り、それを、後述のように、VoiceXMLスニペットにおいて指定されたそれの音声データ・ファイル(音響モデル、ベースフォーム、文法、又は言語モデル)に依存したストリング(又は、テキスト)に転写する。特に、望ましい実施例では、ASRエンジン112は、入力(音声認識の結果)の転写を生じさせるために確率的文法(stochastic grammar)(言語モデル)に依存する。ASR結果が付加的メタ情報(スコア、Nベスト・リスト等)でもって注釈される。もう1つの実施例では、音声認識の結果が、自然言語セマンティクス・マークアップ言語(Natural Language Semantics Markup Language - NLSML)において交換され得る。
【0066】
次に、その認識されたテキストは、NLデータ・モデルに基づいてその結果を呼び出しそしてタグ付けするNLUパーサ116に送られる。このテクノロジの例が、Proc. Eurospeech, 1999 誌における K. A. Papineni 氏による「フォームを使用したフリー・フロー・ダイアログ管理(Free-flow Dialog Management Using Forms)」と題した論文、及び Proc. Eurospeech, Budapest, 1999 誌における K. Davies 氏他による「金融アプリケーションのためのIBM会話型電話システム(The IBM Conversational Telephony System for Financial Applications)」と題した論文において検討されている。
【0067】
同様に、ボイス・プロンプトがユーザに与えられるとき、これは後述のVoiceXMLスニペットを通して行われる。スニペットは、どのようなプロンプトを実施すべきか及びどのようにしてそれを獲得すべきか規定する。スニペットは、事前記録されたプロンプトを指示するか、又は、TTSエンジン114を介して合成されるべきテキストを提供し得る。テキストは、音声合成(Speech Synthesis)マークアップ言語、即ち、SSMLでもって記述可能である。NLSML及びSSMLは、W3Cウェブ・サイトにおいて記述される。ボイス・ブラウザは、プロンプトをフェッチして実行し、ユーザに対して再生すべき音声を発生するようTTSエンジンを制御する。。
【0068】
ボイス・ブラウザは、アプリケーション・プログラミング・インターフェース(API)を使用して、エンジン112、114、及び116を制御する。エンジンが分散されるとき、APIは、例えば、1998年10月2日に出願された出願番号第60/102,957号及び1999年1月27日に出願された出願番号第60/117,595号として識別される米国仮特許出願に対する優先権を主張して1999年10月1日に出願されたPCT出願US99/22925号に基づいた米国国内出願である、2001年6月25日に出願された出願番号第09/806,425号として識別される米国特許出願において開示されているような遠隔制御プロトコルによって搬送され得る。
【0069】
別のエンジンを、(例えば、話者認識に)関連付けることが可能であり、同じメカニズムが、入力又は出力(モダリティの特殊性、例えば、ビデオ処理又は手書きに適応した)を処理するためのエンジンを結果として生じる他のモダリティに対して使用可能である。ボイス・プロンプトを発生するために使用されるテキストは、一旦ダイアログ・マネージャがフォーカスを決定すると、アプリケーションによって単に指定される代わりに、コンテキスト、フォーカス、及びアプリケーションから自動的に発生可能である。そのような場合、ユーザに伝えるべき情報が、注釈可能である属性値ペアとして表示される。これらは、NLSMLにおいて表される交換、及び、その後、NLG(自然言語生成 - Natural Language Generation)テクノロジを介して自然人のセンテンス又はセンテンス・セットの形にアセンブルされる交換の例でもある。
【0070】
NLU AVペア・エクストラクタ(pair extractor)122は、音声入力の要素を構文解析し、それを、特定のターゲット・アプリケーション用に設計され且つデータ・モデル及びダイアログ・マネージャ106によって理解される属性値(AV)ペアに分類する。分類及び構文解析は、統計的クラッサ(classer)及び構文解析モデルに依存する。自然言語セマンティクス・マークアップ言語(NLSML)は、注釈されることがあり得る属性値ペアを交換するためのフォーマットとして使用可能である。
【0071】
(ii)VoiceXMLスニペット
本発明によれば、アプリケーションと関連したIML制作されたアプリケーション全体(又は、その一部分)を、ボイス・ブラウザ120に従ってレンダするためのVoiceXMLにコード変換するのではなく、VoiceXMLのスニペットだけが生成又は選択される。「スニペット」は、ユーザからの入力を集めるための入力フィールドをユーザに提供するためのプロンプト、及び完成したフォームを対話マネージャ124にサブミットするためのサブミット命令を含む。そのプロンプトは、それが事前記録されたプロンプトをプレーバックすべきか又はテキストを合成すべきか、及び、この場合には、それを行うためのVoiceXML命令を提供すべきかどうかを記述する。入力フィールドは、ASRを制御するように、音声入力を転記するように、及びそれをNLパーサに送るように、VoiceXML命令と関連付けられる。これは、使用すべきNLパーサ・データ・ファイルを指定するNL文法タグでもってVoiceXMLを拡張することによって行われる。それは、NLパーサをいつも関連付けるようにVoiceXML実行時間を修正することによっても行われ得る。このメカニズムは、VoiceXMLフォーム解釈アルゴリズムの制約を回避させ、それを行うためのVoiceXMLフォーム解釈アルゴリズムに依存する代わりに、対話マネージャ/ダイアログ・マネージャにアプリケーション及び次のダイアログのフォーカスを決定させる。
【0072】
従って、対話マネージャ124は、次のプロンプト、よく普及した文法(例えば、言語モデル、即ち、統計的文法、又は範囲を抑制するために異なる文法に基づいて形成された文法)による入力フィールド、及びサブミット命令のみを含むVoiceXMLスニペットを生成又は選択する。対話マネージャ124は、プロンプト及び入力の緻密な制御を行う。VoiceXMLスニペットの使用に関しては更に後述することにする。
【0073】
この方法では、ボイス・ブラウザは、エンジン及びオーディオ入出力(I/O)に対するボイス・インターフェースである。しかし、ダイアログ管理は、一層後で抽象的に(しかも、恐らくモダリティに関係なく)行われる。再び、VoiceXMLスニペットが、コード変換を通して生成可能であるか、又はIMLドキュメントにバインドされた一組の事前コンパイルされた又は手操作で制作されたスニペットにおけるフォーカスに基づいて選択可能である。
【0074】
別のモダリティでは、対話マネージャ124は、より大きなスニペット(即ち、フォーカスの下での直接的プロンプトよりも多くのジェスチャに対応する)を生成し得る。例えば、XHTMLでは、(他のフレームの上で又は他のフレーム内で)同時にアクティブになり得る種々のタスクのメニューを生成することは意味のあることであり、現在部分的に満たされたタスクが、決められたフォーカスに基づいて満たされることを期待されたプロンプト及び入力フィールド上にフォーカスと共に表示される。これは、これを行うための唯一の可能な方法である。本発明によって別の方法が考察される。
【0075】
(iii)IMLアプリケーション及びDOM表示
前に説明したように、IMLは、アプリケーションを作成するデバイス独立型手段を提供する。対話マネージャ124は、適宜、ボイス・ブラウザ又はGUIブラウザへの出力をコード変換し、レンダする。対話マネージャ124は、適応したプレゼンテーションと、対話ロジック層と、ビジネス・ロジック及びデータ層とのあいだの明瞭な分離も指定する。対話マネージャ124及びダイアログ・マネージャ106は、ユーザ対話のDOMツリー表示及びユーザにより操作されたデータを維持する。
【0076】
以下は、IMLによって表されたユーザ対話の簡単な例である。
<?xmlversion="1.0"encoding="ISO-8859-1"?>
<html name="travel"version="1.0"><head>
<model id="TravelDetails">
<trip>
<userInfo>
<name/>
</userInfo>
....more details
</trip>
</model></head><body>
<iml name="travel"version="1.0">
<iml:model-ref id="TravelDetails"src="travel_all.xml"/>
<iml:instance name="trip"type="TravelDetails"/>
<iml:instraction node_id="I1"...>
<iml:dialog node_id="D1"name="trip/userinfo"...>
<iml:message node_id="M1">
Welcome to our flight information system.
<iml:/message>
<iml:input name="name">
<iml:caption node_id="C0">
Please enter your name
</iml:caption>
</iml:input>
</iml:dialog>
</iml:interaction>
</body></html>
【0077】
ユーザ対話から集められたデータは、XHTMLコンテナのヘッダにおけるデータ・モデルに記憶される。ユーザ対話DOM及びデータ・モデルDOMの間のバインディングは実行時に行われる。
【0078】
次に、図2を参照すると、上記のサンプルIMLコードに対する例示的な対話及びデータ・モデルDOMツリー表示が示される。図示のように、対話DOMツリー表示202は、バインディング206を介してデータ・モデルDOM表示204にバインドされる。
【0079】
(iv)イベント始動フォーム・ベースのダイアログ・マネージャ
ダイアログ・マネージャ106のタスクは、知的態様でユーザとの対話を始動させることである。ダイアログ・マネージャ106は、ターン毎にユーザの意図をモデル化し、ユーザがタスクを遂行するのを援助する。
【0080】
ダイアログ・マネージャ104の主要な機能の1つは、ユーザ入力を適切なフォーム及びスロットと照合する(即ち、入力のフォーカスを決定する)ことである。会話型ブラウザ104が受け取ったユーザ入力は、NLU属性値(AV)ペア・エクストラクタ122によって構文解析され、ユーザの発言から収集された(恐らく、他の収集された又は推定された情報でもって注釈された)セマンティック情報を含む属性値ペアを生成する。エクストラクタ122からの属性値ペアは、対話マネージャ124によって受け取られ、ダイアログ・マネージャ106にイベントとして送られる。ダイアログ・マネージャ106は、これらの属性値ペアを、「パーサ・イベント」のような会話型ブラウザ104からの入力として受け付ける。
【0081】
ダイアログ・マネージャ106は、各フォームに対して各属性値ペアを評価(score)し、トップ・スコアリング・フォームを決定する。1つの例として、上記の K. Papineni 氏の論文において開示されているスコアリング・アルゴリズムに基づいてスコアリングが決定可能である。一般に、デフォルトの汎用アルゴリズムは、ダイアログ・マネージャによって提供される。しかし、各フォームは、新たなアルゴリズム又はそのアルゴリズムに対する新たなパラメータを指すことができる。例えば、これは、スコアリング・アルゴリズムに対するjavaクラス及び(又は)XML引数を指すことによって行うことができる。望ましい実施例では、ダイアログ・マネージャがそのような「プラグ・イン」をサポートし、アプリケーションがデフォルト・アルゴリズム以外のスコアリング・アルゴリズムに対するポインタを各ダイアログ・フォームに関連づけることができ、或いは他のパラメータ設定を指す/含むことができる。
【0082】
ダイアログ・マネージャ106は、属性値ペアからの値をトップ・スコアリング・フォームの適切なスロットに供給する。ダイアログ・マネージャ106は、スロットの値の変化に関する情報を、結果としてデータ・モデルの更新を生じさせる「スロット・ミューテーション・イベント(slot mutation event)」として対話マネージャ124に伝送する。
【0083】
ダイアログ・マネージャ106のもう1つの重要な機能は、フォーカス決定(次の出力(前の説明は最後の入力に対するフォーカスに関するものであった)に対する)であり、或いはユーザとの会話を知的に始動させるために会話における次のターンを指定することである。ユーザとの前の対話に基づいて、ダイアログ・マネージャ106は、会話のフォーカスがどこにあるべきかを決定する。ユーザがタスクを完了するために更なる情報に対してプロンプト指示されなければならないこと、ユーザがタスク相互間で切り替えを行ったこと、従って、ユーザ対話が進行すること、又はユーザ入力の明確化、訂正、又は確認が必要であることがあり得ることである。ダイアログ・マネージャ106は、フォーカスがユーザ対話ではどこにあるべきかを決定し、「フォーカス・イベント」においてこの情報を対話マネージャに送る。再び、これは、ダイアログ・マネージャ・アルゴリズムによって指定されそして上書きされ得るデフォルト・アルゴリズムに基づく。後で説明するように、フォーカスは、アプリケーションによる明確化から生じる新たなサブ・ダイアログを指すことがある(明確化は、IMLアプリケーション、恐らく、データ・モデルを更新し、新たなサブ・ダイアログにおけるフォーカスをダイアログ・マネージャに供給する)。
【0084】
望ましくは、ダイアログ・マネージャ106自体は、アプリケーション特有の知識を含んでいない。不明確な情報の明確化を含むアプリケーション特有の知識及び入力を明確化する(disambiguate)という判断は、アプリケーション・サーバ108に従って実行されるアプリケーション・ビジネス・ロジックの責任である。アプリケーション開発者は、「ジェスチャの正規化(canonicalize gesture)」を入力ジェスチャと関連付けることによってユ−ザ入力が明確化されなければならないかどうかを指定する。「ジェスチャの正規化」の存在は、データが標準的な明確なフォーマットにレンダされることをアプリケーション開発者が望んでいるということを表す。
【0085】
ダイアログ・マネージャ106がユーザ入力を属性値ペアの形で受けたとき、ダイアログ・マネージャ106は、入力が明確化されるべきであることを対話が指定するかどうかをチェックする。それが肯定される場合、ダイアログ・マネージャ106は、その情報を「正規化イベント」の形で対話マネージャ124に送る。対話マネージャ124は、正規化リクエストをアプリケーション・ビジネス・ロジックに送り、明確化の結果を「正規化応答イベント」としてアプリケーションからダイアログ・マネージャ106に送る。ダイアログ・マネージャ106は、この情報を使用して、ユーザ入力が有効であるかどうか、又は更なる明確化が必要とされ、従って、フォーカスをシフトするかどうかを決定する。
【0086】
タスクを完成するために必要なすべてのスロットが満たされたことをダイアログ・マネージャ106が決定するとき、ダイアログ・マネージャ106は、「バックエンド・サブミット・イベント」を介して対話マネージャ124にこれを表示する。バックエンド・リクエストの結果が、「バックエンド・サブミット応答イベント」として対話マネージャ124によりダイアログ・マネージャ106に返送される。バックエンド・リクエストが成功裏に完了する場合、ダイアログ・マネージャ106は、完了時にフォームにマークを付し、次のリクエストに進む。バックエンド・リクエストが失敗した場合、ダイアログ・マネージャ106は、エラーを処理するための対話ノード、例えば、エラー訂正ダイアログが設けられているIMLユーザ・インターフェースDOMにおけるノードにフォーカスをシフトする。
【0087】
属性値ペアのリストを考察すると、その入力に最も適したフォームを決定するために、ダイアログ・マネージャ106が簡単なスコアリング・ストラテジを適用する。ダイアログ・マネージャ106は、照合した属性及びスロットの数、現在どのフォームがフォーカスを有するか、コンテキスト、及びヒストリ(長期及び短期)等を考慮する。ダイアログ・マネージャ106は、アプリケーション特有のスコアリング・ストラテジ及びプラグ・インされ得る新たなスコアリング・ストラテジを可能にするように設計される。ダイアログ・マネージャ106は、複数の独立して開発されたアプリケーションにわたってダイアログ管理も処理することができる。
【0088】
部分的に満たされたデータ・モデル及び仮定(遅れたデータ・モデルの更新)を、知識ソースによる妥当性検査(例えば、遅い出発日に関連するトランザクションが早い場合に帰国日が妥当であるか。特定のトランザクション・タイプが存在するか)のために属性値ペアとして提示することによって、知識ソースによる明確化が達成可能である。
【0089】
ダイアログ管理は、利用可能ないずれの情報にも依存する。属性値ペアに関する更なる情報(例えば、機密レベル、値のNベスト・レベル、別の属性等)が有益となり得る。
【0090】
本発明のデータ・モデルでは、ダイアログ・マネージャの単一の(又は、複数の)デフォルトであってもよく、或いはプラグ・イン・ダイアログ・マネージャ・ストラテジを指すフォームによって明確に表示されてもよい。これは、デフォルト・ストラテジ(又は、デフォルト・ストラテジの1つ)の、或いは相互に関する単なるパラメータ化であってもよい。パラメータ化は、XMLにおいて行宇ことが可能である。これを処理するために(例えば、javaで)作成されたフォーム特有のプラグ・イン及びアプリケーション特有のプラグ・インを指すことによっても、スクリプト又は他のストラテジが無条件に導入可能である。本発明は、2パス・スコアリング・ストラテジを使用し得る。第1のパスでは、解釈された入力を使用し得るダイアログが決定される。第1のパス中に複数のダイアログが選択される場合、それらの間のアービトレーションが第2のパスにおいて行われる。本発明は、正規化/明確化のためのアプリケーション・サーブレット(例えば、図1におけるアプリケーション・サーバ108)とのコミュニケーションを行うための正規化サービスを提供する。ダイアログ・マネージャは、アプリケーション・サーブレットが独特の正規化された値、失敗の表示、サブ・ダイアログ又はデータ・モデル更新のいずれかを戻すようにそのアプリケーション・サーブレットに期待するであろう。
【0091】
サブ・ダイアログは、オリジナル・アプリケーションに存在するか、又は現在のダイアログ状態が不明確であって更なる詳細、確認、又は修正を必要とすることが判明するとき、フォーカスを有するそのアプリケーションに対する更新として、ウェブ・アプリケーション・サーバによって戻される。
【0092】
上述のように、アプリケーションはIMLにおいて作成され、しかも一連の対話及びデータ・モデルから成る。サーブレットは、正規化/明確化機構を提供する。明確化を目的としたサブ・ダイアログの動的生成は次のように働く。即ち、サーブレットは、それが受け取った入力を正規化しようとするであろうが、それを行うことができなった場合、入力を明瞭にするためのサブ・ダイアログを生成するであろう。そのサブ・ダイアログがユーザ入力を受け取るとき、それは、正規化(再正規化)のためにそのサブ・ダイアログを作成したサーブレットを呼び出すであろう。正規化された入力は、ダイアログ・マネージャに戻されるであろう。
【0093】
例:
(1)ユーザ:「私は、スプリングフィールド(Springfield)に行きたい」
(2)ダイアログ・マネージャ106が(arrivalCity, Springfield)に関する正規化を要求する。
(3)サーブレットは、複数のスプリングフィールドが存在することを決定し、「あなたの云うスプリングフィールドは、マサチューセッツ州のスプリングフィールドか、或いはイリノイ州のスプリングフィールドか」を尋ねるサブ・ダイアログを生成する。そのサブ・ダイアログは、「イリノイ」、「マサチューセッツ」又は「2番目のもの」のようなユーザ応答を受け付けるであろう。
(4)サブ・ダイアログは、(arrivalCity, Springfield-Mass)をサーブレットに返送するであろう。
(5)サーブレットは、(arrivalCity, Springfield-Mass)をうまく正規化し、その正規化された値をダイアログ・マネージャ(又は、経路指定方法次第で対話マネージャ)に戻すであろう。
【0094】
サブ・ダイアログは、拘束のない入力を受けることができ、従って、それは、(arrivalCity,Springfield-Garbage)をサーブレットに送ることができる。そこで、サーブレットは正規化が失敗したことを決定し、従って、ダイアログ・マネージャに応答するであろう。
【0095】
(v)対話マネージャ及びダイアログ・マネージャの間の対話
上述のように、ダイアログ・マネージャ106は、DOMイベントを介して対話マネージャ124とのコミュニケーションを行う。本願において説明されたIML作成技法と整合して、アプリケーションは、一連のユーザ対話及び1つのデータ・モデルを含む。対話マネージャ124及びダイアログ・マネージャ106の両方とも、ユーザ対話のDOMツリー表示及びデータを維持する。
【0096】
ダイアログ・マネージャ106は、次のようなイベントを対話マネージャ124に送る。
(1)フォーカス・イベント(対話における次のステップを対話マネージャ124に知らせるため);
(2)スロット・ミューテーション・イベント(データ・モデル変数の変更を対話マネージャ124に知らせるため);
(3)正規化イベント(対話マネージャ124を介したアプリケーションへの明確化リクエスト)、バックエンド・サブミット・イベント(アプリケーション状態及び対話を更新するために、特定のインスタンス又はフォームがアプリケーション・サーバ108に送られなければならないことを対話マネージャ124に表示するため)。
バックエンド・サブミット・イベントは、一般的なHTTPページ・サブミットに対応する。バックエンド・サブミット・イベントは、会話型ブラウザが常駐する同じシステム上のローカル・ビジネス・ロジックへのものであることは明らかである。
【0097】
ダイアログ・マネージャ106は、次のようなイベントに対するイベント・リスナとして対話ツリーにおいて登録される。
(1)ユーザ入力から取り出された属性値ペアを含むパーサ・イベント;
(2)ユーザ入力の明確化の結果を含む正規化応答イベント;
(3)バックエンド・リクエストが成功裏に完了したか否かを表すバックエンド・サブミット・イベント;
(4)フォーカスがユーザによりGUIブラウザ118を介して明瞭にセットされたかどうかを表すGUIフォーカス・イベント;
(5)対話マネージャ124がGUIブラウザ118から受け取った更新されたデータ・モデル値を含むGUIブラウザ118からのスロット・ミューテーション・イベント。
【0098】
従って、上記の説明から明らかなように、ダイアログ・システム100におけるアプリケーション・サーバ108、ダイアログ・マネージャ106、及び対話マネージャ124の間の交換は、これらのイベントのシーケンスを含む。しかし、本発明は、イベントのシーケンスを介したコミュニケーションに限定されない。
【0099】
同様の前のリクエストから引き継がれた新たなリクエスト(例えば、航空機旅行の予約における帰りの足)に関する情報を、ダイアログ(フォーム)の再使用によってユーザに提供されることを可能にすることが可能であることにも注意してほしい。これは、データ・モデル及びIML対話ジェスチャのインデキシングを可能にすることによって、並びに、フォーム及びデータ・モデルの2つ又は多数のバージョンの継承及び管理がどのように扱われるべきかを指定する関連の「プラグ・イン」における情報をそのフォームに加えることによって行うことが可能である。
【0100】
図4乃至図6に関連して本発明によるダイアログ・システムのコンポーネントと関連したイベント交換の例を説明する前に、初期オペレーション・フローを示す流れ図が図3において与えられる。
【0101】
次に図3を参照すると、本発明の実施例に従って、ダイアログ・システムと関連した初期オペレーションの全体的なフロー300を表す流れ図が示される。
【0102】
先ず、ステップ302において、ユーザがトランザクションを開始する(例えば、コンテンツ・サーバと関連したアプリケーションへのアクセスをリクエストする)。ユーザによって開始されたトランザクションの結果、ステップ304において適切なアプリケーション(IMLコード)が対話マネージャ124にロードされる。ダイアログ・システム100が実行しているアプリケーションに依存した種々の方法で、ユーザ・リクエストが生成可能であることは明らかである。リクエストを開始し得る方法に関する幾つかの例は、次のようなものである。
【0103】
ダイアログ・システムによって実行される電話タイプのアプリケーションは、ユーザが連絡を取ろうとしているパーティの電話番号を調べることを専用化されるアプリケーションがある。例えば、これは、IVR(対話式音声応答 - Interactive Voice Response)アプリケーション又はボイス・ポータル(voice portal)型アプリケーションの「ウェルカム」メニューの場合である。これらの場合、ダイアログ・システムがインスタンス化されるとき、又はダイアログ・システムが電話ポートを割り当てられるとき、適切なIMLアプリケーションが対話マネージャ124にロードされる。
【0104】
ボイス・ポータルを含む更に一般的な場合、GUI及び(又は)ボイス・ブラウザが先ずインスタンス化され、GUIブラウザ又はボイス・ブラウザ内で、ユーザが会話型アプリケーションに対する特定のURIを選択する。しかる後、関連のIMLページが対話マネージャ124にロードされる。
【0105】
更に、ユーザに対してGUIブラウザ又はボイス・ブラウザしか存在しないこと、及び対話マネージャに対するインスタンス化及び接続がURLを介したアプリケーションの選択に起因することがユーザ・トランザクションの開始時には起こり得る。場合によっては、ユーザによって使用され又はアクセスされたデバイスにおけるショートカット/アプリケーションにも起因することがある。
【0106】
いずれの場合も、ステップ306において、IMLアプリケーションが対話マネージャ124によって、データ・モデル及びそのデータ・モデルにバインドされたユーザ・インターフェース(UI)プレゼンテーション(又は、上述したような「対話」)の形に構文解析される。ステップ308において、データ・モデル及びUIプレゼンテーションのそれぞれのDOM(ドキュメント・オブジェクト・モデル)ベースの表示が生成される。DOMベースの表示は、ツリー・フォーマット(例えば、図2)におけるものであることが望ましい。UIプレゼンテーションのDOMベースの表示は、最終的なターゲット・フォームにおいてレンダするその後のプレゼンテーションのための抽象的フォームのものであってもよく、或いは、データ・モデル、例えば、XHTML(拡張可能HTML)、HTML-Mobile、WML(ワイヤレス・マークアップ言語)、VoiceXML、XHTML+Voice 等にバインドされた最終的なターゲット・フォームにおけるプレゼンテーションであってもよい。
【0107】
ステップ310において、対話マネージャ124は、本願において説明されたように、データ・モデルのDOM表示の複製を、それに従って使用するために、ダイアログ・マネージャ106に送る。対話マネージャ及びダイアログ・マネージャが共通のコンポーネントとして実装される実施例では、それらは同じDOM表示を共用し得る。
【0108】
ステップ312において、初期フォーカスに基づき、各モダリティに対するプレゼンテーション(最終的レンダリング)が生成される。即ち、リクエストされた或る部分がGUIブラウザ118及び(又は)ボイス・ブラウザ120を介してユーザに供給される。
【0109】
図4乃至図6を参照すると、本発明の実施例に従って、ダイアログ・システムにおけるイベントの交換を表す流れ図が示される。
【0110】
ステップ402において、対話マネージャ124がダイアログ・マネージャ106にパーサ・イベントを送る。パーサ・イベントは、ユーザの発言のセマンティック表示からNLUエクストラクタ122によって生成された属性値ペアを含む。ステップ404において、ダイアログ・マネージャ106は、この情報を使用して適切なスロットを満たす。
【0111】
ステップ406において、ダイアログ・マネージャ106は、入力に対して明確化が必要であることを決定する。ダイアログ・マネージャ106は、対話マネージャ124に正規化イベントを送る。ステップ408において、対話マネージャ124は、そのイベントをアプリケーション・サーバ108に伝播する。
【0112】
ステップ410において、アプリケーション・サーバ108は、対話マネージャ124がダイアログ・マネージャ106に伝送する正規化応答イベントによって応答する。明確化が失敗した場合、ダイアログ・マネージャ106は、ステップ412において、明確化メッセージを含むユーザ対話にフォーカスをシフトする。明確化が成功した場合、ステップ414において、ダイアログ・マネージャ106は、スロット値が有効であることを決定する。ダイアログ・マネージャ106は、ステップ416において、スロット・ミューテーション・イベントを対話マネージャ124に送り、次のエンプティ・スロットにフォーカスをシフトするフォーカス・イベントがそれに続く。
【0113】
明確化が成功したものと仮定すると、ステップ418において、ダイアログ・マネージャ106は、タスクを完了するために必要なすべてのスロットが満たされたことを決定する。しかる後、ステップ420において、ダイアログ・マネージャ106は、バックエンド・サブミット・イベントを対話マネージャ124に送る。
【0114】
ステップ422において、対話マネージャ124は、そのイベントをアプリケーション・サーバ108に送り、応答を待つ。アプリケーション・サーバ108は、ステップ424において、バックエンド・サブミット応答イベントでもって応答する。
【0115】
データベース・リクエストのようなバックエンド・リクエストが成功裏に完了した場合、ステップ426において、更新されたデータ・モデル・インスタンスが対話マネージャ124に返送される。そこで、対話マネージャ124は、ステップ428において、データ・モデル更新をダイアログ・マネージャ106に送る。しかる後、ステップ430において、ダイアログ・マネージャ106は、そのフォームを完全なものであるとしてマークを付し、次のフォームにフォーカス・シフトする。バックエンド・リクエストが失敗した場合、ステップ432において、ダイアログ・マネージャ106は、ユーザに問題点を警報するメッセージを含むユーザ対話にフォーカスをシフトするか或いはサブ・ダイアログをロードする。
【0116】
対話マネージャ124は、それがGUIブラウザ118から受け取ったユーザ入力もダイアログ・マネージャ106に知らせる。ユーザ102がGUIブラウザ118を介してフォーカスを明瞭にセットする場合、対話マネージャ124はGUIフォーカス・イベントをダイアログ・マネージャ106に送る。GUIブラウザ118からのスロット更新に応答して、スロット・ミューテーション・イベントが対話マネージャ124によってダイアログ・マネージャ106に送られる。これは、ダイアログ・マネージャ106がそれの状態を対話マネージャ124と同期化することを可能にする。
【0117】
次に図7を参照すると、本願において図示され且つ詳細に説明されたダイアログ・システムの種々の機能的コンポーネントを実装するに適したコンピュータ・システムの汎用ハードウェア・アーキテクチャを表すブロック図が示される。例えば、図1に示されるようなダイアログ・システムの個々のコンポーネントが、例えば、会話型ブラウザ104、ASRエンジン112、TTSエンジン114、及びNLUエンジン116が図5のアーキテクチャを有する1つ又は複数のクライアント装置において実装され、アプリケーション・サーバ108及び関連のバックエンド110が、図7のアーキテクチャを有する1つ又は複数のサーバ・システムにおいて実装されるというような1つのコンピュータ・システム、望ましくは、複数のそのようなコンピュータ・システムにおいて実装可能であることは明らかである。
【0118】
図示のように、コンピュータ・システムは、プロセッサ502、メモリ504、及びI/O装置506に従って実装可能である。本願で使用される用語「プロセッサ」が、例えば、CPU(中央処理装置)及び(又は)他の処理回路を含む装置のような任意の処理装置を含むように意図されていることは明らかである。本願で使用される用語「メモリ」は、例えば、RAM、ROM、固定メモリ装置(例えば、ハード・ドライブ)、取り外し可能メモリ装置(例えば、ディスケット)、フラッシュ・メモリ等のような、プロセッサ、即ち、CPUと関連したメモリを含むように意図される。更に、本願で使用される用語「入出力装置」又は「I/O装置」は、例えば、処理装置にデータを入力するための1つ又は複数のモダリティ特有の入力装置(例えば、カメラ、マイクロフォン、キーボード、マウス等)、及び(又は)処理装置と関連した結果を供給ための1つ又は複数のモダリティ特有の出力装置(例えば、スピーカ、ディスプレイ等)を含むように意図される。用語「プロセッサ」が複数の処理装置を対照とすること、及び処理装置と関連した種々の要素が他の処理装置によって共用可能であることも理解されるべきである。
【0119】
従って、本願において開示されるような本発明の方法を遂行するための命令又はコードを含むソフトウェア・コンポーネントは、1つ又は複数の関連のメモリ装置(例えば、ROM、固定メモリ、又は取り外し可能メモリ)に記憶可能であり、利用される準備ができるとき、部分的に又は全体的に(例えば、RAMに)ロードされ、CPUによって実行可能である。
【0120】
本願における添付図面を参照して本発明の説明的な実施例を開示したけれども、本発明が実施例そのものに限定されないこと及び本発明の技術的範囲及び精神から逸脱することなく当業者により他の種々な変更及び修正が行われ得ることは明らかである。例えば、VoiceXMLはフォームから外れても形成されるので、VoiceXMLの発展したものを実装することが可能である。それは、VoiceXMLが次の点でIMLと見なされる場合である:
(1)その文法が、言語モデルをサポートするように及びNLパーサ+AVエクストラクタに依存するNL文法をサポートするように拡張される;
(2)入力によって満たされたフィールドを選択し、次のフォーカスを決定するためのスコアリング/明確化アルゴリズムに対する参照を加える。
【0121】
まとめとして、本発明の構成に関して以下の事項を開示する。
【0122】
(1)ダイアログ・システムに従ってユーザによりアクセス可能なアプリケーションを生成する方法であって、
ユーザが行い得る前記ダイアログ・システムとの対話を、データ・モデルとして、及び該データ・モデルのアプリケーション状態を移植し且つユーザが行い得る前記ダイアログ・システムとのダイアログが双方主導ダイアログであるように該データ・モデルにバインドされる1つ又は複数のユーザ対話素子として表示するステップを含み、
前記1つ又は複数のユーザ対話素子の少なくとも一部分は、ユーザに対して表示可能であり且つダイアログ・マネージャによって選択及び生成されるものである前記アプリケーションの1つ又は複数の形態特有のレンダリングに変形可能であり又は関連付け可能である、方法。
(2)前記表示するステップは宣言的に行われる、上記(1)に記載の方法。
(3)前記変形可能であるオペレーションは、コード変換することを含む、上記(1)に記載の方法。
(4)前記関連付け可能であるオペレーションは、プリコンパイルされたプレゼンテーション・スニペットを選択することを含む、上記(1)に記載の方法。
(5)前記関連付け可能であるオペレーションは、作成されたプレゼンテーションの使用を含む、上記(1)に記載の方法。
(6)前記アプリケーション状態は、前記ダイアログ・システムとのユーザの対話に従って1つ又は複数のユーザ対話素子により移植することが可能な1つ又は複数のスロットを有する少なくとも1つのフォームとして表される、上記(1)に記載の方法。
(7)前記アプリケーション状態の1つ又は複数のスロットの少なくとも1つは、前記ダイアログ・システムと関連した自然言語理解エンジンに従ってユーザ発言から抽出されたセマンティック上の意味に応答して移植可能である、上記(6)に記載の方法。
(8)前記1つ又は複数のスロットの移植は、前記双方主導ダイアログがユーザと前記ダイアログ・システムとの間で生じるようにユーザの意図を解釈するように作用する、上記(7)に記載の方法。
(9)前記1つ又は複数の形態特有のレンダリングは、前記アプリケーション部分の音声ベースの表示を含む、上記(1)に記載の方法。
(10)前記音声ベースの表示は、ボイス拡張可能マークアップ言語(VoiceXML)に基づいている、上記(9)に記載の方法。
(11)VoiceXMLは、ユーザ入力の自然言語理解及びその結果生じる属性値ペアの生成をサポートするように拡張される、上記(10)に記載の方法。
(12)VoiceXMLの前記拡張は、言語モデル対するサポートを含む、上記(11)に記載の方法。
(13)VoiceXMLは、音声データ・ファイルとして自然言語(NL)文法の導入を通して自然言語構文解析を指定するように拡張される、上記(10)に記載の方法。
(14)VoiceXMLの前記拡張は、自然言語文法タグに対するサポートを含む、上記(13)に記載の方法。
(15)前記1つ又は複数の形態特有のレンダリングは、前記アプリケーションの部分の視覚ベースの表示を含む、上記(1)に記載の方法。
(16)前記視覚ベースの表示は、グラフィカル・ユーザ・インターフェースのフレーム又は一部分においてメニュー及びフォーカスの下にあるアクティブ領域を含む、上記(15)に記載の方法。
(17)前記視覚ベースの表示は、ハイパーテキスト・マークアップ言語(HTML)、拡張可能HTML(XHTML)、及びXHTMLモバイル・プロファイルの少なくとも1つに基づいている、上記(15)に記載の方法。
(18)前記1つ又は複数の形態特有のレンダリングは、拡張可能ハイパーテキスト・マークアップ言語-モバイル・プロファイル(XHTML-MP)、及びワイヤレス・マークアップ言語(WML)の少なくとも1つに基づいている、上記(1)に記載の方法。
(19)前記1つ又は複数のユーザ対話素子は会話型ジェスチャを表示する、上記(1)に記載の方法。
(20)前記宣言的に行われる表示は、拡張可能マークアップ言語(XML)に基づいている、上記(2)に記載の方法。
(21)前記コード変換は、XSL変換(XSLT)ルールに従って遂行される、上記(3)に記載の方法。
(22)前記表示は、ユーザに対する前記アプリケーションの1つ又は複数のスニペットのプレゼンテーションをサポートし、
前記1つ又は複数のスニペットは、少なくともプロンプト及び入力フィールドを含み、
前記プロンプトは、ユーザに対して表示され、前記入力フィールドは、前記プロンプトに応答して受け取ることができるユーザ入力を指定する、
上記(1)に記載の方法。
(23)前記1つ又は複数のスニペットは、更にサブミット命令を含む、上記(22)に記載の方法。
(24)前記1つ又は複数のスニペットは、1つ又は複数の音声拡張可能マークアップ言語(VoiceXML)スニペットである、上記(22)に記載の方法。
(25)前記1つ又は複数のVoiceXMLスニペットは、VoiceXMLフォーム解釈アルゴリズムによって課せられたダイアログ管理を回避する、上記(23)に記載の方法。
(26)前記表示は、関連のタイプ及びクロス・フィールド制約に加えて前記アプリケーション状態のモデル化を可能にする、上記(1)に記載の方法。
(27)前記表示は、前記アプリケーション状態の連続的な維持及び更新を可能にする、上記(1)に記載の方法。
(28)前記表示は、セマンティック上の意味を抽出するためにユーザ発言を自然言語理解(NLU)エンジンに送ることを可能にする、上記(1)に記載の方法。
(29)前記表示は、前記ユーザ発言の文脈的解釈を可能にするために、前記NLUエンジンによって戻された前記セマンティック上の意味と共に前記アプリケーション状態に存在する文脈上の知識を使用することを可能にする、上記(28)に記載の方法。
(30)前記表示は、前記文脈的解釈を使用してダイアログのどの部分が次に考察されるかを決定すること及び前記アプリケーション状態を更新することを可能にする、上記(29)に記載の方法。
(31)前記表示は、定義されたイベント及び該イベントに適切なイベント・ハンドラを付加することを可能にする、上記(1)に記載の方法。
(32)前記アプリケーションの内部にあるナビゲーションの表示仕様は、それによって前記アプリケーション状態の1つ及び生成されたイベントの結果に基づいてフォーカス・シフトを生じさせる、上記(31)に記載の方法。
(33)前記定義されたイベントは、パーサ・イベント、正規化及び明確化の少なくとも1つに対するリクエスト、正規化及び明確化の少なくとも1つからの結果、更新イベント、及びコンテキストのサブミッションの少なくとも1つを含む、上記(31)に記載の方法。
(34)前記表示は、ユーザが前の同様のリクエストから継承した新たなリクエストに関する情報を提供することを可能にするためにダイアログの再使用を許容する、上記(1)に記載の方法。
(35)前記1つ又は複数のユーザ対話素子は、前記アプリケーションと関連したコンテンツ及びプレゼンテーションとは無関係である、上記(1)に記載の方法。
(36)前記表示は、ユーザ入力から属性値ペアを抽出することを許容する、上記(1)に記載の方法。
(37)ユーザによるアプリケーションへのアクセスを提供するためのダイアログ・システムであって、
(i)前記アプリケーションをアプリケーション・サーバから獲得するように動作可能であり、前記アプリケーションは、ユーザが行う前記ダイアログ・システムとのダイアログが双方主導ダイアログになるように、ユーザが有する前記ダイアログ・システムとの対話をデータ・モデル及び該データ・モデルのアプリケーション状態を移植する1つ又は複数のユーザ対話素子として表し、
(ii)前記1つ又は複数のユーザ対話素子の少なくとも一部分を、ダイアログ・マネージャ・アルゴリズムによって生成又は選択される1つ又は複数の形態特有のレンダリングに変換又は関連付けるように動作可能である、
1つ又は複数のプロセッサと、
前記1つ又は複数のプロセッサに動作関係に結合され、前記獲得するオペレーション、変換するオペレーション、及び関連付けるオペレーションの少なくとも1つと関連した結果の少なくとも一部分を記憶するためのメモリと、
を含む、ダイアログ・システム。
(38)ユーザによるアプリケーションへのアクセスを提供するための会話型ブラウザ装置であって、
対話マネージャと、
前記対話マネージャに動作関係に結合され、ボイス・ベースのブラウザである少なくとも1つの形態ベースのブラウザと、
前記対話マネージャに動作関係に結合されたダイアログ・マネージャと、
を含み、
ユーザ、前記対話マネージャ、前記ボイス・ベースのブラウザ、及び前記ダイアログ・マネージャの間の対話は、
(i)前記対話マネージャがユーザ・リクエストに応答してサーバから前記アプリケーションを獲得し、前記アプリケーションの表示を前記ダイアログ・マネージャに送り、
(ii)前記ダイアログ・マネージャは、前記アプリケーションの表示に従って前記アプリケーションのフォーカス及び前記ユーザの意図の少なくとも1つを決定し、前記アプリケーションのフォーカス及び前記ユーザの意図の少なくとも1つを前記対話マネージャに通知し、
(iii)前記対話マネージャは、前記アプリケーションのフォーカス及び前記ユーザの意図の少なくとも1つに関する前記決定に基づいて前記ボイス・ベースのブラウザに従い前記ユーザにプレゼンテーションを行うための、前記アプリケーションにおいて少なくともプロンプト及び入力フィールドを含む特定の部分を指定し、
前記プロンプトは、前記ユーザに表示され、前記入力フィールドは、前記アプリケーションのフォーカス及び前記ユーザの意図の少なくとも1つを再決定する場合に使用するために前記プロンプトに応答して受け取り可能なユーザ入力を指定する、分散型ブラウザ装置。
(39)前記対話マネージャは、前記アプリケーションをデータ・モデルに構文解析し、前記データ・モデルにバインドされた1つ又は複数のユーザ対話素子が少なくとも前記データ・モデルのドキュメント・オブジェクト・モデル(DOM)表示を生成し、前記データ・モデルのDOM表示を前記ダイアログ・マネージャに送る、上記(38)に記載の装置。
(40)更に、前記アプリケーションのフォーカス及び前記ユーザの意図の少なくとも1つを決定する場合、前記ダイアログ・マネージャによる使用のために1つ又は複数のユーザ発言と関連したAVペアを抽出するための、ボイス・ベースのブラウザ及び前記対話マネージャの間に動作関係に結合された自然言語属性値(AV)ペア・エクストラクタを含む、上記(38)に記載の装置。
(41)前記指定された部分は、前記ユーザ入力の結果を前記対話マネージャにサブミットするためのサブミット命令を含む、上記(38)に記載の装置。
(42)前記指定された部分は、前記プロンプト及び前記ユーザ入力の少なくとも1つに従って遂行されるべき処理のタイプを特定する、上記(38)に記載の装置。
(43)前記遂行されるべき処理は、音声認識、音声合成、自然言語構文解析、及び属性値ペア抽出の少なくとも1つを含む、上記(42)に記載の装置。
(44)前記ボイス・ベースのブラウザは、前記プロンプト及び前記ユーザ入力の少なくとも1つに従って遂行されるべき処理に対するインターフェースとして働く、上記(42)に記載の装置。
(45)前記ダイアログ・マネージャは、前記ボイス・ベースのブラウザによって提供される前記処理に対するインターフェースとは別に抽象的に動作する、上記(44)に記載の装置。
(46)前記ダイアログ・マネージャは、形態に無関係に動作する、上記(38)に記載の装置。
(47)前記サーバは、それに供給されたオリジナル・ユーザ入力を明確化しようとし、それを行うのに失敗したとき、前記入力を明瞭にしようとするためのサブ・ダイアログを生成して、前記アプリケーションが、前記サブ・ダイアログに応答して前記ユーザから受け取った更なる入力に基づいて前記オリジナル・ユーザ入力を明確化するために再試行できるようにする、上記(38)に記載の装置。
(48)前記明確化されたユーザ入力は、前記ダイアログ・マネージャに提供される、上記(47)に記載の装置。
(49)前記指定された部分は、音声拡張可能マークアップ言語(VoiceXML)スニペットである、上記(38)に記載の装置。
(50)拡張可能ハイパーテキスト・マークアップ言語(XHTML)フレームにおいて又は前記アプリケーションのページの部分としてメニューが表示される、上記(38)に記載の装置。
(51)前記ボイス・ベースのブラウザは、音声拡張可能マークアップ言語(VoiceXML)をサポートする、上記(38)に記載の装置。
(52)VoiceXMLは、ユーザ入力の自然言語理解及びその結果生じる属性値ペアの生成をサポートするように拡張される、上記(51)に記載の装置。
(53)VoiceXMLの前記拡張は、言語モデルに対するサポートを含む、上記(52)に記載の装置。
(54)VoiceXMLは、自然言語(NL)文法の導入を介して自然言語構文解析を音声データ・ファイルとして指定するように拡張される、上記(51)に記載の装置。
(55)VoiceXMLの前記拡張は、自然言語文法タグに対するサポートを含む、上記(51)に記載の装置。
(56)更に、少なくとも第2の形態を介して前記アプリケーションと対話する能力をユーザに提供するための、前記対話マネージャに動作関係に結合されたグラフィカル・ユーザ・インターフェース(GUI)ベースのブラウザを含む、上記(38)に記載の装置。
(57)前記対話マネージャ、前記ダイアログ・マネージャ、及び前記アプリケーション・サーバの間のコミュニケーションはイベント・ベースである、上記(38)に記載の装置。
(58)前記イベントは、前記ダイアログ・マネージャが対話における次のステップを前記対話マネージャに知らせるフォーカス・イベントを含む、上記(57)に記載の装置。
(59)前記イベントは、前記ダイアログ・マネージャがデータ・モデルと関連した変化を前記対話マネージャに知らせるスロット・ミューテーション・イベントを含む、上記(57)に記載の装置。
(60)前記イベントは、前記アプリケーション・サーバによって正規化が遂行されることを前記ダイアログ・マネージャがリクエストする正規化イベントを含む、上記(57)に記載の装置。
(61)前記イベントは、前記アプリケーション・サーバによって明確化が遂行されることを前記ダイアログ・マネージャがリクエストする明確化イベントを含む、上記(57)に記載の装置。
(62)前記イベントは、特定のインスタンスが前記アプリケーションと関連したビジネス・ロジックに送られることを前記ダイアログ・マネージャが前記対話マネージャに表示するバックエンド・サブミット・イベントを含む、上記(57)に記載の装置。
(63)前記イベントは、ユーザ入力から抽出された属性値ペアを含むパーサ・イベントを含む、上記(57)に記載の装置。
(64)前記イベントは、ユーザ入力の正規化の結果を含む正規化応答イベントを含む、上記(57)に記載の装置。
(65)前記イベントは、バックエンド・リクエストが成功裏に完了したかどうかを表すバックエンド・サブミット応答イベントを含む、上記(57)に記載の装置。
(66)前記イベントは、フォーカスがグラフカル・ユーザ・インターフェース(GUI)ブラウザを通してユーザにより明確にセットされたかどうかを表すグラフィカル・ユーザ・インターフェース・フォーカス・イベントを含む、上記(57)に記載の装置。
(67)前記イベントは、前記対話マネージャがグラフィカル・ユーザ・インターフェース(GUI)ブラウザから受け取った1つ又は複数の更新されたデータ・モデル値を含むスロット・ミューテーション・イベントを含む、上記(57)に記載の装置。
(68)前記プロンプトは、自然言語生成(NLG)技法を介して生成される、上記(38)に記載の装置。
(69)前記アプリケーションはフォームを含み、前記ダイアログ・マネージャは、各フォームに対してユーザ入力から生成された属性値ペアを記録してトップ・スコアリング・フォームを決定する、上記(38)に記載の装置。
(70)前記ダイアログ・マネージャによって使用されるスコアリング技法は、デフォルトの汎用スコアリング・アルゴリズムに基づいている、上記(69)に記載の装置。
(71)前記ダイアログ・マネージャによって使用されるスコアリング技法は、フォームによって指示されたスコアリング・アルゴリズムに基づいている、上記(69)に記載の装置。
(72)前記フォームは、前記スコアリング・アルゴリズムのための拡張可能マークアップ言語(XML)引数を指示する、上記(71)に記載の装置。
(73)前記フォームは、1つ又は複数のフォーム及び1つのデータ・モデルを創作又は再使用するために使用されるべきアルゴリズムを指定する、上記(69)に記載の装置。
(74)ユーザによるアプリケーションへのアクセスを提供するための会話型ブラウザ装置であって、
対話マネージャ機能と、
前記対話マネージャ機能に動作関係に結合された少なくとも1つの形態ベースのブラウザ機能と、
前記対話マネージャ機能に動作関係に結合されたダイアログ・マネージャ機能と、
を含み、
前記ユーザ、前記対話マネージャ、前記ブラウザ、及び前記ダイアログ・マネージャ機能の間の対話は、
(i)前記対話マネージャがユーザ・リクエストに応答してサーバから前記アプリケーションを獲得し、前記アプリケーションは、前記ユーザが行う前記アプリケーションとの対話をデータ・モデルとして及び、前記データ・モデルのアプリケーション状態を移植し且つそれにバインドされる1つ又は複数のユーザ対話素子として表し、
(ii)前記ダイアログ・マネージャが、ユーザ入力から生成された属性値ペアを受け取り、該属性値ペアを処理して前記データ・モデルを移植し、次の対話フォーカスを決定し、
(iii)前記ダイアログ・マネージャによる次の対話フォーカスの決定の際、前記アプリケーション状態及びコンテキストが更新され、前記対話マネージャによって出力が生成され、対話のために前記ブラウザを介して前記ユーザに供給される
ことを含む、会話型ブラウザ装置。
(75)前記次の対話フォーカスは、対話ヒストリ及びコンテキストの少なくとも一方を使用する、上記(74)に記載の装置。
(76)前記対話ヒストリ及びコンテキストの少なくとも一方は、入力及び出力属性値ペアの時間順序付けられたセット及びその結果生じるデータ・モデル変化を含む、上記(74)に記載の装置。
(77)前記属性値ペアは、種々の装置及び形態からのものである、上記(76)に記載の装置。
(78)前記ダイアログ・マネージャは、詳細、確認、並びに、前記ユーザ及び知識源の少なくとも一方からの訂正、の少なくとも1つを探索することによって意図を明確化するためにデータ・モデル更新を遅らせる、上記(74)に記載の装置。
(79)前記ダイアログ・マネージャは、サブ・ダイアログ及び前記アプリケーションにおける他のダイアログへのジャンプの少なくとも一方を使用する、上記(78)に記載の装置。
(80)前記知識源は、バックエンド・データベース及びビジネス・ロジックの少なくとも一方を含む、上記(78)に記載の装置。
(81)前記アプリケーションは宣言的に作成される、上記(74)に記載の装置。
(82)前記出力生成のオペレーションは、コード変換することを含む、上記(74)に記載の装置。
(83)前記出力生成のオペレーションは、プリコンパイルされたプレゼンテーション・スニペットを選択することを含む、上記(74)に記載の装置。
(84)前記出力生成のオペレーションは、手操作で作成されたプレゼンテーションの使用を含む、上記(74)に記載の装置。
(85)前記ブラウザは、ボイス・ベースのブラウザである、上記(74)に記載の装置。
(86)前記ブラウザは、ハイパーテキスト・マークアップ言語(HTTP)ベースのブラウザである、上記(74)に記載の装置。
(87)前記対話マネージャ、前記ダイアログ・マネージャ、及び前記アプリケーション・サーバの間のコミュニケーションは、イベント・ベースのものである、上記(74)に記載の装置。
(88)前記対話マネージャは、少なくとも前記データ・モデルのドキュメント・オブジェクト・モデル(DOM)表記を生成する、上記(74)に記載の装置。
(89)前記ブラウザは、音声拡張可能マークアップ言語(VoiceXML)をサポートする、上記(74)に記載の装置。
(90)VoiceXMLは、ダイアログ管理アルゴリズムの仕様を可能にするように拡張される、上記(89)に記載の装置。
(91)前記ダイアログ管理アルゴリズムは、スコアリング、フォーカス決定、及び明確化の少なくとも1つを遂行する、上記(90)に記載の装置。
(92)前記ダイアログ管理アルゴリズムは、VoiceXMLにおけるフォーム解釈アルゴリズムを上書きする、上記(90)に記載の装置。
(93)前記属性値ペアは注釈付けされる、上記(74)に記載の装置。
(94)前記機能は、前記属性値ペアを注釈付けするためのプロトコルをサポートする、上記(74)に記載の装置。
(95)会話型ブラウザに従ってユーザによりアクセス可能なアプリケーションを作成する方法であって、
前記会話型ブラウザの対話マネージャがユーザ・リクエストに応答してサーバから前記アプリケーションを獲得するステップにして、前記アプリケーションは、前記ユーザが行う前記アプリケーションとの対話を、データ・モデルとして及び、前記データ・モデルのアプリケーション状態を移植し且つそれにバインドされる1つ又は複数のユーザ対話素子として表示する、ステップと、
前記会話型ブラウザのダイアログ・マネージャが、ユーザ入力から生成された属性値ペアを受け取り、該属性値ペアを処理して前記データ・モデルを移植し、次の対話フォーカスを決定するステップと、
前記ダイアログ・マネージャによる次の対話フォーカスの決定の際、前記アプリケーション状態及びコンテキストが更新され、前記対話マネージャによって出力が生成され、対話のために前記会話型ブラウザのブラウジング機構を介して前記ユーザに提供されるステップと、
を含む方法。
(96)1つ又は複数のプログラムを含むマシン可読媒体を含む製造物であって、
前記プログラムは、実行されるとき、前記ユーザが行うダイアログ・システムとの対話をデータ・モデルとして、及び、前記データ・モデルのアプリケーション状態を移植し且つそれにバインドされる1つ又は複数のユーザ対話素子として、前記ユーザが行う前記ダイアログ・システムとのダイアログが双方主導ダイアログであってもよいように表示するステップを実施し、
前記1つ又は複数のユーザ対話素子の少なくとも一部分は、前記ユーザに表示可能であり且つダイアログ・マネージャ・アルゴリズムによって生成される前記表示と関連した1つ又は複数の形態特有のレンダリングに変換又は関連付けられる、製造物。
【図面の簡単な説明】
【図1】 本発明の実施例に従ってIMLアプリケーションをサポートすることができるダイアログ・システムを示すブロック図である。
【図2】 本発明の実施例に従って対話及びデータ・モデル・ドキュメント・オブジェクト・モデル・ツリー表示を示す図である。
【図3】 本発明の実施例に従ってダイアログ・システムと関連した初期オペレーションの全体的流れを示す流れ図である。
【図4】 本発明の実施例に従ってダイアログ・システムにおけるイベントの変更を示す流れ図の一部分である。
【図5】 本発明の実施例に従ってダイアログ・システムにおけるイベントの変更を示す流れ図の他の部分である。
【図6】 本発明の実施例に従ってダイアログ・システムにおけるイベントの変更を示す流れ図の更に他の部分である。
【図7】 本発明の実施例に従ってダイアログ・システムの種々の機能的コンポーネントを実装するに適したコンピュータ・システムの汎用ハードウェア・アーキテクチャを示すブロック図である。
【符号の説明】
100 ダイアログ・システム
202 対話DOMツリー表示
204 データ・モデルDOM表示
206 バインディング

Claims (32)

  1. ダイアログ・システムに従ってユーザによりアクセス可能なアプリケーションを生成する方法であって、
    ユーザが行い得る前記ダイアログ・システムとの対話を、データ・モデル及び1つ又は複数のユーザ対話要素として宣言型プログラミングに従い表すステップであって、前記1つ又は複数のユーザ対話要素は該データ・モデルのアプリケーション状態を移植し且つ該データ・モデルにバインドされ、及び前記アプリケーションは前記データ・モデル及び1つ又は複数のユーザ対話要素を含み、前記1つ又は複数のユーザ対話要素は、プログラムされるアプリケーションに関連付けられた情報をアクセスするために使用される形態、装置及びブラウザに関係なく、ダイアログを特徴付ける1以上の基本的プログラミング・コンポーネントを含む、前記表すステップ、
    を含み、
    ユーザが行い得る前記ダイアログ・システムとの対話が双方主導ダイアログであるように、前記ユーザの意図が1つ又は複数のユーザ対話要素の解釈及びユーザ入力からのセマンティク上の意味の抽出から決定され、それによって前記アプリケーションからのナビゲーションが、非逐次的な態様で及び少なくとも部分的にユーザに推進されて実行されることができ、
    前記1つ又は複数のユーザ対話要素の少なくとも一部分は、ユーザに対して表示可能であり且つダイアログ・マネージャ・アルゴリズムによって選択及び生成されるものである前記アプリケーションの1つ又は複数のモダリティ特有のレンダリングに変形可能であり又は関連付け可能である、方法。
  2. 前記変形することは、コード変換することを含む、請求項1に記載の方法。
  3. 前記関連付けすることは、プリコンパイルされたプレゼンテーション・スニペットを選択することを含む、請求項1に記載の方法。
  4. 前記関連付けすることは、作成されたプレゼンテーションを使用することを含む、請求項1に記載の方法。
  5. 前記アプリケーション状態は、前記ダイアログ・システムとのユーザの対話に従って1つ又は複数のユーザ対話要素により移植することが可能な1つ又は複数のスロットを有する少なくとも1つのフォームとして表される、請求項1に記載の方法。
  6. 前記アプリケーション状態の1つ又は複数のスロットの少なくとも1つは、前記ダイアログ・システムに関連付けられた自然言語理解エンジンに従ってユーザ発言から抽出されたセマンティック上の意味に応答して移植可能である、請求項5に記載の方法。
  7. 前記1つ又は複数のスロットの移植は、前記双方主導ダイアログがユーザと前記ダイアログ・システムとの間で生じるようにユーザの意図を解釈するように作用する、請求項6に記載の方法。
  8. 前記1つ又は複数のモダリティ特有のレンダリングは、前記アプリケーション部分の音声ベースの表示を含む、請求項1に記載の方法。
  9. 前記音声ベースの表示は、ボイス拡張可能マークアップ言語(VoiceXML)に基づいている、請求項8に記載の方法。
  10. VoiceXMLは、ユーザ入力の自然言語理解及びその結果生じる属性値ペアの生成をサポートするように拡張される、請求項9に記載の方法。
  11. 前記1つ又は複数のモダリティ特有のレンダリングは、前記アプリケーションの部分の視覚ベースの表示を含む、請求項1に記載の方法。
  12. 前記視覚ベースの表示は、グラフィカル・ユーザ・インターフェースのフレーム又は一部分においてメニュー及びフォーカスの下にあるアクティブ領域を含む、請求項11に記載の方法。
  13. 前記視覚ベースの表示は、ハイパーテキスト・マークアップ言語(HTML)、拡張可能HTML(XHTML)、及びXHTMLモバイル・プロファイルの少なくとも1つに基づいている、請求項11に記載の方法。
  14. 前記コード変換は、XSL変換(XSLT)ルールに従って遂行される、請求項2に記載の方法。
  15. 前記表示は、ユーザに対する前記アプリケーションの1つ又は複数のスニペットのプレゼンテーションをサポートし、
    前記1つ又は複数のスニペットは、少なくともプロンプト及び入力フィールドを含み、
    前記プロンプトは、ユーザに対して表示され、前記入力フィールドは、前記プロンプトに応答して受け取ることができるユーザ入力を指定する、
    請求項1に記載の方法。
  16. 前記1つ又は複数のスニペットは、サブミット命令を更に含む、請求項15に記載の方法。
  17. 前記1つ又は複数のスニペットは、1つ又は複数の音声拡張可能マークアップ言語(VoiceXML)スニペットである、請求項15に記載の方法。
  18. 前記1つ又は複数のVoiceXMLスニペットは、VoiceXMLフォーム解釈アルゴリズムによって課せられたダイアログ管理を回避する、請求項16に記載の方法。
  19. 前記表示は、関連のタイプ及びクロス・フィールド制約に加えて前記アプリケーション状態のモデル化を可能にする、請求項1に記載の方法。
  20. 前記表示は、前記アプリケーション状態の連続的な維持及び更新を可能にする、請求項1に記載の方法。
  21. 前記表示は、セマンティック上の意味を抽出するためにユーザ発言を自然言語理解(NLU)エンジンに送ることを可能にする、請求項1に記載の方法。
  22. 前記表示は、前記ユーザ発言の文脈的解釈を可能にするために、前記NLUエンジンによって戻された前記セマンティック上の意味と共に前記アプリケーション状態に存在する文脈上の知識を使用することを可能にする、請求項21に記載の方法。
  23. 前記表示は、前記文脈的解釈を使用して対話のどの部分が次に考察されるかを決定すること及び前記アプリケーション状態を更新することを可能にする、請求項22に記載の方法。
  24. 前記表示は、定義されたイベント及び該イベントに適切なイベント・ハンドラを付加することを可能にする、請求項1に記載の方法。
  25. 前記アプリケーションの内部にあるナビゲーションの表示仕様は、それによって前記アプリケーション状態の1つ及び生成されたイベントの結果に基づいてフォーカス・シフトを生じさせる、請求項24に記載の方法。
  26. 前記定義されたイベントは、パーサ・イベント、正規化及び明確化の少なくとも1つに対するリクエスト、正規化及び明確化の少なくとも1つからの結果、更新イベント、及びコンテキストのサブミッションの少なくとも1つを含む、請求項24に記載の方法。
  27. 前記表示は、ユーザが前の同様のリクエストから継承した新たなリクエストに関する情報を提供することを可能にするために対話の再使用を許容する、請求項1に記載の方法。
  28. 前記1つ又は複数のユーザ対話要素は、前記アプリケーションに関連付けられたコンテンツ及びプレゼンテーションとは無関係である、請求項1に記載の方法。
  29. 前記表示は、ユーザ入力から属性値ペアを抽出することを許容する、請求項1に記載の方法。
  30. ダイアログ・システムに従ってユーザによりアクセス可能なアプリケーションを生成するコンピュータ・プログラムであって、コンピュータに、
    ユーザが行い得る前記ダイアログ・システムとの対話を、データ・モデル及び1つ又は複数のユーザ対話要素として宣言型プログラミングに従い表すステップであって、前記1つ又は複数のユーザ対話要素は該データ・モデルのアプリケーション状態を移植し且つ該データ・モデルにバインドされ、及び前記アプリケーションは前記データ・モデル及び1つ又は複数のユーザ対話要素を含み、前記1つ又は複数のユーザ対話要素は、プログラムされるアプリケーションに関連付けられた情報をアクセスするために使用される形態、装置及びブラウザに関係なく、ダイアログを特徴付ける1以上の基本的プログラミング・コンポーネントを含む、前記表すステップ、
    を実行させ、
    ユーザが行い得る前記ダイアログ・システムとの対話が双方主導ダイアログであるように、前記ユーザの意図が1つ又は複数のユーザ対話要素の解釈及びユーザ入力からのセマンティク上の意味の抽出から決定され、それによって前記アプリケーションからのナビゲーションが、非逐次的な態様で及び少なくとも部分的にユーザに推進されて実行されることができ、
    前記1つ又は複数のユーザ対話要素の少なくとも一部分は、ユーザに対して表示可能であり且つダイアログ・マネージャ・アルゴリズムによって選択及び生成されるものである前記アプリケーションの1つ又は複数のモダリティ特有のレンダリングに変形可能であり又は関連付け可能である、コンピュータ・プログラム。
  31. ユーザによりアプリケーションへのアクセスを提供するためのダイアログ・システムであって、
    1つ又は複数のプロセッサであって、(i)前記1つ又は複数のプロセッサは前記アプリケーションをアプリケーション・サーバから獲得するように動作可能であり、前記アプリケーションは、ユーザが行い得る前記ダイアログ・システムとの対話を、データ・モデル及び1つ又は複数のユーザ対話要素として宣言型プログラミングに従い表し、ここで前記1つ又は複数のユーザ対話要素は該データ・モデルのアプリケーション状態を移植し且つ該データ・モデルにバインドされ、前記アプリケーションは前記データ・モデル及び1つ又は複数のユーザ対話要素を含み、前記1つ又は複数のユーザ対話要素は、プログラムされるアプリケーションに関連付けられた情報をアクセスするために使用される形態、装 置及びブラウザに関係なく、ダイアログを特徴付ける1以上の基本的プログラミング・コンポーネントを含み、そしてユーザが行い得る前記ダイアログ・システムとの対話が双方主導ダイアログであるように、前記ユーザの意図が1つ又は複数のユーザ対話要素の解釈及びユーザ入力からのセマンティク上の意味の抽出から決定され、それによって前記アプリケーションからのナビゲーションが、非逐次的な態様で及び少なくとも部分的にユーザに推進されて実行されることができ、及び(ii)前記1つ又は複数のユーザ対話要素の少なくとも一部分を、ダイアログ・マネージャ・アルゴリズムによって生成又は選択される1つ又は複数のモダリティ特有のレンダリングに変換又は関連付けるように動作可能である、前記1つ又は複数のプロセッサと、
    前記1つ又は複数のプロセッサに動作可能なように結合されたメモリであって、前記獲得すること、変換すること、及び関連付けることの少なくとも1つに関連付けられた結果の少なくとも一部分を記憶するためのメモリと、
    を含む、ダイアログ・システム。
  32. ユーザによるアプリケーションへのアクセスを提供するための会話型ブラウザ装置であって、
    対話マネージャ機能と、
    前記対話マネージャ機能に動作可能なように結合された少なくとも1つのモダリティベースのブラウザ機能と、
    前記対話マネージャ機能に動作可能なように結合されたダイアログ・マネージャ機能と、
    を含み、
    前記ユーザ、前記対話マネージャ、前記ブラウザ、及び前記ダイアログ・マネージャ機能の間の対話は、
    (i)前記対話マネージャがユーザ・リクエストに応答してサーバから前記アプリケーションを獲得し、前記アプリケーションは、前記ユーザが行う前記アプリケーションとの対話を、データ・モデル及び1つ又は複数のユーザ対話要素として表し、ここで前記1つ又は複数のユーザ対話要素は該データ・モデルのアプリケーション状態を移植し且つ該データ・モデルにバインドされ、及び前記アプリケーションは前記データ・モデル及び1つ又は複数のユーザ対話要素を含み、前記1つ又は複数のユーザ対話要素は、プログラムされるアプリケーションに関連付けられた情報をアクセスするために使用される形態、装置及びブラウザに関係なく、ダイアログを特徴付ける1以上の基本的プログラミング・コンポーネントを含み、
    (ii)前記ダイアログ・マネージャが、ユーザ入力から生成された属性値ペアを受け取り、該属性値ペアを処理して前記データ・モデルを移植し、次の対話フォーカスを決定し、
    (iii)前記ダイアログ・マネージャによる次の対話フォーカスの決定の際、前記アプリケーション状態及びコンテキストが更新され、それによって前記アプリケーションからのナビゲーションが、非逐次的な態様で及び少なくとも部分的にユーザに推進されて実行されることができ、そして前記対話マネージャによって出力が生成され、対話のために前記ブラウザを介して前記ユーザに供給される
    ことを含む、会話型ブラウザ装置。
JP2003142156A 2002-05-28 2003-05-20 双方主導マルチモーダル対話及び関連ブラウジング機構を作成するための方法及びシステム Expired - Fee Related JP4090040B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/156,618 US7546382B2 (en) 2002-05-28 2002-05-28 Methods and systems for authoring of mixed-initiative multi-modal interactions and related browsing mechanisms

Publications (2)

Publication Number Publication Date
JP2004005676A JP2004005676A (ja) 2004-01-08
JP4090040B2 true JP4090040B2 (ja) 2008-05-28

Family

ID=29582301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003142156A Expired - Fee Related JP4090040B2 (ja) 2002-05-28 2003-05-20 双方主導マルチモーダル対話及び関連ブラウジング機構を作成するための方法及びシステム

Country Status (2)

Country Link
US (2) US7546382B2 (ja)
JP (1) JP4090040B2 (ja)

Families Citing this family (347)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001013255A2 (en) 1999-08-13 2001-02-22 Pixo, Inc. Displaying and traversing links in character array
US7685252B1 (en) * 1999-10-12 2010-03-23 International Business Machines Corporation Methods and systems for multi-modal browsing and implementation of a conversational markup language
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
US7895583B2 (en) * 2000-12-22 2011-02-22 Oracle International Corporation Methods and apparatus for grammar-based recognition of user-interface objects in HTML applications
US8229753B2 (en) 2001-10-21 2012-07-24 Microsoft Corporation Web server controls for web enabled recognition and/or audible prompting
US7711570B2 (en) * 2001-10-21 2010-05-04 Microsoft Corporation Application abstraction with dialog purpose
ITFI20010199A1 (it) 2001-10-22 2003-04-22 Riccardo Vieri Sistema e metodo per trasformare in voce comunicazioni testuali ed inviarle con una connessione internet a qualsiasi apparato telefonico
US7546382B2 (en) * 2002-05-28 2009-06-09 International Business Machines Corporation Methods and systems for authoring of mixed-initiative multi-modal interactions and related browsing mechanisms
US7398209B2 (en) 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7693720B2 (en) 2002-07-15 2010-04-06 Voicebox Technologies, Inc. Mobile systems and methods for responding to natural language speech utterance
US20040027379A1 (en) * 2002-08-08 2004-02-12 Hong Huey Anna Onon Integrated visual development system for creating computer-implemented dialog scripts
US20040061717A1 (en) * 2002-09-30 2004-04-01 Menon Rama R. Mechanism for voice-enabling legacy internet content for use with multi-modal browsers
AU2002347129A1 (en) * 2002-11-13 2004-06-03 Intel China Ltd. Multi-modal web interaction over wireless network
US8335683B2 (en) * 2003-01-23 2012-12-18 Microsoft Corporation System for using statistical classifiers for spoken language understanding
US7669134B1 (en) 2003-05-02 2010-02-23 Apple Inc. Method and apparatus for displaying information during an instant messaging session
US7797146B2 (en) * 2003-05-13 2010-09-14 Interactive Drama, Inc. Method and system for simulated interactive conversation
US20050004788A1 (en) * 2003-07-03 2005-01-06 Lee Hang Shun Raymond Multi-level confidence measures for task modeling and its application to task-oriented multi-modal dialog management
US20050027536A1 (en) * 2003-07-31 2005-02-03 Paulo Matos System and method for enabling automated dialogs
US8150697B2 (en) * 2003-09-30 2012-04-03 Nuance Communications, Inc. Autonomous systems and network management using speech
US20050080628A1 (en) * 2003-10-10 2005-04-14 Metaphor Solutions, Inc. System, method, and programming language for developing and running dialogs between a user and a virtual agent
US7356472B2 (en) * 2003-12-11 2008-04-08 International Business Machines Corporation Enabling speech within a multimodal program using markup
US20050188022A1 (en) * 2004-01-02 2005-08-25 Hanson James E. Method and apparatus to provide a human-usable interface to conversational support
US7386443B1 (en) 2004-01-09 2008-06-10 At&T Corp. System and method for mobile automatic speech recognition
US8160883B2 (en) 2004-01-10 2012-04-17 Microsoft Corporation Focus tracking in dialogs
US7552170B2 (en) * 2004-02-26 2009-06-23 Research In Motion Limited Apparatus and method for aggregating web services
US8108429B2 (en) * 2004-05-07 2012-01-31 Quest Software, Inc. System for moving real-time data events across a plurality of devices in a network for simultaneous data protection, replication, and access services
US8768711B2 (en) * 2004-06-17 2014-07-01 Nuance Communications, Inc. Method and apparatus for voice-enabling an application
US7954050B2 (en) * 2004-06-25 2011-05-31 Icesoft Technologies Canada Corp. Systems and methods for rendering and increasing portability of document-based user interface software objects
US20060069570A1 (en) * 2004-09-10 2006-03-30 Rightnow Technologies, Inc. System and method for defining and executing distributed multi-channel self-service applications
US7979404B2 (en) 2004-09-17 2011-07-12 Quest Software, Inc. Extracting data changes and storing data history to allow for instantaneous access to and reconstruction of any point-in-time data
US9171100B2 (en) 2004-09-22 2015-10-27 Primo M. Pettovello MTree an XPath multi-axis structure threaded index
US8180722B2 (en) * 2004-09-30 2012-05-15 Avaya Inc. Method and apparatus for data mining within communication session information using an entity relationship model
US7936863B2 (en) * 2004-09-30 2011-05-03 Avaya Inc. Method and apparatus for providing communication tasks in a workflow
US8107401B2 (en) * 2004-09-30 2012-01-31 Avaya Inc. Method and apparatus for providing a virtual assistant to a communication participant
US8270320B2 (en) * 2004-09-30 2012-09-18 Avaya Inc. Method and apparatus for launching a conference based on presence of invitees
US7904913B2 (en) 2004-11-02 2011-03-08 Bakbone Software, Inc. Management interface for a system that provides automated, real-time, continuous data protection
TWI269268B (en) * 2005-01-24 2006-12-21 Delta Electronics Inc Speech recognizing method and system
US7805704B2 (en) * 2005-03-08 2010-09-28 Microsoft Corporation Development framework for mixing semantics-driven and state-driven dialog
US20060235694A1 (en) * 2005-04-14 2006-10-19 International Business Machines Corporation Integrating conversational speech into Web browsers
US7487191B2 (en) * 2005-06-10 2009-02-03 International Business Machines Corporation Method and system for model-based replication of data
US7496513B2 (en) * 2005-06-28 2009-02-24 Microsoft Corporation Combined input processing for a computing device
US7689602B1 (en) 2005-07-20 2010-03-30 Bakbone Software, Inc. Method of creating hierarchical indices for a distributed object system
US7788521B1 (en) * 2005-07-20 2010-08-31 Bakbone Software, Inc. Method and system for virtual on-demand recovery for real-time, continuous data protection
US7640160B2 (en) 2005-08-05 2009-12-29 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7620549B2 (en) 2005-08-10 2009-11-17 Voicebox Technologies, Inc. System and method of supporting adaptive misrecognition in conversational speech
US7949529B2 (en) 2005-08-29 2011-05-24 Voicebox Technologies, Inc. Mobile systems and methods of supporting natural language human-machine interactions
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9009046B1 (en) 2005-09-27 2015-04-14 At&T Intellectual Property Ii, L.P. System and method for disambiguating multiple intents in a natural language dialog system
US7633076B2 (en) 2005-09-30 2009-12-15 Apple Inc. Automated response to and sensing of user activity in portable devices
JP4849663B2 (ja) * 2005-10-21 2012-01-11 株式会社ユニバーサルエンターテインメント 会話制御装置
US8229745B2 (en) * 2005-10-21 2012-07-24 Nuance Communications, Inc. Creating a mixed-initiative grammar from directed dialog grammars
US8639515B2 (en) * 2005-11-10 2014-01-28 International Business Machines Corporation Extending voice-based markup using a plug-in framework
US7664742B2 (en) 2005-11-14 2010-02-16 Pettovello Primo M Index data structure for a peer-to-peer network
US20070129950A1 (en) * 2005-12-05 2007-06-07 Kyoung Hyun Park Speech act-based voice XML dialogue apparatus for controlling dialogue flow and method thereof
DE102005061365A1 (de) * 2005-12-21 2007-06-28 Siemens Ag Verfahren zur Ansteuerung zumindest einer ersten und zweiten Hintergrundapplikation über ein universelles Sprachdialogsystem
US7848917B2 (en) * 2006-03-30 2010-12-07 Microsoft Corporation Common word graph based multimodal input
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8073681B2 (en) 2006-10-16 2011-12-06 Voicebox Technologies, Inc. System and method for a cooperative conversational voice user interface
US20080129520A1 (en) * 2006-12-01 2008-06-05 Apple Computer, Inc. Electronic device with enhanced audio feedback
US7640272B2 (en) * 2006-12-07 2009-12-29 Microsoft Corporation Using automated content analysis for audio/video content consumption
US8000969B2 (en) * 2006-12-19 2011-08-16 Nuance Communications, Inc. Inferring switching conditions for switching between modalities in a speech application environment extended for interactive text exchanges
US7818176B2 (en) 2007-02-06 2010-10-19 Voicebox Technologies, Inc. System and method for selecting and presenting advertisements based on natural language processing of voice-based input
US7912828B2 (en) * 2007-02-23 2011-03-22 Apple Inc. Pattern searching methods and apparatuses
US8131723B2 (en) 2007-03-30 2012-03-06 Quest Software, Inc. Recovering a file system to any point-in-time in the past with guaranteed structure, content consistency and integrity
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8364648B1 (en) 2007-04-09 2013-01-29 Quest Software, Inc. Recovering a database to any point-in-time in the past with guaranteed data consistency
KR100930802B1 (ko) * 2007-06-29 2009-12-09 엔에이치엔(주) 이미지를 이용한 브라우저 제어 방법 및 시스템
ITFI20070177A1 (it) 2007-07-26 2009-01-27 Riccardo Vieri Sistema per la creazione e impostazione di una campagna pubblicitaria derivante dall'inserimento di messaggi pubblicitari all'interno di uno scambio di messaggi e metodo per il suo funzionamento.
US20090055163A1 (en) * 2007-08-20 2009-02-26 Sandeep Jindal Dynamic Mixed-Initiative Dialog Generation in Speech Recognition
US9053089B2 (en) 2007-10-02 2015-06-09 Apple Inc. Part-of-speech tagging using latent analogy
US8165886B1 (en) 2007-10-04 2012-04-24 Great Northern Research LLC Speech interface system and method for control and interaction with applications on a computing system
US8595642B1 (en) 2007-10-04 2013-11-26 Great Northern Research, LLC Multiple shell multi faceted graphical user interface
US8364694B2 (en) 2007-10-26 2013-01-29 Apple Inc. Search assistant for digital media assets
US8620662B2 (en) 2007-11-20 2013-12-31 Apple Inc. Context-aware unit selection
US8140335B2 (en) 2007-12-11 2012-03-20 Voicebox Technologies, Inc. System and method for providing a natural language voice user interface in an integrated voice navigation services environment
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8327272B2 (en) 2008-01-06 2012-12-04 Apple Inc. Portable multifunction device, method, and graphical user interface for viewing and managing electronic calendars
US8065143B2 (en) 2008-02-22 2011-11-22 Apple Inc. Providing text input using speech data and non-speech data
US8289283B2 (en) 2008-03-04 2012-10-16 Apple Inc. Language input interface on a device
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US8543404B2 (en) * 2008-04-07 2013-09-24 Nuance Communications, Inc. Proactive completion of input fields for automated voice enablement of a web page
US9047869B2 (en) * 2008-04-07 2015-06-02 Nuance Communications, Inc. Free form input field support for automated voice enablement of a web page
US8831950B2 (en) * 2008-04-07 2014-09-09 Nuance Communications, Inc. Automated voice enablement of a web page
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US8589161B2 (en) 2008-05-27 2013-11-19 Voicebox Technologies, Inc. System and method for an integrated, multi-modal, multi-device natural language voice services environment
US9305548B2 (en) 2008-05-27 2016-04-05 Voicebox Technologies Corporation System and method for an integrated, multi-modal, multi-device natural language voice services environment
US8464150B2 (en) 2008-06-07 2013-06-11 Apple Inc. Automatic language identification for dynamic text processing
US8838455B1 (en) 2008-06-13 2014-09-16 West Corporation VoiceXML browser and supporting components for mobile devices
US8296148B1 (en) * 2008-06-13 2012-10-23 West Corporation Mobile voice self service device and method thereof
US8311837B1 (en) * 2008-06-13 2012-11-13 West Corporation Mobile voice self service system
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8768702B2 (en) 2008-09-05 2014-07-01 Apple Inc. Multi-tiered voice feedback in an electronic device
US8898568B2 (en) 2008-09-09 2014-11-25 Apple Inc. Audio user interface
US8583418B2 (en) 2008-09-29 2013-11-12 Apple Inc. Systems and methods of detecting language and natural language strings for text to speech synthesis
US8396714B2 (en) 2008-09-29 2013-03-12 Apple Inc. Systems and methods for concatenation of words in text to speech synthesis
US20100082328A1 (en) * 2008-09-29 2010-04-01 Apple Inc. Systems and methods for speech preprocessing in text to speech synthesis
US8712776B2 (en) 2008-09-29 2014-04-29 Apple Inc. Systems and methods for selective text to speech synthesis
US8352272B2 (en) 2008-09-29 2013-01-08 Apple Inc. Systems and methods for text to speech synthesis
US8355919B2 (en) 2008-09-29 2013-01-15 Apple Inc. Systems and methods for text normalization for text to speech synthesis
US8352268B2 (en) 2008-09-29 2013-01-08 Apple Inc. Systems and methods for selective rate of speech and speech preferences for text to speech synthesis
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US11487347B1 (en) * 2008-11-10 2022-11-01 Verint Americas Inc. Enhanced multi-modal communication
WO2010067118A1 (en) 2008-12-11 2010-06-17 Novauris Technologies Limited Speech recognition involving a mobile device
US8862252B2 (en) 2009-01-30 2014-10-14 Apple Inc. Audio user interface for displayless electronic device
US8326637B2 (en) 2009-02-20 2012-12-04 Voicebox Technologies, Inc. System and method for processing multi-modal device interactions in a natural language voice services environment
US8380507B2 (en) 2009-03-09 2013-02-19 Apple Inc. Systems and methods for determining the language to use for speech generated by a text to speech engine
WO2010113962A1 (ja) 2009-04-03 2010-10-07 インターナショナル・ビジネス・マシーンズ・コーポレーション コラボラティブクローリングによるリッチインターネットアプリケーションのためのアクセシビリティを向上させる方法及びそのコンピュータ・プログラム
US9547511B2 (en) * 2009-06-05 2017-01-17 Microsoft Technology Licensing, Llc Language-based model for asynchronous operations
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10540976B2 (en) 2009-06-05 2020-01-21 Apple Inc. Contextual voice commands
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US8510117B2 (en) * 2009-07-09 2013-08-13 Nuance Communications, Inc. Speech enabled media sharing in a multimodal application
US20110010179A1 (en) * 2009-07-13 2011-01-13 Naik Devang K Voice synthesis and processing
US10387140B2 (en) 2009-07-23 2019-08-20 S3G Technology Llc Modification of terminal and service provider machines using an update server machine
US20110066438A1 (en) * 2009-09-15 2011-03-17 Apple Inc. Contextual voiceover
US8631028B1 (en) 2009-10-29 2014-01-14 Primo M. Pettovello XPath query processing improvements
WO2011059997A1 (en) 2009-11-10 2011-05-19 Voicebox Technologies, Inc. System and method for providing a natural language content dedication service
US9171541B2 (en) * 2009-11-10 2015-10-27 Voicebox Technologies Corporation System and method for hybrid processing in a natural language voice services environment
US8682649B2 (en) 2009-11-12 2014-03-25 Apple Inc. Sentiment prediction from textual data
US8600743B2 (en) 2010-01-06 2013-12-03 Apple Inc. Noise profile determination for voice-related feature
US20110167350A1 (en) * 2010-01-06 2011-07-07 Apple Inc. Assist Features For Content Display Device
US8381107B2 (en) 2010-01-13 2013-02-19 Apple Inc. Adaptive audio feedback system and method
US8311838B2 (en) 2010-01-13 2012-11-13 Apple Inc. Devices and methods for identifying a prompt corresponding to a voice input in a sequence of prompts
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
DE202011111062U1 (de) 2010-01-25 2019-02-19 Newvaluexchange Ltd. Vorrichtung und System für eine Digitalkonversationsmanagementplattform
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8639516B2 (en) 2010-06-04 2014-01-28 Apple Inc. User-specific noise suppression for voice quality improvements
US8713021B2 (en) 2010-07-07 2014-04-29 Apple Inc. Unsupervised document clustering using latent semantic density analysis
US9104670B2 (en) 2010-07-21 2015-08-11 Apple Inc. Customized search or acquisition of digital media assets
US8719006B2 (en) 2010-08-27 2014-05-06 Apple Inc. Combined statistical and rule-based part-of-speech tagging for text-to-speech synthesis
US8719014B2 (en) 2010-09-27 2014-05-06 Apple Inc. Electronic device with text error correction based on voice recognition data
US10762293B2 (en) 2010-12-22 2020-09-01 Apple Inc. Using parts-of-speech tagging and named entity recognition for spelling correction
US10515147B2 (en) 2010-12-22 2019-12-24 Apple Inc. Using statistical language models for contextual lookup
US9081550B2 (en) * 2011-02-18 2015-07-14 Nuance Communications, Inc. Adding speech capabilities to existing computer applications with complex graphical user interfaces
US9274746B2 (en) * 2011-02-18 2016-03-01 Nuance Communications, Inc. Latency hiding techniques for multi-modal user interfaces
US8781836B2 (en) 2011-02-22 2014-07-15 Apple Inc. Hearing assistance system for providing consistent human speech
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US10672399B2 (en) 2011-06-03 2020-06-02 Apple Inc. Switching between text data and audio data based on a mapping
US8812294B2 (en) 2011-06-21 2014-08-19 Apple Inc. Translating phrases from one language into another using an order-based set of declarative rules
US8706472B2 (en) 2011-08-11 2014-04-22 Apple Inc. Method for disambiguating multiple readings in language conversion
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US8762156B2 (en) 2011-09-28 2014-06-24 Apple Inc. Speech recognition repair using contextual information
WO2013048729A1 (en) * 2011-09-30 2013-04-04 Nuance Communications, Inc. Techniques for receiving and processing one or more user-specified queries
US9292603B2 (en) 2011-09-30 2016-03-22 Nuance Communications, Inc. Receipt and processing of user-specified queries
US10129720B1 (en) * 2011-12-30 2018-11-13 Genesys Telecommunications Laboratories, Inc. Conversation assistant
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US8909536B2 (en) * 2012-04-20 2014-12-09 Nuance Communications, Inc. Methods and systems for speech-enabling a human-to-machine interface
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US8775442B2 (en) 2012-05-15 2014-07-08 Apple Inc. Semantic search using a single-source semantic model
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
WO2013185109A2 (en) 2012-06-08 2013-12-12 Apple Inc. Systems and methods for recognizing textual identifiers within a plurality of words
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9595298B2 (en) 2012-07-18 2017-03-14 Microsoft Technology Licensing, Llc Transforming data to create layouts
KR102150289B1 (ko) * 2012-08-30 2020-09-01 삼성전자주식회사 사용자 단말에서 사용자 인터페이스 장치 및 이를 지원하는 방법
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US8935167B2 (en) 2012-09-25 2015-01-13 Apple Inc. Exemplar-based latent perceptual modeling for automatic speech recognition
US9191707B2 (en) 2012-11-08 2015-11-17 Bank Of America Corporation Automatic display of user-specific financial information based on audio content recognition
US9027048B2 (en) 2012-11-14 2015-05-05 Bank Of America Corporation Automatic deal or promotion offering based on audio cues
DE212014000045U1 (de) 2013-02-07 2015-09-24 Apple Inc. Sprach-Trigger für einen digitalen Assistenten
US9460155B2 (en) * 2013-03-06 2016-10-04 Kunal Verma Method and system of continuous contextual user engagement
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10642574B2 (en) 2013-03-14 2020-05-05 Apple Inc. Device, method, and graphical user interface for outputting captions
US9733821B2 (en) 2013-03-14 2017-08-15 Apple Inc. Voice control to diagnose inadvertent activation of accessibility features
US9977779B2 (en) 2013-03-14 2018-05-22 Apple Inc. Automatic supplementation of word correction dictionaries
US10572476B2 (en) 2013-03-14 2020-02-25 Apple Inc. Refining a search based on schedule items
KR101759009B1 (ko) 2013-03-15 2017-07-17 애플 인크. 적어도 부분적인 보이스 커맨드 시스템을 트레이닝시키는 것
KR102057795B1 (ko) 2013-03-15 2019-12-19 애플 인크. 콘텍스트-민감성 방해 처리
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
CN105190607B (zh) 2013-03-15 2018-11-30 苹果公司 通过智能数字助理的用户培训
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
JP6259911B2 (ja) 2013-06-09 2018-01-10 アップル インコーポレイテッド デジタルアシスタントの2つ以上のインスタンスにわたる会話持続を可能にするための機器、方法、及びグラフィカルユーザインタフェース
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
KR101809808B1 (ko) 2013-06-13 2017-12-15 애플 인크. 음성 명령에 의해 개시되는 긴급 전화를 걸기 위한 시스템 및 방법
DE112014003653B4 (de) 2013-08-06 2024-04-18 Apple Inc. Automatisch aktivierende intelligente Antworten auf der Grundlage von Aktivitäten von entfernt angeordneten Vorrichtungen
US9640173B2 (en) 2013-09-10 2017-05-02 At&T Intellectual Property I, L.P. System and method for intelligent language switching in automated text-to-speech systems
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9946516B2 (en) 2014-03-14 2018-04-17 Starbucks Corporation Application workflow framework
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
WO2015184186A1 (en) 2014-05-30 2015-12-03 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10659851B2 (en) * 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US9898459B2 (en) 2014-09-16 2018-02-20 Voicebox Technologies Corporation Integration of domain information into state transitions of a finite state transducer for natural language processing
EP3195145A4 (en) 2014-09-16 2018-01-24 VoiceBox Technologies Corporation Voice commerce
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US9626768B2 (en) 2014-09-30 2017-04-18 Microsoft Technology Licensing, Llc Optimizing a visual perspective of media
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US10282069B2 (en) 2014-09-30 2019-05-07 Microsoft Technology Licensing, Llc Dynamic presentation of suggested content
WO2016061309A1 (en) 2014-10-15 2016-04-21 Voicebox Technologies Corporation System and method for providing follow-up responses to prior natural language inputs of a user
US10431214B2 (en) 2014-11-26 2019-10-01 Voicebox Technologies Corporation System and method of determining a domain and/or an action related to a natural language input
US10614799B2 (en) 2014-11-26 2020-04-07 Voicebox Technologies Corporation System and method of providing intent predictions for an utterance prior to a system detection of an end of the utterance
US9898455B2 (en) * 2014-12-01 2018-02-20 Nuance Communications, Inc. Natural language understanding cache
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
EP3243200B1 (en) * 2015-01-05 2021-05-19 Google LLC Processing of multimodal user input
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US9792281B2 (en) 2015-06-15 2017-10-17 Microsoft Technology Licensing, Llc Contextual language generation by leveraging language understanding
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US10338959B2 (en) 2015-07-13 2019-07-02 Microsoft Technology Licensing, Llc Task state tracking in systems and services
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10592070B2 (en) 2015-10-12 2020-03-17 Microsoft Technology Licensing, Llc User interface directional navigation using focus maps
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10417346B2 (en) 2016-01-23 2019-09-17 Microsoft Technology Licensing, Llc Tool for facilitating the development of new language understanding scenarios
US10635281B2 (en) 2016-02-12 2020-04-28 Microsoft Technology Licensing, Llc Natural language task completion platform authoring for third party experiences
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9996531B1 (en) * 2016-03-29 2018-06-12 Facebook, Inc. Conversational understanding
US11017767B2 (en) * 2016-03-29 2021-05-25 Microsoft Technology Licensing, Llc Hierarchical attention for spoken dialogue state tracking
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
US9996532B2 (en) 2016-06-17 2018-06-12 Microsoft Technology Licensing, Llc Systems and methods for building state specific multi-turn contextual language understanding systems
US20180005629A1 (en) * 2016-06-30 2018-01-04 Microsoft Technology Licensing, Llc Policy authoring for task state tracking during dialogue
US10331784B2 (en) 2016-07-29 2019-06-25 Voicebox Technologies Corporation System and method of disambiguating natural language processing requests
US10162815B2 (en) * 2016-09-02 2018-12-25 Disney Enterprises, Inc. Dialog knowledge acquisition system and method
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US20180114528A1 (en) * 2016-10-26 2018-04-26 IPsoft Incorporated Systems and methods for generic flexible dialogue management
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US10380228B2 (en) 2017-02-10 2019-08-13 Microsoft Technology Licensing, Llc Output generation based on semantic expressions
US20180275957A1 (en) * 2017-03-27 2018-09-27 Ca, Inc. Assistive technology for code generation using voice and virtual reality
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10936288B2 (en) * 2017-05-26 2021-03-02 Sap Se Voice-enabled user interface framework
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10991369B1 (en) * 2018-01-31 2021-04-27 Progress Software Corporation Cognitive flow
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
US10504518B1 (en) 2018-06-03 2019-12-10 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
CN116737900A (zh) * 2018-10-15 2023-09-12 阿里巴巴集团控股有限公司 人机交互处理系统及其方法、存储介质、电子设备
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US10762890B1 (en) 2019-08-19 2020-09-01 Voicify, LLC Development of voice and other interaction applications
US11508365B2 (en) 2019-08-19 2022-11-22 Voicify, LLC Development of voice and other interaction applications
US10614800B1 (en) 2019-08-19 2020-04-07 Voicify, LLC Development of voice and other interaction applications
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11610065B2 (en) 2020-06-12 2023-03-21 Apple Inc. Providing personalized responses based on semantic context
US11922515B1 (en) 2023-04-28 2024-03-05 Peppercorn AI Technology Limited Methods and apparatuses for AI digital assistants

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5748841A (en) * 1994-02-25 1998-05-05 Morin; Philippe Supervised contextual language acquisition system
US5884262A (en) * 1996-03-28 1999-03-16 Bell Atlantic Network Services, Inc. Computer network audio access and conversion system
US6269336B1 (en) * 1998-07-24 2001-07-31 Motorola, Inc. Voice browser for interactive services and methods thereof
US6539359B1 (en) * 1998-10-02 2003-03-25 Motorola, Inc. Markup language for interactive services and methods thereof
US7003463B1 (en) * 1998-10-02 2006-02-21 International Business Machines Corporation System and method for providing network coordinated conversational services
US7024368B1 (en) * 1999-03-12 2006-04-04 Microsoft Corporation Man-machine dialogue system, controls dialogue between system and user using dialogue specification employing augmented transition networks propagating tokens
US6631346B1 (en) * 1999-04-07 2003-10-07 Matsushita Electric Industrial Co., Ltd. Method and apparatus for natural language parsing using multiple passes and tags
US7216351B1 (en) * 1999-04-07 2007-05-08 International Business Machines Corporation Systems and methods for synchronizing multi-modal interactions
US6636831B1 (en) * 1999-04-09 2003-10-21 Inroad, Inc. System and process for voice-controlled information retrieval
US6356869B1 (en) * 1999-04-30 2002-03-12 Nortel Networks Limited Method and apparatus for discourse management
JP2001056694A (ja) 1999-08-19 2001-02-27 Denso Corp 対話型ユーザインタフェース装置
US6609089B1 (en) 1999-08-30 2003-08-19 Lucent Technologies Inc. Method and apparatus for providing interactive services with multiple interfaces
US6529863B1 (en) 1999-08-30 2003-03-04 Lucent Technologies Inc. Method and apparatus for providing interactive services with multiple interfaces
US7685252B1 (en) * 1999-10-12 2010-03-23 International Business Machines Corporation Methods and systems for multi-modal browsing and implementation of a conversational markup language
US7167830B2 (en) * 2000-03-10 2007-01-23 Entrieva, Inc. Multimodal information services
US20020174147A1 (en) * 2000-05-19 2002-11-21 Zhi Wang System and method for transcoding information for an audio or limited display user interface
US20020003547A1 (en) * 2000-05-19 2002-01-10 Zhi Wang System and method for transcoding information for an audio or limited display user interface
US7127486B1 (en) * 2000-07-24 2006-10-24 Vignette Corporation Method and system for facilitating marketing dialogues
US20020054090A1 (en) * 2000-09-01 2002-05-09 Silva Juliana Freire Method and apparatus for creating and providing personalized access to web content and services from terminals having diverse capabilities
US6717593B1 (en) * 2000-09-12 2004-04-06 Avaya Technology Corp. Mark-up language implementation of graphical or non-graphical user interfaces
US7024348B1 (en) * 2000-09-28 2006-04-04 Unisys Corporation Dialogue flow interpreter development tool
US6934756B2 (en) * 2000-11-01 2005-08-23 International Business Machines Corporation Conversational networking via transport, coding and control conversational protocols
US7028306B2 (en) * 2000-12-04 2006-04-11 International Business Machines Corporation Systems and methods for implementing modular DOM (Document Object Model)-based multi-modal browsers
US6996800B2 (en) * 2000-12-04 2006-02-07 International Business Machines Corporation MVC (model-view-controller) based multi-modal authoring tool and development environment
US7487440B2 (en) * 2000-12-04 2009-02-03 International Business Machines Corporation Reusable voiceXML dialog components, subdialogs and beans
GB2372864B (en) * 2001-02-28 2005-09-07 Vox Generation Ltd Spoken language interface
US7020841B2 (en) * 2001-06-07 2006-03-28 International Business Machines Corporation System and method for generating and presenting multi-modal applications from intent-based markup scripts
US7019749B2 (en) * 2001-12-28 2006-03-28 Microsoft Corporation Conversational interface agent
US20030145062A1 (en) * 2002-01-14 2003-07-31 Dipanshu Sharma Data conversion server for voice browsing system
US20030139928A1 (en) * 2002-01-22 2003-07-24 Raven Technology, Inc. System and method for dynamically creating a voice portal in voice XML
US7546382B2 (en) * 2002-05-28 2009-06-09 International Business Machines Corporation Methods and systems for authoring of mixed-initiative multi-modal interactions and related browsing mechanisms

Also Published As

Publication number Publication date
US8572209B2 (en) 2013-10-29
US7546382B2 (en) 2009-06-09
US20030225825A1 (en) 2003-12-04
JP2004005676A (ja) 2004-01-08
US20080034032A1 (en) 2008-02-07

Similar Documents

Publication Publication Date Title
JP4090040B2 (ja) 双方主導マルチモーダル対話及び関連ブラウジング機構を作成するための方法及びシステム
US10163440B2 (en) Generic virtual personal assistant platform
US8768711B2 (en) Method and apparatus for voice-enabling an application
US6604075B1 (en) Web-based voice dialog interface
US7685252B1 (en) Methods and systems for multi-modal browsing and implementation of a conversational markup language
US7739117B2 (en) Method and system for voice-enabled autofill
US6456974B1 (en) System and method for adding speech recognition capabilities to java
US7487440B2 (en) Reusable voiceXML dialog components, subdialogs and beans
US7020841B2 (en) System and method for generating and presenting multi-modal applications from intent-based markup scripts
US7890333B2 (en) Using a WIKI editor to create speech-enabled applications
US7216351B1 (en) Systems and methods for synchronizing multi-modal interactions
US8909532B2 (en) Supporting multi-lingual user interaction with a multimodal application
KR101066741B1 (ko) 컴퓨터 시스템과 동적으로 상호작용하기 위한 컴퓨터 구현 방법, 시스템, 및 컴퓨터 판독가능 기록 매체
US9083798B2 (en) Enabling voice selection of user preferences
US20020077823A1 (en) Software development systems and methods
US8321226B2 (en) Generating speech-enabled user interfaces
US20030046316A1 (en) Systems and methods for providing conversational computing via javaserver pages and javabeans
CN110998526B (zh) 用户配置的且自定义的交互式对话应用
JP4140878B2 (ja) マルチモーダル・ブラウジングおよび会話型マークアップ言語の実施の方法およびシステム
US20070129950A1 (en) Speech act-based voice XML dialogue apparatus for controlling dialogue flow and method thereof
EP1455282A1 (en) Markup language extension enabling speech recognition for controlling an application
Demesticha et al. Aspects of design and implementation of a multi-channel and multi-modal information system
Tiwari et al. Conversational multi-modal browser: an integrated multi-modal browser and dialog manager
JP2004029457A (ja) 音声対話装置、および音声対話プログラム
Hocek VoiceXML and Next-Generation Voice Services

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060302

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060628

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060628

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20060628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060628

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20071002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20071226

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071226

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080218

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20080218

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20080218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080225

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110307

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110307

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110307

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120307

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130307

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140307

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees