JPH11505052A - 語彙辞書の検索範囲を削減するシステム及び方法 - Google Patents

語彙辞書の検索範囲を削減するシステム及び方法

Info

Publication number
JPH11505052A
JPH11505052A JP9501676A JP50167697A JPH11505052A JP H11505052 A JPH11505052 A JP H11505052A JP 9501676 A JP9501676 A JP 9501676A JP 50167697 A JP50167697 A JP 50167697A JP H11505052 A JPH11505052 A JP H11505052A
Authority
JP
Japan
Prior art keywords
unverified
group
entry
vector
entries
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.)
Granted
Application number
JP9501676A
Other languages
English (en)
Other versions
JP3077765B2 (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 JPH11505052A publication Critical patent/JPH11505052A/ja
Application granted granted Critical
Publication of JP3077765B2 publication Critical patent/JP3077765B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/26Techniques for post-processing, e.g. correcting the recognition result
    • G06V30/262Techniques for post-processing, e.g. correcting the recognition result using context analysis, e.g. lexical, syntactic or semantic context
    • G06V30/268Lexical context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Machine Translation (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 複数のステップを経て語彙辞書を透過することにより、未検証の文字列を直接比較するエントリーの数を削減する、未検証の文字列をより効率的に語彙辞書と比較するシステム及び方法。この方法は、nグラムの符号化、分割及び細分化を行うプロセスで語彙辞書を作成して開始し、このプロセスは未検証の文字列の処理を行う前に完了することができる。未知なものは、文字列を削減するのと同じ方法で、計算上安価な手法で分割及び細分化により最初に比較する。次に、符号化されたベクトルの比較ステップを行い、最後に最も計算上高価な手法である直接的な文字列比較ステップを行う。語彙辞書の削減は、関連候補語を含むことがある語彙辞書の大部分を任意に削除することなく完了する。同時に、この方法により、未検証の文字列を語彙辞書への全てのエントリーと直接または間接に比較する必要性を回避する。最終候補語のリストは、未検証の文字列について可能性が高くて分類された候補語のみを含み、最終リストのサイズは調節可能である。

Description

【発明の詳細な説明】 語彙辞書の検索範囲を削減するシステム及び方法技術分野 本発明は未検証の一連の文字について有効な候補語と思われる、語彙辞書また は辞書のエントリー数を削減すること、特に光学文字認識(OCR)分析を経た 文字列を、語彙辞書への有効なエントリーと比較するシステム及び方法に関する 。背景技術 光学文字認識(OCR)は改良を続けてきているが、かかるシステムは有効な 単語や単語の組み合わせを用いて、入力された一連の文字を完全に識別すること は必ずしもできない。かかるシステムは、システムが利用可能な辞書にない文字 列の識別につながりうる入力の誤りや文字の誤った識別のために、入力された文 字列を正しく識別できないことがある。あるいは、このシステムは文字列中の文 字全てを識別できないことがある。OCRシステムが文字間または文字列の単語 間の分割点の決定において誤りを犯した場合に、別の困難が生ずる。従って、O CR分析の結果の検証が望ましい。 先行技術においては、未検証または未知の文字列を類似の文字列の辞書または 語彙辞書と比較して、最も近い有効な辞書のエントリーを発見するように試みる ことが知られている。しかし、都市名の辞書の場合のように、この辞書は非常に 大きい。辞書が大きい場合には、未検証の文字列を辞書への全てのエントリーと 比較するのに要する処理時間が極端に長いことがある。 従って、他の場合にはエントリーを未検証の文字列と比較する前に、辞書のサ イズを削減することを試みた。かかる辞書の制限は、システムが読み取ったいく つかの情報に基づくことができる。例えば、道路名の辞書は、システムによって 検出可能な郵便番号にある道路に限定することができる。このアプローチに固有 の問題は、依拠する情報(例では郵便番号)が誤って識別された場合に、辞書の 全く関連しない部分が比較に用いられてしまうことである。 辞書を制限するもうひとつのアプローチは、文字列の最初の3文字を検索キー として使うことであった。つまり、未検証の文字列の最初の3文字を共有する辞 書へのエントリーのみが考慮されるのである。文字列のこの部分に識別の誤りが ある場合は、このアプローチには問題が生ずる。更に、光学文字認識方法におい ては、異なった文字の形状の類似性のために、形状を混同する傾向が固有である 。これは、検索キーによるアプローチでは考慮されず、従って、辞書の関連する 部分を排除する危険がある。辞書を制限する先行した試みのもうひとつの例は、 未検証の文字列の長さを検索キーとして使うことである。この方法によると、所 定の数値で未検証の文字列よりも短いか長い辞書のエントリーは考慮されない。 このアプローチは、文字列の内容を使って類似の辞書のエントリーを発見しない という点で不利である。その結果、大きすぎるリストを提供し、その後のステッ プにおいて処理時間を適切に削減することができないことがある。 代替的アプローチは、未検証の文字列と辞書のエントリーを符号化して、次に 符号化したバージョンを比較するというものである。nグラムの符号化技術は、 未検証の文字列及び個々の辞書のエントリーを表すnグラムのベクトルを比較す るのに適用されてきた。非位置的なnグラムのベクトルは、文字列におけるn個 の隣接する文字それぞれを考慮し、その文字の組み合わせに対応するベクトルの ビットに0または1を割り当てることにより形成される。例えば、英語のアルフ ァベットに基づいたバイ・グラムのベクトルは、合計で676のエントリーにつ いて、AA、AB、AC、AD...ZW、ZX、ZY、ZZの文字の組み合わ せを表すビットを有するであろう。nグラムの符号化技術は、参照することで本 明細書に含めたCavnar,W and Vayda,A.,「効率的不精密なマッチング用にn グラムのリストの上書きされた符号を使用すること」USPS Advanced Tech.Conf .(5),Vol.1.,pp.253-67及びRiseman,E.and Hanson,A,「バイナリーnグラ ムを用いた誤り修正用の文脈後処理システム」IEEE Trans.on Computers.Vol .C 23,No.5,May 1994,pp.480-93に記載されている。 入力された文字列を多数の辞書のエントリーと直接的に比較する場合と同様に 、nグラムの表示の比較も多くの計算時間を消費することがある。また、システ ムが非位置的nグラムの符号化を用いて語彙辞書全体を符号化する場合には、整 合しても文字列が辞書の単語であることを意味しない。辞書全体と共通の特性が あるかどうかを判断するだけであるので、この曖昧さが生ずる。一方、nグラム の 比較は単純なバイナリーの不精密なマッチングという利点を有し、他の多くの比 較スキームよりも速く、文字列や辞書のエントリーが可能なnグラムの組に細分 化される場合には、スペースを節減することができる。しかし、先行するシステ ムにおいては、全ての公知の符号化方法が未検証のベクトルを符号化された辞書 のエントリー全てと比較するので、計算上の損失の問題が残る。先行するシステ ムは、文字列やそのベクトル表示の直接的な比較を行う前に、検索スペースを削 減する効果的な方法を欠いている。 このように、先行技術においては、未検証の文字列について可能性のある正し い整合として考慮される有効な辞書の候補語を削減するために、未検証の文字列 を辞書または語彙辞書のエントリーと比較する効率的なシステムと方法が必要で ある。また、語彙辞書の関連部分を除外せず、正確な整合を含む可能性が高い候 補語のショートリストを生成することができるような方法も必要である。発明の概要 本発明は、語彙辞書のエントリーを用いて文字列を比較するための語彙辞書を 作成して、残りのエントリーが未検証の文字列について整合を含む可能性が高く なるように、未検証の文字列と比較される語彙辞書の部分を削減するために、計 算上効率的であり語彙辞書を少数の候補語に正確に限定する、未検証の文字列を 辞書または語彙辞書のエントリーと比較する改善された方法及びシステムを提供 するものである。 本発明によれば、上記の目的は、辞書または語彙辞書を未検証の文字列と整合 する可能性が高い候補語に削減する、効率的なシステム及び方法を提供すること により達成される。本システム及び方法は、語彙辞書を削減するために最大3個 のステップを利用することができ、各ステップはその前のステップの操作から生 ずる語彙辞書のより小さい部分で操作される。 一般的に表現すると、本発明は、エントリーのひとつ以上の特性に基づいて文 字列のエントリーの表示をグループに分割し、グループのひとつ以上の特性に基 づいてエントリーを語彙辞書にマップしたバケットを含むインデックスにインデ ックス化し、語彙辞書のエントリーを分割するのに使ったのと同じ特性に基づい て、未検証の文字列の表示をグループに分割し、語彙辞書のエントリーをインデ ックスにインデックス化するのに使ったのと同じ特性に基づいて、未検証の文字 列をインデックスにインデックス化し、未検証の文字列の表示を、未検証の文字 列がインデックス化されたバケットの選択に一般的にインデックス化されている 語彙辞書のエントリーのみの表示と比較することにより、文字列を語彙辞書のエ ントリーと比較するシステム及び方法を提供する。発明の好適な実施例において は、例えば語彙辞書において選択された特性が発生する頻度によって、表示が分 割されるグループが分類される。 発明の好適な実施例においては、エントリーの表示を分割するステップは、エ ントリーを表示するnグラムのベクトルを形成し、nグラムのベクトルを削減さ れたビット長のシグネチュア・ベクトルにフォールドし、シグネチュア・ベクト ルをそれぞれ所定のビット数を有するグループに分割することを含む。グループ のビットは、語彙辞書における各ビットの出現頻度の降順で配置されるのが望ま しい。エントリーをインデックス化するステップは、一組のグループのビット値 に基づいて、エントリーのシグネチュア・ベクトルの各グループにひとつずつの 、一組のグループ数値を決定し、グループの数値に等しいバケット・アドレスを 有するシグネチュア・ベクトルの各グループ用のバケットを確立し、グループ数 値のひとつに等しいバケット・アドレスを有する全てのバケットにエントリーを マップすることを含むのが望ましい。分割されたシグネチュア・ベクトルの何れ かのグループが同じグループ数値を有している場合には、重複するグループは無 視される。 エントリーをインデックス化するステップは更に、語彙辞書の残りのシグネチ ュア・ベクトルのグループのグループ数値を決定し、決定された全てのグループ 数値のバケット及びバケット・アドレスを確立し、語彙辞書の残りのエントリー をそれぞれ、エントリーの分割されたシグネチュア・ベクトルのグループのグル ープ数値のひとつに等しいバケット・アドレスを有する全てのバケットにマップ することを含むのが望ましい。 語彙辞書のエントリーの分割及びインデックス化により、所与の語彙辞書に固 定された結果が生ずる。従って、それは何れかの未検証の文字列を分析すること が必要になる前に生じうるし、各未検証の文字列について繰り返される必要はな い。これにより、文字列の同一物が素速く発見されなければならない場合に、未 検証の文字列を分析するのに要する時間が削減される。文字列の速やかな識別は 重要なことになりうる。例えば、未検証の文字列は速く動く小包のラベル上で読 み取られることがある。小包が自動選別ステーションに達する前にラベル上の全 てのアドレス情報を識別するのにかけられる時間は、ほんの数秒であろう。 未検証の文字列を分割しインデックス化するステップは、未検証の文字列を表 すnグラムのベクトルを形成し、nグラムのベクトルを削減されたビット長のシ グネチュア・ベクトルにフォールドし、シグネチュア・ベクトルをそれぞれ所定 のビット数を有するグループに分割し、グループのビット値に基づいて、未検証 の文字列のシグネチュア・ベクトルの各グループにひとつずつの、一組のグルー プ数値を決定し、少なくとも未検証の文字列のシグネチュア・ベクトルの最初の グループについてのグループ数値に等しいバケット・アドレスを有するバケット に、未検証の文字列をマップすることを含むのが望ましい。最初のグループは、 語彙辞書に出現する頻度が最も高いビットを含むのが望ましい。ビット値は1と 0を含んでもよく、グループ数値は、グループのビット値によって形成された二 進法の数に対応する十進法の数を含んでもよい。 分割及びインデックス化に続く比較ステップに言及すると、未検証の文字列と 語彙辞書のエントリーの表示は、フォールドされたnグラムのシグネチュア・ベ クトルを含むことが望ましく、比較ステップは、未検証の文字列のnグラムのシ グネチュア・ベクトルの対応するビットと、未検証の文字列と同じバケットにイ ンデックス化された語彙辞書のエントリーのnグラムの各シグネチュア・ベクト ルの一致を判定することを含むのが望ましい。そうすれば、nグラムのシグネチ ュア・ベクトルが、所定の一致限界値よりも高い対応するビットの標準化された 一致を有するエントリーに限定された語彙辞書の削減された部分を定義すること が可能である。 最後に、本発明は原形の未検証の文字列と原形の語彙辞書の削減された部分の エントリーを選択的に比較できる。これは、原形の未検証の文字列と原形の語彙 辞書の削減された部分のエントリーとの間の変形損失分析を行うステップと、所 定の損失限界値を下回る通常化された変形損失スコアを有するエントリーを含む 候補エントリーの最終リストを定義するステップとを含むのが望ましい。 当業者は、分割及びインデックス化を含む語彙辞書の削減の第一ステップはア プリケーションから独立し、一方、それに続くベクトルと文字列の比較ステップ は、未検証の文字列を生成するOCRなどのアプリケーションに合わせることに より更に効率化できることを理解するであろう。しかし、第一ステップはアプリ ケーションに従属するように作ることができることも理解すべきである。 本発明の別の態様によれば、エントリーの特性に基づいて語彙辞書のエントリ ーの表示をグループに分割するステップと、グループの特性に基づいてエントリ ーを語彙辞書にマップされたバケットからなるインデックスにインデックス化す るステップとを含む、文字列を語彙辞書のエントリーと比較するための語彙辞書 を作成する方法を提供する。 本発明の更に別の態様によれば、語彙辞書のサイズを削減するための好適な3 ステップのプロセスは、符号化された表示が未検証の文字列の符号化された表示 と特性を共有する語彙辞書のエントリーを選択することにより、語彙辞書の第一 の部分を定義し、未検証の文字列の符号化された表示を語彙辞書の第一の部分の エントリーの符号化された表示と直接に比較することにより、第一の部分のいく つかのエントリーを含む語彙辞書の第二の部分を定義し、原形の未検証の文字列 と原形の語彙辞書の第二の部分のエントリーとを直接に比較することにより、第 二の部分のエントリーの少なくともひとつを含む語彙辞書の第三の部分を定義す ることとして、一般的に説明されうる。 本発明の他の目的、特徴及び利点は、発明の好適な実施例に関する以下の説明 を、図面及び添付の請求の範囲と共に検討することで明らかになるであろう。図面の簡単な説明 図1Aは語彙辞書をインデックス化する本発明の技術のステップを概説したシ ステム・フローチャートである。 図1Bは、未検証の文字列を処理するステップを概説したシステム・フローチ ャートである。 図2は図1の分割及び細分化サブルーチンのフローチャートである。 図3は図1の編集距離サブルーチンのフローチャートである。 図4Aはフォールドされたシグネチュア・ベクトルを形成する図2のプロセス を図示している。 図4Bは図2の分割及び細分化ステップのプロセスを図示している。 図5は特定の語彙辞書のエントリーを処理する例を図示している。 図6は本発明を例示した画像化システムの線図である。詳細な説明 まず、明細書の用語については、以下の詳細な説明は、中央演算装置(CPU )、CPU用のメモリ記憶装置及び接続された画素指向表示装置などの従来のコ ンピュータ部品によって履行されるプロセスや操作の象徴的表現で主に記載して いる。これらの操作は、CPUによるデータ・ビットの操作や、ひとつ以上のメ モリ記憶装置に常駐するデータ構造内のこれらのビットの維持を含む。かかるデ ータ構造は、コンピュータのメモリ内に記憶されたデータ・ビットの収集に物理 的構成を課し、特定の電気的または磁気的要素を表す。これらの象徴的表現は、 コンピュータ・プログラミングやコンピュータ製造の当業者が、教示や発見を他 の当業者に最も効率的に伝えるために使用する手段である。 この議論を目的としては、プロセスは一般的に、所望の結果につながる一連の コンピュータで実行されるステップであるものと表現される。これらのステップ は、一般的に物理的量の物理的操作を要する。通常は、必ずしもそうではないが 、これらの量は記憶、転送、結合、比較またはその他の方法で操作されうる電気 的、磁気的または光学的信号の形態を取る。当業者にとっては、これらの信号を ビット、値、要素、シンボル、文字、用語、対象、数値、記録、ファイルなどと 呼ぶのが通常である。しかし、これら及び類似の用語はコンピュータ操作用の適 切な物理的量と関連づけられるべきであり、かつこれらの用語はコンピュータの 操作の範囲内及び操作中に存在する物理的量に適用される通常のラベルに過ぎな いことに注意すべきである。 また、コンピュータ内での操作は、人間のオペレータが行う手動の操作としば しば関連する、加える、比較する、動かすなどの用語でしばしば言及されること も理解されるべきである。かかる人間のオペレータの関与は本発明には必要では ないか望ましくさえないことが理解されなければならない。本明細書中で説明し ている操作は、コンピュータとやり取りする人間のオペレータやユーザと連携し て行われる機械操作である。本発明の操作を行うのに使われる機械は、汎用的な デジタル・コンピュータまたは他の類似の計算装置を含む。 更に、本明細書中で説明しているプログラム、プロセス、方法などは、如何な る特定のコンピュータまたは装置にも関連せずまたは限定されないことを理解す べきである。むしろ、様々の種類の汎用的機械を、本明細書中で説明している教 示に従って作られたプログラムと共に使うことができる。同様に、密結合された 論理または読み出し専用メモリなどの非揮発性メモリに記憶されたプログラムを 用いて、専用コンピュータ・システムにより本明細書中で説明している方法ステ ップを行うための専用化された装置を作ることが有利であると分かるであろう。 ここで図面をより詳細に参照すると、図面中ではいくつかの図をとおして同様 の番号は同様の部分に言及しているが、図1A及び1Bは本発明のシステムによ って実行される語彙辞書削減の方法のシステム・フローチャートを示している。 この方法は、例えば、文字認識システムによる処理の後に、アドレス・ラベルな どの画像から文字列を有効化または識別するのに使うことができる。この方法の 目的は、辞書または語彙辞書を用いて、未検証の文字列について最も整合する候 補語として取り上げられる、その語彙辞書からの名称の数を狭めることである。 かかる語彙辞書の例は米国の都市名のリストであり、これは約45,000の 有効なエントリーを含むことができるようである。未検証の文字列は、関連フィ ールド(住所における都市名など)から、集中的なOCR処理によって生成され るようである。未検証の文字列には誤りや問題が生ずることがあり、それで識別 が困難になる。「文字列」という用語は、個々の単語あるいは一連の単語または その他の文字に言及するのに本明細書中で広く用いている。例えば、「132 Front St., Elm Wood, IN 45509」という一連の 語において、全体は文字列でもあり、個々の構成部分またはそれらの組み合わせ でもありうる。この例では、都市名のフィールドは「Elm Wood」を含む 。 以下に詳細に説明するように、この方法には次の2つの段階がある。(1)語 彙辞書自体の固定的操作(図1A)と(2)語彙辞書を動的に操作して候補の止 しい文字列のショートリストに到達するための未検証の文字列の使用(図1B) 。 第一段階は、実時間の処理時間を削減するための語彙辞書の計算前特性を含む。 第二段階は、順に3つまでのステップを有する。第一のステップは、未検証の文 字列と特性を共有して最初の候補語のリストを形成する、ひとつ以上のリンクし た語彙辞書の文字列のリストを発見する多重の細分化アプローチを用いる。第二 のステップは次に、フォールドされたバイ・グラムのマッチングに基づいた方法 を使い、リストを透過して第二の候補語リストを生成する。第三のステップは、 編集距離に基づいた方法を、更にリストを透過して最終の候補語リストを生成す るのに適用する。 「内部」語彙辞書処理 上述のように、この方法の第一段階は有効な語彙辞書の文字列(法律上の及び 正しい都市名など)のみを含む。図1Aを参照すると、語彙辞書はフローチャー トのステップ100でメモリにロードされる。全ての下位の格の文字は上位の格 の文字にマップされ、全ての文字間スペースは取り払われ、全ての非英数字は選 択された特定の非英数字(例えば「?」)にマップされる。処理を始めるには、 語彙辞書のエントリーをステップ105で選択し、ステップ110で図2、4及 び5で詳細に示した分割及び細分化サブルーチンを、図4に20で表された選択 されたエントリーについて行う。 図2を参照すると、語彙辞書のエントリー文字列20についての非位置的バイ ・グラムのベクトルがステップ205で形成される。図4Aに示したバイ・グラ ムのベクトル22は、長さ26×26=676ビットで、そのエレメントはそれ ぞれの可能性のあるバイ・グラムの英語のアルファベットが文字列で生ずるかど うかに対応して1及び0である。nグラムの符号化は、バイ・グラムの符号化が その例であるが、当業者には公知である。トリ・グラムなどの他のnグラムが用 いることもできるが、バイ・グラムの符号化が好適である。ベクトル22は、各 連続した8ビットのグループを吟味し、グループの何れかのバイ・グラムが以前 に「設定」された(値1を有していた)かどうかによって1または0を割り当て られることにより、ステップ210でフォールドされる。図4Aに示したように 、フォールドされたベクトルの最初のビットは、バイ・グラムのベクトルのAA からAHまでのビットに基づいており、第二のグループはAIからAPなどのビ ッ トに基づいている。吟味される最終グループは4ビットのみを有している。これ は文字列のシグネチュア・ベクトルと呼ばれる85ビットのベクトル25に帰結 する。語彙辞書についての全てのシグネチュア・ベクトルは、予め計算できる。 元の語彙辞書のエントリーは、元の文字列及びそれに対応するシグネチュア・ベ クトルを含む各ラインを用いてステップ215で再フォーマットされる。 バイ・グラムの同じシーケンス(AA−AH、AI−AP)は各語彙辞書のエ ントリーのシグネチュア・ベクトルで生ずる。語彙辞書の固定的処理の前に、こ れらのシグネチュア・ベクトルが分類されることがある。カウンタは、各ビット (各ビットにつき8バイ・グラムを考慮)が語彙辞書で生ずる頻度をカウントし て、85ビットのそれぞれについて集積される。85ビットは次に、最大のカウ ンタ値(語彙辞書で最も頻繁に発見されるバイ・グラムの組)から始めて、それ に対応する頻度によって降順でソートされる。ソート・プロセスはビット頻度表 となり、それは次に以下に説明する手法で使用されて、語彙辞書のエントリー並 びに未検証の文字列のシグネチュア・ベクトルを分割する。 図4Bを参照すると、シグネチュア・ベクトル25はステップ230で分割さ れて、それぞれ12ビット(gi.t・・gi.12、ここでi=1〜7)の7個のグ ループ30〜36となる。シグネチュア・ベクトルの最後の(85番目の)ビッ トは捨てられる。分割プロセスでは、最初のグループ(i=1)は語彙辞書のビ ット頻度表を使って集められる。ビット・マスクは、12個の最も頻繁に生ずる ビットに対応する12のビット位置を持って、つまり、これらのビットがビット 頻度表の最上部にあるように作られる。特定の語彙辞書のエントリーのシグネチ ュア・ベクトルを分割するには、同じビットがビット・マスクと比較される。エ ントリーのシグネチュア・ベクトルでビットが「1」に設定される場合にのみ、 最初のグループの対応するビットは「1」にセットされる。例えば、ビット番号 2(AI〜AP)が語彙辞書で最も高い発生頻度を有しているバイ・グラムを含 むのであれば、ビットg1.1はエントリーのシグネチュア・ベクトルのビット2 に対応する値を与えられるであろう。つまり、バイ・グラムAI〜APの何れか がバイ・グラムのベクトルに設定されるのであれば、エントリーのシグネチュア ・ベクトルのビット2がセットされており、エントリーの分割されたシグネチュ ア・ ベタトルの最初のグループのビットg1.1がセットされるであろう。同じプロセ スは最初のグループの他のビットを集めるのに使われ、次に他の6個のグループ のビットにも使われる。このように、最初のグループは、所与の語彙辞書の統計 に基づいて最良の特徴のサブセット(シグネチュア・ベクトルにおけるビット位 置)を与え、次のグループは2番目によいサブセットを与える、などとなる。 上記の分割プロセスはアプリケーションに従属する。しかし、シグネチュア・ ベクトルの分割はアプリケーションに従属した方法で行われてもよい。例えば、 アプリケーションがOCRエンジンである場合には、分割プロセスは同じ形状の バイ・グラムを同じビットに、別個の形状のバイ・グラムを異なったビットに、 より「相反する」バイ・グラムを異なったビットにフォールドするなどにより、 アプリケーションに関連づけることができる。 12ビットの各グループは12ビットの二進数とみなされることがあり、それ はステップ235で0から4095の間の十進数に翻訳される(例えば、グルー プのビット・パターンが000000000011であれば、十進数は3であろ う)。これらの数を使用して、バケット・アドレス表40が作成される。各バケ ット・アドレスは、そのアドレスに索引される複数のシグネチュア・ベクトルを 収容する必要があるのであれば、アドレス0に示したように最終的には2つ以上 のバケットを有することができる。各バケットの容量は例えば100ポインタと することができる。バケット・アドレスを共有する全てのバケットはリンクした リストを形成する。都市名の語彙辞書の例においては、あるアドレスは使われず 、最大のリンクされたリストは73ものバケットを有することがある。 語彙辞書のエントリー処理については、方法はステップ240に進み、そこで 分割されたシグネチュア・ベクトル30〜36の7個のグループそれぞれの十進 数は、最大7個のリンクされたリストにシグネチュア・ベクトルを「細分化」す るのに使われる。図4に示したように、アドレス番号0から4095からなるバ ケット・アドレス表40が提供される。各グループ30〜36について、語彙辞 書のシグネチュア・ベクトルのエントリー45へのポインタ42は、そのグルー プの十進数(同じシグネチュア・ベクトルの複写された十進数グループは考慮さ れない)に等しいバケット・アドレスに関連したバケット43に記憶される。ポ インタは語彙辞書の文字列のアドレスを指す。細分化ステップは、シグネチュア ・ベクトル25のグループ30〜36全てについて行われる。シグネチュア・ベ クトル25の全ての非複写グループがバケット・アドレス表に細分化されている 場合には、シグネチュア・ベクトル25に関連した語彙辞書アドレスを指すポイ ンタ42はいくつかのバケット・アドレスに記憶されている。この冗長が最初の 候補語リストを素速く構成する機構を提供する。また、エラー公差も提供する。 この時点で、方法は図1Aの主ルーチンに戻り、ステップ115で語彙辞書の 全てのエントリーが処理されたかどうかが判断される。処理されていなければ、 方法はステップ105に戻り、次の語彙辞書のエントリーが選択される。このよ うに、図2の分割及び細分化サブルーチンが語彙辞書の各エントリーについて行 われる。インデックス化あるいは細分化ステップ240は、語彙辞書の全てのエ ントリーについて実行される。語彙辞書全体が処理されると、個々のバケット・ アドレスの多くは語彙辞書のエントリーの変数に関連する。上記全てのステップ は、何れかの未検証の文字列に対する実際の整合に先だって完了される。グルー プの分割及びリンクされたリスト表40は特定の語彙辞書について固定される。 図5は、都市名の文字列「ADAMS」と仮定された、有効な語彙辞書のエン トリー20’における図2のサブルーチンの操作の短縮化した例を示す。この文 字列は語彙辞書の45番目のエントリーであると推測される。バイ・グラムのベ クトル22’は「1」に設定されたビットADとAMを含み、この文字列で発見 されるバイ・グラムに対応する全てのビットは「1」に設定され、その他のビッ トは「0」にセットされることが理解されるであろう。バイ・グラムのベクトル 22’がフォールドされると、ビットADは最初の8ビットに入り、従ってシグ ネチュア・ベクトル25’の最初のビットは「1」にセットされる。ビットAM はバイグラム・ベクトル22’の2番目の8ビットに入るので、これはシグネチ ュア・ベクトルの2番目のビットについても当てはまる。当業者は、シグネチュ ア・ベクトルの残りのビットは同様の手法で決定されることを理解するであろう 。 シグネチュア・ベクトルが分割されると、最初のグループ30’は語彙辞書で 最も頻繁に生ずるシグネチュア・ベクトルのビットを含む。図示のためにg1.0 及びg1.11が「1」に設定されたビットであると仮定すると、グループ30’の ビ ットの値によって形成される二進数は000001000010であり、これは 十進数66に対応する。従って、45番目の語彙辞書のエントリーは、バケット ・アドレス表のバケット・アドレス番号66にリンクされる。 未検証の文字列に基づいた語彙辞書の削減 ここでの目的は、未検証の文字列と特性を共有する語彙辞書の小さなサブセッ トを発見することである。この語彙辞書のサブセットにある正しい整合の確立は 高いはずである。 まず、図1Bのステップ120では、以下で説明するように、未検証の文字列 20が、細分化されるそのシグネチュア・ベクトルのグループ数と共に入力され る。ステップ125では、未検証の文字列は図2及び4の分割及び細分化サブル ーチンによって処理される。このサブルーチンが各有効な語彙辞書のエントリー を処理したのと基本的に同じ方法で、ステップ205〜235で処理を行い、未 検証の文字列に関するシグネチュア・ベクトルを形成し、シグネチュア・ベクト ルを7個のグループに分割する。 グループ要素によって形成された二進数から翻訳される十進数は、次に、ステ ップ245で語彙辞書のバケット・アドレス表40におけるアドレスにマップさ れることがある。ユーザはステップ120で、(最初のグループが語彙辞書で最 も頻繁に発見されるフォールドされたバイ・グラムを含んでいることを覚えてお り、)未検証の文字列のシグネチュア・ベクトルのグループ何個がマップされる べきかを選択している。バケット・アドレス表に「細分化」されるグループ数は 、未検証の文字列に関する候補語エントリーの最初のリストのサイズを決定し、 従って、それに続くステップに要する処理時間を決定する。正しい語彙辞書のエ ントリーを含める速度と確実性の間には取り決めがある。最初の候補語リストの 各語は、候補語のシグネチュア・ベクトルにおける少なくともひとつのグループ のビット・パターンが、未検証の文字列のシグネチュア・ベクトルのグループの ビット・パターンと同じであるという意味で、未検証の文字列と共通のある特徴 を共有している。2つ以上のグループが細分化されると、各グループについて任 意にリンクされたリストは共に速い処理にリンクされうる。 未検証の文字列と関連するバケット・アドレスを指すポインタのリストが記憶 される。このポインタのリストの内容及び長さは、選択されて細分化されるグル ープの数に左右される。 処理は次に、図2のサブルーチンから図1Bの主ルーチンに戻る。ステップ1 30では、未検証の文字列の選択されたグループによってアドレスされたバケッ トにポインタを有する、有効な語彙辞書のエントリー全てが最初の候補語リスト とみなされる。これらのエントリーは未検証の文字列と特性を共有するので、未 検証の文字列の真の値が候補語リストで発見される可能性が高い。未検証の文字 列のシグネチュア・ベクトルの最初のグループ30を、都市名の語彙辞書用の表 に細分化するのは、例えば可能性のある候補語名の数を元の45,000から約 145に削減することであると分かっている。この数は、バケットは100ポイ ンタの容量を有するものと仮定して、専有されるバケット・アドレスについてリ ンクされたリスト当たり平均1.45のバケット数に基づいている。 ベクトルを比較することによる語彙辞書の更なる削減 ステップ130で識別された最初の候補語の組のみを考慮して、ステップ13 5のプロセスは未検証の文字列のシグネチュア・ベクトルと最初の候補語の各エ ントリーのシグネチュア・ベクトルとを比較して、比較されたベクトルにおける 整合した対応する「ON」(値1)ビットの数を計算する。例えば、0011と 1011の間の整合した「ON」ビットの数は2である。スコアはステップ14 0で標準化され限界値化される。標準化は語彙辞書のエントリーにおいて設定さ れたフォールドされたビットの数に基づいている。つまり、標準化されたスコア は(整合したビット/エントリーの設定されたビット)である。標準化されたス コアはこのように、0と1の間にある。限界値を超える標準化されたスコアを有 するこれらのエントリーのみが、候補語のエントリーの組に保持される。限界値 は、この削減ステップを経て何個の候補語が残るかを制御するように設定できる 。都市名の語彙辞書を例に挙げると、ひとつのグループが細分化された場合の限 界値は0.45で、それを超えた数のグループが細分化された場合には0.35 となるようである。限界値は、次のステップが誤りから回復できるのに十分な候 補語を明らかにするように選択されるが、次のステップで過度の処理時間を要す るほど低くはないようにするべきである。 文字列を比較することによる語彙辞書の更なる削減 ステップ145では、図3に示したように、プロセスは編集距離サブルーチン を呼び出す。このサブルーチンの目的は、文字列自体(未知である残りの候補語 )を比較して、残りの候補語のどれが未検証の文字列に最も近いかを判断するこ とである。このサブルーチンは、未検証の文字列を候補語の文字列に変換したり その逆を行うのに必要な一連の操作を加重する新規な方法を使う。変換の最少総 加重「損失」は、「編集距離」と呼ばれる。候補語の最終リストで限界値未満の 標準化された編集距離を有する候補語の文字列のみを残して、限界値を超える標 準化された編集距離を有する候補語の文字列が除外される。限界値は、望ましく は10個の候補語以下の候補語の設定数に最終リストを制限するように設定でき る。 この最終ステップは、OCRなどの特定のアプリケーション用に最適化される ことが望ましい。これは、変換操作の損失がどれくらい類似した文字が現れるか に左右されるためである。例えば、ある文字は類似の形状を有し、OCRエンジ ンによく混同される。従って、これらの文字を交互に置き換えることは損失を低 くする。 本発明は、参照することで本明細書に含めたLowrance,R.and Wagner,R.,” An Extension of the String-to-String Correction Problem,”J.of the Asso c.for Computing Machinery,Vol.22,No.2.April 1975,pp.177-83; Wagne r,R.and Fischer,M.,”The String-to-String Corrcction Problem,”J.of the Assoc.for Computing Machinery,Vol.21,No.1,January,1974,pp. 168-73; 及びMasek.W.,”A Faster Algorithm Computing StringEdit Distance s,”J.Computer & Systems Sciences,Vol.20,pp.18-31(1980)において説明 されている種類の変換の損失を決定するための方法を使っている。この種の方法 は、「動的プログラミング」を使ってひとつの文字列から他の文字列に変換する 損失を計算し、編集距離(最少損失)を求める。ひとつの文字列の文字に対して 行って、それを他の文字列に変換する操作は、挿入、削除、置換、及び2つの隣 接した文字の入れ替えを含む。OCRのアプリケーションについては、次の損失 をこれらの操作のうちの3つに割り当てることができる。 挿入損失 = 1 削除損失 = 1 入れ替え損失 = 1.5 置換損失は、ひとつの文字が他の文字として誤って識別される可能性によるべ きである。「5」と「S」などの類似の形状を有する文字は、互いに間違われる ことがしばしばあり、従って、置換には小さい損失が割り当てられる。通常は、 考慮されるのは36文字である(26英文字及び10数字)。下位の格の文字は 、損失を計算する前にその上位の格の対応文字にマップされる。可能性のある全 ての置換に関する置換損失を含む、36×36の参照表を作成し記憶させるのが 望ましい。異なったOCRエンジンには異なった表を作成することができる。O CRエンジンが訓練セットの段階でひとつの文字を他の文字と誤って識別しよう とするパーセンテージを求めることにより、表を作成してもよい。その場合には 、補数パーセンテージを置換の損失として割り当てることができる。例えば、訓 練セットにおいて時間の70%でエンジンが「6」を「G」と認識するのであれ ば、「6のGに対する」置換損失は1−0.7=0.3である。 この情報は、各文字とその36個の関連する損失値を、次の4つのグループに 分けるのに使うことができる。 (a)同じ形状 (割り当てられる損失=0) (b)類似の形状 (割り当てられる損失=0.65) (c)それほど類似しない形状 (割り当てられる損失=0.8) (d)異なった形状 (割り当てられる損失=1) ユーザは、実験結果及び形状の類似性に基づいて、表の値のいくつかを、訓練セ ット及びOCRエンジンの両方からの偏向の効果を勘案するように調整したいと 望むであろう。表は補数置換の損失を等しく、つまり損失(x,y)=損失(y ,x)とするように調節することも望ましい。表1は、ひとつのOCRエンジン について決定された36×36の表の値に する ーである。 例として、参照表の「F」列と「P」行との交点においては、損失値0.65が 記憶される。参照表の「F」列と「T」行との交点においては、損失値0.8が 記憶される。参照表の「F」列と「F」行との交点においては、損失値0が記憶 される。参照表の「F」列と「F」以外の全ての行、「E」、「P」、「7」ま たは「T」との交点においては、損失値1が記憶される。 当業者は、置換損失を決定するのに他の技術が使えることを理解されるであろ う。例えば、置換損失をタイピストのタイプの誤りの頻度に基づかせることがで きる。しかし、このアプローチは、誤った分類などOCR分析に特定の誤りを扱 うものではない。 次に図3を参照すると、ステップ305で、長さ|A|を有する文字列Aの文 字を表す列と、長さ|B|を有する文字列Bの文字を表す行を用いて、表または マトリックスDを確立する。このように、Dは|A|×|B|マトリックスであ る。マトリックスの各セルにおいて、D(i,j)は最初のi文字を文字列Aか ら文字列Bの最初のj文字に変換する最少損失である。D(|A|,|B|)は マトリックスの最終セルであり、文字列A全体を文字列B全体に変換する最少損 失を含む(両文字列の間の編集距離)。マトリックスDのテンプレートを以下の 表2に示す。 D(|A|,|B|)を決定するためには、ステップ310で動的プログラミ ング方法が次のセルに進み、セル(1,1)で始まる。この方法はまずD(1, 1)を決定して、次に最初の列の他のセルを左から右に埋め、そして残りの列の セルを各列の行ごとに埋める。各セルでは、先行する隣接セルのひとつについて 既に計算した損失値と、行位置j全体で文字列Bの副文字列を得るのに必要な追 加的変換操作の漸増最少損失とに基づいて値が計算される。先行する隣接セルで の損失値は、D(i,j−1)、D(i−1,j)及びD(i−1,j−1)で ある。Lowrence及びWangerの論文で説明された方法に従って、これらのセルのひ とつは、最少損失D(i,j)について開始損失値を提供する。各セル(i,j ) について、次の4つの変換全てが比較される。 (1)新たな文字を挿入する損失:D(i,j−1)+挿入損失B(j) (2)古い文字を削除する損失:D(i−1,j)+A(i)の削除損失 (3)文字を置換する損失:D(i−1,j−1)+置換損失A(i)→B (j) (4)文字を入れ替える損失:Lowrance及びWagnerの論文、「ALGORITHMS」の 182ページ、19行並びに附属の説明を参照。論文では、H[i,j]が最少 損失のファンクションである。 181ページの論文のパート5.(4)を参照して一般的に説明すると、この 入れ替えのステップは位置(x,y)で始まるが、ここではxとjの間にタッチ ライン(論文で説明されている)があり、iとyの間にもう1本のタッチライン がある。総損失はD(x−1,y−1)+Tであり、ここでTは漸増入れ替え損 失である。損失Tは、削除、挿入及び置換損失の組み合わせである。最初の文字 列は位置 1,...,x,...,iを有し、 (a)まず、位置x+1からi−1で文字を削除して、1,...,x,iを残 し、 (b)次に、x位置とi位置の間に、位置y+1からj−1から2番目の文字列 の文字を挿入して、1,...,x,y+1,...,j−1,iを残し、 (c)最後に、jをiと置換して、1,...,x,y+1,...,j−1, jとする。 損失Tは、ステップ(a)、(b)及び(c)の削除、挿入及び置換損失の合計 である。D(x−1,y−1)は位置1,...,xを変換する損失であるので 、損失Tを加えることで、入れ替えを用いる総損失が算出される。 ステップ315では、これらの計算は最少漸増変換損失を求めるために行われ て比較される。ステップ320では、D(i,j)は上記(1)〜(4)の結果 の最小値となるように設定される。セルが埋められたままであるのならば、ステ ップ325で方法はステップ310に戻り、次のセルに進む。ステップ315及 び320はこのセルについて繰り返される。ステップ325で最終セル(|A| ,|B|)が埋められていると判断されれば、変換損失計算は完了する。ステッ プ 330では、D(|A|,|B|)の値は文字列の長さの平均(|A|+|B| )/2によって標準化され、編集距離は標準化されたD(|A|,|B|)に設 定されて記憶される。ステップ335では、プログラムは試験を行って、未検証 の文字列が、削減された語彙辞書の第二レベルの候補語エントリーの全てと比較 されたかどうかを判断する。比較されていなければ、方法はステップ305に戻 り、次の候補語エントリーについてのマトリックスを確立する。ステップ305 から330は、編集距離が決定されて第二レベル候補語エントリーの全てについ て記憶されるまで繰り返される。 この時点で、方法は図1の主ルーチンに戻り、ステップ150で限界値試験を 編集距離値に適用して、最終候補語リストを選択する。限界値は(1)未検証の 文字列からの標準化された編集距離が最も低い候補語の特定の番号または、(2 )その下では最終リストにおけるのと同様に、未決定の候補語番号が受け入れら れる特定の標準化された編集距離または、(3)特定の標準化された編集距離を 超えない候補語の特定の番号までで設定できる。また、限界値は、バケット・ア ドレス表に細分化されたグループ数に伴って変化することがある。都市名の語彙 辞書の例では、最終限界値は次のようになることがある。 最終候補語リストはステップ155で出力される。 図6を参照すると、本発明は小包11に添付したラベル12の画像を得るため の画像化システム10に具象化できる。カメラ14(CCD検出器を内蔵するこ とが望ましい)は、小包11のパス上に配置される。カメラ14は公知の方法で 操作され、ラベル12の画像を得る。画像の英数字は、例えばSPARC2ワー クステーションであるプロセッサ16で分析される。プロセッサはOCRエンジ ンを含むが、これは当該技術分野で公知のもののひとつであろう。OCRエンジ ンは文字を識別し、それを単語に分けようと試みる。プロセッサ16も、本発明 の方法を実施するように編成されている。当該方法への入力は、プロセッサ16 と関連したメモリ装置に記憶された語彙辞書のエントリーと、画像化された未検 証の文字列を含む。出力装置(図示せず)は、プロセッサに接続されて、候補語 の最終リスト並びにユーザが見直すことを望む中間データを表示、転送または印 刷することができる。文字の画像を得るのに適した画像化システムのひとつは、 参照することにより本明細書に含めた米国特許第5,308,960号で開示さ れている。 本システム及び方法の実施は次の例示から理解できる。 実施例 上記の方法は、SPARC2ワークステーションを使って約45,000の都 市名の語彙辞書並びに、未検証の入力として、実際の世界の住所の画像及びその 真の値(視覚的に決定されキー入力された)からOCRエンジンによって生成し た約670の都市名に適用される。各「未検証の」シグネチュア・ベクトルの最 初のグループを、バケット・アドレス表に細分化することは、約56%の正解率 (真の文字列が上位10の最終候補語にある)と1.3%の不正解率(有効な文 字列が最終リストにない)を生ずる。未検証の文字列の残りの42.7%は拒否 された、つまり、語彙辞書では候補語が発見されなかった。平均速度は入力当た り約53ミリセカンドである。 上位5つのグループが細分化されると、入力当たり約691msの平均速度で 正解率は約85%に上昇し、不正解率は2.4%である(12%が拒否される) 。 上記の説明から、本発明は、未検証の文字列を語彙辞書とより効率的に比較す るシステム及び方法を提供し、語彙辞書を複数のステップを介して透過して未検 証の文字列と直接に比較されるエントリー数を削減することが理解されるであろ う。本方法は、計算上最も費用がかからない分割及び細分化ステップで始まる。 次に、符号化されたベクトル比較ステップに進み、最後に、最も計算上費用がか かる編集距離の直接文字列比較に進む。先行するステップで未検証の文字列につ いて整合が提供されていれば、より費用がかかるステップは省略することができ る。語彙辞書の削減は、未検証の文字列の性質を考慮しており、従って、関連す る候補語を含むであろう語彙辞書の大部分を任意に削除せずに達成できる。同時 に、本方法は、未検証の文字列を語彙辞書の全てのエントリーと直接または間接 に比較する必要を回避する。比較されるエントリーのサブセットは、未検証の文 字列の内容次第で、未検証の文字列ごとに異なる。最終候補語リストは、未検証 の文字列について可能性が高くて分類された候補語のみを含み、最終リストのサ イズは調節できる。 本発明の性質を説明するために記述し図示した部品やパラメータの詳細、材料 及び配列の様々の変更は、以下の請求の範囲に記載した本発明の原理及び範囲か ら逸脱することなく、当業者が行うことができることを更に理解されるであろう 。
【手続補正書】 【提出日】1998年7月31日 【補正内容】 (1)請求の範囲を別紙の通り補正する。 (2)明細書の第7頁第16行目に記載された 「この議論を目的としては、」とあるを 「この議論の目的としては、」と補正する。 (3)明細書の第16頁第25行目に記載された 「36×36の表の値に する ーである。」とあるのを 「36×36の表の値に対するキーである。」と補正する。 (4)明細書の第19頁第6行目に記載された 「Lowrance及びWagner」とあるのを 「Lowrence及びWagner」と補正する。 請求の範囲 1.語彙辞書の各エントリーについて、エントリーを表すnグラムのベクト ルを形成し、 前記nグラムのベクトルを削減されたビット長のシグネチュア・ベクト ル(25)にフォールドし、 前記シグネチュア・ベクトルのビットにインデックスされた語彙辞書の エントリーのバケット(43)を形成し、 語彙辞書のエントリー(45)をその個々のバケットにマップし、 所定の基準に適合する前記バケットのサブセットを選択し、 前記未検証の文字列の表示を前記バケットの前記サブセットのバケット にマップされた語彙辞書のエントリーのみの表示と比較することからなる文字列 (20)を語彙辞書のエントリー(22)と比較する方法において、 (1)前記シグネチュア・ベクトルのビットにインデックスされた語彙辞 書のエントリーのバケットを形成する前記ステップは、 前記語彙辞書の各エントリーの各シグネチュア・ベクトルのビットを、 語彙辞書において各ビットの発生頻度の降順に配置された所定数のビット(g) をそれぞれ有するグループ(30〜36)に分割し、 次に、数値はそれぞれグループの全てのビットにより形成されており、ひとつ 以上のグループ(30〜36)と関連した数値によって識別されたバケット(4 3)へのエントリーをインデックスすることによりエントリーの前記バケット( 43)を形成することを含み、 (2)前記未検証の文字列の表示を、前記バケットの前記サブセットのバ ケットにマップされた語彙辞書のエントリーのみの表示と比較する前記ステップ は、 前記未検証の文字列のシグネチュア・ベクトルのビットを、語彙辞書に おいて各ビットの発生頻度の降順に配置された所定数のビット(g)をそれぞれ 有するグループ(30〜36)に分割し、 次に、前記未検証の文字列を、未検証の文字列の分割されたシグネチュア・ベ クトルのひとつ以上のグループ(30〜36)のビットによって形成された数値 に基づいて前記バケットにインデックスし、 前記未検証の文字列の前記表示を、前記未検証の文字列と同じバケット にインデックスされた語彙辞書のエントリーのみの表示と比較すること、 を含むことを特徴とする、文字列(20)を語彙辞書のエントリー(2 2)と比較する方法。 2.前記数値はグループのビットによって形成された二進数であることをさ らに特徴とする、請求の範囲第1項に記載の方法。 3.所定の基準に適合するエントリーの前記バケットのサブセットを選択す る前記ステップは、前記未検証の文字列またはその表示と語彙辞書の全てのエン トリーとの間の類似性の比較を含まない、請求の範囲第2項に記載の方法。 4.請求項1の方法において前記ステップは、各エントリーについて、 (a)語彙辞書のエントリーを表すnグラムのベクトル(22)を形成する ことと、 (b)複数のnグラムをビットに結合することにより前記nグラムのベクト ルをシグネチュア・ベクトル(25)にフォールドすることと、 (c)語彙辞書において出現頻度が最も高いビットで始め、降順で継続して 、シグネチュア・ベクトルのビットと同じnグラムを有するビットのリストを作 ることと、 (d)二進数を形成するデジットのグループに分割されており、デジットは 同じnグラムを有するシグネチュア・ベクトルのビットが設定されているかどう かによって設定されたりされなかったりする、ビット値はデジットがビットリス トのビットを表す二進数である分割されたベクトル(30〜36)を作ることと 、 (e)分割されたベクトルの全ての可能性のあるビット値に対応するアドレ スを有する複数のバケット(43)を確立することと、 (f)前記語彙辞書のエントリーを、前記語彙辞書のエントリーの分割され たベクトルのビット値に対応するアドレスを有する前記ひとつ以上のバケットに インデックスすることにより、 語彙辞書のエントリーを編成することと、 ステップ(a)〜(d)に従って前記未検証の文字列について分割され たベクトル(30〜36)を作ることと、 前記未検証の文字列を、アドレスが前記未検証の文字列の分割されたベ クトルのビット値に対応するバケット(43)にインデックスすることにより、 特定の未検証の文字列と比較される語彙辞書のエントリーの数を削減すること と、 前記未検証の文字列の表示を、前記未検証の文字列がインデックスされ たバケット・アドレスにインデックスされている語彙辞書のエントリーのみの表 示と比較すること、 とを特徴とする、請求の範囲第1項に記載の方法。 5.前記バケット・アドレスは、分割されたベクトルのビット値によって形 成された二進数に対応する十進数を含む、請求の範囲第4項に記載の方法。 6.比較される語彙辞書のエントリーの数を削減する前記ステップはさらに 、アドレスが分割されたベクトル(30〜36)の選択されたグループに対応す るバケット(43)にインデックスされた、語彙辞書のエントリーに限定された 語彙辞書の削減された部分を定義することを含む、請求の範囲第5項に記載の方 法。 7.前記比較ステップにおける前記未検証の文字列と前記語彙辞書のエント リーの表示は、フォールドされたnグラムのシグネチュア・ベクトル(25)を 含む、請求の範囲第6項に記載の方法。 8.フォールドされたnグラムのシグネチュア・ベクトル(25)は、未検 証の文字列のフォールドされたnグラムのシグネチュア・ベクトルと比較して、 所定の一致限界値よりも高い対応するビットの標準化された一致を有するエント リーに語彙辞書を、さらに削減するステップを含む、請求の範囲第7項に記載の 方法。 9.原形の未検証の文字列と、原形の語彙辞書の更に削減されたエントリー とを比較するステップをさらに含む、請求の範囲第8項に記載の方法。 10.原形の未検証の文字列と、原形の語彙辞書のさらに削減されたエントリ ーのエントリーとを比較する前記ステップは、 原形の未検証の文字列と原形の語彙辞書の削減された部分のエントリー との間の、変形損失分析を行い、 前記変形損失分析において決定された標準化された変形損失スコアに基 づいて、候補語のエントリーの最終リストを定義することを含む、請求の範囲第 9項に記載の方法。 11.前記nグラムのベクトル(22)をシグネチュア・ベクトル(25)に フォールドする前記ステップは、前記nグラムのベクトルの8ビットを前記シグ ネチュア・ベクトルの1ビットに結合することを含む、請求の範囲第4項に記載 の方法。 12.分割されたベクトル(30〜36)を作る前記ステップは、前記シグネ チュア・ベクトルを12ビットのグループに分割することを含む、請求の範囲第 11項に記載の方法。 13.文字列(20)の画像を得て記憶するために操作されるイメージャー( 14)と、 語彙辞書の各エントリーについて、エントリーを表すnグラムのベクト ル(22)を形成し、 前記nグラムのベクトルを削減されたビット長のシグネチュア・ベクト ル(25)にフォールドし、 前記シグネチュア・ベクトルのビットにインデックスされた語彙辞書の エントリーのバケット(43)を形成し、 語彙辞書のエントリー(45)をその個々のバケットにマップし、 所定の基準に適合する前記バケットのサブセットを選択し、 前記未検証の文字列の表示を、前記バケットの前記サブセットのバケッ トにマップされた語彙辞書のエントリーのみの表示と比較するように構成された プロセッサ(16)とを備えた語彙辞書のエントリーを画像における未検証の文 字列にリンクするシステムにおいて、 (1)前記シグネチュア・ベクトルのビットにインデックスされた語彙辞 書のエントリーのバケットを形成する前記プロセッサ・ステップは、 前記語彙辞書の各エントリーの各シグネチュア・ベクトルのビットを、 語彙辞書において各ビットの発生頻度の降順に配置された所定数のビット(g) をそれぞれ有するグループ(30〜36)に分割し、 次に、数値はそれぞれグループの全てのビットにより形成されており、ひとつ 以上のグループ(30〜36)と関連した数値によって識別されたバケット(4 3)へのエントリーをインデックスすることによりエントリーの前記バケット( 43)を形成することを含み、 (2)前記未検証の文字列の表示を、前記バケットの前記サブセットのバ ケットにマップされた語彙辞書のエントリーのみの表示と比較する前記プロセッ サ・ステップは、 前記未検証の文字列のシグネチュア・ベクトルのビットを、語彙辞書に おいて各ビットの発生頻度の降順に配置された所定数のビット(g)をそれぞれ 有するグループ(30〜36)に分割し、 次に、前記未検証の文字列を、未検証の文字列の分割されたシグネチュア・ベ クトルのひとつ以上のグループ(30〜36)のビットによって形成された数値 に基づいて前記バケットにインデックスし、 前記未検証の文字列の前記表示を、前記未検証の文字列と同じバケット にインデックスされた語彙辞書のエントリーのみの表示と比較すること、 を含むことを特徴とする、語彙辞書のエントリーを画像における未検証 の文字列にリンクするシステム。

Claims (1)

  1. 【特許請求の範囲】 1.語彙辞書のエントリーの表示を、前記エントリーの少なくともひとつの特 性に基づいてグループに分割するステップと、 前記エントリーを、前記グループの少なくともひとつの特性に基づいて、語彙 辞書にマップされたバケットの複数のアドレスを含むインデックスにインデック ス化するステップと、 未検証の文字列の表示を、前記語彙辞書のエントリーを分割するのに使用した のと同じ特性に基づいて、グループに分割するステップと、 前記未検証の文字列を、前記語彙辞書のエントリーをインデックス化するのに 使用したのと同じ特性に基づいて、前記インデックスにインデックス化するステ ップと、 前記未検証の文字列の表示を、前記未検証の文字列がインデックスされたバケ ット・アドレスの選択に共通してインデックスされた語彙辞書のエントリーのみ の表示と比較するステップとを含む、文字列を語彙辞書のエントリーと比較する 方法。 2.エントリーの表示を分割する前記ステップは、 エントリーを表すnグラムのベクトルを形成し、 前記nグラムのベクトルを、削減されたビット長のシグネチュア・ベクトルに フォールドし、 前記シグネチュア・ベクトルを、語彙辞書において各ビットの出現する頻度の 降順で配置された所定数のビットをそれぞれ有するグループに分割することを含 む、請求の範囲第1項に記載の方法。 3.各エントリーについて、前記エントリーをインデックス化する前記ステッ プは、 前記グループのビットのビット値に基づいて、前記エントリーの分割されたシ グネチュア・ベクトルの各グループについてひとつ、一組のグループ数値を決定 し、 それぞれグループ数値に等しい複数の独自のバケット・アドレスを確率し、 前記エントリーを、前記エントリーの分割されたシグネチュア・ベクトルのグ ループについて、グループ数値の少なくともひとつに等しい前記バケット・アド レスのひとつ以上と関連したバケットにマップすることを含む、請求の範囲第2 項に記載の方法。 4.エントリーをインデックス化する前記ステップは更に、 前記語彙辞書の残りの分割されたシグネチュア・ベクトルのグループについて 、グループ数値を決定し、 少なくとも全ての決定された非複写グループ数値についてバケット・アドレス を確立し、 前記語彙辞書の各残りのエントリーを、前記エントリーの分割されたシグネチ ュア・ベクトルのグループについて、グループ数値の少なくともひとつに等しい バケット・アドレスを有するバケットにマップするが、各エントリーは特定のバ ケット・アドレスに一回を超えてはマップされないことを含む、請求の範囲第3 項に記載の方法。 5.未検証の文字列を分割しインデックス化する前記ステップは、 未検証の文字列を表すnグラムのベクトルを形成し、 前記nグラムのベクトルを削減されたビット長のシグネチュア・ベクトルにフ ォールドし、 前記シグネチュア・ベクトルを、語彙辞書において各ビットの出現する頻度の 降順で配置された所定数のビットをそれぞれ有するグループに分割し、 前記グループのビットのビット値に基づいて、前記未検証の文字列の分割され たシグネチュア・ベクトルの各グループについてひとつ、一組のグループ値を決 定し、 前記未検証の文字列を、前記未検証の文字列の分割されたシグネチュア・ベク トルの最初のグループに関するグループ数値に等しい少なくとも前記バケット・ アドレスのバケットにマップすることを含む、請求の範囲第4項に記載の方法。 6.前記最初のグループは、前記語彙辞書において出現する頻度が最も高いビ ットを含む請求の範囲第5項に記載の方法。 7.前記比較ステップにおける前記未検証の文字列と前記語彙辞書のエントリ ーの表示は、フォールドされたnグラムのベクトルを含み、前記比較ステップは 、前記未検証の文字列のフォールドされたnグラムのベクトルの対応するビット と、バケット・アドレスの前記選択と関連した前記語彙辞書のエントリーのフォ ールドされたnグラムのベクトルとの一致を決定することを含む、請求の範囲第 1項に記載の方法。 8.フォールドされたnグラムのベクトルはさらに、所定の一致限界値よりも 高い対応するビットの標準化された一致を有するエントリーに限定された語彙辞 書の削減された部分を定義するステップを含む、請求の範囲第7項に記載の方法 。 9.元の形状にある未検証の文字列と元の形状にある語彙辞書の削減された部 分のエントリーとを比較するステップをさらに含む、請求の範囲第7項に記載の 方法。 10.元の形状にある未検証の文字列と元の形状にある語彙辞書の削減された 部分のエントリーとを比較する前記ステップは、 元の形状にある未検証の文字列と元の形状にある語彙辞書削減された部分のエ ントリーの間の変形損失分析を行い、 前記変形損失分析において決定された標準化された変形損失スコアに基づいて 、候補語のエントリーの最終リストを定義することを含む、請求の範囲第7項に 記載の方法。 11.前記比較ステップにおける前記未検証の文字列及び前記語彙辞書のエン トリーの表示は、フォールドされたnグラムのシグネチュア・ベクトルを含む、 請求の範囲第1項に記載の方法。 12.前記語彙辞書のエントリーを分割するのに使用した特性の、語彙辞書に おける発生頻度によって前記グループを形成するステップをさらに含む、請求の 範囲第1項に記載の方法。 13.文字列の画像を得て記憶するのに操作するイメージャーと、 前記エントリーの少なくともひとつの特性に基づいて、語彙辞書のエントリー の表示をグループに分割し、 前記グループの少なくともひとつの特性に基づいて、前記エントリーを語彙辞 書にマップされたバケットの複数のアドレスを含むインデックスにインデックス 化し、 前記語彙辞書のエントリーを分割するのに使用したのと同じ特性に基づいて、 未知の画像化された文字列の表示をグループに分割し、 前記語彙辞書のエントリーを前記インデックスにインデックス化するのに使っ たのと同じ特性に基づいて、前記未検証の文字列を前記インデックスにインデッ クス化し、 前記未検証の文字列の表示を、前記未検証の文字列がインデックスされたバケ ット・アドレスの選択に一般的にインデックスされている語彙辞書のエントリー のみの表示と比較するように構成されたプロセッサとを含む、語彙辞書のエント リーを画像における未検証の文字列にリンクするシステム。 14.前記プロセッサは、 エントリーを表すnグラムのベクトルを形成し、 nグラムのベクトルを削減されたビット長のシグネチュア・ベクトルにフォー ルドし、 前記シグネチュア・ベクトルを、語彙辞書における各ビットの出現頻度の降順 で配置された所定数のビットをそれぞれ有するグループに分割することにより、 エントリーの表示を分割するように構成されている、請求の範囲第13項に記載 のシステム。 15.前記プロセッサは各エントリーについて、 グループのビットのビット値に基づいて、前記エントリーの分割されたシグネ チュア・ベクトルの各グループについてひとつ、一組のグループ数値を決定し、 それぞれグループ数値に等しい複数の独自のバケット・アドレスを確立し、 前記エントリーを、前記エントリーの分割されたシグネチュア・ベクトルのグ ループについて、少なくともひとつのグループ数値に等しいひとつ以上の前記バ ケット・アドレスに関連したバケットにマップすることにより、前記エントリー をインデックスするように構成されている、請求の範囲第14項に記載のシステ ム。 16.前記プロセッサは、 未検証の文字列を表すnグラムのベクトルを形成し、 前記nグラムのベクトルを削減されたビット長のシグネチュア・ベクトルにフ ォールドし、 前記シグネチュア・ベクトルを、語彙辞書において各ビットの出現頻度の降順 で配置された所定数のビットをそれぞれ有するグループに分割し、 前記グループのビットのビット値に基づいて、前記未検証の文字列の分割され たシグネチュア・ベクトルの各グループについてひとつ、一組のグループ数値を 決定し、 前記未検証の文字列を、前記未検証の文字列の分割されたシグネチュア・ベク トルの最初のグループについて、グループ数値に等しい少なくとも前記バケット ・アドレスのバケットにマップすることにより、前記未検証の文字列を分割しイ ンデックスするように構成されている、請求の範囲第15項に記載のシステム。 17.前記最初のグループは前記語彙辞書において出現頻度の最も高いビット を含んでおり、前記ビット値は1及び0を含み、前記グループ値はグループのビ ット値によって形成された二進数に対応する十進数を含み、前記比較ステップに おける前記未検証の文字列及び前記語彙辞書のエントリーの表示は、nグラムの ベクトルを含み、前記プロセッサは前記未検証の文字列の表示を、前記未検証の 文字列のnグラムのベクトルの対応するビットと、バケット・アドレスの前記選 択に関連した前記語彙辞書のエントリーのnグラムのベクトルとの一致を決定す ることにより、前記未検証の文字列がインデックスされたバケット・アドレスの 選択に一般的にインデックスされた語彙辞書のエントリーのみの表示と比較する ように構成されている、請求の範囲第15項に記載のシステム。 18.前記プロセッサはさらに、 元の形状にある未検証の文字列と、元の形状にある語彙辞書の削減された部分 のエントリーとの間の変形損失分析を行い、 前記変形損失分析において決定された標準化された変形損失スコアに基づいて 、候補語エントリーの最終リストを定義することにより、元の形状にある未検証 の文字列と、元の形状にある語彙辞書の削減された部分のエントリーとを比較す るように構成されている、請求の範囲第17項に記載のシステム。 19.語彙辞書のエントリーの表示を、前記エントリーの少なくともひとつの 特性に基づいてグループに分割するステップと、 前記グループの少なくともひとつの特性に基づいて、前記エントリーを語彙辞 書にマップされたバケットの複数のアドレスを含むインデックスにインデックス 化するステップとを含む、文字列を語彙辞書のエントリーと比較するための語彙 辞書を作成する方法。 20.エントリーの表示を分割する前記ステップは、 エントリーを表すnグラムのベクトルを形成し、 前記nグラムのベクトルを削減されたビット長のシグネチュア・ベクトルにフ ォールドし、 前記シグネチュア・ベクトルを、語彙辞書において各ビットの出現頻度の降順 で配置された所定数のビットをそれぞれ有するグループに分割することを含む、 請求の範囲第19項に記載の方法。 21.各エントリーについて、前記エントリーをインデックスする前記ステッ プは、 前記グループのビットのビット値に基づいて、前記エントリーのシグネチュア ・ベクトルの各グループについてひとつ、一組のグループ数値を決定し、 グループ数値にそれぞれ等しい複数の独自のバケット・アドレスを確立し、 前記エントリーを、前記エントリーの分割されたシグネチュア・ベクトルのグ ループについて、少なくともひとつのグループ数値に等しいひとつ以上の前記バ ケット・アドレスに関連したバケットにマップすることを含む、請求の範囲第2 0項に記載の方法。 22.符号化された表示が未検証の文字列の符号化された表示と少なくともひ とつの特性を共有する、前記語彙辞書のエントリーを選択することにより前記語 彙辞書の最初の部分を定義するステップと、 前記未検証の文字列の符号化された表示を、前記語彙辞書の前記最初の部分の エントリーの符号化された表示と直接に比較することにより、前記最初の部分の エントリーのいくつかを含む前記語彙辞書の2番目の部分を定義するステップと 、 元の形状にある未検証の文字列と元の形状にある語彙辞書の2番目の部分のエ ントリーとを直接比較することにより、前記2番目の部分のエントリーの少なく ともひとつを含む前記語彙辞書の3番面の部分を定義するステップとを含む、文 字列を語彙辞書のエントリーと比較する方法。 23.前記符号化された表示は、前記nグラムのベクトルをフォールドするの に使った特性の、語彙辞書における出現頻度によってグループに分割されたnグ ラムのベクトルを含む、請求の範囲第22項に記載の方法。
JP09501676A 1995-06-07 1996-06-05 語彙辞書の検索範囲を削減するシステム及び方法 Expired - Fee Related JP3077765B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US477,481 1995-06-07
US08/477,481 1995-06-07
US08/477,481 US5774588A (en) 1995-06-07 1995-06-07 Method and system for comparing strings with entries of a lexicon
PCT/US1996/009333 WO1996041280A1 (en) 1995-06-07 1996-06-05 System and method for reducing the search scope in a lexicon

Publications (2)

Publication Number Publication Date
JPH11505052A true JPH11505052A (ja) 1999-05-11
JP3077765B2 JP3077765B2 (ja) 2000-08-14

Family

ID=23896088

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09501676A Expired - Fee Related JP3077765B2 (ja) 1995-06-07 1996-06-05 語彙辞書の検索範囲を削減するシステム及び方法

Country Status (7)

Country Link
US (1) US5774588A (ja)
EP (1) EP0834138B1 (ja)
JP (1) JP3077765B2 (ja)
AT (1) ATE180072T1 (ja)
CA (1) CA2222590C (ja)
DE (1) DE69602444T2 (ja)
WO (1) WO1996041280A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005011078A (ja) * 2003-06-19 2005-01-13 Patolis Corp 類似単語検索装置、この方法、このプログラム、このプログラムを記録した記録媒体、および情報検索システム
US10747725B2 (en) 2015-07-14 2020-08-18 Fujitsu Limited Compressing method, compressing apparatus, and computer-readable recording medium

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5963666A (en) * 1995-08-18 1999-10-05 International Business Machines Corporation Confusion matrix mediated word prediction
US6295524B1 (en) * 1996-10-29 2001-09-25 Nec Research Institute, Inc. Learning edit distance costs
US6157905A (en) * 1997-12-11 2000-12-05 Microsoft Corporation Identifying language and character set of data representing text
US7043426B2 (en) * 1998-04-01 2006-05-09 Cyberpulse, L.L.C. Structured speech recognition
JP3541930B2 (ja) * 1998-08-13 2004-07-14 富士通株式会社 符号化装置及び復号化装置
US6249605B1 (en) * 1998-09-14 2001-06-19 International Business Machines Corporation Key character extraction and lexicon reduction for cursive text recognition
US7110998B1 (en) * 1998-10-13 2006-09-19 Virtual Gold, Inc. Method and apparatus for finding hidden patterns in the context of querying applications
US7031985B1 (en) * 1999-03-08 2006-04-18 Oracle International Corporation Lexical cache
US6597809B1 (en) * 1999-03-19 2003-07-22 Raf Technology, Inc. Rollup functions for efficient storage presentation and analysis of data
CA2373207A1 (en) 1999-05-12 2000-11-23 Siemens Aktiengesellschaft Address reading method
DE19933984C2 (de) * 1999-07-20 2001-05-31 Siemens Ag Verfahren zur Bildung und/oder Aktualisierung von Wörterbüchern zum automatischen Adreßlesen
US6671407B1 (en) * 1999-10-19 2003-12-30 Microsoft Corporation System and method for hashing digital images
US6647395B1 (en) * 1999-11-01 2003-11-11 Kurzweil Cyberart Technologies, Inc. Poet personalities
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
US7403888B1 (en) * 1999-11-05 2008-07-22 Microsoft Corporation Language input user interface
US6778683B1 (en) * 1999-12-08 2004-08-17 Federal Express Corporation Method and apparatus for reading and decoding information
US7047493B1 (en) * 2000-03-31 2006-05-16 Brill Eric D Spell checker with arbitrary length string-to-string transformations to improve noisy channel spelling correction
US6668085B1 (en) * 2000-08-01 2003-12-23 Xerox Corporation Character matching process for text converted from images
DE10054124A1 (de) * 2000-10-31 2002-05-08 Peter Linssen Verfahren zur Ermittlung von Ähnlichkeiten zwischen Ereignisfolgen
US6735560B1 (en) * 2001-01-31 2004-05-11 International Business Machines Corporation Method of identifying members of classes in a natural language understanding system
US7356188B2 (en) * 2001-04-24 2008-04-08 Microsoft Corporation Recognizer of text-based work
US6975743B2 (en) * 2001-04-24 2005-12-13 Microsoft Corporation Robust and stealthy video watermarking into regions of successive frames
US6973574B2 (en) * 2001-04-24 2005-12-06 Microsoft Corp. Recognizer of audio-content in digital signals
US6996273B2 (en) 2001-04-24 2006-02-07 Microsoft Corporation Robust recognizer of perceptually similar content
US7020775B2 (en) * 2001-04-24 2006-03-28 Microsoft Corporation Derivation and quantization of robust non-local characteristics for blind watermarking
US7095873B2 (en) * 2002-06-28 2006-08-22 Microsoft Corporation Watermarking via quantization of statistics of overlapping regions
US7006703B2 (en) * 2002-06-28 2006-02-28 Microsoft Corporation Content recognizer via probabilistic mirror distribution
DE10245834A1 (de) * 2002-10-01 2004-04-15 Siemens Ag Verfahren zum Erzeugen von Lern- und/oder Teststichproben
US20040139072A1 (en) * 2003-01-13 2004-07-15 Broder Andrei Z. System and method for locating similar records in a database
US7451168B1 (en) 2003-06-30 2008-11-11 Data Domain, Inc. Incremental garbage collection of data in a secondary storage
US7424498B1 (en) 2003-06-30 2008-09-09 Data Domain, Inc. Probabilistic summary data structure based encoding for garbage collection
US20050086234A1 (en) * 2003-10-15 2005-04-21 Sierra Wireless, Inc., A Canadian Corporation Incremental search of keyword strings
US7831832B2 (en) * 2004-01-06 2010-11-09 Microsoft Corporation Digital goods representation based upon matrix invariances
US20050165690A1 (en) * 2004-01-23 2005-07-28 Microsoft Corporation Watermarking via quantization of rational statistics of regions
US7770014B2 (en) * 2004-04-30 2010-08-03 Microsoft Corporation Randomized signal transforms and their applications
US7529668B2 (en) * 2004-08-03 2009-05-05 Sony Corporation System and method for implementing a refined dictionary for speech recognition
US7895218B2 (en) 2004-11-09 2011-02-22 Veveo, Inc. Method and system for performing searches for television content using reduced text input
US7634810B2 (en) * 2004-12-02 2009-12-15 Microsoft Corporation Phishing detection, prevention, and notification
US8291065B2 (en) * 2004-12-02 2012-10-16 Microsoft Corporation Phishing detection, prevention, and notification
US7788266B2 (en) * 2005-08-26 2010-08-31 Veveo, Inc. Method and system for processing ambiguous, multi-term search queries
US7779011B2 (en) 2005-08-26 2010-08-17 Veveo, Inc. Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results thereof
US7644054B2 (en) * 2005-11-23 2010-01-05 Veveo, Inc. System and method for finding desired results by incremental search using an ambiguous keypad with the input containing orthographic and typographic errors
US8380726B2 (en) 2006-03-06 2013-02-19 Veveo, Inc. Methods and systems for selecting and presenting content based on a comparison of preference signatures from multiple users
US8073860B2 (en) 2006-03-30 2011-12-06 Veveo, Inc. Method and system for incrementally selecting and providing relevant search engines in response to a user query
EP2016513A4 (en) 2006-04-20 2010-03-03 Veveo Inc USER INTERFACE METHODS AND SYSTEMS FOR SELECTING AND PRESENTING CONTENT BASED ON NAVIGATION AND USER SELECTION ACTIONS ASSOCIATED WITH THE CONTENT
US7558725B2 (en) * 2006-05-23 2009-07-07 Lexisnexis, A Division Of Reed Elsevier Inc. Method and apparatus for multilingual spelling corrections
US7536384B2 (en) 2006-09-14 2009-05-19 Veveo, Inc. Methods and systems for dynamically rearranging search results into hierarchically organized concept clusters
US7925986B2 (en) 2006-10-06 2011-04-12 Veveo, Inc. Methods and systems for a linear character selection display interface for ambiguous text input
WO2008063987A2 (en) 2006-11-13 2008-05-29 Veveo, Inc. Method of and system for selecting and presenting content based on user identification
US8549424B2 (en) * 2007-05-25 2013-10-01 Veveo, Inc. System and method for text disambiguation and context designation in incremental search
US8077983B2 (en) 2007-10-04 2011-12-13 Zi Corporation Of Canada, Inc. Systems and methods for character correction in communication devices
US7962507B2 (en) * 2007-11-19 2011-06-14 Microsoft Corporation Web content mining of pair-based data
KR100946145B1 (ko) * 2008-05-13 2010-03-08 성균관대학교산학협력단 서열 유사도 측정 장치 및 그 제어방법
US9124431B2 (en) * 2009-05-14 2015-09-01 Microsoft Technology Licensing, Llc Evidence-based dynamic scoring to limit guesses in knowledge-based authentication
US8856879B2 (en) 2009-05-14 2014-10-07 Microsoft Corporation Social authentication for account recovery
US8644622B2 (en) * 2009-07-30 2014-02-04 Xerox Corporation Compact signature for unordered vector sets with application to image retrieval
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US9101961B2 (en) * 2009-09-24 2015-08-11 Nec Corporation Word recognition apparatus, word recognition method, non-transitory computer readable medium storing word recognition program, and delivery item sorting apparatus
US9703779B2 (en) 2010-02-04 2017-07-11 Veveo, Inc. Method of and system for enhanced local-device content discovery
GB201010545D0 (en) * 2010-06-23 2010-08-11 Rolls Royce Plc Entity recognition
US9384423B2 (en) * 2013-05-28 2016-07-05 Xerox Corporation System and method for OCR output verification
US10043009B2 (en) * 2014-09-24 2018-08-07 Intel Corporation Technologies for software basic block similarity analysis
JP2016099662A (ja) * 2014-11-18 2016-05-30 富士通株式会社 符号化プログラム、符号化装置、符号化方法および検索プログラム
US9928436B2 (en) 2015-07-08 2018-03-27 Conduent Business Services, Llc Lexicon-free, matching-based word-image recognition
CN107102998A (zh) * 2016-02-22 2017-08-29 阿里巴巴集团控股有限公司 一种字符串距离计算方法和装置
US10635693B2 (en) * 2016-11-11 2020-04-28 International Business Machines Corporation Efficiently finding potential duplicate values in data
US10127219B2 (en) * 2016-12-09 2018-11-13 Hong Kong Applied Science and Technoloy Research Institute Company Limited System and method for organizing and processing feature based data structures

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4058795A (en) * 1972-10-03 1977-11-15 International Business Machines Corporation Method and apparatus for context-aided recognition
JPS5729745B2 (ja) * 1974-09-25 1982-06-24
US3969698A (en) * 1974-10-08 1976-07-13 International Business Machines Corporation Cluster storage apparatus for post processing error correction of a character recognition machine
US3995254A (en) * 1975-07-16 1976-11-30 International Business Machines Corporation Digital reference matrix for word verification
US4771385A (en) * 1984-11-21 1988-09-13 Nec Corporation Word recognition processing time reduction system using word length and hash technique involving head letters
US4754489A (en) * 1985-10-15 1988-06-28 The Palantir Corporation Means for resolving ambiguities in text based upon character context
US5133023A (en) * 1985-10-15 1992-07-21 The Palantir Corporation Means for resolving ambiguities in text based upon character context
US5261009A (en) * 1985-10-15 1993-11-09 Palantir Corporation Means for resolving ambiguities in text passed upon character context
JPH0682403B2 (ja) * 1986-03-24 1994-10-19 沖電気工業株式会社 光学式文字読取装置
US5050218A (en) * 1986-08-26 1991-09-17 Nec Corporation Apparatus for recognizing address appearing on mail article
JPS63198154A (ja) * 1987-02-05 1988-08-16 インタ−ナショナル・ビジネス・マシ−ンズ・コ−ポレ−ション つづり誤り訂正装置
ES2030819T3 (es) * 1987-10-16 1992-11-16 Computer Gesellschaft Konstanz Mbh Procedimiento para el reconocimiento automatico de caracteres.
US5062143A (en) * 1990-02-23 1991-10-29 Harris Corporation Trigram-based method of language identification
US5329609A (en) * 1990-07-31 1994-07-12 Fujitsu Limited Recognition apparatus with function of displaying plural recognition candidates
DE69128053T2 (de) * 1990-08-06 1998-02-26 Fujitsu Ltd Wörterbuch-Suchsystem
US5276741A (en) * 1991-05-16 1994-01-04 Trw Financial Systems & Services, Inc. Fuzzy string matcher
CA2077604C (en) * 1991-11-19 1999-07-06 Todd A. Cass Method and apparatus for determining the frequency of words in a document without document image decoding

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005011078A (ja) * 2003-06-19 2005-01-13 Patolis Corp 類似単語検索装置、この方法、このプログラム、このプログラムを記録した記録媒体、および情報検索システム
JP4486324B2 (ja) * 2003-06-19 2010-06-23 ヤフー株式会社 類似単語検索装置、この方法、このプログラム、および情報検索システム
US10747725B2 (en) 2015-07-14 2020-08-18 Fujitsu Limited Compressing method, compressing apparatus, and computer-readable recording medium

Also Published As

Publication number Publication date
JP3077765B2 (ja) 2000-08-14
ATE180072T1 (de) 1999-05-15
CA2222590C (en) 2000-11-07
US5774588A (en) 1998-06-30
EP0834138B1 (en) 1999-05-12
EP0834138A1 (en) 1998-04-08
WO1996041280A1 (en) 1996-12-19
DE69602444T2 (de) 2000-01-05
DE69602444D1 (de) 1999-06-17
CA2222590A1 (en) 1996-12-19

Similar Documents

Publication Publication Date Title
JP3077765B2 (ja) 語彙辞書の検索範囲を削減するシステム及び方法
JP2726568B2 (ja) 文字認識方法及び装置
US10095755B2 (en) Fast identification of complex strings in a data stream
US5745745A (en) Text search method and apparatus for structured documents
US6721451B1 (en) Apparatus and method for reading a document image
JPH0634260B2 (ja) 単語辞書照合装置
US20060045340A1 (en) Character recognition apparatus and character recognition method
JPS62221793A (ja) キャラクタ処理方法及びキャラクタ識別方法
JPH0869476A (ja) 検索システム
JP3071570B2 (ja) 複合のターゲット語に関する辞書データを決定するための装置及び方法
US20170031892A1 (en) System and method for representing sequences of bits
JPH056398A (ja) 文書登録装置及び文書検索装置
CN112307070A (zh) 掩码数据查询方法、装置及设备
JP2003331214A (ja) 文字認識誤り訂正方法、装置及びプログラム
JP2998054B2 (ja) 文字認識方法及び文字認識装置
KR950001059B1 (ko) 한글주소 인식방법 및 장치
JP2922365B2 (ja) Ocr処理システムにおける漢字住所データ処理方法
JP3548372B2 (ja) 文字認識装置
JP4261831B2 (ja) 文字認識処理方法、文字認識処理装置、文字認識プログラム
JP2001092830A (ja) 文字列の照合装置およびその方法
JP2947832B2 (ja) 単語照合方法
JP2918380B2 (ja) 文字認識結果の後処理方法
JP3771369B2 (ja) 文字認識装置及び文字認識処理方法
JPH11120294A (ja) 文字認識装置および媒体
JPS60147888A (ja) 文字認識後処理方法及びその装置

Legal Events

Date Code Title Description
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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080616

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090616

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100616

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees