JP3665112B2 - 文字列検索方法及び装置 - Google Patents
文字列検索方法及び装置 Download PDFInfo
- Publication number
- JP3665112B2 JP3665112B2 JP24732795A JP24732795A JP3665112B2 JP 3665112 B2 JP3665112 B2 JP 3665112B2 JP 24732795 A JP24732795 A JP 24732795A JP 24732795 A JP24732795 A JP 24732795A JP 3665112 B2 JP3665112 B2 JP 3665112B2
- Authority
- JP
- Japan
- Prior art keywords
- search
- file
- character string
- character
- keyword
- 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
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【発明の属する技術分野】
本発明は、与えられた検索キーワードに応じて検索を行う情報検索における文字列検索方法及び装置に関する。
【0002】
【従来の技術】
国語辞書や英和辞書、百科事典類などはこれまで紙媒体によって刊行されてきたが、近年、コンピュータ可読型の記憶媒体、特にCD−ROMなどの読み出し専用記憶媒体に格納された形態でこれら辞書、事典類が流通するようになってきている。こういったCD−ROM版の辞書・事典(電子化された辞書・事典)では、検索時間の短縮を目的として、インデックスファイルを設けるのが一般的である。インデックスファイルは、検索対象となる語(見出し語ないし索引語)ごとに、その語に対応する物件(辞書などであれば説明文)がCD−ROM中のどこに所在するかの情報(いわゆるポインタ)を記述したファイルであり、インデックスファイルに対して文字列検索を行うことにより、すなわち利用者の入力した検索キーワードに一致する見出し語ないし索引語がインデックスファイル中にあるかを調べることによって、検索対象の物件に短時間でアクセスすることが可能になる。
【0003】
なお、国語辞書の場合には、見出し語とその見出し語に対する物件(説明文)が1対1で対応すると考えることができるが、百科事典などの場合には、1つの索引語に複数の物件(説明文)が対応することがありうる。また、特許文献などの全文データベースを格納したCD−ROMにおいても、例えば統制語方式により、検索に使用されるキーワードに基づいてインデックスファイルを予め構成しておくことにより、インデックスファイルに登録されているキーワードについては短時間で全文検索を行うことが可能になる。
【0004】
ところで、ファイル中に検索キーワードと一致する文字列があるかどうかを検索する文字列検索方法として、検索キーワードを分割して一群の連語を生成し、ファイル中の文字列と一群の連語との一致度を求めことにより、文字列を検索する方法があり、この方法は広く用いられている。連語とは、検索キーワード中で隣接する文字の組み合わせで構成された1あるいは数文字の長さの文字の並びのことである。検索キーワードのままであるとその長さが一定しないので処理が複雑になるが、このように連語に分割して検索することにより、大量のデータに対して高速での検索処理が可能になる。
【0005】
ここで、この連語を用いた文字列検索方法について、図13のフローチャートを用いて説明する。ここでは、連語の文字長が2文字であり、検索キーワードとして「あいうえお」が選ばれるものとする。
【0006】
まず、利用者によって検索キーワード(ここでは「あいうえお」)が入力され(ステップ91)、入力された検索キーワードが連語長2文字の連語「あい」、「いう」、「うえ」、「えお」に分割される(ステップ92)。続いて、各連語に関して対象とするファイルを検索してファイル中の各項目にその連語が含まれているかを調べ、連語と一致した文字列をカウントする(ステップ93)。全ての連語についての検索が終ったかを判断し(ステップ94)、未検索の連語があればステップ93に戻り、全ての連語についての検索が終っていれば、文字列ごとにカウント数を合計して一致度を算出し(ステップ95)、一致度が100%である文字列を出力し(ステップ96)、処理を終了する。
【0007】
一致度は、検索キーワードと文字列との一致の度合を示す尺度であって、各文字列ごとに、
一致度(%)=[(カウント数の合計)/(連語の種類)]×100
なる式で算出される。
【0008】
ここでは、連語長が2文字で検索キーワードが「あいうえお」であるので、連語の種類は「あい」、「いう」、「うえ」、「えお」の4種類である。表1は、各種の文字列に対する一致度を示した表であり、表中の○印はその連語がその文字列に含まれていることを示している。文字列に対する一致度が100%である場合に、その文字列が検索キーワードと同一の文字列であることが多いので、検索者に対しては一致度が100%である文字列が出力される。
【0009】
【表1】
ところで、実際の文字列検索の局面では、検索キーワードと完全に一致する文字列のみを検索(完全一致検索)したのでは、利用者の検索要求に対して不十分であることがある。例えば、辞書の見出し項目の検索を例に挙げれば、表記のゆれなどがある場合には利用者の入力した検索キーワードと辞書での見出し項目が一致しないことがあり、あるいは、類似の単語を網羅的に検索したい場合もあり、これらの場合には、完全一致の項目のみを検索したのでは目的とする項目に達することはできず、曖昧検索を行う必要がある。また、ある部分文字列で始まる全ての単語、ある部分文字列で終る全ての単語、ある部分文字列を含む全ての単語を検索したい場合には、それぞれ、先頭一致検索、後方一致検索、部分一致検索を行う必要がある。なお、以下の説明において、完全一致検索、先頭一致検索、後方一致検索、部分一致検索を総称して一致検索とする。また、完全一致検索、先頭一致検索、後方一致検索、部分一致検索、曖昧検索、一致検索などの別を検索種別という。
【0010】
上述した連語を利用した文字列検索方法では、一致度があるしきい値以上であれば100%未満であっても検索されたとすることにより、検索キーワードに類似した文字列を検索することができ、曖昧検索を実行することができる。
【0011】
【発明が解決しようとする課題】
しかしながら、上述した連語に基づく文字列検索方法には、完全一致検索、先頭一致検索、後方一致検索、部分一致検索、曖昧検索などを含む多様な検索種別に的確に対応するのには不十分であるという問題点がある。連語による方法では、一致検索において検索キーワードと一致しないものも検出すること(過検出)が起こり得るが、過検出を少なくして高速で文字列検索処理を行うために、まだ改善の余地がある。
【0012】
また、日本語の場合、表記用文字としてかな文字と漢字とが併存するので、同一項目に対して利用者が入力する検索キーワードも多種類にわたることがある。そこで、辞書における索引語として、辞書単語のほかにその読みを登録する(索引語「富士山」に対して、読み「ふじさん」を登録する)ことが考えられるが、その場合であっても、例えば項目「富士山」に対する検索キーワードとして、「ふじ山」、「富士山」、「ふじさん」、「ふ士山」などの入力が考えられる。連語を用いた従来の方法では、「ふじ山」や「ふ士山」の入力に対して、目的とする文字列を検索することは容易ではない。
【0013】
本発明の目的は、完全一致検索や曖昧検索などの多様な検索種別での検索を過検索が少なくて高速で実行でき、かつ任意に漢字とかなが混じりあったような検索キーワードでの検索も可能な文字列検索方法及び装置を提供することにある。
【0014】
【課題を解決するための手段】
本発明の文字列検索方法は、入力した検索キーワードと指定された検索種別に基づいてファイル中から検索キーワードに対応する項目を探索する文字列検索方法において、利用者が入力した検索種別を判別し、利用者が入力した検索キーワードを構成する文字の字種について、検索キーワードがかな文字のみからなりかつ検索種別が一致検索である場合には、文字長が2である連語を検索キーワードから順次抽出し、それ以外の場合には、文字長が1である連語を検索キーワードから順次抽出し、ファイル中の各項目の文字列と前記一群の連語とを比較して当該文字列に対する一致度を算出し、一致度がしきい値以上である項目を検索された項目とすることを特徴とする。
【0015】
本発明の文字列検索方法は、検索キーワードの文字の字種と検索種別とに応じて異なる生成規則による連語を検索キーワードから抽出しようとするものである。ここで字種とは、漢字、かな文字などの種類の別を指す。このように生成規則を変化させることにより、多様な検索種別での検索を過検索が少なくて高速で実行でき、かつ任意に漢字とかなが混じりあったような検索キーワードでの検索も可能になる。
【0016】
具体的には、例えば、検索キーワードがかな文字のみからなりかつ検索種別が一致検索である場合には、文字長が2である連語を検索キーワードから順次抽出し、それ以外の場合には、文字長が1である連語を検索キーワードから順次抽出する。一致検索の際に検索キーワードがかな文字のみで構成されている場合に連語長を2文字とすることにより、過検出が抑止され、また、その他の場合に連語長を1文字とすることにより、曖昧検索などを的確に行うことが可能になる。
【0017】
さらに、任意に漢字とかな文字が混っているような検索キーワードに対応するため、ファイル中の各項目には、それぞれ、当該項目の読みに対応するかな文字列が付加するようにすることが望ましい。上述のように、漢字かな混じりの検索キーワードに対しては連語の文字長を短く、例えば1とすることによって、任意に漢字かな混じりとなっている検索キーワードに対しても有効に文字列検索を行うことが可能になる。
【0018】
本発明の文字列検索装置は、入力した検索キーワードと指定された検索種別に基づいてファイル中から前記検索キーワードに対応する項目を探索する文字列検索装置において、検索キーワードと検索種別としきい値を入力する入力手段と、利用者が入力した検索種別を判別するとともに利用者が入力した検索キーワードを構成する文字の字種について、検索キーワードがかな文字のみからなりかつ検索種別が一致検索である場合には、文字長が2である連語を検索キーワードから順次抽出し、それ以外の場合には、文字長が1である連語を生成する連語生成手段と、ファイル中の各項目の文字列と連語とを比較して当該文字列に対する一致度を算出する処理手段とを有し、一致度が入力されたしきい値以上である項目を検索された項目とすることを特徴とする。
【0019】
【発明の実施の形態】
次に、本発明の望ましい実施の形態について、図面を参照して説明する。図1は、本発明の実施の一形態の情報検索システムを説明するブロック図である。
【0020】
この情報検索システムは、辞書や事典類を内容とするCD−ROM20と、利用者の入力した検索キーワードに応じてCD−ROM20を検索し検索結果を表示する処理装置10とによって構成されている。後述するように、CD−ROM20の検索に際しては、インデックスデータファイル30中の項目に対して本発明の方法によって文字列検索が行われており、処理装置10は、本発明の文字列検索装置としても機能する。
【0021】
処理装置10には、CD−ROM20を装着して必要なデータを読み出すためのCD−ROMドライブ11と、CPUなどで構成され検索処理やCD−ROMドライブ11の動作の制御などを行うための処理部12と、検索処理に必要なファイルを一時的に格納するためのファイル格納用メモリ13と、タッチパネルやキーボードなどからなり利用者からの検索要求、検索キーワード、検索種別、しきい値などが入力する入力部14と、液晶パネルなどからなり検索結果を利用者に対して表示するための表示部15とが設けられている。処理部12には、CD−ROM20中あるいはファイル格納用メモリ13内のファイルに対して連語による検索を行う検索部16と、入力した検索キーワードから検索条件に応じて連語を生成する連語生成部17と、一致度を算出してしきい値と比較する比較部18が設けられている。また、表示部15は、外部のテレビジョン受像機に対し、検索結果をテレビジョン画像として表示するための映像信号を出力するものであってもよい。
【0022】
CD−ROM20の記憶領域の構成が図2に示されている。ここでは、CD−ROM20がCD−ROM版の辞書である例が示されているが、別に辞書に限定される必要はなく、百科事典類、写真集、旅行ガイドブック、各種ハンドブック・規格書、論文集、特許公報類など、検索を行って所望のデータにアクセスすることを目的とするものであれば、どのようなものであってもよい。
【0023】
CD−ROM20の格納領域は、検索処理プログラムが格納される処理プログラム格納部21と、インデックスファイル類が格納されるインデックスファイル格納部22と、辞書の説明文(物件)が格納される辞書データ本体格納部23とに分けられている。本実施の形態では、処理装置10の処理部12で走らせるための検索処理プログラム自体を検索対象のCD−ROM20内に格納し、CD−ROM20がCD−ROMドライブ11に装着された時点で、検索処理プログラムが処理装置10の処理部12に読み込まれるようにしている。
【0024】
本実施の形態では、図3に示すように、インデックスファイルとしてインデックスデータファイル30を使用するとともに、検索の高速化のために、検索用指示ファイル31と検索用倒置ファイル32を使用している。検索用指示ファイル31と検索用倒置ファイル32は、インデックスデータファイル30から学習工程を経て生成されるファイルである。これらインデックスデータファイル30、検索用指示ファイル31及び検索用倒置ファイル32はいずれもインデックスファイル格納部22内に格納され、このうち、検索用指示ファイル31は検索時には処理装置10のファイル格納用メモリ13内に読み込まれるようになっている。また、説明文ごとに連続番号でインデックス番号が付与されており、索引語からインデックス番号を知ることによって、CD−ROM20中での対応する説明文の格納場所に対して即座にアクセスすることができるようになっている。以下、各ファイル30〜32について説明する。
【0025】
インデックスデータファイル30は、図4に示すように、CD−ROM20内の説明文(物件)にアクセスするため基本となるファイルであって、説明文ごとに、その説明文に対するインデックス番号と索引語(見出し語)とCD−ROM20内での格納位置とを記述したものである。説明文は索引語の読みの五十音順で配置されており、各説明文に対して0から始まる連続番号であるインデックス番号が、重複しないように付与されている。各索引語は「読み」と「実体」とに分かれており、「読み」にはその索引語の読みが格納され、「実体」にはその索引語の実際の表記(漢字やアルファベット)が格納されている。なお、この実施の形態ではひらがなとかたかなの区別、清音と濁音、半濁音の区別は行っておらず、また、ひらがなのみで表記される索引語については、「実体」には何も格納していない。
【0026】
検索用倒置ファイル32は、いわゆる倒置(インバーテッド)ファイルとして構成されており、曖昧検索などを実現するために、索引語(キーワード)を1文字あるいは2文字の連語(例えば、「あ」,「い」,「ああ」,「山」)に分解し、連語をキーとしてその連語を含む項目のインデックス番号が参照できるように構成されている。連語とは本来は2文字以上の文字列集団を指すが、本明細書においては、1文字のものも連語と呼ぶことにする。索引語を連語に分解しているので、1索引語に1つの説明文しか対応しない場合(国語辞書などの場合)であっても1つの連語には複数のインデックス番号が対応し、したがって、連語ごとにレコードを構成するとすれば、検索用倒置ファイル32は可変長レコードのファイルであるといえる。以下、検索用倒置ファイルにおける連語ごとのインデックス番号の並びを連語のレコードと呼ぶ。なお、検索用指示ファイル31が設けられているので、検索用倒置ファイル32には、連語そのものを格納しておく必要はない。一方、検索用指示ファイル31は、連語をキーとして、検索用倒置ファイルにおいてその連語のレコードがどこにあるかを指示するファイルである。したがって、連語をごとにレコードを構成するとするすれば、検索用指示ファイルは固定長のファイルであるといえる。後述するように、実際に検索を行う場合には、それに先立って検索用指示ファイル31がCD−ROM20から処理装置10側に読み出される。
【0027】
次に、インデックスデータファイル30から検索用指示ファイル31及び検索用倒置ファイル32を生成する学習工程について、図5を用いて説明する。まず、各索引語から1文字の連語としての構成文字を抽出する。「読み」の部分については、2文字の連語(構成文字列)も抽出する。例えば、見出し語「(読み)あそさん、(実体)阿蘇山」からは、「あ」,「そ」,「さ」,「ん」,「あそ」,「そさ」,「さん」,「阿」,「蘇」,「山」が抽出される。そして、これら各構成文字がどのインデックス番号の見出し語に含まれているかを求め、そのインデックス番号を保存する。つまり、構成文字(列)をキーとしインデックス番号を並びとするインバーテッドファイルを生成する。そして、ページング処理を実行し、インデックス番号の代りにページング後のインデックス番号が記録されるようにする。ページングとは、検索速度の向上を目的として、一連のインデックス番号を複数のページに分けることである。例えば、インデックス番号を65536(=216)で除算したとして、商をページの番号、余りをページングのインデックス番号とする。このようにページングを定義すると、ページングの結果、インデックス番号23210は第0ページの23210と、65537は第1ページの1と表わされることになる。
【0028】
なお、インデックス番号は索引語の読みの五十音順で付与されているから、索引語の読みの先頭文字が指定されれば、対応するインデックス番号の値の取り得る範囲やどのページに属しているかを知ることができる。本実施の形態では、そのことを利用して、完全一致検索と先頭一致検索の高速化を図っている。場合によっては、1ページに含まれるインデックス番号の数を可変にしてページ境界と先頭文字の境目が一致するようにしてもよく、そうすることにより、先頭文字が指定されれば検索すべきページが1つに定まることになる。また、補助ファイルとして先頭文字位置ファイルを設け、「読み」の部分に関して先頭文字ごとにその先頭文字が始まるインデックス番号を格納するようにしてもよい。これにより、例えば、「読み」において先頭文字が「う」であるものは、インデックス番号が2369から3955の範囲にあるものと即座に分かり、検索対象を絞り込むのに役立つ。
【0029】
図6は検索用指示ファイル31の構成例を示している。ここでは、各構成文字の各ページごとに、その構成文字が出現した索引語の数(該当するインデックス番号の数)が格納されている。検索用指示ファイル31での構成文字の順は検索用倒置ファイル32での構成文字の順と同じとなっており、検索用指示ファイル31において注目する構成文字の直前の構成文字までに出現回数として格納された数の総和を求めれば、その総和は、検索用倒置ファイル32でのその注目する構成文字に対するポインタとして扱うことができる。あるいは、検索用指示ファイル31には、各構成文字の各ページごとに、検索用倒置ファイル32における当該構成文字の当該ページの先頭のアドレスを直接記録するようにしてもよく、このように構成すれば、検索用指示ファイル31での値を検索用倒置ファイル32のレコードに対するポインタとしてそのまま使用することが可能になる。
【0030】
図7は検索用倒置ファイル32の構成例を示している。この検索用倒置ファイル32では、各構成文字の各ページを単位としてレコードが構成され、各レコードは、可変長であって、該当する構成文字の該当するページに出現するインデックス番号を並びとして格納している。各レコードには、構成文字やページを表わすデータは格納されていない。インデックス番号自体は、所定の整数型データとして表わされている。検索用指示ファイル31に格納されているデータが図6に示すようであれば、各レコードの要素数(格納されているインデックス番号の数)は、図7において要素数として表わされた数となる。
【0031】
次に、情報検索処理について説明する。まず、情報検索の処理手順の概要について、図8及び図9を用いて説明する。
【0032】
CD−ROM20が処理装置10に装着されると、まず、検索処理プログラムがCD−ROM20から読み出されて処理装置10の処理部12にロードされ、この検索処理プログラムの実行が開始する(ステップ101)。続いて、CD−ROM20から検索用指示ファイル31が読み出され、処理装置10のファイル格納用メモリ13に格納される(ステップ102)。
【0033】
利用者が検索キーワードを入力すると(ステップ103)、入力した検索キーワードに応じてファイル格納用メモリ13内の検索用指示ファイル31が検索され、その検索結果によってCD−ROM20内の検索用倒置ファイル32が検索される(ステップ104)。すなわち、図9に示すように、検索キーワードが連語に分解され、連語によって検索用指示ファイル31が検索され、検索用倒置ファイル32における検索すべきレコードの位置が求められる。そして、該当する連語のレコードが検索用倒置ファイル32から検索されて処理装置10側に読み込まれる。読み込まれた連語のレコードの数に対するあるインデックス番号が出現するレコードの数の割合すなわち一致度を求め、一致検索であればこの一致度が100%であり、曖昧検索であればこの一致度が所定のしきい値を上回っているときに、そのインデックス番号に基づいて説明文を読み込むようにする。そして、上述のように読み込まれた説明文すなわち検索結果の説明文を表示部15に表示し、利用者に対して次の検索を行うかどうかを問い合わせる(ステップ105)。次の検索を行う場合にはステップ103に戻って次の検索キーワードの入力を受け付け、次の検索を行わない場合にはそのまま処理を終了する。
【0034】
この実施の形態では、データ量の大きなインデックスデータファイル30や検索用倒置ファイル32をCD−ROM20内に残しておき、データ量が小さくかつ検索用倒置ファイル32に対するポインタとして使用される検索用指示ファイル31を処理装置10内のファイル格納用メモリ13にロードし、検索キーワードに基づく検索をまず検索用指示ファイル31に対して実行することにより、十分なメモリを備えていないような場合であっても、高速で検索を行うことが可能になる。すなわち、最終的には検索用倒置ファイル32からの処理装置10へのデータの読み込みが必要になるが、検索用指示ファイル31を用いて対象となる連語のレコードを絞っているので、検索用倒置ファイル32から読み込まれるレコードの数を必要最小限にし、CD−ROM20からの読み込みに要する時間を縮減することが可能になっている。検索用指示ファイル31はファイル格納用メモリ13に常駐させておくことが可能なので、繰り返して検索を行う場合に大幅に検索時間を減らすことが可能である。
【0035】
以下、上述のステップ103及び104すなわち文字列検索処理を含む情報検索処理の詳細について、図10及び図11を用いて説明する。
【0036】
利用者によって検索種別(完全一致検索、部分一致検索、先頭一致検索、後方一致検索あるいは曖昧検索の別)と検索キーワードが入力されると(ステップ111)、まず、曖昧検索かそうでないかの判断がなされる(ステップ112)。曖昧検索の場合には、利用者から一致度に対するしきい値xの入力を受け(ステップ113)、入力された検索キーワードから、漢字1文字で構成された連語とひらがな1文字で構成された連語を順次抽出する(ステップ114)。本実施の態様では、上述したように、1文字あるいは2文字からなる連語に検索キーワードを分解し、分解して得た連語に基づいて検索を行う。例えば検索キーワード「あそ山」からは「あ」,「そ」,「山」が連語として抽出される。なお、同一の連語が重複しては抽出されないようにする。そして、抽出された連語により、ファイル格納用メモリ13に既に格納されている検索用指示ファイル31を検索する(ステップ115)。検索キーワード「あそ山」の例でいえば、検索用指示ファイル31での構成文字「あ」,「そ」,「山」の内容がそれぞれ読み出され、「あ」,「そ」,「山」に関する検索用倒置ファイル32へのポインタがそれぞれ算出される。そして、ステップ125に移行する。
【0037】
一方、ステップ112で曖昧検索でない場合、すなわち一致検索の場合には、しきい値xを自動的に100%に設定し(ステップ116)、入力された検索キーワードが全てかな文字からなるあるいは全て漢字からなるかどうかを判定する(ステップ117)。全てかな文字あるいは全て漢字ではない場合(典型的にはかなと漢字が混在する場合)には、上述のステップ114とステップ125を順次実行してステップ125に移行し、全てかな文字あるいは全て漢字の場合には、検索キーワードが全てかなであるかを判定する(ステップ118)。ステップ118で全てかなの場合には、検索キーワードから、ひらがな2文字で構成された連語を順次抽出する(ステップ119)。例えば、検索キーワードが「あそさん」であれば、連語として「あそ」,「そさ」,「さん」が抽出される。一方、ステップ118で全てかなでない場合、すなわち全て漢字の場合には、検索キーワードから、漢字1文字で構成された連語を順次抽出する(ステップ120)。例えば、検索キーワード「阿蘇山」からは連語として「阿」,「蘇」,「山」が抽出される。そして、ステップ119を実行した場合もステップ120を実行した場合も、このようにして抽出された連語により、上述と同様に、ファイル格納用メモリ13に既に格納されている検索用指示ファイル31を検索する(ステップ121)。
【0038】
ところで、後述するように検索実行文字に基づいて最終的にはCD−ROM20内の検索用倒置ファイル32が検索されることになっており、その際、連語が多数あると、それだけCD−ROM20へのアクセス回数が増えることになる。そこで、ステップ121の実行後、連語がN個以上見つかったかどうかを判断し、連語がN個以上であれば、出現回数が多い方の連語から削って連語の数をN−1にする(ステップ122)。連語の出現回数は検索用指示ファイル31に記述されている。Nは例えば7に設定する。ここで出現回数の多い方から削るのは、出現回数の多い連語は多くの見出し語に含まれていて、入力された検索キーワードを特定するのに余り役立たないと考えられるからである。ステップ122の実行後、▲1▼検索種別が完全一致検索あるいは先頭一致検索であって、かつ、▲2▼先頭文字がかなである、が満たされているかどうかを判断する(ステップ123)。満たされていない場合にはそのままステップ125に移行し、満たされている場合には、上述のように構成文字の先頭文字が特定のページに対応していることから、検索キーワードの先頭のかな文字に基づいて、検索すべき対象のページを決定し(ステップ124)、その後、ステップ126に移行する。
【0039】
ステップ125では、検索種別が曖昧検索であるかを判定し、曖昧検索であればそのままステップ126に移行し、曖昧検索でない場合にはステップ123に移行する。
【0040】
ステップ126では、ステップ115あるいはステップ121での検索用指示ファイル31の検索結果に応じ、CD−ROM20内の検索用倒置ファイル32から未処理の1ページ分のレコードを読み込む。検索キーワード「あそ山」の例では、「あ」,「そ」,「山」のそれぞれについてのレコードが読み出される。後述するように、ステップ124で対象ページが設定されている場合を除いてステップ125は繰り返して実行されるが、例えばまず、第0ページに属するレコードが読み出され、次にステップ125が実行されるときに第1ページに属するレコードが読み出される。また、ステップ124で対象ページが設定されている場合には、その対象ページに属するレコードが読み出される。上述したようにステップ115あるいはステップ121では、各連語ごとに検索用倒置ファイル32でのその連語のレコードへのポインタ(格納位置に関する情報)が求められているから、このポインタを用いて検索用倒置ファイル32にアクセスし、その連語のレコードを読み出せばよい。すなわち、検索用倒置ファイル32の全体を走査する必要はなく、検索用倒置ファイル32の必要な場所に直接アクセスすることが可能になっている。
【0041】
そして、検索キーワードから生成した一群の連語に対する各インデックス番号の一致度を求める(ステップ127)。図12は一致度の集計を説明する図である。すなわち、検索用倒置ファイル32から読み出されたレコードについて、各インデックス番号ごとに出現回数をカウントする。図15において○印はそのレコードにおいてそのインデックス番号が記録されていたことを示している。この例では、検索キーワード「あそ山」から抽出された各連語「あ」,「そ」,「山」のレコードについて、それぞれどのインデックス番号が出現したかが示されており、例えば連語「あ」のレコードには、インデックス番号0,3,8,9,13,15が記録されていることが示されている。そして、連語の数(この例では3)で出現回数を除算することにより、各インデックス文字ごとに一致度が求められている。この例では、連語の各レコードに共通にインデックス番号13が含まれ(出現回数が3)、インデックス番号13に対する一致度が100%であることが示されている。
【0042】
一致度の集計が終了したら、▲1▼検索種別が完全一致か先頭一致検索であり、かつ、▲2▼検索文字列の先頭がかなである、という条件を満足するかどうかを判定する(ステップ128)。この条件を満足しない場合にはそのままステップ130に移行し、満足する場合には、検索キーワードの先頭文字に応じて評価対象となるインデックス番号の範囲を求め(ステップ129)、以後の処理ではその範囲内のインデックス番号のみを対象とするようにして、ステップ130に移行する。このように先頭文字に応じてインデックス番号の範囲を絞るのは、インデックス番号の一致度のみに着目すると検索キーワード「あそ山」に対して見出し語「山あそ」もヒットすることになるので、このような検索ノイズの発生を防ぎ、CD−ROM20への不要なアクセスを減らすためである。先頭文字「あ」で範囲を限定すれば、検索キーワード「あそ山」に対し、「あ山そ」はヒットするが、「山あそ」などのヒットは防ぐことができる。
【0043】
ステップ130では、一致度がしきい値x以上となっているインデックス番号を求める。一致検索に対してはステップ116でx=100%としているので、一致度が100%のインデックス番号のみが求められる。一方、曖昧検索の場合には、ステップ113で入力したしきい値xに応じてインデックス番号が求められる。そして、求められたインデックス番号に基づいてCD−ROM20内のインデックスデータファイル30を参照し、それらのインデックス番号に対応する見出し語を求める(ステップ131)。その際、それらのインデックス番号に対応する説明文の辞書データ本体格納部23での格納位置も求めておく。
【0044】
続いて、検索種別が曖昧検索であるかどうかを判断し(ステップ132)、曖昧検索であればそのままステップ134に移行し、曖昧検索でない場合すなわち一致検索である場合には、求められた見出し語が検索条件と合致しているかを判定する(ステップ133)。ステップ133において検索条件と合致している場合にはステップ134に移行し、検索条件に合致していない場合にはステップ135に移行する。ここで検索条件と合致しているかを判断するのは、本実施の形態の手順によれば、検索キーワード「あそ山」に対して「あそ山」と「あ山そ」の両方が見出し語として検出されるので、ノイズである「あ山そ」を排除するためである。なお、曖昧検索の場合には、利用者の意図する検索対象に「あ山そ」も含まれている可能性があるので、検索条件に合致しているかどうかのステップ133でのチェックは行わない。
【0045】
曖昧検索である場合とステップ133で検索条件に合致している場合にはステップ134に移行するが、ステップ134では、該当するインデックス番号に対応する説明文をCD−ROM20の辞書データ本体格納部23から読み出し、検索された見出し語と対応する説明文とを表示部15に表示し、ステップ135に移行する。辞書データ本体格納部23にアクセスする場合には、ステップ131においてインデックスデータファイル30にアクセスした際に既に求めてある格納位置の情報を使用する。
【0046】
ステップ135では、全ページの処理が終了したかどうかを判断し、未処理のページが残っているのであればステップ126に戻り、全ページの処理が終了しているのであれば、入力された検索キーワードに対する情報検索処理を終了する。ステップ124で対象ページが定められている場合には、未処理のページが存在しないので、そのまま処理を終了する。
【0047】
【発明の効果】
以上説明したように本発明は、検索キーワードの文字種と検索種別とに応じて異なる生成規則による連語を検索キーワードから抽出しようとするものである。このように生成規則を変化させることにより、多様な検索種別での検索を過検索が少なくて高速で実行でき、かつ任意に漢字とかなが混じりあったような検索キーワードでの検索も可能になるという効果がある。
【0048】
例えば、一致検索の際に検索キーワードがかな文字のみで構成されている場合に連語長を2文字とすることにより、かな文字のみの一致検索での過検出が抑止され、また、その他の場合に連語長を1文字とすることにより、曖昧検索などを的確に行うことが可能になる。
【0049】
ファイル中の各項目には、それぞれ、当該項目の読みに対応するかな文字列が付加するようにすることにより、漢字かな混じりの検索キーワードに対しても有効に文字列検索を行うことが可能になる。
【図面の簡単な説明】
【図1】本発明の実施の一形態の情報検索システムを説明するブロック図である。
【図2】CD−ROM内でのデータの配置を示す図である。
【図3】情報検索処理に使用される各種ファイル間の関係を示す図である。
【図4】インデックスデータファイルの内容の一例を示す図である。
【図5】インデックスデータファイルから各種ファイルを生成するための学習過程を示す図である。
【図6】検索用指示ファイルの内容の一例を示す図である。
【図7】検索用倒置ファイルの内容の一例を示す図である。
【図8】図1の情報検索システムにおける情報検索処理の概要を示すフローチャートである。
【図9】図1の情報検索システムにおける情報検索処理時のデータの流れの概略を示す図である。
【図10】情報検索処理の具体的処理手順を示すフローチャートである。
【図11】情報検索処理の具体的処理手順を示すフローチャートである。
【図12】一致度の集計を説明する図である。
【図13】従来の文字列検索方法の処理手順の一例を示すフローチャートである。
【符号の説明】
10 処理装置
11 CD−ROMドライブ
12 処理部
13 ファイル格納用メモリ
14 入力部
15 表示部
16 検索部
17 連語生成部
18 比較部
20 CD−ROM
21 処理プログラム格納部
22 インデックスファイル格納部
23 辞書データ本体格納部
30 インデックスデータファイル
31 検索用指示ファイル
32 検索用倒置ファイル
101〜105,111〜135 ステップ
Claims (3)
- 入力した検索キーワードと指定された検索種別に基づいてファイル中から前記検索キーワードに対応する項目を探索する文字列検索方法において、
利用者が入力した検索種別を判別し、
前記利用者が入力した検索キーワードを構成する文字の字種について、前記検索キーワードがかな文字のみからなりかつ前記検索種別が一致検索である場合には、文字長が2である連語を前記検索キーワードから順次抽出し、それ以外の場合には、文字長が1である連語を前記検索キーワードから順次抽出し、
前記ファイル中の各項目の文字列と前記一群の連語とを比較して当該文字列に対する一致度を算出し、
前記一致度がしきい値以上である項目を検索された項目とすることを特徴とする文字列検索方法。 - 前記ファイル中の各項目には、それぞれ、当該項目の読みに対応するかな文字列が付加されている請求項1に記載の文字列検索方法。
- 入力した検索キーワードと指定された検索種別に基づいてファイル中から前記検索キーワードに対応する項目を探索する文字列検索装置において、
前記検索キーワードと前記検索種別としきい値を入力する入力手段と、
利用者が入力した検索種別を判別するとともに前記利用者が入力した検索キーワードを構成する文字の字種について、前記検索キーワードがかな文字のみからなりかつ前記検索種別が一致検索である場合には、文字長が2である連語を前記検索キーワードから順次抽出し、それ以外の場合には、文字長が1である連語を生成する連語生成手段と、
前記ファイル中の各項目の文字列と前記連語とを比較して当該文字列に対する一致度を算出する処理手段とを有し、
前記一致度が前記入力されたしきい値以上である項目を検索された項目とすることを特徴とする文字列検索装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24732795A JP3665112B2 (ja) | 1995-09-26 | 1995-09-26 | 文字列検索方法及び装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24732795A JP3665112B2 (ja) | 1995-09-26 | 1995-09-26 | 文字列検索方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0991297A JPH0991297A (ja) | 1997-04-04 |
JP3665112B2 true JP3665112B2 (ja) | 2005-06-29 |
Family
ID=17161757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24732795A Expired - Fee Related JP3665112B2 (ja) | 1995-09-26 | 1995-09-26 | 文字列検索方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3665112B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010044123A1 (ja) | 2008-10-14 | 2010-04-22 | 三菱電機株式会社 | 検索装置、検索用索引作成装置、および検索システム |
WO2010116785A1 (ja) | 2009-04-06 | 2010-10-14 | 三菱電機株式会社 | 検索装置 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4651402B2 (ja) * | 2005-02-08 | 2011-03-16 | クラリオン株式会社 | 車載情報端末 |
JP5141560B2 (ja) | 2007-01-24 | 2013-02-13 | 富士通株式会社 | 情報検索プログラム、該プログラムを記録した記録媒体、情報検索装置、および情報検索方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3263963B2 (ja) * | 1991-12-25 | 2002-03-11 | 株式会社日立製作所 | 文書検索方法及び装置 |
JPH0827804B2 (ja) * | 1989-10-20 | 1996-03-21 | 日本電信電話株式会社 | 日本語辞書データ管理方式 |
JP3079844B2 (ja) * | 1993-08-18 | 2000-08-21 | 凸版印刷株式会社 | 全文データベースシステム |
JP3022079B2 (ja) * | 1993-08-18 | 2000-03-15 | 凸版印刷株式会社 | 全文データベースシステム |
-
1995
- 1995-09-26 JP JP24732795A patent/JP3665112B2/ja not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010044123A1 (ja) | 2008-10-14 | 2010-04-22 | 三菱電機株式会社 | 検索装置、検索用索引作成装置、および検索システム |
WO2010116785A1 (ja) | 2009-04-06 | 2010-10-14 | 三菱電機株式会社 | 検索装置 |
Also Published As
Publication number | Publication date |
---|---|
JPH0991297A (ja) | 1997-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6876998B2 (en) | Method for cross-linguistic document retrieval | |
US8005665B2 (en) | Method and apparatus for generating a language independent document abstract | |
US5745745A (en) | Text search method and apparatus for structured documents | |
US6654717B2 (en) | Multi-language document search and retrieval system | |
JP3270783B2 (ja) | 複数の文書検索方法 | |
JP4162711B2 (ja) | Nグラム・ワード分解を用いた携帯型文書索引付け用のシステム及び方法 | |
US6523030B1 (en) | Sort system for merging database entries | |
JP3636941B2 (ja) | 情報検索方法と情報検索装置 | |
US6104990A (en) | Language independent phrase extraction | |
JP2742115B2 (ja) | 類似文書検索装置 | |
EP0530993A2 (en) | An iterative technique for phrase query formation and an information retrieval system employing same | |
JPH0525138B2 (ja) | ||
US6505198B2 (en) | Sort system for text retrieval | |
JP3220865B2 (ja) | フルテキストサーチ方法 | |
JP3665112B2 (ja) | 文字列検索方法及び装置 | |
US5682543A (en) | Dictionary editing apparatus | |
US6473755B2 (en) | Overlapping subdocuments in a vector space search process | |
JP3720882B2 (ja) | 情報検索方法、情報検索システム及び情報検索装置 | |
JP3848014B2 (ja) | 文書検索方法および文書検索装置 | |
JP3578618B2 (ja) | 文書分割装置 | |
JP3744136B2 (ja) | 訳語選択装置と記憶媒体 | |
JP3376996B2 (ja) | フルテキストサーチ方法 | |
JP3804609B2 (ja) | 検索チューニング方法および情報検索システム | |
JPH1185765A (ja) | タグ付文書検索システム | |
JP3725373B2 (ja) | 単語重要度計算装置、文書検索装置、単語重要度計算プログラムを記録したコンピュータ読み取り可能な記録媒体および文書検索プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041102 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041227 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20041227 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050302 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050331 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090408 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090408 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100408 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110408 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120408 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130408 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130408 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140408 Year of fee payment: 9 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |