JP6079207B2 - Keyword presentation program, keyword presentation method, and keyword presentation apparatus - Google Patents

Keyword presentation program, keyword presentation method, and keyword presentation apparatus Download PDF

Info

Publication number
JP6079207B2
JP6079207B2 JP2012276261A JP2012276261A JP6079207B2 JP 6079207 B2 JP6079207 B2 JP 6079207B2 JP 2012276261 A JP2012276261 A JP 2012276261A JP 2012276261 A JP2012276261 A JP 2012276261A JP 6079207 B2 JP6079207 B2 JP 6079207B2
Authority
JP
Japan
Prior art keywords
keyword
keywords
search
file
combined
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012276261A
Other languages
Japanese (ja)
Other versions
JP2014120080A (en
Inventor
大堀 順也
順也 大堀
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2012276261A priority Critical patent/JP6079207B2/en
Publication of JP2014120080A publication Critical patent/JP2014120080A/en
Application granted granted Critical
Publication of JP6079207B2 publication Critical patent/JP6079207B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、キーワード提示プログラム、キーワード提示方法及びキーワード提示装置に関する。   The present invention relates to a keyword presentation program, a keyword presentation method, and a keyword presentation device.

キーワードを手がかりに目的のデータを検索するキーワード検索が知られている。例えば、キーワード検索は、WebページまたはWebページ内の画像や音声などのファイルを検索するWeb検索やコンピュータ上に記憶されたファイルを検索するデスクトップ検索を行う場合などに利用される。   A keyword search for searching for target data using a keyword as a clue is known. For example, the keyword search is used when a Web search for searching a Web page or a file such as an image or a sound in the Web page or a desktop search for searching a file stored on a computer is performed.

かかるキーワード検索に用いられるキーワードが一般的である場合には、検索結果として膨大な件数がヒットする場合がある。このため、ユーザによって複数の指定がなされたキーワードを用いて目的のデータを検索するAND検索が用いられる場合がある。かかるAND検索では、入力されるキーワードと関連性の高い単語や共起関係の強い単語を候補として提示することによってキーワードの入力を補助することも行われている。   When keywords used for such keyword search are general, a huge number of search results may be hit. For this reason, an AND search that searches for target data using a plurality of keywords specified by the user may be used. In such AND search, keyword input is also assisted by presenting words that are highly relevant to the input keyword or words that have a strong co-occurrence relationship as candidates.

特開平10−260990号公報Japanese Patent Laid-Open No. 10-260990 特開平5−054082号公報JP-A-5-054082 特開2003−108594号公報JP 2003-108594 A

しかしながら、上記のキーワードの入力補助には、以下に説明するように、検索結果を精度よく絞り込むことができないという問題がある。   However, the above-described keyword input assistance has a problem that the search results cannot be narrowed down accurately as described below.

例えば、上記の入力補助で関連性の高い単語が提示された場合には、入力されたキーワードの同義語や類義語を含むファイルが検索されることになる。このため、入力されたキーワード単独で検索する場合と大差のない検索結果しか得られない場合が多く、検索結果を絞り込むことができるとは限らない。また、上記の入力補助で共起関係の強い単語が提示された場合には、入力されたキーワードとともに出現する頻度が高い単語をさらに含むファイルが検索されることになる。ところが、共起関係の強い単語が提示された場合にも、入力されたキーワードと関連性の高い単語が提示されるケースが多く、入力されたキーワード単独で検索する場合と大差のない検索結果しか得られない場合が多い。   For example, when a highly relevant word is presented with the above input assistance, a file including synonyms and synonyms of the input keyword is searched. For this reason, there are many cases where only a search result that is not much different from the case of searching by the input keyword alone is obtained, and it is not always possible to narrow down the search result. In addition, when a word having a strong co-occurrence relationship is presented with the above input assistance, a file further including a word that frequently appears together with the input keyword is searched. However, even when words with strong co-occurrence relationships are presented, there are many cases where words that are highly relevant to the entered keyword are presented, and only the search results that are not much different from the case of searching with the entered keyword alone are displayed. In many cases, it cannot be obtained.

1つの側面では、検索結果の絞込み精度を向上させることができるキーワード提示プログラム、キーワード提示方法及びキーワード提示装置を提供することを目的とする。   In one aspect, an object of the present invention is to provide a keyword presentation program, a keyword presentation method, and a keyword presentation device that can improve the accuracy of narrowing search results.

一態様のキーワード提示プログラムは、コンピュータに、キーワードの指定を受け付ける処理を実行させる。さらに、前記コンピュータに、複数のファイルもしくは複数のファイルの各々に含まれる文字列のインデックスを記憶する第1の記憶部、または、複数のファイルのメタデータもしくは複数のファイルの各々のメタデータに含まれる文字列のインデックスを記憶する第2の記憶部を参照して、前記指定のキーワードがヒットするファイルを検索する処理を実行させる。さらに、前記コンピュータに、ファイルの検索結果にしたがって前記指定のキーワードの出現の有無をファイルもしくはファイルのメタデータごとに設定することによって出現マップを作成する処理を実行させる。さらに、前記コンピュータに、前記指定のキーワードの出現マップと、前記指定のキーワードと組み合わせるキーワードの出現マップとを用いて、前記指定のキーワードとの組合せの検索結果が所定の件数を達成するキーワードを抽出する処理を実行させる。さらに、前記コンピュータに、抽出されたキーワードが前記指定のキーワードと組み合わせられる妥当性を判定する処理を実行させる。さらに、前記コンピュータに、妥当性があると判定されたキーワードを提示する処理を実行させる。   The keyword presentation program according to one aspect causes a computer to execute processing for accepting specification of a keyword. Furthermore, the computer includes a plurality of files or a first storage unit that stores an index of a character string included in each of the plurality of files, or included in the metadata of the plurality of files or the metadata of each of the plurality of files. The second storage unit that stores the index of the character string to be stored is referred to, and a process for searching for a file that hits the specified keyword is executed. Further, the computer is caused to execute a process of creating an appearance map by setting the presence or absence of the specified keyword for each file or file metadata in accordance with a file search result. Furthermore, using the appearance map of the specified keyword and the appearance map of the keyword combined with the specified keyword, the computer extracts keywords that achieve a predetermined number of search results for the combination with the specified keyword. To execute the process. Further, the computer is caused to execute processing for determining the validity of the extracted keyword combined with the designated keyword. Further, the computer is caused to execute a process of presenting a keyword determined to be valid.

一実施形態によれば、検索結果の絞込み精度を向上させることができる。   According to one embodiment, it is possible to improve the search result narrowing accuracy.

図1は、実施例1に係る検索システムの構成を示す図である。FIG. 1 is a diagram illustrating the configuration of the search system according to the first embodiment. 図2は、実施例1に係るサーバ装置の機能的構成を示すブロック図である。FIG. 2 is a block diagram illustrating a functional configuration of the server apparatus according to the first embodiment. 図3は、指定のキーワードの出現マップの一例を示す図である。FIG. 3 is a diagram illustrating an example of an appearance map of a designated keyword. 図4は、AND演算の一例を示す図である。FIG. 4 is a diagram illustrating an example of an AND operation. 図5は、AND演算の一例を示す図である。FIG. 5 is a diagram illustrating an example of an AND operation. 図6は、キーワードルートの一例を示す図である。FIG. 6 is a diagram illustrating an example of a keyword route. 図7は、指定のキーワードによる検索結果の件数と指定のキーワードに組み合わせるキーワード数との関係の一例を示す図である。FIG. 7 is a diagram illustrating an example of the relationship between the number of search results for a specified keyword and the number of keywords combined with the specified keyword. 図8は、クライアント端末に表示される画面遷移の一例を示す図である。FIG. 8 is a diagram illustrating an example of screen transition displayed on the client terminal. 図9は、クライアント端末に表示される画面遷移の一例を示す図である。FIG. 9 is a diagram illustrating an example of screen transition displayed on the client terminal. 図10は、実施例1に係る検索処理の手順を示すフローチャートである。FIG. 10 is a flowchart illustrating the procedure of the search process according to the first embodiment. 図11は、実施例1に係る提示キーワードルートの生成処理の手順を示すフローチャート(1)である。FIG. 11 is a flowchart (1) illustrating the procedure of the process for generating the presented keyword route according to the first embodiment. 図12は、実施例1に係る提示キーワードルートの生成処理の手順を示すフローチャート(2)である。FIG. 12 is a flowchart (2) illustrating the procedure of the process for generating the presented keyword route according to the first embodiment. 図13は、実施例1及び実施例2に係るキーワード提示プログラムを実行するコンピュータの一例について説明するための図である。FIG. 13 is a schematic diagram illustrating an example of a computer that executes a keyword presentation program according to the first and second embodiments.

以下に添付図面を参照して本願に係るキーワード提示プログラム、キーワード提示方法及びキーワード提示装置について説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。   Hereinafter, a keyword presentation program, a keyword presentation method, and a keyword presentation apparatus according to the present application will be described with reference to the accompanying drawings. Note that this embodiment does not limit the disclosed technology. Each embodiment can be appropriately combined within a range in which processing contents are not contradictory.

[システム構成]
図1は、実施例1に係る検索システムの構成を示す図である。図1に示す検索システム1は、ネットワーク5を介して、WebページまたはWebページ内の画像や音声などのファイルを検索するWeb検索サービスをクライアント端末30A〜30Cに提供するものである。
[System configuration]
FIG. 1 is a diagram illustrating the configuration of the search system according to the first embodiment. A search system 1 shown in FIG. 1 provides a Web search service for searching for a Web page or a file such as an image or a sound in a Web page via a network 5 to client terminals 30A to 30C.

図1に示すように、検索システム1には、サーバ装置10と、クライアント端末30A〜30Cとが収容される。なお、図1には、3つのクライアント端末をそれぞれ図示したが、検索システム1は任意の数のクライアント端末を収容できる。なお、以下では、クライアント端末30A〜30Cの各装置を区別なく総称する場合には、「クライアント端末30」と記載する場合がある。   As illustrated in FIG. 1, the search system 1 accommodates a server device 10 and client terminals 30 </ b> A to 30 </ b> C. Although FIG. 1 illustrates three client terminals, the search system 1 can accommodate any number of client terminals. In the following, when the devices of the client terminals 30A to 30C are collectively referred to without distinction, they may be referred to as “client terminals 30”.

これらサーバ装置10及びクライアント端末30の間は、ネットワーク5を介して相互に通信可能に接続される。かかるネットワーク5には、有線または無線を問わず、インターネット(Internet)を始め、LAN(Local Area Network)やVPN(Virtual Private Network)などの任意の種類の通信網を採用できる。   The server device 10 and the client terminal 30 are connected via the network 5 so that they can communicate with each other. The network 5 can employ any type of communication network such as the Internet (Internet), LAN (Local Area Network), VPN (Virtual Private Network), etc., regardless of wired or wireless.

サーバ装置10は、Web検索サービスをクライアント端末30に提供するコンピュータである。例えば、サーバ装置10は、クライアント端末30を介して指定を受け付けたキーワードに組み合わせることによって検索結果の件数を絞り込む絞込み用のキーワードを提示するキーワード提示サービスを上記のWeb検索サービスに併せて提供する。一態様としては、上記のキーワード提示サービスに関する処理を実行するWebサーバとして実装することとしてもよいし、また、上記のキーワード提示サービスをアウトソーシングにより提供するクラウドとして実装することもできる。他の一態様としては、パッケージソフトウェアやオンラインソフトウェアとして提供されるキーワード提示プログラムを所望のコンピュータにプリインストール又はインストールさせることによっても実装できる。   The server device 10 is a computer that provides a Web search service to the client terminal 30. For example, the server device 10 provides a keyword presentation service that presents a narrowing-down keyword that narrows down the number of search results by combining with a keyword that has been designated via the client terminal 30 together with the Web search service. As one aspect, it may be implemented as a Web server that executes processing related to the keyword presentation service, or may be implemented as a cloud that provides the keyword presentation service by outsourcing. As another aspect, it can also be implemented by preinstalling or installing a keyword presentation program provided as package software or online software on a desired computer.

クライアント端末30は、上記のキーワード提示サービスの提供を受けるコンピュータである。かかるクライアント端末30の一態様としては、パーソナルコンピュータを始めとする固定端末の他、スマートフォン、携帯電話機、PHS(Personal Handyphone System)やPDA(Personal Digital Assistants)などの移動体端末も採用できる。   The client terminal 30 is a computer that receives the keyword presentation service. As an aspect of the client terminal 30, a mobile terminal such as a smartphone, a mobile phone, a PHS (Personal Handyphone System), or a PDA (Personal Digital Assistants) can be employed in addition to a fixed terminal such as a personal computer.

なお、以下では、サーバ装置10がネットワーク5上で公開されたWebページをクライアント端末30A〜30Cに検索させるポータルサイトとして機能する例を想定して説明を行うが、上記のキーワード提示サービスの適用範囲はサーバ装置10がポータルサイトとして機能する場合に限定されない。例えば、特定のサービス事業者が管理するサイト内のファイル、例えばマークアップ言語で記述されたXML(Extensible Markup Language)やHTML(HyperText Markup Language)ファイル等をキーワードを用いて検索させる場合にも上記のキーワード提示サービスを同様に適用できる。また、企業や団体などの組織によってデータベース化されたファイルをアクセス権限を持つ組織の関係者を対象にキーワードを用いて検索させる場合にも上記のキーワード提示サービスを同様に適用できる。   In the following description, the server device 10 will be described assuming an example in which the server device 10 functions as a portal site that allows the client terminals 30A to 30C to search for Web pages published on the network 5, but the scope of application of the keyword presentation service described above Is not limited to the case where the server device 10 functions as a portal site. For example, when searching for files in a site managed by a specific service provider using, for example, XML (Extensible Markup Language) or HTML (HyperText Markup Language) files described in a markup language using the above keywords The keyword presentation service can be similarly applied. In addition, the above keyword presentation service can be similarly applied to a case where a file stored in a database by an organization such as a company or a group is searched using a keyword for a person concerned in an organization having access authority.

[サーバ装置10の構成]
続いて、本実施例に係るサーバ装置10の機能的構成について説明する。図2は、実施例1に係るサーバ装置10の機能的構成を示すブロック図である。図2に示すように、サーバ装置10は、通信I/F(InterFace)部11と、記憶部13と、制御部15とを有する。なお、サーバ装置10は、図2に示した機能部以外にも既知のサーバ装置が有する各種の機能部、例えば各種の入力デバイスや音声出力デバイスなどの機能部を有することとしてもかまわない。
[Configuration of Server Device 10]
Next, the functional configuration of the server device 10 according to the present embodiment will be described. FIG. 2 is a block diagram illustrating a functional configuration of the server apparatus 10 according to the first embodiment. As illustrated in FIG. 2, the server device 10 includes a communication I / F (InterFace) unit 11, a storage unit 13, and a control unit 15. Note that the server device 10 may include various functional units included in a known server device other than the functional units illustrated in FIG. 2, for example, functional units such as various input devices and audio output devices.

通信I/F部11は、他の装置、例えばクライアント端末30との間で通信制御を行うインタフェースである。かかる通信I/F部11の一態様としては、LAN(Local Area Network)カードなどのネットワークインタフェースカードを採用できる。例えば、通信I/F部11は、クライアント端末30から検索に用いるキーワードを受信したり、指定のキーワードを用いて検索された検索結果、さらには指定のキーワードに組み合わせて検索結果をさらに絞り込むための絞込み用のキーワードをクライアント端末30へ送信したりする。   The communication I / F unit 11 is an interface that performs communication control with another device, for example, the client terminal 30. As an aspect of the communication I / F unit 11, a network interface card such as a LAN (Local Area Network) card can be employed. For example, the communication I / F unit 11 receives a keyword used for a search from the client terminal 30, searches for a search using a specified keyword, and further narrows down the search result in combination with the specified keyword. A keyword for narrowing down is transmitted to the client terminal 30.

記憶部13は、制御部15で実行されるOS(Operating System)やキーワード提示プログラムなどの各種プログラムを記憶する記憶デバイスである。記憶部13の一態様としては、フラッシュメモリなどの半導体メモリ素子、ハードディスク、光ディスクなどの記憶装置が挙げられる。なお、記憶部13は、上記の種類の記憶装置に限定されるものではなく、RAM(Random Access Memory)、ROM(Read Only Memory)であってもよい。   The storage unit 13 is a storage device that stores various programs such as an OS (Operating System) executed by the control unit 15 and a keyword presentation program. As one aspect of the storage unit 13, a storage device such as a semiconductor memory element such as a flash memory, a hard disk, or an optical disk can be cited. The storage unit 13 is not limited to the type of storage device described above, and may be a RAM (Random Access Memory) or a ROM (Read Only Memory).

記憶部13は、制御部15で実行されるプログラムに用いられるデータの一例として、転置インデックス13aと、提示キーワードルート13bとを記憶する。これら転置インデックス13a及び提示キーワードルート13b以外にも、他の電子データ、例えばWeb検索でアクセスされるWebページなどのファイルのキャッシュなども併せて記憶することもできる。   The storage unit 13 stores an inverted index 13a and a presented keyword route 13b as an example of data used in a program executed by the control unit 15. In addition to the transposed index 13a and the presented keyword route 13b, other electronic data, for example, a cache of a file such as a web page accessed by a web search can also be stored.

このうち、転置インデックス13aは、検索用の索引データである。かかる転置インデックス13aの一態様としては、索引とする見出し語ごとにファイル内のテキストに見出し語を含むファイルID(IDentifier)および見出し語がテキスト内で出現する位置情報が対応付けられたデータを採用できる。ここで言う「ファイル」の一例としては、HTMLファイル、XMLファイルやPDF(Portable Document Format)ファイルなどが挙げられる。これらのファイルには、その一部にテキストが含まれていればよく、画像や音声が含まれていてもかまわず、画像や音声を含んだファイルのテキストを対象にキーワード検索を実行することによって画像や動画像を検索することとしてもよい。また、「見出し語」の抽出には、任意の索引文字列の抽出方法、例えば形態素解析やN−Gram法などを用いることができる。   Among these, the transposed index 13a is index data for search. As one aspect of the transposed index 13a, data in which a file ID (IDentifier) including a headword in the text in the file and position information in which the headword appears in the text is associated with each headword as an index is adopted. it can. Examples of the “file” mentioned here include an HTML file, an XML file, a PDF (Portable Document Format) file, and the like. These files only need to contain text as part of them, and may contain images and sounds. By performing a keyword search on the text of files containing images and sounds, It is good also as searching an image and a moving image. In addition, for extracting “headwords”, any index character string extraction method, for example, morphological analysis or N-Gram method can be used.

かかる転置インデックス13aを検索に用いることによって、クライアント端末30から指定されたキーワードを含むファイルをファイルそのものを記憶せずとも検索できる。なお、図2の例では、ファイルの検索に転置インデックス13aを用いる場合を例示したが、各ファイルそのものを記憶部13に記憶しておき、各ファイルに含まれるテキストから指定のキーワードを検索することとしてもかまわない。   By using the transposed index 13a for searching, a file including a keyword designated from the client terminal 30 can be searched without storing the file itself. In the example of FIG. 2, the case where the transposed index 13a is used for the file search is illustrated. However, each file itself is stored in the storage unit 13, and the specified keyword is searched from the text included in each file. It doesn't matter.

制御部15は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部15は、図2に示すように、受付部15aと、検索部15bと、作成部15cと、抽出部15dと、判定部15eと、提示部15fとを有する。   The control unit 15 has an internal memory for storing programs defining various processing procedures and control data, and executes various processes using these. As shown in FIG. 2, the control unit 15 includes a reception unit 15a, a search unit 15b, a creation unit 15c, an extraction unit 15d, a determination unit 15e, and a presentation unit 15f.

このうち、受付部15aは、キーワードの指定を受け付ける処理部である。一態様としては、受付部15aは、クライアント端末30からサーバ装置10がWeb検索サービスを提供するURL(Uniform Resource Locator)へのアクセスを受け付けた場合に、次のような検索画面をクライアント端末30に表示させる。かかる検索画面の一例としては、キーワードを入力可能なテキストボックスやキーワードを選択可能なプルダウンメニューなどが含まれる。このように、受付部15aは、クライアント端末30に検索画面を表示させることによってユーザが検索に用いるキーワードの指定を検索画面を介して受け付ける。   Among these, the reception part 15a is a process part which receives specification of a keyword. As one aspect, when the receiving unit 15a receives an access from the client terminal 30 to a URL (Uniform Resource Locator) that provides the Web search service by the server device 10, the following search screen is displayed on the client terminal 30. Display. Examples of such a search screen include a text box in which a keyword can be input and a pull-down menu in which a keyword can be selected. As described above, the reception unit 15a displays the search screen on the client terminal 30 to receive the specification of the keyword used by the user for the search via the search screen.

検索部15bは、転置インデックス13aを参照して、指定のキーワードを含むファイルを検索する処理部である。一態様としては、検索部15bは、転置インデックス13aに含まれる見出し語のうち、受付部15aによって指定が受け付けられたキーワードに対応する見出し語に対応付けられたファイルIDを検索する。その後、検索部15bは、検索結果として得られたファイルIDの数、すなわち検索結果の件数が所定の目的件数の上限値、例えば1000件以下であるか否かを判定する。このとき、目的件数の上限値を超過している場合には、指定がなされたキーワードが一般的であり、目的の情報を閲覧できる程度まで検索結果が絞り込まれていない可能性が高い。このため、検索部15bは、指定のキーワードに組み合わせる絞込み用のキーワードを提示するために、検索結果を作成部15cへ出力する。一方、目的件数の上限値以下である場合には、指定がなされたキーワードによってユーザが目的とする情報を閲覧できる程度まで検索結果が絞り込まれている可能性が高いと推定できる。この場合には、検索部15bは、絞込み用のキーワードを生成することなく、検索結果を提示部15fへ出力する。   The search unit 15b is a processing unit that searches for a file including a specified keyword with reference to the transposed index 13a. As one aspect, the search unit 15b searches for a file ID associated with a headword corresponding to a keyword that has been designated by the receiving unit 15a among headwords included in the transposed index 13a. Thereafter, the search unit 15b determines whether or not the number of file IDs obtained as a search result, that is, the number of search results is an upper limit value of a predetermined target number, for example, 1000 or less. At this time, if the upper limit of the number of objectives is exceeded, the designated keyword is general, and there is a high possibility that the search results are not narrowed down to the extent that the target information can be browsed. Therefore, the search unit 15b outputs a search result to the creation unit 15c in order to present a narrowing keyword to be combined with the specified keyword. On the other hand, when the number is less than or equal to the upper limit value of the number of objectives, it can be estimated that there is a high possibility that the search result is narrowed down to the extent that the user can browse the target information by the designated keyword. In this case, the search unit 15b outputs the search result to the presentation unit 15f without generating a narrowing keyword.

作成部15cは、ファイルの検索結果にしたがって指定のキーワードの出現の有無をファイルごとに設定することによって出現マップを作成する処理部である。かかる出現マップのデータ構造の一例としては、ファイルIDごとに「0」または「1」のフラグが設定されたビット配列を採用できる。例えば、作成部15cは、指定のキーワードが含まれるファイルのファイルIDには「1」を付与する一方で、指定のキーワードが含まれないファイルのファイルIDには「0」を付与する。また、作成部15cは、指定のキーワードの出現マップの他、指定のキーワードに組み合わせる絞込み用のキーワードの候補の出現マップも絞込み用のキーワードの候補の検索結果をビット配列へ変換することによって作成する。   The creating unit 15c is a processing unit that creates an appearance map by setting the presence or absence of a specified keyword for each file according to a file search result. As an example of the data structure of such an appearance map, a bit array in which a flag “0” or “1” is set for each file ID can be adopted. For example, the creating unit 15c assigns “1” to the file ID of a file including the specified keyword, while assigning “0” to the file ID of a file not including the specified keyword. In addition to the appearance map of the designated keyword, the creation unit 15c also creates an appearance map of a keyword candidate for narrowing down to be combined with the designated keyword by converting the search result of the keyword candidate for narrowing down into a bit array. .

抽出部15dは、指定のキーワードの出現マップと、指定のキーワードと組み合わせるキーワードの出現マップとを用いて、指定のキーワードとの組合せの検索結果が所定の件数を達成するキーワードを抽出する処理部である。一態様としては、抽出部15dは、指定のキーワードとの間で共起関係を持つキーワードを指定のキーワードと組み合わせる絞込み用のキーワードの候補として用いる。このとき、抽出部15dは、指定のキーワードに絞込み用のキーワードの候補を1つ付加する。そして、抽出部15dは、指定のキーワードの出現マップと絞込み用のキーワードの候補の出現マップとを用いて、各々のキーワードのAND検索の検索結果が目標件数の上限値以下かつ目標件数の下限値以上となるまで、指定のキーワードに絞込み用のキーワードの候補を付加する処理を繰り返し実行する。その後、抽出部15dは、AND検索の検索結果が目標件数の上限値以下かつ目標件数の下限値以上となった場合に、指定のキーワード、さらには、1番目からN番目までの絞込み用のキーワードの候補とをキーワードルートとして抽出する。   The extraction unit 15d is a processing unit that extracts a keyword that achieves a predetermined number of search results for a combination with a specified keyword using an appearance map of the specified keyword and a keyword appearance map combined with the specified keyword. is there. As an aspect, the extraction unit 15d uses a keyword having a co-occurrence relationship with a specified keyword as a keyword candidate for narrowing down in combination with the specified keyword. At this time, the extraction unit 15d adds one keyword candidate for narrowing down to the designated keyword. Then, the extraction unit 15d uses the specified keyword appearance map and the refined keyword candidate appearance map, and the search result of each keyword AND search is equal to or less than the upper limit value of the target number and the lower limit value of the target number. Until this is the case, the process of adding candidate keywords for narrowing down to the specified keyword is repeatedly executed. Thereafter, when the search result of the AND search is equal to or lower than the upper limit value of the target number and equal to or higher than the lower limit value of the target number, the extracting unit 15d further specifies the specified keyword and further the first to Nth narrowing keywords. Are extracted as keyword routes.

これを具体的に説明すると、抽出部15dは、作成部15cによって指定のキーワードの出現マップが作成された場合に、制御部15が有する内部メモリに指定のキーワードをキーワードルートの最初のキーワード0として登録する。このとき、抽出部15dは、キーワード0にキーワード0による検索結果の件数を対応付けて内部メモリに登録する。そして、抽出部15dは、指定のキーワードとの間で共起関係を持つキーワードを指定のキーワードと組み合わせる絞込み用のキーワードの候補としてリスト化する。その上で、抽出部15dは、絞込み用のキーワードの候補の中から新たなキーワードを1つ選択する。続いて、抽出部15dは、新たに選択されたキーワードの出現マップを作成部15cに作成させる。ここでは、新たにキーワードが選択される度に出現マップを作成部15cに作成させる場合を例示したが、処理時間を短縮するために、キーワードごとの出現マップを予め作成して記憶しておくこととしてもかまわない。   More specifically, the extraction unit 15d sets the specified keyword in the internal memory of the control unit 15 as the first keyword 0 of the keyword route when the appearance map of the specified keyword is created by the creation unit 15c. sign up. At this time, the extraction unit 15d registers the number of search results for the keyword 0 in association with the keyword 0 in the internal memory. Then, the extraction unit 15d lists keywords having a co-occurrence relationship with the designated keyword as candidates for narrowing down keywords to be combined with the designated keyword. Then, the extraction unit 15d selects one new keyword from the keyword candidates for narrowing down. Subsequently, the extraction unit 15d causes the creation unit 15c to create an appearance map of the newly selected keyword. Here, the case where the appearance map is created by the creation unit 15c every time a keyword is newly selected has been illustrated. However, in order to shorten the processing time, an appearance map for each keyword is created and stored in advance. It doesn't matter.

その後、抽出部15dは、内部メモリに記憶されたキーワードルートの出現マップ、ここでは指定のキーワードの出現マップと、新たに選択されたキーワードの出現マップとの間でビット配列のAND演算を実行する。すなわち、抽出部15dは、互いの出現マップに含まれる同一のファイルIDに設定された値をAND演算する。例えば、同一のファイルIDに設定された値のうち少なくとも一方が「0」である場合には、当該ファイルIDの値に「0」が設定される。一方、同一のファイルIDに設定された値の両方が「1」である場合には、当該ファイルIDの値に「1」が設定される。その上で、抽出部15dは、AND演算によって得られた出現マップに含まれるビット配列のうち「1」に設定されたビットの数を集計する。これによって、キーワードルートに含まれる各キーワード、すなわちキーワード0及びキーワード1のAND検索の検索結果の件数が算出される。続いて、抽出部15dは、新たに選択されたキーワードをキーワードルートのキーワード1として内部メモリに追加する。このとき、抽出部15dは、キーワード1にキーワード0及びキーワード1のAND検索の検索結果の件数を対応付けて内部メモリに登録する。そして、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数が目標件数の上限値以下であるか否かを判定する。   Thereafter, the extraction unit 15d performs an AND operation of the bit array between the appearance map of the keyword route stored in the internal memory, here, the appearance map of the specified keyword and the appearance map of the newly selected keyword. . That is, the extraction unit 15d performs an AND operation on the values set in the same file ID included in each appearance map. For example, if at least one of the values set for the same file ID is “0”, the value of the file ID is set to “0”. On the other hand, when both values set to the same file ID are “1”, “1” is set to the value of the file ID. After that, the extraction unit 15d counts the number of bits set to “1” in the bit array included in the appearance map obtained by the AND operation. As a result, the number of search results of AND search of each keyword included in the keyword route, that is, keyword 0 and keyword 1, is calculated. Subsequently, the extraction unit 15d adds the newly selected keyword as the keyword 1 of the keyword route to the internal memory. At this time, the extraction unit 15 d associates the keyword 1 with the number of search results of the AND search of the keyword 0 and the keyword 1 and registers them in the internal memory. Then, the extraction unit 15d determines whether or not the number of AND search results of each keyword included in the keyword route is equal to or less than the upper limit of the target number.

このとき、目標件数の上限値を超過する場合には、目的の情報を閲覧できる程度まで検索結果が絞り込まれていない可能性が高い。この場合には、抽出部15dは、絞込み用のキーワードの候補の中から新たなキーワードをさらに選択した上でその出現マップを作成部15cに作成させ、内部メモリに記憶されたキーワードルートの出現マップとの間でビット配列のAND演算を実行する。そして、抽出部15dは、キーワードルートに含まれる各キーワード、すなわちキーワード0、キーワード1及びキーワード2のAND検索の検索結果の件数を算出する。さらに、抽出部15dは、新たに選択されたキーワードをキーワードルートのキーワード2として内部メモリに追加する。この場合には、抽出部15dは、キーワード2にキーワード0、キーワード1及びキーワード2のAND検索の検索結果の件数を対応付けて内部メモリに登録する。   At this time, if the upper limit of the target number is exceeded, there is a high possibility that the search results are not narrowed down to the extent that the target information can be browsed. In this case, the extraction unit 15d further selects a new keyword from the keyword candidates for narrowing down, and then causes the creation unit 15c to create the appearance map, and the appearance map of the keyword route stored in the internal memory. AND operation of bit array is executed between Then, the extraction unit 15d calculates the number of search results of AND search of each keyword included in the keyword route, that is, the keyword 0, the keyword 1, and the keyword 2. Further, the extraction unit 15d adds the newly selected keyword as the keyword 2 of the keyword route to the internal memory. In this case, the extraction unit 15d associates the keyword 2 with the number of search results of the keyword 0, the keyword 1, and the keyword 2 in the AND search and registers them in the internal memory.

このように、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数が目標件数の上限値以下になるまで、絞込み用のキーワードの候補の中から新たなキーワードを選択してキーワードルートに追加する処理を繰り返し実行する。   As described above, the extraction unit 15d selects a new keyword from the keyword candidates for narrowing down until the number of search results of the AND search for each keyword included in the keyword route is equal to or less than the upper limit of the target number. Repeat the process to add to the keyword route.

一方、目標件数の上限値以下である場合には、指定がなされたキーワードによってユーザが目的とする情報を閲覧できる程度まで検索結果が絞り込まれている可能性が高いと推定できる。この場合には、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数が目標件数の下限値、例えば10件以上であるか否かを判定する。このように、目標件数の下限値以上であるか否かを判定するのは、目標件数の上限値以下であったとしても、検索結果の件数が過度に少ない場合には、ユーザにとって重要な情報を持つファイルが検索結果から漏れてしまっている可能性が高まるからである。   On the other hand, if it is less than or equal to the upper limit of the target number of cases, it can be estimated that there is a high possibility that the search result is narrowed down to the extent that the user can browse the target information by the designated keyword. In this case, the extraction unit 15d determines whether the number of search results of the AND search for each keyword included in the keyword route is a lower limit value of the target number, for example, 10 or more. In this way, whether or not the target number is equal to or greater than the lower limit of the target number is not more than the upper limit of the target number, but if the number of search results is excessively small, it is important information for the user. This is because there is a high possibility that a file having a will be leaked from the search results.

そして、抽出部15dは、目標件数の下限値未満である場合に、内部メモリに記憶されたキーワードルートを消去する。一方、抽出部15dは、目標件数の下限値以上である場合に、後述のキーワードルートの妥当性を判定する対象として、内部メモリに記憶されたキーワードルートをそのまま残す。その後、抽出部15dは、指定のキーワードに絞込み用のキーワードの候補を組み合わせる探索が全ての組合せについて終了するまで、すなわち既に探索されたキーワードルートおよび破棄されたキーワードルートを構成する各キーワードとの間で重複しない組合せがなくなるまで、指定のキーワードに絞込み用のキーワードの候補を組み合わせる探索を繰り返し実行する。このとき、指定のキーワードがキーワードルートの最初のキーワード0であることは明らかである。このため、抽出部15dは、絞込み用のキーワードの候補の中からキーワードルートのキーワード1に対応するキーワードを選択する段階から繰り返し処理を開始する。   And the extraction part 15d erase | eliminates the keyword route memorize | stored in the internal memory, when it is less than the lower limit of the target number of cases. On the other hand, the extraction unit 15d leaves the keyword route stored in the internal memory as it is as a target for determining the validity of the keyword route, which will be described later, when it is equal to or greater than the lower limit of the target number of cases. Thereafter, the extracting unit 15d continues until the search for combining the keyword candidates for narrowing down with the specified keyword is completed for all the combinations, that is, between each keyword constituting the already searched keyword route and the discarded keyword route. Until there are no combinations that do not overlap, the search for combining candidate keywords with the specified keyword is repeatedly executed. At this time, it is clear that the designated keyword is the first keyword 0 of the keyword route. For this reason, the extraction unit 15d starts the iterative process from the stage of selecting the keyword corresponding to the keyword 1 of the keyword route from the keyword candidates for narrowing down.

図3は、指定のキーワードの出現マップの一例を示す図である。図4及び図5は、AND演算の一例を示す図である。図3には、キーワードとして「protein」が指定された場合の出現マップが図示されている。また、図4には、キーワード0「protein」の出現マップとキーワード1「metabolic」の出現マップとの間で実行されるビット配列のAND演算が図示されている。さらに、図5には、キーワード0「protein」及びキーワード1「metabolic」の出現マップとキーワード2「ec」の出現マップとの間で実行されるビット配列のAND演算が図示されている。   FIG. 3 is a diagram illustrating an example of an appearance map of a designated keyword. 4 and 5 are diagrams illustrating an example of an AND operation. FIG. 3 shows an appearance map when “protein” is designated as a keyword. FIG. 4 shows an AND operation of a bit array executed between the appearance map of keyword 0 “protein” and the appearance map of keyword 1 “metabolic”. Furthermore, FIG. 5 illustrates an AND operation of bit arrays executed between the appearance map of keyword 0 “protein” and keyword 1 “metabolic” and the appearance map of keyword 2 “ec”.

図3に示すキーワード「protein」の出現マップは、ファイルID「1」、「3」、「6」及び「7」の各ファイルにキーワード「protein」が含まれており、その他のファイルIDのファイルにはキーワード「protein」が含まれていないことを意味する。かかるキーワード「protein」は、クライアント端末30から指定を受け付けたキーワードであるので、キーワードルートのキーワード0として内部メモリに登録される。そして、絞込み用のキーワードの候補「metabolic」がキーワード1として選択された場合には、キーワード0「protein」の出現マップとキーワード1「metabolic」の出現マップとの間でビット配列のAND演算が実行される。図4に示すように、互いの出現マップの間で同一のファイルIDの値にビット「1」が設定されたファイルID「1」、「3」及び「6」の値がAND演算によって「1」と算出される一方で、その他のファイルIDの値は「0」と算出される。ここで、指定のキーワードである「protein」だけの場合には、ファイルID「7」のビットは「1」であったが、キーワード「metabolic」とのAND演算によってファイルID「7」のビットが「0」になっている。これは、キーワード「metabolic」の追加によってファイルID「7」のファイルが除外されて絞込みが進んだことを意味する。   The appearance map of the keyword “protein” shown in FIG. 3 includes the keyword “protein” in each of the file IDs “1”, “3”, “6”, and “7”, and other file ID files. Means that the keyword “protein” is not included. Since the keyword “protein” is a keyword that has been designated from the client terminal 30, it is registered in the internal memory as keyword 0 of the keyword route. If the candidate keyword “metabolic” for selection is selected as keyword 1, an AND operation of the bit array is executed between the appearance map of keyword 0 “protein” and the appearance map of keyword 1 “metabolic”. Is done. As shown in FIG. 4, the values of the file IDs “1”, “3”, and “6” in which the bit “1” is set to the same file ID value between the appearance maps are “1” by AND operation. The other file ID values are calculated as “0”. Here, in the case of only the designated keyword “protein”, the bit of the file ID “7” was “1”, but the bit of the file ID “7” is changed by AND operation with the keyword “metabolic”. It is “0”. This means that the addition of the keyword “metabolic” has excluded the file with the file ID “7” and the narrowing has advanced.

さらに、絞込み用のキーワードの候補「ec」がキーワード2として選択された場合には、キーワード0「protein」及びキーワード1「metabolic」の出現マップとキーワード2「ec」の出現マップとの間でビット配列のAND演算が実行される。図5に示すように、互いの出現マップの間で同一のファイルIDの値にビット「1」が設定されたファイルID「3」及び「6」の値がAND演算によって「1」と算出される一方で、その他のファイルIDの値は「0」と算出される。ここで、キーワード1「protein」及びキーワード2「metabolic」のAND演算の場合には、ファイルID「1」のビットは「1」であったが、キーワード「ec」とのAND演算によってファイルID「1」のビットが「0」になっている。これは、キーワード「ec」の追加によってファイルID「1」のファイルが除外されてさらに絞込みが進んだことを意味する。   Furthermore, when the keyword candidate “ec” for narrowing down is selected as keyword 2, a bit is placed between the appearance map of keyword 0 “protein” and keyword 1 “metabolic” and the appearance map of keyword 2 “ec”. An array AND operation is performed. As shown in FIG. 5, the values of the file IDs “3” and “6” in which the bit “1” is set to the same file ID value between the appearance maps are calculated as “1” by the AND operation. On the other hand, the value of the other file ID is calculated as “0”. Here, in the case of the AND operation of the keyword 1 “protein” and the keyword 2 “metabolic”, the bit of the file ID “1” was “1”, but the file ID “1” is obtained by the AND operation with the keyword “ec”. The bit “1” is “0”. This means that the addition of the keyword “ec” excludes the file with the file ID “1” and further narrows down.

図6は、キーワードルートの一例を示す図である。図6に示す1番目のレコードでは、指定のキーワードであるキーワード0「protein」によって検索結果の件数が50000件まで絞り込まれたことを意味する。さらに、キーワード1「metabolic」によって検索結果の件数が15000件まで絞り込まれたことを意味する。さらに、キーワード2「ec」によって検索結果の件数が目標件数の上限値「1000件」以下かつ目標件数の下限値「10件」以上である900件にまで絞り込まれていることを意味する。また、図6に示す2番目のレコードの例では、指定のキーワードであるキーワード0「protein」によって検索結果の件数が50000件まで絞り込まれたことを示す。さらに、キーワード1「substrate」によって検索結果の件数が27300件まで絞り込まれたことを示す。さらに、キーワード2「abc」によって検索結果の件数が12500件まで絞り込まれたことを示す。さらに、キーワード3「transport」によって検索結果の件数が目標件数の上限値「1000件」以下かつ目標件数の下限値「10件」以上である1000件にまで絞り込まれていることを示す。   FIG. 6 is a diagram illustrating an example of a keyword route. The first record shown in FIG. 6 means that the number of search results has been narrowed down to 50000 by the keyword 0 “protein” that is the designated keyword. Furthermore, it means that the number of search results is narrowed down to 15000 by keyword 1 “metabolic”. Furthermore, the keyword 2 “ec” means that the number of search results is narrowed down to 900, which is equal to or less than the upper limit “1000” of the target number and is equal to or higher than the lower limit “10” of the target number. The example of the second record shown in FIG. 6 indicates that the number of search results has been narrowed down to 50000 by the keyword 0 “protein” that is the designated keyword. Furthermore, it indicates that the number of search results has been narrowed down to 27,300 by keyword 1 “substrate”. Furthermore, it indicates that the number of search results has been narrowed down to 12,500 by keyword 2 “abc”. Further, the keyword 3 “transport” indicates that the number of search results is narrowed down to 1000 which is equal to or less than the upper limit value “1000” of the target number and is equal to or higher than the lower limit value “10” of the target number.

なお、ここでは、目標件数の下限値未満である場合に、内部メモリに記憶されたキーワードルートを破棄することとしたが、ユーザが目的とする情報をピンポイントで閲覧できるレアクエリが入力されるケースも考えられるので、検索結果の件数が目標件数の上限値以上であるか否かしか判定を実行せず、検索結果の件数が目標件数の下限値未満であるキーワードルートを残すこととしてもかまわない。   Note that here, when the target route count is less than the lower limit, the keyword route stored in the internal memory is discarded, but a rare query that allows the user to browse the target information pinpointed is input. It is possible to leave a keyword route that only determines whether the number of search results is equal to or greater than the upper limit of the target number, and leaves the number of search results less than the lower limit of the target number. .

図2の説明に戻り、判定部15eは、抽出部15dによって抽出されたキーワードが指定のキーワードと組み合わせられる妥当性を判定する処理部である。一態様としては、判定部15eは、指定のキーワードに組み合わせるキーワード数に合わせてキーワードが追加される度に検索結果が絞り込まれる絞込み率を設定する。例えば、指定のキーワードによる検索結果の件数を「Z件」、目標件数を「Q件」、キーワードを1つ追加する度に検索結果が絞り込まれる絞込み率を「α」とする。なお、絞込み率「α」は、一定であるものとする。このとき、キーワード0に組み合わせるキーワードがキーワード1のみである場合には、キーワード1によって絞り込まれる絞込み件数は「Z×α」となる。また、キーワード0に組み合わせるキーワードがキーワード1及びキーワード2である場合には、キーワード1及びキーワード2によって絞り込まれる絞込み件数は「Z×α×α」となる。そして、キーワード0に組み合わせるキーワードがキーワード1からキーワードNまでのN個である場合には、キーワード1〜キーワードNによって絞り込まれる絞込み件数は「Z×α」となる。このことから、N個のAND検索でQ件まで絞り込むには、下記の式(1)が成立する。 Returning to the description of FIG. 2, the determination unit 15 e is a processing unit that determines the validity of combining the keyword extracted by the extraction unit 15 d with the specified keyword. As one aspect, the determination unit 15e sets a narrowing rate by which search results are narrowed every time a keyword is added according to the number of keywords combined with a specified keyword. For example, “Z” is the number of search results for the specified keyword, “Q” is the target number, and “α” is the narrowing-down rate at which the search result is narrowed every time one keyword is added. It is assumed that the narrowing rate “α” is constant. At this time, when the keyword combined with the keyword 0 is only the keyword 1, the number of narrowing down narrowed down by the keyword 1 is “Z × α”. In addition, when the keywords combined with the keyword 0 are the keyword 1 and the keyword 2, the number of narrowing down narrowed down by the keyword 1 and the keyword 2 is “Z × α × α”. When the number of keywords to be combined with the keyword 0 is N from the keyword 1 to the keyword N, the number of narrowed down searches by the keyword 1 to the keyword N is “Z × α N ”. Therefore, in order to narrow down to Q items by N AND searches, the following equation (1) is established.

Q=Z×α・・・式(1) Q = Z × α N (1)

ここで、指定のキーワードに組み合わせる絞込み用のキーワードの数ごとに指定のキーワードによる検索結果の件数「Z件」及び目標件数「Q件」の理想のサンプル値を設定する。かかる理想のサンプル値は、実験値を設定することもできるし、クライアント端末30にて任意の値を設定することもできる。その上で、判定部15eは、上記の式(1)の導出式にNとともに理想のサンプル値のZ及びQを代入する。これによって、指定のキーワードに組み合わせるキーワード数に合わせてキーワードが追加される度に検索結果が絞り込まれる絞込み率αを導出しておくことができる。図7は、指定のキーワードによる検索結果の件数と指定のキーワードに組み合わせるキーワード数との関係の一例を示す図である。図7には、指定のキーワードによる検索結果の件数Zを「10000件」、目標件数Qを「1000件」としたときの検索結果の件数が指定のキーワードに組み合わせるキーワード数ごとに図示されている。図7に示すグラフの縦軸は、検索結果の件数を指し、横軸は、指定のキーワードに組み合わせるキーワード数を指す。図7に示すように、指定のキーワードに組み合わせるキーワード数が1である場合には、絞込み率は0.01程度が好ましいことを示している。さらに、キーワード数が2である場合には、絞込み率は0.1程度が好ましいことを示している。さらに、キーワード数が3である場合には、絞込み率は0.215程度が好ましいことを示している。さらに、キーワード数が4である場合には、絞込み率は0.316程度が好ましいことを示している。さらに、キーワード数が5である場合には、絞込み率は0.398程度が好ましいことを示している。さらに、キーワード数が6である場合には、絞込み率は0.464程度が好ましいことを示している。さらに、キーワード数が7である場合には、絞込み率は0.517程度が好ましいことを示している。   Here, an ideal sample value of the number of search results “Z” and the target number “Q” of the specified keyword is set for each number of narrowing keywords to be combined with the specified keyword. As the ideal sample value, an experimental value can be set, or an arbitrary value can be set at the client terminal 30. After that, the determination unit 15e substitutes Z and Q, which are ideal sample values, together with N into the derivation formula of the above formula (1). Thereby, it is possible to derive a narrowing-down rate α by which the search result is narrowed down every time a keyword is added according to the number of keywords combined with the designated keyword. FIG. 7 is a diagram illustrating an example of the relationship between the number of search results for a specified keyword and the number of keywords combined with the specified keyword. In FIG. 7, the number of search results when the number Z of search results by the specified keyword is “10000” and the target number Q is “1000” is shown for each number of keywords combined with the specified keyword. . The vertical axis of the graph shown in FIG. 7 indicates the number of search results, and the horizontal axis indicates the number of keywords combined with the specified keyword. As shown in FIG. 7, when the number of keywords combined with the designated keyword is 1, it is indicated that the narrowing-down rate is preferably about 0.01. Further, when the number of keywords is 2, it is indicated that the narrowing-down rate is preferably about 0.1. Furthermore, when the number of keywords is 3, it indicates that the narrowing-down rate is preferably about 0.215. Furthermore, when the number of keywords is 4, it indicates that the narrowing-down rate is preferably about 0.316. Furthermore, when the number of keywords is 5, it is indicated that the narrowing-down rate is preferably about 0.398. Furthermore, when the number of keywords is 6, it is indicated that the narrowing-down rate is preferably about 0.464. Furthermore, when the number of keywords is 7, it is indicated that the narrowing-down rate is preferably about 0.517.

このような絞込み率αが導出されている構成の下、判定部15eは、キーワード1からキーワードNまでの各順序ごとに当該順序までのキーワードがAND演算された場合の検索結果の件数と比較する基準となる絞込み件数Wを算出する。例えば、判定部15eは、指定のキーワードに組み合わせるキーワード数を取得する。そして、判定部15eは、キーワードルートに含まれるキーワード1からキーワードNまでの各順序ごとに、当該順序に対応する回数、すなわち順序と同一の回数にわたって指定のキーワードに組み合わせるキーワード数に対応する絞込み率αを指定のキーワードによる検索結果の件数に乗算する。これによって、当該順序における絞込み件数Wを算出する。その上で、判定部15eは、キーワードルートに含まれるキーワード1からキーワードNまでの各順序ごとに当該順序までのキーワードがAND演算された場合の検索結果の件数が絞込み件数Wから所定の範囲、例えばβ=±20%の範囲内であるか否かを判定する。このとき、検索結果の件数が絞込み件数W±β内にない場合には、絞込み件数W±β内にないキーワードNが一般的な単語で絞込みへ有効に機能していないのか、あるいはキーワードNによって取りこぼしが発生するおそれがあることがわかる。この場合には、キーワードNを含むキーワードルートに妥当性がないと推定する。一方、検索結果の件数が絞込み件数W±βを逸脱するキーワードがない場合には、キーワード1〜キーワードNを用いても取りこぼしが抑制でき、各キーワード1〜Nが絞込みへ有効に機能する可能性が高いと推定できる。この場合には、キーワードNを含むキーワードルートに妥当性があると推定できる。判定部15eは、キーワード0及びキーワード1〜キーワードNをクライアント端末30へ提示する対象とする提示キーワードルート13bとして記憶部13へ登録する。 Under such a configuration in which the narrowing-down rate α is derived, the determination unit 15e compares the number of search results when the keywords up to that order are ANDed for each order from the keyword 1 to the keyword N. to calculate the number W n narrowed down as a reference. For example, the determination unit 15e acquires the number of keywords combined with a specified keyword. Then, for each order from the keyword 1 to the keyword N included in the keyword route, the determination unit 15e performs the number of times corresponding to the order, that is, the narrowing rate corresponding to the number of keywords combined with the designated keyword over the same number of times as the order. Multiply α by the number of search results for the specified keyword. As a result, the number of narrowed cases W n in the order is calculated. On top of that, the determination unit 15e, range search volume from the number W n of predetermined narrow down results when a keyword from the keyword 1 included in the keyword root to the sequence for each sequence to the keyword N is AND operation For example, it is determined whether or not β is within a range of ± 20%. In this case, the search in case the number of results is not in the number W n ± β narrowing is, narrowing the number W n whether ± not in the β keyword N is not functioning effectively to narrow down a general word, or keyword It can be seen that N may cause spillage. In this case, it is estimated that the keyword route including the keyword N is not valid. On the other hand, if there is no keyword whose number of search results deviates from the narrowed down number W n ± β, the use of keywords 1 to N can suppress the loss of keywords, and each keyword 1 to N can function effectively for narrowing down. It can be estimated that the characteristics are high. In this case, it can be estimated that the keyword route including the keyword N is valid. The determination unit 15 e registers the keyword 0 and the keywords 1 to N in the storage unit 13 as the presented keyword route 13 b that is to be presented to the client terminal 30.

提示部15fは、クライアント端末30に対する情報の提示制御を行う処理部である。一態様としては、提示部15fは、指定のキーワードによる検索結果の件数が目的件数の上限値以下である場合には、指定のキーワードを含むファイルの一覧を検索結果としてクライアント端末30へ出力する。このとき、提示部15fは、検索結果として提示するファイルの一覧にタイトル、URL等のリンクや広告を含めて出力することもできる。他の一態様としては、提示部15fは、指定のキーワードを含むファイルの一覧を検索結果として出力するとともに、判定部15eによって記憶部13に登録された提示キーワードルート13bに含まれるキーワードのうち指定を受け付けたキーワードの次のキーワードをクライアント端末30へ出力する。その後、提示部15fは、次のキーワードの選択を受け付けると、キーワードルートにさらに続きのキーワードが存在するか否かを判定する。そして、提示部15fは、続きのキーワードがなくなるまで、先に選択された次のキーワードがAND検索された検索結果を出力するとともに、さらに次のキーワードをクライアント端末30へ出力する。その後、提示部15fは、続きのキーワードがなくなると、最後のキーワードがAND検索された検索結果をクライアント端末30へ出力する。   The presentation unit 15 f is a processing unit that performs control of information presentation to the client terminal 30. As an aspect, the presentation unit 15f outputs a list of files including the specified keyword to the client terminal 30 as the search result when the number of search results by the specified keyword is equal to or less than the upper limit of the target number. At this time, the presentation unit 15f can also output a list of files presented as a search result including a link such as a title and URL and an advertisement. As another aspect, the presentation unit 15f outputs a list of files including the specified keyword as a search result, and specifies a keyword included in the presented keyword route 13b registered in the storage unit 13 by the determination unit 15e. Is output to the client terminal 30. Thereafter, when receiving the selection of the next keyword, the presentation unit 15f determines whether or not there is a subsequent keyword in the keyword route. Then, the presentation unit 15 f outputs a search result obtained by performing an AND search on the next keyword previously selected until there is no subsequent keyword, and further outputs the next keyword to the client terminal 30. Thereafter, when there are no more continued keywords, the presentation unit 15 f outputs to the client terminal 30 a search result obtained by performing an AND search on the last keyword.

図8及び図9は、クライアント端末30に表示される画面遷移の一例を示す図である。このうち、図8には、上記の従来技術によるキーワードの入力補助がなされた場合の画面遷移が図示されている。また、図9には、実施例1に係るサーバ装置10によって提示されるキーワードルートが図示されている。図8及び図9に示すように、クライアント端末30から指定を受け付けたキーワード「protein」を受け付けた段階では、従来技術および本実施例のいずれにおいても検索結果の件数が50000件という膨大な数となっている。   8 and 9 are diagrams illustrating examples of screen transitions displayed on the client terminal 30. FIG. Among these, FIG. 8 shows a screen transition in the case where keyword input assistance according to the above-described prior art is performed. Further, FIG. 9 illustrates a keyword route presented by the server device 10 according to the first embodiment. As shown in FIGS. 8 and 9, at the stage of accepting the keyword “protein” accepted from the client terminal 30, the number of search results is 50000 in both the conventional technology and the present embodiment. It has become.

このとき、図8の例では、キーワード「protein」に続いて入力補助されたキーワード「kinase」が選択されている。このように、キーワード「kinase」でさらにAND検索を行った場合でも、50000件から40000件となったが、10000件しか絞り込まれていない。さらに、図8の例では、キーワード「kinase」に続いて入力補助されたキーワード「cancer」が選択されている。この結果、キーワード「cancer」でさらにAND検索を行うことによって検索結果の件数が40000件から30000件となったが、結局は10000件しか絞り込まれていない。このように、従来技術では、「protein」、「kinase」及び「cancer」の3つのキーワードでAND検索を行っても、依然として、30000件という膨大な検索結果が表示され、所定の絞込み精度が得られない場合がある。   At this time, in the example of FIG. 8, the keyword “kinase”, which is assisted with input following the keyword “protein”, is selected. As described above, even when an AND search is further performed using the keyword “kinase”, the number has been reduced from 50,000 to 40,000, but only 10,000 are narrowed down. Further, in the example of FIG. 8, the keyword “cancer” that is input-assistant following the keyword “kinase” is selected. As a result, the number of search results has been increased from 40000 to 30000 by performing an AND search with the keyword “cancer”, but only 10,000 results have been narrowed down. Thus, in the conventional technology, even if an AND search is performed with the three keywords “protein”, “kinase”, and “cancer”, a huge search result of 30000 is still displayed, and a predetermined narrowing accuracy is obtained. It may not be possible.

一方、図9の例では、キーワード「protein」に続いて提示された次のキーワード「metabolic」が選択されている。このように、キーワード「metabolic」でさらにAND検索を行った結果、従来技術では40000件までしか絞り込めていなかったが、本実施例では50000件から15000件まで絞り込むことができている。さらに、図9の例では、キーワード「metabolic」に続いて提示されたキーワード「ec」が選択されている。このように、キーワード「ec」でさらにAND検索を行った結果、従来技術では30000件までしか絞り込めていなかったが、本実施例では900件まで絞り込むことができている。このように、本実施例では、「protein」、「metabolic」及び「ec」の3つのキーワードでAND検索を行うことによって、ユーザが目的とする情報を閲覧できる程度の件数まで検索結果が絞り込まれている。   On the other hand, in the example of FIG. 9, the next keyword “metabolic” presented after the keyword “protein” is selected. In this way, as a result of further AND search with the keyword “metabolic”, the prior art could only narrow down to 40000, but in the present embodiment, it can narrow down from 50000 to 15000. Furthermore, in the example of FIG. 9, the keyword “ec” presented after the keyword “metabolic” is selected. As described above, as a result of performing an AND search with the keyword “ec”, the prior art can only narrow down to 30000, but in the present embodiment, it can narrow down to 900. As described above, in this embodiment, by performing an AND search with the three keywords “protein”, “metabolic”, and “ec”, the search results are narrowed down to the number of cases that the user can view the target information. ing.

なお、制御部15には、各種の集積回路や電子回路を採用できる。また、制御部15が有する機能部の一部を別の集積回路や電子回路とすることもできる。例えば、集積回路としては、ASIC(Application Specific Integrated Circuit)が挙げられる。また、電子回路としては、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などが挙げられる。   Note that various integrated circuits and electronic circuits can be employed for the control unit 15. In addition, a part of the functional unit included in the control unit 15 may be another integrated circuit or an electronic circuit. For example, an ASIC (Application Specific Integrated Circuit) is an example of the integrated circuit. Examples of the electronic circuit include a central processing unit (CPU) and a micro processing unit (MPU).

[処理の流れ]
続いて、本実施例に係るサーバ装置10の処理の流れについて説明する。なお、ここでは、サーバ装置10によって実行される(1)検索処理を説明した後に検索処理のサブルーチンとして実行される(2)提示キーワードルートの生成処理を説明することとする。
[Process flow]
Next, the process flow of the server device 10 according to the present embodiment will be described. Here, (1) the search process executed by the server device 10 will be described, and then (2) the presentation keyword route generation process executed as a subroutine of the search process will be described.

(1)検索処理
図10は、実施例1に係る検索処理の手順を示すフローチャートである。この処理は、クライアント端末30からキーワードの指定を受け付けた場合に処理が起動される。図10に示すように、受付部15aによってクライアント端末30からキーワードの指定が受け付けられると(ステップS101)、検索部15bは、転置インデックス13aに含まれる見出し語のうち、指定のキーワードに対応する見出し語に対応付けられたファイルIDを検索する(ステップS102)。
(1) Search Process FIG. 10 is a flowchart illustrating a search process procedure according to the first embodiment. This process is started when a keyword specification is received from the client terminal 30. As illustrated in FIG. 10, when a keyword specification is received from the client terminal 30 by the receiving unit 15a (step S101), the search unit 15b includes a heading corresponding to the specified keyword among the headwords included in the transposed index 13a. The file ID associated with the word is searched (step S102).

その後、検索部15bは、検索結果として得られたファイルIDの数、すなわち検索結果の件数が目的件数の上限値以下であるか否かを判定する(ステップS103)。このとき、目的件数の上限値を超過している場合(ステップS103No)には、指定がなされたキーワードが一般的であり、目的の情報を閲覧できる程度まで検索結果が絞り込まれていない可能性が高い。この場合には、指定のキーワードに組み合わせるキーワードとしてクライアント端末30へ提示する提示キーワードルートの生成処理が実行される(ステップS104)。   Thereafter, the search unit 15b determines whether or not the number of file IDs obtained as a search result, that is, the number of search results is equal to or less than the upper limit of the target number (step S103). At this time, if the upper limit of the number of objectives is exceeded (No in step S103), the specified keyword is general, and the search result may not be narrowed down to the extent that the target information can be browsed. high. In this case, a process for generating a presented keyword route to be presented to the client terminal 30 as a keyword to be combined with the designated keyword is executed (step S104).

そして、提示部15fは、指定のキーワードを含むファイルの一覧を検索結果として出力するとともに、提示キーワードルート13bに含まれるキーワードのうち指定を受け付けたキーワードの次のキーワードをクライアント端末30へ出力する(ステップS105)。   Then, the presentation unit 15f outputs a list of files including the specified keyword as a search result, and outputs to the client terminal 30 the keyword next to the keyword that has received the specification among the keywords included in the presented keyword route 13b ( Step S105).

その後、提示部15fは、次のキーワードの選択を受け付けると(ステップS106)、キーワードルートにさらに続きのキーワードが存在するか否かを判定する(ステップS107)。   Thereafter, when the presentation unit 15f receives selection of the next keyword (step S106), the presentation unit 15f determines whether or not there is a subsequent keyword in the keyword route (step S107).

そして、続きのキーワードが存在する場合(ステップS107No)には、提示部15fは、ステップS106で選択された次のキーワードがさらにAND検索された検索結果を出力するとともに、さらに続く次のキーワードをクライアント端末30へ出力し(ステップS105)、ステップS105で続きのキーワードとして出力された次のキーワードの選択をさらに受け付ける(ステップS106)。   If there is a subsequent keyword (No in step S107), the presentation unit 15f outputs a search result obtained by performing an AND search on the next keyword selected in step S106, and the subsequent keyword is transmitted to the client. It outputs to the terminal 30 (step S105), and further accepts the selection of the next keyword output as a subsequent keyword in step S105 (step S106).

一方、続きのキーワードが存在しない場合(ステップS107Yes)、提示部15fは、最後のキーワードがAND検索された検索結果をクライアント端末30へ出力し(ステップS108)、処理を終了する。   On the other hand, when there is no subsequent keyword (step S107 Yes), the presentation unit 15f outputs the search result obtained by performing an AND search on the last keyword to the client terminal 30 (step S108), and ends the process.

また、目的件数の上限値以下である場合(ステップS103Yes)には、指定がなされたキーワードによってユーザが目的とする情報を閲覧できる程度まで検索結果が絞り込まれている可能性が高いと推定できる。この場合には、検索部15bは、絞込み用のキーワードを生成することなく、検索結果を提示部15fへ出力し(ステップS108)、処理を終了する。   If the number is less than or equal to the upper limit of the number of objectives (Yes at Step S103), it can be estimated that there is a high possibility that the search result is narrowed down to the extent that the user can browse the target information with the designated keyword. In this case, the search unit 15b outputs the search result to the presentation unit 15f without generating a narrowing keyword (step S108), and ends the process.

(2)提示キーワードルートの生成処理
図11及び図12は、実施例1に係る提示キーワードルートの生成処理の手順を示すフローチャートである。この処理は、図10に示したステップS103の判定でNo(否定)と判定された場合に処理が起動する。
(2) Presentation Keyword Route Generation Processing FIGS. 11 and 12 are flowcharts illustrating the procedure of the presentation keyword route generation processing according to the first embodiment. This process is started when it is determined No (No) in the determination of step S103 illustrated in FIG.

図11に示すように、作成部15cは、内部メモリに記憶されたキーワードルートを空にする初期化を実行する(ステップS201)。続いて、作成部15cは、指定のキーワードによる検索結果にしたがって指定のキーワードの出現の有無をファイルごとに設定することによって出現マップを作成する(ステップS202)。   As illustrated in FIG. 11, the creation unit 15c performs initialization to empty the keyword route stored in the internal memory (step S201). Subsequently, the creating unit 15c creates an appearance map by setting the presence / absence of the appearance of the designated keyword for each file according to the search result by the designated keyword (step S202).

そして、抽出部15dは、指定のキーワードをキーワードルートの最初のキーワード0として内部メモリに登録する(ステップS203)。このとき、抽出部15dは、キーワード0にキーワード0による検索結果の件数を対応付けて内部メモリに登録する。   Then, the extraction unit 15d registers the designated keyword in the internal memory as the first keyword 0 of the keyword route (step S203). At this time, the extraction unit 15d registers the number of search results for the keyword 0 in association with the keyword 0 in the internal memory.

そして、抽出部15dは、指定のキーワードとの間で共起関係を持つキーワードを指定のキーワードと組み合わせる絞込み用のキーワードの候補としてリスト化する(ステップS204)。その上で、抽出部15dは、絞込み用のキーワードの候補の中から新たなキーワードを1つ選択する(ステップS205)。続いて、抽出部15dは、ステップS205で選択されたキーワードの出現マップを作成部15cに作成させる(ステップS206)。   Then, the extraction unit 15d lists keywords having a co-occurrence relationship with the designated keyword as candidates for narrowing down keywords to be combined with the designated keyword (step S204). After that, the extraction unit 15d selects one new keyword from the keyword candidates for narrowing down (step S205). Subsequently, the extraction unit 15d causes the creation unit 15c to create an appearance map of the keyword selected in Step S205 (Step S206).

その後、抽出部15dは、内部メモリに記憶されたキーワードルートの出現マップと、ステップS205で選択されたキーワードの出現マップとの間でビット配列のAND演算を実行する(ステップS207)。その上で、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数を算出する(ステップS208)。   Thereafter, the extraction unit 15d performs an AND operation on the bit array between the keyword route appearance map stored in the internal memory and the keyword appearance map selected in step S205 (step S207). After that, the extraction unit 15d calculates the number of search results of the AND search for each keyword included in the keyword route (step S208).

続いて、抽出部15dは、ステップS205で選択されたキーワードをキーワードルートのキーワード1として内部メモリに追加する(ステップS209)。このとき、抽出部15dは、キーワード1にキーワード0及びキーワード1のAND検索の検索結果の件数を対応付けて内部メモリに登録する。   Subsequently, the extraction unit 15d adds the keyword selected in step S205 to the internal memory as the keyword 1 of the keyword route (step S209). At this time, the extraction unit 15 d associates the keyword 1 with the number of search results of the AND search of the keyword 0 and the keyword 1 and registers them in the internal memory.

そして、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数が目標件数の上限値以下であるか否かを判定する(ステップS210)。このとき、目標件数の上限値を超過する場合(ステップS210No)には、目的の情報を閲覧できる程度まで検索結果が絞り込まれていない可能性が高い。この場合には、抽出部15dは、絞込み用のキーワードの候補の中から新たなキーワードをさらに選択し(ステップS205)、ステップS206〜ステップS209までの処理を繰り返し実行する。   Then, the extraction unit 15d determines whether the number of search results of the AND search for each keyword included in the keyword route is equal to or less than the upper limit of the target number (step S210). At this time, if the upper limit of the target number is exceeded (No in step S210), there is a high possibility that the search results are not narrowed down to the extent that the target information can be browsed. In this case, the extraction unit 15d further selects a new keyword from the keyword candidates for narrowing down (step S205), and repeatedly executes the processing from step S206 to step S209.

一方、目標件数の上限値以下である場合(ステップS210Yes)には、指定がなされたキーワードによってユーザが目的とする情報を閲覧できる程度まで検索結果が絞り込まれている可能性が高いと推定できる。この場合には、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数が目標件数の下限値以上であるか否かを判定する(ステップS211)。   On the other hand, if it is equal to or less than the upper limit of the target number of cases (Yes in step S210), it can be estimated that there is a high possibility that the search result is narrowed down to such an extent that the user can browse the target information with the designated keyword. In this case, the extraction unit 15d determines whether the number of search results of the AND search for each keyword included in the keyword route is equal to or greater than the lower limit value of the target number (step S211).

そして、目標件数の下限値未満である場合(ステップS211No)には、抽出部15dは、内部メモリに記憶されたキーワードルートを消去する(ステップS212)。一方、目標件数の下限値以上である場合(ステップS211Yes)には、抽出部15dは、キーワードルートの妥当性を判定する対象として、内部メモリに記憶されたキーワードルートをそのまま残し、ステップS213へ移行する。   If it is less than the lower limit of the target number (No at Step S211), the extraction unit 15d deletes the keyword route stored in the internal memory (Step S212). On the other hand, if it is equal to or greater than the lower limit value of the target number (Yes in step S211), the extraction unit 15d leaves the keyword route stored in the internal memory as a target for determining the validity of the keyword route, and proceeds to step S213. To do.

その後、抽出部15dは、指定のキーワードに絞込み用のキーワードの候補を組み合わせる探索が全ての組合せについて終了するまで(ステップS213No)、上記のステップS205〜ステップS212までの処理を繰り返し実行する。   Thereafter, the extraction unit 15d repeatedly executes the processing from step S205 to step S212 until the search for combining the candidate keywords for narrowing down with the specified keyword is completed for all combinations (No in step S213).

そして、指定のキーワードに絞込み用のキーワードの候補を組み合わせる探索が全ての組合せについて終了すると(ステップS213Yes)、判定部15eは、内部メモリに登録されたキーワードルートを1つ選択する(ステップS214)。   When the search for combining candidate keywords for narrowing down to the specified keyword is completed for all combinations (step S213 Yes), the determination unit 15e selects one keyword route registered in the internal memory (step S214).

続いて、判定部15eは、指定のキーワードに組み合わせるキーワード数を取得する(ステップS215)。そして、判定部15eは、キーワード1からキーワードNまでの各順序ごとに、当該順序に対応する回数にわたって指定のキーワードに組み合わせるキーワード数に対応する絞込み率αを指定のキーワードによる検索結果の件数に乗算することによって各順序における絞込み件数Wを算出する(ステップS216)。 Subsequently, the determination unit 15e acquires the number of keywords combined with the designated keyword (step S215). Then, for each order from keyword 1 to keyword N, the determination unit 15e multiplies the number of search results by the designated keyword by the narrowing rate α corresponding to the number of keywords combined with the designated keyword over the number of times corresponding to the order. Thus, the number of narrowed cases W n in each order is calculated (step S216).

その後、判定部15eは、内部メモリが持つキーワードカウンタnを初期値「1」に設定する初期化を実行する(ステップS217)。その上で、判定部15eは、キーワードカウンタnに対応する順序までのキーワードがAND演算された場合の検索結果の件数が絞込み件数Wから所定の範囲、例えば±βの範囲内であるか否かを判定する(ステップS218)。 Thereafter, the determination unit 15e performs initialization to set the keyword counter n of the internal memory to the initial value “1” (step S217). Not on its determination unit 15e, or keywords to the order corresponding to the keyword counter n is in the range of the number W n narrowing the number of search results when the AND operation a predetermined range, for example, of ± beta Is determined (step S218).

このとき、検索結果の件数が絞込み件数W±β内である場合(ステップS218Yes)には、キーワードカウンタnの値がNになったか否かを判定する(ステップS219)。そして、キーワードカウンタnの値がN未満である場合(ステップS219No)には、キーワードカウンタnをインクリメントし(ステップS220)、上記のステップS218の処理を再び実行する。なお、検索結果の件数が絞込み件数W±β内にない場合(ステップS218No)には、ステップS219〜ステップS221までの処理をとばし、ステップS222の処理へ移行する。 At this time, if the number of search results is within the narrowed-down number W n ± β (step S218 Yes), it is determined whether or not the value of the keyword counter n has become N (step S219). If the value of the keyword counter n is less than N (No in step S219), the keyword counter n is incremented (step S220), and the process of step S218 is executed again. If the number of search results is not within the narrowed-down number W n ± β (No in step S218), the process from step S219 to step S221 is skipped, and the process proceeds to step S222.

一方、キーワードカウンタnの値がNになった場合(ステップS219Yes)には、判定部15eは、ステップS214で選択されたキーワードルートをクライアント端末30へ提示する対象とする提示キーワードルート13bとして記憶部13へ追加する(ステップS221)。   On the other hand, when the value of the keyword counter n is N (Yes in step S219), the determination unit 15e stores the keyword route selected in step S214 as the presented keyword route 13b to be presented to the client terminal 30. 13 (step S221).

その後、内部メモリに登録された全てのキーワードルートについて妥当性の判定を終了するまで(ステップS222No)、上記のステップS214〜ステップS221までの処理を繰り返し実行する。そして、内部メモリに登録された全てのキーワードルートについて妥当性の判定を終了すると(ステップS222Yes)、処理を終了する。   Thereafter, the process from step S214 to step S221 is repeatedly executed until the validity determination is completed for all keyword routes registered in the internal memory (No in step S222). Then, when the validity determination for all the keyword routes registered in the internal memory is completed (Yes in step S222), the process is terminated.

[実施例1の効果]
上述してきたように、本実施例に係るサーバ装置10は、入力されるキーワードとの間で組み合わせるキーワードを提示する場合に、検索結果の件数が目標の件数を満たし、かつ組合せに妥当性があるキーワードを提示する。したがって、本実施例に係るサーバ装置10によれば、検索結果の絞込み精度を向上させることができる。
[Effect of Example 1]
As described above, when the server device 10 according to the present embodiment presents a keyword to be combined with an input keyword, the number of search results satisfies the target number and the combination is valid. Present keywords. Therefore, according to the server device 10 according to the present embodiment, it is possible to improve the search result narrowing accuracy.

さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。   Although the embodiments related to the disclosed apparatus have been described above, the present invention may be implemented in various different forms other than the above-described embodiments. Therefore, another embodiment included in the present invention will be described below.

[デスクトップ検索]
上記の実施例1では、Web検索サービスを提供する場合を例示したが、例えば、コンピュータ上に記憶されたファイルを検索するデスクトップ検索を行う場合にも上記のキーワード提示サービスを同様に適用することができる。このように、デスクトップ検索を行う場合には、例えば、クライアントサーバシステムでなく、制御部15内の各機能部を有するコンピュータをスタンドアローンで動作させることができる。この場合には、例えば、ファイルの代わりにファイルのメタデータを記憶部13に記憶しておき、各ファイルのメタデータに含まれるテキストから指定のキーワードを検索することとしてもかまわない。また、複数のファイルの各々のメタデータに含まれる単語のインデックスをメタデータの転置インデックスとして記憶部13に記憶しておき、メタデータの転置インデックスを用いて、指定のキーワードを含むファイルを検索することとしてもかまわない。これによって、例えば、キーワードしてファイル名を構成する文字列の一部が指定された場合に、目的の文書ファイル、画像ファイル、あるいは音声ファイルなどをさらに絞り込む文字列を提示できる。
[Desktop Search]
In the first embodiment, the case where the web search service is provided has been exemplified. However, for example, the above-described keyword presentation service can be similarly applied to a desktop search for searching for a file stored on a computer. it can. As described above, when desktop search is performed, for example, a computer having each function unit in the control unit 15 can be operated in a stand-alone manner instead of the client server system. In this case, for example, file metadata may be stored in the storage unit 13 instead of the file, and a specified keyword may be searched from text included in the metadata of each file. In addition, a word index included in metadata of each of a plurality of files is stored in the storage unit 13 as a metadata transposition index, and a file including a specified keyword is searched using the meta data transposition index. It doesn't matter. Thus, for example, when a part of a character string constituting a file name is specified as a keyword, a character string for further narrowing down a target document file, an image file, or an audio file can be presented.

[分散および統合]
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、受付部15a、検索部15b、作成部15c、抽出部15d、判定部15eまたは提示部15fをサーバ装置10の外部装置としてネットワーク経由で接続するようにしてもよい。また、受付部15a、検索部15b、作成部15c、抽出部15d、判定部15eまたは提示部15fを別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のサーバ装置10の機能を実現するようにしてもよい。
[Distribution and integration]
In addition, each component of each illustrated apparatus does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured. For example, the reception unit 15a, the search unit 15b, the creation unit 15c, the extraction unit 15d, the determination unit 15e, or the presentation unit 15f may be connected as an external device of the server device 10 via a network. In addition, each of the server devices 10 has a reception unit 15a, a search unit 15b, a creation unit 15c, an extraction unit 15d, a determination unit 15e, or a presentation unit 15f. You may make it implement | achieve a function.

[キーワード提示プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図13を用いて、上記の実施例と同様の機能を有するキーワード提示プログラムを実行するコンピュータの一例について説明する。
[Keyword presentation program]
The various processes described in the above embodiments can be realized by executing a prepared program on a computer such as a personal computer or a workstation. In the following, an example of a computer that executes a keyword presentation program having the same function as that of the above embodiment will be described with reference to FIG.

図13は、実施例1及び実施例2に係るキーワード提示プログラムを実行するコンピュータの一例について説明するための図である。図13に示すように、コンピュータ100は、操作部110aと、スピーカ110bと、カメラ110cと、ディスプレイ120と、通信部130とを有する。さらに、このコンピュータ100は、CPU150と、ROM160と、HDD170と、RAM180とを有する。これら110〜180の各部はバス140を介して接続される。   FIG. 13 is a schematic diagram illustrating an example of a computer that executes a keyword presentation program according to the first and second embodiments. As illustrated in FIG. 13, the computer 100 includes an operation unit 110 a, a speaker 110 b, a camera 110 c, a display 120, and a communication unit 130. Further, the computer 100 includes a CPU 150, a ROM 160, an HDD 170, and a RAM 180. These units 110 to 180 are connected via a bus 140.

HDD170には、図13に示すように、上記の実施例1で示した受付部15a、検索部15b、作成部15c、抽出部15d、判定部15e及び提示部15fと同様の機能を発揮するキーワード提示プログラム170aが予め記憶される。このキーワード提示プログラム170aについては、図2に示した各々の受付部15a、検索部15b、作成部15c、抽出部15d、判定部15e及び提示部15fの各構成要素と同様、適宜統合又は分離しても良い。すなわち、HDD170に格納される各データは、常に全てのデータがHDD170に格納される必要はなく、処理に必要なデータのみがHDD170に格納されれば良い。   As shown in FIG. 13, the HDD 170 is a keyword that exhibits the same functions as the reception unit 15a, search unit 15b, creation unit 15c, extraction unit 15d, determination unit 15e, and presentation unit 15f described in the first embodiment. A presentation program 170a is stored in advance. This keyword presentation program 170a is integrated or separated as appropriate, as with each component of the reception unit 15a, search unit 15b, creation unit 15c, extraction unit 15d, determination unit 15e, and presentation unit 15f shown in FIG. May be. In other words, all data stored in the HDD 170 need not always be stored in the HDD 170, and only data necessary for processing may be stored in the HDD 170.

そして、CPU150が、キーワード提示プログラム170aをHDD170から読み出してRAM180に展開する。これによって、図13に示すように、キーワード提示プログラム170aは、キーワード提示プロセス180aとして機能する。このキーワード提示プロセス180aは、HDD170から読み出した各種データを適宜RAM180上の自身に割り当てられた領域に展開し、この展開した各種データに基づいて各種処理を実行する。なお、キーワード提示プロセス180aは、図2に示した受付部15a、検索部15b、作成部15c、抽出部15d、判定部15e及び提示部15fにて実行される処理、例えば図10〜図12に示す処理を含む。また、CPU150上で仮想的に実現される各処理部は、常に全ての処理部がCPU150上で動作する必要はなく、処理に必要な処理部のみが仮想的に実現されれば良い。   Then, the CPU 150 reads the keyword presentation program 170 a from the HDD 170 and expands it in the RAM 180. Thus, as shown in FIG. 13, the keyword presentation program 170a functions as a keyword presentation process 180a. The keyword presentation process 180a expands various data read from the HDD 170 in an area allocated to itself on the RAM 180 as appropriate, and executes various processes based on the expanded data. The keyword presentation process 180a is a process executed by the receiving unit 15a, the search unit 15b, the creation unit 15c, the extraction unit 15d, the determination unit 15e, and the presentation unit 15f illustrated in FIG. Includes the processing shown. In addition, each processing unit virtually realized on the CPU 150 does not always require that all processing units operate on the CPU 150, and only a processing unit necessary for the processing needs to be virtually realized.

なお、上記のキーワード提示プログラム170aについては、必ずしも最初からHDD170やROM160に記憶させておく必要はない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から各プログラムを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに各プログラムを記憶させておき、コンピュータ100がこれらから各プログラムを取得して実行するようにしてもよい。   Note that the keyword presentation program 170a is not necessarily stored in the HDD 170 or the ROM 160 from the beginning. For example, each program is stored in a “portable physical medium” such as a flexible disk inserted into the computer 100, so-called FD, CD-ROM, DVD disk, magneto-optical disk, or IC card. Then, the computer 100 may acquire and execute each program from these portable physical media. In addition, each program is stored in another computer or server device connected to the computer 100 via a public line, the Internet, a LAN, a WAN, etc., and the computer 100 acquires and executes each program from these. It may be.

1 検索システム
5 ネットワーク
10 サーバ装置
11 通信I/F部
13 記憶部
13a 転置インデックス
13b 提示キーワードルート
15 制御部
15a 受付部
15b 検索部
15c 作成部
15d 抽出部
15e 判定部
15f 提示部
30A,30B,30C クライアント端末
DESCRIPTION OF SYMBOLS 1 Search system 5 Network 10 Server apparatus 11 Communication I / F part 13 Storage part 13a Inverted index 13b Presented keyword route 15 Control part 15a Reception part 15b Search part 15c Creation part 15d Extraction part 15e Determination part 15f Presentation part 30A, 30B, 30C Client terminal

Claims (4)

コンピュータに、
キーワードの指定を受け付け、
複数のファイルもしくは複数のファイルの各々に含まれる文字列のインデックスを記憶する第1の記憶部、または、複数のファイルのメタデータもしくは複数のファイルの各々のメタデータに含まれる文字列のインデックスを記憶する第2の記憶部を参照して、前記指定のキーワードがヒットするファイルを検索し、
ファイルの検索結果にしたがって前記指定のキーワードの出現の有無をファイルもしくはファイルのメタデータごとに設定することによって出現マップを作成し、
前記指定のキーワードの出現マップと、前記指定のキーワードと組み合わせるキーワードの出現マップとを用いて、前記指定のキーワードとの組合せの検索結果が所定の件数を達成するキーワードを抽出し、
前記指定のキーワードに組み合わせるキーワード数を取得し、
前記指定のキーワードに組み合わせられるキーワードの各順序ごとに、当該順序に対応する回数にわたって前記指定のキーワードに組み合わせるキーワード数に対応する絞込み率を前記指定のキーワードによる検索結果の件数に乗算することによって当該順序における絞込み件数を算出し、
前記指定のキーワードに組み合わせられるキーワードの各順序ごとに当該順序までのキーワードがAND演算された場合の検索結果の件数が前記絞込み件数から所定の範囲内であるか否かを判定することによって、抽出されたキーワードが前記指定のキーワードと組み合わせられる妥当性を判定し、
妥当性があると判定されたキーワードを提示する
各処理を実行させるキーワード提示プログラム。
On the computer,
Accept keyword specification,
A first storage unit that stores an index of a character string included in each of a plurality of files or a plurality of files, or an index of a character string included in metadata of a plurality of files or metadata of each of a plurality of files Referring to the second storage unit to store, search for a file that hits the specified keyword,
Create an appearance map by setting the presence or absence of the specified keyword for each file or file metadata according to the search result of the file,
Using the appearance map of the specified keyword and the appearance map of the keyword combined with the specified keyword, a keyword that achieves a predetermined number of search results of the combination with the specified keyword is extracted;
Get the number of keywords combined with the specified keyword,
For each order of keywords to be combined with the designated keyword, the number of search results by the designated keyword is multiplied by the narrowing rate corresponding to the number of keywords to be combined with the designated keyword over the number of times corresponding to the order. Calculate the number of refinements in the order,
Extraction is performed by determining whether or not the number of search results when the keywords up to the order are ANDed for each order of keywords combined with the designated keyword is within a predetermined range from the number of narrowed down cases. The validity of the keyword is combined with the specified keyword,
A keyword presentation program that presents keywords that are determined to be valid and that executes each process.
前記キーワードを抽出する処理として、
前記指定のキーワードとの組合せの検索結果が第1の件数以下かつ前記第1の件数よりも小さい第2の件数以上であるキーワードを抽出することを特徴とする請求項1に記載のキーワード提示プログラム。
As a process of extracting the keyword,
2. The keyword presenting program according to claim 1, wherein a keyword whose search result of the combination with the designated keyword is equal to or smaller than a first number and equal to or larger than a second number smaller than the first number is extracted. .
コンピュータが、
キーワードの指定を受け付け、
複数のファイルもしくは複数のファイルの各々に含まれる文字列のインデックスを記憶する第1の記憶部、または、複数のファイルのメタデータもしくは複数のファイルの各々のメタデータに含まれる文字列のインデックスを記憶する第2の記憶部を参照して、前記指定のキーワードがヒットするファイルを検索し、
ファイルの検索結果にしたがって前記指定のキーワードの出現の有無をファイルもしくはファイルのメタデータごとに設定することによって出現マップを作成し、
前記指定のキーワードの出現マップと、前記指定のキーワードと組み合わせるキーワードの出現マップとを用いて、前記指定のキーワードとの組合せの検索結果が所定の件数を達成するキーワードを抽出し、
前記指定のキーワードに組み合わせるキーワード数を取得し、
前記指定のキーワードに組み合わせられるキーワードの各順序ごとに、当該順序に対応する回数にわたって前記指定のキーワードに組み合わせるキーワード数に対応する絞込み率を前記指定のキーワードによる検索結果の件数に乗算することによって当該順序における絞込み件数を算出し、
前記指定のキーワードに組み合わせられるキーワードの各順序ごとに当該順序までのキーワードがAND演算された場合の検索結果の件数が前記絞込み件数から所定の範囲内であるか否かを判定することによって、抽出されたキーワードが前記指定のキーワードと組み合わせられる妥当性を判定し、
妥当性があると判定されたキーワードを提示する
各処理を実行するキーワード提示方法。
Computer
Accept keyword specification,
A first storage unit that stores an index of a character string included in each of a plurality of files or a plurality of files, or an index of a character string included in metadata of a plurality of files or metadata of each of a plurality of files Referring to the second storage unit to store, search for a file that hits the specified keyword,
Create an appearance map by setting the presence or absence of the specified keyword for each file or file metadata according to the search result of the file,
Using the appearance map of the specified keyword and the appearance map of the keyword combined with the specified keyword, a keyword that achieves a predetermined number of search results of the combination with the specified keyword is extracted;
Get the number of keywords combined with the specified keyword,
For each order of keywords to be combined with the designated keyword, the number of search results by the designated keyword is multiplied by the narrowing rate corresponding to the number of keywords to be combined with the designated keyword over the number of times corresponding to the order. Calculate the number of refinements in the order,
Extraction is performed by determining whether or not the number of search results when the keywords up to the order are ANDed for each order of keywords combined with the designated keyword is within a predetermined range from the number of narrowed down cases. The validity of the keyword is combined with the specified keyword,
A keyword presenting method for executing each process for presenting a keyword determined to be valid.
複数のファイルもしくは複数のファイルの各々に含まれる文字列のインデックスを記憶する第1の記憶部、または、複数のファイルのメタデータもしくは複数のファイルの各々のメタデータに含まれる文字列のインデックスを記憶する第2の記憶部のうち少なくとも1つの記憶部と、
キーワードの指定を受け付ける受付部と、
前記第1の記憶部または前記第2の記憶部を参照して、前記指定のキーワードがヒットするファイルを検索する検索部と、
ファイルの検索結果にしたがって前記指定のキーワードの出現の有無をファイルもしくはファイルのメタデータごとに設定することによって出現マップを作成する作成部と、
前記指定のキーワードの出現マップと、前記指定のキーワードと組み合わせるキーワードの出現マップとを用いて、前記指定のキーワードとの組合せの検索結果が所定の件数を達成するキーワードを抽出する抽出部と、
前記指定のキーワードに組み合わせるキーワード数を取得する取得部と、
前記指定のキーワードに組み合わせられるキーワードの各順序ごとに、当該順序に対応する回数にわたって前記指定のキーワードに組み合わせるキーワード数に対応する絞込み率を前記指定のキーワードによる検索結果の件数に乗算することによって当該順序における絞込み件数を算出する算出部と、
前記指定のキーワードに組み合わせられるキーワードの各順序ごとに当該順序までのキーワードがAND演算された場合の検索結果の件数が前記絞込み件数から所定の範囲内であるか否かを判定することによって、抽出されたキーワードが前記指定のキーワードと組み合わせられる妥当性を判定する判定部と、
妥当性があると判定されたキーワードを提示する提示部と
を有するキーワード提示装置。
A first storage unit that stores an index of a character string included in each of a plurality of files or a plurality of files, or an index of a character string included in metadata of a plurality of files or metadata of each of a plurality of files At least one storage unit among the second storage units to be stored;
A reception unit that accepts keyword specification;
A search unit for searching for a file in which the designated keyword is hit with reference to the first storage unit or the second storage unit;
A creation unit that creates an appearance map by setting the presence or absence of the specified keyword for each file or file metadata according to a file search result;
An extraction unit for extracting a keyword that achieves a predetermined number of search results of a combination with the specified keyword, using an appearance map of the specified keyword and an appearance map of a keyword combined with the specified keyword;
An acquisition unit for acquiring the number of keywords combined with the specified keyword;
For each order of keywords to be combined with the designated keyword, the number of search results by the designated keyword is multiplied by the narrowing rate corresponding to the number of keywords to be combined with the designated keyword over the number of times corresponding to the order. A calculation unit for calculating the number of refinements in the order;
Extraction is performed by determining whether or not the number of search results when the keywords up to the order are ANDed for each order of keywords combined with the designated keyword is within a predetermined range from the number of narrowed down cases. A determination unit for determining the validity of the selected keyword to be combined with the specified keyword;
A keyword presenting apparatus comprising: a presenting unit that presents a keyword determined to be valid.
JP2012276261A 2012-12-18 2012-12-18 Keyword presentation program, keyword presentation method, and keyword presentation apparatus Expired - Fee Related JP6079207B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012276261A JP6079207B2 (en) 2012-12-18 2012-12-18 Keyword presentation program, keyword presentation method, and keyword presentation apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012276261A JP6079207B2 (en) 2012-12-18 2012-12-18 Keyword presentation program, keyword presentation method, and keyword presentation apparatus

Publications (2)

Publication Number Publication Date
JP2014120080A JP2014120080A (en) 2014-06-30
JP6079207B2 true JP6079207B2 (en) 2017-02-15

Family

ID=51174840

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012276261A Expired - Fee Related JP6079207B2 (en) 2012-12-18 2012-12-18 Keyword presentation program, keyword presentation method, and keyword presentation apparatus

Country Status (1)

Country Link
JP (1) JP6079207B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6520052B2 (en) * 2014-11-06 2019-05-29 富士ゼロックス株式会社 INFORMATION PROCESSING APPARATUS AND INFORMATION PROCESSING PROGRAM
JP6547504B2 (en) * 2015-08-04 2019-07-24 カシオ計算機株式会社 Character input device, character input method, and program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3422350B2 (en) * 1996-02-09 2003-06-30 日本電信電話株式会社 Additional search word candidate presentation method, document search method, and their devices
JP2000227921A (en) * 1999-02-05 2000-08-15 Dainippon Printing Co Ltd Method and device for retrieving data, and recording medium
JP2004246422A (en) * 2003-02-10 2004-09-02 Hitachi Software Eng Co Ltd Information retrieval support device

Also Published As

Publication number Publication date
JP2014120080A (en) 2014-06-30

Similar Documents

Publication Publication Date Title
US8001135B2 (en) Search support apparatus, computer program product, and search support system
US8478701B2 (en) Locating a user based on aggregated tweet content associated with a location
US8903800B2 (en) System and method for indexing food providers and use of the index in search engines
US8150846B2 (en) Content searching and configuration of search results
JP5984917B2 (en) Method and apparatus for providing suggested words
US9910932B2 (en) System and method for completing a user query and for providing a query response
KR100930455B1 (en) Method and system for generating search collection by query
US20170293696A1 (en) Related entity discovery
JP6966158B2 (en) Methods, devices and programs for processing search data
JP2008204444A (en) Data processing apparatus, data processing method and search apparatus
US8799314B2 (en) System and method for managing information map
JP2012146097A (en) Document retrieval apparatus, document retrieval method and document retrieval program
JP7172187B2 (en) INFORMATION DISPLAY METHOD, INFORMATION DISPLAY PROGRAM AND INFORMATION DISPLAY DEVICE
JP5351123B2 (en) Document search keyword presentation device and document search keyword presentation program
US9465875B2 (en) Searching based on an identifier of a searcher
JP6079207B2 (en) Keyword presentation program, keyword presentation method, and keyword presentation apparatus
JP5179564B2 (en) Query segment position determination device
CN107220249B (en) Classification-based full-text search
CN112000495B (en) Method, electronic device and storage medium for point of interest information management
KR101662215B1 (en) Search system and method for providing expansion search information
JP5228529B2 (en) Data search program, data search device, and data search method
KR101583073B1 (en) Server and method for article summary service
CN108009171B (en) Method and device for extracting content data
JP7354019B2 (en) Information processing device, information processing method, and program
JP2019121159A (en) Selection program, selection method, and selection apparatus

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160822

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20161004

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161124

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20161202

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170102

R150 Certificate of patent or registration of utility model

Ref document number: 6079207

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees