详细整理几种常见的损失函数|机器学习

您所在的位置:网站首页 反函数的公式有哪些 详细整理几种常见的损失函数|机器学习

详细整理几种常见的损失函数|机器学习

2024-06-05 15:31| 来源: 网络整理| 查看: 265

机器学习|常见的损失函数

公众号:数据山谷

在学习过程中我们经常会接触到损失函数、代价函数、目标函数三个词语,本文让我们来总结一下机器学习中常见的损失函数和代价函数。

概念

首先让我们来了解一下三种损失函数的概念。

损失函数(Loss Function )是定义在单个样本上的,算的是一个样本的误差。

代价函数(Cost Function )是定义在整个训练集上的,是所有样本误差的平均,也就是损失函数的平均。

目标函数(Object Function)定义为:最终需要优化的函数。等于经验风险+结构风险(也就是代价函数 + 正则化项)。

关于目标函数和代价函数的区别还有一种通俗的区别:

目标函数是最大化或者最小化,而代价函数是最小化。

常见的损失函数 0-1损失函数(0-1 loss function)

函数表达式:

L ( y , f ( x ) ) = { 1 , y ≠ f ( x ) 0 , y = f ( x ) L(y,f(x))=\left\{\begin{matrix} 1, y\neq f(x) \\ 0, y=f(x) \end{matrix}\right. L(y,f(x))={1,y​=f(x)0,y=f(x)​

函数说明:

关于0-1损失函数,也就是说当我们预测错误时,损失函数的值为1,预测正确时,损失函数的值为0,该函数无需考虑预测值和真实值的误差程度,只要预测错误就会输出1。

函数特点:

0-1损失函数直接对应分类判断错误的个数,但是它是一个非凸函数,不太适用。感知机通常会使用该损失函数,在使用的时候我们也可以通过设置一个阈值的方式来放宽它的条件,改变成下面的形式:

L ( y , f ( x ) ) = { 1 , ∣ y − f ( x ) ∣ ⩾ T 0 , ∣ y − f ( x ) ∣ < T L(y,f(x))=\left\{\begin{matrix} 1, |y-f(x)|\geqslant T \\ 0, |y-f(x)| 0,1−yf(x)}

y = ± 1 , f ( x ) = w x + b y=\pm1,f(x)=wx+b y=±1,f(x)=wx+b

函数说明:

hinge损失函数一般用作分类算法的损失函数。

函数特点:

SVM使用的就是hinge损失函数,hinge损失函数表示如果被分类正确,损失为0,否则损失就为1-yf(x)。一般的f(x)是预测值,在[-1,1]之间,y是目标值(-1或1)。我们并不鼓励|f(x)|>1,也就是不鼓励分类器过度的自信,让某个正确分类的样本距离分割线超过1并不会有任何奖励,从而使分类器可以更加专注于整体的误差。Hinge算是函数对异常点、噪声并不敏感,但是相对于log损失函数来说它没有很好的概率解释。 指数损失函数(exponential loss)

函数表达式:

L ( y ∣ f ( x ) ) = exp ⁡ ( − y f ( x ) ) L(y|f(x))=\exp(-yf(x)) L(y∣f(x))=exp(−yf(x))

函数说明:

一种很少接触并使用的损失函数。

函数特点:

AdaBoost算法使用的就是指数损失函数,该损失函数对噪声、离群点非常敏感。 常见的代价函数 均方误差(Mean Squared Error)

函数表达式:

M S E = 1 N ∑ i = 1 N ( y i − f ( x i ) ) 2 MSE=\frac{1}{N}\sum_{i=1}^N(y^i-f(x^i))^2 MSE=N1​∑i=1N​(yi−f(xi))2

函数说明:

均方误差是指预测值与真实值之差平方的期望值;MSE可以评价数据的变化程度,MSE的值越小,说明预测模型描述实验数据具有更好的精确度。

函数特点:

均方误差通常用来做回归问题的代价函数。 均方根误差(Root Mean Squared Error)

函数表达式:

R M S E = 1 N ∑ i = 1 N ( y i − f ( x i ) ) 2 RMSE=\sqrt{\frac{1}{N}\sum_{i=1}^N(y^i-f(x^i))^2} RMSE=N1​∑i=1N​(yi−f(xi))2 ​

函数说明:

均方根误差是均方误差的算术平方根,能够直观观测预测值与实际值的离散程度。

函数特点:

通常用来作为回归算法的性能指标 平均绝对误差(Mean Absolute Error)

函数表达式:

M A E = 1 N ∑ i = 1 N ∣ y i − f ( x i ) ∣ MAE=\frac{1}{N}\sum_{i=1}^{N}|y^i-f(x^i)| MAE=N1​∑i=1N​∣yi−f(xi)∣

函数说明:

平均绝对误差是绝对误差的平均值 ,平均绝对误差能更好地反映预测值误差的实际情况。

函数特点:

通常用来作为回归算法的性能指标。 交叉熵代价函数(Cross Entry)

函数表达式:

H ( p , q ) = − ∑ i = 1 N p ( x i ) log ⁡ q ( x − i ) H(p,q)=-\sum_{i=1}^Np(x^i)\log q(x^{-i}) H(p,q)=−∑i=1N​p(xi)logq(x−i)

函数说明:

交叉熵是用来评估当前训练得到的概率分布与真实分布的差异情况,减少交叉熵损失就是在提高模型的预测准确率。其中p(x)指的是真实分布的概率,q(x)是模型通过数据计算出来的概率估计。

函数特点:

通常用做分类问题的代价函数。

举例说明:

逻辑回归(二分类)的损失函数:

L o s s = − 1 N ∑ i = 1 N ( y ( i ) l o g ( h ( θ ) ( x ( i ) ) ) + ( 1 − y ( i ) ) l o g ( 1 − h ( θ ) ( x ( i ) ) ) ) Loss = -\frac{1}{N}\sum_{i=1}^{N}(y^{(i)}log (h_{(\theta) }(x^{(i)}))+(1-y^{(i)})log(1- h_{(\theta) }(x^{(i)}))) Loss=−N1​∑i=1N​(y(i)log(h(θ)​(x(i)))+(1−y(i))log(1−h(θ)​(x(i))))

这里的h(x)可以是sigmoid函数,也可以是深度学习中的其他激活函数。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3