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


    习题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}
    本期使用公式编辑器:
  • 相关阅读:
    Mermaid画流程图可以实现从一条线中间引出另外一条线吗
    Google-CTF-2016-Stego.pcap数据包解析
    内容 总结
    嵌入式养成计划-40----C++菱形继承--虚继承--多态--模板--异常
    匿名内部类和Lambda表达式
    死锁、活锁、饥饿
    URLDNS利用链分析
    【笔记】从零开始大模型开发与微调:基于PyTorch与ChatGLM
    【Android】使用Retrofit2发送异步网络请求的简单案例
    网络技术缩写术语大全,还有中英文对比哦。
  • 原文地址:https://blog.csdn.net/KLZUQ/article/details/133250583