(57)【要約】［課題］検索意図と関係ない文書の類似を基にクエリの類似を判定してしまうために、検索意図が似ているクエリを判定できない。［解決手段］第１のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第１の重要度を決定し、第２のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第２の重要度を決定する検索結果ランキング手段と、重要度の付けられた２つの検索結果の類似度を、重要度が高い文書が類似するほど大きく計算するクエリ類似度計算手段と、を備えることにより、検索意図が同じであった場合の文書の類似を計算することにより課題を解決する。
2014050002.tif 000002
【特許請求の範囲】
【請求項１】
第１のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第１の重要度を決定し、第２のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第２の重要度を決定する検索結果ランキング手段と、
前記文書集合の各文書の第１及び第２の重要度に基づき、前記複数のクエリの類似度を計算するクエリ類似度計算手段と、
を備えることを特徴とするクエリ類似度評価システム。
【請求項２】
前記検索結果ランキング手段は、
少なくとも前記第１のクエリと前記第２のクエリを含む複数のクエリの類似度を評価する際に、前記各クエリによって得られる結果の文書集合のそれぞれに対して、前記クエリの過去の文書集合の評価結果と今回の文書集合を比較することによって、当該文書集合に含まれる各文書の重要度を算出することを特徴とする請求項１に記載のクエリ類似度評価システム。
【請求項３】
前記クエリ類似度計算手段は、前記検索結果ランキング手段が、評価が高い文書と評価が低い文書それぞれの特徴語を特定し、評価が高い文書の特徴語の出現頻度が高い文書に対しては重要度を高く、評価が低い文書の特徴語の出現頻度が高い文書に対しては重要度を低く算出することを特徴とする請求項１または２に記載のクエリ類似度評価システム。
【請求項４】
前記検索結果ランキング手段は、評価が高い文書と評価が低い文書それぞれに付与されたメタデータを参照し、評価が高い文書とメタデータの値が近い文書ほど重要度を高く、評価が低い文書のメタデータと近い文書ほど重要度を低く算出することを特徴とする請求項１乃至３に記載のクエリ類似度評価システム。
【請求項５】
前記クエリ類似度計算手段は、検索結果集合１をＳ１、検索結果集合２をＳ２、文書ｄの検索結果集合１での重要度（検索結果集合１内の文書での総和が１となるように正規化されていることとする）をｗ１（ｄ）、文書ｄの検索結果集合２での重要度をｗ２  （ｄ）、文書ｄ１と文書ｄ２の類似度をｓｉｍ（ｄ１、ｄ２）として、アルゴリズム
【数１】
2014050002.tif 000010
を用いてクエリ類似度を計算することを特徴とする請求項１乃至５に記載のクエリ類似度評価システム。
【請求項６】
第１のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの重要度を決定し、第２のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの重要度を決定する検索結果ランキングステップと、前記文書集合の各文書の第１及び第２の重要度に基づき、前記複数のクエリの類似度を計算するクエリ類似度計算ステップと、を備えることを特徴とするクエリ類似度評価方法。
【請求項７】
前記検索結果ランキングステップは、少なくとも前記第１のクエリと前記第２のクエリを含む複数のクエリの類似度を評価する際に前記各クエリによって得られる結果の文書集合のそれぞれに対して、前記クエリの過去の文書集合の評価結果と今回の文書集合を比較することによって、当該文書集合に含まれる各文書の重要度を算出することを特徴とする請求項６に記載のクエリ類似度評価方法。
【請求項８】
前記クエリ類似度計算ステップは、前記検索結果ランキングステップが、評価が高い文書と評価が低い文書それぞれの特徴語を特定し、評価が高い文書の特徴語の出現頻度が高い文書に対しては重要度を高く、評価が低い文書の特徴語の出現頻度が高い文書に対しては重要度を低く算出することを特徴とする請求項６または７に記載のクエリ類似度評価方法。
【請求項９】
前記検索結果ランキングステップは、評価が高い文書と評価が低い文書それぞれに付与されたメタデータを参照し、評価が高い文書とメタデータの値が近い文書ほど重要度を高く、評価が低い文書のメタデータと近い文書ほど重要度を低く算出することを特徴とする請求項６乃至８に記載のクエリ類似度評価方法。
【請求項１０】
コンピュータによって、第１のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第１の重要度を決定し、第２のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第２の重要度を決定し、前記文書集合の各文書の第１及び第２の重要度に基づき、前記複数のクエリの類似度を計算するクエリ類似度計算ステップとして機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クエリ類似度評価システム、評価方法、プログラム及び記憶媒体に関する。
【背景技術】
【０００２】
検索システムにおいては、ユーザが目的の文書を迅速に見つけ出せることが重要である。ここで、例えば、「ｍｙｓｑｌでメモリサイズの設定方法を知りたい」、「ｍｙｓｑｌでの検索速度を上げる方法を知りたい」といった、検索者が探している記述内容を検索意図と呼ぶこととする。
ユーザがクエリを入力した際、検索システムがユーザの検索意図に似ているクエリをユーザに推薦することや、検索意図が似ているクエリで目的の文書を上位とするような検索された結果の文書（以下、「検索結果文書」と記載する）に対するランキングは、検索意図を含む文書を探す場合に有効である。また、検索システムは、入力されたクエリの結果だけでなく、検索意図が似ているクエリの結果も表示することで、検索漏れを防ぐことができる。
また、ユーザが検索意図を含む文書を検索する際に、過去の検索時の文書へのアクセスログ、または評価ログを用いると、検索システムは検索結果文書に対するランキングを改善できるが、上記ログがすべてのクエリに対しては十分に存在しない場合がある。上記ログが十分でないクエリに対して、当該クエリのログだけでなく、検索意図が似ているクエリのログを用いることで、より多くのクエリに対して検索結果文書のランキングの改善が可能となる。
こうした応用のために、検索意図の似ているクエリを判定することが必要となる。複数のクエリに対し、検索意図が似ているかを判定するための手法として、それぞれのクエリの検索結果文書を利用する手法が知られている。検索結果文書を利用して、同様の検索意図を表すクエリを判定するシステムの一例が、非特許文献１に記載されている。
図１１に示すように、非特許文献１に記載のクエリ類似度判定システムは、類似度を評価したいクエリ（クエリ１、クエリ２）それぞれの検索結果を取得する検索結果取得手段と、その検索結果の類似度を計算する検索結果類似度計算手段と、を有する。このような構成を有する従来のクエリ類似度判定システムは、次のように動作する。
まず、検索結果取得手段は、入力された２つのクエリそれぞれの検索結果文書を検索対象文書記憶部から取得する。次に、検索結果取得手段が取得した２つの検索結果文書の集合を入力とし、検索結果類似度計算手段は、検索結果文書の一致または文書に含まれる単語の一致に基づいて、一致する個数が多いほど大きく類似度を計算し、出力する。
【先行技術文献】
【非特許文献】
【０００３】
非特許文献１：“Ｆｉｎｄｉｎｇ  ｓｉｍｉｌａｒ  ｑｕｅｒｉｅｓ  ｔｏ  ｓａｔｉｓｆｙ  ｓｅａｒｃｈｅｓ  ｂａｓｅｄ  ｏｎ  ｑｕｅｒｙ  ｔｒａｃｅｓ”，  Ｚａｉａｎｅ，  Ｏ．  ａｎｄ  Ｓｔｒｉｌｅｔｓ，  Ａ．，  Ａｄｖａｎｃｅｓ  ｉｎ  Ｏｂｊｅｃｔ−Ｏｒｉｅｎｔｅｄ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｙｓｔｅｍｓ，（２００２）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、上述の非特許文献１に記載されたクエリ類似度判定システムは、クエリから取得される検索結果の文書の類似度を算出するので、次のような問題点がある。その問題点は、閲覧されていない文書と、検索意図に沿っていない文書との一致によってクエリを類似していると判定してしまうことである。その結果、検索意図の似ていないクエリが不当に似ていると判定されてしまうという問題があった。言い換えれば、非特許文献１に記載されたクエリ類似度判定システムは、クエリの類似度を判定する精度が甘く、改善の余地がある。
そこで、本発明の目的の一例は、入力された複数のクエリの検索意図が似ているかを高い精度で判定するクエリ類似度評価システム、評価方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【０００５】
上記目的を達成するため、本発明の一形態にかかるクエリ類似度評価システムは、第１のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第１の重要度を決定し、第２のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第２の重要度を決定する検索結果ランキング手段と、前記文書集合の各文書の第１及び第２の重要度に基づき、前記複数のクエリの類似度を計算するクエリ類似度計算手段と、を備える。
また、上記目的を達成するため、本発明の一形態にかかるクエリ類似度評価方法は、第１のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第１の重要度を決定し、第２のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第２の重要度を決定する検索結果ランキングステップと、前記文書集合の各文書の第１及び第２の重要度に基づき、前記複数のクエリの類似度を計算するクエリ類似度計算ステップと、を備える。
更に、上記目的を達成するため、本発明の一形態にかかるプログラムは、コンピュータによって、第１のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第１の重要度を決定し、第２のクエリが検索された複数の文書のそれぞれの評価結果に基づいて、前記複数の文書のそれぞれの第２の重要度を決定し、前記文書集合の各文書の第１及び第２の重要度に基づき、前記複数のクエリの類似度を計算するクエリ類似度計ステップとして機能させる。
【発明の効果】
【０００６】
以上のように、本発明におけるクエリ評価システム、クエリ評価方法、及びプログラムによれば、検索意図が似ているクエリを高い精度で特定することができる。
【図面の簡単な説明】
【０００７】
【図１】図１は、本発明を実施するための最良の形態の構成を示すブロック図である。
【図２】図２は、本発明を実施するための最良の動作を示す流れ図である。
【図３】図３は、本発明を実施するための最良の形態の構成を実現するコンピュータの一例を示すブロック図である。
【図４】図４は、検索対象文書記憶部３１のデータの具体例を示す図である。
【図５】図５は、クエリ−評価記録記憶部３２のデータの具体例を示す図である。
【図６】図６は、検索結果取得部２１による出力の具体例を示す図である。
【図７】図７は、検索結果取得部２１による出力の具体例を示す図である。
【図８】図８は、検索結果ランキング部２２による出力の具体例を示す図である。
【図９】図９は、検索結果ランキング部２２による出力の具体例を示す図である。
【図１０】図１０は、クエリ−評価記録記憶部３２が記憶するデータの例を示す図である。
【図１１】図１１は、従来技術のブロック図である。
【発明を実施するための形態】
【０００８】
発明を実施するための最良の形態について図面を参照して詳細に説明する。
本願で使用される用語「評価」は、検索エンジンの使用者が取った行動のうち、文書を求めていたか、求めていなかったかの手掛かりとなる行動を表す。評価とは、例えば、（１）検索中に文書が役に立ったかを使用者にアンケートした結果に基づく検索システムに登録された文書への評価、または（２）検索時の文書の閲覧である。アンケートや評価で「役に立つ」と回答されるという行動、および文書が使用者に閲覧されるという行動は、その文書を求めていたことを示す手掛かりであり、それぞれ評価が高いとする。逆に「役に立たなかった」と回答されるという行動、および画面に文書リンクを表示したにもかかわらず文書が使用者に閲覧されないという行動は、その文書を求めていなかったことを示す手掛かりであり、それぞれ評価が低いとする。
図１を用いて、本発明を実施するための最良の形態におけるクエリ類似度評価システムの構成について説明する。図１は、本発明を実施するための最良の形態の構成を示すブロック図である。
図１を参照すると、本発明を実施するための最良の形態におけるクエリ類似度評価システムは、検索結果取得部２１、検索結果ランキング部２２、クエリ類似度計算部２３、検索対象文書記憶部３１、クエリ−評価記録記憶部３２から構成されている。
検索対象文書記憶部３１は、検索システムで検索対象となる文書を記憶している。検索対象文書記憶部３１は、例えば、文書テキストそのもの、文書に対して付けられたメタデータ（文書ＩＤ、文書の更新日時、筆者、特定のタグが付いたテキスト、文書を参照する文書のＩＤ、文書に付けられたスコア等）、文書テキスト中の単語に対して付けられた転置インデックス等を記憶する。
クエリ−評価記録記憶部３２は、クエリとそのクエリに対する評価の記録（以下、「評価記録」と記載する）を互いに関連付けた情報を記憶する。クエリ−評価記録記憶部３２は、例えば、図１０に示すように、過去に検索エンジンに使用者から入力されたクエリ（以下、「クエリ」と記載する）と、当該クエリによって検索された文書、および当該文書への評価とを対応付けした情報を記録する。ここで、クエリ−評価記録記憶部３２が記憶するデータは、例えば、検索システムで、クエリと閲覧された文書を記述したログを出力させることで、作成されることにより、あらかじめ記憶されておいてよい。
次に、本発明を実施するための最良の形態におけるクエリ類似度評価システムの動作について説明する。
検索結果取得部２１は、検索対象文書記憶部３１を参照し、２つのクエリ（第１のクエリ、第２のクエリ）に対する検索結果をそれぞれ特定する。例えば、検索されたクエリが文書中に含まれる文書を特定する。検索結果取得部２１は、特定された２つの検索結果文書の集合（以下、「検索結果文書集合」または「検索結果文書集合１、検索結果集合２」と記載する）を、検索結果ランキング部２２に出力する。検索結果ランキング部２２は、検索結果取得部２１が出力した２つのクエリとそれぞれに対応する２つの検索結果文書集合の組に対し、クエリ−評価記録記憶部３２を参照して、クエリに対する評価記録が含まれるか否かを調べる。もし、いずれの評価記録もクエリ−評価記録記憶部３２に含まれない場合、検索結果ランキング部２２は、検索結果文書とクエリのみから計算されるランキングスコア（例えば、クエリ単語が含まれる回数、ＰａｇｅＲａｎｋ等の文書スコア）に基づいて２つの検索結果文書集合の各文書に対し重要度を算出し、クエリ類似度計算部２３に算出した重要度を出力する。
いずれかの評価記録が、クエリ−評価記録記憶部３２に含まれる場合、検索結果ランキング部２２はクエリ−評価記録記憶部３２を参照する。検索結果ランキング部２２は、参照した結果を基に、２つの検索結果文書集合の各文書に対する重要度を算出する。例えば、検索結果ランキング部２２は、クエリに対応する文書の評価が高くなるほど重要度がより高く、また文書の評価が低くなるほど重要度がより低くなるよう算出する。検索結果ランキング部２２は、その算出した結果をクエリ類似度計算部２３に出力する。
上記の重要度を算出する方法（以下、「重要度算出方法」と記載する）は、例えば、高評価された文書で出現頻度が高く、低評価された文書で出現頻度が低い語（特徴語）を特定し、並べ替えたい文書に対し、上で特定された単語の頻度が大きいほど高い重要度を算出する、という方法であってもよい。
また、重要度算出方法は、例えば、クエリと文書の組に対して、文書中のクエリキーワードの出現頻度、文書に付与されたメタデータ（文書の更新日時、文書の長さ等）の値を特徴ベクトルとして、入力文書の特徴ベクトルと、高評価された文書の特徴ベクトルとのユークリッド距離を計算し、距離が小さいほど高い重要度を算出する、という方法であってもよい。
もし、両方の評価記録がクエリ−評価記録記憶部３２に含まれるならば、検索結果ランキング部２２はそれぞれのクエリに対して、クエリ−評価記録記憶部３２を参照する。検索結果ランキング部２２は、参照した結果を基に、クエリに対応する評価された文書を上位に、評価されていない文書を下位にするように２つの検索結果文書集合を並べ替える。検索結果ランキング部２２は、それぞれの並べ替えによる、２組の２つの検索結果文書集合の組をクエリ類似度計算部２３に出力する。
クエリ類似度計算部２３は、検索結果ランキング部２２から出力された、１組または２組の並べ替えられた検索結果文書集合の組に対し、それぞれの文書で高い重要度を算出された文書同士の類似を重視するように、検索結果文書集合間の類似度を計算する。
［数１］
2014050002.tif 000003
【０００９】
数式１は、検索結果集合１をＳ１、検索結果集合２をＳ２、文書ｄ１の検索結果集合１での重要度をｗ１（ｄ１）、文書ｄ２の検索結果集合２での重要度をｗ２（ｄ２）、文書ｄ１と文書ｄ２の類似度をｓｉｍ（ｄ１，ｄ２）で表したものである。
数式１は、検索結果集合１、検索結果集合２に含まれる文書の組み合わせそれぞれについて、検索結果集合１での重要度と、検索結果集合２での重要度との積が大きいほど大きい重みをつけて、類似度を足し合わせたものである。２組入力された場合には、数式１は、それぞれの組で計算された値の平均を用いる。
特に、ｓｉｍ（ｄ１，ｄ２）を文書の一致で判断する場合、類似度は以下の式で計算される。
［数２］
2014050002.tif 000004
【００１０】
数式２では、クエリ類似度計算部２３は、文書のＩＤの一致により文書類似度を判断したが、文書内容の類似で判断してもよい。例えば、クエリ類似度計算部２３は、文書本文の単語ベクトルのコサイン類似度や、メタデータの差分のノルムを用いてもよい。
［クエリ類似度評価システムの動作］
次に、本発明を実施するための最良の形態におけるクエリ類似度評価システムの動作について、図１を適宜参酌しつつ、図２を用いて説明する。なお、本発明の実施形態では、クエリ類似度評価システムを動作させることによってクエリ類似度評価方法が実施されるため、本発明の実施形態におけるクエリ類似度評価方法の説明は、以下のクエリ類似度評価システムの動作説明に代える。
次に、図２を参照して本発明を実施するための最良の形態におけるクエリ類似度評価システムの全体の動作について詳細に説明する。図２は、本発明の実施形態に係るクエリ類似度評価システムの処理を表すフローチャートである。
まず、検索結果取得部２１は、２つのクエリに対する検索結果文書集合を、検索対象文書記憶部３１から参照して特定し、２つのクエリとそれぞれのクエリに対する検索結果文書集合を検索結果ランキング部２２に出力する（ステップＡ１）。
次に、ステップＡ１での２つのクエリとそれぞれの検索結果について、検索結果ランキング部２２は、クエリ−評価記録記憶部３２に、評価記録が存在するかどうかを判定する。クエリ−評価記録記憶部３２に、評価記録が存在するならば、処理はステップＡ４に進む。クエリ−評価記録記憶部３２に、評価記録が存在しないならば、処理はステップＡ３に進む（ステップＡ２）。
次に、検索結果ランキング部２２は、ステップＡ１での２つのクエリとそれぞれのクエリに対する検索結果文書の集合に対し、重要度を算出する（ステップＡ３）。例えば、ステップＡ１での２つのクエリとそれぞれのクエリに対する検索結果ランキング部２２は、検索結果文書の集合に対して、検索結果の並べ替えを行う等である。
次に、検索結果ランキング部２２は、にステップＡ１での２つのクエリとそれぞれのクエリに対する検索結果文書の集合に対し、クエリ−評価記録記憶部３２に存在する評価記録を特定する（ステップＡ４）。
次に、検索結果ランキング部２２は、ステップＡ４で特定された、評価記録、クエリ、クエリに対する検索結果文書の集合に対し、クエリに対する検索結果文書の集合２つの各文書に対し、評価記録で評価された文書ほど高くなるように重要度を算出する。２つの各文書の評価記録が特定された場合には、検索結果ランキング部２２は、２種類の重要度を算出する。検索結果ランキング部２２は、それぞれの評価記録に基づき重要度を算出された、２つの検索結果文書集合の組、１組または２組を、クエリ類似度計算部２３に出力する（ステップＡ５）。
次に、クエリ類似度計算部２３は、ステップＡ３ないし、ステップＡ５での、１組または２組の２つの検索結果文書集合に対し、高い重要度の文書同士の類似を重視するよう、類似度を計算する。クエリ類似度計算部２３は、２組の２つの検索結果文書集合が出力された場合には、部それぞれの組の類似度の平均を出力する（ステップＡ６）。
［プログラム］
本発明を実施するための最良の形態におけるクエリ類似度評価システムのプログラムは、コンピュータに、図２に示すステップＡ１〜Ａ６を実行させるプログラムであればよい。このプログラムをコンピュータに導入し、実行することによって、本発明を実施するための最良の形態におけるクエリ類似度評価システムと、クエリ類似度評価方法と、を実現することができる。
［コンピュータ］
図３を用いて、本発明を実施するための最良の形態におけるクエリ類似度評価システムを実現するコンピュータについて説明する。図３は、本発明を実施するための最良の形態の構成を実現するコンピュータの一例を示すブロック図である。
図３は、本発明を実施するための最良の形態におけるクエリ類似度評価システムのハードウェア構成図である。図３に示すように、クエリ類似度評価システムは、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２、記憶装置３、通信インターフェース４、入力装置５、出力装置６等を含む。
検索結果取得部２１、検索結果ランキング部２２等は、例えば、ＣＰＵ１  が、プログラムをＲＡＭ２に読み出し、実行することによって実現される。検索結果取得部２１、検索結果ランキング部２２等が情報の送受信を行う動作は、例えばＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が提供する機能を使ってアプリケーションプログラムが通信インターフェース４を制御することによって実現される。記憶装置３は、例えば、ハードディスクや、フラッシュメモリである。入力装置５は、例えばキーボードやマウス等である。出力装置６は、例えばディスプレイ等である。
具体的な例を用いて本発明の実施形態の動作を説明する。
図４に示すように、検索対象文書記憶部３１は、検索対象文書データを記憶している。ここで、図４に示す検索対象文書データは、例えば、６つの各文書に対してのデータ集合を示す。例えば、検索対象文書データは、文書のＩＤ、文書のタイトル、文書の更新日時が現在から何日前なのか、文書の被リンク数、文書の長さ（文字数）等の、データ集合である。
図５に示すように、クエリ−評価記録記憶部３２は、クエリと当該クエリに対する評価記録（クエリ−評価記録）を記憶している。
ここで、図５に示すクエリ−評価記録は、例えば、クエリ「ｍｙｓｑｌ  メモリ  設定」を入力して検索している際に行われた評価１回につき、クエリ、評価された文書のＩＤ、評価内容（Ｇｏｏｄなら探していた文書であることを表し、Ｂａｄなら探していた文書と異なっていることを表す）等の、データ集合である。
以下、「ｍｙｓｑｌ  メモリ  設定」と「ｍｙ．ｃｎｆ  ｃａｃｈｅ  ｓｉｚｅ」の２つのクエリが入力された場合（ｃａｓｅ１）と、「ｍｙｓｑｌ  メモリ  設定」と、「ｍｙｓｑｌ  インデックス作成」の２つのクエリが入力された場合（ｃａｓｅ２）との、クエリ類似度を計算する際の具体的な処理を記述する。
ｃａｓｅ１においては、どちらのクエリもｍｙｓｑｌのメモリに関する設定方法の検索を意図しており、検索意図が似ている。ｃａｓｅ２においては、「ｍｙｓｑｌ  メモリ  設定」はメモリの設定方法の検索を意図しており、「ｍｙｓｑｌ  インデックス作成」はフィールドのインデックスの作成方法を意図しているため、検索意図が異なる。ただし、ｃａｓｅ２のクエリは、どちらも処理速度を上げるための方法であるため、同一の文書に記述があることもある。
まず、検索結果取得部２１は、検索対象文書記憶部３１を参照して、それぞれのクエリにより検索される文書を特定する。例えば、図６に示すように、例えば、ｃａｓｅ１の場合では、検索結果取得部２１は、クエリが本文中に含まれる文書を特定し、クエリ「ｍｙｓｑｌ  メモリ  設定」に対しては文書ＩＤ  ０、１、２、３、５の文書を、クエリ「ｍｙ．ｃｎｆ  ｃａｃｈｅ  ｓｉｚｅ」に対しては文書ＩＤ  ０、２、３の文書を検索結果として特定する。
図７に示すように、例えば、ｃａｓｅ２の場合では、検索結果取得部２１は、クエリ「ｍｙｓｑｌ  メモリ  設定」に対しては文書ＩＤ  ０、１、２、３、５の文書を、クエリ「ｍｙｓｑｌ  インデックス作成」に対しては文書ＩＤ  ０、１、４、５の文書を検索結果として特定する。検索結果取得部２１は、それぞれのクエリと検索結果文書ＩＤの集合を検索結果ランキング部２２に出力する。
次に、検索結果ランキング部２２は、クエリ−評価記録記憶部３２を参照し、ｃａｓｅ１、ｃａｓｅ２ともに、検索結果取得部２１によって出力された２つのクエリのうち、「ｍｙｓｑｌ  メモリ  設定」の評価記録のみが存在することを特定する。
ここでは、具体的な例として、クエリが完全に一致する評価記録を用いたが、以下のクエリ類似度を計算する際の具体的な処理では、クエリをキーワードに分解し（例えば、「ｍｙｓｑｌ  メモリ  設定」を「ｍｙｓｑｌ」、「メモリ」、「設定」に分解）、キーワードが含まれる評価記録を用いるようにしても良い。
次に、検索結果ランキング部２２は、評価記録が存在したクエリ「ｍｙｓｑｌ  メモリ  重い」の評価記録（評価記録ＩＤ  ０、１）に基づき、評価記録で高評価の（Ｇｏｏｄと評価された）文書ＩＤ３の文書の重要度を高く、評価記録で低評価の（Ｂａｄと評価された）文書ＩＤ５の文書に重要度を低く出力された２つの検索結果のランキングを行う。
例えば、検索結果ランキング部２２は、高評価の文書ＩＤ３の文書で頻度が高く、低評価の文書ＩＤ５の文書で頻度が低い語「ｂｕｆｆｅｒ」、「ｐｏｏｌ」、「設定ファイル」を特徴語として特定し、「ｂｕｆｆｅｒ」、「ｐｏｏｌ」、「設定ファイル」の本文での出現頻度の和を重要度として算出する。そして、図８に示すように、例えば、ｃａｓｅ１では、検索結果ランキング部２２は、クエリ「ｍｙｓｑｌ  メモリ  設定」の検索結果文書集合と、クエリ「ｍｙ．ｃｎｆ  ｃａｃｈｅ  ｓｉｚｅ」の検索結果文書集合に対する、順位、文書ＩＤ、スコア等のランキング結果を得る。図９に示すように、例えば、ｃａｓｅ２では、検索結果ランキング部２２は、クエリ「ｍｙｓｑｌ  メモリ  設定」の検索結果文書集合と、クエリ「ｍｙｓｑｌ  インデックス作成」の検索結果文書集合に対する、順位、文書ＩＤ、スコア等のランキング結果を得る。
ここで、検索結果ランキング部２２の評価方法としては、逆に低評価された文書のみで頻度が高い語を特定し、その語の頻度が小さいほど大きい重要度を算出してもよい。また、検索結果ランキング部２２の評価方法としては、メタデータを用い、高評価された文書のスコアを＋１、低評価された文書のスコアを−１として、メタデータ（例だと、更新日時、被リンク数、長さ）からスコアを出力する関数を学習し、関数の出力する値を重要度としてもよい。
ここでは、検索結果Ｓの中での文書ｄの重要度は、検索結果Ｓ内での順位ｏｒｄｅｒ（ｄ）を利用して以下のように計算される。また、検索結果Ｓ１の中での文書ｄ１の重要度は順位ｏｒｄｅｒ1(ｄ)を、検索結果Ｓ２の中での文書ｄ２の重要度は順位ｏｒｄｅｒ２（ｄ）を利用して計算される。
［数３］
2014050002.tif 000005
【００１１】
また、文書の重要度に基づいたクエリ類似度は、以下のように計算される。
［数４］
2014050002.tif 000006
【００１２】
［数５］
2014050002.tif 000007
【００１３】
数式５は、数式４に数式３を代入すると得られる式である。
次に、クエリ類似度計算部２３は、検索結果ランキング部２２から入力された図８または図９の重要度のついた検索結果文書２つを入力として、以下のように類似度を計算する。
［数６］
2014050002.tif 000008
【００１４】
ｃａｓｅ１の場合は、クエリ類似度計算部２３は、数式６のように計算結果１．０を出力する。
［数７］
2014050002.tif 000009
【００１５】
ｃａｓｅ２の場合は、クエリ類似度計算部２３は、数式７のように計算結果０．３３５を出力する。
従来手法の場合では、検索結果の共通の文書の割合では、ｃａｓｅ１でそれぞれの検索結果の３／５、３／３であり、平均すると０．８、ｃａｓｅ２ではそれぞれの検索結果の３／５、３／４であり平均すると０．６７５となり検索意図が異なるクエリに対しても、類似度を大きく計算してしまっていた。
一方、本発明の実施形態では、検索意図が同じｃａｓｅ１では１．０、検索意図が異なるｃａｓｅ２では０．３３５と、検索意図が異なるクエリに対してより小さい類似度を計算することができる。
以上、実施形態を用いて本願発明を説明したが、本願発明は、上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。この出願は、２０１２年９月２８日に出願された日本出願特願２０１２−２１７１１８を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【００１６】
本発明は、クエリ推薦システム、文書ランキングシステムといった用途に適用できる。
【符号の説明】
【００１７】
１  ＣＰＵ
２  ＲＡＭ
３  記憶装置
４  通信インターフェース
５  入力装置
６  出力装置
２１  検索結果取得部
２２  検索結果ランキング部
２３  クエリ類似度計算部
３１  検索対象文書記憶部
３２  クエリ−評価記録記憶部
【図１】
2014050002.tif 000011
【図２】
2014050002.tif 000012
【図３】
2014050002.tif 000013
【図４】
2014050002.tif 000014
【図５】
2014050002.tif 000015
【図６】
2014050002.tif 000016
【図７】
2014050002.tif 000017
【図８】
2014050002.tif 000018
【図９】
2014050002.tif 000019
【図１０】
2014050002.tif 000020
【図１１】
2014050002.tif 000021
【国際調査報告】
2014050002.tif 000022
2014050002.tif 000023
2014050002.tif 000024
2014050002.tif 000025