๐Ÿปโฌ‡๏ธ๐Ÿ€

2013-2014 NBA Model Performance

Every ranked model predicted the same 1118 games (2013-11-25 to 2014-06-15, 29 weekly windows) out of sample: each week's games were predicted by models fit only on the season's earlier games.

Model Catalog · Player models

Model Performance Leaderboard

Ranked by full-season AUC. The final week is the season's last 7 played days (3 games, 2014-06-09 to 2014-06-15), predicted from every earlier game: a small sample that shows the latest form.

# Model AUC Acc Brier LogLoss AUC final wk Acc final wk
1 Margin Recency Margin Recency Margin regression with exponential recency weights on newer games. More โ†’ 0.728 65.1% 0.213 0.616 - 100.0%
2 Points Off/Def Recency Points Off/Def Recency Off/def points regression with exponential recency weights. More โ†’ 0.725 65.0% 0.214 0.617 - 100.0%
3 Margin Margin Linear team-strength model fit on point differential instead of binary wins. More โ†’ 0.724 65.9% 0.215 0.619 - 100.0%
4 Points Off/Def Points Off/Def Raw points regression with separate offensive and defensive team parameters. More โ†’ 0.722 64.6% 0.215 0.620 - 100.0%
5 Core Ensemble Core Ensemble Equal-logit blend of Elo, recency BT, recency margin, log-adjusted pyth, and points off/def. More โ†’ 0.720 65.0% 0.213 0.615 - 100.0%
6 Recency Ensemble Recency Ensemble Equal-logit blend of Elo, recency BT, recency margin, log-adjusted pyth, and recency points off/def. More โ†’ 0.720 65.0% 0.214 0.615 - 100.0%
7 Adjusted Context Blend Adjusted Context Blend Chronologically trained component blend with rest and signed venue context. More โ†’ 0.718 64.1% 0.215 0.619 - 33.3%
8 Elo Elo Streaming paired-comparison rating with recency baked into sequential updates. More โ†’ 0.718 65.5% 0.215 0.620 - 33.3%
9 Dynamic Bradley-Terry Dynamic Bradley-Terry Time-evolving paired-comparison model with latent team strength drift. More โ†’ 0.717 64.4% 0.216 0.622 - 100.0%
10 Adjusted Efficiency Adjusted Efficiency Opponent-adjusted efficiency model with separate offensive and defensive components. More โ†’ 0.707 64.2% 0.218 0.625 - 100.0%
11 Log Adjusted Log Adjusted Log-scale adjusted efficiency model that downweights blowout leverage. More โ†’ 0.707 64.2% 0.218 0.625 - 100.0%
12 Bradley-Terry Bradley-Terry Static logistic paired-comparison model with one team strength parameter. More โ†’ 0.706 65.7% 0.218 0.626 - 100.0%
13 Pythagorean Pythagorean Pythagorean win expectation from raw points scored and allowed. More โ†’ 0.705 64.8% 0.226 0.644 - 100.0%
14 Bradley-Terry Recency Bradley-Terry Recency Static Bradley-Terry with exponential recency weights on newer games. More โ†’ 0.705 64.8% 0.218 0.625 - 100.0%
15 Avg Margin Baseline Avg Margin Baseline Predict from simple average scoring margin in the training window. More โ†’ 0.702 64.2% 0.220 0.631 - 100.0%
16 Home Team Baseline Home Team Baseline Always favor the home team with a fixed prior. More โ†’ 0.569 56.9% 0.246 0.686 - 33.3%

Methodology

Out-of-sample windows

  • The season is split into 7-day windows ending on its last played day
  • Each window is predicted by models refit on all earlier games of the season
  • The first window starts after 21 days of games
  • Every model is scored on the same games; a model that cannot predict most of them is listed as not compared

Elo / Bradley-Terry

  • Elo: the published league Elo (preseason priors and carryover where configured), frozen at the window start
  • Bradley-Terry: static logistic fit on the earlier games
  • Recency variants weight games with a 120-day half-life in NCAA leagues (keeping the non-conference games that link conferences) and a 30-day half-life in pro leagues

Pythagorean and margin models

  • Raw, adjusted and log-adjusted Pythagorean from scores; efficiency from box-score possessions
  • Margin: ridge regression on point margin with a learned home advantage
  • Ensembles average the log-odds of five families

Baselines

  • Home Team: the home team wins 60% (50% at neutral sites)
  • Avg Margin: the higher average margin so far wins
  • Models should beat these to add value