在pytorch 中计算精度、回归率、F1 score等指标的实例


Posted in Python onJanuary 18, 2020

pytorch中训练完网络后,需要对学习的结果进行测试。官网上例程用的方法统统都是正确率,使用的是torch.eq()这个函数。

但是为了更精细的评价结果,我们还需要计算其他各个指标。在把官网API翻了一遍之后发现并没有用于计算TP,TN,FP,FN的函数。。。

在动了无数歪脑筋之后,心想pytorch完全支持numpy,那能不能直接进行判断,试了一下果然可以,上代码:

# TP predict 和 label 同时为1
TP += ((pred_choice == 1) & (target.data == 1)).cpu().sum()
# TN predict 和 label 同时为0
TN += ((pred_choice == 0) & (target.data == 0)).cpu().sum()
# FN predict 0 label 1
FN += ((pred_choice == 0) & (target.data == 1)).cpu().sum()
# FP predict 1 label 0
FP += ((pred_choice == 1) & (target.data == 0)).cpu().sum()

p = TP / (TP + FP)
r = TP / (TP + FN)
F1 = 2 * r * p / (r + p)
acc = (TP + TN) / (TP + TN + FP + FN

这样就能看到各个指标了。

因为target是Variable所以需要用target.data取到对应的tensor,又因为是在gpu上算的,需要用 .cpu() 移到cpu上。

因为这是一个batch的统计,所以需要用+=累计出整个epoch的统计。当然,在epoch开始之前需要清零

以上这篇在pytorch 中计算精度、回归率、F1 score等指标的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之深入变量和引用对象
Sep 24 Python
Python导出数据到Excel可读取的CSV文件的方法
May 12 Python
Python中动态创建类实例的方法
Mar 24 Python
TensorFlow实现AutoEncoder自编码器
Mar 09 Python
python删除字符串中指定字符的方法
Aug 13 Python
pygame实现雷电游戏雏形开发
Nov 20 Python
Django之模板层的实现代码
Sep 09 Python
在django admin详情表单显示中添加自定义控件的实现
Mar 11 Python
对Keras中predict()方法和predict_classes()方法的区别说明
Jun 09 Python
idea2020手动安装python插件的实现方法
Jul 17 Python
python用opencv 图像傅里叶变换
Jan 04 Python
Pandas直接读取sql脚本的方法
Jan 21 Python
Python中实现输入超时及如何通过变量获取变量名
Jan 18 #Python
Pytorch 计算误判率,计算准确率,计算召回率的例子
Jan 18 #Python
python:目标检测模型预测准确度计算方式(基于IoU)
Jan 18 #Python
Python实现计算长方形面积(带参数函数demo)
Jan 18 #Python
python实现的Iou与Giou代码
Jan 18 #Python
Python 简单计算要求形状面积的实例
Jan 18 #Python
python实现用类读取文件数据并计算矩形面积
Jan 18 #Python
You might like
Windows2003 下 MySQL 数据库每天自动备份
2006/12/21 PHP
php URL编码解码函数代码
2009/03/10 PHP
php防攻击代码升级版
2010/12/29 PHP
js下用gb2312编码解码实现方法
2009/12/31 Javascript
Google排名中的10个最著名的 JavaScript库
2010/04/27 Javascript
jQuery trigger()方法用法介绍
2015/01/13 Javascript
javascript设计模式--策略模式之输入验证
2015/11/27 Javascript
Jquery easyui开启行编辑模式增删改操作
2016/01/14 Javascript
谈一谈JS消息机制和事件机制的理解
2016/04/14 Javascript
AngularJS使用ng-options指令实现下拉框
2016/08/23 Javascript
jQuery版AJAX简易封装代码
2016/09/14 Javascript
利用Vue.js实现checkbox的全选反选效果
2017/01/18 Javascript
JavaScript中使用参数个数实现重载功能
2017/09/01 Javascript
Vue导出json数据到Excel电子表格的示例
2017/12/04 Javascript
基于angular6.0实现的一个组件懒加载功能示例
2018/04/12 Javascript
JavaScript树的深度优先遍历和广度优先遍历算法示例
2018/07/30 Javascript
Python返回真假值(True or False)小技巧
2015/04/10 Python
Python中用函数作为返回值和实现闭包的教程
2015/04/27 Python
Python采用Django制作简易的知乎日报API
2016/08/03 Python
python文件特定行插入和替换实例详解
2017/07/12 Python
关于Python核心框架tornado的异步协程的2种方法详解
2019/08/28 Python
tensorflow使用CNN分析mnist手写体数字数据集
2020/06/17 Python
python获取天气接口给指定微信好友发天气预报
2020/12/28 Python
如何给HTML标签中的文本设置修饰线
2019/11/18 HTML / CSS
在家更换处方镜片:Lensabl
2019/05/01 全球购物
澳大利亚在线奢侈品时尚零售平台:Azura Runway
2021/01/13 全球购物
YBF Beauty官网:美丽挚友,美国知名彩妆品牌
2020/11/22 全球购物
介绍一下木马病毒的种类
2015/07/26 面试题
教导处工作制度
2014/01/18 职场文书
《猴子种树》教学反思
2014/02/14 职场文书
经贸专业毕业生求职信范文
2014/05/01 职场文书
护理医院见习报告
2014/11/03 职场文书
无罪辩护词范文
2015/05/21 职场文书
2016见义勇为事迹材料汇总
2016/03/01 职场文书
详解python网络进程
2021/06/15 Python
用python基于appium模块开发一个自动收取能量的小助手
2021/09/25 Python