JP2010531492A - ワード確率決定 - Google Patents

ワード確率決定 Download PDF

Info

Publication number
JP2010531492A
JP2010531492A JP2010513604A JP2010513604A JP2010531492A JP 2010531492 A JP2010531492 A JP 2010531492A JP 2010513604 A JP2010513604 A JP 2010513604A JP 2010513604 A JP2010513604 A JP 2010513604A JP 2010531492 A JP2010531492 A JP 2010531492A
Authority
JP
Japan
Prior art keywords
word
probability value
segmentation
corpus
sentence
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.)
Pending
Application number
JP2010513604A
Other languages
English (en)
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 JP2010531492A publication Critical patent/JP2010531492A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/232Orthographic correction, e.g. spell checking or vowelisation

Landscapes

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

Abstract

コンピュータで実施される方法であって、ワードコーパスを識別する段階と、ワード確率値を前記ワードコーパス内の各語と関連付ける段階と、文を識別する段階と、前記ワードコーパスに基づいて前記文の候補セグメンテーションを求める段階と、前記ワードコーパス内の各語について、関連する前記ワード確率値と前記候補セグメンテーションとに基づいて、関連する前記ワード確率値を反復的に調節する段階と、を含み、インプットメソッドエディタ辞書内の関連する最高の前記ワード確率値を有する語によって定義される前記ワードコーパスの一部を格納する段階を含む方法。

Description

本開示は、入力方法に関する。
1つまたは2つの文字、例えばグリフが大まかには1つの語または意味に対応する表語文字(logographic script)を使用する言語は、モバイル装置キーパッド上のコンピュータキーボードなどの、標準入力装置上のキーよりも多くの文字を有する。例えば、中国語は、基本ピンイン文字および5つの声調によって定義される数千の文字を含む。こうした多対一の関連付けのマッピングは、入力装置上に見つからない文字および記号の入力を容易にする入力方法によって実装することができる。したがって、西洋式キーボードを使用して、中国語、日本語、または韓国語の文字を入力することができる。
ある例では、インプットメソッドエディタ(IME)を使用して、語の辞書を探索し、ユーザによってタイプされたピンイン文字に対応する候補語を見つけることができる。辞書は、語に関連するデータ、例えばIMEがユーザの意図を予測して、候補を識別およびランク付けすることを可能にする確率スコアを含むことができる。IMEは、例えば確率スコアまたは正確度スコアに基づいて、候補をランク付けし、ランク付けに従うシーケンスで候補語のリストをユーザに提供する。
Jeffrey DeanおよびSanjay Ghemawat、「MapReduce:Simplified Data Processing on Large Clusters」、Sixth Symposium on Operating System Design and Implementation、カリフォルニア州サンフランシスコ、2004年12月
一態様では、一般には、コンピュータで実施される方法が、ワードコーパスを識別すること、ワード確率値をワードコーパス内の各語と関連付けること、文を識別すること、ワードコーパスに基づいて文の候補セグメンテーションを求めること、およびワードコーパス内の各語について、語に関連する確率値と候補セグメンテーションとに基づいて、関連する確率値を反復的に調節することを含む。
この方法の実装は、以下の特徴のうちの1つまたは複数を含むことができる。この方法は、インプットメソッドエディタ辞書内の関連する最高のワード確率値を有する語によって定義されるワードコーパスの一部を格納することを含む。ワード確率値は、関連する語が文中に出現する確率に対応する。少なくとも1つの文の可能なセグメンテーションを求めることは、ワードコーパスに基づいて、少なくとも1つの文のすべての可能なセグメンテーションを求めることを含む。この方法は、文の各候補セグメンテーションについてセグメンテーション確率値を求めることを含む。文の各候補セグメンテーションについてセグメンテーション確率値を求めることは、各候補セグメンテーションについて、候補セグメンテーション内の語に関連するワード確率値に基づいて、セグメンテーション確率値を求めることを含む。
ワードコーパス内の各語について、関連するワード確率値および候補セグメンテーションに基づいて、関連するワード確率値を反復的に調節することは、各語について、文の候補セグメンテーションに関するセグメンテーション確率値に基づいて、関連するワード確率値を反復的に調節することを含む。各語について、関連するワード確率値を反復的に調節することは、反復ごとに、文の各候補セグメンテーションについて、候補セグメンテーション内の語に関連するワード確率値に基づいて、セグメンテーション確率値を求めること、および各語について、語を含む候補セグメンテーションに関するセグメンテーション確率値に基づいて、関連するワード確率値を調節することを含む。文中の語の改善された確率値を求めることは、(a)語の前のサブストリングの候補セグメンテーションの確率値の和、(b)語の確率値、および(c)語の後のサブストリングの候補セグメンテーションの確率値の和を乗算することを含む。文の候補セグメンテーションを求めることは、文書中の複数の文の候補セグメンテーションを求めることを含む。この方法は、複数の文書中の文を識別すること、および各文について、ワードコーパスに基づいて、文の候補セグメンテーションを求めることを含む。ワード確率値を求める際に、異なるタイプの文書中の文に、異なる重みが与えられる。文書は、公衆ネットワーク、インターネットを介してアクセス可能であり、または複数のサードパーティによって提供される。語は、中国語文字、日本語文字、および韓国語文字のうちの少なくとも1つを含む。語は漢字文字を含む。
別の態様では、一般には、コンピュータで実施される方法が、ワードコーパスの語に関連するワード確率値を求めること、文書コーパス中の文書の文の候補セグメンテーションを求めること、各文の各候補セグメンテーションについて、候補セグメンテーション中の語に関連するワード確率値に基づいて、セグメンテーション確率値を反復的に求めること、および各語について、語を含む候補セグメンテーションに関するセグメンテーション確率値に基づいて、ワード確率値を反復的に調節することを含む。
この方法の実装は、以下の特徴のうちの1つまたは複数を含むことができる。この方法は、文書に関する文書タイプを識別すること、識別した文書タイプに基づいて、文書中の文に重みを割り当てること、および重みに基づいて、セグメンテーション確率値またはワード確率値のうちの1つを求めることを含む。この方法は、各語について、語を含むセグメンテーションのセグメンテーション確率値に基づいて、カウントを蓄積することを含む。各語についてカウントを蓄積することは、語を含むセグメンテーションのセグメンテーション確率値の和を求めることを含む。この方法は、正規化因子に基づいて語についてのカウントを正規化することにより、各語についてワード確率値を求めることを含む。この方法は、すべての語のカウントの和を求めることによって正規化因子を求めることを含む。
別の態様では、一般には、システムが、ワードコーパスおよび文書コーパスを格納するデータストアと、コンピュータ可読媒体内に格納された処理エンジンとを含み、処理装置で実行可能な命令を含む。命令の実行時に、処理装置は、ワード確率値をワードコーパス内の各語と関連付け、ワードコーパスに基づいて、文書コーパス内の各文書の各文の候補セグメンテーションを求め、ワードコーパス内の各語について、関連するワード確率値および候補セグメンテーションに基づいて、関連するワード確率値を反復的に調節する。
別の態様では、一般には、システムが、ワードコーパスおよび文書コーパスを格納するデータストアと、ワード確率値をワードコーパス内の各語と関連付け、ワードコーパスに基づいて、文書コーパス内の各文書の各文の候補セグメンテーションを求め、ワードコーパス内の各語について、関連するワード確率値および候補セグメンテーションに基づいて、関連するワード確率値を反復的に調節する処理装置とを含む。
別の態様では、一般には、システムが、ワードコーパスおよび文書コーパスを格納するデータストアと、処理装置とを含む。処理装置は、ワードコーパスの語に関連するワード確率値を求め、文書コーパス内の文書の文の候補セグメンテーションを求め、各文の各候補セグメンテーションについて、候補セグメンテーション内の語に関連するワード確率値に基づいて、セグメンテーション確率値を反復的に求め、各語について、語を含む候補セグメンテーションに関するセグメンテーション確率値に基づいて、ワード確率値を反復的に調節する。
別の態様では、一般には、システムが、データストアおよび処理装置を含む。データストアは、語と、反復プロセスを使用して求められる、関連するワード確率値とを含む辞書を格納し、反復プロセスは、文書の文の候補セグメンテーションに関するセグメンテーション確率値を反復的に求めること、およびセグメンテーション確率値に基づいて、語に関するワード確率値を反復的に調節することを含む。処理装置は、辞書から語を選択するように構成されたインプットメソッドエディタを提供する。
別の態様では、一般には、システムが、ワード確率値をワードコーパス内の語と関連付ける手段と、複数の文書中の文を識別する手段と、ワードコーパスに基づいて各文の候補セグメンテーションを求める手段と、ワードコーパス内の各語について、関連するワード確率値および候補セグメンテーションに基づいて、関連するワード確率値を反復的に調節する手段とを含む。
別の態様では、一般には、システムが、ワードコーパスの語に関連するワード確率値を求める手段と、文書コーパス内の文書の文の候補セグメンテーションを求める手段と、各文の各候補セグメンテーションについて、候補セグメンテーション内の語に関連するワード確率値に基づいて、セグメンテーション確率値を反復的に求める手段と、各語について、語を含む候補セグメンテーションに関するセグメンテーション確率値に基づいて、ワード確率値を反復的に調節する手段とを含む。
本明細書で開示されるシステムおよび方法は、以下の利点のうちの1つまたは複数を有することができる。文書のコーパスに基づいて辞書を自動的に最適化することができ、最適化された辞書は、候補語の識別および選択を容易にすることができる。同様に、辞書を使用するIMEは、選択のための候補語の識別をより少数にし、かつ/またはより正確にすることを実現することができる。コンピュータが表語文字、例えば中国語文字を処理する速度および効率を改善することができる。辞書のユーザは、最高の確率値を有する望ましい候補語を容易に得ることができ、その結果、ユーザの表語文字の入力速度を向上させることができる。
本明細書に記載の主題の1つまたは複数の実施形態の詳細が、添付の図面および以下の説明に記載される。説明、図面、および特許請求の範囲から、主題の他の特徴、態様、および利点が明らかとなるであろう。
様々な図面内の同様の参照番号および指示は、同様の要素を示す。
本明細書に記載のシステムおよび方法を実装するのに使用することのできる例示的装置のブロック図である。 例示的編集システムのブロック図である。 例示的インプットメソッドエディタ環境の図である。 例示的ワード確率決定エンジンの図である。 ワード確率値を求めるプロセスの流れ図である。 ワード確率値を求めるプロセスの流れ図である。 ワード確率値を求めるプロセスの流れ図である。
図1は、本明細書に記載のシステムおよび方法を実装するのに使用することのできる例示的装置100のブロック図である。装置100は、例えば、パーソナルコンピュータ装置などのコンピュータ装置、または携帯電話、移動体通信装置、携帯情報端末(PDA)などの他の電子装置として実装することができる。
例示的装置100は、処理装置102、第1データストア104、第2データストア106、入力装置108、出力装置110、およびネットワークインターフェース112を含む。例えばデータバスおよびマザーボードを含む、バスシステム114を使用して、構成要素102、104、106、108、110、および112の間のデータ通信を確立および制御することができる。他の例示的システムアーキテクチャを使用することもできる。
処理装置102は、例えば1つまたは複数のマイクロプロセッサを含むことができる。第1データストア104は、例えば、ダイナミックランダムアクセスメモリなどのランダムアクセスメモリ記憶装置、または他のタイプのコンピュータ可読媒体メモリ装置を含むことができる。第2データストア106は、例えば1つまたは複数のハードドライブ、フラッシュメモリ、および/または読取り専用メモリ、あるいは他のタイプのコンピュータ可読媒体メモリ装置を含むことができる。
例示的入力装置108は、キーボード、マウス、スタイラスなどを含むことができ、例示的出力装置110は、ディスプレイ装置、オーディオ装置などを含むことができる。ネットワークインターフェース112は、例えば、ネットワーク116にデータを通信し、ネットワーク116からデータを通信するように動作可能な有線またはワイヤレスネットワーク装置を含むことができる。ネットワーク116は、1つまたは複数のローカルエリアネットワーク(LAN)、および/またはインターネットなどの広域ネットワーク(WAN)を含むことができる。
ある実装では、装置100は、データストア106などのデータストア内にインプットメソッドエディタ(IME)コード101を含むことができる。実行時に入力方法編集機能を処理装置102に実施させる命令によって、インプットメソッドエディタコード101を定義することができる。一実装では、インプットメソッドエディタコード101は例えば、ウェブブラウザ環境内で実行することのできるスクリプト命令、例えばJava(登録商標)Script命令またはECMAScript命令などの、インタプリタ型命令を含むことができる。他の実装、例えばコンパイル型命令、スタンドアロンアプリケーション、アプレット、プラグインモジュールなどを使用することもできる。
インプットメソッドエディタコード101の実行は、インプットメソッドエディタインスタンス103を生成し、または立ち上げる。インプットメソッドエディタインスタンス103は、インプットメソッドエディタ環境、例えばユーザインターフェースを定義することができ、装置100での1つまたは複数の入力方法の処理を容易にすることができ、1つまたは複数の入力方法の処理中に、装置100は、例えば漢字文字などの、入力文字、表意文字、または記号に関する構成入力(composition input)を受け取ることができる。例えば、ユーザは、入力装置108(例えば、西洋式キーボードなどのキーボード、手書き認識エンジンを備えるスタイラスなど)のうちの1つまたは複数を使用して、漢字文字の特定のために構成入力を入力することができる。ある例では、漢字文字を複数の構成入力と関連付けることができる。
第1データストア104および/または第2データストア106は、構成入力と文字との関連を格納することができる。ユーザ入力に基づいて、インプットメソッドエディタインスタンス103は、データストア104および/またはデータストア106内の情報を使用して、入力によって表される1つまたは複数の候補文字を識別することができる。ある実装では、複数の候補文字が識別される場合、候補文字が出力装置110上に表示される。入力装置108を使用して、ユーザは、候補文字から、ユーザが入力することを望む漢字文字を選択することができる。
ある実装では、装置100上のインプットメソッドエディタインスタンス103は、1つまたは複数のピンイン構成入力を受け取って、構成入力を漢字文字に変換することができる。インプットメソッドエディタインスタンス103は、例えば、キーストロークから受け取ったピンイン音節またはピンイン文字の構成を使用して、漢字文字を表現することができる。各ピンイン音節は、例えば西洋式キーボードのキーに対応することができる。ピンインインプットメソッドエディタを使用して、ユーザは、漢字文字の音を表す1つまたは複数のピンイン音節を含む構成入力を使用することによって漢字文字を入力することができる。ピンインIMEを使用して、ユーザは、漢字文字の音を表す2つ以上のピンイン音節を含む構成入力を使用することによって2つ以上の漢字文字を含む語を入力することもできる。しかし、他の言語用の入力方法をも容易にすることができる。
ウェブブラウザ、ワードプロセッシングプログラム、Eメールクライアントなどを含む他のアプリケーションソフトウェア105をもデータストア104および/または106内に格納することができる。こうしたアプリケーションのそれぞれは、対応するアプリケーションインスタンス107を生成することができる。各アプリケーションインスタンスは、ユーザにデータを提示し、ユーザからのデータ入力を容易にすることにより、ユーザ体験を容易にすることのできる環境を定義することができる。例えば、ウェブブラウザソフトウェアは検索エンジン環境を生成することができ、EメールソフトウェアはEメール環境を生成することができ、ワードプロセッシングプログラムはエディタ環境を生成することができる、などである。
ある実装では、装置100にアクセスすることのできるリモートコンピューティングシステム118を使用して、表語文字を編集することもできる。例えば、装置100は、ネットワーク116を介して表語文字編集機能を提供するサーバでよい。ある例では、ユーザは、リモートコンピューティングシステム、例えばクライアントコンピュータを使用して、データストア104および/またはデータストア106内に格納された表語文字を編集することができる。装置100は、例えば、ネットワークインターフェース112を介して、文字を選択し、ユーザから構成入力を受信することができる。処理装置102は、例えば、選択された文字に隣接する1つまたは複数の文字を識別し、受け取った構成入力および隣接する文字に基づいて、1つまたは複数の候補文字を識別することができる。装置100は、候補文字を含むデータ通信をリモートコンピューティングシステムに送り戻すことができる。
図2は、例示的インプットメソッドエディタシステム120のブロック図である。インプットメソッドエディタシステム120は、例えばインプットメソッドエディタコード101ならびに関連するデータストア104および106を使用して実装することができる。インプットメソッドエディタシステム120は、インプットメソッドエディタエンジン122、辞書124、および構成入力テーブル126を含む。他の記憶アーキテクチャを使用することもできる。ユーザは、IMEシステム120を使用して、例えばピンイン文字をタイプすることによって中国語の語または句を入力することができ、IMEエンジン122は、辞書124を探索して、ピンイン文字に合致する1つまたは複数の中国語の語または句をそれぞれ含む候補辞書エントリを識別することができる。
辞書124は、1つまたは複数の言語モデルで使用される表語文字の文字、語、または句、ならびにローマン体ベースのアルファベット、すなわち西洋式のアルファベット、例えば英語、ドイツ語、スペイン語などの文字、語、および句に対応するエントリ128を含む。各語は意味に対応し、1つまたは複数の文字を含むことができる。例えば、「リンゴ」という意味を有する語(「林檎」)は、ピンイン入力「rin」および「go」にそれぞれ対応する2つの漢字文字「林」および「檎」を含む。文字「果」はまた、「fruit」という意味を有する語でもある。辞書エントリ128は、例えば、慣用句(例えば「胸有成竹」)、固有名(例えば、「オーストリア共和国」を意味する「奥地利共和国」)、歴史上の人物または有名人(例えば、「チンギスハーン」を意味する「成吉思汗」)、専門用語(例えば「global positioning system」を意味する「全球定位系統」)、句(「一去不復返」)、本のタイトル(例えば、「dream of the red chamber」を意味する「紅楼夢」)、芸術作品のタイトル(例えば、「upper river during the qing ming festival」を意味する「清明上河図」)、および映画のタイトル(例えば、「crouching tiger, hidden dragon」を意味する「臥虎蔵龍」)などを含むことができ、それぞれは1つまたは複数の文字を含む。
同様に、辞書エントリ128は、例えば、地理的実体または行政的実体、会社名、教育機関名、動物または植物の名前、機械の名前、歌の名前、演劇のタイトル、ソフトウェアプログラムの名前、消費者製品の名前などを含むことができる。辞書124は、例えば、数千の文字、語、および句を含むことができる。
ある実装では、辞書124は、文字間の関係についての情報を含む。例えば、辞書124は、文字に隣接する文字に応じて文字に割り当てられるスコアまたは確率値を含むことができる。辞書124は、エントリ128が一般にどのくらいの頻度で使用されるかを示すために、辞書エントリ128のうちの1つにそれぞれ関連するエントリスコアまたはエントリ確率値を含むことができる。
構成入力テーブル126は、構成入力と、辞書124に格納されたエントリ128との関連を含む。ある実装では、構成入力テーブル126は、辞書124内の各エントリを、インプットメソッドエディタエンジン122で使用される構成入力(例えばピンイン入力)にリンクすることができる。例えば、インプットメソッドエディタエンジン122は、辞書124および構成入力テーブル126内の情報を使用して、辞書124内の1つまたは複数のエントリを構成入力テーブル126内の1つまたは複数の構成入力と関連付けること、および/または同一視することができる。他の関連を使用することもできる。
ある実装では、IMEシステム120内の候補選択項目をランク付けし、ランクに従ってインプットメソッドエディタで提示することができる。
図3は、5個のランク付けされた候補選択項目302を提示する例示的インプットメソッドエディタ環境300の図である。各候補選択項目は、辞書エントリ128または辞書エントリ128の組合せでよい。候補選択項目302は、ピンイン入力304に基づいて識別される。選択インジケータ308が、第1候補選択項目、すなわち「谷歌」を取り囲み、第1候補選択項目が選択されることを示す。ユーザはまた、数字キーを使用して候補選択項目を選択することもでき、または上矢印キーおよび下矢印キーを使用して選択インジケータ308を移動し、候補選択項目を選択することもできる。
上述のように、IMEエンジン122は、辞書124にアクセスして、ユーザによって入力されたピンイン文字に関連する候補エントリ128を識別する。IMEエンジン122は、エントリ確率値を使用して、候補エントリをランク付けし、IME環境300内の候補エントリの配置を決定する。例えば、最高のエントリ確率値を有する候補エントリを、IMEエンジン122によってIME環境300内の第1位置に配置することができる。
辞書124を新しい語、名前、または句で周期的に更新することができる。辞書124内のエントリ128の確率値は、時間の経過につれて変化することがある。例えば、IMEシステム120のユーザによって一般にタイプされる文字、語、および句は、ニュースの出来事および社会の変化に応答して、時間の経過につれて変化することがある。ある実装では、文書コーパス内の文字、語、および句の推定頻度に基づいて、辞書124のエントリ128に関連するエントリ確率値を確立および/または更新することができる。
図4は、例えば選択された語および選択された語に関連する確率値を格納する辞書406を生成することのできる、例示的ワード確率決定エンジン400の図である。各語は、1つまたは複数の漢字文字などの1つまたは複数の文字を有することができる。ある例では、ワードコーパス402を、エントリを含むテーブルとして与えることができ、各エントリは1つの語を含む。ワードコーパス402はまた、非文字記号(例えばコンマまたはセミコロン)によって分離される語を含むテキストファイルでもよい。ワードコーパス402内の各語について、ワード確率決定エンジン400は、反復プロセスを使用して、文書コーパス404内の語の出現確率を求める。ワードコーパス402および文書コーパス404をデータストア内に格納することができる。
この説明では、「語」という用語は、文脈に応じて、1つまたは複数の語を含むことのある連続する文字のシーケンスを含むように広く定義されることがある。ワードコーパス402内のそれぞれの「語」は、辞書124内のエントリの候補であり、辞書124内の各エントリは、1つまたは複数の語を含むことがある。例えば、ワードコーパス402がテーブルとして与えられる場合、ワード確率決定エンジン400は、各エントリを、エントリが複数の語を含むことがあるとしても語として扱う。例えば、エントリは、句、慣用句、固有名、歴史上の人物の名前または有名人、専門用語、本のタイトル、芸術作品のタイトル、映画のタイトルなどを含むことができる。同様に、ワードコーパス402が、語が非文字記号(例えばコンマ)で分離されるテキストファイルとして与えられる場合、ワード確率決定エンジン400は、2つの記号間の連続する文字の各シーケンスを、連続する文字のシーケンスが複数の語を含むことがあるとしても語として扱う。したがって、例えば、「林檎」、「胸有成竹」、「奥地利共和国」、「成吉思汗」、「全球定位系統」、「一去不復返」、「紅楼夢」、「清明上河図」、「臥虎蔵龍」などはすべて、ワード確率決定エンジン400では語として扱われる。
ある例では、ワードコーパス402は、中国語および他の言語の語を含むことができる。例えば、ワードコーパス402および文書コーパス404から辞書406を生成することができる。事前に確立された辞書、ユーザ検索照会、または様々なタイプの文書からワードコーパス402を得ることができる。ワードコーパス402は、例えば、数千以上の語および句を含むことができる。ある実装では、辞書406は、ワードコーパス402内に語および句のサブセットを含むことができる。
ある例では、セット402内のいくつかの最高ランクの語および句が選択され、辞書406に追加される。選択された語および句のそれぞれは、辞書406のエントリとなる。語および句に関連する確率値は、辞書エントリに関連する確率値となる。辞書406のエントリを辞書124に追加し、IMEエンジン122で使用して、ユーザによって入力されたピンイン文字に合致する候補エントリを識別することができる。
文書コーパス404は、例えば、ネットワークを介してアクセスすることのできる文書、例えばウェブページ、Eメールメッセージなどを含むことができる。文書コーパス404は、例えば、e-book、定期刊行物の記事、広告、インスタントメッセージ、ブログ、法的文書、または他のタイプの文書を含むことができる。文書コーパス404は、ニュース、映画、音楽、政治討論、科学的発見、法的問題、健康問題、環境問題などの多種多様な主題を包含する文書を含むことができる。例えば会社のイントラネットまたは公共のインターネットから文書を収集することにより、文書コーパス404を確立することができる。したがって、処理される文書の数は、数百万以上の文書の範囲でよい。文書は、例えば漢字文字、英語文字、数字、句読点、記号、HTMLコードなどを含むことができる。他の文書、例えば文学作品の電子的コレクション、電子図書館などを使用することもできる。
以下で説明するように、ワード確率決定エンジン400は、反復プロセスを使用して、文書コーパス404内の語の出現頻度に基づいて、ワードコーパス402内の語の確率値を求める。ワード確率値を求める反復プロセスを実装するために、ワード確率決定エンジン400は、初期「ソフトカウント」をワードコーパス402内の各語に割り当て、各語に関する初期確率値を求める。ソフトカウントおよび確率値は、例えば、語および関連するソフトカウント値のテーブル412、語および関連する確率値のテーブル414などの1つまたは複数のデータストア内に格納することができる。他のデータ記憶アーキテクチャを使用することもできる。
ワード確率決定エンジン400は、各文書404を文に分割し、ワードコーパス402内の語に基づいて各文のすべての可能なセグメンテーション(それぞれ「候補セグメンテーション」と呼ばれる)を識別するワードセグメンテーションエンジン410を含むことができる。文書404の各文がセグメントにセグメント化された後、各セグメントは、ワードコーパス402内の語である。ある実装では、「文」は、2つの非漢字文字、例えば句読点、数字、記号、またはHTMLコードの間の漢字文字の連続的文字列を指す。したがって、ワード確率決定エンジン400によって処理されている各文は、必ずしも言語規則によって定義される完全な文ではない。
ある実装では、反復プロセスの各反復では、各候補セグメンテーションについての確率値を求めるためにワード確率値が使用され、ワード確率値を調節するためにセグメンテーション確率値が使用される。反復は、収束条件または終了条件が発生するまで、例えば最高の100000個のワード確率値が安定するまで、または100回の反復が完了するまで続行することができる。ある例では、ワード確率値が100回未満の反復後に収束する。
ある実装では、隠れマルコフモデルを使用して文をモデル化することができ、隠れマルコフモデルでは、文の正しいセグメンテーションが未知である。例えば、期待値最大化アルゴリズムを使用して、期待値プロセスおよび最大化プロセスを実装することができる。期待値プロセスは、文書コーパス404内のすべての文のすべての可能なセグメンテーションについて、セグメンテーションの期待尤度(または確率)を求める。最大化プロセスは、語が出現するすべてのセグメンテーションの確率値を加算し、正規化因子を使用して和を正規化することにより、各語の確率値を求める。期待値最大化アルゴリズムは、ワード確率値と、セグメンテーションの確率値を最大にする傾向のあるセグメンテーションとを識別する。例えば、所与の文が、
Figure 2010531492
が最大化されるように[w1]、[w2]、...、および[wk]に分割され、[w1]、[w2]、...、および[wk]のそれぞれは、ワードコーパス402内の語でよく、p(wi)は、語wiに関連するワード確率値である。他の反復プロセスを使用してワード確率値を最大化することもできる。
例えば、ワードコーパス402は、[全]、[球]、[最]、[大]、[的]、[捜]、[索]、[引]、[撃]、[全球]、[最大]、[全球最大]、[捜索]、[引撃]、[捜索引撃]という語を含むことができる。ただし[]は語を表す。以下を含む、ワードコーパス402内の語に基づいて、「全球最大的捜索引撃」という文をいくつかの方式で各セグメントにセグメント化することができる。
[全][球][最][大][的][捜][索][引][撃]、
[全球][最大][的][捜][索][引][撃]、
[全球][最大][的][捜索][引撃]、および
[全球最大][的][捜索引撃]など
上記の例示的セグメンテーションでは、各セグメントは、ワードコーパス402内の語である。ここで、「セグメンテーション」という用語は、文がセグメント化される方式を指す。したがって、[全][球][最][大][的][捜][索][引][撃]は1つのセグメンテーションであり、[全球最大][的][捜索引撃]は別のセグメンテーションである。各セグメンテーションは、1つまたは複数のセグメントを有することができる。例えば、セグメンテーション[全][球][最][大][的][捜][索][引][撃]は、9個のセグメント[全]、[球]、[最]、[大]、[的]、[捜]、[索]、[引]、および[撃]を含む。セグメンテーション[全球最大][的][捜索引撃]は、3個のセグメント[全球最大]、[的]、および[捜索引撃]を含む。
別の例として、ワードコーパス402が語[A]、[B]、[C]、[AB]、[BC]、[ABC]、[D]、および[E]を含み、「A」、「B」、「C」などのそれぞれが漢字文字を表すと仮定する。ワードコーパス402内の語に基づいて、文「ABCDAE」を4つの異なる方式でセグメント化することができる。
[ABC][D][A][E]、
[AB][C][D][A][E]、
[A][BC][D][A][E]、および
[A][B][C][D][A][E]
ワード確率決定エンジン400は、初期「ソフトカウント」をワードコーパス402内の各語に割り当て、各語について初期確率値を求める。ワードソフトカウントは、セグメンテーションの確率値を考慮に入れた、文の様々なセグメンテーション内の語の出現数に対応する。ある実装では、ワードコーパス402内にない文書コーパス404内の語に、低い初期確率値を割り当てることができる。別の他の実装では、ワードコーパス402内にない文書コーパス404内の語を無視することができる。
上記の例では、語[A]、[B]、[C]、[AB]、[BC]、[ABC]、[D]、および[E]に、当初はソフトカウント1が割り当てられると仮定する。すべての語のすべての確率値の和は1に等しいので、各語の確率値は1/8と求められる。最初の反復では、ワード確率決定エンジン400は、セグメンテーション内の語の確率値に基づいて、各セグメンテーションの確率値を求める。例えばセグメンテーション内のすべての語のワード確率値を乗算することにより、セグメンテーション確率値を求めることができる。例えば、文「ABCDAE」のセグメンテーションの確率値は以下の通りでよい。
P([ABC][D][A][E])=(1/8)^4=0.000244、
P([AB][C][D][A][E])-(1/8)^5=0.0000305、
P([A][BC][D][A][E])=(1/8)^5=0.0000305、および
P([A][B][C][D][A][E])=(1/8)^6=0.00000381
ただし、P([][][])は、セグメンテーション[][][]の確率値を表す。
次いで、セグメンテーション確率値が使用されて、語のソフトカウントが調節される。語が尤度piでセグメンテーション内に出現する場合、セグメンテーション内の各語に関するソフトカウント値が、語の各出現について
Figure 2010531492
だけ増分される。ただし、tは可能なセグメンテーションの合計数であり、
Figure 2010531492
は、すべての可能なセグメンテーションの尤度の和に等しい正規化因子である。語が出現するすべてのセグメントのセグメンテーション確率値の寄与を正規化因子で割ったものを加算することにより、特定の語のソフトカウントを求めることができる。正規化因子は、例えばすべてのセグメンテーション確率値の和でよい。上記の例では、正規化因子は、(1/8)^4+(1/8)^5+(1/8)^5+(1/8)^6=0.000309に等しい。
上記の例では、語[A]がセグメンテーション[ABC][D][A][E]および[AB][C][D][A][E]内に1度出現し、セグメンテーション[A][BC][D][A][E]および[A][B][C][D][A][E]内に2度出現し、したがってAのソフトカウントは以下のようになる。
S(A)=((1/8)^4+(1/8)^5+(1/8)^5*2+(1/8)^6*2)/0.000309=0.000343/0.000309=1.11
語[B]は、セグメンテーション[A][B][C][D][A][E]内に1度出現し、したがって語[B]のソフトカウントは、(1/8)^6/0.000309=0.0123に等しい。語[C]は、セグメンテーション[AB][C][D][A][E]および[A][B][C][D][A][E]のそれぞれの中に1度出現し、したがって語[C]のソフトカウントは、((1/8))^5+(1/8)^6)/0.000309=0.111に等しい。語[D]および[E]はどちらも、各セグメンテーション内に1度出現し、したがって語[D]および[E]のソフトカウントはどちらも、((1/8)^4+(1/8)^5+(1/8)^6+(1/8)^5)/0.000309=1に等しい。語[AB]は、セグメンテーション[AB][C][D][A][E]内に1度出現し、したがって語[AB]のソフトカウントは、(1/8)^5/0.000309=0.0988に等しい。語[BC]は、セグメンテーション[A][BC][D][A][E]内に1度出現し、したがって語[BC]のソフトカウントは、(1/8)^5/0.000309=0.0988に等しい。語[ABC]は、セグメンテーション[ABC][D][A][E]内に1度出現し、したがって語[ABC]のソフトカウントは、(1/8)^4/0.000309=0.79に等しい。
最初の反復の終わりに、語のソフトカウントは以下の通りとなる。
S([A])=1.11、
S([B])=0.0123、
S([C])=0.111、
S([D])=1、
S([E])=1、
S([AB])=0.0988、
S([BC])=0.0988、および
S([ABC])=0.79
ただし、S([])は、語[]のソフトカウントを表す。ワードソフトカウントがテーブル412内に格納され、次の文、例えば「ABABCDD」が処理されて、別の組のワードソフトカウントが生成される。文書404中のすべての文が同様に処理され、各文について1組のワードソフトカウントが生成される。
ある実装では、文書コーパス404内の異なるタイプの文書に異なる重みを与えることができ、特定のタイプの文書からの文の候補セグメンテーションの確率値に、その特定のタイプの文書に関連する重み値を掛けることができる。例えば、より正式なものであり、より正確である語を有する文書に、あまり正式ではなく、綴りが誤った語を含むことのある文書よりも大きい重みを与えることができる。例えば、主要な新聞または雑誌の発行者によって出版されたニュース文書に重み17を与えることができ、個人によって生み出されたブログ文書に重み10を与えることができ、他の一般的なウェブ文書に重み1を与えることができ、Eメールメッセージに重み0.7を与えることができる。
上記の例を用いると、主要な新聞または雑誌の発行者のニュース文書から導出されるセグメンテーション確率値に17を掛けることができ、個人のブログ文書から導出されるセグメンテーション確率値に10を掛けることができ、他のタイプのウェブ文書から導出されるセグメンテーション確率値に1を掛けることができ、Eメールメッセージから導出されるセグメンテーション確率値に0.7を掛けることができる。ソフトカウントがセグメンテーション確率値から導出されるので、したがってソフトカウントも文書タイプに基づいて重み付けされる。
ある実装では、すべての文書中のすべての文から導出されるワードソフトカウントが、各語のそれぞれのソフトカウントを加算することによって組み合わされる。例えば、語[A]の最終ソフトカウントが、文書のすべての文のすべてから導出される語[A]のソフトカウントを累積する(例えば加算する)ことによって得られる。各語の確率値が、語のソフトカウントを正規化因子で割ることによって求められる。正規化因子は、例えばすべての語のソフトカウントの和でよい。
例えば、語の累積ソフトカウントが以下の通りであると仮定する。
S([A])=10、
S([B])=2、
S([C])=3、
S([D])=1、
S([E])=3、
S([AB])=2、
S([BC])=2、および
S([ABC])=1
上記の例では、正規化因子は、(10+2+3+1+3+2+2+1)=24に等しい。したがって、ワード確率値は以下のように正規化される。
P([A])=10/24=0.417
P([B])=2/24=0.083
P([C])=3/24=0.125
P([E])=3/24=0.125
P([D])=1/24=0.0417
P([AB])=2/24=0.0833
P([BC])=2/24=0.0833、および
P([ABC])=1/24=0.0417
語および関連するワード確率値をテーブル414内に格納することができ、したがって、最初の反復が完了する。
2回目の反復では、セグメンテーションの確率値が、最初の反復で得られたワード確率値に従って調節される。
P([ABC][D][A][E])=0.0417*0.0417*0.417*0.125=0.0000906、
P([AB][C][D][A][E])=0.0833*0.125*0.0417*0.417*0.125=0.0000226、
P([A][BC][D][A][E])=0.417*0.0833*0.0417*0.417*0.125=0.0000755、および
P([A][B][C][D][A][E])=0.417*0.0833*0.125*0.0417*0.417*0.125=0.00000944
同様に、ワードソフトカウント値が、セグメンテーション確率値を正規化因子で割ったものに従って調節され、正規化因子は、すべての可能なセグメンテーションの確率値の和でよい。この例では、正規化因子は0.0000906+0.0000226+0.0000755+0.00000944=0.000198に等しい。ワードソフトカウント値は以下の通りである。
S([A])=(0.0000906+0.0000226+0.0000755*2+0.00000944*2)/0.000198=1.34、
S([B])=0.00000944/0.000198=0.0477、
S([C])=(0.0000226+0.0000755)/0.000198=0.0000981/0.000198=0.495、
S([D])=(0.0000906+0.0000226+0.0000755+0.00000944)/0.000198=1、
S([E])=(0.0000906+0.0000226+0.0000755+0.00000944)/0.000198=1、
S([AB])=0.0000226/0.000198=0.114、
S([BC])=0.0000755/0.000198=0.381、および
S([ABC])=0.0000906/0.000198=0.458
すべての文からのソフトカウントが累積および正規化されて、語の確率値が得られ、次の反復で、語の確率値が使用されて、セグメンテーション確率値が計算され、以下同様である。反復プロセスは、収束条件または終了条件が発生するまで続行する。例えば、所定の反復回数の後、またはある反復から次の反復でのワード確率値の変化が所定のしきい値となるようにワード確率値が収束した後に、反復プロセスを終了させることができる。他の収束条件または終了条件を使用することもできる。
ある実装では、ソフトカウンティングを動的プログラミングで実施することができる。例えば、文が「C1C2C3...Cn」であり、「C1」、「C2」、「C3」などのそれぞれが文字であると仮定する。この文の内部の任意の語Cj1...Cj2について、そのカウントを
Figure 2010531492
だけ増加させることができる。上式で、
Figure 2010531492
は、Cj1の左側のサブストリングのすべての可能なセグメンテーションの尤度の和であり、
・ p(Cj1...Cj2)は、語Cj1...Cj2の確率の現在の推定であり、
Figure 2010531492
は、Cj2の右側のサブストリングのすべての可能なセグメンテーションの尤度の和であり、
・ αは、この文のすべての可能なセグメンテーションの尤度の和である正規化定数である。αは
Figure 2010531492
に等しい。
同様に、
Figure 2010531492
および
Figure 2010531492
の値を動的プログラミングで計算することができる。例えば、
Figure 2010531492
に関する帰納的関数は、
Figure 2010531492
i=1、2、...、n+1について、
Figure 2010531492
の値が文の左から右に計算され、その終わりに、
Figure 2010531492
が得られる。次いで、i=n、n-1、...、3、2、1について、値
Figure 2010531492
が文の右から左に計算される。次いで、
Figure 2010531492
の式を用いて、Cj1...Cj2のソフトカウント値を求めることができる。
ある実装では、文書の索引付けおよび/または並列処理を使用することができる。文書コーパス404内の文書数は、大規模である可能性があり、索引付けおよび/または並列処理は、処理時間を削減することができる。ある実装では、例えば、参照によりその内容が本明細書に組み込まれるJeffrey DeanおよびSanjay Ghemawatによる「MapReduce:Simplified Data Processing on Large Clusters」、Sixth Symposium on Operating System Design and Implementation、カリフォルニア州サンフランシスコ、2004年12月で説明されているMapReduceプログラミングモデルを用いて、文書コーパス404の処理を並列に実施することができる。
反復プロセスの終わりに、ワードコーパス402内のすべての語の最終確率値が求められる。ある実装では、ワード確率決定エンジン400は、最高の確率値を有する所定の数(例えば300000)の語を選択し、選択した語および関連するワード確率値を、IMEシステム120によってアクセスされる辞書406内に格納する。辞書406は、例えば図2の辞書124の一部でよい。別の実装では、全ワードコーパスおよび関連する確率値を辞書406内に格納することができる。
図5は、文書コーパス(例えば文書コーパス404)内の語の出現に基づいて、ワードコーパス(例えばワードコーパス402)内の語の確率値を求める例示的プロセス500の流れ図である。プロセス500は、例えば、1つまたは複数のサーバコンピュータを含むシステムとして実装することができる。
プロセス500はワードコーパスを識別する(501)。例えば、ワードコーパスは、図4のワードコーパス402でよい。プロセス500では、初期ソフトカウント値が、ワードコーパス内の語に割り当てられ、初期ワード確率値が求められる(502)。例えば、ワード確率決定エンジン400が、初期ソフトカウント値および初期ワード確率値を割り当てることができる。
プロセス500は、文書コーパスの文書中の文を識別する(504)。プロセス500は、ワードコーパス内の語に基づいて、各文の候補セグメンテーションを求める(506)。例えば、ワードセグメンテーションエンジン410で候補セグメンテーションを求めることができる。
プロセス500は、各候補セグメンテーションについて、例えば候補セグメンテーション内の語の確率値に基づいて確率値を求める(508)。例えば、候補セグメンテーション内の語の各確率値を乗算することにより、候補セグメンテーションに関する確率値を求めることができる。ある実装では、セグメンテーションが導出される文書のタイプに基づいて、セグメンテーション確率値に重み値が掛けられる。
プロセス500は、候補セグメンテーションの確率値に基づいて、各語についてソフトカウントを求める(510)。例えば、語が出現するすべてのセグメンテーションの確率値の寄与を加算することにより、語または句のソフトカウントを求めることができる。
プロセス500は、ソフトカウントを正規化因子で割ることによって各語の確率値を求める(512)。正規化因子は、例えばすべてのソフトカウントの和でよい。
プロセス500は、終了条件が発生したかどうかを判定する(514)。終了条件は、例えば、所定の反復回数の実施、または確率値の収束、または何らかの他の条件を含むことができる。
終了条件が発生しなかった場合、セグメンテーション確率値の決定(508)、ソフトカウントの決定(510)、およびワード確率値の決定(512)が反復される。
終了条件が発生した場合、プロセス500は、最高の確率値を有する所定の数(例えば300000)の語を識別する(516)。
プロセス500は、選択した所定の数の語を、インプットメソッドエディタにとってアクセス可能な辞書に追加する(518)。例えば、IMEは、図2のIMEシステム120でよく、所定の数の語を辞書124に含めることができる。
図6は、文書コーパス内の語の出現に基づいてワードコーパス内の語の確率値を求める例示的プロセス600の流れ図である。プロセス600は、例えば、1つまたは複数のサーバコンピュータを含むシステムとして実装することができる。
プロセス600はワードコーパスを識別する(602)。例えば、ワードコーパスは、図4のワードコーパス402でよい。プロセス600は、ワードコーパス内の各語にワード確率値を関連付ける(604)。例えば、ワード確率決定エンジン400が、ワードコーパス402内の各語にワード確率値を関連付けることができる。プロセス600は文を識別する(606)。例えば、ワード確率決定エンジン400が、文書コーパス404からの文を識別することができる。プロセス600は、ワードコーパスに基づいて文の候補セグメンテーションを求める(608)。例えば、ワード確率決定エンジン400が、文の候補セグメンテーションを求めることができる。プロセス600は、ワードコーパス内の各語について、語に関連する確率値と候補セグメンテーションとに基づいて、関連する確率値を反復的に調節する(610)。例えば、ワード確率決定エンジン400が、各語について、関連する確率値を反復的に調節することができる。
図7は、文書コーパス内の語の出現に基づいてワードコーパス内の語の確率値を求める例示的プロセス700の流れ図である。プロセス700は、例えば、1つまたは複数のサーバコンピュータを含むシステムとして実装することができる。
プロセス700は、ワードコーパスの語に関連するワード確率値を求める(702)。例えば、ワードコーパスは、図4のワードコーパス402でよい。プロセス700は、文書コーパス内の文書の文の候補セグメンテーションを求める(704)。例えば、文書コーパスは文書コーパス404でよい。プロセス700は、各文の各候補セグメンテーションについて、候補セグメンテーション内の語に関連するワード確率値に基づいて、セグメンテーション確率値を反復的に求める(706)。例えば、ワード確率決定エンジン400が、セグメンテーション確率値を反復的に求めることができる。プロセス700は、各語について、語を含む候補セグメンテーションに関するセグメンテーション確率値に基づいて、ワード確率値を反復的に調節する(708)。例えば、ワード確率決定エンジン400が、ワード確率値を反復的に調節することができる。
様々な実装を説明したが、他の実装を使用することもできる。例えば、入力エンジン122は、中国語文字、日本語文字、韓国語文字、および/またはインド語派文字を入力するように西洋式キーボードからの構成入力をマッピングすることができる。ある例では、記載の一部またはすべての実装を、Cangjie入力方法、Jiufang入力方法、Wubi入力方法、または他の入力方法などの他の入力方法に適用可能にすることができる。異なるタイプの文書に対する重み値、および文書のタイプの分類は、上述のものとは異なるものでよい。処理される語、句、および文書の数、ならびに文書コーパス404内の文書の供給源は、上述のものとは異なるものでよい。
ある実装では、いくつかの辞書、例えば法律辞書、医学辞書、科学辞書、および一般辞書を使用することができる。特定の分野に関連する辞書で開始することによって各辞書を確立することができる。ワード確率決定エンジン400が、辞書に関連する分野に偏った文書を有する文書コーパスを処理するのに使用される。例えば、法律辞書内の語の確率値を確立するために、法律分野に偏った文書を有する文書コーパスを使用することができる。IMEシステム120は、文字を入力するときに、ユーザが注目の分野(例えば、法律、医学、科学)を選択することを可能にすることができ、注目の分野に関係する辞書から候補語を選択することができる。
本明細書で説明した主題および機能的動作の実施形態は、本明細書で開示した構造およびその構造的均等物、またはそれらのうちの1つまたは複数の組合せを含む、デジタル電子回路、あるいはコンピュータソフトウェア、ファームウェア、またはハードウェアとして実装することができる。本明細書で説明した主題の実施形態は、1つまたは複数のコンピュータプログラム製品、すなわちデータ処理機器で実行され、またはデータ処理機器の動作を制御する、有形プログラムキャリア上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装することができる。有形プログラムキャリアは、伝播信号またはコンピュータ可読媒体でよい。伝播信号は、適切な受信機機器に伝送され、コンピュータで実行される情報を符号化するように生成される人工的に生成された信号、例えば機械で生成された電気的、光学的、または電磁気的信号である。コンピュータ可読媒体は、機械可読記憶装置、機械可読記憶基板、メモリ装置、機械可読伝播信号をもたらす組成物、あるいはそれらのうちの1つまたは複数の組合せでよい。
「データ処理機器」という用語は、例えばプログラム可能プロセッサ、コンピュータ、あるいは複数のプロセッサまたはコンピュータを含む、データを処理するすべての機器、装置、および機械を包含する。機器は、ハードウェアに加えて、注目のコンピュータプログラムのための実行環境を作成するコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、あるいはそれらの1つまたは複数の組合せを構成するコードを含むことができる。
コンパイル型言語またはインタプリタ型言語、あるいは宣言型言語または手続型言語を含む任意の形式のプログラミング言語で、コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)を書き込むことができ、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチンとして、またはコンピューティング環境での使用に適した他の単位としての形式を含む任意の形式で、コンピュータプログラムを配置することができる。コンピュータプログラムは、必ずしもファイルシステム内のファイルに対応しない。プログラムを、他のプログラムまたはデータを保持するファイルの一部の中に格納することができ(例えば、マークアップ言語文書内に格納された1つまたは複数のスクリプト)、注目のプログラム専用の単一ファイル内に格納することができ、または複数の調整されたファイル内に格納することができる(例えば、1つまたは複数のモジュール、サブプログラム、またはコードの各部分を格納するファイル)。1つのコンピュータ、あるいは1つの場所に位置し、または複数の場所にわたって分散し、通信ネットワークで相互接続される複数のコンピュータ上で実行されるようにコンピュータプログラムを配置することができる。
本明細書で説明したプロセスおよび論理フローは、1つまたは複数のコンピュータプログラムを実行して、入力データに対して作用し、出力を生成することによって機能を実施する1つまたは複数のプログラム可能プロセッサで実施することができる。プロセスおよび論理フローはまた、専用論理回路、例えばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実施することもでき、機器はまた、専用論理回路として実装することもできる。
コンピュータプログラムの実行に適したプロセッサは、例えば、汎用マイクロプロセッサと専用マイクロプロセッサの両方、ならびに任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。一般に、プロセッサは、読取り専用メモリまたはランダムアクセスメモリあるいはその両方から命令およびデータを受け取る。コンピュータの不可欠な要素は、命令を実行するプロセッサと、命令およびデータを格納する1つまたは複数のメモリ装置である。一般に、コンピュータはまた、データを格納する1つまたは複数の大容量記憶装置、例えば磁気ディスク、光磁気ディスク、または光ディスクをも含み、あるいは1つまたは複数の大容量記憶装置からデータを受け取り、または1つまたは複数の大容量記憶装置にデータを転送するように動作可能に結合され、あるいはその両方である。しかし、コンピュータは、そのような装置を有することを必要としない。さらに、別の装置、例えばほんの少数の例を挙げれば、携帯電話、携帯情報端末(PDA)、モバイルオーディオまたはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)受信機置としてコンピュータを実施することができる。
コンピュータプログラム命令およびデータを格納するのに適したコンピュータ可読媒体は、例えば、半導体メモリ装置、例えばEPROM、EEPROM、およびフラッシュメモリ装置、磁気ディスク、例えば内蔵ハードディスクまたは取外し可能ディスク、光磁気ディスク、ならびにCD ROMおよびDVD ROMディスクを含む、すべての形態の不揮発性メモリ、媒体、およびメモリ装置を含む。プロセッサおよびメモリを専用論理回路で補足することができ、またはプロセッサおよびメモリを専用論理回路内に組み込むことができる。
ユーザとの対話を実現するために、本明細書で説明した主題の実施形態は、ユーザに情報を表示するディスプレイ装置、例えばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、ユーザがコンピュータに入力を与えることのできるキーボードおよびポインティングデバイス、例えばマウスまたはトラックボールとを有するコンピュータ上で実装することができる。他の種類の装置を使用して、ユーザとの対話を実現することもでき、例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、例えば視覚フィードバック、聴覚フィードバック、または触覚フィードバックでよく、ユーザからの入力を、音響入力、音声入力、または触覚入力を含む任意の形態で受け取ることができる。
本明細書で説明した主題の実施形態は、バックエンド構成要素を例えばデータサーバとして含み、またはミドルウェア構成要素、例えばアプリケーションサーバを含み、あるいはフロントエンド構成要素、例えばユーザが本明細書で説明した主題の実装と対話することのできるグラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータを含み、あるいは1つまたは複数のそのようなバックエンド構成要素、ミドルウェア構成要素、またはフロンドエンド構成要素の任意の組合せを含むコンピューティングシステムとして実装することができる。任意の形態または媒体のデジタルデータ通信、例えば通信ネットワークでシステムの構成要素を相互接続することができる。通信ネットワークの例は、ローカルエリアネットワーク(「LAN」)、および広域ネットワーク(「WAN」)、例えばインターネットを含む。
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントとサーバは一般に互いに離れており、通常は通信ネットワークを通じて対話する。それぞれのコンピュータ上で動作中であり、互いにクライアントサーバ関係を有するコンピュータプログラムにより、クライアントとサーバの関係が生じる。
本明細書は多くの特定の実装の詳細を含むが、こうしたものを、何らかの発明の範囲、または特許請求することのできるものの範囲に関する制限であると解釈すべきではなく、特定の発明の特定の実施形態に特有であることがある特徴の説明と解釈すべきである。本明細書で、別々の実施形態の文脈で説明したいくつかの特徴を、単一の実施形態としての組合せで実装することもできる。逆に、単一の実施形態の文脈で説明した様々な特徴を、複数の実施形態で別々に実装することもでき、または任意の適切なサブコンビネーションで実装することもできる。さらに、特徴が、いくつかの組合せで働くものとして上記で説明されるものがあり、さらには当初そのように特許請求されるものがあるが、特許請求される組合せからの1つまたは複数の機能を、ある場合には組合せから削除することができ、特許請求される組合せが、サブコンビネーションまたはサブコンビネーションの変形形態を対象とすることができる。
同様に、図面では動作が特定の順序で示されるが、このことは、図示される特定の順序または逐次的な順序でそのような動作を実施すること、または望ましい結果を達成するためにすべての図示される動作が実施されることが必要とされると理解すべきではない。ある状況では、マルチタスキングおよび並列処理が有利であることがある。さらに、上述の実施形態での様々なシステム構成要素の分離は、すべての実施形態でそのような分離を必要とすると理解すべきではなく、記載のプログラム構成要素およびシステムを全般的に単一のソフトウェア製品として一緒に統合することができ、または複数のソフトウェア製品としてパッケージ化することができると理解すべきである。
本明細書に記載の主題の特定の実施形態を説明した。他の実施形態は、以下の特許請求の範囲内にある。例えば、特許請求の範囲に記載の動作を異なる順序で実施し、それでもなお望ましい結果を達成することができる。一例として、添付の図に示されるプロセスは、望ましい結果を達成するために、図示される特定の順序、またはシーケンシャルオーダを必ずしも必要としない。ある実装では、マルチタスキングおよび並列処理が有利であることがある。
100 装置
101 インプットメソッドエディタ(IME)コード
102 処理装置
103 インプットメソッドエディタインスタンス
104 第1データストア
105 他のアプリケーションソフトウェア
106 第2データストア
107 アプリケーションインスタンス
108 入力装置
110 出力装置
112 ネットワークインターフェース
114 バスシステム
116 ネットワーク
118 リモートコンピューティングシステム
120 インプットメソッドエディタシステム
122 インプットメソッドエディタエンジン
124 辞書
126 構成入力テーブル
128 エントリ
300 インプットメソッドエディタ環境
302 候補選択項目
304 ピンイン入力
308 選択インジケータ
400 ワード確率決定エンジン
402 ワードコーパス
404 文書コーパス
406 辞書
410 ワードセグメンテーションエンジン
412 テーブル
414 テーブル

Claims (28)

  1. コンピュータで実施される方法であって、
    ワードコーパスを識別する段階と、
    ワード確率値を前記ワードコーパス内の各語と関連付ける段階と、
    文を識別する段階と、
    前記ワードコーパスに基づいて前記文の候補セグメンテーションを求める段階と、
    前記ワードコーパス内の各語について、関連する前記ワード確率値と前記候補セグメンテーションとに基づいて、関連する前記ワード確率値を反復的に調節する段階と
    を含む方法。
  2. インプットメソッドエディタ辞書内の関連する最高の前記ワード確率値を有する語によって定義される前記ワードコーパスの一部を格納する段階を含む請求項1に記載の方法。
  3. 前記ワード確率値が、関連する語が前記文中に出現する確率に対応する請求項1に記載の方法。
  4. 前記文の候補セグメンテーションを求める段階が、前記ワードコーパスに基づいて、少なくとも1つの文のすべての可能なセグメンテーションを求める段階を含む請求項1に記載の方法。
  5. 前記文の各候補セグメンテーションについてセグメンテーション確率値を求める段階を含む請求項1に記載の方法。
  6. 前記文の各候補セグメンテーションについてセグメンテーション確率値を求める段階が、各候補セグメンテーションについて、前記候補セグメンテーション内の前記語に関連する前記ワード確率値に基づいて、前記セグメンテーション確率値を求める段階を含む請求項5に記載の方法。
  7. 前記ワードコーパス内の各語について、関連する前記ワード確率値および前記候補セグメンテーションに基づいて、関連する前記ワード確率値を反復的に調節する段階が、各語について、前記文の前記候補セグメンテーションに関する前記セグメンテーション確率値に基づいて、関連する前記ワード確率値を反復的に調節する段階を含む請求項5に記載の方法。
  8. 各語について、関連する前記ワード確率値を反復的に調節する段階が、反復ごとに、
    前記文の各候補セグメンテーションについて、前記候補セグメンテーション内の前記語に関連する前記ワード確率値に基づいて、前記セグメンテーション確率値を求める段階と、
    各語について、前記語を含む前記候補セグメンテーションに関する前記セグメンテーション確率値に基づいて、関連する前記ワード確率値を調節する段階と
    を含む請求項1に記載の方法。
  9. 前記文中の語の改善された確率値を求める段階が、(a)前記語の前のサブストリングの候補セグメンテーションの前記確率値の和、(b)前記語の前記確率値、および(c)前記語の後のサブストリングの候補セグメンテーションの前記確率値の和を乗算する段階を含む請求項1に記載の方法。
  10. 前記文の候補セグメンテーションを求める段階が、文書中の複数の文の候補セグメンテーションを求める段階を含む請求項1に記載の方法。
  11. 複数の文書中の文を識別する段階と、各文について、前記ワードコーパスに基づいて、前記文の候補セグメンテーションを求める段階とを含む請求項1に記載の方法。
  12. 前記ワード確率値を求める際に、異なるタイプの文書中の文に、異なる重みが与えられる請求項11に記載の方法。
  13. 前記文書が、公衆ネットワーク、インターネットを介してアクセス可能であり、または複数のサードパーティによって提供される請求項11に記載の方法。
  14. 前記語が、中国語文字、日本語文字、および韓国語文字のうちの少なくとも1つを含む請求項1に記載の方法。
  15. 前記語が漢字文字を含む請求項1に記載の方法。
  16. コンピュータで実施される方法であって、
    ワードコーパスの語に関連するワード確率値を求める段階と、
    文書コーパス中の文書の文の候補セグメンテーションを求める段階と、
    各文の各候補セグメンテーションについて、前記候補セグメンテーション中の前記語に関連する前記ワード確率値に基づいて、セグメンテーション確率値を反復的に求める段階と、
    各語について、前記語を含む前記候補セグメンテーションに関する前記セグメンテーション確率値に基づいて、前記ワード確率値を反復的に調節する段階と
    を含む方法。
  17. 前記文書に関する文書タイプを識別する段階と、
    識別した前記文書タイプに基づいて、前記文書中の文に重みを割り当てる段階と、
    前記重みに基づいて、前記セグメンテーション確率値または前記ワード確率値のうちの1つを求める段階と
    を含む請求項16に記載の方法。
  18. 各語について、前記語を含む前記セグメンテーションの前記セグメンテーション確率値に基づいて、カウントを蓄積する段階を含む請求項16に記載の方法。
  19. 各語について前記カウントを蓄積する段階は、前記語を含む前記セグメンテーションの前記セグメンテーション確率値の和を求める段階を含む請求項18に記載の方法。
  20. 正規化因子に基づいて前記語についての前記カウントを正規化することにより、各語について前記ワード確率値を求める段階を含む請求項18に記載の方法。
  21. すべての前記語の前記カウントの和を求めることによって前記正規化因子を求める段階を含む請求項20に記載の方法。
  22. 語と、反復プロセスを使用して求められる、関連するワード確率値とを含む辞書を確立する段階であって、前記反復プロセスが、文書の文の候補セグメンテーションに関するセグメンテーション確率値を反復的に求める段階と、前記セグメンテーション確率値に基づいて、前記語に関する前記ワード確率値を反復的に調節する段階とを含む段階と、
    前記辞書から語を選択するように構成されたインプットメソッドエディタを提供する段階と
    を含む方法。
  23. ワードコーパスおよび文書コーパスを格納するデータストアと、
    コンピュータ可読媒体内に格納され、処理装置で実行可能な命令を含む処理エンジンであって、前記命令が、実行時に、前記処理装置に、
    ワード確率値を前記ワードコーパス内の各語と関連付けさせ、
    前記ワードコーパスに基づいて、前記文書コーパス内の各文書の各文の候補セグメンテーションを求めさせ、
    前記ワードコーパス内の各語について、関連する前記ワード確率値および前記候補セグメンテーションに基づいて、関連する前記ワード確率値を反復的に調節させる処理エンジンと
    を備えるシステム。
  24. ワードコーパスおよび文書コーパスを格納するデータストアと、
    ワード確率値を前記ワードコーパス内の各語と関連付け、
    前記ワードコーパスに基づいて、前記文書コーパス内の各文書の各文の候補セグメンテーションを求め、
    前記ワードコーパス内の各語について、関連する前記ワード確率値および前記候補セグメンテーションに基づいて、関連する前記ワード確率値を反復的に調節する処理装置と
    を備えるシステム。
  25. ワードコーパスおよび文書コーパスを格納するデータストアと、
    前記ワードコーパスの語に関連するワード確率値を求め、
    前記文書コーパス内の文書の文の候補セグメンテーションを求め、
    各文の各候補セグメンテーションについて、前記候補セグメンテーション内の前記語に関連する前記ワード確率値に基づいて、セグメンテーション確率値を反復的に求め、各語について、前記語を含む候補セグメンテーションに関するセグメンテーション確率値に基づいて、ワード確率値を反復的に調節する処理装置と
    を備えるシステム。
  26. 語と、反復プロセスを使用して求められる、関連するワード確率値とを含む辞書を格納するデータストアであって、前記反復プロセスが、文書の文の候補セグメンテーションに関するセグメンテーション確率値を反復的に求めること、および前記セグメンテーション確率値に基づいて、前記語に関する前記ワード確率値を反復的に調節することを含むデータストアと、
    前記辞書から語を選択するように構成されたインプットメソッドエディタを提供する処理装置と
    を備えるシステム。
  27. ワード確率値をワードコーパス内の語と関連付ける手段と、
    複数の文書中の文を識別する手段と、
    前記ワードコーパスに基づいて各文の候補セグメンテーションを求める手段と、
    前記ワードコーパス内の各語について、関連する前記ワード確率値および前記候補セグメンテーションに基づいて、関連する前記ワード確率値を反復的に調節する手段と
    を備えるシステム。
  28. ワードコーパスの語に関連するワード確率値を求める手段と、
    文書コーパス内の文書の文の候補セグメンテーションを求める手段と、
    各文の各候補セグメンテーションについて、前記候補セグメンテーション内の前記語に関連する前記ワード確率値に基づいて、セグメンテーション確率値を反復的に求める手段と、
    各語について、前記語を含む前記候補セグメンテーションに関する前記セグメンテーション確率値に基づいて、前記ワード確率値を反復的に調節する手段と
    を備えるシステム。
JP2010513604A 2007-06-25 2007-06-25 ワード確率決定 Pending JP2010531492A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2007/001969 WO2009000103A1 (en) 2007-06-25 2007-06-25 Word probability determination

Publications (1)

Publication Number Publication Date
JP2010531492A true JP2010531492A (ja) 2010-09-24

Family

ID=40137418

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010513604A Pending JP2010531492A (ja) 2007-06-25 2007-06-25 ワード確率決定

Country Status (5)

Country Link
US (1) US8630847B2 (ja)
JP (1) JP2010531492A (ja)
KR (1) KR101465770B1 (ja)
CN (1) CN101785000B (ja)
WO (1) WO2009000103A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210042470A1 (en) * 2018-09-14 2021-02-11 Beijing Bytedance Network Technology Co., Ltd. Method and device for separating words

Families Citing this family (140)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60040536D1 (de) 1999-06-11 2008-11-27 Telstra Corp Ltd Verfahren zur entwicklung eines interaktiven systems
AU2002950336A0 (en) * 2002-07-24 2002-09-12 Telstra New Wave Pty Ltd System and process for developing a voice application
AU2002951244A0 (en) 2002-09-06 2002-09-19 Telstra New Wave Pty Ltd A development system for a dialog system
AU2003900584A0 (en) * 2003-02-11 2003-02-27 Telstra New Wave Pty Ltd System for predicting speech recognition accuracy and development for a dialog system
AU2003902020A0 (en) * 2003-04-29 2003-05-15 Telstra New Wave Pty Ltd A process for grammatical inference
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
CN101779200B (zh) * 2007-06-14 2013-03-20 谷歌股份有限公司 词典词和短语确定方法和设备
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
US8521516B2 (en) * 2008-03-26 2013-08-27 Google Inc. Linguistic key normalization
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
US8433708B2 (en) * 2008-09-16 2013-04-30 Kendyl A. Román Methods and data structures for improved searchable formatted documents including citation and corpus generation
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US20100094831A1 (en) * 2008-10-14 2010-04-15 Microsoft Corporation Named entity resolution using multiple text sources
US8798983B2 (en) * 2009-03-30 2014-08-05 Microsoft Corporation Adaptation for statistical language model
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
JP5382651B2 (ja) * 2009-09-09 2014-01-08 独立行政法人情報通信研究機構 単語対取得装置、単語対取得方法、およびプログラム
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US8694304B2 (en) * 2010-03-26 2014-04-08 Virtuoz Sa Semantic clustering and user interfaces
US8676565B2 (en) 2010-03-26 2014-03-18 Virtuoz Sa Semantic clustering and conversational agents
US9378202B2 (en) 2010-03-26 2016-06-28 Virtuoz Sa Semantic clustering
US9600566B2 (en) 2010-05-14 2017-03-21 Microsoft Technology Licensing, Llc Identifying entity synonyms
CN102411563B (zh) * 2010-09-26 2015-06-17 阿里巴巴集团控股有限公司 一种识别目标词的方法、装置及系统
US9524291B2 (en) 2010-10-06 2016-12-20 Virtuoz Sa Visual display of semantic information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
CN103547981A (zh) * 2011-05-20 2014-01-29 微软公司 显示键拼音
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
CN102929864B (zh) * 2011-08-05 2016-08-17 北京百度网讯科技有限公司 一种音字转换方法及装置
US9305082B2 (en) * 2011-09-30 2016-04-05 Thomson Reuters Global Resources Systems, methods, and interfaces for analyzing conceptually-related portions of text
US10176168B2 (en) * 2011-11-15 2019-01-08 Microsoft Technology Licensing, Llc Statistical machine translation based search query spelling correction
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US20130318075A1 (en) * 2012-05-25 2013-11-28 International Business Machines Corporation Dictionary refinement for information extraction
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US10032131B2 (en) 2012-06-20 2018-07-24 Microsoft Technology Licensing, Llc Data services for enterprises leveraging search system data assets
US9594831B2 (en) 2012-06-22 2017-03-14 Microsoft Technology Licensing, Llc Targeted disambiguation of named entities
US9229924B2 (en) * 2012-08-24 2016-01-05 Microsoft Technology Licensing, Llc Word detection and domain dictionary recommendation
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
IL224482B (en) * 2013-01-29 2018-08-30 Verint Systems Ltd System and method for keyword spotting using representative dictionary
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
KR101922663B1 (ko) 2013-06-09 2018-11-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9934217B2 (en) * 2013-07-26 2018-04-03 Facebook, Inc. Index for electronic string of symbols
WO2015018055A1 (en) * 2013-08-09 2015-02-12 Microsoft Corporation Input method editor providing language assistance
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
CN105334952B (zh) * 2014-07-11 2018-12-18 北京搜狗科技发展有限公司 一种文本信息的输入方法和装置
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US9606986B2 (en) * 2014-09-29 2017-03-28 Apple Inc. Integrated word N-gram and class M-gram language models
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
EP3062212A1 (en) * 2015-02-25 2016-08-31 Kyocera Document Solutions Inc. Text editing apparatus and print data storage apparatus
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
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
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10325221B2 (en) * 2015-06-02 2019-06-18 Microsoft Technology Licensing, Llc Metadata tag description generation
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
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
IL242219B (en) 2015-10-22 2020-11-30 Verint Systems Ltd System and method for keyword searching using both static and dynamic dictionaries
IL242218B (en) 2015-10-22 2020-11-30 Verint Systems Ltd A system and method for maintaining a dynamic dictionary
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
CN105488209B (zh) * 2015-12-11 2019-06-07 北京奇虎科技有限公司 一种词权重的分析方法及装置
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10372714B2 (en) * 2016-02-05 2019-08-06 International Business Machines Corporation Automated determination of document utility for a document corpus
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
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
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
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
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
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
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
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
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
CN108549637A (zh) * 2018-04-19 2018-09-18 京东方科技集团股份有限公司 基于拼音的语义识别方法、装置以及人机对话系统
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
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
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
CN109325227A (zh) * 2018-09-14 2019-02-12 北京字节跳动网络技术有限公司 用于生成修正语句的方法和装置
US11829716B2 (en) * 2019-09-06 2023-11-28 International Business Machines Corporation Suggestion of an output candidate
CN111259148B (zh) * 2020-01-19 2024-03-26 北京小米松果电子有限公司 信息处理方法、装置及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10171819A (ja) * 1996-12-06 1998-06-26 Fuji Xerox Co Ltd 情報検索装置
JP2006216044A (ja) * 2005-01-31 2006-08-17 Nec (China) Co Ltd 辞書学習方法、その利用する装置、及び入力方法とその方法を利用するユーザ端末装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6640006B2 (en) * 1998-02-13 2003-10-28 Microsoft Corporation Word segmentation in chinese text
US6356866B1 (en) * 1998-10-07 2002-03-12 Microsoft Corporation Method for converting a phonetic character string into the text of an Asian language
JP2001043221A (ja) * 1999-07-29 2001-02-16 Matsushita Electric Ind Co Ltd 中国語単語分割装置
FI112978B (fi) * 1999-09-17 2004-02-13 Nokia Corp Symbolien syöttö
JP3573688B2 (ja) * 2000-06-28 2004-10-06 松下電器産業株式会社 類似文書検索装置及び関連キーワード抽出装置
US7315982B2 (en) * 2003-02-26 2008-01-01 Xerox Corporation User-tailorable romanized Chinese text input systems and methods
CN1258725C (zh) * 2003-04-18 2006-06-07 清华大学 基于语义构词约束的汉语二字词抽取方法
US7478033B2 (en) * 2004-03-16 2009-01-13 Google Inc. Systems and methods for translating Chinese pinyin to Chinese characters
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
JP4652737B2 (ja) * 2004-07-14 2011-03-16 インターナショナル・ビジネス・マシーンズ・コーポレーション 単語境界確率推定装置及び方法、確率的言語モデル構築装置及び方法、仮名漢字変換装置及び方法、並びに、未知語モデルの構築方法、
US7917355B2 (en) * 2007-08-23 2011-03-29 Google Inc. Word detection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10171819A (ja) * 1996-12-06 1998-06-26 Fuji Xerox Co Ltd 情報検索装置
JP2006216044A (ja) * 2005-01-31 2006-08-17 Nec (China) Co Ltd 辞書学習方法、その利用する装置、及び入力方法とその方法を利用するユーザ端末装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN7012003056; Xianping Ge , Wanda Pratt , Padhraic Smyth: 'Discovering Chinese Words from Unsegmented Text' SIGIR '99 Proceedings of the 22nd annual international ACM SIGIR conference on Research and developm , 1999, page 271-272, ACM *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210042470A1 (en) * 2018-09-14 2021-02-11 Beijing Bytedance Network Technology Co., Ltd. Method and device for separating words

Also Published As

Publication number Publication date
US20080319738A1 (en) 2008-12-25
WO2009000103A1 (en) 2008-12-31
CN101785000B (zh) 2013-04-24
US8630847B2 (en) 2014-01-14
CN101785000A (zh) 2010-07-21
KR20100052461A (ko) 2010-05-19
KR101465770B1 (ko) 2014-11-27

Similar Documents

Publication Publication Date Title
KR101465770B1 (ko) 단어 확률 결정
US10402493B2 (en) System and method for inputting text into electronic devices
US8386240B2 (en) Domain dictionary creation by detection of new topic words using divergence value comparison
JP5379138B2 (ja) 領域辞書の作成
JP5362095B2 (ja) インプットメソッドエディタ
US10558754B2 (en) Method and system for automating training of named entity recognition in natural language processing
Fowler et al. Effects of language modeling and its personalization on touchscreen typing performance
US8688727B1 (en) Generating query refinements
US8046222B2 (en) Segmenting words using scaled probabilities
US8463598B2 (en) Word detection
KR101465769B1 (ko) 사전 단어 및 어구 판정
US9659002B2 (en) System and method for inputting text into electronic devices
JP5710581B2 (ja) 質問応答装置、方法、及びプログラム
TR201816343T4 (tr) Farklı bir karakter setinde yazılmış sorguları ve/veya farklı sayfalardan dili kullanarak aramaya yönelik sistemler ve yöntemler.
US8423350B1 (en) Segmenting text for searching
Jain et al. “UTTAM” An Efficient Spelling Correction System for Hindi Language Based on Supervised Learning
Sharma et al. Word prediction system for text entry in Hindi
WO2022134824A1 (en) Tuning query generation patterns
KR102341563B1 (ko) 매개 텍스트 자료 토픽을 이용한 전문 텍스트 자료 추출 방법
Hemmer et al. Estimating Post-OCR Denoising Complexity on Numerical Texts
US20220382753A1 (en) Narrowing synonym dictionary results using document attributes
Dave et al. A Systematic Review of Stemmers of Indian and Non-Indian Vernacular Languages
Shaila et al. N-grams corpus generation from inverted index for query refinement in information retrieval applications

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100624

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130125

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130528