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

効果検証入門に物申してみた_JapanR_2023

うとしん
December 01, 2023

 効果検証入門に物申してみた_JapanR_2023

2023年12月2日に開催されたJapan.RのLT資料です。

処置と割当の不一致や効果の異質性によって効果が検出できない際に、操作変数を用いて効果を推定する方法を紹介しています。

因果推論・効果検証に興味のある方は、ぜひご一読いただけますと幸いです。

うとしん

December 01, 2023
Tweet

More Decks by うとしん

Other Decks in Science

Transcript

  1. こんなときどうする? アプリのプッシュ通知が売上に与える効果を考えたい 売上: 2,000円 売上: 1,000円 プッシュ通知を見る プッシュ通知を見ない プッシュ通知の効果は 1,000円

    ユーザーiさん 観測できるのは どちらかだけ プッシュ通知の配信の有無をランダムに割り当ててA/Bテストしますよね?
  2. 先ほどの例を当てはめる - 操作変数Z: プッシュ通知の配信の有無 - 介入D: プッシュ通知を見たかどうか - アウトカムY: 売上

    売上 プッシュ通知を 見たかどうか プッシュ通知の 配信の有無 プッシュ通知を見たユーザーにおける(局所的な)効果を推定 プッシュ通知の配信の有無はランダムに割り当てるので売上に影響はない
  3. プッシュ通知が購入金額に与える効果を推定する問題を考える 以下のデータを利用 - リンク: https://github.com/matheusfacure/python-causality-handbook/blob/master/causa l-inference-for-the-brave-and-true/09-Non-Compliance-and-LATE.ipynb - データには3つのカラムが存在 - in_app_purchase:

    購入金額(単位: ドル) - push_assigned: プッシュ通知が配信されたら1, されなかったら0 - push_delivered: プッシュ通知が見られたら1, 見られなかったら0 Rでの実装例: データセットの紹介
  4. まとめ - 効果を知りたいときはA/Bテストでグループ間の平均を比較しがち - 効果0のユーザーが存在し、推定された効果が小さいという問題 - 処置と割当の不一致 - 効果の異質性 -

    操作変数を利用することで、介入がなされたユーザーにおける局所的 な効果を推定することが可能 - 2SLSはRのAERパッケージを利用することで実装可能 - 操作変数は意外と使う(操作変数はいいぞ!)
  5. Webページは2023年11月24日時点に参照してます - 安井(2020)「効果検証入門」技術評論社 - Scott(2021)「Causal Inference: The Mixtape」Yele University Press

    - https://qiita.com/s1ok69oo/items/d9f3a3860388f3b9911d - https://github.com/matheusfacure/python-causality-handbook 参考文献