(57)【要約】  サンプルをデータベース中のレコードに対して一致させることができる、速度を改善する方法は、可能性ある特性（２６）のリスト（２４）を規定することと、サンプルから特性を抽出することと、データベース中のそれぞれのレコードに対して、レコードとサンプルとの両方に一致する特性の数をカウントすることとを含む。次に、このカウントのベースで、一致候補のリストが、より詳細なマッチングまたは解析のために選択される。このような方法は、データベース内に新しいレコードを登録するときに任意の追加の労力をかけて、非常に高速な候補マッチングを提供する。【選択図】図１
2010507857.tif 000002
【特許請求の範囲】
【請求項１】
サンプルレコードと、複数の記憶されているレコードとの間で可能性ある一致を識別する方法において、
（ａ）特性のリストを規定し、それぞれの特性に、前記特性を表示する記憶されているレコードを関係付けすることと、
（ｂ）前記サンプルレコードから特性を抽出することと、
（ｃ）所定の記憶されているレコードが、要求される数の抽出された特性に関係付けられている場合、前記サンプルとの可能性ある一致であるとして、前記所定の記憶されているレコードを識別することと
を含む方法。
【請求項２】
前記要求される数は、数値的しきい値である、請求項１記載の方法。
【請求項３】
前記要求される数は、記憶されているレコード毎の、マッチング特性の平均数の関数である、請求項１記載の方法。
【請求項４】
前記特性のリストは、ユーザ生成される、請求項１記載の方法。
【請求項５】
前記特性のリストは、前記記憶されているレコードから自動的に生成される、請求項１記載の方法。
【請求項６】
前記特性のリストは、前記複数の記憶されているレコードによって表示される特性空間内のすべての特性を規定する、請求項１記載の方法。
【請求項７】
前記特性のリストは、あるサンプルレコードによって表示することができる特性空間内のすべての可能性ある特性を規定する、請求項１記載の方法。
【請求項８】
前記特性のリストは、暗黙的なものであり、独立した実体として記憶されない、請求項８記載の方法。
【請求項９】
前記特性のリストは、データベーステーブル内に記憶される、請求項１記載の方法。
【請求項１０】
前記特性のリストは、順序付けられている、請求項１記載の方法。
【請求項１１】
前記それぞれの特性は、記憶されているレコードの断片である、請求項１記載の方法。
【請求項１２】
前記特性のリストは、前記記憶されているレコードに対して、ハッシュのような演算を適用することによって生成される、請求項１記載の方法。
【請求項１３】
前記関係付けステップは、それぞれの前記特性を、前記特性を表示する記憶されているレコードを含む、ケース出現リストにリンク付けするポインタを維持することを含む、請求項１記載の方法。
【請求項１４】
前記ポインタは、ルックアップテーブル中に保持される、請求項１３記載の方法。
【請求項１５】
前記抽出ステップは、前記特性リスト中に現れる特性に対して、前記サンプルレコードを検索することを含む、請求項１記載の方法。
【請求項１６】
前記抽出ステップは、前記サンプルレコードに演算を適用して、１つ以上の抽出された特性を生成することを含む、請求項１記載の方法。
【請求項１７】
前記抽出ステップは、前記サンプルレコードに演算を適用して、１つ以上のサンプル出力を生成し、前記特性リストに対して前記サンプル出力を検索することを含む、請求項１記載の方法。
【請求項１８】
前記特性のリストは、あるサンプルレコードによって表示することができる特性空間内のすべての可能性ある特性を規定し、前記マッチングステップは、前記サンプルレコードに演算を適用して、１つ以上のサンプル出力を生成することと、前記サンプル出力を使用して、ルックアップテーブルをアドレス指定し、前記ルックアップテーブル中のそれぞれの行はケース出現リストをポイントし、前記ケース出現リストは、対応する特性を表示するそれぞれの記憶されているレコードの出現を記録する、請求項１記載の方法。
【請求項１９】
特性が抽出されるときに、記憶されているレコードによる一致を記録するヒストグラムが構築され、前記ヒストグラムから、可能性ある一致として、レコードを識別する、請求項１記載の方法。
【請求項２０】
前記サンプルレコードと、前記可能性ある一致のそれぞれとの間の関係をさらに解析する追加のステップを含む、請求項１記載の方法。
【請求項２１】
前記抽出ステップは、複数の並列プロセッサの間で分けられ、それぞれが関係付けの結果をコンソリデータに送り、前記コンソリデータは、前記関係付けの結果に依存して、可能性ある一致として、記憶されているレコードを識別する、請求項１記載の方法。
【請求項２２】
サンプルレコードと、複数の記憶されているレコードとの間の可能性ある一致を識別するシステムにおいて、
（ａ）それぞれの特性が、前記それぞれの特性に前記特性を表示する記憶されているレコードを関係付けしている、特性のリストと、
（ｂ）前記サンプルレコードから特性を抽出するプロセッサと、
（ｃ）所定の記憶されているレコードが、要求される数の抽出された特性に関係付けられている場合、前記サンプルとの可能性ある一致であるとして、前記所定の記憶されているレコードを識別するプロセッサと
を具備するシステム。
【請求項２３】
前記抽出するプロセッサと、前記識別するプロセッサとは、共通のプロセッサからなる、請求項２２記載のシステム。
【請求項２４】
前記抽出するプロセッサは、前記識別するプロセッサから離れている、請求項２２記載のシステム。
【請求項２５】
前記抽出するプロセッサは、複数の並列プロセッサを備え、それぞれが関係付けの結果をコンソリデータに送り、前記コンソリデータは、前記関係付けの結果に依存して、可能性ある一致として、記憶されているレコードを識別する、請求項２２記載のシステム。
【発明の詳細な説明】
【発明の分野】
【０００１】
本発明は、データベースシステムの分野に関連する。より詳細には、本発明は、候補レコードをデータベース内のレコードに対して高い信頼度で一致させる、速度を改善する方法およびシステムに関連する。
【先行技術】
【０００２】
さまざまな分野において、特定のサンプルレコードが、大規模データベース内に既に存在するか否かを、非常にすばやく決定できること、そして、もし存在する場合、１つ以上の一致を識別することに対する増加している要望がある。１つの特定の分野は、バイオメトリクスであり、バイオメトリクスでの要求は、特定のバイオメトリックサンプルを提供した個人が、既にデータベース中に存在するか否かを決定することである。さらなる例示的な分野は、デジタル権管理のものであり、デジタル権管理における要望は、特定の音楽、映像、画像またはテキストの作品が、著作権成果物のデータベース内の対応するレコードに一致するか否かを調べることである。
【０００３】
説明するタイプのデータベースは、きわめて大規模であるかもしれず、サンプルレコードと、データベース内のレコードのあらゆるものとの間で、完全一致解析を試みることは非実用的であるかもしれない。計算作業負荷を減少させるために、さまざまな事前選別プロセスが使用されているが、これらは、マッチングアルゴリズムの特色、または、マッチングされることになるデータの特色に依存することが多いので、これらの多くのものは、非常に制限された適用分野しか持たない。
【発明の概要】
【０００４】
本発明にしたがうと、サンプルレコードと、複数の記憶されているレコードとの間で可能性ある一致を識別する方法が提供され、方法は、  
（ａ）特性のリストを、明示的に、または暗黙的に規定し、前記特性を表示する記憶されているレコードを、それぞれの特性に関係付けすることと、
（ｂ）サンプルレコードから特性を抽出することと、
（ｃ）所定の記憶されているレコードが、要求される数の抽出された特性に関係付けられている場合、所定の記憶されているレコードを、サンプルとの可能性ある一致であるとして識別することとを含む。
【０００５】
要求される数は、応用に依存したしきい値のような、任意の便利なアルゴリズムにしたがって、決定されてもよい。しきい値は、簡潔な数値的カウントであることが便利であるかも知れず、または、代わりに、マッチング特性の数だけでなく、これらの特性が、サンプルレコードに一致する回数、および／または、対応する記憶されているレコードに一致する回数にも依存している、何らかのより複雑なメトリックであるかもしれない。
【０００６】
サンプルレコードに対して、または、その部分に対して、所望の関数／演算を適用することによって、抽出が実行されてもよい（同じ関数／演算を使用して、記憶されたレコードから登録された特性を抽出してもよい）。１つの実施形態では、抽出が、さまざまなサブ特徴に対してデータを検索することによって、実行されてもよいが、多くの応用では、検索でない抽出が好まれるかもしれない。
【０００７】
特性のリストは、手作業で作られてもよく（ユーザ生成）、または、記憶されているレコードから自動的に生成されてもよい。特性のリストは、選択的なもの（例えば、ある書籍のテキスト内に見つかる何らかの単語）であってもよく、または、包括的なもの（すべての出現する単語が自動的にリストに追加される）であってもよい。すべての特性が、同じタイプまたはクラスのものであってもよいが、このことは必須ではなく、単一のリストが、さまざまなタイプの特徴を含んでもよい（例えば、個別の単語、フレーズ、フォントサイズとフォント情報、レイアウト情報等）ことが意図されている。
【０００８】
一度、サンプルレコードと、記憶されているレコードとの間の可能性ある一致候補のリストが生成されると、これらの検索されたレコード上にさらなる解析が実行されてもよい。一般的に、必須ではないが、サンプルレコードと、可能性あるマッチングレコードのリストとが、次に、より洗練されたマッチングアルゴリズムに渡され、どの一致候補が、真の一致であるかを決定する。
【０００９】
このような方法は、データベース内に新しいレコードを登録するときに任意の追加の労力をかけて、非常に高速な候補マッチングを提供する。新しいレコードの登録の頻度に比べて、マッチングがより頻繁に行われるとき、このトレードオフは、十分に価値がある。
【００１０】
本発明のさらなる観点にしたがうと、サンプルレコードと、複数の記憶されているレコードとの間の可能性ある一致を識別するシステムが提供され、システムは、  
（ａ）それぞれの特性が、前記特性を表示する記憶されているレコードを、それぞれの特性に関係付けする、特性のリストと、
（ｂ）サンプルレコードから特性を抽出するプロセッサと、
（ｃ）所定の記憶されているレコードが、要求される数の抽出された特性に関係付けられている場合、所定の記憶されているレコードを、サンプルとの可能性ある一致であるとして識別するプロセッサとを具備する。
【００１１】
いくつかの実施形態では、サンプルレコードに対する特性のマッチングのために、また、可能性ある一致として、記憶されているレコードを識別するために、個別のプロセッサを使用してもよい。これらのプロセッサは、個別のコンピュータであってもよく、互いに離れていてもよい。
【００１２】
ある特定の例では、記憶されているレコードの完全なコレクションを含むメインデータリストが、特性リストとは別のものとして保持されてもよい。このことは、ローカルプロセッサ、例えば、複写機内に組み込まれたプロセッサが、テキストの複写されたページのようなサンプルレコード上に初期解析を実行することを可能にする。一度、可能性ある一致のリストが識別されると、次に、このリストは、遠隔サーバに送られてもよく、遠隔サーバにおいて、サンプルと、可能性ある一致のそれぞれの全文テキストとを比較することによって、より詳細な解析が実行される。
【００１３】
このアプローチは、システムの設計者が、著作権成果物の全体のコーパスの全文コピーを多数のユーザに配信する必要がないというさらなる利点を持っている。代わりに、それぞれのユーザは、明示的な、または暗黙的な特性のリストを単に受け取るだけであり、ローカルに実行されることになる初期解析に対しては、このような特性のリストで十分である。１つ以上の可能性ある一致が見つかると、システムが、集中ロケーションに自動的にレポートしてもよく、集中ロケーションにおいて、全文のドキュメントに対して、さらなる解析が実行されてもよい。
【００１４】
本発明は、さまざまな方法で実行されてもよく、いくつかの特定の実施形態を、添付の図面を参照して、例として、ここで説明する。
【図面の簡単な説明】
【００１５】
【図１】図１は、本発明の実施形態にしたがった、データベース構造を示す。
【図２】図２は、マッチングプロセスを例示するヒストグラムである。
【図３】図３は、別の例示的なヒストグラムである。
【図４】図４は、いくつかの例示的なハードウェアを示す。
【詳細な説明】
【００１６】
以下の詳細な説明では、多数の特定の詳細を述べて、特許請求されている主題の完全な理解をもたらす。しかしながら、特許請求されている主題は、これらの特定の詳細なしで実行されてもよいことが当業者によって理解されるだろう。他の例では、よく知られた方法、手続、構成部品、および／または、回路は、詳細に説明しない。
【００１７】
以下の詳細な説明のいくつかの部分は、コンピュータ、および／または、コンピューティングシステムメモリ内のような、コンピューティングシステム内に記憶される、アルゴリズム、ならびに／あるいは、データビットおよび／またはバイナリデジタル信号上の動作の象徴的表現に関して提示した。これらのアルゴリズム的記述および／または表現は、データ処理技術における当業者によって使用され、彼らの作業の内容を他の当業者に伝える。アルゴリズムは、ここで、および一般的に、演算の筋の通ったシーケンス、および／または、望ましい結果へと導く類似の処理であるとして考えられる。動作および／または処理は、物理的な量の物理的な操作を含んでもよい。一般的に、必ずしも必要ではないが、これらの量は、記憶され、転送され、結合され、比較され、および／またはそうでなければ、操作されることができる、電子的および／または磁気的信号の形態をとってもよい。主に共通の利用のために、時として、これらの信号をビット、データ、値、エレメント、シンボル、キャラクタ、ターム、数字、数値、および／または類似物として呼ぶことが便利であることが分かっている。しかしながら、これらのすべてのものと、類似のタームとは、適切な物理的量に関係付けられることになり、単に便利なラベルにすぎないことを理解すべきである。そうではないと特に明記しない限り、以下の説明から明らかなように、この明細書の説明全体にわたって、“処理”、“演算”、“計算”、“決定”、および／または、類似物のようなタームを利用することは、コンピュータまたは類似の電子的コンピューティングデバイスのような、コンピューティングプラットフォームの動作および／または処理を指し、コンピューティングプラットフォームは、コンピューティングプラットフォームのプロセッサ、メモリ、レジスタ、ならびに／あるいは、他の情報記憶装置、送信、および／または表示デバイス内の物理的電子的および／または磁気的な量、ならびに／あるいは、他の物理的量として表されるデータを操作し、および／または、変換する。
【００１８】
簡潔さのために、以下の説明は、デジタル権管理分野の例示的な実施形態に向けられることとする。説明することになる実施形態では、データベースは、現在著作権継続中である、多数の出版された書籍の詳細を含んでいる。あるウェブサイトには、さまざまな書籍からの非常に長い抜粋が掲載されていることがわかっている。これらの抜粋のうちの何らかのものが、データベース内に記録されている書籍から取られているか否かを決定することがタスクである。もちろん、この特定の例は、本発明の背景にある、一般的な原則を説明するために、単に使用されており、同じ技法を他の分野中でも等しく適用できることになることが理解されるだろう。その最も広い形態における本発明は、データベース内に保持される、任意の特定のクラスまたはタイプのデータに限定されることはなく、使用されるマッチングアルゴリズムの詳細に限定されることはない。
【００１９】
例示的な実施形態のデータベース構造を、図１に概念的に示した。データベース内の個列の書籍の書誌的詳細は、ケースリストまたはテーブル１６内に保持され、ケースリストまたはテーブル１６のそれぞれの行１７は、個別の書籍を表す。列１８、２０、２２は、それぞれ、一意的な参照番号と、書籍タイトルと、著作者とを保持する。もちろん、実際の実施形態では、それぞれの個別の書籍についてのより多くの詳細が、おそらくは保持されることになるだろう。
【００２０】
それぞれの書籍の全文テキストが、データリストまたはテーブル１０内で保持され、データリストまたはテーブル１０のそれぞれの行１１は、個別の書籍を表す。このテーブルは、２つの列からなり、最初の列１２は、前述した、一意的な参照番号であり、２番目の列１４は、何らかの適切にエンコードされた形態の、書籍の完全なテキストを保持している。より一般的に、列１４は、個別のレコードを一意的に識別する何らかの汎用型の表現を保持するとして考えてもよい。
【００２１】
データベースの検索を支援するために、特性リストまたはテーブル２４が生成される。それぞれの行２６は、データリスト１０内のレコードの列１４内に見つけられるような、さまざまな異なる特性を保持する。これらの特性が、書籍のうちの少なくともいくつかのものにおいて、適度に共通のものになるように（しかしながら、圧倒的には、共通にならないように）、選択される。特性は、データの容易に測定可能な何らかの属性であってもよく、選択される特性のタイプは、応用に明らかに依拠するだろう。ここでのように、いくつかの実施形態では、特性は、サブ特徴であってもよく；別の実施形態では、ハッシュ関数のような演算／関数の適用によって、データ、または、データの何らかの部分から抽出されてもよい。
【００２２】
説明している実施形態では、特性は、個別の単語、すなわち、“少年”、“おばあさん”、“ピーター”、“ラビット”、および、“魔女”である。特性テーブル中のそれぞれの行は、ルックアップテーブル２５内の対応する行２７をポイントしており、対応する行２７は、ここで、ａ、ｂ、ｃ等のように表示された一連のポインタを保持する。それぞれのポインタは、テーブル２４内の特定のリンク付けされた特性に対応する個別のケース出現リスト２８の開始を規定する、特定のメモリロケーションをポイントする。したがって、テーブル２４内のそれぞれの特性に対して１つずつ、複数のケース出現リストがあることになる。個別のケース出現リスト２８は、その中で、その特定の特性が見つけられる、あらゆる書籍の一意的な参照番号で埋められる。簡潔さのために、リストまたはテーブル中のそれぞれの行３０は、該当する特性を含み、表示し、または、表明する単一の書籍の参照、あるいは、そこから特性を抽出できる単一の書籍の参照を単に含む。
【００２３】
したがって、示した例では、第１のケース出現リストは、データ１、２、４を含み、このことは、特性“少年”が、書籍“魔女”、“ライオン、魔女とワードローブ”、および“ピーターパン”中に出現するか、これらの書籍から抽出できることを意味する。特性“おばあさん”に関連する第２のリストは、参照番号１で埋められた単一の行からなり、このことは、単語“おばあさん”が、書籍“魔女”だけにおいて出現することを示している。
【００２４】
（示していない）別の配置では、特性テーブル２４と、ルックアップテーブル２５が、２つの列を持つ単一のテーブルにマージされてもよい。
【００２５】
システムを管理し、検索のために使用する方法を以下に説明する。
【００２６】
新しい特性（この例では、新しい単語）を追加するためには、登録された特性のリスト２４の、もしそのリストが順序付けられている場合は、適切な位置に新しい特性を追加する。新しいケース出現リストに対してメモリのブロックが割り振られ、該当するポインタがルックアップテーブル２５に追加される。最後に、新しいケース出現リストが、そこから新しく追加された特性を抽出できるケース（例えば、書籍）の参照番号で埋められる。
【００２７】
新しいケース（書籍）が登録されることになるとき、したがって、ケースリスト１６と、データリスト１０とが更新され、次に、新しいケース番号が、それぞれの抽出された特性に対して、それぞれのケース出現リストに追加される。いくつかの実施形態では、特性のリスト２４は、データリスト１０内の全体のデータのコーパス内に含まれる、または、データリスト１０内の全体のデータのコーパスから抽出されもしくは導出される、すべての特性からなっていてもよく；そして、新しいケースの追加は、新しいケースから抽出された、リスト２４内に既に含まれていない、何らかの新しい特性の登録を自動的にトリガしてもよい。
【００２８】
ここで、マッチングのタスク、または、言い換えると、未知のデータセットまたはテキストのサンプルが、データベース内の書籍のうちの１つからとられているか否かを決定するタスクに進む。（それぞれの書籍の全文テキストである）データ１４に対して、サンプルをマッチングすることは、演算的に非常に長くなりがちであるため、サンプルをマッチングするというよりはむしろ、既に登録されている特性との比較のために、このサンプルから特性を単に抽出する。個別のケース出現リスト２８を参照すると、カウントが、一致されたテーブル内で、特定の書籍に対する参照が起こった回数を保持できる。
【００２９】
簡潔な実施形態では、マッチングは、特性リストの行２６にわたっての、直接的な行ごとの検索によって、実行されるかもしれないが、特性リストが順序付けられていることを確実にして、そして、バイナリ検索のような、何らかのより洗練された検索を使用することによって、これを避けることが好ましいことが多いだろう。このようなアプローチは、マッチング特性をすばやく見つけることを可能にし、抽出されたサンプル特性がリスト内に登録されていない場合に、不一致をすばやく識別することを可能にする。
【００３０】
図２は、サンプルテキストが、特性“魔女”と“少年”に対して、マッチングされる例を図示する。カウントをヒストグラムとして概略的に示すが、運用されている実施形態において、このようなヒストグラムを必ずしも作図する必要はないだろう。理解されるように、データベース中に、一致した特性を持つ２つの書籍、すなわち、“魔女”と、“ライオン、魔女とワードローブ”とがある。“ピーターラビット”は、何の一致も持たず、“ピーターパン”は、１つの一致を持っている。
【００３１】
次に、カウントに対して、しきい値が適用され、少なくともしきい値のスコアを持つ任意の書籍が、一致候補であるとして考慮される。ここで、しきい値を１とする場合、“ピーターラビット”以外のすべての書籍が一致候補になり、しきい値を２とする場合、候補は、“魔女”と、“ライオン、魔女とワードローブ”になる。
【００３２】
さらなる例を図３に示し、図３は、特性“魔女”、“ピーター”、および“少年”に対して一致が見つけられる、別のテキストサンプルを表す。しきい値２が選ばれる場合、データベース内の“ピーターラビット”以外のすべての書籍が一致する。
【００３３】
しきい値の値は、特定の応用にしたがって、また、事前選択プロセスが、全体のマッチングプロセスを高速化するために、多数のケースを考察から除外する必要がある度合にしたがって、ユーザによって、試行錯誤で選択されてもよい。単純なカウントや、固定されたしきい値の使用は、不一致から、可能性あるマッチングを分けるための便利な方法ではあるが、他のアルゴリズムも同等に使用されてもよい。１つの可能性あるアプローチは、例えば、すべてのケースにわたって集められた平均特性カウントよりも、ある固定パーセンテージ分より高い特性カウントを持っている、すべてのケースを一致候補として選択することであるだろう。
【００３４】
評価されることになるサンプルのサイズに依拠して、そのサンプルを全体的に使用する必要はないかもしれない。例えば、サンプルが、ある書籍のいくつかの章からなる場合、１ページのテキストだけに基づいて、事前選択を実行することが十分であるかもしれない。
【００３５】
誤った棄却の危険性が受入可能なまでに低くなるように、ほとんどのアプリケーションにおいて、特性の選択、マッチング基準、および、解析されることになるサンプルのサイズが、選択されることになるだろう。
【００３６】
前述のように、特性は、ある単語またはフレーズのような、データの断片であってもよく、または、代わりに、データの任意の他の属性を表現していてもよい。例えば、データに対して、または、データの任意の部分に対して、ハッシュ関数のような演算を適用することによって、特性をデータから抽出または導出してもよい。次に、演算の出力を使用して、特性テーブル２４にアクセスしてもよく、および／または、特性テーブル２４を検索してもよい。可能性ある特性の数が有限であり、前もって知られている場合、任意の応用では、規定された特性空間内のあらゆる可能性ある特性を、予め登録しておくことが望ましいかもしれない。このような配置は、マッチングの必要性、特性リスト２４を検索する必要性を不用にする。その特性を抽出するためにサンプルレコードを単に処理する代わりに、テーブル２４中の対応する行を、特定の特性に適用可能なケース出現リストに対するインデックスとして使用する。
【００３７】
例えば、バイオメトリクスの応用では、特性は、特定の長さ（例えば、６５５３６個の可能性ある特性値が出現することを可能にする、１６ビット）の数値コードであってもよい。データベース中には、何百万、何十億ものレコードがあるかもしれず、それぞれの可能性ある特性は、何回も出現するかもしれない。サンプルを一致させるために、あるものは、例えばハッシュすることによって、サンプルから１つ以上の特性を単に抽出し、この特性を使用して、特性テーブルをアドレス指定し、したがって、リスト２８の該当する記憶されたレコードに直接に進む。
【００３８】
いくつかの応用では、特性リスト２４を全くなしで済ますことさえも可能であるかもしれない。リストが順序付けされており、規定された特性空間（例えば、数１から６５５３６まで）内のあらゆる可能性ある特性値を含む場合、そのすべての値が推測できるので、リストを独立した実体として維持することは不要である。このようなケースでは、あるサンプルから抽出された、特性ｎをインデックスとして使用して、ルックアップテーブル２５の行ｎへと直接に進むことができ、そして、対応するケース出現リスト２８に直接進むことができる。
【００３９】
より一般的には、可能性ある特性のリストが有限であり、前もって規定できる場合、これらの特性を、数値シーケンス１・・・Ｎにマッピングできる。ある未知のサンプルから抽出された特性に対して、同一のマッピングを適用することが、ｎ＜＝Ｎの値を与えるとして仮定する。ルックアップテーブル２５が、ベクトルＬ（Ｎ）として保持されている場合、その特定の特性に対して、該当するケース出現リスト２８の、メモリ中のロケーションは、位置Ｌ（ｎ）において保持されているポインタを見ることによって、見つけられる。
【００４０】
もちろん、何らかの実施形態においては、ケース出現リスト２８が、空であってもよいことが理解されるだろう。
【００４１】
一度、一致候補のリストが選択されると、前述の手続の内の１つを使用して、何らかの便利なマッチングアルゴリズムを使用して、可能性あるもののそれぞれに対して、より詳細な一致を実行してもよい。説明したテキストの例では、サンプルテキストが、可能性ある一致のそれぞれの全文テキストに対して、単語ごとに比較されてもよい。
【００４２】
１つの実施形態では、データベース自体は、事前の、および／または最終のマッチングが発生するのと、同じコンピュータ、または同じロケーションに保持されていてもよい。代わりに、事前のマッチングがローカルコンピュータにおいて保持されている特性リストにしたがって実行され、事前の一致がリモートコンピュータに送られて、詳細なマッチングが発生するというように、プロセスが分散されていてもよい。このような配置は、（すべてのケースを表す全文データを含む）一次データリスト１０が、中央ロケーションにおいて保持されることを可能にし、ここで、ローカルマシンは、特性のリスト２４と個別のリスト２８だけを保持すればよい。
【００４３】
図４に示した、別の実施形態では、本発明のプロセスは、並列で動作する、複数のコンピュータまたはプロセッサを使用することによって、さらに高速化されている。ユーザのコンピュータ３２は、マッチングタスクを制御装置３４に送り、制御装置３４は、これを分けて、複数のコンピュータまたはプロセッサ３６の間で分散させる。それぞれのプロセッサ３６は、特定の特性、または、グループの特性を取り扱うように命令されていてもよく、ケース出現リストのサブセットを生成する責任を負っていてもよい。代わりに、制御装置３４は、何らかの別の方法で、作業を分けてもよい。プロセッサ３６は、それらのリストをコンソリデータ３８に送り、コンソリデータ３８は、（例えば、図２、３で図示したヒストグラム／カウント手続を使用して、）一致候補の選択を最終的に行う。次に、可能性あるもののリストが、要求されるように、より詳細なマッチングを実行するコンピュータまたはプロセッサ４２に送られ、あるいは、参照番号４０で示すように、さらなる解析のためにユーザ３２に戻される。
【００４４】
もちろん、特定の実施形態を説明してきたが、特許請求されている主題は、特定の実施形態、または、実現に限定されていないことが理解されるだろう。例えば、１つの実施形態は、デバイスまたはデバイスの組み合わせ上で動作するように実現されるような、ハードウェア中のものであってもよく、他方、別の実施形態は、例えば、ソフトウェア中のものであってもよい。同様に、ある実施形態は、例えば、ファームウェア中で、または、ハードウェア、ソフトウェア、および／または、ファームウェアの任意の組み合わせとして実現されてもよい。同様に、特許請求されている主題は、この観点における範囲に制限されていないが、１つの実施形態は、記憶媒体のような１つ以上の物品を含んでもよい。例えば、１つ以上のＣＤ−ＲＯＭ、および／または、ディスクのような、この記憶媒体は、命令を記憶してもよく、命令は、コンピュータシステム、コンピューティングプラットフォーム、または、他のシステムのようなシステムによって実行されるときに、例えば、前述した実施形態のうちの１つのような、特許請求されている主題にしたがった方法の実施形態が実行されることに帰結してもよい。１つの可能な例として、コンピューティングプラットフォームは、１つ以上の処理ユニット、または、プロセッサ、ディスプレイ、キーボードおよび／またはマウスのような１つ以上の入出力デバイス、ならびに／あるいは、スタティックランダムアクセスメモリ、ダイナミックランダムアクセスメモリ、フラッシュメモリ、および／またはハードドライブのような１つ以上のメモリを含んでもよい。
【００４５】
これまでの説明において、特許請求されている主題のさまざまな観点を説明した。特許請求されている主題の完全な理解をもたらすために、説明の目的で、特定の数、システム、および／または構成を述べた。しかしながら、特許請求されている主題は、これらの特定の詳細なしで実行されてもよいことが、この開示の利益を受ける当業者にとって明らかになるだろう。他の例では、特許請求されている主題をあいまいにしないように、よく知られた特徴を省略し、および／または簡潔化した。ある特徴をここで図解および／または説明したが、当業者にとって、さまざまな修正、置換、変更、および／または、均等物が、ここで明らかになるだろう。したがって、添付の特許請求の範囲は、このような修正および／または変更のすべてが、特許請求されている主題の本来の精神の範囲内におさまることを意図している。
【図１】
2010507857.tif 000003
【図２】
2010507857.tif 000004
【図３】
2010507857.tif 000005
【図４】
2010507857.tif 000006
【国際調査報告】
2010507857.tif 000007
2010507857.tif 000008