JP2009175826A - テキスト検索装置、テキスト検索方法、テキスト検索プログラムおよびそのプログラムを記録した記録媒体 - Google Patents

テキスト検索装置、テキスト検索方法、テキスト検索プログラムおよびそのプログラムを記録した記録媒体 Download PDF

Info

Publication number
JP2009175826A
JP2009175826A JP2008011125A JP2008011125A JP2009175826A JP 2009175826 A JP2009175826 A JP 2009175826A JP 2008011125 A JP2008011125 A JP 2008011125A JP 2008011125 A JP2008011125 A JP 2008011125A JP 2009175826 A JP2009175826 A JP 2009175826A
Authority
JP
Japan
Prior art keywords
document
word
search
text
candidate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008011125A
Other languages
English (en)
Other versions
JP4691117B2 (ja
Inventor
Makoto Onizuka
真 鬼塚
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2008011125A priority Critical patent/JP4691117B2/ja
Publication of JP2009175826A publication Critical patent/JP2009175826A/ja
Application granted granted Critical
Publication of JP4691117B2 publication Critical patent/JP4691117B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

【課題】インパクト値順の転置ファイルを利用する際に検索処理の処理性能を向上させることができるテキスト検索技術を提供すること。
【解決手段】テキスト検索装置1は、検索処理装置20を有し、検索処理装置20は、複数の単語等で指定された検索条件101を入力する検索条件入力手段と、入力された単語群102を単語辞書に基づいて抽出する単語抽出手段と、予め算出されたdf値に基づいて、抽出された各単語を、df値が低い単語群と高い単語群とに分類する単語群分類手段と、df値が低い単語群については単語毎に構築されたインパクト値順の転置ファイル71,74を利用すると共に、df値が高い単語群については単語毎に構築された文書ID順の転置ファイル73を利用して出力候補となる候補文書を探索する候補文書探索手段と、検索条件を満たした時点で候補文書d16,…を確定して出力する候補文書出力手段とを備える。
【選択図】図2

Description

本発明は、大量のテキスト情報(例えば、多数の文書)から、テキスト情報に含まれる複数の単語と文書件数とを検索条件として、利用者の要求するテキスト情報を検索するテキスト検索技術に関する。
従来、テキスト情報(テキスト文書、以下、単に文書という)を高速に検索するために、転置ファイルを利用する技術が知られている。転置ファイルには、単語毎に文書ID順に文書を格納した文書ID順の転置ファイル(例えば、特許文献1および非特許文献1参照)と、単語毎にインパクト値順に文書を格納したインパクト値順の転置ファイル(例えば、非特許文献1〜4参照)とがある。インパクト値は、各テキスト文書において各単語毎に予め算出された単語出現頻度(tf値)と、当該テキスト文書に含まれる単語の総数と、に基づいて得られる重みの数値を示す。一般的にインパクト値順の転置ファイルを利用するテキスト検索装置の方が、文書ID順の転置ファイルを利用するテキスト検索装置よりも性能が良いことが知られている。
図3は、単語別に構築されたインパクト値順の転置ファイルを利用する従来のテキスト検索装置300の概要を模式的に示す説明図である。テキスト検索装置300は、検索処理装置320と、インデックス記憶装置330と、単語辞書記憶装置350とを備えている。検索処理装置320は、端末装置360から入力された検索条件401に含まれる単語群402を、単語辞書記憶装置350に記憶された単語辞書を参照して抽出し、インデックス記憶装置330に蓄積されたインパクト値順の転置ファイル331〜334を利用して、出力すべき候補となる文書(候補文書)を検索し、検索結果を端末装置360に出力する。図3に示した例では、検索処理装置320は、検索条件401である「東京の駅」というフレーズを分割し、単語群402として、「東京」、「の」、「駅」を抽出する。そして、各単語に対応した転置ファイル331,333,334について、符号403,404,405の矢印で示すように、インパクト値の高い順に文書毎に所定のスコアを算出する。これにより、共通の文書として3つの転置ファイルから、符号413,414,415でそれぞれ示した文書IDが「16」である文書(d16)等が探索され、候補文書として出力される。
特開平3−108064号公報(第1図) Justin Zobel and Alistair Moffat, "Inverted Files for Text Search Engines", ACM Computing Surveys, Vol. 38, No. 2, Article 6, July, 2006 Vo Ngoc Anh, Owen de Kretser, Alistair Moffat, "Impact Transformation: Effective and Efficient Web Retrieval", Proceedings of the 24th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, p.35-42, 2001 Vo Ngoc Anh and Alistair Moffat, "Vector-Space Ranking with Effective Early Termination", Proceedings of the 25th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, p.3-10, 2002 Vo Ngoc Anh and Alistair Moffat, "Pruned Query Evaluation Using Pre-Computed Impacts", Proceedings of the 29th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, p.372-379, 2006
しかしながら、単語別に構築されたインパクト値順の転置ファイルを利用する従来のテキスト検索装置において分割された各単語のうち、「の」や「が」のような助詞は、検索対象とする全テキスト文書を通じて出現してしまう。そのため、例えば、図3に示すように、「の」の転置ファイル333において、「東京」と「駅」との両方を含むテキスト文書を探索するためには、「の」の転置ファイル333について全スキャンをしてしまう確率が高いという性能上の問題があった。
また、例えば、Web上の文書(ドキュメント)を検索対象とした場合に、ドキュメントに含まれる単語別に構築されたインパクト値順の転置ファイルを利用してテキスト文書をキーワード検索する際に、PageRank(登録商標)のような単語に依存しない文書独自のスコアをも考慮してテキスト文書を検索することが要望されている。しかしながら、インパクト値順の転置ファイルを利用してテキスト文書を検索する際に、単語に依存しない文書独自のスコアをどのように扱えば検索処理の性能を向上させることができるのか知られていなかった。
そこで、本発明では、前記した問題を解決し、インパクト値順の転置ファイルを利用する際に検索処理の処理性能を向上させることができるテキスト検索技術を提供することを目的とする。
前記課題を解決するため、請求項1に記載のテキスト検索装置は、文書IDを有する各テキスト文書において単語毎に予め算出された単語出現頻度と、当該テキスト文書に含まれる単語の総数と、に基づいて得られる重みの数値を示すインパクト値を用いた単語毎に構築されたインパクト値順の転置ファイルと、前記各テキスト文書に含まれる単語毎に構築された文書ID順の転置ファイルとを含む複数の転置ファイルを文書検索用のインデックスとして用いて、前記テキスト文書を検索するテキスト検索装置であって、複数の単語を含む検索式と文書件数とを指定された検索条件として入力する検索条件入力手段と、前記入力された検索式に含まれる各単語を単語辞書に基づいて抽出する単語抽出手段と、単語毎に検索対象とする全テキスト文書を通じて予め算出された文書出現頻度に基づいて、前記抽出された各単語を、前記文書出現頻度が所定のしきい値よりも低い単語群と、そうではない単語群とに分類する単語群分類手段と、前記文書出現頻度が所定のしきい値よりも低い単語群については前記インパクト値順の転置ファイルを利用して出力候補となる候補文書を探索し、その後、前記文書出現頻度が前記所定のしきい値以上の単語群については前記文書ID順の転置ファイルを利用して出力候補となる候補文書を探索する候補文書探索手段と、前記入力された検索条件を満たした時点で前記候補文書を確定して出力する候補文書出力手段とを備えることを特徴とする。
また、前記課題を解決するため、請求項7に記載のテキスト検索方法は、文書IDを有する各テキスト文書において単語毎に予め算出された単語出現頻度と、当該テキスト文書に含まれる単語の総数と、に基づいて得られる重みの数値を示すインパクト値を用いた単語毎に構築されたインパクト値順の転置ファイルと、前記各テキスト文書に含まれる単語毎に構築された文書ID順の転置ファイルとを含む複数の転置ファイルを文書検索用のインデックスとして用いて、検索対象として前記テキスト文書を検索するテキスト検索装置のテキスト検索方法であって、前記テキスト検索装置が、検索条件入力手段と、単語抽出手段と、単語群分類手段と、候補文書探索手段と、候補文書出力手段とを備え、前記検索条件入力手段によって、複数の単語を含む検索式と文書件数とを指定された検索条件として入力する検索条件入力ステップと、前記単語抽出手段によって、前記入力された検索式に含まれる各単語を単語辞書に基づいて抽出する単語抽出ステップと、前記単語群分類手段によって、単語毎に検索対象とする全テキスト文書を通じて予め算出された文書出現頻度に基づいて、前記抽出された各単語を、前記文書出現頻度が所定のしきい値よりも低い単語群と、そうではない単語群とに分類する単語群分類ステップと、前記候補文書探索手段によって、前記文書出現頻度が所定のしきい値よりも低い単語群については前記インパクト値順の転置ファイルを利用して出力候補となる候補文書を探索し、その後、前記文書出現頻度が所定のしきい値以上の単語群については前記文書ID順の転置ファイルを利用して出力候補となる候補文書を探索する候補文書探索ステップと、前記候補文書出力手段によって、前記入力された検索条件を満たした時点で前記候補文書を確定して出力する候補文書出力ステップとを含んで実行することを特徴とする。
請求項1に記載のテキスト検索装置または請求項7に記載のテキスト検索方法によれば、テキスト検索装置は、検索式に含まれ全文書を通じて文書出現頻度の高くない単語群については、より性能の高いインパクト値順の転置ファイルを用いて侯補文書を探索し、その後、検索式に含まれる残りの単語については、文書ID順の転置ファイルを用いて候補文書を絞り込む。このように、テキスト検索装置は、検索式に含まれる単語の検索対象とする全文書を通じた文書出現頻度に応じて2種類の転置ファイルを適切に使い分ける。文書ID順の転置ファイルを従来のように単独で利用する場合には、従来のようにインパクト値順の転置ファイルを単独で用いる場合よりも一般に性能が良くはない。しかし、本発明のテキスト検索装置は、第1段階でインパクト値順の転置ファイルを用いて候補文書をある程度絞り込んでから、第2段階で文書ID順の転置ファイルを利用する。そのため、第2段階では、文書IDの降順に1つ1つ文書を単純に検索する必要はなく、第1段階で絞り込まれた文書の文書ID以外を適宜スキップすることができる。その結果、文書ID順の転置ファイルにおける全スキャンを避けることが可能となる。これにより、テキスト検索装置は、従来に比べて性能を向上させることができる。
また、請求項2に記載のテキスト検索装置は、請求項1に記載のテキスト検索装置において、前記候補文書探索手段が、前記文書出現頻度が前記所定のしきい値よりも低い単語群について前記インパクト値順の転置ファイルを読み込み、インパクト値の高い順に文書毎に前記検索式に依存する単語依存文書スコアを算出し、前記算出した単語依存文書スコアに基づいて前記候補文書を探索する第1探索手段と、前記探索された候補文書の件数が、前記指定された文書件数よりも大きくなったか否かを判別する件数判別手段と、前記探索された候補文書の件数が前記指定された文書件数よりも大きくなった場合に、前記文書出現頻度が前記所定のしきい値以上の単語群についての前記文書ID順の転置ファイルを読み込み、前記第1探索手段で探索された候補文書の文書IDに一致する候補文書を探索しつつ文書毎のスコアを算出する第2探索手段と、前記第1探索手段と前記第2探索手段とを交互に用いて前記候補文書を絞り込み、前記候補文書の順位として前記指定された文書件数以内の順位を決定する絞込み制御手段とを備えることを特徴とする。
かかる構成によれば、テキスト検索装置は、第1段階として、探索された候補文書が、指定された文書件数に達するまでは、インパクト値順の転置ファイルを利用して候補文書を探索する。そのため、文書件数を指定した利用者が要求する文書数の文書を高速に検索できる。そして、指定された文書件数を超えた後では、第2段階として、文書ID順の転置ファイルから探索される候補文書と、第1段階で探索された候補文書と突き合わせながら文書毎のスコアを算出する。したがって、例えば、この文書毎のスコアとして各文書が取りうる最大スコアを予め設けておくことで、指定された文書件数に達していた候補文書の中から所定数の文書を除去する足切り処理を行うことができる。そして、テキスト検索装置は、この足切りにより減少した候補文書数を起点に、前記した第1段階を再度実行し、探索された候補文書が、指定された文書件数に達するまでは、インパクト値順の転置ファイルを利用して候補文書を探索する。以下、同様である。これにより、スコアの高い候補文書として、検索対象とするテキスト文書群の中で偏ることなくより幅広い多くの文書の中から選択された適切な候補文書を出力することが可能となる。
また、請求項3に記載のテキスト検索装置は、請求項2に記載のテキスト検索装置において、前記第1探索手段が、前記文書出現頻度が前記所定のしきい値よりも低い単語群について前記インパクト値順の転置ファイルを読み込み、文書毎にインパクト値の高い順に前記検索式に依存する単語依存文書スコアを算出する第1処理手段と、前記各テキスト文書毎に算出された文書独自のスコア順に予め構築された文書独自スコア順の転置ファイルから、前記単語依存文書スコアを算出した文書に対応する前記文書独自のスコアを読み込み、前記読み込んだ文書独自のスコアと、前記算出した単語依存文書スコアとの線形和を用いて前記候補文書を探索する第2処理手段とを備えることを特徴とする。
かかる構成によれば、テキスト検索装置は、第1段階として、探索された候補文書が、指定された文書件数に達するまで候補文書を探索する際に、第1処理手段でインパクト値順の転置ファイルを利用して算出した単語依存文書スコアと、文書独自スコア順の転置ファイルから読み込んだ文書独自のスコアとの線形和を用いて候補文書を探索する。したがって、テキスト検索装置は、単語依存文書スコアと、文書独自のスコアとの線形和を用いる構成なので、従来とは異なって、単語には依存しない文書のスコア(文書独自のスコア)を、あたかも検索式に含まれる単語に依存するスコア(単語依存文書スコア)の一種であるかのように同様に扱うことができる。ここで、文書独自のスコアは、文書に含まれる単語には依存しないスコアであり、例えば、PageRank(登録商標)等である。つまり、文書独自のスコアを、例えばWeb文書(ドキュメント)のうちで、より多くのユーザに閲覧、利用されるWeb文書ほど、その値が高くなるように設定することで、本発明のテキスト検索装置は、検索対象とするテキスト文書を、例えばWeb文書(ドキュメント)とした場合に、より多くのユーザに閲覧、利用されるWeb文書の中から、指定された検索式に含まれる単語が含まれる文書を候補文書として出力することが可能となる。その結果、本発明のテキスト検索装置は、検索処理の性能を従来よりも向上させることができる。
また、請求項4に記載のテキスト検索装置は、請求項3に記載のテキスト検索装置において、前記テキスト文書毎に文書独自のスコアを算出する独自スコア算出手段と、前記算出した文書独自のスコアに基づいて、前記文書独自スコア順の転置ファイルを構築する文書独自スコア転置ファイル構築手段とをさらに備えることを特徴とする。
かかる構成によれば、テキスト検索装置は、検索処理を行う前に、検索対象とするテキスト文書毎に文書独自のスコアを算出し、文書独自スコア順の転置ファイルを構築し、構築した文書独自スコア順の転置ファイルを蓄積保持することができる。したがって、テキスト検索装置は、文書独自スコア順の転置ファイルを蓄積保持した記憶装置に格納された文書独自スコア順の転置ファイルを用いて、例えば蓄積装置に格納されたテキスト情報を検索対象として検索処理を実行することができる。
また、請求項5に記載のテキスト検索装置は、請求項1ないし請求項4のいずれか一項に記載のテキスト検索装置において、前記各テキスト文書に含まれる単語毎に構築された文書ID順の転置ファイルが、当該単語について前記検索対象とする全テキスト文書を通じて最大のインパクト値を保持したものであることを特徴とする。
かかる構成によれば、テキスト検索装置は、インパクト値順の転置ファイルを利用する検索処理においては、そのインパクト値に基づいて足切りを行うように、文書ID順の転置ファイルを利用する検索処理においては、文書ID順の転置ファイルが保持する最大のインパクト値に基づいて足切りを行うことができる。そのため、文書ID順の転置ファイルをインパクト値順の転置ファイルと併用して検索処理する際に、いずれの種類の転置ファイルを用いたときにでも足切りを行うことができる。これにより、検索対象とするテキスト文書群の中でより幅広い多くの文書の中から選択された適切な候補文書を出力することが可能となる。
また、請求項6に記載のテキスト検索装置は、請求項1ないし請求項5のいずれか一項に記載のテキスト検索装置において、前記インパクト値順の転置ファイルと、前記文書ID順の転置ファイルとを構築するインデックス構築手段をさらに備え、前記インデックス構築手段が、検索対象とするテキスト文書群を読み込む文書読込手段と、単語辞書に基づいて前記読み込んだ各テキスト文書から単語を抽出して当該テキスト文書に含まれる単語の特徴量として単語の総数および各単語の単語出現頻度を算出すると共に、単語毎に検索対象とする全テキスト文書を通じた文書出現頻度を算出する文書特徴量算出手段と、単語毎に前記文書出現頻度を前記検索対象とする全テキスト文書を通じて比較し、各単語の前記文書出現頻度が所定のしきい値よりも低いか否かを判別する出現頻度判別手段と、単語の前記文書出現頻度が前記所定のしきい値よりも低い場合に、当該単語について前記インパクト値順の転置ファイルを前記文書検索用のインデックスとして構築する第1転置ファイル構築手段と、単語の前記文書出現頻度が前記所定のしきい値以上である場合に、当該単語について前記検索対象とする全テキスト文書を通じて最大のインパクト値を算出し、前記算出した最大のインパクト値を含む文書ID順の転置ファイルを前記文書検索用のインデックスとして構築する第2転置ファイル構築手段とを備えることを特徴とする。
かかる構成によれば、テキスト検索装置は、検索処理を行う前に、検索対象とするテキスト文書群から、単語毎に全文書を通じた文書出現頻度を算出し、算出した文書出現頻度に基づき構築すべき適切な転置ファイルの種類として、インパクト値順の転置ファイルと文書ID順の転置ファイルのうちのいずれかを選択して選択した転置ファイルを構築する。したがって、テキスト検索装置は、算出した各単語の文書出現頻度と、それぞれ構築したインパクト値順の転置ファイルと文書ID順の転置ファイルとを蓄積保持することができる。そのため、テキスト検索装置は、文書出現頻度とインパクト値順の転置ファイルと文書ID順の転置ファイルとを蓄積保持した記憶装置に格納された文書出現頻度および各転置ファイルを用いて、例えば蓄積装置に格納されたテキスト情報を検索対象として検索処理を実行することができる。
また、請求項8に記載のテキスト検索プログラムは、請求項1ないし請求項6のいずれか一項に記載のテキスト検索装置の機能をコンピュータで実現するためのプログラムであることを特徴とする。このように構成されることにより、このプログラムをインストールされたコンピュータは、このプログラムに基づいた各機能を実現することができる。
また、請求項9に記載のコンピュータ読み取り可能な記録媒体は、請求項8に記載のテキスト検索プログラムが記録されたことを特徴とする。このように構成されることにより、この記録媒体を装着されたコンピュータは、この記録媒体に記録されたプログラムに基づいた各機能を実現することができる。
本発明によれば、テキスト検索装置は、検索式に含まれる単語の検索対象とする全テキスト文書を通じた文書出現頻度が低い場合には、インパクト値順の転置ファイルを用いて文書の探索を行い、一方、全テキスト文書を通じた文書出現頻度が高い場合には、スキップが可能な文書ID順の転置ファイルを用いるので、検索処理を高速化する効果がある。そのため、インパクト値順の転置ファイルを利用する際に検索処理の処理性能を向上させることができる。
以下、図面を参照して本発明のテキスト検索装置およびテキスト検索方法を実施するための最良の形態(以下「実施形態」という)について第1実施形態と第2実施形態とに分けて詳細に説明する。
(第1実施形態)
[テキスト検索装置の構成]
図1は、本発明の第1実施形態に係るテキスト検索装置を模式的に示す構成図である。
テキスト検索装置1は、文書IDを有する各テキスト文書においてインパクト値を用いた単語毎に構築されたインパクト値順の転置ファイルと、各テキスト文書に含まれる単語毎に構築された文書ID順の転置ファイルとを含む複数の転置ファイルを文書検索用のインデックスとして用いて、検索対象としてテキスト文書を検索するものである。ここで、インパクト値は、各テキスト文書において各単語毎に予め算出された単語出現頻度(tf値)と、当該テキスト文書に含まれる単語の総数と、に基づいて得られる重みの数値を示す。
テキスト検索装置1は、例えば、CPU(Central Processing Unit)と、RAM(Random Access Memory)と、ROM(Read Only Memory)と、HDD(Hard Disk Drive)と、入出力インタフェース等から構成される。このテキスト検索装置1は、テキスト検索エンジンとして、図1に示すように、インデックス構築装置10と、検索処理装置20と、インデックス記憶装置30と、文書記憶装置40と、単語辞書記憶装置50とを備えている。
テキスト検索装置1は、利用者の使用するパーソナルコンピュータ等の端末装置60にケーブルで接続されたマウスやキーボード等の入力装置M(図6参照)から入力される検索条件(検索式、文書件数)を入力する。なお、テキスト検索装置1は、例えば、インターネット等の通信ネットワークを介して受信した利用者の検索条件を入力することも可能である。
インデックス構築装置(インデックス構築手段)10は、文書記憶装置40に蓄えられた検索対象となるテキスト文書を読み込み、単語辞書記憶装置50に蓄積された単語辞書を用いて、テキスト文書の形態素解析を行って単語を抽出し、転置ファイルを構築して、構築した転置ファイルをインデックス記憶装置30に書き出す。本実施形態では、転置ファイルをインデックスで示す。なお、インデックスは、データの検索速度を向上させるために、どの単語がどの文書にあるかを示した索引を示す。
検索処理装置20は、利用者により指定される文書件数(返却する結果件数)と検索式(複数の単語)とを端末装置60から入力し、検索式を解析して単語群を抽出し、インデックス記憶装置30から、抽出された単語に対応する転置ファイルを読み込み、検索条件を満たす候補文書を探索して、検索結果(候補文書)を端末装置60に出力する。
インデックス記憶装置30は、転置ファイル(インデックス)を蓄積するものであり、例えば、一般的なハードディスク等から構成される。
文書記憶装置40は、検索対象となる複数の検索対象文書(テキスト文書、テキスト情報)を蓄積するものであり、例えば、一般的なハードディスク等から構成される。検索対象文書には、文書ID(識別情報)が付与されている。
単語辞書記憶装置50は、単語辞書を蓄積するものであり、例えば、一般的なハードディスク等から構成される。なお、インデックス記憶装置30、文書記憶装置40、単語辞書記憶装置50は、1以上の外部記憶装置で構成することもできる。
[テキスト検索装置の検索処理の概要]
図2は、本発明の第1実施形態に係るテキスト検索装置の概要を模式的に示す説明図である。なお、図2では、テキスト検索装置1の検索処理の概要を説明するために、図1に示したインデックス構築装置10および文書記憶装置40を省略して表示している。
検索処理装置20は、端末装置60から入力された検索条件101に含まれる単語群102を、単語辞書記憶装置50に記憶された単語辞書を参照して抽出し、インデックス記憶装置30に蓄積されたインパクト値順の転置ファイル71,72,74と、文書ID順の転置ファイル73とを利用して、出力すべき候補文書を検索し、検索結果を端末装置60に出力する。このテキスト検索装置1は、図3に示した従来のテキスト検索装置300と比較すると文書ID順の転置ファイル73を、インパクト値順の転置ファイル71,72,74と併用して検索処理をする点が異なっている。
図2に示した例では、テキスト検索装置1の検索処理装置20は、検索条件101である「東京の駅」というフレーズを分割し、単語群102として、「東京」、「の」、「駅」を抽出する。そして、検索処理装置20は、各単語の文書出現頻度(df値)に対応して、第1段階として、「東京」と「駅」についてはインパクト値順の転置ファイル71,74について、符号103,104の矢印で示すように、インパクト値の高い順(降順)に文書毎に所定のスコアを算出する。これにより、共通の文書として2つの転置ファイル71,74から、符号105,106でそれぞれ示した文書IDが「16」である文書(d16)等が探索される。
そして、検索処理装置20は、第2段階として、「の」については文書ID順の転置ファイル73について、文書IDが「1」である文書(d1)から1つずつスキャンするのではなく、符号107の矢印で示すように、適宜スキップして、符号108の矢印で示すように、文書IDの小さい順(昇順)に、インパクト値順の転置ファイル71,74で探索された文書IDに到達するまでスキャンし、符号109で示した文書IDが「16」である文書(d16)を探索し、見つけたときに文書毎に所定のスコアを算出する。以降、第1段階と第2段階とを繰り返して指定された文書件数の候補文書を出力する。なお、転置ファイル(インデックス)の個数は、図示した個数(4個)に限定されない。
次に、図2に示したテキスト検索装置1の検索処理装置20による検索処理を実現するための、テキスト検索装置1の詳細な構成および動作を説明する。以下では、説明の都合上、インデックス構築装置10(図1参照)と、検索処理装置20について、それぞれの構成および動作を詳細に説明することとする。
[インデックス構築装置の構成]
図4は、図1に示すインデックス構築装置の一例を模式的に示すブロック図である。
インデックス構築装置10は、インパクト値順の転置ファイルと、文書ID順の転置ファイルとを構築するものであり、文書読込手段11と、文書特徴量算出手段12と、出現頻度判別手段13と、第1転置ファイル構築手段14と、第2転置ファイル構築手段15とを備えている。
文書読込手段11は、文書記憶装置40から、検索対象とするテキスト文書群を読み込むものである。
文書特徴量算出手段12は、単語辞書記憶装置50に蓄積された単語辞書に基づいて、文書読込手段11で読み込んだ各テキスト文書から単語を抽出して当該テキスト文書に含まれる単語の特徴量として単語の総数および各単語の単語出現頻度(tf値:Term Frequency)を算出すると共に、単語毎に検索対象とする全テキスト文書を通じた文書出現頻度(df値:Document Frequency)を算出するものである。なお、df値は、その単語を含む文書数のことを指す。算出されたdf値(文書出現頻度)は、例えば単語辞書記憶装置50の所定領域に格納される。
出現頻度判別手段13は、各単語の文書出現頻度を単語毎にテキスト文書群全体を通じて比較し、単語毎に文書出現頻度が所定のしきい値よりも低いか否かを判別するものである。本実施形態では、出現頻度判別手段13は、未処理の単語を選択し、選択した単語のdf値が所定のしきい値以上であるか否かを判別する。
第1転置ファイル構築手段14は、単語の文書出現頻度が所定のしきい値よりも低い場合に、当該単語についてインパクト値順の転置ファイルを文書検索用のインデックスとして構築するものである。第1転置ファイル構築手段14は、公知の方法でインパクト値順の転置ファイルを構築することができる。なお、インパクト値順の転置ファイルの構築の詳細については、例えば、非特許文献1〜4で述べられている。この第1転置ファイル構築手段14は、構築したインパクト値順の転置ファイル31をインデックス記憶装置30に格納する。インパクト値順の転置ファイル31は、インパクト値の降順で文書(文書ID)を列挙した転置ファイルである。なお、図4では、インパクト値順の転置ファイル31を1つだけ例示したが、各単語別にそれぞれ設けられている。
第2転置ファイル構築手段15は、単語の文書出現頻度が所定のしきい値以上である場合に、当該単語についてテキスト文書群全体を通じて最大のインパクト値を算出し、算出した最大のインパクト値を含む文書ID順の転置ファイルを文書検索用のインデックスとして構築するものである。第2転置ファイル構築手段15は、公知の方法で文書ID順の転置ファイルを構築することができる。なお、文書ID順の転置ファイルの構築の詳細については、例えば、非特許文献1で述べられている。この第2転置ファイル構築手段15は、構築した文書ID順の転置ファイル32をインデックス記憶装置30に格納する。文書ID順の転置ファイル32は、文書IDの昇順で文書(文書ID)を列挙した転置ファイルである。なお、図4では、文書ID順の転置ファイル32を1つだけ例示したが、各単語別にそれぞれ設けられている。
なお、これら文書読込手段11、文書特徴量算出手段12、出現頻度判別手段13、第1転置ファイル構築手段14および第2転置ファイル構築手段15は、CPUが記憶手段に格納された所定のプログラムをRAMに展開して実行することにより実現されるものである。
[インデックス構築装置の動作]
図4に示したインデックス構築装置10の動作について図5を参照(適宜図4参照)して説明する。図5は、図4に示すインデックス構築装置の動作を示すフローチャートである。インデックス構築装置10は、文書読込手段11によって、検索対象とするテキスト文書群を読み込み(ステップS1)、文書特徴量算出手段12によって、各テキスト文書から単語を抽出して各文書に含まれる単語の総数、tf値およびdf値を算出する(ステップS2)。
そして、インデックス構築装置10は、出現頻度判別手段13によって、転置ファイルを構築していない未処理の単語を選択する(ステップS3)。そして、インデックス構築装置10は、出現頻度判別手段13によって、選択した単語のdf値が所定のしきい値以上であるか否かを判別する(ステップS4)。選択した単語のdf値が所定のしきい値以上である場合(ステップS4:Yes)、インデックス構築装置10は、第2転置ファイル構築手段15によって、当該単語について最大のインパクト値を算出し、最大のインパクト値を含む文書ID順の転置ファイルを構築する(ステップS5)。
一方、ステップS4において、選択した単語のdf値が所定のしきい値よりも低い場合(ステップS4:No)、インデックス構築装置10は、第1転置ファイル構築手段14によって、当該単語についてインパクト値順の転置ファイルを構築する(ステップS6)。ステップS5またはステップS6に続いて、インデックス構築装置10は、出現頻度判別手段13によって、全単語を処理したか否かを判別する(ステップS7)。未処理の単語がある場合(ステップS7:No)、インデックス構築装置10は、ステップS3に戻る。一方、対象とする全単語を処理した場合(ステップS7:Yes)、インデックス構築装置10は、転置ファイル(インデックス)を構築する処理を終了する。
具体的には、図2では、インデックスの構築時に「東京」、「トマト」、「駅」に対しては、インパクト値順の転置ファイル71,72,74が構築され、「の」に対しては文書ID順の転置ファイル73が構築されている。ただし、図2では、文書ID順の転置ファイル73において最大のインパクト値の図示を省略している。ここで、最大のインパクト値を含む文書ID順の転置ファイルの構造の一例を図14に示す。図14に示したテキスト検索装置1Bは、インデックス記憶装置30に、文書ID順の転置ファイル76を蓄積している点が異なる。文書ID順の転置ファイル76は、左端に最大のインパクト値(s12.0)を含んでいる点を除いて、図2に示した文書ID順の転置ファイル73と同様である。ここで、最大のインパクト値(s12.0)を含む列は、左端に限定されるものではない。
[検索処理装置の構成]
図6は、図1に示す検索処理装置の一例を模式的に示すブロック図である。検索処理装置20は、図6に示すように、検索条件入力手段21と、単語抽出手段22と、単語群分類手段23と、候補文書探索手段24と、候補文書出力手段25とを備えている。
検索条件入力手段21は、複数の単語を含む検索式と文書件数とを指定された検索条件として入力するものである。本実施形態では、検索条件入力手段21は、テキスト検索装置1にケーブルで接続された端末装置60から検索条件を入力する。なお、例えば、インターネット等の通信ネットワークを介して端末装置60から検索条件を受信するようにしてもよい。端末装置60の利用者は、例えば、マウスやキーボード等の入力装置Mを操作して、検索式および文書件数を検索条件として端末装置60に入力する。
単語抽出手段22は、入力された検索式に含まれる各単語を、単語辞書記憶装置50に蓄積された単語辞書に基づいて抽出するものである。
単語群分類手段23は、予め算出された文書出現頻度に基づいて、単語抽出手段22で抽出された各単語を、文書出現頻度が所定のしきい値よりも低い単語群と、そうではない単語群とに分類するものである。本実施形態では、インデックス構築の際に得られて例えば単語辞書記憶装置50の所定領域に格納されているdf値(文書出現頻度)に基づいて、単語群分類手段23は、抽出した単語群をdf値(文書出現頻度)の高い単語群と低い単語群とに分類する。
候補文書探索手段24は、文書出現頻度が所定のしきい値よりも低い単語群についてはインパクト値順の転置ファイルを利用して出力候補となる候補文書を探索し、その後、文書出現頻度が所定のしきい値以上の単語群については文書ID順の転置ファイルを利用して出力候補となる候補文書を探索するものである。本実施形態では、候補文書探索手段24は、候補文書探索処理を実行するモジュールであり、サブモジュールとして、図6に示すように、第1探索手段241と、件数判別手段242と、第2探索手段243と、絞込制御手段244とを備えている。
第1探索手段241は、文書出現頻度が所定のしきい値よりも低い単語群(df値の低い単語群)についてインパクト値順の転置ファイル31を読み込み、インパクト値の高い順に文書毎に検索式に依存する単語依存文書スコアを算出し、算出した単語依存文書スコアに基づいて候補文書を探索するものである。ここで、単語依存文書スコアには、例えば、tf−idfや、BM25等の検索式に基づく所定のランキング関数を用いることができる。また、この第1探索手段241が候補文書を探索する際に各文書が取りうるスコアのk−ベスト(スコアが上位k個の文書)を計算することで検索処理の足切りを行うことができる。なお、検索処理の足切りの方法の詳細については、例えば、非特許文献4で述べられている。
件数判別手段242は、第1探索手段241で探索された候補文書の件数が、検索条件で指定された文書件数よりも大きくなったか否かを判別するものである。本実施形態では、件数判別手段242は、第1探索手段241で探索された候補文書の件数が、検索条件で指定された文書件数よりも大きくなった場合に、その旨を第2探索手段243に出力する。
第2探索手段243は、第1探索手段241で探索された候補文書の件数が指定された文書件数よりも大きくなった場合に、文書出現頻度が所定のしきい値以上の単語群(df値の高い単語群)についての文書ID順の転置ファイル32を読み込み、第1探索手段241で探索された候補文書の文書IDに一致する候補文書を探索しつつ文書毎のスコアを算出するものである。第2探索手段243は、候補文書を探索する際に、文書ID順の転置ファイル32を適宜スキップしつつスキャンする。文書ID順の転置ファイル32を適宜スキップしつつスキャンする方法の詳細は、例えば非特許文献1に記載されている。また、第2探索手段243は、候補文書の探索を行う際には、文書ID順の転置ファイル32に保持した最大のインパクト値を用いて足切りを行う。
絞込制御手段244は、第1探索手段241と第2探索手段243とを交互に用いて候補文書を絞り込み、候補文書の順位として指定された文書件数以内の順位を決定するものである。本実施形態では、絞込制御手段244は、検索条件で指定された文書件数の順位が決定したか否かを判別する。絞込制御手段244が検索式の条件を満たしている候補文書を特定し、利用者が指定した結果件数を用いて、最終段階の足切り処理を行う方法は、例えば、非特許文献4で述べられている方法を用いることができる。なお、非特許文献4で述べられている方法では、3段階の足切り処理を行っている。
候補文書出力手段25は、入力された検索条件を満たした時点で候補文書を確定して出力するものである。本実施形態では、候補文書出力手段25は、テキスト検索装置1にケーブルで接続された端末装置60に候補文書の一覧を出力する。なお、例えば、インターネット等の通信ネットワークを介して端末装置60に候補文書の一覧を送信するようにしてもよい。端末装置60は、取得した候補文書の一覧を、液晶ディスプレイ等の出力装置Dに出力表示し、利用者に提示する。
なお、これら検索条件入力手段21、単語抽出手段22、単語群分類手段23、候補文書探索手段24および候補文書出力手段25は、CPUが記憶手段に格納された所定のプログラムをRAMに展開して実行することにより実現されるものである。
[検索処理装置の動作]
図6に示した検索処理装置20の動作について図7を参照(適宜図6参照)して説明する。図7は、図6に示す検索処理装置の動作を示すフローチャートである。まず、検索処理装置20は、検索条件入力手段21によって、検索式と文書件数とを指定された検索条件として入力する(ステップS11:検索条件入力ステップ)。そして、検索処理装置20は、単語抽出手段22によって、検索式を解析して含まれる単語群を抽出する(ステップS12:単語抽出ステップ)。そして、検索処理装置20は、単語群分類手段23によって、抽出した単語群を、df値(出現頻度)の高い単語群と、低い単語群とに分類する(ステップS13:単語群分類ステップ)。そして、検索処理装置20は、候補文書探索手段24によって、候補文書探索処理を実行する(ステップS14:候補文書探索ステップ)。そして、検索処理装置20は、候補文書出力手段25によって、入力された検索条件を満たした時点で候補文書を確定して検索結果として出力する(ステップS15:候補文書出力ステップ)。
<候補文書探索処理>
次に、前記したステップS14の候補文書探索処理について図8を参照(適宜図6参照)して説明する。図8は、図7に示す候補文書探索処理の詳細を示すフローチャートである。まず、候補文書探索手段24は、第1探索手段241によって、df値の低い単語群についてインパクト値順の転置ファイル31を読み込み、単語依存文書スコアを算出し、算出したスコアに基づいて候補文書を探索する(ステップS21)。そして、候補文書探索手段24は、件数判別手段242によって、候補文書の件数が、指定された文書件数を超えたか否かを判別する(ステップS23)。候補文書の件数が、指定された文書件数を超えた場合(ステップS23:Yes)、候補文書探索手段24は、第2探索手段243によって、df値の高い単語群について文書ID順の転置ファイル32を読み込み(ステップS25)、ステップS21で探索された候補文書の文書IDに一致する候補文書を探索する(ステップS27)。ステップS27において、第2探索手段243は、候補文書を探索する際に、文書ID順の転置ファイルを適宜スキップしつつスキャンすると共に、文書IDを突合せつつ候補文書毎に文書毎のスコアを計算する。
続いて、候補文書探索手段24は、絞込制御手段244によって、検索条件で指定された文書件数の順位が決定したか否かを判別する(ステップS29)。指定された文書件数の順位が決定した場合(ステップS29:Yes)、候補文書探索手段24は、処理を終了する。一方、指定された文書件数の順位が決定していない場合(ステップS29:No)、候補文書探索手段24は、ステップS21に戻り処理を繰り返す。
また、前記したステップS23において、候補文書の件数が、検索条件で指定された文書件数を超えていない場合(ステップS23:No)、候補文書探索手段24は、ステップS21に戻り、インパクト値順の転置ファイルをさらに読み進めて他の候補文書を探索する。これにより、スコアの高い候補文書として、検索対象とする文書群の中で偏ることなくより幅広い多くの文書の中から選択された適切な候補文書を出力することが可能となる。
なお、テキスト検索装置1は、一般的なコンピュータを、検索処理装置20として機能させるテキスト検索プログラムを実行することで実現することもできる。また、テキスト検索装置1は、一般的なコンピュータを、前記したインデックス構築装置10および検索処理装置20として機能させるテキスト検索プログラムを実行することで実現することもできる。これらのプログラムは、通信回線を介して配布することも可能であるし、CD−ROM等のコンピュータに読み取り可能な記録媒体に書き込んで配布することも可能である。
本実施形態によれば、テキスト検索装置1は、検索式に含まれる単語のdf値が低い場合には、インパクト値順の転置ファイル31を用いて文書の探索を行い、一方、df値が高い単語については、スキップが可能な文書ID順の転置ファイル32を用いるので、検索処理を高速化することができる。そのため、インパクト値順の転置ファイル31を利用するテキスト検索装置において、検索処理の処理性能を向上させることができる。その結果、リソース(ディスク、メモリ、CPU)の消費を抑えることが可能である。
(第2実施形態)
[テキスト検索装置の検索処理の概要]
図9は、本発明の第2実施形態に係るテキスト検索装置の概要を模式的に示す説明図である。テキスト検索装置1Aは、インデックス構築装置10Aと、検索処理装置20Aと、インデックス記憶装置30と、文書記憶装置40(図1参照)と、単語辞書記憶装置50とを備えている。なお、図9では、テキスト検索装置1Aの検索処理の概要を説明するために、文書記憶装置40を省略して表示している。また、図2と同様の構成については、同じ符号を付して説明を省略する。
インデックス構築装置10Aは、インパクト値順の転置ファイルおよび文書ID順の転置ファイルに加えて、文書独自スコアを降順とした文書の順で、文書独自スコア順の転置ファイル75を構築するものである。文書独自スコア順の転置ファイルは、検索式に含まれる単語に依存しない文書毎のスコアを格納する転置ファイルである。ここで、単語に依存しない文書毎のスコアとしては、検索サーバのログから得られる各Webページに対するクリック回数のデータを用いて算出された文書(Webページ)毎のスコアや、PageRank(登録商標)等を示す。なお、PageRank(登録商標)については、例えば、(Lawrence Page, Sergey Brin, Rajeev Motwani, Terry Winograd, “The PageRank Citation Ranking: Bringing Order to the Web”, Jan. 29, 1998、<URL:http://WWW-db.stanford.edu/~backru/pageranksub.ps>)に記載されている。
検索処理装置20Aは、インデックス記憶装置30に蓄積されたインパクト値順の転置ファイル71,72,74と、文書ID順の転置ファイル73と、文書独自スコア順の転置ファイル75とを利用して、出力すべき候補文書を検索し、検索結果(候補文書)を端末装置60に出力する。この検索処理装置20Aは、第1実施形態の検索処理装置20と比較して第1段階の探索方法が異なっている。
具体的には、テキスト検索装置1Aの検索処理装置20Aは、図9に示した例では、第1段階として、「東京」と「駅」については、インパクト値順の転置ファイル71,74を利用して文書毎に所定のスコアを算出し、次いで、文書独自スコア順の転置ファイル75から読み込まれる文書独自スコアと、算出したスコアとの合計を求め、合計したスコアに基づいて候補文書を探索する。これにより、共通の文書として3つの転置ファイル71,74,75から、符号105,106,111でそれぞれ示した文書IDが「16」である文書(d16)等が探索される。
次に、図9に示したテキスト検索装置1Aの検索処理装置20Aによる検索処理を実現するための、テキスト検索装置1Aの詳細な構成および動作を説明する。以下では、説明の都合上、インデックス構築装置10Aと、検索処理装置20Aについて、それぞれの構成および動作の詳細な説明をすることとする。
[インデックス構築装置の構成]
図10は、図9に示すインデックス構築装置の一例を模式的に示すブロック図である。図10に示すインデックス構築装置10Aは、独自スコア算出手段16と、文書独自スコア転置ファイル構築手段17とを備えている点を除いて、図4に示したインデックス構築装置10と同じ構成なので、同じ構成には同じ符号を付して説明を省略する。
独自スコア算出手段16は、検索対象とするテキスト文書群を読み込み、テキスト文書毎に文書独自のスコアを算出するものである。
文書独自スコア転置ファイル構築手段17は、独自スコア算出手段16で算出した文書独自のスコアに基づいて、文書独自スコア順の転置ファイル33を構築するものである。文書独自スコア転置ファイル構築手段17は、構築した文書独自スコア順の転置ファイル33をインデックス記憶装置30に格納する。
[インデックス構築装置の動作]
図10に示したインデックス構築装置10Aがインパクト値順の転置ファイル31および文書ID順の転置ファイル32を構築する動作は、第1実施形態のインデックス構築装置10と同じなので説明を省略し、異なる点について図11を参照(適宜図10参照)して説明する。図11は、図10に示すインデックス構築装置による文書独自スコア転置ファイルを構築する動作を示すフローチャートである。インデックス構築装置10Aは、独自スコア算出手段16によって、検索対象とするテキスト文書群を読み込み(ステップS31)、独自スコア算出手段16によって、テキスト文書毎に文書独自のスコアを算出する(ステップS32)。そして、インデックス構築装置10Aは、文書独自スコア転置ファイル構築手段17によって、文書独自スコア順の転置ファイル33を構築する(ステップS33)。なお、インデックス構築装置10Aが、文書独自スコア順の転置ファイル33を構築するタイミングは、インパクト値順の転置ファイル31および文書ID順の転置ファイル32を構築する前後いずれのタイミングでもよいし、これらのファイルと並行して構築してもよい。
[検索処理装置の構成]
図12は、図9に示す検索処理装置の一例を模式的に示すブロック図である。検索処理装置20Aは、第1探索手段241Aの構成が異なる点を除いて図6に示した検索処理装置20と同じ構成なので、同じ構成には同じ符号を付して説明を省略する。
第1探索手段241Aは、図12に示すように、第1処理手段251と、第2処理手段252とを備える。
第1処理手段251は、文書出現頻度が所定のしきい値よりも低い単語群(df値が低い単語群)についてインパクト値順の転置ファイル31を読み込み、文書毎にインパクト値の高い順に、検索式に依存する単語依存文書スコアを算出するものである。
第2処理手段252は、予め構築された文書独自スコア順の転置ファイル33から、第1処理手段251で単語依存文書スコアを算出した文書に対応する文書独自のスコアを読み込み、読み込んだ文書独自のスコアと、第1処理手段251で算出した単語依存文書スコアとの線形和を用いて候補文書を探索するものである。例えば、ある文書について、文書独自のスコアが「5」であり、かつ、単語依存文書スコアが「10」であれば、第2処理手段252は、その文書の合計スコアを「15」として、候補文書を探索する。なお、線形和とは、単純な加算のみに限定されるものではなく、重み付けをしてから加算することも含む。
[検索処理装置の動作]
図12に示した検索処理装置20Aは、全体の動作の中で候補文書探索処理(ステップS14、図7参照)のみが異なる点を除いて、第1実施形態の検索処理装置20と同じように動作するので、全体の動作の説明を省略し、候補文書探索処理について図13を参照(適宜図12参照)して説明する。図13は、図12に示す検索処理装置による候補文書探索処理の詳細を示すフローチャートである。
候補文書探索手段24は、第1探索手段241Aの第1処理手段251によって、df値の低い単語群についてインパクト値順の転置ファイル31を読み込み、単語依存文書スコアを算出する(ステップS21a)。そして、候補文書探索手段24は、第1探索手段241Aの第2処理手段252によって、文書独自スコア順の転置ファイルを読み込み、読み込んだスコアと、ステップS21aで算出したスコア(単語依存文書スコア)との線形和に基づいて候補文書を探索する(ステップS21b)。以下の動作は、図8を参照して説明した候補文書探索処理と同様である。ただし、ステップS27bでは、候補文書探索手段24は、第2探索手段243によって、ステップS21bで探索された候補文書の文書IDに一致する候補文書を探索する。
本実施形態によれば、テキスト検索装置1Aは、インパクト値順の転置ファイル31を利用して算出した単語依存文書スコアと、文書独自スコア順の転置ファイル33から読み込んだ文書独自のスコアとの線形和を用いて候補文書を探索することができる。したがって、テキスト検索装置1Aは、単語には依存しない文書のスコア(文書独自のスコア)を、あたかも検索式に含まれる単語に依存するスコア(単語依存文書スコア)の一種であるかのように同様に扱うことができる。その結果、テキスト検索装置1Aは、検索対象とする文書を、例えばWeb文書(ドキュメント)とした場合に、より多くのユーザに閲覧、利用されるWeb文書の中から、指定された検索式に含まれる単語が含まれる文書を候補文書として出力することが可能となる。
以上、本発明の各実施形態について説明したが、本発明はこれらに限定されるものではなく、その趣旨を変えない範囲で実施することができる。例えば、各実施形態では、テキスト検索装置1(1A)は、インデックス構築装置10(10A)を備えるベストモードとして説明したが、インデックス構築装置10(10A)は必須ではなく、予め構築された転置ファイルと予め算出されたdf値とを蓄積格納していればよい。同様に、テキスト検索装置1(1A)は、文書記憶装置40を必ずしも備えていなくてもよい。また、検索対象となるテキスト文書(検索対象文書)は、1つの文書記憶装置40に蓄積されている必要はなく、ネットワーク上の複数の記憶装置に分散配置されていてもよい。
また、各実施形態では、検索条件として、3個の単語を例示したが、検索条件で入力される単語数は複数であればよい。また、単語のフレーズだけではなく文章を検索式とすることもできる。また、検索式に含まれる単語は、名詞や助詞に限らず、形容詞等の他の品詞でもよい。また、検索式に含まれる単語の言語は日本語に限定されず、英語、仏語、中国語等の他の言語でもよい。
また、第2実施形態では、インデックス構築装置10Aが文書独自スコア順の転置ファイル33を1つだけ作成するものとしたが、複数作成するようにしてもよい。例えば、検索サーバのログから得られる各Webページに対するクリック回数のデータを用いて算出された文書(Webページ)毎のスコアによる転置ファイルと、PageRank(登録商標)のスコアによる転置ファイルとをそれぞれ作成することができる。この場合、第2処理手段252は、2つの文書独自スコア順の転置ファイルから、第1処理手段251で単語依存文書スコアを算出した文書に対応する文書独自のスコアをそれぞれ読み込み、読み込んだそれぞれの文書独自のスコアと、第1処理手段251で算出した単語依存文書スコアとの線形和を用いて候補文書を探索する。このときに、2種類の文書独自スコアに別々の重み付けをしてから単語依存文書スコアに加算することも可能である。この場合にも、より多くのユーザに閲覧、利用されるWeb文書等の中から、指定された検索式に含まれる単語が含まれる文書を候補文書として出力することが可能となる。
本発明の第1実施形態に係るテキスト検索装置を模式的に示す構成図である。 本発明の第1実施形態に係るテキスト検索装置の概要を模式的に示す説明図である。 従来のテキスト検索装置の概要を模式的に示す説明図である。 図1に示すインデックス構築装置の一例を模式的に示すブロック図である。 図4に示すインデックス構築装置の動作を示すフローチャートである。 図1に示す検索処理装置の一例を模式的に示すブロック図である。 図6に示す検索処理装置の動作を示すフローチャートである。 図7に示す候補文書探索処理の詳細を示すフローチャートである。 本発明の第2実施形態に係るテキスト検索装置の概要を模式的に示す説明図である。 図9に示すインデックス構築装置の一例を模式的に示すブロック図である。 図10に示すインデックス構築装置による文書独自スコア転置ファイルを構築する動作を示すフローチャートである。 図9に示す検索処理装置の一例を模式的に示すブロック図である。 図12に示す検索処理装置による候補文書探索処理の詳細を示すフローチャートである。 文書ID順の転置ファイルの一例を示す説明図である。
符号の説明
1(1A,1B) テキスト検索装置
10(10A) インデックス構築装置(インデックス構築手段)
11 文書読込手段
12 文書特徴量算出手段
13 出現頻度判別手段
14 第1転置ファイル構築手段
15 第2転置ファイル構築手段
16 独自スコア算出手段
17 文書独自スコア転置ファイル構築手段
20(20A) 検索処理装置
21 検索条件入力手段
22 単語抽出手段
23 単語群分類手段
24 候補文書探索手段
241(241A) 第1探索手段
242 件数判別手段
243 第2探索手段
244 絞込制御手段
25 候補文書出力手段
251 第1処理手段
252 第2処理手段
30 インデックス記憶装置
40 文書記憶装置
50 単語辞書記憶装置
60 端末装置
M 入力装置
D 出力装置

Claims (9)

  1. 文書IDを有する各テキスト文書において単語毎に予め算出された単語出現頻度と、当該テキスト文書に含まれる単語の総数と、に基づいて得られる重みの数値を示すインパクト値を用いた単語毎に構築されたインパクト値順の転置ファイルと、前記各テキスト文書に含まれる単語毎に構築された文書ID順の転置ファイルとを含む複数の転置ファイルを文書検索用のインデックスとして用いて、前記テキスト文書を検索するテキスト検索装置であって、
    複数の単語を含む検索式と文書件数とを指定された検索条件として入力する検索条件入力手段と、
    前記入力された検索式に含まれる各単語を単語辞書に基づいて抽出する単語抽出手段と、
    単語毎に検索対象とする全テキスト文書を通じて予め算出された文書出現頻度に基づいて、前記抽出された各単語を、前記文書出現頻度が所定のしきい値よりも低い単語群と、そうではない単語群とに分類する単語群分類手段と、
    前記文書出現頻度が所定のしきい値よりも低い単語群については前記インパクト値順の転置ファイルを利用して出力候補となる候補文書を探索し、その後、前記文書出現頻度が前記所定のしきい値以上の単語群については前記文書ID順の転置ファイルを利用して出力候補となる候補文書を探索する候補文書探索手段と、
    前記入力された検索条件を満たした時点で前記候補文書を確定して出力する候補文書出力手段とを備えることを特徴とするテキスト検索装置。
  2. 前記候補文書探索手段は、
    前記文書出現頻度が前記所定のしきい値よりも低い単語群について前記インパクト値順の転置ファイルを読み込み、インパクト値の高い順に文書毎に前記検索式に依存する単語依存文書スコアを算出し、前記算出した単語依存文書スコアに基づいて前記候補文書を探索する第1探索手段と、
    前記探索された候補文書の件数が、前記指定された文書件数よりも大きくなったか否かを判別する件数判別手段と、
    前記探索された候補文書の件数が前記指定された文書件数よりも大きくなった場合に、前記文書出現頻度が前記所定のしきい値以上の単語群についての前記文書ID順の転置ファイルを読み込み、前記第1探索手段で探索された候補文書の文書IDに一致する候補文書を探索しつつ文書毎のスコアを算出する第2探索手段と、
    前記第1探索手段と前記第2探索手段とを交互に用いて前記候補文書を絞り込み、前記候補文書の順位として前記指定された文書件数以内の順位を決定する絞込み制御手段とを備えることを特徴とする請求項1に記載のテキスト検索装置。
  3. 前記第1探索手段は、
    前記文書出現頻度が前記所定のしきい値よりも低い単語群について前記インパクト値順の転置ファイルを読み込み、文書毎にインパクト値の高い順に前記検索式に依存する単語依存文書スコアを算出する第1処理手段と、
    前記各テキスト文書毎に算出された文書独自のスコア順に予め構築された文書独自スコア順の転置ファイルから、前記単語依存文書スコアを算出した文書に対応する前記文書独自のスコアを読み込み、前記読み込んだ文書独自のスコアと、前記算出した単語依存文書スコアとの線形和を用いて前記候補文書を探索する第2処理手段とを備えることを特徴とする請求項2に記載のテキスト検索装置。
  4. 前記テキスト文書毎に文書独自のスコアを算出する独自スコア算出手段と、
    前記算出した文書独自のスコアに基づいて、前記文書独自スコア順の転置ファイルを構築する文書独自スコア転置ファイル構築手段とをさらに備えることを特徴とする請求項3に記載のテキスト検索装置。
  5. 前記各テキスト文書に含まれる単語毎に構築された文書ID順の転置ファイルは、当該単語について前記検索対象とする全テキスト文書を通じて最大のインパクト値を保持したものであることを特徴とする請求項1ないし請求項4のいずれか一項に記載のテキスト検索装置。
  6. 前記インパクト値順の転置ファイルと、前記文書ID順の転置ファイルとを構築するインデックス構築手段をさらに備え、
    前記インデックス構築手段は、
    検索対象とするテキスト文書群を読み込む文書読込手段と、
    単語辞書に基づいて前記読み込んだ各テキスト文書から単語を抽出して当該テキスト文書に含まれる単語の特徴量として単語の総数および各単語の単語出現頻度を算出すると共に、単語毎に検索対象とする全テキスト文書を通じた文書出現頻度を算出する文書特徴量算出手段と、
    単語毎に前記文書出現頻度を前記検索対象とする全テキスト文書を通じて比較し、各単語の前記文書出現頻度が所定のしきい値よりも低いか否かを判別する出現頻度判別手段と、
    単語の前記文書出現頻度が前記所定のしきい値よりも低い場合に、当該単語について前記インパクト値順の転置ファイルを前記文書検索用のインデックスとして構築する第1転置ファイル構築手段と、
    単語の前記文書出現頻度が前記所定のしきい値以上である場合に、当該単語について前記検索対象とする全テキスト文書を通じて最大のインパクト値を算出し、前記算出した最大のインパクト値を含む文書ID順の転置ファイルを前記文書検索用のインデックスとして構築する第2転置ファイル構築手段とを備えることを特徴とする請求項1ないし請求項5のいずれか一項に記載のテキスト検索装置。
  7. 文書IDを有する各テキスト文書において単語毎に予め算出された単語出現頻度と、当該テキスト文書に含まれる単語の総数と、に基づいて得られる重みの数値を示すインパクト値を用いた単語毎に構築されたインパクト値順の転置ファイルと、前記各テキスト文書に含まれる単語毎に構築された文書ID順の転置ファイルとを含む複数の転置ファイルを文書検索用のインデックスとして用いて、検索対象として前記テキスト文書を検索するテキスト検索装置のテキスト検索方法であって、
    前記テキスト検索装置は、検索条件入力手段と、単語抽出手段と、単語群分類手段と、候補文書探索手段と、候補文書出力手段とを備え、
    前記検索条件入力手段によって、複数の単語を含む検索式と文書件数とを指定された検索条件として入力する検索条件入力ステップと、
    前記単語抽出手段によって、前記入力された検索式に含まれる各単語を単語辞書に基づいて抽出する単語抽出ステップと、
    前記単語群分類手段によって、単語毎に検索対象とする全テキスト文書を通じて予め算出された文書出現頻度に基づいて、前記抽出された各単語を、前記文書出現頻度が所定のしきい値よりも低い単語群と、そうではない単語群とに分類する単語群分類ステップと、
    前記候補文書探索手段によって、前記文書出現頻度が所定のしきい値よりも低い単語群については前記インパクト値順の転置ファイルを利用して出力候補となる候補文書を探索し、その後、前記文書出現頻度が所定のしきい値以上の単語群については前記文書ID順の転置ファイルを利用して出力候補となる候補文書を探索する候補文書探索ステップと、
    前記候補文書出力手段によって、前記入力された検索条件を満たした時点で前記候補文書を確定して出力する候補文書出力ステップとを含んで実行することを特徴とするテキスト検索方法。
  8. 請求項1ないし請求項6のいずれか一項に記載のテキスト検索装置の機能をコンピュータで実現するためのテキスト検索プログラム。
  9. 請求項8に記載のテキスト検索プログラムが記録されたことを特徴とするコンピュータ読み取り可能な記録媒体。
JP2008011125A 2008-01-22 2008-01-22 テキスト検索装置、テキスト検索方法、テキスト検索プログラムおよびそのプログラムを記録した記録媒体 Active JP4691117B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008011125A JP4691117B2 (ja) 2008-01-22 2008-01-22 テキスト検索装置、テキスト検索方法、テキスト検索プログラムおよびそのプログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008011125A JP4691117B2 (ja) 2008-01-22 2008-01-22 テキスト検索装置、テキスト検索方法、テキスト検索プログラムおよびそのプログラムを記録した記録媒体

Publications (2)

Publication Number Publication Date
JP2009175826A true JP2009175826A (ja) 2009-08-06
JP4691117B2 JP4691117B2 (ja) 2011-06-01

Family

ID=41030879

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008011125A Active JP4691117B2 (ja) 2008-01-22 2008-01-22 テキスト検索装置、テキスト検索方法、テキスト検索プログラムおよびそのプログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP4691117B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013196545A (ja) * 2012-03-22 2013-09-30 Nec Corp データ移行管理装置およびデータ移行管理方法、並びにコンピュータ・プログラム
KR20200014979A (ko) * 2018-08-02 2020-02-12 주식회사 누리랩 역 색인 구성 방법, 역 색인을 이용한 유사 데이터 검색 방법 및 장치
JP2020123134A (ja) * 2019-01-30 2020-08-13 富士通株式会社 抽出方法,情報処理装置および抽出プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8589164B1 (en) * 2012-10-18 2013-11-19 Google Inc. Methods and systems for speech recognition processing using search query information

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CSNG200300474001, 赤峯 享, "高速全文検索のためのフレキシブル文字列インバージョン法", アドバンスト・データベース・シンポジウム’96, 19961202, 第96巻, 第35頁乃至第42頁, JP, 社団法人情報処理学会 *
JPN6010061339, 赤峯 享, "高速全文検索のためのフレキシブル文字列インバージョン法", アドバンスト・データベース・シンポジウム’96, 19961202, 第96巻, 第35頁乃至第42頁, JP, 社団法人情報処理学会 *
JPN7010003421, Justin Zobel, "Inverted files for text search engines", ACM Computing Surveys, 200607, Volume 38 , Issue 2 , Article 6, US, ACM *
JPN7010003422, Vo Ngoc Anh, "Impact transformation: effective and efficient web retrieval", Proceedings of the 25th annual international ACM SIGIR conference on Research and development in inf, 2002, 3−10, US, ACM *
JPN7010003423, Vo Ngoc Anh, "Vector−space ranking with effective early termination", Proceedings of the 24th annual international ACM SIGIR conference on Research and development in inf, 2001, 35−42, US, ACM *
JPN7010003424, Vo Ngoc Anh, "Pruned query evaluation using pre−computed impacts", Proceedings of the 29th annual international ACM SIGIR conference on Research and development in inf, 2006, 372−379, US, ACM *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013196545A (ja) * 2012-03-22 2013-09-30 Nec Corp データ移行管理装置およびデータ移行管理方法、並びにコンピュータ・プログラム
KR20200014979A (ko) * 2018-08-02 2020-02-12 주식회사 누리랩 역 색인 구성 방법, 역 색인을 이용한 유사 데이터 검색 방법 및 장치
KR102081867B1 (ko) * 2018-08-02 2020-02-26 주식회사 누리랩 역 색인 구성 방법, 역 색인을 이용한 유사 데이터 검색 방법 및 장치
JP2020123134A (ja) * 2019-01-30 2020-08-13 富士通株式会社 抽出方法,情報処理装置および抽出プログラム

Also Published As

Publication number Publication date
JP4691117B2 (ja) 2011-06-01

Similar Documents

Publication Publication Date Title
TWI536181B (zh) 在多語文本中的語言識別
EP2798540B1 (en) Extracting search-focused key n-grams and/or phrases for relevance rankings in searches
US8666994B2 (en) Document analysis and association system and method
US8868469B2 (en) System and method for phrase identification
KR101479040B1 (ko) 태그들을 문서에 자동으로 추가하는 방법, 장치 및 컴퓨터 저장 매체
US20070203885A1 (en) Document Classification Method, and Computer Readable Record Medium Having Program for Executing Document Classification Method By Computer
US8655648B2 (en) Identifying topically-related phrases in a browsing sequence
Manjari et al. Extractive Text Summarization from Web pages using Selenium and TF-IDF algorithm
JP5710581B2 (ja) 質問応答装置、方法、及びプログラム
JP5143057B2 (ja) 重要キーワード抽出装置及び方法及びプログラム
US8812504B2 (en) Keyword presentation apparatus and method
US20150205860A1 (en) Information retrieval device, information retrieval method, and information retrieval program
JP5538185B2 (ja) テキストデータ要約装置、テキストデータ要約方法及びテキストデータ要約プログラム
Jain et al. Context sensitive text summarization using k means clustering algorithm
JP5718405B2 (ja) 発話選択装置、方法、及びプログラム、対話装置及び方法
JP4691117B2 (ja) テキスト検索装置、テキスト検索方法、テキスト検索プログラムおよびそのプログラムを記録した記録媒体
CN115794995A (zh) 目标答案获取方法及相关装置、电子设备和存储介质
JP2005301856A (ja) 文書検索方法、文書検索プログラムおよびこれを実行する文書検索装置
KR101868936B1 (ko) 키워드 추출 및 정련 시스템과 그 방법
Fan et al. Article clipper: a system for web article extraction
US20140358522A1 (en) Information search apparatus and information search method
JP4143085B2 (ja) 同義語獲得方法及び装置及びプログラム及びコンピュータ読み取り可能な記録媒体
JP5179564B2 (ja) クエリセグメント位置決定装置
JP4953440B2 (ja) 形態素解析装置、形態素解析方法、形態素解析プログラム及びコンピュータプログラムを格納した記録媒体
KR101113787B1 (ko) 텍스트 색인 장치 및 방법

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101008

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101026

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101206

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110218

R150 Certificate of patent or registration of utility model

Ref document number: 4691117

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140225

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350