付費限定

使用R語言跑多層次模型:模型比較

更新於 發佈於 閱讀時間約 9 分鐘

實務中,我們很難決定要使用哪一種多層次模型更好,這時候可以透過模型比較方式給我們有用的建議。本文章將介紹嵌套模型,還有如何透過R語言,使用ranova()和anova()來比較不同的多層次模型,並提供實際範例。

0.嵌套模型

嵌套模型比較是指不同嵌套模型進行比較,以確定哪個模型更適合數據。嵌套模型是指一個模型包含另一個模型的情況。常見的策略是,一個多層次模型中模型的將A因子設定為隨機效應,是另一個模型則將A因子設定固定效應。兩個模型比較將可以得知A因子是否的隨機效果是否成立。假設我們有一個數據集,其中包含學生的數學成績和學生的班級。我們想研究班級對學生數學成績的影響是否具有的隨機斜率效果。

我們可以建立兩個嵌套模型來研究這個問題:

  • 模型 1:班級斜率作為固定效應。
  • 模型 2:班級斜率作為隨機效應。

模型 1 是模型 2 的嵌套模型,因為模型 2 的隨機效應是模型 1 的固定效應。

1.加載相關package

library(lme4)
library(lmerTest)
library(ggplot2)
library(interactions)
library(haven)

2.加載資料

hsbfull<- read_sav("hsbfull with meanses and sesdev.sav")

3.跑Random Coefficients 模型

CroLev1<- lmer(mathach ~ 1 + sesdev + 
( 1+sesdev|schoolid), data = hsbfull)
summary(CroLev1)

這段程式碼是使用 hsbfull 資料集。模型包含:

  • sesdev: 社會經濟地位 (SES)

模型也包含2個隨機效果:

  • (1|schoolid): 學校層級的隨機截距
  • (sesdev|schoolid): 學校層級的 SES 隨機斜率

模型的預測變量是學生的數學成績 (mathach)。

summary() 函式會輸出模型的結果,其中包含估計的參數、標準誤差和 p 值。

4.使用ranova()比較模型

ranova()會自動將目前模型和減少一個隨機效果的模型做比較,他會優先減少斜率再來才是截距,例如:

  • 原本模型(1 | 層次2id),則比較模型是直接將隨機截距拿掉,變成傳統迴歸分析,1代表截距
  • 原本模型(1+因子1 | 層次2id),則比較模型為(1+ | 層次2id),1代表截距
  • 原本模型(1+因子1+因子2 | 層次2id),則分別比較模型為(1+因子1 | 層次2id)(1+因子2 | 層次2id)
  • 因子可以是連續或類別


本範例中,輸入ranova(CroLev1) ,結果如下:

Model:
mathach ~ sesdev + (1 + sesdev | schoolid)
npar logLik AIC LRT Df Pr(>Chisq)
<none> 6 -23357 46726
sesdev in (1 + sesdev | schoolid) 4 -23362 46732 9.7617 2 0.007591 **
---
Signif. codes: 0***0.001**0.01*0.05.0.1 ‘ ’ 1
  • npar 代表該模型用的參數
  • <none> 就是原本的模型,其隨機截距+斜率效果為 (1 + sesdev | schoolid)
  • sesdev in (1 + sesdev | schoolid)表示刪除sesdev隨機效應項的模型。也就是只有隨機截距效果(1 | schoolid)
  • LRT為9.7617,P為0.007591 **,代表兩個模型有顯著差異,至於哪個比較好,可以從logLikAIC哪個比較小來判斷。

5.使用anova()比較模型

也可以用anova()語法來比較兩個模型,但兩個模型都要透過lmer()先建立一個Random_Intercepts跟Random_Coefficients 模型 。然後透過anova(random_intercepts, Random_Coefficients)進行比較兩個模型。比較結果如下:

                  npar   AIC   BIC logLik deviance  Chisq Df Pr(>Chisq)    
random_intercepts 4 46728 46756 -23360 46720
Random_Coefficients 10 46572 46640 -23276 46552 168.76 6 < 2.2e-16 ***
---
Signif. codes: 0***0.001**0.01*0.05.0.1 ‘ ’ 1

Chisq為168.76,P為2.2e-16,代表兩個模型有顯著差異,至於哪個比較好,可以從deviance/AIC/BIC哪個比較小來判斷。此做法比較自由,可以比較任何兩種模型。但也比較麻煩,要自己建立模型。

6.使用ranova()比較模型:兩隨機斜率模型

random_twoslopes<- lmer(mathach ~ 1 + sesdev + ses+
(1+ sesdev+hsbfull$ses|schoolid), data = hsbfull)
以行動支持創作者!付費即可解鎖
本篇內容共 3835 字、0 則留言,僅發佈於統計分析 × 學術生涯你目前無法檢視以下內容,可能因為尚未登入,或沒有該房間的查看權限。
avatar-img
224會員
124內容數
文章內容以圖像式和步驟化方式,教您如何在各種統計軟體中(例如:SPSS、R和Mplus),執行多種統計方法。此外,我還會分享一些學術和科技新知,幫助您在學術之路上走得更順利。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
心理博士的筆記本 的其他內容
在使用R跑多層次模型時,有時候會遇到連續調節變項,這時候分析會和類別調節變項有所差異,本文在介紹遇到連續調節變項時,如何進行簡單斜率分析,以及如何畫交互作用圖,最後再說如何使用Johnson-Neyman法。
如同迴歸一樣,跑多層次分析時同樣也會可能檢定交互作用,當交互作用顯著時,我們習慣透過簡單斜率和交互作用圖來做進一步檢視。本文將介紹如何使用R語言做多層次模型的簡單斜率和交互作用圖。因為是第一次教學,所以先說比較容易懂的類別調節變項和連續自變項的交互作用。
在進行多層次線性模型(MLM)當中,有時候我們不只會加入層次1的預測變項。我們也會想加入層次2預測變項。本文將介紹加入層次2預測變項的各種模型,並解釋其公式和R語言操作方法。因為內容比較多,所以篇幅比較長。 多層次線性模型(MLM),截距是表示所有學校的平均值。斜率是指模型中自變量的係數,表
Groupmean centering是一種常用的資料預處理方法,特別是多層次分析,若要使用Rights & Sterba (2019)(2019) 發展出R2 (R&S),要對需要將層次1的變項和交互作用都 Groupmean centering。本文介紹使用R和SPSS操作方法
用R語言進行HLM分析第一章將介紹ICC係數定義,並實際示範如何使用R語言計算ICC,並解釋其含意。
R語言是一種統計學與資料科學領域的程式語言,具有強大的統計分析和資料處理功能。本文介紹R語言在統計常見的基本語法,包含:安裝和執行套件、載入和查看資料、基本敘述統計函式、輸出資料、輸出檔案和遺失值。
在使用R跑多層次模型時,有時候會遇到連續調節變項,這時候分析會和類別調節變項有所差異,本文在介紹遇到連續調節變項時,如何進行簡單斜率分析,以及如何畫交互作用圖,最後再說如何使用Johnson-Neyman法。
如同迴歸一樣,跑多層次分析時同樣也會可能檢定交互作用,當交互作用顯著時,我們習慣透過簡單斜率和交互作用圖來做進一步檢視。本文將介紹如何使用R語言做多層次模型的簡單斜率和交互作用圖。因為是第一次教學,所以先說比較容易懂的類別調節變項和連續自變項的交互作用。
在進行多層次線性模型(MLM)當中,有時候我們不只會加入層次1的預測變項。我們也會想加入層次2預測變項。本文將介紹加入層次2預測變項的各種模型,並解釋其公式和R語言操作方法。因為內容比較多,所以篇幅比較長。 多層次線性模型(MLM),截距是表示所有學校的平均值。斜率是指模型中自變量的係數,表
Groupmean centering是一種常用的資料預處理方法,特別是多層次分析,若要使用Rights & Sterba (2019)(2019) 發展出R2 (R&S),要對需要將層次1的變項和交互作用都 Groupmean centering。本文介紹使用R和SPSS操作方法
用R語言進行HLM分析第一章將介紹ICC係數定義,並實際示範如何使用R語言計算ICC,並解釋其含意。
R語言是一種統計學與資料科學領域的程式語言,具有強大的統計分析和資料處理功能。本文介紹R語言在統計常見的基本語法,包含:安裝和執行套件、載入和查看資料、基本敘述統計函式、輸出資料、輸出檔案和遺失值。
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 在某些情況下,別人提供的 Pretrained Transformer Model 效果不盡人意,可能會想要自己做 Pretrained Model,但是這會耗費大量運
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 新模型和 Human Baselines 排名將不斷變化,Human Baselines 的位置自從基礎模型出現以來,它就不再具有多大意義了,這些排名只是表明經典 NL
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 繼 AI說書 - 從0開始 - 82 與 xxx ,我們談論了衡量 AI 模型的方式,那當你訓練的模型比 State-of-the-Art 還要好並想要進行宣稱時,需要
大語言模型通常會生產自己的「嵌入 Embedding」作為部分的輸入層, 並且在大語言模型的訓練途中不斷優化嵌入的方式, 以對特定的任務特定的數據優化。 而大語言模型使用的「嵌入維度 Embedding Dimension」通常是高維度的, 例如最小的GPT-2模型有1億1千
Thumbnail
大語言模型(LLMs)對於任何對人工智能和自然語言處理感興趣的人來說都是一個令人興奮的領域。 這類模型,如GPT-4, 透過其龐大的數據集和複雜的參數設置, 提供了前所未有的語言理解和生成能力。 那麼,究竟是什麼讓這些模型「大」得如此不同呢?
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 在某些情況下,別人提供的 Pretrained Transformer Model 效果不盡人意,可能會想要自己做 Pretrained Model,但是這會耗費大量運
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 87 說:Wang 等人 2019 年的論文,提供了合理答案的選擇 (Choice of Plausible Answers, COP
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 新模型和 Human Baselines 排名將不斷變化,Human Baselines 的位置自從基礎模型出現以來,它就不再具有多大意義了,這些排名只是表明經典 NL
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 繼 AI說書 - 從0開始 - 82 與 xxx ,我們談論了衡量 AI 模型的方式,那當你訓練的模型比 State-of-the-Art 還要好並想要進行宣稱時,需要
大語言模型通常會生產自己的「嵌入 Embedding」作為部分的輸入層, 並且在大語言模型的訓練途中不斷優化嵌入的方式, 以對特定的任務特定的數據優化。 而大語言模型使用的「嵌入維度 Embedding Dimension」通常是高維度的, 例如最小的GPT-2模型有1億1千
Thumbnail
大語言模型(LLMs)對於任何對人工智能和自然語言處理感興趣的人來說都是一個令人興奮的領域。 這類模型,如GPT-4, 透過其龐大的數據集和複雜的參數設置, 提供了前所未有的語言理解和生成能力。 那麼,究竟是什麼讓這些模型「大」得如此不同呢?