機器學習中如何解決資料不平衡問題?

2021-09-12 19:21:28 字數 2066 閱讀 1449

2.使用k-fold交叉驗證

3.轉化為一分類問題

4.組合不同的重取樣資料集

5.用不同比例重新取樣

6.多模型bagging

7.集群豐富類

8.設計適用於不平衡資料集的模型

總結:在學術研究與教學中,很多演算法都有乙個基本假設,那就是資料分布是均勻的。當我們把這些演算法直接應用於實際資料時,大多數情況下都無法取得理想的結果。因為實際資料往往分布得很不均勻,都會存在「長尾現象」,也就是所謂的「二八原理」。

在處理機器學習等資料科學問題時,經常會碰到不均衡種類分布的情況,即在樣本資料中乙個或多個種類的觀察值明顯少於其他種類的觀察值的現象。在我們更關心少數類的問題時這個現象會非常突出,例如竊電問題、銀行詐騙**易、罕見病鑑定等。在這種情況下,運用常規的機器學習演算法的**模型可能會無法準確**。這是因為機器學習演算法通常是通過減少錯誤來增加準確性,而不考慮種類的平衡。這篇文章講了不同的方法來解決這個不均衡分類問題,同時說明了這些方法的好處和壞處。

不平衡程度相同(即正負樣本比例類似)的兩個問題,解決的難易程度也可能不同,因為問題難易程度還取決於我們所擁有資料有多大。比如在**微博互動數的問題中,雖然資料不平衡,但每個檔位的資料量都很大——最少的類別也有幾萬個樣本,這樣的問題通常比較容易解決;而在癌症診斷的場景中,因為患癌症的人本來就很少,所以資料不但不平衡,樣本數還非常少,這樣的問題就非常棘手。綜上,可以把問題根據難度從小到大排個序:大資料+分布均衡《大資料+分布不均衡《小資料+資料均衡《小資料+資料不均衡。對於需要解決的問題,拿到資料後,首先統計可用訓練資料有多大,然後再觀察資料分布情況。經驗表明,訓練資料中每個類別有5000個以上樣本,資料量是足夠的,正負樣本差乙個數量級以內是可以接受的,不太需要考慮資料不平衡問題(完全是經驗,沒有理論依據,僅供參考)。

在將資料用於建模之前,先運用重抽樣技術使資料變平衡。平衡資料主要通過兩種方式達到:增加少數類的頻率或減少多數類的頻率。通過重抽樣來改變兩個種類所佔的比例。

1.1隨機欠抽樣

1.2.基於聚類的過取樣

值得注意的是,使用過取樣方法來解決不平衡問題時應適當地應用交叉驗證。這是因為過取樣會觀察到罕見的樣本,並根據分布函式應用自舉生成新的隨機資料,如果在過取樣之後應用交叉驗證,那麼我們所做的就是將我們的模型過擬合於乙個特定的人工引導結果。這就是為什麼在過度取樣資料之前應該始終進行交叉驗證,就像實現特徵選擇一樣。只有重複取樣資料可以將隨機性引入到資料集中,以確保不會出現過擬合問題。

k-fold交叉驗證就是把原始資料隨機分成k個部分,在這k個部分中選擇乙個作為測試資料,剩餘的k-1個作為訓練資料。交叉驗證的過程實際上是將實驗重複做k次,每次實驗都從k個部分中選擇乙個不同的部分作為測試資料,剩餘的資料作為訓練資料進行實驗,最後把得到的k個實驗結果平均。

參考部落格1

參考部落格2

如何解決資料不平衡問題

重取樣 重取樣包括兩種方式 欠取樣和過取樣 過取樣是針對資料少的樣本的處理方法,簡單的可以隨機複製一些樣本來擴增數量,但是這樣可能會造成過擬合 高方差 較為有效的方法可以對資料進行擴增,例如翻轉,平移,亮度增強等 欠取樣是針對資料多的樣本,可以將多的樣本隨機剔除一些,達到和較小樣本相同數目,在進行訓...

機器學習 不平衡資料集

不平衡資料集是指在解決分類問題時每個類別的樣本量不均衡的資料集。比如,在二分類中你有100個樣本其中80個樣本被標記為class 1,其餘20個被標記為class 2.這個資料集就是乙個不平衡資料集,class 1和class 2的樣本數量之比為4 1.不平衡資料集不僅存在於二分類問題而且存在於多分...

資料不平衡 機器學習

2.1 加權處理 2.2 過取樣 2.3 降取樣 2.1加權處理 加權的操作 1.遍歷每個樣本 2.如果樣本滿足某個要求,例如在不平衡的二分類問題中,如果樣本的標籤是1,那麼我們就將其權重設為w 1w 1 w1 如果樣本標籤為0,那麼我們將其權重設定為w 2w 2 w2 3.將樣本權重帶入模型進行訓...