説明

検索条件推薦装置、検索条件推薦方法および検索条件推薦プログラム

【課題】類似した検索条件の推薦を抑え、ユーザの検索行動を支援する。
【解決手段】ユーザ指定の検索条件とその条件で検索された際の閲覧文書のURLとの組合せをログとして取得するログ取得部100と、前記ログから検索条件URLペア毎にその出現頻度を算出するログ処理部101と、ユーザ指定の処理対象検索条件と関連する前記ペアを前記算出結果から取得する検索条件URLペア取得部102と、前記検索条件URLペア情報を元に二部グラフを作るグラフ構築部103と、前記二部グラフを元に、前記処理対象検索条件とそれ以外の検索条件との関連性を判定する関連性判定部104と、前記二部グラフを分割するグラフ分割部105と、前記判定された関連性と前記分割情報を元に推薦クエリを選択する推薦クエリ選択部106と、ユーザ指定の検索条件に対応する前記推薦クエリを取得しユーザへ提示する推薦候補提示部107と、を具備する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンピュータ内部に存在もしくはコンピュータネットワークを介してアクセスできる文書集合を、一つ以上のキーワードから構成される検索条件を元に検索する手法に関する。
【背景技術】
【0002】
従来、検索条件を推薦する方法として検索結果のクラスタリングを用いる方法がある。この方法ではユーザにより指定された検索条件で検索した結果として得られたテキスト集合をクラスタリングし、各クラスタから代表的なキーワードを選択し、提示することで容易に絞り込み検索を可能とし、ユーザの検索行動を支援する(非特許文献1参照)。
【0003】
また、Web検索エンジンに代表されるような多くのユーザに利用されるテキスト検索装置では、ユーザが入力した検索条件や検索結果から閲覧した文書のURLがログとして記録可能であるため、それらを利用して検索条件の推薦を行う方法がある。
【0004】
例えば、非特許文献2では、検索条件と閲覧した文書のURLが記録されたクリックログを利用し検索条件を推薦する方式を提案している。検索の結果、閲覧する文書が類似した検索条件同士は関連しているとのアイディアに基づき、ユーザにより入力された検索条件に関連した検索条件を推薦することを可能としている。
【0005】
この方式によると、実際のユーザの行動に基づき推薦を行うため、検索条件と関連性が高くかつユーザにとって直感的な検索条件を提示可能となり、ユーザの検索行動を効率的に支援する事ができる。
【0006】
尚、本発明で利用する技術は、非特許文献3〜5に記載されている。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】Hiroyuki Toda,and Ryoji Kataoka,“A Search Result Clustering Method using Infomatively Named Entities”,Proc.ofWIDM 2005 November 5,pp.81−86
【非特許文献2】Qiaozhu Mei,Dengyong Zhou,and Kenneth Church,“Query Suggestion Using Hitting Time”,Proc.ofCKIM 2008
【非特許文献3】“Hitting Time”,Wikipedia,the free encyclopedia インターネット<URL:http:/en.wikipedia.org/wiki/Hitting_time>,[平成21年10月22日検索]
【非特許文献4】Akiko Aizawa,“A Method of Cluster−Based Indexing of Textual Data”,Proc.ofCOLING 2002
【非特許文献5】Deepayan Chakrabarti,Spiros Papadimitriou,Dharmendra S.Modha,and Christos Faloutsos:“Fully Automatic Cross-Associations”,Proc.ofKDD 2004 August 22−25
【発明の概要】
【発明が解決しようとする課題】
【0008】
上記で示した非特許文献1に記載の方法では、クラスタからキーワードを選択し、それを検索条件として提示するが、そのキーワードが必ずしもユーザにとって直感的ではないという問題がある。これはこの手法が検索されたコンテンツに依存する手法であり、文書群の特徴を的確に表現するキーワードが必ずしもユーザに直感的なキーワードとならないという問題に起因する。
【0009】
一方、上記で示した非特許文献2に記載の方法ではクリックログを利用することで、過去にユーザが入力した検索条件が推薦する検索条件の候補とするため、提示される検索条件がユーザにとって直感的ではないという問題はあまり起こらない。
【0010】
しかしながら、この手法では同一の文書の閲覧につながったという情報を元に検索条件同士の類似性を判定するため、推薦する検索条件同士が非常に類似したものとなる可能性がある。上記で示した非特許文献2に記載の手法を利用し、推薦する検索条件を特定した例を図9に示す。図9によれば、入力した検索条件との関連度でソートすると、似たクエリが似た関連度となる事がわかる。これは、類似した文書の閲覧につながる検索条件同士を関連するとした関連度の定義から不可避である。
【0011】
しかし、このままでは関連度の順に推薦する検索条件を選択する場合、類似の検索条件が多く選択され、これらを推薦してもユーザの検索行動を支援するためにはあまり意味がない。
【0012】
本発明は上記の課題を鑑み、類似した検索条件ばかりを推薦すること無く、ユーザの検索行動を支援する検索条件の推薦を実現できる検索条件推薦装置、方法、プログラムを提供することを目的としている。
【課題を解決するための手段】
【0013】
上記課題を解決するため、本発明は、推薦する検索条件候補と関連する文書の類似性を元に検索条件をクラスタリングし、それぞれのクラスタ(グループ)の中から一つもしくは少量の検索条件を選択することで、類似した検索条件の推薦を抑える。
【0014】
これにより、検索条件を推薦する場合に、ユーザにとって直感的な検索条件を、重複無く推薦することが可能となり、ユーザの検索行動を支援し、効率的な検索を実現可能とする。
【0015】
本発明の請求項1に記載の検索条件推薦装置は、コンピュータ内部に存在もしくはコンピュータネットワークを介してアクセスできる文書を対象に一つ以上のキーワードで構成される検索条件を受け付け、該検索条件に該当する文書を検索する装置における検索条件推薦装置であって、検索装置利用者により指定された検索条件と該検索条件で検索がおこなわれた際に閲覧された文書のURLとの組合せを、検索装置利用者のログとして取得するログ取得手段と、前記ログ取得手段によって取得されたログを解析し、検索条件と閲覧された文書のURLの組である検索条件URLペア毎にその出現頻度を算出するログ処理手段と、検索装置利用者により指定された、推薦クエリを取得したい処理対象検索条件と関連する前記検索条件URLペアを、前記ログ処理手段の算出結果から特定し取得する検索条件URLペア取得手段と、前記検索条件URLペア取得手段で取得された検索条件URLペア情報を元に、検索条件とURLをそれぞれノードとし、ペアによるつながりをエッジとする二部グラフを構築するグラフ構築手段と、前記グラフ構築手段で構築された二部グラフを元に、前記処理対象検索条件と、前記二部グラフ上に存在する前記処理対象検索条件以外の検索条件との関連性を判定する関連性判定手段と、前記グラフ構築手段で構築された二部グラフを、エッジのつながりを元に複数の部分グラフに分割するグラフ分割手段と、前記関連性判定手段で判定された処理対象検索条件と各検索条件の関連性と、前記グラフ分割手段で分割された検索条件群の分割情報を元に、推薦すべき検索条件である推薦クエリを選択する推薦クエリ選択手段と、検索装置利用者により指定された検索条件に対して、前記推薦クエリ選択手段により選択された推薦クエリを取得し、検索装置利用者へ提示する推薦候補提示手段と、を具備することを特徴としている。
【発明の効果】
【0016】
本発明によれば、検索条件と閲覧文書の関連性を元にユーザ(検索装置利用者)が入力した検索条件に対応する推薦検索条件を提示する際に、検索条件と閲覧文書の関係が示される二部グラフの構造を元に推薦候補の検索条件を複数のグループに分割し、それぞれのグループから一つもしくは少量の検索条件を取得、提示することができる。
【0017】
これにより、検索条件を推薦する際の候補に類似した候補が提示されること無く、ユーザの検索行動を効果的に支援することを可能とする。
【図面の簡単な説明】
【0018】
【図1】本発明の実施例の構成図。
【図2】本発明の実施例におけるログDB201のデータ例を示す説明図。
【図3】本発明の実施例におけるログ統計DB202のデータ例を示す説明図。
【図4】本発明の実施例で構築される二部グラフの例を示す説明図。
【図5】本発明の実施例における二部グラフのクラスタリングの例を示す説明図。
【図6】本発明の実施例における推薦クエリDB203のデータ例を示す説明図。
【図7】本発明の実施例におけるオンライン処理のフローチャート。
【図8】本発明の実施例におけるオフライン処理のフローチャート。
【図9】既存手法により推薦される検索条件の例を示す説明図。
【発明を実施するための形態】
【0019】
以下、図面を参照しながら本発明の実施の形態を説明するが、本発明は下記の実施形態例に限定されるものではない。
【0020】
実施例として、本発明の検索条件推薦装置を適用した検索システムの構成を図1に示す。
【0021】
図1において、001は検索アプリケーション、002は、コンピュータ内部に存在もしくはコンピュータネットワークを介してアクセスできる文書を検索する検索システムである。
【0022】
100はログ取得手段としてのログ取得部、101はログ処理手段としてのログ処理部、102は検索条件URLペア取得手段としての検索条件URLペア取得部、103はグラフ構築手段としてのグラフ構築部、104は関連性判定手段としての関連性判定部、105はグラフ分割手段としてのグラフ分割部、106は推薦クエリ選択手段としての推薦クエリ選択部、107は推薦候補提示手段としての推薦候補提示部、108はユーザ(検索装置利用者)とのインターフェースとしてのブラウザである。
【0023】
201はログDB(データベース)、202はログ統計DB(データベース)、203は推薦クエリDB(データベース)である。
【0024】
図1の各部100〜107の、後述する各機能は例えばコンピュータによって達成される。
【0025】
検索アプリケーション001は、ブラウザ108を介してユーザから検索条件の入力を受け付け、検索システム002にアクセスし、検索システム002で得られた検索結果をブラウザ108を介してユーザに提示する。また、ユーザが入力した検索条件およびユーザが閲覧した文書のURLをログ取得部100に渡す。
【0026】
さらに、ユーザが入力した検索条件を推薦候補提示部107に入力し、該推薦候補提示部107から推薦検索条件を取得し、検索結果とともに提示する。
【0027】
検索システム002は、検索アプリケーション001を通じて検索条件を受け取り、該検索条件に適合する文書を特定し、検索条件との関連性に基づき優先度付けし、検索結果を検索アプリケーション001に返却する。
【0028】
ログ取得部100は、ユーザが入力した検索条件およびユーザが閲覧した文書のURLの組合せを検索アプリケーション001からログとして受け付け、ログDB201に格納する。
【0029】
ログDB201は、ユーザの検索行動を記録するデータベースであり、例えば図2に示すように時刻、ユーザID、検索条件、ユーザが閲覧した閲覧文書URLで構成される。
【0030】
ログ処理部101は、ログDB201のログを取得して解析し、検索条件と閲覧文書の組合せ毎にその出現頻度を算出し、結果をログ統計DB202に格納する。
【0031】
ログ統計DB202は、検索条件と閲覧文書のURLの組合せと、その組合せの出現回数(頻度)を格納するデータベースであり、例えば図3のように構成される。
【0032】
検索条件URLペア取得部102は、ユーザから例えば図示省略のパソコンの入力ツールを介して、推薦クエリを取得したい処理対象検索条件を入力として受け付け、この処理対象検索条件に関係するレコードを、ログ統計DB202から取得し、グラフ構築部103に渡す。
【0033】
つまり、この処理は以降の処理で、処理対象とするレコードを特定している。
【0034】
ここでいう処理対象検索条件に関係するレコードとは、例えば、処理対象検索条件を含むペアに出現するURLを含むペアが考えられる。さらにそこで取得されたペアが含む検索条件を含むペアも関連するペアとして考えられる。どこまで取得するかは予めユーザが指定することが考えられる。
【0035】
グラフ構築部103は、検索条件URLペア取得部102から取得した検索条件(処理対象検索条件)とURLのペアを元に、検索条件とURLのそれぞれをノードとし、それらの間の関係(ペアによるつながり)をエッジとした二部グラフを構築する。
【0036】
また検索条件とURLのペアの出現頻度(図3参照)は、そのままもしくは、ノードからの出次数で正規化した値を算出して、エッジの重みとして利用する。
【0037】
前記二部グラフの例を図4に示す。図4において、「Docomo.jp」、「Ntt.jp」、「Ntt−x.jp」および「Nttdata.jp」がURLのノードであり、「どこも」、「NTT」、「Ntt−x」および「data」が検索条件のノードであり、各ノード間に付与された数値はエッジの密度を表している。
【0038】
前記構築したグラフを関連性判定部104およびグラフ分割部105に渡す。
【0039】
関連性判定部104は、グラフ構築部103から取得した二部グラフ上において、処理対象検索条件と、それ以外の検索条件の関連性を算出する。そして、処理対象検索条件および検索条件とその関連性の組合せを推薦クエリ選択部106へ渡す。
【0040】
前記関連性の算出方法としては、処理対象検索条件とそれ以外の各検索条件との間の最少ステップ数や、二部グラフ中のランダムウォークを考え、ノード間の最少到達時間を考えるhitting time(非特許文献3参照)等を利用することが考えられる。
【0041】
グラフ分割部105は、グラフ構築部103から取得した二部グラフをエッジの密度の情報(エッジのつながり)等に基づき、複数の部分グラフに分割する。取得した分割情報は推薦クエリ選択部106へ渡す。
【0042】
前記分割の例を図5に示す。分割の方法としては、情報量基準を用いた方法(非特許文献4参照)や、MDL原理を利用した方法(非特許文献5参照)等が考えられる。
【0043】
推薦クエリ選択部106は、関連性判定部104から取得した処理対象検索条件と二部グラフ上の各検索条件の関連度の値および、グラフ分割部105から取得した二部グラフの分割情報を元に、推薦すべき検索条件(推薦クエリ)を選択し、推薦クエリDB203に格納する。
【0044】
推薦クエリの選択方法は、まず二部グラフの分割情報から検索条件をグループ別けし、それぞれのグループから処理対象検索条件と最も関連度の高い検索条件を選択し、推薦クエリとする。
【0045】
図5の例で説明すると、検索条件は「どこも」が含まれるグループと、「Ntt−x」、「data」が含まれるグループの2つのグループがあり、それぞれのグループからひとつずつ検索条件を選択し、推薦クエリとする。
【0046】
推薦クエリDB203は、推薦クエリ選択部106によって特定された推薦検索条件を検索条件とともに格納するデータベースであり、例えば図6のように構成される。
【0047】
推薦候補提示部107は、検索アプリケーション001からユーザによって入力された検索条件を取得し、その検索条件に対応する推薦検索条件を推薦クエリDB203から取得して検索アプリケーション001に返す。
【0048】
ブラウザ108は、ユーザとのインターフェースであり、検索アプリケーション001が生成するページを表示し、検索条件の受け付け、検索結果、推薦検索条件の提示を行う。
【0049】
図1のシステムで実行される処理の手順は大きく別けて図7に示すオンライン処理と図8に示すオフライン処理に分かれる。
【0050】
図7のオンライン処理は検索アプリケーション001が中心となり、ユーザの検索に応じて、ログのログDB201への格納、推薦クエリDB203に格納された推薦検索条件のユーザヘの提示が行われる。
【0051】
まずステップS11において、アプリケーション001は、ブラウザ108を介してユーザから検索条件の入力を受け付ける。
【0052】
次にステップS12において、検索アプリケーション001は、検索システム002へアクセスし、検索条件を送る。
【0053】
次にステップS13において、検索システム002は、受け取った前記検索条件に適合する文書を特定し、検索条件との関連性に基づいて優先度付けし、検索結果を検索アプリケーション001に返却する。
【0054】
次にステップS14において、検索アプリケーション001は、前記返却された検索結果をブラウザ108を介してユーザに提示する。
【0055】
次にステップS15において、検索アプリケーション001は、ユーザが入力した検索条件とユーザが閲覧した文書URLを、ログとしてログ取得部100に渡す。
【0056】
次にステップS16において、ログ取得部100は、渡されたログをログDB201に格納する。
【0057】
次にステップS17において、検索アプリケーション001は、ユーザが入力した検索条件を推薦候補提示部107に入力する。
【0058】
次にステップS18において、推薦候補提示部107は、後述する図8のオフライン処理により推薦クエリDB203に格納された推薦検索条件のうち、前記入力された検索条件に対応する推薦検索条件を取得し、検索アプリケーション001に返却する。
【0059】
次にステップS19において、検索アプリケーション001は、前記返却された推薦検索条件をブラウザ108を介してユーザに提示する。
【0060】
図8のオフライン処理は、ログDB201に格納されたログを利用して、推薦クエリDB203を構築する。
【0061】
まずログDB201に格納されたすべてのログについて図8(a)の処理を実施する。すなわちステップS20において、ログ処理部101は、ログDB201のログを取得して解析し、検索条件と閲覧文書の組合せ毎にその出現頻度を算出し、結果をログ統計DB202に格納する。
【0062】
次に、推薦クエリを取得したい個々の処理対象検索条件について、図8(b)の処理を実施する。すなわちまずステップS21において、検索条件URLペア取得部102は、ユーザから推薦クエリを取得したい処理対象検索条件を入力として受け付ける。
【0063】
次にステップS22において、検索条件URLペア取得部102は、入力された処理対象検索条件に関係するレコードをログ統計DB202から取得し、グラフ構築部103に渡す。
【0064】
次にステップS23において、グラフ構築部103は、検索条件URLペア取得部102から取得した検索条件とURLのペアを元に二部グラフを構築する。構築したグラフを関連性判定部104およびグラフ分割部105に渡す。
【0065】
次にステップS24において、関連性判定部104は、グラフ構築部103から取得した二部グラフ上において、処理対象検索条件と、それ以外の検索条件の関連性を算出する。算出した関連性は推薦クエリ選択部106へ渡す。
【0066】
次にステップS25において、グラフ分割部105は、グラフ構築部103から取得した二部グラフをエッジの密度の情報等に基づき、複数の部分グラフに分割する。取得した分割情報は推薦クエリ選択部106へ渡す。
【0067】
次にステップS26において、推薦クエリ選択部106は、関連性判定部104から取得した処理対象検索条件と二部グラフ上の各検索条件の関連度の値および、グラフ分割部105から取得した二部グラフの分割情報を元に、推薦すべきクエリ(推薦検索条件)を選択し、推薦クエリDB203に格納する。
【0068】
また、本実施形態の検索条件推薦装置における各手段の一部もしくは全部の機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明を実現することができること、本実施形態の検索条件推薦方法における手順をコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができることは言うまでもなく、コンピュータでその機能を実現するためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えばFD(Floppy(登録商標) Disk)や、MO(Magneto−Optical disk)、ROM(Read Only Memory)、メモリカード、CD(Compact Disk)−ROM、DVD(Digital Versatile Disk)−ROM、CD−R、CD−RW、HDD、リムーバブルディスクなどに記録して、保存したり、配布したりすることが可能である。また、上記のプログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
【符号の説明】
【0069】
001…検索アプリケーション
002…検索システム
100…ログ取得部
101…ログ処理部
102…検索条件URLペア取得部
103…グラフ構築部
104…関連性判定部
105…グラフ分割部
106…推薦クエリ選択部
107…推薦候補提示部
108…ブラウザ
201…ログDB
202…ログ統計DB
203…推薦クエリDB

【特許請求の範囲】
【請求項1】
コンピュータ内部に存在もしくはコンピュータネットワークを介してアクセスできる文書を対象に一つ以上のキーワードで構成される検索条件を受け付け、該検索条件に該当する文書を検索する装置における検索条件推薦装置であって、
検索装置利用者により指定された検索条件と該検索条件で検索がおこなわれた際に閲覧された文書のURLとの組合せを、検索装置利用者のログとして取得するログ取得手段と、
前記ログ取得手段によって取得されたログを解析し、検索条件と閲覧された文書のURLの組である検索条件URLペア毎にその出現頻度を算出するログ処理手段と、
検索装置利用者により指定された、推薦クエリを取得したい処理対象検索条件と関連する前記検索条件URLペアを、前記ログ処理手段の算出結果から特定し取得する検索条件URLペア取得手段と、
前記検索条件URLペア取得手段で取得された検索条件URLペア情報を元に、検索条件とURLをそれぞれノードとし、ペアによるつながりをエッジとする二部グラフを構築するグラフ構築手段と、
前記グラフ構築手段で構築された二部グラフを元に、前記処理対象検索条件と、前記二部グラフ上に存在する前記処理対象検索条件以外の検索条件との関連性を判定する関連性判定手段と、
前記グラフ構築手段で構築された二部グラフを、エッジのつながりを元に複数の部分グラフに分割するグラフ分割手段と、
前記関連性判定手段で判定された処理対象検索条件と各検索条件の関連性と、前記グラフ分割手段で分割された検索条件群の分割情報を元に、推薦すべき検索条件である推薦クエリを選択する推薦クエリ選択手段と、
検索装置利用者により指定された検索条件に対して、前記推薦クエリ選択手段により選択された推薦クエリを取得し、検索装置利用者へ提示する推薦候補提示手段と、
を具備することを特徴とする検索条件推薦装置。
【請求項2】
コンピュータ内部に存在もしくはコンピュータネットワークを介してアクセスできる文書を対象に一つ以上のキーワードで構成される検索条件を受け付け、該検索条件に該当する文書を検索する装置における検索条件推薦方法であって、
ログ取得手段が、検索装置利用者により指定された検索条件と該検索条件で検索がおこなわれた際に閲覧された文書のURLとの組合せを、検索装置利用者のログとして取得するログ取得ステップと、
ログ処理手段が、前記ログ取得手段によって取得されたログを解析し、検索条件と閲覧された文書のURLの組である検索条件URLペア毎にその出現頻度を算出するログ処理ステップと、
検索条件URLペア取得手段が、検索装置利用者により指定された、推薦クエリを取得したい処理対象検索条件と関連する前記検索条件URLペアを、前記ログ処理手段の算出結果から特定し取得する検索条件URLペア取得ステップと、
グラフ構築手段が、前記検索条件URLペア取得手段で取得された検索条件URLペア情報を元に、検索条件とURLをそれぞれノードとし、ペアによるつながりをエッジとする二部グラフを構築するグラフ構築ステップと、
関連性判定手段が、前記グラフ構築手段で構築された二部グラフを元に、前記処理対象検索条件と、前記二部グラフ上に存在する前記処理対象検索条件以外の検索条件との関連性を判定する関連性判定ステップと、
グラフ分割手段が、前記グラフ構築手段で構築された二部グラフを、エッジのつながりを元に複数の部分グラフに分割するグラフ分割ステップと、
推薦クエリ選択手段が、前記関連性判定手段で判定された処理対象検索条件と各検索条件の関連性と、前記グラフ分割手段で分割された検索条件群の分割情報を元に、推薦すべき検索条件である推薦クエリを選択する推薦クエリ選択ステップと、
推薦候補提示手段が、検索装置利用者により指定された検索条件に対して、前記推薦クエリ選択手段により選択された推薦クエリを取得し、検索装置利用者へ提示する推薦候補提示ステップと、
を具備することを特徴とする検索条件推薦方法。
【請求項3】
コンピュータを請求項1に記載の各手段として機能させる検索条件推薦プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2011−103020(P2011−103020A)
【公開日】平成23年5月26日(2011.5.26)
【国際特許分類】
【出願番号】特願2009−256855(P2009−256855)
【出願日】平成21年11月10日(2009.11.10)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】