【论文翻译】:(arxiv 2023)LOSS FUNCTIONS AND METRICS IN DEEP LEARNING. A REVIEW 深度学习中的损失函数和度量:回顾

【论文翻译】:(arxiv 2023)LOSS FUNCTIONS AND METRICS IN DEEP LEARNING. A REVIEW 深度学习中的损失函数和度量:回顾

摘要

深度学习的重要组成部分之一是选择用于训练和评估模型的损失函数和性能指标。本文回顾了深度学习中最流行的损失函数 和性能测量。我们研究了每种技术的优点和局限性,并说明了它们在各种深度学习问题中的应用。我们的回顾旨在给一个最常见的深度学习任务中使用的不同损失函数和性能指标的全面图片,并帮助从业者为他们的特定任务选择最佳方法。

1. Introduction 介绍

深度学习已经成为解决各个领域复杂问题的强大工具,例如图像和语音识别,自然语言处理和计算机视觉。深度学习的关键组成部分之一是选择用于训练 和评估模型的损失函数和性能指标。损失函数衡量模型能在多大程度上近似期望的输出,而性能指标评估模型对未知数据做出准确预测的能力。

选择合适的损失函数和性能指标对于在深度学习 任务中获得良好的性能至关重要。然而,由于可用的选项范围很广,从业者为其特定任务选择最合适的方法可能具有挑战性。

本文旨在全面回顾深度学习中最常用的损失函数和性能指标。我们将讨论每种方法的优点和局限性,并提供它们在各种深度学习任务中的应用示例。我们首先讨论回归和分类最常用的损失函数, 包括均方误差、交叉熵和铰链损失。然后,我们解释了它们的优点和局限性,并在通常情况下使用 。例如,均方误差广泛用于回归任务,而交叉熵 用于分类任务。我们还将研究更复杂的任务,如对象检测、分割、人脸 识别和图像生成。

在此过程中,我们回顾了每个类别中最常用的性能指标,解释了如何计算这些指标 ,它们的优点和局限性,以及通常使用它们的时间。

2. Loss Functions vs. Performance Metrics 损失函数 vs. 性能度量

损失函数和性能度量都用于评估深度学习模型的性能,但它们服务于不同的目的。在训练过程中使用损失函数来优化模型的参数。它测量模型的预测输出和预期输出之间的差异,训练的目标是最小化这种差异。另一方面,使用性能指标来评估训练后的模型。它衡量模型在推广新数据和做出准确预测方面的能力。性能指标还比较不同的模型或配置,以确定性能最佳的模型。

下面的列表描述了损失函数和性能指标之间的常见区别:

  • 优化与评估:如前所述,损失函数在训练过程中优化模型的参数。相比之下,性能指标评估模型在训练后的性能。
  • 模型依赖:损失函数依赖于模型的体系结构和特定的任务。然而,性能指标较少依赖于模型的体系结构,并且可以用于比较不同的模型或单个模型的配置。
  • 最小化vs.最大化:训练深度学习模型的目标是最小化损失函数。然而,评估模型的目的是最大化性能指标——除了误差性能指标,如均方误差。
  • 解释:损失函数的解释可能具有挑战性,因为它们的值通常是任意的,并且取决于特定的任务和数据。另一方面,性能指标通常更易于解释,因为它们用于不同的任务。

2.1 Properties of loss functions 损失函数的性质

在为特定任务选择损失函数时,需要考虑损失函数的一系列属性:

  • 凸性:如果任何局部极小值是全局极小值,则损失函数是凸的。凸损失函数是理想的,因为它们可以很容易地使用基于梯度的优化方法进行优化。
  • 可微性:如果损失函数对模型参数的导数存在且连续,则损失函数是可微的。可微分性是必不可少的,因为它允许使用基于梯度的优化方法。
  • 鲁棒性:损失函数应该能够处理异常值,而不受少数极值的影响。
  • 平滑:损失函数应该有连续的梯度,没有急剧的过渡或尖峰。
  • 稀疏性:促进稀疏性的损失函数应该鼓励模型产生稀疏输出。这在处理高维数据和重要特征数量较少的情况下非常有用。
  • 多模态:如果一个损失函数有多个全局最小值,那么它被认为是多模态的。多模态损失函数对于需要模型学习多个数据表示的任务非常有用。
  • 单调性:如果一个损失函数的值随着预测输出接近真实输出而减小,那么它就是单调的。单调性保证了优化过程是朝着正确的解移动的。
  • 不变性:如果损失函数在特定的输入或输出变换下保持不变,则它是不变性的。在处理可能以各种方式(如旋转、缩放或平移)进行转换的数据时,不变性很有价值。

下面几节将回顾常见深度学习任务的损失函数和性能指标。表1 总结了常见的与视觉相关的任务及其使用的常见损失函数和性能指标。

3. Regression 回归

回归是机器学习中的一个监督学习问题,旨在基于 一个或多个输入特征预测连续输出值。常用的回归模型包括线性回归、多项式回归和树回归。

线性回归假设自变量和因变量之间存在线性关系。它由方程表示
在这里插入图片描述
其中 y ^ \hat{y} y^表示预测值, β 0 \beta_0 β0表示截距或偏差, β 1 . . . β n \beta_1...\beta_n β1...βn表示相对应输入特征或者独立变量 x 1 . . . . x n x_1....x_n x1....xn的权重或因子, n n n表述输入特征的数量。目标是找到偏差和系数值,使预测值和实际值之间的差异最小化 值,通常使用损失函数,如均方误差(MSE)或平均绝对误差(MAE)。

在多项式回归中,自变量 x x x和因变量 y y y之间的关系建模为n次多项式。这对于捕获输入和输出 变量之间复杂的非线性关系非常有用。多项式回归方程的一般形式由式给出
在这里插入图片描述
其中 y ^ \hat{y} y^表示预测值, β 0 \beta_0 β0表示偏差或截距, β 1 . . . β n \beta_1...\beta_n β1...βn表示对应于x的次幂的因子,n是多项式的次幂。与线性回归一样,目标是找到偏差和系数,使预测值与实际值之间的差异最小化。然而,当模型变得过 复杂时,高阶多项式往往会过度拟合,以至于它在训练数据上表现良好,但在未见过或测试数据上表现不佳。

另一方面,回归树是一种决策树,其输出是连续变量。与建立单一预测方程的线性和多项式回归模型不同,回归树将输入空间分成较小的区域,其中使用简单模型。树是在训练期间通过称为二进制递归分区的过程构建的。通过遍历树直到到达叶节点来预测新实例的输出。与叶节点相关的值通常是该节点中训练样本的平均目标值。与多项式回归不同,该模型可以捕获复杂的非线性关系和特征之间的相互作用 ,而无需显式指定它们。然而,如果没有适当修剪或控制,回归树也会过度拟合训练数据,导致在新的、看不见的数据上的泛化性能差。图1显示了一个回归树。
在这里插入图片描述
回归用于各种领域,包括金融、医疗保健、社会科学、体育和工程。一些 实际应用包括房价预测[19]、能源消耗预测[20]、医疗保健和疾病 预测[21]、股价预测[22]和客户终身价值预测[23]。

在下面的小节中,我们将回顾用于回归的最常见的损失函数和性能指标。

3.1 Regression Loss Functions 回归损失函数

表2显示了用于回归的常见损失函数及其应用。下面的小节将更详细地描述这些损失函数。
在这里插入图片描述

3.1.1 Mean Squared Error (MSE) 平均均方误差

均方误差(Mean Square Error, MSE)测量预测值与真实值之间的平方差的平均值[24]。MSE损失函数可以在数学上定义为
在这里插入图片描述
其中 n n n表示样本的数量, y i y_i yi表示第 i i i个样本的真实值, y ^ i \hat{y}_i y^i表示第 i i i个样本的预测值。MSE损失函数具有以下性质:

  • 非负性:由于预测值和实际值之间的差异是平方的,因此MSE始终为非负。值为0表示完美拟合,而较大的值对应于预测值与实际值之间较大的差异 。
  • 二次性:MSE是预测误差的二次函数,这意味着它更重视较大的误差而不是较小的误差。这个属性使其对异常值敏感,并可能导致模型优先考虑减少大错误而不是小错误。
  • 可微:MSE是模型参数的光滑连续函数。这个属性允许梯度的有效计算,这对于梯度下降等优化算法是必不可少的。
  • 凸性:MSE是一个凸函数,这意味着它有一个唯一的全局最小值。这一特性简化了优化过程,因为基于梯度的优化技术可以收敛到全局最小值,而不会陷入局部最小值。然而,对于深度神经网络,由于多层非线性激活函数,误差景观通常是非凸的,导致复杂和高度非线性的优化问题。
  • 尺度依赖:MSE的值取决于目标变量的尺度,这使得很难在不同的问题或目标变量尺度上比较模型的性能。为此,研究人员经常使用均方根误差(RMSE)或均方百分比误差(MSPE)。

MSE,也称为L2损失,在计算上很简单。然而,由于误差项的平方,它对异常值不具有鲁棒性。因此,如果数据包含异常值,最好使用另一种损失函数,例如平均绝对误差 (MAE),它对异常值更具鲁棒性,或者Huber loss,它是MSE和MAE的组合。MSE也被用作性能度量。

3.1.2 Mean Absolute Error (MAE) 平均绝对误差

平均绝对误差(MAE)是回归问题中另一个常用的损失函数。它测量预测值与真实值之间绝对差值的 平均值[25]。MAE损失可定义为:
在这里插入图片描述其中 n n n为样本数, y i y_i yi y ^ i \hat{y}_i y^i为第 i i i个样本的真实值和预测值。MAE损失函数具有以下性质:

  • 非负姓:像MSE一样,MAE总是非负的,因为它取预测值和实际值之间的差值的绝对值。值为0表示完美拟合,而较大的值对应于预测值与实际值之间的差异较大。
  • 线性:MAE是预测误差的线性函数,它平等地对待所有误差,而不管它们的 大小。这一特性使得MAE对异常值的敏感性低于MSE,因为它不会不成比例地强调大误差。
  • 鲁棒性:由于其线性特性和对异常值的敏感性降低,MAE被认为是比MSE更鲁棒的损失函数。这使得它适用于预期存在异常值或误差分布不对称的应用程序。
  • 不可微性:虽然MAE是连续的,但由于绝对值函数,当预测误差为零时,MAE是不可微的。这个属性可以使特定算法的优化过程复杂化, 特别是那些依赖于基于梯度的技术。然而,亚梯度方法[26,27,28,29]可用于克服这一问题。
  • 凸性:MAE是一个凸函数,这意味着它有一个唯一的全局最小值。这个特性简化了 优化过程,因为基于梯度的优化技术可以收敛到全局最小值,而不会陷入局部最小值。与MSE一样,由于多层非线性激活函数,MAE对于深度神经网络是非凸的。
  • 尺度相关:与MSE一样,MAE的值取决于目标变量的尺度,因此很难比较模型在不同问题或目标变量尺度上的性能。为了解决这个问题, 研究人员经常使用尺度不变指标,如平均绝对百分比误差(MAPE)或标准化 平均绝对误差(NMAE)来比较不同尺度或单位的模型。

被称为L1损失的MAE常被用作评估指标。它计算简单,易于理解,但它不具有MSE的光滑和可微特性,对异常值不敏感。

3.1.3 Huber Loss Huber损失

Huber损失结合了均方误差(MSE)和平均绝对误差(MAE)的特性。Huber 损失在保持平滑性和可微性的同时,对异常值的鲁棒性比MSE更强[30]。将 Huber损失函数定义为
在这里插入图片描述
其中 y y y为真值, y ^ \hat{y} y^为预测值, δ δ δ为用户指定的阈值。当误差较小时,Huber损失函数的行为类似于MSE损失函数,当误差较大时, Huber损失函数的行为类似于MAE损失函数。这个特性使得Huber损失函数对异常值比MSE损失函数更鲁棒,因为它对大误差不太敏感。

Huber损失函数是可微的,这使得它适合用于基于梯度的优化算法 ,如随机梯度下降(SGD)。它通常用于线性回归和时间序列预测,因为它可以处理数据中的异常值和噪声。它也用于数据可能包含异常值或噪声的鲁棒优化问题。

阈值 δ δ δ可以通过尝试不同的值和评估模型的性能来经验选择。但是, 通常的做法是,如果数据有很多噪声,则将 δ δ δ设置为一个小值,如果数据有离群值,则将 δ δ δ设置为一个大值。

3.1.3 Log-Cosh Loss 对数余弦损失

Log-Cosh损失函数是光滑可微的。它通常用于数据 可能包含异常值或噪声的回归问题[31]。Log-Cosh损耗定义为:
在这里插入图片描述
其中 y y y为真实值, y ^ \hat{y} y^为预测值, n n n为样本数。Log-Cosh损失函数的优点之一是,它对异常值的敏感性低于均方误差 (MSE),因为它不受极端数据值的影响。然而,它对小误差比Huber损失更敏感。

3.1.5 Quantile Loss 分位数损失

该函数也被称为分位数回归损失,通常用于预测区间而不是单个值 [32]。设分位数为 q q q,其中 0 < q < 1 0 < q < 1 0<q<1,预测值 y ^ \hat{y} y^,实际值为 y y y,则 分位数损失为
在这里插入图片描述
m a x ( a , b ) max(a, b) max(a,b)表示 a a a b b b的最大值。预测过低时使用表达式 y − y ^ y−\hat{y} yy^,预测过高时使用表达式和 y ^ − y \hat{y}−y y^y。对于低估损失按 q q q缩放,对于高估损失按 ( 1 − q ) (1 - q) (1q)缩放。请注意,当q = 0.5时,分位数损失相当于平均绝对误差(MAE)的泛化 ,允许对低估和高估进行不对称惩罚。

当模型的预测值超过实际值时,就会出现高估。低估是高估的反义词。当模型的预测值低于实际值时,就会出现这种情况。分位数回归的实际例子包括:

  • 财务风险管理:估计风险价值(VaR)和条件风险价值(CVaR),它们是风险管理中使用的财务风险度量 。这些基于分位数的措施有助于了解极端损失的可能性[33]。
  • 供应链和库存管理:预测产品需求可以从分位数损失中受益,因为它可以给出潜在需求范围而不是单一点,这有助于管理库存并减少缺货或库存过剩的情况[34]。
  • 能源生产:预测电力输出,具有一系列潜在输出以管理电网稳定性[35]。
  • 经济预测:预测经济指标可以使用分位数回归给出一系列可能的值, 可以帮助规划和决策[36]。
  • 天气预报:可用于预测温度或降雨等变量,在这些变量中,提供一个范围 比单点估计提供更多信息[37,38]。
  • 房地产定价:预测一个范围内的房地产价格可能比预测单一价格更有用 [39]。
  • 医疗保健:分位数回归可以根据一组特征预测一系列可能的患者结果,这可以 帮助医生做出更明智的决策[40]。
3.1.6 Poisson Loss 泊松损失

泊松损失用于回归任务,当目标变量表示计数数据,并假设遵循泊松分布。泊松损失来源于泊松分布的负对数似然。它最大化在给定预测值的情况下观测计数数据的可能性[41]。它的定义是
在这里插入图片描述其中 y i y_i yi为实际目标值, y ^ i \hat{y}_i y^i为预测值, n n n为样本个数。当将泊松损失函数应用于模型计数数据时,我们必须确保预测值是非负的,因为负计数在现实场景中没有意义。为了实现这一点,通常使用链接函数将输入特征的线性组合转换为非负输出,然后可以将其解释为预期计数。

链接函数是从线性预测器到预测值的映射。在泊松回归的背景下, 指数函数是链接函数的常用选择,因为它保证了非负输出。 指数函数有如下形式:
在这里插入图片描述
其中 w \text{w} w是权重向量, x i \text{x}_i xi是第 i i i个观测值的输入特征向量, b b b是偏置项。使用指数函数作为链接函数,我们确保预测值 y ^ i \hat{y}_i y^i总是非负的。在 这种情况下,泊松损失函数可以写成
在这里插入图片描述

后面的不想看了,感觉没有任何实际意义。纯新手论文

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值