JPH11282880A - 電子化文書検索システムおよび記憶媒体 - Google Patents

電子化文書検索システムおよび記憶媒体

Info

Publication number
JPH11282880A
JPH11282880A JP10256974A JP25697498A JPH11282880A JP H11282880 A JPH11282880 A JP H11282880A JP 10256974 A JP10256974 A JP 10256974A JP 25697498 A JP25697498 A JP 25697498A JP H11282880 A JPH11282880 A JP H11282880A
Authority
JP
Japan
Prior art keywords
search
document
index
word
condition
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
JP10256974A
Other languages
English (en)
Inventor
Yasutsugu Ogawa
泰嗣 小川
Toru Matsuda
透 松田
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP10256974A priority Critical patent/JPH11282880A/ja
Publication of JPH11282880A publication Critical patent/JPH11282880A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 電子化文書検索システムにおいて、索引照合
の処理順序の工夫により不要な索引照合をなくし、検索
処理全体の処理速度を向上する。 【解決手段】 受け付けた検索条件を、新たな2つの検
索語の各々についての索引照合による検索を下位ノード
21に、この両下位ノード21の検索結果の比較によ
る、新たな両検索語の位置条件で限定する両下位ノード
21の合成処理条件24を上位ノード22とする、2本
木の木構造23の複合検索に変換する。そして、変換後
の検索条件に従い、上位ノード22の処理を行なう。す
なわち、索引照合により、新たな検索語の各々の識別子
と出現位置の情報を取得して比較し、新たな検索語同士
で同一識別子があるときに、その識別子に対応する文書
中で新たな検索語の出現位置を比較して、上位ノード2
2の位置条件に合致するか否かを判断し、すべての上位
ノード22で合致する文書の表示を検索結果としてクラ
イアントに出力する。この出現位置の比較は、新たな検
索語のうち、文書頻度が小さいものから順に行なう。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、電子化された文
書群を索引登録しておき、指定した文字列の検索語を含
む文書を検索する電子化文書検索システムおよび記憶媒
体に関する。
【0002】
【従来の技術】電子化文書検索システムとしては、従来
のキーワード検索方式の他に、近年の電子計算機の高速
化と記憶装置の大容量化により、全文検索方式も用いら
れている。この全文検索方式では、基本的には検索の際
に登録されている全文書を走査するものであるため、大
量の文書に対しては膨大な検索処理時間を要することに
鑑み、索引構造の工夫や検索処理の手法の工夫による処
理の高速化が試みられている。
【0003】この索引構造としては、索引語に文書の識
別子のみを対応付けて記憶する方式が従来から行なわれ
ているが、一般には、検索語を構成する文字列を複数の
索引語に分解して索引照合を行なうため検索ノイズ(過
剰ヒット)が避けられず、このノイズの除去のため、全
文書の走査によるあと処理を必要とし、処理の高速化に
限界があった。
【0004】そこで、索引語の各文書における出現位置
などの統計情報も索引にもたせる方式も提案されてい
る。例えば、「論文 日本語文書用高速全文検索の一手
法」(電子情報通信学会論文誌 D−1 Vol.J7
5−D−1 No.9 836〜846頁 1992年
9月)には、文字種に応じて1文字または連接2文字を
索引語とする技術が開示されている(以下、従来技術1
という)。また、特開平7−56944号公報には、文
字種によらず連接n文字(n≧2)を索引語とする技術
が開示されている(以下、従来技術2という)。
【0005】
【発明が解決しようとする課題】しかしながら、従来技
術1、2では、索引語が短いと頻出索引語が多くなって
検索処理に要する時間が長くなる一方、索引語が長いと
索引が非常に大きくなるという不具合がある。
【0006】この発明の目的は、検索処理全体の処理速
度を向上などを図った電子化文書検索を可能とすること
にある。
【0007】
【課題を解決するための手段】請求項1に記載の発明
は、電子化された複数の文書が登録される文書登録手段
と、この複数の文書中から所望の検索語を含む文書を検
索するための索引を、この索引に登録される各索引語
に、この索引語が前記複数の文書中での出現位置と対応
付けて記憶していて、前記出現位置は前記索引語が出現
する前記文書の識別子および当該文書中での出現位置で
ある索引記憶手段と、前記検索の検索条件を入力する入
力装置と、前記索引に対し検索語の索引照合を行なう索
引照合手段と、この索引照合により、前記検索条件中の
検索語を覆う少なくとも一つの前記索引語を取得し、こ
の索引語の各々を検索語として前記複数の文書中での出
現位置を検索する中間検索手段と、この各検索語につい
ての検索結果から、各検索語の文書頻度を見積る文書頻
度見積手段と、前記中間検索手段で取得した検索語が複
数あるときは、前記検索条件を、2つの検索語の各々に
ついての前記索引照合による検索を下位ノードに、この
両下位ノードの検索結果の比較による両検索語の位置条
件で限定する前記両下位ノードの合成処理を上位ノード
にする複合検索を階層的に連ねた2進木構造に変換する
第1検索条件変換手段と、前記上位ノードの処理を実行
して前記複合検索の結果を作成し、前記上位ノードの処
理は前記各検索語間の出現位置の比較を前記文書頻度の
小さいものから順に行なうものである複合検索手段と、
この検索の結果を出力する出力装置と、を備えている。
【0008】従って、下位ノードの各々の文書頻度を見
積ることで、検索条件評価の中間結果を得られれば、文
書頻度の小さい順に評価を行なうことで、この中間結果
を早めにしぼり込める。
【0009】請求項2に記載の発明は、第1検索条件変
換手段は、文書頻度の小さい下位ノードの順に2進木に
変換し、この変換により文書頻度の小さい下位ノードほ
ど前記木構造の下層となるようにする。
【0010】従って、下位ノードは、下層で末端ノード
に近いほど文書頻度が小さいので、さらに中間結果を早
めにしぼり込むことができる。
【0011】請求項3に記載の発明は、第1検索条件変
換手段は、中間検索手段による検索で検索条件中の検索
語を覆う索引語がなかったときは、常に空の検索結果を
返す末端ノードに変換する。
【0012】従って、与えられた検索語が索引登録され
ている索引語で覆うことができないときは、検索結果は
必ず空になるため、2進木構造に変換せず、検索条件の
評価の際には直ちに空の検索結果を返す末端ノードに変
換することができる。
【0013】請求項4に記載の発明は、両検索語の検索
を下位ノードに、この下位ノードの積集合を上位ノード
にする複合検索を階層的に連ねた2進木構造に変換し、
この変換は文書頻度の小さい下位ノードの順に2進木に
変換し、文書頻度の小さい下位ノードほど前記木構造の
下層となるように行なう第1予備変換手段を備えてい
る。
【0014】従って、この2進木構造を末端ノードから
順に評価していくことで予め粗い評価を行なって検索条
件に該当する文書数を絞っておくことが可能となる。
【0015】請求項5に記載の発明は、第1予備変換手
段による変換後の木構造での上位ノードの処理を前記木
構造中での最下位層から上位層に向けて順次実行して複
合検索の結果を作成し、前記上位ノードの処理は各検索
語間の出現位置の比較を前記文書頻度の小さいものから
順に行なうものである第1予備検索手段を備え、複合検
索手段は、上位ノードの処理を前記第1予備検索手段に
よる検索で限定された前記各検索語の出現位置について
行なう。
【0016】従って、第1予備変換手段による変換後の
2進木構造を用いて、粗い評価を行ない、その後、その
結果に基づいて複合検索手段による正確な評価を行なう
ことができる。
【0017】請求項6に記載の発明は、検索条件に複数
の検索語の論理演算を含んでいるときは、この各検索語
を覆う索引語の各々を検索語として文書頻度見積手段で
見積もった文書頻度に基づいて、前記各検索語の検索を
下位ノードに、この下位ノードの前記論理演算を上位ノ
ードにする複合検索を階層的に連ねた木構造に変換し、
さらに論理演算による検索条件が他の論理演算で他の検
索条件と結合される入れ子構造になっている場合には、
この入れ子構造の内側の論理演算を下位ノードに、その
外側論理演算を上位ノードにする木構造に変換する第2
検索条件変換手段を備えている。
【0018】従って、検索条件に複数の検索語の論理演
算を含んでいるときに、文書頻度に従い木構造を組んで
いって、下位ノードの端から評価していくことが可能と
なる。
【0019】請求項7に記載の発明は、第2検索条件変
換手段は、論理演算が複数の検索結果の積集合を作る積
集合演算であるときには、下位ノードを端から評価すれ
ば自ずと文書頻度の小さい順に評価することとなるよう
に、文書頻度の小さい順に前記下位ノードを整列する。
【0020】従って、下位ノードの端から評価していく
ことにより、論理演算が複数の検索結果の積集合の場合
に早めに最終結果に近づくことができるように小さい文
書頻度順に評価することができる。
【0021】請求項8に記載の発明は、第2検索条件変
換手段は、積集合演算で結ばれている複数の検索条件が
入れ子構造になっている場合には、この入れ子構造を外
して前記検索条件を木構造に変換する。
【0022】従って、積集合で結ばれる複数の検索条件
が入れ子構造になっているときは、その入れ子構造を解
いて平坦化しても論理演算の意味に変動はなく、下位ノ
ードの端から評価していけるように並べ替えることがで
きる。
【0023】請求項9に記載の発明は、第2検索条件変
換手段は、積集合演算で結ばれている検索条件のうち
に、常に空の検索結果を返す末端ノードに変換されるも
のが少なくとも1つあったときは、前記積集合演算全体
を、木構造に変換するのに代えて、常に空の検索結果を
返す末端ノードに変換する。
【0024】従って、積集合演算で結ばれている検索条
件のうちに、常に空の検索結果を返す末端ノードに変換
されるものが少なくとも1つあったときは、合成の結果
も空であるから、木構造に変換せず、検索条件の評価の
際には直ちに空の検索結果を返す末端ノードに変換する
ことができる。
【0025】請求項10に記載の発明は、第2検索条件
変換手段は、論理演算が複数の検索結果の和集合を作る
和集合演算であるときには、下位ノードを端から評価す
れば自ずと文書頻度の大きい順に評価することとなるよ
うに、文書頻度の大きい順に下位ノードを整列する。
【0026】従って、下位ノードの端から評価していく
ことにより、論理演算が複数の検索結果の和集合を作る
和集合演算の場合に、早めに最終結果に近づくことがで
きるように大きい文書頻度順に評価することができる。
【0027】請求項11に記載の発明は、第2検索条件
変換手段は、和集合演算で結ばれている複数の検索条件
が入れ子構造になっている場合には、この入れ子構造を
外して前記検索条件を木構造に変換する。
【0028】従って、和集合演算で結ばれる複数の検索
条件が入れ子構造になっているときは、その入れ子構造
を解いて平坦化しても論理演算の意味に変動はなく、下
位ノードの端から評価していけるように並べ替えること
ができる。
【0029】請求項12に記載の発明は、第2検索条件
変換手段は、論理演算が、1つの検索条件による検索結
果から別の1つ以上の検索条件による検索結果に含まれ
るものを除外する差集合演算であるときは、前記論理演
算で結ばれている複数の検索語については、この各検索
語を覆う索引語の各々を検索語として文書頻度見積手段
で見積もった文書頻度に基づいて、前記各検索語の検索
を下位ノードに、この下位ノードの前記論理演算を上位
ノードにする複合検索を階層的に連ねた木構造に変換
し、さらに論理演算による検索条件が他の論理演算で他
の検索条件と結合される入れ子構造になっている場合に
は、この入れ子構造の内側の論理演算を下位ノードに、
その外側論理演算を上位ノードにする木構造に変換す
る。
【0030】従って、下位ノードの端から評価していく
ことにより、文書頻度に応じた評価が可能となり、早め
に結果をしぼり込める。
【0031】請求項13に記載の発明は、第2検索条件
変換手段は、差集合演算で検索結果を除外する方の検索
条件が複数あるときは、この検索条件を表わす下位ノー
ドを端から評価すれば自ずと文書頻度の大きい順に評価
することとなるように、文書頻度の大きい順に前記下位
ノードを整列する。
【0032】従って、下位ノードの端から評価していく
ことで、文書頻度の大きい順に評価が可能となり、早め
に結果をしぼり込める。
【0033】請求項14に記載の発明は、第2検索条件
変換手段は、差集合演算で検索結果を除外する方の検索
条件のうちに和集合演算で検索条件を結合した合成条件
が含まれる場合には、この検索条件の和集合演算とを解
いて、この検索条件を木構造に変換する。
【0034】従って、差集合演算で検索結果を除外する
方の検索条件のうちに和集合演算で検索条件を結合した
合成条件が含まれる場合には、この検索条件の和集合演
算とを解いて平坦化しても論理演算の意味に変動はな
く、下位ノードの端から評価していけるように並べ替え
ることができる。
【0035】請求項15に記載の発明は、第2検索条件
変換手段は、差集合演算で検索結果を除外する方の検索
条件の少なくとも1つが、常に空の検索結果を返す末端
ノードに変換されるものであったときは、前記差集合演
算の全体を常に空の検索結果を返す末端ノードに変換す
る。
【0036】従って、元もと空の検索結果から何を取り
除いても結果は空になるため、木構造には変換せず、検
索条件の評価の際にはただちに空の検索結果を返す末端
ノードに変換することができる。
【0037】請求項16に記載の発明は、論理演算が、
複数の検索語の出現順序を無視した出現位置間の距離の
上限の指定であるときに、下位ノードの端から評価すれ
ば自ずと文書頻度の小さい順に評価することとなるよ
う、文書頻度の小さい順に下位ノードを整列させるよう
に変換を行なう第2予備変換手段を備えている。
【0038】従って、子ノードの端から評価していくこ
とにより、位置比較を行なうまでもなく、積集合演算で
も除外できる文書を早めに除外できる小さい文書頻度順
に評価することが可能になる。
【0039】請求項17に記載の発明は、第2予備変換
手段は、検索語の検索を下位ノードに、この下位ノード
の検索後の出現位置間の距離の上限の指定を上位ノード
にする複合検索を階層的に連ねた2進木構造に変換し、
この変換は文書頻度の小さい下位ノードの順に2進木に
変換し、文書頻度の小さい下位ノードほど前記木構造の
下層となるように行なう。
【0040】従って、変換後の木構造を用いて、粗い評
価を行ない、その後、その結果に基づいて正確な評価を
行なうことが可能となる。
【0041】請求項18に記載の発明は、第2予備変換
手段による変換後の木構造での上位ノードの処理を前記
木構造中での最下位層から上位層に向けて順次実行して
複合検索の結果を作成し、前記上位ノードの処理は各検
索語間の出現位置の比較を前記文書頻度の小さいものか
ら順に行なうものである第2予備検索手段を備え、複合
検索手段は、上位ノードの処理を前記第2予備検索手段
による検索で限定された前記各検索語の出現位置につい
て行なう。
【0042】従って、換後の木構造を用いて、粗い評価
を行ない、その後、その結果に基づいて複合検索手段に
よる正確な評価を行なうことができる。
【0043】請求項19に記載の発明は、索引記憶手段
は、その記憶している索引で文書の識別子に全順序関係
があって、索引語と前記識別子の下限を指定することに
より、この指定された索引語を含む前記文書の前記識別
子のうちで、その識別子の下限以上で最小のものを前記
索引から取得する第1予備照合手段と、前記指定した索
引語、前記取得した識別子、および、前記識別子の下限
値とを関連付けて記憶する第1予備照合記憶手段と、こ
の第1予備照合記憶手段を参照して、索引照合手段の行
なう索引照合の範囲を限定する第1照合範囲指定手段
と、を備えている。
【0044】従って、第1予備照合記憶手段を参照し
て、索引照合手段の行なう索引照合の範囲を限定するこ
とで、索引照合を削減することができる。
【0045】請求項20に記載の発明は、第1予備照合
記憶手段は、関連付けて記憶する索引語、識別子、およ
び、下限値を、第1予備照合手段で最新に取得した所定
数の索引語に関するものに限定する。
【0046】従って、第1予備照合記憶手段が過大なも
のとなるのを防止できる。
【0047】請求項21に記載の発明は、索引記憶手段
は、その記憶している索引で文書の識別子に全順序関係
があって、前記識別子の下限を指定することにより、複
合検索の結果を満たす前記識別子のうちで、その識別子
の下限以上で最小のものを前記索引から取得する第2予
備照合手段と、前記指定した索引語、前記取得した識別
子、および、前記識別子の下限値を関連付けて記憶する
第2予備照合記憶手段と、この第2予備照合記憶手段を
参照して、前記複合検索で索引照合手段の行なう索引照
合の範囲を限定する第2照合範囲指定手段と、を備えて
いるとするものである。
【0048】従って、第2予備照合記憶手段を参照し
て、索引照合手段の行なう索引照合の範囲を限定するこ
とで、索引照合を削減することができる。
【0049】請求項22に記載の発明は、第2予備照合
記憶手段は、関連付けて記憶する索引語、識別子、およ
び、下限値を、第2予備照合手段で最新に取得した所定
数の索引語に関するものに限定するとするものである。
【0050】従って、第2予備照合記憶手段が過大なも
のとなるのを防止できる。
【0051】請求項23に記載の発明は、コンピュータ
で読取可能なプログラムを記憶していて、このプログラ
ムは、コンピュータに読み取られることにより、与えら
れた検索条件に従って、電子化されて所定の記憶装置に
登録されている複数の文書中から所望の検索語を含む文
書の検索を前記コンピュータに実行可能とするものであ
り、この検索の実行では、索引語と前記複数の文書中で
の前記索引語の出現位置とを対応付けて所定の記憶装置
に記憶されていて、前記出現位置は前記索引語が出現す
る前記文書の識別子および当該文書中での出現位置であ
る索引に対し、索引照合を行ない、この索引照合によ
り、前記検索条件中の検索語を覆う少なくとも一つの前
記索引語を取得し、この索引語の各々を検索語として前
記複数の文書中での出現位置を検索する中間検索を行な
い、この各検索語についての検索結果から、この各検索
語の文書頻度を見積る文書頻度の見積を行ない、前記中
間検索で取得した検索語が複数あるときは、前記検索条
件を、2つの検索語の各々についての前記索引照合によ
る検索を下位ノードに、この両下位ノードの検索結果の
比較による両検索語の位置条件で限定する前記両下位ノ
ードの合成処理を上位ノードにする複合検索を階層的に
連ねた2進木構造に変換する第1の検索条件の変換を行
ない、前記上位ノードの処理を実行して前記複合検索の
結果を作成し、前記上位ノードの処理は前記各検索語間
の出現位置の比較を前記文書頻度の小さいものから順に
行なう複合検索を行なう。
【0052】従って、下位ノードの各々の文書頻度を見
積ることで、検索条件評価の中間結果を得られれば、文
書頻度の小さい順に評価を行なうことで、この中間結果
を早めにしぼり込める。
【0053】請求項24に記載の発明は、第1の検索条
件の変換では、文書頻度の小さい下位ノードの順に2進
木に変換し、この変換により文書頻度の小さい下位ノー
ドほど前記木構造の下層となるようにする。
【0054】従って、下位ノードは、下層で末端ノード
に近いほど文書頻度が小さいので、さらに中間結果を早
めにしぼり込むことができる。
【0055】請求項25に記載の発明は、第1の検索条
件の変換では、中間検索による検索で検索条件中の検索
語を覆う索引語がなかったときは、常に空の検索結果を
返す末端ノードに変換するものである。
【0056】従って、与えられた検索語が索引登録され
ている索引語で覆うことができないときは、検索結果は
必ず空になるため、2進木構造に変換せず、検索条件の
評価の際には直ちに空の検索結果を返す末端ノードに変
換することができる。
【0057】請求項26に記載の発明は、検索の実行で
は、両検索語の検索を下位ノードに、この下位ノードの
積集合を上位ノードにする複合検索を階層的に連ねた2
進木構造に変換し、この変換は文書頻度の小さい下位ノ
ードの順に2進木に変換し、文書頻度の小さい下位ノー
ドほど前記木構造の下層となるように実行する第1の予
備変換を行なう。
【0058】従って、この2進木構造を末端ノードから
順に評価していくことで予め粗い評価を行なって検索条
件に該当する文書数を絞っておくことが可能となる。
【0059】請求項27に記載の発明は、検索の実行で
は、第1の予備変換による変換後の木構造での上位ノー
ドの処理を前記木構造中での最下位層から上位層に向け
て順次実行して複合検索の結果を作成し、前記上位ノー
ドの処理は各検索語間の出現位置の比較を前記文書頻度
の小さいものから順に実行する第1の予備検索を行な
い、複合検索は、上位ノードの処理を前記第1の予備検
索による検索で限定された前記各検索語の出現位置につ
いて行なう。
【0060】従って、第1の予備変換による変換後の2
進木構造を用いて、粗い評価を行ない、その後、その結
果に基づいて複合検索手段による正確な評価を行なうこ
とができる。
【0061】請求項28に記載の発明は、検索の実行で
は、検索条件に複数の検索語の論理演算を含んでいると
きは、この各検索語を覆う索引語の各々を検索語として
文書頻度見積手段で見積もった文書頻度に基づいて、前
記各検索語の検索を下位ノードに、この下位ノードの前
記論理演算を上位ノードにする複合検索を階層的に連ね
た木構造に変換し、さらに論理演算による検索条件が他
の論理演算で他の検索条件と結合される入れ子構造にな
っている場合には、この入れ子構造の内側の論理演算を
下位ノードに、その外側論理演算を上位ノードにする木
構造に変換する第2の検索条件の変換を行なう。
【0062】従って、検索条件に複数の検索語の論理演
算を含んでいるときに、文書頻度に従い木構造を組んで
いって、下位ノードの端から評価していくことが可能と
なる。
【0063】請求項29に記載の発明は、第2の検索条
件の変換は、論理演算が複数の検索結果の積集合を作る
積集合演算であるときには、下位ノードを端から評価す
れば自ずと文書頻度の小さい順に評価することとなるよ
うに、文書頻度の小さい順に前記下位ノードを整列す
る。
【0064】従って、下位ノードの端から評価していく
ことにより、論理演算が複数の検索結果の積集合の場合
に早めに最終結果に近づくことができるように小さい文
書頻度順に評価することができる。
【0065】請求項30に記載の発明は、第2の検索条
件の変換は、論理演算が複数の検索結果の和集合を作る
和集合演算であるときには、下位ノードを端から評価す
れば自ずと文書頻度の大きい順に評価することとなるよ
うに、文書頻度の大きい順に下位ノードを整列する。
【0066】従って、積集合で結ばれる複数の検索条件
が入れ子構造になっているときは、その入れ子構造を解
いて平坦化しても論理演算の意味に変動はなく、下位ノ
ードの端から評価していけるように並べ替えることがで
きる。
【0067】請求項31に記載の発明は、第2の検索条
件の変換は、論理演算が、1つの検索条件による検索結
果から別の1つ以上の検索条件による検索結果に含まれ
るものを除外する差集合演算であるときは、前記論理演
算で結ばれている複数の検索語については、この各検索
語を覆う索引語の各々を検索語として文書頻度見積手段
で見積もった文書頻度に基づいて、前記各検索語の検索
を下位ノードに、この下位ノードの前記論理演算を上位
ノードにする複合検索を階層的に連ねた木構造に変換
し、さらに論理演算による検索条件が他の論理演算で他
の検索条件と結合される入れ子構造になっている場合に
は、この入れ子構造の内側の論理演算を下位ノードに、
その外側論理演算を上位ノードにする木構造に変換す
る。
【0068】従って、下位ノードの端から評価していく
ことにより、文書頻度に応じた評価が可能となり、早め
に結果をしぼり込める。
【0069】請求項32に記載の発明は、検索の実行で
は、論理演算が、複数の検索語の出現順序を無視した出
現位置間の距離の上限の指定であるときに、下位ノード
の端から評価すれば自ずと文書頻度の小さい順に評価す
ることとなるよう、文書頻度の小さい順に下位ノードを
整列させるように変換を行なう第2の予備変換を行な
う。
【0070】従って、子ノードの端から評価していくこ
とにより、位置比較を行なうまでもなく、積集合演算で
も除外できる文書を早めに除外できる小さい文書頻度順
に評価することが可能になる。
【0071】請求項33に記載の発明は、第2の予備変
換は、検索語の検索を下位ノードに、この下位ノードの
検索後の出現位置間の距離の上限の指定を上位ノードに
する複合検索を階層的に連ねた2進木構造に変換し、こ
の変換は文書頻度の小さい下位ノードの順に2進木に変
換し、文書頻度の小さい下位ノードほど前記木構造の下
層となるように行なう。
【0072】従って、変換後の木構造を用いて、粗い評
価を行ない、その後、その結果に基づいて正確な評価を
行なうことが可能となる。を小さくして検索処理の高速
化を図ることができる。
【0073】請求項34に記載の発明は、第2の予備変
換による変換後の木構造での上位ノードの処理を前記木
構造中での最下位層から上位層に向けて順次実行して複
合検索の結果を作成し、前記上位ノードの処理は各検索
語間の出現位置の比較を前記文書頻度の小さいものから
順に実行する第2の予備検索を行ない、複合検索は、上
位ノードの処理を前記第2予備検索手段による検索で限
定された前記各検索語の出現位置について行なう。
【0074】従って、換後の木構造を用いて、粗い評価
を行ない、その後、その結果に基づいて複合検索による
正確な評価を行なうことができる。
【0075】請求項35に記載の発明は、電子化された
複数の登録文書中から所望の検索語を含む文書を検索す
るための索引を、この索引の見出しとして登録される各
索引語に、この索引語を含んでいる前記登録文書の数で
ある文書頻度、前記索引語を含む文書の文書識別子、前
記索引語の前記各登録文書内での出現回数である文書内
頻度および前記索引語の前記各登録文書内での出現位置
の各情報を対応付けて記憶している索引記憶手段と、前
記登録文書を前記索引語に分割する文書分割手段と、与
えられた検索条件中の検索語を前記索引語に分割し、ま
た、前記検索語中に前記索引語が1つも含まれていない
ときは該当文書がない旨を示す空文書集合を作成する検
索語分割手段と、前記検索条件を解析して、この検索条
件から、前記検索語分割手段が取得した前記索引語と前
記空文書集合とのうちの少なくとも一方を演算子で合成
した検索条件木を生成する検索条件解析手段と、この検
索条件木に基づき、前記索引から前記索引語に関する前
記情報を取得して検索結果合成処理を実行し検索結果を
得る検索条件評価手段とを備え、nを1以上の整数とし
たときに、前記文書分割手段は前記登録文書をn文字の
連鎖である前記索引語に分割し、前記検索語分割手段は
前記検索語を覆う1つ以上のn文字連鎖である前記索引
語に分割し、前記検索条件解析手段は前記検索語が2つ
以上の前記索引語に分割されるときはこの複数の索引語
の出現位置間の距離を指定する位置演算子で合成するも
のである。
【0076】したがって、索引語は一律にn文字の連鎖
とされるので、膨大な単語辞書を必要とする形態素解析
を用いる手法と比較すると、単語辞書の管理などの手間
が省ける。
【0077】請求項36に記載の発明は、請求項35に
記載の発明において、nが2以上で検索語がn文字未満
の場合、検索語分割手段はm文字目(mは1以上で(n
−m+1)以下である整数)から検索語と一致するすべ
ての索引語を索引から取り出し、検索条件解析手段は検
索語分割手段が取り出した前記複数の索引語を複数の検
索結果の和集合をとる和集合演算子で合成するものであ
る。
【0078】したがって、nが2以上で検索語がn文字
未満の場合も正しく検索を行なうことができる。
【0079】請求項37に記載の発明は、請求項35に
記載の発明において、nが2以上で検索語がn文字以上
の場合、検索語分割手段は検索語を覆う最小個数の索引
語に分割するものである。
【0080】したがって、無駄な索引語の使用を省いて
検索処理の高速化を図ることができる。
【0081】請求項38に記載の発明は、請求項37に
記載の発明において、最小個数の索引語に分割できる場
合が複数あるときは、検索語分割手段は検索語を覆う最
小個数の各索引語の文書頻度の合計が最小となるように
検索語を索引語に分割するものである。
【0082】したがって、文書頻度を小さくして検索処
理の高速化を図ることができる。
【0083】請求項39に記載の発明は、電子化された
複数の登録文書中から所望の検索語を含む文書を検索す
るための索引を、この索引の見出しとして登録される各
索引語に、この索引語を含んでいる前記登録文書の数で
ある文書頻度、前記索引語を含む文書の文書識別子、前
記索引語の前記各登録文書内での出現回数である文書内
頻度および前記索引語の前記各登録文書内での出現位置
の各情報を対応付けて記憶している索引記憶手段と、前
記登録文書を前記索引語に分割する文書分割手段と、与
えられた検索条件中の検索語を前記索引語に分割し、ま
た、前記検索語中に前記索引語が1つも含まれていない
ときは該当文書がない旨を示す空文書集合を作成する検
索語分割手段と、前記検索条件を解析して、この検索条
件から、前記検索語分割手段が取得した前記索引語と前
記空文書集合とのうちの少なくとも一方を演算子で合成
した検索条件木を生成する検索条件解析手段と、この検
索条件木に基づき、前記索引から前記索引語に関する前
記情報を取得して検索結果合成処理を実行し検索結果を
得る検索条件評価手段とを備え、前記検索語分割手段は
前記分割で得た複数の索引語のうち前記検索語を覆う他
の索引語に包含されるものは除外するものであり、前記
検索条件解析手段は前記検索語が2つ以上の前記索引語
に分割されるときはこの複数の索引語の出現位置間の距
離を指定する位置演算子で合成するものである。
【0084】したがって、請求項35に記載の発明に比
較して、検索語を検索向きに索引語に分割して、検索処
理を高速化することができる。
【0085】請求項40に記載の発明は、請求項39に
記載の発明において、検索語分割手段は検索語を覆う最
小個数の索引語に分割するものである。
【0086】したがって、無駄な索引語の使用を省いて
検索処理の高速化を図ることができる。
【0087】請求項41に記載の発明は、請求項40に
記載の発明において、最小個数の索引語に分割できる場
合が複数あるときは、検索語分割手段は検索語を覆う最
小個数の各索引語の文書頻度の合計が最小となるように
検索語を索引語に分割するものである。
【0088】したがって、無駄な索引語の使用を省いて
検索処理の高速化を図ることができる。
【0089】請求項42に記載の発明は、電子化された
複数の登録文書中から所望の検索語を含む文書を検索す
るための索引を、この索引の見出しとして登録される各
索引語に、この索引語を含んでいる前記登録文書の数で
ある文書頻度、前記索引語を含む文書の文書識別子、前
記索引語の前記各登録文書内での出現回数である文書内
頻度および前記索引語の前記各登録文書内での出現位置
の各情報を対応付けて記憶している索引記憶手段と、前
記登録文書を前記索引語に分割する文書分割手段と、与
えられた検索条件中の検索語を前記索引語に分割し、ま
た、前記検索語中に前記索引語が1つも含まれていない
ときは該当文書がない旨を示す空文書集合を作成する検
索語分割手段と、前記検索条件を解析して、この検索条
件から、前記検索語分割手段が取得した前記索引語と前
記空文書集合とのうちの少なくとも一方を演算子で合成
した検索条件木を生成する検索条件解析手段と、この検
索条件木に基づき、前記索引から前記索引語に関する前
記情報を取得して検索結果合成処理を実行し検索結果を
得る検索条件評価手段とを備え、前記検索語分割手段が
前記検索語を2つ以上の前記索引語に分割する場合は、
前記検索条件解析手段は、これら複数の索引語を複数の
検索結果の積集合をとる積集合演算子で合成した条件木
である候補決定用条件木と、前記複数の索引語から検索
語を覆う最小個数のものを選択してそれを出現位置間の
距離を指定する位置演算子で合成した条件木である詳細
判定用条件木とを作成し、前記検索条件評価手段は、ま
ず前記候補決定用条件木の前記検索結果合成処理を実行
して前記複数の登録文書から該当文書を検索し、次に、
この検索後の登録文書を対象に前記詳細判定用条件木の
前記検索結果合成処理を実行して前記検索結果を得るも
のである。
【0090】したがって、詳細判定用条件木の検索結果
合成処理に先立って、候補決定用条件木の検索結果合成
処理を実行して対象となる文書に絞りをかけることによ
り、文字位置の突き合せの処理を低減して、検索処理の
高速化を図ることができる。
【0091】請求項43に記載の発明は、電子化された
複数の登録文書中から所望の検索語を含む文書を検索す
るための索引を、この索引の見出しとして登録される各
索引語に、この索引語を含んでいる前記登録文書の数で
ある文書頻度、前記索引語を含む文書の文書識別子、前
記索引語の前記各登録文書内での出現回数である文書内
頻度および前記索引語の前記各登録文書内での出現位置
の各情報を対応付けて記憶している索引記憶手段と、前
記登録文書を前記索引語に分割する文書分割手段と、与
えられた検索条件中の検索語を前記索引語に分割し、ま
た、前記検索語中に前記索引語が1つも含まれていない
ときは該当文書がない旨を示す空文書集合を作成する検
索語分割手段と、前記検索条件を解析して、この検索条
件から、前記検索語分割手段が取得した前記索引語と前
記空文書集合とのうちの少なくとも一方を演算子で合成
した検索条件木を生成する検索条件解析手段と、この検
索条件木に基づき、前記索引から前記索引語に関する前
記情報を取得して検索結果合成処理を実行し検索結果を
得る検索条件評価手段とを備え、前記検索語分割手段が
前記検索語を2つ以上の前記索引語に分割する場合は、
前記検索条件解析手段は、これら複数の索引語を複数の
検索結果の積集合をとる積集合演算子で合成した条件木
である候補決定用条件木と、前記複数の索引語から前記
検索語を覆いかつ索引語ごとの前記文書頻度の合計が最
小となるものを選択してそれを出現位置間の距離を指定
する位置演算子で合成した条件木である詳細判定用条件
木とを作成し、前記検索条件評価手段は、まず前記候補
決定用条件木の前記検索結果合成処理を実行して前記複
数の登録文書から該当文書を検索し、次に、この検索後
の登録文書を対象に前記詳細判定用条件木の前記検索結
果合成処理を実行して前記検索結果を得るものである。
【0092】したがって、詳細判定用条件木の検索結果
合成処理に先立って、候補決定用条件木の検索結果合成
処理を実行して対象となる文書に絞りをかけることによ
り、文字位置の突き合せの処理を低減して、検索処理の
高速化を図ることができる。
【0093】請求項44に記載の発明は、電子化された
複数の登録文書中から所望の検索語を含む文書を検索す
るための索引を、この索引の見出しとして登録される各
索引語に、この索引語を含んでいる前記登録文書の数で
ある文書頻度、前記索引語を含む文書の文書識別子、前
記索引語の前記各登録文書内での出現回数である文書内
頻度および前記索引語の前記各登録文書内での出現位置
の各情報を対応付けて記憶している索引記憶手段と、前
記登録文書を前記索引語に分割する文書分割手段と、与
えられた検索条件中の検索語を前記索引語に分割し、ま
た、前記検索語中に前記索引語が1つも含まれていない
ときは該当文書がない旨を示す空文書集合を作成する検
索語分割手段と、前記検索条件を解析して、この検索条
件から、前記検索語分割手段が取得した前記索引語と前
記空文書集合とのうちの少なくとも一方を演算子で合成
した検索条件木を生成する検索条件解析手段と、この検
索条件木に基づき、前記索引から前記索引語に関する前
記情報を取得して検索結果合成処理を実行し検索結果を
得る検索条件評価手段とを備え、前記索引は、前記索引
語ごとに、前記各文書識別子は前の文書識別子の値との
差分を可変長符号で表現したものであり、前記文書内頻
度は可変長符号で表現されたものであり、前記各出現位
置は文書ごとの前の出現位置の値との差分を可変長符号
で表現したものである。
【0094】したがって、索引に記録する情報を圧縮し
て索引のデータ量を小さくすることができる。
【0095】請求項45に記載の発明は、請求項44に
記載の発明において、索引は、索引語ごとに、各文書識
別子と各文書内頻度および各出現位置とで格納する領域
を分けているものである。
【0096】したがって、文書識別子を参照する場合に
伸長するデータ量を少なくできるので、検索処理を高速
化することができる。
【0097】請求項46に記載の発明は、請求項45に
記載の発明において、索引は、索引語ごとの各文書ごと
に対応して、文書内頻度および出現位置を表現するのに
必要なビット数である文書内頻度出現位置表現ビット数
を可変長符号で表現したデータを保持しているものであ
る。
【0098】したがって、文書内頻度出現位置表現ビッ
ト数を参照することにより、必要とする文書の文書頻
度、出現位置のデータがどこにあるかがわかるので、文
書頻度、出現位置を参照する場合に伸長するデータ量を
少なくして、検索処理を高速化することができる。
【0099】請求項47に記載の発明は、請求項45に
記載の発明において、索引は、索引語ごとの各文書ごと
に対応して、文書内頻度が指定された閾値以上である場
合に、出現位置を表現するのに必要なビット数である出
現位置表現ビット数を可変長符号で表現したデータを保
持しているものである。
【0100】したがって、文書内頻度が大きい場合のみ
出現位置を表現するのに必要なビット数を記録すること
で、請求項46に記載の発明ほど索引を大きくせず、出
現位置を参照する場合に伸長するデータ量を少なくし
て、検索処理を高速化することができる。
【0101】請求項48に記載の発明は、請求項46ま
たは47に記載の発明において、文書内頻度出現位置表
現ビット数および出現位置表現ビット数は、各文書内頻
度および各出現位置を格納する領域に格納するものであ
る。
【0102】したがって、文書内頻度出現位置表現ビッ
ト数および出現位置表現ビット数は、各文書内頻度およ
び各出現位置を格納する領域に格納して、検索処理を高
速化することができる。
【0103】請求項49に記載の発明は、電子化された
複数の登録文書中から所望の検索語を含む文書を検索す
るための索引を、この索引の見出しとして登録される各
索引語に、この索引語を含んでいる前記登録文書の数で
ある文書頻度、前記索引語を含む文書の文書識別子、前
記索引語の前記各登録文書内での出現回数である文書内
頻度および前記索引語の前記各登録文書内での出現位置
の各情報である転置リストを対応付けて記憶している索
引記憶手段と、前記登録文書を前記索引語に分割する文
書分割手段と、与えられた検索条件中の検索語を前記索
引語に分割し、また、前記検索語中に前記索引語が1つ
も含まれていないときは該当文書がない旨を示す空文書
集合を作成する検索語分割手段と、前記検索条件を解析
して、この検索条件から、前記検索語分割手段が取得し
た前記索引語と前記空文書集合とのうちの少なくとも一
方を演算子で合成した検索条件木を生成する検索条件解
析手段と、この検索条件木に基づき、前記索引から前記
索引語に関する前記情報を取得して検索結果合成処理を
実行し検索結果を得る検索条件評価手段とを備え、前記
索引は、前記索引語ごとの前記転置リストを文字コード
順にソートしてファイルに格納しているものである。
【0104】したがって、索引語と同様、文書頻度、文
書識別子、文書内頻度および出現位置のデータである転
置リストも文字コード順にソートしているので、検索時
にこれらのデータを読み出すときに、読み出すデータの
位置を近くして、検索処理を高速化できる。
【0105】請求項50に記載の発明は、電子化された
複数の登録文書中から所望の検索語を含む文書を検索す
るための索引を、この索引の見出しとして登録される各
索引語に、この索引語を含んでいる前記登録文書の数で
ある文書頻度、前記索引語を含む文書の文書識別子、前
記索引語の前記各登録文書内での出現回数である文書内
頻度および前記索引語の前記各登録文書内での出現位置
の各情報である転置リストを対応付けて記憶している索
引記憶手段と、前記登録文書を前記索引語に分割する文
書分割手段と、与えられた検索条件中の検索語を前記索
引語に分割し、また、前記検索語中に前記索引語が1つ
も含まれていないときは該当文書がない旨を示す空文書
集合を作成する検索語分割手段と、前記検索条件を解析
して、この検索条件から、前記検索語分割手段が取得し
た前記索引語と前記空文書集合とのうちの少なくとも一
方を演算子で合成した検索条件木を生成する検索条件解
析手段と、この検索条件木に基づき、前記索引から前記
索引語に関する前記情報を取得して検索結果合成処理を
実行し検索結果を得る検索条件評価手段とを備え、前記
索引は、固定長のブロックであるページをファイルの読
み書きの単位としていて、前記転置リストの大きさが前
記ページの大きさより所定程度小さいときは1つのペー
ジに1つ以上の転置リストを格納し、前記転置リストの
大きさが前記ページより大きいときは1つの転置リスト
を複数のページに格納しているものである。
【0106】したがって、索引において転置リストを大
きさに合わせてページ単位に管理するので、検索処理を
高速化することができる。
【0107】請求項51に記載の発明は、請求項45〜
48のいずれかに記載の発明において、固定長のブロッ
クであるページをファイルの読み書きの単位としてい
て、前記転置リストの大きさが前記ページの大きさより
所定程度小さいときは1つのページに1つ以上の転置リ
ストを格納し、前記転置リストの大きさが前記ページよ
り大きいときは1つの転置リストを複数のページに格納
しているものであって、前記複数のページに格納される
転置リストは、文書頻度、文書識別子およびページの管
理情報を格納するページであるヘッダーページと、文書
内頻度、出現位置および文書内頻度出現位置表現ビット
数もしくは出現位置表現ビット数を格納する文書内頻度
出現ページとにページを分けているものである。
【0108】したがって、索引に格納するデータを、そ
の登録、検索処理に合わせて配置するので、登録あるい
は検索処理を高速化することができる。
【0109】請求項52に記載の発明は、請求項51に
記載の発明において、文書識別子は、1つの文書識別子
に対応するデータがページをまたがないものである。
【0110】したがって、登録あるいは検索処理を高速
化することができる。
【0111】請求項53に記載の発明は、請求項51ま
たは52に記載の発明において、文書識別子は複数ペー
ジにまたがって格納されていて、文書識別子ページに格
納しきれない複数の文書識別子の登録順の終わりの1つ
以上の文書識別子はヘッダーページに格納されているも
のである。
【0112】したがって、文書登録時に、登録順の終わ
りの1つ以上の文書識別子を格納するのに、新たな文書
識別子ページを読み込み、書き込む必要がなくなり、登
録処理を高速化することができる。
【0113】請求項54に記載の発明は、請求項51ま
たは52に記載の発明において、文書識別子は複数の文
書識別子ページにまたがって格納されていて、この文書
識別子ページの管理情報である文書識別子ページ索引に
文書識別子ページのページ番号と各ページの先頭に記録
された文書識別子とを記録しているものである。
【0114】したがって、必要な文書識別子のデータが
格納された文書識別子ページのみにアクセスすればよい
ので、検索処理を高速化することができる。
【0115】請求項55に記載の発明は、請求項54に
記載の発明において、文書識別子ページ索引には、文書
識別子ページの各ページの末尾に記録された文書識別子
を記録しているものである。
【0116】したがって、文書識別子ページ索引を参照
するだけで、特定の文書識別子の文書に関してはデータ
が存在しないことを確認することも可能となるので、検
索処理を高速化することができる。
【0117】請求項56に記載の発明は、請求項51ま
たは52に記載の発明において、文書識別子をページの
サイズより小さな固定長ブロックである文書識別子ブロ
ックに分割して格納し、文書識別子ブロックごとにその
はじめの文書の文書識別子は前の文書識別子との差分を
とらずに格納し、文書内頻度、出現位置および文書内頻
度出現位表現ビット数もしくは出現位置表現ビット数が
ある場合には前記文書内頻度出現位表現ビット数または
出現位置表現ビット数は文書識別子ブロックと同じ文書
の情報を格納するブロックである文書内頻度出現位置ブ
ロックに分割して格納している。
【0118】したがって、所望の文書識別子、位置情報
が簡単に得られるので、検索処理を高速化することがで
きる。
【0119】請求項57に記載の発明は、コンピュータ
で読取可能なプログラムを記憶していて、このプログラ
ムは、コンピュータに読み取られることにより、与えら
れた検索条件に従って、電子化されて所定の記憶装置に
登録されている複数の文書中から所望の検索語を含む文
書の検索を前記コンピュータに実行可能とするものであ
り、この検索の実行では、電子化された複数の登録文書
中から所望の検索語を含む文書を検索するための索引
を、この索引の見出しとして登録される各索引語に、こ
の索引語を含んでいる前記登録文書の数である文書頻
度、前記索引語を含む文書の文書識別子、前記索引語の
前記各登録文書内での出現回数である文書内頻度および
前記索引語の前記各登録文書内での出現位置の各情報を
対応付けて記憶して、前記登録文書を前記索引語に分割
し、与えられた検索条件中の検索語を前記索引語に分割
し、また、前記検索語中に前記索引語が1つも含まれて
いないときは該当文書がない旨を示す空文書集合を作成
し、前記検索条件を解析して、この検索条件から、取得
した前記索引語と前記空文書集合とのうちの少なくとも
一方を演算子で合成した検索条件木を生成し、この検索
条件木に基づき、前記索引から前記索引語に関する前記
情報を取得して検索結果合成処理を実行し検索結果を得
るものであり、nを1以上の整数としたときに、前記文
書分割手段は前記登録文書をn文字の連鎖である前記索
引語に分割し、前記検索語分割手段は前記検索語を覆う
1つ以上のn文字連鎖である前記索引語に分割し、前記
検索条件解析手段は前記検索語が2つ以上の前記索引語
に分割されるときはこの複数の索引語の出現位置間の距
離を指定する位置演算子で合成するものである記憶媒
体。
【0120】したがって、索引語は一律にn文字の連鎖
とされるので、膨大な単語辞書を必要とする形態素解析
を用いる手法と比較すると、単語辞書の管理などの手間
が省ける。
【0121】請求項58に記載の発明は、コンピュータ
で読取可能なプログラムを記憶していて、このプログラ
ムは、コンピュータに読み取られることにより、与えら
れた検索条件に従って、電子化されて所定の記憶装置に
登録されている複数の文書中から所望の検索語を含む文
書の検索を前記コンピュータに実行可能とするものであ
り、この検索の実行では、電子化された複数の登録文書
中から所望の検索語を含む文書を検索するための索引
を、この索引の見出しとして登録される各索引語に、こ
の索引語を含んでいる前記登録文書の数である文書頻
度、前記索引語を含む文書の文書識別子、前記索引語の
前記各登録文書内での出現回数である文書内頻度および
前記索引語の前記各登録文書内での出現位置の各情報を
対応付けて記憶して、前記登録文書を前記索引語に分割
し、与えられた検索条件中の検索語を前記索引語に分割
し、また、前記検索語中に前記索引語が1つも含まれて
いないときは該当文書がない旨を示す空文書集合を作成
し、前記検索条件を解析して、この検索条件から、取得
した前記索引語と前記空文書集合とのうちの少なくとも
一方を演算子で合成した検索条件木を生成し、この検索
条件木に基づき、前記索引から前記索引語に関する前記
情報を取得して検索結果合成処理を実行し検索結果を得
るものであり、前記分割で得た複数の索引語のうち前記
検索語を覆う他の索引語に包含されるものは除外するも
のであり、前記検索語が2つ以上の前記索引語に分割さ
れるときはこの複数の索引語の出現位置間の距離を指定
する位置演算子で合成するものである記憶媒体。
【0122】したがって、請求項57に記載の発明に比
較して、検索語を検索向きに索引語に分割して、検索処
理を高速化することができる。
【0123】請求項59に記載の発明は、コンピュータ
で読取可能なプログラムを記憶していて、このプログラ
ムは、コンピュータに読み取られることにより、与えら
れた検索条件に従って、電子化されて所定の記憶装置に
登録されている複数の文書中から所望の検索語を含む文
書の検索を前記コンピュータに実行可能とするものであ
り、この検索の実行では、電子化された複数の登録文書
中から所望の検索語を含む文書を検索するための索引
を、この索引の見出しとして登録される各索引語に、こ
の索引語を含んでいる前記登録文書の数である文書頻
度、前記索引語を含む文書の文書識別子、前記索引語の
前記各登録文書内での出現回数である文書内頻度および
前記索引語の前記各登録文書内での出現位置の各情報を
対応付けて記憶して、前記登録文書を前記索引語に分割
し、与えられた検索条件中の検索語を前記索引語に分割
し、また、前記検索語中に前記索引語が1つも含まれて
いないときは該当文書がない旨を示す空文書集合を作成
し、前記検索条件を解析して、この検索条件から、取得
した前記索引語と前記空文書集合とのうちの少なくとも
一方を演算子で合成した検索条件木を生成し、この検索
条件木に基づき、前記索引から前記索引語に関する前記
情報を取得して検索結果合成処理を実行し検索結果を得
るものであり、前記検索語を2つ以上の前記索引語に分
割する場合は、これら複数の索引語を複数の検索結果の
積集合をとる積集合演算子で合成した条件木である候補
決定用条件木と、前記複数の索引語から検索語を覆う最
小個数のものを選択してそれを出現位置間の距離を指定
する位置演算子で合成した条件木である詳細判定用条件
木とを作成し、まず前記候補決定用条件木の前記検索結
果合成処理を実行して前記複数の登録文書から該当文書
を検索し、次に、この検索後の登録文書を対象に前記詳
細判定用条件木の前記検索結果合成処理を実行して前記
検索結果を得るものである記憶媒体。
【0124】したがって、詳細判定用条件木の検索結果
合成処理に先立って、候補決定用条件木の検索結果合成
処理を実行して対象となる文書に絞りをかけることによ
り、文字位置の突き合せの処理を低減して、検索処理の
高速化を図ることができる。
【0125】請求項60に記載の発明は、コンピュータ
で読取可能なプログラムを記憶していて、このプログラ
ムは、コンピュータに読み取られることにより、与えら
れた検索条件に従って、電子化されて所定の記憶装置に
登録されている複数の文書中から所望の検索語を含む文
書の検索を前記コンピュータに実行可能とするものであ
り、この検索の実行では、電子化された複数の登録文書
中から所望の検索語を含む文書を検索するための索引
を、この索引の見出しとして登録される各索引語に、こ
の索引語を含んでいる前記登録文書の数である文書頻
度、前記索引語を含む文書の文書識別子、前記索引語の
前記各登録文書内での出現回数である文書内頻度および
前記索引語の前記各登録文書内での出現位置の各情報を
対応付けて記憶して、前記登録文書を前記索引語に分割
し、与えられた検索条件中の検索語を前記索引語に分割
し、また、前記検索語中に前記索引語が1つも含まれて
いないときは該当文書がない旨を示す空文書集合を作成
し、前記検索条件を解析して、この検索条件から、取得
した前記索引語と前記空文書集合とのうちの少なくとも
一方を演算子で合成した検索条件木を生成し、この検索
条件木に基づき、前記索引から前記索引語に関する前記
情報を取得して検索結果合成処理を実行し検索結果を得
るものであり、前記検索語を2つ以上の前記索引語に分
割する場合は、これら複数の索引語を複数の検索結果の
積集合をとる積集合演算子で合成した条件木である候補
決定用条件木と、前記複数の索引語から前記検索語を覆
いかつ索引語ごとの前記文書頻度の合計が最小となるも
のを選択してそれを出現位置間の距離を指定する位置演
算子で合成した条件木である詳細判定用条件木とを作成
し、まず前記候補決定用条件木の前記検索結果合成処理
を実行して前記複数の登録文書から該当文書を検索し、
次に、この検索後の登録文書を対象に前記詳細判定用条
件木の前記検索結果合成処理を実行して前記検索結果を
得るものである記憶媒体。
【0126】したがって、詳細判定用条件木の検索結果
合成処理に先立って、候補決定用条件木の検索結果合成
処理を実行して対象となる文書に絞りをかけることによ
り、文字位置の突き合せの処理を低減して、検索処理の
高速化を図ることができる。
【0127】請求項61に記載の発明は、コンピュータ
で読取可能なプログラムを記憶していて、このプログラ
ムは、コンピュータに読み取られることにより、与えら
れた検索条件に従って、電子化されて所定の記憶装置に
登録されている複数の文書中から所望の検索語を含む文
書の検索を前記コンピュータに実行可能とするものであ
り、この検索の実行では、電子化された複数の登録文書
中から所望の検索語を含む文書を検索するための索引
を、この索引の見出しとして登録される各索引語に、こ
の索引語を含んでいる前記登録文書の数である文書頻
度、前記索引語を含む文書の文書識別子、前記索引語の
前記各登録文書内での出現回数である文書内頻度および
前記索引語の前記各登録文書内での出現位置の各情報を
対応付けて記憶して、前記登録文書を前記索引語に分割
し、与えられた検索条件中の検索語を前記索引語に分割
し、また、前記検索語中に前記索引語が1つも含まれて
いないときは該当文書がない旨を示す空文書集合を作成
し、前記検索条件を解析して、この検索条件から、取得
した前記索引語と前記空文書集合とのうちの少なくとも
一方を演算子で合成した検索条件木を生成し、この検索
条件木に基づき、前記索引から前記索引語に関する前記
情報を取得して検索結果合成処理を実行し検索結果を得
るものであり、前記索引は、前記索引語ごとに、前記各
文書識別子は前の文書識別子の値との差分を可変長符号
で表現したものであり、前記文書内頻度は可変長符号で
表現されたものであり、前記各出現位置は文書ごとの前
の出現位置の値との差分を可変長符号で表現したもので
ある記憶媒体。
【0128】したがって、索引に記録する情報を圧縮し
て索引のデータ量を小さくすることができる。
【0129】請求項62に記載の発明は、コンピュータ
で読取可能なプログラムを記憶していて、このプログラ
ムは、コンピュータに読み取られることにより、与えら
れた検索条件に従って、電子化されて所定の記憶装置に
登録されている複数の文書中から所望の検索語を含む文
書の検索を前記コンピュータに実行可能とするものであ
り、この検索の実行では、電子化された複数の登録文書
中から所望の検索語を含む文書を検索するための索引
を、この索引の見出しとして登録される各索引語に、こ
の索引語を含んでいる前記登録文書の数である文書頻
度、前記索引語を含む文書の文書識別子、前記索引語の
前記各登録文書内での出現回数である文書内頻度および
前記索引語の前記各登録文書内での出現位置の各情報を
対応付けて記憶して、前記登録文書を前記索引語に分割
し、与えられた検索条件中の検索語を前記索引語に分割
し、また、前記検索語中に前記索引語が1つも含まれて
いないときは該当文書がない旨を示す空文書集合を作成
し、前記検索条件を解析して、この検索条件から、取得
した前記索引語と前記空文書集合とのうちの少なくとも
一方を演算子で合成した検索条件木を生成し、この検索
条件木に基づき、前記索引から前記索引語に関する前記
情報を取得して検索結果合成処理を実行し検索結果を得
るものであり、前記索引は、前記索引語ごとの前記転置
リストを文字コード順にソートしてファイルに格納して
いるものである記憶媒体。
【0130】したがって、索引語と同様、文書頻度、文
書識別子、文書内頻度および出現位置のデータである転
置リストも文字コード順にソートしているので、検索時
にこれらのデータを読み出すときに、読み出すデータの
位置を近くして、検索処理を高速化できる。
【0131】請求項63に記載の発明は、コンピュータ
で読取可能なプログラムを記憶していて、このプログラ
ムは、コンピュータに読み取られることにより、与えら
れた検索条件に従って、電子化されて所定の記憶装置に
登録されている複数の文書中から所望の検索語を含む文
書の検索を前記コンピュータに実行可能とするものであ
り、この検索の実行では、電子化された複数の登録文書
中から所望の検索語を含む文書を検索するための索引
を、この索引の見出しとして登録される各索引語に、こ
の索引語を含んでいる前記登録文書の数である文書頻
度、前記索引語を含む文書の文書識別子、前記索引語の
前記各登録文書内での出現回数である文書内頻度および
前記索引語の前記各登録文書内での出現位置の各情報を
対応付けて記憶して、前記登録文書を前記索引語に分割
し、与えられた検索条件中の検索語を前記索引語に分割
し、また、前記検索語中に前記索引語が1つも含まれて
いないときは該当文書がない旨を示す空文書集合を作成
し、前記検索条件を解析して、この検索条件から、取得
した前記索引語と前記空文書集合とのうちの少なくとも
一方を演算子で合成した検索条件木を生成し、この検索
条件木に基づき、前記索引から前記索引語に関する前記
情報を取得して検索結果合成処理を実行し検索結果を得
るものであり、前記索引は、固定長のブロックであるペ
ージをファイルの読み書きの単位としていて、前記転置
リストの大きさが前記ページの大きさより所定程度小さ
いときは1つのページに複数の転置リストを格納し、前
記転置リストの大きさが前記ページより大きいときは1
つの転置リストを複数のページに格納しているものであ
る記憶媒体。
【0132】したがって、索引において転置リストを大
きさに合わせてページ単位に管理するので、検索処理を
高速化することができる。
【0133】
【発明の実施の形態】[発明の実施の形態1]図1は、
この発明の実施の形態1にかかる電子化文書検索システ
ム1のシステム構成の概略を示すブロック図である。こ
の電子化文書検索システム1は、同図に示すように、例
えば、クライアント2と、サーバ3とを通信回線4で接
続したクライアント/サーバシステムとして実施するこ
とができる。
【0134】サーバ3は、その外部記憶に、電子化文書
検索プログラムを記憶している。また、多数の電子化さ
れた文書をデータベースにして登録し、さらに、この文
書から所望の検索語を含んでいる文書を検索する索引と
なる索引テーブルを登録している(これにより、この発
明の文書登録手段、索引記憶手段を実現している)。前
記電子化文書検索プログラム、前記データベースのフォ
ーマット、前記索引テーブルなどは、フロッピーディス
ク、光ディスク、光磁気ディスクなどの記憶媒体(この
発明の記憶媒体を実現するものである)に記憶されてい
たものを、サーバ3が読み取って外部記憶に格納したも
のである。そして、この外部記憶に記憶されている、電
子化文書検索プログラム、データベース、索引テーブル
により、以下に説明する各種の処理を実現している。
【0135】クライアント2は、文書検索の検索条件を
入力する入力装置や、この検索の結果をディスプレイに
表示したりプリンタにプリントアウトするための出力装
置として機能する。
【0136】図2は、前記索引テーブルのデータ構造の
一例を示す表である。この索引テーブル11は、アドレ
ス12と、索引語13と、この索引語13が出現する文
書の識別子14と、この索引語13が出現する文書中で
の索引語13の出現位置15と、索引登録の際に識別子
14の数からわかる索引語13が出現する文書数16と
が対応付けて記憶されている。
【0137】サーバ3では、クライアント2から文書検
索の要求を受け付け、受け付けた検索条件を解析して、
その内容に従い、索引テーブル11に対し様々に索引照
合を行なう。すなわち、検索語と索引語13の照合、索
引語13に対応する識別子14の照会、索引語13に対
応する出現位置15の照会のうち、1つまたは複数の処
理を個別にまたは一度に行なうことができる(これによ
り、この発明の索引照合手段を実現している)。
【0138】そして、この索引照合により、クライアン
ト2から受け付けた検索語を覆う1または複数の索引語
13を取得する。この検索語が1つの索引語13で覆え
るときは、当該索引語13に対応する識別子14を照会
し、その識別子14の文書の表示を文書検索結果として
クライアント2に返す。例えば、サーバ3が受け付けた
検索語が“原子力”で、この“原子力”がそのまま索引
語13として索引テーブル11に登録されている場合で
ある。
【0139】検索語が複数の索引語13でしか覆えない
ときも、その複数の索引語13の各々を新たな検索語と
して、索引照合により、この各検索語が出現する文書の
文書数16を取得することで(これにより、この発明の
中間検索手段を実現している)、この文書数16、すな
わち文書頻度を見積もる(これにより、この発明の文書
頻度見積手段を実現している)。
【0140】そして、この場合は、図3に示すように、
サーバ3が受け付けた検索条件を、新たな2つの検索語
の各々についての索引照合による検索を下位ノード21
に、この両下位ノード21の検索結果の比較による、新
たな両検索語の位置条件で限定する両下位ノード21の
合成処理条件24を上位ノード22とする、2進木の木
構造23の複合検索に変換する(図3(a))。新たな検
索語が3つ以上あるときは、2進木を階層的に並べて、
2進木の木構造23に変換する(図3(b))(これによ
り、この発明の第1検索条件変換手段を実現してい
る)。図3(a)は、受け付けた検索語が“原子力発電”
であるときに、この検索語を覆う索引語13が、“原子
力”、“発電”であるときの例であり、図3(b)は、受
け付けた検索語が“原子力発電”であるときに、この検
索語を覆う索引語13が、“原子力”、“発電”、“設
備”であるときの例である。
【0141】そして、この変換後の検索条件に従い、上
位ノード22の処理を行なう。すなわち、索引照合によ
り、新たな検索語の各々の識別子14と出現位置15の
情報を取得して比較し、新たな検索語同士で同一識別子
14があるときに、その識別子14に対応する文書中で
新たな検索語の出現位置15を比較して、上位ノード2
2の位置条件に合致するか否かを判断し、すべての上位
ノード22で合致する文書の表示を検索結果としてクラ
イアント2に出力する。この出現位置15の比較は、新
たな検索語のうち、文書頻度が小さいものから順に行な
う(これにより、この発明の複合検索手段を実現してい
る)。すなわち、図3(b)の例で、“原子力”、“発
電”、“設備”の順に文書頻度が小さいときは、まず、
“原子力”が出現する文書の中で“発電”も出現する文
書に限定し、この文書の中で、文書中の“原子力”と
“発電”の出現位置が下層の上位ノード22の位置条件
に合致するか否かを判断する。そして、合致するものが
ある文書の中で“設備”も出現する文書に限定し、この
文書の中で上層の上位ノード22の位置条件に合致する
か否かを判断して、最終的な検索結果を取得する。
【0142】このように、下位ノード21の各々の文書
頻度を見積ることで、検索条件評価の中間結果を得られ
れば、文書頻度の小さい順に評価を行なうことで、この
中間結果を早めにしぼり込めるので、文書検索処理を従
来より高速化することができる。
【0143】また、この場合に、図3に示すような木構
造23の2進木を作る際に、与えられた検索語を覆う索
引語13の、検索語の中での順番どおりに2進木の下位
ノード21を組み合わせるのではなく、文書頻度の小さ
い下位ノード21の順に2進木に変換し、この変換によ
り文書頻度の小さい下位ノード21ほど木構造23の下
層となるようにしている(これにより、この発明の第1
検索条件変換手段を実現している)。これにより、より
下層でより末端ノードに近いほど、文書頻度の小さい下
位ノード21となるので、さらに中間結果を早めにしぼ
り込むことができ、さらに文書検索処理を高速化するこ
とができる。
【0144】与えられた検索語が索引登録されている索
引語13で覆うことができないときは、検索結果は必ず
空になる。このようなときは、2進木に変換するのでは
なく、検索条件の評価の際には直ちに空の検索結果を返
す末端ノードに変換する(これにより、この発明の第1
検索条件変換手段を実現している)。
【0145】よって、検索条件の評価の際に直ちに空の
検索結果を返して、検索処理を高速化することができ
る。
【0146】以下では、合成処理条件24の具体的内
容、様々な検索条件への対応などについて説明する。
【0147】1.新たな検索語間の距離を合成処理条件
24とする場合について 以下では、木構造23の2進木の構造を、“合成処理条
件(合成される条件1、合成される条件2、…、合成さ
れる条件m)”の形式で記載する。
【0148】最初の例は、新たな両検索語の位置条件
を、“検索条件中の検索語を覆う2つの索引語(新たな
2つの検索語)q1,q2の先頭がn文字分ずれてい
て、出現順が一定、すなわち正順序であって逆順序でな
いこと”とするもので(これにより、この発明の第1検
索条件変換手段を実現している)、この位置条件を、以
下では、“#distance〔n〕(q1,q2)”
と表記する。図3(b)の例では、図4に示すとおりとな
る。合成処理条件24による合成後の文書頻度は実際に
合成しないと不明であるが、近似を試みることはでき
る。検索条件qの文書頻度を“DF(q)”、q1とq
2とのうち小さい方の値をとることを、“min{q
1,q2}”と表記すると、“#distance
〔n〕(q1,q2)”の文書頻度は、 “0≦DF(#distance〔n〕(q1,q2)) ≦min{DF(q1),DF(q2)}” …… (1) となる。
【0149】そこで、(1)式の範囲内で、“DF(#
distance〔n〕(q1,q2))”の値を適当
な値に近似すればよい。例えば、上限値である、“mi
n{DF(q1),DF(q2)}”に近似することが
できる。
【0150】このように、新たな2つの検索語の出現位
置の距離を上位ノードの位置条件とし、この位置条件を
文書頻度の小さい方から評価することにより、不要な索
引照合を省いて、文書検索速度を向上することができ
る。
【0151】2.検索条件に複数の検索語の論理演算を
含む場合について 複数の検索語の積集合や和集合を意味する集合演算(論
理演算)も、一般的に文書検索に利用されている。そこ
で、以下では、このような論理演算を含んでいる場合の
処理について説明する。
【0152】このような場合には、各検索語を覆う索引
語の各々を検索語として見積もった文書頻度に基づい
て、各検索語の検索を下位ノード21に、この下位ノー
ドの前記論理演算を合成処理条件24として上位ノード
22にする複合検索の木構造23に変換する(これによ
り、この発明の第2検索条件変換手段を実現してい
る)。
【0153】(1)複数の検索語が積集合で結ばれてい
る場合について 複数の検索語q1,q2,……の積集合を“#and
(q1,q2,……)”で表記することにすると、この
“#and(q1,q2,……)”を含む検索条件の解
析は図5に示す例のようになる。
【0154】この積集合による合成の場合も、“#di
stance〔n〕(q1,q2)”の場合と同様に、
文書頻度の小さい方から評価していった方が速くしぼり
込むことができるので、文書検索処理を高速化すること
ができる。
【0155】しかし、“#distance〔n〕(q
1,q2)”が2進木であるのに対し、“#and(q
1,q2,……)”は多進木であるので、検索条件評価
の途中で見積り文書頻度を比較するのは非効率である。
そこで、予め見積り文書頻度の小さい順に並べなおす、
すなわち、文書頻度の小さい下位ノード21の順に木構
造23に変換し、この変換により文書頻度の小さい下位
ノード21ほど木構造23の下層となるようにする(こ
れにより、この発明の第2検索条件変換手段を実現して
いる)。これにより、早めに結果をしぼり込むことがで
きるので、文書検索速度を高速化することができる。例
えば、検索条件に、“#and(カラー,イメージ,プ
リンタ)”があり、“DF(イメージ)<DF(カラ
ー)<DF(プリンタ)”であるときは、“#and
(イメージ,カラー,プリンタ)”と変換する。
【0156】“#and(q1,q2,……)”で合成
される条件に、“#and(q1,q2,……)”を含
むような入れ子構造になっているときは、その入れ子構
造を解いて平坦化しても論理演算の意味に変動はない。
そして、入れ子構造のままで見積り文書頻度による並べ
替えを行なうと、並べ替えの範囲が不必要に狭くなり、
効率が悪くなることがある。例えば、“DF(q2)<
DF(q3)<DF(q4)<DF(q1)”である場
合、“#and(#and(q1,q2),q3,q
4)”に、入れ子構造のまま並べ替えを施すと、“#a
nd(#and(q2,q1),q3,q4)”となる
が、入れ子構造を解いて並べ替えると、“#and(q
2,q3,q4,q1)”となり、この方が早期のしぼ
り込みを期待でき、文書検索を高速化することができる
(これにより、この発明の第2検索条件変換手段を実現
している)。例えば、“#and(#and(カラー,
イメージ),プリンタ)”で、“DF(イメージ)<D
F(カラー)<DF(プリンタ)”であるときは、入れ
子構造を解いて、“#and(カラー,イメージ,プリ
ンタ)”とし、並べ替えを行なって、“#and(イメ
ージ,カラー,プリンタ)”に変換する。また、末端の
ノードが文書頻度が正確であるのに対して、中間ノード
の文書頻度は近似値であるから、合成処理演算の階層は
少ない方が見積り誤差が少なくなるという利点もある。
【0157】また、積集合の場合、合成される下位ノー
ド21に1つでも空の検索結果を返すものがあれば合成
の結果も空であるから、2進木の木構造23に変換せ
ず、合成処理条件24の際には直ちに空の検索結果を返
す末端ノードに変換する。これにより、文書検索処理を
高速化することができる(これにより、この発明の第2
検索条件変換手段を実現している)。
【0158】なお、積集合の文書頻度は、登録されてい
る全文書数をNとすると、 min{DF(q1)+DF(q2)−N,0} ≦DF(#and(q1,q2)) ≦min{DF(q1),DF(q2)} …… (2) となる。
【0159】この範囲を適当な値で近似すれば、文書頻
度の見積りを行なえる。例えば、変位の上限である“m
in{DF(q1),DF(q2)}”で近似すること
ができる。
【0160】(2)複数の検索語が和集合で結ばれてい
る場合について 複数の検索語q1,q2,……の和集合を“#or(q
1,q2,……)”で表記することにすると、この和集
合による合成の場合は、“#and(q1,q2,…
…)”の場合とは逆に、文書頻度の大きい方から評価し
ていった方が速くしぼり込めて、文書検索処理を高速化
することができる(これにより、この発明の第2検索条
件変換手段を実現している)。
【0161】そして、“#and(q1,q2,…
…)”も多進木であるので、検索条件評価の途中で見積
り文書頻度を比較するのは非効率である。そこで、予め
見積り文書頻度の大きい順に並べなおす、すなわち、文
書頻度の大きい下位ノード21の順に木構造23に変換
していき、この変換により文書頻度の大きい下位ノード
21ほど木構造23の下層となるようにする(これによ
り、この発明の第2検索条件変換手段を実現してい
る)。これにより、早めに結果をしぼり込むことができ
るので、文書検索速度を高速化することができる。例え
ば、検索条件に、“#or(パルス変調,位置変調,P
PM)”があり、“DF(PPM)<DF(パルス)<
DF(位置変調)”であるときは、“#or(位置変
調,パルス,PPM)”と変換する。
【0162】また、積集合の場合と同様、和集合の場合
も入れ子構造を有するときは、この入れ子構造を解いて
からの方が、見積り文書頻度による処理が効果的になる
(これにより、この発明の第2検索条件変換手段を実現
している)。例えば、検索条件に、“#or(#or
(パルス変調,位置変調),PPM)”があるときに、
“DF(PPM)<DF(パルス変調)<DF(位置変
調)”であるときは、入れ子構造を解いて“#or(パ
ルス変調,位置変調,PPM)”としてから、“#or
(位置変調,パルス変調,PPM)”に並べ替える。
【0163】なお、“#or(q1,q2,……)”の
文書頻度は、登録されている全文書数をNとすると、 max{DF(q1),DF(q2)−N,0} ≦DF(#or(q1,q2)) ≦min{DF(q1)+DF(q2),N} …… (3) となる。
【0164】そして、この範囲を適当な値で近似すれ
ば、文書頻度の見積りを行なえる。例えば、範囲の上限
である、限界和“min{DF(q1)+DF(q
2),N}”で近似することができる。算術和“DF
(q1)+DF(q2)”がNを超えるような検索は、
大量の文書から必要な文書を見つけだそうとしている以
上、実際にはめったにないと考えられるので、算術和を
用いても実用上大差ない。
【0165】(3)複数の検索語が差集合で結ばれてい
る場合について 複数の検索語q1,q2,……,qmがあって、検索語
q1を含んでいるが、検索語q2,……,qmのいずれ
も含まないものを検索する、差集合による合成の場合
を、“#and−not(q1,q2,……,qm)”
と表記すると、これは“#or(q1,q2,……)”
の検索結果の補集合と、q1の検索結果との積集合を取
る論理演算と同義である。そこで、第2項以下を見積り
文書頻度の大きい順に並べれば、早めに絞り込んで文書
検索処理を高速化することができる(これにより、この
発明の第2検索条件変換手段を実現している)。例え
ば、“#and−not(空乏層,化合物,GaAs,
InP)”が検索条件に含まれていて、“DF(GaA
s)<DF(InP)<DF(化合物)”であるとき
は、“#and−not(空乏層,化合物,InP,G
aAs)”と並べ替える。
【0166】また、第2項以下に和集合があるときは、
この和集合を解いてからの方が、見積り文書頻度による
処理が効果的である(これにより、この発明の第2検索
条件変換手段を実現している)。例えば、“#and−
not(空乏層,化合物,#or(GaAs,In
P))”が検索条件に含まれていて、“DF(GaA
s)<DF(InP)<DF(化合物)”であるとき
は、3項の和集合を解いて、“#and−not(空乏
層,化合物,InP,GaAs)”とした後、“#an
d−not(空乏層,化合物,InP,GaAs)”と
並べ替える。
【0167】さらに、差集合の第1項が空の検索結果を
返すときは、差集合も空になるので、差集合を直ちに空
の検索結果を返すノードに変換することで、文書検索処
理の高速化を図ることができる(これにより、この発明
の第2検索条件変換手段を実現している)。
【0168】なお、“#and−not(q1,q2,
……,qm)”の文書頻度は、 0≦DF(#and−not(q1,q2,……,qm)) ≦DF(q1) …… (4) となる。
【0169】この範囲で、適当な値で近似すれば、文書
頻度の見積りを行なうことができる。例えば、範囲の上
限である“DF(q1)”で近似することができる。
【0170】(4)2つの検索語の出現位置間の距離の
上限を指定する場合について 複数の検索語が共通に出現する文書というだけではな
く、関連して出現する文書を検索したいというユーザの
要望に応じて、近接演算に対応した文書検索システムも
用いられている。
【0171】近接演算の例として、出現位置間の距離の
上限を指定するものがあるが、2つの検索語q1,q2
の出現位置間の距離の上限をn字とする場合で、出現順
序を問わない場合を、“#window〔n〕(q1,
q2)”と表記することにする。このような場合は、索
引11に出現位置15の情報を含んでいるので、積集合
とみなした評価の後、位置条件による吟味を行なうこと
で容易に対応することができる。すなわち、各検索語q
1,q2の検索を下位ノード21に、この下位ノード2
1の積集合を上位ノード22にする複合検索の木構造2
3に変換し、この変換は文書頻度の小さい下位ノード2
1の順に2進木に変換し、文書頻度の小さい下位ノード
21ほど木構造23の下層となるように行なう(これに
より、この発明の第2検索条件変換手段を実現してい
る)。
【0172】“#window〔n〕(q1,q2)”
の場合も、積集合の場合と同様に、この見積り文書頻度
による並べ替えで処理を高速化することができるが、そ
れは、前記のように量検索語q1,q2の出現順序を考
慮しない場合に限られる。また、入れ子構造をとる場合
でも、この入れ子構造を外すと意味が異なってしまうの
で行なわない。
【0173】3.予備的評価について 前記した、“#distance〔n〕(q1,q
2)”や“#window〔n〕(q1,q2)”の評
価は、位置条件による吟味を必要とするため、位置条件
による吟味を伴わない評価に比べ、時間を要する。そこ
で、不要な位置条件吟味を削減することができれば、文
書検索処理を高速化することができる。“#and(#
distance〔3〕(原子力,発電),事故)”を
例にとると、“#distance〔3〕(原子力,発
電)”から評価していくことになるが、この場合、“事
故”を含まない文書に関しても“原子力”と“発電”の
位置条件吟味(この発明の例では、“原子力”と“発
電”が、この順に出現して、先頭が3文字ずれている
か、すなわち、隣接しているか否かを吟味)を行なうこ
ととなる。
【0174】そこで、“#distance〔n〕(q
1,q2)”や“#window〔n〕(q1,q
2)”を、“#and(q1,q2)”に置き換えた粗
い評価を予備的評価として行ない、これにより予め絞り
込みを行なって、無駄な位置条件吟味を削減して、文書
検索処理を高速化することができる。
【0175】すなわち、各検索語q1,q2の検索を下
位ノード21に、この下位ノード21の“#dista
nce〔n〕(q1,q2)”や“#window
〔n〕(q1,q2)”の位置条件を上位ノード22に
する複合検索の木構造23に変換する。そして、この変
換は文書頻度の小さい下位ノード21の順に2進木に変
換し、文書頻度の小さい下位ノード21ほど木構造23
の下層となるように行なう(これにより、この発明の第
1、第2予備変換手段を実現している)。そして、変換
後の木構造23での上位ノード22の処理を木構造23
中での最下位層から上位層に向けて順次実行して複合検
索の結果を作成し、上位ノード22の処理は各検索語q
1,q2間の出現位置の比較を文書頻度の小さいものか
ら順に行なう(これにより、この発明の第1、第2予備
検索手段を実現している)。あとは、この粗い評価によ
り限定された文書についてのみ、正確な評価を行なう
(これにより、この発明の複合検索手段を実現してい
る)。
【0176】4.全順序関係をもつ識別子14を用いる
場合について 検索条件の評価は、より具体的には、その条件を満たす
文書の識別子14のリストを得るための処理(これを
“retrieve()”と表記することにする)であ
る。識別子14としては、整数や文字列などの全順序関
係をもつものを用いるのが一般的であるので、識別子1
4の下限d0を与えて、その検索条件を満たす文書の識
別子14のうちでd0以上で最小のものを得る(以下、
“lower_bound(d0)”と表記する)。こ
れにより、“retrieve()”を得る処理は、
“lower_bound(d0)”を用いて実現する
ことができる。
【0177】索引11のデータを電子化文書検索システ
ム1の記憶装置間で転送する際の時間や索引11を格納
する記憶装置の資源の節約のために、通常は索引11は
圧縮されており、圧縮の方式にもよるが、多くの場合、
識別子14の順序に従って走査する方が、順序を無視し
てランダムに識別子14を変更しながら走査するより
も、索引照合がはるかに高速になる場合が多い。このよ
うな索引11(これにより、この発明の索引記憶手段を
実現している)に対して、索引語13であるωと、識別
子14の下限値d0を指定されれば、ωを含む識別子1
4のうちでd0以上で最小のものを得ることができる比
較的高速な索引照合が可能になる(これにより、この発
明の第1予備照合手段を実現している)。これにより、
索引語ωの索引照合に対応する検索条件の“lower
_bound(d0)”は簡単に得ることができる。
【0178】さらに、“lower_bound(d
0)”に与えられた識別子14の下限値d0と、得られ
た識別子14と、アドレス32と、索引語ωとを関連付
けて、図6に示すような履歴テーブル31として記録し
ておいて(これにより、この発明の第1予備照合記憶手
段を実現している)、これを参照することにより、索引
照合の回数を削減することができる。
【0179】例えば、“lower_bound(1
0)”が20であれば、“lower_bound(1
1)”も、“lower_bound(15)”も20
であるので、10以上20以下の下限値d0について
は、索引照合することなく、履歴テーブル31参照によ
り、20の値を返すことができる(これにより、この発
明の第1照合範囲指定手段を実現している)。なお、履
歴テーブル31の参照だけで得られたものは履歴テーブ
ル31に追加しない。
【0180】上位ノード22の合成処理においても、合
成処理条件24を満たす識別子14のうち、下限値d0
以上で最小のものを得て、索引語13、識別子14の下
限値d0、得られた識別子14を対応付けて履歴テーブ
ル31に記憶することで、この履歴テーブル31を参照
することにより下位ノード21の評価回数を削減するこ
とができる(これにより、この発明の第2予備照合手
段、第2予備照合記憶手段、第2照合範囲指定手段を実
現している)。
【0181】ただし、“lower_bound(d
0)”の履歴をすべて記憶しておくと、その履歴が膨大
になってしまう可能性がある。そこで、最新の一定数の
もののみに限定することが望ましい(これにより、この
発明の第1、第2予備照合記憶手段を実現している)。
この場合、古い履歴を記録から消してしまうために、無
駄な索引照合や、下位ノード21の評価が発生する場合
があるが、検索条件の評価の大部分は、“retrie
ve()”を得る処理から派生するものであり、“re
trieve()”の処理では、識別子14に関して1
回走査するだけなので、最新の一つだけを履歴に残して
おけば充分である。
【0182】[発明の実施の形態2]図7は、この発明
の実施の形態2にかかる電子化文書検索システム40の
概要を示す機能ブロック図である。
【0183】図7に示すように、この電子化文書検索シ
ステム40は、電子化された複数の登録文書中から所望
の検索語を含む文書を検索するための索引を記憶する索
引記憶手段41を備えている。この索引の見出しとして
登録される各索引語には、この索引語を含んでいる登録
文書の数である文書頻度、索引語を含む文書の文書識別
子、索引語の各登録文書内での出現回数である文書内頻
度および索引語の各登録文書内での出現位置の各情報を
対応付けて記憶している(以下では、これら索引語ごと
の一連のデータを「転置リスト」という)。
【0184】文書分割手段42は、登録文書を索引語に
分割する。検索語分割手段43は、与えられた検索条件
中の検索語を索引語に分割し、また、検索語中に索引語
が1つも含まれていないときは該当文書がない旨を示す
空文書集合を作成する。
【0185】検索条件解析手段44は、検索条件を解析
して、この検索条件から、検索語分割手段43が取得し
た索引語と空文書集合とのうちの少なくとも一方を演算
子で合成した検索条件木を生成する。
【0186】検索条件評価手段45は、検索条件木に基
づき、索引から索引語に関する情報を取得して検索結果
合成処理を実行し、検索結果を得る。
【0187】(1)nを1以上の整数としたときに、文
書分割手段42は登録文書を一律にn文字の連鎖である
索引語に分割する。これにより、膨大な単語辞書を必要
とする形態素解析を用いる手法と比較して、単語辞書の
管理などの手間を省くことができる。
【0188】すなわち、例えば、文書1=“あああ”、
文書2=“あいうえお”、文書3=“あいえ”、文書4
=“いう”を登録していたとすると、n=1なら索引に
は図8のような情報が記録されることになる。ここに、
各文書ごとの出現情報は{,}で囲まれた範囲がひとつ
の文書に対応していて、この{,}内の1番目のフィー
ルドが文書識別子、2番目のフィールドが文書内頻度、
3番目のフィールド(“(,)”で囲まれている)が出
現位置である。
【0189】検索条件が、検索語の単体で、あるいは、
複数の検索語をAND,ORなどの演算子により結合し
た形式で与えられた場合、まず検索語分割手段43が、
n文字連鎖で索引に記録されている索引語に分割する。
検索条件解析手段44は、検索語が1つの索引語になる
場合はその索引語のみからなる、検索語が2つ以上の索
引語に分割される場合にはそれらの索引語の出現位置間
の距離を指定する位置演算子で、それぞれ合成した検索
条件木を作成する。検索語を、検索語を覆う索引語に分
割できないときは、検索語分割手段43が空文書集合を
出力し、検索条件解析手段44が空文書集合のみからな
る検索条件木を作成する。
【0190】いま、“#distance〔x〕(A,
B)”で索引語Aと索引語Bが距離x文字にある文書を
検索することを指定するものとする。例えば、n=1
で、検索語が「あいう」であれば、検索語分割手段43
は検索語を3個の索引語「あ」「い」「う」に分割し、
検索条件解析手段44は、#distance〔2〕
(#distance〔1〕(あ,い),う)に相当す
る検索条件木を作成する。
【0191】そして、検索条件評価手段45は、「あ」
「い」「う」に関する転置リストを読み出して、これら
3つの索引語が同時に出現しており、かつ、「あ」
「い」の距離が1である場合の「あ」の出現位置と、
「う」の距離が2であるものを探し出す検索結果合成処
理を行なう。この場合、文書2のみがこれに該当してお
り、これが検索結果となる。
【0192】前記の場合に、nが2以上で、検索語がn
文字未満である場合も正しく検索できるようにするため
には、次のような処理を行なう。すなわち、検索語分割
手段43でm文字目(mは1以上で(n−m+1)以下
である整数)から検索語と一致するすべての索引語を索
引から取り出し、検索条件解析手段44で、検索語分割
手段43が取り出した複数の索引語を複数の検索結果の
和集合をとる和集合演算子で合成する。
【0193】例えば、前記の例で、n=2のときの索引
は図9に示すとおりである。m=1の場合に、検索語が
「あ」であれば、検索語分割手段43は「ああ」「あ
い」を出力し、検索条件解析手段44は、“#or(あ
あ,あい)”という検索条件木をつくる。ここで、“#
or(A,B)”は索引語Aを含む文書集合と、索引語
Bを含む文書集合の和集合を検索することを指定するも
のである。この場合には、前記の例で文書1,2,3が
検索結果となる。
【0194】nが2以上で、検索語がn文字以上である
場合、次のような処理を行なうことで、無駄な索引語の
処理を省いて検索処理を高速化することができる。
【0195】たとえば、検索語が「あいうえ」であれ
ば、前記の例で、“#distance〔2〕(#di
stance〔1〕(あい,いう),うえ)”が検索条
件木として作成される。しかし、“#distance
〔2〕(あい,うえ)”という検索条件木を満たす文書
は、必ず“#distance〔1〕(あい,いう)”
を満たしているので、無駄な位置のつき合わせ処理を行
なってしまう。そこで、このような場合は、検索語分割
手段43は検索語を覆う最小個数の索引語に分割して、
検索を効率化する。すなわち、この例であれば、検索語
からは「あい」「うえ」の2つの索引語だけに分割さ
れ、“#distance〔2〕(あい,うえ)”とい
う検索条件木が作成される。
【0196】また、この場合に、検索語がさらに長いと
きは最小個数の索引語に分割できる場合が複数存在する
ときがある。例えば、検索語が「あいうえお」であれ
ば、「あい」「うえ」「えお」にように分割すること
も、「あい」「いう」「えお」のように分割することも
できる。この場合に、検索語分割手段43は検索語を覆
う最小個数の各索引語の文書頻度の合計が最小となるよ
うに検索語を索引語に分割する。このように文書頻度を
低減して検索処理を高速化することができる。図9の索
引では、「いう」の文書頻度が2であるのに対し、「う
え」は1であるので、検索語分割手段43は「あい」
「うえ」「えお」のように検索語を分割することとな
る。
【0197】(2)前記の例では、文書分割手段42、
検索語分割手段43ともに、登録文書、検索語を一律に
n文字の連鎖に分割したが、文字列の分割手段として
は、文字種に応じて抽出するnを変化させたり、異なる
nに対する分割の結果を組み合わせたりすることも考え
られる。一例として、n=1とn=2の分割の結果を組
み合わせる場合を考えると、検索語「あいうえお」に対
しては「あ」「い」「う」「え」「お」「あい」「い
う」「うえ」「えお」が得られる。
【0198】このような場合に、検索語分割手段43が
検索語を分割して得た複数の索引語のうち、検索語を覆
う他の索引語に包含されるものは除外するようにするこ
とで、検索語を検索向きに索引語に分割して、検索処理
を高速化することができる。すなわち、前記の例で検索
語「あいうえお」に対しては、n=2のものに包含され
るn=1のものを除外した、「あい」「いう」「うえ」
「えお」が得られる。
【0199】この場合に、検索語分割手段43は検索語
を覆う最小個数の索引語に分割して、無駄な索引語の使
用を省いて検索処理の高速化を図る。また、最小個数の
索引語に分割できる場合が複数あるときは、検索語分割
手段43は検索語を覆う最小個数の各索引語の文書頻度
の合計が最小となるように検索語を索引語に分割して、
文書頻度を小さくして検索処理の高速化を図る。
【0200】(3)前記(1)(2)の手法では、検索
語が2つ以上の索引語に分割される場合には、位置演算
子で合成した検索条件のみを用いて検索を行なってい
る。しかし、この手法だと無駄な文字位置の突き合せ処
理を生じる可能性がある。例えば(1)の例で、検索語
「あいえお」を処理すると、索引語として「あい」「え
お」が得られ、例えば、文書2=“あいうえお”に関し
ては両索引語が出現しているものの、距離の条件を満た
していないということで、該当文書なしという検索結果
が得られる。しかし、検索語に含まれる索引語「いえ」
を考慮すれば、「あい」「いえ」「えお」を同時に含む
文書は存在しないので、索引語の文書中での出現位置を
調べることなく該当文書なしと判断することができる。
【0201】そこで、検索語分割手段43が検索語を2
つ以上の索引語に分割する場合は次のような処理を行な
ってもよい。すなわち、検索条件解析手段44は、検索
語の分割で得られた複数の索引語を複数の検索結果の積
集合をとる積集合演算子で合成した条件木である候補決
定用条件木と、複数の索引語から検索語を覆う最小個数
のものを選択してそれを出現位置間の距離を指定する位
置演算子で合成した条件木である詳細判定用条件木とを
作成する。そして、検索条件評価手段45は、まず候補
決定用条件木の検索結果合成処理を実行して複数の登録
文書から該当文書を検索し、次に、この検索後の登録文
書を対象に詳細判定用条件木の検索結果合成処理を実行
して検索結果を得るようにする。
【0202】これにより、詳細判定用条件木の検索結果
合成処理に先立って、候補決定用条件木の検索結果合成
処理を実行して対象となる文書に絞りをかけることによ
り、文字位置の突き合せの処理を低減して、検索処理の
高速化を図ることができる。
【0203】この場合に、詳細判定用条件木を、複数の
索引語から検索語を覆う最小個数のものを選択してそれ
を出現位置間の距離を指定する位置演算子で合成して作
成するのに代えて、複数の索引語から前記検索語を覆い
かつ索引語ごとの文書頻度の合計が最小となるものを選
択してそれを出現位置間の距離を指定する位置演算子で
合成して作成するようにしてもよい。
【0204】(4)文書識別子、文書内頻度、出現位置
などのデータは、通常、固定長(2あるいは4バイト)
で表現される。例えば、4バイトで表現することにする
と、図8の索引語「あ」のデータは、11*4=44バ
イト=1408ビットが必要となる。これに対し、各文
書識別子を前に出現している文書識別子の値との差分を
とることで表現すると、その値は一般に小さな値となる
ので、可変長符号を用いて表現すると索引を小型化でき
る。同様に、文書内頻度は、その値を直接、可変長符号
で表現し、出現位置は文書ごとに各出現位置の前の値と
の差分を可変長符号で表現することにより、索引を小型
化することができる。
【0205】たとえば、可変長符号としてγ符号(I.H.
witten著“Managing Gigabytes”,Van Nostrand Reinh
old,1994年,84頁参照)を用いることとすると、図8
の索引語「あ」の例で、文書識別子は、各々、1,2−
1=1,3−2=1となり、この3つの1を各々“0”
で表現できる。また、文書内頻度は、3,1,1を“1
01”“0”“0”で表現できる。さらに、出現位置
は、文書1での出現が、各々、1,2−1=1,3−2
=1となり、この3つの1を各々“0"で表現でき、文
書2,3での出現はそれぞれ“0”で表現できる。結
局、この場合の転置リストのデータは、{“0”,“1
01”,(“0”,“0”,“0”)},{“0”,
“0”,(“0”)},{“0”,“0”,
(“0”)}のように表現できるので、3*1+(3+
1+1)+(3*1+1+1)=13ビットのデータ量
ですむ。
【0206】しかしながら、このように圧縮した索引で
は、ある転置リストを処理するためには伸長処理が必要
となるので、検索処理を遅くする可能性がある。しか
も、検索語が「あ」であれば、検索処理においては出現
位置は必要ないにもかかわらず、索引が圧縮されている
と、その出現位置を伸長しなければ2番目以降の文書識
別子を得ることができない。
【0207】そこで、索引は、索引語ごとに、各文書識
別子と各文書内頻度および各出現位置とで格納する領域
を分けて、文書識別子だけを伸長処理すればよいように
して、検索処理を高速化することができる。
【0208】例えば、前記の例で、文書識別子を記録す
るデータを、{“0”},{“0”},{“0”}と
し、文書内頻度および出現位置のデータを、{“10
1”,(“0”,“0”,“0”)},{“0”,
(“0”)},{“0”,(“0”)}として分けて記
録する。
【0209】しかし、この場合に、特定の文書識別子の
文書に関して位置の突き合せを行なうときには、その文
書までの文書内頻度、出現位置を全て伸長処理しなけれ
ばならない。
【0210】そこで、索引語ごとの各文書ごとに対応し
て、文書頻度および出現位置を表現するのに必要なビッ
ト数である文書内頻度出現位置表現ビット数を可変長符
号で表現したデータを保持するようにする。これによ
り、文書内頻度出現位置表現ビット数を参照することに
より、必要とする文書の文書頻度、出現位置のデータが
どこにあるかがわかるので、不要な文書については文書
頻度、出現位置のデータを伸長する必要がなくなり、文
書頻度、出現位置を参照する場合に伸長するデータ量を
少なくして、検索処理を高速化することができる。
【0211】例えば、前記した図8に示した例で、索引
語「あ」に対する文書1の文書内頻度出現位置表現ビッ
ト数は6(γ符号で“11010”)、文書2,3の場
合はいずれも2(γ符号でいずれも“100”)なの
で、前記の文書内頻度、出現位置のデータは、{“11
010”,“101”,(“0”,“0”,
“0”)},{“100”,“0”,(“0”)},
{“100”,“0”,(“0”)}のように表現する
ことができる。この例で、3番目に位置する文書3に関
する文書内頻度、出現位置を参照したい場合、はじめの
2文書に関しては、文書内頻度出現位置表現ビット数の
みを伸長して、そのビット数だけシフトすることで、3
番目の文書に関する文書内頻度、出現位置を得るための
位置を求めることができる。
【0212】一方、このような処理では、文書内頻度出
現位置表現ビット数を記録するために索引が大型化する
とともに、文書内頻度、出現位置が必要な文書に関して
は、文書内頻度出現位置表現ビット数を伸長することが
余分な処理として発生する。そこで、文書内頻度が指定
された閾値以上である場合に限って出現位置を表現する
のに必要なビット数である出現位置表現ビット数を可変
長符号で表現したものを記録するようにする。例えば、
図8の前記の例で、閾値を2とすれば、文書内頻度が3
である文書1にのみ出現位置表現ビット数3(γ符号で
“101”)が記録され、文書内頻度、出現位置のデー
タは、{“101”,“101”,(“0”,“0”,
“0”)},{“0”,(“0”)},{“0”,
(“0”)}となる。ここで、先頭の文書1の{,}内
の2番目にある“101”が出現位置表現ビット数であ
る。このように、2番目に置いたのは、検索時には、ま
ず文書内頻度を伸長した後でないと出現位置ビット数が
記録されているのか否かが判定できないためである。
【0213】なお、文書内頻度出現位置表現ビット数、
出現位置表現ビット数は、前記の説明から明らかなよう
に、文書内頻度および出現位置を格納する領域内に格納
する。
【0214】(5)前記(1)の場合で、m=1であれ
ば、和集合演算子で結合される索引語は文字コード順に
ソートされたものである。これらに対応する転置リスト
が索引ファイルの近接した領域に格納されていれば、デ
ータの読み出しが高速化できるので、検索処理も高速に
なる。そこで、索引は、索引語ごとの転置リストを文字
コード順にソートしてファイルに格納している。
【0215】(6)新聞記事1年分のような大規模な文
書データベースを考えた場合、索引のファイルからのデ
ータの読み書きの効率化が重要である。ハードディスク
装置からのデータの読み書きは、適当な大きさの固定長
ブロック単位で行われるので、索引の読み出しも、この
ブロックの整数倍の固定長ブロックであるページ単位で
行なう。この場合、実際の文書における索引語の出現頻
度にはばらつきがあるため、各索引語の転置リストの大
きさにもばらつきがでる。
【0216】そこで、転置リストの大きさがページより
所定程度小さいものは、1つのページに1つ以上の転置
リストを同時に格納し、転置リストの大きさがページよ
り大きいものは複数のページを用いて格納する。このよ
うにすることで、小さな転置リストを効率的に格納で
き、また、転置リストの大きさの上限を取り払うことが
できる。
【0217】(7)次に、前記(4)の場合と(6)の
場合とを組み合わせるような手法について説明する。大
きな転置リストがあるような索引語のみからなる検索条
件を処理する場合、文書内頻度、出現位置のデータは不
要である。したがって、それらをファイルから読み出す
ことは無駄な処理となり、検索処理を遅くする。そこ
で、大きな配置リストを構成するページを、文書頻度、
文書識別子とページの管理情報を格納するヘッダーペー
ジと、必要であれば文書識別子を格納する文書識別子ペ
ージと、文書内頻度、出現位置、文書内頻度出現位置表
現ビット数あるいは出現位置表現ビット数がある場合は
文書内頻度出現位置表現ビット数あるいは出現位置表現
ビット数を格納する文書内頻度出現位置ページとに分け
て格納する。その結果、文書内頻度、出現位置が不要な
場合には文書内頻度、出現位置の読み出し処理が不要に
なり、検索処理が高速化できる。
【0218】図10は、この場合の転置リストの構成例
を示すものである。同図に示すように、この転置リスト
は、文書識別子ページ(id page)、文書内頻度出現位
置ページ(loc page)、ヘッダーページ(header pag
e)にページが別れている。
【0219】ヘッダーページは、文書頻度を格納するヘ
ッダー部分(header)、文書識別子ページの位置を記録
する文書識別子ページ索引(id page index)、文書内
頻度出現位置ページの位置を記録する文書内頻度出現位
置ページ索引(loc page index)、文書識別子の圧縮デ
ータの一部(last id block)、未使用部分(wastage)
から構成されている。
【0220】また、文書識別子を複数の文書識別子ペー
ジにまたがって格納し、この文書識別子ページの管理情
報である文書識別子ページ索引に文書識別子のページ番
号と各ページの先頭に記録された文書識別子とを記録す
るようにしてもよい。これにより、必要な文書識別子の
データが格納された文書識別子ページのみにアクセスす
ればよいので、検索処理を高速化することができる。図
11は文書識別子ページ索引の例である。この例で、文
書識別子1010の文書が存在しているか否かを調べる
には文書識別子ページ索引を参照して、2番目のページ
であるページ番号200の文書識別子ページを読み込め
ばよく、ページ番号100のページの読み込みを回避す
ることができる。
【0221】さらに、図12に例を示すように、文書識
別子ページ索引には、文書識別子ページの各ページの末
尾に記録された文書識別子を記録してもよい。このよう
に、末尾の文書識別子を記録することで、文書識別子ペ
ージ索引を参照するだけで、例えば図12の例では文書
識別子1900の文書は存在しないことが確認でき文書
識別子ページにアクセスする必要がないので、検索処理
が高速化する。
【0222】また、文書識別子をページのサイズより小
さな固定長ブロックである文書識別子ブロックに分割し
て格納し、文書識別子ブロックごとにそのはじめの文書
の文書識別子は前の文書識別子との差分をとらずに格納
し、文書内頻度、出現位置および文書内頻度出現位表現
ビット数もしくは出現位置表現ビット数がある場合には
前記文書内頻度出現位表現ビット数または出現位置表現
ビット数は文書識別子ブロックと同じ文書の情報を格納
するブロックである文書内頻度出現位置ブロックに分割
して格納する。
【0223】図13に、この場合の転置リストの一例を
示す。この転置リストは、図10のものと比較して次の
点が異なっている。すなわち、文書識別子ページ(id p
age)は固定長の文書識別子ブロック(id block)から
構成されている。文書内頻度出現位置ページ(loc pag
e)は文書内頻度出現位置ブロック(loc block)から構
成されている。各文書識別子ブロックが対応する文書内
頻度出現位置ブロックを指している。なお、文書内頻度
出現位置ブロックは必ずしも1つのページに収まらなく
てもかまわない。例えば、図13の左から3番目の文書
内頻度出現位置ブロックがこれに相当する。
【0224】大きな転置リストの構成をこのようにする
ことで、ページ内で特定の文書の存在を調べる場合は、
ページの先頭からすべての文書識別子を伸長する必要は
なく、まず各文書識別子ブロックの先頭に記録されてい
る文書識別子を使って所望の文書識別子が存在するなら
ばどのブロックにあるかを調べることができる。所望の
文書識別子が存在するとすればどのブロックにあるかを
調べるには、ブロックの先頭に記録されている文書識別
子が所望の文書識別子より大きいブロックの1つ前のブ
ロックを探せばよい。もし、比較を開始したブロックの
先頭の文書識別子がすでに所望の文書識別子より大きい
場合には現在の文書識別子ページには所望の文書識別子
は存在しておらず、そのようなブロックが見つかること
なく最終のブロックとの比較が終わった場合には所望の
文書識別子は最終ブロックそのものにあるとする。ま
た、位置の突き合せのため位置情報が必要になった場合
には、文書識別子ブロックに記録されている対応する文
書内頻度出現位置ブロックの位置情報を用いて文書内頻
度出現位置ブロックにアクセスし、所望の位置情報を取
得すればよい。以上のようにして所望の文書識別子、位
置情報が簡単に得られるので、検索処理が高速化でき
る。
【0225】
【発明の効果】請求項1に記載の発明は、下位ノードの
各々の文書頻度を見積ることで、検索条件評価の中間結
果を得られれば、文書頻度の小さい順に評価を行なうこ
とで、この中間結果を早めにしぼり込めるから、文書検
索処理を高速化することができる。
【0226】請求項2に記載の発明は、請求項1に記載
の発明について、下位ノードは、下層で末端ノードに近
いほど文書頻度が小さいので、さらに中間結果を早めに
しぼり込むことができるから、文書検索処理を高速化す
ることができる。
【0227】請求項3に記載の発明は、請求項1または
2に記載の発明について、与えられた検索語が索引登録
されている索引語で覆うことができないときは、検索結
果は必ず空になるため、2進木構造に変換せず、検索条
件の評価の際には直ちに空の検索結果を返す末端ノード
に変換することができるから、文書検索処理を高速化す
ることができる。
【0228】請求項4に記載の発明は、請求項1〜3の
いずれかの一に記載の発明について、この2進木構造を
末端ノードから順に評価していくことで予め粗い評価を
行なって検索条件に該当する文書数を絞っておくことが
可能となるから、文書検索処理を高速化することができ
る。
【0229】請求項5に記載の発明は、請求項4に記載
の発明について、第1予備変換手段による変換後の2進
木構造を用いて、粗い評価を行ない、その後、その結果
に基づいて複合検索手段による正確な評価を行なうこと
ができるから、文書検索処理を高速化することができ
る。
【0230】請求項6に記載の発明は、請求項1〜5の
いずれかの一に記載の発明について、検索条件に複数の
検索語の論理演算を含んでいるときに、文書頻度に従い
木構造を組んでいって、下位ノードの端から評価してい
くことが可能となるから、文書検索処理を高速化するこ
とができる。
【0231】請求項7に記載の発明は、請求項6に記載
の発明について、下位ノードの端から評価していくこと
により、論理演算が複数の検索結果の積集合の場合に早
めに最終結果に近づくことができるように小さい文書頻
度順に評価することができるから、文書検索処理を高速
化することができる。
【0232】請求項8に記載の発明は、請求項7に記載
の発明について、積集合で結ばれる複数の検索条件が入
れ子構造になっているときは、その入れ子構造を解いて
平坦化しても論理演算の意味に変動はなく、下位ノード
の端から評価していけるように並べ替えることができる
から、文書検索処理を高速化することができる。
【0233】請求項9に記載の発明は、請求項7または
8に記載の発明について、積集合演算で結ばれている検
索条件のうちに、常に空の検索結果を返す末端ノードに
変換されるものが少なくとも1つあったときは、合成の
結果も空であるから、木構造に変換せず、検索条件の評
価の際には直ちに空の検索結果を返す末端ノードに変換
することができるから、文書検索処理を高速化すること
ができる。
【0234】請求項10に記載の発明は、請求項6〜9
のいずれかの一に記載の発明について、下位ノードの端
から評価していくことにより、論理演算が複数の検索結
果の和集合を作る和集合演算の場合に、早めに最終結果
に近づくことができるように大きい文書頻度順に評価す
ることができるから、文書検索処理を高速化することが
できる。
【0235】請求項11に記載の発明は、請求項10に
記載の発明について、和集合演算で結ばれる複数の検索
条件が入れ子構造になっているときは、その入れ子構造
を解いて平坦化しても論理演算の意味に変動はなく、下
位ノードの端から評価していけるように並べ替えること
ができるから、文書検索処理を高速化することができ
る。
【0236】請求項12に記載の発明は、請求項6〜1
1のいずれかの一に記載の発明について、下位ノードの
端から評価していくことにより、文書頻度に応じた評価
が可能となり、早めに結果をしぼり込めるから、文書検
索処理を高速化することができる。
【0237】請求項13に記載の発明は、請求項12に
記載の発明について、下位ノードの端から評価していく
ことで、文書頻度の大きい順に評価が可能となり、早め
に結果をしぼり込めるから、文書検索処理を高速化する
ことができる。
【0238】請求項14に記載の発明は、請求項12ま
たは13に記載の発明について、差集合演算で検索結果
を除外する方の検索条件のうちに和集合演算で検索条件
を結合した合成条件が含まれる場合には、この検索条件
の和集合演算とを解いて平坦化しても論理演算の意味に
変動はなく、下位ノードの端から評価していけるように
並べ替えることができるから、文書検索処理を高速化す
ることができる。
【0239】請求項15に記載の発明は、請求項12〜
14のいずれかの一に記載の発明について、元もと空の
検索結果から何を取り除いても結果は空になるため、木
構造には変換せず、検索条件の評価の際にはただちに空
の検索結果を返す末端ノードに変換することができるか
ら、文書検索処理を高速化することができる。
【0240】請求項16に記載の発明は、請求項6〜1
5のいずれかの一に記載の発明について、子ノードの端
から評価していくことにより、位置比較を行なうまでも
なく、積集合演算でも除外できる文書を早めに除外でき
る小さい文書頻度順に評価することが可能になるから、
文書検索処理を高速化することができる。
【0241】請求項17に記載の発明は、請求項16に
記載の発明について、変換後の木構造を用いて、粗い評
価を行ない、その後、その結果に基づいて正確な評価を
行なうことが可能となるから、文書検索処理を高速化す
ることができる。
【0242】請求項18に記載の発明は、請求項17に
記載の発明について、換後の木構造を用いて、粗い評価
を行ない、その後、その結果に基づいて複合検索手段に
よる正確な評価を行なうことができるから、文書検索処
理を高速化することができる。
【0243】請求項19に記載の発明は、請求項1〜1
8のいずれかの一に記載の発明について、第1予備照合
記憶手段を参照して、索引照合手段の行なう索引照合の
範囲を限定することで、索引照合を削減することができ
るから、文書検索処理を高速化することができる。
【0244】請求項20に記載の発明は、請求項19に
記載の発明について、第1予備照合記憶手段が過大なも
のとなるのを防止できる。
【0245】請求項21に記載の発明は、請求項1〜2
0のいずれかの一に記載の発明について、第2予備照合
記憶手段を参照して、索引照合手段の行なう索引照合の
範囲を限定することで、索引照合を削減することができ
るから、文書検索処理を高速化することができる。
【0246】請求項22に記載の発明は、請求項21に
記載の発明について、第2予備照合記憶手段が過大なも
のとなるのを防止できる。
【0247】請求項23に記載の発明は、下位ノードの
各々の文書頻度を見積ることで、検索条件評価の中間結
果を得られれば、文書頻度の小さい順に評価を行なうこ
とで、この中間結果を早めにしぼり込めるから、文書検
索処理を高速化することができる。
【0248】請求項24に記載の発明は、請求項23に
記載の発明について、下位ノードは、下層で末端ノード
に近いほど文書頻度が小さいので、さらに中間結果を早
めにしぼり込むことができるから、文書検索処理を高速
化することができる。
【0249】請求項25に記載の発明は、請求項23ま
たは24に記載の発明について、与えられた検索語が索
引登録されている索引語で覆うことができないときは、
検索結果は必ず空になるため、2進木構造に変換せず、
検索条件の評価の際には直ちに空の検索結果を返す末端
ノードに変換することができるから、文書検索処理を高
速化することができる。
【0250】請求項26に記載の発明は、請求項23〜
25のいずれかの一に記載の発明について、この2進木
構造を末端ノードから順に評価していくことで予め粗い
評価を行なって検索条件に該当する文書数を絞っておく
ことが可能となるから、文書検索処理を高速化すること
ができる。
【0251】請求項27に記載の発明は、請求項26に
記載の発明について、第1の予備変換による変換後の2
進木構造を用いて、粗い評価を行ない、その後、その結
果に基づいて複合検索手段による正確な評価を行なうこ
とができるから、文書検索処理を高速化することができ
る。
【0252】請求項28に記載の発明は、請求項23〜
27のいずれかの一に記載の発明について、検索条件に
複数の検索語の論理演算を含んでいるときに、文書頻度
に従い木構造を組んでいって、下位ノードの端から評価
していくことが可能となるから、文書検索処理を高速化
することができる。
【0253】請求項29に記載の発明は、請求項28に
記載の発明について、下位ノードの端から評価していく
ことにより、論理演算が複数の検索結果の積集合の場合
に早めに最終結果に近づくことができるように小さい文
書頻度順に評価することができるから、文書検索処理を
高速化することができる。
【0254】請求項30に記載の発明は、請求項28ま
たは29に記載の発明について、積集合で結ばれる複数
の検索条件が入れ子構造になっているときは、その入れ
子構造を解いて平坦化しても論理演算の意味に変動はな
く、下位ノードの端から評価していけるように並べ替え
ることができるから、文書検索処理を高速化することが
できる。
【0255】請求項31に記載の発明は、請求項28〜
30のいずれかの一に記載の発明について、下位ノード
の端から評価していくことにより、文書頻度に応じた評
価が可能となり、早めに結果をしぼり込めるから、文書
検索処理を高速化することができる。
【0256】請求項32に記載の発明は、請求項28〜
31のいずれかの一に記載の発明について、子ノードの
端から評価していくことにより、位置比較を行なうまで
もなく、積集合演算でも除外できる文書を早めに除外で
きる小さい文書頻度順に評価することが可能になるか
ら、文書検索処理を高速化することができる。
【0257】請求項33に記載の発明は、請求項32に
記載の発明について、変換後の木構造を用いて、粗い評
価を行ない、その後、その結果に基づいて正確な評価を
行なうことが可能となるから、文書検索処理を高速化す
ることができる。
【0258】請求項34に記載の発明は、請求項33に
記載の発明について、換後の木構造を用いて、粗い評価
を行ない、その後、その結果に基づいて複合検索による
正確な評価を行なうことができるから、文書検索処理を
高速化することができる。
【0259】請求項35に記載の発明は、索引語は一律
にn文字の連鎖とされるので、膨大な単語辞書を必要と
する形態素解析を用いる手法と比較すると、単語辞書の
管理などの手間が省ける。
【0260】請求項36に記載の発明は、請求項35に
記載の発明において、nが2以上で検索語がn文字未満
の場合も正しく検索を行なうことができる。
【0261】請求項37に記載の発明は、請求項35に
記載の発明において、無駄な索引語の使用を省いて検索
処理の高速化を図ることができる。
【0262】請求項38に記載の発明は、請求項37に
記載の発明において、文書頻度を小さくして検索処理の
高速化を図ることができる。
【0263】請求項39に記載の発明は、請求項35に
記載の発明に比較して、検索語を検索向きに索引語に分
割して、検索処理を高速化することができる。
【0264】請求項40に記載の発明は、請求項39に
記載の発明において、無駄な索引語の使用を省いて検索
処理の高速化を図ることができる。
【0265】請求項41に記載の発明は、請求項40に
記載の発明において、無駄な索引語の使用を省いて検索
処理の高速化を図ることができる。
【0266】請求項42に記載の発明は、詳細判定用条
件木の検索結果合成処理に先立って、候補決定用条件木
の検索結果合成処理を実行して対象となる文書に絞りを
かけることにより、文字位置の突き合せの処理を低減し
て、検索処理の高速化を図ることができる。
【0267】請求項43に記載の発明は、詳細判定用条
件木の検索結果合成処理に先立って、候補決定用条件木
の検索結果合成処理を実行して対象となる文書に絞りを
かけることにより、文字位置の突き合せの処理を低減し
て、検索処理の高速化を図ることができる。
【0268】請求項44に記載の発明は、索引に記録す
る情報を圧縮して索引のデータ量を小さくすることがで
きる。
【0269】請求項45に記載の発明は、請求項44に
記載の発明において、文書識別子を参照する場合に伸長
するデータ量を少なくできるので、検索処理を高速化す
ることができる。
【0270】請求項46に記載の発明は、請求項45に
記載の発明において、文書内頻度出現位置表現ビット数
を参照することにより、必要とする文書の文書頻度、出
現位置のデータがどこにあるかがわかるので、文書頻
度、出現位置を参照する場合に伸長するデータ量を少な
くして、検索処理を高速化することができる。
【0271】請求項47に記載の発明は、請求項45に
記載の発明において、文書内頻度が大きい場合のみ出現
位置を表現するのに必要なビット数を記録することで、
請求項46に記載の発明ほど索引を大きくせず、出現位
置を参照する場合に伸長するデータ量を少なくして、検
索処理を高速化することができる。
【0272】請求項48に記載の発明は、請求項46ま
たは47に記載の発明において、文書内頻度出現位置表
現ビット数および出現位置表現ビット数は、各文書内頻
度および各出現位置を格納する領域に格納して、検索処
理を高速化することができる。
【0273】請求項49に記載の発明は、索引語と同
様、文書頻度、文書識別子、文書内頻度および出現位置
のデータである転置リストも文字コード順にソートして
いるので、検索時にこれらのデータを読み出すときに、
読み出すデータの位置を近くして、検索処理を高速化で
きる。
【0274】請求項50に記載の発明は、索引において
転置リストを大きさに合わせてページ単位に管理するの
で、検索処理を高速化することができる。
【0275】請求項51に記載の発明は、請求項45〜
48のいずれかに記載の発明において、索引に格納する
データを、その登録、検索処理に合わせて配置するの
で、登録あるいは検索処理を高速化することができる。
【0276】請求項52に記載の発明は、請求項51に
記載の発明において、登録あるいは検索処理を高速化す
ることができる。
【0277】請求項53に記載の発明は、請求項51ま
たは52に記載の発明において、文書登録時に、登録順
の終わりの1つ以上の文書識別子を格納するのに、新た
な文書識別子ページを読み込み、書き込む必要がなくな
り、登録処理を高速化することができる。
【0278】請求項54に記載の発明は、請求項51ま
たは52に記載の発明において、必要な文書識別子のデ
ータが格納された文書識別子ページのみにアクセスすれ
ばよいので、検索処理を高速化することができる。
【0279】請求項55に記載の発明は、請求項54に
記載の発明において、文書識別子ページ索引を参照する
だけで、特定の文書識別子の文書に関してはデータが存
在しないことを確認することも可能となるので、検索処
理を高速化することができる。
【0280】請求項56に記載の発明は、請求項51ま
たは52に記載の発明において、所望の文書識別子、位
置情報が簡単に得られるので、検索処理を高速化するこ
とができる。
【0281】請求項57に記載の発明は、索引語は一律
にn文字の連鎖とされるので、膨大な単語辞書を必要と
する形態素解析を用いる手法と比較すると、単語辞書の
管理などの手間が省ける。
【0282】請求項58に記載の発明は、請求項57に
記載の発明に比較して、検索語を検索向きに索引語に分
割して、検索処理を高速化することができる。
【0283】請求項59に記載の発明は、詳細判定用条
件木の検索結果合成処理に先立って、候補決定用条件木
の検索結果合成処理を実行して対象となる文書に絞りを
かけることにより、文字位置の突き合せの処理を低減し
て、検索処理の高速化を図ることができる。
【0284】請求項60に記載の発明は、詳細判定用条
件木の検索結果合成処理に先立って、候補決定用条件木
の検索結果合成処理を実行して対象となる文書に絞りを
かけることにより、文字位置の突き合せの処理を低減し
て、検索処理の高速化を図ることができる。
【0285】請求項61に記載の発明は、索引に記録す
る情報を圧縮して索引のデータ量を小さくすることがで
きる。
【0286】請求項62に記載の発明は、索引語と同
様、文書頻度、文書識別子、文書内頻度および出現位置
のデータである転置リストも文字コード順にソートして
いるので、検索時にこれらのデータを読み出すときに、
読み出すデータの位置を近くして、検索処理を高速化で
きる。
【0287】請求項63に記載の発明は、索引において
転置リストを大きさに合わせてページ単位に管理するの
で、検索処理を高速化することができる。
【図面の簡単な説明】
【図1】この発明の実施の形態1である電子化文書検索
システムの全体のシステム構成を示すブロック図であ
る。
【図2】前記電子化文書検索システムの索引テーブル1
1を示す表である。
【図3】前記電子化文書検索システムで検索条件から変
換して作成する木構造の例を示すブロック図である。
【図4】前記木構造の例を示すブロック図である。
【図5】前記木構造の例を示すブロック図である。
【図6】前記電子化文書検索システムの履歴テーブルを
示す表である。
【図7】この発明の実施の形態2にかかる電子化文書検
索システムの全体構成を示す機能ブロック図である。
【図8】前記電子化文書検索システムで用いる索引の例
を示す表である。
【図9】前記電子化文書検索システムで用いる索引の例
を示す表である。
【図10】前記索引の転置リストの例を示すブロック図
である。
【図11】前記転置リストの文書識別子ページ索引の例
を示す表である。
【図12】前記転置リストの文書識別子ページ索引の例
を示す表である。
【図13】前記索引の転置リストの例を示すブロック図
である。
【符号の説明】
1 電子化文書検索システム 11 索引 13 索引語 14 識別子 15 出現位置 16 文書数 31 第1、第2予備照合記憶手段 40 電子化文書検索システム 41 索引記憶手段 42 文書分割手段 43 検索語分割手段 44 検索条件解析手段 45 検索条件評価手段

Claims (63)

    【特許請求の範囲】
  1. 【請求項1】 電子化された複数の文書が登録される文
    書登録手段と、 この複数の文書中から所望の検索語を含む文書を検索す
    るための索引を、この索引に登録される各索引語に、こ
    の索引語が前記複数の文書中での出現位置と対応付けて
    記憶していて、前記出現位置は前記索引語が出現する前
    記文書の識別子および当該文書中での出現位置である索
    引記憶手段と、 前記検索の検索条件を入力する入力装置と、 前記索引に対し検索語の索引照合を行なう索引照合手段
    と、 この索引照合により、前記検索条件中の検索語を覆う少
    なくとも一つの前記索引語を取得し、この索引語の各々
    を検索語として前記複数の文書中での出現位置を検索す
    る中間検索手段と、 この各検索語についての検索結果から、各検索語の文書
    頻度を見積る文書頻度見積手段と、 前記中間検索手段で取得した検索語が複数あるときは、
    前記検索条件を、2つの検索語の各々についての前記索
    引照合による検索を下位ノードに、この両下位ノードの
    検索結果の比較による両検索語の位置条件で限定する前
    記両下位ノードの合成処理を上位ノードにする複合検索
    を階層的に連ねた2進木構造に変換する第1検索条件変
    換手段と、 前記上位ノードの処理を実行して前記複合検索の結果を
    作成し、前記上位ノードの処理は前記各検索語間の出現
    位置の比較を前記文書頻度の小さいものから順に行なう
    ものである複合検索手段と、 この検索の結果を出力する出力装置と、を備えているこ
    とを特徴とする電子化文書検索システム。
  2. 【請求項2】 第1検索条件変換手段は、文書頻度の小
    さい下位ノードの順に2進木に変換し、この変換により
    文書頻度の小さい下位ノードほど前記木構造の下層とな
    るようにすることを特徴とする請求項1に記載の電子化
    文書検索システム。
  3. 【請求項3】 第1検索条件変換手段は、中間検索手段
    による検索で検索条件中の検索語を覆う索引語がなかっ
    たときは、常に空の検索結果を返す末端ノードに変換す
    るものであることを特徴とする請求項1または2に記載
    の電子化文書検索システム。
  4. 【請求項4】 両検索語の検索を下位ノードに、この下
    位ノードの積集合を上位ノードにする複合検索を階層的
    に連ねた2進木構造に変換し、この変換は文書頻度の小
    さい下位ノードの順に2進木に変換し、文書頻度の小さ
    い下位ノードほど前記木構造の下層となるように行なう
    第1予備変換手段を備えていることを特徴とする請求項
    1〜3のいずれかの一に記載の電子化文書検索システ
    ム。
  5. 【請求項5】 第1予備変換手段による変換後の木構造
    での上位ノードの処理を前記木構造中での最下位層から
    上位層に向けて順次実行して複合検索の結果を作成し、
    前記上位ノードの処理は各検索語間の出現位置の比較を
    前記文書頻度の小さいものから順に行なうものである第
    1予備検索手段を備え、 複合検索手段は、上位ノードの処理を前記第1予備検索
    手段による検索で限定された前記各検索語の出現位置に
    ついて行なうものであることを特徴とする請求項4に記
    載の電子化文書検索システム。
  6. 【請求項6】 検索条件に複数の検索語の論理演算を含
    んでいるときは、この各検索語を覆う索引語の各々を検
    索語として文書頻度見積手段で見積もった文書頻度に基
    づいて、前記各検索語の検索を下位ノードに、この下位
    ノードの前記論理演算を上位ノードにする複合検索を階
    層的に連ねた木構造に変換し、さらに論理演算による検
    索条件が他の論理演算で他の検索条件と結合される入れ
    子構造になっている場合には、この入れ子構造の内側の
    論理演算を下位ノードに、その外側論理演算を上位ノー
    ドにする木構造に変換する第2検索条件変換手段を備え
    ていることを特徴とする請求項1〜5のいずれかの一に
    記載の電子化文書検索システム。
  7. 【請求項7】 第2検索条件変換手段は、論理演算が複
    数の検索結果の積集合を作る積集合演算であるときに
    は、下位ノードを端から評価すれば自ずと文書頻度の小
    さい順に評価することとなるように、文書頻度の小さい
    順に前記下位ノードを整列することを特徴とする請求項
    6に記載の電子化文書検索システム。
  8. 【請求項8】 第2検索条件変換手段は、積集合演算で
    結ばれている複数の検索条件が入れ子構造になっている
    場合には、この入れ子構造を外して前記検索条件を木構
    造に変換するものであることを特徴とする請求項7に記
    載の電子化文書検索システム。
  9. 【請求項9】 第2検索条件変換手段は、積集合演算で
    結ばれている検索条件のうちに、常に空の検索結果を返
    す末端ノードに変換されるものが少なくとも1つあった
    ときは、前記積集合演算全体を、木構造に変換するのに
    代えて、常に空の検索結果を返す末端ノードに変換する
    ものであることを特徴とする請求項7または8に記載の
    電子化文書検索システム。
  10. 【請求項10】 第2検索条件変換手段は、論理演算が
    複数の検索結果の和集合を作る和集合演算であるときに
    は、下位ノードを端から評価すれば自ずと文書頻度の大
    きい順に評価することとなるように、文書頻度の大きい
    順に下位ノードを整列することを特徴とする請求項6〜
    9のいずれかの一に記載の電子化文書検索システム。
  11. 【請求項11】 第2検索条件変換手段は、和集合演算
    で結ばれている複数の検索条件が入れ子構造になってい
    る場合には、この入れ子構造を外して前記検索条件を木
    構造に変換するものであることを特徴とする請求項10
    に記載の電子化文書検索システム。
  12. 【請求項12】 第2検索条件変換手段は、論理演算
    が、1つの検索条件による検索結果から別の1つ以上の
    検索条件による検索結果に含まれるものを除外する差集
    合演算であるときは、前記論理演算で結ばれている複数
    の検索語については、この各検索語を覆う索引語の各々
    を検索語として文書頻度見積手段で見積もった文書頻度
    に基づいて、前記各検索語の検索を下位ノードに、この
    下位ノードの前記論理演算を上位ノードにする複合検索
    を階層的に連ねた木構造に変換し、さらに論理演算によ
    る検索条件が他の論理演算で他の検索条件と結合される
    入れ子構造になっている場合には、この入れ子構造の内
    側の論理演算を下位ノードに、その外側論理演算を上位
    ノードにする木構造に変換することを特徴とする請求項
    6〜11のいずれかの一に記載の電子化文書検索システ
    ム。
  13. 【請求項13】 第2検索条件変換手段は、差集合演算
    で検索結果を除外する方の検索条件が複数あるときは、
    この検索条件を表わす下位ノードを端から評価すれば自
    ずと文書頻度の大きい順に評価することとなるように、
    文書頻度の大きい順に前記下位ノードを整列することを
    特徴とする請求項12に記載の電子化文書検索システ
    ム。
  14. 【請求項14】 第2検索条件変換手段は、差集合演算
    で検索結果を除外する方の検索条件のうちに和集合演算
    で検索条件を結合した合成条件が含まれる場合には、こ
    の検索条件の和集合演算とを解いて、この検索条件を木
    構造に変換するものであることを特徴とする請求項12
    または13に記載の電子化文書検索システム。
  15. 【請求項15】 第2検索条件変換手段は、差集合演算
    で検索結果を除外する方の検索条件の少なくとも1つ
    が、常に空の検索結果を返す末端ノードに変換されるも
    のであったときは、前記差集合演算の全体を常に空の検
    索結果を返す末端ノードに変換することを特徴とする請
    求項12〜14のいずれかの一に記載の電子化文書検索
    システム。
  16. 【請求項16】 論理演算が、複数の検索語の出現順序
    を無視した出現位置間の距離の上限の指定であるとき
    に、下位ノードの端から評価すれば自ずと文書頻度の小
    さい順に評価することとなるよう、文書頻度の小さい順
    に下位ノードを整列させるように変換を行なう第2予備
    変換手段を備えているものであることを特徴とする請求
    項6〜15のいずれかの一に記載の電子化文書検索シス
    テム。
  17. 【請求項17】 第2予備変換手段は、検索語の検索を
    下位ノードに、この下位ノードの検索後の出現位置間の
    距離の上限の指定を上位ノードにする複合検索を階層的
    に連ねた2進木構造に変換し、この変換は文書頻度の小
    さい下位ノードの順に2進木に変換し、文書頻度の小さ
    い下位ノードほど前記木構造の下層となるように行なう
    ものであることを特徴とする請求項16に記載の電子化
    文書検索システム。
  18. 【請求項18】 第2予備変換手段による変換後の木構
    造での上位ノードの処理を前記木構造中での最下位層か
    ら上位層に向けて順次実行して複合検索の結果を作成
    し、前記上位ノードの処理は各検索語間の出現位置の比
    較を前記文書頻度の小さいものから順に行なうものであ
    る第2予備検索手段を備え、 複合検索手段は、上位ノードの処理を前記第2予備検索
    手段による検索で限定された前記各検索語の出現位置に
    ついて行なうことを特徴とする請求項17に記載の電子
    化文書検索システム。
  19. 【請求項19】 索引記憶手段は、その記憶している索
    引で文書の識別子に全順序関係があって、 索引語と前記識別子の下限を指定することにより、この
    指定された索引語を含む前記文書の前記識別子のうち
    で、その識別子の下限以上で最小のものを前記索引から
    取得する第1予備照合手段と、 前記指定した索引語、前記取得した識別子、および、前
    記識別子の下限値とを関連付けて記憶する第1予備照合
    記憶手段と、 この第1予備照合記憶手段を参照して、索引照合手段の
    行なう索引照合の範囲を限定する第1照合範囲指定手段
    と、を備えていることを特徴とする請求項1〜18のい
    ずれかの一に記載の電子化文書検索システム。
  20. 【請求項20】 第1予備照合記憶手段は、関連付けて
    記憶する索引語、識別子、および、下限値を、第1予備
    照合手段で最新に取得した所定数の索引語に関するもの
    に限定することを特徴とする請求項19に記載の電子化
    文書検索システム。
  21. 【請求項21】 索引記憶手段は、その記憶している索
    引で文書の識別子に全順序関係があって、 前記識別子の下限を指定することにより、複合検索の結
    果を満たす前記識別子のうちで、その識別子の下限以上
    で最小のものを前記索引から取得する第2予備照合手段
    と、 前記指定した索引語、前記取得した識別子、および、前
    記識別子の下限値を関連付けて記憶する第2予備照合記
    憶手段と、 この第2予備照合記憶手段を参照して、前記複合検索で
    索引照合手段の行なう索引照合の範囲を限定する第2照
    合範囲指定手段と、を備えていることを特徴とする請求
    項1〜20のいずれかに記載の電子化文書検索システ
    ム。
  22. 【請求項22】 第2予備照合記憶手段は、関連付けて
    記憶する索引語、識別子、および、下限値を、第2予備
    照合手段で最新に取得した所定数の索引語に関するもの
    に限定することを特徴とする請求項21に記載の電子化
    文書検索システム。
  23. 【請求項23】 コンピュータで読取可能なプログラム
    を記憶していて、 このプログラムは、コンピュータに読み取られることに
    より、与えられた検索条件に従って、電子化されて所定
    の記憶装置に登録されている複数の文書中から所望の検
    索語を含む文書の検索を前記コンピュータに実行可能と
    するものであり、 この検索の実行では、 索引語と前記複数の文書中での前記索引語の出現位置と
    が対応付けて所定の記憶装置に記憶されていて、前記出
    現位置は前記索引語が出現する前記文書の識別子および
    当該文書中での出現位置である索引に対し、索引照合を
    行ない、 この索引照合により、前記検索条件中の検索語を覆う少
    なくとも一つの前記索引語を取得し、この索引語の各々
    を検索語として前記複数の文書中での出現位置を検索す
    る中間検索を行ない、 この各検索語についての検索結果から、この各検索語の
    文書頻度を見積る文書頻度の見積を行ない、 前記中間検索で取得した検索語が複数あるときは、前記
    検索条件を、2つの検索語の各々についての前記索引照
    合による検索を下位ノードに、この両下位ノードの検索
    結果の比較による両検索語の位置条件で限定する前記両
    下位ノードの合成処理を上位ノードにする複合検索を階
    層的に連ねた2進木構造に変換する第1の検索条件の変
    換を行ない、 前記上位ノードの処理を実行して前記複合検索の結果を
    作成し、前記上位ノードの処理は前記各検索語間の出現
    位置の比較を前記文書頻度の小さいものから順に行なう
    複合検索を行なうこと、を特徴とする記憶媒体。
  24. 【請求項24】 第1の検索条件の変換では、文書頻度
    の小さい下位ノードの順に2進木に変換し、この変換に
    より文書頻度の小さい下位ノードほど前記木構造の下層
    となるようにすることを特徴とする請求項23に記載の
    記憶媒体。
  25. 【請求項25】 第1の検索条件の変換では、中間検索
    による検索で検索条件中の検索語を覆う索引語がなかっ
    たときは、常に空の検索結果を返す末端ノードに変換す
    るものであることを特徴とする請求項23または24に
    記載の記憶媒体。
  26. 【請求項26】 検索の実行では、 両検索語の検索を下位ノードに、この下位ノードの積集
    合を上位ノードにする複合検索を階層的に連ねた2進木
    構造に変換し、この変換は文書頻度の小さい下位ノード
    の順に2進木に変換し、文書頻度の小さい下位ノードほ
    ど前記木構造の下層となるように行なう第1の予備変換
    を行なうことを特徴とする請求項23〜25のいずれか
    の一に記載の記憶媒体。
  27. 【請求項27】 検索の実行では、 第1の予備変換による変換後の木構造での上位ノードの
    処理を前記木構造中での最下位層から上位層に向けて順
    次実行して複合検索の結果を作成し、前記上位ノードの
    処理は各検索語間の出現位置の比較を前記文書頻度の小
    さいものから順に実行する第1の予備検索を行ない、 複合検索は、上位ノードの処理を前記第1の予備検索に
    よる検索で限定された前記各検索語の出現位置について
    行なうものであることを特徴とする請求項26に記載の
    記憶媒体。
  28. 【請求項28】 検索の実行では、 検索条件に複数の検索語の論理演算を含んでいるとき
    は、この各検索語を覆う索引語の各々を検索語として文
    書頻度見積手段で見積もった文書頻度に基づいて、前記
    各検索語の検索を下位ノードに、この下位ノードの前記
    論理演算を上位ノードにする複合検索を階層的に連ねた
    木構造に変換し、さらに論理演算による検索条件が他の
    論理演算で他の検索条件と結合される入れ子構造になっ
    ている場合には、この入れ子構造の内側の論理演算を下
    位ノードに、その外側論理演算を上位ノードにする木構
    造に変換する第2の検索条件の変換を行なうことを特徴
    とする請求項23〜27のいずれかの一に記載の記憶媒
    体。
  29. 【請求項29】 第2の検索条件の変換は、論理演算が
    複数の検索結果の積集合を作る積集合演算であるときに
    は、下位ノードを端から評価すれば自ずと文書頻度の小
    さい順に評価することとなるように、文書頻度の小さい
    順に前記下位ノードを整列することを特徴とする請求項
    28に記載の記憶媒体。
  30. 【請求項30】 第2の検索条件の変換は、論理演算が
    複数の検索結果の和集合を作る和集合演算であるときに
    は、下位ノードを端から評価すれば自ずと文書頻度の大
    きい順に評価することとなるように、文書頻度の大きい
    順に下位ノードを整列することを特徴とする請求項28
    または29に記載の記憶媒体。
  31. 【請求項31】 第2の検索条件の変換は、論理演算
    が、1つの検索条件による検索結果から別の1つ以上の
    検索条件による検索結果に含まれるものを除外する差集
    合演算であるときは、前記論理演算で結ばれている複数
    の検索語については、この各検索語を覆う索引語の各々
    を検索語として文書頻度見積手段で見積もった文書頻度
    に基づいて、前記各検索語の検索を下位ノードに、この
    下位ノードの前記論理演算を上位ノードにする複合検索
    を階層的に連ねた木構造に変換し、さらに論理演算によ
    る検索条件が他の論理演算で他の検索条件と結合される
    入れ子構造になっている場合には、この入れ子構造の内
    側の論理演算を下位ノードに、その外側論理演算を上位
    ノードにする木構造に変換することを特徴とする請求項
    28〜30のいずれかの一に記載の記憶媒体。
  32. 【請求項32】 検索の実行では、 論理演算が、複数の検索語の出現順序を無視した出現位
    置間の距離の上限の指定であるときに、下位ノードの端
    から評価すれば自ずと文書頻度の小さい順に評価するこ
    ととなるよう、文書頻度の小さい順に下位ノードを整列
    させるように変換を行なう第2の予備変換を行なうもの
    であることを特徴とする請求項28〜31のいずれかの
    一に記載の記憶媒体。
  33. 【請求項33】 第2の予備変換は、検索語の検索を下
    位ノードに、この下位ノードの検索後の出現位置間の距
    離の上限の指定を上位ノードにする複合検索を階層的に
    連ねた2進木構造に変換し、この変換は文書頻度の小さ
    い下位ノードの順に2進木に変換し、文書頻度の小さい
    下位ノードほど前記木構造の下層となるように行なうも
    のであることを特徴とする請求項32に記載の記憶媒
    体。
  34. 【請求項34】 第2の予備変換による変換後の木構造
    での上位ノードの処理を前記木構造中での最下位層から
    上位層に向けて順次実行して複合検索の結果を作成し、
    前記上位ノードの処理は各検索語間の出現位置の比較を
    前記文書頻度の小さいものから順に実行する第2の予備
    検索を行ない、 複合検索は、上位ノードの処理を前記第2予備検索手段
    による検索で限定された前記各検索語の出現位置につい
    て行なうことを特徴とする請求項33に記載の記憶媒
    体。
  35. 【請求項35】 電子化された複数の登録文書中から所
    望の検索語を含む文書を検索するための索引を、この索
    引の見出しとして登録される各索引語に、この索引語を
    含んでいる前記登録文書の数である文書頻度、前記索引
    語を含む文書の文書識別子、前記索引語の前記各登録文
    書内での出現回数である文書内頻度および前記索引語の
    前記各登録文書内での出現位置の各情報を対応付けて記
    憶している索引記憶手段と、 前記登録文書を前記索引語に分割する文書分割手段と、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成する
    検索語分割手段と、 前記検索条件を解析して、この検索条件から、前記検索
    語分割手段が取得した前記索引語と前記空文書集合との
    うちの少なくとも一方を演算子で合成した検索条件木を
    生成する検索条件解析手段と、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得る検索条件評価手段とを備え、 nを1以上の整数としたときに、前記文書分割手段は前
    記登録文書をn文字の連鎖である前記索引語に分割し、
    前記検索語分割手段は前記検索語を覆う1つ以上のn文
    字連鎖である前記索引語に分割し、前記検索条件解析手
    段は前記検索語が2つ以上の前記索引語に分割されると
    きはこの複数の索引語の出現位置間の距離を指定する位
    置演算子で合成するものである電子化文書検索システ
    ム。
  36. 【請求項36】 nが2以上で検索語がn文字未満の場
    合、検索語分割手段はm文字目(mは1以上で(n−m
    +1)以下である整数)から検索語と一致するすべての
    索引語を索引から取り出し、検索条件解析手段は検索語
    分割手段が取り出した前記複数の索引語を複数の検索結
    果の和集合をとる和集合演算子で合成するものである請
    求項35に記載の電子化文書検索システム。
  37. 【請求項37】 nが2以上で検索語がn文字以上の場
    合、検索語分割手段は検索語を覆う最小個数の索引語に
    分割するものである請求項35に記載の電子化文書検索
    システム。
  38. 【請求項38】 最小個数の索引語に分割できる場合が
    複数あるときは、検索語分割手段は検索語を覆う最小個
    数の各索引語の文書頻度の合計が最小となるように検索
    語を索引語に分割するものである請求項37に記載の電
    子化文書検索システム。
  39. 【請求項39】 電子化された複数の登録文書中から所
    望の検索語を含む文書を検索するための索引を、この索
    引の見出しとして登録される各索引語に、この索引語を
    含んでいる前記登録文書の数である文書頻度、前記索引
    語を含む文書の文書識別子、前記索引語の前記各登録文
    書内での出現回数である文書内頻度および前記索引語の
    前記各登録文書内での出現位置の各情報を対応付けて記
    憶している索引記憶手段と、 前記登録文書を前記索引語に分割する文書分割手段と、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成する
    検索語分割手段と、 前記検索条件を解析して、この検索条件から、前記検索
    語分割手段が取得した前記索引語と前記空文書集合との
    うちの少なくとも一方を演算子で合成した検索条件木を
    生成する検索条件解析手段と、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得る検索条件評価手段とを備え、 前記検索語分割手段は前記分割で得た複数の索引語のう
    ち前記検索語を覆う他の索引語に包含されるものは除外
    するものであり、前記検索条件解析手段は前記検索語が
    2つ以上の前記索引語に分割されるときはこの複数の索
    引語の出現位置間の距離を指定する位置演算子で合成す
    るものである電子化文書検索システム。
  40. 【請求項40】 検索語分割手段は検索語を覆う最小個
    数の索引語に分割するものである請求項39に記載の電
    子化文書検索システム。
  41. 【請求項41】 最小個数の索引語に分割できる場合が
    複数あるときは、検索語分割手段は検索語を覆う最小個
    数の各索引語の文書頻度の合計が最小となるように検索
    語を索引語に分割するものである請求項40に記載の電
    子化文書検索システム。
  42. 【請求項42】 電子化された複数の登録文書中から所
    望の検索語を含む文書を検索するための索引を、この索
    引の見出しとして登録される各索引語に、この索引語を
    含んでいる前記登録文書の数である文書頻度、前記索引
    語を含む文書の文書識別子、前記索引語の前記各登録文
    書内での出現回数である文書内頻度および前記索引語の
    前記各登録文書内での出現位置の各情報を対応付けて記
    憶している索引記憶手段と、 前記登録文書を前記索引語に分割する文書分割手段と、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成する
    検索語分割手段と、 前記検索条件を解析して、この検索条件から、前記検索
    語分割手段が取得した前記索引語と前記空文書集合との
    うちの少なくとも一方を演算子で合成した検索条件木を
    生成する検索条件解析手段と、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得る検索条件評価手段とを備え、 前記検索語分割手段が前記検索語を2つ以上の前記索引
    語に分割する場合は、前記検索条件解析手段は、これら
    複数の索引語を複数の検索結果の積集合をとる積集合演
    算子で合成した条件木である候補決定用条件木と、前記
    複数の索引語から検索語を覆う最小個数のものを選択し
    てそれを出現位置間の距離を指定する位置演算子で合成
    した条件木である詳細判定用条件木とを作成し、前記検
    索条件評価手段は、まず前記候補決定用条件木の前記検
    索結果合成処理を実行して前記複数の登録文書から該当
    文書を検索し、次に、この検索後の登録文書を対象に前
    記詳細判定用条件木の前記検索結果合成処理を実行して
    前記検索結果を得るものである電子化文書検索システ
    ム。
  43. 【請求項43】 電子化された複数の登録文書中から所
    望の検索語を含む文書を検索するための索引を、この索
    引の見出しとして登録される各索引語に、この索引語を
    含んでいる前記登録文書の数である文書頻度、前記索引
    語を含む文書の文書識別子、前記索引語の前記各登録文
    書内での出現回数である文書内頻度および前記索引語の
    前記各登録文書内での出現位置の各情報を対応付けて記
    憶している索引記憶手段と、 前記登録文書を前記索引語に分割する文書分割手段と、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成する
    検索語分割手段と、 前記検索条件を解析して、この検索条件から、前記検索
    語分割手段が取得した前記索引語と前記空文書集合との
    うちの少なくとも一方を演算子で合成した検索条件木を
    生成する検索条件解析手段と、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得る検索条件評価手段とを備え、 前記検索語分割手段が前記検索語を2つ以上の前記索引
    語に分割する場合は、前記検索条件解析手段は、これら
    複数の索引語を複数の検索結果の積集合をとる積集合演
    算子で合成した条件木である候補決定用条件木と、前記
    複数の索引語から前記検索語を覆いかつ索引語ごとの前
    記文書頻度の合計が最小となるものを選択してそれを出
    現位置間の距離を指定する位置演算子で合成した条件木
    である詳細判定用条件木とを作成し、前記検索条件評価
    手段は、まず前記候補決定用条件木の前記検索結果合成
    処理を実行して前記複数の登録文書から該当文書を検索
    し、次に、この検索後の登録文書を対象に前記詳細判定
    用条件木の前記検索結果合成処理を実行して前記検索結
    果を得るものである電子化文書検索システム。
  44. 【請求項44】 電子化された複数の登録文書中から所
    望の検索語を含む文書を検索するための索引を、この索
    引の見出しとして登録される各索引語に、この索引語を
    含んでいる前記登録文書の数である文書頻度、前記索引
    語を含む文書の文書識別子、前記索引語の前記各登録文
    書内での出現回数である文書内頻度および前記索引語の
    前記各登録文書内での出現位置の各情報を対応付けて記
    憶している索引記憶手段と、 前記登録文書を前記索引語に分割する文書分割手段と、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成する
    検索語分割手段と、 前記検索条件を解析して、この検索条件から、前記検索
    語分割手段が取得した前記索引語と前記空文書集合との
    うちの少なくとも一方を演算子で合成した検索条件木を
    生成する検索条件解析手段と、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得る検索条件評価手段とを備え、 前記索引は、前記索引語ごとに、前記各文書識別子は前
    の文書識別子の値との差分を可変長符号で表現したもの
    であり、前記文書内頻度は可変長符号で表現されたもの
    であり、前記各出現位置は文書ごとの前の出現位置の値
    との差分を可変長符号で表現したものである電子化文書
    検索システム。
  45. 【請求項45】 索引は、索引語ごとに、各文書識別子
    と各文書内頻度および各出現位置とで格納する領域を分
    けているものである請求項44に記載の電子化文書検索
    システム。
  46. 【請求項46】 索引は、索引語ごとの各文書ごとに対
    応して、文書内頻度および出現位置を表現するのに必要
    なビット数である文書内頻度出現位置表現ビット数を可
    変長符号で表現したデータを保持しているものである請
    求項45に記載の電子化文書検索システム。
  47. 【請求項47】 索引は、索引語ごとの各文書ごとに対
    応して、文書内頻度が指定された閾値以上である場合
    に、出現位置を表現するのに必要なビット数である出現
    位置表現ビット数を可変長符号で表現したデータを保持
    しているものである請求項45に記載の電子化文書検索
    システム。
  48. 【請求項48】 文書内頻度出現位置表現ビット数およ
    び出現位置表現ビット数は、各文書内頻度および各出現
    位置を格納する領域に格納するものである請求項46ま
    たは47に記載の電子化文書検索システム。
  49. 【請求項49】 電子化された複数の登録文書中から所
    望の検索語を含む文書を検索するための索引を、この索
    引の見出しとして登録される各索引語に、この索引語を
    含んでいる前記登録文書の数である文書頻度、前記索引
    語を含む文書の文書識別子、前記索引語の前記各登録文
    書内での出現回数である文書内頻度および前記索引語の
    前記各登録文書内での出現位置の各情報である転置リス
    トを対応付けて記憶している索引記憶手段と、 前記登録文書を前記索引語に分割する文書分割手段と、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成する
    検索語分割手段と、 前記検索条件を解析して、この検索条件から、前記検索
    語分割手段が取得した前記索引語と前記空文書集合との
    うちの少なくとも一方を演算子で合成した検索条件木を
    生成する検索条件解析手段と、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得る検索条件評価手段とを備え、 前記索引は、前記索引語ごとの前記転置リストを文字コ
    ード順にソートしてファイルに格納しているものである
    電子化文書検索システム。
  50. 【請求項50】 電子化された複数の登録文書中から所
    望の検索語を含む文書を検索するための索引を、この索
    引の見出しとして登録される各索引語に、この索引語を
    含んでいる前記登録文書の数である文書頻度、前記索引
    語を含む文書の文書識別子、前記索引語の前記各登録文
    書内での出現回数である文書内頻度および前記索引語の
    前記各登録文書内での出現位置の各情報である転置リス
    トを対応付けて記憶している索引記憶手段と、 前記登録文書を前記索引語に分割する文書分割手段と、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成する
    検索語分割手段と、 前記検索条件を解析して、この検索条件から、前記検索
    語分割手段が取得した前記索引語と前記空文書集合との
    うちの少なくとも一方を演算子で合成した検索条件木を
    生成する検索条件解析手段と、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得る検索条件評価手段とを備え、 前記索引は、固定長のブロックであるページをファイル
    の読み書きの単位としていて、前記転置リストの大きさ
    が前記ページの大きさより所定程度小さいときは1つの
    ページに1つ以上の転置リストを格納し、前記転置リス
    トの大きさが前記ページより大きいときは1つの転置リ
    ストを複数のページに格納しているものである電子化文
    書検索システム。
  51. 【請求項51】 前記索引は、固定長のブロックである
    ページをファイルの読み書きの単位としていて、前記転
    置リストの大きさが前記ページの大きさより所定程度小
    さいときは1つのページに1つ以上の転置リストを格納
    し、前記転置リストの大きさが前記ページより大きいと
    きは1つの転置リストを複数のページに格納しているも
    のであって、 前記複数のページに格納される転置リストは、文書頻
    度、文書識別子およびページの管理情報を格納するペー
    ジであるヘッダーページと、文書内頻度、出現位置およ
    び文書内頻度出現位置表現ビット数もしくは出現位置表
    現ビット数を格納する文書内頻度出現ページとにページ
    を分けているものである請求項45〜48のいずれかに
    記載の電子化文書検索システム。
  52. 【請求項52】 文書識別子は、1つの文書識別子に対
    応するデータがページをまたがないものである請求項5
    1に記載の電子化文書検索システム。
  53. 【請求項53】 文書識別子は複数ページにまたがって
    格納されていて、文書識別子ページに格納しきれない複
    数の文書識別子の登録順の終わりの1つ以上の文書識別
    子はヘッダーページに格納されているものである請求項
    51または52に記載の電子化文書検索システム。
  54. 【請求項54】 文書識別子は複数の文書識別子ページ
    にまたがって格納されていて、この文書識別子ページの
    管理情報である文書識別子ページ索引に文書識別子ペー
    ジのページ番号と各ページの先頭に記録された文書識別
    子とを記録しているものである請求項51または52に
    記載の電子化文書検索システム。
  55. 【請求項55】 文書識別子ページ索引には、文書識別
    子ページの各ページの末尾に記録された文書識別子を記
    録しているものである請求項54に記載の電子化文書検
    索システム。
  56. 【請求項56】 文書識別子をページのサイズより小さ
    な固定長ブロックである文書識別子ブロックに分割して
    格納し、文書識別子ブロックごとにそのはじめの文書の
    文書識別子は前の文書識別子との差分をとらずに格納
    し、文書内頻度、出現位置および文書内頻度出現位表現
    ビット数もしくは出現位置表現ビット数がある場合には
    前記文書内頻度出現位表現ビット数または出現位置表現
    ビット数は文書識別子ブロックと同じ文書の情報を格納
    するブロックである文書内頻度出現位置ブロックに分割
    して格納している請求項51または52に記載の電子化
    文書検索システム。
  57. 【請求項57】 コンピュータで読取可能なプログラム
    を記憶していて、 このプログラムは、コンピュータに読み取られることに
    より、与えられた検索条件に従って、電子化されて所定
    の記憶装置に登録されている複数の文書中から所望の検
    索語を含む文書の検索を前記コンピュータに実行可能と
    するものであり、 この検索の実行では、 電子化された複数の登録文書中から所望の検索語を含む
    文書を検索するための索引を、この索引の見出しとして
    登録される各索引語に、この索引語を含んでいる前記登
    録文書の数である文書頻度、前記索引語を含む文書の文
    書識別子、前記索引語の前記各登録文書内での出現回数
    である文書内頻度および前記索引語の前記各登録文書内
    での出現位置の各情報を対応付けて記憶して、 前記登録文書を前記索引語に分割し、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成し、 前記検索条件を解析して、この検索条件から、取得した
    前記索引語と前記空文書集合とのうちの少なくとも一方
    を演算子で合成した検索条件木を生成し、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得るものであり、 nを1以上の整数としたときに、前記文書分割手段は前
    記登録文書をn文字の連鎖である前記索引語に分割し、
    前記検索語分割手段は前記検索語を覆う1つ以上のn文
    字連鎖である前記索引語に分割し、前記検索条件解析手
    段は前記検索語が2つ以上の前記索引語に分割されると
    きはこの複数の索引語の出現位置間の距離を指定する位
    置演算子で合成するものである記憶媒体。
  58. 【請求項58】 コンピュータで読取可能なプログラム
    を記憶していて、 このプログラムは、コンピュータに読み取られることに
    より、与えられた検索条件に従って、電子化されて所定
    の記憶装置に登録されている複数の文書中から所望の検
    索語を含む文書の検索を前記コンピュータに実行可能と
    するものであり、 この検索の実行では、 電子化された複数の登録文書中から所望の検索語を含む
    文書を検索するための索引を、この索引の見出しとして
    登録される各索引語に、この索引語を含んでいる前記登
    録文書の数である文書頻度、前記索引語を含む文書の文
    書識別子、前記索引語の前記各登録文書内での出現回数
    である文書内頻度および前記索引語の前記各登録文書内
    での出現位置の各情報を対応付けて記憶して、 前記登録文書を前記索引語に分割し、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成し、 前記検索条件を解析して、この検索条件から、取得した
    前記索引語と前記空文書集合とのうちの少なくとも一方
    を演算子で合成した検索条件木を生成し、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得るものであり、 前記分割で得た複数の索引語のうち前記検索語を覆う他
    の索引語に包含されるものは除外するものであり、前記
    検索語が2つ以上の前記索引語に分割されるときはこの
    複数の索引語の出現位置間の距離を指定する位置演算子
    で合成するものである記憶媒体。
  59. 【請求項59】 コンピュータで読取可能なプログラム
    を記憶していて、 このプログラムは、コンピュータに読み取られることに
    より、与えられた検索条件に従って、電子化されて所定
    の記憶装置に登録されている複数の文書中から所望の検
    索語を含む文書の検索を前記コンピュータに実行可能と
    するものであり、 この検索の実行では、 電子化された複数の登録文書中から所望の検索語を含む
    文書を検索するための索引を、この索引の見出しとして
    登録される各索引語に、この索引語を含んでいる前記登
    録文書の数である文書頻度、前記索引語を含む文書の文
    書識別子、前記索引語の前記各登録文書内での出現回数
    である文書内頻度および前記索引語の前記各登録文書内
    での出現位置の各情報を対応付けて記憶して、 前記登録文書を前記索引語に分割し、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成し、 前記検索条件を解析して、この検索条件から、取得した
    前記索引語と前記空文書集合とのうちの少なくとも一方
    を演算子で合成した検索条件木を生成し、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得るものであり、 前記検索語を2つ以上の前記索引語に分割する場合は、
    これら複数の索引語を複数の検索結果の積集合をとる積
    集合演算子で合成した条件木である候補決定用条件木
    と、前記複数の索引語から検索語を覆う最小個数のもの
    を選択してそれを出現位置間の距離を指定する位置演算
    子で合成した条件木である詳細判定用条件木とを作成
    し、まず前記候補決定用条件木の前記検索結果合成処理
    を実行して前記複数の登録文書から該当文書を検索し、
    次に、この検索後の登録文書を対象に前記詳細判定用条
    件木の前記検索結果合成処理を実行して前記検索結果を
    得るものである記憶媒体。
  60. 【請求項60】 コンピュータで読取可能なプログラム
    を記憶していて、 このプログラムは、コンピュータに読み取られることに
    より、与えられた検索条件に従って、電子化されて所定
    の記憶装置に登録されている複数の文書中から所望の検
    索語を含む文書の検索を前記コンピュータに実行可能と
    するものであり、 この検索の実行では、 電子化された複数の登録文書中から所望の検索語を含む
    文書を検索するための索引を、この索引の見出しとして
    登録される各索引語に、この索引語を含んでいる前記登
    録文書の数である文書頻度、前記索引語を含む文書の文
    書識別子、前記索引語の前記各登録文書内での出現回数
    である文書内頻度および前記索引語の前記各登録文書内
    での出現位置の各情報を対応付けて記憶して、 前記登録文書を前記索引語に分割し、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成し、 前記検索条件を解析して、この検索条件から、取得した
    前記索引語と前記空文書集合とのうちの少なくとも一方
    を演算子で合成した検索条件木を生成し、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得るものであり、 前記検索語を2つ以上の前記索引語に分割する場合は、
    これら複数の索引語を複数の検索結果の積集合をとる積
    集合演算子で合成した条件木である候補決定用条件木
    と、前記複数の索引語から前記検索語を覆いかつ索引語
    ごとの前記文書頻度の合計が最小となるものを選択して
    それを出現位置間の距離を指定する位置演算子で合成し
    た条件木である詳細判定用条件木とを作成し、まず前記
    候補決定用条件木の前記検索結果合成処理を実行して前
    記複数の登録文書から該当文書を検索し、次に、この検
    索後の登録文書を対象に前記詳細判定用条件木の前記検
    索結果合成処理を実行して前記検索結果を得るものであ
    る記憶媒体。
  61. 【請求項61】 コンピュータで読取可能なプログラム
    を記憶していて、 このプログラムは、コンピュータに読み取られることに
    より、与えられた検索条件に従って、電子化されて所定
    の記憶装置に登録されている複数の文書中から所望の検
    索語を含む文書の検索を前記コンピュータに実行可能と
    するものであり、 この検索の実行では、 電子化された複数の登録文書中から所望の検索語を含む
    文書を検索するための索引を、この索引の見出しとして
    登録される各索引語に、この索引語を含んでいる前記登
    録文書の数である文書頻度、前記索引語を含む文書の文
    書識別子、前記索引語の前記各登録文書内での出現回数
    である文書内頻度および前記索引語の前記各登録文書内
    での出現位置の各情報を対応付けて記憶して、 前記登録文書を前記索引語に分割し、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成し、 前記検索条件を解析して、この検索条件から、取得した
    前記索引語と前記空文書集合とのうちの少なくとも一方
    を演算子で合成した検索条件木を生成し、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得るものであり、 前記索引は、前記索引語ごとに、前記各文書識別子は前
    の文書識別子の値との差分を可変長符号で表現したもの
    であり、前記文書内頻度は可変長符号で表現されたもの
    であり、前記各出現位置は文書ごとの前の出現位置の値
    との差分を可変長符号で表現したものである記憶媒体。
  62. 【請求項62】 コンピュータで読取可能なプログラム
    を記憶していて、 このプログラムは、コンピュータに読み取られることに
    より、与えられた検索条件に従って、電子化されて所定
    の記憶装置に登録されている複数の文書中から所望の検
    索語を含む文書の検索を前記コンピュータに実行可能と
    するものであり、 この検索の実行では、 電子化された複数の登録文書中から所望の検索語を含む
    文書を検索するための索引を、この索引の見出しとして
    登録される各索引語に、この索引語を含んでいる前記登
    録文書の数である文書頻度、前記索引語を含む文書の文
    書識別子、前記索引語の前記各登録文書内での出現回数
    である文書内頻度および前記索引語の前記各登録文書内
    での出現位置の各情報を対応付けて記憶して、 前記登録文書を前記索引語に分割し、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成し、 前記検索条件を解析して、この検索条件から、取得した
    前記索引語と前記空文書集合とのうちの少なくとも一方
    を演算子で合成した検索条件木を生成し、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得るものであり、 前記索引は、前記索引語ごとの前記転置リストを文字コ
    ード順にソートしてファイルに格納しているものである
    記憶媒体。
  63. 【請求項63】 コンピュータで読取可能なプログラム
    を記憶していて、 このプログラムは、コンピュータに読み取られることに
    より、与えられた検索条件に従って、電子化されて所定
    の記憶装置に登録されている複数の文書中から所望の検
    索語を含む文書の検索を前記コンピュータに実行可能と
    するものであり、 この検索の実行では、 電子化された複数の登録文書中から所望の検索語を含む
    文書を検索するための索引を、この索引の見出しとして
    登録される各索引語に、この索引語を含んでいる前記登
    録文書の数である文書頻度、前記索引語を含む文書の文
    書識別子、前記索引語の前記各登録文書内での出現回数
    である文書内頻度および前記索引語の前記各登録文書内
    での出現位置の各情報を対応付けて記憶して、 前記登録文書を前記索引語に分割し、 与えられた検索条件中の検索語を前記索引語に分割し、
    また、前記検索語中に前記索引語が1つも含まれていな
    いときは該当文書がない旨を示す空文書集合を作成し、 前記検索条件を解析して、この検索条件から、取得した
    前記索引語と前記空文書集合とのうちの少なくとも一方
    を演算子で合成した検索条件木を生成し、 この検索条件木に基づき、前記索引から前記索引語に関
    する前記情報を取得して検索結果合成処理を実行し検索
    結果を得るものであり、 前記索引は、固定長のブロックであるページをファイル
    の読み書きの単位としていて、前記転置リストの大きさ
    が前記ページの大きさより所定程度小さいときは1つの
    ページに複数の転置リストを格納し、前記転置リストの
    大きさが前記ページより大きいときは1つの転置リスト
    を複数のページに格納しているものである記憶媒体。
JP10256974A 1998-02-02 1998-09-10 電子化文書検索システムおよび記憶媒体 Pending JPH11282880A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10256974A JPH11282880A (ja) 1998-02-02 1998-09-10 電子化文書検索システムおよび記憶媒体

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2084098 1998-02-02
JP10-20840 1998-02-02
JP10256974A JPH11282880A (ja) 1998-02-02 1998-09-10 電子化文書検索システムおよび記憶媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005316003A Division JP4011595B2 (ja) 1998-02-02 2005-10-31 電子化文書検索システムおよび記録媒体

Publications (1)

Publication Number Publication Date
JPH11282880A true JPH11282880A (ja) 1999-10-15

Family

ID=26357832

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10256974A Pending JPH11282880A (ja) 1998-02-02 1998-09-10 電子化文書検索システムおよび記憶媒体

Country Status (1)

Country Link
JP (1) JPH11282880A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714927B1 (en) 1999-08-17 2004-03-30 Ricoh Company, Ltd. Apparatus for retrieving documents
JP2010044763A (ja) * 2008-08-08 2010-02-25 Estsoft Corp リアルタイム索引情報抽出機能を有するファイルアップロード方法及びこれを用いたウェブストレージシステム
JP2011210110A (ja) * 2010-03-30 2011-10-20 Nippon Telegr & Teleph Corp <Ntt> 複合語に対する文書数予測装置及び方法及びプログラム
US11112955B2 (en) 2017-11-10 2021-09-07 Furuno Electric Co., Ltd. Nautical chart display device, nautical chart display method, and nautical chart display program

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57166668A (en) * 1981-04-08 1982-10-14 Agency Of Ind Science & Technol Information retrieving device
JPH03116375A (ja) * 1989-09-29 1991-05-17 Ricoh Co Ltd 情報検索装置
JPH08339383A (ja) * 1995-04-11 1996-12-24 Ricoh Co Ltd 文書検索装置及び辞書作成装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57166668A (en) * 1981-04-08 1982-10-14 Agency Of Ind Science & Technol Information retrieving device
JPH03116375A (ja) * 1989-09-29 1991-05-17 Ricoh Co Ltd 情報検索装置
JPH08339383A (ja) * 1995-04-11 1996-12-24 Ricoh Co Ltd 文書検索装置及び辞書作成装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6714927B1 (en) 1999-08-17 2004-03-30 Ricoh Company, Ltd. Apparatus for retrieving documents
US7188104B2 (en) 1999-08-17 2007-03-06 Ricoh Company, Ltd. Apparatus for retrieving documents
JP2010044763A (ja) * 2008-08-08 2010-02-25 Estsoft Corp リアルタイム索引情報抽出機能を有するファイルアップロード方法及びこれを用いたウェブストレージシステム
JP2011210110A (ja) * 2010-03-30 2011-10-20 Nippon Telegr & Teleph Corp <Ntt> 複合語に対する文書数予測装置及び方法及びプログラム
US11112955B2 (en) 2017-11-10 2021-09-07 Furuno Electric Co., Ltd. Nautical chart display device, nautical chart display method, and nautical chart display program

Similar Documents

Publication Publication Date Title
US8171029B2 (en) Automatic generation of ontologies using word affinities
JP2929963B2 (ja) 文書検索装置および単語索引作成方法および文書検索方法
EP0510634B1 (en) Data base retrieval system
US6662189B2 (en) Method of performing data mining tasks for generating decision tree and apparatus therefor
US5680612A (en) Document retrieval apparatus retrieving document data using calculated record identifier
CN111868710B (zh) 搜索大规模非结构化数据的随机提取森林索引结构
US8095526B2 (en) Efficient retrieval of variable-length character string data
US20030033278A1 (en) Data sort method, data sort apparatus, and data sort program
US7880648B2 (en) Information processing apparatus, information processing method, and computer product
JP4893805B2 (ja) 情報処理プログラム、情報検索プログラム、および情報処理装置
JP2833580B2 (ja) 全文インデックス作成装置および全文データベース検索装置
JPH09245043A (ja) 情報検索装置
US9600565B2 (en) Data structure, index creation device, data search device, index creation method, data search method, and computer-readable recording medium
JP4011595B2 (ja) 電子化文書検索システムおよび記録媒体
JPH08329116A (ja) 構造化文書検索方法
JPH11282880A (ja) 電子化文書検索システムおよび記憶媒体
JP4208326B2 (ja) 情報索引装置
JP2993540B2 (ja) 昇順整数列データの圧縮および復号システム
US6411958B1 (en) Data processing system and method for generating a structured listing of symbols
JP3678615B2 (ja) 文書検索装置及び文書検索方法
JP2001052024A (ja) 類似特徴量の検索方法及び装置及び類似特徴量の検索プログラムを格納した記憶媒体
KR100745292B1 (ko) 전자사전 검색 시스템
CN106934002B (zh) 一种搜索关键字数字化解析方法和引擎
US9350383B2 (en) Run total encoded data processing
JP2002032411A (ja) 関連文書検索方法および装置

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20050609

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050803

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050830

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051031

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060105