Slide 1

Slide 1 text

因果推論の知見がテック企業の 課題をどう解決するか? 日経学会 2020年度春季大会 藤田 光明 1

Slide 2

Slide 2 text

自己紹介 藤田 光明 Data Scientist ● 経歴 ○ 2012 - 2016 ■ 上智大学経済学部 ○ 2016 - 2018 ■ 東京大学経済学研究科 ■ 実証産業組織論,離散選択 ○ 2018.4 - ■ サイバーエージェント AI事業本部 Dynalyst ■ 広告配信アルゴリズムの開発 / 実装 ■ A/Bテスト(RCT)システムの改善 ● 興味 ○ A/Bテストを通したプロダクトグロース ○ ビジネス x 経済学 / 機械学習 2

Slide 3

Slide 3 text

自己紹介: 大学院時代にやっていたこと ● 修論 ○ “A Comparison of the Effectiveness of Advertisement in Discrete Choice Models with Random and Non-Random Choice Sets” ○ 広告が消費者の需要に与える影響の分析において2つの離散選択モデルを比較 ■ BLP(1995)タイプ: full informationのもとで広告がutility functionの中に入る ■ Goeree(2008)タイプ: limited informationのもとで広告がchoice setに入る確率を上げる ○ 日本の自動車マーケットのデータを使用 ○ 指導教官: 若森先生 ● リサーチアシスタント ○ 一橋ICSの宮川先生のもとで1年くらいRAをしていた 3

Slide 4

Slide 4 text

今日話すこと ● ビジネスのどういうシーンで機械学習/因果推論が使われているか ● 因果推論の活用事例紹介 ○ バンディットのオフライン評価 ○ コンバージョン(購入)予測における遅れコンバージョン問題 ● 詳しい理論の話は省略(あとの発表で) 4

Slide 5

Slide 5 text

目次 1. アドテクと機械学習 / 経済学 2. 広告画像選択におけるバンディットとオフライン評価 3. コンバージョン予測と遅れコンバージョン問題 4. テック企業で経済学出身データサイエンティストとして働く 5

Slide 6

Slide 6 text

1. アドテクと機械学習/経済学 6

Slide 7

Slide 7 text

アドテクとは? ● インターネット広告(Ad)に関わる技術(Tech)のこと ● ネット広告の要件 ○ 即座に広告を出す ○ ユーザの興味を惹きやすい ● 要件を満たすための技術: アドテク ● Real Time Bidding (RTB)がその代表 7

Slide 8

Slide 8 text

例: ウェブページ内の広告 これらの一部は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

広告予算のペーシング 11 ネットに広告を 出したい会社 DSP SSP User / Site a b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 100円 80円 50円 予算,広告素材 広告主の予算を効率的に配分する... 予算ペーシング

Slide 12

Slide 12 text

広告画像選択 12 ネットに広告を 出したい会社 DSP SSP User / Site a b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 より効果の高い広告画像を選ぶ... 広告画像選択ロジック

Slide 13

Slide 13 text

機械学習 / 経済学が使われている例 ● 入札 ○ 入札戦略, 1st price auction, 2nd price auction (オークション理論) ○ クリック予測, 購入予測 (教師あり学習, 因果推論) ● 予算ペーシング ○ PID制御 ● 広告画像選択 ○ バンディットアルゴリズム (強化学習) ○ オフライン評価 (因果推論) 13 以降では,機械学習 x 因果推論の事例に絞って紹介する


Slide 14

Slide 14 text

2. 広告画像選択における バンディットとオフライン評価 14

Slide 15

Slide 15 text

2.1. バンディットとは 15

Slide 16

Slide 16 text

ビジネス要件: どの広告画像を配信すればいい? 16 広告のイメージ たとえばAbemaTVだと..

Slide 17

Slide 17 text

とりあえずRCT? 17

Slide 18

Slide 18 text

テック企業でRCTってやりやすい? ● 確かにテック企業ではRCTはやりやすい ● ビジネス上の意思決定において重要な役割を担っているが... 18 over 20000 test / year over 500 test / year 参考: Trustworthy Online Controlled Experiments: A Practical Guide to A/B Testing

Slide 19

Slide 19 text

● 広告画像の候補からもっとも効果が高いものを選びたい ● しかし,事前にどの広告画像が良いかは不明 ● RCTをする? ○ 各広告画像の効果を判断できるまでに同数の配信をする必要がある ○ 自動化(勝手にRCTして,勝手に良い画像を選ぶ)が難しい ○ 広告配信の目的は効果の高い広告画像を見つけることではなく配信全体で効果を上げること               バンディットを使う ● バンディットは配信全体の報酬(クリック数,購買数)を最大化する ○ バンディットが最適化するものと広告配信の目的がマッチ なぜ広告画像選択でバンディットを使うのか? 19

Slide 20

Slide 20 text

バンディットアルゴリズムとは 「複数のアームと呼ばれる候補から最も良いものを 逐次的に探すアルゴリズムのこと」 ● アームとは ○ RCTにおけるtreatment/control,以後の例では広告画像を指す ● 探索と活用をバランス良く行う ○ 「RCTをする」と「RCTの結果を使う」を同時に ● 累積期待報酬(累積因果効果)の最大化が目的 ● Susan Atheyも研究している 20

Slide 21

Slide 21 text

バンディット問題を解くための手法 ● Epsilon-Greedy ● Upper Confidence Bound (UCB) ● Thompson Sampling 21 Dynalystではこれを採用

Slide 22

Slide 22 text

Thompson Samplingとは ● それぞれのアームを「そのアームの報酬の期待値がすべての アームのうちで最大になる確率」で選択するロジック ● 言い換えると, 「良さそうなアームをそれが良さそうである確率で引く」 ● 実際にこの確率を計算することは困難だが,事後分布からサン プリングされた値を使うことで計算コストの問題を回避 22

Slide 23

Slide 23 text

Thompson Samplingで実際にやっていること 23 1. click, not clickの数を集計 2. アームごとの集計結果から, Beta(1 + click, 1 + not click)というクリック率の事後分布を得る 3. 事後分布から発生させた乱数が一番大きいアームを選択する a. アーム3が選ばれる確率は,「(この時点で)アーム3のクリック率の期待値が最も高い確率」に一致

Slide 24

Slide 24 text

参考: ベータ分布の例 24

Slide 25

Slide 25 text

Dynalystでのバンディット導入事例 ● 広告画像選択におけるバンディットの導入結果 ○ 青がバンディット,オレンジがランダム ○ 獲得購買数を比較 ● ランダムに選択する場合と比べて購買増 25

Slide 26

Slide 26 text

バンディットの拡張 ● 今まで紹介した例は多腕バンディットと呼ばれるもの ○ Multi Armed Bandit; MAB ○ 各リクエストごとの報酬がi.i.dであることを仮定 ● その拡張版であるコンテキスト付きバンディットを考える ○ Contextual Bandit; CB 26 …... candidate bandit selected

Slide 27

Slide 27 text

コンテキスト付きバンディット(CB)とは ● 報酬の期待値と分散がコンテキストごとに変わることを許す ○ 日付,時間,メディア情報,広告サイズ ○ コンテキストを考慮した広告画像選択が可能になる ● ある選択肢から別の選択肢の報酬の性質が推定できる ○ 広告画像の類似度などの考慮 27 …... candidate bandit context selected

Slide 28

Slide 28 text

2.2. バンディットのオフライン評価 28

Slide 29

Slide 29 text

ビジネス要件: 広告画像選択ロジックの改善 ● プロダクトの要望: ロジック改善によるクリック,購買数のさらなる増加 ● DynalystではMABを用いて広告画像の選択を行っていた ● この選択ロジックの改善のため,CBを導入したい 29

Slide 30

Slide 30 text

今度こそRCT!? 30

Slide 31

Slide 31 text

RCTのコスト ● プロダクト実装のコストがある ○ モデルを作ったあと,実際にそのモデルをプロダクトで動かすコストはかなり大きい ● 新ロジックが良くない場合,売上/利益を下げてしまう ● 事前に特徴量やハイパーパラメータのチューニングができない ○ これらをRCTでするにしても,パターンの数に限界 ● 結果がわかるまで時間がかかる可能性がある 31 反実仮想を考えたい!

Slide 32

Slide 32 text

● 過去のログデータを用いて,仮に新ロジックが導入されていた場合, どのような報酬を得ていたかを推計する ○ RCTをする前にロジックの評価ができる ○ モデルのパフォーマンス(AUC等)でなく,報酬(興味のあるビジネス指標に近いもの)で評価 ● しかし,ログデータは既存ロジックが生み出したもの ○ セレクションバイアスが存在(既存ロジックが選んだものにしか結果が観測できない) 反実仮想を考える

Slide 33

Slide 33 text

報酬のオフライン評価の難しさ 33 context candidate X1 a,b,c,d,e a d X2 a,b,c c c eval NA 1 click 0 1 old logic new logic 旧ロジックと新ロジックの選択が異なる 場合,クリック有無は観測不可能 一致した場合,クリック有無を観測可能 Biased!!! たとえば,選択が一致したものだけで評価を行う ...? 配信データ シミュレーション

Slide 34

Slide 34 text

バンディットをどうオフライン評価するか ● 新旧ロジックの選択が一致したもののみで評価を行う → バイアス ○ 旧ロジックのログのデータの分布 ≠ 実際のデータの分布 ○ 興味の対象は既存ロジックと新ロジックが異なる選択をしていたときどういう報酬を得てい たか 34 Replay Methodでオフライン評価ができる

Slide 35

Slide 35 text

Replay Method [Li 2012]とは ● ランダム選択から生まれるログを用いる ○ Dynalystでは一定割合をランダム選択によって配信している ● ランダムの選択と新ロジックの選択が一致すれば報酬の評価に使う ○ 一致しなければ使わない ● そこでは,評価に使えるか使えないかの選択がランダムに行われる 35 評価に使えるデータ = 全体からランダムにサンプリングして得られたデータ と考えることができるため,unbiasedな評価が可能になる

Slide 36

Slide 36 text

Replay Methodの例 36 context candidate X1 a,b,c,d,e a d X2 a,b,c c c X3 c,d d d X4 a,c,d a a X5 a,d,e,f,g e f eval NA 1 0 1 NA click 0 1 0 1 1 評価に使う 新ロジックをオフラインで評価した際の クリック率は2/3 評価に使わない 評価に使わない 配信データ シミュレーション

Slide 37

Slide 37 text

Replay Methodでのオフライン評価の流れ 1. Replay MethodでCBのクリック率(CTR)をシミュレーション 2. 学習モデル / 特徴量 / ハイパーパラメータを変えて,よりCTRが高くなる設定を探す 最も効果が高かった設定での結果↓ 37 青: CBのCTR(オフライン) 赤: MABのCTR(オンライン) オンラインでRCTして みよう! CTR Day

Slide 38

Slide 38 text

オンラインでRCT 38 ある広告主で CBが既存MABより 良くなった CTR Day

Slide 39

Slide 39 text

サイバーエージェントでの研究 “Efficient Counterfactual Learning from Bandit Feedback” Narita, Yasui, Yata (AAAI 2019) Replay Methodの欠点 ● 評価の分散を下げるためにはより多くのランダム配信ログが必要 ○ 一方で,ランダム配信を増やすほど全体の効果は下がってしまう バンディットの配信ログを使って新ロジックを評価できないか? 39 Propensity Scoreを使ってオフライン評価ができる

Slide 40

Slide 40 text

Inverse Propensity Weighting (IPW) 40 40 X Y_A X1 1 a b X2 1 c c X3 0 b b X4 1 a a X5 1 b c eval NA 1 0 1 NA Aが選ばれる条件付き確率 Propensity Score selected arm selected arm

Slide 41

Slide 41 text

IPW (Estimated) 41 X Y_A X1 1 a b X2 1 c c X3 0 b b X4 1 a a X5 1 b c eval NA 1 0 1 NA Estimated Propensity Score by Logistic Regression, GBDT, Random Forest 真のPSを用いるより推定されたPSを用いることで,オフライン評価の分散が小さくなる

Slide 42

Slide 42 text

3. コンバージョン予測と 遅れコンバージョン問題 42

Slide 43

Slide 43 text

コンバージョン予測とは ● コンバージョン(Conversion, CV)とは... ○ 最終的な成果のこと ○ 購入や資料請求などを指すことが多い ○ CVR: Conversion Rate ● 効果的な広告配信のためには,精度の高いCVR予測が必要 ○ ユーザ x 広告 x ...の組み合わせについてのCVRをRTBの入札額決定に用いる 43 30% 15% 5%

Slide 44

Slide 44 text

コンバージョン予測をシステムで使うためのフロー 44 配信ログ 学習 データ 計測 データ抽出 予測モデル デプロイ 学習 広告システム モデルは一度作れば終わりではない 広告システムで使われる 予測モデルが新しいもの へと入れ替わる

Slide 45

Slide 45 text

同じ学習データを使うケース 45 学習 予測 予測 予測  time  5/1  5/8  5/11  5/10  5/9 予測  5/14 ● 5/8に5/1-7のデータを使ってモデル作成,以後そのモデルを使い続ける ● 時間経過とともに学習データと本番データの分布の乖離が大きくなる ○ 新しいメディアの登場,トレンド / ユーザの興味の変遷,etc ● 教師あり学習では,学習データの分布にフィットするようにモデルを作るため, データの分布の乖離はモデルの精度を大きく下げる performance

Slide 46

Slide 46 text

モデルを定期的に更新するケース ● 配信ログがたまるたびに前述のシステムフローを通してモデルを更新する ● 本番データと分布が近いデータで学習できるため,モデルの精度が高い 46 学習 予測 予測 予測  time  5/1  5/8  5/11  5/10  5/9 予測  5/14 performance 学習 学習 学習 できるだけ新しいデータを使って学習するのが基本

Slide 47

Slide 47 text

遅れコンバージョン問題 新しいデータを使いたいが,一方でバイアスが発生してしまう 47

Slide 48

Slide 48 text

問題点の例 CV = 100 nonCV = 400 ある特徴X’を持つデータ CV = 50 nonCV = 400 nonCV = 50 正常に観測できる 遅れによってCV = 0に変換される CVR = 20% CVR = 10% モデルはこの事象を正と して学習してしまう CV = 100 nonCV = 400 予測したいデータ CVR = 20% 出力した予測値と正解のCVRで 解離が発生してしまう →精度が悪化する

Slide 49

Slide 49 text

解決のアイディア CV = 100 nonCV = 400 ある特徴X’を持つデータ CV = 50 -> 112 nonCV = 400 nonCV = 50 CVR = 20% CVR = 20% CV = 100 nonCV = 400 予測したいデータ CVR = 20% 出力した予測値と正解のCVRの 乖離が小さくなる →精度が改善する

Slide 50

Slide 50 text

Inversed Propensity Scoreを用いたバイアスの補正 ● ある特徴Xについて,CVされる場合にどれくらいの確率で現在までに CVが観測されるか(= PS)を推定する ○ クリックからの時間 / ユーザ属性 /クリックした広告情報などが特徴量 ● 推定したPSの逆数で重みづけたunbiasedな損失関数を定義する ● その最小化によって本当に予測したい分布に対しての予測が可能に 50

Slide 51

Slide 51 text

遅れCVを考慮したモデルのプロダクトへの導入 ● Dynalystへの導入 ● RCTによる効果の検証 ● 売上, CVが増加した一方で,購買獲得効率(CPA)はほぼ変化なし 51

Slide 52

Slide 52 text

● 経済学やってきたからこそできる人工知能分野への貢献 ○ MLにはデータのバイアスによる問題が多くあるが,MLコミュニティでは無視されがち ○ CAの経済学出身チームがそういった課題を改善する活動してきた結果 ● プロダクトでRCTしてビジネスKPIを上げた点も評価された ○ MLの応用系のトップ会議では実社会での実装が重要視される ○ 手法をプロダクト実装してビジネスKPIを上げ,その論文がトップ会議に採択されたのは国内 では珍しい ML系トップカンファレンスでの論文採択 52 “A Feedback Shift Correction in Predicting Conversion Rates under Delayed Feedback.” Yasui, Morishita, Fujita, and Shibata (WWW 2020)

Slide 53

Slide 53 text

4. テック企業で経済学出身 データサイエンティストとして働く 53

Slide 54

Slide 54 text

経済学出身データサイエンティストとして働く ● 自分は非リサーチャー ● プロダクトの売上 / 利益を上げることが目的 ● 自分ができることは … ? ○ ビジネスマンやエンジニアより経済学がちょっとわかる ○ 経済学者よりビジネスやエンジニアリングがちょっとわかる 54

Slide 55

Slide 55 text

経済学出身データサイエンティストの価値とは ● 経済学 / 因果推論の知見で解けるタスクを作ること ○ プロダクトのビジネスモデルやシステムから課題を発見しどう解くべきか考える ○ 何によってバイアスが生じるか,それを除くためにはどうすればよいかという大学院でのトレーニングが生きる ○ 研究レベルの課題であれば,リサーチャーを巻き込んで一緒に解く ■ 遅れCVもそういう経緯でプロジェクトがスタート ● (リサーチャーと協力して)解いた課題をビジネス / システム運用に落とし込む ○ ここまでやって初めてプロダクトの価値となる ○ 泥臭いが面白い ● もっと広い目線で,マーケットが求める課題を経済学の知見で解けないか考える ○ そのためにはプロダクトのビジネスモデルだけでなく業界全体を知る必要がある 55

Slide 56

Slide 56 text

5. まとめ 56

Slide 57

Slide 57 text

まとめ ● アドテクのさまざまなところで因果推論の知見が使われている ● 2つの事例を紹介した ○ バンディットとオフライン評価 ○ コンバージョン予測と遅れコンバージョン 57

Slide 58

Slide 58 text

参考リンク ● 企業の中の経済学 by Yusuke Kaneko ● Bandit Algorithm and Causal Inference by Yasui Shota ● Unbiased Offline Evaluation of Contextual-bandit-based News Article Recommendation Algorithms ● Efficient Counterfactual Learning from Bandit Feedback ● A Contextual Bandit Algorithm for Ad Creative under Ad Fatigue ● A Feedback Shift Correction in Predicting Conversion Rates under Delayed Feedback 58