(57)【特許請求の範囲】
【請求項１】
入力されたクエリに対して目的とするページを検索するための文書検索装置であって、
検索ログ記憶手段から指定された期間内の検索ログを抽出し、選択済み検索ログ記憶手段に格納するログ期間選択手段と、
前記検索ログ記憶手段の検索ログからユーザＩＤとクエリを選択し、該ユーザＩＤと該クエリに対応するレコードを該検索ログ記憶手段から取得して、該レコードをＵＲＬ毎に集約し、該ユーザＩＤのユーザが該クエリにおいて、当該ＵＲＬ（ページ）をクリックしたクリック回数を取得して、該ユーザが該クエリにおけるクリックの偏りを求め、所定の条件を満たす場合に、｛ユーザＩＤ，クエリ，ページ｝の組をブックマーククエリ記憶手段に出力するブックマーククエリ選択手段と、
ユーザからユーザＩＤと検索クエリが入力されると、前記ブックマーククエリ記憶手段を参照して、該検索クエリがブックマーククエリである場合は対象ページへの遷移を行う検索手段と、
を有し、
前記ブックマーククエリ選択手段は、
前記クリックの偏りが最大のとき多様なページをクリックしているとし、小さいほど特定のページをクリックしているものとするクリックエントロピーを求め、該クリックエントロピーが、所定の閾値Ａ以下で、かつ、クエリにおいて最もクリックされたページのクリック回数が所定の閾値Ｂ以上のであれば、前記｛ユーザＩＤ，クエリ，ページ｝の組をブックマーククエリとして、ブックマーククエリ記憶手段に出力する手段を含む
ことを特徴とする文書検索装置。
【請求項２】
入力されたクエリに対して目的とするページを検索するための文書検索方法であって、
ログ期間選択手段が、検索ログ記憶手段から指定された期間内の検索ログを抽出し、選択済み検索ログ記憶手段に格納するログ期間選択ステップと、
ブックマーククエリ選択手段が、前記検索ログ記憶手段の検索ログからユーザＩＤとクエリを選択し、該ユーザＩＤと該クエリに対応するレコードを該検索ログ記憶手段から取得して、該レコードをＵＲＬ毎に集約し、該ユーザＩＤのユーザが該クエリにおいて、当該ＵＲＬ（ページ）をクリックした回数を取得して、該ユーザが該クエリにおけるクリックの偏りを求め、所定の条件を満たす場合に、｛ユーザＩＤ，クエリ、ページ｝の組をブックマーククエリ記憶手段に出力するブックマーククエリ選択ステップと、
を有するブックマーククエリ抽出過程と、
検索手段が、ユーザからユーザＩＤと検索クエリが入力されると、前記ブックマーククエリ記憶手段を参照して、該検索クエリがブックマーククエリである場合は対象ページへの遷移を行う検索過程と、
を行い、
前記ブックマーククエリ選択ステップにおいて、
前記クリックの偏りが最大のとき多様なページをクリックしているとし、小さいほど特定のページをクリックしているものとするクリックエントロピーを求め、該クリックエントロピーが、所定の閾値Ａ以下で、かつ、クエリにおいて最もクリックされたページのクリック回数が所定の閾値Ｂ以上のであれば、前記｛ユーザＩＤ，クエリ、ページ｝の組をブックマーククエリとして、ブックマーククエリ記憶手段に出力する
ことを特徴とする文書検索方法。
【請求項３】
コンピュータを、
請求項１に記載の文書検索装置の各手段として機能させるための文書検索プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書検索装置及び方法及びプログラムに係り、特に、文書の検索結果を表示するための文書検索装置及び方法及びプログラムに関する。
【背景技術】
【０００２】
ウェブ検索のような膨大な検索結果の中から、ユーザが入力したクエリの検索結果ページに素早くアクセスするため、検索結果を閲覧することなく、システムが最良と判断したページに自動的に遷移するような機能を有する検索エンジンがある。例えば、Google(登録商標）検索では、検索クエリとI'm feeling luckyボタンを押すことにより、自動的に当該クエリの検索結果の最上位のページに遷移する（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２００２−５０２０７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記従来の技術は、例えば、ブックマークの変わりに「辞書」というクエリを検索エンジンに入力することによって、検索結果の中から普段使っている辞書サービスを提供しているサイトを選択することにより、手軽に目的のページに到達することが可能である。このように、ユーザがブックマークのように、目的のページに到達するために検索エンジンに入力するクエリを「ブックマーククエリ」と呼ぶ。例え、同じクエリであってもユーザによって目的とするページが異なることがあるため、従来技術の場合には、入力されたクエリに対する遷移先のページが、ユーザが目的とするウェブページであるとは限らないという可能性がある。そのため、ユーザが目的とするウェブページでないページに遷移された場合、ユーザは検索エンジンの画面に戻り、再び検索操作を行う必要があり、検索行動に時間がかかるという問題がある。
【０００５】
本発明は、上記の点に鑑みなされたもので、ユーザが検索結果を閲覧することなく、高い確率で目的のページに到達することが可能な文書検索装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の課題を解決するため、本発明（請求項１）は、入力されたクエリに対して目的とするページを検索するための文書検索装置であって、
検索ログ記憶手段から指定された期間内の検索ログを抽出し、選択済み検索ログ記憶手段に格納するログ期間選択手段と、
前記検索ログ記憶手段の検索ログからユーザＩＤとクエリを選択し、該ユーザＩＤと該クエリに対応するレコードを該検索ログ記憶手段から取得して、該レコードをＵＲＬ毎に集約し、該ユーザＩＤのユーザが該クエリにおいて、当該ＵＲＬ（ページ）をクリックした回数を取得して、該ユーザが該クエリにおけるクリックの偏りを求め、所定の条件を満たす場合に、｛ユーザＩＤ，クエリ，ページ｝の組をブックマーククエリ記憶手段に出力するブックマーククエリ選択手段と、
ユーザからユーザＩＤと検索クエリが入力されると、前記ブックマーククエリ記憶手段を参照して、該検索クエリがブックマーククエリである場合は対象ページへの遷移を行う検索手段と、を有し、
前記ブックマーククエリ選択手段は、
前記クリックの偏りが最大のとき多様なページをクリックしているとし、小さいほど特定のページをクリックしているものとするクリックエントロピーを求め、該クリックエントロピーが、所定の閾値Ａ以下で、かつ、クエリにおいて最もクリックされたページのクリック回数が所定の閾値Ｂ以上のであれば、前記｛ユーザＩＤ，クエリ，ページ｝の組をブックマーククエリとして、ブックマーククエリ記憶手段に出力する手段を含む。
【発明の効果】
【０００９】
本発明によれば、検索ログを用いて、ユーザ毎にブックマーククエリを判別することにより、ユーザが検索結果を閲覧することなく、高い確率で目的のページに到達することが可能となり、ユーザの検索時間を短縮することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１の実施の形態におけるブックマーククエリ抽出装置の構成図である。
【図２】本発明の第１の実施の形態における検索ログＤＢの例である。
【図３】本発明の第１の実施の形態における選択済み検索ログＤＢの例である。
【図４】本発明の第１の実施の形態におけるブックマーククエリＤＢの例である。
【図５】本発明の第１の実施の形態におけるログ期間選択部の処理の流れである。
【図６】本発明の第１の実施の形態におけるブックマーククエリ抽出部の処理の流れである。
【図７】本発明の第２の実施の形態における文書検索装置の構成図である。
【図８】本発明の第２の実施の形態における文書検索装置の処理の流れである。
【発明を実施するための形態】
【００１１】
以下図面と共に、本発明の実施の形態を説明する。
【００１２】
最初に以下で用いる用語について説明する。
【００１３】
・ブックマーククエリ：ユーザが検索エンジンに対してクエリを入力し、目的のページを選択することで、ブラウザのブックマーク機能の代わりに検索エンジンを利用する際に用いられるクエリ。
【００１４】
・ブックマークページ：ブックマーククエリの閲覧対象となるページ。
【００１５】
・クリックエントロピー：ユーザが当該クエリにおいてどれだけ特定のページをクリックしているかという情報量。小さいほど、特定のエージをクリックしており、大きいほど、多様なページをクリックしていることを表す。
【００１６】
以下の実施の形態では、最初に前処理として、ブックマーククエリを抽出するブックマーククエリ抽出部の処理について示し、次に、当該ブックマーククエリ抽出部により出力されたブックマーククエリを用いて文書を検索する文書検索装置について説明する。
【００１７】
［第１の実施の形態］
本実施の形態では、後述する第２の実施の形態の文書検索装置において入力される検索クエリとのマッチングを行うためのブックマーククエリＤＢを生成する処理を示す。
【００１８】
図１は、本発明の第１の実施の形態におけるブックマーククエリ抽出部の構成を示す。
【００１９】
同図に示すブックマーククエリ抽出装置１は、ログ期間選択部４０、選択済み検索ログＤＢ５０、ブックマーククエリ抽出部２０から構成され、ログ期間選択部４０は検索ログＤＢ１０に接続され、ブックマーククエリ抽出部２０は、ブックマーククエリＤＢ３０に接続されている。ブックマーククエリ抽出装置１は、検索ログＤＢ１０のデータを入力として受け取り、ブックマーククエリを抽出しブックマーククエリＤＢ３０に出力する。
【００２０】
図２に、検索ログＤＢ１０の例を示す。検索ログＤＢ１０は、検索エンジンにおけるユーザの検索履歴を格納しており、ユーザがどのクエリで、どのようなページをいつクリックしたのかという情報を格納している。ここで、検索ログＤＢ１０のユーザＩＤは、検索を行ったユーザＩＤ、クエリは入力クエリ、ＵＲＬはクリックされたＵＲＬ、時刻はクリックされた時刻を表している。
【００２１】
図３に、選択済み検索ログＤＢ５０の例を示す。それぞれのカラムは検索ログＤＢ１０と同じ意味である。
【００２２】
図４にブックマーククエリＤＢ３０の例を示す。ブックマーククエリＤＢ３０は、一つのレコードがユーザＩＤ、クエリ、ブックマーク対象のＵＲＬを保持する。
【００２３】
以下に、ブックマーククエリ抽出装置１の構成要素の機能を説明する。
【００２４】
ログ期間選択部４０は、検索ログＤＢ１０のデータを読み込み、予め設定された期間（開始時刻、終了時刻）に従って絞り込んだ結果を選択済み検索ログＤＢ５０に出力する。
【００２５】
図５にログ期間選択部４０における、ログ期間のフィルタリング処理の流れを示す。処理を行う前に、事前に開始時刻Ｔbと終了時刻Ｔeが設定されているものとする。
【００２６】
ステップ１０１）検索ログＤＢ１０から未処理のレコードを読み込む。
【００２７】
ステップ１０２）読み込んだユーザの検索履歴を時間で絞り込む。具体的には、レコードの時刻が開始時刻Ｔbと終了時刻Ｔeの範囲に含まれているかを判定する。含まれていればステップ１０３に移行し、含まれていなければステップ１０４に移行する。
【００２８】
ステップ１０３）当該レコードを選択済み検索ログＤＢ５０に出力する。
【００２９】
ステップ１０４）検索ログＤＢ１０に未処理のレコードがある場合はステップ１０１に戻る。存在しない場合には処理を終了する。
【００３０】
上記のように、事前にログ期間選択部４０において、指定された期間のレコードを抽出することで、ユーザの指定された期間のみの検索履歴を用いることにより高精度なブックマーククエリ判別が可能となる。
【００３１】
次に、ブックマーククエリ選択部２０の処理について説明する。
【００３２】
図６にブックマーククエリ選択部２０の処理の流れを示す。
【００３３】
ステップ２０１）  選択済み検索ログ５０のデータのうち、未処理のユーザＩＤとクエリを選択し、ユーザui、クエリｑjとする。
【００３４】
ステップ２０２）  選択済み検索ログＤＢ５０からユーザui、クエリｑjに該当するレコードを取得し、URL毎に集約する。この集合Ｐとする。
【００３５】
ステップ２０３）  URL集合Pから未処理のURLを取得し、ページｐkとする。
【００３６】
ステップ２０４）  選択済み検索ログＤＢ５０からui、ｑj，ｐk，ｑｊが含まれるレコード数を取得し、ユーザuiがクエリｑjにおいてページｐkをクリックした回数ｃ（ui，ｑj，ｐk，）として、一時的にメモリ（図示せず）に記憶する。
【００３７】
ステップ２０５）  集合Ｐに未処理のURLがあればステップ２０３に戻り、そうでなければステップ２０６に移行する。
【００３８】
ステップ２０６）  ユーザの検索履歴から、ユーザがあるクエリにおいて、どれだけ特定のページを集中してクリックしているかという情報を用いてブックマーククエリを判別する。具体的には、ユーザのクエリにおけるクリックエントロピーＨ（ui，ｑj）を式（１）にしたがって計算する。クリックエントロピーＨ（ui，ｑj）は、ユーザのクエリにおけるクリックの偏りを表し、偏りが最大のとき、すなわちユーザuiがクエリｑjにおいて、ただ一つのページをクリックした場合に値が０となり、最小となる。
【００３９】
【数１】
0005579140.tif 000002
ここで、
【００４０】
【数２】
0005579140.tif 000003
上記の式は、ユーザuiがクエリｑjにおいてどれだけ偏っているかというエントロピーを求めている。ユーザuiのクエリｑjに対する総クリック数のうち、あるページｐkの比率を計算し(2)、それらの平均符号長を計算し(3)、それをクリックの偏りスコアとして利用している(1)。当該クエリにおいて、クリックエントロピーは、一つのページしかクリックしない場合に０となり、クリックが一様に散らばっている場合に１となる。
【００４１】
ステップ２０７）予め設定されたクリックエントロピーに対する閾値
【００４２】
【数３】
0005579140.tif 000004
と、クリック回数に対する閾値
【００４３】
【数４】
0005579140.tif 000005
に対して、
【００４４】
【数５】
0005579140.tif 000006
を満たす場合、ステップ２０８に移行し、そうでなければステップ２０９に移行する。
【００４５】
上記の処理は、エントロピーが閾値以下、すなわち、ある程度以上偏ってクリックされており、かつ、該クエリにおいて最もクリックされたページがクリック数c（ｕｉ，qｊ，pｋ）が閾値以上であるときに、ブックマーククエリと判別する。これにより、特定のページが、ある程度以上クリックされているという特徴に基づいて判断することができる。
【００４６】
ステップ２０８）  ブックマーククエリＤＢ３０に、ユーザui、クエリｑj、ページｐkの組｛ui，ｑj，ｐk｝を出力する。ここでのページｐkの候補が複数ある場合は、その中でクリック数が最大のもの、すなわち、
【００４７】
【数６】
0005579140.tif 000007
を選択する。
【００４８】
ステップ２０９）選択済み検索ログＤＢ５０に未処理のユーザ、クエリがある場合にはステップ２０１に戻る。そうでなければ処理を終了する。
【００４９】
上記のブックマーク抽出部２０において、各ユーザの検索履歴を入力として、ユーザ毎にクエリのクリックエントロピーを計算し、予め設定されたクリックエントロピーとクリック数の閾値によって判断することで、ブックマーククエリを判別する。従来技術では、当該クエリにおいて、あるページへのクリック履歴は利用していたものの、当該クエリその他へのページへのクリック情報を利用していなかったが、本発明では、当該クエリにおける全ページに対するクリックの偏り具合（クリックエントロピー）を考慮することで、ブックマークのクエリの判別が可能となる。
【００５０】
［第２の実施の形態］
次に、本実施の形態では、上記の第１の実施の形態のブックマーククエリ抽出装置１により出力されたブックマーククエリＤＢ３０を用いて検索を行う場合について説明する。
【００５１】
図７は、本発明の第２の実施の形態における文書検索装置の構成を示す。
【００５２】
同図に示す文書検索装置２は、第１の実施の形態で生成されたブックマーククエリＤＢ３０、ブックマーククエリ処理部１００、文書インデクスＤＢ６０、クエリ処理部７０、検索スコア計算部８０、検索結果提示部９０から構成され、ブックマーククエリ処理部１００は、ブックマーククエリＤＢ３０に、クエリ処理部７０は文書インデクスＤＢ６０に接続されている。
【００５３】
文書検索装置２は、ユーザＩＤと検索クエリを入力として受け取り、入力がブックマーククエリだった場合には、対象ページへの遷移を行う。
【００５４】
以下に、文書検索装置２の各構成要素の機能について図８のフローチャートに沿って説明する。
【００５５】
ステップ３０１）  ブックマーク処理部１００は、入力されたユーザＩＤ、検索クエリについてブックマーククエリＤＢ３０を走査する。
【００５６】
ステップ３０２）  ブックマーク処理部１００は、該当するＵＲＬが存在する場合には、当該ＵＲＬへページ遷移を行う。該当するＵＲＬが存在しない場合には、通常の検索処理を行うため、クエリ処理部７０の処理を行う。
【００５７】
ステップ３０３）  クエリ処理部７０は、クエリを入力として受け取り、文書インデクスＤＢ６０から文書の取得を行い、スコア要因値行列Ｄを算出する。具体的には、Ｍ個のスコア要因を用いて、文書インデクスＤＢ６０からＮ件の検索結果集合を取得した際、そのスコア要因行列Dは、
【００５８】
【数７】
0005579140.tif 000008
と表現する。ここで、Ｄのｉ行目がｉ版目の検索結果のスコア要因値を表している。例えば、ｄ23は、２番目の文書に対する３番目のスコア要因値である。また、ｄ１はＭ次元のベクトルで、１番目の文書のスコア要因値を表す。
【００５９】
ステップ３０４）検索スコア計算部８０は、クエリ処理部７０が出力したスコア要因値行列Ｄを入力として受け取り、各文書の検索スコアを計算する。
【００６０】
スコア要因行列の各行要素ｄｋのスコア、すなわち、ｋ番目の文書に対する検索スコアｓｋは、予め設定されたスコア要因に対する重みベクトルｗとの内積
ｓk=ｗTｄk                               (5)
によって算出する。
【００６１】
ステップ３０５）  検索結果提示部９０は、検索スコアベクトルｓを受け取り、検索スコアｓｋの降順に、降順にクエリに対する検索結果を表示する。
【００６２】
なお、本実施の形態で示した文書検索装置２は、第１の実施の形態のブックマーククエリ抽出装置２を包含した構成であってもよく、この場合は、ブックマーククエリＤＢ３０を予め作成しておくものとする。
【００６３】
上記のように、ユーザから入力された検索クエリに対して、ブックマーククエリ抽出装置１で生成したブックマーククエリＤＢ３０に、該ユーザと該クエリと同一のレコードが存在する場合には、当該レコードのページを用いることで、高い確率でユーザが当該クエリで目的とするページを推定することが可能となり、ユーザが目的のページに遷移することが可能となる。このため、ユーザがクエリの入力操作を行うだけで、即座に目的のページに遷移することができる。また、検索ランキング上位にユーザの目的のページを表示することができる。
【００６４】
なお、前述の図１のブックマーククエリ抽出装置及び図７に示す文書検索装置の構成要素の動作をプログラムとして構築し、ブックマーククエリ抽出装置、文書検索装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【００６５】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【符号の説明】
【００６６】
１  ブックマーククエリ抽出装置
２  文書検索装置
１０  検索ログＤＢ
２０  ブックマーククエリ抽出部
３０  ブックマーククエリＤＢ
４０  ログ期間選択部
５０  選択済み検索ログＤＢ
６０  文書インデクスＤＢ
７０  クエリ処理部
８０  検索スコア計算部
９０  検索結果提示部
１００  ブックマーククエリ処理部
【図１】
0005579140.tif 000009
【図２】
0005579140.tif 000010
【図３】
0005579140.tif 000011
【図４】
0005579140.tif 000012
【図５】
0005579140.tif 000013
【図６】
0005579140.tif 000014
【図７】
0005579140.tif 000015
【図８】
0005579140.tif 000016