Pengungkapan Penuh: Ini adalah pekerjaan rumah. Saya telah memasukkan tautan ke dataset ( http://www.bertelsen.ca/R/logistic-regress.sav )
Tujuan saya adalah untuk memaksimalkan prediksi peminjam yang gagal dalam kumpulan data ini.
Setiap model yang saya buat sejauh ini, memprediksi> 90% dari non-default, tetapi <40% dari default membuat efisiensi klasifikasi keseluruhan ~ 80%. Jadi, saya ingin tahu apakah ada efek interaksi antar variabel? Dalam regresi logistik, selain menguji setiap kombinasi yang mungkin, adakah cara untuk mengidentifikasi efek interaksi potensial? Atau sebagai alternatif cara untuk meningkatkan efisiensi klasifikasi mangkir.
Saya buntu, setiap rekomendasi akan membantu dalam pilihan kata, sintaks R-kode atau SPSS Anda.
Variabel utama saya diuraikan dalam histogram dan sebar berikut (dengan pengecualian dari variabel dikotomis)
Deskripsi variabel primer:
age: Age in years
employ: Years with current employer
address: Years at current address
income: Household income in thousands
debtinc: Debt to income ratio (x100)
creddebt: Credit card debt in thousands
othdebt: Other debt in thousands
default: Previously defaulted (dichotomous, yes/no, 0/1)
ed: Level of education (No HS, HS, Some College, College, Post-grad)
Variabel tambahan hanyalah transformasi dari yang di atas. Saya juga mencoba mengubah beberapa variabel kontinu menjadi variabel kategori dan mengimplementasikannya dalam model, tidak berhasil di sana.
Jika Anda ingin memasukkannya ke R, cepat, ini dia:
## R Code
df <- read.spss(file="http://www.bertelsen.ca/R/logistic-regression.sav", use.value.labels=T, to.data.frame=T)
sumber
Jawaban:
Dalam kumpulan data yang tidak seimbang seperti ini, Anda biasanya dapat meningkatkan kinerja klasifikasi dengan beralih dari menggunakan probabilitas yang sesuai sebesar 0,5 sebagai titik potong Anda untuk mengklasifikasikan kasus menjadi default dan non-default. Sebagai contoh, saya mendapatkan tingkat klasifikasi yang benar yaitu 0,88 dan 0,58 dengan cutpoint 0,4 untuk glm dengan semua interaksi urutan ke-2. (Yang mungkin mengarah ke overfitting dan tampaknya memiliki beberapa masalah peringkat, tapi itu cerita lain.)
Kode:
output parsial:
sumber
Saya bukan ahli regresi logistik, tetapi bukankah itu hanya masalah data yang tidak seimbang? Mungkin Anda memiliki lebih banyak non-defaulter daripada defaulters yang dapat menggeser prediksi untuk berurusan dengan kelas yang lebih besar. Cobalah untuk menendang keluar beberapa yang tidak default dan lihat apa yang terjadi.
sumber
Dalam regresi logistik, distribusi variabel hasil yang sangat miring (di mana ada lebih banyak peristiwa non-peristiwa atau sebaliknya), titik potong atau pemicu probabilitas perlu disesuaikan, tetapi tidak akan banyak berpengaruh pada klasifikasi keseluruhan efisiensi. Ini akan selalu kira-kira sama, tetapi saat ini Anda sedang mengklasifikasikan peristiwa karena probabilitas "peluang" dalam kumpulan data tersebut akan selalu membuat Anda lebih mungkin untuk diklasifikasi menjadi non-peristiwa. Ini perlu disesuaikan untuk. Bahkan, dalam situasi seperti itu tidak jarang melihat efisiensi keseluruhan klasifikasi turun, karena sebelumnya meningkat karena kesalahan perhitungan karena kebetulan.
Pikirkan seperti ini, jika Anda memiliki acara di mana 90% tidak melakukannya dan 10% melakukannya, maka jika Anda memasukkan semua orang ke dalam grup "jangan lakukan itu", Anda secara otomatis mendapatkan 90% benar, dan itu bahkan tanpa berusaha, hanya kebetulan murni, meningkat oleh kemiringan distribusi itu.
Masalah interaksi tidak terkait dengan kecenderungan ini, dan harus didorong oleh teori. Anda kemungkinan besar akan selalu meningkatkan klasifikasi dengan menambahkan istilah tambahan, termasuk hanya menambahkan interaksi, tetapi Anda melakukannya dengan sering melengkapi model. Anda kemudian harus kembali dan dapat menafsirkan ini.
Matt P Data Analyst, University of Illinois Urbana Champaign
sumber
Anda mungkin hanya mencoba memasukkan semua efek interaksi. Anda kemudian dapat menggunakan regresi logistik yang diatur L1 / L2 untuk meminimalkan pemasangan yang berlebihan dan memanfaatkan setiap fitur yang bermanfaat. Saya sangat suka paket glmnet Hastie / Tibshirani (http://cran.r-project.org/web/packages/glmnet/index.html).
sumber
Saya tahu pertanyaan Anda adalah tentang regresi logistik dan karena ini merupakan pekerjaan rumah sehingga pendekatan Anda dapat dibatasi. Namun, jika minat Anda pada interaksi dan keakuratan klasifikasi, mungkin menarik untuk menggunakan sesuatu seperti CART untuk memodelkan ini.
Berikut adalah beberapa kode R yang harus dilakukan menghasilkan pohon dasar. Saya telah melepaskan rpart pada frame data iri di sini. Mungkin bukan pendekatan terbaik tanpa pengetahuan sebelumnya dan metode validasi silang:
Saya tidak yakin bagaimana cara menghasilkan tabel klasifikasi. Seharusnya tidak terlalu sulit dari nilai prediksi dari objek model dan nilai asli. Adakah yang punya tip di sini?
sumber
predict
metode untuk prediksi,table(originalClasses,predictedClasses)
untuk konstruksi tabel. Saya mencoba RF (biasanya memiliki akurasi seperti pada CART overfitted, tetapi tidak overfit) dan hasilnya tidak jauh lebih baik daripadaglm
.