Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Contexual bandit @TokyoWebMining

Contexual bandit @TokyoWebMining

  1. 1. Contextual  Bandit入門   @TokyoWebMining   坪坂 正志   m.tsubosaka@gmail.com
  2. 2. 本発表の内容 •  BanditアルゴリズムにContexutalな情報を 使ったContextual  Banditに対する解説と簡単 なシミュレーションによる実験結果を紹介する   •  また配信ログがあるときにオフラインで実験 する方法についても紹介する
  3. 3. Banditアルゴリズムについて •  報酬がわからない複数のスロットマシンが あったときに何回か試行することにより最も利 得が高いスロットマシンを発見する   –  Ex:  広告のクリエイティブのうち最もクリック率 (Click  through  rate,  CTR)が高いクリエイティブを見 つける   •  参考 Finite-­‐Dme  Analysis  of  mulDarmed   bandit  problem,  Machine  Learning,2002
  4. 4. Bandit  アルゴリズムについて CTR=20%   Click  2000回   Imps  10000回 CTR=12.5%   Click  1回   Imps  8回 CTR=13.0%   Click  1300回   Imps  10000回 •  単純にCTRが高いクリエイティブを出すだけなら左の広告の方が高 い、しかし真ん中の広告はまだほとんどインプレッションがなくある 程度出してみたら左の広告より高いCTRになる可能性がある、一 方で右の広告を出しても左の広告より高いCTRになりそうにない   –  CTRが高い広告を出しつつ(exploit)   –  CTRが高くなりそうな広告も出す(explore)
  5. 5. モチベーション •  下の二つの広告のCTRが以下のようになって た場合   •  最終的に左の広告を100%打てばCTRは8.2% CTR  8.2% CTR  5%
  6. 6. モチベーション •  でも実はトラフィックの80%が男性で20%が女性とかで   •  男性全部には左の広告を女性全部に右の広告を打 てば   •  CTRは9%になる 男性CTR  10%   女性CTR  1%   男性CTR  5%   女性CTR  5%  
  7. 7. 通常のBanditアルゴリズムの問題 •  各armの報酬が常に同一分布に従うという過 程を置いている   •  最初の例では広告を見ている人が男性か女 性かという区別を行っていない   –  この場合でも男性か女性かのセグメントごとに Banditアルゴリズムを利用すれば最適な配信は できるが事前のセグメンテーションが必要
  8. 8. Contextual  bandit •  各armの選択の際にcontext   𝑥が与えられているという 設定   •  context情報が与えられている場合、例えば線形モデ ルを使って広告のCTRを以下のように予測する   –  代表的なアルゴリズムとしてLinUCBがある 広告CTR  =  0.1  *  男性 +  0.01  *  女性 広告CTR  =  0.05  *  男性 +  0.05  *  女性
  9. 9. LinUCB •  WWW  2010でYahooの研究者によって提案され た   –  A  contextual-­‐bandit  approach  to  personalized  news   arDcle  recommendaDon,  WWW  2010   •  適応されている問題としてはニュースのレコメン デーション   –  性別、年齢、地域、興味カテゴリなどを使ってユーザ ごとに適したニュースを配信する   •  論文では提案手法がcontext情報を使わない通 常のBanditと比較してCTRが12.5%高くなったとい う実験結果になっている  
  10. 10. LinUCBアルゴリズム(概要) •  リッジ回帰で現在の係数ベクトルを計算して、 contextに対する期待値+Upper  confidenceを足し た値が最大となるものを選択する
  11. 11. 特殊な場合の例 •  x=(1)と常に一定の場合を考えるとUCBとほぼ 同じになっていることが分かる CTR=クリック数/インプレッション数 CTR+α*(1/インプレッション数)^(1/2) インプレッション数 クリック数
  12. 12. シミュレーション •  設定   –  トラフィック70%男性,  30%女性   –  広告1:  男性CTR  10%,  女性CTR  2%   –  広告2:  男性CTR  2%,  女性CTR  10%   –  context  二次元ベクトルで男性もしくは女性を表 す   •  男性なら(1,0),  女性なら(0,1)
  13. 13. シミュレーション結果 •  1万回の試行を100回シミュレーションした平 均結果   •  期待通り、context情報を使ったLinUCBの方が CTRが高くなっている   アルゴリズム 平均CTR UCB 7.56% LinUCB 10.0%
  14. 14. BanditのWebへの応用について ここに何を出すかを決める •  2009年  Yahoo!  Researchの研究者がWebのコンテンツ配信をBanditアルゴリズム を使ったという論文を発表   –  実際にオンラインで評価した結果も含んでいる   –  Explore/Exploit  Schemes  for  web  content  opDmizaDon,  ICDM  2009  (Best  Paper)   •  2010-­‐2011年ぐらいまでYahoo!  ResearchからいくつかBandit関連の論文が発表さ れた   –  A  contextual-­‐bandit  approach  to  personalized  news  recommendaDon,  WWW  2010   –  Unbiased  offline  evaluaDon  of  contextual-­‐bandit-­‐based  news  arDcle  recommendaDon,  WSDM   2011  (Best  Paper)   –  An  empirical  evaluaDon  of  Thompson  sampling,  NIPS  2011   •  先端的なWeb企業は4-­‐5年前からBanditアルゴリズムやContextual-­‐Banditアルゴ リズムを実世界で導入している
  15. 15. アルゴリズムの評価について •  実際にBanditアルゴリズムをシステムに導入す る場合、事前にCTRがどの程度上がるかを知り たいことが多い   •  今までの配信ログからオフラインでロジックの評 価が行えることが望ましい   •  オフラインでの評価方法についてはLinUCBの論 文と同じ著者らが提案している   –  Unbiased  offline  evaluaDon  of  contextual-­‐bandit-­‐ based  news  arDcle  recommendaDon  algorithms,   WSDM  2011
  16. 16. オフラインの評価での課題 •  アクセスログからでは実際に表示した物に対 する反応しかなく、例えばBanditアルゴリズム が表示されなかったものを配信すると決めた ときに結果が観測できない   アクセスログ 2014/1/1,ユーザA,クリエイティブB表示,クリックせず   2014/1/2,ユーザA,クリエイティブA表示,クリックせず 2014/1/3,ユーザB,クリエイティブB表示,クリック 2014/1/4,ユーザC,クリエイティブA表示,クリックせず 2014/1/5,ユーザD,クリエイティブA表示,クリック 2014/1/6,ユーザA,クリエイティブB表示,クリックせず   … ここでユーザBにクリエイ ティブAを表示したらどう なったかの情報がない
  17. 17. オフラインでの評価方法 •  簡単にいうとBanditアルゴリズムの出力とロ グの出力があったときのみ、データとして出 力し、他は飛ばすということを行えばよい
  18. 18. 評価方法(例) 2014/1/1,ユーザA,クリエイティブB表示,クリックせず   2014/1/2,ユーザA,クリエイティブA表示,クリックせず 2014/1/3,ユーザB,クリエイティブB表示,クリック 2014/1/4,ユーザC,クリエイティブA表示,クリックせず 2014/1/5,ユーザD,クリエイティブA表示,クリック 2014/1/6,ユーザA,クリエイティブB表示,クリックせず   … 履歴 バンディットアルゴリズム ユーザA,クリエイティブB表示,クリックせず クリエイティブB を選択
  19. 19. 評価方法(例) 2014/1/1,ユーザA,クリエイティブB表示,クリックせず   2014/1/2,ユーザA,クリエイティブA表示,クリックせず 2014/1/3,ユーザB,クリエイティブB表示,クリック 2014/1/4,ユーザC,クリエイティブA表示,クリックせず 2014/1/5,ユーザD,クリエイティブA表示,クリック 2014/1/6,ユーザA,クリエイティブB表示,クリックせず   … 履歴 バンディットアルゴリズム ユーザA,クリエイティブB表示,クリックせず クリエイティブB を選択 ログではクリエイティブAがでて るため履歴には追加しない
  20. 20. 評価方法(例) 2014/1/1,ユーザA,クリエイティブB表示,クリックせず   2014/1/2,ユーザA,クリエイティブA表示,クリックせず 2014/1/3,ユーザB,クリエイティブB表示,クリック 2014/1/4,ユーザC,クリエイティブA表示,クリックせず 2014/1/5,ユーザD,クリエイティブA表示,クリック 2014/1/6,ユーザA,クリエイティブB表示,クリックせず   … 履歴 バンディットアルゴリズム クリエイティブB を選択 ユーザA,クリエイティブB表示,クリックせず   ユーザB,クリエイティブB表示,クリック
  21. 21. 評価方法(例) 2014/1/1,ユーザA,クリエイティブB表示,クリックせず   2014/1/2,ユーザA,クリエイティブA表示,クリックせず 2014/1/3,ユーザB,クリエイティブB表示,クリック 2014/1/4,ユーザC,クリエイティブA表示,クリックせず 2014/1/5,ユーザD,クリエイティブA表示,クリック 2014/1/6,ユーザA,クリエイティブB表示,クリックせず   … 履歴 バンディットアルゴリズム クリエイティブB を選択 ユーザA,クリエイティブB表示,クリックせず   ユーザB,クリエイティブB表示,クリック ログではクリエイティブAがでて るため履歴には追加しない
  22. 22. 評価方法(例) 2014/1/1,ユーザA,クリエイティブB表示,クリックせず   2014/1/2,ユーザA,クリエイティブA表示,クリックせず 2014/1/3,ユーザB,クリエイティブB表示,クリック 2014/1/4,ユーザC,クリエイティブA表示,クリックせず 2014/1/5,ユーザD,クリエイティブA表示,クリック 2014/1/6,ユーザA,クリエイティブB表示,クリックせず   … 履歴 バンディットアルゴリズム クリエイティブA を選択 ユーザA,クリエイティブB表示,クリックせず   ユーザB,クリエイティブB表示,クリック   ユーザD,クリエイティブA表示,クリック
  23. 23. 評価方法(例) 2014/1/1,ユーザA,クリエイティブB表示,クリックせず   2014/1/2,ユーザA,クリエイティブA表示,クリックせず 2014/1/3,ユーザB,クリエイティブB表示,クリック 2014/1/4,ユーザC,クリエイティブA表示,クリックせず 2014/1/5,ユーザD,クリエイティブA表示,クリック 2014/1/6,ユーザA,クリエイティブB表示,クリックせず   … 履歴 バンディットアルゴリズム クリエイティブA を選択 ユーザA,クリエイティブB表示,クリックせず   ユーザB,クリエイティブB表示,クリック   ユーザD,クリエイティブA表示,クリック ログではクリエイティブBがでて るため履歴には追加しない
  24. 24. 評価方法(例) 2014/1/1,ユーザA,クリエイティブB表示,クリックせず   2014/1/2,ユーザA,クリエイティブA表示,クリックせず 2014/1/3,ユーザB,クリエイティブB表示,クリック 2014/1/4,ユーザC,クリエイティブA表示,クリックせず 2014/1/5,ユーザD,クリエイティブA表示,クリック 2014/1/6,ユーザA,クリエイティブB表示,クリックせず   … バンディットアルゴリズム 履歴 ユーザA,クリエイティブB表示,クリックせず   ユーザB,クリエイティブB表示,クリック   ユーザD,クリエイティブA表示,クリック 履歴において、バンディットアルゴリズムで は3回表示されて、2回クリックなので CTR=66.6%
  25. 25. リソースについて •  収束性や性能についてのBandit問題の理論 的な話題はNIPS,  ICMLのような会議の論文を みるとよくある   •  実応用についてはWWW,  KDD,  WSDMみたい な会議でよくある

×