Rumah >Peranti teknologi >AI >Bagaimana untuk membahagikan set data dengan betul? Ringkasan tiga kaedah biasa
Menguraikan set data menjadi set latihan boleh membantu kami memahami model, yang penting untuk cara model membuat generalisasi kepada data baharu yang tidak kelihatan. Sesuatu model mungkin tidak digeneralisasikan dengan baik kepada data baru yang tidak kelihatan jika ia terlalu dipasang. Oleh itu ramalan yang baik tidak boleh dibuat.
Memiliki strategi pengesahan yang betul ialah langkah pertama untuk berjaya mencipta ramalan yang baik dan menggunakan nilai perniagaan model AI. Artikel ini telah menyusun beberapa strategi pemisahan data biasa.
Bahagikan set data kepada 2 bahagian: latihan dan pengesahan, dengan 80% latihan dan 20% pengesahan. Anda boleh melakukan ini menggunakan pensampelan rawak Scikit.
Pertama sekali, benih rawak perlu diperbaiki, jika tidak, pemisahan data yang sama tidak boleh diperoleh dengan perbandingan dan hasilnya tidak boleh dihasilkan semula semasa nyahpepijat. Jika set data kecil, tiada jaminan bahawa pemisahan pengesahan boleh tidak dikaitkan dengan pemisahan latihan. Jika data tidak seimbang, anda tidak akan mendapat nisbah pisah yang sama.
Pemisahan yang begitu mudah hanya boleh membantu kami mengembangkan dan nyahpepijat Latihan sebenar tidak cukup sempurna, jadi kaedah pemisahan berikut boleh membantu kami menamatkan masalah ini.
Pisah set data kepada partition k. Dalam imej di bawah, set data dibahagikan kepada 5 partition.
Pilih satu partition sebagai set data pengesahan, manakala partition lain ialah set data latihan. Ini akan melatih model pada setiap set partition yang berbeza.
Akhir sekali, model K yang berbeza akan diperolehi, dan model ini akan digunakan bersama-sama menggunakan kaedah penyepaduan apabila membuat penaakulan dan ramalan kemudian.
K biasanya ditetapkan kepada [3,5,7,10,20]
Jika anda ingin menyemak prestasi model dengan berat sebelah rendah, gunakan K yang lebih tinggi [20]. Jika anda membina model untuk pemilihan pembolehubah, gunakan k rendah [3,5] dan model akan mempunyai varians yang lebih rendah.
Kelebihan:
Soalan:
boleh mengekalkan nisbah antara kelas yang berbeza dalam setiap lipatan. Jika set data tidak seimbang, katakan Kelas1 mempunyai 10 contoh dan Kelas2 mempunyai 100 contoh. Stratified-kFold mencipta setiap klasifikasi lipatan dengan nisbah yang sama dengan set data asal
Idea ini serupa dengan pengesahan silang K-fold, tetapi dengan nisbah yang sama untuk setiap lipatan seperti set data asal.
Setiap pemisahan mengekalkan nisbah awal antara kelas. Jika set data anda besar, pengesahan silang K-fold juga boleh mengekalkan perkadaran, tetapi ini adalah stokastik, manakala Stratified-kFold adalah deterministik dan boleh digunakan dengan set data kecil.
Bootstrap dan Subsampling adalah serupa dengan pengesahan silang K-Fold, tetapi mereka tidak mempunyai lipatan tetap. Ia secara rawak memilih beberapa data daripada set data, menggunakan data lain sebagai pengesahan dan mengulanginya sebanyak n kali
Bootstrap=pensampelan berselang-seli, yang telah kami perkenalkan secara terperinci dalam artikel sebelumnya.
Bilakah saya harus menggunakan dia? Bootstrap dan Subsamlping hanya boleh digunakan jika ralat piawai anggaran ralat metrik adalah besar. Ini mungkin disebabkan oleh outlier dalam set data.
Biasanya dalam pembelajaran mesin, pengesahan silang k-fold digunakan sebagai titik permulaan Jika set data tidak seimbang, Stratified-kFold digunakan. Bootstrap atau kaedah lain boleh digunakan.
Atas ialah kandungan terperinci Bagaimana untuk membahagikan set data dengan betul? Ringkasan tiga kaedah biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!