【23-24 秋学期】 NNDL 作业2

news2025/1/10 20:31:00

习题2-1 分析为什么平方损失函数不适用于分类问题,交叉熵损失函数不适用于回归问题

平方损失函数 平方损失函数Quadratic Loss Function)经常用在预测标签𝑦为实数值的任务中

表达式为:

交叉熵损失函数   交叉熵损失函数 Cross-Entropy Loss Function) 一般用于分类问题
假设样本的标签 𝑦 ∈ {1, ⋯ , 𝐶} 为离散的类别,模型 𝑓(𝒙; 𝜃) ∈ [0, 1]𝐶 的输出为类别标签的条件概率分布,即
并满足

平方损失函数的主要思想是衡量预测值与真实值之间的差距,差距越小,损失越小。这在回归问题中很合适,因为回归问题的目标就是预测一个连续的值。然而,在分类问题中,标签通常是离散的,而不是连续的。比如,在一个二分类问题中,标签只有两种可能的值:“0”和“1”。在这种情况下,使用平方损失函数并不合适,因为它不能很好地处理离散标签。

 交叉熵损失函数用于衡量预测的概率分布与真实的标签分布之间的差距。在分类问题中,这是非常合适的,因为它可以使模型更加关注那些重要的类别。然而,在回归问题中,我们通常希望模型预测一个连续的值,而不是一个概率分布。使用交叉熵损失函数进行回归可能会导致模型过于关注预测的“概率分布”,而忽视了预测的精确值。这可能会导致回归模型的预测结果不如使用平方损失函数准确。

习题 2-12  对于一个三分类问题,数据集的真实标签和模型的预测标签如下:

分别计算模型的精确率,回归率,F1值以及它们的宏平均和微平均

精确率 Precision ), 也叫 精度 查准率 ,类别 𝑐 的查准率是所有预测为类别𝑐的样本中预测正确的比例: \mathcal{P}_{c}=\frac{TP_{c}}{TP_{c}+FP_{c}}

召回率 Recall ), 也叫 查全率 类别 𝑐 的查全率是所有真实标签为类别 𝑐
样本中预测正确的比例:\mathcal{R}_{c}=\frac{TP_{c}}{TP_{c}+FN_{c}}

F F Measure)是一个综合指标,为精确率和召回率的调和平均:
\mathcal{F}_c=\frac{(1+\beta^2)\times\mathcal{P}_c\times\mathcal{R}_c}{\beta^2\times\mathcal{P}_c+\mathcal{R}_c}
宏平均和微平均 为了计算分类算法在所有类别上的总体精确率 召回率和 F1
经常使用两种平均方法 分别称为 宏平均 Macro Average 微平均 Micro Average) [ Yang , 1999 ]
宏平均是 每一类 的性能指标的算术平均值
\mathcal{P}_{\text{macro}}=\frac{1}{C}\sum_{c=1}^{C}\mathcal{P}_{c}
\mathcal{R}_{macro}=\frac{1}{C}\sum_{c=1}^{C}\mathcal{R}_{c}
\mathcal{F}1_{macro}=\frac{2\times\mathcal{P}_{macro}\times R_{macro}}{P_{macro}+R_{macro}}
微平均是 每一个样本 的性能指标的算术平均值.对于单个样本而言,它的精 确率和召回率是相同的( 要么都是 1 要么都是 0 ). 因此精确率的微平均和召回率的微平均是相同的. 同理 F1 值的微平均指标是相同的 当不同类别的样本数量不均衡时, 使用宏平均会比微平均更合理些 宏平均会更关注小类别上的评价指标
micro-P=\frac{\overline{TP}}{\overline{TP}+\overline{FP}}
micro-R=\frac{\overline{TP}}{\overline{TP}+\overline{FN}}
micro-F1=\frac{2*P_{micro}*R_{micro}}{P_{micro}+R_{micro}}
精确率:
\mathcal{P}_{c1}=\frac{TP_{c}}{TP_{c}+FP_{c}} = \frac{1}{1+1} = \frac{1}{2}
\mathcal{P}_{c2}=\frac{TP_{c}}{TP_{c}+FP_{c}} = \frac{1}{1+1} = \frac{1}{2}
\mathcal{P}_{c3}=\frac{TP_{c}}{TP_{c}+FP_{c}} = \frac{2}{2+1} = \frac{2}{3}
召回率:
\mathcal{R}_{c1}=\frac{TP_{c}}{TP_{c}+FN_{c}} = \frac{1}{1+1} = \frac{1}{2}
\mathcal{R}_{c2}=\frac{TP_{c}}{TP_{c}+FN_{c}} = \frac{2}{2+1} = \frac{2}{3}
\mathcal{R}_{c3}=\frac{TP_{c}}{TP_{c}+FN_{c}} = \frac{2}{2+2} = \frac{1}{2}
F值:
\mathcal{F}_1=\frac{(1+\beta^2)\times\mathcal{P}_c\times\mathcal{R}_c}{\beta^2\times\mathcal{P}_c+\mathcal{R}_c} = \frac{2*\frac12*\frac12}{1*\frac12+\frac12}=\frac12
\mathcal{F}_{2}=\frac{(1+\beta^2)\times\mathcal{P}_{c}\times\mathcal{R}_{c}}{\beta^2\times\mathcal{P}_{c}+\mathcal{R}_{c}} = \frac{2*\frac12*\frac23}{1*\frac12+\frac23}=\frac47
\mathcal{F}_{2}=\frac{(1+\beta^2)\times\mathcal{P}_{c}\times\mathcal{R}_{c}}{\beta^2\times\mathcal{P}_{c}+\mathcal{R}_{c}} = \frac{2*\frac23*\frac12}{1*\frac23+\frac12}=\frac47
宏平均:
\mathcal{P}_{macro}=\frac{1}{C}\sum\limits_{c=1}^{C}\mathcal{P}_{c} = {\frac{1}{3}}*({\frac{1}{2}}+{\frac{1}{2}}+{\frac{2}{3}})={\frac{5}{9}}
\mathcal{R}_{macro}=\frac{1}{C}\sum_{c=1}^{C}\mathcal{R}_{c} = \frac{1}{3}*(\frac{1}{2}+\frac{2}{3}+\frac{1}{2})=\frac{5}{9}
\mathcal{F}1_{macro}=\frac{2\times\mathcal{P}_{macro}\times R_{macro}}{P_{macro}+R_{macro}} = \frac{2*\frac59*\frac59}{\frac59+\frac59}=\frac59
微平均:
micro-P=\frac{\overline{TP}}{\overline{TP}+\overline{FP}} = \frac{1+2+2}{(1+2+2)+(1+1+1)}=\frac58
micro-R=\frac{\overline{TP}}{\overline{TP}+\overline{FN}} = \frac{1+2+2}{(1+2+2)+(1+1+2)}=\frac59
micro-F1=\frac{2*P_{micro}*R_{micro}}{P_{micro}+R_{micro}} = \frac{2*\frac58*\frac59}{\frac58+\frac59}=\frac{10}{17}
本期使用公式编辑器:
公式识别 (simpletex.cn)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RGB-D转3D点云原理及实现代码

在图像处理和计算机视觉领域,RGBD 是指结合图像颜色和深度信息的数据格式。文本介绍如何使用Python将RGBD数据转换为3D点云,可以使用 NSDT 3DConvert 在线查看3D点云或者进行格式转换: 1、RGBD 颜色深度 缩写 RGB 代表三基色通道&#xf…

Unity中Shader用到的向量的乘积

文章目录 前言一、向量的乘法1、点积2、差积 二、点积(结果是一个标量)1、数学表示法2、几何表示法 三、叉积1、向量叉积的结果 与 两个相乘的向量互相垂直2、判断结果正负方向的方法:右手法则 前言 Unity中Shader用到的向量的点积 一、向量…

华为OD机试 - 最小传输时延 - 深度优先搜索DFS(Java 2023 B卷 100分)

目录 专栏导读一、题目描述二、输入描述三、输出描述四、解题思路五、Java算法源码六、效果展示1、输入2、输出3、说明计算源节点1到目的节点5,符合要求的时延集合 华为OD机试 2023B卷题库疯狂收录中,刷题点这里 专栏导读 本专栏收录于《华为OD机试&…

Gnomon绑定基础(约束 IK 节点)

点约束 方向约束 父约束 目标约束 修改后 对象方向 IK控制柄 直的骨骼,指定IK怎么弯曲 直的骨骼,指定IK怎么弯曲 样条曲线 数学节点 乘除节点 混合节点 注意

免杀对抗-无文件落地分离拆分-文本提取+加载器分离+参数协议化+图片隐写

无文件落地&分离拆分 无文件落地&分离拆分其实就是内存免杀,内存免杀是将shellcode直接加载进内存,由于没有文件落地,因此可以绕过文件扫描策略的查杀。为了使内存免杀的效果更好,在申请内存时一般采用渐进式申请一块可读…

Mysql数据库SQL语句与管理

Mysql数据库基本语句与管理 1、常用的数据类型2、数据库管理3、SQL语句3.1语言分类3.2sql语句 4、DQL查询数据记录4.1查询4.2修改4.3删除4.4alter修改 5、总结 1、常用的数据类型 数据类型 (1)int:整型 用于定义整数类型的数据 (…

使用Spring Boot和MyBatis访问数据库

使用Spring Boot和MyBatis访问数据库 Spring Boot和MyBatis是Java开发中非常流行的框架,它们可以帮助你轻松地构建和管理数据库应用程序。本文将介绍如何使用Spring Boot和MyBatis访问数据库,并提供示例代码以帮助你入门。 准备工作 在开始之前&#x…

什么是FMEA(失效模式和影响分析)?

失效模式和影响分析(FMEA)是一个在开发阶段,用于确定产品或流程可能的风险和失败点的有条理的过程。FMEA团队会研究失效模式,也就是产品或流程中可能出错的地方,以及这些失效可能带来的影响(如风险、损害、…

小程序如何关联公众号来发送模板消息

有时候我们可能需要通过公众号来发送一些小程序的服务通知,比如订单提醒、活动通知等。那么要如何操作呢? 1. 有一个通过了微信认证的服务号。需要确保小程序和公众号是同一个主体的。也就是说,小程序和公众号应该都是属于同一个企业。如果还…

当下IT测试技术员的求职困境

从去年被裁到现在,自由职业的我已经有一年没有按部就班打卡上班了。期间也面试了一些岗位,有首轮就挂的,也有顺利到谈薪阶段最后拿了offer的,不过最后选择了拒绝。 基于自己近一年的面试求职经历,我想聊聊当下大家在求…

博弈论——反应函数

反应函数 1 引言 谢老师的《经济博弈论》书中对反应函数并没有给出一般笼统的定义,而是将其应用与古诺模型并给出了相关解释:反应函数是指在无限策略的古诺博弈模型中,博弈方的策略有无限多种,因此各个博弈方的最佳对策也有无限…

双向认证配置

1.Linux准备环境 openssl 使用openssl version查看openssl版本,如果没有安转openssl,可以执行 yum install openssl 安装 nginx 我们使用nginx来进行https的双向认证,首先我们需要安装nginx并附带SSL 模块 详细的安装过程可以查看 Linux安装n…

Arrays的用法(常见方法的使用)

🐌个人主页: 🐌 叶落闲庭 💨我的专栏:💨 c语言 数据结构 javaEE 操作系统 Redis 石可破也,而不可夺坚;丹可磨也,而不可夺赤。 常见算法的API(Arrays&#xff…

Cookie和Session的作用

最近学习Session和Cookie的总结,我发现好多做测试的朋友对这个的理解不是那么透彻;如果理解了Cookie和session的原理和使用,在我们的测试工作中,有很大的帮助;尤其是在接口测试,性能测试中。。。 目录 一、…

报错注入

1.原理 2.注入手法

tomcat线程模型

NioEndpoint组件 Tomcat的NioEndpoint实现了I/O多路复用模型。 工作流程 Java的多路复用器的使用: 创建一个Selector,在其上注册感兴趣的事件,然后调用select方法,等待感兴趣的事情发生感兴趣的事情发生了,比如可读…

java Spring Boot日志输出格式配置方法

前面 我们文章中 我们已经能把日志控制住了 但前面这些信息 又是什么呢? 如果不了解日志 看起来是挺痛苦的 其实 我们可以将日志分为 一下几个部分去读它 首先是这个日志的输出时间 是在什么时候发生的 然后是 日志的基本 之前我们也讲过 有信息 报错 警告等 然后…

适用于初学者,毕业设计的5个c语言项目,代码已开源

C语言项目集 项目介绍 该项目适用于初学者学习c语言,也适用于高校学生课程设计,毕业设计参考。 项目并不能满足所有人的需求,可进行项目指导,定制开发。 开源地址 c语言项目代码地址 项目列表 该项目包含如下5个管理系统&am…

ESP8266使用记录(三)

通过udp把mpu6050数据发送到PC端 /********************************************************************** 项目名称/Project : 零基础入门学用物联网 程序名称/Program name : ESP8266WiFiUdp_12 团队/Team : 太极创客团队 / Taichi-Maker (w…