Pemilihan fitur dan hubungan akurasi klasifikasi

10

Salah satu metodologi untuk memilih subset dari fitur Anda yang tersedia untuk classifier Anda adalah memberi peringkat berdasarkan kriteria (seperti perolehan informasi) dan kemudian menghitung akurasi menggunakan classifier Anda dan subset dari fitur peringkat.

Misalnya, jika fitur Anda adalah A, B, C, D, E, dan jika peringkatnya adalah sebagai berikut D,B,C,E,A, maka Anda menghitung akurasinya dengan menggunakan D, D, Blalu D, B, C, kemudian D, B, C, E... hingga akurasi Anda mulai berkurang. Setelah mulai berkurang, Anda berhenti menambahkan fitur.

Contoh 1

Dalam example1 (di atas), Anda akan memilih fitur F, C, D, Adan menjatuhkan fitur lain karena mereka mengurangi akurasi Anda.

Metodologi itu mengasumsikan bahwa menambahkan lebih banyak fitur ke model Anda meningkatkan akurasi classifier Anda sampai titik tertentu setelah itu menambahkan fitur tambahan mengurangi akurasi (seperti terlihat pada contoh 1)

Namun, situasiku berbeda. Saya telah menerapkan metodologi yang dijelaskan di atas dan saya menemukan bahwa menambahkan lebih banyak fitur menurunkan akurasi hingga titik setelah itu meningkat.

Contoh2

Dalam skenario seperti ini, bagaimana Anda memilih fitur Anda? Apakah Anda hanya mengambil Fdan menjatuhkan sisanya? Apakah Anda tahu mengapa keakuratan akan menurun dan kemudian meningkat?

Pauline
sumber

Jawaban:

4

pemilihan fitur melibatkan beberapa pendekatan seperti metode untuk pembelajaran mesin. Gagasannya adalah mempertahankan fitur yang paling relevan tetapi tidak berlebihan untuk model prediktif yang dapat menghasilkan akurasi optimal.

Dalam kasus Anda, saya tidak dapat melihat metode mana yang Anda gunakan untuk pemilihan fitur tetapi dengan asumsi bahwa Anda tidak mempertimbangkan sifat multivariat dari ketergantungan fitur. Katakanlah Anda memiliki fitur N, kemungkinan alasan bahwa akurasi model Anda turun setelah n fitur top (s) tetapi meningkat dengan menambahkan n + k (di mana n <k <N ketika fitur dalam urutan menurun berdasarkan kenaikan informasi) disebabkan oleh inter- ketergantungan (lebih relevan dan kurang redundansi) dari fitur top n dan k. Pemilihan fitur univariat tidak selalu mendapatkan akurasi model yang optimal ketika fitur saling tergantung dan tidak saling eksklusif. Dari sudut pandang filosofis, serangkaian fitur optimal dianalogikan dengan kutipan oleh Aristoteles: "Keseluruhan lebih besar daripada jumlah bagian-bagiannya"!

Untuk pemilihan fitur yang optimal, saya sering adalah paket Caret dalam Rbahasa di mana orang dapat melakukan pemilihan fitur menggunakan penghapusan fitur rekursif (RFE) di antara beberapa pendekatan lain. Ada juga paket yang disebut mRMRe untuk melakukan pemilihan fitur berdasarkan relevansi maksimum, redundansi minimal.

Terbaik,
Samir

Samir
sumber
Saya sedang menyusun balasan dari ponsel dan tidak menyadari bahwa dua balasan sebelumnya sangat mirip! Kesalahan saya dalam tidak mengomentari itu dan malah membalas secara terpisah.
Samir
Poin Anda tentang fitur yang berlebihan sudah tepat. Saya telah memeriksa, dan saya dapat mengkonfirmasi bahwa 3 fitur dengan gain informasi yang tinggi memang berlebihan (sangat berkorelasi satu sama lain). Ini menjelaskan mengapa akurasi turun ketika menggunakan fitur-fitur itu secara bersamaan: melewati fitur pertama, fitur tambahan tidak menambahkan "dimensi data" baru ke dataset saya dan sebaliknya, mereka membuat suara karena mereka hanya "mengulang" apa yang sudah diketahui oleh pengklasifikasi terima kasih fitur pertama. Namun, fitur-fitur lainnya, dengan perolehan informasi yang lebih sedikit, menambah dimensi data baru.
Pauline
1

Tentang pertanyaan spesifik

Anda seharusnya tidak mengharapkan perilaku tertentu (menambah dan kemudian mengurangi keakuratan) saat Anda memilih subset fitur, karena ini akan sepenuhnya tergantung pada masalah (dan masing-masing model)

Ketika Anda menghitung variabel pentingnya fitur, Anda memperhitungkan kontribusi semua fitur pada saat yang bersamaan. Setelah Anda memilih subset fitur dan membangun model baru, Anda akan mendapatkan representasi atau pemodelan masalah yang berbeda (yang tidak memperhitungkan fitur-fitur lainnya - informatif atau tidak -).

Sekarang, Anda ingin memilih jumlah fitur terbaik. Ini juga akan tergantung dari masalah Anda dan karakteristik atau kondisi yang harus Anda penuhi. Jika Anda benar-benar perlu memiliki lebih sedikit fitur yang mungkin sambil mengoptimalkan akurasi prediksi, Anda dapat memilih jumlah fitur terendah yang mencapai kesalahan terendah ... dan, jika Anda memiliki kasus yang berbeda dengan kesalahan yang sangat mirip, kemudian pilih ambang, amati kasing atas yang memiliki perbedaan kesalahan berpasangan lebih rendah dari ambang, dan pilih satu (misalnya yang memiliki jumlah fitur yang lebih rendah - karena kesalahannya sedikit sama -).

Pertimbangkan Penghapusan Fitur Rekursif

Metode yang Anda gunakan mungkin bukan pendekatan yang paling stabil. Anda harus mempertimbangkan untuk mencoba sesuatu seperti penghapusan fitur rekursif (RFE), metode pembungkus di mana Anda membangun classifier, peringkat semua fitur, menghapus yang terburuk dan membangun kembali model pada fitur yang tersisa. Kemudian Anda ulangi metode ini lagi. Ini akan cenderung lebih stabil ... dan Anda harus mengharapkan peringkat yang berbeda setiap kali.

Varians juga merupakan faktor kritis

Di luar kesalahan aktual (atau akurasi) yang diberikan model kepada Anda dengan setiap subset, Anda harus mempertimbangkan untuk membangun setiap model melalui prosedur validasi silang dan memperhitungkan kesalahan rata-rata lipatan, dan standar deviasi dari kesalahan ini. Jika standar deviasi tinggi, maka subset fitur yang dipilih tidak stabil, dan akan cenderung bervariasi ketika menguji dengan data yang tidak terlihat. Ini penting untuk mengevaluasi kemampuan generalisasi yang diharapkan dari model, dan dapat membantu untuk memutuskan antara model (dibangun dengan himpunan bagian yang berbeda).

Javierfdr
sumber
1

Anda perlu menghapus fitur yang tidak berguna dan tidak relevan dari kumpulan data Anda. Dapat dilihat bahwa ada fitur yang tidak relevan dan berlebihan dalam kumpulan data Anda.

Saya sarankan Anda untuk melihat algoritma minimum Redundancy Maximum Relevance Feature Selection (MRMR). Ini adalah filter yang sangat populer dan kuat sebelum Anda melatih model.

"Namun, situasi saya berbeda. Saya telah menerapkan metodologi yang dijelaskan di atas dan saya menemukan bahwa menambahkan lebih banyak fitur mengurangi akurasi hingga titik setelah itu meningkat"

Itu juga mungkin, tetapi ini akan mengarah pada model yang lebih kompleks.

Rapry
sumber
1

Secara umum ada tiga kelas algoritma pemilihan fitur.

  • Metode filter yang menganalisis properti intrinsik data dan menetapkan skor untuk setiap fitur, tidak melibatkan model apa pun. Beberapa contoh adalah perubahan lipat, uji-t siswa.

  • Metode pembungkus yang subset fitur yang berbeda dipilih melalui algoritma spesifik. Kami kemudian masuk ke dalam klasifikasi atau model regresi untuk mengevaluasi setiap seleksi dan memilih yang dengan nilai kebugaran terbaik. Beberapa contoh adalah Algoritma Genetika untuk pemilihan fitur, optimisasi Monte Carlo untuk pemilihan fitur, pemilihan bertahap maju / mundur.

  • Metode tertanam yang memungkinkan model itu sendiri untuk memilih fitur yang memiliki kontribusi terbaik untuk kebugaran model. Yang khas adalah LASSO, regresi ridge.

Berikut adalah artikel yang bagus dalam rincian pengantar pemilihan fitur .

Jason Feng
sumber
Metode yang disajikan dalam posting adalah contoh filter. Filter memiliki peringkat semua fitur, dan topiknya adalah bagaimana memilih subset dari fitur-fitur peringkat ini.
Pauline