説明

索引作成装置及び文書検索装置

【課題】索引の情報量をあまり増やすことなく、数値の範囲検索と文字列検索を実現することを目的とする。
【解決手段】有限の文字列を格納した単語辞書を持ち、索引を構成する索引要素を作成する索引要素作成手段と、文書中の数値について数値の指数部を求める指数部算定手段と、数値の指数部を格納する索引要素を選択するための先頭情報記憶手段と、を備え、索引を構成する索引要素の一部に数値の指数部を付加した索引を作成することにより、索引の情報量をあまり増やすことなく、数値の範囲検索と文字列検索ができ、また効率のよい文書検索が可能である。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、索引作成装置と文書検索装置について、特に文書内に数値が含まれる文書に対して、検索条件として指定した数値範囲に合致する文書を検索可能な索引を作成し、作成された索引と辞書を用いて指定した数値範囲に合致する文書を検索する索引作成装置及び文書検索装置に関する。
【背景技術】
【0002】
文書の全文検索機能を備えた文書検索装置に対して、数値範囲を条件とした検索(以下、数値範囲検索と記述)が可能な従来技術として、例えば特許文献1に記載の方法がある。この方法では、まず文書を全文検索データベースへ登録する際に、文書に含まれる日付情報などの数値を全文検索に適した形式の文字列に変換し、その後、数値を含む文書と変換した全文検索が可能な文字列を全文検索データベースに登録する。
【0003】
具体的には、例えば「1998年1月13日から2010年10月22日」という日付情報が文書中に含まれている場合に、数値の範囲の開始日である1998年1月13日から1998年1月19日までは年月日単位(19980113、19980119など)、1998年1月20日から1998年1月31日までは日の一の位を省略した年月日単位(1998012、1998013)、1998年2月から1998年12月までは年月単位(199802、199803、199812など)、1999年から2009年までは年単位(1999、2000、2009など)で表現する。また、2010年1月から2010年9月まで、2010年10月1日から2010年10月19日まで、2010年10月20日から2010年10月22日まで、をそれぞれ、年月単位(201001、201002、など)、日の一の位を省略した年月日単位(2010100、2010101)、年月日単位(20101020、20101021、20101022)で表現する。そして、それぞれの日付を「_」を区切り文字とした連続した文字列として全文検索データベースに登録する。
【0004】
文書検索時には、検索条件に含まれる数値情報を全文検索が可能な条件に変換し、全文検索データベースの検索を行う。具体的には、例えば1999年3月13日という日付検索条件に対して、検索する日付の年単位で表現した文字列の両端に区切り文字を追加した文字列(”_1999_“)を追加し、同様に年月単位、日の一の位を省略した年月日単位、年月日単位で表現したそれぞれの文字列の両端に区切り文字を追加した文字列(”_199903_”、”_1999031_“、”_19990313_“)を論理和の条件とする。
【0005】
以上により、全文検索機能を備えた文書検索装置において、数値範囲検索を実現している。
【0006】
また、全文検索を行うための情報である索引に登録するための単語を切り出す手法として、例えば特許文献2が知られている。
【特許文献1】特開2000−90093号公報
【特許文献2】特開平8−249354号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかし、上記従来の技術では、日付の範囲を示した期間情報など、数値範囲検索のための特別な情報が必要となるため、数値範囲検索と全文検索を同時に実現するためにより多くの資源(一次記憶容量、二次記憶容量など)が必要となる課題がある。また、全文検索データベースを検索する際、上記従来の技術では、数値範囲検索のための情報に対して検索条件との比較が余分に必要になるため、検索にかかる時間が増加する。
【0008】
本発明は、上記従来の課題を解決するもので、検索対象文書中の数値に対して、数値の指数部を算定し、索引を構成する要素(以下、索引要素と記述)の一部に指数部を付加した索引を作成することで、数値範囲検索のための特別な情報を必要とすることなく、数値範囲検索と全文検索が可能な索引作成装置を提供することを目的とする。また、本発明の索引作成装置が作成した索引を用いることで、文書を検索する際に検索条件と数値範囲検索のための情報との余分な比較を必要とせず、効率的な検索が可能な文書検索装置を提供することも目的とする。
【課題を解決するための手段】
【0009】
上記課題を解決するための本発明は、有限個の文字の並びからなる検索対象文書を格納する検索対象文書記憶手段と、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶手段を持ち、前記検索対象文書から前記単語辞書を用いて単語索引として登録する索引語を抽出する索引語抽出手段と、前記抽出した索引語が数値であるかについて前記単語辞書を用いて判定する数値判定手段と、前記数値判定手段で数値であると判定された前記索引語が先頭の単語であるかについて先頭フラグを用いて判定する先頭判定手段と、前記数値判定手段で数値であると判定され、かつ前記先頭判定手段で先頭の単語であると判定された前記索引語について前記索引語を含む数値の指数部を算定する指数部算定手段と、前記索引語と前記指数部を含む索引要素を作成し、作成された複数の索引要素を単語索引として単語索引記憶手段に登録する索引要素作成手段とを具備する構成をとる。
【発明の効果】
【0010】
本発明の索引作成装置によれば、検索対象文書中の数値に対して、索引として登録する単語と文書中での出現位置とその数値の指数部を組とした索引要素を持つ単語索引を作成するため、従来の技術のように数値範囲検索のために特別な情報を作成する必要がなく、索引の情報量を大きく増やすことなく数値範囲検索と全文検索が可能となる。
【0011】
また、本発明の文書検索装置によれば、数値の指数部を含む索引要素をもつ単語索引を用いて、数値の指数部の比較と数値の一部を比較する処理をすることで、数値範囲検索のための情報に対する余分な比較が必要なくなり、検索条件に合致する数値を効率的に検索することが可能である。
【発明を実施するための最良の形態】
【0012】
本発明の第1の態様にかかる索引作成装置は、有限個の文字の並びからなる検索対象文書を格納する検索対象文書記憶手段と、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶手段を持ち、前記検索対象文書から前記単語辞書を用いて単語索引として登録する索引語を抽出する索引語抽出手段と、前記抽出した索引語が数値であるかについて前記単語辞書を用いて判定する数値判定手段と、前記数値判定手段で数値であると判定された前記索引語が先頭の単語であるかについて先頭フラグを用いて判定する先頭判定手段と、前記数値判定手段で数値であると判定され、かつ前記先頭判定手段で先頭の単語であると判定された前記索引語について前記索引語を含む数値の指数部を算定する指数部算定手段と、前記索引語と前記指数部を含む索引要素を作成し、作成された複数の索引要素を単語索引として単語索引記憶手段に登録する索引要素作成手段とを具備する構成をとる。
【0013】
これにより、検索対象文書中の数値に対して、索引として登録する単語と文書中での出現位置とその数値の指数部を組とした索引要素を持つ単語索引を作成することにより、索引の情報量を大きく増やすことなく数値範囲検索と全文検索が可能となる。
【0014】
本発明の第2の態様は、前記指数部算定手段は、前記数値判定手段で数値であると判定され、前記先頭判定手段で先頭であると判定された前記索引語について前記索引語を含む数値の指数部を、あらかじめ決めた基準となる単位に正規化する指数部を求める。
【0015】
これにより、正規化された指数部を用いた単語索引を作成するため、検索対象文書中とは異なるスケールの数量による検索条件に対しても、漏れのない検索ができる。
【0016】
本発明の第3の態様は、第2の態様にかかる索引作成装置において、前記指数部算定手段は、前記数値判定手段で数値であると判定され、前記先頭判定手段で先頭の単語であると判定された前記索引語について前記索引語を含む数値の指数部の後に数値範囲を示す範囲単語であるかを判定し、かつ前記範囲単語の直後が単位を持つ数値の場合は、あらかじめ決めた基準となる単位に正規化する指数部を求める。
【0017】
これにより、検索対象文書中の数値や数量の範囲を表す区間表現を、数値の指数部または数量の単位を正規化したときの指数部を用いて単語索引を作成することで、索引の情報量をあまり増やすことなく、検索対象文書中の区間表現を漏れがなく検索することができる。
【0018】
本発明の第4の態様にかかる文書検索装置は、索引語とその指数部を含む複数の索引要素を単語索引として格納する単語索引記憶手段と、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶手段と、少なくとも1つの検索条件として文字列を入力する検索条件文字列入力手段と、前記検索条件となる文字列に対して文字列に含まれる数値の桁数から検索条件指数部を算定し、前記文字列は前記単語辞書を用いて、前記単語索引を検索する単位である検索単語として抽出し、前記検索条件指数部と検索単語を作成する検索単語作成手段と、前記検索条件指数部と前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合をそれぞれ検索する索引要素検索手段と、前記索引要素検索手段が検索した前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合を用いて連接を判定する連接判定手段と、前記検索条件単位で抽出された結果集合を求める結果集合算定手段と、前記結果集合から複数の検索条件に合致する検索結果を出力する検索結果出力手段とを具備する。
【0019】
これにより、数値の指数部を含む索引要素をもつ単語索引を用いて、数値の指数部の比較と数値の一部を比較する処理をすることで、数値範囲検索のための情報に対する余分な比較が必要なくなり、検索条件に合致する数値を効率的に検索することが可能である。
【0020】
本発明の第5の態様は、第4の態様にかかる文書検索装置において、索引要素検索手段は、前記検索条件指数部をあらかじめ決めた基準となる単位に正規化した検索条件指数部を求め、前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合をそれぞれ検索する。
【0021】
これにより、数値に単位を含む数量について、正規化した指数部を含む索引要素をもつ単語索引を用いて、同じ単位種で異なるスケールの単位の指定された検索条件に対しても、漏れがなく、効率的に検索条件に合致する数量を検索することができる。
【0022】
本発明の第6の態様は、第5の態様にかかる文書検索装置において、索引要素検索手段は、前記検索条件となる文字列の検索条件指数部の後に数値範囲を示す範囲単語であるかを判定し、かつ前記範囲単語の直後が数値の場合は、前記検索条件指数部をあらかじめ決めた基準となる単位に正規化した検索条件指数部を求め、前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部を含む索引要素の集合と検索単語について前記検索条件単位に合致する索引要素の集合をそれぞれ検索する。
【0023】
これにより、数値や数量の区間に対して、検索条件に合致する検索対象文書中の数値の区間を、漏れがなく、効率的に検索することができる。
【0024】
本発明の第7の態様にかかる索引作成方法は、有限個の文字の並びからなる検索対象文書を格納する検索対象文書記憶ステップと、有限個の文字列を単語として登録した単語辞書と、前記検索対象文書から前記単語辞書を用いて単語索引として登録する索引語を抽出するステップと、前記抽出した索引語が数値であるかについて前記単語辞書を用いて判定するステップと、前記数値判定をするステップで数値であると判定された前記索引語の指数部を算定するステップと、前記索引語とその指数部を含む索引要素を作成し、作成された複数の索引要素を単語索引として単語索引記憶部に登録するステップとを具備する。
【0025】
これにより、検索対象文書中の数値に対して、索引として登録する単語と文書中での出現位置とその数値の指数部を組とした索引要素を持つ単語索引を作成することにより、索引の情報量を大きく増やすことなく数値範囲検索と全文検索が可能となる。
【0026】
本発明の第8の態様にかかる文書検索方法は、索引語とその指数部を含む複数の索引要素を単語索引として格納する単語索引と、有限個の文字列を単語として登録した単語辞書とを記憶し、少なくとも1つの検索条件として文字列を入力するステップと、前記検索条件となる文字列単位に対して数値の桁数から検索条件指数部を算定し、前記文字列は前記単語辞書を用いて、検索単語として抽出し、前記検索条件指数部と検索単語を作成するステップと、前記検索条件指数部と前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部と検索単語の索引要素の集合をそれぞれ探索するステップと、前記検索条件単位で抽出された結果集合を求めるステップと、前記結果集合から複数の検索条件に合致する検索結果を出力するステップとを具備する。
【0027】
これにより、数値の指数部を含む索引要素をもつ単語索引を用いて、数値の指数部の比較と数値の一部を比較する処理をすることで、数値範囲検索のための情報に対する余分な比較が必要なくなり、検索条件に合致する数値を効率的に検索することが可能である。
【0028】
本発明の第9の態様にかかるプログラムは、コンピュータに、有限個の文字の並びからなる検索対象文書を格納する検索対象文書記憶ステップと、有限個の文字列を単語として登録した単語辞書と、前記検索対象文書から前記単語辞書を用いて単語索引として登録する索引語を抽出するステップと、前記抽出した索引語が数値であるかについて前記単語辞書を用いて判定するステップと、前記数値判定をするステップで数値であると判定された前記索引語の指数部を算定するステップと、前記索引語とその指数部を含む索引要素を作成し、作成された複数の索引要素を単語索引として単語索引記憶部に登録するステップとを実行させる。
【0029】
これにより、検索対象文書中の数値に対して、索引として登録する単語と文書中での出現位置とその数値の指数部を組とした索引要素を持つ単語索引を作成することにより、索引の情報量を大きく増やすことなく数値範囲検索と全文検索が可能となる。
【0030】
本発明の第10の態様にかかるプログラムは、コンピュータに、索引語とその指数部を含む複数の索引要素を単語索引として格納する単語索引と、有限個の文字列を単語として登録した単語辞書とを記憶し、少なくとも1つの検索条件として文字列を入力するステップと、前記検索条件となる文字列単位に対して数値の桁数から検索条件指数部を算定し、前記文字列は前記単語辞書を用いて、検索単語として抽出し、前記検索条件指数部と検索単語を作成するステップと、前記検索条件指数部と前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部と検索単語の索引要素の集合をそれぞれ探索するステップと、前記検索条件単位で抽出された結果集合を求めるステップと、前記結果集合から複数の検索条件に合致する検索結果を出力するステップとを実行させる。
【0031】
これにより、数値の指数部を含む索引要素をもつ単語索引を用いて、数値の指数部の比較と数値の一部を比較する処理をすることで、数値範囲検索のための情報に対する余分な比較が必要なくなり、検索条件に合致する数値を効率的に検索することが可能である。
【0032】
以下本発明の実施の形態について、図面を参照しながら説明する。
【0033】
(実施の形態1)
本発明の実施の形態1の索引作成装置に関して、図面を用いて説明する。図1は、本発明の実施の形態1における索引作成装置10の全体構成を表すブロック図である。
【0034】
図1において、101は索引作成の対象となる検索対象文書を格納する検索対象文書記憶手段、102は有限個の文字列を登録した単語辞書を格納する単語辞書記憶手段である。103は、検索対象文書記憶手段101から検索対象文書を読み込み、単語辞書記憶手段102に格納された単語辞書を用いて、索引語を抽出する索引語抽出手段である。105は、索引要素作成手段108により駆動され、数値の指数部を求める指数部算定手段であり、106は索引要素作成手段108により出力される索引要素を格納する単語索引記憶手段である。107は、索引語抽出手段103が切り出した索引要素登録単語が数値であるかを判断する数値判定手段である。108は、索引語が「数値かつ先頭の単語」と判断された場合には、指数部算定手段105を駆動し、単語と出現文字位置と指数部との組を索引要素として出力し、それ以外の場合には単語と出現文字位置との組を索引要素として単語索引記憶手段106に出力する索引要素作成手段である。109は、索引要素作成手段108により駆動され、数値判定手段107が数値であると判定した索引語が先頭の単語であるかを自身が記憶している先頭フラグを用いて判定する先頭判定手段である。
【0035】
以上のように構成された索引作成装置10の動作を、簡単な単語辞書と簡単な検索対象文書を例に、図面を参照して説明する。図2、図3は単語辞書の例で、単語210と単語の種別を表すフラグ211及び基準単位に補正するためのスケールファクタ212の組から構成されている。図4は検索対象文書の例、図5は図2、図3に示す単語辞書を用いて、図4に示す検索対象文書から索引語として抽出される単語を示した図で、図5において501は検索対象文書502の各文字位置を示し、503が各文字位置で抽出された索引語を示している。図7は指数部を具体的に示した図で、701が先頭と判断された索引語wで、702はwを含む数値、703が702の数値の指数部を表している。図8は図2、図3に示す単語辞書を用いて、図4に示す検索対象文書から作成した単語索引801の内容を示す概念図で、索引語と出現文字位置の組、または索引語と出現文字位置及び指数部の組で記憶される。
【0036】
次に、索引作成装置10の動作について、図6の処理フローチャートを用いて説明する。
【0037】
まず、索引の作成処理に先立って、図4に示す検索対象文書401から索引語を抽出するための図2、3に示す単語辞書201が単語辞書記憶手段102に格納され、図4の検索対象文書401が検索対象文書記憶手段101に格納されている。
【0038】
この状態で、ステップ601において、索引語抽出手段103は、図4の検索対象文書401を読み込み、単語辞書201を用いて、検索対象文書401から最初の文字位置における索引語「波長」を抽出し、単語辞書201から索引語の種類を表す種別フラグ202を取得する。索引語を抽出する手法として、特許文献2に記載の方法を用いて説明を行うが、本発明はこれに限定したものではなく、形態素解析などの索引語を抽出する任意の手法に対して有効である。図5は、単語辞書201を用いて、図4の検索対象文書401から索引語を抽出したときの一例を示す。
【0039】
次に、ステップ602において、数値判定手段107は、抽出された単語「波長」が数値であるかについて種別フラグ202を用いて判定する。このとき、抽出された単語「波長」の種別フラグ202は0で文字列を表し、数値ではないと判定される。
【0040】
そして、ステップ606において、索引要素作成手段108は、索引要素(w、[出現位置])として(“波長”,[1])を単語索引記憶手段106に出力する。
【0041】
次に、ステップ607において、索引要素作成手段108は、検索対象文書401の終了を判定し、検索対象文書401の最後ならば処理を終了する。最後ではない場合は、ステップ608において検索対象文書401の着目文字位置を一文字進め、ステップ601に戻る。この場合、着目している文字位置は検索対象文書401の最初の文字位置であるので、ステップ608において着目文字位置を一文字進め、ステップ601に戻る。
【0042】
次に、ステップ601において、索引語抽出手段103は、検索対象文書401の次の索引語「が」を抽出し、単語辞書201から種別フラグ203を取得する。次に、数値判定手段107は、ステップ602で抽出された索引語「が」は数値であるかについて種別フラグ203を用いて判定し、種別フラグ203が0で数値ではないと判定される。そして、ステップ606において、索引要素作成手段108は、索引要素(“が”,[3])を単語索引記憶手段106に出力する。
【0043】
次に、ステップ607において、索引要素作成手段108は、検索対象文書401の終了を判定し、着目している文字位置は検索対象文書401の最後ではないので、ステップ608において検索対象文書401の着目文字位置を一文字進め、ステップ601に戻る。
【0044】
次に、ステップ601において、索引語抽出手段103は、検索対象文書401の次の索引語「0.1」を抽出し、単語辞書201から種別フラグ204を取得する。そして、ステップ602で、数値判定手段107は、抽出された索引語「0.1」は単語辞書201の種別フラグ204が1であるため数値であると判定される。
【0045】
次に、ステップ603において、索引要素作成手段108は、先頭判定手段109を駆動し、索引語「0.1」が数値の先頭の単語であるかを判断する。先頭判定手段109は、索引語が数値の先頭の単語であるかを表す情報として先頭フラグを記憶しており、この場合、先頭フラグは1で、先頭判定手段109は、索引語「0.1」が先頭の単語であると判断する。ステップ603で索引語「0.1」が先頭の単語であると判断されると、ステップ604において、索引要素作成手段108は指数部算定手段105を駆動し、索引語「0.1」を含む数値を同定し、同定した数値の指数部を算定する。この場合、図7に示すように、「0.1」を含む数値は「0.1」と同定され、数値の指数部は−1と算定される。
【0046】
そして、ステップ605において、索引要素作成手段108は索引要素(w、[文字位置(指数)]として(“0.1”,[4(−1)])を単語索引記憶手段106に出力し、先頭時判定手段109は先頭フラグを0に変更する。
【0047】
次に、ステップ607において、索引要素作成手段108は、検索対象文書401の終了を判定し、着目している文字位置は検索対象文書401の最後ではないので、ステップ608において検索対象文書401の着目文字位置を一文字進め、ステップ601に戻る。
【0048】
次に、ステップ601において、索引語抽出手段103は、次の索引語「mm」を抽出し、単語味所201から種別フラグ205を取得する。次に、ステップ602において、数値判定手段107は、抽出された索引語「mm」が数値であるかについて種別フラグ205を用いて判定する。このとき、索引語「mm」は種別フラグ205が3で数値ではないと判定され、ステップ606において索引要素作成手段108は索引要素(“mm”,[7])を単語索引記憶手段106に出力する。また、先頭判定手段109は、記憶している先頭フラグを1に変更する。
【0049】
次に、ステップ607において、索引要素作成手段108は、検索対象文書401の終了を判定し、着目している文字位置は検索対象文書401の最後ではないので、ステップ608において検索対象文書401の着目文字位置を一文字進め、ステップ601に戻る。
【0050】
このようにして、索引語抽出手段103、数値判定手段107、指数部算定手段105、索引要素作成手段108は、検索対象文書101から次々と索引語を切り出し、図8に示すように索引語803と出現位置804の組、または索引語803と出現位置804と指数部805との組、を索引要素802として単語索引記憶手段106に出力する。
【0051】
以上の処理が、検索対象文書101中のすべての索引語に対して行われ、図8に示すような単語索引801が単語索引記憶手段106に作成される。
【0052】
以上の説明のように、本発明の索引作成装置によれば、検索対象文書中の数値に対して、一部の単語について、索引語と文書中での出現位置とその数値の指数部の組を索引要素とした単語索引を作成するため、従来の技術のように検索条件に合致する数値範囲検索のために特別な情報を作成する必要がなく、また一部の単語にだけ指数部を含めた索引要素を作成するため、単語索引の情報量を大きく増やすことなく検索条件に合致する数値の範囲検索が可能となる。
【0053】
(実施の形態2)
本発明の実施の形態2は、実施の形態1とは検索対象文書中の単位を含んだ数量に対して、あらかじめ決めた基準となる単位に正規化したときの指数部を用いて単語索引を作成する点が異なり、以下では異なる部分を中心に説明する。
【0054】
以下、本発明の実施の形態2の索引作成装置に関して、図面を用いて説明する。図9は、本発明の第2の実施の形態における索引作成装置20の全体構成を表すブロック図である。図9において、図1と異なる点は、指数部算定手段2005の動作と、指数部算定手段2005により駆動され、数値が単位を含む数量である場合に、基準となる単位に正規化した指数部を求める正規化指数部算定手段2007を有している点である。
【0055】
本実施の形態の索引作成装置20の動作を図10の処理フローチャート用いて、簡単な単語辞書と簡単な検索対象文書を例に、図面を参照して説明する。本実施の形態では、実施の形態1と同様に図2、図3に示す単語辞書201と、図4に示す検索対象文書401を例として説明する。図11は抽出された索引語wに対して、wを含む数値の指数部pとあらかじめ決めた基準となる単位に正規化するためのスケールファクタsfにより正規化された指数部p‘を求める処理を示した図、図12は単語辞書201を用いて、検索対象文書401から作成した単語索引1201の内容を示す概念図である。
【0056】
まず、索引の作成に先立って、図2、図3の内容の単語辞書201が単語辞書記憶手段102に格納され、図4の検索対象文書401が検索対象文書記憶手段101に格納される。
【0057】
この状態で、ステップ1001において、索引語抽出手段103は、図4の検索対象文書401を読み込み、単語辞書201を用いて索引語「波長」を抽出し、単語辞書201から種別フラグ202を取得する。本実施の形態では、索引語を抽出する手法として、実施の形態1と同様に特許文献2に記載の方法を用いて説明を行う。また、数値判定手段107における索引語「波長」の数値判定処理(ステップ1002)と、索引要素作成手段108における索引要素の出力処理(ステップ1010)及び索引語抽出の終了判定にかかる処理(ステップ1011、ステップ1012)については、実施の形態1と同じ処理であるので説明を省略する。
【0058】
次に、索引要素作成手段203は、検索対象文書201において、次の索引語「が」を切り出す。数値判定手段107における索引語「が」の数値判定処理(ステップ1002)と、索引要素作成手段108における索引要素の出力処理(ステップ1010)及び索引語抽出処理の終了判定にかかる処理(ステップ1011、ステップ1012)についても、実施の形態1と同じ処理であるので説明を省略する。
【0059】
次に、ステップ1001において、索引語抽出手段103は、単語辞書201を用いて検索対象文書401の次の索引語「0.1」を抽出し、種別フラグ204を取得する。そして、ステップ1002で、数値判定手段107は抽出された索引語「0.1」は種別フラグが1であるため数値であると判定する。
【0060】
次に、ステップ1002で索引語「0.1」が数値であると判定されると、ステップ1003において、索引要素作成手段108は、先頭判定手段109を駆動し、索引語「0.1」が数値の先頭の単語であるかを判断する。先頭判定手段109は、索引語が数値の先頭の単語であるかを表す情報として先頭フラグを記憶しており、この場合の先頭フラグは1を記憶しており、索引語「0.1」を先頭の単語であると判断する。ステップ1003で先頭の単語であると判断されると、索引要素作成手段108は指数部算定手段2005を駆動する。
【0061】
次に、ステップ1004において、指数部算定手段2005が索引語「0.1」を含む数値を同定し、同定した数値の指数部を算定する。この場合、図11の1101に示すように、索引語「0.1」を含む数値は「0.1」と同定され、数値の指数部は−1と算定される。
【0062】
そして、ステップ1005において、指数部算定手段2005は、ステップ1004で同定した索引語「0.1」を含む数値「0.1」の直後の単語を抽出し、単語が単位かどうかを、単語辞書201の種別フラグ205を用いて判定する。まず、指数部算定手段2005は、索引語「0.1」を含む数値「0.1」の直後の単語「mm」を抽出し、種別フラグ205を取得する。また、単位を正規化するためのスケールファクタ206も取得しておく。取得した種別フラグ205は3であり、指数部算定手段2005は、数値「0.1」の直後の単語は単位であると判定する。次に、ステップ1005で索引語「0.1」を含む数値「0.1」の直後が単位であると判定されると、指数部算定手段2005は正規化指数部算定手段2007を駆動する。
【0063】
次に、ステップ1008において正規化指数部算定手段2007は、正規化した指数部を算定する。
【0064】
最後に、ステップ1009において、索引要素作成手段108は、索引語とその出現位置と正規化指数部算定手段2007が算定した正規化された指数部とを組にした索引要素を単語索引記憶手段106に出力し、先頭フラグを変更する。この場合、単語「mm」のスケールファクタ206は−3で、基準となる単位に正規化したときの指数部は図11に示すように−4となり、索引要素作成手段108は索引要素(“0.1”,[4(−4)])を単語索引記憶手段106に出力し、先頭判定手段109は先頭フラグを0に変更する。
【0065】
次に、ステップ1012の処理で着目文字位置を一文字進め、先頭の処理に戻る。
【0066】
ステップ1001において、索引語抽出手段103は、次の索引語「mm」を抽出し、種別フラグ205を取得する。そして、ステップ1002において、数値判定手段107は、抽出された索引語「mm」が数値であるかを単語辞書201の種別フラグ205を用いて判定する。このとき、索引語「mm」の種別フラグ205は、3であり単位を表し、数値ではないと判定される。従って、ステップ1004において、索引要素作成手段108は、索引要素(“mm”,[7])を単語索引記憶手段106に出力する。また、先頭判定手段103は、先頭フラグを1に変更する。
【0067】
このようにして、索引作成装置20は、検索対象文書401から次々と索引語を切り出し、図12に示すように索引語1203と出現位置1204の組、または索引語1203と出現位置1204と指数部1205、または索引語1203と出現位置1204と正規化された指数部1206との組、を索引要素1202として単語索引記憶手段106に出力する。
【0068】
以上の処理を繰り返すことにより、検索対象文書401中のすべての索引語に対して行われ、図12に示すような単語索引1201が作成される。
【0069】
以上の説明のように、本実施の形態の索引作成装置によれば、検索対象文書中の数値が単位を含んだ数量に対して、正規化された指数部を用いた単語索引を作成するため、数量の範囲に対する検索のために特別な情報を作成する必要がなく、一部の単語にだけ指数部を含めた索引要素を作成するため、単語索引の情報量を大きくふやすことなく検索条件に合致する数値の範囲検索が可能となる。また、正規化された指数部を用いた単語索引を作成するため、検索対象文書中とは異なるスケールの数量による検索条件に対しても、漏れのない検索を実現することができる。
【0070】
(実施の形態3)
本発明の実施の形態3は、実施の形態2とは検索対象文書中で数値や数量の範囲を表す区間表現を検索可能な単語索引を作成する点が異なり、以下では異なる部分を中心に説明する。
【0071】
以下、本発明の実施の形態3の索引作成装置に関して、図面を用いて説明する。図13は、本実施の形態における索引作成装置30の全体構成を表すブロック図である。
【0072】
図13において、図9と異なる点は、指数部算定手段3005の動作と、指数部算定手段2005により駆動され、区間表現を単語辞書201の種別フラグにより判定する範囲判定手段3006を有する点である。
【0073】
以上の構成の索引作成装置30において、その動作を、簡単な単語辞書と簡単な検索対象文書を例に、図面を参照して説明する。本実施の形態では、実施の形態1,2と同様に図2、図3に示す単語辞書201と、図4に示す検索対象文書401を例として説明する。また、図15は索引語の指数部を具体的に示した図、図16は図2、図3に示す単語辞書201を用いて、図4に示す検索対象文書401から作成した単語索引1601の内容を示す概念図である。
【0074】
索引作成装置30の動作を図14に示す処理フローチャートを用いて説明する。
【0075】
まず、索引の作成に先立って、図2、図3の内容の単語辞書201が単語辞書記憶手段102に格納され、図4の検索対象文書401が検索対象文書記憶手段101に格納される。また、索引要素作成手段108は、先頭フラグの初期値として1を記憶する。
【0076】
この状態で、ステップ1401において、索引語抽出手段103は、検索対象文書301を読み込み、単語辞書201を用いて索引語「波長」を抽出し、種別フラグ202を取得する。また、数値判定手段107における索引語「波長」の数値判定処理(ステップ1402)と、索引要素作成手段108における索引要素の出力処理(ステップ1413)及び索引語抽出の終了判定にかかる処理(ステップ1414、ステップ1415)については、実施の形態1,2と同じ処理であるので説明を省略する。
【0077】
また、ステップ1401において、索引語抽出手段103は、検索対象文書401の次の索引語「が」を切り出す。数値判定手段107における索引語「が」の数値判定処理(ステップ1402)と、索引要素作成手段108における索引要素の出力処理(ステップ1413)及び索引語抽出処理の終了判定に掛かる処理(ステップ1414、ステップ1415)についても、実施の形態1,2と同じ処理であるので説明を省略する。
【0078】
次に、ステップ1401において、索引語抽出手段103は、単語辞書201を用いて検索対象文書401の次の索引語「0.1」を抽出し、種別フラグ204を取得する。そして、ステップ1402において、数値判定手段107は抽出された索引語「0.1」は種別フラグ204が1であるため数値であると判定する。ステップ1402で索引語「0.1」が数値であると判定されると、ステップ1403において、索引要素作成手段108は先頭判定手段109を駆動し、索引語「0.1」が数値の先頭の単語であるかを判断する。先頭判定手段108は、索引語が先頭の単語であるかを表す情報として先頭フラグを記憶しており、この場合の先頭フラグは1で、先頭判定手段108は索引語「0.1」を先頭の単語であると判断する。
【0079】
ステップ1403で先頭の単語であると判断されると、索引要素作成手段108は指数部算定手段3005を駆動し、ステップ1404において、索引語を含む数値を同定し、指数部を算定する。この場合、図15に示すように、索引語「0.1」を含む数値は「0.1」と同定され、数値の指数部は−1と算定される。次に、ステップ1405において、指数部算定手段3005は、索引語「0.1」を含む数値の直後の単語「mm」を抽出し、単語辞書201の種別フラグ205が3であるため、単語「mm」は単位であると判定する。ステップ1405で索引語「0.1」の直後が単位であると判定されると、指数部算定手段3005は正規化指数部算定手段2007を駆動する。ステップ1409において、正規化指数部算定手段2007は正規化した指数部を算定する。
【0080】
最後に、ステップ1410において、索引要素作成手段108は索引語とその出現位置と正規化指数部算定手段2007が算定した正規化された指数部とを組にした索引要素を単語索引記憶手段106に出力し、先頭フラグを変更する。この場合、単位単語「mm」のスケールファクタ206は−3で、基準となる単位に正規化したときの指数部は図15に示すように−4となり、索引要素作成手段108は(“0.1”,[4(−4)])を単語索引記憶手段106に出力する。また、先頭フラグを0に変更する。
【0081】
次に、ステップ1401において、索引語抽出手段103は、次の索引語「mm」を抽出し、種別フラグ205を取得する。そして、ステップ1402において、数値判定手段107は、切り出された単語「mm」が数値であるかを単語辞書201の種別フラグ205を用いて判定する。このとき、索引語「mm」の種別フラグ205は3で単位を表し、数値ではないと判定される。従って、ステップ1413において、索引要素作成手段108は、索引要素(“mm”,[7])を単語索引記憶手段106に出力する。また、索引要素作成手段108は、先頭フラグを1に変更する。
【0082】
このようにして、索引作成装置30は、検索対象文書401から次々と索引語を抽出し、索引語と出現位置の組、または索引語と出現位置と正規化された指数部との組、を索引要素として単語索引記憶手段106に出力する。
【0083】
次に、ステップ1401において、索引語抽出手段103が索引語「38」を抽出したときの処理について説明する。まず、ステップ1401において、索引語抽出手段103は、索引語「38」を抽出し、種別フラグ208を取得する。そして、ステップ1402において、数値判定手段107は、抽出された索引語「38」の種別フラグ208が1であるため、数値であると判定する。ステップ1402で索引語「38」が数値であると判定されると、ステップ1403おいて、索引要素作成手段108は、先頭判定手段109を駆動し、索引語「38」が数値の先頭の単語であるかを判断する。先頭判定手段108は、索引語が数値の先頭の単語であるかをあらわす情報として先頭フラグを記憶しており、この場合の先頭フラグは1で、索引語「38」は数値の先頭の単語であると判定される。ステップ1403で先頭の単語であると判断されると、索引要素作成手段108は指数部算定手段3005を駆動し、ステップ1404において、索引語を含む数値を同定し、指数部を算定する。この場合、図15に示すように、索引語「38」を含む数値は「380」と同定され、数値の指数部は+2と算定される。
【0084】
次に、ステップ1405において、指数部算定手段3005は索引語「38」を含む数値の直後の単語「〜」を抽出し、単語辞書201の種別フラグ207が2であるため、単語「〜」は単位ではないと判断し、さらにステップ1406において範囲判定手段3006を駆動する。範囲判定手段3006は、単語「〜」の種別フラグ207が2であるため、単語「〜」を範囲単語であると判断する。ステップ1406で、索引語「38」を含む数値の直後の単語「〜」が範囲単語であると判断されると、ステップ1407において、指数部算定手段3005は、範囲単語の直後が数量であるかどうかを判断する。この場合、単語「〜」の直後は「760nm」で、指数部算定手段3005は数量であると判断する。ステップ1407で単語「〜」の直後が数量であると判断されると、ステップ1409において、指数部算定手段3005は、数量の単位を単語辞書201からスケールファクタを取得し、取得したスケールファクタを用いて基準単位に正規化したときの指数部を算定する。この場合、ステップ1409において、指数部算定手段3005は、単語辞書201からスケールファクタ208を取得し、正規化指数部算定手段2007を駆動し、図15に示すように索引語「38」の正規化した指数部―7を算定する。
【0085】
最後に、ステップ1410において、索引要素作成手段108は、図16に示すように索引語1603とその出現位置1604、正規化された指数部1605とを組にした索引要素1602として(“38”,[18(−7)])を単語索引記憶手段106に出力し、先頭判定手段109が記憶する先頭フラグを0に変更する。
【0086】
以上の処理を繰り返すことにより、検索対象文書401中のすべての索引語に対して行われたなら、図16に示すような単語索引1601が作成される。
【0087】
以上の説明のように、本実施の形態の索引作成装置によれば、検索対象文書中の数値や数量の範囲を表す区間表現を、数値の指数部または数量の単位を正規化したときの指数部を用いて単語索引を作成することで、索引の情報量をあまり増やすことなく、検索対象文書中の区間表現を漏れがなく検索することが可能となる。
【0088】
(実施の形態4)
本発明の実施の形態4は、実施の形態1により生成された単語索引801を用いて、検索対象文書中の数値に対して、数値の指数部を用いて検索条件として指定された範囲に合致する文書を効率的に検索する文書検索装置である。
【0089】
以下、本発明の実施の形態4の文書検索装置について図面を参照して説明する。図17は、本発明の実施の形態4における文書検索装置40の全体構成を表すブロック図である。
【0090】
図17において、401は、検索条件を入力する検索条件入力手段である。402は、検索条件入力手段401で入力された検索条件を、単語辞書記憶手段102に記憶された単語辞書201を用いて検索単語に分割し、検索条件指数部算定手段403を駆動して検索条件の指数部を算定する検索単語作成手段、403は検索単語作成手段402により駆動され、検索条件の指数部を算定する検索条件指数部算定手段、404は検索単語作成手段402において作成された検索単語を用いて、単語索引記憶手段106に記憶されている単語索引801から検索条件に合致する索引要素を抽出する索引要素検索手段、405は索引要素検索手段404により駆動され、検索条件の指数部と抽出された索引要素の指数部を比較し、検索条件に合致する索引要素を抽出する検索条件指数部比較手段、406は索引要素検索手段404で求めた索引要素の集合に対して、出現位置の照合を行い、単語の連接を判定する連接判定手段、407は検索条件に合致する文字列の出現位置を出力する検索結果出力手段、408は複数の検索条件に対して、検索条件に合致する結果の集合を求める結果集合算定手段である。
【0091】
以上のように構成された文書検索装置40の動作を、図27に示す全文検索処理のフローチャートと、簡単な単語辞書と簡単な検索対象文書を例に、図面を参照して説明する。図18は、図8に示す単語索引801と、図2と図3に示す単語辞書201とを用いた、「387.6以上」という検索条件に対する全文検索処理の概念図である。
【0092】
まず、全文検索処理に先立って、図8に示す単語索引801が単語索引記憶手段106に格納され、図2、図3に示す単語辞書201が単語辞書記憶手段102に格納されているものとする。
【0093】
この状態で、ステップ2701において、検索条件入力手段401は、検索条件として「387.6以上」を入力する。次に、ステップ2702において、検索単語作成手段402は、検索条件指数部算定手段403を駆動し、検索条件の指数部「+2」を算定する。
【0094】
そして、ステップ2703において、検索単語作成手段402は、検索条件入力手段401で入力された検索条件「387.6」に対して、単語辞書201を用いて検索単語「38」と「7.6」に分割する。このとき、検索単語の作成は、出現位置の照合回数が最小となるように分割する。
【0095】
次に、ステップ2704において、索引要素検索手段404は、検索条件指数部比較手段405を駆動し、算定した検索単語の指数部を用いて、検索条件に合致する索引要素の集合を単語索引801から抽出する。この場合、検索条件の指数部は「+2」で、検索範囲が「以上」であり、検索条件に合致する索引要素の集合として図18に示す1801が抽出される。そして、ステップ2705において、索引要素検索手段404は、先頭の検索単語以外の検索単語について検索条件に合致する索引語の索引要素を単語索引801から抽出する。この場合、先頭の検索単語以外の検索単語は「7.6」で検索範囲は「以上」であるので、検索条件に合致する索引語の索引要素として図18の1802が抽出される。
【0096】
次に、ステップ2706において、連接判定手段406は、先頭の検索単語と同じ索引語で、同じ指数部の索引要素を1801から抽出し、1802との出現位置情報の連接を判定し、連接している索引要素の出現位置情報を求める。この場合、先頭の検索単語と同じ索引語で同じ指数部の索引要素は図18の1803で、検索単語「38」と「7.6」の位置の差である「2」と等しい出現位置の差となる索引要素はないので連接している索引要素の集合は空集合となる。
【0097】
次に、ステップ2707において、結果集合算定手段408は、最終的に検索条件に合致する索引要素の出現位置の集合を算定する。また、この場合、検索条件「387.6以上」に合致する出現位置の集合として、図18の1804が求められる。
【0098】
最後に、ステップ2708において、検索結果表示手段407は、検索条件に合致する索引要素の出現位置の集合を、検索結果として表示する。
【0099】
この場合の検索結果は、1804のようになる。
【0100】
以上の説明のように、本実施の形態4によれば、数値の指数部を含む索引要素をもつ単語索引を用いて、数値の指数部の比較と数値の一部を比較する処理をすることで、検索条件に合致する数値を効率的に検索することが可能である。
【0101】
(実施の形態5)
本発明の実施の形態5は、実施の形態2の索引作成装置20で作成された単語索引1201を用いて、検索対象文書中の数量に対して、あらかじめ決めた基準となる単位に正規化した指数部を用いて検索条件として指定された範囲に合致する文書を効率的に検索する文書検索装置である。
【0102】
以下、本発明の実施の形態5の文書検索装置に関して、図面を用いて説明する。
【0103】
図19は、本実施の形態における文書検索装置50の全体構成を表すブロック図である。図19において、図17と異なる点は、検索条件指数部算定手段503の動作である。
【0104】
以上の構成の文書検索装置50の動作について、図28の動作フローチャートと、簡単な単語辞書と簡単な検索対象文書を例に、図面を参照して説明する。図20、図21、図22は、図12に示す内容の単語索引1201と、図2と図3に示す単語辞書201とを用いた、「7.60e+2 nm以上 0.11mm以下」という検索条件に対する全文検索処理の概念図である。
【0105】
まず、全文検索処理に先立って、図12に示す単語索引1201が単語索引記憶手段106に格納され、図2、図3に示す単語辞書201が単語辞書記憶手段102に格納される。
【0106】
この状態で、ステップ2801において、検索条件入力手段401は、検索条件として「760nm以上」と「876nm以下」を入力する。次に、ステップ2802において、検索単語作成手段402は、検索条件指数部算定手段503を駆動し、正規化された検索条件の指数部を算定する。まず、検索条件「760」に対して、検索条件の指数部「+2」と単位単語「nm」の指数部「−9」により、検索単語「12」の正規化された指数部が「−7」と算定される。同様に、検索条件「876」に対して、正規化された指数部が「−5」と算定される。
【0107】
そして、ステップ2803において、検索単語作成手段402は、単語辞書201を用いて、検索条件入力手段401で入力された検索条件「760」を検索単語「76」と「60」、検索条件「876」を「87」と「76」に分割する。
【0108】
次に、ステップ2804において、索引要素検索手段404は、検索条件指数部比較手段405を駆動し、算定した検索単語の指数部を用いて、検索条件に合致する索引要素の集合を単語索引1201から抽出する。この場合、検索単語「76」の指数部が「−7」で、検索範囲が「以上」であるので、検索条件に合致する索引要素の集合として図20に示す2001が抽出される。また、検索単語「87」の指数部は「−5」で、検索範囲が「以下」であるので、検索条件に合致する索引要素の集合として図21に示す2101が抽出される。
【0109】
そして、ステップ2805において、索引要素検索手段404は、先頭の検索単語以外の検索単語について検索条件に合致する索引語の索引要素を単語索引1201から抽出する。この場合、検索条件「760nm」の先頭以外の検索単語は「60」で検索範囲は「以上」であるので、検索条件に合致する索引語の索引要素として図20の2002が抽出される。また、検索条件「876nm」の先頭以外の検索単語は「76」で検索範囲は「以下」であるので、検索条件に合致する索引語の索引要素として図21の2102が抽出される。
【0110】
次に、ステップ2806において、連接判定手段406は、先頭の検索単語と同じ索引語で、同じ指数部の索引要素を2001から抽出し、2001との出現位置情報の連接を判定し、連接している索引要素の出現位置情報を求める。この場合、先頭の検索単語と同じ索引語で同じ指数部の索引要素は図20の2003で、検索単語「76」と「60」の位置の差である「1」と等しい出現位置の差となる索引要素の出現位置の集合として図20に示す2004が求められ、検索条件「760nm」に合致する索引要素の出現位置の集合として2005が求められる。また、検索条件「876nm」に対しては、連接の判定は行われず、検索条件に合致する索引要素の出現位置の集合として図21に示す2103が求められる。
【0111】
次に、ステップ2807において、結果集合算定手段408は、最終的に検索条件に合致する索引要素の出現位置の集合を算定する。この場合、検索条件「760nm」と「876nm」の出現位置の積集合が最終的な結果集合で、図22の2201が求められる。
【0112】
最後に、ステップ2808において、検索結果表示手段407は、検索条件に合致する索引要素の出現位置の集合を、検索結果として表示する。
【0113】
この場合の検索結果は、2201のようになる。
【0114】
以上の説明のように、本実施の形態によれば、数値に単位を含む数量について、正規化した指数部を含む索引要素をもつ単語索引を用いて、同じ単位種で異なるスケールの単位の指定された検索条件に対しても、漏れがなく、効率的に検索条件に合致する数量を検索できる。
【0115】
(実施の形態6)
本発明の実施の形態6は、実施の形態3の索引作成装置30で作成された単語索引1601を用い、検索対象文書中の数値または単位を含む数量の区間を含む文書を検索する文書検索装置である。
【0116】
以下、本発明の実施の形態6の文書検索装置に関して、図面を用いて説明する。
【0117】
図23は、本実施の形態における文書検索装置60の全体構成を表すブロック図である。図23において、図19と異なる点は、索引要素検索手段604と連接判定手段606の動作である。
【0118】
以上の構成の文書検索装置60の動作について、図29の処理フローチャートと、簡単な単語辞書と簡単な検索対象文書を例に、図面を参照して説明する。図24、図25、図26は、図16に示す内容の単語索引1601と、図2と図3に示す単語辞書201とを用いた、「4.56e+2nmより大 6.64e+2nm以下」という検索条件に対する全文検索処理の概念図である。
【0119】
まず、全文検索処理に先立って、図16に示す単語索引1601が単語索引記憶手段106に格納され、図2、図3に示す単語辞書201が単語辞書記憶手段102に格納される。
【0120】
この状態で、ステップ2901において、検索条件入力手段401は、検索条件として「4.56e+2nmより大」と「6.64e+2nmより小」を入力する。次に、ステップ2902において、検索単語作成手段402は、検索条件指数部算定手段503を駆動し、正規化された検索条件の指数部を算定する。まず、検索条件「4.56e+2nmより大」に対して、検索条件の指数部「+2」と単位単語「nm」の指数部「−9」により、正規化された指数部が「−7」と算定される。同様に、検索単語「6.64e+2nmより小」に対して、正規化された指数部が「−7」と算定される。
【0121】
そして、ステップ2903において、検索単語作成手段402は、単語辞書201を用いて、検索条件入力手段401で入力された検索条件「4.56e+2」を「45」と「56」に分割する。またもう一方の検索条件「6.64e+2」を「65」と「64」に分割する。
【0122】
次に、ステップ2904において、索引要素検索手段604は、検索条件指数部比較手段405を駆動し、算定した検索単語の指数部を用いて、検索条件に合致する索引要素の集合を単語索引1601から抽出する。この場合、検索単語「45」の指数部が「−7」で、検索範囲が「より大」であるので、検索条件に合致する索引要素の集合として図24に示す2401が抽出される。また、検索単語「65」の指数部は「−7」で、検索範囲が「より小」であるので、検索条件に合致する索引要素の集合として図25に示す2501が抽出される。
【0123】
また、ステップ2904において、索引要素検索手段604は、区間を示す索引語の索引要素の集合として図30に示す3001を抽出する。そして、ステップ2905において、索引要素検索手段604は、先頭の検索単語以外の検索単語について検索条件に合致する索引語の索引要素を単語索引1601から抽出する。この場合、検索条件「4.56e+2nm」の先頭以外の検索単語は「56」で検索範囲は「より大」であるので、検索条件に合致する索引語の索引要素として図24の2402が抽出される。また、検索条件「6.64e+2nm」の先頭以外の検索単語は「64」で検索範囲は「より小」であるので、検索条件に合致する索引語の索引要素として図25の2502が抽出される。
【0124】
次に、ステップ2906において、連接判定手段606は、先頭の検索単語と同じ索引語で、同じ指数部の索引要素を2401から抽出し、2401との出現位置情報の連接を判定し、連接している索引要素の出現位置情報を求める。この場合、先頭の検索単語と同じ索引語で同じ指数部の索引要素はないため、連接判定は行われず、図24に示す2404が検索条件に合致する索引要素の集合として求められる。また、検索条件「6.64e+2nm」に対しても、連接の判定は行われず、検索条件に合致する索引要素の出現位置の集合として図25に示す2503が求められる。そして、連接判定手段606は、検索条件「4.56e+2nm」と「6.64e+2nm」のそれぞれに合致する索引要素の集合と図30の3001に示す区間を示す索引語の索引要素の集合と連接を判定する。この場合、図24に示す検索条件「4.56e+2nm」に合致する索引要素の出現位置の集合と、図25に示す検索条件「6.64e+2nm」に合致する索引要素の出現位置の集合と、図30に示す区間を示す索引語の索引要素の出現位置の集合と連接を判定し、図26の出現位置が求められる。
【0125】
次に、ステップ2907において、結果集合算定手段408は、最終的に検索条件に合致する索引要素の出現位置の集合を算定する。この場合、検索条件「4.56e+2nmより大」で「6.64nmより小」以外の検索条件は入力されていないので、処理は行われない。
【0126】
この場合の検索結果は、2601のようになる。
【0127】
最後に、ステップ2908において、検索結果表示手段407は、検索条件に合致する索引要素の出現位置の集合を、検索結果として表示する。
【0128】
以上の説明のように、本実施の形態によれば、数値や数量の区間に対して、検索条件に合致する検索対象文書中の数値の区間を、漏れがなく、効率的に検索することができる。
【産業上の利用可能性】
【0129】
本発明にかかる索引作成装置は、検索対象文書中の数値に対して、索引として登録する単語と文書中での出現位置とその数値の指数部を組とした索引要素を持つ単語索引を作成するため、従来の技術のように数値範囲検索のために特別な情報を作成する必要がなく、索引の情報量を大きく増やすことなく数値範囲検索と全文検索が可能となる。
【0130】
また本発明の文書検索装置によれば、数値の指数部を含む索引要素をもつ単語索引を用いて、数値の指数部の比較と数値の一部を比較する処理をすることで、数値範囲検索のための情報に対する余分な比較が必要なくなり、検索条件に合致する数値を効率的に検索することが可能であり、文書情報が格納されたデータベースや一般のワードプロセッサ、パーソナルコンピュータなどの記憶装置に蓄積された文書情報の検索等に有用である。
【図面の簡単な説明】
【0131】
【図1】本発明の実施の形態1における索引作成装置のブロック構成図
【図2】単語辞書を構成する単語辞書の例を示す図
【図3】単語辞書を構成する単語辞書の例を示す図
【図4】検索対象文書の例を示す図
【図5】検出された索引語の例を示す図
【図6】本発明の実施の形態1における索引作成装置の処理フローチャート
【図7】算定される指数部を具体的に示した図
【図8】索引作成装置により作成された単語索引の例を示す図
【図9】本発明の実施の形態2における索引作成装置のブロック構成図
【図10】本発明の実施の形態2における索引作成装置の処理フローチャート
【図11】本発明の実施の形態2において算定される指数部を具体的に示した図
【図12】索引作成装置により作成された単語索引の例を示す図
【図13】本発明の実施の形態3における索引作成装置のブロック構成図
【図14】本発明の実施の形態3における索引作成装置の処理フローチャート
【図15】算定される指数部を具体的に示した図
【図16】索引作成装置により作成された単語索引の例を示す図
【図17】本発明の実施の形態4の文書作成装置のブロック構成図
【図18】検索条件に対する全文検索処理の概念図
【図19】本発明の実施の形態5の文書作成装置のブロック構成図
【図20】検索条件「7.60e+2nm以上」に対する全文検索処理の概念図
【図21】検索条件「0.11mm以下」に対する全文検索処理の概念図
【図22】検索条件「7.60e+2nm以上0.11mm以下」に対する全文検索処理の概念図
【図23】本発明の実施の形態6の文書作成装置のブロック構成図
【図24】検索条件「4.56e+2nmより大」に対する全文検索処理の概念図
【図25】検索条件「6.64e+2nm以下」に対する全文検索処理の概念図
【図26】検索条件「4.56e+2nmより大 6.64e+2nm以下」に対する全文検索処理の概念図
【図27】本発明の実施の形態4における文書検索装置の処理フローチャート
【図28】本発明の実施の形態5における文書検索装置の処理フローチャート
【図29】本発明の実施の形態6における文書検索装置の処理フローチャート
【図30】索引要素の集合の例を示す図
【符号の説明】
【0132】
101,201,301 検索対象文書
102,202,302,404,504,604 単語辞書
103,203,303 索引要素作成手段
104,204,304 先頭情報記憶手段
105,205,305 指数部算定手段
106,206,306,401,501,601 単語索引
207,308 指数部正規化手段
307 範囲判定手段
402,502,602 先頭単語リスト作成手段
405,507,607 数値単語リスト作成手段
505,605 単位単語リスト作成手段
609 範囲単語リスト作成手段
407,509,611 検索条件入力手段
408,510,612 検索条件指数部算定手段
409,511,613 検索条件指数部比較手段
410,512,614 検索条件数値比較手段
411,513,615 連接判定手段
412,514,616 検索結果表示手段
617 範囲連接判定手段

【特許請求の範囲】
【請求項1】
有限個の文字の並びからなる検索対象文書を格納する検索対象文書記憶手段と、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶手段を持ち、前記検索対象文書から前記単語辞書を用いて単語索引として登録する索引語を抽出する索引語抽出手段と、前記抽出した索引語が数値であるかについて前記単語辞書を用いて判定する数値判定手段と、前記数値判定手段で数値であると判定された前記索引語が先頭の単語であるかについて先頭フラグを用いて判定する先頭判定手段と、前記数値判定手段で数値であると判定され、かつ前記先頭判定手段で先頭の単語であると判定された前記索引語について前記索引語を含む数値の指数部を算定する指数部算定手段と、前記索引語と前記指数部を含む索引要素を作成し、作成された複数の索引要素を単語索引として単語索引記憶手段に登録する索引要素作成手段とを具備する索引作成装置。
【請求項2】
前記指数部算定手段は、前記数値判定手段で数値であると判定され、前記先頭判定手段で先頭であると判定された前記索引語について前記索引語を含む数値の指数部を、あらかじめ決めた基準となる単位に正規化する指数部を求めることを特徴とする請求項1記載の索引作成装置。
【請求項3】
前記指数部算定手段は、前記数値判定手段で数値であると判定され、前記先頭判定手段で先頭の単語であると判定された前記索引語について前記索引語を含む数値の指数部の後に数値範囲を示す範囲単語であるかを判定し、かつ前記範囲単語の直後が単位を持つ数値の場合は、あらかじめ決めた基準となる単位に正規化する指数部を求めることを特徴とする請求項2記載の索引作成装置。
【請求項4】
索引語とその指数部を含む複数の索引要素を単語索引として格納する単語索引記憶手段と、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶手段と、少なくとも1つの検索条件として文字列を入力する検索条件文字列入力手段と、前記検索条件となる文字列に対して文字列に含まれる数値の桁数から検索条件指数部を算定し、前記文字列は前記単語辞書を用いて、前記単語索引を検索する単位である検索単語として抽出し、前記検索条件指数部と検索単語を作成する検索単語作成手段と、前記検索条件指数部と前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合をそれぞれ検索する索引要素検索手段と、前記索引要素検索手段が検索した前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合を用いて連接を判定する連接判定手段と、前記検索条件単位で抽出された結果集合を求める結果集合算定手段と、前記結果集合から複数の検索条件に合致する検索結果を出力する検索結果出力手段とを具備する文書検索装置。
【請求項5】
索引要素検索手段は、前記検索条件指数部をあらかじめ決めた基準となる単位に正規化した検索条件指数部を求め、前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合をそれぞれ検索することを特徴とする請求項5記載の文書検索装置。
【請求項6】
索引要素検索手段は、前記検索条件となる文字列の検索条件指数部の後に数値範囲を示す範囲単語であるかを判定し、かつ前記範囲単語の直後が数値の場合は、前記検索条件指数部をあらかじめ決めた基準となる単位に正規化した検索条件指数部を求め、前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部を含む索引要素の集合と検索単語について前記検索条件単位に合致する索引要素の集合をそれぞれ検索することを特徴とする請求項6記載の文書検索装置。
【請求項7】
有限個の文字の並びからなる検索対象文書を格納する検索対象文書記憶ステップと、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶ステップを持ち、前記検索対象文書から前記単語辞書を用いて単語索引として登録する索引語を抽出する索引語抽出ステップと、前記抽出した索引語が数値であるかについて前記単語辞書を用いて判定する数値判定ステップと、前記数値判定ステップで数値であると判定された前記索引語が先頭の単語であるかについて先頭フラグを用いて判定する先頭判定ステップと、前記数値判定ステップで数値であると判定され、かつ前記先頭判定ステップで先頭の単語であると判定された前記索引語について前記索引語を含む数値の指数部を算定する指数部算定ステップと、前記索引語と前記指数部を含む索引要素を作成し、作成された複数の索引要素を単語索引として単語索引記憶部に登録する索引要素作成ステップとを具備する索引作成方法。
【請求項8】
索引語とその指数部を含む複数の索引要素を単語索引として格納する単語索引記憶ステップと、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶ステップと、少なくとも1つの検索条件として文字列を入力する検索条件文字列入力ステップと、前記検索条件となる文字列に対して文字列に含まれる数値の桁数から検索条件指数部を算定し、前記文字列は前記単語辞書を用いて、前記単語索引を検索する単位である検索単語として抽出し、前記検索条件指数部と検索単語を作成する検索単語作成ステップと、前記検索条件指数部と前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合をそれぞれ検索する索引要素検索ステップと、前記索引要素検索ステップが検索した前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合を用いて連接を判定する連接判定ステップと、前記検索条件単位で抽出された結果集合を求める結果集合算定ステップと、前記結果集合から複数の検索条件に合致する検索結果を出力する検索結果出力ステップとを具備する文書検索方法。
【請求項9】
コンピュータに、有限個の文字の並びからなる検索対象文書を格納する検索対象文書記憶ステップと、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶ステップを持ち、前記検索対象文書から前記単語辞書を用いて単語索引として登録する索引語を抽出する索引語抽出ステップと、前記抽出した索引語が数値であるかについて前記単語辞書を用いて判定する数値判定ステップと、前記数値判定ステップで数値であると判定された前記索引語が先頭の単語であるかについて先頭フラグを用いて判定する先頭判定ステップと、前記数値判定ステップで数値であると判定され、かつ前記先頭判定ステップで先頭の単語であると判定された前記索引語について前記索引語を含む数値の指数部を算定する指数部算定ステップと、前記索引語と前記指数部を含む索引要素を作成し、作成された複数の索引要素を単語索引として単語索引記憶部に登録する索引要素作成ステップとを実行させるためのプログラム。
【請求項10】
コンピュータに、索引語とその指数部を含む複数の索引要素を単語索引として格納する単語索引記憶ステップと、有限個の文字列を単語として登録した単語辞書を格納する単語辞書記憶ステップと、少なくとも1つの検索条件として文字列を入力する検索条件文字列入力ステップと、前記検索条件となる文字列に対して文字列に含まれる数値の桁数から検索条件指数部を算定し、前記文字列は前記単語辞書を用いて、前記単語索引を検索する単位である検索単語として抽出し、前記検索条件指数部と検索単語を作成する検索単語作成ステップと、前記検索条件指数部と前記検索単語を用いて前記単語索引から前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合をそれぞれ検索する索引要素検索ステップと、前記索引要素検索ステップが検索した前記検索条件単位に合致する指数部を含む索引要素の集合と前記検索単語について前記検索条件単位に合致する索引要素の集合を用いて連接を判定する連接判定ステップと、前記検索条件単位で抽出された結果集合を求める結果集合算定ステップと、前記結果集合から複数の検索条件に合致する検索結果を出力する検索結果出力ステップとを実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate