日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > pytorch >内容正文

pytorch

【深度学习】一文深度解读模型评估方法

發(fā)布時間:2025/3/12 pytorch 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【深度学习】一文深度解读模型评估方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

我們訓(xùn)練學(xué)習好的模型,通過客觀地評估模型性能,才能更好實際運用決策。模型評估主要有:預(yù)測誤差情況、擬合程度、模型穩(wěn)定性等方面。還有一些場景對于模型預(yù)測速度(吞吐量)、計算資源耗用量、可解釋性等也會有要求,這里不做展開。

一、評估預(yù)測誤差情況

機器學(xué)習模型預(yù)測誤差情況通常是評估的重點,它不僅僅是學(xué)習過程中對訓(xùn)練數(shù)據(jù)有良好的學(xué)習預(yù)測能力,根本上在于要對新數(shù)據(jù)能有很好的預(yù)測能力(泛化能力),所以我們常通過測試集的指標表現(xiàn)評估模型的泛化性能。

評估模型的預(yù)測誤差常用損失函數(shù)作為指標來判斷,如回歸預(yù)測的均方損失。但除此之外,用損失函數(shù)作為評估指標有一些局限性且并不直觀(如像分類任務(wù)的評估還常用f1-score,可以直接展現(xiàn)各種類別正確分類情況)。在此,我們主要對回歸和分類預(yù)測任務(wù)分別解讀其常用誤差評估指標。

1.1 回歸任務(wù)的誤差評估指標

評估回歸模型的誤差,比較簡單的思路,可以對真實值與預(yù)測值的差異“取正”后求平均。如下:

  • 均方誤差(MSE) 均方誤差(MSE)為實際值與預(yù)測值的差值取平方求平均。其中y是實際值,y^ 是預(yù)測值

  • 均方根誤差(RMSE)

均方根誤差(RMSE)是對MSE的開根號

  • 平均絕對誤差(MAE)

平均絕對誤差(MAE)是預(yù)測值與真實值之間的誤差取絕對值的平均

由于MAE用到了絕對值(不可導(dǎo)),很少用在訓(xùn)練的損失函數(shù)。用于最終評估模型還是可以的。

  • 均方根對數(shù)誤差(RMSLE)

上述指標的差異對比:

① 異常值敏感性:MAE也就是真實預(yù)測誤差,而RMSE,MSE都有加平方,放大了較大誤差樣本的影響(對于異常值更敏感),如果遇到個別偏離程度非常大的離群點時,即便數(shù)量很少,也會讓這兩個指標變得很差。減少異常點的影響,可以采用RMSLE,它關(guān)注的是預(yù)測誤差的比例,即便存在離群點,也可以降低這些離群點的影響。

② 量綱差異:不同于MSE做了平方,RMSE(平方后又開根號)及MAE對于原量綱是不變,會更直觀些。而RMSE 與 MAE 的盡管量綱相同,RMSE比MAE實際會大一些。這是因為RMSE是先對誤差進行平方的累加后再開方,也放大了誤差之間的差距。

③ 跨任務(wù)的量綱差異問題:實際運用中,像RMSE、MAE是有個問題的,不同任務(wù)的量綱是會變的,比如我們預(yù)測股價誤差是10元,預(yù)測房價誤差是1w,跨越了不同任務(wù)我們就沒法評估哪個模型效果更好。接下來介紹,R2分數(shù)指標,它對上面的誤差進一步做了歸一化,就有了統(tǒng)一的評估標準

  • R^2分數(shù)

R^2分數(shù)常用于評估線性回歸擬合效果時,其定義如下:

R^2分數(shù)可以視為我們模型的均方誤差除以用實際值平均值作為預(yù)測值時的均方誤差(像baseline模型)的比值。這樣,R^2分數(shù)范圍被歸約到了[0,1],當其值為0時,意味著我們的模型沒有什么效果,和baseline模型那樣猜的效果一致。當值為1,模型效果最好,意味著模型沒有任何誤差。

補充一點,當R^2值為0時且模型為線性回歸時,也可以間接說明特征與標簽沒有線性關(guān)系。這也是常用的共線性指標VIF的原理,分別嘗試以各個特征作為標簽,用其他特征去學(xué)習擬合,得到線性模型R^2值,算出VIF。VIF為1即特征之間完全沒有共線性(共線性對線性模型穩(wěn)定性及可解釋性會有影響,工程上常用VIF<10作為閾值)。

1.2 分類模型的誤差評估指標

對于分類模型的分類誤差,可以用損失函數(shù)(如交叉熵。在分類模型中交叉熵比MSE更合適,簡單來說,MSE無差別得關(guān)注全部類別上預(yù)測概率和真實概率的差。交叉熵關(guān)注的是正確類別的預(yù)測概率。)來評估:

但損失函數(shù)評估分類效果不太直觀,所以,分類任務(wù)的評估還常用f1-score、precision、recall,可以直接展現(xiàn)各種類別正確分類情況。

  • precision、recall、f1-score、accuracy

準確率(accuracy)。即所有的預(yù)測正確(TP+TN)的占總數(shù)(TP+FP+TN+FN)的比例;

查準率P(precision):是指分類器預(yù)測為Positive的正確樣本(TP)的個數(shù)占所有預(yù)測為Positive樣本個數(shù)(TP+FP)的比例;

查全率R(recall):是指分類器預(yù)測為Positive的正確樣本(TP)的個數(shù)占所有的實際為Positive樣本個數(shù)(TP+FN)的比例。

F1-score是查準率P、查全率R的調(diào)和平均:

上述指標的總結(jié):

① 綜合各類別的準確度:準確率accuracy對于分類錯誤情況的描述是比較直接的,但是對于正負例不平衡的情況下,accuracy評價基本沒有參考價值,比如 欺詐用戶識別的分類場景,有950個正常用戶樣本(負例),50個異常用戶(正例),模型把樣本都預(yù)測為正常用戶樣本,準確率是非常好的達到95%。但實際上是分類效果很差。accuracy無法表述出少數(shù)類別錯誤分類的情況,所以更為常用的是F1-score,比較全面地考量到了查準率與查全率。

② 權(quán)衡查準率與查全率:查準率與查全率常常是矛盾的一對指標,有時要結(jié)合業(yè)務(wù)有所偏倚低地選擇“更準”或者“更全”(比如在欺詐用戶的場景里面,通常偏向于對正例識別更多“更全”,盡管會有更高的誤判。“寧愿錯殺一百,也不放走一個”),這時可以根據(jù)不同劃分閾值下的presion與recall曲線(P-R曲線),做出兩者權(quán)衡

  • kappa值

    kappa是一個用于一致性檢驗的指標(對于分類問題,所謂一致性就是模型預(yù)測結(jié)果和實際分類結(jié)果是否一致)。kappa值計算也是基于混淆矩陣的,它一種能夠懲罰模型預(yù)測“偏向性”的指標,根據(jù)kappa的計算公式,越不平衡的混淆矩陣(即不同類別預(yù)測準度的差異大),kappa值就越低。

其公式含義可解釋為總準確度對比隨機準確度的提升 與 完美模型對比隨機準確度的提升的比值:

kappa取值為-1到1之間,通常大于0,可分為五組來表示不同級別的一致性:0.0~0.20極低的一致性(slight)、0.21~0.40一般的一致性(fair)、0.41~0.60 中等的一致性(moderate)、0.61~0.80 高度的一致性(substantial) 和 0.81~1幾乎完全一致(almost perfect)。

  • ROC曲線、AUC

    ROC曲線(Receiver operating characteristic curve),其實是多個混淆矩陣的綜合結(jié)果。如果在上述模型中我們沒有固定閾值,而是將模型預(yù)測結(jié)果從高到低排序,將每個概率值依次作為動態(tài)閾值,那么就有多個混淆矩陣。

對于每個混淆矩陣,我們計算兩個指標TPR(True positive rate)和FPR(False positive rate),TPR=TP/(TP+FN)=Recall 即召回率,FPR=FP/(FP+TN),FPR即為實際負樣本中,預(yù)測為正樣本占比。最后,我們以FPR為x軸,TPR為y軸畫圖,就得到了ROC曲線。我們通過求解ROC曲線下的面積,也就是AUC(Area under Curve),AUC可以直觀的評價分類器的好壞,通常介于0.5和1之間,值越大越好。

對AUC指標的分析總結(jié):

  • 由于衡量ROC是“動態(tài)的閾值”,故AUC不依賴分類閾值,擺脫了固定分類閾值看分類效果的局限性。

  • ROC由不同閾值TPR、FPR繪制。更大的ROC面積(AUC)意味著較小的FPR下有更大的TPR,較小的FPR也就是較大的1-FPR = TN/(TN+FP)=TNR,所以AUC其實是TPR(也叫召回率、敏感度)與 TNR(也叫特異度)的綜合考慮。

  • 由混淆矩陣可以看出,AUC的TNR(即1-FPR)、TPR 和樣本的實際好壞占比是無關(guān)的,它們都只關(guān)注相應(yīng)實際類別的識別的全面度。(不像查準率precision是跨越了實際類別間情況做評估)。簡單來說:AUC對樣本的正負比例情況是不敏感,即使正例與負例的比例發(fā)生了很大變化,ROC曲線面積也不會產(chǎn)生大的變化

  • AUC是ROC曲線的面積,其數(shù)值的物理意義是:隨機給定一正一負兩個樣本,將正樣本預(yù)測分值大于負樣本的概率大小。也就是,AUC是區(qū)分能力的“排序性”指標(正樣本高于負樣本的概率分值即可),對具體的判定概率不敏感——忽略了模型的擬合效果,而對于一個優(yōu)秀的模型而言,我們期望的是正負樣本的概率值是差異足夠大的。舉個栗子,模型將所有負樣本預(yù)測為0.49,正樣本預(yù)測為0.51,那這個模型auc即是1(但正負樣本的概率很接近,一有擾動 模型就預(yù)測錯了)。而我們期望模型的預(yù)測好壞的間隔盡量大,如負樣本預(yù)測為0.1以下,正樣本預(yù)測為0.8以上,此時雖然auc一樣,但這樣的模型擬合效果更好,比較有魯棒性。

AUC 對比 F1-score差異

  • AUC不依賴分類閾值,F1-score需指定閾值,不同閾值結(jié)果有差異;

  • 當正負樣本比例變化時,AUC影響不大,F1-score會有比較大影響(因為查準率precision是跨越了實際類別間情況做評估);

  • 兩者有包含召回率(正樣本識別全面度情況)并有兼顧到FP(負樣本誤識別為正樣本情況),都要求了“全”與“準”的均衡。

  • F1-score可以通過閾值靈活地調(diào)節(jié)查全率、查準率不同側(cè)重偏好。而AUC只能給一個籠統(tǒng)的信息。

#?上述指標可以直接調(diào)用?sklearn.metrics from?sklearn.metrics?import?precision_score,?recall_score,?f1_score,?accuracy_score,?roc_curve,?auc,?cohen_kappa_score,mean_squared_error ... yhat?=?model.predict(x)f1_score(y,?yhat)

二、模型擬合程度

對于模型的擬合程度,常用欠擬合、擬合良好、過擬合來表述。通常,擬合良好的模型有更好泛化能力,在未知數(shù)據(jù)(測試集)有更好的效果。

我們可以通過訓(xùn)練及驗證集誤差(如損失函數(shù))情況評估模型的擬合程度。從整體訓(xùn)練過程來看,欠擬合時訓(xùn)練誤差和驗證集誤差均較高,隨著訓(xùn)練時間及模型復(fù)雜度的增加而下降。在到達一個擬合最優(yōu)的臨界點之后,訓(xùn)練誤差下降,驗證集誤差上升,這個時候模型就進入了過擬合區(qū)域。實踐中的欠擬合通常不是問題,可以通過使用強特征及較復(fù)雜的模型提高學(xué)習的準確度。而解決過擬合,即如何減少泛化誤差,提高泛化能力,通常才是優(yōu)化模型效果的重點。對于解決過擬合,常用的方法在于提高數(shù)據(jù)的質(zhì)量、數(shù)量以及采用適當?shù)恼齽t化策略。具體可見系列文章:一文深層解決模型過擬合

三、 模型穩(wěn)定性

如果上線的模型不穩(wěn)定,意味著模型不可控,影響決策的合理性。對于業(yè)務(wù)而言,這就是一種不確定性風險,這是不可接受的(特別對于厭惡風險的風控領(lǐng)域)。

我們通常用群體穩(wěn)定性指標(Population Stability Index,PSI), 衡量未來的(測試集)樣本及模型訓(xùn)練樣本評分的分布比例是否保持一致,以評估模型的穩(wěn)定性。同理,PSI也可以用衡量特征值的分布差異,評估數(shù)據(jù)特征層面的穩(wěn)定性。

PSI計算以訓(xùn)練樣本的模型評分作為穩(wěn)定性的參考點(預(yù)期分數(shù)占比),衡量未來的實際預(yù)測分數(shù)(實際分布占比)的誤差情況。計算公式為 SUM(各分數(shù)段的 (實際占比 - 預(yù)期占比)* ln(實際占比 / 預(yù)期占比) )具體的計算步驟及示例代碼如下:

step1:將預(yù)期數(shù)值分布(開發(fā)數(shù)據(jù)集)進行分箱離散化,統(tǒng)計各個分箱里的樣本占比。

step2: 按相同分箱區(qū)間,對實際分布(測試集)統(tǒng)計各分箱內(nèi)的樣本占比。

step3:計算各分箱內(nèi)的A - E和Ln(A / E),計算index = (實際占比 - 預(yù)期占比)* ln(實際占比 / 預(yù)期占比) 。

step4: 將各分箱的index進行求和,即得到最終的PSI

import?math import?numpy?as?np import?pandas?as?pddef?calculate_psi(base_list,?test_list,?bins=20,?min_sample=10):try:base_df?=?pd.DataFrame(base_list,?columns=['score'])test_df?=?pd.DataFrame(test_list,?columns=['score'])?#?1.去除缺失值后,統(tǒng)計兩個分布的樣本量base_notnull_cnt?=?len(list(base_df['score'].dropna()))test_notnull_cnt?=?len(list(test_df['score'].dropna()))#?空分箱base_null_cnt?=?len(base_df)?-?base_notnull_cnttest_null_cnt?=?len(test_df)?-?test_notnull_cnt#?2.最小分箱數(shù)q_list?=?[]if?type(bins)?==?int:bin_num?=?min(bins,?int(base_notnull_cnt?/?min_sample))q_list?=?[x?/?bin_num?for?x?in?range(1,?bin_num)]break_list?=?[]for?q?in?q_list:bk?=?base_df['score'].quantile(q)break_list.append(bk)break_list?=?sorted(list(set(break_list)))?#?去重復(fù)后排序score_bin_list?=?[-np.inf]?+?break_list?+?[np.inf]else:score_bin_list?=?bins#?4.統(tǒng)計各分箱內(nèi)的樣本量base_cnt_list?=?[base_null_cnt]test_cnt_list?=?[test_null_cnt]bucket_list?=?["MISSING"]for?i?in?range(len(score_bin_list)-1):left??=?round(score_bin_list[i+0],?4)right?=?round(score_bin_list[i+1],?4)bucket_list.append("("?+?str(left)?+?','?+?str(right)?+?']')base_cnt?=?base_df[(base_df.score?>?left)?&?(base_df.score?<=?right)].shape[0]base_cnt_list.append(base_cnt)test_cnt?=?test_df[(test_df.score?>?left)?&?(test_df.score?<=?right)].shape[0]test_cnt_list.append(test_cnt)#?5.匯總統(tǒng)計結(jié)果????stat_df?=?pd.DataFrame({"bucket":?bucket_list,?"base_cnt":?base_cnt_list,?"test_cnt":?test_cnt_list})stat_df['base_dist']?=?stat_df['base_cnt']?/?len(base_df)stat_df['test_dist']?=?stat_df['test_cnt']?/?len(test_df)def?sub_psi(row):#?6.計算PSIbase_list?=?row['base_dist']test_dist?=?row['test_dist']#?處理某分箱內(nèi)樣本量為0的情況if?base_list?==?0?and?test_dist?==?0:return?0elif?base_list?==?0?and?test_dist?>?0:base_list?=?1?/?base_notnull_cnt???elif?base_list?>?0?and?test_dist?==?0:test_dist?=?1?/?test_notnull_cntreturn?(test_dist?-?base_list)?*?np.log(test_dist?/?base_list)stat_df['psi']?=?stat_df.apply(lambda?row:?sub_psi(row),?axis=1)stat_df?=?stat_df[['bucket',?'base_cnt',?'base_dist',?'test_cnt',?'test_dist',?'psi']]psi?=?stat_df['psi'].sum()except:print('error!!!')psi?=?np.nan?stat_df?=?Nonereturn?psi,?stat_df##?也可直接調(diào)用toad包計算psi #?prob_dev模型在訓(xùn)練樣本的評分,prob_test測試樣本的評分 psi?=?toad.metrics.PSI(prob_dev,prob_test)

分析psi指標原理,經(jīng)過公式變形,我們可以發(fā)現(xiàn)psi的含義等同于第一項實際分布(A)與預(yù)期分布(E)的KL散度 + 第二項預(yù)期分布(E)與實際分布(A)之間的KL散度之和,KL散度可以單向(非對稱性指標)地描述信息熵差異,上式更為綜合地描述分布的差異情況。

PSI數(shù)值越小(經(jīng)驗是常以<0.1作為標準),兩個分布之間的差異就越小,代表越穩(wěn)定。PSI值在實際應(yīng)用中的優(yōu)點在于其計算的便捷性,但需要注意的是,PSI的計算受分組數(shù)量及方式、群體樣本量和現(xiàn)實業(yè)務(wù)政策等多重因素影響,尤其是對業(yè)務(wù)變動劇烈的小樣本來說,PSI的值往往超出一般的經(jīng)驗水平,因此需要結(jié)合實際的業(yè)務(wù)和數(shù)據(jù)情況進行具體分析。

(END)

文章首發(fā)公眾號“算法進階”,閱讀原文可訪問文章相關(guān)代碼


往期精彩回顧適合初學(xué)者入門人工智能的路線及資料下載機器學(xué)習及深度學(xué)習筆記等資料打印機器學(xué)習在線手冊深度學(xué)習筆記專輯《統(tǒng)計學(xué)習方法》的代碼復(fù)現(xiàn)專輯 AI基礎(chǔ)下載黃海廣老師《機器學(xué)習課程》視頻課黃海廣老師《機器學(xué)習課程》711頁完整版課件

本站qq群955171419,加入微信群請掃碼:

總結(jié)

以上是生活随笔為你收集整理的【深度学习】一文深度解读模型评估方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一区二区三区中文视频 | 在线色 | 夜夜草导航 | 一本大道东京热无码aⅴ | 韩国伦理片在线看 | 成人无码www在线看免费 | 欧美精品一级在线观看 | 欧美激情国产一区 | 尤物综合网 | 国产99久久九九精品无码免费 | 五月婷婷国产 | 中文无码一区二区三区在线观看 | 国产精品久久AV无码 | 免费激情网址 | 三级男人添奶爽爽爽视频 | 极品另类| 国产av剧情一区二区三区 | 亚洲三级视频 | 精品国产亚洲av麻豆 | 乱亲女h秽乱长久久久 | 在线播放免费av | 播播开心激情网 | 久久久久久久影视 | 国产av一区二区三区精品 | 十八岁世界在线观看高清免费韩剧 | 黄色草逼网站 | 制服丝袜在线视频 | av在线电影网 | 亚洲精品久久久久 | 污视频免费在线观看 | 3o一40一50一6o女人毛片 | 天天做天天爱夜夜爽 | 免费观看国产精品 | 国产精品一二三四 | 日韩在线视频免费播放 | www亚洲成人 | 精久久久久久 | 亚洲图片一区二区三区 | 日本欧美色 | 色哟哟一区二区三区四区 | 国产乱国产乱老熟300部视频 | 91精品999| 欧美在线视频播放 | 国产99久久久 | 波多野结衣中文字幕一区二区 | 成人av图片 | 欧美cccc极品丰满hd | 欧美激情精品久久久久久蜜臀 | 91视频综合 | 欧美30p | 日韩城人网站 | 欧美色图视频在线 | 西方av在线| 久久婷综合 | 日本亚洲国产 | 国产精品无码在线 | 亚洲二区视频 | 一级特级黄色片 | 日韩精品成人一区二区在线 | 99爱99| 亚洲一级无毛 | 国产破处视频 | 欧美人与性动交xxⅹxx | 亚洲国产精品女人久久久 | 欧美激情国产一区 | 中国黄色免费 | 国产成人免费视频 | 国产精品爽爽久久 | 都市激情校园春色 | 人人爱超碰 | 精品国产免费av | 国产美女诱惑 | 成人激情综合 | 中文字幕亚洲专区 | 高清久久久久久 | 欧美xxxx少妇 | 国产情侣一区二区 | 久久久精品一区二区涩爱 | 日韩精品三级 | 亚洲天堂一区二区在线观看 | 成人 黄 色 免费播放 | 日本簧片在线观看 | 日韩精品成人无码专区免费 | 欧美老女人性生活 | 国产精品刺激 | 国产电影免费观看高清完整版视频 | 在线免费观看一区二区 | 亚洲精品www久久久久久 | 伊人午夜 | 国产精品成人免费精品自在线观看 | 青青青在线视频免费观看 | 亚州黄色网址 | 不卡欧美 | 国产人妻精品一区二区三区 | 一级aa毛片 | 天天做天天看 | 9l蝌蚪porny中文自拍 | 黄色小说在线视频 | 操碰在线视频 |