| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 机器学习学习笔记(二)之梯度下降 -> 正文阅读 |
|
[人工智能]机器学习学习笔记(二)之梯度下降 |
梯度(向量)计算:
????????????????
其中算式,注意可以简化为:(分母项用于反映反差的大小,约束变化) 具体步骤: 解释:参数迭代过程中最优的步伐大小应该是一次微分的绝对值除以二次微分的大小; ??????但是微分求取的速度较慢,于是用平方和的根值代替二次微分;
首先只考虑一个example,调节参数后,再调用一个example调节参数,直到所有的example全部考虑并更新参数,最后调节的参数就是所求的; 对比:
不会在loss函数微分为零的时候就停止,如图,在第二处位置并未停下, 而是继续往前移动; 并且在真正的极小值处来回移动,直到符合条件。
? 仍然无法解决会卡在一个不是极小值但grad为零的位置。 https://blog.csdn.net/willduan1/article/details/78070086
ε是为了防止分母为零,adam说明中的mt,vt,β1和β2是SGDM和RMSProp的对应式子和符号。 由于移动指数平均在迭代开始的初期会导致和开始的值有较大的差异,所以我们需要对上面求得的几个值做偏差修正,即 随着t的增大,adam中的β值逐渐减小为零,对前期影响大而后期影响小,达到纠正前期误差较大的作用。 问题:在后期时,即使gradient突然变得很大,也只会引起较小的变化,因为前面的gradient的和已经远远大于该gradient,对movement的影响就会很小。反而会被更多的但是gradient更小的所影响,再者对该Θ函数求极限会有一个最大值,移动距离会受限制。 试图优化adam算法:
https://blog.csdn.net/qq_33547191/article/details/88034806 试图优化SGDM算法:
(14) (15) (16) (17) 目前其它的优化器??在AMSGrad后,有很多其它的优化器出现,包括AdamW,修复adam的权重下降问题;QHAdam,用基于动量的随机梯度下降平均标准的随机梯度下降;AggMo,结合多个动量项;等其他优化器。 一些其他知识: 1.(warm-up adam)因为开始的估计不会非常准确,会使得movement非常震荡不稳定 如何warm-up? 用rt来估计方差的值,当方差较大的时候,就走对应小步一点,方差val小的时候就走大步一点 RAdam就是开始的时候用SGDM,后来用Adam;它解决的是一开始learning rate不准确的问题; 而SWATS是开始的时候用Adam,后来用SGDM;为了使accuracy收敛的更好,更加稳定和准确;
?
(1)增加model的随机性 ??
开始用简单的数据去训练,后面再用比较复杂困难的数据训练。 用别人训练好的model,节省时间和资源。
Feature scaling:(特征归一化) 归一化后加快了梯度下降求最优解的速度和有可能提高精度 常用方法:有多个example时,每一个example对应一组feature,即x1,x2....,xR,然后标准化各个参数feature。 参考:https://blog.csdn.net/u010315668/article/details/80374711 梯度下降的理论支撑: 在一个圆形邻域中寻找最小值(可以通过泰勒展开简化loss方程,然后求最小值),并更新中心点,(半径大小与learning rate有关,需足够小才成立)直到找到最小点。 梯度下降的限制:
总结: |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/2 22:15:30- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |