"データ入力の方法であって、ユーザのマイクロジェスチャを含む第1のユーザ入力を受信するステップであって、前記マイクロジェスチャは、少なくとも第1の入力選択および第2の入力選択を示し、前記少なくとも第1の入力選択および第2の入力選択は、言葉全体未満を表す、ステップと、前記第1のユーザ入力に基づいて、1つ以上の可能な言葉の提案を決定するステップと、前記可能な言葉の提案を前記ユーザに提供するステップとを含む、方法。前記第1の入力選択から前記第2の入力選択へのジェスチャの中に屈曲があるかどうかを決定するステップをさらに含む、請求項1に記載の方法。屈曲が前記ジェスチャの中にあると決定された場合に、中間入力選択が前記ユーザによって意図されていることを決定するステップをさらに含む、請求項2に記載の方法。前記第1の入力選択からの前記ユーザ入力の移動の方向を決定するステップをさらに含む、請求項1に記載の方法。決定されたユーザ移動の方向に少なくとも部分的に基づいて、中間入力選択が前記ユーザによって意図されていることを決定するステップをさらに含む、請求項4に記載の方法。前記第1のユーザ入力は、モバイルデバイスのタッチスクリーンキーボード上で受信される、請求項1に記載の方法。前記第1のユーザ入力は、コンピューティングデバイスのタッチスクリーンキーボード上で受信される、請求項1に記載の方法。前記第1のユーザ入力は、テレビのセットトップボックスで受信され、前記第1のユーザ入力は、遠隔制御ポインタを採用して行われる、請求項1に記載の方法。データ入力の方法であって、ユーザのマイクロジェスチャを含む第1のユーザ入力を受信するステップであって、前記マイクロジェスチャは、少なくとも第1の入力選択および第2の入力選択を示し、前記少なくとも第1の入力選択および第2の入力選択は、言葉全体未満を表す、ステップと、前記第1のユーザ入力に基づいて、1つ以上の可能な言葉の提案を決定するステップと、前記可能な言葉の提案を前記ユーザに提供するステップと、ユーザのマイクロジェスチャを含む第2のユーザ入力を受信するステップであって、前記ユーザのマイクロジェスチャは、少なくとも第3の入力選択および第4の入力選択を示す、ステップと、前記第1のユーザ入力および前記第2のユーザ入力に基づいて、1つ以上の可能な言葉の提案を決定するステップと、前記可能な言葉の提案を前記ユーザに提供するステップとを含む、方法。プログラムされた命令を記憶するためのメモリと、プロセッサ電子機器とを含み、前記プロセッサ電子機器は、ユーザのマイクロジェスチャを含む第1のユーザ入力を受信することであって、前記マイクロジェスチャは、少なくとも第1の入力選択および第2の入力選択を示し、前記少なくとも第1の入力選択および第2の入力選択は、言葉全体未満を表す、ことと、前記第1のユーザ入力に基づいて、1つ以上の可能な言葉の提案を決定することと、前記可能な言葉の提案を前記ユーザに提供することと、によるデータ入力の方法を行うために、前記命令を実行するように構成されている、コンピュータシステム。遠隔に位置するコンピューティングデバイスにおけるデータ入力の方法であって、前記遠隔に位置するコンピューティングデバイスの入力選択デバイスを複数のゾーンに分割するステップであって、各ゾーンは、1つ以上のキーを含む、ステップと、連続的に選択されたゾーンの一連のユーザ指示を受信するステップと、前記選択されたゾーンの各々に関連付けられている1つ以上のキーの全てが選択されていると見なすステップと、一連の連続的に選択された1つ以上のキーを遠隔データベース記憶場所に伝送するステップと、一連の選択されたキーに従って入力された1つまたは複数の意図されたユーザの言葉を決定するためのアルゴリズムに、前記一連の連続的に選択された1つ以上のキーを入力するステップと、決定された1つまたは複数の意図されたユーザの言葉を、前記遠隔に位置するコンピューティングデバイスに伝送するステップと、前記決定された1つまたは複数の意図されたユーザの言葉のうちの1つの選択のユーザ指示を受信するステップとを含む、方法。前記1つまたは複数の意図されたユーザの言葉を決定するための前記アルゴリズムに従って、前記遠隔に位置するコンピューティングデバイスの1つ以上の特性を考慮するステップをさらに含む、請求項11に記載の方法。前記1つ以上の特性は、前記遠隔に位置するコンピューティングデバイスを採用するユーザの識別を含む、請求項12に記載の方法。前記1つ以上の特性は、前記遠隔に位置するコンピューティングデバイスのユーザに従った過去のテキスト入力選択の指示を含む、請求項12に記載の方法。前記アルゴリズムに従って、より最近の過去に行われたテキスト入力選択は、より遠い過去に行われたテキスト入力選択よりも重く加重される、請求項14に記載の方法。前記1つ以上の特性は、前記遠隔に位置するコンピューティングデバイスのユーザが関連付けられているグループを含む、請求項12に記載の方法。前記1つ以上の特性は、前記グループに従った過去のテキスト入力選択の指示をさらに含む、請求項16に記載の方法。前記アルゴリズムに従って、より最近の過去に、かつより頻繁に行われたテキスト入力選択は、より遠い過去に、かつ低頻度で行われたテキスト入力選択よりも重く加重される、請求項14に記載の方法。プログラムされた命令を記憶するように構成されているメモリと、プロセッサ電子機器とを含み、前記プロセッサ電子機器は、遠隔に位置するコンピューティングデバイスの入力選択デバイスを複数のゾーンに分割することであって、各ゾーンは、1つ以上のキーを含む、ことと、連続的に選択されたゾーンの一連のユーザ指示を受信することと、前記選択されたゾーンの各々に関連付けられている1つ以上のキーの全てが選択されていると見なすことと、一連の連続的に選択された1つ以上のキーを遠隔データベース記憶場所に伝送することと、一連の選択されたキーに従って入力された1つまたは複数の意図されたユーザの言葉を決定するためのアルゴリズムに、前記一連の連続的に選択された1つ以上のキーを入力することと、決定された1つまたは複数の意図されたユーザの言葉を、前記遠隔に位置するコンピューティングデバイスに伝送することと、前記決定された1つまたは複数の意図されたユーザの言葉のうちの1つの選択のユーザ指示を受信することとによるデータ入力の方法を、前記遠隔に位置するコンピューティングデバイスにおいて行うために、前記プログラムされた命令を実行するように構成されている、コンピュータシステム。データ伝送の方法であって、入力選択デバイスを複数のゾーンに分割するステップであって、各ゾーンは、少なくとも1つのゾーン出力キーに対応する2つ以上の入力キーを含む、ステップと、複数の入力を受信するステップであって、各入力は、前記複数のゾーンのうちの1つにおけるキーの選択に関連付けられている、ステップと、受信された前記複数の入力の各々に対応する複数のゾーン出力キーを出力するステップとを含む、方法。前記複数の入力文字は、パスワードを含む、請求項20に記載の方法。前記複数のゾーンの構成は、ゾーン定義を含む、請求項20に記載の方法。前記ゾーン定義は、前記ゾーン出力キーとともに出力される、請求項20に記載の方法。データ伝送の方法であって、複数のゾーンレイアウト定義を定義するステップであって、各ゾーンレイアウト定義は、ゾーン定義識別子によって識別され、各ゾーン定義は、入力選択デバイスを複数のゾーンに分割し、各ゾーンは、各ゾーンに関連付けられている1つの出力キーを含む、ステップと、前記ゾーンレイアウト定義のうちの1つを選択するステップと、複数の入力文字を受信するステップであって、各入力文字は、選択されたゾーンレイアウト定義によって定義される前記複数のゾーンのうちの少なくとも1つに関連付けられている、ステップと、前記ゾーンの各々に含まれるゾーン出力キーを含む一連のゾーン出力キーを出力するステップであって、前記ゾーンの各々は、前記選択されたゾーンレイアウト定義に従って定義されるように、前記複数の入力文字の各々に関連付けられている、ステップとを含む、方法。前記選択されたゾーンレイアウト定義に対する前記ゾーン定義識別子を出力するステップをさらに含む、請求項24に記載の方法。前記ゾーン定義識別子および一連のゾーン出力キーを受信デバイスに伝送するステップをさらに含む、請求項25に記載の方法。伝送されたゾーン定義識別子および一連のゾーン出力キーを前記受信デバイスにおいて受信するステップと、前記伝送された一連のゾーン出力キーに関連付けられている期待される一連のゾーン出力キーを決定するために、前記複数のゾーンレイアウト定義のうちの既定の1つに対して所定の一連の文字を適用するステップであって、前記複数のゾーンレイアウト定義のうちの既定の1つは、前記伝送されたゾーン定義識別子に関連付けられている、ステップと、前記伝送された一連のゾーン出力キーを前記期待される一連のゾーン出力キーと比較することにより、前記伝送された一連のゾーン出力キーと前記期待される一連のゾーン出力キーとの間の合致を決定するステップとをさらに含む、請求項26に記載の方法。パスワードは、前記伝送された一連のゾーン出力キーが、前記期待される一連のゾーン出力キーと合致する場合に容認される、請求項27に記載の方法。データ伝送の方法であって、複数のゾーンレイアウト定義を定義するステップであって、各ゾーンレイアウト定義は、入力選択デバイスを複数のゾーンに分割し、各ゾーンは、各ゾーンに関連付けられている1つの出力キーを含む、ステップと、既定の選択方法に従って前記ゾーンレイアウト定義のうちの1つを選択するステップと、複数の入力文字を受信するステップであって、各入力文字は、前記選択されたゾーンレイアウト定義によって定義される前記複数のゾーンのうちの少なくとも1つに関連付けられている、ステップと、前記ゾーンの各々に含まれるゾーン出力キーを含む一連のゾーン出力キーを受信デバイスに出力するステップであって、前記ゾーンの各々は、前記選択されたゾーンレイアウト定義に従って定義されるように、前記複数の入力文字の各々に関連付けられている、ステップと出力された一連のゾーン出力キーを受信デバイスで受信するステップと、前記既定の選択方法に従って前記ゾーンレイアウト定義のうちの1つを選択するステップと、前記出力された一連のゾーン出力キーに関連付けられている期待される一連のゾーン出力キーを決定するために、前記選択されたゾーンレイアウト定義に対して所定の一連の文字を適用するステップと、前記出力された一連のゾーン出力キーを前記期待される一連のゾーン出力キーと比較することにより、前記出力された一連のゾーン出力キーと前記期待される一連のゾーン出力キーとの間の合致を決定するステップとを含む、方法。前記ゾーンレイアウト定義は、既定数のゾーン定義を通して順序付けることによって選択される、請求項29に記載の方法。前記ゾーンレイアウト定義は、1つ以上の所定の係数への既定のアルゴリズムの適用によって選択される、請求項29に記載の方法。ゾーンレイアウト定義における各ゾーンは、隣接する一群のキーを含む、請求項29に記載の方法。ゾーンレイアウト定義における少なくとも1つのゾーンは、非隣接キーを含む、請求項29に記載の方法。ゾーンの中の1つのキーが選択されると、前記ゾーンに関連付けられているキーの全ては、選択されたものとして示される、請求項29に記載の方法。特定の選択された入力キーを含むゾーンに関連付けられている前記ゾーン出力キーは、前記ゾーンの中の他のキーとは異なって示される、請求項29に記載の方法。前記ゾーンは、QWERTYキーボードレイアウトから定義される、請求項29に記載の方法。少なくとも1つのキーが、複数のゾーンに関連付けられている、請求項29に記載の方法。パスワードは、前記出力された一連のゾーン出力キーが、前記期待される一連のゾーン出力キーと合致する場合に容認される、請求項29に記載の方法。ユーザは、前記パスワードの容認を通知される、請求項29に記載の方法。一連のプログラム命令を記憶するように構成されているメモリと、プロセッサ電子機器とを含み、前記プロセッサ電子機器は、入力選択デバイスを複数のゾーンに分割することであって、各ゾーンは、少なくとも1つのゾーン出力キーに対応する2つ以上の入力キーを含む、ことと、複数の入力を受信することであって、各入力は、前記複数のゾーンのうちの1つにおけるキーの選択に関連付けられている、ことと、受信された前記複数の入力の各々に対応する複数のゾーン出力キーを出力することとによるデータ伝送の方法を行うために、前記プログラム命令を実行するように構成されている、コンピュータシステム。プログラムされた命令を記憶するように構成されているメモリと、プロセッサ電子機器と、を含み、前記プロセッサ電子機器は、2つ以上の異なるモダリティでユーザから入力を受信することであって、前記入力は、入力されたテキストを示す、ことと、前記入力されたテキストに対応する1つ以上の言葉の選択を決定するために、前記2つ以上のモダリティの各々における前記入力を分析することと、前記2つ以上のモダリティの各々から決定される前記言葉の選択を使用して、前記入力されたテキストに対応する言葉を選択する、こととによるユーザからテキスト入力を受信する方法を行うために、前記プログラムされた命令を実行するように構成されている、コンピュータシステム。前記命令は、前記2つ以上のモダリティの各々から選択される前記言葉の選択を、前記入力されたテキストに対応する言葉を選択する前記ユーザに提示するために、前記プロセッサ電子機器によって実行可能である、請求項41に記載のコンピュータシステム。前記コンピュータは、キーボードとマイクロホンとを含み、前記命令は、前記キーボード上の入力および前記マイクロホンによって受信される音声入力を介して、前記ユーザから入力を受信するために、前記プロセッサによって実行可能である、請求項41に記載のコンピュータシステム。前記コンピュータは、触覚入力とマイクロホンとを含み、前記命令は、前記触覚入力上の入力および前記マイクロホンによって受信される音声入力を介して、前記ユーザから入力を受信するために、前記プロセッサによって実行可能である、請求項41に記載のコンピュータシステム。前記メモリは、キーボード上の入力からテキストへのマッピングを記憶している、請求項41に記載のコンピュータシステム。前記メモリは、前記ユーザによって入力されるテキストに対応する可能性が高い言葉のデータベースを記憶し、前記データベースは、前記データベースの中の言葉が、前記ユーザによってどの程度頻繁に選択されたかを記録している、請求項41に記載のコンピュータシステム。前記メモリは、前記ユーザによって入力されるテキストに対応する可能性が高い言葉のデータベースを記憶し、前記データベースは、前記データベースの中の言葉が、前記ユーザによってどの程度最近に選択されたかを記録している、請求項41に記載のコンピュータシステム。前記命令は、前記プロセッサに、前記ユーザによって講じられた最近の措置を決定させ、前記ユーザによって講じられた最近の措置に対応する言葉の選択を選択させる、請求項41に記載のコンピュータシステム。前記ユーザによって講じられた最近の措置は、使用されたプログラム、閲覧された文書、訪問されたインターネットサイト、および/または体験された音声/ビデオコンテンツのうちの1つ以上を含む、請求項48に記載のコンピュータシステム。前記命令は、前記プロセッサに、前記ユーザの場所を決定させ、前記ユーザの場所に対応する言葉の選択を選択させる、請求項41に記載のコンピュータシステム。ここで、開示された技術の種々の実施例を説明する。以下の説明は、これらの実施例を徹底的に理解し、説明を可能にするために具体的詳細を提供する。しかしながら、当業者であれば、これらの詳細の多くがなくても、開示された技術が実践され得ることを理解するであろう。同様に、当業者であれば、開示された技術が、本明細書で詳細に説明されていない多くの他の明白な特徴を含み得ることも理解するであろう。加えて、関連説明を不必要に曖昧にすることを回避するように、いくつかの周知の構造または機能が、以下で詳細に図示または説明されないこともある。以下で使用される用語は、たとえ開示された技術のある具体的実施例の詳細な説明と併せて使用されていても、その最も広い妥当な方式で解釈されるものである。実際に、ある用語は、以下で強調さえされ得るが、制限された方式で解釈されることを目的としている任意の用語は、この発明を実施するための形態の項の中等で、明白かつ具体的に定義される。I.企業/クラウド環境以下でさらに詳細に説明されるように、本明細書で説明される技術は、ユーザが、テキストをデバイスに、具体的にはモバイルデバイスに入力することができる、速度および精度を増加させるためのシステムおよび方法に関する。1つの環境によれば、ユーザによるテキストの入力時に、そのようなテキスト入力を表すデータは、インターネット、無線通信システム、または遠隔集中サーバへの他の適切なデータ伝送方法を介して、集中場所に伝送される。図1を最初に参照すると、開示された技術による第1の実施形態が示されている。図1では、1つ以上の遠隔に位置するデバイスが示されている。デバイスは、携帯電話、スマートフォン、ネットブック、またはラップトップコンピュータ、あるいは同等物を含む。これらのデバイスのそれぞれは、好ましくは、当業者に周知であるように、標準インターネット接続または他の専用無線あるいは有線通信システム等の通信システムが提供される。したがって、遠隔デバイスのうちの1つ以上で講じられた措置または入力されたデータは、適宜に集中企業サーバに伝達される。そのような同期通信は、例えば、Eメールが送信または受信される時に、企業Eメール受信箱または送信箱を更新することを含み得る。従来、これらの遠隔デバイスのそれぞれは、デバイス上で全ての主要機能を果たし、上述のように、Eメールのユーザ等の企業サーバと情報を同期させる。開示された技術の一実施形態によれば、遠隔に位置するデバイスのうちの1つ以上での実装に以前は限定されていた、ある機能が、企業サーバに移転され、したがって、企業システムの全てのユーザに、より同様のユーザ体験を提供する。特に、上述のように、遠隔に位置するデバイスのうちの1つ以上にテキストを入力する場合に、典型的には、テキスト修正ならびにテキスト入力の言葉の自動提案および自動記入に関する、全ての機能性が、遠隔に位置するデバイス上で保持された情報に従って行われる。したがって、そのような選択で使用されるデータおよび同等物の更新に関係する問題、特に、Eメールアドレス等の企業規模で潜在的に頻繁に更新される情報と関連する問題が存在する。したがって、Eメールアドレスリストが、企業ユーザのグループ全体にわたる特定の企業について更新された場合、そのような更新は、遠隔に位置するデバイスのうちの1つ以上に伝送されないことがある。企業が十分に大きい場合、Eメールリスト全体をそのような遠隔デバイスにダウンロードすることが実践可能ではない場合がある。したがって、遠隔デバイスは、限定数のテキスト入力を有するローカルキャッシュを維持し、典型的には、そのような入力は、ローカルに維持されたアドレスリスト等に従って決定される。Eメールアドレスが、特定の指示された個人について見出されない場合、ユーザは、遠隔サーバ上でEメールアドレスを検索するというオプションを提供され得るが、この過程は、ユーザによって行われる付加的なステップを必要とする。さらに、個別企業ユーザのユーザ体験へのそのようなシステムの自動統合はない。さらに、企業サーバ上に記憶された情報へのアクセスを求める前に、ユーザがテキスト入力を完了しなければならないので、そのようなシステムは、エラートレラントなテキスト入力errortoleranttextentryを採用しないことがある。したがって、従来、言葉の完全な辞書が遠隔に位置するデバイス上で利用可能ではない場合に、そのようなシステムがユーザの意図を決定するためのテキスト入力に役立つための方法がなかった。したがって、開示された技術によれば、集中データベース場所から提案されたテキスト入力情報を選択するために、そのようなエラートレラントなテキスト入力を使用しながら、遠隔デバイスレベルでエラートレラントなテキスト入力技法を採用する方法および装置が提供される。例えば、開示された技術の一実施形態では、それぞれが1つ以上のキーを含む、好ましくは9つ、または他の適切な数のゾーンをユーザに提供することによって、エラートレラントなテキスト入力がユーザに提供される。ゾーンが選択される場合に、ゾーンを構成する既定数のキーも選択される。革新的ソフトウェアは、各個別キーが選択されることを必要とするよりもむしろ、ゾーン選択シーケンスに基づいて、所望の選択された言葉を決定することが可能であり得る。そのようなゾーンテキスト入力方法の一実施例のより詳細な説明は、METHODANDAPPARATUSFORTEXTENTRYと題された、2009年7月10日出願の米国特許出願第12/500,675号で説明されており、その内容は、参照することにより本明細書に組み込まれる。開示された技術の他の実施形態では、そのようなゾーンキー入力は、そのようなゾーンの指示をユーザに提供することなく、背景で行われ得る。したがって、ユーザが、タイプする時に可能な限り正確となるように促され得る一方で、多大な精度は必要ではない。その内容が参照することにより本明細書に組み込まれる、APROBABILITY-BASEDAPPROACHTORECOGNITIONOFUSER-ENTEREDDATAと題された2007年6月14日出願のMatthewCecilらへの同時譲渡米国特許出願第12/186,425号で説明されているもの等の他のエラートレラントなテキスト入力システムもまた、採用され得る。開示された技術のなおもさらなる実施形態では、より従来的なテキスト入力システム、および他の公知の予測テキスト入力システムが採用され得る。さらに、開示された技術の側面によれば、開示された技術の特定の実施形態では、エラートレラントなテキスト入力システムが、上記で参照される米国特許出願第12/500,675号で説明されているように提供され得る。したがって、遠隔に位置するデバイス上に位置する完全な言葉の辞書を有することなく、説明されたゾーン入力テキストシステムが、そのような遠隔に位置するデバイス上で採用され得る。そのようなエラートレラントなテキスト入力システムはまた、ユーザに表示されない方式でゾーン定義を維持し得る。最終的に、他のエラートレラントなテキスト入力システムもまた、本開示された技術に従って採用され得る。次に図2を参照すると、ユーザは、最初に、ステップ210で、特定の遠隔に位置するコンピューティングデバイスに付随する提供されたテキスト入力システムに従って、テキストを入力する。本開示された技術の好ましい実施形態では、ユーザが、12/500,675出願のゾーン入力システムの使用、または任意の他のエラートレラントなテキスト入力システムを通して、1つ以上のキーを入力する際に、初期テキスト入力処理ステップが行われ、ユーザによって意図され得る、可能な文字シーケンスを決定し始める。したがって、辞書検索はこの時に行われないが、むしろ遠隔に位置するコンピューティングデバイス上でローカルに行われ、テキスト入力に関係する情報が、辞書検索において後で使用されるために決定される。その後、ステップ230では、予測テキスト入力情報を企業サーバに伝送することによって、辞書検索または他のデータベース検索のうちの1つ以上が行われる。重要なことには、それは、単に伝送される入力されたテキストキーではないが、むしろ、初期エラートレラントなテキスト入力処理に従って決定されているような、そのようなデータが伝送される。開示された技術の好ましい実施形態によれば、ユーザによって入力される各キーについて、選択されたキーを伴うゾーンの中にあることが定義された全ての他のキーが、これらのゾーンが固定されるか動的であるか、ユーザに利用可能であるか否かにかかわらず、開示された技術に従って、さらなる処理のために企業サーバに伝送される。そのようにして、1つ以上の遠隔デバイスのうちのいずれかで入力される受信された予測テキスト入力情報を、任意の数の一貫して維持された企業規模のデータベースに適用することができる。図3は、キーがいくつかのゾーンの中にあるように分割される、キーボード100を示す。したがって、第12/500,675号出願のエラートレラントなテキスト入力システムで説明される開示された技術によれば、特定のゾーンを示す1つ以上のキーがキーボード100から選択される度に、選択されたキーによって表されるゾーンの中のキーの全てが、予測テキストアルゴリズムに渡される。一実施形態では、各ゾーンの中で選択されたキーによって表される言葉の候補がローカルで決定され、企業サーバに伝送される。別の実施形態では、ユーザによって選択されるゾーンのリストが、可能な言葉の候補のリストを決定するように企業サーバに送信される。可能な言葉のリストは、ユーザへの可能な言葉の選択の1つ以上の提案を決定するために、企業サーバによって分析され、1つ以上の提案は、310において図3で示されるように、遠隔に位置するデバイスの画面上に表示される。これらの言葉の選択330は、選択されたキーのゾーンに関連付けられている各入力キーの全てを考慮して、入力されたキーシーケンスに基づく。320では、ユーザによって選択される一連のキーが示される。言葉の選択340は、企業サーバ上に位置する1つ以上の適用可能なデータベースから決定されるような、ユーザによって意図されていると決定される、最も可能性が高い、または最もよく見られる言葉を描写する。企業サーバによる、これらの言葉の提案の決定時に、それらは、遠隔に位置するデバイスに返送され、図2のステップ240でのユーザによる選択のために図3に示されるようにユーザに表示される。ステップ250で、提案された言葉を選択することにより、入力された言葉を選択された提案と置換する。言葉のうちのいずれも選択されない場合、処理は図2のステップ210に戻り、そこでさらなるテキスト入力がユーザから受信される。そのような付加的なテキスト入力時に、上述のステップが再び行われ、したがって、ユーザ選択のために潜在的に異なる言葉を提供するか、またはユーザのために選択を絞り込む。ユーザによって提示された言葉のうちの1つが選択されると、そのような選択された言葉が遠隔に位置するコンピューティングデバイスに入力され、ユーザによる別のテキストシーケンスの入力まで処理が終了する。開示された技術の代替実施形態では、特定の辞書の決定されたサイズに基づいて、遠隔デバイスにおける処理を加速するために、ユーザによるテキスト入力の開始前に、辞書を遠隔デバイスにダウンロードすることが有益であることが認められ得る。したがって、書式等の中の特定のフィールドへの入力が少数の可能な入力に限定される場合において、ユーザによるフィールドの入力時にそのような辞書をダウンロードすることは、単一のデータ転送のみが採用されることを可能にし得る。同様に、ユーザがいくつかのフィールドを伴う書式等を訪問している場合、特定の書式の中のフィールドのそれぞれのための辞書が、事前に、または書式の第1のフィールドの入力時にダウンロードされ得る。当然ながら、任意の特定のフィールドが非常に大型の辞書を有することが分かった場合、企業サーバ上のこの辞書へのアクセスが、上述のように提供され得る。ユーザは、言葉をその辞書に追加するようにシステムを訓練することができ、または言葉が入力された事前設定された回数後に、自動的に言葉を追加するようにシステムを設定することができる。したがって、開示された技術によれば、企業規模のプラットフォームで辞書を修正することができるだけでなく、遠隔に位置するコンピューティングデバイスを採用する特定のユーザによるテキストの入力が、任意の企業ユーザによる後続の使用のために、データベースまたは辞書へのそのようなテキスト入力の追加をもたらし得る。当然ながら、ローカルデータベースも、全体として企業に利用可能となる必要がないテキスト入力のために維持され得る。例示的な予測テキストアルゴリズムが、上記で参照される米国特許出願第12/186,425号で描写されている。本開示された技術に従って利用される、そのようなアルゴリズムは、開示された技術の予測テキスト要件に対処する。遠隔に位置するコンピューティングデバイスのうちの1つ以上の上でユーザに提供されるユーザインターフェースが、文字または1つ以上の選択されたゾーンに関連付けられている文字列を企業の場所におけるアルゴリズムに提供し、アルゴリズムは、その一組の文字を解釈し、1つ以上の提案された言葉の選択の形態で、企業サーバからの結果を遠隔に位置するコンピューティングデバイスにおけるユーザインターフェースに返信する。代替として、企業サーバは、言葉の選択を適正に解析できないという指示を返信し、それにより、ユーザがまだ今のところ十分な文字を入力していないことを示し得る。一実施形態では、特定の個別ユーザに従った、または完全な一組の企業ユーザの集合的体験に従った、ユーザコンテキスト、履歴、または同等物が、そのような提案された言葉の選択に役立つために採用され得る。加えて、説明された予測テキストアルゴリズムが採用され得る一方で、本開示された技術は、任意の適切なテキスト解析または予測テキストアルゴリズムとともに使用され得る。確率行列を使用して、予測テキストアルゴリズムは、押された各文字について、ユーザが、左側、右側、上側、または下側の文字、または上記で説明されるように示されたゾーンの中の他の文字を意味した可能性があることを知る。いったんアルゴリズムが、選択されたキーに関連付けられているキーに基づいてどの文字がありそうかを知ると、次いで、アルゴリズムは、上記で参照される第‘425号出願でより完全に説明されるように、複数の企業ユーザにアクセス可能であるような企業サーバの場所で好ましくは提供される、辞書に対して検索を実行する。起こり得る文字列に合致する任意の言葉が指定され、次いで、好ましくは、文字間の距離、頻度、確率、およびユーザ意図を示し得る任意の数の他の特性に基づいて採点され得る。システムはまた、より高い選択の確率を、特定のユーザの頻繁に使用されているパターンに、または企業環境内のユーザの特定のグループに与えることを経時的に採用し得る。したがって、たとえ特定のユーザが共通集中企業辞書またはデータベースから言葉を選択していても、予測機構がそのユーザのために個人化され得る。そのような個人化は、既定の先行期間中の特定のユーザによる言葉の選択の頻度に基づいて、選択を提供することを含み得る。したがって、ユーザが特定の言葉を多く使用するほど、それが再び選択され得る可能性が高くなり、それがユーザに提案される可能性が高くなる。この個人化は、ユーザが集中型の企業規模のEメールリストからEメールアドレスを入力している時等の状況で、特に有用であり得る。特定のユーザがEメールを1人以上の特定の受信者に送信する際に、これらの受信者の名前は、将来ユーザによって入力される可能性が高い。さらに、そのような個人化は、1人の個人に限定される必要はない。むしろ、特定のEメールアドレスの入力が、人々のグループ等について蓄積され得、したがって、部門等が、Eメールアドレスの好ましいリストを生成することを可能にする。この選択はまた、テキスト入力システムに従って選択され得る、標準の言葉または他のシーケンスに適用され得る。そのような個人化は、ごく最近または最も頻繁に選択される言葉またはEメールアドレスが最初にユーザに提供され、その時以前に、または低頻度で選択された言葉がその後に続く、加重選択システムを提供し得る。別の実施形態では、ユーザ辞書の個人化は、よくまたは最近ユーザによって選択された言葉に限定されない。辞書はまた、ユーザの最近の挙動に基づいてカスタマイズされ得る。ユーザが特定の話題に専念したウェブページについてインターネットを検索している場合、これらのウェブページからの言葉を、よく起こり得る選択として分類し、辞書に追加することができる。例えば、ユーザが、食品および料理に関連付けられているウェブページを遠隔デバイス上で閲覧している場合、ユーザがdisertというキーを入力すると、言葉検索アルゴリズムが、desertという言葉の前にdessertという言葉を提案するために最近の履歴を使用する。同様に、時間的および地理的配慮を、テキスト選択アルゴリズムによって使用することができる。例えば、遠隔デバイスのGPS場所を検出し、企業サーバに送信することができる。ユーザが山の中に位置することが分かっている場合、テキスト予測アルゴリズムは、howisthesnorというテキスト入力が、HowistheshowではなくHowisthesnowとなるべきであると提案するように訓練される。この実施形態では、辞書をカスタマイズするため、または最近の挙動に基づいてユーザにとって起こり得る言葉の選択に役立つために、最近の閲覧履歴、現在の場所、読んだEメール、GPSの場所等に関する情報が、企業サーバに送信され、ユーザに関連付けられているファイルの中で維持される。図3で見ることができるように、表示されたキーボードは、完全QWERTYキーボードを表すが、任意の他の所望の構成を備え得る。そのようなキーボードは、仮想キーボード、またはテキスト入力のために提供される1つ以上の文字に関連付けられているハードキーを含む物理的キーボードを備え得る。開示された技術は、概して、そのようなキーボードを参照するものとして説明されているが、任意の数の入力デバイス、機構、またはスキームが採用され得る。開示された技術は、同様に、9または12キー数字パッドまたは4方向キーを伴う従来の携帯電話上でのテキスト入力に適用可能である。開示された技術は、AppleIpod登録商標デバイス上で提供されるもの等のスクロール型ホイールの使用に適用可能であり得る。そのような状況では、スクロールホイールに沿った移動が、ゾーン選択の円に沿った移動をもたらすように、円形構成でゾーンを定義することが有益であり得る。開示された技術はまた、スクローリングデバイスを使用する、またはそうでなければ、1つだけ、あるいは2つの方向指示キーを含む、モバイルまたは他のデバイスに適用され得る。スクローリングデバイス、または1つあるいは2つの方向キーを用いて、方向キーをスクロールまたは利用すると、ユーザが所定のゾーンのそれぞれを通して進められ、現在選択されているゾーンをハイライトする、または別様に示すように、所定のゾーンが、好ましくは、おそらく左右、次いで、上下等の所定のシーケンスによって提供される。スクローリングデバイスを押すこと、または他の選択の方法は、ユーザがゾーンを選択することを可能にし、次いで、スクローリングは、選択のために次のゾーンへ移動するために採用される。開示された技術はさらに、ユーザが投影キーボードに触れる場所を種々の感知機構が決定する、投影キーボードに適用され得る。そのような感知の精度は、おそらく決定し難いため、ユーザがより少数のより大きいゾーンから選択することを可能にすることが、極めて有益となる。II.マイクロジェスチャ入力開示された技術の別の側面によれば、エラートレラントな予測テキストアルゴリズムを活用する、高速テキスト入力システムおよび方法が提供される。ユーザは、慣れたQWERTYキーボードを採用し、言葉全体未満を含む、2つまたは3つの文字のより短いマイクロジェスチャを入力することができる。より短い言葉を、1つのそのようなマイクロジェスチャで入力することができる一方で、より長い言葉は、2つ以上のマイクロジェスチャを使用し得る。したがって、以下で説明されるテキスト入力システムは、以前のシステムの少なくとも1つの主要な欠点を克服し、すなわち、ユーザが指を持ち上げることなく、意図した言葉の入力全体を入力するという要件を克服し、したがって、意図した言葉全体の単一のトレースを提供する。一実施形態によれば、テキスト入力システムは、各マイクロジェスチャの開始および終了場所に留意する。さらに、屈曲がユーザによって入力されたマイクロジェスチャで検出された場合、第3の中間文字が意図されたことが決定される。いくつかの異なる方法が、意図した中間文字を決定するために使用され得る。第1に、マイクロジェスチャの屈曲の場所が決定され得る。第2に、開始および終点入力が与えられた場合、いくつかの可能な次の文字のテキスト入力の間で選択するのに役立つように、開始位置から移動させられた方向がテキスト解析アルゴリズムに提供され得る。代替として、そのような屈曲の存在の認識が決定され、したがって、中間文字が意図されたことを示す。次いで、テキスト解析アルゴリズムは、より従来的なテキスト入力システムにおいて欠落している文字に遭遇したかのように、付加的な助けなしで、そのような文字を決定することを支援し得る。いったん第1のマイクロジェスチャが決定されると、選択された文字がテキスト選択アルゴリズムに入力され、言葉の提案等が、より従来的な形式でユーザに提供される。いずれの言葉も選択されない場合、次のキーのタップ、または次のマイクロジェスチャが、同じより長い言葉のテキスト入力の一部であると決定される。一実施形態では、ユーザが、持ち上げ、入力されるそれぞれの意図した文字を押す代わりに、キーボード上のいくつかの文字の間で指をスライドする。より便利であり、連続して指を持ち上げて各キーを押すことが必要とされる場合に、ユーザが間違ったキーをタップする場合がある、従来のタップ入力システムと比較して、テキスト入力エラーの可能性を低減するため、一部のユーザは、各文字を個別にタップする代わりに、隣接する文字へのそのようなスライドを好むと決定されている。さらに、ユーザは、任意の種類の反復のストレスの問題を回避することができ、より迅速にテキストを入力することが可能であり得る。より小さい、典型的には可動式のタッチスクリーンデバイスを使用する場合に、ユーザは、概して、より従来的な通常のラップトップ/PCキーボードのように、全ての指の代わりに、1本または2本の指を使用してタイプすることが分かっている。1本だけ/2本の指の使用は、指の疲労をもたらし、ユーザがタッチスクリーンデバイス上でタイプするのを思いとどまらせ得る。入力される各文字のために、指を持ち上げて配置するという必要な行為はしばしば、手根管症候群等の反復性のストレス障害に関連付けられている。開示された技術の実施形態によれば、ユーザは、指をスライドしていくつかの文字を入力する、または所望に応じて特定の文字の入力をタップするオプションを有する。したがって、従来のテキスト入力システムのようにタップすること、または上記で記載される従来技術の特許で記述されるような言葉全体に対する文字をトレースすることを必要とするよりもむしろ、ユーザは、好みの通りにテキストを入力するオプションおよび融通性を有する。そのような選好は、特定の入力デバイス、入力されている特定の言葉等に基づき得る。最終的に、ユーザは、最も融通性のあるオプションが提供され、利便性に基づいて、マイクロジェスチャ、タップすること、または両方の組み合わせで入力することを選択することができる。マイクロジェスチャは、ユーザが単一のマイクロジェスチャで一度に2つまたは3つの文字を選択することを可能にする。そのようなマイクロジェスチャの1つのさらなる利益は、予測テキストアルゴリズムが対応する言葉を提案し始める前に、ユーザが言葉の完全経路を精神的または身体的にトレースする必要がないことである。より長い言葉の経路をトレースすることは、紛らわしく、困難となり得る。ユーザは、言葉のどの文字をすでに入力したかを忘れる傾向があり、スペルミスをする傾向がある。長い言葉の経路をトレースすることはまた、精神的および/または身体的な疲労をもたらす場合がある。さらに、言葉全体をトレースする経路を受信する装置は、入力データを処理する前に、その言葉の完成を待たなければならないので、そのようなテキスト入力の自動完了、または可能な意図した言葉の入力の提案を提供することが可能ではない。したがって、ユーザは、言葉全体の完全追跡を完了しなければならず、その時初めて、システムが言葉の提案を提供することができる。開示された技術のマイクロジェスチャ入力システムはまた、アルファベットが単一のキーボードに適合せず、したがって、代替/ファンクション/シフトキーボードから文字を得ることを必要とする、言語のテキストまたは言葉を入力するためにも有用である。しかしながら、各マイクロジェスチャの完了時に、開示された技術の一実施形態によるシステムは、入力を自動完了させることができる。そのような自動完了を使用する能力は、ユーザが部分的な言葉のみを入力し、提供される提案から選択することを可能にする。ユーザがしばしば、単に第1のマイクロジェスチャを入力した後に、所望の入力された言葉を選択することができるようになるので、これは、ユーザ体験を増進し、より高速のテキスト入力に役立ち、言葉全体の追跡を必要とする従来技術のシステムとくらべてさらに向上する。このようにして、開示された技術による予測テキストアルゴリズムは、滑動すること、またはタップすることに対してエラートレラントな入力をサポートする。ユーザは、テキストを入力するのが雑となり得て、所望の言葉を得るために正確な文字入力を提供する必要がない。事実上、マイクロジェスチャ入力で選択される文字は、従来のテキスト入力システムでタップされたかのようにテキスト解析アルゴリズムによって見なされる。したがって、既存のテキスト解析アルゴリズムを活用することができ、はるかに単純かつ融通性のあるシステムがユーザに提供される。したがって、欠落した、および/または正しくない文字を受信することができ、システムは依然として、ユーザによる正しく意図されたテキスト入力を決定することができる。滑動の使用を通してテキスト入力のための文字を選択することにより、ユーザが、図4の実施例によって示されるような言葉の全てよりも少ない文字の経路をトレースすることを可能にする。この実施例によれば、ユーザが言葉INPUTを入力することに関心があると仮定される。従来、ユーザは、5つのキーのそれぞれをタップする。5つのキーの全てをタップした場合、言葉の入力がユーザに提示される。しかしながら、開示された技術の実施形態によれば、ユーザは、5つの文字のそれぞれをタップする必要がなく、実際に、所望の文字を入力するために1つ以上のマイクロジェスチャ滑動を採用し得る。開示された技術にしたがって、言葉INPUTを入力するためのいくつかの異なるシ-ケンスがある。図4に示されるように、ユーザは、i-n-pの上で指を滑らせ、u、tという文字をタップすることができる。上記の図で示されるように、ユーザは、iにおいてマイクロジェスチャ滑動を開始し、次いで、nへと滑らせ、pにおいてマイクロジェスチャ滑動を終了する。その後、uおよびtという文字が、完全な言葉を入力するようにタップされる。以下の代替的な入力順はまた、テキスト予測アルゴリズムによって言葉INPUTを認識させる。i-n-pを滑らせ、u-tを滑らせる。i、nをタップし、p-u-tを滑らせる。i、n、pをタップし、u-tを滑らせる。ユーザ体験をさらに容易にするために、ユーザによって入力される任意の滑動またはタップは、十分なフィードバックをユーザに提供して、何が入力されたかを決定するために、ある期間にわたって表示上で維持され得る。しかしながら、上述のように、滑動入力のそのような維持は、ユーザだけに有用であり、好ましくは、ユーザ入力を決定することで役割を果たさなくてもよい当然ながら、開示された技術の代替実施形態では、テキスト入力を決定するために、そのような滑動場所を使用することが可能となる。したがって、図4に示されるトレースは、ユーザがデバイス上で観察し得る経路を示すが、内部で、開示された技術によるテキスト予測アルゴリズムは、好ましくは異なり、ユーザによって入力された滑動の最初および最後の文字を追跡するのみである。中間文字は、該当する場合、滑動の最初および最後の文字の間の移動方向に関連付けられているベクトルを使用して、またはあまり好ましくないが、ユーザによって入力される滑動における屈曲の近似場所を使用して解読される。したがって、開示された技術によれば、本発明のアルゴリズムは、特定の最初の滑動と、該当する場合、中間文字とともに、最初および最後の文字入力を使用することによって、データベースから言葉を見出そうとする。滑動における屈曲の決定、または3文字グライダを仮定したワイルドカード文字の使用に基づいて、テキスト予測アルゴリズムが結果を返す。次いで、中間文字がユーザによって描かれるようなベクトル方向を満たさない言葉をフィルタにかけるように、さらなる計算が行われ得る。以下の実施例は、そのような滑動およびベクトルアルゴリズムの使用をさらに描写する。ユーザがt-h-eという経路をトレースする場合、hは、tの下側および右側にある。アルゴリズムの最初の通過は、tie、toe、およびtheのような言葉を返す。最初の文字tを入力した後の移動のベクトルを見ると、ユーザがhという文字に向かって下方に移動したと決定することができる。oおよびiの両方は、tという文字の右側にあるため、アルゴリズムが見出す、より近いオプションがあるので、破棄されるまたはより低い値の選択としてユーザに提供される。潜在的な提案の選択theからのhという文字は、入力のベクトル近接性をより密接に満たし、したがって、好ましくは中間文字として選択される。さらに、エラートレラントなテキスト入力が提供され得、したがって、ユーザは、r-j-wをトレースし、依然として提案された言葉としてtheを得ることができる。jという文字は、rという文字の下方および右側に位置し、hという文字は、tという文字の下方および右側に位置する。両方のベクトルがごく接近しているため、hという文字が中間文字として選択される。ここで、ベクトル方向の説明が記載され、その内容全体が参照することにより本明細書に組み込まれる、DATAENTRYSYSTEMANDMETHODOFENTERINGDATAと題された2007年6月14日出願のSharanらへの米国特許出願第12/091,700号でより完全に説明されている。開示された技術は、平行移動、すなわち、ユーザによって連続的に作動させられる時の別のキーに対する1つのキーの方向に関して、ユーザ入力を有利に符号化する。平行移動は、好ましくは、一組の既定の主要な方向内でコード化され、これらは、2つの連続キー作動の間でとられることができる全ての可能な方向の削減された組である。削減された組の一実施例は、上、下、左、および右といった4つの方向となる。したがって、とられた実際の方向に従って各平行移動を登録するよりもむしろ、システムは、好ましくは、削減された組のうちの1つを割り当てる。例えば、2つの作動の間の実際の移動方向が垂直から10°外れている場合、平行移動は、例えば、上に割り当てられ、これは、主要な方向のうち実際の10°の先頭方位に最も近い。全ての平行移動方向が、例えば、上、下、左、および右への縮小グループ内で分類されるように、無限数から少数へ可能な方向を削減することは、多くの異種の平行方向が、同じ主要方向を割り当てられることを意味する。例えば、真っ直ぐ上の方向に対して最大±44°の方位を伴う全ての移動には、上という同じ主要方向を割り当てることができる。また、これは、キーボード上の多くの異なる点で起こる同じ垂直運動を全て単純に上によって表すことができるように、同じ実際の方位を伴う平行移動を含むが、完全に異なる始点を伴う。本開示された技術のマイクロジェスチャテキスト入力システムに従って使用するための例示的な予測テキストアルゴリズムは、上記で参照される米国特許出願第12/186,425号で説明されている。本開示された技術に従って利用される、そのようなアルゴリズムは、開示された技術の予測テキスト要件に対処する。ユーザインターフェースは、アルゴリズムに文字または特定のジャンパ点およびゾーンに関連付けられている文字列を渡し、アルゴリズムは、その文字または複数の文字を解釈し、1つ以上の提案された言葉の選択の形態でユーザインターフェースに結果を返し、または、言葉の選択を適正に解析できないという指示を返し、それにより、ユーザがまだ今のところ十分な文字を入力していないことを示し得る。当然ながら、ユーザコンテキスト、履歴、または同等物が、そのような提案された言葉の選択に役立つために採用され得る。加えて、説明された予測テキストアルゴリズムが採用され得る一方で、本開示された技術は、任意の適切なテキスト解析または予測テキストアルゴリズムとともに使用され得る。ジャンプ点をいくつかの異なる入力と関連付けることができ、これらの入力を互に区別し、ユーザによる意図した入力を選択するために使用することができる限り、開示された技術が採用され得る。したがって、確率行列を使用して、アルゴリズムは、押された各文字について、ユーザが、左側、右側、上側、または下側の文字、または上記で説明されるような技術に従って示されたゾーンの中の他の文字を意味した可能性があることを知る。いったんアルゴリズムが、選択されたジャンパ点に関連付けられているキー、または代替として、ユーザ意図の動的または他の決定に基づいてどの文字があり得るか、すなわち、たとえ所定のゾーンが提供されていなくても、どの文字をユーザが意図した可能性が高いかを知ると、次いで、アルゴリズムは、上記で参照される第‘425号出願でより完全に説明されるように、辞書に対して検索を実行する。起こり得る文字列に合致する任意の言葉が指定され、次いで、好ましくは、ユーザ意図を示し得る、文字間の距離、頻度、確率、および任意の数の他の特性に基づいて採点され得る。システムはまた、より高い選択の確率を、特定のユーザの頻繁に使用されているパターンに与えることを経時的に採用することができる。したがって、予測機構が特定のユーザのために個人化され得る。加えて、開示された技術に従って、ユーザ意図を決定することに役立つために、提案されたシステムの予測アルゴリズムは、従来の辞書に依存することに加えて、入力がEメール、チャット、検索、または同等物のためのものであるかどうか、またはテキスト入力が特定のテレビ番組中に、または音楽アプリケーションが楽曲を演奏している間に行われているかどうかを決定すること等の、特定のテキスト入力のコンテキストを決定することによって、ユーザ意図をさらに決定しようとし得る。ユーザが異なる言葉および/または他の言語の違いを使用する可能性が高い程度に、そのようなコンテキスト決定は、予測テキストアルゴリズムの精度に役立ち得る。アルゴリズムはまた、予測の信頼性を向上させるように、ユーザの連絡先リストおよび同等物等の1つ以上のデータベースのコンテンツである、記憶されたコンテンツからの情報に関する情報を受信し得る。そのようなコンテキストは、テキスト入力に使用されているデバイス内で記憶されるか、またはインターネットあるいは他の利用可能なネットワーク上でアクセス可能なデータベースに遠隔で記憶され得る。次いで、言葉のリストは、そのスコアに基づいて仕分けられ、ユーザインターフェースに返される。したがって、開示された技術は、ユーザ意図につき、曖昧ではない入力の中へ近似入力をマップするために、入力言語または可能な入力機能性における冗長性を使用する。加えて、ユーザ入力を決定する場合に、デバイス特徴および機能性が考慮され得、したがって、そのような入力を決定する場合に、デバイス制限を考慮する。本開示された技術は、一実施形態では、第‘425号出願の予測テキストアルゴリズムを採用して説明されているが、他のテキスト解析アルゴリズムを使用することが可能である。1つのそのような代替的なテキスト入力システムは、その内容全体が参照することにより本明細書に組み込まれる、METHODANDAPPARATUSFORTEXTINPUTと題された2009年7月10日出願のSharanらへの米国特許出願第12/500,676号で説明されている。第‘676号出願は、キーボードを複数のゾーンに分割し、次いで、特定のゾーンの中の任意のテキスト入力がゾーンの中の文字の全ての選択であると見なすためのシステムおよび方法を説明する。したがって、ユーザは、テキストを入力する時にあまり正確ではないことが可能である。このシステムは、上記で説明されるマイクロジェスチャ入力方法と併せて使用され得、したがって、それぞれの決定された始点、終点、および任意のベクトル方向または屈曲決定は、意図した文字を含む、示されたゾーンのみを必要とし、したがって、ユーザにとってのテキスト入力の困難をさらに緩和する。加えて、開示された技術は、表示またはタッチスクリーンキーボードと接触を行うユーザについて説明されているが、接触を必要としないが、ユーザが特定のキー等に近接して指等を引くと、テキスト入力を可能にする場合がある、キーボードに等しく適用可能となる。マイクロジェスチャは、キーボードより上での最終キーへの指の移動を含み得、それは、ユーザが指を除去する時に入力されたと見なされる場合がある。したがって、処理は、上記で説明されるシステムおよび方法に従って進み得るが、キー選択および入力のための接触よりもむしろ、近接性の検出に依存する。開示された技術の方法およびシステムのための主要な使用は、小型モバイルデバイス、またはカメラ、携帯情報端末、ネットブック、および同等物等の他の小型電子デバイス用であり得るが、そのような入力システムは、例えば、リモートコントロール、あるいはWii登録商標コントローラまたは同等物等の他の入力デバイスを使用した、セットトップボックスまたはテレビ上での入力のために、等しく適用可能であり得る。したがって、ユーザは、キーまたはゾーンを指し示し、選択ボタンを押下し、ユーザが、所望に応じて第2の文字を通して、選択ボタンの解放によって示されるマイクロジェスチャの第3の最後の文字へインジケータを移動させながらボタンを長押しすることによって、入力を開始し得る。第‘676号出願におけるゾーン入力システムおよびそのようなリモートコントロールを採用する入力のより完全な説明は、参照することにより以前に本明細書に組み込まれている。実際に、本開示された技術は、リモートコントロール、Wii登録商標リモート、手ぶり、または他の入力技法を含むが、それらに限定されない、第‘676号出願で記述される任意の入力スキームまたは技術に適用可能であり得ることが検討される。III.好適なユーザインターフェース図5Aは、マルチモーダルユーザ入力例えば、タップ、トレース、ホバー、他の触覚入力および/または非触覚入力の混合を受信し、言葉を出力するために好適なユーザインターフェースを図示する。本明細書で説明されるユーザインターフェースは、携帯電話、携帯情報端末、携帯用オーディオシステム、ラップトップコンピュータウルトラモバイルパーソナルコンピュータを含む、デスクトップコンピュータ、他のコンピュータシステム、ビデオゲームシステム、テレビ、ならびに無数の他の消費者および業務用電子システムまたは器具例えば、冷蔵庫、キオスク等を含むを含むが、それらに限定されない、ユーザ入力を言葉に変換することが望ましい任意のシステムの一部を形成し得る。ユーザインターフェースは、例えば、指先による、またはスタイラスによるユーザからの触覚入力および視覚出力の両方を促進する、タッチスクリーンまたは同様の表示を含む。例証的な軸によって示されるように、表示上の各点は、独自のX-Y座標によって表され得る。加えて、図5Aに示されていないが、ユーザインターフェースは、タッチスクリーン内のシステム加速度計および/または圧力センサからの入力、音声入力、視覚入力等を含む、他の入力を受信し得る。加えて、ユーザインターフェースは、視覚出力、音声出力、触覚出力等を含む、他の出力を生じ得る。図5Aに示されるサンプル表示および他の描写された表示は、無線モバイルデバイス用であり、信号強度、無線通信事業者名、時間、バッテリ強度等の、あるシステム情報を提供する、上水平部分502を含む。上水平部分502より下側には、描写された表示の中ではEメールアプリケーションである、アプリケーション用のいくつかの情報および入力ボタンを含む、アプリケーションバー504がある。テキスト表示部分または出力領域506は、例えば、アプリケーションプログラムと関連付けられ得、ユーザによるテキスト入力を表示する。言葉の提案部分または言葉の選択領域508以下で説明されるは、ユーザ入力に基づいて提案された言葉をユーザに表示する。ユーザインターフェース表示は、仮想キーボードを表示し、その仮想キーボードからの文字選択を示す触覚ユーザ入力を受信するように構成される、仮想ソフトキーのキーボード領域510を下部に含む。示されるように、仮想キーボードは、表示上に特定のレイアウトで配置された複数の規定された領域を有する。各規定された領域は、キーを囲む。特殊機能キーを除いて、仮想キーボードの中の各キーは、本明細書でより詳細に説明されるように、1つ以上の文字に関連付けられている。本明細書で使用される場合、文字という用語は、アルファベット文字アクセント等の発音区別符を伴う、または伴わない、数字、日本語の仮名、韓国語の字母、および中国語の注音を含む、音声構成要素または言葉の従属構成要素を表す文字または記号、または略語、チャットスラング、顔文字、ユーザID、あるいはURLに含まれる数字および句読点等の別の言語および非言語的文字を含み得る。仮想キーボードの中の特殊機能キーは、テキスト情報の入力に関係する特殊機能の実施例えば、文字の大文字化、文字の削除に関連付けられている。特殊機能キーは、シフトキー、削除キー、例えば、数字および記号文字のより高速の入力に好適なキーボードレイアウトを選択するための数字入力キー、例えば、異なる文字セットをサポートする異なるキーボードレイアウトおよび/または仮想キーボードを選択するためのマルチキーボード選択キー、リターンキー、およびスペースキーを含み得るが、それらに限定されない。ユーザは、一連の文字の選択を示すために、本明細書でより詳細に説明されるように、異なる種類の触覚入力を仮想キーボード領域510に提供し得る。ユーザは、一組の触覚入力が、ユーザインターフェース表示にまたは別の出力時に示される出力領域506の中で特定の意図した言葉の形成を集合的にもたらすことを意図し得る。明確にするために、文脈が明確に他に要求しない限り、本明細書で使用されるような言葉という用語は、文字列、語幹、接頭辞、接尾辞、語句、文、省略、チャットスラング、顔文字、ユーザID、URL、または表示文字列、顔文字あるいはアイコンを含むが、それらに限定されない、任意の種類の言語的オブジェクトを表す。システム介入がないと、例えば、1ユーザが触覚入力におろそか、または不正確である場合、2ユーザが言葉のスペルミスをする場合、3例えば、発音区別符が必要とされる場合、または仮想キーボードが図1Hに示されるもの等の半QWERTYまたは12キーレイアウトを有する場合に特定の文字を選択するために複数のキーストロークが必要とされる場合、4意図した言葉が特に長い場合、および/または5他の理由の場合に、仮想キーボードへのユーザの生の触覚入力が、意図した言葉とは異なる、意図しない言葉を出力領域に追加させる場合がある。これらの要因のうちのいずれかが、意図した言葉のユーザの入力を遅延させる場合がある。したがって、向上したユーザ体験を促進するために、開示されたユーザインターフェースは、仮想キーボード領域510およびタッチセンサ式ディスプレイの他の領域および/または他の入力から受信されたユーザ入力を、本明細書で開示される曖昧性除去モジュール等の曖昧性システムまたはモジュールに提供し得る。曖昧性除去モジュールは、論理的な様式でランク別に順序付けられるか、または別様に組織化され得る、提案された言葉の選択のリスト言葉の選択リストを生成するように、受信したユーザ入力を分析する。次いで、ユーザインターフェースは、例えば、順序付けられた、またはグループ化された様式で言葉の選択リスト領域508の中の曖昧性除去モジュールによって生成される言葉の選択リストの一部を表示し得る。言葉の選択リスト領域内で、1つ以上のデフォルト言葉が、ハイライトされ例えば、図5Aに示されるようなare、および/または出力領域中で表示され得る。ユーザは、例えば、言葉の選択リスト領域内で触覚入力を提供することによって、スペースバー等の特殊キーまたはその付近で表示上のポイントを押下することによって、または選択を示す他の入力を提供することによって意図した言葉を示すように、言葉の選択領域の中で表示される言葉を選択し得る。ユーザは、代替として、言葉を選択する前に例えば、言葉の選択領域内でスクロールまたはスワイプすることによって言葉の選択リスト領域の中の言葉の選択リストからさらなる結果をレビューし得る。ユーザが言葉の選択リストから選択を示した後、次いで、ユーザインターフェースは、選択された言葉を出力領域506に追加し得るまたはそうでなければ、選択された言葉を出力する。ユーザインターフェース表示は、主にタッチセンサ式タッチスクリーンとして本明細書で説明されているが、当業者であれば、本明細書で説明されるユーザインターフェースおよび曖昧性除去システムおよび方法は、レーザ投影キーボード、筋肉感知キーボード、ファブリックキーボード、運動感受性ビデオシステムNintendoWii登録商標等、仮想現実システム等を代わりに使用して実装され得ることを理解するであろう。なぜなら、これらのシステムは、仮想キーボードを表示し、ユーザ動作を、タッチスクリーンの触覚入力と類似している表示キーボード内の一情報に変換することが可能であるからである。ユーザ入力のモード図5B-Gは、図5Aに示される好適なユーザインターフェースによって受信され、ユーザインターフェース内で表示される言葉の選択リストを生じるように曖昧性除去システムによって分析される、種々の種類のユーザ入力を図示する。簡単にするために、タッチスクリーンディスプレイへの触覚ユーザ入力は、ユーザが指先で表示を押下することと併せて本明細書で説明される。しかしながら、当業者であれば、ユーザが、任意の好適な手段、例えば、指、スタイラス、または任意の他の好適な入力ツールによって、タッチスクリーンを押下し得ることを理解するであろう。タップ入力図5Bは、どのようにしてユーザインターフェースが一連のタップを受信し、それに応じて言葉の選択リストを出力し得るかを図示する。タップは、ユーザが指を持ち上げる前に局所的な点でタッチスクリーンを短く押下することから成る。図5Bの実施例では、ユーザインターフェースは、一連の3つのタップを受信する時間T=1ではAキーの付近、T=3ではDキーの上、およびT=4ではEキーの上。この実施例では、これら3つのタップ特徴を使用して、曖昧性除去モジュールが、areというデフォルトの選択を含む、言葉の選択リストを生じる。英語では、ユーザがadeという言葉の代わりにareという言葉を作成することを意図しやすいため、このデフォルトの選択は、どのようにして曖昧性除去モジュールが明白なユーザエラーを訂正し得るかを例証する。トレース入力図5Cは、どのようにしてユーザインターフェースがユーザからトレース入力を受信し、それに応じて言葉の選択リストを出力し得るかを図示する。トレースを入力するために、ユーザは、タッチスクリーンディスプレイ上で指を押下または配置し、表示を継続的に押下しながら、画面から指を最終的に持ち上げる前に、指で表示内に線をトレースする。本明細書でより詳細に説明されるように、トレース入力はさらに、コーナーおよびセグメントといった、少なくとも2つの異なる種類の別個の特徴に分けられ得る。本明細書でより詳細に説明されるように、コーナー特徴は、ユーザが、1トレースの開始時に画面を最初に押下すること、2トレースの終了時に画面から指を持ち上げて離すこと、および/または3トレース中に突然方向を変更することを含むが、それらに限定されない、トレース中の異なる種類の事象の発生時に生じる。次いで、各対のコーナーは、2つのコーナーの間のユーザのトレース経路に沿って及ぶセグメント特徴の境界を定める。図5Cに示される実施例では、ユーザが、キーボード領域510の中のKキー付近で、画面上で指を押下することによって、T=1から始まるトレースを入力し、PおよびOキー付近の点へ上向きに指をなぞり、仮想キーボードの最上列を横断して横断して移動することによって、その点付近で方向を突然変更し、最終的に、T=3で、Wキー付近の点で画面から指を持ち上げる。3つのドットによって示されるように、この単一の連続トレースは、3つの明確に異なるコーナーコーナー1、コーナー2、コーナー3および2つのセグメント特徴コーナー1および2の間に延在するセグメント1、ならびにコーナー2および3の間に延在するセグメント2に分けられ得る。図5Cに示されるように、5つの抽出された入力特徴3つのコーナーおよび2つのセグメントを使用して、曖昧性除去モジュールは、ユーザインターフェースを介してユーザに表示される、howというデフォルトの言葉を含む、言葉の選択リストを生じ得る。ホバー図5Dは、どのようにしてユーザインターフェースがユーザからホバー入力特徴を受信し得るかを図示する。ホバー特徴は、点の付近で指を一時停止すること、点の周りで指を小刻みに動かすこと、回すこと、またはスクリブルすること、トレース中に点の付近で減速すること、例えば、感圧タッチスクリーンディスプレイによって検出されるように点において付加的な圧力を提供すること、トレース中に同時に別の指で第2のタップを提供すること等を含み得る、特定の方式で、ユーザが表示内の点に特に重点を置く、任意のユーザ入力を備え得る。例えば、図5Dに示されるように、図5Cに関して以前に説明されたトレース中に、ユーザは、時間窓T=[2:5]中にそこに残存することによって、Tキー付近の点でホバー特徴を入力し得る。図5Dは、トレース特徴と併せて起こるホバー特徴を示すが、ホバー特徴は他の場合に例えば、タップ特徴と併せて、例えば、タップ押下が閾値持続時間を超えて延びる場合起こり得る。マルチモーダル入力:複数の触覚特徴本明細書で説明されるユーザインターフェースは、例えば、2つのタップが続く、3つのトレースが続くトレースを入力すること等ユーザが任意の順番で異なる種類の入力特徴を入力することを可能にする。さらに、ユーザインターフェースは、第1の特徴例えば、トレースを入力した後に、ユーザが一時停止し、次いで、入力例えば、第2のトレースを入力すること、またはタップを入力することを再開することを可能にする。一時停止後、曖昧性除去モジュールは、言葉の選択リストを生成するために、一時停止前および一時停止後に検出される両方の入力特徴を利用し得る。図5Eは、どのようにしてユーザインターフェースが、異なる種類の触覚入力を含むユーザから入力を受信し、それに応じて、複数の入力特徴の全てを使用して生成される言葉の選択リストを表示するかを図示する。図5Eの実施例では、T=[1:3]から、ユーザは、言葉の選択リストの中で表示されているhowというデフォルトの言葉をもたらす線を描くことによって、図5Cに示されるのと同じ入力を提供する。次いで、ユーザは、T=7まで一時停止し、そしてEおよびRキーの間をタップするこれは更新された言葉の選択リストの表示をもたらし得る。ユーザは、T=9まで一時停止し、再び、T=10においてFおよびRキー付近で終了する新しいトレースをVキー付近で開始する。このトレースの終わりに、入力特徴の全てすなわち、第1のトレース3つのコーナーおよび2つのセグメントから成る、タップ、および第2のトレース2つのコーナーおよび1つのセグメントから成るの全体を使用して、曖昧性除去モジュールは、ユーザインターフェースで表示されるデフォルトの言葉がhoweverであるように、言葉の選択リストを更新する。マルチモーダル入力:触覚入力特徴および音声入力図5F-Gによって図示されるように、本明細書で説明されるユーザインターフェースはまた、ユーザが相補的に複数の触覚入力および音声入力を混合することも可能にする。そのような実施例では、ユーザインターフェースおよび/または曖昧性除去モジュールはさらに、言葉および/または言葉の選択リストの中への音声入力を解析する、および/または音声入力の曖昧性を排除するように構成される、音声認識モジュールを備え得る。第1の実施例として、ユーザインターフェースは、触覚ユーザ入力によって最初に生成された言葉の選択リストから言葉を選択するために、ユーザが音声入力を提供することを可能にし得る。図5Fに示される実施例では、時間T=[1:10]中に、ユーザは、howeverというデフォルトの言葉、ならびにhowdyという言葉を含む、言葉の選択リストの表示をもたらす、複数の触覚特徴を入力することによって、図5Eで説明されるのと同じ入力を提供する。時間T=11で、ユーザは、例えば、ユーザインターフェースを提供または携持するデバイスに連結されるマイクロホンに向かって話し掛けることによってその選択を示すユーザインターフェースへの音声入力を生じるために、大きな声でhowdyと言うことによって、後者の言葉を選択する意向を示す。別の実施例として、ユーザインターフェースは、ユーザが、触覚入力例えば、トレース入力を介して、言葉の選択リストから言葉を選択することを可能にし得、言葉の選択リストは、音声入力例えば、音声認識ソフトウェアを使用して生成された言葉の選択リスト、自由形式の手書き入力例えば、手書き認識ソフトウェアを使用して生成された言葉の選択リスト、または別の入力モードによって生成されている。図5Gの実施例では、ユーザは、Iamusingvoicerecognitionsoftwaretoentertextinitiallyandusingtracingtocorrectmistakes最初にテキストを入力するために音声認識ソフトウェアを使用し、間違いを訂正するためにトレーシングを使用していますと大きな声で述べることによって、時間T=1で入力を開始する。音声入力に応じて、例えば、音声認識モジュールを使用するユーザインターフェースが、出力領域506の中にユーザの文のテキストバージョンを生成するが、誤りのある第4の言葉reconnaissanceを伴う。誤りを訂正するために、ユーザは、時間T2で、キーボード領域510での触覚入力例えば、タップを介して誤りのある言葉を選択する。ユーザインターフェースは、随意で、音声認識モジュールによって生成される、reconnaissance、recognizable、およびrecognitionという音声学的に同様の言葉から成る言葉の選択リストを言葉の選択領域508の中で表示し得る。次いで、ユーザは、以前に説明されたように、仮想キーボードを使用して、正しい言葉recognitionをトレースする。どの言葉の選択が最も良く合致するかを決定するようにトレースを分析することによって、システムは、ユーザの意図した言葉を認識し、間違いを訂正することができる。システムのマルチモーダル性質は、発話、タップすること、手書き、発話等の任意の特定のモダリティを使用して入力された言葉を選択/再選択および訂正できることを意味する。いくつかのモダリティでは、曖昧さの性質は、代替的選択として1つより多くの言葉語句セグメントを有する単一の言葉をもたらす場合があり、または1つより多くの言葉でできている部分は、より短い代替的選択を有することができる。実施例としては、ユーザがDolittleと口に出す時に、それがDoLittleおよびDoletaという代替案とともにDoolittleとして認識される場合がある。上記の実施例は、ユーザインターフェースが相補的に複数の種類の曖昧性除去を混合するためのより一般的な能力を実証する。これらの実施例では、曖昧性除去の第1のモダリティ例えば、テキストの曖昧性除去または音声の曖昧性除去が、第1の言葉の選択リスト例えば、N個の最良リストを生成し、その構成要素は、共通の特性を共有する例えば、キーボード上の同様の文字配置または音声の類似性。次に、第2の種類のユーザ入力の曖昧性を排除する場合、第2の入力の曖昧性を排除するように検索されなければならない一組の可能な言葉例えば、検索される辞書は、第1の言葉の選択リスト例えば、N個の最良リストの構成要素に限定される。代替的なキーボードレイアウトおよび他の特徴図5Aの好適なユーザインターフェースは、各キーと併せて、多くても単一の文字を表示する、完全QWERTY仮想キーボードを示す。しかしながら、本明細書で説明される入力、出力、および曖昧性除去機能性の全てタップすること、トレースすること、ホバーすること、マルチモーダル入力等は、単一のキーが2つ以上の文字と併せて表示されるキーボードレイアウトを含む、任意の種類のキーボードレイアウトを利用するユーザインターフェースを用いて好適に実装され得る。例えば、図5Hは、4×3構成で配置された12個の主要キーおよび側方の2個の付加的なファンクションキースペースキーおよび削除キーを伴う仮想キーボードを含む、ユーザインターフェースを示す。そのようなレイアウトでは、主要キーの大部分が、1~4個の異なる文字と併せて表示される。同様の12キーレイアウトを使用する従来のシステムでは、ユーザは、典型的には、ある文字を示すために複数のキーストロークを利用しなければならない例えば、従来のシステムでは、4回の反復キーストロークまたはキーの持続押下が、iという文字を示すために必要とされ得る。対照的に、図5Hに示されるように、本明細書で説明される曖昧性除去方法は、ユーザが、数回だけのトレースおよび1回のタップで、imminentという意図した言葉を含む言葉リストを生成することを可能にする。ユーザインターフェースでは、複数の入力特徴例えば、4回の連続タップまたは4GHIキーの上での長いホバーは、iという意図した言葉の最初の文字を選択するために必要とされない。同様に、従来のシステムと違って、本明細書で説明されるシステムでは、仮想キーボード上で視覚的に表示されないことがあるアクセントのある文字または他の代替的な文字を選択するために、反復または長期ユーザ入力特徴例えば、複数の入力タップまたはホバーが必要とされない。例として、従来のシステムでは、図5Aに示されるもの等のQWERTYキーボードレイアウト上でアクセントのある文字を選択するために、ユーザは、いくつかのキーストロークを実行する必要があり得、そのうちの1つがEキーを含む。対照的に、本明細書で説明される曖昧性除去方法は、ユーザが、Eキーに関係するユーザインターフェースへの1つだけの入力特徴例えば、単一のタップまたはコーナーを用いて、アクセントのある文字を有する言葉を含む、言葉リストを生成することを可能にする。単一のキーにマップされた複数の類似の文字を有することに加えて、本明細書で説明される曖昧性除去方法はまた、番号が最上列で文字の代替として現れる、キーボードレイアウトを用いて実装され得る。加えて、本明細書で説明されるユーザインターフェースは、反復文字および/または反復キーストロークを示すためのユーザからの反復または追加の入力特徴を必要としない。例えば、図5Aに示される完全QWERTYユーザインターフェースを使用して、moonlightという意図した言葉を効率的に入力するために、ユーザは、意図した言葉の中の反復したooの発生にもかかわらず、生成された言葉リストの中で意図した言葉を生じるために、Oキーの付近で1つの触覚特徴を入力する必要しかない。別の実施例として、図5Hのインターフェースを使用してhisという言葉を効率的に入力するために、ユーザは、単一の入力特徴例えば、単一のタップまたはコーナーを介して、4GHIボタンの選択を示す必要しかない。なぜなら、同じキーが意図した言葉の中の第1の文字hおよび第2の文字iの両方に利用されるからである。コンテキスト駆動型トレーシング図5Iは、より効率的なテキスト入力を提供するために、どのようにしてコンテキスト情報が使用され得るかという実施例を図示する。図5Iでは、ユーザが、連絡先アプリケーションプログラム内で連絡先の名前を検索している。友達の名前を入力するために、ユーザは3コーナーのトレースを描く。このトレース入力の曖昧性を排除する場合に、曖昧性除去モジュール213は、その言葉の参照を、ユーザの連絡先リストの中の言葉例えば、大抵は適正な名詞のみを含む辞書に限定し得る。さらに、曖昧性除去モジュールは、言葉の選択リストをランク付けするために、およびデフォルト名を提案するために、トレース合致以上のものを使用し得る。例えば、曖昧性除去モジュールは、連絡先アプリケーションプログラム、Eメールプログラム、または全てのアプリケーションプログラムにおいて、ユーザが頻繁に入力またはアクセスする名前を昇格させ得る。例証するために、図5Iに示されるトレースはDで始まり、Aで曲がってNという文字で終わり、DANという一般的な名前を形成するが、ユーザがDANよりもはるかに高い頻度および/または新近性でDAVIDという名前を入力している場合、曖昧性除去モジュールは、依然としてその名前を昇格させ得る。図5A-5Iは、仮想キーボードに関係するタップ、トレース、ホバー、およびマルチモーダル入力等の触覚入力を強調しているが、当業者であれば、本明細書で説明される曖昧性除去システムおよび方法はまた、マルチタッチ入力例えば、タッチスクリーン上の2本以上の指、加速度計入力例えば、より大型のシステムの過速度を示す入力、手書き/ジェスチャ入力例えば、自由形式触覚入力、および/または入力ボタンからの信号を含む、他の種類のユーザ入力を利用し得ることを理解するであろう。好適なシステムおよび曖昧性除去モジュール図6および以下の論議は、開示された技術を実装することができる、好適なコンピュータ環境の簡潔な一般説明を提供する。必須ではないが、開示された技術の側面は、汎用データ処理デバイス、例えば、サーバコンピュータ、無線デバイス、またはパーソナルコンピュータによって実行されるルーチン等のコンピュータ実行可能命令の一般文脈で説明される。当業者であれば、開示された技術の側面は、インターネット家電、手持ち式デバイス携帯情報端末PDAを含む、装着型コンピュータ、あらゆる種類のセルラーまたは携帯電話ボイスオーバーIPVoIP電話を含む、ダム端末、メディアプレーヤ、ゲームデバイス、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラム可能な消費者電子機器、セットトップボックス、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、および同等物を含む、他の通信、データ処理、またはコンピュータシステム構成を用いて実践できることを理解するであろう。実際に、コンピュータ、サーバ、ホスト、ホストシステム、および同等物といった用語は、概して、本明細書で交換可能に使用され、上記のデバイスおよびシステムのうちのいずれか、ならびに任意のデータプロセッサを指す。開示された技術の側面は、本明細書で詳細に説明されるコンピュータ実行可能命令のうちの1つ以上を実施するように特定的にプログラム、構成、または構築される、専用コンピュータまたはデータプロセッサで具現化することができる。ある機能等の開示された技術の側面は、単一のデバイス上で独占的に実施されるものとして説明されるが、開示された技術はまた、機能またはモジュールが、ローカルエリアネットワークLAN、広域ネットワークWAN、またはインターネット等の通信ネットワークを通して結び付けられる、異種の処理デバイス間で共有される、分散環境で実践することもできる。分散コンピュータ環境では、プログラムモジュールは、ローカルおよび遠隔メモリ記憶デバイスの両方に位置し得る。一実施形態では、開示された技術は、非一過性のコンピュータ可読媒体またはコンピュータ可読メモリに記憶される、一連のプログラム命令として実装される。命令は、本明細書で説明される機能を果たすようにプロセッサ電子機器によって実行される。開示された技術の側面は、磁気または光学的可読コンピュータディスク、配線で接続された、または事前にプログラムされたチップ例えば、EEPROM半導体チップ、ナノ技術メモリ、生物学的メモリ、または他のデータ記憶媒体を含む、有形コンピュータ可読媒体上に記憶または分配され得る。代替として、開示された技術の側面の下のコンピュータ実装命令、データ構造、画面表示、および他のデータは、インターネット上または他のネットワーク無線ネットワークを含む上で、ある期間にわたって伝搬媒体例えば、電磁波、音波等上の伝搬信号上で分配され得、または任意のアナログあるいはデジタルネットワークパケット交換型、回路交換型、または他のスキーム上で提供され得る。図6は、本明細書で説明されるユーザインターフェースを提供するために曖昧性除去モジュール613が動作し得る、好適なデータ処理またはコンピュータシステム600を図示する。コンピュータシステムは、タッチスクリーンディスプレイ603、他の入力デバイス608、音声出力構成要素604、他の出力デバイス606、1つ以上のプロセッサまたは中央処理ユニットCPU601、および少なくとも1つのメモリ610を含み、そのいくつかまたは全ては、筐体図示せず内で携持または収納され得る。代替案として、またはCPUに加えて、コンピュータシステム600は、1つ以上のデジタル信号プロセッサDSP、特定用途向け集積回路ASIC、フィールドプログラマブルゲートアレイFPGA、または他の論理/データ処理回路を含み得る。入力および出力構成要素は、グローバルポジショニングシステムGPS、デジタルカメラ、無線LANWiFiインターフェース、運動センサ、加速度計、Bluetooth登録商標インターフェース、外部USBまたは同様のポート、ヘッドホンまたはヘッドセットジャックアダプタ、投写型ディスプレイ、触覚出力デバイス例えば、振動器、ならびに他の構成要素または通信要素を含み得る。例えば、Bluetooth登録商標インターフェースは、音声入力を受信するためだけでなく、音声出力を提供するためにも、無線ヘッドセット等の外部無線通信構成要素と通信し得る。1つの実装では、コンピュータシステム600は、携帯電話であり、それにより、システムはまた、無線通信を可能にするようにCPU601に連結される1つ以上の無線装置も含む。システムの出力モダリティは、テキスト音声変換、音声、振動、触覚、視覚等の出力を含み得る。例えば、システムは、振動または音のフィードバックを追加することによって、どの入力特徴、文字、および/または字が認識されているかをユーザに知らせることができる。同様に、システムは、抽出される特徴およびその決定に関与する不確実性のレベルのより詳細な理解をユーザに提供することができる。メモリ610はさらに、オペレーティングシステム611、曖昧性除去モジュール613、および1つ以上のアプリケーションプログラムアプリケーションプログラム1からN614-616として示されるを備え得る。アプリケーションプログラムは、文書処理プログラム、スライド表示または画像作成プログラム、Eメールプログラム、SMS/MMSメッセージングプログラム、インスタントメッセージングプログラム、または他のテキストベースの通信あるいはテキストベースの文書作成プログラムを含むことができる。曖昧性除去モジュール613は、タッチスクリーン603を用いたユーザの入力に関係するデータを含む、オペレーティングシステムからのユーザ入力データを受信し、アプリケーションプログラムに提供し得る、ユーザによって選択された言葉を識別するために、受信した入力データを使用し得る。例えば、曖昧性除去モジュール613は、指を下に向けた事象ユーザがタッチスクリーン上の点を押下する時、指を動かす事象例えば、ユーザが画面を押下しながら指を動かす時、および指を上に向けた事象例えば、ユーザがタッチスクリーンから指を持ち上げる時というオペレーティングシステム611からの一連の通知を受信し得る。本明細書では指を使用するものとして概して説明されているが、ユーザは、タッチスクリーンに触れる、またはそれを作動させるためにスタイラス等のどんなものでも使用し得る。受信した通知のそれぞれは、時系列の位置データ、例えば、タッチスクリーン603へのユーザの触覚入力を反映する、タイムスタンプtを伴う一組のX-Y座標x,yすなわち、座標x,y,tを含み得る。加えて、タッチスクリーン603が圧力センサを含む場合、受信した通知は、時系列の位置および圧力データ、例えば、印加された圧力pを含む、タッチスクリーン603へのユーザの触覚入力を反映する、一組の座標x,y,t,pを含み得る。オペレーティングシステム611はまた、マルチタッチ入力例えば、タッチスクリーンに同時に接触する第2の指を表す、付加的な同時座標セットx,y,t、音声入力例えば、声の入力、視覚入力、加速度計入力、場所データ、センサデータ等を含む、他の種類の入力を曖昧性除去モジュール613に提供し得る。曖昧性除去モジュールは、加えて、その言葉の識別を促進するために、オペレーティングシステムおよび/またはアプリケーションプログラムから動的コンテキストデータを受信し、処理し得る。コンテキスト情報は、ユーザの意図を曖昧性除去モジュールに知らせるのに役立ち得る任意の情報であり、本明細書でさらに詳細に説明されるように、文または言葉のペアのコンテキスト、言語コンテキスト、アプリケーション特有のコンテキスト例えば、データフィールド/タグ、ユーザ特有のコンテキスト、場所、時刻等の情報を含み得る。例えば、モジュールは、ユーザによって選択された最後の言葉、他の文レベルのコンテキスト、利用された仮想キーボードレイアウト、言葉が入力される入力フィールドの種類例えば、連絡先フィールド、場所データ例えば、コンピュータシステムがGPS受信機、または場所データへのアクセスを含む場合、ユーザ用のカレンダーデータ、および/または、識別された言葉を利用し得る、使用された、または使用されているコンテキストデータまたはアプリケーション等のコンテキスト情報を受信し得る。別の実施例として、曖昧性除去モジュールは、別の入力モードからN個の最良リストを受信し得る。N個の最良リストは、固定サイズ例えば、Nで上限を定められ得る提案された言葉のランク別に順序付けられたリストである。一実施例として、N個の最良リストは、発話認識プログラム例えば、異形同音異義語のリストまたは手書き認識プログラムから生成される言葉のリスト等の、別の種類の曖昧性除去アプリケーションプログラムまたはモジュールから生成され得る。なおも別の実施例として、ユーザが以前のEメールに応答するためにテキストを入力している場合、曖昧性除去モジュールは、以前のEメールで使用された言葉のリストを受信し得る。曖昧性除去モジュールは、文字選択サブモジュール618と、言葉リスト選択サブモジュール620と、キーボードマッピングデータベース622と、語彙モジュール624と、ユーザコンテキストデータベース626と、アプリケーションコンテキストデータベース628と、曖昧性除去パラメータデータベース630とを含み得る。別個のモジュールとして描写されているが、単一のモジュール、プログラム、またはルーチンが、モジュールのうちの2つ以上を組み込み得る。文字選択サブモジュール618は、受信したユーザ入力または入力データを分析して、入力特徴または複数の入力特徴、例えば、タップ、コーナー、セグメント、ホバー、または他の特徴を抽出するように構成される。文字選択サブモジュール618はさらに、言語非依存型キーボードマッピングデータベース622を使用して、抽出された入力特徴を分析し、順序付けられた一組の特徴オブジェクト例えば、スペルされている言葉に対するランク別に順序付けられた一組の文字を含む入力シーケンスを生じるように構成される。入力シーケンスの中の各特徴オブジェクトは、複数の仮想キーボードまたはキーレイアウトのうちの1つに対する対応するキーに関連付けられている一組の文字、一組の近接性加重、および1つ以上の特徴の種類に関連付けられている。近接性加重は、ユーザが特定の入力特徴例えば、タップ、コーナー、セグメント、またはホバーを介して特定のキーストロークを達成することを意図した可能性を反映する。この可能性は、入力特徴の場所と仮想キーボード上のキーの場所との間の近接性に基づき得る。その動作中に、文字選択サブモジュールは、曖昧性除去パラメータデータベースから読み出されるパラメータ、方針、および選好を利用し得る。文字選択サブモジュール618の側面についてのさらなる詳細は、VIRTUALKEYBOARDSYSTEMSWITHAUTOMATICCORRECTIONと題され、参照することにより本明細書に組み込まれる出願人の米国特許出願公開第2006/0274051号で見出され得る。キーボードマッピングデータベース622は、ユーザが特定の入力特徴を入力することによって特定のキーストロークを達成することを意図した可能性を、文字選択サブモジュール618が評価することを可能にする。システムによって利用され、タッチスクリーン上でユーザに表示される仮想キーレイアウトの各種類については、完全QWERTY例えば、28キー、32キー、またはそれ以上、14キー半QWERTYキーボード、12キー数字キーパッド等である。キーボードマッピングデータベース622は、タッチスクリーンディスプレイ上の特定の規定された領域または点に特定のキーをマップする、および逆も同様である、領域とキーのマッピングを提供する。例えば、完全28キーQWERTYキーレイアウトでは、領域キーマッピングは、一組の4つの表示点{x1,y1,x2,y2,x3,y3,x4,y4}を使用してEキーを規定し得る。別の実施例として、図5Hに示されるもの等の4×3の12キーレイアウトでは、領域キーマッピングが、一組の4つの点{x11,y11,x22,y22,x33,y33,x44,y44}を使用して5JKLキーを規定し得る。当然ながら、仮想キーボードに対する円およびその仮想キーボードに対する対応する文字へのマップ円が交差していてもよいを規定するために、x-y中心場所および半径等の他のマッピングが可能である。加えて、システムによって利用される各種類の文字レイアウト例えば、アメリカ英語完全QWERTY文字レイアウト対フランス語完全AZERTY文字レイアウトについて、キーボードマッピングデータベースは、特定のキー例えば、Eキーを1つ以上の文字にまたは特殊機能キーについては、特定の機能にマップし、および、逆に、文字を特定のキーにマップするキー文字マッピングを提供する。キー文字マッピングは、1対多数の関係を表してもよく、特定のキーは、タッチスクリーンのユーザに仮想キーボード上で表示されない文字を含む、1つより多くの文字に関連付けられている。例えば、完全QWERTYキーレイアウトに関係するキー文字マッピングでは、Eキーは、といった文字のうちの2つ以上にマップされ得る。別の実施例として、図5Hに示されるもののような12キーレイアウトに関係するキー文字マッピングでは、5JKLキーは、5、、J、j、K、k、L、lといった文字にマップされ得る。単一の領域キーマッピングは、例えば、単一の仮想キーボードレイアウトを介して、より容易な他言語入力を可能にするように、1つより多くのキー文字マッピングに関係し得る。ユーザ入力の曖昧性を排除するためのキーボードマッピングデータベース622の使用は、本明細書でさらに詳細に説明される。加えて、キーは、ユーザが標準ラテン-1ベースのキーボードを使用して外来文字を入力することを可能にする、ローマ字化、音訳、または転写入力を形成するように組み合わさり得る。ユーザは、標準ラテン-1ベースのキーボードを使用して言葉の聞こえ方で言葉をタイプすることができ、音訳がその国字で言葉を生じる。例えば、serodijaとタイプすることにより、というロシア語の言葉をもたらす。1つ以上のラテン-1文字が、1つ以上のロシア語文字を形成するように組み合わさることができる。これらのマッピングは、種々の方法で、状態機械を使用して、または他の一般的に使用されている方法で、実装することができる。この翻訳または音訳層は、確率として実装されるマッピングまたは付加的なサブモジュールの層を追加する。1対1のマッピングがある場合、実装は単純である。複数の解釈がある場合に、各マッピングには確率値を割り当てることができる。例えば、ヒンズー語では、文字が1つより多くの有効なマッピングを有し得る。例えば、文字は、i、yi、ee、およびyiといったマッピングを有する。同様に、文字は、iおよびyiにマップする。ここで記述されるコンテキストまたは他のパラメータは、ユーザへのオプションの表示されたリストの曖昧性をさらに排除するため、またはリストを順序付けるために使用され得る。言葉リスト選択サブモジュール620は、文字選択サブモジュールによって生成される入力シーケンスを受信するように構成される。言葉リスト選択サブモジュール620は、図5A-5Iで示されるもの等のランク別に順序付けられた、または別様に構築された言葉の選択リストを生成するために、種々の他の入力を使用して入力シーケンスを分析し得る。言葉リスト選択サブモジュール620が使用し得る、他の入力は、語彙モジュール624からのデータ、曖昧性除去パラメータデータベース630から読み出されたパラメータ、受信した動的コンテキストデータ、ならびにユーザコンテキストデータベース626およびアプリケーションコンテキストデータベース628から読み出されたコンテキストデータを含み得る。言葉リスト選択サブモジュール620は、本明細書でさらに詳細に説明される。言葉選択を促進するために、語彙モジュール624は、一組の言葉または言葉の論理グループを定義する1つ以上の辞書を提供する。例えば、アメリカ英語辞書が、英語を話すアメリカ人による一般的な使用で言葉の論理グループを定義し得る一方で、アメリカ英語Msg辞書は、テキストおよびマルチメディアメッセージ例えば、SMS、MMS、または同様のメッセージで英語を話すアメリカ人によって一般的に使用されている言葉の論理グループ顔文字を含むを定義し得る。語彙モジュール624はまた、例えば、特定の言語内の言葉および/または特定のコンテキストの特定の論理グループ内の静的または動的頻度情報等の付加的な言語情報を提供し得る。例えば、付加的な言語情報は、正式および/または会話の文章の中の言葉の発生頻度、ある1つまたは複数の先行の言葉に続く時の言葉の発生頻度、周辺の文の適正または共通文法、左幹または右幹または接頭辞あるいは接尾辞として利用されている言葉の頻度等のうちの1つ以上を含み得る、言語モデルに従った頻度情報を含み得る。頻度に加えて、推移確率には特定の推移が割り当てられ得、1部類の接頭辞を、起こり得る語幹または1つ以上の部類の接尾辞を伴う語幹と結び付ける一方で、不正な言葉を形成する辞書の中の他の言葉を伴う接頭辞を拒絶する。例えば、言葉wordworkは、しばしば有効な言葉を形成する、-er、-ers、-ing、-s、および-edという接尾辞を伴う高い推移確率を有し得る。曖昧性除去モジュールは、ユーザがキーボード構成を変更した場合に、その辞書を変更する必要がないことに留意されたい。さらに、キーボードマッピングデータベース622を使用することによって、曖昧性除去モジュールは、キーボードレイアウトにかかわらず、任意のシステム内で利用され得る。曖昧性除去パラメータデータベース630は、相互作用または入力特徴抽出、文字の選択、および/または言葉の選択を行うためのパラメータ、方針、および選好を記憶し得る。例えば、曖昧性除去パラメータデータベースは、距離関数、近接性測定基準、合致測定基準、および後処理ステップの選択および適用に役立つ、パラメータおよび方針を含み得、その全ては本明細書で説明される。向上した文字および/または言葉の選択を促進するために、ユーザコンテキストデータベース626およびアプリケーションコンテキストデータベース628は、コンテキスト情報を文字選択サブモジュール618および/または言葉リスト選択サブモジュール620に提供して、その処理を通知し得る。これらのサブモジュールはまた、アプリケーションプログラムおよび/またはオペレーティングシステムから動的コンテキスト情報を受信し得る。テキストの入力、代替案からの選択、コンテキスト情報、および複数のモダリティが、曖昧性除去モジュールによって管理される。システムは、本明細書で記述されるようなユーザの意図を決定するために、ユーザからの入力、アプリケーションのコンテキスト、外部センサおよびコンテキストリソースおよび曖昧性除去、ならびに訂正アプローチを使用し得る。ユーザの意図の理解に基づいて、システムは、アプリケーションのコンテキストおよび状態を維持し、入力の構成、および複数の入力モダリティにわたる同期化を管理する。ビジネスロジックと連動することによって、システムは、ユーザに提示されるマルチモーダル出力を生じることができる。相互作用、ビジネスロジック、ならびにコンテキストおよび状態は、相互作用スクリプト、またはより複雑な状態機械StateChartXMLまたはSCXMLあるいはXHTMLVoiceProfileまたはSALT等のユーザインターフェースの制御に使用される言語を通して管理され得る。ユーザコンテキストデータベース626は、ユーザによって利用された以前の言葉、ユーザによって入力された言葉の頻度、およびユーザによって採用された一般的な語句等の、ユーザの以前の文字および/または言葉の選択挙動に関する任意の履歴情報を含み得る。ユーザコンテキスト情報の他の実施例は、ユーザによって入力された言葉のペア、特定のアプリケーション例えば、テキストメッセージング対Eメールにおけるユーザの独自の語彙、システムにテキストを入力している間のユーザの粗雑さのレベル文字領域のサイズを増加させる等を含む。加えて、ユーザコンテキスト情報は、どれだけ頻繁にユーザが特定の言語から言葉を選択するか、またはどの言語をユーザが主に使用するかを反映し得る。例えば、システムがバイリンガルのユーザ用にフランス語および英語の辞書の両方を使用する場合、ユーザコンテキストデータベース626は、ユーザの主要言語を決定するために、ユーザが英語の言葉と対比してフランス語の言葉を選択する相対的頻度を追跡してもよく、次いで、その辞書からの言葉が、他の辞書からの言葉よりも優先されるか、または最初に提示され得る。代替として、または加えて、いくらかのユーザコンテキスト情報が、語彙モジュール624におけるユーザ特有の辞書および/または他のデータの構造で反映され得る。加えて、または代替として、ユーザコンテキストデータベース626はまた、曖昧性除去パラメータデータベース230に記憶されたデフォルトの曖昧性除去パラメータに優先し得る、ユーザ特有の方針およびパラメータを提供し得る。アプリケーションコンテキストデータベース628は、曖昧性除去モジュール613が、特定のアプリケーションプログラム内の文字または言葉の選択に関係する履歴情報にアクセスすることを可能にし得る。アプリケーションコンテキストデータベース628はまた、曖昧性除去パラメータデータベース630に記憶されたデフォルトの曖昧性除去パラメータに優先し得る、アプリケーション特有の辞書および/またはアプリケーション特有の方針およびパラメータを提供し得る。コンテキストはまた、情報が入力されるはずであるテキストフィールドに由来することもできる。実施例として、いくつかの実装では、曖昧性除去モジュールは、特定の言葉の入力と関連付けられ得るアプリケーション特有のフィールド、タグ、またはラベルを定義する、特定の種類のアプリケーションプログラムと統合するように設計され得る。実施例として、書式のテキストフィールド名前またはEメールが、コンテキスト情報を提供するために利用することができるラベルであり得る。次いで、アプリケーションコンテキストデータベース628は、付加的なコンテキスト情報を提供するように、ユーザの履歴上の言葉の入力をアプリケーション特有のフィールドと相関させ得る。システムは、アプリケーションコンテキストデータベースの中で、どのようにしてフィールド情報および他のコンテキスト情報が言葉の選択中に利用され得るかを反映する、アプリケーション特有のフィールドおよび規則例えば、文法規則、合致測定基準、および/または後処理規則を定義し得る。これらの規則は、特定のフィールドに対する言葉の提案が、どのような言葉をユーザが他のフィールドに入力したかに依存し得ることさえ特定し得る。システムは、フィールドの意図したテキスト情報名前、電話番号、日付、Eメールアドレス、パスワードを曖昧性除去モジュールに知らせ、および/または情報を説明する文法をそれに提供する。例えば、州、郵便番号、および都市が入力されることを要求する書式は、他のフィールドのコンテキストおよびコンテンツに基づいて、適切な文法を提供することが可能であるアプローチを用いるであろう。州がWAである場合、都市の文法は、ワシントン州内の実際の都市によって制約され、郵便番号も同様に制約される。都市および州が入力された時に、郵便番号の範囲が再び制約される。フィールドと文法との間の複雑な相互作用は、そのような書式の中のデータの入力を単純化することができる。代替として、システムは、しばしば使用されているテキストフィールドに対するコンテキストを習得することができる。このコンテキスト情報の使用を例証するために、どのような言葉をユーザが特定のフィールドに入力したかを曖昧性除去モジュールが留意し得る場合の書式記入の実施例を考慮する。例証すると、注文書で、ユーザが、仕事用EメールをEメールフィールドに入力し、次いで、曖昧性除去モジュールは、配送先フィールドが勤務先住所を含むことを予測する。対照的に、ユーザが個人用EメールアドレスをEメールフィールドに入力する場合、曖昧性除去モジュールは、配送先フィールドの中で自宅住所を予測する。他のコンテキスト情報は、時刻、場所、カレンダー入力、ユーザ設定、アプリケーション設定、およびシステム設定等の環境パラメータを含む。別個のデータベースとして示されているが、本明細書で説明されるデータベースのうちの2つ以上が組み合わせら、任意のデータ構造または論理的構成で実装され得る。文字選択サブモジュール618および/または言葉リスト選択サブモジュール620は、ユーザの現在の挙動に関する通知を提供することによって、ユーザコンテキストデータベース626および/またはアプリケーションコンテキストデータベース228を更新し得る。例えば、言葉リスト選択サブモジュール620は、ユーザが言葉選択リストから言葉を選択する場合に、情報をこれらのデータベースに返し得る。加えて、以前に説明されているように、曖昧性除去モジュール613はまた、オペレーティングシステムおよび/またはアプリケーションプログラムから付加的な動的コンテキストデータを受信し得る。図示されていないが、曖昧性除去モジュールは、加えて、本明細書で説明されるように、発話または音声入力の曖昧性を排除するように構成される、音声認識ソフトウェアを備え得る。好適な曖昧性除去方法本明細書で説明されるフロー図は、データの全ての機能または交換を示すわけではないが、代わりに、システム下で交換されるコマンドおよびデータの理解を提供する。当業者であれば、コマンドおよびデータのいくつかの機能または交換が、繰り返され、変更され、省略され、または補足され得、示されていない他のあまり重要ではない側面が容易に実装され得ることを認識するであろう。さらに、過程ステップ、方法ステップ、ブロック、アルゴリズム、または同等物は、特定の順番で説明され得るが、そのような過程、方法、ブロック、およびアルゴリズムは、代替的な順番で機能するように構成され得る。言い換えれば、本明細書で説明されるいずれの順序または順番も、ステップまたはブロックがその順番で実施されるという要件を必ずしも示すわけではない。本明細書で説明される過程および方法のステップまたはブロックは、実用的である任意の順番で実施され得、いくつかのステップが同時に実施され得る。図7Aは、言葉の選択リストからの言葉の選択を可能にするために、マルチモーダルユーザ入力に対応し得る、一連のユーザ入力データの曖昧性を排除するための過程700を示す。過程700は、曖昧性除去モジュール613によって行われ、曖昧性除去モジュール613がブロック730へ進む前に入力データを待って受信する時である、ブロック710から始まる。典型的には、曖昧性除去モジュール613は、オペレーティングシステムからの1つ以上のユーザ入力通知または入力事象の形態で入力データを受信するが、アプリケーションプログラム等の他の過程からも入力データを受信し得る。例えば、ブロック710において、曖昧性除去モジュールは、オペレーティングシステムから、指を下に向けた通知、指を動かす通知、および/または指を上に向けた通知を待って受信し得、そのそれぞれは、一組のx,y,tまたはx,y,t,p座標を伴い、xは、表示上のユーザの指のx位置であり、yは、ユーザの指のy位置であり、tは、これらの入力の時間またはクロック参照であり、pは、感圧画面用の随意的な圧力測定である。曖昧性除去モジュール613はまた、音声入力、加速度計入力、外部センサデータ、場所情報等の他の形態の入力データを待ち得る。示されていないが、ブロック710では、曖昧性除去モジュール613は、例えば、オペレーティングシステムおよび/またはアプリケーションプログラムから、付加的な動的コンテキストデータを受信し得る。例えば、それは、ユーザがテキストを入力しているアプリケーションプログラムの種類またはコンテキスト例えば、ユーザがタイプしているフィールドの種類、例えば、日付フィールド対名前フィールドに関する情報を受信し得る。曖昧性除去モジュールがユーザ入力データを待って受信する期間は異なり得る。例えば、1つの実装では、曖昧性除去モジュールは、ブロック730に進む前に、1指を下に向けた通知、2次の指を上に向けた通知、および3これら最初の2つの通知の間に起こる、指を動かす通知の全てに対応する、通知のグループ全体を受信し得る。いくつかの他の実装では、ブロック710において、曖昧性除去モジュール613は、ユーザ入力データの中の他の種類の論理グループ化を識別するように、受信ユーザ入力データを連続的に分析し、論理グループがその全体で受信された場合のみブロック730へ進み得る。例えば、ブロック710では、曖昧性除去モジュールは、例えば、それぞれブロック802およびブロック730において本明細書で説明される技法を使用して入力特徴例えば、タップ、コーナー、ホバー等または特殊機能が発生したかどうか、および単一の入力特徴または特殊機能に対応する入力データの論理グループが検出された時を決定するために、通知が着信するにつれて受信した通知を連続的に分析し、次いで、その論理グループの処理は、ブロック730で進められ得る。決定ブロック730では、曖昧性除去モジュールは、曖昧性除去モジュールが、言葉の選択、文字の削除、または特殊機能キー例えば、シフト、キャプスロック、キーボード選択キー等に関係する機能等の特殊機能を実施するべきであるという入力をユーザが提供したかどうかを決定する。図7Aに示されるように、特殊機能が指示された場合、処理はブロック780へ進み、そこで、曖昧性除去モジュールは、過程がブロック740へ進む前に、本明細書で説明される図7Bに示される過程に従って特殊機能を果たす。入力データが特殊機能を指示しない場合、過程はブロック740へ直接進む。ブロック740では、曖昧性除去モジュールは、該当する場合、どのような入力特徴例えば、タップ、コーナー、セグメント、ホバー、音声入力等が受信した入力データによって示されるかを識別するために、文字選択サブモジュール618を利用する。さらに、ブロック740では、曖昧性除去モジュールは、それぞれの識別された入力特徴に対する特徴オブジェクトを生成するために、文字選択サブモジュールを利用する。特徴オブジェクトは、文字セット、一組の特徴種類、および近接性加重セットを含む。文字選択サブモジュールは、図8A-8Bに示される過程に従って、これらのタスクを行い得る。ブロック740中に、文字選択サブモジュールはまた、1つ以上の特徴種類を使用して、それぞれの識別された入力特徴を特性化し得る。例えば、文字選択サブモジュールは、タップ、コーナー、セグメント、ホバー等として各入力特徴を特性化し得る。加えて、文字選択サブモジュールはまた、識別された入力特徴が意図的な入力特徴または意図的な特徴であるかどうかを決定し得る。意図的な入力特徴は、他の種類の入力特徴と比較して、ユーザによる意図したキーストロークに対応する可能性が高いと思われる入力特徴である。特徴が意図的な入力特徴ではない場合は、代わりに付随的な入力特徴または付随的な特徴として特性化され得る。言葉の候補を入力特徴と合致させる時に、意図的な入力特徴は、本明細書で説明されるように、付随的な入力特徴とは異なって扱われ得る例えば、より高く加重される。例証すると、いくつかの実装では、全てのタップおよび全てのコーナーが、ユーザの入力挙動の明確に異なる突然の変化を示すので、曖昧性除去モジュールは、これらの特徴を意図的な入力特徴として扱う。別の例証として、曖昧性除去モジュールは、全てのタップ、コーナー、およびホバーを意図的な入力特徴として扱い得る。曖昧性除去モジュールはさらに、本明細書で説明される他の要因を採用することによって、どの入力特徴が意図的または付随的として特性化されるかを精緻化し得る。入力特徴の特性化は、図8Aに関して本明細書でさらに詳細に説明されている。いくつかの実装では、曖昧性除去モジュールは、区別をつけずに、全ての入力特徴を意図的として扱い得る。ブロック750では、曖昧性除去モジュールは、推定入力長変数Lを増分して、該当する場合、ブロック740で識別された新しい意図的な入力特徴の数を反映し得る。本明細書で説明されるように、曖昧性除去モジュールは、ブロック370で言葉の選択リストを生成する場合に、辞書を事前にフィルタにかけるために、または他の目的で、推定入力長Lを後で使用し得る。同様に、ブロック750では、曖昧性除去モジュールは、加えて、入力シーケンスの構成を反映する他の変数例えば、入力シーケンスに存在するセグメント特徴の数を反映する変数を更新し得る。ブロック760では、曖昧性除去モジュールは、任意の新たに生成された特徴オブジェクトを入力シーケンスに付加する。入力シーケンスは、ユーザが最後に言葉を選択してから作成された、順序付けられた一組の全ての入力特徴オブジェクトを反映する。入力シーケンスの中の種々の特徴オブジェクトは、時間に基づいて順序付けられる。ブロック770では、曖昧性除去モジュールは、現在の入力シーケンスを使用して言葉の選択リストを作成するために、および例えば、タッチスクリーンディスプレイ上の言葉の選択リスト領域を介してこのリストをユーザに出力するために、言葉リスト選択サブモジュール618を利用する。このようにして、曖昧性除去モジュールは、意図した言葉を選択する機会をユーザに与える。言葉の選択リストの作成は、図9Aおよび9Bに関して本明細書でより詳細に説明される。システムの1つの変化形では、ユーザが言葉の選択リストの中の言葉を選択する場合、システムは、選択された言葉から始まる言葉のみを示すことによって応答し得る。言葉に加えて、選択リストはまた、言葉によって表されるオブジェクトを含み得る。例えば、loveという言葉が、それに関連付けられているハートの形状のアイコンを有し得る。加えて、連絡先辞書等の異なる語彙またはプロバイダから読み出される言葉が、選択された時に付加的なオプションを提供し得る。例えば、ユーザが、連絡先辞書の中の名前に合致する名前を入力した場合、ユーザは、電話番号、運転方向、Eメールアドレス、または機械可読形式vCard等で連絡先を表すオブジェクトを含む、任意の他の関連オブジェクトを追加することを選択し得る。他の言葉が、キーワード、電話番号、潜在的なカレンダー入力等を認識し得る、認識装置に送信され得る。ユーザがLet’smeetforLunchatJoey’sJoeyの家で昼食に集まりましょうとタイプした時に、認識装置は、カレンダーに追加する、Joeyの家に電話する、予約をする、方向を挿入する等の動作を追加することができる。ユーザが任意の動作を選択する場合に、システムは、完了時にユーザをテキスト入力の活動に戻す、活動を開始し得る。そのような活動は、ユーザ履歴、ユーザ選好を含む、ユーザの意図に関して活動がより良好に知らされるのに役立ち得る、任意の関連コンテキストパラメータを伴って開始され得る。別の実施例では、ユーザは、楽曲をEメールに追加することを希望し得る。曲名、アーティスト、アルバム、またはmp3、楽曲等のキーワードさえもタイプすることによって、ユーザは、ユーザがオブジェクトを継ぎ目なく添付することを可能にする活動を開始し得る。随意で、活動の開始を引き起こすように選択された言葉は、自動的に削除され得る。図7Bは、ユーザ入力データによって示される特殊機能を果たすための過程715を示す。過程715は、どのような種類の特殊機能がユーザの入力データによって示されたかを曖昧性除去モジュールが識別する時である、ブロック782から始まる。そうするために、曖昧性除去モジュールは、特殊機能キー、言葉の選択リスト領域、および/またはメニューボタン等の他の活動領域への触覚ユーザ入力の近接性を分析し、音声コマンド入力の発話認識分析を行い、例えば、スワイプ、マルチタッチ動作を検出するための他の触覚ジェスチャまたは物理的ジェスチャ例えば、デバイスを振ることを分析し、および/または入力の種類を特殊機能にマップするために曖昧性除去パラメータデータベースにおける探索を行い得る。決定ブロック784では、曖昧性除去モジュールは、ユーザが例えば、言葉の選択リストから言葉を選択したことを入力データが示すかどうかを決定する。言葉のユーザ選択は、ユーザが特殊キー例えば、スペースバー、タブキー、エンターキー等の付近または上でタップする、トレースする、またはホバーした場合に、またはユーザが言葉の選択リスト領域の中の言葉の上または付近でタップする、トレースする、またはホバーする場合に、例えば、以前に説明されているような発声選択を介して起こり得る。当然ながら、ユーザは、デバイスを振ること、入力ボタンを押すこと等による、任意の他の好適な方法によって言葉を選択し得る。一実施例では、曖昧性除去モジュール613は、ユーザが1つの個別の言葉を終了して別の言葉を始める意向であることを、ユーザの入力が示すかどうかを決定するために、ユーザによって利用される入力特徴の種類を分析することによって、自動間隔機能性を提供し得る。いくつかの実装では、曖昧性除去モジュール613は、入力シーケンスの中の2つの連続トレースすなわち、介入するトレースまたはホバーのような別の種類の入力特徴を伴わないを、ユーザが1入力シーケンスの中の最後のトレースおよび他の以前の特徴に対して決定されたデフォルトの言葉を選択すること、および2第2のトレースから始まる新しい言葉を始めることを意図した指示として解釈する。したがって、決定ブロック784では、曖昧性除去モジュールは、最後の2つの入力特徴がトレースであったかどうかを決定し得る。そうであった場合、システムは、1最後のデフォルトの言葉のユーザの選択を処理するためにブロック792へと進み、2新しい入力シーケンスの中の第1の特徴として第2のトレースの構成要素すなわち、そのコーナーおよびセグメントを用いて過程700を再開し得る。そうでなければ、システムは、単に過程700を継続し得る。当然ながら、決定ブロック784における自動間隔を試験するために、任意の他の好適な特徴の組み合わせを利用することができる。より一般的に、曖昧性除去モジュール613は、入力シーケンス内の特定の特徴構成の発生時に、自動間隔を実施し、曖昧性除去パラメータデータベース630の中の曖昧性除去パラメータおよび選好を使用して、トリガ構成が設定され得る。加えて、ある言語例えば、複合言語またはコンテキスト例えば、URL入力について、自動間隔特徴は、無効にされ得、または異なる様式で実装され得る。例えば、2つの連続トレースまたは異なるトリガ条件が検出された場合、システムは、1最後のデフォルトの言葉のユーザの選択を処理するためにブロック792へと進み、および2新しい入力シーケンスの中の第1の特徴として第2のトレースの構成要素すなわち、そのコーナーおよびセグメントを用いて過程700を再開し、新しい言葉が選択された時に、最後のデフォルトの言葉および新しい言葉が複合されるべきであると示すフラグを設定し得る。ユーザが言葉を選択したことを入力データが示す場合、処理はブロック792へと進み、そこで、曖昧性除去モジュールは、選択された言葉を処理し、そうでなければ、処理はブロック786へ直接進む。ブロック792では、曖昧性除去モジュールは、選択された言葉を所望に出力に例えば、現在実行しているアプリケーションプログラムに関連付けられているウィンドウの出力領域に出力する。この出力の性質は、コンテキスト例えば、センテンスコンテキスト、フラグ、パラメータ、または他の要因の影響を受ける場合がある。例えば、文中の直前の言葉が複合言語の共通左幹であり、現在選択されている言葉が同じ複合言語の共通右幹である場合、曖昧性除去モジュールは、現在選択されている言葉の前にスペースを挿入するかどうか、または新たに選択された言葉を直前の言葉に複合するかどうかを決定し得る。そのような決定を行うために、曖昧性除去モジュールは、語彙モジュール624および/またはグラマーモジュールからの言語情報を利用し得る。別の実施例として、曖昧性除去モジュールは、ユーザがURLを入力していることをコンテキスト例えば、google.comという以前の入力から推測することができる場合に、言葉の間のスペースを排除することができる。加えて、ブロック792では、曖昧性除去モジュールは、選択を反映するように語彙モジュールを更新し得る。例えば、曖昧性除去モジュールは、選択された言葉に関係する頻度および新近性情報を更新し、および/またはユーザが同じ言葉を数回入力するまで、ユーザが作成した言葉をユーザ特有の辞書または一時的な辞書に追加し得る。これは、ユーザデータベースへの不要な言葉の付随的な追加を回避する。システムは、さらなるユーザ介入なしで、辞書へのそのような付随的な追加を除去するように、言葉の以降の編集を気に留めてもよい。加えて、ユーザは、言葉の長押し等の特定の動作を通して、ユーザが生成した言葉がユーザ辞書に即時に追加されるべきであると示し得る。言葉に加えて、システムはまた、例えば、本明細書で記述されるように言葉のペアを用いて将来の予測をさらに向上させるように、選好の1つ/複数の言葉等の言葉のテキストのコンテキストに関する情報を含み得る。別の実施例として、曖昧性除去モジュールは、例えば、システムがEメール対テキストメッセージング用の異なるユーザ辞書を維持する場合アプリケーションおよびユーザの両方に依存性である辞書を更新し得る。さらに別の実施例として、曖昧性除去モジュールは、ユーザによって利用される言葉のペアに関する情報を用いてユーザコンテキストデータベース626を更新するために、入力された以前の言葉を読み出し得る。例えば、ユーザがschoolbookという言葉のペアを頻繁に使用し、現在の入力では以前の言葉がschoolであった場合、bookという言葉が、より高い確率を受け取り、言葉の選択リスト内で昇格され得る。別の実施例として、いくつかの実装では、曖昧性除去モジュールは、例えば、選択された言葉を適用可能なフィールドラベルと関連付けることによって、アプリケーションコンテキストデータベース628を更新し得る。加えて、ブロック792では、曖昧性除去モジュールは、その将来の挙動を調整するために、現在および/または履歴上の受信した入力データ、現在および/または履歴上の入力シーケンス、ならびに現在および/または履歴上の選択された言葉を分析し得る。例えば、曖昧性除去モジュールは、どのようにユーザがユーザインターフェースにデータを入力するかにおける任意の傾向を識別することができるどのようしてシステムが一組の同様のユーザ入力に基づいてユーザのパターンまたは習慣を習得することができるかどうかを決定するために、ユーザの選択された言葉に対応するキーの場所を、入力シーケンスの中の検出された特徴の場所と比較し得る。傾向が識別された場合、曖昧性除去モジュールは、任意の観察された傾向を反映するように、ユーザ特定または他の曖昧性除去パラメータを更新し得る。実施例として、ユーザが常にコーナーにおいて文字を通り過ぎる、または文字に達しないまたはある場合においてそうする場合、ユーザが、余分な強調を明確に提供しようとして、または繰り返しの文字を示そうとして、タップ中にわずかに小刻みに動かす場合、ユーザが、典型的には、意図したキーストロークを示すためにセグメントの途中で一時停止する場合等に、曖昧性除去モジュールが、その文字選択パラメータを調整し得る。別の具体的実施例として、曖昧性除去モジュールは、ユーザが入力においてどれだけ特に正確または不正確であるかを反映するように、適用可能な距離関数および/または近接性測定基準パラメータ例えば、本明細書で説明されるように、コーナーの長円形を生成するために使用されるものを調整し得る。多くの場合において、曖昧性除去モジュールは、フィードバックループを採用し、モジュールは、ユーザが言葉のリストから選択した同じ言葉に関連付けられている一連のユーザ入力を記憶し、これらの入力を比較し、後続の言葉のリスト上の言葉の順序付けられたリスト、入力への加重の曖昧性除去等に調整を行う。両手でキーボードを握る時に複数の指を通した入力と対比して、システムが1本の指の入力デバイスを片手で握る時の親指等を検出する場合に、異なる適合モデルが存在し得る。加えて、モデルは、ユーザの速度、環境光の可用性等の他のコンテキストパラメータを考慮することができる。別の実施例として、曖昧性除去モジュールは、ユーザが好ましい言語を明示的に設定する必要がないように、ユーザが特定の言語から言葉を選択する頻度を決定することによって、ユーザの主要または好ましい言語を決定するように選択された言葉を分析し得る。加えて、ブロック792では、曖昧性除去モジュールはまた、特定のアプリケーションプログラム例えば、テキストメッセージプログラムおよび/または特定のアプリケーションフィールド例えば、名前フィールドのコンテキストにおける言葉または語句の頻度または新近性を反映するように、アプリケーションコンテキストデータベースを更新し得る。適切であれば、パスワードフィールド等の選択されたフィールドは、覚えられ得るが、ユーザが秘密のパスコード、ジェスチャ、シェイク、発話コマンドを入力し、種々のコンテキストパラメータに依存し得る期間にわたって、これらの極秘の言葉を含む保護メモリ、ボールト、または場所をロック解除するまで、読み取られることから保護することができる。例えば、デバイスがスリープモードまたはスクリーンセーバモードになった時に、ボールトが自動ロックし得る。ボールトの挙動は、必要であれば、または場合によって、ユーザによって定義され得る。さらに、ユーザは、種々の人格または身なりを定義していてもよく、明示的あるいは暗示的起動に基づいて、ユーザ名、パスワード、および他の極秘データが変化し得る。例えば、勤務時間中に、人格が仕事となる一方で、勤務時間後または週末の間に、人格は娯楽または自宅または家族となり得、システムの異なる辞書、データベース、および選好が、人格に応じて使用される。最終的に、ブロック792では、曖昧性除去モジュールは、入力シーケンスを消去し、図7Aに示されるように新しい過程700を再開し得る。ブロック786では、曖昧性除去モジュールは、入力データが文字の削除を示すかどうかを決定する。例えば、曖昧性除去モジュールは、削除特殊機能キーが押下されたまたは辿られたかどうか、またはユーザがデバイスを振ったか、または削除ジェスチャを別様に行ったかどうかを決定し得る。削除事象が検出された場合、処理はブロック788の前にブロック794および796へ進む。そうでなければ、処理はブロック788へ直接進む。ブロック794では、曖昧性除去モジュールは、入力リストから1つ以上の特徴オブジェクトを除去する。典型的には、削除キーの単一の押下例えば、タップまたはトレースについては、曖昧性除去モジュールは、入力シーケンスから、最後の意図的な特徴オブジェクトおよび任意の後続の付随的な特徴オブジェクトを除去し得る。しかしながら、曖昧性除去モジュールは、入力シーケンスから特徴オブジェクトの異なる一部を除去してもよく、ブロック394で除去される特徴の数、性質、および順番は、受信される入力データの正確な性質例えば、1つ削除するキーまたはジェスチャの代わりに全て削除するキーまたはジェスチャが利用されたかどうか、ユーザの削除ジェスチャまたは入力が、特定の特徴が削除されるべきであると示したかどうか等に依存し得る。ブロック794では、曖昧性除去モジュールは、加えて、推定入力長変数Lを減少させて、入力シーケンスからの1つ以上の意図的な特徴オブジェクトの削除を反映し得る。ブロック796では、曖昧性除去モジュールは、更新された入力シーケンスを使用して新しい言葉リストを作成し、例えば、図9Aで説明されるようにこの新しいリストをユーザに出力する。ブロック788では、曖昧性除去モジュールは、言葉の選択リストを生成する場合に、どのようにして曖昧性除去モジュールが文字および/または言葉の候補を選択するべきかに関係する特殊機能を入力データが示すかどうかを決定する。例えば、曖昧性除去モジュールは、ユーザが、シフトキー、キャプスロックキー、キーボード選択キー、またはどのようにして曖昧性除去モジュールが文字および/または言葉を選択するべきかを修正する同様のキーをタップまたはトレースしたかどうかを決定し得る。別の実施例では、キーボードは、ユーザがシステムコマンドを迅速に入力することを可能にする、コマンドキーを含み得る。例えば、コマンドキー上でCOPYという言葉をトレースすること、またはコマンドキーからトレースし、次いで、キーボード上でCOPYという言葉をトレースすることによって、ユーザは、選択されたテキストをコピーすることができる。同様に、CTRLキーが、CTRL-A全てを選択、コピーおよびペーストするためのCTRL-C/V、テキストを入力するためのCTRL-E等といった、一般的に使用されている機能をマップするために使用することができる。加えて、ユーザは、コマンドおよびショートカットを定義することが可能であり得る。別の実施例では、曖昧性除去モジュールは、他の入力手段を介して例えば、オフキーボードをトレースすることによって例えば、表示されていない文字を示すことが所望される、振ること、なでること、または他の身体的ジェスチャによって、または音声コマンドによってユーザが同様の意図を示したかどうかを決定し得る。特殊機能が示された場合、曖昧性除去モジュールは、例えば、文字決定フラグ大文字化フラグ、領域キーマッピング選択フラグ、キー文字マッピング選択フラグ、および/または発音区別符フラグ等、あるいは言葉決定フラグ大文字化フラグ等を調整することによって、入力シーケンスのコンテンツを調整することによって、および/または任意の他の好適な措置を講じることによって、ブロック798において適切な応答措置を講じる。ブロック790では、曖昧性除去モジュールは、入力データが別の機能を示すかどうかを決定する。例えば、曖昧性除去モジュールは、ユーザがメニューボタンをタップしたことを決定し得る。別の機能が示された場合、ブロック799では、曖昧性除去モジュールは、過程315が戻る前に他の示された機能を果たすために必要とされる好適なステップを講じる。そうでなければ、過程715は即時に戻る。図8Aは、該当する場合、どのような入力特徴が受信した入力データによって示されているかを識別し、それぞれの識別された入力特徴に対する特徴オブジェクトを生成するための過程800を図示する。過程はまた、各入力特徴を特性化し、入力特徴と関連付ける文字セットを選択し、その文字セットに関連付けられている近接性加重セット、またはセットの中の各文字の対応する加重を決定する。過程800は、ブロック802から始まり、そこで、文字選択サブモジュールが、未加工入力データ例えば、時系列の指を下に向けた、指を動かす、および指を上に向けた通知、または位置測定に関連付けられている事象を処理して、存在する入力特徴の種類および識別された入力特徴の場所を識別する。各入力特徴を識別するために、文字選択サブモジュールは、ユーザの指の単一の押下に対応する入力データのグループ、すなわち、指を下に向けた事象、任意の数の指を動かす事象、および指を上に向けた事象で始まる、時系列の入力データを分析し得る。次いで、文字選択サブモジュールは、関連時系列の位置/圧力データX-Y={xt,yt、随意で、pt}から運動および/または圧力測定基準を決定するために、このグループを分析し得る。例えば、文字選択サブモジュールは、押下の合計時間、移動した合計距離例えば、X-Yで反映される線分の全てを合計することによる、xt,ytの範囲またはそれらの何らかの組み合わせ、押下中の正味の圧力差等の一次値を計算し得る。別の実施例として、文字選択サブモジュールは、トレースに沿ったユーザの指の速度を決定すること、またはコーナー、変曲点例えば、二次導関数を使用する、および/または他の関心点を識別するために使用され得る、周知の幾何学的分析アルゴリズムを実施すること等の、高次および/または時間依存性計算を行い得る。決定ブロック805では、文字選択サブモジュールは、入力データがタップ特徴を示すかどうかを決定する。タップ特徴を識別するために、文字選択サブモジュールは、合計押下時間が閾値タップ時間値に該当する、および/または時間系列中の移動の全範囲も閾値タップ距離値に該当するかどうかを単に決定し得る。これらの条件が満たされた場合、文字選択サブモジュールは、タップ特徴の場所として利用するように、好適な場所例えば、押下ウィンドウ中に見られる最初、平均、または最終のx,y座標を識別し得る。しかしながら、文字選択サブモジュールは、タップを識別する、タップを他の種類の特徴と区別する、および/またはタップの場所を決定するために、任意の他の好適な方法を適用し得る。例えば、文字選択サブモジュールが、低圧力タップを無視し得る。タップが決定ブロック805で決定された場合、処理は次にブロック850で継続し、そこで、文字選択サブモジュールは、タップを特性化する、タップに関連付けられている関連文字セットを識別する、および文字セットの中の各文字に対する近接性加重を計算することによって、タップに対する特徴オブジェクトを生成する。典型的には、文字選択サブモジュールは、タップ特徴を以前に説明されているような意図的な特徴として特性化するが、曖昧性除去パラメータによって決定付けられる、ある状況例えば、低圧力タップ下では、文字選択サブモジュールは、代わりに、タップを付随的な特徴として特性化し得る。加えて、文字選択サブモジュールは、タップ特徴を指を下に向けたおよび指を上に向けた事象の両方として特性化し得る。関連文字セットを識別し、検出されたタップ特徴に対する近接性加重を計算するための好適な方法は、図8Bおよび8Cに関して本明細書でさらに詳細に説明されている。ブロック810では、文字選択サブモジュールは、入力データがコーナー特徴を含むかどうかを決定する。文字選択サブモジュールは、単純に、トレースのX-Yセットの最初および最後の構成要素またはデータ点を利用することによって、トレースの開始コーナーおよび終了コーナーを検出し得る。トレースの途中のコーナー特徴を識別するために、文字選択サブモジュールは、ユーザの方向の突然の変化を検出するように任意の好適な曲率分析方法を利用し得る。一実施例として、文字選択サブモジュールは、中心点が他の2つの点を接続する線からの閾値距離以上になるかどうかを決定するために、トレース上の一連の座標例えば、3つの連続点を繰り返し評価し得る。もしそうでなければ、評価は、トレース上の次の一組の点について繰り返す。もしそうであれば、中心点は、コーナー場所として識別される。次いで、この過程は、コーナーを見出すように反復される。別の実施例として、トレースの途中のコーナー特徴を識別するために、文字選択サブモジュールは、トレースに沿って圧力、速度、および/または加速度挙動を評価し得る。しかしながら、文字選択サブモジュールは、コーナーを識別する、コーナーを他の種類の特徴と区別する、および/またはコーナーの場所を決定するために、任意の他の好適な方法を適用し得る。コーナーが決定ブロック805で決定された場合、処理は次にブロック860で継続し、そこで、文字選択サブモジュールは、コーナーを特性化する、コーナーに関連付けられている関連文字セットを識別する、および文字セットの中の各文字に対する近接性加重を計算することによって、コーナーに対する特徴オブジェクトを生成する。典型的には、文字選択サブモジュールは、コーナー特徴を以前に説明されているような意図的な特徴として特性化するが、曖昧性除去パラメータによって決定付けられる、ある状況例えば、低圧力コーナーまたはより低い曲率を伴うトレースの途中のコーナー下では、文字選択サブモジュールは、代わりに、コーナーを付随的な特徴として特性化し得る。加えて、文字選択サブモジュールは、開始コーナー特徴を、指を下に向けた特徴として特性化し、終了コーナー特徴を、指を上に向けた特徴として特性化し得る。関連文字セットを識別し、検出されたコーナー特徴に対する近接性加重を計算するための好適な方法は、図8Bおよび8Dに関して本明細書でさらに詳細に説明されている。決定ブロック820では、文字選択サブモジュールは、セグメント特徴が入力データの中で検出されるかどうかを決定する。文字選択サブモジュールは、セグメントを検出し、単純に、2つの隣接するコーナー再度、コーナーはトレースの終点を含むことができるの間に位置するX-Yトレースデータを選択することによって、セグメント特徴に対する場所データを選択し得る。サブモジュールはまた、トレースが、2つの特徴の間の潜在的なセグメントを示すように仮想キーボード上のキーの領域よりも大きいかどうかを決定し得る。しかしながら、文字選択サブモジュールは、セグメントを識別する、セグメントを他の種類の特徴と区別する、および/またはセグメントの場所を決定するために、任意の他の好適な方法を適用し得る。セグメントが決定ブロック820で決定された場合、処理は次にブロック870で継続し、そこで、文字選択サブモジュールは、セグメントを特性化する、セグメントに関連付けられている関連文字セットを識別する、および文字セットの中の各文字に対する近接性加重を計算することによって、セグメントに対する特徴オブジェクトを生成する。典型的には、文字選択サブモジュールは、曖昧性除去パラメータによって他に決定付けられない限り、セグメント特徴を付随的な特徴として特性化する。関連文字セットを識別し、検出されたセグメント特徴に対する近接性加重を計算するための好適な方法は、図8Bおよび8Eに関して本明細書でさらに詳細に説明されている。決定ブロック830では、文字選択サブモジュールは、別の種類の特徴が入力データの中で検出されるかどうかを決定する。例えば、文字選択サブモジュールは、X-Yトレース中に発生した任意のホバーリングまたは異常局所圧力を識別し得る。文字サブモジュールが検出し得る他の特徴の実施例は、例えば、文字を選択するための口頭のコマンド、トレース中に画面をタップする第2の指、曲率の適度の変化、および曲率の一定の変化例えば、旋回運動を示唆するを含む。別の種類の特徴が検出された場合、処理は次にブロック880で継続し、そこで、文字選択サブモジュールは、特徴を特性化する、特徴に関連付けられている関連文字セットを識別する、および文字セットの中の各文字に対する近接性加重を計算することによって、特徴に対する特徴オブジェクトを生成する。文字選択サブモジュールは、特徴が、特的のキーストロークを達成するというユーザの意図の明確な発現である場合、識別された特徴を意図的な特徴として特性化し得る。例えば、明確に話した文字は、意図的な特徴として特性化され得る。過程800中に、文字選択サブモジュールは、種々のユーザ特有の曖昧性除去パラメータを評価することによって、ユーザの入力スタイルにおける既知の特性または傾向を相殺するように、入力特徴の場所を調整し得る。例えば、文字選択サブモジュールは、ユーザがキーの右側をタップする傾向を有する場合、タップ特徴の位置を、その実際の検出された場所の左側に調整し得る。図8Bは、文字セットを識別し、入力特徴に対する関連近接性加重を計算するための過程890を示す。過程890は、ブロック803から始まり、そこで、文字選択サブモジュールは、特定の特徴の種類に使用されるべきである適用可能な距離関数および近接性測定基準を識別するために、曖昧性除去パラメータを利用する。距離関数は、特定の入力特徴の場所と仮想キーボードの中の特定のキーの場所との間の分離を反映する、距離スコアを導出する方法を提供する。近接性測定基準は、近接性加重を導出する方法を提供する。近接性加重は、特定の入力特徴の場所と仮想キーボードの中の特定の対応するキーの場所との間の分離に基づいて、ユーザが入力特徴による特定のキーストロークを示すことを意図した可能性または確率を反映する。以下で説明される図8C-8Eは、利用され得る、種々の種類の距離関数および近接性測定基準を図示する。しかしながら、当業者であれば、任意の好適な距離関数および近接性測定基準が採用され得ることを理解するであろう。ブロック806では、文字選択サブモジュールは、ユーザに表示され、ユーザによって利用されている仮想キーボードのキーレイアウト例えば、12キー、28キー等を反映する、キーボードマッピングデータベース622から領域キーマッピングをロードする。次いで、ブロック809から始まって、文字選択サブモジュールは、領域キーマッピングにおいて各キーに対するループを行う。ループは、ブロック812から始まり、そこで、文字選択サブモジュールは、典型的には、言語非依存性マッピングである、領域キーマッピングを使用することによって、キーの場所を決定する。次に、ブロック815では、文字選択サブモジュールは、図8C-8Eに関して本明細書でさらに詳細に説明されるように、キーの場所および入力特徴の場所を使用して、適用可能な距離関数を評価することによって、キーの距離スコアを計算する。決定ブロック818では、文字選択サブモジュールは、キーがさらなる分析に値するように入力特徴に十分近いかどうかを決定し、そうするために、サブモジュールは、閾値に対して距離スコアを評価し得る。キーが十分に近くない場合、ループはブロック812から始まって繰り返す。そうでなければ、過程はブロック824へと進み、そこで、文字選択サブモジュールは、図8C-8Eに関して本明細書でさらに詳細に説明されるように、キーの場所、入力特徴の場所、および/または距離スコアを使用して、適用可能な近接性測定基準を評価することによって、キーの近接性加重を評価する。ブロック827では、文字選択サブモジュールは、キーに関連付けられている全ての文字、仮想キーボード上でユーザに表示されないことがある文字例えば、アクセントのある文字さえも識別するために、1つ以上のキー文字マッッピングを使用する。サブモジュールは、種々のフラグ例えば、キーボード選択フラグ、動的コンテキスト情報例えば、オペレーティングシステムから受信されるユーザの言語設定、ユーザ選好、および/または曖昧性除去パラメータを評価することによって、ブロック827でどのキー文字マッピングを使用するかを決定し得る。例えば、サブモジュールは、ユーザインターフェースがフランス語文字レイアウトを伴う完全QWERTYキーボードを有するという指示を受信し、好適なキー文字マッピングを選択するために、この情報を使用し得る。文字選択サブモジュールは、例えば、異なる画面上文字レイアウトを切り替えることなく、連続的にテキストを入力することを希望し得る、他言語ユーザに適応するためにこのブロックで1つより多くのキー文字マッピングを利用し得る。ブロック833では、文字選択サブモジュールは、ブロック827で識別された各文字を特徴オブジェクトの文字セットに追加し、各識別された文字を計算されたキー近接性加重と関連づける。ブロック836では、文字選択サブモジュールは、領域キーマッピングにおいて、処理するべきさらなるキーがあるかどうかを決定する。もしそうであれば、ループは、ブロック812から始まって繰り返し、そうでなければ、過程890が戻る。図8Cは、タップ特徴とともに好適に採用され得る、好適な距離関数および/または近接性測定基準を概念的に図示する。図8Cは、仮想表示QWERTYキーボードのEキー上のデータ点Xで示されるに位置するタップ特徴882を示す。いくつかの実装では、距離関数および近接性測定基準の両方は、区分的階段関数である。一実施例では、キーの任意の部分または代替として、キーの全体が半径Rの円881の範囲に入る場合に、キーに対する距離スコアは0であり、Rは、少なくとも部分的に、曖昧性除去パラメータ例えば、ユーザの入力を反映するように調整され得るパラメータ、および平均キーサイズおよび/または平均キー分離等のキーボードレイアウトに関係するパラメータを含むを使用して決定され得る。この実施例では、距離関数は、半径の外側にある全ての他のキーに対して最大値を有する。この実施例では、示されたタップ882について、A、W、S、E、D、RおよびおそらくTキーは、0距離値または他の最小値を有し、全ての他のキーは、最大距離値を有する。別の実施例では、キーに対する距離スコアは、タップ点882が直接キーの上にある場合は0または最小値であり、キーのいくらかまたは代替として全体が半径Rの円881の範囲に入る場合は中間値であり、円4881の外側の全ての他のキーについては最大値である。この実施例では、図8Cに示されるタップ882については、Eキーは、ゼロ距離スコアを有し、A、W、S、D、RおよびおそらくTキーは、中間値を有し、全ての他のキーは、最大値を有する。さらに別の実施例では、キーに対する距離関数は、タップ特徴882からキーの上または中の点例えば、その重心、その周辺上の最近点等までのデカルト距離である。これらの実施例では、キーに対する近接性測定基準は、距離関数の最大値または別の最大値からキーの距離スコアを引いたものとして定義され得る。しかしながら、当業者であれば、任意の他の好適な高次距離関数および/または近接性測定基準が採用され得、近接性測定基準がキーの距離スコアを直接採用しないことがあることを認識するであろう。タップ特徴について説明される技法はまた、他の指を置いたおよび/または指を離した特徴例えば、トレースを開始または終了するコーナー特徴に好適に採用され得る。図8Dは、コーナー特徴とともに好適に採用され得、非終端コーナー特徴に特に適する好適な距離関数および/または近接性測定基準を概念的に図示する。トレース中に、ユーザがコーナー883に接近するにつれて、ユーザが意図したコーナーキーを通り過ぎる、および/またはそれに達しない傾向があり得る。ユーザが所与のトレース中に通り過ぎるか達しないかどうかは、ユーザの掌性、キーボードの形状および/またはレイアウト、トレースの方向、ユーザがコーナーに接近する際の速度または加速度、ユーザの手の形状、ユーザがコーナーキー手によって妨害される場合があるに接近する際にキーボードレイアウトを視覚的に識別するユーザの能力、コーナーにおけるトレースの曲率の程度、および他の要因の関数であり得る。これらの関数はまた、どのようにしてユーザが通り過ぎるか、または達しないか例えば、x方向、y方向に通り過ぎるかどうか、どれだけの距離を通り過ぎるか等に細かく影響を及ぼし得る。図8Dは、どのようにして距離関数および/または近接性測定基準が、意図したキーをユーザが通り過ぎる、またはそれに達しないことを補償し得るかを概念的に図示する。図8Dは、図8Cに関して以前に説明されている区分的距離関数に類似している区分的距離関数を実装するために、内部コーナー特徴883における楕円形884または長円領域または同様の非対称形状がどのようにして使用され得るかを示す。領域の正確な形状および配向は、前述の要因によって引き起こされる超過距離または距離不足補正するように選択され得る。例えば、1つの実装では、楕円形884の主軸888は、ユーザの指がコーナー883に到達する直前、コーナーに到達する時、またはコーナーを曲がった直後のユーザの指の速度ベクトルと平行に選択され得る。加えて、主軸888の長さは、これらの点のうちの1つにおける速度ベクトルの規模に比例して増加するように、および/または以前に説明されている要因例えば、ユーザの粗雑さを別様に反映するように選択され得る。同様に、短軸889の長さは、以前に説明されている要因を反映するように選択され得る。図8Fに示されるように、それぞれ、その独自の主軸および短軸を有する、2つの半長円を含む、卵形等の異なる種類の非対称形状もまた、使用され得る。2つの主軸の方向ならびに絶対および/相対的長さは、ユーザの指の速度規模および方向の両方、ユーザの掌性、ユーザの粗雑さ、および/または以前に説明されている他の要因の関数であり得る。1つの実装では、半楕円形の主軸は、ユーザの指がコーナーに到達する直前、コーナーに到達する時、またはコーナーを曲がった直後のユーザの指の速度ベクトルと平行に選択され得る。軸は、部分的に、ユーザの掌性および移動方向に依存している不明瞭な視界を補正するように選択され得る。例えば、右に移動する右利きのユーザは、例えば、同じ方向に移動する左利きのユーザほど指の右側のキーがよく見えず、それは、コーナーの右側のキーを打つ意図を判断する際に増大した不正確性を引き起こす。図8Fに示される実施例では、卵形は、ユーザが左下から接近する際に、右利きのユーザのいくつかのキーのより不明瞭な視界を補うように、キーボードの右側でより長い。卵形の中の2つの半長円の短軸はまた、以前に説明された要因を反映するように選択され得、2つの半長円は、異なる長さの短軸を有してくもよく、長いほうの軸が上記の実施例では右側に位置する。図8Cに関して以前に説明された方法と同様に、非対称形状例えば、図8Fの楕円形884または卵形の範囲に完全または部分的に入るキーは、非対称形状の外側の形状よりも低い距離スコアおよび/または高い近接性加重が割り当てられ得る。別の実施例として、コーナー点883がキーの上にある場合、そのキーは、最小距離スコアが割り当てら、非対称形状内のキーは、中間距離スコアが割り当てられ、非対称形状の外側のキーは、最大距離スコアが割り当てられ得る。さらに別の実施例では、キーに対する距離関数は、コーナー特徴483からキーの上または中の点例えば、その重心、その周辺上の最近点等までのデカルト距離である。また、キーに対する近接性加重は、最大可能距離スコアからキーの距離スコアを差し引くことによって調整され得る。図8Dは、コーナー特徴に対する区分的距離関数および近接性測定基準を主に説明している。しかしながら、任意の他の好適な高次距離関数および/または近接性測定基準が採用され得超過距離または距離不足要因を補正する高次距離関数および/または近接性測定基準、近接性測定基準は、キーの距離スコアを直接採用する必要がない。図8Eは、セグメント特徴とともに好適に採用され得る、距離関数および/または近接性測定基準を概念的に図示する。ここで、区分的距離関数および/または近接性測定基準は、セグメント特徴886のトレース線からの特定の垂直距離の範囲に入る全ての点によって規定される、不整形領域885を使用して定義され得る。領域を規定するために利用される最大距離は、少なくとも部分的に例えば、ユーザの入力スタイルおよび習慣を反映するように調整され得るパラメータを含む曖昧性除去パラメータを使用して決定され得る。第1の実施例では、部分的にまたは代替として全体的に不整形領域885の範囲に入る全てのキーは、最小距離スコアおよび/または最大近接性加重を受け、全ての他のキーは、最大距離スコアおよび/または最小近接性加重を受け得る。第2の実施例では、セグメント特徴886によって直接交差されるキーは、最小距離スコアおよび/または最大近接性スコアを受容してもよく、部分的にまたは代替として全体的に領域の範囲に入る他のキーは、中間距離スコアおよび/または最大近接性スコアを受け、全ての他のキーは、最大距離スコアおよび/または最小近接性スコアを受け得る。当業者であれば、トレース線までのキーの垂直距離を利用する高次関数および測定基準を含む、任意の他の好適な高次および/または近接性測定基準が採用され得ることを認識するであろう。図9Aは、特徴オブジェクトの入力シーケンスを使用して、言葉の選択リストを作成するための過程900を示す。過程900は、ブロック905から始まり、そこで、言葉リスト選択サブモジュールは、適用可能な曖昧性除去パラメータ;ユーザコンテキストデータベースおよびアプリケーションコンテキストデータベースから読み出される半静的コンテキストデータ、およびオペレーティングシステムおよび/またはアプリケーションプログラムから読み出される動的コンテキストデータを含む、コンテキストデータ;ならびに、例えば、語彙モジュール、ユーザコンテキストデータベース、および/またはアプリケーションコンテキストデータベースからの頻度データを含む言語データをロードまたは受信する。ブロック510では、言葉リスト選択サブモジュール略して言葉サブモジュールは、コンテキストデータ、曖昧性除去パラメータ、および/または任意のフラグ例えば、言語選択フラグを使用して、語彙サブモジュールから適用可能な辞書をロードする。例えば、使用される辞書は、曖昧性除去モジュールの出力を受信するアプリケーションプログラムの種類に基づいて選択され得る。別の実施例として、使用される辞書は、音声認識ソフトウェアを使用してユーザの発話を分析することによって、または別のユーザ入力モードを分析することによって生成され得る。例えば、辞書は、音声認識ソフトウェア、手書き認識ソフトウェア等によって生成されるN個の最良リストであり得る。ブロック915では、言葉サブモジュールは、言葉のサブグループを生成するように、入力シーケンスの何らかの部分、推定入力長L、および/またはコンテキストを使用して、辞書を事前にフィルタにかけ得る。第1の実施例として、言葉サブモジュールは、言葉が最初の指を上に向けた特徴および/または最後の指を下に向けた特徴以前に説明されているに合致するかどうかに基づいて、辞書を事前にフィルタにかけ得る。なぜなら、これらの特徴がおそらく、特定器のキーストロークを達成するユーザの意図の最も強い指示を提供するからである。第2の実施例として、言葉サブモジュールは、推定入力長Lに基づいて、辞書を事前にフィルタにかけ得る。例えば、言葉サブモジュールは、Xを引いたLよりも短い、あらゆる言葉を除外し得、Xは、曖昧性除去パラメータを使用して決定される。第3の実施例として、言葉サブモジュールは、音声認識ソフトウェアによって生成される言葉のリストに対して事象を事前にフィルタにかけ得る。第4の実施例として、ユーザが名前フィールドにタイプしていることを動的コンテキストが示す場合、適正な名詞のみを含むように辞書をフィルタにかけ得る。当然ながら、言葉サブモジュールは、これらのフィルタリング技法の組み合わせを使用し得る。ブロック920では、言葉サブモジュールは、言語データ、コンテキスト、言葉の長さ、および/または任意の他の好適な要因に基づいて、サブグループの中の次の言葉を選択する。例えば、言葉サブモジュールは、使用の頻度に基づいてサブグループを仕分け、その順番でこれらの言葉を提示し得る。ブロック925では、言葉サブモジュールは、入力シーケンス、コンテキスト、言葉の長さ、および言語データを使用して、合致測定基準を評価することによって、選択された言葉に対する合致スコアを決定する。合致測定基準を使用して合致スコアを決定するための好適な方法が、図9Bに示されている。決定ブロック930では、言葉サブモジュールは、言葉が、曖昧性除去パラメータを使用して決定される最小閾値を超える合致スコアを有するかどうかを決定し得る。もしそうであれば、過程がブロック940へ進む前に、言葉がブロック935で言葉の選択リストに追加される。そうでなければ、処理はブロック940へ直接進む。言葉サブモジュールは、十分に合致しない言葉を排除し、固定または最小サイズの言葉リストを提供し得る。代替として、ブロック930は、言葉サブモジュールから排除され得る。ブロック940では、言葉サブモジュールは、サブグループの中に、処理すべきさらなる言葉があるかどうかを決定する。該当する場合、処理は、別の言葉が評価され得るようにブロック920に戻る。そうでなければ、過程はブロック945へと進み、言葉の選択リストは、後処理される。例えば、言葉サブモジュールは、スコアを合致させることによって、および/または最高合致スコアを有する1つ以上のデフォルト言葉を選択することによって、リストを仕分けてもよい。別の実施例として、仕分けた後に、言葉サブモジュールは、向上したユーザ閲覧挙動を促進するように、論理的な様式で言葉の順序付けをグループ化または調整し得る。例えば、言葉サブモジュールは、同じ語根例えば、interest、interesting、およびinterestinglyを有する言葉をともにグループ化して、ユーザが言葉の選択リストをより迅速にスキャンすることを可能にするように、リストを再配置し得る。さらに別の実施例として、リストを調整するため、例えば、リストの中の特定の言葉を昇格または降格させるため、および/またはリストの順番を別様に調整するために、動的または静的コンテキストデータがブロック950で利用され得る。例えば、ユーザが以前に同じアプリケーションプログラムで特定の言葉を利用した場合、その言葉が昇格され得る。別の実施例として、言葉サブモジュールは、組み込まれた句読点を有する言葉よりも、句読点で終わる言葉を昇格し得る。さらに別の実施例として、1つより多くの言語の辞書が、言葉のリストを生成するために利用された場合、または曖昧性除去モジュールが例えば、バイリンガルユーザに適応するようにバイリンガル統合を別様に提供している場合、後処理は、ユーザの主要言語の中の言葉を昇格し、および/またはユーザの二次言語の中の言葉を降格させ得る。ユーザの主要言語は、言語パラメータまたはフラグによって、および/またはユーザコンテキストデータベース626からのユーザコンテキストデータによって決定され得る。後処理のなおも別の実施例として、曖昧性除去モジュールは、アプリケーション特有のフィールド情報および/またはアプリケーションコンテキストデータベースから読み出された規則または文法に基づいて、特定の言葉を昇格または降格させ得る。後処理の別の実施例では、曖昧性除去モジュールは、ユーザが、podcastのような新語、または一般的ではない固有の名詞等の、標準辞書に記載されていない、または見られない場合がある言葉を利用しようとしているかどうかを決定し得る。言語の中の特定の文字列に基づいて、ユーザが辞書に現れない記載されていない言葉を入力しようとしている場合があるかどうかを決定した場合、記載されていない言葉をデフォルトの言葉にし、代替的な提案として言葉の選択リストを提供する。そうでなければ、デフォルトの言葉として辞書から選択されたスコアの高い言葉を利用し得る。図示すると、ユーザがpodcastという文字をはっきりとタップする場合、文字列po、ca、およびst等の組み合わせが英語で頻繁に見られるため、それが標準英語辞書の中にない場合があるという事実にもかかわらず、曖昧性除去モジュールは、デフォルトの言葉としてpodcastを維持し得る。一方で、ユーザがPfsxという文字をはっきりとタップする場合、pf、fs、およびsxの組み合わせが全て、英語であまり頻繁に見られないため、曖昧性除去モジュールは、ユーザがスペルミスをしたまたは雑にタイプしたと仮定してもよく、pfsxをデフォルトの言葉として選択しない。代わりに、曖昧性除去モジュールは、ブロック905-940中に見出される、高い合致スコアを伴う辞書の言葉を選択する。この決定を行うために、曖昧性除去モジュールは最初に、入力シーケンスの中の各意図的な特徴例えば、タップについて、最良の近接性スコアを有する関連文字を選択することによって、ストロークシーケンスを生成し得る。次に、曖昧性除去モジュールは、構成スコアを導出するために、所与の言語または言語の他の論理グループの中の種々の文字列例えば、文字のバイグラム、3グラム、4グラム、nグラム等の確率または頻度を提供する、語彙モジュール624内の表またはデータベースを使用することによって、ストロークシーケンスの構成を評価し得る。構成スコアは、バイグラム等の種々の確率/頻度の産物、または種々の確率/頻度の別の高次関数であり得る。構成スコアが閾値を超えた場合、曖昧性除去モジュールは、デフォルトの言葉としてストロークシーケンスを使用し得る。いくつかの実装では、ストロークシーケンスは、入力シーケンスの異なる一部例えば、コーナーではなくタップ特徴のみを使用して定義され得る。ブロック950では、言葉の選択リストは、例えば、ディスプレイ上の言葉の選択リスト領域を介して、または別様に、ユーザに出力される。代替として、言葉の選択リストおよび/またはデフォルトの言葉は、言葉を選択するためにユーザ介入を必要としない別の過程例えば、アプリケーションプログラムを提供し得る。図9Bは、合致測定基準を使用して、言葉に対する合致スコアを計算するための1つの好適な過程990を示す。任意の合致測定基準またはアルゴリズムが、合致スコアを生成するために利用され得、開示された技術は、以下で説明される特定の実施例に限定されない。過程990は、言葉サブモジュールが、言葉の合致スコアを、1という統一値であり得る、デフォルトのスコアに設定する時である、ブロック972から始まる。次いで、言葉の中の各文字に対するループが、ブロック974で示されるように始まる。ブロック975では、言葉サブモジュールは、入力シーケンスの中の次の意図的な入力特徴に対応する文字セットおよび関連近接性加重セットを読み出すか、または、これが文字ループの第1の反復である場合は、入力シーケンスの中の第1の意図的な入力特徴に対応する文字セットおよび関連近接性加重セットを読み出す。例えば、言葉サブモジュールは、入力シーケンスの中の次のタップまたはコーナー特徴に関連付けられている文字セットおよび近接性加重を読み出す。ブロック976では、言葉サブモジュールは、文字に対する近接性加重を識別する。そうするために、サブモジュールは、文字が読み出された文字セットに現れるかどうかを決定し、もしそうであれば、文字に関連付けられている、読み出された近接性加重を使用する。文字が読み出された文字セットに現れない場合、サブモジュールは、曖昧性除去モジュールによって特定されるデフォルトの近接性加重例えば、低加重を使用し、ループ974を終了し、またはデフォルトの合致スコア例えば、0のスコアまたは他のデフォルトの合致スコアを返すことによって過程990を終了し得る。ブロック978では、言葉サブモジュールは、文字に対する識別された近接性加重を反映するように、合致スコアを調整する。一実施例では、サブモジュールは、それに読み出された近接性加重を掛けることによって、合致スコアを調整する。しかしながら、合致スコアは、読み出された合致スコアを反映するように任意の方式で調整され得る。例えば、以前の合致スコアと読み出された近接性加重とは、単純加算、加重合計、乗算、除算、および高次関数等を含む、任意の好適な関数によって組み合わせられ得る。決定ブロック979では、言葉サブモジュールは、言葉の中にこれ以上処理すべき文字があるかどうか、および入力シーケンスの中にさらに多くの意図的な特徴があるかどうかを試験する。両方の条件が満たされた場合、文字ループは、ブロック975から始まって繰り返す。そうでなければ、過程はブロック980へと進む。ブロック980では、言葉サブモジュールは、コンテキストデータおよび/または言語データ例えば、使用頻度を反映するように合致スコアを調整する。一実装では、言葉サブモジュールは、使用頻度によって合致スコアを増減する。別の実施例として、言葉サブモジュールは、コンテキストデータに基づいて合致スコアを増加させ、例えば、ユーザが同じ種類のデータフィールドおよび/または同じアプリケーションで同じ言葉を利用した場合に、合致スコアが増加させられ得る。さらに別の実施例として、言葉が起こり得る可能性が高い、または低いことを、周辺の文のコンテキスト例えば、ユーザによって入力された以前の言葉が示唆する場合、合致スコアは上方または下方に調整され得る。これらの実施例は、包括的となることを目的としていない。以前の合致スコアは、どのようにしてコンテキストおよび/または使用頻度が、言葉がユーザの意図した入力であった可能性を増加または減少させるかを反映する、任意の好適な方式で例えば、高次関数を介して調整され得る。ブロック982では、公知の編集距離技法を利用することによって、言葉サブモジュールは、入力シーケンスの意図的な特徴において反映される文字列に合致するために必要とされる編集の種類を決定する。例えば、言葉サブモジュールは、一連の意図的な特徴において反映される一連の文字に合致するように、どのような文字が言葉に追加される必要があるか、またはどのような文字が言葉から除去される必要があるかを決定し得る。必要とされる編集の種類を決定する場合に、言葉サブモジュールは、入力シーケンスの中の意図的な特徴に対して言葉の最初の部分を合致させようとするのみであり得る。例えば、言葉サブモジュールは、言葉の中の第L番目の文字の後に起こる不一致を無視し得る。Lは、推定入力長である。代替として、カットオフ点をL-1、L2、L3等として選択することができる。このようにして、言葉サブモジュールは、ユーザの最初の入力への良好な最初の合致を有するより長い言葉が返される見込みを向上させる。ブロック984では、必要とされる各編集について、言葉サブモジュールは、入力シーケンスにおいて反映される特徴の種類および近接性加重を含む、推定入力長および入力シーケンスに基づいて、編集罰則を決定する。本明細書で利用されるように、低罰則は、同様の編集について標準編集コスト関数によって評価される、標準またはデフォルトの罰則よりも低いものである。第1の実施例として、言葉サブモジュールは、言葉の最初の部分の後に必要とされる文字の変化について、ゼロまたは低罰則を割り当て得る。例えば、言葉の中の第L番目の位置の後に必要とされる文字の変化について評価される、ゼロまたは低罰則がないことがある。この技法は、同様に、ユーザの最初の入力への良好な最初の合致を有する、より長い言葉が返される見込みを向上させる。第2の実施例として、言葉サブモジュールは、意図的および付随的な特徴の両方を含む、完全入力シーケンスによって反映される文字を伴う文字の追加または削除について、ゼロまたは低罰則を割り当て得る。例えば、言葉と意図的な特徴の入力シーケンスとの間の唯一の違いが、第3および第4の意図的な特徴の間の欠落しているEである場合、言葉サブモジュールは、Eという文字が、入力シーケンスの中の第3および第4の意図的な特徴の間にある付随的な特徴例えば、セグメントに関連付けられている文字セットに現れるならば、ゼロまたは低罰則を割り当て得る。いくつかの実装では、評価される罰則は、欠落している文字に関連付けられている近接性加重の関数であり得る。例示すると、以前の実施例に戻って、欠落しているEを提供するセグメント特徴が、Eキーの中心を直接通過するすなわち、Eという文字に対する近接性加重が、その可能な限り最大の値に近い場合、評価される罰則は、セグメントがEキーからさらに遠く離れる場合よりも低くてもよい。これらの状況で編集罰則を低減または排除することによって、言葉サブモジュールは、単純に文字を通してトレースすることによって、ユーザが文字の選択を示すことを可能にする。第3の実施例として、言葉サブモジュールは、文字を繰り返すこと、またはキーストロークを繰り返すことによって引き起こされる、文字の追加または削除について、ゼロまたは低罰則を割り当て得る。別の言い方をすれば、1つ以上の入力特徴のみが文の中で1回以上繰り返された場合、言葉が入力シーケンスに合致するならば、評価される罰則がないか、または低罰則がある。これらの状況で編集罰則を低減または排除することによって、言葉サブモジュールは、ユーザが、削減された数の入力特徴を用いて、繰り返しの文字または繰り返しのキーストロークを有する言葉の選択を示すことを可能にする。低罰則が評価される場合、それは、繰り返される必要がある入力特徴の種類例えば、意図的対付随的、各特徴が繰り返される必要がある回数、および/または繰り返された入力特徴に関連付けられている近接性測定基準の関数であり得る。例示すると、言葉がWEEDであり、言葉と意図的な特徴の入力シーケンスとの間の唯一の違いが、第2のEが第2および第3の意図的な特徴の間で欠落していることである場合、言葉サブモジュールは、ゼロまたは低罰則を割り当て得る。第4の実施例として、言葉リスト選択サブモジュールは、句読点および/または同様の記号の追加または削除を反映する文字の変化について、ゼロまたは低罰則を割り当て得る。ブロック986では、言葉サブモジュールは、あらゆる計算された罰則を反映するように、合致コストを調整する。場合によっては、罰則は、合致スコアから差し引かれる。しかしながら、他の実装では、高次調整が利用され得る。次いで、過程990は戻る。IV.セキュリティシステムへの適用開示された技術の別の側面によれば、ユーザがQWERTYキーボードまたは他の一般的なキーボードレイアウトの熟知を活用することを可能にする、パスワードまたは他のテキスト入力システムおよび方法が提供される。このパスワードまたは他のテキスト入力は、それぞれ、ゾーン出力キーの役割を果たす、明確に異なるキーを主体としている、好ましくは9つ、または他の適切な数の規定されたゾーンをユーザに提供することによって達成される。ユーザが特定のゾーンから1つのキーを選択する場合に、選択されたゾーンのゾーン出力キーは、選択されたものとして見なされる。したがって、ユーザは、標準的に標準キーボード上でパスワードを入力することができる一方で、ゾーン定義に応じて、一連のゾーン出力キーは、入力パスワードを表す出力となる。受信デバイスが、入力パスワードに対応する一連の出力キーを生成する時に使用されるゾーン定義を認識している場合、受信デバイスは一連の出力キーを解読し、適正なパスワードが入力されたかどうかを決定することができる。複数のゾーン定義が利用可能であり得る。したがって、ゾーン定義識別子および一連のゾーン出力キーを伝送することによって、複数のゾーン定義およびそれらに関連付けられている識別子を認識している受信デバイスは、パスワードのセキュリティを維持しながら、伝送を適正に解釈することができる。加えて、ゾーン定義は、互に隣接しているキーを必ずしも含む必要はない。非隣接ゾーンを規定することによって、ユーザは、キー入力においてより正確でなければならないが、ハッカーまたは他の窃盗犯がコードを解く困難が多大に増加させられ得、可能な利用可能なゾーン定義の数も同様に、多大に増加させられる。加えて、パスワード文字のテキスト入力に標準キーボードのみを使用するよりもむしろ、文字は、ジョイスティック、4または8方向キーパッドTVのリモートコントロール、電話、および携帯電話で見られるもの等上での指向性入力、そのようなリモートコントロールまたは他の利用可能な数字キーパッド上の数字キーの種々の組み合わせ、またはNintendo登録商標Wii登録商標リモートあるいは他の棒状入力デバイス、身体運動入力解決法、あるいは同等物等の、そのようなリモートコントロールまたは他のデバイスの指示機能性を使用して、入力され得る。そのような非従来型の入力デバイスを使用する場合に、ユーザは、入力される所望のキーの方向にジョイスティックまたは他のデバイスを動かし得る。この運動を行う時に、キーの間で動くよりもむしろ、セレクタはキーの隣接するゾーンの間を動き、セレクタが動いたゾーンに含まれる全てのキーが選択され、そのゾーンに関連付けられているゾーン出力キーがさらに線引きされ得る。したがって、キーが選択されることが所望される場合、所望のキーを含むゾーンへ移動するために、ジョイスティック等が使用され得る。そのようなゾーンの選択によって、関連ゾーン出力キーは、出力された一連の文字の一部として提示され得る。一例として、ユーザがパスワードの一部としてRという文字を選択することを希望する場合、R、T、Y、U、およびIという文字を含むゾーンへの移動、ゾーン出力キーとしてYを使用すること、およびそのようなゾーンの選択は、Yという文字を出力ストリームの一部として出力させる。コード化されたパスワード伝送を提供することに加えて、ユーザは、ゾーンの数の間で選択する必要しかなく、特定のゾーンの中の任意のキーの選択が、パスワードデータストリームの一部として出力される同じゾーン出力キーをもたらすという点で、各個別キーを選択するほど正確である必要はない。開示された技術はまた、任意のキーボード構成、および言語、および任意の他の記号グループ化に適用可能であり得る。さらに、入力デバイスに割り当てられたゾーンは、ユーザに可視的である必要はなく、むしろ、背景で伝送されるデータを暗号化するように働くのみである。最初に図10を参照すると、開示された技術による第1の実施形態が示されている。図10では、概して1000で指定されるキーボードには、複数のキー1110が提供される。この描写された実施形態では、26文字QWERTYキーボードが示されている。26英文字アルファベットの他の配置、他の言語で使用するための任意の他の文字セットの配置、数字および/または文字の任意の組み合わせ、または任意の種類の記号の任意の他の所望の組み合わせを含むが、それらに限定されない、他のキーボード構成が利用可能であることが、当業者によって理解されるべきである。既定数のこれらのキー1110はまた、ゾーン出力キー1120としても指定される。描写した実施形態では、9つのそのようなゾーン出力キーがあるが、任意の所望の数が採用され得る。各ゾーン出力キー1120は、それに関連付けられている1つ以上の文字キーを含む、ゾーンに関連付けられている。一例として図10でさらに示されるように、120aとして指定されるEキーは、Eキーを含むゾーンに対するゾーン出力キーを表し、他の文字キーQ、W、R、およびTは、1110aで集合的に指定される。したがって、ユーザがこのゾーン1110aまたは1120aの中の5つのキーのうちのいずれか1つを選択することに関心を持っている時はいつでも、ゾーン出力キーEは、選択されたパスワードまたは他のテキストを表す出力データストリームの一部を構成するように、選択された出力キーとなる。各ゾーン出力キーが所定の一意の組のキー1110と関連付けられ得ることが予期される一方で、重複するゾーンを有し、実際に、1つ以上のゾーンの中で1つ以上のキー1110を含むことが可能である。さらに、利用可能な記号キーの全て、この場合は文字が、少なくとも1つのゾーンに含まれることが想定されるが、このような場合である必要はない。実際に、直接ユーザ選択を必要として、1つまたは複数の任意の特定のキーがそのまま残され得る。そのような構成は、めったに使用されないキー、または特別な重要性があるキーに望ましいことがある。図10を参照して、この描写から理解することができるように、キー入力を選択する場合に、ユーザがそれほど正確である必要はなく、この特定の描写した実施形態では、より従来的な26文字よりもむしろ、選択するのに9つのゾーンしか持たないので、ユーザ体験は容易にされる。図10で描写されるような特定の実施形態では、ユーザインターフェースは、8方向移動、および中央ホーム位置を伴うジョイスティックを利用する場合があり、各利用可能位置は、ゾーン出力に対応する。代替として、9数字キーパッドを伴うリモートコントロールまたは他のデバイスが採用され得、各数字は、ゾーン出力キーのうちの1つに対応する。当然ながら、より少ない方向移動を伴うジョイスティック、またはより多い、同じ、あるいはより少ない自由度を伴うトラックボールを含む、他の構成要素が採用され得、したがって、ユーザがゾーンの間で方向的に移動することを可能にする。より少ないハードウェアおよび習得を必要とする一方で、移動が隣接するゾーンの間で飛ぶことに限定され得るので、そのような構成は、1つのゾーンから、入力キーボード上で遠隔に位置する別のゾーンへ移動する場合に、2回以上飛ぶことを必要とし得る。代替として、各文字入力後に、カーソルまたは他のポインタがホームまたは他の指定されたゾーンあるいは場所に戻る、シナリオを提供することが可能であり得る。この特徴には、その利益および欠点があり、各テキスト入力のための既知の始点を提供するが、二重文字のための複数の移動を必要とする等である。上述のように、8方向ジョイスティックを採用する場合に、ユーザは、ジョイスティックの移動を通してゾーンの間を移動することができる。2つ以上のスキームが可能である。コントローラの第1の有効な移動は、上、下、左、右、右上、左上、右下、および左下であり得る。これらの8つの明確に異なる移動は、ゾーンからゾーンへ移動して、ユーザがキーボード上のゾーン出力キーの間で迅速に移動することを可能にする。同様のスキームが、あまり多用途ではない4方向ジョイスティックとともに採用され得る。しかしながら、利用可能な対角移動がないと、1つのゾーンから別のゾーンへ移動するために、より多く飛ぶことが必要であり得る。第2のスキームでは、8方向キーのそれぞれ、およびある中立位置がそれぞれ、ゾーンに対応し、1つのゾーンから別のゾーンへナビゲートする必要なく、ユーザがゾーンのそれぞれに直接アクセスすることを可能にする。代替として、例えば、9キー数字パッドが提供される時に、各数字は、特定のゾーンに対応し得る。対応する場所に基づいて、これらのキーが種々のゾーンに割り当てられることが最も一般的なオプションがあるが、開示された技術の代替実施形態では、ユーザが、いくつかのゾーンのうちの1つを単純に選択するよりもむしろ、実際にパスワードキーを入力している場合に、ゾーンの場所がユーザ体験に影響を及ぼしそうにないが、利用可能な複数のゾーン構成が、入力パスワードのセキュリティの保護に役立つため、任意の隣接または非隣接方式でゾーンを構成することが可能である。これらの入力状況のうちのいずれにおいても、ゾーンがユーザに可視的であることは必要ではない。むしろ、ユーザは、キーボード上で通常通りパスワードを入力するように促され得る。背景処理が、以下で説明されるようにゾーン定義を割り当て、伝送へのデータ出力を準備し得る。次に図11を参照して、開示された技術の実施形態に従って使用されるステップを説明する。最初に、ステップ1210では、ゾーン定義が決定されなければならない。したがって、キーボードのキーが、既定数のゾーンに割り当てられる。これらのゾーンは、隣接していても隣接していなくてもよい。異なる可能なゾーン構成の実施例は、図10に加えて、図15ゾーン1610a-d参照および16で見ることができる。例えば、図15に示されるような4つのゾーンの使用は、4つのゾーンの間で選択する必要しかないため、ユーザにとってより容易な入力体験をもたらすことに留意されたい。しかしながら、システムは、異なるパスワードが、異なる一連のゾーン出力キーを生成する可能性が高いように、より長いパスワードがそのような状況で利用されることを要求し得る。当然ながら、他の構成が採用され得る。開示された技術によれば、複数のそのようなゾーン構成が定義され得、したがって、装置は、ステップ1210で、所定のゾーンレイアウト定義のうちの1つから選択し得る。いったんゾーン定義が選択されると、ユーザは、パスワードを構成する文字を入力し始め得る。そのような入力文字は、ステップ1215で受信される。ステップ1220では、ユーザによって選択されるキーを含むゾーンに関連付けられている、ゾーン出力キーが、入力文字に関連付けられている出力文字として定義される。次いで、この出力文字は、伝送される最終出力データストリームに第1の文字として提供される。次いで、処理はステップ1225に移動し、そこで、全ての入力文字が受信されたかどうかが問い合わせられる。この問い合わせが否定で答えられ、したがって、所望の入力文字の全てが受信されたわけではないと決定された場合、制御はステップ1215に戻り、次の入力文字が受信される。しかしながら、ステップ1225における問い合わせが肯定で答えられ、したがって、全ての所望の入力文字が受信されたと決定された場合、制御はステップ1230に移動し、そこで、入力パスワードを表す、利用されたゾーン定義および生成された出力データが、受信デバイスに伝送される。次いで、処理はステップ1235で終了する。実施形態は、出力データストリームとともにゾーンレイアウト定義を伝送することを説明しているが、そのようなゾーンレイアウト定義は別々に伝送され得る。そのようなゾーンレイアウト定義は、好ましくは、ゾーンの完全な一覧を備えないが、むしろ、ゾーン定義指標を備え、したがって、受信デバイスが複数の所定のゾーンレイアウト定義のうちの1つから選択することを可能にすることが想定される。そのようにして、そのような別様に無意味な指標のみが伝送され、したがって、ゾーンレイアウトを明かさず、システムのセキュリティを増大させない。さらに、いずれのゾーン定義も伝送されず、伝送および受信デバイスが同期化され、既定の方式で、既定数のゾーンレイアウト定義を単純に繰り返すことが可能である。さらに、伝送および受信デバイスが同じアルゴリズムを処理して、パスワードの生成および解釈の両方に同じゾーンレイアウト定義を利用することができる限り、方程式、アルゴリズム、および同等物を入力して、複数のゾーンレイアウト定義から選択するために、任意の他の指標等を使用することが可能であり得る。次に図12を参照すると、受信デバイスは、最初に、伝送されたゾーンレイアウト定義を受信するまたは採用する正しいゾーンレイアウト定義を決定するために上述の方法のうちの1つを使用する。次いで、処理はステップ1315に移動し、そこで、受信デバイスは、入力パスワードを表す出力データストリームを含む、伝送されたデータストリームの第1の文字を受信する。次いで、この受信した文字は、予期されるパスワード文字を含むゾーンのゾーン出力キーと比較される。ステップ1325では、これらの文字が合致しないと決定された場合、処理はステップ1340で終了する。これらの文字が合致すると決定された場合、処理はステップ1330に移動し、そこで、全てのパスワード文字が受信されたかどうかが決定される。パスワード文字の全てが受信されていない場合、処理はステップ1315に戻り、次のパスワード文字を受信する。ステップ1330で、パスワード文字の全てが受信されたと決定された場合、処理はステップ1335に移動し、そこで、システムは有効なパスワードが入力されたことを認識し、ユーザはそのように通知される。次いで、処理はステップ1340で終了する。したがって、図11および12で表示されるチャートによれば、伝送デバイスおよび受信デバイスのシステムは、それぞれの実際のパスワード文字を実際に伝送することなく、一方から他方へのユーザパスワードを確認することができる。開示された技術の代替実施形態では、ユーザによる2回のパスワード入力時に、システムが2つの異なるゾーン定義に対するゾーン指示を伝送し、たとえキー自体であっても、受信側における選択されたキーの特定の通知を可能にするような方式で、キーボードを分割する2つの連続ゾーン定義を提供することが可能であり得る。例えば、Aという文字が、最初にゾーン1と関連付けられ、次いで、第2のゾーン定義では、ゾーン4と関連付けられている、以前はゾーン1の中にあった唯一の文字である場合、2つの連続パスワードの中の第1の文字に対するZ1、Z4のシーケンスは、たとえこの文字が決して伝送されなくても、Aという文字の保証された決定をもたらす。したがって、このパスワードスキームの複数の反復の使用を通して、さらなる精度を達成することができる。従来の9キーのキーパッドを採用する、開示された技術の実施形態が図13に示されている。図13に示されるように、ゾーン出力キー1120、1120a、ならびに図10で描写される表示と同様に、それらに関連付けられているキー110aが示されている。加えて、ゾーン出力キー1120、1120aへのその各キー1415のマッピングを示す、従来のリモートコントロール、電話、または同等物上に含まれてもよいもの等の、キー構成1410が示されている。そのようなマッピングは、関係の接続引き出し線1420、色、形状、または任意の他の所望の指標によって示され得る。したがって、いくつかのゾーンが定義された場合、ユーザは、パスワードの中の所望の文字のそれぞれを含むゾーンに関連付けられている、数字キーを選択することによって、そのようなキーパッドを使用してパスワードを入力することが可能であり得る。開示された技術の付加的な実施形態では、ゾーン選択を示すために、上記で説明されるように遠隔デバイス上で指示を行うよりもむしろ、例えば、NINTENDO登録商標Wii登録商標コントローラ、ユーザ入力を決定する身体運動感知、または同等物とともに利用されるリモートコントローラ等のポインティングデバイスを採用することが可能であり得る。したがって、ユーザが表示された仮想キーボードにおいてそのようなコントローラを指し示すか、または別様にゾーン選択を示すと、コントローラによって指し示されたゾーンがハイライトされるか、または別様に指定されているものとして示される。ユーザは、リモート上の指標を押すことによって、または当業者に公知であるような他の方法によって、そのようなゾーンを選択することができる。開示された技術に従ったゾーンの使用は、各個別キーを選択する能力が、そのような構成では困難な場合があるという点で、そのような状況で特に有用である。精度が困難な場合がある。しかしながら、本開示された技術によれば、ユーザは、例えば、9つのゾーンのうちの1つの間で選択する必要しかなく、したがって、この選択する能力を、ユーザにとってはるかに容易にする。したがって、ユーザはおそらく、はるかに高速かつ容易に、文字選択を進めることが可能となる。図14Aおよび14Bに示されるように、そのようなポインタデバイスを利用することは、所望のゾーンの容易な選択を可能にする。図14Aは、図10で選択されるもの等のゾーン1510の選択を描写する。図14Bでは、以前に選択されたゾーンの右側の2つのゾーンである、ゾーン1520が、指定および選択されている。ユーザは、単純にポインティングデバイスを方向転換することによって、そのような指定および選択を行うことができる。好ましくは、指標530が、ポインティングデバイスの現在の位置を特定するのに役立つように表示上にとどまる。1つの表示されたゾーンから別のゾーンへ移動する遠隔ポインティングデバイスの視覚指示を提供することに加えて、開示された技術の代替実施形態では、移動および選択の付加的な非視覚指示を提供するように、触覚または他の触覚応答もユーザに提供される。したがって、ユーザが第2のゾーンを指定するようにポインティングデバイスを移動させると、振動または他の非言語的指標がユーザに提供され得る。したがって、図14Aと14Bとの間の移動のように、ユーザが2つのゾーンでポイントを移動させた場合、ゾーン間の境界を越える度に1回、そのような触覚応答がユーザに2回提供され得る。そのような触覚応答はまた、修正され得、したがって、異なるゾーンに対する異なる応答を提供する。したがって、各ゾーンは、異なる触覚シグネチャーを有してもよく、または次の選択において選択されたゾーンとなる可能性が最も高いと解析アルゴリズムによって決定されるゾーンは、他のゾーンとは異なる触覚指標が提供され得る。ゾーンは、そのような触覚指標を含む、任意の他の方式で区別され得る。もう一度図10を参照すると、特定のゾーンの中の文字がユーザインターフェース上で選択された時に、左側および右側および/または上側および下側の既定数の隣接するキーが、選択されたキーとともにハイライトされ、したがって、ゾーン出力キーに関連付けられているゾーンを構成する。このハイライトは、選択されたゾーンをユーザに知らせる。好ましくは、指定されたゾーンに関連付けられているゾーン出力キーはさらに、出力データストリームの一部となるキーとして線引きされる。また、上述のように、ゾーンがユーザに表示されない場合、上記で説明されるように、たとえ背景でゾーン出力キーが入力ゾーンに基づいて出力されていても、特定のキーの選択は、表示の変化をもたらさない。上述のように、表示された仮想キーボードは、完全QWERTYキーボードを表すが、任意の他の所望の構成を備え得る。ゾーン出力キーは、好ましくは、キーボード上の異なる色でハイライトされ得、または何らかの他の際立った特性を使用して指定され得る。入力デバイスが特定のゾーン出力キーに対応するゾーンに進むために使用される時、特定のゾーンの選択でグループ化される一組の文字についての視覚フィードバックをユーザに提供するように、ゾーンの中の他の文字も好ましくはハイライトされる。開示された技術は、パスワードの伝送に関して説明されているが、開示された技術の特徴は、より冗長な暗号化されたデータ伝送に提供され得る。結論文脈が明確に他に要求しない限り、説明および請求項の全体を通して、備える、~を備える、および同等物等の言葉は、排他的または網羅的な意味とは対照的に、包含的な意味で、つまり、~を含むが、それに限定されないという意味で解釈されるものである。本明細書で使用される場合、接続された、連結された、またはそれらの任意の変化形は、2つ以上の要素の間の直接または間接的である、任意の接続または連結を意味し、要素間の連結または接続は、物理的、論理的、またはそれらの組み合わせとなり得る。加えて、本明細書で、上記で、以下でという言葉、および同様の趣旨の言葉は、本願で使用される時に、本願の任意の特定の部分ではなく、全体として本願を参照する。文脈が許可する場合、単数または複数を使用した、上記の発明を実施するための形態での言葉はまた、それぞれ複数または単数を含み得る。またはという言葉は、2つ以上の項目のリストを参照して、リストの中の項目のうちのいずれか、リストの中の項目の全て、およびリストの中の項目の任意の組み合わせといった、言葉の解釈の全てを対象とする。開示された技術の実施例の上記の発明を実施するための形態は、網羅的となること、または開示された技術を上記で開示される正確な形態に限定することを目的としていない。例証的な目的で、開示された技術の具体的実施例が上記で説明されているが、当業者であれば認識するように、種々の同等の修正が開示された技術の範囲内で可能である。例えば、過程またはブロックが所与の順番で提示されているが、代替的な実装が、ステップを有するルーチンを行ってもよく、または異なる順番でブロックを有するシステムを採用してもよく、いくつかの過程またはブロックが、代替案または副結合を提供するように、削除され、移動させられ、追加され、細分され、組み合わせられ、および/または修正され得る。これらの過程またはブロックのそれぞれは、種々の異なる方法で実装され得る。また、過程またはブロックは時折、順次に実施されるものとして示されるが、これらの過程またはブロックは代わりに、並行して実施または実装され得、または異なる時に実施され得る。さらに、本明細書で記述される任意の具体的な数字は実施例にすぎず、代替的な実装は、異なる値または範囲を採用し得る。本明細書で提供される開示された技術の教示は、必ずしも上記で説明されるシステムではなく、他のシステムに適用することができる。上記で説明される種々の実施例の要素および行為は、開示された技術のさらなる実装を提供するように組み合わせることができる。開示された技術のいくつかの代替的な実装は、上述の実装に対する付加的な要素を含み得るだけではなく、より少ない要素を含み得る。添付の出願書類に記載され得る、いずれかを含む、上述の任意の特許および出願ならびに他の参考文献は、参照することにより本明細書に組み込まれる。必要であれば、開示された技術のさらなる実装を提供するために、上記で説明される種々の参考文献のシステム、機能、および概念を採用するように、開示された技術の側面を修正することができる。上記の発明を実施するための形態を踏まえて、これらおよび他の変更を開示された技術に行うことができる。上記の説明は、開示された技術のある実施例を説明し、検討される最良の様態を説明するが、どれほど詳細に上記が文中に現れようと、開示された技術は多くの方法で実践することができる。システムの詳細は、その具体的実装においてかなり変化し得る一方で、本明細書で開示される技術によって依然として包含される。上述のように、開示された技術のある特徴または側面を説明する時に使用される特定の用語は、その用語が関連付けられる開示された技術の任意の具体的な特性、特徴、または側面に制限されるように、用語が本明細書で再定義されていることを暗示すると解釈されるべきではない。一般に、以下の請求項で使用される用語は、上記の発明を実施するための形態の項が、そのような用語を明示的に定義しない限り、開示された技術を本明細書で開示される具体的実施例に限定すると解釈されるべきではない。"