Pytorch 計(jì)算誤判率,計(jì)算準(zhǔn)確率,計(jì)算召回率的例子
無論是官方文檔還是各位大神的論文或搭建的網(wǎng)絡(luò)很多都是計(jì)算準(zhǔn)確率,很少有計(jì)算誤判率,
下面就說說怎么計(jì)算準(zhǔn)確率以及誤判率、召回率等指標(biāo)
1.計(jì)算正確率
獲取每批次的預(yù)判正確個(gè)數(shù)
train_correct = (pred == batch_y.squeeze(1)).sum()
該語句的意思是 預(yù)測的標(biāo)簽與實(shí)際標(biāo)簽相等的總數(shù)
獲取訓(xùn)練集總的預(yù)判正確個(gè)數(shù)
train_acc += train_correct.data[0] #用來計(jì)算正確率
準(zhǔn)確率 : train_acc / (len(train_data))
2.誤判率
舉例:當(dāng)你是二分類時(shí),你需要計(jì)算 原標(biāo)簽為1,但預(yù)測為 0 ,以及 原標(biāo)簽為0,預(yù)測為1的 誤判率
誤判率又分為:
CTW : correct to wrong 標(biāo)簽為正確的,預(yù)測為錯(cuò)誤的
WTC: wrong to correct 標(biāo)簽為錯(cuò)誤的,預(yù)測為正確的
zes=Variable(torch.zeros(lasize).type(torch.LongTensor))#全0變量
ons=Variable(torch.ones(lasize).type(torch.LongTensor))#全1變量
train_correct01 = ((pred==zes)&(batch_y.squeeze(1)==ons)).sum() #原標(biāo)簽為1,預(yù)測為 0 的總數(shù)
train_correct10 = ((pred==ons)&(batch_y.squeeze(1)==zes)).sum() #原標(biāo)簽為0,預(yù)測為1 的總數(shù)
train_correct11 = ((pred_y==ons)&(batch_y.squeeze(1)==ons)).sum()
train_correct00 = ((pred_y==zes)&(batch_y.squeeze(1)==zes)).sum()
獲取訓(xùn)練集總的誤判個(gè)數(shù)
FN += train_correct01.data[0]
FP += train_correct10.data[0]
TP += train_correct11.data[0]
TN += train_correct00.data[0]
誤判率 :
(FN+FP)/(len(train_data)) #CTW+WTC
3.精準(zhǔn)率和召回率
精準(zhǔn)率: P = TP/ (TP+FP)
召回率: R = TP/ (TP+FN)
4.真正例率和假正例率
真正例率:TPR = TP/ (TP+FN)
假正例率:FPR =FP/ (FP+TN)
最后,當(dāng)你要計(jì)算多分類的誤判率時(shí),只需在二分類的基礎(chǔ)上類推即可
以上這篇Pytorch 計(jì)算誤判率,計(jì)算準(zhǔn)確率,計(jì)算召回率的例子就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python attrs提高面向?qū)ο缶幊绦试敿?xì)
Python是面向?qū)ο蟮恼Z言,一般情況下使用面向?qū)ο缶幊虝?huì)使得開發(fā)效率更高,軟件質(zhì)量更好,并且代碼更易于擴(kuò)展,可讀性和可維護(hù)性也更高,但是Python的類寫起來是真的累,這是可以在創(chuàng)建類的時(shí)候自動(dòng)添加上attrs模塊,下面文章我們就來介紹這個(gè)東西,需要的朋友可參考一下2021-09-09Python實(shí)現(xiàn)深度遍歷和廣度遍歷的方法
今天小編就為大家分享一篇Python實(shí)現(xiàn)深度遍歷和廣度遍歷的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01基于django和dropzone.js實(shí)現(xiàn)上傳文件
這篇文章主要介紹了基于django和dropzone.js實(shí)現(xiàn)上傳文件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-11-11Python實(shí)現(xiàn)日志實(shí)時(shí)監(jiān)測的示例詳解
觀察者模式:是一種行為型設(shè)計(jì)模式。主要關(guān)注的是對象的責(zé)任,允許你定義一種訂閱機(jī)制,可在對象事件發(fā)生時(shí)通知多個(gè)"觀察"該對象的其他對象。本文將利用觀察者模式實(shí)現(xiàn)日志實(shí)時(shí)監(jiān)測,需要的可以參考一下2022-04-04python opencv3實(shí)現(xiàn)人臉識別(windows)
這篇文章主要為大家詳細(xì)介紹了python opencv3實(shí)現(xiàn)人臉識別程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05python GUI庫圖形界面開發(fā)之PyQt5開發(fā)環(huán)境配置與基礎(chǔ)使用
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5開發(fā)環(huán)境配置與基礎(chǔ)使用,需要的朋友可以參考下2020-02-02Jupyter Notebook切換conda虛擬環(huán)境的實(shí)現(xiàn)步驟
本文主要介紹了Jupyter Notebook切換conda虛擬環(huán)境的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07機(jī)器學(xué)習(xí)Erdos?Renyi隨機(jī)圖生成方法及特性
這篇文章主要為大家介紹了機(jī)器學(xué)習(xí)Erdos?Renyi隨機(jī)圖生成方法及特性詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05pycharm中如何自定義設(shè)置通過“ctrl+滾輪”進(jìn)行放大和縮小實(shí)現(xiàn)方法
這篇文章主要介紹了pycharm中如何自定義設(shè)置通過“ctrl+滾輪”進(jìn)行放大和縮小實(shí)現(xiàn)方法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-09-09Django celery實(shí)現(xiàn)異步任務(wù)操作,并在后臺(tái)運(yùn)行(守護(hù)進(jìn)程)
這篇文章主要介紹了Django celery實(shí)現(xiàn)異步任務(wù)操作,并在后臺(tái)運(yùn)行(守護(hù)進(jìn)程),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-03-03