信息资讯网,打造专业的新闻资讯网站!

帮助中心 广告联系

信息资讯网

热门关键词: as  新闻  43  www.ymwears.cn  乐技

人工神经网络替代专家投票?NBA大数据揭秘谁是当下MVP(2)

来源:网络整理 作者:新闻资讯网 人气: 发布时间:2018-11-01
摘要:另一种,是寻找数据之间的相关性,探寻数据之间的联系,在经过更深入的工作之后,发现一些影响比赛的因素。例如,我们之前发现,大学球员相比较他们NCAA时期的三分命中率,罚球命中率和他们在NBA的三分水平有着更强

另一种,是寻找数据之间的相关性,探寻数据之间的联系,在经过更深入的工作之后,发现一些影响比赛的因素。例如,我们之前发现,大学球员相比较他们NCAA时期的三分命中率,罚球命中率和他们在NBA的三分水平有着更强的相关性。

MVP的预测就属于第二种,我们通过寻找过去的数据和已知的MVP得主之间的关系,来预测未知的MVP得主的可能。具体如何预测可以分成三大部分:

1.通过对数据的分析来选择能描述数据的模型

2.通过过去的数据来学习得到具体的数学关系

3.通过我们得到的模型,和已有的数据来预测结果

最简单的情况我们可以假设已知的输入为X,而我们想要预测的结果为Y。

人工神经网络替代专家投票?NBA大数据揭秘谁是当下MVP

图上的这些蓝点就是过去已知的一系列数据和结果,这看起来可以用一个简单的线性模型来解释:

Y=a*X+b

根据这些数据,我们可以求出一个具体的a和b来,就是图上的红线,也就是我们所说的具体的数学关系,一个预测模型。这个时候只要知道X,就可以得到Y,而Y很大可能是接近于真实的结果的。下面我们就尽量通俗的来给大家解释这几步在预测MVP上具体是如何操作的。

选择模型

以前面举过的简单的单输入线性模型为例,X是我们的输入,它可以是球员当赛季的场均得分(实际当然不仅仅通过场均得分),Y是我们的输出,也就是我们想要获得的MVP预测结果,这里可以是我们为了结果更贴近现实设计的某个“MVP指数”。那么从直观感觉上来说,场均得分和MVP指数不太可能是这样简单的线性关系,X从场均5分涨到场均10分带来y的变化与x从场均30分涨到场均35分带来y的变化是不一样的,因为如果一个球员场均得分很低,那他的场均得分对最后是否获得MVP几乎不会有什么影响,这样X和Y的关系有可能如下图绿线或者蓝线的非线性形式所示。

人工神经网络替代专家投票?NBA大数据揭秘谁是当下MVP

当然,我们不可能仅仅用一个场均得分就预测MVP,用其他“某一个”数据也是不可能的,这显然应当是一个多输入单输出模型。我们的输入将选择,常用的所有BOXSCORE,也就是常说的基础数据(具体处理的时候场均得分和单位时间得分均会被考虑),也会考虑例如真实命中率,篮板率,助攻率等常见的高阶数据,出勤率,球队胜率自然也会被考虑进去。这里就有一个疑问了:这些数据就能反应球员的价值么?这里我们需要声明一点,我们预测MVP是“记者投票选出的MVP”,而不是我们分析认为“应该夺得MVP”的人,这两者并不相同,我们选取这些数据,而不是采用进行更深入分析的数据,是因为目前而言,绝大部分记者,评论员对数据的理解程度仅止于此,只有少数评论员了解更全面的数据分析方法。

在输出端,我们需要的结果是球员在某一年是否获得MVP,但这样有个问题:每年几百名球员里面只有一个MVP,而且在没有获得MVP的球员里面也会含有MVP的强力竞争者,这样一刀切的划分方法不是特别适合。因此我们定义了一个MVP指数作为问题的输出:

MVP指数=m * 是否获得MVP选票 + MVP得分/当年可能获得的得分

这里面我们通过验证集上的结果选择m=1 。以2015-2016库里全票MVP赛季为例,库里获得了1310分,当年可能的最高得分就是1310分,因此库里当年的MVP评分就是1*1 + 1310/1310 = 2;威少获得了486分,因此威少的MVP评分是1*1 + 486/1310 = 1.371;威金斯没有获得MVP选票,MVP评分就是0。

前面我们已经讨论过,这个预测模型不是一个线性模型,而我们并不清楚具体的非线性的形式,因此我们采用通用性更强的模型——神经网络,这类模型是一种自适应系统,具备学习功能,可以从数据中自动拟合出数据之间关系的具体形式。神经网络的基本结构如下:输入的变量先是通过计算激活中间隐层的神经元,再通过隐层的神经元计算得到最后要预测的输出。实际中使用我们可以调整神经网络的层数和神经元个数。神经网络的表达能力非常强,理论上的分析表明:只要神经元的个数足够多,单隐层的神经网络可以拟合任意形式的函数。

人工神经网络替代专家投票?NBA大数据揭秘谁是当下MVP

训练模型

在确定了模型的具体形式后,我们就可以从已知的数据中去训练模型。如果我们同时知道输入(球员当赛季的数据)和输出(当赛季的MVP投票结果),那我们可以通过调整模型来使得模型在训练集上的预测效果最好。

但这样的过程可能会出现问题,以下图为例:横轴x和纵轴y的关系是线性的(黑线),实际数据有其他随机因素的影响,所以得到的数据如黑点分布所示,这样的话如果我们用很复杂的模型去拟合黑点,总能得到一个模型能完美符合(如蓝线所示),但得到的模型与实际的模型相去甚远,因为模型过分去凑已知的数据点了,这也叫过学习/过拟合。因此我们在实际做的过程中还会通过对模型添加约束等方法来避免。

在这里,我们采用2008年到2018年这十个赛季的数据和MVP投票结果作为已知的训练数据(训练集)来训练模型。

人工神经网络替代专家投票?NBA大数据揭秘谁是当下MVP

评价模型

在我们完成了训练之后,需要一个办法来判断模型是否合理,而在我们建模时是不知道2019年MVP结果的。我们可以用过去赛季的结果来判断预测的效果,但由于过学习的存在,我们不能直接用训练集上的效果来衡量不同模型之间的好坏,例如上图中蓝线对应的非线性模型在训练数据上的表现就比真实的模型要好。更合适的评判方法是把训练数据中划出来一部分作为测试数据,在测试数据上比较各种模型的优劣。

在这里,我们采用的是十折交叉验证的方法:分别保留某一年的数据作为测试集,用其他九年数据来训练,在测试数据上测试结果。比如,我们用2008年到2016年的数据来对模型进行训练,然后用得到的模型来预测2017年的MVP结果,最后和实际的2017年的评选结果来进行对照,验证模型的有效性。应当注意的是,对于神经网络这类比较复杂的模型,另一种常用的方法是把数据切成训练集、验证集和测试集,在训练集上训练,在验证集上决定训练什么时候停止和选择最优的模型结构和大小,在测试集上测试最后结果。而在这次任务中因为选择的结构不算复杂,也为了方便与线性模型比较,我们采用的是上述的十折交叉验证的方法。

责任编辑:新闻资讯网

最火资讯

信息资讯网版权所有

新闻由机器选取每5分钟自动更新

QQ:1453123369