有些事情受万众瞩目,它不是说受某一个行业,某一类人,而是全人类。6月份就有一件大事,那就是“世界杯”!
有些热爱足球的小伙伴肯定关心的是比赛的过程、结果,自己喜欢的足球运动员是否能在比赛场上,驰聘风云,大展雄风。然而我们却都知道除此以外,还有些光明正大的足球菠菜存在,对于有些资深的玩家,甚至说给我一百块,我就可以买房。。。(文末三段话,必看!)
你以为你是Python程序员吗?你有科学的依据证明到底谁能胜场,比赛结果是几比几吗?你只能靠经验,比一般人强一点。就跟我听到的一个笑话一样:“世界杯论翻数有1000翻,如果你有三块钱,你买了世界杯,那么你三块钱就没了!”
有数据才可信,Python人工智能预测一波“世界杯”比赛结果。
原理:
第一步:对两个数据集深度分析
第二步:做特征工程用来选择最相关的特征进行预测
第三步:数据处理,选择一个机器学习模型
第四步:把它部署到数据集上
预测的比赛记录:
葡萄牙:
C罗,战神一般的存在。速度、意识,技巧等方面都是顶尖的存在,更加值得尊敬的是年纪这么大却仍然保持一颗不服输的心。葡萄牙队的其它队员也是极强的,对于球机的把握,对于配合方面也是顶尖的,毕竟贵为新科欧洲杯冠军!
西班牙:
经历过失败后,即使走掉了许多优秀的球员,也能够苦思失败的原因,艰难的重组战队,由此看出他们也是不好惹的存在,精神与意志力坚不可摧。各年轻的战队队员呈现崛起之势,成为了“预选赛之王”,谁与争锋?
载入数据集
深度分析
深度分析与特征工程:最费时间的是分析出哪些特征和机器学习模型相关。把目标的差异与结果列添加到结果数据集里面,详细的Python源代码如下:
处理一部分包括仅有尼日利亚参加比赛的数据。有利于我们知道那些国家球队的特色,然后拓展到参加世界杯的其它国家。具体代码如下:
创建一个年份的列表,选择自从1930年创办“世界杯”之后的所有比赛,Python代码如下:
和所有参加比赛的战队合并成一个数据框,代码:
过滤一下结果数据框,显示从1930年起仅在2018年世界杯上的战队,删除无用元素。
Python实现代码:
逻辑回归算法:估计概率,测量分类因变量与一个或多个自变量之间的关系,就是累计物流配送。
建立学习模型:学习怎么用每种数据的形式对游戏结果产生积极,消极等影响游戏结果的程度。给它真实准确的数据,填入其中,你就拥有一个预测以后结果的模型。
将最终数据框传递给逻辑回归算法,Python实现代码:
这样的模型在训练集上的准确率为仅有60%左右的准确率,这肯定不符合我们的要求,我们要进一步训练模型,创建一个数据框,部署我们的模型。
将模型部署到数据集,从把模型部署到小组比赛开始进行比较。代码和结果如下:
【小组赛预测的结果】
时间2:00
小组: 西班牙 、葡萄牙
预测的胜利小组:西班牙
时间18:00
小组: 法国、澳大利亚
预测的胜利小组:法国
时间21:00
小组:冰岛、阿根延
预测的胜利小组: 阿根廷
赛事时间如下图所示:
其实线性回归,我们在高中的数学教材中就学到过,还记得吗?在坐标中,密密麻麻的一些点,让你去寻找它们最相关的一个表达式?所有的点,最接近的哪条线,让你列出表达式,所以Python算法也没想象中的那么难,关键在于你的联想,以及你曾经的知识储备。
既然是最接近那条线,所以只能说预测的结果正确的概率会大一点。那么,你们都懂了,何为预测?表示结果还是不确定的嘛!
原文地址:https://www.cnblogs.com/tzjks/p/9200535.html