哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

想必篮球爱好者们都非常关注今年的NBA季后赛,MVP的奖项投票结果尚未出炉,但估计各家球迷们心中各有定论了。所以我们来用机器学习预测一下今年MVP奖项的结果。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

哈登(James Harden)和字母哥(Giannis Antetokounmpo)

收集数据

我找到了1968-69赛季每个赛季的篮球参考数据,但是我只使用了1980-81赛季的数据,这是第一个媒体投票的赛季,在此之前是由球员投票的。下面是2015-16赛季数据的一个例子。

这是第一个也是迄今为止唯一一个被一致投票选为MVP的球员案例(每个投票者都给了他第一名投票)。

除了上表中的数据外,我还搜索了一些不可用的数据的配置文件。例如BPM、PER、TS%在后面的部分中的更多信息。

但我建议您不要再次抓取它,因为数据已经被检索,可以在我的 Basketball_Analytics/mvp_votings.csv at master · danchyy/Basketball_Analytics · GitHubNBA MVP votings through history | Kaggle中找到。

定义问题

有了这些数据,需要定义将要解决的问题。由于这是一项排名任务,所以没有任何现成的算法可以解决这个问题。我将试着通过回归问题来简化这个问题。

我们任务的目标值将是上表中的Share列。这个数字总是在0到1之间,代表每个参与者在投票中赢得的点数。

由于数据结构的方式,我们基本上试图模拟媒体如何投票给本赛季的球员。 当然,回归对于解决这样的问题非常有用,但这里的问题在于极不平衡的数据。在奖励份额值的直方图上,您可以看到超过一半的示例介于0.0和0.2之间,这可能会导致模型出现问题。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

功能和特征选择

在开始训练和验证模型之前,来解释一下这些简单的功能选择过程。

pts_per_g、ast_per_g、trb_per_g、stl_per_g、blk_per_g是简单的统计数据。每场比赛得分、助攻、篮板、抢断和盖帽。mp_per_g代表每场比赛的分钟数,win_pct代表球队的胜率(一个赛季有82场比赛,所以这个值代表games_won除以games_total)。

Fga、fg3a、fta是投球数,尝试投中三分球和罚球,fg_pct、fg3_pct、ft_pct代表投篮命中率、三分球命中率和罚球命中率。

现在我们来看一些高级统计数据。

PER代表玩家效率等级,基本上是所有正面和负面简单统计数据的计算。

BPM代表Box Plus Minus,是评估球员质量和对球队贡献的高级统计数据。与PER相比,它需要更多基于团队的统计数据。

TS_PCT是True Shooting Percentage,代表投篮命中率。计算方法相当简单(实际上包含在上面的统计数据中)。这是公式:

PTS /(2 *(FGA + 0.44 * FTA))* 100

USG_PCT是使用百分比的缩写,是球员在球场上使用的球队比赛的估计值。以下是计算。

最后,WS和WS_per_48代表贡献率和每48分钟的贡献率。该统计数据试图将团队成功划分给团队成员。

特征选择

目前我们所谈到的统计数据看起来非常相似,,因此我们继续进行几个特征选择过程,以避免出现问题。

第一个是使用互信息找出变量之间的关系,这是通过使用sklearn的特征选择包完成的。

ws:0.2884 
per:0.2811 
ws_per_48:0.2592 
bpm:0.2013 
pts_per_g:0.1482 
usg_pct:0.1053 
win_pct:0.0973 fta 
:0.0948 
ts_pct:
0.0872 fga:0.0871 
trb_per_g:0.0695 
mp_per_g:0.0668 
fg3a:0.0355 
ft_pct:0.0311 
ast_per_g:
0.0279 stl_per_g:0.0139 
fg_pct: 0.0089 
blk_per_g:0.0066 
fg3_pct:0.0000

然后使用随机森林分类器,对随机森林实例进行拟合,找出模型最重要的特征。

ws:0.3911 
win_pct:0.1326 
per:0.0938 
bpm:0.0537 
ws_per_48:0.0428 
fga:0.0368 
usg_pct:0.0310 
ft_pct:0.0263 
ast_per_g:
0.0253 mp_per_g:
0.0251 fg_pct:0.0231 
fta:0.0213 
pts_per_g:
0.0183 fg3_pct:0.0159 
ts_pct:0.0155 
trb_per_g:
0.0153 blk_per_g: 0.0118 
stl_per_g:0.0103 
fg3a:0.0101

最后,我们看得到了特征之间的相关性矩阵。这帮助非常大,因为能够可视化那些功能非常相似,从而带来重复的信息。在某些情况下这些信息对模型没有帮助。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

在上一个图像,您可以查看数据集中所有要素之间的相关性。之后,删除那些高度相关的或基本上代表同一事物的特征,或者可以通过一些标量乘法来表示。

通过上面描述的几个描述的程序和统计定义,将这些特征减少到以下最终特征:

ts_pct 
bpm 
mp_per_g 
pts_per_g 
trb_per_g 
ast_per_g 
stl_per_g 
blk_per_g 
ws 
win_pct

虽然它们之间仍然存在一些相关性,但我们还是使用这些功能,因为它们可能是最合适的。我试着用所有的特性来运行实验,结果导致速度非常慢,结果也更糟,这意味着特性选择是有意义的。

训练和验证

通过使用所有赛季的数据来实现交叉验证,以这种方式训练每个模型并平均每个赛季的结果。

我们使用的指标是回归的均值误差,以得到媒体投票的准确表述。同时我们也对结果进行了排序并测量了排名的准确性,将其用作辅助指标。

对于回归,我使用了以下模型:

  • 线性回归
  • 岭回归
  • 梯度增加回归量
  • 随机森林回归量
  • SVR

我用上面描述的方法用正则和多项式特征(多项式2次和3次)进行实验。在训练过程中,我对0和1之间的数据进行了实验,没有缩放数据,结果并没有太大的差异。

通过梯度增强回归器得到了最佳的结果,该模型保持了前6位(有些模型具有不同的参数或不同程度的多项式)。

完整的结果可以在我的GitHub存储库中看到,它们被放在三个名为reg_results_mse_ordered的文件中。txt, reg_results_sorted_top_1。txt和reg_results_sorted_top_5.txt。

预测2018-2019赛季

最后,这是本赛季的预测。首先展示几个回归模型的结果,这些模型在所有验证分割中具有最佳的均方误差。

梯度增加回归量

该模型具有50个估计量和0.1个学习率,具有二次多项式特征。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

梯度增强回归变量的其他变化也有类似的结果,其中以哈登为首位。此外,markdown pdf转换器非常笨拙,而且会将字母分隔开来(我用markdown创建了一个表,并将其转换为pdf)。

随机森林回归量

该模型具有50个估计量,仅具有交互的第三度多项式特征。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

但是对于一些不同的参数,如100个估计量和只有交互作用的多项式特征的二阶,结果会有所不同。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

Ridge

Ridge是一个正则化的线性回归。值为10且多项式特征为2次的最佳结果。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

线性回归

现在们也使用了正态线性回归,MSE对这个模型非常有用,结果也却相当有趣。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

由于没有正则化,模型可能对一些特征进行了过度拟合,得到了这些结果。这是鲍威尔和乔丹唯一一次进入前五名,所以他们被排除在了下一节的图表之外。

支持向量回归

这是支持向量机的变体,用于回归。 以下是C = 100和γ= 0.001的模型结果。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

此外,由于所有模型都是回归模型,它们当然可以超过值,并超过最大值1.0。即使这并不理想,但由于我们最重要知道的是排名,所以就暂且忽略这一点吧。

2018-19赛季预测

在下图中,您可以根据按MSE指标排序的前50个模型查看前10名球员中每个人的平均得分。

哈登vs字母哥,看AI怎样预测今年NBA最有价值球员!

哈登和字母哥非常接近,但哈登略占优势。约基奇保持第三的位置。其他人的分数都相对类似,实际上会比这要小得多。

结论

通过本文,我们预测出NBA 2018-2019赛季MVP得主是哈登!但是字母哥也有令人惊艳的表现,媒体很有可能会更偏向于他。

Image placeholder
Maisx777
未设置
  29人点赞

没有讨论,发表一下自己的看法吧

推荐文章
阿里达摩院 vs Gartner:2020 科技趋势预测,你更信谁?

信息革命、移动互联网革命尚未落幕,智能革命又像一头大象一样撞进人类的生活,激荡着整个世界。任何足够先进的科技,初看都与魔法无异,但魔法背后是对规律和趋势的洞悉。2020年初,阿里巴巴旗下达摩院发布了2

css字体样式怎么取消

css字体样式不能够取消,只能够覆盖,具体的操作如下:例如有下面这样一段超级个性的css:p{ color:red; font-size:22px; font-style:italic; font-w

93.7% 的程序员!竟然都不知道 Redis 为什么默认16个数据库?

▍导读在实际项目中Redis常被应用于做缓存,分布式锁、消息队列等。但是在搭建配置好Redis服务器后很多朋友应该会发现和有这样的疑问,为什么Redis默认建立了16个数据库,如下图所示。椐调查发现:

新突破!人工智能会根据你的声音来预测你的长相

麻省理工学院的研究人员发明了一种新的人工智能,它实现了一项惊人的成就:仅通过分析一个人声音的短片段,它就能重建他们在现实生活中的样子。人工智能的预测结果并不完美,但总的来说还是相当不错的,这项研究也是

对2020年Linux和开源的5个大胆预测

在这篇文章中,omgubuntu网站列出了对2020年Linux的5个预测,大家也来预测下会不会实现。2020年Linux预测预测1:Linux设备的爆炸式增长好的,因此建议我们明年看到大量新的Lin

价值100亿美元!微软刚刚击败亚马逊,拿下美国国防部十年云计算基建订单

大数据文摘授权编译自《纽约时报》编译:李雷、曹培信、刘俊寰为期10年,价值100亿美元。经过长达一年的竞标,微软接连击败了谷歌、IBM、Oracle和亚马逊,拿下了美国国防部云计算这宝贵的一单。上周五

Gartner:到2021年AI将创造2.9万亿美元商业价值

根据Gartner周一发布的报告显示,到2021年,人工智能将创造2.9万亿美元的商业价值,创造全球62亿小时的工人生产力,人工智能(AI)即将进入回报期。而在不久之前,“人工智能寒冬论”还曾不绝于耳

jquery如何进行字母大小写转换?

jquery如何进行字母大小写转换?1、大写转小写$('#in').val().toLowerCase()2、小写转大写$('#in').val().toUpperCase()使用案例:输入框失去焦点

AWS vs K8s 是新时代的 Windows vs Linux?

作者:IanMiell是开源程序员、演讲师、作家和博客写手以前……如果你与我一样,年过四十,又在IT行业工作,恐怕还记得每个人使用Windows,一小群但越来越多的人在业余时间埋头编译Linux的年代

双11、TPC-C?OceanBase的征程在哪里?

蚂蚁金服自研的分布式关系数据库OceanBase登顶TPC-C一个月后,便迎来了2019年双11大考,团队相信“TPC-C只是双11的虚拟预演,双11才是一次真实场景的TPC-C。”OceanBase

对话OceanBase资深总监韩鸿源:数据库是技术能力,云是使用方式,两者不应是竞争关系

5月10日,在第十届中国数据库技术大会(DTCC2019)上,蚂蚁金服的金融级分布式关系数据库OceanBase2.0,在经过200名数据库领域三年以上的从业者投票和专业评委的评选下,高分荣获了“年度

如何理性看待蚂蚁金服OceanBase刷新TPC-C纪录

OceanBase这两天霸屏朋友圈!一派是浮夸的宣传,超越Oracle,世界第一,过度解读,全面否定对手,引起了技术圈内人士的反感,因为刷新TPC-C纪录并不能说明OceanBase现在就超越了Ora

TPC-C解析系列02_OceanBase如何做TPC-C测试

导语:蚂蚁金服自研数据库OceanBase登顶TPC-C引起业内广泛关注,为了更清楚的展示其中的技术细节,我们特意邀请OceanBase核心研发人员对本次测试进行技术解读,共包括五篇:1)TPC-C基

OceanBase数据库创始人阳振坤分享征战6088万tpmC的艰辛之路

前言:中国人民大学常被誉为是“中国人文社会科学的最高学府”,其实人民大学也是“中国数据库的发源地”。由中国人民大学教授萨师煊与王珊合作编写的《数据库系统概论》是国内第一部系统阐明数据库原理、技术和理论

分布式存储时代,横空出世的OceanBase

数据,被誉为新时代的石油。几乎任何一个企业的IT管理者,都会在演讲、采访或其他形式的交流分享中强调数据的重要性。获取洞察、行为预测、市场分析、业务转型升级……数据能够为企业带来巨大的商业价值。但与此同

Nginx 配置常用参数,看这一篇就够了

最近在全面学习Nginx,当作笔记了,如有错误,欢迎指出或深入交流。 主模块 #配置用户或者组,默认为nobodynobody。 #userwwwwww; #Nginx开启的worker进程数,

Nginx 配置常用参数,看这一篇就够了

主模块 #配置用户或者组,默认为nobodynobody。 #userwwwwww; #Nginx开启的worker进程数,建议为CPU的核数 #worker_processes2; #指定ngi

从reddit的一亿美元商业逆袭,看移动与PC产品的时代天堑

提起有“互联网头版”之称的reddit,你会联想到什么?想到这一网站上层出不穷的搞笑梗或meme图?还是程序员们经常制造出的各种有趣小发明?说起来在这个体量巨大、包容性极强、时刻制造着互联网新热点的论

从词袋到transfomer,梳理十年Kaggle竞赛,看自然语言处理的变迁史

大数据文摘出品来源:medium编译:LYLM、胡笳自2010年创办以来,Kaggle作为著名的数据科学竞赛平台,一直都是机器学习领域发展趋势的风向标,许多重大突破都在该平台发生,数以千计的从业人员参

互联网大佬学历、背景大揭秘,看看是你的老乡还是校友

作者:徐麟,某互联网公司数据分析狮,个人公众号数据森麟(id:shujusenlin)前言 互联网作为一个快速发展的新兴领域,聚集了大量的优秀人才,前沿技术的广泛应用也不断地为互联网注入着新的活力。能

Go编程语言教程_1.4. Go vs C++

C++是一种通用编程语言,如今已广泛用于竞争性编程。它具有命令式,面向对象和通用编程功能。C++在Windows,Linux,Unix,Mac等许多平台上运行Go是一种过程编程语言。它由Google的

Go编程语言教程_1.5. Go vs Java

Go是一种过程编程语言。它由Google的RobertGriesemer,RobPike和KenThompson于2007年开发,但于2009年作为一种开放源代码编程语言发布。程序通过使用软件包进行组

PHP-FPM vs Swoole

前几天看见有几篇讲swoole的文章,今天我也来凑个热闹。水平有限,细节理解可能不到位,欢迎大家帮我补充、纠正。 PHP-FPM 早期版本的PHP并没有内置的WEB服务器,而是提供了SAPI(Serv

defer vs return

defer看起来与try...catch类似,其实有许多不为人知的小技巧 defer官方行文defer先进后出,对return进行一些扫尾工作。这意味着使用该函数在返回值之前,defer函数内是可以

漫画 | 面试的我 VS 真实的我

作者:纯洁的微笑、孤独烟漫画师:栗子“面试造火箭,入职拧螺丝!”已经是各大互联网公司招聘的常态,为了应对如今越演越烈的面试形势,程序员一个个都变成了表演大师。俗话说面试如戏,全靠演技!HR篇01020