(57)【要約】  本発明は、ユーザのユーザインターフェイスとの対話をモデル化するシステム及び方法に関する。複数のターゲットを有しユーザ入力を受け取るように構成されたユーザインターフェイスを備えたデータ入力システムを提供する。システムは複数のモデルを含み、これらのモデルの各々は、ターゲットに対応する以前のユーザ入力イベントをこのターゲットに関連付ける。入力確率生成器が、ユーザ入力イベントが特定のターゲットに対応する確率を複数のモデルに関連して生成するように構成される。複数のターゲットを有し入力を受け取るように構成されたユーザインターフェイスの各ターゲットに対応する以前のユーザ入力イベントをそのターゲットに関してモデル化することにより、これらのターゲットをモデル化する方法も提供する。さらに、複数のターゲットを有し入力を受け取るように構成されたユーザインターフェイスを備えたシステムにデータを入力する方法も提供する。この方法は、入力確率生成器を用いて、ターゲットに対応する以前の入力イベントをそのターゲットに各々が関連付ける複数のモデルに関連して、ユーザ入力イベントが特定のターゲットに対応する確率を生成するステップを含む。【選択図】      図１
2014517602.tif 000002
【特許請求の範囲】
【請求項１】
複数のターゲットを有しユーザ入力を受け取るように構成されたユーザインターフェイスと、
あるターゲットに対応する以前のユーザ入力イベントを各々が前記ターゲットに関連付ける複数のモデルと、
ユーザ入力イベントが特定のターゲットに対応する確率を前記複数のモデルに関連して生成するように構成された入力確率生成器と、
を備えることを特徴とするデータ入力システム。
【請求項２】
前記ユーザインターフェイスは、仮想キーボードである、
ことを特徴とする請求項１に記載のシステム。
【請求項３】
入力イベントは、前記仮想キーボード上の位置に対応し、各モデルは、特定のターゲットに対応する前記ユーザの以前の入力イベントの位置をモデル化した分布である、
ことを特徴とする請求項２に記載のシステム。
【請求項４】
前記分布は、２Ｄガウス分布である、
ことを特徴とする請求項３に記載のシステム。
【請求項５】
事前分布は、前記分布と共役である、
ことを特徴とする請求項３又は４に記載のシステム。
【請求項６】
前記２Ｄガウス分布のパラメータは、前記ターゲットに対応する前記入力イベントに基づいて最大事後確率推定法を用いて学習される、
ことを特徴とする請求項４又は５に記載のシステム。
【請求項７】
前記ターゲットは前記仮想キーボード上のキーであり、各ターゲットの事前分布は、キーボードレイアウトに基づいて経験的に設定される、
ことを特徴とする請求項６に記載のシステム。
【請求項８】
前記仮想キーボードは、複数のターゲットモデルセットを含み、各ターゲットモデルセットは、異なるユーザ又は使用シナリオに合わせられる、
ことを特徴とする請求項２から７のいずれか１項に記載のシステム。
【請求項９】
前記入力確率生成器は、ユーザ入力イベントに関して、最も確率の高いｎ個のターゲット及びその関連する確率を前記複数のモデルに関連して出力する、
ことを特徴とする請求項１から８のいずれか１項に記載のシステム。
【請求項１０】
前記ｎ個のターゲットの各々を、関連する確率値を有する１又はそれ以上のワードフラグメントにマッピングするマップをさらに備える、
ことを特徴とする請求項９に記載のシステム。
【請求項１１】
各ワードフラグメントに、該ワードフラグメントが対応する前記ターゲットが前記マップ内でタグ付けされる、
ことを特徴とする請求項１０に記載のシステム。
【請求項１２】
前記最も確率の高いｎ個のターゲット及びその関連する確率を受け取り、確率値を有するテキスト予測を生成するように構成された予測器をさらに備える、
ことを特徴とする請求項９に記載のシステム。
【請求項１３】
前記ワードフラグメント及びその関連する確率を受け取り、確率値を有するテキスト予測を生成するように構成された予測器をさらに備える、
ことを特徴とする請求項１０又は１１に記載のシステム。
【請求項１４】
予測の選択時に、前記予測の前記（単複の）ターゲットを対応する（単複の）入力イベントと一致させる、
ことを特徴とする請求項１２又は１３に記載のシステム。
【請求項１５】
前記予測の前記ターゲットは、前記予測器により、前記予測の前記ワードフラグメントをその対応するターゲットにタグ付けすることによって前記対応する入力イベントと一致させられる、
ことを特徴とする請求項１４に記載のシステム。
【請求項１６】
前記予測の前記ターゲットは、前記ワードフラグメントをその対応するターゲットに逆マッピングし、前記ターゲットを前記入力イベントとペアにすることにより、前記対応する入力イベントと一致させられる、
ことを特徴とする請求項１４に記載のシステム。
【請求項１７】
前記予測の選択は、前記ユーザによる前記予測の選択、又は最も確率の高い予測の自動選択を含む、
ことを特徴とする請求項１４から１６のいずれか１項に記載のシステム。
【請求項１８】
あるモデルに対応する前記ターゲットへの入力イベントのマッピングを反映すべく前記モデルを更新するように構成されたモデル更新器をさらに備える、
ことを特徴とする請求項１４から１７のいずれか１項に記載のシステム。
【請求項１９】
前記選択された予測は、前記データ入力システムにテキストとして入力される、
ことを特徴とする請求項１４及び１７に記載のシステム。
【請求項２０】
請求項１から１９のいずれかに記載のデータ入力システムを備える、
ことを特徴とする電子装置。
【請求項２１】
前記電子装置は、コンピュータ、ＰＤＡ又は携帯電話機である、
ことを特徴とする請求項２０に記載の電子装置。
【請求項２２】
複数のターゲットを有し入力を受け取るように構成されたユーザインターフェイスのターゲットをモデル化する方法であって、各ターゲットに関し、該ターゲットに対応する以前のユーザ入力イベントをモデル化するステップを含む、
ことを特徴とする方法。
【請求項２３】
前記ユーザインターフェイスは仮想キーボードであり、入力イベントは前記仮想キーボード上の位置に対応し、前記方法は、前記ターゲットに対応する前記ユーザの以前の入力イベントの前記位置を記述する分布として各ターゲットをモデル化するステップをさらに含む、
ことを特徴とする請求項２２に記載の方法。
【請求項２４】
前記分布は、２Ｄガウス分布である、
ことを特徴とする請求項２３に記載の方法。
【請求項２５】
事前分布は、前記分布と共役である、
ことを特徴とする請求項２３又は２４に記載の方法。
【請求項２６】
前記２Ｄガウス分布のパラメータは、前記ターゲットに対応する前記入力イベントに基づいて最大事後確率推定法を用いて学習される、
ことを特徴とする請求項２４又は２５に記載の方法。
【請求項２７】
前記ターゲットは前記仮想キーボード上のキーであり、各ターゲットの事前分布は、キーボードレイアウトに基づいて経験的に設定される、
ことを特徴とする請求項２６に記載の方法。
【請求項２８】
複数のターゲットを有し入力を受け取るように構成されたユーザインターフェイスを備えたシステムにデータを入力する方法であって、入力確率生成器を用いて、あるターゲットに対応する以前の入力イベントを前記ターゲットに各々が関連付ける複数のモデルに関連して、ユーザ入力イベントが特定のターゲットに対応する確率を生成するステップを含む、
ことを特徴とする方法。
【請求項２９】
ユーザ入力イベントに関して、最も確率の高いｎ個のターゲット及びその関連する確率を前記入力確率生成器から出力するステップを含む、
ことを特徴とする請求項２８に記載の方法。
【請求項３０】
マップを用いて、前記ｎ個のターゲットの各々を、関連する確率値を有する１又はそれ以上のワードフラグメントにマッピングするステップをさらに含む、
ことを特徴とする請求項２９に記載の方法。
【請求項３１】
前記マップを用いて、前記１又はそれ以上のワードフラグメントの各々にマッピング元の前記ターゲットをタグ付けするステップをさらに含む、
ことを特徴とする請求項３０に記載の方法。
【請求項３２】
前記最も確率の高いｎ個のターゲット及びその関連する確率を受け取るように構成された予測器を用いて、確率値を有するテキスト予測を生成するステップをさらに含む、
ことを特徴とする請求項３０に記載の方法。
【請求項３３】
前記ワードフラグメント及びその関連する確率を受け取るように構成された予測器を用いて、確率値を有するテキスト予測を生成するステップをさらに含む、
ことを特徴とする請求項３０又は３１に記載の方法。
【請求項３４】
テキスト予測を選択するステップと、
前記テキスト予測の前記（単複の）ターゲットを対応する（単複の）入力イベントと一致させるステップと、
をさらに含むことを特徴とする請求項３２又は３３に記載の方法。
【請求項３５】
前記テキスト予測の前記（単複の）ターゲットを前記対応する（単複の）入力イベントと一致させるステップは、前記予測器を用いて、前記ワードフラグメントにタグ付けされた前記ターゲットを前記入力イベントとペアにするステップを含む、
ことを特徴とする請求項３４に記載の方法。
【請求項３６】
前記テキスト予測の前記（単複の）ターゲットを前記対応する（単複の）入力イベントと一致させるステップは、前記ワードフラグメントを該ワードフラグメントのターゲットに逆マッピングするステップと、前記ターゲットを前記入力イベントとペアにするステップとを含む、
ことを特徴とする請求項３４に記載の方法。
【請求項３７】
入力イベントがターゲットと一致した時に、モデル更新器を用いてモデルを更新するステップをさらに含む、
ことを特徴とする請求項２２から３６のいずれか１項に記載の方法。
【請求項３８】
添付図面を参照しながら概ね上記で説明し、添付図面に示すようなシステム。
【請求項３９】
添付図面を参照しながら概ね上記で説明し、添付図面に示すような方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にユーザインターフェイスを備えたデータ入力システムに関する。具体的には、このユーザインターフェイスは、複数のターゲットを含みユーザ入力を受け取るように構成される。本発明は、システムのユーザインターフェイスのターゲットをモデル化する方法、及びユーザインターフェイスのターゲットをそのようにモデル化したシステムにデータを入力する方法を提供する。
【背景技術】
【０００２】
これまで、サイズが限られたキーボードとのユーザインタラクションを強化する取り組みでは、所与の言語の全ての文字範囲をカバーしていない縮小サイズキーボードに基づく方法が多く提供されてきた。この方法は、米国特許第６３０７５４９号の主題であり、この特許には、（通常は１つのキーにつき約３文字の）縮小キーボードからの出力の曖昧性を除去する方法が記載されている。現在の入力に一致する可能性のあるものをユーザが順に切り換えられるようにする選択ボタンを使用して、単語レベルの曖昧性除去が行われる。一般的なＱＷＥＲＴＹレイアウトに基づく別の縮小キーボードレイアウトには、やはり入力後のさらなる曖昧性除去を使用する、米国特許第７０８３３４２号に記載される「ハーフｑｗｅｒｔｙ」レイアウトがある。
【０００３】
縮小キーボードでは、エラー率は低いものの、入力の量子化も大ざっぱになり、すなわちコンピュータが縮小キーボードから受け取る入力における情報コンテンツは、フルキーボードからのものよりも少ない。
【０００４】
理論的には、適切なエラー訂正システムを使用した場合、エラー訂正を含むフルキーボードでは、曖昧性除去のキーストロークが縮小キーボードよりも少なくて済むはずである。ハードキーボードでは、入力イベントは、ユーザがキーボードのキーを押下することに関連する。このようなキーボードでは、ユーザがキーの境界内のあらゆる位置を押下する可能性があり、対応する入力イベントは、この境界内の全ての位置で同じものになる。しかしながら、タッチセンサ式の「ソフトキーボード」では、ソフトキーボード上のタッチによるほとんど連続する座標を使用することが可能である。
【０００５】
例えば、米国特許出願公開第２００９／０２８４４７１号及びそれ以前のものなどの多くの既存の仮想キーボードシステムは、ユーザが意図したものでない文字をシステムが受け取った場合にユーザ入力を自動的に「訂正」する機構を内蔵する。このようなシステムは、各々がデカルト座標の組によって示される事前に指定された位置の組を、ユーザの入力に利用可能な文字に関連付けるという発想に基づくものである。ある入力イベントを表す一連の座標を所与とすれば、このイベントと、それを取り囲む事前に指定した「オートコレクト領域」内の位置との間の距離を使用して、このイベントに割り当てられる重み付けした文字の組が構築される。このオートコレクト領域は、複数のアルファベット文字を含む。入力中、意図した文字列である可能性が高いと思われる「オブジェクト」の組がユーザに示される。ユーザが自身の意図する入力シーケンスを選択すると、入力イベント座標と文字座標の間の（場合によっては重み付けした）水平及び垂直オフセットが計算され、関連する移動平均（ｍｏｖｉｎｇ  ａｖｅｒａｇｅ）を使用して、ユーザのタイピング様式を反映するように入力イベント座標が較正される。この移動平均は、各キーの座標をそのキーに関する全ての以前の入力イベントの平均に設定した移動平均（ｒｕｎｎｉｎｇ  ａｖｅｒａｇｅ）とすることができる。
【０００６】
上述した既存の仮想キーボードは、各文字を座標の組によって示される位置としてモデル化する。対照的に、本発明のシステム及び方法は、ユーザが仮想キーボード上の文字をターゲットにした時のユーザの実際の入力をモデル化する。従って、本発明のシステム及び方法は、所与の文字に関するユーザの入力履歴をモデル化する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】米国特許第６３０７５４９号明細書
【特許文献２】米国特許第７０８３３４２号明細書
【特許文献３】米国特許出願公開第２００９／０２８４４７１号明細書
【特許文献４】国際特許出願公開第２０１０／１１２８４１号
【特許文献５】国際特許出願ＰＣＴ／ＧＢ２０１０／００１８９８号
【発明の概要】
【課題を解決するための手段】
【０００８】
本発明のシステム及び方法は、ユーザに適合してユーザのテキスト入力様式を学習するシステムを提供する。このシステムは、ユーザのシステムとの対話履歴をモデル化することにより、入力イベントを所与としてユーザがどの文字を入力するつもりであったかをより正確に予測することができる。従って、本発明は、より正確かつ信頼性の高いテキスト予測を行い、従って電子装置へのより正確なテキスト入力を行うことができるシステムを提供する。精度が向上すれば訂正も減り、従ってシステムによるテキスト入力が効率的になるとともに、処理要件も低くなる。
【０００９】
１つの実施形態では、本発明は、複数のターゲットを含みユーザ入力を受け取るように構成されたユーザインターフェイスを備えたデータ入力システムを提供する。このシステムは複数のモデルを含み、各モデルは、あるターゲットに対応する以前のユーザ入力イベントをこのターゲットに関連付ける。システムは、ユーザ入力イベントが特定のターゲットに対応する確率を複数のモデルに関連して生成するように構成された入力確率生成器をさらに備える。
【００１０】
ターゲットは、１又はそれ以上の文字、キー、符号、又はユーザ選択のための他のいずれかの情報項目を表すことができる。
【００１１】
ユーザインターフェイスは、仮想キーボードであることが好ましい。入力イベントは、この仮想キーボード上の位置に対応することができ、各モデルは、特定のターゲットに対応するユーザの以前の入力イベントの位置をモデル化した分布である。この分布は、２Ｄガウスとすることができる。この２Ｄガウスのパラメータは、ターゲットに対応する入力イベントに基づいて最大事後確率推定法を用いて学習されることが好ましい。モデルパラメータの事前分布の形は、共役事前分布であることが好ましい。ターゲットが仮想キーボード上のキーである場合、キーボードレイアウトに基づいて各ターゲットの事前分布を経験的に設定することができる。
【００１２】
仮想キーボードは、複数のターゲットモデルセットを含むことができ、各ターゲットモデルセットは、異なるユーザ又は使用シナリオに合わせられる。
【００１３】
入力確率生成器は、あるユーザ入力イベントに関して最も確率の高いｎ個のターゲット及びその関連する確率を複数のモデルに関連して出力することができる。
【００１４】
システムは、ｎ個のターゲットの各々を、関連する確率値を有する１又はそれ以上のワードフラグメントにマッピングするマップを含むことができる。各ワードフラグメントには、マップ内で対応するターゲットをタグ付けすることが好ましい。
【００１５】
システムは、最も確率の高いｎ個のターゲット及びその関連する確率を受け取って、確率値を有するテキスト予測を生成するように構成された予測器をさらに備えることができる。この予測器は、ワードフラグメント及びその関連する確率を受け取って、確率値を有するテキスト予測を生成するように構成することができる。
【００１６】
予測の選択時には、予測の（単複の）ターゲットを対応する（単複の）入力イベントと一致させる。予測のターゲットは、予測のワードフラグメントをこれらの対応するターゲットにタグ付けすることにより、対応する入力イベントと一致させることができる。或いは、予測のターゲットは、ワードフラグメントをこれらの対応するターゲットに逆マッピングし、これらのターゲットを入力イベントとペアにすることにより、対応する入力イベントと一致させることができる。
【００１７】
予測の選択は、ユーザによる予測の選択、又は最も確率の高い予測の自動選択を含むことができる。選択された予測は、データ入力システムにテキストとして入力されることが好ましい。
【００１８】
システムは、あるモデルに対応するターゲットへの入力イベントのマッピングを反映するようにこのモデルを更新するよう構成されたモデル更新器を備えることもできる。
【００１９】
電子装置は、上述したようなデータ入力システムを備えることができる。電子装置は、コンピュータ、ＰＤＡ又は携帯電話機とすることができる。
【００２０】
第２の実施形態では、本発明は、複数のターゲットを含み入力を受け取るように構成されたユーザインターフェイスのターゲットをモデル化する方法を提供し、この方法は、各ターゲットに関し、このターゲットに対応するユーザ入力イベントをモデル化するステップを含む。
【００２１】
ユーザインターフェイスは仮想キーボードであり、入力イベントは、仮想キーボード上の位置に対応し、方法は、ターゲットに対応するユーザの以前の入力イベントの位置を記述する分布として各ターゲットをモデル化するステップをさらに含むことができる。分布は、２Ｄガウスとすることができる。各モデルは、分布に対して共役とすることができる事前分布も含まなければならない。２Ｄガウスのパラメータは、ターゲットに対応する入力イベントに基づいて最大事後確率推定法を用いて学習されることが好ましい。ターゲットは仮想キーボード上のキーであり、各ターゲットの事前分布は、キーボードレイアウトに基づいて経験的に設定される。
【００２２】
第３の実施形態では、複数のターゲットを有し入力を受け取るように構成されたユーザインターフェイスを備えたシステムにデータを入力する方法を提供し、この方法は、入力確率生成器を用いて、あるターゲットに対応する以前の入力イベントをそのターゲットに各々が関連付ける複数のモデルに関連して、ユーザ入力イベントが特定のターゲットに対応する確率を生成するステップを含む。
【００２３】
この方法は、ユーザ入力イベントに関して、最も確率の高いｎ個のターゲット及びその関連する確率を入力確率生成器から出力するステップを含むことが好ましい。この方法は、マップを用いて、ｎ個のターゲットの各々を、関連する確率値を有する１又はそれ以上のワードフラグメントにマッピングするステップを含むこともできる。この方法は、マップを用いて、１又はそれ以上のワードフラグメントの各々にマッピング元のターゲットをタグ付けするステップを含むことが好ましい。
【００２４】
この方法は、最も確率の高いｎ個のターゲット及びその関連する確率を受け取るように構成された予測器を用いて、確率値を有するテキスト予測を生成するステップを含むことができる。この方法は、ワードフラグメント及びその関連する確率を受け取るように構成された予測器を用いて、確率値を有するテキスト予測を生成するステップを含むことが好ましい。この方法は、テキスト予測を選択するステップと、予測器を用いて、テキスト予測の（単複の）ターゲットを対応する（単複の）入力イベントと一致させるステップとを含むことができる。テキスト予測の（単複の）ターゲットを対応する（単複の）入力イベントと一致させるステップは、ワードフラグメントにタグ付けされたターゲットを入力イベントとペアにするステップを含むことができる。或いは、テキスト予測（単複の）ターゲットを対応する（単複の）入力イベントと一致させるステップは、ワードフラグメントをそのターゲットに逆マッピングするステップと、ターゲットを入力イベントとペアにするステップとを含むことができる。
【００２５】
この方法は、入力イベントがターゲットと一致した時に、モデル更新器を用いてモデルを更新するステップをさらに含むことができる。
【００２６】
以下、添付図面を参照しながら本発明を詳細に説明する。
【図面の簡単な説明】
【００２７】
【図１】本発明によるシステムアーキテクチャの概略図である。
【発明を実施するための形態】
【００２８】
本発明は、仮想キーボード上におけるユーザインタラクションのモデル化方法を学習する機械を利用するシステム及び方法を提供する。このシステムの３つの主な動作は、予測器と連動した評価、推論及び学習であり、システムは、これらの動作を反復適用することに関連して構築される。本発明のシステムは、例えば、ＰＤＡ、携帯電話機又はコンピュータなどの電子装置に組み込むことができる。
【００２９】
ここで図１を参照しながらシステムの要素について説明する。
【００３０】
本発明のシステムは、複数のターゲットを含みユーザ入力を受け取るように構成されたユーザインターフェイスを提供する。図１に示す例では、ユーザインターフェイスが、ソフトスクリーン上のキーボードなどの仮想キーボード１を含む。システムは、ユーザ入力を入力イベント１０又は選択イベント２０のいずれかとして解釈するように構成される。入力イベント１０とは、仮想キーボード１により検出されデカルト座標として表現される、ユーザが（「タッチ」又は「クリック」などにより）仮想キーボード上の２Ｄ空間内における位置を選択するイベントのことである。選択イベント２０とは、ユーザに表示された一連の予測からユーザが予測１８を選択することである。仮想キーボード１は、入力イベント１０と選択イベント２０を区別するために、入力イベント領域及び選択イベント領域を有することができる。しかしながら、ユーザ入力を選択又は入力イベントとして解釈する方法は他にも存在し、例えば、選択イベント２０は、（例えば画面のタッチに対応できる）入力イベント１０とは異なる（画面を横切るスワイプなどの）キーボード上のジェスチャーに対応することもできる。
【００３１】
入力イベント１０は、デカルト座標によって表されることに限定されず、最後のキー押下からの時間、キー押下の圧力、ジェスチャー情報（ソフトスクリーンキーボード上をタッチすることによってなぞられる経路）、加速度計の測定値などのその他の変数によって表すこともできる。
【００３２】
ソフトキーボードの場合、選択イベント２０は、ユーザがキーボード上の予測を表示した範囲をタッチ／クリックしてシステムに予測を入力することにより、意図する予測を選択することに関連する。選択イベント２０は、ユーザが「スペース」を「押して」語句を完成させた時の、システムによる最も確率の高い予測の自動選択に関連することもできる。ユーザが予測を選択する機構は他にも存在し、例えば、画面を横切る右スワイプなどのソフトキーボード上のジェスチャーなどが、最も確率の高い予測を挿入するための機構となり得る。選択された予測２０は、ユーザが入力イベント１０を通じて入力しようとしていた文字列に対応する。従って、以下でより詳細に説明するように、選択イベント２０を入力することにより、ユーザにより入力された入力イベント１０をその意図するターゲットと一致させることができる。
【００３３】
仮想キーボード１の唯一の要件は、意図する入力に対応する、ユーザにとって明確な「ターゲットポイント」が存在することである。ターゲットポイントは、以下に限定されるわけではないが、文字キー（すなわち、通常のｑｗｅｒｔｙキーボードのようなグリッド状の仮想又は物理キー）、目に見えるキー境界が無いグリッドなどの文字グリフの配列、又は線形の文字ラインＡ〜Ｚとすることができる。従って、仮想キーボード１の各ターゲットは、単一の又は複数の文字、或いはユーザ選択のための他のいずれかの情報項目を表すことができる。以下の例では、システムへのテキスト入力に焦点を当てる。しかしながら、本システム及び方法はテキストの入力に限定されるものではなく、非テキストデータの入力にも適用可能であり、この場合、ユーザインターフェイス上のターゲットポイントによりデータの量子が表される。
【００３４】
システムは、ユーザに提示する予測を生成するために、複数のターゲットの各々に関するユーザの以前の入力イベントをモデル化した複数のモデル６と、所与の入力イベント１０について複数のモデル６に問い合わせ、１又はそれ以上の可能性のあるターゲット及びその確率を生成する入力確率生成器２と、可能性のあるターゲット及びその確率からテキスト予測１８を生成する予測器４とを含む。好ましい例では、システムが、予測器４がテキスト予測を生成するために使用するワードフラグメントに可能性のあるターゲットをマッピングしたワードフラグメントマップ３をさらに含む。
【００３５】
入力確率生成器２は、入力イベント１０を受け取って、ターゲットシーケンス意図構造（Ｔａｒｇｅｔ  Ｓｅｑｕｅｎｃｅ  Ｉｎｔｅｎｔｉｏｎ  Ｓｔｒｕｃｔｕｒｅ）１２を生成又は更新する。ターゲットシーケンス意図構造１２は、１又はそれ以上のターゲットと、各ターゲットに関してユーザが入力イベント１０を通じてそのターゲットを選択しようとしていた確率を含む。ターゲットシーケンス意図構造１２は、例えば、ターゲットに入力イベント１０をタグ付けすることによる、入力イベント１０と、この入力イベント１０に対応するターゲットとの間の対応関係を含む。ターゲットシーケンス意図構造１２は、システムのターゲットを全て含むことも、或いは関連する確率が一定の閾値確率値よりも高いターゲットのみを含むこともできる。この閾値はシステムパラメータであり、経験的に（１０−４などの）所定のレベルに設定することができる。或いは、ユーザによる試行によって閾値レベルを決定することもできる。以下でより詳細に説明するように、入力確率生成器２は、ターゲットの入力イベント１０が観察される確率を生成するために、入力イベント１０についてモデルセット６に問い合わせ、各ターゲットに関してイベント毎の確率ベクトルとして表現できる確率値を評価する。計算量を削減するために、細かな値はイベント毎の確率ベクトルからフィルタ除去することができる。これらのイベント毎の確率ベクトルを連結してターゲットシーケンス意図構造１４を形成し、これが次の段階であるターゲットマッピング３への入力を形成する。
【００３６】
モデルセット６は、システムの（文字とすることができる）複数のターゲットを表す複数の訓練モデルを含む。ターゲットは、ユーザがこのターゲットを「目的」としていた場合のユーザの実際の入力をモデル化した分布としてモデル化される。入力イベントの位置ベクトルをｘとし、単一のターゲットを識別するラベルをｃとした場合、モデル化される分布は、ｐ（ｘ｜ｃ）となる（ターゲットは、考えられる意図された文字の組を識別する）。
【００３７】
好ましい実施形態では、この分布が、（全ての仮定及びパラメータを含む）仮定モデルをＭとし、ガウス確率密度関数、ｘで評価された平均μ、共分散Σの省略表現をＧ（ｘ；μ，Σ）とした場合、多変量ガウスｐ（ｘ｜ｃ，Ｍ）＝Ｇ（ｘ；μｃ，Σｃ）としてモデル化される。モデルパラメータは、各ターゲットｃに関してμｃ及びΣｃである。モデルパラメータは、キーボードとの対話履歴に基づいて最大事後確率（ＭＡＰ）推定を用いて学習される。しかしながら、その他の学習機構を使用することもでき、後程これらのいくつかについて説明する。
【００３８】
ユーザの入力は、２Ｄガウスを使用するのではなく、ユーザの入力イベントのｘ及びｙ座標をラプラス分布で個別に分布させることによりモデル化することができる。或いは、ユーザ入力をガンマ分布でモデル化することもできる。ラプラス分布及びガンマ分布は裾が重く、（タッチ位置などの）入力イベントがターゲットから離れるにつれて、確率密度の減衰がガウスのものよりも緩やかになるので、ガウス分布よりも適していると考えられる。このような裾の重い分布は、ユーザの実際の記述様式をより正確に反映することができ、従ってエラー訂正性能が潜在的に良好になる。その他の好適なモデル化技術を適用することもできる。
【００３９】
μｃ，ΣｃのＭＡＰ推定を取得するには、これらのパラメータの事前分布を指定しなければならない。ターゲットが仮想キーボード上のキーに関連する場合、キーボードレイアウトに基づいて事前分布（平均及び共分散）を経験的に設定することができ、このための便利な選択肢として、未知の平均及び共分散によるガウスの共役事前分布であるという理由で正規逆ウィシャート分布、ＮＩＷＤが挙げられる。その他の事前分布を使用することもでき、後程そのいくつかについて説明する。共役事前分布の定義では、事前分布が尤度と共役である場合、事後分布が（潜在的には異なるパラメータで）事前分布と同じ分布形態を取る。従って、共役分布（事前分布及び事後分布の両方）のパラメータは（モデルの実際のパラメータの分布をパラメータ化するので）ハイパーパラメータと呼ばれ、ＭＡＰ学習を比較的単純なハイパーパラメータ再計算にすることができる。
【００４０】
従って、ある実施形態では、学習が、容易に増分するアルゴリズムである４つのＮＩＷＤパラメータの再計算を伴う。従って、事前分布は以下のようになる。
2014517602.tif 000003
そして事後分布は以下のようになる。
2014517602.tif 000004
式中、αｃ及びβｃは、それぞれ平均及び共分散のための自由度ハイパーパラメータであり（自由度値が大きければ、事前分布が強く、学習が緩慢であることを意味する）、
2014517602.tif 000005
は、それぞれ平均及び共分散のモード値である。
2014517602.tif 000006
は、ｔ回の観察後の｛ｘｉ｝ｉ＝１．．ｔのハイパーパラメータαｃの事後値であり、従って
2014517602.tif 000007
となる。
【００４１】
ＮＩＷＤ分布のための既知のハイパーパラメータ更新関係を解くと、このパラメータ化の一般的更新ルールは以下のようになる。
2014517602.tif 000008
2014517602.tif 000009
2014517602.tif 000010
2014517602.tif 000011
この場合、
2014517602.tif 000012
2014517602.tif 000013
この場合、平均
2014517602.tif 000014
によりｎ回の観察｛ｘｉ｝ｉ＝１．．ｎが存在する。全ての観察を用いて事前分布に適用すると、バッチ学習アルゴリズムが得られる。ｎ＝１を設定し、事後分布に更新式を再適用することにより、増分的学習アルゴリズムを形成することができ、すなわち
2014517602.tif 000015
となる。
【００４２】
ＮＩＷＤのモードは
2014517602.tif 000016
であるため、ｔ回の観察後のパラメータのＭＡＰ推定は、単純に
2014517602.tif 000017
2014517602.tif 000018
となる。
【００４３】
ＮＩＷＤは、多変量ガウスの共役であり、単純かつ増分的な学習ルールを提供するので便利である。別の方法として、一様な（無益な）事前分布を使用することも可能である。位置及び共分散が独立している場合には事前分布を指定することができ、例えば、位置の事前分布をガウス又は一様とし、共分散の事前分布を「最大正規分布」とすることができる。
【００４４】
本例では、事前分布からの１回の更新により、及び同時に１回の観察を追加することによりそれぞれ事後分布を計算するバッチモード学習アルゴリズム及び増分的学習アルゴリズムを使用する。これらの学習アルゴリズムの一方は、ユーザが、入力イベントの位置と選択された予測を構成する文字の位置とを一致させることによって予測を「選択した」時に機能する。
【００４５】
ガウス分布の代わりにラプラス／ガンマ分布を選択した場合、ガウスの場合と同じ処理に従い、すなわち（例えば共役事前分布などの）事前分布を選択して、ＭＡＰ学習目標のための学習ルールを導出する。
【００４６】
ＭＡＰの代案としては、事前分布を使用せずモデル下のトレーニングデータの観察尤度が最大化されるようにパラメータを選択する最尤法（ＭＬ）推定が学習機構の別の選択肢となる。さらなる可能性としては、推論決定に使用する事後分布及び平均値又は中央値の全ての可能な値の積分値を計算する真のベイズ推定量を使用することが考えられる（ＭＬ法やＭＡＰ法は、いずれも点推定を行うので真にベイズではない）。これらの推定法は、計算に比較的コストがかかるという不利点があり、従って現在では、制限のあるリソース環境にとって魅力は低い。ベイズ推定量の例には、変分ベイズ及びギブスサンプリングがある。
【００４７】
上述した学習アルゴリズムは、各データポイントを新しい又は古いに関わらず等しく考慮した学習アルゴリズムであり、一定数のデータポイントが観察されると、事前分布は（意図的に）圧倒される。モデルに新近性の基本形を加えるために、及び事前分布を継続的に強化することにより何らかの異常値許容範囲を加えるために、以下の２つの変更を行うことができる。
【００４８】
第１の変更は、自由度パラメータαｃ、βｃを単純に制限することであり、古い観察を「忘れて」、モデルがどれほど「リジッド」になるかを制限するという効果がある（「リジッド」モデルは、新たなデータポイントの効果がほとんどないような高い自由度値を有する）。この制限は、これらのパラメータが限界（他のハイパーパラメータ更新の動作を侵害すべきでない動作）を超えた場合にこれらを更新しないことにより適用される。
【００４９】
第２の変更は、他の事前ハイパーパラメータ
2014517602.tif 000019
及び
2014517602.tif 000020
を更新方程式に再び投入して、多くのデータポイントが観察された後でもこれらのパラメータが効果を与え続けるようにすることである。この変更は、更新方程式が単純に少量の加重平均であるという理由で比較的簡単に行うことができ、従って以下のように何らかの量の事前分布を「加える」ことが妥当である。
2014517602.tif 000021
2014517602.tif 000022
2014517602.tif 000023
2014517602.tif 000024
【００５０】
追加パラメータαｃｍａｘ、βｃｍａｘ、δ及びεは、必要に応じて経験的に設定することができる。これらのパラメータは、事前分布の「漸近強度」、及び過去の観察を忘れる度合いを制御する。
【００５１】
単一の仮想キーボード１は、例えば異なるユーザが単一のシステムを使用できる場合、又は仮想キーボードのフォームファクタが可変である場合、複数の別個のターゲットモデルセット６を保持する必要があり得る。（フォームファクタの変更などの）場合によっては、システムは、異なる入力モデルを明示的に選択するための十分な情報を有することができるが、複数ユーザの場合には、適切なモデル選択が明らかでないこともある。この状況では、モデル選択の要素が支援を行うことができる。
【００５２】
モデル選択を行うための健全な方法は、数多くのサンプルにわたってデータ尤度を評価することである。これは以下のように行うことができ、データ尤度は以下のように表現することができる。
2014517602.tif 000025
式中、Ｌ（Ｄ｜Ｍ）は、モデルＭ下でデータＤを観察する尤度である。これは以下のように記述することができる。
2014517602.tif 000026
2014517602.tif 000027
ターゲットにわたる事前分布ｐ（ｃ｜Ｍ）が一様であると仮定される場合、これを抽出して定数に入れることができる。
【００５３】
この対数尤度統計は、入力確率生成器において一度に複数のモデルに問い合わせを行い、全てのターゲットにわたる出力を合計し、いくつかの「シード入力」の計算した対数尤度が最も高いモデルを選択することにより計算することができる。
【００５４】
これまでに提示したモデルは、シーケンス内の各キー押下が他の全てのキー押下とは無関係であるという明らかに適確でない前提を組み込んでいた（特定のキーの入力分布は、恐らくは最後に入力された文字に非常に強く依存する）。最後の文字が入力されたことを所与とした場合に現在の文字入力が全ての以前の文字とは条件付きで無関係であるという一次マルコフの前提の方が適切であると考えられる。従って、入力シーケンス全体の確率は以下のようになる。
2014517602.tif 000028
式中の全ての項は、上述した通りである。次に、重要なモデル化の決定は、タッチ位置の条件付き確率の形
2014517602.tif 000029
を仮定することである。分布の１つの選択肢は、最初に以前のタッチ位置ｘを、各ターゲットに関して別個のガウス及び以前の入力位置のクラスで分類することである。別の考えられる選択肢は、移動した距離
2014517602.tif 000030
を用いてターゲット毎の入力分布の変化を制御することである。この分布の形は、仮想キーボードユーザから収集した典型的なデータをモデル化するように選択すべきである。
【００５５】
モデルセット６は、ｉ）入力確率生成器２により問い合わせを行ってモデルパラメータの現在のＭＡＰ推定値を戻し、ｉｉ）選択イベントに応答してモデルを更新するために入力モデル更新器５によりトレーニングすることができる。
【００５６】
モデルパラメータは、キー毎に記憶することも、又は（共分散の場合には）複数のキー間で共有することもできる。説明する例では、各キー／ターゲットが位置及び共分散値を有する。別の方法は、各キーに位置は与えるものの共分散を共有させ、キーのいずれかがトレーニングされる時に同じ共分散がトレーニングされるようにすることである。パラメータの正確な表現は柔軟であり、例えば共分散よりもむしろ精度マトリクスを記憶したほうが、確率生成中にはマトリクス反転が必要にならずモデルトレーニングの頻度が低い場合に反転が必要になるので都合が良いことがある。
【００５７】
従って、入力確率生成器２は、入力イベント１０を所与として、ユーザが入力イベント１０によってこのターゲットを選択しようとしていた確率ｐ（ｘ｜ｃ，Ｍ）を各ターゲットｃに関して生成する。入力確率生成器２は、所与のターゲットの確率値を生成するために、このターゲットのモデルに問い合わせを行ってモデルパラメータμｃ、Σｃの現在のＭＡＰ推定値を戻す。次に、入力確率生成器２は、これらのモデルパラメータを用いて、入力位置ｘにおいて評価されるガウス確率密度関数Ｇ（ｘ；μ，Σ）の値を計算する。計算された確率値は、イベント毎の確率ベクトルとして表すことができ、これらを連結してターゲットシーケンス意図構造１４を形成することができる。
【００５８】
好ましい実施形態では、システムが、ターゲットマッピング段３をさらに含む。ターゲットマッピング段３は、ターゲット入力から予測の構築に使用できるワードフラグメント（通常は１又は２文字）へのマッピングを示すワードフラグメントマップを含む。このマッピングは、ターゲットシーケンス意図構造１２を入力シーケンス意図構造（Ｉｎｐｕｔ  Ｓｅｑｕｅｎｃｅ  Ｉｎｔｅｎｔｉｏｎ  Ｓｔｒｕｃｔｕｒｅ）１６に変換するために、ターゲットシーケンス意図構造１２内の各要素に個別に適用される。ワードフラグメントマップは、ターゲット（キーボード上の位置、キーの抽象化）から１又はそれ以上のワードフラグメント（ユーザが入力したいと思う単語の一部）へのマッピングを保持する。最も単純なケース（例えば、フルｑｗｅｒｔｙキーボード上で英語をタイピングする場合）では、各ターゲットが単一のワードフラグメントを参照する。各キーに別の文字が関連している場合（例えば、フランス語のアクセント付き文字、又は各キーが複数の文字を表す場合）、これらの文字を追加のワードフラグメントとして加えることができる。別の各ワードフラグメントごとに、各ターゲットに対応する確率を何らかの係数だけさらに割り引くことができる。その後、考えられるワードフラグメントの組及びシーケンス内の各イベントの確率を組み立てて入力シーケンス意図構造１６にする。
【００５９】
また、ターゲットマッピング段３は、選択された予測２０のワードフラグメントをこれらの対応するターゲットイベントに再マッピングする。好ましい実施形態では、ワードフラグメントの各々にこれらが由来するターゲットをタグ付けして、選択イベントの発生時に予測器４がターゲットをそのタッチ位置にペアリングできるようにする。これは、各ワードフラグメントにその対応するターゲット及び入力イベントをタグ付けすることにより行うことができる。従って、アンマップは、タッチ位置とターゲットの自明のペアリングである。しかしながら、システムは、ワードフラグメントにタグ付けを行う代わりに、他の機構を用いて、選択された予測２０のワードフラグメントをこれらの対応するターゲットイベントに再マッピングすることもできる。例えば、別の実施形態では、ターゲットマッピング段３が、選択された予測のワードフラグメントをこれらの対応するターゲットに逆マッピングすることを含む。この逆マッピングを行うために、選択された予測２０及び入力イベントの対応する文字列を分離機構に転送する。分離機構は、選択された予測２０に関して最も確率の高いワードフラグメントの組み合わせを評価することにより、予測２０をワードフラグメントに分離する。次に、ターゲットマッピング段３においてワードフラグメントをこれらのターゲットに逆マッピングし、入力イベントの文字列とペアにする。このような機構の最も単純な実装では、ワードフラグメントが単一の文字を含み、分離機構が、ターゲットに逆マッピングすべき単一の文字に予測を分離する。この状況では、予測器４により分離を行うことができる。
【００６０】
システムは、テキスト（又は同様の）予測１８を生成するために予測器４を含む。予測器４は、このケースでは一連の「ワードフラグメント」の組及び確率を含む入力シーケンス意図構造１６を含む何らかの入力を所与として予測１８の組を生成する装置である。各予測１８は、テキスト文字列、すなわち（ｓ＿ｉによって示される）用語又は語句、及びｐ＿ｉによって示される確率値から成る。従って、予測の組内にｎ個の予測が存在する場合、この組は、｛（ｓ＿１, ｐ＿１）, （ｓ＿２, ｐ＿２） ．．． （ｓ＿ｎ, ｐ＿ｎ）｝の形を取る。
【００６１】
当業者であれば理解できるように、テキスト予測システムでは、あらゆるタイプの予測器４及びあらゆる数の予測器４を使用してテキスト予測を生成することができる。予測器４は、ユーザが入力したテキストのコンテキストに基づいてテキスト予測１８を生成し、すなわちコンテキストのｎ−１までの用語に基づいてｎ番目の用語のテキスト予測１８を生成することが好ましい。ここで言う「コンテキスト」とは、シーケンス内の以前に現れた用語、及びシステムが有している現在の用語に関するあらゆる知識（例えば、この用語に寄与する可能性の高いワードフラグメント）の両方を意味する。システムは、特定のコンテキストを所与として、確率の推定を使用することにより、後続する可能性が最も高い単語を予測する。予測１８は、多言語モデル及び単一言語モデル予測器により生成することができる。
【００６２】
テキスト予測を生成する予測器（単一言語及び多言語モデル）の使用についての詳細な説明は、国際特許出願公開第２０１０／１１２８４１号、「電子装置にテキストを入力するためのシステム及び方法（Ｓｙｓｔｅｍ  ａｎｄ  ｍｅｔｈｏｄ  ｆｏｒ  ｉｎｐｕｔｔｉｎｇ  ｔｅｘｔ  ｉｎｔｏ  ｅｌｅｃｔｒｏｎｉｃ  ｄｅｖｉｃｅｓ）」に記載されており、この特許出願はその全体が引用により本明細書に組み入れられる。さらに、カテゴリ重み付けされたテキスト予測を生成する適応的予測器（単一言語及び多言語モデル）の使用についての詳細な説明は、国際特許出願ＰＣＴ／ＧＢ２０１０／００１８９８号、「電子装置にテキストを入力するためのシステム及び方法（Ｓｙｓｔｅｍ  ａｎｄ  ｍｅｔｈｏｄ  ｆｏｒ  ｉｎｐｕｔｔｉｎｇ  ｔｅｘｔ  ｉｎｔｏ  ｅｌｅｃｔｒｏｎｉｃ  ｄｅｖｉｃｅｓ）」に記載されており、この特許出願はその全体が引用により本明細書に組み入れられる。
【００６３】
システムの予測器４は、一連の「ワードフラグメント」の組及び確率を含む入力シーケンス意図構造１６を入力として受け取り、ユーザに表示する予測１８の組を生成する。例えば、入力シーケンス意図構造がｔ及びｏというワードフラグメントを含み、単語を（単語を完成させる）「ｔｏ」又は（ワードフラグメントが単語の接頭辞である）「ｔｏｇｅｔｈｅｒ」であると予測できるような場合、予測器４を、入力シーケンス意図構造１６が単語全体を完成させる一致を戻すように、又は入力シーケンス意図構造１６が接頭辞である可能性が高い単語を戻すように構成することができる。入力シーケンス意図構造１６は、指針として使用できればよく、例えば、ユーザが何らかの文字を入力し損ねたかのように追加の文字を加え、或いはユーザが余計な文字を入力したかのように文字を無視することができる。入力シーケンス意図構造１６を通じた単一の経路を各予測１８によって識別し、入力イベントとターゲットの間に関連性を形成できるようにしなければならない。各ターゲットは、言語に応じて、ターゲットマッピング段３においてワードフラグメントマップにより一意の１又はそれ以上のワードフラグメントに既にマッピングされている。さらに、好ましい実施形態では、入力シーケンス意図構造１６が、ワードフラグメントのターゲット及び入力イベントへのタグ付けを記憶する。従って、予測器４は、ワードフラグメントに対応するターゲットをタグ付けすることを通じて、予測の構築に使用したターゲットを追跡するので、予測の選択により、入力イベント１０とターゲットの間の対応性がもたらされる。アンマッピングが逆マッピングを含む実施形態では、分離機構が、選択した予測２０をワードフラグメントの組み合わせに分離し、ワードフラグメントマップを用いてワードフラグメントを対応するターゲットに逆マッピングする。その後、各ターゲットをそれぞれの入力イベント１０とペアにする。
【００６４】
システムは、入力モデル更新器５も含む。入力モデル更新器５は、選択イベント２０に応答して入力イベントとターゲットの対応１４を受け取る。選択イベント２０は、ユーザが入力しようとしていたターゲットを識別し、従って予測器４によりターゲットを入力イベント１０と一致できるようにする。入力モデル更新器５は、好ましくは（メモリ使用量及び効率性のために）学習アルゴリズムの増分変化を用いて適当なモデルを更新する。入力モデル更新器５は、仮想キーボード１上の各選択イベント２０に応答して、複数のモデルに増分的学習更新ルールを適用する。入力は、ターゲットとペアにされた入力位置の組｛（ｘｉ，ｃｉ）｝ｉ＝１．．ｋであり、これらの各々を単一のターゲットｃｉに対し単一のトレーニングポイントｘｉとして使用することができる。事前ハイパーパラメータ及び学習パラメータは全て固定値に設定され、これらにより初期ターゲット位置及び予想精度が設定されるとともに、学習を行う速度が制御される。各モデルは、単独で考慮することができる。これにより、トレーニングデータにラベル付けを行う必要性が生じ、すなわち入力イベントはターゲットラベルとの関連性を必要とする。ラベル付けは、入力イベント１０及びターゲットのストリームであるデータでは行われず、従って選択イベント２０から推測しなければならない。上述したように、入力イベント１０をターゲットに関連付ける１つの方法は、入力シーケンス意図構造１６内でワードフラグメントにこれらのターゲット及び入力イベント１０をタグ付けすることである。予測が選択されると、予測を構成するワードフラグメントが分かる。従って、ワードフラグメントにタグ付けされたターゲットを入力イベントとペアにして、ラベル付けされたトレーニングデータを提供することができる。或いは、ターゲットマッピング段３において、選択された予測のターゲットにワードフラグメントを逆マッピングすることにより、これらのターゲットを求めることができる。その後、このようにして求めたターゲットを入力イベント１０とペアにすることができる。
【００６５】
従って、本発明は、入力イベントを所与としてユーザがどの文字を入力する予定であるかをより正確に予測し、従ってより正確なテキスト予測を行うことができるシステムを提供するために、複数のターゲットのユーザ入力イベントをモデル化してこれらのモデルをユーザ入力で更新するシステムを提供する。
【００６６】
ここで、本システムの使用法について非限定的な例として説明する。ユーザは、入力を行うことにより、例えばタッチセンサ式キーボード１上のある位置にタッチすることにより、仮想キーボード１の連続座標系と相互作用する。ユーザは、キーボード１上に表示されたターゲットを入力する意図でキーボード１上の位置にタッチする。キーボード１は、（本例ではキーボード上のタッチの位置を表すデカルト座標である）入力イベント１０のストリームを構築し、これが入力確率生成器２に転送される。
【００６７】
入力確率生成器２は、ターゲットシーケンス意図構造１２を生成又は更新する。キーボードのターゲットが文字を表す場合、ターゲットシーケンス意図構造１２は、ユーザが画面にタッチした時に入力しようとしていた可能性が最も高い文字に対応する１又はそれ以上の文字を含む。文字の各々には、ユーザがその画面の位置にタッチした時にその文字を入力しようとしていた確率、及び入力イベント１０へのタグが関連付けられる。入力確率生成器２は、ターゲットシーケンス意図構造１２を生成するために、各文字の関連するモデルに入力イベント１０について問い合わせることにより、ユーザが１又はそれ以上の文字の各々を入力しようとしていた確率を計算する。上述したように、各モデルは、この文字に関するユーザのキーボードとの対話履歴をモデル化し、すなわちこの文字に関するユーザの以前の入力イベントをモデル化したものである。従って、入力確率生成器２は、経験的に（１０−４などの）所定のレベルに設定された、又はユーザによる試行により決定された閾値確率値を上回る関連する確率を有する文字を保持することが好ましい。
【００６８】
ターゲットシーケンス意図構造１２は、ターゲットシーケンス意図構造１２の各文字を、関連する確率を有する１又はそれ以上のワードフラグメントにマッピングするワードフラグメントマップに転送され、これにより入力シーケンス意図構造１６が生成される。これらの１又はそれ以上の文字の各文字は、１又はそれ以上のワードフラグメントに個別にマッピングされ、これらのワードフラグメントには、そのワードフラグメントが由来する文字がタグ付けされる。ワードフラグメントに関連する確率は、文字に関連する確率と同じである必要はない。例えば、マッピング時には、文字に関連する確率に、ワードフラグメントに依存する付加的係数を乗算することができる。ワードフラグメントマップは、システムのメモリに記憶された固定マップとすることができる。このマップは使用する言語によって異なり、例えば、選択した言語で句読点が異なり、アクセントを置く文字、ウムラウトなどが、システムの選択された言語に依存するワードフラグメントの特徴になることもある。
【００６９】
ワードフラグメントマップは、ワードフラグメントにマッピングされたターゲットを含み、ワードフラグメントには、ワードフラグメントが由来するターゲットがタグ付けされることが好ましい。
【００７０】
入力シーケンス意図構造１６は、ワードフラグメント、及び一連の入力イベント１０に対応する確率を含み、ワードフラグメントは、ワードフラグメントが由来する文字及び入力イベントにタグ付けされることが好ましい。予測器４は、各予測１８に関して入力シーケンス意図構造１６を通じた単一の経路を識別することにより、すなわちワードフラグメントを通過し、入力イベント１０の各々に関して単一のワードフラグメントを含む予測シーケンスを生成することにより、入力シーケンス意図構造１６からいくつかの予測１８を生成する。入力シーケンス意図構造１６を通じた単一の経路を識別することにより、入力イベント１０とターゲットの間の関連性１４を形成することができる。予測器は、入力シーケンス意図構造１６を通じた最も確率の高い複数の経路を考慮し、任意にこの経路が接頭辞である全ての語句も考慮する。次に、これをｎ−ｇｒａｍ言語モデルに投入して予測候補の順序付けを行う。この処理の実施は、国際特許出願公開第２０１０／１１２８４１号に記載されており、この特許出願はその全体が引用により本明細書に組み入れられる。
【００７１】
仮想キーボード１は、予測器が生成した予測を表示するように構成することができる。正しい予測の選択２０は、ユーザに表示された所与の予測のユーザ選択、又はシステムによる最も確率の高い予測の自動承認のいずれかによって行うことができる。予測器４は、入力シーケンス意図構造１６を介してどのワードフラグメントが予測の構築に使用されるかを追跡し、ユーザ選択２０時に入力イベント１０をこれらのターゲットと一致１４させるように構成される。入力シーケンス意図構造１６が、ターゲットをタグ付けられたワードフラグメントを含む場合、予測器４は、ターゲットタグを追跡して、入力イベント１０をこれらのターゲットと一致させることが入力イベント１０をこれらのターゲットとペアにすることを含むようにするよう構成される。或いは、これらのターゲットを入力イベント１０とペアにする前に、ターゲットマッピング段３における逆マッピングにより、最初にワードフラグメントをその対応するターゲットと一致させる。これらのターゲットとペアになった入力イベント１０を入力モデル更新器５に転送し、これによりモデルセット６の関連するモデルが更新される。
【００７２】
ここで、システムの機能を説明するために、ある例について考察する。この例では、ユーザが仮想キーボード１（ｑｗｅｒｔｙレイアウト）上で「ｉｔ’ｓ」という単語を入力しようとしている。
【００７３】
ユーザは、最初の文字である「ｉ」に最も近い画面にタッチする。仮想キーボード１は、この位置を表す入力イベント１０（デカルト座標など）を生成し、これを入力確率生成器２に送信する。
【００７４】
入力確率生成器２は、ターゲットモデル６を全て評価し、これらのモデルがこの入力イベントに対応する可能性がどれほどであるかを計算する。入力確率生成器は、（経験的に又はユーザによる試行を通じて設定された）所定の閾値を上回る確率を有するターゲットのみを保持することにより、低確率のターゲットをフィルタ除去する。本例では、結果として得られるターゲットシーケンス意図構造１２が、［（＠Ｉ, １．０），（＠Ｏ，０．２），（＠Ｕ， ０．２），（＠Ｋ，０．１５），（＠Ｊ，０．１）］であり、この場合の＠Ｉは、文字「ｉ」に対応するターゲットである。
【００７５】
ターゲットマッピング段３は、例えば、
2014517602.tif 000031
のように、各ターゲットを複数の別のワードフラグメントに変換する。ターゲットマッピング段３は、ターゲットをワードフラグメントにマッピングし、各ワードフラグメントにその由来となるターゲットをタグ付けする。結果として得られる入力シーケンス意図構造１６は、
2014517602.tif 000032
となる。
【００７６】
次に、予測器４は、この単語のコンテキスト及びいずれかの利用可能な単語のコンテキストを使用して、ユーザにフィードバックするための予測１８を生成する。予測器４は、例えば、［“Ｉ”，“Ｉ’ｍ”，“ｉｎ”］と予測する可能性がある。
【００７７】
次に、ユーザは、２番目の文字「ｔ」からかなり遠く、実際には「ｒ」のほうに近い第２のタッチイベントを行う。仮想キーボード１は、両方のタッチイベント１０（「ｉ」及び「ｔ」）を入力確率生成器２に送信する。
【００７８】
ここで、入力確率生成器２は、一連の確率ベクトル｛［（＠Ｉ，１．０），（＠Ｏ，０．２），．．．］，［（＠Ｒ，０．８），（＠Ｔ，０．６），（＠Ｅ，０．１），．．．］｝を生成する。
【００７９】
ターゲットマッピング段３をシーケンス内の各イベントに個別に適用して、ワードフラグメントをこれらのターゲットにタグ付けし、
2014517602.tif 000033
とする。
【００８０】
予測器４は、予測１８［“ｉｔ”，“ｉｔ’ｓ”，“ｏｒ”］を形成し、これらがユーザに表示される。これらの予測は、仮想キーボードによって表示することができる。ユーザは、予測「ｉｔ’ｓ」を選択する。仮想キーボード１は、選択イベント２０を作成し、予測器は、２つのタッチイベント１０を予測１８のターゲットと一致させる。システムは、ワードフラグメントにこれらのターゲット及び入力イベントをタグ付けすることを通じて、各予測を構成するターゲット及び入力イベントのリストを追跡するので、アンマッピング段は、タッチ位置とターゲットの自明のペアリングである。
【００８１】
予測器４は、ユーザが画面にタッチした位置をこれらのターゲットとペアにする（タッチ１→＠Ｉ）、（タッチ２→＠Ｔ）。次に、入力モデル更新器５が、（第１のタッチイベントが非常に正確であったという理由で）密接である可能性が高い＠Ｉのモデル、及び（第２のタッチイベントがそれほど正確ではなかったという理由で）密接である可能性が低い＠Ｔのモデルを更新する。
【００８２】
上記の例は、単一の文字を表すターゲットに関する。しかしながら、ターゲットは、複数の文字を表すこともできる。ターゲットが、Ａ／Ｂ／Ｃなどの複数の文字を表す場合、このターゲットのモデルは、ターゲットＡ／Ｂ／Ｃに対応するユーザ入力イベントをモデル化する。選択された予測１８がＡ、Ｂ又はＣを含む場合、ターゲットＡ／Ｂ／Ｃが入力イベントに再マッピングされる。
【００８３】
本方法は、ユーザの仮想キーボードとの対話履歴をモデル化することにより、ユーザが画面にタッチした時に入力しようとしていた文字を正確に予測することができる。
【００８４】
本説明は一例にすぎず、説明した実施形態には、特許請求の範囲に定義する本発明の範囲から逸脱することなく変更及び修正を加えることができると理解されたい。
【符号の説明】
【００８５】
１  仮想キーボード
２  入力確率生成器
３  ターゲットマッピング段
４  予測器
５  入力モデル更新器
６  ターゲットモデルセット
１０  入力イベント
１２  ターゲットシーケンス意図構造
１４  入力−ターゲットの対応
１６  入力シーケンス意図構造
１８  予測
２０  選択イベント
【図１】
2014517602.tif 000034
【国際調査報告】
2014517602.tif 000035
2014517602.tif 000036
2014517602.tif 000037
2014517602.tif 000038