Ketidakseimbangan data ialah cabaran biasa dalam pembelajaran mesin, di mana satu kelas dengan ketara mengatasi kelas lain, yang boleh membawa kepada model berat sebelah dan generalisasi yang lemah. Terdapat pelbagai perpustakaan Python untuk membantu mengendalikan data yang tidak seimbang dengan cekap. Dalam artikel ini, kami akan memperkenalkan sepuluh perpustakaan Python terbaik untuk mengendalikan data tidak seimbang dalam pembelajaran mesin dan menyediakan coretan dan penjelasan kod untuk setiap pustaka.
imbalanced-lear ialah perpustakaan lanjutan scikit-belajar, direka untuk menyediakan pelbagai teknik pengimbangan semula Set Data. Pustaka menyediakan berbilang pilihan seperti pensampelan berlebihan, pensampelan kurang dan kaedah gabungan
from imblearn.over_sampling import RandomOverSampler ros = RandomOverSampler() X_resampled, y_resampled = ros.fit_resample(X, y)
SMOTE menjana sampel sintetik untuk mengimbangi set data.
from imblearn.over_sampling import SMOTE smote = SMOTE() X_resampled, y_resampled = smote.fit_resample(X, y)
ADASYN secara adaptif menjana sampel sintetik berdasarkan kepadatan beberapa sampel.
from imblearn.over_sampling import ADASYN adasyn = ADASYN() X_resampled, y_resampled = adasyn.fit_resample(X, y)
RandomUnderSampler secara rawak mengeluarkan sampel daripada kelas majoriti.
from imblearn.under_sampling import RandomUnderSampler rus = RandomUnderSampler() X_resampled, y_resampled = rus.fit_resample(X, y)
Tomek Links boleh mengalih keluar pasangan jiran terdekat dari kelas yang berbeza, mengurangkan bilangan berbilang sampel
from imblearn.under_sampling import TomekLinks tl = TomekLinks() X_resampled, y_resampled = tl.fit_resample(X, y)
SMOTEENN menggabungkan SMOTE dan Diedit Jiran Terdekat.
from imblearn.combine import SMOTEENN smoteenn = SMOTEENN() X_resampled, y_resampled = smoteenn.fit_resample(X, y)
SMOTEENN menggabungkan SMOTE dan Tomek Links untuk oversampling dan undersampling.
from imblearn.combine import SMOTETomek smotetomek = SMOTETomek() X_resampled, y_resampled = smotetomek.fit_resample(X, y)
EasyEnsemble ialah kaedah ensemble yang boleh mencipta subset seimbang bagi kelas majoriti.
from imblearn.ensemble import EasyEnsembleClassifier ee = EasyEnsembleClassifier() ee.fit(X, y)
BalancedRandomForestClassifier ialah kaedah ensemble yang menggabungkan hutan rawak dengan subsampel seimbang.
from imblearn.ensemble import BalancedRandomForestClassifier brf = BalancedRandomForestClassifier() brf.fit(X, y)
RUSBoostClassifier ialah kaedah ensemble yang menggabungkan pensampelan terkurang rawak dan peningkatan.
from imblearn.ensemble import RUSBoostClassifier rusboost = RUSBoostClassifier() rusboost.fit(X, y)
Mengendalikan data yang tidak seimbang adalah penting untuk membina model pembelajaran mesin yang tepat. Perpustakaan Python ini menyediakan pelbagai teknik untuk menangani masalah ini. Bergantung pada set data dan masalah anda, anda boleh memilih kaedah yang paling sesuai untuk mengimbangi data anda dengan berkesan.
Atas ialah kandungan terperinci 10 perpustakaan Python teratas untuk mengendalikan data tidak seimbang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!