Heteroskedastisitas dan ekor yang berat secara simultan dalam model regresi

8

Saya mencoba membuat model prediksi menggunakan regresi. Ini adalah plot diagnostik untuk model yang saya dapatkan dari menggunakan lm () di R: plot diagnostik dari R

Apa yang saya baca dari plot QQ adalah bahwa residual memiliki distribusi berekor berat, dan plot Residual vs Fitted tampaknya menunjukkan bahwa varians residu tidak konstan. Saya bisa menjinakkan ekor yang berat dari residu dengan menggunakan model yang kuat:

fitRobust = rlm(formula, method = "MM", data = myData)

Tapi di situlah segalanya berhenti. Model yang kuat berbobot beberapa poin 0. Setelah saya menghapus titik-titik itu, ini adalah bagaimana sisa dan nilai-nilai yang pas dari model yang kuat terlihat seperti:Residual vs Dipasang untuk model yang kuat

Heteroskedastisitas tampaknya masih ada. Menggunakan

logtrans(model, alpha) 

dari paket MASS, saya mencoba mencari sedemikian rupaα

rlm(formula, method = "MM") 

dengan rumus menjadi memiliki residu dengan varian konstan. Setelah saya menemukan , model kuat yang dihasilkan yang diperoleh untuk rumus di atas memiliki plot Residual vs Fitted berikut:log(Y+α)X1++Xnα

Residual vs Dipasang untuk respons log-transformed

Menurut saya seolah-olah residu masih tidak memiliki varian konstan. Saya sudah mencoba transformasi respon lainnya (termasuk Box-Cox), tetapi mereka juga tidak terlihat seperti perbaikan. Saya bahkan tidak yakin bahwa tahap kedua dari apa yang saya lakukan (yaitu menemukan transformasi respons dalam model yang kuat) didukung oleh teori apa pun. Saya sangat menghargai komentar, pemikiran, atau saran.

pengguna765195
sumber
2
Saya pikir Anda menjadi sedikit pemilih tentang varian yang tidak konstan. Tampaknya baik bagi saya. Apa tujuan dari regresi? Penjelasan / pengujian hipotesis atau prediksi?
probabilityislogic
@probabilityislogic, terima kasih atas komentar Anda. Saya sangat menghargai nya. Tujuan saya adalah prediksi. Kamu benar. Saya mungkin terlalu pemilih. Apakah ada ukuran untuk heteroskedastisitas yang bisa saya lihat? Saya berpikir untuk merencanakan varians vs nilai-nilai yang cocok tetapi tidak ada banyak poin untuk setiap nilai prediksi untuk menghitung varians. Saya juga ingin tahu apa solusi untuk masalah ini secara umum. Apakah Box-Cox dan transformasi log juga berlaku untuk model yang kuat?
user765195
Anda dapat melakukan uji berpasangan untuk persamaan varian menggunakan uji F untuk model dengan istilah kesalahan Gaussian atau jika mereka memiliki distribusi non-Gaussian ada tes kuat untuk dispersi seperti tes Levene's.
Michael R. Chernick
@MichaelChernick terima kasih. Saya sangat menghargai komentar Anda. Saya akhirnya menggunakan generalisasi Koenker tentang Breusch-Pagan untuk heteroskedastisitas sebagaimana diterapkan dalam paket lmtest di R ( hosho.ees.hokudai.ac.jp/ ~kubo / Rdoc / library / lmtest / html/… ).
user765195

Jawaban:

3

Heteroscedasticity dan leptokurtosis mudah digabungkan dalam analisis data. Ambil model data yang menghasilkan istilah kesalahan sebagai Cauchy. Ini memenuhi kriteria untuk homoseksualitas. Distribusi Cauchy memiliki varian yang tak terbatas. Kesalahan Cauchy adalah cara simulator memasukkan proses pengambilan sampel outlier.

Dengan kesalahan berekor berat ini, bahkan ketika Anda cocok dengan model rata-rata yang benar, outlier mengarah ke residu yang besar. Tes heteroskedastisitas telah sangat meningkatkan kesalahan tipe I dalam model ini. Distribusi Cauchy juga memiliki parameter skala. Menghasilkan istilah kesalahan dengan peningkatan linier dalam skala menghasilkan data heteroskedastik, tetapi kekuatan untuk mendeteksi efek tersebut praktis nol sehingga kesalahan tipe II meningkat juga.

Izinkan saya menyarankan, pendekatan analitik data yang tepat tidak menjadi terperosok dalam tes. Tes statistik terutama menyesatkan. Tidak ada tempat yang lebih jelas dari tes yang dimaksudkan untuk memverifikasi asumsi pemodelan sekunder. Mereka bukan pengganti untuk akal sehat. Untuk data Anda, Anda dapat dengan jelas melihat dua residu besar. Efeknya pada tren minimal sesedikitnya jika ada residu diimbangi dalam keberangkatan linier dari garis 0 dalam plot residu vs pas. Hanya itu yang perlu Anda ketahui.

Yang diinginkan kemudian adalah cara memperkirakan model varians fleksibel yang akan memungkinkan Anda untuk membuat interval prediksi pada berbagai respons yang dipasang. Menariknya, pendekatan ini mampu menangani sebagian besar bentuk waras heteroscedasticity dan kurtotis. Mengapa tidak menggunakan pendekatan spline smoothing untuk memperkirakan rata-rata kesalahan kuadrat.

Ambil contoh berikut:

set.seed(123)
x <- sort(rexp(100))
y <- rcauchy(100, 10*x)

f <- lm(y ~ x)
abline(f, col='red')
p <- predict(f)
r <- residuals(f)^2

s <- smooth.spline(x=p, y=r)

phi <- p + 1.96*sqrt(s$y)
plo <- p - 1.96*sqrt(s$y)

par(mfrow=c(2,1))
plot(p, r, xlab='Fitted', ylab='Squared-residuals')
lines(s, col='red')
legend('topleft', lty=1, col='red', "predicted variance")

plot(x,y, ylim=range(c(plo, phi), na.rm=T))
abline(f, col='red')
lines(x, plo, col='red', lty=2)
lines(x, phi, col='red', lty=2)

Memberikan interval prediksi berikut yang "melebar" untuk mengakomodasi outlier. Ini masih merupakan penaksir varians yang konsisten dan berguna memberi tahu orang-orang, "Hai ada pengamatan besar dan tidak pasti di sekitar X = 4 dan kami tidak dapat memprediksi nilai yang sangat berguna di sana."

masukkan deskripsi gambar di sini

AdamO
sumber
Apakah ini akan bekerja untuk tipe lain dari lms, seperti gls?
user2974951