JP6492238B2 - ユーザ入力予測 - Google Patents

ユーザ入力予測 Download PDF

Info

Publication number
JP6492238B2
JP6492238B2 JP2014510874A JP2014510874A JP6492238B2 JP 6492238 B2 JP6492238 B2 JP 6492238B2 JP 2014510874 A JP2014510874 A JP 2014510874A JP 2014510874 A JP2014510874 A JP 2014510874A JP 6492238 B2 JP6492238 B2 JP 6492238B2
Authority
JP
Japan
Prior art keywords
targets
target
input event
user input
input
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.)
Active
Application number
JP2014510874A
Other languages
English (en)
Other versions
JP2014517602A5 (ja
JP2014517602A (ja
Inventor
ベンジャミン メドロック
ベンジャミン メドロック
ダグラス アレクサンダー ハーパー オア
ダグラス アレクサンダー ハーパー オア
Original Assignee
タッチタイプ リミテッド
タッチタイプ リミテッド
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by タッチタイプ リミテッド, タッチタイプ リミテッド filed Critical タッチタイプ リミテッド
Publication of JP2014517602A publication Critical patent/JP2014517602A/ja
Publication of JP2014517602A5 publication Critical patent/JP2014517602A5/ja
Application granted granted Critical
Publication of JP6492238B2 publication Critical patent/JP6492238B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements 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/0233Character input methods
    • G06F3/0237Character input methods using prediction or retrieval techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs

Description

本発明は、一般にユーザインターフェイスを備えたデータ入力システムに関する。具体的には、このユーザインターフェイスは、複数のターゲットを含みユーザ入力を受け取るように構成される。本発明は、システムのユーザインターフェイスのターゲットをモデル化する方法、及びユーザインターフェイスのターゲットをそのようにモデル化したシステムにデータを入力する方法を提供する。
これまで、サイズが限られたキーボードとのユーザインタラクションを強化する取り組みでは、所与の言語の全ての文字範囲をカバーしていない縮小サイズキーボードに基づく方法が多く提供されてきた。この方法は、米国特許第6307549号の主題であり、この特許には、(通常は1つのキーにつき約3文字の)縮小キーボードからの出力の曖昧性を除去する方法が記載されている。現在の入力に一致する可能性のあるものをユーザが順に切り換えられるようにする選択ボタンを使用して、単語レベルの曖昧性除去が行われる。一般的なQWERTYレイアウトに基づく別の縮小キーボードレイアウトには、やはり入力後のさらなる曖昧性除去を使用する、米国特許第7083342号に記載される「ハーフqwerty」レイアウトがある。
縮小キーボードでは、エラー率は低いものの、入力の量子化も大ざっぱになり、すなわちコンピュータが縮小キーボードから受け取る入力における情報コンテンツは、フルキーボードからのものよりも少ない。
理論的には、適切なエラー訂正システムを使用した場合、エラー訂正を含むフルキーボードでは、曖昧性除去のキーストロークが縮小キーボードよりも少なくて済むはずである。ハードキーボードでは、入力イベントは、ユーザがキーボードのキーを押下することに関連する。このようなキーボードでは、ユーザがキーの境界内のあらゆる位置を押下する可能性があり、対応する入力イベントは、この境界内の全ての位置で同じものになる。しかしながら、タッチセンサ式の「ソフトキーボード」では、ソフトキーボード上のタッチによるほとんど連続する座標を使用することが可能である。
例えば、米国特許出願公開第2009/0284471号及びそれ以前のものなどの多くの既存の仮想キーボードシステムは、ユーザが意図したものでない文字をシステムが受け取った場合にユーザ入力を自動的に「訂正」する機構を内蔵する。このようなシステムは、各々がデカルト座標の組によって示される事前に指定された位置の組を、ユーザの入力に利用可能な文字に関連付けるという発想に基づくものである。ある入力イベントを表す一連の座標を所与とすれば、このイベントと、それを取り囲む事前に指定した「オートコレクト領域」内の位置との間の距離を使用して、このイベントに割り当てられる重み付けした文字の組が構築される。このオートコレクト領域は、複数のアルファベット文字を含む。入力中、意図した文字列である可能性が高いと思われる「オブジェクト」の組がユーザに示される。ユーザが自身の意図する入力シーケンスを選択すると、入力イベント座標と文字座標の間の(場合によっては重み付けした)水平及び垂直オフセットが計算され、関連する移動平均(moving average)を使用して、ユーザのタイピング様式を反映するように入力イベント座標が較正される。この移動平均は、各キーの座標をそのキーに関する全ての以前の入力イベントの平均に設定した移動平均(running average)とすることができる。
上述した既存の仮想キーボードは、各文字を座標の組によって示される位置としてモデル化する。対照的に、本発明のシステム及び方法は、ユーザが仮想キーボード上の文字をターゲットにした時のユーザの実際の入力をモデル化する。従って、本発明のシステム及び方法は、所与の文字に関するユーザの入力履歴をモデル化する。
米国特許第6307549号明細書 米国特許第7083342号明細書 米国特許出願公開第2009/0284471号明細書 国際特許出願公開第2010/112841号 国際特許出願PCT/GB2010/001898号
本発明のシステム及び方法は、ユーザに適合してユーザのテキスト入力様式を学習するシステムを提供する。このシステムは、ユーザのシステムとの対話履歴をモデル化することにより、入力イベントを所与としてユーザがどの文字を入力するつもりであったかをより正確に予測することができる。従って、本発明は、より正確かつ信頼性の高いテキスト予測を行い、従って電子装置へのより正確なテキスト入力を行うことができるシステムを提供する。精度が向上すれば訂正も減り、従ってシステムによるテキスト入力が効率的になるとともに、処理要件も低くなる。
1つの実施形態では、本発明は、複数のターゲットを含みユーザ入力を受け取るように構成されたユーザインターフェイスを備えたデータ入力システムを提供する。このシステムは複数のモデルを含み、各モデルは、あるターゲットに対応する以前のユーザ入力イベントをこのターゲットに関連付ける。システムは、ユーザ入力イベントが特定のターゲットに対応する確率を複数のモデルに関連して生成するように構成された入力確率生成器をさらに備える。
ターゲットは、1又はそれ以上の文字、キー、符号、又はユーザ選択のための他のいずれかの情報項目を表すことができる。
ユーザインターフェイスは、仮想キーボードであることが好ましい。入力イベントは、この仮想キーボード上の位置に対応することができ、各モデルは、特定のターゲットに対応するユーザの以前の入力イベントの位置をモデル化した分布である。この分布は、2Dガウスとすることができる。この2Dガウスのパラメータは、ターゲットに対応する入力イベントに基づいて最大事後確率推定法を用いて学習されることが好ましい。モデルパラメータの事前分布の形は、共役事前分布であることが好ましい。ターゲットが仮想キーボード上のキーである場合、キーボードレイアウトに基づいて各ターゲットの事前分布を経験的に設定することができる。
仮想キーボードは、複数のターゲットモデルセットを含むことができ、各ターゲットモデルセットは、異なるユーザ又は使用シナリオに合わせられる。
入力確率生成器は、あるユーザ入力イベントに関して最も確率の高いn個のターゲット及びその関連する確率を複数のモデルに関連して出力することができる。
システムは、n個のターゲットの各々を、関連する確率値を有する1又はそれ以上のワードフラグメントにマッピングするマップを含むことができる。各ワードフラグメントには、マップ内で対応するターゲットをタグ付けすることが好ましい。
システムは、最も確率の高いn個のターゲット及びその関連する確率を受け取って、確率値を有するテキスト予測を生成するように構成された予測器をさらに備えることができる。この予測器は、ワードフラグメント及びその関連する確率を受け取って、確率値を有するテキスト予測を生成するように構成することができる。
予測の選択時には、予測の(単複の)ターゲットを対応する(単複の)入力イベントと一致させる。予測のターゲットは、予測のワードフラグメントをこれらの対応するターゲットにタグ付けすることにより、対応する入力イベントと一致させることができる。或いは、予測のターゲットは、ワードフラグメントをこれらの対応するターゲットに逆マッピングし、これらのターゲットを入力イベントとペアにすることにより、対応する入力イベントと一致させることができる。
予測の選択は、ユーザによる予測の選択、又は最も確率の高い予測の自動選択を含むことができる。選択された予測は、データ入力システムにテキストとして入力されることが好ましい。
システムは、あるモデルに対応するターゲットへの入力イベントのマッピングを反映するようにこのモデルを更新するよう構成されたモデル更新器を備えることもできる。
電子装置は、上述したようなデータ入力システムを備えることができる。電子装置は、コンピュータ、PDA又は携帯電話機とすることができる。
第2の実施形態では、本発明は、複数のターゲットを含み入力を受け取るように構成されたユーザインターフェイスのターゲットをモデル化する方法を提供し、この方法は、各ターゲットに関し、このターゲットに対応するユーザ入力イベントをモデル化するステップを含む。
ユーザインターフェイスは仮想キーボードであり、入力イベントは、仮想キーボード上の位置に対応し、方法は、ターゲットに対応するユーザの以前の入力イベントの位置を記述する分布として各ターゲットをモデル化するステップをさらに含むことができる。分布は、2Dガウスとすることができる。各モデルは、分布に対して共役とすることができる事前分布も含まなければならない。2Dガウスのパラメータは、ターゲットに対応する入力イベントに基づいて最大事後確率推定法を用いて学習されることが好ましい。ターゲットは仮想キーボード上のキーであり、各ターゲットの事前分布は、キーボードレイアウトに基づいて経験的に設定される。
第3の実施形態では、複数のターゲットを有し入力を受け取るように構成されたユーザインターフェイスを備えたシステムにデータを入力する方法を提供し、この方法は、入力確率生成器を用いて、あるターゲットに対応する以前の入力イベントをそのターゲットに各々が関連付ける複数のモデルに関連して、ユーザ入力イベントが特定のターゲットに対応する確率を生成するステップを含む。
この方法は、ユーザ入力イベントに関して、最も確率の高いn個のターゲット及びその関連する確率を入力確率生成器から出力するステップを含むことが好ましい。この方法は、マップを用いて、n個のターゲットの各々を、関連する確率値を有する1又はそれ以上のワードフラグメントにマッピングするステップを含むこともできる。この方法は、マップを用いて、1又はそれ以上のワードフラグメントの各々にマッピング元のターゲットをタグ付けするステップを含むことが好ましい。
この方法は、最も確率の高いn個のターゲット及びその関連する確率を受け取るように構成された予測器を用いて、確率値を有するテキスト予測を生成するステップを含むことができる。この方法は、ワードフラグメント及びその関連する確率を受け取るように構成された予測器を用いて、確率値を有するテキスト予測を生成するステップを含むことが好ましい。この方法は、テキスト予測を選択するステップと、予測器を用いて、テキスト予測の(単複の)ターゲットを対応する(単複の)入力イベントと一致させるステップとを含むことができる。テキスト予測の(単複の)ターゲットを対応する(単複の)入力イベントと一致させるステップは、ワードフラグメントにタグ付けされたターゲットを入力イベントとペアにするステップを含むことができる。或いは、テキスト予測(単複の)ターゲットを対応する(単複の)入力イベントと一致させるステップは、ワードフラグメントをそのターゲットに逆マッピングするステップと、ターゲットを入力イベントとペアにするステップとを含むことができる。
この方法は、入力イベントがターゲットと一致した時に、モデル更新器を用いてモデルを更新するステップをさらに含むことができる。
以下、添付図面を参照しながら本発明を詳細に説明する。
本発明によるシステムアーキテクチャの概略図である。
本発明は、仮想キーボード上におけるユーザインタラクションのモデル化方法を学習する機械を利用するシステム及び方法を提供する。このシステムの3つの主な動作は、予測器と連動した評価、推論及び学習であり、システムは、これらの動作を反復適用することに関連して構築される。本発明のシステムは、例えば、PDA、携帯電話機又はコンピュータなどの電子装置に組み込むことができる。
ここで図1を参照しながらシステムの要素について説明する。
本発明のシステムは、複数のターゲットを含みユーザ入力を受け取るように構成されたユーザインターフェイスを提供する。図1に示す例では、ユーザインターフェイスが、ソフトスクリーン上のキーボードなどの仮想キーボード1を含む。システムは、ユーザ入力を入力イベント10又は選択イベント20のいずれかとして解釈するように構成される。入力イベント10とは、仮想キーボード1により検出されデカルト座標として表現される、ユーザが(「タッチ」又は「クリック」などにより)仮想キーボード上の2D空間内における位置を選択するイベントのことである。選択イベント20とは、ユーザに表示された一連の予測からユーザが予測18を選択することである。仮想キーボード1は、入力イベント10と選択イベント20を区別するために、入力イベント領域及び選択イベント領域を有することができる。しかしながら、ユーザ入力を選択又は入力イベントとして解釈する方法は他にも存在し、例えば、選択イベント20は、(例えば画面のタッチに対応できる)入力イベント10とは異なる(画面を横切るスワイプなどの)キーボード上のジェスチャーに対応することもできる。
入力イベント10は、デカルト座標によって表されることに限定されず、最後のキー押下からの時間、キー押下の圧力、ジェスチャー情報(ソフトスクリーンキーボード上をタッチすることによってなぞられる経路)、加速度計の測定値などのその他の変数によって表すこともできる。
ソフトキーボードの場合、選択イベント20は、ユーザがキーボード上の予測を表示した範囲をタッチ/クリックしてシステムに予測を入力することにより、意図する予測を選択することに関連する。選択イベント20は、ユーザが「スペース」を「押して」語句を完成させた時の、システムによる最も確率の高い予測の自動選択に関連することもできる。ユーザが予測を選択する機構は他にも存在し、例えば、画面を横切る右スワイプなどのソフトキーボード上のジェスチャーなどが、最も確率の高い予測を挿入するための機構となり得る。選択された予測20は、ユーザが入力イベント10を通じて入力しようとしていた文字列に対応する。従って、以下でより詳細に説明するように、選択イベント20を入力することにより、ユーザにより入力された入力イベント10をその意図するターゲットと一致させることができる。
仮想キーボード1の唯一の要件は、意図する入力に対応する、ユーザにとって明確な「ターゲットポイント」が存在することである。ターゲットポイントは、以下に限定されるわけではないが、文字キー(すなわち、通常のqwertyキーボードのようなグリッド状の仮想又は物理キー)、目に見えるキー境界が無いグリッドなどの文字グリフの配列、又は線形の文字ラインA〜Zとすることができる。従って、仮想キーボード1の各ターゲットは、単一の又は複数の文字、或いはユーザ選択のための他のいずれかの情報項目を表すことができる。以下の例では、システムへのテキスト入力に焦点を当てる。しかしながら、本システム及び方法はテキストの入力に限定されるものではなく、非テキストデータの入力にも適用可能であり、この場合、ユーザインターフェイス上のターゲットポイントによりデータの量子が表される。
システムは、ユーザに提示する予測を生成するために、複数のターゲットの各々に関するユーザの以前の入力イベントをモデル化した複数のモデル6と、所与の入力イベント10について複数のモデル6に問い合わせ、1又はそれ以上の可能性のあるターゲット及びその確率を生成する入力確率生成器2と、可能性のあるターゲット及びその確率からテキスト予測18を生成する予測器4とを含む。好ましい例では、システムが、予測器4がテキスト予測を生成するために使用するワードフラグメントに可能性のあるターゲットをマッピングしたワードフラグメントマップ3をさらに含む。
入力確率生成器2は、入力イベント10を受け取って、ターゲットシーケンス意図構造(Target Sequence Intention Structure)12を生成又は更新する。ターゲットシーケンス意図構造12は、1又はそれ以上のターゲットと、各ターゲットに関してユーザが入力イベント10を通じてそのターゲットを選択しようとしていた確率を含む。ターゲットシーケンス意図構造12は、例えば、ターゲットに入力イベント10をタグ付けすることによる、入力イベント10と、この入力イベント10に対応するターゲットとの間の対応関係を含む。ターゲットシーケンス意図構造12は、システムのターゲットを全て含むことも、或いは関連する確率が一定の閾値確率値よりも高いターゲットのみを含むこともできる。この閾値はシステムパラメータであり、経験的に(10−4などの)所定のレベルに設定することができる。或いは、ユーザによる試行によって閾値レベルを決定することもできる。以下でより詳細に説明するように、入力確率生成器2は、ターゲットの入力イベント10が観察される確率を生成するために、入力イベント10についてモデルセット6に問い合わせ、各ターゲットに関してイベント毎の確率ベクトルとして表現できる確率値を評価する。計算量を削減するために、細かな値はイベント毎の確率ベクトルからフィルタ除去することができる。これらのイベント毎の確率ベクトルを連結してターゲットシーケンス意図構造14を形成し、これが次の段階であるターゲットマッピング3への入力を形成する。
モデルセット6は、システムの(文字とすることができる)複数のターゲットを表す複数の訓練モデルを含む。ターゲットは、ユーザがこのターゲットを「目的」としていた場合のユーザの実際の入力をモデル化した分布としてモデル化される。入力イベントの位置ベクトルをxとし、単一のターゲットを識別するラベルをcとした場合、モデル化される分布は、p(x|c)となる(ターゲットは、考えられる意図された文字の組を識別する)。
好ましい実施形態では、この分布が、(全ての仮定及びパラメータを含む)仮定モデルをMとし、ガウス確率密度関数、xで評価された平均μ、共分散Σの省略表現をG(x;μ,Σ)とした場合、多変量ガウスp(x|c,M)=G(x;μ,Σ)としてモデル化される。モデルパラメータは、各ターゲットcに関してμ及びΣである。モデルパラメータは、キーボードとの対話履歴に基づいて最大事後確率(MAP)推定を用いて学習される。しかしながら、その他の学習機構を使用することもでき、後程これらのいくつかについて説明する。
ユーザの入力は、2Dガウスを使用するのではなく、ユーザの入力イベントのx及びy座標をラプラス分布で個別に分布させることによりモデル化することができる。或いは、ユーザ入力をガンマ分布でモデル化することもできる。ラプラス分布及びガンマ分布は裾が重く、(タッチ位置などの)入力イベントがターゲットから離れるにつれて、確率密度の減衰がガウスのものよりも緩やかになるので、ガウス分布よりも適していると考えられる。このような裾の重い分布は、ユーザの実際の記述様式をより正確に反映することができ、従ってエラー訂正性能が潜在的に良好になる。その他の好適なモデル化技術を適用することもできる。
μ,ΣのMAP推定を取得するには、これらのパラメータの事前分布を指定しなければならない。ターゲットが仮想キーボード上のキーに関連する場合、キーボードレイアウトに基づいて事前分布(平均及び共分散)を経験的に設定することができ、このための便利な選択肢として、未知の平均及び共分散によるガウスの共役事前分布であるという理由で正規逆ウィシャート分布、NIWDが挙げられる。その他の事前分布を使用することもでき、後程そのいくつかについて説明する。共役事前分布の定義では、事前分布が尤度と共役である場合、事後分布が(潜在的には異なるパラメータで)事前分布と同じ分布形態を取る。従って、共役分布(事前分布及び事後分布の両方)のパラメータは(モデルの実際のパラメータの分布をパラメータ化するので)ハイパーパラメータと呼ばれ、MAP学習を比較的単純なハイパーパラメータ再計算にすることができる。
従って、ある実施形態では、学習が、容易に増分するアルゴリズムである4つのNIWDパラメータの再計算を伴う。従って、事前分布は以下のようになる。
そして事後分布は以下のようになる。
式中、α及びβは、それぞれ平均及び共分散のための自由度ハイパーパラメータであり(自由度値が大きければ、事前分布が強く、学習が緩慢であることを意味する)、
は、それぞれ平均及び共分散のモード値である。
は、t回の観察後の{xi=1..tのハイパーパラメータαの事後値であり、従って
となる。
NIWD分布のための既知のハイパーパラメータ更新関係を解くと、このパラメータ化の一般的更新ルールは以下のようになる。



この場合、

この場合、平均
によりn回の観察{xi=1..nが存在する。全ての観察を用いて事前分布に適用すると、バッチ学習アルゴリズムが得られる。n=1を設定し、事後分布に更新式を再適用することにより、増分的学習アルゴリズムを形成することができ、すなわち
となる。
NIWDのモードは
であるため、t回の観察後のパラメータのMAP推定は、単純に

となる。
NIWDは、多変量ガウスの共役であり、単純かつ増分的な学習ルールを提供するので便利である。別の方法として、一様な(無益な)事前分布を使用することも可能である。位置及び共分散が独立している場合には事前分布を指定することができ、例えば、位置の事前分布をガウス又は一様とし、共分散の事前分布を「最大正規分布」とすることができる。
本例では、事前分布からの1回の更新により、及び同時に1回の観察を追加することによりそれぞれ事後分布を計算するバッチモード学習アルゴリズム及び増分的学習アルゴリズムを使用する。これらの学習アルゴリズムの一方は、ユーザが、入力イベントの位置と選択された予測を構成する文字の位置とを一致させることによって予測を「選択した」時に機能する。
ガウス分布の代わりにラプラス/ガンマ分布を選択した場合、ガウスの場合と同じ処理に従い、すなわち(例えば共役事前分布などの)事前分布を選択して、MAP学習目標のための学習ルールを導出する。
MAPの代案としては、事前分布を使用せずモデル下のトレーニングデータの観察尤度が最大化されるようにパラメータを選択する最尤法(ML)推定が学習機構の別の選択肢となる。さらなる可能性としては、推論決定に使用する事後分布及び平均値又は中央値の全ての可能な値の積分値を計算する真のベイズ推定量を使用することが考えられる(ML法やMAP法は、いずれも点推定を行うので真にベイズではない)。これらの推定法は、計算に比較的コストがかかるという不利点があり、従って現在では、制限のあるリソース環境にとって魅力は低い。ベイズ推定量の例には、変分ベイズ及びギブスサンプリングがある。
上述した学習アルゴリズムは、各データポイントを新しい又は古いに関わらず等しく考慮した学習アルゴリズムであり、一定数のデータポイントが観察されると、事前分布は(意図的に)圧倒される。モデルに新近性の基本形を加えるために、及び事前分布を継続的に強化することにより何らかの異常値許容範囲を加えるために、以下の2つの変更を行うことができる。
第1の変更は、自由度パラメータα、βを単純に制限することであり、古い観察を「忘れて」、モデルがどれほど「リジッド」になるかを制限するという効果がある(「リジッド」モデルは、新たなデータポイントの効果がほとんどないような高い自由度値を有する)。この制限は、これらのパラメータが限界(他のハイパーパラメータ更新の動作を侵害すべきでない動作)を超えた場合にこれらを更新しないことにより適用される。
第2の変更は、他の事前ハイパーパラメータ
及び
を更新方程式に再び投入して、多くのデータポイントが観察された後でもこれらのパラメータが効果を与え続けるようにすることである。この変更は、更新方程式が単純に少量の加重平均であるという理由で比較的簡単に行うことができ、従って以下のように何らかの量の事前分布を「加える」ことが妥当である。



追加パラメータαcmax、βcmax、δ及びεは、必要に応じて経験的に設定することができる。これらのパラメータは、事前分布の「漸近強度」、及び過去の観察を忘れる度合いを制御する。
単一の仮想キーボード1は、例えば異なるユーザが単一のシステムを使用できる場合、又は仮想キーボードのフォームファクタが可変である場合、複数の別個のターゲットモデルセット6を保持する必要があり得る。(フォームファクタの変更などの)場合によっては、システムは、異なる入力モデルを明示的に選択するための十分な情報を有することができるが、複数ユーザの場合には、適切なモデル選択が明らかでないこともある。この状況では、モデル選択の要素が支援を行うことができる。
モデル選択を行うための健全な方法は、数多くのサンプルにわたってデータ尤度を評価することである。これは以下のように行うことができ、データ尤度は以下のように表現することができる。
式中、L(D|M)は、モデルM下でデータDを観察する尤度である。これは以下のように記述することができる。

ターゲットにわたる事前分布p(c|M)が一様であると仮定される場合、これを抽出して定数に入れることができる。
この対数尤度統計は、入力確率生成器において一度に複数のモデルに問い合わせを行い、全てのターゲットにわたる出力を合計し、いくつかの「シード入力」の計算した対数尤度が最も高いモデルを選択することにより計算することができる。
これまでに提示したモデルは、シーケンス内の各キー押下が他の全てのキー押下とは無関係であるという明らかに適確でない前提を組み込んでいた(特定のキーの入力分布は、恐らくは最後に入力された文字に非常に強く依存する)。最後の文字が入力されたことを所与とした場合に現在の文字入力が全ての以前の文字とは条件付きで無関係であるという一次マルコフの前提の方が適切であると考えられる。従って、入力シーケンス全体の確率は以下のようになる。
式中の全ての項は、上述した通りである。次に、重要なモデル化の決定は、タッチ位置の条件付き確率の形
を仮定することである。分布の1つの選択肢は、最初に以前のタッチ位置xを、各ターゲットに関して別個のガウス及び以前の入力位置のクラスで分類することである。別の考えられる選択肢は、移動した距離
を用いてターゲット毎の入力分布の変化を制御することである。この分布の形は、仮想キーボードユーザから収集した典型的なデータをモデル化するように選択すべきである。
モデルセット6は、i)入力確率生成器2により問い合わせを行ってモデルパラメータの現在のMAP推定値を戻し、ii)選択イベントに応答してモデルを更新するために入力モデル更新器5によりトレーニングすることができる。
モデルパラメータは、キー毎に記憶することも、又は(共分散の場合には)複数のキー間で共有することもできる。説明する例では、各キー/ターゲットが位置及び共分散値を有する。別の方法は、各キーに位置は与えるものの共分散を共有させ、キーのいずれかがトレーニングされる時に同じ共分散がトレーニングされるようにすることである。パラメータの正確な表現は柔軟であり、例えば共分散よりもむしろ精度マトリクスを記憶したほうが、確率生成中にはマトリクス反転が必要にならずモデルトレーニングの頻度が低い場合に反転が必要になるので都合が良いことがある。
従って、入力確率生成器2は、入力イベント10を所与として、ユーザが入力イベント10によってこのターゲットを選択しようとしていた確率p(x|c,M)を各ターゲットcに関して生成する。入力確率生成器2は、所与のターゲットの確率値を生成するために、このターゲットのモデルに問い合わせを行ってモデルパラメータμ、Σの現在のMAP推定値を戻す。次に、入力確率生成器2は、これらのモデルパラメータを用いて、入力位置xにおいて評価されるガウス確率密度関数G(x;μ,Σ)の値を計算する。計算された確率値は、イベント毎の確率ベクトルとして表すことができ、これらを連結してターゲットシーケンス意図構造14を形成することができる。
好ましい実施形態では、システムが、ターゲットマッピング段3をさらに含む。ターゲットマッピング段3は、ターゲット入力から予測の構築に使用できるワードフラグメント(通常は1又は2文字)へのマッピングを示すワードフラグメントマップを含む。このマッピングは、ターゲットシーケンス意図構造12を入力シーケンス意図構造(Input Sequence Intention Structure)16に変換するために、ターゲットシーケンス意図構造12内の各要素に個別に適用される。ワードフラグメントマップは、ターゲット(キーボード上の位置、キーの抽象化)から1又はそれ以上のワードフラグメント(ユーザが入力したいと思う単語の一部)へのマッピングを保持する。最も単純なケース(例えば、フルqwertyキーボード上で英語をタイピングする場合)では、各ターゲットが単一のワードフラグメントを参照する。各キーに別の文字が関連している場合(例えば、フランス語のアクセント付き文字、又は各キーが複数の文字を表す場合)、これらの文字を追加のワードフラグメントとして加えることができる。別の各ワードフラグメントごとに、各ターゲットに対応する確率を何らかの係数だけさらに割り引くことができる。その後、考えられるワードフラグメントの組及びシーケンス内の各イベントの確率を組み立てて入力シーケンス意図構造16にする。
また、ターゲットマッピング段3は、選択された予測20のワードフラグメントをこれらの対応するターゲットイベントに再マッピングする。好ましい実施形態では、ワードフラグメントの各々にこれらが由来するターゲットをタグ付けして、選択イベントの発生時に予測器4がターゲットをそのタッチ位置にペアリングできるようにする。これは、各ワードフラグメントにその対応するターゲット及び入力イベントをタグ付けすることにより行うことができる。従って、アンマップは、タッチ位置とターゲットの自明のペアリングである。しかしながら、システムは、ワードフラグメントにタグ付けを行う代わりに、他の機構を用いて、選択された予測20のワードフラグメントをこれらの対応するターゲットイベントに再マッピングすることもできる。例えば、別の実施形態では、ターゲットマッピング段3が、選択された予測のワードフラグメントをこれらの対応するターゲットに逆マッピングすることを含む。この逆マッピングを行うために、選択された予測20及び入力イベントの対応する文字列を分離機構に転送する。分離機構は、選択された予測20に関して最も確率の高いワードフラグメントの組み合わせを評価することにより、予測20をワードフラグメントに分離する。次に、ターゲットマッピング段3においてワードフラグメントをこれらのターゲットに逆マッピングし、入力イベントの文字列とペアにする。このような機構の最も単純な実装では、ワードフラグメントが単一の文字を含み、分離機構が、ターゲットに逆マッピングすべき単一の文字に予測を分離する。この状況では、予測器4により分離を行うことができる。
システムは、テキスト(又は同様の)予測18を生成するために予測器4を含む。予測器4は、このケースでは一連の「ワードフラグメント」の組及び確率を含む入力シーケンス意図構造16を含む何らかの入力を所与として予測18の組を生成する装置である。各予測18は、テキスト文字列、すなわち(s_iによって示される)用語又は語句、及びp_iによって示される確率値から成る。従って、予測の組内にn個の予測が存在する場合、この組は、{(s_1, p_1), (s_2, p_2) ... (s_n, p_n)}の形を取る。
当業者であれば理解できるように、テキスト予測システムでは、あらゆるタイプの予測器4及びあらゆる数の予測器4を使用してテキスト予測を生成することができる。予測器4は、ユーザが入力したテキストのコンテキストに基づいてテキスト予測18を生成し、すなわちコンテキストのn−1までの用語に基づいてn番目の用語のテキスト予測18を生成することが好ましい。ここで言う「コンテキスト」とは、シーケンス内の以前に現れた用語、及びシステムが有している現在の用語に関するあらゆる知識(例えば、この用語に寄与する可能性の高いワードフラグメント)の両方を意味する。システムは、特定のコンテキストを所与として、確率の推定を使用することにより、後続する可能性が最も高い単語を予測する。予測18は、多言語モデル及び単一言語モデル予測器により生成することができる。
テキスト予測を生成する予測器(単一言語及び多言語モデル)の使用についての詳細な説明は、国際特許出願公開第2010/112841号、「電子装置にテキストを入力するためのシステム及び方法(System and method for inputting text into electronic devices)」に記載されており、この特許出願はその全体が引用により本明細書に組み入れられる。さらに、カテゴリ重み付けされたテキスト予測を生成する適応的予測器(単一言語及び多言語モデル)の使用についての詳細な説明は、国際特許出願PCT/GB2010/001898号、「電子装置にテキストを入力するためのシステム及び方法(System and method for inputting text into electronic devices)」に記載されており、この特許出願はその全体が引用により本明細書に組み入れられる。
システムの予測器4は、一連の「ワードフラグメント」の組及び確率を含む入力シーケンス意図構造16を入力として受け取り、ユーザに表示する予測18の組を生成する。例えば、入力シーケンス意図構造がt及びoというワードフラグメントを含み、単語を(単語を完成させる)「to」又は(ワードフラグメントが単語の接頭辞である)「together」であると予測できるような場合、予測器4を、入力シーケンス意図構造16が単語全体を完成させる一致を戻すように、又は入力シーケンス意図構造16が接頭辞である可能性が高い単語を戻すように構成することができる。入力シーケンス意図構造16は、指針として使用できればよく、例えば、ユーザが何らかの文字を入力し損ねたかのように追加の文字を加え、或いはユーザが余計な文字を入力したかのように文字を無視することができる。入力シーケンス意図構造16を通じた単一の経路を各予測18によって識別し、入力イベントとターゲットの間に関連性を形成できるようにしなければならない。各ターゲットは、言語に応じて、ターゲットマッピング段3においてワードフラグメントマップにより一意の1又はそれ以上のワードフラグメントに既にマッピングされている。さらに、好ましい実施形態では、入力シーケンス意図構造16が、ワードフラグメントのターゲット及び入力イベントへのタグ付けを記憶する。従って、予測器4は、ワードフラグメントに対応するターゲットをタグ付けすることを通じて、予測の構築に使用したターゲットを追跡するので、予測の選択により、入力イベント10とターゲットの間の対応性がもたらされる。アンマッピングが逆マッピングを含む実施形態では、分離機構が、選択した予測20をワードフラグメントの組み合わせに分離し、ワードフラグメントマップを用いてワードフラグメントを対応するターゲットに逆マッピングする。その後、各ターゲットをそれぞれの入力イベント10とペアにする。
システムは、入力モデル更新器5も含む。入力モデル更新器5は、選択イベント20に応答して入力イベントとターゲットの対応14を受け取る。選択イベント20は、ユーザが入力しようとしていたターゲットを識別し、従って予測器4によりターゲットを入力イベント10と一致できるようにする。入力モデル更新器5は、好ましくは(メモリ使用量及び効率性のために)学習アルゴリズムの増分変化を用いて適当なモデルを更新する。入力モデル更新器5は、仮想キーボード1上の各選択イベント20に応答して、複数のモデルに増分的学習更新ルールを適用する。入力は、ターゲットとペアにされた入力位置の組{(x,c)}i=1..kであり、これらの各々を単一のターゲットcに対し単一のトレーニングポイントxとして使用することができる。事前ハイパーパラメータ及び学習パラメータは全て固定値に設定され、これらにより初期ターゲット位置及び予想精度が設定されるとともに、学習を行う速度が制御される。各モデルは、単独で考慮することができる。これにより、トレーニングデータにラベル付けを行う必要性が生じ、すなわち入力イベントはターゲットラベルとの関連性を必要とする。ラベル付けは、入力イベント10及びターゲットのストリームであるデータでは行われず、従って選択イベント20から推測しなければならない。上述したように、入力イベント10をターゲットに関連付ける1つの方法は、入力シーケンス意図構造16内でワードフラグメントにこれらのターゲット及び入力イベント10をタグ付けすることである。予測が選択されると、予測を構成するワードフラグメントが分かる。従って、ワードフラグメントにタグ付けされたターゲットを入力イベントとペアにして、ラベル付けされたトレーニングデータを提供することができる。或いは、ターゲットマッピング段3において、選択された予測のターゲットにワードフラグメントを逆マッピングすることにより、これらのターゲットを求めることができる。その後、このようにして求めたターゲットを入力イベント10とペアにすることができる。
従って、本発明は、入力イベントを所与としてユーザがどの文字を入力する予定であるかをより正確に予測し、従ってより正確なテキスト予測を行うことができるシステムを提供するために、複数のターゲットのユーザ入力イベントをモデル化してこれらのモデルをユーザ入力で更新するシステムを提供する。
ここで、本システムの使用法について非限定的な例として説明する。ユーザは、入力を行うことにより、例えばタッチセンサ式キーボード1上のある位置にタッチすることにより、仮想キーボード1の連続座標系と相互作用する。ユーザは、キーボード1上に表示されたターゲットを入力する意図でキーボード1上の位置にタッチする。キーボード1は、(本例ではキーボード上のタッチの位置を表すデカルト座標である)入力イベント10のストリームを構築し、これが入力確率生成器2に転送される。
入力確率生成器2は、ターゲットシーケンス意図構造12を生成又は更新する。キーボードのターゲットが文字を表す場合、ターゲットシーケンス意図構造12は、ユーザが画面にタッチした時に入力しようとしていた可能性が最も高い文字に対応する1又はそれ以上の文字を含む。文字の各々には、ユーザがその画面の位置にタッチした時にその文字を入力しようとしていた確率、及び入力イベント10へのタグが関連付けられる。入力確率生成器2は、ターゲットシーケンス意図構造12を生成するために、各文字の関連するモデルに入力イベント10について問い合わせることにより、ユーザが1又はそれ以上の文字の各々を入力しようとしていた確率を計算する。上述したように、各モデルは、この文字に関するユーザのキーボードとの対話履歴をモデル化し、すなわちこの文字に関するユーザの以前の入力イベントをモデル化したものである。従って、入力確率生成器2は、経験的に(10−4などの)所定のレベルに設定された、又はユーザによる試行により決定された閾値確率値を上回る関連する確率を有する文字を保持することが好ましい。
ターゲットシーケンス意図構造12は、ターゲットシーケンス意図構造12の各文字を、関連する確率を有する1又はそれ以上のワードフラグメントにマッピングするワードフラグメントマップに転送され、これにより入力シーケンス意図構造16が生成される。これらの1又はそれ以上の文字の各文字は、1又はそれ以上のワードフラグメントに個別にマッピングされ、これらのワードフラグメントには、そのワードフラグメントが由来する文字がタグ付けされる。ワードフラグメントに関連する確率は、文字に関連する確率と同じである必要はない。例えば、マッピング時には、文字に関連する確率に、ワードフラグメントに依存する付加的係数を乗算することができる。ワードフラグメントマップは、システムのメモリに記憶された固定マップとすることができる。このマップは使用する言語によって異なり、例えば、選択した言語で句読点が異なり、アクセントを置く文字、ウムラウトなどが、システムの選択された言語に依存するワードフラグメントの特徴になることもある。
ワードフラグメントマップは、ワードフラグメントにマッピングされたターゲットを含み、ワードフラグメントには、ワードフラグメントが由来するターゲットがタグ付けされることが好ましい。
入力シーケンス意図構造16は、ワードフラグメント、及び一連の入力イベント10に対応する確率を含み、ワードフラグメントは、ワードフラグメントが由来する文字及び入力イベントにタグ付けされることが好ましい。予測器4は、各予測18に関して入力シーケンス意図構造16を通じた単一の経路を識別することにより、すなわちワードフラグメントを通過し、入力イベント10の各々に関して単一のワードフラグメントを含む予測シーケンスを生成することにより、入力シーケンス意図構造16からいくつかの予測18を生成する。入力シーケンス意図構造16を通じた単一の経路を識別することにより、入力イベント10とターゲットの間の関連性14を形成することができる。予測器は、入力シーケンス意図構造16を通じた最も確率の高い複数の経路を考慮し、任意にこの経路が接頭辞である全ての語句も考慮する。次に、これをn−gram言語モデルに投入して予測候補の順序付けを行う。この処理の実施は、国際特許出願公開第2010/112841号に記載されており、この特許出願はその全体が引用により本明細書に組み入れられる。
仮想キーボード1は、予測器が生成した予測を表示するように構成することができる。正しい予測の選択20は、ユーザに表示された所与の予測のユーザ選択、又はシステムによる最も確率の高い予測の自動承認のいずれかによって行うことができる。予測器4は、入力シーケンス意図構造16を介してどのワードフラグメントが予測の構築に使用されるかを追跡し、ユーザ選択20時に入力イベント10をこれらのターゲットと一致14させるように構成される。入力シーケンス意図構造16が、ターゲットをタグ付けられたワードフラグメントを含む場合、予測器4は、ターゲットタグを追跡して、入力イベント10をこれらのターゲットと一致させることが入力イベント10をこれらのターゲットとペアにすることを含むようにするよう構成される。或いは、これらのターゲットを入力イベント10とペアにする前に、ターゲットマッピング段3における逆マッピングにより、最初にワードフラグメントをその対応するターゲットと一致させる。これらのターゲットとペアになった入力イベント10を入力モデル更新器5に転送し、これによりモデルセット6の関連するモデルが更新される。
ここで、システムの機能を説明するために、ある例について考察する。この例では、ユーザが仮想キーボード1(qwertyレイアウト)上で「it’s」という単語を入力しようとしている。
ユーザは、最初の文字である「i」に最も近い画面にタッチする。仮想キーボード1は、この位置を表す入力イベント10(デカルト座標など)を生成し、これを入力確率生成器2に送信する。
入力確率生成器2は、ターゲットモデル6を全て評価し、これらのモデルがこの入力イベントに対応する可能性がどれほどであるかを計算する。入力確率生成器は、(経験的に又はユーザによる試行を通じて設定された)所定の閾値を上回る確率を有するターゲットのみを保持することにより、低確率のターゲットをフィルタ除去する。本例では、結果として得られるターゲットシーケンス意図構造12が、[(@I, 1.0),(@O,0.2),(@U, 0.2),(@K,0.15),(@J,0.1)]であり、この場合の@Iは、文字「i」に対応するターゲットである。
ターゲットマッピング段3は、例えば、
のように、各ターゲットを複数の別のワードフラグメントに変換する。ターゲットマッピング段3は、ターゲットをワードフラグメントにマッピングし、各ワードフラグメントにその由来となるターゲットをタグ付けする。結果として得られる入力シーケンス意図構造16は、
となる。
次に、予測器4は、この単語のコンテキスト及びいずれかの利用可能な単語のコンテキストを使用して、ユーザにフィードバックするための予測18を生成する。予測器4は、例えば、[“I”,“I’m”,“in”]と予測する可能性がある。
次に、ユーザは、2番目の文字「t」からかなり遠く、実際には「r」のほうに近い第2のタッチイベントを行う。仮想キーボード1は、両方のタッチイベント10(「i」及び「t」)を入力確率生成器2に送信する。
ここで、入力確率生成器2は、一連の確率ベクトル{[(@I,1.0),(@O,0.2),...],[(@R,0.8),(@T,0.6),(@E,0.1),...]}を生成する。
ターゲットマッピング段3をシーケンス内の各イベントに個別に適用して、ワードフラグメントをこれらのターゲットにタグ付けし、
とする。
予測器4は、予測18[“it”,“it’s”,“or”]を形成し、これらがユーザに表示される。これらの予測は、仮想キーボードによって表示することができる。ユーザは、予測「it’s」を選択する。仮想キーボード1は、選択イベント20を作成し、予測器は、2つのタッチイベント10を予測18のターゲットと一致させる。システムは、ワードフラグメントにこれらのターゲット及び入力イベントをタグ付けすることを通じて、各予測を構成するターゲット及び入力イベントのリストを追跡するので、アンマッピング段は、タッチ位置とターゲットの自明のペアリングである。
予測器4は、ユーザが画面にタッチした位置をこれらのターゲットとペアにする(タッチ1→@I)、(タッチ2→@T)。次に、入力モデル更新器5が、(第1のタッチイベントが非常に正確であったという理由で)密接である可能性が高い@Iのモデル、及び(第2のタッチイベントがそれほど正確ではなかったという理由で)密接である可能性が低い@Tのモデルを更新する。
上記の例は、単一の文字を表すターゲットに関する。しかしながら、ターゲットは、複数の文字を表すこともできる。ターゲットが、A/B/Cなどの複数の文字を表す場合、このターゲットのモデルは、ターゲットA/B/Cに対応するユーザ入力イベントをモデル化する。選択された予測18がA、B又はCを含む場合、ターゲットA/B/Cが入力イベントに再マッピングされる。
本方法は、ユーザの仮想キーボードとの対話履歴をモデル化することにより、ユーザが画面にタッチした時に入力しようとしていた文字を正確に予測することができる。
本説明は一例にすぎず、説明した実施形態には、特許請求の範囲に定義する本発明の範囲から逸脱することなく変更及び修正を加えることができると理解されたい。
1 仮想キーボード
2 入力確率生成器
3 ターゲットマッピング段
4 予測器
5 入力モデル更新器
6 ターゲットモデルセット
10 入力イベント
12 ターゲットシーケンス意図構造
14 入力−ターゲットの対応
16 入力シーケンス意図構造
18 予測
20 選択イベント

Claims (21)

  1. ディスプレイと、
    プロセッサと、
    1つまたは複数のプロセッサによって実行されると、当該1つまたは複数のプロセッサを、
    前記ディスプレイに複数のターゲットを出力することであって、前記複数のターゲットのそれぞれは選択可能な情報項目を表す、ことと、
    前記ディスプレイ上の前記複数のターゲットのうちの少なくとも1つのターゲットの選択に関連するユーザ入力イベントを受信することであって、前記ユーザ入力イベントは前記ディスプレイ上の位置に対応する、ことと、
    前記ユーザ入力イベントに応じて前記複数のターゲットのうち最も確率の高いn個のターゲットを生成することであって、前記最も確率の高いn個のターゲットは複数のモデルを用いて生成され、前記最も確率の高いn個のターゲットは前記ユーザ入力イベントを受信した前記ディスプレイ上の位置に隣接し、前記複数のモデルのそれぞれは、前記複数のターゲットのうちの前記ユーザ入力イベントを受信した前記ディスプレイ上の位置に隣接した所与の1つと関連付けられ、かつ、ユーザが前記複数のターゲットのうちの当該所与の1つを選択しようとしていたときの前記複数のターゲットのうちの当該所与の1つに対応する、以前のユーザ入力イベントの位置をモデル化し、モデルの選択は、複数のサンプルにわたってデータ尤度を評価することによって実行される、ことと
    を行うように構成する命令を格納するメモリと
    を備えるシステム。
  2. 前記命令は、前記1つまたは複数のプロセッサによって実行されると、当該プロセッサを、
    前記n個のターゲットのそれぞれに対して前記ユーザ入力イベントが当該ターゲットの選択に対応する確率を前記複数のモデルを使用して生成するように構成する、請求項1に記載のシステム。
  3. 前記ディスプレイは、仮想キーボードであり、前記ユーザ入力イベントは、前記仮想キーボード上の位置に対応する、請求項1に記載のシステム。
  4. 各モデルは、前記複数のターゲットのうちの前記所与の1つに対応する前記ユーザの以前の入力イベントの位置をモデル化した分布である、請求項1に記載のシステム。
  5. 前記1つまたは複数のプロセッサによって実行されると、当該プロセッサを、
    前記n個のターゲットの各々を、関連する確率値を有する1又はそれ以上のワードフラグメントにマッピングするように構成する命令をさらに備える、請求項2に記載のシステム。
  6. 各ワードフラグメントに、該ワードフラグメントが対応する前記ターゲットが前記1つまたは複数のプロセッサによってタグ付けされる、請求項5に記載のシステム。
  7. 前記1つまたは複数のプロセッサによって実行されると、当該プロセッサを、
    前記ワードフラグメント及びその関連する確率に基づいて、確率値を有するテキスト予測を生成するように構成された命令をさらに備える、請求項5に記載のシステム。
  8. テキスト予測の選択時に、前記1つまたは複数のプロセッサによって、当該テキスト予測のうちの少なくとも1つのターゲットを、対応する入力イベントと一致させる、請求項7に記載のシステム。
  9. 前記テキスト予測の前記ターゲットは、前記ワードフラグメントを対応するターゲットに逆マッピングし、かつ、前記対応するターゲットと前記対応する入力イベントとをペアにすることによって、対応する入力イベントと一致される、請求項8に記載のシステム。
  10. 前記テキスト予測の選択は、前記テキスト予測の選択、又は最も確率の高い予測の前記1つまたは複数のプロセッサによる自動選択を含む、請求項8に記載のシステム。
  11. 前記命令は、前記1つまたは複数のプロセッサによって実行されると、当該プロセッサを、
    あるモデルに対応する前記ターゲットへの入力イベントのマッピングを反映すべく前記モデルを更新するように構成する、請求項9に記載のシステム。
  12. 1つまたは複数のプロセッサを用いて、ディスプレイに複数のターゲットを出力することであって、前記複数のターゲットのそれぞれは選択可能な情報項目を表す、ことと、
    前記ディスプレイ上の前記複数のターゲットのうちの少なくとも1つのターゲットの選択に関連するユーザ入力イベントを受信することであって、前記ユーザ入力イベントは前記ディスプレイ上の位置に対応する、ことと、
    前記1つまたは複数のプロセッサを用いて、前記ユーザ入力イベントに応じて前記複数のターゲットのうち最も確率の高いn個のターゲットを生成することであって、前記n個のターゲットは複数のモデルを用いて生成され、前記n個のターゲットは前記ユーザ入力イベントを受信した前記ディスプレイ上の位置に隣接し、前記複数のモデルのそれぞれは、前記複数のターゲットのうちの前記ユーザ入力イベントを受信した前記ディスプレイ上の位置に隣接した所与の1つと関連付けられ、かつ、ユーザが前記複数のターゲットのうちの当該所与の1つを選択しようとしていたときの前記複数のターゲットのうちの当該所与の1つに対応する、以前のユーザ入力イベントの位置をモデル化し、モデルの選択は、複数のサンプルにわたってデータ尤度を評価することによって実行される、こととを含む、方法。
  13. 前記1つまたは複数のプロセッサと前記複数のモデルとを用いて、前記n個のターゲットのそれぞれに対して前記ユーザ入力イベントが当該ターゲットの選択に対応する確率を生成することをさらに含む、請求項12に記載の方法。
  14. 前記1つまたは複数のプロセッサを用いて、前記n個のターゲットの各々を、関連する確率値を有する1又はそれ以上のワードフラグメントにマッピングすることをさらに含む、請求項13に記載の方法。
  15. 前記1つまたは複数のプロセッサを用いて、前記1つまたはそれ以上のワードフラグメント及びその関連する確率から、確率値を有するテキスト予測を生成することをさらに含む、請求項14に記載の方法。
  16. テキスト予測の選択を受信することと、
    前記1つまたは複数のプロセッサを用いて、前記テキスト予測のうちの少なくとも1つのターゲットを、対応する入力イベントと一致させることと
    をさらに含む、請求項15に記載の方法。
  17. 前記入力イベントが所与のターゲットと一致した時に、前記1つまたは複数のプロセッサを用いて、前記所与のターゲットに関連付けられた前記モデルを更新することをさらに含む、請求項16に記載の方法。
  18. デバイスによって実行され、前記デバイス上のタッチスクリーンインタフェースを動作するためのプログラムステップを実行する、命令のプログラムを格納するコンピュータ読み取り可能な記憶媒体であって、前記プログラムステップは、
    前記タッチスクリーンインタフェースに複数のターゲットを表示するステップであって、前記複数のターゲットのそれぞれは選択可能な情報項目を表す、ステップと、
    前記タッチスクリーンインタフェース上のタッチ位置に対応するユーザ入力イベントを受信するステップであって、前記ユーザ入力イベントは前記タッチスクリーンインタフェース上の位置に対応する、ステップと、
    前記ユーザ入力イベントに応じて前記複数のターゲットのうち最も確率の高いn個のターゲットを生成するステップであって、前記n個のターゲットは複数のモデルを用いて生成され、前記n個のターゲットは前記ユーザ入力イベントを受信した前記ディスプレイ上の位置に隣接し、前記複数のモデルのそれぞれは、前記複数のターゲットのうちの前記ユーザ入力イベントを受信した前記ディスプレイ上の位置に隣接した所与の1つと関連付けられ、かつ、ユーザが前記複数のターゲットのうちの当該所与の1つを選択しようとしていたときの前記複数のターゲットのうちの当該所与の1つに対応する、以前のユーザ入力イベントの位置をモデル化し、モデルの選択は、複数のサンプルにわたってデータ尤度を評価することによって実行される、ステップと
    を含む、コンピュータ読み取り可能な記憶媒体。
  19. 前記複数のモデルを用いて、前記n個のターゲットのそれぞれに対して前記ユーザ入力イベントが当該ターゲットの選択に対応する確率を生成する、プログラムステップをさらに含む、請求項18に記載のコンピュータ読み取り可能な記憶媒体。
  20. 前記最も確率の高いn個のターゲット及びその関連する確率から、テキスト予測を生成する、プログラムステップをさらに含む、請求項19に記載のコンピュータ読み取り可能な記憶媒体。
  21. 前記タッチスクリーンインタフェースに1つまたは複数のワード予測を前記確率の高いターゲットに基づいて出力するステップと、
    前記1つまたは複数のワード予測から1つのワード予測の選択を受信するステップと、
    前記テキスト予測のうちの少なくとも1つのターゲットを、対応する入力イベントと一致させるステップと、
    前記少なくとも1つの対応する入力イベントに一致した少なくとも1つの前記ターゲットに関連付けられた少なくとも1つの前記モデルを更新するステップと
    のプログラムステップをさらに含む、請求項20に記載のコンピュータ読み取り可能な記憶媒体。
JP2014510874A 2011-05-16 2012-05-08 ユーザ入力予測 Active JP6492238B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1108200.5 2011-05-16
GBGB1108200.5A GB201108200D0 (en) 2011-05-16 2011-05-16 User input prediction
PCT/GB2012/051006 WO2012156686A1 (en) 2011-05-16 2012-05-08 User input prediction

Publications (3)

Publication Number Publication Date
JP2014517602A JP2014517602A (ja) 2014-07-17
JP2014517602A5 JP2014517602A5 (ja) 2015-06-18
JP6492238B2 true JP6492238B2 (ja) 2019-04-03

Family

ID=44260624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014510874A Active JP6492238B2 (ja) 2011-05-16 2012-05-08 ユーザ入力予測

Country Status (7)

Country Link
US (3) US9639266B2 (ja)
EP (1) EP2710448B1 (ja)
JP (1) JP6492238B2 (ja)
KR (1) KR101855553B1 (ja)
CN (1) CN103703433B (ja)
GB (1) GB201108200D0 (ja)
WO (1) WO2012156686A1 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201003628D0 (en) * 2010-03-04 2010-04-21 Touchtype Ltd System and method for inputting text into electronic devices
CN107273022A (zh) * 2012-05-17 2017-10-20 联发科技(新加坡)私人有限公司 自动纠错方法及装置和移动终端
US8484573B1 (en) * 2012-05-23 2013-07-09 Google Inc. Predictive virtual keyboard
US9298274B2 (en) * 2012-07-20 2016-03-29 Microsoft Technology Licensing, Llc String predictions from buffer
US9035884B2 (en) 2012-10-17 2015-05-19 Nuance Communications, Inc. Subscription updates in multiple device language models
GB201223450D0 (en) 2012-12-27 2013-02-13 Touchtype Ltd Search and corresponding method
GB201322037D0 (en) * 2013-12-12 2014-01-29 Touchtype Ltd System and method for inputting images/labels into electronic devices
KR102043148B1 (ko) * 2013-02-19 2019-11-11 엘지전자 주식회사 이동 단말기 및 그의 터치 좌표 예측 방법
US9299042B2 (en) * 2013-08-09 2016-03-29 Raytheon Company Predicting edges in temporal network graphs described by near-bipartite data sets
US20150089435A1 (en) * 2013-09-25 2015-03-26 Microth, Inc. System and method for prediction and recognition of input sequences
US20150153949A1 (en) * 2013-12-03 2015-06-04 Google Inc. Task selections associated with text inputs
GB201321927D0 (en) 2013-12-11 2014-01-22 Touchtype Ltd System and method for inputting text into electronic devices
JP6548358B2 (ja) * 2014-04-04 2019-07-24 タッチタイプ リミテッド マルチ入力ターゲットに関連付けられた1つ又はそれ以上の入力を入力するためのシステム及び方法
CN106415531A (zh) * 2014-04-28 2017-02-15 谷歌公司 用于输入法编辑器的特定于场境的语言模型
CN105095182B (zh) 2014-05-22 2018-11-06 华为技术有限公司 一种回复信息推荐方法及装置
US9406025B2 (en) 2014-06-04 2016-08-02 International Business Machines Corporation Touch prediction for visual displays
US10025427B2 (en) * 2014-06-27 2018-07-17 Microsoft Technology Licensing, Llc Probabilistic touch sensing
GB201418402D0 (en) * 2014-10-16 2014-12-03 Touchtype Ltd Text prediction integration
US20170003872A1 (en) * 2015-07-02 2017-01-05 International Business Machines Corporation Touch-encoded keyboard
US10786182B2 (en) 2015-09-09 2020-09-29 The Joan and Irwin Jacobs Technion-Cornell Institute System and method for passive remote monitoring of patients' fine motor behavior
US10184974B2 (en) 2015-09-22 2019-01-22 Raytheon Company Systems and methods for determining whether a circuit is operating properly
US10802711B2 (en) * 2016-05-10 2020-10-13 Google Llc Volumetric virtual reality keyboard methods, user interface, and interactions
CN107544696B (zh) * 2016-06-24 2020-11-17 华为终端有限公司 压力触控的软键盘输入方法及终端
US10628522B2 (en) * 2016-06-27 2020-04-21 International Business Machines Corporation Creating rules and dictionaries in a cyclical pattern matching process
CN106293128B (zh) * 2016-08-12 2019-06-28 清华大学 盲式文字输入方法、盲式文字输入装置和计算装置
US10061435B2 (en) * 2016-12-16 2018-08-28 Nanning Fugui Precision Industrial Co., Ltd. Handheld device with one-handed input and input method
US11810026B2 (en) * 2018-04-19 2023-11-07 Seacoast Banking Corporation of Florida Predictive data analysis using value-based predictive inputs
CN108829248B (zh) * 2018-06-01 2020-11-20 中国科学院软件研究所 一种基于用户表现模型矫正的移动目标选择方法及系统
CN109063431B (zh) * 2018-06-21 2021-10-22 西安理工大学 加权击键特征曲线差异度的用户身份识别方法
CN112966014A (zh) * 2019-12-12 2021-06-15 阿里巴巴集团控股有限公司 查找目标对象的方法和装置
US11640294B2 (en) * 2020-04-29 2023-05-02 Microsoft Technology Licensing, Llc. Machine-generated examples of command-line commands with parameter values
US11947743B2 (en) 2020-08-18 2024-04-02 Razer (Asia-Pacific) Pte. Ltd. Apparatus and method for controlling a pointer on a screen of an electronic device
CN112036955B (zh) * 2020-09-07 2021-09-24 贝壳找房(北京)科技有限公司 用户识别方法和装置、计算机可读存储介质、电子设备
US11347352B2 (en) 2020-10-25 2022-05-31 Google Llc Virtual keyboard error correction based on a dynamic spatial model
KR20220084408A (ko) * 2020-10-25 2022-06-21 구글 엘엘씨 동적 공간 모델에 기초하여 가상 키보드 오류 수정
CN112612393B (zh) * 2021-01-05 2022-08-19 杭州慧钥医疗器械科技有限公司 界面功能的交互方法及装置
CN112987940B (zh) * 2021-04-27 2021-08-27 广州智品网络科技有限公司 一种基于样本概率量化的输入方法、装置和电子设备
US11899852B2 (en) 2021-05-06 2024-02-13 Samsung Electronics Co., Ltd. Electronic device and operation method thereof

Family Cites Families (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4559598A (en) 1983-02-22 1985-12-17 Eric Goldwasser Method of creating text using a computer
US4783758A (en) 1985-02-05 1988-11-08 Houghton Mifflin Company Automated word substitution using numerical rankings of structural disparity between misspelled words & candidate substitution words
US4725694A (en) 1986-05-13 1988-02-16 American Telephone And Telegraph Company, At&T Bell Laboratories Computer interface device
US5317507A (en) 1990-11-07 1994-05-31 Gallant Stephen I Method for document retrieval and for word sense disambiguation using neural networks
US5612690A (en) 1993-06-03 1997-03-18 Levy; David Compact keypad system and method
US5973676A (en) 1993-06-30 1999-10-26 Kabushiki Kaisha Toshiba Input apparatus suitable for portable electronic device
US5574482A (en) 1994-05-17 1996-11-12 Niemeier; Charles J. Method for data input on a touch-sensitive screen
US5745719A (en) 1995-01-19 1998-04-28 Falcon; Fernando D. Commands functions invoked from movement of a control input device
US5748512A (en) * 1995-02-28 1998-05-05 Microsoft Corporation Adjusting keyboard
WO1997005541A1 (en) 1995-07-26 1997-02-13 King Martin T Reduced keyboard disambiguating system
US5818437A (en) 1995-07-26 1998-10-06 Tegic Communications, Inc. Reduced keyboard disambiguating computer
JPH10154144A (ja) 1996-11-25 1998-06-09 Sony Corp 文章入力装置及び方法
US5953541A (en) 1997-01-24 1999-09-14 Tegic Communications, Inc. Disambiguating system for disambiguating ambiguous input sequences by displaying objects associated with the generated input sequences in the order of decreasing frequency of use
US6005495A (en) 1997-02-27 1999-12-21 Ameritech Corporation Method and system for intelligent text entry on a numeric keypad
PT1018069E (pt) 1997-09-25 2002-12-31 Tegic Communications Inc Sistema de resolucao de ambiguidade para teclado reduzido
JPH11143486A (ja) 1997-11-10 1999-05-28 Fuji Xerox Co Ltd 話者適応装置および方法
US7614008B2 (en) 2004-07-30 2009-11-03 Apple Inc. Operation of a computer with touch screen interface
JPH11272386A (ja) 1998-03-18 1999-10-08 Yazaki Corp 情報端末装置
US7712053B2 (en) 1998-12-04 2010-05-04 Tegic Communications, Inc. Explicit character filtering of ambiguous text entry
GB2347247A (en) 1999-02-22 2000-08-30 Nokia Mobile Phones Ltd Communication terminal with predictive editor
GB2388938B (en) 1999-02-22 2004-03-17 Nokia Corp A communication terminal having a predictive editor application
US7030863B2 (en) 2000-05-26 2006-04-18 America Online, Incorporated Virtual keyboard system with automatic correction
US7750891B2 (en) 2003-04-09 2010-07-06 Tegic Communications, Inc. Selective input system based on tracking of motion parameters of an input device
US7610194B2 (en) 2002-07-18 2009-10-27 Tegic Communications, Inc. Dynamic database reordering system
CA2392446C (en) 1999-05-27 2009-07-14 America Online Incorporated Keyboard system with automatic correction
US6654733B1 (en) * 2000-01-18 2003-11-25 Microsoft Corporation Fuzzy keyboard
US7177797B1 (en) 2000-08-31 2007-02-13 Semantic Compaction Systems Linguistic retrieval system and method
US6820075B2 (en) 2001-08-13 2004-11-16 Xerox Corporation Document-centric system with auto-completion
US7149550B2 (en) 2001-11-27 2006-12-12 Nokia Corporation Communication terminal having a text editor application with a word completion feature
US7075520B2 (en) 2001-12-12 2006-07-11 Zi Technology Corporation Ltd Key press disambiguation using a keypad of multidirectional keys
US7083342B2 (en) 2001-12-21 2006-08-01 Griffin Jason T Keyboard arrangement
US7493253B1 (en) 2002-07-12 2009-02-17 Language And Computing, Inc. Conceptual world representation natural language understanding system and method
US7151530B2 (en) * 2002-08-20 2006-12-19 Canesta, Inc. System and method for determining an input selected by a user through a virtual interface
WO2004049192A2 (en) 2002-11-28 2004-06-10 Koninklijke Philips Electronics N.V. Method to assign word class information
US7251367B2 (en) 2002-12-20 2007-07-31 International Business Machines Corporation System and method for recognizing word patterns based on a virtual keyboard layout
US7098896B2 (en) * 2003-01-16 2006-08-29 Forword Input Inc. System and method for continuous stroke word-based text input
US7453439B1 (en) 2003-01-16 2008-11-18 Forward Input Inc. System and method for continuous stroke word-based text input
US7475010B2 (en) 2003-09-03 2009-01-06 Lingospot, Inc. Adaptive and scalable method for resolving natural language ambiguities
JP4559100B2 (ja) 2004-03-10 2010-10-06 シンジェンタ ジャパン株式会社 害虫から樹木類への加害を防止するための樹幹注入用組成物及び方法
US7860314B2 (en) * 2004-07-21 2010-12-28 Microsoft Corporation Adaptation of exponential models
CN100527057C (zh) * 2004-08-05 2009-08-12 摩托罗拉公司 字符预测方法及使用该方法的电子设备
US7694231B2 (en) 2006-01-05 2010-04-06 Apple Inc. Keyboards for portable electronic devices
US20070152980A1 (en) 2006-01-05 2007-07-05 Kenneth Kocienda Touch Screen Keyboards for Portable Electronic Devices
KR100891358B1 (ko) 2005-10-20 2009-04-01 (주)트루시스템 사용자의 다음 문자열 입력을 예측하는 글자 입력 시스템및 그 글자 입력 방법
US7752152B2 (en) * 2006-03-17 2010-07-06 Microsoft Corporation Using predictive user models for language modeling on a personal device with user behavior models based on statistical modeling
US8074172B2 (en) 2007-01-05 2011-12-06 Apple Inc. Method, system, and graphical user interface for providing word recommendations
US8225203B2 (en) 2007-02-01 2012-07-17 Nuance Communications, Inc. Spell-check for a keyboard system with automatic correction
US8201087B2 (en) 2007-02-01 2012-06-12 Tegic Communications, Inc. Spell-check for a keyboard system with automatic correction
JP4803089B2 (ja) * 2007-03-28 2011-10-26 Kddi株式会社 タッチパネルによる入力装置およびその方法
CN100570583C (zh) 2007-03-30 2009-12-16 腾讯科技(深圳)有限公司 字符输出方法和装置
US8065624B2 (en) 2007-06-28 2011-11-22 Panasonic Corporation Virtual keypad systems and methods
WO2009069392A1 (ja) * 2007-11-28 2009-06-04 Nec Corporation 入力装置、サーバ、表示管理方法および記録媒体
JP5050972B2 (ja) * 2008-04-09 2012-10-17 カシオ計算機株式会社 文字入力装置
US8589149B2 (en) 2008-08-05 2013-11-19 Nuance Communications, Inc. Probability-based approach to recognition of user-entered data
WO2010035574A1 (ja) 2008-09-29 2010-04-01 シャープ株式会社 入力装置、入力方法、プログラム、および記録媒体
US8583421B2 (en) * 2009-03-06 2013-11-12 Motorola Mobility Llc Method and apparatus for psychomotor and psycholinguistic prediction on touch based device
US20100235780A1 (en) * 2009-03-16 2010-09-16 Westerman Wayne C System and Method for Identifying Words Based on a Sequence of Keyboard Events
CN101510124B (zh) 2009-03-20 2012-05-23 西安交通大学 语境相关敏感提示输入法
GB0905457D0 (en) 2009-03-30 2009-05-13 Touchtype Ltd System and method for inputting text into electronic devices
US8300023B2 (en) * 2009-04-10 2012-10-30 Qualcomm Incorporated Virtual keypad generator with learning capabilities
CN101876878A (zh) 2009-04-29 2010-11-03 深圳富泰宏精密工业有限公司 单词预测输入系统及方法
US20100315266A1 (en) * 2009-06-15 2010-12-16 Microsoft Corporation Predictive interfaces with usability constraints
US9122393B2 (en) 2009-09-30 2015-09-01 At&T Mobility Ii Llc Predictive sensitized keypad
US20110099506A1 (en) 2009-10-26 2011-04-28 Google Inc. Predictive Text Entry for Input Devices
US8648809B2 (en) * 2010-06-16 2014-02-11 International Business Machines Corporation Reconfiguration of virtual keyboard
US20120167009A1 (en) 2010-12-22 2012-06-28 Apple Inc. Combining timing and geometry information for typing correction
US20120203544A1 (en) * 2011-02-04 2012-08-09 Nuance Communications, Inc. Correcting typing mistakes based on probabilities of intended contact for non-contacted keys
CN102253929A (zh) 2011-06-03 2011-11-23 北京搜狗科技发展有限公司 一种提示用户输入字符的方法和装置
US9262076B2 (en) * 2011-09-12 2016-02-16 Microsoft Technology Licensing, Llc Soft keyboard interface

Also Published As

Publication number Publication date
US20170199664A1 (en) 2017-07-13
CN103703433A (zh) 2014-04-02
EP2710448B1 (en) 2020-07-22
WO2012156686A1 (en) 2012-11-22
US20140108994A1 (en) 2014-04-17
KR20140031315A (ko) 2014-03-12
US10416885B2 (en) 2019-09-17
US9639266B2 (en) 2017-05-02
CN103703433B (zh) 2017-10-27
GB201108200D0 (en) 2011-06-29
US11256415B2 (en) 2022-02-22
US20200019308A1 (en) 2020-01-16
EP2710448A1 (en) 2014-03-26
JP2014517602A (ja) 2014-07-17
KR101855553B1 (ko) 2018-05-04

Similar Documents

Publication Publication Date Title
JP6492238B2 (ja) ユーザ入力予測
US11614862B2 (en) System and method for inputting text into electronic devices
CN107836000B (zh) 用于语言建模和预测的改进的人工神经网络方法、电子设备
US11416679B2 (en) System and method for inputting text into electronic devices
US10613746B2 (en) System and method for inputting text
US9189472B2 (en) System and method for inputting text into small screen devices
US10402493B2 (en) System and method for inputting text into electronic devices
JP5731281B2 (ja) 文字入力装置およびプログラム
KR102109219B1 (ko) 사용자 데이터 입력 예측
CN110023930B (zh) 利用神经网络和在线学习的语言数据预测
JP2014010688A (ja) 入力文字推定装置およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150421

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150421

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160309

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20160421

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20160421

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170201

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170803

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171128

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20171204

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20180302

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20181018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181018

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20181018

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20181220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20181220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190221

R150 Certificate of patent or registration of utility model

Ref document number: 6492238

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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