[机器学习必知必会]正则化和范数_shinkage是什么尺寸-程序员宅基地

技术标签: 机器学习必知必会  机器学习  正则化  范数  

写在前头

本文格式略微有些乱码,为不妨碍阅读,可以查看我在头条上写的原文:

https://www.toutiao.com/i6650364324176986637/

正则化综述

机器学习中经常会在损失函数中加入正则项,称之为正则化(Regularize)。

目的:防止模型过拟合

原理:在损失函数上加上某些规则(限制),缩小解空间,从而减少求出过拟合解的可能性

例子:以最简单的线性模型为例

通俗易懂地理解机器学习中的正则化和范数

线性回归模型

我们在统计学习中接触到线性回归的最小二乘估计和正则化的岭回归与拉索回归

通俗易懂地理解机器学习中的正则化和范数

最小二乘估计

通俗易懂地理解机器学习中的正则化和范数

加上L2正则项的岭估计

在数学上我们可以证明岭估计的参数模要严格小于最小二乘估计的参数模,换句话说,我们可以认为加入L2正则项后,估计参数长度变短了,这在数学上被称为特征缩减(shrinkage)。

shrinkage方法介绍:指训练求解参数过程中考虑到系数的大小,通过设置惩罚系数,使得影响较小的特征的系数衰减到0,只保留重要特征的从而减少模型复杂度进而达到规避过拟合的目的。常用的shinkage的方法有Lasso(L1正则化)和岭回归(L2正则化)等。

采用shrinkage方法的主要目的包括两个:一方面因为模型可能考虑到很多没必要的特征,这些特征对于模型来说就是噪声,shrinkage可以通过消除噪声从而减少模型复杂度;另一方面模型特征存在多重共线性(变量之间相互关联)的话可能导致模型多解,而多解模型的一个解往往不能反映模型的真实情况,shrinkage可以消除关联的特征提高模型稳定性。

通过线性模型理解正则化

对于包括多元线性回归模型、逻辑回归和SVM在内的线性模型,我们需要利用测试集来最小化损失函数从而求得模型参数w。

通俗易懂地理解机器学习中的正则化和范数

线性模型的损失函数

我们在线性模型的损失函数中加入正则项可以得到目标函数。其中λ被称为正则化系数,当λ越大时,正则化约束越强。

通俗易懂地理解机器学习中的正则化和范数

目标函数=损失函数+正则化项

通过令目标函数导函数为0,我们可以得到参数的表达式为:

通俗易懂地理解机器学习中的正则化和范数

参数表达式

选择L2正则项的原因

给损失函数加上的正则化项可以有多种形式,下面给出了正则化的一般形式:

通俗易懂地理解机器学习中的正则化和范数

正则化的一般形式

其中M是参数的个数,也是模型特征的维数;q是正则项的阶数,L2正则项的q为2。

考虑到在高维数据下很难给出正则项的几何意义,我们假设数据源只有两个特征:

通俗易懂地理解机器学习中的正则化和范数

假设只有两个特征,对应两个参数

q不同取值时正则项的函数值图像:

通俗易懂地理解机器学习中的正则化和范数

q不同取值时正则项函数值图像

不同函数值图像对应的等高线(即俯视图)为

通俗易懂地理解机器学习中的正则化和范数

图像等高线

最小化目标函数时,可以看做在控制损失函数不变的情况时令正则项最小化,几何意义如下所示:蓝色圈表示没有限制的损失函数随着w迭代寻找着最小化的过程的E(w)函数等高线(同个圆上的损失函数值相同),蓝色圈和橙色圈之和就是目标函数值,目标函数最小化的点往往出现在蓝圈和橙圈相交的点即目标函数最小化的参数值w*

通俗易懂地理解机器学习中的正则化和范数

目标函数最小化的几何展示

可以看到,L1正则化的最优参数值w*恰好是w1=0的时候,意味着我们剔除了模型中一个特征(系数为0等价于剔除该特征),从而达到了降低模型复杂度的目的。在这个意义上L1正则化效果要优于L2正则化,但L1存在拐点不是处处可微,从而L2正则化有更好的求解特性

总结

梳理一下,正则化有多种方式,包括L0(向量中非零元素个数),L1(向量中元素绝对值之和),L2(向量的模)。但是L0范数的求解是个NP完全问题,而L1也能实现稀疏并且比L0有更好的优化求解特性而被广泛应用

L2范数指各元素平方和后开根的值,可令w每个元素接近于0,虽然不如L1更彻底地降低模型复杂度,但是由于处处可微降低了计算难度

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/TOMOCAT/article/details/88121119

智能推荐

利用计算机解决问题的原理方法是什么,2021安徽省中小学教师招聘中学信息技术笔试大纲...-程序员宅基地

文章浏览阅读253次。2021年安徽省中小学教师招聘考试大纲已公布,安徽中小学教师招聘统一笔试时间是3月28日,现中公教师网整理了2021安徽省中小学教师招聘中学信息技术笔试大纲内容如下所示:一、考试目标与要求(一)考试目标考查考生中学信息技术课程与教学论的基本理论和基本方法,能运用这些基本理论和基本方法解决有关中学信息技术学科教学中的实际问题,具备从事中学信息技术学科教育教学工作所必需的基本教学技能。(二)考试要求1..._如何用逻辑的工具创造性解决语言交流中的问题

LeetCode_Sorting_1753. Maximum Score From Removing Stones 移除石子的最大得分【脑筋急转弯】【C++】【中等】_你正在玩一个单人游戏,面前放置着大小分别为 a、b 和 c 的 三堆 石子。 每回合你-程序员宅基地

文章浏览阅读2.3k次。目录一,题目描述英文描述中文描述示例与说明二,解题思路三,AC代码C++四,解题过程第一博一,题目描述英文描述You are playing a solitaire game with three piles of stones of sizes a​​​​​​, b,​​​​​​ and c​​​​​​ respectively. Each turn you choose two different non-empty piles, take one st_你正在玩一个单人游戏,面前放置着大小分别为 a、b 和 c 的 三堆 石子。 每回合你

vue解决子组件不更新问题,vue解决父组件调用子组件传传只进行一次的问题_vue父组件调子组件方法里面值只修改一次-程序员宅基地

文章浏览阅读1.5k次。vue解决子组件不更新问题,vue解决父组件调用子组件传传只进行一次的问题_vue父组件调子组件方法里面值只修改一次

嵌入式硬件:电子元器件(1)电阻电容电感_电子元器件博客-程序员宅基地

文章浏览阅读2.1k次,点赞2次,收藏19次。感谢关注,微信公众号,干货满满:一.电阻器1. 电阻器的含义:在电路中对电流有阻碍作用并且造成能量消耗的部分叫电阻。2. 电阻器的英文缩写:R(Resistor)及排阻RN3. 电阻器在电路符号:4. 电阻器的常见单位:千欧姆(KΩ),兆欧姆(MΩ)5. 电阻器的单位换算:1兆欧 = 103千欧 = 106欧6. 电阻器的特性:电阻为线性原件,即电阻两端电压与流过电阻的电流成正比,通过这段导体的电流强度与这段导体的电阻成反比。即欧姆定律:I=U/R。7. 电阻的作用为分流、限流、分压、偏_电子元器件博客

Outlook能帮你实现自动留言的功能_outlook怎么设置留言-程序员宅基地

文章浏览阅读1.1k次。Outlook能帮你实现自动留言的功能对于在办公室工作的朋友来说,突如其来的来访和外出是再经常不过的事情了,有些紧急的邮件因此就得不到处理。这时候与其让不知情的对方焦急等待,不如主动给他留言,告诉对方你在干什么更好。比如,我今日出差了,但有客人发邮件给我,我又不能在自己电脑面前回复她的信息,也就是说,如果她发给我,我的邮箱会自动回复一封邮件给她,告诉我的客户我出差了,有急事请发到另_outlook怎么设置留言

连接数据库报错init datasource error, url: jdbc:mysql:_init datasource error, url: jdbc:mysql://127.0.0.1-程序员宅基地

文章浏览阅读4.6k次。环境:Windows数据库版本 8.0将 local.properties中的db.url=jdbc:mysql://127.0.0.1/hybrisb2c?useConfigs=maxPerformance&characterEncoding=utf8db.driver=com.mysql.jdbc.Driver修改该为db.url=jdbc:mysql://127...._init datasource error, url: jdbc:mysql://127.0.0.1

随便推点

ORACLE的隔离级别--isolation level-程序员宅基地

文章浏览阅读202次。声明:该文章系转载-转载地址有两个:1:http://epub.itpub.net/3/4.htm2:http://blog.csdn.net/wh62592855/article/details/4759755           如果发生侵权行为,本人将立即停止侵权行为:隔离级别(isolation level) 隔离级别定义了事务与事务之间的隔离程度。 ..._isolation_level

js事件绑定,通过addEventListener传递参数-程序员宅基地

文章浏览阅读3.2k次。如果要为事件处理函数送参数的话,需要在匿名函数(事件函数)外包裹一个匿名函数, 并立即执行。

SQLSERVER全量/增量备份+还原_sqlserver增量备份-程序员宅基地

文章浏览阅读4.2k次。因更换护服务器需要,需要从源端SQLSERVER的数据全部迁移到目标端SQLSERVER服务器上。这里使用完整、事务日志进行备份和还原,及使用SSMS工具进行迁移。_sqlserver增量备份

科普:DDOS高防IP的防御手段-程序员宅基地

文章浏览阅读384次,点赞7次,收藏9次。在网络世界中,ip相当于服务器的门牌号,无论是访问还是管理服务器,都是通过ip。源站IP,从而确保源站IP的保护,以便稳定访问。该策略是帮助个人用户进行防御,IP不会被阻挡,甚至机器都会被阻塞,导致业务无法正常进行,防御效果不是很好,所以使用率很高反IP,高防IP可以针对不同的服务类型因此设置不同的保护策略,减少用户业务损失。遭到DDOS流量攻击不用担心,防护DDoS攻击CC攻击, 目前最有效的办法就是通过高防IP进行防御,有很多人对高防IP不解,今天我们来讲一下高防IP是什么,高防IP的原理又是什么呢?

Python 爬虫面试题 170 道:2019 版(带答案)_python爬虫面试题-程序员宅基地

文章浏览阅读1w次,点赞32次,收藏232次。面试无时无刻不在进行中,每一次面试前我们都要做好充分的准备,就需要我们有足够的面试题,这里是一个公众号推出的python爬虫方面的面试题,有需要的大家可以一起看一下。里面的问题大家可以一起讨论,答案不是固定的,个人觉得面试回答问题的时候要做一些适当的扩展,可以把自己平时工作中的一些用法举例说明一下。×Python 常见的 170 道面试题全解析:2019 版语言特性1. ..._python爬虫面试题

PYQT treeWidget获取选中节点及节点完整索引_qtreewidget 获取节点索引-程序员宅基地

文章浏览阅读5.6k次,点赞6次,收藏21次。PYQT treeWidget获取选中节点及节点完整索引treeWidget由于没有现成的函数直接获取选中节点的完整索引,因此只能自己造轮子。总体思路是通过parent方法获取递归获取父节点,直到找到顶层。... self.treeWidget.clicked.connect(self.binshow) # 单击信号链接到选中内容打印函数上... def binshow(self, index): item = self.treeWidget.currentItem() #_qtreewidget 获取节点索引

推荐文章

热门文章

相关标签