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

ゆるふわ因果推論入門 / casual talk about causal inference

Chitose
August 26, 2022

ゆるふわ因果推論入門 / casual talk about causal inference

メタバースサービスのVRChat上でおこなっているデータサイエンティスト集会でのLTスライド
https://twitter.com/dsGathering_vrc

因果推論ってよく聞くけどなに?みたいな話がよくあったので、イメージ伝達の観点でざっくり説明

Chitose

August 26, 2022
Tweet

More Decks by Chitose

Other Decks in Business

Transcript

  1. ゆるふわ因果推論入門

  2. 3. おすすめ書籍 2.実例 ・ランダム化比較実験 ・自然実験と擬似実験 ・回帰分析 1.因果推論とは

  3. 自己紹介 # VRChat ・名前: ちとせちゃん ・プレイ歴: 2022/01 ~ ・DS集会主催 ・VRC学園6期卒

    ・BAR sideFiRE 店員 # Twitter ・DS用: @chitose_ng ・VRC用: @chitose_ng_vrc # 仕事 ・統計モデルとか因果推論とか  シミュとか。
 ・機械学習は稀 ・某DSベン図だとビジネス寄り ・マネジ補佐(休止中) # 言語とか ・R、Python、SQL ・Tableau # その他 ・ブログ「まずは蝋の翼から」 ・Tableau本を出版(共著) ・Kaggleチョットシテル
  4. 因果推論とは

  5. 因果推論って何? 「もしXだったら結果はどうなるか」 「もしXしなかったら結果はどうなるか」 Xの因果効果 (反実仮想) この2つを考えることで を測る ※ Rubin流とPearl流の考え方があり、上記およびこれからの話はRubin流の話です

  6. Xの例 「薬Aを飲んだ」ときの血圧への効果は? 「TVCMを打った」ときの売上への効果は? 「VRChatをすること」による幸福度への効果は? 「毎日30分走った」ときの体重への効果は?

  7. どうやって効果をはかる? ・ 、 のちとせちゃんは毎日ランニングをすることにしました。  その結果、半年後の に になりました。  ちとせちゃんにとっての はどれくらいでしょう? 2022年1月

    体重75kg 2022年7月 体重が70kg ランニングの効果 2022年1月 75kg 70kg 2022年7月
  8. どうやって効果をはかる? 単純に考えてみると、 なので効果は ! ・・・本当に? 75kg→70kg -5kg 2022年1月 75kg -5kg

    70kg 2022年7月
  9. 神の視点で見る 実は「ランニングの効果」は ではなく だった。 。 → ので  実はランニング( )通勤しなくなる( )の結果、

    という結果が出ていた -5kg -8kg 2022年3月からフルリモートワークになったので通勤をしなくなった 「フルリモート」効果が+3kg分あった -8kg +3kg -5kg 2022年1月 75kg -8kg+3kg = -5kg 70kg 2022年7月
  10. 神の視点で見る つまり、単純に2022年1月と7月の では が絡んでくる。 そのうちの は神の視点じゃない限りよくわからん 結果を比較をするだけ 色々な要因 ランニング要素だけの効果 2022年1月

    75kg -5kg 70kg 2022年7月 -5kg -8kg +3kg +1kg -1kg = ランニング( ) + リモートワーク( ) + 基礎代謝減少( ) + 仕事ストレス( )
  11. 神の視点ではない解決策 解決策 の自分と比較する ランニングをしなかった世界線 「もしランニングをしなかったら体重はどれくらいだったか」 2022年1月 75kg ランニングをした世界線:70kg 2022年7月 ランニングをしなかった世界線:78kg

    差:8kg
  12. 神の視点ではない解決策 解決策 の自分と比較する ランニングをしなかった世界線 「もしランニングをしなかったら体重はどれくらいだったか」 2022年1月 75kg ランニングをした世界線:70kg 2022年7月 ランニングをしなかった世界線:78kg

    差:8kg そんなん タイムマシン ないと無理でしょ
  13. そもそも平行世界の自分で比較すると何故「効果」がわかるか 平行世界の なので 以外の体重に関わることは でも起きている。 なので、 「自分」 「ランニングの有無」 「ランニングをしなかった自分」 同条件比較

    同条件での差分 = ランニングの効果 2022年1月 ランニングをした世界線:70kg 条件 条件 2022年7月 ランニングをしなかった世界線:78kg
  14. そもそも平行世界の自分で比較すると何故「効果」がわかるか 平行世界の なので 以外の体重に関わることは でも起きている。 なので、 「自分」 「ランニングの有無」 「ランニングをしなかった自分」 同条件比較

    同条件での差分 = ランニングの効果 6/100 % 2022年1月 ランニングをした世界線:70kg 条件 条件 2022年7月 ランニングをしなかった世界線:78kg 「ランニングの有無」以外 同じ条件の人がいるなら 平行世界の自分じゃなくて もできるのでは?
  15. 「ランニングの有無」以外が同条件の人と比較 体重への影響要素 似た ランニングをしなかった人 にランニングしなかったら+3kg 78kgになっていた ランニングの効果は70kg - 78kg =

    -8kg が自分と 、 と比較する。 なりたちゃんから察する なので、自分は と考えると 2022年1月 2022年7月 75kg ちとせちゃん なりたちゃん 70kg 79kg 76kg -5kg +3kg 年齢: 17歳 身長: 180cm リモートワークなし 残業時間:70h ランニングなし 年齢: 18歳 身長: 178cm リモートワークなし 残業時間:75h ランニングなし 年齢: 18歳 身長: 178cm 3月からリモートワーク 残業時間:70h ランニングなし 年齢: 17歳 身長: 180cm 3月からリモートワーク 残業時間:70h ランニングあり
  16. どうやって効果をはかる? もちろん「似た人」とはいえ ので、 などで は生まれる → コピー人間ではない ちょっとした違いや偶然 「ランニングをしなかった平行世界の自分」とのブレ 「似た人」をいっぱい集めたら平均的には違いのブレが打ち消される

    2022年1月 2022年7月 +2kg -5kg +3kg +4kg ちとせちゃん なりたちゃん はねだちゃん せんとれあちゃん ランニングを してないグループ 平均は +3kg
  17. 考え方のまとめ ・効果を測るときに、  理想を言えば ・タイムマシンなどがない限り なので、 ができるか? ・ とは、目的変数に対して のうち  

    こと ・・・これをどうやったら実現できるか考えるのが という分野。 「Xをした自分」と「Xをしなかった自分(反実仮想)」を比較したい 無理 どうやれば現実的な正しい比較 正しい比較 関係ありそうな要因 「Xの有無」以外が(できる限り)同じ条件の人らを反実仮想とみなして比較する 因果推論
  18. よくある条件を揃えてないのに「効果」としてる例 ・ECサイトが した。  そのとき、 と の を として算出 →クーポンメールは、 に送っている場合が多いため

      と は (よく購買行動をするなど)ので、 になっている ・・・みたいな。 ある一定のユーザーにクーポンメールを配布 クーポンメールを受け取ったユーザー  受け取らなかったユーザー 平均購買額の差 クーポンの効果 クーポンをより使いそうなユーザー クーポンメールを受け取ったユーザー 受け取らなかったユーザー  そもそも購買傾向が違う  ここで計算された「効果」は間違って過剰 クーポンメール配信あり メールがなくても買う平均購買額 メールがなくても買う平均勾配額 購買額の差分 = 間違って効果と思い込む部分 本当のメール効果 平均購買額 平均購買額 クーポンメール配信なし
  19. 適切な効果の測り方

  20. 適切な効果の測り方 (再掲) ・効果を測るときに、  理想を言えば と を比較したい ・タイムマシンなどがない限り無理なので、 ができるか? ・正しい比較とは、 のうち

      すること > このあたりをどうするか。 「Xをした自分」 「Xをしなかった自分(反実仮想)」 どうやれば現実的な正しい比較 目的変数に対して関係ありそうな要因 「Xの有無」以外が(できる限り)同じ条件の人らを反実仮想とみなして比較 「Xの有無」以外が(できる限り)同じ条件の人らを反実仮想とみなして比較
  21. 1 2 3 ランダム化比較実験(RCT) 回帰分析 自然実験と擬似実験 条件を同じにするための手法

  22. 1 2 3 ランダム化比較実験(RCT) 回帰分析 自然実験と疑似実験 条件を同じにするための手法

  23. ①ランダム化比較実験(RCT) ・Xを「する」「しない」を ことで での比較となる ・いわゆる(ちゃんとした)A/Bテストとかはこれ。 ・ のでこれでできるならそれに越したことはないが、   がかかったり、ちゃんとやるには が地味にめんどい。

    ランダムに割り振る 平均的な効果は(処置以外) 同じ条件 理想に近い 金や手間 設計 ランダムに決める Xするグループ Xしないグループ
  24. ①ランダム化比較実験(RCT)の例 クーポンメールは に送るのが普通。 ランダムに送る場合は がある。 つまり、 では ので わざわざ を作る必要がある

    →コストがかかる! 「購買数を最大化できるようなユーザー」 「購買が見込めなさそうなユーザー」「購買行動が起きづらい時間 帯」などにも送る必要 通常のビジネスにおいて蓄積されるデータ RCT条件下ではない 分析のためにコストを捻出したデータ
  25. 1 2 3 WebClipで貯めたデータを自由に 可能 カスタマイズ 回帰分析 自然実験と擬似実験 条件を同じにするための手法

  26. ②自然実験と疑似実験 RCTは前述の理由で 。 そのため、RCTっぽいことが起きている状態を見つけてきていい感じに分析をおこなう 自然実験 測定したい効果に対して データ 例)患者の死亡率に医師の性別は関係あるか?   → 普通に比較すると、男性の方が重篤患者に接することが多いので

      →ホスピタリスト(シフト勤務で勤務中にたまたま運ばれた患者を担当)は     ので 疑似実験 を作り出すことで反実仮想を補完(後述) できない場合が多い 偶然RCTのような状況になっている 比較できない 性別で患者の重篤者は変わらない 男女で条件は同じ 統計的な手法を用いてRCTのような状況
  27. 疑似実験: RDD 回帰不連続デザイン(RDD:Regression Discontinuity Design) 「Xがされたかどうか」は で決めている場合、 は「Xがされるかどうか」の要因に ことを利用して Xの効果を測る

    あるルールをもとにした閾値 閾値付近の人 実質的に違いがない
  28. 疑似実験: RDDの例 ・数学の中間テストの結果が は を受けさせられる。  この を測るには? ・中間テストの結果が と の数学能力は

      と考えられる。 →39点の生徒群と40点の生徒群の (の中間試験範囲)の は   と考えられる 40点未満の生徒 補講 補講の効果 39点の生徒群 40点の生徒群 補講前段階でほぼ同等 期末試験 結果の差 「補講の有無」によって生じている
  29. 疑似実験: RDDの例 ・39点の生徒群と40点の生徒群の  ( を として補完) 補講前の数学能力という前提条件が揃っている 閾値の前後 反実仮想 中間テスト点数

    差分5点が補講の効果 39 38 40 41 期末テストの 中間範囲点数平均40 期末テストの 中間範囲点数平均45
  30. 疑似実験: DID 差分の差分法(DID:Difference In Difference) をすると、景気のような が内包される。 そのため、Xの有無以外の を用いて する

    はじめの「ランニングの効果」の例が似た話。 Xがされる前後で値を比較 トレンドなど 状況が近しい相手 「Xがされていない」状況を仮想
  31. 疑似実験: DID例 ワクチン接種の効果を測りたい! 以下のデータがある。 ・2020年7月時点では ・2020年11月時点では ・A,B区は しているので と考えられる →コロナ感染者数に関して

    。  (隣接地区を として補完) A,B区ともにワクチン接種がおこなわれてない AはおこなわれているがBではおこなわれていない 隣接 コロナに対しての諸条件  (都内の感染者トレンドや都の施策、住民の質など)は同質 「ワクチン接種」以外は(ほぼ)同じ条件! 反実仮想
  32. 疑似実験: DID例 諸条件が同じ 同様のトレンドがある のため、A,B区は と想定される 感染者数 A区 B区 B区の前後差値

    B区の前後差値 B区の前後差値・A区の前後差値 の差 A区の前後差値 2020年4月 2020年11月
  33. 疑似実験: 傾向スコアマッチング ・ (傾向スコア)して、  実際にXされた人とされなかった人で ・そのマッチングできた人らで →マッチング相手とは !  (マッチングされた相手を として補完)

    Xをされるかどうかを確率化 確率が同じ人同士をマッチング 比較 X以外の条件が同じ 反実仮想
  34. 疑似実験: 傾向スコアマッチング例 「10年後年収アッププログラム」を受けた効果があったか見る。 確率: 0.5、10年後年収: 700万 確率: 0.4、10年後年収: 300万 確率:

    0.3、10年後年収: 380万 確率: 0.5、10年後年収: 600万 マッチング 差分:+100万 差分:+20万 差分:+80万 確率: 0.4、10年後年収: 280万 確率: 0.3、10年後年収: 300万 差分の平均は+70万弱 = このプログラムの効果 マッチング マッチング プログラムを 受けたグループ プログラムを 受けてないグループ
  35. 1 2 3 WebClipで貯めたデータを自由に 可能 カスタマイズ 回帰分析 自然実験と疑似実験 条件を同じにするための手法

  36. 回帰分析 自然実験/疑似実験をうまくできないことも多い。 その際は回帰分析を用いることで での効果を する。 は 例) 家賃 = α駅からの距離

    + β面積 + 定数 + σ αは面積が同様の場合、駅からの距離が1km増えたときの家賃の変化量 βは駅からの距離が同様の場合、面積が1m^2増えたときの家賃の変化量 これを利用して、 を入れて を から求める 「同じ条件」 解析的に推定 偏回帰係数 他の変数の値が同じ場合、その変数が1変化するときのyの変化量 Xをされたかのダミー変数 他の影響が同じ場合=同じ条件での効果 偏回帰係数
  37. 回帰分析例 前述のクーポンメールの例 過去の購買額が高いほど今月の購買額は高い傾向にあるので、 ほどメールが送られる。 上記のような重回帰式を組むことで を することができる 過去の購買額が高い 今月の購買額 =

    α クーポンメールが送付されたか + β 過去の購買額 + γ + σ 「過去の購買額が同様の場合に、クーポンメールが送付 された際の(平均的な)効果」 αから推定
  38. おすすめ書籍

  39. おすすめ書籍 ・「2. 適切な効果の測り方」で紹介した内容は  結構 ・他の手法や回帰分析をうまくやる方法などを   向けにいくつか紹介 ・上ほど ですが、  一方で

    ・初級の壁=B3、中級の壁=M1くらいのニュアンス 細かい説明を端折っている ちゃんと知りたい人 数式が少ない 厳密な理解よりイメージ理解優先 原因と結果の経済学 学力の経済学 実証分析入門 実証分析のための計量経済学 計量経済学の第一歩 計量経済学の使い方 効果検証入門 中級 初級 難易度 岩波DS vol3 計量経済学(浅野・中村) 計量経済学(末石) ほとんど無害な計量経済学 新しい計量経済学 調査観測データの統計科学
  40. 「原因と結果」の経済学 データから真実を見抜く思考法 ・計量経済学の手法を 向け ・ 、図によるイメージによる理解 ・ という軸に沿った解説がされており非常にわかりやすく、  文字数も少ないため読み物感覚の一冊目としてさくっと読むのによい ざっくり理解したい人

    数式はなく 「反実仮想による補完」
  41. 実証分析入門 データから「因果関係」を読み解く作法 ・計量経済学の手法を 向け ・ で、直感的な理解が得られる ・論文ベースでの と で読みやすい。 ・以下は目次の一部抜粋

    ざっくり理解したい人 数式はおまけ程度 豊富な実例 軽快な口調
  42. 実証分析のための計量経済学 (手元になかったから記憶で書いてます) ・計量経済学の手法を 向け ・ かつ、
   を用いて理解できる ・「実証分析入門」と同レベルだが、
  

    向け ざっくり理解したい人 教科書的になりすぎない読みやすさ 簡単な数式 もう少し数式的に理解したい人
  43. 計量経済学の第一歩 -- 実証分析のススメ ・計量経済学の手法を 向け ・各種理論を数式でちゃんと説明しつつ、
   に収めている ・図なども豊富なので、 ある程度ちゃんと理解したい人

    難しすぎない範疇 ちゃんと理解することへの第一歩
  44. 効果検証入門 ~正しい比較のための因果推論 ・ で書いていたり、 が  載っているので計量経済学の人向けというよりかは   向け ・内容やレベルは「計量経済学の第一歩」と同程度 ・本書はRで書かれているが、

     有志が本書の あり ・「なんかDSとして機械学習以外に、因果推論?も  やっといた方がいいらしい?」みたいな空気感のときに  出たので一時期めっちゃ売れた気がするし  因果推論(Rubin)の概念の認知度が上がった気がする ビジネス観点 プログラム実コード ビジネスデータサイエンティストの人 RコードをPythonにした記事
  45. 3. おすすめ書籍 2.実例 1.因果推論とは ・ランダム化比較実験 ・自然実験と擬似実験 おわり