JP2004506960A - 蓋然論マッチング・エンジン - Google Patents
蓋然論マッチング・エンジン Download PDFInfo
- Publication number
- JP2004506960A JP2004506960A JP2001564037A JP2001564037A JP2004506960A JP 2004506960 A JP2004506960 A JP 2004506960A JP 2001564037 A JP2001564037 A JP 2001564037A JP 2001564037 A JP2001564037 A JP 2001564037A JP 2004506960 A JP2004506960 A JP 2004506960A
- Authority
- JP
- Japan
- Prior art keywords
- token
- tokens
- record
- query
- database
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3346—Query execution using probabilistic model
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
方法及び装置は、情報が、蓋然論アプローチと幾らかの照会処理とに基づく電子データベースから検索されることを可能とする。1形態において、データベースのレコードは、レコードに対する索引が生成される前に、パターン動作言語を用いてレコード・トークンに分解される。もう1つの形態において、索引トークンのテーブルは、生成され、そのテーブルは、各索引トークンに対するデータベース内の発生頻度を含み、各索引トークンは、それぞれのレコード・トークンに対して音声等価物を含んでいる。1形態において、照会は、パターン動作言語を使用して照会トークンに解剖され、索引トークンは、照会トークンから発生し、探索トークンは、データベース・レコードにアクセスするために使用される。もう1つの形態において、探索トークンは、参照トークンに対して、又は参照トークン及び探索トークンに類似するとして適格であるトークンに対して音声等価物を含み、探索トークンは、データベース・レコードにアクセスするために使用される。参照トークンに類似するものとしてのトークンの適格さは、その参照トークンと情報理論アルゴルズムを用いるデータベース辞書との比較に基づいている。更なるもう1つの形態において、トークンは、選択され、選択されたトークンは、データベース・レコードにアクセスするために使用され、照会に対する適切さの見込みは、各レコードに対して計算され、最も高い照会の適切さは、継続閾値と比較される。継続閾値を超える場合、それ以上、レコードは、アクセスされず、アクセスされたレコードは、出力される。継続閾値を超えない場合、選択された探索トークンは、利用可能な探索トークンの組から除去され、新たなトークンは、データベース・レコードにアクセスするために選択される。
Description
【0001】
【発明の属する技術分野】
本発明は、概して、データベース情報の検索技術に関連する。特に、本発明は、照会の拡張を用いるレコード・リンケージ理論に基づいて、データベース情報を検索するものに関連する。
【0002】
【発明の背景】
区別は、常に明確に切り離されていないが、情報検索は、伝統的に、二つの形式のうち一つ、即ち、閲覧(browsing)又は照会(querying)に属するものとして分類される。閲覧は、一般に、照会よりも受動的である。閲覧は、ユーザに、簡単な機構(例えばメニュートピック)を介してデータベースに一部にアクセスさせ、次に、それを介して案内することにより、しばしば何段階かの情報検索システム案内を伴い、ユーザに、アクセスした情報を調査させる。ハイパーテキストは、一般に、情報検索への閲覧アプローチをサポートする。ユーザへの要求が少ないとはいえ、閲覧は、必ずしも、大きなデータベースから情報を検索する手法として最も効率の良い手法ではない。
【0003】
閲覧と比べて、照会は、ユーザに、自分自身に興味を持つ情報を指定させなければならない。照会は、興味のある情報が、データベース言語とマッチする方法で指定された時に、もっぱら成功する。このマッチは、しばしば、照会用語の選択に歩み寄りを必要とする。照会は、ユーザに重荷を負わせるものとして認識でき、特に、ユーザが訓練を受けていなければ、そうであると認識できる。また、照会は、粗末な検索結果をもたらすこともあり得る。照会それ自体は、伝統的に、二つの形式のうち一つ、即ち、ブール検索(Boolean retrieval)に関する照会、又は蓋然論検索(probablistic retrieval)に関する照会に属するものとして分類される。
【0004】
ブール検索に関する照会は、最も確立した形式を持つ情報検索である。それは、ユーザに、興味のある情報及びデータベース言語の双方にマッチする言葉の適用な組み合わせを作成させる必要がある。ブール探索(Boolean searching)は、ユーザに、許容できる数の検索結果を得るために、有限数の用語だけを指定させる必要がある。最適のブール探索は、ユーザに、ブール機能語(operators)と用語の効率高い組み合わせとを熟知させる必要がある。それにも拘わらず、ユーザは、めったに、ブール機能語を明確に使用しない。
【0005】
蓋然論検索に関する照会は、ユーザに、広範囲の検索を提供する。検索結果は一般に、蓋然論に基づくアルゴリズムを使用する照会用語と比較され、それらがその照会用語にどの程度の類似性をもってマッチするかを評価される。データベースにおいて頻度がより少ない用語は、より識別力があると考えられ、マッチを予測する際により多くの重み(weight)が与えられる。ユーザは、自分自身で使用する多くの照会用語に束縛されることはない。なぜならば、検索結果の評価が、過度の検索結果の問題を緩和するからである。
【0006】
それにも拘わらず、問題は、蓋然論検索法を用いる電子データベースを照会する際に残存する。照会又はデータベースにおいて、つづりの間違えと解釈できないつづりとにより、関連のある情報が、検索処理中に見落とされるかもしれない可能性がある。同様に、照会又はデータベースにおいて、解釈できない情報のフォーマットは、関連のある情報が、見落とされるかもしれない可能性がある。仮に、検索速度が重要である場合、多くの照会用語を指定することは、結果として、不満足な遅い照会応答になってしまう。同時に、仮に、ユーザが、探索結果を待たなければならない場合、ユーザは、挫折するかもしれない。なぜならば、そのデータベースは、他の探索に拘束されているからである。逆に言えば、ユーザは、速い探索が粗末な結果になることにより、挫折するかもしれない。
【0007】
【発明の概要】
1形態において、本発明は、データベースに索引を付ける方法を含む。データベースのレコードは、入力される。各レコードは、パターン動作言語を使用して、レコード・トークンに解剖される。そのレコードに対する索引は、各レコードに対するそのレコード・トークンから生成される。
【0008】
1実施形態において、解剖することは、各レコードをオリジナル・トークンに変換することと、各オリジナル・トークンを特定することと、特定されたオリジナル・トークンをパターン動作言語に基づいてレコード・トークンに変換することと、を含む。関連する実施形態において、パターン動作言語は、レコード・トークンに関連するドメインに対して応答する。
【0009】
もう1つの実施形態において、索引生成は、各レコードに対するレコード・トークンからユニーク・レコード・トークンのリストを生成することと、各ユニーク・レコード・トークンに対するデータベース内の発生頻度を計算することと、索引トークンのテーブルを生成することと、を含む。索引トークンのテーブルは、各ユニーク索引トークンに対するデータベース内の発生頻度を含む。関連する実施形態において、索引トークンは、それぞれのレコード・トークンに対する音声等価物を含む。さらなる関連実施形態において、ユニーク・レコード・トークンのリストもまた、生成される。
【0010】
もう1つの形態において、本発明は、データベースに索引を付ける方法を含む。データベースのレコードは、入力され、各レコードは、レコード・トークンに解剖される。索引トークンは、それぞれのレコード・トークンから生成される。索引トークンは、レコード・トークンに対する音声等価物である。データベース内の発生頻度は、ユニーク索引トークンに対して計算される。索引トークンのテーブルは、生成される。索引トークンのテーブルは、ユニーク索引トークンに対する発生頻度を含む。
【0011】
1実施形態において、ユニーク・レコード・トークンもまた、生成される。関連する実施形態において、各レコードは、パターン動作言語を使用してレコードに解剖される。もう1つの関連実施形態において、解剖することは、各レコードをオリジナル・トークンに変換することと、各オリジナル・トークンを特定することと、特定されたオリジナル・トークンをパターン動作言語に基づいてレコード・トークンに変換することと、を含む。
【0012】
前述の形態のある実施形態において、データベースに対する索引は、各レコードに対するレコード・トークンから生成される。各レコード・トークンは、データベース内のドメインに関連し、パターン動作言語は、ドメインに応答し、発生頻度は、データベース内のドメインに関して計算され、ユニーク・レコード・トークンの索引は、ドメインによる発生頻度のリストを作る。
【0013】
1形態において、本発明は、データベースに索引を付ける装置に関連する。入力デバイスは、データベースのレコードを受け入れる。解剖部は、レコードをレコード・トークンに解剖し、索引部は、データベース内にレコード・トークンの索引を発生させる。
【0014】
1実施形態において、分解部は、トークン化部と、トークン特定部と、トークン変換部と、を含む。トークン化部は、レコードをオリジナル・トークンに変換する。トークン特定部は、各オリジナル・トークンを特定し、トークン変換部は、特定されたオリジナル・トークンをパターン動作言語に基づいてレコード・トークンに変換する。関連する実施形態において、パターン動作言語は、レコード・トークンに関連するドメインに応答する。
【0015】
もう1つの実施形態において、索引部は、トークン比較部と、頻度計算部と、テーブル発生部と、を含む。トークン比較部は、レコード・トークンからユニーク索引トークンのリストを生成する。頻度計算部は、各ユニーク索引トークンに対してデータベース内の発生頻度を計算する。テーブル発生部は、ユニーク索引トークンに対する発生頻度を含むテーブルを発生させる。関連する実施形態において、索引トークンは、それぞれのレコード・トークンに対する音声等価物であり、トークン比較部は、トークン発生部を介して解剖部と通信する。もう1つの実施形態において、レコード・トークン比較部もまた、ユニーク・レコード・トークンのリストを生成する。
【0016】
もう1つの形態において、本発明は、データベースに索引を付ける装置に関連する。入力デバイスは、データベースのレコードを受け入れ、解剖部は、レコードをレコード・トークンに解剖する。トークン発生部は、それぞれのレコード・トークンから索引トークンを発生させる。索引トークンは、それぞれのレコード・トークンの音声等価物である。テーブル発生部は、頻度発生部により計算された、データベース内の索引トークンの発生頻度と、索引トークンを含むすべてのレコードに対するポインタとを含むテーブルを、各索引トークンに対して発生させる。
【0017】
1実施形態において、レコード・トークン比較部は、各レコードに対するレコード・トークンからユニーク・レコード・トークンのリストを生成する。関連する実施形態において、テーブル生成部は、ユニーク索引トークンに対応する索引トークンを含むデータベース内の各レコードに対するポインタを含むテーブルを発生させる。もう1つの関連実施形態において、解剖部と通信するレコード・トークン比較部はまた、ユニーク・レコード・トークンのリストを生成する。
【0018】
更なる関連実施形態において、解剖部は、パターン動作言語を使用して各レコードを解剖する。このような、1実施形態において、解剖部はさらに、トークン化部と、トークン特定部と、トークン変換部と、を含む。トークン変換部は、レコードをオリジナル・トークンに変換する。トークン特定部は、各オリジナル・トークンを特定し、トークン変換部は、特定されたオリジナル・トークンをパターン動作言語に基づいてレコードトークンに変換する。
【0019】
ある実施形態において、オリジナル・トークンと、それぞれのレコード・トークンと、それぞれの索引トークンのすべてとは、データベース内の同じドメインに関連し、パターン認識は、トークンに関連するドメインに応答し、索引トークンに対する発生頻度は、ドメインによって計算される。1実施形態において、テーブル発生部は、ユニーク索引トークンのための発生頻度と、対応するレコード・トークンを含むデータベース内の各レコードに対するポインタと、を含むテーブルを、発生させる。
【0020】
1形態において、本発明は、データベースに照会する方法に関連する。照会は、入力され、パターン動作言語を用いて照会トークンに解剖される。探索トークンは、照会トークンから発生する。探索トークンは、データベース内のレコードにアクセスするために索引テーブル上を調べている。
【0021】
1実施形態において、解剖することは、照会をオリジナル・トークンに変換することと、各オリジナル・トークンを特定することと、特定されたオリジナル・トークンをパターン動作言語に基づいて照会トークンに変換することと、を含む。関連する実施形態において、オリジナル・トークンと、結果として発生する照会トークンとは、データベース内の同じドメインに関連している。さらなる関連実施形態において、パターン動作言語は、トークンに関連するドメインに応答する。
【0022】
更なる異なる関連実施形態において、探索トークンは、照会トークンから発生する。探索トークンは、それぞれの照会に関連するデータベース内のドメインに関連している。
【0023】
もう1つの形態において、本発明は、データベースに照会する方法に関連する。照会は、入力され、照会トークンに解剖される。探索トークンは、照会トークンから発生する。探索トークン発生部は、情報理論アルゴリズムに基づいて照会トークンに類似するトークンのためにユニーク・レコード・トークンのリストをチェックする。それはまた、照会トークン及び類似トークンを探索トークンに翻訳することを含んでいる。探索トークンは、照会トークン又は類似トークンに対する音声等価物である。探索トークンは、データベース内のレコードにアクセスするために索引テーブル上で調べられる。
【0024】
1実施形態において、探索トークンは、それぞれの照会トークンとしてデータベース内の同じドメインに関連している。関連する実施形態において、解剖は、パターン動作言語を使用して実行される。更なる関連実施形態において、解剖することは、照会をオリジナル・トークンに変換することと、各オリジナル・トークンを特定することと、特定されたオリジナル・トークンをパターン動作言語をに基づいて照会トークンに変換することと、を含む。
【0025】
1形態において、本発明は、データベースに照会する装置に関連する。照会入力デバイスは、入力として照会を受け入れる。解剖部は、その入力をパターン動作言語を使用して照会トークンに解剖する。発生部は、照会トークンから探索トークンを発生させる。データベースアクセス部は、探索トークンに応じてデータベース内のレコードにアクセスする。
【0026】
1実施形態において、解剖部は、トークン化部と、特定部と、変換部と、を含む。トークン化部は、入力からオリジナル・トークンを発生させ、特定部は、それらの各々を特定する。変換部は、特定されたオリジナル・トークンをパターン動作言語に基づいて照会トークンに変換する。関連する実施形態において、オリジナル・トークンは、それぞれの照会トークンとしてデータベース内の同じドメインと探索トークンとに関連している。もう1つの関連実施形態において。トークンは、データベース内の同じドメインに関連し、パターン動作言語は、それらに関連するドメインに応答する。
【0027】
もう1つの形態において、本発明は、データベースに照会する装置に関連する。照会入力デバイスは、入力を受け入れ、解剖部は、それを照会トークンに解剖する。発生部は、照会トークンから探索トークンを発生させる。発生部は、情報理論アルゴリズムに基づいて照会トークンに類似するものとして適格のあるトークンを追加する照会拡張部を含む。これらは、類似トークンである。発生部はまた、各照会トークン及び類似トークンを音声等価物たる探索トークンに翻訳する翻訳部を含む。データベースアクセス部は、探索トークンを用いてデータベース内のレコードに対応するポインタを見つけ出す。
【0028】
1実施形態において、各照会トークンと、それぞれの類似トークンと、それぞれの探索トークンとは、データベース内の同じドメインに関連している。もう1つの実施形態において、解剖部は、パターン動作言語を使用して解剖する。関連実施形態において、解剖部は、トークン化部と、特定部と、変換部と、を含む。
【0029】
1形態において、本発明は、データベース内のデータにアクセスする方法に関連する。トークンは、探索されるべき第1のトークンとして組から選択される。1組のレコードは、選択されたトークンに応じてデータベースから検索される。照会に対する適切さの見込みは、その組の中の各レコードに対して決定される。1組のレコードは、照会に対する適切さの見込みによって順序づけられる。組に対する最も高い照会の適性さの見込みは、継続閾値と比較される。仮に、閾値を超える場合、探索は、終了させられ、1組のレコードは、出力される。仮に、そうでない場合、異なるトークンは、新たな探索のために選択される。
【0030】
1実施形態において、照会に対する適切さの見込みは、レコード・リンケージ理論に基づいて決定される。関連する実施形態において、1組のレコードは、1よりも多いレコードから構成され、出力されたレコードは、照会の適切さの見込みによって順序づけられる。
【0031】
もう1つの実施形態において、データベース内の発生頻度は、各トークンに対して見極められ、トークンは、発生頻度によって順序づけられ、もっとも低い発生頻度を有するトークンは、第1の探索トークンとして選択される。仮に、継続閾値を超えない場合、次に最も低いトークンを持つトークンは、次の探索トークンとして選択される。関連する実施形態において、発生頻度は、データベース内のドメインに関し、トークンは、ドメインにそれぞれ関連している。このような実施形態において、トークンは、順序づけられ、関連するドメイン内において最も低い発生頻度を有するトークンは、第1に選択されたトークンである。関連する実施形態において、照会に対する適切さの見込みは、レコード・リンケージ理論に基づいて各レコードに対して決定される。更なる関連実施形態において、仮に、検索されたレコードのバッファがオーバーフローする場合、バッファは、消去され、新たな探索は、すべてのトークンを含むレコードに対して始められる。
【0032】
もう1つの形態において、本発明は、データベース内のデータにアクセスするための装置に関連する。データベースアクセス部は、トークン選択部により第1のトークンとして探索されるべくトークンとして選択されたトークンに応じて、データベースから1組のレコードを検索する。適切さ決定部は、組の中の各レコード又は複数のレコードに対して照会の適切さの見込みを決定する。適切さ比較部は、適切さの見込みによって組の中の各レコードを順序づけ、閾値比較部は、継続閾値と最も高い適性さの見込みとを比較する。仮に、継続閾値を超える場合、適切さ比較部は、探索を終了する。仮に、そうでない場合、適切さ比較部は、選択されたトークンを排除し、トークン選択部に他のトークンを選択させる。出力デバイスは、閾値比較部が探索を終了した時に、1組のレコードを返す。
【0033】
1実施形態において、照会に対する適切さの見込みは、レコード・リンケージ理論に基づいて決定される。関連する実施形態において、データベースアクセス部は、1つよりも多いレコードを検索し、出力デバイスは、照会の適切さの見込みによっって順序づけられたレコードを返す。
【0034】
もう1つの実施形態において、頻度比較部は、各トークンに対してデータベース内の発生頻度を見極め、発生頻度によってトークンを順序づける。トークン選択部は、探索されるべき第1のトークンとして、最も低い発生頻度を有するトークンを選択する。関連する実施形態において、頻度比較部は、トークンに関連するデータベース内のドメイン内における発生頻度を見極め、第1のトークンとして、関連するドメイン内で最も低い発生頻度を有するトークンを選択する。もう1つの関連実施形態において、適切さ決定部は、レコード・リンケージ理論に基づいて照会の適正さの見込みを決定する。更なる関連実施形態において、バッファ・オーバーフロー阻止部は、それがオーバー・フローした時にバッファを消去し、オーバー・フロー信号をトークン選択部に送信する。データベースアクセス部は、その後、すべてのトークンを含むデータベースから1組のレコードを検索する。
【0035】
【発明の実施の形態】
要約すると、本発明は、図1に示すような電子データベースに対する情報検索処理に関連する。この情報検索処理は、この処理による照会が、データベース内の現存する問い合わせデータにアクセスするために使用される処理である。本発明において、蓋然論は、ユーザの照会に従ってデータベース内のレコードを選択し、それらを検索するために用いられる。情報検索処理は、一般に、図1に示す3つのステップに分離することができる:問い合わせデータに索引を付けるステップと、照会を処理するステップと、問い合わせデータにアクセスするステップ。情報検索処理のうち最後の2つのステップは、探索段階と考えることもできる。
【0036】
データベースは、一般に、多数のレコードを含み、それらのぞれぞれを、レコード番号によって問い合わせることができる。各レコードは、一般に、数個のドメインを含んでいる。同様に、各ドメインは、数個のフィールドを含んでいる。各フィールドはさらに、自由な形式のテキストを含むことができる。例えば、国内の収入サービス・データベースは、各納税者毎に対して分離したレコードを含むことができる。納税者レコードは、番号をつけられてもよいし、また、納税者の自宅及び勤務先の住所に対して分離したドメインを含んでもよい。各アドレスドメインは、ストリート・フィールドと、タウン・フィールドと、郵便番号フィールドとを含むこともできる。ストリート・フィールドは、例えば、「10910 ウェイ・スルゥ・ザ・ウッズ」、「71 カミノ・デ・グラシカ」のような自由な形式のテキストを受け入れてもよい。データベースは、一般に、すべてのフィールド又はドメインが情報を含んでいることを要求するものではない。例えば、自由契約の写真家として働く納税者は、勤務先の住所を有していなくともよく、そのため、納税者の勤務先住所ドメインは、いかなるデータをも含んでいない。
【0037】
他のデータベース配置が可能であり、本発明の情報検索処理は、それらの状況に用意に適用することができる。それにも拘わらず、本出願の目的に鑑み、データベース内の問い合わせデータは、多数のレコードを含み、各レコードが、多数のドメインを含み、各ドメインが、1つ又はそれよりも多いフィールドを含み、各フィールドが、自由な形式のテキストを含む、と想定されている。問い合わせデータの配置が想定されているとともに、本発明は、フィールドに常駐する自由形式テキストで動作する。
【0038】
要約すると、図1のブロック図に示すように、情報検索処理における第1のステップは、問い合わせデータに索引を付ける(ステップ10)。問い合わせデータに索引を付けることは、情報検索処理における探索段階に対する問い合わせデータの準備と考えることができる。図1Aは、本発明の1実施形態に係る、索引処理中におけるレコードの進展を表す。索引が始まると、各レコード44の要素42は、1組のレコード・トークン(TRn)46に解剖される。いくらかの実施形態における解剖処理は、レコードのある部分を除去し、そのレコードの残りの部分を標準化する。図1Aに示す実施の形態において、索引トークン(TIn)62は、レコード・トークン(TRn)46から生成される。
【0039】
索引が終了すると、索引トークン(TIn)62及びレコード・トークン(TRn)46は、その後の探索を容易にするために、分析されることとなる。1実施形態において、問い合わせデータに含まれるユニーク・レコード・トークン(TRn)46のリストは、生成される。1実施形態において、ユニーク索引トークン(TIn)62のテーブル96は、生成される。関連した実施の形態において、テーブル96は、各ユニーク索引トークン(TIn)62に対するデータベース内の発生頻度(νn)を、含む。他の関連した実施の形態において、テーブル96は、トークンを含む問い合わせデータ内のレコードに対するポインタ94を、含む。図1Aに示す実施形態において、利用可能な索引情報のすべてを含む、包括的な1テーブルが存在する。他の実施形態において、利用可能な索引情報の一部を含む、多数のテーブルが存在する。
【0040】
図1に示す情報検索処理における第2のステップは、照会の処理である(ステップ20)。照会を処理することは、情報検索処理段階にアクセスする情報の中で使用するための照会の準備である、と考えることができる。図1Bは、本発明の1実施形態に係る、照会処理中における照会54の進展を表す。照会54の要素52は、1組の照会トークン(TQn)56に解剖される。図1Bに示す実施の形態において、解剖処理は、照会54のある部分を除去し、その照会の残りの部分を標準化する。1実施形態において、情報理論アルゴリズムに基づき照会トークン(TQn)56と類似するとして適格となるレコード・トークン(TRn)46のリストからの何れのトークンも、1組の照会トークンに追加される。1実施形態において、問い合わせデータ内のレコードにアクセスするために使用できる探索トークン(TSn)72は、照会トークン(TQn)56と類似トークンとから生成される。ある実施形態において、照会処理は、問い合わせデータ内におけるレコード処理に対応する。
【0041】
図1に示す情報検索処理における第3のステップは、問い合わせデータへのアクセスである(ステップ30)。問い合わせデータにアクセスすることは、問い合わせデータ及び照会の準備の頂点である。図1Cは、本発明の実施形態に係るアクセス処理を表す。1実施形態において、蓋然論探索モデルと調和して、探索トークン(TSn)72は、探索トークンの選択度に基づき1組の探索トークンから選択される。探索トークン(TSn)72を含む問い合わせデータからのレコード44は、トークン・テーブル96を使用して検索される。1実施形態において、重みは、ユーザ照会54に適切であるという見込みを表す各レコードから計算される。関連した実施の形態において、重み計算は、レコード・リンケージ理論に基づく。1実施形態において、1組の検索されたレコードに対する最大の重みは、探索を続行すべきか、或いは終了すべきかを決める閾値と比較される。1実施形態において、検索されたレコードは、順序づけられてユーザに返される。ある実施形態において、各レコードの重みは、単独で、又はレコードと関連づけて、ユーザに返される。情報検索処理の最終は、各レコードの照会に対する適切さを評価するために、リスト又はレコードを、及び、ある実施形態においては、重みを有するユーザである。
【0042】
図2を参照する。図2は、本発明の実施の形態に係る、問い合わせデータに索引を付ける処理の詳細なブロック図を示す。第1のステップは、問い合わせデータの1つのレコード44を解剖する(ステップ40)。レコードをトークンへと解剖することは、レコード内のデータを分離して1組のトークンにすることを含む。ある実施形態において、問い合わせデータの開発者は、1単位の文字を定義し、それは、レコードの内容を分離してトークンにするための基礎として使用されることとなる。このような、ある実施形態において、これらの開発者が定義した文字は、単独で使用される。このような、他の実施形態において、これらの開発者が定義した文字は、分離のための基礎としてのデフォルトの文字とともに、使用される。他の実施形態において、開発者は、デフォルトの文字が分離のための単独の基礎として使用されるようにしておく。1群の文字は、分離のための基礎として使用されてもよい。ある実施形態において、分離文字自身が、トークンとなる。
【0043】
例えば、「big;bad.wolf and redriding hood」(「大きい;悪い.狼と赤ずきん」)を含むレコードは、「<big>;<bad>.<wolf and redriding hood>」となり、ここで、セミコロンとピリオドは、1単位の分離文字として定義されており、「<「and」>」は、トークン境界を示す。同様に、「big;bad.wolf and redriding hood」を含むレコードは、「<big;bad.wolf><and><redriding><hood>」となり、ここで、スペースは、1単位の分離文字として定義されており、「<「and」>」は、再びトークン境界を示す。他の実施形態において、分離文字は、分離処理において除去される。ある実施形態において、異なる文字は、異なるフィールド又はドメインにおける分離のための基礎として使用される。
【0044】
ある実施形態において、レコードを解剖することは、あるトークンを除去することを含む。ある実施形態において、開発者は、1組のトークンを定義し、それは、レコードの内容を分離してトークンにした後、除去されることとなる。1実施形態において、開発者が定義したトークンは、除去される単独のトークンである。もう1つの実施形態において、開発者が定義したトークンは、デフォルトのトークンとともに、除去される。他の実施形態にいて、開発者は、単に、デフォルトのトークンを除去されるようにする。除去されるトークンは、単一の文字からなる必要がない。例えば、「<big><;><bad><.><wolf and redriding hood>」は、「<big><bad><wolf and redriding hood>」となり、ここで、セミコロンとピリオドは、除去されるトークンとして定義されている。ある実施形態において、開発者は、異なるトークンを定義し、それは、異なるフィールド又はドメインにおいて除去されることとなる。
【0045】
ある実施形態において、レコードを解剖することは、パターン用の分離処理に起因する1組のトークンを検査することと、認識されたパターンにおける1つ又はそれよりも多いトークンに従うこととを含む。このような実施形態において、各トークンの属性は、一旦レコードがトークンに分離されると、決定される。1実施形態において、属性は、種類と、長さと、値と、省略と、半文字列とを含む。他の実施形態において、追加属性が、決定される。更なる他の実施形態において、少数の属性が、決定される。何れの実施形態において、トークンのある属性を決めることは、トークンの他の属性を決定する要件を無効にするかもしれない。種類の属性を用いる1実施形態において、種類は、数字と、アルファベットと、1又はそれより多い文字が後に続く先頭の数字と、1又はそれより多い数字が後に続く先頭のアルファベットと、先の2つの種類の何れにも該当しない数字と文字との混合を含む複合混合と、一般には遭遇しない特別なキャラクターを含む特別と、を含む。種類の属性を用いるもう1つの実施形態において、他の種類が、決定される。1実施形態において、アルファベットの種類は、敏感なケースである。ある実施形態において、付加的な開発者が定義した種類は、デフォルトの種類と結合して使用される。他の実施形態において、開発者が定義した種類は、デフォルトの種類を除外して使用される。例えば、1実施形態において、トークン<aBcdef>は、6文字の長さで、かつ「aBcdef」の値で、アルファベットの種類のトークンの属性を持ち、ここで、アルファベットのトークンは、敏感である。
【0046】
トークンの認識パターンをいくつかの方法で修正することを含む解剖が行われる実施形態において、パターンは、可能なトークン属性に基づく認識のために定義されなければならない。このような、ある実施形態において、パターンは、特定のドメイン内で発生する条件のみで動作するように定義される。このような、他の実施形態において、パターンは、1組のドメイン内の何れかで発生する条件で動作するように定義される。パターン・マッチングは、最初のトークンで始まり、一度に1つのトークンずつ行われる。1つのレコードに対してマルチ・パターン・マッチであってもよい。パターンは、トークン、トークンの一部、又は1組のトークンの何れの属性によって定義されてもよい。1実施形態において、パターンは、単一のトークンの属性によって定義される。もう1つの実施形態において、パターンは、1組のトークンの属性によって定義される。例えば、1実施形態において、パターンは、トークンの長さが10のよりも短く、トークンの最初の4文字が「ANTI」の半文字列で、かつトークン中の発生している場所を拘束しない「CS」の半文字列で、定義されている。実施例において、<ANTICS>及び<ANTI−CSAR>のトークンが、動作に対して認識されるであろう。対照的に、その実施例において、<ANTIPATHY>のトークンは、認識されないであろう。なぜならば、第2の半文字列の拘束に出会わないからである。また、<ANTIPOLITICS>のトークンも、認識されないであろう。なぜならば、文字長の拘束に出会わないからである。
【0047】
トークンの認識パターンをいくつかの方法で修正することを含む解剖が行われる実施形態において、多くの動作は、パターンを修正するために行われる。1実施形態において、認識されるパターンに応じて行われる動作は、パターンの属性の1つを変更することである。もう1つの実施形態において、認識されるパターンに応じて行われる動作は、パターンの一部分を連結することである。更なるもう1つの実施形態において、認識されるパターンに応じて行われる動作は、バッグする情報をプリントすることである。他の実施形態において、他の動作が、行われる。ある実施形態は、1つのトークンの1つの半文字列に関して1つの動作を行う。ある実施形態は、1つの認識されたパターンに応じて多くの動作を行う。例えば、1実施形態において、コマンド「SET the value of <token> to (1:2) <token>」は、アルファベットの種類のトークンの長さが7で、かつ最初の2文字が「EX」の半文字列でのパターン認識を仕上げるために定義される。実施例において、<EXAMPLE>のトークンが、パターンにフィットするものとして認識され、コマンドが実行された結果、トークンの値が、オリジナルのトークンの最初の2文字に、又は「EX」に変化する。他の実施の形態において、通常、探索に有益ではない単語、例えば「at」、「by」、「on」などのノイズ単語の値は、0に設定され、その結果、それらは、ユニーク索引トークンのリストから排除される。図1Aに示すように、解剖することは、データベース・レコード44をレコード・トークン(TRn)46に変換する。
【0048】
図2に示す問い合わせデータに索引をつける処理における、第2のステップは、ユニーク・レコード・トークンを見極めることである(ステップ50)。ユニーク・レコード・トークンを見極めることは、ユニーク・レコード・トークンのリストが生成されるようになる。このようなリストは、データベースの用語辞書として記述されてもよい。1実施形態において、あるフィールドは、リストへ寄与することから除外される。もう1つの実施形態において、あるドメインは、リストへ寄与することから除外される。1実施形態において、トークンは、それらの種類に基づくユニーク・トークンのリストへ寄与することから除外される。もう1つの実施形態において、トークンは、それらの種類及びもう1つの属性に基づくユニーク・トークンのリストへ寄与することから除外される。ある実施形態において、排除された種類又は他の属性は、ドメインに関して指定される。ある実施形態において、排除された種類又は他の属性は、全体としてレコードに関して指定される。例えば、1実施形態において、開発者は、すべての数字のトークンで、かつ5文字以上のトークンを、ユニーク・トークンのリストから除外する。もう1つの実施形態において、ステップ50は、スキップされる。更なるもう1つの実施形態において、ステップ50は、図2に示す問い合わせデータに索引をつける処理の後、行われる。
【0049】
図2に示す問い合わせデータに索引をつける処理における、第3のステップは、レコード・トークン(TRn)46から索引トークン(TIn)62を生成することである(ステップ60)。また、ステップ60は、図1Aに示されている。ある実施形態において、索引トークンは、レコード・トークンそれ自体である。前述の実施形態において、ステップ70は、ステップ50の複製物である。他の実施形態において、図1Aに示すように、索引トークン(TIn)62は、レコード・トークン(TRn)の音声等価物である。これらの実施形態において、索引トークンは、一般に、レコード・トークンを音声言語に翻訳することによって生成される。このような、1実施形態において、音声言語は、NYSIISである。このような、もう1つの実施形態において、音声言語は、SOUNDEXである。このような、更なる他の実施形態において、音声等価は、別の音声言語又はその変形に基づく。1実施形態において、多数の組の索引トークンがあり、各々が、異なる音声言語又はその変形に基づいている。1実施形態において、アルファベットの種類のレコード・トークンのみが、翻訳され、他の種類のレコード・トークンは、索引トークンを生成するために使用されることはない。もう1つの実施形態において、アルファベットの種類及び他の種類のレコード・トークンは、索引トークンを生成するが、レコード・トークンのアルファベットだけが、翻訳されて索引トークンになる。
【0050】
図2に示す問い合わせデータに索引をつける処理における、第4のステップは、ユニーク索引トークンの見極めることである(ステップ70)。ステップ70は、ステップ50と、多く類似している。ユニーク索引トークンを見極めることは、ユニーク索引トークンのリストが生成されるようになる。このようなリストは、索引用語の辞書として記述されてもよい。1実施形態において、あるフィールドは、リストへ寄与することから除外される。もう1つの実施形態において、あるドメインは、リストへ寄与することから除外される。1実施形態において、トークンは、その種類に基づくユニーク・トークンのリストへ寄与することから除外される。もう1つの実施形態において、トークンは、その種類及びもう1つの属性に基づくユニーク・トークンのリストへ寄与することから除外される。ある実施形態において、排除された種類及び他の属性は、ドメインに関して指定される。ある実施形態において、排除された種類及び他の属性は、全体としてレコードに関して指定される。例えば、1実施形態において、開発者は、すべてのアルファベットのトークンで、かつ5文字以上のトークンを、ユニーク・トークンのリストから除外する。もう1つの実施形態において、ステップ70は、スキップされる。更なるもう1つの実施形態において、ステップ70は、ステップ80の後に行われる。もう1つの実施形態において、ステップ70は、ステップ80の一部として行われる。
【0051】
図2に示す問い合わせデータに索引をつける処理における、第5のステップは、追加的なレコードをチェックすることである(ステップ80)。このステップは、単に、索引トークンの発生頻度を計算することが適切な時に決定するチェック・ステップである。仮に、追加的なレコードがある場合、次のレコードは、このステップが繰り返される前に、処理されることになる。仮に、追加的なレコードがない場合、索引処理は、ステップ90へと継続する。1実施形態において、追加的なレコードのチェックは、単に、ファイル・フラッグのエンドを探すことを備える。
【0052】
図2に示す問い合わせデータに索引をつける処理における、第6のステップであって、最後のステップは、データベース内のトークンの発生頻度を計算することである(ステップ90)。発生頻度はまた、コレクション頻度又はドキュメント頻度としても知られている。トークンの独立性を仮定すると、低い発生頻度は、より選択的なトークンを示す。トークンは、必ずしも独立していない。例えば、特定の群のトークンを含む句(フレーズ)は、データベース内に繰り返して含まれていてもよい。それにも拘わらず、トークンの独立性は、現実におおよそ等しいと許容できる。発生頻度は、レコードに関連することができるトークンの何れのタイプに対しても計算されてもよい。例えば、1実施形態において、発生頻度は、索引トークンに対して計算される。発生頻度は、レコードに関連することができるトークンの多様な異なるタイプに対しても計算されてもよい。例えば、もう1つの実施形態において、発生頻度は、索引トークンとレコード・トークンとに対して計算される。
【0053】
1実施形態において、発生頻度は、全体としてデータベースに関する各ユニーク索引トークンに対して計算される。もう1つの実施形態において、発生頻度は、データベース内の各ドメインに関する各ユニーク索引トークンに対して計算される。計算を特定する他のレベルもまた、可能である。ある実施形態において、発生頻度は、ある各ユニーク索引トークンに対して計算されない。1実施形態において、このような索引トークンは、例えば「the」、「and」などのノイズ単語を含む。索引トークンそれぞれの発生頻度を計算している間に索引トークンのリストを生成することは、頻度計算をより効率的にさせる。
【0054】
発生頻度が計算された時に、データベース内にそれぞれの位置にあるトークンを含んでいるレコードに対するポインタ94を含むトークン・テーブル96を生成し、保存することは、効率的である。このテーブル96は、トークンを含んでいるレコードの重複的な探索が必要とされることを防ぐ。1実施形態において、図1Aに示すように、ポインタ94は、包括的なテーブル96に含まれている。もう1つの実施形態において、ポインタは、分離したテーブルに含まれており、それぞれのトークンに関連している。
【0055】
図3を参照する。図3は、1実施形態に係る、照会処理のブロック図を示す。図3に示す照会を処理する際における、第1のステップは、照会40を解剖することである(ステップ40)。照会解剖は、データベースからのレコードを解剖する(ステップ40)ために用いられた処理と同じ処理及びその変形を使用して実行されることができる。唯一の差は、レコード44を解剖することによりレコード・トークン(TRn)46になるのに対し、図1Bに示すように、照会54を解剖することにより照会トークン(TQn)56になることである。
【0056】
図3に図示される照会を処理する際における、第2のステップは、照会40を拡張することである(ステップ90)。ある実施形態において、照会は、類似するトークンを照会トークンに追加することにより、拡張される。このような、1実施形態において、類似するトークンは、ユニーク・レコード・トークンのリストから選択される。ユニーク・レコード・トークンのリストの中からどのトークンを選択して照会トークンに追加する際に、照会トークンと候補のレコード・トークンとの様々な比較が、考えられる。ここで、理解を容易にするために、ユニーク・レコード・トークンのリストは、データベースの用語辞書であると考えてもよい。同様に、照会トークンと候補のレコード・トークンとの様々な比較は、照会のつづりチェックであると考えられる。1実施形態において、以下の比較が、考えられる:ミスマッチ文字の数;転置の数;文字列の長さ。もう1つの実施形態において、上記比較のサブセットが、考えられる。更なるもう1つの実施形態において、他の比較は、指定される比較の代わりに、又は指定される比較に加えて、考えられる。
【0057】
ある実施形態において、ユニーク・レコード・トークンのリストからの見出し項目のトークンは、照会トークンとの比較のために使用される。他の実施形態において、ユニーク・レコード・トークンのリストからのより小さいサブセットのトークンは、比較のために使用される。例えば、このような、1実施形態において、照会トークンとして最初の2文字が同じであるレコード・トークンのサブセットは、独立した参照トークンとの比較のために使用される。実施例において、仮に、ユニーク・レコード・トークンのリストが、照会トークン<XENITH>として最初の2文字が同じであるレコード・トークンをまったく含まない場合、さらなる比較は、行われず、レコード・トークンは、照会トークン<XENITH>に対する1組の参照トークンに追加されない。候補のレコード・トークンを照会トークンに対して比較することによって照会を拡張する実施形態において、閾値は、どの候補レコード・トークンが1組の参照トークンに追加され、追加されないかを決定するように設定される。ある実施形態において、閾値は、照会トークンとの比較における候補レコード・トークンの類似性に基づいている。このような、1実施形態において、閾値は、候補のレコード・トークンを包含するために必要とされる類似性の最低値である。他の実施形態において、閾値は、照会トークンとの比較における候補レコード・トークンの非類似性に基づいている。このような、1実施形態において、閾値は、候補のレコード・トークンを除外するために必要とされる非類似性の最高値である。もう1つの実施形態において、閾値は、類似性と非類似性との結合である。
【0058】
類似性及び非類似性の様々な計算は、照会トークンと使用されたレコード・トークンとの比較に依存することが可能である。類似性は、以下のように計算してもよい。ここで、各Sは、重み因子であり、cは、参照トークン及び候補レコード・トークンの双方に共通する文字の数であり、dは、参照トークンの長さであり、rは、候補レコード・トークンの長さであり、trは、候補レコード・トークンに対して照会トークンを比較することによって見つけ出された文字の転置の数である。
(1) 類似性=(Scd*(c/d))+
(Srd*(c/r))+
(Str*((c−tr)/c))
重み因子Sに関して、Scdは、候補レコード・トークンに共通する文字からなる照会トークンにおける文字のパーセンテージに対する重み因子であり、Srdは、照会トークンに共通する文字からなる候補レコード・トークンにおける文字のパーセンテージに対する重み因子であり、Strは、転置されていない候補レコード・トークンと照会トークンとに共通する文字のパーセンテージに対する重み因子である。1実施形態において、同様な重み因子のすべては、値300に設定され、候補レコードは、それらの計算された類似性が最低値の類似性を超えた場合に、1組の照会トークンに追加される。
【0059】
非類似性は、以下のように計算してもよい。ここで、各Dは、重み因子であり、ucdは、候補レコード・トークン内にない参照トークン内の文字数であり、dは、参照トークンの長さであり、urdは、参照トークン内にない候補レコード・トークン内の文字数であり、rは、候補レコード・トークンの長さであり、trは、候補レコード・トークンに対して照会トークンを比較することによって見つけ出された文字の転置の数であり、cは、参照トークン及び候補レコード・トークンの双方に共通する文字の数である。
(2) 非類似性=(Dcd*(ucd/d))+
(Drd*(urd/r))+
(Dtr*(tr/c)
重み因子Dに関して、Dcdは、候補レコード・トークン内にない参照トークン内の文字のパーセンテージに対するペナルティ因子であり、Drdは、参照トークン内にない候補レコード・トークン内の文字のパーセンテージに対するペナルティ因子であり、Ptrは、転置されていない候補レコード・トークンと照会トークンとに共通する文字のパーセンテージに対する重み因子である。
【0060】
1実施形態において、照会は、照会トークン(TQn)56及び類似トークンから探索トークン(TSn)72を生成することによって、拡張される。探索トークンの生成は、レコード・トークンから索引トークンを生成(ステップ60)するために用いられた処理と同じ処理及びその変形を使用して実行されることができる。唯一の差は、レコード・トークン(TRn)46から索引トークン(TIn)62が生成されるのに対し、照会トークン(TQn)56から探索トークン(TSn)72が生成されることである。
【0061】
もう1つの実施形態において、図1Bに示されるように、照会は、単独で、照会トークン(TQn)56から探索トークン(TSn)72を生成することにより、拡張される。再び、探索トークンの生成は、レコード・トークンから索引トークンを生成(ステップ60)するために用いられた処理と同じ処理及びその変形を使用して実行されることができる。再び、唯一の差は、レコード・トークン(TRn)46から索引トークン(TIn)62が生成されるのに対し、照会トークン(TQn)56から探索トークン(TSn)72が生成されることである。
【0062】
図4を参照する。図4は、1実施形態に係る、問い合わせデータにアクセスする処理のブロック図を示す。図4に示す問い合わせデータにアクセスする際における、第1のステップは、第1の探索トークンを選択することである(ステップ100)。1実施形態において、第1の探索トークンは、探索トークンからランダムに選択される。もう1つの実施形態において、第1の探索トークンは、探索トークン内の一定の順序で選択される。ある実施形態において、第1の探索トークンは、もっとも選択的な探索トークンである。ある実施形態において、探索トークンは、選択性によって順序づけられる。このような、1実施形態において、選択性は、索引を付けられたデータベース・レコード・セット内における発生頻度によって決定される。このような、もう1つの実施形態において、選択性は、索引を付けられたデータベース・レコード・セットの範囲内で特定のドメイン内における発生頻度によって決定される。このような、もう1つの実施形態において、選択性は、索引を付けられたデータベース・レコード・セットの範囲内でドメイン中の特定のフィールド内における発生頻度によって決定される。1実施形態において、第1の探索トークンは、照会によって指定されたドメインに対応するドメインの中で最も選択的な探索トークンである。もう1つの実施形態において、最も選択的な探索トークンは、ユニーク索引トークンのテーブル内で報告されている発生頻度を比較することによって見極められる。
【0063】
図4に示す問い合わせデータにアクセスする際における、第2のステップは、問い合わせデータにアクセスすることである(ステップ110)。ある実施形態において、選択されたトークンに対するデータベース・レコード・セットの新たな探索が、開始される。他の実施形態において、一旦、第1の探索トークンが選択されると、選択されたトークンは、トークン・テーブル上で調べられる。このような、1実施形態において、図1Cに示すように、トークン・テーブル96は、直接的に、選択されたトークン(TS3)72を含むデータベース内のレコードに対する1組のポインタ94を返す。このような、もう1つの実施形態において、トークン・テーブル96は、間接的に、選択されたトークンを含むデータベース内のレコードに対する1組のポインタ94を返す。ポインタは、データベース内のレコードをアクセスするために使用されてもよい。
【0064】
図4に示す問い合わせデータにアクセスする際における、第3のステップは、適切さを計算することである(ステップ120)。ある実施形態において、アクセスされた各レコードは、照会に対する適切さの見込みを表す重みを計算することによって評価される。このような、ある実施形態において、重みは、レコード・トークンに対して照会トークンを比較することによって計算される。このような、もう一つの実施形態において、重みは、照会により指定されたドメイン内のレコード・トークンに対して照会トークンを比較することによって計算される。
【0065】
レコード・リンケージは、レコードを検査し、あるフィールドの結合にマッチする対のレコードの位置を突き止める処理である。レコード・リンケージ理論は、1対のレコードが互いにマッチする又は適切であると考えるための蓋然論の基礎である。本発明は、この理論を幾つかの実施形態に適用し、データベース・レコード・セットの範囲内で照会を個々のレコードにマッチする。照会は、組Aのレコードからのレコードとして定義される。照会にマッチするための候補である問い合わせデータからのレコードは、組Bのレコードからのレコードとして定義される。各対のレコードは、組Aから1つのレコード、実質的には照会と、組Bから1つのレコードとを含む。各対のレコードは、マッチする対Mの組の要素又はマッチしない対Uの組の要素の何れかである。
【0066】
レコード・リンケージ理論の下、マッチを見極めるフィールドの能力は、フィールドの内容の選択性とフィールドの内容の正確性とに依存する。選択性は、レコード間を識別するフィールドの内容の能力の尺度である。例えば、フィールドが氏である場合、トークン<Humperdinck>は、トークン<Smith>よりも、より一層選択的である。なぜならば、氏フィールドの中の<Humperdinck>よりも、<Smith>を含むレコードの方が、より一層多そうだからである。選択性uiは、対のレコードがマッチしない対Uの組の要素である時に、2つのレコードがフィールド内に同じ内容を有する確率として、定義される。これは、数学的に、以下のように表される:ui=P(フィールド_一致|ρ∈U)。
【0067】
正確さは、フィールド内のデータの信頼性の尺度である。例えば、より多く注意深く入力された又は入力後にチェックされたフィールド情報は、より少なく注意深く入力された又は入力後にチェックさないフィールド情報よりも、マッチした対に一致しそうである。正確性miは、対のレコードがマッチする対Mの組の要素である時に、2つのレコードがフィールド内に同じ内容を有する確率として、定義される。これは、ある条件βが与えられた時にαが正しい確率P(α|β)として、数学的に、以下のように表される:mi=P(フィールド_一致|ρ∈M)。
【0068】
これらの尺度は、問い合わせデータ内のレコードがユーザの照会に基づいてユーザに対して興味のあるという見込みを予測するために、数学的に、量を定められ、適用される。我々は、第1のレコードがA組のレコードからであり、第2のレコードがB組のレコードからである、対のレコードを考える。A及びBは、幾らかの共通フィールドを共有する。各対のレコードρは、マッチする対Mの組又は要素マッチしない対Uの組の要素である。各対のレコードρと双方の組のレコードiに共通する各ドメインとに対して、我々は、以下の量を定義する:一致重みWAは、選択性uiに対する正確さmiの比の対数である。
(3) WA=log2(mi/ui)
ある実施形態において、一致重みWAは、候補レコードがそれぞれのドメインi内の照会トークンに等しいトークンを含む時に、候補レコードの適切さの見込みに足される。他の実施形態において、一致重みWAは、候補レコードがそれぞれのフィールドi内の照会トークンに等しいトークンを含む時に、候補レコードの適切さの見込みに足される。他の実施形態において、iは、データの位置を指定する他のレベルを表す。
【0069】
不一致重みWDは、1引く選択性uiに対する1引く正確さmiの比の対数である。
(4) WD=log2((1−mi)/(1−ui))
ある実施形態において、不一致重みWDは、候補レコードがそれぞれのドメインi内の照会トークンに等しいトークンを含まない時に、候補レコードの適切さの見込みから引かれる。他の実施形態において、不一致重みWDは、候補レコードがそれぞれのフィールドi内の照会トークンに等しいトークンを含まない時に、候補レコードの適切さの見込みから引かれる。他の実施形態において、iは、データの位置を指定する他のレベルを表す。
【0070】
ある実施形態において、隣接重みは、仮に、候補レコードが1つよりも多い照会トークンに等しい1つよりも多いトークンを含み、且つ適切なトークンが互いにすぐ近くに隣接する場合、候補レコードの適切な重みの見込みに足される。ある実施形態において、半隣接重みは、仮に、候補レコードが1つよりも多い照会トークンに等しい1つよりも多いトークンを含み、且つ適切なトークンが互いに近くに位置する場合、候補レコードの適切な重みの見込みに足される。1実施形態において、半隣接重みは、仮に、探索トークンが間にある1つのトークンによって分離している場合、足される。他の実施形態において、半隣接重みは、仮に、探索トークンが間にある1つよりも多いトークンによって分離している場合、足される。1実施形態において、隣接及び半隣接重みは、適切な探索トークンの重み因子である。近さに対する様々な重みスキームが、可能である。1実施形態において、候補レコードの適正な見込みは、照会トークンに関する候補レコード内のすべてのレコード・トークンにおける一致重みWAと隣接重みと半隣接重みとを合計することによって計算される。一例を挙げれば、半隣接重みは、照会トークンに等しい候補レコード内のレコード・トークン間にある1つのトークンがある時のみ、足されるだけである。
【0071】
図4に示す問い合わせデータにアクセスする際における、第4のステップは、計算された適切さを閾値に比較することである(ステップ130)。ある実施形態において、アクセスされた各レコードの重みは、1つ又はそれよりも多い閾値と比較される。他の実施形態において、候補レコードは、適正な重みの見込みによって順序づけれられている。この結果、アクセスされたレコードの組に対する重みは、より効果的に、1つ又はそれよりも多い閾値と比較される。
【0072】
ある実施形態において、重みは、継続閾値と比較される。このような実施形態において、探索は、継続閾値を超えると終了する。あの時に、アクセスされたレコードのすべてが出力される。このような実施形態において、継続閾値を超えないと、異なる探索を誘発する(ステップ140)。前の探索の基礎として使用されたトークンは、利用可能な探索トークンの組から除去される。新たな探索における、第1のステップは、異なるトークンを選択して問い合わせデータにアクセスすることである。このような実施形態において、仮に、最も選択的なトークンが既にデータにアクセスするために使用されていた場合、2番目に最も選択的なトークンは、その続の探索に使用される。処理は、継続閾値を超えるか、又はすべての探索トークンがデータにアクセスするために使用されるまで、繰り返される。
【0073】
ある実施形態において、アクセスされたレコードの重みは、提示閾値と比較される。このような実施形態において、アクセスされたレコードの一部は、出力される。提示閾値を使用する実施形態において、出力されたレコードは、提示閾値を超える適正な重みの見込みを持つレコードに限定される。
【0074】
ある実施形態において、適正な重みの最も高い可能性のある見込みは、各照会に対して計算される。適正な重みの最も高い可能性のある見込みは、選択された重みスキームに依存する。ある実施形態において、開発者は、追加的なトークンが候補レコードの重みを減少させるように選択する。例えば、一致重みWAのみを使用する実施形態において、適正な重みの最も高い可能性のある見込みは、それぞれのドメイン内のどの照会トークンをも含んでいる場合の候補レコードが有するであろう重みである。また、例えば、一致重みWAと隣接重みとを使用する実施形態において、適正な重みの最も高い可能性のある見込みは、それぞれのドメイン内及び照会配置内のどの照会トークンをも含んでいる場合の候補レコードが有するであろう重みである。
【0075】
ある実施形態において、探索を終了するための基礎として用いられる継続閾値重みは、最も高い可能性の重みのパーセンテージである。他の実施形態において、継続閾値重みは、絶対的な重みである。ある実施形態において、探索においてアクセスされたレコードを提示する基準として用いられる提示閾値は、最も高い可能性の重みのパーセンテージである。他の実施形態において、提示閾値重みは、絶対的な重みである。
【0076】
ある実施形態において、アクセスされたレコードは、適切な重みの見込みによる出力に対して順序づけられる。他の実施形態において、アクセスされたレコードは、それらが検索された順序で出力される。更なる他の実施形態において、アクセスされたレコードは、他の順序で出力される。
【0077】
ある実施形態は、データベース内において、図4の実施形態に示されていないアクセス処理ステップを含む。このステップにおいてアクセスされた情報の量は、オーバーフロー閾値と比較される。このような実施形態において、仮に、オーバーフロー閾値を超えると、現行の探索は、終了する。メモリ又はバッファは、消去される。このような、1実施形態において、新たな探索は、誘発される。新たな探索は、ブールのANDと一緒に結び付いたすべての探索トークンに基づいている。仮に、オーバーフロー閾値が新たな探索を誘発した場合、継続閾値は、その後、無能力になる。別の方法で、新たな探索においてアクセスされたレコードは、通例の探索と同じように処理される。ある実施形態において、探索を終了し、異なる探索を誘発するための基礎として用いられるオーバーフロー閾値は、ソフトウエアの誤り又は利用可能なメモリ空間ないしバッファ空間に関する警告と同様である。
【0078】
最後に、1実施形態において、通例の探索に加えて、開発者は、各照会に対してブールのANDの実行と一緒に結び付いたすべての探索トークンに基づいて、新たな探索を選ぶ。
【0079】
本発明の実施の形態を述べたが、当業者にとって、ここに開示した概念を一体化し、本発明の精神及び範囲を離れることなく実施される他の実施形態は、明らかである。ここで述べた実施形態は、すべての点において、実例として考えられ、制限するものとして考えられていない。従って、本発明の範囲は、特許請求の範囲のみによって限定されるもものと解釈される。
【図面の簡単な説明】
【図1】
図1は、従来技術として知られている、情報検索処理の機能ブロック図である。
図1Aは、本発明の実施の形態に係る、索引処理中におけるレコードの進展図である。
図1Bは、本発明の実施の形態に係る、照会処理中における照会の進展図である。
図1Cは、本発明の実施の形態に係る、情報アクセス処理における探索トークンとレコードとの照会の相互作用を示す図である。
【図2】
本発明の実施の形態に係る、情報検索処理における情報索引部分の機能ブロック図である。
【図3】
本発明の実施の形態に係る、情報検索処理における照会処理部分の機能ブロック図である。
【図4】
本発明の実施の形態に係る、情報検索処理における情報アクセス部分の機能ブロック図である。
【発明の属する技術分野】
本発明は、概して、データベース情報の検索技術に関連する。特に、本発明は、照会の拡張を用いるレコード・リンケージ理論に基づいて、データベース情報を検索するものに関連する。
【0002】
【発明の背景】
区別は、常に明確に切り離されていないが、情報検索は、伝統的に、二つの形式のうち一つ、即ち、閲覧(browsing)又は照会(querying)に属するものとして分類される。閲覧は、一般に、照会よりも受動的である。閲覧は、ユーザに、簡単な機構(例えばメニュートピック)を介してデータベースに一部にアクセスさせ、次に、それを介して案内することにより、しばしば何段階かの情報検索システム案内を伴い、ユーザに、アクセスした情報を調査させる。ハイパーテキストは、一般に、情報検索への閲覧アプローチをサポートする。ユーザへの要求が少ないとはいえ、閲覧は、必ずしも、大きなデータベースから情報を検索する手法として最も効率の良い手法ではない。
【0003】
閲覧と比べて、照会は、ユーザに、自分自身に興味を持つ情報を指定させなければならない。照会は、興味のある情報が、データベース言語とマッチする方法で指定された時に、もっぱら成功する。このマッチは、しばしば、照会用語の選択に歩み寄りを必要とする。照会は、ユーザに重荷を負わせるものとして認識でき、特に、ユーザが訓練を受けていなければ、そうであると認識できる。また、照会は、粗末な検索結果をもたらすこともあり得る。照会それ自体は、伝統的に、二つの形式のうち一つ、即ち、ブール検索(Boolean retrieval)に関する照会、又は蓋然論検索(probablistic retrieval)に関する照会に属するものとして分類される。
【0004】
ブール検索に関する照会は、最も確立した形式を持つ情報検索である。それは、ユーザに、興味のある情報及びデータベース言語の双方にマッチする言葉の適用な組み合わせを作成させる必要がある。ブール探索(Boolean searching)は、ユーザに、許容できる数の検索結果を得るために、有限数の用語だけを指定させる必要がある。最適のブール探索は、ユーザに、ブール機能語(operators)と用語の効率高い組み合わせとを熟知させる必要がある。それにも拘わらず、ユーザは、めったに、ブール機能語を明確に使用しない。
【0005】
蓋然論検索に関する照会は、ユーザに、広範囲の検索を提供する。検索結果は一般に、蓋然論に基づくアルゴリズムを使用する照会用語と比較され、それらがその照会用語にどの程度の類似性をもってマッチするかを評価される。データベースにおいて頻度がより少ない用語は、より識別力があると考えられ、マッチを予測する際により多くの重み(weight)が与えられる。ユーザは、自分自身で使用する多くの照会用語に束縛されることはない。なぜならば、検索結果の評価が、過度の検索結果の問題を緩和するからである。
【0006】
それにも拘わらず、問題は、蓋然論検索法を用いる電子データベースを照会する際に残存する。照会又はデータベースにおいて、つづりの間違えと解釈できないつづりとにより、関連のある情報が、検索処理中に見落とされるかもしれない可能性がある。同様に、照会又はデータベースにおいて、解釈できない情報のフォーマットは、関連のある情報が、見落とされるかもしれない可能性がある。仮に、検索速度が重要である場合、多くの照会用語を指定することは、結果として、不満足な遅い照会応答になってしまう。同時に、仮に、ユーザが、探索結果を待たなければならない場合、ユーザは、挫折するかもしれない。なぜならば、そのデータベースは、他の探索に拘束されているからである。逆に言えば、ユーザは、速い探索が粗末な結果になることにより、挫折するかもしれない。
【0007】
【発明の概要】
1形態において、本発明は、データベースに索引を付ける方法を含む。データベースのレコードは、入力される。各レコードは、パターン動作言語を使用して、レコード・トークンに解剖される。そのレコードに対する索引は、各レコードに対するそのレコード・トークンから生成される。
【0008】
1実施形態において、解剖することは、各レコードをオリジナル・トークンに変換することと、各オリジナル・トークンを特定することと、特定されたオリジナル・トークンをパターン動作言語に基づいてレコード・トークンに変換することと、を含む。関連する実施形態において、パターン動作言語は、レコード・トークンに関連するドメインに対して応答する。
【0009】
もう1つの実施形態において、索引生成は、各レコードに対するレコード・トークンからユニーク・レコード・トークンのリストを生成することと、各ユニーク・レコード・トークンに対するデータベース内の発生頻度を計算することと、索引トークンのテーブルを生成することと、を含む。索引トークンのテーブルは、各ユニーク索引トークンに対するデータベース内の発生頻度を含む。関連する実施形態において、索引トークンは、それぞれのレコード・トークンに対する音声等価物を含む。さらなる関連実施形態において、ユニーク・レコード・トークンのリストもまた、生成される。
【0010】
もう1つの形態において、本発明は、データベースに索引を付ける方法を含む。データベースのレコードは、入力され、各レコードは、レコード・トークンに解剖される。索引トークンは、それぞれのレコード・トークンから生成される。索引トークンは、レコード・トークンに対する音声等価物である。データベース内の発生頻度は、ユニーク索引トークンに対して計算される。索引トークンのテーブルは、生成される。索引トークンのテーブルは、ユニーク索引トークンに対する発生頻度を含む。
【0011】
1実施形態において、ユニーク・レコード・トークンもまた、生成される。関連する実施形態において、各レコードは、パターン動作言語を使用してレコードに解剖される。もう1つの関連実施形態において、解剖することは、各レコードをオリジナル・トークンに変換することと、各オリジナル・トークンを特定することと、特定されたオリジナル・トークンをパターン動作言語に基づいてレコード・トークンに変換することと、を含む。
【0012】
前述の形態のある実施形態において、データベースに対する索引は、各レコードに対するレコード・トークンから生成される。各レコード・トークンは、データベース内のドメインに関連し、パターン動作言語は、ドメインに応答し、発生頻度は、データベース内のドメインに関して計算され、ユニーク・レコード・トークンの索引は、ドメインによる発生頻度のリストを作る。
【0013】
1形態において、本発明は、データベースに索引を付ける装置に関連する。入力デバイスは、データベースのレコードを受け入れる。解剖部は、レコードをレコード・トークンに解剖し、索引部は、データベース内にレコード・トークンの索引を発生させる。
【0014】
1実施形態において、分解部は、トークン化部と、トークン特定部と、トークン変換部と、を含む。トークン化部は、レコードをオリジナル・トークンに変換する。トークン特定部は、各オリジナル・トークンを特定し、トークン変換部は、特定されたオリジナル・トークンをパターン動作言語に基づいてレコード・トークンに変換する。関連する実施形態において、パターン動作言語は、レコード・トークンに関連するドメインに応答する。
【0015】
もう1つの実施形態において、索引部は、トークン比較部と、頻度計算部と、テーブル発生部と、を含む。トークン比較部は、レコード・トークンからユニーク索引トークンのリストを生成する。頻度計算部は、各ユニーク索引トークンに対してデータベース内の発生頻度を計算する。テーブル発生部は、ユニーク索引トークンに対する発生頻度を含むテーブルを発生させる。関連する実施形態において、索引トークンは、それぞれのレコード・トークンに対する音声等価物であり、トークン比較部は、トークン発生部を介して解剖部と通信する。もう1つの実施形態において、レコード・トークン比較部もまた、ユニーク・レコード・トークンのリストを生成する。
【0016】
もう1つの形態において、本発明は、データベースに索引を付ける装置に関連する。入力デバイスは、データベースのレコードを受け入れ、解剖部は、レコードをレコード・トークンに解剖する。トークン発生部は、それぞれのレコード・トークンから索引トークンを発生させる。索引トークンは、それぞれのレコード・トークンの音声等価物である。テーブル発生部は、頻度発生部により計算された、データベース内の索引トークンの発生頻度と、索引トークンを含むすべてのレコードに対するポインタとを含むテーブルを、各索引トークンに対して発生させる。
【0017】
1実施形態において、レコード・トークン比較部は、各レコードに対するレコード・トークンからユニーク・レコード・トークンのリストを生成する。関連する実施形態において、テーブル生成部は、ユニーク索引トークンに対応する索引トークンを含むデータベース内の各レコードに対するポインタを含むテーブルを発生させる。もう1つの関連実施形態において、解剖部と通信するレコード・トークン比較部はまた、ユニーク・レコード・トークンのリストを生成する。
【0018】
更なる関連実施形態において、解剖部は、パターン動作言語を使用して各レコードを解剖する。このような、1実施形態において、解剖部はさらに、トークン化部と、トークン特定部と、トークン変換部と、を含む。トークン変換部は、レコードをオリジナル・トークンに変換する。トークン特定部は、各オリジナル・トークンを特定し、トークン変換部は、特定されたオリジナル・トークンをパターン動作言語に基づいてレコードトークンに変換する。
【0019】
ある実施形態において、オリジナル・トークンと、それぞれのレコード・トークンと、それぞれの索引トークンのすべてとは、データベース内の同じドメインに関連し、パターン認識は、トークンに関連するドメインに応答し、索引トークンに対する発生頻度は、ドメインによって計算される。1実施形態において、テーブル発生部は、ユニーク索引トークンのための発生頻度と、対応するレコード・トークンを含むデータベース内の各レコードに対するポインタと、を含むテーブルを、発生させる。
【0020】
1形態において、本発明は、データベースに照会する方法に関連する。照会は、入力され、パターン動作言語を用いて照会トークンに解剖される。探索トークンは、照会トークンから発生する。探索トークンは、データベース内のレコードにアクセスするために索引テーブル上を調べている。
【0021】
1実施形態において、解剖することは、照会をオリジナル・トークンに変換することと、各オリジナル・トークンを特定することと、特定されたオリジナル・トークンをパターン動作言語に基づいて照会トークンに変換することと、を含む。関連する実施形態において、オリジナル・トークンと、結果として発生する照会トークンとは、データベース内の同じドメインに関連している。さらなる関連実施形態において、パターン動作言語は、トークンに関連するドメインに応答する。
【0022】
更なる異なる関連実施形態において、探索トークンは、照会トークンから発生する。探索トークンは、それぞれの照会に関連するデータベース内のドメインに関連している。
【0023】
もう1つの形態において、本発明は、データベースに照会する方法に関連する。照会は、入力され、照会トークンに解剖される。探索トークンは、照会トークンから発生する。探索トークン発生部は、情報理論アルゴリズムに基づいて照会トークンに類似するトークンのためにユニーク・レコード・トークンのリストをチェックする。それはまた、照会トークン及び類似トークンを探索トークンに翻訳することを含んでいる。探索トークンは、照会トークン又は類似トークンに対する音声等価物である。探索トークンは、データベース内のレコードにアクセスするために索引テーブル上で調べられる。
【0024】
1実施形態において、探索トークンは、それぞれの照会トークンとしてデータベース内の同じドメインに関連している。関連する実施形態において、解剖は、パターン動作言語を使用して実行される。更なる関連実施形態において、解剖することは、照会をオリジナル・トークンに変換することと、各オリジナル・トークンを特定することと、特定されたオリジナル・トークンをパターン動作言語をに基づいて照会トークンに変換することと、を含む。
【0025】
1形態において、本発明は、データベースに照会する装置に関連する。照会入力デバイスは、入力として照会を受け入れる。解剖部は、その入力をパターン動作言語を使用して照会トークンに解剖する。発生部は、照会トークンから探索トークンを発生させる。データベースアクセス部は、探索トークンに応じてデータベース内のレコードにアクセスする。
【0026】
1実施形態において、解剖部は、トークン化部と、特定部と、変換部と、を含む。トークン化部は、入力からオリジナル・トークンを発生させ、特定部は、それらの各々を特定する。変換部は、特定されたオリジナル・トークンをパターン動作言語に基づいて照会トークンに変換する。関連する実施形態において、オリジナル・トークンは、それぞれの照会トークンとしてデータベース内の同じドメインと探索トークンとに関連している。もう1つの関連実施形態において。トークンは、データベース内の同じドメインに関連し、パターン動作言語は、それらに関連するドメインに応答する。
【0027】
もう1つの形態において、本発明は、データベースに照会する装置に関連する。照会入力デバイスは、入力を受け入れ、解剖部は、それを照会トークンに解剖する。発生部は、照会トークンから探索トークンを発生させる。発生部は、情報理論アルゴリズムに基づいて照会トークンに類似するものとして適格のあるトークンを追加する照会拡張部を含む。これらは、類似トークンである。発生部はまた、各照会トークン及び類似トークンを音声等価物たる探索トークンに翻訳する翻訳部を含む。データベースアクセス部は、探索トークンを用いてデータベース内のレコードに対応するポインタを見つけ出す。
【0028】
1実施形態において、各照会トークンと、それぞれの類似トークンと、それぞれの探索トークンとは、データベース内の同じドメインに関連している。もう1つの実施形態において、解剖部は、パターン動作言語を使用して解剖する。関連実施形態において、解剖部は、トークン化部と、特定部と、変換部と、を含む。
【0029】
1形態において、本発明は、データベース内のデータにアクセスする方法に関連する。トークンは、探索されるべき第1のトークンとして組から選択される。1組のレコードは、選択されたトークンに応じてデータベースから検索される。照会に対する適切さの見込みは、その組の中の各レコードに対して決定される。1組のレコードは、照会に対する適切さの見込みによって順序づけられる。組に対する最も高い照会の適性さの見込みは、継続閾値と比較される。仮に、閾値を超える場合、探索は、終了させられ、1組のレコードは、出力される。仮に、そうでない場合、異なるトークンは、新たな探索のために選択される。
【0030】
1実施形態において、照会に対する適切さの見込みは、レコード・リンケージ理論に基づいて決定される。関連する実施形態において、1組のレコードは、1よりも多いレコードから構成され、出力されたレコードは、照会の適切さの見込みによって順序づけられる。
【0031】
もう1つの実施形態において、データベース内の発生頻度は、各トークンに対して見極められ、トークンは、発生頻度によって順序づけられ、もっとも低い発生頻度を有するトークンは、第1の探索トークンとして選択される。仮に、継続閾値を超えない場合、次に最も低いトークンを持つトークンは、次の探索トークンとして選択される。関連する実施形態において、発生頻度は、データベース内のドメインに関し、トークンは、ドメインにそれぞれ関連している。このような実施形態において、トークンは、順序づけられ、関連するドメイン内において最も低い発生頻度を有するトークンは、第1に選択されたトークンである。関連する実施形態において、照会に対する適切さの見込みは、レコード・リンケージ理論に基づいて各レコードに対して決定される。更なる関連実施形態において、仮に、検索されたレコードのバッファがオーバーフローする場合、バッファは、消去され、新たな探索は、すべてのトークンを含むレコードに対して始められる。
【0032】
もう1つの形態において、本発明は、データベース内のデータにアクセスするための装置に関連する。データベースアクセス部は、トークン選択部により第1のトークンとして探索されるべくトークンとして選択されたトークンに応じて、データベースから1組のレコードを検索する。適切さ決定部は、組の中の各レコード又は複数のレコードに対して照会の適切さの見込みを決定する。適切さ比較部は、適切さの見込みによって組の中の各レコードを順序づけ、閾値比較部は、継続閾値と最も高い適性さの見込みとを比較する。仮に、継続閾値を超える場合、適切さ比較部は、探索を終了する。仮に、そうでない場合、適切さ比較部は、選択されたトークンを排除し、トークン選択部に他のトークンを選択させる。出力デバイスは、閾値比較部が探索を終了した時に、1組のレコードを返す。
【0033】
1実施形態において、照会に対する適切さの見込みは、レコード・リンケージ理論に基づいて決定される。関連する実施形態において、データベースアクセス部は、1つよりも多いレコードを検索し、出力デバイスは、照会の適切さの見込みによっって順序づけられたレコードを返す。
【0034】
もう1つの実施形態において、頻度比較部は、各トークンに対してデータベース内の発生頻度を見極め、発生頻度によってトークンを順序づける。トークン選択部は、探索されるべき第1のトークンとして、最も低い発生頻度を有するトークンを選択する。関連する実施形態において、頻度比較部は、トークンに関連するデータベース内のドメイン内における発生頻度を見極め、第1のトークンとして、関連するドメイン内で最も低い発生頻度を有するトークンを選択する。もう1つの関連実施形態において、適切さ決定部は、レコード・リンケージ理論に基づいて照会の適正さの見込みを決定する。更なる関連実施形態において、バッファ・オーバーフロー阻止部は、それがオーバー・フローした時にバッファを消去し、オーバー・フロー信号をトークン選択部に送信する。データベースアクセス部は、その後、すべてのトークンを含むデータベースから1組のレコードを検索する。
【0035】
【発明の実施の形態】
要約すると、本発明は、図1に示すような電子データベースに対する情報検索処理に関連する。この情報検索処理は、この処理による照会が、データベース内の現存する問い合わせデータにアクセスするために使用される処理である。本発明において、蓋然論は、ユーザの照会に従ってデータベース内のレコードを選択し、それらを検索するために用いられる。情報検索処理は、一般に、図1に示す3つのステップに分離することができる:問い合わせデータに索引を付けるステップと、照会を処理するステップと、問い合わせデータにアクセスするステップ。情報検索処理のうち最後の2つのステップは、探索段階と考えることもできる。
【0036】
データベースは、一般に、多数のレコードを含み、それらのぞれぞれを、レコード番号によって問い合わせることができる。各レコードは、一般に、数個のドメインを含んでいる。同様に、各ドメインは、数個のフィールドを含んでいる。各フィールドはさらに、自由な形式のテキストを含むことができる。例えば、国内の収入サービス・データベースは、各納税者毎に対して分離したレコードを含むことができる。納税者レコードは、番号をつけられてもよいし、また、納税者の自宅及び勤務先の住所に対して分離したドメインを含んでもよい。各アドレスドメインは、ストリート・フィールドと、タウン・フィールドと、郵便番号フィールドとを含むこともできる。ストリート・フィールドは、例えば、「10910 ウェイ・スルゥ・ザ・ウッズ」、「71 カミノ・デ・グラシカ」のような自由な形式のテキストを受け入れてもよい。データベースは、一般に、すべてのフィールド又はドメインが情報を含んでいることを要求するものではない。例えば、自由契約の写真家として働く納税者は、勤務先の住所を有していなくともよく、そのため、納税者の勤務先住所ドメインは、いかなるデータをも含んでいない。
【0037】
他のデータベース配置が可能であり、本発明の情報検索処理は、それらの状況に用意に適用することができる。それにも拘わらず、本出願の目的に鑑み、データベース内の問い合わせデータは、多数のレコードを含み、各レコードが、多数のドメインを含み、各ドメインが、1つ又はそれよりも多いフィールドを含み、各フィールドが、自由な形式のテキストを含む、と想定されている。問い合わせデータの配置が想定されているとともに、本発明は、フィールドに常駐する自由形式テキストで動作する。
【0038】
要約すると、図1のブロック図に示すように、情報検索処理における第1のステップは、問い合わせデータに索引を付ける(ステップ10)。問い合わせデータに索引を付けることは、情報検索処理における探索段階に対する問い合わせデータの準備と考えることができる。図1Aは、本発明の1実施形態に係る、索引処理中におけるレコードの進展を表す。索引が始まると、各レコード44の要素42は、1組のレコード・トークン(TRn)46に解剖される。いくらかの実施形態における解剖処理は、レコードのある部分を除去し、そのレコードの残りの部分を標準化する。図1Aに示す実施の形態において、索引トークン(TIn)62は、レコード・トークン(TRn)46から生成される。
【0039】
索引が終了すると、索引トークン(TIn)62及びレコード・トークン(TRn)46は、その後の探索を容易にするために、分析されることとなる。1実施形態において、問い合わせデータに含まれるユニーク・レコード・トークン(TRn)46のリストは、生成される。1実施形態において、ユニーク索引トークン(TIn)62のテーブル96は、生成される。関連した実施の形態において、テーブル96は、各ユニーク索引トークン(TIn)62に対するデータベース内の発生頻度(νn)を、含む。他の関連した実施の形態において、テーブル96は、トークンを含む問い合わせデータ内のレコードに対するポインタ94を、含む。図1Aに示す実施形態において、利用可能な索引情報のすべてを含む、包括的な1テーブルが存在する。他の実施形態において、利用可能な索引情報の一部を含む、多数のテーブルが存在する。
【0040】
図1に示す情報検索処理における第2のステップは、照会の処理である(ステップ20)。照会を処理することは、情報検索処理段階にアクセスする情報の中で使用するための照会の準備である、と考えることができる。図1Bは、本発明の1実施形態に係る、照会処理中における照会54の進展を表す。照会54の要素52は、1組の照会トークン(TQn)56に解剖される。図1Bに示す実施の形態において、解剖処理は、照会54のある部分を除去し、その照会の残りの部分を標準化する。1実施形態において、情報理論アルゴリズムに基づき照会トークン(TQn)56と類似するとして適格となるレコード・トークン(TRn)46のリストからの何れのトークンも、1組の照会トークンに追加される。1実施形態において、問い合わせデータ内のレコードにアクセスするために使用できる探索トークン(TSn)72は、照会トークン(TQn)56と類似トークンとから生成される。ある実施形態において、照会処理は、問い合わせデータ内におけるレコード処理に対応する。
【0041】
図1に示す情報検索処理における第3のステップは、問い合わせデータへのアクセスである(ステップ30)。問い合わせデータにアクセスすることは、問い合わせデータ及び照会の準備の頂点である。図1Cは、本発明の実施形態に係るアクセス処理を表す。1実施形態において、蓋然論探索モデルと調和して、探索トークン(TSn)72は、探索トークンの選択度に基づき1組の探索トークンから選択される。探索トークン(TSn)72を含む問い合わせデータからのレコード44は、トークン・テーブル96を使用して検索される。1実施形態において、重みは、ユーザ照会54に適切であるという見込みを表す各レコードから計算される。関連した実施の形態において、重み計算は、レコード・リンケージ理論に基づく。1実施形態において、1組の検索されたレコードに対する最大の重みは、探索を続行すべきか、或いは終了すべきかを決める閾値と比較される。1実施形態において、検索されたレコードは、順序づけられてユーザに返される。ある実施形態において、各レコードの重みは、単独で、又はレコードと関連づけて、ユーザに返される。情報検索処理の最終は、各レコードの照会に対する適切さを評価するために、リスト又はレコードを、及び、ある実施形態においては、重みを有するユーザである。
【0042】
図2を参照する。図2は、本発明の実施の形態に係る、問い合わせデータに索引を付ける処理の詳細なブロック図を示す。第1のステップは、問い合わせデータの1つのレコード44を解剖する(ステップ40)。レコードをトークンへと解剖することは、レコード内のデータを分離して1組のトークンにすることを含む。ある実施形態において、問い合わせデータの開発者は、1単位の文字を定義し、それは、レコードの内容を分離してトークンにするための基礎として使用されることとなる。このような、ある実施形態において、これらの開発者が定義した文字は、単独で使用される。このような、他の実施形態において、これらの開発者が定義した文字は、分離のための基礎としてのデフォルトの文字とともに、使用される。他の実施形態において、開発者は、デフォルトの文字が分離のための単独の基礎として使用されるようにしておく。1群の文字は、分離のための基礎として使用されてもよい。ある実施形態において、分離文字自身が、トークンとなる。
【0043】
例えば、「big;bad.wolf and redriding hood」(「大きい;悪い.狼と赤ずきん」)を含むレコードは、「<big>;<bad>.<wolf and redriding hood>」となり、ここで、セミコロンとピリオドは、1単位の分離文字として定義されており、「<「and」>」は、トークン境界を示す。同様に、「big;bad.wolf and redriding hood」を含むレコードは、「<big;bad.wolf><and><redriding><hood>」となり、ここで、スペースは、1単位の分離文字として定義されており、「<「and」>」は、再びトークン境界を示す。他の実施形態において、分離文字は、分離処理において除去される。ある実施形態において、異なる文字は、異なるフィールド又はドメインにおける分離のための基礎として使用される。
【0044】
ある実施形態において、レコードを解剖することは、あるトークンを除去することを含む。ある実施形態において、開発者は、1組のトークンを定義し、それは、レコードの内容を分離してトークンにした後、除去されることとなる。1実施形態において、開発者が定義したトークンは、除去される単独のトークンである。もう1つの実施形態において、開発者が定義したトークンは、デフォルトのトークンとともに、除去される。他の実施形態にいて、開発者は、単に、デフォルトのトークンを除去されるようにする。除去されるトークンは、単一の文字からなる必要がない。例えば、「<big><;><bad><.><wolf and redriding hood>」は、「<big><bad><wolf and redriding hood>」となり、ここで、セミコロンとピリオドは、除去されるトークンとして定義されている。ある実施形態において、開発者は、異なるトークンを定義し、それは、異なるフィールド又はドメインにおいて除去されることとなる。
【0045】
ある実施形態において、レコードを解剖することは、パターン用の分離処理に起因する1組のトークンを検査することと、認識されたパターンにおける1つ又はそれよりも多いトークンに従うこととを含む。このような実施形態において、各トークンの属性は、一旦レコードがトークンに分離されると、決定される。1実施形態において、属性は、種類と、長さと、値と、省略と、半文字列とを含む。他の実施形態において、追加属性が、決定される。更なる他の実施形態において、少数の属性が、決定される。何れの実施形態において、トークンのある属性を決めることは、トークンの他の属性を決定する要件を無効にするかもしれない。種類の属性を用いる1実施形態において、種類は、数字と、アルファベットと、1又はそれより多い文字が後に続く先頭の数字と、1又はそれより多い数字が後に続く先頭のアルファベットと、先の2つの種類の何れにも該当しない数字と文字との混合を含む複合混合と、一般には遭遇しない特別なキャラクターを含む特別と、を含む。種類の属性を用いるもう1つの実施形態において、他の種類が、決定される。1実施形態において、アルファベットの種類は、敏感なケースである。ある実施形態において、付加的な開発者が定義した種類は、デフォルトの種類と結合して使用される。他の実施形態において、開発者が定義した種類は、デフォルトの種類を除外して使用される。例えば、1実施形態において、トークン<aBcdef>は、6文字の長さで、かつ「aBcdef」の値で、アルファベットの種類のトークンの属性を持ち、ここで、アルファベットのトークンは、敏感である。
【0046】
トークンの認識パターンをいくつかの方法で修正することを含む解剖が行われる実施形態において、パターンは、可能なトークン属性に基づく認識のために定義されなければならない。このような、ある実施形態において、パターンは、特定のドメイン内で発生する条件のみで動作するように定義される。このような、他の実施形態において、パターンは、1組のドメイン内の何れかで発生する条件で動作するように定義される。パターン・マッチングは、最初のトークンで始まり、一度に1つのトークンずつ行われる。1つのレコードに対してマルチ・パターン・マッチであってもよい。パターンは、トークン、トークンの一部、又は1組のトークンの何れの属性によって定義されてもよい。1実施形態において、パターンは、単一のトークンの属性によって定義される。もう1つの実施形態において、パターンは、1組のトークンの属性によって定義される。例えば、1実施形態において、パターンは、トークンの長さが10のよりも短く、トークンの最初の4文字が「ANTI」の半文字列で、かつトークン中の発生している場所を拘束しない「CS」の半文字列で、定義されている。実施例において、<ANTICS>及び<ANTI−CSAR>のトークンが、動作に対して認識されるであろう。対照的に、その実施例において、<ANTIPATHY>のトークンは、認識されないであろう。なぜならば、第2の半文字列の拘束に出会わないからである。また、<ANTIPOLITICS>のトークンも、認識されないであろう。なぜならば、文字長の拘束に出会わないからである。
【0047】
トークンの認識パターンをいくつかの方法で修正することを含む解剖が行われる実施形態において、多くの動作は、パターンを修正するために行われる。1実施形態において、認識されるパターンに応じて行われる動作は、パターンの属性の1つを変更することである。もう1つの実施形態において、認識されるパターンに応じて行われる動作は、パターンの一部分を連結することである。更なるもう1つの実施形態において、認識されるパターンに応じて行われる動作は、バッグする情報をプリントすることである。他の実施形態において、他の動作が、行われる。ある実施形態は、1つのトークンの1つの半文字列に関して1つの動作を行う。ある実施形態は、1つの認識されたパターンに応じて多くの動作を行う。例えば、1実施形態において、コマンド「SET the value of <token> to (1:2) <token>」は、アルファベットの種類のトークンの長さが7で、かつ最初の2文字が「EX」の半文字列でのパターン認識を仕上げるために定義される。実施例において、<EXAMPLE>のトークンが、パターンにフィットするものとして認識され、コマンドが実行された結果、トークンの値が、オリジナルのトークンの最初の2文字に、又は「EX」に変化する。他の実施の形態において、通常、探索に有益ではない単語、例えば「at」、「by」、「on」などのノイズ単語の値は、0に設定され、その結果、それらは、ユニーク索引トークンのリストから排除される。図1Aに示すように、解剖することは、データベース・レコード44をレコード・トークン(TRn)46に変換する。
【0048】
図2に示す問い合わせデータに索引をつける処理における、第2のステップは、ユニーク・レコード・トークンを見極めることである(ステップ50)。ユニーク・レコード・トークンを見極めることは、ユニーク・レコード・トークンのリストが生成されるようになる。このようなリストは、データベースの用語辞書として記述されてもよい。1実施形態において、あるフィールドは、リストへ寄与することから除外される。もう1つの実施形態において、あるドメインは、リストへ寄与することから除外される。1実施形態において、トークンは、それらの種類に基づくユニーク・トークンのリストへ寄与することから除外される。もう1つの実施形態において、トークンは、それらの種類及びもう1つの属性に基づくユニーク・トークンのリストへ寄与することから除外される。ある実施形態において、排除された種類又は他の属性は、ドメインに関して指定される。ある実施形態において、排除された種類又は他の属性は、全体としてレコードに関して指定される。例えば、1実施形態において、開発者は、すべての数字のトークンで、かつ5文字以上のトークンを、ユニーク・トークンのリストから除外する。もう1つの実施形態において、ステップ50は、スキップされる。更なるもう1つの実施形態において、ステップ50は、図2に示す問い合わせデータに索引をつける処理の後、行われる。
【0049】
図2に示す問い合わせデータに索引をつける処理における、第3のステップは、レコード・トークン(TRn)46から索引トークン(TIn)62を生成することである(ステップ60)。また、ステップ60は、図1Aに示されている。ある実施形態において、索引トークンは、レコード・トークンそれ自体である。前述の実施形態において、ステップ70は、ステップ50の複製物である。他の実施形態において、図1Aに示すように、索引トークン(TIn)62は、レコード・トークン(TRn)の音声等価物である。これらの実施形態において、索引トークンは、一般に、レコード・トークンを音声言語に翻訳することによって生成される。このような、1実施形態において、音声言語は、NYSIISである。このような、もう1つの実施形態において、音声言語は、SOUNDEXである。このような、更なる他の実施形態において、音声等価は、別の音声言語又はその変形に基づく。1実施形態において、多数の組の索引トークンがあり、各々が、異なる音声言語又はその変形に基づいている。1実施形態において、アルファベットの種類のレコード・トークンのみが、翻訳され、他の種類のレコード・トークンは、索引トークンを生成するために使用されることはない。もう1つの実施形態において、アルファベットの種類及び他の種類のレコード・トークンは、索引トークンを生成するが、レコード・トークンのアルファベットだけが、翻訳されて索引トークンになる。
【0050】
図2に示す問い合わせデータに索引をつける処理における、第4のステップは、ユニーク索引トークンの見極めることである(ステップ70)。ステップ70は、ステップ50と、多く類似している。ユニーク索引トークンを見極めることは、ユニーク索引トークンのリストが生成されるようになる。このようなリストは、索引用語の辞書として記述されてもよい。1実施形態において、あるフィールドは、リストへ寄与することから除外される。もう1つの実施形態において、あるドメインは、リストへ寄与することから除外される。1実施形態において、トークンは、その種類に基づくユニーク・トークンのリストへ寄与することから除外される。もう1つの実施形態において、トークンは、その種類及びもう1つの属性に基づくユニーク・トークンのリストへ寄与することから除外される。ある実施形態において、排除された種類及び他の属性は、ドメインに関して指定される。ある実施形態において、排除された種類及び他の属性は、全体としてレコードに関して指定される。例えば、1実施形態において、開発者は、すべてのアルファベットのトークンで、かつ5文字以上のトークンを、ユニーク・トークンのリストから除外する。もう1つの実施形態において、ステップ70は、スキップされる。更なるもう1つの実施形態において、ステップ70は、ステップ80の後に行われる。もう1つの実施形態において、ステップ70は、ステップ80の一部として行われる。
【0051】
図2に示す問い合わせデータに索引をつける処理における、第5のステップは、追加的なレコードをチェックすることである(ステップ80)。このステップは、単に、索引トークンの発生頻度を計算することが適切な時に決定するチェック・ステップである。仮に、追加的なレコードがある場合、次のレコードは、このステップが繰り返される前に、処理されることになる。仮に、追加的なレコードがない場合、索引処理は、ステップ90へと継続する。1実施形態において、追加的なレコードのチェックは、単に、ファイル・フラッグのエンドを探すことを備える。
【0052】
図2に示す問い合わせデータに索引をつける処理における、第6のステップであって、最後のステップは、データベース内のトークンの発生頻度を計算することである(ステップ90)。発生頻度はまた、コレクション頻度又はドキュメント頻度としても知られている。トークンの独立性を仮定すると、低い発生頻度は、より選択的なトークンを示す。トークンは、必ずしも独立していない。例えば、特定の群のトークンを含む句(フレーズ)は、データベース内に繰り返して含まれていてもよい。それにも拘わらず、トークンの独立性は、現実におおよそ等しいと許容できる。発生頻度は、レコードに関連することができるトークンの何れのタイプに対しても計算されてもよい。例えば、1実施形態において、発生頻度は、索引トークンに対して計算される。発生頻度は、レコードに関連することができるトークンの多様な異なるタイプに対しても計算されてもよい。例えば、もう1つの実施形態において、発生頻度は、索引トークンとレコード・トークンとに対して計算される。
【0053】
1実施形態において、発生頻度は、全体としてデータベースに関する各ユニーク索引トークンに対して計算される。もう1つの実施形態において、発生頻度は、データベース内の各ドメインに関する各ユニーク索引トークンに対して計算される。計算を特定する他のレベルもまた、可能である。ある実施形態において、発生頻度は、ある各ユニーク索引トークンに対して計算されない。1実施形態において、このような索引トークンは、例えば「the」、「and」などのノイズ単語を含む。索引トークンそれぞれの発生頻度を計算している間に索引トークンのリストを生成することは、頻度計算をより効率的にさせる。
【0054】
発生頻度が計算された時に、データベース内にそれぞれの位置にあるトークンを含んでいるレコードに対するポインタ94を含むトークン・テーブル96を生成し、保存することは、効率的である。このテーブル96は、トークンを含んでいるレコードの重複的な探索が必要とされることを防ぐ。1実施形態において、図1Aに示すように、ポインタ94は、包括的なテーブル96に含まれている。もう1つの実施形態において、ポインタは、分離したテーブルに含まれており、それぞれのトークンに関連している。
【0055】
図3を参照する。図3は、1実施形態に係る、照会処理のブロック図を示す。図3に示す照会を処理する際における、第1のステップは、照会40を解剖することである(ステップ40)。照会解剖は、データベースからのレコードを解剖する(ステップ40)ために用いられた処理と同じ処理及びその変形を使用して実行されることができる。唯一の差は、レコード44を解剖することによりレコード・トークン(TRn)46になるのに対し、図1Bに示すように、照会54を解剖することにより照会トークン(TQn)56になることである。
【0056】
図3に図示される照会を処理する際における、第2のステップは、照会40を拡張することである(ステップ90)。ある実施形態において、照会は、類似するトークンを照会トークンに追加することにより、拡張される。このような、1実施形態において、類似するトークンは、ユニーク・レコード・トークンのリストから選択される。ユニーク・レコード・トークンのリストの中からどのトークンを選択して照会トークンに追加する際に、照会トークンと候補のレコード・トークンとの様々な比較が、考えられる。ここで、理解を容易にするために、ユニーク・レコード・トークンのリストは、データベースの用語辞書であると考えてもよい。同様に、照会トークンと候補のレコード・トークンとの様々な比較は、照会のつづりチェックであると考えられる。1実施形態において、以下の比較が、考えられる:ミスマッチ文字の数;転置の数;文字列の長さ。もう1つの実施形態において、上記比較のサブセットが、考えられる。更なるもう1つの実施形態において、他の比較は、指定される比較の代わりに、又は指定される比較に加えて、考えられる。
【0057】
ある実施形態において、ユニーク・レコード・トークンのリストからの見出し項目のトークンは、照会トークンとの比較のために使用される。他の実施形態において、ユニーク・レコード・トークンのリストからのより小さいサブセットのトークンは、比較のために使用される。例えば、このような、1実施形態において、照会トークンとして最初の2文字が同じであるレコード・トークンのサブセットは、独立した参照トークンとの比較のために使用される。実施例において、仮に、ユニーク・レコード・トークンのリストが、照会トークン<XENITH>として最初の2文字が同じであるレコード・トークンをまったく含まない場合、さらなる比較は、行われず、レコード・トークンは、照会トークン<XENITH>に対する1組の参照トークンに追加されない。候補のレコード・トークンを照会トークンに対して比較することによって照会を拡張する実施形態において、閾値は、どの候補レコード・トークンが1組の参照トークンに追加され、追加されないかを決定するように設定される。ある実施形態において、閾値は、照会トークンとの比較における候補レコード・トークンの類似性に基づいている。このような、1実施形態において、閾値は、候補のレコード・トークンを包含するために必要とされる類似性の最低値である。他の実施形態において、閾値は、照会トークンとの比較における候補レコード・トークンの非類似性に基づいている。このような、1実施形態において、閾値は、候補のレコード・トークンを除外するために必要とされる非類似性の最高値である。もう1つの実施形態において、閾値は、類似性と非類似性との結合である。
【0058】
類似性及び非類似性の様々な計算は、照会トークンと使用されたレコード・トークンとの比較に依存することが可能である。類似性は、以下のように計算してもよい。ここで、各Sは、重み因子であり、cは、参照トークン及び候補レコード・トークンの双方に共通する文字の数であり、dは、参照トークンの長さであり、rは、候補レコード・トークンの長さであり、trは、候補レコード・トークンに対して照会トークンを比較することによって見つけ出された文字の転置の数である。
(1) 類似性=(Scd*(c/d))+
(Srd*(c/r))+
(Str*((c−tr)/c))
重み因子Sに関して、Scdは、候補レコード・トークンに共通する文字からなる照会トークンにおける文字のパーセンテージに対する重み因子であり、Srdは、照会トークンに共通する文字からなる候補レコード・トークンにおける文字のパーセンテージに対する重み因子であり、Strは、転置されていない候補レコード・トークンと照会トークンとに共通する文字のパーセンテージに対する重み因子である。1実施形態において、同様な重み因子のすべては、値300に設定され、候補レコードは、それらの計算された類似性が最低値の類似性を超えた場合に、1組の照会トークンに追加される。
【0059】
非類似性は、以下のように計算してもよい。ここで、各Dは、重み因子であり、ucdは、候補レコード・トークン内にない参照トークン内の文字数であり、dは、参照トークンの長さであり、urdは、参照トークン内にない候補レコード・トークン内の文字数であり、rは、候補レコード・トークンの長さであり、trは、候補レコード・トークンに対して照会トークンを比較することによって見つけ出された文字の転置の数であり、cは、参照トークン及び候補レコード・トークンの双方に共通する文字の数である。
(2) 非類似性=(Dcd*(ucd/d))+
(Drd*(urd/r))+
(Dtr*(tr/c)
重み因子Dに関して、Dcdは、候補レコード・トークン内にない参照トークン内の文字のパーセンテージに対するペナルティ因子であり、Drdは、参照トークン内にない候補レコード・トークン内の文字のパーセンテージに対するペナルティ因子であり、Ptrは、転置されていない候補レコード・トークンと照会トークンとに共通する文字のパーセンテージに対する重み因子である。
【0060】
1実施形態において、照会は、照会トークン(TQn)56及び類似トークンから探索トークン(TSn)72を生成することによって、拡張される。探索トークンの生成は、レコード・トークンから索引トークンを生成(ステップ60)するために用いられた処理と同じ処理及びその変形を使用して実行されることができる。唯一の差は、レコード・トークン(TRn)46から索引トークン(TIn)62が生成されるのに対し、照会トークン(TQn)56から探索トークン(TSn)72が生成されることである。
【0061】
もう1つの実施形態において、図1Bに示されるように、照会は、単独で、照会トークン(TQn)56から探索トークン(TSn)72を生成することにより、拡張される。再び、探索トークンの生成は、レコード・トークンから索引トークンを生成(ステップ60)するために用いられた処理と同じ処理及びその変形を使用して実行されることができる。再び、唯一の差は、レコード・トークン(TRn)46から索引トークン(TIn)62が生成されるのに対し、照会トークン(TQn)56から探索トークン(TSn)72が生成されることである。
【0062】
図4を参照する。図4は、1実施形態に係る、問い合わせデータにアクセスする処理のブロック図を示す。図4に示す問い合わせデータにアクセスする際における、第1のステップは、第1の探索トークンを選択することである(ステップ100)。1実施形態において、第1の探索トークンは、探索トークンからランダムに選択される。もう1つの実施形態において、第1の探索トークンは、探索トークン内の一定の順序で選択される。ある実施形態において、第1の探索トークンは、もっとも選択的な探索トークンである。ある実施形態において、探索トークンは、選択性によって順序づけられる。このような、1実施形態において、選択性は、索引を付けられたデータベース・レコード・セット内における発生頻度によって決定される。このような、もう1つの実施形態において、選択性は、索引を付けられたデータベース・レコード・セットの範囲内で特定のドメイン内における発生頻度によって決定される。このような、もう1つの実施形態において、選択性は、索引を付けられたデータベース・レコード・セットの範囲内でドメイン中の特定のフィールド内における発生頻度によって決定される。1実施形態において、第1の探索トークンは、照会によって指定されたドメインに対応するドメインの中で最も選択的な探索トークンである。もう1つの実施形態において、最も選択的な探索トークンは、ユニーク索引トークンのテーブル内で報告されている発生頻度を比較することによって見極められる。
【0063】
図4に示す問い合わせデータにアクセスする際における、第2のステップは、問い合わせデータにアクセスすることである(ステップ110)。ある実施形態において、選択されたトークンに対するデータベース・レコード・セットの新たな探索が、開始される。他の実施形態において、一旦、第1の探索トークンが選択されると、選択されたトークンは、トークン・テーブル上で調べられる。このような、1実施形態において、図1Cに示すように、トークン・テーブル96は、直接的に、選択されたトークン(TS3)72を含むデータベース内のレコードに対する1組のポインタ94を返す。このような、もう1つの実施形態において、トークン・テーブル96は、間接的に、選択されたトークンを含むデータベース内のレコードに対する1組のポインタ94を返す。ポインタは、データベース内のレコードをアクセスするために使用されてもよい。
【0064】
図4に示す問い合わせデータにアクセスする際における、第3のステップは、適切さを計算することである(ステップ120)。ある実施形態において、アクセスされた各レコードは、照会に対する適切さの見込みを表す重みを計算することによって評価される。このような、ある実施形態において、重みは、レコード・トークンに対して照会トークンを比較することによって計算される。このような、もう一つの実施形態において、重みは、照会により指定されたドメイン内のレコード・トークンに対して照会トークンを比較することによって計算される。
【0065】
レコード・リンケージは、レコードを検査し、あるフィールドの結合にマッチする対のレコードの位置を突き止める処理である。レコード・リンケージ理論は、1対のレコードが互いにマッチする又は適切であると考えるための蓋然論の基礎である。本発明は、この理論を幾つかの実施形態に適用し、データベース・レコード・セットの範囲内で照会を個々のレコードにマッチする。照会は、組Aのレコードからのレコードとして定義される。照会にマッチするための候補である問い合わせデータからのレコードは、組Bのレコードからのレコードとして定義される。各対のレコードは、組Aから1つのレコード、実質的には照会と、組Bから1つのレコードとを含む。各対のレコードは、マッチする対Mの組の要素又はマッチしない対Uの組の要素の何れかである。
【0066】
レコード・リンケージ理論の下、マッチを見極めるフィールドの能力は、フィールドの内容の選択性とフィールドの内容の正確性とに依存する。選択性は、レコード間を識別するフィールドの内容の能力の尺度である。例えば、フィールドが氏である場合、トークン<Humperdinck>は、トークン<Smith>よりも、より一層選択的である。なぜならば、氏フィールドの中の<Humperdinck>よりも、<Smith>を含むレコードの方が、より一層多そうだからである。選択性uiは、対のレコードがマッチしない対Uの組の要素である時に、2つのレコードがフィールド内に同じ内容を有する確率として、定義される。これは、数学的に、以下のように表される:ui=P(フィールド_一致|ρ∈U)。
【0067】
正確さは、フィールド内のデータの信頼性の尺度である。例えば、より多く注意深く入力された又は入力後にチェックされたフィールド情報は、より少なく注意深く入力された又は入力後にチェックさないフィールド情報よりも、マッチした対に一致しそうである。正確性miは、対のレコードがマッチする対Mの組の要素である時に、2つのレコードがフィールド内に同じ内容を有する確率として、定義される。これは、ある条件βが与えられた時にαが正しい確率P(α|β)として、数学的に、以下のように表される:mi=P(フィールド_一致|ρ∈M)。
【0068】
これらの尺度は、問い合わせデータ内のレコードがユーザの照会に基づいてユーザに対して興味のあるという見込みを予測するために、数学的に、量を定められ、適用される。我々は、第1のレコードがA組のレコードからであり、第2のレコードがB組のレコードからである、対のレコードを考える。A及びBは、幾らかの共通フィールドを共有する。各対のレコードρは、マッチする対Mの組又は要素マッチしない対Uの組の要素である。各対のレコードρと双方の組のレコードiに共通する各ドメインとに対して、我々は、以下の量を定義する:一致重みWAは、選択性uiに対する正確さmiの比の対数である。
(3) WA=log2(mi/ui)
ある実施形態において、一致重みWAは、候補レコードがそれぞれのドメインi内の照会トークンに等しいトークンを含む時に、候補レコードの適切さの見込みに足される。他の実施形態において、一致重みWAは、候補レコードがそれぞれのフィールドi内の照会トークンに等しいトークンを含む時に、候補レコードの適切さの見込みに足される。他の実施形態において、iは、データの位置を指定する他のレベルを表す。
【0069】
不一致重みWDは、1引く選択性uiに対する1引く正確さmiの比の対数である。
(4) WD=log2((1−mi)/(1−ui))
ある実施形態において、不一致重みWDは、候補レコードがそれぞれのドメインi内の照会トークンに等しいトークンを含まない時に、候補レコードの適切さの見込みから引かれる。他の実施形態において、不一致重みWDは、候補レコードがそれぞれのフィールドi内の照会トークンに等しいトークンを含まない時に、候補レコードの適切さの見込みから引かれる。他の実施形態において、iは、データの位置を指定する他のレベルを表す。
【0070】
ある実施形態において、隣接重みは、仮に、候補レコードが1つよりも多い照会トークンに等しい1つよりも多いトークンを含み、且つ適切なトークンが互いにすぐ近くに隣接する場合、候補レコードの適切な重みの見込みに足される。ある実施形態において、半隣接重みは、仮に、候補レコードが1つよりも多い照会トークンに等しい1つよりも多いトークンを含み、且つ適切なトークンが互いに近くに位置する場合、候補レコードの適切な重みの見込みに足される。1実施形態において、半隣接重みは、仮に、探索トークンが間にある1つのトークンによって分離している場合、足される。他の実施形態において、半隣接重みは、仮に、探索トークンが間にある1つよりも多いトークンによって分離している場合、足される。1実施形態において、隣接及び半隣接重みは、適切な探索トークンの重み因子である。近さに対する様々な重みスキームが、可能である。1実施形態において、候補レコードの適正な見込みは、照会トークンに関する候補レコード内のすべてのレコード・トークンにおける一致重みWAと隣接重みと半隣接重みとを合計することによって計算される。一例を挙げれば、半隣接重みは、照会トークンに等しい候補レコード内のレコード・トークン間にある1つのトークンがある時のみ、足されるだけである。
【0071】
図4に示す問い合わせデータにアクセスする際における、第4のステップは、計算された適切さを閾値に比較することである(ステップ130)。ある実施形態において、アクセスされた各レコードの重みは、1つ又はそれよりも多い閾値と比較される。他の実施形態において、候補レコードは、適正な重みの見込みによって順序づけれられている。この結果、アクセスされたレコードの組に対する重みは、より効果的に、1つ又はそれよりも多い閾値と比較される。
【0072】
ある実施形態において、重みは、継続閾値と比較される。このような実施形態において、探索は、継続閾値を超えると終了する。あの時に、アクセスされたレコードのすべてが出力される。このような実施形態において、継続閾値を超えないと、異なる探索を誘発する(ステップ140)。前の探索の基礎として使用されたトークンは、利用可能な探索トークンの組から除去される。新たな探索における、第1のステップは、異なるトークンを選択して問い合わせデータにアクセスすることである。このような実施形態において、仮に、最も選択的なトークンが既にデータにアクセスするために使用されていた場合、2番目に最も選択的なトークンは、その続の探索に使用される。処理は、継続閾値を超えるか、又はすべての探索トークンがデータにアクセスするために使用されるまで、繰り返される。
【0073】
ある実施形態において、アクセスされたレコードの重みは、提示閾値と比較される。このような実施形態において、アクセスされたレコードの一部は、出力される。提示閾値を使用する実施形態において、出力されたレコードは、提示閾値を超える適正な重みの見込みを持つレコードに限定される。
【0074】
ある実施形態において、適正な重みの最も高い可能性のある見込みは、各照会に対して計算される。適正な重みの最も高い可能性のある見込みは、選択された重みスキームに依存する。ある実施形態において、開発者は、追加的なトークンが候補レコードの重みを減少させるように選択する。例えば、一致重みWAのみを使用する実施形態において、適正な重みの最も高い可能性のある見込みは、それぞれのドメイン内のどの照会トークンをも含んでいる場合の候補レコードが有するであろう重みである。また、例えば、一致重みWAと隣接重みとを使用する実施形態において、適正な重みの最も高い可能性のある見込みは、それぞれのドメイン内及び照会配置内のどの照会トークンをも含んでいる場合の候補レコードが有するであろう重みである。
【0075】
ある実施形態において、探索を終了するための基礎として用いられる継続閾値重みは、最も高い可能性の重みのパーセンテージである。他の実施形態において、継続閾値重みは、絶対的な重みである。ある実施形態において、探索においてアクセスされたレコードを提示する基準として用いられる提示閾値は、最も高い可能性の重みのパーセンテージである。他の実施形態において、提示閾値重みは、絶対的な重みである。
【0076】
ある実施形態において、アクセスされたレコードは、適切な重みの見込みによる出力に対して順序づけられる。他の実施形態において、アクセスされたレコードは、それらが検索された順序で出力される。更なる他の実施形態において、アクセスされたレコードは、他の順序で出力される。
【0077】
ある実施形態は、データベース内において、図4の実施形態に示されていないアクセス処理ステップを含む。このステップにおいてアクセスされた情報の量は、オーバーフロー閾値と比較される。このような実施形態において、仮に、オーバーフロー閾値を超えると、現行の探索は、終了する。メモリ又はバッファは、消去される。このような、1実施形態において、新たな探索は、誘発される。新たな探索は、ブールのANDと一緒に結び付いたすべての探索トークンに基づいている。仮に、オーバーフロー閾値が新たな探索を誘発した場合、継続閾値は、その後、無能力になる。別の方法で、新たな探索においてアクセスされたレコードは、通例の探索と同じように処理される。ある実施形態において、探索を終了し、異なる探索を誘発するための基礎として用いられるオーバーフロー閾値は、ソフトウエアの誤り又は利用可能なメモリ空間ないしバッファ空間に関する警告と同様である。
【0078】
最後に、1実施形態において、通例の探索に加えて、開発者は、各照会に対してブールのANDの実行と一緒に結び付いたすべての探索トークンに基づいて、新たな探索を選ぶ。
【0079】
本発明の実施の形態を述べたが、当業者にとって、ここに開示した概念を一体化し、本発明の精神及び範囲を離れることなく実施される他の実施形態は、明らかである。ここで述べた実施形態は、すべての点において、実例として考えられ、制限するものとして考えられていない。従って、本発明の範囲は、特許請求の範囲のみによって限定されるもものと解釈される。
【図面の簡単な説明】
【図1】
図1は、従来技術として知られている、情報検索処理の機能ブロック図である。
図1Aは、本発明の実施の形態に係る、索引処理中におけるレコードの進展図である。
図1Bは、本発明の実施の形態に係る、照会処理中における照会の進展図である。
図1Cは、本発明の実施の形態に係る、情報アクセス処理における探索トークンとレコードとの照会の相互作用を示す図である。
【図2】
本発明の実施の形態に係る、情報検索処理における情報索引部分の機能ブロック図である。
【図3】
本発明の実施の形態に係る、情報検索処理における照会処理部分の機能ブロック図である。
【図4】
本発明の実施の形態に係る、情報検索処理における情報アクセス部分の機能ブロック図である。
Claims (52)
- データベースに索引を付ける方法であって、該方法は、
(a)データベースのレコードを入力するステップと、
(b)パターン動作言語を使用して各レコードを複数のレコード・トークンに解剖するステップと、
(c)各レコードに対する前記複数のレコード・トークンから前記レコードに対する索引を生成するステップと、
を含む方法。 - 請求項1に記載の方法において、
パターン動作言語を使用して各レコードを複数のレコード・トークンに解剖するステップ(b)が、
(i)各レコードを複数のオリジナル・トークンに変換するステップと、
(ii)各オリジナル・トークンを特定するステップと、
(iii)前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数のレコード・トークンに変換するステップと、
を含む、方法。 - 請求項2に記載の方法において、前記パターン動作言語が、前記複数のレコード・トークンのそれぞれに関連するドメインに応答する、方法。
- 請求項1に記載の方法において、
各レコードに対する前記複数のレコード・トークンから前記レコードに対する索引を生成するステップ(c)が、
(i)各レコードに対する前記複数のレコード・トークンからユニーク索引トークンのリストを生成するステップと、
(ii)各ユニーク索引トークンに対して前記データベース内における発生頻度を計算するステップと、
(iii)各ユニーク索引トークンに対する前記データベース内における前記発生頻度を含んでいる索引トークンのテーブルを生成するステップと、
を含む、方法。 - 請求項4に記載の方法において、該方法はさらに、
ステップ(c)より前に、それぞれのレコード・トークンから、前記それぞれのレコード・トークンに対して音声等価物を含んでいる索引トークンを発生させるステップを含む方法。 - 請求項5に記載の方法において、該方法はさらに、ユニーク・レコード・トークンのリストを生成するステップを含む方法。
- データベースに索引を付ける方法であって、該方法は、
(a)データベースのレコードを入力するステップと、
(b)各レコードを複数のレコード・トークンに解剖するステップと、
(c)それぞれのレコード・トークンから、前記索引トークンが前記それぞれのレコード・トークンに対して音声等価物を含んでいる索引トークンを発生させるステップと、
(d)各ユニーク索引トークンに対して前記データベース内における発生頻度を計算するステップと、
(e)各ユニーク索引トークンに対する前記発生頻度を含んでいる索引トークンのテーブルを生成するステップと、
を含む方法。 - 請求項7に記載の方法において、該方法はさらに、ユニーク・レコード・トークンのリストを生成するステップを含む方法。
- 請求項8に記載の方法において、前記ステップ(b)が、パターン動作言語を使用して、各レコードを複数のレコード・トークンに解剖するステップである、方法。
- 請求項9に記載の方法において、
パターン動作言語を使用して各レコードを複数のレコード・トークンに解剖するステップ(b)が、
(i)各レコードを複数のオリジナル・トークンに変換するステップと、
(ii)各オリジナル・トークンを特定するステップと、
(iii)前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数のレコード・トークンに変換するステップと、
を含む、方法。 - データベースに索引を付ける方法であって、該方法は、
(a)データベースのレコードを入力するステップと、
(b)各レコードを複数のレコード・トークンに解剖するステップであって、前記複数のレコード・トークンのそれぞれが前記データベース内のそれぞれのドメインに関連しており、且つ前記解剖ステップが、
(i)各レコードを複数のオリジナル・トークンに変換するステップと、
(ii)各オリジナル・トークンを特定するステップと、
(iii)前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数のレコード・トークンに変換するステップであって、前記パターン動作言語が前記複数のレコード・トークンのそれぞれに関連するそれぞれのドメインに応答する、ステップと、を含むステップと、
(c)ユニーク索引トークンのリストを生成するステップと、
(d)それぞれのレコード・トークンから索引トークンを発生させるステップであって、前記索引トークンが、前記それぞれのレコード・トークンに関連しているデータベース内の前記それぞれのドメインに関連しており、且つ前記索引トークンが前記それぞれのレコード・トークンに対して音声等価物を含んでいる、ステップと、
(e)ユニーク索引トークンのリストを生成するステップと、
(f)各ユニーク索引トークンに対して前記データベースの各ドメイン内における発生頻度を計算するステップと、
(g)各ユニーク索引に対する前記データベースの各ドメイン内における前記発生頻度を含んでいる索引トークンのテーブルを生成するステップと、
(h)各レコードに対する前記複数のレコード・トークンから前記レコードに対する索引を生成するステップと、
を含む方法。 - データベースに索引を付ける装置であって、該装置は、
データベースのレコードを受け入れる入力デバイスと、
前記入力デバイスと信号通信し、パターン動作言語を使用して前記データベースの各レコードを複数のレコード・トークンに解剖する解剖部と、
前記解剖部と信号通信し、前記データベースにおける前記複数のレコード・トークンの索引を生成する索引部と、
を含む装置。 - 請求項12に記載の装置において、
前記解剖部が、
前記入力デバイスと信号通信し、各レコードを複数のオリジナル・トークンに変換するトークン化部と、
前記トークン化部と信号通信し、各オリジナル・トークンを特定するトークン特定部と、
前記トークン特定部と信号通信し、複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて複数のレコード・トークンに変換するトークン変換部と、
を含む、装置。 - 請求項13に記載の装置において、
複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて複数のレコード・トークンに変換するトークン変換部における前記パターン動作言語が、前記複数のレコード・トークンのそれぞれに関連するドメインに応答する、装置。 - 請求項12に記載の装置において、
前記索引部が、
前記解剖部と信号通信し、各レコードに対する前記複数のレコード・トークンからユニーク索引トークンのリストを生成するトークン比較部と、
前記トークン比較部と信号通信し、ユニーク索引トークンの前記リスト上の各ユニーク索引トークンに対して前記データベース内における発生頻度を計算する頻度計算部と、
前記頻度計算部と信号通信し、各ユニーク索引トークンに対する前記頻度計算部により計算された前記発生頻度を含むテーブルを発生させるテーブル発生部と、
を含む、装置。 - 請求項15に記載の装置において、該装置はさらに、
前記解剖部と信号通信し、それぞれのレコード・トークンに対して少なくとも1つの索引トークンを発生させるトークン発生部であって、前記少なくとも1つの索引トークンが前記それぞれのレコード・トークンに対して音声等価物を含んでいる、トークン発生部を含み、
前記トークン比較部が、前記トークン発生部を介して、前記解剖部と信号通信する、装置。 - 請求項16に記載の装置において、該装置はさらに、
前記解剖部と信号通信し、各レコードに対して前記複数のレコード・トークンからユニーク・レコード・トークンのリストを生成するレコード・トークン比較部を含む装置。 - データベースに索引を付ける装置であって、該装置は、
データベースのレコードを受け入れる入力デバイスと、
前記入力デバイスと信号通信し、前記データベースの各レコードを複数のレコード・トークンに解剖する解剖部と、
前記解剖部と信号通信し、それぞれのレコード・トークンに対して少なくとも1つの索引トークンを発生させるトークン発生部であって、前記少なくとも1つの索引トークンが前記それぞれのレコード・トークンに対して音声等価物を含んでいる、トークン発生部と、
前記トークン発生部と信号通信し、各ユニーク索引トークンに対して前記データベース内における発生頻度を計算する頻度計算部と、
前記頻度計算部と信号通信し、各ユニーク索引トークンに対する前記頻度計算部により計算された前記発生頻度と前記ユニーク索引トークンに対応する索引トークンを含む前記データベース内の各レコードに対するポインタとを含むテーブルを発生させるテーブル発生部と、
を含む装置。 - 請求項18に記載の装置において、該装置はさらに、
前記解剖部と信号通信し、各レコードに対する前記複数のレコード・トークンからユニーク索引トークンのリストを生成するトークン比較部を含む装置。 - 請求項18に記載の装置において、前記解剖部が、パターン動作言語を使用して、前記データベース内の各レコードを複数のレコード・トークンに解剖する、装置。
- 請求項20に記載の装置において、
前記解剖部がさらに、
前記入力デバイスと信号通信し、各レコードを複数のオリジナル・トークンに変換するトークン化部と、
前記トークン化部と信号通信し、各オリジナル・トークンを特定するトークン特定部と、
前記トークン特定部と信号通信し、複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて複数のレコード・トークンに変換するトークン変換部と、
を含む、装置。 - データベースに索引を付ける装置であって、該装置は、
データベースのレコードを受け入れる入力デバイスと、
前記入力デバイスと信号通信し、前記データベースの各レコードをパターン動作言語を使用して複数のレコード・トークンに解剖する解剖部であって、
前記入力デバイスと信号通信し、各レコードを複数のオリジナル・トークンに変換するトークン化部と、
前記トークン化部と信号通信し、各オリジナル・トークンを特定するトークン特定部と、
前記トークン特定部と信号通信し、複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて複数のレコード・トークンに変換するトークン変換部であって、前記パターン動作言語が、前記複数のレコード・トークンのそれぞれに関連する前記それぞれのドメインに応答する、トークン変換部と、をさらに含む解剖部と、
前記解剖部と信号通信し、各レコードに対する前記複数のレコード・トークンからユニーク索引トークンのリストを生成するトークン比較部と、
前記解剖部と信号通信し、それぞれのレコード・トークンに対して少なくとも1つの索引トークンを発生させるトークン発生部であって、前記少なくとも1つの索引トークンが前記それぞれのレコード・トークンに対して音声等価物を含んでいる、トークン発生部と、
前記解剖部と信号通信し、前記それぞれのレコードに対して前記少なくとも1つの索引トークンからユニーク・レコード・トークンのリストを生成するレコード・トークン比較部と、
前記トークン発生部と信号通信し、各ユニーク索引トークンに対して前記データベース内における発生頻度を計算する頻度計算部と、
前記頻度計算部と信号通信し、各ユニーク索引トークンに対する前記頻度計算部により計算された前記発生頻度と前記ユニーク索引トークンに対応するレコード・トークンを含む前記データベース内の各レコードに対するポインタとを含むテーブルを発生させるテーブル発生部と、
を含む装置。 - データベースに照会する方法であって、該方法は、
(a)照会を入力するステップと、
(b)パターン動作言語を使用して前記照会を複数の照会トークンに解剖するステップと、
(c)それぞれの照会トークンから少なくとも1つの探索トークンを生成するステップと、
(d)データベース内の少なくとも1つのレコードにアクセスするために、索引テーブル上の少なくとも1つの探索トークンを調べるステップと、
を含む方法。 - 請求項23に記載の方法において、
パターン動作言語を使用して前記照会を複数の照会トークンに解剖するステップ(b)が、
(i)前記照会を複数のオリジナル・トークンに変換するステップと、
(ii)各オリジナル・トークンを特定するステップと、
(iii)前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数の照会トークンに変換するステップと、
を含む、方法。 - 請求項24に記載の方法において、
パターン動作言語を使用して前記照会を複数の照会トークンに解剖するステップ(b)における前記複数の照会トークンのそれぞれが、データベース内のそれぞれのドメインに関連しており、
前記解剖ステップ(b)が、
(i)前記照会を複数のオリジナル・トークンに変換するステップと、
(ii)各オリジナル・トークンを特定するステップと、
(iii)前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数の照会トークンに変換するステップであって、前記前記パターン動作言語が、前記複数のレコード・トークンのそれぞれに関連する前記それぞれのドメインに応答する、ステップと、
を含む、方法。 - 請求項24に記載の方法において、
パターン動作言語を使用して前記照会を複数の照会トークンに解剖するステップ(b)における前記複数の照会トークンのそれぞれが、データベース内のそれぞれのドメインに関連しており、
前記解剖ステップ(b)が、
(i)前記照会を複数のオリジナル・トークンに変換するステップと、
(ii)各オリジナル・トークンを特定するステップと、
(iii)前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数の照会トークンに変換するステップと、を含み、
それぞれの照会トークンから少なくとも1つの探索トークンを生成するステップ(c)における前記少なくとも1つの探索トークンが、前記それぞれの照会が関連する前記データベース内の前記ドメインに関連している、方法。 - データベースに照会する方法であって、該方法は、
(a)照会を入力するステップと、
(b)前記照会を複数の照会トークンに解剖するステップと、
(c)それぞれの照会トークンから少なくとも1つの探索トークンを生成するステップであって、
(i)少なくとも1つの類似トークンに対してデータベース内のユニーク・レコード・トークンのリストをチェックするステップであって、前記少なくとも1つの類似トークンが情報理論アルゴリズムに基づいて前記それぞれの照会トークンに類似するものとして適格となる、ステップと、
(ii)各それぞれの照会トークン及び何れの類似トークンを前記少なくとも1つの探索トークンに翻訳するステップであって、前記少なくとも1つの探索トークンがそれぞれの照会トークン又は類似トークンに対して音声等価物を含んでいる、ステップと、を含む生成ステップと、
(d)前記データベース内の少なくとも1つのレコードにアクセスするために、索引テーブル上の少なくとも1つの探索トークンを調べるステップと、
を含む方法。 - 請求項27に記載の方法において、
前記照会を複数の照会トークンに解剖するステップ(b)における前記複数の照会トークンのそれぞれが、データベース内のそれぞれのドメインに関連しており、
それぞれの照会トークンから少なくとも1つの探索トークンを生成するステップ(c)における前記少なくとも1つの探索トークンのそれぞれが、前記それぞれの照会が関連する前記データベース内の前記ドメインに関連しており、
前記ステップ(c)が、
(i)少なくとも1つの類似トークンに対してデータベース内のユニーク・レコード・トークンのリストをチェックするステップであって、前記少なくとも1つの類似トークンが情報理論アルゴリズムに基づいて前記それぞれの照会トークンに類似するものとして適格となる、ステップと、
(ii)各それぞれの照会トークン及び何れの類似トークンを前記少なくとも1つの探索トークンに翻訳するステップであって、前記少なくとも1つの探索トークンがそれぞれの照会トークン又は類似トークンに対して音声等価物を含んでいる、ステップと、を含む生成ステップである、方法。 - 請求項28に記載の方法において、
前記ステップ(b)が、パターン動作言語を使用して、前記照会を複数のレコード・トークンに解剖するステップであって、前記複数の照会トークンのそれぞれがデータベース内のそれぞれのドメインに関連している、ステップである、方法。 - 請求項29に記載の方法において、
パターン動作言語を使用して前記照会を複数の照会トークンに解剖するステップ(b)における前記複数の照会トークンのそれぞれが、データベース内のそれぞれのドメインに関連しており
前記解剖ステップ(b)が、
(i)前記照会を複数のオリジナル・トークンに変換するステップと、
(ii)各オリジナル・トークンを特定するステップと、
(iii)前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数の照会トークンに変換するステップと、を含む、方法。 - データベースに照会する装置であって、該装置は、
照会入力デバイスと、
前記照会入力デバイスと信号通信し、パターン動作言語を使用して前記照会入力デバイスに対する前記入力を複数の照会トークンに解剖する解剖部と、
前記解剖部と信号通信し、それぞれの照会トークンに対して少なくとも1つの探索トークンを発生させる発生部と、
前記データベース及び前記発生部と信号通信し、前記発生部により発生した前記複数の探索トークンのうち少なくとも1つに応じて前記データベース内のレコードにアクセスするデータベースアクセス部と、
を含む装置。 - 請求項31に記載の装置において、
前記解剖部が、
前記照会入力デバイスと信号通信し、前記照会入力デバイスに対する前記入力から複数のオリジナル・トークンを生成するトークン化部と、
前記トークン化部と信号通信し、前記トークン化部により生成された前記オリジナル・トークンのそれぞれを特定するトークン特定部と、
前記トークン特定部と信号通信し、前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数のレコード・トークンに変換するトークン変換部と、
を含む、装置。 - 請求項32に記載の装置において、
前記照会入力デバイスに対する前記入力から複数のオリジナル・トークンを生成する前記トークン化部における前記複数のオリジナル・トークンのそれぞれが、データベース内のドメインに関連しており、
前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数のレコード・トークンに変換する前記トークン変換部おける、
前記複数の照会トークンのそれぞれが、それぞれのオリジナル・トークンに関連する前記データベース内の前記ドメインに関連しており、且つ
前記パターン動作言語が、前記複数の照会トークンのそれぞれに関連する前記それぞれのドメインに応答する、装置。 - 請求項32に記載の装置において、
前記照会入力デバイスに対する前記入力から複数のオリジナル・トークンを生成する前記トークン化部における前記複数のオリジナル・トークンのそれぞれが、データベース内のドメインに関連しており、
前記複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて前記複数のレコード・トークンに変換する前記トークン変換部における前記複数の照会トークンのそれぞれが、それぞれのオリジナル・トークンに関連する前記データベース内の前記ドメインに関連しており、
それぞれの照会トークンに対して少なくとも1つの探索トークンを発生させる前記発生部における前記探索トークンが、前記それぞれの照会トークンに関連する前記データベース内の前記ドメインに関連している、装置。 - データベースに照会する装置であって、該装置は、
照会入力デバイスと、
前記照会入力デバイスと信号通信し、前記照会入力デバイスに対する前記入力を複数の照会トークンに解剖する解剖部と、
前記解剖部と信号通信し、それぞれの照会トークンに対して少なくとも1つの探索トークンを発生させる発生部であって、
前記解剖部と信号通信する照会拡張部であって、情報理論アルゴリズムに基づいて前記複数の照会トークンのうち少なくとも1つに類似する類似トークンを追加する照会拡張部と、
前記照会拡張部と信号通信する翻訳部であって、前記照会拡張部により出力される各照会トークン及び各類似トークンをそれぞれの探索トークンに翻訳し、各それぞれの探索トークンが照会トークン及び類似トークンに対して音声等価物を含んでいる、翻訳部と、を含む発生部と、
前記データベース及び前記発生部と信号通信し、前記発生部により発生した少なくとも1つのそれぞれの探索トークンに応じて前記データベース内のレコードにアクセスするデータベースアクセス部と、
を含む装置。 - 請求項35に記載の装置において、
前記照会入力デバイスに対する前記入力を複数の照会トークンに解剖する前記解剖部における前記複数の照会トークンのそれぞれが、前記データベース内のドメインに関連しており、
情報理論アルゴリズムに基づいて前記複数の照会トークンのうち少なくとも1つに類似する類似トークンを追加する前記照会拡張部における前記類似トークンのそれぞれが、前記複数の照会トークンのうち前記少なくとも1つに関連する前記データベース内の前記ドメインに関連しており、
前記照会拡張部により出力される各照会トークン及び各類似トークンをそれぞれの探索トークンに翻訳する前記翻訳部における各それぞれの探索トークンが、前記それぞれの照会トークンに関連する前記データベース内の前記ドメインに関連している、装置。 - 請求項36に記載の装置において、前記解剖部が、パターン動作言語を使用して、前記照会入力デバイスに対する前記入力を複数の照会トークンに解剖する、装置。
- 請求項37に記載の装置において、
前記解剖部がさらに、
前記照会入力デバイスと信号通信し、各照会を複数のオリジナル・トークンに変換するトークン化部であって、前記複数のオリジナル・トークンのそれぞれがデータベース内のそれぞれのドメインに関連している、トークン化部と、
前記トークン化部と信号通信するトークン特定部であって、各オリジナル・トークンを特定するトークン特定部と、
前記トークン特定部と信号通信し、複数の特定されたオリジナル・トークンを前記パターン動作言語に基づいて複数の照会トークンに変換するトークン変換部であって、前記複数の照会トークンのそれぞれが前記オリジナル・トークンに関連する前記それぞれのドメインに関連している、トークン変換部と、
を含む、装置。 - データベース内のデータにアクセスする方法であって、該方法は、
(a)探索されるべき第1のトークンとして複数のトークンから1つのトークンを選択するステップと、
(b)前記選択されたトークンに応じて前記データベースから少なくとも1つのレコードを検索するステップと、
(c)前記少なくとも1つのレコードのそれぞれに対する前記照会の適切さの見込みを決定するステップと、
(d)前記照会の適切さの見込みによって前記少なくとも1つのレコードのそれぞれを順序づけるステップと、
(e)継続閾値と前記少なくとも1つのレコードに対する前記照会の適切さの最も高い見込みとを比較するステップであって、
(i)前記少なくとも1つのレコードに対する前記照会の適切さの前記見込みが前記継続閾値を超える場合、前記探索を終了するステップと、
(ii)前記継続閾値が前記少なくとも1つのレコードに対する前記照会の適切さの前記見込みを超える場合、探索されるべき次のトークンとして複数のトークンから異なる1つのトークンを選択して、ステップ(b)からステップ(e)までを繰り返すステップと、を含むステップと、
(f)少なくとも1つの検索されたレコードを返すステップと、
を含む方法。 - 請求項39に記載の方法において、前記ステップ(c)が、レコード・リンケージ理論に基づいて、前記少なくとも1つのレコードのそれぞれに対する前記照会の適切さの見込みを決定する、方法。
- 請求項40に記載の方法において、
前記ステップ(b)が、前記選択されたトークンに応じて前記データベースから、複数のレコードを検索し、
前記ステップ(c)が、レコード・リンケージ理論に基づいて、前記複数のレコードのそれぞれに対する前記照会の適切さの見込みを決定し、
前記ステップ(d)が、前記照会の適切さの見込みによって、前記複数のレコードのそれぞれを順序づけるステップと、
前記ステップ(e)が、継続閾値と前記複数のレコードに対する前記照会の適切さの最も高い見込みとを比較するステップであって、
(i)前記複数のレコードに対する前記照会の適切さの前記見込みが前記継続閾値を超える場合、前記探索を終了するステップと、
(ii)前記継続閾値が前記複数のレコードに対する前記照会の適切さの前記見込みを超える場合、探索されるべき次のトークンとして複数のトークンから異なる1つのトークンを選択して、ステップ(b)からステップ(e)までを繰り返すステップと、を含むステップであり、
前記ステップ(f)が、複数の検索されたレコードを返すステップであり、前記複数の検索されたレコードが前記照会の適切さの見込みによって順序づけられている、ステップである、方法。 - 請求項39に記載の方法において、
該方法はさらに、
ステップ(a)より前に、複数のトークンのそれぞれに対するデータベース内の発生頻度を見極めるステップと、
前記発生頻度によって各トークンを順序づけるステップと、を含み、
探索されるべき第1のトークンとして前記複数のトークンから1つのトークンを選択する前記ステップ(a)が、
前記トークンが最も低い発生頻度を有している、ステップであり、
継続閾値と前記少なくとも1つのレコードに対する前記照会の適切さの最も高い見込みとを比較する前記ステップ(e)が、
(i)前記少なくとも1つのレコードに対する前記照会の適切さの前記見込みが前記継続閾値を超える場合、前記探索を終了するステップ、又は
(ii)前記継続閾値が前記少なくとも1つのレコードに対する前記照会の適切さの前記見込みを超える場合、探索されるべき次のトークンとして複数のトークンから異なる1つのトークンを選択し、前記異なるトークンが最も低い発生頻度を有し、ステップ(b)からステップ(e)までを繰り返すステップ、を含む、方法。 - 請求項42に記載の方法において、
データベース内の発生頻度が、それぞれのドメインの中にあり、
該方法はさらに、
ステップ(a)より前に、複数のトークンのそれぞれに対するデータベースの各ドメイン内の発生頻度を見極めるステップであって、前記複数のトークンが前記データベース内のそれぞれのドメインに関連している、ステップと、
前記データベースの各ドメイン内の発生頻度によって各トークンを順序づけるステップと、を含み、
探索されるべき第1のトークンとして前記複数のトークンから1つのトークンを選択する前記ステップ(a)が、
前記トークンが、前記それぞれのドメイン内の最も低い発生頻度を有している、ステップであり、
継続閾値と前記少なくとも1つのレコードに対する前記照会の適切さの最も高い見込みとを比較する前記ステップ(e)が、
(i)前記少なくとも1つのレコードに対する前記照会の適切さの前記見込みが前記継続閾値を超える場合、前記探索を終了するステップと、
(ii)前記継続閾値が前記少なくとも1つのレコードに対する前記照会の適切さの前記見込みを超える場合、探索されるべき次のトークンとして複数のトークンから異なる1つのトークンを選択し、前記異なるトークンが、前記それぞれのドメイン内の最も低い発生頻度を有し、ステップ(b)からステップ(e)までを繰り返すステップ、を含む、方法。 - 請求項43に記載の方法において、前記ステップ(c)が、レコード・リンケージ理論に基づいて、各レコードに対する前記照会の適切さの見込みを決定する、方法。
- 請求項44に記載の方法において、該方法はさらに、
ステップ(c)より前に、オバーフローのために検索されたレコードのバッファをチェックし、前記バッファがオバーフローである場合、前記バッファを消去して前記データベースから少なくとも1つのレコードを検索するステップであって、前記少なくとも1つのレコードのそれぞれが前記複数のトークンのすべてを含んでいる、ステップを含む方法。 - データベース内のデータにアクセスする装置であって、該装置は、
探索されるべき第1のトークンとして複数のトークンから1つのトークンを選択するトークン選択部と、
前記トークン選択部と信号通信し、前記選択されたトークンに応じて前記データベースから少なくとも1つのレコードを検索するデータベースアクセス部と、
前記データベースアクセス部と信号通信し、前記少なくとも1つのレコードのそれぞれに対する照会の適切さの見込みを決定する適切さ決定部と、
前記適切さ決定部と信号通信し、前記照会の適切さの見込みによって前記少なくとも1つのレコードのそれぞれを順序づける適切さ比較部と、
前記適切さ比較部及び前記トークン選択部と信号通信し、継続閾値と前記少なくとも1つのレコードに対する前記照会の適切さの最も高い見込みとを比較して、前記継続閾値を超える場合、前記探索を終了し、又は前記継続閾値を超えない場合、前記複数の探索トークンから前記選択されたトークンを取り除いて残存する探索トークンを前記トークン選択部に入力する閾値比較部と、
前記閾値比較部と信号通信し、前記閾値比較部が前記探索を終了した時に、前記少なくとも1つの検索されたレコードを返す出力デバイスと、
を含む装置。 - 請求項46に記載の装置において、前記適切さ決定部が、レコード・リンケージ理論に基づいて、前記少なくとも1つのレコードのそれぞれに対する照会の適切さの見込みを決定する、装置。
- 請求項47に記載の装置において、
前記データベースアクセス部が、前記選択されたトークンに応じて前記データベースから、複数のレコードを検索し、
前記データベースアクセス部と信号通信する適切さ決定部が、レコード・リンケージ理論に基づいて、前記複数のレコードのそれぞれに対する照会の適切さの見込みを決定し、
前記適切さ決定部と信号通信する適切さ比較部が、前記照会の適切さの見込みによって、前記複数のレコードのそれぞれを順序づけ、
前記適切さ比較部及び前記トークン選択部と信号通信する閾値比較部が、継続閾値と前記複数のレコードに対する前記照会の適切さの最も高い見込みとを比較して、前記継続閾値を超える場合、前記探索を終了し、又は前記継続閾値を超えない場合、前記複数の探索トークンから前記選択されたトークンを取り除いて残存する探索トークンを前記トークン選択部に入力し、
前記閾値比較部と信号通信する出力デバイスが、前記閾値比較部が前記探索を終了した時に、前記照会の適切さの見込みによって順序づけられている、前記複数の検索されたレコードを返す、装置。 - 請求項46に記載の装置において、
該装置はさらに、
複数のトークンのそれぞれに対するデータベース内の発生頻度を見極め、前記発生頻度によって各トークンを順序づける頻度比較部を含み、
前記トークン選択部が、前記頻度比較部と信号通信し、探索されるべき第1のトークンとして複数のトークンから1つのトークンを選択するトークン選択部であって、前記トークンが最も低い発生頻度を有している、トークン選択部である、装置。 - 請求項49に記載の装置において、
前記頻度比較部が、複数のトークンのそれぞれに対するデータベース内におけるドメイン内の発生頻度を見極め、前記トークンに関連するそれぞれのドメイン内の前記発生頻度によって各トークンを順序づけ、
探索されるべき第1のトークンとして前記複数のトークンから1つのトークンを選択する前記トークン選択部が、前記トークンが前記それぞれのドメイン内の最も低い発生頻度を有している、トークン選択部である、装置。 - 請求項50に記載の装置において、前記適切さ決定部が、レコード・リンケージ理論に基づいて、前記少なくとも1つのレコードのそれぞれに対する照会の適切さの見込みを決定する、装置。
- 請求項51に記載の装置において、該装置はさらに、
前記データベースアクセス部と信号通信し、バッファ・オバーフローをチェックし、前記バッファを超えている場合、前記バッファを消去して、前記トークン選択部にオバーフロー信号を送信するバッファ・オバーフロー阻止部を含み、
前記バッファ・オバーフロー阻止部と信号通信する前記トークン選択部が、前記バッファ・オバーフロー阻止部からの信号に応じて、結合的に探索されるべき前記トークンとして前記複数のトークンからすべてのトークンを選択し、
前記データベースアクセス部が、前記データベースから少なくとも1つのレコードを検索し、前記少なくとも1つのレコードのそれぞれが前記複数のトークンのすべてを含んでいる、データベースアクセス部である、装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US51474300A | 2000-02-28 | 2000-02-28 | |
PCT/US2001/006447 WO2001065416A2 (en) | 2000-02-28 | 2001-02-28 | Probabilistic matching engine |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004506960A true JP2004506960A (ja) | 2004-03-04 |
Family
ID=24048505
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001564037A Pending JP2004506960A (ja) | 2000-02-28 | 2001-02-28 | 蓋然論マッチング・エンジン |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP2004506960A (ja) |
AU (1) | AU2001243337A1 (ja) |
CA (1) | CA2401170A1 (ja) |
WO (1) | WO2001065416A2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0220576D0 (en) * | 2002-09-04 | 2002-10-09 | Neural Technologies Ltd | Data proximity detector |
US7805438B2 (en) | 2006-07-31 | 2010-09-28 | Microsoft Corporation | Learning a document ranking function using fidelity-based error measurements |
US8583415B2 (en) | 2007-06-29 | 2013-11-12 | Microsoft Corporation | Phonetic search using normalized string |
CN113254596B (zh) * | 2021-06-22 | 2021-10-08 | 湖南大学 | 基于规则匹配和深度学习的用户质检需求分类方法及系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4823306A (en) * | 1987-08-14 | 1989-04-18 | International Business Machines Corporation | Text search system |
JP3476237B2 (ja) * | 1993-12-28 | 2003-12-10 | 富士通株式会社 | 構文解析装置 |
US5774888A (en) * | 1996-12-30 | 1998-06-30 | Intel Corporation | Method for characterizing a document set using evaluation surrogates |
US5937422A (en) * | 1997-04-15 | 1999-08-10 | The United States Of America As Represented By The National Security Agency | Automatically generating a topic description for text and searching and sorting text by topic using the same |
-
2001
- 2001-02-28 CA CA002401170A patent/CA2401170A1/en not_active Abandoned
- 2001-02-28 AU AU2001243337A patent/AU2001243337A1/en not_active Abandoned
- 2001-02-28 JP JP2001564037A patent/JP2004506960A/ja active Pending
- 2001-02-28 WO PCT/US2001/006447 patent/WO2001065416A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
AU2001243337A1 (en) | 2001-09-12 |
WO2001065416A2 (en) | 2001-09-07 |
CA2401170A1 (en) | 2001-09-07 |
WO2001065416A3 (en) | 2003-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5740029B2 (ja) | 対話型サーチクエリーを改良するためのシステム及び方法 | |
JP3270783B2 (ja) | 複数の文書検索方法 | |
JP4467791B2 (ja) | 情報管理及び検索 | |
KR101219366B1 (ko) | 명백한 지리적 언급의 분류 | |
US9116976B1 (en) | Ranking documents based on large data sets | |
KR100451978B1 (ko) | 정보 검색 방법과 정보 검색 장치 | |
EP1555625A1 (en) | Query recognizer | |
US20020138479A1 (en) | Adaptive search engine query | |
US8682900B2 (en) | System, method and computer program product for documents retrieval | |
JP2003150624A (ja) | 情報抽出装置および情報抽出方法 | |
JP2004506960A (ja) | 蓋然論マッチング・エンジン | |
JP4073734B2 (ja) | 入力単語候補を推薦する情報検索システム | |
JP3249743B2 (ja) | 文書検索システム | |
JP2005010848A (ja) | 情報検索装置、情報検索方法、情報検索プログラム、及び記録媒体 | |
KR100837797B1 (ko) | 약어 생성 유형을 고려하는 약어 사전 자동 구축 방법, 그기록 매체 및 약어 생성 유형을 고려하는 약어 사전 자동구축 장치 | |
KR100659370B1 (ko) | 시소러스 매칭에 의한 문서 db 형성 방법 및 정보검색방법 | |
JP2585951B2 (ja) | コードデータ検索装置 | |
JP2006501545A (ja) | オブジェクト分類のための顕著な特徴を自動的に判定する方法および装置 | |
JPH07325837A (ja) | 抽象単語による通信文検索装置及び抽象単語による通信文検索方法 | |
JP4915499B2 (ja) | 同義語辞書生成システム、同義語辞書生成方法および同義語辞書生成プログラム | |
JP4206266B2 (ja) | 全文検索装置、処理方法、処理プログラム及び記録媒体 | |
EP1258815B1 (en) | A process for extracting keywords | |
JP3609252B2 (ja) | 文字列自動分類装置およびその方法 |