貝葉斯因子簡介與bain軟體包教程

2021-02-08 荷蘭心理統計聯盟

  

零假設顯著性檢驗(NHST)是目前社會科學研究數據分析的主要工具。但是在統計學領域,NHST受到了廣泛的批評。越來越多的統計學者提倡使用貝葉斯方法檢驗研究假設,也經常有做實證研究的學者諮詢如何使用貝葉斯因子(Bayes factor, BF)進行數據分析。本文首先介紹貝葉斯因子的相關問題,隨後展示如何使用R軟體包bain進行貝葉斯檢驗。貝葉斯因子是貝葉斯假設檢驗指標。以零假設H0與備擇假設Hu為例,貝葉斯因子BF0u量化了數據在假設H0下比在假設Hu下更有可能被觀測到的程度,換言之,BF0u衡量了H0相對於Hu受到數據支持的程度。比如BF0u = 5表示數據對H0的支持程度是Hu的5倍。


通過對比基於p值的NHST,來說明貝葉斯因子的優勢。1). NHST常以 p<0.05作為統計推斷的依據(或給定顯著性水平0.05,統計量是否落入拒絕域)。但是,為什麼是 p<0.05,不是0.06或0.04? p<0.05是一種約定俗成,並無嚴格的統計理論依據。研究者通常希望得到 p<0.05的結果以證明研究理論。

貝葉斯因子表示數據支持假設的相對程度。顯然,BF0u >1,數據更支持零假設;BF0u <1,數據更支持備擇假設。因此,BF0u =1是貝葉斯因子天然的分割。同時,貝葉斯因子存在不決定區間(indecision region),不作二分(拒絕或不拒絕)判斷。2). NHST是在假定零假設為真的前提下進行的,因此無法接受零假設。研究者通常誤用p>0.05來證實無差異的研究理論。而貝葉斯因子可以得到支持或反對零假設的證據。3). NHST不能同時比較多個假設。而貝葉斯因子可以轉化為後驗模型概率(posterior model probability),以百分比的形式表達哪個研究假設受到數據支持更多,找出最優理論。

4). NHST不具備連貫性和一致性(coherence and consistency)。當零假設為真時,樣本量的增大不會使p值趨於1。而貝葉斯因子具備連貫性與一致性。當零假設為真(或假)時,隨著樣本量的增大,BF0u趨向於無窮(或0)。5). NHST只針對一次數據分析。而貝葉斯因子可以通過數據的不斷收集而更新。當貝葉斯因子無法明確選擇假設時,可繼續收集收據,直到得到有說服力的貝葉斯因子。如下圖所示,貝葉斯因子隨著數據的收集而變化。研究者經常問的一個問題是BF0u多大或多小時,將接受或拒絕零假設。這個問題的背後是對閾值根深蒂固的需求,如NHST中可以決定是否拒絕零假設。然而與NHST不同,貝葉斯因子一般不作二分(拒絕或不拒絕)判斷,而是量化假設受數據支持的程度。如果BF0u在1附近,則對零假設或備擇假設均沒有偏好,即貝葉斯因子是非決定的,需要更多的數據來證明哪個假設是正確的。另一個更直接的問題是,貝葉斯因子應該多大 (或多小)時,期刊會接受文章發表?早在1961年,Harold Jeffreys就給出了BF0u>3.2或BF0u<1/3.2,表明數據有正面的證據支持假設H0或Hu。Kass & Raftery (1995) 則建議使用BF0u>3或BF0u<1/3來表示數據支持H0或Hu,但需要注意的是,這些閾值同樣沒有嚴格的理論依據。我們更推薦不設置閾值,根據貝葉斯因子研究者可做出H0受到數據支持的程度是Hu的x倍的推斷結論。

    

一些統計學者認為,零假設太過精確以至於不可能成立(Cohen, 1994; Royal, 1997),因此,即使沒有數據零假設也該被拒絕。此外,很多時候零假設不能準確描述研究理論,比如很難找到兩個總體均值是完全相等的。鑑於此,研究者同樣可以構造區間假設、次序假設、約等假設來更精確的描述研究理論:


數學上,貝葉斯因子等於兩個假設下數據邊緣似然函數的比值。對於零假設與備擇假設,貝葉斯因子表示的支持度是通過平衡H0和Hu的相對擬合度(fit)和相對複雜度(complexity)來確定的。簡單來說,貝葉斯因子可表示為

在實際使用中,已有很多軟體能夠實現貝葉斯因子的計算,包括R 包BayesFactor,bain, BFpack, bayestestR等,其中BayesFactor和bain包可在JASP可視化統計分析軟體中通過點擊的方式完成數據分析。


先驗分布反應數據收集前,研究者對模型參數的認知。先驗分布對貝葉斯因子的影響很大,因此在貝葉斯檢驗中,先驗分布的設定尤其重要。先驗設定可分為主觀的和客觀的。主觀先驗基於歷史數據或專家經驗給出模型未知參數的分布。客觀先驗可以是無信息的,也可以基於樣本數據(如empirical Bayes; posterior prior)。但在貝葉斯檢驗中,研究者不能設定無信息先驗,否則將會產生Lindley悖論,即無論數據如何,零假設都將受到貝葉斯因子的支持。因此,當參數先驗信息不存在或研究者不希望引入先驗信息以得到完全客觀的統計推斷結論時,貝葉斯檢驗通常使用默認的客觀先驗。貝葉斯檢驗的默認先驗包括g priors, Jeffreys-Zellner-Siow priors, intrinsic priors, fractional priors。默認先驗需設定超參數以便根據樣本量、參數個數等調整先驗分布的尺度。下表列出了四種默認先驗及其常用超參數和軟體實現。

貝葉斯因子在檢驗零假設,區間假設,次序假設,變量選擇等方面已有廣泛的應用,也有諸多實證研究使用貝葉斯因子分析數據。詳見最新一篇關於貝葉斯因子應用的述評
https://psyarxiv.com/cu43g

bain是BAyesian INformative hypotheses evaluation的簡稱。R軟體包bain的主要功能是通過計算貝葉斯因子,評估研究者的理論。bain使用部分樣本數據構造先驗分布,給出完全客觀的貝葉斯檢驗結果,研究者不再需要考慮先驗分布的選取問題。目前bain軟體包可處理的統計模型包括t檢驗(one sample t test; two samples t test; Welch’s t test; paired samples t test),等效性檢驗(equivalence test);方差分析(ANOVA),協方差分析(ANCOVA),多重回歸(multiple regression),重複測量(repeated measures),邏輯回歸(logistic regression),結構方程模型(包括驗證性因子分析confirmatory factor analysis,潛變量回歸latent regression等),同時可處理多組數據與缺失數據。bain軟體包可在R語言平臺和JASP軟體平臺(0.11.1及以後版本)中實現。其中x表示檢驗模型對象,可為t檢驗x<-t_test(),線性回歸x<-lm(),結構方程模型x<-sem()等輸出結果。hypothesis為待檢驗的研究假設,如
hypotheses <- "a > b > c & b > 0; a = b = c = 0"

指定了兩個研究假設,a, b, c為所關心的模型參數,符號&用於連接假設中的限制條件,符號;用於區分不同假設。同時比較多個假設(模型)時,可將不同假設(模型)以;號區分。 給定模型x和假設hypothesis,運行bain函數可得到每個待檢驗假設或模型的擬合度(Fit),複雜度(Com), 與備擇假設相比的貝葉斯因子(BF.u),與補充假設相比的貝葉斯因子(BF.c),以及假設或模型的後驗概率(PMP)。下面我們使用bain的built-in數據sesamesim,以方差分析、回歸模型、和驗證性因子分析為例來具體介紹。選取sesamesim數據中的postnumb為因變量,site為分組變量,方差分析的待檢驗假設為各組postnumb相等vs各組大小關係為組2>組5>組1>組3>組4,R語言代碼如下:
sesamesim$site <- as.factor(sesamesim$site) #make factor variableanov <- lm(postnumb ~ site - 1, sesamesim) #anova using lm()result <- bain(anov, hypothesis = "site1=site2=site3=site4=site5;site2>site5>site1>site3>site4") #test

由上述結果可知假設H1(與備擇假設Hu相比)的貝葉斯因子BF1u=0,因此數據不支持各組postnumb相等;假設H2的貝葉斯因子為BF2u=16.013,即數據支持各組大小關係為2>5>1>3>4的研究理論。此外,我們可以得到假設H1,H2與Hu的後驗模型概率PMPb,可知H2收到數據支持的程度最高(後驗模型概率為0.941)。選取sesamesim數據中的postnumb為因變量,age, peabody, prenumb為自變量,待檢驗假設為prenumb的效應強於peabody強於age。R語言代碼如下:
regr <- lm(postnumb ~ age + peabody + prenumb, sesamesim) #regressionresult<-bain(regr, "prenumb>peabody>age", standardize = T) #test

                          

需注意的是,比較回歸效應(係數)時,應對回歸係數進行標準化處理,即指定standardize = T。由上述結果可知假設H1:prenumb>peabody>age的貝葉斯因子為BF1u=5.769,即數據支持待檢驗假設的證據是備擇假設的5.769倍。R軟體包bain檢驗結構方程模型參數需藉助軟體包lavaan。選取sesamesim數據中Ab, Al等指標測量A因子; Bb, Bl等指標測量B因子。待檢驗假設為所有因子載荷均大於0.6。R語言代碼如下:
library(bain)library(lavaan)# Specify and fit the confirmatory factor modelmodel <- '    A =~ Ab + Al + Af + An + Ar + Ac    B =~ Bb + Bl + Bf + Bn + Br + Bc'# Use the lavaan sem function to execute the confirmatory factor analysisfit <- sem(model, data = sesamesim, std.lv = TRUE)

# Formulate hypotheses, call bain, obtain summary statshypotheses <-"A=~Ab>.6 & A=~Al>.6 & A=~Af>.6 & A=~An>.6 & A=~Ar>.6 & A=~Ac>.6 &B=~Bb>.6 & B=~Bl>.6 & B=~Bf>.6 & B=~Bn>.6 & B=~Br>.6 & B=~Bc>.6"result <- bain(fit, hypotheses, standardize=TRUE)sr <- summary(result, ci = 0.95)

上述代碼前半部分利用lavaan軟體包中的sem()函數定義了驗證性因子分析模型。後半部分使用sem()輸出結果與指定的假設在bain()函數中計算貝葉斯因子。其中A=~Ab表示Ab對於因子A的載荷。計算結果如下:由上述結果可知假設「所有因子載荷均大於0.6」的貝葉斯因子為BF.u=94.273,表明得到數據的支持。同時結果給出了因子載荷估計值與95%可信區間。https://cran.r-project.org/web/packages/bain/vignettes/Introduction_to_bain.html軟體包bain仍在持續開發更多模型與功能,歡迎大家關注與使用。以下是關於bain的參考文獻,有貝葉斯因子統計方法的如Gu et al. (2018),有貝葉斯因子應用的如Gu et al. (2020),有介紹bain的使用教程如Hoijtink et al. (2019a)和Van Lissa et al. (2020)。Van Lissa, C.J., Gu, X., Mulder, J., Rosseel, Y., van Zundert, C, & Hoijtink, H. (2020). Teacher’s corner: Evaluating informative hypotheses using the Bayes factor in structural equation models. Structural Equation Modelling-A Multidisciplinary Journal. Doi: 10.1080/10705511.2020.1745644.Gu, X., Hoijtink, H., & Mulder, J. (2020). Bayesian one-sided variable selection. Multivariate Behavioral Research. DOI: 10.1080/00273171.2020.1813067.Hoijtink, H., Mulder, J., van Lissa, C., & Gu, X. (2019). A tutorial on testing hypotheses using the Bayes factor. Psychological Methods, 24, 539-556. DOI: 10.1037/met0000201Hoijtink, H., Gu, X.,& Mulder, J. (2019). Bayesian evaluation of informative hypotheses for multiple populations. British Journal of Mathematical and Statistical Psychology, 72, 219-243. DOI: 10.1111/bmsp.12145Hoijtink, H., Gu, X., Mulder, J., & Rosseel, Y. (2019). Computing Bayes factors from data with missing values. Psychological Methods, 24, 253-268. DOI: 10.1037/met0000187.Gu, X., Mulder, J., & Hoijtink, H. (2018). Approximate adjusted fractional Bayes factors: A general method for testing informative hypotheses. British Journal of Mathematical and Statistical Psychology, 71, 229-261. DOI: 10.1111/bmsp.12110.

1.8w研究者的聚集地。

相關焦點

  • 前沿: BVAR, 貝葉斯VAR是什麼, 為什麼需要, 軟體怎麼做, 如何解讀呢?
    BVAR是實現這些分層貝葉斯VAR模型的第一個R包(hierarchical Bayesian VAR),它為評估和分析提供了一個完整且易於使用的工具包。下面讓我們一起走近BVAR吧!我們首先介紹貝葉斯統計軟體的發展現狀。不過,在介紹貝葉斯統計軟體的現狀之前,先來簡單介紹一下貝葉斯統計。
  • 貝葉斯機器學習路線圖
    如果您正考慮在某些問題中使用貝葉斯方法, 您需要學習"核心主題"中的所有內容. 即使您只是希望使用諸如 BUGS, Infer.NET, 或 Stan等軟體包, 這些背景知識也對您很有幫助. 如果這些軟體包不能馬上解決您的問題, 知道模型的大致思想可幫助您找出問題所在.
  • 前沿: BVAR, 貝葉斯VAR是什麼, 為什麼需要, 軟體怎麼做, 如何解讀呢?
    ARDL, ARIMA, VAR, (G)ARCH時間數據模型講解及軟體操作,17.動態因子模型是什麼, 又怎麼去實現?18.SVAR模型的起源、識別、估計與應用, 系統講述,19.平滑轉移自回歸模型(STAR)應用與在R軟體的操作,20.
  • MastercamX5軟體+安裝教程
    答:只需點上邊《天天自學網》免費關注軟體簡介:>  Mastercam 是一款出自美國CNC Software Inc.公司之手的實用型PC端CAD/CAM軟體,Mastercam ,為用戶帶來二維繪圖、三維實體造型、曲面設計、體素拼合、數控編程、刀具路徑摸擬及真實感摸擬等多種功能,Mastercam 軟體便捷好用,為用戶帶來全新的加工體驗。
  • SAS和SPSS軟體安裝包及軟體教程下載
    今天i塔尖給大家帶來了兩款統計軟體的介紹,分別是:SAS軟體和SPSS軟體點擊左下角閱讀原文可以下載這兩款軟體的安裝包和教程:
  • Mastercam2020軟體+安裝教程
    答:只需點上邊《天天自學網》免費關注軟體簡介:  Mastercam 是一款出自美國CNC Software安裝包下載:[語言]:簡體中文 [安裝環境]:Win7/Win8/Win10[64位下載連結]:連結:https://pan.baidu.com/s/1ro-G7PZwes6Mdv5IxCLfdA提取碼:5ei3(此教程只適用於本公眾號下載的安裝包)
  • Origin軟體下載安裝包+全套教程
    【軟體介紹】Origin是一款相當出色的專業化數學圖形分析軟體
  • MastercamX6軟體+安裝教程
    答:只需點上邊《天天自學網》免費關注軟體簡介:/s/1QlPBE_hVX_kn-cS6H9mJPw提取碼:kyeh(此教程只適用於本公眾號下載的安裝包)軟體安裝教程:1.滑鼠點擊軟體壓縮包,選擇解壓到「Mastercam X6-64(安裝教程關注天天自學網公眾號)」。
  • python3.9.0軟體安裝教程+32/64位安裝包下載
    軟體簡介Python 是一種易於學習又功能強大的程式語言。它提供了高效的高級數據結構,還能簡單有效地面向對象編程。
  • 宏基因組/微生物組雜誌簡介及2020最新影響因子
    方法學神刊,影響因子在30左右波動,生物學軟體方法、評測類文章能發於此,是很多同行的追求(極少數可發NBT,如PICRUSt 2和QIIME2,但可望而不可及),此雜誌要求不僅要軟體好用,更要結合具體科研項目提供新的發現。
  • 【前沿】NIPS2017貝葉斯生成對抗網絡TensorFlow實現(附GAN資料下載)
    導讀今年五月份康奈爾大學的 Andrew Gordon Wilson 和 Permutation Venture 的 Yunus Saatchi 提出了一個貝葉斯生成對抗網絡(Bayesian GAN),結合貝葉斯和對抗生成網絡,提出了一個實用的貝葉斯公式框架,用GAN來進行無監督學習和半監督式學習。
  • 宏基因組 微生物組 微生態雜誌簡介及2019最新影響因子
    方法學神刊,影響因子在30左右波動,生物學軟體方法、評測類文章能發於此,是很多同行的追求(極少數可發NBT,如PICRUSt和QIIME2,但可望而不可及),此雜誌要求不僅要軟體好用,更要結合具體科研項目提供新的發現。
  • Office 2019 軟體安裝包+安裝教程
    2.雙擊打開【Offce2019】文件夾。9.雙擊【Word】軟體圖標啟動軟體。溫馨提示:如果文件夾裡面沒有MicroKMS 神龍版或者打不開,請關閉電腦上的殺毒軟體和防火牆(Win10系統還需關閉Defender)後重新解壓安裝包打開。
  • 樸素貝葉斯算法的案例實現
    一、樸素貝葉斯分類的R函數介紹1、樸素貝葉斯分類算法的實現函數R中的e1071包中的naiveBayes函數可以實現樸素貝葉斯算法,具體的函數格式如下:naiveBayes(x, y,laplace=0)常用變量具體的參數解釋如下:
  • 軟體 | office軟體下載安裝教程+安裝包+計算機二級資料
    以2010和2019版本安裝作為教學其他版本的安裝也都基本一致可參照安裝步驟office2010安裝教程示例1、選擇軟體安裝包,滑鼠右擊解壓2、打開解壓之後的文件夾,點擊Office2010(64位)文件夾,滑鼠右擊setup,選擇以管理員的身份運行
  • Mastercam2021安裝包+安裝教程
    答:只需點上邊《天天自學網》免費關注軟體簡介:  Mastercam 是一款出自美國CNC Software支持   win7/win8/win10     64位作業系統mastercamX5-2021安裝不成功處理方法:點擊這裡公眾號裡安裝包如何下載:點擊這裡  解壓安裝包,安裝軟體之前退出殺毒以及關閉系統防火牆,避免誤刪破解程序。
  • 樸素貝葉斯分類垃圾簡訊和R實現
    樸素貝葉斯算法思想起源18世紀數學家託馬斯.貝葉斯(Thomas Bayes),基於貝葉斯定理和特徵條件獨立假設的分類方法,它通過特徵計算分類的概率,選取概率大的情況,是基於概率論的一種機器學習分類(監督學習)方法。
  • 建築製圖、設計必備軟體,CAD安裝包+CAD安裝教程+CAD快捷命令
    CAD各版本(2004-2020)安裝包+安裝教程,喜歡的趕快拿走吧內容關鍵詞:AutoCAD、安裝教程、建築、建築、設計、繪圖軟體、AutoCAD、AutoCAD2004如今不管你是學建設設計、室內設計都會應用到CAD,它已經成為行業從業人員必不可少的軟體之一,今天小編就為大家整理了AutoCAD各版本,AutoCAD2004--AutoCAD2020軟體安裝包+安裝教程,供大家學習使用。
  • 386-【EDIUS軟體】EDIUS8.53軟體 安裝包+安裝教程
    往期回顧,點擊查看:001-【AE模版拷貝】帶4T硬碟發貨,全部分類,免下載包更新!002-【視頻壓縮軟體-神器】將1G視頻壓縮到幾十兆,依然清晰!003-【配音軟體】一款地攤 廣告 喊話 配音軟體 004-【含加密狗】Edius6.55小篆2.35 真三維雷特字幕永久版005-【含加密狗】專業達文西調色軟體16 win+mac006-【一鍵調色】looks 4.0魔法調色支持AE/PR/EDIUS007-【ADOBE 2020】全系列,所有軟體集合永久版!