JP4712201B2 - キーボードにおけるキーストロークを予測する方法および予測型キーボード - Google Patents
キーボードにおけるキーストロークを予測する方法および予測型キーボード Download PDFInfo
- Publication number
- JP4712201B2 JP4712201B2 JP2001037385A JP2001037385A JP4712201B2 JP 4712201 B2 JP4712201 B2 JP 4712201B2 JP 2001037385 A JP2001037385 A JP 2001037385A JP 2001037385 A JP2001037385 A JP 2001037385A JP 4712201 B2 JP4712201 B2 JP 4712201B2
- Authority
- JP
- Japan
- Prior art keywords
- symbol
- model
- node
- keyboard
- probability
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
- G06F3/0233—Character input methods
- G06F3/0237—Character input methods using prediction or retrieval techniques
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Input From Keyboards Or The Like (AREA)
- User Interface Of Digital Computer (AREA)
Description
【発明の属する技術分野】
この発明は、概してキーボードに関し、特にシングルポインタキーボードにおけるストロークの予測に関する。
【0002】
【従来の技術】
従来のキーボードでは、書かれた言語における各種文字または記号を表すキーは、通常、両手でのタイプが高速であり、かつ効率的であるような行に配列される。しかし、従来のキーボードでは、完全に熟練するまでに、多くの訓練および実践が必要である。訓練していないユーザは、長たらしくて飽き飽きする程、キーを捜し、そしてキーをつつくことによってタイプする。最も一般的な「QWERTY」配列に配列されたキーボードでは、訓練されていないユーザは、外見上はランダムに配分されたキーに直面し、キーボードを操作することができる速度は恐ろしく遅くなる。実際には、「QWERTY」配列は、ランダムではなく、両手でのタイピング速度を制限するよう設計されたものである。
【0003】
訓練していないユーザがキーボードを操作することができる速度は、ユーザアクションを3つの段階、すなわち走査、決定、および物理的選択に分割する単純なユーザインタラクションモデルで有用に研究することが可能である。アクションを完了するまでの時間は、各段階で発生する遅延の合計であり、たとえば、
キーをタイプする総時間すなわち総コスト=Tv+Tc+Tm
であり、式中、Tvは視覚的負荷であり、Tcは認知負荷であり、Tmは運動負荷である。
【0004】
視覚的負荷
視覚的負荷の重要な部分は、キーを捜す間に行わなければならない目の運動である。目における光受容体の組織は、大部分の受容体が視野の約1度をなす光刺激を受容する窓である、中心窩と呼ばれる網膜の中心における小さな領域にあるように配置されている。同様に、脳の視覚知能の大部分は、この小さなエリアに集中している。形状認識およびリーディングなどの視覚タスクでは、問題となる対象物の像が中心窩に、または中心窩のごく付近に投影されるように目を向ける必要がある。
【0005】
したがって、キーを捜している間、多くのランダムに分配された各キーの像をこの高解像度エリアに投影するように、目を繰り返し再配向する必要がある。その後にのみ、詳細な知覚分析を開始することができる。目を向ける方法は、関心のあるものの像が眼窩にあるように、眼球を動かす動眼反応である、サッカード眼球運動として知られている。問題に輪をかけるように、目の動きが大きい場合、サッカード眼球運動は対象物を見失うことがあり、目の位置が調節される際にさらなる遅延が発生する。
【0006】
効率的なキーボードは、サッカード眼球運動を最小に抑えるべきである。理想的には、キーボードの最も頻繁に用いられる部分は、この部分が殆ど中心窩に含まれるように、視覚的にコンパクトであるべきである。同等に重要なこととして、必要な場合、サッカード眼球運動は小さくあるべきである。目の動きが少なく、かつキーボードが視覚的に安定するほど、ハンティングアンドペッキング(hunting and pecking:キーを探しそしてつつくという意味)をより高速に進めることができる。明らかに、略1.5フィートの長さと、5:1と同程度のアスペクト比を有する大部分の「標準型」キーボードは、訓練されていないハントアンドペックユーザ(hunt and peck users)に不向きである。
【0007】
認知負荷
タイピングのコンテキストにおいて、認知負荷とは、キーを決定し、次に見るすなわちポインティングする場所を計画する間に行われる作業を指す。決定および計画は、記憶限定プロセスである。選択肢が多くある場合の決定は長くかかる。これは、選択肢がより多くあるからだけではなく、短期記憶は非常に限られているためである。選択肢が多すぎる場合、たとえば、キーボードを再度見ることで、いくつかの選択肢を短期記憶に入れたり出したりしなければならない。通常、2つまたは3つの選択肢からは素早く選択することができるが、5つ以上の選択肢に直面すると、かなり遅くなる。
【0008】
キーボードが、アルファベット順など有意にレイアウトされる場合、思考が次の適切なキーを見つけるための検索戦略を計画する必要がないため、認知負荷はいくらか低減される。ユーザが各文字の場所について完全にはわかっていない場合、いくらかの検索はやむを得ない。この場合、認知負荷は、たとえば、「qu」、「th」、「ing]など記憶を助ける順の文字を隣接したキーに配置することで、キーの配列に馴染みのあるパターンを埋め込むことによって低減することができる。「q」を見た後で、ユーザは、後続する「u」を見つける場所がどのへんにあるかについて強い予想を抱く。馴染みのあるパターンまたは関係は、個々の構成要素よりも少ない作動記憶負荷を課すため、馴染みのあるパターンをユーザに提供することもまた、認知負荷を低減させる。
【0009】
運動負荷
良好なキーボードは、多くのポインタ行程、または高度に精密な動きを必要とすべきではない。たとえば、隣接したキーへの移動など、小さな増分的動きを行うのは容易であるが、遠くにあるキーに正確に到達するのは困難である。運動負荷を低減する1つの方法は、対象を可能な限り大きくかつ丸くすることである。これは、三角格子における六角形タイルとしてキーをレイアウトすることを示唆する。
【0010】
【発明が解決しようとする課題】
米国特許第4,579,470号は、六角形のようなパターンにクラスタ化したキーを有するキーボードを教示する。クラスタ化は、両手打ちのユーザの指の移動を最小にするよう試みられる。該キーボードは、ハントアンドペックに対して特別な特性を持たない。
【0011】
米国特許第5,128,672号は、予測型「ソフトキーボード」を記載している。表示される12個のキーのセットは、特定の言語において用いられる特定の文字組み合わせの頻度に依存する。たとえば、1つの文字セットは母音の後に表示され、別の文字セットは定数の後に表示される。目的は、最小数すなわち12個のキーを有するキーボードを提供することである。タッチセンシティブなハンドヘルドでの実施が示唆される。言語特性の統計学的分析は、所与の瞬間において表示する文字セットについて予測を行うために概説される。
【0012】
米国特許第5,487,616号では、配列は、キーへの文字の割り当てを変更し、該変更がより低い予想行程を有する場合にはこの変更を保持する欲張り検索手順により設計される。定義により、欲張り検索手順は、通常、良くも悪くもない局所最適解を見つけるだけである。
【0013】
米国特許第5,625,354号は、個々のキー間の距離を最小にするために、キーを「蜂の巣」タイプのパターンに配列した六角形の「ハントアンドペック」キーボードを記載している。より頻繁に発生する文字の対は、キーボードの中心付近にクラスタ化される。クラスタ化は、特別な頻度の文字対である二重字に基づく。キーの選択には、スタイラス(stylus)が示唆される。しかし、特定の言語についてテキストを入力するために、スタイラスを動かさなければならない総距離を最小限に抑えるという試みはなされていない。
【0014】
米国特許第5,805,157号は、六角形キーを有する「ソフトキーボード」を記載している。六角形形状は、ペッキング(pecking)中に間隔が密接であるキーの区別を容易にするように選択され、キーの間隔をより密にすることができる。ポインティングにはマウスが示唆され、カーソルはキーに対して「スナップ」する。特定の言語についてキーボードを最適化するという試みはなされていない。
【0015】
米国特許第6,011,554号は、12個のキーを有する紛らわしくないキーボードを記載する。複数の文字が各キーに割り当てられ、キーストロークを曖昧にする。曖昧なシーケンスは、予め格納されたシーケンスライブラリを用いることで、解決される。
【0016】
【課題を解決するための手段】
この発明に係るキーボードにおけるキーストロークを予測する方法は、記号シーケンスを含むトレーニングコーパスからモデルを構築するステップであって、該モデルは、記号のセットを予測し、該セットの各記号は、特定の記号シーケンスの可変長サブシーケンスを用いて特定の記号シーケンスを続け、シーケンスの特定の長さは、前記予測が正しい確率を最大にするよう選択される、ステップと、前記記号のセットのうちの選択された記号に対応する、前記キーボード上のキーを強調するステップとを含むものである。
【0017】
また、前記モデルは、可変記憶長マルコフモデルである。
【0018】
また、前記マルコフモデルの各ノードは、記号および関連する確率を格納するものである。
【0019】
また、前記構築するステップは、確率1.0を前記モデルの、デフォルトである「ヌル」記号を有するルートノードに割り当てるステップと、前記ルートノードに接続されたノードの第1レイヤを構築するステップであって、前記第1レイヤの各ノードは、前記トレーニングコーパスの一意の記号および該記号が前記トレーニングコーパスにおいて現れる頻度の確率を表す、ステップと、前記モデルに従って前記トレーニングコーパスを再審査して、次のレイヤを構築するステップであって、前記次のレイヤにおける各ノードは、前記第1レイヤにおける接続されたノードに先行する特定の記号と、該特定の記号が前記接続されたノードに先行する頻度の確率を表す、ステップと、終了条件を満たすまで、前記トレーニングコーパスの前記再検査と、前記次のレイヤの構築を繰り返すステップとをさらに含むものである。
【0020】
また、前記特定のノードが、所定の閾値未満の確率を有する場合、前記モデルにおける前記特定のノードを除外するステップをさらに含むものである。
【0021】
また、前記モデルは決定ツリーである。
【0022】
また、前記モデルは決定ツリーであり、冗長ノードは除外されるものである。
【0023】
また、前記決定ツリーの各ノードは、現在の記号と、予測された記号の順序付きセットとを格納するものである。
【0024】
また、前記決定ツリーは、可変記憶長マルコフモデルから導き出されるものである。
【0025】
さらに、この発明に係る予測型キーボードは、記号シーケンスを含むトレーニングコーパスから構築されたモデルを格納するメモリであって、該モデルは記号のセットを予測し、該セットの各記号は、特定の記号シーケンスの可変長サブシーケンスを用いて特定の記号シーケンスを続け、特定の長さは、前記予測が正しい確率を最大にするよう選択されるメモリと、複数のキーと、前記記号のセットのうちの選択された記号に対応する、前記キーボード上のキーを強調する手段とを備えたものである。
【0026】
【発明の実施の形態】
この発明において、キーは、以下のようにキーボード上に配列される。入力記号シーケンスのトレーニングコーパス、たとえば略式で書かれた英語テキストが提供される。コーパスにおける特有の各記号は、関連するキーをキーボード上に有する。トレーニングコーパスの記号入力についてのコストCを評価するコスト関数は、全体的に最小化される。次に、キーが、全体的に最小化されたコスト関数に従って、キーボード上に配列される。また、ポインタが移動しなければならない距離を低減するために、キーを六角形パターンに配列することもできる。
【0027】
キーボード上でのキーストロークは、トレーニングコーパスからモデルを構築することで予測される。トレーニングコーパスは、記号シーケンスを含む。モデルは、記号のセットを予測し、特定の記号シーケンスの可変長サブシーケンスを用いて、セットの各記号が特定の記号シーケンスを続ける。予測が正しい確率を最大にするために、特定の長さが選択される。キーボード上のキーは、強調される。強調された記号は、記号セットにおいて選択された記号に対応する。
【0028】
図1は、この発明に従って配列されたハントアンドペックキーボード100を示す。この発明によるキーボード100は、ユーザ、特にシングルポインタ、たとえば指、スタイラス、目での注視、またはマウスなどを有するユーザの視覚的負荷、認知負荷、および運動負荷を最小にする。
【0029】
この発明の配列は、3つの負荷すべて、すなわちキーボードを使用するコストを、主にポインタが、たとえば英語の入力の特定コーパスについて移行する必要がある総距離を最小限にすることで、最小にするよう最適化される。キーボードはまた、可動ボタンとともに構築することができる。好ましい実施の形態において、キー111は、タッチセンシティブ表面115上に六角形パターンに配列される。六角形パターンは、キーボードの固定エリアに配列された特定数のキーについて、各キーのサイズを最大にする。
【0030】
この発明のキーボード100は、キー111が表示される部分110を含む。いくつかのキー112、113は、強調される。強調されたキーは、「予測」された次のキーであり、これについてはより詳細に後述する。部分120は、入力された文字121を表示する。カーソル122は、現在の入力位置を表す。特定記号シーケンスが完了する可能性が最も高い部分123も表示することができる。
【0031】
部分130は、タイピング速度131、入力クリア132、または他のキーボード構成を選択するボタン133など、オプション的な情報を表示することができる。代替の実施の形態では、この発明のキーボード100は、物理的なキーから構築してもよく、また、予測されたキー112、113は、該キーを照明することで表してもよい。
【0032】
キーボードは、セル式電話、パームトップデバイス、ウェアラブルコンピュータ、ならびに身障者アクセスデバイスなど、非常に小型のディスプレイに適している。
【0033】
キーボードは、以下の特徴を含む。キーの間隔は密接である。キーボードの配列は、入力の特定コーパスおよびサッカード眼球運動についてシングルポインタが移行する距離の最小化を含む、総作業負荷を最小化するよう最適化される。たとえば、コーパスが英語で書かれた情報から引き出される場合、ポインタはタイプされた各文字毎に平均で1.6キー幅を移行するだけである。従来のQWERTYキーボードの場合、平均距離は4キー幅を越える。このように、目のサッカード眼球運動が最小化されることから、捜す時間が低減され、かつポインタ(スタイラス、指、または目による注視)が平均でより少ない距離移動することから、タイプする時間が低減される。
【0034】
この発明のキーボードは、どのキーが次にタイプされる可能性が最も高いかを予想し、示唆する。予測されたキー112、113は、ユーザの注意を引きつけるために強調される。したがって、ハントアンドペックが加速される。所与の瞬間時間において強調されるキーの数は少なく、たとえば、3個以下である。このため、ユーザは選択を行う選択肢の数が少なく、認知負荷が低減される。英語で書かれる場合、この発明による予測は、平均でタイプ時の76%正しい。
【0035】
入力の特定コーパスについて、キーボード上のキーの配列は、配列の変更を追跡または解釈する際に関与するオーバヘッド知覚負荷または認知負荷がないように、固定されたままである。しかし、配列は、ユーザおよび予期される入力の種類に応じて変更することができる。たとえば、コーパスが日本語(カタカナ、平仮名、漢字、またはローマ字)である場合、配列および文字記号は、それに応じて変更することができる。
【0036】
キーボード配列
この発明において、キーボード100の最適な配列は、コスト関数Cを全体的に最小化することで、決定される。コスト関数Cは、視覚負荷、認知負荷、および運動負荷を決定する多くの作業負荷要因を表す。第1の要因は、特定のトレーニングコーパスにおける入力についてポインタが移動する必要がある総距離であり、第2の要因は、重み付き作業負荷でありうる。
【0037】
負荷コスト関数の全体的最小化の利点
このコスト関数を全体的に最小化することは、さらなる有利な効果を有する。次にタイプされる文字が隣接したキーである確率が最大化される。全体的な最小化は、サッカード眼球運動も最小化する。最も頻繁にタイプされる文字は、キーボードの中心付近にあり、「ing」など記憶を助ける文字シーケンスは、隣接したキーにある。従来技術では、上述したように、最適化は、一般に、局所的で欲張りな検索である。局所最適化は、常に全体的に最適であるとは限らない局所最小を見つけるだけである。
【0038】
コスト関数
キーの配列を最適化するコスト関数は、次のように表すことができる。
【0039】
【数1】
式中、dn ijは、n乗した、たとえば一対のキーなど、キーボード上のサブセットのキー間の物理的な距離であり、fijは2つまたは3つの文字が二重字または三重字である確率、すなわちサブセットのキーに割り当てられた文字が、トレーニングコーパスにおいて、互いに続く相対頻度である。実際の適用において、キーのサブセットのサイズGは、2から4の範囲にある。
【0040】
n=1である場合、コスト関数の第1項は、文字をタイピングしている間に、該キーボードを用いて、ポインタがそのコーパスから移行するであろうと予期される総距離を評価する。n>1である場合、最適化は、隣接していないキー間の長いジャンプの予期される長さを低減するようバイアスされる。0<n<1である場合、最適化は、頻繁に発生する文字の組み合わせが連続した隣接キーにある確率を増大するようバイアスされる。
【0041】
第2項のDは、重みcで、ユーザに対して重要な他の事項を考慮に入れることができる。好ましい実施の形態において、D=−dikfijkであり、かつfijkは、トレーニングコーパスにおける連続した文字が隣接キーのクラスタに配列される三重字の確率である。
【0042】
D=dikfijkである場合、配列は、直線または略線形に、文字のタイプについて最大化される。この項は、三重字の最初の文字と最後の文字間の距離を最大化する。もちろん、この距離は、中間のキーが外側にあるキーの間に線形的にある場合に最大になり、ポインタが移行しなければならない距離全体を短縮する。
【0043】
また、部分的にQWERTYまたはアルファベット順のキーボードを模倣した配列が見られるよう最適化をバイアスする項を追加することも可能である。
【0044】
アニーリング
この発明によれば、可能な約1027個すべての配列について、しらみ潰しの検索を行うといった不可能なタスクを行わずに、全体的に最小値に非常に近いコスト関数を有するキーボード配列を見つけることが可能である。この発明は、全体的な最適値に非常に近い解を生成するアニーリングプロセスによってコスト関数Cを最小化する。アニーリングを実行する期間を長くするほど、解が実際に全体的に最適である確率が高くなる。
【0045】
アニーリングプロセス例としては、シミュレーションされたアニーリングおよび決定的アニーリング二次割り当てが含まれる。
【0046】
置換検索
置換検索では、キーボード配列は、たとえば、キーのサブセットを「交換」することで、わずかに変更される。置換された配列は、コストを低減する場合には保持される。置換は、ランダムでありうる。コストが増大する場合、置換は、指数的に下がる正の温度Tについて、e- △ C/Tの確率で保持される。温度が低下が遅いほど、最終解が全体的に最適である確率が高くなる。このプロセスは、アニーリングと呼ばれる。
【0047】
二次割り当て
二次割り当てプロセスでは、この発明は、各文字が各キーに割り当てられる確率の二乗割り当てマトリクスを維持する。マトリクスは、コストを低減するために繰り返し再推定されてから、各行、各列の成分和が1である、二重確率行列の多様体に再投影される。これを決定的なアニーリングアルゴリズムにするために、項−(T−k)H(式中、Tはここでも温度であり、kは正の定数であり、Hは割り当てマトリクスのエントロピである)がコスト関数に追加される。
【0048】
最初、温度は高温に保持され、アニーリングプロセスは可能な解の空間の大規模構造を探索させるのに実施される。次に、温度は下げられ、この間にプロセスが徐々に解空間の最も見込みのある領域に入る。温度が0近くになるにつれ、割り当てマトリクスがゼロエントロピに強いられ、このポイントにおいて、あらゆる文字に特有のキーが割り当てられている。このプロセスはまた、全体的な準最適でもある。
【0049】
図示される特定のキーボード100において、スペース文字は最適化に含まれず、その代わりに、ユーザは、六角形パターン111外の部分110のどこでもポインティングすることで、スペースをタイプする。他の実施の形態では、スペース文字は最適化に含まれてもよく、キーの1つに割り当てられてもよい。この発明の他の実施の形態では、部分110の縁部付近に追加のキーを含みうる。これらのオプション的なキーとしては、数字キーボードや大文字キーボードにシフトするモードキー、句読点キー、「re−」および「−ed」など、共通の接頭辞および接尾辞を有するキー、またはキーボードにより操作されるデバイスに特別な機能を有するキーが含まれる。これらのキーの任意のものまたはすべては、最適化に含まれてもよく、かつキーに割り当てられてもよい。
【0050】
キー予測
この発明のキーボードの別のキー革新は、ユーザが次に選択する文字を予測するために可変量コンテンツを使用し、ユーザの入力タスクのコストを低減するために、この予測を使用することである。換言すれば、これは、所与の特定の文字シーケンスにおいて、どの文字が次の文字になる可能性が最も高いかの予測についての問題である。
【0051】
この発明によれば、予測関数は、最大限に具体的であり、かつ正しい可能性が高い予測を行うために情報を提供するものとして、ユーザのタイピング履歴までさかのぼって見る。
【0052】
図2および図3に示すように、可変記憶長マルコフモデル(VLMM)200または決定ツリー300をユーザがすでに何をタイプしたかに応じて、次のキーを予測するために使用することができる。モデルは、キーボードに関連するメモリ、たとえば、ハンドヘルド式コンピュータのメモリに格納することができる。この発明では、特定の言語、たとえば英語または日本語でのトレーニングコーパスからモデルを推定する。トレーニングコーパスにおいて、文字は、たとえば文章などのシーケンス、および語句、単語などのサブシーケンスとして配列される。
【0053】
予測されたキーは、ユーザのガイドを助けるために強調される。固定サイズのコンテキストウィンドウを使用する、従来技術のキー予測アルゴリズムとは異なり、この発明では、タイピング履歴に応じてサイズが動的に変化するコンテキストウィンドウを使用する。なお、この発明は、関連するトレーニングコーパスを有する記号のいずれの有限セット、たとえば、数式または化学式、生物式などの記号の入力および予測にも使用できることに留意されたい。
【0054】
可変記憶長マルコフモデル
VLMM200において、タイプされる次の文字は、本明細書では可変コンテキストウィンドウと呼ぶ、過去の文字の動的長ウィンドウ(dynamic length window)から予測される。しかし、固定長コンテキストウィンドウを使用するnグラム(n-grams)とは異なり、VLMM200は、コンテキストウィンドウのサイズを動的に最適化する。
【0055】
たとえば、英語では、文字「q」の後にはほとんど常に文字「u」が続く。したがって、このように、文字が「q」である場合、予測を行うために必要なのは、コンテキストの1文字だけである。換言すれば、先行するコンテキストウィンドウのサイズは、動的に1に設定される。後続する文字が「u」以外である確率は、かなり低いため、この情報をモデルに保持するための格納および処理コストに値するものではない。したがって、かかる情報は「除外」される。
【0056】
しかし、ごく最近にタイプされた文字がスペースである場合、予測プロセスは、有用な予測を行うために、先行する単語を見なければならず、コンテキストウィンドウのサイズは、動的にはるかに大きなものに設定される。VLMMは、すべての有用なコンテキストおよび関連する確率をツリーに格納する。VLMMは、nグラムよりもはるかに予測的かつ信頼的であり、格納に必要な空間はより少ない。
【0057】
VLMM200において、ツリーの各ノード210は、文字211と関連する確率212を格納する。予測の確率を決定するために、仮定された文字123がコンテキストストリング121に添付され、結果得られるストリングの確率が決定される。すべての可能な仮定文字の確率が計算され、最も高くランクされた3つの文字が、対応するキーを強調させることで予測として示唆される。
【0058】
VLMMの構築
VLMM200は、以下のように構築することができる。確率1.0は、デフォルトの「ヌル:null」文字または記号を有するルートノード201に割り当てられる。モデル202の次の第1レイヤは、トレーニングコーパスにおける各文字、たとえば文字aからzなど毎に1つのノードと、その文字が発生する関連のある確率とを有する。第1レイヤのノードは、ルートノードに接続される。
【0059】
トレーニングコーパスは、推定されたモデルに従って再度検査され、ノードの別のレイヤ203が追加される。次のレイヤにおける各ノードは、先行文字が文字aからzなどのうちの1つである確率を記録する。次のレイヤもまた、先行する第1レイヤに接続され、以下同様である。ノードは、トレーニングコーパスにおけるまれに発生するサブストリングを表す場合、たとえば、確率が所定の閾値未満である場合に除外される。冗長予測情報を伝えるノードも除外することができる。成長および除外は、新しいノードが除外を免れるまで繰り返される。この基本的なプロセスへの他の各種改善が可能である。たとえば、ツリーの深さを制限することができる。
【0060】
入力ストリングが完了する確率である、次の文字を予測するために、ストリングの最後にタイプされた文字にマッチする、ツリー200の第1レイヤ202におけるノードを見つけてから、そのノード下で、ストリングの最後に続く文字にマッチするサブノードを見つけ、シーケンスの長さについて以下同様である。文字にマッチするツリーにおいて最も深いノードに関連する確率Pをとる。それは、最も正確である可能性が高い予測を与える。
【0061】
実施に応じて、ノードは、図示のようにPとマークしてもよく、またはPは、ツリーのルートノード201から最も深いノードへの経路上のすべての確率の積をとることで、計算してもよい。
【0062】
ストリングにおいてマッチしていない文字が残りN個と、S個の可能な文字がある場合、確率PをS(N ― 1)で除算し、その結果を(P−D)/(S−E)で乗算することができる。但し、Dは、最後にマッチしたノードのサブノードの確率の和であり、Eは、かかるサブノードの数である。
【0063】
長さが異なる2つのストリングの確率を比較するために、まず、残余非マッチ文字手順をより短いストリングに適用して、その確率を他のストリングと同じ長さであるものとして、再計算しなければならない。
【0064】
決定ツリー
決定ツリーは、ツリー300の各ノードにおいて決定ポイントを有するロジックについての分岐表現および各ノードでとられるアクションを用いるロジック特定方法である。基本的な決定プロセスは、以下のように記述することができる。
【0065】
各ノード310は、予測の順序付きリストを有する。コンテキスト123、すなわちそれまでタイプされた文字のリストをとり、そのルートからツリー300を横切って、ごく最近タイプされた文字とマッチするノードを捜してから、次に最も最近にタイプされた文字とマッチするサブノードを見つけ、以下同様である。決定ツリー300において、単にマッチする最後のノードにおける予測のリストを取るだけである。上記VLMMについて、検索の長さは、可変であり、タイプされたコンテキストの力学に完全に依存する。
【0066】
VLMM200は、決定ツリー300に変換することができる。決定ツリーは、VLMMよりもコンパクトではないが、浮動小数点確率数に対する計算が必要とされないため、予測を行うために必要な処理はより少ない。代わりに、単純な文字の比較が行われる。
【0067】
決定ツリー300は、以下のようにトレーニングコーパスから構築することができる。ツリー300の各ノード310は、予測の順序付きセットを格納する。たとえば、ルートノード301は、英語において最も頻繁に発生する3つの文字を格納する。次のレイヤ302におけるノードは、先行レイヤにおける文字がこれらの文字の1つによって予測される予測の順序付きセットを格納する。すぐ上の祖先と実質的に異ならない予測を行うノードは、除外される。すなわち、ノードは、コンテキストに文字を追加しても、タイプされる次の文字についての予想を変更しない場合に、除外される。たとえば、英語において、コンテキスト「onk」および「monk」は、本質的に予測と同等である一方、コンテキスト「is a 」および「vis a 」はかなり異なる。ここで、下線「 」は、スペースを表す。
【0068】
モデルは、各予測について確率を作表して、クロスエントロピ(Ron他による「The Power of Amnesia: Learning Variable Memory Markov Models」(Machine Learning, 1997)参照)を介して予測のグループ間の差を評価することで、正確にすることができる。モデル構築は、高い確率を有するが、予測差はわずかしかないノードの除外を遅らせることで、より強力に行うことができる。マルコフモデルと同様に、新しいノードが除外を免れない場合に構築を終了する。
【0069】
予測選択
「ソフト」であれ「ハード」であれ、キーボード100は、予測の選択を助けるために、追加のキーを備えることができる。第1のボタンは、第1の予測を選択し、第2のボタンは第2の予測を選択し、以下同様である。別のボタンは、予測を拒絶するために確保することができ、この場合、次の最も高度にレート付けされた予測のセットを提示することができる。このような予測はすべて、可変記憶長マルコフモデル200からまたは決定ツリー300を用いる場合には、マッチするノードの経路に沿ってバックアップし、ノードの予測をその経路に沿ってとることで、決定することができる。
【0070】
単語完了
キーボードが単語の完了も示唆する場合には、モデルには、頻繁に発生する単語、たとえば5つ以上の文字を有する単語のリストが備えられる。こういった頻度が高い単語は、モデルの適切なノードの下に格納される。1つよりも多くの単語が特定のノードに格納される場合、そのノードにおける単語は、たとえば、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)統計学を用いて、共通の用法でどの程度の頻繁でその単語が現れるかに従って順序付けられる。
【0071】
ユーザが単語をタイプすると、該単語が同様にモデルに入力される。ユーザが既知の単語をタイプするか、または完了を許容すると、その単語が、そのノードにおける単語の順序付きリストの最上部に移動される。その結果、最近用いられた単語が、まず完了として提供される。完了はまた、格納することができ、また、半ソートされたリストとして別個に検索することができる。完了はまた、タイムスタンプして、ある期間使用されない場合には削除することができる。
【0072】
この発明は、好ましい実施の形態の例として説明したが、他の各種適合および変更をこの発明の精神および範囲内で行いうることを理解されたい。したがって、添付される特許請求の範囲の目的は、かかる変形および変更はすべて、この発明の真の精神および範囲ないにあるものとして、網羅することである。
【図面の簡単な説明】
【図1】 この発明によるキーボードの配列である。
【図2】 この発明が用いる可変記憶長マルコフモデルのグラフである。
【図3】 この発明が用いる決定ツリーのグラフである。
【符号の説明】
100 キーボード、111,112,113 キー、120 入力された文字を表示する部分、121 文字、122 カーソル、123 特定記号シーケンスが完了する可能性が最も高い部分、130 オプション的な情報を表示することができる部分、131 タイピング速度、132 入力クリア、133 ボタン、200 可変記憶長マルコフモデル(VLMN)、201 ルートノード、202 第1レイヤ、211 文字、212 確率、300 決定ツリー。
Claims (10)
- 記号シーケンスを含むトレーニングコーパスからモデルを構築するステップであって、該モデルは、記号のセットを予測し、該セットの各記号は、特定の記号シーケンスの、タイピング履歴に応じて長さが動的に変化する可変長サブシーケンスを用いて特定の記号シーケンスを続け、前記可変長サブシーケンスの特定の長さは、前記予測が正しい確率を最大にするよう選択される、ステップと、
前記記号のセットのうちの選択された記号に対応する、前記キーボード上のキーを強調するステップと、
を含む、キーボードにおけるキーストロークを予測する方法。 - 請求項1に記載の方法において、
前記モデルは、可変記憶長マルコフモデルである、方法。 - 請求項2に記載の方法において、
前記マルコフモデルの各ノードは、記号および関連する確率を格納する、方法。 - 請求項1に記載の方法において、
前記構築するステップは、
確率1.0を前記モデルの、デフォルトである「ヌル」記号を有するルートノードに割り当てるステップと、
前記ルートノードに接続されたノードの第1レイヤを構築するステップであって、前記第1レイヤの各ノードは、前記トレーニングコーパスの一意の記号および該記号が前記トレーニングコーパスにおいて現れる頻度の確率を表す、ステップと、
前記モデルに従って前記トレーニングコーパスを再審査して、次のレイヤを構築するステップであって、前記次のレイヤにおける各ノードは、前記第1レイヤにおける接続されたノードに先行する特定の記号と、該特定の記号が前記接続されたノードに先行する頻度の確率を表す、ステップと、
終了条件を満たすまで、前記トレーニングコーパスの前記再検査と、前記次のレイヤの構築を繰り返すステップと
をさらに含む、方法。 - 請求項4に記載の方法において、
前記特定のノードが、所定の閾値未満の確率を有する場合、前記モデルにおける前記特定のノードを除外するステップをさらに含む、方法。 - 請求項1に記載の方法において、
前記モデルは決定ツリーである、方法。 - 請求項1に記載の方法において、
前記モデルは決定ツリーであり、冗長ノードは除外される、方法。 - 請求項6に記載の方法において、
前記決定ツリーの各ノードは、現在の記号と、予測された記号の順序付きセットとを格納する、方法。 - 請求項6に記載の方法において、
前記決定ツリーは、可変記憶長マルコフモデルから導き出される、方法。 - 記号シーケンスを含むトレーニングコーパスから構築されたモデルを格納するメモリであって、該モデルは記号のセットを予測し、該セットの各記号は、特定の記号シーケンスの、タイピング履歴に応じて長さが動的に変化する可変長サブシーケンスを用いて特定の記号シーケンスを続け、前記可変長サブシーケンスの特定の長さは、前記予測が正しい確率を最大にするよう選択されるメモリと、
複数のキーと、
前記記号のセットのうちの選択された記号に対応する、前記キーボード上のキーを強調する手段と
を備えた、予測型キーボード。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/506609 | 2000-02-18 | ||
US09/506,609 US6621424B1 (en) | 2000-02-18 | 2000-02-18 | Method for predicting keystroke characters on single pointer keyboards and apparatus therefore |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001265497A JP2001265497A (ja) | 2001-09-28 |
JP4712201B2 true JP4712201B2 (ja) | 2011-06-29 |
Family
ID=24015293
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001037385A Expired - Fee Related JP4712201B2 (ja) | 2000-02-18 | 2001-02-14 | キーボードにおけるキーストロークを予測する方法および予測型キーボード |
Country Status (4)
Country | Link |
---|---|
US (1) | US6621424B1 (ja) |
EP (1) | EP1126363B1 (ja) |
JP (1) | JP4712201B2 (ja) |
DE (1) | DE60102955T2 (ja) |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8938688B2 (en) | 1998-12-04 | 2015-01-20 | Nuance Communications, Inc. | Contextual prediction of user words and user actions |
US7712053B2 (en) * | 1998-12-04 | 2010-05-04 | Tegic Communications, Inc. | Explicit character filtering of ambiguous text entry |
US7328404B2 (en) * | 2000-07-21 | 2008-02-05 | Microsoft Corporation | Method for predicting the readings of japanese ideographs |
US6952673B2 (en) * | 2001-02-20 | 2005-10-04 | International Business Machines Corporation | System and method for adapting speech playback speed to typing speed |
US7103534B2 (en) * | 2001-03-31 | 2006-09-05 | Microsoft Corporation | Machine learning contextual approach to word determination for text input via reduced keypad keys |
US7110525B1 (en) | 2001-06-25 | 2006-09-19 | Toby Heller | Agent training sensitive call routing system |
US20050078090A1 (en) * | 2001-12-19 | 2005-04-14 | Hans-Mathias Glatzer | Method and apparatus for indicating available input options of electronic terminal devices |
US9818136B1 (en) | 2003-02-05 | 2017-11-14 | Steven M. Hoffberg | System and method for determining contingent relevance |
WO2004114110A1 (en) * | 2003-06-19 | 2004-12-29 | Nds Limited | Text entry using direction inputs |
KR100508123B1 (ko) * | 2003-07-04 | 2005-08-10 | 엘지전자 주식회사 | 기호 입력방법 및 장치 |
US7403977B2 (en) * | 2003-10-14 | 2008-07-22 | Nokia Corporation | Mobile phone having hinting capabilities for operation function selection |
US8095364B2 (en) | 2004-06-02 | 2012-01-10 | Tegic Communications, Inc. | Multimodal disambiguation of speech recognition |
US7218249B2 (en) * | 2004-06-08 | 2007-05-15 | Siemens Communications, Inc. | Hand-held communication device having navigation key-based predictive text entry |
GB2422354A (en) * | 2005-01-21 | 2006-07-26 | Suninnovate Technology Corp | Light guided keyboard system |
US9354715B2 (en) * | 2006-04-12 | 2016-05-31 | Sony Interactive Entertainment Inc. | Dynamic arrangement of characters in an on-screen keyboard |
GB2439130B (en) * | 2006-06-15 | 2011-04-27 | Canon Europa Nv | Predictive selection system |
US8028230B2 (en) * | 2007-02-12 | 2011-09-27 | Google Inc. | Contextual input method |
US7453441B1 (en) | 2008-03-31 | 2008-11-18 | International Business Machines Corporation | Method and system for intelligent keyboard illumination |
US20090319694A1 (en) | 2008-06-20 | 2009-12-24 | Microsoft Corporation | Association of an input and output of a peripheral device in a computing system |
JP5138736B2 (ja) * | 2010-06-25 | 2013-02-06 | 京セラドキュメントソリューションズ株式会社 | 文字入力装置及び文字入力方法 |
GB201200643D0 (en) * | 2012-01-16 | 2012-02-29 | Touchtype Ltd | System and method for inputting text |
US10037319B2 (en) | 2010-09-29 | 2018-07-31 | Touchtype Limited | User input prediction |
US8490008B2 (en) | 2011-11-10 | 2013-07-16 | Research In Motion Limited | Touchscreen keyboard predictive display and generation of a set of characters |
US9652448B2 (en) | 2011-11-10 | 2017-05-16 | Blackberry Limited | Methods and systems for removing or replacing on-keyboard prediction candidates |
US9122672B2 (en) | 2011-11-10 | 2015-09-01 | Blackberry Limited | In-letter word prediction for virtual keyboard |
US9715489B2 (en) | 2011-11-10 | 2017-07-25 | Blackberry Limited | Displaying a prediction candidate after a typing mistake |
US9310889B2 (en) | 2011-11-10 | 2016-04-12 | Blackberry Limited | Touchscreen keyboard predictive display and generation of a set of characters |
US9152323B2 (en) | 2012-01-19 | 2015-10-06 | Blackberry Limited | Virtual keyboard providing an indication of received input |
US9557913B2 (en) * | 2012-01-19 | 2017-01-31 | Blackberry Limited | Virtual keyboard display having a ticker proximate to the virtual keyboard |
KR102109219B1 (ko) * | 2012-01-27 | 2020-05-11 | 터치타입 리미티드 | 사용자 데이터 입력 예측 |
WO2013123572A1 (en) | 2012-02-24 | 2013-08-29 | Research In Motion Limited | Touchscreen keyboard providing word predictions in partitions of the touchscreen keyboard in proximate association with candidate letters |
KR20150127785A (ko) * | 2012-03-20 | 2015-11-18 | 삼성전자주식회사 | 휴대단말기의 이메일작성 장치 및 방법 |
US9201510B2 (en) | 2012-04-16 | 2015-12-01 | Blackberry Limited | Method and device having touchscreen keyboard with visual cues |
US9207860B2 (en) | 2012-05-25 | 2015-12-08 | Blackberry Limited | Method and apparatus for detecting a gesture |
US9116552B2 (en) | 2012-06-27 | 2015-08-25 | Blackberry Limited | Touchscreen keyboard providing selection of word predictions in partitions of the touchscreen keyboard |
US9524290B2 (en) | 2012-08-31 | 2016-12-20 | Blackberry Limited | Scoring predictions based on prediction length and typing speed |
US9063653B2 (en) | 2012-08-31 | 2015-06-23 | Blackberry Limited | Ranking predictions based on typing speed and typing confidence |
CN103249050B (zh) * | 2013-04-17 | 2015-11-25 | 南京邮电大学 | 基于业务需求的多尺度频谱接入方法 |
WO2014194450A1 (zh) * | 2013-06-03 | 2014-12-11 | 东莞宇龙通信科技有限公司 | 关联提示输入系统、终端和关联提示输入方法 |
CN103338467A (zh) * | 2013-07-10 | 2013-10-02 | 南京邮电大学 | 无线网络中基于pst的用户行为学习方法 |
CN104281275B (zh) * | 2014-09-17 | 2016-07-06 | 北京搜狗科技发展有限公司 | 一种英文的输入方法和装置 |
GB201620235D0 (en) | 2016-11-29 | 2017-01-11 | Microsoft Technology Licensing Llc | Neural network data entry system |
US10671181B2 (en) * | 2017-04-03 | 2020-06-02 | Microsoft Technology Licensing, Llc | Text entry interface |
US20220334651A1 (en) * | 2019-10-15 | 2022-10-20 | Hewlett-Packard Development Company, L.P. | Keyboard illumination configuration based on key usage |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07261896A (ja) * | 1994-02-23 | 1995-10-13 | At & T Corp | 情報入力装置とその個別領域のキーの配列方法 |
JPH11259215A (ja) * | 1997-12-19 | 1999-09-24 | Nokia Mobile Phones Ltd | 移動局に文書を入力する方法と装置、および移動局 |
JPH11282832A (ja) * | 1998-03-30 | 1999-10-15 | Hitachi Ltd | 文書処理装置及び方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4500872A (en) * | 1982-03-18 | 1985-02-19 | Dai-E Systems, Inc. | Method for encoding Chinese characters |
US4638306A (en) * | 1984-01-30 | 1987-01-20 | Quixote Corporation | Keyboard entry system |
US4579470A (en) | 1984-04-11 | 1986-04-01 | Cullen Casey | Keyboard with keys concentrated in clusters |
US5128672A (en) | 1990-10-30 | 1992-07-07 | Apple Computer, Inc. | Dynamic predictive keyboard |
US5963671A (en) * | 1991-11-27 | 1999-10-05 | International Business Machines Corporation | Enhancement of soft keyboard operations using trigram prediction |
US5487616A (en) | 1995-06-01 | 1996-01-30 | Jean D. Ichbiah | Method for designing an ergonomic one-finger keyboard and apparatus therefor |
DE69607472T2 (de) | 1995-07-26 | 2000-08-24 | Tegic Communications Inc | System zur unterdrückung der vieldeutigkeit in einer verringerten tastatur |
US5625354A (en) | 1996-01-26 | 1997-04-29 | Lerman; Samuel I. | Compact stylus keyboard |
US5805157A (en) | 1996-08-12 | 1998-09-08 | International Business Machines Corporation | Mobile client computer with hexagonal keyboard |
US6005495A (en) * | 1997-02-27 | 1999-12-21 | Ameritech Corporation | Method and system for intelligent text entry on a numeric keypad |
US6054941A (en) * | 1997-05-27 | 2000-04-25 | Motorola, Inc. | Apparatus and method for inputting ideographic characters |
US6204848B1 (en) * | 1999-04-14 | 2001-03-20 | Motorola, Inc. | Data entry apparatus having a limited number of character keys and method |
-
2000
- 2000-02-18 US US09/506,609 patent/US6621424B1/en not_active Expired - Lifetime
-
2001
- 2001-02-06 DE DE60102955T patent/DE60102955T2/de not_active Expired - Lifetime
- 2001-02-06 EP EP01102587A patent/EP1126363B1/en not_active Expired - Lifetime
- 2001-02-14 JP JP2001037385A patent/JP4712201B2/ja not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07261896A (ja) * | 1994-02-23 | 1995-10-13 | At & T Corp | 情報入力装置とその個別領域のキーの配列方法 |
JPH11259215A (ja) * | 1997-12-19 | 1999-09-24 | Nokia Mobile Phones Ltd | 移動局に文書を入力する方法と装置、および移動局 |
JPH11282832A (ja) * | 1998-03-30 | 1999-10-15 | Hitachi Ltd | 文書処理装置及び方法 |
Also Published As
Publication number | Publication date |
---|---|
US6621424B1 (en) | 2003-09-16 |
DE60102955T2 (de) | 2005-04-28 |
EP1126363A1 (en) | 2001-08-22 |
DE60102955D1 (de) | 2004-06-03 |
JP2001265497A (ja) | 2001-09-28 |
EP1126363B1 (en) | 2004-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4712201B2 (ja) | キーボードにおけるキーストロークを予測する方法および予測型キーボード | |
JP4705725B2 (ja) | キーボード上にキーを配列する方法およびキーボード | |
US11416679B2 (en) | System and method for inputting text into electronic devices | |
US5963671A (en) | Enhancement of soft keyboard operations using trigram prediction | |
EP0842463B1 (en) | Reduced keyboard disambiguating system | |
US6885317B1 (en) | Touch-typable devices based on ambiguous codes and methods to design such devices | |
KR101003879B1 (ko) | 텍스트 입력 시스템 | |
KR100891358B1 (ko) | 사용자의 다음 문자열 입력을 예측하는 글자 입력 시스템및 그 글자 입력 방법 | |
CA2353862C (en) | Touch-typable devices based on ambiguous codes and methods to design such devices | |
JP3980679B2 (ja) | 文字・文字列入力処理装置 | |
US20100153880A1 (en) | Method system and apparatus for entering text on a computing device | |
WO2009149924A1 (en) | Device and method incorporating an improved text input mechanism | |
Sarcar et al. | Virtual keyboard design: State of the arts and research issues | |
Polacek et al. | Humsher: A predictive keyboard operated by humming | |
MacKenzie | The one-key challenge: searching for a fast one-key text entry method | |
EP1875620B1 (en) | Hangeul input keypad and methods using the same | |
Sirisena | Mobile text entry | |
Colas et al. | Artificial ants for the optimization of virtual keyboard arrangement for disabled people | |
Fowler | Incremental Methods for Efficient and Personalized Text Entry in Noisy Input Environments | |
AU2013270614A1 (en) | Method system and apparatus for entering text on a computing device | |
MIM | FloodKey: increasing software keyboard keys by reducing needless ones without occultation | |
Tesema | Design and Implementation of Predictive Text Entry Method for Afan Oromo on Mobile Phone | |
Tarniceriu et al. | Fine-tunning a map error correction algorithm for five-key chording keyboards | |
KR20040046166A (ko) | 음절 문맥 확률 모형과 테이블 기반 파싱을 이용한비결정적 한글 입력 장치 및 방법 | |
BADR et al. | IRIT, ELIPSE team Université Paul Sabatier 31062 Toulouse cedex 9, France |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080109 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20100408 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100408 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100521 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100820 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110302 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110323 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |