| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> L1正则项和L2正则项的特性 -> 正文阅读 |
|
[人工智能]L1正则项和L2正则项的特性 |
1.首先回顾梯度下降的流程????????1.随机初始化一组参数theta ????????2.求梯度g,loss对theta求偏导 ????????3.使用梯度下降公式 W(t+1) = Wt - η*g ????????4.判断收敛 我们添加正则项即在MSE上加L1/L2,添加上后直接改变的就是梯度下降的第二步, 此时g变成了g = (MSE + L1/L2)求偏导,那么第三步就W(t+1) = Wt - * 这样原来的梯度下降就多了一部分,使得每次迭代都让参数W多调整了一些,更接近于0,让参数W尽可能变小。 2.L1和L2正则项公式展开写?我们梯度下降时加上正则项改变的是第二步:对L1或者L2求偏导。 L1因为是每个W单纯的相加,这样对每个W求偏导后,最后结果只能是1或者-1,那么就是所有的W同时调整-1*η学习率,所以所有的W调整的幅度一样,就有可能最终相交在轴上。 L2是平方再加和的形式,那么求导后就等于2*Wj,这样W越大,调整的幅度就越大,Wj越小调整的幅度就越小。这样所有的W就都尽可能地往原点0调整 结果:1.L1和L2都有提高泛化能力的作用,但是如果我们是为了提高模型的泛化能力,比较常用的是L2正则项。 2.L1正则项有一个副产品就是可以做特征的选择,因为使用L1正则项后,由于L1洗漱性的特性,有一些W会变成零,我们就可以认为这些W维度不重要,那么这样就可以帮助我们去掉一些不重要的维度(机器学习开始的时候做降维特征的选择)。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 18:26:47- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |