Upgrade to Pro — share decks privately, control downloads, hide ads and more …

因果推論の知見がテック企業の課題をどう解決するか / How causal inference...

因果推論の知見がテック企業の課題をどう解決するか / How causal inference findings solve tech companies' challenges at UT

東京大学の学部生向け講義「産業組織Ⅱ」で話した内容です。
https://speakerdeck.com/ko_fujita1/how-causal-inference-findings-solve-tech-companies-challenges をベースにアップデートしました。

Komei Fujita

July 13, 2020
Tweet

More Decks by Komei Fujita

Other Decks in Technology

Transcript

  1. 自己紹介 藤田 光明 Data Scientist • 経歴 ◦ 2012 -

    2016 ▪ 上智大学経済学部 ◦ 2016 - 2018 ▪ 東京大学経済学研究科 ▪ 実証産業組織論,指導教官: 若森先生 ◦ 2018 - ▪ サイバーエージェント AI事業本部 Dynalyst ▪ 広告配信アルゴリズムの開発 / 実装 ▪ A/Bテスト(RCT, ランダム化比較試験)システム基盤の改善 • 興味 ◦ A/Bテストを通したプロダクトグロース ◦ ビジネス x 経済学 / 機械学習 2
  2. 大学院時代にやっていた研究 • 修論タイトル ◦ “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に入る確 率を上げる • 日本の自動車マーケットのデータを使用 ◦ 年 x 車種レベルの販売量,テレビCM量,カタログ情報を頑張って集めた 3
  3. 1. アドテクノロジーと機械学習 / 経済学 2. コンバージョン予測と遅れコンバージョン問題 3. 広告画像選択におけるバンディットとオフライン評価 4. おまけ:

    実証産業組織論と機械学習の研究紹介 5. テック企業で経済学出身データサイエンティストとして働く 目次 6
  4. RTB: 数10ms内の広告オークション 11 ネットに広告を 出したい会社 DSP SSP User / Site

    a b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 サイト収益を最大 化するためにオー クションを開催
  5. 入札戦略,クリック率,購入率の予測 12 ネットに広告を 出したい会社 DSP SSP User / Site a

    b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 入札額の決定... 入札戦略, クリック率, 購入率の予測
  6. 広告予算のペーシング 13 ネットに広告を 出したい会社 DSP SSP User / Site a

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

    b c B C 広告リクエスト 入札リクエスト 広告画像 入札額,広告画像 予算,広告素材 100円 80円 50円 より効果の高い広告画像を選ぶ... 広告画像選択ロジック
  8. 機械学習 / 経済学が使われている例 • 入札 ◦ 入札戦略, 1st price auction,

    2nd price auction (オークション理論) ◦ クリック予測, 購入予測 (教師あり学習, 計量経済学) • 予算ペーシング ◦ PID制御 • 広告画像選択 ◦ バンディットアルゴリズム (強化学習) ◦ オフライン評価 (計量経済学) • RCTの設計 / 評価 ◦ 統計的検定(統計学・計量経済学) 15
  9. RTBにおけるクリック率予測の目的 • 広告表示の真の価値をしりたい ◦ 真の価値 = クリック確率 (CTR) x クリックあたりの価値

    (CPC) • 予測CTR > 真のCTR => 広告表示の価値を過大評価 ◦ 価値に見合わない広告枠の落札で利益が失われる • 予測CTR < 真のCTR => 広告表示の価値を過小評価 ◦ 落札機会の損失につながる 真のCTRを知りたい => 予測する 17
  10. 重要なポイント: 解くべき問題を意識する • 予測精度が高いモデル ≠ パラメータの推定がうまくいくモデル ◦ 予測精度が高いモデルのパラメータの推定値がバイアスがないとは限らない ◦ あるパラメータをバイアスなく推定できるモデルの予測精度が高いとは限らない

    • yの予測精度が重要なケース ◦ 予測精度が高いモデルを作る ◦ そのモデルの推定値を解釈して何かを言うことは難しい • パラメータβの推定値が重要なケース ◦ 例: クリック率を上昇させる広告画像の要素は何? ◦ 興味があるパラメータの推定量のバイアスがない & 分散が小さいようなモデルを作る ◦ 予測精度は関係ない 19
  11. 再掲: 機械学習 / 経済学が使われている例 • 入札 ◦ 入札戦略, 1st price

    auction, 2nd price auction (オークション理論) ◦ クリック予測, 購入予測 (教師あり学習, 計量経済学) • 予算ペーシング ◦ PID制御 • 広告画像選択 ◦ バンディットアルゴリズム (強化学習) ◦ オフライン評価 (計量経済学) • RCTの設計 / 評価 ◦ 統計的検定(統計学・計量経済学) 20 以降では,計量経済学をやってきたからこその事例について紹介する

  12. コンバージョン予測とは • コンバージョン(Conversion, CV)とは... ◦ 最終的な成果のこと ◦ アプリ起動 / インストール,購入,資料請求などを指すことが多い

    ◦ ネット広告では,広告クリック経由での購入などをコンバージョンと呼ぶ • コンバージョン予測とは? ◦ クリックしたユーザがその後コンバージョンする確率を予測すること ◦ CVR: Conversion Rate 24
  13. CVR予測をシステムで使うためのフロー 25 配信ログ 学習 データ 計測 データ抽出 予測モデル デプロイ 学習

    広告システム モデルは一度作れば終わりではない 予測モデルが新しいもの へと次々入れ替わる
  14. 同じ学習データを使うケース 26 学習 予測 予測 予測  time  5/1  5/8  5/11

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

    5/10 5/9 予測 5/14 performance 学習 学習 学習 できるだけ新しいデータを使って学習するのが基本 • 配信ログがたまるたびに前述のシステムフローを通してモデルを更新する • 本番データと分布が近いデータで学習できるため,モデルの精度が高い
  16. 問題点の例 CV = 100 nonCV = 400 ある特徴X’を持つデータ CV =

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

    50 -> 112 nonCV = 400 nonCV = 50 CVR = 20% CVR = 20% CV = 100 nonCV = 400 予測したいデータ CVR = 20% 出力した予測値と正解のCVRの 乖離が小さくなる →精度が改善する 観測されたCVを 水増しする 32
  18. IPWを用いたバイアスの補正 • IPW: Inverse Probability Weighting, 逆確率重み付き推定 ◦ 傾向スコア(Propensity Score,

    PS)をサンプルの重みとして用いる ◦ 期待値の不偏一致推定を行う手法 • 因果推論では介入効果(E[Y_1] - E[Y_0])の推定に使われる • 機械学習では最小化したい誤差の推定に使われる 33
  19. どう傾向スコアを推定するか? • 定義 ◦ Y: 学習データ期間内にコンバージョンが観測されるか ◦ C: コンバージョンが起きるか(本当に興味があるもの) ◦

    S: コンバージョンが学習期間内に正しく観測されるか,Propensity Score ◦ X: 特徴量 学習データ内でラベルが1になる確率 = 真のラベルが1である確率 x 学習データ内でラベルが正しく観測される確率 そもそも予測したい ものが必要 ラベルが正しく観測される確率Sを推定する 35
  20. ラベルが正しく観測される確率Sをどう推定するか? • Sも遅れCVにより観測不可能 • そこで過去のデータを使ってSを推定し,傾向スコアを得る ◦ 遅れの分布が変わらないことを仮定 CVR予測 Sの推定 CV確定

    CV未確定 CVが確定したデータでSを学習 Sを予測する -> 傾向スコアを得る 6/4 6/9(現在) 6/6 設定 • CV確定期間: 3day ◦ clickから3日までのCVを 有効なCVとする • CVR予測の学習期間: 5day 学習データ 36
  21. • 広告画像の候補からもっとも効果が高いものを選びたい • しかし,事前にどの広告画像が良いかは不明 • RCTをする? ◦ 各広告画像の効果を判断できるまでに同数の配信をする必要がある ◦ 自動化(勝手にRCTして,勝手に良い画像を選ぶ)が難しい

    ◦ 広告配信の目的は効果の高い広告画像を見つけることではなく配信全体で効果を上げること               バンディットを使う • バンディットは配信全体の報酬(クリック数,購買数)を最大化する ◦ バンディットが最適化するものと広告配信の目的がマッチ なぜ広告画像選択でバンディットを使うのか? 49
  22. ベータ分布を用いたThompson Sampling • CTR ~ Beta(α, β)とする ◦ α: #click,

    β: #not click • アーム(広告画像)が選ばれるたびに事後分布を更新 ◦ クリックされたら, α = α + 1 ◦ クリックされなかったら,β = β + 1 Beta(3, 7) Beta(30, 70) Beta(300, 700) 広告表示回数が増えるごとに分布の形が変わっていく 53
  23. Thompson Samplingにおける探索と活用 Beta(3, 7) Beta(30, 70) Beta(300, 700) 分布の裾野が広い. 小さな値も大きな値もサ

    ンプリングされる. (探索 > 活用) 正確なCTRがわかり,そ の付近の値がサンプリン グされる. (活用 > 探索) 54 各アームの事後分布からサンプリングされた値が最も高いアームを選択する
  24. Thompson Samplingの具体例 55 1. click, not clickの数を集計 2. アームごとの集計結果から, Beta(1

    + click, 1 + not click)というクリック率の事後分布を得る 3. 事後分布からサンプリングされた値が一番大きいアームを選択する a. アーム3が選ばれる確率は,「(この時点で)アーム3のクリック率の期待値が最も高い確率」に一致
  25. バンディットの拡張 • 今まで紹介した例は多腕バンディットと呼ばれるもの ◦ Multi Armed Bandit; MAB ◦ 各リクエスト(試行)ごとの報酬がi.i.dであることを仮定

    • その拡張版であるコンテキスト付きバンディットを考える ◦ Contextual Bandit; CB 57 …... candidate bandit selected
  26. Contextual Banditにおける良いモデルとは? • 予測精度が高いモデル ≠ 良いモデル • 報酬が多くなるモデル = 良いモデル

    予測モデルの精度ならログデータを用いて簡単に測ることが できる(logloss, AUROC等) 報酬は...? 61
  27. RCTのコスト: システム実装 64 手元で機械学習モデルを検証することは そこまで難しくない 例 • 機械学習モデルを更新するためのバッチ実装 • 推論サーバ側の実装

    • 何か異常が起きてないかのテスト / モニタリング 機械学習モデルをシステム上で動かすため のコストは大きい
  28. オフライン評価の難しさ: セレクションバイアス 67 feature candidate X1 a,b,c,d,e a d X2

    a,b,c,d,e c c eval NA 1 click 0 1 old logic new logic 既存ロジックと新ロジックの選択が異なる 場合,クリック有無は観測不可能 一致した場合,クリック有無を観測可能 Biased!!! 選択が一致したものだけで評価を行う ...? 配信データ シミュレーション 既存ロジックのログのデータの分布 ≠ 実際のデータの分布
  29. Replay Method [Li 2012]とは • ランダム選択から生まれるログを用いる ◦ Dynalystでは一定割合でランダムに広告画像を選択している • ランダムの選択と新ロジックの選択が一致すれば報酬の評価に使う

    ◦ 一致しなければ使わない • そこでは,評価に使えるか使えないかがランダムに決まる 69 評価に使えるデータ = 全体からランダムにサンプリングして得られたデータ と考えることができるため,unbiasedな評価が可能になる
  30. Replay Methodの例 70 feature candidate X1 a,b,c,d,e a d X2

    a,b,c,d,e c c X3 a,b,c,d,e d d X4 f,g,h f f X5 f,g,h g f eval NA 1 0 1 NA click 0 1 0 1 1 評価に使う 新ロジックをオフラインで評価した際の クリック率は2/3 評価に使わない 評価に使わない 配信データ シミュレーション
  31. DynalystでのReplay Methodを使ったオフライン評価 オフライン評価の流れ 1. Replay MethodでCBのクリック率(CTR)をシミュレーション 2. 学習モデル / 特徴量

    / ハイパーパラメータを変えて,よりCTRが高くなる設定を探す 最もCTRが高かった設定での結果↓ 71 青: CBのCTR(オフライン) 赤: MABのCTR(オンライン) オンラインでRCTして みよう! CTR Day
  32. Replay Methodの欠点 • 評価の分散を下げるためにはより多くのランダム配信ログが必要 ◦ 一方で,ランダム配信を増やすほど全体の効果は下がってしまう • バンディットの配信ログを使って新ロジックを評価できないか? 74 IPW(Inverse

    Probability Weighting)を使って オフライン評価ができる イェール大 x サイバーエージェントの共同研究を紹介する “Efficient Counterfactual Learning from Bandit Feedback” Narita, Yasui, Yata (AAAI 2019)
  33. IPWを使ったオフライン評価 75 75 feature click 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が選ばれる条件付き確率, モデルから計算可能 True Propensity Score selected arm selected arm
  34. IPW (Estimated) 76 Estimated Propensity Score by Logistic Regression, GBDT,

    Random Forest 真のPSを用いるより推定されたPSを用いることで,オフライン評価の分散が小さくなる 詳しくは https://www.slideshare.net/shotayasui/l-05-bandit-with-causality
 feature click 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
  35. 商品カテゴリ横断での離散選択モデル • “Counterfactual Inference for Consumer Choice Across Many Product

    Categories” ◦ Rob Donnelly, Francisco R. Ruiz, David Blei, and Susan Athey • スーパーで同時に複数カテゴリの商品を買うようなケースの分析 ◦ 例: バナナと洗剤とヨーグルトと肉のそれぞれから1 or 0 個買う • 既存研究では1つのカテゴリ内での購買行動に注目していた • カテゴリ横断したutility functionの推定に機械学習の手法が使わ れている 78
  36. 商品カテゴリを横断するメリット 79 • カテゴリ横断で消費者の選好についての情報が得られる ◦ price sensitivity ◦ 辛いのが好き,ヘルシーなのが好き ◦

    購入頻度が低い商品ほどこれらの情報が有用になる • ある商品カテゴリでなく店舗全体での需要を考えられる ◦ マーケティングの観点から有用
  37. 反実仮想における構造推定モデルの強み • 機械学習モデル ◦ 学習データと分布が変わらないデータについての予測が得意 ◦ 例: ホテルの価格と需要 ▪ 価格が高いときはホテルが満室で、価格が安いときは空室だらけ

    ▪ ユーザは高い価格を好むのではなく,需要にあわせて価格が決められているからそうなっている ◦ MLモデルは価格を上げる反実仮想について,需要が増えるような予測をしてしまう • 構造推定モデル ◦ この論文では火曜日と水曜日の間に価格が変わることに注目して価格の内生性を考慮 ◦ 価格を上げる反実仮想について,需要への影響を正しく予測することができる 80
  38. クーポンターゲティングへの応用 • 割引クーポンによって購入確率が上がるユーザにクーポンを配布したい ◦ つまり,価格を下げたときの購入確率の上昇幅を知りたい 81 クーポンなし クーポンあり このユーザに配布し たい

    • 構造推定モデルでは ◦ クーポン配布によって購入確率が上がるAさんにクーポンを 配布できる • 機械学習モデルでは ◦ 前ページのような予測: クーポン配布によって逆に購入確率 が下がるような予測をしてしまうので使い物にならない ◦ クーポンを使うユーザ予測: Aさん以外にBさんにも配布して しまう Aさん Bさん Cさん
  39. ほかの実証IO x MLの論文 • Double/Debiased Machine Learning for Treatment and

    Causal Parameters • Demand Analysis with Many Prices 82 Victor Chernozhukovが有名
  40. 自分の分析に対して即座にフィードバックが返ってくる • ユーザからのリアルなフィードバック ◦ 自分の施策によって,ユーザの行動がどう変わったかがすぐにわかる ◦ フィードバックを分析し,施策を修正できる(高速にPDCAを回せる) • それが売上 /

    利益などのビジネス指標にも直結する ◦ 「自分のおかげでXX円稼げた」といえる • そういった環境はテック企業を除くと稀 ◦ スピード感 vs 緻密な深堀り(研究など)のある種のトレードオフ 86
  41. 使いたいデータをデザインできる • 実験のデザイン ◦ データ生成過程を自分で設計できる ◦ 興味があるパラメータを識別するためにはどんなRCTの設計が良いか? ◦ 厳密なパラメータ推定にどこまで価値があるか?実験コストはどの程度か?を加味する ▪

    例: 実験コスト高 / パラメータのサインがわかればいいときは,RCT以外の識別戦略を考える • データログのデザイン ◦ どういうデータを貯めておきたいかを自分で設計できる ▪ 例: バンディットのオフライン評価にあたって,選ばれなかった選択肢のidとパラメータもロ グに残すようにした ◦ そのデータでできることは何か?データを貯めるコストはどの程度か?を加味する 87
  42. 経済学出身DSのつよみ • ビジネスマンやエンジニアより経済学がちょっとわかる ◦ バイアスに気づく能力 ▪ 正確な評価ができるRCTの設計 ▪ データ分析による正確な意思決定 ◦

    経済学の知見を用いた機械学習やビジネス上の課題の解決 • 経済学者よりビジネスやエンジニアリングがちょっとわかる ◦ ビジネスの現場の課題感の把握 ◦ システム的な実現可能性の考慮 90
  43. 経済学出身DSの価値とは • 経済学 x 機械学習の知見で解けるタスクを作ること ◦ プロダクトのビジネスモデルやシステムから課題を発見しどう解くべきか考える ◦ 研究レベルの課題であれば,リサーチャーを巻き込んで一緒に解く ▪

    遅れCVもそういう経緯でプロジェクトがスタート • (リサーチャーと協力して)解いた課題をビジネス / システム運用に落とし込む ◦ ここまでやって初めてプロダクトの価値となる ◦ 泥臭いが面白い • もっと広い目線で,マーケットが求める課題を経済学の知見で解けないか考える ◦ そのためにはプロダクトのビジネスモデルだけでなく業界全体を知る必要がある 91
  44. ぼくの研究への関わり方 • プロダクトで経済学 x 機械学習で解けそうな課題を見つける • それを解くとプロダクトにとってどれくらい嬉しいのか考える ◦ どれくらいのインパクトがあるか? •

    リサーチャーと相談する ◦ 解ける問題なのか?どう解くのか? • プロダクトでシステム実装をする ◦ それはプロダクトで実装可能か? • プロダクトでRCTを行い,導入の意思決定をする ◦ どうRCTを行うか?どう評価するか?全面導入する場合運用フェーズで問題はおきないか? 93 プロダクトへのインパクトを評価するためにはRCTが最も重要

  45. RCTしないと機械学習モデルのビジネスインパクトは不明瞭 • 横軸: ◦ 既存モデルと新モデルのオフラインで の予測精度比(auroc, loglossなど) • 縦軸: ◦

    既存モデルと新モデルのRCTでの ビジネスKPIの比 (CVRなど) 150 successful Machine Learning models: 6 lessons learned at Booking.com, KDD2019 “OFFLINE MODEL PERFORMANCE IS JUST A HEALTH CHECK”
  46. 学術研究でもRCTは評価される “... This paper strikes a good balance between analytic

    and empirical results. The problem itself is grounded in a real-world issue without being overly specific to a single narrow area, and is beneficial in practice.” 遅れCV論文のレビュワーコメントより抜粋
  47. 実際RCTまでやっている論文ってどれくらい? • WWW2020で調査 • タイトル or 本文にadvertisingを含むもの: 100 • うち,オンラインでRCTを行なったもの:

    6 • 内訳 ◦ アメリカ: 3 (Etsy.com, Microsoft, Pinterest) ◦ スウェーデン: 1 (Spotify) ◦ 中国: 1 (Huawei) ◦ 日本: 1 (CyberAgent) 注: https://dl.acm.org/ を使って自分で調査.数え間違いがあるかも 参考: KDD2019ではadvertising 57のうち14がRCTをしている advertisingではないが,NTT Docomoさんの論文がRCTまで行なって採択されている! もっと増やしていきたい! 欧米 or 中国発のグローバル テック企業がほとんど
  48. RCTまで行けた遅れCVプロジェクト体制 • メンバーはすべてCA社員 ◦ Econ系は3 / 4 • メンバーとその役割 ◦

    安井: PM, アイディアの考案,手法の開発,オフライン検証 ◦ 森下: 手法の開発,オフライン検証 ◦ 藤田: プロダクトでのシステム実装,RCTの設計(DS) ◦ 芝田: ライブラリlibffmへの機能追加 (リサーチエンジニア) • リサーチャーとリサーチエンジニア,プロダクトのDSがうまく 協業できた
  49. • 適切なRCTの設計の重要性 ◦ バイアスのない評価をするための設計は当然必須 ◦ 研究側とプロダクト側で実験したいものは必ずしも一致しない ▪ 研究側: できるだけ論文になりやすいもの ▪

    プロダクト側: 売上や利益に直結 /既存システムの資産が流用 / 実験後もメンテしやすいもの ◦ すり合わせないと,論文は書けるがプロダクトでは使えないものが出来上がる • DSがプロダクトとしてのインセンティブマッチを担保すべき ◦ ビジネスモデルやシステム構造の理解,最新の研究内容のキャッチアップが重要 • プロダクトの真の価値を上げるような研究をする 経済学DSとして研究に関わる
  50. 参考リンク • 企業の中の経済学 by Yusuke Kaneko • Why Do Competitive

    Markets Converge to First-Price Auctions? • A Feedback Shift Correction in Predicting Conversion Rates under Delayed Feedback • 効果検証入門 • 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 • Counterfactual Inference for Consumer Choice Across Many Product Categories • 150 successful Machine Learning models: 6 lessons learned at Booking.com 102