分类损失函数与评估指标

目录

1 评估指标

1.1 准确率

1.2 精确率

1.3 召回率

1.4 F1 score

1.5 ROC曲线

1.6 AUC

1.7 PRC曲线的优势

2 损失函数

1. 负对数似然损失

2. 交叉熵损失

3. 指数损失

3 分类问题为什么用交叉熵损失不用 MSE 损失


1 评估指标

混淆矩阵

TP(True Positive) ---- 正确预测正类的样本(真阳性)
FN(False Negative) ---- 错误预测为负类的样本(假阴性)
FP(False Positive) ---- 错误的预测为正类(假阳性)
TN(True Negative) ---- 正确预测为负类(真阴性)

1.1 准确率

准确率(accuracy): 反映分类器统对整个样本的判定能力,能将正的判定为正,负的判定为负,公式如下:

1.2 精确率

精确率(Precision):指的是所得数值与真实值之间的精确程度;预测正确的正例数占模型预测为正例总量的比率,一般情况下,精确率越高,说明模型的效果越好

1.3 召回率

召回率(Recall)预测对的正例数占所有正例的比率,一般情况下,Recall越高,说明有更多的正类样本被模型预测正确,模型的效果越好。

1.4 F1 score

F1是精确率和召回率的调和均值,即:

                         

1.5 ROC曲线

每次选取一个不同的threshold,我们就可以得到一组FPR和TPR,即ROC曲线上的一点。

ROC曲线为 FPR 与 TPR 之间的关系曲线,这个组合以 FPR 对 TPR,即是以代价 (costs) 对收益 (benefits),显然收益越高,代价越低,模型的性能就越好。

FPR: 错误预测为正类的样本;

TRP: 正确预测为正类的样本;

1.6 AUC

AUC的物理意义:正样本的预测结果大于负样本的预测结果的概率。所以AUC反映的是分类器对样本的排序能力

AUC 值为 ROC 曲线所覆盖的区域面积,显然,AUC越大,分类器分类效果越好。

AUC = 1,是完美分类器。

0.5 < AUC < 1,优于随机猜测。有预测价值。

AUC = 0.5,跟随机猜测一样(例:丢铜板),没有预测价值。

AUC < 0.5,比随机猜测还差;但只要总是反预测而行,就优于随机猜测。

注:对于AUC小于 0.5 的模型,我们可以考虑取反(模型预测为positive,那我们就取negtive),这样就可以保证模型的性能不可能比随机猜测差。

1.7 PRC曲线的优势

在正负样本分布得极不均匀(highly skewed datasets),负例远大于正例时,并且这正是该问题正常的样本分布时,PRC比ROC能更有效地反应分类器的好坏,即PRC曲线在正负样本比例悬殊较大时更能反映分类的真实性能。例如上面的(c)(d)中正负样本比例为1:10,ROC效果依然看似很好,但是PR曲线则表现的比较差。举个例子,

单从图(a)看,这两个分类器都比较完美(非常接近左上角)。而从图(b)可以看出,这两个分类器仍有巨大的提升空间。那么原因是什么呢? 通过看Algorithm1的点 A,可以得出一些结论。首先图(a)和(b中)的点A是相同的点,因为TPR就是Recall,两者是一样的。

  假设数据集有100个正样本。可以得到以下结论:

  由图(a)点A,可得:TPR=TP/(TP+FN)=TP/所有正样本 =TP/100=0.8,所以TP=80。

  由图(b)点A,可得:Precision=TP/(TP+FP)=80/(80+FP)=0.05,所以FP=1520。

  再由图(a)点A,可得:FPR=FP/(FP+TN)=FP/所有负样本=1520/所有负样本=0.1,所以负样本数量是15200。

  由此,可以得出原数据集中只有100个正样本,却有15200个负样本!这就是极不均匀的数据集。直观地说,在点A处,分类器将1600 (1520+80)个样本预测为positive,而其中实际上只有80个是真正的positive。 我们凭直觉来看,其实这个分类器并不好。但由于真正negative instances的数量远远大约positive,ROC的结果却“看上去很美”,因为这时FPR因为负例基数大的缘故依然很小。所以,在这种情况下,PRC更能体现本质。

PRC 曲线展示了在不同阈值下模型的精确率和召回率之间的权衡关系。一般来说,PRC 曲线越靠近右上角(精确率高、召回率高),表示模型性能越好。与 ROC 曲线相比,PRC 曲线更适用于处理类别不平衡的情况,因为它更加关注正例(少数类)的精确率和召回率。

在评估分类模型时,除了查看 PRC 曲线外,还可以计算曲线下面积(Area Under the PRC Curve,AUPRC)来 quantitatively 衡量模型性能。AUPRC 值越接近 1,表示模型性能越好。

2 损失函数

1. 负对数似然损失

[损失函数]——负对数似然 - 简书

概率是已知参数,推数据。似然是已知数据,推参数。

下面来看一下函数P ( x ∣ θ ),输入有两个,x 表示某一个具体的数据;θ 表示模型的参数:

  1. 如果θ 是已知确定的,x 是变量,这个函数叫做概率函数(probability function),它描述对于不同的样本点,其出现的概率是多少。
  2. 如果x 是已知确定的,θ是变量,这个函数叫做似然函数(likelihood function),他描述对于不同的模型参数,出现x这个样本点的概率是多少。

1 极大似然函数

l(\theta ) = log\prod p_{y_i}(x_i;\theta) = \sum logp_{y_i}(x_i;\theta)

when \\y = 1, p_k(x;\theta) = p(x;\theta)\\ y=0,p_k(x;\theta) = 1-p(x;\theta)

l(\theta ) = \sum logp_{y_i}(x_i;\theta) = ylogp(x;\theta) + (1-y)log(1-p(x;\theta))

2. 交叉熵损失

3. 指数损失

3 分类问题为什么用交叉熵损失不用 MSE 损失

分类预测结果是概率值,使用mse求导之后,梯度 y-f(x)。接近0,1的时候更新非常的慢,mse无差别的关注预测概率与真实值的差。

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

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

相关文章

AUTOCAD输出或打印PDF文件时,如何将图形居中且布满图纸?

AUTOCAD输出或打印PDF文件时,如何将图形居中且布满图纸? 如下图所示,我们打开一份DWG格式的图纸文件,然后点击上方的“打印“图标, 如下图所示, 打印机/绘图仪这里选择“DWG To PDF“; 图纸尺寸:这里以普通的A4纸为例进行说明; 打印比例选择“布满图纸“; 打印偏移…

【微信小程序之分包】

微信小程序之分包 什么是分包分包的好处分包前的结构图分包后的结构图分包的加载规则分包的体积限制使用分包打包原则引用原则独立分包独立分包的配置方法独立分包的引用原则分包预下载配置分包的预下载分包预下载限制 什么是分包 分包指的是把一个完整小程序项目&#xff0c;…

公园高速公路景区校园IP网络广播音柱SIP音柱

公园高速公路景区校园IP网络广播音柱SIP音柱 适用于学校、车站、教堂、工厂、仓库、公园停车场及露天市场高速公路等场所播放录制语音文件或背景音乐节目&#xff0c;专业一体化音箱设计&#xff0c;高强度防水设计&#xff0c;符合IP54防护等认证&#xff0c;数字化产品&…

酷开系统丨酷开科技打造P9系列智能投影,让智能化更进一步

近些年&#xff0c;随着科技的进步&#xff0c;家用投影仪已经成为家庭娱乐中不可或缺的一部分。尤其对年轻人来说&#xff0c;他们更喜欢在巨幕上看电影、玩游戏或听歌唱歌&#xff0c;投影仪在巨幕上的光影效果确实能带来更好的沉浸感体验&#xff0c;但这也是需要强大的系统…

论文略读:SWE-bench: Can Language Models Resolve Real-world Github Issues?

iclr 2024 oral reviewer评分 5668 现有的语言模型&#xff08;LMs&#xff09;的基准测试已经饱和&#xff0c;无法捕捉到最先进的语言模型能做什么和不能做什么的前沿。 ——>要具有挑战性的基准测试论文引入了SWE-bench 在现实软件工程环境中评估语言模型的基准测试 ​​…

word文件的创建时间和修改时间可以更改吗?答案是肯定的 文件属性修改的方法

一&#xff0c;引言 在日常生活和工作中&#xff0c;我们经常需要处理各种Word文件。有时&#xff0c;由于某些原因&#xff0c;我们可能需要更改Word文件的创建时间和修改时间。虽然这听起来可能有些复杂&#xff0c;但实际上&#xff0c;通过一些简单的方法和工具&#xff0…

数据库语言实战(三)

删除操作 本篇文章重点在于SQL中的各种删除操作 题目一 删除表中的学号不全是数字的那些错误数据&#xff0c;学号应该是数字组成&#xff0c;不能够包含字母空格等非数字字符。方法之一&#xff1a;用substr函数&#xff0c;例如Substr(sid,1,1)返回学号的第一位&#xff0…

java版数字藏品深色UI仿鲸探数藏盲盒合成短视频卡牌模式支持高并发

Java版数字藏品深色UI仿鲸探数藏盲盒合成短视频卡牌模式支持高并发&#xff0c;是一种结合了Java技术、深色用户界面&#xff08;UI&#xff09;设计、数字藏品概念、盲盒合成玩法以及短视频卡牌模式的综合性应用。该模式旨在为用户提供一种新颖、有趣的数字藏品体验&#xff0…

电脑怎么设置静态ip地址

在互联网连接中&#xff0c;IP地址扮演着至关重要的角色。它不仅是设备在网络世界中的唯一标识&#xff0c;还决定了设备如何与其他计算机通信。静态IP地址是一种固定不变的IP配置方式&#xff0c;与动态IP地址相比&#xff0c;它更加稳定&#xff0c;适用于需要长期、稳定网络…

Mysql的事务隔离级别以及事务的四大特性。

MySQL 的事务隔离级别是数据库管理系统中的一个重要概念&#xff0c;它决定了事务如何隔离和影响其他并发事务。MySQL 支持四种事务隔离级别&#xff0c;分别是&#xff1a;读未提交&#xff08;READ UNCOMMITTED&#xff09;、读已提交&#xff08;READ COMMITTED&#xff09;…

RK3568 学习笔记 : 更改 u-boot spl 中的 emmc 的启动次序

环境 开发板&#xff1a; 【正点原子】 的 RK3568 开发板 ATK-DLRK3568 u-boot 版本&#xff1a;来自 【正点原子】 的 RK3568 开发板 Linux SDK&#xff0c;单独复制出来一份&#xff0c;手动编译 编译环境&#xff1a;VMware 虚拟机 ubuntu 20.04 问题描述 RK3568 默认 …

啤酒厂要开发一个SCADA系统,我是这样考虑的

需求分析 在啤酒生产过程中&#xff0c;技术与自动化的应用对确保产品质量的稳定、提高生产效率以及保障生产安全起着至关重要的作用。因此&#xff0c;构建一套全面、高效的SCADA&#xff08;监督控制与数据采集&#xff09;系统总体规划框架对于啤酒厂来说具有重大意义。 SCA…

SSL证书添加与ICP备案,对于SpringBoot的要求

配置了SSL证书之后&#xff0c;在SpringBoot的resources文件夹里的application.properties会添加以下代码&#xff1a; server.port443 不需要添加server.address。不然会报错。 https类型的请求默认在Postman里面不可请求。 经过SSL证书处理的网页&#xff0c;链接中使默认…

jinja2常用基本语法

变量 {{变量名称}} 循环 {%for i in range(100)%}代码块{%endfor%} 条件判断 {%if true%}代码块1{%elif true%}代码块2{%else%}代码块3{%endif%} include导入其他模板 {%include "sub.tpl"%} 过滤器 {{vendor_list|filter()}} 继承母版 {%extends base.co…

Android JetPack Compose+Room----实现搜索记录功能

文章目录 需求概述功能展示实现搜索功能使用的技术1.Android Jetpack room2.Android JetPack Compose 代码实现编写搜索界面接入Room实现搜索功能的管理引入依赖定义包结构定义操作表的Dao类定义数据库的基础配置定义数据库的Dao管理类使用数据库升级 源码地址 需求概述 搜索功…

Java反序列化基础-类的动态加载

类加载器&双亲委派 什么是类加载器 类加载器是一个负责加载器类的对象&#xff0c;用于实现类加载的过程中的加载这一步。每个Java类都有一个引用指向加载它的ClassLoader。而数组类是由JVM直接生成的&#xff08;数组类没有对应的二进制字节流&#xff09; 类加载器有哪…

Java 类加载过程

Java 类加载过程 类的生命周期类的加载过程加载验证准备解析初始化 类的生命周期 类的生命周期&#xff1a; 加载&#xff08;Loading&#xff09;— 验证&#xff08;Verification&#xff09;— 准备&#xff08;Preparation&#xff09;— 解析&#xff08;Resolution&#…

CSS基础:width,height尺寸属性详解

你好&#xff0c;我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。云桃桃&#xff0c;大专生&#xff0c;一枚程序媛&#xff0c;感谢关注。回复 “前端基础题”&#xff0c;可免费获得前端基础 100 题汇总&#xff0c;回复 “前端工具”&#xff0c;可获取 Web…

【文件系统】 F2FS文件系统学习

一、基本介绍 1、F2FS History F2FS&#xff08;Flash Friendly File System&#xff09;是专门为Nand Flash设计的一个日志型文件系统&#xff0c;于2012年12月合入Linux3.8内核&#xff0c;Google也在2018年&#xff08;Android P&#xff09;将其吸收到安卓原生版本中&…

Composer是什么?

Composer是PHP的一个依赖管理工具&#xff0c;它允许开发者声明项目所依赖的代码库&#xff0c;并在项目中自动安装这些依赖。它使用composer.json文件来定义项目的依赖关系&#xff0c;并使用composer.lock文件来锁定依赖的版本&#xff0c;以确保项目的稳定性和可重复性。 Co…