不平衡數(shù)據(jù)的數(shù)據(jù)處理方法
在機(jī)器學(xué)習(xí)中,不平衡數(shù)據(jù)是常見場(chǎng)景。不平衡數(shù)據(jù)一般指正樣本數(shù)量遠(yuǎn)遠(yuǎn)小于負(fù)樣本數(shù)量。如果數(shù)據(jù)不平衡,那么分類器總是預(yù)測(cè)比例較大的類別,就能使得準(zhǔn)確率達(dá)到很高的水平。比如正樣本的比例為 1%,負(fù)樣本的比例為 99%。這時(shí)候分類器不需要經(jīng)過訓(xùn)練,直接預(yù)測(cè)所有樣本為負(fù)樣本,準(zhǔn)確率能夠達(dá)到 99%。經(jīng)過訓(xùn)練的分類器反而可能沒有辦法達(dá)到99%。
對(duì)于不平衡數(shù)據(jù)的分類,為了解決上述準(zhǔn)確率失真的問題,我們要換用 F 值取代準(zhǔn)確率作為評(píng)價(jià)指標(biāo)。用不平衡數(shù)據(jù)訓(xùn)練,召回率很低導(dǎo)致 F 值也很低。這時(shí)候有兩種不同的方法。***種方法是修改訓(xùn)練算法,使之能夠適應(yīng)不平衡數(shù)據(jù)。著名的代價(jià)敏感學(xué)習(xí)就是這種方法。另一種方法是操作數(shù)據(jù),人為改變正負(fù)樣本的比率。本文主要介紹數(shù)據(jù)操作方法。
1. 欠抽樣方法
欠抽樣方法是針對(duì)多數(shù)的負(fù)樣本,減少負(fù)樣本的數(shù)量,反而提高整體 F 值。最簡(jiǎn)單的欠抽樣方法是隨機(jī)地刪掉一些負(fù)樣本。欠抽樣的缺點(diǎn)很明顯,就是會(huì)丟失負(fù)樣本的一些重要信息,不能夠充分利用已有的信息。
2. 過抽樣方法
欠抽樣方法是針對(duì)少數(shù)的正樣本,減少正樣本的數(shù)量,從而提高整體 F 值。最簡(jiǎn)單的過抽樣方法是簡(jiǎn)單地復(fù)制一些正樣本。過抽樣的缺點(diǎn)是沒有給正樣本增加任何新的信息。過抽樣方法對(duì) SVM 算法是無效的。因?yàn)?SVM 算法是找支持向量,復(fù)制正樣本并不能改變數(shù)據(jù)的支持向量。
改進(jìn)的過抽樣方法則采用加入隨機(jī)高斯噪聲或產(chǎn)生新的合成樣本等方法。根據(jù)不同的數(shù)據(jù)類型,我們可以設(shè)計(jì)很巧妙的過抽樣方法。有 博客 在識(shí)別交通信號(hào)問題上就提出了一個(gè)新穎的方法。交通信號(hào)處理識(shí)別是輸入交通信號(hào)的圖片,輸出交通信號(hào)。我們可以通過變換交通信號(hào)圖片的角度等方法,生成新的交通信號(hào)圖片,如下所示。
3. SMOTE
Synthetic Minority Over-sampling Technique (SMOTE) 算法是一個(gè)最有名的過抽樣的改進(jìn)。SMOTE 是為了解決針對(duì)原始過抽樣方法不能給正樣本增加新信息的問題。算法的思想是合成新的少數(shù)類樣本,合成的策略是對(duì)每個(gè)少數(shù)類樣本a,從它的最近鄰中隨機(jī)選一個(gè)樣本b,然后在a、b之間的連線上隨機(jī)選一點(diǎn)作為新合成的少數(shù)類樣本。
4. 總結(jié)
從理論上來說,SMOTE 方法要優(yōu)于過抽樣方法,過抽樣方法要優(yōu)于欠抽樣方法。但是很多工業(yè)界場(chǎng)景,我們反而采用欠抽樣方法。工業(yè)界數(shù)據(jù)量大,即使正樣本占比小,數(shù)據(jù)量也足夠訓(xùn)練出一個(gè)模型。這時(shí)候我們采用欠抽樣方法的主要目的是提高模型訓(xùn)練效率??傊痪湓捑褪?,有數(shù)據(jù)任性。。