機器學習-樣本不均衡

Introduction

樣本不均衡代表在某一類數據集中,Label其中一類佔有很大的比例

  • 通常會使用上採樣來解決問題
    • 將較少類的樣本增加到與較多類的樣本一樣多

imblearn

imblearn是專門用來處理不平衡數據集的庫,性能較sklearn

  • 也需使用fit_sample方法進行擬合,用法與sklearn相近

    安裝

    1
    conda install -c glemaitre imbalanced-learn

or

1
pip install imblearn

上採樣釋例

1
2
3
4
from imblearn.over_sampling iimport SMOTE

sm = SMOTE(random_state=42) #實例化
X,y = sm.fit_sample(X,y) #進行上採樣的轉換
  • X,y 可為pandas.DataFrame 或是 pandas.Series 類型