jaws2008 presen2
TRANSCRIPT
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
ABMによるECサイトのレコメンド設計の分析
○梅田 卓志, 小山友介, 出口弘東京工業大学大学院 総合理工学研究科
umeda07[At]cs.dis.titech.ac.jp
※配布資料とは一部内容が異なります。
1
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
発表の流れ/目的
• 流れ1. 目的と方法論2. モデル3. シミュレーション設定と結果4. 結論と今後の課題5. 参考文献,QA等
• 目的– レコメンドアルゴリズム他、情報工学がご専門の方からも、ご意見を伺いたい
– 実験方法、前提、分析、シナリオ等に関して、アドバイスいただければ と思います。よろしくお願いします。
2
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
1-1. 背景
4
140148
162
92 95104
0
20
40
60
80
100
120
140
160
180
2005 2006 2007
日本 米国
EC市場規模が増加
•前年比21.7%増
レコメンド機能を導入するサイトが増加
カスタマイズの必要性
•個別の市場構造に応じたパラメータ設定が必須
日米のEC市場規模(兆円)
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
1-2. レコメンドの分類(1/2)
5
手法
利点
欠点
ルールベース
意図したレコメンドが実施できる
ルール設定が面倒
コンテンツベース
ColdStartに強い
•ルール設定が面倒
•意外性あるレコメンドが困難
ベイジアンネット
チューニング困難
協調フィルタリング
商品毎の設定が不要
• ColdStart問題
•疎なデータ群への対処
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
1-2. レコメンドの分類(2/2)
• 協調フィルタリング
– メモリベース
• ユーザベース
–モデルベース
• アイテムベース
• ベイジアンネットを用いたアプローチ
–そのほか小技
• SD分解による投票行列の圧縮
• クラスタリングによる縮約
6
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
1-3. 目的
• ABSを用いたレコメンド評価法の提案
–市場構造(顧客属性・商品属性)を考慮
–時系列での市場環境の変化を考慮
–ユーザ間の相互作用があるタイプのレコメンドアルゴリズムに対して有用
• 協調ファイルタリング(ユーザベース)の場合について、実際に分析
–ネイバー数(パラメータ)と市場構造の関係を分析
7
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
1-4. 方法論
• ABMを用いたモデル化を行う– レコメンド手法のモデル+顧客や商品属性・関係性をモデルに加える
• 利点– 市場構造の考慮:
• 顧客属性, 消費者行動(ex:嗜好の分布)に応じたレコメンド評価・設計
• 商品特性(ex: 人気度合い)に応じたレコメンド評価・設計
– 動的な環境変化:• 市場構造が時系列で変化する場合
• 新商品の随時追加
• システム導入時の超スパースなデータに対する対応
– 容易性:• 他手法と比較して• What-If分析等、様々な条件を仮定した上での分析も可能
8
レコメンド手法モデル
顧客属性
商品属性
ABMを用いたレコメンド評価/設計モデル
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
1-5. 他の方法論との比較
9
クロス
バリデーション
被験者実験
ABM
容易性 市場構造 環境の
動的変化
○ × ×
× ○ △
○
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
2-1. モデルの全体像
11
EC Site•商品1(カテゴリ1)•商品2(カテゴリ2)•商品3(カテゴリ3)
顧客
顧客
顧客
購買
推薦
購買
推薦
購買
推薦
消費者モデル
•顧客はカテゴリ毎の選好を
保持•ハフモデル
レコメンドモデル
協調フィルタリング手法でのレコメンドを実施
商品は、1カテゴリに分類される
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
2-2. 消費者モデル
• W1 : 商品カテゴリを重視する度合い• W2 : ECサイトからのレコメンドを重視する度合い• W3 : 商品の販売数・人気度合を重視する度合い• α:自分が好きなカテゴリの商品ならば1, それ以外は0• β:t-1期にレコメンドされた商品は1,それ以外は0• γ : 商品の販売数• PS’ : まだ購入していない商品の集合• Roulette(): ルーレット選択
12
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
2-3. レコメンドモデル
• 重みが最大の商品をレコメンド• 消費者uについて商品pの重みを計算
– Vip: 消費者iが商品pを購入している場合1,購入していない場合0
– Wu,i: 消費者u,i間の類似度。コサイン距離を用いて算出。
– NEu : 消費者uと類似度が高い|NE|人の消費者の集合。|NE| をネイバー数と呼ぶ。
13
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
2-4. 評価指標
• 各消費者の精度を平均した値を利用
• 時刻tにおける消費者uの精度:
–購入した商品の中で、消費者uが好きなカテゴリの商品の数 / 購入した商品の数
14
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3. シミュレーション結果
ここからは、pptをご覧ください。配布資料とは内容が異なります。
15
• 市場構造1,2 の場合での比較• トレンド追随型消費者の影響• 優良顧客(消費者)の影響
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3-1. シミュレーションの共通設定
• パラメータ設定について
• 実験方法について– 各シナリオについて10回試行し、各消費者・各時刻での平均値・分散値を算出
16
パラメータ名 パラメータ値
時間 50期
カテゴリ数 10
商品数 2000
W1,w2,w3 各シナリオにて
市場構造 1 or 2 (後述)
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3-2. 嗜好のクラスタ化の影響
17
1
1
12
市場構造1.
1
カテゴリ1
に興味がある消費者群
2
2
2
カテゴリ2
に興味がある消費者群
3
3
3
カテゴリ3
に興味がある消費者群
市場構造2.
13
14
21
23
24
31
32
34
各消費者がランダムに2つのカテゴリに興味を持つ
• 嗜好のクラスタ化度合が、レコメンドに、いかなる影響を与えるか?• 全消費者について、(w1,w2,w3 ) = (0.9, 0.1,0.0)• 極端な2パターン
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3-2. 嗜好のクラスタ化の影響(2/2)
18
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
15
91317212529333741454953
市場構造1の精度
sinario1_n5 sinario1_n10 sinario1_n15 sinario1_n20
sinario1_n25 sinario1_n30 sinario1_n35 sinario1_n40
sinario1_n45 sinario1_n50 sinario1_n60 sinario1_n70
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
15
91317212529333741454953
市場構造2の精度
sinario2_n5 sinario2_n10 sinario2_n15 sinario2_n20
sinario2_n25 sinario2_n30 sinario2_n35 sinario2_n40
sinario2_n45 sinario2_n50 sinario2_n60 sinario2_n70
•嗜好のクラスタ化の有無によらず、ネイバー数=5あたりで精度が最大
•ネイバー数が増加:ノイズを含んでしまう。真に選好が一致している消費者は、たかだか10人
•嗜好のクラスタ化が緩む→ 精度が下がる
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3-3. トレンド追随型消費者の影響(1/2)
• 一般消費者とトレンド追随型消費者が混在した環境• 購買頻度一定、市場構造2 にて実験
– Ex) 音楽市場。自分の趣味に忠実・ニッチ志向の消費者+とりあえずオリコン上位に出てきそうな楽曲をチェックする消費者
• 一般消費者の平均精度を測定
19
トレンド追随型消費者
一般消費者
•(w1, w2, w3) = ( 0.9, 0.1 , 0.0)
•自分の選好にマッチした商品、過去にレコメンドされた商品を基準に、購入商品を決定
•(w1, w2, w3) = ( 0.5, 0.1 , 0.4)
•自分の選好にマッチした商品、過去にレコメンドされた商品の他に、 「売れ筋の商品」「人気の商品」を基準に、購入商品を決定• 流行に敏感な人
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3-3. トレンド追随型消費者の影響(2/2)
• 追随型が一定数以下で存在– 初期のスパースな環境下で、ネイバー数が大きい方がうまくいく場合がある– Because:
• 極めて嗜好データが尐ない中で、うまく真の選好が一致した消費者を発見できていない→ネイバー数が大きいほうが良い
– ミクロでみる必要性
• 追随型が一定以上存在– 初期のスパースな環境下で、レコメンドが機能しない– Because:
• ノイズとなる消費者が多すぎる
– 仮にランダムなレコメンドを実施→精度は0.220
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52
一般消費者の精度
トレンド追随型消費者 30%
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52
トレンド追随型消費者 70%
|NE| = 5
|NE|= 10
|NE| = 20
|NE| = 30
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3-4. 優良顧客の影響(1/3)
• (w1,w2,w3) = (0.9, 0.1, 0.0)
• 「尐しの優良顧客」と「大量の優良顧客」が混在し、スパースな環境– 「一部の消費者だけが、大量購入」というのは、よくあるパターン
21
優良顧客20 %
非優良顧客80 %
•購買頻度 = 0.2
•購買頻度 = 0.8
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3-5.優良顧客の影響(2/3)
• 市場構造1,2 ともに・・– 初期において、ネイバー数を、やや大きく設定する必要あり– ネイバー数=5 (通常時に最適なネイバー数)は、初期において最悪
– Because: • 大半の消費者が「非優良顧客」であり、今までのシナリオと比較しても、初期時の投票行列が極めてスパース→ より多くのユーザの購買履歴を参照する必要性が生じた
22
0
0.1
0.2
0.3
0.4
0.5
0.6
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52
優良顧客の精度
市場構造1
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52
優良顧客の精度
市場構造2
|NE|=5
|NE|=10
|NE|=15
|NE|=20
|NE|=25
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
3-5. 優良顧客の影響(3/3)
• 常にネイバー数=5が最適– Because: 非優良顧客の場合、投票行列がスパースな環境下で多くのユーザのデータを考慮することが、ノイズになりやすい
• 優良顧客と非優良顧客で、最適なネイバー数が異なる
23
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
1 4 7 101316192225283134374043464952
非優良顧客の精度
市場構造2
|NE|=5
|NE|=10
|NE|=15
|NE|=20
|NE|=25
0
0.1
0.2
0.3
0.4
0.5
0.6
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52
非優良顧客の精度
市場構造1
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
4-1. 結論
25
市場構造 時期 対象 ネイバー数
通常時 尐
優良顧客,非優良顧客が存在
システム導入時 優良顧客 多
非優良顧客 尐
一定期間以降 優良顧客 尐
非優良顧客 尐
トレンド追随型消費者が一定以下にて存在
システム導入時 多
一定期間以降 尐
http://umekoumeda.net/新田/寺野/出口研合同合宿 ‘08
4-1. 結論
• 基本的に、ネイバー数は小さな値の方が良いが、市場構造によっては異なる場合がある
– トレンド追随型消費者や優良・非優良顧客が存在する場合には、ネイバー数を大きくした方が良い場合がある
• 実際のパラメータ調整へ役立てる可能性
26