(57)【要約】【課題】より一般的な検索要求の属性をクエリに付与することできる検索装置、検索方法及びプログラムを提供すること。【解決手段】検索サーバ１０は、入力クエリと、この入力クエリが検索エンジンにより検索された検索結果のＵＲＬのうち、ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される訓練用クリックログＤＢ１２と、訓練用クリックログＤＢ１２に記憶される入力クエリ及びクリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成部２１と、訓練データを用いて学習データの機械学習を実行する機械学習実行部２２と、機械学習された学習データに基づいて、訓練用クリックログＤＢ１２に記憶され、且つ訓練データには含まれない入力クエリに対し、検索要求属性を推定する属性推定部２３と、推定された入力クエリの検索要求属性と、この入力クエリとを記憶するクエリ属性辞書１６と、を備える。【選択図】図３
2010033377.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置において、
前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段と、
前記検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成手段と、
前記訓練データを用いて学習データの機械学習を実行する機械学習実行手段と、
前記機械学習実行手段により機械学習された学習データに基づいて、前記検索履歴記憶手段に記憶され、且つ前記訓練データには含まれない入力クエリに対し、検索要求属性を推定する属性推定手段と、
前記属性推定手段により推定された前記入力クエリの検索要求属性と、当該入力クエリとを記憶するクエリ属性記憶手段と、を更に備えることを特徴とする検索装置。
【請求項２】
前記訓練データ作成手段は、前記訓練データとして、少なくとも前記検索履歴記憶手段に記憶される前記入力クエリを含む訓練クエリと、前記クリックＵＲＬに基づくクリック素性と、前記訓練クエリの検索要求属性とを作成することを特徴とする請求項１に記載の検索装置。
【請求項３】
前記訓練データ作成手段は、前記クリック素性として、ドメイン名、サイト名、ディレクトリ等の前記クリックＵＲＬの一部分を用いることを特徴とする請求項２に記載の検索装置。
【請求項４】
前記訓練データ作成手段は、前記訓練クエリとして、前記検索履歴記憶手段に記憶された複数の前記入力クエリを含むクエリグループを用いることを特徴とする請求項２に記載の検索装置。
【請求項５】
セッションと、当該セッション内における前記クリックＵＲＬとを対応付けて記憶するセッション履歴記憶手段を更に備え、
前記訓練データ作成手段は、前記入力クエリに対する前記検索エンジンによる検索結果において、前記セッション履歴記憶手段に記憶されたセッション内で最後のクリック対象となったクリックＵＲＬのファイルの属性を前記検索要求属性として用いることを特徴とする請求項２に記載の検索装置。
【請求項６】
前記訓練データ作成手段は、前記入力クエリに対する前記検索エンジンによる検索結果において、所定期間内又は所定操作数内に予め属性が設定されたファイルに前記端末装置がアクセスした場合に、当該ファイルの属性を前記検索要求属性として用いることを特徴とする請求項２に記載の検索装置。
【請求項７】
前記クエリ属性記憶手段に記憶された入力クエリ及び検索要求属性と当該検索要求属性に応じた所定の条件とに基づいて、前記端末装置により入力されたユーザ入力クエリを前記検索エンジンにより前記検索要求属性に応じた検索処理を実行する検索実行手段と、
前記端末装置により入力されたユーザ入力クエリを前記検索エンジンにより通常検索処理を実行する通常検索実行手段と、
前記検索実行手段により得られた検索結果と、前記通常検索実行手段により得られた検索結果とで重複する検索結果を併合する検索結果併合手段と、
前記検索結果併合手段により併合された検索結果を前記端末装置に提示する提示手段と、を更に備えることを特徴とする請求項２に記載の検索装置。
【請求項８】
前記クエリ属性記憶手段に記憶された入力クエリ及び検索要求属性に基づいて、前記検索履歴記憶手段に記憶された複数の前記クリック素性にクラスタリングを実行してクリック素性グループを作成するクリック素性クラスタリング手段を更に備えることを特徴とする請求項３に記載の検索装置。
【請求項９】
前記クエリ属性記憶手段に記憶された入力クエリ及び検索要求属性に基づいて、前記検索履歴記憶手段に記憶された複数の入力クエリにクラスタリングを実行してクエリグループを作成するクエリクラスタリング手段を更に備えることを特徴とする請求項４に記載の検索装置。
【請求項１０】
ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置の検索方法において、
前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成ステップと、
前記訓練データを用いて学習データの機械学習を実行する機械学習実行ステップと、
前記機械学習実行ステップにより機械学習された学習データに基づいて、前記検索履歴記憶手段に記憶され、且つ前記訓練データには含まれない入力クエリに対し、検索要求属性を推定する推定ステップと、
前記推定ステップにより推定された前記入力クエリの検索要求属性と、当該入力クエリとをクエリ属性記憶手段に記憶させる属性記憶制御ステップと、を備えることを特徴とする検索方法。
【請求項１１】
ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置のコンピュータにより実行されるコンピュータプログラムにおいて、
前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成ステップと、
前記訓練データを用いて学習データの機械学習を実行する機械学習実行ステップと、
前記機械学習実行ステップにより機械学習された学習データに基づいて、前記検索履歴記憶手段に記憶され、且つ前記訓練データには含まれない入力クエリに対し、検索要求属性を推定する推定ステップと、
前記推定ステップにより推定された前記入力クエリの検索要求属性と、当該入力クエリとをクエリ属性記憶手段に記憶させる属性記憶制御ステップと、をコンピュータに実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検索装置、検索方法及びプログラムに関する。
【背景技術】
【０００２】
近年、Ｗｅｂ検索サービスの高度化に伴い、Ｗｅｂ検索に用いるクエリの背景となる検索者の検索意図を推定して、検索結果を改良することが重要となってきている。
【０００３】
Ｗｅｂ検索におけるクエリの検索要求指向としては、ナビゲーション指向、トランザクション指向等が挙げられる。ここで、ナビゲーション指向型の検索要求とは、ある特定のＷｅｂページ（又はある対象物の代表的なＷｅｂページ）に到達することを要求する検索である。例えば、ある特定の大学のホームページに到達することを目的とするような検索は、この検索要求に当たる。
【０００４】
トランザクション指向型の検索要求とは、インタラクションを伴うようなＷｅｂページ（オンラインショッピング、Ｗｅｂが仲介する様々なサービス等）に到達することを要求する検索である。例えば、東京都に存在するホテルから自分の要求に合ったホテルを探し、予約することを目的としたような検索は、この検索要求に当たる。
【０００５】
例えば、非特許文献１には、機械学習によりナビゲーション指向型の検索要求を有するクエリを判定する技術が開示されている。
【非特許文献１】Ｌｕ，Ｙ．  Ｐｅｎｇ，Ｆ．  Ｌｉ，Ｘ．  ａｎｄ  Ａｈｍｅｄ，Ｎ．（２００６）Ｃｏｕｐｌｉｎｇ  ｆｅａｔｕｒｅ  ｓｅｌｅｃｔｉｏｎ  ａｎｄ  ｍａｃｈｉｎｅ  ｌｅａｒｎｉｎｇ  ｍｅｔｈｏｄｓ  ｆｏｒ  ｎａｖｉｇａｔｉｏｎａｌ  ｑｕｅｒｙ  ｉｄｅｎｔｉｆｉｃａｔｉｏｎ，  Ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＣＩＫＭ  ２００６．
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示された技術は、特定の検索要求について判定する技術であるため、他の検索要求について判定することはできない。
【０００７】
そこで、本発明は、より一般的な検索要求の属性をクエリに付与することできる検索装置、検索方法及びプログラムを提供することを目的とする。
なお、検索要求の属性（以下、検索要求属性という）とは、ナビゲーション指向型やトランザクション指向型等に留まらず、より詳細な利用者の検索意図に関連する属性を指す。
【課題を解決するための手段】
【０００８】
本発明では、以下のような解決手段を提供する。
【０００９】
（１）ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置において、前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段と、前記検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成手段と、前記訓練データを用いて学習データの機械学習を実行する機械学習実行手段と、前記機械学習実行手段により機械学習された学習データに基づいて、前記検索履歴記憶手段に記憶され、且つ前記訓練データには含まれない入力クエリに対し、検索要求属性を推定する属性推定手段と、前記属性推定手段により推定された前記入力クエリの検索要求属性と、当該入力クエリとを記憶するクエリ属性記憶手段と、を更に備えることを特徴とする検索装置。
【００１０】
このように、検索装置は、検索履歴記憶手段に記憶されたクエリと、クリック素性とに基づいて、クエリの検索要求属性を推定する。そして、推定されたクエリの検索要求属性は、例えば検索結果ランキング、広告提示、ユーザに推薦するサービスへのショートカット等の検索サービスに利用することにより、検索サービスの向上を図ることができる。
【００１１】
（２）前記訓練データ作成手段は、前記訓練データとして、少なくとも前記検索履歴記憶手段に記憶される前記入力クエリを含む訓練クエリと、前記クリックＵＲＬに基づくクリック素性と、前記訓練クエリの検索要求属性とを作成することを特徴とする（１）に記載の検索装置。
【００１２】
このように、検索装置は、訓練データとして、訓練クエリと、クリック素性と、訓練クエリの検索要求属性とを作成し、この訓練データを用いて学習データの機械学習を実行する。このため、クエリの検索要求属性を推定するために適した訓練データを用いて学習データの機械学習を実行することができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００１３】
（３）前記訓練データ作成手段は、前記クリック素性として、ドメイン名、サイト名、ディレクトリ等の前記クリックＵＲＬの一部分を用いることを特徴とする（２）に記載の検索装置。
【００１４】
このように、検索装置は、クリックＵＲＬの一部分は、クエリの検索要求属性を絞り込むための重要な情報となる可能性が高い。したがって、クリックＵＲＬの一部分を訓練データとして用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００１５】
（４）前記訓練データ作成手段は、前記訓練クエリとして、前記検索履歴記憶手段に記憶された複数の前記入力クエリを含むクエリグループを用いることを特徴とする（２）に記載の検索装置。
【００１６】
このように、検索装置は、検索要求属性について関連性の高い複数のクエリをクエリグループとする。このため、訓練クエリとしてクエリグループを用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００１７】
（５）セッションと、当該セッション内における前記クリックＵＲＬとを対応付けて記憶するセッション履歴記憶手段を更に備え、前記訓練データ作成手段は、前記入力クエリに対する前記検索エンジンによる検索結果において、前記セッション履歴記憶手段に記憶されたセッション内で最後のクリック対象となったクリックＵＲＬのファイルの属性を前記検索要求属性として用いることを特徴とする（２）に記載の検索装置。
【００１８】
セッション内で最後のクリック対象となったクリックＵＲＬのサフィックス（ｊｐｇ、ｗｍｖ、ｍｐ３、ｈｔｍｌ等）は、クエリの検索要求属性を絞り込むための重要な情報となる可能性が高い。したがって、検索サーバ１０は、訓練データとして、セッション内で最後のクリック対象となったクリックＵＲＬのファイルの属性を検索要求属性として用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００１９】
（６）前記訓練データ作成手段は、前記入力クエリに対する前記検索エンジンによる検索結果において、所定期間内又は所定操作数内に予め属性が設定されたファイルに前記端末装置がアクセスした場合に、当該ファイルの属性を前記検索要求属性として用いることを特徴とする（２）に記載の検索装置。
【００２０】
したがって、セッション内で最後のクリック対象が特定できない場合でも、クリックＵＲＬのファイルの属性を検索要求属性として用いることができる。
【００２１】
（７）前記クエリ属性記憶手段に記憶された入力クエリ及び検索要求属性と当該検索要求属性に応じた所定の条件とに基づいて、前記端末装置により入力されたユーザ入力クエリを前記検索エンジンにより前記検索要求属性に応じた検索処理を実行する検索実行手段と、前記端末装置により入力されたユーザ入力クエリを前記検索エンジンにより通常検索処理を実行する通常検索実行手段と、前記検索実行手段により得られた検索結果と、前記通常検索実行手段により得られた検索結果とで重複する検索結果を併合する検索結果併合手段と、前記検索結果併合手段により併合された検索結果を前記端末装置に提示する提示手段と、を更に備えることを特徴とする（２）に記載の検索装置。
【００２２】
このように検索装置は、クエリの検索要求属性に応じた検索結果を端末装置へ提示することができる。したがって、検索装置を管理する者にとっては、検索サービスの向上を図ることができる。
【００２３】
（８）前記クエリ属性記憶手段に記憶された入力クエリ及び検索要求属性に基づいて、前記検索履歴記憶手段に記憶された複数の前記クリック素性にクラスタリングを実行してクリック素性グループを作成するクリック素性クラスタリング手段を更に備えることを特徴とする（３）に記載の検索装置。
【００２４】
このように、検索装置は、クリック素性をクラスタリングして、グループ化する。そして、このグループ化されたクリック素性グループを検索履歴記憶手段に追加することによって、訓練データを用いて機械学習される学習データの精度を向上させることができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００２５】
（９）前記クエリ属性記憶手段に記憶された入力クエリ及び検索要求属性に基づいて、前記検索履歴記憶手段に記憶された複数の前記クリック素性にクラスタリングを実行してクリック素性グループを作成するクリック素性クラスタリング手段を更に備えることを特徴とする（３）に記載の検索装置。
【００２６】
このように、検索装置は、クエリをクラスタリングして、グループ化する。そして、このグループ化されたクエリグループを検索履歴記憶手段に追加することによって、訓練データを用いて機械学習される学習データの精度を向上させることができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００２７】
（１０）ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置の検索方法において、前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成ステップと、前記訓練データを用いて学習データの機械学習を実行する機械学習実行ステップと、前記機械学習実行ステップにより機械学習された学習データに基づいて、前記検索履歴記憶手段に記憶され、且つ前記訓練データには含まれない入力クエリに対し、検索要求属性を推定する推定ステップと、前記推定ステップにより推定された前記入力クエリの検索要求属性と、当該入力クエリとをクエリ属性記憶手段に記憶させる属性記憶制御ステップと、を備えることを特徴とする検索方法。
【００２８】
（１１）ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置のコンピュータにより実行されるコンピュータプログラムにおいて、前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成ステップと、前記訓練データを用いて学習データの機械学習を実行する機械学習実行ステップと、前記機械学習実行ステップにより機械学習された学習データに基づいて、前記検索履歴記憶手段に記憶され、且つ前記訓練データには含まれない入力クエリに対し、検索要求属性を推定する推定ステップと、前記推定ステップにより推定された前記入力クエリの検索要求属性と、当該入力クエリとをクエリ属性記憶手段に記憶させる属性記憶制御ステップと、をコンピュータに実行させるコンピュータプログラム。
【発明の効果】
【００２９】
本発明によれば、より一般的な検索要求の属性をクエリに付与することできる検索装置、検索方法及びプログラムを提供することができる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明の実施形態について図面を参照しながら説明する。
【００３１】
［検索システム１の機能構成］
図１は、本発明の検索装置の一実施形態に係る検索システム１の概略を示す図である。検索サーバ（検索装置）１０、端末装置２０、及び外部サーバ３０は、通信回線４０を介して接続されている。端末装置２０のユーザは、検索サーバ１０にアクセスし、所定の検索エンジンに対して、所望のＷｅｂ文書に辿り着くためのクエリ（検索キーワード）を入力することにより、検索結果を取得する。ユーザは、この検索結果にリストされたＵＲＬを選択し、外部サーバ３０にて管理されるＷｅｂページを閲覧する。
【００３２】
端末装置２０は、パソコン、携帯電話機、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍ：登録商標）、モバイル、ノートＰＣ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等の端末装置を代表とするものであり、有線又は無線通信を行う通信回線４０を介して、検索サーバ１０から送信される情報を参照できるものであればどのようなものでもよい。また、検索サーバ１０は、必要に応じてＷｅｂサーバ、ＤＢサーバ、アプリケーションサーバを含んで構成してよく、１台のサーバで構成しても、それぞれ別のサーバで構成してもよい。
【００３３】
［検索サーバ１０のハードウェア構成］
図２は、本発明の一実施形態である検索サーバ１０のハードウェア構成を示す図である。図２に示すように、制御部３００を構成するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１０（マルチプロセッサ構成ではＣＰＵ３２０等複数のＣＰＵが追加されてもよい）、バスライン２００、通信Ｉ／Ｆ（Ｉ／Ｆ：インタフェース）３３０、メインメモリ３４０、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）３５０、Ｉ／Ｏコントローラ３６０、ハードディスク３７０、光ディスクドライブ３８０、並びに半導体メモリ３９０を備える。なお、ハードディスク３７０、光ディスクドライブ３８０、並びに、半導体メモリ３９０はまとめて記憶装置４１０と呼ばれる。
【００３４】
制御部３００は、検索サーバ１０を統括的に制御する部分であり、ハードディスク３７０に記憶された各種プログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、本発明に係る各種機能を実現している。
【００３５】
通信Ｉ／Ｆ３３０は、検索サーバ１０が、ネットワークを介して端末装置２０等の他の装置と情報を送受信する場合のネットワーク・アダプタである。
【００３６】
ＢＩＯＳ３５０は、検索サーバ１０の起動時にＣＰＵ３１０が実行するブートプログラムや、検索サーバ１０のハードウェアに依存するプログラム等を記録する。
【００３７】
Ｉ／Ｏコントローラ３６０には、ハードディスク３７０、光ディスクドライブ３８０、及び半導体メモリ３９０等の記憶装置４１０を接続することができる。
【００３８】
ハードディスク３７０は、本ハードウェアを検索サーバ１０として機能させるための各種プログラム、本発明の機能を実行するプログラム及び後述するデータベース等を記憶する。なお、検索サーバ１０は、外部に別途設けたハードディスク（図示せず）を外部記憶装置として利用することもできる。
【００３９】
光ディスクドライブ３８０としては、例えば、ＤＶＤ−ＲＯＭドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＡＭドライブ、ＣＤ−ＲＡＭドライブを使用することができる。この場合は各ドライブに対応した光ディスク４００を使用する。光ディスク４００から光ディスクドライブ３８０によりプログラム又はデータを読み取り、Ｉ／Ｏコントローラ３６０を介してメインメモリ３４０又はハードディスク３７０に提供することもできる。
【００４０】
なお、本発明でいうコンピュータとは、記憶装置、制御部等を備えた検索装置をいい、検索サーバ１０は、記憶装置４１０、制御部３００等を備えた検索装置により構成され、この検索装置は、本発明のコンピュータの概念に含まれる。
【００４１】
以上の例は、検索サーバ１０について主に説明したが、コンピュータに、プログラムをインストールして、そのコンピュータをサーバ装置として動作させることにより上記で説明した機能を実現することもできる。したがって、本発明において一実施形態として説明した検索サーバ１０により実現される機能は、上述の方法を当該コンピュータにより実行することにより、或いは、上述のプログラムを当該コンピュータに導入して実行することによっても実現可能である。
【００４２】
図３は、本発明の検索装置の一実施形態である検索サーバ１０の機能ブロック図である。検索サーバ１０は、クリックログデータベース（以下クリックログＤＢという）１１、訓練用クリックログデータベース（以下訓練用クリックログＤＢという）１２、セッションログデータベース（以下セッションログＤＢという）１３、訓練データデータベース（以下訓練データＤＢという）１４、学習データデータベース（以下学習データＤＢという）１５、クエリ属性辞書１６、検索要求属性対応ＤＢ１７、訓練データ作成部２１、機械学習実行部２２、属性推定部２３、検索実行部２４、検索結果併合部２５、提示部２６、及びクラスタリング部２７を備える。
【００４３】
クリックログＤＢ１１、訓練用クリックログＤＢ１２、セッションログＤＢ１３、訓練データＤＢ１４、学習データＤＢ１５、クエリ属性辞書１６、及び検索要求属性対応ＤＢ１７は、主として記憶装置４１０により構成される。
また、訓練データ作成部２１、機械学習実行部２２、属性推定部２３、検索実行部２４、検索結果併合部２５、提示部２６、及びクラスタリング部２７は、主として制御部３００により構成される。
【００４４】
クリックログＤＢ（検索履歴記憶手段）１１は、クエリと、このクエリを検索キーワードとして検索エンジンにより検索された検索結果のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）のうち、ユーザの操作する任意の端末装置２０により選択（クリック）されたＵＲＬ（以下クリックＵＲＬともいう）とを対応付けて履歴データとして記憶する。この履歴データをクリックログと呼ぶ。クリックログは、例えば、図４に示すように、クリックデータテーブル１１１として蓄積的に記憶される。図４に示すクリックデータテーブル１１１には、クリックＵＲＬを選択した端末装置２０のＩＰアドレス、クリックＵＲＬが選択された時間、セッション、クエリ、クリックＵＲＬ、及びクリックＵＲＬの検索ランクが対応付けて記憶されている。
【００４５】
訓練用クリックログＤＢ（検索履歴記憶手段）１２は、クリックログＤＢ１１から任意に選択したクリックログが記憶され、訓練データの作成に用いられる。クリックログＤＢ１１から訓練用クリックログを選択する方法としては、例えば、無作為抽出、頻度の高いデータから順に抽出する、頻度の高いクエリグループから抽出する等が挙げられる。なお、クエリグループについては後述する。
【００４６】
セッションログＤＢ（セッション履歴記憶手段）１３は、セッションと、このセッション内における前記クリックＵＲＬとを対応付けて履歴データとして記憶する。この履歴データをセッションログと呼ぶ。セッションログは、例えば、図５に示すように、セッションログテーブル１３１として累積的に記憶される。図５に示すセッションログテーブル１３１には、クリックＵＲＬを選択した端末装置２０のＩＰアドレス、クリックＵＲＬが選択された時間、セッション、リファラ、及びクリックＵＲＬが対応付けて記憶されている。
【００４７】
ここで、セッション及びリファラについて説明する。セッションとは、ＷＷＷにおけるアクセス数の単位の一つであり、Ｗｅｂページを訪れたユーザがサイト内で行なう一連の行動をまとめて１セッションという。同一のユーザでも、ある程度間隔が開いた場合は、新しいセッションとしてカウントする。
【００４８】
リファラとは、あるＷｅｂページのリンクをクリックして別のＷｅｂページに移動したときのリンク元となるＷｅｂページであり、本実施形態においては、クエリに応じて検索エンジンにより検索された検索結果である。
【００４９】
訓練データ作成部２１は、訓練データとして、少なくとも訓練用クリックログＤＢ１２に記憶されるクエリを含む訓練クエリと、クリックＵＲＬに基づくクリック素性と、訓練クエリの検索要求属性とを作成する。
【００５０】
このように、検索サーバ１０は、訓練データとして、訓練クエリと、クリック素性と、訓練クエリの検索要求属性とを作成し、この訓練データを用いて学習データの機械学習を実行する。このため、クエリの検索要求属性を推定するために適した訓練データを用いて学習データの機械学習を実行することができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００５１】
具体的には、訓練データ作成部２１は、訓練クエリの検索要求属性を予め付与しておくことができる。
【００５２】
また、訓練データ作成部２１は、クリック素性として、ドメイン名、サイト名、ディレクトリ等のクリックＵＲＬの一部分を用いることができる。
【００５３】
このため、例えば検索要求属性が「自動車」である場合、クリックＵＲＬの一部としての「ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ」のような例が挙げられる。このようにクリックＵＲＬの一部分は、クエリの検索要求属性を絞り込むための重要な情報となる可能性が高い。したがって、クリックＵＲＬの一部分を訓練データとして用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００５４】
また、訓練データ作成部２１は、訓練クエリとして、訓練用クリックログＤＢ１２に記憶された複数のクエリを含むクエリグループを用いることができる。クエリグループとは、後述するクラスタリング部２７により作成される。クエリグループは、例えば［カ○ーラ，ト△タカ○ーラ，カ○ーラト△タ］のように表される。
【００５５】
このように、検索サーバ１０は、検索要求属性について関連性の高い複数のクエリをクエリグループとする。このため、訓練クエリとしてクエリグループを用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００５６】
また、訓練データ作成部２１は、クエリに対する検索エンジンによる検索結果において、セッションログＤＢ１３に記憶されたセッション内で最後のクリック対象となったクリックＵＲＬのファイルの属性を検索要求属性として用いることができる。
【００５７】
セッション内で最後のクリック対象となったクリックＵＲＬのサフィックス（ｊｐｇ、ｗｍｖ、ｍｐ３、ｈｔｍｌ等）は、クエリの検索要求属性を絞り込むための重要な情報となる可能性が高い。例えば、「ｊｐｇ」は静止画、「ｗｍｖ」は動画、「ｍｐ３」は音楽、「ｈｔｍｌ」はＷｅｂページにそれぞれ関連性が強いと考えられる。したがって、検索サーバ１０は、訓練データとして、セッション内で最後のクリック対象となったクリックＵＲＬのファイルの属性を検索要求属性として用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００５８】
また、訓練データ作成部２１は、入力クエリに対する検索エンジンによる検索結果において、所定期間内又は所定操作数内に予め属性が設定されたファイルに端末装置２０がアクセスした場合に、このファイルの属性を検索要求属性として用いることができる。
【００５９】
したがって、セッション内で最後のクリック対象が特定できない場合でも、クリックＵＲＬのファイルの属性を検索要求属性として用いることができる。
【００６０】
このような訓練データとしての訓練クエリ、クリック素性、及び検索要求属性を訓練データ作成部２１は、三つ組みに変換する。具体的には、訓練データ作成部２１は、クリック素性が「カ○ーラ」、クリック素性が「ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ」、検索要求属性が「自動車」の場合には、（カ○ーラ、ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ、自動車）のような三つ組みに変換する。
【００６１】
そして、この三つ組み変換された訓練データを機械学習実行部２２により機械学習する。具体的には、機械学習実行部２２によりクエリの検索要求属性を判別するための判別関数を学習する場合には、学習する各々の検索要求属性をクリック素性のベクター表現で以下のように表す。
（数１）
ａ１＝（ｓ１＝１，ｓ２＝０，ｓ３＝０，ｓ４＝１，ｓ５＝０，・・・，ｓｍ＝０）
ａ２＝（ｓ１＝０，ｓ２＝１，ｓ３＝０，ｓ４＝１，ｓ５＝０，・・・，ｓｍ＝０）
・・・
ａｎ＝（ｓ１＝０，ｓ２＝０，ｓ３＝０，ｓ４＝０，ｓ５＝１，・・・，ｓｍ＝０）・・・式（１）
【００６２】
ここで、ａｎは検索要求属性であり、ｓｍはクリック素性である。具体的には、検索要求属性ａ１において、ｓ１＝１である。これは、クリック素性ｓ１が検索要求属性ａ１に関連することを示している。すなわち、検索要求属性ａ１を有するクエリは、クリック素性がサイト名である場合には、このサイト名を含むクリックＵＲＬが選択されたことを意味する。また、検索要求属性ａ１において、ｓ２＝０である。これは、クリック素性ｓ２が検索要求属性ａ１に関連しないことを示している。
【００６３】
訓練データＤＢ１４は、訓練データ作成部２１により作成された訓練データを記憶する。具体的には、上述したように検索要求属性を予め付与した訓練クエリやクリック素性のベクター表現等を記憶する。
【００６４】
機械学習実行部２２は、訓練データを用いて学習データの機械学習を実行する。訓練データは、上述したように判別関数を学習する場合には、ベクター表現によって表現するため、ＳＶＭ（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ）、ｋＮＮ（ｋ  Ｎｅａｒｅｓｔ  Ｎｅｉｇｈｂｏｒ）、Ｎａｉｖｅ  ｂａｙｅｓ  ｃｌａｓｓｉｆｉｅｒ、ニューラルネットワーク、判別木等の様々な公知の機械学習手法を用いて、判別関数を学習することができる。
【００６５】
学習データＤＢ１５は、機械学習実行部２２により機械学習が実行された学習データを記憶する。具体的には、学習データＤＢ１５には、機械学習実行部２２により機械学習が実行された判別関数が記憶される。
【００６６】
属性推定部２３は、機械学習実行部２２により機械学習された学習データに基づいて、クリックログＤＢ１１に記憶され、且つ訓練用クリックログＤＢ１２には含まれないクエリに対し、検索要求属性を推定する。ここで、学習データには、クリックＵＲＬと、クリック頻度が含まれる。なお、クリック頻度とは、同一のセッションにおける、クリックＵＲＬの頻度であり、訓練用クリックログＤＢ１２に記憶されるクリックＵＲＬと、入力クエリとに基づいて、制御部３００により算出される値である。
そして、属性推定部２３は、推定した検索要求属性と、クエリとをクエリ属性辞書１６に記憶する。
【００６７】
クエリ属性辞書１６は、属性推定部２３により推定されたクエリの検索要求属性と、このクエリとを対応付けて記憶する。
図６は、クエリ属性辞書１６の一例を示す図である。図６では、クエリの検索要求属性が関連性の高いグループに分けられている。例えば、クエリ「カ○ーラ」に対応する検索要求属性１（図６中では属性１と表記）「自動車」、検索要求属性２（図６中では属性２と表記）「中古車」、及び検索要求属性３（図６中では属性３と表記）「国産車」が検索要求属性グループ１として記憶されている。
【００６８】
検索実行部２４は、クエリ属性辞書１６に記憶されたクエリ及び検索要求属性と当該検索要求属性に応じた所定の条件とに基づいて、端末装置２０により入力されたユーザ入力クエリを検索エンジンにより検索要求属性に応じた検索処理を実行する。ここで、検索実行部２４は、所定の条件として、検索要求属性対応ＤＢ１７を適用することができる。
【００６９】
図７は、検索要求属性対応ＤＢ１７に記憶される検索要求属性対応テーブルの一例を示す図である。検索要求属性対応テーブルは、検索要求属性と、この検索供給属性に対応する処理とが対応付けて記憶される。例えば、検索要求属性が「中古車」のときには、対応する処理は「該当するクリックＵＲＬのランクを２上げる」となる。また、検索要求属性が「自動車」のときには、対応する処理は「該当する検索要求属性を有する広告を表示する」となる。また、検索要求属性が「音楽ダウンロード」のときには、対応する処理は「該当するクリックＵＲＬで最も上位のものをランクの１位にする」となる。また、検索要求属性が「音楽ダウンロード」のときには、対応する処理は「該当するクリックＵＲＬのスコアを５％上げる」となる。また、検索要求属性が「音楽ダウンロード」のときには、対応する処理は「該当する検索要求属性を有する広告を表示する」となる。
【００７０】
このように、本実施形態の検索サーバ１０は、クリックログＤＢ１１に記憶されたクエリと、クリック素性とに基づいて、クエリの検索要求属性を推定する。そして、推定されたクエリの検索要求属性は、例えば検索結果ランキング、広告提示、ユーザに推薦するサービスへのショートカット等の検索サービスに利用することにより、検索サービスの向上を図ることができる。
【００７１】
また、検索実行部２４は、端末装置２０により入力されたクエリを検索エンジンにより通常検索処理を実行する。
【００７２】
検索結果併合部２５は、検索実行部２４の検索要求属性に応じた検索処理により得られた検索結果と、検索実行部２４の通常検索処理により得られた検索結果とで重複する検索結果を併合する。
【００７３】
提示部２６は、検索結果併合部２５により併合された検索結果を端末装置２０に提示する。
【００７４】
このように検索サーバ１０は、クエリの検索要求属性に応じた検索結果を端末装置２０へ提示することができる。したがって、検索サーバ１０を管理する者にとっては、検索サービスの向上を図ることができる。また、端末装置２０を操作するユーザにとっては、クエリの検索要求属性に応じた入力クエリの検索結果を得ることができる。
【００７５】
なお、上述した判別関数を機械学習する場合に代えて、クエリの検索要求属性を機械学習により直接、学習することもできる。
この場合には、訓練データ作成部２１は、クリックログＤＢ１１に記憶されたクエリの頻度の大きいものから１００万件ほどについて訓練用クリックログＤＢ１２に記憶する。
【００７６】
そして、訓練データ作成部２１は、訓練用クリックログＤＢ１２に記憶されたクエリのうち、１万件ほどを訓練データとして人手により検索要求属性を付与する。
機械学習実行部２２は、この訓練データを用いて検索要求属性を有するか否かを判別する２値分類器を上述した公知の機械学習手法を用いて機械学習を実行する。
【００７７】
制御部３００は、１００万件ほどのクエリのうち、残る９９万件のクエリを学習した２値分類器を用いて自動分類する。そして、検索要求属性に対応するクエリのリストを作成する。
属性推定部２３は、端末装置２０から受け付けたユーザ入力クエリと、作成されたリストに含まれるクエリとが一致する場合には、このユーザ入力クエリの検索要求属性を作成されたクエリに対応する検索要求属性であると推定する。
【００７８】
次に、クラスタリング部２７について説明する。クラスタリング部２７は、クエリ属性辞書１６に記憶されたクエリ及び検索要求属性に基づいて、訓練用クリックログＤＢ１２に記憶された複数のクリック素性にクラスタリングを実行してクリック素性グループを作成する。具体的には、クラスタリング部２７は、クリック素性としてのドメイン名、サイト名、ディレクトリ等のクリックＵＲＬの一部分をクラスタリングを実行してクリック素性グループを作成する。
【００７９】
また、クラスタリング部２７は、クエリ属性辞書１６に記憶されたクエリ及び検索要求属性に基づいて、訓練用クリックログＤＢ１２に記憶された複数のクエリにクラスタリングを実行してクエリグループを作成する。具体的には、クラスタリング部２７は、訓練用クリックログＤＢ１２に記憶されたクリックＵＲＬ全てにクラスタリングを実行し、クエリグループを作成する。
【００８０】
ここで、クラスタリングを実行する際のクラスタリング方式としては、例えば各々のクエリをクリックＵＲＬの集合で表現して、クリックＵＲＬの集合間での一致度によるワンパスクラスタリングや階層クラスタリング等を適用することができる。
【００８１】
クラスタリング部２７によりクラスタリングを実行した場合には、三つ組み変換された訓練データは、例えば（［カ○ーラ，ト△タカ○ーラ，カ○ーラト△タ］、ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ、自動車）のような構成となる。ここで、クラスタリングされたクエリグループは、「カ○ーラ，ト△タカ○ーラ，カ○ーラト△タ」、クリック素性は、「ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ」、検索要求属性が「自動車」である。
【００８２】
そして、クラスタリング部２７は、クラスタリングを実行したことにより得られたクリック素性グループ及びクエリグループを訓練データＤＢ１４に記憶される訓練データに追加する。すなわち、訓練データにおけるクリック素性としてクリック素性グループを追加する。また、訓練データにおける訓練クエリとしてクエリグループを追加する。
【００８３】
このように、検索サーバ１０は、クエリ及びクリック素性をクラスタリングして、グループ化する。そして、このグループ化されたクエリグループ又はクリック素性グループを訓練データＤＢ１４に追加することによって、訓練データを用いて機械学習される学習データの精度を向上させることができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００８４】
ここで、クラスタリング部２７による処理について詳細に説明する。
上述した式（１）では、クリック素性についてベクターで表現した。ところで、このベクターは、クリックログＤＢ１１に記憶されるクエリについて、
（数２）
ｑ１＝（ｓ１＝１，ｓ２＝０，ｓ３＝０，ｓ４＝１，ｓ５＝０，・・・，ｓｍ＝０）
ｑ２＝（ｓ１＝０，ｓ２＝１，ｓ３＝０，ｓ４＝１，ｓ５＝０，・・・，ｓｍ＝０）
・・・
ｑｎ＝（ｓ１＝０，ｓ２＝０，ｓ３＝０，ｓ４＝０，ｓ５＝１，・・・，ｓｍ＝０）・・・式（２）
と表現することができる。式（２）は、ｎ個のクエリとｍ個のクリック素性というｎ×ｍの２次元の行列で表現される。これにより、クラスタリング部２７は、式（２）をクエリごとに分けたベクターを用いてクエリのクラスタリングを実行することができる。また、クラスタリング部２７は、式（２）をクリック素性ごとに分けたベクターを用いてクリック素性のクラスタリングを実行することができる。
【００８５】
この場合、特にクエリの次元数は、数百万・数千万にも増大する可能性があるため、例えば同一のクラスタ内のクエリは、全て同一視して一つの次元として扱うことが必要となる。
【００８６】
［処理の流れ］
図８は、本実施形態の検索サーバ１０における検索要求属性の推定処理の流れを示すフローチャートである。
ステップＳ１：訓練データ作成部２１は、訓練用クリックログＤＢ１２に記憶された入力クエリに属性を付与する。具体的には、訓練データ作成部２１は、入力クエリに対して予め用意されたクエリを人手により付与される。
【００８７】
ステップＳ２：訓練データ作成部２１は、ステップＳ１において属性が付与された入力クエリを含む訓練クエリと、訓練用クリックログＤＢ１２に記憶されるクリック素性及び検索要求属性とを三つ組みに変換する。具体的には、訓練データ作成部２１は、訓練クエリが「カ○ーラ」、クリック素性が「ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ」、検索要求属性が「自動車」の場合には、（カ○ーラ、ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ、自動車）のような三つ組みに変換する。そして、三つ組みに変換された訓練データは、訓練データ作成部２１により訓練データＤＢ１４に記憶される。
【００８８】
ステップＳ３：訓練データ作成部２１は、ステップＳ３において三つ組みに変換された訓練データの検索要求属性をクリック素性のベクター表現で表現する
【００８９】
ステップＳ４：機械学習実行部２２は、ステップ３において得られた訓練データを用いて、学習データの機械学習を実行する。具体的には、機械学習実行部２２は、ステップＳにおいてベクター表現された訓練データを用いて入力クエリの検索要求属性を判別するための判別関数を学習する。そして、機械学習実行部２２は、学習した判別関数を学習データＤＢ１５に記憶させる。
【００９０】
ステップＳ５：属性推定部２３は、機械学習実行部２２により機械学習された判別関数によって、クリックログＤＢ１１に記憶され、且つ訓練用クリックログＤＢ１２には含まれないクエリに対し、検索要求属性を推定する。
【００９１】
ステップＳ６：属性推定部２３は、ステップＳ５において推定された各々の検索要求属性と、この検索要求属性が推定されたクエリとを対応付けてクエリ属性辞書１６に記憶させる。
【００９２】
図９は、本実施形態の検索サーバ１０におけるクエリ属性辞書１６を用いた検索処理の流れを示すフローチャートである。
ステップＳ１１：検索実行部２４は、端末装置２０からのユーザ入力クエリを受け付ける。
ステップＳ１２：検索実行部２４は、クエリ属性辞書１６に記憶されたクエリ及び検索要求属性と検索要求属性対応ＤＢ１７とに基づいて、ステップＳ１１において受け付けたユーザ入力クエリを検索エンジンにより検索要求属性に応じた検索処理を実行する。
【００９３】
ステップＳ１３：検索実行部２４は、ステップＳ１１において受け付けたユーザ入力クエリを検索エンジンにより通常検索処理を実行する。
ステップＳ１４：検索結果併合部２５は、ステップＳ１２において得られた検索結果と、ステップＳ１３において得られた検索結果とで重複する検索結果を併合する。
【００９４】
ステップＳ１５：提示部２６は、ステップＳ１４において併合された検索結果を端末装置２０に提示する。
【００９５】
図１０は、本実施形態の検索サーバ１０におけるクラスタリング処理の流れを示すフローチャートである。
ステップＳ２１：クラスタリング部２７は、クリックログＤＢ１１に記憶されたクエリ又は／及びクリックログＤＢ１１に記憶されたクリックＵＲＬのクラスタリングを実行する。
【００９６】
ステップＳ２２：クラスタリング部２７は、ステップＳ２１においてクラスタリングされた複数のクエリをグループ化する。これにより、上述したように
ステップＳ２３：クラスタリング部２７は、ステップＳ２１においてクラスタリングされた複数のクリックＵＲＬをグループ化する。これにより、上述したように
【００９７】
ステップＳ２３：クラスタリング部２７は、ステップＳ２２又は／及びステップＳ２３においてグループ化されたクエリ又は／及びクリックＵＲＬを訓練クエリ又は／及びクリック素性として、訓練データＤＢ１４に追加して記憶させる。
【００９８】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施例に記載されたものに限定されるものではない。
【図面の簡単な説明】
【００９９】
【図１】本発明の検索装置の一実施形態に係る検索システム１の概略を示す図である。
【図２】本発明の一実施形態である検索サーバ１０のハードウェア構成を示す図である。
【図３】本発明の検索装置の一実施形態である検索サーバ１０の機能ブロック図である。
【図４】クリックデータテーブル１１１の一例を示す図である。
【図５】セッションログテーブル１３１の一例を示す図である。
【図６】クエリ属性辞書１６の一例を示す図である。
【図７】検索要求属性対応ＤＢ１７の一例を示す図である。
【図８】本実施形態の検索サーバ１０における検索要求属性の推定処理の流れを示すフローチャートである。
【図９】本実施形態の検索サーバ１０におけるクエリ属性辞書１６を用いた検索処理の流れを示すフローチャートである。
【図１０】本実施形態の検索サーバ１０におけるクラスタリング処理の流れを示すフローチャートである。
【符号の説明】
【０１００】
１０  検索サーバ
１１  クリックログＤＢ
１２  訓練用クリックログＤＢ
１３  セッションログＤＢ
１４  訓練データＤＢ
１５  学習データＤＢ
１６  クエリ属性辞書
１７  検索要求属性対応動作ＤＢ
２０  端末装置
２１  訓練データ作成部
２２  機械学習実行部
２３  属性推定部
２４  検索実行部
２５  検索結果併合部
２６  提示部
２７  クラスタリング部
【図１】
2010033377.tif 000003
【図２】
2010033377.tif 000004
【図３】
2010033377.tif 000005
【図４】
2010033377.tif 000006
【図５】
2010033377.tif 000007
【図６】
2010033377.tif 000008
【図７】
2010033377.tif 000009
【図８】
2010033377.tif 000010
【図９】
2010033377.tif 000011
【図１０】
2010033377.tif 000012
【手続補正書】
【提出日】平成21年9月15日(2009.9.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置において、
前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段と、
前記検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成手段と、
前記訓練データを用いて学習データの機械学習を実行する機械学習実行手段と、
前記機械学習実行手段により機械学習された前記学習データに基づいて、前記検索履歴記憶手段に記憶され、かつ、前記訓練データには含まれない前記入力クエリに対し、検索要求属性を推定する属性推定手段と、
前記属性推定手段により推定された前記入力クエリの検索要求属性と、当該入力クエリとを記憶するクエリ属性記憶手段と、を更に備えることを特徴とする検索装置。
【請求項２】
前記訓練データ作成手段は、前記訓練データとして、少なくとも前記検索履歴記憶手段に記憶される前記入力クエリを含む訓練クエリと、前記クリックＵＲＬに基づくクリック素性と、前記訓練クエリの前記検索要求属性とを作成することを特徴とする請求項１に記載の検索装置。
【請求項３】
前記訓練データ作成手段は、前記クリック素性として、ドメイン名、サイト名、ディレクトリ等の前記クリックＵＲＬの一部分を用いることを特徴とする請求項２に記載の検索装置。
【請求項４】
前記訓練データ作成手段は、前記訓練クエリとして、前記検索履歴記憶手段に記憶された複数の前記入力クエリを含むクエリグループを用いることを特徴とする請求項２に記載の検索装置。
【請求項５】
セッションと、当該セッション内における前記クリックＵＲＬとを対応付けて記憶するセッション履歴記憶手段を更に備え、
前記訓練データ作成手段は、前記入力クエリに対する前記検索エンジンによる検索結果において、前記セッション履歴記憶手段に記憶された前記セッション内で最後のクリック対象となった前記クリックＵＲＬのファイルの属性を前記検索要求属性として用いることを特徴とする請求項２に記載の検索装置。
【請求項６】
前記訓練データ作成手段は、前記入力クエリに対する前記検索エンジンによる検索結果において、所定期間内又は所定操作数内に予め属性が設定されたファイルに前記端末装置がアクセスした場合に、当該ファイルの属性を前記検索要求属性として用いることを特徴とする請求項２に記載の検索装置。
【請求項７】
前記クエリ属性記憶手段に記憶された前記入力クエリ及び前記検索要求属性と当該検索要求属性に応じた所定の条件とに基づいて、前記端末装置により入力されたユーザ入力クエリを用いて前記検索エンジンにより前記検索要求属性に応じた検索処理を実行する検索実行手段と、
前記端末装置により入力された前記ユーザ入力クエリを用いて前記検索エンジンにより通常検索処理を実行する通常検索実行手段と、
前記検索実行手段により得られた検索結果と、前記通常検索実行手段により得られた検索結果とで重複する検索結果を併合する検索結果併合手段と、
前記検索結果併合手段により併合された前記検索結果を前記端末装置に提示する提示手段と、を更に備えることを特徴とする請求項２に記載の検索装置。
【請求項８】
前記クエリ属性記憶手段に記憶された前記入力クエリ及び前記検索要求属性に基づいて、前記検索履歴記憶手段に記憶された複数の前記クリック素性にクラスタリングを実行してクリック素性グループを作成するクリック素性クラスタリング手段を更に備えることを特徴とする請求項３に記載の検索装置。
【請求項９】
前記クエリ属性記憶手段に記憶された前記入力クエリ及び前記検索要求属性に基づいて、前記検索履歴記憶手段に記憶された複数の前記入力クエリにクラスタリングを実行してクエリグループを作成するクエリクラスタリング手段を更に備えることを特徴とする請求項４に記載の検索装置。
【請求項１０】
ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置の検索方法において、
前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成ステップと、
前記訓練データを用いて学習データの機械学習を実行する機械学習実行ステップと、
前記機械学習実行ステップにより機械学習された前記学習データに基づいて、前記検索履歴記憶手段に記憶され、かつ、前記訓練データには含まれない前記入力クエリに対し、検索要求属性を推定する推定ステップと、
前記推定ステップにより推定された前記入力クエリの検索要求属性と、当該入力クエリとをクエリ属性記憶手段に記憶させる属性記憶制御ステップと、を備えることを特徴とする検索方法。
【請求項１１】
ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置のコンピュータにより実行されるコンピュータプログラムにおいて、
前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成ステップと、
前記訓練データを用いて学習データの機械学習を実行する機械学習実行ステップと、
前記機械学習実行ステップにより機械学習された前記学習データに基づいて、前記検索履歴記憶手段に記憶され、かつ、前記訓練データには含まれない前記入力クエリに対し、検索要求属性を推定する推定ステップと、
前記推定ステップにより推定された前記入力クエリの検索要求属性と、当該入力クエリとをクエリ属性記憶手段に記憶させる属性記憶制御ステップと、をコンピュータに実行させるコンピュータプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、検索装置、検索方法及びプログラムに関する。
【背景技術】
【０００２】
近年、Ｗｅｂ検索サービスの高度化に伴い、Ｗｅｂ検索に用いるクエリの背景となる検索者の検索意図を推定して、検索結果を改良することが重要となってきている。
【０００３】
Ｗｅｂ検索におけるクエリの検索要求指向としては、ナビゲーション指向、トランザクション指向等が挙げられる。ここで、ナビゲーション指向型の検索要求とは、ある特定のＷｅｂページ（又はある対象物の代表的なＷｅｂページ）に到達することを要求する検索である。例えば、ある特定の大学のホームページに到達することを目的とするような検索は、この検索要求に当たる。
【０００４】
トランザクション指向型の検索要求とは、インタラクションを伴うようなＷｅｂページ（オンラインショッピング、Ｗｅｂが仲介する様々なサービス等）に到達することを要求する検索である。例えば、東京都に存在するホテルから自分の要求に合ったホテルを探し、予約することを目的としたような検索は、この検索要求に当たる。
【０００５】
例えば、非特許文献１には、機械学習によりナビゲーション指向型の検索要求を有するクエリを判定する技術が開示されている。
【非特許文献１】Ｌｕ，Ｙ．  Ｐｅｎｇ，Ｆ．  Ｌｉ，Ｘ．  ａｎｄ  Ａｈｍｅｄ，Ｎ．（２００６）Ｃｏｕｐｌｉｎｇ  ｆｅａｔｕｒｅ  ｓｅｌｅｃｔｉｏｎ  ａｎｄ  ｍａｃｈｉｎｅ  ｌｅａｒｎｉｎｇ  ｍｅｔｈｏｄｓ  ｆｏｒ  ｎａｖｉｇａｔｉｏｎａｌ  ｑｕｅｒｙ  ｉｄｅｎｔｉｆｉｃａｔｉｏｎ，  Ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ＣＩＫＭ  ２００６．
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、非特許文献１に開示された技術は、特定の検索要求について判定する技術であるため、他の検索要求について判定することはできない。
【０００７】
そこで、本発明は、より一般的な検索要求の属性をクエリに付与することのできる検索装置、検索方法及びプログラムを提供することを目的とする。
なお、検索要求の属性（以下、検索要求属性という）とは、ナビゲーション指向型やトランザクション指向型等に留まらず、より詳細な利用者の検索意図に関連する属性を指す。
【課題を解決するための手段】
【０００８】
本発明では、以下のような解決手段を提供する。
【０００９】
（１）ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置において、前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段と、前記検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成手段と、前記訓練データを用いて学習データの機械学習を実行する機械学習実行手段と、前記機械学習実行手段により機械学習された前記学習データに基づいて、前記検索履歴記憶手段に記憶され、かつ、前記訓練データには含まれない前記入力クエリに対し、検索要求属性を推定する属性推定手段と、前記属性推定手段により推定された前記入力クエリの検索要求属性と、当該入力クエリとを記憶するクエリ属性記憶手段と、を更に備えることを特徴とする検索装置。
【００１０】
このように、検索装置は、検索履歴記憶手段に記憶され、かつ、訓練データには含まれない入力クエリに対し、クエリの検索要求属性を推定する。そして、推定されたクエリの検索要求属性は、例えば検索結果ランキング、広告提示、ユーザに推薦するサービスへのショートカット等の検索サービスに利用することにより、検索サービスの向上を図ることができる。
【００１１】
（２）前記訓練データ作成手段は、前記訓練データとして、少なくとも前記検索履歴記憶手段に記憶される前記入力クエリを含む訓練クエリと、前記クリックＵＲＬに基づくクリック素性と、前記訓練クエリの前記検索要求属性とを作成することを特徴とする（１）に記載の検索装置。
【００１２】
このように、検索装置は、訓練データとして、訓練クエリと、クリック素性と、訓練クエリの検索要求属性とを作成し、この訓練データを用いて学習データの機械学習を実行する。このため、クエリの検索要求属性を推定するために適した訓練データを用いて学習データの機械学習を実行することができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００１３】
（３）前記訓練データ作成手段は、前記クリック素性として、ドメイン名、サイト名、ディレクトリ等の前記クリックＵＲＬの一部分を用いることを特徴とする（２）に記載の検索装置。
【００１４】
このように、検索装置は、クリックＵＲＬの一部分は、クエリの検索要求属性を絞り込むための重要な情報となる可能性が高い。したがって、クリックＵＲＬの一部分を訓練データとして用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００１５】
（４）前記訓練データ作成手段は、前記訓練クエリとして、前記検索履歴記憶手段に記憶された複数の前記入力クエリを含むクエリグループを用いることを特徴とする（２）に記載の検索装置。
【００１６】
このように、検索装置は、検索要求属性について関連性の高い複数のクエリをクエリグループとする。このため、訓練クエリとしてクエリグループを用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００１７】
（５）セッションと、当該セッション内における前記クリックＵＲＬとを対応付けて記憶するセッション履歴記憶手段を更に備え、前記訓練データ作成手段は、前記入力クエリに対する前記検索エンジンによる検索結果において、前記セッション履歴記憶手段に記憶された前記セッション内で最後のクリック対象となった前記クリックＵＲＬのファイルの属性を前記検索要求属性として用いることを特徴とする（２）に記載の検索装置。
【００１８】
セッション内で最後のクリック対象となったクリックＵＲＬのサフィックス（ｊｐｇ、ｗｍｖ、ｍｐ３、ｈｔｍｌ等）は、クエリの検索要求属性を絞り込むための重要な情報となる可能性が高い。したがって、検索サーバは、訓練データとして、セッション内で最後のクリック対象となったクリックＵＲＬのファイルの属性を検索要求属性として用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００１９】
（６）前記訓練データ作成手段は、前記入力クエリに対する前記検索エンジンによる検索結果において、所定期間内又は所定操作数内に予め属性が設定されたファイルに前記端末装置がアクセスした場合に、当該ファイルの属性を前記検索要求属性として用いることを特徴とする（２）に記載の検索装置。
【００２０】
したがって、セッション内で最後のクリック対象が特定できない場合でも、クリックＵＲＬのファイルの属性を検索要求属性として用いることができる。
【００２１】
（７）前記クエリ属性記憶手段に記憶された前記入力クエリ及び前記検索要求属性と当該検索要求属性に応じた所定の条件とに基づいて、前記端末装置により入力されたユーザ入力クエリを用いて前記検索エンジンにより前記検索要求属性に応じた検索処理を実行する検索実行手段と、前記端末装置により入力された前記ユーザ入力クエリを用いて前記検索エンジンにより通常検索処理を実行する通常検索実行手段と、前記検索実行手段により得られた検索結果と、前記通常検索実行手段により得られた検索結果とで重複する検索結果を併合する検索結果併合手段と、前記検索結果併合手段により併合された前記検索結果を前記端末装置に提示する提示手段と、を更に備えることを特徴とする（２）に記載の検索装置。
【００２２】
このように検索装置は、クエリの検索要求属性に応じた検索結果を端末装置へ提示することができる。したがって、検索装置を管理する者にとっては、検索サービスの向上を図ることができる。
【００２３】
（８）前記クエリ属性記憶手段に記憶された前記入力クエリ及び前記検索要求属性に基づいて、前記検索履歴記憶手段に記憶された複数の前記クリック素性にクラスタリングを実行してクリック素性グループを作成するクリック素性クラスタリング手段を更に備えることを特徴とする（３）に記載の検索装置。
【００２４】
このように、検索装置は、クリック素性をクラスタリングして、グループ化する。そして、このグループ化されたクリック素性グループを検索履歴記憶手段に追加することによって、訓練データを用いて機械学習される学習データの精度を向上させることができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００２５】
（９）前記クエリ属性記憶手段に記憶された前記入力クエリ及び前記検索要求属性に基づいて、前記検索履歴記憶手段に記憶された複数の前記入力クエリにクラスタリングを実行してクエリグループを作成するクエリクラスタリング手段を更に備えることを特徴とする（４）に記載の検索装置。
【００２６】
このように、検索装置は、クエリをクラスタリングして、グループ化する。そして、このグループ化されたクエリグループを検索履歴記憶手段に追加することによって、訓練データを用いて機械学習される学習データの精度を向上させることができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００２７】
（１０）ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置の検索方法において、前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成ステップと、前記訓練データを用いて学習データの機械学習を実行する機械学習実行ステップと、前記機械学習実行ステップにより機械学習された前記学習データに基づいて、前記検索履歴記憶手段に記憶され、かつ、前記訓練データには含まれない前記入力クエリに対し、検索要求属性を推定する推定ステップと、前記推定ステップにより推定された前記入力クエリの検索要求属性と、当該入力クエリとをクエリ属性記憶手段に記憶させる属性記憶制御ステップと、を備えることを特徴とする検索方法。
【００２８】
（１１）ユーザが操作する端末装置と通信可能に接続され、当該端末装置により入力された入力クエリに応じてウェブページを検索する検索エンジンを備える検索装置のコンピュータにより実行されるコンピュータプログラムにおいて、前記入力クエリと、当該入力クエリが前記検索エンジンにより検索された検索結果のＵＲＬのうち、前記ユーザがクリックしたクリックＵＲＬとが対応付けて記憶される検索履歴記憶手段に記憶される前記入力クエリ及び前記クリックＵＲＬに基づいて、機械学習のための訓練データを作成する訓練データ作成ステップと、前記訓練データを用いて学習データの機械学習を実行する機械学習実行ステップと、前記機械学習実行ステップにより機械学習された前記学習データに基づいて、前記検索履歴記憶手段に記憶され、かつ、前記訓練データには含まれない前記入力クエリに対し、検索要求属性を推定する推定ステップと、前記推定ステップにより推定された前記入力クエリの検索要求属性と、当該入力クエリとをクエリ属性記憶手段に記憶させる属性記憶制御ステップと、をコンピュータに実行させるコンピュータプログラム。
【発明の効果】
【００２９】
本発明によれば、より一般的な検索要求の属性をクエリに付与することのできる検索装置、検索方法及びプログラムを提供することができる。
【発明を実施するための最良の形態】
【００３０】
以下、本発明の実施形態について図面を参照しながら説明する。
【００３１】
［検索システム１の機能構成］
図１は、本発明の検索装置の一実施形態に係る検索システム１の概略を示す図である。検索サーバ（検索装置）１０、端末装置２０及び外部サーバ３０は、通信回線４０を介して接続されている。端末装置２０のユーザは、検索サーバ１０にアクセスし、所定の検索エンジンに対して、所望のＷｅｂ文書に辿り着くためのクエリ（検索キーワード）を入力することにより、検索結果を取得する。ユーザは、この検索結果にリストされたＵＲＬを選択し、外部サーバ３０にて管理されるＷｅｂページを閲覧する。
【００３２】
端末装置２０は、パソコン、携帯電話機、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍ：登録商標）、モバイル、ノートＰＣ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等の端末装置を代表とするものであり、有線又は無線通信を行う通信回線４０を介して、検索サーバ１０から送信される情報を参照できるものであればどのようなものでもよい。また、検索サーバ１０は、必要に応じてＷｅｂサーバ、ＤＢサーバ及びアプリケーションサーバを含んで構成してよく、１台のサーバで構成しても、それぞれ別のサーバで構成してもよい。
【００３３】
［検索サーバ１０のハードウェア構成］
図２は、本発明の一実施形態である検索サーバ１０のハードウェア構成を示す図である。図２に示すように、制御部３００を構成するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１０（マルチプロセッサ構成ではＣＰＵ３２０等複数のＣＰＵが追加されてもよい）、バスライン２００、通信Ｉ／Ｆ（Ｉ／Ｆ：インタフェース）３３０、メインメモリ３４０、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）３５０、Ｉ／Ｏコントローラ３６０、ハードディスク３７０、光ディスクドライブ３８０及び半導体メモリ３９０を備える。なお、ハードディスク３７０、光ディスクドライブ３８０及び半導体メモリ３９０はまとめて記憶装置４１０と呼ばれる。
【００３４】
制御部３００は、検索サーバ１０を統括的に制御する部分であり、ハードディスク３７０に記憶された各種プログラムを適宜読み出して実行することにより、上述したハードウェアと協働し、本発明に係る各種機能を実現している。
【００３５】
通信Ｉ／Ｆ３３０は、検索サーバ１０が、ネットワークを介して端末装置２０等の他の装置と情報を送受信する場合のネットワーク・アダプタである。
【００３６】
ＢＩＯＳ３５０は、検索サーバ１０の起動時にＣＰＵ３１０が実行するブートプログラムや、検索サーバ１０のハードウェアに依存するプログラム等を記録する。
【００３７】
Ｉ／Ｏコントローラ３６０には、ハードディスク３７０、光ディスクドライブ３８０、半導体メモリ３９０等の記憶装置４１０を接続することができる。
【００３８】
ハードディスク３７０は、本ハードウェアを検索サーバ１０として機能させるための各種プログラム、本発明の機能を実行するプログラム及び後述するデータベース等を記憶する。なお、検索サーバ１０は、外部に別途設けたハードディスク（図示せず）を外部記憶装置として利用することもできる。
【００３９】
光ディスクドライブ３８０としては、例えば、ＤＶＤ−ＲＯＭドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＡＭドライブ及びＣＤ−ＲＡＭドライブを使用することができる。この場合は各ドライブに対応した光ディスク４００を使用する。光ディスク４００から光ディスクドライブ３８０によりプログラム又はデータを読み取り、Ｉ／Ｏコントローラ３６０を介してメインメモリ３４０又はハードディスク３７０に提供することもできる。
【００４０】
なお、本発明でいうコンピュータとは、記憶装置、制御部等を備えた検索装置をいい、検索サーバ１０は、記憶装置４１０、制御部３００等を備えた検索装置により構成され、この検索装置は、本発明のコンピュータの概念に含まれる。
【００４１】
以上の例は、検索サーバ１０について主に説明したが、コンピュータに、プログラムをインストールして、そのコンピュータをサーバ装置として動作させることにより上記で説明した機能を実現することもできる。したがって、本発明において一実施形態として説明した検索サーバ１０により実現される機能は、上述の方法を当該コンピュータにより実行することにより、或いは、上述のプログラムを当該コンピュータに導入して実行することによっても実現可能である。
【００４２】
図３は、本発明の検索装置の一実施形態である検索サーバ１０の機能ブロック図である。検索サーバ１０は、クリックログデータベース（以下クリックログＤＢという）１１、訓練用クリックログデータベース（以下訓練用クリックログＤＢという）１２、セッションログデータベース（以下セッションログＤＢという）１３、訓練データデータベース（以下訓練データＤＢという）１４、学習データデータベース（以下学習データＤＢという）１５、クエリ属性辞書１６、検索要求属性対応ＤＢ１７、訓練データ作成部２１、機械学習実行部２２、属性推定部２３、検索実行部２４、検索結果併合部２５、提示部２６及びクラスタリング部２７を備える。
【００４３】
クリックログＤＢ１１、訓練用クリックログＤＢ１２、セッションログＤＢ１３、訓練データＤＢ１４、学習データＤＢ１５、クエリ属性辞書１６及び検索要求属性対応ＤＢ１７は、主として記憶装置４１０により構成される。
また、訓練データ作成部２１、機械学習実行部２２、属性推定部２３、検索実行部２４、検索結果併合部２５、提示部２６及びクラスタリング部２７は、主として制御部３００により構成される。
【００４４】
クリックログＤＢ（検索履歴記憶手段）１１は、クエリと、このクエリを検索キーワードとして検索エンジンにより検索された検索結果のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）のうち、ユーザの操作する任意の端末装置２０により選択（クリック）されたＵＲＬ（以下クリックＵＲＬともいう）とを対応付けて履歴データとして記憶する。この履歴データをクリックログと呼ぶ。クリックログは、例えば、図４に示すように、クリックデータテーブル１１１として蓄積的に記憶される。図４に示すクリックデータテーブル１１１には、クリックＵＲＬを選択した端末装置２０のＩＰアドレス、クリックＵＲＬが選択された時間、セッション、クエリ、クリックＵＲＬ及びクリックＵＲＬの検索ランクが対応付けて記憶されている。
【００４５】
訓練用クリックログＤＢ（検索履歴記憶手段）１２は、クリックログＤＢ１１から任意に選択したクリックログが記憶され、訓練データの作成に用いられる。クリックログＤＢ１１から訓練用クリックログを選択する方法としては、例えば、無作為抽出、頻度の高いデータから順に抽出する、頻度の高いクエリグループから抽出する等が挙げられる。なお、クエリグループについては後述する。
【００４６】
セッションログＤＢ（セッション履歴記憶手段）１３は、セッションと、このセッション内における前記クリックＵＲＬとを対応付けて履歴データとして記憶する。この履歴データをセッションログと呼ぶ。セッションログは、例えば、図５に示すように、セッションログテーブル１３１として累積的に記憶される。図５に示すセッションログテーブル１３１には、クリックＵＲＬを選択した端末装置２０のＩＰアドレス、クリックＵＲＬが選択された時間、セッション、リファラ及びクリックＵＲＬが対応付けて記憶されている。
【００４７】
ここで、セッション及びリファラについて説明する。セッションとは、ＷＷＷにおけるアクセス数の単位の一つであり、Ｗｅｂページを訪れたユーザがサイト内で行なう一連の行動をまとめて１セッションという。同一のユーザでも、ある程度間隔が開いた場合は、新しいセッションとしてカウントする。
【００４８】
リファラとは、あるＷｅｂページのリンクをクリックして別のＷｅｂページに移動したときのリンク元となるＷｅｂページであり、本実施形態においては、クエリに応じて検索エンジンにより検索された検索結果である。
【００４９】
訓練データ作成部２１は、訓練データとして、少なくとも訓練用クリックログＤＢ１２に記憶されるクエリを含む訓練クエリと、クリックＵＲＬに基づくクリック素性と、訓練クエリの検索要求属性とを作成する。
【００５０】
このように、検索サーバ１０は、訓練データとして、訓練クエリと、クリック素性と、訓練クエリの検索要求属性とを作成し、この訓練データを用いて学習データの機械学習を実行する。このため、クエリの検索要求属性を推定するために適した訓練データを用いて学習データの機械学習を実行することができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００５１】
具体的には、訓練データ作成部２１は、訓練クエリの検索要求属性を予め付与しておくことができる。
【００５２】
また、訓練データ作成部２１は、クリック素性として、ドメイン名、サイト名、ディレクトリ等のクリックＵＲＬの一部分を用いることができる。
【００５３】
このため、例えば検索要求属性が「自動車」である場合、クリックＵＲＬの一部としての「ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ」のような例が挙げられる。このようにクリックＵＲＬの一部分は、クエリの検索要求属性を絞り込むための重要な情報となる可能性が高い。したがって、クリックＵＲＬの一部分を訓練データとして用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００５４】
また、訓練データ作成部２１は、訓練クエリとして、訓練用クリックログＤＢ１２に記憶された複数のクエリを含むクエリグループを用いることができる。クエリグループとは、後述するクラスタリング部２７により作成される。クエリグループは、例えば［カ○ーラ，ト△タカ○ーラ，カ○ーラト△タ］のように表される。
【００５５】
このように、検索サーバ１０は、検索要求属性について関連性の高い複数のクエリをクエリグループとする。このため、訓練クエリとしてクエリグループを用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００５６】
また、訓練データ作成部２１は、クエリに対する検索エンジンによる検索結果において、セッションログＤＢ１３に記憶されたセッション内で最後のクリック対象となったクリックＵＲＬのファイルの属性を検索要求属性として用いることができる。
【００５７】
セッション内で最後のクリック対象となったクリックＵＲＬのサフィックス（ｊｐｇ、ｗｍｖ、ｍｐ３、ｈｔｍｌ等）は、クエリの検索要求属性を絞り込むための重要な情報となる可能性が高い。例えば、「ｊｐｇ」は静止画、「ｗｍｖ」は動画、「ｍｐ３」は音楽、「ｈｔｍｌ」はＷｅｂページにそれぞれ関連性が強いと考えられる。したがって、検索サーバ１０は、訓練データとして、セッション内で最後のクリック対象となったクリックＵＲＬのファイルの属性を検索要求属性として用いることによって、より好適にクエリの検索要求属性を推定することができる。
【００５８】
また、訓練データ作成部２１は、入力クエリに対する検索エンジンによる検索結果において、所定期間内又は所定操作数内に予め属性が設定されたファイルに端末装置２０がアクセスした場合に、このファイルの属性を検索要求属性として用いることができる。
【００５９】
したがって、セッション内で最後のクリック対象が特定できない場合でも、クリックＵＲＬのファイルの属性を検索要求属性として用いることができる。
【００６０】
このような訓練データとしての訓練クエリ、クリック素性及び検索要求属性を訓練データ作成部２１は、三つ組みに変換する。具体的には、訓練データ作成部２１は、クリック素性が「カ○ーラ」、クリック素性が「ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ」、検索要求属性が「自動車」の場合には、（カ○ーラ、ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ、自動車）のような三つ組みに変換する。
【００６１】
そして、この三つ組み変換された訓練データを機械学習実行部２２により機械学習する。具体的には、機械学習実行部２２によりクエリの検索要求属性を判別するための判別関数を学習する場合には、学習する各々の検索要求属性をクリック素性のベクター表現で以下のように表す。
（数１）
ａ１＝（ｓ１＝１，ｓ２＝０，ｓ３＝０，ｓ４＝１，ｓ５＝０，・・・，ｓｍ＝０）
ａ２＝（ｓ１＝０，ｓ２＝１，ｓ３＝０，ｓ４＝１，ｓ５＝０，・・・，ｓｍ＝０）
・・・
ａｎ＝（ｓ１＝０，ｓ２＝０，ｓ３＝０，ｓ４＝０，ｓ５＝１，・・・，ｓｍ＝０）・・・式（１）
【００６２】
ここで、ａｎは検索要求属性であり、ｓｍはクリック素性である。具体的には、検索要求属性ａ１において、ｓ１＝１である。これは、クリック素性ｓ１が検索要求属性ａ１に関連することを示している。すなわち、検索要求属性ａ１を有するクエリは、クリック素性がサイト名である場合には、このサイト名を含むクリックＵＲＬが選択されたことを意味する。また、検索要求属性ａ１において、ｓ２＝０である。これは、クリック素性ｓ２が検索要求属性ａ１に関連しないことを示している。
【００６３】
訓練データＤＢ１４は、訓練データ作成部２１により作成された訓練データを記憶する。具体的には、上述したように検索要求属性を予め付与した訓練クエリやクリック素性のベクター表現等を記憶する。
【００６４】
機械学習実行部２２は、訓練データを用いて学習データの機械学習を実行する。訓練データは、上述したように判別関数を学習する場合には、ベクター表現によって表現するため、ＳＶＭ（Ｓｕｐｐｏｒｔ  Ｖｅｃｔｏｒ  Ｍａｃｈｉｎｅ）、ｋＮＮ（ｋ  Ｎｅａｒｅｓｔ  Ｎｅｉｇｈｂｏｒ）、Ｎａｉｖｅ  ｂａｙｅｓ  ｃｌａｓｓｉｆｉｅｒ、ニューラルネットワーク、判別木等の様々な公知の機械学習手法を用いて、判別関数を学習することができる。
【００６５】
学習データＤＢ１５は、機械学習実行部２２により機械学習が実行された学習データを記憶する。具体的には、学習データＤＢ１５には、機械学習実行部２２により機械学習が実行された判別関数が記憶される。
【００６６】
属性推定部２３は、機械学習実行部２２により機械学習された学習データに基づいて、クリックログＤＢ１１に記憶され、かつ、訓練用クリックログＤＢ１２には含まれないクエリに対し、検索要求属性を推定する。ここで、学習データには、クリックＵＲＬと、クリック頻度とが含まれる。なお、クリック頻度とは、同一のセッションにおける、クリックＵＲＬの頻度であり、訓練用クリックログＤＢ１２に記憶されるクリックＵＲＬと、入力クエリとに基づいて、制御部３００により算出される値である。
そして、属性推定部２３は、推定した検索要求属性と、クエリとをクエリ属性辞書１６に記憶する。
【００６７】
クエリ属性辞書１６は、属性推定部２３により推定されたクエリの検索要求属性と、このクエリとを対応付けて記憶する。
図６は、クエリ属性辞書１６の一例を示す図である。図６では、クエリの検索要求属性が関連性の高いグループに分けられている。例えば、クエリ「カ○ーラ」に対応する検索要求属性１（図６中では属性１と表記）「自動車」、検索要求属性２（図６中では属性２と表記）「中古車」、及び検索要求属性３（図６中では属性３と表記）「国産車」が検索要求属性グループ１として記憶されている。
【００６８】
検索実行部２４は、クエリ属性辞書１６に記憶されたクエリ及び検索要求属性と当該検索要求属性に応じた所定の条件とに基づいて、端末装置２０により入力されたユーザ入力クエリを用いて検索エンジンにより検索要求属性に応じた検索処理を実行する。ここで、検索実行部２４は、所定の条件として、検索要求属性対応ＤＢ１７を適用することができる。
【００６９】
図７は、検索要求属性対応ＤＢ１７に記憶される検索要求属性対応テーブルの一例を示す図である。検索要求属性対応テーブルは、検索要求属性と、この検索供給属性に対応する処理とが対応付けて記憶される。例えば、検索要求属性が「中古車」のときには、対応する処理は「該当するクリックＵＲＬのランクを２上げる」となる。また、検索要求属性が「自動車」のときには、対応する処理は「該当する検索要求属性を有する広告を表示する」となる。また、検索要求属性が「音楽ダウンロード」のときには、対応する処理は「該当するクリックＵＲＬで最も上位のものをランクの１位にする」となる。また、検索要求属性が「音楽ダウンロード」のときには、対応する処理は「該当するクリックＵＲＬのスコアを５％上げる」となる。また、検索要求属性が「音楽ダウンロード」のときには、対応する処理は「該当する検索要求属性を有する広告を表示する」となる。
【００７０】
このように、本実施形態の検索サーバ１０は、クリックログＤＢ１１に記憶されたクエリと、クリック素性とに基づいて、クエリの検索要求属性を推定する。そして、推定されたクエリの検索要求属性は、例えば検索結果ランキング、広告提示、ユーザに推薦するサービスへのショートカット等の検索サービスに利用することにより、検索サービスの向上を図ることができる。
【００７１】
また、検索実行部２４は、端末装置２０により入力されたクエリを検索エンジンにより通常検索処理を実行する。
【００７２】
検索結果併合部２５は、検索実行部２４の検索要求属性に応じた検索処理により得られた検索結果と、検索実行部２４の通常検索処理により得られた検索結果とで重複する検索結果を併合する。
【００７３】
提示部２６は、検索結果併合部２５により併合された検索結果を端末装置２０に提示する。
【００７４】
このように検索サーバ１０は、クエリの検索要求属性に応じた検索結果を端末装置２０へ提示することができる。したがって、検索サーバ１０を管理する者にとっては、検索サービスの向上を図ることができる。また、端末装置２０を操作するユーザにとっては、クエリの検索要求属性に応じた入力クエリの検索結果を得ることができる。
【００７５】
なお、上述した判別関数を機械学習する場合に代えて、クエリの検索要求属性を機械学習により直接、学習することもできる。
この場合には、訓練データ作成部２１は、クリックログＤＢ１１に記憶されたクエリの頻度の大きいものから１００万件ほどについて訓練用クリックログＤＢ１２に記憶する。
【００７６】
そして、訓練データ作成部２１は、訓練用クリックログＤＢ１２に記憶されたクエリのうち、１万件ほどを訓練データとして用いて、人手により検索要求属性を付与する。
機械学習実行部２２は、この訓練データを用いて検索要求属性を有するか否かを判別する２値分類器を上述した公知の機械学習手法を用いて機械学習を実行する。
【００７７】
制御部３００は、１００万件ほどのクエリのうち、残る９９万件のクエリを学習した２値分類器を用いて自動分類する。そして、検索要求属性に対応するクエリのリストを作成する。
属性推定部２３は、端末装置２０から受け付けたユーザ入力クエリと、作成されたリストに含まれるクエリとが一致する場合には、このユーザ入力クエリの検索要求属性を作成されたクエリに対応する検索要求属性であると推定する。
【００７８】
次に、クラスタリング部２７について説明する。クラスタリング部２７は、クエリ属性辞書１６に記憶されたクエリ及び検索要求属性に基づいて、訓練用クリックログＤＢ１２に記憶された複数のクリック素性にクラスタリングを実行してクリック素性グループを作成する。具体的には、クラスタリング部２７は、クリック素性としてのドメイン名、サイト名、ディレクトリ等のクリックＵＲＬの一部分を用いてクラスタリングを実行してクリック素性グループを作成する。
【００７９】
また、クラスタリング部２７は、クエリ属性辞書１６に記憶されたクエリ及び検索要求属性に基づいて、訓練用クリックログＤＢ１２に記憶された複数のクエリにクラスタリングを実行してクエリグループを作成する。具体的には、クラスタリング部２７は、訓練用クリックログＤＢ１２に記憶されたクリックＵＲＬ全てにクラスタリングを実行し、クエリグループを作成する。
【００８０】
ここで、クラスタリングを実行する際のクラスタリング方式としては、例えば各々のクエリをクリックＵＲＬの集合で表現して、クリックＵＲＬの集合間での一致度によるワンパスクラスタリングや階層クラスタリング等を適用することができる。
【００８１】
クラスタリング部２７によりクラスタリングを実行した場合には、三つ組み変換された訓練データは、例えば（［カ○ーラ，ト△タカ○ーラ，カ○ーラト△タ］、ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ、自動車）のような構成となる。ここで、クラスタリングされたクエリグループは、「カ○ーラ，ト△タカ○ーラ，カ○ーラト△タ」、クリック素性は、「ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ」、検索要求属性は、「自動車」である。
【００８２】
そして、クラスタリング部２７は、クラスタリングを実行したことにより得られたクリック素性グループ及びクエリグループを訓練データＤＢ１４に記憶される訓練データに追加する。すなわち、訓練データにおけるクリック素性としてクリック素性グループを追加する。また、訓練データにおける訓練クエリとしてクエリグループを追加する。
【００８３】
このように、検索サーバ１０は、クエリ及びクリック素性をクラスタリングして、グループ化する。そして、このグループ化されたクエリグループ又はクリック素性グループを訓練データＤＢ１４に追加することによって、訓練データを用いて機械学習される学習データの精度を向上させることができる。したがって、より好適にクエリの検索要求属性を推定することができる。
【００８４】
ここで、クラスタリング部２７による処理について詳細に説明する。
上述した式（１）では、クリック素性についてベクターで表現した。ところで、このベクターは、クリックログＤＢ１１に記憶されるクエリについて、
（数２）
ｑ１＝（ｓ１＝１，ｓ２＝０，ｓ３＝０，ｓ４＝１，ｓ５＝０，・・・，ｓｍ＝０）
ｑ２＝（ｓ１＝０，ｓ２＝１，ｓ３＝０，ｓ４＝１，ｓ５＝０，・・・，ｓｍ＝０）
・・・
ｑｎ＝（ｓ１＝０，ｓ２＝０，ｓ３＝０，ｓ４＝０，ｓ５＝１，・・・，ｓｍ＝０）・・・式（２）
と表現することができる。式（２）は、ｎ個のクエリとｍ個のクリック素性というｎ×ｍの２次元の行列で表現される。これにより、クラスタリング部２７は、式（２）をクエリごとに分けたベクターを用いてクエリのクラスタリングを実行することができる。また、クラスタリング部２７は、式（２）をクリック素性ごとに分けたベクターを用いてクリック素性のクラスタリングを実行することができる。
【００８５】
この場合、特にクエリの次元数は、数百万・数千万にも増大する可能性があるため、例えば同一のクラスタ内のクエリは、全て同一視して一つの次元として扱うことが必要となる。
【００８６】
［処理の流れ］
図８は、本実施形態の検索サーバ１０における検索要求属性の推定処理の流れを示すフローチャートである。
ステップＳ１：訓練データ作成部２１は、訓練用クリックログＤＢ１２に記憶された入力クエリに属性を付与する。具体的には、訓練データ作成部２１は、入力クエリに対して予め用意されたクエリを人手により付与される。
【００８７】
ステップＳ２：訓練データ作成部２１は、ステップＳ１において属性が付与された入力クエリを含む訓練クエリと、訓練用クリックログＤＢ１２に記憶されるクリック素性と検索要求属性とを三つ組みに変換する。具体的には、訓練データ作成部２１は、訓練クエリが「カ○ーラ」、クリック素性が「ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ」、検索要求属性が「自動車」の場合には、（カ○ーラ、ｗｗｗ．ｃａｒｘｘｘｓｏｒ．ｎｅｔ、自動車）のような三つ組みに変換する。そして、三つ組みに変換された訓練データは、訓練データ作成部２１により訓練データＤＢ１４に記憶される。
【００８８】
ステップＳ３：訓練データ作成部２１は、ステップＳ２において三つ組みに変換された訓練データの検索要求属性をクリック素性のベクター表現で表現する。
【００８９】
ステップＳ４：機械学習実行部２２は、ステップ３において得られた訓練データを用いて、学習データの機械学習を実行する。具体的には、機械学習実行部２２は、ステップＳ３においてベクター表現された訓練データを用いて入力クエリの検索要求属性を判別するための判別関数を学習する。そして、機械学習実行部２２は、学習した判別関数を学習データＤＢ１５に記憶させる。
【００９０】
ステップＳ５：属性推定部２３は、機械学習実行部２２により機械学習された判別関数によって、クリックログＤＢ１１に記憶され、かつ、訓練用クリックログＤＢ１２には含まれないクエリに対し、検索要求属性を推定する。
【００９１】
ステップＳ６：属性推定部２３は、ステップＳ５において推定された各々の検索要求属性と、この検索要求属性が推定されたクエリとを対応付けてクエリ属性辞書１６に記憶させる。
【００９２】
図９は、本実施形態の検索サーバ１０におけるクエリ属性辞書１６を用いた検索処理の流れを示すフローチャートである。
ステップＳ１１：検索実行部２４は、端末装置２０からのユーザ入力クエリを受け付ける。
ステップＳ１２：検索実行部２４は、クエリ属性辞書１６に記憶されたクエリ及び検索要求属性と検索要求属性対応ＤＢ１７とに基づいて、ステップＳ１１において受け付けたユーザ入力クエリを検索エンジンにより検索要求属性に応じた検索処理を実行する。
【００９３】
ステップＳ１３：検索実行部２４は、ステップＳ１１において受け付けたユーザ入力クエリを用いて検索エンジンにより通常検索処理を実行する。
ステップＳ１４：検索結果併合部２５は、ステップＳ１２において得られた検索結果と、ステップＳ１３において得られた検索結果とで重複する検索結果を併合する。
【００９４】
ステップＳ１５：提示部２６は、ステップＳ１４において併合された検索結果を端末装置２０に提示する。
【００９５】
図１０は、本実施形態の検索サーバ１０におけるクラスタリング処理の流れを示すフローチャートである。
ステップＳ２１：クラスタリング部２７は、クリックログＤＢ１１に記憶されたクエリ又は／及びクリックログＤＢ１１に記憶されたクリックＵＲＬのクラスタリングを実行する。
【００９６】
ステップＳ２２：クラスタリング部２７は、ステップＳ２１においてクラスタリングされた複数のクエリをグループ化する。
ステップＳ２３：クラスタリング部２７は、ステップＳ２１においてクラスタリングされた複数のクリックＵＲＬをグループ化する。
【００９７】
ステップＳ２３：クラスタリング部２７は、ステップＳ２２及び／又はステップＳ２３においてグループ化されたクエリ及び／又はクリックＵＲＬを訓練クエリ及び／又はクリック素性として、訓練データＤＢ１４に追加して記憶させる。
【００９８】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施例に記載されたものに限定されるものではない。
【図面の簡単な説明】
【００９９】
【図１】本発明の検索装置の一実施形態に係る検索システム１の概略を示す図である。
【図２】本発明の一実施形態である検索サーバ１０のハードウェア構成を示す図である。
【図３】本発明の検索装置の一実施形態である検索サーバ１０の機能ブロック図である。
【図４】クリックデータテーブル１１１の一例を示す図である。
【図５】セッションログテーブル１３１の一例を示す図である。
【図６】クエリ属性辞書１６の一例を示す図である。
【図７】検索要求属性対応ＤＢ１７の一例を示す図である。
【図８】本実施形態の検索サーバ１０における検索要求属性の推定処理の流れを示すフローチャートである。
【図９】本実施形態の検索サーバ１０におけるクエリ属性辞書１６を用いた検索処理の流れを示すフローチャートである。
【図１０】本実施形態の検索サーバ１０におけるクラスタリング処理の流れを示すフローチャートである。
【符号の説明】
【０１００】
１０  検索サーバ
１１  クリックログＤＢ
１２  訓練用クリックログＤＢ
１３  セッションログＤＢ
１４  訓練データＤＢ
１５  学習データＤＢ
１６  クエリ属性辞書
１７  検索要求属性対応ＤＢ
２０  端末装置
２１  訓練データ作成部
２２  機械学習実行部
２３  属性推定部
２４  検索実行部
２５  検索結果併合部
２６  提示部
２７  クラスタリング部
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】図１
【補正方法】変更
【補正の内容】
【図１】
2010033377.tif 000013
【手続補正４】
【補正対象書類名】図面
【補正対象項目名】図３
【補正方法】変更
【補正の内容】
【図３】
2010033377.tif 000014
【手続補正５】
【補正対象書類名】図面
【補正対象項目名】図４
【補正方法】変更
【補正の内容】
【図４】
2010033377.tif 000015
【手続補正６】
【補正対象書類名】図面
【補正対象項目名】図５
【補正方法】変更
【補正の内容】
【図５】
2010033377.tif 000016
【手続補正７】
【補正対象書類名】図面
【補正対象項目名】図６
【補正方法】変更
【補正の内容】
【図６】
2010033377.tif 000017
【手続補正８】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2010033377.tif 000018
【手続補正９】
【補正対象書類名】図面
【補正対象項目名】図９
【補正方法】変更
【補正の内容】
【図９】
2010033377.tif 000019
【手続補正１０】
【補正対象書類名】図面
【補正対象項目名】図１０
【補正方法】変更
【補正の内容】
【図１０】
2010033377.tif 000020