机器学习 | 模型性能评估

目录

现在我们已经对模型训练有了初步了解,下面我们接着聊评估:

一. 回归模型的性能评估

对于一个已经训练好的回归模型,我们需要知道模型训练的好坏程度,即需要对模型进行评估

这里给出几个评估指标:

1. 平均平方误差(MSE)

M S E = 1 m ∑ i = 1 m ( y i − y ^ i ) 2 ,又称为均方误差 MSE = \frac{1}{m} \sum_{i=1}^{m}(y_{i}-\hat{y}_{i} )^{2},又称为均方误差 MSE=m1i=1m(yiy^i)2,又称为均方误差

2. 平均绝对误差(MAE)

M A E = 1 m ∑ i = 1 m ∣ y i − y ^ i ∣ ,又称为绝对误差 MAE = \frac{1}{m} \sum_{i=1}^{m}\mid y_{i}-\hat{y}_{i}\mid,又称为绝对误差 MAE=m1i=1myiy^i,又称为绝对误差

3. R 2 R^{2} R2

默认LinearRegression.score( ) 的评分为 R 2 R^{2} R2

R 2 = 1 − R S S T S S = 1 − ∑ i = 1 m ( y i − y ^ i ) 2 ( y i − y ˉ ) 2 ,其中 y ˉ = 1 m ∑ i = 1 m y i R^{2}=1-\frac{RSS}{TSS} = 1-\frac{\sum_{i=1}^{m}(y_{i}-\hat{y}_{i} )^{2}}{(y_{i}-\bar{y} )^{2}},其中\bar{y} = \frac{1}{m}\sum_{i=1}^{m}y_{i} R2=1TSSRSS=1(yiyˉ)2i=1m(yiy^i)2,其中yˉ=m1i=1myi

其中 r 2 r^{2} r2的取值范围为(-∞,1]

	当值为1时,即 预测值 = 真值当值为0时,即 预测值 = 均值 (预测结果很差)当值小于0时,模型一定有问题,不如直接用均值

3.1 R 2 R^{2} R2优点

	给定指标范围,对于模型好坏的判断会更直观

二. 分类模型的性能评估

这里我们先引入混淆矩阵
在这里插入图片描述

	概念解释:混淆矩阵是在统计学中用来衡量分类模型性能的矩阵它以矩阵的形式展示了模型在测试数据集上的预测结果与实际结果之间的关系

这里补充什么是正例:工程中关注的为正例,取决于需求;比如,核酸的阳性,垃圾邮件等都可以为正例

1. 准确率(Accuracy)

A c c u r a c y = A + D A + B + C + D Accuracy=\frac{A+D}{A+B+C+D} Accuracy=A+B+C+DA+D

	检测正确的样本数/总样本数注意:一般不用这个指标原因:在正负样本数差距太大时,会失真比如:阴性样本990个,阳性样本10个模型检测到了所有得阴性样本,即990个模型此时准确率为99%

2. 召回率(Recall)

R e c a l l = A A + B Recall=\frac{A}{A+B} Recall=A+BA

	检测正确的正例样本数/总正例样本数

3. 精确率(Precision)

P r e c i s i o n = A A + C Precision=\frac{A}{A+C} Precision=A+CA

	检测正确的正例样本数/检测为正例的样本数

	召回率和精确率,谁更重要?看工作需求,以及后续操作对于这两个指标,再补充一种好理解得方式:召回率:是目标就揪出来精确率:目的地必须是目标例子:正常邮件必须放在A内,不能出现在垃圾邮件存放处垃圾邮件偶尔可以出现在A处垃圾邮件存放处只能存放垃圾邮件

4. F S c o r e F_{Score} FScore

精确率和召回率互相影响,理想状态下肯定追求两个都高
但是实际情况是两者相互“制约”:
追求精确率高,则召回率就低
追求召回率高,则通常会影响精确率

分类模型默认的评估指标

F S c o r e = ( 1 + β 2 ) P r e c i s i o n ∗ R e c a l l β 2 P r e c i s i o n + R e c a l l F_{Score}=(1+\beta ^{2} ) \frac{Precision\ast Recall}{\beta ^{2}Precision+Recall} FScore=(1+β2)β2Precision+RecallPrecisionRecall

	 β=1:表示Precision与Recall一样重要F1可以看作是模型准确率和召回率的调和平均数,最大值是1,最小值是0注意:存在精确率和召回率都为1时β<1:表示Precision比Recall重要β>1:表示Recall比Precision重要

5. PR-曲线和AP值

	以召回率为横轴,精确率为纵轴,即画出PR-曲线PR曲线与X轴围成的图形面积,即AP值AP值为1时模型性能最好

在这里插入图片描述

	PR曲线由阈值控制比如:0.3以上全部判为阳性抓回的样本数量多,即召回率高抓回样本中有阴性样本,即精确率低即随着阈值的降低,召回率越高,精确率越低比如:AP值小,即面积较小时,说明:P值下降很快,阈值在0.7左右时有大量负样本

6. ROC曲线

当正负样本不平衡时,这种模型评价方式比起一般的精确度评价方式的好处尤其显著

	横坐标为false positive rate(FPR):FP/(FP+TN)纵坐标为true positive rate(TPR):TP/(TP+FN)

分类器阈值点常为50%,当然可以通过调节阈值,改变预测的标签
从0-1之间选取任意细度的阈值,分别获得FPR和TPR,得到ROC曲线

当阈值取0时,对应图中的右上角点(全部预测为正例)
当阈值取1时,对应图中的左下角点(全部预测为负例)

ROC曲线越接近左上角(0,1),该分类器的性能越好

ROC曲线反映了FPR与TPR之间权衡的情况,即

在TPR随着FPR递增的情况下,谁增长得更快,快多少的问题

	模型分类性能越好:TPR增长得越快,曲线越往上屈,AUC就越大其中,AUC为ROC曲线下的面积,取值范围是[0.5,1]

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/503589.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

sqlserver unique约束示例

UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。 PRIMARY KEY 拥有自动定义的 UNIQUE 约束。 与主键约束类似&#xff0c;唯一约束也强制唯一性&#xff0c;但唯一约束用于非主键的一列或者多列的组合&#xff0c;且一个表可以定义多个唯一约束。 有如下表&…

Linux运维-Web服务器的配置与管理(Apache+tomcat)(没成功,最后有失败经验)

Web服务器的配置与管理(Apachetomcat) 项目场景 公司业务经过长期发展&#xff0c;有了很大突破&#xff0c;已经实现盈利&#xff0c;现公司要求加强技术架构应用功能和安全性以及开始向企业应用、移动APP等领域延伸&#xff0c;此时原来开发web服务的php语言已经不适应新的…

02-prometheus监控-服务器节点监控node-exporter

一、概述 prometheus&#xff0c;本身是一个【数据收集】和【数据处理】的工具&#xff0c;如果效果要监控一台服务器物理机&#xff0c;有两种方式&#xff0c;一种是在物理机上部署“node-export”来收集数据上报给prometheus&#xff0c;另一种是“自定义监控”&#xff1b;…

PowerDesigner中怎么给ER图中字段设置默认值

双击table&#xff0c;进入数据库表详情页 详情页点击【Columns】 双击你要设置默认值得栏目&#xff0c;例如我得删除标记 点击【Standard Checks】&#xff0c;在【Defalut】中录入你想要得默认值&#xff0c;点击【应用即可】

Window10安装ruby

最好的方法&#xff0c;使用rubyinstaller&#xff0c;即在Downloads。 这是官方推荐的安装方式 通常来说我们会下载64位的 下载完后执行下载的exe即可。在最后一步会提示让安装gem&#xff0c;选则安装即可。 然后就可以在控制台进行测试了。

UniStorm - Volumetric Clouds, Sky, Modular Weather, and Cloud Shadows

UniStorm 是一款 AAA 动态天空、天气、云阴影和程序化体积云的终极解决方案。UniStorm 包含 100 多个可自定义的特色选项来使你的环境栩栩如生。甚至云的外观也可以自定义。聆听用户的反馈使 UniStorm 变得更加人性化以及简易使用。UniStorm 的功能非常强大,并且给你选项来调整…

FPGA开源项目分享——2D N-Body重力模拟器

​导语 今天继续康奈尔大学FPGA 课程ECE 5760的典型案例分享——2D N-Body重力模拟器。 &#xff08;更多其他案例请参考网站&#xff1a; Final Projects ECE 5760&#xff09; 1. 项目概述 项目网址 Grav Sim 项目说明 该项目的目标是创建一个用DE1-SOC进行硬件加速的2…

一周学会Django5 Python Web开发-Django5详细视图DetailView

锋哥原创的Python Web开发 Django5视频教程&#xff1a; 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计28条视频&#xff0c;包括&#xff1a;2024版 Django5 Python we…

centos7升级openssl_3

1、查看当前openssl版本 openssl version #一般都是1.几的版本2、下载openssl_3的包 wget --no-check-certificate https://www.openssl.org/source/old/3.0/openssl-3.0.3.tar.gz#解压 tar zxf openssl-3.0.3.tar.gz#进入指定的目录 cd openssl-3.0.33、编译安装遇到问题缺…

基于JAVA的聊天(ICQ)系统的设计于实现

一、绪论 ICQ是英文"I seek you "的简称&#xff0c;中文意思是我找你。ICQ最大的功能就是即时信息交流&#xff0c;只要记得对方的号码&#xff0c;上网时可以呼他&#xff0c;无论他在哪里&#xff0c;只要他上网打开ICQ&#xff0c;人们就可以随时交流。ICQ源于以…

防抖和节流的实现

《防抖和节流》 防抖1. 概念介绍2. 函数实现3. 应用场景 节流1. 概念介绍2. 函数实现3. 应用场景 防抖 1. 概念介绍 在没有使用防抖函数之前&#xff1a;当我们需要搜索某些物体信息时会导致浏览器压力很大&#xff0c;性能很低。"防抖函数"的作用就是等到用户停止…

YOLOv9有效提点|加入BAM、CloFormer、Reversible Column Networks、Lskblock等几十种注意力机制(二)

专栏介绍&#xff1a;YOLOv9改进系列 | 包含深度学习最新创新&#xff0c;主力高效涨点&#xff01;&#xff01;&#xff01; 一、本文介绍 本文只有代码及注意力模块简介&#xff0c;YOLOv9中的添加教程&#xff1a;可以看这篇文章。 YOLOv9有效提点|加入SE、CBAM、ECA、SimA…