常见损失函数

简介

机器学习算法的关键一环是模型评估,而损失函数定义了模型的评估指标;可以说,没有损失函数就无法求解模型参数。不同的损失函数优化难度不同,最终得到的模型参数也不同,针对具体的问题需要选取合适的损失函数。

常见损失函数曲线.png

损失函数汇总

分类问题 - 损失函数
0-1 损失

0-1损失是指预测值和目标值不相等为1,否则为0;

  • 特点:
    (1)0-1损失能够直观地刻画分类的错误率,但是由于其非凸、非光滑的特点,使得算法很难直接对该函数进行优化;
    (2)感知机 就是用的这种损失函数;
Hinge 损失函数

Hinge损失函数标准形式如下:

  • 特点:
    (1)hinge损失函数表示如果被分类正确,损失函数为0,否则损失为。支持向量机(SVM) 使用的就是hinge loss;
    (2)hinge 损失函数在 处不可导,因此不能用梯度下降法进行优化;
交叉熵损失

交叉熵损失函数标准形式:

  • 特点:
    (1)本质上是一种对数似然函数,可用于二分类和多分类任务中;
    (2)交叉熵损失函数也是0-1损失函数的光滑凸上界;
    (3)逻辑回归 使用的就是交叉熵损失函数;
指数损失函数

  • 特点:
    (1)对离群点、噪声非常敏感;常用在 AdaBoost算法 中。
回归问题 - 损失函数
平方损失函数

  • 特点:平方损失函数时光滑函数,能够用梯度下降法进行优化。然而,当预测值距离真实值越远时,平方损失函数的惩罚力度越大,因此它对异常点比较敏感。
绝对值损失

  • 特点:相比于平方损失函数,绝对损失函数对异常点更鲁棒一些。但是,绝对损失函数在 处无法求导。
Huber损失函数

Huber损失函数.png
  • 特点:Huber损失函数在 较小时为平方损失,在 较大时为线性损失,处处可导,且对异常点鲁棒。

参考资料

  • 《百面机器学习》 - 诸葛越
  • 常见的损失函数(loss function)总结
    https://mp.weixin.qq.com/s/DTEM82Oyia4Lx0Hh9gtaxA

你可能感兴趣的:(常见损失函数)