JP2012053605A - Information retrieval device, information retrieval method and information retrieval program - Google Patents

Information retrieval device, information retrieval method and information retrieval program Download PDF

Info

Publication number
JP2012053605A
JP2012053605A JP2010194819A JP2010194819A JP2012053605A JP 2012053605 A JP2012053605 A JP 2012053605A JP 2010194819 A JP2010194819 A JP 2010194819A JP 2010194819 A JP2010194819 A JP 2010194819A JP 2012053605 A JP2012053605 A JP 2012053605A
Authority
JP
Japan
Prior art keywords
document
search
documents
population
index
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
JP2010194819A
Other languages
Japanese (ja)
Other versions
JP5505207B2 (en
Inventor
Shiro Horibe
史郎 堀部
Takuya Hiraoka
卓也 平岡
Tetsuya Ikeda
哲也 池田
Hiroko Ida
裕子 井田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2010194819A priority Critical patent/JP5505207B2/en
Publication of JP2012053605A publication Critical patent/JP2012053605A/en
Application granted granted Critical
Publication of JP5505207B2 publication Critical patent/JP5505207B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To quickly acquire, when calculating scores, those values, and to output the scores of each document with respect to retrieval words even when a document set is limited under retrieval conditions.SOLUTION: An information retrieval device includes: retrieval condition input means for inputting retrieval conditions including one or more retrieval words and classification keys; storage means for storing index information in which a population of documents to be retrieved is associated with each of those classification keys, and document storage numerical values and mean document length values of the documents in the population and document frequency values including each of words in a plurality of documents to be retrieved are calculated and stored; retrieval means for acquiring the document storage numerical values and the mean document length values in the population associated with the classification key and the document frequency values in the population including a word matched with a retrieval word among the documents in the population associated with the classification key, and for calculating the degree of adaptation of each document in the population based on the acquired values, and for retrieving the document; and retrieval result output means for outputting a retrieval result by attaching the degree of adaptation to the document.

Description

本発明は、情報検索装置、情報検索方法及び情報検索プログラムに関する。   The present invention relates to an information search apparatus, an information search method, and an information search program.

近年、電子データに対する検索技術あるいは検索結果のランキング検索技術は、検索対象の情報量の増大による検索結果数の増大のため、ますます重要な技術となっている。求める情報が大量の検索結果に埋もれてしまい、見つけることが困難になっているからである。   In recent years, search technology for electronic data or search result ranking search technology has become an increasingly important technology because of the increase in the number of search results due to an increase in the amount of information to be searched. This is because the desired information is buried in a large amount of search results, making it difficult to find.

検索システムで用いられるランキング検索は、検索条件を満たす検索結果集合をある評価方法で順序付けて出力する機能である。検索条件と評価方法が適切であれば、ランキング上位には利用者が求めるデータが出力される可能性が高くなる。またランキングの上位に利用者が求めるデータと近いデータが存在しなければ、早い段階で検索条件の見直しも可能になる。このようにランキング検索は利用者の検索負担を小さくするための必須機能となっている。   The ranking search used in the search system is a function for outputting a search result set satisfying the search conditions in order by a certain evaluation method. If the search conditions and the evaluation method are appropriate, there is a high possibility that data required by the user will be output at the top of the ranking. If there is no data close to the data required by the user at the top of the ranking, the search conditions can be reviewed at an early stage. Thus, the ranking search is an indispensable function for reducing the search burden on the user.

ランキング検索の精度を左右する評価方法には、Webページ検索でよく用いられているページへの被参照数を利用した方法や検索条件に含まれる検索語のデータベースにおける出現頻度を利用した方法などがあり、特に後者においては上述したWebページのハイパーリンクや学術論文の引用のような、他のデータへの参照・被参照が存在しないデータに対しても有効であり、用途が広い。   Evaluation methods that influence the accuracy of the ranking search include a method that uses the number of referenced pages that are often used in Web page searches and a method that uses the appearance frequency in a database of search terms included in the search conditions. In particular, the latter is effective even for data that does not have references / references to other data such as hyperlinks of Web pages and citations of academic papers, and has a wide range of uses.

さて、この検索語のデータベースにおける出現頻度を利用した検索結果集合の評価方法は、必ずしも適切でないことがある。具体的に、出現頻度を利用した検索語の重要度の評価方法は、ある検索語を含むデータが、データベース中に少ないほど、検索語の重要度を高く評価している。そして、そのような重要度の高い検索語を多く含み、かつ、それぞれの検索語がデータ内で頻出する文書ほど、スコアが高くなる評価手法を使っている。即ち検索語の重要度は、データベースの検索対象となる情報の母集団に依存し、この母集団の範囲がスコアに影響を与えることになる。   Now, the evaluation method of the search result set using the appearance frequency of the search word database may not always be appropriate. Specifically, in the evaluation method of the importance level of a search word using the appearance frequency, the importance of the search word is evaluated higher as the data including a certain search word is less in the database. Then, an evaluation method is used in which a document including many search words having such high importance and each search word frequently appears in the data has a higher score. That is, the importance of the search term depends on the population of information to be searched in the database, and the range of this population affects the score.

これに関する技術として、例えば特許文献1において特許文献を検索する場合、文献中に含まれる文言の指定に加えて、IPC(International Patent Classification)やFI(File Index)等の分類情報が設定されている場合等である。このように分類情報が設定されている場合、検索語(キーワード)による検索は指定された分類情報の範囲内において、即ち限定された母集団の範囲内において行われる。   For example, when searching for a patent document in Patent Document 1, classification information such as IPC (International Patent Classification) or FI (File Index) is set in addition to designation of a word included in the document. This is the case. When classification information is set in this way, a search using a search word (keyword) is performed within a range of designated classification information, that is, within a limited population.

このように検索条件において、検索語のみならず、検索対象とする文書が指定されている場合(つまり検索対象となる情報の母集団が限定されている場合)、検索語の重要度を決める母集団を、検索条件で指定された文書集合に変更してから、検索語の重要度の評価を行うことができる。   Thus, in the search condition, not only the search term but also the document to be searched is specified (that is, when the population of information to be searched is limited), the mother that determines the importance of the search term After the group is changed to the document set specified by the search condition, the importance of the search term can be evaluated.

しかしながら、上述のような評価に用いる文書母集団を限定された集合に変更する方法は、限定された文書集合の範囲内に対し検索語の重要度を評価できるため、より適切なスコアを算出できることがあるものの、その一方で従来の索引構造ではこの評価を高速に実行できないという問題があった。   However, the method of changing the document population used for the evaluation as described above to a limited set can evaluate the importance of the search word within the limited range of the document set, so that a more appropriate score can be calculated. On the other hand, the conventional index structure has a problem that this evaluation cannot be performed at high speed.

従来一般の全文索引では、ある索引語がどの文書に含まれているかを高速に検索するために、少なくとも索引語とその索引語を含む文書に対応した文書IDのリストとの組を格納している。またさらにランキング検索を行なう場合には、索引語の単語頻度(tf値:対象の文書における対象の索引語数)、索引語の文書頻度(df値:対象の文書集合における対象の索引語を含む文書数)、文書格納数、対象の文書の文書長、対象の文書集合の平均文書長などの値を全文索引で格納している。   In a conventional full-text index, in order to quickly search which document contains an index word, at least a set of an index word and a list of document IDs corresponding to the document including the index word is stored. Yes. Further, when performing a ranking search, index word frequency (tf value: number of target index words in the target document), index word document frequency (df value: document including the target index word in the target document set) Number), the number of stored documents, the document length of the target document, the average document length of the target document set, and the like are stored in a full-text index.

いずれの値もスコア算出時に用いられるパラメータでありランキング検索の精度に関わる重要な値であるが、このうち索引語の文書頻度や平均文書長、文書格納数のような値は、検索条件に分類情報のような検索対象を絞り込む条件があった場合、分類情報によって文書母集団は限定された集合に変更されるため、これら値は全文索引に格納されたものをそのまま利用できず、そのため検索の度にあらためて計算される必要があった。これは検索精度と速度とにトレードオフの関係が生じていることになる。   Each value is a parameter used when calculating the score, and is an important value related to the accuracy of the ranking search. Among these, values such as index word document frequency, average document length, and document storage count are classified as search conditions. If there is a condition to narrow down the search target such as information, the document population is changed to a limited set by the classification information, so those values stored in the full-text index cannot be used as they are, so the search It had to be calculated again. This means that there is a trade-off between search accuracy and speed.

本発明は、上記の点に鑑みてなされたものであって、検索精度と速度とにトレードオフの関係を回避すべく、検索条件により文書集合が限定された場合でも、限定された文書集合に対応する索引語の文書頻度、平均文書長及び文書格納数を高速に取得可能な索引を備え、スコア算出時に高速にこれら値を取得し、検索語に対する各文書のスコアの出力を行う情報検索装置、情報検索方法及び情報検索プログラムを提供することを目的とする。   The present invention has been made in view of the above points, and in order to avoid a trade-off relationship between search accuracy and speed, even when a document set is limited by a search condition, the document set is limited. An information search device having an index that can quickly acquire the document frequency, average document length, and document storage number of the corresponding index word, and acquiring these values at high speed when calculating the score, and outputting the score of each document for the search word An object of the present invention is to provide an information search method and an information search program.

上記の目的を達成するために、本発明に係る情報検索装置は、複数の検索対象の文書を表示する順序を指定された検索条件に対する適合度に基づいて決定する情報検索装置であって、1以上の検索語と、前記複数の検索対象の文書のうち前記順序の決定を行う対象となる検索対象文書の母集団を限定する分類キーとを含む検索条件を入力する検索条件入力手段と、前記分類キー毎に前記検索対象の文書の母集団が対応付けられるとともに、前記母集団内の文書格納数値と、前記母集団内の文書の平均文書長値と、前記複数の検索対象の文書内のワード毎に当該ワードを含む前記母集団内の文書数である文書頻度値とが少なくとも算出され格納された索引情報を記憶した記憶手段と、前記検索条件が入力されたとき、入力分類キーに対応付けされた前記母集団内の文書の文書格納数値及び平均文書長値と、入力分類キーに対応付けられた前記母集団内の文書のうち、入力検索語と一致するワードを含む当該母集団内の文書数である文書頻度値とを前記記憶手段の検索情報から取得し、取得された文書格納数値、平均文書長値、及び文書頻度値を含む適合度を算出するためのパラメータ値に基づいて当該母集団内の文書毎の適合度を算出することにより、文書を検索する検索手段と、検索された文書に適合度を付して検索結果として出力する検索結果出力手段とを有することを特徴とする。   In order to achieve the above object, an information search apparatus according to the present invention is an information search apparatus that determines an order in which a plurality of search target documents are displayed based on a degree of suitability for a specified search condition. A search condition input means for inputting a search condition including the above search terms and a classification key for limiting a population of search target documents to be determined in the order among the plurality of search target documents; A population of the search target document is associated with each classification key, a document storage value in the population, an average document length value of the document in the population, and a plurality of search target documents Corresponding to an input classification key when the search condition is input, and storage means storing index information in which at least a document frequency value that is the number of documents in the population including the word for each word is calculated and stored Attached Document storage values and average document length values of documents in the population, and documents in the population including words that match the input search word among the documents in the population associated with the input classification key A document frequency value, which is a number, is obtained from the search information of the storage means, and based on the acquired document storage numerical value, average document length value, and parameter value for calculating a fitness including the document frequency value, A search means for searching for a document by calculating a goodness of fit for each document in the group, and a search result output means for adding a goodness of fit to the searched document and outputting it as a search result .

また、上記の目的を達成するために、上記情報検索装置において、前記記憶手段の索引情報は、前記分類キー毎に前記ワードが対応付けされて索引が作成され、前記検索手段は、入力分類キー、入力検索語の順で前記索引を辿ることにより前記文書頻度値が取得されることを特徴とする。   In order to achieve the above object, in the information search apparatus, the index information in the storage means is created by associating the word with each classification key, and the search means includes an input classification key. The document frequency value is acquired by tracing the index in the order of input search terms.

また、上記の目的を達成するために、上記情報検索装置において、前記記憶手段の索引情報は、前記ワード毎に前記分類キーが対応付けされて索引が作成され、前記検索手段は、入力検索語、入力分類キーの順で前記索引を辿ることにより前記文書頻度値が取得されることを特徴とする。   In order to achieve the above object, in the information search apparatus, the index information of the storage means is created by associating the classification key with each word, and the search means includes an input search word. The document frequency value is obtained by tracing the index in the order of the input classification key.

なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、などに適用したものも本発明の態様として有効である。   In addition, what applied the arbitrary combination of the component of this invention, expression, or a component to a method, an apparatus, a system, a computer program, a recording medium, etc. is also effective as an aspect of this invention.

本発明によれば、検索条件により文書集合が限定された場合でも、限定された文書集合に対応する索引語の文書頻度、平均文書長及び文書格納数を高速に取得可能な索引を備え、スコア算出時に高速にこれら値を取得し、検索語に対する各文書のスコアの出力を行う情報検索装置、情報検索方法及び情報検索プログラムを提供することができる。   According to the present invention, even when a document set is limited by a search condition, an index is provided that can quickly acquire a document frequency, an average document length, and a document storage number of an index word corresponding to the limited document set, and a score It is possible to provide an information search apparatus, an information search method, and an information search program that acquire these values at high speed at the time of calculation and output the score of each document for the search word.

本実施の形態に係る情報検索システム例を示す図である。It is a figure which shows the example of the information search system which concerns on this Embodiment. 検索条件指定画面例を示す。An example of a search condition designation screen is shown. 本実施形態に係る情報検索装置1のハードウェア構成を示すブロック図である。It is a block diagram which shows the hardware constitutions of the information search device 1 which concerns on this embodiment. 従来の索引情報(全文索引と非全文表)の構成例を示す。The structural example of the conventional index information (a full-text index and a non-full-text table) is shown. 従来の索引情報(全文索引と非全文表)への文書データ挿入フロー例を示す。An example of the flow of inserting document data into conventional index information (full-text index and non-full-text table) is shown. 従来の索引情報(全文索引と非全文表)を使った検索フロー例を示す。A search flow example using conventional index information (full-text index and non-full-text table) is shown. 本実施形態に係る全文と非全文データの複合索引141の構成例を示す。The structural example of the composite index 141 of the full text and non-full text data which concerns on this embodiment is shown. 本実施形態に係る全文と非全文データの複合索引141への文書データ挿入フロー例を示す。An example of a flow of inserting document data into the composite index 141 of full text and non-full text data according to the present embodiment is shown. 本実施形態に係る複合索引141を使った検索フロー例を示す。An example of a search flow using the composite index 141 according to the present embodiment is shown. 本実施形態に係る複合索引141を使った検索フロー例を示す。An example of a search flow using the composite index 141 according to the present embodiment is shown. 本実施形態に係る全文と非全文データの複合索引142への文書データ挿入フロー例を示す。An example of a flow of inserting document data into the composite index 142 of full text and non-full text data according to the present embodiment is shown. 本実施形態に係る複合索引142を使った検索フロー例を示す。An example of a search flow using the composite index 142 according to the present embodiment is shown.

以下、本発明を実施するための最良の形態について図面を参照して説明する。本実施形態においては、文書を検索する情報検索装置を含む情報検索システムを例として説明する。   The best mode for carrying out the present invention will be described below with reference to the drawings. In the present embodiment, an information search system including an information search device for searching a document will be described as an example.

[システム構成]
図1は、本実施の形態に係る情報検索システム例を示す図である。図1に示すように、本実施形態に係る情報検索システムは、情報検索装置1、クライアント装置2及び検索対象情報データベース(DB)150を含む。クライアント装置2は、PC(Personal Computer)等の一般的な情報処理装置によって構成される。情報検索装置1は、ネットワークを介してクライアント装置2と接続されており、クライアント装置2からの検索要求を受けて検索対象情報DB200に格納されている文書情報を検索するサーバとして運用される。
[System configuration]
FIG. 1 is a diagram illustrating an example of an information search system according to the present embodiment. As shown in FIG. 1, the information search system according to the present embodiment includes an information search device 1, a client device 2, and a search target information database (DB) 150. The client device 2 is configured by a general information processing device such as a PC (Personal Computer). The information retrieval apparatus 1 is connected to the client apparatus 2 via a network, and is operated as a server that retrieves document information stored in the retrieval target information DB 200 in response to a retrieval request from the client apparatus 2.

検索対象情報DB200(以下単にDBという)は、検索対象の情報としての文書や文献を記憶している。即ち、本実施形態に係る検索対象情報は、DB200に格納されている文書情報(文書ファイル)である。尚、図1に示すように、本実施形態においては、DB200が情報検索装置1とは別に設けられている例を説明するが、DB200を情報検索装置1内部に構成することも可能である。DB200は、HDD等の不揮発性記憶媒体によって構成される。   The search target information DB 200 (hereinafter simply referred to as DB) stores documents and documents as search target information. That is, the search target information according to the present embodiment is document information (document file) stored in the DB 200. As shown in FIG. 1, in this embodiment, an example in which the DB 200 is provided separately from the information search apparatus 1 will be described. However, the DB 200 can be configured inside the information search apparatus 1. The DB 200 is configured by a nonvolatile storage medium such as an HDD.

また図に示されるように、本実施形態に係る情報検索装置1は、条件入力部110、検索部120、検索結果出力部130及び索引DB140を有する。   As shown in the figure, the information search apparatus 1 according to this embodiment includes a condition input unit 110, a search unit 120, a search result output unit 130, and an index DB 140.

条件入力部110は、ユーザのクライアント装置2から検索条件を入力する。図3に示すI/F50によって実現される。なお情報検索装置1の備える操作部70からも検索条件を入力できる。   The condition input unit 110 inputs search conditions from the user client device 2. This is realized by the I / F 50 shown in FIG. The search condition can also be input from the operation unit 70 provided in the information search apparatus 1.

検索部120は、入力された検索条件に基づいて、索引DB140の検索情報を利用して対象となる文書を検索する。検索結果には、検索条件の適合度(スコア)に応じたランキング形式の文書一覧表示等も含まれる。   The search unit 120 searches for a target document using the search information in the index DB 140 based on the input search condition. The search result includes a document list display in a ranking format according to the degree of matching (score) of the search condition.

検索結果出力部130は、検索された検索結果を出力する。ユーザのクライアント装置2から検索条件が入力されたときには、クライアント装置2に対して検索された検索結果を出力する。   The search result output unit 130 outputs the searched search result. When a search condition is input from the client device 2 of the user, the search result is output to the client device 2.

索引DB140は、DB200に格納されている文書の索引情報(索引データ)を記憶しているDB記憶部であり、例えば図3に示すHDD40やRAM20によって実現される。検索対象となる文書数が膨大な場合、検索にかかる時間も長くなっていってしまうが、予め検索対象となるDB200の文書群を走査しておき、高速な検索が可能になるような索引情報を準備しておくことで検索時のパフォーマンスを向上させる。検索情報はインデックスともいい文字列が検索キーとなっている。索引の具体例について図を参照して後述する。   The index DB 140 is a DB storage unit that stores index information (index data) of documents stored in the DB 200, and is realized by, for example, the HDD 40 or the RAM 20 illustrated in FIG. If the number of documents to be searched is enormous, the time required for the search will become long. However, index information that enables high-speed searching by scanning the document group in the DB 200 to be searched in advance. Improve search performance by preparing. The search information is also called an index, and a character string is a search key. A specific example of the index will be described later with reference to the drawings.

ここで、条件入力部110に入力される検索条件は、例えばクライアント装置2(又は操作部70)から入力できる。図2は、検索条件指定画面例を示す。ユーザは当該画面の「普通文指定(又はキーワード指定)」及び「分類情報指定」に検索条件を入力する。「普通文指定(又はキーワード指定)」には、文章形式又はワード形式で検索語を入力する。「分類情報指定」には、検索対象となる文書の母集団を指定するための所定の分類キーや分類コードを入力する。例えば検索対象の文書が特許文献である場合には、「G06F 17/30」などがここに入力される。このように本実施形態に係る情報検索装置1は、入力された少なくとも1以上の検索語及び1以上の所定の分類キーに基づいて検索処理を行うものである。   Here, the search condition input to the condition input unit 110 can be input from, for example, the client device 2 (or the operation unit 70). FIG. 2 shows an example of a search condition designation screen. The user inputs search conditions in “ordinary text designation (or keyword designation)” and “classification information designation” on the screen. In “ordinary sentence designation (or keyword designation)”, a search term is input in a sentence format or a word format. In “classification information designation”, a predetermined classification key or classification code for designating a population of documents to be searched is input. For example, when the search target document is a patent document, “G06F 17/30” or the like is input here. As described above, the information search apparatus 1 according to the present embodiment performs a search process based on at least one or more input search terms and one or more predetermined classification keys.

次に、本実施形態に係る情報検索装置1のハードウェア構成について説明する。図3は、本実施形態に係る情報検索装置1のハードウェア構成を示すブロック図である。図3に示すように、本実施形態に係る情報検索装置1は、一般的なサーバやPC(Personal Computer)等の情報処理端末と同様の構成を有する。即ち、本実施形態に係る情報検索装置1は、CPU(Central Processing Unit)10、RAM(Random Access Memory)20、ROM(Read Only Memory)30、HDD(Hard Disk Drive)40及びI/F50がバス80を介して接続されている。また、I/F50にはLCD(Liquid Crystal Display)60及び操作部70が接続されている。   Next, a hardware configuration of the information search apparatus 1 according to the present embodiment will be described. FIG. 3 is a block diagram illustrating a hardware configuration of the information search apparatus 1 according to the present embodiment. As shown in FIG. 3, the information search apparatus 1 according to the present embodiment has the same configuration as an information processing terminal such as a general server or a PC (Personal Computer). That is, the information search apparatus 1 according to the present embodiment includes a CPU (Central Processing Unit) 10, a RAM (Random Access Memory) 20, a ROM (Read Only Memory) 30, an HDD (Hard Disk Drive) 40, and an I / F 50. 80 is connected. Further, an LCD (Liquid Crystal Display) 60 and an operation unit 70 are connected to the I / F 50.

CPU10は演算手段であり、情報検索装置1全体の動作を制御する。RAM20は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、CPU10が情報を処理する際の作業領域として用いられる。ROM30は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。HDD40は、情報の読み書きが可能な不揮発性の記憶媒体であり、OS(Operating System)や各種の制御プログラム、アプリケーション・プログラム等が格納される。I/F50は、バス80と各種のハードウェアやネットワーク等を接続し制御する。LCD60は、ユーザが情報検索装置1の状態を確認するための視覚的ユーザインタフェースである。操作部70は、キーボードやマウス等、ユーザが情報検索装置1に情報(例えば検索条件)を入力するためのユーザインタフェースである。尚、図1において説明したように、本実施形態に係る情報検索装置1は、クライアント装置2に対するサーバとして運用される。従って、LCD60及び操作部70等のユーザインタフェースは省略することも可能である。   The CPU 10 is a calculation means and controls the operation of the entire information retrieval apparatus 1. The RAM 20 is a volatile storage medium capable of reading and writing information at high speed, and is used as a work area when the CPU 10 processes information. The ROM 30 is a read-only nonvolatile storage medium and stores a program such as firmware. The HDD 40 is a non-volatile storage medium that can read and write information, and stores an OS (Operating System), various control programs, application programs, and the like. The I / F 50 connects and controls the bus 80 and various hardware and networks. The LCD 60 is a visual user interface for the user to check the state of the information search device 1. The operation unit 70 is a user interface such as a keyboard and a mouse for the user to input information (for example, a search condition) to the information search apparatus 1. As described with reference to FIG. 1, the information search apparatus 1 according to the present embodiment is operated as a server for the client apparatus 2. Therefore, user interfaces such as the LCD 60 and the operation unit 70 can be omitted.

このようなハードウェア構成において、ROM30やHDD40若しくは図示しない光学ディスク等の記憶媒体に格納されたプログラムがRAM20に読み出され、CPU10の制御に従って動作することにより、ソフトウェア制御部(図1)が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組み合わせによって、本実施形態に係る情報検索装置1の機能を実現する機能ブロックが構成される。   In such a hardware configuration, a program stored in a storage medium such as the ROM 30, the HDD 40, or an optical disk (not shown) is read into the RAM 20, and operates according to the control of the CPU 10, thereby configuring the software control unit (FIG. 1). Is done. A functional block that realizes the function of the information search apparatus 1 according to the present embodiment is configured by a combination of the software control unit configured as described above and hardware.

[従来例]
さてここで、まず従来の全文索引の構成及び動作について説明してから、その後本実施形態に係る全文及び非全文の複合索引の構成及び動作を説明する。なおシステム構成については、従来例においても上述と概ね同等の構成でよい。但し索引DB140の索引情報(索引データ)及び検索部120による索引情報を利用した検索動作の点では差異がある。
[Conventional example]
Here, first, the configuration and operation of a conventional full-text index will be described, and then the configuration and operation of a full-text and non-full-text composite index according to the present embodiment will be described. The system configuration may be substantially the same as that described above in the conventional example. However, there is a difference in the search operation using the index information (index data) in the index DB 140 and the index information by the search unit 120.

図4は、従来の索引情報(全文索引と非全文表)の構成例を示す。全文索引は、索引語(図中indexkey=A、indexkey=Bなど)から、その索引語を含む文書の文書ID(各文書に付けられた一意の値で図中docID)等を格納したエントリを素早く取得できるデータ構造を持っている。またランキング検索をするのであれば、指定された検索条件に含まれる検索語等が夫々の文書において出現する回数である索引語の単語頻度(図中tf:Term Frequency)や、検索語等を含む文書の数である索引語の文書頻度(図中df:Document Frequency)などもエントリに含まれる。他にも文書長表において、各文書の文書長(図中len)や、文書集合の平均文書長(図中aveLen)や、格納文書数(図中N)なども含まれる。全文索引は、検索対象となるDB200の文書群中のワードが抽出され上述の各値(td,tf,len,aveLen等)が計算されて予めインデックス化される。   FIG. 4 shows a configuration example of conventional index information (full-text index and non-full-text table). A full-text index is an index word (indexkey = A, indexkey = B, etc. in the figure) and an entry that stores the document ID of the document containing the index word (unique value attached to each document, docID in the figure), etc. Has a data structure that can be retrieved quickly. If a ranking search is to be performed, the word frequency of the index word (tf: Term Frequency in the figure), which is the number of times the search word included in the specified search condition appears in each document, and the search word are included. The entry also includes the document frequency of the index word (df: Document Frequency in the figure), which is the number of documents. In addition, the document length table includes the document length of each document (len in the figure), the average document length of the document set (aveLen in the figure), the number of stored documents (N in the figure), and the like. The full-text index is indexed in advance by extracting words in the DB 200 document group to be searched and calculating the above values (td, tf, len, aveLen, etc.).

非全文表に関し、DB200の文書は予めカテゴライズされており予め分類キー(図中key=#1、key=#2など)が指定されている。非全文表は、分類キー毎にその分類キーに属する文書ID(図中docID)がインデックス化されており、入力された分類キーから、検索対象文書の母集団の文書IDを素早く取得できるデータ構造を持っている。また文書IDからその逆引きが必要な場合は逆引きで分類キーを取得できる。   Regarding the non-full-text table, the document of the DB 200 is categorized in advance, and a classification key (key = # 1, key = # 2, etc. in the figure) is designated in advance. In the non-full-text table, the document ID (docID in the figure) belonging to the classification key is indexed for each classification key, and the data structure that can quickly obtain the document ID of the population of the search target document from the input classification key have. If reverse lookup is necessary from the document ID, the classification key can be acquired by reverse lookup.

なお本図では、あくまで一例として、索引語に対応するエントリを取得するための構造は木(ツリー)構造を想定した図を用い、文書長等を格納する構造や非全文表には配列を想定した図を用いているが、いうまでもなく個々のデータ構造の実装には他にも様々な方法がありうる。   In this figure, as an example, the structure for acquiring entries corresponding to index terms is assumed to be a tree structure, and the structure for storing document lengths and non-full-text tables are assumed to be arrays. Of course, there are various other methods for implementing individual data structures.

図5は、従来の索引情報(全文索引と非全文表)への文書データ挿入フロー例を示す。つまりDB200に文書が追加されたとき、この追加文書を索引情報DB140の索引に追加更新するものである。索引への入力は、追加文書の文書IDと追加文書の全文データと非全文データ(例えば追加文書の分類キーという)とから構成されているとする。また、全文データは解析済みで、追加文書内の全文データに含まれるワード:索引語(indexkey)とその単語頻度(tf)の組が計算を経て得られているものとする。   FIG. 5 shows a flow example of document data insertion into conventional index information (full-text index and non-full-text table). That is, when a document is added to the DB 200, this additional document is additionally updated to the index of the index information DB 140. Assume that the input to the index includes a document ID of the additional document, full-text data of the additional document, and non-full-text data (for example, a classification key of the additional document). Also, it is assumed that the full text data has been analyzed, and a set of words: index word (indexkey) and word frequency (tf) included in the full text data in the additional document is obtained through calculation.

まず、非全文表にアクセスする(S101)。非全文表に、非全文データをキーとし非全文キーに対応する値を文書IDとしたデータを追加する(S102)。   First, the non-full-text table is accessed (S101). Data with non-full text data as a key and a value corresponding to the non-full text key as a document ID is added to the non-full text table (S102).

次に、全文索引にアクセスする(S103)。追加文書内の1のワードを全文索引のキーとして、全文索引の値である索引語(indexkey)のエントリを取得する(S104)。そのエントリに文書ID(docID)と単語頻度(tf)の組を一行追加する(S105)。文書ID(docID)と単語頻度(tf)の組を1件追加したので文書頻度(df)を1インクリメントする(S106)。   Next, the full text index is accessed (S103). The entry of the index word (indexkey), which is the value of the full-text index, is acquired using one word in the additional document as the key of the full-text index (S104). One line of a set of document ID (docID) and word frequency (tf) is added to the entry (S105). Since one set of document ID (docID) and word frequency (tf) is added, the document frequency (df) is incremented by 1 (S106).

次いで追加文書内の新たな1のワードを全文索引のキーとして、同様の処理を繰り返す(S107→S104)。新たなワードがもうない場合は、次のステップに移動する(S107→S108)。   Next, the same processing is repeated using the new one word in the additional document as a key for the full text index (S107 → S104). If there are no more new words, the process moves to the next step (S107 → S108).

次に、文書長表にアクセスする(S108)。文書長表に、文書IDをキーとし、文書IDに対する値を文書長(len)としたデータを一行追加する(S109)。文書IDを1件追加したので、文書長表の格納件数(N)を1インクリメントし、また追加した文書の文書長の増加分に合わせて平均文書長(aveLen)を更新する(S110)。   Next, the document length table is accessed (S108). One line of data with the document ID as a key and the value for the document ID as the document length (len) is added to the document length table (S109). Since one document ID is added, the number of stored documents (N) in the document length table is incremented by 1, and the average document length (aveLen) is updated according to the increase in the document length of the added document (S110).

図6は、従来の索引情報(全文索引と非全文表)を使った検索フロー例を示す。検索に際し、ユーザから入力された検索条件は、検索語と分類キーであり(例えば図2)、検索語(全文条件ともいう)によるマッチングと、分類キー(非全文条件ともいう)よるマッチングとの両方が満たされるものを検索結果とする。なお、全文条件は例えば図2のように「普通文指定」で入力された場合、「AのBでCされたD」という文章を「A/の/B/で/C/された/D」というようにワードに区切り、このうち意味のあるワードを抽出し検索語(A、B、C、D)とすればよい。これを検索語リストに入れておく。   FIG. 6 shows an example of a search flow using conventional index information (full-text index and non-full-text table). In the search, the search condition input by the user is a search word and a classification key (for example, FIG. 2). Matching by a search word (also referred to as a full-text condition) and matching by a classification key (also referred to as a non-full-text condition) A search result that satisfies both conditions is used. For example, when the full-text condition is input as “ordinary sentence designation” as shown in FIG. 2, the sentence “D of C of A by B” is changed to “A / of / B / in / C / dated / D ”, And a meaningful word may be extracted and used as a search word (A, B, C, D). Put this in the search term list.

まず、非全文表にアクセスする(S201)。非全文条件の分類キーをキーとして、条件を満たす文書IDを全て取得する(S202)。また取得された文書IDの数をカウントし絞り込み文書格納数(N)として取得する。絞り込み文書格納数(N)は、分類キーによって絞り込まれて限定された分類集合文書数である。なおここで文書IDが大量だった場合、その取得に計算やメモリ領域確保のコストがかかる。   First, the non-full-text table is accessed (S201). All document IDs satisfying the conditions are acquired using the classification key of the non-full text condition as a key (S202). Further, the number of acquired document IDs is counted and acquired as a narrowed document storage number (N). The narrowed document storage number (N) is the number of classified set documents limited by the classification key. If there are a large number of document IDs here, the acquisition and the cost of securing the memory area are required.

次に、全文索引にアクセスする(S203)。索引語を全文索引のキーとして、全文索引の値である索引語のエントリを取得する(S204)。そして取得されたエントリに含まれる文書ID(docID)と単語頻度(tf)の組のうち、非全文表で取得された文書IDと合致する組のみメモリに保持する(S205)。ここで合致するかどうかを確認しながら保持する組を決定するので取得コストがかかる。そして保持した文書ID(docID)と単語頻度(tf)の組の個数から、分類キーによって限定された文書の母集団における絞り込み文書頻度(df)が得られる(S206)。   Next, the full text index is accessed (S203). Using the index word as a key of the full-text index, an entry of the index word that is the value of the full-text index is acquired (S204). Then, only the set that matches the document ID acquired in the non-full text table among the sets of the document ID (docID) and word frequency (tf) included in the acquired entry is stored in the memory (S205). The acquisition cost is required because the group to be held is determined while checking whether or not they match. The narrowed document frequency (df) in the document population limited by the classification key is obtained from the number of pairs of the document ID (docID) and the word frequency (tf) held (S206).

次に、文書長表にアクセスする(S207)。エントリから取得した文書IDと合致する組の文書長だけでなく、非全文表で得られた文書IDと合致する文書IDの文書長を全て取得する。ここで非全文表で得られた文書IDの数は、エントリから取得された文書IDの数より多いため文書長の取得コストがかかる。取得された文書長から、分類キーによって限定された文書の母集団における絞り込み平均文書長(aveLen)を計算する(S209)。   Next, the document length table is accessed (S207). All document lengths of document IDs that match the document IDs obtained in the non-full-text table are acquired, as well as the document lengths of the pairs that match the document IDs obtained from the entries. Here, since the number of document IDs obtained in the non-full-text table is larger than the number of document IDs obtained from the entry, the acquisition cost of the document length is required. From the acquired document length, the narrowed-down average document length (aveLen) in the document population limited by the classification key is calculated (S209).

次に、索引語毎に各文書との適合度を、これまでに取得された単語頻度(tf)、絞り込み文書頻度(df)、絞り込み文書格納数(N)、文書長(len)、絞り込み平均文書長(aveLen)を使って計算する(S210)。なお入力された索引語に対する文書の適合度(スコア)の具体的計算については、公知のものを適用できるが例えば本発明者による特開2009−271659号(段落番号0055−0057、0085等)を参考にできる。ここでの文書頻度、平均文書長及び文書格納数は、非全文条件である分類キーによって絞り込まれ限定された文書の母集団から取得された値なので適合度の精度は高い。   Next, the degree of conformity with each document for each index word, word frequency (tf) acquired so far, narrowed document frequency (df), number of narrowed documents stored (N), document length (len), narrowed average Calculation is performed using the document length (aveLen) (S210). For specific calculation of the degree of matching (score) of the document with respect to the input index word, a well-known one can be applied. For example, Japanese Patent Application Laid-Open No. 2009-271659 (paragraph numbers 0055-0057, 0085, etc.) by the present inventor Can be helpful. Since the document frequency, the average document length, and the document storage number here are values obtained from a limited population of documents that are narrowed down by a classification key that is a non-full-text condition, the accuracy of the fitness is high.

次に、全文条件の索引語リストに検索語の残りがあれば、全文索引へのアクセスから繰り返し(S211→S204)、残りがなければ次のステップに進む(S211→S212)。   Next, if there is a search word remaining in the full-text condition index word list, the access to the full-text index is repeated (S211 → S204), and if there is no remaining, the process proceeds to the next step (S211 → S212).

次に、複数の検索語が入力されている場合には、検索語毎対して文献の適合度が計算されているので、文書毎に適合度を合成する(S212)。検索結果としてランキング形式で文書を表示するため、適合度の高い順に文書ID等をクライアント装置2などの呼び出し側に返す(S213)。   Next, when a plurality of search terms are input, since the fitness of the document is calculated for each search term, the fitness is synthesized for each document (S212). In order to display documents in a ranking format as a search result, document IDs and the like are returned to the calling side such as the client apparatus 2 in descending order of fitness (S213).

[実施形態1]
さて次に、実施形態1に係る全文及び非全文の複合索引の構成及び動作を説明する。
[Embodiment 1]
Next, the configuration and operation of the full-text and non-full-text composite index according to the first embodiment will be described.

図7は、本実施形態に係る全文と非全文データの複合索引141の構成例を示す。従来例の図4と比較し図に示される複合索引141は、図4の全文索引と非全文表とを統合し、また全文索引の索引構造と文書長表とを、非全文表の非全文データ(図中key=#1,key=#2など)の値で分割したものである。非全文データは例えば分類コードであるので、文書の分類カテゴリ数に応じた数に分割されている。   FIG. 7 shows a configuration example of the composite index 141 of full text and non-full text data according to the present embodiment. Compared with FIG. 4 of the conventional example, the composite index 141 shown in FIG. 4 integrates the full-text index and the non-full-text table of FIG. 4, and combines the index structure of the full-text index and the document length table into the non-full-text of the non-full-text table. It is divided by the value of data (key = # 1, key = # 2, etc. in the figure). Since the non-full-text data is, for example, a classification code, it is divided into numbers according to the number of classification categories of the document.

この複合索引141の特徴は、索引を非全文データの値で分割しインデックス化しておくことで、非全文データの値によって変わる索引語の絞り込み文書頻度(df)や絞り込み平均文書長(aveLen)、絞り込み文書格納数(N)は予め計算し索引に登録しておくことができるので、これら値を少ないコストで取得できる。この点、検索の動作において後述する。   The characteristics of the composite index 141 are that the index is divided into non-full-text data values and indexed, so that the index word narrowing document frequency (df) and the narrowed average document length (aveLen), which change according to the non-full-text data values, Since the number of stored narrowed documents (N) can be calculated in advance and registered in the index, these values can be acquired at a low cost. This will be described later in the search operation.

このように分割された各索引構造においては、複合索引のルートノード(Root)から非全文データの値(図中#1,#2など)への分岐によって、全文索引の検索語のルートノードへ辿ることができる構造になっている。また、非全文データの値によって分割された複数ある文書長表も、非全文データの値(図中#1,#2など)によって一意に選択できる構造を持っている。   In each index structure thus divided, the branch from the root node (Root) of the composite index to the value of non-full-text data (# 1, # 2, etc. in the figure) leads to the root node of the search term of the full-text index It has a structure that can be traced. A plurality of document length tables divided by non-full-text data values also have a structure that can be uniquely selected by non-full-text data values (# 1, # 2, etc. in the figure).

図8は、本実施形態に係る全文と非全文データの複合索引141への文書データ挿入フロー例を示す。つまりDB200に文書が追加されたとき、この追加文書を索引情報DB140の複合索引141に追加更新するものである。索引への入力は、追加文書の文書IDと追加文書の全文データと非全文データ(例えば追加文書の分類コード)とから構成されているとする。また、追加文書内の全文データは解析済みで、全文データに含まれるワード:索引語(indexkey)とその単語頻度(tf)の組が計算を経て得られているものとする。   FIG. 8 shows an example of a flow of inserting document data into the composite index 141 of full text and non-full text data according to the present embodiment. That is, when a document is added to the DB 200, the additional document is additionally updated to the composite index 141 of the index information DB 140. It is assumed that the input to the index includes a document ID of the additional document, full text data of the additional document, and non-full text data (for example, a classification code of the additional document). Further, it is assumed that the full text data in the additional document has been analyzed, and a set of words: index word (indexkey) and word frequency (tf) included in the full text data is obtained through calculation.

まず、複合索引141にアクセスし、非全文データ(追加文書の分類コード)が示す索引構造(木構造)にアクセスする(S301)。追加文書内の全文データに含まれる1のワードを全文索引のキーとして、全文索引の値である索引語のエントリを取得する(S302)。そのエントリに文書ID(docID)と単語頻度(tf)の組を一行追加する(S303)。文書ID(docID)と単語頻度(tf)の組を1件追加したので絞り込み文書頻度(df)を1インクリメントする(S304)。   First, the composite index 141 is accessed, and the index structure (tree structure) indicated by the non-full-text data (additional document classification code) is accessed (S301). Using one word included in the full-text data in the additional document as a key of the full-text index, an index word entry that is the value of the full-text index is acquired (S302). One line of a set of document ID (docID) and word frequency (tf) is added to the entry (S303). Since one set of document ID (docID) and word frequency (tf) is added, the narrowed-down document frequency (df) is incremented by 1 (S304).

次いで追加文書内の新たな1のワードを全文索引のキーとして、同様の処理を繰り返す(S305→S302)。新たなワードがもうない場合は、次のステップに移動する(S305→S306)。   Next, the same processing is repeated using the new one word in the additional document as the key of the full text index (S305 → S302). If there are no more new words, the process moves to the next step (S305 → S306).

次に、非全文データが示す文書長表にアクセスする(S306)。文書長表に、文書IDをキーとし、文書IDに対する値を文書長(len)としたデータを一行追加する(S307)。文書IDを1件追加したので、文書長表の絞り込み格納件数(N)を1インクリメントし、また追加した文書の文書長の増加分に合わせて絞り込み平均文書長(aveLen)を更新する(S308)。なお絞り込み格納件数(N)は分類キーによって分類される文書母集団内の文書数を示す。絞り込み平均文書長(aveLen)は、分類キーによって分類される文書母集団内の文書の平均文書長を示す。   Next, the document length table indicated by the non-full-text data is accessed (S306). One line of data with the document ID as a key and the document ID (len) as the value for the document ID is added to the document length table (S307). Since one document ID has been added, the number of stored documents (N) in the document length table is incremented by 1, and the reduced average document length (aveLen) is updated in accordance with the increase in the document length of the added document (S308). . It should be noted that the number of stored items (N) indicates the number of documents in the document population classified by the classification key. The narrowed-down average document length (aveLen) indicates the average document length of documents in the document population classified by the classification key.

以上で示したように、従来例の図6と比較しても、複合索引化による文書データ挿入コストの上昇はほとんどない。   As described above, even when compared with the conventional example of FIG. 6, there is almost no increase in the document data insertion cost due to the composite indexing.

図9は、本実施形態に係る複合索引141を使った検索フロー例を示す。検索に際し、入力された検索条件は、検索語と分類コードであり(例えば図2)、検索語によるマッチング(全文条件という)と、分類コードよるマッチング(非全文条件という)との両方が満たされる条件とする。なお、全文条件は例えば図2のように「普通文指定」で入力された場合、上述した通り、文章をワードに区切り、意味のあるワードを抽出し検索語とすればよい。これを検索語リストに入れておく。   FIG. 9 shows an example of a search flow using the composite index 141 according to the present embodiment. In the search, the input search conditions are a search word and a classification code (for example, FIG. 2), and both matching by the search word (referred to as full text condition) and matching by the classification code (referred to as non-full text condition) are satisfied. Condition. For example, as shown in FIG. 2, when the full-text condition is input with “ordinary sentence designation” as shown in FIG. 2, as described above, the sentence may be divided into words and meaningful words may be extracted and used as search words. Put this in the search term list.

まず、複合索引141にアクセスし、入力された非全文条件の分類コードをキーとして、非全文データが示す索引構造(木構造)にアクセスする(S401)。例えば「key=#1」のツリーにアクセスする(図7)。入力された索引語を全文索引のキーとして、全文索引の値である索引語のエントリを取得する(S402)。例えば入力された索引語が「A」ならば、「indexkey=A」の子ツリーにアクセスし、「indexkey=A」のエントリを取得する。取得されたそのエントリに含まれる文書ID(docID)と単語頻度(tf)の組を全て取得する(S403)。例えば組(docID,tf)とするならば、(1,3)、(3,1)・・などとなる。またそのエントリから絞り込み文書頻度(df)を取得する(S404)。例えばdf=10が取得される。   First, the composite index 141 is accessed, and the index structure (tree structure) indicated by the non-full-text data is accessed using the inputted classification code of the non-full-text condition as a key (S401). For example, the tree of “key = # 1” is accessed (FIG. 7). Using the input index word as a key of the full-text index, an entry of the index word that is the value of the full-text index is acquired (S402). For example, if the input index word is “A”, a child tree of “indexkey = A” is accessed, and an entry of “indexkey = A” is acquired. All pairs of document ID (docID) and word frequency (tf) included in the acquired entry are acquired (S403). For example, if it is a set (docID, tf), it will be (1,3), (3,1), etc. Further, the narrowed document frequency (df) is acquired from the entry (S404). For example, df = 10 is acquired.

次に、非全文データが示す文書長表にアクセスする(S405)。例えば「key=#1」の文書長表にアクセスする(図7)。その文書長表から、S403で取得した文書IDと合致する文書IDの文書長(len)を全て取得する(S406)。例えば文書ID「1」の文書長「500」、文書ID「3」の文書長「1500」・・などとなる。また絞り込み平均文書長(aveLen)及び絞り込み文書格納数(N)を取得する(S407)。例えばaveLen=900が取得され、N=50が取得される。なおここで、絞り込み文書頻度(df)や絞り込み平均文書長(aveLen)、絞り込み文書格納数(N)は既に複合索引141に登録されているため単にこれら値は取得されればよく、特段の計算等は不要である。   Next, the document length table indicated by the non-full-text data is accessed (S405). For example, the document length table of “key = # 1” is accessed (FIG. 7). From the document length table, all document lengths (len) of document IDs that match the document IDs acquired in S403 are acquired (S406). For example, the document length “500” of the document ID “1”, the document length “1500” of the document ID “3”, etc. Further, the narrowed-down average document length (aveLen) and the narrowed-down document storage number (N) are acquired (S407). For example, aveLen = 900 is acquired and N = 50 is acquired. Here, since the narrowed document frequency (df), the narrowed average document length (aveLen), and the narrowed document storage number (N) have already been registered in the composite index 141, these values need only be acquired, and special calculation is performed. Etc. are not required.

次に、索引語毎に各文書との適合度を、これまでに取得された単語頻度(tf)、絞り込み文書頻度(df)、絞り込み文書格納数(N)、文書長(len)、絞り込み平均文書長(aveLen)を使って計算する(S408)。なお入力された索引語に対する文書の適合度(スコア)の具体的計算については、上述した通り、公知のものを適用できる(例えば特開2009−271659号)。ここでの絞り込み文書頻度、絞り込み平均文書長及び絞り込み文書格納数は、非全文条件である分類コードによって限定された文書の母集団から絞り込まれて取得された値なので適合度の精度は高い。   Next, the degree of conformity with each document for each index word, word frequency (tf) acquired so far, narrowed document frequency (df), number of narrowed documents stored (N), document length (len), narrowed average Calculation is performed using the document length (aveLen) (S408). Note that, as described above, a publicly known one can be applied to the specific calculation of the degree of matching (score) of a document with respect to an input index word (for example, JP 2009-271659 A). Since the narrowed document frequency, the narrowed average document length, and the number of narrowed documents stored here are values obtained by narrowing down from a population of documents limited by a classification code that is a non-full-text condition, the accuracy of the fitness is high.

次に、全文条件の索引語リストに検索語の残りがあれば、全文索引へのアクセスから繰り返し(S409→S402)、残りがなければ次のステップに進む(S409→S410)。   Next, if there is a remaining search word in the full-text condition index word list, the access to the full-text index is repeated (S409 → S402), and if there is no remaining, the process proceeds to the next step (S409 → S410).

次に、複数の検索語が入力されている場合には、検索語毎対して文献の適合度が計算されているので、文書毎に適合度を合成する(S410)。検索結果としてランキング形式で文書を表示するため、適合度の高い順に文書ID等をクライアント装置2などの呼び出し側に返す(S410)。   Next, when a plurality of search terms are input, since the fitness of the document is calculated for each search term, the fitness is synthesized for each document (S410). In order to display documents in a ranking format as a search result, document IDs and the like are returned to the calling side such as the client apparatus 2 in descending order of fitness (S410).

以上のように、索引語毎に各文書との適合度を算出するに際し、単語頻度(tf)、文書頻度(df)、文書格納数(N)、文書長(len)、平均文書長(aveLen)などの値が必要であるが、このうち文書頻度、平均文書長及び文書格納数の値には、非全文条件である分類コードによって限定された文書の母集団に基づく絞り込み文書頻度、絞り込み平均文書長及び絞り込み文書格納数を用いるため、適合度を高いものとすることができる。そしてここで本実施形態に係る複合索引141は、上述のような索引構造を有するため、絞り込み文書頻度(df)や絞り込み平均文書長(aveLen)、絞り込み文書格納数(N)は予め複合索引141に登録しておくことが可能であり、検索部120が検索を行なうとき、単にこれら値は取得されればよいので(特段の計算等は不要)、検索速度の向上を図ることができる。   As described above, the word frequency (tf), the document frequency (df), the document storage number (N), the document length (len), the average document length (aveLen) are calculated when calculating the fitness with each document for each index word. ), Etc., but the values of document frequency, average document length, and number of stored documents are limited document frequency based on the document population limited by the classification code that is a non-full-text condition, Since the document length and the number of narrowed document storages are used, the degree of conformance can be made high. Since the composite index 141 according to the present embodiment has the above-described index structure, the narrowed-down document frequency (df), the narrowed-down average document length (aveLen), and the number of narrowed-down document storages (N) are stored in advance. Since these values are simply acquired when the search unit 120 performs a search (no special calculation or the like is required), the search speed can be improved.

即ち従来の全文索引を拡張して、全文要素と非全文要素との複合索引を作成し、複合索引において、母集団を限定する条件によって分割された各集合に対応づけて索引を分割しておくことで、各集合における各索引語の文書頻度や各集合における平均文書長及び文書格納数を、分割された各索引にあらかじめ格納しておくことができるため、検索結果の評価時(適合度算出時)にこれらの値を計算なしで使うことができる。   In other words, the conventional full-text index is expanded to create a composite index of full-text elements and non-full-text elements, and the index is divided in correspondence with each set divided according to the condition that limits the population in the composite index. Thus, the document frequency of each index word in each set, the average document length and the number of documents stored in each set can be stored in advance in each divided index. These values can be used without calculation.

[実施形態2]
続いて、実施形態2に係る全文及び非全文の複合索引の構成及び動作を説明する。
[Embodiment 2]
Next, the configuration and operation of a full-text and non-full-text composite index according to the second embodiment will be described.

図10は、本実施形態に係る複合索引141を使った検索フロー例を示す。図に示される複合索引142は、上述の実施形態に係る複合索引141と概ね同様である。図4の全文索引と非全文表とを統合し、また全文索引の索引構造と文書長表とを、非全文表の非全文データ(図中key=#1,key=#2など)の値で分割したものである。   FIG. 10 shows an example of a search flow using the composite index 141 according to this embodiment. The composite index 142 shown in the figure is substantially the same as the composite index 141 according to the above-described embodiment. The full-text index and non-full-text table of Fig. 4 are integrated, and the index structure of the full-text index and the document length table are the values of non-full-text data of the non-full-text table (such as key = # 1, key = # 2 in the figure). Divided by.

但し、実施形態2に係る複合索引141を比較し、本実施形態に係る複合索引142は、文書IDと文書頻度とを取得するためのエントリまでの到達ルートの点で異なっている。ここで分割された各索引構造へは、複合索引のルートノード(Root)から全文データの値(図中indexkey=A, indexkey=Bなど)への分岐によって、非全文データのルートノードへ辿ることができる構造になっている。   However, the composite index 141 according to the second embodiment is compared, and the composite index 142 according to the present embodiment is different in terms of a route to reach an entry for acquiring the document ID and the document frequency. Each index structure divided here is traced to the root node of non-full-text data by branching from the root node (Root) of the composite index to the value of full-text data (indexkey = A, indexkey = B, etc. in the figure). It has a structure that can.

いずれにしてもこの複合索引142もまた、索引を非全文データの値で分割しインデックス化しておくことで、非全文データの値によって変わる索引語の文書頻度(df)や平均文書長(aveLen)を少ないコストで取得できる。   In any case, this compound index 142 is also divided into non-full-text data values and indexed, so that the index word document frequency (df) and average document length (aveLen) change depending on the non-full-text data values. Can be obtained at low cost.

図11は、本実施形態に係る全文と非全文データの複合索引142への文書データ挿入フロー例を示す。但し図8と比較し、その差異はS501及びS502である。   FIG. 11 shows an example of a flow of inserting document data into the composite index 142 of full text and non-full text data according to the present embodiment. However, compared with FIG. 8, the difference is S501 and S502.

まず、複合索引142にアクセスし追加文書内の全文データに含まれる1のワードを全文索引のキーとして、ルートノードから索引構造(木構造)にアクセスする(S501)。次に非全文データ(追加文書の分類コード)をキーとして、全文索引の値である索引語のエントリを取得する(S502)。要するに図8と比較し、複合索引142にアクセスしてから、新エントリとして文書IDと単語頻度との組を格納するためのエントリポイントまで到達するまでに、先に非全文データ(追加文書の分類コード)で引くか、追加文書の全文データ内のワードで引くかの違いであり、いずれにしても最終的には、エントリポイントにおいて追加文書の文書ID(docID)と単語頻度(tf)との組からなる新エントリが追加される。また絞り込み文書頻度(df)も1インクリメントされ更新される。なお、これ以降のステップは図8と同様であるためその説明は省略する。   First, the composite index 142 is accessed, and the index structure (tree structure) is accessed from the root node using one word included in the full-text data in the additional document as a key of the full-text index (S501). Next, using the non-full-text data (additional document classification code) as a key, an index word entry that is the value of the full-text index is acquired (S502). In short, in comparison with FIG. 8, before the entry point for storing the combination of the document ID and the word frequency is reached as a new entry, the non-full-text data (classification of the additional document) is first reached. Code) or a word in the full-text data of the additional document. In any case, finally, the document ID (docID) and the word frequency (tf) of the additional document at the entry point A new entry consisting of a set is added. The narrowed document frequency (df) is also incremented by one and updated. Since the subsequent steps are the same as those in FIG. 8, the description thereof is omitted.

図12は、本実施形態に係る複合索引142を使った検索フロー例を示す。但し図9と比較し、その差異はS601及びS602である。   FIG. 12 shows an example of a search flow using the composite index 142 according to the present embodiment. However, the difference is S601 and S602 as compared with FIG.

まず、複合索引142にアクセスし、入力された索引語を全文索引のキーとして、ルートノードから全文データが示す索引構造(木構造)にアクセスする(S601)。次に入力された非全文条件の分類コードをキーとして、全文索引の値である索引語のエントリを取得する(S602)。要するに図9と比較し、複合索引142にアクセスしてから、文書IDと単語頻度との組を取得するためのエントリまで到達するまでに、先に非全文データ(追加文書の分類コード)で引くか、追加文書の全文データ内のワードで引くかの違いであり、いずれにしても最終的には、追加文書の文書ID(docID)及び単語頻度(tf)の組のエントリが取得される。また絞り込み文書頻度(df)も取得される。なお、これ以降のステップは図9と同様であるためその説明は省略する。   First, the composite index 142 is accessed, and the index structure (tree structure) indicated by the full text data is accessed from the root node using the input index word as the key of the full text index (S601). Next, using the classification code of the input non-full-text condition as a key, an index word entry that is the value of the full-text index is acquired (S602). In short, as compared with FIG. 9, after access to the composite index 142 and before reaching the entry for obtaining a set of document ID and word frequency, the non-full-text data (additional document classification code) is first drawn. Or a word in the full-text data of the additional document, and in any case, finally, an entry of a set of the document ID (docID) and word frequency (tf) of the additional document is acquired. The narrowed document frequency (df) is also acquired. Since the subsequent steps are the same as those in FIG. 9, the description thereof is omitted.

[総括]
以上本実施形態に係る情報検索装置1は、索引語毎に各文書との適合度を算出するに際し、単語頻度(tf)、文書頻度(df)、文書格納数(N)、文書長(len)、平均文書長(aveLen)などの値が必要であるが、このうち文書頻度、平均文書長及び文書格納数の値には、非全文条件である分類コードによって限定された文書の母集団に基づく絞り込み文書頻度、絞り込み平均文書長及び絞り込み文書格納数を複合索引から取得して用いるため、適合度を高いものとすることができる。そしてここで本実施形態に係る複合索引は、上述のような索引構造を有するため、絞り込み文書頻度(df)や絞り込み平均文書長(aveLen)、絞り込み文書格納数(N)は予め複合索引に登録しておくことが可能であり、情報検索装置1が検索を行なうとき、単にこれら値は取得されればよいので(特段の計算等は不要)、検索速度の向上を図ることができる。
[Summary]
As described above, the information search apparatus 1 according to the present embodiment calculates the word frequency (tf), the document frequency (df), the document storage number (N), the document length (len) when calculating the fitness with each document for each index word. ), Average document length (aveLen), etc. are required. Of these values, the document frequency, average document length, and number of stored documents are not included in the document population limited by the classification code that is a non-full-text condition. Since the narrowed-down document frequency, the narrowed-down average document length, and the number of narrowed-down document storages are acquired from the composite index and used, the fitness level can be increased. Since the composite index according to this embodiment has the above-described index structure, the narrowed document frequency (df), the narrowed average document length (aveLen), and the number of narrowed document storages (N) are registered in the composite index in advance. When the information search apparatus 1 performs a search, these values need only be acquired (no special calculation or the like is required), so that the search speed can be improved.

即ち上述の本実施形態によれば、検索条件により文書集合が限定された場合でも、限定された文書集合に対応する索引語の文書頻度、平均文書長及び文書格納数を高速に取得可能な索引を備え、スコア算出時に高速にこれら値を取得し、検索語に対する各文書のスコアの出力を行う情報検索装置等を提供することが可能となる。   That is, according to the above-described embodiment, even when a document set is limited by a search condition, an index that can quickly acquire the document frequency, average document length, and document storage number of index words corresponding to the limited document set. It is possible to provide an information search apparatus that obtains these values at high speed when calculating the score and outputs the score of each document for the search word.

各実施形態に基づき本発明の説明を行ってきたが、上記各実施形態にあげたその他の要素との組み合わせなど、ここで示した要件に本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。また、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、などに適用したものも本発明の態様として有効である。   Although the present invention has been described based on each embodiment, the present invention is not limited to the requirements shown here, such as combinations with other elements listed in the above embodiments. With respect to these points, the present invention can be changed within a range that does not detract from the gist of the present invention, and can be appropriately determined according to the application form. Moreover, what applied the component, expression, or arbitrary combinations of the component of this invention to a method, an apparatus, a system, a computer program, a recording medium, etc. is also effective as an aspect of this invention.

1 情報検索装置
2 クライアント装置
10 CPU
20 RAM
30 ROM
40 HDD
50 I/F
60 LCD
70 操作部
80 バス
110 条件入力部
120 検索部
130 検索結果出力部
140 索引DB
200 検索対象情報DB
1 Information Retrieval Device 2 Client Device 10 CPU
20 RAM
30 ROM
40 HDD
50 I / F
60 LCD
70 Operation unit 80 Bus 110 Condition input unit 120 Search unit 130 Search result output unit 140 Index DB
200 Search target information DB

特開2009−271659号JP 2009-271659 A

Claims (5)

複数の検索対象の文書を表示する順序を指定された検索条件に対する適合度に基づいて決定する情報検索装置であって、
1以上の検索語と、前記複数の検索対象の文書のうち前記順序の決定を行う対象となる検索対象文書の母集団を限定する分類キーとを含む検索条件を入力する検索条件入力手段と、
前記分類キー毎に前記検索対象の文書の母集団が対応付けられるとともに、前記母集団内の文書格納数値と、前記母集団内の文書の平均文書長値と、前記複数の検索対象の文書内のワード毎に当該ワードを含む前記母集団内の文書数である文書頻度値とが少なくとも算出され格納された索引情報を記憶した記憶手段と、
前記検索条件が入力されたとき、入力分類キーに対応付けされた前記母集団内の文書の文書格納数値及び平均文書長値と、入力分類キーに対応付けられた前記母集団内の文書のうち、入力検索語と一致するワードを含む当該母集団内の文書数である文書頻度値とを前記記憶手段の検索情報から取得し、取得された文書格納数値、平均文書長値、及び文書頻度値を含む適合度を算出するためのパラメータ値に基づいて当該母集団内の文書毎の適合度を算出することにより、文書を検索する検索手段と、
検索された文書に適合度を付して検索結果として出力する検索結果出力手段と、
を有することを特徴とする情報検索装置。
An information search device that determines an order of displaying a plurality of documents to be searched based on a degree of conformity to a specified search condition,
A search condition input means for inputting a search condition including one or more search terms and a classification key for limiting a population of search target documents to be determined in the order among the plurality of search target documents;
A group of documents to be searched is associated with each classification key, a document storage value in the group, an average document length value of documents in the group, and a plurality of documents in the plurality of search objects Storage means for storing index information in which at least a document frequency value that is the number of documents in the population including the word is calculated and stored for each word of
When the search condition is input, the document storage numerical value and the average document length value of the document in the population associated with the input classification key, and the documents in the population associated with the input classification key The document frequency value that is the number of documents in the population including the word that matches the input search word is acquired from the search information of the storage means, and the acquired document storage value, average document length value, and document frequency value are acquired. Search means for searching for a document by calculating a fitness for each document in the population based on a parameter value for calculating a fitness including
A search result output means for attaching the degree of relevance to the retrieved document and outputting it as a search result;
An information retrieval apparatus comprising:
前記記憶手段の索引情報は、前記分類キー毎に前記ワードが対応付けされて索引が作成され、
前記検索手段は、入力分類キー、入力検索語の順で前記索引を辿ることにより前記文書頻度値が取得されること、
を特徴とする請求項1記載の情報検索装置。
The index information of the storage means is created by associating the word with each classification key,
The search means obtains the document frequency value by tracing the index in the order of an input classification key and an input search term;
The information retrieval apparatus according to claim 1.
前記記憶手段の索引情報は、前記ワード毎に前記分類キーが対応付けされて索引が作成され、
前記検索手段は、入力検索語、入力分類キーの順で前記索引を辿ることにより前記文書頻度値が取得されること、
を特徴とする請求項1記載の情報検索装置。
The index information of the storage means is created by associating the classification key with each word,
The search means obtains the document frequency value by tracing the index in the order of input search terms and input classification keys;
The information retrieval apparatus according to claim 1.
複数の検索対象の文書を表示する順序を指定された検索条件に対する適合度に基づいて決定する情報検索装置における情報検索方法であって、
前記複数の検索対象の文書のうち前記順序の決定を行う対象となる検索対象文書の母集団を限定する分類キー毎に前記検索対象の文書の母集団が対応付けられるとともに、前記母集団内の文書格納数値と、前記母集団内の文書の平均文書長値と、前記複数の検索対象の文書内のワード毎に当該ワードを含む前記母集団内の文書数である文書頻度値とが少なくとも算出され格納された索引情報を記憶する記憶手順と、
1以上の検索語と、前記分類キーとを含む検索条件を入力する検索条件入力手順と、
前記検索条件が入力されたとき、入力分類キーに対応付けされた前記母集団内の文書の文書格納数値及び平均文書長値と、入力分類キーに対応付けられた前記母集団内の文書のうち、入力検索語と一致するワードを含む当該母集団内の文書数である文書頻度値とを前記記憶手段の検索情報から取得し、取得された文書格納数値、平均文書長値、及び文書頻度値を含む適合度を算出するためのパラメータ値に基づいて当該母集団内の文書毎の適合度を算出することにより、文書を検索する検索手順と、
検索された文書に適合度を付して検索結果として出力する検索結果出力手順と、
を有することを特徴とする情報検索方法。
An information search method in an information search apparatus for determining a display order of a plurality of search target documents based on a degree of suitability for a specified search condition,
Among the plurality of search target documents, the search target document population is associated with each classification key that limits the search target document population for which the order is determined, and within the population A document storage value, an average document length value of documents in the population, and a document frequency value that is the number of documents in the population including the word for each word in the plurality of documents to be searched are calculated. A storage procedure for storing the stored index information;
A search condition input procedure for inputting a search condition including one or more search terms and the classification key;
When the search condition is input, the document storage numerical value and the average document length value of the document in the population associated with the input classification key, and the documents in the population associated with the input classification key The document frequency value that is the number of documents in the population including the word that matches the input search word is acquired from the search information of the storage means, and the acquired document storage value, average document length value, and document frequency value are acquired. A search procedure for searching for documents by calculating the fitness for each document in the population based on the parameter value for calculating the fitness including
A search result output procedure for outputting a search result with a goodness of fit to the searched document,
A method for retrieving information, comprising:
請求項4記載の情報検索方法をコンピュータに実行させるための情報検索プログラム。   An information search program for causing a computer to execute the information search method according to claim 4.
JP2010194819A 2010-08-31 2010-08-31 Information search apparatus, information search method, and information search program Expired - Fee Related JP5505207B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010194819A JP5505207B2 (en) 2010-08-31 2010-08-31 Information search apparatus, information search method, and information search program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010194819A JP5505207B2 (en) 2010-08-31 2010-08-31 Information search apparatus, information search method, and information search program

Publications (2)

Publication Number Publication Date
JP2012053605A true JP2012053605A (en) 2012-03-15
JP5505207B2 JP5505207B2 (en) 2014-05-28

Family

ID=45906865

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010194819A Expired - Fee Related JP5505207B2 (en) 2010-08-31 2010-08-31 Information search apparatus, information search method, and information search program

Country Status (1)

Country Link
JP (1) JP5505207B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013210834A (en) * 2012-03-30 2013-10-10 Docomo Technology Inc Patent search support apparatus, patent search support method, and program

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320403A (en) * 1997-05-14 1998-12-04 N T T Data:Kk Method and device for generating retrieval expression, and record medium
JPH11143892A (en) * 1997-11-07 1999-05-28 Fujitsu Ltd Device and method for keyword weight generation and program storage medium
JP2005235065A (en) * 2004-02-23 2005-09-02 Ntt Data Corp Information retrieval device
JP2005267397A (en) * 2004-03-19 2005-09-29 Oki Electric Ind Co Ltd Phrase classification system, phrase classification method and phrase classification program
JP2007164583A (en) * 2005-12-15 2007-06-28 Oki Electric Ind Co Ltd Apparatus, method, and program for determination
JP2009271659A (en) * 2008-05-02 2009-11-19 Ricoh Co Ltd Information processing apparatus, information processing method, information processing program and recording medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10320403A (en) * 1997-05-14 1998-12-04 N T T Data:Kk Method and device for generating retrieval expression, and record medium
JPH11143892A (en) * 1997-11-07 1999-05-28 Fujitsu Ltd Device and method for keyword weight generation and program storage medium
JP2005235065A (en) * 2004-02-23 2005-09-02 Ntt Data Corp Information retrieval device
JP2005267397A (en) * 2004-03-19 2005-09-29 Oki Electric Ind Co Ltd Phrase classification system, phrase classification method and phrase classification program
JP2007164583A (en) * 2005-12-15 2007-06-28 Oki Electric Ind Co Ltd Apparatus, method, and program for determination
JP2009271659A (en) * 2008-05-02 2009-11-19 Ricoh Co Ltd Information processing apparatus, information processing method, information processing program and recording medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013210834A (en) * 2012-03-30 2013-10-10 Docomo Technology Inc Patent search support apparatus, patent search support method, and program

Also Published As

Publication number Publication date
JP5505207B2 (en) 2014-05-28

Similar Documents

Publication Publication Date Title
JP4848317B2 (en) Database indexing system, method and program
US7769771B2 (en) Searching a document using relevance feedback
US8983965B2 (en) Document rating calculation system, document rating calculation method and program
JP2009525520A (en) Evaluation method for ranking and sorting electronic documents in search result list based on relevance, and database search engine
CN111400323A (en) Data retrieval method, system, device and storage medium
JP4237813B2 (en) Structured document management system
JP2000200281A (en) Device and method for information retrieval and recording medium where information retrieval program is recorded
JP2008083769A (en) Document search apparatus and method
JP2013174988A (en) Similar document retrieval support apparatus and similar document retrieval support program
JP5179564B2 (en) Query segment position determination device
JP5505207B2 (en) Information search apparatus, information search method, and information search program
US10394870B2 (en) Search method
KR100906809B1 (en) Keyword searching method
JP5127553B2 (en) Information processing apparatus, information processing method, program, and recording medium
JP2012027841A (en) Retrieval program, retrieval device, retrieval system, retrieval method, and recording medium
JPH1011469A (en) Multistage table processing system
KR101303363B1 (en) Data processing system and method
JP6534454B2 (en) INFORMATION SEARCH METHOD, INFORMATION SEARCH DEVICE, AND INFORMATION SEARCH SYSTEM
JP2007026116A (en) Concept search system and concept search method
JP2002117043A (en) Device and method for document retrieval, and recording medium with recorded program for implementing the same method
KR100645711B1 (en) Server, Method and System for Providing Information Search Service by Using Web Page Segmented into Several Information Blocks
JP2010501927A (en) Information terminal equipped with content search system
CN116842160A (en) Patent search type generation method, system, equipment and medium
CN116126899A (en) Data retrieval method and device, electronic equipment and storage medium
Kumar et al. Enhancing the Search Results through Web Structure Mining Using Frequent Pattern Analysis and Linear Correlation Method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140131

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: 20140218

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140303

R151 Written notification of patent or utility model registration

Ref document number: 5505207

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees