99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀非平衡數(shù)據(jù)集的機器學習常用處理方法
非平衡數(shù)據(jù)集的機器學習常用處理方法
2018-03-26
收藏

非平衡數(shù)據(jù)集的機器學習常用處理方法

定義:不平衡數(shù)據(jù)集:在分類等問題中,正負樣本,或者各個類別的樣本數(shù)目不一致。

例子:在人臉檢測中,比如訓練庫有10萬張人臉圖像,其中9萬沒有包含人臉,1萬包含人臉,這個數(shù)據(jù)集就是典型的不平衡數(shù)據(jù)集。
直觀的影響就是,用這些不平衡的數(shù)據(jù)訓練出來的模型,其預測結果偏向于訓練數(shù)據(jù)中數(shù)據(jù)比較多的那一類,在人臉檢測的例子中,就是檢測器的檢測結果大部分都偏向于沒有檢測到人臉圖像。

另外一個不平衡數(shù)據(jù)集,就是信用卡欺詐交易,如果平均的抽取數(shù)據(jù),則大部分的數(shù)據(jù)都是非欺詐交易,只有非常少的部分數(shù)據(jù)是欺詐交易

影響:不平衡的數(shù)據(jù)集上做訓練和測試,其得到的準確率是虛高的,比如在不平衡數(shù)據(jù)中,正負樣本的比例為9:1時,當它的精度為90%時,我們很有理由懷疑它將所有的類別都判斷為數(shù)據(jù)多的那一類。

解決方法:8種

1.收集更多的數(shù)據(jù): 好處:更夠揭露數(shù)據(jù)類別的本質差別,增加樣本少的數(shù)目以便后面的數(shù)據(jù)重采樣。

2.嘗試改變性能評價標準:
當數(shù)據(jù)不平衡時,準確度已經(jīng)失去了它原有的意義,
可以參考的度量標準有:1> 混淆矩陣CM 2>精度 3>召回率 4>F1 分數(shù)(權衡精度和召回率);5.Kappa 6,ROC曲線

3.重采樣數(shù)據(jù):
1,拷貝一部分樣本偏少的數(shù)據(jù)多分,已達到平衡(過采樣);
2,刪除一部分樣本偏多的數(shù)據(jù),以使得達到平衡(欠采樣);
在實際中,過采樣和欠采樣都會使用的。
在測試中,如果樣本總數(shù)比較多,可以用欠采樣的數(shù)據(jù)進行測試,如果樣本總數(shù)比較少,可以用過采樣的數(shù)據(jù)進行測試;另外應該測試隨機采樣的數(shù)據(jù)和非隨機采樣的數(shù)據(jù),同時,測試不同比例正負樣本的數(shù)據(jù)。

4.生成合成數(shù)據(jù):
最簡單的是,隨機采樣樣本數(shù)目比較少的屬性,
另外一個比較出名的方法為:SMOTE:它是一種過采樣的方法,它從樣本比較少的類別中創(chuàng)建新的樣本實例,一般,它從相近的幾個樣本中,隨機的擾動一個特征,

5.使用不同的算法:
不要試圖用一個方法解所有的問題,嘗試一些其他不同的方法,比如決策樹一般在不平衡數(shù)據(jù)集上表現(xiàn)的比較的好。

6.嘗試懲罰模型:
意思就是添加新的懲罰項到cost函數(shù)中,以使得小樣本的類別被判斷錯誤的cost更大,迫使模型重視小樣本的數(shù)據(jù)。
比如:帶懲罰項的SVM

7.使用不同的視角:
不平衡的數(shù)據(jù)集,有專門的鄰域和算法做這個,可以參考他們的做法和術語。
比如:異常檢測。

8.嘗試新的改進:
比如:1.把樣本比較多的類別,分解為一些更多的小類別,比如:原始我們想?yún)^(qū)分數(shù)字0和其它數(shù)字這二分類問題,我們可以把其它數(shù)字在分為9類,變成0–9的分類問題;


數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師考試動態(tài)
數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調,回調的第一個參數(shù)驗證碼對象,之后可以使用它調用相應的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }