Loss Function总结

来源:互联网 发布:网络推广赚钱 编辑:程序博客网 时间:2024/06/05 14:44

开始比较纠结于Cost/Error Function和Loss Function之间的区别,后来发现它们在数学优化问题上其实是一回事,见这里。因此以下主要以LossFunction进行总结。
一、什么是Loss Function
wiki上有一句解释很到位,引用一下:The loss function quantifies the amount by which the prediction deviates from the actual values。Loss Function中文损失函数,适用于用于统计,经济,机器学习等领域,虽外表形式不一,但其本质作用应是唯一的,即用于衡量最优的策略。本章只从机器学习(ML)领域来对其进行阐述,机器学习其实是个不停的模拟现实的过程,比如无人驾驶车,语音识别,流感预测,天气预报,经济周期行为等众多领域,是互联网发展过程中“科学家”(暂且这么称呼吧)对于人类文明进步的另一个贡献,其本质就是要建立一个数学模型用于模拟现实,越接近真实越好,那么转化为数学语言即LF越小越好,因为LF值代表着现实与学习预测的差距,这个不停的缩小LF值的过程就称为优化,如果理解这些的话,就不难理解优化问题对于ML来说的重要性了,如水之于鱼,魂之于人!
通常而言,损失函数由损失项(loss term)和正则项(regularization term)组成。可以参考这篇文章:Loss functions; a unifying view。
(1)损失项
•对回归问题,常用的有:平方损失(for linear regression),绝对值损失;
•对分类问题,常用的有:hinge loss(for soft margin SVM),log loss(for logistic regression)。
说明:
•对hinge loss,又可以细分出hinge loss(或简称L1 loss)和squared hinge loss(或简称L2 loss)。国立台湾大学的Chih-Jen Lin老师发布的Liblinear就实现了这2种hinge loss。L1 loss和L2 loss与下面的regularization是不同的,注意区分开。
(2)、正则项
•常用的有L1-regularization和L2-regularization。上面列的那个资料对此还有详细的总结。

二、几种Loss Function概述
如上一节所述,LF的概念来源于机器学习,同时我们也知道机器学习的应用范围相当广泛,几乎可以涵盖整个社会领域,那么自然不同的领域多少会有不同的做法,这里介绍在一般的机器学习算法中常见的几种,具有概括性。
2.1一般形式
loss function
该方程分为两个部分:L+R,L表示loss term,其中 这里写图片描述这里写图片描述,w表示学习出来的权重,该公式的作用很明显了,用来收集现实与学习结果的差距,是LF的核心部分,LF的不同大部分也是指的loss term的不同;R表示范式,范式存在的意思是进行约束,以防止优化过偏。
2.2 一般的loss term有5种
•Gold Standard (ideal case)
•Hinge (SVM, soft margin)
•Log (logistic regression, cross entropy error)
•Squared loss (linear regression)
•Exponential loss (Boosting)
分别用于5种常见的机法器学习算法
Gold Standard(标准式)用于理想sample,这种一般很少有实践场景,这个方法的作用更多的是用来衡量其他LF的效用;Hinge用于soft-margin svm算法;log用于LR算法(Logistric Regression);squared loss用于线性回归 (Liner Regression)和Boosting。
(1)Gold Standard loss,,一般我们称这个LF为L01,从公式中可以看出该公式的主要职责是在统计多少个错误的case,很明显现实数据不允许如此简单的统计方式
这里写图片描述
从公式我们可以很清楚的看出,当m<0的时候L=1,m<0说明预测失败,那么Loss则加1,这样将错误累加上去,就是Gold Standard loss的核心思想。
(2)hinge loss,常用于“maximum-margin”的算法,公式如下:
这里写图片描述
这个公式也很好理解,其中这里写图片描述表示样本i在模型下的预测值的样本i的类标记{-1,1}的乘积,这个乘积可以用来检验预测与真实结果是否一致来表示分类是否正确,当乘积大于0时表示分类正确,反之亦然。
(3)log loss(一般又称为基于最大似然的负log loss):
这里写图片描述
这里写图片描述
其中这里写图片描述是sigmoid函数。
最大似然思想指的是使得某种情况发生的概念最大的思想,根据LR的思想(参考logistic回归深入篇(1))),我们知道g(w)对应的simod图,其将实域上的值映射到区间{0,1},因此我们可以把g(w)看作事件A发生的概率,那么1-g(w)可以看作事件A不发生的概率,那么公式likelihood表达的含义就很明显了,y也是一个概率值,可以看做是对事件A与A逆的分量配额,当然我们的期望是A发生的可能越大越好,A逆发生的可能越小越好!因此likelihood是一个max的过程,而loss是一个min的过程,因此log loss是负的likelihood。
(4)square loss
这里写图片描述
这个loss很好理解,就是平方差。
(5)boosting loss
这里写图片描述
这个loss主要是基于指数函数的loss function。

三、几种Loss Function的效果对比
这里写图片描述
上图是多LF的效果对比图,其中蓝色的是Gold loss,可以看作水平基线,其他的loss的效果可以基于与它的比较结果,首先,红色的是Hinge loss,黄色的是log loss,绿色的是boosting loss,黑色的是square loss,从上图可以看出以下结论: Hinge,log对于噪音函数不敏感,因为当m<0时,他们的反应不大,而黑线与绿线可能更爱憎分明,尤其是黑线,因此,在很多线性分类问题中,square loss也是很常见的LF之一。

参考资料:
损失函数(loss function)
损失函数(Loss Function)-(比较详细)
概率估计与Loss function
对线性回归,logistic回归和一般回归的认识
[machine learning] Loss Function view
机器学习入门:线性回归及梯度下降
A Library for Large Linear Classification
Loss function维基百科
斯坦福大学机器学习第六课“逻辑回归(Logistic Regression)”
最小二乘、极大似然、梯度下降有何区别?-知乎
SVM中的正则化和损失是什么?-知乎
Standford机器学习 线性回归CostFunction和Normal equation的推导
为什么正则化项就可以防止过拟合?-知乎
loss function-推酷

0 0