Comparing NBA Stars to their Statistical Contemporaries: An Application of Machine Learning

Golden State Warriors' Stephen Curry reacts after making a 3-point shot against the Chicago Bulls during the second half of an NBA basketball game Friday, Nov. 20, 2015, in Oakland, Calif. Warriors won 106-94. (AP Photo/Tony Avelar)

It’s human nature to compare, and nowhere is that tendency more present than with sports. We have an almost debilitating dependency on analyzing players by comparing them to others. And well, if we’re gonna do that, may as well do it in as informed a way as possible. Men lie, women lie, numbers don’t.

I’m in a machine learning class currently, and one of the techniques for classification we’ve learned is the K-Nearest Neighbors algorithm. At a high level, we have data points (player seasons, i.e. Kobe in 2007-08). Those data points are multidimensional, with each dimension representing a feature of that data point (i.e. points per 36 minutes, FG%). How KNN works is almost overly simplistic, but very powerful. It simply classifies an observation by trying to find the class of data points whose features are in total the shortest “distance” away from the test observation and appear the most frequently. In other words, if there are 4 different classes of data (A, B, C, and D), in order to classify a test observation, we’re going to try to find the 10 data points with the most similar features, and then classify based on which class is represented most among those 10 data points. Among the K nearest neighbors, which class appears most frequently?

This translates very well to basketball. Thanks to Basketball Reference, I compiled a table of players who had all star seasons in the modern era (since the advent of the 3 point shot). I kept 16 statistics: true shooting %, free throw %, effective field goal %, 3 point %, 2 point %, points per 36 minutes, personal fouls per 36, turnovers per 36, blocks per 36, steals per 36, assists per 36, defensive rebounds per 36, offensive rebounds per 36, free throw attempts per 36, 3 point attempts per 36, and 2 point attempts per 36. Of course, you can use any set of stats you want, but I went with these 16 to give a good blend of playing style and effectiveness. To note, these stats bias towards offense rather than defense. I normalized all the data, so that no one feature would be weighted more heavily than the other (i.e. just because the numbers are bigger, that points don’t have more impact than steals) and then ran K-Nearest Neighbors on 7 test cases from their most recent 2015-2016 regular seasons: Andre Drummond, Anthony Davis, Damian Lillard, Giannis, Karl-Anthony Towns, King Kristaps, and Steph Curry.

The results were compiled into radar charts with each test player being compared to the 3 players with the most similar stats as picked by KNN. The test player’s stats are represented in a filled in yellow shade, while the 3 closest comparison players are represented as 3 different color outlines. Basically, when looking at the charts below (click to expand), how well were we able to color between the lines? It allows us to see how these players match up to their most similar statistical contemporaries. The results led to some revelatory and some not so revelatory observations.

For starters, Andre Drummond’s historically bad free throw shooting still sticks out. Even after normalizing, Drummond is miles worse than even the 3 players most similar to him – Shaq, Duncan, and Dwight Howard. In a lot of ways, these comparisons make sense. Shaq and Dwight were two of the most physically gifted centers of their era, just like Drummond. Anthony Davis meanwhile, gets Kevin Garnett as one of his comparisons. This should come as no surprise, considering that Garnett has been noted as one of the closes comps for AD all along. Damian Lillard though, got two shooting guards (albeit two of the best in history) and a small forward as his comparisons. And this says more about the compared players than it does about Lillard, a point guard. Ray Allen and Joe Johnson were underrated playmakers (“Iso Joe” shouldn’t obscure Joe Johnson’s numerous gifts). In their primes, the offense could flow through them. Giannis is a total freak. KNN classified him as Kevin Garnett (a prototype F/C hybrid with shooting touch), Paul Millsap (noted for his ability to play the role of a swiss army knife at any front court position), and Brad Miller (!). Another note: Giannis has the most rounded radar chart of all our test players. It just serves to highlight the balance and versatility the Greek Freak brings to the court.

The two rookies were an interesting case study in and of themselves. Whereas Towns got compared to Robert Parish, Pau Gasol, and Bill Laimbeer, Porzingis got compared to Jermaine O’ Neal (forever underrated in his prime), David West, and Marc Gasol. So whereas Towns got three Hall-of-Fame caliber players, Kristaps got players who were very good, excellent in their own right, but just a tier under that all-timer level. And that’s in line with what a lot of smart basketball people have been saying this season. Porzingis is awesome, no doubt, but Towns should be a unanimous pick for Rookie of the Year. We haven’t seen someone play the position like that as a rookie since Tim Duncan.

And then there’s the game-breaking, video game Steph Curry. KNN compared Curry to Kevin Durant, James Harden, and Reggie Miller, three of the most prodigious offensive talents to ever pick up a basketball. Not only were those his comparisons, Curry’s radar chart definitely did not stay within the bounds of those comps. His 3-point volume is greater, and with better shooting efficiency, scoring output, and playmaking ability than Durant, Harden, or Miller. Tinker with the algorithm’s parameters a bit, and I also got LeBron James at one point.

Truly, we are all witness. Steph Curry is a goddamn wizard, and of that there is no doubt.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s