机器学习损失函数、L1-L2正则化的前世今生

前言:

我们学习一个算法总是要有个指标或者多个指标来衡量一下算的好不好,不同的机器学习问题就有了不同的努力目标,今天我们就来聊一聊回归意义下的损失函数、正则化的前世今生,从哪里来,到哪里去。

一.L1、L2下的Lasso Regression

和Ridge Regression

对于机器学习,谈到正则化,首先映入脑子的可能是L1正则化、L2正则化,接着又跑出来Lasso Regression、Ridge Regression,那么恭喜你,你已经走在了机器学习、人工智能的康庄大道上了,至少短期来看这条路还是不错滴。下面我们就正式开聊,小板凳走起。

介于大家可能对L1、L2比较熟悉,我们就先从L1、L2这种特殊的正则化聊到他们的原始样貌,知道她从哪里来要到哪里去,走一条从特殊到一般的路,一条更加广阔看的更远的路。

But不同的方向,不同的学科领域对一些相同的知识点有着不同的爱称,为了交流方便,在这里简单啰嗦一下,L1、L2这种在机器学习方面叫做正则化,统计学领域的人喊她惩罚项,数学界会喊她范数。整体来说本质不变,源于数学。

L1使用的是绝对值距离,也叫做街区(City-Block)距离(曼哈顿距离),L2使用的是平方距离,也叫做欧式(Euclidean)距离。当盐啦,还有切比雪夫距离等等。

帮助

敲黑板,不管是绝对值还是平方还是切比雪夫距离都是明氏距离(明考夫斯基距离)的特殊形式额已,大家感兴趣的自己查一下,不继续往下展开了,下一次可以具体写一写更多的别样式的距离。好像跑偏了,赶紧转回来。

耳熟能详的Lasso Regresssion是线性回归的一种,下面看看Lasso的简介:

Lasso是由1996年Robert Tibshirani首次提出,全称Least absolute shrinkage and selection operator。该方法是一种压缩估计。它通过构造一个罚函数得到一个较为精炼的模型,使得它压缩一些系数,同时设定一些系数为零。因此保留了子集收缩的优点,是一种处理具有复共线性数据的有偏估计。

Lasso Regresssion使用的就是L1正则化, 下面就是Lasso Regression 的Loss Function的样子,是不是很美丽:

简单说一下,第一个SUM(∑)里面可以看出来是一个线性回归求损失平方,第二个SUM(∑)是线性回归中系数的服从条件,用来约束解的区域,凸优化中的约束求解一般都长这个样子。

此外,Lasso Regression的整体损失求极小的样子改成拉格朗日形式就是下面这个式子的模样:

是不是找到了数学分析或者高等数学的感觉啦! 从式子里可以看到回归系数使用的是L1正则化,是惩罚参数或者叫做调节参数。L1范数的好处是当惩罚参数充分大时可以把某些待估的回归系数精确地收缩到0。

趁热打铁,我们再来看看Ridge Regression,也是线性回归的一个,看看简介:

RidgeRegression是一种专用于共线性的回归方法,对病态数据的拟合要强于最小二乘法(有想了解共线性问题,最小二乘的同学可以自己查资料了,如果对矩阵运算和矩阵性质熟悉的话会容易理解)。

岭回归使用的是L2正则化,下面的式子就是Ridge Regression的Loss Function 的美丽容颜:

细心的同学眼睛已然盯上了式子的最后面,是不是传说中的L2正则项,系数的平方和。上式的等价问题如下:

不管是Lasso Regression还是Ridge Regression 都有一个共同的参数,那就是惩罚参数L,那么怎么来确定呢?

通常使用交叉验证法(CV)或者广义交叉验证(GCV),当然也可以使用AIC、BIC等指标。

我们学习Lasso Regression 或者Ridge Regression的时候,一定见过下面这张图:

这张图很好的解释了为什么使用L1范数可以导致稀疏解,L2范数导致稠密解。下面从自己理解的角度和大家分享一下。

上面的图中实心的黑点也就是是真实的损失函数(不带有正则项的部分)我们暂叫做原问题的最优解,然后红色的圈圈就是系数β_1、β_2在原问题下可能的解的范围,接着是蓝色的实心圈是正则项约束的可能的解的范围。

我们都知道如果两个函数要是有共同的解,那么在几何意义下或者说从几何图形上来看,这两个函数的图像所在范围是要有共同交点或者要有交集。

所以,由于Lasso Regression或者Ridge Regression的整个Loss Function也就是我们的目标函数是由原问题和正则项两部分构成的,那么如果这个目标函数要有解并且是最小解的话,原问题和正则项就要有一个切点,这个切点就是原问题和正则项都满足各自解所在范围下的共同的解,红圈圈从图中的实心黑点也就是原问题最优解出发不断往外变化与蓝色实心圈相切的时候,L1范数意义下可能得到有的维度上的系数为零(就是切点所在的坐标处,β_1坐标为0),这也就是为什么说L1可以导致稀疏解,同理L2范数意义下,相切的点就不在坐标轴上,β_1和β_2都取0。

也许你已经发现,其实说L1范数下可以导致稀疏并不是说L1范数下一定导致稀疏,这还得看原问题的最优解到底在哪个地方取值。

二.Lq下的目标函数

其实看到这里你可能会问,既然有L1、L2会不会有Lq呢?答案是肯定的,有!直接上图

上图中,可以明显看到一个趋势,即q越小,曲线越贴近坐标轴,q越大,曲线越远离坐标轴,并且棱角越明显。那么 q=0 和 q=oo 时极限情况如何呢?猜猜看。

聪明的你猜对了吧,答案就是十字架和正方形。也许你又开始有问题了,既然L0是十字架,为什么不用L0作为正则项?

从理论来说,L0确实是求稀疏解的最好的正则项,但是机器学习中特征的维度往往很大,你也可以理解为系数很多很多,然后解L0又是个NP-hard问题,因此在实际工程应用中极有限制,不可行。

也许你又有问题了,为啥我们非得得到稀疏解呢?

其实这个问题并不绝对。从统计上来说,稀疏解可以舒缓模型的过拟合问题,毕竟可以使模型复杂度降低了嘛,然后你从一些应用场景上来说,比如医生看病,你一下让他看几百千。。。个指标得出正确答案简单,还是就几个关键指标就可以正确断诊来的好。毕竟解决问题还是要先抓住主要矛盾的,对不。

在统计学中,相比较于L1、L2这种特殊意义下的Lasso Regression 、Ridge Regression,更普遍意义Lq范数下的关于求系数的目标Loss Function为如下形式:

从上式可以看到最后面关于系数的约束就变成了Lq范数。

这个时候你就可以探索一下原问题在q取不同的值得情况对应的Lq 为惩罚项组合而成的目标函数得到的问题的解有什么不同!!!

三、普遍意义下的目标函数

除了上面提到的不管是线性回归问题常用的最小二乘法的平方损失函数,还是加入了L1、L2正则项等问题的目标函数,还有很多很多的以损失函数为目标函数的种类,譬如说,Logistics Regression使用的Log对数损失函数、SVM 使用的Hinge损失函数、Adaboost使用的指数损失函数、0-1损失函数绝对值损失函数等等。

整体来说我们已经完成了要讲的内容,但是作为“吾将上下而求索”的新青年,还是想知道这些目标函数的祖宗到底是谁?想看一看我们的目标损失函数从何而来,当当当当,下面的式子就揭晓了答案:

上式中的L一长串表示的是一般原问题的的损失函数,后面的J表示的是由于想到的某些解的特殊性或者说由于条件限制而加入原问题损失函数的一个规范项,一个约束。

从这个式子来说,不管是线性回归问题,还是我们讲的L1、L2、Lq等问题都只是她的多少代徒子徒孙而已。

本文我们从Lasso Regression、Ridge Regression为切入点引入了L1、L2范数,并且讲了L1、L2在Lasso Regression、Ridge Regression上为什么表现不同,L1为什么可以引起稀疏,哪些情况需要稀疏,接着引入了泛化的Lq范数,并且指出为啥不能用L0范数,最后给出了损失函数和正则化的最一般问题的来源,扒拉了下其他算法使用的目标函数的宗源。

有讲的不妥的地方还望各位客官指正。

作者:赵慧

编辑:赵一帆

原文发布于微信公众号 - 机器学习算法全栈工程师(Jeemy110)

原文发表时间:2017-09-24

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人工智能头条

漫谈词向量之基于Softmax与Sampling的方法

4805
来自专栏用户3246163的专栏

2.2 线形回归

dependent = explained variable 已解释的 independent = explanatory variable 说明变量

1742
来自专栏机器人网

机器学习算法优缺点汇总

它是另一种方法(通常是回归方法)的拓展,这种方法会基于模型复杂性对其进行惩罚,它喜欢相对简单能够更好的泛化的模型。 例子:

2014
来自专栏华章科技

机器学习算法入门:从贝叶斯到深度学习及各自优缺点(附导图下载)

导读:在我们日常生活中所用到的推荐系统、智能图片美化应用和聊天机器人等应用中,各种各样的机器学习和数据处理算法正尽职尽责地发挥着自己的功效。本文筛选并简单介绍了...

961
来自专栏PPV课数据科学社区

【V课堂】R语言十八讲(十)–OLS回归

前面讲到了假设检验,可以检验某个简单的结论,判断两个总体是否显著不同,今天,讲统计学中非常经典的一个知识,这就是回归,回归的分类很多,今天主要讲其中...

2686
来自专栏CVer

[计算机视觉论文速递] 2018-02-28

[1]《CSRNet: Dilated Convolutional Neural Networks for Understanding the Highly C...

4308
来自专栏个人分享

线性回归概念学习

  在统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个自变量和因变量之间关系进行建模的一种回归分析。这种...

1152
来自专栏机器学习之旅

理论:因子分析原理剖析

F1,F2,F3...为前m个因子包含数据总量(累计贡献率)不低于80%。可取前m各因子来反映原评价

1403
来自专栏新智元

谷歌新 AI 实验室主管 Hugo 深度学习教程:神经网络、CV、NLP 难点解析

【新智元导读】 11月22日,谷歌在蒙特利尔的现有办公室开设了一个全新的深度学习和人工智能研究小组。新团队将作为位于山景城的 Google Brain 团队的远...

3485
来自专栏专知

ICLR 2018接收论文公布—“GANs 之父”Goodfellow四篇论文被接受为Poster Papers。

ICLR,全称为「International Conference on Learning Representations」(国际学习表征会议),2013 年才...

4156

扫码关注云+社区