Saya memiliki fitur jarang yang bersifat prediksi, juga saya memiliki beberapa fitur padat yang juga dapat memprediksi. Saya perlu menggabungkan fitur-fitur ini bersama-sama untuk meningkatkan kinerja keseluruhan classifier.
Sekarang, masalahnya adalah ketika saya mencoba untuk menggabungkan ini bersama-sama, fitur padat cenderung lebih mendominasi fitur jarang, maka hanya memberikan peningkatan 1% pada AUC dibandingkan dengan model dengan hanya fitur padat.
Adakah yang mengalami masalah serupa? Sangat menghargai input, agak macet. Saya sudah mencoba banyak pengklasifikasi yang berbeda, kombinasi pengklasifikasi, transformasi fitur dan pemrosesan dengan algoritma yang berbeda.
Terima kasih sebelumnya atas bantuannya.
Edit :
Saya sudah mencoba saran yang diberikan di komentar. Apa yang saya amati adalah, untuk hampir 45% dari data, fitur jarang berkinerja sangat baik, saya mendapatkan AUC sekitar 0,9 dengan hanya fitur jarang, tetapi untuk fitur padat yang tersisa berkinerja baik dengan AUC sekitar 0,75. Saya agak mencoba memisahkan dataset ini, tetapi saya mendapatkan AUC 0,6, jadi, saya tidak bisa begitu saja melatih model dan memutuskan fitur mana yang akan digunakan.
Mengenai cuplikan kode, saya telah mencoba banyak hal, sehingga saya tidak yakin apa yang harus dibagikan :(
sumber
Jawaban:
Ini sepertinya pekerjaan untuk Analisis Komponen Utama. Di Scikit adalah PCA diimplementasikan dengan baik dan itu membantu saya berkali-kali.
PCA, dengan cara tertentu, menggabungkan fitur Anda. Dengan membatasi jumlah komponen, Anda mengambil model Anda dengan data tanpa noise (dalam kasus terbaik). Karena model Anda sebagus data Anda.
Pertimbangkan di bawah ini contoh sederhana.
Mengapa saya memilih 80? Ketika saya plot varians kumulatif, saya mendapatkan ini di bawah ini, yang memberitahu saya bahwa dengan ~ 80 komponen, saya mencapai hampir semua varians.
Jadi saya akan mengatakan mencobanya, gunakan dalam model Anda. Itu akan membantu.
sumber
Cara terbaik untuk menggabungkan fitur adalah melalui metode ensemble. Pada dasarnya ada tiga metode berbeda: mengantongi, meningkatkan dan menumpuk. Anda dapat menggunakan Adabbost augmented dengan pemilihan fitur (dalam hal ini mempertimbangkan fitur yang jarang dan padat) atau berbasis susun (fitur acak - subruang acak) Saya lebih suka opsi kedua Anda dapat melatih sekumpulan pelajar dasar (keputusan. Pohon) dengan menggunakan acak himpunan bagian dan fitur acak (pertahankan pelajar basis pelatihan sampai Anda mencakup seluruh rangkaian fitur) Langkah selanjutnya adalah menguji set Pelatihan untuk menghasilkan meta data. Gunakan data meta ini untuk melatih meta classifier. Meta classifier akan mencari tahu fitur mana yang lebih penting dan hubungan seperti apa yang harus digunakan
sumber
Grup variabel mungkin multikolinier atau konversi antara jarang dan padat mungkin salah. Pernahkah Anda berpikir tentang menggunakan klasifikasi pemungutan suara / ensemble? http://scikit-learn.org/stable/modules/ensemble.html Dengan begitu Anda bisa menangani kedua masalah di atas.
sumber
Selain beberapa saran di atas, saya akan merekomendasikan menggunakan pendekatan pemodelan dua langkah .
sumber
Coba PCA hanya pada fitur yang jarang, dan gabungkan output PCA dengan fitur yang padat.
Jadi Anda akan mendapatkan kumpulan fitur (asli) yang padat + kumpulan fitur yang padat (yang awalnya jarang).
+1 untuk pertanyaan. Harap perbarui kami dengan hasilnya.
sumber