Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
DSOps #8
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Yusuke Kaneko
February 28, 2022
26k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DSOps #8
公開用
Yusuke Kaneko
February 28, 2022
More Decks by Yusuke Kaneko
See All by Yusuke Kaneko
Ad-DS Paper Circle #1
ykaneko1992
0
7.2k
Ad-DS Paper Circle #2
ykaneko1992
0
4.4k
Ad-DS Paper Circle #3
ykaneko1992
0
4.2k
Ad-DS Paper Circle #4
ykaneko1992
0
4k
Ad-DS Paper Circle #5
ykaneko1992
0
3.7k
Ad-DS Paper Circle #6
ykaneko1992
0
3.5k
Ad-DS Paper Circle #7
ykaneko1992
0
3.3k
Ad-DS Paper Circle #8
ykaneko1992
0
3.2k
Ad-DS Paper Circle #9
ykaneko1992
0
3.1k
Featured
See All Featured
Information Architects: The Missing Link in Design Systems
soysaucechin
0
980
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
210
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
KATA
mclloyd
PRO
35
15k
Faster Mobile Websites
deanohume
310
32k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
470
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
170
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
250
Typedesign – Prime Four
hannesfritz
42
3.1k
Transcript
DSOps #8. 可視化 (前編)
自己紹介 名前 : 暮石 航大 所属 : AI事業本部 Dynalyst データサイエンスチーム
入社年度 : 2020年
なぜDSOpsの内容に可視化があるか?
プロダクトでのDSの仕事は • 改善すべき点を明らかにして,改善方法を創出する ◦ 改善できる点を見つける必要がある ◦ データから面白い情報を得るために直感的な理解を助ける可視化を行う • 明らかになった改善すべき点と改善方法を誤りなく伝え,アクションをしてもらう ◦
意思決定がしやすいように改善点と改善方法,改善幅を伝える必要がある ◦ 意思決定の判断をサポートするために可視化を行う
プロダクトでのDSの仕事は • 改善すべき点を明らかにして,改善方法を創出する ◦ 改善できる点を見つける必要がある ◦ データから面白い情報を得るために直感的な理解を助ける可視化は効果的 • 明らかになった改善すべき点と改善方法を誤りなく伝え,アクションをしてもらう ◦
意思決定がしやすいように改善点と改善方法,改善幅を伝える必要がある ◦ 意思決定の判断をサポートするために可視化は効果的
プロダクトでのDSの仕事は • 改善すべき点を明らかにして,改善方法を創出する ◦ 改善できる点を見つける必要がある ◦ データから面白い情報を得るために直感的な理解を助ける可視化は効果的 • 明らかになった改善すべき点と改善方法を誤りなく伝え,アクションをしてもらう ◦
意思決定がしやすいように改善点と改善方法,改善幅を伝える必要がある ◦ 意思決定の判断をサポートするために可視化は効果的 DSの仕事をスムーズに進めるためにはうまく可視化していく必要がある
DS研修の内容 実際に可視化を利用する二つのケースについて,可視化を行う時のポイントと事例に ついて紹介する 1. データ分析のための可視化(前半) 見せる対象 : 自分自身 2. 意思決定の判断をサポートするための可視化(後半)
見せる対象 : 事業責任者,開発責任者
1 データ分析のための可視化 2 意思決定をサポートするための可視化
可視化する利点って何だっけ?
可視化する利点は傾向を掴めることである 数値データの羅列からデータの傾向を理解するのは困難である 左の例から右の図を思い描くのは無理がある
可視化する利点は傾向を掴めることである 統計量だけでは,把握できないデータの傾向が存在する 統計量が全て同じになる4つの例 統計量 値 xの平均 9 xの標本平均 11 yの平均
7.5 yの標本平均 4.122 xとyの相関係数 0.816 回帰直線 y=3.0 + 5.0x
可視化する利点は傾向を掴めることである 数値データの羅列からデータの傾向を理解するのは困難である 統計量だけでは,把握できないデータの傾向が存在する
データ分析で可視化するときのポイント
データ分析の中で可視化の使い所は2パターンある ドメイン知識がない 問題発見や問題解決に繋がるアイディアを出す データから事業について理解するために,可視化を使う • 時系列にみたら,売り上げはどうなっているんだろうか?(問題発見に繋げるための可視化) • サイズ別にみたら,CTRはどうなってるんだろうか?(問題解決に繋げるための可視化) ドメイン知識がある(問題発見や解決に対するアイディアがある) ドメイン知識を使って,立てた仮説を検証する
立てた仮説を検証するために,可視化を使う • 動画広告のCPAが低い -> 広告主ごとに静止画と動画でCPAを比較する • imp数が多いユーザはCTRが低い -> 広告の表示頻度別にCTRを可視化する
データ分析の中で可視化の使い所は2パターンある ドメイン知識がない 問題発見や問題解決に繋がるアイディアを出す データから事業について理解するために,可視化を使う • 時系列にみたら,売り上げはどうなっているんだろうか?(問題発見に繋げるための可視化) • サイズ別にみたら,CTRはどうなってるんだろうか?(問題解決に繋げるための可視化) ドメイン知識がある(問題発見や解決に対するアイディアがある) ドメイン知識を使って,立てた仮説を検証する
立てた仮説を検証するために,可視化を使う • 動画広告のCPAが低い -> 広告主ごとに静止画と動画でCPAを比較する • imp数が多いユーザはCTRが低い -> 広告の表示頻度別にCTRを可視化する
データ分析の中で可視化の使い所は2パターンある ドメイン知識がない 問題発見や問題解決に繋がるアイディアを出す データから事業について理解するために,可視化を使う • 時系列にみたら,売り上げはどうなっているんだろうか?(問題発見に繋げるための可視化) • サイズ別にみたら,CTRはどうなってるんだろうか?(問題解決に繋げるための可視化) ドメイン知識がある(問題発見や解決に対するアイディアがある) ドメイン知識を使って,立てた仮説を検証する
立てた仮説を検証するために,可視化を使う • 動画広告のCPAが低い -> 広告主ごとに静止画と動画でCPAを比較する • imp数が多いユーザはCTRが低い -> 広告の表示頻度別にCTRを可視化する
データ分析の中で可視化の使い所は2パターンある ドメイン知識がない 問題発見や問題解決に繋がるアイディアを出す データから事業について理解するために,可視化を使う • 時系列にみたら,売り上げはどうなっているんだろうか? • サイズ別にみたら,CTRはどうなってるんだろうか? ドメイン知識がある(問題発見や解決に対するアイディアがある) ドメイン知識を使って,立てた仮説を検証する
立てた仮説を検証するために,可視化を使う • 動画広告のCPAが低い -> 広告主ごとに静止画と動画でCPAを比較する • imp数が多いユーザはCTRが低い -> 広告の表示頻度別にCTRを可視化する
データ分析の中で可視化の使い所は2パターンある ドメイン知識がない 問題発見や問題解決に繋がるアイディアを出す データから事業について理解するために,可視化を使う • 売り上げが大きく増えた時期がありそう -> 時系列にみたら,売り上げはどうなっているんだろうか? • サイズによってCTRは変わりそう
-> サイズ別にみたら,CTRはどうなってるんだろうか? ドメイン知識がある(問題発見や解決に対するアイディアがある) ドメイン知識を使って,立てた仮説を検証する 立てた仮説を検証するために,可視化を使う • 動画広告のCPAが低い -> 広告主ごとに静止画と動画でCPAを比較する • imp数が多いユーザはCTRが低い -> 広告の表示頻度別にCTRを可視化する
データ分析の中で可視化の使い所は2パターンある ドメイン知識がない 問題発見や問題解決に繋がるアイディアを出す データから事業について理解するために,可視化を使う • 売り上げが大きく増えた時期がありそう -> 時系列にみたら,売り上げはどうなっているんだろうか? • サイズによってCTRは変わりそう
-> サイズ別にみたら,CTRはどうなってるんだろうか? ドメイン知識がある(問題発見や解決に対するアイディアがある) ドメイン知識を使って,立てた仮説を検証する 立てた仮説を検証するために,可視化を使う • 動画広告のCPAが低い -> 広告主ごとに静止画と動画でCPAを比較する • imp数が多いユーザはCTRが低い -> 広告の表示頻度別にCTRを可視化する 共通しているのは • 可視化する目的や仮説がある • 仮説を検証するために,可視化の強みである直感的に解 釈しやすいことを使っている
事例:可視化をデータ分析で利用する CVR予測モデルで起きている現象を可視化で明らかにして改善に繋げる
None
ある特徴を除くと性能は改善するが効果がないわけではない? ユーザのidを特徴量から除くことによって,性能を改善することができた • 学習データにバイアスがのっていた(推論時に出現するユーザが学習データに存在しない ことが原因だった) “ユーザのid”なんで入れるの?気になったので調べてみるとユーザのidを入れたモデルは • ユーザのidが学習データに含まれていないデータに対しては悪化していた • ユーザのidが学習データに含まれているデータに対しては改善していた
ユーザのid除くだけでいいのかな... もう少し調べてみる...
ユーザのidがどんな特徴か確認する ユーザのidが学習データに含まれているかで,性能の優劣が変わっていた • ユーザのidが学習データに含まれていないデータに対しては悪化していた • ユーザのidが学習データに含まれているデータに対しては改善していた ユーザのidを加えることで学習されるのは過去のcvの傾向ではないか? 過去のcvの傾向を学習しているか調べる方法はないか loglossやaucを比較してみたが...値が小さいのもあってよくわからなかった
ユーザのidがどんな特徴か確認する ユーザのidが学習データに含まれているかで,性能の優劣が変わっていた • ユーザのidが学習データに含まれていないデータに対しては悪化していた • ユーザのidが学習データに含まれているデータに対しては改善していた ユーザのidを加えることで学習されるのは過去のcvの傾向ではないか? 過去のcvの傾向を学習しているか調べる方法はないか loglossやaucを比較してみたが...値が小さいのもあってよくわからなかった 過去のCVの有無によって,全体的に予測値がどう変化するのを確認したい
Calibration Curveを描いてみる 横軸に予測値,縦軸に実測値 をとる図を描いてみた 平均的に y = x に近いのが理想 上振れ
-> 予測値が低い 下振れ -> 予測値が高い
細かい粒度でCalibration Curveを可視化してみる ユーザのidを加えることで学習されるのは過去のcvの傾向ではないか? 学習データ中でのCVの有無で分けてCalibration Curveを描画する 学習データ中でCVがあるユーザのデータだけを使って,Calibration Curveを描く ユーザのidを特徴量として加えている ユーザのidを特徴量として加えていない Calibration
Curveが y = xに近づいている
細かい粒度でCalibration Curveを可視化してみる uidが学習しているのは過去のcvの傾向ではないか? 学習データ中でのCVの有無で分けてCalibration Curveを描画する 学習データ中でCVがあるユーザのデータだけを使って,Calibration Curveを描く 過去にcvしているユーザのデータに対して, • ユーザのidがない場合
: 全体的に上振れしている (予測値が低い) • ユーザのがある場合 : 予測値と実測値が近い ユーザのidがない場合は過去のユーザごとの cvしやすさを考慮できていない => ユーザのidはユーザのcvしやすさを表す特徴量に違いない => uidをユーザのcvの傾向を考慮した特徴に置き換えることができれば,いいとこ取りができそう ユーザのidを特徴量として加えている ユーザのidを特徴量として加えていない Calibration Curveが y = xに近づいている
細かい粒度でCalibration Curveを可視化してみる uidが学習しているのは過去のcvの傾向ではないか? 学習データ中でのCVの有無で分けてCalibration Curveを描画する 学習データ中でCVがあるユーザのデータだけを使って,Calibration Curveを描く 過去にcvしているユーザのデータに対して, • ユーザのidがない場合
: 全体的に上振れしている (予測値が低い) • ユーザのidがある場合 : 予測値と実測値が近い ユーザのidがない場合は過去のユーザごとの cvしやすさを考慮できていない => ユーザのidはユーザのcvしやすさを表す特徴量に違いない => ユーザのidをユーザのcvの傾向を考慮した特徴に置き換えることができれば,いいとこ取りができそう ユーザのidを特徴量として加えている ユーザのidを特徴量として加えていない Calibration Curveが y = xに近づいている
可視化して得た知見を利用して,予測モデルを修正したところ性能を 改善することができた ユーザのidをユーザのcvの傾向を考慮した特徴に置き換えて,いいとこ取りする • セレクションバイアスの除去 • ユーザのidを加えることで学習されていた過去のユーザごとのcvのしやすさの考慮 結果的に変更した予測モデルを本番に導入してみたところ CPAを改善することに貢献できた
可視化して得た知見を利用して,予測モデルを修正したところ性能を 改善することができた ユーザのidをユーザのcvの傾向を考慮した特徴に置き換えれば,いいとこ取りする • セレクションバイアスの除去 • ユーザのidが学習していた過去のユーザごとのcvのしやすさの考慮 結果的に変更した予測モデルを本番に導入してみたところ CPAを改善することに貢献できた この改善に繋がるアイディアは可視化してみたことで,思いついたアイディアだった
可視化してみたことで,ユーザのidを加えることで学習されていたものが何かについて理解すること ができた
まとめ
まとめ データ分析の中で可視化するケースは2パターンある • 問題発見や問題解決に繋がるアイディアを出す ◦ データから事業について理解するために,可視化を使う • ドメイン知識を使って,立てた仮説を検証する ◦ 立てた仮説を検証するために,可視化を使う
大事なのは • 目的や仮説に対して,可視化をする • 可視化の強みである「直感的に解釈できる」という点に注意する • 可視化することで出てくるアイディアもある
おしまい