鯨品堂|數據挖掘:針對小樣本與不均衡樣本的機器學習算法實踐

2022-04-12 989
01
小樣本、不均衡樣本在分類任務中普遍存在

隨著計算能力、存儲空間、網絡的高速發展,人類所積累的數據量正在快速增長,而分類在數據挖掘中是一項非常重要的任務,已漸漸融入到了我們的日常生活中。

圖片關鍵詞

上述為機器學習領域分類任務的幾個典型應用場景。在信用卡反欺詐場景中,大部分行為為正常刷卡,盜刷行為(為識別目標,定義為正樣本)是小概率事件,甚至1%都不到。同理,在用戶離網告警場景中,大部分用戶是正常的在網用戶,離網用戶(為識別目標,定義為正樣本)只占非常小的一部分??梢?,在很多建模場景中都存在識別目標樣本數據量較少,樣本極度不均衡的問題。

02
小樣本、不均衡樣本可能導致的問題


建模樣本量不足,將導致模型陷入對小樣本的過擬合以及對整體任務的欠擬合,缺乏泛化能力

過擬合是指模型對訓練集“死記硬背”,記住了不適用于測試集的訓練集性質或特點,沒有理解數據背后的規律。導致其在訓練樣本中表現得過于優越,但在驗證數據集以及測試數據集中表現不佳,即我們所說的“泛化能力差”。

圖片關鍵詞

正負樣本比例嚴重失衡,信息的不均衡使得分類器更傾向于將數據樣本判別為多數類

在一個極度不平衡的樣本中,由于機器學習會針對每個樣本數據進行學習,那么多數類樣本帶有的信息量比少數類樣本信息量大,會對分類器的規則學習造成困擾,使得分類器存在將樣本判別為多數類的傾向。具體表現為:多數類樣本的查全率過高,少數類樣本的查全率過低,而整體的準確率依然會有很好的表現。

舉例來說:假如有100個樣本,其中只有1個是正樣本,其余99個全為負樣本,那么學習器只要制定一個簡單的方法:所有樣本均判別為負樣本,就能輕松達到99%的準確率。此時,正樣本召回率為0%,而負樣本召回率達到100%。但這個分類器的決策很明顯不是我們想要的判定標準。

圖片關鍵詞

圖片關鍵詞

03
如何解決小樣本、不均衡樣本問題

數據角度出發,運用采樣技術以均衡建模樣本

從數據的角度出發,既然樣本數據是不平衡的,那么可以通過某種策略進行重采樣,從而讓數據相對均衡一些。抽樣策略主要包括過采樣、欠采樣、綜合采樣三種方式。

  • 過采樣(over-sampling)

對少數類樣本進行采樣,通過擴充少數類數據樣本,使得兩類數據數目接近,然后再進行學習。粗暴的隨機復制少數樣本存在一定缺點:雖然引入了額外的訓練數據,但沒有給少數類樣本增加任何新的信息,非常容易造成過擬合。為了合成有效新樣本,可選用SMOTE、KMeansSMOTE、SVMSMOTE等過采樣算法。

  • 欠采樣(under-sampling)

又稱下采樣。對多數類樣本進行采樣,通過減少多數類數據樣本,使得兩類數據量級接近,然后再正常進行學習。簡單隨機抽樣方式存在一定缺陷:如果采樣隨機丟棄反例,會損失已經收集的信息,往往還會丟失重要信息。為了緩解隨機欠采樣中的信息丟失,可選用NearMiss、ClusterCentroids、TomekLinks、EditedNearestNeighbours等欠采樣算法。

  • 綜合采樣法

過采樣算法的缺點是生成的少數類樣本容易與周圍的多數類樣本產生重疊難以分類,而欠采樣的數據清洗技術恰好可以處理掉重疊樣本,所以可以將二者結合起來形成一個pipeline,先過采樣再進行數據清洗。主要的方法是SMOTE + ENN和SMOTE + Tomek。

算法角度出發,選用適用于不均衡樣本的算法

在通常的學習任務中,假定所有樣本的權重一般都是相等的,或者說誤分類成本是相同的。但是在大多數實際應用中,這種假設是不正確的。因此從算法的角度出發,采用基于代價敏感學,即考慮不同誤分類情況代價的差異性對算法進行優化,使得算法在不平衡數據下也能有較好的效果。所謂代價敏感學習主要考慮的是在分類問題中,不同類別的樣本在分類錯誤時導致不同的誤分類成本如何去訓練模型。

  • 從學習模型出發

主要是對算法的改進,使之能適應不平衡數據下的學習,如感知機,支持向量機,決策樹,神經網絡等分別都有其代價敏感的版本。以代價敏感的決策樹為例,可從三個方面對其進行改進以適應不平衡數據的學習,這三個方面分別是:決策閾值的選擇方面、分裂標準的選擇方面、剪枝方面。

  • 從貝葉斯風險理論出發

把代價敏感學習看成是分類結果的一種后處理,按照傳統方法學習到一個模型,以實現損失最小為目標對結果進行調整,優化公式為圖片關鍵詞圖片關鍵詞。此方法的優點在于它可以不依賴所用具體的分類器,但是缺點也很明顯它要求分類器輸出值為概率。

  • 從預處理的角度出發

將代價用于權重的調整,使得分類器滿足代價敏感的特性。其代表的算法是基于代價敏感的AdaCost算法。

04
小樣本、不均衡樣本案例實戰

浩鯨科技算法團隊在支撐某省份權益產品“任我選”潛客挖掘模型專題時,也同樣遇到了小樣本+樣本不均衡的問題。

需求背景

“任我選”潛客挖掘模型的目的是通過用戶基本信息、行為數據,以及用戶是否訂購任我選視頻會員的標簽數據,利用分類算法構建訓練模型,預測用戶是否會訂購任我選視頻會員,挖掘潛在的目標用戶,降低營銷成本,提升營銷效果。

數據說明

獲取全量用戶特征數據寬表,共計400多萬。其中,只有5萬用戶是任我選視頻會員用戶,占比約為1.24%,除建模標簽字段外,總共有128個輸入字段。為了方便進行分類處理,將這些輸入字段歸為靜態數據、動態數據、標識數據3類。

靜態數據,即用戶的基本信息,如性別、年齡、入網時長、歸屬地市等。


動態數據,指用戶的行為數據,如使用習慣、消費行為等。


標識數據,如“是否開通家庭網”、“是否當月訂購‘和彩云’”等。


模型構建

由于未訂購任我選視頻會員的用戶量遠大于有訂購的用戶量,即負樣本量遠大于正樣本量,屬于典型的正負樣本比例不均衡任務。在建模過程中,需要考慮以下四個要點:
1. 是否需要對不均衡樣本數據做均衡處理?
2. 是否需要選用適于不均衡樣本的特定算法?
3. 采取怎樣的樣本比例效果最好?
4. 模型參數如何選擇?

  • 對比數據增強對算法效果的影響


分別嘗試無數據增強處理、SMOTE、SMOTE+TomekLinks、SMOTE+enn樣本四種采樣策略,SVM、XGBoost、AdaCost四種分類算法,構建二分類模型。隨機抽取1223100條樣本數據進行效果驗證,對比記錄如下表所示。

圖片關鍵詞

由上表可看出:

數據采樣方面,對比未做任何處理的訓練集,經過數據增強的訓練集建模效果提升很大。與只進行過采樣(SMOTE)的訓練集進行對比,進一步剔除部分干擾樣本(SMOTE+TomekLinks)后的訓練集模型泛化能力亦有所提升。


模型選擇方面,基礎機器學習算法SVM學習能力不足,分類效果不佳。XGBoost算法雖然能得出較高的精確率,但其在選擇正樣本時較為謹慎,導致召回率過低,同樣亦不適用于小樣本訓練。AdaCost是基于代價敏感學習的boosting算法,在小樣本不平衡數據集中有較好的效果。


  • 對比樣本比例對算法效果的影響


使用SMOTE+TomekLinks策略,分別嘗試1:5、1:2、1:1三種采樣比例構建AdaCost模型,驗證條件不變,對比記錄如下表所示。

圖片關鍵詞

由上表可看出:

樣本比例方面,當生成的少數類較少,模型從少數類樣本中學不到足夠多的信息;若生成的樣本過多,會導致生成樣本把原始樣本信息覆蓋。

綜合來看,當過采樣生成樣本比例為1:2時,F1得分最高。

  • 對比關鍵超參對算法效果的影響


代價敏感學習主要考慮的是在分類問題中,不同類別樣本在分類錯誤時導致不同的誤分類成本。AdaCost在AdaBoost算法的基礎上進行改進:對于代價高的誤分類樣本(本研究中的正樣本),在AdaBoost調整系數的基礎上再乘以一個代價系數,作為權重的更新。下表記錄了AdaCost在不同代價系數中的模型效果。

圖片關鍵詞

由上表可看出:

模型超參方面,代價系數增大,代表著誤殺成本更高,模型傾向于把更多的樣本分類為正樣本(召回率提高),但是精確率會隨之有所下降,模型使用者可以根據需求控制模型的效果。

綜合來看,當代價系數取值在1.75時F1評分最高,模型效果最佳。

結論

數據采樣方面,對比未做任何處理的訓練集,經過數據增強的訓練集建模效果提升很大。增加有用的樣本,使得模型從樣本中學習到更多的信息,SMOTE過采樣算法能增加樣本數量,TomekLinks等欠采樣的思想可以減少多余樣本對模型的干擾。

模型選擇方面,基于代價敏感學習的AdaCost算法在小樣本不平衡數據集中較好的效果。

樣本比例方面,當生成的少數類較少,模型從少數類樣本中學不到足夠多的信息;若生成的樣本過多,會導致生成樣本把原始樣本信息覆蓋。合理的采樣比例1:2,更適合本業務場景。

模型超參方面,代價系數增大,召回率提高,但是精確率會隨之有所下降。綜合來看,當代價系數取值在1.75時F1評分最高,模型效果最佳。

官方微信公眾號

浩鯨云計算科技股份有限公司 版權所有 2003-2023

蘇ICP備10224443號-6       蘇公網安備 32011402011374號

亚洲精品免费视频_热99re6久精品国产首页青柠_精品国产专区91在线_亚洲美洲欧洲偷拍片区