Surrogate for Long-Term User Experience in Recommender Systems
https://gyazo.com/39957fbbe89596586d2b35cff19eea67
なぜ読んだか
Twitterで流れてきて、面白そうだった
長期的なユーザー体験改善の知見を知りたい
INTRODUCTION
クリックやいいねなどの即時的なレスポンスに着目した推薦アルゴリズムが成功を治めている
しかし、短期的なエンゲージメントに最適化しすぎると、クリックベイトなどの望ましくない推薦がされ、長期的なユーザー体験を損なう可能性がある
短期的な指標を協調しすぎる欠点を認識し、推薦プラットフォームにおける長期的なユーザー体験に沿った最適化設計が必要
しかし、長期的な成果はスパースで、ノイズも多いため、長期のユーザー体験の最適化は困難
長期的な成果の代わりになり、最適化しやすい指標はあるか?
長期的な体験に対する推薦効果を中期的な行動の集約によって明らかにする
中期的なユーザー行動を特定し、長期的な体験(訪問頻度)との関係性を調査する
商用推薦プラットフォームの数億ユーザーの5か月のデータを分析
ユーザーの行動パターンの効果を強化学習を利用してオンラインA/Bで検証
本論文の貢献
指標
ユーザーの時系列での消費パターンを捉える指標を提案
分析によるインサイト
ユーザー行動パターンと長期的なユーザー体験との関係を調査
代理選択
予測モデルに基づいて、長期ユーザー体験を代替するユーザー行動パターンを選択
アルゴリズムの改善
強化学習を使って長期的なユーザー体験を最適化する代理指標の効果を検証
MEASUREMENTS
訪問頻度の増加などの長期的なユーザー体験の改善を直接的に最適化するのは困難
数週間から数か月の時間軸で現れ、スパースかつノイズも多い
長期的なユーザー体験を代替する中期的なユーザー行動を調査
長期的なユーザー体験と関連しており、最適化しやすい
トピッククラスタを生成
1. アイテムの共起行列を生成
entry (i, j): 同じユーザーが連続して消費したアイテム i, j
2. matrix factorization で各アイテムの埋め込み表現を生成
3. k-meansで10,000クラスタを生成
4. 各アイテムに近傍3つのクラスタを割り当て
S: ある期間でのユーザーの消費履歴
重複アイテムも含まれる(繰り返して同じアイテムを消費)
Diversity
3種類の多様性
Ratio-based Diversity
ユニークトピッククラスタ数 / 消費数
アイテムに対してクラスタ数は3つ割り当てられるので1以上にもなる
https://gyazo.com/cb8bfd0a4f2ce12fe32f3d8472089a5b
Distribution-based Diversity
エントロピーベースの多様性
一様分布でもクラスタ数によって値が変わる
2クラスタ: -log(1/2) = 0.69
5クラスタ: -log(1/5) = 1.61
https://gyazo.com/94c74c6d5aa53822945b73349ad6cebe
KL-divergence diversity
Distribution-based Diversity に対して、一様分布の場合に同じ値になるように
https://gyazo.com/fdfcd3c13bc8a6b9c1d5c81c7ddfe458
Repeated Consumption
繰り返し消費したコンテンツ数
$ S = \{s_1, s_1, s_2, s_1, s_3, s_4, s_3\} の場合は 3/7
https://gyazo.com/039318c23f8dc56f47f9d1e581485078
High-Quality Consumption
コンテンツの消費時間は、クリックでは捉えられないエンゲージメントを計測できる
消費割合で計測
消費割合が X 以上、もしくは、消費時間が Y 以上
https://gyazo.com/464bee80c887503301af1c430bd13fa3
Persistent Topics
あるトピッククラスタのアイテムを消費したからといって、そのトピックに興味を持っているとは限らない
一定以上消費したクラスタ数の割合
https://gyazo.com/81b3a4eb525c8bdb1125e275fe80b6b1
Page-Specific Revisits
推薦プラットフォームは複数のページを提供する
同じ時間を消費するユーザーでも、プラットフォームでのインタラクションのパターンは様々
ユーザーの再訪問を調査するため、ぞれぞれのページへの再訪問時間を調べる
ページは以下
ホームページ: 最初に訪れるページ
検索ページ: 特定コンテンツを検索するページ
消費ページ: コンテンツページ
https://gyazo.com/6a825a9adbc5cfd995b06dd33e92479f
ANALYSIS
指標と長期ユーザー体験との関連性を分析
Data
商用推薦プラットフォームを調査
数億ユーザーの20週のログを利用
ユーザーの訪問頻度は不均一
ときどき訪問するユーザーもいれば、定期的に訪問するユーザーもいる
低頻度ユーザー
14日間のウィンドウでA日未満訪問ユーザー、2つのウィンドウで同じ行動
高頻度ユーザー
14日間のウィンドウでB日以上訪問ユーザー、2つのウィンドウで同じ行動
20週を2週間の10個のバケツに分割
ユーザーごとに多様性などの指標をバケツごとに計測
分析期間の初期期間で低頻度であるユーザーを分析
高頻度ユーザーになるユーザーもいれば、低頻度ユーザーのままのユーザーもいる
長期ユーザー体験の改善は訪問頻度の増加とする
Analysis Results
Statistics on Improved Long-Term User Experience
Sparsity
200万の低頻度ユーザーのうち、5か月後に高頻度ユーザーになったのは2.3%
Heterogeneity
同じ期間で高頻度ユーザーに移ったユーザーでも、高頻度になるパターンはバラバラ
図1a: ランダムサンプリングした10ユーザー
1ヵ月以内に高頻度ユーザーになったユーザー
訪問頻度が徐々に高くなるユーザー
訪問頻度が上下するユーザー
https://gyazo.com/c838923b89c19784f6752bde0f015795
Long time horizon
高頻度ユーザーになるまでの時間
40週まで伸ばして分析
平均は15.32、中央値は14週
https://gyazo.com/2334b0a3517e7953063e773f3fdeae94
長期ユーザー体験はスパースでノイズが多いため、直接的に最適化するのは困難
長期ユーザー体験との関係の理解のため、以下を比較
L-H: 5か月後に高頻度ユーザーになったユーザー
L-L: 5か月後に低頻度ユーザーのままのユーザー
Sequential Consumption Diversity Patterns.
訪問頻度と多様性の関係を調査
訪問頻度が増えたとき、消費するトピックは増えていくのか、特定の興味に集中していくのか
Ratio-Based Diversity Patterns
消費トピック数は増えていく
Ratio-Based Diversityは徐々に下がる傾向
https://gyazo.com/850a8d1d901cdc11a45d37f5a6afd811
Distribution-Based Diversity Patterns
トピッククラスタの分布パターン
エントロピーベースの多様性は増える傾向
KL-divergence 多様性は下がる傾向
一様分布からは遠ざかる
https://gyazo.com/e41ef421129aa24abaa2c9fd0061325f
訪問頻度が増えると
より多様なコンテンツを消費する
より特定のトピックのコンテンツに消費する
Sequential Consumption Quality Patterns
Repeated Consumption and High-Quality Consumption
訪問頻度が増えると
以前に消費したアイテムの消費割合が増える
より特定の興味に集中する結果の立証でもある
高品質な消費割合が増える(2倍: 20% -> 46%)
https://gyazo.com/cefb2524ca16d1784b9ecdbc809ea605
Persistent Topics
Persistent Topicは増加傾向(3倍: 15.3% -> 46.9%)
真の興味の消費が増える
https://gyazo.com/3cd12fecc8af3c68b7efe03d695468c8
Sequential Page Revisit Patterns
特定ページの訪問頻度との関連
バイアス除外のため、初期期間の消費アイテム数が同じ低頻度ユーザーのサブセットを作成して調査
各ページの再訪問時間
訪問頻度が増えると、全てのページで再訪問時間は減少
ホームページの再訪問時間は初期のタイミングで大きく異なっている
ホームページを訪れる低頻度ユーザーは、高頻度ユーザーになりやすい傾向を示唆
https://gyazo.com/34621445d5d8162b2077d31a99f038de
分析まとめ
高頻度ユーザーに成長するユーザー
より多様なトピックを消費する(図 2a, 3a)一方で、特定の興味に集中していく(図 3b, 4c)
同じアイテムを消費し、高品質な消費が増える(図 4a, 4b)
再訪問時間が少なくなる(図5)
SURROGATE SELECTION
長期のユーザー体験と強く関連するユーザー行動パターンを識別する
訪問頻度が変化するかを予測
20週を10分割
2つ目のバケツで低頻度のユーザーを抽出
予測モデルの特徴量
1. 2つ目のバケツの行動パターン
2. 1つ目のバケツと2つ目のバケツでの行動パターンの差分
5か月後に高頻度ユーザーになったかどうかの2値
ランダムフォレストを利用
不均一データに柔軟に対応できる
特徴量の重要性を簡単に分析できる
異なるユーザー分布に対してロバスト
行動パターンが異なるユーザー分布より重要な特徴量であれば、行動パターンが長期的な体験(訪問頻度)の代理指標になりうる因果関係である可能性が高くなる
予測結果
200の木と最大深さ5のランダムフォレスト
AUC 0.691(学習時はAUC 0.697)
先頭2つのバケツの行動パターンしか使っていないわりに、印象的な結果
先頭1ヵ月から5か月後を予測
feature importance
訪問頻度が増えたかを予測する上で最も重要な特徴量
エントロピーベースの多様性
ホームページの再訪問時間
この2つを長期ユーザー体験のための代理指標として利用
https://gyazo.com/635a9ddcff90a91ec8b0ddc31042d65d
EXPERIMENTS
商用推薦プラットフォームでオンラインA/Bテストを実施
長期ユーザー体験を改善するのに代理変数の最適化が有効か検証
実験は強化学習の設定で、REINFORCEを利用
教師あり学習でも適用可
Background: a REINFORCE Recommender
REINFORCE: Chen et al.
推薦問題をマルコフ決定過程として定式化
$ (S, A, P, R, \gamma)
S: 状態スペース
A: 離散行動スペース
P: $ S \times A \times S \rightarrow R 状態遷移確率
R: $ S \times A \rightarrow R 報酬関数
即時報酬(ユーザーフィードバック)
γ: 割引率
ユーザー状態 $ s_t
ポリシー $ \theta
$ U_{s_t}: 潜在ユーザー状態
$ v_a : アイテム a の埋め込み表現
https://gyazo.com/29e8da81a325b06917f547bff42a907e
REINFORCEで、累積報酬を最大化するポリシーを学習
オフラインのバッチ学習では、importance samplingを適用
https://gyazo.com/b8de4821a0148f821590e6c1d2838e81
$ R_t = \Sigma^T_{t'=t} \gamma^{t'-t}r(s_{t'}, a_{t'}): 将来の収益
$ d^{\beta}_t(s) : state visitation probability under β
$ R_t を提案のユーザー行動に置き換える
Consumption Diversity as Surrogate
Reward Formulation
エントロピーベース多様性
https://gyazo.com/d15bd01edc8ee945b5c893762e54c0ca
$ R^o_t(s_t, a_t) : REINFORCEで使われているオリジナルの報酬
$ D_{entropy}(S_t) : 現在の消費 $ a_t を含む2週間ウィンドウの多様性
$ D_{entropy}(S_t-1) : 現在の消費 $ a_t を含まない2週間ウィンドウの多様性
多様性を代理変数として使う報酬関数は直観的である
おすすめされたアイテムが消費されると、ユーザーの消費履歴の多様性は増す
$ D_{entropy}(S_t) - D_{entropy}(S_t-1) > 0
1より大きければ、オリジナルより報酬が高くなる
m: 代理変数報酬の強さを表す係数、実験では m = 5
Results
オンラインA/Bの結果を図6に示す
ベースラインのREINFORCEに対して、改善割合を表示
トップライン指標(user overall enjoyment)と長期的な訪問頻度の代理指標のどちらも向上
実験期間中に強く学習している
継続的に多様なコンテンツを発見、消費させ、長期的なユーザー体験の改善をさせることを示している
消費したトピッククラスタ数も伸びている
https://gyazo.com/7d6bc992222ae719e3ae580eec9f7a65
Homepage Revisits as Reward Surrogate
Reward Formulation
ホームページの訪問を代理変数として利用
https://gyazo.com/cd2473890b071ac81f89608d099713e2
ユーザーがアイテムを消費し、ホームページに戻ってくれば報酬が増加する
c = {5, 10, 20}、c = 10 が最適だった
Results
ベースラインと比べ、全体の訪問頻度(図7a)、低頻度ユーザーの訪問頻度(図7b)が向上
ホームページの訪問数増加 (図7c)
代理指標の効果を確認
満足した消費数も増加(図7d)
長期的なユーザー体験の満足度が高い
https://gyazo.com/328c1061cf766c74ba2a60201eaefbe2
CONCLUSION
長期的なユーザー体験を改善するために、長期的な体験の代理になる中期的ユーザー行動パターンを調査
オンラインA/Bテストで代理指標が長期体験の改善に繋がっていることを確認
所感
商用推薦プラットフォームの詳細が何かわからなかった
ニュースアプリとはまた違いそうだけど、参考にはなる
分析だけみると、最初のユーザー時点(ホームページ使っているかどうか)で決まっている印象だったけど、オンラインA/Bしていてすごい
強化学習をオンラインに入れているのもすごい
低頻度から高頻度になったユーザーに着目していたけど、途中経過はあまり使っていなそうなので、単純に低頻度ユーザーと高頻度ユーザーを比較するだけでも同じになりそう(結果論ではあるけど)