[go: up one dir, main page]

JP5362095B2 - インプットメソッドエディタ - Google Patents

インプットメソッドエディタ Download PDF

Info

Publication number
JP5362095B2
JP5362095B2 JP2012500034A JP2012500034A JP5362095B2 JP 5362095 B2 JP5362095 B2 JP 5362095B2 JP 2012500034 A JP2012500034 A JP 2012500034A JP 2012500034 A JP2012500034 A JP 2012500034A JP 5362095 B2 JP5362095 B2 JP 5362095B2
Authority
JP
Japan
Prior art keywords
node
grapheme
nodes
graph
writing system
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
JP2012500034A
Other languages
English (en)
Other versions
JP2012521025A (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 JP2012521025A publication Critical patent/JP2012521025A/ja
Application granted granted Critical
Publication of JP5362095B2 publication Critical patent/JP5362095B2/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
    • G06F3/0233Character input methods
    • 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/018Input/output arrangements for oriental characters
    • 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
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/53Processing of non-Latin text

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Document Processing Apparatus (AREA)

Description

本明細書は、入力方法に関する。
書記体系は、記号(例えば、文字または書記素)を使用して、言語の音声を表す。書記体系における記号のコレクションは、筆記体と呼ばれることが可能である。例えば、1つまたは複数のローマ筆記体におけるローマ字のコレクションを含むラテン書記体系が、英語を表すのに使用されることが可能である。ラテン書記体系は、ブロック体ローマ字(例えば、大文字の文字「B」)、活字体ローマ字(装飾のない文字「b」)、および草書体ローマ字(例えば、草書体文字「b」)を含むことが可能である。文字「b」の各視覚的表現は、ラテン筆記体系における同一の書記素を表す。
別の例として、中国語は、1つまたは複数の書記体系によって表されることが可能である。例えば、中国語は、第1の書記体系、例えば、ピンイン(つまり、ローマ字表記された中国語)によって表されることが可能である。別の例として、中国語は、第2の書記体系、例えば、Bopomofoまたは注音字母(「注音」)を使用して表されることが可能である。さらに別の例として、中国語は、第3の書記体系、例えば、漢字を使用して表されることが可能である。特に、ピンインおよび注音は、漢字を表すための音声体系である。
一部の入力方法は、ユーザが、第1の書記体系でテキストを入力し、第2の書記体系で出力候補をもたらすことを可能にする。例えば、ピンイン入力法は、ユーザがピンイン文字列を入力することを許し、漢字で出力候補を生成することができる。ピンイン文字列は、1つまたは複数のピンイン音節を含むことが可能である。ピンイン音節は、第1の副音節(例えば、音節の一部分)に続いて第2の副音節を含むことが可能である。各ピンイン音節は、複数の漢字に対応し、さらに各副音節は、1つまたは複数のローマ字を含む。例えば、ピンイン音節「zhang」が、第1の副音節「zh」と第2の副音節「ang」に分けられることが可能である。さらに、副音節「zh」と副音節「ang」はともに、他の副音節と組み合わされて、他のピンイン音節が作られることも可能である。例えば、副音節「zh」と副音節「a」が組み合わされて、ピンイン音節「zha」が作られることが可能であり、さらに副音節「t」が副音節「ang」が組み合わされて、ピンイン音節「tang」が作られることが可能である。
出力候補を生成することは、例えば、入力テキストをセグメント化することによる、入力テキストの中の形態素(例えば、音節)の識別を要求することが可能である。
本明細書は、入力方法と関係する技術を説明する。
一般に、本明細書で説明される主題の一態様は、第1の書記体系における第1の書記素を受け取るアクションと、第1の書記体系における書記素の書記素グラフを使用して、第2の書記体系における第1の形態素の第1の書記体系における第1のnグラム表現を識別し、第1のnグラム表現は、第1の書記素を含むアクションと、第1のnグラム表現を使用して、形態素グラフの中から1つまたは複数の第1のノードを探し出し、ただし、形態素グラフの中から探し出されたそれぞれの第1のノードは、第2の書記体系における1つまたは複数の第1の語彙項目を表し、1つまたは複数の第1の語彙項目のそれぞれは、第1のnグラム表現によって表されるアクションと、1つまたは複数の第1の語彙項目のそれぞれに関連付けられた第1のスコアに基づいて、1つまたは複数の第1の語彙項目から或る第1の語彙項目を選択するアクションと、その第1の語彙項目を、ユーザデバイス上で表示されるように供給するアクションとを含む方法として実現されることが可能である。この態様の他の実施形態は、対応するシステム、装置、およびコンピュータプログラム製品を含む。
これら、およびその他の実施形態は、オプションとして、以下の特徴の1つまたは複数を含むことが可能である。第1の書記素は、第2の書記体系における或る音節の一部分だけを表す。この方法は、第1の書記体系における第2の書記素を受け取ること、第1の書記体系における書記素の書記素グラフを使用して、第2の書記体系における第2の形態素の第1の書記体系における第2のnグラム表現を識別し、ただし、第2のnグラム表現は、第2の書記素を含むこと、第2のnグラム表現を使用して、形態素グラフの中から1つまたは複数の第2のノードを探し出し、ただし、形態素グラフの中から探し出されたそれぞれの第2のノードは、第2の書記体系における1つまたは複数の第2の語彙項目を表し、1つまたは複数の第2の語彙項目のそれぞれは、第2のnグラム表現によって表されること、第3の語彙項目と第4の語彙項目の1つまたは複数の置換を生成し、第3の語彙項目は、1つまたは複数の第1の語彙項目から選択され、さらに第4の語彙項目は、1つまたは複数の第2の語彙項目から選択されること、1つまたは複数の置換のそれぞれに関連する第2のスコアに基づき、1つまたは複数の置換から或る置換を選択し、ただし、選択された置換は、第3の語彙項目に続いて第4の語彙項目を含むこと、選択された第1の語彙項目の第1のスコアと選択された置換の第2のスコアを比較すること、およびこの比較に基づいて、選択された第1の語彙項目、または選択された置換を、ユーザデバイス上で表示されるように供給することをさらに含むことが可能である。
第1の書記素は、第2の書記素によって一部分だけ表した第4の形態素とは異なる第3の形態素の一部分だけを表す。書記素グラフは、複数のノードを含み、各ノードは、第1の書記体系における書記素を表し、さらに複数のノードの適切なサブセットの中の各ノードは、完全な音節に対応し、対応するそれぞれの完全な音節は、その音節に対応するノードの書記素と、その対応するノードを子孫とするノードの書記素とを含む。第1のnグラム表現は、ノードの適切なサブセットの中のノードの1つに対応する完全な音節を表す。形態素グラフは、複数のノードを含み、各ノードは、第2の書記体系における1つまたは複数の形態素を表し、さらに複数のノードの適切なサブセットの中の各ノードは、語彙項目に対応し、対応する各語彙項目は、その語彙項目に対応するノードの形態素と、その対応するノードを子孫とするノードの形態素とを含む。
形態素は、漢字に対応する。第1のnグラム表現は、完全なピンイン音節を表し、さらに1つまたは複数の語彙項目のそれぞれは、漢字用語である。第1のnグラム表現を使用して形態素グラフの中から1つまたは複数のノードを探し出すことは、第1のnグラム表現に対応する書記素グラフの中の第1のノードの識別子を選択すること、およびその識別子に関連付けられた形態素グラフの中から第2のノードを探し出すことを含む。
一般に、本明細書で説明される主題の別の態様は、第1のローマ字入力を受け取るアクションと、第1のローマ字入力を使用して、ピンイン入力グラフの中から第1のピンイン音節ノードを探し出し、ピンイン入力グラフは、複数のピンイン音節ノードを含み、各ピンイン音節ノードは、ローマ字に対応し、ただし、複数のピンイン音節ノードの適切なサブセットの中の各ピンイン音節ノードは、ピンイン音節に対応し、対応する各ピンイン音節は、そのピンイン音節に対応するピンイン音節ノードのローマ字と、その対応するピンイン音節ノードを子孫とするピンイン音節ノードのローマ字とを含むアクションと、探し出されたピンイン音節ノードを使用して、ピンイン音節グラフの中から1つまたは複数の第1の漢字ノードを探し出し、ピンイン音節グラフは、複数の漢字ノードを含み、各漢字ノードは、ピンイン音節に対応し、ただし、複数の漢字ノードの適切なサブセットの中の各漢字ノードは、1つまたは複数の第1の漢字用語に対応し、対応するそれぞれの1つまたは複数の第1の漢字用語は、その漢字用語に対応する漢字ノードのピンイン音節に対応する漢字と、対応する漢字ノードを子孫とする漢字ノードのピンイン音節に対応する漢字とを含むアクションと、1つまたは複数の第1の漢字用語のそれぞれに関連付けられた第1のスコアに基づいて、1つまたは複数の漢字ノードの1つに対応する第1の漢字用語を、ユーザデバイスに出力されるように選択するアクションとを含む方法として実現されることが可能である。この態様の他の実施形態は、対応するシステム、装置、およびコンピュータプログラム製品を含む。
これら、およびその他の実施形態は、オプションとして、以下の特徴の1つまたは複数を含むことが可能である。この方法は、第2のローマ字入力を受け取ること、第2のローマ字入力を使用して、ピンイン入力グラフの中から第2のピンイン音節ノードを探し出し、ただし、第2のピンイン音節ノードは、第2のローマ字入力を含むピンイン音節を表すこと、探し出された第2のピンイン音節ノードを使用して、ピンイン音節グラフの中から1つまたは複数の第2の漢字ノードを探し出し、それぞれの探し出された第2の漢字ノードは、1つまたは複数の第2の漢字用語に対応すること、および第3の漢字用語と第4の漢字用語の1つまたは複数の置換を生成し、ただし、第3の漢字用語は、1つまたは複数の第1の漢字用語から選択され、さらに第4の漢字用語は、1つまたは複数の第2の漢字用語から選択されること、1つまたは複数の置換に関連付けられた第2のスコアに基づいて、1つまたは複数の置換から或る置換を選択し、ただし、選択された置換は、第3の漢字用語に続き第4の漢字用語を含むこと、選択された第1の漢字用語の第1のスコアと選択された置換の第2のスコアを比較すること、およびこの比較に基づいて、選択された第1の漢字用語または選択された置換、をユーザデバイスに出力されるように供給することをさらに含むことが可能である。
探し出されたピンイン音節ノードを使用して、1つまたは複数の漢字ノードを探し出すことは、探し出されたピンイン音節ノードの識別子を選択すること、およびその識別子に関連付けられたピンイン音節グラフの中から第1の漢字ノードを探し出すことを含む。このピンイン音節グラフは、パトリシアトライである。
一般に、本明細書で説明される主題の別の態様は、データ処理装置と、第1の書記体系における書記素の書記素グラフが格納され、書記素グラフは、第1の複数のノードを含み、第1の複数のノードの中の各ノードは、第1の書記体系における書記素を表し、さらに第1の複数のノードの適切なサブセットの中の各ノードは、完全な音節に対応し、対応するそれぞれの完全な音節は、第1の複数のノードの中のその音節に対応するノードの書記素と、第1の複数のノードの中のその対応するノードを子孫とするノードの書記素とを含み、さらに第2の書記体系における形態素の形態素グラフが格納され、形態素グラフは、第2の複数のノードを含み、第2の複数のノードの中の各ノードは、第2の書記体系における1つまたは複数の形態素を表し、さらに第2の複数のノードの適切なサブセットの中の各ノードは、語彙項目に対応し、対応する各語彙項目は、第2の複数のノードの中のその語彙項目に対応するノードの形態素と、第2の複数のノードの中のその対応するノードを子孫とするノードの形態素とを含むデータストアとを含むシステムとして実現されることが可能である。この態様の他の実施形態は、対応する方法、装置、およびコンピュータプログラム製品を含む。
これら、およびその他の実施形態は、オプションとして、以下の特徴の1つまたは複数を含むことが可能である。このデータストアは、語彙項目の1つまたは複数の項目の組合せにスコアを付ける言語モデルをさらに格納する。
本明細書で説明される主題の特定の実施形態は、以下の利点の1つまたは複数を実現するように実施されることが可能である。書記素グラフおよび形態素グラフを使用して第1の書記体系における入力を解析して、第2の書記体系における対応する語彙項目を識別することは、可能な語彙項目の探索空間を拡大し、その結果、候補語彙項目の数を増加させるとともに、精度および想起を向上させる。さらに、書記素グラフおよび形態素グラフを使用して第1の書記体系における入力を解析して、第2の書記体系における対応する語彙項目を識別することは、候補語彙項目を識別するのに必要とされる入力のトークン(例えば、文字)の数を低減し、その結果、入力方法の利便性および効率を高めるとともに、ユーザ体験を向上させる。
候補語彙項目を識別するのに必要とされる入力のトークンの数を減らすことは、より小さいキーパッド、または予測キーボードを含む移動デバイス(例えば、移動電話機)上で特に有用であり得る。さらに、すべての入力テキスト(例えば、ピンイン入力文字列全体)を解析することができるインプットメソッドエディタが、入力テキストに関する出力候補をもたらすのに必要とされるユーザ入力およびユーザ対話の量を減らし、その結果、入力方法の利便性および効率を高めるとともに、ユーザ体験を向上させる。例えば、ユーザは、各ピンイン音節を入力して、各ピンイン音節に関する出力候補を別々に選択しなくてもよい。
本明細書で説明される主題の1つまたは複数の実施形態の詳細は、添付の図面、および後段の説明において示される。主題の他の特徴、態様、および利点は、その説明、図面、および特許請求の範囲から明白となろう。
第1の書記体系における例示的なテキスト入力、および第2の書記体系における例示的な出力テキスト候補を含む図である。 第1の書記体系における例示的なテキスト入力、および第2の書記体系における例示的な出力テキスト候補を含む図である。 第1の書記体系における例示的なテキスト入力、および第2の書記体系における例示的な出力テキスト候補を含む図である。 第1の書記体系における例示的なテキスト入力、および第2の書記体系における例示的な出力テキスト候補を含む図である。 第1の書記体系における例示的なテキスト入力、および第2の書記体系における例示的な出力テキスト候補を含む図である。 第1の書記体系における例示的なテキスト入力、および第2の書記体系における例示的な出力テキスト候補を含む図である。 テキスト入力の見られるシーケンス、およびテキスト入力の見られるシーケンスによって表される音節の潜在的なシーケンスを示すブロック図である。 例示的な書記素グラフを示す図である。 例示的な形態素グラフを示す図である。 書記素グラフおよび形態素グラフの例示的な使用のステップを示す図である。 第1の書記体系におけるテキスト入力に基づいて、第2の書記体系における出力テキスト候補を生成するための例示的なシステムを示すブロック図である。 第1の書記体系におけるテキスト入力に基づいて、第2の書記体系における出力テキスト候補を生成するための例示的なプロセスを示す流れ図である。 第1の書記体系におけるテキスト入力に基づいて、第2の書記体系における出力テキスト候補を生成するための別の例示的なプロセスを示す流れ図である。 本明細書で説明されるシステムおよび方法を実施するのに利用され得る例示的なシステムを示すブロック図である。 インプットメソッドエディタを示すブロック図である。
様々な図面における同様の参照符号および名称は、同様の要素を示す。
図1A〜図1Fは、第1の書記体系における例示的なテキスト入力、および第2の書記体系における例示的な出力テキスト候補を含む。図1A〜図1Fは、第1の書記体系、例えば、ピンインにおける例示的なテキスト入力を含む。図1C、図1D、および図1Fは、第2の書記体系、例えば、漢字における例示的な出力テキスト候補も含む。図1A〜図1Fに含まれる例示的なテキスト入力、および例示的な出力テキスト候補は、ローマ字と漢字のいくつかの間に区切り記号(例えば、スペース)を含む。これらの区切り記号を含めることは、これらの例をより理解し易くし、区切り記号は、実際には、例えば、ローマ字の入力中、実際には含められないことが可能であり、ユーザは、スペースを使用してローマ字を分離しない可能性がある。
例として、ユーザが、IME(インプットメソッドエディタ)にローマ字を入力することによって、中国語の文
(すなわち、英語で「We are going to America」)を入力することを所望する可能性がある。ユーザによって入力される入力ローマ字は、第1の書記体系であるピンインを表すのに使用されることが可能である。このユーザは、IMEが、第2の書記体系である漢字で出力をもたらすことを所望する可能性がある。中国語の文
の完全なピンイン表現は、
である。ユーザが、例えば、特に移動デバイス(例えば、移動電話機)上で、完全なピンイン表現を入力するのは面倒である可能性がある。
したがって、ユーザは、完全なピンイン表現未満の数の文字(例えば、省略)を入力することを所望する可能性がある。図1Aは、ローマ字、「w」、「m」、「q」、「m」、および「g」を含む例示的な入力テキストを示す。図1Aにおける例示的な入力テキストに対応する潜在的な漢字を識別するため、インプットメソッドエディタは、この例示的な入力テキストを潜在的な完全なピンイン表現にマップすることができる。理想的には、インプットメソッドエディタは、この例示的な入力テキスト「w m q m g」を完全なピンイン表現「wo men qu mei guo」にマップする。
完全なピンイン表現を識別するタスクは、2つの初期の問題をもたらす。図1A〜図1D、および図1Fに示されるとおり、ローマ字のピンイン音節へのセグメント化が知られているものと想定して、1つの問題は、ユーザが、ローマ字のセグメント化されたグループが表すことを意図したピンイン音節を特定することである。この問題は、図1B〜図1Dを参照して示されることが可能である。図1Bは、ローマ字「w」、「o」、「m」、「q」、「u」、「m」、「e」「i」、「g」、「u」、「o」を含む例示的な入力テキストを示す。図1Bにおける例示的な入力テキスト「wo m qu mei guo」は、図1Aの場合と比べて、完全なピンイン表現「wo men qu mei guo」と合致する、より多くの文字を含む(順に)ものの、「wo m qu mei guo」はそれでも、図1Cおよび図1Dに示されるとおり、2つ以上の完全なピンイン表現を表す可能性がある。
図1Cは、中国語の文
の完全なピンイン表現を示し、さらに図1Dは、中国語の文
(すなわち、英語で「I’ve never went to America」)の完全なピンイン表現を示す。図1Cおよび図1Dにおいて、「wo」は、
に対応し、「qu」は、
に対応し、「mei」は、
に対応し、「guo」は、
に対応する。図1Cおよび図1Dは、ユーザが、文字「m」の最初の出現(文字「wo」の後の)が、
に対応することが可能なピンイン音節「men」、または
に対応することが可能なピンイン音節「mei」を表すことを意図していた可能性があることを示すのに使用され得る。
別の問題は、各ローマ字入力が、異なるピンイン音節(または漢字)を表すか否かを判定することである。前述したとおり、各ピンイン音節(例えば、完全なピンイン音節)は、漢字に対応する。この問題は、図1D〜図1Fを使用して示されることが可能である。この場合も、図1Dは、「wo」、「mei」、「qu」、「mei」、「guo」がそれぞれピンイン音節を表すように例示的な入力テキストがセグメント化されるものと想定する。図1Eは、図1Dの場合と同様に例示的な入力テキストの同一のシーケンスを示すが、セグメント化されていない。
図1Eの例示的な入力テキスト「w o m e i q u m e i g u o」は、図1Dに示されるピンイン音節のシーケンス、または図1Fにおけるピンイン音節のシーケンスを表すことが可能である。詳細には、文字のシーケンス「g」、「u」、および「o」が、図1Dに示される単一のピンイン音節「guo」、または図1Fに示される2つのピンイン音節「gu」および「o」を表すことが可能である。第2の例において、「gu」は、第1のピンイン音節を表し、さらに「o」は、第2のピンイン音節を表す。図1Fは、ユーザが、文
(すなわち、英語で「My young sister will go to Plum Valley」)を入力することを意図していた可能性があることを示す。さらに、図1Fは、「mei」が
などの他の漢字に対応する可能性があることを示す。
図2は、テキスト入力の見られるシーケンス、およびテキスト入力の見られるシーケンスによって表される音節の潜在的なシーケンス(例えば、マルコフモデルにおける隠れたシーケンス)を示すブロック図200である。詳細には、図2は、図1Cおよび図1Dに示される音節の潜在的なシーケンスを示す。テキスト入力の見られるシーケンス「w m q m g」は、「wo men qu mei guo」を表すことも、「wo mei qu mei guo」を表すことも可能である。音節の他の潜在的なシーケンスも可能である(図示せず)。例えば、図1Fを参照して示されるとおり、テキスト入力の見られるシーケンス「w m q m g」は、「wo men qu mei gu o」を表すことも可能である。
テキスト入力が第1の書記体系(例えば、ピンイン)において受け取られると、前述した2つの初期の問題は、(i)第1の書記体系におけるテキスト入力に基づいて、第1の書記体系(例えば、ピンイン音節)におけるnグラム表現を識別すること、および(ii)識別されたnグラム表現に基づいて、第2の書記体系における形態素(例えば、漢字)および語彙項目(例えば、漢字用語)を識別することによって対処されることが可能である。理想的には、ユーザによって所望される入力を表す最も可能性の高い形態素が識別される。
例示的な書記素グラフ
書記素グラフは、第1の書記体系における入力テキストによって表される第1の書記体系におけるnグラム表現を識別するのに使用され得る。
nグラムは、n個の連続するトークン、例えば、文字または語のシーケンスである。nグラムは、nグラムの中のトークンの数であるオーダを有する。例えば、1グラム(またはユニグラム)は、1つのトークンを含み、2グラム(またはバイグラム)は、2つのトークンを含む。例として、「wo」は、第2の書記体系における形態素(例えば、
)と発音される
)と発音される
)の第1の書記体系(例えば、ピンイン音節)における2グラム表現であることが可能である。別の例として、「m」は、第2の書記体系における形態素(例えば、「men」と発音される
と発音される
)の第1の書記体系における1グラム表現であることが可能である。これらの例において、第1の書記体系は、ピンインであり、第2の書記体系は、漢字である。
図1Cの例に一時的に戻ると、中国語の文
が、ユニグラム、例えば、語
(すなわち、英語で「we」)、
(すなわち、英語で「went」)、および
(英語で「America」)という語にセグメント化されることが可能である。例示的なバイグラムは、
および
である。この例において、バイグラムの中のトークンは、カンマによって分けられる。
図3は、例示的な書記素グラフ300を示す。詳細には、書記素グラフ300(例えば、ピンイン入力グラフ)は、1つまたは複数のノード(例えば、ピンイン音節ノード)、例えば、ルートノード302、および1つまたは複数の子ノードを含むトライである。各ノードは、ルートノードを除き、第1の書記体系(例えば、ピンイン)における書記素(例えば、ローマ字)を表す。これらのノードは、複数のレベルに分類されることが可能である。例えば、ルートレベルが、ルートノード302を含むことが可能である。第1のレベルが、ルートノード302の直の子ノード、例えば、ノード310、312、および314を含むことが可能である。第1のレベルにおけるノード310、312、および314のそれぞれは、第1の副音節(例えば、接頭辞)である書記素を表す。例えば、ノード310、312、および314は、ピンイン音節を開始する第1のローマ字を表す。書記素グラフ300が、ルートノード302からノード302の子ノードまで走査されて、第2の書記体系(例えば、漢字)における形態素の第1の書記体系(例えば、ピンイン音節)におけるnグラム表現が識別されることが可能である。
また、書記素グラフ300の中の各ノードは、対応するノードの書記素と、その対応するノードを子孫とするノードの書記素とを含むnグラム表現にも対応する。例えば、ノード310は、nグラム表現「a」に対応する。ノード324は、nグラム表現「be」に対応し、さらにノード330は、nグラム表現「ang」に対応する。
さらに、書記素グラフ300の中のノードの適切なサブセットが、第2の書記体系における或る形態素に対応する完全な音節(例えば、ピンイン音節)に対応する。詳細には、ノード310(「a」)、ノード320(「ai」)、ノード321(「an」)、ノード322(「ao」)、ノード323(「ba」)、ノード325(「zu」)、ノード330(「ang」)が、完全な音節に対応する。この適切なサブセットは、陰影付きノードによって書記素グラフ300の視覚的表現の中で示される。代替として、陰影の付いていないノードは、音節の一部分だけに対応する。例えば、ノード312(「b」)、ノード314(「z」)、およびノード334(「be」)が、ピンイン音節(例えば、副音節)の一部分だけに対応する。陰影の付いていないノードは、ピンイン音節の一部分だけに対応するため、これらのノードは、第2の書記体系における形態素には対応しない。
また、ノードの適切なサブセット(例えば、陰影付きのノード)の中の各ノードは、識別子に関連付けられる。例えば、ノード310は、識別子「I」に関連付けられ、ノード320は、識別子「2」に関連付けられ、ノード321は、識別子「3」に関連付けられ、ノード322は、識別子「5」に関連付けられ、ノード323は、識別子「6」に関連付けられ、ノード325は、識別子「418」に関連付けられ、さらにノード330は、識別子「4」に関連付けられる。識別子は、数、あるいは文字の他の任意の組合せ(例えば、英数字文字列)であることが可能である。
各識別子は、後段でさらに詳細に説明されるとおり、形態素グラフの中からノードを探し出すのに使用され得る。図4を一時的に参照すると、簡単な概略として、形態素グラフ400は、第2の書記体系(例えば、漢字)における1つまたは複数の形態素にそれぞれが対応するノードを含む。形態素グラフ400の中の1つまたは複数のノードの適切なサブセットが、第2の書記体系における語彙用語(例えば、漢字用語)に対応する。書記素グラフ300から選択された識別子が、例えば、その識別子に関連付けられた形態素グラフ400の中からノードを探し出すことによって、形態素グラフ400を走査するのに使用されることが可能である。例えば、ノード410が、識別子「1」にも関連しており、ノード412が、識別子「2」にも関連しており、ノード414が、識別子「3」にも関連しており、さらにノード416が、識別子「418」にも関連している。図4において、識別子は、第1のレベルにおけるノードに関してだけ例示されているが、実際には、識別子は、それぞれの陰影付きのノードに関連付けられる。
図3を参照すると、各書記素(例えば、ローマ字)がインプットメソッドエディタによって受け取られるにつれ、書記素グラフ300が、第1の書記体系における可能なnグラム表現を識別するのに使用されることが可能である。例えば、ローマ字「b」が受け取られた場合、ノード312が探し出されることが可能である。別の例として、ローマ字「a」が、「b」の後に受け取られることが可能である。つまり、入力シーケンスは、「ba」であることが可能である。このため、ノード323が、「ba」に関して探し出されることが可能であり、さらにノード310、320、321、322、および330が、「a」で始まる残りのピンイン音節に関して探し出されることが可能である。詳細には、入力シーケンス「ba」は、ピンイン音節「ba」、「ba」で始まるピンイン音節、または「b」で始まるピンイン音節と「a」で始まるピンイン音節を表すことが可能である。
一部の実施形態において、入力シーケンスによって表される陰影付きノードを探し出すことによって可能なnグラム表現が識別された後、探し出された陰影付きノードの関連付けられた識別子が戻されることが可能である。前述したとおり、これらの識別子は、形態素グラフの中からノードを探し出して語彙項目を識別するのに使用され得る。
他の実施形態も可能である。例えば、書記素グラフ300は、パトリシアトライであるが、書記素グラフ300は、他のタイプのデータ構造(例えば、ハッシュテーブル、平衡トライ)として実施されることも可能である。さらに、一部の実施形態において、nグラム表現が、識別子の代わりに、または識別子と組合せで戻される。さらに、書記素グラフ300は、書記体系の異なる組合せを表すように実施されることも可能である。例えば、第1の書記体系は、Bopomofoであることが可能であり、第2の書記体系は、漢字であることが可能である。別の例として、第1の書記体系は、ローマ字(例えば、日本語のローマ字表記)であることが可能であり、第2の書記体系は、漢字の日本語であることが可能である。
例示的な形態素グラフ
図4は、例示的な形態素グラフ400を示す。詳細には、形態素グラフ400(例えば、ピンイン音節グラフ)は、1つまたは複数のノード(例えば、漢字ノード)、例えば、ルートノード402、および1つまたは複数の子ノードを含むトライである。これらのノードは、複数のレベルに分類されることが可能である。例えば、ルートレベルが、ルートノード402を含むことが可能である。第1のレベルが、ルートノード402の直の子ノード、例えば、ノード410、412、414、および416を含むことが可能である。第1のレベルにおけるノード410、412、414、および416は、語彙項目の接頭辞を表す。例えば、第1のレベルにおけるノード410、412、414、および416は、或る漢字用語(例えば、語または句)を始める第1の漢字を表す。形態素グラフ400が、ルートノード402から子ノードまで走査されて、書記素グラフ300を使用して識別されたnグラム表現に基づいて第2の書記体系における語彙項目が識別されることが可能である。
形態素グラフ400の中の各ノードは、第2の書記体系における1つまたは複数の形態素を表す。例えば、ノード410は、複数の形態(例えば、
)でそれぞれ発音され得る形態素
、および
を表す。別の例として、ノード421が、
(図示せず)を表すことが可能である。さらに、形態素グラフ400の中のノードの適切なサブセットが、語彙項目(例えば、漢字用語)に対応する。例えば、ノード410、412、414、416、420、422、423、424、425、および440が、語彙項目に対応する。この適切なサブセットは、陰影付きのノードによって形態素グラフ400の視覚的表現の中で示される。代替として、陰影の付いていないノードは、或る語彙項目の一部分だけに対応する。例えば、ノード421および430が、或る語彙項目の一部分だけに対応する。詳細には、ノード421は、或る語彙項目の一部分(例えば、ノード440に対応する中国語慣用句
の一部分)だけである
に対応することが可能である。
それぞれの対応する語彙項目は、その語彙項目に対応するノードの形態素と、その対応するノードを子孫とするノードの形態素とを含む。例えば、ノード420は、ノード410の子孫である。ノード420は、語彙項目
および
に対応する。
および
は、ピンイン音節「yi」に対応する形態素であり、さらに
は、ノード410に対応する。
形態素グラフ400の中のノードには、第1の書記体系におけるnグラム表現でラベルが付けられる(例えば、ノード410には、「a」というラベルが付けられ、ノード430には、「ji」というラベルが付けられる)ものの、実際には、これらのノードは、識別子(例えば、書記素グラフ300からの同一の識別子)に関連付けられる。例えば、前述したとおり、ノード410は、識別子「1」に関連付けられ、ノード416には、識別子「418」というラベルが付けられる。さらに、形態素グラフの中のノードも、対応する語彙項目を識別する語彙項目識別子(例えば、ノード425における
に対する「32778」)に関連付けられる。
一部の実施形態において、語彙項目(例えば、漢字用語)は、形態素グラフ400とは別個であるデータ構造の中に格納される。これら、およびその他の実施形態において、形態素グラフの各ノードは、書記素グラフからの識別子、および語彙項目識別子だけに関連付けられる。例えば、語彙項目は、語彙項目識別子によって索引付けされた辞書の中に格納されることが可能である。形態素グラフの中から探し出されたノード(例えば、陰影付きノード)は、辞書の中の語彙項目を識別するのに使用され得る語彙項目識別子を提供する。
書記素グラフ300を使用して識別された第1の書記体系における入力シーケンスのnグラム表現の置換が、図5の例において示されるとおり、形態素グラフを走査するのに使用されて、可能な語彙項目が識別される。
図5は、書記素グラフおよび形態素グラフの例示的な使用のステップを示す。ステップ0で、入力は、全く受け取られておらず、書記素グラフおよび形態素グラフの中の子ノードは、全く探し出されていない。
ステップ1で、ローマ字「w」が、インプットメソッドエディタによって受け取られる。これに応答して、インプットメソッドエディタは、書記素グラフの第1のレベルで「w」を表すノードを探し出す。また、インプットメソッドエディタは、「w」を表すノードの子孫であり、さらに或る完全な音節に対応する(例えば、第2の書記体系における或る形態素に対応する)書記素グラフの中のノードの適切なサブセットに入っているすべてのノードも探し出す。探し出されたノードに関連する識別子は、漢字を表す形態素グラフの中からノードを探し出すのに使用されることが可能である。例えば、「w」は、ピンイン音節「wu」、「wo」、および「wei」の第1の副音節である。図5のステップ1を参照すると、
に対応し、
に対応し、さらに
に対応する。ステップ1で、3つだけのピンイン文字が、この例において示され、例えば、
、および
が、「w」に関する最も可能性の高い候補であることが可能である。同様に、ステップ2が、ローマ字「w」および「o」を受け取ったことに応答して処理される可能な候補のいくつかだけを示す。図5は、実際に処理されるすべての可能な候補を示すわけではない。
ステップ2で、ローマ字「o」が、ローマ字「w」が受け取られた後にインプットメソッドエディタによって受け取られる。書記素グラフの第1のレベルにおいて「w」を表すノードを探し出すことに加えて、インプットメソッドエディタは、書記素グラフの第1のレベルにおいて「o」を表すノードも探し出す。前述したとおり、「w」が、或る完全なピンイン音節の第1の副音節であることが可能であり、「o」が、その完全なピンイン音節の第1の副音節であることが可能であり、あるいは「wo」が、或る完全なピンイン音節であることが可能である。また、インプットメソッドエディタは、或る完全なピンイン音節に対応する書記素グラフの中のノードの適切なサブセットに入っている、「w」および「o」を表すノードの子孫であるすべてのノードも探し出す。探し出されたノードに関連する識別子は、その完全な音節を表す漢字を表す形態素グラフの中からノードを探し出すのに使用され得る。例えば、「w」は、ピンイン音節「wo」の第1の副音節である。図5のステップ2を参照すると、
が、
に対応し、さらに
に対応する。別の例として、「o」は、或る完全なピンイン音節であり、
に対応する。
スコア付け
入力テキストによって表される語彙項目の可能な置換が、前述したとおり、書記素グラフおよび形態素グラフを使用して識別される。例えば、図5を参照すると、ステップ1は、ローマ字「w」によって表されることが可能な第1の語彙項目
、および
を示す。第1の書記素(例えば、「w」)だけを受け取った後、第1の語彙項目、例えば、
、および
のうち1つが、第1の語彙項目のそれぞれに関連付けられたスコアに基づいて選択されることが可能である。例えば、出現する可能性が最も高い語彙項目が選択される(さらに表示される)ことが可能である。
前述したとおり、さらなる書記素が入力(例えば、第2の書記素)として受け取られると、第1の書記素と第2の書記素は、1つまたは複数の第1の語彙項目のうち1つを表すことが可能であり、あるいは第1の書記素と第2の書記素はそれぞれ、異なる語彙項目を表すことが可能であり、例えば、第2の書記素が、1つまたは複数の第2の語彙項目のグループからの或る語彙項目を表すことが可能である。これらの事例に対処するのに、第3の語彙項目、および第4の語彙項目の置換が生成され、格納されることが可能である。第3の語彙項目は、1つまたは複数の第1の語彙項目から選択されることが可能であり、さらに第4の語彙項目は、1つまたは複数の第2の語彙項目から選択されることが可能である。第1の語彙項目のスコアと置換のスコアが比較されて、最も可能性の高い語彙項目がもたらされることが可能である。
例えば、図5で、第1の語彙項目
、および
に関するスコアが識別される、または計算されることが可能である。さらに、置換
、および
に関するスコアが識別されることが可能である。この場合も、この例は、実際に処理されるすべての可能な第1の語彙項目および置換を示すわけではない。識別されるスコアは、例えば、最高のスコアを有する語彙項目または置換を表示のために供給するように比較されることが可能である。
一部の実施形態において、可能な置換が、それらの置換が出現する尤度を計算するようにnグラム言語モデルに送られ、さらに1つまたは複数の置換が、1つまたは複数の基準に基づいて選択されることが可能である。例えば、出現する可能性が最も高い置換が選択されることが可能である。
或る特定の文字列(例えば、語彙項目の置換)が出現することのnグラム言語モデルによる確率が、連鎖規則を使用して算出されることが可能である。連鎖規則は、文字列の確率を個々の確率の積として算出する。このため、所与の文字列「e1,e2,...,ek」に関して、その文字列に関する確率、
p(e1,e2,...,ek)は、
である。
nグラム言語モデルは、或る特定の最大サイズnグラムに制限されること、例えば、1グラム、2グラム、3グラムなどに制限されることが可能である。例えば、最大のnグラムオーダが3グラムに制限される、所与の文字列「NASA officials say they hope」に関して、この文字列に関する確率は、以下のとおり、条件付き確率の積として算出されることが可能である。すなわち、p(NASA officials say they hope)=p(NASA)・p(officials|NASA)・p(say|NASA officials)・p(they|officials say)・p(hope|say they)である。このことは、
に一般化されることが可能であり、ただし、nは、この言語モデルにおいて許される最大nグラムのオーダである。
これらの条件付き確率は、一般に、訓練データの文書における相対頻度により、経験的に算出される。例えば、前述の例において、「NASA officials」という文脈を所与として、「say」という語の確率は、
によって与えられ、ただし、f(NASA officials say)は、訓練データの文書において文字列「NASA officials say」が出現する頻度またはカウントである。nグラム言語モデルにおける最大nグラムオーダ内の文字列の条件付き確率は、nグラムに関する言語モデルの中に格納された確率に対応し、例えば、p(say|NASA officials)が、3グラムエントリ「NASA officials say」に関して言語モデルの中に格納された条件付き確率である。
同様に、条件付き確率は、他の書記体系に関して計算されることも可能である。図1Cの例に一時的に戻ると、
が、2グラムエントリ
に関して言語モデルの中に格納された条件付き確率であり、さらに
が、3グラムエントリ
に関して言語モデルの中に格納された条件付き確率である。この例において、nグラムの中のトークンは、カンマによって分けられる。
一部の実施形態において、それらの置換の各置換のスコアが比較され、出現する可能性が最も高い置換が、ユーザに(例えば、ユーザデバイス上で)提示される。一部の実施形態において、ユーザに提示された置換が正しくない場合、ユーザは、提示された置換の先頭から正しい形態素を識別する(例えば、選択する)ことができ、さらにインプットメソッドエディタが、表示のために別の置換を生成することができる。例えば、図1B〜図1Dに戻ると、ユーザは、入力として「wo m qu mei guo」を与えることが可能である。インプットメソッドエディタは、最も可能性の高い置換として、
を表示することができる。しかし、ユーザは、
を入力することを意図した可能性もある。ユーザが、
だけを選択することが可能である。これに応答して、インプットメソッドエディタは、書記素グラフおよび形態素グラフにおいて「wo」から
が識別されたことを特定することができ、さらに部分的文字列「m qu mei guo」に基づいて、書記素グラフおよび形態素グラフを使用して以前に識別されているさらなる候補を表示することができる。例えば、インプットメソッドエディタは、
(すなわち、英語で「never went to America」)および
(すなわち、英語で「mother is going to America」)を表示することができる。
は、ピンイン音節
に対応する。他の実施形態も可能である。例えば、ユーザは、提示される置換における形態素のいずれかを正しいものとして識別することができる。
例示的なシステム
図6は、第1の書記体系におけるテキスト入力に基づいて第2の書記体系における出力テキスト候補を生成するための例示的なシステム600のブロック図である。システム600は、オフライン生成モデル610を含む。オフライン生成モデル610は、訓練データ(図示せず)から辞書612を生成することができる。訓練データの例には、ウェブページ、インスタントメッセージログ、ニュース、およびテキストのその他のソースが含まれる。辞書612は、漢字、関連するピンイン音節、および関連するスコア(訓練データの中で出現する漢字の頻度)を含むことが可能である。辞書612が、ピンイン音節と、関連するスコアとを含むピンインテーブル614を生成するように解析されることが可能である。辞書612が、辞書ビルダ616によって解析され、ピンインテーブル614が、ピンイントライビルダ618によって解析されて、ピンイン音節と、関連する漢字と、それぞれに関する識別子とを含む辞書モデル620が生成されることが可能である。
辞書モデル620は、IME630によって、辞書トライ632(例えば、形態素グラフ400)およびピンイントライ634(例えば、書記素グラフ300)を生成するのに使用されることが可能である。入力640(例えば、ユーザ入力)が受け取られると、前出の図1〜図5を参照して説明されるとおり、ピンインパーサ636および辞書パーサ638が、辞書トライ632およびピンイントライ634を使用して、その入力を処理することができる。次に、IME630が、言語モデル639を使用して、語彙項目の最も可能性の高い置換を識別し、その最も可能性の高い置換を、ユーザデバイス上で表示するための出力650として供給することが可能である。
システム600の構成要素は、互いの1つまたは複数に通信するように結合されることが可能である。以上に識別された構成要素は、別々である、または別個であるものとして説明されるものの、これらの構成要素の1つまたは複数が組み合わされて、単一のプロセスまたはルーチンにされてもよい。別々の機能に関する責任の分離を含め、本明細書で与えられる機能上の説明は、例示的である。必要に応じて、または設計上の選好により、機能上の責任の他のグループ化または他の分割が行われることも可能である。例えば、単一のパーサが、ピンインパーサ636の機能と辞書パーサ638の機能を実行することも可能である。別の例として、辞書トライ632、ピンイントライ634、および言語モデル639は、IMEとは別個であることが可能である(例えば、図9に示されるとおり)。
例示的なプロセス
図7Aは、第1の書記体系におけるテキスト入力に基づいて第2の書記体系における出力テキスト候補を生成するための例示的なプロセス700aを示す流れ図である。プロセス700aは、第1の書記体系における第1の書記素を受け取ることを含む(705)。例えば、IME630が、第1の書記素(例えば、入力640)を受け取ることが可能である。
また、プロセス700aは、第1の書記体系における書記素の書記素グラフを使用して、第2の書記体系における第1の形態素の第1の書記体系における第1のnグラム表現を識別することも含む(710)。第1のnグラム表現は、第1の書記素を含む。例えば、ピンインパーサ636が、書記素グラフ(例えば、ピンイントライ634)を使用して、第2の書記体系(例えば、漢字)における第1の形態素の第1の書記体系(例えば、ピンイン音節)における第1のnグラム表現を識別することが可能である。また、プロセス700aは、第1のnグラム表現を使用して、形態素グラフの中から1つまたは複数の第1のノードを探し出すことも含む(715)。形態素グラフの中から探し出されたそれぞれの第1のノードは、第2の書記体系における1つまたは複数の第1の語彙項目を表し、さらに1つまたは複数の第1の語彙項目のそれぞれは、第1のnグラム表現によって表される。例えば、辞書パーサ638は、第1のnグラム表現を使用して、形態素グラフの中から1つまたは複数の第1のノードを探し出すことができる(例えば、辞書トライ632)。
また、プロセス700aは、1つまたは複数の第1の語彙項目に関連付けられた第1のスコアに基づいて、1つまたは複数の第1の語彙項目から或る第1の語彙項目を選択することも含む(720)。例えば、辞書パーサ638が、1つまたは複数の第1の語彙項目(例えば、言語モデル639を使用して識別された)のそれぞれに関連付けられた第1のスコアに基づいて、或る第1の語彙項目を選択することができる。
また、プロセス700aは、その第1の語彙項目を、ユーザデバイス上で表示されるように供給することも含む(725)。例えば、IME630が、その第1の語彙項目を、ユーザデバイス(例えば、移動電話機)上で表示されるように供給することが可能である。
図7Bは、第1の書記体系におけるテキスト入力に基づいて第2の書記体系における出力テキスト候補を生成するための例示的なプロセス700bを示す流れ図である。一部の実施形態において、プロセス700bは、プロセス700aの後に実行される。
プロセス700bは、第1の書記体系における第2の書記素を受け取ることを含む(730)。例えば、IME630が、第2の書記素(例えば、入力640)を受け取ることが可能である。また、プロセス700bは、第1の書記体系における書記素の書記素グラフを使用して、第2の書記体系における第2の形態素の第1の書記体系における第2のnグラム表現を識別することも含む(735)。第2のnグラム表現は、第2の書記素を含む。例えば、ピンインパーサ636が、書記素グラフ(例えば、ピンイントライ634)を使用して、第1の書記体系における第2のnグラム表現を識別することが可能である。
また、プロセス700bは、第2のnグラム表現を使用して、形態素グラフの中から1つまたは複数の第2のノードを探し出すことも含む(740)。形態素グラフの中から探し出されたそれぞれの第2のノードは、第2の書記体系における1つまたは複数の第2の語彙項目を表し、さらに1つまたは複数の第2の語彙項目のそれぞれが、第2のnグラム表現によって表される。例えば、辞書パーサ638が、第2のnグラム表現を使用して、形態素グラフ(例えば、辞書トライ632)の中から1つまたは複数の第2のノードを探し出すことが可能である。
また、プロセス700bは、1つまたは複数の第1の語彙項目からの第3の語彙項目、および1つまたは複数の第2の語彙項目からの第4の語彙項目の1つまたは複数の置換を生成することも含む(745)。例えば、辞書パーサ638が、その1つまたは複数の置換(例えば、漢字用語の置換)を生成することが可能である。
また、プロセス700bは、第3の語彙項目および第4の語彙項目の1つまたは複数の置換のそれぞれに関連付けられた第2のスコアに基づいて、第3の語彙項目および第4の語彙項目の1つまたは複数の置換から或る置換を選択することも含む(750)。選択された置換は、第3の語彙項目に続いて第4の語彙項目を含む。
また、プロセス700bは、選択された第1の語彙項目の第1のスコアと、選択された置換の第2のスコアを比較すること(755)、およびこの比較に基づいて、選択された第1の語彙項目、または選択された置換を、ユーザデバイス上で表示されるように供給すること(760)も含む。例えば、辞書パーサ638が、第2のスコア(例えば、言語モデル639を使用して識別された)に基づいて置換を選択し、さらに第1のスコアと第2のスコアを比較することが可能である。さらに、IME630が、この比較に基づいて、選択された第1の語彙項目、または選択された置換を、ユーザデバイス上で表示されるように供給することが可能である。
他の例示的なシステム
図8は、本明細書で説明されるシステムおよび方法を実施するのに利用され得る例示的なシステム800のブロック図である。例示的なシステム800は、例えば、パーソナルコンピュータデバイスなどのコンピュータデバイスにおいて、または移動電話機、移動通信デバイス、PDA(携帯情報端末)などの他の電子デバイスにおいて実施されることが可能である。
例示的なシステム800は、処理デバイス802と、第1のデータストア804と、第2のデータストア806と、入力デバイス808と、出力デバイス810と、ネットワークインタフェース812とを含む。例えば、データバスおよびマザーボードを含むバスシステム814が、構成要素802、804、806、808、810、および812の間でデータ通信を確立し、制御するのに使用されることが可能である。他のシステムアーキテクチャが使用されることも可能である。
処理デバイス802は、例えば、1つまたは複数のマイクロプロセッサを含むことが可能である。第1のデータストア804は、例えば、ダイナミックランダムアクセスメモリなどのランダムアクセスメモリストレージデバイス、あるいは他のタイプのコンピュータ可読媒体メモリデバイスを含むことが可能である。第2のデータストア806は、例えば、1つまたは複数のハードドライブ、フラッシュメモリ、および/または読み取り専用メモリ、あるいは他のタイプのコンピュータ可読媒体メモリデバイスを含むことが可能である。
例示的な入力デバイス808は、キーボード、マウス、スタイラスなどを含むことが可能であり、さらに例示的な出力デバイス810は、ディスプレイデバイス、オーディオデバイスなどを含むことが可能である。ネットワークインタフェース812は、例えば、ネットワーク816にデータを通信するとともに、ネットワーク816からデータを通信するように動作可能な有線または無線のネットワークデバイスを含むことが可能である。ネットワーク816は、1つまたは複数のLAN(ローカルエリアネットワーク)、および/またはインターネットなどのWAN(ワイドエリアネットワーク)を含むことが可能である。
一部の実施形態において、システム800は、データストア806などのデータストアからのIME(インプットメソッドエディタ)コード801を含むことが可能である。インプットメソッドエディタコード801は、実行されると、処理デバイス802にインプットメソッド編集機能を実行させる命令によって規定されることが可能である。インプットメソッドエディタコード801は、ウェブブラウザ環境において実行され得る、例えば、Java(登録商標)Script命令またはECMAScript命令などの、例えば、解釈される命令を備えることが可能である。他の実施形態、例えば、スタンドアロンのアプリケーション、アプレット、プラグインモジュールなどが使用されることも可能である。
インプットメソッドエディタコード801の実行は、インプットメソッドエディタインスタンス803を生成する、または立ち上げる。インプットメソッドエディタインスタンス803は、システム800における1つまたは複数のインプットメソッドの処理を円滑にし、この処理中、システム800は、例えば、ピンインを表すローマ字などの文字または記号を受け取ることができる。例えば、ユーザは、入力デバイス808(欧米型のキーボードなどのキーボード、手書き認識エンジンと一緒に使用されるスタイラスなど)の1つまたは複数を使用して、漢字用語の認識のためのピンイン入力を入力することができる。一部の実施例において、漢字用語は、複数のピンイン入力から成ることが可能である。
第1のデータストア804および/または第2のデータストア806は、入力の関連付けを格納することが可能である。ユーザ入力に基づいて、インプットメソッドエディタインスタンス803が、データストア804および/またはデータストア806の中の情報を使用して、その入力によって表される1つまたは複数の候補選択(例えば、語彙項目の置換)を識別することができる。一部の実施形態において、複数の候補選択が識別された場合、それらの候補選択が出力デバイス810上に表示される。入力デバイス808を使用して、ユーザは、それらの候補選択から、ユーザが入力することを所望する漢字用語を選択することができる。
一部の実施形態において、システム800上のインプットメソッドエディタインスタンス803が、1つまたは複数のピンイン入力を受け取り、それらの入力を漢字用語に変換することが可能である。インプットメソッドエディタインスタンス803は、例えば、キーストロークから受け取られたピンイン音節(例えば、ローマ字)の構成を使用して、漢字用語を表すことができる。各ローマ字は、例えば、欧米型のキーボードにおけるキーに対応することが可能である。ピンインインプットメソッドエディタを使用して、ユーザは、漢字の音を表す1つまたは複数のピンイン音節を含む入力を使用することによって、漢字を入力することができる。しかし、他の言語に関する入力方法が円滑にされることも可能である。
一部の実施形態において、システム800にアクセスを有する遠隔コンピューティングシステム818が、表語文字スクリプトを編集するのに使用されることも可能である。例えば、システム800は、ネットワーク816を介して表語文字スクリプト編集能力を提供するサーバであることが可能である。一実施例において、ユーザは、遠隔コンピューティングシステム、例えば、クライアントコンピュータを使用して、データストア804および/またはデータストア806の中に格納された表語文字スクリプトを編集することができる。システム800は、例えば、ネットワークインタフェース812を介して文字を選択し、ユーザから入力を受け取ることができる。処理デバイス802は、例えば、選択された文字に隣接する1つまたは複数の文字を識別することができ、さらに受け取られた入力、および隣接する文字に基づいて、1つまたは複数の候補選択を識別することができる。システム800は、それらの候補選択を含むデータ通信を遠隔コンピューティングシステムに送り返すことができる。
図9は、例示的なインプットメソッドエディタシステム920のブロック図である。インプットメソッドエディタシステム920は、例えば、インプットメソッドエディタコード801、および関連するデータストア804および806を使用して実施されることが可能である。インプットメソッドエディタシステム920は、インプットメソッドエディタエンジン922と、書記素グラフ(例えば、書記素グラフ300)924と、形態素グラフ(例えば、形態素グラフ400)926と、言語モデルデータストア928とを含む。また、他のストレージアーキテクチャが使用されることも可能である。
言語モデルデータストア928は、1つまたは複数の言語モデル、例えば、日本語モデル、中国語モデルなどを定義することが可能である。各言語モデルは、例えば、入力のセットを入力した際のユーザの考えられる意図を特定するのに使用され得る或る特定の規則セット、例えば、或る言語、句セット、準動詞などを定義することが可能である。また、各言語モデルは、特定のユーザのユーザ履歴、例えば、特定のユーザによってしばしば使用される語および句の辞書を含むことも可能である。
例えば、中国語言語モデルは、中国語文法モデルを含むことが可能である。例示的な中国語文法モデルは、連続動詞構築モデル、完了相モデルおよび未完了相モデル、ならびにその他の文法モデルを含むことが可能である。
入力、例えば、キーストロークに基づいて、一連のピンイン入力が、書記素グラフ924を使用して識別されることが可能である。次に、それらのピンイン入力が、形態素グラフ926を使用して、漢字を識別するのに利用されることが可能である。中国語文法モデルが、それらの漢字に適用されて、ユーザが中国語文脈で入力することを意図している尤度が算出されることが可能である。例えば、すべてが動詞である漢字をもたらす入力文字列には、非常に低いスコアが付けられるが、動詞と目的語を有するその結果をもたらす文字列には、より高いスコアが付けられるといった具合である。別の例として、「I love flowers」と書かれた中国語文字列をもたらす入力には、より高いスコアが付けられ、さらに「bed cow tv」と書かれた中国語文字列をもたらす入力には、より低いスコアが付けられる。
他のプロセスが、このスコアを調整するのに使用されることが可能である。例えば、或る特定の言語の稀にしか使用されない語が、より低く見積もられることが可能である一方で、ユーザプロファイルによる定義により、しばしば使用される語または句は、より高く見積もられることが可能である。他の実施形態も可能である。
本明細書で説明される主題の実施形態、および機能上の動作は、本明細書で開示される構造体、およびそれらの構造体の構造上の均等物、または以上の1つまたは複数の構造体の組合せを含む、デジタル電子回路において、あるいはコンピュータソフトウェア、コンピュータファームウェア、またはコンピュータハードウェアにおいて実施されることが可能である。本明細書で説明される主題の実施形態は、1つまたは複数のコンピュータプログラム製品として、すなわち、データ処理装置(例えば、処理デバイス802)によって実行されるように、またはデータ処理装置(例えば、処理デバイス802)の動作を制御するように実体のあるプログラムキャリア上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実施されることが可能である。実体のあるプログラムキャリアは、コンピュータ可読媒体であることが可能である。コンピュータ可読媒体は、マシン可読ストレージデバイス、マシン可読記憶基板、メモリデバイス、または以上のうち1つまたは複数の媒体の組合せであることが可能である。
「データ処理装置」という用語は、例として、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含め、データを処理するためのすべての装置、デバイス、およびマシンを包含する。この装置は、ハードウェアに加えて、当該のコンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、または以上のうちの1つまたは複数の組合せを構成するコードを含むことが可能である。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイルされる言語もしくは解釈される言語、または宣言型言語もしくは手続き型言語を含め、任意の形態のプログラミング言語で書かれることが可能であり、さらにコンピュータプログラムは、スタンドアロンのプログラムとして、またはモジュール、構成要素、サブルーチンとして、あるいはコンピューティング環境において使用するのに適した他のユニットとして展開されることを含め、任意の形態で展開されることが可能である。コンピュータプログラムは、必ずしもファイルシステムの中のファイルに対応しない。プログラムは、他のプログラムもしくはデータを保持するファイルの一部分(例えば、マークアップ言語文書の中に格納された1つまたは複数のスクリプト)の中に格納されること、当該のプログラムに専用の単一のファイルの中に格納されること、あるいは複数の調整されたファイル(例えば、1つまたは複数のモジュール、サブプログラム、またはコードのいくつかの部分を格納するファイル)の中に格納されることが可能である。コンピュータプログラムは、1つのサイトに配置された1つのコンピュータ上、または複数のコンピュータ上で、あるいは複数のサイトにわたって分散され、通信ネットワークによって互いに接続された複数のコンピュータ上で実行されるように展開されることが可能である。
本明細書で説明されるプロセスおよび論理フローは、入力データを操作し、出力を生成することによって機能を実行するように1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラマブルプロセッサによって実行されることが可能である。これらのプロセスおよび論理フローは、専用論理回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行されることも可能であり、さらに装置が、そのような専用論理回路として実施されることも可能である。
コンピュータプログラムの実行に適したプロセッサには、例として、汎用マイクロプロセッサと専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサが含まれる。一般に、プロセッサは、読み取り専用メモリまたはランダムアクセスメモリから、あるいは読み取り専用メモリとランダムアクセスメモリの両方から命令およびデータを受け取る。コンピュータの基本的な要素は、命令を実行するためのプロセッサ、ならびに命令およびデータを格納するための1つまたは複数のメモリデバイスである。一般に、コンピュータは、データを格納するための1つまたは複数の大容量ストレージデバイス、例えば、磁気ディスク、光磁気ディスク、または光ディスクも含む、またはそのようなストレージデバイスからデータを受け取る、またはそのようなストレージデバイスにデータを転送する、あるいはその両方を行うように動作上、結合される。しかし、コンピュータは、そのようなデバイスを有さなくてもよい。さらに、コンピュータは、別のデバイス、例えば、いくつかを挙げると、移動電話機、PDA(携帯情報端末)、移動体オーディオプレーヤもしくは移動体ビデオプレーヤ、ゲームコンソール、GPS(グローバルポジショニングシステム)受信機に組み込まれることが可能である。
コンピュータプログラム命令およびデータを格納するのに適したコンピュータ可読媒体には、例として、半導体メモリデバイス、例えば、EPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、例えば、内部ハードディスクもしくはリムーバブルディスク、光磁気ディスク、ならびにCD-ROMディスクおよびDVD-ROMディスクを含め、すべての形態の不揮発性メモリ、媒体、およびメモリデバイスが含まれる。プロセッサおよびメモリは、専用論理回路によって補足される、または専用論理回路に組み込まれることが可能である。
ユーザとの対話を可能にするのに、本明細書で説明される主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、例えば、CRT(陰極線管)モニタまたはLCD(液晶ディスプレイ)モニタ、ならびにユーザがコンピュータに入力を与えることができるキーボード、およびポインティングデバイス、例えば、マウスまたはトラックボールを有するコンピュータ上で実施されることが可能である。他の種類のデバイスが、ユーザとの対話を可能にするのに使用されることも可能であり、例えば、ユーザに供給されるフィードバックは、任意の形態の感覚フィードバック、例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであることが可能であり、さらにユーザからの入力は、音響入力、音声入力、または触覚入力を含め、任意の形態で受け取られることが可能である。
本明細書は、多くの特定の実施上の詳細を含むが、これらは、いずれの実施形態の範囲、または主張され得る対象の範囲に対する限定としても解釈されるべきではなく、むしろ、特定の実施例の特定の実施形態に固有であることが可能な特徴の説明として解釈されるべきである。別々の実施形態の文脈において本明細書で説明されるいくつかの特徴は、単一の実施形態において組合せで実施されることも可能である。逆に、単一の実施形態の文脈で説明される様々な特徴が、複数の実施形態において別々に、または任意の適切な部分的組合せで実施されることも可能である。さらに、特徴は、いくつかの組合せで作用するものとして前段で説明され、さらにそのように主張されさえするものの、主張される組合せからの1つまたは複数の特徴が、一部の事例において、組合せから削除されることも可能であり、さらに主張される組合せは、部分的組合せ、または部分的組合せの変種に向けられる可能性がある。
同様に、動作は、図面において特定の順序で示されるが、このことは、そのような動作が、望ましい結果を実現するのに、示される順序で、または順次に実行されることを要求するものと理解されるべきではない。いくつかの状況において、マルチタスキングおよび並行処理が有利である可能性がある。さらに、前段で説明される実施形態における様々なシステム構成要素の分離は、すべての実施形態においてそのような分離を要求するものと理解されるべきではなく、説明されるプログラム構成要素およびシステムは、一般に、単一のソフトウェア製品に一緒に統合され得る、または複数のソフトウェア製品にパッケージ化され得るものと理解されたい。
本明細書で説明される主題の特定の実施形態が説明されてきた。他の実施形態も、添付の特許請求の範囲内に含まれる。例えば、特許請求の範囲に記載されるアクションは、異なる順序で実行されて、それでも、望ましい結果を実現することが可能である。例として、添付の図で示されるプロセスは、望ましい結果を実現するのに、示される特定の順序、または順次の順序を必ずしも要求しない。一部の実施形態において、マルチタスキングおよび並行処理が有利である可能性がある。
800 システム
802 処理デバイス
803 インプットメソッドエディタインスタンス
804、806 データストア
808 入力デバイス
810 出力デバイス
812 ネットワークインタフェース
814 バスシステム
816 ネットワーク
818 遠隔コンピューティングシステム
920 インプットメソッドエディタシステム
922 インプットメソッドエディタエンジン
924 書記素グラフ
926 形態素グラフ
928 言語モデルデータストア

Claims (18)

  1. 第1の書記体系における第1の書記素を受け取るステップと、
    前記第1の書記体系における書記素の書記素グラフを使用して、第2の書記体系における第1の形態素の前記第1の書記体系における第1のnグラム表現を識別し、前記第1のnグラム表現は、前記第1の書記素を含むステップと、
    前記第1のnグラム表現を使用して、形態素グラフの中から1つまたは複数の第1のノードを探し出し、前記形態素グラフの中から探し出されたそれぞれの第1のノードは、前記第2の書記体系における1つまたは複数の第1の語彙項目を表し、前記1つまたは複数の第1の語彙項目のそれぞれは、前記第1のnグラム表現によって表されるステップと、
    前記1つまたは複数の第1の語彙項目のそれぞれに関連付けられた第1のスコアに基づいて、前記1つまたは複数の第1の語彙項目から或る第1の語彙項目を選択するステップと、
    前記第1の語彙項目を、ユーザデバイス上で表示されるように供給するステップとを備えるコンピュータによって実施される方法。
  2. 前記第1の書記素は、前記第2の書記体系における或る音節の一部分だけを表す請求項1に記載の方法。
  3. 前記第1の書記体系における第2の書記素を受け取るステップと、
    第1の書記体系における書記素の前記書記素グラフを使用して、前記第2の書記体系における第2の形態素の前記第1の書記体系における第2のnグラム表現を識別し、前記第2のnグラム表現は、前記第2の書記素を含むステップと、
    前記第2のnグラム表現を使用して、前記形態素グラフの中から1つまたは複数の第2のノードを探し出し、前記形態素グラフの中から探し出されたそれぞれの第2のノードは、前記第2の書記体系における1つまたは複数の第2の語彙項目を表し、前記1つまたは複数の第2の語彙項目のそれぞれは、前記第2のnグラム表現によって表されるステップと、
    第3の語彙項目と第4の語彙項目の1つまたは複数の置換を生成し、前記第3の語彙項目は、前記1つまたは複数の第1の語彙項目から選択され、さらに前記第4の語彙項目は、前記1つまたは複数の第2の語彙項目から選択されるステップと、
    前記1つまたは複数の置換のそれぞれに関連する第2のスコアに基づき、前記1つまたは複数の置換から或る置換を選択し、前記選択された置換は、前記第3の語彙項目に続いて前記第4の語彙項目を含むステップと、
    前記選択された第1の語彙項目の前記第1のスコアと前記選択された置換の前記第2のスコアを比較するステップと、
    前記比較に基づいて、前記選択された第1の語彙項目、または前記選択された置換を、前記ユーザデバイス上で表示されるように供給するステップとをさらに備える請求項1に記載の方法。
  4. 前記第1の書記素は、前記第2の書記素によって一部分だけ表した第4の形態素とは異なる第3の形態素の一部分だけを表す請求項3に記載の方法。
  5. 前記書記素グラフは、複数のノードを含み、各ノードは、前記第1の書記体系における書記素を表し、さらに前記複数のノードの適切なサブセットの中の各ノードは、完全な音節に対応し、対応するそれぞれの完全な音節は、その音節に対応するノードの前記書記素と、前記対応するノードを子孫とするノードの前記書記素とを含む請求項1に記載の方法。
  6. 前記第1のnグラム表現は、ノードの前記適切なサブセットの中の前記ノードの1つに対応する完全な音節を表す請求項5に記載の方法。
  7. 前記形態素グラフは、複数のノードを含み、各ノードは、前記第2の書記体系における1つまたは複数の形態素を表し、さらに前記複数のノードの適切なサブセットの中の各ノードは、語彙項目に対応し、対応する各語彙項目は、その語彙項目に対応するノードの前記形態素と、前記対応するノードを子孫とするノードの前記形態素とを含む請求項1に記載の方法。
  8. 前記形態素は、漢字に対応する請求項7に記載の方法。
  9. 前記第1のnグラム表現は、完全なピンイン音節を表し、さらに前記1つまたは複数の語彙項目のそれぞれは、漢字用語である請求項1に記載の方法。
  10. 前記第1のnグラム表現を使用して形態素グラフの中から1つまたは複数のノードを探し出すステップは、
    前記第1のnグラム表現に対応する前記書記素グラフの中の第1のノードの識別子を選択するステップと、
    前記識別子に関連付けられた前記形態素グラフの中から第2のノードを探し出すステップとを含む請求項1に記載の方法。
  11. 第1のローマ字入力を受け取るステップと、
    前記第1のローマ字入力を使用して、ピンイン入力グラフの中から第1のピンイン音節ノードを探し出し、前記ピンイン入力グラフは、複数のピンイン音節ノードを含み、各ピンイン音節ノードは、ローマ字に対応し、前記複数のピンイン音節ノードの適切なサブセットの中の各ピンイン音節ノードは、ピンイン音節に対応し、対応する各ピンイン音節は、そのピンイン音節に対応するピンイン音節ノードの前記ローマ字と、前記対応するピンイン音節ノードを子孫とするピンイン音節ノードの前記ローマ字とを含むステップと、
    前記探し出されたピンイン音節ノードを使用して、ピンイン音節グラフの中から1つまたは複数の第1の漢字ノードを探し出し、前記ピンイン音節グラフは、複数の漢字ノードを含み、各漢字ノードは、ピンイン音節に対応し、前記複数の漢字ノードの適切なサブセットの中の各漢字ノードは、1つまたは複数の第1の漢字用語に対応し、対応するそれぞれの1つまたは複数の第1の漢字用語は、その漢字用語に対応する漢字ノードのピンイン音節に対応する漢字と、前記対応する漢字ノードを子孫とする漢字ノードのピンイン音節に対応する漢字とを含むステップと、
    前記1つまたは複数の第1の漢字用語のそれぞれに関連付けられた第1のスコアに基づいて、前記1つまたは複数の漢字ノードの1つに対応する第1の漢字用語を、ユーザデバイスに出力されるように選択するステップとを備えるコンピュータによって実施される方法。
  12. 第2のローマ字入力を受け取るステップと、
    前記第2のローマ字入力を使用して、前記ピンイン入力グラフの中から第2のピンイン音節ノードを探し出し、前記第2のピンイン音節ノードは、前記第2のローマ字入力を含むピンイン音節を表すステップと、
    前記探し出された第2のピンイン音節ノードを使用して、前記ピンイン音節グラフの中から1つまたは複数の第2の漢字ノードを探し出し、それぞれの探し出された第2の漢字ノードは、1つまたは複数の第2の漢字用語に対応するステップと、
    第3の漢字用語と第4の漢字用語の1つまたは複数の置換を生成し、前記第3の漢字用語は、前記1つまたは複数の第1の漢字用語から選択され、さらに前記第4の漢字用語は、前記1つまたは複数の第2の漢字用語から選択されるステップと、
    前記1つまたは複数の置換に関連付けられた第2のスコアに基づいて、前記1つまたは複数の置換から或る置換を選択し、前記選択された置換は、前記第3の漢字用語に続き前記第4の漢字用語を含むステップと、
    前記選択された第1の漢字用語の前記第1のスコアと前記選択された置換の前記第2のスコアを比較するステップと、
    前記比較に基づいて、前記選択された第1の漢字用語または前記選択された置換を、前記ユーザデバイスに出力されるように供給するステップとをさらに備える請求項11に記載の方法。
  13. 前記探し出されたピンイン音節ノードを使用して、1つまたは複数の漢字ノードを探し出すステップは、
    前記探し出されたピンイン音節ノードの識別子を選択するステップと、
    前記識別子に関連付けられた前記ピンイン音節グラフの中から第1の漢字ノードを探し出すステップとを含む請求項11に記載の方法。
  14. 前記ピンイン音節グラフは、パトリシアトライである請求項11に記載の方法。
  15. データ処理装置と、
    第1の書記体系における書記素の書記素グラフが格納され、前記書記素グラフは、第1の複数のノードを含み、さらに前記第1の複数のノードの中の各ノードは、前記第1の書記体系における書記素を表し、さらに前記第1の複数のノードの適切なサブセットの中の各ノードは、完全な音節に対応し、対応するそれぞれの完全な音節は、前記第1の複数のノードの中のその音節に対応するノードの前記書記素と、前記第1の複数のノードの中の前記対応するノードを子孫とするノードの前記書記素とを含み、さらに第2の書記体系における形態素の形態素グラフが格納され、前記形態素グラフは、第2の複数のノードを含み、前記第2の複数のノードの中の各ノードは、前記第2の書記体系における1つまたは複数の形態素を表し、さらに第2の複数のノードの適切なサブセットの中の各ノードは、語彙項目に対応し、対応する各語彙項目は、前記第2の複数のノードの中のその語彙項目に対応するノードの前記形態素と、前記第2の複数のノードの中の前記対応するノードを子孫とするノードの前記形態素とを含むデータストアとを備えるシステム。
  16. 前記データストアは、前記語彙項目の1つまたは複数の項目の組合せにスコアを付ける言語モデルをさらに格納する請求項15に記載のシステム。
  17. 第1の書記体系における第1の書記素を受け取るステップと、
    前記第1の書記体系における書記素の書記素グラフを使用して、第2の書記体系における第1の形態素の前記第1の書記体系における第1のnグラム表現を識別し、前記第1のnグラム表現は、前記第1の書記素を含むステップと、
    前記第1のnグラム表現を使用して、形態素グラフの中から1つまたは複数の第1のノードを探し出し、前記形態素グラフの中から探し出されたそれぞれの第1のノードは、前記第2の書記体系における1つまたは複数の第1の語彙項目を表し、前記1つまたは複数の第1の語彙項目のそれぞれは、前記第1のnグラム表現によって表されるステップと、
    前記1つまたは複数の第1の語彙項目のそれぞれに関連付けられた第1のスコアに基づいて、前記1つまたは複数の第1の語彙項目から或る第1の語彙項目を選択するステップと、
    前記第1の語彙項目を、ユーザデバイス上で表示されるように供給するステップとを備える動作をデータ処理装置に実行させるように動作可能な、コンピュータ読み取り可能な記録媒体上に記録したコンピュータプログラム
  18. 前記第1の書記体系における第2の書記素を受け取るステップと、
    第1の書記体系における書記素の前記書記素グラフを使用して、前記第2の書記体系における第2の形態素の前記第1の書記体系における第2のnグラム表現を識別し、前記第2のnグラム表現は、前記第2の書記素を含むステップと、
    前記第2のnグラム表現を使用して、前記形態素グラフの中から1つまたは複数の第2のノードを探し出し、前記形態素グラフの中から探し出されたそれぞれの第2のノードは、前記第2の書記体系における1つまたは複数の第2の語彙項目を表し、前記1つまたは複数の第2の語彙項目のそれぞれは、前記第2のnグラム表現によって表されるステップと、
    第3の語彙項目と第4の語彙項目の1つまたは複数の置換を生成し、前記第3の語彙項目は、前記1つまたは複数の第1の語彙項目から選択され、さらに前記第4の語彙項目は、前記1つまたは複数の第2の語彙項目から選択されるステップと、
    前記1つまたは複数の置換のそれぞれに関連する第2のスコアに基づき、前記1つまたは複数の置換から或る置換を選択し、前記選択された置換は、前記第3の語彙項目に続いて前記第4の語彙項目を含むステップと、
    前記選択された第1の語彙項目の前記第1のスコアと前記選択された置換の前記第2のスコアを比較するステップと、
    前記比較に基づいて、前記選択された第1の語彙項目、または前記選択された置換を、前記ユーザデバイス上で表示されるように供給するステップとをさらに備える動作をデータ処理装置に実行させるように動作可能な請求項17に記載のコンピュータプログラム
JP2012500034A 2009-03-19 2009-03-19 インプットメソッドエディタ Active JP5362095B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2009/070889 WO2010105428A1 (en) 2009-03-19 2009-03-19 Input method editor

Publications (2)

Publication Number Publication Date
JP2012521025A JP2012521025A (ja) 2012-09-10
JP5362095B2 true JP5362095B2 (ja) 2013-12-11

Family

ID=42739129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012500034A Active JP5362095B2 (ja) 2009-03-19 2009-03-19 インプットメソッドエディタ

Country Status (6)

Country Link
US (1) US9026426B2 (ja)
JP (1) JP5362095B2 (ja)
KR (1) KR101524740B1 (ja)
CN (1) CN102439540B (ja)
HK (1) HK1170318A1 (ja)
WO (1) WO2010105428A1 (ja)

Families Citing this family (148)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10255566B2 (en) 2011-06-03 2019-04-09 Apple Inc. Generating and processing task items that represent tasks to perform
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
CN103026318B (zh) * 2010-05-21 2016-08-17 谷歌公司 输入法编辑器
US9104306B2 (en) * 2010-10-29 2015-08-11 Avago Technologies General Ip (Singapore) Pte. Ltd. Translation of directional input to gesture
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9176948B2 (en) * 2012-03-27 2015-11-03 Google Inc. Client/server-based statistical phrase distribution display and associated text entry technique
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
WO2014000263A1 (en) * 2012-06-29 2014-01-03 Microsoft Corporation Semantic lexicon-based input method editor
CN104823135B (zh) * 2012-08-31 2018-01-30 微软技术许可有限责任公司 用于输入法编辑器的个人语言模型
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
KR102516577B1 (ko) 2013-02-07 2023-04-03 애플 인크. 디지털 어시스턴트를 위한 음성 트리거
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US9199155B2 (en) * 2013-03-14 2015-12-01 Google Inc. Morpheme-level predictive graphical keyboard
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
US10191929B2 (en) 2013-05-29 2019-01-29 Noblis, Inc. Systems and methods for SNP analysis and genome sequencing
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
KR101959188B1 (ko) 2013-06-09 2019-07-02 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
CN105453026A (zh) 2013-08-06 2016-03-30 苹果公司 基于来自远程设备的活动自动激活智能响应
US9760624B1 (en) 2013-10-18 2017-09-12 Google Inc. Automatic selection of an input language
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9760559B2 (en) * 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10560552B2 (en) 2015-05-21 2020-02-11 Noblis, Inc. Compression and transmission of genomic information
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US9785252B2 (en) * 2015-07-28 2017-10-10 Fitnii Inc. Method for inputting multi-language texts
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US12223282B2 (en) 2016-06-09 2025-02-11 Apple Inc. Intelligent automated assistant in a home environment
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US12197817B2 (en) 2016-06-11 2025-01-14 Apple Inc. Intelligent device arbitration and control
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10175770B2 (en) 2016-10-13 2019-01-08 International Business Machines Corporation Proactive input method editor switching
WO2018101671A1 (en) 2016-11-29 2018-06-07 Samsung Electronics Co., Ltd. Apparatus and method for providing sentence based on user input
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US11222712B2 (en) 2017-05-12 2022-01-11 Noblis, Inc. Primer design using indexed genomic information
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770411A1 (en) 2017-05-15 2018-12-20 Apple Inc. Multi-modal interfaces
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
CN109032374B (zh) * 2017-06-09 2023-06-20 北京搜狗科技发展有限公司 一种用于输入法的候选展示方法、装置、介质及设备
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US11076039B2 (en) 2018-06-03 2021-07-27 Apple Inc. Accelerated task performance
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
CN109947779B (zh) * 2019-03-29 2021-01-22 北京金山安全软件有限公司 用户输入词汇的存储方法、装置及设备
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. User activity shortcut suggestions
DK201970510A1 (en) 2019-05-31 2021-02-11 Apple Inc Voice identification in digital assistant systems
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11227599B2 (en) 2019-06-01 2022-01-18 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
CN110262674B (zh) * 2019-06-27 2023-07-18 北京金山安全软件有限公司 一种基于拼音输入的汉字输入方法、装置及电子设备
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11038934B1 (en) 2020-05-11 2021-06-15 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones

Family Cites Families (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0776964B2 (ja) 1982-11-26 1995-08-16 株式会社日立製作所 日本文入力方法
US5270927A (en) * 1990-09-10 1993-12-14 At&T Bell Laboratories Method for conversion of phonetic Chinese to character Chinese
US6154758A (en) * 1994-05-13 2000-11-28 Apple Computer, Inc. Text conversion method for computer systems
JP2741575B2 (ja) * 1994-09-22 1998-04-22 日本アイ・ビー・エム株式会社 文字認識文字補完方法及びコンピュータ・システム
US5862256A (en) 1996-06-14 1999-01-19 International Business Machines Corporation Distinguishing gestures from handwriting in a pen based computer by size discrimination
JP3663012B2 (ja) * 1996-07-19 2005-06-22 シャープ株式会社 音声による入力装置
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
US5896321A (en) 1997-11-14 1999-04-20 Microsoft Corporation Text completion system for a miniature computer
JPH11338858A (ja) 1998-05-22 1999-12-10 Toshiba Corp 入力予測装置、入力予測方法及び入力予測プログラムを記録した記録媒体
US6212412B1 (en) 1998-06-09 2001-04-03 Qualcomm Incorporated System and method for character case control in a wireless communication device
US6356866B1 (en) * 1998-10-07 2002-03-12 Microsoft Corporation Method for converting a phonetic character string into the text of an Asian language
US7712053B2 (en) 1998-12-04 2010-05-04 Tegic Communications, Inc. Explicit character filtering of ambiguous text entry
JP4273559B2 (ja) * 1999-03-19 2009-06-03 株式会社デンソー 検索装置
US6204848B1 (en) * 1999-04-14 2001-03-20 Motorola, Inc. Data entry apparatus having a limited number of character keys and method
FI112978B (fi) * 1999-09-17 2004-02-13 Nokia Corp Symbolien syöttö
US6848080B1 (en) * 1999-11-05 2005-01-25 Microsoft Corporation Language input architecture for converting one text form to another text form with tolerance to spelling, typographical, and conversion errors
CN1201286C (zh) 1999-12-23 2005-05-11 英特尔公司 使用基于词汇树的n格拉姆语言模式的执行语音识别的方法
US7107204B1 (en) 2000-04-24 2006-09-12 Microsoft Corporation Computer-aided writing system and method with cross-language writing wizard
JP2001312294A (ja) 2000-05-02 2001-11-09 Atr Onsei Gengo Tsushin Kenkyusho:Kk 入力記号列を出力記号列に変換するトランスデューサの学習方法およびトランスデューサの学習プログラムを記憶したコンピュータ読み取り可能な記録媒体
JP2002007042A (ja) 2000-06-16 2002-01-11 Fuji Photo Film Co Ltd 情報入力装置
US7277732B2 (en) * 2000-10-13 2007-10-02 Microsoft Corporation Language input system for mobile devices
US7165021B2 (en) * 2001-06-13 2007-01-16 Fujitsu Limited Chinese language input system
CN1643484A (zh) 2002-03-22 2005-07-20 索尼爱立信移动通讯股份有限公司 将文本输入到电子通信设备
US20050057512A1 (en) * 2003-07-17 2005-03-17 Min-Wen Du Browsing based Chinese input method
CN1581041A (zh) 2004-05-20 2005-02-16 汤步青 一种用于数字键盘的汉字拼音输入方法
US20050289463A1 (en) * 2004-06-23 2005-12-29 Google Inc., A Delaware Corporation Systems and methods for spell correction of non-roman characters and words
CN100550011C (zh) * 2004-11-29 2009-10-14 广东瑞图万方科技有限公司 建立联想输入系统的方法及对应的联想输入系统和方法
CN100530171C (zh) * 2005-01-31 2009-08-19 日电(中国)有限公司 字典学习方法和字典学习装置
US7676357B2 (en) * 2005-02-17 2010-03-09 International Business Machines Corporation Enhanced Chinese character/Pin Yin/English translator
CN100565431C (zh) 2005-04-18 2009-12-02 诺基亚(中国)投资有限公司 进行不同类型字形的混合输入的方法和设备
CN1908863A (zh) 2005-08-07 2007-02-07 黄金富 双语混合输入方法及具有字典功能的手机
CN1851624A (zh) 2006-05-31 2006-10-25 陈青 数字键盘九格魔方图输入法
US20080221866A1 (en) * 2007-03-06 2008-09-11 Lalitesh Katragadda Machine Learning For Transliteration
JP2008250378A (ja) * 2007-03-29 2008-10-16 Sanyo Electric Co Ltd 入力文字列予測装置および入力文字列予測プログラム
CN104866469B (zh) 2007-04-11 2018-10-02 谷歌有限责任公司 具有第二语言模式的输入法编辑器
CN101779200B (zh) * 2007-06-14 2013-03-20 谷歌股份有限公司 词典词和短语确定方法和设备
CN101369209B (zh) 2007-08-15 2013-08-21 北京三星通信技术研究有限公司 用于全混合输入的手写输入装置及其方法
US8365071B2 (en) * 2007-08-31 2013-01-29 Research In Motion Limited Handheld electronic device and associated method enabling phonetic text input in a text disambiguation environment and outputting an improved lookup window
US8289283B2 (en) 2008-03-04 2012-10-16 Apple Inc. Language input interface on a device
US8296125B2 (en) * 2008-10-17 2012-10-23 International Business Machines Corporation Translating source locale input string to target locale output string

Also Published As

Publication number Publication date
US9026426B2 (en) 2015-05-05
KR20120006489A (ko) 2012-01-18
CN102439540A (zh) 2012-05-02
US20120016658A1 (en) 2012-01-19
KR101524740B1 (ko) 2015-06-01
WO2010105428A1 (en) 2010-09-23
HK1170318A1 (en) 2013-02-22
JP2012521025A (ja) 2012-09-10
CN102439540B (zh) 2015-04-08

Similar Documents

Publication Publication Date Title
JP5362095B2 (ja) インプットメソッドエディタ
JP5997217B2 (ja) 言語変換において複数の読み方の曖昧性を除去する方法
US9824085B2 (en) Personal language model for input method editor
TWI443551B (zh) 用於輸入方法編輯器之方法及系統,及電腦程式產品
US10402493B2 (en) System and method for inputting text into electronic devices
JP4829901B2 (ja) マニュアルでエントリされた不確定なテキスト入力を音声入力を使用して確定する方法および装置
TWI437449B (zh) 多重模式輸入方法及輸入方法編輯器系統
Fowler et al. Effects of language modeling and its personalization on touchscreen typing performance
KR101465770B1 (ko) 단어 확률 결정
US9026428B2 (en) Text/character input system, such as for use with touch screens on mobile phones
US8463598B2 (en) Word detection
JP5379138B2 (ja) 領域辞書の作成
JP2013117978A (ja) タイピング効率向上のためのタイピング候補の生成方法
CN103026318A (zh) 输入法编辑器
JP2008083952A (ja) 辞書作成支援システム、方法及びプログラム
JP5037491B2 (ja) 与えられた(1つ以上の)文字の全数より少ない数の文字、若しくは、その文字の字画の全数より少ない数の字画、又はその両方を供給することによる、表意言語の句の省略された手書き入力
WO2014205232A1 (en) Language input method editor to disambiguate ambiguous phrases via diacriticization
JP5231484B2 (ja) 音声認識装置、音声認識方法、プログラム、及びプログラムを配信する情報処理装置
Sharma et al. Word prediction system for text entry in Hindi
CN112154442A (zh) 短语级缩写的文本录入和转换
Jose et al. Lexical normalization model for noisy SMS text
Jose et al. Lexico-syntactic normalization model for noisy SMS text
Narayanan et al. Providing Suggestions of Expanded Text from Abbreviated Text Input
JP2001109740A (ja) 中国語文書作成装置及び中国語文書作成方法
Lindh Japanese word prediction

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130409

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130607

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130903

R150 Certificate of patent or registration of utility model

Ref document number: 5362095

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

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