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

 更新时间:2020年01月18日 11:20:52   作者:Link2Link  
今天小编就为大家分享一篇在pytorch 中计算精度、回归率、F1 score等指标的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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中的None与NULL用法说明

    python中的None与NULL用法说明

    这篇文章主要介绍了python中的None与NULL用法说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • Pytorch技法之继承Subset类完成自定义数据拆分

    Pytorch技法之继承Subset类完成自定义数据拆分

    这篇文章主要介绍了Pytorch技法之继承Subset类完成自定义数据拆分,下文我们介绍一些下面是加载内置训练数据集的常见操作,需要的小伙伴可以参考一下
    2022-02-02
  • Python生成器传参数及返回值原理解析

    Python生成器传参数及返回值原理解析

    这篇文章主要介绍了Python生成器传参数及返回值原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07
  • 详解Pandas如何高效对比处理DataFrame的两列数据

    详解Pandas如何高效对比处理DataFrame的两列数据

    我们在用 pandas 处理数据的时候,经常会遇到用其中一列数据替换另一列数据的场景。这一类的需求估计很多人都遇到,当然还有其它更复杂的。解决这类需求的办法有很多,这里我们来推荐几个
    2022-09-09
  • Python函数参数中的*与**运算符

    Python函数参数中的*与**运算符

    这篇文章主要介绍了Python函数参数中的*与**运算符,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Python面向对象编程之类的进阶

    Python面向对象编程之类的进阶

    这篇文章主要介绍了Python面向对象编程之类的引用,引用 Reference是对象的指针,引用是内存中真实对象的指针,表示为变量名或者内存地址、每个对象存在至少一个引用,id()函数用于获得引用,想具体了解的小伙伴可以参考下面文章的内容
    2021-11-11
  • Python使用os模块实现更高效地读写文件

    Python使用os模块实现更高效地读写文件

    os是python标准库,包含几百个函数常用路径操作、进程管理、环境参数等好多类。本文将使用os模块实现更高效地读写文件,感兴趣的可以学习一下
    2022-07-07
  • 用Python在Excel里画出蒙娜丽莎的方法示例

    用Python在Excel里画出蒙娜丽莎的方法示例

    这篇文章主要介绍了用Python在Excel里画出蒙娜丽莎的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Python基于SMTP发送邮件的方法

    Python基于SMTP发送邮件的方法

    这篇文章主要介绍了Python基于SMTP 发送邮件的方法,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-03-03
  • python实现图片批量剪切示例

    python实现图片批量剪切示例

    这篇文章主要介绍了python实现图片批量剪切示例,需要的朋友可以参考下
    2014-03-03

最新评论