(57)【要約】【課題】複数のデータベースを同時に検索し、結果を一まとめにして提示するメタサーチ型検索において、データベース毎に付与される関連度を正規化し、相互に比較可能とした上で大小関係により統一的な順序を与えること。【解決手段】共通のデータセット３１０を各データベース４１２、５１２に埋め込み、各データベースからの検索結果中の埋め込まれたデータの中でのトップのものの関連度がデータベースによらず等価であるとみなし、各データベースからの関連度を正規化することにより相互比較可能とする。【選択図】図１
2009259039.tif 000002
【特許請求の範囲】
【請求項１】
複数の文書データベースの各々に対して共通の基準データ群を追加するステップと、
同一の検索要求で前記基準データ群が追加された前記複数の文書データベースを検索し、各文書データベースから関連度付きの検索結果を取得するステップと、
各文書データベースの検索結果のうち前記基準データ群に属する検索結果の関連度が等価であるとして、各データベースの検索結果の関連度を正規化するステップと、
前記正規化された関連度を用いて、前記複数の文書データベースからの検索結果をマージするステップと
を有することを特徴とする複数の文書データベースの検索方法。
【請求項２】
請求項１記載の複数の文書データベースの検索方法において、各文書データベースの検索結果のうち前記基準データ群に属する検索結果の中で関連度が最大の検索結果の関連度が互いに等価であるとして、各データベースの検索結果の関連度を正規化することを特徴とする複数の文書データベースの検索方法。
【請求項３】
請求項１記載の複数の文書データベースの検索方法において、各文書データベースの検索結果のうち前記基準データ群に属する検索結果の中で関連度が上位所定数の検索結果の関連度の平均値が等価であるとして、各データベースの検索結果の関連度を正規化することを特徴とする複数の文書データベースの検索方法。
【請求項４】
請求項１記載の複数の文書データベースの検索方法において、前記マージした検索結果を関連度の高い順に提示することを特徴とする複数の文書データベースの検索方法。
【請求項５】
請求項２記載の複数の文書データベースの検索方法において、前記関連度が互いに等価とされた検索結果を同じ高さにして各文書データベースの検索結果を並列的に提示することを特徴とする複数の文書データベースの検索方法。
【請求項６】
検索要求で第１の文書データベースを検索し、関連度付きの検索結果を取得するステップと、
前記検索結果に含まれる文書のうち所定数の文書を基準データ群として第２の文書データベースに追加するステップと、
前記基準データ群が追加された前記第２の文書データベースを前記検索要求で検索し、関連度付きの検索結果を取得するステップと、
前記第１の文書データベースの検索結果として得られた前記基準データ群に属する文書の関連度と、前記第２の文書データベースの検索結果として得られた前記基準データ群に属する文書の関連度とが互いに等価であるとして、前記第１の文書データベースの検索結果と前記第２の文書データベースの検索結果の関連度を正規化するステップと、
前記正規化された関連度を用いて、前記第１の文書データベースからの検索結果と前記第２の文書データベースからの検索結果をマージするステップと
を有することを特徴とする複数の文書データベースの検索方法。
【請求項７】
複数の文書を含む基準データ群を複数の検索サーバに送信する手段と、
検索クライアントから受信した検索要求を複数の検索サーバに発行する手段と、
前記複数の検索サーバから関連度付きの検索結果を取得する手段と、
前記複数の検索サーバから取得した複数の検索結果について、前記基準データ群に属する文書の関連度が互いに等価であるとして、各検索サーバから得られた検索結果の関連度を正規化する正規化手段と、
前記正規化された関連度に基づいて前記複数の検索サーバから得られた検索結果をマージする手段と、
前記マージした検索結果を前記検索クライアントに送信する手段と
を有することを特徴とするメタ検索サーバ。
【請求項８】
請求項７記載のメタ検索サーバにおいて、前記正規化手段は、前記複数の検索サーバから取得した複数の検索結果について、前記基準データ群に属する検索結果の中で関連度が最大の検索結果の関連度が互いに等価であるとして、各検索サーバから得られた検索結果の関連度を正規化することを特徴とするメタ検索サーバ。
【請求項９】
請求項７記載のメタ検索サーバにおいて、前記正規化手段は、前記複数の検索サーバから取得した複数の検索結果について、前記基準データ群に属する検索結果の中で関連度が上位所定数の検索結果の関連度の平均値が等価であるとして、各検索サーバから得られた検索結果の関連度を正規化することを特徴とするメタ検索サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同一の検索要求で複数のデータベースを検索し、それぞれのデータベースから得られた検索結果を統合して利用者に提示するメタサーチ型の検索方法、及びこれを利用した検索手段提供サービスに関する。
【背景技術】
【０００２】
何かについて調べたい場合に、一般には複数のデータベースや検索サービスを調べたい内容で検索し、それらの結果を統合するということを行なう。このような手間を軽減することを目的として、メタサーチというものがある。メタサーチでは、利用者が入力した検索要求を用いて複数のデータベースや検索サービスを検索し、それぞれのデータベースや検索サービスから得られた結果を何らかの形で総合して利用者に提示する。メタサーチは、串刺し検索、横串検索、横断検索とも呼ばれ、インターネット上でもいくつかのサービスが行なわれている。これによって、利用者は同じ質問を何度も入力せずに情報が得られるという大きな利点がある（特許文献１〜４、非特許文献１〜２）。
【０００３】
一般に、それぞれのデータベースからの検索結果は何らかの重要度、あるいは、検索要求との関連度といった指標に基づいて、それらの高い順に整列された結果として返されるのが普通である（レレバンスランキング）。ところが複数のデータベースからの検索結果を扱う場合、それぞれのデータベースでの重要度・関連度指標はそのデータベース内では比較可能であっても、異なるデータベースからの検索結果同士の重要度・関連度の優劣を測る指標としては使えないという困難がある。
【０００４】
メタサーチの検索結果の表示方法としては主に二つの形態があり、一つは全体を一つにまとめて表示する統合表示型、もう一つは複数のデータベースからの結果を各データベースごとに並べて表示する並列表示型である。
【０００５】
重要度・関連度の優劣をデータベースを跨って比較することができないという困難は、統合表示型の表示をする場合には直接的な困難となる。並列表示型の場合には、そうした直接的な困難は生じないが、それでも検索結果が玉石混交となってしまうという使い勝手上の不便がある。例えば、検索要求が何か歴史的なことに関するものであったとすると、百科事典のようなデータからは関連度の高いデータがたくさん得られるのに対して、新聞のようなデータからは、それほどヒットも多くないであろうし、またヒットしたものもメインの話題というよりは、話の流れで触れられた程度ということが多いと思われる。そのため、百科事典からの１位の検索結果と新聞からの１位の検索結果は重要度が大きく異なることが考えられるが、単純にリストとして表示を行なうと、どちらも１位ということで並んで表示されてしまう、という不都合が生じる。
【０００６】
こうした不都合は２つ３つのデータベースを並べて検索する程度であれば大した障害とはならないが、１０、２０、あるいはさらに多数を並列するようになると、玉石混交の非常に不便な検索結果表示となってしまう。
【０００７】
このため、従来から複数のデータベースからの検索結果の重要度の大小を比較しようとする試みがなされている。代表的な方法として知られているのは各データベースと検索要求とのマッチング度を計算し、そのマッチング度で順位を補正する手法である（特許文献４）。しかし、この方法では、ある検索要求に対してデータベース全体としては関連度が小さいけれども特異点的に非常に重要なものがごく少数ながら含まれている場合に、データベース関連度による補正で、それらが見逃されてしまうという大きな欠点がある。
【０００８】
そのような欠点を補う方法としては、得られた検索結果全部と検索要求との関連度を統一した指標によって再評価することが考えられる（特許文献３）が、それには非常に時間がかかってしまい、多数の場合には非現実的である。
【０００９】
【特許文献１】特開平１０−１４３５２３号公報
【特許文献２】特開平１１−１５８５６号公報
【特許文献３】特開平１１−１９１１１４号公報
【特許文献４】特開２００１−１１７９４２号公報
【非特許文献１】http:/www.ceek.jp/
【非特許文献２】http:/ssearch.jp/books/
【発明の開示】
【発明が解決しようとする課題】
【００１０】
同一の検索要求で複数のデータベースを検索し、それぞれのデータベースから得られた検索結果を統合して利用者に提示するメタサーチ型検索において、統合的な重要度・関連度に基づいて整理された形で結果を表示できるようにするために、複数の異なるデータベースからの検索結果に跨る統一的な重要度・関連度指標を迅速な計算手段で与えることが課題となる。
【課題を解決するための手段】
【００１１】
複数のデータベースからの検索結果に統一的な重要度・関連度指標を付けるために、本発明では、共通のデータセットを各データベースに埋め込む。それぞれのデータベースからの検索結果において共通のデータセット中のトップのものの重要度・関連度レベルが一定であると仮定し、それよりも上位の検索結果はデータベース内の重要度指標（スコア）などを用いた比例計算などにより、統一的な関連度指標を与える。
【００１２】
例えば、Ａ、Ｂというデータベースのトップの検索結果のローカルなスコアが、それぞれ１．０と１．５であったとする。また、ＡとＢに埋め込まれた共通データの中のトップの検索結果のスコアが、それぞれ０．５と１．０であったとする。この場合、比例配分法を用いれば、Ａのトップの検索結果の正規化スコアは１．０／０．５で２．０、一方、Ｂのトップの検索結果の正規化スコアは１．５／１．０で１．５となり、データベースＡのトップの検索結果の方が、データベースＢのトップの検索結果よりも重要度・関連度が高いという計算になる。
【００１３】
以上は、データベースに共通のデータセットを埋め込める場合についてであるが、場合によっては、あらかじめ共通のデータセットを埋め込むことが困難な場合もある。その場合には、共通のデータセットを埋め込むことができないデータベースから取得した検索結果の上位所定数の文書を共通データとして、共通のデータセットを埋め込むことのできるデータベースに加えて一時的なデータベースを作成し、それを同じ検索要求で検索することによって、上記の場合と同じ手段に還元することができる。
【発明の効果】
【００１４】
本発明によると、同一の検索要求による複数のデータベースからの検索結果を統合する際に、個々の検索結果に対して根拠に基づく単一の優先度を比較的簡単な計算で付与することができるため、常に合理的かつ迅速な順位付けにより統合された検索結果を提示することができる。
【発明を実施するための最良の形態】
【００１５】
以下、図面を参照して本発明の実施の形態を説明する。
【実施例１】
【００１６】
図１は、本発明を実現するためのシステムの構成例を示す概略図である。このシステムは、利用者が検索要求を入力したり、検索結果を表示したりする検索クライアント２０、文書データベースを検索するための検索サーバ４０、５０、検索クライアント２０と検索サーバ４０、５０の仲介をするメタ検索サーバ３０を通信ネットワーク１０により接続して構成される。図に示した例では、文書データベースを検索するための検索サーバとして２つの検索サーバが通信ネットワークに接続されているが、通信ネットワークに接続される検索サーバの数は任意でよい。検索クライアントの数も任意である。
【００１７】
検索クライアント２０は、検索要求入力手段２０１、検索結果表示手段２０２を備える。検索結果表示手段は２０２は、本文表示要求手段、本文表示手段も兼ねており、利用者からの要求に応じて検索結果の本文も表示することができる。
【００１８】
検索サーバ４０、５０の備える検索手段４０１、５０１は、メタ検索サーバから送られてきた検索要求に対して、関連度の高い文書群を文書データベース４１２、５１２から検索し、その検索結果を関連度の重み（スコア）付きでメタ検索サーバ３０に返す。ここでの検索手段は、例えば、既知のキーワード検索手法により実現できる。
【００１９】
キーワード検索手法では、検索処理の効率を上げるために、文書データベースに含まれる文書を単語に分割し（日本語の文書に対しては形態素、英語の文書に対してはstemming処理を行なう）、どの文書にどの単語が含まれるかを索引（インデックス）として作成しておく。検索実行時には、作成された索引が主記憶に読み込まれるため、検索処理を高速に実行することができる。図１においては、検索サーバ４０、５０が有する索引データ作成手段４０２、５０２が、文書データベース４１２、５１２のそれぞれに対して索引データ４１０、５１０を作成し、検索処理に利用する。
【００２０】
検索サーバ４０、５０が備える本文表示作成手段４０３、５０３は、検索クライアント２０から送られてきた本文表示要求に対して、指定された検索結果の本文を作成し、検索クライアント２０に返す。
【００２１】
メタ検索サーバ３０は、検索クライアント２０から送られてくる検索要求を解析する検索要求解析手段３０１、検索クライアント２０から送られてくる検索要求を、検索サーバ４０、５０に送る検索要求発行手段３０２、検索サーバ４０、５０から返される検索結果を取得する検索結果取得手段３０３、検索サーバ４０、５０から得られた検索結果のスコアを基準データセットに基づいて正規化するスコア正規化手段３０４、スコアが正規化された検索結果を統合する検索結果マージ手段３０５、検索結果のスコアを比較可能にするための基準データセット３１０、基準データセット３１０を検索サーバ４０、５０に送る基準データセット発行手段３０５を備える。
【００２２】
メタ検索サーバ３０が備える基準データセット３１０は、検索サーバ４０、５０から得られる検索結果のスコアを正規化するための基準になるものであり、基準データ発行手段３０６により、検索サーバ４０、５０に送られ、それぞれ基準データセット４１１、５１１となる。基準データセット３１０に含まれる文書の件数は任意でよいが、利用者が入力する検索クエリに関連する文書が基準データセット３１０中に含まれない場合は、基準データとしての役割を果たすことができないため、ある程度の規模の件数が必要である。概ね、新聞記事半年分から１年分程度（１０万件から２０万件程度）あれば十分である。検索サーバ４０の索引データ作成手段４０２は、文書データベース４１２と基準データセット４１１から上記の方法で索引データ４１０を作成する。検索サーバ５０も同様に索引データ５１０を作成する。
【００２３】
メタ検索サーバ３０が備えるスコア正規化手段３０４の処理を、図２を用いて説明する。利用者からの検索要求に対して、検索サーバ４０、５０はそれぞれ、関連度の重み（スコア）付で検索結果をメタサーバ３０に返す。検索サーバ４０において、文書データベース４１２に含まれる文書のうち、検索要求と最も関連度の高い（スコアの大きい）検索結果をＡ１、そのスコアを１．０、基準データセット４１１に含まれる文書のうち、検索要求と最も関連度の高い（スコアの大きい）検索結果をＣ、そのスコアを０．５とする。検索サーバ５０において、文書データベース５１２に含まれる文書のうち、検索要求と最も関連度の高い（スコアの大きい）検索結果をＢ１、そのスコアを３．０、基準データセット５１１に含まれる文書のうち、検索要求と最も関連度の高い（スコアの大きい）検索結果をＣ、そのスコアを２．０とする。
【００２４】
スコア正規化手段３０４では、検索結果Ａ１、Ｂ１のスコアを基準データセットからの検索結果Ｃのスコアに基づいて正規化する。正規化手法としては、任意の手法を用いることができるが、例えば、比例配分法を用いれば、検索結果Ａ１のスコアは１．０／０．５＝２．０、検索結果Ｂ２のスコアは３．０／２．０＝１．５となり、検索サーバ４０からの得られた検索結果Ａ１の方が、検索サーバ５０から得られた検索結果Ｂ１よりも、検索要求との関連度が高いという計算になる。
【００２５】
上記の説明では、基準データセットに含まれる文書のうち、検索要求と最も関連度が高い検索結果を正規化のためのデータとして用いたが、複数の基準データが検索結果として得られた場合には、複数の基準データを利用しても良い。例えば、基準データセットに含まれる文書のうち、検索要求と最も関連度の高い検索結果をＣ、その次に関連度の高い検索結果をＤとする。この場合、ＣとＤのスコアの平均値を計算し、その平均値を基準データのスコアとして、上記と同様の処理を行なえばよい。より一般的には、共通データセットに属する検索結果のうち関連度が上位の所定数の検索結果の関連度の平均値が等価であるとして、各データベースの検索結果の関連度を正規化すればよい。
【００２６】
図３は検索結果の表示方法の例である。この例では、スコアを正規化した検索結果をひとつの検索結果リストとしてまとめて提示している。表示順は正規化スコアの大きい順とし、正規化スコアと共に各検索サーバ内でのスコアをローカルスコアとして併せて表示している。
【００２７】
図４は検索結果の表示方法の別の例である。この例では、スコアを正規化した検索結果をひとつの検索結果リストとしてまとめるのではなく、個々の文書データベースからの結果であることを明示するために、別々の検索結果リストとして並列的に提示している。また、基準データセットによる正規化の効果を明確化するために、同一のスコアを持つ検索結果を同じ高さで表示している。これにより、どの文書データベースに利用者の検索要求に関連のある文書が多く含まれるかを簡単に認識することができる。
【００２８】
図５のシーケンス図を用いて、基準データセットを検索サーバ４０、５０に共通に保持させる手順を説明する。メタ検索サーバ３０は、基準データセット３１０を基準データセット発行手段３０６により、検索サーバ４０に送る（Ｔ１１）。同様に、検索サーバ５０にも送る（Ｔ１２）。検索サーバ４０が受け取った基準データセットは、基準データセット４１１となり、文書データベース４１２とあわせた索引データ４１０を索引データ作成手段４０２が作成する。同様に、検索サーバ５０が受け取った基準データセットは、基準データセット５１１となり、文書データベース５１２とあわせた索引データ５１０を索引データ作成手段５０２が作成する。これにより、それぞれの検索サーバ４０、５０の検索手段４０１、５０１が索引データ４１０、５１０を用いて検索を実行すると、検索サーバ４０の場合、文書データベース４１２と基準データセット４１１の両方からの検索結果が得られ、検索サーバ５０の場合、文書データベース５１２と基準データセット５１１の両方からの検索結果が得られるようになる。
【００２９】
図６のシーケンス図を用いて、検索クライアント２０、メタ検索サーバ３０、検索サーバ４０、５０の処理の流れを説明する。利用者からの検索要求が検索クライアント２０の検索要求入力手段２０１に入力されると、その検索要求がメタ検索サーバ３０に送られる（Ｔ２０）。メタ検索サーバ３０の検索要求解析手段３０１が検索要求を解析し、検索要求発行手段３０２が検索サーバ４０、５０に検索要求を送る（Ｔ２１、Ｔ２２）。検索サーバ４０、５０の検索手段４０１、５０１は受け取った検索要求に関連する文書を索引データ４１０、５１０から検索し、その結果をメタ検索サーバ３０に送る（Ｔ２３、Ｔ２４）。メタ検索サーバ３０の検索結果取得手段３０３は、検索サーバ４０、５０から送られてきた検索結果を取得し、スコア正規化手段３０４に送る。スコア正規化手段３０４は、上記の方法で検索サーバ４０、５０から送られてきた検索結果を正規化し、検索結果マージ手段３０５に送る。検索結果マージ手段３０５は、正規化されたスコアに基づいて検索結果をマージし、検索クライアント２０に送る（Ｔ２５）。検索クライアント２０の検索結果表示手段２０２は、メタ検索サーバ３０から受け取った検索結果を表示する。
【実施例２】
【００３０】
図７は、本発明を実現するためのシステムの他の構成例を示す概略図である。実施例１では、検索サーバ４０、５０の索引データ４１０、５１０に基準データセット４１１、５１１を含めることができる場合を説明したが、索引データに基準データセットを含めることができない場合もある。例えば、インターネット上で公開されている検索サービスを利用する場合などがそうである。図７は、このような場合において、本発明を実現するためのシステムの構成例を示す概略図である。図７において、検索サーバ６０が索引データに基準データセットを含めることができないサーバに相当する。したがって、検索サーバ６０は、索引データ作成手段や基準データセットを備えていない。
【００３１】
メタ検索サーバ３０は、図１の構成例に加えて、本文取得手段３０７を有する。本文取得手段３０７は、検索サーバ６０から得られた検索結果の上位（件数は任意でよいが１０件程度が妥当である）の本文データを取得し、このデータを基準データセット３１０とする。この基準データセット３１０を検索サーバ４０の索引データ４１０に含ませることによって、実施例１と同様の処理で同様の効果を達成することができる。
【００３２】
図８のシーケンス図を用いて、検索クライアント２０、メタ検索サーバ３０、検索サーバ４０、６０の処理の流れを説明する。利用者からの検索要求が検索クライアント２０の検索要求入力手段２０１に入力されると、その検索要求がメタ検索サーバ３０に送られる（Ｔ３０）。メタ検索サーバ３０の検索要求解析手段３０１が検索要求を解析し、検索要求発行手段３０２が検索サーバ６０に検索要求を送る（Ｔ３１）。検索サーバ６０の検索手段６０１は受け取った検索要求に関連する文書を索引データ５１０から検索し、その結果をメタ検索サーバ３０に送る（Ｔ３２）。
【００３３】
メタ検索サーバ３０の検索結果取得手段３０３は、検索サーバ６０から送られてきた検索結果を取得し、そのうちの上位のものを所定数、スコア正規化手段３０４と本文取得手段３０７に送る。本文取得手段３０７は、検索結果それぞれの本文の取得要求を検索サーバ６０に送る（Ｔ３３）。検索サーバ６０の本文表示作成手段５０３は、メタ検索サーバ３０から送られてきた検索結果それぞれの本文を作成し、メタ検索サーバ３０に送る（Ｔ３４）。メタ検索サーバ３０は、受け取った本文データを基準データセット３１０とし、基準データセット発行手段３０６が、その基準データセットを検索サーバ４０に送る（Ｔ３５）。検索サーバ４０が受け取った基準データセットは、基準データセット４１１となり、文書データベース４１２とあわせた索引データ４１０を索引データ作成手段４０２が作成する。
【００３４】
次に、メタ検索サーバ３０の検索要求発行手段３０２が検索要求を検索サーバ４０に送る（Ｔ３６）。検索サーバ４０の検索手段４０１は受け取った検索要求に関連する文書を索引データ４１０から検索し、その結果をメタ検索サーバ３０に送る（Ｔ３７）。メタ検索サーバ３０の検索結果取得手段は、検索サーバ４０から送られてきた検索結果を取得し、スコア正規化手段３０４に送る。スコア正規化手段３０４は、検索サーバ４０、６０から送られてきた検索結果を正規化し、検索結果マージ手段３０５に送る。スコアの正規化は、実施例１と同様に、基準データセット３１０に含まれている文書に対して検索サーバ４０がつけたスコアと検索サーバ６０がつけたスコアに基づいて行われる。検索結果マージ手段３０５は、正規化されたスコアに基づいて検索結果をマージし、検索クライアント２０に送る（Ｔ３８）。検索クライアント２０の検索結果表示手段２０２は、メタ検索サーバ３０から受け取った検索結果を表示する。検索結果の表示も、実施例１と同様にして行なわれる。
【図面の簡単な説明】
【００３５】
【図１】本発明を実現するためのシステムの構成例を示す概略図。
【図２】スコア正規化手段での処理方法を示す図。
【図３】検索結果の表示方法の例を示す図。
【図４】検索結果の表示方法の例を示す図。
【図５】メタ検索サーバ、検索サーバ間のデータ及び処理の流れを示すシーケンス図。
【図６】検索クライアント、メタ検索サーバ、検索サーバ間のデータ及び処理の流れを示すシーケンス図。
【図７】本発明を実現するためのシステムの他の構成例を示す概略図。
【図８】検索クライアント、メタ検索サーバ、検索サーバ間のデータ及び処理の流れを示すシーケンス図。
【符号の説明】
【００３６】
１０：通信ネットワーク
２０：検索クライアント
２０１：検索要求入力手段
２０２：検索結果表示手段
３０：メタ検索サーバ
３０１：検索要求解析手段
３０２：検索要求発行手段
３０３：検索結果取得手段
３０４：スコア正規化手段
３０５：検索結果マージ手段
３０６：基準データセット発行手段
３０７：本文取得手段
３１０：基準データセット
４０：検索サーバ
４０１：検索手段
４０２：索引データ作成手段
４０３：本文表示作成手段
４１０：索引データ
４１１：基準データセット
４１２：文書データベース
５０：検索サーバ
５０１：検索手段
５０２：索引データ作成手段
５０３：本文表示作成手段
５１０：索引データ
５１１：基準データセット
５１２：文書データベース
【図１】
2009259039.tif 000003
【図２】
2009259039.tif 000004
【図３】
2009259039.tif 000005
【図４】
2009259039.tif 000006
【図５】
2009259039.tif 000007
【図６】
2009259039.tif 000008
【図７】
2009259039.tif 000009
【図８】
2009259039.tif 000010