Slide 1

Slide 1 text

IT事業をグロースさせるRCT 日本評価学会第21回全国大会, 11/28 サイバーエージェント 藤田 光明・安井 翔太 1

Slide 2

Slide 2 text

自己紹介 藤田 光明 Data Scientist ● 経歴 ○ 2018.04 - 2020.10 ■ サイバーエージェント AI事業本部 Dynalyst ■ 広告配信アルゴリズムの開発 ■ RCTシステム基盤の設計・実装 ○ 2020.11 - ■ データワン事業部 ● 興味 ○ RCTを用いたプロダクトグロース ○ ビジネス x 経済学 / 機械学習 2

Slide 3

Slide 3 text

今日話すこと ● IT企業におけるRCTの活用と課題 ○ RCT: Randomized Controlled Trial, ランダム化比較試験 ● その課題にどう対処するか について,Dynalystで直面した課題 / 取り組んだ事例を中心 に紹介します. 3

Slide 4

Slide 4 text

1. IT企業におけるRCTの活用と課題 2. RCTが組織をグロースさせるために 3. 機械学習モデルのRCTを正確に行うために 4. DXによって行政のRCT利用がどう変わるか? 目次 4

Slide 5

Slide 5 text

1. IT企業におけるRCTの活用と課題 5

Slide 6

Slide 6 text

IT企業ではRCTが日常的に行われている over 20000 test / year over 500 test / year 数字の一部は[Kohavi et al. 2020]より 6 over 20000 test / year

Slide 7

Slide 7 text

日常的にRCTを行うための重要な要素 ● トラフィック(取引量)の多さ ○ 実験に必要なサンプルサイズが容易に手に入る ● 実験コストの低さ ○ トリートメントを簡単に作成できる ○ 実験の開始や停止が簡単にできる 多くのITサービスが二つの要素を持っている 以下ではReal Time BiddingにおけるDynalystを例に説明する 7

Slide 8

Slide 8 text

Real Time Bidding (RTB) とは これらの一部はRTBで 取引されている 8

Slide 9

Slide 9 text

RTB: 数10ms内の広告オークション 9 ネットに広告を 出したい会社 DSP SSP User / Site a b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 サイト収益を最大 化するためにオー クションを開催

Slide 10

Slide 10 text

大量のトラフィック 10 ネットに広告を 出したい会社 DSP SSP User / Site a b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 数十万回/秒を超える広告リクエストが 送られてくる

Slide 11

Slide 11 text

さまざまな場所でRCTが行われる 11 ネットに広告を 出したい会社 DSP SSP User / Site a b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 入札額の決定する... 入札戦略のRCT, クリック率, 購入率の予測モデルのRCT より効果の高い広告画像を出す... 広告画像のRCT, 画像の選択アルゴリズムのRCT

Slide 12

Slide 12 text

さまざまな場所でRCTが行われる 12 ネットに広告を 出したい会社 DSP SSP User / Site a b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 入札額の決定する... 入札戦略のRCT, クリック率, 購入率の予測モデルのRCT より効果の高い広告画像を出す... 広告画像,画像の選択ロジックのRCT より効果の高い広告画像を出す... 広告画像のRCT, 画像の選択アルゴリズムのRCT これらのRCTはプロダクトを構成する ソースコードの書き換えのみで実現可能

Slide 13

Slide 13 text

機械学習も多く使われる 13 ネットに広告を 出したい会社 DSP SSP User / Site a b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 入札額の決定する... 入札戦略のRCT, クリック率, 購入率の予測モデルのRCT より効果の高い広告画像を出す... 広告画像,画像の選択ロジックのRCT より効果の高い広告画像を出す... 広告画像のRCT, 画像の選択アルゴリズムのRCT

Slide 14

Slide 14 text

RCTが日常的に行われる世界での2つの課題 1. グロースのための手段であるからこその課題 2. 機械学習を使うことで生まれる課題 14

Slide 15

Slide 15 text

RCTは組織のKPIを最大化するように行われるべき ● RCTが簡単にできると,RCTそれ自体が目的化してしまいがち ○ RCTの結果,〇〇がわかった!良かった!(けど意思決定にはつながらない...) ● 組織がRCTを行う目的は,重要な指標(KPI)の最大化 ○ 重要な指標: 売上・利益・顧客満足度など ○ 正しい分析結果を得ることではない ● RCTの(金銭的 / 時間的)コストを抑えつつ,RCTから生まれた 意思決定によるリターンを最大化することが重要 15

Slide 16

Slide 16 text

RCTを使ってKPIを最大化するには? たくさんのことに注意を払う必要がある.例えば... 16 RCTのコストを抑える ● ビジネス上の悪影響を抑えつつ, できるだけ早く実験の結論を得る ● 複数の実験を同時並行できる状態 にする ● 事前にA/Aテストを行う RCTによるリターンを最大化する ● ビジネス要件に即して注目するKPI を設計する ● 組織のいかなる職種のメンバーでも 実験結果を解釈できる状態にする ● ランダム化する単位(ユーザ,ウェブ ページなど)を適切に選ぶ ☆については次の章で紹介する

Slide 17

Slide 17 text

機械学習を使うことで生まれる課題 ● たくさんある ● この発表では,意思決定に機械学習を用いている際に発生する 学習データと予測したいデータの分布の違いに注目する 17

Slide 18

Slide 18 text

2. RCTが組織をグロースさせるために 18

Slide 19

Slide 19 text

RCTで組織をグロースさせるために導入したもの 以下の3つを紹介する 1. SQR Ramping Framework 2. Overlapping Method 3. RCTの評価の自動化 / 民主化 19

Slide 20

Slide 20 text

RCTで組織をグロースさせるために導入したもの 1. SQR Ramping Framework 2. Overlapping Method 3. RCTの評価の自動化 / 民主化 20

Slide 21

Slide 21 text

できるだけ早く実験の結論を得たい ● できるだけ早く結論を得て,素早く意思決定に反映させたい ● 早く結論を得るための最も簡単な方法はサンプルサイズを増やすこと ○ コントロール群:トリートメント群にそれぞれ50%:50%のユーザを割り振るのがベスト 例: ニュースサイトの見た目を変える ユーザ全体 50%(Control) 50%(Treatment) 21

Slide 22

Slide 22 text

実験によるビジネスリスク 例: トリートメントのニュースサイトがバグ により真っ白になってしまう ユーザ全体 50%(Control) 50%(Treatment) トリートメントにバグやユーザ体験を毀損する変更が含まれてしまう場合がある ここから得られる売上がゼロに 売上の半分が損なわれる 22

Slide 23

Slide 23 text

実験のスピードとリスクのトレードオフ ● ビジネスリスクを気にしすぎるとなかなか実験の結論が得られない ○ トリートメントの適用比率を低くして長期間実験する ○ 実験の結論が得られたときには,既に競合がその施策をリリースしてた... ○ もしくはサンプルサイズが少なすぎて実験の結果が解釈できない... など ● 実験の結論を早く得ようとすると,何か問題が発生したときにビジネ スへの悪影響が大きい 23

Slide 24

Slide 24 text

SQR Ramping Frameworkの導入 ● [Xu et al. 2018]で提案された ● SQRはそれぞれSpeed, Quality, Riskの頭文字 ● 実験のスピードとビジネスリスクのトレードオ フを考慮しながら,トリートメントの適用範囲 を増やしていくフレームワーク ● いくつかのフェーズから構成される 図は[Xu et al. 2018]より 24

Slide 25

Slide 25 text

第一フェーズ: Pre-Max Power Ramp ● 主目的: 実験によるリスクの緩和 ● 実験によってビジネス指標が悪化しないかを確認 ● トリートメントの適用は1~10%で短期間で行う ○ もし問題が起きても影響が小さい ○ また,実験の時間もかからない ● これをクリアすれば次のフェーズに移行する 25

Slide 26

Slide 26 text

第二フェーズ: Max Power Ramp ● 主目的: 実験で最も興味ある指標を測る ● トリートメントの適用は検出力最大(Max Power)と なる50%で1週間以上行う ● 実験の結果,トリートメントが良いとわかれば適用 を100%にして実験を終了する 26

Slide 27

Slide 27 text

DynalystでのRamping Frameworkの導入 ● 機械学習モデルのRCTにてフレームワークを導入した ○ 3 stepほどに実験フェーズを分け,フローチャート化 ● 導入前の課題 ○ ビジネスリスクを考慮しすぎて,低い適用比率でのテストをダラダラ続けてしまう ○ 適用比率を上げる場合にその比率ごとに似たような分析がされるので,分析コストが高い ● 導入後 ○ 各フェーズでの実験目的が明確になることで,実験が早く完了するようになった ○ 特にPre-MPRフェーズでは,見る指標をあらかじめ洗い出してモニタリングすることで,ア ドホックな分析のコストが減った 27

Slide 28

Slide 28 text

RCTで組織をグロースさせるために導入したもの 1. SQR Ramping Framework 2. Overlapping Method 3. RCTの評価の自動化 / 民主化 28

Slide 29

Slide 29 text

複数の実験を同時並行で実行で行いたい ● 実験のコストが低いと大量のRCTが実施される ○ 組織内の多くのメンバーが自由にRCTを行うようになるため ● 一度に一つの実験しかできない場合,実験の待ちが発生 => 複数の実験を同時並行で実行できる必要がある 29

Slide 30

Slide 30 text

Single-Layer Method ● 複数実験の同時並行を実現できるシンプルな割当手法 ● ユーザIDのハッシュ値を用いてユーザを各バケットに割り当てて実験を行う ● 問題点: 同時に実施できる実験数に限りがある ○ 例) ユーザ全体の60%をある実験に使うと,他の実験で使えるのは40%になってしまう ○ 同時並行で行う実験の数が増えるほど各実験に割けるユーザ数が少なくなり検出力が下がる というトレードオフが存在 30

Slide 31

Slide 31 text

Overlapping Method ● Single-Layer Methodをそれぞれの実験レイヤーで行う手法 ○ 同じユーザを複数の実験に割り当てることが可能 ○ Single-Layer Methodで発生するトレードオフを解消できる ○ 実験レイヤー間の独立性を担保するために,ユーザIDとレイヤーIDを組み合わせたもの のハッシュ値を用いる 31

Slide 32

Slide 32 text

DynalystでのOverlapping Methodの導入例: 入札額決定 ● オークションでの入札額はさまざまな予測値から決まる ○ 入札額 = f(クリック率,購入率,XX率,YY率, ....) ● 以前の予測モデルのRCTはSingle-Layer Methodで行われていた ● チームのデータサイエンティストが増えるに連れ,実験の待ちが発生 購入率予測の実験をしたいの にあと20%しか使えない... 他の実験が終わるのを待とう 32

Slide 33

Slide 33 text

DynalystでのOverlapping Methodの導入例: 入札額決定 ● Overlapping Methodの導入により,各予測モデルの実験を並行して 実施可能に ● 実験待ちが減り,データサイエンティストの開発スピードが上がった 他の実験を待たなくても, 購入率予測の実験に沢山の ユーザを使える! 33

Slide 34

Slide 34 text

RCTで組織をグロースさせるために導入したもの 1. SQR Ramping Framework 2. Overlapping Method 3. RCTの評価の自動化 / 民主化 34

Slide 35

Slide 35 text

様々な人がRCTを活用できる状態にしたい ● トリートメントを作成した本人がデータに基づくフィードバック を適正に受けることができるのは重要 ○ 例: クリエイターが自身の作った広告画像のRCTの評価を行う ● しかし,データ分析人材以外が自身でデータを抽出して統計的な 処理を行うのは失敗がおきやすい ○ RCTの統計的な分析に関する学習コストの高さ ○ RCTの結果を適切に解釈して意思決定する難しさ => 自動でRCTの結果を解釈できる状態にするのが望ましい 35

Slide 36

Slide 36 text

Dynalystの広告画像自動評価システム ● 広告画像の実験の評価が自動で行われるシステムを実装 ● システムの機能 ○ クリエイターが評価したい広告画像のIDと期間を指定すると,データ分析者 が行うような統計的な実験の評価が自動で行われる ○ ビジネス観点から決まった検出したい差から,そのために必要なサンプルサ イズを計算して実験期間もサジェストできる 36

Slide 37

Slide 37 text

広告画像自動評価システム導入のbefore/after 37 A B 自分でデータを抽出して加工する 抽出したデータは正しいの だろうか...? データが少ない気がするけ どなんとなくAが良さそうか な...? 広告IDと期間を指定 自動評価システム A B システムが 自動で評価 クリエイター クリエイター 簡単に正しいデータを抽出 できた.いまのところAが良 いけど,まだサンプルサイ ズが少ないから実験を続け るぞ! あとn日実験を続 けてください

Slide 38

Slide 38 text

3. 機械学習モデルのRCTを正確に行うために 38

Slide 39

Slide 39 text

機械学習を用いた意思決定とデータの分布 ● 意思決定に機械学習を用いる場合,異なるモデルは異なる分布のデータを生む ○ 例) レコメンド: アルゴリズムがどのアイテムを選ぶかによって,得られるデータの分布が変わる ○ 例: Real Time Biddingにおける入札額決定のための予測モデル(後で説明) ● このRCTでは,各モデル間の比較が難しい ○ 学習データと予測するデータの分布が異なってしまうケースがある ○ 一般的な教師付き機械学習は学習と予測のデータの分布が同じことを仮定しているので,モデルの精 度が下がる ○ => 正確なモデルのパフォーマンスが測れない ● ベストな対処法はまだなく,マシなやり方を試行錯誤している状態 39

Slide 40

Slide 40 text

Real Time Biddingにおける入札額決定のための予測モデルのRCT ● 入札額をより良く決めたいケースを考える ○ 入札額を決める要素の一つにクリック率があり,この精度を上げたい ■ 精度が上がることで最適な入札額に近づくため,ビジネス指標が改善しうる ○ 既存クリック率予測モデル(Old)と新クリック率予測モデル(New)をRCTしたい ● このRCTの問題点: モデル間で落札(予測)データの分布が異なる ○ モデルOldとNewは,同じ特徴量xに対しての予測値が異なる ○ 予測値が異なると入札額も異なる ○ 入札額が異なると落札できるリクエストも異なる => 落札データの分布が変わる 40 T 全リクエスト モデルOldが落札したデータ モデルNewが落札したデータ

Slide 41

Slide 41 text

Real Time Biddingにおける入札額決定のための予測モデルのRCT ● Ramping Frameworkに従い,まずNewを1%で適用する ● 学習データをモデル間で共有する場合,Newの学習データのほとんどがOld ● しかし,前述の通りOldとNewの落札データの分布は異なる ● 学習データと落札データの分布が異なることで,モデルNewの精度が下がる ● このときのOldとNewの精度の差は本当に知りたい差ではない ○ 本来知りたいのは100%自分の落札データで学習できたときのモデルの精度の差 41 Oldが落札したデータ(99%) Newが落札したデータ(1%) 
 Newの学習データ


Slide 42

Slide 42 text

マシな比較をするためのいくつかの方法 ● 最もシンプルな方法: 学習データをモデル間で分ける ○ だが,学習データのサイズとモデルの精度が独立でないケースでは,正確な比較にならない ○ 例) Old:New = 99%:1% => Newモデルの学習データが少ないので不利 ○ 例) Old:New = 1%:1% => おそらく1%適用時のパフォーマンス差 ≠ 100%適用時のパフォーマンスの差 ○ また,導入開始時点でNewモデルの落札データは存在しないという問題もある ● 比較的良い方法 ○ 1%:1%のPre-MPRフェーズではリスクサイドのみに注目する ○ 50%:50%のMPRフェーズでNewモデルの評価を行う ● 落札バイアス自体を補正する方法 ○ 傾向スコアやDomain Adaptationを用いる(Zhang 2016),(谷口 2019). 42

Slide 43

Slide 43 text

4. DXによって行政のRCT利用がどう変わるか? 43

Slide 44

Slide 44 text

DXによって行政のRCT利用がどう変わるか? ● DXによってRCTを実施できる機会が増える ○ 重要になるのは,「RCTによって何が改善されたか」 ■ RCTそのものやその分析が最上位の優先順位ではない ○ RCTをうまく活用して,行政の現状を大きく改善できる専門家が求められる ○ 2章で紹介した技術を使う必要性も出てくる ● DXによって機械学習の導入やそのRCTを実施する機会が増える ○ DXによって大量のデータが貯まる仕組みができることやAI技術への注目が背景に ○ 3章で紹介したような機械学習のRCT特有の問題に直面する 44

Slide 45

Slide 45 text

DXによって行政が直面するRCTの課題にどう対処するか? ● IT企業には既に類似する課題に直面し何かしらの知見を 得ている人材がいる ● 行政のDXに関わる人とIT業界でRCTに関わるデータ分析 人材との間でディスカッションができる場を持つのはど うだろうか? 45

Slide 46

Slide 46 text

参考文献 ● [Kohavi et al. 2020] Kohavi, R., Tang, D., & Xu, Y. (2020). Trustworthy Online Controlled Experiments: A Practical Guide to A/B Testing. Cambridge University Press. ● [Xu et al. 2018] Xu, Y., Duan, W., & Huang, S. (2018). SQR: balancing speed, quality and risk in online experiments. In Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (pp. 895-904). ● [Xu et al. 2015] Xu, Y., Chen, N., Fernandez, A., Sinno, O., & Bhasin, A. (2015). From infrastructure to culture: A/B testing challenges in large scale social networks. In Proceedings of the 21th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (pp. 2227-2236). ● [Zhang et al. 2016] Zhang, W., Zhou, T., Wang, J., & Xu, J. (2016). Bid-aware gradient descent for unbiased learning with censored data in display advertising. In Proceedings of the 22nd ACM SIGKDD international conference on Knowledge discovery and data mining (pp. 665-674). ● [谷口 et al. 2019] 谷口和輝・安井翔太(2019)『Domain Adaptation Neural Networkを用いた広告クリック予 測』,人工知能学会全国大会論文集 (pp. 4O2J202-4O2J202). 46