非平衡資料集的機器學習常用處理方法
定義:不平衡資料集:在分類等問題中,正負樣本,或者各個類別的樣本數目不一致。
例子:在人臉檢測中,比如訓練庫有10萬張人臉影象,其中9萬沒有包含人臉,1萬包含人臉,這個資料集就是典型的不平衡資料集。
直觀的影響就是,用這些不平衡的資料訓練出來的模型,其預測結果偏向於訓練資料中資料比較多的那一類,在人臉檢測的例子中,就是檢測器的檢測結果大部分都偏向於沒有檢測到人臉影象。
另外一個不平衡資料集,就是信用卡欺詐交易,如果平均的抽取資料,則大部分的資料都是非欺詐交易,只有非常少的部分資料是欺詐交易
影響:不平衡的資料集上做訓練和測試,其得到的準確率是虛高的,比如在不平衡資料中,正負樣本的比例為9:1時,當它的精度為90%時,我們很有理由懷疑它將所有的類別都判斷為資料多的那一類。
解決方法:8種
1.收集更多的資料:好處:更夠揭露資料類別的本質差別,增加樣本少的數目以便後面的資料重取樣。
2.嘗試改變效能評價標準:
當資料不平衡時,準確度已經失去了它原有的意義,
可以參考的度量標準有:1> 混淆矩陣CM 2>精度 3>召回率 4>F1 分數(權衡精度和召回率);5.Kappa 6,ROC曲線
3.重取樣資料:
1,拷貝一部分樣本偏少的資料多分,已達到平衡(過取樣);
2,刪除一部分樣本偏多的資料,以使得達到平衡(欠取樣);
在實際中,過取樣和欠取樣都會使用的。
在測試中,如果樣本總數比較多,可以用欠取樣的資料進行測試,如果樣本總數比較少,可以用過取樣的資料進行測試;另外應該測試隨機取樣的資料和非隨機取樣的資料,同時,測試不同比例正負樣本的資料。
4.生成合成資料:
最簡單的是,隨機取樣樣本數目比較少的屬性,
另外一個比較出名的方法為:SMOTE:它是一種過取樣的方法,它從樣本比較少的類別中建立新的樣本例項,一般,它從相近的幾個樣本中,隨機的擾動一個特徵,
5.使用不同的演算法:
不要試圖用一個方法解所有的問題,嘗試一些其他不同的方法,比如決策樹一般在不平衡資料集上表現的比較的好。
6.嘗試懲罰模型:
意思就是新增新的懲罰項到cost函式中,以使得小樣本的類別被判斷錯誤的cost更大,迫使模型重視小樣本的資料。
比如:帶懲罰項的SVM
7.使用不同的視角:
不平衡的資料集,有專門的鄰域和演算法做這個,可以參考他們的做法和術語。
比如:異常檢測。
8.嘗試新的改進:
比如:1.把樣本比較多的類別,分解為一些更多的小類別,比如:原始我們想區分數字0和其它數字這二分類問題,我們可以把其它數字在分為9類,變成0–9的分類問題;
原文:http://blog.csdn.net/chenriwei2/article/details/49227205
相關文章
- 6種方式處理機器學習中不平衡的資料集 - svpino機器學習
- 機器學習:處理不平衡資料的5個重要技術機器學習
- 機器學習中如何處理不平衡資料(imbalanced data)?機器學習
- 33個機器學習常用資料集機器學習
- 分散式機器學習常用資料集分散式機器學習
- sklearn中常用資料預處理方法
- 用R處理不平衡的資料
- [譯]如何處理機器學習中的不平衡類別機器學習
- 機器學習中資料缺失的處理及建模方法機器學習
- 機器學習一:資料預處理機器學習
- 一文教你如何處理不平衡資料集(附程式碼)
- 機器學習筆記---資料預處理機器學習筆記
- 資料清洗處理-常用操作
- 大資料常用處理框架大資料框架
- JavaScript常用的字串處理方法JavaScript字串
- 機器學習:探索資料和資料預處理機器學習
- 機器學習導圖系列(1):資料處理機器學習
- UCI資料集詳解及其資料處理(附148個資料集及處理程式碼)
- 影像處理開源資料集
- js中我最常用的幾種遍歷處理資料的方法梳理JS
- 處理恢復資料方法
- 影像資料不足時的處理方法
- 不平衡樣本的處理
- 機器學習 第2篇:資料預處理(缺失值)機器學習
- 誤刪資料庫資料檔案的處理方法資料庫
- pandas 資料處理 一些常用操作
- 資料預處理方法彙總
- 機器學習中資料處理與視覺化的python、numpy等常用函式機器學習視覺化Python函式
- 小程式處理大量資料列表的方法
- informix資料庫頁故障的處理方法ORM資料庫
- 機器學習 第3篇:資料預處理(使用插補法處理缺失值)機器學習
- NUS-WIDE資料集預處理IDE
- 非易失性儲存器平衡方法
- 機器學習之資料集的劃分機器學習
- ORACLE資料庫壞塊的處理 (處理無物件壞快的方法)Oracle資料庫物件
- 【轉】shell指令碼處理字串的常用方法指令碼字串
- Oracle 排序中常用的NULL值處理方法Oracle排序Null
- 關於java處理不同資料庫字符集的資料同步Java資料庫