谈谈自己对正则化的一些理解~

谈谈自己对正则化的一些理解~上学的时候,就一直很好奇,模式识别理论中,常提到的正则化到底

大家好,又见面了,我是你们的朋友全栈君。

上学的时候,就一直很好奇,模式识别理论中,常提到的正则化到底是干什么的?渐渐地,听到的多了,看到的多了,再加上平时做东西都会或多或少的接触,有了一些新的理解。

1. 正则化的目的:防止过拟合!

2. 正则化的本质:约束(限制)要优化的参数。

关于第1点,过拟合指的是给定一堆数据,这堆数据带有噪声,利用模型去拟合这堆数据,可能会把噪声数据也给拟合了,这点很致命,一方面会造成模型比较复杂(想想看,本来一次函数能够拟合的数据,现在由于数据带有噪声,导致要用五次函数来拟合,多复杂!),另一方面,模型的泛化性能太差了(本来是一次函数生成的数据,结果由于噪声的干扰,得到的模型是五次的),遇到了新的数据让你测试,你所得到的过拟合的模型,正确率是很差的。

关于第2点,本来解空间是全部区域,但通过正则化添加了一些约束,使得解空间变小了,甚至在个别正则化方式下,解变得稀疏了。这一点不得不提到一个图,相信我们都经常看到这个图,但貌似还没有一个特别清晰的解释,这里我尝试解释一下,图如下:

谈谈自己对正则化的一些理解~

这里的w1,w2都是模型的参数,要优化的目标参数,那个红色边框包含的区域,其实就是解空间,正如上面所说,这个时候,解空间“缩小了”,你只能在这个缩小了的空间中,寻找使得目标函数最小的w1,w2。左边图的解空间是圆的,是由于采用了L2范数正则化项的缘故,右边的是个四边形,是由于采用了L1范数作为正则化项的缘故,大家可以在纸上画画,L2构成的区域一定是个圆,L1构成的区域一定是个四边形。

再看看那蓝色的圆圈,再次提醒大家,这个坐标轴和特征(数据)没关系,它完全是参数的坐标系,每一个圆圈上,可以取无数个w1,w2,这些w1,w2有个共同的特点,用它们计算的目标函数值是相等的!那个蓝色的圆心,就是实际最优参数,但是由于我们对解空间做了限制,所以最优解只能在“缩小的”解空间中产生。

蓝色的圈圈一圈又一圈,代表着参数w1,w2在不停的变化,并且是在解空间中进行变化(这点注意,图上面没有画出来,估计画出来就不好看了),直到脱离了解空间,也就得到了图上面的那个w*,这便是目标函数的最优参数。

对比一下左右两幅图的w*,我们明显可以发现,右图的w*的w1分量是0,有没有感受到一丝丝凉意?稀疏解诞生了!是的,这就是我们想要的稀疏解,我们想要的简单模型。

还记得模式识别中的剃刀原理不?倾向于简单的模型来处理问题,避免采用复杂的。

这里必须要强调的是,这两幅图只是一个例子而已,没有说采用L1范数就一定能够得到稀疏解,完全有可能蓝色的圈圈和四边形(右图)的一边相交,得到的就不是稀疏解了,这要看蓝色圈圈的圆心在哪里。

此外,正则化其实和“带约束的目标函数”是等价的,二者可以互相转换。关于这一点,我试着给出公式进行解释:

针对上图(左图),可以建立数学模型如下:

谈谈自己对正则化的一些理解~

通过熟悉的拉格朗日乘子法(注意这个方法的名字),可以变为如下形式:

谈谈自己对正则化的一些理解~

看到没,这两个等价公式说明了,正则化的本质就是,给优化参数一定约束,所以,正则化与加限制约束,只是变换了一个样子而已。

此外,我们注意,正则化因子,也就是里面的那个lamda,如果它变大了,说明目标函数的作用变小了,正则化项的作用变大了,对参数的限制能力加强了,这会使得参数的变化不那么剧烈(仅对如上数学模型),直接的好处就是避免模型过拟合。反之,自己想想看吧。。。

个人感觉,“正则化”这几个字叫的实在是太抽象了,会吓唬到人,其实真没啥。如果改成“限制化”或者是“约束化”,岂不是更好?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159224.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 微带滤波器摘要_微带线带通滤波器设计

    微带滤波器摘要_微带线带通滤波器设计微带线带通滤波器的设计[摘要]随着商用无线通信的迅猛发展,微波电路越来越得到重视和发展。而微波带通滤波器作为微波器件的一种也得到了大力的发展,尤其是在接收机前端,带通滤波器性能的优劣直接影响到整个接收机性能的好坏,本文就滤波器的工作原理及一些相关理论做了简要概述,并提出微带线带通滤波器的设计细则。[关键词]微带线带通滤波器设计中图分类号:tn713.5文献标识码:a文章编号:1009-914x(2…

    2022年6月4日
    37
  • 10种不同画法画平行线怎么画_平行线的标准画法

    10种不同画法画平行线怎么画_平行线的标准画法数学活动《平行线的画法》活动目标:1、通过活动探究巩固熟悉平行线的判定方法,能正确地画出已知直线的平行线,并能用平行线的判定方法说明依据。2、采用多种方法画平行线,让学生从不同的角度来寻求解决问题的方案.让学生在动手操作中进一步学会画平行线,培养一定的操作技能。3、通过观察、动手操作、推断、交流等数学活动,发展空间观念,体验知识来源于生活,又服务于生活。活动重点:运用所学的知识熟练的画出平行线。活…

    2022年9月20日
    3
  • Docker使用教程超详细[通俗易懂]

    Docker使用教程超详细[通俗易懂]TableofContents1.Docker简介 1.1.Docker守护进程 1.2.Docker客户端 1.3.Docker内部 1.3.1.Docker镜像 1.3.2.Docker仓库 1.3.3.Docker容器 1.4.libcontainer 1.5.命名空间「Namespaces」 1.5.1.pidnamespace 1.5.2.mntnamespace 1.5.3.netnam

    2022年10月16日
    2
  • css鼠标点击的五种状态

    css鼠标点击的五种状态1、a:link{color:#fff}未访问时的状态(鼠标点击前显示的状态)2、a:hover{color:#fff}鼠标悬停时的状态3、a:visited{color:#fff}已访问过的状态(鼠标点击后的状态)4、a:active{color:#fff}鼠标点击时的状态5、a:focus{color:#fff}点击后鼠标移开保持鼠标点击时的

    2022年5月31日
    29
  • linux安装lib包_linux生成静态库

    linux安装lib包_linux生成静态库前几天手里的智能锁项目,收到产品的建议(命令)说,就是人脸识别成功的时候,不要只显示摄像头捕捉到的图像,要弄个酷炫一点的背景,背景里图片中间有个圆圈,人脸就放到圆圈里也就是类似这样。。当然,这是我思考了好几个小时的结果,开始想不明白要怎么实现,其实想通了也很简单,三个步骤A把背景图像的RGB读出来out_bufB把摄像头采集到的图像读出来(分辨率和背…

    2025年6月19日
    3
  • firewall zone_firewalld关闭端口

    firewall zone_firewalld关闭端口自定义zone#添加/删除zonefirewall-cmd–new-zone=mysshzone–permanentfirewall-cmd–delete-zone=mysshzone–permanent#查询所有zone列表firewall-cmd–get-zonesblockdmzdropexternalhomeinternalmysshzonepublictrustedwork#显示生效的zonefirewall-cmd–get-a

    2022年10月6日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号