"推論を自動的に決定するための方法であって、コンピューティングデバイスへの入力としてストリーミングテキストを受け取ることと、前記テキストが入力としてストリーミングされているときに、前記テキスト内の1つまたは複数の用語の1つまたは複数のウェブ検索に基づいて、前記テキストの内容に関する少なくとも1つの推論を、前記コンピューティングデバイスを用いて、決定することと、前記少なくとも1つの推論が決定されたときに、前記少なくとも1つの推論を自動的に表示することとを含む方法。少なくとも1つの推論を決定することが、前記テキスト内の1つまたは複数の用語の少なくとも1つのウェブ検索を自動的に実行することと、前記少なくとも1つのウェブ検索の結果を分析して、前記少なくとも1つのウェブ検索によって返されたヒットの数を決定し、前記ウェブ検索結果の1つまたは複数のトピックを決定することと、前記ウェブ検索結果の前記1つまたは複数のトピックに基づいて、少なくとも1つの推論を決定することとを含む、請求項1に記載の方法。返されたヒットの前記数が所定のレベルを下回る場合、前記少なくとも1つのウェブ検索の前記結果を使用して、前記1つまたは複数のトピックを決定することに決定することをさらに含む、請求項2に記載の方法。前記少なくとも1つのウェブ検索によって返されたヒットの前記数が、前記所定のレベルを上回る場合、コンピュータプロセッサを使用して、前記少なくとも1つのウェブ検索において先に使用されたよりも大きい前記テキスト内の用語の組合せを用いて、前記少なくとも1つのウェブ検索において用語を検索することをさらに含む、請求項3に記載の方法。前記テキスト内の1つまたは複数の用語のより大きな組合せが利用可能でないと決定された場合、前記少なくとも1つのウェブ検索における検索語としてテキストのより大きな組合せを生成する際に使用される入力として、さらなるテキストが受け取られるのを待つことをさらに含む、請求項4に記載の方法。前記テキストを生成する音声/テキスト変換が行われているときに、音声/テキスト変換器からの入力として前記テキストが自動的に受け取られる、請求項1に記載の方法。後続の音声信号を解釈する前記音声/テキスト変換器の性能を支援するために、前記少なくとも1つの推論を、プロセッサを介して、前記音声/テキスト変換器に提供することをさらに含む、請求項6に記載の方法。コンピュータプロセッサによって実行されたときに、前記プロセッサに、コンピューティングデバイスへの入力としてストリーミングテキストを受け取ることと、前記テキストが入力としてストリーミングされているときに、前記テキスト内の1つまたは複数の用語の1つまたは複数のウェブ検索に基づいて、前記テキストの内容に関する少なくとも1つの推論を決定することと、前記少なくとも1つの推論が決定されたときに、前記少なくとも1つの推論を自動的に表示することとを行わせる、推論を自動的に決定するための命令を含むコンピュータ可読媒体。前記プロセッサに少なくとも1つの推論を決定することを行わせる前記命令が、前記プロセッサに、前記テキスト内の1つまたは複数の用語の少なくとも1つのウェブ検索を自動的に実行し、前記少なくとも1つのウェブ検索の結果を分析して、前記少なくとも1つのウェブ検索によって返されたヒットの数を決定することと、前記ウェブ検索結果の1つまたは複数のトピックを決定することと、前記ウェブ検索結果の前記1つまたは複数のトピックに基づいて、少なくとも1つの推論を決定することとを行わせる命令を含む、請求項8に記載のコンピュータ可読媒体。前記プロセッサによって実行されたときに、前記ホストプロセッサに、返されたヒットの前記数が所定のレベルを下回る場合、前記少なくとも1つのウェブ検索の前記結果を使用して、前記1つまたは複数のトピックを決定することを行わせる追加の命令をさらに含む、請求項9に記載のコンピュータ可読媒体。前記プロセッサによって実行されたときに、前記ホストプロセッサに、前記少なくとも1つのウェブ検索によって返されたヒットの前記数が前記所定のレベルを上回る場合、前記少なくとも1つのウェブ検索において先に使用されたよりも大きい前記テキスト内の用語の組合せを、前記少なくとも1つのウェブ検索における検索語として使用することを行わせる追加の命令をさらに含む、請求項10に記載のコンピュータ可読媒体。前記プロセッサによって実行されたときに、前記ホストプロセッサに、前記テキスト内の1つまたは複数の用語のより大きな組合せが利用可能でないと決定された場合、前記少なくとも1つのウェブ検索における検索語としてテキストのより大きな組合せを生成する際に使用される入力として、さらなるテキストが受け取られるのを待つことを行わせる追加の命令をさらに含む、請求項11に記載のコンピュータ可読媒体。前記テキストを生成する音声/テキスト変換が行われているときに、前記プロセッサにテキストを入力として受け取ることを行わせる前記命令が、音声/テキスト変換器からテキストを入力として自動的に受け取ることを前記プロセッサに行わせる命令を含む、請求項8に記載のコンピュータ可読媒体。前記プロセッサによって実行されたときに、後続の音声信号を解釈する前記音声/テキスト変換器の性能を支援するために、前記少なくとも1つの推論を前記音声/テキスト変換器に提供することを前記ホストプロセッサに行わせる追加の命令をさらに含む、請求項13に記載のコンピュータ可読媒体。プロセッサと、プロセッサに結合された、実行可能命令を有するメモリであって、前記実行可能命令は、実行されたときに、ストリーミング入力としてテキストを受け取ること、前記テキストが入力としてストリーミングされているときに、前記テキスト内の1つまたは複数の用語の1つまたは複数のウェブ検索に基づいて、前記テキストの内容に関する少なくとも1つの推論を決定すること、前記少なくとも1つの推論が決定されたときに、前記少なくとも1つの推論を表示することを前記プロセッサが行うようにする、メモリとを備えるコンピューティングデバイス。前記実行可能命令は、実行されたときに、前記テキスト内の1つまたは複数の用語の少なくとも1つのウェブ検索を実行することと、前記少なくとも1つのウェブ検索の結果を分析して、前記ウェブ検索結果の1つまたは複数のトピックを決定することと、前記ウェブ検索結果の前記1つまたは複数のトピックに基づいて、少なくとも1つの推論を決定することとを前記プロセッサがさらに行うようにする、請求項15に記載のコンピューティングデバイス。前記実行可能命令はさらに、実行されたときに、前記少なくとも1つのウェブ検索の結果を分析して1つまたは複数のトピックを決定する前に、前記少なくとも1つのウェブ検索によって返されたヒットの数が所定のレベルを下回ることに基づいて、前記少なくとも1つのウェブ検索の前記結果を使用して、1つまたは複数のトピックを決定するかどうかを判定することを前記プロセッサが行うようにする、請求項16に記載のコンピューティングデバイス。前記実行可能命令はさらに、実行されたときに、前記少なくとも1つのウェブ検索によって返されたヒットの前記数が前記所定のレベルを上回る場合、前記少なくとも1つのウェブ検索において先に使用されたよりも大きい前記テキスト内の用語の組合せを、前記少なくとも1つのウェブ検索における検索語として使用することを前記プロセッサが行うようにする、請求項17に記載のコンピューティングデバイス。前記実行可能命令はさらに、実行されたときに、前記テキストに1つまたは複数の用語のより大きな組合せが利用可能でないと決定された場合、前記少なくとも1つのウェブ検索における検索語としてテキストのより大きな組合せを生成する際に使用される入力として、さらなるテキストが受け取られるのを待つことを前記プロセッサが行うようにする、請求項18に記載のコンピューティングデバイス。前記実行可能命令はさらに、実行されたときに、前記テキストを生成する音声/テキスト変換が行われているときに音声/テキスト変換器からテキストを入力として自動的に受け取ることを、前記プロセッサが行うようにする、請求項15に記載のコンピューティングデバイス。前記実行可能命令はさらに、実行されたときに、後続の音声信号を解釈する前記音声/テキスト変換器の性能を支援するために、前記少なくとも1つの推論を前記音声/テキスト変換器に提供することを前記プロセッサが行うようにする、請求項20に記載のコンピューティングデバイス。本開示は、検索エンジン推論ベースの仮想支援searchengineinferencebasedvirtualassistanceのための方法、コンピュータ可読媒体、およびデバイスについて説明する。いくつかの例示的な方法は、コンピューティングデバイスへの入力としてストリーミングテキストを受け取ることと、テキストを受け取ったときに、テキスト内の用語のウェブ検索に基づいて、主題に関する推論を決定することと、推論を自動的に表示することとを含む、推論を自動的に決定することを含むことができる。推論を決定することは、ウェブ検索の結果を分析して、ヒットの数と、ウェブ検索結果のトピックとを決定することを含むことができる。返されたヒットの数が、所定のレベルを下回る場合、ウェブ検索の結果は、推論を決定する目的でウェブ検索結果のトピックを確立するのに適当であると見なすことができる。ヒットの数が、所定のレベルを上回る場合、ウェブ検索の結果は、不適当であると見なすことができテキストからの用語のますます大きな組合せを使用して、追加のウェブ検索を実行することができる。入力として受け取ったテキストは、音声/テキスト変換器によって生成されたテキストを含むことができ、推論は、後続の音声信号の解釈を支援するために、音声/テキスト変換器に提供することができる。いくつかの例示的なコンピュータ可読媒体は、本明細書で説明される方法を実行するように構成されたコンピュータ実行可能命令を含むことができ、いくつかの例示的なデバイスは、プロセッサと、プロセッサに結合されたメモリとを備えることができ、メモリは、実行されたときに、本明細書で説明される方法を実行するようにプロセッサを構成する、コンピュータ実行可能命令を有する。上記の要約は、例示的なものにすぎず、いささかも限定的であることは意図していない。上で説明した例示的な態様、実施形態、および特徴に加えて、さらなる態様、実施形態、および特徴も、図面および以下の詳細な説明を参照することによって明らかになる。本開示の上記および他の特徴は、添付の図面と併せて理解される、以下の説明および添付の特許請求の範囲からより十分に明らかになる。これらの図面は、本開示に従った例示的な実施形態を示しているにすぎず、したがって、限定的なものと見なされるべきではない。本開示は、添付の図面の使用を通して、さらなる特定性と詳細さで説明される。以下の詳細な説明では、詳細な説明の一部を形成する添付の図面を参照する。図面では、同様の記号は一般に、同様の構成要素を識別するが、前後の脈絡から別の指示がなされる場合はこの限りではない。詳細な説明、図面、および特許請求の範囲において説明される例示的な実施形態は、限定的であることは意図されていない。本明細書で提示される主題の主旨または範囲から逸脱することなく、他の実施形態も利用することができ、他の変更も行うことができる。一般的なものとして本明細書で説明され、図に示された本開示の態様は、多種多様な異なる構成を取るように配置し、置き換え、組合せ、および設計することができ、それらのすべてが明示的に企図されており、本開示の一部をなすことは容易に理解されよう。本開示は、とりわけ、本明細書で説明されるような検索エンジン推論ベースの仮想支援に関連するデバイス、方法、およびコンピュータプログラムに関する。本明細書で説明される技法は一般に、推論ベースのシステムに関する。例示的な実施形態は、検索エンジン推論ベースの仮想支援に関連するデバイス、方法、およびコンピュータプログラムについて説明することができる。1つの例示的な方法は、入力としてテキストを受け取るように構成されたコンピューティングデバイスと、テキスト内の1つまたは複数の用語の1つまたは複数のウェブ検索に基づいて、テキストの内容に関する少なくとも1つの推論を決定するように構成されたコンピュータプロセッサとを含むことができる。その後、推論が決定されたときに、推論を自動的に表示することができる。本開示は、従来の推論ベースのシステムが、議論から追加情報を導出できる1つの方法は、何が議論されたかについての推論を引き出す技法を利用することであることを示していることを確認し、理解している。しかし、現在の推論ベースのシステムは一般に、静的な環境において既存の文書に対して使用するために設計されている。そのようなシステムは、リアルタイムに発生するコミュニケーションには容易に適用されず、時間につれて進展せず、または語および文脈が変化した場合に最新の意味および推定を提供しない。図1は、本明細書で説明される少なくともいくつかの実施形態に従って構成された、検索エンジン推論ベースの仮想支援のための例示的なプロセス100を示すフローチャートである。説明される例では、プロセス100、および本明細書で説明される他のプロセス、様々な機能ブロックまたはアクションは、ハードウェア、ソフトウェア、および/またはファームウェアによって実行できる、処理ステップ、機能的動作、イベント、および/またはアクションなどとして説明することができる。当業者であれば、本開示に鑑みて、図1に示される機能ブロックに対する多くの代替を様々な実施において実行できることを理解されよう。例えば、プロセス100は、図1に示されるように、1つの特定の順序のブロックまたはアクションを含むが、これらのブロックまたはアクションが提示される順序は、特許請求される発明をいずれか特定の順序に必ずしも限定するものではない。同様に、特許請求される発明の範囲から逸脱することなく、図1に示されていない介在アクションおよび/もしくは図1に示されていない追加アクションも利用することができ、ならびに/または図1に示されるアクションのいくつかは排除することができる。プロセス100は、動作101、103、および/または105のうちの1つまたは複数を含むことができ、処理は、ブロック101において開始することができる。ブロック101、音声/テキストエンジンから語またはテキスト断片を受け取るにおいて、コンピューティングデバイスへの入力として、語またはテキスト断片を受け取ることができる。例えば、この語またはテキスト断片は、一方向もしくは双方向の音声もしくはテキスト通信、ビデオ会議、ライブチャットセッション、ストリーミングオーディオもしくはビデオセッションの最中、または事前記録されたビデオもしくはオーディオのデバイス上での再生の最中などに、コンピューティングデバイスによって獲得することができる。コミュニケーションが音声として最初に受け取られ、または最初に生成される場合、コミュニケーションの個々の語を、本明細書で説明される検索エンジン推論ベースの仮想支援においてテキストとして処理できるように、コンピューティングデバイス上で実行されるまたは音声信号がコンピューティングデバイスによって受け取られる前に実行されるリアルタイム音声/テキスト処理が、音声をテキストに変換する。適切な音声/テキスト変換を提供するために、例えば、DragonSystemsおよびNuanceCommunications,Inc.によって提供されるものなど、様々な現在利用可能な音声認識アプリケーションおよびシステム、ならびに音声/テキストアプリケーションおよびシステムを全体または一部において使用することができる。例示的なコンピューティングデバイスは、デスクトップコンピュータ、ノートブックコンピュータ、モバイルコンピューティングデバイス、スマートフォン、携帯情報端末などを含むことができる。ブロック101の後には、ブロック103が続くことができる。ブロック103、リアルタイムに推論を決定するにおいて、語またはテキスト断片からの1つまたは複数の推論が、語の1つもしくは複数のウェブ検索、またはテキスト断片内の語の組合せのウェブ検索に基づいて、リアルタイムまたは準リアルタイムという制約を課されて、コンピューティングデバイスによって決定される103。推論は、同じコミュニケーションセッションまたは先行するコミュニケーションセッションの最中に以前受け取った語または語断片により行われた先行するウェブ検索にも基づくことができ、またコミュニケーションセッションのテキスト断片内ならびに/または先行および後続するテキスト断片内に出現する特定の語または句の頻度にも基づくことができる。そのようなウェブ検索を使用してこれらの推論を決定するための例示的なプロセスが、図2Aおよび図2Bに示されている。ブロック103の後には、ブロック105が続くことができる。ブロック105、リアルタイムに語/テキスト断片についての上位の推論を表示するにおいて、受け取った語および/またはテキスト断片についての1つまたは複数の上位の推論が、その後、コンピューティングデバイス上にリアルタイムまたは準リアルタイムに表示される105。推論は、コミュニケーションセッション中にその内容が今まさにユーザに伝えられているときに、内容の1つまたは複数の主題に関する追加情報またはより詳細な情報を提供するために、コミュニケーションセッション中にコンピューティングデバイス上に表示できる情報である。推論は、コンピューティングデバイスと通信するリモートデバイスに伝達し、リモートデバイス上に表示することもできる。追加の語またはテキスト断片に対して追加の処理が必要とされる場合は、ブロック105の後には、ブロック101が続くことができる。推論を決定する際のウェブ検索エンジンの使用は、他の高度なオプションを可能にする。例えば、検索エンジン推論ベースの仮想支援システムは、コミュニケーションセッション内のきわめて特定的な用語をウェブ検索結果から除外するように、構成可能とすることができる。したがって、誰かが、コミュニケーションセッション中に映画スターについて議論しており、映画スターの名前を持ち出した場合、検索エンジン推論ベースの仮想支援システムは、この特定的な名前を除外することができ、人々は、多くの共通点を有するが、件のその人物には実際のところ関係のない映画スターについてのより多くの情報を目にする。政治またはビジネスにおいて、これは、人々が、反例または他の選択肢をリアルタイムに提供できるようにすることができ、それによって、交渉を形作る。ごく最近のニュースだけに関係する材料を集めるために、最近の結果だけに目標を絞るように、ウェブ検索結果を設定することもできる。これは、人々が、しばらく前までは知っていたトピックについて遅れを取り戻す助けになることがあり、または人々が、コミュニケーションセッションの会話に遅れずについていく助けになることがある。図2Aは、本明細書で説明される少なくともいくつかの実施形態に従って構成された検索エンジン推論ベースの仮想支援による、コミュニケーションセッション中にコンピューティングデバイスへの入力として受け取った語から推論を決定するための例示的なプロセス200を示すフローチャートである。説明される例では、プロセス200、および本明細書で説明される他のプロセス、様々な機能ブロックまたはアクションは、ハードウェア、ソフトウェア、および/またはファームウェアによって実行できる、処理ステップ、機能的動作、イベント、および/またはアクションなどとして説明することができる。当業者であれば、本開示に鑑みて、図2に示される機能ブロックに対する多くの代替を様々な実施において実行できることを理解されよう。例えば、プロセス200は、図2に示されるように、1つの特定の順序のブロックまたはアクションを含むが、これらのブロックまたはアクションが提示される順序は、特許請求される発明をいずれか特定の順序に必ずしも限定するものではない。同様に、特許請求される発明の範囲から逸脱することなく、図2に示されていない介在アクションおよび/もしくは図2に示されていない追加アクションも利用することができ、ならびに/または図2に示されるアクションのいくつかは排除することができる。プロセス200は、動作105、201、202、203、204、205、209、および/または105のうちの1つまたは複数を含むことができ、処理は、ブロック201において開始することができる。ブロック201、音声/テキストエンジンから語を受け取るにおいて、語が、音声/テキストエンジンから受け取られる201。ブロック201の後には、ブロック202が続くことができる。各語が受け取られると200、ブロック202、語の希少性が所定の閾値を上回るかにおいて、語の希少性が所定の閾値を上回るかどうかがリアルタイムに判定される202。最初に、語に語希少性スコアwordrarityscoreを与えることができる。高い語希少性スコアは、語が相対的に珍しいものであることを意味し、低い語希少性スコアは、語が相対的にありふれたものであることを意味する。例えば、if、the、isなどのきわめてありふれた語のプライマリリストを保存しておき、それにアクセスすることができる。語がきわめてありふれた語のリスト上に出現する場合、例えば、その語は、完全に無視することができ、または0の希少性スコアを与えることができる。語がきわめてありふれた語のリスト上に存在しない場合、その語が語希少性リストwordraritylist上に出現するかどうかを判定し、その語に関連する語希少性スコアを決定するために、リスト上の各語について関連する所定の語希少性スコアを有する、保存された語希少性リストにアクセスすることができる。語が語希少性リスト上に出現しない場合、その語をウェブ検索の検索語として使用する、ウェブ検索エンジン例えばGoogleを使用したワールドワイドウェブウェブ検索を自動的に実行することができる。検索から返されたヒットの数は、語についての語希少性スコアの基礎として使用することができる。返されたヒットの数が少ないほど、その語についての語希少性スコアは高くなる。例えば、語senatorは、その語をウェブ検索の検索語として使用した場合、6840万ヒットをもたらすことができ、TrinityUniversityは、900万ヒットを返すことができる。しかし、語toolは、何億ものヒットを返すことができ、したがって、senatorまたはTrinityUniversityよりもはるかに低い語希少性スコアを返す。その後、語および関連する語希少性スコアは、将来の使用のために、語希少性リストに追加することができる。語の希少性が所定の閾値を上回らない例えば、所定量を上回る語希少性スコアを有さない場合、プロセスは、次に受け取る語に進み、次の語に対して、上記のステップが繰り返される。また、特定の閾値は、コンピューティングデバイス上の1つまたは複数のユーザインタフェースを介してユーザによって構成可能とすることができる。語の希少性が所定の閾値を上回った例えば、所定量を上回る語希少性スコアを有する場合、語は、珍しいとしてマークされ、任意の近隣の形容詞または副詞と結び付けることができる。ブロック202の後には、ブロック203が続くことができる。ブロック303、語を推論語表inferencetermtableに追加するにおいて、結果の語/句が、その後、推論語表に追加される203。したがって、各語が受け取られると、1つまたは複数の近隣の語は、それらをそのような方法で組み合わせるために、バッファに記憶することができる。珍しい語は、個々の形容詞および副詞がありふれているとしても、近隣の形容詞および副詞とともにグループ化される。これは、語badおよびgoodは、それ自体では、棄てられるに十分なほどありふれているにしても、劇的に異なる推論をもたらし得る、例えばbadtrafficとgoodtrafficの相違を人々が捉えることができるようにする。ブロック203の後には、ブロック205が続くことができる。ブロック205、推論の数を決定するにおいて、ウェブ検索における語/句の使用に基づいた最も一般的な推論の数が、その後、自動的に決定される205。推論の数は、例えば、ウェブ検索の検索語として語/句を使用し、検索結果をしかるべく分析することによって、決定することができる。例えば、検索結果のトピックは、検索結果から自動的に読み取ることができ、語/句についての推論として使用することができる。推論の数は、検索結果において見出された異なるトピックの数または最初のn個の検索結果における異なるトピックの数とすることができる。検索結果内の最も一般的な推論は、検索結果内の他の推論と比べて、検索結果内に最も頻繁に出現する推論である。ウェブ検索結果の分析から推論を引き出すための他の様々な自動化技法およびプロセスを、代替として実施することができ、または上記のものと併せて実施することができる。また、推論の強度は、検索結果出力に関連する推論を、検索語として使用された語/句と比較することによって、決定することができる。例えば、語/句Aについてのウェブ検索が、検索結果出力Bを返す場合、検索ヒットのうちのどれだけの割合がやはりAに関与するかを決定するために、Bを自動的に検索することができる。検索ヒットが高い割合でAに関与する場合、推論の強度は、検索ヒットがより低い割合でAに関与する場合よりも強いと決定される。ブロック205の後には、ブロック207が続くことができる。ブロック207、推論の数が閾値を下回るかにおいて、推論および/またはウェブ検索結果ヒットの数が、語/句についての一定の閾値を下回るかどうかが判定される207。全体的な検索適合性searchrelevanceについてのこの決定は、上で決定された推論の数、語/句を検索語として使用したウェブ検索結果の数、またはそれらの任意の組合せに基づいて行うことができる。例えば、検索結果において見出された異なる推論の数が多すぎる場合、それは、いずれか特定の推論が適合する、または助けとなる可能性が低いことの指標とすることができる。また、語/句のウェブ検索結果すなわちヒットの数が多すぎる場合、それは、役立つ推論を決定するためにそれだけを使用するには、語/句があまりにもありふれていることの指標とすることができる。見出された異なる推論の数と検索結果ヒットの数の間の関係、または見出された異なる推論と検索結果ヒットの数との比率は、一定の閾値が満たされているかどうかを決定する際のファクタとして使用することもできる。また、特定の閾値は、コンピューティングデバイス上の1つまたは複数のユーザインタフェースを介してユーザによって構成可能とすることができる。ブロック207の後には、ブロック105が続くことができる。ブロック105、上位の推論を表示するにおいて、推論および/またはウェブ検索結果ヒットの数が、語/句についての一定の閾値を下回る場合、語/句についての1つまたは複数の上位の推論が、リアルタイムまたは準リアルタイムという制約を課されて、コンピューティングデバイス上に表示される105一例として、図3を参照。推論は、推論に関する追加情報へのリンクも提供することができ、推論に関連する広告なども含むことができる。その後、プロセスは、コミュニケーションセッションにおいて例えば音声/テキストエンジンから次の語をまた受け取るステップ200から開始して繰り返す。推論は、音声/テキストシステムまたは音声認識システムの解釈性能を高めるために、そのようなシステムに自動的にフィードバックすることもできる。例えば、英語の句anarrowflightとanarrowflightは、静かな室内にいる人間でさえも見分けがつかないことがあるが、コミュニケーションセッション中に話者がErrolFlynnについて話しているところであるという推論が、検索エンジン推論ベースの仮想支援システムによって行われた場合は、文は、arrowについてである可能性がより高い。話者がDennisLau建築家について話しているという推論が、検索エンジン推論ベースの仮想支援システムによって行われた場合は、文は、おそらく階段についてのものであり、それは、互いに比べた用語の検索適合性に基づいて決定できることがらである。ブロック207の後には、ブロック209が続くことができる。ブロック209、語/句を組み合わせるにおいて、推論および/またはウェブ検索結果ヒットの数が、語/句についての一定の閾値を上回る場合、語/句は、より大きな句を生成するために、推論語表内の1つまたは複数の他の近隣の語/句と組み合わされる209。近隣の語/句は、推論語表に追加されるほど十分に珍しいと先に決定しておくことができるが、おそらくは、表示されたいずれか関連する推論を有するための閾値をそれだけでは満たさなかった。また、近隣の語が、推論語表にまだ追加されていない例えば、近隣の語が、現在の語句の右側にある場合、近隣の語を記憶するために使用されるバッファからそれを読み出すことができ、またはプロセスは、さらなる推論語が推論語表に追加されるまで待つことができる。例えば、語toolについての推論および/またはウェブ検索結果ヒットの数が、一定の閾値を上回る場合、この語は、より長い語句powertoolを生成するために、推論語表内において語toolの左側にある近隣の語powerと組み合わされる209。その後、プロセスは分岐し、ウェブ検索における新たに組み合わされた語/句の使用に基づいた最も一般的な推論の数を決定するステップ205から開始し、一方、コミュニケーションセッションにおいて例えば音声/テキストエンジンから次の語をまた受け取るステップ200から開始して自動的に繰り返す。上の例において、句powertoolは、ウェブ検索における検索語として使用され、この検索語は、表面上は、toolが単独でもたらしたよりも少数の異なる推論および全検索結果ヒットをもたらす。プロセスが進行するにつれて、ウェブ検索において使用される語/句は、両方向の近隣の語を追加することによって、推論および/またはウェブ検索結果ヒットの数が、推論を表示するための一定の閾値を下回るまで、または組み合わせる追加の語が存在しなくなるまで、成長し続けることができる。代替として、ウェブ検索において使用される語/句は、現在の語/句の左側または右側いずれかの近隣の語だけを追加することによって、成長し続けることができる。また、コミュニケーションセッション中に追加の語が利用可能になる例えば話されるのを待つ前に、句がどれだけ大きく成長できるかについて、制限を設けることもできる。図2Bは、本明細書で説明される少なくともいくつかの実施形態に従って構成された検索エンジン推論ベースの仮想支援による、コミュニケーションセッション中にコンピューティングデバイスへの入力として受け取った語から推論を決定するための例示的な代替プロセス210を示すフローチャートである。図2Bのプロセス210は、図2Aのプロセスに示されるように、一度にストリーミングテキストからの1つの語を処理する代わりに、一度にストリーミングテキストからの1つのテキスト断片を処理することによって、例えば、受け取った語から推論を決定するために利用することができる。テキスト断片は、様々なサイズとすることができ、ユーザによって選択することができる。ブロック211、音声/テキストエンジンからテキスト断片を受け取るにおいて、音声/テキストエンジンからテキスト断片を受け取ることができる。ブロック211の後には、ブロック213が続くことができる。ブロック213、珍しい語を選択するにおいて、音声/テキストエンジンまたは他のコミュニケーションアプリケーションからテキスト断片を受け取った211後、上で説明したように、テキスト断片の珍しい語を、任意の適用可能な近隣の形容詞または副詞と結び付ける句を生成することができる。珍しい語は、図1Aを参照して上で説明したように、テキスト断片内の語に語希少性スコアを割り当て、所定の閾値を上回る希少性スコアを有する語だけを選択することによって、選択することができる213。ブロック213の後には、ブロック215が続くことができる。ブロック215、トピック関連度topicalrelatednessを決定するにおいて、選択された語/句とテキスト断片内の近隣の語/句との各組合せについて、組合せをウェブ検索の検索語として使用することによって、組合せのトピック関連度が決定される215。ウェブ検索において受け取ったヒットの数に基づいて、組み合わされた語/句のトピック関連度を決定することができる215。一般に、ウェブ検索からもたらされるヒットの数が少ないほど、組み合わされた語/句のトピック関連度も低くなる。ブロック215の後には、ブロック217が続くことができる。ブロック217、トピック関連度が所定の閾値を下回るかにおいて、いずれかの組合せのトピック関連度が所定の閾値を下回るかどうかを、組合せについての検索結果におけるヒットの数に基づいて、その後、判定することができる217。ブロック217の後には、ブロック219が続くことができる。ブロック219、より大きな選択された句を生成するにおいて、検索結果におけるヒットの数に基づいて、トピック関連度が所定の閾値を下回る組合せが存在しない場合、1つまたは複数の近隣の語を選択された語/句と組み合わせることによって、より大きな選択された句が生成される219。このプロセスは、最初に選択された語/句を近隣の選択された語/句と組み合わせて、さらなる組合せのためのより大きな語/句を生成することによって、最初に選択された語/句から開始することができる。その後、プロセスは、より大きな語/句の組合せを使用し、選択された語/句とテキスト断片内の近隣の語/句との各組合せについて、組合せのトピック関連度を決定するステップ215から開始して繰り返す。ブロック217の後には、ブロック221が続くことができる。ブロック221、語/句の組合せを推論語として追加するにおいて、検索結果におけるヒットの数に基づいて、トピック関連度が所定の閾値を下回るいずれかの組合せが存在する場合、適用可能な語/句すなわち、トピック関連度が所定の閾値を下回る語/句が、推論語表に推論語として追加される221。例示的な推論語表のフォーマットは以下の通りである。上記の推論語表に示されるように、各語句は、表のトップとサイドに列挙される。語/句の組合せのトピック関連度は、語/句の組合せの一方の語/句を列方向に検索してから、語/句の組合せの他方の語/句の列に達するまで、表を横方向に移動することによって、表内で自動的に見出すことができる。その場合、得られた表内のロケーションが、組合せのウェブ検索におけるヒットの数から見た、組合せのトピック関連度の1つの表示である。特定の組合せについての比較的少ないヒットの数は、組合せがより高い推論強度を有することのおおよその表示としても役立つことがある。ブロック221の後には、ブロック223が続くことができる。ブロック223、トピック的に最も関連の薄い推論leasttopicallyrelatedinferenceを見出すにおいて、推論語表内の推論語の各組合せについてのトピック的に最も関連の薄い推論を、その後、見出すことができる223。システムが単一のトピック的に最も関連の薄い推論を選択するか、それとも多くのトピック的に最も関連の薄い推論を選択するかは、ユーザによって選択可能とすることができる。ウェブ検索結果の分析から推論を引き出すための他の様々な自動化技法およびプロセスを、代替として実施することができ、または上記のものと併せて実施することができる。また、検索結果出力の関連する推論を、検索語として使用された語/句と照合することによって、推論の強度を決定することもできる。例えば、語/句Aについてのウェブ検索が、検索結果出力Bを返す場合、検索ヒットのうちのどれだけの割合がやはりAに関与するかを決定するために、Bを自動的に検索することができる。検索ヒットが高い割合でAに関与する場合、推論の強度は、検索ヒットがより低い割合でAに関与する場合よりも強いと決定される。ブロック223の後には、ブロック225が続くことができる。ブロック225、推論の強度が閾値を上回るかにおいて、各組合せについてのトピック的に最も関連の薄い推論の強度が一定の閾値を上回るかどうか、および/または組合せのウェブ検索が一定の閾値を下回る数のヒットを返したかどうかが、その後、判定される225。強度が一定の閾値を上回ったことを判定するか、それとも組合せについてのウェブ検索ヒットが一定の閾値を下回ったかどうかを判定するか、または両方を判定するかは、最終的に表示される推論の所望の品質および精度と、推論の所望の量との兼ね合いに依存する。強度が一定の閾値を上回ったことと、組合せについてのウェブ検索ヒットが一定の閾値を下回ったかどうかの両方が判定される場合、それは、最終的に表示される推論の品質および精度を高めることができるが、表示される推論の量を少なくすることになる。閾値レベルも、これに影響し、強度についての閾値がより高く、ヒットの数についての閾値がより低いほど、やはり最終的に表示される推論の品質および精度を高める結果をもたらすことができるが、表示される推論の量を少なくすることになる。強度が一定の閾値を上回ったことを判定するかどうか、および/または組合せについてのウェブ検索ヒットが一定の閾値を下回ったかどうかのほか、閾値レベル自体も、ユーザによって選択可能とすることができる。推論の強度が一定の閾値を上回らない場合、および/または推論語の組合せのウェブ検索が一定の閾値を下回る数のヒットを返さない場合、ブロック225の後には、ブロック219が続くことができる。テキスト断片内の1つまたは複数の近隣の語を、選択された語/句と組み合わせることによって、より大きな選択された句を生成するステップ219から開始して上記のプロセスが繰り返す。ブロック225の後には、ブロック227が続くことができる。ブロック227、推論を表示するにおいて、推論の強度が一定の閾値を上回る場合、および/または推論語の組合せのウェブ検索が一定の閾値を下回る数のヒットを返す場合、語/句の組合せについての上位の1つまたは複数の推論が、リアルタイムまたは準リアルタイムという制約を課されて、コンピューティングデバイス上に表示される227。上位の1つまたは複数の推論は、上で説明されたような推論の強度および共通性に基づいて、決定および選択することができる。表示される上位の推論の数、または上位の推論だけを表示するかどうかも、検索エンジン推論ベースの仮想支援システムのユーザ構成可能な特徴とすることができる。ブロック227に続いて、プロセスは、その後、音声/テキストエンジンまたは他のコミュニケーションアプリケーションから次のテキスト断片を受け取ること211から開始して繰り返す。しかし、先に処理されたテキスト断片からの1つまたは複数の語/句は、先に処理されたテキスト断片からの語/句を考慮することによって、分析されるテキストの範囲を広げるために、それが望ましい場合は、推論語表内に残しておくことができる。例えば、推論語表内に残される先に処理されたテキスト断片からの語/句は、そのような語/句を検索語として使用した場合にいくつのウェブ検索結果が返されるかに関して、特に珍しい語/句とすることができる。また、新しいテキスト断片からの語/句と組み合わせて、推論語表に先に追加された語/句を使用することになる可能性もある同じ推論が表示される回数に制限を設けることができる。図3は、本明細書で説明される少なくともいくつかの実施形態による、モバイルデバイス301においてリアルタイムに受け取られるコミュニケーションに基づいた、検索エンジン推論ベースの仮想支援による例示的な推論317を表示する、例示的なモバイルデバイス301の図である。モバイルデバイス筐体303と、ディスプレイ画面305と、ユーザ入力ボタン323と、オーディオ出力325とを有する、モバイルデバイス301が示されている。モバイルデバイスは、検索エンジン推論ベースの仮想支援のための本明細書で説明される方法およびプロセスを実行するために、様々なワイヤレス通信を実行し、コンピュータソフトウェアプログラムコードを実行するための、内部ハードウェアと、コンピュータ可読媒体と、コンピュータ可読媒体上に記憶された適切なアプリケーション、データ、およびコンピュータ実行可能命令とを有することができる。検索エンジン推論ベースの仮想支援のための本明細書で説明される方法およびプロセスを実行するための、そのようなハードウェアおよびコンピュータ可読媒体、ならびに他の適切なコンピューティングデバイスの例が、図4から図6を参照して本明細書でさらに説明される。モバイルデバイス301のディスプレイ画面305上には、例示的なコミュニケーションセッションにおいてモバイルデバイス301上で実行されている検索エンジン推論ベースの仮想支援の一例が示されている。例示的なコミュニケーションセッションは、オーディオ信号および/またはデータ、ならびにビデオ信号および/またはデータをデバイス301に提供することによってモバイルデバイス301と通信する、リモートユーザ309のビデオまたは静止画像を表示する、ビデオチャットセッションである。デバイス301によって受信されるオーディオ信号および/またはデータは、上で説明したように、モバイルデバイス301上に存在する、例えば、RAMなどの揮発性メモリ、ROM、フラッシュメモリなどの不揮発性メモリ、もしくはそれらの任意の組合せを含むが、それらに限定されない、任意のタイプを取ることができる、モバイルデバイスのメモリデバイス上に存在する、音声/テキストエンジンによってローカルでテキストに変換することができ、または先に変換してから、テキストとしてオーディオとともにモバイルデバイス301に送信することができる。対応するテキストは、例えば、リモートユーザ309が話すにつれて、ディスプレイ画面305上のテキストウィンドウ307内にストリーム表示される。各推論語311、313、315、または推論語の組合せが、上で説明された検索エンジン推論ベースの仮想支援プロセスにおいて識別されると、これらは、テキストウィンドウ307内において、推論語または組合せとして、強調、括弧付け、または他の方法で指示することができる。対応する推論語を検索語として使用して返されたウェブ検索ヒットの関連する数も、テキストウィンドウ307内の適用可能な推論語311、313、315の近くに表示することができる。例えば、推論語senator311は、6840万のウェブ検索ヒットを返したが、推論語TrinityUniversity313は、900万のヒットを返しただけであった。コミュニケーションセッションがモバイルデバイス301上で生じているときに、リアルタイムまたは準リアルタイムという制約を課されて、ディスプレイ画面305上に表示される例示的な推論317が示されている。ディスプレイ画面305においてテキストウィンドウ307の下に示された特定の推論DiscussingSenatorJohnCornyn,TX317は、モバイルデバイス301上に示された現在のコミュニケーションセッションに対して実行された、上で説明された検索エンジン推論ベースの仮想支援プロセスによって、推論語senator311、TrinityUniversity313、およびjudge315が、リアルタイムまたは準リアルタイムに認識され、処理された結果である。推論に関するより詳細な情報または関連する情報へのリンク319、および推論の相対強度321などの追加情報も、推論317とともにまたは推論317の近くに表示することができる。推論317とともにまたは推論317の近くに表示される他の情報は、推論317に関連する広告、推論317を保存するか、それともさらに処理するかの選択肢、および推論317に関する他の統計を含むことができるが、それらに限定されない。図4は、本明細書で説明された少なくともいくつかの例に従って、検索エンジン推論ベースの仮想支援を実行するために、多くのコンピュータ化されたプロセスを実施できる、例示的なネットワークコンピューティング環境400の図である。例えば、上で説明されたようなコミュニケーションセッションは、図4に示されるネットワークコンピューティング環境内の様々なオブジェクトの間で生じることができ、図4における1つまたは複数のオブジェクトは、検索エンジン推論ベースの仮想支援を利用または実施することができる。別の例として、分散または並列コンピューティングは、そのようなネットワーク環境の一部であることができ、図4のネットワーク上の様々なクライアントが、検索エンジン推論ベースの仮想支援のためのシステムおよび方法を使用し、および/または実施する。任意のコンピュータまたは他のクライアントもしくはサーバデバイスを、独立にまたは分散コンピューティング環境において機能する他のコンピュータまたは他のクライアントもしくはサーバデバイスと接続するために、ネットワークを利用できることは、当業者であれば理解できよう。これに関して、任意の数の処理ユニット、メモリユニット、または記憶ユニット、ならびに同時に生じる任意の数のアプリケーションおよびプロセスを有する、任意のコンピュータシステムまたは環境は、提供されるシステムおよび方法に関連して使用するのに適していると考えられる。分散コンピューティングは、様々なコンピューティングデバイスおよび/またはシステム間での交換によって、コンピュータリソースおよび/またはサービスを共用するために利用することができる。これらのリソースおよび/またはサービスは、情報の交換、キャッシュストレージの使用、および/または分散ファイルストレージのためのディスクストレージの使用を含むことができる。分散コンピューティングは、クライアントが、それらの集団能力を活用して、企業全体を利することができるように、ネットワーク接続性を利用することができる。これに関して、様々なデバイスは、本明細書で説明された検索エンジン推論ベースの仮想支援プロセスにかかわることができる、アプリケーション、オブジェクト、またはリソースを有することができる。図4のネットワークコンピューティング環境400は、1つもしくは複数のコンピューティングデバイス271、600、276、30、1つもしくは複数のオブジェクト273、274、275、および/または1つもしくは複数のデータベース278など、様々なデバイスを含むことができる。これらのデバイス271、600、273、274、275、276、301、278の各々は、プログラム、メソッド、データストア、プログラム可能ロジックなどを含むことができ、またはそれらを使用することができる。コンピューティングデバイス301は、図3のモバイルデバイス301とすることができる。しかし、デバイス271、600、273、274、275、276、301、および/または278は、携帯情報端末PDA、モバイルデバイス、オーディオ/ビデオデバイス、MP3プレーヤ、パーソナルコンピュータなど、いくつかの同じデバイスまたは異なるデバイスにわたることができる。各デバイス271、600、273、274、275、276、301、278は、通信ネットワーク270によって、別のデバイス271、600、273、274、275、276、301、278と通信するように適合させることができる。これに関して、任意のデバイスが、データベース278または他のストレージ要素の維持および更新を担うことができる。通信ネットワーク270は、それ自体が、図4のシステムにサービスを提供するように構成された他のコンピューティングエンティティを含むことができ、したがって、複数の相互接続ネットワークを表すことができる。いくつかの実施形態の態様によれば、各デバイス271、600、273、274、275、276、301、および/または278は、アプリケーションプログラミングインタフェースAPIを使用できる個別の機能的プログラムモジュール、または他のデバイス271、600、273、274、275、276、301、および/もしくは278の1つもしくは複数にサービスを要求するように適合される他のオブジェクト、ソフトウェア、ファームウェア、および/もしくはハードウェアを含むことができる。275などのオブジェクトは、別のコンピューティングデバイス276上でホストされ得ることも理解できよう。したがって、示された物理的環境は、接続されたデバイスをコンピュータとして示しているが、そのような図は例にすぎず、物理的環境は、代替として、PDA、テレビ、MP3プレーヤなどの様々なデジタルデバイス、およびインタフェース、COMオブジェクトなどのソフトウェアオブジェクトなどを含むように描くこと、または説明することができる。分散コンピューティング環境をサポートできる、様々なシステム、コンポーネント、およびネットワーク構成が存在する。例えば、コンピューティングシステムは、有線システムまたは無線システムによって、ローカルネットワークまたは広域分散ネットワークによって、互いに接続することができる。現在、多くのネットワークが、インターネットに結合され、インターネットは、広域分散コンピューティングのためのインフラストラクチャを提供し、多くの異なるネットワークを包含する一例である。そのような任意のインフラストラクチャは、インターネットに結合されるかどうかにかかわりなく、提供されるシステムおよび方法と併せて使用することができる。ネットワークインフラストラクチャは、クライアント/サーバ、ピアツーピア、またはハイブリッドアーキテクチャなどの、多くのネットワークトポロジを可能にすることができる。クライアントは、それが関連していない別のクラスまたはグループのサービスを使用する、クラスまたはグループのメンバである。コンピューティングにおいて、クライアントは、別のプログラムによって提供されるサービスを要求するプロセス、すなわち、大ざっぱに言えば、1組の命令またはタスクである。クライアントプロセスは、他のプログラムまたはサービス自体の動作詳細を一切知る必要なしに、要求したサービスを利用する。クライアント/サーバアーキテクチャ、特にネットワークシステムでは、クライアントは、通常は、別のコンピュータ、例えばサーバによって提供される共用ネットワークリソースにアクセスするコンピュータである。図4の例では、デバイス271、600、273、274、275、276、301、および/または278のいずれも、状況に応じて、クライアント、サーバ、または両方と見なすことができる。サーバは、必ずではないが一般に、インターネットなどのリモートまたはローカルネットワークを介してアクセス可能な、リモートコンピュータシステムである。クライアントプロセスは、第1のコンピュータシステムにおいて動作することができ、サーバプロセスは、第2のコンピュータシステムにおいて動作することができ、それらは、互いに通信媒体を介して通信することで、分散機能を提供し、複数のクライアントが、サーバの情報収集機能を利用できるようにする。ソフトウェアオブジェクトはいずれも、複数のコンピューティングデバイスまたはオブジェクトにわたって分散させることができる。クライアントとサーバは、プロトコルレイヤによって提供される機能を利用して、互いに通信するように適合させることができる。例えば、ハイパーテキスト転送プロトコルHTTPは、ワールドワイドウェブWWWまたはウェブと併せて使用できる、一般的なプロトコルである。インターネットプロトコルIPアドレス、またはユニバーサルリソースロケータURLなどの他の参照などの、コンピュータネットワークアドレスは、サーバコンピュータまたはクライアントコンピュータを互いに識別するために使用することができる。ネットワークアドレスは、URLアドレスと呼ぶことができる。通信は、通信媒体を介して提供することができ、例えば、クライアントとサーバは、高容量通信のためのTCP/IP接続を介して、互いに結合することができる。図4において提供される一般的なフレームワークに従って構築できる多様なコンピューティング環境、および図4のものなどのネットワーク環境におけるコンピューティングにおいて生じ得るさらなる多様性に鑑みて、本明細書で提供されるシステムおよび方法は、多少なりとも特定のコンピューティングアーキテクチャに限定されるものと解釈することはできない。代わりに、実施形態は、添付の特許請求の範囲に従った広さおよび範囲において解釈されるべきである。図5は、本開示の少なくともいくつかの実施形態に従って構成された、検索エンジン推論ベースの仮想支援のためのコンピュータプログラム製品を示す概略図である。コンピュータプログラム製品500は、上で説明され、図1、図2A、および図2Bにも示された方法を実行するための、1組または複数組の実行可能命令502を含むことができる。コンピュータプログラム製品500は、信号搬送媒体504または別の類似の通信媒体506で送信することができる。コンピュータプログラム製品500は、コンピュータ可読媒体508または別の類似の記録可能媒体510に記録することもできる。図6は、本開示の少なくともいくつかの実施形態に従って構成された、検索エンジン推論ベースの仮想支援を実施できる、例示的なコンピューティングデバイスのブロック図である。非常に基本的な構成においては、コンピューティングデバイス600は一般に、1つまたは複数のホストプロセッサ604と、システムメモリ606とを含む。メモリバス608は、ホストプロセッサ604とシステムメモリ606の間で通信するために使用することができる。所望の構成に応じて、ホストプロセッサ604は、マイクロプロセッサμP、マイクロコントローラμC、デジタル信号プロセッサDSP、またはそれらの任意の組合せを含むが、それらに限定されない、任意のタイプを取ることができる。プロセッサ604は、レベル1キャッシュ610およびレベル2キャッシュ612などの1つまたは複数のレベルのキャッシングと、プロセッサコア614と、レジスタ616とを含むことができる。例示的なプロセッサコア614は、算術論理演算ユニットALU、浮動小数点ユニットFPU、デジタル信号処理コアDSPコア、またはそれらの任意の組合せを含むことができる。例示的なメモリコントローラ618も、プロセッサ604とともに使用することができ、またはいくつかの実施では、メモリコントローラ618は、プロセッサ604の内部部品とすることができる。所望の構成に応じて、システムメモリ606は、RAMなどの揮発性メモリ、ROM、フラッシュメモリなどの不揮発性メモリ、またはそれらの任意の組合せを含むが、それらに限定されない、任意のタイプを取ることができる。システムメモリ606は、オペレーティングシステム620と、1つまたは複数のアプリケーション622と、プログラムデータ624とを含むことができる。いくつかの実装では、オペレーティングシステム620は、スケジューラ626を有することができ、少なくとも図1、図2A、および図2Bに示されたプロセスに関して説明された機能を含む、本明細書で説明されたような機能を実行するために、1つまたは複数のアプリケーション622を動作させるように構成することができる。また、アプリケーション622は、オペレーティングシステム620上で、プログラムデータ624を用いて動作するように構成することができる。プログラムデータ624は、検索エンジン推論ベースの仮想支援を実行するための命令の実行に関連するタスクデータなどの、しかしそれらに限定されない、タスク関連情報を含むことができる。この説明された基本的な構成602は、図6においては、内側の点線内のそれらのコンポーネントによって示されている。コンピューティングデバイス600は、追加の特徴または機能、ならびに基本的な構成602と任意の必要なデバイスおよびインタフェースの間の通信を円滑化するための追加のインタフェースを有することができる。例えば、バス/インタフェースコントローラ630は、ストレージインタフェースバス634を介する、基本的な構成602と1つまたは複数のデータ記憶デバイス632の間の通信を円滑化するために使用することができる。データ記憶デバイス632は、着脱可能記憶デバイス636、着脱不能記憶デバイス638、またはそれらの組合せとすることができる。着脱可能記憶デバイスおよび着脱不能記憶デバイスの例は、いくつかの名前を挙げると、フレキシブルディスクドライブおよびハードディスクドライブHDDなどの磁気ディスクデバイス、コンパクトディスクCDドライブまたはデジタル多用途ディスクDVDドライブなどの光ディスクドライブ、ソリッドステートドライブSSD、ならびにテープドライブを含む。例示的なコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術で実施された、揮発性および不揮発性の着脱可能および着脱不能な媒体を含むことができる。システムメモリ606、着脱可能記憶デバイス636、および着脱不能記憶デバイス638は、コンピュータ記憶媒体の例である。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリ、もしくは他のメモリ技術、CD-ROM、デジタル多用途ディスクDVD、もしくは他の光記憶、磁気カセット、磁気テープ、磁気ディスク記憶、もしくは他の磁気記憶デバイス、または所望の情報を記憶するのに使用でき、コンピューティングデバイス600によってアクセスできる他の任意の媒体を含むが、それらに限定されない。そのようなコンピュータ記憶媒体はいずれも、コンピューティングデバイス600の一部とすることができる。コンピューティングデバイス600は、バス/インタフェースコントローラ630を介する、様々なインタフェースデバイス例えば、出力デバイス642、周辺インタフェース644、および通信デバイス646から基本的な構成602への通信を円滑化するための、インタフェースバス640も含むことができる。例示的な出力デバイス642は、1つまたは複数のA/Vポート652を介してディスプレイまたはスピーカなどの様々な外部デバイスと通信するように構成できる、グラフィックス処理ユニット648およびオーディオ処理ユニット650を含む。例示的な周辺インタフェース644は、1つまたは複数のI/Oポート658を介して入力デバイス例えば、キーボード、マウス、ペン、音声入力デバイス、タッチ入力デバイスなどまたは他の周辺デバイス例えば、プリンタ、スキャナなどなどの外部デバイスと通信するように構成できる、シリアルインタフェースコントローラまたはパラレルインタフェースコントローラを含む。例示的な通信デバイス646は、1つまたは複数の通信ポートを介する、通信ネットワークリンクを通じた、1つまたは複数の他のコンピューティングデバイス662との通信を円滑化するように構成できる、ネットワークコントローラを含む。いくつかの実施では、コンピューティングデバイス600は、インタフェースバス640を介してホストプロセッサ604と通信できる、マルチコアプロセッサ664を含む。ネットワーク通信リンクは、通信媒体の一例とすることができる。通信媒体は、搬送波または他のトランスポートメカニズムなどの変調データ信号内のコンピュータ可読命令、データ構造、プログラムモジュール、または他のデータによって一般に具現することができ、任意の情報配送媒体を含むことができる。変調データ信号は、情報を信号内に符号化するような方法で設定または変更された特性の1つまたは複数を有する信号とすることができる。限定することなく、例を挙げると、通信媒体は、有線ネットワークまたは直接配線接続などの有線媒体、ならびに音響、無線周波RF、マイクロ波、赤外線IRおよび他の無線媒体などの無線媒体を含むことができる。コンピュータ可読媒体という用語は、本明細書で使用される場合、記憶媒体と通信媒体の両方を含むことができる。コンピューティングデバイス600は、セルフォン、携帯情報端末PDA、パーソナルメディアプレーヤデバイス、ワイヤレスウェブウォッチデバイス、パーソナルヘッドセットデバイス、アプリケーション固有デバイス、または上記の機能のいずれかを含むハイブリッドデバイスなど、フォームファクタが小さいポータブルまたはモバイル電子デバイスの一部として実施することができる。コンピューティングデバイス600は、ラップトップコンピュータ構成と非ラップトップコンピュータ構成の両方を含むパーソナルコンピュータとしても実施することができる。システムの側面でのハードウェアの実装形態とソフトウェアの実装形態との間には、ほとんど相違が残されていない。ハードウェアまたはソフトウェアの使用は、一般にいつもそうではないが、ある状況ではハードウェアとソフトウェアの間の選択が重要になり得るという点でコスト対効果のトレードオフを表す設計上の選択である。本明細書に記載された、プロセスおよび/またはシステムおよび/または他の技術をもたらすことができる様々な達成手段があり例えば、ハードウェア、ソフトウェア、および/またはファームウェア、好ましい達成手段は、プロセス、システム、または他の技術が導入される状況によって異なる。例えば、実装者が速度と正確性が最も重要であると決定すると、実装者は主にハードウェアまたはファームウェアの達成手段を選択することができる。フレキシビリティが最も重要なら、実装者は主にソフトウェアの実装形態を選択することができる。さらに別の代替案として、実装者は、ファームウェアありまたはファームウェアなしで、ハードウェア、ソフトウェアのなんらかの組合せを選択することができる。前述の詳細な説明では、ブロック図、フローチャート、および/または例の使用によって、装置および/またはプロセスの様々な実施形態を説明してきた。そのようなブロック図、フローチャート、および/または例が1つまたは複数の機能および/または動作を含む限りにおいて、そのようなブロック図、フローチャート、または例の中のそれぞれの機能および/または動作は、広範囲のハードウェア、ソフトウェア、ファームウェア、または実質上それらのすべての組合せにより、個別におよび/または集合的に実装可能であることが、当業者には理解されるであろう。ある実施形態では、本明細書に記載された主題のいくつかの部分は、特定用途向け集積回路ASIC、フィールドプログラマブルゲートアレイFPGA、デジタルシグナルプロセッサDSP、または他の集積化方式によって実装することができる。しかし、本明細書で開示された実施形態のいくつかの態様が、全体においてまたは一部において、1つまたは複数のコンピュータ上で動作する1つまたは複数のコンピュータプログラムとして例えば、1つまたは複数のコンピュータシステム上で動作する1つまたは複数のプログラムとして、1つまたは複数のプロセッサ上で動作する1つまたは複数のプログラムとして例えば、1つまたは複数のマイクロプロセッサ上で動作する1つまたは複数のプログラムとして、ファームウェアとして、あるいは実質上それらの任意の組合せとして、等価に集積回路に実装することができることを、当業者は認識するであろうし、電気回路の設計ならびに/またはソフトウェアおよび/もしくはファームウェアのコーディングが、本開示に照らして十分当業者の技能の範囲内であることを、当業者は認識するであろう。さらに、本明細書に記載された主題のメカニズムを様々な形式のプログラム製品として配布することができることを、当業者は理解するであろうし、本明細書に記載された主題の例示的な実施形態が、実際に配布を実行するために使用される信号伝達媒体の特定のタイプにかかわらず適用されることを、当業者は理解するであろう。信号伝達媒体の例には、フロッピー登録商標ディスク、ハードディスクドライブ、コンパクトディスクCD、デジタルビデオディスクDVD、デジタルテープ、コンピュータメモリ、などの記録可能なタイプの媒体、ならびに、デジタル通信媒体および/またはアナログ通信媒体例えば、光ファイバケーブル、導波管、有線通信リンク、無線通信リンクなどの通信タイプの媒体が含まれるが、それらには限定されない。本明細書で説明したやり方で装置および/またはプロセスを記載し、その後そのように記載された装置および/またはプロセスを、データ処理システムに統合するためにエンジニアリング方式を使用することは、当技術分野で一般的であることを当業者は認識するであろう。すなわち、本明細書に記載された装置および/またはプロセスの少なくとも一部を、妥当な数の実験によってデータ処理システムに統合することができる。通常のデータ処理システムは、一般に、システムユニットハウジング、ビデオディスプレイ装置、揮発性メモリおよび不揮発性メモリなどのメモリ、マイクロプロセッサおよびデジタル信号プロセッサなどのプロセッサ、オペレーティングシステムなどの計算実体、ドライバ、グラフィカルユーザインタフェース、およびアプリケーションプログラムのうちの1つもしくは複数、タッチパッドもしくはスクリーンなどの1つもしくは複数の相互作用装置、ならびに/またはフィードバックループおよびコントロールモータを含むコントロールシステム例えば、位置検知用および/もしくは速度検知用フィードバック、コンポーネントの移動用および/もしくは数量の調整用コントロールモータを含むことを、当業者は理解するであろう。通常のデータ処理システムは、データコンピューティング/通信システムおよび/またはネットワークコンピューティング/通信システムの中に通常見られるコンポーネントなどの、市販の適切なコンポーネントを利用して実装することができる。本明細書に記載された主題は、様々なコンポーネントをしばしば例示しており、これらのコンポーネントは、他の様々なコンポーネントに包含されるか、または他の様々なコンポーネントに接続される。そのように図示されたアーキテクチャは、単に例にすぎず、実際には、同じ機能を実現する多くの他のアーキテクチャが実装可能であることが理解されよう。概念的な意味で、同じ機能を実現するコンポーネントの任意の構成は、所望の機能が実現されるように効果的に関連付けされる。したがって、特定の機能を実現するために組み合わされた、本明細書における任意の2つのコンポーネントは、アーキテクチャまたは中間のコンポーネントにかかわらず、所望の機能が実現されるように、お互いに関連付けされていると見ることができる。同様に、そのように関連付けされた任意の2つのコンポーネントは、所望の機能を実現するために、互いに動作可能に接続または動作可能に結合されていると見なすこともでき、そのように関連付け可能な任意の2つのコンポーネントは、所望の機能を実現するために、互いに動作可能に結合できると見なすこともできる。動作可能に結合できる場合の具体例には、物理的にかみ合わせ可能な、および/もしくは物理的に相互作用するコンポーネント、ならびに/またはワイヤレスに相互作用可能な、および/もしくはワイヤレスに相互作用するコンポーネント、ならびに/または論理的に相互作用する、および/もしくは論理的に相互作用可能なコンポーネントが含まれるが、それらに限定されない。本明細書における実質的にすべての複数形および/または単数形の用語の使用に対して、当業者は、状況および/または用途に適切なように、複数形から単数形に、および/または単数形から複数形に変換することができる。様々な単数形/複数形の置き換えは、理解しやすいように、本明細書で明確に説明することができる。通常、本明細書において、特に添付の特許請求の範囲例えば、添付の特許請求の範囲の本体部において使用される用語は、全体を通じてオープンなopen用語として意図されていることが、当業者には理解されよう例えば、用語含むincludingは、含むがそれに限定されないincludingbutnotlimitedtoと解釈されるべきであり、用語有するhavingは、少なくとも有するhavingatleastと解釈されるべきであり、用語含むincludesは、含むがそれに限定されないincludesbutisnotlimitedtoと解釈されるべきである、など。導入される請求項で具体的な数の記載が意図される場合、そのような意図は、当該請求項において明示的に記載されることになり、そのような記載がない場合、そのような意図は存在しないことが、当業者にはさらに理解されよう。例えば、理解の一助として、添付の特許請求の範囲は、導入句少なくとも1つのatleastoneおよび1つまたは複数のoneormoreを使用して請求項の記載を導くことを含む場合がある。しかし、そのような句の使用は、同一の請求項が、導入句1つまたは複数のまたは少なくとも1つのおよびaまたはanなどの不定冠詞を含む場合であっても、不定冠詞aまたはanによる請求項の記載の導入が、そのように導入される請求項の記載を含む任意の特定の請求項を、単に1つのそのような記載を含む発明に限定する、ということを示唆していると解釈されるべきではない例えば、aおよび/またはanは、通常、少なくとも1つのまたは1つまたは複数のを意味すると解釈されるべきである。同じことが、請求項の記載を導入するのに使用される定冠詞の使用にも当てはまる。また、導入される請求項の記載で具体的な数が明示的に記載されている場合でも、そのような記載は、通常、少なくとも記載された数を意味すると解釈されるべきであることが、当業者には理解されよう例えば、他の修飾語なしでの2つの記載tworecitationsの単なる記載は、通常、少なくとも2つの記載、または2つ以上の記載を意味する。さらに、A、BおよびC、などの少なくとも1つに類似の慣例表現が使用されている事例では、通常、そのような構文は、当業者がその慣例表現を理解するであろう意味で意図されている例えば、A、B、およびCの少なくとも1つを有するシステムは、Aのみ、Bのみ、Cのみ、AおよびBを共に、AおよびCを共に、BおよびCを共に、ならびに/またはA、B、およびCを共に、などを有するシステムを含むが、それに限定されない。A、B、またはC、などの少なくとも1つに類似の慣例表現が使用されている事例では、通常、そのような構文は、当業者がその慣例表現を理解するであろう意味で意図されている例えば、A、B、またはCの少なくとも1つを有するシステムは、Aのみ、Bのみ、Cのみ、AおよびBを共に、AおよびCを共に、BおよびCを共に、ならびに/またはA、B、およびCを共に、などを有するシステムを含むが、それに限定されない。2つ以上の代替用語を提示する事実上いかなる離接する語および/または句も、明細書、特許請求の範囲、または図面のどこにあっても、当該用語の一方oneoftheterms、当該用語のいずれかeitheroftheterms、または両方の用語bothtermsを含む可能性を企図すると理解されるべきであることが、当業者にはさらに理解されよう。例えば、句AまたはBは、AまたはBあるいはAおよびBの可能性を含むことが理解されよう。本明細書では様々な態様および実施形態が開示されたが、他の態様および実施形態も当業者には明らかであろう。本明細書で開示された様々な態様および実施形態は説明を目的としたものであり、限定的であることは意図しておらず、真の範囲および主旨は、以下の特許請求の範囲によって示されている。"