JP2929963B2 - 文書検索装置および単語索引作成方法および文書検索方法 - Google Patents

文書検索装置および単語索引作成方法および文書検索方法

Info

Publication number
JP2929963B2
JP2929963B2 JP7056021A JP5602195A JP2929963B2 JP 2929963 B2 JP2929963 B2 JP 2929963B2 JP 7056021 A JP7056021 A JP 7056021A JP 5602195 A JP5602195 A JP 5602195A JP 2929963 B2 JP2929963 B2 JP 2929963B2
Authority
JP
Japan
Prior art keywords
word
dictionary
character
order
frequency
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.)
Expired - Fee Related
Application number
JP7056021A
Other languages
English (en)
Other versions
JPH08249354A (ja
Inventor
直彦 野口
祐司 菅野
一晃 倉知
光昭 稲葉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP7056021A priority Critical patent/JP2929963B2/ja
Priority to US08/601,656 priority patent/US5706496A/en
Publication of JPH08249354A publication Critical patent/JPH08249354A/ja
Application granted granted Critical
Publication of JP2929963B2 publication Critical patent/JP2929963B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、電子化され蓄積された
文書情報から所望の文書を検索する文書検索装置に関す
るものであり、文書情報が蓄積されたデータベースの検
索や、一般のワードプロセッサ、オフィスコンピュータ
などの記憶装置に蓄積された文書情報の検索などに利用
することができる単語索引、および単語索引作成装置、
及び文書検索装置に関するものである。
【0002】
【従来の技術】近年、電子メールや電子カタログ、電子
出版物など、電子化された文書情報が大量に流通し始め
たことに伴って、それらの文書情報から所望の文書だけ
を検索する文書検索装置に対する関心が高まってきてい
る。
【0003】そのような文書検索装置において、従来
は、文書毎に付与されたキーワードを利用するキーワー
ド検索という手法を用いるものが一般的であったが、そ
のキーワード付けの作業が蓄積文書の増加に間に合わな
いといった問題点が指摘され、近年はその問題点を解決
する、全文検索という手法が注目されてきている。
【0004】全文検索では、利用者から与えられる文字
列による検索条件と、蓄積されている文書を構成する文
字列のすべてとの間で照合を行なって検索条件を満たす
文書を出力するため、あらかじめキーワードを付与する
必要がない。
【0005】全文検索を実現する手法としては、現在ま
でに種々のものが提案されてきており、その全体像につ
いては、例えば成書 William B. Frakes and RicardoBa
eza-Yates (eds.)、"Information Retrieval-- Data st
ructure& Algorithms --", Prentice Hall(1992) など
に詳細な説明がなされているが、検索対象文書に対し
て、検索に先だって、どのような補助的情報(ファイ
ル)を構成しておくかという観点から、次の3つの手法
に大別することができる。 (1)全文スキャン方式 (2)シグネチャファイル方式 (3)索引(転置)ファイル方式 (1)は、検索条件文字列と検索対象文書を逐一照合を
行なって結果を得るもので、予め検索のための補助ファ
イルは作成する必要がなく、従って記憶容量は節約でき
るが、検索速度は他の方式に比べて遅く、大量の文書検
索には不向きである。
【0006】(2)は、検索のための補助ファイルとし
て、文書のシグネチャと呼ばれるファイルを予め構築
し、それをプリサーチに利用して全文スキャンを行なう
文書量を軽減するもので、(1)に比べて高速な検索を
行なうことができるが、通常原データの数10%の容量
のシグネチャファイルを構築する必要がある。
【0007】(3)は、検索のための補助ファイルとし
て、文字/単語/n-gramなどが出現する文書、あるいは
位置を記録する索引(転置)ファイルを予め構築し、全
文検索時には、索引ファイルのみを用いて検索するもの
で、(1)(2)に比べて、非常に高速な検索を行なう
ことが可能であるが、通常原データの数倍にも及ぶ索引
ファイルを構築する必要がある。
【0008】以上3つの手法は、それぞれ一長一短があ
るので、それぞれの文書検索システムの要求仕様に従っ
て、使い分ける必要があるが、非常に大量の文書に対し
て、高速な検索を要求するシステムに対しては、(3)
の方式を実現するのが望ましい。(3)の方式を実現す
る場合に、欧米語では、単語の区切りが明瞭であるの
で、比較的簡単に単語を単位とした索引ファイル(単語
索引)を構成することができるが、中国語、日本語な
ど、いわゆる膠着言語と呼ばれる言語の文書に対して、
単語を単位とした索引ファイルを構成するためには、形
態素解析技術などを利用して文書をなるべく正確に単語
列に分割する必要がある。
【0009】しかし、現在の形態素解析技術では、完全
な単語分割は不可能であるため、誤った単語が索引ファ
イルに登録されたり、形態素解析で用いる辞書中に存在
しない文字列(未知語)が文書中に出現することによっ
て、文書中の一部は索引ファイルに登録されない可能性
があり、それらが原因で検索もれが生じる。
【0010】以下、形態素解析を用いて単語分割を行な
い、単語索引を構成する従来手法について説明する。図
25は、従来手法の簡単なブロック図である。形態素解
析処理252は、辞書253を参照しつつ検索対象文書
251の単語分割を行ない、索引作成処理254が、分
割された単語ごとに、その出現位置を単語索引に記録す
る。
【0011】今、図26に示すような辞書項目を持つ辞
書を用いて、文書「このはこをはこぶ」の単語索引を構
成する場合を考えてみよう。この場合、辞書項目が不足
しているために、この文書を完全に単語分割することは
不可能である。たとえ形態素解析処理に未知語の処理が
できたと仮定しても、分割される単語列は、図27、図
28に示すもののいずれかとなる。図27のように単語
分割が行なわれた場合、構成される単語索引は、図29
のようになる。文書が、「この箱を運ぶ」というもので
あったとすると、「はこ」でこの文書を検索することが
要求されるが、単語索引には、「はこ」という単語は登
録されないので、この単語索引を用いて「はこ」を検索
した場合に検索することができず、検索もれを生じるこ
とになる。
【0012】また、図28のように単語分割が行なわれ
た場合には、図30のような単語索引が構成される。文
書が、「木の葉、子を運ぶ」というものであったとする
と、「このは」でこの文書を検索することが要求される
が、単語索引には、「このは」という単語は登録され
ず、やはり検索もれを生じることになる。
【0013】いかなる文書に対しても未知語が存在しな
いような、十分な辞書項目をあらかじめ辞書に与えるこ
とは非常に難しく、また、たとえ辞書項目が十分であっ
たとしても、上の例で示したように、全ての文書に対し
て正しい単語分割ができることは保証できないので、以
上の従来の手法を用いる限り、もれのない検索を行なう
ことは不可能である。
【0014】このような従来手法に対し、日本語など、
膠着言語の文書に対しては、単語ではなく 、1文字あ
るいは2文字連接(bi-gram) を単位として索引ファイル
を構成する手法が 菊池忠一、"日本語文書用高速全文検
索の一手法"、電子情報通信学会論文誌、Vol.J75-D-I,
No.9, pp.836-846 (1992) で提案されている。これは、
単語の代わりに、1文字、2文字連接などの一般的な n
-gram を単位として、それらの検索対象文書中における
出現位置を記録した索引ファイルを構成し、検索時に
は、検索条件文字列を構成する n-gram から、それらの
出現位置を全て求め、それら出現位置が文書中にて連接
する可能性のあるものだけを選択するという連接演算を
行って、検索結果を求めるものである。この手法によれ
ば、上記に説明したような欠点を克服することが可能に
なる。
【0015】以下、2文字連接(bi-gram)を単位とした
索引ファイルによる全文検索手法について説明する。当
該手法では、文書を2文字ずつの連鎖で全て分割して、
その出現位置を索引に記録する。例えば、上で与えた文
書「このはこをはこぶ」に対しては、図31のような分
割が与えられる。この分割に従って、図32に示す索引
を構成する。この索引を用いれば、例えば「はこ」とい
う検索条件に対しては、索引に記載された文字位置3、
6がそのまま検索結果となる。また、「このは」という
検索条件に対しては、まず、検索条件の文字列を2文字
連接(bi-gram)に分割し、それらの文書中での出現位置
を、索引より求めて、「この」に対して1、「のは」に
対して2という出現位置を得る。実際の「このは」の出
現に対しては、「この」と「のは」の2文字連接(bi-gr
am)が文書中で連続していることが要求されるので、そ
れらの出現位置の連続性を調べて、結局文字位置1に
「このは」が出現しているという結果を得る。同様に、
「はこぶ」という検索条件に対しては、「はこ」に対し
て3、6、「こぶ」に対して7という出現位置が得られ
るので、「はこ」「こぶ」が連続するのは文書中の6か
ら始まる3文字であるという結果を得る。
【0016】以上、 2文字連接(bi-gram)を単位にした
索引を構成して、検索時には検索条件に出現する2文字
連接(bi-gram)の索引上での連接可能性を調べることに
よって、如何なる文字列に対しても、もれのない検索を
行なうことが可能になる。
【0017】
【発明が解決しようとする課題】しかしながら上記の従
来の構成では、一般の検索条件文字列に対して、常に上
記のような連接演算を行なう必要があり、検索条件文字
列の長さ、あるいはそれを構成する n-gram の検索対象
文書中での頻度などによって、検索速度が悪化する場合
があるという課題を有していた。
【0018】また、一般に(3)の方式は、索引ファイ
ルの容量が原データの数倍にも及び、使用できる記憶装
置の容量に制限がある場合などには、その実現が困難で
あるという課題を有していた。
【0019】本発明は上記従来技術の課題を解決するも
ので、検索に先だって、単語を単位とした、容量が比較
的小さい索引ファイルを構成し、任意の検索文字列に対
して、もれのない高速な全文検索を実現する単語索引お
よび単語索引作成方法、単語索引照合方法、ならびに文
書検索装置を提供することを目的とする。
【0020】
【課題を解決するための手段】この目的を達成するため
に、本発明の第1の態様による文書検索装置は、ある定
められた文字セットに含まれる文字の有限個のならびか
らなる列を「前記文字セットから生成される文字列」と
呼び、前記文字セットに含まれる文字の有限個のならび
からなる任意の検索対象文書と、前記文字セットから生
成される有限個の文字列を単語として登録した任意の辞
書に対して、前記辞書中に登録してある文字列のこと
を、前記辞書の「単語」と呼び、前記文字セットから生
成されるある文字列が、やはり前記文字セットから生成
される別の文字列の一部あるいは全体と一致する場合
に、「前者は後者の部分文字列である」と呼び、前記文
字セットから生成されるある文字列の頭部が、やはり前
記文字セットから生成される別の文字列の終端部が一致
する場合に、「前者は後者の終端重なり文字列である」
と呼び、「後者は前者の頭部重なり文字列である」と呼
び、前記文字セットから生成されるある文字列の後部
に、やはり前記文字セットから生成される別の文字列を
連接して構成される新たな文字列を、「前者と後者の連
接文字列」と呼び、前記文字セットから生成されるある
文字列が、やはり前記文字セットから生成される別の文
字列の頭部重なり文字列である時に、前者文字列の後部
に、後者文字列から前者文字列の終端部と一致する頭部
を除いた部分文字列を連接して構成される新たな文字列
を、「前者と後者の重なり連接文字列」と呼び、前記文
字セットから生成される有限個の文字列で構成されるあ
る列に対して、当該列の最初の文字列と次の文字列との
連接文字列あるいは重なり連接文字列を構成し、新たに
構成された文字列と、さらに当該列の次の文字列との連
接文字列あるいは重なり連接文字列を構成するという操
作を、当該列の最終の文字列まで繰り返して構成される
新たな文字列を、「元の文字列の列から生成される連接
文字列」と呼び、前記文字セットから生成されるある文
字列に対して、前記辞書中の一般に複数の単語からなる
単語の列について、当該単語列から生成される連接文字
列中に当該文字列が存在する場合、「当該文字列は、当
該単語列によって被覆される」と呼び、また、そのよう
な単語列が前記辞書から選べる時に、「当該文字列は、
当該辞書によって被覆可能である」と呼び、前記文書中
の文字列で、かつ前記辞書の単語であるものについて、
前記文書中での当該単語の始点となる文字位置あるいは
当該単語の終点となる文字位置と、当該単語あるいは当
該単語の前記辞書中での識別子との2つからなる組を、
前記文書の前記辞書に対する「当該単語を鍵とした索引
要素」と呼び、前記索引要素に対して、当該索引要素を
構成する文字位置が、当該索引要素を構成する単語の前
記文書中での始点文字位置で構成されている場合には、
当該始点文字位置と、当該始点文字位置から始まる当該
単語の前記文書中での終点となる文字位置とで構成され
る範囲を、また、前記索引要素に対して、当該索引要素
を構成する文字位置が、当該索引要素を構成する単語の
前記文書中での終点文字位置で構成されている場合に
は、当該終点文字位置と、当該終点文字位置で終了する
当該単語の前記文書中での始点となる文字位置とで構成
される範囲を、「当該索引要素に対応した文字位置範
囲」と呼び、ある索引要素を構成する単語が、別の索引
要素を構成する単語の部分文字列であり、かつ前者に対
応した文字位置範囲が、後者に対応した文字位置範囲に
等しいか含まれる場合に、「後者は前者の延長索引要素
である」と呼び、前記文書の前記辞書に対する、可能な
索引要素全てからなる集合を、「完全索引要素集合」と
呼び、前記文書の前記辞書に対する有限個の索引要素か
らなる任意の集合において、当該集合中のある索引要素
が、当該集合中に自分以外の延長索引要素を持たない場
合に、当該索引要素は、「当該集合中で極大」であると
呼ぶことにした時、前記検索対象文書の前記辞書に対す
る可能な全ての索引要素からなる完全索引要素集合中
で、極大となる索引要素全てを位置情報格納配列に格納
する位置情報格納手段と、前記位置情報格納配列に格納
された各索引要素を構成する各単語について、当該単語
の任意の部分文字列と、当該単語との全ての対応を、延
長語対応表に記録する延長語対応表記録手段とを備えた
単語索引部を有するものである。
【0021】本発明の第2の態様による文書検索装置
は、与えられた文書と辞書に対して、前記検索対象文書
中の文字列であって、前記辞書に含まれないものを、な
んらかの方法で選択して前記辞書に追加登録し、前記文
書の前記辞書に対する完全索引要素集合中で極大となる
索引要素全てを位置情報格納配列に格納する位置情報格
納手段と、前記位置情報格納配列に格納された各索引要
素を構成する各単語について、当該単語の任意の部分文
字列と、当該単語との全ての対応を、延長語対応表に記
録する延長語対応表記録手段とを備えた単語索引部を有
するものであり、かつ前記文書中の全ての文字位置に対
して、当該文字位置を被覆する少なくとも一つ以上の索
引要素が前記位置情報格納配列中に存在するという性質
を満たすものである。
【0022】本発明の第3の態様による文書検索装置
は、第1または第2の態様による文書検索装置の位置情
報格納手段が、各単語について、当該単語を鍵とした
引要素から、各索引要素を構成する文字位置を全て抽出
し、それらを文字位置の持つ順序関係に従って整列させ
た列と、各単語との対応表として位置情報格納配列を再
構成するものである。
【0023】本発明の第4の態様による文書検索装置
は、第3の態様による文書検索装置の延長語対応表記録
手段が、位置情報格納配列に格納された全単語を辞書順
に並べ、それらに昇順の番号を割り付けて、各単語の辞
書順番号とし、その辞書順番号と、各単語あるいは各単
語の辞書中での識別子との対応を記述した辞書順単語番
号表と、位置情報格納配列に格納された全単語につい
て、各単語を反転して構成される各文字列を辞書順に並
べ、それらに昇順の番号を割り付けて、反転した各単語
の反転辞書順番号とし、その反転辞書順番号と、各単語
あるいは各単語の辞書中での識別子との対応を記述した
反転辞書順単語番号表と、検索対象文書を構成する全て
の文字について、それが位置情報格納配列に格納された
全単語の、どの文字位置に出現するのかという情報を記
述した出現単語1文字索引表とを構成し、それらをまと
めて延長語対応表として記録するものである。
【0024】本発明の第5の態様による文書検索装置
は、第3の態様による文書検索装置の延長語対応表記録
手段が、位置情報格納配列に格納された全単語を辞書順
に並べ、それらに昇順の番号を割り付けて、各単語の辞
書順番号とし、その辞書順番号と、各単語あるいは各単
語の辞書中での識別子との対応を記述した辞書順単語番
号表と、位置情報格納配列に格納された全単語につい
て、各単語を反転して構成される各文字列を辞書順に並
べ、それらに昇順の番号を割り付けて、反転した各単語
の反転辞書順番号とし、その反転辞書順番号と、各単語
あるいは各単語の辞書中での識別子との対応を記述した
反転辞書順単語番号表と、文字セット中の全ての文字を
辞書順に並べ、それらに昇順の番号を割り付けて各文字
の辞書順番号とし、文字セット中の全ての文字につい
て、当該文字の辞書順番号と、当該文字と、前記辞書順
単語番号表に記載された単語で当該文字を先頭1文字と
して持つもののうち、辞書順番号が最小の単語の辞書順
番号との対応を記述した辞書順先頭1文字表と、文字セ
ット中の全ての文字について、当該文字の辞書順番号
と、当該文字と、前記反転辞書順単語番号表に記載され
た単語で当該文字を末尾1文字として持つもののうち、
反転辞書順番号が最小の単語の反転辞書順番号との対応
を記述した反転辞書順末尾1文字表と、検索対象文書を
構成する全ての文字について、それが位置情報格納配列
に格納された全単語の、どの文字位置に出現するのかと
いう情報を記述した出現単語1文字索引表と、を構成
し、それらをまとめて延長語対応表として記録するもの
である。
【0025】本発明の第6の態様による文書検索装置
は、第3の態様による文書検索装置の延長語対応表記録
手段が、位置情報格納配列に格納された単語のうちで
、当該単語の検索対象文書における出現頻度が、あら
かじめ定められた基準より大なる単語全てを辞書順に並
べ、それらに昇順の番号を割り付けて各単語の辞書順高
頻度語番号とし、その辞書順高頻度語番号と、各単語あ
るいは各単語の辞書中での識別子との対応を記述した辞
書順高頻度語番号表と、位置情報格納配列に格納された
単語のうちで、当該単語の検索対象文書における出現頻
度が、あらかじめ定められた基準より大なる単語全てに
ついて、各単語を反転して構成される各文字列を辞書順
に並べ、それらに昇順の番号を割り付けて、反転した各
単語の反転辞書順高頻度語番号とし、その反転辞書順高
頻度語番号と、各単語あるいは各単語の辞書中での識別
子との対応を記述した反転辞書順高頻度語番号表と、位
置情報格納配列に格納された単語のうちで、当該単語の
検索対象文書における出現頻度が、あらかじめ定められ
た基準より小なる単語全てを辞書順に並べ、それらに昇
順の番号を割り付けて各単語の辞書順低頻度語番号と
し、当該低頻度語の辞書順の列をあらかじめ定められた
基準によりいくつかのグループに分割して、それらに昇
順の番号を割り付けて辞書順低頻度語グループ番号と
し、その辞書順低頻度語番号、単語あるいは単語の辞書
中での識別子、および辞書順低頻度語グループ番号の対
応を記述した辞書順低頻度語群番号表と、位置情報格納
配列に格納された単語のうちで、当該単語の検索対象文
書における出現頻度が、あらかじめ定められた基準より
小なる単語全てについて、各単語を反転して構成される
文字列を辞書順に並べ、それらに昇順の番号を割り付け
て、反転した各単語の反転辞書順低頻度語番号とし、当
該低頻度語の反転辞書順の列をあらかじめ定められた基
準によりいくつかのグループに分割して、それらに昇順
の番号を割り付けて反転辞書順低頻度語グループ番号と
し、その反転辞書順低頻度語番号、単語あるいは単語の
辞書中での識別子、および反転辞書順低頻度語グループ
番号の対応を記述した反転辞書順低頻度語群番号表と、
検索対象文書を構成する全ての文字について、それが位
置情報格納配列に格納された全単語のどの文字位置に出
現するのかという情報を記述した出現単語1文字索引表
を構成して、それらをまとめて延長語対応表として記
録し、位置情報格納手段が、前記辞書順高頻度語番号表
に記載された各単語あるいは各単語の辞書中での識別子
と、当該単語に対応する文字位置の順序列との対応表と
して構成した高頻度語位置情報格納配列と、各辞書順低
頻度語グループ番号と、当該番号に対応した単語グルー
プに含まれる全単語について、各単語に対応した文字位
置の順序列を全てまとめて、再び文字位置の順序関係に
従って整列させた列との対応表として構成した辞書順低
頻度語位置情報格納配列と、各反転辞書順低頻度語グル
ープ番号と、当該番号に対応した単語グループに含まれ
る全単語について、各単語に対応した文字位置の順序列
を全てまとめて、再び文字位置の順序関係に従って整列
させた列との対応表として構成した反転辞書順低頻度語
位置情報格納配列とを構成して、それらをまとめて位置
情報格納配列として格納するものである。
【0026】本発明の第7の態様による文書検索装置
は、第3の態様による文書検索装置の延長語対応表記録
手段が、位置情報格納配列に格納された単語のうちで、
当該単語の検索対象文書における出現頻度が、あらかじ
め定められた基準より大なる単語全てを辞書順に並べ、
それらに昇順の番号を割り付けて各単語の辞書順高頻度
語番号とし、その辞書順高頻度語番号と、各単語あるい
は各単語の辞書中での識別子との対応を記述した辞書順
高頻度語番号表と、位置情報格納配列に格納された単語
のうちで、当該単語の検索対象文書における出現頻度
が、あらかじめ定められた基準より大なる単語全てにつ
いて、各単語を反転して構成される各文字列を辞書順に
並べ、それらに昇順の番号を割り付けて、反転した各単
語の反転辞書順高頻度語番号とし、その反転辞書順高頻
度語番号と、各単語あるいは各単語の辞書中での識別子
との対応を記述した反転辞書順高頻度語番号表と、位置
情報格納配列に格納された単語のうちで、当該単語の検
索対象文書における出現頻度が、あらかじめ定められた
基準より小なる単語全てを辞書順に並べ、それらに昇順
の番号を割り付けて各単語の辞書順低頻度語番号とし、
当該低頻度語の辞書順の列をあらかじめ定められた基準
によりいくつかのグループに分割して、それらに昇順の
番号を割り付けて辞書順低頻度語グループ番号とし、そ
の辞書順低頻度語番号、単語あるいは単語の辞書中での
識別子、および辞書順低頻度語グループ番号の対応を記
述した辞書順低頻度語群番号表と、位置情報格納配列に
格納された単語のうちで、当該単語の検索対象文書にお
ける出現頻度が、あらかじめ定められた基準より小なる
単語全てについて、各単語を反転して構成される文字列
を辞書順に並べ、それらに昇順の番号を割り付けて、反
転した各単語の反転辞書順低頻度語番号とし、当該低頻
度語の反転辞書順の列をあらかじめ定められた基準によ
りいくつかのグループに分割して、それらに昇順の番号
を割り付けて反転辞書順低頻度語グループ番号とし、そ
の反転辞書順低頻度語番号、単語あるいは単語の辞書中
での識別子、および反転辞書順低頻度語グループ番号の
対応を記述した反転辞書順低頻度語群番号表と、文字セ
ット中のすべての文字を辞書順に並べ、それらに昇順の
番号を割り付けて各文字の辞書順番号とし、文字セット
中のすべての文字について、当該文字の辞書順番号と、
当該文字と、前記辞書順高頻度語番号表に記載された単
語で当該文字を先頭1文字として持つもののうち、辞書
順番号が最小の単語の辞書順番号との対応を記述した辞
書順高頻度語先頭1文字表と、文字セット中のすべての
文字について、当該文字の辞書順番号と、当該文字と、
前記反転辞書順高頻度語番号表に記載された単語で当該
文字を末尾1文字として持つもののうち、反転辞書順番
号が最小の単語の反転辞書順番号との対応を記述した反
転辞書順高頻度語末尾1文字表と、文字セット中のすべ
ての文字について、当該文字の辞書順番号と、当該文字
と、前記辞書順低頻度語群番号表に記載された単語で、
当該文字を先頭1文字として持つもののうち、辞書順番
号が最小の単語の辞書順番号との対応を記述した辞書順
低頻度語群先頭1文字表と、文字セット中のすべての文
字について、当該文字の反転辞書順番号と、当該文字
と、前記反転辞書順低頻度語群番号表に記載された単語
で、当該文字を末尾1文字として持つもののうち、反転
辞書順番号が最小の単語の反転辞書順番号との対応を記
述した反転辞書順低頻度語群末尾1文字表と、検索対象
文書を構成する全ての文字について、それが位置情報格
納配列に格納された全単語の、どの文字位置に出現する
のかという情報を記述した出現単語1文字索引表とを構
成して、それらをまとめて延長語対応表として記録し、
位置情報格納手段が、前記辞書順高頻度語番号表に記載
された各単語あるいは各単語の辞書中での識別子と、当
該単語に対応する文字位置の順序列との対応表として構
成した高頻度語位置情報格納配列と、各辞書順低頻度語
グループ番号と、当該番号に対応した単語グループに含
まれる全単語について、各単語に対応した文字位置の順
序列を全てまとめて、再び文字位置の順序関係に従って
整列させた列との対応表として構成した辞書順低頻度語
位置情報格納配列と、各反転辞書順低頻度語グループ番
号と、当該番号に対応した単語グループに含まれる全単
語について、各単語に対応した文字位置の順序列を全て
まとめて、再び文字位置の順序関係に従って整列させた
列との対応表として構成した反転辞書順低頻度語位置情
報格納配列とを構成して、それらをまとめて位置情報格
納配列として格納するものである。
【0027】本発明の第8の態様による文書検索装置
は、第3の態様による文書検索装置の位置情報格納手段
が、位置情報格納配列に格納された各単語に対応する文
字位置の順序列について、当該列の最初の文字位置につ
いては、それをそのままとり、それ以降の文字位置につ
いては、当該列における直前の文字位置との差分をとっ
て構成した列と、当該単語との対応表として、位置情報
格納配列を再構成して格納するものである。
【0028】本発明の第9の態様による単語索引作成装
置は、ある定められた文字セットに含まれる文字の有限
個のならびからなる任意の検索対象文書に対して、前記
文字セットから生成される有限個の文字列を単語として
登録した任意の辞書と、前記文字セットから生成される
任意の文字列に対して、それが前記辞書の登録単語であ
るかどうかを判定する辞書引き手段と、前記文字セット
から生成される任意の文字列を前記辞書に新規単語とし
て登録する新規単語登録手段と、前記検索対象文書から
前記辞書に対する索引要素を切り出して選択的に位置情
報格納配列に格納する単語切り出し手段と、前記位置情
報格納配列に格納された各索引要素を構成する各単語に
ついて、当該単語の任意の部分文字列と、当該単語との
対応を全て記録した延長語対応表を構成する延長語対応
表構成手段とを備え、前記単語切り出し手段が、前記検
索対象文書を読み込んで、その文書中の任意の文字位置
に対して、前記辞書引き手段を用いて当該文字位置から
始まる当該文書中の任意の長さの文字列が前記辞書中の
単語であるかどうかを判定し、当該文字列が前記辞書中
の単語である場合には、当該文字位置(当該文書中で当
該単語の始点となる文字位置)あるいは当該文書中で当
該単語の終点となる文字位置と、当該単語あるいは当該
単語の辞書中での識別子との2つ組を、索引要素として
抽出し、前記方法にて索引要素を抽出した際に、当該文
書中の全ての文字位置に対して、当該文字位置を被覆す
る少なくとも一つ以上の索引要素が存在するように、前
記文書中から適当な文字列を選択して新規単語登録手段
を用いて前記辞書に新規単語として追加登録し、さら
に、上記方法にて抽出された索引要素の集合の中で、極
大となる索引要素を全て選択して位置情報格納配列に格
納した後に、前記延長語対応表構成手段が、前記位置情
報格納配列に格納された各索引要素を構成する各単語に
ついて、当該単語の任意の部分文字列と、当該単語との
対応を全て延長語対応表に記録することで、請求項2に
記載の単語索引を作成するものである。
【0029】本発明の第10の態様による単語索引作成
装置は、ある定められた文字セットに含まれる文字の有
限個のならびからなる任意の検索対象文書に対して、前
記文字セットから生成される有限個の文字列を単語とし
て登録した任意の辞書と、前記文字セットから生成され
る任意の文字列に対して、それが前記辞書の登録単語で
あるかどうかを判定する辞書引き手段と、前記文字セッ
トから生成される任意の文字列を前記辞書に新規単語と
して登録する新規単語登録手段と、前記検索対象文書か
ら前記辞書に対する索引要素を切り出して選択的に位置
情報格納配列に格納する単語切り出し手段と、前記位置
情報格納配列に格納された各索引要素を構成する各単語
について、当該単語の任意の部分文字列と、当該単語と
の対応を全て記録した延長語対応表を構成する延長語対
応表構成手段とを備え、前記単語切り出し手段が、検索
対象文書の最初の文字位置から始めて、当該文字位置か
ら始まる当該文書中の文字列であってかつ辞書中の単語
であるものが存在するかどうかを辞書引き手段を用いて
判定し、当該文字位置から始まる当該文書中の文字列の
中に、前記辞書中の単語であるものが存在しない場合に
は、当該文字位置を始点文字位置とし、当該文字位置か
ら引き続く文字位置について順次前記辞書引き手段を用
いて各文字位置から始まる当該文書中の文字列であって
かつ辞書中の単語であるものが存在するかどうかを判定
し、そのような単語が存在する最初の文字位置より一つ
前の文字位置を終点文字位置として、前記始点文字位置
から前記終点文字位置までの当該文書中の文字列を、新
規単語登録手段を用いて、当該文字列を辞書に新規単語
として登録し、以上の操作を当該検索対象文書の全ての
文字位置に対して、当該検索対象文書の最終文字位置ま
で順次繰り返した後、再び前記検索対象文書の最初の文
字位置から始めて、各文字位置に対して、辞書引き手段
を用いて、当該文書の当該文字位置から始まる当該文書
中の文字列の中で辞書中の単語となるものについて、当
該文字位置あるいは当該単語の当該文書中での終点とな
る文字位置と、当該単語あるいは当該単語の辞書中での
識別子との2つ組を、索引要素として全て抽出して当該
文字位置に対する索引要素集合を構成し、当該索引要素
集合が空でない場合に、当該索引要素集合中の索引要素
を構成する単語の中で、その長さが最大となる単語(最
長一致単語)を求めて、当該文字位置とその最長一致単
語の長さとの和を当該文字位置における最長一致単語終
了文字位置とし、当該文字位置における最長一致単語終
了文字位置が、当該文字位置に至るまでの全ての文字位
置に対する最長一致単語終了文字位置よりも大になる場
合に限り、当該文字位置あるいは当該最長一致単語終了
文字位置と、当該最長一致単語あるいは当該最長一致単
語の辞書中での識別子とからなる2つ組を選択して位置
情報格納配列に格納し、以上の操作を当該検索対象文書
の全ての文字位置に対して、当該検索対象文書の最終文
字位置まで順次繰り返すことにより、位置情報格納配列
を構成したのちに、前記延長語対応表構成手段が、前記
位置情報格納配列に格納された各索引要素を構成する各
単語について、当該単語の任意の部分文字列と、当該単
語との対応を全て延長語対応表に記録することで、請求
項2に記載の単語索引を作成するものである。
【0030】本発明の第11の態様による単語索引作成
装置は、ある定められた文字セットに含まれる文字の有
限個のならびからなる任意の検索対象文書に対して、前
記文字セットから生成される有限個の文字列を単語とし
て登録した任意の辞書と、前記文字セットから生成され
る任意の文字列に対して、それが前記辞書の登録単語で
あるかどうかを判定する辞書引き手段と、前記文字セッ
トから生成される任意の文字列を前記辞書に新規単語と
して登録する新規単語登録手段と、前記検索対象文書か
ら前記辞書に対する索引要素を切り出して選択的に位置
情報格納配列に格納する単語切り出し手段と、前記位置
情報格納配列に格納された各索引要素を構成する各単語
について、当該単語の任意の部分文字列と、当該単語と
の対応を全て記録した延長語対応表を構成する延長語対
応表構成手段とを備え、前記単語切り出し手段が、検索
対象文書の最初の文字位置から始めて、各文字位置に対
して、辞書引き手段を用いて、当該文書の当該文字位置
から始まる当該文書中の文字列の中で辞書中の単語とな
るものについて、当該文字位置あるいは当該単語の当該
文書中での終点となる文字位置と、当該単語あるいは当
該単語の辞書中での識別子との2つ組を、索引要素とし
て全て抽出して当該文字位置に対する索引要素集合を構
成し、当該索引要素集合が空でない場合には、当該索引
要素集合中の索引要素を構成する単語の中で、その長さ
が最大となる単語(最長一致単語)を求めて、当該文字
位置とその最長一致単語の長さとの和を当該文字位置に
おける最長一致単語終了文字位置とし、当該文字位置に
おける最長一致単語終了文字位置が、当該文字位置に至
るまでの全ての文字位置に対する最長一致単語終了文字
位置よりも大になる場合に限り、当該文字位置あるいは
当該最長一致単語終了文字位置と、当該最長一致単語あ
るいは当該最長一致単語の辞書中での識別子とからなる
2つ組を選択して位置情報格納配列に格納し、当該索引
要素集合が空である場合には、当該文書中の当該文字位
置を最初の文字位置とした長さ1の文字列を、新規単語
登録手段を用いて、辞書に新規単語として登録したのち
に、当該文字位置と、当該文字列あるいは当該文字列の
辞書中での識別子との2つ組ひとつのみからなる集合
を、新たに当該文字位置における索引要素集合として、
上記索引要素集合が空でない場合の方法と同様にして索
引要素を選択して、必要ならば位置情報格納配列に格納
し、以上の操作を当該検索対象文書の最終文字位置まで
順次繰り返すことにより、位置情報格納配列を構成した
のちに、前記延長語対応表構成手段が、前記位置情報格
納配列に格納された各索引要素を構成する各単語につい
て、当該単語の任意の部分文字列と、当該単語との対応
を全て延長語対応表に記録することで、請求項2に記載
の単語索引を作成するものである。
【0031】本発明の第12の態様による文書検索装置
は、ある定められた文字セットに含まれる文字の有限個
のならびからなる任意の検索対象文書と、前記文字セッ
トから生成される有限個の文字列を単語として登録した
任意の辞書に対して構成された請求項1に記載の単語索
引と、前記文字セットから生成される任意の文字列に対
して、それが前記辞書の登録単語であるかどうかを判定
する辞書引き手段と、前記文字セットから生成される任
意の文字列に対して、当該文字列を被覆する、前記辞書
中の単語からなる単語列を算定する被覆単語列算定手段
と、前記文字セットから生成される任意の文字列に対し
て、当該文字列が部分文字列となるような文字列であっ
て、かつ前記単語索引に登録された索引要素の鍵となっ
ているもの全てからなる集合を、当該文字列の延長語集
合として算定する延長語算定手段と、前記単語索引に登
録されている索引要素の鍵となっている単語の有限個の
集まりからなる任意の単語集合に対して、前記単語索引
を用いて、当該単語集合に含まれる各単語を鍵とした全
ての索引要素を単語索引要素集合として求める単語索引
要素検索手段と、2つの索引要素集合に対して、各索引
要素集合の要素が前記文書中に連続して出現するかどう
かを判定して、連続して出現する索引要素列を全て求め
る連接可能性算定手段と、複数個の集合の、要素の重複
のない和集合を計算する和集合算定手段とを備え、前記
文字セットから生成される任意の検索条件文字列を与え
た時、前記延長語算定手段が、当該検索条件文字列の、
前記単語索引中の延長語を全て求めて検索条件延長語集
合とし、前記単語索引要素検索手段が、当該検索条件延
長語集合に対する索引要素を前記単語索引から求めて検
索条件延長語索引要素集合とし、前記辞書引き手段によ
り、前記検索条件文字列が前記辞書の登録単語であるか
どうかを判定して、それが登録単語である場合には、前
記検索条件文字列延長語索引要素集合中の各索引要素を
構成する文字位置から算定される当該検索条件文字列の
始点文字位置全てからなる集合を、前記検索条件文字列
の前記検索対象文書中での全出現位置結果として出力し
て終了し、前記検索条件文字列が前記辞書の登録単語で
ない場合は、前記被覆単語列算定手段が、当該検索条件
文字列を被覆する前記辞書中の単語からなる単語列であ
って、当該列中に当該検索条件文字列を部分文字列とし
て含む単語が存在しないものを一つ任意に選んで検索条
件文字列被覆単語列とし、前記延長語算定手段が、前記
検索条件文字列被覆単語列を構成する各単語について、
前記単語索引中の延長語を全て求めて当該検索条件文字
列被覆単語列に対応する延長語集合列とし、前記単語索
引要素検索手段が、前記延長語集合列を構成する各延長
語集合について、当該延長語集合に含まれる全単語につ
いて、単語索引を参照して、当該単語を鍵とする索引要
素を全て求めて、当該延長語集合列に対応する索引要素
集合列とし、前記連接可能性判定手段が、前記索引要素
集合列中で隣接する全ての各索引要素集合対について連
接可能性を判定して、前記文書中に連続して出現する索
引要素の列を選択して、被覆単語列索引要素列集合と
し、前記和集合算定手段が、前記検索条件延長語索引要
素集合と、前記被覆単語列索引要素列集合の各列から任
意に一つの索引要素を選んで構成した索引要素集合との
和集合を算定して、検索条件文字列索引要素集合とし、
前記検索条件文字列索引要素集合中の各索引要素を構成
する文字位置から算定される当該検索条件文字列の始点
文字位置全てからなる集合を、前記検索条件文字列の前
記検索対象文書中での全出現位置結果として出力して終
了するものである。
【0032】本発明の第13の態様による文書検索装置
は、ある定められた文字セットに含まれる文字の有限個
のならびからなる任意の検索対象文書と、前記文字セッ
トから生成される有限個の文字列を単語として登録した
任意の辞書に対して構成された請求項2に記載の単語索
引と、前記文字セットから生成される任意の文字列に対
して、それが前記辞書の登録単語であるかどうかを判定
する辞書引き手段と、前記文字セットから生成される任
意の文字列に対して、当該文字列を被覆する、前記辞書
中の単語からなる単語列を算定する被覆単語列算定手段
と、前記文字セットから生成される任意の文字列に対し
て、当該文字列が部分文字列となるような文字列であっ
て、かつ前記単語索引に登録された索引要素の鍵となっ
ているもの全てからなる集合を、当該文字列の延長語集
合として算定する延長語算定手段と、前記単語索引に登
録されている索引要素の鍵となっている単語の有限個の
集まりからなる任意の単語集合に対して、前記単語索引
を用いて、当該単語集合に含まれる各単語を鍵とした全
ての索引要素を単語索引要素集合として求める単語索引
要素検索手段と、2つの索引要素集合に対して、各索引
要素集合の要素が前記文書中に連続して出現するかどう
かを判定して、連続して出現する索引要素列を全て求め
る連接可能性算定手段と、複数個の集合の、要素の重複
のない和集合を計算する和集合算定手段とを備え、前記
文字セットから生成される任意の検索条件文字列を与え
た時、前記延長語算定手段が、当該検索条件文字列の、
前記単語索引中の延長語を全て求めて検索条件延長語集
合とし、前記単語索引要素検索手段が、当該検索条件延
長語集合に対する索引要素を前記単語索引から求めて検
索条件延長語索引要素集合とし、前記辞書引き手段によ
り、前記検索条件文字列が前記辞書の登録単語であるか
どうかを判定して、それが登録単語である場合には、前
記検索条件文字列延長語索引要素集合中の各索引要素を
構成する文字位置から算定される当該検索条件文字列の
始点文字位置全てからなる集合を、前記検索条件文字列
の前記検索対象文書中での全出現位置結果として出力し
て終了し、前記検索条件文字列が前記辞書の登録単語で
ない場合は、前記被覆単語列算定手段が、当該検索条件
文字列を被覆する前記辞書中の単語からなる単語列であ
って、当該列中に当該検索条件文字列を部分文字列とし
て含む単語が存在しないものを一つ任意に選んで検索条
件文字列被覆単語列とし、前記延長語算定手段が、前記
検索条件文字列被覆単語列を構成する各単語について、
前記単語索引中の延長語を全て求めて当該検索条件文字
列被覆単語列に対応する延長語集合列とし、前記単語索
引要素検索手段が、前記延長語集合列を構成する各延長
語集合について、当該延長語集合に含まれる全単語につ
いて、単語索引を参照して、当該単語を鍵とする索引要
素を全て求めて、当該延長語集合列に対応する索引要素
集合列とし、前記連接可能性判定手段が、前記索引要素
集合列中で隣接する全ての各索引要素集合対について連
接可能性を判定して、前記文書中に連続して出現する索
引要素の列を選択して、被覆単語列索引要素列集合と
し、前記和集合算定手段が、前記検索条件延長語索引要
素集合と、前記被覆単語列索引要素列集合の各列から任
意に一つの索引要素を選んで構成した索引要素集合との
和集合を算定して、検索条件文字列索引要素集合とし、
前記検索条件文字列索引要素集合中の各索引要素を構成
する文字位置から算定される当該検索条件文字列の始点
文字位置全てからなる集合を、前記検索条件文字列の前
記検索対象文書中での全出現位置結果として出力して終
了するものである。
【0033】本発明の第14の態様による文書検索装置
は、ある定められた文字セットに含まれる文字の有限個
のならびからなる任意の検索対象文書と、前記文字セッ
トから生成される有限個の文字列を単語として登録した
任意の辞書に対して構成された請求項3に記載の単語索
引と、前記文字セットから生成される任意の文字列に対
して、それが前記辞書の登録単語であるかどうかを判定
する辞書引き手段と、前記文字セットから生成される任
意の文字列に対して、当該文字列を被覆する、前記辞書
中の単語からなる単語列を算定する被覆単語列算定手段
と、前記文字セットから生成される任意の文字列に対し
て、当該文字列が部分文字列となるような文字列であっ
て、かつ前記単語索引に登録された索引要素の鍵となっ
ているもの全てからなる集合を、当該文字列の延長語集
合として算定する延長語算定手段と、前記単語索引に登
録されている索引要素の鍵となっている単語の有限個の
集まりからなる任意の単語集合に対して、前記単語索引
を用いて、当該単語集合に含まれる各単語を鍵とした全
ての索引要素を単語索引要素集合として求める単語索引
要素検索手段と、2つの索引要素集合に対して、各索引
要素集合の要素が前記文書中に連続して出現するかどう
かを判定して、連続して出現する索引要素列を全て求め
る連接可能性算定手段と、複数個の集合の、要素の重複
のない和集合を計算する和集合算定手段とを備え、前記
文字セットから生成される任意の検索条件文字列を与え
た時、単語索引要素検索手段が、任意の単語集合に対し
て、当該単語集合に含まれる各単語を鍵とした全ての索
引要素を求める際には、当該単語集合に含まれる全単語
について、前記単語索引の位置情報格納配列を参照し
て、各単語に対応する文字位置の順序列をとることで高
速にこれを求め、連接可能性判定手段が、2つの索引要
素集合に対して、各索引要素集合の要素が前記文書中に
連続して出現するかどうかを判定して、連続して出現す
る索引要素列を全て求める際には、各索引要素集合がい
くつかの文字位置の順序列から構成されることを利用し
てこれを効率的に求めるものである。
【0034】本発明の第15の態様による文書検索装置
は、ある定められた文字セットに含まれる文字の有限個
のならびからなる任意の検索対象文書と、前記文字セッ
トから生成される有限個の文字列を単語として登録した
任意の辞書に対して構成された請求項4に記載の単語索
引と、前記文字セットから生成される任意の文字列に対
して、それが前記辞書の登録単語であるかどうかを判定
する辞書引き手段と、前記文字セットから生成される任
意の文字列に対して、当該文字列を被覆する、前記辞書
中の単語からなる単語列を算定する被覆単語列算定手段
と、前記文字セットから生成される任意の文字列に対し
て、当該文字列が部分文字列となるような文字列であっ
て、かつ前記単語索引に登録された索引要素の鍵となっ
ているもの全てからなる集合を、当該文字列の延長語集
合として算定する延長語算定手段と、前記単語索引に登
録されている索引要素の鍵となっている単語の有限個の
集まりからなる任意の単語集合に対して、前記単語索引
を用いて、当該単語集合に含まれる各単語を鍵とした全
ての索引要素を単語索引要素集合として求める単語索引
要素検索手段と、2つの索引要素集合に対して、各索引
要素集合の要素が前記文書中に連続して出現するかどう
かを判定して、連続して出現する索引要素列を全て求め
る連接可能性算定手段と、複数個の集合の、要素の重複
のない和集合を計算する和集合算定手段とを備え、前記
延長語算定手段が、前記文字セットから生成される任意
の文字列に対して、当該文字列の前および後に1文字以
上の前記文字セットに含まれる文字を付加して構成され
る文字列のうち、前記単語索引に登録されているものの
集合を、前記単語索引を用いて、当該文字列の両延長語
集合として求める両延長語算定手段と、前記文字セット
から生成される任意の文字列に対して、当該文字列がそ
の部分文字列となるような文字列のうちで、その頭部が
前記文字列に完全に一致するような文字列であって、前
記単語索引に登録されているものである接頭延長語の集
合を、前記単語索引を用いて、当該文字列の接頭延長語
集合として求める接頭延長語算定手段と、前記文字セッ
トから生成される任意の文字列に対して、当該文字列が
その部分文字列となるような文字列のうちで、その終端
部が前記文字列に完全に一致するような文字列であっ
て、前記単語索引に登録されているものである接尾延長
語の集合を、前記単語索引を用いて、当該文字列の接尾
延長語集合として求める接尾延長語算定手段とからな
り、前記延長語算定手段が、前記文字セットから生成さ
れる文字列について、その延長語集合を求める際に、前
記両延長語算定手段が、当該文字列の先頭文字から終端
文字まで、前記単語索引中の出現単語1文字索引表を調
べて当該文字列の両延長語集合を求め、前記接頭延長語
算定手段が、前記単語索引中の辞書順単語番号表を調べ
て、当該文字列の接頭延長語となる語群の辞書順単語番
号の範囲を求めたのちに、当該範囲に含まれる辞書順単
語番号に対応した単語全てからなる集合を接頭延長語集
合とし、前記接尾延長語算定手段が、前記単語索引中の
反転辞書順単語番号表を調べて、当該検索文字列の接尾
延長語となる語群の反転辞書順単語番号の範囲を求めた
のちに、当該範囲に含まれる反転辞書順単語番号に対応
した単語全てからなる集合を接尾延長語集合としたのち
に、両延長語集合、接頭延長語集合、ならびに接尾延長
語集合の和集合として当該文字列の延長語集合を求める
ことで、任意の文字列について、その延長語集合を高速
に求めるものである。
【0035】本発明の第16の態様による文書検索装置
は、ある定められた文字セットに含まれる文字の有限個
のならびからなる任意の検索対象文書と、前記文字セッ
トから生成される有限個の文字列を単語として登録した
任意の辞書に対して構成された請求項5に記載の単語索
引と、前記文字セットから生成される任意の文字列に対
して、それが前記辞書の登録単語であるかどうかを判定
する辞書引き手段と、前記文字セットから生成される任
意の文字列に対して、当該文字列を被覆する、前記辞書
中の単語からなる単語列を算定する被覆単語列算定手段
と、前記文字セットから生成される任意の文字列に対し
て、当該文字列が部分文字列となるような文字列であっ
て、かつ前記単語索引に登録された索引要素の鍵となっ
ているもの全てからなる集合を、当該文字列の延長語集
合として算定する延長語算定手段と、前記単語索引に登
録されている索引要素の鍵となっている単語の有限個の
集まりからなる任意の単語集合に対して、前記単語索引
を用いて、当該単語集合に含まれる各単語を鍵とした全
ての索引要素を単語索引要素集合として求める単語索引
要素検索手段と、2つの索引要素集合に対して、各索引
要素集合の要素が前記文書中に連続して出現するかどう
かを判定して、連続して出現する索引要素列を全て求め
る連接可能性算定手段と、複数個の集合の、要素の重複
のない和集合を計算する和集合算定手段とを備え、 前
記延長語算定手段が、前記文字セットから生成される任
意の文字列に対して、当該文字列の前および後に1文字
以上の前記文字セットに含まれる文字を付加して構成さ
れる文字列のうち、前記単語索引に登録されているもの
の集合を、前記単語索引を用いて、当該文字列の両延長
語集合として求める両延長語算定手段と、前記文字セッ
トから生成される任意の文字列に対して、当該文字列が
その部分文字列となるような文字列のうちで、その頭部
が前記文字列に完全に一致するような文字列であって、
前記単語索引に登録されているものである接頭延長語の
集合を、前記単語索引を用いて、当該文字列の接頭延長
語集合として求める接頭延長語算定手段と、前記文字セ
ットから生成される任意の文字列に対して、当該文字列
がその部分文字列となるような文字列のうちで、その終
端部が前記文字列に完全に一致するような文字列であっ
て、前記単語索引に登録されているものである接尾延長
語の集合を、前記単語索引を用いて、当該文字列の接尾
延長語集合として求める接尾延長語算定手段からなり、
前記延長語算定手段が、前記文字セットから生成される
文字列について、その延長語集合を求める際に、前記両
延長語算定手段が、前記文字列の先頭文字から終端文字
まで、前記単語索引中の出現単語1文字索引表を調べ
て、当該文字列の両延長語集合を求め、前記接頭延長語
算定手段が、前記単語索引中の辞書順先頭1文字表を調
べて、当該文字列の先頭文字に対応づけられている辞書
順単語番号と、辞書順で当該文字の次に当たる文字に対
応づけられている辞書順単語番号とからなる暫定辞書順
単語番号範囲を求め、次に、前記単語索引中の辞書順単
語番号表を調べて、前記暫定辞書順単語番号範囲内で、
当該検索文字列の接頭延長語となる語群の辞書順単語番
号の範囲を求めたのちに、当該範囲の単語を全て求めて
接頭延長語集合とし、前記接尾延長語算定手段が、前記
単語索引中の反転辞書順末尾1文字表を調べて、当該文
字列の末尾文字に対応づけられている反転辞書順単語番
号と、辞書順で当該文字の次に当たる文字に対応づけら
れている反転辞書順単語番号とからなる暫定反転辞書順
単語番号範囲を求め、次に、前記単語索引中の反転辞書
順単語番号表を調べて、前記暫定反転辞書順単語番号範
囲内で、当該検索文字列の接尾延長語となる語群の反転
辞書順単語番号の範囲を求めたのちに、当該範囲の単語
を全て求めて接尾延長語集合としたのちに、前記両延長
語集合、前記接頭延長語集合、ならびに前記接尾延長語
集合の和集合として当該文字列の延長語集合を求めるこ
とで、任意の文字列について、その延長語集合を高速に
求めるものである。
【0036】本発明の第17の態様による単語索引照合
方法および文書検索装置は、ある定められた文字セット
に含まれる文字の有限個のならびからなる任意の検索対
象文書と、前記文字セットから生成される有限個の文字
列を単語として登録した任意の辞書に対して構成された
請求項6に記載の単語索引と、前記文字セットから生成
される任意の文字列に対して、それが前記辞書の登録単
語であるかどうかを判定する辞書引き手段と、前記文字
セットから生成される任意の文字列に対して、当該文字
列を被覆する、前記辞書中の単語からなる単語列を算定
する被覆単語列算定手段と、前記文字セットから生成さ
れる任意の文字列に対して、当該文字列が部分文字列と
なるような文字列であって、かつ前記単語索引に登録さ
れた索引要素の鍵となっているもの全てからなる集合
を、当該文字列の延長語集合として算定する延長語算定
手段と、前記単語索引に登録されている索引要素の鍵と
なっている単語の有限個の集まりからなる任意の単語集
合に対して、前記単語索引を用いて、当該単語集合に含
まれる各単語を鍵とした全ての索引要素を単語索引要素
集合として求める単語索引要素検索手段と、2つの索引
要素集合に対して、各索引要素集合の要素が前記文書中
に連続して出現するかどうかを判定して、連続して出現
する索引要素列を全て求める連接可能性算定手段と、複
数個の集合の、要素の重複のない和集合を計算する和集
合算定手段とを備え、前記延長語算定手段が、前記文字
セットから生成される任意の文字列に対して、当該文字
列の前および後に1文字以上の前記文字セットに含まれ
る文字を付加して構成される文字列のうち、前記単語索
引に登録されているものの集合を、前記単語索引を用い
て、当該文字列の両延長語集合として求める両延長語算
定手段と、前記文字セットから生成される任意の文字列
に対して、当該文字列がその部分文字列となるような文
字列のうちで、その頭部が前記文字列に完全に一致する
ような文字列であって、前記単語索引に登録されている
ものである接頭延長語の集合を、前記単語索引を用い
て、当該文字列の接頭延長語集合として求める接頭延長
語算定手段と、前記文字セットから生成される任意の文
字列に対して、当該文字列がその部分文字列となるよう
な文字列のうちで、その終端部が前記文字列に完全に一
致するような文字列であって、前記単語索引に登録され
ているものである接尾延長語の集合を、前記単語索引を
用いて、当該文字列の接尾延長語集合として求める接尾
延長語算定手段とからなり、さらに、前記接頭延長語算
定手段が、接頭延長高頻度語算定と、接頭延長低頻度語
算定手段とからなり、前記接尾延長語算定手段が、接尾
延長高頻度語算定手段と、接尾延長低頻度語算定手段と
からなり、前記単語索引要素検索手段が、高頻度語索引
要素情報検索手段と低頻度語索引要素検索手段とからな
り、前記延長語算定手段が、前記文字セットから生成さ
れる文字列について、その延長語集合を求める際には、
前記両延長語算定手段が、前記文字列の先頭文字から終
端文字まで、前記単語索引中の出現単語1文字索引表を
調べて、当該文字列の両延長語集合を求め、前記接頭延
長高頻度語算定手段が、前記単語索引中の辞書順高頻度
語番号表を調べて、当該文字列の接頭延長語となる語群
の辞書順高頻度語番号の範囲を求めたのちに、当該範囲
の単語を全て求めて接頭延長高頻度語集合とし、前記接
頭延長低頻度語算定手段が、前記単語索引中の辞書順低
頻度語群番号表を調べて、当該文字列の接頭延長語とな
る語群の辞書順低頻度語番号の範囲を求めたのちに、当
該範囲の単語を全て求めて接頭延長低頻度語集合とし
て、前記接頭延長高頻度語集合と前記接頭延長低頻度語
集合の和集合を当該文字列の接頭延長語集合とし、前記
接尾延長高頻度語算定手段が、前記単語索引中の反転辞
書順高頻度語番号表を調べて、当該文字列の接尾延長語
となる語群の反転辞書順高頻度語番号の範囲を求めたの
ちに、当該範囲の単語を全て求めて接尾延長高頻度語集
合とし、前記接尾延長低頻度語算定手段が、前記単語索
引中の反転辞書順低頻度語群番号表を調べて、当該文字
列の接尾延長語となる語群の反転辞書順低頻度語番号の
範囲を求めたのちに、当該範囲の単語を全て求めて接尾
延長低頻度語集合として、前記接尾延長高頻度語集合と
前記接尾延長低頻度語集合の和集合を当該文字列の接尾
延長語集合とし、前記両延長語集合、前記接頭延長語集
合、ならびに前記接尾延長語集合の和集合として当該文
字列の延長語集合を求め、単語索引要素検索手段が、辞
書順高頻度語番号の範囲、あるいは反転辞書順高頻度語
番号の範囲で指定される単語集合に含まれる単語を鍵と
した索引要素を全て求める際には、前記高頻度語索引要
素検索手段が、高頻度語位置情報格納配列を参照して、
当該単語集合に含まれる全単語について、各単語に対応
する文字位置の順序列を求めることで、索引要素集合を
求め、単語索引要素検索手段が、辞書順低頻度語番号の
範囲で指定される単語集合に含まれる単語を鍵とした索
引要素を全て求める際には、前記低頻度語索引要素検索
手段が、前記単語索引中の辞書順低頻度語群番号表を調
べて、当該辞書順低頻度語番号範囲の最小値と最大値に
対応する辞書順低頻度語グループ番号の最小値と最大値
を求め、次に単語索引中の辞書順低頻度語位置情報格納
配列を参照して、当該最小値より大きく、当該最大値よ
り小さい辞書順低頻度語グループ番号に対応した文字位
置の順序列を全てとることで、当該辞書順低頻度語グル
ープ番号に対応した索引要素集合を中間索引要素集合と
して求め、単語索引中の辞書順低頻度語位置情報格納配
列を参照して、辞書順低頻度語グループ番号の最小値、
最大値に対応した文字位置の順序列をそれぞれとって、
それらの列から当該辞書順低頻度語番号の範囲に含まれ
る単語に対応した文字位置のみを取捨選択して求めるこ
とで、境界索引要素集合を求め、前記中間索引要素集合
と前記境界索引要素集合の和集合を最終結果とし、ま
た、反転辞書順低頻度語番号の範囲で指定される単語集
合に含まれる単語を鍵とした索引要素を全て求める際に
は、前記低頻度語索引要素検索手段が、前記単語索引中
の反転辞書順低頻度語群番号表を調べて、当該反転辞書
順低頻度語番号範囲の最小値と最大値に対応する反転辞
書順低頻度語グループ番号の最小値と最大値を求め、次
に単語索引中の反転辞書順低頻度語群位置情報表を参照
して、当該最小値より大きく、当該最大値より小さい反
転辞書順低頻度語グループ番号に対応した文字位置の順
序列を全てとることで、当該反転辞書順低頻度語グルー
プ番号に対応した索引要素集合を中間索引要素集合とし
て求め、単語索引中の反転辞書順低頻度語位置情報格納
配列を参照して、反転辞書順低頻度語グループ番号の最
小値、最大値に対応した文字位置の順序列をそれぞれと
って、それらの列から当該反転辞書順低頻度語番号の範
囲に含まれる単語に対応した文字位置のみを取捨選択し
て求めることで、境界索引要素集合を求め、前記中間索
引要素集合と前記境界索引要素集合の和集合を最終結果
とすることで、両延長語集合、接頭延長語集合、ならび
に接尾延長語集合を高速に求め、また、ある単語集合に
含まれる単語を鍵とした索引要素を高速に求めるもので
ある。
【0037】本発明の第18の態様による文書検索装置
は、ある定められた文字セットに含まれる文字の有限個
のならびからなる任意の検索対象文書と、前記文字セッ
トから生成される有限個の文字列を単語として登録した
任意の辞書に対して構成された請求項7に記載の単語索
引と、前記文字セットから生成される任意の文字列に対
して、それが前記辞書の登録単語であるかどうかを判定
する辞書引き手段と、前記文字セットから生成される任
意の文字列に対して、当該文字列を被覆する、前記辞書
中の単語からなる単語列を算定する被覆単語列算定手段
と、前記文字セットから生成される任意の文字列に対し
て、当該文字列が部分文字列となるような文字列であっ
て、かつ前記単語索引に登録された索引要素の鍵となっ
ているもの全てからなる集合を、当該文字列の延長語集
合として算定する延長語算定手段と、前記単語索引に登
録されている索引要素の鍵となっている単語の有限個の
集まりからなる任意の単語集合に対して、前記単語索引
を用いて、当該単語集合に含まれる各単語を鍵とした全
ての索引要素を単語索引要素集合として求める単語索引
要素検索手段と、2つの索引要素集合に対して、各索引
要素集合の要素が前記文書中に連続して出現するかどう
かを判定して、連続して出現する索引要素列を全て求め
る連接可能性算定手段と、複数個の集合の、要素の重複
のない和集合を計算する和集合算定手段とを備え、前記
延長語算定手段が、前記文字セットから生成される任意
の文字列に対して、当該文字列の前および後に1文字以
上の前記文字セットに含まれる文字を付加して構成され
る文字列のうち、前記単語索引に登録されているものの
集合を、前記単語索引を用いて、当該文字列の両延長語
集合として求める両延長語算定手段と、 前記文字セッ
トから生成される任意の文字列に対して、当該文字列が
その部分文字列となるような文字列のうちで、その頭部
が前記文字列に完全に一致するような文字列であって、
前記単語索引に登録されているものである接頭延長語の
集合を、前記単語索引を用いて、当該文字列の接頭延長
語集合として求める接頭延長語算定手段と、前記文字セ
ットから生成される任意の文字列に対して、当該文字列
がその部分字列となるような文字列のうちで、その終端
部が前記文字列に完全に一致するような文字列であっ
て、前記単語索引に登録されているものである接尾延長
語の集合を、前記単語索引を用いて、当該文字列の接尾
延長語集合として求める接尾延長語算定手段とからな
り、さらに、前記接頭延長語算定手段が、接頭延長高頻
度語算定と、接頭延長低頻度語算定手段とからなり、前
記接尾延長語算定手段が、接尾延長高頻度語算定手段
と、接尾延長低頻度語算定手段とからなり、単語索引要
素検索手段が、高頻度語索引要素情報検索手段と低頻度
語索引要素検索手段とからなり、前記延長語算定手段
が、前記文字セットから生成される文字列について、そ
の延長語集合を求める際に、両延長語算定手段が、前記
文字列の先頭文字から終端文字まで、前記単語索引中の
出現単語1文字索引表を調べて、当該文字列の両延長語
集合を求め、前記接頭延長高頻度語算定手段が、前記単
語索引中の辞書順高頻度語先頭1文字表において、当該
文字列の先頭文字に対応づけられている辞書順単語番号
と、辞書順で当該文字の次に当たる文字に対応づけられ
ている辞書順単語番号とからなる暫定辞書順高頻度語番
号範囲を求め、次に、前記単語索引中の辞書順高頻度語
語番号表を調べて、前記暫定辞書順高頻度語番号範囲内
で、当該文字列の接頭延長語となる語群の辞書順高頻度
語番号の範囲を求めたのちに、当該範囲の単語を全て求
めて接頭延長高頻度語集合とし、前記接頭延長低頻度語
算定手段が、前記単語索引中の辞書順低頻度語先頭1文
字表において、当該文字列の先頭文字に対応づけられて
いる辞書順単語番号と、辞書順で当該文字の次に当たる
文字に対応づけられている辞書順単語番号とからなる暫
定辞書順低頻度語番号範囲を求め、次に、前記単語索引
中の辞書順低頻度語群番号表を調べて、前記暫定辞書順
低頻度語番号範囲内で、当該文字列の接頭延長語となる
語群の辞書順低頻度語番号の範囲を求めたのちに、当該
範囲の単語を全て求めて接頭延長低頻度語集合として、
前記接頭延長高頻度語集合と前記接頭延長低頻度語集合
の和集合を当該文字列の接頭延長語集合とし、前記単語
索引中の反転辞書順高頻度語末尾1文字表において、当
該文字列の末尾文字に対応づけられている反転辞書順単
語番号と、辞書順で当該文字の次に当たる文字に対応づ
けられている反転辞書順単語番号とからなる暫定反転辞
書順高頻度語番号範囲を求め、次に、前記単語索引中の
反転辞書順高頻度語番号表を調べて、前記暫定反転辞書
順高頻度語番号範囲内で、当該文字列の接尾延長語とな
る語群の反転辞書順高頻度語番号の範囲を求めたのち
に、当該範囲の単語を全て求めて接尾延長高頻度語集合
とし、前記単語索引中の反転辞書順低頻度語末尾1文字
表において、当該文字列の末尾文字に対応づけられてい
る反転辞書順単語番号と、辞書順で当該文字の次に当た
る文字に対応づけられている反転辞書順単語番号とから
なる暫定反転辞書順低頻度語番号範囲を求め、次に、前
記単語索引中の反転辞書順低頻度語群番号表を調べて、
前記暫定反転辞書順低頻度語番号範囲内で、当該文字列
の接尾延長語となる語群の反転辞書順低頻度語番号の範
囲を求めたのちに、当該範囲の単語を全て求めて接尾延
長低頻度語集合として、前記接尾延長高頻度語集合と前
記接尾延長低頻度語集合の和集合を当該文字列の接尾延
長語集合とし、単語索引要素検索手段が、辞書順高頻度
語番号の範囲、あるいは反転辞書順高頻度語番号の範囲
で指定される単語集合に含まれる単語を鍵とした索引要
素を全て求める際には、前記高頻度語索引要素検索手段
が、高頻度語位置情報格納配列を参照して、当該単語集
合に含まれる全単語について、各単語に対応する文字位
置の順序列を求めることで、索引要素集合を求め、単語
索引要素検索手段が、辞書順低頻度語番号の範囲で指定
される単語集合に含まれる単語を鍵とした索引要素を全
て求める際には、前記低頻度語索引要素検索手段が、前
記単語索引中の辞書順低頻度語群番号表を調べて、当該
辞書順低頻度語番号範囲の最小値と最大値に対応する辞
書順低頻度語グループ番号の最小値と最大値を求め、次
に単語索引中の辞書順低頻度語位置情報格納配列を参照
して、当該最小値より大きく、当該最大値より小さい辞
書順低頻度語グループ番号に対応した文字位置の順序列
を全てとることで、当該辞書順低頻度語グループ番号に
対応した索引要素集合を中間索引要素集合として求め、
単語索引中の辞書順低頻度語位置情報格納配列を参照し
て、辞書順低頻度語グループ番号の最小値、最大値に対
応した文字位置の順序列をそれぞれとって、それらの列
から当該辞書順低頻度語番号の範囲に含まれる単語に対
応した文字位置のみを取捨選択して求めることで、境界
索引要素集合を求め、前記中間索引要素集合と前記境界
索引要素集合の和集合を最終結果とし、また、反転辞書
順低頻度語番号の範囲で指定される単語集合に含まれる
単語を鍵とした索引要素を全て求める際には、前記低頻
度語索引要素検索手段が、前記単語索引中の反転辞書順
低頻度語群番号表を調べて、当該反転辞書順低頻度語番
号範囲の最小値と最大値に対応する反転辞書順低頻度語
グループ番号の最小値と最大値を求め、次に単語索引中
の反転辞書順低頻度語群位置情報表を参照して、当該最
小値より大きく、当該最大値より小さい反転辞書順低頻
度語グループ番号に対応した文字位置の順序列を全てと
ることで、当該反転辞書順低頻度語グループ番号に対応
した索引要素集合を中間索引要素集合として求め、単語
索引中の反転辞書順低頻度語位置情報格納配列を参照し
て、反転辞書順低頻度語グループ番号の最小値、最大値
に対応した文字位置の順序列をそれぞれとって、それら
の列から当該反転辞書順低頻度語番号の範囲に含まれる
単語に対応した文字位置範囲のみを取捨選択して求める
ことで、境界索引要素集合を求め、前記中間索引要素集
合と前記境界索引要素集合の和集合を最終結果とするこ
とで、両延長語集合、接頭延長語集合、ならびに接尾延
長語集合を高速に求め、また、ある単語集合に含まれる
単語を鍵とした索引要素を高速に求めるものである。
【0038】
【作用】本発明の第1の態様による単語索引によれば、
任意の文書と辞書に対して、前記文書と前記辞書に対す
る完全索引要素集合中で極大となる索引要素を全て位置
情報格納配列に格納するので、前記辞書中の任意の単語
について、当該単語の当該文書中での出現位置を、当該
単語の延長語を鍵とした、位置情報格納配列中に格納さ
れた索引要素だけから復元することが可能となり、従っ
て、前記辞書中に存在する単語を検索条件として与えた
際には、高速に当該単語の前記文書中での出現位置をも
れなく求めることが可能となる。
【0039】また、前記辞書中のいくつかの単語からな
る単語列から生成される連接文字列については、当該連
接文字列のその文書中での出現位置を、当該単語列を構
成する各単語の延長語を鍵とした、位置情報格納配列中
に格納された索引要素だけから復元することが可能とな
り、従って、前記辞書中に存在しない文字列を検索条件
として与えた場合でも、当該文字列が前記辞書で被覆可
能な文字列である限りは、実用的な時間内に当該文字列
の当該検索対象文書中での全出現位置をもれなく求める
ことが可能となる。
【0040】さらに、位置情報格納配列中には、当該文
書の当該辞書に対する完全索引要素中で極大となる索引
要素のみを格納すればよく、2文字連接(bi-gram)で索
引を構成した場合に比して、単語索引全体の容量を軽減
することも可能になる。
【0041】第12の態様による文書検索装置によれ
ば、検索条件文字列として辞書中の単語を与えた場合
は、延長語算定手段により、当該単語の延長語を全て求
めて、それらを鍵とした索引要素を本発明の第1の態様
による単語索引の位置情報格納配列から求めるだけで、
当該検索条件文字列の当該文書中での出現位置を全て求
めており、もれのない検索結果を出力することが保証さ
れる。
【0042】また、第12の態様による文書検索装置に
よれば、検索条件文字列として、辞書中の単語ではない
が、辞書中のある単語の列によって被覆される文字列を
与えた場合は、被覆単語列算定手段によってそのような
単語列を求めて、さらにその単語列を構成する各単語に
ついて延長語を求め、それら延長語を鍵とする索引要素
を本発明の第1の態様による単語索引の位置情報格納配
列から求めて、それらの連接可能性を判定することによ
って当該検索条件文字列の当該文書中での出現位置を全
て求めており、このような検索条件文字列に対しても、
もれのない検索結果を出力することが保証される。
【0043】従って、第1の態様による単語索引、およ
び第12の態様による文書検索装置によれば、前記検索
対象文書に対して、前記辞書中に存在する単語を検索条
件として与えた際には、高速に当該単語の当該検索対象
文書中での出現位置をもれなく求め、前記辞書中に存在
しない文字列を検索条件として与えた場合でも、当該文
字列が前記辞書で被覆可能な文字列である限りは、実用
的な時間内に当該文字列の当該検索対象文書中での全出
現位置をもれなく求めることが可能となる。
【0044】第2の態様による単語索引と、第13の態
様による文書検索装置によれば、与えられた辞書に新規
単語を登録することで、与えられた検索対象文書の全て
の文字位置に対して、その文字位置を被覆する少なくと
も一つ以上の索引要素が当該単語索引を構成する位置情
報格納配列中に存在することになるので、当該文字位置
の文字が如何なる文字であったかということを、単語索
引のみから復元することが可能であり、従って、辞書中
の単語でない、任意の検索条件文字列に対しても、もれ
のない検索結果を与えることが原理的に可能となる。
【0045】実際に、第13の態様による文書検索装置
によれば、任意の検索条件文字列に対して、被覆単語列
算定手段によって当該検索条件文字列の被覆単語列を求
めて、さらにその単語列を構成する各単語について延長
語を求め、それら延長語を鍵とする索引要素を本発明の
第1の態様による単語索引の位置情報格納配列から求め
て、それらの連接可能性を判定することによって当該検
索条件文字列の当該文書中での出現位置を全て求めてお
り、任意の検索条件文字列に対して、もれのない検索結
果を出力することが保証される。
【0046】従って、第2の態様による単語索引と、第
13の態様による文書検索装置によれば、前記検索対象
文書に対して、前記辞書中に存在する単語を検索条件と
して与えた際には、高速に当該単語の当該検索対象文書
中での出現位置をもれなく求め、前記辞書中に存在しな
い文字列を検索条件として与えた場合でも、実用的な時
間内に当該文字列の当該検索対象文書中での全出現位置
をもれなく求めることが可能になる。
【0047】本発明の第3の態様による単語索引と、第
14の態様による文書検索装置によれば、位置情報格納
配列が、各単語と、当該単語を鍵とした索引要素の文字
位置を、文字位置の順序関係に従って整列させた列との
対応として記述されるので、第14の態様による単語索
引照合において頻繁に行なわれる、ある単語集合に含ま
れる各単語を鍵とした索引要素を全て求めるという操作
が、位置情報格納配列において当該単語に対応した文字
位置の列を取得するという操作だけで済み、高速にこれ
を行なうことができる。
【0048】また、連接可能性判定手段が頻繁に行な
う、2つの索引要素集合に対する連接可能性の判定とい
う操作が、文字位置の順序列同士の連接可能性判定とい
う操作に還元され、各順序列の長さの和に関する線形時
間内にその操作を終了することが可能になり、高速にこ
れを行なうことができるようになるので、以上の結果、
第14の態様による単語索引照合においては、任意の検
索条件文字列に対して、もれのない検索を、高速に行な
えるようになる。
【0049】本発明の第4の態様による単語索引と、第
15の態様による文書検索装置によれば、延長語対応表
が、辞書順単語番号表と、反転辞書順単語番号表と、出
現単語1文字索引表とからなり、接頭延長語算定手段
が、ある文字列に関する接頭延長語集合を求める際に
は、当該文字列と、辞書順単語番号表に記載された各単
語との比較を、辞書順単語番号を2分探索しながら行な
うことで、辞書順単語番号のある範囲内にある単語の集
合として求めることができ、また、接尾延長語算定手段
が、ある文字列に関する接尾延長語集合を求める際に
は、当該文字列と、反転辞書順単語番号表に記載された
各単語との逆順の比較を、反転辞書順単語番号を2分探
索しながら行なうことで、反転辞書順単語番号のある範
囲内にある単語の集合として求めることができ、また、
両延長語算定手段が、ある文字列に関する両延長語集合
を求める際には、当該文字列の先頭文字から、終端文字
まで、順次出現単語1文字索引表を調べて、該当する単
語を絞り込むことでこれを行なうことができるので、こ
れら、第15の態様による単語索引照合方法において頻
繁に行なわれる操作を高速化することができる。
【0050】以上の結果、第15の態様による単語索引
照合においては、任意の検索条件文字列に対して、もれ
のない検索を、高速に行なえるようになる。
【0051】本発明の第5の態様による単語索引と、第
16の態様による文書検索装置によれば、延長語対応表
が、辞書順単語番号表と、反転辞書順単語番号表と、出
現単語1文字索引表に加えて、辞書順先頭1文字表と反
転辞書順末尾1文字表とからなり、接頭延長語算定手段
が、ある文字列に関する接頭延長語集合を求める際に
は、まず、辞書書順先頭1文字表を調べて、当該文字列
の先頭文字に対応づけられている辞書順単語番号と、辞
書順で当該文字の次に当たる文字に対応づけられている
辞書順単語番号とからなる暫定辞書順単語番号範囲を求
ることで、辞書順単語番号表で2分探索を行なうべき範
囲を絞り込むことができ、また、接尾延長語算定手段
が、ある文字列に関する接尾延長語集合を求める際に
は、まず、反転辞書書順末尾1文字表を調べて、当該文
字列の末尾文字に対応づけられている反転辞書順単語番
号と、辞書順で当該文字の次に当たる文字に対応づけら
れている反転辞書順単語番号とからなる暫定反転辞書順
単語番号範囲を求ることで、反転辞書順単語番号表で2
分探索を行なうべき範囲を絞り込むことができるため、
これら、第16の態様による単語索引照合において頻繁
に行なわれる操作をさらに高速化することができる。
【0052】以上の結果、第16の態様による単語索引
照合においては、任意の検索条件文字列に対して、もれ
のない検索を、さらに高速に行なえるようになる。
【0053】本発明の第6の態様による単語索引と、第
17の態様による文書検索装置によれば、検索対象文書
での出現頻度によって、単語を高頻度語と低頻度語に分
割して、延長語対応表を、辞書順高頻度語番号表と、反
転辞書順高頻度語番号表と、辞書順低頻度語群番号表
と、反転辞書順低頻度語群番号表と、出現単語1文字索
引表とからなる構成とし、位置情報格納配列を、高頻度
語位置情報格納配列と、辞書順低頻度語位置情報格納配
列と、反転辞書順低頻度語位置情報格納配列とからなる
構成とし、辞書順低頻度語位置情報格納配列には、各辞
書順低頻度語グループごとに、当該グループに含ま各単
語を鍵とする索引要素全てをそれぞれ抽出して、さらに
各索引要素を構成する文字位置全てを抽出して、それら
を文字位置の順序関係に従って整列させた列とを対応さ
せて記録し、反転辞書順低頻度語位置情報格納配列に
は、各反転辞書順低頻度語グループごとに、当該グルー
プに含まれる各単語を鍵とする索引要素全てをそれぞれ
抽出して、さらに各索引要素を構成する文字位置全てを
抽出して、それらを文字位置の順序関係に従って整列さ
せた列とを対応させて記録してある。
【0054】第17の態様による単語索引照合において
頻繁に行なわれる、複数の索引要素集合の和集合を算定
する操作は、複数の文字位置範囲の順序列を合わせて
(マージして)、整列し直す(ソート)という操作に還
元されることになるが、上記のような構成をとることに
より、多数の低頻度語を鍵とした索引要素集合に関する
和集合操作が、少数の文字位置範囲の順序列のマージソ
ートで行なえることになり、当該操作を高速に行なうこ
とが可能になる。
【0055】以上の結果、第17の態様による単語索引
照合においては、任意の検索条件文字列に対して、もれ
のない検索を、さらに高速に行なえるようになる。
【0056】本発明の第7の態様による単語索引と、第
18の態様による文書検索装置は、第5の態様による単
語索引の構成と、第6の態様による単語索引の構成を合
わせ持つものであり、従って、第16の態様による単語
索引照合方法、第17の態様による単語索引照合方法に
比して、任意の検索条件文字列に対するもれのない検索
を、より高速に行なえるようになる。
【0057】本発明の第8の態様による単語索引によれ
ば、第7の態様による単語索引の構成を持つ上に、位置
情報格納配列の情報が圧縮されて格納されるので、単語
索引の容量を軽減することができる。
【0058】本発明の第9の態様による単語索引作成装
置によれば、単語切り出し手段が、辞書引き手段を用い
て、検索対象文書の各文字位置に対して索引要素を抽出
する際に、検索対象文書の全ての文字位置が、当該文字
位置を被覆する索引要素が少なくとも一つ存在するよう
に、前記文書中から適当な文字列を選び、新規単語登録
手段により辞書に登録するので、当該単語索引作成方法
で構成された位置情報格納配列中には、当該文書の全て
の文字位置に対して、その文字位置を被覆する索引要素
が少なくとも一つ存在することになり、また、位置情報
格納配列に索引要素を選択して格納する際には、索引要
素集合の中で、極大となる索引要素のみを全て選択する
ので、本発明の第2の態様による単語索引を具体的に作
成することができ、従って、任意の検索条件文字列に対
するもれのない検索を実現する単語索引を構成すること
が可能になる。
【0059】本発明の第10の態様による単語索引作成
装置によれば、単語切り出し手段が、最初に検索対象文
書の最初の文字位置から最終の文字位置まで、各文字位
置について辞書引き手段を適用して、新規に登録する文
字列を選び出して新規単語登録手段を用いて辞書に新規
登録を行なった後に、再び検索対象文書の最初の文字位
置から最終の文字位置まで、やはり各文字位置について
辞書引き手段を適用して、索引要素候補集合を構成しつ
つ、その中から索引要素を選択するので、第9の態様に
よる単語索引作成方法に比して、検索対象文書の各文字
位置に対して2回の走査を行なうだけで系統的に所望の
単語索引を構成することができ、比較的短時間で単語索
引を構成することが可能になる。
【0060】また、検索対象文書の2回目の走査におい
て、文書の最初の文字から始めて、各文字位置にて切り
出すことのできる単語のうち、最長のものだけを選び、
その終端が当該文字位置に至るまでの各文字位置での最
長一致単語の終端よりも大きい場合にのみ、索引要素と
して位置情報格納配列に格納するという比較的単純な操
作で、系統的に本発明の第2の態様による単語索引を構
成することができる。
【0061】本発明の第11の態様による単語索引作成
装置によれば、単語切り出し手段が、検索対象文書の最
初の文字位置から最終の文字位置まで、各文字位置につ
いて辞書引き手段を適用して、索引要素集合を構成しつ
つ、その中から位置情報格納配列に格納する索引要素を
選択し、さらに必要な新規単語も同時に選択して辞書に
登録するので、第10の態様による単語索引作成装置に
比して、検索対象文書の各文字位置に対して1回の走査
を行なうだけで系統的に所望の索引要素集合を構成する
ことができ、より短時間で単語索引を構成することが可
能になる。
【0062】
【実施例】(実施例1) 以下、本発明の第1の実施例による文書検索装置につい
、図面を参照しながら説明する。図2は、「このはこ
をはこぶ」という一文からなる文書と、図1に示す辞書
項目を持つ辞書に対して、何らかの方法で作成された、
本願発明にかかる単語索引の位置情報格納配列21
と、延長語対応表22の内容である。また、図4は、本
願発明の単語索引照合方法を実現する単語索引照合手段
を備えた文書検索装置のブロック図、図5は、ある検索
文字列が与えられたときの文書検索装置の処理の流れを
示すフローチャートである。
【0063】この文書検索装置は、図4に示すように、
キーボード、マウス等の入力装置を含む検索条件入力装
置41と、単語索引42と、辞書引き手段43と、辞書
44と、被覆単語列算定手段45と、延長語算定手段4
6と、単語索引要素検索手段47と、連接可能性判定手
段48と、和集合算定手段49と、CRT等の表示装置な
どの出力装置を含む検索結果出力装置50とから構成さ
れている。
【0064】まず、図2に示された単語索引の内容につ
いて説明する。文書「このはこをはこぶ」の、図1に示
した辞書項目を持つ辞書に対する完全索引要素集合は、
当該文書の文字列で、単語として認定されるもの全てを
切り出したものになる。その完全索引要素集合を図3に
示す。
【0065】これらの索引要素のうち、図3に示した完
全索引要素集合中で極大となるものは、(このは、 1,3
)、(はこ、 3,4 )、(を、 5,5 )、(はこぶ、
6,8)の4つで全てであるが、位置情報格納配列21に
は、これらがすべて格納されており、また他の索引要素
は格納されていない。さらに、当該文書のすべての文字
位置(1 〜 8)は、これら4つの文字位置範囲のいずれ
か(あるいは複数)に含まれるので、位置情報格納配列
41の内容は、請求項2に記載の条件を満たしている。
また、延長語対応表42には、これら4つの索引要素を
構成する4つの単語(このは、はこ、を、はこぶ)と、
それらの全ての部分文字列(こ、この、このは、の、の
は、は、はこ、を、こぶ、はこぶ、ぶ)との対応が記載
されているので、これも請求項2に記載の延長語対応表
の条件を満たしている。
【0066】従って、図2に示された単語索引は、請
求項2にかかる文書検索装置の単語索引部の実施例にな
っている。
【0067】次に、図4、図5で示される文書検索装置
が、任意の検索条件文字列に対して、もれのない検索結
果を与えることを示す。まず、一例として、「はこ」と
いう辞書44中の単語が検索条件文字列として検索条件
入力装置41を介して与えられたときの文書検索装置の
動作を、図5のフローチャートの順を追って説明する。
【0068】最初に、延長語算定手段46が、単語索引
42中の延長語対応表22から、当該検索条件文字列の
延長語になっているものを全て求め、「はこ」「はこ
ぶ」の2単語からなる集合が、検索条件延長語集合とし
て求まる。
【0069】次に、単語索引要素検索手段47を用い
て、当該検索条件文字列の延長語を鍵とした索引要素
を、単語索引42中の位置情報格納配列21から全て求
める。
【0070】「はこ」を鍵とした索引要素として、(は
こ、3)、「はこぶ」を鍵とした索引要素として、(は
こぶ、6)を得て、検索条件文字列延長語索引要素集合
として前記2つの索引要素からなる集合を得る。
【0071】次に、辞書引き手段43を用いて、検索条
件文字列「はこ」が辞書44中の単語であるかどうかを
判定し、これが単語であるので、検索条件文字列延長語
索引要素集合に含まれる2つの索引要素から、「はこ」
の始点文字位置となる、3, 6を求めて、それを検索結果
として検索結果出力装置50に出力して処理を終了す
る。この結果は、文書中の「はこ」の出現位置である、
3文字目、6文字目を正しく与えている。
【0072】検索条件文字列が辞書中の単語である場合
は、上記の方法にて、もれのない検索結果を得ることが
できる。これは、辞書中の全ての単語について、当該単
語を鍵とした索引要素は、完全索引要素集合中で極大と
なり単語索引の要素として選択されて位置情報格納配列
に格納されるか、あるいは極大でない場合は、必ずその
延長索引要素であって、単語索引に選択されるものが存
在することになるからである。
【0073】次に、別の例として、辞書44中の単語で
はない、「このはこ」という検索条件文字列を、検索条
件入力装置41を介して与えた場合の動作を説明する。
この場合も先の例と同様に、延長語算定手段46が「こ
のはこ」の延長語を求めるが、この延長語は存在しない
ので、検索条件延長語索引要素集合は空集合となる。さ
らに、辞書引き手段43を用いて、「このはこ」は辞書
44中の単語ではないことが判明するので、次に被覆単
語列算定手段が、「このはこ」の被覆単語列を求める。
そのような単語列はいくつか存在するが、今、かりに、
「この」「はこ」という単語列を選択したとする。
【0074】次に、この単語列の各単語について、延長
語算定手段46を用いて、延長語を求め、「この」「こ
のは」からなる集合と、「はこ」からなる集合とを得
る。次にこの延長語集合列に対して、単語索引要素検索
手段47を用いて、これらの単語を鍵とした索引要素を
全て求め、(このは、1)という索引要素からなる集合
と、(はこ、3)からなる集合を得る。
【0075】次に連接可能性判定手段48を用いて、こ
れらの隣接する索引要素集合について連接可能性を判定
するが、(このは、1)は文書の1文字目から「この
は」という単語が始まることを示しており、また(は
こ、3)は、文書の3文字目から「はこ」という単語が
始まることを示しているので、これらは文書中で連接す
ることがわかる。従って、(このは、1)、(はこ、3)
の2つの索引要素からなる列が、被覆単語列索引要素列
集合として選ばれる。
【0076】最後に、和集合算定手段49が、検索条件
文字列延長語索引要素集合と被覆単語列索引要素列集合
との和集合を求めるが、検索条件文字列延長語索引要素
集合は空集合であったので、結局、「このはこ」の出現
位置は、被覆単語列索引要素列集合の要素から計算され
る、1 だけとなる。これは、「このはこ」の文書中での
出現位置である、1文字目を正しく与えている。
【0077】検索条件文字列が辞書中の単語でない場合
でも、上記で述べたように、検索条件文字列の被覆単語
列を求めて、その単語列に含まれる各単語の延長語を鍵
とした索引要素を位置情報格納配列から求めて、それら
の連接可能性を系統的に調べることによって、もれのな
い検索結果を得ることができる。
【0078】以上述べたように、図4の構成からなる文
書検索装置を用いれば、検索条件文字列が辞書中の単語
である場合にも、そうでない場合にも、もれのない検索
結果を与えることができる。 (実施例2) 以下、本発明の第2の実施例による文書検索装置につい
て、図面を参照しながら説明する。
【0079】図6は、本発明の請求項7にかかる文書検
索装置の単語索引部の構成を示す図である。この単語索
は、実施例1と同様に、請求項2にかかる文書検索
装置の単語索引部の性質を有しているので、任意の検索
条件文字列に対して、もれのない検索結果を与えること
を可能にするものであるが、それに加えて、検索を実行
する際に行なう基本操作を高速化するための構造を有す
るものである。
【0080】図6において、単語索引は、位置情報格
納配列62と、延長語対応表61とからなっており、位
置情報格納配列62は、高頻度語位置情報格納配列72
と、辞書順低頻度語位置情報格納配列73と、反転辞書
順低頻度語位置情報格納配列74とからなり、延長語対
応表61は、辞書順高頻度語番号表64と、反転辞書順
高頻度語番号表66と、辞書順低頻度語群番号表68
と、反転辞書順低頻度語群番号表70と、辞書順高頻度
語先頭1文字表63と、反転辞書順高頻度語末尾1文字
表65と、辞書順低頻度語群先頭1文字表67と、反転
辞書順低頻度語群末尾1文字表69と、出現単語1文字
索引表71とからなっている。
【0081】図7に、辞書順高頻度語番号表64の例、
図8に、反転辞書順高頻度語番号表66の例を示す。辞
書順高頻度語番号表64は、位置情報格納配列62に格
納された単語のうち、予め定められた基準によって決め
られた高頻度語を辞書順に並べて、それに1から始まる
昇順の番号を割り当てて辞書順高頻度語番号とし、各単
語と辞書順高頻度語番号との対応を記録したものであ
り、例えば、図7では、「あいさつ」という単語が14
3、「トラブル」という単語が1097、「感謝」とい
う単語が1956といった、辞書順高頻度語番号が与え
られている。
【0082】反転辞書順高頻度語番号表66は、位置情
報格納配列62に格納された単語のうち、予め定められ
た基準によって決められた高頻度語を反転して構成され
る文字列を辞書順に並べて、それに1から始まる昇順の
番号を割り当てて反転辞書順高頻度語番号とし、各単語
と反転辞書順高頻度語番号との対応を記録したものであ
り、例えば図8では、「けいざい」という単語が21
2、「きょう」という単語が281、「大学生」という
単語が4043といった、反転辞書順高頻度語番号が与
えられている。ここで、これらの単語は、反転した文字
列が辞書順に並ぶものであるから、例えば、「きょう」
の反転文字列「うょき」が、辞書順で「もう」の反転文
字列「うも」の次に来るものになっている。
【0083】図9に、辞書順高頻度語先頭1文字表63
の例、図10に、反転辞書順高頻度語末尾1文字表65
の例を示す。辞書順高頻度語先頭1文字表63は、文字
セットに含まれる各文字を辞書順に並べて、各文字か
ら、辞書順高頻度語番号表64に記載された単語で当該
文字を先頭1文字として持つもののうちで、辞書順高頻
度語番号が最小のものとの対応を記録したもので、ある
文字を先頭1文字として持つ単語の辞書順高頻度語番号
表64での範囲を指定することができるものである。
【0084】例えば、辞書順高頻度語番号表64におい
て、「トラ」で始まる単語は、図9における「ト」に対
応する単語「ト」の辞書順高頻度語番号1084から、
「ト」の次の文字「ド」に対応する単語「ド」の辞書順
高頻度語番号1109の一つ前、つまり1108までの
範囲に含まれるものとして与えることができる。
【0085】反転辞書順高頻度語末尾1文字表65は、
文字セットに含まれる各文字を辞書順に並べて、各文字
から、反転辞書順高頻度語番号表66に記載された単語
で当該文字を末尾1文字として持つもののうちで、反転
辞書順高頻度語番号が最小のものとの対応を記録したも
ので、ある文字を末尾1文字として持つ単語の反転辞書
順高頻度語番号表66での範囲を指定することができる
ものである。
【0086】例えば、反転辞書順高頻度語番号表66に
おいて、「学生」で終わる単語は、図10における
「生」に対応する単語「生」の反転辞書順高頻度語番号
4037から、「生」の次の文字「盛」に対応する単語
「盛」の反転辞書順高頻度語番号4060の一つ前、つ
まり4059までの範囲に含まれるものとして与えるこ
とができる。
【0087】図11に、辞書順低頻度語群番号表68の
例、図12に、反転辞書順低頻度語群番号表70の例を
示す。辞書順低頻度語群番号表68は、位置情報格納配
列62に格納された単語のうち、予め定められた基準に
よって決められた低頻度語を辞書順に並べて、それらに
1から始まる昇順の番号を割り当てて辞書順低頻度語番
号とし、その辞書順低頻度語の列を、やはり予め定めら
れた基準によってグループに分割して、それらに1から
始まる昇順の番号を割り当てて辞書順低頻度語グループ
番号とし、各低頻度語、その辞書順低頻度語番号、辞書
順低頻度語グループ番号の対応を記録したものであり、
例えば、図11では、辞書順低頻度語番号2381の
「阿蘇」という単語は、18番目の辞書順低頻度語グル
ープに属し、同じく辞書順低頻度語番号2434の「囲
み」という単語は、19番目のグループに属する。
【0088】反転辞書順低頻度語群番号表70は、位置
情報格納配列62に格納された単語のうち、予め定めら
れた基準によって決められた低頻度語を反転して構成さ
れる文字列を辞書順に並べて、それに1から始まる昇順
の番号を割り当てて反転辞書順低頻度語番号とし、その
反転辞書順低頻度語の列を、やはり予め定められた基準
によってグループに分割して、それらに1から始まる昇
順の番号を割り当てて反転辞書順低頻度語グループ番号
とし、各低頻度語、その反転辞書順低頻度語番号、反転
辞書順低頻度語グループ番号の対応を記録したものであ
り、例えば、図12では、反転辞書順低頻度語番号29
99の「敬愛」という単語は、23番目の反転辞書順低
頻度語グループに属し、反転辞書順低頻度語番号307
3の「開業医」という単語は、24番目のグループに属
する。
【0089】図13に、辞書順低頻度語群先頭1文字表
67、図14に、反転辞書順低頻度語群末尾1文字表6
9の例を示す。
【0090】辞書順低頻度語群先頭1文字表67は、文
字セットに含まれる各文字を辞書順に並べて、各文字か
ら、辞書順低頻度語群番号表68に記載された単語で当
該文字を先頭1文字として持つもののうちで、辞書順低
頻度語番号が最小のものとの対応を記録したもので、あ
る文字を先頭1文字として持つ単語の辞書順低頻度語群
番号表68での範囲を指定することができるものであ
る。
【0091】例えば、辞書順低頻度語群番号表68にお
いて、「愛」で始まる単語は、図13における「愛」に
対応する単語「愛機」の辞書順低頻度語番号2383か
ら、「愛」の次の文字「挨」に対応する単語「逢坂」の
辞書順低頻度語番号2391の一つ前、つまり2390
までの範囲に含まれるものとして与えることができる。
【0092】反転辞書順低頻度語群末尾1文字表69
は、文字セットに含まれる各文字を辞書順に並べて、各
文字から、反転辞書順低頻度語群番号表70に記載され
た単語で当該文字を末尾1文字として持つもののうち
で、反転辞書順低頻度語番号が最小のものとの対応を記
録したもので、ある文字を末尾1文字として持つ単語の
反転辞書順低頻度語群番号表70での範囲を指定するこ
とができるものである。例えば、反転辞書順低頻度語群
番号表70において、「愛」で終る単語は、図14にお
ける「愛」に対応する単語「敬愛」の反転辞書順低頻度
語番号2999から、「愛」の次の文字「挨」に対応す
る単語「憎悪」の反転辞書順低頻度語番号3002の一
つ前、つまり3001までの範囲に含まれるものとして
与えることができる。
【0093】図15に、出現単語1文字索引表71の例
を示す。出現単語1文字索引表71は、各文字と、当該
文字を含む位置情報格納配列中の単語、および当該文字
が当該単語の何文字目に出現しているかという対応を表
す表であり、例えば、「ト」という文字を2文字目に含
む単語には、「ストップ」、「ストリート」、「ストッ
キング」などがあり、3文字目に含む単語には、「アン
トニオ」、「エストニア」、「オートバイ」などがある
ことを示している。
【0094】図16に、高頻度語位置情報格納配列72
の例を示す。高頻度語位置情報格納配列72は、文書中
の各高頻度語の辞書順高頻度語番号と、各単語、ならび
に各単語を鍵とした索引要素を構成する文字位置範囲を
昇順に並べた列との対応を表すもので、図16における
各行に、その文字位置範囲の列が対応して記録してあ
る。例えば、「トラック」という高頻度語は、辞書順高
頻度語番号1096を持ち、6つの文字位置範囲からな
る列が対応していることを示している。
【0095】図17に辞書順低頻度語位置情報格納配列
73の例を示す。辞書順低頻度語位置情報格納配列73
は、文書中の低頻度語を辞書順に並べてそれらをグルー
プに分割し、各グループに含まれる各低頻度語を鍵とす
る索引要素全てをまとめて、それらの文字位置範囲を昇
順に並べた列と、各グループとの対応を表すもので、図
17における各行に、その文字位置範囲の列が対応して
記録してある。
【0096】例えば、グループ番号19のグループに対
しては、辞書順低頻度語番号2432の「依存度」とい
う単語から、辞書順低頻度語番号2559の単語までの
128個の単語が含まれ、それらの単語を鍵とする13
3個の索引要素から構成される文字位置範囲列が対応し
ていることを示している。
【0097】図18に反転辞書順低頻度語位置情報格納
配列74の例を示す。反転辞書順低頻度語位置情報格納
配列74は、文書中の低頻度語をそれぞれ反転して構成
される文字列を辞書順に並べてそれらをグループに分割
し、各グループに含まれる各低頻度語を鍵とする索引要
素全てをまとめて、それらの文字位置範囲を昇順に並べ
た列と、各グループとの対応を表すもので、図18にお
ける各行に、その文字位置範囲の列が対応して記録して
ある。例えば、グループ番号24のグループに対して
は、反転辞書順低頻度語番号3072の「救急医」とい
う単語から、反転辞書順低頻度語番号3199の単語ま
での128個の単語が含まれ、それらの単語を鍵とする
151個の索引要素から構成される文字位置範囲列が対
応していることを示している。
【0098】図19は、本発明の請求項16にかかる単
語索引照合方法を実現する単語索引照合手段を備えた文
書検索装置のブロック図、図20は、ある検索条件文字
列が与えられたときの文書検索装置の処理の流れを示す
フローチャートである。
【0099】この文書検索装置は、図19に示すよう
に、キーボード、マウス等の入力装置を含む検索条件入
力装置191と、単語索引192と、辞書引き手段19
3と、辞書194と、被覆単語列算定手段195と、両
延長語算定手段196と、接頭延長高頻度語算定手段1
97と、接頭延長低頻度語算定手段198と、接尾延長
高頻度語算定手段199と、接尾延長低頻度語算定手段
200と、高頻度語索引要素検索手段201と、低頻度
語索引要素検索手段202と、連接可能性判定手段20
3と、和集合算定手段204と、CRT等の表示装置など
の出力装置を含む検索結果出力装置205とから構成さ
れている。
【0100】図19、図20で示される文書検索装置の
動作は、実施例1で説明したものと同様に進み、任意の
検索条件文字列に対して、もれのない検索結果を返す
が、さらに、文字列の延長語を算定したり、索引要素集
合の和集合を求めるといった、単語索引照合手段におい
て頻繁に行なわれる基本動作を、次のようにして高速に
行なう。
【0101】例えば、文字列「トラ」の接頭延長語を求
める際には、接頭延長高頻度語算定手段197が、図
6、9に示した辞書順高頻度語先頭1文字表63より、
当該文字列の先頭文字「ト」に対応する辞書順高頻度語
番号1084と、辞書順で「ト」の次の文字「ド」に対
応する辞書順高頻度語番号1109を求めて、暫定辞書
順高頻度語番号範囲を定め、次に、図6、7に示す辞書
順高頻度語番号表64の当該範囲中を2分探索を行なっ
て、当該文字列の接頭延長語となる単語の辞書順高頻度
番号範囲を求め、1095〜1098を得る。その結
果、「トラ」の接頭延長語で、高頻度語となっているも
のとして、「トラ」「トラック」「トラブル」「トラベ
ル」を得る。
【0102】また、接頭延長低頻度語算定手段197
が、辞書順低頻度語群先頭1文字表67、辞書順低頻度
語群番号表68を用いて、同様の処理を行なうことによ
り、「トラ」の接頭延長語で、低頻度語となっているも
のを求める。
【0103】以上、辞書順高頻度語先頭1文字表63、
辞書順高頻度語番号表64、辞書順低頻度語群先頭1文
字表67、辞書順低頻度語群番号表68を用いること
で、任意の文字列の接頭延長語を、効率的に、すなわち
高速に求めることができる。
【0104】また、接尾延長語を求める際にも、接尾延
長高頻度語算定手段199が、反転辞書順高頻度語末尾
1文字表65、反転辞書順高頻度語番号表66を用いる
ことによって、暫定反転辞書順高頻度語番号範囲内で反
転辞書順高頻度語番号表中で2分探索を行なうことで、
接尾延長語で高頻度語となっているものを求め、また接
尾延長低頻度語算定手段199が、反転辞書順低頻度語
群末尾1文字表69、反転辞書順低頻度語群番号表70
を用いることによって、同様にして接尾延長語で低頻度
語となっているものを求めることによって、任意の文字
列の接尾延長語を、効率的に、すなわち高速に求めるこ
とができる。
【0105】また、両延長語算定手段196が、文字列
「トラ」の両延長語を求める際には、図7で示した出現
単語1文字索引表71を参照し、まず、「ト」を2文字
目に含む単語を求めて「ストップ」「ストリート」など
を得て、「ラ」を3文字目に含む単語を求めて「「イス
ラエル」「イスラム教」などを得、それらに共通に現れ
る単語のみを求めて「ストラップ」「ヒトラー」を得
る。次に「ト」を3文字目に含む単語を求めて「アント
ニオ」「エストニア」などを得て、「ラ」を4文字目に
含む単語を求めて「フォーラム」「プログラム」などを
得、それらに共通に現れる単語のみを求めて「レストラ
ン」「ホットライン」を得る。
【0106】さらに、同様な動作を繰り返すことで、
「オーストラリア」「スポットライト」を得、「トラ」
に関する全ての両延長語を求めることができる。以上、
任意の文字列の両延長語を、系統的に、かつ効率的に求
めることができる。
【0107】また、連接可能性判定手段203が、複数
の索引要素集合の連接可能性を調べる際には、位置情報
格納配列62中の各単語あるいは単語グループに対応し
て記載されている複数個の昇順の文字位置範囲列につい
ての文字位置の比較演算に還元することができ、お互い
の列の最初から始めて、互いの列を構成する文字位置範
囲の個数の和以下の回数の比較で実行することができる
ため、高速にこれを行なうことができる。
【0108】また、和集合算定手段204が、辞書順低
頻度語群番号表での、辞書順低頻度語番号の範囲で指定
される各低頻度語を鍵とする索引要素集合の和集合を求
める際には、あらかじめ辞書順低頻度語位置情報格納配
列に、各辞書順低頻度語グループごとに、索引要素が文
字位置範囲の昇順の列にて格納されているために、高速
にこれを行なうことができる。
【0109】例えば、図11において、「愛」という単
語の接頭延長語になる単語を鍵とする索引要素集合全て
についての和集合を求める場合、辞書順低頻度語番号2
383の単語「愛機」から、2390の単語「愛媛」ま
での範囲の単語を鍵とした索引要素集合の和集合を計算
することになるが、これらの単語は全て18番目の辞書
順低頻度語グループに属しているので、図17における
辞書順低頻度語グループ番号18に対応した索引要素集
合、すなわち、単語「リノ」で始まる単語グループに対
応した、128個の索引要素からなる索引要素集合を求
めて、その中から当該単語範囲に属する単語に対応した
索引要素をぬきだすことで、和集合を求める操作が実現
でき、従って、高速にこれを行なうことができる。
【0110】以上述べたように、本実施例の文書検索装
を用いれば、単語索引照合手段を構成する各基本操作
がそれぞれ高速化できるので、本実施例の文書検索装置
では、任意の検索文字列に対して、もれのない高速な全
文検索を行なうことが可能になる。 (実施例3) 以下、本発明の請求項10にかかる単語索引作成方法の
一実施例について説明する。図21は、本実施例の構成
を示すブロック図である。この単語索引作成方法は、図
21に示すように、あらかじめ与えられた辞書212に
対して任意の文字列がその辞書中の登録単語であるかど
うかを判定する辞書引き手段213と、任意の文字列に
対して、前記辞書に新規登録を行う新規単語登録手段2
14と、やはりあらかじめ与えられた検索対象文書21
1に対して、位置情報格納配列216を構成する単語を
切り出す単語切り出し手段215と、前記単語切り出し
手段215によって構成された位置情報格納配列216
から、延長語対応表218を構成する延長語対応表構成
手段217とからなっている。
【0111】図22は、本実施例にて行なわれる処理の
フローチャートである。以下、図23で与えられる辞書
項目を持つ辞書を用いて、文書「このはこをはこぶ」に
対して単語索引を作成する動作を、図22のフローチャ
ートの順を追って説明する。
【0112】まず、sを、検索対象文書211の最初の
文字位置1に設定する。sから始まる辞書中の単語を全
て求めると、「こ」「この」「このは」からなる単語集
合Wが得られる。Wは空集合でないので、sを1つ後ろに
ずらして(s=2)、再びsから始まる辞書中の単語を全
て求める。この動作を繰り返していくと、s=5の時
に、Wが空集合となる。すなわち、文書の部分文字列
「をはこぶ」からは単語を切り出すことができない。
【0113】そこでs1をs(=5)に設定して、sを再
び後ろに1つづらし(s=6)、単語集合W’を求める。
ここでは、「は」「はこ」「はこぶ」なる単語集合が得
られるので、結局、s1(=5)からsの1つ前の文字
(=5)、すなわち、「を」1文字からなる文字列を、
未知語として、新規単語登録手段214を用いて、辞書
に新規登録する。
【0114】以上の動作を文書の最終文字まで繰り返
し、結局、「を」と「ぶ」が新規単語として登録される
ことになる。
【0115】つづいて、再びs, e を検索対象文書21
1の最初の文字位置1に設定し、sから始まる辞書中の
単語を全て求めると、「こ」「この」「このは」からな
る単語集合Wが得られる。この中で、最長の単語は「こ
のは」であり、1+3は現在のeの値である1より大き
いので、索引要素(このは、 1,3 )が位置情報格納配
列に登録され、e が1+3=4に、sが2に設定され
て、再びこの動作を繰り返す。 文字位置2では、
「の」が最長の単語として選択されるが、2+1は現在
のeの値(4)より大でないので、索引要素は登録され
ない。文字位置3では、「はこ」が最長単語として選択
され、3+2は現在のeの値(4)より大となるので、
(はこ、 3,4 )が位置情報格納配列に登録され、e が
3+2=5に設定される。文字位置4では、「こ」が最
長単語として選択されるが、4+1は現在のeの値
(5)より大でないので、索引要素は登録されない。文
字位置5では、文書の1回目の走査によって新規登録さ
れた「を」が最長単語として選択され、5+1が現在の
eの値(5)より大となるので、(を、 5,6 )が位置情
報格納配列に登録され、e が5+1=6に設定される。
文字位置6では、「はこぶ」が最長単語として選択さ
れ、6+3は現在のeの値(6)より大となるので、
(はこぶ、 6,8 )が位置情報格納配列に登録され、eが
6+3=9に設定される。以降、文字位置7、8では、
索引要素は登録されない。
【0116】最後に、sが文書の最終文字位置8よりも
大になった時点で、単語切り出しを終了する。次に、延
長語対応表構成手段が現在までに作成された位置情報格
納配列に対して、延長語対応表を構成し、処理を終了す
る。
【0117】以上の操作により、(このは、 1,3 )、
(はこ、 3,4 )、(を、 5,6 )、(はこぶ、 6,8 )
の4つの索引要素が位置情報格納配列に格納されること
になり、請求項2にかかる単語索引を正しく作成するこ
とができる。
【0118】以上、本実施例によれば、検索対象文書の
最初の文字位置から始めて、各文字位置に対して2回の
走査を行なうだけで系統的に所望の単語索引を構成する
ことができ、比較的短時間で単語索引を構成することが
可能になる。 (実施例4)以下、本発明の請求項11にかかる単語索
引作成方法の一実施例について説明する。本実施例は、
図21に示す構成を有している。図24は、本実施例に
て行なわれる処理のフローチャートである。
【0119】以下、図23で与えられる辞書項目を持つ
辞書を用いて、文書「このはこをはこぶ」に対して単語
索引を作成する動作を、図24のフローチャートの順を
追って説明する。
【0120】まず、sとe を、検索対象文書211の最
初の文字位置1に設定する。sから始まる辞書中の単語
を全て求めると、「こ」「この」「このは」からなる単
語集合Wが得られる。Wは空集合でないので、W中で最長
の単語wを求める。これは「このは」であり、1+3は
現在のeの値である1より大きいので、索引要素(この
は、 1,3 )が位置情報格納配列に登録され、e が1+
3=4に、sが2に設定されて、再びこの動作を繰り返
す。
【0121】s=2から始まる辞書中の単語は存在しな
いので、Wが空集合となる。ここで、「の」の1文字をw
として、新規単語登録手段214を用いて、辞書に新規
登録するとともに、Wは「の」の1語からなる集合とす
る。従って、W中の最長単語は、「の」になるが、2+
1は現在のeの値である4よりも小さいので、ここでは
索引要素は選ばれず、sが3に設定されて、再びこの動
作を繰り返す。
【0122】s=3から始まる辞書中の単語は、「は」
「はこ」であり、これらうちの最長単語は「はこ」であ
るので、wは「はこ」に設定される。3+2は現在のeの
値4より大きいので、索引要素(はこ、 3,4 )が位置
情報格納配列に登録され、eが3+2=5に、sが4に設
定され、再びこの動作を繰り返す。
【0123】s=4から始まる辞書中の単語は、「こ」
であり、これらうちの最長単語は「こ」であるので、w
は「こ」に設定される。4+1は現在のeの値5より大
きくはないので、ここでは索引要素は選ばれず、sが5
に設定され、再びこの動作を繰り返す。
【0124】s=5から始まる辞書中の単語は存在しな
いので、Wが空集合となる。ここで、「を」の1文字をw
として、新規単語登録手段214を用いて、辞書に新規
登録するとともに、Wは「を」の1語からなる集合とす
る。従って、W中の最長単語は、「を」になり、5+1
は現在のeの値である5よりも大きいので、索引要素
(を、 5,6 )が位置情報格納配列に登録され、e が5
+1=6に、sが6に設定されて、再びこの動作を繰り
返す。
【0125】s=6から始まる辞書中の単語は、「は」
「はこ」「はこぶ」であり、これらうちの最長単語は
「はこぶ」であるので、wは「はこぶ」に設定される。
6+3は現在のeの値6より大きいので、索引要素(は
こぶ、 6,8 )が位置情報格納配列に登録され、eが6+
3=9に、sが7に設定され、再びこの動作を繰り返
す。
【0126】s=7から始まる辞書中の単語は、「こ」
であり、これらうちの最長単語は「こ」であるので、w
は「こ」に設定される。7+1は現在のeの値9より大
きくはないので、ここでは索引要素は選ばれず、sが8
に設定され、再びこの動作を繰り返す。
【0127】s=8から始まる辞書中の単語は存在しな
いので、Wが空集合となる。ここで、「ぶ」の1文字をw
として、新規単語登録手段214を用いて、辞書に新規
登録するとともに、Wは「ぶ」の1語からなる集合とす
る。従って、W中の最長単語は、「ぶ」になりが、8+
1は現在のeの値である9よりも大きくないので、ここ
では索引要素は選ばれず、sが9に設定される。
【0128】ここで、sが文書の最終文字位置8よりも
大になるので、単語切り出しを終了する。結局、「を」
と「ぶ」が新規単語として登録されることになる。次
に、延長語対応表構成手段が現在までに作成された位置
情報格納配列に対して、延長語対応表を構成し、処理を
終了する。
【0129】以上の操作により、(このは、 1,3 )、
(はこ、 3,4 )、(を、 5,6 )、(はこぶ、 6,8 )
の4つの索引要素が位置情報格納配列に格納されること
になり、請求項2にかかる文書検索装置の位置情報格納
配列を正しく作成することができる。
【0130】以上、本実施例によれば、検索対象文書の
最初の文字位置から始めて、辞書への新規単語登録と、
位置情報格納配列への索引要素の格納を同時に行なっ
て、各文字位置に対して1回の走査を行なうだけで、実
施例3に比べて、さらに短時間で系統的に所望の位置情
報格納配列を構成することが可能になる。
【0131】
【発明の効果】以上説明したように、本発明によれば、
与えられた任意の文書と、任意の辞書に対して、完全索
引要素集合の中から極大となる索引要素をすべて選択
し、かつ文書中の全ての文字位置が、少なくとも一つ以
上の索引要素で被覆されるような索引要素集合から構成
される位置情報格納配列を構成する位置情報格納手段
と、位置情報格納配列に格納された各索引要素を構成す
る各単語について、当該単語の任意の部分文字列と当該
単語との対応を全て記録した延長語対応表に記録する延
長語対応表記録手段とを設けることにより、任意の検索
文字列に対して、もれのない高速な全文検索を行なうこ
とができる、優れた文書検索装置を実現するものであ
る。
【0132】また、本発明によれば、辞書引き手段、新
規単語登録手段を設け、単語切り出し手段が、必要な未
知語を辞書に新規登録しつつ、必要な索引要素だけを切
り出して位置情報格納配列に格納した後に、延長語対応
記録手段が延長語対応表を構成することで、上記の性
質を満たす単語索引を系統的に、かつ効率的に作成す
ることができる、優れた単語索引作成方法を実現するも
のである。
【0133】さらに、本発明によれば、辞書引き手段、
被覆単語列算定手段、延長語算定手段、単語索引要素検
索手段、連接可能性判定手段、和集合算定手段を設ける
ことにより、検索条件文字列が単語である場合には高速
に、単語でない場合でも実用的な速度で、もれのない全
文検索を行なうことができる優れた単語索引照合方法な
らびに文書検索装置を実現するものである。
【図面の簡単な説明】
【図1】本発明の第1の実施例における辞書項目の概念
【図2】本発明の第1の実施例における位置情報格納配
列、延長語対応表の概念図
【図3】本発明の第1の実施例における完全索引要素集
合の概念図
【図4】本発明の第1の実施例における文書検索装置の
構成を示すブロック図
【図5】本発明の第1の実施例における文書検索装置の
フローチャート
【図6】本発明の第2の実施例における単語索引部の構
成図
【図7】本発明の第2の実施例における辞書順高頻度語
番号表の概念図
【図8】本発明の第2の実施例における反転辞書順高頻
度語番号表の概念図
【図9】本発明の第2の実施例における辞書順高頻度語
先頭1文字表の概念図
【図10】本発明の第2の実施例における反転辞書順高
頻度語末尾1文字表の概念図
【図11】本発明の第2の実施例における辞書順低頻度
語群番号表の概念図
【図12】本発明の第2の実施例における反転辞書順低
頻度語群番号表の概念図
【図13】本発明の第2の実施例における辞書順低頻度
語群先頭1文字表の概念図
【図14】本発明の第2の実施例における反転辞書順低
頻度語群末尾1文字表の概念図
【図15】本発明の第2の実施例における出現単語1文
字索引表の概念図
【図16】本発明の第2の実施例における高頻度語位置
情報格納配列の概念図
【図17】本発明の第2の実施例における辞書順低頻度
語位置情報格納配列の概念図
【図18】本発明の第2の実施例における反転辞書順低
頻度語位置情報格納配列の概念図
【図19】本発明の第2の実施例における文書検索装置
の構成を示すブロック図
【図20】本発明の第2の実施例における文書検索装置
のフローチャート
【図21】本発明の第3の実施例における単語索引作成
方法の構成を示すブロック図
【図22】本発明の第3の実施例における単語索引作成
方法の処理概要を示すフローチャート
【図23】本発明の第3の実施例における辞書項目の概
念図
【図24】本発明の第4の実施例における単語索引作成
方法の処理概要を示すフローチャート
【図25】従来例における単語索引作成手法のブロック
【図26】従来例における辞書項目の概念図
【図27】従来例における単語分割の概念図
【図28】従来例における単語分割の概念図
【図29】従来例における単語索引の構成図
【図30】従来例における単語索引の構成図
【図31】従来例における2文字連接(bi-gram)分割図
【図32】従来例における2文字連接(bi-gram)索引の
構成図
【符号の説明】
21 位置情報格納配列 22 延長語対応表 41 検索条件入力装置 42 単語索引部 43 辞書引き手段 44 辞書 45 被覆単語列算定手段 46 延長語算定手段 47 単語索引要素検索手段 48 連接可能性判定手段 49 和集合算定手段 50 検索結果出力装置 61 延長語対応表記録手段 62 位置情報格納配列 63 辞書順高頻度語先頭1文字表 64 辞書順高頻度語番号表 65 反転辞書順高頻度語末尾1文字表 66 反転辞書順高頻度語番号表 67 辞書順低頻度語群先頭1文字表 68 辞書順低頻度語群番号表 69 反転辞書順低頻度語群末尾1文字表 70 反転辞書順低頻度語群番号表 71 出現単語1文字索引表 72 高頻度語位置情報格納配列 73 辞書順低頻度語位置情報格納配列 74 反転辞書順低頻度語位置情報格納配列 191 検索条件入力装置 192 単語索引部 193 辞書引き手段 194 辞書 195 被覆単語列算定手段 196 両延長語算定手段 197 接頭延長高頻度語算定手段 198 接頭延長低頻度語算定手段 199 接尾延長高頻度語算定手段 200 接尾延長低頻度語算定手段 201 高頻度語索引要素検索手段 202 低頻度語索引要素検索手段 203 連接可能性判定手段 204 和集合算定手段 205 検索結果出力装置 211 検索対象文書 212 辞書 213 辞書引き手段 214 新規単語登録手段 215 単語切り出し手段 216 位置情報格納配列 217 延長語対応表記録手段 218 延長語対応表 251 検索対象文書 252 形態素解析処理 253 辞書 254 索引作成処理 255 単語索引
───────────────────────────────────────────────────── フロントページの続き (72)発明者 稲葉 光昭 大阪府門真市大字門真1006番地 松下電 器産業株式会社内 (56)参考文献 菊池,外4名「全文検索の技術動向と システム事例」情報処理学会研究報告 (92−FI−25−1),Vol.92,N o.32,1992(平4−5−12) (58)調査した分野(Int.Cl.6,DB名) G06F 17/30 JICSTファイル(JOIS)

Claims (8)

    (57)【特許請求の範囲】
  1. 【請求項1】 ある定められた文字セットに含まれる文
    字の有限個のならびからなる検索対象文書と、前記文字
    セットから生成される有限個の文字列を単語として登録
    した任意の辞書に対して、 前記検索対象文書中の文字列で、かつ前記辞書の単語で
    あるものについて、前記検索対象文書中での当該単語の
    出現位置と、当該単語あるいは当該単語の前記辞書中で
    の識別子との組として定義される前記検索対象文書の前
    記辞書に対する当該単語を鍵とした索引要素の、前記検
    索対象文書の前記辞書に対する可能な全ての索引要素か
    らなる完全索引要素集合中で、極大となる索引要素全て
    を位置情報格納配列に格納する位置情報格納手段と、 前記位置情報格納配列に格納された各索引要素を構成す
    る各単語について、当該単語の任意の部分文字列と、当
    該単語との全ての対応を、延長語対応表に記録する延長
    語対応表記録手段とを備えた単語索引部を有することを
    特徴とする文書検索装置
  2. 【請求項2】 ある定められた文字セットに含まれる文
    字の有限個のならびからなる検索対象文書と、前記文字
    セットから生成される有限個の文字列を単語として登録
    した任意の辞書に対して、 前記検索対象文書の前記辞書に対する可能な全ての索引
    要素からなる完全索引要素集合中で、極大となる索引要
    素全てを位置情報格納配列に格納する位置情報格納手段
    と、 前記位置情報格納配列に格納された各索引要素を構成す
    る各単語について、当該単語の任意の部分文字列と、当
    該単語との全ての対応を、延長語対応表に記録する延長
    語対応表記録手段とを備えた単語索引部を有し、 前記位置情報格納手段が、前記文書中の全ての文字位置
    に対して、当該文字位置を被覆する少なくとも一つ以上
    の索引要素が前記位置情報格納配列中に存在するように
    前記位置情報格納配列を構成したことを特徴とする文書
    検索装置
  3. 【請求項3】 位置情報格納手段が、 索引要素を構成する各単語について、当該単語を鍵とし
    た当該位置情報格納配列中の全ての索引要素から、各索
    引要素を構成する文字位置を全て抽出し、それらを文字
    位置の持つ順序関係に従って整列させた列と、各単語と
    の対応表として位置情報格納配列を再構成することを特
    徴とする請求項1または請求項2に記載の文書検索装
    置。
  4. 【請求項4】 延長語対応表記録手段が、 位置情報格納配列に格納された全単語を辞書順に並べ、
    それらに昇順の番号を割り付けて、各単語の辞書順番号
    とし、その辞書順番号と、各単語あるいは各単語の辞書
    中での識別子との対応を記述した辞書順単語番号表と、 位置情報格納配列に格納された全単語について、各単語
    を反転して構成される各文字列を辞書順に並べ、それら
    に昇順の番号を割り付けて、反転した各単語の反転辞書
    順番号とし、その反転辞書順番号と、各単語あるいは各
    単語の辞書中での識別子との対応を記述した反転辞書順
    単語番号表と、 検索対象文書を構成する全ての文字について、それが位
    置情報格納配列に格納された全単語の、どの文字位置に
    出現するのかという情報を記述した出現単語1文字索引
    表とを構成し、それらをまとめて延長語対応表として記
    録することを特徴とする請求項3に記載の文書検索装
  5. 【請求項5】 延長語対応表記録手段が、 位置情報格納配列に格納された全単語を辞書順に並べ、
    それらに昇順の番号を割り付けて、各単語の辞書順番号
    とし、その辞書順番号と、各単語あるいは各単語の辞書
    中での識別子との対応を記述した辞書順単語番号表と、 位置情報格納配列に格納された全単語について、各単語
    を反転して構成される各文字列を辞書順に並べ、それら
    に昇順の番号を割り付けて、反転した各単語の反転辞書
    順番号とし、その反転辞書順番号と、各単語あるいは各
    単語の辞書中での識別子との対応を記述した反転辞書順
    単語番号表と、 文字セット中の全ての文字を辞書順に並べ、それらに昇
    順の番号を割り付けて各文字の辞書順番号とし、文字セ
    ット中の全ての文字について、当該文字の辞書順番号
    と、当該文字と、前記辞書順単語番号表に記載された単
    語で当該文字を先頭1文字として持つもののうち、辞書
    順番号が最小の単語の辞書順番号との対応を記述した辞
    書順先頭1文字表と、 文字セット中の全ての文字について、当該文字の辞書順
    番号と、当該文字と、前記反転辞書順単語番号表に記載
    された単語で当該文字を末尾1文字として持つもののう
    ち、反転辞書順番号が最小の単語の反転辞書順番号との
    対応を記述した反転辞書順末尾1文字表と、 検索対象文書を構成する全ての文字について、それが位
    置情報格納配列に格納された全単語の、どの文字位置に
    出現するのかという情報を記述した出現単語1文字索引
    表と、を構成し、それらをまとめて延長語対応表として記録す
    ことを特徴とする請求項3に記載の文書検索装置
  6. 【請求項6】 延長語対応表記録手段が、 位置情報格納配列に格納された単語のうちで 、当該単
    語の検索対象文書における出現頻度が、あらかじめ定め
    られた基準より大なる単語全てを辞書順に並べ、それら
    に昇順の番号を割り付けて各単語の辞書順高頻度語番号
    とし、その辞書順高頻度語番号と、各単語あるいは各単
    語の辞書中での識別子との対応を記述した辞書順高頻度
    語番号表と、 位置情報格納配列に格納された単語のうちで、当該単語
    の検索対象文書における出現頻度が、あらかじめ定めら
    れた基準より大なる単語全てについて、各単語を反転し
    て構成される各文字列を辞書順に並べ、それらに昇順の
    番号を割り付けて、反転した各単語の反転辞書順高頻度
    語番号とし、その反転辞書順高頻度語番号と、各単語あ
    るいは各単語の辞書中での識別子との対応を記述した反
    転辞書順高頻度語番号表と、 位置情報格納配列に格納された単語のうちで、当該単語
    の検索対象文書における出現頻度が、あらかじめ定めら
    れた基準より小なる単語全てを辞書順に並べ、それらに
    昇順の番号を割り付けて各単語の辞書順低頻度語番号と
    し、当該低頻度語の辞書順の列をあらかじめ定められた
    基準によりいくつかのグループに分割して、それらに昇
    順の番号を割り付けて辞書順低頻度語グループ番号と
    し、その辞書順低頻度語番号、単語あるいは単語の辞書
    中での識別子、および辞書順低頻度語グループ番号の対
    応を記述した辞書順低頻度語群番号表と、 位置情報格納配列に格納された単語のうちで、当該単語
    の検索対象文書における出現頻度が、あらかじめ定めら
    れた基準より小なる単語全てについて、各単語を反転し
    て構成される文字列を辞書順に並べ、それらに昇順の番
    号を割り付けて、反転した各単語の反転辞書順低頻度語
    番号とし、当該低頻度語の反転辞書順の列をあらかじめ
    定められた基準によりいくつかのグループに分割して、 それらに昇順の番号を割り付けて反転辞書順低頻度語グ
    ループ番号とし、その反転辞書順低頻度語番号、単語あ
    るいは単語の辞書中での識別子、および反転辞書順低頻
    度語グループ番号の対応を記述した反転辞書順低頻度語
    群番号表と、 検索対象文書を構成する全ての文字について、それが位
    置情報格納配列に格納された全単語のどの文字位置に出
    現するのかという情報を記述した出現単語1文字索引表
    を構成して、それらをまとめて延長語対応表として記
    録し、 位置情報格納手段が、 前記辞書順高頻度語番号表に記載された各単語あるいは
    各単語の辞書中での識別子と、当該単語に対応する文字
    位置の順序列との対応表として構成した高頻度語位置情
    報格納配列と、 各辞書順低頻度語グループ番号と、当該番号に対応した
    単語グループに含まれる全単語について、各単語に対応
    した文字位置の順序列を全てまとめて、再び文字位置の
    順序関係に従って整列させた列との対応表として構成し
    た辞書順低頻度語位置情報格納配列と、 各反転辞書順低頻度語グループ番号と、当該番号に対応
    した単語グループに含まれる全単語について、各単語に
    対応した文字位置の順序列を全てまとめて、再び文字位
    置の順序関係に従って整列させた列との対応表として構
    成した反転辞書順低頻度語位置情報格納配列とを構成し
    それらをまとめて位置情報格納配列として格納する こと
    を特徴とする請求項3に記載の文書検索装置
  7. 【請求項7】 延長語対応表記録手段が、 位置情報格納配列に格納された単語のうちで、当該単語
    の検索対象文書における出現頻度が、あらかじめ定めら
    れた基準より大なる単語全てを辞書順に並べ、それらに
    昇順の番号を割り付けて各単語の辞書順高頻度語番号と
    し、その辞書順高頻度語番号と、各単語あるいは各単語
    の辞書中での識別子との対応を記述した辞書順高頻度語
    番号表と、 位置情報格納配列に格納された単語のうちで、当該単語
    の検索対象文書における出現頻度が、あらかじめ定めら
    れた基準より大なる単語全てについて、各単語を反転し
    て構成される各文字列を辞書順に並べ、それらに昇順の
    番号を割り付けて、反転した各単語の反転辞書順高頻度
    語番号とし、その反転辞書順高頻度語番号と、各単語あ
    るいは各単語の辞書中での識別子との対応を記述した反
    転辞書順高頻度語番号表と、 位置情報格納配列に格納された単語のうちで、当該単語
    の検索対象文書における出現頻度が、あらかじめ定めら
    れた基準より小なる単語全てを辞書順に並べ、それらに
    昇順の番号を割り付けて各単語の辞書順低頻度語番号と
    し、当該低頻度語の辞書順の列をあらかじめ定められた
    基準によりいくつかのグループに分割して、それらに昇
    順の番号を割り付けて辞書順低頻度語グループ番号と
    し、その辞書順低頻度語番号、単語あるいは単語の辞書
    中での識別子、および辞書順低頻度語グループ番号の対
    応を記述した辞書順低頻度語群番号表と、 位置情報格納配列に格納された単語のうちで、当該単語
    の検索対象文書における出現頻度が、あらかじめ定めら
    れた基準より小なる単語全てについて、各単語を反転し
    て構成される文字列を辞書順に並べ、それらに昇順の番
    号を割り付けて、反転した各単語の反転辞書順低頻度語
    番号とし、当該低頻度語の反転辞書順の列をあらかじめ
    定められた基準によりいくつかのグループに分割して、 それらに昇順の番号を割り付けて反転辞書順低頻度語グ
    ループ番号とし、その反転辞書順低頻度語番号、単語あ
    るいは単語の辞書中での識別子、および反転辞書順低頻
    度語グループ番号の対応を記述した反転辞書順低頻度語
    群番号表と、 文字セット中のすべての文字を辞書順に並べ、それらに
    昇順の番号を割り付けて各文字の辞書順番号とし、文字
    セット中のすべての文字について、当該文字の辞書順番
    号と、当該文字と、前記辞書順高頻度語番号表に記載さ
    れた単語で当該文字を先頭1文字として持つもののう
    ち、辞書順番号が最小の単語の辞書順番号との対応を記
    述した辞書順高頻度語先頭1文字表と、 文字セット中のすべての文字について、当該文字の辞書
    順番号と、当該文字と、前記反転辞書順高頻度語番号表
    に記載された単語で当該文字を末尾1文字として持つも
    ののうち、反転辞書順番号が最小の単語の反転辞書順番
    号との対応を記述した反転辞書順高頻度語末尾1文字表
    と、 文字セット中のすべての文字について、当該文字の辞書
    順番号と、当該文字と、前記辞書順低頻度語群番号表に
    記載された単語で、当該文字を先頭1文字として持つも
    ののうち、辞書順番号が最小の単語の辞書順番号との対
    応を記述した辞書順低頻度語群先頭1文字表と、 文字セット中のすべての文字について、当該文字の反転
    辞書順番号と、当該文字と、前記反転辞書順低頻度語群
    番号表に記載された単語で、当該文字を末尾1文字とし
    て持つもののうち、反転辞書順番号が最小の単語の反転
    辞書順番号との対応を記述した反転辞書順低頻度語群末
    尾1文字表と、 検索対象文書を構成する全ての文字について、それが位
    置情報格納配列に格納された全単語の、どの文字位置に
    出現するのかという情報を記述した出現単語1文字索引
    表とを構成して、 それらをまとめて延長語対応表として記録し、 位置情報格納手段が、 前記辞書順高頻度語番号表に記載された各単語あるいは
    各単語の辞書中での識別子と、当該単語に対応する文字
    位置の順序列との対応表として構成した高頻度語位置情
    報格納配列と、 各辞書順低頻度語グループ番号と、当該番号に対応した
    単語グループに含まれる全単語について、各単語に対応
    した文字位置の順序列を全てまとめて、再び文字位置の
    順序関係に従って整列させた列との対応表として構成し
    た辞書順低頻度語位置情報格納配列と、 各反転辞書順低頻度語グループ番号と、当該番号に対応
    した単語グループに含まれる全単語について、各単語に
    対応した文字位置の順序列を全てまとめて、再び文字位
    置の順序関係に従って整列させた列との対応表として構
    成した反転辞書順低頻度語位置情報格納配列とを構成し
    て、 それらをまとめて位置情報格納配列として格納する こと
    を特徴とする請求項3に記載の文書検索装置
  8. 【請求項8】 位置情報格納手段が、 位置情報格納配列に格納された各単語に対応する文字位
    置の順序列について、当該列の最初の文字位置について
    は、それをそのままとり、それ以降の文字位置について
    は、当該列における直前の文字位置との差分をとって構
    成した列と、当該単語との対応表として、位置情報格納
    配列を再構成して格納することを特徴とする請求項3に
    記載の文書検索装置
JP7056021A 1995-03-15 1995-03-15 文書検索装置および単語索引作成方法および文書検索方法 Expired - Fee Related JP2929963B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7056021A JP2929963B2 (ja) 1995-03-15 1995-03-15 文書検索装置および単語索引作成方法および文書検索方法
US08/601,656 US5706496A (en) 1995-03-15 1996-02-14 Full-text search apparatus utilizing two-stage index file to achieve high speed and reliability of searching a text which is a continuous sequence of characters

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7056021A JP2929963B2 (ja) 1995-03-15 1995-03-15 文書検索装置および単語索引作成方法および文書検索方法

Publications (2)

Publication Number Publication Date
JPH08249354A JPH08249354A (ja) 1996-09-27
JP2929963B2 true JP2929963B2 (ja) 1999-08-03

Family

ID=13015416

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7056021A Expired - Fee Related JP2929963B2 (ja) 1995-03-15 1995-03-15 文書検索装置および単語索引作成方法および文書検索方法

Country Status (2)

Country Link
US (1) US5706496A (ja)
JP (1) JP2929963B2 (ja)

Families Citing this family (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2927706B2 (ja) * 1995-06-12 1999-07-28 松下電器産業株式会社 類似文字列の展開方法、検索方法及びそれらの装置
US5809496A (en) * 1997-02-20 1998-09-15 International Business Machines Corporation Hybrid search
US6199071B1 (en) 1997-04-01 2001-03-06 Sun Microsystems, Inc. Method and apparatus for archiving hypertext documents
JP3143079B2 (ja) 1997-05-30 2001-03-07 松下電器産業株式会社 辞書索引作成装置と文書検索装置
US6098066A (en) * 1997-06-13 2000-08-01 Sun Microsystems, Inc. Method and apparatus for searching for documents stored within a document directory hierarchy
US6185550B1 (en) 1997-06-13 2001-02-06 Sun Microsystems, Inc. Method and apparatus for classifying documents within a class hierarchy creating term vector, term file and relevance ranking
JPH1173429A (ja) * 1997-06-19 1999-03-16 Matsushita Electric Ind Co Ltd 文書検索装置
SG98366A1 (en) * 1997-07-11 2003-09-19 Matsushita Electric Ind Co Ltd Recording medium of character data of full text and character string collating apparatus
US6029167A (en) * 1997-07-25 2000-02-22 Claritech Corporation Method and apparatus for retrieving text using document signatures
US7110998B1 (en) * 1998-10-13 2006-09-19 Virtual Gold, Inc. Method and apparatus for finding hidden patterns in the context of querying applications
JP3566111B2 (ja) * 1998-11-30 2004-09-15 松下電器産業株式会社 記号辞書作成方法及び記号辞書検索方法
US6338056B1 (en) 1998-12-14 2002-01-08 International Business Machines Corporation Relational database extender that supports user-defined index types and user-defined search
JP3022539B1 (ja) 1999-01-07 2000-03-21 富士ゼロックス株式会社 文書検索装置
JP3696745B2 (ja) * 1999-02-09 2005-09-21 株式会社日立製作所 文書検索方法及び文書検索システム及び文書検索プログラムを記録したコンピュータ読み取り可能な記録媒体
US6785869B1 (en) * 1999-06-17 2004-08-31 International Business Machines Corporation Method and apparatus for providing a central dictionary and glossary server
JP2001043228A (ja) * 1999-07-28 2001-02-16 Ricoh Co Ltd 文書検索システム、文書検索方法及び記憶媒体
JP2001167087A (ja) 1999-12-14 2001-06-22 Fujitsu Ltd 構造化文書検索装置,構造化文書検索方法,構造化文書検索用プログラム記録媒体および構造化文書検索用インデックス作成方法
US6772141B1 (en) 1999-12-14 2004-08-03 Novell, Inc. Method and apparatus for organizing and using indexes utilizing a search decision table
US20040133572A1 (en) * 2000-05-18 2004-07-08 I2 Technologies Us, Inc., A Delaware Corporation Parametric searching
TWI221565B (en) * 2000-05-18 2004-10-01 I2 Technologies Inc Computer-implemented parametric searching of one or more item catalogs
US20020062258A1 (en) 2000-05-18 2002-05-23 Bailey Steven C. Computer-implemented procurement of items using parametric searching
US20020022953A1 (en) * 2000-05-24 2002-02-21 Bertolus Phillip Andre Indexing and searching ideographic characters on the internet
US7137108B1 (en) * 2000-10-26 2006-11-14 International Business Machines Corporation Identifying non-externalized text strings that are not hard-coded
JP3974359B2 (ja) * 2000-10-31 2007-09-12 株式会社東芝 オンライン文字認識装置及び方法並びにコンピュータ読み取り可能な記憶媒体及びオンライン文字認識プログラム
US7392326B2 (en) * 2001-02-16 2008-06-24 Microsoft Corporation Method for text entry in an electronic device
JP3695581B2 (ja) * 2001-08-08 2005-09-14 ソニー株式会社 記録装置および記録方法、記録媒体、並びに、電子カメラ
US7267661B2 (en) * 2002-06-17 2007-09-11 Iradimed Corporation Non-magnetic medical infusion device
US7337166B2 (en) * 2003-12-19 2008-02-26 Caterpillar Inc. Parametric searching
US20050165750A1 (en) * 2004-01-20 2005-07-28 Microsoft Corporation Infrequent word index for document indexes
US7636710B2 (en) * 2004-03-04 2009-12-22 Symantec Operating Corporation System and method for efficient file content searching within a file system
US7207004B1 (en) * 2004-07-23 2007-04-17 Harrity Paul A Correction of misspelled words
US7702618B1 (en) 2004-07-26 2010-04-20 Google Inc. Information retrieval system for archiving multiple document versions
US7567959B2 (en) 2004-07-26 2009-07-28 Google Inc. Multiple index based information retrieval system
US7711679B2 (en) 2004-07-26 2010-05-04 Google Inc. Phrase-based detection of duplicate documents in an information retrieval system
US8600997B2 (en) 2005-09-30 2013-12-03 International Business Machines Corporation Method and framework to support indexing and searching taxonomies in large scale full text indexes
US20070138381A1 (en) * 2005-12-16 2007-06-21 Meschko John T Optical encoder system
US20070179858A1 (en) * 2006-01-27 2007-08-02 Jennings Andrew B Apparatus and method for optimized online shopping
JP4251652B2 (ja) * 2006-06-09 2009-04-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 検索装置、検索プログラムおよび検索方法
US7752193B2 (en) * 2006-09-08 2010-07-06 Guidance Software, Inc. System and method for building and retrieving a full text index
US7831836B2 (en) * 2006-10-04 2010-11-09 Microsoft Corporation Character position-based password recovery
US8170352B2 (en) * 2008-03-24 2012-05-01 Sophos Plc String searching facility
JP5200762B2 (ja) * 2008-08-25 2013-06-05 富士通株式会社 検索方法および検索プログラム
US20110106814A1 (en) * 2008-10-14 2011-05-05 Yohei Okato Search device, search index creating device, and search system
NO20085365A (no) * 2008-12-22 2010-04-19 Fast Search & Transfer As Invertert indeks for kontekstuell søk
JP5314493B2 (ja) * 2009-05-15 2013-10-16 日本電信電話株式会社 情報検索方法、情報検索装置、情報検索プログラム
US8423350B1 (en) * 2009-05-21 2013-04-16 Google Inc. Segmenting text for searching
JP2011065546A (ja) * 2009-09-18 2011-03-31 Hitachi Solutions Ltd ファイル検索システム及びプログラム
JP5591578B2 (ja) * 2010-04-19 2014-09-17 日本電産サンキョー株式会社 文字列認識装置および文字列認識方法
JP5605288B2 (ja) 2011-03-31 2014-10-15 富士通株式会社 出現マップ生成方法、ファイル抽出方法、出現マップ生成プログラム、ファイル抽出プログラム、出現マップ生成装置、およびファイル抽出装置
GB201106943D0 (en) * 2011-04-27 2011-06-01 Burkill Vance Improvements in or relating to password generation, recall and protection
CN107609032B (zh) * 2017-08-09 2020-12-04 联动优势科技有限公司 一种匹配方法及电子设备
CN112347765B (zh) * 2020-10-10 2022-06-07 清华大学 基于词典匹配的实体标注方法、模块及装置
CN117134777B (zh) * 2023-10-27 2024-01-26 苏州英孚思科技有限公司 一种定位数据的智能压缩方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4495566A (en) * 1981-09-30 1985-01-22 System Development Corporation Method and means using digital data processing means for locating representations in a stored textual data base
US4674066A (en) * 1983-02-18 1987-06-16 Houghton Mifflin Company Textual database system using skeletonization and phonetic replacement to retrieve words matching or similar to query words
EP0437615B1 (en) * 1989-06-14 1998-10-21 Hitachi, Ltd. Hierarchical presearch-type document retrieval method, apparatus therefor, and magnetic disc device for this apparatus
US5606690A (en) * 1993-08-20 1997-02-25 Canon Inc. Non-literal textual search using fuzzy finite non-deterministic automata
DE69424902T2 (de) * 1993-08-20 2000-11-09 Canon Kk Gerät und Verfahren zur anpassungsfähigen nicht-buchstäblichen Textsuche

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
菊池,外4名「全文検索の技術動向とシステム事例」情報処理学会研究報告(92−FI−25−1),Vol.92,No.32,1992(平4−5−12)

Also Published As

Publication number Publication date
JPH08249354A (ja) 1996-09-27
US5706496A (en) 1998-01-06

Similar Documents

Publication Publication Date Title
JP2929963B2 (ja) 文書検索装置および単語索引作成方法および文書検索方法
CA2007285C (en) Method for use of morphological information to cross reference keywords used for information retrieval
US5551049A (en) Thesaurus with compactly stored word groups
JP3143079B2 (ja) 辞書索引作成装置と文書検索装置
US6523030B1 (en) Sort system for merging database entries
JP3263963B2 (ja) 文書検索方法及び装置
KR20070049664A (ko) 토큰스페이스 저장소와 함께 사용하기 위한 멀티-스테이지질의 처리 시스템 및 방법
US6470334B1 (en) Document retrieval apparatus
JPH04205560A (ja) 情報検索処理方式および検索ファイル作成装置
JP5169456B2 (ja) 文書検索システム、文書検索方法および文書検索プログラム
KR100282610B1 (ko) 부분 문자열별 기분석에 기반한 한국어 형태소 분석장치 및 그방법
JPH08329112A (ja) フリーテキスト検索システム
Hickey Searching linear files on‐line
JP2009140302A (ja) 転置インデックス作成装置及びフォワードインデックス作成装置
JPH04340164A (ja) マルチキーワード情報検索処理方式および検索ファイル作成装置
KR100745292B1 (ko) 전자사전 검색 시스템
EP0649106B1 (en) Compactly stored word groups
JPH09212523A (ja) 全文検索方法
JPH10149367A (ja) テキスト蓄積検索装置
Bahle Efficient phrase querying
JPH07296005A (ja) 日本語テキスト登録・検索装置
JPH1069493A (ja) 辞書作成装置と語切り出し装置
KR20070033657A (ko) 전자사전 검색방법과 장치
JPH11203312A (ja) キーワード検索装置、文書検索装置、キーワード検索プログラムを記録した記録媒体及び文書検索プログラムを記録した記録媒体
WO1992009960A1 (en) Data retrieving device

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees