JPH09259140A - 情報検索方法、情報検索装置及び情報検索プログラムを格納する媒体 - Google Patents

情報検索方法、情報検索装置及び情報検索プログラムを格納する媒体

Info

Publication number
JPH09259140A
JPH09259140A JP8068655A JP6865596A JPH09259140A JP H09259140 A JPH09259140 A JP H09259140A JP 8068655 A JP8068655 A JP 8068655A JP 6865596 A JP6865596 A JP 6865596A JP H09259140 A JPH09259140 A JP H09259140A
Authority
JP
Japan
Prior art keywords
character string
document
variable length
variable
length
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.)
Granted
Application number
JP8068655A
Other languages
English (en)
Other versions
JP3160201B2 (ja
Inventor
Rie Kubota
理恵 久保田
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP06865596A priority Critical patent/JP3160201B2/ja
Priority to KR1019960065808A priority patent/KR100272389B1/ko
Priority to US08/805,846 priority patent/US5992737A/en
Publication of JPH09259140A publication Critical patent/JPH09259140A/ja
Application granted granted Critical
Publication of JP3160201B2 publication Critical patent/JP3160201B2/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

Landscapes

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

Abstract

(57)【要約】 【課題】 ディスク等に格納された大量の文書を、高速
且つ所望の曖昧度を許容しつつ検索する。 【解決手段】 索引ファイルにおける、文字連鎖ファイ
ルには、可変長連鎖・固定長連鎖・区切りパターンとそ
れに対応する文書番号・文書内位置番号が位置情報ファ
イルのどこに位置するかが格納される。位置情報ファイ
ルには、文書番号・文書内位置番号が格納される。拡張
文字連鎖ファイルには、拡張文字連鎖とそれに対応する
可変長連鎖番号・可変長連鎖内位置番号が拡張位置情報
ファイルのどこに位置するかが格納される。拡張位置情
報ファイルには、可変長連鎖番号・可変長連鎖内位置番
号が格納される。この索引ファイルを使用して、指定さ
れた文字列と文字の並びが似ている文字列を含む文書を
高速に検索する。具体的には、文書中から、検索したい
文字列と"似ている文字列"を選びだして、何文字連続し
て一致しているか途中にどのくらい余分な文字がはさま
っているかの2つの観点から"似ている度合い"を数値化
する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、例えばテキスト・フ
ァイル形式でディスクに格納された大量の文書を、高速
且つ所望の曖昧度を許容しつつ検索するシステム及び方
法に関するものである。
【0002】
【従来の技術】従来より、新聞記事、特許公報、科学技
術文献などの、自然言語で書かれ、ディスクに格納され
た大量の文書を高速で検索したいという要望があり、さ
まざまな検索方式が提案されている。そのような検索方
式を大別すると、次のとおりである。
【0003】(a) キーワード検索方式 この方式では、個々の文書とその文書の内容をあらわす
キーワードとの索引づけが予め行われる。このとき、キ
ーワードを決める方法としては、形態素解析などによる
自動キーワード抽出、人手によるキーワード付加、およ
びそれらを組み合わせた方法がある。しかし、この方式
は、キーワードとして索引付けされた文字列でしか検索
できず、また、形態素解析による自動キーワード抽出の
精度は、単語・文法辞書の精度に左右されるため、辞書
の保守に多くの人的作業を要するという欠点がある。
【0004】(b) 索引なしの全文検索方式 これは、索引を使用することなく、検索したい文字列が
指定されるたびに、検索対象となる文書をすべてスキャ
ンする方式である。特別なハードウェアを使用して検索
速度をあげている方式もある。しかし、特別なハードウ
ェアを使用したシステムは、コストが嵩み、また、クラ
イアント・サーバ環境では、使用できるマシンの種別に
制約が生じる場合がある。
【0005】(c) 索引による全文検索方式 本発明は、索引による全文検索方式に属するものであ
る。索引を使用することにより、全文検索を高速化する
ことを意図するものとしては、以下に示すような技法が
知られている。
【0006】特開平4−205560号公報には、検索
対象となる文字列を検索を行う単位である検索単位に分
け、この検索単位毎に昇順の符号を付与し、この分けら
れた検索単位に対してその論理的な区分を示す属性符号
を付与し、検索対象となる文字列を各文字毎に検索単位
中での位置を示す文字位置順序符号を付与し、検索単位
識別符号と、文字位置順序符号と、属性符号とからなる
文字位置情報を作成して、この文字位置情報を文字種ご
との領域に格納して検索ファイルを作成することが開示
されている。
【0007】特開平4−215181号公報には、検索
処理のための文字列照合回数を低減し,汎用の情報処理
装置で高速照合を可能にするために、検索対象となる文
字列を構成する各文字セツトが文字列中のどの位置にあ
るかを示す文字セツト位置情報を文字セツト種ごとにグ
ル−プ化した検索フアイルを作成することが開示されて
いる。
【0008】ところで、検索文字列と完全に一致する文
字列を含むを検索するのみならず、部分的に一致する文
字列を含む文書も検索したいという必要性が生じること
も少なくない。例えば、ユーザーの、検索文字列に対す
る記憶が曖昧であったり、検索文字列がさまざまな変形
をともなって出現し得るものであって、そのような変形
すべてを列挙することが困難であったりする場合があ
る。従来技術における典型的な部分文字列指定方法は、
正規表現を使用するものである。これによれば、任意の
文字の0回以上の繰り返し、任意の文字の1回以上の繰
り返し、行末位置、行頭位置、特定の文字コードの範囲
内の任意の文字、などの指定が可能である。
【0009】さらに、特開昭63−99830号公報
は、検索文字列データと、被検索文字列データとの部分
一致の機能を有するシステムにおいて、検索文字列デー
タの同類語関係に関するデータと、当該検索文字列デー
タが被検索文字列データのいずれかに出現するか否かを
表すデータとを蓄積するテーブルを設けることを開示す
る。
【0010】また、特開昭62−221027号公報
は、部分対象文字列の先頭から切出した文字列が辞書か
ら検索されなかった場合、その長さを1だけ増加した次
の切出し文字列については前方検索を行うことにより、
無効な検索回数を減らし、比較的高速で且つ効率的な単
語切出しを行えるようにすることを開示する。
【0011】また、特開平4−326164号公報及び
特開平5−174067号公報は、デ−タベ−ス検索シ
ステムにおいて、検索対象の物件毎にその自己相関情報
を記憶し、検索キ−の自己相関情報と検索対象10の上
記自己相関情報との合致度を物件毎に求め、物件番号を
合致度の降順に出力する検索手段を設けることを開示す
る。
【0012】しかし、これら従来技術の文字列検索技法
では、検索すべき文字列の曖昧性の度合といったものを
指定することが困難であり、検索結果は、ユーザーにと
って所望でなく、あるいは不自然な多くの文字列を含む
ことになる。また、これら従来技術の文字列検索技法で
は、検索すべき文字列が"This is a pencil"である場
合、"This is a pemcil"(1字間違え)や"This is a red
pencil"(単語が挿入された場合)のみならず、"This is
a red pemcil"(1字間違えと単語が挿入された場合の複
合)という文字列を検索文字列に似たものとして判断す
ることは不可能であった。
【0013】
【発明が解決しようとする課題】この発明の目的は、検
索すべき文字列の曖昧性の度合を任意に指定できるよう
な文字列検索技法を提供することにある。
【0014】この発明の他の目的は、検索すべき文字列
の曖昧性の度合を任意に指定できるような文字列検索技
法を実現するための索引構造を提供することにある。
【0015】この発明のさらに他の目的は、曖昧検索に
よって、人間の感覚に近いものを検索し得る文字列検索
技法を提供することにある。
【0016】本発明の好適な実施例においては、文書中
の任意の連続するN文字または、単語(英単語等)の任意
の連続するN'文字を高速で検索することを可能にする
ので、上記索引ファイルを使用して検索すべき文字列と
文書が、何文字連続して一致しているか、及び途中にど
のくらい余分な文字がはさまっているかを高速で検出す
ることを可能にする。
【0017】本発明の好適な実施例においては、日本語
・中国語のような文字の種類が多く表記上、明示的な単
語デリミターを持たない言語(非デリミタ言語)と、英語
のような文字の種類が少なく、明示的な単語デリミター
をともなって表記される言語(デリミタ言語)のどちらで
記述された文書に対しても、高速な検索を実現すること
を可能にする。
【0018】
【課題を解決するための手段】本発明によれば、複数の
文書からなるデータベースを全文検索するために、個々
の文書には、一意的な番号(または記号)が付与され、
索引ファイルには、各々の文書中の、適当に定めた文字
集合Cに属する文字の連続(以下、可変長連鎖と呼ぶ)
と、文字集合Cに属さない個々の連続するN個の文字
(以下、固定長連鎖と呼ぶ)と、その両者があらわれる
文書の番号及びその文書中の位置情報が格納される。さ
らに、可変長連鎖には、一意的な番号が付与され、可変
長連鎖の個々のN'個の文字(以下、拡張固定長連鎖と
呼ぶ)と、そのN'個の文字があらわれる可変長連鎖の
番号及びその可変長連鎖中の位置情報が格納される。好
適には、索引ファイルは、文字連鎖ファイルと、位置情
報ファイルと、拡張文字連鎖ファイルと、拡張位置情報
ファイルの4つのファイルで構成される。文字連鎖ファ
イルには、可変長連鎖・固定長連鎖・区切りパターンと
それに対応する文書番号・文書内位置番号が位置情報フ
ァイルのどこに位置するかが格納される。位置情報ファ
イルには、文書番号・文書内位置番号が格納される。拡
張文字連鎖ファイルには、拡張文字連鎖とそれに対応す
る可変長連鎖番号・可変長連鎖内位置番号が拡張位置情
報ファイルのどこに位置するかが格納される。拡張位置
情報ファイルには、可変長連鎖番号・可変長連鎖内位置
番号が格納される。
【0019】本発明によれば、このような索引ファイル
を使用して、指定された文字列と文字の並びが似ている
文字列を含む文書を高速に検索する方式が提案される。
この方式では、検索したい文字列と検索精度(0より大
きく1以下)とを指定し、検索したい文字列との"似て
いる度合"が指定の検索精度以上である"似ている文字
列"を含む文書および"似ている文字列"の文書内位置を
特定することができる。これは、具体的には、文書中か
ら、検索したい文字列と"似ている文字列"を選びだし
て、何文字連続して一致しているか途中にどのくらい余
分な文字がはさまっているかの2つの観点から"似てい
る度合い"を数値化する処理である。
【0020】このとき、"似ている度合い"が最高値1に
なるとき、文字列は完全に一致しており、また、文字列
が完全に一致していれば必ず"似ている度合い"は1にな
る。似ている文字列に、検索したい文字列にない余分な
文字がはさまっていたり、検索したい文字列の一部しか
似ている文字列にあらわれない場合、"似ている度合い"
は、1よりも小さい値になるが、本発明に従えば、この
ような"似ている度合い"の数値が、人間の通常の感覚に
かなりよく合致する、妥当なものとなる。
【0021】本発明の1の態様においては、可変長連鎖
文書文字列の存在する文書文字列を特定する文書文字列
特定情報と、可変長連鎖文書文字列の存在する文書文字
列内の位置を示す文書文字列位置情報を可変長連鎖文書
文字列に関連付ける段階と、可変長連鎖文書文字列か
ら、長さM文字の(Mは、1以上の予定の整数)の部分
文書文字列を抜き出して格納する段階と、部分文書文字
列の存在する可変長連鎖文書文字列を特定する可変長連
鎖文書文字列特定情報と、部分文書文字列の存在する可
変長連鎖文書文字列内の位置を示す可変長連鎖文書文字
列位置情報を部分文書文字列に関連付ける段階と、可変
長連鎖検索文字列から抜き出した長さN文字の(Nは、
1以上の予定の整数)部分検索文字列に一致する部分文
書文字列を探索する段階と、可変長連鎖検索文字列の部
分検索文字列の開始位置を1つずらした長さN文字の部
分検索文字列と一致する部分文書文字列を探索する段階
と、
【0022】この部分文書文字列を探索する段階を繰り
返し、可変長連鎖検索文字列の部分検索文字列と一致す
る部分文書文字列の集合を特定する段階と、部分文書文
字列の集合に属する部分文字列の可変長連鎖文書文字列
特定情報及び可変長連鎖文書文字列位置情報から、可変
長連鎖検索文字列に予定の可変長連鎖一致度以上で一致
する可能性のある可変長連鎖文書文字列候補を特定する
段階と、可変長連鎖検索文字列と可変長連鎖文書文字列
候補の可変長連鎖一致度を計算する段階と、可変長連鎖
文書文字列候補の中から、可変長連鎖検索文字列と予定
の可変長連鎖一致度以上の可変長連鎖一致度を有する可
変長連鎖文書文字列を選択する段階と、選択された可変
長連鎖文書文字列の文書文字列特定情報から、選択され
た可変長連鎖文書文字列の存在する文書文字列を特定す
る段階と、選択された可変長連鎖文書文字列の存在する
文書文字列と可変長連鎖検索文字列を含む検索文字列と
の文字列類似度を計算する段階と、計算された文字列類
似度が一定の文字列類似度以上である場合、特定された
可変長連鎖文書文字列を表示する段階とを含むコンピュ
ータ処理によって検索可能に記憶された文書中で、可変
長連鎖検索文字列を含む検索文字列と一定の文字列類似
度以上で類似する可変長連鎖文書文字列を含む文書文字
列を検索する方法が提供される。
【0023】本願の特許請求の範囲における、「文書
中」とは、単一の文書中のみならず、データベース等を
含む複数文書中をも包含する概念である。また、この
「可変長連鎖文書文字列」および「可変長検索文字列」
は、それぞれ文書内、検索文字内の可変長連鎖をいい、
好適には、前述のデリミタ言語の1つの単語に対応して
いる。しかし、必ずしもデリミタ言語の単語である必要
はなく、非デリミタ言語によって構成される場合もあ
る。かかる構成においては、たとえば、特許公報の要約
のキーワードのような可変長文字列の集合に対する検索
に応用することができる。また、「一定の文字列類似度
以上」とは、0を超える類似度をいうが、類似度1、す
なわち完全に一致する類似度を包含するものである。文
書文字列特定情報、文書文字列位置情報と可変長連鎖文
書文字列の関連付け、可変長連鎖文書文字列特定情報、
可変長連鎖文書文字列位置情報と部分文書文字列の関連
付けは本発明の好適な実施例に記載されているような別
個のファイルとして管理する必要はなく、可変長連鎖文
書文字列が対応する文書文字列特定情報、文書文字列位
置情報をポイント可能なリンクが存在していればよく、
同様に、部分文書文字列が対応する可変長連鎖文書文字
列特定情報、可変長連鎖文書文字列位置情報をポイント
可能なリンクが存在していればよい。
【0024】本願の特許請求の範囲における、「可変長
連鎖検索文字列を含む検索文字列」には、他の可変長連
鎖検索文字列を含む検索文字列、固定長連鎖検索文字列
を含む検索文字列のみならず、可変長連鎖検索文字列自
体である検索文字列を含む概念である。この検索文字列
は、好適にはユーザがキーボードから入力するが、ネッ
トワークを介しクライアント側や、他のシステムからも
入力させることも可能であり、英単語等のスペルチェッ
クに応用される場合は、辞書にない単語を抽出すること
により、システムから自動入力される。「部分文書文字
列」および「部分検索文字列」は、実施例に於ける拡張
固定長連鎖に対応する概念であり、その長さMまたはN
は、設計により、ユーザに自由に設定させることも、ユ
ーザに変更できないようにすることもできる。また、入
力された類似度、文書中の可変長連鎖文書文字列の平均
的長さのサンプル、可変長連鎖検索文字列の長さに応じ
てシステム側で変更することも可能である。さらに、
「部分文書文字列」および「部分検索文字列」の抜き出
しに際しては、「$」等の可変長連鎖の始まりを示す記
号や、「¥」等の可変長連鎖の終了を示す符合を加える
ことも可能である。「一定の類似度」はユーザによって
入力された類似度や、デフォルトによって定められた類
似度をいい、クライアント側や、他のシステムからも入
力させることも可能である。
【0025】本発明の他の態様によれば、可変長連鎖文
書文字列と、可変長連鎖文書文字列の存在する文書文字
列を特定する文書文字列特定情報を関連付ける段階と、
可変長連鎖文書文字列から、長さM文字の(Mは、1以
上の予定の整数)の部分文書文字列と、部分文書文字列
の存在する可変長連鎖文書文字列を特定する可変長連鎖
文書文字列特定情報を関連付ける段階と、可変長連鎖検
索文字列から抜き出した長さN文字の(Nは、1以上の
予定の整数)部分検索文字列に一致する部分文書文字列
を探索する段階と、部分検索文字列に一致する部分文書
文字列の可変長連鎖文書文字列特定情報から、部分検索
文字列に一致する部分文書文字列に関連する可変長連鎖
文書文字列を特定する段階と、特定された可変長連鎖文
書文字列の文書文字列特定情報から、特定された可変長
連鎖文書文字列の存在する文書文字列を特定する段階と
を含むコンピュータ処理によって検索可能に記憶された
文書中で、可変長連鎖検索文字列を含む検索文字列と一
定の類似度以上で類似する可変長連鎖文書文字列を含む
文書文字列を検索する方法が提供される。
【0026】本願の特許請求の範囲における、「文書文
字列特定情報」は、実施例に於ける文書番号に対応する
概念であるが、アドレス情報、文書名等、可変長連鎖文
書文字列の存在する文書文字列を特定する情報であれば
よく文書番号に限定される概念ではない。また、可変長
連鎖文書文字列特定情報は、実施例に於ける可変長連鎖
番号に対応する概念であるが、アドレス情報、単語名
等、部分文書文字列の存在する可変長連鎖文書文字列を
特定する情報であればよい。
【0027】本発明の他の態様によれば、可変長連鎖文
書文字列と、可変長連鎖文書文字列の存在する文書文字
列を特定する文書文字列特定情報が関連付けられてお
り、可変長連鎖文書文字列から、長さM文字の(Mは、
1以上の予定の整数)の部分文書文字列と、部分文書文
字列の存在する可変長連鎖文書文字列を特定する可変長
連鎖文書文字列特定情報が関連付けられている索引ファ
イル中で、可変長連鎖検索文字列から抜き出した長さN
文字の(Nは、1以上の予定の整数)部分検索文字列に
一致する部分文書文字列を探索する段階と、部分検索文
字列に一致する部分文書文字列の可変長連鎖文書文字列
特定情報から、部分検索文字列に一致する部分文書文字
列に関連する可変長連鎖文書文字列を特定する段階と、
特定された可変長連鎖文書文字列の文書文字列特定情報
から、特定された可変長連鎖文書文字列の存在する文書
文字列を特定する段階とを含むコンピュータ処理によっ
て検索可能に記憶された文書中で、可変長連鎖検索文字
列を含む検索文字列と一定の類似度以上で類似する可変
長連鎖文書文字列を含む文書文字列を検索する方法が提
供される。この「索引ファイル」は、本発明の方法が実
施される以前に作成されており、RAM、ハードディス
ク等のコンピュータシステム内の各種媒体、または、フ
ロッピーディスク、CDROM等のコンピュータシステ
ム外の各種媒体に格納されている。
【0028】本発明の他の態様によれば、可変長連鎖文
書文字列の存在する文書文字列を特定する文書文字列特
定情報と、可変長連鎖文書文字列の存在する文書文字列
内の位置を示す文書文字列位置情報を可変長連鎖文書文
字列に関連付ける段階と、可変長連鎖文書文字列から、
長さM文字の(Mは、1以上の予定の整数)の部分文書
文字列を抜き出して格納する段階と、部分文書文字列の
存在する可変長連鎖文書文字列を特定する可変長連鎖文
書文字列特定情報と、部分文書文字列の存在する可変長
連鎖文書文字列内の位置を示す可変長連鎖文書文字列位
置情報を部分文書文字列に関連付ける段階と、可変長連
鎖検索文字列から抜き出した長さN文字の(Nは、1以
上の予定の整数)部分検索文字列に一致する部分文書文
字列を探索する段階と、可変長連鎖検索文字列の部分検
索文字列の開始位置を1つずらした長さN文字の部分検
索文字列と一致する部分文書文字列を探索する段階と、
この一致する部分文書文字列を探索する段階を繰り返
し、可変長連鎖検索文字列の部分検索文字列と一致する
部分文書文字列の集合を特定する段階と、部分文書文字
列の集合に属する部分文字列の可変長連鎖文書文字列特
定情報及び可変長連鎖文書文字列位置情報から、可変長
連鎖検索文字列に類似する可変長連鎖文書文字列を特定
する段階と、特定された可変長連鎖文書文字列特定され
た可変長連鎖文書文字列の存在する文書文字列を特定す
る段階とを含むコンピュータ処理によって検索可能に記
憶された文書中で、可変長連鎖検索文字列を含む検索文
字列と一定の類似度以上で類似する可変長連鎖文書文字
列を含む文書文字列を検索する方法が提供される。
【0029】本発明の他の態様によれば、文書から、第
1の可変長連鎖を抜き出す段階と、第1の可変長連鎖が
出現する文書中の位置情報を格納する段階と、第1の可
変長連鎖から第1の拡張固定長連鎖を抜き出す段階と、
第1の拡張固定長連鎖が存在する第1の可変長連鎖を特
定する情報と、第1の拡張固定長連鎖が存在する第1の
可変長連鎖中の位置情報を格納する段階とを含む複数の
可変長連鎖を含む文書からコンピュータ検索用のファイ
ルをコンピュータによってアクセス可能な記憶装置に作
成する方法が提供される。
【0030】本願の特許請求の範囲における、「第1の
可変長連鎖が出現する文書中の位置情報」、「第1の拡
張固定長連鎖が存在する第1の可変長連鎖を特定する情
報」、「第1の拡張固定長連鎖が存在する第1の可変長
連鎖中の位置情報」は上記コンピュータによってアクセ
ス可能であれば、夫々異なる記憶装置に格納することも
できる。
【0031】本発明の他の態様によれば、文書から、複
数の可変長連鎖を抜き出して文字連鎖ファイルに格納す
る段階と、複数の可変長連鎖が出現する文書中の位置情
報を位置情報ファイルに格納する段階と、複数の可変長
連鎖の各々の可変長連鎖から長さM文字の(Mは、1以
上の予定の整数)拡張固定長連鎖を抜き出して拡張文字
連鎖ファイルに格納する段階と、拡張固定長連鎖が存在
する可変長連鎖を特定する情報と、拡張固定長連鎖が存
在する可変長連鎖中の位置情報を拡張位置情報ファイル
に格納する段階とを含む複数の可変長連鎖を含む文書か
らコンピュータ検索用のファイルをコンピュータによっ
てアクセス可能な記憶装置に作成する方法が提供され
る。
【0032】本発明の他の態様によれば、第1の可変長
連鎖文字列から、長さN文字の(Nは、1以上の予定の
整数)の部分文字列について、第2の可変長連鎖中で一
致する部分文字列を探索する段階と、第1の可変長連鎖
の部分文字列の開始位置を1つずらした長さN文字の部
分文字列につき、第2の可変長連鎖中で一致する部分文
字列を探索する段階と、第2の可変長連鎖中で一致する
部分文字列を探索する段階を繰り返すことにより、第2
の可変長連鎖において、第1の可変長連鎖と一致する文
字を識別する可変長連鎖一致文字識別情報を導出する段
階と、可変長連鎖一致文字識別情報と第1の可変長連鎖
文字数に基づいて、第1の可変長連鎖と、第2の可変長
連鎖の可変長連鎖一致度を算出する段階と、可変長連鎖
一致度に基づいて第1の文字列の類似度を算出する段階
とを含む第1の可変長連鎖を含む第1の文字列と、第2
の可変長連鎖を含む第2の文字列の類似度をコンピュー
タを用いて計算する方法が提供される。可変長連鎖一致
文字識別情報とは、第1または第2の可変長連鎖におい
て一致文字、不一致文字を識別する情報でり、好適には
第1の可変長連鎖の有効一致文字列の文字数または、第
2の可変長連鎖の有効一致文字列の文字数であるが、一
致文字ではなく、不一致文字を特定する情報であっても
一致度を算出することが可能である。また、一致文字
数、不一致文字数を単純に計算に用いるのではなく、一
致文字、不一致文字の性質によって一致度計算に重み付
けを行ったり、ペナルティを課すこともできる。
【0033】本発明の他の態様によれば、第2の可変長
連鎖文字列の存在する第2の文字列を特定する文字列特
定情報と、第2の可変長連鎖文字列の存在する第2の文
字列内の位置を示す文字列位置情報を第2の可変長連鎖
文字列に関連付ける段階と、第2の可変長連鎖文字列か
ら、長さM文字の(Mは、1以上の予定の整数)の第2
の部分文字列を抜き出して格納する段階と、第2の部分
文字列の存在する第2の可変長連鎖文字列を特定する可
変長連鎖文字列特定情報と、第2の部分文字列の存在す
る第2の可変長連鎖文字列内の位置を示す可変長連鎖文
字列位置情報を第2の部分文書文字列に関連付ける段階
と、第1の可変長連鎖文字列から抜き出した長さN文字
の(Nは、1以上の予定の整数)第1の部分文字列に一
致する第2の部分文字列を探索する段階と、第1の可変
長連鎖文字列の第1の部分文字列の開始位置を1つずら
した長さN文字の第1の部分検索文字列と一致する第2
の部分文字列を探索する段階と、この第1の部分検索文
字列と一致する第2の部分文字列を探索する段階を繰り
返し、第1の可変長連鎖文字列の第1の部分文字列と一
致する第2の部分文字列の集合を特定する段階と、第2
の部分文字列の集合に属する第2の部分文字列の可変長
連鎖文字列特定情報及び可変長連鎖文字列位置情報か
ら、第1の可変長連鎖文字列に予定の可変長連鎖一致度
以上で一致する可能性のある可変長連鎖文字列候補を特
定する段階と、第1の可変長連鎖文字列と可変長連鎖文
字列候補の可変長連鎖一致度を計算する段階と、可変長
連鎖文字列候補の中から、第1の可変長連鎖文字列と予
定の可変長連鎖一致度以上の可変長連鎖一致度を有する
第2の可変長連鎖文字列を選択する段階と、選択された
第2の可変長連鎖文字列の可変長連鎖一致度を格納する
段階と、選択された第2の可変長連鎖文字列の文字列特
定情報から、選択された第2の可変長連鎖文字列の存在
する第2の文書文字列を特定する段階と、格納された可
変長連鎖一致度に基づいて、選択された第2の可変長連
鎖文字列の存在する第2の文字列と第1の可変長連鎖検
字列を含む検索文字列との文字列類似度を計算する段階
とを含む第1の可変長連鎖を含む第1の文字列と、第2
の可変長連鎖を含む第2の文字列の類似度をコンピュー
タを用いて計算する方法が提供される。
【0034】本発明の他の態様によれば、可変長連鎖検
索文字列の先頭から、長さM文字の(Mは、1以上の予
定の整数)の部分文字列につき、可変長連鎖文書文字列
で一致する開始位置及び終了位置を見出す(以下、その
開始位置及び終了位置によって決定されるM文字の長さ
の部分文字列を有効一致文字列と称する)段階と、 i番目の有効一致文字列の文書中での開始位置を s(D,
i) i番目の有効一致文字列の文書中での終了位置を e(D,
i) i番目の有効一致文字列の検索したい文字列中での開始
位置を s(C, i) i番目の有効一致文字列の検索したい文字列中での終了
位置を e(C, i) として、 e(D, i) + 1 ≦ s(D, i+1) ≦ e(D, i) + L + 1 且つ s(C, i+1) > e(C,i) - (M-1) (この式で、Lは、1以上の予定の整数)という条件を
満たすi+i番目の有効一致文字列を見出す段階と、有効
一致文字列が見つかる限り、このi+i番目の有効一致文
字列を見出す段階を継続する段階と、少なくとも、可変
長連鎖文書文字列における最初の有効一致文字列の開始
位置から、可変長連鎖文書文字列における最後の有効一
致文字列の終了位置までの間の文字列における、有効一
致文字列の存在情報に基づき、可変長連鎖検索文字列
と、可変長連鎖文書文字列における最初の有効一致文字
列の開始位置から、可変長連鎖文書文字列における最後
の有効一致文字列の終了位置までの間の文字列との間の
類似度を計算する段階と、計算された類似度が、予定の
類似度以上であることに応答して、可変長文書文字列を
特定する段階と、特定された可変長連鎖文書文字列を含
む文書文字列を特定する段階とを含む可変長連鎖検索文
字列を含む検索文字列に対し予定の類似度以上の類似す
る文書文字列があらわれる箇所を見出す方法が提供され
る。
【0035】本発明の他の態様によれば、検索文字列を
入力するための入力装置と、記可変長連鎖文書文字列を
格納する文字連鎖ファイルと、可変長連鎖文書文字列の
存在する文書文字列を特定する文書文字列特定情報と、
可変長連鎖文書文字列の存在する文書文字列内の位置を
示す文書文字列位置情報を格納する位置情報ファイル
と、可変長連鎖文書文字列から、長さM文字の(Mは、
1以上の予定の整数)から抜き出された部分文書文字列
を格納する拡張文字連鎖ファイルと、部分文書文字列の
存在する可変長連鎖文書文字列を特定する可変長連鎖文
書文字列特定情報と、部分文書文字列の存在する可変長
連鎖文書文字列内の位置を示す可変長連鎖文書文字列位
置情報を格納する拡張位置情報ファイルとを記憶する記
憶装置と、
【0036】可変長連鎖検索文字列から抜き出した長さ
N文字の(Nは、1以上の予定の整数)部分検索文字列
に一致する部分文書文字列の探索と、可変長連鎖検索文
字列の部分検索文字列の開始位置を1つずらした長さN
文字の部分検索文字列と一致する部分文書文字列の探索
と、部分検索文字列と一致する部分文書文字列の探索を
繰り返し、前記可変長連鎖検索文字列の部分検索文字列
と一致する部分文書文字列の集合を特定することと、部
分文書文字列の集合に属する部分文字列の可変長連鎖文
書文字列特定情報及び可変長連鎖文書文字列位置情報か
ら、可変長連鎖検索文字列に予定の可変長連鎖一致度以
上で一致する可能性のある可変長連鎖文書文字列候補の
特定と、可変長連鎖検索文字列と可変長連鎖文書文字列
候補の可変長連鎖一致度の計算と、可変長連鎖文書文字
列候補の中から、可変長連鎖検索文字列と予定の可変長
連鎖一致度以上の可変長連鎖一致度を有する可変長連鎖
文書文字列の選択と、選択された可変長連鎖文書文字列
の文書文字列特定情報から、選択された可変長連鎖文書
文字列の存在する文書文字列の特定と、選択された可変
長連鎖文書文字列の存在する文書文字列と可変長連鎖検
索文字列を含む検索文字列との文字列類似度の計算とを
行う制御手段と、計算された文字列類似度が一定の文字
列類似度以上である場合、特定された可変長連鎖文書文
字列を表示する表示装置とを含むコンピュータ処理によ
って検索可能に記憶された文書中で、可変長連鎖検索文
字列を含む検索文字列と一定の文字列類似度以上で類似
する可変長連鎖文書文字列を含む文書文字列を検索する
装置が提供される。
【0037】本願の特許請求の範囲における、「入力装
置」は、好適には文字入力可能なキーボードであるが、
表示装置上に表示された文字をポイントする、マウスや
トラックボール等のポインンティングデバイスや、タッ
チパネル等も含む概念である。また、他のシステムから
検索文字列が入力される場合、当該他のシステムが、入
力装置として構成される。「記憶装置」は、好適には、
RAMを用いて実施することができるが、その他、ハー
ドディスク、キャッシュメモリ等の各種記憶装置を含
む。「制御手段」は、好適には、バスに、演算及び入出
力制御機能をもつ中央処理装置(CPU)、プログラム
をロードし、また、CPUのための作業領域を与える主
記憶、中央処理装置を制御するためのオペレーティング
・システム、検索エンジン等のプログラムの組合せによ
って構成される。「表示装置」は、好適にはディスプレ
イ装置によって構成されるが、印字することによって、
文字等を表示するプリンタ、プロッタ等の印刷装置を含
む。
【0038】本発明の他の態様によれば、可変長連鎖文
書文字列と、可変長連鎖文書文字列の存在する文書文字
列を特定する文書文字列特定情報を関連付ける手段と、
可変長連鎖文書文字列から、長さM文字の(Mは、1以
上の予定の整数)の部分文書文字列と、部分文書文字列
の存在する可変長連鎖文書文字列を特定する可変長連鎖
文書文字列特定情報を関連付ける手段と、可変長連鎖検
索文字列から抜き出した長さN文字の(Nは、1以上の
予定の整数)部分検索文字列に一致する部分文書文字列
を探索する手段と、部分検索文字列に一致する部分文書
文字列の可変長連鎖文書文字列特定情報から、部分検索
文字列に一致する部分文書文字列に関連する可変長連鎖
文書文字列を特定する手段と、特定された可変長連鎖文
書文字列の文書文字列特定情報から、特定された可変長
連鎖文書文字列の存在する文書文字列を特定する手段と
を含むコンピュータ処理によって検索可能に記憶された
文書中で、可変長連鎖検索文字列を含む検索文字列と一
定の類似度以上で類似する可変長連鎖文書文字列を含む
文書文字列を検索する装置が提供される。
【0039】本発明の他の態様によれば、可変長連鎖文
書文字列と、可変長連鎖文書文字列の存在する文書文字
列を特定する文書文字列特定情報が関連付けられてお
り、可変長連鎖文書文字列から、長さM文字の(Mは、
1以上の予定の整数)の部分文書文字列と、部分文書文
字列の存在する可変長連鎖文書文字列を特定する可変長
連鎖文書文字列特定情報が関連付けられている索引ファ
イル中で、可変長連鎖検索文字列から抜き出した長さN
文字の(Nは、1以上の予定の整数)部分検索文字列に
一致する部分文書文字列を探索する手段と、部分検索文
字列に一致する部分文書文字列の可変長連鎖文書文字列
特定情報から、部分検索文字列に一致する部分文書文字
列に関連する可変長連鎖文書文字列を特定する手段と、
特定された可変長連鎖文書文字列の文書文字列特定情報
から、特定された可変長連鎖文書文字列の存在する文書
文字列を特定する手段とを含むコンピュータ処理によっ
て検索可能に記憶された文書中で、可変長連鎖検索文字
列を含む検索文字列と一定の類似度以上で類似する可変
長連鎖文書文字列を含む文書文字列を検索する装置が提
供される。
【0040】本発明の他の態様によれば、可変長連鎖文
書文字列の存在する文書文字列を特定する文書文字列特
定情報と、可変長連鎖文書文字列の存在する文書文字列
内の位置を示す文書文字列位置情報を可変長連鎖文書文
字列に関連付ける手段と、可変長連鎖文書文字列から、
長さM文字の(Mは、1以上の予定の整数)の部分文書
文字列を抜き出して格納する手段と、部分文書文字列の
存在する可変長連鎖文書文字列を特定する可変長連鎖文
書文字列特定情報と、部分文書文字列の存在する可変長
連鎖文書文字列内の位置を示す可変長連鎖文書文字列位
置情報を部分文書文字列に関連付ける手段と、可変長連
鎖検索文字列から抜き出した長さN文字の(Nは、1以
上の予定の整数)部分検索文字列に一致する部分文書文
字列を探索する手段と、可変長連鎖検索文字列の部分検
索文字列の開始位置を1つずらした長さN文字の部分検
索文字列と一致する部分文書文字列を探索する手段と、
この部分文書文字列を探索する手段を繰り返し、可変長
連鎖検索文字列の部分検索文字列と一致する部分文書文
字列の集合を特定する手段と、部分文書文字列の集合に
属する部分文字列の可変長連鎖文書文字列特定情報及び
可変長連鎖文書文字列位置情報から、可変長連鎖検索文
字列に類似する可変長連鎖文書文字列を特定する手段
と、特定された可変長連鎖文書文字列の文書文字列特定
情報から、特定された可変長連鎖文書文字列の存在する
文書文字列を特定する手段とを含むコンピュータ処理に
よって検索可能に記憶された文書中で、可変長連鎖検索
文字列を含む検索文字列と一定の類似度以上で類似する
可変長連鎖文書文字列を含む文書文字列を検索する装置
が提供される。
【0041】本発明の他の態様によれば、文書から、第
1の可変長連鎖を抜き出す手段と、第1の可変長連鎖が
出現する文書中の位置情報を格納する手段と、第1の可
変長連鎖から第1の拡張固定長連鎖を抜き出す手段と、
第1の拡張固定長連鎖が存在する第1の可変長連鎖を特
定する情報と、第1の拡張固定長連鎖が存在する第1の
可変長連鎖中の位置情報を格納する手段と、を含む複数
の可変長連鎖を含む文書からコンピュータ検索用のファ
イルをコンピュータによってアクセス可能な記憶装置に
作成する装置が提供される。
【0042】本発明の他の態様によれば、文書から、複
数の可変長連鎖を抜き出して文字連鎖ファイルに格納す
る手段と、複数の可変長連鎖が出現する文書中の位置情
報を位置情報ファイルに格納する手段と、複数の可変長
連鎖の各々の可変長連鎖から長さM文字の(Mは、1以
上の予定の整数)拡張固定長連鎖を抜き出して拡張文字
連鎖ファイルに格納する手段と、拡張固定長連鎖が存在
する可変長連鎖を特定する情報と、拡張固定長連鎖が存
在する可変長連鎖中の位置情報を拡張位置情報ファイル
に格納する手段とを含む複数の可変長連鎖を含む文書か
らコンピュータ検索用のファイルをコンピュータによっ
てアクセス可能な記憶装置に作成する装置が提供され
る。
【0043】本発明の他の態様によれば、第1の可変長
連鎖文字列から、長さN文字の(Mは、1以上の予定の
整数)の部分文字列につき、第2の可変長連鎖中で一致
する部分文字列を探索する手段と、第1の可変長連鎖の
部分文字列の開始位置を1つずらした長さN文字の部分
文字列につき、第2の可変長連鎖中で一致する部分文字
列を探索する手段と、この一致する部分文字列を探索す
る手段を繰り返すことにより、第2の可変長連鎖におい
て、第1の可変長連鎖と一致する文字を識別する可変長
連鎖一致文字識別情報を導出する手段と、可変長連鎖一
致文字識別情報と第1の可変長連鎖文字数に基づいて、
第1の可変長連鎖と、第2の可変長連鎖の可変長連鎖一
致度を算出する手段と、可変長連鎖一致度に基づいて第
1の文字列の類似度を算出する手段とを含む第1の可変
長連鎖を含む第1の文字列と、第2の可変長連鎖を含む
第2の文字列の類似度をコンピュータを用いて計算する
装置が提供される。
【0044】本発明の他の態様によれば、第2の可変長
連鎖文字列の内容を管理する文字連鎖ファイルと、第2
の可変長連鎖文字列の存在する第2の文字列を特定する
文字列特定情報と、第2の可変長連鎖文字列の存在する
第2の文字列内の位置を示す文字列位置情報を管理する
位置情報ファイルと、第2の可変長連鎖文字列から抜き
出した、長さM文字の(Mは、1以上の予定の整数)の
第2の部分文字列を管理する拡張文字連鎖ファイルと、
第2の部分文字列の存在する第2の可変長連鎖文字列を
特定する可変長連鎖文字列特定情報と、第2の部分文字
列の存在する第2の可変長連鎖文字列内の位置を示す可
変長連鎖文字列位置情報を管理する拡張位置情報ファイ
ルと、を格納する記憶装置と、第1の可変長連鎖文字列
から抜き出した長さN文字の(Nは、1以上の予定の整
数)第1の部分文字列に一致する第2の部分文字列を探
索する手段と、第1の可変長連鎖文字列の第1の部分文
字列の開始位置を1つずらした長さN文字の第1の部分
検索文字列と一致する第2の部分文字列を探索する手段
と、この第1の部分検索文字列と一致する第2の部分文
字列を探索する手段を繰り返し、第1の可変長連鎖文字
列の第1の部分文字列と一致する第2の部分文字列の集
合を特定する手段と、第2の部分文字列の集合に属する
第2の部分文字列の可変長連鎖文字列特定情報及び可変
長連鎖文字列位置情報から、第1の可変長連鎖文字列に
予定の可変長連鎖一致度以上で一致する可能性のある可
変長連鎖文字列候補を特定する手段と、第1の可変長連
鎖文字列と可変長連鎖文字列候補の可変長連鎖一致度を
計算する手段と、可変長連鎖文字列候補の中から、第1
の可変長連鎖文字列と予定の可変長連鎖一致度以上の可
変長連鎖一致度を有する第2の可変長連鎖文字列を選択
する手段と、選択された第2の可変長連鎖文字列の文字
列特定情報から、選択された第2の可変長連鎖文字列の
存在する第2の文書文字列を特定する手段と、可変長連
鎖一致度に基づいて、選択された第2の可変長連鎖文字
列の存在する第2の文字列と第1の可変長連鎖検字列を
含む検索文字列との文字列類似度を計算する手段と、を
含む第1の可変長連鎖を含む第1の文字列と、第2の可
変長連鎖を含む第2の文字列の類似度をコンピュータを
用いて計算する装置が提供される。
【0045】本発明の他の態様によれば、可変長連鎖検
索文字列の先頭から、長さM文字の(Mは、1以上の予
定の整数)の部分文字列につき、可変長連鎖文書文字列
で一致する開始位置及び終了位置を見出す(以下、その
開始位置及び終了位置によって決定されるM文字の長さ
の部分文字列を有効一致文字列と称する)手段と、 i番目の有効一致文字列の文書中での開始位置を s(D,
i) i番目の有効一致文字列の文書中での終了位置を e(D,
i) i番目の有効一致文字列の検索したい文字列中での開始
位置を s(C, i) i番目の有効一致文字列の検索したい文字列中での終了
位置を e(C, i) として、 e(D, i) + 1 ≦ s(D, i+1) ≦ e(D, i) + L + 1 且つ s(C, i+1) > e(C,i) - (M-1) (この式で、Lは、1以上の予定の整数)という条件を
満たすi+i番目の有効一致文字列を見出す手段と、有効
一致文字列が見つかる限り、このi+i番目の有効一致文
字列を見出す手段を継続する手段と、少なくとも、可変
長連鎖文書文字列における最初の有効一致文字列の開始
位置から、可変長連鎖文書文字列における最後の有効一
致文字列の終了位置までの間の文字列における、有効一
致文字列の存在情報に基づき、可変長連鎖検索文字列
と、可変長連鎖文書文字列における最初の有効一致文字
列の開始位置から、可変長連鎖文書文字列における最後
の有効一致文字列の終了位置までの間の文字列との間の
類似度を計算する手段と、計算された類似度が、予定の
類似度以上であることに応答して、可変長文書文字列を
特定する手段と、特定された可変長連鎖文書文字列を含
む文書文字列を特定する手段とを含む可変長連鎖文書文
字列を含み、コンピュータ処理によって検索可能に記憶
された文書において、可変長連鎖検索文字列を含む検索
文字列に対し予定の類似度以上の類似する文書文字列が
あらわれる箇所を見出す装置が提供される。
【0046】本発明の他の態様によれば、可変長連鎖文
書文字列と、可変長連鎖文書文字列の存在する文書文字
列を特定する文書文字列特定情報を関連付けることをコ
ンピュータに指示するプログラムコード手段と、可変長
連鎖文書文字列から、長さM文字の(Mは、1以上の予
定の整数)の部分文書文字列と、部分文書文字列の存在
する可変長連鎖文書文字列を特定する可変長連鎖文書文
字列特定情報を関連付けることをコンピュータに指示す
るプログラムコード手段と、可変長連鎖検索文字列から
抜き出した長さN文字の(Nは、1以上の予定の整数)
部分検索文字列に一致する部分文書文字列を探索するこ
とをコンピュータに指示するプログラムコード手段と、
部分検索文字列に一致する部分文書文字列の可変長連鎖
文書文字列特定情報から、部分検索文字列に一致する部
分文書文字列に関連する可変長連鎖文書文字列を特定す
ることをコンピュータに指示するプログラムコード手段
と、特定された可変長連鎖文書文字列の文書文字列特定
情報から、特定された可変長連鎖文書文字列の存在する
文書文字列を特定することをコンピュータに指示するプ
ログラムコード手段とを含むコンピュータ処理によって
検索可能に記憶された文書中で、可変長連鎖検索文字列
を含む検索文字列と一定の類似度以上で類似する可変長
連鎖文書文字列を含む文書文字列を検索するためのプロ
グラムを格納する媒体が提供される。
【0047】この媒体には、フロッピーディスク、CD
−ROM、MO、PD、ネットワークに接続された記憶
装置等がある。プログラムコードは複数に分割し複数の
媒体に格納することもできる。また、このプログラムは
圧縮して媒体に格納することも可能である。この媒体
は、フロッピーディスクドライブ等の各種ドライブや、
モデム、シリアルポート等を介してシステムにロードさ
れる。
【0048】本発明の他の態様によれば、可変長連鎖文
書文字列と、可変長連鎖文書文字列の存在する文書文字
列を特定する文書文字列特定情報が関連付けられてお
り、可変長連鎖文書文字列から、長さM文字の(Mは、
1以上の予定の整数)の部分文書文字列と、部分文書文
字列の存在する可変長連鎖文書文字列を特定する可変長
連鎖文書文字列特定情報が関連付けられている索引ファ
イル中で、可変長連鎖検索文字列から抜き出した長さN
文字の(Nは、1以上の予定の整数)部分検索文字列に
一致する部分文書文字列を探索することをコンピュータ
に指示するプログラムコード手段と、部分検索文字列に
一致する部分文書文字列の可変長連鎖文書文字列特定情
報から、部分検索文字列に一致する部分文書文字列に関
連する可変長連鎖文書文字列を特定することをコンピュ
ータに指示するプログラムコード手段と、特定された可
変長連鎖文書文字列の文書文字列特定情報から、特定さ
れた可変長連鎖文書文字列の存在する文書文字列を特定
することをコンピュータに指示するプログラムコード手
段とを含むコンピュータ処理によって検索可能に記憶さ
れた文書中で、可変長連鎖検索文字列を含む検索文字列
と一定の類似度以上で類似する可変長連鎖文書文字列を
含む文書文字列を検索するためのプログラムを格納する
媒体が提供される。
【0049】本発明の他の態様によれば、文書から、第
1の可変長連鎖を抜き出すことをコンピュータに指示す
るプログラムコード手段と、第1の可変長連鎖が出現す
る文書中の位置情報を格納することをコンピュータに指
示するプログラムコード手段と、第1の可変長連鎖から
第1の拡張固定長連鎖を抜き出すことをコンピュータに
指示するプログラムコード手段と、第1の拡張固定長連
鎖が存在する第1の可変長連鎖を特定する情報と、第1
の拡張固定長連鎖が存在する第1の可変長連鎖中の位置
情報を格納することをコンピュータに指示するプログラ
ムコード手段とを含む複数の可変長連鎖を含む文書から
コンピュータ検索用のファイルをコンピュータによって
アクセス可能な記憶装置に作成するためのプログラムを
格納する媒体が提供される。
【0050】本発明の他の態様によれば、複数の可変長
連鎖を含む文書から、複数の可変長連鎖を抜き出して格
納した文字連鎖ファイルと、複数の可変長連鎖が出現す
る文書中の位置情報を管理する位置情報ファイルと、複
数の可変長連鎖の各々の可変長連鎖から長さM文字の
(Mは、1以上の予定の整数)拡張固定長連鎖を抜き出
して格納した拡張文字連鎖ファイルと、拡張固定長連鎖
が存在する可変長連鎖を特定する情報と、拡張固定長連
鎖が存在する前記可変長連鎖中の位置情報を格納した拡
張位置情報ファイルとを格納するコンピュータ検索用の
ファイルを格納するコンピュータによって読み取り可能
な媒体が提供される。本発明のかかる特有のファイル構
成によって、コンピュータシステムに組み込まれたとき
に、容易に曖昧検索を行うことができる。また、重複し
た文字列を圧縮しているため、ファイルの容量も文書を
そのまま格納するよりも少なくなる場合もある。さら
に、重複した文字列を重複して検索することがないた
め、高速な検索を可能とすることができる。この本発明
の効果は、同じ単語が多く繰り返される文書においては
特に有効である。本実施例においては、重複した文字列
の出現する位置情報を数字によって現しているが、この
数字を符号化して圧縮することにより、文書全体として
容量を小さくすることができる。
【0051】
【実施例】以下、図面を参照して本発明の実施例を説明
する。 A.ハードウェア構成 図1を参照すると、本発明を実施するためのシステム構
成の概観図が示されている。この構成は、バス101
に、演算及び入出力制御機能をもつ中央処理装置(CP
U)102、プログラムをロードし、また、CPU10
2のための作業領域を与える主記憶(RAM)104、
コマンドや検索する文字列などをキー入力するためのキ
ーボード106と、中央処理装置を制御するためのオペ
レーティング・システム、データベース・ファイル、検
索エンジン、索引ファイルなどを格納したハードディス
ク108と、データベースの検索結果を表示するための
ディスプレイ装置110と、ディスプレイ装置110の
画面上の任意の位置をポイントしてその位置情報を中央
処理装置に伝えるためのポインティング・デバイス(マ
ウス、トラックボール等を含む)112が接続されてい
る。従って、本発明は、通常のパーソナルコンピュータ
(PC)、やワークステーションやこれらの組合せによ
って実施可能であることを容易に理解できるであろう。
また、本発明の方法を実行するために、オペレーティン
グ・システムと協働してCPU等に命令を与えるプログ
ラムコードを格納する記憶媒体114が示されている。
記憶媒体にはフロッピーディスク、CD−ROM、M
O、PD、ネットワークに接続された記憶装置等があ
り、前述のプログラムコードは複数に分割し、または圧
縮してこの記憶媒体に格納することも可能である。この
記憶媒体114は、フロッピーディスクドライブ等の各
種ドライブや、モデム、シリアルポート等を介してシス
テムにロードされることによって、図1に示すシステム
は、本発明のシステムとして構成されることとなる。
【0052】オペレーティング・システムとしては、W
indows(マイクロソフトの商標)、OS/2(I
BMの商標)、AIX(IBMの商標)上のX−WIN
DOWシステム(MITの商標)などの、標準でGUI
マルチウインドウ環境をサポートするものが望ましい
が、本発明は、PC−DOS(IBMの商標)、MS−
DOS(マイクロソフトの登録商標)などのキャラクタ
・ベース環境でも実現可能であり、特定のオペレーティ
ング・システム環境に限定されるものではない。また、
図1は、スタンド・アロン環境のシステムを示している
が、一般的に、データベース・ファイルは大容量のディ
スク装置を要するものであるので、クライアント/サー
バ・システムとして本発明を実現し、サーバ・マシンに
データベース・ファイルと検索エンジンを配置し、クラ
イアント・マシンは、サーバ・マシンに対して、イーサ
ネット、トークン・リングなどでLAN接続し、クライ
アント・マシン側には、検索結果を見るための表示制御
部のみを配置するようにしてもよい。
【0053】B.システム構成 次に、図2のブロック図を参照して、本発明のシステム
構成について説明する。尚、図2で個別のブロックで示
されている要素は、図1のハードディスク108に、個
別にまたは集合的に、データ・ファイルまたはプログラ
ム・ファイルとして格納されているものであることに留
意されたい。データベース202として本発明が主に想
定するものは、新聞記事のデータベース、特許公報デー
タベースなどの、複数の文書が格納されたものである。
しかし、本発明の適用範囲は、複数の文書からなるデー
タベースの検索に限定されず、単一の文書内の検索にも
適用できることに留意されたい。このとき、個別の文書
のコンテンツは、例えばテキスト・ファイル形式で、検
索可能に格納されているものである。さらに、個々の文
書には、一意的な文書番号が付与されている。好適な文
書番号は、1から始まる昇順の順次番号であるが、特許
公報データベースの場合、出願番号あるいは公開番号を
一意的な文書番号として使用することもできる。また、
個々の文書を識別するために順次番号ではなく、"AB
C"、"&XYZ"などの記号を使用してもよい。但し、一般的
に、そのような識別記号を表現するためには、数字より
も多くのバイト数を要するので、実際上、順次番号で文
書を識別する方が好ましい。
【0054】一般的に、データベース202に格納され
ている新聞記事あるいは特許公報のような膨大なコンテ
ンツを直接検索するのは長い処理時間を要するので、デ
ータベース202に格納されている全ての新聞記事のコ
ンテンツを対象として予め、索引ファイル204が、索
引作成・更新モジュール206によって作成される。本
発明の後述する実施例では、このようにして作成された
索引ファイル204は、文字連鎖ファイルと、位置情報
ファイルと、拡張文字連鎖ファイルと、拡張位置情報フ
ァイルの4つのファイルで構成される。文字連鎖ファイ
ルには、固定長連鎖・可変長連鎖・区切りパターンとそ
れに対応する文書番号・文書内位置番号が位置情報ファ
イルのどこに位置するかが格納される。位置情報ファイ
ルには、文書番号・文書内位置番号が格納される。拡張
文字連鎖ファイルには、拡張文字連鎖とそれに対応する
可変長連鎖番号・可変長連鎖内位置番号が拡張位置情報
ファイルのどこに位置するかが格納される。拡張位置情
報ファイルには、可変長連鎖番号・可変長連鎖内位置番
号が格納される。
【0055】また、データベース202は、個々の文書
を、個別のファイルとして管理するものでもよく、ある
いは、連続する単一のファイルに、全ての文書を順次配
列したものでもよく、要するに、本質的なのは、個々の
文書に、一意的な番号が付与され、その一意的な番号で
もって、個々の文書の内容にアクセスできることであ
る。前者の場合、データベース202は、個々の文書の
一意的な番号と、文書を格納する実際のファイル名とを
対応付けるテーブルを管理し、後者の場合、データベー
ス202は、個々の文書の一意的な番号と、単一のデー
タベース・ファイル中のオフセット及び文書のサイズと
を対応付けるテーブルを管理することになる。検索エン
ジン208は、検索文字入力モジュール210によって
与えられた検索文字列を入力として索引ファイル204
を検索し、入力された検索文字列を含む文書の文書番号
(複数あり得る)と、その入力された検索文字列が文書
中にあらわれる位置(やはり複数あり得る)とを返す機
能をもつ。検索文字入力モジュール210は、好適に
は、マルチウインドウ環境におけるダイアログ・ボック
スで構成され、その入力ボックスに、キーボード106
で所望の検索すべき文字を入力するようにした形式のも
のである。
【0056】さらに本発明の特徴によれば、検索文字入
力モジュール210は、曖昧検索の類似度を、0〜1の
数値(百分率を基準として、0〜100の数字でもよ
い)で入力することを可能とする。このため、検索文字
入力モジュール210は、0〜1間の任意の位置を指し
示すハンドルをもつスライダまたはスクロール・バーを
表示する。そのスライダのハンドルは、例えばデフォー
ルトでは1を指し示し、さらに、ハンドルをマウス11
2でドラッグして移動することにより、別の値を指し示
すように操作可能である。
【0057】結果表示モジュール212は、検索エンジ
ン208から与えられた検索結果である文書番号と、検
索文字が当該文書中にあらわれる位置の値に基づき、デ
ータベース202にアクセスし、その文書のその位置に
対応する行を、好ましくは個別の検索結果表示ウインド
ウに表示する。検索結果がそのウインドウの1画面に収
まらない場合、スクロール・バーがあらわれ、ユーザー
が、それをクリックすることによって、順次検索結果を
眺めることができるようにする。
【0058】C.索引ファイルの構造及び作成方法 本発明においては、文字集合Cに属する文字の連続(可
変長連鎖)のすべてと、文字集合Cに属さないすべての
連続するN文字(固定長連鎖)とその文書内位置、及び
文書内分割情報を文書と索引づけしたファイルが作成さ
れる(文書連鎖ファイル302、位置情報ファイル30
4)。ここで、「文字集合C」とは、あらかじめ定めら
れた文字の集合であり、好適には英字('A'〜'Z','
a'〜'z')であるが、ドイツ語、フランス語、イタリ
ア語、ロシア語等の他の言語で使用される文字や、半角
であることを条件としたり、全角を含む英数字とした
り、"?"、"!"、"'"等のいくつかの記号文字や特殊記
号等を加えることも考えられる。また、「文書内分割情
報」とは、典型的には、「。」、「、」などの文章の区
切りや、「第1章」、「要約」、ブランク行、ブランク
文字(列)などの、広い意味で文書の区切りである。そし
て、この可変長連鎖に応答して、さらに、すべての可変
長連鎖のすべての連続するN’文字(拡張固定長連鎖)
とその可変長連鎖内位置を可変長連鎖と索引づけしたフ
ァイルが作成される(拡張文字連鎖ファイル306、拡
張位置情報ファイル308)。
【0059】但し、この文書連鎖ファイル302、位置
情報ファイル304、拡張文字連鎖ファイル306、拡
張位置情報ファイル308の4つのファイルは、物理的
に異なるファイルである必要はなく、論理的に、各ファ
イルで管理する内容を夫々処理できるように格納されて
いればよい。
【0060】C1.文字列の正規化 本発明の好適な実施例において、索引ファイルを作成す
るために必要な最初の処理は、文字列の正規化であっ
て、それは次のような処理である。すなわち、検索すべ
き文書が特に日本語テキスト・ファイルである場合、半
角と全角が混在することがあり得る。そこで、例えば、
半角文字を対応する全角文字(またはその逆)小文字を
大文字(またはその逆)に置換する、という処理を行
う。なお、この文字列の正規化は本発明の必須の構成要
素ではない。
【0061】なお、英字以外を半角から全角に正規化す
ることや、非デリミタ言語のみ正規化することや、半角
全角の区別するという検索条件の変更のユーザ指定に伴
って、正規化の内容を変更することも可能である。
【0062】C2.固定長連鎖情報の取り出し 索引ファイルを作成するための次のステップは、正規化
された文字列の、文字集合Cに属さない文字のうち、検
索対象とするすべての文字について、その文字から始ま
る連続するN個の文字(以下,固定長連鎖と呼ぶ)を取
り出して、文書番号、文書内位置番号とともに索引ファ
イルに格納する。ただし、N≧1であって、日本語・中
国語・韓国語の場合、N=2が適当である。文字集合C
に属する文字と隣接する空白文字の連続を検索対象とし
ないことが、索引ファイルのサイズを小さくするために
望ましい。
【0063】C3.可変長連鎖情報の取り出し 索引ファイルを作成するための次のステップは、正規化
された文字列の、文字集合Cに属する文字の連続(可変
長連鎖)を取り出して、文書番号、文書内位置番号とと
もに索引ファイルに格納する。文字集合Cを英字以外と
定義することもでき、かかる場合、文字列が連続した複
数の可変長連鎖を含むこともあるが、ブランク、改
行、", "、". "、"! "、"? "等を区切りとして、可変長
連鎖の取り出しを行うことができる。例えば、"Boys be
ambitious."や"Boys(改行)be ambitious."の場合、"Bo
ys"、"be"、"ambitious"の3つの可変長連鎖が取り出さ
れる。本願の好適な実施例においては、"-"に連続する"
改行"であって、前後にブランクを含まない場合は、そ
の前後の文字の連続は単一の可変長連鎖と判断すること
もできる。従って、"Boys be ambi-(改行)tious."のよ
うな場合も、"Boys"、"be"、"ambitious"の3つの可変
長連鎖が取り出される。なお、所望により、大文字と小
文字の変換、複数形と単数形の変換、過去形・過去分詞
から現在形へのテンスの変換等の正規化を行うことも可
能である。
【0064】C4.位置情報 本発明の好適な実施例では、個々の単独の文書を、検索
時に意味を持つような分け方でブロックに分割し、分割
情報を索引ファイルに格納する。文書は、改行、ピリオ
ド、句読点、「第何章」や「第何節」等の検出、ブラン
ク行の検出、特許明細書中の段落番号の検出等によって
ブロック化することや一定文字数を1つのブロックにす
ることが可能であり、そのブロックに一連の番号、すな
わちブロック番号が割りふられる。本発明の好適な実施
例においては、特別に定めた区切りパターンを、文書の
文書番号とブロックの境界の文字の文書内位置情報とと
もに格納する。
【0065】区切りパターンを数種類定めることによ
り、数種類の異なる分割方法を持つことができるように
なる。ただし、区切りパターンは、正規化された文字列
から取り出される文字連鎖と重複しないように定めなく
てはならない。この実施例では、正規化処理によって、
1バイトのコードも、2バイト・コードに変換されるの
で、2バイトを1ワードと見たときに、その1ワードの
値が255以下である場合は、通常の文字コードには該
当しない。そこで、0〜255の任意のワード値を、複
数種類の区切りパターンに個別に割り当てることができ
る。
【0066】分割情報を文字連鎖と同様なこのような形
式で格納することの利点は、以下のとおりである。 - 索引の作成・更新が簡単。分割情報のために特別な処
理をする必要がない。 - 索引の容量をいちじるしく増加させることがない。 例えば、文書内位置番号ごとにそれが属するブロック番
号を付加するような形式に比べて容量の増加ははるかに
小さい。
【0067】文書内位置番号は、文書内の検索対象とな
るすべての文字に文書ブロック内で一意的な番号を順に
つけたものである。そして、文字連鎖の最初の文字の文
書内位置番号を、その文字連鎖の文書内位置番号とす
る。文字集合Cに属さない文字の連続の終わりで固定長
連鎖が後続の文字とあわせてN個に満たない場合には、
X'00'など定められた詰め文字を詰めてあわせてN個
になるようにする。
【0068】C5.拡張固定長連鎖情報の取り出し 索引ファイルを作成するための次のステップは、すべて
の可変長連鎖のすべての文字について、その文字から始
まる連続するN'個の文字(以下、拡張固定長連鎖と呼
ぶ)を取り出して、拡張文字連鎖番号、拡張文字連鎖内
位置番号とともに索引ファイル内に格納する。ただし、
N'≧1であって、文字集合Cを英字とする場合、N'=
3が適当である。可変長連鎖の前後に開始マークと終了
マークをつけてから拡張固定長連鎖を抜き出すと検索速
度を向上させることができる。例えば、開始マークとし
て「$」、終了マーク「¥」として使用すると、可変長
連鎖「cat」からは、拡張固定連鎖「$ca」、「c
at」、「at¥」、「t¥」が取り出される。そし
て、「$ca」等の一致を判断するため、「commu
nication」等のノイズの混入を排除できる。
【0069】C6.文書内位置番号の具体例 例えば、「data base systemの、研
究。」という文章を先頭に含む文書がデータベース20
2(図2)に含まれていたとする。上記文字集合Cを英
字であるとし、文字集合Cに属する文字に隣接する空白
文字を検索対象としないことにすると、この文章の各文
字に文書内位置番号を付与すると、次のとおりである。
【表1】 文字の文書内位置番号 1 2 3 4 5 6 7 8 9 10111213141516171819 正規化された文字列 data base systemの、研究。 区切り方その1 | | 区切り方その2 |
【0070】そして、その文書の文書番号が1番である
とし、上記固定長連鎖の文字数Nを2であるとする。す
ると、個々の固定長連鎖(長さ2)・区切りパターンと
それに関連付けられる文書番号、及び文書内位置番号
は、次のとおりである。
【表2】 固定長連鎖 文書番号 文書内位置番号 ------------------------------------------ の、 1 15 、研 1 16 区切りパターン1 1 16 研究 1 17 究。 1 18 。 1 19 区切りパターン1 1 19 区切りパターン2 1 19
【0071】個々の可変長連鎖とそれに関連付けられる
文書番号、及び文書内位置番号は、次のとおりである。
【表3】 可変長連鎖 文書番号 文書内位置番号 ------------------------------------------ data 1 1 base 1 5 system 1 9
【0072】そして、その可変長連鎖に付与した番号を
順に1番、2番、3番であるとし、上記拡張固定長連鎖
の文字数N'を3であるとする。すると個々の拡張固定
長連鎖(長さ3)とそれに関連付けられる可変長連鎖番
号、及び可変長連鎖内位置番号は、次のとおりである。 拡張固定長連鎖 可変長連鎖番号 可変長連鎖内位置番号 ------------------------------------------ dat 1 1 ata 1 2 ta 1 3 a 1 4 bas 2 1 ase 2 2 se 2 3 e 2 4 sys 3 1 yst 3 2 ste 3 3 tem 3 4 em 3 5 m 3 6
【0073】この拡張固定長連鎖に対して複数の可変長
連鎖番号、可変長連鎖内位置番号を付与することを許容
することにより、全体の容量を圧縮することができ、特
に重複した単語の多い文書においては高い効果を得るこ
とができる。また、このように重複した文字列をまとめ
ることにより、重複した検索をしなくても済むため、高
速な検索を行うことができる。
【0074】C7.文書内分割情報の役割 次に、検索における、文書内の分割情報(区切り)の利
用価値について説明する。 ・特定ブロックだけを対象にした検索 例えば、文書がタイトル・ 要約・本文という構成にな
っている場合に、タイトルだけ、要約だけなど特定部分
だけを対象にして検索することは 一般的な要望である
といえる。タイトルの終わり、要約の終わりについて、
区切りパターンとその位置情報を格納することにより、
そのような検索が実現できる。
【0075】・複数の文字列どうしの関連が強い文書の
検索 複数の文字列どうしの文脈中での関連の強さを意識した
検索をすることは一般的な要望であるといえる。たとえ
ば、文字列どうしが単に同一文書内にあるだけよりは、
同一段落中にあったほうが関係が強い可能性が高く、同
一文中にあればさらに関係が強いことが予測される。段
落や文の終わりについて、区切りパターンとその位置情
報を格納しておくことにより、複数の文字列どうしが同
一ブロック内にある文書を検索することが可能になり、
関係の強さを意識した検索ができるようになる。
【0076】C8.索引ファイルの構造 文字連鎖・区切りパターンとその文書番号・文書内位置
番号は、検索時に効率よくとりだせる形で格納する必要
がある。そのために、この実施例では、図3,4に示す
ように、索引ファイルを文字連鎖ファイル302(主に
固定長連鎖・可変長連鎖・区切りパターンを格納するフ
ァイル)、位置情報ファイル304(主に文書番号・文
書内位置番号を格納するファイル)、拡張文字連鎖ファ
イル306(主に拡張固定長連鎖を格納するファイ
ル)、拡張位置情報ファイル308(主に可変長連鎖番
号・可変長連鎖内位置番号を格納するファイル)の4つ
のファイルで構成する。文字連鎖ファイル302には、
固定長連鎖・可変長連鎖・区切りパターンとそれに対応
する文書番号312・文書内位置番号314が位置情報
ファイル304のどこに位置するかの情報を格納する。
位置情報ファイル304には、文書番号312・文書内
位置番号314を格納する。拡張文字連鎖ファイル30
6には、拡張固定長連鎖とそれに対応する可変長連鎖番
号316・可変長連鎖内位置番号318が拡張位置情報
ファイル308のどこに位置するかの情報を格納する。
拡張位置情報ファイル308には、可変長連鎖番号31
6・可変長連鎖内位置番号318を格納する。
【0077】本実施例においては、デリミタ言語、非デ
リミタ言語の双方が混在した文書を例に説明を行うが、
デリミタ言語単独文書、非デリミタ言語単独文書に応用
できることは、当業者に容易に理解できる事項であろ
う。なお、一般に非デリミタ言語単独の場合は、可変長
連鎖を考慮する必要が無いため、拡張文字連鎖ファイル
306と拡張位置情報ファイル308は必要とならない
(ただし、特許公報の要約のキーワードを抽出した文書
のように非デリミタ言語においても可変長連鎖となる可
能性がある)。
【0078】図3において、文字連鎖ファイル302の
エントリは、データベース202の全ての文書における
上記固定長連鎖と上記可変長連鎖と上記区切りパターン
である。文字連鎖ファイル302のエントリは、好適に
は、2分探索を可能ならしめるように、正規化された文
字連鎖のコード値で昇順にソートされている。「区切り
パターン1」、「区切りパターン2」、「の研」、「研
究」などが、文字連鎖ファイル302の個別のエントリ
である。尚、例えば、「区切りパターン1」
は、「,」、「、」または「。」などの文・句の区切り
を包括的に示すものであって、特殊な2バイト値が割り
当てられる。
【0079】図3の位置情報ファイル304は、文字連
鎖ファイル302の個々のエントリに対応する少なくと
も1つの文書番号312及び、その個々の文書番号毎に
関連付けられた少なくとも1つの文書内位置番号314
を格納している。
【0080】文字連鎖ファイル302のエントリと、位
置情報ファイル304のエントリとを対応付けるため
に、図示しないが、文字連鎖ファイル302の個々のエ
ントリは、対応する位置情報ファイル304のエントリ
の、位置情報ファイル304の先頭からのオフセット、
及び、対応する位置情報ファイル304のエントリのサ
イズの情報をもつ。すなわち、図3で例えば、文字連鎖
ファイル302は、「区切りパターン1」に関連してそ
こに格納されているオフセットの情報から、位置情報フ
ァイル304を先頭からシークし、サイズの情報に指定
されたバイト数だけシークした位置から読取り、これに
よって、「区切りパターン1」に関連して、文書番号1
における16,19・・・という文書内位置番号値と、
文書番号2に関連する文書内位置番号値、・・・(もし
あるなら)文書番号nに関連する文書内位置番号値を一
括して読み取ることが可能となる。また、固定長連鎖、
可変長連鎖及び区切りパターンの格納されている範囲を
示す情報を格納することにより、文字連鎖ファイル30
2に格納されている情報が、固定長連鎖、可変長連鎖ま
たは区切りパターンのいずれに属する情報かを判断する
ことができる。
【0081】一般に、文書番号iに関連する文書内位置
番号値は、例えば、(文書番号i:4バイト)(文書内
位置番号の数k:4バイト)(1番目の文書内位置番
号:4バイト)・・・(k番目の文書内位置番号:4バ
イト)のような形式で格納されている。この例では、文
書内位置番号を格納するフィールドとして、文書の絶対
位置を格納するために4バイトをとるようにしている
が、実際上、1つ前の文書内位置番号からのオフセット
を格納するようにして、これを1〜3バイトに節約する
ようにした方がよい。また、符号化等による圧縮を行
い、ファイル容量を小さくすることが望ましい。文書番
号及び文書内位置番号の数を格納するフィールドについ
ても同様である。
【0082】図3,4において、拡張文字連鎖ファイル
306のエントリは、文字連鎖ファイル302の全ての
可変長連鎖における上記拡張固定長連鎖である。拡張文
字連鎖ファイル306のエントリは、好適には、2分探
索を可能ならしめるように、正規化された文字連鎖のコ
ード値で昇順にソートされている。「dat」、「at
a」などが、拡張文字連鎖ファイル306の個別のエン
トリである。
【0083】図4の拡張位置情報ファイル308は、拡
張文字連鎖ファイル306の個々のエントリに対応する
少なくとも1つの可変長連鎖番号及び、その個々の可変
長連鎖番号毎に関連付けられた少なくとも1つの可変長
連鎖内位置番号を格納している。
【0084】C9.索引ファイルの作成処理 次に、図5を参照して、索引ファイルの作成処理につい
て説明する。この処理は、最初のデータベース202の
構築時または、データベース202に文書を追加あるい
はデータベース202から文書を削除したときに、図2
の索引作成・更新モジュール206によって行われる処
理である。
【0085】図5で、先ずステップ402では、メモリ
領域を確保する処理が行われる。これは、例えば、オペ
レーティング・システムの機能を呼び出すことによっ
て、RAM104上で、所定のサイズの作業領域を獲得
する処理である。
【0086】ステップ404では、データベース202
から1つの文書が、好適には上記ステップ402で獲得
されたメモリ領域に読み込まれる。
【0087】ステップ406では、ステップ404で読
み込まれた文書につき、前述の正規化処理が行われる。
【0088】ステップ408では、正規化された文書を
走査することによって、固定長連鎖・可変長連鎖・区切
りパターンが作成され、固定長連鎖・可変長連鎖・区切
りパターンと、当該文書の文書番号と、固定長連鎖・可
変長連鎖・区切りパターンの文書内位置番号が、上記ス
テップ402で獲得されたメモリ領域に格納される。
【0089】ステップ408の処理において、固定長連
鎖、可変長連鎖、区切りパターン、文書番号及び文書内
位置番号をステップ402で予め獲得されたメモリ領域
に格納していくにつれて、その獲得されたメモリ領域の
空き領域が不足してくることがあり得る。そこで、ステ
ップ410では、獲得されたメモリ領域が満杯かどうか
を調べる処理が行われ、もしそうなら、ステップ412
で、メモリ領域に格納されている固定長連鎖・可変長連
鎖・区切りパターンと、文書の文書番号と、固定長連鎖
・可変長連鎖・区切りパターンの文書内位置情報とが、
例えば、固定長連鎖・可変長連鎖・区切りパターンの文
字コード値・文書番号・文書内位置番号に基づきソート
されて、中間ファイルとしてディスク108(図1)に
書き出され、これによって、中間ファイルに書き出され
たデータが格納されていたメモリ領域は、以下の処理で
使用可能に開放される。そして、この後処理は、ステッ
プ414に進む。
【0090】ステップ410で、メモリ領域にまだ余裕
があると判断されたなら、処理は直ちにステップ414
に進む。
【0091】ステップ414では、ステップ404でま
だ読み込んでいない文書がデータベース202に残って
いるかどうかが判断される。もしそうなら、処理は、ス
テップ404に戻る。
【0092】ステップ414で、データベース202の
全ての文書の読み込み処理が完了したと判断されると、
ステップ402で獲得されたメモリ領域に書き出されな
いで残っている固定長連鎖・可変長連鎖・区切りパター
ンと、文書の文書番号と、固定長連鎖・可変長連鎖・区
切りパターンの文書内位置番号とが、やはり固定長連鎖
・可変長連鎖・区切りパターンの文字コード値・文書番
号・文書内位置番号に基づきソートされて、中間ファイ
ルとしてディスク108(図1)に書き出される。
【0093】ステップ412とステップ416での中間
ファイルの書き出しによって、ディスク108には、複
数の中間ファイルが存在し、また、その各々の中間ファ
イルは予めソートされているので、ステップ418で
は、周知のマージ・ソートの技法で、それらの複数の中
間ファイルから、図3に示す文字連鎖ファイル302
と、位置情報ファイル304とを作成しディスク108
に格納する処理が行われる。尚、もとの複数の中間ファ
イルには、文字連鎖は重複して何度もあらわれ得るの
で、ここでは、重複する同一の文字連鎖のエントリを1
つにまとめて、それに関連する文書番号及び文書内位置
番号を関連付ける処理が行われる。その後、中間ファイ
ルは最早不要なので削除される。
【0094】ステップ420では、文字連鎖ファイル3
02から1つの可変長連鎖が、好適には上記ステップ4
02で獲得されたメモリ領域に読み込まれる。本発明の
好適な実施例においては、文字連鎖ファイル302にお
ける可変長連鎖の記憶位置は、文字連鎖ファイル302
作成時に、文字連鎖ファイル302に格納されているた
め、文字連鎖ファイル302における可変長連鎖先頭位
置に即座にアクセスすることができる。
【0095】ステップ422では、可変長連鎖を走査す
ることによって、拡張固定長連鎖が作成され、拡張固定
長連鎖と、当該可変長連鎖の可変長連鎖番号と、拡張固
定長連鎖の可変長連鎖内位置番号が、上記ステップ40
2で獲得されたメモリ領域に格納される。
【0096】ステップ422の処理において、拡張固定
長連鎖、可変長連鎖番号及び可変長連鎖内位置番号をス
テップ402で予め獲得されたメモリ領域に格納してい
くにつれて、その獲得されたメモリ領域の空き領域が不
足してくることがあり得る。そこで、ステップ424で
は、獲得されたメモリ領域が満杯かどうかを調べる処理
が行われ、もしそうなら、ステップ426で、メモリ領
域に格納されている拡張固定長連鎖と、可変長連鎖番号
と、可変長連鎖内位置情報とが、例えば、拡張固定長連
鎖の文字コード値・可変長連鎖番号・可変長連鎖内位置
番号に基づきソートされて、中間ファイルとしてディス
ク108(図1)に書き出され、これによって、中間フ
ァイルに書き出されたデータが格納されていたメモリ領
域は、以下の処理で使用可能に開放される。そして、こ
の後処理は、ステップ428に進む。
【0097】ステップ424で、メモリ領域にまだ余裕
があると判断されたなら、処理は直ちにステップ428
に進む。
【0098】ステップ428では、ステップ420でま
だ読み込んでいない可変長連鎖が文字連鎖ファイル30
2に残っているかどうかが判断される。もしそうなら、
処理は、ステップ421に戻る。
【0099】ステップ428で、文字連鎖ファイル30
2の全ての可変長連鎖の読み込み処理が完了したと判断
されると、ステップ402で獲得されたメモリ領域に書
き出されないで残っている拡張固定長連鎖と、可変長連
鎖番号と、可変長連鎖内位置番号とが、やはり拡張固定
長連鎖の文字コード値・可変長連鎖番号・可変長連鎖内
位置番号に基づきソートされて、中間ファイルとしてデ
ィスク108(図1)に書き出される。
【0100】ステップ426とステップ430での中間
ファイルの書き出しによって、ディスク108には、複
数の中間ファイルが存在し、また、その各々の中間ファ
イルは予めソートされているので、ステップ432で
は、周知のマージ・ソートの技法で、それらの複数の中
間ファイルから、図7に示す拡張文字連鎖ファイル30
6と、位置情報ファイル308とを作成しディスク10
8に格納する処理が行われる。尚、もとの複数の中間フ
ァイルには、文字連鎖は重複して何度もあらわれ得るの
で、ここでは、重複する同一の文字連鎖のエントリを1
つにまとめて、それに関連する可変長連鎖番号及び可変
長連鎖内位置番号を関連付ける処理が行われる。その
後、中間ファイルは最早不要なので削除される。
【0101】D.索引ファイルを使用した検索処理 次に、上述のようにして作成された索引ファイルを使用
して、文字列検索を行う処理の例について、図7のフロ
ーチャートを参照して説明する。ステップ502では、
先ず、例えば、入力ボックスをもつダイアログ・ボック
スを表示し、ユーザーに、その入力ボックスに検索文字
列を入力するようにプロンプトする処理が行われる。
【0102】ユーザーが入力ボックスに検索文字列を入
力し、OKボタンをクリックすると、必要に応じて検索
文字列の正規化処理が行われた後で、ステップ504
で、その検索文字列から索引ファイルを作ったときと同
じ規則に基づいてN文字の固定長連鎖と可変長連鎖を作
成する。
【0103】ステップ506で、固定長連鎖を文字連鎖
ファイルから検索する。
【0104】ステップ508で、固定長連鎖が見つから
なかったと判断されると、好適には、検索文字列が見つ
からなかったことを示すメッセージ・ボックスがステッ
プ526で表示され、処理は終了する。
【0105】ステップ508で、固定長連鎖が見つかっ
たと判断されると、位置情報ファイルからは、1つ以上
の文書番号とその文書番号における少なくとも1つの文
書内位置番号が返されるので、この情報は、ステップ5
10で後の処理のため主記憶またはディスク上の所定の
バッファ領域に一旦格納される。
【0106】ステップ512では、検索文字列から作成
したすべての固定長連鎖を検索してしまったかどうかが
判断され、もしそうなら、処理はステップ514に進
む。もしそうでないなら、ステップ506に戻り、次の
固定長連鎖で以って上記文字連鎖ファイルを使用した検
索処理が行われる。
【0107】ステップ514で、可変長連鎖を拡張文字
連鎖ファイル・拡張位置情報ファイルから検索する。こ
のとき、前後に過剰な文字がある可変長連鎖を除外する
と、「cat」→「communication」のよ
うなノイズを避けることができる。具体的には、一致文
字列の前に3文字または、後ろに4文字以上文字が存在
する場合は、除外する場合や、一致文字列の前又は後ろ
に存在する1文字に対して、ペナルティとして類似度か
ら所定の数値を減じるまたは所定の数値(1未満の正
数)を乗じることも可能である。
【0108】ステップ516で、可変長連鎖が見つから
なかったと判断されると、好適には、検索文字列が見つ
からなかったことを示すメッセージ・ボックスがステッ
プ526で表示され、処理は終了する。本発明の好適な
実施例においては、メッセージは図1のディスプレイ装
置110に表示されるが、メッセージをネットワーク経
由で他の場所に送信することも可能である。
【0109】ステップ516で、可変長連鎖が見つかっ
たと判断されると、拡張位置情報ファイル308から
は、1つ以上の可変長連鎖番号316が返されるので、
この情報を元に、ステップ518で後の処理のため位置
情報ファイル304から1つ以上の文書番号312と、
その文書番号における少なくとも1つの文書内位置番号
314が返されて、主記憶またはディスク上の所定のバ
ッファ領域に一旦格納される。
【0110】ステップ520では、検索文字列から作成
したすべての可変長連鎖を検索してしまったかどうかが
判断され、もしそうなら、処理はステップ522に進
む。もしそうでないなら、ステップ514に戻り、次の
可変長連鎖で以って上記拡張文字連鎖ファイル・上記拡
張位置情報ファイルを使用した検索処理が行われる。
【0111】ステップ522で、ステップ510でバッ
ファに格納した固定長連鎖の位置情報と、ステップ51
8でバッファに格納した可変長連鎖の位置情報を調べて
検索文字列と一致する文字列を含む文書番号と位置番号
をバッファ領域に一旦格納する。検索文字列が見つかっ
たと判断されたら、ステップ528では、その文書番号
と文書内位置番号から、データベース202の文書のコ
ンテンツがアクセスされ、文書検索文字列が存在する文
書の該当行が、好適には個別のウインドウ内に表示され
る。
【0112】ステップ524で、検索文字列が見つから
なかったと判断されると、好適には、検索文字列が見つ
からなかったことを示すメッセージ・ボックスがステッ
プ526で表示され、処理は終了する。
【0113】尚、検索文字列が文書内の特定ブロック
(例:3番目のブロック)にあらわれることを調べるた
めには、上記検索文字列が文書中にあらわれる位置まで
にあらわれる上記文書内の区切り位置を数えて、上記検
索文字列が上記文書内でどのブロック(何番目のブロッ
ク)に位置するかを調べて、指定のブロック番号と比較
すればよい。
【0114】E.曖昧検索処理 図7で示す処理は、索引ファイルを使用して、いわば厳
密検索を行う処理であったが、本発明に従えば、索引フ
ァイルを使用して、指定された文字列と文字の並びが似
ている文字列を含む、いわゆる曖昧検索処理をも、デー
タベースの個々の文書に関して高速に実行することが可
能である。特に、この方式では、検索したい文字列と、
検索精度(0より大きく1以下)とを指定し、検索した
い文字列との"似ている度合"が指定の検索精度以上であ
る"似ている文字列"を含む文書および"似ている文字列"
の文書内位置を特定するものである。
【0115】E1.文字列を似ていると感じる人間の感
覚 日本語のわかる人間が見て、文字の並びが似ていてしか
も意味が近いと感じる日本語の文字列には,次のような
ものがある。
【表4】 (1)カタカナ語の異表記 小さい字と大きい字 「ソフトウェア」「ソフトウエア」 長音「ー」の有無 「コンパイラー」「コンパイラ」 中黒「・」の有無 「アイビーエム」「アイ・ビー・エム」 その他 「ビルディング」「ビルヂング」 (2)漢字熟語と漢字熟語の間に助詞等が入ったもの 「在宅起訴」「在宅のまま起訴」 「政界再編」「政界の再編」 (3)漢字熟語の複合語と一部が欠けた組み合わせの複
合語 「国立民族博物館」「国立博物館」「民族博物館」 (4)省略語などにより一部がかけたもの 「ソフトウェア開発」「ソフト開発」 (5)入力まちがい 「カリフォルニア」「カリフォリニア」
【0116】これらに共通しているのは、ほとんどの文
字は連続して一致しているが不足文字や余分な文字があ
る、ということである。
【0117】次に、どちらが似ているかという観点から
いくつかの言葉を考えてみると、「ソフトメーカー」に
似ているのは、「ソフトのメーカー」、「ソフト開発メ
ーカー」、「ソフトの開発メーカー」の順であるし、
「政治資金規正法案」と比べるならば、「政治資金規正
法」、「政治資金規正」、「政治資金」の順に似ている
と感じる。
【0118】また、文字が一致するとはいっても、「ソ
フトクリーム製造機械の製造を主業務とする機械メーカ
ー」を「ソフトメーカー」を似ている文字列と言うには
無理があると感じられる。
【0119】これらのことから、文字列を似ていると感
じるかどうかの人間の感覚をまとめると、
【0120】(A) 連続して一致する文字が多いほど似て
いると感じ、(B) 途中にはさまる不一致文字が多いほど
似ていないと感じ、(C) 途中にはさまる不一致文字が多
すぎると一つの文字列とは感じられないということがい
える。
【0121】このとき、入力文字列のある部分が文書中
の近い位置で重複して出現する特殊な場合を考慮しなく
てはならない。例をあげると、入力文字列が「理学部長
に就任」、文書中に「理学部部長に就任」とあった場合
である。重複して出現している「部」という文字の一方
は余分な文字であるが、「理学部の長に就任」の「の」
のようにまったく無関係な文字よりは、一致文字に近い
文字と考えるのが妥当である。
【0122】デリミタ言語である英語を例に考えると、
文字の並びが似ていてしかも意味が近いと感じる英語の
文字列には,次のようなものがある。 (1)異表記 「database」「data base」「dat
a−base」 (2)語尾変化 「communicate」「communicati
on」 (3)タイプミス 「communication」の場合、 「comunication」 : 文字の不足 「commnuication」 : 文字の逆転 「commuanication」: 文字の過剰等が
ある。 (4)ハイフネーション 「communication」「communi−c
ation」 (5)フレーズのバリエーション 「new technology」「new CMOS
technology」
【0123】これらに共通しているのは、日本語と同様
にほとんどの文字は連続して一致しているが不足文字や
余分な文字がある、ということである。韓国語、中国語
についても同様の例を挙げることができる。
【0124】E2.似ている文字列と似ている度合いの
決定ルール まず、固定長連鎖だけからなる検索文字列の場合に似て
いる文字列と似ている度合いを決定するルールを説明す
る。入力文字列とM文字以上連続で一致する文字列の中
から、互いに入力文字列中と同じ順序関係である程度近
くにあるものを集めて似ている文字列とし、一致する文
字数、一致しない文字数から、似ている度合いを決める
のがルールの概要である。
【0125】まず、説明で使う言葉を定義する。
【0126】一致文字列:検索したい文字列と文書テキ
ストとがM文字以上連続して一致する部分。同じ文字か
ら始めた中では長さが最大になるものを選ぶ。
【0127】 (例)検索したい文字列 : 政治資金規正法案 文書テキスト : ...資金規正のために法の力で...
【0128】M=2とする。すると、「資金規正」 が
一致文字列。このとき、最長選択のため「資金」や「資
金規」は一致文字列とは呼ばない。また、「法」は2文
字未満なので一致文字列にはならない。
【0129】有効一致文字列:似ている文字列を構成す
るM文字の一致文字列をいい、検索文字列中の有効一致
文字列を有効一致検索文字列といい、文書中の有効一致
文字列を有効一致文書文字列という。有効一致検索文字
列と有効一致文書文字列は、その内容が一致しているた
め、特に区別の必要でない場合は、単に有効一致文字列
とする。
【0130】最大不一致文字列長L:似ている文字列中
に含める不一致文字は連続L文字までとする。Lは1以
上の定数とする。
【0131】"似ている文字列"の選びだし方と、"似て
いる度合い"の数値化の方法について説明する。
【0132】(1) 1番目の有効一致文字列の決定 文書中での順序で、1番目の一致文字列を、1番目の有
効一致文字列とする。ここで、
【0133】 i番目の有効一致文書文字列の開始位置を s(D, i) i番目の有効一致文書文字列の終了位置を e(D, i) i番目の有効一致検索文字列の開始位置を s(C, i) i番目の有効一致検索文字列の終了位置を e(C, i) と表記することにする。
【0134】(2) 次の有効一致文字列の決定 i番目の有効一致文書文字列が決定しているとき、i+
1番目の有効一致文書文字列を次のようにして決定す
る。
【0135】次の2つの条件a),b)を満たす最初の一致
文字列を、i+1番目の有効一致文書文字列とする。
【0136】
【数1】 a) e(D, i) + 1 ≦ s(D, i+1) ≦ e(D, i) + L + 1
【0137】これはi番目の有効一致文書文字列とi+
1番目の有効一致文書文字列の間に入る余分な文字はL
文字まで許すことを意味する。(後述する例3参照)
【数2】b) s(C, i+1) > e(C, i) - (M-1)
【0138】そのような有効一致文書文字列が選べなく
なるまで繰り返す。
【0139】(3) "似ている文字列"とその"似ている度
合い"(類似度)の決定 それ以上有効一致文書文字列が選べなくなったら1番目
の有効一致文字列の最初の文字から最後の有効一致文字
列の最後の文字までを"似ている文字列"とし、次の式
で"似ている度合い"を計算する。
【数3】 類似度 = minimum ( 検索したい文字列中で有効一致検索文字列に属している文字数 / 検索したい文字列の文字数, "似ている文字列"中で有効一致文書文字列に属している文字数 / "似ている文字列"の文字数)
【0140】なお、類似度の計算においては、有効一致
文書文字列に属していない文字数からも計算することが
できる。
【数4】 類似度 = 1 - maxmum ( 検索したい文字列中で有効一致検索文字列に属していない文字数 / 検索したい文字列の文字数, "似ている文字列"中で有効一致文書文字列に属していない文字数 / "似ている文字列"の文字数)
【0141】E3."似ている文字列"中で有効一致文字
列に属している文字数の数え方 2つの文字が、検索したい文字列の同一文字と対応して
いる場合には1つ目は1と数え、2つ目は0.5と数え
る。その他の場合には1文字を1と数える。(後述する
例4を参照)
【0142】E4."似ている文字列"の決定順序 1番目の"似ている文字列"は文書の先頭から比較を始め
て決定する。i番目の"似ている文字列"が決定している
時、i+1番目の"似ている文字列"は、i番目の"似て
いる文字列"の先頭の文字より後ろで、i番目の"似てい
る文字列"を構成する有効一致文字列に属さない最初の
文字から比較を始めて決定する。
【0143】定数L,Mを適当な値に設定することによ
り、文字の並びが似ているかどうかについて、人間の一
般的な判断とかなり一致した"似ている度合い"を算出す
ることができる。
【0144】なお、"似ている度合い"が最高値1になる
とき、文字列は完全に一致しており、また、文字列が完
全に一致していれば必ず"似ている度合い"は1になる。
【0145】E5.曖昧検索の処理フローチャート 以上の処理をフローチャートであらわすと、図8のよう
になる。図8では先ず、ステップ602で、検索文字列
の入力がプロンプトされる。また、ステップ604で
は、0〜1の類似度の入力がプロンプトされる。通常、
ステップ602とステップ604における文字列及び値
の入力は、単一のダイアログ・ボックスで、入力ボック
スとスクロール・バーを使用して行われる。
【0146】ステップ606では、有効一致文字列の番
号iが1にセットされ、ステップ608では、有効一致
文字列の検索が行われる。今、有効一致文字列の長さが
M以上であるという条件があったとすると、図7の処理
で、M文字連鎖の索引ファイルを作成しておけば有利で
ある。というのは、そのような索引ファイルが予め存在
すると、任意のM文字連鎖の検索が、索引ファイルの2
分探索によって高速に実行されるからである。続いて、
検索文字列での、M文字連鎖をとる開始位置を1つずら
しM文字連鎖の検索を索引ファイルで行い、その結果得
られた文書番号が一回前のM文字連鎖の検索と同一であ
り、且つ、文書内位置番号が順次的であれば、M+1の
長さの有効一致文字列が得られたことになる。そのよう
にして、文書番号が一回前のM文字連鎖の検索と同一で
あり、且つ、文書内位置番号が順次的である、という条
件が満たされる毎に、有効一致文字列の長さも1つ増分
される。しかし、索引ファイルを使用したM文字連鎖の
探索で何も見つからないか、返される文書番号が不一致
か、文書内位置番号が順次的でなくなれば、有効一致文
字列の終了位置が見出されたことになる。
【0147】場合によっては、全く有効一致文字列が見
出されないこともあり、そのような場合、ステップ61
0での判断で、ステップ626に進み、そこで、見つか
らなかったことを表示して処理を終了する。
【0148】ステップ610で、有効一致文字列が見つ
かったと判断されると処理は、ステップ612に進み、
文書中ではs(D,i)からe(D,i)、検索文字列中ではs(C,i)
からe(C,i)までが、有効文字列であるとしてマークされ
る。
【0149】ステップ614では、
【数5】 a) e(D, i) + 1 ≦ s(D, i+1) ≦ e(D, i) + L + 1 且つ、 b) s(C, i) > e(C, i) - (M-1)
【0150】という条件をみたす、i+1番目の有効一致
文字列がやはり索引ファイルを使用して検索され、もし
見つかると、ステップ612に戻って、そのi+1番目の
有効一致文字列に関して、文書中ではs(D,i+1)からe(D,
i+1)、検索文字列中ではs(C,i+1)からe(C,i+1)までが、
有効文字列であるとしてマークされる(ステップ618
でのiの増分は、次の有効一致文字列に注目することを
示す)。
【0151】一方、ステップ616で、最早有効一致文
字列が見つからなくなると、ステップ620で、類似度
の計算が行われる。これは、上述のように例えば、
【0152】
【数6】 類似度 = minimum ( 検索したい文字列中で有効一致文字列に属している文字数 / 検索したい文字列の文字数, "似ている文字列"中で有効一致文字列に属している文字数 / "似ている文字列"の文字数)
【0153】で与えられる。このとき、"似ている文字
列"とは、文書中の、最初の有効一致文字列の開始位置
から、最後の有効一致文字列の最後の位置までの間の文
字列である。
【0154】ステップ622では、ステップ620で計
算された類似度と、ステップ604で入力された類似度
とから、結果の選別が行われ、結果がステップ604で
入力された類似度以上であるもののみ、ステップ624
で結果表示を行う。
【0155】ステップ624では、ステップ608、ス
テップ614での索引ファイルの検索の結果返された文
書番号と、文書内位置番号に基づいて、データベースに
格納されている文書コンテンツにアクセスし、該当箇所
を含む行を表示する処理が行われる。
【0156】尚、1つの検索文字列に対する"似ている
文字列"は、複数の文書で同時に見つかることがあり得
るが、単一の文書内でも、複数の箇所で見つかることが
ある。従って、ステップ606〜622は、そのような
複数の"似ている文字列"の個々に対して適用され、ステ
ップ624では、複数の"似ている文字列"のうち、類似
度の条件を満たすもののみが選別して表示される、とい
うことに留意されたい。
【0157】E6."似ている文字列"と類似度の決定例 M = 2, L = 3として例を示す。
【0158】(例1) (*アイビーエムは、IBM社の商標である)
【0159】
【0160】最初に一致する最長文字列は"アイ" だか
【0161】 1番目の有効一致文字列は"アイ" s(C,1) = 1 e(C,1) = 2 s(D,1) = 1 e(D,1) = 2
【0162】e(C,1)-(M-1) = 1 なので、検索したい文
字列の2文字目以降から始まる文字列を、文書の3,
4,5または6文字目から始まる文字列と比較して2番
目の有効一致文字列を探す( e(D,1)+1 = 3, e(D,1)+L+1
= 6 なので )。
【0163】 2番目の有効一致文字列 "ビー" s(C,2) = 3 e(C,2) = 4 s(D,2) = 4 e(D,2) = 5
【0164】e(C,1)-(M-1) = 3 なので、検索したい文
字列の4文字目以降から始まる文字列を文書の5,6,
7または8文字目から始まる文字列と比較して3番目の
有効一致文字列を探す( e(D,2)+1 = 5, e(D,2)+L+1 = 8
なので )。 3番目の有効一致文字列 "エム" s(C,3) = 5 e(C,3) = 6 s(D,3) = 7 e(D,3) = 8
【0165】検索したい文字列の最後に到達したので有
効一致文字列は3番目が最後となる。
【0166】
【表5】
【0167】番号は有効一致文字列の番号。
【0168】したがって"似ている文字列"は s(D, 1)
から e(D, 3) までの"アイ・ビー・エム"。 "類似度" = minimum( 6 / 6 , 6 / 8 ) = 6 / 8 = 0.75
【0169】(例2)
【表6】
【0170】
【表7】
【0171】似ている文字列 = "ソフト開発メーカー" 類似度 = minimum( 7 / 10 , 7 / 9 ) = 0.7
【0172】(例3)
【表8】
【表9】
【0173】最初に一致する最長文字列は"在宅" だか
【数7】 1番目の有効一致文字列は在宅 s(C, 1) = 1 e(C, 1) = 2 s(D, 1) = 1 e(D, 1) = 2
【0174】文書の3,4,5または6文字目から始ま
る文字列と( e(D,1)+1 = 3, e(D,1)+L+1 = 6 なので )
検索したい文字列の2文字目以降から始まる文字列を(
e(C,1)-(M-1) = 1なので )比較して2番目の有効一致文
字列を探す。
【0175】2番目の有効一致文字列は見つからないの
で、検索したい文字列の最後に到達したので有効一致文
字列は1番目のみとなる。
【表10】
【0176】したがって1番目の"似ている文字列"は s
(D, 1) から e(D, 1) までの"在宅"。 "類似度" = minimum( 2 / 4 , 2 / 2 ) = 2 / 4 = 0.5
【0177】"在"より後ろで最初の非有効一致文字は"
の"。"の"から後ろで2番目の"似ている文字列"を探す
と、
【表11】
【0178】但し、文書で、「在 宅」と「起 訴」と
は、4文字離れており、この例では、L=3なので、上
記の「起 訴」は、有効一致文字列とは見なさない。
【0179】(例4)
【表12】
【0180】最初に一致する最長文字列は"銀行" だか
【0181】
【数8】 1番目の有効一致文字列は"銀行" s(C,1) = 1 e(C,1) = 2 s(D,1) = 2 e(D,1) = 3
【0182】検索したい文字列の2文字目以降から始ま
る文字列を( e(C,1)-(M-1)=1なので)文書の4,5,6
または7文字目から始まる文字列と( e(D,1)+1 = 4, e
(D,1)+L+1 = 7 なので )比較して2番目の有効一致文字
列を探す。
【0183】 2番目の有効一致文字列は"行員" s(C,2) = 2 e(C,2) = 3 s(D,2) = 4 e(D,2) = 5
【0184】検索したい文字列の最後に到達したので有
効一致文字列は2つ。
【表13】
【0185】"似ている文字列"は s(D, 1) から e(D,
2) までの"銀行行員"。"類似度" = minimum( 3 / 3 ,
3.5 / 4 ) = 3.5 / 4 = 0.875
【0186】E7.人間の感覚に近い曖昧の例
【表14】 ソフトウェアメーカー ソフトウェアメーカー 0.909 ソフトウェア開発メーカー 0.833 ソフトウェアの開発メーカー 0.769
【0187】この例は、余分な文字が入るにつれて"類
似度"が低下することを示す。
【表15】 ニットウェアメーカー 0.800ソフトメーカー 0.700ソフトウェア 0.600
【0188】この例は、一致する文字が減るにつれて"
類似度"が低下することを示す。
【表16】 理学部長選挙 理学部長選挙 1.000 理学部部長選挙 0.929 理学部長選挙 0.857
【0189】E8.可変長連鎖の検索 以上、固定長連鎖だけからなる検索文字列の場合につい
て似ている文字列を検索する方法を説明した。これを可
変長連鎖を含む検索文字列について拡張すると次のよう
になる。なお、検索文字列から取り出した可変長連鎖を
拡張検索文字列と呼ぶことにする。
【0190】まず、拡張文字連鎖ファイル・拡張位置情
報ファイルを検索して、次のような拡張文字連鎖を得
る。その検索方法は、固定長連鎖だけからなる検索文字
列を文字連鎖ファイル・位置情報ファイルから検索する
方法と同様である。定数MにあたるものとしてM'を用
いる。
【0191】(1)拡張検索文字列と指定の検索一致度
以上で一致する可変長連鎖を探す。このとき、拡張検索
文字列の最初の文字と一致しない可変長連鎖を除外する
とノイズを減らすのに有効である。この場合、拡張固定
連鎖作成時に、スタートを示す「$」を使用し、「$co」なる
拡張固定連鎖を作成し、これに一致しない可変長連鎖を
除外することにより高速に処理することが可能である。
ただし、スタートを示す「$」を使用しない場合であって
も、拡張位置情報ファイルにおける可変長連鎖内位置番
号やデリミタの情報から可変長連鎖のスタート位置を特
定することは可能である。
【0192】(例) 拡張検索文字列 : "communication" 見つかった可変長連鎖 : "commuication"
【0193】(2)拡張検索文字列どうしを接合して新
たに作成した拡張検索文字列と指定の検索一致度以上で
一致する可変長連鎖を探す。
【0194】(例) 検索文字列 : "data-base" 拡張検索文字列 : "data", "base" 接合で作った拡張検索文字列 : "database" 接合の数は2つまで、または3つまでという設定をする
ことも可能である。この処理によって、"data base"の
ような分割された検索文字列の場合でも、文書中の文字
列から接合された"database"を捜し出す事が可能とな
る。
【0195】(3)拡張検索文字列と0より大きい一致
度で一致する可変長連鎖の中から次の条件をすべて満た
す可変長連鎖を残す。
【0196】・可変長連鎖の最初の文字が一致部分に含
まれる。
【表17】
【0197】・拡張検索文字列の最初の文字または最後
の文字が一致部分に含まれる。この場合、拡張固定連鎖
作成時に、スタートを示す「$」とエンドを示す「\」を使用
し、「$co」および「se\」なる拡張固定連鎖を作成し、この
いずれかに一致しない可変長連鎖を除外することにより
高速に処理することができる。
【表18】
【0198】この処理によって、"database"のような接
合された検索文字列の場合でも、文書中の文字列から分
割された"data"及び"base"を捜し出す事が可能となる。
なお、拡張検索文字列の最初の文字が一致部分に含まれ
る場合(拡張検索文字列"database"に対する可変長連鎖"
data"がこれに該当する)、や拡張検索文字列の最後の文
字が一致部分に含まれる場合(拡張検索文字列"databas
e"に対する可変長連鎖"base"がこれに該当する)、可変
長連鎖に一定文字以上の不一致文字を含む場合検索の対
象から除外することもでき、これにより、検索対象の絞
り込みによる検索速度の高速化を図ることができる。
【0199】本発明の好適な実施例においては、以上説
明した(1),(2),(3)の処理で対象となった可
変長連鎖(すなわち、(1)+(2)+(3))がステ
ップ708の「条件を満たす可変長連鎖」となる。但
し、(1)+(2)+(3)ではなく、(1)のみ、
(3)のみ、(1)+(2)等設定によって色々変える
事ができる。
【0200】(1),(2),(3)の可変長連鎖を探
して拡張索引を検索するときの一致度の決定において、
文字の逆転に対して通常の一致より低く,通常の不一致
より高い評価を与えると、英語のタイプミスにありがち
な、文字の逆転した単語を探すのによい効果がある。
【0201】
【表19】
【0202】この例では、検索文字列中の不一致文字列
は「un」であり、文書文字列中の不一致文字列は「nu」
である。このような場合、例えば、検索文字列中の不一
致文字列の「u」および「n」が、文書文字列中の不一致
文字列に含まれているか否かを判断することによりこの
ようなタイプミスによる不一致を検出することができ
る。
【0203】この可変長連鎖を含む検索文字列の検索方
法は、図9に示す手順で実施される。この手順を具体例
とともに説明する。本実施例においては、検索文字が
「datacommunication」であり、文書文字列中には、「d
ata....... communication」,「data comminucation」,
「daily communication」が存在している。「dat
a....... communication」における「data」と「commun
ication」は十分離れているとする。
【0204】文字連鎖ファイルの情報と位置情報ファイ
ルの情報は、 文字連鎖ファイル 位置情報ファイル 1. data 1-1,2-1 2. daily 3-1 3. comminucation 2-6 4. communication 1-35,3-7
【0205】 と仮定する(M'=3)。
【0206】ここでは理解の容易化を図るため、ソート
を行っていないファイルを示す。ここで「1. data 1-
1,2-1」の「1.」は可変長連鎖番号、「data」は、可変
長連鎖、「1-1」,「2-1」は夫々「文書番号−文書内位
置番号」を示す。また、「$da1-1,2-1」の「$da」は拡
張文字連鎖、「1-1」,「2-1」は夫々「可変長連鎖番号
−可変長連鎖内位置」を示す。従って、「$da 1-1,2-
1」は、可変長連鎖番号1(data)の1文字目と可変長連鎖
番号2(daily)の1文字目とを表している。
【0207】図9の手順が開始されると、まず、検索文
字列「data communication」が入力される(ステップ7
02)。そして、類似度が入力される(ステップ70
4)。この類似度はデフォルトとして定め、入力を省略
してもよい。ここでは類似度0.80と入力する。
【0208】次に、検索文字列から固定長連鎖と可変長
検索文字列が作成される(ステップ706)。この例で
は、デリミタ言語のみを有する文書で説明しているた
め、固定長連鎖は存在しない。
【0209】条件を満たす可変長連鎖を拡張文字連鎖フ
ァイル・拡張位置情報ファイルから検索する(ステップ
708)。ここで、上記(1),(2),(3)の可変
長連鎖を探す処理が行われる。すなわち、(1)拡張検
索文字列と指定の検索一致度以上で一致する可変長連鎖
を探す。このときのの検索一致度は、文書全体の類似度
と同じ値を設定することも可能であるが、文書全体の類
似度よりも低い方が好ましい。例えば、「communicatio
n」と「comminucation」13文字中10文字が一致し、3文
字が不一致であるため、単純な類似度の算出方法(ここ
では、読者の理解の容易化を図るため、単純な類似度の
算出方法を用いて説明する)では、類似度は10/13=0.77
であるが、「data communication」と「data comminuca
tion」の類似度は、デリミタを含めて、18文字中15文字
が一致し、3文字が不一致であるため、単純な類似度の
算出方法では、類似度は15/18=0.83となる。このよう
に、可変長連鎖同士の類似度が低くても文字列全体の類
似度が高くなる場合が多く、文字列が長くなるにつれ、
この傾向は顕著になるためである。
【0210】本実施例においては、「指定の検索一致
度」は「data」について0.60、「communication」につ
いては0.72と設定する。「指定の検索一致度」は、検索
文字列の文字数と可変長連鎖の文字数の比率によって変
更することも可能である。この例に示すように「commun
ication」と10文字以上一致する可変長連鎖でないと、
文字列全体の類似度は0.80以上にならないのに対し、
「data」は、1文字のみ一致する場合であっても、文字
列全体の類似度は0.80以上となる可能性が存在するのた
めである。但し、「data」に対し余りにも低い一致度を
許容すると、一致する可変長連鎖が多くなり、検索速度
に影響を及ぼすため0.6を下限として設定している。な
お、本発明の好適な実施例においては、文書全体の類似
度に大きな影響を与えない可変長連鎖は(1)の可変長
連鎖探索処理の対象から除外される。これにより、検索
速度を向上させることが可能となる。
【0211】また、本実施例においては、類似度×検索
する可変長連鎖の文字数(=0.72×13=9.3
6)未満の可変長連鎖は検索の対象から除外されること
により高速な検索を可能にしている。これは、例えば、 のように、可変長連鎖の文字数を管理することにより実
施することができる。なお、「$da 1-1-4,2-1-5」の「1
-1-4」,「2-1-5」は夫々「可変長連鎖番号−可変長連鎖
内位置−可変長連鎖文字数」を示す。
【0212】「data」に対し0.60、「communication」
に対し0.72以上の検索一致度を有する可変長連鎖は、固
定長連鎖と同様の方法で「data」に対し「data」(100%)
「communication」に対し「comminucation」(77%)、「c
ommunication」(100%)が見つけることができる。
【0213】例えば、検索文字列「communication」の
場合、これに対応する拡張検索文字連鎖に一致する連鎖
は、拡張文字連鎖中の、 であり、拡張位置情報ファイルの情報から、文字連鎖フ
ァイルの「3. comminucation」、「4. communication」
を見つけることができる。
【0214】次に、(2)拡張検索文字列どうしを接合
して新たに作成した拡張検索文字列と指定の検索一致度
以上で一致する可変長連鎖を探す。従って検索文字列
「datacommunication」と指定の検索一致度以上で一致
する可変長連鎖が探索される。このときの「指定の検索
一致度」は、文字列全体の類似度と同じ値を設定するこ
とも可能であるが、文書全体の類似度よりも低くするこ
とも可能である。例えば、検索文字列が"data base sys
tem"である場合、接合で作った拡張検索文字列は、"dat
abase""basesystem""databasesystem"の3種類が存在す
が、これらの接合検索文字列が文書全体の類似度に与え
る影響は、接合検索文字列の文字数によって変化するた
めである。本実施例においては(2)の「指定の検索一
致度」は0.80に設定されるため、検索文字列「datacomm
unication」と指定の検索一致度以上で一致する可変長
連鎖は存在しない。
【0215】そして、上記の(3)拡張検索文字列と0
より大きい一致度で一致する可変長連鎖の中から「1.
可変長連鎖の最初の文字が一致部分に含まれる。」、
「2.拡張検索文字列の最初の文字または最後の文字が
一致部分に含まれる。」の条件をすべて満たす可変長連
鎖を探す。この条件に合致する可変長連鎖は、(1)と
同様に、「data」、「comminucation」、「communicati
on」である。
【0216】再び図9を参照すると、ステップ710に
おいて、可変長連鎖が見つかったか否か判断される。本
実施例においては、「1. data」,「3. comminucatio
n」,「4. communication」が見つかっている。これらの
可変長連鎖の番号が、バッファに格納される(ステップ
712)。本実施例においては可変長連鎖番号1,3,
4が格納される。本発明の好適な実施例においては、検
索文字列「data communication」の可変長連鎖文字列
「data」,「communication」の夫々に番号(可変長連鎖
検索文字列番号)が付けられており、この番号との関連
で、上記可変長連鎖番号1,3,4が格納される。従っ
て格納される情報は、(1−1),(2−3,4)が格
納される。この(2−3,4)は可変長連鎖検索文字列
番号2に対し一定の一致度以上で一致する文書中の可変
長連鎖の可変長連鎖番号3,4を示している。
【0217】そして、ステップ714において、固定長
連鎖の位置情報と可変長連鎖の位置情報の位置関係から
文字列全体の類似度が計算される。具体的には、前述の
ように可変長連鎖検索文字列番号に対して文書中の可変
長連鎖番号1,3,4が格納される。従って、接合され
うる文書内の可変長連鎖は、1−3,1−4である
(「1.」は「data」、「3.」は「comminucation」、
「4.」は「communication」に対応)。
【0218】文字連鎖ファイル302、位置情報ファイ
ル304の内容を参照すると、 文字連鎖ファイル 位置情報ファイル 1. data 1-1,2-1 3. comminucation 2-6 4. communication 1-35,3-7 であるため、(1-1,2-1)−(2-6),(1-1,2-1)−(1-35,3-
7)の組合せ、すなわち、 (1-1)−(2-6), (2-1)−(2-6), (1-1)−(1-35) (1-1)−(3-7) (2-1)−(1-35) (2-1)−(3-7) の組合せが候補となる。
【0219】しかし、1.文書番号が異なる場合、2.L=
3の条件を満たさない場合、3.文書内位置番号に逆転が
起こっている場合は類似度計算の候補から除外される。
この条件を具備する可変長連鎖の組合せは(2-1)−(2-6)
のみとなる。従って「data comminucation」が類似度計
算の対象となる。ただし、「2.L=3の条件を満たさな
い場合」や「3.文書内位置番号に逆転が起こっている場
合」という要件は、「data comminucation」のように、
その並び方が重要な場合に採用されるが、例えば、特許
公報の要約のキーワード(可変長連鎖)を抽出した文字列
を検索する場合のように、並び方が重要でない場合には
採用されない。
【0220】以上の説明においては、ステップ712に
おいて、可変長連鎖検索文字列番号との関連で、可変長
連鎖番号を格納している。しかし、可変長連鎖検索文字
列番号の格納は、本発明の必須の構成要素ではなく、可
変長連鎖検索文字列番号の情報なしに可変長連鎖の組合
せを決定できる。
【0221】これを具体的に説明すると、ステップ71
2で格納された可変長連鎖番号から、文字連鎖ファイル
302、位置情報ファイル304の内容が参照される。 文字連鎖ファイル 位置情報ファイル 1. data 1-1,2-1 3. comminucation 2-6 4. communication 1-35,3-7
【0222】この文字連鎖ファイルは位置情報ファイル
の内容に従って分割される。 文字連鎖ファイル 位置情報ファイル 1. data 1-1 1. data 2-1 3. comminucation 2-6 4. communication 1-35 4. communication 3-7
【0223】そして、文字連鎖ファイルは位置情報ファ
イルの内容に従ってソートされる。 文字連鎖ファイル 位置情報ファイル 1. data 1-1 4. communication 1-35 1. data 2-1 3. comminucation 2-6 4. communication 3-7
【0224】L=3とすると、 1. data 1-1 4. communication 1-35 4. communication 3-7 は、位置情報ファイルの内容から、組合せる他の可変長
連鎖は存在しないことが分かる。
【0225】これに対し、 1. data 2-1 3. comminucation 2-6 はL=3の条件を満たすため、組み合わされて類似度が
判断される。
【0226】従って、類似度計算の候補は、 1. data 1-1 4. communication 1-35 4. communication 3-7 1-3. data comminucation 2-1
【0227】重複した類似度計算を防止するため、可変
長連鎖番号でまとめると、 1. data 1-1 4. communication 1-35,3-7 1-3. data comminucation 2-1
【0228】そして、検索文字列(18:デリミタ含
む)×類似度(0.80)未満の文字列(14.4未満
の文字列)は類似度計算の対象から除外される(実際は
可変長連鎖番号でまとめる操作の前に行うことが望まし
い)。従って、類似度計算の候補は、 1-3. data comminucation 2-1 のみとなる。
【0229】検索文字列、「data communication」と
「data comminucation」の類似度は、18文字中15文
字一致し、3文字不一致であるため、類似度0.83が
算出される。なお、ステップ712において、可変長連
鎖の番号とともに、可変長連鎖の類似度を格納する事に
より、ステップ714における文字列の類似度計算を軽
減できる。すなわち、ステップ712で、(1−1.0
0),(3−0.77),(4−1.00)が格納さ
れ、この数値が利用される。
【0230】単純な類似度計算においては、以下の式か
ら類似度を算出することが可能となる。
【数9】 類似度 = (可変長連鎖1の文字数×可変長連鎖1の一致度 + 可変長連鎖2の文字数×可変長連鎖2の一致度 + ... + デリミタの文字数) / 検索文字列の文字数 従って、本実施例における類似度は、(4×1.00+
13×0.77+1)/18=0.83となる。なお、
デリミタを1文字とカウントするか否かは設計によって
変更することができる。
【0231】次に、ステップ716において、入力され
た類似度と、上記計算された類似度が比較される。入力
された類似度よりも大きい類似度を有する文字列が存在
しない場合は、見つからなかった旨の表示がディスプレ
イ110上に表示される(ステップ718)。また、見
つかった場合は、該当文書の該当行を表示する(ステッ
プ720)。ただし、該当文書の該当行の表示または、
見つからなかった旨の表示は、必須の構成要素ではな
く、これらの情報を他のコンピュータ(クライアントを
含む)に送信することもできる。また、該当文書の該当
行の表示は、類似度や文書番号、文書内位置番号等とと
もに、入力した類似度以上の文字列をすべて表示して
も、予め定められた数のみ表示してもよい。表示の順序
は、文書中に出現する順序または類似度の高い順序で表
示してもよい。さらに、複数文書の場合、各文書で条件
を満たす文字列の一定の数表示させることも可能であ
る。これらは設計の段階でさまざまに設定することがで
きる。
【0232】本発明は、文書の曖昧検索に用いるための
手法について述べているが、文書中の単語のスペルチェ
ックにも応用することができる。この場合、まず、文書
中の辞書にない単語が従来の手法に従って検出される。
次に、検出された辞書にない単語が検索文字列としても
ちいられ、辞書に存在する単語に対し曖昧検索を行う。
そして、曖昧検索で一定の類似度以上であった単語を、
その辞書にない単語の正しいスペルの候補として表示す
る。
【0233】以上、可変長連鎖のみからなる文字列の検
索を説明したが、可変長連鎖と固定長連鎖の混在する文
書においては、ステップ714において、固定長連鎖の
位置情報と可変長連鎖の位置情報の位置関係から文字列
全体の類似度が計算される。この処理について具体例を
挙げて説明する。この具体例においては、検索文字列
「ASEAN加盟国」、そして、文書中に「ASEAに
加盟」が存在する。「ASEAN」及び「ASEA」は
可変長連鎖である。
【0234】かかる場合、文字連鎖ファイル302、位
置情報ファイル304の内容は、 文字連鎖ファイル 位置情報ファイル 1. ASEA 1-1 2. に加 1-5 3. 加盟 1-6 である。可変長連鎖検索文字列「ASEAN」に類似す
る可変長連鎖文書文字列「ASEA」は前述の方法で見
つけだされている。この文字列に対して、固定長連鎖に
おいて説明した方法と同様に、有効一致文字列の検出、
類似度の計算が行われる。
【0235】(例 )
【表20】
【0236】
【表21】
【0237】似ている文字列 = "ASEAに加盟" 類似度 = minimum( 6 / 8 , 6 / 7 ) = 0.75
【0238】なお、類似度の計算において、可変長連鎖
のみを含む文字列の類似度計算で説明したように、可変
長連鎖の類似度計算の結果を文字列全体の類似度計算に
用いることもできる。 単純な類似度計算においては、
以下の式から類似度を算出することが可能となる。
【数10】 類似度 = (可変長連鎖1の文字数×可変長連鎖1の一致度 + 固定長連鎖の有効一致文字列の文字数 + デリミタの文字数) / 検索文字列の文字数
【0239】従って、本実施例における検索文字列の類
似度は、(5×0.80+2+0)/8=0.75、文
書文字列の類似度は、(4×0.80+2+0)/7=
0.74となる。従って、検索文字列の類似度は、 類似度 = minimum( 0.75 , 0.74 ) = 0.74 となる。この類似度の計算において、可変長連鎖と、固
定長連鎖の重み付けを変えて計算することもできる。例
えば、
【数11】 類似度 = (可変長連鎖1の文字数×可変長連鎖1の一致度×0.5 + 固定長連鎖の有効一致文字列の文字数 + デリミタの文字数×0.2) / (検索文字列中の可変長連鎖の文字数×0.5 + 検索文字列中の固定長連鎖の文字数 + 検索文字列中のデリミタの文字数×0.2)
【0240】E9.検索式への応用 以上に説明した検索は一定の文字列を例とした検索であ
るが、これを検索式に応用した場合について説明する。
たとえば、 (理学部部長 OR 理学部主任) AND 就任決定 のような検索式(「理学部部長」または「理学部主任」
を含んでいて、しかも、「就任決定」を含む文書を探す
検索式)において、それぞれの検索文字列について検索
一致度を指定してあいまい検索をすることが考えられ
る。どの検索文字列についても80%以上の一致度で検索
した場合、たとえば次のような文書を見つけることがで
きる。 「理学部長」と「就任が決定」を含む文書 「理学部の主任」と「就任決定」を含む文書 また,見つかった文書を,探しているものに近い可能性
が高い順に並べる場合、検索の結果得られる一致度を手
がかりとすることが可能である。
【0241】E10.索引の構造と"似ている文字列"の
検索の関係 Mの値を適当に定めることにより、"似ている文字列"を
探すあいまい検索は、本発明の索引の構造でかなり高速
に実現できる。
【0242】定数N,Mの定め方
【表22】N: 索引に格納する文字連鎖の文字数 M: あいまい検索における有効一致文字列の最低長 L: あいまい検索において、"似ている文字列"中の非有
効一致文字列の最大長
【0243】N、N'を大きくすると、文字連鎖の種類
数が増加し、文字連鎖1つあたりのデータ量は減少する
ので、検索はより速くなるが、索引ファイルの容量は増
加する。平均的な日本語・中国語・韓国語・英語の文書
では、N = 2、N'= 3 で充分な検索速度が得られ
る。
【0244】また、M≧N、M'≧N'となるようにM、
M'を定めれば、あいまい検索において充分な検索速度
が得られる。M、M'は小さいほど、きめ細かなあいま
い検索ができることから考えると、M=N、M'=N'とな
るように決めることがよいと思われる。
【0245】E11.類似度決定の第2の実施例
【0246】第2の実施例の曖昧検索処理では特に、
「途中にはさまる不一致文字が多いほど似ていないと感
じる」ということと、「途中にはさまる不一致文字が多
すぎると一つの文字列とは感じられない」ということの
かねあいについて考慮される。文書中に入力文字列と一
致する文字列、不一致な文字列、一致する文字列の順に
並んでいた場合に、後者の一致文字列までを似ている文
字列として取りこむことによって、似ている度合いが下
がるのは不自然である。たとえば、入力文字列が「在宅
起訴」、文書1には「在宅のまま起訴」、文書2には
「在宅」とあった場合、 ”文書1は「在宅のまま起
訴」、文書2は「在宅」が似ている文字列であり、似て
いる度合いは「在宅」の方が高い”とするようなルール
は人間の感覚に反している。文書1が「起訴」というさ
らなる一致文字列があるがために、逆に低い評価を受け
るのは不自然である。「在宅のまま起訴」の似ている度
合いが「在宅」より高くなるか、あるいは、文書1の似
ている文字列は「在宅」と「起訴」の2つであると判断
されるかのどちらかが、自然である。
【0247】次に、第2の実施例の処理について説明す
る。図8のフローチャートを参照すると、この実施例で
は、ステップ602〜612までは同一であり、i+1番
目の有効一致文字列を検索するための条件を示すステッ
プ614の処理が次のように変更される。
【0248】
【数12】 s(C, i+1) > e(C, i) - (M - 1) ... (式1) s(D, i+1) > e(D, i) ... (式2) 且つ s(D, i+1) - e(D, i) - 1 + max(e(C, i) - s(C, i+1) + 1, 0) ≦ L ・・・ (式3)
【0249】尚、s(C, i)、e(C, i)、s(D, i)、s(D, i)
などの定義は、前述のとおりである。
【0250】式1は、前述の「理学部部長」の「部」の
ような重複出現文字をM−1文字(まで許容し、それ以
外は入力文字列中での文字の順序と同じ順序で出現する
文字列を有効とすることを意味する。
【0251】式2は、文書中で有効一致文字列どうしが
重ならないことを意味する。
【0252】式3は、間にはさまる不一致文字と「理学
部部長」の「部」のような重複出現文字を、あわせてL
文字まで許容することを意味する。
【0253】この実施例では、前の実施例のように、検
索文字列と、文書中の似ている文字列の各々で、有効一
致文字列が占める割合を計算し、そのうちの小さい方を
類似度として選ぶのではなく、似ている文字列に点数を
つけて、満点(完全に一致している場合の点数)で割っ
て割合を出すことによって算出する。似ている文字列の
点数は、各文字に次の規則で点数をつけてそれを加算す
ることで算出する。従って、図8のステップ620での
処理は次のようになる。
【0254】 1番目の有効一致文字列に属する文字 ・・・ 1 点 i番目(i > 1)の有効一致文字列に属していて 検索文字列における位置≧e(C,i-1)+1 (式4) ・・・ 1 点 検索文字列における位置≦e(C,i-1) (式5) ・・・ -1/(2*L) 点 有効一致文字列に属していない文字 ・・・ -1 / L 点
【0255】この実施例でも、i番目の似ている文字列
が決定している時、i+1番目の似ている文字列は、i
番目の似ている文字列の先頭の文字より後ろで、i番目
の似ている文字列を構成する有効一致文字列に属さない
最初の文字から比較を始めて決定する。
【0256】有効一致文字列に属していない文字のマイ
ナス点は、「途中にはさまる不一致文字が多いほど似て
いないと感じる」ということと、「途中にはさまる不一
致文字が多すぎると一つの文字列とは感じられない」と
いうことのかねあいを考慮して設定している。一つの非
一致文字列のマイナス点の合計の最大は1 / L * L =1,
次の一致文字列を取り入れることによるプラス点の最小
はN ≧ 1 (特に日本語の場合は2が推奨されている)
でマイナス点がプラス点を上回ることがない。また、式
5は前述の「理学部部長」の「部」のような重複出現文
字を示し、式4は重複出現文字でない単純な一致文字を
示している。式5で表される文字には単純な非一致文字
より小さなマイナス点をつけることで、重複して文字が
あらわれる場合に対処している。
【0257】E12.第2の実施例での似ている文字列
と似ている度合いの決定例 やはり、N = 2, L = 3 として例を示す。
【表23】
【0258】最初の一致文字列は「アイ」だから1番目
の有効一致文字列は「アイ」
【数13】s(C,1) = 1 e(C,1) = 2 s(D,1) = 1 e(D,1) = 2
【0259】式1、式2、式3により2番目の有効一致
文字列は「ビー」
【数14】s(C,2) = 3 e(C,2) = 4 s(D,2) = 4 e(D,2) = 5
【0260】式1、式2、式3により3番目の有効一致
文字列「エム」
【数15】s(C,3) = 5 e(C,3) = 6 s(D,3) = 7 e(D,3) = 8
【0261】入力文字列の最後に到達したので有効一致
文字列は3つとなる。
【表24】
【0262】似ている文字列は s(D, 1) から e(D, 3)
までの「アイ・ビー・エム」。似ている度合い = (( 1
* 6 + (-1/3) * 2 ) / 6 ) = 0.88
【0263】
【表25】
【0264】
【表26】 似ている文字列 = "ソフト開発メーカー" 似ている度合い = ( ( 1 * 7 + (-1/3) * 2 ) / 10 ) =
0.63
【0265】
【表27】
【0266】最初の一致文字列は「在宅」だから1番目
の有効一致文字列は「在宅」次の一致文字列「起訴」は
式3を満たさないので、有効一致文字列は1番目のみと
なる。
【表28】
【0267】似ている文字列は「在宅」。似ている度合
い = 2 / 4 = 0.5
【0268】「在」より後ろで最初の非有効一致文字は
「の」。2番目の似ている文字列は、「の」から後ろで
探す。
【0269】
【表29】
【0270】従って、2番目の似ている文字列は、「起
訴」。
【0271】
【表30】
【0272】有効一致文字列は「理学部」、「部長に就
任」の2つ。
【0273】
【表31】
【0274】似ている文字列は「理学部部長に就任」。
2つ目の「部」は式5を満たしている。そこで、似てい
る度合い = (( 1 * 7 + (-1/6) * 1 ) / 7 ) = 0.97
となる。
【0275】E13.第2の実施例の結果のまとめ
【表32】 入力文字列 文書中 類似度 ===================================================== ソフトメーカー ソフトのメーカー 0.95 ソフトの開発メーカー 0.85 政治資金規正法案 政治資金規正法 0.87 政治資金 0.50 理学部長に就任 理学部部長に就任 0.97 理学部の長に就任 0.95
【0276】本発明の好適な実施例において、第2の実
施例の曖昧検索処理を固定長連鎖の類似度計算において
説明したが、これを可変長連鎖を含む文字列に応用する
ことは当業者に容易に理解できる事項であろう。
【0277】
【発明の効果】以上説明したように、この発明によれ
ば、文書ファイルまたはデータベースにおいて、人間の
感覚に自然な曖昧検索を、固有のインデックス構造を用
いて高速に実現できるという効果が得られる。また、日
本語・韓国語・中国語・英語など複数の言語の一つある
いは混合で記述された文書からなるデータベースに対し
て、単一の索引構造、単一のアルゴリズムで高速な検索
が実現できるという効果が得られる。
【0278】
【図面の簡単な説明】
【図1】 ハードウェア構成を示すブロック図である。
【図2】 処理要素のブロック図である。
【図3】 索引ファイルの構造を示す図である。
【図4】 索引ファイルの構造を示す図である。
【図5】 索引ファイル作成処理を示すフローチャート
である。
【図6】 索引ファイル作成処理を示すフローチャート
である。
【図7】 索引ファイルを使用した文字列検索処理のフ
ローチャートである。
【図8】 索引ファイルを使用した曖昧検索処理のフロ
ーチャートである。
【図9】 索引ファイルを使用した曖昧検索処理のフロ
ーチャートである。

Claims (22)

    【特許請求の範囲】
  1. 【請求項1】コンピュータ処理によって検索可能に記憶
    された文書中で、可変長連鎖検索文字列を含む検索文字
    列と一定の文字列類似度以上で類似する可変長連鎖文書
    文字列を含む文書文字列を検索する方法であって、(a)
    前記可変長連鎖文書文字列の存在する文書文字列を特定
    する文書文字列特定情報と、前記可変長連鎖文書文字列
    の存在する文書文字列内の位置を示す文書文字列位置情
    報を前記可変長連鎖文書文字列に関連付ける段階と、
    (b) 前記可変長連鎖文書文字列から、長さM文字の(M
    は、1以上の予定の整数)部分文書文字列を抜き出して
    格納する段階と、(c) 前記部分文書文字列の存在する可
    変長連鎖文書文字列を特定する可変長連鎖文書文字列特
    定情報と、前記部分文書文字列の存在する可変長連鎖文
    書文字列内の位置を示す可変長連鎖文書文字列位置情報
    を前記部分文書文字列に関連付ける段階と、(d) 前記可
    変長連鎖検索文字列から抜き出した長さN文字の(N
    は、1以上の予定の整数)部分検索文字列に一致する部
    分文書文字列を探索する段階と、(e) 前記可変長連鎖検
    索文字列の部分検索文字列の開始位置を1つずらした長
    さN文字の部分検索文字列と一致する部分文書文字列を
    探索する段階と、(f) 前記段階(e)を繰り返し、前記可
    変長連鎖検索文字列の部分検索文字列と一致する部分文
    書文字列の集合を特定する段階と、(g) 前記部分文書文
    字列の集合に属する部分文字列の可変長連鎖文書文字列
    特定情報及び可変長連鎖文書文字列位置情報から、前記
    可変長連鎖検索文字列に予定の可変長連鎖一致度以上で
    一致する可能性のある可変長連鎖文書文字列候補を特定
    する段階と、(h) 前記可変長連鎖検索文字列と前記可変
    長連鎖文書文字列候補の可変長連鎖一致度を計算する段
    階と、(i) 前記可変長連鎖文書文字列候補の中から、前
    記可変長連鎖検索文字列と予定の可変長連鎖一致度以上
    の可変長連鎖一致度を有する可変長連鎖文書文字列を選
    択する段階と、(j) 前記選択された可変長連鎖文書文字
    列の文書文字列特定情報から、前記選択された可変長連
    鎖文書文字列の存在する文書文字列を特定する段階と、
    (k) 前記選択された可変長連鎖文書文字列の存在する文
    書文字列と前記可変長連鎖検索文字列を含む検索文字列
    との文字列類似度を計算する段階と、(l) 前記計算され
    た文字列類似度が前記一定の文字列類似度以上である場
    合、前記特定された可変長連鎖文書文字列を表示する段
    階と、 を含む方法。
  2. 【請求項2】コンピュータ処理によって検索可能に記憶
    された文書中で、可変長連鎖検索文字列を含む検索文字
    列と類似する可変長連鎖文書文字列を含む文書文字列を
    検索する方法であって、(a) 前記可変長連鎖文書文字列
    と、前記可変長連鎖文書文字列の存在する文書文字列を
    特定する文書文字列特定情報を関連付ける段階と、(b)
    前記可変長連鎖文書文字列から、長さM文字の(Mは、
    1以上の予定の整数)部分文書文字列と、前記部分文書
    文字列の存在する可変長連鎖文書文字列を特定する可変
    長連鎖文書文字列特定情報を関連付ける段階と、(c) 前
    記可変長連鎖検索文字列から抜き出した長さN文字の
    (Nは、1以上の予定の整数)部分検索文字列に一致す
    る部分文書文字列を探索する段階と、(d) 前記部分検索
    文字列に一致する部分文書文字列の可変長連鎖文書文字
    列特定情報から、前記部分検索文字列に一致する部分文
    書文字列に関連する可変長連鎖文書文字列を特定する段
    階と、(e) 前記特定された可変長連鎖文書文字列の文書
    文字列特定情報から、前記特定された可変長連鎖文書文
    字列の存在する文書文字列を特定する段階と、 を含む方法。
  3. 【請求項3】コンピュータ処理によって検索可能に記憶
    された文書中で、可変長連鎖検索文字列を含む検索文字
    列と類似する可変長連鎖文書文字列を含む文書文字列を
    検索する方法であって、(a) 前記可変長連鎖文書文字列
    と、前記可変長連鎖文書文字列の存在する文書文字列を
    特定する文書文字列特定情報が関連付けられており、前
    記可変長連鎖文書文字列から、長さM文字の(Mは、1
    以上の予定の整数)部分文書文字列と、前記部分文書文
    字列の存在する可変長連鎖文書文字列を特定する可変長
    連鎖文書文字列特定情報が関連付けられている索引ファ
    イル中で、前記可変長連鎖検索文字列から抜き出した長
    さN文字の(Nは、1以上の予定の整数)部分検索文字
    列に一致する部分文書文字列を探索する段階と、(b) 前
    記部分検索文字列に一致する部分文書文字列の可変長連
    鎖文書文字列特定情報から、前記部分検索文字列に一致
    する部分文書文字列に関連する可変長連鎖文書文字列を
    特定する段階と、(c) 前記特定された可変長連鎖文書文
    字列の文書文字列特定情報から、前記特定された可変長
    連鎖文書文字列の存在する文書文字列を特定する段階
    と、 を含む方法。
  4. 【請求項4】コンピュータ処理によって検索可能に記憶
    された文書中で、可変長連鎖検索文字列を含む検索文字
    列と一定の類似度以上で類似する可変長連鎖文書文字列
    を含む文書文字列を検索する方法であって、(a) 前記可
    変長連鎖文書文字列の存在する文書文字列を特定する文
    書文字列特定情報と、前記可変長連鎖文書文字列の存在
    する文書文字列内の位置を示す文書文字列位置情報を前
    記可変長連鎖文書文字列に関連付ける段階と、(b) 前記
    可変長連鎖文書文字列から、長さM文字の(Mは、1以
    上の予定の整数)部分文書文字列を抜き出して格納する
    段階と、(c) 前記部分文書文字列の存在する可変長連鎖
    文書文字列を特定する可変長連鎖文書文字列特定情報
    と、前記部分文書文字列の存在する可変長連鎖文書文字
    列内の位置を示す可変長連鎖文書文字列位置情報を前記
    部分文書文字列に関連付ける段階と、(d) 前記可変長連
    鎖検索文字列から抜き出した長さN文字の(Nは、1以
    上の予定の整数)部分検索文字列に一致する部分文書文
    字列を探索する段階と、(e) 前記可変長連鎖検索文字列
    の部分検索文字列の開始位置を1つずらした長さN文字
    の部分検索文字列と一致する部分文書文字列を探索する
    段階と、(f) 前記段階(e)を繰り返し、前記可変長連鎖
    検索文字列の部分検索文字列と一致する部分文書文字列
    の集合を特定する段階と、(g) 前記部分文書文字列の集
    合に属する部分文字列の可変長連鎖文書文字列特定情報
    及び可変長連鎖文書文字列位置情報から、前記可変長連
    鎖検索文字列に類似する可変長連鎖文書文字列を特定す
    る段階と、(h) 前記特定された可変長連鎖文書文字列の
    文書文字列特定情報から、前記特定された可変長連鎖文
    書文字列の存在する文書文字列を特定する段階と、 を含む方法。
  5. 【請求項5】複数の可変長連鎖を含む文書からコンピュ
    ータ検索用のファイルをコンピュータによってアクセス
    可能な記憶装置に作成する方法であって、(a) 前記文書
    から、第1の可変長連鎖を抜き出す段階と、(b) 前記第
    1の可変長連鎖が出現する前記文書中の位置情報を格納
    する段階と、(c) 前記第1の可変長連鎖から第1の拡張
    固定長連鎖を抜き出す段階と、(d) 前記第1の拡張固定
    長連鎖が存在する前記第1の可変長連鎖を特定する情報
    と、前記第1の拡張固定長連鎖が存在する前記第1の可
    変長連鎖中の位置情報を格納する段階と、 を含む方法。
  6. 【請求項6】複数の可変長連鎖を含む文書からコンピュ
    ータ検索用のファイルをコンピュータによってアクセス
    可能な記憶装置に作成する方法であって、(a) 前記文書
    から、前記複数の可変長連鎖を抜き出して文字連鎖ファ
    イルに格納する段階と、(b) 前記複数の可変長連鎖が出
    現する前記文書中の位置情報を位置情報ファイルに格納
    する段階と、(c) 前記複数の可変長連鎖の各々の可変長
    連鎖から長さM文字の(Mは、1以上の予定の整数)拡
    張固定長連鎖を抜き出して拡張文字連鎖ファイルに格納
    する段階と、(d) 前記拡張固定長連鎖が存在する前記可
    変長連鎖を特定する情報と、前記拡張固定長連鎖が存在
    する前記可変長連鎖中の位置情報を拡張位置情報ファイ
    ルに格納する段階と、 を含む方法。
  7. 【請求項7】第1の可変長連鎖を含む第1の文字列と、
    第2の可変長連鎖を含む第2の文字列の類似度をコンピ
    ュータを用いて計算する方法であって、(a) 前記第1の
    可変長連鎖文字列から、長さN文字の(Nは、1以上の
    予定の整数)部分文字列につき、前記第2の可変長連鎖
    中で一致する部分文字列を探索する段階と、(b) 前記第
    1の可変長連鎖の部分文字列の開始位置を1つずらした
    長さN文字の部分文字列につき、前記第2の可変長連鎖
    中で一致する部分文字列を探索する段階と、(c) 前記段
    階(b)を繰り返すことにより、前記第2の可変長連鎖に
    おいて、前記第1の可変長連鎖と一致する文字を識別す
    る可変長連鎖一致文字識別情報を導出する段階と、(d)
    前記可変長連鎖一致文字識別情報と前記第1の可変長連
    鎖文字数に基づいて、前記第1の可変長連鎖と、前記第
    2の可変長連鎖の可変長連鎖一致度を算出する段階と、
    (e) 前記可変長連鎖一致度に基づいて前記第1の文字列
    の類似度を算出する段階と、 を含む方法。
  8. 【請求項8】第1の可変長連鎖を含む第1の文字列と、
    第2の可変長連鎖を含む第2の文字列の類似度をコンピ
    ュータを用いて計算する方法であって、(a) 前記第2の
    可変長連鎖文字列の存在する第2の文字列を特定する文
    字列特定情報と、前記第2の可変長連鎖文字列の存在す
    る第2の文字列内の位置を示す文字列位置情報を前記第
    2の可変長連鎖文字列に関連付ける段階と、(b) 前記第
    2の可変長連鎖文字列から、長さM文字の(Mは、1以
    上の予定の整数)第2の部分文字列を抜き出して格納す
    る段階と、(c) 前記第2の部分文字列の存在する第2の
    可変長連鎖文字列を特定する可変長連鎖文字列特定情報
    と、前記第2の部分文字列の存在する第2の可変長連鎖
    文字列内の位置を示す可変長連鎖文字列位置情報を前記
    第2の部分文書文字列に関連付ける段階と、(d) 前記第
    1の可変長連鎖文字列から抜き出した長さN文字の(N
    は、1以上の予定の整数)第1の部分文字列に一致する
    第2の部分文字列を探索する段階と、(e) 前記第1の可
    変長連鎖文字列の第1の部分文字列の開始位置を1つず
    らした長さN文字の第1の部分検索文字列と一致する第
    2の部分文字列を探索する段階と、(f) 前記段階(e)を
    繰り返し、前記第1の可変長連鎖文字列の第1の部分文
    字列と一致する第2の部分文字列の集合を特定する段階
    と、(g) 前記第2の部分文字列の集合に属する第2の部
    分文字列の可変長連鎖文字列特定情報及び可変長連鎖文
    字列位置情報から、前記第1の可変長連鎖文字列に予定
    の可変長連鎖一致度以上で一致する可能性のある可変長
    連鎖文字列候補を特定する段階と、(h) 前記第1の可変
    長連鎖文字列と前記可変長連鎖文字列候補の可変長連鎖
    一致度を計算する段階と、(i) 前記可変長連鎖文字列候
    補の中から、前記第1の可変長連鎖文字列と予定の可変
    長連鎖一致度以上の可変長連鎖一致度を有する第2の可
    変長連鎖文字列を選択する段階と、(j) 前記選択された
    第2の可変長連鎖文字列の可変長連鎖一致度を格納する
    段階と、(k) 前記選択された第2の可変長連鎖文字列の
    文字列特定情報から、前記選択された第2の可変長連鎖
    文字列の存在する第2の文書文字列を特定する段階と、
    (l) 前記格納された可変長連鎖一致度に基づいて、前記
    選択された第2の可変長連鎖文字列の存在する第2の文
    字列と前記第1の可変長連鎖検字列を含む検索文字列と
    の文字列類似度を計算する段階と、 を含む方法。
  9. 【請求項9】可変長連鎖文書文字列を含み、コンピュー
    タ処理によって検索可能に記憶された文書において、可
    変長連鎖検索文字列を含む検索文字列に対し予定の類似
    度以上の類似する文書文字列があらわれる箇所を見出す
    方法であって、(a) 前記可変長連鎖検索文字列の先頭か
    ら、長さM文字の(Mは、1以上の予定の整数)部分文
    字列につき、前記可変長連鎖文書文字列で一致する開始
    位置及び終了位置を見出す(以下、その開始位置及び終
    了位置によって決定されるM文字の長さの部分文字列を
    有効一致文字列と称する)段階と、(b) i番目の有効一致文字列の文書中での開始位置を s(D,
    i) i番目の有効一致文字列の文書中での終了位置を e(D,
    i) i番目の有効一致文字列の検索したい文字列中での開始
    位置を s(C, i) i番目の有効一致文字列の検索したい文字列中での終了
    位置を e(C, i) として、 e(D, i) + 1 ≦ s(D, i+1) ≦ e(D, i) + L + 1 且つ s(C, i+1) > e(C,i) - (M-1) (この式で、Lは、1以上の予定の整数)という条件を
    満たすi+i番目の有効一致文字列を見出す段階と、(c)
    前記有効一致文字列が見つかる限り、前記段階(b)を継
    続する段階と、(d) 少なくとも、前記可変長連鎖文書文
    字列における最初の有効一致文字列の開始位置から、前
    記可変長連鎖文書文字列における最後の有効一致文字列
    の終了位置までの間の文字列における、有効一致文字列
    の存在情報に基づき、前記可変長連鎖検索文字列と、前
    記可変長連鎖文書文字列における最初の有効一致文字列
    の開始位置から、前記可変長連鎖文書文字列における最
    後の有効一致文字列の終了位置までの間の文字列との間
    の類似度を計算する段階と、(e) 前記計算された類似度
    が、前記予定の類似度以上であることに応答して、前記
    可変長文書文字列を特定する段階と、(f) 前記特定され
    た可変長連鎖文書文字列を含む文書文字列を特定する段
    階と、 を含む方法。
  10. 【請求項10】コンピュータ処理によって検索可能に記
    憶された文書中で、可変長連鎖検索文字列を含む検索文
    字列と一定の文字列類似度以上で類似する可変長連鎖文
    書文字列を含む文書文字列を検索する装置であって、
    (a) 前記検索文字列を入力するための入力装置と、(b1)
    前記可変長連鎖文書文字列を格納する文字連鎖ファイ
    ルと、(b2) 前記可変長連鎖文書文字列の存在する文書
    文字列を特定する文書文字列特定情報と、前記可変長連
    鎖文書文字列の存在する文書文字列内の位置を示す文書
    文字列位置情報を格納する位置情報ファイルと、(b3)
    前記可変長連鎖文書文字列から、長さM文字の(Mは、
    1以上の予定の整数)から抜き出された部分文書文字列
    を格納する拡張文字連鎖ファイルと、(b4) 前記部分文
    書文字列の存在する可変長連鎖文書文字列を特定する可
    変長連鎖文書文字列特定情報と、前記部分文書文字列の
    存在する可変長連鎖文書文字列内の位置を示す可変長連
    鎖文書文字列位置情報を格納する拡張位置情報ファイル
    と、 を記憶する記憶装置と、(c1) 前記可変長連鎖検索文字
    列から抜き出した長さN文字の(Nは、1以上の予定の
    整数)部分検索文字列に一致する部分文書文字列の探索
    と、(c2) 前記可変長連鎖検索文字列の部分検索文字列
    の開始位置を1つずらした長さN文字の部分検索文字列
    と一致する部分文書文字列の探索と、(c3) 前記(c2)を
    繰り返し、前記可変長連鎖検索文字列の部分検索文字列
    と一致する部分文書文字列の集合を特定することと、(c
    4) 前記部分文書文字列の集合に属する部分文字列の可
    変長連鎖文書文字列特定情報及び可変長連鎖文書文字列
    位置情報から、前記可変長連鎖検索文字列に予定の可変
    長連鎖一致度以上で一致する可能性のある可変長連鎖文
    書文字列候補の特定と、(c5) 前記可変長連鎖検索文字
    列と前記可変長連鎖文書文字列候補の可変長連鎖一致度
    の計算と、(c6) 前記可変長連鎖文書文字列候補の中か
    ら、前記可変長連鎖検索文字列と予定の可変長連鎖一致
    度以上の可変長連鎖一致度を有する可変長連鎖文書文字
    列の選択と、(c7) 前記選択された可変長連鎖文書文字
    列の文書文字列特定情報から、前記選択された可変長連
    鎖文書文字列の存在する文書文字列の特定と、(c8) 前
    記選択された可変長連鎖文書文字列の存在する文書文字
    列と前記可変長連鎖検索文字列を含む検索文字列との文
    字列類似度の計算と、 を行う制御手段と、(d) 前記計算された文字列類似度が
    前記一定の文字列類似度以上である場合、前記特定され
    た可変長連鎖文書文字列を表示する表示装置と、 を含む装置。
  11. 【請求項11】コンピュータ処理によって検索可能に記
    憶された文書中で、可変長連鎖検索文字列を含む検索文
    字列と類似する可変長連鎖文書文字列を含む文書文字列
    を検索する装置であって、(a) 前記可変長連鎖文書文字
    列と、前記可変長連鎖文書文字列の存在する文書文字列
    を特定する文書文字列特定情報を関連付ける手段と、
    (b) 前記可変長連鎖文書文字列から、長さM文字の(M
    は、1以上の予定の整数)部分文書文字列と、前記部分
    文書文字列の存在する可変長連鎖文書文字列を特定する
    可変長連鎖文書文字列特定情報を関連付ける手段と、
    (c) 前記可変長連鎖検索文字列から抜き出した長さN文
    字の(Nは、1以上の予定の整数)部分検索文字列に一
    致する部分文書文字列を探索する手段と、(d) 前記部分
    検索文字列に一致する部分文書文字列の可変長連鎖文書
    文字列特定情報から、前記部分検索文字列に一致する部
    分文書文字列に関連する可変長連鎖文書文字列を特定す
    る手段と、(e) 前記特定された可変長連鎖文書文字列の
    文書文字列特定情報から、前記特定された可変長連鎖文
    書文字列の存在する文書文字列を特定する手段と、 を含む装置。
  12. 【請求項12】コンピュータ処理によって検索可能に記
    憶された文書中で、可変長連鎖検索文字列を含む検索文
    字列と類似する可変長連鎖文書文字列を含む文書文字列
    を検索する装置であって、(a) 前記可変長連鎖文書文字
    列と、前記可変長連鎖文書文字列の存在する文書文字列
    を特定する文書文字列特定情報が関連付けられており、
    前記可変長連鎖文書文字列から、長さM文字の(Mは、
    1以上の予定の整数)部分文書文字列と、前記部分文書
    文字列の存在する可変長連鎖文書文字列を特定する可変
    長連鎖文書文字列特定情報が関連付けられている索引フ
    ァイル中で、前記可変長連鎖検索文字列から抜き出した
    長さN文字の(Nは、1以上の予定の整数)部分検索文
    字列に一致する部分文書文字列を探索する手段と、(c)
    前記部分検索文字列に一致する部分文書文字列の可変長
    連鎖文書文字列特定情報から、前記部分検索文字列に一
    致する部分文書文字列に関連する可変長連鎖文書文字列
    を特定する手段と、(d) 前記特定された可変長連鎖文書
    文字列の文書文字列特定情報から、前記特定された可変
    長連鎖文書文字列の存在する文書文字列を特定する手段
    と、 を含む装置。
  13. 【請求項13】コンピュータ処理によって検索可能に記
    憶された文書中で、可変長連鎖検索文字列を含む検索文
    字列と一定の類似度以上で類似する可変長連鎖文書文字
    列を含む文書文字列を検索する装置であって、(a) 前記
    可変長連鎖文書文字列の存在する文書文字列を特定する
    文書文字列特定情報と、前記可変長連鎖文書文字列の存
    在する文書文字列内の位置を示す文書文字列位置情報を
    前記可変長連鎖文書文字列に関連付ける手段と、(b) 前
    記可変長連鎖文書文字列から、長さM文字の(Mは、1
    以上の予定の整数)部分文書文字列を抜き出して格納す
    る手段と、(c) 前記部分文書文字列の存在する可変長連
    鎖文書文字列を特定する可変長連鎖文書文字列特定情報
    と、前記部分文書文字列の存在する可変長連鎖文書文字
    列内の位置を示す可変長連鎖文書文字列位置情報を前記
    部分文書文字列に関連付ける手段と、(d) 前記可変長連
    鎖検索文字列から抜き出した長さN文字の(Nは、1以
    上の予定の整数)部分検索文字列に一致する部分文書文
    字列を探索する手段と、(e) 前記可変長連鎖検索文字列
    の部分検索文字列の開始位置を1つずらした長さN文字
    の部分検索文字列と一致する部分文書文字列を探索する
    手段と、(f) 前記手段(e)を繰り返し、前記可変長連鎖
    検索文字列の部分検索文字列と一致する部分文書文字列
    の集合を特定する手段と、(g) 前記部分文書文字列の集
    合に属する部分文字列の可変長連鎖文書文字列特定情報
    及び可変長連鎖文書文字列位置情報から、前記可変長連
    鎖検索文字列に類似する可変長連鎖文書文字列を特定す
    る手段と、(h) 前記特定された可変長連鎖文書文字列の
    文書文字列特定情報から、前記特定された可変長連鎖文
    書文字列の存在する文書文字列を特定する手段と、 を含む装置。
  14. 【請求項14】記憶装置を含み、複数の可変長連鎖を含
    む文書からコンピュータ検索用のファイルをコンピュー
    タによってアクセス可能な記憶装置に作成する装置であ
    って、(a) 前記文書から、第1の可変長連鎖を抜き出す
    手段と、(b) 前記第1の可変長連鎖が出現する前記文書
    中の位置情報を格納する手段と、(c) 前記第1の可変長
    連鎖から第1の拡張固定長連鎖を抜き出す手段と、(d)
    前記第1の拡張固定長連鎖が存在する前記第1の可変長
    連鎖を特定する情報と、前記第1の拡張固定長連鎖が存
    在する前記第1の可変長連鎖中の位置情報を格納する手
    段と、 を含む装置。
  15. 【請求項15】複数の可変長連鎖を含む文書からコンピ
    ュータ検索用のファイルをコンピュータによってアクセ
    ス可能な記憶装置に作成する装置であって、(a) 前記文
    書から、前記複数の可変長連鎖を抜き出して文字連鎖フ
    ァイルに格納する手段と、(b) 前記複数の可変長連鎖が
    出現する前記文書中の位置情報を位置情報ファイルに格
    納する手段と、(c) 前記複数の可変長連鎖の各々の可変
    長連鎖から長さM文字の(Mは、1以上の予定の整数)
    拡張固定長連鎖を抜き出して拡張文字連鎖ファイルに格
    納する手段と、(d) 前記拡張固定長連鎖が存在する前記
    可変長連鎖を特定する情報と、前記拡張固定長連鎖が存
    在する前記可変長連鎖中の位置情報を拡張位置情報ファ
    イルに格納する手段と、 を含む装置。
  16. 【請求項16】第1の可変長連鎖を含む第1の文字列
    と、第2の可変長連鎖を含む第2の文字列の類似度をコ
    ンピュータを用いて計算する装置であって、(a) 前記第
    1の可変長連鎖文字列から、長さN文字の(Nは、1以
    上の予定の整数)部分文字列につき、前記第2の可変長
    連鎖中で一致する部分文字列を探索する手段と、(b) 前
    記第1の可変長連鎖の部分文字列の開始位置を1つずら
    した長さN文字の部分文字列につき、前記第2の可変長
    連鎖中で一致する部分文字列を探索する手段と、(c) 前
    記手段(b)を繰り返すことにより、前記第2の可変長連
    鎖において、前記第1の可変長連鎖と一致する文字を識
    別する可変長連鎖一致文字識別情報を導出する手段と、
    (d) 前記可変長連鎖一致文字識別情報と前記第1の可変
    長連鎖文字数に基づいて、前記第1の可変長連鎖と、前
    記第2の可変長連鎖の可変長連鎖一致度を算出する手段
    と、(e) 前記可変長連鎖一致度に基づいて前記第1の文
    字列の類似度を算出する手段と、 を含む装置。
  17. 【請求項17】第1の可変長連鎖を含む第1の文字列
    と、第2の可変長連鎖を含む第2の文字列の類似度をコ
    ンピュータを用いて計算する装置であって、(a1) 前記
    第2の可変長連鎖文字列の内容を管理する文字連鎖ファ
    イルと、(a2) 前記第2の可変長連鎖文字列の存在する
    第2の文字列を特定する文字列特定情報と、前記第2の
    可変長連鎖文字列の存在する第2の文字列内の位置を示
    す文字列位置情報を管理する位置情報ファイルと、(a3)
    前記第2の可変長連鎖文字列から抜き出した、長さM
    文字の(Mは、1以上の予定の整数)第2の部分文字列
    を管理する拡張文字連鎖ファイルと、(a4) 前記第2の
    部分文字列の存在する第2の可変長連鎖文字列を特定す
    る可変長連鎖文字列特定情報と、前記第2の部分文字列
    の存在する第2の可変長連鎖文字列内の位置を示す可変
    長連鎖文字列位置情報を管理する拡張位置情報ファイル
    と、を格納する記憶装置と、(b) 前記第1の可変長連鎖
    文字列から抜き出した長さN文字の(Nは、1以上の予
    定の整数)第1の部分文字列に一致する第2の部分文字
    列を探索する手段と、(c) 前記第1の可変長連鎖文字列
    の第1の部分文字列の開始位置を1つずらした長さN文
    字の第1の部分検索文字列と一致する第2の部分文字列
    を探索する手段と、(d) 前記手段(c)を繰り返し、前記
    第1の可変長連鎖文字列の第1の部分文字列と一致する
    第2の部分文字列の集合を特定する手段と、(e) 前記第
    2の部分文字列の集合に属する第2の部分文字列の可変
    長連鎖文字列特定情報及び可変長連鎖文字列位置情報か
    ら、前記第1の可変長連鎖文字列に予定の可変長連鎖一
    致度以上で一致する可能性のある可変長連鎖文字列候補
    を特定する手段と、(f) 前記第1の可変長連鎖文字列と
    前記可変長連鎖文字列候補の可変長連鎖一致度を計算す
    る手段と、(g) 前記可変長連鎖文字列候補の中から、前
    記第1の可変長連鎖文字列と予定の可変長連鎖一致度以
    上の可変長連鎖一致度を有する第2の可変長連鎖文字列
    を選択する手段と、(h) 前記選択された第2の可変長連
    鎖文字列の文字列特定情報から、前記選択された第2の
    可変長連鎖文字列の存在する第2の文書文字列を特定す
    る手段と、(i) 前記可変長連鎖一致度に基づいて、前記
    選択された第2の可変長連鎖文字列の存在する第2の文
    字列と前記第1の可変長連鎖検字列を含む検索文字列と
    の文字列類似度を計算する手段と、 を含む装置。
  18. 【請求項18】可変長連鎖文書文字列を含み、コンピュ
    ータ処理によって検索可能に記憶された文書において、
    可変長連鎖検索文字列を含む検索文字列に対し予定の類
    似度以上の類似する文書文字列があらわれる箇所を見出
    す装置であって、 (a) 前記可変長連鎖検索文字列の先頭から、長さM文字
    の(Mは、1以上の予定の整数)部分文字列につき、前
    記可変長連鎖文書文字列で一致する開始位置及び終了位
    置を見出す(以下、その開始位置及び終了位置によって
    決定されるM文字の長さの部分文字列を有効一致文字列
    と称する)手段と、 (b)i番目の有効一致文字列の文書中での開始位置を s
    (D, i) i番目の有効一致文字列の文書中での終了位置を e(D,
    i) i番目の有効一致文字列の検索したい文字列中での開始
    位置を s(C, i) i番目の有効一致文字列の検索したい文字列中での終了
    位置を e(C, i) として、 e(D, i) + 1 ≦ s(D, i+1) ≦ e(D, i) + L + 1 且つ s(C, i+1) > e(C,i) - (M-1) (この式で、Lは、1以上の予定の整数)という条件を
    満たすi+i番目の有効一致文字列を見出す手段と、(c)
    前記有効一致文字列が見つかる限り、前記手段(b)を継
    続する手段と、(d) 少なくとも、前記可変長連鎖文書文
    字列における最初の有効一致文字列の開始位置から、前
    記可変長連鎖文書文字列における最後の有効一致文字列
    の終了位置までの間の文字列における、有効一致文字列
    の存在情報に基づき、前記可変長連鎖検索文字列と、前
    記可変長連鎖文書文字列における最初の有効一致文字列
    の開始位置から、前記可変長連鎖文書文字列における最
    後の有効一致文字列の終了位置までの間の文字列との間
    の類似度を計算する手段と、(e) 前記計算された類似度
    が、前記予定の類似度以上であることに応答して、前記
    可変長文書文字列を特定する手段と、(f) 前記特定され
    た可変長連鎖文書文字列を含む文書文字列を特定する手
    段と、 を含む装置。
  19. 【請求項19】コンピュータ処理によって検索可能に記
    憶された文書中で、可変長連鎖検索文字列を含む検索文
    字列と類似する可変長連鎖文書文字列を含む文書文字列
    を検索するためのプログラムを格納するコンピュータに
    よって読み取り可能な媒体であって、 該プログラムは、(a) 前記可変長連鎖文書文字列と、前
    記可変長連鎖文書文字列の存在する文書文字列を特定す
    る文書文字列特定情報を関連付けることを前記コンピュ
    ータに指示するプログラムコード手段と、(b) 前記可変
    長連鎖文書文字列から、長さM文字の(Mは、1以上の
    予定の整数)部分文書文字列と、前記部分文書文字列の
    存在する可変長連鎖文書文字列を特定する可変長連鎖文
    書文字列特定情報を関連付けることを前記コンピュータ
    に指示するプログラムコード手段と、(c) 前記可変長連
    鎖検索文字列から抜き出した長さN文字の(Nは、1以
    上の予定の整数)部分検索文字列に一致する部分文書文
    字列を探索することを前記コンピュータに指示するプロ
    グラムコード手段と、(d) 前記部分検索文字列に一致す
    る部分文書文字列の可変長連鎖文書文字列特定情報か
    ら、前記部分検索文字列に一致する部分文書文字列に関
    連する可変長連鎖文書文字列を特定することを前記コン
    ピュータに指示するプログラムコード手段と、(e) 前記
    特定された可変長連鎖文書文字列の文書文字列特定情報
    から、前記特定された可変長連鎖文書文字列の存在する
    文書文字列を特定することを前記コンピュータに指示す
    るプログラムコード手段と、 を含むことを特徴とする媒体。
  20. 【請求項20】コンピュータ処理によって検索可能に記
    憶された文書中で、可変長連鎖検索文字列を含む検索文
    字列と類似する可変長連鎖文書文字列を含む文書文字列
    を検索するためのプログラムを格納するコンピュータに
    よって読み取り可能な媒体であって、 該プログラムは、(a) 前記可変長連鎖文書文字列と、前
    記可変長連鎖文書文字列の存在する文書文字列を特定す
    る文書文字列特定情報が関連付けられており、前記可変
    長連鎖文書文字列から、長さM文字の(Mは、1以上の
    予定の整数)部分文書文字列と、前記部分文書文字列の
    存在する可変長連鎖文書文字列を特定する可変長連鎖文
    書文字列特定情報が関連付けられている索引ファイル中
    で、前記可変長連鎖検索文字列から抜き出した長さN文
    字の(Nは、1以上の予定の整数)部分検索文字列に一
    致する部分文書文字列を探索することを前記コンピュー
    タに指示するプログラムコード手段と、(b) 前記部分検
    索文字列に一致する部分文書文字列の可変長連鎖文書文
    字列特定情報から、前記部分検索文字列に一致する部分
    文書文字列に関連する可変長連鎖文書文字列を特定する
    ことを前記コンピュータに指示するプログラムコード手
    段と、(c) 前記特定された可変長連鎖文書文字列の文書
    文字列特定情報から、前記特定された可変長連鎖文書文
    字列の存在する文書文字列を特定することを前記コンピ
    ュータに指示するプログラムコード手段と、 を含むことを特徴とする媒体。
  21. 【請求項21】記憶装置を含み、複数の可変長連鎖を含
    む文書からコンピュータ検索用のファイルをコンピュー
    タによってアクセス可能な記憶装置に作成するためのプ
    ログラムを格納するコンピュータによって読み取り可能
    な媒体であって、 該プログラムは、(a) 前記文書から、第1の可変長連鎖
    を抜き出すことを前記コンピュータに指示するプログラ
    ムコード手段と、(b) 前記第1の可変長連鎖が出現する
    前記文書中の位置情報を格納することを前記コンピュー
    タに指示するプログラムコード手段と、(c) 前記第1の
    可変長連鎖から第1の拡張固定長連鎖を抜き出すことを
    前記コンピュータに指示するプログラムコード手段と、
    (d) 前記第1の拡張固定長連鎖が存在する前記第1の可
    変長連鎖を特定する情報と、前記第1の拡張固定長連鎖
    が存在する前記第1の可変長連鎖中の位置情報を格納す
    ることを前記コンピュータに指示するプログラムコード
    手段と、 を含むことを特徴とする媒体。
  22. 【請求項22】コンピュータ検索用のファイルを格納す
    るコンピュータによって読み取り可能な媒体であって、
    (a) 複数の可変長連鎖を含む文書から、前記複数の可変
    長連鎖を抜き出して格納した文字連鎖ファイルと、(b)
    前記複数の可変長連鎖が出現する前記文書中の位置情報
    を管理する位置情報ファイルと、(c) 前記複数の可変長
    連鎖の各々の可変長連鎖から長さM文字の(Mは、1以
    上の予定の整数)拡張固定長連鎖を抜き出して格納した
    拡張文字連鎖ファイルと、(d) 前記拡張固定長連鎖が存
    在する前記可変長連鎖を特定する情報と、前記拡張固定
    長連鎖が存在する前記可変長連鎖中の位置情報を格納し
    た拡張位置情報ファイルと、 を含む媒体。
JP06865596A 1996-03-25 1996-03-25 情報検索方法、情報検索装置 Expired - Fee Related JP3160201B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP06865596A JP3160201B2 (ja) 1996-03-25 1996-03-25 情報検索方法、情報検索装置
KR1019960065808A KR100272389B1 (ko) 1996-03-25 1996-12-14 정보검색 방법, 정보검색 장치 및 정보검색 프로그램을 격납하는 매체
US08/805,846 US5992737A (en) 1996-03-25 1997-03-03 Information search method and apparatus, and medium for storing information searching program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06865596A JP3160201B2 (ja) 1996-03-25 1996-03-25 情報検索方法、情報検索装置

Publications (2)

Publication Number Publication Date
JPH09259140A true JPH09259140A (ja) 1997-10-03
JP3160201B2 JP3160201B2 (ja) 2001-04-25

Family

ID=13379943

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06865596A Expired - Fee Related JP3160201B2 (ja) 1996-03-25 1996-03-25 情報検索方法、情報検索装置

Country Status (3)

Country Link
US (1) US5992737A (ja)
JP (1) JP3160201B2 (ja)
KR (1) KR100272389B1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001043228A (ja) * 1999-07-28 2001-02-16 Ricoh Co Ltd 文書検索システム、文書検索方法及び記憶媒体
US6260051B1 (en) 1997-07-11 2001-07-10 Matsushita Electric Industrial Co., Ltd. Recording medium and character string collating apparatus for full-text character data
US6338061B1 (en) 1998-01-14 2002-01-08 Nec Corporation Search method search apparatus, and recording medium recording program
JP2003319285A (ja) * 2002-04-23 2003-11-07 Nec Corp 番組検索装置、番組映像処理装置及びプログラム

Families Citing this family (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6533822B2 (en) * 1998-01-30 2003-03-18 Xerox Corporation Creating summaries along with indicators, and automatically positioned tabs
US6304872B1 (en) * 1998-08-13 2001-10-16 Tornado Technology Co. Ltd. Search system for providing fulltext search over web pages of world wide web servers
US6615240B1 (en) 1998-12-18 2003-09-02 Motive Communications, Inc. Technical support chain automation with guided self-help capability and option to escalate to live help
US6694314B1 (en) * 1998-12-18 2004-02-17 Motive Communications, Inc. Technical support chain automation with guided self-help capability via a system-supplied search string
US6477531B1 (en) 1998-12-18 2002-11-05 Motive Communications, Inc. Technical support chain automation with guided self-help capability using active content
US6970894B2 (en) * 1998-12-30 2005-11-29 Intel Corporation Method for extracting information from a file using a printer driver
US6542898B1 (en) 1999-05-12 2003-04-01 Motive Communications, Inc. Technical support chain automation with guided self-help capability using active content developed for specific audiences
US6453462B1 (en) 1999-06-29 2002-09-17 International Business Machines Corporation Mock translation system, method, and program using multi-byte placeholder characters to test translatability of software that will display multi-byte languages
US6507812B1 (en) 1999-06-29 2003-01-14 International Business Machines Corporation Mock translation method, system, and program to test software translatability
US6425123B1 (en) * 1999-06-29 2002-07-23 International Business Machines Corporation System, method, and program for testing translatability of software by using english multi-byte transliteration creating double-wide characters
US6444072B1 (en) * 1999-08-11 2002-09-03 Southpac Trust International Process for producing holographic material
US6459810B1 (en) * 1999-09-03 2002-10-01 International Business Machines Corporation Method and apparatus for forming variant search strings
US7225181B2 (en) * 2000-02-04 2007-05-29 Fujitsu Limited Document searching apparatus, method thereof, and record medium thereof
US6658598B1 (en) 2000-02-17 2003-12-02 Motive Communications, Inc. Technical support chain automation with guided self-help capability using active content assertions
WO2001067351A1 (en) * 2000-03-09 2001-09-13 The Web Access, Inc. Method and apparatus for performing a research task by interchangeably utilizing a multitude of search methodologies
JP4649760B2 (ja) * 2000-05-31 2011-03-16 ソニー株式会社 コンテンツ・コピー管理システム及び方法、情報処理装置及び方法、並びに、記憶媒体
US8131867B1 (en) 2000-06-01 2012-03-06 Qualcomm Incorporated Dynamic layer congestion control for multicast transport
GB2362972A (en) * 2000-06-02 2001-12-05 Res Summary Com An internet based searchable database for up to date financial executive summaries with links to full documents
US6486803B1 (en) 2000-09-22 2002-11-26 Digital Fountain, Inc. On demand encoding with a window
US6411223B1 (en) * 2000-10-18 2002-06-25 Digital Fountain, Inc. Generating high weight encoding symbols using a basis
NZ534595A (en) * 2000-10-23 2005-12-23 Pctfiler Holdings Pty Ltd System and method of attracting and lodging PCT national phase applications
US7895350B1 (en) 2001-07-05 2011-02-22 Motive, Inc. N-way data stream splitter
JP3695581B2 (ja) * 2001-08-08 2005-09-14 ソニー株式会社 記録装置および記録方法、記録媒体、並びに、電子カメラ
US7003530B2 (en) * 2002-03-22 2006-02-21 General Motors Corporation Algorithm for selecting audio content
US8335779B2 (en) * 2002-08-16 2012-12-18 Gamroe Applications, Llc Method and apparatus for gathering, categorizing and parameterizing data
US7885963B2 (en) * 2003-03-24 2011-02-08 Microsoft Corporation Free text and attribute searching of electronic program guide (EPG) data
US6973654B1 (en) 2003-05-27 2005-12-06 Microsoft Corporation Systems and methods for the repartitioning of data
US7403762B2 (en) 2004-10-29 2008-07-22 Skyhook Wireless, Inc. Method and system for building a location beacon database
US7386570B2 (en) * 2005-03-31 2008-06-10 International Business Machines Corporation Method, system and program product for providing high performance data lookup
US20080195601A1 (en) * 2005-04-14 2008-08-14 The Regents Of The University Of California Method For Information Retrieval
CA2606459A1 (en) * 2005-05-03 2006-11-09 Pctfiler Holdings Pty Ltd Computer system for distributing a validation instruction message
US20070124295A1 (en) * 2005-11-29 2007-05-31 Forman Ira R Systems, methods, and media for searching documents based on text characteristics
US7698258B2 (en) * 2006-06-02 2010-04-13 Microsoft Corporation Searchable storage system
US7917604B1 (en) * 2007-06-29 2011-03-29 Emc Corporation Techniques for operating a data storage assembly via a series of web pages and a commit-at-the-end, wizard-style behavior
KR100882864B1 (ko) * 2007-11-26 2009-02-10 한국전자통신연구원 디지털 포렌식 시스템을 위한 대용량 데이터 고속 검색시스템 및 방법
US7925652B2 (en) * 2007-12-31 2011-04-12 Mastercard International Incorporated Methods and systems for implementing approximate string matching within a database
JP5251938B2 (ja) * 2010-08-31 2013-07-31 株式会社日立製作所 プラントの制御装置及び火力発電プラントの制御装置
JP5910134B2 (ja) * 2012-02-07 2016-04-27 カシオ計算機株式会社 テキスト検索装置及びプログラム
WO2013179348A1 (ja) * 2012-05-31 2013-12-05 富士通株式会社 インデックス生成プログラム及び検索プログラム
KR101516573B1 (ko) * 2013-07-26 2015-05-04 한국전자통신연구원 해시 알고리즘에서의 압축 연산을 수행하기 위한 장치 및 방법
US10594817B2 (en) * 2017-10-04 2020-03-17 International Business Machines Corporation Cognitive device-to-device interaction and human-device interaction based on social networks
US10528556B1 (en) * 2017-12-31 2020-01-07 Allscripts Software, Llc Database methodology for searching encrypted data records
KR102369960B1 (ko) * 2021-07-30 2022-03-04 쿠팡 주식회사 사용자 계정의 존재 여부에 기초하여 정보를 제공하는 전자 장치 및 그 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778223A (en) * 1992-03-17 1998-07-07 International Business Machines Corporation Dictionary for encoding and retrieving hierarchical data processing information for a computer system
US5524201A (en) * 1993-11-03 1996-06-04 Apple Computer, Inc. Method of preparing an electronic book for a computer system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6260051B1 (en) 1997-07-11 2001-07-10 Matsushita Electric Industrial Co., Ltd. Recording medium and character string collating apparatus for full-text character data
US6338061B1 (en) 1998-01-14 2002-01-08 Nec Corporation Search method search apparatus, and recording medium recording program
JP2001043228A (ja) * 1999-07-28 2001-02-16 Ricoh Co Ltd 文書検索システム、文書検索方法及び記憶媒体
JP2003319285A (ja) * 2002-04-23 2003-11-07 Nec Corp 番組検索装置、番組映像処理装置及びプログラム

Also Published As

Publication number Publication date
JP3160201B2 (ja) 2001-04-25
US5992737A (en) 1999-11-30
KR970066946A (ko) 1997-10-13
KR100272389B1 (ko) 2000-12-01

Similar Documents

Publication Publication Date Title
JP3160201B2 (ja) 情報検索方法、情報検索装置
JP3113814B2 (ja) 情報検索方法及び情報検索装置
US6173251B1 (en) Keyword extraction apparatus, keyword extraction method, and computer readable recording medium storing keyword extraction program
US4775956A (en) Method and system for information storing and retrieval using word stems and derivative pattern codes representing familes of affixes
US5745745A (en) Text search method and apparatus for structured documents
JP2742115B2 (ja) 類似文書検索装置
JPH0424869A (ja) 文書処理システム
JP2001034623A (ja) 情報検索方法と情報検索装置
US20070179932A1 (en) Method for finding data, research engine and microprocessor therefor
JP2669601B2 (ja) 情報検索方法及びシステム
JPH0484271A (ja) 文書内情報検索装置
JPH0782504B2 (ja) 情報検索処理方式および検索ファイル作成装置
JPH0869476A (ja) 検索システム
JPH06282587A (ja) 文書の自動分類方法及び装置並びに分類用の辞書作成方法及び装置
JP2519129B2 (ja) マルチキ―ワ―ド情報検索処理方式および検索ファイル作成装置
JP2519130B2 (ja) マルチキ―ワ―ド情報検索処理方式および検索ファイル作成装置
JPS61248160A (ja) 文書情報登録方式
JPH09293078A (ja) 情報検索方法、情報検索装置及び情報検索プログラムを格納する記憶媒体
JPH09293079A (ja) 情報検索方法、情報検索装置及び情報検索プログラムを格納する記憶媒体
JPH07105237A (ja) 索引作成方法およびその装置と文書検索装置
JPH10177575A (ja) 語句抽出装置および方法、情報記憶媒体
JPH03150668A (ja) 検索システムの入力文字列正規化方式
JPH04215181A (ja) 情報検索処理方式および検索ファイル作成装置
WO1992009960A1 (en) Data retrieving device
JPH06223107A (ja) 辞書検索装置

Legal Events

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