JP7670951B2 - Information processing device, information processing method, and program - Google Patents
Information processing device, information processing method, and program Download PDFInfo
- Publication number
- JP7670951B2 JP7670951B2 JP2020178643A JP2020178643A JP7670951B2 JP 7670951 B2 JP7670951 B2 JP 7670951B2 JP 2020178643 A JP2020178643 A JP 2020178643A JP 2020178643 A JP2020178643 A JP 2020178643A JP 7670951 B2 JP7670951 B2 JP 7670951B2
- Authority
- JP
- Japan
- Prior art keywords
- field
- document
- search
- searched
- information processing
- 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.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims description 28
- 238000003672 processing method Methods 0.000 title claims description 7
- 238000000605 extraction Methods 0.000 claims description 109
- 238000000034 method Methods 0.000 claims description 58
- 238000004364 calculation method Methods 0.000 claims description 17
- 238000004458 analytical method Methods 0.000 claims description 15
- 230000000877 morphologic effect Effects 0.000 claims description 15
- 239000000284 extract Substances 0.000 claims 2
- 238000012545 processing Methods 0.000 description 41
- 238000010276 construction Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 238000012876 topography Methods 0.000 description 1
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、情報処理装置、情報処理方法、プログラムに関する。 The present invention relates to an information processing device, an information processing method, and a program.
従来の単語頻度のみによる全文検索では単語の重要度や意味というものが考慮されない。そのため、出現頻度は低いが重要な単語ではヒットしても検索上位に現れなかったり、字面は同じだがニュアンスが異なる単語にヒットした文書が検索結果に現れたりするという問題があった。 Conventional full-text searches based only on word frequency do not take into account the importance or meaning of words. This causes problems such as hits for important words that occur infrequently but do not appear at the top of search results, or documents that hit words that are spelled the same but have different nuances appearing in the search results.
特許文献1には、文書データのフィールド情報を検索スコアの計算に用いて、ユーザの検索意図に近い検索結果を得るための技術について開示されている。
特許文献1には、文書データのフィールド情報を検索スコアの計算に用いて、ユーザの検索意図に近い検索結果を得るための技術が記載されている。
しかし、フィールドごとのスコア反映割合を検索のたびにユーザが入力する必要があり、フィールド数が多くなった場合に煩雑である。また、フィールドが事前に文書のメタデータとして用意されていない部分についてはフィールドに格納されない問題がある。さらに文書のカテゴリについての概念がないため、各カテゴリに応じたフィールド情報の抽出やスコア計算を行うことができないという課題がある。 However, the user must input the score reflection ratio for each field every time a search is performed, which becomes cumbersome when there are a large number of fields. There is also the problem that parts that are not prepared in advance as document metadata are not stored in the field. Furthermore, there is no concept of document categories, so there is an issue that it is not possible to extract field information or calculate scores according to each category.
そのため、文書データにカテゴリ情報を付与し、カテゴリごとにフィールド抽出情報を定義することが望まれる。 Therefore, it is desirable to add category information to document data and define field extraction information for each category.
そこで、本発明は、文書データのカテゴリとフィールド情報を検索スコアの計算に用いて、検索ユーザの意図に近い検索結果を得られるよう検索精度の向上を行うことを目的とする。 The present invention aims to improve search accuracy by using document data category and field information to calculate search scores, thereby obtaining search results that are closer to the search user's intention.
本発明の情報処理システムは、文書のカテゴリ毎に文書に含まれる各フィールドに設定される重みを記憶する記憶手段と、前記フィールドに設定された重みと、当該フィールドと検索語との関係とに基づき、当該文書のスコアを算出する算出手段と、を備えることを特徴とする。 The information processing system of the present invention is characterized by comprising a storage means for storing weights set for each field included in a document for each document category, and a calculation means for calculating a score for the document based on the weights set for the fields and the relationship between the fields and the search terms.
本発明の情報処理方法は、文書のカテゴリ毎に文書に含まれる各フィールドに設定される重みを記憶する記憶ステップと、前記フィールドに設定された重みと、当該フィールドと検索語との関係とに基づき、当該文書のスコアを算出する算出ステップと、を備えることを特徴とする。 The information processing method of the present invention is characterized by comprising a storage step of storing weights set for each field included in a document for each document category, and a calculation step of calculating a score for the document based on the weights set for the fields and the relationship between the fields and the search terms.
本発明のプログラムは、コンピュータを、文書のカテゴリ毎に文書に含まれる各フィールドに設定される重みを記憶する記憶手段と、前記フィールドに設定された重みと、当該フィールドと検索語との関係とに基づき、当該文書のスコアを算出する算出手段として機能させることを特徴とする。 The program of the present invention causes a computer to function as a storage means for storing weights set for each field contained in a document for each document category, and as a calculation means for calculating the score of the document based on the weights set for the fields and the relationship between the fields and search terms.
本発明によれば、文書データのカテゴリとフィールド情報を検索スコアの計算に用いて、検索ユーザの意図に近い検索結果を得られるよう検索精度の向上を行うことが可能となる。 According to the present invention, by using the category and field information of document data to calculate the search score, it is possible to improve search accuracy so as to obtain search results that are closer to the search user's intention.
以下、図面を参照して、本発明の実施形態を詳細に説明する。なお、以下に説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の一例である。 The following describes in detail an embodiment of the present invention with reference to the drawings. Note that the embodiment described below is an example of a specific implementation of the present invention, and is an example of the configuration described in the claims.
図1は、本発明の実施形態における文書検索システムのシステム構成の一例を示す図である。本発明における実施形態における文書検索システム2000は、情報処理装置100と、文書DB107、クライアントPC108で構成される。情報処理装置100は、文書登録処理部101、文書検索処理部102、形態素解析辞書103、登録文書インデックス104、抽出定義DB105、検索セッション統計情報106から構成され、外部の文書DB107や文書検索システムに文書を登録する際に使用するクライアントPCとネットワークを介して通信可能に接続されている。
Figure 1 is a diagram showing an example of the system configuration of a document search system in an embodiment of the present invention. The document search system 2000 in an embodiment of the present invention is composed of an information processing device 100, a document DB 107, and a client PC 108. The information processing device 100 is composed of a document
文書登録処理部101では、ユーザから受け付けた文書に係る処理を実行する機能部である。具体的には、テキスト抽出処理やカテゴリ付与やフィールドの抽出処理を行い、検索インデックスを作成し、登録文書インデックス104に格納するなどの処理を行う。
The document
文書検索処理部102では、ユーザから受けつけた検索語を用いて、インデックス済みの文書を検索する機能部である。ユーザから検索語を受け付けると、インデックス済みの文書から本文スコアとフィールドスコアを計算して、それぞれを合算して検索結果に反映させる処理を行う。
The document
形態素解析辞書103は、形態素解析を行う際に使用される辞書である。
The
登録文書インデックス104は、登録対象となる文書から抽出した本文及び各フィールドに対する検索インデックスを格納するDBである。本DBを用いて、検索処理部102による処理が行われる。
The
抽出定義DB105は、カテゴリ毎に定義づけられる抽出定義を記憶しておくDBである。本抽出定義DBに記憶される当該カテゴリの抽出定義として設定された抽出方式により、フィールドの抽出を行う。抽出方式は、キーワードによる抽出を行うか、パターンによる抽出を行うか、形態素解析による抽出などがある。
The
検索セッション統計情報106は、ユーザの検索セッション統計情報を更新するDBである。ユーザの検索セッション統計情報の更新を行い、抽出定義のフィールド重みを更新する際に利用する。
文書DB107は、文書が記憶されているDBである。クラウドサービスなどの外部DBも含まれる。 The document DB 107 is a DB in which documents are stored. It also includes external DBs such as cloud services.
クライアントPC108は、ユーザから文書登録を受付ける際に使用される。 The client PC 108 is used to accept document registrations from users.
図2は、本発明の実施形態における情報処理装置のハードウェア構成の一例を示すブロック図である。 Figure 2 is a block diagram showing an example of the hardware configuration of an information processing device in an embodiment of the present invention.
図2に示すように、情報処理装置は、システムバス200を介してCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、記憶装置204、入力コントローラ205、音声入力コントローラ206、ビデオコントローラ207、メモリコントローラ208、および通信I/Fコントローラ209が接続される。
As shown in FIG. 2, the information processing device is connected to a CPU (Central Processing Unit) 201, a ROM (Read Only Memory) 202, a RAM (Random Access Memory) 203, a
CPU201は、システムバス200に接続される各デバイスやコントローラを統括的に制御する。
The
ROM202あるいは外部メモリ213は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、本情報処理方法を実現するためのコンピュータ読み取り実行可能なプログラムおよび必要な各種データ(データテーブルを含む)を保持している。
The
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは外部メモリ213からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現する。
入力コントローラ205は、キーボード210や不図示のマウス等のポインティングデバイス等の入力装置からの入力を制御する。入力装置がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
The
また、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。 The touch panel may also be a touch panel capable of detecting positions touched by multiple fingers, such as a multi-touch screen.
ビデオコントローラ207は、ディスプレイ212などの外部出力装置への表示を制御する。ディスプレイは本体と一体になったノート型パソコンのディスプレイも含まれるものとする。なお、外部出力装置はディスプレイに限ったものははく、例えばプロジェクタであってもよい。また、前述のタッチ操作を受け付け可能な装置については、入力装置も提供する。
The
なおビデオコントローラ207は、表示制御を行うためのビデオメモリ(VRAM)を制御することが可能で、ビデオメモリ領域としてRAM203の一部を利用することもできるし、別途専用のビデオメモリを設けることも可能である。
The
メモリコントローラ208は、外部メモリ213へのアクセスを制御する。外部メモリとしては、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、および各種データ等を記憶する外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等を利用可能である。
The
通信I/Fコントローラ209は、ネットワークを介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信やISDNなどの電話回線、および携帯電話の3G回線を用いた通信が可能である。
The communication I/
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ212上での表示を可能としている。また、CPU201は、ディスプレイ212上の不図示のマウスカーソル等でのユーザ指示を可能とする。
The
本発明を実現するための後述する各種プログラムは、外部メモリ213に記憶されており、必要に応じてRAM203にロードされることによりCPU201によって実行されるものである。さらに上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も外部メモリ213に格納されており、これらについての詳細な説明も後述する。
The various programs for implementing the present invention, which will be described later, are stored in the
次に図3を用いて、本願発明における処理の流れについて説明する。 Next, the process flow of the present invention will be explained using FIG.
ステップS301では、事前設定として、カテゴリ毎のフィールド抽出定義情報(フィールド重みを含む)とデフォルトの抽出定義(カテゴリが設定されていないファイルやフィールド重みセットで指定しなかったフィールドに使う抽出定義)の設定を受け付ける。フィールド抽出定義情報とは、抽出定義詳細画面1300に示すように、カテゴリ毎に、フィールド名と当該フィールドを抽出する方法と抽出定義が対応付けられた情報である。例えば図13に示す抽出定義情報によれば、「工事概要」というカテゴリの文書については、「事務所」や「病院」といったキーワードにより抽出されるフィールドを「建物用途」というフィールドとして抽出することが可能となる。 In step S301, the field extraction definition information (including field weights) for each category and the default extraction definition (the extraction definition to be used for files with no category set or for fields not specified in the field weight set) are accepted as pre-settings. As shown in the extraction definition details screen 1300, the field extraction definition information is information in which the field name, the method of extracting the field, and the extraction definition are associated for each category. For example, according to the extraction definition information shown in FIG. 13, for documents in the category "construction overview", it is possible to extract fields extracted using keywords such as "office" and "hospital" as the field "building use".
設定された抽出定義情報は、抽出定義DB105に保存される。
The set extraction definition information is stored in the
ステップS302では、ユーザから受け付けた文書(検索対象文書)に対して、文書登録処理を実行する。文書登録処理では、検索対象文書の本文抽出やカテゴリの付与、検索対象文書のフィールド抽出、本文及びフィールドに対する検索インデックスの構築などが行われる。文書登録処理の詳細については、図4を用いて後述する。 In step S302, a document registration process is executed for the document (search target document) received from the user. The document registration process includes extracting the text of the search target document, assigning a category, extracting fields from the search target document, and building a search index for the text and fields. Details of the document registration process will be described later with reference to FIG. 4.
ステップS303では、ユーザから受け付けた検索語に基づき、文書検索処理を実行する。文書検索処理では、ステップS302で構築した検索インデックスを用いた検索処理が行われる。文書検索処理の詳細については、図9を用いて後述する。 In step S303, a document search process is executed based on the search term received from the user. In the document search process, a search process is executed using the search index constructed in step S302. Details of the document search process will be described later with reference to FIG. 9.
次に図4~図8のフローチャートを用いて、本発明の実施形態における文書登録処理部が実行する文書登録処理について説明する。 Next, the document registration process executed by the document registration processing unit in an embodiment of the present invention will be described using the flowcharts in Figures 4 to 8.
図4のフローチャートは、文書登録処理部101において文書を登録する処理を示すフローチャートである。
The flowchart in FIG. 4 shows the process of registering a document in the document
ステップS401では、登録対象となる文書全てに対して処理が終了したかどうかを判定する。処理が終了していれば(S401のYes)該フローチャートの処理を終了し、処理の終了していない文書が残っていれば(S401のNo)ステップS402に進む。 In step S401, it is determined whether processing has been completed for all documents to be registered. If processing has been completed (Yes in S401), the processing of this flowchart ends, and if documents that have not been processed remain (No in S401), the process proceeds to step S402.
ステップS402では該文書に対してテキスト抽出処理を行う。該テキスト抽出処理は一般に開示されている技術により実現されるものであり、どのような技術・方法を用いても構わない。 In step S402, text extraction processing is performed on the document. This text extraction processing is achieved using publicly disclosed technology, and any technology or method may be used.
ステップS403では該文書に対するカテゴリ付与を行う。カテゴリとは、その文書がいかなるタイプの文書であるかを分類するために付与され、本実施例であれば工事概要、注文書、議事録などがカテゴリの分類例である。ここでのカテゴリ付与は計算機によって自動で行ってもよいし、ユーザによって手動で行っても構わない。 In step S403, a category is assigned to the document. A category is assigned to classify the type of document that the document is. In this embodiment, examples of categories include construction overview, purchase order, and minutes. The categorization here may be performed automatically by a computer or manually by a user.
ステップS404ではフィールド抽出処理を行う。フィールド抽出処理については、図5を使い後述する。 In step S404, a field extraction process is performed. The field extraction process will be described later with reference to FIG. 5.
ステップS405ではステップS402で抽出したテキスト及びステップS404で抽出した各フィールドに対する検索インデックスの作成を行い登録文書インデックス104に格納する。検索インデックスとは、図9で示す文書検索処理の処理時に使用する検索インデックスである。
In step S405, a search index is created for the text extracted in step S402 and each field extracted in step S404, and stored in the registered
図5のフローチャートは、文書からフィールドを抽出する処理を示すフローチャートである。 The flowchart in Figure 5 shows the process of extracting fields from a document.
ステップS501では、ステップS403で付与された該文書のカテゴリを取得する。 In step S501, the category of the document assigned in step S403 is obtained.
ステップS502では、抽出定義DB105からステップS301で設定された該カテゴリの抽出定義情報を取得する。ステップS501でカテゴリが取得できなかった場合はデフォルトの抽出定義を取得する。
In step S502, the extraction definition information for the category set in step S301 is obtained from the
ステップS503では、該抽出定義に定義された全てのフィールドに対して抽出処理が終了したかどうかを判断する。終了していれば(S503のYes)該フローチャートを終了し、そうでなければ(S503のNo)処理をステップS504に進める。 In step S503, it is determined whether the extraction process has been completed for all fields defined in the extraction definition. If it has been completed (Yes in S503), the flow chart ends; if not (No in S503), the process proceeds to step S504.
ステップS504では、該抽出定義情報に設定された処理対象のフィールドの抽出方式に応じて、処理を分岐する。例えば、図13の例では、「住所」のフィールドについては形態素解析により抽出することを意味している。抽出方式が「キーワード」であればステップS505に、「パターン」であればステップS506に、「形態素解析」であればステップS507に処理を進める。 In step S504, the process branches depending on the extraction method of the field to be processed that is set in the extraction definition information. For example, in the example of FIG. 13, this means that the "Address" field is extracted using morphological analysis. If the extraction method is "keyword," the process proceeds to step S505; if it is "pattern," the process proceeds to step S506; and if it is "morphological analysis," the process proceeds to step S507.
ステップS505では、キーワードによる抽出処理を行う。キーワードによる抽出処理の詳細は、図6のフローチャートを用いて後述する。 In step S505, keyword extraction processing is performed. Details of keyword extraction processing will be described later using the flowchart in FIG. 6.
ステップS506では、パターンによる抽出処理を行う。パターンによる抽出処理の詳細は、図7のフローチャートを用いて後述する。 In step S506, pattern extraction processing is performed. Details of the pattern extraction processing will be described later using the flowchart in FIG. 7.
ステップS507では、形態素解析による抽出処理を行う。形態素解析による抽出処理の詳細は、図8のフローチャートを用いて後述する
ステップS508では、抽出されたフィールドを該文書のフィールドとして記録しておく。このとき、該抽出定義情報のフィールド名と関連付けて記録する。
In step S507, extraction processing is performed using morphological analysis. Details of the extraction processing using morphological analysis will be described later using the flowchart in Fig. 8. In step S508, the extracted fields are recorded as fields of the document. At this time, the extracted fields are recorded in association with the field names of the extraction definition information.
図6のフローチャートは、文書からキーワード方式でフィールドを抽出する処理を示すフローチャートである。 The flowchart in Figure 6 shows the process of extracting fields from a document using keywords.
ステップS601では、該抽出定義の全てのキーワードを処理したかどうかを判断する。全て処理していれば(S601のYes)該フローチャートを終了し、そうでなければ(S601のNo)処理をステップS602に進める。 In step S601, it is determined whether all keywords in the extraction definition have been processed. If all have been processed (Yes in S601), the flow chart ends; if not (No in S601), the process proceeds to step S602.
ステップS602では、該抽出定義から未処理のキーワードを取得する。 In step S602, unprocessed keywords are obtained from the extraction definition.
ステップS603では、該文書に対するキーワードマッチを実行する。このキーワードマッチにはどのような手法を用いても構わない。 In step S603, keyword matching is performed on the document. Any method can be used for this keyword matching.
ステップS604では、該文書に該キーワードが存在するかどうかを判断する。存在しない場合(S604のNo)処理をステップS601に進め、存在する場合(S604のYes)処理をステップS605に進める。 In step S604, it is determined whether the keyword exists in the document. If it does not exist (No in S604), the process proceeds to step S601; if it does exist (Yes in S604), the process proceeds to step S605.
ステップS605では、存在キーワードの近くにフィールド名が存在するかどうかを判定する。キーワードによる抽出処理に関する抽出定義は、図13に示すように、フィールド名とキーワードとが対応付けて登録されたものである。検出されたキーワードの近くに、当該キーワードに対応付けられたフィールド名が存在する場合(ステップS605:YES)は処理をステップS606に進め、存在しない場合(ステップS605:NO)は処理をステップS601に戻す。 In step S605, it is determined whether a field name exists near the existing keyword. As shown in FIG. 13, an extraction definition for keyword-based extraction processing is registered by associating a field name with a keyword. If a field name associated with a detected keyword exists near the keyword (step S605: YES), the process proceeds to step S606; if not (step S605: NO), the process returns to step S601.
ここで、キーワード(Value)とフィールド名(Key)の距離について、図14を用いて具体的に説明する。 Here, we will explain the distance between the keyword (Value) and the field name (Key) in detail using Figure 14.
図13のようにフィールド名「建物用途」には事務所、病院、飲食店、駐車場、ホテルの5つのキーワードが対応付けられているため、図14に示す文書において抽出されるキーワードは、V1「病院」、V2「事務所」、V3「駐車場」となる。このうちV1とV2はキーであるK1「建物用途」と同じ行にあり、距離的に近いと言える。一方でV3はK1と5行離れており、距離的には遠く、「建物用途」とは異なる文脈で使用されていると考えられる。したがって、キーワード抽出の際にはこのキーワードとフィールド名の距離を考慮し、遠いものを抽出対象としないようにすることで誤抽出を防ぐことができる。 As shown in Figure 13, five keywords, namely office, hospital, restaurant, parking lot, and hotel, are associated with the field name "Building Use", so the keywords extracted from the document shown in Figure 14 are V1 "Hospital", V2 "Office", and V3 "Parking Lot". Of these, V1 and V2 are on the same line as the key K1 "Building Use", and can be said to be close in distance. On the other hand, V3 is five lines away from K1, and is far away in distance, and is thought to be used in a different context from "Building Use". Therefore, when extracting keywords, the distance between the keywords and the field names is taken into consideration, and erroneous extraction can be prevented by not extracting keywords that are far away.
図6の説明に戻る。 Return to the explanation of Figure 6.
ステップS606では、ステップS605で抽出されたキーワードを該文書のフィールドの値として記録する。 In step S606, the keywords extracted in step S605 are recorded as field values for the document.
図7は、正規表現パターンによるフィールドの抽出処理を示すフローチャートである。 Figure 7 is a flowchart showing the process of extracting fields using regular expression patterns.
ステップS701では、抽出定義情報に設定された正規表現パターンを取得する。正規表現パターンの例としては、図13のフィールド名1302の関連法令であれば、抽出定義1304の「.+(法|条例)」となる。これは、「法」または「条例」が後方一致する文字列を検出するための正規表現であり、この条件によれば例えば、「建築基準法」「騒音対策条例」などが抽出可能となる。
In step S701, the regular expression pattern set in the extraction definition information is obtained. An example of a regular expression pattern is ".+(law | ordinance)" in
ステップS702では、該文書に対してステップS701で取得した正規表現のパターンマッチを行う。 In step S702, pattern matching is performed on the document using the regular expression obtained in step S701.
ステップS703では、ステップS702でマッチした部分全てについて処理が行われたかどうかを判断する。全てのパターンで処理が行われた場合(S703のYes)該フローチャートの処理を終了し、そうでない場合(S703のNo)ステップS704へ処理を進める。 In step S703, it is determined whether processing has been performed for all of the parts that matched in step S702. If processing has been performed for all patterns (Yes in S703), the processing of this flowchart ends; if not (No in S703), the processing proceeds to step S704.
ステップS704では、マッチした部分を該文書のフィールドの値として記録する。また、グループや名前付き前方参照といった正規表現の機能を用いてマッチした部分の一部をフィールドの値として使ってもよい。 In step S704, the matched portion is recorded as the value of the field in the document. Alternatively, a portion of the matched portion may be used as the field value using regular expression features such as groups and named forward references.
図8は、形態素解析で得られた品詞によるフィールドの抽出処理を示すフローチャートである。 Figure 8 is a flowchart showing the process of extracting fields based on parts of speech obtained by morphological analysis.
ステップS801では、抽出定義を取得する。例えば、本実施例であれば、図13のフィールド名1302の住所の抽出定義1304に定められる品詞の並びを取得する。この場合であれば、抽出定義は[名詞-固有名詞-地域]の並びで定められている。つまり、これは、名詞の中の固有名詞の中の地域カテゴリに属する単語の並びを抽出することを意味し、「東京都港区港南」といった文字列が抽出される。
In step S801, an extraction definition is obtained. For example, in this embodiment, the sequence of parts of speech defined in
ステップS802では、該文書に形態素解析を実行する。 In step S802, morphological analysis is performed on the document.
ステップS803では、ステップS801で取得した抽出定義に合致する品詞の並びがあるかどうかを判断する。品詞の並びがない場合(S803のNo)該フローチャートの処理を終了し、そうでない場合(S803のYes)処理をステップS804に進める。 In step S803, it is determined whether there is a sequence of parts of speech that matches the extraction definition obtained in step S801. If there is no sequence of parts of speech (No in S803), the process of this flowchart ends; if not (Yes in S803), the process proceeds to step S804.
ステップS804では、マッチした部分を該文書のフィールドの値として記録する。 In step S804, the matching portion is recorded as the value of the field in the document.
続けて、図9、図17を用いて、本発明の実施形態における文書検索処理部が実行する処理について説明する。 Next, we will use Figures 9 and 17 to explain the processing performed by the document search processing unit in an embodiment of the present invention.
図9は、検索処理部102において、ユーザからの検索語を入力として受けとり、インデックス済みの文書を検索する処理を示すフローチャートである。
Figure 9 is a flowchart showing the process in which the
ステップS901では、ユーザからの検索語を取得する。 In step S901, search terms are obtained from the user.
ステップS902では、インデックス済みの全文書に対して文書スコアが未計算の文書が存在するかどうかを判断する。文書スコアが未計算の文書が存在する場合(S902のYes)処理をステップS903に進め、そうでない場合(S902のNo)処理をステップS908に進める。 In step S902, it is determined whether or not there are any documents for which the document score has not been calculated for all indexed documents. If there are any documents for which the document score has not been calculated (Yes in S902), the process proceeds to step S903; if not (No in S902), the process proceeds to step S908.
ステップS903では、文書スコア未計算の文書を取得する。 In step S903, documents for which document scores have not yet been calculated are obtained.
ステップS904では、該文書の本文に対する検索スコアを計算する。検索スコアとは、検索語との関連度合いを数値で表した値である。本文に対する検索スコアを、本文スコアと呼ぶ。なお、本実施例においては、本文スコアは公知の検索スコア算出方法により算出される値とする。 In step S904, a search score for the body of the document is calculated. The search score is a value that numerically represents the degree of relevance to the search term. The search score for the body is called the body score. In this embodiment, the body score is a value calculated using a known search score calculation method.
ステップS905では、フィールドスコアが未計算のフィールドが存在するかどうかを判断する。存在する場合(S905のYes)処理をステップS806に進め、そうでない場合(S905のNo)処理をステップS907に進める。 In step S905, it is determined whether there are any fields whose field scores have not been calculated. If there are any fields (Yes in S905), the process proceeds to step S806. If not (No in S905), the process proceeds to step S907.
ステップS906では、フィールドスコア未計算のフィールドを取得し、該フィールドに対する検索スコアを計算する。このスコアをフィールドスコアと呼ぶ。 In step S906, a field whose field score has not yet been calculated is obtained, and a search score for that field is calculated. This score is called the field score.
フィールドスコアの計算の方法の一例を、図17を用いて説明する。ユーザから「AAA株式会社 大阪」という検索語を受け付けた場合について説明する。。 An example of how to calculate a field score will be explained with reference to FIG. 17. A case will be explained in which the search term "AAA Co., Ltd. Osaka" is received from a user.
図17Aは、大阪府警担当者議事録というタイトルの文書を示した図で、当該文書をフィールド毎に分け、各フィールドの値と重みが対応付けられている。図17Bは、○○プロジェクト概要というタイトルの文書を示した図で、図17Aと同様に、フィールド毎に値と重みとが対応付けてある。なお、重みは、当該文書のカテゴリによって定まる値である。なお、図17において各フィールドの値として示している内容は、説明の為に抽出定義に合致しない文字列も含めて示しているが、ステップS506、ステップS604、ステップS704で説明した通り、各フィールドの値として登録されるのは、抽出定義に合致した文字列である。 Figure 17A shows a document titled "Osaka Prefectural Police Officer Minutes," with the document divided into fields and each field associated with a value and weight. Figure 17B shows a document titled "XX Project Overview," with each field associated with a value and weight, just like Figure 17A. Note that the weight is a value determined by the category of the document. Note that for the purposes of explanation, the contents shown as the values of each field in Figure 17 include character strings that do not match the extraction definition, but as explained in steps S506, S604, and S704, the character strings that match the extraction definition are registered as the values of each field.
まず、検索語の出現回数をフィールド毎にカウントする。 First, count the number of times the search term occurs in each field.
図17Aの文書であれば、タイトルフィールド1803には「大阪」は1回出現、人名フィールド1804には「大阪」は0回出現、本文フィールド1705には「大阪」は3回出現している。そして、各フィールドでの検索語の出現回数をフィールド毎に設定されている重みとをかけてフィールドスコアを求める。
In the document of Figure 17A, "Osaka" appears once in the title field 1803, zero times in the person's
タイトルフィールド1803に設定されている重みは1806に示すように2で大阪は1回出現なので、1×2=2となる。同様に、人名フィールド1804は0×5=0、本文フィールド1805は3×1=3となる。これらの合計値(2+0+3=5)が「大阪府警担当者議事録」という文書のフィールドスコアとして算出される。
As shown in 1806, the weight set in the title field 1803 is 2, and Osaka appears once, so 1 x 2 = 2. Similarly, the weight set in the person's
同様に図17Bの、○○プロジェクト概要.PDFのフィールドスコアを計算すると、会社名フィールドで、検索語AAA株式会社が1回出現しているので1×5=5、住所フィールドで大阪が1回出現しているので1×5=5、本文フィールドでAAA株式会社と大阪がそれぞれ1回ずつ出現しているので2×1=2となる。これらの合計値(5+5+2=12)が○○プロジェクト概要.PDFのフィールドスコアとして算出される。 Similarly, when calculating the field score of XX Project Overview.PDF in Figure 17B, the search term AAA Co., Ltd. appears once in the company name field, so the result is 1 x 5 = 5, Osaka appears once in the address field, so the result is 1 x 5 = 5, and AAA Co., Ltd. and Osaka appear once each in the text field, so the result is 2 x 1 = 2. The sum of these values (5 + 5 + 2 = 12) is calculated as the field score of XX Project Overview.PDF.
ステップS907では、ステップS904で算出した該文書の本文スコアと、ステップS906で算出した該文書のフィールドスコアを合算する。この値を文書スコアと呼ぶ。 In step S907, the body score of the document calculated in step S904 and the field score of the document calculated in step S906 are added together. This value is called the document score.
なお、本実施例においては、本文スコアとフィールドスコアとを合算したスコアを文書スコアとしたが、各フィールドの重みを考慮したスコアであるフィールドスコアのみを用いても良い。 In this embodiment, the document score is the sum of the body score and the field score, but it is also possible to use only the field score, which is a score that takes into account the weight of each field.
ステップS908では、文書スコアの降順で検索結果をユーザに示す。なお、本実施例では検索語との関連性が強い文書の文書スコアが高くなる計算方法を用いたため、降順で検索結果をユーザに示したが、検索語との関連性が強い文書の文書スコアが小さくなる算出方法を用いる場合は、昇順により表示する。すなわち、検索語との関連性が強い文書が検索結果の上位に表示されるようソートして表示する。 In step S908, the search results are shown to the user in descending order of document score. Note that in this embodiment, a calculation method was used that results in a higher document score for documents that are more relevant to the search term, so the search results are shown to the user in descending order, but if a calculation method was used that results in a lower document score for documents that are more relevant to the search term, the results would be displayed in ascending order. In other words, the results are sorted and displayed so that documents that are more relevant to the search term are displayed at the top of the search results.
以上のように、抽出定義情報で「人名」や「会社名」や「住所」など、当該カテゴリの文書を特徴付けるフィールドに対して大きな重みを設定し、設定されたフィールド毎の重みを考慮して検索スコアを算出することで、検索語が同じ数だけ含まれる文書であっても、よりユーザ(検索者)の意図に合った(ユーザが探し求めている)文書を上位に表示することが可能となる。 As described above, by setting large weights in the extraction definition information for fields that characterize documents in that category, such as "person's name," "company name," and "address," and calculating the search score taking into account the weighting of each field that has been set, it is possible to display documents that better match the user's (searcher's) intent (what the user is looking for) at the top of the results, even if the documents contain the same number of search terms.
ステップS909では、検索セッション統計情報更新処理を行う。図10のフローチャートを用いて後述する。 In step S909, a search session statistical information update process is performed. This will be described later using the flowchart in FIG. 10.
ステップS910では、フィールド重み更新処理を行う。図11のフローチャートを用いて後述する。 In step S910, the field weight update process is performed. This will be described later using the flowchart in FIG. 11.
図10は、ユーザの検索セッションでの統計情報を更新する処理を示すフローチャートである。なお、検索セッションとはユーザが検索結果を取得して、該検索結果を破棄するまでの期間のことを言う。 Figure 10 is a flow chart showing the process of updating statistical information for a user's search session. Note that a search session refers to the period from when a user obtains search results to when the user discards the search results.
ステップS1001では、検索セッション統計情報テーブル図15の1400の初期化を行う。該検索結果に含まれる全ての文書情報について、文書ID、カテゴリを設定しセッション閲覧数を0に設定する。 In step S1001, the search session statistical information table 1400 in FIG. 15 is initialized. For all document information included in the search results, the document ID and category are set, and the number of session views is set to 0.
ステップS1002では、検索セッションが終了しているかどうかを判断する。終了している場合(S1002のYes)該フローチャートの処理を終了し、そうでない場合(S1002のNo)ステップS1003に処理を進める。 In step S1002, it is determined whether the search session has ended. If it has ended (Yes in S1002), the processing of this flowchart ends. If it has not ended (No in S1002), the processing proceeds to step S1003.
ステップS1003では、ユーザが検索結果の文書を選択したかどうかを判断する。選択していない場合(S1003のNo)処理をステップS1002に進め、そうでない場合(S903のYes)は処理をステップS1004に進める。 In step S1003, it is determined whether the user has selected a document from the search results. If not (No in S1003), the process proceeds to step S1002; if not (Yes in S903), the process proceeds to step S1004.
ステップS1004では、ユーザが選択した文書の情報を取得する。 In step S1004, information about the document selected by the user is obtained.
ステップS1005では、検索セッション統計情報テーブルの該文書のエントリを更新する。この場合、該テーブルのセッション閲覧数に1を加える。 In step S1005, the entry for that document in the search session statistical information table is updated. In this case, the number of sessions viewed in the table is incremented by 1.
図11は、検索セッション統計情報を利用して抽出定義のフィールド重みを更新する処理を示すフローチャートである。検索の情報に応じてフィールド重みを更新していくことで、より検索精度が向上していくことが見込まれる。 Figure 11 is a flowchart showing the process of updating the field weights of an extraction definition using search session statistical information. By updating the field weights according to the search information, it is expected that search accuracy will be improved.
ステップS1101では、検索セッション統計情報テーブル図15の1400を取得する。なお、ここで取得するのは検索セッションの終了した検索セッション統計情報テーブルのみである。 In step S1101, the search session statistical information table 1400 in FIG. 15 is obtained. Note that only the search session statistical information table for which the search session has ended is obtained here.
ステップS1102では、ヒット文書のカテゴリごとに閲覧数を集計する。ヒット文書とは、検索処理部により検索された文書である。検索の結果ヒットした文書をユーザが閲覧したかを集計することで、次回の検索精度を上げるために利用される。 In step S1102, the number of views for each category of hit documents is tallied. Hit documents are documents searched for by the search processing unit. By tallying up whether users have viewed documents that were hit as a result of the search, this information is used to improve the accuracy of the next search.
ステップS1103では、ステップS1102で集計したカテゴリの中に未処理のカテゴリがあるかどうかを判断する。未処理のカテゴリがある場合(S1103のYes)処理をステップS1004に進め、そうでない場合(S1103のNo)処理をステップS1109に進める。 In step S1103, it is determined whether there are any unprocessed categories among the categories counted in step S1102. If there are any unprocessed categories (Yes in S1103), the process proceeds to step S1004; if not (No in S1103), the process proceeds to step S1109.
ステップS1104では、未処理のカテゴリの抽出定義を取得する。 In step S1104, the extraction definition for the unprocessed category is obtained.
ステップS1105では、検索語に含まれる未処理のフィールド情報(当該カテゴリの抽出定義として設定されたフィールドのうち、検索語として用いられたワードが該当するフィールドであって、未処理のフィールド)があるかどうかを判断する。未処理のフィールド情報がある場合(S1105のYes)処理をステップS1106へ進め、そうでない場合(S1105のNo)処理をステップS1103に進める。 In step S1105, it is determined whether there is unprocessed field information contained in the search term (an unprocessed field that corresponds to the word used as the search term among the fields set as the extraction definition of the category). If there is unprocessed field information (Yes in S1105), the process proceeds to step S1106; if not (No in S1105), the process proceeds to step S1103.
ステップS1106では、該カテゴリのセッション閲覧数が0より大きいかどうかを判断する。0より大きい場合(S1106のYes)処理をステップS1107に進め、そうでない場合(S1106のNo)処理をステップS1108に進める。 In step S1106, it is determined whether the number of session views for the category is greater than 0. If it is greater than 0 (Yes in S1106), the process proceeds to step S1107; if not (No in S1106), the process proceeds to step S1108.
ステップS1107では、該カテゴリのセッション閲覧数が0より大きく、該フィールドが検索に貢献できたと考え、該フィールドのフィールド重みを(セッション閲覧数)×0.01だけ加算する。この計算式はあくまでも一例であり、その他の計算方法を用いても構わない。 In step S1107, since the number of sessions viewed for that category is greater than 0, it is assumed that the field contributed to the search, and the field weight for that field is increased by (number of sessions viewed) x 0.01. This formula is merely an example, and other calculation methods may be used.
ステップS1108では、該カテゴリのセッション閲覧数が0であり、該フィールドが検索に貢献していないと考え、該フィールドのフィールド重みを0.01だけ減算する。この計算式はあくまでも一例であり、その他の計算方法を用いても構わない。 In step S1108, since the number of session views for that category is 0, it is assumed that the field does not contribute to the search, and the field weight for that field is reduced by 0.01. This calculation formula is merely an example, and other calculation methods may be used.
ステップS1109では、不要となった該検索セッション統計情報テーブルを破棄する。 In step S1109, the search session statistical information table that is no longer needed is discarded.
ここで、図11を用いて、フィールド重み更新処理の一例を説明する。まず、検索語に「住所」と「建物用途」を含む検索語が使われたとし、検索セッション終了時の検索セッション統計情報テーブルが図16の1400であったとする。また、カテゴリ「工事概要」「注文書」「議事録」の抽出定義がそれぞれ、1500、1600、1700であったとする。またフィールド重み更新式はセッション閲覧数が0より大きい場合は(セッション閲覧数)×0.01を加算、0の場合は0.01の減算とする。この場合、テーブル1300より検索結果のカテゴリごとのセッション閲覧数は、工事概要が2、注文書と議事録が0となる。工事概要のフィールド重みの更新は、フィールド「住所」(図16の1501)と「建物用途」(図16の1502)が両方とも定義されていることから、2×0.01=0.02が加算され、更新後のフィールド重みはそれぞれ3.02と2.02となる。注文書のフィールド重みの更新は「住所」(図16の1601)のみが定義されていることから、0.01の減算となり、更新後のフィールド重みは0.09となる。議事録のフィールド重みの更新は「住所」「建物用途」ともに定義されていないため行われない。 Here, an example of the field weight update process will be described with reference to FIG. 11. First, assume that a search term including "address" and "building use" is used as the search term, and the search session statistical information table at the end of the search session is 1400 in FIG. 16. Also assume that the extraction definitions of the categories "construction overview", "order form", and "minutes" are 1500, 1600, and 1700, respectively. Also, the field weight update formula is to add (session view count) x 0.01 if the session view count is greater than 0, and to subtract 0.01 if it is 0. In this case, the number of session views for each category of the search results from table 1300 is 2 for construction overview, and 0 for order form and minutes. The field weight update for construction overview is to add 2 x 0.01 = 0.02 because both the fields "address" (1501 in FIG. 16) and "building use" (1502 in FIG. 16) are defined, and the updated field weights are 3.02 and 2.02, respectively. The field weight of the purchase order is updated by subtracting 0.01 because only "Address" (1601 in Figure 16) is defined, resulting in a field weight of 0.09 after the update. The field weight of the minutes is not updated because neither "Address" nor "Building use" is defined.
図12は、現在定義されている抽出定義の確認と、追加、削除を行う画面である。抽出定義一覧画面1200は抽出定義追加ボタン1201、一括削除ボタン1202、チェックボックス1203、編集ボタン1204、個別削除ボタン1205からなる。
Figure 12 shows a screen for confirming, adding, and deleting currently defined extraction definitions. The extraction
抽出定義追加ボタン1201は、押下することで抽出定義詳細画面(図13)に遷移し、新規に抽出定義を作成するためのものである。
The Add
一括削除ボタン1202は、押下することでチェックボックス1203が有効になっている全ての抽出定義を一括削除するものである。
When the bulk delete
チェックボックス1203は、有効にすることで一括削除ボタン1202を用いて一括削除を行えるようにするためのものである。
Check
編集ボタン1204は、押下することで抽出定義詳細画面(図13)に遷移し、選択した抽出定義を編集するためのものである。
Pressing the
個別削除ボタン1205は、押下することで選択した抽出定義を削除するためのものである。
The
図13は、抽出定義の詳細の追加、確認、編集を行う画面である。抽出定義詳細画面1300は、カテゴリ名テキストボックス1301、フィールド名テキストボックス1302、抽出方式プルダウンリスト1303、抽出定義テキストボックス1304、フィールド重みテキストボックス1305、フィールド削除ボタン1306、抽出定義フィールド追加ボタン1307からなる。
Figure 13 shows a screen for adding, confirming, and editing the details of an extraction definition. The extraction definition details screen 1300 consists of a category
なお、抽出定義一覧画面1100の抽出定義追加ボタン1101を押下して本画面に遷移した場合は、カテゴリ名テキストボックス1301は空欄で、フィールド名テキストボックス1302、抽出方式プルダウンリスト1303、抽出定義テキストボックス1304、フィールド重みテキストボックス1305は初期状態では表示されていない。また、抽出定義一覧画面1200の編集ボタンから本画面に遷移した場合、該抽出定義の内容がカテゴリ名テキストボックス1301、フィールド名テキストボックス1302、抽出方式プルダウンリスト1303、抽出定義テキストボックス1304、フィールド重みテキストボックス1305に表示される。
When the user transitions to this screen by pressing the Add
カテゴリ名テキストボックス1301は、この抽出定義につける名称を設定するためのものである。
The category
フィールド名テキストボックス1302は、フィールドの名称を設定するためのものである。
The field
抽出方式プルダウンリスト1303は、抽出方式を選択するためのものである。ここでは「キーワード」「パターン」「形態素解析」から選択する。
The extraction method pull-
抽出定義テキストボックス1304は、抽出の定義を設定するためのものである。抽出方式が「キーワード」の場合は抽出するキーワードのリスト、「パターン」の場合は正規表現パターン、「形態素解析」の場合は抽出したい形態素の並びを設定する。
The extraction
フィールド重みテキストボックス1305は、フィールド重みを設定するためのものである。
The field
フィールド削除ボタン1306は、押下することで該フィールドの抽出定義を削除するためのものである。
The field delete
抽出定義フィールド追加ボタン1307は、押下することで空欄のフィールド名テキストボックス1302、抽出方式プルダウンリスト1303、抽出定義テキストボックス1304、フィールド重みテキストボックス1305、フィールド削除ボタン1306が最下行に追加され新しいフィールドの定義ができるようになる。
When the Add Extraction
このようにして、カテゴリごとに抽出定義を設定することにより検索精度の向上が見込まれる。例えば、登録文書内の建築設計書の工事概要と注文書を比較した場合、工事概要の住所(建設場所)の情報は地形や適用される自治体の条例が異なるなど非常に重要な項目であるが、注文書の住所は特に重要な情報でないため、工事概要ではフィールド重みを高め(例えば3)に、注文書では低め(例えば0.1)に設定することで、同じフィールドでのカテゴリごと重要度の違いを表現できる。このように設定することで、住所で検索を行った場合、検索スコアが高めになる工事概要が検索結果上位に、検索スコアが低めになる注文書は検索下位に表示されることが見込め、検索ユーザの意図に沿った検索結果となりやすい。 In this way, by setting extraction definitions for each category, it is expected that search accuracy will improve. For example, when comparing the construction summary of the architectural design document in the registered documents with the purchase order, the address (construction location) information in the construction summary is a very important item due to differences in topography and applicable local government ordinances, whereas the address in the purchase order is not particularly important information. Therefore, by setting the field weight high (e.g. 3) for the construction summary and low (e.g. 0.1) for the purchase order, it is possible to express the difference in importance of each category in the same field. By setting it in this way, when searching by address, construction summaries with a high search score are expected to appear at the top of the search results, while purchase orders with a low search score are expected to appear at the bottom of the search results, making it easier to obtain search results that are in line with the search user's intentions.
仮にカテゴリごとにフィールド重みを設定しなかった場合、住所で検索した場合、どのカテゴリの文書でも住所を重視するよう設定した場合、工事概要と注文書の両方が検索結果に混在することになり利便性が低下すると考えられる。 If field weights were not set for each category, and if a search was made by address and addresses were set to take priority for documents in any category, both construction summaries and purchase orders would be mixed in the search results, reducing user convenience.
図15の検索セッション統計情報テーブル1400は、検索セッションの統計情報を保持するためのテーブルであり、文書ID1401、カテゴリ1402、セッション閲覧数1403の項目からなる
文書ID1401には、検索でヒットした文書を特定するための項目であり、ヒットした文書のIDが登録される。
The search session statistical information table 1400 in FIG. 15 is a table for holding statistical information of search sessions, and is composed of items of
カテゴリ1402には、該文書のカテゴリが登録される。
The category of the document is registered in
セッション閲覧数1403には、ユーザが検索セッション中に該文書を閲覧した回数を記録する。 Session views count 1403 records the number of times the user viewed the document during a search session.
以上、本実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。 Although the present embodiment has been described above, the present invention can be embodied, for example, as a system, device, method, program, or recording medium. Specifically, the present invention may be applied to a system made up of multiple devices, or may be applied to an apparatus made up of a single device.
また、本発明におけるプログラムは、図3~図11に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図3~図11の処理方法をコンピュータが実行可能なプログラムが記憶されている。 The program of the present invention is a program that enables a computer to execute the processing methods of the flowcharts shown in Figures 3 to 11, and the storage medium of the present invention stores a program that enables a computer to execute the processing methods of Figures 3 to 11.
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。 As described above, it goes without saying that the object of the present invention can be achieved by supplying a recording medium on which a program that realizes the functions of the above-mentioned embodiments is recorded to a system or device, and having the computer (or CPU or MPU) of that system or device read and execute the program stored on the recording medium.
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。 In this case, the program read from the recording medium itself realizes the novel functions of the present invention, and the recording medium on which the program is recorded constitutes the present invention.
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD-ROM、CD-R、DVD-ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。 Recording media for supplying the program may include, for example, a flexible disk, a hard disk, an optical disk, a magneto-optical disk, a CD-ROM, a CD-R, a DVD-ROM, a magnetic tape, a non-volatile memory card, a ROM, an EEPROM, a silicon disk, etc.
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Furthermore, it goes without saying that not only are the functions of the above-mentioned embodiments realized by the computer executing a program it has read, but also that the functions of the above-mentioned embodiments can be realized by an operating system (OS) or the like running on the computer carrying out some or all of the actual processing based on the instructions of the program.
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。 Furthermore, it goes without saying that this also includes cases where a program read from a recording medium is written into a memory provided on a function expansion board inserted into a computer or a function expansion unit connected to a computer, and then a CPU or the like provided on the function expansion board or function expansion unit performs some or all of the actual processing based on the instructions of the program code, thereby realizing the functions of the above-mentioned embodiments.
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適用できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。 The present invention may be applied to a system made up of multiple devices, or to a device made up of a single device. Needless to say, the present invention can also be applied to cases where the effects of the present invention are achieved by supplying a program to a system or device. In this case, the effects of the present invention can be enjoyed by reading a recording medium that stores a program for achieving the present invention into the system or device.
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。 Furthermore, by downloading and reading a program for achieving the present invention from a server, database, etc. on a network using a communication program, the system or device can enjoy the effects of the present invention. Note that the present invention also includes configurations that combine the above-mentioned embodiments and their variations.
2000 文書検索システム
100 情報処理装置
101 文書登録処理部
102 文書検索処理部
103 形態素解析辞書
104 登録文書インデックス
105 抽出定義DB
106 検索セッション統計情報
107 文書DB
108 クライアントPC
2000 Document search system 100
106 Search session statistics information 107 Document DB
108 Client PC
Claims (11)
複数の検索対象の文書のそれぞれについて、当該検索対象の文書に係るカテゴリに対応する前記定義情報に基づき、当該検索対象の文書から当該検索対象の文書のフィールド毎に前記文字列を抽出する抽出手段と、
ユーザから前記検索対象の文書を検索するための検索語を受け付ける検索語受付手段と、
複数の検索対象の文書のそれぞれについて、前記検索語受付手段により受け付けた検索語と、前記抽出手段により当該検索対象の文書から抽出された文字列と、前記定義情報により定義された当該文字列に係るフィールドの重みと、に基づき、当該検索対象の文書のフィールド毎に算出された検索スコアに基づく当該検索対象の文書の検索スコアを算出するスコア算出手段と、
を備えることを特徴とする情報処理システム。 a definition information receiving means for receiving definition information that defines, for each document category, a document field, a character string to be extracted from the field, and a weight of the field;
an extraction means for extracting the character string from each of a plurality of documents to be searched for, based on the definition information corresponding to a category related to the document to be searched for , the document to be searched for, for each field of the document to be searched for;
a search term receiving means for receiving a search term used to search for the document to be searched from a user;
a score calculation means for calculating a search score for each of a plurality of documents to be searched based on a search score calculated for each field of the document to be searched, based on the search term received by the search term receiving means, the character string extracted from the document to be searched by the extraction means, and the field weights related to the character strings defined by the definition information;
An information processing system comprising:
前記抽出手段は、前記定義情報に定義された抽出方法に基づき、当該検索対象の文書のフィールド毎に前記文字列を抽出することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理システム。 the definition information defines, for each of the fields, one of a morphological analysis, a keyword match, and a regular expression pattern as a method for extracting a character string from the field;
5. The information processing system according to claim 1, wherein the extraction means extracts the character string for each field of the document to be searched, based on an extraction method defined in the definition information.
前記情報処理システムの抽出手段が、複数の検索対象の文書のそれぞれについて、当該検索対象の文書に係るカテゴリに対応する前記定義情報に基づき、当該検索対象の文書から当該検索対象の文書のフィールド毎に前記文字列を抽出する抽出工程と、
前記情報処理システムの検索語受付手段が、ユーザから前記検索対象の文書を検索するための検索語を受け付ける検索語受付工程と、
前記情報処理システムのスコア算出手段が、複数の検索対象の文書のそれぞれについて、前記検索語受付工程により受け付けた検索語と、前記抽出工程により抽出された文字列と、前記定義情報により定義された当該文字列に係るフィールドの重みと、に基づき、当該検索対象の文書のフィールド毎に算出された検索スコアに基づく当該検索対象の文書の検索スコアを算出するスコア算出工程と、
を備えることを特徴とする情報処理方法。 a definition information receiving step in which a definition information receiving means of the information processing system receives definition information that defines a field, a character string to be extracted from the field, and a weight of the field for each document category;
an extraction step in which an extraction unit of the information processing system extracts the character string from each of a plurality of documents to be searched for, based on the definition information corresponding to a category related to the document to be searched, the document to be searched for, for each field of the document to be searched;
a search term receiving step in which a search term receiving means of the information processing system receives a search term for searching the documents to be searched from a user;
a score calculation step in which a score calculation means of the information processing system calculates, for each of a plurality of documents to be searched, a search score for the document to be searched based on the search scores calculated for each field of the document to be searched , based on the search terms received in the search term receiving step, the character strings extracted in the extraction step, and the weights of the fields related to the character strings defined in the definition information;
An information processing method comprising:
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020178643A JP7670951B2 (en) | 2020-10-26 | 2020-10-26 | Information processing device, information processing method, and program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020178643A JP7670951B2 (en) | 2020-10-26 | 2020-10-26 | Information processing device, information processing method, and program |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2022069790A JP2022069790A (en) | 2022-05-12 |
| JP2022069790A5 JP2022069790A5 (en) | 2023-11-06 |
| JP7670951B2 true JP7670951B2 (en) | 2025-05-01 |
Family
ID=81534223
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2020178643A Active JP7670951B2 (en) | 2020-10-26 | 2020-10-26 | Information processing device, information processing method, and program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP7670951B2 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7298722B2 (en) * | 2020-06-30 | 2023-06-27 | 株式会社三洋物産 | game machine |
| JP7298721B2 (en) * | 2020-06-30 | 2023-06-27 | 株式会社三洋物産 | game machine |
| JP7298723B2 (en) * | 2020-06-30 | 2023-06-27 | 株式会社三洋物産 | game machine |
| JP7298724B2 (en) * | 2020-08-07 | 2023-06-27 | 株式会社三洋物産 | game machine |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190325212A1 (en) | 2018-04-20 | 2019-10-24 | EMC IP Holding Company LLC | Method, electronic device and computer program product for categorization for document |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1049549A (en) * | 1996-05-29 | 1998-02-20 | Matsushita Electric Ind Co Ltd | Document search device |
-
2020
- 2020-10-26 JP JP2020178643A patent/JP7670951B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20190325212A1 (en) | 2018-04-20 | 2019-10-24 | EMC IP Holding Company LLC | Method, electronic device and computer program product for categorization for document |
| CN110390094A (en) | 2018-04-20 | 2019-10-29 | 伊姆西Ip控股有限责任公司 | Method, electronic equipment and the computer program product classified to document |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2022069790A (en) | 2022-05-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7670951B2 (en) | Information processing device, information processing method, and program | |
| KR101465769B1 (en) | Dictionary word and phrase determination | |
| JP2809341B2 (en) | Information summarizing method, information summarizing device, weighting method, and teletext receiving device. | |
| US8280902B2 (en) | High precision search system and method | |
| US11573989B2 (en) | Corpus specific generative query completion assistant | |
| US9639518B1 (en) | Identifying entities in a digital work | |
| WO2019009995A1 (en) | System and method for natural language music search | |
| JP2669601B2 (en) | Information retrieval method and system | |
| JP2011134334A (en) | System and method for identifying topics for short text communications | |
| US7440938B2 (en) | Method and apparatus for calculating similarity among documents | |
| TW200805095A (en) | Data product search using related concepts | |
| JP2872706B2 (en) | Information retrieval device | |
| CN103198059B (en) | Electronic equipment and dictionary data display method | |
| US20130036354A1 (en) | Music interface | |
| JP6287192B2 (en) | Information processing apparatus, information processing method, and program | |
| JP2005122665A (en) | Electronic device, related word database update method, program | |
| JP7626924B2 (en) | Information processing system, information processing method, and program | |
| JP5112416B2 (en) | Term extraction device, method and term dictionary data structure | |
| JP6571053B2 (en) | FACILITY SEARCH DEVICE, FACILITY SEARCH METHOD, COMPUTER PROGRAM, AND RECORDING MEDIUM CONTAINING COMPUTER PROGRAM | |
| JP7614705B2 (en) | Information processing system, information processing method, and program | |
| JP7545061B2 (en) | Information processing system, information processing method, and program | |
| JP2018156552A (en) | Computer system and text data search method | |
| JP4331177B2 (en) | Information search system, information search method, and information search program | |
| JP2008059392A (en) | Dictionary search apparatus and dictionary search processing program | |
| JP7587171B2 (en) | Information processing device, control method, and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231025 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20231025 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240918 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20241008 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20241206 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20250107 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250307 |
|
| 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: 20250318 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250331 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7670951 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |