Bagaimana memodelkan variabel target yang dibatasi?

17

Saya memiliki 5 variabel dan saya mencoba memprediksi variabel target saya yang harus berada dalam kisaran 0 hingga 70.

Bagaimana saya menggunakan informasi ini untuk membuat model target saya lebih baik?

pengguna333
sumber

Jawaban:

21

Anda tidak perlu harus melakukan apa pun. Mungkin prediktornya akan bekerja dengan baik. Bahkan jika extrapolates prediktor terhadap nilai-nilai di luar jangkauan, mungkin menjepit prediksi untuk rentang (yaitu, penggunaan maks(0,min(70,y^)) bukan ) akan melakukannya dengan baik. Validasi silang model untuk melihat apakah ini berhasil.y^

Namun, rentang terbatas meningkatkan kemungkinan hubungan nonlinear antara variabel dependen ( ) dan variabel independen ( ). Beberapa indikator tambahan ini meliputi:yxsaya

  • Variasi yang lebih besar dalam nilai residu ketika berada di tengah kisarannya, dibandingkan dengan variasi residu di kedua ujung rentang.y^

  • Alasan teoritis untuk hubungan non-linear tertentu.

  • Bukti model salah spesifikasi (diperoleh dengan cara biasa).

  • Signifikansi istilah kuadratik atau tingkat tinggi dalam .xsaya

Pertimbangkan ekspresi ulang nonlinier jika salah satu dari kondisi ini berlaku.y

Ada banyak cara untuk mengekspresikan kembali untuk menciptakan hubungan yang lebih linier dengan . Misalnya, setiap fungsi peningkatan didefinisikan pada interval dapat "dilipat" untuk membuat fungsi peningkatan simetris melalui . Jika menjadi besar secara sewenang-wenang dan negatif ketika argumennya mendekati , versi dilipat akan memetakan ke semua bilangan real. Contoh fungsi tersebut termasuk logaritma dan kekuatan negatif apa pun. Menggunakan logaritma sama dengan "logit link" yang direkomendasikan oleh @ user603. Cara lain adalah membiarkanyxsayaf[0,70]yf(y)-f(70-y)f0f[0,70]Gmenjadi CDF terbalik dari setiap distribusi probabilitas dan mendefinisikan . Menggunakan distribusi normal memberikan transformasi "probit".f(y)=G(y/70)

Salah satu cara untuk mengeksploitasi keluarga transformasi adalah dengan bereksperimen: mencoba transformasi yang mungkin, melakukan regresi cepat dari ditransformasi terhadap x i , dan menguji residu: mereka harus tampak independen dari nilai prediksi y (homoseksual dan tidak berkorelasi ). Ini adalah tanda-tanda hubungan linear dengan variabel independen. Ini juga membantu, jika residu dari nilai prediksi yang ditransformasikan kembali cenderung kecil. Ini menunjukkan transformasi telah meningkatkan kecocokan. Untuk menolak efek pencilan, gunakan metode regresi yang kuat seperti kuadrat terkecil yang berulang secara berulang .yxsayay

whuber
sumber
1
+1 Jawaban bagus! Dapatkah Anda memperkirakan atau memberi kutipan mengapa "variasi yang lebih besar dalam nilai residu ketika Anda berada di tengah rentangnya, dibandingkan dengan variasi residu di kedua ujung rentang" merupakan indikasi non-linearitas?
Andy McKenzie
1
@Andy Dalam teori, heteroskedastisitas seperti itu tidak memiliki hubungan langsung dengan nonlinier, tetapi dalam praktiknya sering diamati bahwa transformasi penstabilan varians cenderung linierisasi hubungan. Setiap kurva naik terus menerus dari minimum (seperti 0) ke maksimum (seperti 70) akan memiliki kemiringan maksimum di suatu tempat di tengah kisaran itu, sering mengakibatkan varians residual yang lebih besar di sana juga. Itu sebabnya kita akan berharap untuk melihat residu untuk menunjukkan lebih banyak varian di tengah dan kurang di ujungnya. Jika bukan itu masalahnya, kita bisa berharap untuk hubungan linier dengan variabel yang tidak diubah .
whuber
5

Penting untuk mempertimbangkan mengapa nilai Anda dibatasi dalam rentang 0-70. Sebagai contoh, jika mereka adalah jumlah jawaban yang benar pada tes 70 pertanyaan, maka Anda harus mempertimbangkan model untuk variabel "jumlah keberhasilan", seperti regresi binomial overdispersed. Alasan lain mungkin mengarahkan Anda ke solusi lain.

Aniko
sumber
2

Transformasi data: skala ulang data Anda untuk berada di [0,1] dan modelkan itu menggunakan model glm dengan tautan logit.

Sunting: Ketika Anda kembali skala vektor (yaitu membagi semua elemen dengan entri terbesar), sebagai aturan, sebelum Anda melakukannya, layar (bola mata) untuk pencilan.

MEMPERBARUI

glmrob ()robustbase

pengguna603
sumber
3
Menjepit data seperti yang direkomendasikan di sini akan bias lereng dalam regresi
Whuber
1
Juga, saya tidak melihat nilai langsung dalam penjepitan berdasarkan pada sampel kuantil, ketika kisaran sebenarnya dari data diketahui a priori.
kardinal
@ Cardinal Intinya adalah bahwa (mis.) Kemungkinan 99% dari data terletak pada [0,1] dan nilai yang tersisa sama dengan 70: kendala kompak pada kisaran tidak menjamin tidak adanya pencilan! Oleh karena itu saya setuju dengan semangat saran yang ditawarkan oleh @ user603, meskipun saya khawatir tentang kemungkinan bias dalam pendekatan yang diusulkan.
Whuber
@whuber: Kecenderungan saya dalam pengaturan seperti itu adalah dengan menggunakan GLM yang tahan terhadap outlier daripada bentuk penjepitan ini. Kemudian biarkan model tersebut menyesuaikan melalui koefisien "intersep" dan "slope".
kardinal
@ Kardinal Ya, itu solusi yang valid. Saya berharap penggunaan GLM seperti itu masih akan disertai dengan prosedur diagnostik untuk memeriksa (perkiraan) linearitas dan independensi residu.
whuber