JPH07506207A - 文字認識におけるストリングのカテゴライズ - Google Patents

文字認識におけるストリングのカテゴライズ

Info

Publication number
JPH07506207A
JPH07506207A JP6518920A JP51892094A JPH07506207A JP H07506207 A JPH07506207 A JP H07506207A JP 6518920 A JP6518920 A JP 6518920A JP 51892094 A JP51892094 A JP 51892094A JP H07506207 A JPH07506207 A JP H07506207A
Authority
JP
Japan
Prior art keywords
string
data
processor
subsequence
ending
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
JP6518920A
Other languages
English (en)
Inventor
カプラン、ロナルド エム.
シュチャトウィッツ、ロバート
ムリンス、アティー ティー.
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xerox Corp
Original Assignee
Xerox Corp
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 Xerox Corp filed Critical Xerox Corp
Publication of JPH07506207A publication Critical patent/JPH07506207A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Character Discrimination (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 発明の名称 文字認識におけるストリングのカテゴライズ発明の背景 本発明は、文字または他のエレメントのストリングのような、ストリングをカテ ゴライズする文字認識方法に関する。
従来のいくつかの文字認識方法は、テキスト中で生じ得る文字ストリングの異な るカテゴリーを考慮することにより認識精度を改善している。例えば、文字認識 を行う製造物(製品)であるゼロンクスイメージングシステムは、いくつかの特 別なアルゴリズムを使用しており、各アルゴリズムは文字ストリングの各カテゴ リーに対応する。あるアルゴリズムは単語を辞書で調べることが可能であり、そ の他のアルゴリズムは句読記号を伴うアラビア数字の適正なストリングを認識可 能である、等となっている。文字候補のストリングが、2つ以上の文字カテゴリ ーに対する実質的可能性を有する候補を含む場合、可能性のある各文字カテゴリ ーに帰着することが予想される存在可能なストリングに対して各認識アルゴリズ ムを適用することにより曖昧さが解消されることが可能である。存在可能なスト リングの内の1つがアルゴリズムの内の1つにより認識される場合、認識結果は 曖昧さを解消するために使用されることが可能である。2つまたはそれ以上の存 在可能なストリングが異なるアルゴリズムにより認識される場合、曖昧さを解消 するためにストリングのカテゴリーのシーケンスが考慮されることが可能である 。
Takahashi らによる米国特許第4.003.022号ではストリング パターン認識方法か記述されている。図1から4、および7に関して記述および 示されているように、文字は順序論理に与えられるシンボルとしてのストリング パターンに分解される。コラム3の52から55行では、シンボルストリングパ ターンを全ての順序論理と比較してとの論理か該パターンを許容したかをチェッ クすることにより各シンボルストリングパターンのクラスが決定されることが記 述されている。
5inha、 R,A1. K、およびPrasada、 B、らによるrVi sual Text Recognition throu■■ C0nteXtual Processing J (Pattern Rec ognition、Vol、21.No、5.1988. 垂吹A463−47 9 )では視覚的テキスト認識方法か記述されている。463ページの最終、<ラグ ラフの冒頭では辞書に関する方法か記述されている。465ページのセクション 25 lては部分辞書が記述されている。467ページのセクション2.6では 、曖昧でない句読記号に基づく単語境界識別が記述されている。467から46 8ページのセクション2.7では、単語境界を識別し、辞書と照合し、修正され たヴイタビネノトを通して検討するための発見的方法の使用が記述されている。
468ページのセクション3、図3および4では辞書の編成および検索が記述さ れており、これらは特にツリー構造ベースの辞書に関する。図3はノード構造を 示し、該ノート構造は、NEXTフィールド、ALTフィールド、文字、単語末 尾記号、およびフラグを含む。473ページの右コラムでは、い(つかの原因に より誤りか発生することが記述されており、該原因は単語中の曖昧な句読記号、 および辞書単語への数値のマツピングを含む。
5rihari、 S、 N、、1(ull、J、J、 、およびChoudh ari、 R,らによるr[ntegrating Div■ rse Knowledge 5ource in Text Recogn山 on」(ACM Transactions on 0ff奄モ■@In format ion Systems、 Vol、 1.No、 1. Ja nuary 1983. pp、 68−87)ではテキスg認識方法 か記述されている。72から74ページのセクション3および図2では辞書の編 成か記述されており、これらは特にレターツリーに関する。図2(a)はノード のフィールドを示し、該ノードフィールドは、トークンを表すCHAR、ビット から成る単語長インジケータアレイを表すWL、単語末尾タグピットを表すE、 およびNEXTとALTERNATEとラベル付けされた2つのポインタを含む 発明の要旨 本発明の1懸様は、文字ストリングカテゴリーを考慮した従来の文字認識方法に おける基本的問題を処理する。前述のように、従来のいくつかの方法は個別のア ルゴリズムを用いて各文字ストリングカテゴリーを処理する。文字候補の各スト リングに対して各カテゴリーのアルゴリズムが実行されなければならないため、 この方法は時間的に非効率的となる。また、各カテゴリーのアルゴリズムを実行 するために必要となる、命令を含むデータが別々に保存されなければならないた め、この方法は空間的にも非効率的となる。
この慾様はさらに、これらの基本的問題を解決する方法の発見に基づいている。
該方法はストリングの全てのカテゴリーに対するアルゴリズムを統合し、その結 果、文字候補の各ストリングに対して単一のアルゴリズムのみが実行される。
該方法はまたストリングの各カテゴリーに対するデータを統合し、その結果、統 合化アルゴリズムにより使用されるデータがコンパクトなものとなる。
この発見は、有向グラフの方法、特に有限状態マシンを表す有向グラフが広範な ストリング認識アルゴリズムを統合することを可能にするという所見に基づいて いる。ストリングの許容可能なカテゴリーは非常に多様であるが、各カテゴリー はそれに対応する有限状態マソン(FSM)として表されることが可能である。
アラヒア数字のような、限りなく多数の存在可能なストリングを含むカテゴリー でさえも、循環FSMとして表されることが可能である。従って、同一のルック アップ(検索)アルゴリズムが各カテゴリーのFSMを表す有向グラフと共に使 用されることが可能である。空間的効率化を実現するために、全てのカテゴリー のFSMが合成FSMに編成されることが可能であり、その結果、合成FSMを 表すために単一の有向グラフのみか必要となる。時間的効率化を実現するために 、文字候補のストリングの認識においてルックアップアルゴリズムが1回だけ実 行される。2つ以上のカテゴリーとして許容可能なストリングを分析するために 、有向グラフは許容可能な各ストリングに対する1つまたはそれ以上のカテゴリ ーを示すデータを含む。
従って、本発明に従うストリングデータはデータユニットのシーケンスを含み、 該データユニットはストリングの文字を示すデータを使用してアクセスされるこ とか可能である。ストリングが許容可能である場合、該文字ストリーシグが許容 可能であることを示す情報と、該ストリングに対するカテゴリー集合を示す情報 とを含むサブシーケンス(部分シーケンス)と共にデータユニットのシーケンス は終了する。従って、文字認識システムのプロセッサはエンディングサブシーン スを使用して、ストリングが許容可能であることと該ストリングのカテゴリー集 合とを示すエンディングデータを得ることか可能である。
冗長性を除去するためにストリングのプリフィクスおよびサフィックスの両者が 無効にされることが可能なように構成されたデータに対して、前述の方法は特に 有利である。カテゴリーインジケータは数が比較的少ないため、許容可能ストリ ングの各々に対してカテゴリーインジケータが存在する場合、各カテゴリーイン ジケータの多くの発生をデータか含むことが予想される。しかし、各ストリング のカテゴリーインジケータかストリングのサフィックスの末尾に保存される場合 、サフィックスを無効にすることはデータ中のカテゴリーインジケータの数を大 きく低減する。有向グラフまたはFSMを表す他のデータに適用することが可能 な公知の最小化アルゴリズムを用いてサフィックスが無効にされることが可能で ある。
前述のようなカテゴリーインジケータを含むストリングデータは、フロッピーデ ィスクのようなデータ保存媒体により保存されることが可能である。データ保存 媒体は命令のような制御データを含むこともまた可能であり、プロセッサはその ようなデータをストリングデータへのアクセス時に使用することが可能である。
従って、文字認識を実行するシステムのプロセッサは制御データおよびストリン グデータを使用して、文字のストリングが許容可能なストリングかどうか、およ び許容可能な場合には該ストリングに対するカテゴリー集合を示すデータを得る ことか可能である。
以下の記述、図面、および請求項は、本発明に関する前述および他の態様、対象 、特徴、および利点をさらに明らかにするものである。
図面の簡単な説明。
図1は、プロセッサがストリングデータを使用してストリングに対するカテゴリ ー集合データを得ることが可能なシステムの要素を示す概略ブロック図である図 2は、ストリングデータを使用して図1のプロセッサが文字をマツチする(文字 データと突き合わせて文字を確定する)ことを可能にする一般的ステップを示す フローチャートである。
図3は、ストリングデータを使用して図1のプロセッサがエンディングデータを 得ることを可能にする一般的ステップを示すフローチャートである。
図4は文字サブシーケンスの概略図であり、文字サブシーケンス自体の含む情報 および他のサブシーケンスへのリンクを示す。
図5は、文字をマツチする場合に図4のようなサブシーケンスへアクセスするス テップを示すフローチャートである。
図6は、ストリングか許容可能かとうかとそのカテゴリー集合を示すエンディン グデータを得る場合に図4のようなサブシーケンスへアクセスするステップを示 すフローチャートである。
図7はデータユニットの文字サブシーケンスを示す概略図である。
図8は、図5の方法を実行するためのより詳細なステップを示すフローチャート てあ−る。 − 図9は、図6の方法を実行するためのより詳細なステップを示すフローチャート である。
図10は、カテゴリー集合データをリターンするためのNビットベクトルの概略 図である。
図IIは、認識のためにストリングデータを使用するシステムの要素を示す概略 ブロック図である。
図12は、ストリングデータを含むソフトウェア製造物の概略図である。
詳細な説明 A、 一般的特徴 図1および2は本発明の一般的特徴を示す。図1はストリングデータの一般的特 徴を示し、該データはアクセプタンスデータおよびカテゴリー集合データを得る ためにアクセスされることが可能である。図2は、図1に示されるようなストリ ングデータを使用する場合の一般的ステップを示す。
図1はシステムIOを示しており、そこではストリングデータ12が使用される 。例えば、ストリングデータ12はプロセッサ14によりアクセス可能なデータ 保存媒体により保存されることか可能であり、例えば、ストリングデータ12は 、フロッピーディスク、CD−ROM、またはこれらに類するもののようなソフ トウェア製造物に保存されることか可能である。プロセッサ14は、ストリング の文字を示す文字データ16を受信することもまた可能である。プロセッサ14 はアクセプタンスデータを与えることが可能であり、該データは文字のストリン グか許容可能であることおよびストリングに対するカテゴリー集合を示す。
図1は、ストリングデータ12内のデータユニット3oのシーケンスを示す。
文字データ16が文字rmiXJを示す場合、例えば、シーケンス3oは文字「 mJを示すサブシーケンス32と、文字「i」を示すサブシーケンス34と、文 字rXJを示すサブシーケンス36とを含むことが可能である。各サブシーケン スは1つまたはそれ以上のデータユニットを含むことが可能である。
サブシーケンスは文字を示す情報に加えて他の情報を含むことが可能である。
例えばサブシーケンス36は、文字rXJを示す情報に加え、ストリング「mi X」か許容可能であることと、単語とローマ数字を含むそのカテゴリーとを示す 情報を含むこともまた可能である。プロセッサI4がストリングrmiXJの末 尾に到達し、サブシーケンス36にアクセス中である場合、この情報がプロセッ サ14により使用されることが可能である。プロセッサ14はこの情報を使用し てアクセプタンスデータを得ること力呵能であり、該データはrmiXJが許容 可能ストリングであることと、1m1XJについての単語とローマ数字を含むカ テゴリー集合とを示す。
図2は、ストリングデータ12を使用して文字をマツチする(文字データと突き 合わせて文字を確定する)場合にプロセッサ14が従うことが可能なステップを 示す。ボックス50のステップは、文字をマツチすることのリクエストとエント リロケーションとを受信することにより開始する。このエントリロケーションは FSMのスタート状態を表すロケーションであることが可能であるか、またはス トリングデータ12内のその他のロケーションであることが可能であり、後者の ロケーションからは、そのロケーションに続くこと力呵能な代替可能な文字の集 合を示すデータユニットがアクセスされることが可能である。例えばそれは、デ ータユニットの文字のサブシーケンスのロケーションであることが可能である。
エントリロケーションからアクセスされることが可能なデータユニットは、該ロ ケーションに続く代替可能な文字の各々に対応するデータユニットのサブシーケ ンスを含むことが可能である。
ボックス52のステップはストリングデータ12内のエントリロケーションにア クセスする。次にボックス60のステップは該ロケーションに続く代替可能な文 字を示すデータユニットにアクセスし、エントリロケーションに続くことが可能 な文字の内の1つと文字がマツチするかどうかを最終的に決定する。文字がマツ チする場合、ボックス62のステップはマツチする文字のサブシーケンスのロケ ーションをリターンする。一方エントリロケーションに続くことが可能ないづれ の文字にも文字がマツチしない場合、ボックス64のステップはマツチされるス トリングが許容可能でないことを示すデータをリターンする。
図3は、ストリングデータ12を使用してストリングに対するエンディングデー タを得る場合にプロセッサ14が従うことが可能なステップを示す。ボックス7 0のステップは、エンディングデータのリクエストとエンディングロケーション とを受信することにより開始する。ボックス72のステップはストリングデータ 12内のエンディングロケーションにアクセスする。ボックス8oのステップは 、エンディングロケーションで終了するストリングが許容可能なストリングであ るかとうかを決定する。許容可能である場合、ボックス82のステップはエンデ ィングデータをリターンし、該データはストリングが許容可能であることを示す と共にストリングに対するカテゴリー集合を示す。ストリングが許容可能でない 場合、ボックス84のステップは許容可能でないことを示すデータをリターンす る。ボックス80.82、および84のステップは、図1のエンディングサブシ ーケンス36のようなエンディングサブシーケンスがらのアクセプタンス情報お よびカテゴリー集合情報を使用して実行されることが可能である。
図2および3のステップは文字認識において一体となって使用されること力呵能 である。例えば、候補ストリングの各文字に対してプロセッサ14が図2のステ ップを実行することが可能である。先行する文字がマツチしているようなロケー ションからスタートする任意の文字がマツチしない場合、プロセッサ14はスト リングが許容可能でないことを示すデータを得ることが可能である。ストリング の最終文字をマツチする際、ストリングが許容可能がどうかを決定すること、お よび許容可能な場合にそのカテゴリー集合を示すデータを得ることのために最終 文字かマツチされたロケーションにおいてプロセッサ14は図3のステップを実 行することが可能である。
前述の一般的特徴は多くの方法を用いて様々なマシン上で実施されることが可能 である。本発明は、Sun 5parcStation上ての実行を目的とした Venue Corporationの1spプログラム言igMedleyバ ージョンで、またSun SparcStationSMacintoshパー ソナルコンピュータ、および他のマシン上での実行を目的としたCプログラム言 語で実施された。
1 文字サブシーケンス 図4から6は、本発明を実施する場合に使用することが可能なストリングデータ の高レベルな特徴を示す。図4は文字サブシーケンスおよび該サブシーケンスと 他のサブシーケンスとの関係を示す。図5は、文字をマツチすることのリクエス トに応答して文字サブシーケンスにアクセスする場合のステップを示す。図6は 、エンディングデータに対するリクエストに応答して文字サブシーケンスにアク セスする場合のステップを示す。
図4の文字サブシーケンス100はいくつかのタイプの情報を含む。ラベル情報 102は文字タイプを示す。Nextサブシーケンス情報104は、サブシーケ ンス100が次のサブシーケンスを有するかどうかと、次のサブシーケンスを有 している場合は代替可能なサブシーケンスのロケーションとを示す。Altサブ シーケンス情lFi 106は、サブシーケンス100が代替可能なサブシーケ ンスを有するかとうかと、代替可能なサブシーケンスを有している場合はそのサ ブシーケンスのロケーションとを示す。エンディング情報108は、ラベル情報 102にマツチする文字て終了しているストリングか許容可能なストリングであ るかとうかと、許容可能な場合にはストリングのカテゴリー集合とを示す。
図4に示されるような相互リンクされた文字サブシーケンス集合は、FSMを表 すために一体となってリンクされることか可能である。図に示されるように、文 字サブシーケンス!00は、1つまたはそれ以上のサブシーケンスに対する次の 、または代替可能なサブシーケンスであることが可能である。
図5は一般に図2のステップに従う。ボックス120のステップは、関数[Ad VanCeJの呼び出しの受信から開始し、該関数はロケーションと文字タイプ と共に呼び出される。ボックス122のステップはロケーションを使用して文字 サブシーケンスにアクセスする。ボックス122のステップはまたサブシーケン スのNext情報を使用し、該サブシーケンスの次のサブシーケンスのロケーシ ョンを示すデータを得る。ボックス124のステップは次のサブシーケンスのロ ケーションを示すデータを使用してそれにアクセスする。
ボックス126のステップは繰り返しループを開始し、次のサブシーケンスまた は代替可能なサブシーケンスがある場合にはマツチを見出すために該ループはそ れらにアクセスする。ボックス126のステップは現行サブシーケンスのラベル 情Iffを使用し、文字タイプを示すデータを得る。ボックス130のステップ は、この文字タイプがボックス120で受信した文字タイプと同一かどうかに基 づいて分岐する。同一の場合、ボックス132のステップは現行サブシーケンス のロケーションを示すデータをリターンする。一方同一でない場合、ボックス1 34のステップは現行サブシーケンスのAlt情報を使用し、該サブシーケンス が代替可能なサブシーケンスを有するかどうかと、有する場合には代替可能なサ ブシーケンスのロケーションとを示すデータを得る。
現行サブシーケンスが代替可能なサブシーケンスを存していない場合、ボックス +40の分岐はボックス+42のステップへ続き、ボックス120で受信した文 字はマツチされることか不可能であることを示すデータを該ステップはリターン する。一方サブシーケンスが代替可能なサブシーケンスを有している場合、ボッ クス+44のステップは代替可能なサブシーケンスのロケーションを示すデータ を使用し、ホックス126のステップへ戻る前に前記代替可能なサブシーケンス にアクセスする。
図6は一般に図3のステップに従う。ボックス170のステップは、関数[En d 5tatusJの呼び出しの受信から開始し、該関数はロケーションと共に 呼び出される。ボックス172のステップはロケーションを使用して文字サブシ ーケンスにアクセスする。ボックス+72のステップはまたサブシーケンスのエ ンディング情報を使用し、該サブシーケンスが許容可能なストリングのエンディ ングサブシーケンスであるかどうかと、エンディングサブシーケンスである場合 には該ストリングに対するカテゴリー集合とを示すデータを得る。
サブノーケンスか許容可能なストリングのエンディングサブシーケンスでない場 合、ホックス180の分岐はホックス182のステップへ続き、該ステップはス トリングか許容可能でないことを示すデータをリターンする。一方サブシーケン スか許容可能なストリングのエンディングサブシーケンスである場合、ボックス 184のステップはストリングに対するカテゴリー集合を示すデータをリターン し、該データはまたストリングか許容可能であることを暗に示す。
2 エンコーディングおよびデコーディング本発明の実施において文字サブシー ケンスは多くの方法でエンコード(符号化)およびデコード(復号化)されるこ とが可能である。表1はバイト値空間が配置されることか可能となる1方法を示 し、該配置によりいくつかのバイト値が文字バイトおよびカテゴリーバイトの両 者として使用されることが可能となる。図7は文字サブシーケンスを示し、該サ ブシーケンス内の各データユニットは表1の配置から得られるバイト値となって いる。図8は表1の配置に対して図5のステップがとのように実施されるかを示 す。図9はカテゴリー集合データを得るためのステップを示す。図10はカテゴ リー集合データをリターンするためのビットベクトルを示す。
表1 表1のバイト値はOから255の範囲にあり、従って8ビツト長である。Nは個 別の6ビツトラベルの数であり、後により詳細な説明を行う。Plはロングポイ ンタバイトコードの数であり、P2は中間サイズポインタバイトコードの数であ る。表1に見られるように、ショートポインタバイトコードの数は255−(4 N+Pl 十P2 )である。
ハイド値のブロックは6つの異なるタイプの文字に割り当てられることが可能で あり、各タイプは最終タイプ、代替可能タイプ、およびEOB (分岐終了)タ イプのいくつかから成る組み合わせとなる。しかし表1では特別なEOBバイト か値Oを割り当てられ、分岐終了を表す任意のバイトに続くことが可能である。
現行の実施において、このバイトがショートポインタバイトとして扱われる場合 、自身に回帰するサブシーケンスから始まる最終でないデータユニットを該バイ トは指示する。このことはEOBバイトの後に最終データユニットに到達するこ とが不可能であることを保証する。
EOBバイトの結果として、各文字は4つの異なるタイプ、即ち本文中で許容可 能とも呼ばれている最終タイプと、本文中でAltとも呼ばれている代替可能タ イプとから成る、文字の4つの存在可能な組み合わせのみを有することとなる。
文字について4つのタイプのみを有することは、各文字のタイプが2ビツトで表 されることか可能となることから有利である。該ビットは比較のためにマスクさ れることが可能であり、テーブルルックアップを行うことおよびバイト値につい ての他の複雑なデコーディングを行うことの必要性が回避される。従って表1は 、N−2gIの各文字に対して4つの連続したバイト値を割り当てる。
表1はまたタグマークに対しても4つの連続したバイト値を割り当て、タグマー クは文字としては翻訳されず、先行する文字が許容可能ストリングの末尾である ことを示す。従ってタグマークに続くバイトは文字以外のものとして翻訳され、 表1はタグマークバイト値および文字バイト値がカテゴリーバイト値として翻訳 されることも可能であることを示す。タグマークへのアクセスの後にデータユニ ットのシーケンス内でバイト値かアクセスされる場合、この翻訳はタグマークお よび文字/カテゴリー範囲内のバイト値に適用される。
表1はまたテーブルラベルに対しても4つの連続したバイト値を割り当て、テー ブルラベルは文字としてもまたカテゴリーとしても翻訳されず、次のバイトがテ ーブルのポインタであることを示す。テーブルラベルは随意に選択される方法で あり、FStvi内の状態が多数の出力遷移を有する場合、FSMを表すストリ ングデータの検索に必要となる時間を低減するために使用されることが可能であ る。FSM変換器が一般的規則を要約する場合、FSMが許容可能ストリングの 合成を可能とする場合、または許容可能ストリングと句読記号のような他のエレ メントとの合成であることが可能なストリングをクラス分けするためにFSMが 使用される場合、テーブルラベルは有利であることが見出されている。そのよう な状況における状態はFSMのスタート状態に似ており、該状態は多数の出力遷 移を有する。
各テーブルはN−1gのエントリと共に実施されることが可能であり、この結果 、タグマークバイトから文字/カテゴリーバイトを通じて各ラベル値に対するエ ントりは1つとなる。これはテーブルラベルが最高のラベル値であり、テーブル はテーブルラベル自体に対してエントリを存する必要がないためである。エント リは同一長であり、この結果、6ビツトラベル値にエントリ長を掛は合わせるこ とにより、与えられたラベル値に対するエントリがアクセスされてテーブル内へ のオフセットが得られることが可能となる。
各エントリはラベルバイトと共に始まる。テーブルラベルに先行するロケーショ ンからラベル値がマツチされることが可能である場合、ラベル値のエントリは同 一のラベル値を伴うラベルバイトを存する。一方テーブルラベルに先行するロケ ーションからラベル値かマツチされることが可能でない場合、ラベル値のエント リは異なるラベル値を伴うラベルバイトを有する。例えば、マツチされることか 可能てない各エントリに対するラベルバイトとしてテーブルラベルバイトか使用 されることが可能であり、これはそのラベル値がいづれのエントリのラベル値と も異なるためである。
各エントリはまたラベルバイトに続くポインタフィールドを含み、該ポインタフ ィールドは最長ポインタを保持するのに充分な大きさとなっている。現行の実施 において、各最長ポインタは3ハイドてあり、このためエントリ長は4バイトで ある。テーブルラベルに先行するロケーションからラベル値がマツチされること か可能である場合、ラベル値のテーブルエントリのポインタフィールドは、ラヘ ルに対する次のサブシーケンスのポインタ、または次のサブシーケンスがない場 合には特別なEOBハイドを有する。
前述のようなテーブルは、テーブルのエントリのいくつかが不適正となる状態に より共存されることが可能である。このことは、テーブルラベルが常に最終遷移 となるよう各状態の出力遷移か順序付けられている場合に実行されることが可能 である。テーブルエントリか不適正となる遷移についての情報を与えるために出 力に先立つ遷移が使用されることが可能である。
一般に、テーブルラベルかどの状態に続くへきであるかに関する選択は、特定さ れるデータおよびタスクに強く依存する時間的空間的な複合したトレードオフを 伴う。より多くのテーブルの使用は検索速度を改善するが、テーブルを含むスト リングデータを保存するために必要となる空間を増加させる可能性がある。代替 可能な終端句読記号を状態が表すような特定の状況においては、テーブルは劇的 な速度の改善を可能とすると共に全体空間を低減する。これは与えられたテーブ ルを非常に多数の状態が共有することが可能なためである。
文字/カテゴリーバイト値と同様に、タグマークバイト値の下位2ビツトが使用 されて該ハイド値が代替可能なデータユニットを有するかどうかが示されること か可能である。タグマークが許容可能なストリングの末尾であるかどうかを示す ヒツトは考慮する必要がない。これはタグマーク自体は許容可能なストリングの 末尾とは決してならず、許容可能なストリングの末尾の文字に常に続くためであ る。タグマークの最初のバイト値は本文中でrcharBaseJと呼ばれ、4 の倍数となる256−4Nである。従って、各文字バイトの下位2ビツトは、文 字を識別する上位6ビツトを得るためにマスクされることが可能である。
テーブルラベルの下位2ビツトも同様に、有用な情報を与えるために必要に応じ て使用されることか可能である。例えば、それらはテーブルのポインタ長を示す ために使用されることが可能である。
文字/カテゴリーハイドはエスケープコードを含むことが可能である。エスケー プフードと、ストリングデータ内てこれに続くこの他のバイトとを合わせたもの は、文字の総数かN−2より大きい場合に文字をエンコードするために使用され ることが可能であり、各サイズのポインタ数を最適化するためにNが選択される 場合にこのようになる傾向にある。終端句読記号のような、許容可能なストリン グの末尾に現れる全ての文字に対してエスケープコードが使用される場合、終端 句読記号は全て無効にされて単−状態にされることが可能であり、この状態はま たハイフン、もしくは合成単語の部分となることが可能な他の文字に対するスタ ート状態へ戻る単一遷移を有する。しかしエスケープコードは前記以外の文字に 対して使用することか望ましく、従っていつエスケープコードを使用するかの選 択もまた複合したトレードオフとなる。
特定されるデータまたは特定されるタスクに対して有利であれば、代替可能な多 様なエンコーディングか使用される二とが可能である。例えば、全ての分岐がカ テゴリーバイトと共に終了する場合、および全てのカテゴリーバイトが分岐の終 了である場合、特別なEOBバイトは無視されることが可能である。最終タイプ の文字ハイドに常にタグマークハイドか続く場合、およびカテゴリーバイトが常 に最終タイプである場合、文字バイトまたはカテゴリーバイトが代替可能エレメ ントを有するかとうかを示す単一ヒツトを使用することもまた可能である。これ らの方法は、例えば、ノヨートポインタの数を増加させるために使用されること か可能である。値を示す側々のブロックか文字およびカテゴリーに対して割り当 てられる場合、タグマークバイトか除去されることもまた可能であることか予想 、される。これは最終文字ハイドに続くカテゴリーバイトは最初の出力遷移とし て設定されることか可能であるためである。即ち、文字バイトに続くカテゴリー ハイドの出現は、文字バイトか許容可能ストリングの末尾にあることと、カテゴ リーハイドかストリングに対するカテゴリー集合の始まりにあることとを示すた めである。
タグマークハイド、または池のエンコーディングにおけるこれと同等のものは、 FSM内の任意の最終状態に続く特別な遷移として考えられることが可能である 。タグマーク遷移に続くものは、最終状態で終了した全てのストリングに適用可 能なストリングカテゴリーとしてデコートされるバイト集合である。カテゴリー の例は、メイン辞書、ユーザー辞書、ローマ数字、アラビア数字、でんわ番号、 データ等を含む。
図7はデータユニットのシーケンス200内にある多(のデータユニットを示す 。データユニット202.204.206.208.210、および212は一 体となって文字サブシーケンスを形成し、該サブシーケンスは図1のサブシーケ ンス36と同一の情報を含む。データユニット220はサブシーケンスの次の文 字サブシーケンスの始まりにあり、データユニット222はサブシーケンスの代 替可能な文字サブシーケンスの始まりにある。タグマークバイトであるデータユ ニット204がデータユニット202の次バイトとして例示されており、この場 合は文字サブシーケンスのデータユニットが隣接する。しかしデータユニット2 20か代わりに次バイトとなることが可能であり、またデータユニット204か 代替可能タイプとなることが可能である。図に示されるようにこの場合は文字の データユニットが隣接しないことか予想される。
ノーケンス200内のデータユニットは、ポインタを除く表1のバイト値の全て を示している。データユニット202.220、および222は文字バイトであ る。データユニット204はタグマークバイトである。データユニット206お よび210はカテゴリーハイドである。そしてデータユニット208および21 2はEOBバイトである。
文字ハイドの各々は図に示される2つの下位ビットを含む。第1のビットは該ハ イドか許容可能ストリングの末尾であるかとうかを示し、第2のビットは該バイ トが代替可能ハイドを有しているかどうかを示す。タグマークバイトでは、第1 の下位ヒツトは該ハイドか許容可能ストリングの末尾でないことを示し、第2の ヒツトは該バイトが代替可能バイトを有しているかどうかを示す。カテゴリーハ イドの各々ては、第1のヒントは該バイトが許容可能ストリングの末尾であるこ とを示し、第2のビットは該バイトか代替可能バイトを存しているかどうかを示 す。
図8のステップは、図5のボックス+20に続くステップを置き換えることが可 能である。ホックス240のステップは、図5のボックス120で受信されたロ ケーションをインクリメントし、インクリメントされたロケーションでのパイ+ 1直を?号る。ホックス242のステップは、得られたバイト値がCharBa seより小さい、即ち該ハイド値がポインタハイド値であるかどうかに基づき分 岐する。ポインタバイト値である場合、ボックス244のステップはポインタl こより示されるロケーションに進み、該ロケーションてのバイト値を得る。
ポインタでないハイドか得られた場合、ホックス250のステップは該バイト値 からCharBaseを差し引く。ボックス120で受信された文字が、4倍し てCharBaseを加えることにより文字ハイドの範囲内へ以前にマツプされ ている場合、CharBaseを差し引く必要はない。ボックス250のステッ プはまた、rlllllloOJのバイ)・と論理積をとるような方法で下位2 ヒツトをマスクし、ハイドのラベルを生成する。
ホックス252のステップは、ホックス250からのラベルとボックス120て 受信された文字とを比較する。ボックス254のステップは比較結果に基つき分 岐する。ラベルと文字かマツチする場合、図5のステップ132が実行されて現 行ロケーションがリターンされる。
ラベルと文字かマツチしない場合、ボックス260のステップはラベルかテーブ ルラベルであるかどうかを決定する。テーブルラベルでない場合、考慮されなけ 第1はならない代替可能ハイドかさらに存在する可能性がある。ボックス262 のステップは現行ロケーションのAltヒツトを得、該ビットはボックス250 のステップで保存されることか可能である。次にボックス260のステップは現 行ロケーションか代替可能バイトを有しているかとうかに基づき分岐する。有し ていない場合、図5のボックス142のステップが実行され、ボックス120て 受信された文字かマツチされることか不可能であることを示すデータかりターン される。
現行ロケーションか代替可能ハイドを有している場合、ボックス266のステッ プは代替可能タイプのロケーションヘ進み、該ロケーションでのバイトラ得ル。
代替可能ハイドは、Altヒツトおよび図7に見られるようなEOBバイトをカ ウントすることにより見出されることか可能である。次にボックス270のステ ップは、ホックス242のようにハイドかポインタであるかどうかに基づき分岐 する。ポインタでない場合、代替可能ノ1イトに到達したこととなり、この結果 ホックス250のステップが再び実行されることが可能である。バイトがポイン タである場合、ボックス250のステップの実行に先立つボックス244のよう に該ポインタの示すロケーションでのバイトが得られる。
ホックス260てテーブルラベルが見出される場合、ボックス280のステ・ノ ブはボックス120て受信された文字を使用して適正なテーブルエントリにアク セスする。前述のように、二のことは文字バイトを4倍してそれをテーブルラベ ルに続くポインタに加える二とにより実行されることが可能である。次にボック ス282のテストは、文字がテーブルエントリのラベルバイトとマツチするかど うかに基づき分岐する。文字がラベルバイトとマツチしない場合、図5のボック ス+42のステップか実行され、ボックス120で受信された文字がマツチされ ることか不可能であることを示すデータかりターンされる。一方文字がマツチす る場合、ホックス282てテーブルエントリのロケーションがリターンされ、こ のことは図5のホックス+32における現行サブシーケンスのロケーションのリ ターンと同一の効果を有する。
図8のステップは、図7のデータユニット202のロケーションを始まりとして 実行されることか可能である。文字rXJの次の文字が例えばrtJである場合 、ホックス254のステップの最初の繰り返しにより、データユニツト204の タグマークラベルとのミスマツチが見出される。ボックス266のステップは、 データユニット220へ到達するためにAltビットおよびEOBバイトをカウ ントし、ボックス254のステップの第2の繰り返しによりrtJラベルとのマ ツチか見出され、その結果図5のボックス132のステップにおいてデータユニ ット220のロケーションかりターンされる。
図9はカテゴリー集合データを得る場合のステップを示す。バイト値が表1のよ うに配置されている場合、図9のステップは図6のボックス172.180、お よび184を置き換えることか可能である。
ボックス300のステップは、図6のホックス170で得られたロケーションで のバイト値を得る。次にボックス302のステップは、バイト値が許容可能スト リングの末尾であるかどうかに基づき分岐し、このことは該バイト値の最終ビッ トにより示される。末尾でない場合、現行の文字サブシーケンスは許容可能スト リングのエンディングサブシーケンスではなく、従ってマツチ不可能であること かボックス182でリターンされる。バイト値が許容可能ストリングの末尾であ る場合、ボックス304のステップはAdvance (ロケーション5 タグ マーク)を呼び出すことによりタグマークバイトのロケーションを得る。図5お よび8のステップが実行されてタグマークのロケーションがリターンされる。
ボックス310のステップはAdvanceによりリターンされるロケーション の次バイトへ進み、該バイトを得る。このステップは図8のボックス240.2 42、および244のステップと同一である。次にボックス312のステップは 得られたハイドの上位6ヒソトを示すデータを保存する。これは、これらビット か許容可能ストリングに対するカテゴリーの内の1つを示すためである。次に、 ホックス320のステップは得られたハイドのAltビットに基づき分岐する。
Altビットかオンの場合、図8のボックス266.270、および272に関 連して先に記述されたように、ホックス322のステップは該バイトの代替バイ トへ進み、代替バイトを得る。次にホックス312のステップが再び実行される 。Altヒントがオフの場合、ボックス324のステップはボックス312で保 存さオ]たデータに基つきカテゴリー集合データをリターンする。
図9のステップは、文字rXJをマツチした後、図7のデータユニット202の ロケーションを始まりとして実行されることが可能である。ボックス324てリ ターンされたカテゴリー集合データは、L!およびローマ数字のカテゴリーを示 す。
図10はNヒノトベクトル350を示し、該ベクトルはボックス312でバイト 値を保存するため、およびボックス324てカテゴリー集合データをリターンす るために使用されることが可能である。ボックス312のステップはバイト値か ら最終およびAltビットを除去することが可能であり、またバイト値を保存す るのにベクトル350内のとのビットがオンされるべきかを示すためにより高位 のビットを使用することか可能である。ボックス312において全てのカテゴリ ーバイトが処理された場合、ベクトル350はボックス324においてカテゴリ ー集合データとしてリターンされることが可能である。全てが0のベクトル35 0は、ボックス182においてストリングが許容可能でないことを示すデータを リターンするために使用されることもまた可能であり、これは、ストリングが許 容可能な場合には少なくとも1つのヒツトがオンされなければならないためであ る。
F S Mにイプシロン遷移を系統的に導入することにより、場合によってはよ りコンパクトなデータ構造か得られることが可能であり、これにより出力遷移集 合の共通部分の共有が促進される。即ち、FSMの任意の状態は2値状態の連鎖 に拡張されることが可能であり、最終状態を除くこれら状態の全ては、連鎖にお いて次の2値状態へのイプシロン遷移を有する。このイプシロンシェアリングの 方法はまた拡張されたFSMを最小化することを含み、最小化の後に余分なイプ シロン遷移か除去される。
イプシロンシェアリングの方法か使用される場合、タグマークバイトに続いてカ テゴリーバイトが配置される順序は、(特定なバイト等を無効にする)無効操作 を適切に改善するよう選択されることか可能である。例えば、最も頻繁に発生す るカテゴリーはカテゴリーハイドの各集合において最後に配置されることが可能 であり、最も発生しないものは最初に配置されることが可能である、等となる。
表1の配置において、付加的な無効操作を目的として最も頻繁に発生するカテゴ リーに対して最も頻繁に発生する文字と同一のバイト値を割り当てることが有利 である可能性かある。一般に、目的とすべきことは頻度の偏りを有効に利用して より良いデータ圧縮を得ることである。
3、 製造物 前述のエンコードされたストリングデータは、図11に示される認識システムで 使用されることか可能である。図12はそのようなシステムで使用されることか 可能なソフトウェア製造物を示す。
図11において、プロセッサ370は画像を定義するデータをイメージソース3 72から受信するために接続され、イメージソースは例えばスキャナであること か可11ヒである。プロセッサ370はまた認識結果を示すデータを認識出力3 74へ与えるために接続され、LF!i出力は例えばディスプレイであることが 可能である。プロセッサ370はまたソフトウェア入力デバイス376からソフ トウェアをロートするために接続され、ソフトウェア入力デバイスは、フロッピ ーディスク1へライブ、CD−ROMプレイヤー、モデム、ネットワーク回線、 または、データ保存媒体上のソフトウェアにアクセスすることが可能であるかも しくは通信チャネルを通して伝送されるソフトウェアを受信することが可能であ るような他の周辺装置であることか可能である。
認識を実行する場合、プロセッサ370は命令メモリ380にアクセスし、認識 命令382を実行する。認識命令はストリングデータアクセス命令384の呼び 出しを含む。データメモリ390はプロセッサ370によりアクセスされるデー タを保存する。プロセッサ370は、ストリングデータアクセス命令384を実 行する場合はストリングデータ392にアクセスし、認識命令382を実行する 場合には画像データ394にアクセスする。
図12のソフトウェア製造物400はデータ保存媒体402を含み、データ保存 媒体は、フロッピーディスク、CD−ROM、磁気テープ、またはデータを保存 することか可能なその他の媒体を含む。媒体402はストリングデータ404と 、ス)・リングデータ404に関連して実行されることが可能な命令とを含む。
U!J12に示される実施において命令は、ロート命令4101スタートロケー シヨン命令・112、アドバンス命令414、エンドステータス命令416、お よびフリー命令418を含む。
ロート命令410は、ストリングデータ404をデータメモリ390ヘロードす るためにプロセッサ370か実行するルーチンを含むことが可能である。このル ーチンはヘッダのメモリロケーションをリターンし、ヘッダはストリングデータ 404内のスタート状態にアクセスするための1つまたはそれ以上のオフセット を含む。プロセッサ370はまた媒体402上の命令を、実行前に命令メモリ3 80ヘロートすることか可能である。
スタートロケーション命令412は、データメモリ390内のストリングデータ 404にアクセスするためのスタートロケーションを示すデータを得るためにプ ロセッサ370か実行するルーチンを含むことが可能である。このルーチンは、 ロート命令410によりリターンされるヘッダのメモリロケーションと、スター ト決悪識別子と共に呼び出されることが可能である。ルーチンは次にヘッダにア クセスし、識別されたスタート状態に対するオフセットを得、オフセットを使用 してメモリ内にあるスタート状態のアクセスロケーションを得、そしてアクセス ロケーションをリターンする。他の命令と整合をとるため、スタート状態に対す るアクセスロケーションは、ストリングの最初の文字に応答して次のサブシーケ ゛/スかマツチされるようなロケーションとなっている。
アドバンス命令414は、ストリングデータ404内で処理を進めるためにプロ セッサ370か実行するルーチン、与えられたロケーション、および文字を含む ことか可能である。即ち、該ルーチンは図2のようなステップを実行することか 可能である。
エンドステータス命令416は、与えられたロケーションが許容可能ストリング の末尾であるかどうかを示すデータと、末尾である場合には該ストリングのカテ ゴリー集合とを得るためにプロセッサ370か実行するルーチンを含むことが可 能である。即ち、該ルーチンは図3のようなステップを実行することが可能であ る。
フリー命令418は、データメモリ390からストリングデータ404を読みだ すためにプロセッサ370か実行するルーチンを含むことが可能である。
図IIの認識命令382は、データ保存媒体402からロードされる命令を呼び 出すルーチンを含むことか可能である。媒体402上に示される命令により実行 される機能は簡潔なものであるため、他のソフトウェアへのインターフェイスは 比較的簡潔となり、ソフトウェア製造物400は様々な認識方法で使用される二 とか可能である。
現行の実施において、FSM生成ルーチンに対して特別なユーザーインターフエ イスを与えることにより、ストリングデータ404のバリエーションの設定が促 進される。ストリングのリストを含むファイルを用いて、または特別な文法形態 の定義を用いても、ユーザーは文字ストリングのカテゴリーを定義することが可 能である。例えば次のような場合に文法が使用されることが可能である。アラビ ア数字、数学的表現、または通貨量のような限りな(多い許容可能ストリングを 有するカテゴリーを定義する場合、ローマ数字、電話番号、またはソーシャルセ キュリティ一番号のように許容可能ストリングがアルゴリズムの規則に従う場合 、句読記号もしくはハイフンを含むか、ストリングを結合して合成ストリングを 形成するか、またはリスト内のストリングて発生するものに類似した妥当性のあ る文字パターンを含むようなバリエーションを付加することによりストリングリ ストのようなカテゴリーを拡張する場合である。
現行の実施において、ユーザーは許容可能ストリングを様々な方法で記述する規 則的表現を与えることが可能である。例えば、ストリングが順に、始まりとなる 句読記号のサブストリング(部分ストリング)、随意に選択されるアラビア数字 、分離符号のサブストリング、辞書からの許容可能ストリング、分離符号のその 他のサブストリング、辞書からのその他の許容可能ストリング、等を含み、そし て終了句読記号のサブストリングと共にストリングが終了する場合にはストリン グが許容可能であるということを何らかの表現により示すことが可能であり、も しくはストリングか順に、■から9の内の1つの数字、0から始まりOから9の 内の2つの数字までの数字のサブストリング、そして次に終了するかさもなくば 0から9の内の3つの数字が続くコンマを含む任意の数のサブストリングが続く 場合にはストリングが許容可能であるということを何らかの表現により示すこと が可能である。
各カテゴリーの定義はそれらに対応するFSMを生成するために使用されること か可能である。カテゴリーデータが各FSMに含まれ、このことはFSMの許容 可能ストリングの各々がタグマークおよびカテゴリー識別子と共に終了すること を示す。前述のような複合ストリングに対するカテゴリーは、最終ストリングの ような複合ストリングの構成部分の内の1つのカテゴリーであることが可能であ る。
現実的である場合、公知のFSM合成アルゴリズムを用いて全てのカテゴリーに 対するFSMが結合されて単一なFSMとなることが可能である。合成FSMは 、ストリングの許容可能集合を全く変えること無く確定され、最小化される。
結果として得られるFSMは1つのスタート状態を有する。FSMの状態シーケ ンスはサイクルを含むことが可能てあり、サイクルは自身に回帰する状態からの 、または状態シーケンスの初期に発生したその他の状態へのポインタを含む。
全てのカテゴリーに対するF S Mを結合し、単一で確定され最小化されたF SMにすることがコンピューター上実際的でない場合、1つまたはそれ以上の付 加的FSMが含まれることが可能であり、これら各々は対応するスタート状態お よびカテゴリーデータを存しており、従ってこれら各々が許容するストリングの 各々は特別なカテゴリー識別子と共に終了する。
結果として得られる1つまたはそれ以上のFSMの組み合わせは、次にエンコー ドされてデータ構造を生成することか可能となる。該データ構造はソフトウェア 製造物400を生成する場合にデータ保存媒体402上に保存されることが可本 発明は多くの方法で認識問題に適用することが可能であり、それら方法はインク リメンタルルックアップの方法を含み、この方法ではシーケンス内の各文字を与 える二とによりメイン認識ルーチンかストリングをチェックする。その結果、許 容不可能な候補ストリングの集合が許容不可能なプリフィクスを共存する場合、 単一のルックアップ動作でこれら全てが除去されることが可能となる。メイン認 識ルーチンはまた、過去に与えられた文字のロケーションを示すデータ構造を維 持することが可能であり、その結果、過去の選択点への引き返しがより効率的と なる二とが可能となる。
本発明の方法は文字のストリングの認識に限られず、ストリングが離散的カテゴ リーに振り分けられるような他のタイプのエレメントのストリングの認識に対し ても適用可能であることが予想される。例えば、ハントライティングの認識では ストロークのストリングか単語のカテゴリーに振り分けられる。同様に、音声認 識では音素のストリングが単語のカテゴリーに振り分けられる。
本発明の方法はスペル訂正問題に対しても適用可能であることが予想される。
例えば、本発明の方法はキーホードのような入力デバイスからの文字シーケンス 対して適用可能であることか予想され、タイプミスを訂正する手助けとなる。
D、 付記 本発明は、データ保存媒体上でソフトウェア製造物が得られるような実施に関連 して記述されてきた。本発明はまた、電話回線またはネットワークにおけるよう な伝送を通して得られるソフI・ウェア製造物と共に実施可能であることか予想 される。
本発明はソフトウェアの実施に関連して記述されてきたが、本発明は特別なハー ドウェアと共に実施可能であることか予想される。
本発明は、修正、バリエーション、および拡張を伴う様々な実施に関連して記述 されてきたか、他の修正、バリエーション、および拡張も本発明の範囲内にある 。従って、本発明は本文中に含まれる記述および図面によっては限定されず、請 求の範囲のみによって限定されるものである。
図1 図6 図7 ボックス+20から ボックス+70から 図9 ビットN−1ビット2 ビット1 ビット0図11 区■2 フロントページの続き (72)発明者 ムリンス、アティー ティー。
アメリカ合衆国 02115 マサチューセッツ州 ボストン ナンバー 2  マーボラフ ストリート396

Claims (19)

    【特許請求の範囲】
  1. 1.プロセッサを含む文字認識システムで使用するための製造物であって、デー タ保存媒体と、 データ保存媒体に保存されるストリングデータであって、各々が文字認識システ ムのプロセッサによりアクセスされることが可能な複数のデータユニットをスト リングデータが含み、文字についての複数の許容可能ストリングの各々に対して 、ストリングの文字の文字タイプを示す文字データを使用してプロセッサがアク セスすることが可能なデータユニットの対応するシーケンスをデータユニットが 含む、ストリングデータと、 複数のカテゴリーから成る第1の集合内にある第1のストリングを含む複数の許 容可能ストリングであって、第1のストリングのシーケンスの末尾でプロセッサ がアクセスすることが可能であり、かつ、第1のストリングが許容可能ストリン グの内の1つであることと第1のカテゴリー集合とを示す、第1のストリングの エンディングデータを得るためにプロセッサが使用することが可能であるデータ ユニットの対応するエンディングサブシーケンスを第1のストリングのデータユ ニットのシーケンスが含む、複数の許容可能ストリングと、それに対応するシー ケンスの末尾でプロセッサがエンディングサブシーケンスにアクセスすることが 可能なストリングが複数の許容可能ストリングの内の1つであることを示すアク セプタンス情報と、第1のカテゴリー集合を示すカテゴリー集合情報であって、 第1のカテゴリー集合が複数のカテゴリーの内の少なくとも1つを含む、カテゴ リー集合情報と、を含む製造物。
  2. 2.各データユニットがバイトである請求項1に記載の製造物。
  3. 3.言語の単語であることが可能な複数のストリングを複数の許容可能ストリン グが含む請求項1に記載の製造物。
  4. 4.複数のカテゴリーから成る第2の集合内にある第2のストリングを複数の許 容可能ストリングが含み、第2のストリングのシーケンスの末尾でプロセッサが アクセスすることが可能であり、かつ、第2のストリングのエンディングデータ を得るためにプロセッサが使用することが可能であるデータユニットの対応する エンディングサブシーケンスを第2のストリングのデータユニットのシーケンス が含み、第2のストリングが許容可能ストリングの内の1つであることと第2の カテゴリー集合とを第2のストリングのエンディングデータが示す請求項1に記 載の製造物。
  5. 5.複数のカテゴリーの内の共有される1つを第1および第2のカテゴリー集合 の両者が含み、共有されるカテゴリーを示す共有されるデータユニットをデータ ユニットが含み、第1のストリングのエンディングサブシーケンスおよび第2の ストリングのエンディングサブシーケンスの両者が共有されるデータユニットを 含む請求項4に記載の製造物。
  6. 6.対応する文字タイプを有するエンディング文字を第1のストリングが含み、 エンディング文字の文字タイプを示す文字ラベル情報を含む文字ラベルデータユ ニットを第1のストリングのデータユニットのエンディングサブシーケンスが含 み、それに対応するシーケンスの末尾でプロセッサがエンディングサブシーケン スにアクセスすることが可能なストリングが許容可能ストリングの内の1つであ る二とを示す文字ラベルデータユニット内のビットをアクセプタンス情報が含む 請求項1に記載の製造物。
  7. 7.第1のストリングのエンディングサブシーケンス内のアクセプタンスデータ ユニットをアクセプタンス情報が含み、それに対応するシーケンスの末尾でプロ セッサがエンディングサブシーケンスにアクセスすることが可能なストリングが 許容可能ストリングの内の1つであることを示す値をアクセプタンスデータユニ ットが有する請求項1に記載の製造物。
  8. 8.アクセプタンスデータユニットヘのアクセスの後にプロセッサがアクセスす ることが可能な第1のストリングのエンディングサブシーケンス内のカテゴリー データユニットの集合をカテゴリー集合情報が含む請求項7に記載の製造物。
  9. 9.第1のカテゴリー集合内の各カテゴリーに対して、第1のストリングのエン ディングサブシーケンス内の対応するカテゴリーデータユニットをカテゴリー集 合情報が含み、各カテゴリーのカテゴリーデータユニットがカテゴリーを示す値 を有する請求項1に記載の製造物。
  10. 10.第1のカテゴリー集合が複数のカテゴリーを含み、第1のストリングのエ ンディングサブシーケンス内の複数のカテゴリーデータユニットをカテゴリー集 合情報が含む請求項9に記載の製造物。
  11. 11.データ保存媒体に保存される制御データをさらに含み、ストリングの対応 するデータユニットのシーケンスにアクセスするためにストリングの文字を使用 する場合にプロセッサが実行することが可能である命令を制御データが含む請求 項1に記載の製造物。
  12. 12.シーケンス内の第1のストリングのエンディングサブシーケンスの直前の データユニットの中間サブシーケンスを第1のストリングのシーケンスがさらに 含み,中間サブシーケンスがストリングデータ内の第1の位置を有し、エンディ ングサブシーケンスがストリングデータ内の第2の位置を有し、第2の位置を示 す第2のポジションデータを得るためにプロセッサが実行することが可能な第1 の命令集合であって、第1の命令集合を実行する場合に、第1の位置を示す第1 のポジションデータをプロセッサが使用して中間サブシーケンスにアクセスする 、第1の命令集合と、第1のストリングのエンディングデータを得るためにプロ セッサが実行することが可能な第2の命令集合であって、第2の命令集合を実行 する場合に、第2のポジションデータをプロセッサが使用してエンディングサブ シーケンスにアクセスする、第2の命令集合と、 を命令が含む請求項11に記載の製造物。
  13. 13.第1のストリングがエンディング文字を対応する文字タイプと共に有し、 エンディング文字の文字タイプを示す文字タイプ情報をエンディングサブシーケ ンスがさらに含み、第1の命令集合を実行する場合にプロセッサが第1のストリ ングのエンディングサブシーケンスにアクセスして文字タイプを示す文字タイプ データとエンディングサブシーケンスとを使用してマッチデータを得、文字タイ プデータにより示される文字タイプと文字タイプ情報により示される文字タイプ とがマッチするかどうかをマッチデータが示す請求項12に記載の製造物。
  14. 14.シーケンス内の第1のストリングのエンディングサブシーケンスに先立つ データユニットの中間サブシーケンスを第1のストリングのシーケンスがさらに 含み、第1のストリングのデータユニットのシーケンス内で中間サブシーケンス が1回発生し、第1のカテゴリー集合内にある第2のストリングを複数の許容可 能ストリングが含み、第2のストリングのデータユニットのシーケンスが第1の ストリングのエンディングサブシーケンスを含み、その結果、第2のストリング のシーケンスの末尾でプロセッサが第1のストリングのエンディングサブシーケ ンスにアクセス可能となり、かつ、プロセッサがそれを使用して、第2のストリ ングが許容可能ストリングの内の1つであることと第1のカテゴリー集合とを示 す、第2のストリングのエンディングデータを得ることが可能となり、第2のス トリングのデータユニットのシーケンス内で中間サブシーケンスが2回発生する 請求項1に記載の製造物。
  15. 15.プロセッサと、 アクセスするためにプロセッサが接続されるメモリと、メモリに保存されるスト リングデータであって、各々がプロセッサによりアクセスされることが可能な複 数のデータユニットをストリングデータが含み、文字についての複数の許容可能 ストリング′の各々に対して、ストリングの文字を示す文字データを使用してプ ロセッサがアクセスすることが可能なデータユニットの対応するシーケンスをデ ータユニットが含む、ストリングデータと、複数のカテゴリーから成る第1の集 合内にある第1のストリングを含む複数の許容可能ストリングであって、第1の ストリングのシーケンスの末尾でプロセッサがアクセスすることが可能であり、 かつ、第1のストリングが許容可能ストリングの内の1つであることと第1のカ テゴリー集合とを示す、第1のストリングのエンディング′データを得るために プロセッサが使用することが可能であるデータユニットの対応するエンディング サブシーケンスを第1のストリングのデータユニットのシーケンスが含む、複数 の許容可能ストリングと、それに対応するシーケンスの末尾でプロセッサがエン ディングサブシーケンスにアクセスすることが可能なストリングが複数の許容可 能ストリングの内の1つであることを示すアクセプタンス情報と、第1のカテゴ リー集合を示すカテゴリー集合情報であって、第1のカテゴリー集合か複数のカ テゴリーの内の少なくとも1つを含む、カテゴリー集合情報と、を含むシステム 。
  16. 16.ストリングの文字を使用してストリングのデータユニットのシーケンスに アクセスする場合にプロセッサが実行することが可能なメモリに保存された命令 をさらに含む請求項15に記載のシステム。
  17. 17.シーケンス内の第1のストリングのエンディングサブシーケンスの直前の データユニットの中間サブシーケンスを第1のストリングのシーケンスがさらに 含み、中間サブシーケンスがストリングデータ内の第1の位置を有し、エンディ ングサブシーケンスがストリングデータ内の第2の位置を有し、第2の位置を示 す第2のポジションデータを得るためにプロセッサが実行することが可能な第1 の命令集合であって、第1の命令集合を実行する場合に、第1の位置を示す第1 のポジションデータをプロセッサが用して中間サブシーケンスにアクセスする、 第1の命令集合と、第1のストリングのエンディングデータを得るためにプロセ ッサが実行することが可能な第2の命令集合であって、第2の命令集合を実行す る場合に、第2のポジションデータをプロセッサが使用してエンディングサブシ ーケンスにアクセスする、第2の命令集合と、 を命令が含む請求項16に記載のシステム。
  18. 18.システムを動作させる方法であって、プロセッサと、 アクセスするためにプロセッサが接続されるメモリと、メモリに保存されるスト リングデータであって、各々がプロセッサによりアクセスされることが可能な複 数のデータユニットをストリングデータが含み、文字についての複数の許容可能 ストリングの各々に対して、ストリングの文字を示す文字データを使用してプロ セッサがアクセスすることが可能なデータユニットの対応するシーケンスをデー タユニットが含む、ストリングデータと、複数のカテゴリーから成る第1の集合 内にある第1のストリングを含む複数の許容可能ストリングであって、第1のス トリングのシーケンスの末尾でプロセッサがアクセスすることが可能であるデー タユニットの対応するエンディングサブシーケンスを第1のストリングのデータ ユニットのシーケンスが含み、第1のストリングのエンディングサブシーケンス が、それに対応するシーケンスの末尾でプロセッサがエンディングサブシーケン スにアクセスすることが可能なストリングが複数の許容可能ストリングの内の1 つであることを示すアクセプタンス情報と、第1のカテゴリー集合を示すカテゴ リー集合情報であって、第1のカテゴリー集合が複数のカテゴリーの内の少なく とも1つを含む、カテゴリー集合情報と、を含む、複数の許容可能ストリングと 、をシステムが含み、 第1のストリングの文字を示す第1のストリングの文字データを使用して第1の ストリングのシーケンスにアクセスするためにプロセッサを動作させるステップ であって、第1のストリングのシーケンスにアクセスするためにプロセッサを動 作させるステップが、第1のストリングのエンディングサブシーケンスにアクセ スするサブステップを含む、プロセッサ動作ステップと、第1のストリングのエ ンディングサブシーケンスを使用して、第1のストリングが許容可能ストリング の内の1つであることと第1のカテゴリー集合とを示す、第1のストリングのエ ンディングデータを得るためにプロセッサを動作させるステップと、 を含むシステム動作方法。
  19. 19.複数のカテゴリーがN個のカテゴリーを含み、第1のストリングのエンデ ィングデータが、Nビットを含むデータの項目であり、それらビットの各々が第 1のストリングがカテゴリーの内の対応する1つにあるかどうかを示す請求項1 8に記載のシステム動作方法。
JP6518920A 1993-02-23 1993-02-23 文字認識におけるストリングのカテゴライズ Pending JPH07506207A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US1993/001590 WO1994019757A1 (en) 1993-02-23 1993-02-23 Categorizing strings in character recognition

Publications (1)

Publication Number Publication Date
JPH07506207A true JPH07506207A (ja) 1995-07-06

Family

ID=22236346

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6518920A Pending JPH07506207A (ja) 1993-02-23 1993-02-23 文字認識におけるストリングのカテゴライズ

Country Status (6)

Country Link
EP (1) EP0638187B1 (ja)
JP (1) JPH07506207A (ja)
AT (1) ATE203604T1 (ja)
DE (1) DE69330493T2 (ja)
DK (1) DK0638187T3 (ja)
WO (1) WO1994019757A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7451143B2 (en) 2002-08-28 2008-11-11 Cisco Technology, Inc. Programmable rule processing apparatus for conducting high speed contextual searches and characterizations of patterns in data
US7119577B2 (en) 2002-08-28 2006-10-10 Cisco Systems, Inc. Method and apparatus for efficient implementation and evaluation of state machines and programmable finite state automata
US7085918B2 (en) 2003-01-09 2006-08-01 Cisco Systems, Inc. Methods and apparatuses for evaluation of regular expressions of arbitrary size
US7464254B2 (en) * 2003-01-09 2008-12-09 Cisco Technology, Inc. Programmable processor apparatus integrating dedicated search registers and dedicated state machine registers with associated execution hardware to support rapid application of rulesets to data

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4034343A (en) * 1976-10-01 1977-07-05 Xerox Corporation Optical character recognition system
US4499553A (en) * 1981-09-30 1985-02-12 Dickinson Robert V Locating digital coded words which are both acceptable misspellings and acceptable inflections of digital coded query words
DE3523042A1 (de) * 1984-06-28 1986-01-02 Canon K.K., Tokio/Tokyo Bildverarbeitungssystem
JPH0724055B2 (ja) * 1984-07-31 1995-03-15 株式会社日立製作所 単語分割処理方法
JPH0797373B2 (ja) * 1985-08-23 1995-10-18 株式会社日立製作所 文書フアイリングシステム
US4862408A (en) * 1987-03-20 1989-08-29 International Business Machines Corporation Paradigm-based morphological text analysis for natural languages
JPH0664631B2 (ja) * 1987-09-09 1994-08-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 文字認識装置

Also Published As

Publication number Publication date
EP0638187A1 (en) 1995-02-15
EP0638187A4 (en) 1995-08-23
EP0638187B1 (en) 2001-07-25
DK0638187T3 (da) 2001-09-24
DE69330493D1 (de) 2001-08-30
DE69330493T2 (de) 2001-11-22
WO1994019757A1 (en) 1994-09-01
ATE203604T1 (de) 2001-08-15

Similar Documents

Publication Publication Date Title
US5488719A (en) System for categorizing character strings using acceptability and category information contained in ending substrings
JP3152868B2 (ja) 検索装置および辞書/テキスト検索方法
US7421386B2 (en) Full-form lexicon with tagged data and methods of constructing and using the same
US5953723A (en) System and method for compressing inverted index files in document search/retrieval system
Moffat et al. On the implementation of minimum redundancy prefix codes
US7031910B2 (en) Method and system for encoding and accessing linguistic frequency data
KR100950607B1 (ko) 허프만 코딩
JP3277792B2 (ja) データ圧縮方法および装置
KR100318762B1 (ko) 외래어 음차표기의 음성적 거리 계산방법
US20020184251A1 (en) Efficient collation element structure for handling large numbers of characters
US20030074187A1 (en) Natural language parser
US10740562B2 (en) Search apparatus, encoding method, and search method based on morpheme position in a target document
US5560037A (en) Compact hyphenation point data
JP6447161B2 (ja) 意味構造検索プログラム、意味構造検索装置、及び意味構造検索方法
US6535886B1 (en) Method to compress linguistic structures
CN111814479B (zh) 一种企业简称生成及其模型的训练方法及装置
US20140129543A1 (en) Search service including indexing text containing numbers in part using one or more number index structures
JP2009512099A (ja) トライでの再始動可能なハッシュの方法及び装置
US7076423B2 (en) Coding and storage of phonetical characteristics of strings
JPH07506207A (ja) 文字認識におけるストリングのカテゴライズ
Witten et al. Models for compression in full-text retrieval systems
Diewald Matrix and double-array representations for efficient finite state tokenization
US20050102278A1 (en) Expanded search keywords
Mullery A procedure-oriented machine language
JP3708318B2 (ja) データ圧縮/復元装置およびデータ圧縮/復元方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051007