WebDB Forum 2015 pinterest webpagever
-
Upload
helro -
Category
Technology
-
view
378 -
download
3
Transcript of WebDB Forum 2015 pinterest webpagever
Pinterest における Pin 推薦のため
の推薦アルゴリズムの比較
足立 健太郎(大阪大学)土方 嘉徳(大阪大学)
Joseph A. Konstan ( University of Minnesota )
1
アウトライン
1. はじめに• 研究背景• 関連研究
2. データセット3. 推薦アルゴリズム4. 評価指標5. 結果6. まとめと今後の予定
2
1. はじめに
3
ウェブ上で人気なサービスの機能
4
• 画像や動画の収集• コレクションの作成,編集
ソーシャルネットワーキングサービス( SNS )( Twitter , Facebook など)• 文書や画像の投稿• 共有,いいね,コメント機能• ユーザのフォロー
キュレーションサービス( Instapaper , Scoop.it など)
Pinterest :ソーシャルキュレーションサービス
5
• 文書や画像の投稿• 共有,いいね,コメント機能• ユーザのフォロー
• 画像や動画の収集• コレクションの作成,編集
SNS キュレーションサービス
+
SNS とキュレーションサービスの機能を併せ持つ
Pinterest ( マイページ )
6
ボード
7000 万ユーザ (*)10 億ボード (**)500 億ピン (**)(*):2013/7/10
(**):2015/3/31
推薦システムの必要性
7システムによる画像の推薦が必要
ユーザが自分の意図に適した画像を適切に探しだすのは困難
テーマ1
全ては見られない
約 500 億*
* 2015 年 3 月 31 日時点
推薦システム
Pinterest におけるユーザの行動
8
自分の嗜好に基づくアイテム収集
従来の想定とは異なる行動の存在
多様なユーザ行動の元で有効なアルゴリズムの発見が必要
従来の推薦システムでの想定
従来の推薦システムの想定外あるテーマに合うコレクションの作成他人に見せるためのアイテム収集
推薦に用いられる情報
9
1. ピンのコンテンツ情報(説明文)→ コンテンツベースフィルタリング
2. ピンしたかどうか(ユーザ―アイテム評価値行列)→ 協調フィルタリング
3. フォロー関係→ 社会ネットワークに基づく推薦
4. リピンやいいね!の回数→ 人気度に基づく推薦
比較により最適なアルゴリズムを発見できる
Pinterest で取得可能なデータと対応するアルゴリズム
1. 主要なアルゴリズムの推薦結果の比較を行う
Pinterest において取得可能な情報のうち,
どの情報を用いた推薦が有用かを知る
2. 結果を正確性と発見性に関する指標で評価する
推薦結果の長所・短所を多角的に理解する
研究の目的
10
関連研究 (1/2)
11
Pinterest の性質に関して• ピン
カテゴリの分布 [1][2][4] 説明文の内容の分析 [1][3] リピンされやすさのモデル化 [3]
• ユーザ フォロワー数・フォロウィ数の分布 [1] 国籍の分布 [1][3] 男女の振る舞いの違い [2][3] 人気度のモデル化 [2]
• Pinterest vs Twitter 用いられる単語 [3] vs Twitter ユーザ行動 [4]
[1] Mittal et al. arXiv preprint 2013 [2] Chang et al. ACM CSCW 2014[3] Gilbert et al. ACM SIGCHI 2013 [4] Ottoni et al. AAAI ICWSM 2014
関連研究 (2/2)
12
アルゴリズムの比較について
[5] Huang et al. IEEE 2007 [6] Cremonesi et al. ACM RS 2010[7] Cacheda et al. ACM TWEB 2011 [8] Kluver et al. ACM RS 2014
論文 ドメイン アルゴリズム 評価指標
[5] 服,本,映画 協調フィルタリング,潜在因子モデル,人気度など 7 種類
精度,再現率など 5種類の正確性に関する指標
[6] 映画 ユーザの評価,コンテンツの類似度,協調フィルタリングなど 6 種類
精度,再現率
[7] 映画 10 種類の協調フィルタリング 精度に関する 2 つの指標を提案
[8] 映画 ユーザの評価,協調フィルタリングなど 5 種類
正確性,人気度など11 種類の指標
2. データセット
13
クローリング手法の方針
14
Chang らの手法を参考に作成 [Chang, 2014 CSCW]
各ユーザのボードを収集
ユーザ ID を収集
各ボードのピンを収集
シード:直近ピンした 10 ユーザ
フォロワーかフォロウィを辿る
・・・
深さ優先探索
・・
・
シードに戻る
深さ 1000
HTML 解析
HTML 解析
Pinterest : API の公開なし
プログラムによりブラウザを操作
データセット
15
アルゴリズム 使用するデータ
コンテンツベースフィルタリング 上記のユーザとそのボード ( 7,674 ボード )
協調フィルタリング 上記
社会ネットワークに基づく推薦 上記のユーザのうち50 ユーザのフォロウィ・フォロワーのピン(3,519,059)
人気度に基づく推薦 上記
*フォロー関係にあるユーザのボード・ピンも取得
ベースとなるデータセット• ユーザ: 200 ( 50 ユーザはフォロー関係を取得* )• ピン : 1,161,373
(各ピンのリピン数,お気に入り数も説明も取得)
3. 推薦アルゴリズム
16
コンテンツベースフィルタリング
17
[ 0.27 0.03 0.00 0.30 0.03 ]
ユーザベクトル
[ 0.1 0.1 0.0 0.4 0.0]
ピンベクトル
ピンの特徴量を用いてピンとユーザのベクトルを作成
ユーザ
[ 0.3 0.0 0.0 0.2 0.1][ 0.4 0.0 0.0 0.3 0.0][ 0.1 0.1 0.0 0.4 0.0]
ピンベクトル
ピンに関する説明を用いることで好みに近い内容のピンを推薦する手法
平均
類似度が高いものを推薦する
ボード
ピンの説明文
ボード名ボードの説明 bag-of-
words
協調フィルタリング
18
[𝐿 0 00 0 𝐿0 0 𝐿 ]学習セット
ユーザベース𝑢1𝑢2𝑢3
[1 0 0 ][0 0 1 ][0 0 1 ]
同じ画像をピンしたユーザから推薦
アイテムベース
[100 ][000 ][011 ]
𝑖1𝑖2𝑖3ピンしたユーザが似ている画像を推薦
ユーザが行,ピンが列となる行列を作成する
同じピンを持つユーザの評価を用いることで好みが似たユーザから推薦する手法
スパース率 1.4% で疎なためSVD や単語,カテゴリを用いた次元削減の結果も評価する
L: 学習セットT: テストセット
[𝐿 0 00 𝑇 𝐿𝑇 0 𝐿 ]
アイテムユー
ザ
19
2 ステップ先
ユーザ1 ユーザ 2
注目ユーザ
フォロー
ピン
1 ステップ先のユーザからのフォロー数により重み付け
推薦
2 ステップ先のユーザからのピン数により重み付け
(1) 2 ステップ先のフォロウィのピンから推薦
嗜好が似ていると考えられる2 ステップ先のユーザから推薦する手法
: ユーザ : ピン
社会ネットワークに基づく推薦 (1/3)
社会ネットワークに基づく推薦 (2/3)
20
(2) フォロワーのピンから推薦
注目ユーザ
ユーザ 1 ユーザ 2
嗜好が似ていると考えられるフォロワーから推薦する手法
フォロワーからのピン数により重み付け
: ユーザ : ピン
推薦
ピン
フォロー
社会ネットワークに基づく推薦 (3/3)
21
(3)同じ人をフォローしているユーザのピンから推薦
注目ユーザ
共通のフォロウィ
ピン
同じユーザをフォローしていて嗜好が似ていると考えられる
ユーザから推薦する手法
フォロー
ピンしたユーザ数で重み付け
注目ユーザと同じような嗜好を持つ
: ユーザ : ピン
推薦
人気度に基づく推薦
22
リピン数 ( 共有数 ) が多い画像を推薦する
全員に同じ画像が推薦される(注目ユーザがピンした画像を除く)
リピン数が多く人気度が高いと考えられるピンを推薦する手法
注目ユーザ : リピン
: ユーザ : ピン
推薦
4. 評価指標
23
評価指標 (1/3)
• ヒット率 ( Hit-rate ) [Deshpande ACM TOIS 2004] ユーザのピンが 1 つでも推薦されたユーザの割合
• 精度 @N ( Precision@N ) 推薦リストの上位 N位のうちユーザのピンの割合
• MAP ( Mean Average Precision ) [Buckley MIT Press 2005] ユーザのピンが推薦された順位での精度の平均
• 再現率 ( Recall ) ユーザのピンのうち,推薦されたピンの割合
正確性
Precision@3 = 0.67Precision@5 = = 0.6
1 2 3 4 5 Mean Average Precision=
例えば,リストが次のような時
:ユーザのピン :ユーザのピン以外
24
評価指標 (2/3)
25
多様性• リスト内類似度 [Ziegler ACM WWW 2005]
推薦リスト内にあるアイテムの多様性(ピンが含まれるボードのカテゴリを用いる)
セレンディピティ • Unserendipity [Zhang ACM WSDM 2012]
ユーザのピンと推薦リスト内のピンの類似度をピンの特徴ベクトルを用いて計算する
ユーザのピンと推薦されたピンの類似度が低ければUnserendipity は高い
評価指標 (3/3)
26
新規性 • ロングテールに基づく指標 [Celma ACM RecSys 2008]
推薦リスト内の任意のアイテムペアがリピン回数の累積度数分布曲線における“ head”, “mid”, and “tail” のどこか調べる
“head”同士のアイテムペアが多い結果は新規性が低い
左図は縦軸が累積度数割合,横軸が歌手の再生数順位の対数
“head” と”mid” の境は 82位,”mid” と” tail” の境は 6655位
上位 737位で全体の 50%
5. 結果
27
0.00000
0.00500
0.01000
0.01500
0.02000
0.02500
0.03000
0.03500
contentSVDsocial 2stepsocial followersocial co-followpopularityrandom
結果 – ヒット率
28
上位 10位の推薦結果における評価
正解アイテムを 1 人でも多くのユーザに提示するためにはコンテンツ情報が有効である
ヒット率が高い
• コンテンツベースフィルタリング• 社会ネットワーク
ヒット率が低い
• 協調フィルタリング• 人気度に基づく推薦
Precision@10 MAP@10 Recall@10
(0.00200)
0.00000
0.00200
0.00400
0.00600
0.00800
0.01000
contentSVDsocial 2stepsocial followersocial co-followpopularityrandom
結果 – 精度, MAP ,再現率
29
上位 10位の推薦結果における評価
推薦リストの正確性を向上させるためにはコンテンツ情報が有効である
正確性が高い
• コンテンツベースフィルタリング
正確性が低い
• 協調フィルタリング( データが疎のため 働いていない )
0.00000
0.00100
0.00200
0.00300
0.00400
0.00500
0.00600
contentSVDsocial 2stepsocial followersocial co-followpopularityrandom
結果 – 多様性
30
上位 10位の推薦結果における評価(値が小さいほど高い多様性を示す)
推薦リストの多様性を向上させるためには人気度や社会ネットワークが有効である
多様性が高い
• 人気度に基づく推薦• 社会ネットワーク
多様性が低い
• 協調フィルタリング• コンテンツベース
0.00000
0.00050
0.00100
0.00150
0.00200
0.00250
0.00300
0.00350
0.00400
0.00450
contentSVDsocial 2stepsocial followersocial co-followpopularityrandom
結果 – セレンディピティ
31
上位 10位の推薦結果における評価(値が小さいほど高いセレンディピティを示す)
推薦リストに意外なアイテムを含むためには協調フィルタリングが有効である
セレンディピティが高い
• 協調フィルタリング• 人気度に基づく推薦
セレンディピティが低い
• コンテンツベース( ユーザのピンと似た 画像が推薦される )
結果 – 新規性
32
リスト内で任意にアイテムペアを作成した時,“ head” にある画像とペアになるアイテムの分布
推薦リストの新規性を向上させるためにはコンテンツ情報や社会ネットワークが有効である
新規性が高い
• コンテンツベース• 社会ネットワーク
新規性が低い
• 協調フィルタリング• 人気度に基づく推薦content SVD social
2steppopularity random
0.00 10.00 20.00 30.00 40.00 50.00 60.00 70.00 80.00 90.00
100.00
head mid tail
まとめと今後の予定
33
Pinterest の画像推薦結果を比較し複数の指標で評価した
• 正確性を向上させるにはコンテンツ情報が有用• 多様性には人気度,社会ネットワークが有用• セレンディピティには協調フィルタリングが有用• 新規性はコンテンツ情報,社会ネットワークが有用
アルゴリズム コンテンツベースの推薦 協調フィルタリングによる推薦 社会ネットワークに基づく推薦 人気度に基づく推薦
評価指標 正確性 多様性 セレンディピティ 新規性
今後の予定• アンケートで目的を尋ね,使用目的別評価を行う• オンライン実験により実環境に近い評価を行う