一.下采樣python
對於樣本不均衡來講,使得兩個樣本(向少的樣本靠齊)一樣的少.將多的數據進行裁剪使得樣本最後能夠均衡,具體的代碼設計以下:dom
#以二分類爲例 #對整個樣本進行分開 one_data=data[data['label']==1].index zero_data=data[data['label'==0]].index #將多的樣本進行隨機的抽樣(raplace表明着不重複抽取) one_sample=np.random.choice(one_data,len(zero_data),replace=False) under_sample_index=np.concatenate([zero_data,np.array(one_sample)]) data.loc[under_sample_index]
二.過採樣設計
對於樣本不均衡來講,使得兩個樣本(向多的樣本靠齊)一樣的多(製造多的樣本)blog
from imblearn.over_sampling import SMOTE #沒有用pip install imblearn oversampler=SMOTE(random_state=0) os_features,os_labels=oversampler.fit_sample(features_train,labels_train)