搜狐首页 体育 法医秦明2

手机搜狐

SOHU.COM

用机器学习预测谁将夺得世界杯冠军?附完整代码!

本文授权转自CSDN(公众号ID:CSDNnews)

2018年FIFA世界杯即将拉开帷幕,全世界的球迷都热切地想要知道:谁将获得那梦寐以求的大力神杯?

如果你不仅是个足球迷,而且也是高科技人员的话,我猜你肯定知道机器学习和人工智能也是目前的流行词。

让我们结合两者来预测一下本届俄罗斯 FIFA 世界杯哪个国家将夺冠。

免责声明:请不要以本文为依据投注或做财务决定。如果你非买不可的话,我也没法阻止你,只是如果你中了大奖的话,别忘了我哦:)

以下为译文:

足球比赛涉及的因素非常繁多,我无法将所有因素都融入机器学习模型中。本文只是一个黑客想用数据尝试一些很酷的东西。本文的目标是:

这些目标代表了独一无二的现实世界里机器学习的预测问题,并将解决机器学习中的各种任务:数据集成、特征建模和结果预测。

▌数据

我采用了两个来自 Kaggle 的数据集,我们将使用自 1930 年第一届世界杯以来所有参赛队的历史赛事结果。

FIFA 排名是于 90 年代创建的,因此这里缺失很大一部分数据,所以我们使用历史比赛记录。点击以下链接获取所有数据 :

  • https://www.kaggle.com/martj42/international-football-results-from-1872-to-2017/data;
  • 本文中主要使用的环境和工具有:jupyter notebook、numpy、pandas、seaborn、matplotlib 和 scikit-learn。

首先,我们要针对两个数据集做探索性分析,然后经过特征工程来选择与预测关联性最强的特征,还有数据处理,再选择一个机器学习模型,最后将模型配置到数据集上。

▌让我们开始动手吧!

首先,导入所需的代码库,并将数据集加载到数据框中:

导入代码库:

下一步是加载数据集。通过调用 world_cup.head() 和 results.head() ,务必将两个数据集都加载到数据框中,如下所示:

探索性分析

在分析了两组数据集后,所得的数据集包含了以往赛事的数据——这个新的(所得的)数据集对于分析和预测将来的赛事非常有帮助。

精选