固定效应(fixed effect, FE)vs. 随机效应(random effect, RE)是统计学中躲不开的一对重要概念,也是统计学思想的一个非常核心的理念:真实世界的复杂现象 = 确定的统计模型 + 不确定的随机误差。
虽然在特定的统计方法中,大家或多或少能区分什么是固定效应、什么是随机效应,但是由于不同的统计方法(甚至不同的学科)对FE和RE的界定不尽相同,所以当你接触到更多的统计方法之后,很可能将不同模型的FE和RE搞混淆。理解透彻FE和RE并不容易,因为这两个词本身并不够descriptive、比较笼统且具有一定的误导性。比如,心理学家和经济学家也许会因为FE和RE的问题“打架”——心理学家可能会说“我们更推荐用随机效应模型(random-effects model)!”,而经济学家可能会说“我们基本都用固定效应模型(fixed-effect model)!”。但实际上,在各自熟悉的知识框架下理解FE和RE,就如同“盲人摸象”,双方可能都只看到了冰山一角。正因为不同学科有着不大一致的话语体系,我们更需要从一个综合的视角来深入理解这一对贯穿了很多统计模型的基本概念——FE和RE。
本文将以“多层线性模型(HLM)”作为切入口和线索,把众多统计方法中都可能会遇到的FE和RE问题串起来一并梳理清楚:从方差分析到回归分析,从多层线性模型到面板数据模型,以及元分析和元回归。
先上结论,再详细解读。
汇总表:固定效应 vs. 随机效应
(表中是已经整理好的FE和RE在不同统计模型中的对比)
No.1 总框架:回归分析
回归(regression)不仅是众多统计方法的本质,更是我们理解这个复杂世界的重要思想工具(Blog: Common statistical tests are linear models:https://lindeloev.github.io/tests-as-linear/ )。世界很复杂,但在科学的视角下,很多现象或行为都可以被简化为回归模型——现象或行为本身是“观测项”,我们还会用一系列其他变量来解释或预测这个观测项,其中,一部分是我们能够预测的“结构项”,另一部分则是我们暂时无法预测的“误差项”。
结构项是由一些变量(X1、X2…)及参数(b0、b1…)组成的,尽管我们无法穷尽所有可能的预测变量,但至少我们可以从已知的变量关系中发现一些规律,于是结构项就构成了回归模型的“固定部分”。
误差项则是我们为了简化模型而不得不舍弃的一部分,这种刻意的忽略是不可避免的,否则就会造成“过拟合”(overfitting)。具体来说,误差项又有三个来源:遗漏的变量、测量的误差、随机的干扰。但无论如何,我们终究要在“精确性”(accuracy)和“简约性”(parsimony)之间做出权衡,从而舍弃一部分信息,这些“剩下来”的未被解释的信息就构成了回归模型的“随机部分”。
下面的四幅图直观地展示了回归模型的“固定”与“随机”。同样都是一条回归方程(有几乎相同的截距和斜率,即模型的“固定部分”),但数据的实质却截然不同——
①中的X和Y是两个正态分布的变量,其回归模型的“随机部分”基本都来自于随机误差,因此模型是适当的;
②中的X和Y实则是非线性关系,因此用一般的线性回归做拟合是错误的,应加入X的二次项做多项式回归;
③中的一个数据点成为了异常值(outlier),同样会影响回归模型的准确性,可以剔除该点,或者做稳健回归;
④进一步告诉我们,哪怕是一个小小的异常数据点,也足以产生错误的、有误导性的结果。
②~④的共性在于,残差并不满足正态分布,或者存在异方差(heteroscedasticity),所以它们得到的回归模型(固定部分)都是不妥当的。
回归模型的恰当性(著名的Anscombe四组数据)
一般而言,回归模型的“随机部分”需要尽可能服从正态分布,这样才能保证“固定部分”的参数估计是无偏的、一致的、有效的。
“回归”的思想其实渗透着“舍得”的理念:我们通过舍弃那些“随机部分”的误差(residual variance),获得了我们想要的“固定部分”的参数(regression coefficients)。
No.2 多层线性模型(HLM)
如果说回归是众多统计方法的本质,那么多层线性模型(Hierarchical Linear Model, HLM)就可以视为众多统计方法的“幕后主谋”——回归分析的最一般形式可以归为HLM(详见:多层线性模型(HLM)及其自由度问题:https://zhuanlan.zhihu.com/p/50048784)。
当然,这只是一种理念层面的说法,只是有助于我们综合理解很多不同的统计方法。实际上,HLM并不能真正代表和直接实现所有的统计方法。不过,在充分理解了HLM的原理之后再去理解其他统计方法就会比较轻松,尤其是在理解固定效应FE和随机效应RE这件事情上。
在HLM的话语体系中,我们不太直接说FE和RE,因为这两个词对于HLM而言太过于笼统,HLM有着更为细致的划分:
注:每段后面附的语句均为R语言的回归方程表达式,~的前后分别为结果变量和预测变量,例如Y ~ 1 + X1 + X2,其中表示截距的“1”可以省略。另外,在以下的示例中,Y、X1和X2都是Level 1变量(顺带一提,因变量Y只能是Level 1变量,不能是Level 2变量)。
固定截距(fixed intercept):固定截距其实并不存在于HLM的模型中,而是“降级”到了一般的最小二乘法回归(OLS),也就是我们最常用的GLM回归分析。→ lm(Y ~ 1 + X1 + X2, ...)
随机截距(random intercept):在做HLM时,我们通常都会将截距设置为随机截距,也就是允许不同组具有各自的截距(基线水平)。可以理解为,“有的人出生就在终点,而你却在起点”。在R里面,只要你在回归表达式后面加上小括号(当然,这时就不能