Menggunakan aturan penilaian yang tepat untuk menentukan keanggotaan kelas dari regresi logistik

8

Saya menggunakan regresi logistik untuk memprediksi kemungkinan suatu peristiwa terjadi. Pada akhirnya, probabilitas ini dimasukkan ke dalam lingkungan produksi, tempat kami memfokuskan sebanyak mungkin pada prediksi kami yang "Ya". Oleh karena itu berguna bagi kita untuk memiliki gagasan tentang "hit" atau "non-hit" definitif apa yang mungkin menjadi apriori (sebelum berjalan dalam produksi), di samping langkah-langkah lain yang kami gunakan untuk menginformasikan penentuan ini.

Pertanyaan saya adalah, apa cara yang tepat untuk memprediksi kelas definitif (1,0) berdasarkan probabilitas yang diprediksi? Secara khusus, saya menggunakan glmnetpaket R untuk pemodelan saya. Paket ini secara sewenang-wenang memilih 0,5 kemungkinan sebagai ambang batas untuk ya atau tidak. Saya percaya bahwa saya perlu mengambil hasil dari aturan penilaian yang tepat, berdasarkan pada probabilitas yang diprediksi, untuk melakukan ekstrapolasi ke kelas definitif. Contoh dari proses pemodelan saya adalah di bawah ini:

mods <- c('glmnet', 'scoring')
lapply(mods, require, character.only = T)

# run cross-validated LASSO regression
fit <- cv.glmnet(x = df1[, c(2:100)]), y = df1[, 1], family = 'binomial', 
type.measure = 'auc')

# generate predicted probabilities across new data
df2$prob <- predict(fit, type="response", newx = df2[, c(2:100)], s = 'lambda.min')

# calculate Brier score for each record
df2$propscore <- brierscore(df2[,1] ~ df2$prob, data = df2)

Jadi sekarang saya memiliki serangkaian skor Brier untuk setiap prediksi, tetapi kemudian bagaimana cara menggunakan skor Brier untuk menimbang secara tepat setiap kemungkinan menjadi ya atau tidak?

Saya mengerti bahwa ada metode lain untuk membuat penentuan ini juga, seperti Hutan Acak.

NiuBiBang
sumber

Jawaban:

6

Yang perlu Anda lakukan adalah "memasukkan model ke dalam produksi", yaitu, seperti yang Anda katakan, untuk benar-benar memprediksi kasus mana yang akan "ya", yang Anda butuhkan adalah fungsi kerugian . Anda memiliki dua kemungkinan kesalahan, mengatakan "ya" ketika tidak, mengatakan "tidak" ketika ya. Apakah kesalahan ini memiliki konsekuensi ekonomis, terkait biaya? Apakah biaya ini tergantung pada hal-hal lain juga, seperti nilai kovariat tertentu? Kemudian Anda membuat informasi ini menjadi fungsi biaya, dan Anda dapat menentukan cutoff dengan meminimalkan biaya yang diharapkan. Itu adalah solusi berprinsip.

kjetil b halvorsen
sumber
1
Ya, ini sebenarnya yang kita butuhkan, mis. Biaya untuk meninjau per unit. Saya akan melakukan pekerjaan rumah saya untuk membuat fungsi kerugian yang tepat, tetapi apakah saya menyertakan ukuran seperti aturan penilaian dalam hal ini?
NiuBiBang
Aturan penilaian yang tepat dan fungsi kerugian adalah dua konsep berbeda! Fungsi kerugian seharusnya hanya mengukur konsekuensi ekonomi, dan aturan penilaian yang tepat tidak ada hubungannya dengan itu.
kjetil b halvorsen