在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 相关文章推荐
Django中ORM表的创建和增删改查方法示例
Nov 15 Python
Python3一行代码实现图片文字识别的示例
Jan 15 Python
单利模式及python实现方式详解
Mar 20 Python
Python迭代器与生成器用法实例分析
Jul 09 Python
Python远程视频监控程序的实例代码
May 05 Python
Python学习笔记之读取文件、OS模块、异常处理、with as语法示例
Jun 04 Python
pyqt5 tablewidget 利用线程动态刷新数据的方法
Jun 17 Python
Python原始套接字编程实例解析
Jan 29 Python
pytorch ImageFolder的覆写实例
Feb 20 Python
Python selenium模拟网页点击爬虫交管12123违章数据
May 26 Python
python中opencv实现图片文本倾斜校正
Jun 11 Python
python 常用的异步框架汇总整理
Jun 18 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一次性删除前台checkbox多选内容的方法
2013/09/22 PHP
PHP之十六个魔术方法详细介绍
2016/11/01 PHP
完美解决php 导出excle的.csv格式的数据时乱码问题
2017/02/18 PHP
用PHP去掉文件头的Unicode签名(BOM)方法
2017/06/22 PHP
javascript引导程序
2008/10/26 Javascript
JavaScript DOM 学习第三章 内容表格
2010/02/19 Javascript
javascript 随机展示头像实现代码
2011/12/06 Javascript
多种方法实现JS动态添加事件
2013/11/01 Javascript
JavaScript基础知识学习笔记
2014/12/02 Javascript
javascript浏览器窗口之间传递数据的方法
2015/01/20 Javascript
Bootstrap布局组件应用实例讲解
2016/02/17 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
Angularjs单选改为多选的开发过程及问题解析
2017/02/17 Javascript
详解如何在Vue2中实现组件props双向绑定
2017/03/29 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
2017/07/12 Javascript
vue实现引入本地json的方法分析
2018/07/12 Javascript
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
Vue cli构建及项目打包以及出现的问题解决
2018/08/27 Javascript
Javascript查看大图功能代码实现
2020/05/07 Javascript
mapboxgl实现带箭头轨迹线的代码
2021/01/04 Javascript
python定时检查启动某个exe程序适合检测exe是否挂了
2013/01/21 Python
django1.11.1 models 数据库同步方法
2018/05/30 Python
Python2实现的图片文本识别功能详解
2018/07/11 Python
python实现指定文件夹下的指定文件移动到指定位置
2018/09/17 Python
python判断输入日期为第几天的实例
2018/11/13 Python
教你一步步利用python实现贪吃蛇游戏
2019/06/27 Python
Python使用sklearn实现的各种回归算法示例
2019/07/04 Python
在Python中利用pickle保存变量的实例
2019/12/30 Python
tensorflow2.0与tensorflow1.0的性能区别介绍
2020/02/07 Python
python实现四人制扑克牌游戏
2020/04/22 Python
学生处主任岗位职责
2013/12/01 职场文书
工作失职检讨书(精华篇)
2014/10/15 职场文书
刑事案件上诉状
2015/05/23 职场文书
2016中秋节广告语
2016/01/28 职场文书
有关保护环境的宣传标语100条
2019/08/07 职场文书
解决sql server 数据库,sa用户被锁定的问题
2021/06/11 SQL Server