-推荐关注-
梯度下降是一种基本且广泛应用于机器学习领域的优化算法,主要用于最小化损失函数,从而提升模型预测能力。本文详细介绍了梯度的数学定义及其几何意义,阐述了梯度下降的原理、算法步骤,并通过实例和流程图说明了迭代过程的动态变化
1. 什么是梯度 2. 什么是梯度下降 3. 梯度下降迭代过程的流程图 第1次迭代 中间次迭代 最后一次迭代
-- 领取学习资料大礼包,见文末
1. 什么是梯度
梯度是一个向量,用来表示一个函数在某一点的变化率和变化方向。
在数学中,梯度是多元函数的一阶偏导数的向量,表示在该点上函数值变化最快的方向。
对于一个函数 ,它的梯度用符号 表示,形式为:
其几何意义是:梯度的方向指向函数值增长最快的方向,梯度的大小表示增长速率。
直观理解:
在二维空间中,梯度可以理解为山坡上的坡度。如果函数 是一个山的高度图,则梯度指向最陡峭的上坡方向。
梯度的大小表示这个方向上函数值的变化率有多快。
在机器学习中,梯度常被用来衡量损失函数相对于模型参数的变化,用以指导参数优化。
2. 什么是梯度下降
梯度下降是一种优化算法,广泛应用于机器学习和深度学习中,用于最小化目标函数(通常是损失函数)。
损失函数最小,就可以让模型和实际值的距离最近,从而能使模型更好的预测
相关阅读 :人工智能小白到高手:什么是损失函数
梯度下降利用梯度提供的方向信息,在多维空间中沿着函数值下降最快的方向(梯度的负方向)移动,从而找到函数的局部最小值或全局最小值。
算法步骤:
其中: 是当前参数值。 是学习率(步长),控制每次更新的幅度。 是损失函数的梯度。
图:损失曲线,模型在多次迭代后收敛
直观理解:
梯度下降可以类比为在一个山谷中寻找最低点。每次按照梯度的负方向“下坡”,直到达到最小值(或停止移动)。
人们被困在山中,试图下山(即,试图找到全局最小值)。由于浓雾,能见度极低。因此,山下的路径不可见,他们必须利用局部信息来寻找最小值。他们可以使用梯度下降的方法,这涉及到查看他们当前位置的坡度,然后朝着最陡的下降方向(即下山)前进。
如果他们试图找到山顶(即最大值),那么他们将朝着最陡的上升方向(即上山)前进。
使用这种方法,他们最终将找到下山的路,或者可能会被困在某个洞里(即局部最小值或鞍点),就像一个山湖(这需要使用动量梯度下降、随机梯度下降等)。
3. 梯度下降迭代过程的流程图
下图展示了梯度下降的完整迭代过程,从初始化参数到最终收敛。
如通过面积预测房价的模型:
在训练过程中的三个时间点绘制了模型快照:开始、中间和结束。
通过训练过程中直观呈现模型的快照状态,有助于加深对更新权重和偏差、降低损失和模型收敛之间的联系的理解。
第1次迭代
在下图中,我们可以看到,在第1次迭代左右,由于损失较大,模型无法很好地进行预测。
中间次迭代
在第 5 次迭代左右,我们可以看到,梯度下降法找到了生成更好模型的权重和偏差。
最后一次迭代
在第 20 次迭代左右,我们可以看到模型已收敛,生成了损失可能最低的模型
梯度下降算法是机器学习中不可或缺的优化工具,其高效性和简洁性为模型训练和参数优化提供了可靠的解决方案。
然而,算法的性能仍受限于学习率选择、局部最小值困境等问题,需结合如动量法、自适应梯度优化等改进策略以进一步提升效果。
理解并掌握梯度下降,不仅能帮助我们构建更精确的模型,更能深刻感受数学在机器学习中的核心作用。
有需要的,在公众号「AI取经路」发消息「学习资料」即可获取。
--END--
点亮“赞”和“在看”,“分享”好友一起看