Saya mencoba memprediksi keberhasilan atau kegagalan siswa berdasarkan beberapa fitur dengan model regresi logistik. Untuk meningkatkan kinerja model, saya sudah berpikir untuk membagi siswa menjadi kelompok yang berbeda berdasarkan perbedaan yang jelas dan membangun model yang terpisah untuk masing-masing kelompok. Tetapi saya pikir mungkin sulit untuk mengidentifikasi kelompok-kelompok ini dengan pemeriksaan, jadi saya berpikir untuk memisahkan siswa dengan mengelompokkan fitur-fitur mereka. Apakah ini praktik umum dalam membangun model seperti itu? Apakah Anda menyarankan agar saya memecahnya menjadi kelompok-kelompok yang jelas (misalnya, siswa semester pertama vs siswa yang kembali) dan kemudian melakukan pengelompokan pada kelompok-kelompok itu, atau klaster dari awal?
Untuk mencoba menjelaskan:Maksud saya adalah bahwa saya sedang mempertimbangkan menggunakan algoritma pengelompokan untuk memecah set pelatihan saya untuk regresi logistik ke dalam kelompok. Saya kemudian akan melakukan regresi logistik terpisah untuk masing-masing kelompok tersebut. Kemudian ketika menggunakan regresi logistik untuk memprediksi hasil untuk seorang siswa, saya akan memilih model mana yang akan digunakan berdasarkan kelompok mana yang paling cocok untuk mereka.
Mungkin saya bisa melakukan hal yang sama dengan memasukkan pengenal grup, misalnya 1 jika siswa kembali dan 0 jika tidak.
Sekarang Anda membuat saya berpikir tentang apakah mungkin menguntungkan untuk mengelompokkan set data pelatihan dan menggunakan label cluster mereka sebagai fitur dalam regresi logistik, daripada membangun model regresi logistik terpisah untuk setiap populasi.
Jika berguna untuk menyertakan pengenal kelompok bagi mereka yang kembali siswa vs siswa baru, apakah juga bermanfaat untuk memperluas daftar grup? Clustering sepertinya cara alami untuk melakukan ini.
Saya harap itu jelas ...
Jawaban:
Saya percaya bahwa jika Anda memiliki perbedaan yang signifikan dalam variabel dependen Anda antara cluster Anda maka pendekatan pengelompokan terlebih dahulu PASTI akan sangat membantu. Terlepas dari algoritma pembelajaran yang Anda pilih.
Menurut pendapat saya, menjalankan algoritme learningign di seluruh basis dapat menutupi perbedaan yang berarti pada tingkat agregasi yang lebih rendah.
Siapa pun yang mendengar tentang paradoks simpson, ini adalah kasus sulit dari masalah yang lebih dalam di mana Anda memiliki korelasi yang berbeda dalam kelompok yang berbeda yang ditutupi oleh kebisingan sampel yang lebih besar dan atau korelasi yang lebih lemah dari kelompok yang lebih besar.
sumber
Pendekatan umum yang Anda usulkan - menggunakan partisi laten untuk menetapkan titik data yang berbeda untuk pengklasifikasi basis yang berbeda - adalah pendekatan yang diteliti dengan baik menuju klasifikasi.
Alasan mengapa metode ini tidak banyak digunakan kemungkinan karena mereka relatif rumit dan memiliki waktu berjalan lebih lama daripada regresi logistik atau SVM. Dalam banyak kasus, tampaknya mereka dapat menyebabkan kinerja klasifikasi yang lebih baik.
Berikut ini beberapa referensi:
Shahbaba, B. dan Neal, R. "Model nonlinier menggunakan campuran proses Dirichlet"
Zhu, J. dan Chen, N. dan Xing, EP "SVM Laten Tak Terbatas untuk Klasifikasi dan Pembelajaran Banyak Tugas"
Rasmussen, CE dan Ghahramani, Z. "Campuran ahli proses Gaussian yang tak terbatas"
Meeds, E. dan Osindero, S. "Alternatif campuran tak terbatas dari para ahli proses Gaussian"
sumber
Saya ingin mengakui dari awal bahwa saya tahu sedikit tentang pengelompokan. Namun, saya tidak melihat inti dari prosedur yang Anda gambarkan. Jika Anda berpikir, misalnya, bahwa semester pertama vs siswa yang kembali mungkin berbeda, mengapa tidak menyertakan kovariat yang mengindeks itu? Demikian juga jika Anda berpikir fitur lain dari siswa itu relevan, Anda dapat memasukkannya juga. Jika Anda khawatir bahwa hubungan antara prediktor utama minat dan tingkat keberhasilan Anda mungkin berbeda, Anda juga dapat menyertakan interaksi antara prediktor itu dan semester pertama vs pengembalian, dll. Regresi logistik dilengkapi dengan baik untuk menjawab pertanyaan-pertanyaan ini melalui termasuk seperti istilah dalam model.
Di sisi lain, selama Anda hanya mengelompokkan fitur-fitur ini, dan melakukannya terlebih dahulu (tanpa melihat jawabannya), saya tidak melihat ada masalah yang muncul. Saya menduga pendekatan ini akan menjadi tidak efisien, dengan masing-masing model memiliki daya yang lebih rendah karena hanya cocok pada sebagian dari data, tetapi saya tidak berpikir itu akan membiaskan parameter atau membatalkan tes. Jadi saya kira Anda bisa mencoba ini jika Anda benar-benar mau.
Memperbarui:
Dugaan saya adalah bahwa akan lebih baik (yaitu, paling efisien) untuk menyesuaikan satu model dengan semua data. Anda dapat menyertakan beberapa kovariat tambahan (seperti kembali vs tidak) di luar minat utama Anda, dan indikator pengelompokan yang Anda temukan melalui menjalankan analisis kluster sebelumnya. Namun, jika kovariat yang masuk ke analisis kluster juga tersedia untuk model regresi logistik, saya tidak yakin apakah saya dapat melihat apa yang akan diperoleh hanya dengan memasukkan semua kovariat dalam model LR tanpaindikator cluster. Mungkin ada keuntungan untuk hal ini yang saya tidak kenal, karena saya bukan ahli dalam analisis cluster, tapi saya tidak tahu apa yang akan terjadi. Menurut saya CA tidak akan menghasilkan informasi tambahan yang belum ada di kovariat, dan karenanya tidak akan menambahkan apa pun pada model LR. Anda bisa mencobanya; mungkin aku salah. Tapi tebakan saya adalah Anda hanya akan membakar beberapa derajat kebebasan tambahan.
Pendekatan yang berbeda adalah memasukkan indikator cluster ke dalam model LR dan bukan kovariat yang menjadi basisnya. Saya ragu ini akan bermanfaat. CA tidak akan sempurna, tidak lebih dari analisis lain yang pernah ada, dan karena itu beralih dari kovariat asli ke indikator kluster turunan cenderung menyebabkan sejumlah kehilangan informasi . (Sekali lagi, saya tidak tahu itu, tapi saya sangat curiga itu benar.) Sekali lagi, Anda bisa mencoba keduanya dan membandingkannya sebagai latihan akademis, meskipun hanya mencoba banyak hal dan menentukan hasil yang terlihat paling baik tidak disukai setelah jika Anda ingin mengambil hasil Anda dengan serius.
Saya tidak ingin hanya mengandalkan analisis cluster. Mungkin ada banyak manfaatnya secara umum, dan mungkin ada manfaatnya di sini. Namun, ketika saya memahami situasi Anda, saya pikir hanya membangun model LR dengan kovariat yang Anda pikir relevan adalah cara yang harus dilakukan.
sumber
Jika Anda tidak terikat dengan regresi logistik, saya sarankan Anda menggunakan classifier hutan acak karena memiliki semacam built in clustering. Idenya adalah menggunakan menggunakan matriks proximity to cluster. Matriks proximity adalah matriks N_Obs by N_Obs untuk fraksi out of bag tree di mana pengamatannya dilakukan pada simpul terminal yang sama. Anda kemudian dapat menggabungkan ini ke tingkat fitur dengan matriks tingkat fitur di mana elemen adalah rata-rata fraksi dalam matriks kedekatan. Anda kemudian akan mengelompokkan semua level bersamaan ketika melewati ambang dan melihat apakah ini meningkatkan prediksi Anda. Mungkin yang terbaik untuk mengambil pendekatan iteratif langkah-bijaksana untuk menemukan pengelompokan optimal tetapi Anda dapat memilih ambang batas dengan cara lain. Ketika pengelompokan ini selesai, Anda bisa mengganti fitur dengan label klaster atau menambahkan label kluster sebagai fitur baru. Saya kira pada titik ini Anda dapat beralih kembali ke regresi logistik jika Anda benar-benar menginginkannya.
sumber
Saat membuat model multi-segmented, saya pikir pendekatan terbaik adalah membuat segmen yang berbicara dengan perbedaan nyata dalam distribusi yang mendasarinya. Siswa semester pertama vs siswa yang kembali adalah contoh yang bagus, karena distribusi prediktor kemungkinan akan sangat berbeda untuk kedua populasi ini. Lebih penting lagi, perbedaan-perbedaan ini memiliki penjelasan yang intuitif.
sumber