Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
main.pdf
Search
konumaru
November 25, 2020
Technology
340
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
main.pdf
konumaru
November 25, 2020
More Decks by konumaru
See All by konumaru
Cursor × Marp 勉強会
konumaru
3
1.7k
レコメンドエンジンを Figma で爆速 UX リサーチ
konumaru
0
8.4k
7日で学んだ強化学習
konumaru
0
290
AutoML 使ってみた
konumaru
0
210
Other Decks in Technology
See All in Technology
re:Invent の去年のスケジュールを公開します!
miu_crescent
PRO
0
280
セキュリティ専任チームなしで攻撃を先回りするSREが実践したSIEM on Amazon OpenSearch Service
cscengineer
PRO
0
210
PostgreSQL オプティマイザ統計の秘密
nori_shinoda
0
330
視野はAIに、視座は人に / ai-for-breadth-humans-for-perspective
nkzn
6
3.1k
Sizing, Benchmarking and Performance Tuning Apache Flink Clusters
rmetzger
0
110
Autonomous AI Lakehouse - Live AI Hubから始めるセキュアなAIデータ活用 -
oracle4engineer
PRO
3
190
You Have Agency(サンキュー、Ruby)
snoozer05
PRO
5
680
試験勉強はGrokBotでやれ
maigo999
0
110
分析作業をどこまで任せるか自分で決められる AIネイティブBI『Golden Analytics』が 良さげな話 /golden-analytics-is-ai-native-bi
shinyaa31
0
120
AIがGISを代替する日:〜すべてをAIが創る時代に、私たちがFOSS4Gに関わる意味〜
lehupa
1
210
Maestro MCPとClaude Code Skillsによる自律的なE2Eテスト支援
asmz
0
420
Microsoft Entra Kerberos で実現するクラウド デバイス管理
tamaiyutaro
1
430
Featured
See All Featured
Accessibility Awareness
sabderemane
1
290
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.7k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
Intergalactic Javascript Robots from Outer Space
tanoku
273
28k
Why Our Code Smells
bkeepers
PRO
340
58k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
KATA
mclloyd
PRO
35
16k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
570
Mind Mapping
helmedeiros
1
430
Tell your own story through comics
letsgokoyo
1
1.1k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.4k
Transcript
バイアスのあるデータをIPWで補正してUplift Modeingを やってみた 1
⾃⼰紹介 ⼩沼 塁, @knmr_u 職業とか趣味とか 機械学習エンジニア PMに鞍替え中 kaggle, 銅 1
(だけ) 2
話す内容 テーマ バイアスのあるデータを IPW で補正して Uplift Modeing をやってみたよ TL;DR Uplift
Moddeling で介⼊効果を最⼤化できるよ バイアスのあるデータでも Uplift Modeling ができたよ ただし、傾向スコアをあまり信じすぎるのは危ないよ 3
参考資料 仕事で始める機械学習 岩波データサイエンス vol.03 4
実装について ⾃作ライブラリ pycalf を作りました 今回の実装については上記のライブラリにまとまっています 5
ToC . Uplift Modeling による介⼊効果の最⼤化 . Uplift Modeling の弱点 .
IPW (Inverse Probability Weighting) とは . IPW で Uplift Modeling の弱点を補填 . バイアスを補填した Uplift Modeling の結果 . IPW (傾向スコア) の弱点 . おまけ 6
Uplift Modeling による介⼊効果の最⼤化 7
Uplift Modeling の⽬的 何らかのマーケティング施策を想 定する 右図のような四象限を仮定する Uplift Modeling では、介⼊するこ とでCVする群である「説得可能」
を⾒つける 8
ABテストを通じたUplift Modelingの⼿順(1/7) ABテストを⾏い、以下のデータを取得する X: 特徴量, Z: 介⼊有無 (0 or 1),
Y: CV有無 (0 or 1) 9
ABテストを通じたUplift Modelingの⼿順(2/7) Z==0, Z==1 でデータを分ける つまり介⼊有無でデータを分割する 10
ABテストを通じたUplift Modelingの⼿順(3/7) Z==0, Z==1 ごとのモデルを作成 11
ABテストを通じたUplift Modelingの⼿順(4/7) 同様の検証データに対して作成したモデで予測 12
ABテストを通じたUplift Modelingの⼿順(5/7) 予測値からUplift Score と Lift を取得 Uplift_Score = treat_proba/control_proba
Lift = treat_proba − control_proba 13
ABテストを通じたUplift Modelingの⼿順(6/7) AUUC でモデルの評価を⾏う ⻘い線が介⼊した場合 左からUpliftScoreが⾼い順に介⼊効果を積み 上げている 曲線が下ぶれてくるあたりから天邪⻤が含ま れてくる 14
ABテストを通じたUplift Modelingの⼿順(7/7) UpliftScoreでソートしたLiftの累積和が最⼤ 値になるポイントを介⼊閾値に決定 AUUCの横軸をデータ数からUpliftScoreに変 える UpliftScore = 1.1 あたりが最も介⼊効果が⾼
いことがわかる 15
Uplift Modeling の弱点 ABテストを⾏ったデータが必要ということ (システム構成が複雑だとか?ユースケースあるの?とかは置いてといて) 16
Uplift Modeling が仮定していること ABテストのより得られた反実仮想のデータを学習する 17
バイアスをIPWで補正 介⼊有無により特徴量に偏りが⽣じる場合、反実仮想のデータが⼿に⼊らない そこで、IPWを使えばバイアスを補填できるのではないか と考えた 18
IPW (Inverse Probability Weighting) とは 介⼊有無を学習したモデルの予測値が傾向スコア 傾向スコアを逆確率変換したものを重みとする これをIPWと呼ぶ IPWは介⼊が必然である個体を軽く、介⼊が偶然である個体を重く扱う 上記のような処理をすることでデータの偏りを調整する
19
傾向スコアの求め⽅ 特徴量から介⼊有無を予測するモデルを作成 そのモデルの予測値を傾向スコアとする イメージ図 20
IPWのイメージ図 引⽤: 医学統計セミナー アドバンスコース 統計的因果推論と傾向スコア 21
IPW で Uplift Modeling の弱点を補填 ⽴ち戻ると、 バイアスのあるデータで Uplift Modeling がしたい
しかし、Uplift Modelig はRCTのような反実仮想を想定したデータが必要 バイアスがあってもIPWによる補正で反実仮想を想定したデータを⽤意できるのではな いか 22
重み付けモデルのイメージ図 移⾏の⼿順は通常のUplift Modelingと同じ 23
バイアスを補填した Uplift Modeling の結果 それっぽいAUUCが出てくることが確認できた。 曲線のガタツキはデータ量によるものなのでデータが少ないときは注意が必要 詳しい実装はこちら 24
IPWの弱点 分類精度が⾼すぎる場合、以下のような ことが起こる 極端な重み付け 同質のデータが存在しない 詳しくは 岩波DS vol.03 で 25
積み残し モデルの検証が不⼗分 意図した振る舞いなのかを検証するのが困難で、 ABテストの場合とバイアスがある場合のモデルの⽐較をしたいが単純には⽐較でき ない 検証の⽅法についてを真⾯⽬に考える必要がある 26
まとめ Uplift Moddeling で介⼊効果を最⼤化できるよ 介⼊することでCVする「説得可能」なセグメントを⾒つけることができる バイアスのあるデータでも Uplift Modeling ができたよ IPWをsample_weightに設定することで反実仮想を仮定することができる
ただし、傾向スコアをあまり信じすぎるのは危ないよ 傾向スコアが極端な値を取っていないか、ある程度重なりがあるか確認する必要が ある 27
おまけ 実装はpycalfのexampleにあります 傾向スコアを利⽤しない⼿法として Uber が開発していた causalML がある meta-learner や causal-tree
といった⼿法が使われている(らしい) causalML の調査資料についてはこれ 28
おわり 29