(57)【要約】  拡張された会話理解アーキテクチャが提供され得る。ユーザから自然言語の語句を受け取ると、この語句は、検索語句に変換可能であり、さらにこの検索語句に対して検索アクションが行われ得る。
2014512046.tif 000002
【特許請求の範囲】
【請求項１】
拡張された会話理解アーキテクチャを実現するための方法であって、
ユーザから自然言語の語句を受け取るステップと、
前記自然言語の語句を検索語句に変換するステップと、
前記検索語句に応じて検索アクションを行うステップとを含み、前記検索語句に応じて前記検索アクションを行うステップは、前記自然言語の語句をオントロジの少なくとも１つのノードにマッピングするステップを含む、
方法。
【請求項２】
前記検索語句は、少なくとも１つの意味概念を含む請求項１に記載の方法。
【請求項３】
前記少なくとも１つのコンテキスト上の意味概念は、前記自然言語の語句に含まれない語を含む請求項２に記載の方法。
【請求項４】
前記検索アクションに応じて複数の検索結果を受け取るステップと、
前記複数の検索結果を前記ユーザに提供するステップと、
前記複数の検索結果を複数のユーザに提供するステップとをさらに含み、前記自然言語の語句は、前記複数のユーザの間の会話から導き出される、
請求項１に記載の方法。
【請求項５】
複数のアプリケーションプログラミングインターフェース（ＡＰＩ）を解析するステップであって、前記複数のＡＰＩのそれぞれは、ウェブサイト検索機能に関連する、ステップと、
前記複数のＡＰＩのそれぞれに関して少なくとも１つの要求されるパラメータを識別するステップと
をさらに含む請求項１に記載の方法。
【請求項６】
実行されると、拡張された会話理解アーキテクチャを実現するための方法を行う命令のセットを格納するコンピュータ可読媒体であって、命令の前記セットによって実行される前記方法は、
ユーザから自然言語の語句を受け取るステップと、
前記自然言語の語句に関連するコンテキスト状態を作成するステップと、
前記自然言語の語句を実行可能なアクションに変換するステップと、
識別されたコンテキストに応じて前記実行可能なアクションに関連するドメインを識別するステップと、
前記識別されたドメイン内で前記実行可能なアクションを行うステップとを含む、
コンピュータ可読媒体。
【請求項７】
少なくとも１つの示唆される次のアクションを前記ユーザに提供することと、
前記ユーザから第２の自然言語の語句を受け取ることと、
前記第２の自然言語の語句が前記少なくとも１つの示唆される次のアクションに関連するかどうかを判定することと、
前記第２の自然言語の語句が前記少なくとも１つの示唆される次のアクションに関連すると判定したことに応答して、前記少なくとも１つの示唆される次のアクションを行うことと
をさらに含む請求項６に記載のコンピュータ可読媒体。
【請求項８】
前記第２の自然言語の語句が前記少なくとも１つの示唆される次のアクションに関連しないと判定したことに応答して、少なくとも１つの第２の示唆される次のアクションを前記ユーザに提供すること
をさらに含む請求項７に記載のコンピュータ可読媒体。
【請求項９】
前記第２の自然言語の語句に応じて前記コンテキスト状態を更新すること
をさらに含む請求項８に記載のコンピュータ可読媒体。
【請求項１０】
コンテキストを認識した環境を実現するためのシステムであって、
メモリストレージと、
前記メモリストレージに結合された処理装置とを備え、前記処理装置は、
ユーザからアクション要求を受け取ることと、
ユーザに関連するコンテキスト状態を収集することであって、前記コンテキスト状態は、以下、すなわち、前記ユーザに関連する役割、少なくとも１つのこれまでのユーザ目的、少なくとも１つのこれまでのユーザアクション要求、前記ユーザのロケーション、時刻、日付、前記ユーザからの第１のアクション要求に関連するカテゴリ、前記ユーザからの第１のアクション要求に関連するデータタイプ、およびこれまでのユーザアクション要求に関連するデータカテゴリのうちの少なくとも１つを含む、収集することと、
前記コンテキスト状態に応じて複数の目的を作成することと、
前記コンテキスト状態に応じて前記要求されるアクションを実行することと、
前記要求されるアクションが前記複数の目的のうちの少なくとも１つを達成することに関連するかどうかを判定することであって、前記コンテキスト状態が少なくとも１つの予測される目的を達成することに関連するかどうかを判定するように動作することは、前記コンテキスト状態を、前記複数の目的のうちの少なくとも１つにそれぞれが関連する複数のユーザコンテキスト状態と比較するように動作することを含む、判定することと、
前記アクションが前記複数の目的のうちの少なくとも１つを達成することに関連すると判定したことに応答して、前記コンテキスト状態を更新することと、
前記コンテキスト状態が前記複数の目的のうちの完了された目的を含むかどうかを判定することと、
前記コンテキスト状態が前記完了された目的を含まないと判定したことに応答して、示唆される次のアクションを提供することとを行うように動作する、
システム。
【発明の詳細な説明】
【背景技術】
【０００１】
[001]拡張された会話理解アーキテクチャは、ユーザクエリおよびユーザ会話の自然言語理解を円滑にするための機構を提供することが可能である。一部の状況において、パーソナルアシスタントプログラムおよび／または検索エンジンは、しばしば、特殊化されたフォーマット、および特殊化されたシンタックスを要求する。例えば、「Ｉ  ｗａｎｔ  ｔｏ  ｇｏ  ｓｅｅ  ‘Ｉｎｃｅｐｔｉｏｎ’  ａｒｏｕｎｄ  ７（私は、７時頃に「インセプション」を観に行きたい）」というユーザのクエリが、会話システムに提供された際にユーザの真の意図を伝えることに効果がない場合がある。そのようなシステムは、一般に、ユーザが或る映画に言及している、かつユーザが、７：００頃にその映画を上映する近くの映画館についてユーザに知らせる結果を所望する、というコンテキストを導き出すことができない可能性がある。
【発明の概要】
【課題を解決するための手段】
【０００２】
[002]この「発明の概要」は、「発明を実施するための形態」においてさらに後述される概念の選定を、簡略化された形態で紹介するように与えられる。この「発明の概要」は、主張される主題の重要な特徴、または不可欠な特徴を特定することは意図していない。また、この「発明の概要」は、主張される主題の範囲を限定するのに使用されることも意図していない。
【０００３】
[003]拡張された会話理解アーキテクチャが提供され得る。ユーザから自然言語の語句を受け取ると、その語句は、検索語句に変換可能であり、さらにその検索語句に対して検索アクションが実行され得る。
【０００４】
[004]以上の一般的な説明と以下の詳細な説明はともに、例を与えるものであり、例示的であるに過ぎない。したがって、以上の一般的な説明、および以下の詳細な説明は、限定するものと考慮されるべきではない。さらに、本明細書に記載される特徴に加えて、いくつかの特徴または変形形態が与えられ得る。例えば、いくつかの実施形態が、詳細な説明で説明される様々な特徴の組合せおよび部分的組合せを対象とし得る。
【０００５】
[005]本開示に組み込まれ、本開示の一部を構成する添付の図面は、本発明の様々な実施形態を例示する。
【図面の簡単な説明】
【０００６】
【図１】[006]動作環境のブロック図である。
【図２】[007]図２Ａは、拡張された会話理解アーキテクチャを実現するためのインターフェースを示すブロック図である。図２Ｂは、拡張された会話理解アーキテクチャを実現するためのインターフェースを示すブロック図である。
【図３】[008]拡張された会話理解アーキテクチャにフィードバックするためのインターフェースを示すブロック図である。
【図４】[009]拡張された会話理解アーキテクチャを実現するための方法の流れ図である。
【図５】[010]コンピューティングデバイスを含むシステムのブロック図である。
【発明を実施するための形態】
【０００７】
[011]以下の詳細な説明は、添付の図面を参照する。可能な場合はいつでも、図面および以下の説明において同一の要素、または同様の要素を指すのに同一の参照符号が使用される。本発明のいくつかの実施形態が説明され得るが、変形形態、適合形態、および他の実装形態が可能である。例えば、図面に例示される要素に置換、追加、または変形が行われ得るとともに、本明細書で説明される方法が、開示される方法の段階を置換すること、並べ替えること、または追加することによって変形され得る。したがって、以下の詳細な説明は、本発明を限定しない。代わりに、本発明の適切な範囲は、添付の特許請求の範囲によって規定される。
【０００８】
[012]拡張された会話理解アーキテクチャが、ユーザクエリおよびユーザ会話の自然言語理解を円滑にすることが可能である。このアーキテクチャは、クエリのコンテキストを判定すること、およびユーザの意図を推測することを可能にすることができる。このアーキテクチャは、自然言語クエリの語を使用して、その会話のコンテキストを判定すること、ユーザの意図を推定すること、および適切な検索エージェントを使用してさらなる適切なクエリを形成することができる。
【０００９】
[013]音声対話システム（ＳＤＳ）が、人々が音声でコンピュータと対話することを可能にする。ＳＤＳを駆動する主要な構成要素は、ダイアログマネージャを備え、すなわち、この構成要素が、ユーザとのダイアログベースの会話を管理する。ダイアログマネージャは、音声認識および自然言語理解構成要素の出力、以前の回のダイアログからのコンテキスト、ユーザコンテキスト、および／または知識ベース（例えば、検索エンジン）から戻される結果などの、複数の入力ソースの組合せを介してユーザの意図を判定することが可能である。意図を判定した後、ダイアログマネージャは、最終結果をユーザに表示すること、および／またはユーザの意図を満足させるようにユーザとの対話を続けることなどの、アクションをとることができる。
【００１０】
[014]図１は、サーバ１０５を備えた動作環境１００のブロック図である。サーバ１０５は、ダイアログマネージャ１１１を備えた音声対話システム（ＳＤＳ）１１０、パーソナルアシスタントプログラム１１２、コンテキストデータベース１１６、および／または検索エージェント１１８などの様々なコンピューティングリソースおよび／またはソフトウェアモジュールを備え得る。ＳＤＳ１１０は、ネットワーク１２０を介してユーザからクエリおよび／またはアクション要求を受信することが可能である。そのようなクエリは、例えば、コンピュータおよび／またはセルラ電話機などのユーザデバイス１３０から送信され得る。ネットワーク１２０は、例えば、プライベートネットワーク、セルラデータネットワーク、および／またはインターネットなどの公共ネットワークを備え得る。
【００１１】
[015]図２Ａは、拡張された会話理解アーキテクチャを実現するためのインターフェース２００のブロック図である。インターフェース２００は、ユーザ入力パネル２１０と、パーソナルアシスタントパネル２２０とを備え得る。ユーザ入力パネル２１０は、ユーザステートメント２３０などの、変換されたユーザクエリおよび／またはアクション要求を表示することが可能である。ユーザステートメント２３０は、例えば、ユーザデバイス１３０のユーザから受け取られた音声−テキスト変換からの結果を備え得る。パーソナルアシスタントパネル２２０は、ユーザおよびユーザステートメント２３０に関連するコンテキスト状態から導き出された複数のアクション示唆２４０（Ａ）〜（Ｃ）を備え得る。
【００１２】
[016]図２Ｂは、ユーザが複数のアクション示唆のうちの１つ２４０（Ａ）を選択した後の更新された表示を備えたインターフェース２００のさらなる例示である。例えば、複数のアクション示唆２４０（Ａ）〜（Ｃ）は、ユーザが表現した「ｇｏ  ｏｕｔ  ｔｏｎｉｇｈｔ（今夜、出かける）」意図に応答した示唆される活動を備え得る。この例においてユーザの食事に出かける意図を示すアクション示唆２４０（Ａ）が選択されると、パーソナルアシスタントパネル２２０が、ユーザの意図をさらに定義することに関連する第２の複数のアクション示唆２５０（Ａ）〜（Ｃ）で更新され得る。例えば、第２の複数のアクション示唆２５０（Ａ）〜（Ｃ）は、ユーザが食べることを所望し得る、示唆される様々な料理を備え得る。本発明の実施形態に合致して、ユーザに関連するコンテキスト状態が、第２の複数のアクション示唆２５０（Ａ）〜（Ｃ）をもたらし、さらに／または順序付けるのに使用され得る。例えば、コンテキスト状態は、ユーザが訪れた、さらに／または気に入ったそれまでのレストランの履歴を備えることが可能であり、さらに料理のタイプが、それらの選好に応じて順序付けられることが可能である。
【００１３】
[017]図３は、拡張された会話理解アーキテクチャにフィードバックを与えることを例示するインターフェース２００のブロック図である。ユーザは、ユーザステートメント２３０のすべて、および／または一部分を、変更されたユーザステートメント３１０に変えることができる。例えば、ユーザは、マウス、スタイラス、キーボード、音声コマンド、および／または他の入力機構を使用して、それまでに変換されている語、「ｏｕｔ（出）」を選択し、さらにその語を「ｏｕｔｓｉｄｅ（外に）」に変更することが可能である。次に、パーソナルアシスタントパネル２２０が、変更されたユーザステートメント３１０に応じて、更新された複数の示唆されるアクション３２０（Ａ）〜（Ｂ）で更新され得る。
【００１４】
[018]図４は、拡張された会話理解アーキテクチャを提供するための本発明の或る実施形態に合致する方法４００に関与する一般的な段階を示す流れ図である。方法４００は、図４に関連して後段でより詳細に説明されるとおり、コンピューティングデバイス４００を使用して実施され得る。方法４００の段階を実施する様態は、後段でさらに詳細に説明される。方法４００は、開始ブロック４０５で始まって、段階４１０に進むことが可能であり、コンピューティングデバイス５００が、アクション要求を受け取ることが可能である。例えば、ＳＤＳ１１０が、「ｆｉｎｄ  ａ  ｐｌａｃｅ  ｔｏ  ｅａｔ（食事する所を見つける）」ユーザの音声クエリを備えた要求をユーザデバイス１３０から受け取ることが可能である。
【００１５】
[019]次に、方法４００は、段階４１５に進むことが可能であり、コンピューティングデバイス５００が、ユーザに関連するコンテキスト状態を収集することが可能である。コンテキスト状態は、例えば、ユーザに関連する役割、少なくとも１つのこれまでのユーザの目的、少なくとも１つのこれまでのユーザアクション要求、ユーザのロケーション、時刻、日付、ユーザからの第１のアクション要求に関連するカテゴリ、ユーザからの第１のアクション要求に関連するデータタイプ、および／またはこれまでのユーザアクションに関連するデータカテゴリを備え得る。そのような情報は、ＳＤＳ１１０のコンテキストデータベース１１６の中に格納され得る。
【００１６】
[020]次に、方法４００は、段階４２０に進むことが可能であり、コンピューティングデバイス５００が、コンテキスト状態に応じて複数の目的を作成することが可能である。例えば、ＳＤＳが、「ｆｉｎｄ  ａ  ｐｌａｃｅ  ｔｏ  ｅａｔ」というクエリに関連するドメインを「食事」と識別することが可能である。このため、ユーザのロケーションに応じて近くのレストランを見つけること、および／または会話に関与するユーザの数に応じて予約を作成することなどの目的が、生成され得る。
【００１７】
[021]次に、方法４００は、段階４２５に進むことが可能であり、コンピューティングデバイス５００が、コンテキスト状態に応じて、要求されるアクションを実行することが可能である。例えば、「ｆｉｎｄ  ａ  ｐｌａｃｅ  ｔｏ  ｅａｔ」というユーザクエリに応答して、トランスレータモジュール１１４が、ユーザに対して近くのレストランを検索するよう検索エージェント１１８に命令することが可能である。この検索の結果が、パーソナルアシスタントプログラム１１２によってユーザデバイス１３０に送り返されて、例えば、インターフェース２００のパーソナルアシスタントパネル２２０内に表示され得る。
【００１８】
[022]次に、方法４００は、段階４３０に進むことが可能であり、コンピューティングデバイス５００が、コンテキスト状態を更新することが可能である。例えば、複数のアクション示唆２４０（Ａ）〜（Ｃ）を備えた選択肢の現在の選択がそれぞれ、ユーザのコンテキスト状態における或る予測される確率に関連付けられ得る。ユーザの次のアクションが、将来のクエリに適用されるように、これらの予測される確率を調整するのに使用され得る。
【００１９】
[023]次に、方法４００は、段階４３５に進むことが可能であり、コンピューティングデバイス５００が、次の要求されるアクションが現在の目的を達成することに関連するかどうかを判定することが可能である。例えば、ＳＤＳ１１０が、ユーザのコンテキスト状態を、現在の目的にそれぞれが関連する複数のユーザコンテキスト状態と比較することが可能である。同一のアクション／クエリ要求を発行しているこれまでのユーザらが、類似した次のアクションを行っている可能性があり、さらにこの段階におけるユーザによる異なるアクションが、誤った目的が予測されていることを示すことが可能である。ユーザの次のアクションが予測される目的と合わない場合、方法４００は、段階４２０に戻ることが可能であり、新たな目的セットが生成され得る。
【００２０】
[024]ユーザの次のアクションが予測される目的と合う場合、方法４００は、段階４４０に進むことが可能であり、コンピューティングデバイス５００が、予測される目的が完了したかどうかを判定することが可能である。例えば、ＳＤＳ１１０が、食事の予約を確定して、タクシーを手配する要求されるアクションを受け取った場合、食事の計画を立てる目的が完了したと判定され得、さらに方法４００は、段階４４２で終わることが可能である。アクションが、予約を行うべきレストランを選択することを備えるが、時刻が選択されていない場合、予測される目的は、完了していないと判定され得る。
【００２１】
[025]段階４４０で予測される目的が未完了である場合、次に、方法４００は、段階４４５に進むことが可能であり、コンピューティングデバイス５００が、次の示唆されるアクションを提供することが可能である。例えば、或るレストランが選択されているが、時刻は選択されていない場合、パーソナルアシスタントプログラム１１２が、ユーザに予約時刻を要求することが可能である。
【００２２】
[026]次に、方法４００は、段階４５０に進むことが可能であり、コンピューティングデバイス５００が、ユーザから次のアクションを受け取ることが可能である。例えば、ユーザが、予約時刻として７時００分の選択を入力して、この選択をＳＤＳ１１０に送信することが可能である。次に、方法４００は、前述したとおり、段階４２５に戻り、次の要求されるアクションを実行することが可能である。
【００２３】
[027]本発明に合致する或る実施形態が、コンテキストを認識した環境を実現するためのシステムを備え得る。このシステムは、メモリストレージと、このメモリストレージに結合された処理装置とを備え得る。処理装置は、ユーザから自然言語の語句を受け取り、この自然言語の語句を検索語句に変換し、この検索語句に応じて検索アクションを行うように動作することが可能である。この自然言語の語句は、例えば、複数のテキスト語として、さらに／またはオーディオストリームとして受け取られ得る。この検索語句は、自然言語の語句に含まれない少なくとも１つのコンテキスト上の意味概念を備え得る。処理装置は、検索アクションに応じて複数の検索結果を受け取り、さらにこの複数の検索結果をユーザに提供するようにさらに動作することが可能である。処理装置は、この複数の結果を複数のユーザに提供するようにさらに動作することが可能である。この自然言語の語句は、例えば、複数のユーザの間の会話から導き出され得る。処理装置は、複数のアプリケーションプログラミングインターフェース（ＡＰＩ）を解析して、その複数のＡＰＩのそれぞれに関して少なくとも１つの要求されるパラメータを識別するようにさらに動作することが可能である。複数のＡＰＩのそれぞれが、ウェブサイト検索機能に関連付けられることが可能である。自然言語の語句を検索語句に変換するように動作することは、処理装置が、自然言語の語句に関連するコンテキストを識別し、複数のＡＰＩのうちの少なくとも１つが、識別されたコンテキストに関連するかどうかを判定し、さらに、関連する場合、自然言語の語句のうちの少なくとも１つの語を、複数のＡＰＩのうちの少なくとも１つに関連する少なくとも１つの要求されるパラメータに変換するように動作することを備え得る。検索アクションを行うように動作することは、処理装置が、その少なくとも１つの要求されるパラメータで複数のＡＰＩのうちのその少なくとも１つを呼び出すように動作することを備え得る。
【００２４】
[028]本発明に合致する別の実施形態が、コンテキストを認知した環境を実現するためのシステムを備え得る。このシステムは、メモリストレージと、このメモリストレージに結合された処理装置とを備え得る。処理装置は、ユーザから自然言語の語句を受け取り、この自然言語の語句に関連するコンテキスト状態を作成し、この自然言語の語句を実行可能なアクションに変換し、識別されたコンテキストに応じて、この実行可能なアクションに関連するドメインを識別し、さらに識別されたドメイン内でこの実行可能なアクションを行うように動作することが可能である。実行可能なアクションは、例えば、検索アクション、データ作成アクション、データ変更アクション、および通信アクションを備え得る。処理装置は、少なくとも１つの示唆される次のアクションをユーザに提供するようにさらに動作することが可能である。処理装置は、ユーザから第２の自然言語の語句を受け取り、第２の自然言語の語句が少なくとも１つの示唆される次のアクションに関連するかどうかを判定し、さらに関連する場合、その少なくとも１つの示唆される次のアクションを行うようにさらに動作することが可能である。第２の自然言語の語句が少なくとも１つの示唆される次のアクションに関連しないと判定したことに応答して、処理装置は、少なくとも１つの第２の示唆される次のアクションをユーザに提供するように動作することが可能である。処理装置は、第２の自然言語の語句に応じてコンテキスト状態を更新するようにさらに動作することが可能である。
【００２５】
[029]本発明に合致するさらに別の実施形態が、コンテキストを認知した環境を実現するためのシステムを備え得る。このシステムは、メモリストレージと、このメモリストレージに結合された処理装置とを備え得る。処理装置は、複数の目的を作成し、ユーザに関連するコンテキスト状態を収集し、コンテキスト状態に応じて、複数の目的のうちの少なくとも１つに関連する示唆されるアクションをもたらし、ユーザからアクション要求を受け取り、コンテキスト状態に応じて、要求されるアクションを実行し、さらにこのアクションが複数の目的のうちのその少なくとも１つを達成することに関連するかどうかを判定するように動作することが可能である。このアクションが複数の目的のうちのその少なくとも１つを達成することに関連すると判定したことに応答して、処理装置は、コンテキスト状態を更新し、示唆されるアクションに関連する確率を更新し、さらにコンテキスト状態が複数の目的のうちの完了された目的を備えるかどうかを判定するように動作することが可能である。コンテキスト状態が完了された目的を備えないと判定したことに応答して、処理装置は、少なくとも１つの第２の示唆されるアクションを実現するように動作することが可能である。
【００２６】
[030]コンテキスト状態は、例えば、ユーザに関連する役割、少なくとも１つのこれまでのユーザの目的、少なくとも１つのこれまでのユーザアクション要求、ユーザのロケーション、時刻、日付、ユーザからの第１のアクション要求に関連するカテゴリ、ユーザからの第１のアクション要求に関連するデータタイプ、およびこれまでのユーザアクション要求に関連するデータカテゴリを備え得る。コンテキスト状態が少なくとも１つの予測される目的を達成することに関連するかどうかを判定するように動作することは、処理装置が、コンテキスト状態を、複数の目的のうちの少なくとも１つにそれぞれが関連する複数のユーザコンテキスト状態と比較するように動作することを備え得る。
【００２７】
[031]図５は、コンピューティングデバイス５００を含むシステムのブロック図である。本発明の或る実施形態に合致して、前述したメモリストレージおよび処理装置が、図５のコンピューティングデバイス５００などのコンピューティングデバイスにおいて実施され得る。ハードウェア、ソフトウェア、またはファームウェアの任意の適切な組合せが、メモリストレージおよび処理装置を実施するのに使用され得る。例えば、メモリストレージおよび処理装置は、コンピューティングデバイス５００で、またはコンピューティングデバイス５００と組み合わされた他のコンピューティングデバイス５１８のうちの任意のコンピューティングデバイス５１８で実施され得る。前述したシステム、デバイス、およびプロセッサは、例であり、他のシステム、デバイス、およびプロセッサが、本発明の実施形態に合致して、前述したメモリストレージおよび処理装置を備えることが可能である。さらに、コンピューティングデバイス５００は、前述したとおり、システム１００のための動作環境を備え得る。システム１００は、他の環境において動作してもよく、コンピューティングデバイス５００に限定されない。
【００２８】
[032]図５を参照すると、本発明の或る実施形態に合致するシステムが、コンピューティングデバイス５００のようなコンピューティングデバイスを含み得る。基本的な構成において、コンピューティングデバイス５００は、少なくとも１つの処理装置５０２と、システムメモリ５０４とを含み得る。コンピューティングデバイスの構成およびタイプに依存して、システムメモリ５０４は、揮発性メモリ（例えば、ランダムアクセスメモリ（ＲＡＭ））、不揮発性メモリ（例えば、読取り専用メモリ（ＲＯＭ））、フラッシュメモリ、または任意の組合せを含み得るが、これらに限定されない。システムメモリ５０４は、オペレーティングシステム５０５、および１つまたは複数のプログラミングモジュール５０６を含むことが可能であり、さらにパーソナルアシスタントプログラム１１２を含み得る。オペレーティングシステム５０５は、例えば、コンピューティングデバイス４００の動作を制御することに適することが可能である。さらに、本発明のいくつかの実施形態は、グラフィックスライブラリ、他のオペレーティングシステム、または他の任意のアプリケーションプログラムと連携して実施されてもよく、いずれの特定のアプリケーションにも、いずれの特定のシステムにも限定されない。この基本的な構成が、図５に破線５０８内の構成要素で例示される。
【００２９】
[033]コンピューティングデバイス５００は、さらなる特徴または機能を有することが可能である。例えば、コンピューティングデバイス５００は、例えば、磁気ディスク、光ディスク、またはテープなどのさらなるデータストレージデバイス（リムーバブルおよび／または非リムーバブルの）を含むことも可能である。そのようなさらなるストレージが、図５にリムーバブルストレージ５０９および非リムーバブルストレージ５１０で例示される。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を格納するために任意の方法または技術で実施された揮発性媒体および不揮発性媒体、リムーバブルの媒体および非リムーバブルの媒体を含み得る。システムメモリ５０４、リムーバブルストレージ５０９、および非リムーバブルストレージ５１０はすべて、コンピュータ記憶媒体の例（すなわち、メモリストレージ）である。コンピュータ記憶媒体には、ＲＡＭ、ＲＯＭ、電気的に消去可能な読取り専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリもしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタルバーサタイルディスク（ＤＶＤ）もしくは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または情報を格納するのに使用され得るとともに、コンピューティングデバイス５００によってアクセスされ得る他の任意の媒体が含まれることが可能であるが、これらに限定されない。任意のそのようなコンピュータ記憶媒体が、デバイス５００の一部であり得る。また、コンピューティングデバイス５００は、キーボード、マウス、ペン、サウンド入力デバイス、タッチ入力デバイスなどの入力デバイス５１２（複数可）を有することも可能である。また、ディスプレイ、スピーカ、プリンタなどの出力デバイス５１４（複数可）が含められることも可能である。前述したデバイスは、例であり、他のデバイスが使用されてもよい。
【００３０】
[034]また、コンピューティングデバイス５００は、デバイス５００が、分散コンピューティング環境においてネットワーク、例えば、イントラネットまたはインターネットを介するなどして、他のコンピューティングデバイス５１８と通信できるようにすることが可能な通信接続部５１６を含むことも可能である。通信接続部５１６は、通信媒体の一例である。通信媒体は、典型的には、搬送波などの変調されたデータ信号、または他のトランスポート機構におけるコンピュータ可読命令、データ構造、プログラムモジュール、または他のデータによって具現化可能であり、さらに任意の情報配信媒体を含む。「変調されたデータ信号」という用語は、信号内に情報を符号化するように１つまたは複数の特性が設定されている、または変更されている信号を表すことが可能である。例として、限定としてではなく、通信媒体には、有線ネットワークまたは直接配線接続などの有線媒体、ならびに音響媒体、無線周波数（ＲＦ）媒体、赤外線媒体、または他のワイヤレス媒体などのワイヤレス媒体が含まれ得る。本明細書で使用されるコンピュータ可読媒体という用語には、記憶媒体と通信媒体がともに含まれ得る。
【００３１】
[035]前述したとおり、オペレーティングシステム５０５を含め、いくつかのプログラムモジュールおよびデータファイルが、システムメモリ５０４の中に格納され得る。処理装置５０２において実行される間、プログラミングモジュール５０６（例えば、パーソナルアシスタントプログラム１１２）は、例えば、前述した方法５００の段階のうちの１つまたは複数を含めたプロセスを行うことが可能である。前述したプロセスは、例であり、さらに処理装置５０２は、他のプロセスを行うことが可能である。本発明の実施形態に従って使用され得る他のプログラミングモジュールには、電子メールアプリケーションおよび電子コンタクトアプリケーション、ワードプロセッシングアプリケーション、スプレッドシートアプリケーション、データベースアプリケーション、スライドプレゼンテーションアプリケーション、描画アプリケーションプログラムもしくはコンピュータ支援アプリケーションプログラムなどが含まれ得る。
【００３２】
[036]概して、本発明の実施形態に合致して、プログラムモジュールには、特定のタスクを行うことが可能な、または特定の抽象データ型を実施することが可能なルーチン、プログラム、構成要素、データ構造、および他のタイプの構造が含まれ得る。さらに、本発明の実施形態は、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースの家庭用電子機器もしくはプログラマブル家庭用電子機器、ミニコンピュータ、メインフレームコンピュータなどを含む他のコンピュータシステム構成で実施され得る。また、本発明の実施形態は、通信ネットワークを介して結び付けられた複数の遠隔処理デバイスによってタスクが行われる分散コンピューティング環境において実施されることも可能である。分散コンピューティング環境において、プログラムモジュールは、ローカルメモリストレージデバイスと遠隔メモリストレージデバイスの両方の中に配置され得る。
【００３３】
[037]さらに、本発明の実施形態は、ディスクリートの電子素子を備えた電子回路、論理ゲートを含むパッケージ化された、もしくは集積された電子チップ、またはマイクロプロセッサを利用する回路において、あるいは電子素子もしくはマイクプロセッサを含む単一のチップ上で実施され得る。また、本発明の実施形態は、機械技術、光学技術、流体技術、および量子技術を含むが、これらに限定されない、例えば、論理積、論理和、および否定などの論理演算を行うことができる他の技術を使用して実施されることも可能である。さらに、本発明の実施形態は、汎用コンピュータ内で、または他の任意の回路もしくはシステムにおいて実施されてもよい。
【００３４】
[038]本発明の実施形態は、例えば、コンピュータプロセス（メソッド）として、コンピューティングシステムとして、あるいはコンピュータプログラム製品またはコンピュータ可読媒体などの製造品として実施され得る。コンピュータプログラム製品は、コンピュータシステムによって可読であるとともに、コンピュータプロセスを実行するための命令のコンピュータプログラムを符号化したコンピュータ記憶媒体であり得る。また、このコンピュータプログラム製品は、コンピューティングシステムによって可読な、かつコンピュータプロセスを実行するための命令のコンピュータプログラムを符号化した、搬送波において伝搬される信号であることも可能である。したがって、本発明は、ハードウェアで、かつ／またはソフトウェア（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）で実施され得る。つまり、本発明の実施形態は、命令実行システムによって、または命令実行システムに関連して使用されるように、コンピュータによって使用可能な、または可読のプログラムコードが具現化されているコンピュータによって使用可能な、または可読の記憶媒体上のコンピュータプログラム製品の形態をとり得る。コンピュータによって使用可能な、または可読の媒体は、命令実行システム、命令実行装置、もしくは命令実行デバイスによって、または命令実行システム、命令実行装置、もしくは命令実行デバイスに関連して使用されるようにプログラムを含む、格納する、通信する、伝搬する、またはトランスポートすることが可能な任意の媒体であり得る。
【００３５】
[039]コンピュータによって使用可能な、または可読の媒体は、例えば、電子、磁気、光、電磁、赤外線、または半導体のシステム、装置、デバイス、または伝搬媒体であり得るが、これらに限定されない。より特定のコンピュータ可読媒体の例（網羅的でないリスト）として、コンピュータ可読媒体には、以下、すなわち、１つまたは複数の配線を有する電子接続、ポータブルコンピュータディスケット、ランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、消去可能なプログラマブル読取り専用メモリ（ＥＰＲＯＭまたはフラッシュメモリ）、光ファイバ、およびポータブルコンパクトディスク読取り専用メモリ（ＣＤ−ＲＯＭ）が含まれる。コンピュータによって使用可能な、または可読の媒体は、プログラムが、例えば、紙または他の媒体の光学スキャンを介して電子的にキャプチャされ、その後、必要な場合、コンパイルされ、解釈され、またはそれ以外で適切に処理され、さらにその後、コンピュータメモリの中に格納され得るので、プログラムが印刷される紙または別の適切な媒体でさえあり得ることに留意されたい。
【００３６】
[040]本発明の実施形態は、例えば、本発明の実施形態による方法、システム、およびコンピュータプログラム製品のブロック図および／または動作上の例示を参照して前段で説明される。それらのブロックに記載される機能／動作は、いずれの流れ図に示される順序も外れて生じる場合がある。例えば、関与する機能／動作に依存して、連続して示される２つのブロックが、実際には、実質的に同時に実行可能であり、またはそれらのブロックが、ときとして、逆の順序で実行可能である。
【００３７】
[041]本発明のいくつかの実施形態が説明されてきたが、他の実施形態が存在することも可能である。さらに、本発明の実施形態は、メモリおよび他の記憶媒体の中に格納されたデータに関連するものとして説明されてきたものの、データは、ハードディスク、フロッピー（登録商標）ディスク、もしくはＣＤ−ＲＯＭのような二次ストレージデバイス、インターネットからの搬送波、または他の形態のＲＡＭもしくはＲＯＭなどの、他のタイプのコンピュータ可読媒体上に格納されること、またはそのようなコンピュータ可読媒体から読み取られることも可能である。さらに、開示される方法の段階は、本発明を逸脱することなく、段階を並べ替えることによること、ならびに／または段階を挿入すること、および／もしくは削除することによることを含め、任意の様態で変形され得る。
【００３８】
[042]本明細書に含められたコードの著作権を含むすべての権利は、本出願人に帰属し、本出願人の所有権である。本出願人は、本明細書に含められたコードに対するすべての権利を保有するとともに、留保し、さらに許可された特許の再現に関連してのみ本資料を再現する許可を与え、それ以外の目的では許可を与えない。
【００３９】
[043]本明細書は、例を含むが、本発明の範囲は、添付の特許請求の範囲によって示される。さらに、本明細書は、構造上の特徴、および／または方法上の動作に特有の言語で説明されてきたが、特許請求の範囲は、前述した特徴または動作に限定されない。むしろ、前述した特有の特徴および動作は、本発明の実施形態の例として開示される。
【図１】
2014512046.tif 000003
【図２】
2014512046.tif 000004
【図３】
2014512046.tif 000005
【図４】
2014512046.tif 000006
【図５】
2014512046.tif 000007
【国際調査報告】
2014512046.tif 000008
2014512046.tif 000009