利用数据

Paul Parsons博士说,最大似然估计是一个功能强大且相对简单的方法,可用来拟合模型与数据。

Categories: 工具, 数据, 篮球, 统计模型, 网球, 足球

Related Jobs

对许多人来说,海量的、看似难以理解的数据十分令人生畏。虽然大多数给体育建模的人承认会从中收集有用的信息,但甚至许多专业人士在测试作品时似乎都不喜欢大量应用数据,他们更喜欢目测对一个或两个庄家的预报赔率是否越出范围。

如果你的模型是专为下注设计的,留有足够的误差裕度以掩盖小的定价误差,那么这个模型是可以应用的。但如果你想利用模型进行自营交易,把钱投注在市场上,那么这个模型不太可能给你提供你所需要的优势。这是因为市场价格基本上是二手数据,你正用你的模型来拟合别人的看法,得出的结果将不只包含你的错误,还包含别人的错误。

一个更好的方法是寻找初始数据来适应你的模型,即从过去赛事的实际结果中找数据。例如,在足球比赛中每一球队的进球得分,或马赛中不同的选手所取得的成绩。数据越多越好。但是究竟如何去利用这些数据呢?

体育统计模型通常采用概率分布的形式,告诉你每个特定结果的可能性。概率分布的形状由一个或多个参数控制。例如,一个单一的随机变量的正态分布是由双参数确定的——均值和方差。

问题是如何将这些参数与所获得的数据进行匹配。也许最简单的方法是“最小平方法”。这相当于在模型中每一个数据点和其预测的概率之间取平方误差,把整个数据集的得数求和,然后调整模型参数,直到这个和最小。但是,最小平方法假定数据中的干扰呈正态分布。换句话说,你建模的运动是受正态分布的随机变量所支配的。

我们知道这并非总是如此。足球进球的一些模型的是基于泊松分布的,赛马时间可以是伽玛分布,其他更复杂的运动可能服从于非常规的分布。

最小平方法的一个有效、灵活的替代方法是“最大似然估计”(通常简称MLE)。“似然”指在给出特定模型参数的前提下获得所观察到数据集的概率。这种方法是调整模型的参数,直到获取数据的可能性最大化,即最大似然。这些参数据说与数据最匹配。最重要的是,最大似然估计法不会对分布进行假设。然而令人放心的是,当数据是正态分布时,最大似然估计法会简化为最小平方法。

例如,将一个硬币抛起,你想推断它落下后正面向上的概率。硬币被抛了50次,其中30次正面向上,20次背面向上。这就是数据集。我们需要确定的是p,即正面向上的概率。这一数据集的似然函数是p30(1-p)20。因为p<1,幂又会产生一些很庞大的数字,所以通常不是直接使用似然函数,而是使用其对数。因为对数是一个递增函数,任何p值最大的似然也是其对数的最大似然。在这种情况下,对数似然是30 log p + 20 log (1-p)。求微分并设置为零(因为要求最大值)推出30/p = 20/(1-p),P = 0.6为最佳值。

以上只是一个相当小的例子,来说明最大似然估计是如何运行计算的。一个不太明显的例子是基于过往交锋成绩推断出A、B两个球队的预期进球数。假设两队过往交锋10次,六次在A队主场,其余四次在B队主场。前六场A对B比赛的结果是4-1,2-1,2-0,0-2,1-0,0-0,而余下的四场A对B比赛结果是2-0,0-1,0-2,2-1。

现在,我们应用一个粗略的模型给每个球队的原始预期进球数乘以一个固定因子,这基本上提高了他们在主场比赛的预期得分。假设主场优势因子是2,客场球队被期望在比赛中有一个进球,那么这个队在主场比赛中被期望进2个球。

简单点儿说,假设两队的进球总数独立统计呈泊松分布。我们需要拿到每个队的原始预期进球数(即他们最有可能的客场得分)和主场优势因子的数据。

假设在一个泊松分布中,从每个数据点的对数似然的分配,是k log E – E + log (k!),其中E是预期进球数、k是实际进球数。如果A、B分别代表A球队和B球队的原始进球数,H代表主场优势因子,然后依次对A、B、H进行对数似然微分,并使每个表达式等于零,得出了三个联立方程,由此可以计算出A、B、H的值,他们是A=1, B=0.66,H=1.5。

以上两种情况当然可以通过手动计算出对数似然,写下解析表达式并进行微分。但是,随着数据集的规模越来越大,模型也变得越来越复杂,这些计算很快就变得过于复杂,手动计算不太可行了。好消息是,有Excel数值优化插件(例如,“Solver”)可以为你做这些工作。

想要安装Solver,按照说明进行,见http://office.microsoft.com/en-gb/excel-help/load-the-solver-add-in-HP001127725.aspx。该插件也可从数据标签访问。你需要应用单元格公式为数据集在Excel表格中添加一列,来在模型中计算每一行的对数似然分配。电子表格中,每个参数使用一个单元格,然后根据这些单元格里的值计算对数似然分配。最后,在一个新的单元格里计算所有对数似然分配的总和。点击“求解”,Solver会将这个新的单元格里数值最大化,同时参数单元格里的参数值也会随着变化,变化后的参数值就是从数据中获得的最大似然估计。Solver应用教程见http://www.youtube.com/watch?v=uQU1KfsE5us。For the more intrepid analyst, R and other pieces of advanced statistics software have even more sophisticated optimisation facilities. I use the ‘optim’ function, part of the ‘stats’ package in R, which is fast and relatively easy to use.更强悍的分析师们,R和其它先进的统计软件有更精密的优化辅助器。我使用的是R软件统计工具包里的“优化”功能,速度很快、操作简单。

有了它,数据拟合模型并不像最初看起来那么痛苦了。最大似然估计是一种多功能、强大的技术,不论您的模型的统计分布如何,它都可以从数据集中提取最佳估计参数值,而且你可以不费吹灰之力,在像Excel一样简单的电子表格中运行它。

更多文章,请访问http://www.ics.uci.edu/~smyth/courses/cs274/papers/MLtutorial.pdf

 

 

About Paul Parsons

Dr Paul Parsons is a quantitative analyst at Botsphere, a division of BetVictor, where he builds mathematical and statistical models for sports pricing and business operations. He was formerly a postgraduate cosmologist at the University of Sussex, building models of the early universe, but left academic research to pursue a career in science writing and journalism, editing the BBC science magazine Focus - culminating with the magazine winning a PPA award (a ‘magazine BAFTA’) in 2007. In the same year his book the Science of Doctor Who was long listed for the Royal Society Prize. A desire to get back solving hard sums, and a growing interest in software development and programming, led him to take his first job in quantitative analysis in 2011.
No Thoughts on 利用数据

Leave A Comment