Berurusan dengan fit tunggal dalam model campuran

16

Katakanlah kita punya model

mod <- Y ~ X*Condition + (X*Condition|subject)

# Y = logit variable  
# X = continuous variable  
# Condition = values A and B, dummy coded; the design is repeated 
#             so all participants go through both Conditions  
# subject = random effects for different subjects 

summary(model)
Random effects:
 Groups  Name             Variance Std.Dev. Corr             
 subject (Intercept)      0.85052  0.9222                    
         X                0.08427  0.2903   -1.00            
         ConditionB       0.54367  0.7373   -0.37  0.37      
         X:ConditionB     0.14812  0.3849    0.26 -0.26 -0.56
Number of obs: 39401, groups:  subject, 219

Fixed effects:
                 Estimate Std. Error z value Pr(>|z|)    
(Intercept)       2.49686    0.06909   36.14  < 2e-16 ***
X                -1.03854    0.03812  -27.24  < 2e-16 ***
ConditionB       -0.19707    0.06382   -3.09  0.00202 ** 
X:ConditionB      0.22809    0.05356    4.26 2.06e-05 ***

Di sini kita amati kesesuaian singular, karena korelasi antara intersep dan x efek acak adalah -1. Sekarang, menurut tautan yang bermanfaat ini satu cara untuk menangani model ini adalah dengan menghilangkan efek acak tingkat tinggi (misalnya, X: ConditionB) dan melihat apakah itu membuat perbedaan ketika menguji singularitas. Yang lainnya adalah menggunakan pendekatan Bayesian, misalnya blmepaket untuk menghindari singularitas.

Apa metode yang dipilih dan mengapa?

Saya menanyakan hal ini karena menggunakan yang pertama atau yang kedua menghasilkan hasil yang berbeda - dalam kasus pertama, saya akan menghapus X: efek acak ConditionB dan tidak akan dapat memperkirakan korelasi antara X dan X: efek acak ConditionB. Di sisi lain, menggunakan blmememungkinkan saya untuk tetap X: ConditionB dan untuk memperkirakan korelasi yang diberikan. Saya tidak melihat alasan mengapa saya harus menggunakan estimasi non-bayesian dan menghapus efek acak ketika cocok singular terjadi ketika saya bisa memperkirakan semuanya dengan pendekatan Bayesian.

Dapatkah seseorang menjelaskan kepada saya manfaat dan masalah menggunakan salah satu metode untuk menangani kesesuaian tunggal?

Terima kasih.

User33268
sumber
Apa yang Anda khawatirkan bahwa corr = -1? Ini adalah korelasi antara efek acak.
user158565
Jadi setiap subjek memberi Anda dua pengukuran Y, satu di bawah kondisi A dan satu di bawah kondisi B? Jika itu benar, dapatkah Anda juga memberi tahu kami apakah nilai variabel kontinu X berubah untuk subjek apa pun yang diberikan antara kondisi A dan B?
Isabella Ghement
Mengapa Anda memasukkan Condition ke dalam efek acak? Sudahkah Anda menguji jika diperlukan?
Dimitris Rizopoulos
@ user158565 ya tapi itu menandakan singuarity ...
User33268
@IsabellaGhement Memang. Ya, x perubahan untuk setiap subjek yang diberikan antara A dan B. Selain itu, ada alasan teoritis untuk mengasumsikan bahwa regresi Y pada X berbeda untuk setiap subjek
User33268

Jawaban:

21

Ketika Anda mendapatkan kecocokan singular, ini sering menunjukkan bahwa model terlalu pas - yaitu, struktur efek acak terlalu kompleks untuk didukung oleh data, yang secara alami mengarah pada saran untuk menghapus bagian paling kompleks dari efek acak struktur (biasanya lereng acak). Manfaat dari pendekatan ini adalah mengarah pada model yang lebih pelit dan tidak terlalu pas.

Namun, sebelum melakukan sesuatu, apakah Anda memiliki alasan yang kuat untuk menginginkan X, Conditiondan interaksinya, semuanya berbeda menurut subjeknya? Apakah teori tentang bagaimana data dihasilkan menyarankan ini?

Jika Anda ingin mencocokkan model dengan struktur efek acak maksimal, dan lme4mendapatkan kesesuaian singular, maka pemasangan model yang sama dalam kerangka Bayesian mungkin akan memberi tahu Anda mengapa lme4 ada masalah, dengan memeriksa plot jejak dan seberapa baik berbagai estimasi parameter konvergen . Keuntungan dalam mengambil pendekatan Bayesian adalah bahwa dengan melakukan itu Anda dapat mengungkap masalah dengan model asli yaitu. alasan mengapa struktur efek acak maksimum tidak didukung oleh data) atau mungkin mengungkap mengapa lme4tidak dapat sesuai dengan model. Saya telah menemukan situasi di mana model Bayesian tidak bertemu dengan baik, kecuali digunakan informasi informatif - yang mungkin atau mungkin tidak OK.

Singkatnya, kedua pendekatan itu pantas.

Namun, saya akan selalu mulai dari tempat di mana model awal adalah pelit dan diinformasikan oleh ahli pengetahuan domain untuk menentukan struktur efek acak yang paling tepat. Menentukan pengelompokan variabel relatif mudah, tetapi lereng acak biasanya tidak memiliki untuk dimasukkan. Hanya sertakan mereka jika mereka masuk akal secara teoritis DAN mereka didukung oleh data.

Sunting: Disebutkan dalam komentar bahwa ada alasan teoretis yang kuat agar sesuai dengan struktur efek acak maksimal. Jadi, cara yang relatif mudah untuk melanjutkan dengan model Bayesian yang setara adalah dengan menukar panggilan glmerdengan stan_glmerdari rstanarmpaket - itu dirancang untuk plug and play. Ini memiliki prior default, sehingga Anda dapat dengan cepat mendapatkan model yang pas. Paket ini juga memiliki banyak alat untuk menilai konvergensi. Jika Anda menemukan bahwa semua parameter memiliki konvergensi ke nilai yang masuk akal, maka Anda semua baik-baik saja. Namun bisa ada sejumlah masalah - misalnya varian yang diperkirakan pada atau di bawah nol, atau perkiraan yang terus melayang. Situs mc-stan.org memiliki banyak informasi dan forum pengguna.

Robert Long
sumber
1
Ya, saya punya alasan teoretis yang baik untuk mengasumsikan bahwa regresi Y pada X harus bervariasi antar subjek berbeda untuk kondisi A dan B. Regresi menyiratkan gaya pemrosesan. Bisakah Anda memberi saya lebih banyak info tentang cara menafsirkan plot jejak sebagai alat diagnostik untuk penyebab singularitas?
User33268
11

Ini adalah utas yang sangat menarik, dengan jawaban dan komentar yang menarik! Karena ini belum diangkat, saya ingin menunjukkan bahwa kami memiliki sangat sedikit data untuk setiap mata pelajaran (seperti yang saya mengerti). Memang, setiap subjek hanya memiliki dua nilai untuk masing-masing variabel respon Y, variabel kategori Kondisi dan variabel kontinu X. Secara khusus, kita tahu bahwa kedua nilai Kondisi adalah A dan B.

Jika kita mengejar pemodelan regresi dua tahap daripada pemodelan efek campuran, kita bahkan tidak bisa memasukkan model regresi linier ke data dari subjek tertentu, seperti yang diilustrasikan dalam contoh mainan di bawah ini untuk salah satu subjek:

y <- c(4, 7)
condition <- c("A", "B")
condition <- factor(condition)
x <- c(0.2, 0.4)

m <- lm(y ~ condition*x)
summary(m)

Output dari model subjek-spesifik ini adalah:

Call:
lm(formula = y ~ condition * x)

Residuals:
ALL 2 residuals are 0: no residual degrees of freedom!

Coefficients: (2 not defined because of singularities)
         Estimate Std. Error t value Pr(>|t|)
(Intercept)         4         NA      NA       NA
conditionB          3         NA      NA       NA
x                  NA         NA      NA       NA
conditionB:x       NA         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1,     Adjusted R-squared:    NaN 
F-statistic:   NaN on 1 and 0 DF,  p-value: NA

Perhatikan bahwa model tersebut sesuai dengan singularitas, karena kami mencoba memperkirakan 4 koefisien regresi ditambah deviasi standar kesalahan menggunakan hanya 2 pengamatan.

Singularitas akan bertahan bahkan jika kita mengamati subjek ini dua kali - bukan satu kali - dalam setiap kondisi. Namun, jika kami mengamati subjek 3 kali dalam setiap kondisi, kami akan menghilangkan singularitas:

y <- c(4, 7, 3, 5, 1, 2)
condition <- c("A", "B", "A","B","A","B")
condition <- factor(condition)
x <- c(0.2, 0.4, 0.1, 0.3, 0.3, 0.5)

m2 <- lm(y ~ condition*x)
summary(m2)

Berikut adalah output R yang sesuai untuk contoh kedua ini, dari mana singularitas telah menghilang:

>     summary(m2)

Call:
lm(formula = y ~ condition * x)

Residuals:
    1       2       3       4       5       6 
1.3333  2.3333 -0.6667 -1.1667 -0.6667 -1.1667 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)
(Intercept)     4.667      3.555   1.313    0.320
conditionB      6.000      7.601   0.789    0.513
x             -10.000     16.457  -0.608    0.605
conditionB:x   -5.000     23.274  -0.215    0.850

Residual standard error: 2.327 on 2 degrees of freedom
Multiple R-squared:  0.5357,    Adjusted R-squared:  -0.1607 
F-statistic: 0.7692 on 3 and 2 DF,  p-value: 0.6079

Tentu saja, model efek campuran tidak cocok dengan model regresi linier yang tidak terkait dan terpisah untuk setiap subjek - model ini cocok dengan model "terkait" yang intersep dan / atau lerengnya menyimpang secara acak tentang intersep dan / atau lereng yang khas, sehingga penyimpangan acak dari mencegat tipikal dan / atau kemiringan tipikal mengikuti distribusi normal dengan rata-rata nol dan beberapa standar deviasi yang tidak diketahui.

Meski begitu, intuisi saya menunjukkan bahwa model efek campuran sedang berjuang dengan sejumlah kecil pengamatan - hanya 2 - tersedia untuk setiap subjek. Semakin banyak model dimuat dengan kemiringan acak, semakin besar kemungkinan ia berjuang. Saya menduga bahwa, jika masing-masing subjek berkontribusi 6 pengamatan bukannya 2 (yaitu, 3 per kondisi), maka tidak akan lagi kesulitan untuk mengakomodasi semua lereng acak.

Sepertinya bagi saya bahwa ini bisa menjadi (?) Kasus di mana desain studi saat ini tidak mendukung ambisi pemodelan yang kompleks - untuk mendukung ambisi tersebut, pengamatan lebih lanjut akan diperlukan di bawah setiap kondisi untuk setiap subjek (atau setidaknya untuk beberapa subyek?). Ini hanya intuisi saya sehingga saya berharap orang lain dapat menambahkan wawasan mereka ke pengamatan saya di atas. Terima kasih sebelumnya!

Isabella Ghement
sumber
Saya harus mengoreksi Anda - setiap peserta memiliki 30 observasi untuk X dan Y, dalam kondisi A dan B!
User33268
2
Oh, itu tidak ditunjukkan dalam jawaban awal Anda sehingga tidak mungkin bagi saya untuk menebak berapa banyak pengamatan per subjek dan kondisi yang Anda miliki. Ada hal lain yang terjadi saat itu. Apakah Anda mencoba menstandarkan variabel X Anda? Apakah itu membantu saya cocok? Juga, apakah Anda melihat plot Y vs X (atau X standar) untuk Kondisi = A vs Kondisi = B secara terpisah untuk setiap subjek? Itu mungkin memberi Anda petunjuk tambahan tentang apa yang sedang terjadi.
Isabella Ghement
Saya tidak membuat standar x karena ini adalah data waktu reaksi dan penting untuk interpretasi koefisien regresi. Namun, data terpusat. Saya akan melihat ke plot individu, dan lihat ...
User33268
1
@ User33268 Saya agak terlambat ke pesta, tetapi Anda masih dapat menginterpretasikan koefisien terstandarisasi, Anda hanya perlu menyimpan nilai yang digunakan untuk penskalaan dan kemudian melakukan backtransform setelah menjalankan model.
Frans Rodenburg