成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

干貨|在機(jī)器學(xué)習(xí)中如何應(yīng)對不均衡分類問題?

人工智能 機(jī)器學(xué)習(xí)
在處理機(jī)器學(xué)習(xí)等數(shù)據(jù)科學(xué)問題時,經(jīng)常會碰到不均衡種類分布的情況,即在樣本數(shù)據(jù)中一個或多個種類的觀察值明顯少于其他種類的觀察值的現(xiàn)象。在我們更關(guān)心少數(shù)類的問題時這個現(xiàn)象會非常突出,例如竊電問題、銀行詐騙性交易、罕見病鑒定等。在這種情況下,運用常規(guī)的機(jī)器學(xué)習(xí)算法的預(yù)測模型可能會無法準(zhǔn)確預(yù)測。這是因為機(jī)器學(xué)習(xí)算法通常是通過減少錯誤來增加準(zhǔn)確性,而不考慮種類的平衡。這篇文章講了不同的方法來解決這個不均衡分類問題,同時說明了這些方法的好處和壞處。

在處理機(jī)器學(xué)習(xí)等數(shù)據(jù)科學(xué)問題時,經(jīng)常會碰到不均衡種類分布的情況,即在樣本數(shù)據(jù)中一個或多個種類的觀察值明顯少于其他種類的觀察值的現(xiàn)象。在我們更關(guān)心少數(shù)類的問題時這個現(xiàn)象會非常突出,例如竊電問題、銀行詐騙性交易、罕見病鑒定等。在這種情況下,運用常規(guī)的機(jī)器學(xué)習(xí)算法的預(yù)測模型可能會無法準(zhǔn)確預(yù)測。這是因為機(jī)器學(xué)習(xí)算法通常是通過減少錯誤來增加準(zhǔn)確性,而不考慮種類的平衡。這篇文章講了不同的方法來解決這個不均衡分類問題,同時說明了這些方法的好處和壞處。

不均衡數(shù)據(jù)集一般是指少數(shù)類所占比例少于5%的數(shù)據(jù)集,少數(shù)類通常是指稀有事件的發(fā)生。例如在一個公共欺詐檢測數(shù)據(jù)集中,有如下數(shù)據(jù): 

總觀測數(shù)據(jù) = 1000

欺詐的觀測數(shù)據(jù) = 20

非欺詐的觀測數(shù)據(jù) = 980

事件發(fā)生率 = 2% 

在分析這個數(shù)據(jù)集時最主要的問題是,如何通過合適的稀有事件的樣本數(shù)目得到一個平衡的數(shù)據(jù)集?

傳統(tǒng)的模型評估方法不能準(zhǔn)確的評價不均衡數(shù)據(jù)集訓(xùn)練的模型的表現(xiàn)。顯然,模型趨向于預(yù)測多數(shù)集,少數(shù)集可能會被當(dāng)作噪點或被忽視。因此,相比于多數(shù)集,少數(shù)集被錯分的可能性很大。當(dāng)使用一個不均衡數(shù)據(jù)集訓(xùn)練模型時,準(zhǔn)確率并不是一個合適的評價方式。假如一個分類器可以達(dá)到98%的準(zhǔn)確率,我們會認(rèn)為這個模型表現(xiàn)很好,而對于一個少數(shù)集占總體2%的數(shù)據(jù)集來說,如果分類器把全部都預(yù)測為多數(shù)集,準(zhǔn)確率就能達(dá)到98%,可是這個分類器對于預(yù)測沒有任何用處。

不均衡數(shù)據(jù)集解決方法

解決不均衡數(shù)據(jù)集帶來的模型預(yù)測不準(zhǔn)確的問題主要有兩種方法,第一種方法是在數(shù)據(jù)層面將數(shù)據(jù)集轉(zhuǎn)變?yōu)檩^為平衡的數(shù)據(jù)集,然后進(jìn)行建模;第二種則是在算法層面改進(jìn)算法模型的表現(xiàn)。

數(shù)據(jù)層面方法:重抽樣

在將數(shù)據(jù)用于建模之前,先運用重抽樣技術(shù)使數(shù)據(jù)變平衡。平衡數(shù)據(jù)主要通過兩種方式達(dá)到:增加少數(shù)類的頻率或減少多數(shù)類的頻率。通過重抽樣來改變兩個種類所占的比例。

隨機(jī)欠抽樣

隨機(jī)欠抽樣技術(shù)通過隨機(jī)刪除多數(shù)類的實例來平衡種類分布。在之前的例子中,我們無放回的取10%非欺詐數(shù)據(jù),結(jié)合所有的欺詐數(shù)據(jù)形成新數(shù)據(jù)集。這樣,總觀測數(shù)據(jù)變?yōu)?0+980*10%=118,而欠抽樣之后新數(shù)據(jù)集的事件發(fā)生率為20/118=17%。

當(dāng)訓(xùn)練數(shù)據(jù)很多時,隨機(jī)欠抽樣通過減少訓(xùn)練數(shù)據(jù)的數(shù)量提高運行時間和解決存儲問題。然而,這也會帶來潛在有效信息被刪除的問題。欠抽樣選擇的數(shù)據(jù)可能是偏差樣本,無法準(zhǔn)確代表總體。因此,會導(dǎo)致在測試集中表現(xiàn)欠佳。

隨機(jī)過抽樣

過抽樣技術(shù)是通過隨機(jī)復(fù)制少數(shù)類的實例來增加少數(shù)類的數(shù)量。在之前的例子中,復(fù)制20個少數(shù)實例20遍,使少數(shù)類數(shù)據(jù)變?yōu)?00條,總觀測數(shù)據(jù)變?yōu)?80+400=1380,事件發(fā)生概率為400/1380=29%。與欠抽樣不同,過抽樣不會損失任何信息。一般來說,過抽樣表現(xiàn)好于欠抽樣。然而,由于過抽樣復(fù)制了多遍少數(shù)類數(shù)據(jù),導(dǎo)致過擬合(over-fitting)的可能性變大。

基于聚類的過抽樣

基于聚類的過抽樣是將k-means聚類算法分別應(yīng)用在少數(shù)類和多數(shù)類中,識別出數(shù)據(jù)集中不同簇(cluster)。隨后,通過對每個簇過抽樣來確保多數(shù)類和少數(shù)類的簇中實例的數(shù)目相等。假設(shè)對于剛才的數(shù)據(jù)集做聚類結(jié)果如下:

多數(shù)類簇:

簇1: 150觀測數(shù)據(jù)

簇2: 120觀測數(shù)據(jù)

簇3: 230觀測數(shù)據(jù)

簇4: 200觀測數(shù)據(jù)

簇5: 150觀測數(shù)據(jù)

簇6: 130觀測數(shù)據(jù)

少數(shù)類簇:

簇1: 8觀測數(shù)據(jù)

簇2: 12觀測數(shù)據(jù)

對簇過抽樣之后,每個相同種類的簇含有相同的數(shù)量的觀測數(shù)據(jù):

多數(shù)類簇:

簇1: 170觀測數(shù)據(jù)

簇2: 170觀測數(shù)據(jù)

簇3: 170觀測數(shù)據(jù)

簇4: 170觀測數(shù)據(jù)

簇5: 170觀測數(shù)據(jù)

簇6: 170觀測數(shù)據(jù)

少數(shù)類簇:

簇1: 250觀測數(shù)據(jù)

簇2: 250觀測數(shù)據(jù)

基于聚類的過抽樣之后,事件發(fā)生率為 500/(1020+500)=33%。這種方法考慮了多數(shù)類少數(shù)類由不同的簇組成,解決了每個簇所包含的實例不同的問題。然而,由于這是一種過抽樣技術(shù),同樣也可能會導(dǎo)致過擬合。

合成少數(shù)類過抽樣(SMOTE)

SMOTE避免了復(fù)制少數(shù)類導(dǎo)致的過擬合問題。用少數(shù)類的子集來創(chuàng)造新的合成的相似少數(shù)類實例。將這些合成的實例加入原有數(shù)據(jù)集,豐富少數(shù)類的數(shù)據(jù)。下圖展示了創(chuàng)造合成實例的方法。

 

 

圖1:通過SMOTE創(chuàng)造合成實例

還是用之前的例子,在少數(shù)類中選取15個樣本實例,合成20次新的數(shù)據(jù)。少數(shù)類數(shù)據(jù)變?yōu)闉?00條,事件發(fā)生率為300/1280=23.4%。

這種方法通過合成新數(shù)據(jù)緩解了由于復(fù)制少數(shù)類帶來的過擬合問題,同時不會造成有效信息丟失。然而,當(dāng)合成新實例時,沒有考慮與其他類的相鄰實例,這可能會導(dǎo)致種類重疊,并且可能會添入額外的噪點。

算法集合技術(shù)

上面所說的技術(shù)都是通過對原數(shù)據(jù)集進(jìn)行重抽樣來得到均衡數(shù)據(jù)集。在這一部分中,我們將對于現(xiàn)有分類算法進(jìn)行改進(jìn),使其適用于不均衡數(shù)據(jù)集。算法合成的目的是提升單一分類器的表現(xiàn),下圖展示了合成算法的方法。

算法集合技術(shù)的方法 

圖2:算法集合技術(shù)的方法

基于bagging

Bagging是Bootstrap Aggregating的縮寫。傳統(tǒng)的bagging算法生成n個可以互相替換的bootstrap訓(xùn)練樣本。基于每個樣本,訓(xùn)練不同的模型,最后匯總這些模型的預(yù)測結(jié)果。Bagging可以減少過擬合,從而創(chuàng)造更精準(zhǔn)的預(yù)測模型。與boosting不同的是,bagging允許對訓(xùn)練樣本集進(jìn)行替換。下圖展示了bagging的流程。

 

Bagging的方法 

圖3: Bagging的方法

在之前的例子中,從總體中可替換的抽取10個bootstrap樣本,每個樣本包含200個觀測值。每個樣本都與原始數(shù)據(jù)不相同,但是與原始數(shù)據(jù)的分布和可變性相似。很多機(jī)器學(xué)習(xí)算法都可以用來訓(xùn)練這10個bootstrap樣本,如邏輯回歸、神經(jīng)網(wǎng)絡(luò)、決策樹等,得到10個不同的分類器C1,C2…C10。將這10個分類器 集合成一個復(fù)合分類器。這種集合算法結(jié)合了多個單獨的分類器的結(jié)果,可以得到一個更好的復(fù)合分類器。Bagging算法提升了機(jī)器學(xué)習(xí)算法的穩(wěn)定性和準(zhǔn)確性,并且解決了過擬合問題。在有噪點的數(shù)據(jù)環(huán)境中,bagging比boosting表現(xiàn)更加優(yōu)異。

基于Boosting

Boosting也是一個算法集合技術(shù),它將弱分類器結(jié)合起來,形成一個可以準(zhǔn)確預(yù)測的強(qiáng)分類器。Boosting從一個為訓(xùn)練集準(zhǔn)備的弱分類器開始。弱分類器是指預(yù)測準(zhǔn)確率只比平均數(shù)高一點的分類器,如果數(shù)據(jù)發(fā)生一點變化就會導(dǎo)致分類模型發(fā)生很大變化。Boosting是一種提高任意給定學(xué)習(xí)算法精確度的方法。下圖展示了Boosting的方法。

 

Boosting的方法 

圖4: Boosting的方法

下面介紹幾種不同的boosting技術(shù)。

Ada Boost是Boosting算法家族中的代表算法,通過結(jié)合許多弱分類器形成一個準(zhǔn)確的預(yù)測分類器。每個分類器的目的都是正確分類上一輪被分錯的實例。每一輪之后,被分錯的實例的權(quán)重增加,被正確分類的實例的權(quán)重降低。應(yīng)用Ada Boost到剛才的不均衡數(shù)據(jù)集中,首先給每一個實例相同的權(quán)重,假設(shè)基礎(chǔ)分類器只分對了400個實例,將這400個實例的權(quán)重減小為,剩下600個被錯分的實例的權(quán)重增加到。每一輪中,弱分類器通過更新權(quán)重來提升它的表現(xiàn)。這個過程持續(xù)到錯分率明顯下降,分類器變成了強(qiáng)分類器為止。Ada Boost的好處在于它非常便于執(zhí)行,而且非常普遍,適用于所有種類的分類算法,也不會導(dǎo)致過擬合。壞處是它對于噪點和異常值非常敏感。

Gradient Boosting 是一個最優(yōu)化算法,每個模型都按順序通過Gradient Descent方法最小化損失函數(shù)。在Gradient Boosting中,決策樹被當(dāng)作一個弱分類器。Ada Boost和Gradient Boosting都是將弱分類器變?yōu)閺?qiáng)分類器的方法,但這兩種方法有本質(zhì)的不同。Ada Boost在學(xué)習(xí)過程開始之前要求用戶設(shè)立弱分類器集或者隨機(jī)生成弱分類器集,每一個弱分類器的權(quán)重會根據(jù)是否分類正確調(diào)整。Gradient Boosting則是在訓(xùn)練集上建立第一個分類器預(yù)測,接著計算損失值,然后運用損失值來改進(jìn)分類器。每一步中,損失函數(shù)的殘差都會通過Gradient Descent Method來計算。在隨后的迭代中,新的殘差變成了目標(biāo)變量。Gradient Tree Boosting比隨機(jī)森林更難以擬合。它有三個參數(shù)可以微調(diào),Shrinkage參數(shù),樹的深度和樹的數(shù)量。選擇合適的參數(shù)才能得到好的擬合的Gradient boosted tree。如果參數(shù)調(diào)整的不正確,可能會導(dǎo)致過擬合。

結(jié)論

當(dāng)面對不均衡數(shù)據(jù)集時,沒有一個解決方案可以提升所有預(yù)測模型的準(zhǔn)確性。我們所需要做的可能就是嘗試不同的方法,找出最適合這個數(shù)據(jù)集的方法。最有效的解決不均衡數(shù)據(jù)集的技術(shù)取決于數(shù)據(jù)集的特征。在大多數(shù)情況中,合成抽樣技術(shù)如SMOTE會比傳統(tǒng)的過抽樣和欠抽樣表現(xiàn)更好。為了得到更好的結(jié)果,可以同時使用合成抽樣技術(shù)和boosting方法。在比較不同方法時,可以考慮相關(guān)的評估參數(shù)。在比較使用前述方法所建立的多個預(yù)測模型的時候,可以用ROC曲線下的面積來得出哪個模型效果更好。 

責(zé)任編輯:龐桂玉 來源: 九次方大數(shù)據(jù)
相關(guān)推薦

2023-06-13 10:27:58

2023-09-15 11:25:14

2021-01-25 09:00:00

機(jī)器學(xué)習(xí)人工智能算法

2023-09-26 07:15:57

圖數(shù)據(jù)場景風(fēng)控場景

2015-10-21 13:48:12

機(jī)器學(xué)習(xí)干貨數(shù)據(jù)

2020-12-27 21:14:06

Python機(jī)器學(xué)習(xí)算法

2015-09-28 10:12:13

VDI虛擬化

2015-09-30 10:29:07

VDI

2017-07-13 11:20:30

機(jī)器學(xué)習(xí)業(yè)務(wù)問題MVP

2017-07-21 13:45:48

機(jī)器學(xué)習(xí)分類器MVP模型

2017-03-20 09:25:10

機(jī)器學(xué)習(xí)采樣數(shù)據(jù)合成

2017-03-28 09:40:23

機(jī)器學(xué)習(xí)數(shù)據(jù)不平衡

2022-05-06 09:48:56

機(jī)器學(xué)習(xí)樣本不平衡

2022-09-02 09:04:05

機(jī)器學(xué)習(xí)評估

2022-06-05 21:16:08

機(jī)器學(xué)習(xí)Python

2020-09-21 09:02:56

AI機(jī)器學(xué)習(xí)類不平衡

2025-05-28 03:10:00

2017-06-16 22:14:45

機(jī)器學(xué)習(xí)數(shù)據(jù)不平衡

2019-06-06 08:52:00

2020-12-16 10:42:21

人工智能智能建筑IoT
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 亚洲一区播放 | 午夜视频免费在线观看 | 黄色成人在线观看 | 欧美成人a | 免费精品视频一区 | 99久久精品一区二区成人 | 在线色网 | 国产小视频在线 | 国产成人精品久久 | 不卡一二区 | 亚洲成人免费在线 | 成人免费在线播放视频 | 国产精品久久久久久久久久久新郎 | 色综合久久久久 | 国产一区高清 | 国产精品成人一区二区 | 亚洲高清在线视频 | 密色视频| av黄色国产 | 精品视频一区二区三区在线观看 | 欧美精品一二三 | 久久www免费人成看片高清 | a级毛片免费高清视频 | 欧美精品中文字幕久久二区 | 国产精品二区三区 | 久久国产激情视频 | 一级a毛片 | 日韩视频一区二区三区 | 精品在线视频播放 | 91www在线观看 | 国产精品一区二区电影 | 精品免费国产一区二区三区四区 | 成人在线视频免费观看 | 亚洲精品永久免费 | 麻豆视频国产在线观看 | 美女一级毛片 | 亚洲成av | 最新av中文字幕 | 亚洲最大福利网 | 1级毛片| 99色综合|