【笔记】梯度下降法的简单了解
梯度下降法
梯度下降法和先前学习的算法有着明显的不同
他本身不是一个机器学习的算法,它既不是监督学习也不是非监督学习,其是一种基于搜索的最优化的方法,作用是最小化一个损失函数,相应的,我们想要最大化一个效用函数的话,就要用梯度上升法,最小化方面是很常用梯度下降法的
从二维平面上看,可以发现其本质就是寻找一个参数使得损失函数最小,其中纵轴为损失函数J
对相应的点进行求导,其中导数代表着参数变化的时候,损失函数相应的变化,直线和曲线上导数都可代表斜率(高数基本的东西,不再赘述),其中,导数还可以代表方向,对应损失函数增大的方向,可以得到一个数值
其中导数前的数值η是先确定好的
我们需要一直计算,直到导数等于0(即取极值),就像是一个球一路滚落,直到最深处
其中这个速度是由学习率η决定的,其取值会影响到获得最优解的速度,如果取值不合适的话,甚至有可能出现得不到最优解的情况,太小就会减慢学习速度,太大甚至有可能导致不收敛,η相当于是梯度下降法的超参数,因此我们可是使用调参的方式来调整到最好的情况
而在事实上,并不是所有的函数都有唯一的极值点,像是线性回归这种损失函数就是具有唯一的最优解的,但是更多的时候,我们所找到的第一个极值点并不是最终的最好的解,可能还存在更好的解,这样我们称第一个点为局部最优解,最小值点为全局最优解
这样的情况下也是有解决方案的,我们可以多次运行,对初始点进行随机化,这样每次运行结果比较一下,逐步尝试,有可能找出全局最优解
这样我们发现,梯度下降法的初始点的位置一样也是一个超参数,其是非常重要的
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!