The debut and popularization of BPM

Home for all your discussion of basketball statistical analysis.
Mike G
Posts: 6144
Joined: Fri Apr 15, 2011 12:02 am
Location: Asheville, NC

Re: The debut and popularization of BPM

Post by Mike G »

I'm happy to be wrong, but I don't see where it is.
If you've already adjusted for the discrepancy between rawSPM and team MOV, then how can it be a valid set of coefficients?
You could just rate players by their minutes (say), adjust for team strength, and you'd have good correlations.
DSMok1
Posts: 1119
Joined: Thu Apr 14, 2011 11:18 pm
Location: Maine
Contact:

Re: The debut and popularization of BPM

Post by DSMok1 »

Mike G wrote:If Moses Malone's BPM are too low by 2 or 3 in many years, his career BPM are too low.
Since there are head scratcher anomalies among players, and the team adjustments can be pretty huge, maybe coefficient changes would make sense.
There will actually be an update to BPM rolling out sometime soon, making the correction for the sqrt(Poss) vs. Poss weighting error that I made in the original regression, plus fixing a few minor bugs mostly effecting the Offense/Defense split coefficients.

Unfortunately for Moses Malone, his numbers don't change. :)

Overall, though, the corrections do seem to improve centers vs other positions a little, but the primary effect is to broaden the overall spread of BPM values somewhat. Also, the value of efficiency went up somewhat, turnovers are worse, and defensive stats are a bit more valuable. So it helps players like Anthony Davis and hurts players like Russell Westbrook somewhat. It's still only minor changes; last season, Anthony Davis goes up 0.8 and Russell Westbrook drops 0.2, and those are about the extremes for the best players.

It also shifts some of centers' value from offense to defense--for example, Manute Bol's offensive values dropped by an average of -0.5, but his defensive values increased by an average of +0.8.

Here are the coefficients and how they're changing:

Code: Select all

╔════════╦═════════════════════╦═══════════╦═════════════════╦════════════════╦════════════╦════════════╗
║ Coeff. ║        Term         ║ BPM Value ║ Variable Format ║ Original Value ║ Difference ║ Percentage ║
╠════════╬═════════════════════╬═══════════╬═════════════════╬════════════════╬════════════╬════════════╣
║ a      ║ Regr. MPG           ║ 0.123391  ║ 48.0            ║ 0.120051       ║ 0.0033     ║ 2.8%       ║
║ b      ║ ORB%                ║ 0.119597  ║ 100.0           ║ 0.137600       ║ -0.0180    ║ -13.1%     ║
║ c      ║ DRB%                ║ -0.151287 ║ 100.0           ║ -0.151938      ║ 0.0007     ║ -0.4%      ║
║ d      ║ STL%                ║ 1.255644  ║ 100.0           ║ 1.144182       ║ 0.1115     ║ 9.7%       ║
║ e      ║ BLK%                ║ 0.531838  ║ 100.0           ║ 0.449468       ║ 0.0824     ║ 18.3%      ║
║ f      ║ AST%                ║ -0.305868 ║ 100.0           ║ -0.310548      ║ 0.0047     ║ -1.5%      ║
║ g      ║ TO%*USG%            ║ 0.921292  ║ .000*100.0      ║ 0.723784       ║ 0.1975     ║ 27.3%      ║
║ h      ║ Scoring             ║ 0.711217  ║                 ║ 0.610605       ║ 0.1006     ║ 16.5%      ║
║        ║   USG%              ║           ║ 100.0           ║                ║            ║            ║
║        ║   TO%               ║           ║ .000            ║                ║            ║            ║
║        ║   TS% & TmTS%       ║           ║ .000            ║                ║            ║            ║
║ i      ║   AST Interaction   ║ 0.017022  ║ 100.0           ║ 0.019936       ║ -0.0029    ║ -14.6%     ║
║ j      ║   3PAr Interaction  ║ 0.297639  ║ .000            ║ 0.380536       ║ -0.0829    ║ -21.8%     ║
║ k      ║   Threshold Scoring ║ 0.213485  ║                 ║ 0.269667       ║ -0.0562    ║            ║
║ l      ║ sqrt(AST%*TRB%)     ║ 0.725930  ║ 100.0*100.0     ║ 0.691501       ║ 0.0344     ║ 5.0%       ║
╚════════╩═════════════════════╩═══════════╩═════════════════╩════════════════╩════════════╩════════════╝
and

Code: Select all

╔════════╦═════════════════════╦═══════════════╦═════════════════╦════════════════╦════════════╦════════════╗
║ Coeff. ║        Term         ║ O/D BPM Value ║ Variable Format ║ Original Value ║ Difference ║ Percentage ║
╠════════╬═════════════════════╬═══════════════╬═════════════════╬════════════════╬════════════╬════════════╣
║ a      ║ Regr. MPG           ║ 0.064448      ║ 48.0            ║ 0.059270       ║ 0.005178   ║ 8.7%       ║
║ b      ║ ORB%                ║ 0.211125      ║ 100.0           ║ 0.197487       ║ 0.013638   ║ 6.9%       ║
║ c      ║ DRB%                ║ -0.107545     ║ 100.0           ║ -0.102144      ║ -0.005401  ║ 5.3%       ║
║ d      ║ STL%                ║ 0.346513      ║ 100.0           ║ 0.322082       ║ 0.024431   ║ 7.6%       ║
║ e      ║ BLK%                ║ -0.052476     ║ 100.0           ║ -0.062684      ║ 0.010208   ║ -16.3%     ║
║ f      ║ AST%                ║ -0.041787     ║ 100.0           ║ -0.088460      ║ 0.046673   ║ -52.8%     ║
║ g      ║ TO%*USG%            ║ 0.932965      ║ .000*100.0      ║ 0.798831       ║ 0.134134   ║ 16.8%      ║
║ h      ║ Scoring             ║ 0.687359      ║                 ║ 0.606303       ║ 0.081056   ║ 13.4%      ║
║        ║   USG%              ║               ║ 100.0           ║                ║            ║            ║
║        ║   TO%               ║               ║ .000            ║                ║            ║            ║
║        ║   TS% & TmTS%       ║               ║ .000            ║                ║            ║            ║
║ i      ║   AST Interaction   ║ 0.007952      ║ 100.0           ║ 0.011822       ║ -0.003870  ║ -32.7%     ║
║ j      ║   3PAr Interaction  ║ 0.374706      ║ .000            ║ 0.430225       ║ -0.055519  ║ -12.9%     ║
║ k      ║   Threshold Scoring ║ -0.181891     ║                 ║ -0.126574      ║ -0.055317  ║            ║
║ l      ║ sqrt(AST%*TRB%)     ║ 0.239862      ║ 100.0*100.0     ║ 0.262148       ║ -0.022286  ║ -8.5%      ║
╚════════╩═════════════════════╩═══════════════╩═════════════════╩════════════════╩════════════╩════════════╝
Developer of Box Plus/Minus
APBRmetrics Forum Administrator
Twitter.com/DSMok1
DSMok1
Posts: 1119
Joined: Thu Apr 14, 2011 11:18 pm
Location: Maine
Contact:

Re: The debut and popularization of BPM

Post by DSMok1 »

Mike G wrote:I'm happy to be wrong, but I don't see where it is.
If you've already adjusted for the discrepancy between rawSPM and team MOV, then how can it be a valid set of coefficients?
You could just rate players by their minutes (say), adjust for team strength, and you'd have good correlations.
I think it's actually more valid this way. If you're going to be applying a team adjustment anyway, like all SPM systems do, the coefficients should yield better final estimates if you include the team adjustment in the derivation of them directly.
Developer of Box Plus/Minus
APBRmetrics Forum Administrator
Twitter.com/DSMok1
colts18
Posts: 313
Joined: Fri Aug 31, 2012 1:52 am

Re: The debut and popularization of BPM

Post by colts18 »

dsmok1, did you look to test new variables in this version of BPM?
DSMok1
Posts: 1119
Joined: Thu Apr 14, 2011 11:18 pm
Location: Maine
Contact:

Re: The debut and popularization of BPM

Post by DSMok1 »

colts18 wrote:dsmok1, did you look to test new variables in this version of BPM?
Not really, this is a bugfix patch. Probably wouldn't change formulation until after the season if at all. I did look at a few things and couldn't find anything worth changing on first look.
Developer of Box Plus/Minus
APBRmetrics Forum Administrator
Twitter.com/DSMok1
colts18
Posts: 313
Joined: Fri Aug 31, 2012 1:52 am

Re: The debut and popularization of BPM

Post by colts18 »

DSMok1 wrote:
Not really, this is a bugfix patch. Probably wouldn't change formulation until after the season if at all. I did look at a few things and couldn't find anything worth changing on first look.
Have you ever looked at % of team games played as a variable?
DSMok1
Posts: 1119
Joined: Thu Apr 14, 2011 11:18 pm
Location: Maine
Contact:

Re: The debut and popularization of BPM

Post by DSMok1 »

colts18 wrote:
DSMok1 wrote:
Not really, this is a bugfix patch. Probably wouldn't change formulation until after the season if at all. I did look at a few things and couldn't find anything worth changing on first look.
Have you ever looked at % of team games played as a variable?
Not yet. Would behave oddly, since for most players that's simply a measure of being hurt.

MPG is regressed with 4 games of 0 MPG to fix outliers who play in few games, so that takes games played into account to some extent.
Developer of Box Plus/Minus
APBRmetrics Forum Administrator
Twitter.com/DSMok1
colts18
Posts: 313
Joined: Fri Aug 31, 2012 1:52 am

Re: The debut and popularization of BPM

Post by colts18 »

DSMok1 wrote:
Not yet. Would behave oddly, since for most players that's simply a measure of being hurt.

MPG is regressed with 4 games of 0 MPG to fix outliers who play in few games, so that takes games played into account to some extent.
A measure that is a proxy for a player being hurt might help the BPM. Injuries make players weaker. Injuries could be correlated with less athleticism and less defense. How did you come up with 4 games of 0 MPG? Through regression?

Have you looked at Games started for a proxy of opponent quality? Starters play tougher opponents so BPM should adjust for that. MPG does that to an extent, but GS correlates with playing tougher opponents.
Crow
Posts: 10536
Joined: Thu Apr 14, 2011 11:10 pm

Re: The debut and popularization of BPM

Post by Crow »

That is a lot of changes. Most not big but 15 changes of 8% or more.

How much does it change the performance measure?
DSMok1
Posts: 1119
Joined: Thu Apr 14, 2011 11:18 pm
Location: Maine
Contact:

Re: The debut and popularization of BPM

Post by DSMok1 »

Crow wrote:That is a lot of changes. Most not big but 15 changes of 8% or more.

How much does it change the performance measure?
Not a whole lot. Improves regression fit by like 1.5%. It's just fixing the bugs/errors, really.

Because of how many of the stats are correlated, most of the changes effectively offset one another. Standard deviation of actual player BPM changes is 0.26 points, which isn't a whole lot. So 66% of players see their BPM change by less than 0.26.
Developer of Box Plus/Minus
APBRmetrics Forum Administrator
Twitter.com/DSMok1
bchaikin
Posts: 307
Joined: Thu May 12, 2011 2:09 am

Re: The debut and popularization of BPM

Post by bchaikin »

No one makes the list for 1983; Moses doesn't make the list at all.

Unfortunately for Moses Malone, his numbers don't change.


fwiw, simulation shows that on a 40 min/g and 82 game basis, malone's 82-83 season generates wins at the same high rate as the best seasons of either shaquille o'neal, hakeem olajuwon, or kareem abdul-jabbar (77-78 and later). malone's 78-79 season is also not far off, just 1-2 wins less. the only C with better win generating seasons (77-78 and after) on a 40 min/g and 82 game basis is david robinson...

i find it hard to believe any rating system that shows malone not as the best player on the 76ers in 82-83, let alone the best player in the league that year. aside from the numbers he was also league mvp in a landslide vote and was named to the all-D 1st team...
Mike G
Posts: 6144
Joined: Fri Apr 15, 2011 12:02 am
Location: Asheville, NC

Re: The debut and popularization of BPM

Post by Mike G »

DSMok1 wrote:
Mike G wrote: If you've already adjusted for the discrepancy between rawSPM and team MOV, then how can it be a valid set of coefficients?
You could just rate players by their minutes (say), adjust for team strength, and you'd have good correlations.
I think it's actually more valid this way. If you're going to be applying a team adjustment anyway, like all SPM systems do, the coefficients should yield better final estimates if you include the team adjustment in the derivation of them directly.
Unfortunately for Moses Malone, his numbers don't change.
It doesn't matter to Moses; it's unfortunate for BPM and what it purports to tell us.
I get pretty good correlations between eWins and pythagorean wins, with no separate team adjustment. If we're looking for players' stats to tell us how good they are, why would you rely so heavily on team adjustments to make them resemble their true values?

Team and opponent rates are already integral to advanced stats like Reb%, Ast%, etc. Shouldn't you allow player contributions at this level to more fully explain player value? And wouldn't you expect these values to sum to pretty close to the team's strength?

Maybe a better team adjustment is a necessary first step. A poor match between rawSPM and team SRS is indication that someone's not getting their due. Prime suspects would be those getting the most minutes.
DSMok1
Posts: 1119
Joined: Thu Apr 14, 2011 11:18 pm
Location: Maine
Contact:

Re: The debut and popularization of BPM

Post by DSMok1 »

Mike G, I have not even tested raw SPM vs. RAPM. I'm not sure how good the correlation is. My intent was never to do it that way, but since all SPM systems use both hahalves of the approach my objective was always to make the total, the combined result from both parts of the analysis, to be its best against RAPM. And you yourself have said how well BPM does track against RAPM. That was my only objective, not trying to make the raw SPM component be maximized against RAPM.
Developer of Box Plus/Minus
APBRmetrics Forum Administrator
Twitter.com/DSMok1
Mike G
Posts: 6144
Joined: Fri Apr 15, 2011 12:02 am
Location: Asheville, NC

Re: The debut and popularization of BPM

Post by Mike G »

RAPM correlates better to BPM than to PER, WS, or eW. But eWins doesn't make a separate adjustment for the team; it stands on its own player-statistical merits.
I used to 'force' eWins to match up to team strength, via a post-hoc adjustment; but that felt like cheating. Rather, force the coefficients and parameters to match eWins to team strength.

I'm just looking at possible ways to iron out some of the 'kinks' that appear to hamper BPM. RAPM seems kinky, too, but that may just be dissonance with perception: I don't believe Nick Collison is better than Kevin Durant, and at some level I don't want a system that makes that conclusion.

I'm also baffled at how you could dynamically vary hundreds of 'team adjustments' along with your statistical parameters. Is there a formula that anticipates these values?
DSMok1
Posts: 1119
Joined: Thu Apr 14, 2011 11:18 pm
Location: Maine
Contact:

Re: The debut and popularization of BPM

Post by DSMok1 »

Mike G wrote:RAPM correlates better to BPM than to PER, WS, or eW. But eWins doesn't make a separate adjustment for the team; it stands on its own player-statistical merits.
I used to 'force' eWins to match up to team strength, via a post-hoc adjustment; but that felt like cheating. Rather, force the coefficients and parameters to match eWins to team strength.

I'm just looking at possible ways to iron out some of the 'kinks' that appear to hamper BPM. RAPM seems kinky, too, but that may just be dissonance with perception: I don't believe Nick Collison is better than Kevin Durant, and at some level I don't want a system that makes that conclusion.

I'm also baffled at how you could dynamically vary hundreds of 'team adjustments' along with your statistical parameters. Is there a formula that anticipates these values?
There are some kinks with even 14 year RAPM for sure, but since we've only got 10 or 11 degrees of freedom and 900+ observations, hopefully the oddities mostly balance out. I agree, also, that there are some quirks with BPM's ratings for guys like Moses; it probably has a lot to do with how basketball was somewhat different then. That said, I'm really encouraged by how well BPM behaved historically in this analysis: http://blog.numbercrunch.in/backtesting ... d-metrics/ . It's almost as good in 1990 as now!.

I'd rather let the team adjustment be a bigger part, rather than risk, say, the regression overweighting blocks and steals to try to account for good defensive teams. If most of the defense is other things, and blocks and steals don't correlate that well with actual defensive quality, I don't want to overweight them.

As for the algorithm.... well, it does do it. Fun with Solver gymnastics and a powerful computer. Takes like 15 or 20 minutes to run a single regression model.
Developer of Box Plus/Minus
APBRmetrics Forum Administrator
Twitter.com/DSMok1
Post Reply