JP2009528621A - 適応的セマンティックプラットフォームアーキテクチャ - Google Patents

適応的セマンティックプラットフォームアーキテクチャ Download PDF

Info

Publication number
JP2009528621A
JP2009528621A JP2008557284A JP2008557284A JP2009528621A JP 2009528621 A JP2009528621 A JP 2009528621A JP 2008557284 A JP2008557284 A JP 2008557284A JP 2008557284 A JP2008557284 A JP 2008557284A JP 2009528621 A JP2009528621 A JP 2009528621A
Authority
JP
Japan
Prior art keywords
user
asset
component
task
computer
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.)
Withdrawn
Application number
JP2008557284A
Other languages
English (en)
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.)
Microsoft Corp
Original Assignee
Microsoft 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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2009528621A publication Critical patent/JP2009528621A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

容易に利用してユーザ(複数)と機械システム(複数)との間の自然な対話を可能とできる適応的な共有インフラストラクチャを提供する。さらに、本新規発明は、ユーザ入力に基づいて正確な意図からアクションへのマッピングを生成する対話的な技術を提供することができる。さらに、本発明は資産(例えば、ドキュメント、アクション)をオーサリング可能な新規のメカニズムを提供することができる。そのオーサリングメカニズムは、システムが少なくとも部分的にユーザ入力の分析に基づいてユーザの意図を推論できるように、学習モデルの生成を可能とすることができる。それに応じて、システムは資産、または資産のグループをその推論に基づいて発見することができる。さらに、本発明は、1つまたは複数のユーザ入力(複数)、アクション(複数)、および/または状態(複数)基づいて学習および/または適応する自然言語インタフェースを提供することができる。

Description

人間の言語は豊富で複雑であり、複雑な文法と文脈的な意味を有する何百もの語彙を含む。例として、特定の文、質問、思考、意味、等を多数の異なる方法で表現することができる。従って、人間の言語を機械的に解釈することは極端に複雑な作業である。少なくともこの理由のため、人間の入力から生成した結果またはアクションはユーザの意図に正確にマップまたは対応しないことがよくある。
機械またはソフトウェアのアプリケーションおよび言語では一般に、特定のフォーマットまたはルールに従ってデータを入力することが必要である。機械との対話を望む人間は、厳格なルールおよび上記ルールに対する不慣れまたは知識不足のため、苛立つかまたは効率的に通信できないことがある。機械固有の言語または文法を学習する必要なく自動化システムと効率的に通信できる能力をユーザに提供すると有用性が増す。しかしながらユーザは自動化システムおよび機械がユーザ入力を正確に解釈できないと直ぐに苛立つ可能性がある。その自動化システムおよび機械は、予期しない結果、望ましくない結果を生成する恐れがあり、および/または結果を全く生成しない恐れがある。
自然言語入力は多様なアプリケーションに対して有用である可能性がある。そのアプリケーションには、人間が対話する事実上全てのソフトウェアアプリケーションが含まれる。一般に、自然言語処理中に、自然言語入力はトークンに分離され、ソフトウェアアプリケーションが提供する1つまたは複数のアクションにマップされる。それぞれのソフトウェアアプリケーションは一意なアクション集合を有することができる。そのアクション集合は本質的に幾分限定されている。結果として、ソフトウェア開発者が自然言語入力を解釈するコードを設計してその入力をそれぞれのアプリケーションに対する適切なアクションにマップすることは時間を浪費し、反復的である恐れがある。
以下で、本発明の幾つかの態様の基本的な理解を与えるため、本発明の簡単な要約を提示する。本要約は本発明の広範的な概要ではない。本要約は本発明の主要/決定的な要素を特定するよう、または本発明の範囲を区別するよう意図していない。その唯一の目的は本発明の幾つかの概念を、後述するより詳細な説明に対する前置きとして簡潔な形態で提示することである。
本明細書で開示および主張する本発明は、その1つの態様では、適応的な共有インフラストラクチャを備える。そのインフラストラクチャを容易に利用して、ユーザ(複数)と機械システム(複数)との間の自然な対話を可能とすることができる。さらに、本新規発明は、ユーザ入力に基づいて正確な意図からアクションへのマッピングを生成する対話的な技術を提供することができる。さらに、本発明は、資産(assets,例えば、ドキュメント、アクション)をオーサリング可能な新規のメカニズムを提供することができる。従って、「資産」を2つのクラスに取り出すことができる。即ち、「ドキュメント」は静的な資産であり、「アクション」は動的でありかつアクションを実施可能な資産である。
オーサリングメカニズムは、システムが少なくとも部分的にユーザ入力の分析に基づいてユーザの意図を推論できるように、学習モデルの生成を可能とすることができる。それに応じて、システムは推論に基づいて資産、または資産のグループを発見することができる。さらに、本発明は自然言語インタフェースを提供することができる。その自然言語インタフェースは、1つもしくは複数のユーザ入力(複数)、アクション(複数)、および/または状態(複数)に基づいて学習および/または適応する。
原則として、1つの態様では、本新規発明は統計ベースのシステムのアーキテクチャを含むことができる。そのアーキテクチャは意図をアクションに対して調整する能力を有し、ユーザの振る舞いから学習して時間とともに改善することができる。より詳細には、そのアーキテクチャは以下を対象とするエンドツーエンドのシステムを網羅することができる。すなわち、
資産のオーサリング、
ユーザの意図の判定、
意図の、資産または資産集合へのマッピング、
資産(複数)の実行、
フィードバックの取得、および
フィードバックからの学習
である。
他の態様では新規の意図からアクションへのシステムを適用して、人間と機械との間の対話をシナリオにおいてより自然にすることができる。そのシナリオにはサーバ上で実行されている音声アプリケーション、携帯電話上で実行されているより小型のアプリケーション、パーソナルコンピュータ上で実行されているデスクトップアプリケーション、またはインターネット上で実行されているウェブサービスが含まれるがこれらに限らない。
本アーキテクチャは、オーサリングから推論までの共通のエンドツーエンドインフラストラクチャを提供してフィードバックすることにより、アプリケーション内で自然特徴を有するコストを大幅に下げることができる。このアーキテクチャは万能であり、様々なシナリオで使用することができる。そのシナリオには音声、デスクトップ、モバイル、およびウェブアプリケーションが含まれるがこれらに限らない。同様に、そのアーキテクチャは、それを行うための単純なAPl(application programming interface)を提供することができる。
態様によると、3つの主要なフロー(論理およびデータ)図が存在することができる。上記のアーキテクチャは3つの列挙したエンドツーエンドのフローをサポートする。そのフローは、モデル構築および管理のフロー、ユーザ対話フローならびにフィードバックおよび分析のフローを含む。
さらにその別の態様では、人工知能コンポーネントを提供する。その人工知能コンポーネントは、ユーザが自動的な実施を望む、意図またはアクションを推論するための確率および/または統計ベースの分析を使用する。
前述および関連する目的を達成するため、本発明の或る特定の態様の例を以下の説明および付属図面に関連して本明細書で説明する。しかしながらこれらの態様は、本発明の原理を使用できる様々な方法のうち2、3を示すに過ぎず、本発明は全ての上記態様およびその等価物を含むように意図している。本発明の他の利点および新規特徴は、図面に関連して考慮すると以下の本発明の詳細な説明から明らかになるであろう。
図面を参照して本発明を説明する。図面に渡って同じ参照番号を使用して同じ要素を参照する。以下の説明では、説明の目的のため、多数の具体的な詳細を説明して本発明の徹底的な理解を与える。しかしながら、本発明をこれらの具体的な詳細なしに実践できることは明らかであろう。他の事例では、公知の構造および装置をブロック図の形で示して本発明の説明を促進する。
本出願で使用するとき、用語「コンポーネント」および「システム」は、コンピュータ関連のエンティティ、ハードウェア、ハードウェアおよびソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかを指すよう意図している。例えば、コンポーネントは、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、および/またはコンピュータであることができるがこれらに限らない。例として、サーバ上で実行されるアプリケーションおよびサーバの両方はコンポーネントであることができる。1つまたは複数のコンポーネントはプロセスおよび/または実行スレッド内部に存在することができ、コンポーネントを1つのコンピュータ上にローカライズすることおよび/または複数のコンピュータ間で分散させることができる。
本明細書で使用するとき、用語「推論する」または「推論」は一般に、システム、環境、および/またはユーザの状態を、事象および/またはデータを介して取得した一連の観察結果から類推または推論するプロセスを指す。例えば、推論を使用して特定のコンテキストまたはアクションを識別することができ、または状態の確率分布を生成することができる。推論は確率的であることができる。即ち、着目する状態の確率分布の計算はデータおよび事象を考慮して行う。推論は、より高レベルの事象を一連の事象および/またはデータから構成するために使用する技術も指すことができる。上記の推論の結果、事象が時間的に近接して相関するか否かに関わらず、および事象およびデータが1つまたは幾つかの事象およびデータ源から来るか否かに関わらず、一連の観測した事象および/または記憶した事象データから新しい事象またはアクションが構築される。
情報をユーザに表示する或る特定の方法をスクリーンショットとして或る特定の図面に関して図示および説明するが、当業者は様々な他の代替手段を使用できることを認識するであろう。本明細書では用語「スクリーン」、「ウェブページ」、および「ページ」を一般に同じ意味で使用する。ページまたはスクリーンをディスプレイ記述として、グラフィカルユーザインタフェースとして、もしくはページ上に表示されるレイアウトおよび情報またはコンテンツがメモリ、データベース、または別の記憶設備に記憶されるスクリーン(例えば、パーソナルコンピュータ、PDA、携帯電話、または他の適切な装置)上に情報を描画する他の方法により、記憶および/または送信する。
最初に図面を参照する。図1は、ユーザと機械との間の自然で直感的な対話を促進するシステム100を示す。一般に、システム100は類推コンポーネント102、オーサリング/分析コンポーネント104およびデータストア106を含むことができる。より詳細には、システム100は、ユーザ(またはアプリケーション)からの入力クエリを受信し、その後類推コンポーネント102を使用することによりクエリを処理することができる。動作中は、類推コンポーネント102は入力をトークン集合に構文解析することができる。そのトークン集合を処理および解釈して適切なタスクをユーザにレンダリングすることができる。
オーサリング/分析コンポーネント104およびデータストア106をそれぞれ使用して、特定のユーザ入力に応じてタスクを確立および促進することができる。以下の図面を検討すると、入力クエリは任意の形態であることができることは理解されるであろう。その形態にはテキストおよび音声、等が含まれるがこれらに限らない。前述のシステム100のコンポーネントの各々を以下でさらに詳細に説明する。特定の態様および例を後述するが、無数の入力およびタスクを本発明の新規性に適用できることは理解されるべきである。従って、これらの代替的な態様は本開示および添付請求項の範囲内に含まれるべきである。
上述のように、自然言語のクエリからユーザの意図を判定することはコンピュータ科学における最も難しい問題の1つである。例えば、ユーザは入力情報を含むウェブサイトに対してヘルプドキュメント、同様な作業のサンプル、または恐らくはアクションを実施する何かを探している可能性がある。ユーザが見つけようと試みる情報の量が事実上無限であるとすると、本発明は取り出すことができる「資産」または「タスク」の種類を2つのクラス、すなわち「ドキュメント」および「アクション」に分類する。従って、ドキュメントは静的である資産を指し、「アクション」は動的でありかつ特定のアクションを実施できる資産である。
従来システムにより課され未解決である1つの問題はどのようにしてユーザの「意図」にマッチする資産を発見するかということであることは理解されるであろう。それによると、本システム100のアーキテクチャは統計ベースのシステムとして実施することができる。そのシステムは、意図をアクションに対して調整する能力を有し、ユーザの振る舞いから学習して時間とともに改善し、より正確になることができる。
例として、および図1を再度参照すると、ユーザは、ユーザが行いたいまたは発見したいものを表す入力クエリを話すかまたはタイプすることができる。従って、1つの態様では類推コンポーネント102は命令を、有用であるドキュメントに、またはユーザマシン上で実施可能なアクションに、それぞれ入力クエリに基づいてマップすることができる。
入力クエリを動的に解釈することに加えて、本フレームワークまたはアーキテクチャ(例えば、システム100)はオーサリング/分析コンポーネント104を含むことができる。オーサリング/分析コンポーネント104は、任意の入力を処理可能なアプリケーション(例えば、タスク、アクション)のオーサリングまたは作成を可能とすることができる。同様に、アーキテクチャ(システム100)は任意の入力に従ってユーザの好みを判定することができる。
ハードコードシステムは更新および維持が非常に困難であることは理解されるであろう。ハードコードシステムでは、全ての可能な入力を特定のタスク、アクション、ドキュメント、等へ予めマップすることが必要である。さらに入力が不規則に変化すると、絶え間なく変化する範囲の入力を構築するために、ハードコードシステムも修正しなければならないであろう。従来のハードコードシステムと対照的に、本発明は手動調整を、あったとしてもほとんど必要としない統計ベースのシステムである。換言すれば、本発明はユーザ入力と結果を自動的に構築することができ、従って人間の介入および/またはメンテナンスに対する必要性が排除される。
より詳細には、システム100は例えばインターネット経由およびコールセンタ内部で利用可能な大量のデータを利用することができる。この大量のデータを活用して、ユーザ入力のアクションへのマッピングを探ることで、ユーザが行っていることを学習することができる。以下の図面を検討すると理解されるように、本システム100はオーサリング/分析コンポーネント104を使用して新規のフィードバックベースのシステムを達成することができる。
図2は、本発明の態様に従ってユーザ入力を処理する方法を示す。説明の簡単さのため、本明細書で示す1つまたは複数の方法を例えばフロー図の形態で一連の動作として図示および説明してあるが、本発明に従って幾つかの動作を異なる順序で、および/または本明細書で図示および説明した他の動作と並行に実施できるので、本発明は動作順序により限定されないことは理解されるべきである。例えば、当業者は、方法を状態図のような一連の相関する状態または事象として代替的に表現できることを理解するであろう。さらに、全ての示した動作が、本発明に従った方法を実装する必要はない。
202で、ユーザクエリを表す入力クエリを受信することができる。1つの態様では、入力クエリはユーザの問合せに従う検索語を含む英数字文字列であることができる。別の態様では、入力クエリは音声クエリの形を取ることができる。本発明の範囲から逸脱せずに任意の入力方法を使用できることは理解されるであろう。
入力方法は異なってもよいが、本発明の1つの新規特徴は204での入力クエリの分析であることは理解されるであろう。従って、入力クエリを構文解析してトークン(例えば、検索語)に分離することができる。これらの検索語を206で使用して、入力クエリに従う関連タスクを判定することができる。換言すれば、システムは入力クエリを204で分析して、その後206で分析結果を使用して適切なタスクを判定することができる。
タスクを判定すると、208でフィードバックを分析して、ユーザの意図、履歴、等に従ってタスクの使用をさらに自動化することができる。例として、スロット自動補完を使用して、選択したタスクに関する入力ボックスを予めポピュレートすることでユーザの意図を動的に自動化することができる。フィードバックを必要に応じて分析および実装すると、210でタスクをユーザにレンダリングすることができる。情報(例えば、フィードバック)を継続的に収集して記憶および利用し、対話を構築して、それによりシステムの対話性および能力を向上できるように、タスクをレンダリングするプロセスおよびフィードバックをコンパイルするプロセスは再帰的プロセスであることができることは理解されるべきである。
図3を参照する。本発明の態様に従ってタスクをオーサリングする方法を示してある。理解されるように、図1に示すアーキテクチャはタスクのオーサリングからユーザの意図の判定、および最終的にその意図の特定の資産またはタスクへのマッピングまでのプロセスを促進することができる。例として、資産は特定のドキュメント、特定の対象またはユーザが実施を希望するアクション(例えば、電子メールのオープンおよび特定のフィールドのプレローディング)に関するヘルプドキュメントであることができる。それによると、図3に示す方法は最初にタスクをオーサリングする例示的なプロセスフローを示す。
302で、タスクの種類を判定することができる。例えば、特定の種類のアクション(例えば、テーブルの作成)に関連付けたタスクを開発することができる。従って、304でタスクの一般的なフレームワークを生成する。フレームワークを確立すると、306でタスクパラメータをそのフレームワークに適用することができる。
より具体的な例では、タスクがワード処理ドキュメントにおけるテーブルの作成に関すると仮定する。従って、パラメータは行数、列数、列幅、等のような要素であることができる。最後に、一度オーサリングすると、ユーザの問合せに応じて後日タスクを取り出せるように、308でタスクをストア内で索引付けすることができる。最後に停止ブロックに到達する。
図1に示すシステム100のアーキテクチャに再度戻ると、システムは、資産(例えば、タスク)を選択するだけでなくユーザ入力に従う資産の実行方法も判定するアーキテクチャを提供することができる。換言すれば、本発明はアクションの実施方法とハンドオフの場所を本発明および対象システムから制御することができる。従って、この情報を使用してシステムにフィードバックを提供することができる。この例におけるフィードバックは、ユーザが特定のアクションに関して行ったものとして緩く定義できることは理解されるべきである。
特定の例では、音声アプリケーションを使用してフライトの予約に対するクエリを解釈することができる。この場合、目的地の都市を自動的に埋めることができる(例えば、ピッツバーグ)。この自動スロット補完は任意の基準に基づくことができる。その基準には過去のユーザのアクションが含まれるがこれに限らない。
上の例を続けると、ピッツバーグへのフライトの予約希望を示すユーザクエリに応じて、システム100は特定のインターネットウェブサイトにアクセスしてそのフライトを予約することで、自動的にタスクを実施することができる。それに従って、類推コンポーネント102を使用して目的地の都市のフィールドを「ピッツバーグ」になるように自動的に補完することができる。さらに、システムは(オーサリング/分析コンポーネント104を介して)この情報(例えば、ウェブサイトにアクセスして目的地の都市を埋めること)を、同一または同様な後続のアクションに関連して使用されるフィードバックとして記録することができる。
全体として、システムはフィードバックを活用して学習し、ユーザ入力に対してより高度およびより敏感となることができる。図1に示すように、システム100のアーキテクチャは以下を含むエンドツーエンドのシステムを網羅することができる。すなわち、
資産のオーサリング、
ユーザの意図の判定、
意図の資産へのマッピング、
資産の実行、
フィードバックの取得、および
フィードバックからの学習
である。
「意図からアクションへ」はアプリケーションにおける繰り返し発生するテーマであることは理解されるべきである。サーバ上で実行されている音声アプリケーション、携帯電話上で実行されているより小型のアプリケーション、パーソナルコンピュータ上で実行されているデスクトップアプリケーション、またはインターネット上で実行されているウェブサービスであるかどうかに関わらず、ユーザはコンピュータとより自然に対話する希望を一貫して示し、「意図からアクションへ」はこの目標の実現を促進することができる。
従来は、意図をアクションへ変換しそれに関するフィードバックを監視するためのフレームワークまたはシステムは存在しない。本明細書で説明する新規のシステム100は、オーサリングから推論までの共通のエンドツーエンドインフラストラクチャを提供してフィードバックすることにより、アプリケーション内で自然特徴を有するコストを大幅に下げることができる。本システム100を音声、デスクトップ、モバイル、およびウェブアプリケーションにより使用することができ、それを行う単純なAPI(application program interface)を提供することができる。
システム100のアーキテクチャがサポートする少なくとも3つの主要なフロー(論理およびデータ)図がある。そのフローの各々をシステム100の新規のコンポーネントを参照して説明することができる。図4−6はそれぞれ、類推コンポーネント102、オーサリング/分析コンポーネント104、およびデータストアコンポーネント106の詳細なブロック図を示す。理解されるように、これらのコンポーネントは後述する3つの異なるフローを達成することができる。
第1に、システム100はモデル構築および管理フローを促進することができる。一般に、これは、資産、即ち、タスク、ドキュメントおよび階層(分類法)の作成および管理に関するフローである。より詳細には、これは資産(例えば、タスク、ドキュメント)を作成し、類推システムを支援する注釈を作成し、フィードバックデータを取り込んで学習モデルをトレーニングし、中間および実行時の索引(逆索引、プロパティストア)を作成する部分である。動作中は、オーサリング/分析コンポーネント104およびデータストア106を使用してこのフローを達成することができる。
第2に、システム100はユーザ対話フローを促進することができる。一般に、これは、システムとのユーザの対話に関するフローである。より詳細には、これは、ユーザの対話を選択(例えば、音声、テキスト)およびコンテキスト(例えば、コードまたはデータ)の様式で表す場合である。動作中は、システムはランク付けされたセマンティックソリューションをアプリケーション空間に提供し戻す「資産空間」上で類推し、アプリケーションは支援ユーザインタフェース要素(例えば、ダイアログ、再表示、確認、エンド資産(end asset)、実行順序)を提示する。その支援インタフェース要素は、ユーザが自身の意図を最高の「顧客満足」を有するアクションにマップすることを支援する。さらにこのフローでは、資産タイプに基づいて、アプリケーションがAPIセットを通してシステムと対話し、実行または列挙につながるデータの結果セットを戻す。動作中は、類推コンポーネント102を使用してこの新規の機能性を促進することができる。
第3に、システム100はフィードバックおよび分析フローを促進することができる。これは、フィードバックを収集して次いで後にその収集したフィードバックを分析してより良いユーザおよびモデル構築フローを作成し、開発および対話エクスペリエンスを改善することを求めることに関わるフローである。再度、データストア106とともにオーサリング/分析コンポーネント104を使用してこのフロー部分を達成することができる。
図4を参照する。類推コンポーネント102の例示的なブロック図を示してある。示すように、類推コンポーネント102は語彙処理コンポーネント402、統計的タスク検索コンポーネント404、統計的スロット補完コンポーネント406、ランク付けコンポーネント408および結果提示コンポーネント410を含むことができる。これらのコンポーネントの各々をそれらの新規機能性に関して後述する。これらの異種のコンポーネントの各々を含むように類推コンポーネント102を示してあるが、本発明の全体の新規機能性から逸脱せずに、これらのコンポーネントの任意のサブセットを類推コンポーネントから省略できることは理解されるべきである。
動作中は、類推コンポーネント102はタスク実行を通して入力クエリを処理することができる。以下で、旅行関連の入力クエリに関する特定の例を議論する。本発明にコンテキストを追加するためにこれらの例を提供するが、これらの例は決して本発明を限定するようには意図していないことは理解されるべきである。寧ろ、本発明の説明に観点を追加するために本明細書で説明した例を提供し、当業者は本開示および添付請求項の範囲内に含まれるべき無数のさらなる例が存在することを理解するであろう。
例において、入力クエリは話したまたはタイプした語句「私はピッツバーグからシアトルに行きたい」であることができる。例えば、この句を検索エンジンに入力することができる。入力を受信すると、類推コンポーネント102は語彙処理コンポーネント402を使用することでその入力を処理することができる。より詳細には、語彙処理コンポーネント402はクエリを一連のトークンに構文解析することができる。換言すれば、語彙処理コンポーネント402は入力に対して単語分割手続きを実施することができる。
この態様は入力の構文解析に単語分割を使用するが、様々なツールを使用して入力の単語を分離できることは理解されるであろう。単語を分割すると、語彙処理コンポーネント402は入力クエリ内部に含まれる名前付きエンティティ(例えば、ピッツバーグ、シアトル)を発見することができる。名前付きエンティティは、特定の領域に対して特定の意味を有する単語であると理解される。さらなるより具体的な例として、入力が「私は2006年11月13日にピッツバーグからシアトルに行きたい」であったとすると、システムは日付/時刻の入力を名前付きエンティティ(例えば、2006年11月13日)として認識することもできる。
名前付きエンティティを使用してユーザ特性を正規化できることは理解されるであろう。上の例では、使用される日付形式は日付に関するユーザの好みを識別し、その後クエリのどの領域が日付、都市、等に関するかを判定することができる。システムが単語分割からのトークンを有し、認識した名前付きエンティティを有すると、システムは統計的タスク検索コンポーネント404を使用することができる。
換言すると、クエリおよび認識した名前付きエンティティが与えられると最も可能性のある全ての利用可能なアクションおよびドキュメントから、統計的タスク検索コンポーネント404を使用して最も適切なタスク、または一連のタスクを発見することができる。この新規のタスク検索を実現するため、本発明はクエリ分類子、情報検索、コンテンツ分類子等を使用することができる。
例えば、今日、多数の検索エンジンは情報検索メカニズムを使用して検索クエリに関して結果を返してレンダリングする。換言すれば、情報検索メカニズムは特定の単語セットを特定のドキュメントにマップする方法を判定することは理解されるであろう。しかしながら、情報検索のこれらの従来の使用は調整したハードコードシステムによるものであり、統計的タスク検索コンポーネント404により使用される新規の統計的な適応的な方法には基づかない。
さらに、統計的タスク検索コンポーネント404は、どのクエリによりどの結果が返されたかを判定するクエリ分類子を使用することができる。前述の例に関してクエリ分類子は、クエリ内の単語「フライト」が最も頻繁にユーザが特定のウェブサイトを選択する結果になることを発見することができる。従ってクエリ分類子は、単語「フライト」が特定のウェブサイトまたはウェブサイトのグループの名前に関連付けられることを「学習」することができる。従って、この学習した類推に基づいて、情報検索システムからの結果を微調整して異なる結果セットまたは異なるランク付け結果セットをレンダリングすることができる。
さらに統計的タスク検索コンポーネント404は、ユーザアクションの履歴を評価してその履歴データに基づいてユーザの好みを判定できるコンテキスト分類子を使用することができる。上の例を続けると、クエリを参照し、コンテキスト分類子は履歴のアクションを見て、ユーザが特定のクエリを入力するときに例えばユーザがホテルではなくフライトを探している可能性が高いことを判定することができる。この目的のため、コンテキスト分類子はさらに、収集した統計データに基づいてユーザの好みまたは意図を絞ることを支援することができる。全体として、統計的タスク検索コンポーネント404は、ユーザ入力クエリの分析を介して判定されるアクションおよび/またはドキュメントのリストを返すことができる。
統計的スロット補完コンポーネント406を参照する。このコンポーネントは所望のパラメータおよび/または情報基準の自動補完を実施することができる。フライトの例を再度参照すると、スロット補完コンポーネント406はフライト時刻、到着地の都市、目的地、等のような基準を自動補完することができ、その全てはユーザの好みまたは意図に基づくことができ、またはその全てをユーザの好みまたは意図から判定することができる。全体として、統計的スロット補完コンポーネント406は入力クエリに基づいて特定のスロットを自動補完することができる。
それによると、統計的スロット補完コンポーネント406はクラスモデルコンポーネント、タグモデルコンポーネント等を含むことができる。スロット補完の特定のメカニズムを開示するが、スロット補完の代替的なメカニズムを本発明に関連して使用できることは理解されるべきである。これらの代替的なアルゴリズム的メカニズムは本開示および添付請求項の範囲内に含まれるべきである。動作中は、システムは統計的タスク検索404により識別したタスクを使用して適切なスロットを自動補完することができる。
ランク付けコンポーネント408を使用して、識別したタスクをランク付けすることができる。タスクを様々な情報源から提供できることは理解されるべきである。例えば、幾つかのタスクは或るウェブサイトから調達することができ、他のタスクを別のウェブサイトから調達することができる等である。従って、タスクを必要に応じて調達して、利用可能な最良の情報源(複数)から最良のタスクに関する結果を得ることができる。従って、ランク付けコンポーネント408は様々な情報源からの結果を結合することができ、その後最良の結果をユーザに提示することができる。
結果提示コンポーネント410は結果(例えば、タスク(複数))を様々な方法でレンダリングすることができる。例として、結果提示は単純な検索結果提示から音声作動式システム(例えば、「フライトを予約するには1を押してください」、「フライト状態については2を押してください」)まで様々であることができる。提示は多数の変数に依存することができる。その変数には装置タイプ、様式(例えば、音声、テキスト)、等が含まれるがこれらに限らない。
ユーザがオプションまたはリンクを選択すると、システムはタスク実行段階に入ることができる。理解されるべきであるが、タスク実行および入力クエリはアプリケーション側にある。換言すれば、これらのコンポーネントは、処理を実施して可能性のあるタスク、スロット補完、等を判定するバックエンドプロセスには結びついていない。換言すれば、アプリケーションは、自身がどのようにタスクをレンダリングしたいか、および自身をどのように実行(例えば、実施)すべきかを判定する。タスク実行内部で、ユーザはウェブフォーム、音声ダイアログ、等に導いてもよい。フライトの例を続けると、システム100はユーザに、出発地の都市、到着地の都市、等を入力または確認するよう促すことができる。
図5および図6はそれぞれ、例示的なオーサリング/分析コンポーネント104およびデータストアコンポーネント106を示す。一般に、オーサリング/分析コンポーネント104はトレーニングコンポーネント502およびタスクエディタコンポーネント504を含むことができる。他の情報の中で、データストアコンポーネント106はタスク索引コンポーネント602、タスクプロパティコンポーネント604、クエリモデルコンポーネント606およびスロットモデルコンポーネント608を含むことができる。これらのコンポーネントの各々およびそれぞれのサブコンポーネントを、図7を参照して以下でさらに詳細に説明する。
図7を参照する。システム100の代替的なアーキテクチャ図を示してある。より詳細には、上記の代替的なアーキテクチャ図は、類推、オーサリング/分析およびデータストアコンポーネント(102、104、106)を含めてサブコンポーネントを示す。動作中は、システム100はフィードバックをシステムに渡すことができる。このフィードバック渡しをタスクの出力(即ち、実行)からトレーニングコンポーネント504への矢印で示す。この矢印は、ユーザが行ったことは何か、クエリが何であったかに関するフィードバックを示す。従ってこのフィードバックをシステムに戻して統計モデルを構築することができる。
図7に示すようにトレーニングコンポーネント504はスロットモデル608およびクエリモデル606にフィードバックすることができる。スロットモデル608およびクエリモデル606を統計的タスク検索およびスロット補完コンポーネント(404、406)を介して使用してタスク検索およびスロット補完ボックスを更新することができる。示すようにトレーニングコンポーネント504(モデルビルダ)へのタスク出力からスロットモデル608およびクエリモデル606へのフィードバックループが存在することができる。スロットモデル608およびクエリモデル606はそれぞれ、統計的スロット補完コンポーネント406および統計的タスク検索コンポーネント404と通信することができる。本ループは、システム100がさらなるデータに応答する方法およびシステム100がより良いモデルを構築することで時間をかけて情報を構築する方法を示す(606、608)。
タスクエディタコンポーネント502、タスクプロパティコンポーネント604およびタスク索引コンポーネント602を議論する。最初に任意のデータが存在する前に、領域が何をできるかまたはその範囲の資産は何であるかを理解するためにオーサリングを行うことができる。これをオーサリングと称する。換言すれば、オーサリングを、領域に関してこのコンテキストを作成することと考えることができる。
フライトの例を再度参照する。第1のステップは、ユーザが何をできるかをオーサリングすることであることができる。例えば、タスクエディタコンポーネント502を使用してタスクを生成することができる。そのタスクにより、ユーザはフライトを予約すること、フライト状態をチェックすること、カスタマーサービスエージェントと話すこと、価格を問い合わせること、等を行うことができる。これらの項目の各々をタスクのリストに含めることができる。
さらに、タスクエディタコンポーネント502を使用してこれらのタスクの各々に対してパラメータを定義することができる。例として、フライトの予約は、目的地の都市、到着地の都市、時刻および乗客数のようなパラメータを含むことができる。示すように、この情報をデータストア106内のタスクプロパティ604内部に記憶することができる。同様に、タスク索引602もデータストア106内部に記憶することができる。この記憶した情報はクエリの領域および種類に関してシステム100に対する開始点を提供することができる。ユーザはその開始点を使用して、これらの領域にマップすることができる。
オーサリング/分析コンポーネント104に関して簡単に端から端まで検証する。この検証は本発明に観点を追加するために提供し、決して本発明の範囲を限定するようには意図していない。動作中は、オーサリング/分析コンポーネント104、より詳細にはタスクエディタコンポーネント502を使用して、任意の様式(例えば、音声、GUI(graphical user interface)テキスト)に関するタスクをオーサリングすることができる。
図8は、本発明のオーサリングの態様に従う例示的なGUIタスクウィザード800を示す。このタスクウィザードによりユーザは、パラメータ(例えば、フライトの予約)を有する資産であるタスクを作成することができる。例示的なスクリーンショット800に示すように、「createtable」タスクがオーサリングされている。この「 createtable」タスクにより、テーブルをワード処理アプリケーション内で作成することができる。この「createtable」タスクを、後続の図面を参照してより詳細に説明する。
それによると、パラメータは行数、列数、等であることができる。動作中は、タスクウィザード800は、パラメータを含むマッピングおよびタスクを作成するプロセスを通してユーザをガイドすることができる。基本的には本発明によりユーザはタスクを作成することができ、さらにユーザは、特定のタスクの作成に関する実際のユーザのフィードバックにシステムが応答する方法を定義することができる。
オーサリング/分析コンポーネント104を、タスクの作成方法および、一旦データが存在するとモデルに関してシステムが応答する方法の両方に結びつける。音声呼び出しフローに対して、異なるオーサリングパラダイムを使用することは理解されるであろう。換言すれば、オーサリングは「ABCエアラインにようこそ」のような音声ダイアログに関する。
本開示ではタスクとともに到着する入力クエリの処理に関するプロセス(およびそれに関連付けたコンポーネント)を説明したが、開発者がアプリケーション空間内部の「タスク」(およびスロットの関連性)をオーサリングすることでこのアーキテクチャ100内での開発を開始できることは理解されるべきである。それによると、アプリケーション空間はウェブ中心またはデスクトップ中心であることができる。なぜならば、1つの態様ではシステム100はXMLを介してタスクを表現できるからである。同様に、マニフェストからコードへマッピングする1つの方法はアプリケーションコード領域依存(例えば、ウェブサービスまたはCLR)である。
図8に示すように、タスクを「タスク」オーサリングツールを使用してオーサリングすることができる。換言すれば、オーサリング/分析コンポーネント104は基本的に、そのスロットおよび認識装置によるタスクスキーマの構築を支援するツールであることができる。従って、これらのタスクを、ウェブまたはCLRまたはCOMであろうとインタフェースを通して公開して、これらのタスクのネイティブコード環境との統合を可能とすることができる。
図9を参照する。例示的な電話帳オーサリングGUIを示してある。特に、システム100を設計して、「ようこそ」と提示することで促すことができる。次に、システムは、ユーザが接続したい人のファーストネームを促すことができる。認識できない場合、システムはユーザにその名前の綴りを言うよう促すことができる。なお有効でない場合、システムは電子メールエイリアスのような別の記述的基準を促すことができる。示すように、マッチするまで正確な情報にカスケードし続けるようにシステムをプログラムすることができる。
別の例では、音声呼び出しフローを使用することができる。音声アプリケーションのオーサリングの場合、ユーザは、タスクフレームワークを構築するが異なる「視覚的な」フロー形態を提示する別のツールを有することができる。異なる「視覚的な」 フロー形態は、ダイアログフロー、プロンプト設計、文法生成、ならびに混合および有向イニシアチブ(directed initiatives)のサポートに関することができる。
この音声フローの態様では、開発はなお最後のタスクで始まるが、スロットはダイアログ要素として提示される。初期プロンプト、有向スロットダイアログ、混合イニシアチブのサポート、カスケーディングおよび障害プロンプト設計に対する正確なUI設計があることができる。さらに、戻って結びつけるべき呼び出し設計フロー内のそれぞれの「状態」遷移をアプリケーションコード空間内のイベントハンドラに結びつける能力があることができる。この関係により、アプリケーションに、テキスト入力をアクティブに「管理」して合成を支援する能力を提供する。
さらに、ダイアログフローを管理すると、入力を取ってそれを音声フォーマット(例えば、SRGS)にマップするツール(例えば、オーサリング/分析コンポーネント104)が存在できる。さらに、ツールはそれぞれのダイアログ要素に関して関連する認識文法を生成することもできる。このツールの新規特徴の1つは、テキストトレーニングをこのダイアログフロー/プロンプト設計ツールに適用できることである。なぜならば、両方の空間はテキスト(または音声)上でトレーニングされるからである。
別の態様では、および図10に示すように、オーサリング/分析コンポーネント102はテキスト抽出コンポーネント1000を含むことができる。テキスト抽出コンポーネント102はウェブページを分析してその後ユーザ入力の観点からウェブサイトに関するタスクを生成することを促進することができる。動作中は、システムを使用してウェブサイトを指し示し、自動的にタスクを生成することができる。
例として、ユーザはABCトラベルのウェブサイトに行くことができ、テキスト抽出コンポーネント1000はABCトラベルをタスクとして識別することができる。このタスク内部で、パラメータ(例えば、入力ボックス)を自動的に検出および構成することができる。例えば、目的地の都市、到着地の都市、等を入力ボックスとして自動的に構成することができる。図10に示すように、例えばクローラを使用してこれらのパラメータを自動的に発見できることは理解されるであろう。
本質的に、検索クエリを入力し関連タスクを定義するユーザに対して、本新規発明は、ユーザがフォームに遭遇して、初期クエリにマッチする情報でそれを埋めるまで基本的にユーザに追随するシステム(例えば、ブラウザのプラグイン)を含む。結果に基づいて、オーサリング/分析コンポーネント102は自動的にそのサイトを「新規タスク」として提示することができる。
上述のように、および図10に示すように、バックグラウンドでは、インターネットクローラ1002を使用することができる。インターネットクローラ1002はサイトを巡回して、HTMLのタイトル、説明、キーワード、等のような様々な特徴を使用して「セマンティック情報」(フィールドおよびフィールド値)を抽出する。タスクをデータストア106内部に登録すると、オーサリング/分析コンポーネシト104は初期サンプルクエリを使用して「新規タスク」をトレーニングすることができる。
タスク抽出器1000の1つの目的は、所与のシードウェブサイトから自動的にタスクを抽出することである。ここでシステムはタスクの定義をフォーム可能タスク、例えば入力パラメータとしてフォームを有するタスクに限定することができる。タスク抽出コンポーネント1000の出力は、タスクストア(例えば、データストア106)に書き込んだタスクオブジェクト(.TSK)である。そのタスクオブジェクト(.TSK)をオーサリング/分析コンポーネント104(例えば、タスクウィザード)によりさらに利用することができる。
タスクオブジェクトはキーワードのフィールド及びタスクの説明を必要とするので、タスク抽出器1000内の最も重要かつ困難な部分の1つは、タスクに関するセマンティック情報、即ちエンドーユーザに対するこのタスクの機能性を発見することである可能性がある。もう1ステップ進めると、タスク抽出器コンポーネント1000は、ユーザが特定のタスクを実施したいときにそのユーザが入力するであろう説明を定義することができる。
それによると、このマッピングに多数の方法で対処することができる。1つの例では、システムはHTMLフォームおよびそのコンテキストから情報を発見することができる。別のアプローチでは、システムはクエリプロービング技術をデータストア106に適用することができる。事前に共通タスクを含むとして識別されるシードウェブサイトが与えられると、クローラ1002は最初にこのシードウェブサイト下のウェブページを巡回してそれらをデータベース(例えば、データストア106)に書き込むことができる。また、ウェブページに対するリンクおよびウェブページからのリンクはウェブページ上のタスクに対して幾つかのセマンティック情報を生じさせうるという理由で、クローラ1002は異なるウェブページ間のリンクまたはマッピングを別のテーブルに記録することができる。
フォームフィルタ1004およびスキーマプローブ1006はデータベース内のウェブページ情報を入力として使用することができる。フォームフィルタ1004の1つの機能はHTMLパーサ1008を介してHTMLの生のテキストからHTMLフォームを抽出することである。さらに可能ならば、同一のウェブサイト下のウェブページにしばしば当てはまるが、フォームフィルタは同一の機能性を有するかまたは同一のアクションを指し示すフォームをフィルタリングすべきである。この場合に対する単純な例は、Google「商標」検索フォームを有する多数のページがありうるが単一のタスクオブジェクトのみが我々のタスクストア内では望まれることである。しかしながら、この問題は異なるウェブサイトに存在する同一タスクに対してより困難となる恐れがある。
フォームフィルタ1004はフィルタリングしたフォームをHTMLパーサ1008に渡すことができ、次いでHTMLパーサ1008は、アクションURI、メソッド、入力タイプ、等を含むフォームの構造化情報を抽出することができる。さらに、HTMLフォーム内のINPUTに対するデフォルト値はスロットエンティティに関する情報を提供することができる。コンテキストセマンティック抽出器1010はHTMLタグ内のもの以外の情報を捕捉することができる。
システムはスロットレベルの情報およびタスクレベルの情報の両方を捕捉できることは理解されるであろう。例えば、INPUT要素の真正面に現れる単語は、それに対するスロットレベルの情報を取り込む可能性が高い。他方、ウェブページのTITLEもしくはフォームの直前または直後の単語はタスクレベルの情報を提供することができる。しかしながら、単に或る特定のコンテキスト位置内の情報を抽出するだけでは良い性能が得られない可能性がある。この場合、システムはウェブページ上の全てのデータをよりリッチなコンテキストとして使用することができ、同時に幾つかの不要なノイズをもたらす恐れがある。
同一のウェブページ上のデータに対する重み付け重要度モデルを導入してこのノイズフィルタリング/関連情報抽出問題に対処することができる。重要度はフォームからの距離、またはその単語のIDF、等に依存することができる。スキーマプローブ1006の1つの特徴は、スロットに対するエンティティに関してさらなる情報を提供することである。スロットに対する値がウェブページ内に存在しないため、単にウェブページを巡回するだけではそれぞれのスロットに対するエンティティを得ることはしばしば困難である。
シードウェブサイトからのログはこの問題の軽減を支援することができる。オプショナルスキーマプローブコンポーネント1006は自動的にクエリを生成することができ、スロットエンティティに関するフィードバックまたはさらなる説明を取得することができる。最後に、それぞれのフォームに対して、タスクオブジェクト生成器1012は全てのタスク情報をHTMLパーサ1008、コンテキストセマンティック抽出器1010、およびオプショナルスキーマプローブ1006から収集して、タスクストアまたはデータストア106に記憶可能であるタスクオブジェクトを作成することができる。
上述のように、ユーザ入力をVUI(voice user interface)またはGUI(graphical user interface)(NUI(natural user interface)と呼ばれる場合もある)を通して促進することができる。先ずVUIの態様を参照する。1つの態様では、ユーザはマイクロフォン(またはPDA電話、等)を通して対話して、アプリケーション空間内部のタスク(およびそれに関するスロットの関連性)のオーサリングの開始に影響を及ぼすことができる。動作中は、アプリケーションはロードしたモデルを有することができる。そのモデルに対して、呼び出しフローオーサリング時に判定されるように認識および評価する。入力は、認識オブジェクトインタフェースに関連付けた音声インタフェースオブジェクトを通してシステムに渡って流れることができる。
入力は次いで認識エンジンからの音声テキストラティスに変わることができる。音声テキストラティスから、最も可能性のあるラティスの解釈を選択する。次いでこれを以下で定義するNUI入力インタフェースに送り込むことができる。その対話モデルを次いでアプリケーション空間により定義し、タスク実行空間ならびにその呼び出し経路およびダイアログフロー実装により支配する。その実装および対話を、暗黙的および明示的の両方でフィードバック向けに具備することができる。
GUIオーサリングの例を参照する。図11および図12はテーブル作成の検証のスクリーンショットを示す。図11は本発明の態様に従うテーブル作成に関する明示的なフィードバックの例を示す。特に、検証を2掛ける3テーブルの作成から開始する。動作中は、ユーザは入力クエリとして「2掛ける3テーブルを作成」とタイプする。システムは語彙処理コンポーネント、例えば図4の402を使用することができ、それによりクエリ入力を分析してそのクエリをトークン「作成」「2」「掛ける」「3」および「テーブル」に分離することができる。
従って、システムは、名前付きエンティティメカニズムを使用して「2」および「3」が整数であることを認識することができる。次に、システムは統計的タスク検索コンポーネント、例えば図4の404を使用することで、利用可能な最良のタスクを発見することができる。例えば、および図11に示すように、システムはテーブルを戻すおよび作成すること、テーブル内容を作成すること、等を行うことができる。
ここで、ユーザは挿入テーブルダイアログを開く「テーブルを作成」リンクをクリックすることができる。示すように、システムはスロット補完結果(例えば、図4の統計的スロット補完406)に基づいてボックスを自動補完することができる。「OK」を押下することでユーザが受け入れると、特定のアクションは、ユーザが初期入力クエリに関して行ったことから成る意図パケットまたは「明示的なフィードバック」を送信し戻すことができる。この場合、入力クエリは「2掛ける3テーブルの作成」であり、列数は3で行数は2であった。
結果として、システムは、「2掛ける3」が行列にマップすることを学習することができる。ユーザ数を与えると、システムは、関連する確率の重みに基づいて機能するモデルをトレーニングすることができる。
図11の態様では、ユーザは、アプリケーション空間をナビゲートまたは命令するために必要な入力の提供を支援するGUI要素をタイプまたはそのGUI要素をクリックすることができる。任意の適切な装置を介して入力を達成できることは理解されるであろう。その入力には、マウスクリック(例えば、選択/非選択)またはキーボード入力(例えば、制御キーまたはテキスト入力)が含まれるがこれらに限らない。
代替的な態様において、および図12を参照して、示すようにタスクの結果をユーザのオプショナルスロット補完の代替手段に提示することができる。再度、これは、結果の見え方と提示する情報とを理解するためのアプリケーション次第である。示すように、2掛ける3が意味することの代替的な仮定を表示することができる。ユーザがオプションをクリックした後、自動的に埋められた行および列でGUI要素を開くことができる。同様に、「暗黙的なフィードバック」を、2列および3行よりも3列および2行に対するユーザの好みを識別する意図パケットの形で送信し戻すことができる。この暗黙的なフィードバックは、ユーザが「OK」を押下して自動スロット補完を受け入れる図11の明示的なフィードバックほど明確ではないことは理解されるであろう。寧ろ、図12の態様では、システムはGUIダイアログ要素のレンダリングと同時に暗黙的なフィードバックを送信する。換言すれば、ユーザが挿入テーブルダイアログボックス内の自動補完情報を検討する前に、フィードバックを送信する。
代替的な態様によると、システム100はAI(artificial intelligence)コンポーネントを使用することができる。AIは本発明に従って1つまたは複数の特徴の自動化を促進することができる。本発明は(例えば、タスク選択に関連して)、その様々な態様を実行するための様々なAIベースのスキーマを使用することができる。例えば、入力クエリに基づいて選択すべきタスクを判定するプロセスを、自動分類器システムおよびプロセスを介して促進することができる。
分類器は、入力属性ベクトルx=(x1,x2,x3,x4,xn)を、入力がクラスに属する信頼度にマップする関数、即ちf(x)=confidence(class)である。上記の分類は、確率および/または統計ベースの分析(例えば、分析ユーティリティおよびコストへのファクタリング)を使用して、ユーザが自動的な実施を望むアクションを予知または推論することができる。例えば、データベースシステムの場合、属性は、単語または語句または単語から導出した他のデータ固有属性(例えば、データベーステーブル、キー用語の存在)であることができ、クラスは関心のあるカテゴリまたはエリア(例えば、優先度レベル)であることができる。
SVM(support vector machine)は使用可能な分類器の例である。SVMは、可能な入力の空間内で超曲面を見つけることで動作し、超曲面はトリガ基準を非トリガ事象から分割することを試みる。直感的には、これにより、トレーニングデータに近いが同じではない試験データに対して分類は正確になる。他の有向および無向モデル分類アプローチには例えば、ナイーブベイズ、ベイジアンネットワーク、決定木、ニューラルネットワーク、ファジーロジックモデルが含まれ、異なる独立性パターンを提供する確率的分類モデルを使用することができる。本明細書で使用する分類は、優先度モデルの開発に利用される統計的回帰も含む。
本明細書から容易に理解されるように、本発明は、(例えば汎用トレーニングデータを介して)明示的にトレーニングした分類器および(例えば、ユーザの振る舞いの観察、外部情報の受信を介して)暗黙的にトレーニングした分類器を使用することができる。例えば、SVMを、分類器コンストラクタおよび特徴選択モジュール内部で語句を学習またはトレーニングすることを介して構成する。従って、分類器(複数)を使用して多数の機能を自動的に学習および実施することができる。その機能には、所定基準に従って特定のタスクにマップする時点、選択すべきタスクを判定することが含まれるがこれに限らない。
図13を参照する。開示した適応的セマンティックプラットフォームアーキテクチャを実行するよう動作するコンピュータのブロック図を示してある。本発明の様々な態様に追加のコンテキストを提供するため、図13および以下の議論は、本発明の様々な態様の実装に適したコンピューティング環境1300の簡潔で一般的な説明を提供することを意図している。本発明を1つまたは複数のコンピュータ上で実行可能なコンピュータ実行可能命令の一般的なコンテキストで上述したが、当業者は本発明を他のプログラムモジュールとの組み合わせで、および/またはハードウェアおよびソフトウェアの組み合わせとして実装することもできることを理解するであろう。
一般に、プログラムモジュールは、特定のタスクを実施するかまたは特定の抽象データ型を実装するルーチン、プログラム、コンポーネント、データ構造、等を含む。さらに、当業者は本発明の方法を他のコンピュータシステム構成で実践できることを理解するであろう。そのコンピュータシステム構成には、単一プロセッサまたはマルチプロセッサのコンピュータシステム、ミニコンピュータ、メインフレームコンピュータ、およびパーソナルコンピュータ、ハンドヘルドコンピューティング装置、マイクロプロセッサベースまたはプログラム可能家庭用電化製品、等が含まれ、それらの各々は1つまたは複数の関連装置に動作可能なように結合することができる。
本発明の態様の例を分散コンピューティング環境で実践することもできる。分散コンピューティング環境では或る特定のタスクを、通信ネットワークを通して接続したリモート処理装置により実施する。分散コンピューティング環境では、プログラムモジュールをローカルおよびリモートメモリ記憶装置の両方に配置することができる。
コンピュータは一般に様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータがアクセス可能である任意の利用可能な媒体であることができ、揮発性および不揮発性媒体、取り外し可能および取り外し不能媒体の両方を含む。限定ではなく例として、コンピュータ可読媒体はコンピュータ記憶媒体と通信媒体を備えることができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータのような情報を記憶する任意の方法または技術で実装した、揮発性および不揮発性、取り外し可能および取り外し不能媒体の両方を含む。コンピュータ記憶媒体には、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、DVD(digital versatile disk)もしくは他の光ディスク記憶、磁気カセット、磁気テープ、磁気ディスク記憶もしくは他の磁気記憶装置、または所望の情報の記憶に使用可能でコンピュータがアクセス可能である任意の他の媒体が含まれるがこれらに限らない。
通信媒体は一般にコンピュータ可読命令、データ構造、プログラムモジュールまたは他のデータを搬送波のような変調データ信号または他のトランスポート機構で具現化し、任意の情報配信媒体を含む。用語「変調データ信号」は、1つまたは複数の特性集合を含むかまたは信号内の情報をエンコードするように変化した信号を意味する。限定ではなく例として、通信媒体には有線ネットワークまたは直接有線接続のような有線媒体、および音響、RF、赤外線および他の無線媒体のような無線媒体が含まれる。上記の任意の組み合わせもコンピュータ可読媒体の範囲内に含まれるべきである。
図13を再度参照する。本発明の様々な態様を実装する例示的な環境1300はコンピュータ1302を含む。コンピュータ1302は処理ユニット1304、システムメモリ1306およびシステムバス1308を含む。システムバス1308はシステムコンポーネントを処理装置1304に結合する。そのシステムコンポーネントにはシステムメモリ1306が含まれるがこれに限らない。処理ユニット1304は任意の様々な商用的に利用可能なプロセッサであることができる。2相マイクロプロセッサおよび他のマルチプロセッサアーキテクチャを処理ユニット1304として使用することもできる。
システムバス1308は、(メモリコントローラを有するかまたは有さない)メモリバス、周辺バス、および任意の様々な商用的に利用可能なバスアーキテクチャを使用するローカルバスにさらに相互接続可能な数種のバス構造のうち任意のものであることができる。システムメモリ1306はROM(read−only memory)1310およびRAM(random access memory)1312を含む。BIOS(basic input/output system)をROM、EPROM、EEPROMのような不揮発性メモリ1310に記憶する。BIOSは、例えば起動中にコンピュータ1302内部の要素間の情報転送を支援する基本ルーチンを含む。RAM1312は、データをキャッシュするためにスタティックRAMのような高速RAMを含むこともできる。
コンピュータ1302はさらに、適切な筐体(示さず)内で外的に使用するように構成することもできる内部HDD(hard disk drive)1314(例えば、EIDE、SATA)、(例えば、取り外し可能ディスケット1318を読み書きするための)磁気FDD(floppy disk drive)1316、および(例えば、CD−ROMディスク1322を読むか、またはDVDのような他の大容量光媒体を読み書きするための)光ディスクドライブ1320を含む。ハードディスクドライブ1314、磁気ディスクドライブ1316および光ディスクドライブ1320をそれぞれ、ハードディスクドライブインタフェース1324、磁気ディスクドライブインタフェース1326および光ドライブインタフェース1328によりシステムバス1308に接続することができる。外部ドライブの実装に対するインタフェース1324は、USB(Universal Serial Bus)およびIEEE1394インタフェース技術のうち少なくとも1つまたは両方を含む。他の外部ドライブ接続技術は本発明の想定内にある。
ドライブおよびその関連コンピュータ可読媒体はデータ、データ構造、コンピュータ実行可能命令、等の不揮発性記憶を提供する。コンピュータ1302に対して、ドライブおよび媒体は任意のデータを適切なデジタルフォーマットで記憶する。上のコンピュータ可読媒体の説明はHDD、取り外し可能磁気ディスケット、およびCDまたはDVDのような取り外し可能光媒体を参照するが、ジップドライブ、磁気カセット、フラッシュメモリカード、カートリッジ、等のような、コンピュータが読み取り可能な他種の媒体を例示的な動作環境で使用してもよいこと、およびさらに、任意の上記媒体は本発明の方法を実施するためのコンピュータ実行可能命令を含んでもよいことは当業者により理解されるべきである。
多数のプログラムモジュールをドライブおよびRAM1312に記憶することができる。そのプログラムモジュールには、オペレーティングシステム1330、1つまたは複数のアプリケーションプログラム1332、他のプログラムモジュール1334およびプログラムデータ1336が含まれる。オペレーティングシステム、アプリケーション、モジュール、および/またはデータの全部または一部をRAM1312にキャッシュすることもできる。本発明を様々な商用的に利用可能なオペレーティングシステムまたはオペレーティングシステムの組み合わせで実装できることが分かる。
ユーザは命令および情報を1つまたは複数の有線/無線入力装置、例えばキーボード1338および、マウス1340のようなポインティングデバイスを通してコンピュータ1302に入力することができる。他の入力装置(示さず)はマイクロフォン、IRリモートコントロール、ジョイスティック、ゲームパッド、スタイラスペン、タッチスクリーン、等を含むことができる。これらおよび他の入力装置を、システムバス1308に結合した入力装置インタフェース1342を通して処理ユニット1304に接続することがよくあるが、パラレルポート、IEEE1394シリアルポート、ゲームポート、USBポート、IRインタフェース、等のような他のインタフェースにより接続することができる。
モニタ1344または他種の表示装置も、ビデオアダプタ1346のようなインタフェースを介してシステムバス1308に接続する。モニタ1344に加えて、コンビュ一夕は一般に、スピーカ、プリンタ、等のような他の周辺出力装置(示さず)を含む。
コンピュータ1302は、リモートコンピュータ(複数)1348のような1つまたは複数のリモートコンピュータに対する有線および/または無線通信を介した論理接続を使用してネットワーク環境で動作することができる。リモートコンピュータ(複数)1348はワークステーション、サーバコンピュータ、ルータ、パーソナルコンピュータ、ポータブルコンピュータ、マイクロプロセッサベースの娯楽機器、ピアデバイスまたは他の共通ネットワークノードであることができ、一般にコンピュータ1302に関して説明した要素の多数または全部を含むが、簡潔さのため、メモリ/記憶装置1350のみを示してある。示した論理接続はLAN(local area network)1352および/または例えばWAN(wide area network)1354のようなより大規模なネットワークに対する有線/無線接続性を含む。上記LANおよびWANネットワーキング環境は職場および企業で一般的であり、イントラネットのような企業規模のコンピュータネットワークを促進する。それらの全てをグローバル通信ネットワーク、例えばインターネットに接続することができる。
LANネットワーキング環境で使用するとき、コンピュータ1302を有線および/または無線通信ネットワークインタフェースまたはアダプタ1356を通してローカルネットワーク1352に接続する。アダプタ1356はLAN1352に対する有線または無線通信を促進することができる。LAN1352は、無線アダプタ1356と通信するための公開無線アクセスポイントも含むことができる。
WANネットワーキング環境で使用するとき、コンピュータ1302はモデム1358を含ことができ、またはWAN1354上の通信サーバに接続され、またはインターネットの手段のような、WAN1354上で通信を確立するための他の手段を有する。モデム1358は、内部または外部にあって有線または無線装置であることができ、シリアルポートインタフェース1342を介してシステムバス1308に接続される。ネットワーク環境では、コンピュータ1302に関して示したプログラムモジュール、またはその一部をリモートメモリ/記憶装置1350に記憶することができる。示したネットワーク接続は例であって、コンピュータ間の通信リンクを確立する他の手段を使用できることは理解されるであろう。
コンピュータ1302は、無線通信内で動作するように公開した任意の無線装置またはエンティティ、例えば、プリンタ、スキャナ、デスクトップおよび/またはポータブルコンピュータ、ポータブルデータアシスタント、通信衛星、無線で検出可能なタグに関連付けた任意の装置または位置(例えば、キオスク、新聞売店、休憩室)、および電話と通信するように動作する。これは少なくともWi−FiおよびBluetooth「商標」無線技術を含む。従って、通信は、従来のネットワークまたは単に少なくとも2つの装置間のアドホック通信のように所定の構造であることができる。
Wi−Fi、またはWireless Fidelityにより、家のソファ、ホテルの部屋のベッド、または職場の会議室から配線なしにインターネットに接続することができる。Wi−Fiは、上記装置、例えばコンピュータが屋内および屋外、基地局の範囲内の任意の場所でデータを送受信できる携帯電話で使用されるものと同様の無線技術である。Wi−FiネットワークはIEEE 802.11(a,b,g,等)と呼ばれる無線技術を使用して、安全で信頼性のある高速な無線接続性を提供する。Wi−Fiネットワークを使用してコンピュータを互いに、インターネットに、および(IEEE802.3またはイーサネット(登録商標)を使用する)有線ネットワークに接続することができる。Wi−Fiネットワークはたとえば、無認可の2.4および5GHz無線帯域内で、11Mbps(802.11a)または54Mbps(802.11b)データ速度で、または両方の帯域を含む(デュアルバンドの)製品と動作し、その結果、ネットワークは多数の職場で使用されるベーシック10BaseT有線イーサネット(登録商標)ネットワークと同様な実世界の性能を提供することができる。
図14を参照する。本発明に従う例示的なコンピューティング環境1400の略ブロック図を示してある。システム1400は1つまたは複数のクライアント(複数)1402を含む。クライアント(複数)1402はハードウェアおよび/またはソフトウェア(例えば、スレッド、プロセス、コンピューティング装置)であることができる。クライアント(複数)1402は例えば、本発明を使用することによりクッキー(複数)および/または関連コンテキスト情報を格納することができる。
システム1400は1つまたは複数のサーバ(複数)1404も含む。サーバ(複数)1404もハードウェアおよび/またはソフトウェア(例えば、スレッド、プロセス、コンピューティング装置)であることができる。サーバ(複数)1404は例えば、本発明を使用することにより変換を実施するためのスレッドを格納することができる。クライアント1402とサーバ1404との間の可能な通信の1つは、複数のコンピュータプロセス間で送信されるよう適応させたデータパケットの形であることができる。データパケットは例えば、クッキーおよび/または関連コンテキスト情報を含むことができる。システム1400は、クライアント(複数)1402とサーバ(複数)1404との間の通信を促進するために使用可能な通信フレームワーク1406(例えば、インターネットのようなグローバル通信ネットワーク)を含む。
通信を有線(光ファイバを含む)および/または無線技術を介して促進することができる。クライアント(複数)1402は、1つまたは複数のクライアントデータストア(複数)1408に動作するよう接続する。クライアントデータストア(複数)1408を使用して、クライアント(複数)1402にローカルな情報(例えば、クッキー(複数)および/または関連コンテキスト情報)を記憶することができる。同様に、サーバ(複数)1404は、1つまたは複数のサーバデータストア(複数)1410に動作するように接続する。サーバデータストア(複数)1410を使用して、サーバ(複数)1404にローカルな情報を記憶することができる。
上述したことは本発明の例を含む。勿論、本発明を説明する目的で構成要素または方法の全ての考えうる組合せを説明することは不可能であるが、当業者は、本発明の多数のさらなる組み合わせおよび置換が可能であることを認識することができる。従って、本発明は、添付請求項の精神および範囲内にある全ての上記変更、修正および変形を包含するよう意図している。さらに、用語「含む」を詳細な説明または請求項のいずれかで使用する限り、上記用語は、請求項で移行語として使用するときに「備える」が解釈されるように、用語「備える」と同様に包括的であると意図している。
本発明の態様に従って意図からアクションへの対話を促進するシステムを示す図である。 本発明の態様に従って、ユーザ入力に基づくタスクの判定を促進する手続きの例示的なフロー図である。 本発明の態様に従ってタスクのオーサリングを促進する手続きの例示的なフロー図である。 本発明の態様に従う推論コンポーネントのブロック図である。 本発明の態様に従うオーサリング/分析コンポーネントのブロック図である。 本発明の態様に従って資産情報の維持を促進するデータストアのブロック図である。 本発明の態様に従う適応的セマンティックプラットフォームアーキテクチャの代替的なブロック図である。 本発明の態様に従ってタスクのオーサリングを促進する例示的なGUI(graphical user interface)タスクウィザードを示す図である。 本発明の態様に従う例示的な電話帳オーサリングGUIを示す図である。 本発明の態様に従ってウェブページ関連タスクの自動オーサリングを促進する例示的なテキスト抽出コンポーネントを示す図である。 本発明の態様に従って明示的なフィードバックを生成する例示的なGUI表現を示す図である。 本発明の態様に従って暗黙的なフィードバックを生成する例示的なGUI表現を示す図である。 開示したアーキテクチャを実行するよう動作するコンピュータのブロック図である。 本発明に従う例示的なコンピューティング環境の略ブロック図である。

Claims (20)

  1. 人間と機械との間の直感的な対話を促進するシステムであって、
    複数の資産の生成を促進するオーサリング/分析コンポーネントであって、前記の複数の資産のそれぞれは入力基準にマップされる複数のパラメータを有するオーサリング/分析コンポーネントと、
    前記入力基準を統計的に分析して、少なくとも部分的に前記入力基準に基づいて資産をレンダリングする類推コンポーネントと
    を備えることを特徴とするシステム。
  2. 前記オーサリング/分析コンポーネントは、少なくとも部分的に前記入力および前記のレンダリングされた資産に基づいてフィードバックを収集することを特徴とする請求項1に記載のシステム。
  3. 前記オーサリング/分析コンポーネントは、前記フィードバックから学習して、少なくとも部分的に前記フィードバックに基づいてユーザの意図を推論することを特徴とする請求項2に記載のシステム。
  4. 前記類推コンポーネントは、少なくとも部分的に前記ユーザの意図の分析に基づいて前記資産を選択することを特徴とする請求項3に記載のシステム。
  5. 前記資産はドキュメントおよびアクションのうち少なくとも1つであることを特徴とする請求項4に記載のシステム。
  6. 前記オーサリング/分析コンポーネントは、
    前記資産の生成、および前記入力基準の分析において前記推論コンポーネントを支援する複数の注釈の確立を可能とするタスクエディタコンポーネントと、
    フィードバックデータを取り込み、学習モデルをトレーニングし、前記資産の選択において前記推論コンポーネントを支援する索引を生成するトレーニングコンポーネントと
    を備えることを特徴とする請求項1に記載のシステム。
  7. 前記タスクエディタは、前記資産をウェブページの分析に基づいて自動的に生成するテキスト抽出器を含むことを特徴とする請求項6に記載のシステム。
  8. 前記テキスト抽出器は、前記ウェブページを分析して前記ウェブページに関連付けた前記資産の自動生成を促進するセマンティック情報を抽出するクローラを含むことを特徴とする請求項7に記載のシステム。
  9. 前記索引はタスク索引およびタスクプロパティのうち少なくとも1つを含むことを特徴とする請求項6に記載のシステム。
  10. 前記学習モデルはクエリモデルおよびスロットモデルのうち少なくとも1つを含むことを特徴とする請求項7に記載のシステム。
  11. ユーザの意図を推論し少なくとも部分的に前記ユーザの意図に基づいて前記資産を選択する統計ベースの分析を使用するAI(artificial intelligence)コンポーネントをさらに備えることを特徴とする請求項1に記載のシステム。
  12. ユーザ入力に反応するコンピュータ実装方法であって、
    資産をオーサリングするステップと、
    前記ユーザ入力に関してユーザの意図を判定するステップと、
    少なくとも部分的に前記ユーザの意図に基づいて、前記資産を前記ユーザ入力にマップするステップと、
    前記資産を実行するステップと、
    フィードバックを取得するステップと、
    前記フィードバックから学習するステップと
    を備えることを特徴とするコンピュータ実装方法。
  13. 前記資産をレンダリングするステップをさらに備えることを特徴とする請求項12に記載のコンピュータ実装方法。
  14. 前記資産をオーサリングするステップは、ドキュメントおよびアクションのうち少なくとも1つを生成するステップを備えることを特徴とする請求項13に記載のコンピュータ実装方法。
  15. 前記資産をオーサリングするステップは、タスクフレームワークを生成するステップを備えることを特徴とする請求項12に記載のコンピュータ実装方法。
  16. 前記資産をオーサリングするステップは、複数のパラメータを前記タスクフレームワークに適用するステップをさらに備えることを特徴とする請求項15に記載のコンピュータ実装方法。
  17. 前記資産に対して索引を生成するステップであって、前記索引は前記資産を前記ユーザ入力の特性にマップするステップをさらに備えることを特徴とする請求項15に記載のコンピュータ実装方法。
  18. 統計ベースの対話を促進するコンピュータ実行可能システムであって、
    複数の資産をオーサリングする手段と、
    ユーザ入力に基づいてユーザの意図を判定する手段と、
    前記複数の資産のサブセットを、少なくとも部分的に前記ユーザの意図に基づいて前記ユーザ入力にマップする手段と
    を備えることを特徴とするコンピュータ実行可能なシステム。
  19. 少なくとも部分的に前記複数の資産のサブセットに基づいてフィードバックをコンパイルする手段をさらに備えることを特徴とする請求項18に記載のコンピュータ実行可能なシステム。
  20. 前記フィードバックから知識を生成する手段と、
    前記知識を適用して前記複数の資産のサブセットを異なるユーザ入力にマップする手段と
    をさらに備えることを特徴とする請求項19に記載のコンピュータ実行可能なシステム。
JP2008557284A 2006-02-28 2007-02-13 適応的セマンティックプラットフォームアーキテクチャ Withdrawn JP2009528621A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/363,747 US20070203869A1 (en) 2006-02-28 2006-02-28 Adaptive semantic platform architecture
PCT/US2007/004132 WO2007100519A1 (en) 2006-02-28 2007-02-13 Adaptive semantic platform architecture

Publications (1)

Publication Number Publication Date
JP2009528621A true JP2009528621A (ja) 2009-08-06

Family

ID=38445233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008557284A Withdrawn JP2009528621A (ja) 2006-02-28 2007-02-13 適応的セマンティックプラットフォームアーキテクチャ

Country Status (6)

Country Link
US (1) US20070203869A1 (ja)
EP (1) EP1994476A1 (ja)
JP (1) JP2009528621A (ja)
KR (1) KR20080107383A (ja)
CN (1) CN101395600A (ja)
WO (1) WO2007100519A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160124766A (ko) * 2014-10-29 2016-10-28 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 대화 처리 방법, 대화 관리 시스템 및 컴퓨터 기기

Families Citing this family (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7424472B2 (en) * 2005-05-27 2008-09-09 Microsoft Corporation Search query dominant location detection
US7424488B2 (en) * 2006-06-27 2008-09-09 International Business Machines Corporation Context-aware, adaptive approach to information selection for interactive information analysis
WO2009051877A1 (en) * 2007-07-30 2009-04-23 Air Routing International, L.P. Air travel coordination, communication and documentation system, method and computer program
US8046353B2 (en) 2007-11-02 2011-10-25 Citrix Online Llc Method and apparatus for searching a hierarchical database and an unstructured database with a single search query
US7877369B2 (en) * 2007-11-02 2011-01-25 Paglo Labs, Inc. Hosted searching of private local area network information
US7877368B2 (en) * 2007-11-02 2011-01-25 Paglo Labs, Inc. Hosted searching of private local area network information with support for add-on applications
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
US8543404B2 (en) * 2008-04-07 2013-09-24 Nuance Communications, Inc. Proactive completion of input fields for automated voice enablement of a web page
US8086557B2 (en) * 2008-04-22 2011-12-27 Xerox Corporation Method and system for retrieving statements of information sources and associating a factuality assessment to the statements
US8644488B2 (en) 2008-10-27 2014-02-04 Nuance Communications, Inc. System and method for automatically generating adaptive interaction logs from customer interaction text
US8341175B2 (en) 2009-09-16 2012-12-25 Microsoft Corporation Automatically finding contextually related items of a task
CN102546977A (zh) * 2010-12-16 2012-07-04 上海博泰悦臻电子设备制造有限公司 呼叫信息的处理方法及其处理系统
US20120290509A1 (en) * 2011-05-13 2012-11-15 Microsoft Corporation Training Statistical Dialog Managers in Spoken Dialog Systems With Web Data
US9201859B2 (en) * 2011-12-15 2015-12-01 Microsoft Technology Licensing, Llc Suggesting intent frame(s) for user request(s)
US9031929B1 (en) * 2012-01-05 2015-05-12 Google Inc. Site quality score
WO2013136229A1 (en) * 2012-03-16 2013-09-19 Koninklijke Philips N.V. Document creation system and semantic macro editor
CN103455312B (zh) * 2012-05-31 2017-02-08 中国移动通信集团公司 一种终端菜单的生成方法、装置及系统
WO2014054052A2 (en) * 2012-10-01 2014-04-10 Parag Kulkarni Context based co-operative learning system and method for representing thematic relationships
US9298339B2 (en) 2013-04-18 2016-03-29 Microsoft Technology Licensing, Llc User interface feedback elements
US9519859B2 (en) 2013-09-06 2016-12-13 Microsoft Technology Licensing, Llc Deep structured semantic model produced using click-through data
US9558176B2 (en) 2013-12-06 2017-01-31 Microsoft Technology Licensing, Llc Discriminating between natural language and keyword language items
US9477654B2 (en) 2014-04-01 2016-10-25 Microsoft Corporation Convolutional latent semantic models and their applications
US9535960B2 (en) 2014-04-14 2017-01-03 Microsoft Corporation Context-sensitive search using a deep learning model
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
CN105225103B (zh) * 2014-07-02 2020-05-22 中国银联股份有限公司 继续支付系统和方法
US10089580B2 (en) 2014-08-11 2018-10-02 Microsoft Technology Licensing, Llc Generating and using a knowledge-enhanced model
GB2529637B (en) * 2014-08-26 2017-07-05 Ge Aviat Systems Ltd System for building and deploying inference model
US9466297B2 (en) * 2014-12-09 2016-10-11 Microsoft Technology Licensing, Llc Communication system
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10338959B2 (en) * 2015-07-13 2019-07-02 Microsoft Technology Licensing, Llc Task state tracking in systems and services
US10685331B2 (en) * 2015-12-08 2020-06-16 TCL Research America Inc. Personalized FUNC sequence scheduling method and system
US10635281B2 (en) 2016-02-12 2020-04-28 Microsoft Technology Licensing, Llc Natural language task completion platform authoring for third party experiences
US10796235B2 (en) 2016-03-25 2020-10-06 Uptake Technologies, Inc. Computer systems and methods for providing a visualization of asset event and signal data
US10909450B2 (en) 2016-03-29 2021-02-02 Microsoft Technology Licensing, Llc Multiple-action computational model training and operation
US10949748B2 (en) * 2016-05-13 2021-03-16 Microsoft Technology Licensing, Llc Deep learning of bots through examples and experience
US20180005629A1 (en) * 2016-06-30 2018-01-04 Microsoft Technology Licensing, Llc Policy authoring for task state tracking during dialogue
KR102589637B1 (ko) 2016-08-16 2023-10-16 삼성전자주식회사 기계 번역 방법 및 장치
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10044862B1 (en) * 2017-04-28 2018-08-07 International Business Machines Corporation Dynamic topic guidance in the context of multi-round conversation
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770428A1 (en) 2017-05-12 2019-02-18 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US11436469B2 (en) 2017-07-31 2022-09-06 Microsoft Technology Licensing, Llc Knowledge graph for conversational semantic search
US10490185B2 (en) 2017-09-27 2019-11-26 Wipro Limited Method and system for providing dynamic conversation between application and user
KR101932264B1 (ko) * 2018-03-02 2018-12-26 주식회사 머니브레인 복수 개의 같은 유형의 엔티티 정보의 분석에 기초한 인텐트 결정을 제공하는 방법 및 대화형 ai 에이전트 시스템, 및 컴퓨터 판독가능 기록 매체
US10929456B2 (en) * 2018-05-21 2021-02-23 Microsoft Technology Licensing, Llc Indexing refined output of artificial intelligence models
US11429654B2 (en) * 2018-05-21 2022-08-30 Microsoft Technology Licensing, Llc Exercising artificial intelligence by refining model output
US10896620B2 (en) * 2018-06-07 2021-01-19 Microsoft Technology Licensing, Llc Programmable interface for automated learning refreshers
WO2020051192A1 (en) * 2018-09-06 2020-03-12 Google Llc Dialogue systems
CN109977998B (zh) * 2019-02-14 2022-05-03 网易(杭州)网络有限公司 信息处理方法及装置、存储介质和电子装置
US11269599B2 (en) * 2019-07-23 2022-03-08 Cdw Llc Visual programming methods and systems for intent dispatch
US11289075B1 (en) * 2019-12-13 2022-03-29 Amazon Technologies, Inc. Routing of natural language inputs to speech processing applications
US20220343901A1 (en) * 2021-04-23 2022-10-27 Kore.Ai, Inc. Systems and methods of implementing platforms for bot interfaces within an intelligent development platform
US11409800B1 (en) 2021-07-23 2022-08-09 Bank Of America Corporation Generating search queries for database searching
US20240086647A1 (en) * 2022-09-08 2024-03-14 Ilango Ramanujam Artificial intelligence-enabled system and method for authoring a scientific document

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5208816A (en) * 1989-08-18 1993-05-04 At&T Bell Laboratories Generalized viterbi decoding algorithms
US5434777A (en) * 1992-05-27 1995-07-18 Apple Computer, Inc. Method and apparatus for processing natural language
US5799268A (en) * 1994-09-28 1998-08-25 Apple Computer, Inc. Method for extracting knowledge from online documentation and creating a glossary, index, help database or the like
US5748974A (en) * 1994-12-13 1998-05-05 International Business Machines Corporation Multimodal natural language interface for cross-application tasks
US6278996B1 (en) * 1997-03-31 2001-08-21 Brightware, Inc. System and method for message process and response
US5933822A (en) * 1997-07-22 1999-08-03 Microsoft Corporation Apparatus and methods for an information retrieval system that employs natural language processing of search results to improve overall precision
US5974412A (en) * 1997-09-24 1999-10-26 Sapient Health Network Intelligent query system for automatically indexing information in a database and automatically categorizing users
US6128624A (en) * 1997-11-12 2000-10-03 Ncr Corporation Collection and integration of internet and electronic commerce data in a database during web browsing
US6118939A (en) * 1998-01-22 2000-09-12 International Business Machines Corporation Method and system for a replaceable application interface at the user task level
US6751606B1 (en) * 1998-12-23 2004-06-15 Microsoft Corporation System for enhancing a query interface
US6651217B1 (en) * 1999-09-01 2003-11-18 Microsoft Corporation System and method for populating forms with previously used data values
US6904402B1 (en) * 1999-11-05 2005-06-07 Microsoft Corporation System and iterative method for lexicon, segmentation and language model joint optimization
US9076448B2 (en) * 1999-11-12 2015-07-07 Nuance Communications, Inc. Distributed real time speech recognition system
US7392185B2 (en) * 1999-11-12 2008-06-24 Phoenix Solutions, Inc. Speech based learning/training system using semantic decoding
US20040006473A1 (en) * 2002-07-02 2004-01-08 Sbc Technology Resources, Inc. Method and system for automated categorization of statements
US6502102B1 (en) * 2000-03-27 2002-12-31 Accenture Llp System, method and article of manufacture for a table-driven automated scripting architecture
US6907546B1 (en) * 2000-03-27 2005-06-14 Accenture Llp Language-driven interface for an automated testing framework
US6687696B2 (en) * 2000-07-26 2004-02-03 Recommind Inc. System and method for personalized search, information filtering, and for generating recommendations utilizing statistical latent class models
US6675159B1 (en) * 2000-07-27 2004-01-06 Science Applic Int Corp Concept-based search and retrieval system
KR100426382B1 (ko) * 2000-08-23 2004-04-08 학교법인 김포대학 엔트로피 정보와 베이지안 에스오엠을 이용한 문서군집기반의 순위조정 방법
US7277732B2 (en) * 2000-10-13 2007-10-02 Microsoft Corporation Language input system for mobile devices
KR100446289B1 (ko) * 2000-10-13 2004-09-01 삼성전자주식회사 역 히든 마르코브 모델(ihmm)을 이용한 정보 탐색방법및 장치
US6690390B1 (en) * 2000-10-24 2004-02-10 National Instruments Corporation Interactive on-line help for completing a task
US6678694B1 (en) * 2000-11-08 2004-01-13 Frank Meik Indexed, extensible, interactive document retrieval system
GB0027685D0 (en) * 2000-11-13 2000-12-27 Canon Kk Filter based authoring tool
US7340446B2 (en) * 2000-12-11 2008-03-04 Microsoft Corporation Method and system for query-based management of multiple network resources
US6643639B2 (en) * 2001-02-07 2003-11-04 International Business Machines Corporation Customer self service subsystem for adaptive indexing of resource solutions and resource lookup
US20040030710A1 (en) * 2001-05-21 2004-02-12 Thomas Shadle Rules-based task browser for engineering systems
US20030084035A1 (en) * 2001-07-23 2003-05-01 Emerick Charles L. Integrated search and information discovery system
US20030028792A1 (en) * 2001-08-02 2003-02-06 International Business Machines Corportion System, method, and computer program product for automatically inputting user data into internet based electronic forms
US6820075B2 (en) * 2001-08-13 2004-11-16 Xerox Corporation Document-centric system with auto-completion
US7165256B2 (en) * 2001-09-11 2007-01-16 Sun Microsystems, Inc. Task grouping in a distributed processing framework system and methods for implementing the same
US7185271B2 (en) * 2002-08-20 2007-02-27 Hewlett-Packard Development Company, L.P. Methods and systems for implementing auto-complete in a web page
US7266559B2 (en) * 2002-12-05 2007-09-04 Microsoft Corporation Method and apparatus for adapting a search classifier based on user queries
US7447667B2 (en) * 2002-12-11 2008-11-04 International Business Machines Corporation Method and knowledge structures for reasoning about concepts, relations, and rules
US20040130572A1 (en) * 2003-01-07 2004-07-08 Aravind Bala Active content wizard: execution of tasks and structured content
US6947933B2 (en) * 2003-01-23 2005-09-20 Verdasys, Inc. Identifying similarities within large collections of unstructured data
US7426496B2 (en) * 2004-03-03 2008-09-16 Microsoft Corporation Assisted form filling
US7373633B2 (en) * 2003-06-03 2008-05-13 Sap Ag Analytical application framework
US20050028133A1 (en) * 2003-08-02 2005-02-03 Viswanath Ananth System and method for rapid design, prototyping, and implementation of distributed scalable architecture for task control and automation
US8645420B2 (en) * 2003-08-05 2014-02-04 Accenture Global Services Limited Methodology framework and delivery vehicle
US7475010B2 (en) * 2003-09-03 2009-01-06 Lingospot, Inc. Adaptive and scalable method for resolving natural language ambiguities
US7349845B2 (en) * 2003-09-03 2008-03-25 International Business Machines Corporation Method and apparatus for dynamic modification of command weights in a natural language understanding system
US20050065995A1 (en) * 2003-09-23 2005-03-24 Microsoft Corporation Content and task-execution services provided through dialog-based interfaces
US7386440B2 (en) * 2003-10-01 2008-06-10 International Business Machines Corporation Method, system, and apparatus for natural language mixed-initiative dialogue processing
US7593845B2 (en) * 2003-10-06 2009-09-22 Microsoflt Corporation Method and apparatus for identifying semantic structures from text
US7231375B2 (en) * 2003-10-10 2007-06-12 Microsoft Corporation Computer aided query to task mapping
US8104043B2 (en) * 2003-11-24 2012-01-24 Microsoft Corporation System and method for dynamic cooperative distributed execution of computer tasks without a centralized controller
US20050132380A1 (en) * 2003-12-11 2005-06-16 International Business Machines Corporation Method for hiding latency in a task-based library framework for a multiprocessor environment
US7412388B2 (en) * 2003-12-12 2008-08-12 International Business Machines Corporation Language-enhanced programming tools
US7660779B2 (en) * 2004-05-12 2010-02-09 Microsoft Corporation Intelligent autofill
US20060107219A1 (en) * 2004-05-26 2006-05-18 Motorola, Inc. Method to enhance user interface and target applications based on context awareness
US8839090B2 (en) * 2004-09-16 2014-09-16 International Business Machines Corporation System and method to capture and manage input values for automatic form fill
US20080065617A1 (en) * 2005-08-18 2008-03-13 Yahoo! Inc. Search entry system with query log autocomplete

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160124766A (ko) * 2014-10-29 2016-10-28 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 대화 처리 방법, 대화 관리 시스템 및 컴퓨터 기기
JP2017517776A (ja) * 2014-10-29 2017-06-29 バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド 対話処理方法、対話管理システム、およびコンピュータ機器
KR101895251B1 (ko) * 2014-10-29 2018-09-05 바이두 온라인 네트웍 테크놀러지 (베이징) 캄파니 리미티드 대화 처리 방법, 대화 관리 시스템 및 컴퓨터 기기

Also Published As

Publication number Publication date
WO2007100519A1 (en) 2007-09-07
EP1994476A1 (en) 2008-11-26
CN101395600A (zh) 2009-03-25
US20070203869A1 (en) 2007-08-30
KR20080107383A (ko) 2008-12-10

Similar Documents

Publication Publication Date Title
JP2009528621A (ja) 適応的セマンティックプラットフォームアーキテクチャ
US11087094B2 (en) System and method for generation of conversation graphs
EP3491533B1 (en) Providing command bundle suggestions for an automated assistant
US10521463B2 (en) Answering questions via a persona-based natural language processing (NLP) system
US8346563B1 (en) System and methods for delivering advanced natural language interaction applications
US8892419B2 (en) System and methods for semiautomatic generation and tuning of natural language interaction applications
US20170337261A1 (en) Decision Making and Planning/Prediction System for Human Intention Resolution
EP2956931B1 (en) Facilitating development of a spoken natural language interface
US7627466B2 (en) Natural language interface for driving adaptive scenarios
KR101343281B1 (ko) 의도-동작 매핑을 용이하게 해주는 시스템, 자연어 입력에기초하여 동작을 추론하는 방법 및 자연어 입력을 실행되는동작으로 변환하는 시스템
CN112955894A (zh) 客户关系管理中的语义推断
KR101751113B1 (ko) 기억 능력을 이용하는 다중 사용자 기반의 대화 관리 방법 및 이를 수행하는 장치
US20150286943A1 (en) Decision Making and Planning/Prediction System for Human Intention Resolution
US9582498B2 (en) Actions on digital document elements from voice
CN115803734A (zh) 使用动作解释的自然语言丰富
US11314811B1 (en) Systems and methods for semantic search engine analysis
Klein et al. Evaluating multi-modal input modes in a wizard-of-oz study for the domain of web search
Kath et al. Lost in Dialogue: A Review and Categorisation of Current Dialogue System Approaches and Technical Solutions
Laitila The Development of a Content Management System for Small-Scale Voice Controlled Websites
Härkönen Computationally clarifying user intent for improved question answering
KR20230014680A (ko) 서드파티 디지털 어시스턴트 액션을 위한 비트 벡터 기반 콘텐츠 매칭
da Silva Gomes A retail conversational interface to naturally capture unstructured information triggering high value analytical and operational business actions
Wootton VoiceBrowse: The Dynamic Generation Of Spoken Dialogue from Online Content
Skadiņa et al. StairwAI Chatbot Prototype
Kuzmin Kentico Voice Interface (KEVIN)

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20100511