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

効果検証入門から見直す 「データサイエンス」

Shota Yasui
August 28, 2020

効果検証入門から見直す 「データサイエンス」

Shota Yasui

August 28, 2020
Tweet

More Decks by Shota Yasui

Other Decks in Science

Transcript

  1. 2 自己紹介
 名前:安井翔太(32) 職業:Economic Research Scientist Data Science Center 副所長

    経歴: 2011年 立教大学 経済学部卒業 2013年 Norwegian School of Economics MSc in Economics 2013年 Cyberagent 入社(総合職, 微妙な分析の量産) 2015年 アドテク部門へ異動(専門職, MLの応用) 2017年 AILabへ異動(研究職, ML + CI回りの応用) @housecat442

  2. なぜ因果推論が大事なのか?
 4 • よく見るデータサイエンスの問題
 ◦ 効果の検証はかなりいい加減なことができる
 ◦ データのバイアスは無視されがち
 →この2つに対してリスクがよく理解されていない
 


    • 因果推論はリスクの理解と対応策を教えてくれる
 ◦ 「効果」について正面から取り組む唯一(?)の分野
 ◦ データのバイアスの対処方法がわかる

  3. 効果の定義
 何かしらの施策 
 世界線Aの鍋 
 世界線Bの鍋 
 9 鍋
 •

    鍋Aと鍋Bの味の差(効果)を知りたい
 塩を加えるか否か... 

  4. 統計学とは?
 手元にあるデータから、母集団のことを考えるための学問
 
 • 例: 味噌汁
 ◦ 味噌汁の味見をするとき、全部飲むのではなく小皿ですくって確認する
 
 •

    ざっくりした用語のまとめ
 ◦ パラメータ(期待値): 鍋全体の塩辛さ
 ◦ 推定量(平均): 小皿の塩辛さ
 ◦ 推定値: 推定量の実際の値のこと。(データで得られる値) 
 12
  5. クーポンの効果を考える
 クーポンを付与(介 入)
 世界線Aのユーザー i さん 
 ユーザー i さん


    15 世界線Bのユーザー i さん 
 購入:2000円
 購入:3000円
 ECサイトであるユーザーにクーポンを配布 

  6. 回帰分析とは・・・?
 38 回帰分析ってあれですよね・・・
 • 誤差を最小にするように線を学習するやつですよね 
 • データの分布に合わせてロジスティック回帰とか考えな いといけないですよね
 •

    VIFとかみて多重共線性も確認しないとですね 
 • 予測の性能を最適化するためにstep wise AICでモデル 選択したり
 • Cross-Validationで汎化誤差を考慮してモデル選択したり 

  7. 回帰分析とは・・・?
 39 回帰分析ってあれですよね・・・
 • 誤差を最小にするように線を学習するやつですよね 
 • データの分布に合わせてロジスティック回帰とか考えな いといけないですよね
 •

    VIFとかみて多重共線性も確認しないとですね 
 • 予測の性能を最適化するためにstep wise AICでモデル 選択したり
 • Cross-Validationで汎化誤差を考慮してモデル選択したり 
 • あとR^2もありましたね・・・

  8. 回帰分析とは・・・?
 40 回帰分析ってあれですよね・・・
 • 誤差を最小にするように線を学習するやつですよね 
 • データの分布に合わせてロジスティック回帰とか考えな いといけないですよね
 •

    VIFとかみて多重共線性も確認しないとですね 
 • 予測の性能を最適化するためにstep wise AICでモデル 選択したり
 • Cross-Validationで汎化誤差を考慮してモデル選択したり 
 • あとR^2もありましたね・・・
 • え、分散不均一性・・・?

  9. 回帰分析とは・・・?
 41 回帰分析ってあれですよね・・・
 • 誤差を最小にするように線を学習するやつですよね 
 • データの分布に合わせてロジスティック回帰とか考えな いといけないですよね
 •

    VIFとかみて多重共線性も確認しないとですね 
 • 予測の性能を最適化するためにstep wise AICでモデル 選択したり
 • Cross-Validationで汎化誤差を考慮してモデル選択したり 
 • あとR^2もありましたね・・・
 • え、分散不均一性・・・?
 • い、因果効果・・・

  10. 効果検証での回帰分析の考え方
 バイアスのある 母集団 サンプル 48 母集団 セレクションバイアスの原因になる変数をモ デルに入れると近づく 
 推定したい真の効果

    
 Zの効果を表すパラメーター 
 この母集団も観測できない
 =この回帰分析は実行不可能
 母集団で回帰分析!

  11. 効果検証での回帰分析の考え方
 バイアスのある 母集団 サンプル 49 母集団 セレクションバイアスの原因になる変数をモ デルに入れると近づく 
 推定したい真の効果

    
 • 母集団におけるγの推定値 
 • 真の効果の推定値 手元のデータで回帰分析!
 母集団で回帰分析! 
 推定!

  12. クーポンを配ってみる
 53 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 売り上げ:高
 クーポン確率:20%


    売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%
 • クーポンの効果は一律1000円 
 •   が高いユーザーにはクーポンが配られないという設定 
 • セレクションバイアスは負の値になる 

  13. 集計で効果を推定する
 54 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 平均売上=2556
 平均売上=3359


    →推定された効果は約800円 
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  14. IPWのイメージ
 55 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 このデータが全て観測できた 


    場合の平均が知りたい 
 このデータが全て観測できた 
 場合の平均が知りたい 
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  15. IPWのイメージ
 56 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 このデータが全て観測できた 


    場合の平均が知りたい 
 このデータが全て観測できた 
 場合の平均が知りたい 
 この差分が効果の推定値になる 
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  16. IPWのイメージ
 57 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 5人中1人しか観測されない 


    →このユーザーを5人分カウントしよう 
 x5
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  17. IPWのイメージ
 58 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 5人中2人しか観測されない 


    →2人を2.5人分ずつカウントしよう 
 x5
 x2.5
 x2.5
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  18. IPWのイメージ
 59 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 4人中2人しか観測されない 


    →2人を2人分ずつカウントしよう 
 x2.5
 x2.5
 x5
 x2
 x2
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  19. IPWのイメージ
 60 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 {(3824x5) +

    (3726x2.5) + (2506 x 2.5) + (3015x2) + (2727x2) } / 14 = 3477
 x2.5
 x2.5
 x5
 x2
 x2
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  20. IPWのイメージ
 61 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 {(2047 +

    2953 + 2833 + 2866)x1.25 + (2482 + 2443 + 2102)x1.66 + (2234 + 2044)x2 } / 14 =2492
 x1.25
 x2
 x1.25
 x1.25
 x1.25
 x1.66
 x1.66
 x1.66
 x2
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  21. IPWのイメージ
 62 ユーザーグループA 
 ユーザーグループB 
 ユーザーグループC 
 推定された売上
 =2492


    推定された売上
 =3477
 →推定された効果は約985円 
 売り上げ:高
 クーポン確率:20%
 売り上げ:中
 クーポン確率:40%
 売り上げ:低
 クーポン確率:50%

  22. (余談)マッチングのイメージ
 63 →推定された効果は約940円 
 
 
 3824 - 2833 =

    991
 3726 - 2482 = 1283
 3506 - 2443 = 1063
 3015 - 2334 = 681
 2727 - 2044 = 683
 傾向スコアの近いユーザーをペアにして、差分 を効果として計算する。 

  23. 広告テンプレート選択@CyberAgent
 64 slot _1 slot _2 slot _3 slot_1 sl

    ot _2 ユーザー
 セグメント{A,B,C}
 予測モデル
 意思決定
 ルール
 slot_1 sl ot _2 広告表示
 クリック
 広告画像の
 選択肢
 セグメントにより選ばれやすい画像が異なる
 • セグメントA
 ◦ 80%の確率でZ=1
 ◦ 20%の確率でZ=0
 • セグメントB
 ◦ 60%の確率でZ=1
 ◦ 40%の確率でZ=0
 • セグメントC
 ◦ 40%の確率でZ=1
 ◦ 60%の確率でZ=0

  24. 効果検証から得られる観点
 69 観測されるデータには
 バイアスが存在する
 世界線Bの鍋の味 
 世界線Aの鍋の味 
 施策の効果 


    効果は2つの世界線の差にある
 →これらの観点は他のDS技術でどう捉えられているのか?

  25. 母集団 学習データにバイアスがある場合
 76 バイアスのある 母集団 サンプル (学習データ) サンプル テストデータ バイアスのある母集団の誤差の推定値

    
 を最小化して得られたモデル 
 別の母集団への誤差を最小にしているので 
 誤差は思うように小さくならない 

  26. 実際どう捉えられているか?
 • 技術的には対応策はいろいろ提案されている
 ◦ Covariate Shift
 ◦ Domain Adaptation
 ◦

    etc...
 • 技術に関して手に入りやすい情報があまりない
 ◦ 日本語の教科書とかにはほぼ情報がない
 ◦ 特にどんな時に使えば良いのかが議論されてない
 78
  27. 母集団 他の分野でも起きること
 79 バイアスのある 母集団 サンプル (学習データ) 得られるデータにはバイアスがある 
 単純に損失の最小化をしても本当に行いたい

    予測や知識は得られない 
 バイアスの無い母集団での損失が最小化できると 
 予測ができたり何かがわかったりする 

  28. 例:モデルの解釈性とバイアス
 • 教師あり学習を行ってモデルから情報を得る
 ◦ Aという要素が重要!
 ◦ といった情報を得ることができる(と考えられている)
 • 学習データにバイアスがあるとどうなる?
 ◦

    結果がコロコロ変わることが示唆されている
 ▪ バイアスがあるデータではAが重要 
 ▪ バイアスのないデータではBが重要 
 ◦ 参考)Robust and Stable Black Box Explanations @ ICML20
 80
  29. テック企業では常識
 84 +1000 test /day +200 test /day 2013年に行われていたABテストの数 


    →1000 test/day in 2017 
 出典)A/B Testing at Scale Tutorial given at SIGIR 2017 and KDD 2017)
  30. 23回ABテストした結果・・・ 
 • 横軸:機械学習のオフラインでの予測能力の改善 
 • 縦軸:ビジネスKPIの改善 
 • オフラインの予測能力とビジネスKPIに関係無し

    
 Lucas Bernardi, Themistoklis Mavridis, and Pablo Estevez. 2019. 150 Successful Machine Learning Models: 6 Lessons Learned at Booking.com. In Proceedings of the 25th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining (KDD '19). 89 残念なお知らせ@KDD2019

  31. 利用可能な技術もある
 • 因果推論を使った意思決定
 ◦ Aの効果がよかったから、Aを使おうという話。
 • 機械学習で因果効果を予測する
 ◦ いろいろ工夫して効果を予測する
 ◦

    Uplift Modeling / ITE Prediction
 • 強化学習で報酬(累積因果効果)を最大化する
 ◦ Bandit Algorithm
 →こちらは日本語でも情報がちらほらある
 91
  32. 何が必要なのか?
 • 技術的な話
 ◦ バイアス対処にまつわる技術
 ◦ 効果を改善する技術
 • ソフトな話
 ◦

    自分のデータにバイアスがあるのかを発見できるか?
 ◦ 重要な効果が何かを先に定義できるか?
 
 →バイアスの検知や効果の定義がなければ技術は無意味
 95
  33. 効果を出すために重要なスキル
 • バイアスの存在に気がつけるか?
 ◦ 体系はない(経済学が近いかも?)
 ◦ バイアスのあるデータだけみてもバイアスはわからない
 ◦ なので、実はドメイン知識が非常に重要
 •

    推定したい効果を明確に定義できるか?
 ◦ 因果推論では、Z = 0 or 1の効果しかわからない。
 ◦ 何がビジネスに重要なのかをよく議論する必要がある
 ◦ 「どの要因が一番効いているのか?」はかなり難しい
 96