以色列理工暑期学习-机器学习中Loss函数的小结

机器学习作为一种优化方法,最重要的一点是找到优化的目标函数——损失函数和正则项的组合;有了目标函数的“正确的打开方式”,才能通过合适的机器学习算法求解优化。

通俗来讲Loss函数是一种关于fitness的测度(关于数据是否合适模型的匹配度),或者是对于预测是否准确的一种判断,如果预测和判断没有错误,则损失函数的值为0;如果有错误则会进行一些“惩罚”措施,也可以称之为代价(风险)函数。借助文献中的原话:“the loss function measures “how bad” the mistake is. The loss can be interpreted as a penalty or error measure.”回到最开始的机器学习的问题上,对于机器学习一般会包含以下五个部分:

  1. 假设空间:如在线性回归、逻辑回归以及SVM中的参数
  2. 测度函数:最大似然或最小损失
  3. 是否有偏和方差的权衡:正则项或MAP最大后验估计
  4. 在假设空间中找到一个好的假设模型:优化模型、全局凸模型等
  5. 验证模型:在测试数据上实现预测,进行交叉验证 通常我们定义Loss function如下:

图1 优化目标:损失函数+正则项

通常我们的误差函数包含以下五种:

  1. 黄金标准损失即 0-1 loss(在理想状态下的判别:下图中蓝色线)
  2. 铰链函数即 hinge loss(用于SVM中soft margin情况:下图中红色线)
  3. 对数函数即 log loss(用于逻辑回归、交叉熵损失:下图中黄色线)
  4. 平方损失即 square loss(用于线性回归:下图中黑色线)
  5. 指数损失即 exponential loss(用于boost情况:下图中绿色线)

下面我们来一一解释这些loss函数:

1. 0-1 Loss作为最为基本的分类器的评价函数,对于错误分类结果的一种计数,比较好理解:

这里需要引用参考文献的原文说明一点:

“The cost function induced by the 0-1-loss is the average misclassification error and the cost function induced by the squared loss is the mean squared error (MSE).

However, there are cost functions which cannot be decomposed using a loss function. For example, the area under the curve (AUC). In other words, all loss functions generate a cost function, but not all cost functions must be based on a loss function.“

cost函数可以归结为0-1Loss平均误分类的误差或由square损失的均方误差(最小二乘法推演);可能在一些问题上有所区分。

2. Hinge Loss作为SVM推导的损失函数去逼近0-1 Loss;很明显可以看出0-1是理想情况下的损失函数显式表达,SVM在感知机(Perceptron)的基础上,通过最大化分类边界(max margin)去进行分类;

然而对于不可分的情况下,引入soft margin,加入松弛,允许分类数据存在异常点:

所以SVM参数中,最重要的就是求解C和hinge loss,不同的情况下soft margin是不一样的,有待优化。所以最终的hinge loss的形式才会变成:

这样的近似对于优化来讲,就可以用一些凸优化的方法,第一项正则项为凸,hinge loss也是凸函数:

3. Log Loss看形式我们基本可以猜测是从概率的方向得到的;看过经典斯坦福的ML课程的同学都知道,先是讲 linear regression 然后引出最小二乘误差,之后概率角度高斯分布解释最小误差。然后讲逻辑回归,使用MLE来引出优化目标是使得所见到的训练数据出现概率最大。

如果我们在逻辑回归模型中,利用逻辑回归sigma函数,带入判别参数,求出最大似然估计式,其对应的就是我们的最小化的交叉熵函数。关于交叉熵与KL divergence关系,读者可以自行查找资料验证。

4. Square Loss就是这里大家最为熟知的最小二乘法在线性回归中的推导,最小二乘法是线性回归的一种,OLS将问题转化为一个凸优化的问题,假设样本和噪声满足高斯分布,最后通过极大似然推导出最小二乘,将样本点到拟合最优的回归线的距离最小,即残差最小化。

5. Exponential Loss 指数损失可能会有些陌生,形式如下:

用在boosting机制中,本公众号的经典算法文章中有关于boosting的介绍。可以作为补充阅读。

其实简明来讲就是通过弱分类器投票进行强分类器的合成,优势有很多,比如,序列性迭代决策,分类函数线介于square和log,对于过拟合的情况不必担心,但是计算量会较大。在学习boosting的过程中,会发现通过弱分类器发现的错误的会被逐渐削弱,弱分类器在已有分类器分出的错误空间上不断切割(分类空间),如图:

上图中,关于迭代停止条件,因为弱分类器的定义就是分类判别概率小于0.5,就像一枚硬币一样。大家应该会比较疑惑,关于参数是怎么得到的,然后去更新每一个弱分类器的权重,下图会根据定理求出上边界

参数a表示分类误差率越小的基本分类器在最终分类器中的作用越大。参考文献【5】中,July在博文中推导了,作为加法模型的指数损失函数的原型:向前分步学习算法的损失函数证明为指数形式,下图中,在做相关公式推导的过程中,也是比较直接的通过已经在算法中设定好的指数形式loss函数,根据最小化函数目标,求导得出a的参数值。

当然,现实情景中的损失函数可以进行自定义,但是需要考虑数据本身和未来通过什么优化的方法去求解更为方便。而且在真正的优化函数中会涉及到正则项,对于特征筛选和防止过拟合问题也是十分关键。需要各位读者认真领会Loss函数和正则项的意义才能更好地设计出符合实际的优化目标函数。

参考文献:

【1】https://www.youtube.com/watch?v=BsqqMVjzxCY

【2】https://github.com/JohnLangford/vowpal_wabbit/wiki/Loss-functions

【3】http://image.diku.dk/shark/sphinx_pages/build/html/rest_sources/tutorials/concepts/library_design/losses.html

【4】http://www.cs.cmu.edu/~yandongl/loss.html

【5】http://blog.csdn.net/v_july_v/article/details/40718799

原文发布于微信公众号 - 智能算法(AI_Algorithm)

原文发表时间:2016-08-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏专知

【干货】计算机视觉实战系列04——用Python做图像处理

【导读】专知成员Hui上一次为大家介绍Numpy包的使用,介绍了Numpy库的一些基本函数和一些简单用法,以及图像灰度变换,这一次为大家详细讲解图像的缩放、图像...

54070
来自专栏人工智能LeadAI

TensorFlow从0到1 | 第十五章 重新思考神经网络初始化

上一篇14 交叉熵损失函数——克服学习缓慢从最优化算法层面入手,将二次的均方误差(MSE)更换为交叉熵作为损失函数,避免了当出现“严重错误”时导致的学习缓慢。 ...

34080
来自专栏深度学习

神经网络相关名词解释

很多人认为深度学习很枯燥,大部分情况是因为对深度学习的学术词语,特别是专有名词很困惑,即便对相关从业者,亦很难深入浅出地解释这些词语的含义。  相信读过此文的圈...

454110
来自专栏AI科技大本营的专栏

实战 | 速度快3倍,大小仅1/4,这项技术教你多快好省搭建深度学习模型

一般来说,神经网络层数越深、参数越多,所得出的结果就越精细。但与此同时,问题也来了:越精细,意味着所消耗的计算资源也就越多。这个问题怎么破?这就要靠剪枝技术了。...

473140
来自专栏算法channel

一文了解Word2vec之Skip-Gram训练网络的3种技术

上一篇 斯坦福大学NLP-cs224课程笔记2:词向量 介绍了 Word2vec 模型的基本思想,得到目标函数,给定中心词求上下文概率,最后还说到用 negat...

20720
来自专栏WD学习记录

机器学习 学习笔记(15) 低维嵌入 主成分分析

在高维情形下出现的数据样本稀疏、距离计算困难等问题,是所有机器学习方法共同面临的严重障碍,被称为维数灾难。

29240
来自专栏汪毅雄的专栏

机器学习之回归(二):广义线性模型(GLM)

本文在上篇线性回归的基础上,延伸到广义线性模型,并把广义线性模型目的、假设条件来源,指数族分布、连接函数等各个函数的关系都进行详细地解释。最后用两个常见的 GL...

2K10
来自专栏Bingo的深度学习杂货店

一文理解机器学习中的各种熵

自信息公式 事件的不确定性越大(概率 pi 越小),自信息 I(pi) 越大。 比如买彩票,中彩票的自信息大,而不中彩票的自信息小。

11820
来自专栏智能算法

GBDT(梯度提升决策树)算法(详细版)

一、前言 通过之前的文章GBDT算法(简明版)对GBDT的过程做了大概的讲解,我们可以了解到GBDT是一种迭代的决策树算法,由多棵决策树组成,所有树的结论累加起...

943110
来自专栏机器学习算法工程师

Mask-RCNN论文解读

Mask R-CNN是基于Faster R-CNN的基于上演进改良而来,FasterR-CNN并不是为了输入输出之间进行像素对齐的目标而设计的,为了弥补这个不足...

73180

扫码关注云+社区

领取腾讯云代金券