森林狼新晋数据分析师Nick Restifo谈篮球数据分析

森林狼新晋数据分析师Nick Restifo谈篮球数据分析

近日,森林狼队宣布他们的团队已经雇用了Dwight Lutz和Nick Restifo作为他们的篮球数据分析师。这篇文章来自Nick Restifo的博客,不仅讲了他对新赛季的预测,还分享了一些他预测的方法。

目前距离NBA 2016-17赛季已经开始了一段时间,卫冕预测冠军Andrew Johnson就在几天前发布了“高可信度”的胜率预测,今天我想发布自己的胜率预测,并聊一聊我是如何预测的。

胜率预测是进行重复性精确度计算的工作。

需要精确的完成适当分配球员价值,预测下一年的球员价值,预测比赛时间以及考虑比赛本身对比赛特性在胜率上的影响,才能使得最终的预测结果更加接近实际结果。甚至即使所有的上述工作都完成的很好,球员突如其来的重大伤病也会对预测结果产生巨大的影响。

为了有趣,我还模拟了10,000次赛季和最终选秀结果,从而估计一个球队最终的胜率范围、选秀抽签的百分比几率以及破某些记录的百分比几率。这些细节都列在下面的列表里面。我还参考了Andrew的胜率预测结果

金州勇士是唯一一支有机会打破胜利记录的球队,并且这个几率非常的大,为21.43%,这得利于这一赛季Kevin Durant (凯文·杜兰特)的加盟。相较于Andrew和Pinnacle,我对俄克拉荷马雷霆队更加的看好。这在一定程度上是因为我们对Russell Westbrook(拉塞尔·韦斯特布鲁克)的评估的差异。BPM-RPM 混合指标将雷霆队去年的优秀表现归功于Russ,但是PT-PM则认为是Durant的功劳。比赛时间在此次评估中也起到了重要的作用。

预测得到的波士顿凯尔特人的未来走势非常有趣。这支球队有99.18%的机会进入季后赛,获胜几率可以高达50%,并且我们预测布鲁克林篮网会与他们交换抽签权,从而使得他们有98.64%的几率确保拿到前10的签。
萨克拉门托国王队的预测结果给了一些我之前没有料想到的信息,但是Andrew和我对他们的预测都远远超过了Pinnacle。对26岁的Boogie基于年龄调整的BPM-RPM 混合指标显示这是使得他们的实际表现比预测结果更好的主要原因。
如果要我选择一个我觉得可能会预测错误的球队,那就是底特律活塞队
Andrew和我对明尼苏达森林狼的预测都偏低,对布鲁克林篮网的预测则偏高。Chris Bosh的受伤会很大程度上影响。费城76人有99.83%的机会可以获得至少一个前十的签,并且有接近44%的机会获得两个。假如他们没有拿到前三的签,他们就会拥有湖人的抽签权。他们还拥有和国王队交换抽签权的权利,尽管这个交换发生的几率非常的小。关于湖人抽签权的一点事实,有一点我们要提到,就是第四顺位的抽签通常对应着联盟垫底队伍的抽签结果。另外对于费城76人,Joel Embiid和Ben Simmons(如果他打的话)是我预测的唯一能表现很好的新秀。新秀的表现通常是不好的。

奥兰多魔术用Oladipo交换了Ibaka,这次交换可能并没有达到球队预期的效果。但是我以前在这件事情上的预测错的很离谱。

 在我追求准确预测胜率的同时,我也尝试了去模仿Andrew在他以前对(职业篮球研讨协会)APBR比赛获胜预测中用于评估球员价值的统计方法。 Andrew已经多次详细的介绍了他的player-tracking plus-minus(球员跟踪加减统计算法),但从本质上来说,球员跟踪加减统计是基于使用球员跟踪统计预测的对多年正则化调整加减 (RAPM)以及多年的RAPM预测结果的回归预测。
 出于不想依赖于别人的研究结果的渴望,并且想像Andrew一样引领我们创新的去发掘竞争优势,我试图用一种更加复杂的方法来评估球员的价值,从而创造我自己的多年RAPM模型,我自己的球员跟踪回归框架,和我自己的预先通知的RAPM。虽然最终的实验结果是比较可信的,但是我发现它的预测能力并不像现在可用的一些统计方法(比如Real Plus-Minus(RPM)和Box Plus-Minus(BPM))那样好,因此我并没有将我自己的方法用于球员价值的计算。在综合样本外测试中我发现,RPM和BPM多年加权混合的统计方法在预测胜率时表现最好,因为这种方法相对于我尝试的其他统计方法始终可以产生最低的误差。
通过现有的球员信息,我可以得到他们以前赛季的RPM和BPM,并且根据历史NBA球员的年龄曲线来调整球员的他们的价值。然而对于新秀我不得不采取另一种方法。为此,我用两种不同的方法估计新秀的价值。首先,我使用了我原始的预测结果,这个结果预测了球员两年的表现峰值,并且适当的将它们调整到我的混合范围中(因为我的原始预测是基于“wins-added”比例),并且使用年龄曲线来减少原始预测价值中球员从生涯高峰到即将到来的新秀年的价值。接着,我创建了一个模型,可以通过第一年的年龄、身高、体重和顺位来预测球员第一年的BPM。我最终对于新秀价值的评估结果是这两种方法得到的结果的平均值。
为了预测球员未来会出场的时间长度,我创建了一个随机森林模型,模型构建使用玩家在过去两年(或一年)的比赛时间长度,以及诸如之前几年的BPM,身高,年龄,体重,经验和顺位等变量。新秀模型的构建遵循相同的方法,但是只使用了年龄、身体特征以及顺位来预测未来会出场的时间长度。接下来我手动调节加入已知伤病案例对预测的影响,并且尽可能准确的评估这些伤病会如何影响受伤球员的出场时间。考虑到模型中的伤病因素包括但不仅限于Chris Bosh, Khris Middleton, and Ben Simmons的伤病情况。当总的预测的球队出场时间长度在球队与球队中不一样的时候,我根据他们预测结果的百分比来调整每个球员的出场时间长度,并且会对出场时间排在前十的球员轮换的增加或者减少出场时间。 
 球员价值的RPM-BPM混合结果以及球员已经出场的分钟数的加和被用来估计每个球队的强弱,而球队力量的差异则被用来基于历史NBA比赛数据训练预测模型。模型的预测因子还包括了比赛的altitude、球队在比赛前的休息时间、以及诸如比赛的时间长度、比赛结果是否对更好的球队或者更坏的球队更有利等交互变量。属性越多方差就越小,这意味着一个很差的球队可以简单的通过减慢比赛进程赢得更多的比赛,这是因为这样减少了更好的球队的比赛机会,而更好的球队是通过比赛变得更好。我测试了几种不同的建模方法来进行比赛的预测,但我发现逻辑回归和梯度提升回归预测得到的效果更好。