Rumah  >  Artikel  >  Peranti teknologi  >  10 perpustakaan Python teratas untuk mengendalikan data tidak seimbang

10 perpustakaan Python teratas untuk mengendalikan data tidak seimbang

王林
王林ke hadapan
2023-09-30 19:53:031076semak imbas

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.

10 perpustakaan Python teratas untuk mengendalikan data tidak seimbang

1 tidak seimbang-belajar

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)

2, SMOTE

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)

3, ADASYN

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)

4, RandomUnderSampler

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)

5, Tomek Links

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)

6, SMOTEENN (SMOTE +Edited Nearest Jiran)

SMOTEENN menggabungkan SMOTE dan Diedit Jiran Terdekat.

 from imblearn.combine import SMOTEENN  smoteenn = SMOTEENN() X_resampled, y_resampled = smoteenn.fit_resample(X, y)

7, SMOTETomek (SMOTE + Tomek Links)

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)

8,EasyEnsemble

EasyEnsemble ialah kaedah ensemble yang boleh mencipta subset seimbang bagi kelas majoriti.

 from imblearn.ensemble import EasyEnsembleClassifier  ee = EasyEnsembleClassifier() ee.fit(X, y)

9, BalancedRandomForestClassifier

BalancedRandomForestClassifier ialah kaedah ensemble yang menggabungkan hutan rawak dengan subsampel seimbang.

 from imblearn.ensemble import BalancedRandomForestClassifier  brf = BalancedRandomForestClassifier() brf.fit(X, y)

10, RUSBoostClassifier

RUSBoostClassifier ialah kaedah ensemble yang menggabungkan pensampelan terkurang rawak dan peningkatan.

from imblearn.ensemble import RUSBoostClassifier  rusboost = RUSBoostClassifier() rusboost.fit(X, y)

Ringkasan

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!

Kenyataan:
Artikel ini dikembalikan pada:51cto.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam