查看原文
其他

回归线三千,我只取这一条 | 协和八

2017-03-23 张之昊 协和八

说人话统计


在前面两集文章里,我们一起认识了线性模型这件新玩具。

利用线性模型,我们不仅从一个新的角度重新审视了早已熟悉的 t 检验和 ANOVA(回顾《车模航模你玩过,统计学模型你会玩吗?——留言说要玩汽车模特的同学放学别走),还为大家介绍了线性模型中自变量为连续变量的情形,也就是通常所说的线性回归(回顾《如果只能学习一种统计方法,我选择线性回归》)。

让我们来复习一下线性回归模型的最简单形式:

上面这条式子的意思是说,从自变量 x 的第 i 个测量值 xi 出发,要得到与之对应的因变量 y 的第 i 个测量值 yi,只需在 x 上做个简单的线性运算 β01*xi 。当然,我们不能保证 β01*xi 就能恰好等于 yi,而是可以容许一定的偏差,也就是误差项 εi。我们之前也讨论过,通常情况下,我们认为误差项服从均值为0,方差为 σ的正态分布,也就是

结合上面(1)(2)两条式子,我们就有了一个关于因变量 y 和自变量 x 的线性回归模型。这个模型里面有三个参数(parameters),分别是截距 β0斜率β1误差的方差 σ2

有了数据(一系列 x 和 y 的测量值)和模型的形式,我们要做的就是找出最符合数据的模型参数,并且作出相应的统计推断。

从数据出发,我们该如何找到最合适的参数呢?

回到上一集的例子,现在我们已经有了若干个蓝精灵家庭中的父母平均身高(自变量 x )与子女身高(因变量 y )数据,想要建立一个描述它们之间关系的线性模型。

我们在上一集也说过,对于模型中的式子(1),如果先不看误差项, β01*xi 其实就是二维平面上的一条直线 。所以,从直观上说,要确定三个参数,我们就是要找到一条最符合数据点趋势的直线

这条直线应该怎么找?我们先来摸索一下。

作为初步尝试,我们随便找两组截距 β和斜率 β值,画出下图的两条直线(橙色:y=45+0.41x绿色:y=200-0.5x )。

不需要繁琐的计算或检验,只要看一眼上面的图,我们就能意识到,这两条直线(及其对应的模型参数)并不能让我们满意。

先看橙色的直线,绝大多数数据点都在它上方,也就是说,它所代表的模型在整个数据集的父母平均身高范围内(145cm-175cm)基本都在低估子女的身高。

绿色的直线呢?似乎更糟糕,因为从数据点的趋势来看,随着父母平均身高的增长,子女的身高也随之增加。然而,绿色直线所代表的模型却有一个负的斜率(-0.5)——换言之,这个模型认为长得高的父母一般会有比较矮的孩子。而且,它在父母身高较小时倾向于高估子女的身高(父母身高在 160cm 以下时,大多数据点在绿色直线下方),而在父母身高较大时倾向于低估子女的身高(父母身高在 160cm 以上时,大多数据点在绿色直线上方)。

但是,对于其他的一些模型参数,结论就不那么一目了然了。

让我们再来看下图中不同颜色直线代表的三个线性回归模型(蓝色:y=0.75x红色:y=40+0.5x紫色:y=55+0.41x)。

这三条直线看起来都挺符合数据点的大致趋势,然而它们给出的解读却有不小差别。比如说,我们上一集讲过,这个模型中截距 β的解读是,每当自变量 x 增加(或减少)一个单位时,因变量 y 会有多少变化。所以,蓝色模型认为,每当父母平均身高增加 1cm,子女的身高平均来说会增加 0.75cm,而红色、紫色模型则分别认为子女身高只会增长 0.5cm、0.41cm。

因此,要选择最符合实际数据的模型参数,咱们不能光靠眼睛看,得拿出一个清晰明确的标准。要讨论这个标准应该是什么,咱们还得先一起捋一捋思路。

要寻找「最优」的截距 β0、斜率 β1、误差方差 σ2,我们要做的事情是,在由这三个参数定义的三维空间里,找到一个我们认为在某种标准下最好的点

在频率主义统计学的体系(可回顾《贝叶斯vs频率派:武功到底哪家强?》)里,模型的参数是有唯一确定(但我们并不知道)的真值的,真值同样也是这个三维参数空间里的一个点,不妨记为(Β0, Β1, Σ2)。因此,如果我们给出一个估计(β0, β1, σ2),它要么就是对的(在时),要么就是错的,不存在类似于「有60%可能正确」的带有概率的结论。当然,由于我们不知道真值,所以我们也无从判断估计的对错。

如果你觉得上面一段话的推理过程有些别扭,尤其是觉得频率主义认为对任意一个具体的估计(β1, σ2)不能作出概率判断非常不合理的话,别担心,其实你并没有什么错,只不过是自带贝叶斯主义属性比较强而已——欢迎你在本文底下留言,我们也许会在未来再为大家讲讲,贝叶斯统计学对线性回归问题是怎样处理的。同时,我们也请你试着暂时放下这个疑问,先接受上文的出发点。

 但是,我们可以采取类似于p值那样的思想(回顾《你真的懂p值吗?》),来考虑一下,在假设我们的估计就是真值的情况下,观测到我们手上数据的可能性有多大,这个可能性称为「似然」(likelihood)。对于参数空间里的任意一个点 A(β0, β1, σ2),根据我们的模型和实际数据,都可以算出一个似然的值 L(A) 。这样一来,如果我们穷尽参数空间里的每一个点,把每个点对应的似然都算出来,你会选择哪一个点作为对模型参数最有把握的估计?

相信你会说,选似然最大的一个!不错,这正是我们在以前的文章中也简单提到过的极大似然估计(maximum likelihood estimation)的思想。

如果你有些不太确定,其实我们每一个人都会在日常生活中自觉运用这样的思想。比如说,街上迎面走来一个金发碧眼的美女,如果有人问你,你觉得她是亚洲人、欧洲人还是非洲人,你肯定不假思索就会说:「欧洲人!」因为在亚洲人、欧洲人、非洲人这三种选择中,欧洲人拥有金发碧眼的可能性很大,而亚洲人、非洲人金发碧眼的可能性都很小,所以,你也自然地使用了一次极大似然估计大法。

那么,在今天讨论的线性回归模型中,似然函数应该怎么算?关键就在模型对误差的规定里。记住,我们是在对参数空间中不同的点(β, β1, σ2)计算似然函数的值,因此只要选定了具体的一个点,β0 ,β,σ就是固定的。

我们先把某个蓝精灵的父母身高平均值 x代入 β0 +β1*xi 中,就能得到对该蓝精灵身高的估计值。把这个估计值与这个蓝精灵身高的真实值 y相比,就能得到误差 ε。而我们的模型又指明了误差服从正态分布N(0,σ2) ,其中 σ也是我们已经选定的,根据正态分布的概率密度函数(回顾《正态分布到底是怎么来的?》):

我们就能算出,对于第 i 个数据点,在当前以 β,β,σ2  为参数的模型中,模型在该数据点上的误差为的可能性(似然)大小。对于其他数据点 x到 xn,我们也依葫芦画瓢,算出似然。

然后,因为线性回归模型假设各数据点是独立、不相关联的,所以我们只需把每个数据点的似然乘起来,就能得到当前参数组合下观测到整套实际数据的可能性(似然函数值)了。

了解了计算似然的方法,对于任意选定的参数组合(比如文章前面两幅图中用不同颜色表示的几个模型),我们都可以把实际数据套进模型中,得到似然的大小。理论上来说,我们只需把模型参数可能取到的整个空间都检查一遍,找出似然函数最大的那个(或那些)点就可以了。

当然,哪怕只有一个参数,一个再小的区间里都包含无数个点,像穷举这样的办法是不可行的。幸运的是,对于本文(1)(2)这样最简单的线性回归模型,只需用到一点微积分知识,就能直接得到似然函数最大的参数值,而不需要把参数空间中的点一个个算过来:

其中分别为 x 和 y 的算术平均值,即

 为第 i 个数据点根据模型与 x得到的估计值,即 

当然了,现在我们连上面的解都不需要记住了,因为统计学软件只需要用一瞬间就能给我们算出来。但是,理解它们的由来与意义,对把它们用好、用对是很重要的。

值得一提的是,上面的的极大似然解,其实有着一个很好的几何意义——它们是在所有 β0、β的组合中,能够使误差平方和(例如下图中四个数据点到代表模型的虚线的垂直距离求平方后相加)最小的一组。因此,上面的这组解也被称为最小二乘(least squares)解(「二乘」就是平方的意思)。

有了 ,线性回归模型就建立好了。对本文例子中的数据集,最小二乘解所对应的线性模型就是 y=55+0.41x(图 2 中的紫色直线)。

有了这个模型,我们能进行怎样的推断和预测?父母身高和子女身高之间存在正相关关系,但是这个关系是否具有统计学意义上的显著性?各位看官请听下回分解。

五年执医 三年模拟

精选每日一题

更多精选题可回顾历史推送文末

题目来源:临床执业医师资格考试往届真题

本期主播:铩羽

回复「统计学」可查看「说人话的统计学」系列合辑,

或点击下方标题可阅读本系列任意文章

>>> 干货 <<<

你真的懂p值吗?

做统计,多少数据才算够?(上)

做统计,多少数据才算够?(下)

提升统计功效,让评审心服口服!

你的科研成果都是真的吗?

见识数据分析的「独孤九剑」

贝叶斯vs频率派:武功到底哪家强?

数据到手了,第一件事先干啥?

算术平均数:简单背后有乾坤

正态分布到底是怎么来的?

想玩转t检验?你得从这一篇看起

就是要实用!t 检验的七十二变

不是正态分布,t 检验还能用吗?

只有15个标本,也能指望 t 检验吗?

样本分布不正态?数据变换来救场!

数据变换的万能钥匙:Box-Cox变换

t 检验用不了?别慌,还有神奇的非参数检验

只讲 p 值,不讲效应大小,都是耍流氓!

找出 t 检验的效应大小,对耍流氓 say no!

用置信区间,就是这么(不)自信!

如何确定 t 检验的置信区间

优雅秀出你的 t 检验,提升Paper逼格!

要做 t 检验,这两口毒奶可喝不得!

要比较三组数据,t 检验还能用吗?

ANOVA在手,多组比较不犯愁

ANOVA的基本招式你掌握了吗?

ANOVA做出了显著性?事儿还没完呢!

听说,成对t检验还有ANOVA进阶版?

重复测量ANOVA:你要知道的事儿都在这里啦

没听说过多因素 ANOVA ?那你就可就 OUT 了!

多因素ANOVA=好几个单因素ANOVA?可没这么简单!

两个因素相互影响,ANOVA结果该如何判读?

ANOVA还能搞三四五因素?等等,我头有点儿晕

要做ANOVA,样本量多大才够用

车模航模你玩过,统计学模型你会玩吗?

如果只能学习一种统计方法,我选择线性回归

>>> 自检 <<<

妈妈说答对的童鞋才能中奖

统计学的十个误区,你答对了吗?

>>> 番外篇 <<<

说人话的统计学:一份迟来的邀请

作者:张之昊

编辑:黑草乌叶

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存