JP6079207B2 - Keyword presentation program, keyword presentation method, and keyword presentation apparatus - Google Patents
Keyword presentation program, keyword presentation method, and keyword presentation apparatus Download PDFInfo
- 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
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.
しかしながら、上記のキーワードの入力補助には、以下に説明するように、検索結果を精度よく絞り込むことができないという問題がある。 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.
以下に添付図面を参照して本願に係るキーワード提示プログラム、キーワード提示方法及びキーワード提示装置について説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。 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
図1に示すように、検索システム1には、サーバ装置10と、クライアント端末30A〜30Cとが収容される。なお、図1には、3つのクライアント端末をそれぞれ図示したが、検索システム1は任意の数のクライアント端末を収容できる。なお、以下では、クライアント端末30A〜30Cの各装置を区別なく総称する場合には、「クライアント端末30」と記載する場合がある。
As illustrated in FIG. 1, the
これらサーバ装置10及びクライアント端末30の間は、ネットワーク5を介して相互に通信可能に接続される。かかるネットワーク5には、有線または無線を問わず、インターネット(Internet)を始め、LAN(Local Area Network)やVPN(Virtual Private Network)などの任意の種類の通信網を採用できる。
The
サーバ装置10は、Web検索サービスをクライアント端末30に提供するコンピュータである。例えば、サーバ装置10は、クライアント端末30を介して指定を受け付けたキーワードに組み合わせることによって検索結果の件数を絞り込む絞込み用のキーワードを提示するキーワード提示サービスを上記のWeb検索サービスに併せて提供する。一態様としては、上記のキーワード提示サービスに関する処理を実行するWebサーバとして実装することとしてもよいし、また、上記のキーワード提示サービスをアウトソーシングにより提供するクラウドとして実装することもできる。他の一態様としては、パッケージソフトウェアやオンラインソフトウェアとして提供されるキーワード提示プログラムを所望のコンピュータにプリインストール又はインストールさせることによっても実装できる。
The
クライアント端末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
[サーバ装置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
通信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
記憶部13は、制御部15で実行されるプログラムに用いられるデータの一例として、転置インデックス13aと、提示キーワードルート13bとを記憶する。これら転置インデックス13a及び提示キーワードルート13b以外にも、他の電子データ、例えばWeb検索でアクセスされるWebページなどのファイルのキャッシュなども併せて記憶することもできる。
The
このうち、転置インデックス13aは、検索用の索引データである。かかる転置インデックス13aの一態様としては、索引とする見出し語ごとにファイル内のテキストに見出し語を含むファイルID(IDentifier)および見出し語がテキスト内で出現する位置情報が対応付けられたデータを採用できる。ここで言う「ファイル」の一例としては、HTMLファイル、XMLファイルやPDF(Portable Document Format)ファイルなどが挙げられる。これらのファイルには、その一部にテキストが含まれていればよく、画像や音声が含まれていてもかまわず、画像や音声を含んだファイルのテキストを対象にキーワード検索を実行することによって画像や動画像を検索することとしてもよい。また、「見出し語」の抽出には、任意の索引文字列の抽出方法、例えば形態素解析やN−Gram法などを用いることができる。
Among these, the transposed
かかる転置インデックス13aを検索に用いることによって、クライアント端末30から指定されたキーワードを含むファイルをファイルそのものを記憶せずとも検索できる。なお、図2の例では、ファイルの検索に転置インデックス13aを用いる場合を例示したが、各ファイルそのものを記憶部13に記憶しておき、各ファイルに含まれるテキストから指定のキーワードを検索することとしてもかまわない。
By using the transposed
制御部15は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部15は、図2に示すように、受付部15aと、検索部15bと、作成部15cと、抽出部15dと、判定部15eと、提示部15fとを有する。
The
このうち、受付部15aは、キーワードの指定を受け付ける処理部である。一態様としては、受付部15aは、クライアント端末30からサーバ装置10がWeb検索サービスを提供するURL(Uniform Resource Locator)へのアクセスを受け付けた場合に、次のような検索画面をクライアント端末30に表示させる。かかる検索画面の一例としては、キーワードを入力可能なテキストボックスやキーワードを選択可能なプルダウンメニューなどが含まれる。このように、受付部15aは、クライアント端末30に検索画面を表示させることによってユーザが検索に用いるキーワードの指定を検索画面を介して受け付ける。
Among these, the
検索部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
作成部15cは、ファイルの検索結果にしたがって指定のキーワードの出現の有無をファイルごとに設定することによって出現マップを作成する処理部である。かかる出現マップのデータ構造の一例としては、ファイルIDごとに「0」または「1」のフラグが設定されたビット配列を採用できる。例えば、作成部15cは、指定のキーワードが含まれるファイルのファイルIDには「1」を付与する一方で、指定のキーワードが含まれないファイルのファイルIDには「0」を付与する。また、作成部15cは、指定のキーワードの出現マップの他、指定のキーワードに組み合わせる絞込み用のキーワードの候補の出現マップも絞込み用のキーワードの候補の検索結果をビット配列へ変換することによって作成する。
The creating
抽出部15dは、指定のキーワードの出現マップと、指定のキーワードと組み合わせるキーワードの出現マップとを用いて、指定のキーワードとの組合せの検索結果が所定の件数を達成するキーワードを抽出する処理部である。一態様としては、抽出部15dは、指定のキーワードとの間で共起関係を持つキーワードを指定のキーワードと組み合わせる絞込み用のキーワードの候補として用いる。このとき、抽出部15dは、指定のキーワードに絞込み用のキーワードの候補を1つ付加する。そして、抽出部15dは、指定のキーワードの出現マップと絞込み用のキーワードの候補の出現マップとを用いて、各々のキーワードのAND検索の検索結果が目標件数の上限値以下かつ目標件数の下限値以上となるまで、指定のキーワードに絞込み用のキーワードの候補を付加する処理を繰り返し実行する。その後、抽出部15dは、AND検索の検索結果が目標件数の上限値以下かつ目標件数の下限値以上となった場合に、指定のキーワード、さらには、1番目からN番目までの絞込み用のキーワードの候補とをキーワードルートとして抽出する。
The
これを具体的に説明すると、抽出部15dは、作成部15cによって指定のキーワードの出現マップが作成された場合に、制御部15が有する内部メモリに指定のキーワードをキーワードルートの最初のキーワード0として登録する。このとき、抽出部15dは、キーワード0にキーワード0による検索結果の件数を対応付けて内部メモリに登録する。そして、抽出部15dは、指定のキーワードとの間で共起関係を持つキーワードを指定のキーワードと組み合わせる絞込み用のキーワードの候補としてリスト化する。その上で、抽出部15dは、絞込み用のキーワードの候補の中から新たなキーワードを1つ選択する。続いて、抽出部15dは、新たに選択されたキーワードの出現マップを作成部15cに作成させる。ここでは、新たにキーワードが選択される度に出現マップを作成部15cに作成させる場合を例示したが、処理時間を短縮するために、キーワードごとの出現マップを予め作成して記憶しておくこととしてもかまわない。
More specifically, the
その後、抽出部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
このとき、目標件数の上限値を超過する場合には、目的の情報を閲覧できる程度まで検索結果が絞り込まれていない可能性が高い。この場合には、抽出部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
このように、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数が目標件数の上限値以下になるまで、絞込み用のキーワードの候補の中から新たなキーワードを選択してキーワードルートに追加する処理を繰り返し実行する。
As described above, the
一方、目標件数の上限値以下である場合には、指定がなされたキーワードによってユーザが目的とする情報を閲覧できる程度まで検索結果が絞り込まれている可能性が高いと推定できる。この場合には、抽出部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
そして、抽出部15dは、目標件数の下限値未満である場合に、内部メモリに記憶されたキーワードルートを消去する。一方、抽出部15dは、目標件数の下限値以上である場合に、後述のキーワードルートの妥当性を判定する対象として、内部メモリに記憶されたキーワードルートをそのまま残す。その後、抽出部15dは、指定のキーワードに絞込み用のキーワードの候補を組み合わせる探索が全ての組合せについて終了するまで、すなわち既に探索されたキーワードルートおよび破棄されたキーワードルートを構成する各キーワードとの間で重複しない組合せがなくなるまで、指定のキーワードに絞込み用のキーワードの候補を組み合わせる探索を繰り返し実行する。このとき、指定のキーワードがキーワードルートの最初のキーワード0であることは明らかである。このため、抽出部15dは、絞込み用のキーワードの候補の中からキーワードルートのキーワード1に対応するキーワードを選択する段階から繰り返し処理を開始する。
And the
図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
図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
さらに、絞込み用のキーワードの候補「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
図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
なお、ここでは、目標件数の下限値未満である場合に、内部メモリに記憶されたキーワードルートを破棄することとしたが、ユーザが目的とする情報をピンポイントで閲覧できるレアクエリが入力されるケースも考えられるので、検索結果の件数が目標件数の上限値以上であるか否かしか判定を実行せず、検索結果の件数が目標件数の下限値未満であるキーワードルートを残すこととしてもかまわない。 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」となる。このことから、N個のAND検索でQ件まで絞り込むには、下記の式(1)が成立する。
Returning to the description of FIG. 2, the
Q=Z×αN・・・式(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
このような絞込み率αが導出されている構成の下、判定部15eは、キーワード1からキーワードNまでの各順序ごとに当該順序までのキーワードがAND演算された場合の検索結果の件数と比較する基準となる絞込み件数Wnを算出する。例えば、判定部15eは、指定のキーワードに組み合わせるキーワード数を取得する。そして、判定部15eは、キーワードルートに含まれるキーワード1からキーワードNまでの各順序ごとに、当該順序に対応する回数、すなわち順序と同一の回数にわたって指定のキーワードに組み合わせるキーワード数に対応する絞込み率αを指定のキーワードによる検索結果の件数に乗算する。これによって、当該順序における絞込み件数Wnを算出する。その上で、判定部15eは、キーワードルートに含まれるキーワード1からキーワードNまでの各順序ごとに当該順序までのキーワードがAND演算された場合の検索結果の件数が絞込み件数Wnから所定の範囲、例えばβ=±20%の範囲内であるか否かを判定する。このとき、検索結果の件数が絞込み件数Wn±β内にない場合には、絞込み件数Wn±β内にないキーワードNが一般的な単語で絞込みへ有効に機能していないのか、あるいはキーワードNによって取りこぼしが発生するおそれがあることがわかる。この場合には、キーワードNを含むキーワードルートに妥当性がないと推定する。一方、検索結果の件数が絞込み件数Wn±βを逸脱するキーワードがない場合には、キーワード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
提示部15fは、クライアント端末30に対する情報の提示制御を行う処理部である。一態様としては、提示部15fは、指定のキーワードによる検索結果の件数が目的件数の上限値以下である場合には、指定のキーワードを含むファイルの一覧を検索結果としてクライアント端末30へ出力する。このとき、提示部15fは、検索結果として提示するファイルの一覧にタイトル、URL等のリンクや広告を含めて出力することもできる。他の一態様としては、提示部15fは、指定のキーワードを含むファイルの一覧を検索結果として出力するとともに、判定部15eによって記憶部13に登録された提示キーワードルート13bに含まれるキーワードのうち指定を受け付けたキーワードの次のキーワードをクライアント端末30へ出力する。その後、提示部15fは、次のキーワードの選択を受け付けると、キーワードルートにさらに続きのキーワードが存在するか否かを判定する。そして、提示部15fは、続きのキーワードがなくなるまで、先に選択された次のキーワードがAND検索された検索結果を出力するとともに、さらに次のキーワードをクライアント端末30へ出力する。その後、提示部15fは、続きのキーワードがなくなると、最後のキーワードがAND検索された検索結果をクライアント端末30へ出力する。
The
図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
このとき、図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
[処理の流れ]
続いて、本実施例に係るサーバ装置10の処理の流れについて説明する。なお、ここでは、サーバ装置10によって実行される(1)検索処理を説明した後に検索処理のサブルーチンとして実行される(2)提示キーワードルートの生成処理を説明することとする。
[Process flow]
Next, the process flow of the
(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
その後、検索部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
その後、提示部15fは、次のキーワードの選択を受け付けると(ステップS106)、キーワードルートにさらに続きのキーワードが存在するか否かを判定する(ステップS107)。
Thereafter, when the
そして、続きのキーワードが存在する場合(ステップS107No)には、提示部15fは、ステップS106で選択された次のキーワードがさらにAND検索された検索結果を出力するとともに、さらに続く次のキーワードをクライアント端末30へ出力し(ステップS105)、ステップS105で続きのキーワードとして出力された次のキーワードの選択をさらに受け付ける(ステップS106)。
If there is a subsequent keyword (No in step S107), the
一方、続きのキーワードが存在しない場合(ステップS107Yes)、提示部15fは、最後のキーワードがAND検索された検索結果をクライアント端末30へ出力し(ステップS108)、処理を終了する。
On the other hand, when there is no subsequent keyword (step S107 Yes), the
また、目的件数の上限値以下である場合(ステップ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
(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
そして、抽出部15dは、指定のキーワードをキーワードルートの最初のキーワード0として内部メモリに登録する(ステップS203)。このとき、抽出部15dは、キーワード0にキーワード0による検索結果の件数を対応付けて内部メモリに登録する。
Then, the
そして、抽出部15dは、指定のキーワードとの間で共起関係を持つキーワードを指定のキーワードと組み合わせる絞込み用のキーワードの候補としてリスト化する(ステップS204)。その上で、抽出部15dは、絞込み用のキーワードの候補の中から新たなキーワードを1つ選択する(ステップS205)。続いて、抽出部15dは、ステップS205で選択されたキーワードの出現マップを作成部15cに作成させる(ステップS206)。
Then, the
その後、抽出部15dは、内部メモリに記憶されたキーワードルートの出現マップと、ステップS205で選択されたキーワードの出現マップとの間でビット配列のAND演算を実行する(ステップS207)。その上で、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数を算出する(ステップS208)。
Thereafter, the
続いて、抽出部15dは、ステップS205で選択されたキーワードをキーワードルートのキーワード1として内部メモリに追加する(ステップS209)。このとき、抽出部15dは、キーワード1にキーワード0及びキーワード1のAND検索の検索結果の件数を対応付けて内部メモリに登録する。
Subsequently, the
そして、抽出部15dは、キーワードルートに含まれる各キーワードのAND検索の検索結果の件数が目標件数の上限値以下であるか否かを判定する(ステップS210)。このとき、目標件数の上限値を超過する場合(ステップS210No)には、目的の情報を閲覧できる程度まで検索結果が絞り込まれていない可能性が高い。この場合には、抽出部15dは、絞込み用のキーワードの候補の中から新たなキーワードをさらに選択し(ステップS205)、ステップS206〜ステップS209までの処理を繰り返し実行する。
Then, the
一方、目標件数の上限値以下である場合(ステップ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
そして、目標件数の下限値未満である場合(ステップS211No)には、抽出部15dは、内部メモリに記憶されたキーワードルートを消去する(ステップS212)。一方、目標件数の下限値以上である場合(ステップS211Yes)には、抽出部15dは、キーワードルートの妥当性を判定する対象として、内部メモリに記憶されたキーワードルートをそのまま残し、ステップS213へ移行する。
If it is less than the lower limit of the target number (No at Step S211), the
その後、抽出部15dは、指定のキーワードに絞込み用のキーワードの候補を組み合わせる探索が全ての組合せについて終了するまで(ステップS213No)、上記のステップS205〜ステップS212までの処理を繰り返し実行する。
Thereafter, the
そして、指定のキーワードに絞込み用のキーワードの候補を組み合わせる探索が全ての組合せについて終了すると(ステップ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
続いて、判定部15eは、指定のキーワードに組み合わせるキーワード数を取得する(ステップS215)。そして、判定部15eは、キーワード1からキーワードNまでの各順序ごとに、当該順序に対応する回数にわたって指定のキーワードに組み合わせるキーワード数に対応する絞込み率αを指定のキーワードによる検索結果の件数に乗算することによって各順序における絞込み件数Wnを算出する(ステップS216)。
Subsequently, the
その後、判定部15eは、内部メモリが持つキーワードカウンタnを初期値「1」に設定する初期化を実行する(ステップS217)。その上で、判定部15eは、キーワードカウンタnに対応する順序までのキーワードがAND演算された場合の検索結果の件数が絞込み件数Wnから所定の範囲、例えば±βの範囲内であるか否かを判定する(ステップS218)。
Thereafter, the
このとき、検索結果の件数が絞込み件数Wn±β内である場合(ステップS218Yes)には、キーワードカウンタnの値がNになったか否かを判定する(ステップS219)。そして、キーワードカウンタnの値がN未満である場合(ステップS219No)には、キーワードカウンタnをインクリメントし(ステップS220)、上記のステップS218の処理を再び実行する。なお、検索結果の件数が絞込み件数Wn±β内にない場合(ステップ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
その後、内部メモリに登録された全てのキーワードルートについて妥当性の判定を終了するまで(ステップ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
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。 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
[分散および統合]
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、受付部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
[キーワード提示プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図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
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
そして、CPU150が、キーワード提示プログラム170aをHDD170から読み出してRAM180に展開する。これによって、図13に示すように、キーワード提示プログラム170aは、キーワード提示プロセス180aとして機能する。このキーワード提示プロセス180aは、HDD170から読み出した各種データを適宜RAM180上の自身に割り当てられた領域に展開し、この展開した各種データに基づいて各種処理を実行する。なお、キーワード提示プロセス180aは、図2に示した受付部15a、検索部15b、作成部15c、抽出部15d、判定部15e及び提示部15fにて実行される処理、例えば図10〜図12に示す処理を含む。また、CPU150上で仮想的に実現される各処理部は、常に全ての処理部がCPU150上で動作する必要はなく、処理に必要な処理部のみが仮想的に実現されれば良い。
Then, the
なお、上記のキーワード提示プログラム170aについては、必ずしも最初からHDD170やROM160に記憶させておく必要はない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から各プログラムを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに各プログラムを記憶させておき、コンピュータ100がこれらから各プログラムを取得して実行するようにしてもよい。
Note that the
1 検索システム
5 ネットワーク
10 サーバ装置
11 通信I/F部
13 記憶部
13a 転置インデックス
13b 提示キーワードルート
15 制御部
15a 受付部
15b 検索部
15c 作成部
15d 抽出部
15e 判定部
15f 提示部
30A,30B,30C クライアント端末
DESCRIPTION OF
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の記憶部を参照して、前記指定のキーワードがヒットするファイルを検索する検索部と、
ファイルの検索結果にしたがって前記指定のキーワードの出現の有無をファイルもしくはファイルのメタデータごとに設定することによって出現マップを作成する作成部と、
前記指定のキーワードの出現マップと、前記指定のキーワードと組み合わせるキーワードの出現マップとを用いて、前記指定のキーワードとの組合せの検索結果が所定の件数を達成するキーワードを抽出する抽出部と、
前記指定のキーワードに組み合わせるキーワード数を取得する取得部と、
前記指定のキーワードに組み合わせられるキーワードの各順序ごとに、当該順序に対応する回数にわたって前記指定のキーワードに組み合わせるキーワード数に対応する絞込み率を前記指定のキーワードによる検索結果の件数に乗算することによって当該順序における絞込み件数を算出する算出部と、
前記指定のキーワードに組み合わせられるキーワードの各順序ごとに当該順序までのキーワードが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.
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)
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)
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 |
-
2012
- 2012-12-18 JP JP2012276261A patent/JP6079207B2/en not_active Expired - Fee Related
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 | |
US20170293696A1 (en) | Related entity discovery | |
KR100930455B1 (en) | Method and system for generating search collection by query | |
JP6966158B2 (en) | Methods, devices and programs for processing search data | |
JP2008204444A (en) | Data processing apparatus, data processing method and search apparatus | |
JP2012146097A (en) | Document retrieval apparatus, document retrieval method and document retrieval program | |
US8799314B2 (en) | System and method for managing information map | |
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 | |
KR101662215B1 (en) | Search system and method for providing expansion search information | |
KR101583073B1 (en) | Server and method for article summary service | |
CN108009171B (en) | Method and device for extracting content data | |
JP2009205253A (en) | Data retrieval program, data retrieval device, and data retrieval method | |
JP7354019B2 (en) | Information processing device, information processing method, and program | |
JP2019121159A (en) | Selection program, selection method, and selection apparatus | |
JP2010501927A (en) | Information terminal equipped with content search system |
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 |