(57)【特許請求の範囲】
【請求項１】
入力記号のトレーニングコーパスを提供するステップであって、それぞれの特有の入力記号は、関連するキーをキーボード上に有するステップと、
前記トレーニングコーパスの前記記号を入力するコストを評価するコスト関数を全体的に最小化するステップと、
前記全体的に最小化されたコスト関数に従って前記キーを配列するステップと、
を含み、
前記コスト関数は、
【数１】
0004705725.tif 000005
として表され、式中、ｄnは、キーボード上におけるサブセットのＧ個のキーの（うちの任意の２ヶの間の）相互間距離をｎ乗したものであり、ｆは、対応する記号のサブセットが、前記トレーニングコーパスにおいて互いに続く相対頻度であり、Ｄは重みｃを有する第２の作業負荷項であり、
前記Ｄは−ｄikｆijkであり、ここでｆijkは、前記トレーニングコーパスにおける３つの連続した記号の三重字確率である、キーボード上にキーを配列する方法。
【請求項２】
入力記号のトレーニングコーパスを提供するステップであって、それぞれの特有の入力記号は、関連するキーをキーボード上に有するステップと、
前記トレーニングコーパスの前記記号を入力するコストを評価するコスト関数を全体的に最小化するステップと、
前記全体的に最小化されたコスト関数に従って前記キーを配列するステップと、
を含み、
前記コスト関数は、
【数２】
0004705725.tif 000006
として表され、式中、ｄnは、キーボード上におけるサブセットのＧ個のキーの（うちの任意の２ヶの間の）相互間距離をｎ乗したものであり、ｆは、対応する記号のサブセットが、前記トレーニングコーパスにおいて互いに続く相対頻度であり、Ｄは重みｃを有する第２の作業負荷項であり、
前記Ｄはｄikｆijkであり、ここで、ｆijkは、前記キーボードにおいて３つの記号が略線形に配列される三重字確率である、キーボード上にキーを配列する方法。
【請求項３】
請求項１又は２に記載の方法において、
ｎ＝１である場合、前記コスト関数は、前記トレーニングコーパスの記号を入力している間に、ポインタが移行するであろうと予期される総距離を評価する、方法。
【請求項４】
請求項１又は２に記載の方法において、
ｎ＞１である場合、前記コスト関数は、隣接していないキー間でポインタが移動する総距離を低減するようにバイアスされる、方法。
【請求項５】
請求項１又は２に記載の方法において、
０＜ｎ＜１である場合、前記コスト関数は、頻繁に発生する記号の組み合わせが隣接キーに配列される確率を増大するようにバイアスされる、方法。
【請求項６】
請求項１又は２に記載の方法において、
前記コスト関数を最小化する間に、アニーリングするステップをさらに含む、方法。
【請求項７】
請求項６に記載の方法において、
前記アニーリングはシミュレートされ、前記最小化は置換検索を含む、方法。
【請求項８】
請求項７に記載の方法において、
キーのサブセットが置換され、前記置換されたキーのサブセットは、前記コストを低減する場合には保持され、前記コストが増大する場合には、前記置換されたキーのサブセットは、冷却する正の温度Ｔについて、ｅ-Δ C/Tの確率で保持される、方法。
【請求項９】
請求項７に記載の方法において、
前記置換はランダムである、方法。
【請求項１０】
請求項６に記載の方法において、
前記アニーリングは、決定的なアニーリング二次割り当てである、方法。
【請求項１１】
請求項１又は２に記載の方法において、
記号シーケンスを含むトレーニングコーパスからモデルを構築するステップであって、該モデルは記号のセットを予測し、該セットの各記号は、特定の記号シーケンスの可変長サブシーケンスを用いて特定の記号シーケンスを続け、特定の長さは、前記予測が正しい確率を最大にするよう選択される、ステップと、
前記キーボード上のキーを強調するステップであって、前記強調されるキーは、記号のセットのうちの選択された記号に対応する、ステップと、
をさらに含む、方法。
【請求項１２】
請求項１１記載の方法において、
前記モデルは決定ツリーである、方法。
【請求項１３】
入力記号のトレーニングコーパスが提供され、特有の入力記号のそれぞれに関連するキーを有し、トレーニングコーパスの記号を入力するコストを評価するコスト関数を最小化し、最小化されたコスト関数に従ってキーが配列され、
前記コスト関数は、
【数３】
0004705725.tif 000007
として表され、式中、ｄnは、キーボード上におけるサブセットのＧ個のキーの（うちの任意の２ヶの間の）相互間距離をｎ乗したものであり、ｆは、対応する記号のサブセットが、前記トレーニングコーパスにおいて互いに続く相対頻度であり、Ｄは重みｃを有する第２の作業負荷項であり、
前記Ｄは−ｄikｆijkであり、ここでｆijkは、前記トレーニングコーパスにおける３つの連続した記号の三重字確率である、キーボード。
【請求項１４】
入力記号のトレーニングコーパスが提供され、特有の入力記号のそれぞれに関連するキーを有し、トレーニングコーパスの記号を入力するコストを評価するコスト関数を最小化し、最小化されたコスト関数に従ってキーが配列され、
前記コスト関数は、
【数４】
0004705725.tif 000008
として表され、式中、ｄnは、キーボード上におけるサブセットのＧ個のキーの（うちの任意の２ヶの間の）相互間距離をｎ乗したものであり、ｆは、対応する記号のサブセットが、前記トレーニングコーパスにおいて互いに続く相対頻度であり、Ｄは重みｃを有する第２の作業負荷項であり、
前記Ｄはｄikｆijkであり、ここで、ｆijkは、前記キーボードにおいて３つの記号が略線形に配列される三重字確率である、キーボード。
【請求項１５】
請求項１３又は１４に記載のキーボードにおいて、
前記キーはそれぞれ六角形の形状を有する、キーボード。
【請求項１６】
請求項１３又は１４に記載のキーボードにおいて、
前記キーは、タッチセンシティブ表面上に表示される、キーボード。
【請求項１７】
請求項１３又は１４に記載のキーボードにおいて、
前記タッチセンシティブ表面は、前記キーを表示するための第１の部分と、入力された記号を表示するための第２の部分とを含む、キーボード。
【請求項１８】
入力記号のトレーニングコーパスが提供され、特有の入力記号のそれぞれに関連するキーを有し、トレーニングコーパスの記号を入力するコストを評価するコスト関数を最小化し、最小化されたコスト関数に従ってキーが配列され、所定数の予測されたキーが強調され、
前記コスト関数は、
【数５】
0004705725.tif 000009
として表され、式中、ｄnは、キーボード上におけるサブセットのＧ個のキーの（うちの任意の２ヶの間の）相互間距離をｎ乗したものであり、ｆは、対応する記号のサブセットが、前記トレーニングコーパスにおいて互いに続く相対頻度であり、Ｄは重みｃを有する第２の作業負荷項であり、
前記Ｄは−ｄikｆijkであり、ここでｆijkは、前記トレーニングコーパスにおける３つの連続した記号の三重字確率である、キーボード。
【請求項１９】
入力記号のトレーニングコーパスが提供され、特有の入力記号のそれぞれに関連するキーを有し、トレーニングコーパスの記号を入力するコストを評価するコスト関数を最小化し、最小化されたコスト関数に従ってキーが配列され、所定数の予測されたキーが強調され、
前記コスト関数は、
【数６】
0004705725.tif 000010
として表され、式中、ｄnは、キーボード上におけるサブセットのＧ個のキーの（うちの任意の２ヶの間の）相互間距離をｎ乗したものであり、ｆは、対応する記号のサブセットが、前記トレーニングコーパスにおいて互いに続く相対頻度であり、Ｄは重みｃを有する第２の作業負荷項であり、
前記Ｄはｄikｆijkであり、ここで、ｆijkは、前記キーボードにおいて３つの記号が略線形に配列される三重字確率である、キーボード。
【請求項２０】
請求項１８又は１９に記載のキーボードにおいて、
特定の入力記号シーケンスの完了する可能性が最も高い部分が表示される、キーボード。
【請求項２１】
請求項１３又は１４記載のキーボードにおいて、
前記キーは可動ボタンである、キーボード。
【請求項２２】
請求項１３又は１４記載のキーボードにおいて、
前記キーそれぞれのサイズは、前記キーボードの固定サイズエリアを占有する特定数のキーについて最大化される、キーボード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、概してキーボードに関し、特に最適なシングルポインタキーボードの設計に関する。
【０００２】
【従来の技術】
従来のキーボードでは、書かれた言語における各種文字または記号を表すキーは、通常、両手でのタイプが高速であり、かつ効率的であるような行に配列される。しかし、従来のキーボードでは、完全に熟練するまでに、多くの訓練および実践が必要である。訓練していないユーザは、長たらしくて飽き飽きする程、キーを捜し、そしてキーをつつくことによってタイプする。最も一般的な「ＱＷＥＲＴＹ」配列に配列されたキーボードでは、訓練されていないユーザは、外見上はランダムに配分されたキーに直面し、キーボードを操作することができる速度は恐ろしく遅くなる。実際には、「ＱＷＥＲＴＹ」配列は、ランダムではなく、両手でのタイピング速度を制限するよう設計されたものである。
【０００３】
訓練していないユーザがキーボードを操作することができる速度は、ユーザアクションを３つの段階、すなわち走査、決定、および物理的選択に分割する単純なユーザインタラクションモデルで有用に研究することが可能である。アクションを完了するまでの時間は、各段階で発生する遅延の合計であり、たとえば、
キーをタイプする総時間すなわち総コスト＝Ｔv＋Ｔc＋Ｔm
であり、式中、Ｔvは視覚的負荷であり、Ｔcは認知負荷であり、Ｔmは運動負荷である。
【０００４】
視覚的負荷
視覚的負荷の重要な部分は、キーを捜す間に行わなければならない目の運動である。目における光受容体の組織は、大部分の受容体が視野の約１度をなす光刺激を受容する窓である、中心窩と呼ばれる網膜の中心における小さな領域にあるように配置されている。同様に、脳の視覚知能の大部分は、この小さなエリアに集中している。形状認識およびリーディングなどの視覚タスクでは、問題となる対象物の像が中心窩に、または中心窩のごく付近に投影されるように目を向ける必要がある。
【０００５】
したがって、キーを捜している間、多くのランダムに分配された各キーの像をこの高解像度エリアに投影するように、目を繰り返し再配向する必要がある。その後にのみ、詳細な知覚分析を開始することができる。目を向ける方法は、関心のあるものの像が眼窩にあるように、眼球を動かす動眼反応である、サッカード眼球運動として知られている。問題に輪をかけるように、目の動きが大きい場合、サッカード眼球運動は対象物を見失うことがあり、目の位置が調節される際にさらなる遅延が発生する。
【０００６】
効率的なキーボードは、サッカード眼球運動を最小に抑えるべきである。理想的には、キーボードの最も頻繁に用いられる部分は、この部分が殆ど中心窩に含まれるように、視覚的にコンパクトであるべきである。同等に重要なこととして、必要な場合、サッカード眼球運動は小さくあるべきである。目の動きが少なく、かつキーボードが視覚的に安定するほど、ハンティングアンドペッキング（hunting and pecking：キーを探しそしてつつくという意味）をより高速に進めることができる。明らかに、略１．５フィートの長さと、５：１と同程度のアスペクト比を有する大部分の「標準型」キーボードは、訓練されていないハントアンドペックユーザ（hunt and peck users）に不向きである。
【０００７】
認知負荷
タイピングのコンテキストにおいて、認知負荷とは、キーを決定し、次に見るすなわちポインティングする場所を計画する間に行われる作業を指す。決定および計画は、記憶限定プロセスである。選択肢が多くある場合の決定は長くかかる。これは、選択肢がより多くあるからだけではなく、短期記憶は非常に限られているためである。選択肢が多すぎる場合、たとえば、キーボードを再度見ることで、いくつかの選択肢を短期記憶に入れたり出したりしなければならない。通常、２つまたは３つの選択肢からは素早く選択することができるが、５つ以上の選択肢に直面すると、かなり遅くなる。
【０００８】
キーボードが、アルファベット順など有意にレイアウトされる場合、思考が次の適切なキーを見つけるための検索戦略を計画する必要がないため、認知負荷はいくらか低減される。ユーザが各文字の場所について完全にはわかっていない場合、いくらかの検索はやむを得ない。この場合、認知負荷は、たとえば、「ｑｕ」、「ｔｈ」、「ｉｎｇ］など記憶を助ける順の文字を隣接したキーに配置することで、キーの配列に馴染みのあるパターンを埋め込むことによって低減することができる。「ｑ」を見た後で、ユーザは、後続する「ｕ」を見つける場所がどのへんにあるかについて強い予想を抱く。馴染みのあるパターンまたは関係は、個々の構成要素よりも少ない作動記憶負荷を課すため、馴染みのあるパターンをユーザに提供することもまた、認知負荷を低減させる。
【０００９】
運動負荷
良好なキーボードは、多くのポインタ行程、または高度に精密な動きを必要とすべきではない。たとえば、隣接したキーへの移動など、小さな増分的動きを行うのは容易であるが、遠くにあるキーに正確に到達するのは困難である。運動負荷を低減する１つの方法は、対象を可能な限り大きくかつ丸くすることである。これは、三角格子における六角形タイルとしてキーをレイアウトすることを示唆する。
【００１０】
【発明が解決しようとする課題】
米国特許第４，５７９，４７０号は、六角形のようなパターンにクラスタ化したキーを有するキーボードを教示する。クラスタ化は、両手打ちのユーザの指の移動を最小にするよう試みられる。該キーボードは、ハントアンドペックに対して特別な特性を持たない。
【００１１】
米国特許第５，１２８，６７２号は、予測型「ソフトキーボード」を記載している。表示される１２個のキーのセットは、特定の言語において用いられる特定の文字組み合わせの頻度に依存する。たとえば、１つの文字セットは母音の後に表示され、別の文字セットは定数の後に表示される。目的は、最小数すなわち１２個のキーを有するキーボードを提供することである。タッチセンシティブなハンドヘルドでの実施が示唆される。言語特性の統計学的分析は、所与の瞬間において表示する文字セットについて予測を行うために概説される。
【００１２】
米国特許第５，４８７，６１６号では、配列は、キーへの文字の割り当てを変更し、該変更がより低い予想行程を有する場合にはこの変更を保持する欲張り検索手順により設計される。定義により、欲張り検索手順は、通常、良くも悪くもない局所最適解を見つけるだけである。
【００１３】
米国特許第５，６２５，３５４号は、個々のキー間の距離を最小にするために、キーを「蜂の巣」タイプのパターンに配列した六角形の「ハントアンドペック」キーボードを記載している。より頻繁に発生する文字の対は、キーボードの中心付近にクラスタ化される。クラスタ化は、特別な頻度の文字対である二重字に基づく。キーの選択には、スタイラス（stylus）が示唆される。しかし、特定の言語についてテキストを入力するために、スタイラスを動かさなければならない総距離を最小限に抑えるという試みはなされていない。
【００１４】
米国特許第５，８０５，１５７号は、六角形キーを有する「ソフトキーボード」を記載している。六角形形状は、ペッキング（pecking）中に間隔が密接であるキーの区別を容易にするように選択され、キーの間隔をより密にすることができる。ポインティングにはマウスが示唆され、カーソルはキーに対して「スナップ」する。特定の言語についてキーボードを最適化するという試みはなされていない。
【００１５】
米国特許第６，０１１，５５４号は、１２個のキーを有する紛らわしくないキーボードを記載する。複数の文字が各キーに割り当てられ、キーストロークを曖昧にする。曖昧なシーケンスは、予め格納されたシーケンスライブラリを用いることで、解決される。
【００１６】
【課題を解決するための手段】
この発明に係るキーボード上にキーを配列する方法は、入力記号のトレーニングコーパスを提供するステップであって、それぞれの特有の入力記号は、関連するキーを前記キーボード上に有するステップと、前記トレーニングコーパスの前記記号を入力するコストを評価するコスト関数を全体的に最小化するステップと、前記全体的に最小化されたコスト関数に従って前記キーを配列するステップと、含むものである。
【００１７】
また、前記コスト関数は、
【数３】
0004705725.tif 000002
として表されるものである。なお、式中、ｄnは、キーボード上におけるサブセットのＧ個のキーの（うちの任意の２ヶの間の）相互間距離をｎ乗したものであり、ｆは、対応する記号のサブセットが、前記トレーニングコーパスにおいて互いに続く相対頻度である。
【００１８】
また、前記コスト関数は、
【数４】
0004705725.tif 000003
として表されるものである。なお、式中、ｄnは、キーボード上におけるサブセットのＧ個のキーの（うちの任意の２ヶの間の）相互間距離をｎ乗したものであり、ｆは、対応する記号のサブセットが、前記トレーニングコーパスにおいて互いに続く相対頻度であり、Ｄは重みｃを有する第２の作業負荷項である。
【００１９】
また、ｎ＝１である場合、前記コスト関数は、前記トレーニングコーパスの記号を入力している間に、ポインタが移行するであろうと予期される総距離を評価するものである。
【００２０】
また、ｎ＞１である場合、前記コスト関数は、隣接していないキー間でポインタが移動する総距離を低減するようにバイアスされるものである。
【００２１】
また、０＜ｎ＜１である場合、前記コスト関数は、頻繁に発生する記号の組み合わせが隣接キーに配列される確率を増大するようにバイアスされるものである。
【００２２】
また、前記Ｄは−ｄikｆijkであり、ここでｆijkは、前記トレーニングコーパスにおける３つの連続した記号の三重字確率である。
【００２３】
また、前記Ｄはｄikｆijkであり、ここで、ｆijkは、前記キーボードにおいて３つの記号が略線形に配列される三重字確率である。
【００２４】
また、前記コスト関数を最小化する間に、アニーリングするステップをさらに含むものである。
【００２５】
また、前記アニーリングはシミュレートされ、前記最小化は置換検索を含むものである。
【００２６】
また、キーのサブセットが置換され、前記置換されたキーのサブセットは、前記コストを低減する場合には保持され、前記コストが増大する場合には、前記置換されたキーのサブセットは、冷却する正の温度Ｔについて、ｅ-△C/Tの確率で保持されるものである。
【００２７】
また、前記置換はランダムである。
【００２８】
また、前記アニーリングは、決定的なアニーリング二次割り当てである。
【００２９】
また、記号シーケンスを含むトレーニングコーパスからモデルを構築するステップであって、該モデルは記号のセットを予測し、該セットの各記号は、特定の記号シーケンスの可変長サブシーケンスを用いて特定の記号シーケンスを続け、特定の長さは、前記予測が正しい確率を最大にするよう選択される、ステップと、前記キーボード上のキーを強調するステップであって、前記強調されるキーは、記号のセットのうちの選択された記号に対応する、ステップと、をさらに含むものである。
【００３０】
また、前記モデルは決定ツリーである。
【００３１】
また、この発明に係るキーボードは、入力記号のトレーニングコーパスが提供され、特有の入力記号のそれぞれに関連するキーを有し、トレーニングコーパスの記号を入力するコストを評価するコスト関数を最小化し、最小化されたコスト関数に従ってキーが配列されたものである。
【００３２】
また、前記キーはそれぞれ六角形の形状を有するものである。
【００３３】
また、前記キーは、タッチセンシティブ表面上に表示されるものである。
【００３４】
また、前記タッチセンシティブ表面は、前記キーを表示するための第１の部分と、入力された記号を表示するための第２の部分とを含むものである。
【００３５】
また、他の発明に係るキーボードは、入力記号のトレーニングコーパスが提供され、特有の入力記号のそれぞれに関連するキーを有し、トレーニングコーパスの記号を入力するコストを評価するコスト関数を最小化し、最小化されたコスト関数に従ってキーが配列され、所定数の予測されたキーが強調されるものである。
【００３６】
また、特定の入力記号シーケンスの完了する可能性が最も高い部分が表示されるものである。
【００３７】
また、前記キーは可動ボタンである。
【００３８】
さらに、前記キーそれぞれのサイズは、前記キーボードの固定サイズエリアを占有する特定数のキーについて最大化されるものである。
【００３９】
【発明の実施の形態】
この発明において、キーは、以下のようにキーボード上に配列される。入力記号シーケンスのトレーニングコーパス、たとえば略式で書かれた英語テキストが提供される。コーパスにおける特有の各記号は、関連するキーをキーボード上に有する。トレーニングコーパスの記号入力についてのコストＣを評価するコスト関数は、全体的に最小化される。次に、キーが、全体的に最小化されたコスト関数に従って、キーボード上に配列される。また、ポインタが移動しなければならない距離を低減するために、キーを六角形パターンに配列することもできる。
【００４０】
キーボード上でのキーストロークは、トレーニングコーパスからモデルを構築することで予測される。トレーニングコーパスは、記号シーケンスを含む。モデルは、記号のセットを予測し、特定の記号シーケンスの可変長サブシーケンスを用いて、セットの各記号が特定の記号シーケンスを続ける。予測が正しい確率を最大にするために、特定の長さが選択される。キーボード上のキーは、強調される。強調された記号は、記号セットにおいて選択された記号に対応する。
【００４１】
図１は、この発明に従って配列されたハントアンドペックキーボード１００を示す。この発明によるキーボード１００は、ユーザ、特にシングルポインタ、たとえば指、スタイラス、目での注視、またはマウスなどを有するユーザの視覚的負荷、認知負荷、および運動負荷を最小にする。
【００４２】
この発明の配列は、３つの負荷すべて、すなわちキーボードを使用するコストを、主にポインタが、たとえば英語の入力の特定コーパスについて移行する必要がある総距離を最小限にすることで、最小にするよう最適化される。キーボードはまた、可動ボタンとともに構築することができる。好ましい実施の形態において、キー１１１は、タッチセンシティブ表面１１５上に六角形パターンに配列される。六角形パターンは、キーボードの固定エリアに配列された特定数のキーについて、各キーのサイズを最大にする。
【００４３】
この発明のキーボード１００は、キー１１１が表示される部分１１０を含む。いくつかのキー１１２、１１３は、強調される。強調されたキーは、「予測」された次のキーであり、これについてはより詳細に後述する。部分１２０は、入力された文字１２１を表示する。カーソル１２２は、現在の入力位置を表す。特定記号シーケンスが完了する可能性が最も高い部分１２３も表示することができる。
【００４４】
部分１３０は、タイピング速度１３１、入力クリア１３２、または他のキーボード構成を選択するボタン１３３など、オプション的な情報を表示することができる。代替の実施の形態では、この発明のキーボード１００は、物理的なキーから構築してもよく、また、予測されたキー１１２、１１３は、該キーを照明することで表してもよい。
【００４５】
キーボードは、セル式電話、パームトップデバイス、ウェアラブルコンピュータ、ならびに身障者アクセスデバイスなど、非常に小型のディスプレイに適している。
【００４６】
キーボードは、以下の特徴を含む。キーの間隔は密接である。キーボードの配列は、入力の特定コーパスおよびサッカード眼球運動についてシングルポインタが移行する距離の最小化を含む、総作業負荷を最小化するよう最適化される。たとえば、コーパスが英語で書かれた情報から引き出される場合、ポインタはタイプされた各文字毎に平均で１．６キー幅を移行するだけである。従来のＱＷＥＲＴＹキーボードの場合、平均距離は４キー幅を越える。このように、目のサッカード眼球運動が最小化されることから、捜す時間が低減され、かつポインタ（スタイラス、指、または目による注視）が平均でより少ない距離移動することから、タイプする時間が低減される。
【００４７】
この発明のキーボードは、どのキーが次にタイプされる可能性が最も高いかを予想し、示唆する。予測されたキー１１２、１１３は、ユーザの注意を引きつけるために強調される。したがって、ハントアンドペックが加速される。所与の瞬間時間において強調されるキーの数は少なく、たとえば、３個以下である。このため、ユーザは選択を行う選択肢の数が少なく、認知負荷が低減される。英語で書かれる場合、この発明による予測は、平均でタイプ時の７６％正しい。
【００４８】
入力の特定コーパスについて、キーボード上のキーの配列は、配列の変更を追跡または解釈する際に関与するオーバヘッド知覚負荷または認知負荷がないように、固定されたままである。しかし、配列は、ユーザおよび予期される入力の種類に応じて変更することができる。たとえば、コーパスが日本語（カタカナ、平仮名、漢字、またはローマ字）である場合、配列および文字記号は、それに応じて変更することができる。
【００４９】
キーボード配列
この発明において、キーボード１００の最適な配列は、コスト関数Ｃを全体的に最小化することで、決定される。コスト関数Ｃは、視覚負荷、認知負荷、および運動負荷を決定する多くの作業負荷要因を表す。第１の要因は、特定のトレーニングコーパスにおける入力についてポインタが移動する必要がある総距離であり、第２の要因は、重み付き作業負荷でありうる。
【００５０】
負荷コスト関数の全体的最小化の利点
このコスト関数を全体的に最小化することは、さらなる有利な効果を有する。次にタイプされる文字が隣接したキーである確率が最大化される。全体的な最小化は、サッカード眼球運動も最小化する。最も頻繁にタイプされる文字は、キーボードの中心付近にあり、「ｉｎｇ」など記憶を助ける文字シーケンスは、隣接したキーにある。従来技術では、上述したように、最適化は、一般に、局所的で欲張りな検索である。局所最適化は、常に全体的に最適であるとは限らない局所最小を見つけるだけである。
【００５１】
コスト関数
キーの配列を最適化するコスト関数は、次のように表すことができる。
【００５２】
【数５】
0004705725.tif 000004
式中、ｄnijは、ｎ乗した、たとえば一対のキーなど、キーボード上のサブセットのキー間の物理的な距離であり、ｆijは２つまたは３つの文字が二重字または三重字である確率、すなわちサブセットのキーに割り当てられた文字が、トレーニングコーパスにおいて、互いに続く相対頻度である。実際の適用において、キーのサブセットのサイズＧは、２から４の範囲にある。
【００５３】
ｎ＝１である場合、コスト関数の第１項は、文字をタイピングしている間に、該キーボードを用いて、ポインタがそのコーパスから移行するであろうと予期される総距離を評価する。ｎ＞１である場合、最適化は、隣接していないキー間の長いジャンプの予期される長さを低減するようバイアスされる。０＜ｎ＜１である場合、最適化は、頻繁に発生する文字の組み合わせが連続した隣接キーにある確率を増大するようバイアスされる。
【００５４】
第２項のＤは、重みｃで、ユーザに対して重要な他の事項を考慮に入れることができる。好ましい実施の形態において、Ｄ＝−ｄikｆijkであり、かつｆijkは、トレーニングコーパスにおける連続した文字が隣接キーのクラスタに配列される三重字の確率である。
【００５５】
Ｄ＝ｄikｆijkである場合、配列は、直線または略線形に、文字のタイプについて最大化される。この項は、三重字の最初の文字と最後の文字間の距離を最大化する。もちろん、この距離は、中間のキーが外側にあるキーの間に線形的にある場合に最大になり、ポインタが移行しなければならない距離全体を短縮する。
【００５６】
また、部分的にＱＷＥＲＴＹまたはアルファベット順のキーボードを模倣した配列が見られるよう最適化をバイアスする項を追加することも可能である。
【００５７】
アニーリング
この発明によれば、可能な約１０27個すべての配列について、しらみ潰しの検索を行うといった不可能なタスクを行わずに、全体的に最小値に非常に近いコスト関数を有するキーボード配列を見つけることが可能である。この発明は、全体的な最適値に非常に近い解を生成するアニーリングプロセスによってコスト関数Ｃを最小化する。アニーリングを実行する期間を長くするほど、解が実際に全体的に最適である確率が高くなる。
【００５８】
アニーリングプロセス例としては、シミュレーションされたアニーリングおよび決定的アニーリング二次割り当てが含まれる。
【００５９】
置換検索
置換検索では、キーボード配列は、たとえば、キーのサブセットを「交換」することで、わずかに変更される。置換された配列は、コストを低減する場合には保持される。置換は、ランダムでありうる。コストが増大する場合、置換は、指数的に下がる正の温度Ｔについて、ｅ-△C/Tの確率で保持される。温度が低下が遅いほど、最終解が全体的に最適である確率が高くなる。このプロセスは、アニーリングと呼ばれる。
【００６０】
二次割り当て
二次割り当てプロセスでは、この発明は、各文字が各キーに割り当てられる確率の二乗割り当てマトリクスを維持する。マトリクスは、コストを低減するために繰り返し再推定されてから、各行、各列の成分和が1である、二重確率行列の多様体に再投影される。これを決定的なアニーリングアルゴリズムにするために、項−（Ｔ−ｋ）Ｈ（式中、Ｔはここでも温度であり、ｋは正の定数であり、Ｈは割り当てマトリクスのエントロピである）がコスト関数に追加される。
【００６１】
最初、温度は高温に保持され、アニーリングプロセスは可能な解の空間の大規模構造を探索させるのに実施される。次に、温度は下げられ、この間にプロセスが徐々に解空間の最も見込みのある領域に入る。温度が０近くになるにつれ、割り当てマトリクスがゼロエントロピに強いられ、このポイントにおいて、あらゆる文字に特有のキーが割り当てられている。このプロセスはまた、全体的な準最適でもある。
【００６２】
図示される特定のキーボード１００において、スペース文字は最適化に含まれず、その代わりに、ユーザは、六角形パターン１１１外の部分１１０のどこでもポインティングすることで、スペースをタイプする。他の実施の形態では、スペース文字は最適化に含まれてもよく、キーの１つに割り当てられてもよい。この発明の他の実施の形態では、部分１１０の縁部付近に追加のキーを含みうる。これらのオプション的なキーとしては、数字キーボードや大文字キーボードにシフトするモードキー、句読点キー、「ｒｅ−」および「−ｅｄ」など、共通の接頭辞および接尾辞を有するキー、またはキーボードにより操作されるデバイスに特別な機能を有するキーが含まれる。これらのキーの任意のものまたはすべては、最適化に含まれてもよく、かつキーに割り当てられてもよい。
【００６３】
キー予測
この発明のキーボードの別のキー革新は、ユーザが次に選択する文字を予測するために可変量コンテンツを使用し、ユーザの入力タスクのコストを低減するために、この予測を使用することである。換言すれば、これは、所与の特定の文字シーケンスにおいて、どの文字が次の文字になる可能性が最も高いかの予測についての問題である。
【００６４】
この発明によれば、予測関数は、最大限に具体的であり、かつ正しい可能性が高い予測を行うために情報を提供するものとして、ユーザのタイピング履歴までさかのぼって見る。
【００６５】
図２および図３に示すように、可変記憶長マルコフモデル（ＶＬＭＭ）２００または決定ツリー３００をユーザがすでに何をタイプしたかに応じて、次のキーを予測するために使用することができる。モデルは、キーボードに関連するメモリ、たとえば、ハンドヘルド式コンピュータのメモリに格納することができる。この発明では、特定の言語、たとえば英語または日本語でのトレーニングコーパスからモデルを推定する。トレーニングコーパスにおいて、文字は、たとえば文章などのシーケンス、および語句、単語などのサブシーケンスとして配列される。
【００６６】
予測されたキーは、ユーザのガイドを助けるために強調される。固定サイズのコンテキストウィンドウを使用する、従来技術のキー予測アルゴリズムとは異なり、この発明では、タイピング履歴に応じてサイズが動的に変化するコンテキストウィンドウを使用する。なお、この発明は、関連するトレーニングコーパスを有する記号のいずれの有限セット、たとえば、数式または化学式、生物式などの記号の入力および予測にも使用できることに留意されたい。
【００６７】
可変記憶長マルコフモデル
ＶＬＭＭ２００において、タイプされる次の文字は、本明細書では可変コンテキストウィンドウと呼ぶ、過去の文字の動的長ウィンドウ（dynamic length window）から予測される。しかし、固定長コンテキストウィンドウを使用するｎグラム（n-grams）とは異なり、ＶＬＭＭ２００は、コンテキストウィンドウのサイズを動的に最適化する。
【００６８】
たとえば、英語では、文字「ｑ」の後にはほとんど常に文字「ｕ」が続く。したがって、このように、文字が「ｑ」である場合、予測を行うために必要なのは、コンテキストの１文字だけである。換言すれば、先行するコンテキストウィンドウのサイズは、動的に１に設定される。後続する文字が「ｕ」以外である確率は、かなり低いため、この情報をモデルに保持するための格納および処理コストに値するものではない。したがって、かかる情報は「除外」される。
【００６９】
しかし、ごく最近にタイプされた文字がスペースである場合、予測プロセスは、有用な予測を行うために、先行する単語を見なければならず、コンテキストウィンドウのサイズは、動的にはるかに大きなものに設定される。ＶＬＭＭは、すべての有用なコンテキストおよび関連する確率をツリーに格納する。ＶＬＭＭは、ｎグラムよりもはるかに予測的かつ信頼的であり、格納に必要な空間はより少ない。
【００７０】
ＶＬＭＭ２００において、ツリーの各ノード２１０は、文字２１１と関連する確率２１２を格納する。予測の確率を決定するために、仮定された文字１２３がコンテキストストリング１２１に添付され、結果得られるストリングの確率が決定される。すべての可能な仮定文字の確率が計算され、最も高くランクされた３つの文字が、対応するキーを強調させることで予測として示唆される。
【００７１】
ＶＬＭＭの構築
ＶＬＭＭ２００は、以下のように構築することができる。確率１．０は、デフォルトの「ヌル：null」文字または記号を有するルートノード２０１に割り当てられる。モデル２０２の次の第１レイヤは、トレーニングコーパスにおける各文字、たとえば文字ａからｚなど毎に１つのノードと、その文字が発生する関連のある確率とを有する。第１レイヤのノードは、ルートノードに接続される。
【００７２】
トレーニングコーパスは、推定されたモデルに従って再度検査され、ノードの別のレイヤ２０３が追加される。次のレイヤにおける各ノードは、先行文字が文字ａからｚなどのうちの１つである確率を記録する。次のレイヤもまた、先行する第１レイヤに接続され、以下同様である。ノードは、トレーニングコーパスにおけるまれに発生するサブストリングを表す場合、たとえば、確率が所定の閾値未満である場合に除外される。冗長予測情報を伝えるノードも除外することができる。成長および除外は、新しいノードが除外を免れるまで繰り返される。この基本的なプロセスへの他の各種改善が可能である。たとえば、ツリーの深さを制限することができる。
【００７３】
入力ストリングが完了する確率である、次の文字を予測するために、ストリングの最後にタイプされた文字にマッチする、ツリー２００の第１レイヤ２０２におけるノードを見つけてから、そのノード下で、ストリングの最後に続く文字にマッチするサブノードを見つけ、シーケンスの長さについて以下同様である。文字にマッチするツリーにおいて最も深いノードに関連する確率Ｐをとる。それは、最も正確である可能性が高い予測を与える。
【００７４】
実施に応じて、ノードは、図示のようにＰとマークしてもよく、またはＰは、ツリーのルートノード２０１から最も深いノードへの経路上のすべての確率の積をとることで、計算してもよい。
【００７５】
ストリングにおいてマッチしていない文字が残りＮ個と、Ｓ個の可能な文字がある場合、確率ＰをＳ(N―1)で除算し、その結果を（Ｐ−Ｄ）／（Ｓ−Ｅ）で乗算することができる。但し、Ｄは、最後にマッチしたノードのサブノードの確率の和であり、Ｅは、かかるサブノードの数である。
【００７６】
長さが異なる２つのストリングの確率を比較するために、まず、残余非マッチ文字手順をより短いストリングに適用して、その確率を他のストリングと同じ長さであるものとして、再計算しなければならない。
【００７７】
決定ツリー
決定ツリーは、ツリー３００の各ノードにおいて決定ポイントを有するロジックについての分岐表現および各ノードでとられるアクションを用いるロジック特定方法である。基本的な決定プロセスは、以下のように記述することができる。
【００７８】
各ノード３１０は、予測の順序付きリストを有する。コンテキスト１２３、すなわちそれまでタイプされた文字のリストをとり、そのルートからツリー３００を横切って、ごく最近タイプされた文字とマッチするノードを捜してから、次に最も最近にタイプされた文字とマッチするサブノードを見つけ、以下同様である。決定ツリー３００において、単にマッチする最後のノードにおける予測のリストを取るだけである。上記ＶＬＭＭについて、検索の長さは、可変であり、タイプされたコンテキストの力学に完全に依存する。
【００７９】
ＶＬＭＭ２００は、決定ツリー３００に変換することができる。決定ツリーは、ＶＬＭＭよりもコンパクトではないが、浮動小数点確率数に対する計算が必要とされないため、予測を行うために必要な処理はより少ない。代わりに、単純な文字の比較が行われる。
【００８０】
決定ツリー３００は、以下のようにトレーニングコーパスから構築することができる。ツリー３００の各ノード３１０は、予測の順序付きセットを格納する。たとえば、ルートノード３０１は、英語において最も頻繁に発生する３つの文字を格納する。次のレイヤ３０２におけるノードは、先行レイヤにおける文字がこれらの文字の１つによって予測される予測の順序付きセットを格納する。すぐ上の祖先と実質的に異ならない予測を行うノードは、除外される。すなわち、ノードは、コンテキストに文字を追加しても、タイプされる次の文字についての予想を変更しない場合に、除外される。たとえば、英語において、コンテキスト「ｏｎｋ」および「ｍｏｎｋ」は、本質的に予測と同等である一方、コンテキスト「ｉｓ ａ 」および「ｖｉｓ ａ 」はかなり異なる。ここで、下線「 」は、スペースを表す。
【００８１】
モデルは、各予測について確率を作表して、クロスエントロピ（Ron他による「The Power of Amnesia: Learning Variable Memory Markov Models」（Machine Learning, 1997）参照）を介して予測のグループ間の差を評価することで、正確にすることができる。モデル構築は、高い確率を有するが、予測差はわずかしかないノードの除外を遅らせることで、より強力に行うことができる。マルコフモデルと同様に、新しいノードが除外を免れない場合に構築を終了する。
【００８２】
予測選択
「ソフト」であれ「ハード」であれ、キーボード１００は、予測の選択を助けるために、追加のキーを備えることができる。第１のボタンは、第１の予測を選択し、第２のボタンは第２の予測を選択し、以下同様である。別のボタンは、予測を拒絶するために確保することができ、この場合、次の最も高度にレート付けされた予測のセットを提示することができる。このような予測はすべて、可変記憶長マルコフモデル２００からまたは決定ツリー３００を用いる場合には、マッチするノードの経路に沿ってバックアップし、ノードの予測をその経路に沿ってとることで、決定することができる。
【００８３】
単語完了
キーボードが単語の完了も示唆する場合には、モデルには、頻繁に発生する単語、たとえば５つ以上の文字を有する単語のリストが備えられる。こういった頻度が高い単語は、モデルの適切なノードの下に格納される。１つよりも多くの単語が特定のノードに格納される場合、そのノードにおける単語は、たとえば、the Fourth International Conference on Spoken Language Processing, Vol. 1 の議事録である「Minimizing Search Errors Due to Delayed Bigrams in Real-Time Speech Recognition System」においてWoszczyna他によって記載されたユニグラム（unigram)統計学を用いて、共通の用法でどの程度の頻繁でその単語が現れるかに従って順序付けられる。
【００８４】
ユーザが単語をタイプすると、該単語が同様にモデルに入力される。ユーザが既知の単語をタイプするか、または完了を許容すると、その単語が、そのノードにおける単語の順序付きリストの最上部に移動される。その結果、最近用いられた単語が、まず完了として提供される。完了はまた、格納することができ、また、半ソートされたリストとして別個に検索することができる。完了はまた、タイムスタンプして、ある期間使用されない場合には削除することができる。
【００８５】
この発明は、好ましい実施の形態の例として説明したが、他の各種適合および変更をこの発明の精神および範囲内で行いうることを理解されたい。したがって、添付される特許請求の範囲の目的は、かかる変形および変更はすべて、この発明の真の精神および範囲ないにあるものとして、網羅することである。
【図面の簡単な説明】
【図１】  この発明によるキーボードの配列である。
【図２】  この発明が用いる可変記憶長マルコフモデルのグラフである。
【図３】  この発明が用いる決定ツリーのグラフである。
【符号の説明】
１００  キーボード、１１１，１１２，１１３  キー、１２０  入力された文字を表示する部分、１２１  文字、１２２  カーソル、１２３  特定記号シーケンスが完了する可能性が最も高い部分、１３０  オプション的な情報を表示することができる部分、１３１  タイピング速度、１３２  入力クリア、１３３  ボタン、２００  可変記憶長マルコフモデル（ＶＬＭＮ）、２０１  ルートノード、２０２  第１レイヤ、２１１  文字、２１２  確率、３００  決定ツリー。
【図１】
0004705725.tif 000011
【図２】
0004705725.tif 000012
【図３】
0004705725.tif 000013