重み付き完全グラフを利用した異ジャンル間の嗜好傾向表現と レコメン

重み付き完全グラフを利用した異ジャンル間の嗜好傾向表現と
レコメンデーションシステムの発見性向上への応用
筑波大学 大学院システム情報工学研究科 知能機能システム専攻
杉本 拓弥
はじめに
1
ンルを新しく定義し直し,関連性のある商品グループ
近年,利便性や品揃えの豊富さなどを強みとする, に同一のジャンルを付与する.
インターネットショッピングが広く普及している.こ
のようなショッピングサイトでは,ユーザが膨大な商
品情報の中から目的の商品を発見しやすくするための
推薦システムが実装されており,推薦作成の際によく
用いられている手法に協調フィルタリングがある.こ
れは各ユーザの嗜好情報に基づいてユーザの類似度を
算出し,これを用いてユーザにとって未知のアイテム
に対する予測評価値を推定することで,ユーザに正確
な推薦を行うことができる.しかし,協調フィルタリ
ングを用いた推薦では,ユーザの嗜好情報といったプ
ロファイルが必要となり,ユーザの負担が大きい.ま
た,推薦結果が同一ジャンルに偏ってしまうという問
題点がある.
2.2
クラスタリングによるジャンル作成
複数のデータを分類するクラスタリング手法として
広く用いられているものに k-means 法がある.本研究
では,k-means 法を拡張した k-medoids 法を用いてク
ラスタリングを行い,得られたクラスタをジャンルと
して定義する.k-means 法と k-medoids 法の最も大き
な違いは,用いる最適化指標及びセントロイドにある.
k-means 法ではセントロイドが各クラスタを代表する
のに対して,k-medoids 法では medoid がクラスタを
代表する.medoid は自分が属するクラスタ内の自分
と他のデータ点との非類似度の総和を最小にするよう
決定する.そのため次元 p の異なる複数のデータに対
しても,全てに共通した方法で各点間の非類似度を定
本研究では,従来の推薦情報に加えて,ユーザが新
義することによってクラスタリングを行うことができ
しい嗜好を発見できるような推薦情報を提示するシス
る.本研究では,k-medoids 法を用いて商品を k 個の
テムを提案する.
クラスタにわけ,それぞれジャンル {G1 , G2 , . . . , Gk }
2
2.1
提案システム
ジャンル定義
Amazon のジャンル構造は「本」や「DVD」といっ
た大きなジャンルから「あ行の著者」,
「日本文学」など
の小さなジャンルを階層的に並べたグラフ構造を有し
ており,使用されるメディアによって付与されるジャン
ルが異なる.しかし Amazon の取扱商品には,映画作
品のサウンドトラック CD など,商品とメディアの異
なるその関連商品が少なからず存在する.Amazon の
として定義する.medoid はクラスタリング対象とな
るデータ点の 1 つであり,各データ点は自分と最も非
類似度の小さい medoid が代表するクラスタに属する
ことになる.本研究では,これら k 個のクラスタを重
みつき完全グラフのノードに対応させ,ジャンル同士
の関連度を表現する.
2.3
出現頻度・逆文書頻度に基づくジャンル名抽出
と関連度定義
本研究ではジャンル同士の関連度を定義するために,
定義するジャンルをそのまま用いた場合,それらの商
各ジャンルにおける代表的な Browse Node を複数決定
品が別のジャンルの商品として推薦情報に入れられる
し,それをジャンルのタグとする.タグとなる Browse
可能性があるが,それらは同一作品に関連していると
考えられる.そこでメディアは異なるが,作品に関連
Node は自らが属するジャンルを良く表現したものでな
ければならない.そこでジャンルを文書,Browse Node
ID を単語として,各 Browse Node の tf-idf 値を算出
性のある商品を同一ジャンルの商品として扱い,異な
することで,代表となる Browse Node を決定する手
いうことから,既にユーザに良く知られていることが
るジャンルの商品から推薦情報を作成する.そのため, 法を提案する.算出された tf-idf 値の高い上位数個の
Amazon が商品に付与するジャンル名である Browse
Node とその個別番号 Browse Node ID を利用してジャ
Browse Node をそのジャンルのタグとする.BNIDi の
tf ,及び idf はジャンルを g ,総ジャンル数を |D| と
してそれぞれ以下のように定義する.ni,g はジャンル
5. ランキング上位のジャンルから商品をピックアップして
推薦
g 内の BNIDi の総数であり,|{d : d∋ti }| は BNIDi を
含むジャンルの数である.
ni,g
tfi,g = ∑
k nk,g
idfi = log2
|D|
|{d : d∋BN IDi }|
(1)
(2)
付与されたタグについて Google Search REST API
を用いて AND 検索を行い,そのヒット件数の合計を
ジャンル同士の関連度とする.ジャンル Ga と Gb の関
連度定義のプロセスは以下のようになる.
1. ジャンル内の Browse Node ID について tf-idf 値を算出
2. tf-idf 値の高い上位数個をジャンルのタグとして定義
3. Ga と Gb がもつタグから 2 つを選択する全ての組み合
わせで Google Search REST API を用いて AND 検索
4. (iv)のヒット数を全て合計し関連度を算出
2.4
重みつき完全グラフの構成
図 1: 重みつき完全グラフの構成
本研究では,重みつき完全グラフの性質を利用して
異ジャンル間の嗜好傾向を表現する.この時グラフの
ノードはクラスタリングによって作成したジャンル G1
∼Gk とし,2.3 節の手法で算出した関連度を重みとし
てエッジを引くことでグラフを構成する.重み付き完
全グラフを用いることで,各ジャンルについて,他の
全てのジャンルとの関係を表現することができるため,
ユーザがどのジャンルの商品を検索しても推薦情報を
作成することが可能となる.
2.5
ジャンルネットワークレコメンデーションシス
テム
提案システムの推薦対象商品は Amazon.co.jp の「最
もほしい物リストに追加された商品」のうち,books,
computers,dvd,music,musical-instruments,
videogames の 6 カテゴリに含まれるものであり,各
図 2: 提案システムによる商品推薦の流れ
カテゴリにつき 100 件ずつ,計 600 件から推薦され
る.このリストは一日一回更新されるため,提案シス
テムは毎日定時に Amazon から情報を取得する.この
時取得する情報は商品の ID(ASIN)と Browse Node
3
おわりに
ID である.必要な情報を取得した後,クラスタリン
ジャンルという大きな視点から発見性の高い推薦を
グと関連度計算を行い,重みつき完全グラフを構成す
作成するため,k-medoids 法および出現頻度・逆文書頻
る(図 1).
提案システムを用いた推薦の流れは以下の通りであ
る.
(図 2)
度に基づくジャンル名抽出と関連度定義により異ジャ
1. ユーザによる商品検索
2. 検索商品の ASIN,BNID を取得
3. 検索商品の完全グラフ上でのジャンル同定
4. 検索商品のジャンルと関連度の高いジャンルを選出,ラ
ンキング化
た.今後は主観評価実験によって提案システムがユー
ンル間の嗜好傾向を表現した.また,これを利用して従
来の推薦システムを補助するようなシステムを提案し
ザに発見性の高い推薦を提示できることを確認する.