ketidakseimbangan-belajar adalah paket python yang menawarkan sejumlah teknik pengambilan sampel ulang yang biasa digunakan dalam kumpulan data yang menunjukkan ketidakseimbangan antar kelas yang kuat. Ini kompatibel dengan scikit-learn dan merupakan bagian dari proyek scikit-learn-contrib.
Dokumentasi instalasi, dokumentasi API, dan contoh dapat ditemukan di dokumentasi.
ketidakseimbangan-belajar membutuhkan dependensi berikut:
Python (>= 3.10)
JumlahPy (>= 1.24.3)
SciPy (>= 1.10.1)
Scikit-belajar (>= 1.2.2)
Uji Py (>= 7.2.2)
Selain itu, pembelajaran yang tidak seimbang memerlukan dependensi opsional berikut:
Pandas (>= 1.5.3) untuk menangani kerangka data
Tensorflow (>= 2.13.1) untuk menangani model TensorFlow
Keras (>= 3.0.5) untuk menangani model Keras
Contoh-contoh ini memerlukan dependensi tambahan berikut:
Matplotlib (>= 3.7.3)
Lahir di laut (>= 0.12.2)
ketidakseimbangan-belajar saat ini tersedia di repositori PyPi dan Anda dapat menginstalnya melalui pip:
pip install -U tidak seimbang-belajar
Paket ini juga dirilis di platform Anaconda Cloud:
conda install -c conda-forge ketidakseimbangan-belajar
Jika mau, Anda dapat mengkloningnya dan menjalankan file setup.py. Gunakan perintah berikut untuk mendapatkan salinan dari Github dan menginstal semua dependensi:
git clone https://github.com/scikit-learn-contrib/imbalanced-learn.git cd tidak seimbang-belajar pemasangan pip.
Ketahuilah bahwa Anda dapat menginstal dalam mode pengembang dengan:
pip install --no-build-isolation --editable .
Jika Anda ingin membuat permintaan tarik di GitHub, kami menyarankan Anda untuk menginstal pra-komit:
pip install pra-komit instalasi pra-komit
Setelah instalasi, Anda dapat menggunakan pytest untuk menjalankan rangkaian pengujian:
membuat liputan
Perkembangan scikit-learn-contrib ini sejalan dengan salah satu komunitas scikit-learn. Oleh karena itu, Anda dapat merujuk ke Panduan Pengembangan mereka.
Kami mendukung praktik baik dari Koordinasi Ekosistem Scientific Python (SPEC). Daftar lengkap rekomendasi tersedia di sini.
Lihat di bawah daftar rekomendasi yang kami dukung untuk proyek pembelajaran yang tidak seimbang.
Jika Anda menggunakan pembelajaran yang tidak seimbang dalam publikasi ilmiah, kami sangat menghargai kutipan pada makalah berikut:
@artikel{JMLR:v18:16-365, penulis = {Guillaume Lema{{^i}}tre dan Fernando Nogueira dan Christos K. Aridas}, title = {Imbalanced-learn: Toolbox Python untuk Mengatasi Kutukan Kumpulan Data yang Tidak Seimbang dalam Machine Learning}, jurnal = {Jurnal Penelitian Pembelajaran Mesin}, tahun = {2017}, volume = {18}, angka = {17}, halaman = {1-5}, url = {http://jmlr.org/papers/v18/16-365} }
Kebanyakan algoritma klasifikasi hanya akan bekerja secara optimal jika jumlah sampel setiap kelas kurang lebih sama. Kumpulan data yang sangat tidak seimbang, dimana kelompok minoritas kalah jumlah dibandingkan dengan satu atau lebih kelas, telah terbukti menjadi sebuah tantangan sekaligus menjadi semakin umum.
Salah satu cara untuk mengatasi masalah ini adalah dengan melakukan pengambilan sampel ulang pada kumpulan data untuk mengimbangi ketidakseimbangan ini dengan harapan dapat mencapai batasan keputusan yang lebih kuat dan adil dibandingkan yang Anda lakukan sebelumnya.
Anda dapat merujuk ke dokumentasi pembelajaran yang tidak seimbang untuk menemukan detail tentang algoritme yang diterapkan.