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
【バスケ】ボックススコアを用いたオールインワンメトリクス作成手続き
Search
らんそうるい
October 28, 2023
How-to & DIY
570
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【バスケ】ボックススコアを用いたオールインワンメトリクス作成手続き
らんそうるい
October 28, 2023
Other Decks in How-to & DIY
See All in How-to & DIY
あなたは何故コミュニティに参加するのか?
awsjcpm
3
390
How to make the Groovebox
asonas
2
2.2k
Node-REDで制御できるエッジカメラのreCameraを触る #iotlt #JLCPCB #recamera
n0bisuke2
0
180
家を建てて学ぶPjM
rinkei
0
160
JAWS-UG/AWSコミュニティ -JAWS-UGくまもと#16
awsjcpm
1
220
LLMはTRPGのGMができる(確信)
kgmkm
0
3k
『いってらっしゃい』と『お帰りなさい』を言ってくれる『ぬい』 に動きをつけてみた!
scbc1167
0
120
JAWS-UG 福岡 in 北九州 | JAWS-UG/AWSコミュニティ プログラムのご紹介
awsjcpm
1
220
ネガティブをねじ伏せ、n=1のキャリアに変える技術
subroh0508
1
1.2k
移動は善 / 20260124-NGK2026S
girigiribauer
1
170
大量のiOSシミュレータにアプリをインストールする
gurrium
0
130
AWS Summit Japan 2025 個人的参加レポート
midnight480
0
390
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
RailsConf 2023
tenderlove
30
1.5k
Automating Front-end Workflow
addyosmani
1370
210k
Utilizing Notion as your number one productivity tool
mfonobong
4
320
How GitHub (no longer) Works
holman
316
150k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2k
Scaling GitHub
holman
464
140k
Code Reviewing Like a Champion
maltzj
528
40k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
530
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
Context Engineering - Making Every Token Count
addyosmani
9
960
Transcript
ボックススコアを⽤いた オールインワンメトリクス 作成⼿続き Sports Analyst Meetup #14 & JSAA Lab
LT会 vol.3 らんそうるい(@rnsr0371)
⾃⼰紹介 • らんそうるい • X→@rnsr0371 • Webサイト→ RNSR Lab. •
データ分析(主にバスケ)を投稿 • フリーランスのデータアナリスト • 「スポーツのデータなら私に任せろ」 と⾔えるようになりたい。 ↑ from ノーコピーライトガール
このLTの概要 • ボックススコアを⽤いたオールインワンメトリクスの作成⼿続 きを説明 • 作成⼿続きが公開済みのメトリクスの、最⼤公約数的⼿続きを説明 • ボックススコア:試合中のプレイを集計したもの • e.g.,
得点、リバウンド数 etc. • オールインワンメトリクス:貢献度を表現した単⼀の数値 • e.g., 100ポゼッションあたり+2点の貢献度 • 詳しくは、この連載の第3~5回をご覧ください
計算⼿続きの概要 1. ベースを作成 2. チームアジャストメントを実施 • マストではないが、よく使われる 3. 精度の確認を⾏う •
有識者にランキングの感想をもらう(定性的) • ホールドアウト検証やクロスバリデーションを⾏う(定量的) 4. 微調整する • 出場時間や出場ポゼッションを基に評価値を与えない選⼿を設定
計算⼿続きの概要 1. ベースを作成 2. チームアジャストメントを実施 • マストではないが、よく使われる 3. 精度の確認を⾏う •
有識者にランキングの感想をもらう(定性的) • ホールドアウト検証やクロスバリデーションを⾏う(定量的) 4. 微調整する • 出場時間や出場ポゼッションを基に評価値を与えない選⼿を設定 発表はこれらの内容が中⼼
計算⼿続きの概要 1. ベースを作成 2. チームアジャストメントを実施 • マストではないが、よく使われる 3. 精度の確認を⾏う •
有識者にランキングの感想をもらう(定性的) • ホールドアウト検証やクロスバリデーションを⾏う(定量的) 4. 微調整する • 出場時間や出場ポゼッションを基に評価値を与えない選⼿を設定
ベースを作成 • 「ベース」とは? • チームアジャストメントを加える前の、スタッツを重みづけて⾜し合 わせただけのデータ • Raw 〇〇と呼ばれることが多い(例:Raw BPM)
• 重みの決め⽅(概要) • J. Engelmann⽒のRAPMを教師データに、線形回帰を⾏なって重みを 決める
ベースを作成 • 今回はベースとしてEFFを使う • 𝐸𝐹𝐹 = 𝑃𝑇𝑆 + 𝐴𝑆𝑇 +
𝐵𝐿𝐾 + 𝑆𝑇𝐿 + 𝐹𝐷 + 𝑅𝐸𝐵 −(𝑇0𝑉 + 𝐵𝑆𝑅 + 𝑃𝐹 + 𝑚𝑖𝑠𝑠𝑒𝑑 𝐹𝐺𝐴 + 𝑚𝑖𝑠𝑠𝑒𝑑 𝐹𝑇𝐴) • 良いスタッツの量-悪いスタッツの量 • ベースとしてのEFFの特徴 • 得点(PTS)1点分とAST以降のプレイが等価値 • 出場時間が増えるとEFFも⾼くなる傾向
計算⼿続きの概要 1. ベースを作成 2. チームアジャストメントを実施 • マストではないが、よく使われる 3. 精度の確認を⾏う •
有識者にランキングの感想をもらう(定性的) • ホールドアウト検証やクロスバリデーションを⾏う(定量的) 4. 微調整する • 出場時間や出場ポゼッションを基に評価値を与えない選⼿を設定
チームアジャストメントを実施 • 𝑇𝑚𝐴𝑑𝑗 = 𝑇𝑒𝑎𝑚𝑀𝑎𝑟𝑔𝑖𝑛 − ∑ 𝐸𝐹𝐹 40 ∗
𝑀𝐼𝑁% /5 • 𝐴𝑑𝑗 𝐸𝐹𝐹 40 = 𝐸𝐹𝐹 40 + 𝑇𝑚𝐴𝑑𝑗 • チームアジャストメントを⾏うことで、Adj EFF 40のチーム内 総和がチームのシーズン総得失点差と整合的になる [チームのシーズン得失点差-(EFF 40*MIN%のチーム内総和)]/5 MIN%=チームの試合時間に占める選⼿の出場時間の割合
計算⼿続きの概要 1. ベースを作成 2. チームアジャストメントを実施 • マストではないが、よく使われる 3. 精度の確認を⾏う •
有識者にランキングの感想をもらう(定性的) • ホールドアウト検証やクロスバリデーションを⾏う(定量的) 4. 微調整する • 出場時間や出場ポゼッションを基に評価値を与えない選⼿を設定
精度の確認を⾏う(定量的) • ホールドアウト検証を⾏うなら…… 1. シーズンの試合データを訓練データ:テストデータ=8:2に分割 2. 訓練データだけを使ってAdj EFF 40 を計算
3. テストデータの各試合について 「各選⼿のAdj EFF 40/40分*出場時間」のチーム内総和を計算し、 対戦チーム同⼠で引き算することで、得失点差の予測値を得る 4. 得失点差の予測値と実際の得失点差のRMSEを取る
精度の確認を⾏う(定量的) • B1 2021-22レギュラー シーズンのデータで Adj EFF 40の精度を 確認すると、 •
RMSE=34.46 • (元の得失点差のSDは 18.32)
計算⼿続きの概要 1. ベースを作成 2. チームアジャストメントを実施 • マストではないが、よく使われる 3. 精度の確認を⾏う •
有識者にランキングの感想をもらう(定性的) • ホールドアウト検証やクロスバリデーションを⾏う(定量的) 4. 微調整する • 出場時間や出場ポゼッションを基に評価値を与えない選⼿を設定
微調整する • 訓練データで出場時間 が800分未満の選⼿の EFFを0と置き換えて計 算。 • RMSE=16.57 • (元の得失点差のSDは
18.32)
計算⼿続きの概要 1. ベースを作成 2. チームアジャストメントを実施 • マストではないが、よく使われる 3. 精度の確認を⾏う •
有識者にランキングの感想をもらう(定性的) • ホールドアウト検証やクロスバリデーションを⾏う(定量的) 4. 微調整する • 出場時間や出場ポゼッションを基に評価値を与えない選⼿を設定
Appendix: 参考にしたメトリクス 名称 (略称) URL Statistical Plus-Minus https://www.82games.com/comm30.htm Box Plus-Minus
(BPM) https://web.archive.org/web/20141031194728/https://www.basketba ll-reference.com/about/bpm.html Augmented Plus-Minus (AuPM) https://thinkingbasketball.net/2017/09/18/augmented-plus-minus- evaluating-old-pm-data/, https://backpicks.com/2018/06/10/aupm- 2-0-the-top-playoff-performers-of-the-databall-era/ Player Impact Plus- Minus (PIPM) https://fansided.com/2018/01/11/nylon-calculus-introducing-player- impact-plus-minus/, https://www.bball-index.com/player-impact- plus-minus/ Box Plus-Minus 2.0 (BPM 2.0) https://www.basketball-reference.com/about/bpm2.html Stable Player Impact (SPI) https://nbacouchside.net/2022/11/05/introducing-nba-stable-player- impact-spi/