加权准确率WA,未加权平均召回率UAR和未加权UF1

2023-12-16 22:52

本文主要是介绍加权准确率WA,未加权平均召回率UAR和未加权UF1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

加权准确率WA,未加权平均召回率UAR和未加权UF1

  • 1.加权准确率WA,未加权平均召回率UAR和未加权UF1
  • 2.参考链接

1.加权准确率WA,未加权平均召回率UAR和未加权UF1

from sklearn.metrics import classification_report
from sklearn.metrics import precision_recall_curve, average_precision_score,roc_curve, auc, precision_score, recall_score, f1_score, confusion_matrix, accuracy_scoreimport torch
from torchmetrics import MetricTracker, F1Score, Accuracy, Recall, Precision, Specificity, ConfusionMatrix
import warnings
warnings.filterwarnings("ignore")  # 忽略告警pred_list  =  [2, 0, 4, 1, 4, 2, 4, 2, 2, 0, 4, 1, 4, 2, 2, 0, 4, 1, 4, 2, 4, 2]
target_list = [1, 1, 4, 1, 3, 1, 2, 1, 1, 1, 4, 1, 3, 1, 1, 1, 4, 1, 3, 1, 2, 1]print(classification_report(target_list, pred_list))# Accuracy # WA(weighted accuracy)加权准确率,其实就是我们sklearn日常跑代码出来的acc
# 在多分类问题中,加权准确率(Weighted Accuracy)是一种考虑每个类别样本数量的准确率计算方式。
# 对于样本不均衡的情况,该方式比较适用。其计算方式是将每个类别的准确率乘以该类别在总样本中的比例(权重),然后求和。
test_acc_en = Accuracy(task="multiclass",num_classes=5, threshold=1. / 5, average="weighted")# Recall macro表示加权的
# UAR(unweighted average recall)未加权平均召回率
# 是一种性能评估指标,主要用于多分类问题。它表示各类别的平均召回率(Recall),在计算时,不对各类别进行加权。对于每个类别,召回率是该类别中真正被正确预测的样本数与该类别中所有样本数的比值。
# UAR在评估一个分类器时,对每个类别都给予相同的重要性,而不考虑各类别的样本数量。这使得UAR在处理不平衡数据集时具有一定的优势,因为它不会受到数量较多的类别的影响。
test_rcl_en = Recall(task="multiclass",num_classes=5, threshold=1. / 5, average="macro") # UAR# F1 score
# F1分数是精确率(Precision)和召回率(Recall)的调和平均值。
# 在多分类问题中,通常会计算每个类别的F1分数,然后取平均值作为总体的F1分数。
# 平均方法可以是简单的算术平均(Macro-F1)(常用),也可以是根据每个类别的样本数量进行加权的平均(Weighted-F1)
test_f1_en = F1Score(task="multiclass", num_classes=5, threshold=1. / 5, average="macro") # UF1preds  = torch.tensor(pred_list)
target = torch.tensor(target_list)
print("sklearn vs torchmetrics: ")
print("Accuracy-W_ACC")
print(accuracy_score(y_true=target_list, y_pred=pred_list))
print(test_acc_en(preds, target))print("recall-UAR")
print(recall_score(y_true=target_list,y_pred=pred_list,average='macro')) # 也可以指定micro模式
print(test_rcl_en(preds, target))print("F1-score-UF1")
print(f1_score(y_true=target_list, y_pred=pred_list, average='macro'))
print(test_f1_en(preds, target))

在这里插入图片描述

2.参考链接

  1. 一文看懂机器学习指标:准确率、精准率、召回率、F1、ROC曲线、AUC曲线
  2. 多分类中TP/TN/FP/FN的计算
  3. 多分类中混淆矩阵的TP,TN,FN,FP计算
  4. TP、TN、FP、FN超级详细解析
  5. 一分钟看懂深度学习中的准确率(Accuracy)、精度(Precision)、召回率(Recall)和 mAP
  6. 深度学习评价指标简要综述
  7. 深度学习 数据多分类准确度 多分类的准确率计算
  8. Sklearn和TorchMetrics计算F1、准确率(Accuracy)、召回率(Recall)、精确率(Precision)、敏感性(Sensitivity)、特异性(Specificity)

这篇关于加权准确率WA,未加权平均召回率UAR和未加权UF1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/502180

相关文章

uni-app 扫码优化:谈谈我是如何提升安卓 App 扫码准确率的

一. 前言 之前的一个项目遭到用户吐槽:“你们这个 App 扫码的正确率太低了,尤其是安卓的设备。经常性的扫码扫不出来,就算是扫出来了,也是错误的结果!” 由于之前是扫描二维码的需求,所以没有对扫描条形码做严格的测试,客户提示说是条形码扫描效率低下。随即,我用自己的手机测试了一下,在安卓手机上确实有这样的问题,扫码准确率确实是低,尤其是条形码,扫码效率慢且不准确。扫描二维码的的效率还算可以

工控常用滤波方法(限幅+中值+算术平均+滑动平均)

工控常用滤波方法 简介限幅滤波法中值滤波法算术平均滤波法滑动平均滤波 简介 在实际的工程应用中,实际反馈的信号由于是通过电压及电流转换而来的数字量信号,在现场可能会受到比较大的干扰问题,这样的扰动会影响控制系统的输出精度,也会使其产生比较大的偏差。 故在实际应用中,通常不会直接将反馈的信号作为信号输入,会在之前加一个滤波器以使数据更平滑,在此,非常有必要引入数字滤波的概念。

Hinton等人最新研究:大幅提升模型准确率,标签平滑技术 2019-7-8

导读:损失函数对神经网络的训练有显著影响,也有很多学者人一直在探讨并寻找可以和损失函数一样使模型效果更好的函数。后来,Szegedy 等学者提出了标签平滑方法,该方法通过计算数据集中 hard target 的加权平均以及平均分布来计算交叉熵,有效提升了模型的准确率。近日,Hinton 团队等人在新研究论文《When Does Label Smoothing Help?》中,就尝试对标签平滑技术对

贪心算法实现班级平均分组

需求分析 **业务需求 : 二年级一班级有 50人 ,分为10个小组. 分组规则: 1 各个组的男女比例要大致平衡 2 各组成员的身高和要大致相等 例如 1组 身高和 = 2 组身高和 = 3 组. 以此类推 3 各组成员的总分和要大致相等 例如 1组 身高和 = 2 组身高和 = 3 组. 以此类推 import java.util.ArrayList;import java.util

平均场变分推断:以混合高斯模型为例

文章目录 一、贝叶斯推断的工作流二、一个业务例子三、变分推断四、平均场理论五、业务CASE的平均场变分推断求解六、代码实现 一、贝叶斯推断的工作流 在贝叶斯推断方法中,工作流可以总结为: 根据观察者的知识,做出合理假设,假设数据是如何被生成的将数据的生成模型转化为数学模型根据数据通过数学方法,求解模型参数对新的数据做出预测 在整个pipeline中,第1点数据的生成过程

要在nginx中配置后端三个服务器的轮询和加权

要在nginx中配置后端三个服务器的轮询和加权,你可以按照以下步骤进行配置: 打开nginx的配置文件,一般位于/etc/nginx/nginx.conf或/etc/nginx/conf.d/default.conf。 在http块内添加一个upstream块用于定义后端服务器列表。例如,我们定义一个名为backend的upstream块: http {upstream backend

[每日一练]平均售价(MySQL中对null值的处理,和连接表时多条件的判断)

改题目来源于力扣: 1251. 平均售价 - 力扣(LeetCode) 题目要求: 表:Prices+---------------+---------+| Column Name | Type |+---------------+---------+| product_id | int || start_date | date || end_d

某学生有两门考试课程,实行百分制考核。编写程序,输入这两门课程的成绩,计算其平均成绩。

#include<stdio.h>int main(){float a,b;scanf("%f%f",&a,&b);printf("%.2f\n",(a+b)/2.0); return 0;} 这里需要注意数据类型,分数不一定是整数,可能是实数。

最小二乘、加权最小二乘 matlab实现

1. 定义 最小二乘: 最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小 。 最小二乘法还可用于曲线拟合,其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。 加权最小二乘法: 一般最小二乘法将时间序列中的各项数据的重要性同等看待,而事

NLP-信息抽取-NER-2015-BiLSTM+CRF(一):命名实体识别【预测每个词的标签】【评价指标:精确率=识别出正确的实体数/识别出的实体数、召回率=识别出正确的实体数/样本真实实体数】

一、命名实体识别介绍 命名实体识别(Named Entity Recognition,NER)就是从一段自然语言文本中找出相关实体,并标注出其位置以及类型。是信息提取, 问答系统, 句法分析, 机器翻译等应用领域的重要基础工具, 在自然语言处理技术走向实用化的过程中占有重要地位. 包含行业, 领域专有名词, 如人名, 地名, 公司名, 机构名, 日期, 时间, 疾病名, 症状名, 手术名称, 软