在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 ValueError: invalid literal for int() with base 10 实用解决方法
Jun 21 Python
Python 模拟登陆的两种实现方法
Aug 10 Python
学习python中matplotlib绘图设置坐标轴刻度、文本
Feb 07 Python
PyQt5每天必学之带有标签的复选框
Apr 19 Python
ubuntu17.4下为python和python3装上pip的方法
Jun 12 Python
Django工程的分层结构详解
Jul 18 Python
使用pandas读取文件的实现
Jul 31 Python
JupyterNotebook设置Python环境的方法步骤
Dec 03 Python
numpy ndarray 取出满足特定条件的某些行实例
Dec 05 Python
Python气泡提示与标签的实现
Apr 01 Python
Python Tkinter图形工具使用方法及实例解析
Jun 15 Python
matplotlib subplot绘制多个子图的方法示例
Jul 28 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
PHP开发框架总结收藏
2008/04/24 PHP
php 多个submit提交表单 处理方法
2009/07/07 PHP
php ci框架验证码实例分析
2013/06/26 PHP
PHP小技巧之JS和CSS优化工具Minify的使用方法
2014/05/19 PHP
destoon实现调用图文新闻的方法
2014/08/21 PHP
php计算数组相同值出现次数的代码(array_count_values)
2015/01/20 PHP
网页里控制图片大小的相关代码
2006/06/25 Javascript
在JavaScript中实现命名空间
2006/11/23 Javascript
JavaScript 变量命名规则
2009/09/23 Javascript
基于jQuery实现自动轮播旋转木马特效
2015/11/02 Javascript
jquery解析json格式数据的方法(对象、字符串)
2015/11/24 Javascript
jQuery Ajax Post 回调函数不执行问题的解决方法
2016/08/15 Javascript
AngularJS监听ng-repeat渲染完成的方法
2018/03/20 Javascript
vue单页应用的内存泄露定位和修复问题小结
2019/08/02 Javascript
layui use 定义js外部引用函数的方法
2019/09/26 Javascript
vue点击自增和求和的实例代码
2019/11/06 Javascript
JS对象属性的检测与获取操作实例分析
2020/03/17 Javascript
python文件写入实例分析
2015/04/08 Python
python对指定目录下文件进行批量重命名的方法
2015/04/18 Python
python实现ping的方法
2015/07/06 Python
利用Django内置的认证视图实现用户密码重置功能详解
2017/11/24 Python
Python实现的栈(Stack)
2018/01/26 Python
Python random模块制作简易的四位数验证码
2020/02/01 Python
Django静态文件加载失败解决方案
2020/08/26 Python
Python 微信公众号文章爬取的示例代码
2020/11/30 Python
html5开发三八女王节表白神器
2018/03/07 HTML / CSS
MAC Cosmetics巴西官方网站:M·A·C彩妆
2019/04/18 全球购物
阿里巴巴美国:Alibaba美国
2019/11/24 全球购物
ShellScript面试题一则-ShellScript编程
2014/06/24 面试题
投资协议书范本
2014/04/21 职场文书
小学班级特色活动方案
2014/08/31 职场文书
行政执法队伍作风整顿剖析材料
2014/10/11 职场文书
私用公车造成事故检讨书
2014/11/16 职场文书
房屋授权无偿使用证明
2014/11/29 职场文书
2015年除四害工作总结
2015/07/23 职场文书
2016年安全月活动总结
2016/04/06 职场文书