一、均方误差(Mean Squared Error, MSE)
假设你是一个教练,在指导学生射箭。每次射箭后,你可以测量子弹的落点距离靶心的差距(误差)。MSE就像是计算所以射击误差的平方后的平均值。它强调了每一次偏离靶心的大小。
(1)定义与公式
均方误差损失函数是衡量模型预测值和实际值差异的常用指标,定义为预测值与真实值之间差异的平方和的平均值。
均方误差公式如下:
其中,是真实的目标值,是模型预测的值,是样本数量。
均方误差损失对大的误差“惩罚”更严重,因为它将误差平方,这意味着大误差的影响会被放大。
(2)导数
MSE的导数用于指导模型参数更新的方向和步长。为了求导方便,可以给损失函数乘上个二分之一:
对于单个样本来说,参数求偏导得到的公式如下:
这意味着对于每一个参数,模型会沿着误差方向的反方向进行调整,调整幅度与误差大小和模型输出对参数的敏感度(偏导)成正比。
二、交叉熵误差(Cross-Entropy Loss)
假设你正在教一群学生区分猫和狗的图片。每次他们判断时,你就会根据他们回答的“是猫”或“是狗”的概率与实际标签对比,给他们打分。交叉熵就像是衡量他们的答案与正确答案之间的“信息距离”,误差分数越低表示他们的判断越接近真相。
(1)定义与公式
交叉熵损失是由信息论中的交叉熵概念发展而来的,它衡量的是在给定真实标签的条件下,模型预测概率分布与真实的概率分布之间的差异。当预测值与实际标签越接近时,交叉熵损失越小。
以二分类为例交叉熵误差的公式:
其中的是真实的目标值,是模型预测的值,是样本数量。在二分类问题中,而预测值也可以看成是模型预测的相应类别概率。所以有些公式也写成(下面公式只列举了一个样本,没有相加起来求平均):
(2)导数
交叉熵损失的导数有助于指导模型调整其输出概率。对求导公式如下:
导数告诉模型,当预测概率p低于真实标签y时,应增加输出概率,反之若预测概率过高则应降低。调整幅度同样取决于输出对参数的敏感度。
三、两者使用场景的区别
- 均方误差用于回归问题:当目标是预测连续数值型变量时,如预测房价、气温、销售额、股票价格等,均方损失是最常用的损失函数。这类任务要求模型输出一个具体的数值,而非离散的类别标签。
- 交叉熵误差用于分类问题:当目标是预测离散的类别标签时,尤其是对于多类别的分类任务(包括二分类),交叉熵损失是首选的损失函数。例如,图像分类(区分猫、狗、鸟等)、文本分类(判断新闻主题、情感极性)、疾病诊断(判断患者是否患病)等。
当处理连续数值预测的回归任务时,优先考虑使用均方损失(MSE)。而当面对离散类别标签的分类任务时,交叉熵损失(CE Loss)通常是更合适的选择。