日本无码免费高清在线|成人日本在线观看高清|A级片免费视频操逼欧美|全裸美女搞黄色大片网站|免费成人a片视频|久久无码福利成人激情久久|国产视频一二国产在线v|av女主播在线观看|五月激情影音先锋|亚洲一区天堂av

  • 手機站
  • 小程序

    汽車測試網(wǎng)

  • 公眾號
    • 汽車測試網(wǎng)

    • 在線課堂

    • 電車測試

如何解決數(shù)據(jù)不平衡問題?

2019-04-18 21:14:22·  來源:Charlotte數(shù)據(jù)挖掘 ?  
 
在機器學習的實踐中,我們通常會遇到實際數(shù)據(jù)中正負樣本比例不平衡的情況,也叫數(shù)據(jù)傾斜。對于數(shù)據(jù)傾斜的情況,如果選取的算法不合適,或者評價指標不合適,那么
在機器學習的實踐中,我們通常會遇到實際數(shù)據(jù)中正負樣本比例不平衡的情況,也叫數(shù)據(jù)傾斜。對于數(shù)據(jù)傾斜的情況,如果選取的算法不合適,或者評價指標不合適,那么對于實際應用線上時效果往往會不盡人意,所以如何解決數(shù)據(jù)不平衡問題是實際生產(chǎn)中非常常見且重要的問題。
什么是類別不平衡問題
 
我們拿到一份數(shù)據(jù)時,如果是二分類問題,通常會判斷一下正負樣本的比例,在機器學習中,通常會遇到正負樣本極不均衡的情況,如垃圾郵件的分類等;在目標檢測SSD中,也經(jīng)常遇到數(shù)據(jù)不平衡的情況,檢測器需要在每張圖像中評價一萬個到十萬個候選位置,然而其中只有很少的點真的含有目標物體。這就導致了訓練效率低下和簡單的負面樣本引發(fā)整個模型表現(xiàn)下降的問題。
 
如何解決不平衡問題
 
1. 從數(shù)據(jù)角度
  • 主動獲?。韩@取更多的少量樣本數(shù)據(jù)
  • 針對少量樣本數(shù)據(jù),可以盡可能去擴大這些少量樣本的數(shù)據(jù)集,或者盡可能去增加他們特有的特征來豐富數(shù)據(jù)的多樣性。譬如,如果是一個情感分析項目,在分析數(shù)據(jù)比例時發(fā)現(xiàn)負樣本(消極情感)的樣本數(shù)量較少,那么我們可以盡可能在網(wǎng)站中搜集更多的負樣本數(shù)量。
  • 算法采樣:上采樣、下采樣、生成合成數(shù)據(jù)
  • ADASYN采樣方法:
  • ADASYN為樣本較少的類生成合成數(shù)據(jù),其生成的數(shù)據(jù)與更容易學習的樣本相比,更難學習?;舅枷胧歉鶕?jù)學習難度的不同,對不同的少數(shù)類的樣本使用加權(quán)分布。其中,更難學習的少數(shù)類的樣本比那些更容易學習的少數(shù)類的樣本要產(chǎn)生更多的合成數(shù)據(jù)。因此,ADASYN方法通過以下兩種方式改善了數(shù)據(jù)分布的學習:(1)減少由于類別不平衡帶來的偏差;(2)自適應地將分類決策邊界轉(zhuǎn)移到困難的例子。
  • SMOTE采樣方法:
  • 從少數(shù)類創(chuàng)建新的合成點,以增加其基數(shù)。但是SMOTE算法也有一定的局限性。具體有兩項,一是在近鄰選擇時,存在一定的盲目性。在算法執(zhí)行過程中,需要確定K值,即選擇幾個近鄰樣本,這個需要根據(jù)具體的實驗數(shù)據(jù)和實驗人自己解決。二是該算法無法克服非平衡數(shù)據(jù)集的數(shù)據(jù)分布問題,容易產(chǎn)生分布邊緣化的問題。由于負類樣本的分布決定了其可選擇的近鄰,如果一個負類樣本處在負類樣本的邊緣,則由此負類樣本和近鄰樣本產(chǎn)生的樣本也會處在邊緣,從而無法確定正負類的分類邊界。下圖是以前做的一個項目應用個各種采樣方法做數(shù)據(jù)增強的情況。(效果不明顯,因為原始數(shù)據(jù)的分布重合太明顯,可視化不容易顯示出效果)
  • 圖1 原始數(shù)據(jù)的分布
  •  
  • 圖2 下采樣結(jié)果
  • 圖3 上采樣結(jié)果
  • 數(shù)據(jù)增強:加噪音增強模型魯棒性、對不同性質(zhì)的數(shù)據(jù)也可以做不同的augmentation
  • 改變權(quán)重:設(shè)定懲罰因子,如libsvm等算法里設(shè)置的正負樣本的權(quán)重項等。懲罰多樣本類別,其實還可以加權(quán)少樣本類別
注意:在選擇采樣法事需要注意一個問題,如果你的實際數(shù)據(jù)是數(shù)據(jù)不平衡的,在訓練模型時發(fā)現(xiàn)效果不好,于是采取了采樣法平衡的數(shù)據(jù)的比例再來進行訓練,然后去測試數(shù)據(jù)上預測,這個時候算法的效果是否會有偏差呢?此時你的訓練樣本的分布與測試樣本的分布已經(jīng)發(fā)生了改變,這樣做反而會產(chǎn)生不好的效果。在實際情況中,我們盡可能的需要保持訓練和測試的樣本的概率分布是一致的,如果測試樣本的分布是不平衡的,那么訓練樣本盡可能與測試樣本的分布保持一致,哪怕拿到手的是已經(jīng)清洗和做過預處理后的平衡的數(shù)據(jù)。具體原因感興趣的可以仔細思考一下。
2.從評價指標角度
  • 謹慎選擇AUC作為評價指標:對于數(shù)據(jù)極端不平衡時,可以觀察觀察不同算法在同一份數(shù)據(jù)下的訓練結(jié)果的precision和recall,這樣做有兩個好處,一是可以了解不同算法對于數(shù)據(jù)的敏感程度,二是可以明確采取哪種評價指標更合適。針對機器學習中的數(shù)據(jù)不平衡問題,建議更多PR(Precision-Recall曲線),而非ROC曲線,具體原因畫圖即可得知,如果采用ROC曲線來作為評價指標,很容易因為AUC值高而忽略實際對少兩樣本的效果其實并不理想的情況。
  • 不要只看Accuracy:Accuracy可以說是最模糊的一個指標了,因為這個指標高可能壓根就不能代表業(yè)務的效果好,在實際生產(chǎn)中,我們可能更關(guān)注precision/recall/mAP等具體的指標,具體側(cè)重那個指標,得結(jié)合實際情況看。
3.從算法角度
  • 選擇對數(shù)據(jù)傾斜相對不敏感的算法。如樹模型等。
  • 集成學習(Ensemble集成算法)。首先從多數(shù)類中獨立隨機抽取出若干子集,將每個子集與少數(shù)類數(shù)據(jù)聯(lián)合起來訓練生成多個基分類器,再加權(quán)組成新的分類器,如加法模型、Adaboost、隨機森林等。
  • 將任務轉(zhuǎn)換成異常檢測問題。譬如有這樣一個項目,需要從高壓線的航拍圖片中,將松動的螺絲/零件判斷為待檢測站點,即負樣本,其他作為正樣本,這樣來看,數(shù)據(jù)傾斜是非常嚴重的,而且在圖像質(zhì)量一般的情況下小物體檢測的難度較大,所以不如將其轉(zhuǎn)換為無監(jiān)督的異常檢測算法,不用過多的去考慮將數(shù)據(jù)轉(zhuǎn)換為平衡問題來解決。
目標檢測中的不平衡問題的進展

1.GHM_Detection
論文:https://arvix.org/pdf/1811.05181.pdf
github:https://github.com/libuyu/GHM_Detection
本文是香港中文大學發(fā)表于 AAAI 2019 的工作,文章從梯度的角度解決樣本中常見的正負樣本不均衡的問題。從梯度的角度給計算 loss 的樣本加權(quán),相比與 OHEM 的硬截斷,這種思路和 Focal Loss 一樣屬于軟截斷。
文章設(shè)計的思路不僅可以用于分類 loss 改進,對回歸 loss 也很容易進行嵌入。不需要考慮 Focal Loss 的超參設(shè)計問題,同時文章提出的方法效果比 Focal Loss 更好。創(chuàng)新點相當于 FL 的下一步方案,給出了解決 class-imbalance 的另一種思路,開了一條路,估計下一步會有很多這方面的 paper 出現(xiàn)。

2.Focal Loss for Dense Object Detection
論文:
Focal Loss:https://arxiv.org/abs/1708.02002
RetinaNet:https://github.com/unsky/RetinaNet
github:https://github.com/unsky/focal-loss
本文通過重塑標準交叉熵損失來解決這一類不平衡問題。他們的想法是降低簡單的負面樣本所占的權(quán)重,所以他們提出的焦點損失(Focal Loss)方法將訓練集中在一系列難點上,并且防止了大量的簡單負面例子在訓練過程中阻礙探測器學習。如上圖,參數(shù) γ 的值選擇得越大,模型就會對已經(jīng)得到了很好的分類的樣本忽略得越多,越專注于難的樣本的學習。這樣的機制就讓他們的檢測器在密集對象檢測這樣的真實正面樣本比例很低的情況下取得了很高的準確率。對于應對樣本不平衡問題的關(guān)鍵方法“焦距損失”,作者們在論文中還提出了兩種不同的表現(xiàn)形式,都起到了很好的效果.
 
3.在線困難樣例挖掘(online hard example mining, OHEM)
目標檢測的另一個問題是類別不平衡,圖像中大部分的區(qū)域是不包含目標的,而只有小部分區(qū)域包含目標。此外,不同目標的檢測難度也有很大差異,絕大部分的目標很容易被檢測到,而有一小部分目標卻十分困難。OHEM和Boosting的思路類似,其根據(jù)損失值將所有候選區(qū)域進行排序,并選擇損失值最高的一部分候選區(qū)域進行優(yōu)化,使網(wǎng)絡更關(guān)注于圖像中更困難的目標。此外,為了避免選到相互重疊很大的候選區(qū)域,OHEM對候選區(qū)域根據(jù)損失值進行NMS。
 
總之,針對數(shù)據(jù)不平衡問題,有多重解決方式,但是不能為了解決這個問題就去改變數(shù)據(jù)的真實分布來得到更好的結(jié)果,可以從算法、loss function的設(shè)計等等多種角度來選擇解決數(shù)據(jù)不平衡的方法。 
分享到:
 
反對 0 舉報 0 收藏 0 評論 0
滬ICP備11026917號-25