Rumah Kewangan Peribadi Cara menggunakan Python untuk memilih pembolehubah yang tepat untuk Sains Data - dummies

Cara menggunakan Python untuk memilih pembolehubah yang tepat untuk Sains Data - dummies

Isi kandungan:

Video: From C to Python by Ross Rheingans-Yoo 2025

Video: From C to Python by Ross Rheingans-Yoo 2025
Anonim

Memilih pembolehubah yang betul dalam Python dapat meningkatkan proses pembelajaran dalam sains data dengan mengurangkan jumlah bunyi (tidak berguna maklumat) yang boleh mempengaruhi anggaran pelajar. Oleh itu, pemilihan yang berubah-ubah dapat mengurangkan variasi ramalan dengan berkesan. Untuk melibatkan hanya pemboleh ubah yang berguna dalam latihan dan meninggalkan yang berlebihan, anda boleh menggunakan teknik ini:

  • Pendekatan univariat: Pilih pemboleh ubah yang paling berkaitan dengan hasil sasaran.

  • Pendekatan tamak atau mundur: Pastikan hanya pemboleh ubah yang boleh anda keluarkan dari proses pembelajaran tanpa merosakkan prestasinya.

Memilih dengan langkah univariat

Jika anda memutuskan untuk memilih pemboleh ubah oleh tahap persatuan dengan sasarannya, SelectPercentile kelas menyediakan prosedur automatik untuk menyimpan hanya peratusan tertentu yang terbaik, ciri-ciri yang berkaitan. Metrik yang tersedia untuk persatuan adalah

  • f_regression: Digunakan hanya untuk sasaran angka dan berdasarkan prestasi regresi linier.

  • f_classif: Hanya digunakan untuk sasaran kategori dan berdasarkan ujian statistik Analisis (Variasi) (ANOVA).

  • chi2: Menjalankan statistik chi-square untuk sasaran kategori, yang kurang masuk akal kepada hubungan tak linear antara pemboleh ubah ramalan dan sasarannya.

Apabila menilai calon untuk masalah klasifikasi, f_classif dan chi2 cenderung menyediakan set pembolehubah teratas yang sama. Ia masih merupakan amalan yang baik untuk menguji pilihan dari kedua-dua metrik persatuan.

Selain menerapkan pemilihan langsung persatuan persentil teratas, SelectPercentile juga boleh menilai pembolehubah terbaik untuk membuat keputusan lebih mudah untuk menentukan peratus percentile untuk mengecualikan ciri daripada menyertai proses pembelajaran. Kelas SelectKBest adalah sama dengan fungsinya, tetapi ia memilih pembolehubah k atas, di mana k adalah nombor, bukan persentil.

dari sklearn. feature_selection import SelectPercentile from sklearn. feature_selection import f_regression Selector_f = SelectPercentile (f_regression, percentile = 25) Selector_f. patut (X, y) untuk n, s dalam zip (boston. feature_names, Selector_f. scores_): mencetak 'F-score:% 3. 2ft untuk ciri% s '% (s, n) Skor F: 88. 15 untuk ciri CRIM F-score: 75. 26 untuk ciri ZN F-score: 153. 95 untuk ciri INDUS F-score: ciri CHAS F-score: 112. 59 untuk ciri NOX F-score: 471. 85 untuk ciri RM F-score: 83.48 untuk ciri AGE F-score: 33. 58 untuk ciri DIS F-score: 85. 91 untuk ciri RAD F-score: 141. 76 untuk ciri CAKUP F-score: 175. 11 untuk ciri PTRATIO F-score: 63. 05 untuk ciri B F-score: 601. 62 untuk ciri LSTAT

Menggunakan tahap output persatuan membantu anda memilih pembolehubah yang paling penting untuk model pembelajaran komputer anda, tetapi anda harus berhati-hati untuk masalah yang mungkin: > Sesetengah pembolehubah yang mempunyai persatuan tinggi juga boleh berkorelasi tinggi, memperkenalkan maklumat pendua, yang bertindak sebagai bunyi dalam proses pembelajaran.

  • Sesetengah pembolehubah boleh dihukum, terutamanya binari (pembolehubah yang menunjukkan status atau ciri menggunakan nilai 1 apabila ia hadir, 0 apabila tidak). Sebagai contoh, perhatikan bahawa output menunjukkan pemboleh ubah biner CHAS sebagai yang paling tidak berkaitan dengan pemboleh ubah sasaran (tetapi anda tahu dari contoh sebelumnya bahawa ia berpengaruh dari fasa silang pengesahan).

  • Proses pemilihan univariat boleh memberi anda kelebihan sebenar apabila anda mempunyai sejumlah besar pemboleh ubah untuk dipilih dan semua kaedah lain berubah menjadi tidak dapat dikomputasi. Prosedur terbaik adalah untuk mengurangkan nilai SelectPercentile dengan separuh atau lebih daripada pembolehubah yang ada, mengurangkan bilangan pembolehubah kepada nombor terkawal, dan dengan itu membolehkan penggunaan kaedah yang lebih canggih dan lebih tepat seperti carian tamak.

Menggunakan carian tamak

Apabila menggunakan pilihan univariat, anda perlu memutuskan sendiri berapa banyak pembolehubah yang dapat dipertahankan: Pemilihan tamak secara automatik mengurangkan bilangan ciri yang terlibat dalam model pembelajaran atas dasar sumbangan berkesan mereka kepada prestasi yang diukur dengan ukuran ralat.

Kelas RFECV, sesuai dengan data, dapat memberi anda maklumat tentang jumlah ciri yang berguna, tunjukkan kepada anda, dan secara automatik mengubah data X, dengan mengubah kaedah, ke dalam kumpulan variabel yang dikurangkan, seperti yang ditunjukkan dalam contoh berikut:

dari sklearn. feature_selection import RFECV selector = RFECV (estimator = regresi, cv = 10, scoring = "mean_squared_error") pemilih. cetak patut (X, y) cetak ("bilangan ciri optimum:% d" pemilih% n_features_) Bilangan ciri optimum: 6

Boleh diperolehi indeks ke set pembolehubah yang optimum dengan menghubungi sokongan atribut_ dari RFECV kelas selepas anda sesuai dengannya.

boston cetak. feature_names [pemilih. support_] ['CHAS "NOX" RM "DIS" PTRATIO "LSTAT']

Perhatikan bahawa CHAS kini termasuk di antara ciri-ciri yang paling ramalan, yang berbeza dengan hasil dari carian univariat. adalah penting, tidak kira sama ada ia adalah binari, kategoris atau numerik, kerana ia secara langsung menilai peranan yang dimainkan oleh ciri dalam ramalan.

Kaedah RFECV pastinya lebih cekap, berbanding dengan pendekatan perduaan, kerana ia menganggap ciri-ciri yang sangat berkorelasi dan ditala untuk mengoptimumkan ukuran penilaian (yang selalunya bukan Chi-square atau F-score). Sebagai proses tamak, ia menghendaki pengiraan dan mungkin hanya kira-kira set peramal terbaik.

Oleh kerana RFECV mempelajari kumpulan pembolehubah yang terbaik daripada data, pemilihan itu boleh menjadi lebih baik, iaitu apa yang berlaku dengan semua algoritma mesin pembelajaran yang lain. Mencuba RFECV pada sampel yang berlainan dalam data latihan boleh mengesahkan pemboleh ubah terbaik untuk digunakan.

Cara menggunakan Python untuk memilih pembolehubah yang tepat untuk Sains Data - dummies

Pilihan Editor

Bagaimana Mengenali Ulasan Blog Spam - dummies

Bagaimana Mengenali Ulasan Blog Spam - dummies

Spam! Di mana-mana, bersembunyi di dalam peti masuk e-mel anda, menunggu untuk menerkam pada klik yang tidak disyaki. Ia juga digantung di blog anda, bersembunyi di dalam komen - anda mungkin tidak akan melepaskannya! Mujurlah, anda boleh memperlahankan aliran mesej spam dan juga menyekat sebahagian besar daripada muncul di blog anda. Kali pertama ...

Cara Daftar Domain Blog Anda dengan Web Host - dummies

Cara Daftar Domain Blog Anda dengan Web Host - dummies

Mendaftarkan domain blog proses mudah. Pertama, gunakan pendaftar domain untuk membeli nama anda. Selepas anda memiliki nama itu, anda hanya perlu menunjukkan domain baru anda di host web anda. Proses ini pada asasnya melibatkan memberitahu pendaftar domain anda yang pelayan web tapak web anda dihidupkan; syarikat hosting atau domain web anda ...

Bagaimana Menanggapi Tuduhan Penapisan dalam Komuniti Dalam Talian Anda - para pemilik

Bagaimana Menanggapi Tuduhan Penapisan dalam Komuniti Dalam Talian Anda - para pemilik

Setiap komuniti mempunyai hak untuk membuat dan menguatkuasakan peraturan yang mereka mahukan. Ia bukan penapisan untuk menghilangkan pautan atau komentar spam yang menggunakan kata-kata tidak senonoh atau kasar; ia menghormati seluruh komuniti serta mereka yang menjadi tuan rumah masyarakat. Anda tidak menyekat idea atau bahkan pemikiran ...

Pilihan Editor

Bagaimana Membuat Pembina di Python - dummies

Bagaimana Membuat Pembina di Python - dummies

Pembina adalah jenis khas kaedah yang dipanggil Python ia menamakan objek dengan menggunakan definisi yang terdapat dalam kelas anda. Python bergantung kepada pembina untuk melaksanakan tugas seperti memulakan (memberikan nilai kepada) sebarang pemboleh ubah contoh yang diperlukan oleh objek semasa ia bermula. Pembina juga boleh mengesahkan bahawa terdapat ...

Cara Membuat dan Menggunakan Kamus dalam Python - dummies

Cara Membuat dan Menggunakan Kamus dalam Python - dummies

Dengan Python, mencipta dan menggunakan kamus Sama seperti bekerja dengan senarai, kecuali anda kini perlu menentukan pasangan kunci dan nilai. Berikut adalah peraturan khas untuk membuat kunci: Kunci mestilah unik. Apabila anda memasukkan kekunci pendua, maklumat yang terdapat dalam entri kedua akan menang - ...

Pilihan Editor

Mengenali Momen Terbaik Kehidupan Anda untuk Mencapai Aliran dan Kebahagiaan - mimpi

Mengenali Momen Terbaik Kehidupan Anda untuk Mencapai Aliran dan Kebahagiaan - mimpi

Kebahagiaan mengenai detik-detik yang tidak dapat dilupakan dalam kehidupan. Oleh itu, jika anda diminta mengenal pasti sepuluh momen terbaik dalam hidup anda, bolehkah anda melakukannya? Jika sukar untuk anda, itu kerana anda tidak mempunyai banyak "momen terbaik" atau kerana sudah lama sejak anda mempunyai satu yang anda tidak boleh ...

Mencari penyelesaian Win-Win untuk menjadi bahagia di tempat kerja - dummies

Mencari penyelesaian Win-Win untuk menjadi bahagia di tempat kerja - dummies

Orang bahagia akan cuba mencari penyelesaian menang-menang di tempat kerja. Semua jenis kerja tidak dapat dielakkan melibatkan konflik. Mengapa? Kerana orang yang bekerja bersama satu sama lain sama ada berusaha untuk mencapai matlamat yang sama - pengiktirafan dan kemajuan - atau mereka mempunyai pandangan yang berbeza tentang bagaimana perkara harus dilakukan di tempat kerja. Yang ...

Hubungan Meningkatkan Kualiti Keseluruhan Kehidupan - makmies

Hubungan Meningkatkan Kualiti Keseluruhan Kehidupan - makmies

Dalam hubungan yang sihat, kualiti keseluruhan hidup anda bertambah baik . Anda berkembang sebagai orang kerana pasangan anda dalam hubungan memberikan anda sokongan yang anda perlukan untuk mengambil lebih banyak risiko dan menghadapi lebih banyak cabaran. Hubungan yang sihat membantu anda merasakan baik diri anda, orang lain, dan kehidupan anda. Ia membolehkan anda kebebasan ...