固定效應(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裡面,只要你在回歸表達式後面加上小括號(當然,這時就不能再用lm了,要用lme4和lmerTest包的lmer函數),括號裡就定義了Level 1截距或斜率在Level 2的隨機部分(Level 1的隨機部分則是個體層面的殘差residual,不用我們定義)。豎線「|」後面是分組變量(clustering/grouping variable,可以是省市、學校,而在重複測量、追蹤設計中則是被試個體),豎線前面的1代表隨機截距、具體變量名則代表這個變量對應的隨機斜率。
→ lmer(Y ~ 1 + X1 + X2 + (1 | group), ...)
固定斜率(fixed slope):固定斜率的意思是,某個Level 1自變量的斜率在不同的group裡面都是一致的。雖然實際情況未必真的一致,但研究者可以假設並檢驗斜率是否在組間保持一致而不存在顯著差異。需要注意的是,Level 2截距或斜率並不存在固定和隨機的區分(或者說都是固定的),除非還有Level 3。
→ lmer(Y ~ 1 + X1 + X2 + (1 | group), ...)
隨機斜率(random slope):與固定斜率相反,隨機斜率意味著某個Level 1自變量的斜率在不同的group之間存在差異,或者說「依組而變」。可以理解為,「有的人花兩個小時就能賺10000,而你卻只能掙個10塊錢被試費」。你既可以只納入隨機斜率成分而不對斜率的差異作出具體解釋,也可以再納入一個Level 2的自變量與這個Level 1自變量發生交互作用(即跨層交互),從而解釋為什麼X的效應依組而變、是什麼因素導致了這種變化。
→ lmer(Y ~ 1 + X1 + X2 + (1 + X1 | group), ...) # 這裡的1可以省略,默認都納入截距(但只有隨機截距時則不能省)
→ lmer(Y ~ 1 + X1*W + X2 + (1 + X1 | group), ...) # W表示一個Level 2解釋變量,X1*W即為一個跨層交互作用
HLM中的固定/隨機截距與斜率
一般來說,只要使用HLM,都會考慮隨機截距。所以,在HLM的框架下探討FE還是RE,更多的是指「斜率」為固定還是隨機。
那麼,何時使用固定斜率、何時使用隨機斜率呢?主要有以下4個考慮因素:
理論假設:我們一般不會特意假設存在隨機斜率,也就是說,設置隨機斜率需要有比較強的理論假設認為Level 1自變量的效應依組而變。這一點也可以進行統計檢驗,如果斜率的隨機部分(方差成分)與零沒有顯著差異,則可以考慮捨棄隨機斜率。
研究目的:如果我們的研究目的就是想檢驗是否存在跨層交互作用,那麼相應的Level 1自變量就需要設置為隨機斜率。這一點容易理解,因為跨層交互本身就意味著X的斜率會變、並且我們還想解釋為什麼會變,如果你不設置為隨機斜率,豈不自相矛盾?
Level 2的組數量:如果Level 2的組數量過少(如<10組),則Level 2的自由度過小,不足以做出穩健的參數估計,因此更適合用固定斜率。——BUT!如果Level 2的組數量真的小於10,我們甚至需要仔細斟酌一下是否還要用HLM!因為Level 2的組別也是一種隨機取樣,在GLM裡面我們一般要求樣本量至少是變量數的10倍,在HLM裡面我們同樣會要求組別不能太少,一般要求Level 2至少達到10~20組以上,否則Level 2分模型的統計檢驗力power就會嚴重不足!這一點和GLM是一樣的!——所以,如果沒有10組以上的取樣,最好還是不要用HLM,此時我們要改用所謂的「固定截距」模型,即降級到GLM / ANOVA / ANCOVA!
Level 2每組內的樣本量:聯想到經典的被試間設計ANOVA,我們一般要求每組樣本量不能太少,至少要30~50名被試才能保證power。這一點同樣適用於HLM。如果Level 2每組內的樣本量都過小(如<30),雖然仍舊可以使用HLM,但為了得到更穩健的參數估計,需要藉助更多乃至所有的數據信息,因此更適合用隨機斜率。
註:在我的上一篇文章《多層線性模型(HLM)及其自由度問題》中,舉了一個「三所學校GPA ~ IQ」的例子來說明做HLM的必要性,但實際上,如果真的遇到只有三所學校的情況,我們還真的不太能做HLM,因為組數量太少了!對於這個例子,最合適的做法是不用HLM,而是用協方差分析ANCOVA,把學校作為一個「固定效應」控制掉即可(也相當於為三所學校生成了兩個虛擬變量,做虛擬變量OLS回歸,等價於ANCOVA)。更多討論,請參考:
(1)Snijders & Bosker, 2012, pp. 43–48
《Multilevel analysis: An introduction to basic and advanced multilevel modeling (2nd ed.)》
(2)溫福星, 2009, pp. 272–286《階層線性模型的原理與應用》
No.3 方差分析(ANOVA)
ANOVA既可以是GLM的特例,也可以是HLM的特例。
在大多數情況下,被試間、被試內、混合設計ANOVA / ANCOVA都是GLM的特例——即自變量為分組變量的情況。例如,如果用OLS回歸的方法分析一個單因素被試間設計ANOVA(假設該因素具有k = 3個水平),則等價於我們為這個因素生成了k – 1 = 2個虛擬變量(dummy variable;λ1 = [1, 0, 0],λ2 = [0, 1, 0];剩下的一個λ為冗餘信息,捨去),然後使用這兩個虛擬變量進行OLS回歸,得到的結果與ANOVA一致。當然,除了dummy coding,還有其他幾種不同的編碼方式,如Helmert編碼:λ1 = [2, -1, -1],λ2 = [0, 1, -1]。但無論如何,我們為ANOVA裡面的不同因素生成的編碼變量本身只代表有限的分組信息,並不代表這些組別來自於一個更大範圍的總體——比如最簡單的「生理性別」,除了「男」「女」之外再無其他類別,故而用一個0/1虛擬變量就能表示,但這個變量也僅限於0和1,不可推廣至2、3……因此,絕大多數的心理學實驗設計都屬於「固定因素模型」(如果你喜歡叫它固定效應,也行吧)。
但還有一些情形,例如心理學研究者篩選實驗材料,一般不可能窮盡所有可能性,而是按照一定的規則隨機選取一些材料作為實驗的stimuli,即「stimulus sampling」。這種情況就屬於典型的「隨機因素模型」——實質為HLM裡面的「零模型」(具隨機效應的ANOVA),並且同樣要求材料的組別/水平數足夠多才能進行有效的參數估計(即保證足夠大的Level 2自由度df,從而保證power)。
對於被試內/重複測量設計的ANOVA,同樣可以考慮使用HLM(或者被認知心理學背景的學者稱為「線性混合模型 LMM」,本質都一樣)。此時,被試個體將作為Level 2的clustering variable,並且是隨機截距(1 | subject),而重複測量的條件將作為Level 1自變量,視情況設為固定或隨機斜率。使用HLM處理重複測量實驗數據具有一定的優勢,尤其體現在重複測量條件很多、很複雜、可以為連續變量的情況,例如眼動數據、腦電數據等等。相關的具體問題和實現方法,大家也可以參考這幾篇文章:
(1)Fixed vs. Random Factors:https://web.ma.utexas.edu/users/mks/statmistakes/fixedvsrandom.html
(2)「實驗心理學數據是否應該使用混合線性模型(LMM)」的討論
(3)混合線性模型的實現(基於R和jamovi)
總之,在ANOVA的框架裡,所謂FE是指「固定截距」(GLM / OLS回歸),而RE是指「隨機截距」(HLM的特例)。
No.4 面板數據模型(Panel Data Model)相信大多數心理學科班出身的人並不太熟悉「面板數據」這個詞。我最初聽到這個詞大概是在大三,當時還以為它指的是數據來自一塊神秘莫測的「面板」???(黑人問號臉.jpg)後來慢慢真正接觸到panel data,才發現這個神翻譯真是如「牛肉板面」一樣的奇形怪狀。
所謂「面板數據」,實際上就是「追蹤數據」(longitudinal data),只不過在經濟學裡面,追蹤的「個體」往往是宏觀層面省份、城市,而非個人,並且由於省市數據常常又來自於已有的統計年鑑、報表等等,故而得名「面板」(這麼說,確實是來自一塊神奇的面板咯)。
Panel data的數據結構是N個「個體」(廣義的個體,可以是人,也可以是宏觀層面的省份、城市)× T個時間點(小到day-level,大到year-level)。這種N × T的四四方方的面板/追蹤數據其實是綜合了橫截面(N)和時間序列(T)兩個維度,可以解決單獨的橫截面或時間序列數據所不能解決的問題,並且在計量經濟學裡面特別常用。更重要的是,究竟該使用FE還是RE,也是一個在處理panel model時需要考慮的基本問題。
那麼,我們該如何分析panel data model(以下簡稱PLM)?其FE和RE是指什麼?究竟是使用FE還是RE?
首先需要指出:PLM所謂的固定效應FE,在本文討論的所有統計模型中是唯一的一個有點「名不副實」的術語——因為即使在FE的PLM裡面,個體效應也依然是「異質」而非真正「固定為同一個值」的(陳強, 2014《高級計量經濟學及Stata應用》)。換句話說,在PLM裡面,無論FE還是RE,個體截距(相當於HLM裡面Level 2不同組各自的截距)都是「異質性截距」( )。而區別在於,FE和RE對於這種「異質性截距」有著不同的假定,相應的也有不同的模型估計方法:
雖然一些統計檢驗(如Hausman檢驗)可以在一定程度上告訴我們應該使用FE還是RE,但是,至少在經濟學領域,研究者通常都會使用固定效應FE。為什麼呢?
首先,這是因為無論Hausman檢驗的 是否成立,FE得到的參數估計量都是「一致的」(i.e., 點估計收斂於真實的參數值),只不過如果 成立,RE會比FE更「有效」(i.e., 回歸係數的標準誤更小,也就是「更顯著」),但假如存在異方差,RE也並非最有效。
其次,經濟學往往關注國家、省份、城市等宏觀層面的規律。顯然,省份這種分組變量本身就可以代表其總體(即一個國家的省份是固定的),而不是一種隨機抽樣;同時,省份在一個變量上的「基線水平」 往往也會與其他變量 存在相關。
因此綜合來看,經濟學的宏觀數據天然更適合用FE(異質性[非隨機]截距)。
當然,我作為心理學科班出身的人,對於計量經濟學也只是略懂一點皮毛而已,更多關於PLM及其FE與RE的問題,可以參考以下知乎問答和文章:
線性面板數據模型的各種關係整理 - 慧航:https://zhuanlan.zhihu.com/p/19828028
固定效應模型與隨機效應模型的區別?:https://www.zhihu.com/question/47380734
為什麼現在經濟類頂刊的雜誌上,大家應用面板計量數據回歸時,都只採用固定效應模型而不採用隨機效應模型了?:https://www.zhihu.com/question/282221100
如何理解面板數據回歸中控制的地域、時間的虛擬變量?不控制會怎樣?:https://www.zhihu.com/question/26381225
如何理解面板隨機效應模型工具變量法?:https://www.zhihu.com/question/64058369
面板數據模型(Fe or Re)如何進行內生性檢驗?https://www.zhihu.com/question/276659140
面板數據基本分析stata語令:https://zhuanlan.zhihu.com/p/35682006
面板數據分析方法步驟:https://zhuanlan.zhihu.com/p/26353758
Fixed and random effects models:http://teaching.sociology.ul.ie/DCW/confront/node45.html
No.5 元分析(Meta-Analysis)
最後,我們來看看元分析裡面的FE和RE。
metafor的method參數
一般情況下,元分析的基本分析單位是從已有文獻中提取出來的效應量,包括但不限於原始的均值 M、Cohen's d、相關係數 r、odds ratio(統計量–效應量的相互轉換 | 元分析基礎:https://zhuanlan.zhihu.com/p/47849067)。例如相關係數 r,我們在做元分析的時候不僅需要輸入 r 本身,還需要輸入研究的樣本量 n。這是因為,無論我們選取哪一種效應量做元分析,都需要知道這個效應量(effect size)在最初由原始研究得出的時候具有多大的取樣誤差(sampling variance; within-study error)。樣本量越大,取樣誤差越小,得到的效應量置信區間(95% CI)也就越精確。
換一種視角來看,已有文獻中的效應量,本身可視為「回歸斜率」(回憶:眾多統計方法的本質其實都是回歸分析,即使是組間差異也可以轉換為回歸斜率或r-family的效應量)。更進一步來說,這種原始的回歸斜率或者說效應量,放在HLM的框架裡面就變成了Level 1的斜率;同時,取樣誤差作為效應量標準誤的度量,也就變成了Level 1的殘差。假設我們擁有這些研究在個體層面的原始數據,那麼毫無疑問,我們會做HLM:將不同的研究作為Level 2的分組變量,而被試個體作為Level 1。
然而,骨感的現實是,我們無法獲取原始數據(大概因為我們比較窮也比較懶)。所以我們會去做「元分析」(可以戲稱為「窮人/懶人的HLM」),也就是從已有文獻裡面摳出來一個個效應量,看看它們之間是否一致、平均效應是否存在(這還真不是一個懶人能完成的任務)。於是,我們建立的元分析模型,本質上就是一個只有Level 2的HLM。但由於我們還獲取了效應量對應的取樣誤差,所以我們做的並不是一個純粹在組層面的GLM回歸,而確確實實是一個HLM——只不過Level 1已經由算好了的效應量及其誤差代替了而已。
元分析中的「固定效應 vs. 隨機效應」
因此,元分析模型裡面的「截距」(如果你做過的話就會看到),本質上並不是「截距」,而應該理解為「平均的Level 1的斜率」(平均效應量)。於是,元分析的話語體系裡所謂的「固定效應模型」本質就是HLM的「固定斜率」(即假設效應量之間不存在異質性,是同質的),而「隨機效應模型」則是HLM的「隨機斜率」(即假設效應量之間存在異質性,依研究而變)。當然無論是FE還是RE,最終我們都會得到一個平均的、匯總的效應量的點估計及其區間估計。
總體來看,隨機效應RE的元分析模型更受推崇——不僅因為RE更符合實際情況(不同研究的異質性)、在估計時更加保守、更不易被極端大/極端小樣本量的研究「帶跑偏」(平均效應的估計更均衡、更穩健),而且如果我們進一步納入Study-level的解釋變量,還可以做「元回歸」(meta-regression)來解釋為什麼效應量在不同研究之間會存在差異。例如,是不是研究取樣的性別比例、平均受教育水平等因素解釋了效應量的差異?元回歸理解起來其實也很簡單,相當於在HLM隨機斜率的基礎上檢驗跨層交互作用——Study-level的變量在元分析的模型裡面是predictor,其本質則是HLM Level 2的moderator,調節的是Level 1的斜率(效應量)。
總之,除了一些少數情況(包括:①我們有很強的假設認為納入元分析的不同研究之間是同質的,②我們並不想把結論推廣到更大的總體),大多數情況下做元分析還是建議使用隨機效應RE。而且,研究者並不建議根據「效應量異質性檢驗」的結果(如Q、I²等統計量)來決定採用FE還是RE——不要數據驅動,要理論驅動!
順帶一提,jamovi(https://www.jamovi.org/)作為一款新興的統計神器,也能直接做元分析,非常方便(我是見人就安利jamovi的,哈哈哈)。
元分析中的「固定效應 vs. 隨機效應」
所謂「固定效應」和「隨機效應」都是不太精確的描述,甚至有一定的誤導性,因為在不同的統計模型裡,它們所指的具體方法甚至可能大相逕庭。而藉助HLM裡面最基本的對「固定 vs. 隨機」「截距 vs. 斜率」的2 × 2區分,我們可以清楚地看到:
GLM / OLS回歸及其特例ANOVA / ANCOVA都屬於「固定截距、固定斜率」模型,其隨機部分只有個體層面的殘差(residual)。
HLM首先屬於「隨機截距」模型,至於採用「固定斜率」還是「隨機斜率」,則綜合取決於理論假設、研究目的、樣本量是否充足等等。相比於GLM,HLM的隨機部分不僅有Level 1個體的殘差,還多了Level 1截距/斜率的誤差。
Panel model無論FE還是RE都屬於「異質性截距」模型——但對於FE,截距的異質性是「固定」的(不要求殘差服從正態分布,且允許截距與自變量相關,但在HLM裡面並無對應的等價模型,反而屬於一種OLS回歸);而對於RE,截距的異質性是「隨機」的(要求殘差服從正態分布,等價於HLM「隨機截距」模型)。總體來說,Panel model大多採用FE模型(異質性[非隨機]截距)。
Meta-analysis裡面的FE和RE分別對應於HLM的「固定斜率」和「隨機斜率」,不過這裡的「斜率」應理解為元分析不同Study的效應量。效應量本身可以看做是Level 1的斜率,而效應量的標準誤則對應於Level 1(組內)的殘差。總體來說,Meta-analysis大多採用RE模型(即HLM的隨機斜率模型)。
參考文獻Borenstein, M., Hedges, L. V., Higgins, J. P. T., & Rothstein, H. R. (2009). Introduction to meta-analysis. Wiley Publication.
Croissant, Y., & Millo, G. (2008). Panel data econometrics in R: The plm package. Journal of Statistical Software, 27(2), 1–43.
Hox, J. J. (2010). Multilevel analysis: Techniques and applications (2nd ed.). New York, NY: Routledge.
Snijders, T. A. B, & Bosker, R. J. (2012). Multilevel analysis: An introduction to basic and advanced multilevel modeling (2nd ed.). London: Sage.
Wooldridge, J. M. (2016). 橫截面與面板數據的計量經濟分析 (第2版) (胡棋智 等譯). 北京: 中國人民大學出版社.
陳強. (2014). 高級計量經濟學及Stata應用 (第2版). 北京: 高等教育出版社.
溫福星. (2009). 階層線性模型的原理與應用. 北京: 中國輕工業出版社.
謝宇. (2013). 回歸分析 (修訂版). 北京: 社會科學文獻出版社.
多層線性模型(HLM)及其自由度問題:https://zhuanlan.zhihu.com/p/50048784
統計量–效應量的相互轉換 | 元分析基礎:https://zhuanlan.zhihu.com/p/47849067
註:本文已獲原作者授權轉載,如需轉載,請聯繫原作者授權。作者包寒吳霜,文章來源OpenScience。
公號推薦
☟
經管學苑
專為經管人打造的小天地
致力於經濟學與管理學專業人才成長
提供經濟管理領域研究方法、論文寫作、
軟體操作、經驗分享、資訊時評等等
歡迎關注
☟