f1-score是什么_python概念题

f1-score是什么_python概念题一、F1score概念?F1score是分类问题的一个衡量指标,一些多分类问题的机器学习竞赛,常把F1score作为最终评测的方法。它是精确率和召回率的调和平均数,取值0-1之间。F1score认为召回率和精确率同样重要,而F2认为召回率的重要程度是精确率的2倍,F0.5则认为召回率的重要程度是精确率的一半。要明确几个概念TP(TruePositive):被判定为正样本,实际为正样本 TN(TrueNegative):被判定为负样本,实际为负样本 FP(FalseP

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

一、F1 score概念?

F1 score是分类问题的一个衡量指标,一些多分类问题的机器学习竞赛,常把F1 score作为最终评测的方法。它是精确率和召回率的调和平均数,取值0-1之间。

F1 score认为召回率和精确率同样重要,而F2认为召回率的重要程度是精确率的2倍,F0.5则认为召回率的重要程度是精确率的一半。

F_{1}=2\frac{precision\cdot recall}{precision+recall}

要明确几个概念

  • TP(True Positive): 被判定为正样本,实际为正样本
  • TN(True Negative): 被判定为负样本,实际为负样本
  • FP(False Positive): 被判定为正样本,实际为负样本
  • FN(False Negative): 被判定为负样本,实际为正样本
  • accuracy:准确率,针对所有样本而言,即所有实际正负样本中,判定正确的样本所占的比例。accuracy = (TP + TN)/(TP + TN + FP + FN)
  • precision:精确率(又称为查准率),针对所有判定为正的样本而言,即所有判定为正的样本中,实际为正的样本所占的比例。precision = TP/(TP + FP)
  • recall:召回率(又称为查全率),针对所有实际为正的样本而言,即所有实际为正的样本中,判定为正的样本所占的比例。recall = TP/(TP + FN)

注意:上述所有正负样本描述是针对二分类问题而言,如果是多分类问题,则上述正样本代表第k类样本,负样本代表所有其他类样本。

 

二、F1 score如何计算?

  1. 首先分别计算每一类样本的精确率precision_{k}和召回率recall_{k}
  2. 然后分别计算每一类的F1 score: f1_{k}=2\cdot \frac{precision_{k}\cdot recall_{k}}{precision_{k}+recall_{k}}
  3. 最后对所有类别的F1 score求均值,得到最终结果:F1 score=(\frac{1}{n}\sum f1_{k})^{2}

 

三、python如何实现?

可以通过调用sklearn包实现

函数介绍:

sklearn.metrics.f1_score(y_true, y_pred, labels=None, pos_label=1, average=’binary’, sample_weight=None)

  • y_true: 真实类别,1d array-like, or label indicator array / sparse matrix.
  • y_pred: 预测类别,1d array-like, or label indicator array / sparse matrix.
  • average: string,[None, ‘binary’(default), ‘micro’, ‘macro’, ‘samples’, ‘weighted’],如果二分类则选binary,如果考虑类别的不平衡性,需要计算类别的加权平均,则使用‘weighted’;如果不考虑类别的不平衡性,计算宏平均,则使用‘macro’。

代码示例:

from sklearn.metrics import f1_score

y_true = [0,0,0,1,1,2]
y_pred = [0,0,1,1,2,2]

print(f1_score(y_true, y_pred, average='weighted'))
print(f1_score(y_true, y_pred, average='macro'))

f1-score是什么_python概念题 

 

参考:

https://blog.csdn.net/qq_14997473/article/details/82684300

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/182095.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • layui弹出层html页面,layui弹出层

    layui弹出层html页面,layui弹出层利用layui框架layer部分执行的弹出层,这样比起普通alert的弹出层更美观首先,写一个按钮点击试试js部分$(document).ready(function(){$(‘.btn’).on(‘click’,function(){layer.confirm(‘你好吗?’,{btn:[‘好’,’不好’]},function(){layer.msg(‘hao’,{ico…

  • IDEA版本的Mybatis逆向工程使用攻略「建议收藏」

    IDEA版本的Mybatis逆向工程使用攻略「建议收藏」idea版本的Mybatis逆向工程开发(自动生成实体类层,mapper文件,dao层)一、使用逆向工程开发概述今天早上打算做一个spring+springmvc+mybatis的项目,然后感觉这个mapper文件太难写了,最后就想在网上找一个方法能解决不写mapper文件的方法,最后就发现了这个懒人必背法宝:“myabtis逆向工程”的技术,但是全网几乎都是“eclipse版本生成MyBatis逆向工程”,然后自己就搞了一个idea+maven版本的逆向工程,并且全部在gitee开源了的哟,如果

  • 微信小程序 PHP后端form表单提交实例详解

    微信小程序 PHP后端form表单提交实例详解

    2021年10月15日
  • IDEA2021 MAC激活码_最新在线免费激活

    (IDEA2021 MAC激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~https://javaforall.cn/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~0U…

  • CUDA deb 安装

    CUDA deb 安装1、CUDA下载https://developer.nvidia.com/cuda-toolkit-archive2、选择对应版本deb安装sudodpkg-icuda-repo-ubuntu1804-10-0-local-10.0.130-410.48_1.0-1_amd64.debsudoapt-keyadd/var/cuda-repo-<version&gt…

  • 浅谈路径规划算法_rrt路径规划算法

    浅谈路径规划算法_rrt路径规划算法原文地址:http://theory.stanford.edu/~amitp/GameProgramming/1导言1.1算法1.2Dijkstra算法与最佳优先搜索1.3A*算法2启发式算法2.1A*对启发式函数的使用2.2速度还是精确度?2.3衡量单位2.4精确的启发式函数2.4.1预计算的精确启发式函数2.4.2线性精

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号