Saya seorang pemula dalam pembelajaran mesin dan saya menghadapi situasi. Saya sedang mengerjakan masalah Penawaran Waktu Nyata, dengan dataset IPinYou dan saya mencoba melakukan prediksi klik.
Masalahnya adalah, seperti yang Anda ketahui, dataset sangat tidak seimbang: Sekitar 1.300 contoh negatif (non klik) untuk 1 contoh positif (klik).
Inilah yang saya lakukan:
- Muat data
- Membagi dataset menjadi 3 dataset: A = Pelatihan (60%) B = Memvalidasi (20%) C = Pengujian (20%)
- Untuk setiap dataset (A, B, C), lakukan kurang pengambilan sampel pada setiap kelas negatif untuk memiliki rasio 5 (5 contoh negatif untuk 1 contoh positif). Ini memberi saya 3 set data baru yang lebih seimbang: A 'B' C '
Kemudian saya melatih model saya dengan dataset A 'dan regresi logistik.
Pertanyaan saya adalah:
Dataset mana yang harus saya gunakan untuk validasi? B atau B '?
Dataset mana yang harus saya gunakan untuk pengujian? C atau C '
Metrik mana yang paling relevan untuk mengevaluasi model saya? F1Score tampaknya merupakan metrik yang digunakan dengan baik. Tapi di sini karena kelas yang tidak seimbang (jika saya menggunakan dataset B dan C), presisi rendah (di bawah 0,20) dan F1Score sangat dipengaruhi oleh recall / presisi rendah. Apakah itu lebih akurat untuk menggunakan aucPR atau aucROC?
Jika saya ingin memetakan kurva belajar, metrik mana yang harus saya gunakan? (mengetahui bahwa% error tidak relevan jika saya menggunakan dataset B 'untuk memvalidasi)
Terima kasih sebelumnya atas waktu Anda!
Salam.
sumber
Untuk
1)
dan2)
, Anda mauJadi untuk dataset tersebut, Anda tidak perlu menyeimbangkan kelas.
Anda juga dapat mencoba menggunakan bobot kelas alih-alih under / oversampling, karena ini akan menangani keputusan ini untuk Anda.
Untuk
3)
Anda yang ingin mengoptimalkan menggunakan metrik apa pun yang akan Anda beri skor (jika ini adalah kompetisi). Tetapi jika itu bukan pertimbangan, semua model itu adalah pilihan yang bagus. F1 mungkin dipengaruhi oleh presisi rendah, tetapi Anda ingin itu ditangkap. Justru ketika model naif (seperti menebak kelas mayoritas) dapat skor baik oleh beberapa metrik yang skor seperti F1 relevan.Adapun
4)
tidak ada yang salah dengan menunjukkan metrik mana yang Anda optimalkan.sumber
Anda harus menguji classifier Anda pada dataset yang mewakili mengapa itu akan digunakan. Yang terbaik adalah distribusi yang tidak dimodifikasi.
Selama pembelajaran, ubah set data dengan cara apa pun yang membantu Anda.
Untuk detailnya, lihat Haruskah saya mencari dataset 'seimbang' atau dataset 'representatif'?
sumber