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.

マルチアームバンディットアルゴリズムを使ったプッシュ配信の最適化

えびスタ #3 でのLTの発表資料です!

マルチアームバンディットアルゴリズムを使ったプッシュ配信の最適化

  1. 1. マルチアームバンディットアルゴリズムを 使ったプッシュ配信の最適化 株式会社VASILY 金田卓士 えびスタ!#3 2015年8月24日
  2. 2. 自己紹介 金田 卓士 @kndt84 データサイエンティスト •2009年に大学院を修了 専攻は計量経済学 •一休.com、ソフトバンク・テクノロジーを 経て現職 •趣味では、VRミニ四駆という作品を作って、 Maker Faire に出展したりしてます!
  3. 3. 1ABOUT iQON ! 60,000 ! ! 500 600 ! 10,000 4.3 4.5 ( :7,009 ) ( :7,009 ) iQON No.1 ! ! LIKE No.1 No.1 No.1 No.1 No.1 No.1 200 ! 600 1/3
  4. 4. 1. 河北麻友子に突撃インタビュー! 美の秘訣を全て伝授❤ 2. 「なんでそんなに細いの?」
 河北麻友子が皆の質問に回答✨ 3. これであなたもモデルみたい!?
 河北麻友子が語る美の秘訣❤ 突然ですが、プッシュ通知を送った際、どの文言の CTRが一番高かったと思いますか?
  5. 5. 正解は、2番でした! 0% 0.725% 1.45% 2.175% 2.9% 2.24% 2.88% 2.01% 1 2 3
  6. 6. しかし、プッシュの文言は当日限り。 終わってから結果が分かっても仕方ない。。 マルチアームバンディット問題
  7. 7. マルチアームバンディット問題とは? • 配当率が違う複数のスロットマシンがある 状況を想定 • 配当率が高いマシンを見つけ出す必要があ る一方で、利益を最大化する必要もある • A/Bテストの様に、探索(explore)のみ を行うのではなく、活用(exploit)も行 うことで利益を最大化させる • ε- Greedy, Softmax, UCB等の複数のア ルゴリズムが存在
  8. 8. バンディットアルゴリズムを プッシュ配信に適用する際の問題点 • 1回ごとの試行ではなく、ステップに分けてまとめ て送信することが必要
 ex. 100万通を10回に分けて送る • プッシュ通知送信と開封に時間差があるため、報 酬が遅れて支払われる
  9. 9. ステップごとの配信 • Softmaxアルゴリズムを利用 • アルゴリズムは、O Reillyから出ている 本を参考にRubyで実装 • 書籍では、1回ごとにアームを引くこと を想定した実装になっていた • 送信数と開封数を一括でアップできる bulk_update() というメソッドを独自に 追加
  10. 10. Before After • プッシュ配信は送信から開封まで に時間差がある • 最初から活用の割合を増やすと、 配信数が安定しない • 送信回数ごとにパラメータを調整 し、徐々に探索から活用にシフト させることで安定した送信が可能 に 送信から開封の時間差の問題
  11. 11. 約5%のプッシュ開封数の増加を実現
  12. 12. まとめ • マルチアームバンディットアルゴリズムを利用する ことで、プッシュ配信のCTRを上げることが可能 • 実用ではプッシュ配信に特有の問題点があるので、 多少の工夫が必要
  13. 13. https://github.com/vasilyjp/multi_armed_bandit VASILYで利用しているマルチアームバンディットア ルゴリズムの実装をGemパッケージとして公開して ます!要望、質問、プルリク大歓迎です!

×