Laplace(拉普拉斯)先验与L1正则化

在之前的一篇博客中L1正则化及其推导推导证明了L1正则化是如何使参数稀疏化人,并且提到过L1正则化如果从贝叶斯的观点看来是Laplace先验,事实上如果从贝叶斯的观点,所有的正则化都是来自于对参数分布的先验。现在来看一下为什么Laplace先验会导出L1正则化,也顺便证明Gauss(高斯)先验会导出L2正则化。

最大似然估计

很多人对最大似然估计不明白,用最简单的线性回归的例子来说:如果有数据集\((X, Y)\),并且\(Y\)是有白噪声(就是与测量得到的\(Y\)与真实的\(Y_{real}\)有均值为零的高斯分布误差),目的是用新产生的\(X\)来得到\(Y\)。如果用线性模型来测量,那么有:

\[
f(X) = \sum_i(x_i\theta_i) + \epsilon = X\theta^T + \epsilon \tag{1.1}
\]

其中\(X=(x_1, x_2...x_n)\),\(\epsilon\)是白噪声,即\(\epsilon - N(0, \delta^2)\)。那么于一对数据集\((X_i, Y_i)\)来用,在这个模型中用\(X_i\)得到\(Y_i\)的概率是\(Y_i - N(f(X_i), \delta^2)\):

\[
P(Y_i|X_i, \theta) = \frac{1}{\epsilon\sqrt{2\pi}} \exp(-\frac{\|f(X_i) - Y_i\|^2}{2\delta^2}) \tag{1.2}
\]

假设数据集中每一对数据都是独立的,那么对于数据集来说由\(X\)得到\(Y\)的概率是:

\[
P(Y|X,\theta)= \prod_i\frac{1}{\epsilon\sqrt{2\pi}} \exp(-\frac{\|f(X_i) - Y_i\|^2}{2\delta^2}) \tag{1.3}
\]

根据决策论,就可以知道可以使概率\(P(Y|X,\theta)\)最大的参数\(\theta^*\)就是最好的参数。那么我们可以直接得到最大似然估计的最直观理解:对于一个模型,调整参数\(\theta\),使得用X得到Y的概率最大。那么参数\(\theta\)就可以由下式得到:

\[
\begin {split}
\theta^* &= argmax_{\theta} \left(\prod_i\frac{1}{\epsilon\sqrt{2\pi}} \exp(-\frac{\|f(X_i) - Y_i\|^2}{2\delta^2})\right) \cr
&=argmax_{\theta} \left( -\frac{1}{2\delta^2} \sum_i \|f(X_i) - Y_i\|^2 + \sum_i ln(\delta\sqrt{2\pi}) \right) \cr
&=argmin_{\theta} \left(\sum_i \|f(X_i) - Y_i\|^2 \right)
\end {split} \tag{1.4}
\]

这个就是最小二乘计算公式。

Laplace分布

Laplace概率密度函数分布为:

\[
f(x|\mu, b) = \frac{1}{2b} \exp(-\frac{|x-\mu|}{b}) \tag{2.1}
\]

分布的图像如下所示:

图1 Laplace分布

可以看到Laplace分布集中在\(\mu\)附近,而且\(b\)越小,数据的分布就越集中。

Laplace先验导出L1正则化

先验的意思是对一种未知的东西的假设,比如说我们看到一个正方体的骰子,那么我们会假设他的各个面朝上的概率都是\(1/6\),这个就是先验。但事实上骰子的材质可能是密度不均的,所以还要从数据集中学习到更接近现实情况的概率。同样,在机器学习中,我们会根据一些已知的知识对参数的分布进行一定的假设,这个就是先验。有先验的好处就是可以在较小的数据集中有良好的泛化性能,当然这是在先验分布是接近真实分布的情况下得到的了,从信息论的角度看,向系统加入了正确先验这个信息,肯定会提高系统的性能。我们假设参数\(\theta\)是如下的Laplace分布的,这就是Laplace先验:

\[
P(\theta_i) = \frac{\lambda}{2} \exp(-\lambda|\theta_i|) \tag{3.1}
\]

其中\(\lambda\)是控制参数\(\theta\)集中情况的超参数,\(\lambda\)越大那么参数的分布就越集中在0附近。

在前面所说的最大似然估计事实上是假设了\(\theta\)是均匀分布的,也就是\(P(\theta)=Constant\),我们最大化的要后验估计,即是:

\[
\begin {split}
\theta^* &= argmax_{\theta} \left(\prod_i P(Y_i|X_i, \theta) \prod_i P(\theta_i)\right) \cr
&=argmin_{\theta} \left(\sum_i \|f(X_i) - Y_i\|^2 + \sum_i \ln(P(\theta_i))\right)
\end {split} \tag{3.2}
\]

如果是Laplace先验,将式\((3.1)\)代入到式\((3.2)\)中可得:

\[
\theta^* =argmin_{\theta} \left(\sum_i \|f(X_i) - Y_i\|^2 + \lambda \sum_i |\theta_i|)\right) \tag{3.3}
\]

这就是由Laplace导出L1正则化,我在之前的一篇博客中L1正则化及其推导分析过\(\lambda\)越大,那么参数的分布就越集中在0附近,这个与Laplace先验的分析是一致的。

Gauss先验导出L2正则化

到这里,我们可以很轻易地导出L2正则化,假设参数\(\theta\)的分布是符合以下的高斯分布:

\[
P(\theta_i) = \frac{\lambda}{\sqrt{\pi}} \exp(-\lambda\|\theta_i\|^2) \tag{3.4}
\]

代入式\((3.2)\)可以直接得到L2正则化:

\[
\theta^* =argmin_{\theta} \left(\sum_i \|f(X_i) - Y_i\|^2 + \lambda \sum_i \|\theta_i\|^2)\right) \tag{3.5}
\]

【防止爬虫转载而导致的格式问题——链接】:
http://www.cnblogs.com/heguanyou/p/7688344.html

Laplace(拉普拉斯)先验与L1正则化的更多相关文章

  1. L1正则化及其推导

    \(L1\)正则化及其推导 在机器学习的Loss函数中,通常会添加一些正则化(正则化与一些贝叶斯先验本质上是一致的,比如\(L2\)正则化与高斯先验是一致的.\(L1\)正则化与拉普拉斯先验是一致的等 ...

  2. 贝叶斯先验解释l1正则和l2正则区别

    这里讨论机器学习中L1正则和L2正则的区别. 在线性回归中我们最终的loss function如下: 那么如果我们为w增加一个高斯先验,假设这个先验分布是协方差为 的零均值高斯先验.我们在进行最大似然 ...

  3. L1正则化

    正则化项本质上是一种先验信息,整个最优化问题从贝叶斯观点来看是一种贝叶斯最大后验估计,其中正则化项对应后验估计中的先验信息,损失函数对应后验估计中的似然函数,两者的乘积即对应贝叶斯最大后验估计的形式, ...

  4. 【深度学习】L1正则化和L2正则化

    在机器学习中,我们非常关心模型的预测能力,即模型在新数据上的表现,而不希望过拟合现象的的发生,我们通常使用正则化(regularization)技术来防止过拟合情况.正则化是机器学习中通过显式的控制模 ...

  5. L1正则化比L2正则化更易获得稀疏解的原因

    我们知道L1正则化和L2正则化都可以用于降低过拟合的风险,但是L1正则化还会带来一个额外的好处:它比L2正则化更容易获得稀疏解,也就是说它求得的w权重向量具有更少的非零分量. 为了理解这一点我们看一个 ...

  6. L2与L1正则化理解

    https://www.zhihu.com/question/37096933/answer/70507353 https://blog.csdn.net/red_stone1/article/det ...

  7. L1正则化和L2正则化

    L1正则化可以产生稀疏权值矩阵,即产生一个稀疏模型,可以用于特征选择 L2正则化可以防止模型过拟合(overfitting):一定程度上,L1也可以防止过拟合 一.L1正则化 1.L1正则化 需注意, ...

  8. L1正则化与L2正则化的理解

    1. 为什么要使用正则化   我们先回顾一下房价预测的例子.以下是使用多项式回归来拟合房价预测的数据:   可以看出,左图拟合较为合适,而右图过拟合.如果想要解决右图中的过拟合问题,需要能够使得 $ ...

  9. 正则化--L1正则化(稀疏性正则化)

    稀疏矢量通常包含许多维度.创建特征组合会导致包含更多维度.由于使用此类高维度特征矢量,因此模型可能会非常庞大,并且需要大量的 RAM. 在高维度稀疏矢量中,最好尽可能使权重正好降至 0.正好为 0 的 ...

随机推荐

  1. 团队作业8——第二次项目冲刺(Beta阶段)Day6——5.25

    1.提供当天会议照片: 2.会议的内容: (1)讨论已经完成的功能,讨论存在的问题 (2)对于界面,谈谈各自的看法 (3)讨论接下来的任务和改进的地方 3.工作安排: 队员 今日任务 明日任务 贡献比 ...

  2. 【Alpha】 第七次Daily Scrum Meeting

    一.本次会议为第七次meeting会议 二.时间:9:37AM-9:50AM 地点:禹州三楼 三.会议站立式照片 四.今日任务 成员 昨日任务 今日任务 林清青 学习并了解微信程序相关方面知识,为小组 ...

  3. 第07周-集合与GUI

    1. 本周作业简评与建议 本周8分以上的同学有32人(占1/4),其中9分以上的同学有13人(占1/10).大作业未完成的最高评分一般高于6分.被认定为抄袭的为-10分.请大家认真完成大作业,后面每周 ...

  4. 201521123117 《Java程序设计》第8周学习总结

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 2. 书面作业 1.List中指定元素的删除(题目4-1) 1.1 实验总结: 1.通过equals方法以及l ...

  5. 201521123077 《Java程序设计》第5周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 举个小栗子: 右侧的四个类都实现了同一个接口,所以可以让游戏类的引用指向实现类的实例,根据不同类型的实现类可以表现出不同的特性 ...

  6. 201521123035《Java程序设计》第四周学习总结

    本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 本周还讲了注释与类设计.老师用例子向我们展示实际生活中一个类里面包含了哪些属性,并由此联想到如果自 ...

  7. java第十一次作业

    1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多线程相关内容. 2. 书面作业 1.互斥访问与同步访问 完成题集4-4(互斥访问)与4-5(同步访问) 1.1 除了使用synch ...

  8. Linux SDK之uClinux、Broadcom、Atheros、Realtek、Ralink、Marvell、Intel

    接触的Linux SDK越来越多,整理整理,分享分享,不求系统全面,对您有帮助便足矣 文中大部分是与AP/Router SoC解决方案(单芯片WIFI 路由器解决方案)相关的Linux SDK SDK ...

  9. npm run build生成路径问题

    vue项目中可以使用npm run build 命令生成静态文件夹dist,开发者可以直接点击dist文件夹下面的index.html问价来访问自己的项目,但是用vue-cli生成的项目,当运行npm ...

  10. Apache Spark 2.2.0 中文文档 - 概述 | ApacheCN

    Spark 概述 Apache Spark 是一个快速的, 多用途的集群计算系统. 它提供了 Java, Scala, Python 和 R 的高级 API,以及一个支持通用的执行图计算的优化过的引擎 ...