説明

複数の属性を利用したWebページ推薦方法

【課題】WebページそのもののアクセスパターンのLCSではなく、各Webページが持つ複数の属性に着目し、それらの組合わせのパターンの頻出Webページ間関係を抽出することでWebページの推薦を行う。
【解決手段】Webページが、ページごとに複数の属性情報を有する。複数のユーザのアクセス履歴から、セッションを各Webページの前記属性情報の属性ベクトル列に変換し、属性ベクトル列の頻出Webページ間関係を抽出する。Webサイトを訪れたユーザのアクティブセッションから、すべてのWebページの属性情報を属性ベクトルとして抽出し、該抽出された属性ベクトルと、前記頻出Webページ間関係の一部とを比較し、一致する前記頻出Webページ間関係の部分が存在した場合に、当該一致した前記頻出Webページ間関係の前記部分を除いた部分の属性ベクトルを有するWebページを推薦する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、Webサイトを訪れたユーザを適切なページに導くためのWebページ推薦方法に関し、特に、Webページの持つ複数の属性に着目し、それらの組み合わせのパターンを抽出することでWebページの推薦を行う方法に関する。
【背景技術】
【0002】
近年、Webサイトにおける情報量の増大から、Webサイトのユーザの選択肢が増え、提供したい情報にユーザがたどりつけない場合も多くなっている。このため、Webサイトに訪れたユーザを適切なページに導くためのWebページ推薦の重要性が高まってきている。
例えば、飲食店情報検索サイトなどで飲食店を探す場合に、当該サイトに掲載されている飲食店の情報が非常に多い場合は、サイトを訪れたユーザが自分の要求にあった飲食店の情報までたどりつくことは必ずしも容易ではない。このため、訪れたユーザに対してそのユーザが望んでいると推測される飲食店のWebページを候補として推薦することが重要となる。
【0003】
Webページ推薦方法には、大別すると、ユーザの評価情報を直接収集し分析する方法と、Webサイトに残るアクセス履歴を解析する方法がある。前者は、アクセスしたWebページをどのように評価しているかという情報を収集するためにユーザに評価を求め、各ユーザに労力を要求することから、導入の障壁が高いとともに、適切な評価が得られるかどうかがそれぞれのユーザに依存し、ばらつくことが考えられる。
一方、後者は、一般のアクセス履歴中のパターンを解析するために、ユーザには特別な労力を求めず、全てのユーザから同レベルの情報を得ることが可能となるため、前者に比べると導入が容易で評価のばらつきも少ないと言える。
【0004】
後者のアクセス履歴を解析する方法としては、アクセス履歴の中からユーザのセッションを抽出し、そのセッション中にアクセスされた各Webページをアイテムとして、マイニングアルゴリズムを適用し相関ルールを抽出して推薦する方法(非特許文献2、3参照)、Webページの頻出アクセスパターンを抽出して推薦する方法、アクセスパターンのLCS(Longest Common Subsequence)を抽出して推薦する方法(特許文献1参照)等が提案されている。
【0005】
相関ルールを抽出する方法は、アクセスの順番を考慮しないため、ユーザのアクセス動向を的確に抽出できないという問題がある。また、Webページの頻出アクセスパターンを抽出する方法は、全く同一のアクセスパターンでないと推薦できないため、特にWebページ数が増えて発生パターンの種類が膨大になると、十分な頻度を持ったパターンを抽出することができない。アクセスパターンのLCSを抽出する方法は、アクセスの順番が完全に一致しない場合でも、アクセスした順番の特徴を抽出することができるため、他の方法に比較すると有効であるという結果が報告されている(非特許文献6参照)。
しかし、Webページの数が膨大になると、LCSを抽出する方法であってもパターンの種類が多くなり、アクセスパターンをそのまま利用する方法と同様に、十分な頻度を持ったパターンを抽出することが困難となる。
【0006】
上述のWebページのアクセス履歴に相関ルールマイニング方法を適用するWebページ推薦方法では、アクティブセッション中のWebページに対して、今までにアクセスしたWebページと共起頻度の高いWebページを推薦する(非特許文献2参照)。しかし、新規のページにアクセスした場合は推薦できないという問題があり、改良した方法も提案されているが(非特許文献3参照)、ユーザがブックマーク情報を提供する必要があるなどコストが大きい。さらに、いずれの方法もWebページアクセスの順番を考慮していない。本発明に係る方法が対象としているような、順番にWebページを絞り込んでいくようなWebサイトにおいては、順番を考慮する必要がある。
【0007】
また、書籍を販売するサイトにおける商品推薦を目的として、協調フィルタリングを用いた方法や(非特許文献1参照)、ユーザの評価履歴を基にユーザの嗜好性モデルを作成し、それを基に推薦を行う方法も提案されている(非特許文献5参照)。しかしながら、どちらの方法についてもユーザの評価を何らかの形で登録しておく必要があるため、やはりコストが大きい。
一方、コンテンツの内容や性質を定量化し、ユーザごとに評価値を予測するモデルも提案されているが(非特許文献4参照)、実際の事例に適用するためにどのように定量化するかが課題となっている。
【0008】
上記の飲食店情報を提示するサービスなど、Webサイト上でサービスを提供する事業においては、複数のユーザのアクセス動向を把握して推薦することが重要であり、そのためには各ユーザのアクセスの順番を考慮することが有用となる。このため、順番を考慮しない相関ルールを抽出する方法は適さない。しかし、アクセスパターンの頻度をそのまま利用すると、全く同一のアクセスの順番にしか推薦できないため、推薦できるものが限られてしまうことになる。このため、アクセスのシーケンスの中からLCSを抽出して利用する方法が、相関ルールを使う方法や頻出アクセスパターンをそのまま使う方法よりも有効である。
【0009】
シーケンスxの部分シーケンスとシーケンスyの部分シーケンスの中で両方のシーケンスに含まれるものを共通部分シーケンス(Common Subsequence)というが、共通部分シーケンスの中で最も長いものを最長共通部分シーケンス(Longest Common Subsequence)と呼び、「LCS」と略する。例えば、x=A−F−B−Dとy=A−B−C−DのLCSは「A−B−D」である。アクセス履歴中から抽出したユーザセッションのWebページのリストから抽出されたLCSを記憶しておくことで、途中の横道にそれたアクセス等を除いた多くのユーザが通るパターンを抽出することができる。この記憶しておいたLCSの中から推薦対象のアクティブセッションのWebページのアクセス順に前半が対応するLCSを探し出して、その後半のWebページを示すことで、前半に似たアクセスパターンを持つ多くのユーザがその後にアクセスしたWebページを推薦することができる(非特許文献6参照)。
【0010】
図1は、WebページアクセスパターンからLCSを抽出してWebページ推薦を行う従来の方法における処理の流れを示す図である。この方法の概要を、図1と対応させて以下に述べる。
[ステップ1]
まず、ユーザのアクセス履歴中に含まれるIPアドレス情報とクッキー情報を基に同一ユーザであると判定されたWebページアクセス履歴を結合することによって、ユーザセッションを抽出する。ここでは、ユーザセッションはWebページのIDのシーケンスとなる。図1では、同じIPアドレス(IP1)を持つWebページのアクセス履歴を結合し、ユーザセッションA−F−B−Dを抽出している。
[ステップ2]
次に、抽出されたユーザ1からユーザnまでの全てのユーザセッションに対して、その任意の2セッションに含まれるLCSを算出し、その頻度情報とともに蓄積する。図1の例では、ユーザセッションの組A−F−B−DとA−B−C−DからはそのLCSであるA−B−Dを、別のセッションの組であるA−B−C−DとB−A−C−DからそのLCSであるA−C−Dと、B−C−Dを得ている。
[ステップ3]
推薦の対象となる現在のアクティブセッションと、上で求め蓄積しておいたLCSを比較し、推薦候補を得る。図1の例では、ユーザXのアクティブセッションA−Bに対して、蓄積されているLCSの中のA−B−Dの前半とパターンマッチし、推薦候補のWebページDを得ている。
【0011】
この方法では、出現頻度の高いアクセスパターンを重視することで、精度の高い推薦を実現している(非特許文献6参照)。しかし、推薦対象となるWebページ数が増大すると、WebページアクセスパターンのLCSを用いても、適切なWebページを推薦できなくなる。ここで、実際にある飲食店サイトの2008年11月1日のアクセス履歴から1,000セッションをサンプリングし、LCSを抽出した結果、表1に示す長さと種類のLCSを抽出できたが、表から分かるように十分な長さを持ったLCSは少なかった。
【表1】

さらに、この抽出したLCSを用いて、同一の飲食店サイトに対して2009年8月21日からサンプリングした1,000アクティブセッションに対して推薦候補の抽出を試みたところ、実際に推薦候補を見つけることができたセッションは26セッションにとどまった。これは、適用した飲食店サイトにおいては、推薦対象となるWebページの飲食店の数が非常に多く存在し、抽出したLCSの数に対して、ユーザのアクセスしたパターンの数のほうがはるかに大きい為と言える。
【先行技術文献】
【特許文献】
【0012】
【特許文献1】特開2004−152209号公報
【非特許文献】
【0013】
【非特許文献1】Linden, G., B.Smith and J.York: Amazon.com recommendations: Item-to-item collaborative filtering,, IEEE Internet Comput., Vol.4, No.1 (2003).
【非特許文献2】Mobasher, B., Dai, H., Luo, T. and Nakagawa, M.: Effective personalization based on association rule discovery from Web usage data, Proc. 3rd Intl. Workshop on Web information and data management, pp.9-15 (2001).
【非特許文献3】Mobasher, B., Dai, H., Luo, T. and Nakagawa, M.: Using sequential and non-sequential patterns in predictive Web usage mining tasks, Proc. IEEE International Conference on Data Mining (ICDM'02), pp.669-672 (2002).
【非特許文献4】麻生英樹,小野智弘,本村陽一,黒川茂莉,櫻井彰人:協調フィルタリングと属性ベースフィルタリングの統合について,信学技報NC2006-54(2006-10) (2006).
【非特許文献5】黒川茂莉,小野智弘,本村陽一,麻生英樹,櫻井彰人:映画コンテンツ推薦のためのユーザ嗜好性モデルの実験的評価,信学技報NC2004-182(2005-03) (2004).
【非特許文献6】山元理絵,小林 大,吉原朋宏,小林隆志,横田治夫:アクセスログに基づくWebページ推薦におけるLCSの利用とその解析,情報処理学会論文誌データベース No.SIG11(TOD34), Vol.48 (2007).
【発明の概要】
【発明が解決しようとする課題】
【0014】
本発明は、上述のような事情に鑑み為されたものであり、WebページそのもののアクセスパターンのLCSではなく、各Webページが持つ複数の属性に着目し、Webページ間における属性の組合わせのパターンの頻出する関係(以下「頻出Webページ間関係」という。)を抽出することでWebページの推薦を行う方法を提供することを目的とする。
【課題を解決するための手段】
【0015】
本発明は、Webサイトを訪れたユーザのアクティブセッションを解析して、該ユーザに対して次にアクセスすべきWebページを推薦するための、プログラムされたコンピュータによる、Webページ推薦方法に関するものであり、本発明の上記目的は、
前記Webページが、ページごとに複数の属性情報を有するものであり、
前記方法は、前記コンピュータが、
複数の前記ユーザのアクセス履歴から、前記複数のユーザの前記Webページに関するユーザセッションを抽出するステップと、
前記Webページごとに前記複数の属性情報を抽出し、前記各ユーザごとの前記セッションを、各Webページの前記属性情報の属性ベクトル列に変換するステップと、
前記複数のユーザ間における前記属性ベクトル列の頻出Webページ間関係を抽出するステップと、
を備えるとともに、
前記Webサイトを訪れたユーザのアクティブセッションから、該アクティブセッションに含まれるすべてのWebページの属性情報を属性ベクトルとして抽出し、該抽出された属性ベクトルと、前記頻出Webページ間関係の一部とを比較し、一致する前記頻出Webページ間関係の部分が存在した場合に、当該一致した前記頻出Webページ間関係の前記部分を除いた部分の属性ベクトルを有するWebページを推薦するステップと、を備えることを特徴とする、複数属性を利用したWebページ推薦方法によって達成される。
【0016】
また、本発明の上記目的は、前記属性ベクトル列の頻出Webページ間関係を頻出シーケンスとして抽出するステップが、LCSアルゴリズムを用いて行うこと、或いは、頻出Webページ間関係を頻出集合として相関ルールマイニングを用いて行うことを特徴とする複数属性を利用したWebページ推薦方法によって効果的に達成される。
【発明の効果】
【0017】
本発明に係る方法によれば、一つのWebサイト内には多数のWebページが存在していても、属性に基づいて多くの利用者に共通する傾向を適切に把握し、それを推薦に利用することができる。サイト訪問者に対してサイト内の閲覧履歴から、より的確に閲覧ページの推薦ができるという効果がある。
また、属性を利用するため、新規のWebページを含むアクティブセッションを対象にすることも、新規のWebページを推薦することも可能となる。
【図面の簡単な説明】
【0018】
【図1】WebページアクセスパターンのLCSを用いた従来のWebページ推薦方法を説明するための図である。
【図2】本発明に係る複数属性に着目したWebページ推薦方法(LCS法)を説明するための図である。
【図3】本発明に係る方法(LCS法)の処理の流れを示すフローチャートである。
【図4】本発明に係る複数属性に着目したWebページ推薦方法(相関ルールマイニング法)を説明するための図である。
【図5】本発明に係る方法(相関ルールマイニング法)の処理の流れを示すフローチャートである。
【図6】属性の粒度と抽出されるLCSの関係を示す図である。
【発明を実施するための形態】
【0019】
以下に、本発明に係る方法である複数の属性を用いたアクセス履歴からのWebページ推薦方法について、図面を参照しつつ、詳細に説明する。
なお、本発明に係るWebページ推薦方法は、Webサイトに残るユーザのアクセス履歴を解析することによって行うものであり、Webページのアクセス履歴を蓄積することが前提となっている(ステップ0)。Webページのアクセス履歴を蓄積する方法は既存の技術にて可能であるので、ここでは詳しくは述べない。また、この方法は、所定のコンピュータプログラムがインストールされたWebサイトを運用するWebサーバ(図示せず。)によって実行される。従って、Webページのアクセス履歴は蓄積されていることを前提として、以下説明する。
【0020】
本発明に係るWebページの複数属性に着目した方法のうち、頻出Webページ間関係の抽出をLCSアルゴリズムによって行う処理の流れを、図2及び図3と対応させて以下に説明する。
まず、従来のWebページ単位のLCS抽出方法と同様に、ユーザのアクセス履歴からユーザセッションを抽出する(ステップ1)。
次に、ユーザセッション中に含まれるWebページのシーケンスを各Webページの持つ属性をベクトルで表現したもの(以下、「属性ベクトル」という。)のシーケンスに変換する(ステップ2)。図2の例では、ページAが、(α1,β2,γ1)という属性を、ページBが(α3,β1,γ2)という属性を、ページDが(α3,β3,γ2)という属性を、ページFが(α3,β2,γ1)という属性を持っており、A−F−B−Dというユーザセッションは、(α1,β2,γ1)−(α3,β2,γ1)−(α3,β1,γ2)−(α3,β3,γ2)という属性ベクトルのシーケンスに変換されたことを示している。
なお、Webページから、それが有する属性を抽出する方法としては、例えば、ページの記載内容からキーワード検索で行ったり、予めページを作成する段階でメタ情報等で属性を埋め込んでおいたりすることが考えられる。
【0021】
上で求めた属性ベクトルのシーケンスに対して、属性ベクトルどうしの全要素が等しい場合に同一と判断してLCSを抽出し、これを蓄積しておく(ステップ3)。図2の例でいえば、ユーザ1のA−F−B−Dと、ユーザ2のA−B−C−Dというユーザセッションに対応する属性ベクトルのシーケンスの組からは、(α1,β2,γ1)−(α3,β1,γ2)−(α3,β3,γ2)という属性ベクトルのLCSが抽出される。
【0022】
一方、ユーザXに対するページ推薦対象のアクティブセッションに対しても、ユーザXがアクセスしたWebページを属性ベクトルに変換する(ステップ4)。図2の例では、ページPが(α1,β2,γ1)、ページQが(α3,β1,γ2)という属性ベクトルを持っていたとする。
【0023】
アクティブセッションの属性ベクトルのシーケンスと属性ベクトルのLCSの前半部分どうしを比較し、パターンマッチを行い(ステップ5)、マッチする属性ベクトルのLCSの後半部分の属性ベクトルを推薦候補とする。図2の例では、(α3,β3,γ2)が推薦候補の属性ベクトルとなる。そこで推薦候補の属性ベクトルと同じ属性ベクトルを持つWebページを推薦する(ステップ6)。図2の例では、ページRが(α3,β3,γ2)という属性ベクトルを持っているため、推薦される。本発明に係る方法では、属性ベクトルを用いることにより、同一のWebページでなくとも、複数の属性が一致していれば同一と判定することで、長いLCSができる可能性が高くなる。
さらに、そのLCSを用いた推薦においても、属性ベクトルを用いることで、アクセス履歴には含まれなかったWebページであっても推薦することが可能となる。図2の例では、アクティブセッションのWebページP、Qや、推薦対象のWebページRのように、アクセス履歴に含まれていないページの場合にも推薦可能である。
なお、ページ推薦の具体的な方法であるが、PというページとQというページを見たユーザに対して、本発明に係る方法によって次にRというページを推薦することになった場合、今見ているQのページの中に、Rのページに関する情報を含めることが考えられる(例えば、Rのページのクリッカブルなサムネイルを置くこと。)。これは、PのページからQのページに行く(クリックして進む)時に、Qの中にRのページを含んだ形のページに進むことで実現できる。また、クッキーを使用すれば、Qのページの中に動的にRのページの情報を埋め込むことができるので、さらに柔軟な対応が可能となる。
【0024】
これに対して、図1で示した従来のWebページ単位のLCSによる推薦では、アクティブセッションに現れるWebページも、推薦対象のWebページもアクセス履歴に含まれていなければならなかった。
一般に、各Webページは複数の属性を持つことが想定できる。1属性だけを用いると、その属性に偏って推薦を行ってしまうため、ユーザに対して適切なページに誘導できない可能性がある。
そこで、本発明に係る方法では複数の属性のベクトルを用いることとした。この複数の属性として、どのような種類の属性で、どのような粒度を用いるかが重要となる。
【0025】
次に、本発明に係るWebページの複数属性に着目した方法のうち、頻出Webページ間関係を順番を持たない頻出集合と考えた場合に、頻出Webページ間関係の抽出を相関ルールマイニングによって行う処理の流れを、図4及び図5と対応させて以下に説明する。
【0026】
まず、従来のWebページ単位の頻出アイテム集合抽出方法と同様に、ユーザのアクセス履歴からユーザセッションを抽出する(ステップ11)。
次に、ユーザセッション中に含まれるWebページの集合を各Webページの持つ属性をベクトルで表現したもの(以下、「属性ベクトル」という。)の集合に変換する(ステップ12)。図4の例では、ページAが、(α1,β2,γ1)という属性を、ページBが(α3,β1,γ2)という属性を、ページDが(α3,β3,γ2)という属性を、ページFが(α3,β2,γ1)という属性を持っており、A−F−B−Dというユーザセッションは、[(α1,β2,γ1),(α3,β2,γ1),(α3,β1,γ2),(α3,β3,γ2)]という属性ベクトルの集合に変換されたことを示している。
【0027】
上で求めた属性ベクトルの集合に対して、属性ベクトルどうしの全要素が等しい場合に同一と判断して頻出集合を相関ルールマイニングを用いて抽出し、これを蓄積しておく(ステップ13)。図4の例でいえば、ユーザ1のA−F−B−Dと、ユーザ2のA−B−C−Dというユーザセッションに対応する属性ベクトルのシーケンスの組からは、[(α1,β2,γ1),(α3,β1,γ2),(α3,β3,γ2)]という属性ベクトルの頻出集合が抽出される。
【0028】
一方、ユーザXに対するページ推薦対象のアクティブセッションに対しても、ユーザXがアクセスしたWebページを属性ベクトルに変換する(ステップ14)。図4の例では、ページPが(α1,β2,γ1)、ページQが(α3,β1,γ2)という属性ベクトルを持っていたとする。
【0029】
アクティブセッションの属性ベクトルの集合と属性ベクトルの頻出集合の部分集合を比較し、パターンマッチを行い(ステップ15)、マッチする属性ベクトルの頻出集合の部分集合に含まれなかった属性ベクトルを推薦候補とする。図4の例では、(α3,β3,γ2)が推薦候補の属性ベクトルとなる。そこで推薦候補の属性ベクトルと同じ属性ベクトルを持つWebページを推薦する(ステップ16)。図4の例では、ページRが(α3,β3,γ2)という属性ベクトルを持っているため、推薦される。本発明に係る方法では、属性ベクトルを用いることにより、同一のWebページでなくとも、複数の属性が一致していれば同一と判定することで、要素数の多い頻出集合が抽出できる可能性が高くなる。
さらに、その頻出集合を用いた推薦においても、属性ベクトルを用いることで、アクセス履歴には含まれなかったWebページであっても推薦することが可能となる。図4の例では、アクティブセッションのWebページP、Qや、推薦対象のWebページRのように、アクセス履歴に含まれていないページの場合にも推薦可能である。
【0030】
以下、上述の頻出Webページ間関係の抽出をLCSアルゴリズムを用いて行った場合の実施例について説明する。まず属性の種類に関して検討し、次にその粒度について具体例を挙げて検討する。
【実施例】
【0031】
〔属性の種類〕
Webページ推薦が有用であると想定されるWebサイトにおいて、推薦対象となる各Webページが持つと思われる属性の候補を考えてみると以下のようなものを挙げることができる。
(1)飲食店のWebページ:業態、平均予算、エリア、口コミ数、個室有無等
(2)旅館やホテルのWebページ:ホテル/旅館の別、宿泊代、エリア、温泉の有無等
(3)マンションや賃貸物件のWebページ:賃貸料、広さ、エリア、新築/中古の別等
(4)ニュースや記事などのWebページ:記事種類、記事タイトル、日時等
(5)本やCDなどの商品のWebページ:ジャンル、著作者、価格、発行年、サイズ等
(6)音楽ダウンロードサイト等における楽曲のWebページ:ジャンル、歌手名、価格、発表年等
【0032】
このような属性例の観測から、属性を以下のタイプ別に分類する。
[カテゴリ]
飲食店推薦における「業態(洋食、和食、居酒屋などの分類)」や本・CD推薦における「ジャンル」が代表的で、主に質的データになる。このカテゴリの分け方は、その推薦の行われているWebサイトの検索の仕様であることが多い。
[範囲]
飲食店推薦における平均予算、ホテル推薦における宿泊代、マンション推薦における賃貸料等が代表的な量的データである。ユーザの希望では下限や上限、あるいは両方が決まっているなど、ある一定の範囲を取ることが多い。
[距離]
飲食店推薦におけるエリアや、ホテル推薦におけるエリア、マンション推薦におけるエリアになる。単なる位置的情報以外にも「駅から○○分」といった形の形式を取ることもある。
[評価]
各推薦における人気ランキングやアクセス数ランキングなどである。過度に重視すると、特定のWebページに推薦が偏る可能性が有り、取り扱いに注意すべきである。
[付加情報]
飲食店推薦における「個室有り、駐車場の有無、喫煙・禁煙の可否の区分」や、マンション推薦における「風呂トイレ別」など、持っていることに対して特定のユーザのみがメリットを感じる情報である。
上記で大別した属性のタイプのうち、「評価」と「付加情報」は扱いに考慮が必要なことから、この実施例では、「カテゴリ」、「範囲」、「距離」という3つの属性を評価の対象とする。
【0033】
〔属性の粒度〕
Webページの各属性には分類の粒度(細分化の単位)がある。例えば飲食店Webページにおける[カテゴリ]の属性は飲食店の業態にあたるが、和食、洋食、中華といった大きな分類から、和食の中でも、懐石、割烹、寿司、田舎料理といった細かな分類まである。[距離]であるエリアも、東京の中でも、新宿、渋谷といった広いレベルから、新宿西口・都庁前、新宿三丁目・新宿御苑周辺、渋谷道玄坂・神泉といった少し狭いレベルまである。
[範囲]である食事の平均予算も、四捨五入でまるめて、100円単位から、500円単位、1000円単位といった粒度にすることができる。
【0034】
当該実施形態においては、業態を「大業態」と「小業態」の2種類に、エリアを「大エリア」、「中エリア」、「小エリア」の3種類に分類する。2009年8月時点での飲食店サイトの状態は、「大業態」として12分類、「小業態」として127分類になっている。同様に「大エリア」は181分類、「小エリア」は704分類となっている。
属性の粒度を変えた場合に抽出されるLCSの関係を考えると、一般には、図6に示すように、粒度を粗くするほど得られるLCSの長さは長くなり、LCSの種類も多くなる。
なお、この比較の上では、もっとも粒度が小さいのは、属性に着目しないWebページ単位の場合となる。
【0035】
ここで、前述の実際の飲食店サイトの2008年11月1日のアクセス履歴から1,000セッションをサンプリングしたデータに対して、業態(カテゴリ)、エリア(距離)、平均予算(範囲)について、それぞれの粒度を変化させた場合に得られたLCSの数、種類の数、平均LCS長、最長LCS長を表2に示す。
【表2】

Webページ単位で抽出したLCSに関しても比較のために示すが、どの属性を用いたとしても、得られるLCSの種類は増加し、LCS長も長くなっていることが分かる。
また、上で解析したように、粒度が粗いほどLCSの種類が増え、長さが長くなっていることも分かる。LCSが長くなればなるほど、アクティブセッションと共通の属性を含む可能性が高くなるため、推薦できるアクティブセッションの割合も高くなり、推薦すべき属性を包含する可能性も高くなる。
また、得られるLCSが多くなればなるほど、推薦すべき属性を包含する可能性も高くなるが、属性が粗くなるため、推薦すべきではないWebページを含む確率も上がる。これらは情報検索の分野における、適合率と再現率の関係と同じと考える。属性を粗くしすぎると、再現率は上昇するが、適合率は下がる可能性がある。つまり、両者はトレードオフの関係にあると言え、最も良い粒度の属性を調整する必要がある。
【0036】
このようにWebページの複数の属性を用いてLCSを抽出する場合、属性の組合わせによって、抽出されるLCSの数や長さも変わってくる。また、一つの属性に着目しても、どのような粒度で分類するかによって変わってくる。このことから、適切なWebページ推薦を行うためには、Webページのどのような属性をどのような粒度で用い、どのように組み合わせるかが重要となる。本発明の実施例では、実際の飲食店サイトのアクセス履歴に対して本発明に係る方法を適用し、従来のWebページ単位のLCSの抽出と比較して評価するとともに、属性の選択と粒度の影響を調べた。その結果を以下に述べる。
【0037】
従来のWebページ単位でLCSを抽出する方法と、本発明に係る方法であるユーザセッションを複数属性ベクトルに変換する方法によるWebページ推薦を、前述の飲食店サイトの実際のアクセス履歴に対して適用し、時期を変えた別のアクセス履歴をテストセッションとして、従来のWebページ単位の推薦に対する本発明に係る方法の優位性を実証する評価実験を行った。結果は以下の通りである。
【0038】
(1)評価対象データ
評価対象のデータとして、前述の飲食店サイトへの2008年11月1日付けのリクエストに対するアクセス履歴を用いた。このアクセス履歴に含まれるクッキー情報を用いてアクセス履歴を繋ぎ合せることでユーザセッションを作成した。少ないWebページにしかアクセスしないユーザセッションでは推薦に利用できないと考え、作成したユーザセッションの内、セッション中にアクセスしたアイテム数が3以上のセッション40,312セッションを対象にした。推薦に対して良い属性の粒度を求めることを主眼とし、実行時間に限りがあることから、上記のセッションの内、ランダムに1,000セッションを抽出し、そのセッションの総当たりを行いアクセスしたWebページでのLCSの抽出と、セッションを業態、平均予算、エリアの属性に変換してLCSの抽出を行った。抽出したLCSを用いて、非特許文献6に記載されているWRAPL−FL法を用いて推薦を行った。この方法は、あるアクティブセッションに対して推薦を行う際に、まず、あらかじめLCSを抽出しておき、次に、抽出したLCSとアクティブセッションに共通するWebページを抜き出し、LCSからその共通部分の最後までを除去する。
例えば、アクティブセッションがA−B、LCSがA−C−B−A−Dだと仮定すると、LCSからA−C−B−Aの部分を除去し、推薦候補となるDを得る。このようにして、除去して残ったWebページに対して出現頻度分の得点を加算し、全てのLCSとの得点加算が終了したときに、得点の一番高かったWebページを推薦候補とするものである。評価のため、2009年8月21日にアクセスのあった1,000セッションをテストセットとし、そのユーザセッション中の前2アクセスをアクティブセッションとし、その後に実際にアクセスしたWebページを正解ページの集合として扱った。
【0039】
(2)実験結果に対する評価と考察
実験結果に対して以下に定義する適合率(Precision)、再現率(Recall)、およびF値(F-measure)を用いて評価を行う。
[定義式]
Precision=|Recom∩Eval|/|Recom| (∩:積集合)
Recall=|Recom∩Eval|/|Eval|
F-measure=2×Precision×Recall/(Precision+Recall)
ここで、Recom、Evalは、それぞれ、対象アクティブセッションから導かれた推薦ページの組、対象アクティブセッションに続いて実際にアクセスされた正解ページの組を表す。適合率(Precision)は、推薦されるページ数に対する正解ページ数の割合、再現率(Recall)は、評価セットのページ数に対する正解ページの割合を表す。F値は適合率と再現率の調和平均である。
【0040】
Webページ単位でLCSを抽出する方法と、本発明に係る方法において、業態に関して大小の2種類の粒度、エリアに関して大中小の3種類の粒度、平均予算を100円単位、500円単位、1000円単位の粒度に変化させてLCSを抽出したものの適合率、再現率、F値の結果を表3に示す。
【表3】

前述したように、推薦に対して良い属性の粒度を求めることを主眼として、実験回数を増やすためにLCS作成のためのセッションをランダムサンプリングとし、テストセットのセッションも少ないものを使ったことから、再現率、適合率とも高くはならなかったが、属性の粒度を変えたことによる違いは出た。
表3から分かるように、Webページ単位でのLCSによって推薦を行うと、再現率・適合率共に最も低くなる。これは、ユーザセッションから求めたアクセスパターンに対して、アクティブセッションのユーザのアクセスパターンの方が多すぎた為と思われる。
【0041】
これに対して、業態、エリア、平均予算の属性に変換してから推薦を行った方法については、Webページに対して推薦を行うよりも再現率も適合率も向上した。これは、複数の属性を用いることでWebページ単位の推薦では対応できなかったアクセスパターンに関しても対応できるようになったためと考える。また、時期が異なる新しいWebページがある場合にも対応できていることも示している。
また、小業態・小エリア・100円単位平均予算を用いた方法について、Webページ単位で推薦した場合よりも適合率は上昇したものの、再現率については、ほとんど変化がなかった。
これは、サンプリングによって差が出にくかったことと、Webページに対する粒度の粗さの違いがあまりなかったことを示していると思われる。しかし、さらに粒度を粗くしていくと適合率・再現率ともに上昇した。これは粒度による影響が表れていることを示している。
さらに粒度を粗くすると適合率が下がり始めるが、これは前述したように粒度を粗くしすぎたことにより推薦すべきでないWebページも含まれるようになってしまったためではないかと思われる。ただ、ここでの評価の範囲では、F値としては粒度を上げても上昇している。
【0042】
なお、平均予算の代わりに、業態、エリアの属性と一緒に座席数の属性を用いた実験も行った(ここでは、詳細な結果は省く)。座席数によるLCSを用いた推薦に対する適合率・再現率は、業態、エリア属性の粒度を変化させても、Webページ単位のものに比較して十分な優位性を示すことはできなかった。これは、座席数は実際の店舗選択に影響をあまり与えないためではないかと思われる。
以上のことから、推薦を行うWebページの属性の選択、および選択した属性の粒度が推薦に大きく影響することが言える。上記の実験ではカテゴリ、範囲、距離のタイプの属性を考慮したが、対象とするWebページによっては、ここで検討したような属性が必ずしも存在するとは限らない。この属性の選択や粒度を自動的に調節することができれば、推薦精度を更に向上させることができるはずである。
【0043】
また、得られた属性ベクトルから推薦するWebページに対して、今回は特に絞り込みを行わなかったが、実際の推薦においては大量のWebページが推薦候補として表示されるとユーザビリティが下がるため、なんらかの順位付けを行って絞り込むことが必要になる。
例えば、複数の属性について属性間の距離を考慮したり、対象とする属性に優先順位を付けたりする方法が考えられる。
このほか、上記実験では平均予算に関しては、範囲をいくつかに区切って用いたが、ユーザにとっては「予算は5,000円以下」というような指定はあっても、「5,000円でなければならない。」といった要求は少ないと考える。そこで範囲のパラメータについては、事前にクラスタリングを行い、そのクラスタにしたがって本発明に係る方法を適用することで、更に効率の良い推薦を行うことも可能である。
さらに、上述のような属性に加えて、Webページの持っているテキストデータや画像から抽出されるデータを使って推薦を行うことも考えられる。例えば、テキストデータに含まれる「有機野菜」、「アットホームな雰囲気」といった特長語は、ユーザが店舗を検索する際に重要な要素となり得ると考えられる。

【特許請求の範囲】
【請求項1】
Webサイトを訪れたユーザのアクティブセッションを解析して、該ユーザに対して次にアクセスすべきWebページを推薦するための、プログラムされたコンピュータによる、Webページ推薦方法において、
前記Webページが、ページごとに複数の属性情報を有するものであり、
前記方法は、前記コンピュータが、
複数の前記ユーザのアクセス履歴から、前記複数のユーザの前記Webページに関するユーザセッションを抽出するステップと、
前記Webページごとに前記複数の属性情報を抽出し、前記各ユーザごとの前記セッションを、各Webページの前記属性情報の属性ベクトル列に変換するステップと、
前記複数のユーザ間における前記属性ベクトル列の頻出Webページ間関係を抽出するステップと、
を備えるとともに、
前記Webサイトを訪れたユーザのアクティブセッションから、該アクティブセッションに含まれるすべてのWebページの属性情報を属性ベクトルとして抽出し、該抽出された属性ベクトルと、前記頻出Webページ間関係の一部とを比較し、一致する前記頻出Webページ間関係の部分が存在した場合に、当該一致した前記頻出Webページ間関係の前記部分を除いた部分の属性ベクトルを有するWebページを推薦するステップと、を備えることを特徴とする、複数属性を利用したWebページ推薦方法。
【請求項2】
前記属性ベクトル列の頻出Webページ間関係を頻出シーケンスとして抽出するステップが、LCSアルゴリズムを用いて行われることを特徴とする請求項1に記載の複数属性を利用したWebページ推薦方法。
【請求項3】
前記属性ベクトル列の頻出Webページ間関係を頻出集合として抽出するステップが、相関ルールマイニング法を用いて行われることを特徴とする請求項1に記載の複数属性を利用したWebページ推薦方法。
【請求項4】
前記属性情報に加え、前記Webページの持っているテキストデータや画像から抽出されるデータを前記属性情報として使用して前記推薦を行うことを特徴とする請求項1乃至3のいずれかに記載の複数属性を利用したWebページ推薦方法。
【請求項5】
前記推薦するWebページ候補が複数ある場合は、その複数候補に順位を付け候補を絞るステップを有することを特徴とする請求項1乃至4のいずれかに記載の複数属性を利用したWebページ推薦方法。
【請求項6】
前記ユーザのクッキー情報を利用して、前記ユーザのアクセスしているページに、動的に推薦情報を埋め込むことを特徴とする請求項1乃至5のいずれかに記載の複数属性を利用したWebページ推薦方法。
【請求項7】
Webサイトを訪れたユーザのアクティブセッションを解析して、該ユーザに対して次にアクセスすべきWebページを推薦することをコンピュータに実行させるためのコンピュータプログラムであって、前記Webページが、ページごとに複数の属性情報を有するものであり、
前記コンピュータプログラムが、前記コンピュータに、
複数の前記ユーザのアクセス履歴から、前記複数のユーザの前記Webページに関するユーザセッションを抽出するステップと、
前記Webページごとに前記複数の属性情報を抽出し、前記各ユーザごとの前記セッションを、各Webページの前記属性情報の属性ベクトル列に変換するステップと、
前記複数のユーザ間における前記属性ベクトル列の頻出Webページ間関係を抽出するステップと、
前記Webサイトを訪れたユーザのアクティブセッションから、該アクティブセッションに含まれるすべてのWebページの属性情報を属性ベクトルとして抽出し、該抽出された属性ベクトルと、前記頻出Webページ間関係の一部とを比較し、一致する前記頻出Webページ間関係の部分が存在した場合に、当該一致した前記頻出Webページ間関係の前記部分を除いた部分の属性ベクトルを有するWebページを推薦するステップと、を実行させることを特徴とするコンピュータプログラム。
【請求項8】
前記Webサイトを提供するWebサーバであって、該サーバは請求項7に記載のコンピュータプログラムがインストールされていることを特徴とWebサーバ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2011−108034(P2011−108034A)
【公開日】平成23年6月2日(2011.6.2)
【国際特許分類】
【出願番号】特願2009−263152(P2009−263152)
【出願日】平成21年11月18日(2009.11.18)
【出願人】(304021417)国立大学法人東京工業大学 (1,821)
【出願人】(500175565)株式会社ぐるなび (43)
【Fターム(参考)】