由于本人是个足球迷,前段日子Google利用自己云平台预测世界杯八进四的比赛并取得了75%的正确率的事情让我振动不小。虽然这些年一直听说大数据的预测和看趋势能力如何如何强大,但这次的感受更加震撼,因为世界杯是很多人都在关注并尝试去预测的比赛,Google云平台在这个时候站出来预测比赛无疑很让人充满期待。

当然有件事情必须要讲的是,世界杯从来都是冷门出现在小组赛最多,而进入淘汰赛之后就越来越少,所以Google在八进四才开始预测无疑是件很讨巧的做法。不过不管怎么说,靠大数据预测小概率事件本来就非常难,能预测对大多数非冷门已经非常不容易了。

还有一会巴西对德国的比赛才开始,所以刚刚抓紧时间看了一个Google Cloud Platform的博客发现了他们最新的文章,解释了德法大战没有预测准确的原因,顺便给出了半决赛的预测,会不会准呢,很快就知道了!

我翻译了部分文字,内容如下:

=====================华丽丽的分割线===============================

Google对于八进四的预测结果,只有法国对德国的比赛预测错误。

  • Brazil vs. Colombia: Brazil (71%)
  • France vs. Germany: France (69%)
  • Netherlands vs. Costa Rica: Netherlands (68%)
  • Argentina vs. Belgium: Argentina (81%)

 

Why did we get Germany - France wrong?

为啥德法大战的预测错了?

World Cup teams are especially difficult to model because they play so few games together. USA coach Jurgen Klinsmann recently told the New York Times that he sees his players about as often as he sees his barber. If data is the lifeblood of a good model, we suffered for want of more information.

预测世界杯的球队表现时,建模是很难的因为他们之前在一起比赛的机会是很少的。美国队的教练克林斯曼对纽约时报说他见他的球员们的次数不比他见理发师的次数多。对于好的建模来说,数据是至关重要的,我们总是苦于得不到足够的信息。

But, we know that in the same environment, others fared better in their predictions (h/t Cortana; their model relies more on what betting markets are saying, whereas ours is an inductive model derived from game-play data).

但是我们也知道在同样的情况下,还是有很多其它的预测比我们做的要好(比如h/t Cortana 网址是http://mashable.com/2014/07/02/cortana-world-cup/),他们的建模更多的是依赖于赌球市场给出的赔率,而我们的更多的是基于比赛的数据。

So, why did we get Germany - France wrong? In the first four games of the World Cup, France took more shots than Germany, had more shots on target, and their shots were from a more “dangerous location” (that is, closer to the goal). This information complements actual goals to form an ‘expected goals’ statistic in our model.

那么,为什么对德国和法国的比赛的预测错了呢?那是因为在之前的四场比赛中(3场小组赛+16进8一场),法国队比德国队有更多的射门次数,射正球门(所谓射正球门是指打在门框范围以内的射门)的次数也更多,而且他们的射门来自更有威胁的区域(所谓有威胁区域是指离球门更近的地方)。我们将这些信息在与实际进球数据相配合之后,在我们的模型中得出了“预期进球”这项统计值。

Moreover, in the first four games, Germany allowed their opponents to take more dangerous shots, and thus the expected goal statistic was higher for their opponents. And, it allowed their opponents to pass better in their third of the field. In the Germany-France game, France actually outshot Germany with 13 shots vs. 8 for Germany, and 9 vs. 6 on-target. With a little more luck on their side, they may have pulled ahead.

另外,在前四场比赛中,德国队让对手们拿到了更多的有威胁射门,这导致德国队的“预期进球”数值低于它的对手们。另外,德国队让它的对手们在自己的三分之一场地内得到了更好的传球机会(也就是说防守不够严密)。在德国对法国的那场比赛里,法国队其实有13脚射门,而德国队有8脚,而打在门框内的次数是法国队9次,德国队6次。如果不是德国队的运气更好一些,法国队也许早就领先了。

What about the semi-finals?

那么,半决赛的预测呢?
Here’s our predictions for the next round:
预测如下

  • Brazil vs. Germany: Germany (59%)
  • 巴西 vs 德国: 德国胜率59%
  • Netherlands vs. Argentina: Argentina (61%)
  • 荷兰 vs 阿根廷: 阿根廷胜率 61%

Google云平台对于2014世界杯半决赛的预测,德国阿根廷胜!的更多相关文章

  1. Google云平台使用方法 | Hail | GWAS | 分布式回归 | LASSO

    参考: Hail Hail - Tutorial  windows也可以安装:Spark在Windows下的环境搭建 spark-2.2.0-bin-hadoop2.7 - Hail依赖的平台,并行处 ...

  2. Google云平台技术架构

    Google Cloud  设计原理: 1.分布式文件系统: Google Distributed File System(GSF)   为了满足Google迅速增长的数据处理需求,我们设计并实现了G ...

  3. 在云平台上基于Go语言+Google图表API提供二维码生成应用

    二维码能够说已经深深的融入了我们的生活其中.到处可见它的身影:但通常我们都是去扫二维码, 曾经我们分享给朋友一个网址直接把Url发过去,如今我们能够把自己的信息生成二维码再分享给他人. 这里就分享一下 ...

  4. 【云计算】Docker云平台—Docker进阶

    Docker云平台系列共三讲,此为第二讲:Docker进阶 参考资料: 五个Docker监控工具的对比:http://www.open-open.com/lib/view/open1433897177 ...

  5. 用JavaScript访问SAP云平台上的服务遇到跨域问题该怎么办

    关于JavaScript的跨域问题(Cross Domain)的讨论, 网上有太多的资源了.国内的程序猿写了非常多的优秀文章,Jerry这里就不再重复了. 直入主题,最近我正在做一个原型开发:通过SA ...

  6. 026.[转] 基于Docker及Kubernetes技术构建容器云平台 (PaaS)

    [编者的话] 目前很多的容器云平台通过Docker及Kubernetes等技术提供应用运行平台,从而实现运维自动化,快速部署应用.弹性伸缩和动态调整应用环境资源,提高研发运营效率. 本文简要介绍了与容 ...

  7. 【云计算】Docker云平台—Docker基础

    Docker云平台系列共三讲,此为第一讲:Docker基础 参考资料: Docker官方文档:https://docs.docker.com/ Docker从入门到实践:https://yeasy.g ...

  8. eKing Cloud基础云平台演进之路

    出口转内销.首发于公司微信公众号,作者本人,现转载到此.本来写得比较技术,还算有点干货,但是结果被编辑咔咔咔,就只剩下下面这些内容. 大型企业如何开启自己的快速上云之路? 2017-12-08 易建科 ...

  9. TensorFlow-谷歌深度学习库 手把手教你如何使用谷歌深度学习云平台

    自己的电脑跑cnn, rnn太慢? 还在为自己电脑没有好的gpu而苦恼? 程序一跑一俩天连睡觉也要开着电脑训练? 如果你有这些烦恼何不考虑考虑使用谷歌的云平台呢?注册之后即送300美元噢-下面我就来介 ...

随机推荐

  1. Java Graphics2D 画出文字描边效果

    在CSDN看到的,在此记下. (http://bbs.csdn.net/topics/390703095) import javax.swing.*; import java.awt.*; impor ...

  2. iOS自动检测版本更新

    虽然苹果官方是不允许应用自动检测更新,提示用户下载,因为苹果会提示你有多少个软件需要更新,但是有的时候提示用户一下有新版还是很有必要的. 首先说一下原理: 每个上架的苹果应用程序,都会有一个应用程序的 ...

  3. [LeetCode] Find the Difference

    Given two strings s and t which consist of only lowercase letters. String t is generated by random s ...

  4. C#创建文件夹,往里追字符串。

    /// <summary>写文本日志</summary> /// <param name="StrMessage">日志消息</param ...

  5. Qt基本框架介绍

    #include <QApplication>#include <QWidget> int main(int argc, char *argv[]){ QApplication ...

  6. Unity引擎IOS执行档大小优化

    简介 苹果对于IOS执行档的大小是有明确的限制的,其中TEXT段的大小不能超过80M,否则提审将会被苹果拒绝,同时,如果TEXT段过于太大,那么在苹果进行加密之后,很容易出现解压失败等各种异常,最终导 ...

  7. SpringMVC(三) RequestMapping修饰类

    SpringMVC使用@RequestMapping 注解为控制器指定可以处理哪些URL请求. 可以用于类定义以及方法定义: 类定义:提供初步的请求映射信息.相对于WEB应用的根目录. 方法处:提供进 ...

  8. 消息队列之ZeroMQ(C++)

    ZMQ是什么? 这是个类似于Socket的一系列接口,他跟Socket的区别是:普通 的socket是端到端的(1:1的关系),而ZMQ却是可以N:M 的关系,人们对BSD套接字的了解较多的是点对点的 ...

  9. 【MongoDB初识】-其他操作

    又发现一种查询写法$wheredb.class.find({$}}) 排重db.class.distinct("stuCount") 一.MapReduce(摘录MongoDB实战 ...

  10. NHibernate开发入门

    首先,我们了解一下ORM是什么?ORM指对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程 ...