v1 為什麼需要重做
WHY v2
G4 RETROSPECTIVE
05·24
WCF · G4
SAT · 2026
馬刺主場 103–82 屠龍。系列 2-2 平手。
Spurs 教練組改變防守策略,不再 double SGA,Castle 單防 + Wemby 護筐,
逼出 SGA 14 投 5 中、TS% 36%,SAS 替補貢獻 51 分,三分 22 投 11 中(50%)。
v1 的問題不是方向 — 給雷霆 53% 在事前是合理的;
問題是模型沒給「客隊輸 21 分」合理的厚度。
固定 σ=12 + 不會更新的整季 SRS,讓尾端機率被低估到 4%(實際 8~10%)。
FINAL · SAS 103 — 82 OKC
五個對症升級
FIVE SURGICAL FIXES
每個都可獨立關閉(A/B 比較)
01
COACHING
ADJUSTMENT
教練調整偵測
detect_coaching_adjustment
G5 影響 +2.42 分
問題
Spurs 教練組在 G4 改變防守策略,不再 double SGA、改 Castle 單防 + Wemby 護筐。v1 完全沒抓到這種戰術質變。
做法
雙向偵測 —「我方剛輸 → 我方教練會調整」、「對方剛贏 → 對方會保持」。觸發訊號:對方三分 >40%、替補爆 >50 分、大敗、must-win。搭配教練品質係數(Popovich 1.00 → Daigneault 0.88 → 平均 0.60)。
adjust_home = α_loss · intensity · Q_coach # 我方剛輸 → 教練會調整
+ α_win_decay · (1 − Q_coach · 0.5) # 對方剛贏 → 動能輕微衰退
intensity = 1.4 if (對方 3P% > 40% or 對方替補 > 50 or 大敗 or must-win) else 1.0
02
BAYESIAN
POWER RATING
Bayesian Power Rating
Normal-Normal conjugate prior
OKC SRS 12.9 → 12.24
問題
v1 用整季 SRS 當固定 prior,沒從系列賽內學習。雷霆例行賽暴打太多弱隊,在 WCF 強度下實質強度應被向下校正。
做法
Normal-Normal 共軛先驗,每場觀察後更新 mean/std。阻尼 0.85 避免單一場 outlier 主宰估計。WCF G1-G4 跑完後 OKC posterior 從 +12.9 校正到 +12.24(實質弱了約 0.7 分)。
μ_posterior = (μ_prior / σ²_prior + damping · Σ μ_obs / σ²_obs)
────────────────────────────────────
(1 / σ²_prior + damping · n / σ²_obs)
σ_prior = 3.0 , σ_obs = 6.0 , damping = 0.85
n = 季後賽觀察場次
03
3P VARIANCE
RISK
三分變異風險(σ 動態化)
margin_std_with_three_pt_risk
σ 12.0 → 12.9
問題
v1 用固定 margin σ = 12 — 但雷霆三分依賴度 41.2%(NBA 第一,聯盟平均 33.3%)。三分球本質高變異,σ 應放寬。
做法
依賴度每超過 NBA 平均 33% 的 1% → σ +0.4。雙方相加。上限 σ ≤ 15。意義:21 分爆冷的機率從 4% 升到 8~10%(更貼近實際)。
σ_game = 12.0 + Σi ∈ {home, away} max(0, 3P%_i − 33.3%) · 100 · 0.4
(上限 15.0)
▸ 互動:調整雙方 3P 依賴度
雷霆 3P 依賴度
41.2%
馬刺 3P 依賴度
36.5%
基礎 σ12.0
雷霆貢獻—
馬刺貢獻—
合成 σ—
P(輸超過 15 分)—
04
ELITE
DEFENDER
Elite Defender 對位
adjust_dpm_for_matchup
SGA DPM 7.5 → 6.38
問題
v1 用整體 DPM,沒考慮「明星球員被誰防」。例:Castle 鎖 SGA、Anunoby 防 Tatum、Wemby 護筐影響半場。
做法
維護 elite defender 清單 — Castle 0.85、Caruso 0.88、Wemby 0.75(防禁區)、Anunoby 0.86 … 被防者 DPM × 折扣。Roles:POG / WING / PROT 三類匹配。
DPM_adjusted = DPM_star × discount_defender
例:SGA 原 DPM = +7.5
被 Castle(discount = 0.85)主防
→ 對位後 DPM = 7.5 × 0.85 = +6.38
差異 = −1.12 分(對雷霆)
05
MUST-WIN
SITUATIONAL
Must-Win 心理係數
must_win_situational_boost
G4 Spurs +3.5 分
問題
v1 對「2-1 落後主場必勝」沒任何反應。但季後賽絕境球隊會超水準發揮,主場羞辱規避(home humiliation aversion)效應顯著。
做法
0-2 / 1-2 落後 +2.5,主場再 +1.0(避免家鄉羞辱)。3-0 / 3-1 領先 −0.5(略放鬆)。2-2 平手 0(雙方無壓力差)。
boost(state, side) = base[state] + homeBonus · 𝟙(落後 ∧ 主場)
base = { "0-2": +2.5, "1-2": +2.0, "1-3": +2.8, "2-2": 0,
"2-3": +2.2, "3-1": −0.5, "3-0": −0.5 }
homeBonus = +1.0
WCF G1–G4 回測
BACKTEST
樣本 n=4(統計顯著性不足,但方向明確)
指標
v1
v2
改善
說明
Brier Score
0.301
0.266
−0.035 ↓
機率預測誤差平方
Log Loss
0.822
0.745
−0.077 ↓
對數損失 / Cross-entropy
方向準確度
50.0%
75.0%
+25 pp ↑
prob > 50% 是否壓對
Avg CLV
+3.1%
+9.1%
+6.0 pp ↑
Closing Line Value
對 2026 冠軍機率的影響
CHAMPIONSHIP IMPACT
Monte Carlo · 100,000 sim
| 球隊 |
v1 估計 |
v2 估計 |
變動 |
備註 |
| OKC 雷霆 |
|
|
−8.1 pp ↓ |
Bayesian SRS 校正 + WCF 變艱難 |
| NY 尼克 |
|
|
+11.8 pp ↑ |
ECF 3-0 接近 lock + 對手變弱 |
| SA 馬刺 |
|
|
−1.8 pp |
WCF 內勝率 9%→18%,但 NYK 搶走份額 |
| CLE 騎士 |
|
|
− |
ECF 0-3,實質已 out |
關鍵教訓
LESSONS LEARNED
LESSON 01
「模型輸了」≠「模型錯了」
v1 在 G4 預測 Spurs 53% → Spurs 真的贏。方向是對的。
評估模型不能看單場,要看跨多場的 Brier / Log Loss / 校準曲線。
LESSON 02
CI 太窄才是真正的問題
v1 給雷霆 53% 看似合理,但「客隊輸 21 分」的機率被低估到 4%。
真正讓人輸大錢的不是方向錯,是沒給 outlier 合理的厚度。
LESSON 03
季後賽不是例行賽延伸
教練、對位、心理在季後賽都會被放大。例行賽 SRS 是好的 prior,
但進系列賽後必須動態 update,而且要納入戰術層的訊號。
LESSON 04
單場結果不是評估標準
Edge 即使 +3 分仍會輸 25% 的時候。要連續記錄至少 50+ 場再下定論。
短期波動是雜訊;長期 CLV 與 Brier 才是訊號。
下一步
ROADMAP
回測樣本只有 4 場 — 統計顯著性不足
01
大樣本回測抓 2024-25 季後賽全部 ~80 場做歷史回測,驗證 v2 升級在多系列賽都站得住
下一個
02
真實對位資料接 NBA player tracking用官方 matchup data 取代手工 elite defender 清單,讓對位係數有數據根據而非主觀判斷
Q3
03
XGBoost Ensemble把 v2 解析模型當作 feature,結合 box score / play-by-play / lineup data,做 stacking ensemble
Q4
04
即時持續追蹤每場 G5–G7 + Finals 完成後,記錄 CLV 與 Brier,公開儀表板。錯了就承認,別藏
持續
誠實邊界 v2 在 4 場樣本上表現比 v1 好,但 4 場不足以宣告勝利。下一個里程碑是把 2024-25 整季 80+ 場季後賽跑完,
若 Brier 還能維持 −0.03 級別的改善,才能說 v2 真的學到東西。
模型升級不會讓投注變零風險 — 它只是讓「合理虧損」的機率分布更貼近真實。
v2 outperforms v1 on a 4-game sample. This is directional evidence, not proof. Full 2024-25 backtest pending.