【机器学习300问】67、均方误差与交叉熵误差,两种损失函数的区别?

一、均方误差(Mean Squared Error, MSE)

        假设你是一个教练,在指导学生射箭。每次射箭后,你可以测量子弹的落点距离靶心的差距(误差)。MSE就像是计算所以射击误差的平方后的平均值。它强调了每一次偏离靶心的大小。

(1)定义与公式

        均方误差损失函数是衡量模型预测值和实际值差异的常用指标,定义为预测值与真实值之间差异的平方和的平均值。

        均方误差公式如下:

 L(y, \hat{y}) = \frac{1}{n} \sum_{i=1}^{n}(y_i - \hat{y_i})^2

        其中,y_i是真实的目标值,\hat y_i是模型预测的值,n是样本数量。

        均方误差损失对大的误差“惩罚”更严重,因为它将误差平方,这意味着大误差的影响会被放大。

(2)导数

        MSE的导数用于指导模型参数更新的方向和步长。为了求导方便,可以给损失函数乘上个二分之一:

L(y, \hat{y}) = \frac{1}{2n} \sum_{i=1}^{n}(y_i - \hat{y_i})^2

        对于单个样本来说,参数\theta求偏导得到的公式如下:

\frac{dL}{d\hat{y_i}} = 2(y_i - \hat{y_i})

\frac{dL}{d\theta _j} =\frac{dL}{d\hat{y_i}}\frac{d\hat{y_i}}{d\theta _j} = -(y_i - \hat{y_i})\frac{d\hat{y_i}}{d\theta _j}

        这意味着对于每一个参数,模型会沿着误差方向的反方向进行调整,调整幅度与误差大小和模型输出对参数的敏感度(偏导)成正比。


二、交叉熵误差(Cross-Entropy Loss)

        假设你正在教一群学生区分猫和狗的图片。每次他们判断时,你就会根据他们回答的“是猫”或“是狗”的概率与实际标签对比,给他们打分。交叉熵就像是衡量他们的答案与正确答案之间的“信息距离”,误差分数越低表示他们的判断越接近真相。

(1)定义与公式

        交叉熵损失是由信息论中的交叉熵概念发展而来的,它衡量的是在给定真实标签的条件下,模型预测概率分布与真实的概率分布之间的差异。当预测值与实际标签越接近时,交叉熵损失越小。

        以二分类为例交叉熵误差的公式:

L(y, \hat{y}) = -\frac{1}{n} \sum_{i=1}^{n}[y_i \log(\hat{y_i}) + (1 - y_i) \log(1 - \hat{y_i})]

        其中的y_i是真实的目标值,\hat y_i是模型预测的值,n是样本数量。在二分类问题中y \in \{0,1\},而预测值\hat y_i也可以看成是模型预测的相应类别概率p。所以有些公式也写成(下面公式只列举了一个样本,没有相加起来求平均):

L(y,p)=-ylog(p)-(1-y)log(1-p)

(2)导数

        交叉熵损失的导数有助于指导模型调整其输出概率。对\hat y_i求导公式如下:

\frac{dL}{d\hat{y_i}} = \frac{-y_i}{\hat{y_i}} + \frac{1-y_i}{1-\hat{y_i}}

        导数告诉模型,当预测概率p低于真实标签y时,应增加输出概率,反之若预测概率过高则应降低。调整幅度同样取决于输出对参数的敏感度。


三、两者使用场景的区别

  • 均方误差用于回归问题:当目标是预测连续数值型变量时,如预测房价、气温、销售额、股票价格等,均方损失是最常用的损失函数。这类任务要求模型输出一个具体的数值,而非离散的类别标签。
  • 交叉熵误差用于分类问题:当目标是预测离散的类别标签时,尤其是对于多类别的分类任务(包括二分类),交叉熵损失是首选的损失函数。例如,图像分类(区分猫、狗、鸟等)、文本分类(判断新闻主题、情感极性)、疾病诊断(判断患者是否患病)等。

        当处理连续数值预测的回归任务时,优先考虑使用均方损失(MSE)。而当面对离散类别标签的分类任务时,交叉熵损失(CE Loss)通常是更合适的选择。

  • 31
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值