【四】牛顿方法

本文介绍了牛顿法在求解机器学习中的优化问题,特别是如何应用于寻找损失函数的最小值或似然函数的最大值。相比于梯度下降法,牛顿法具有更快的收敛速度,但也需要计算更多的导数。文章还探讨了指数分布族,包括伯努利分布和高斯分布,并引入了一般线性模型和多项式分布的概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

牛顿法

牛顿法常用来逼近函数的零点。在回归和分类问题中,经常需要计算损失函数的最小值或似然函数的最大值,众所周知,在极值点处导数为零,因此我们可以将求极值的问题转化为求导数零点的问题,然后用牛顿法求解。相比之前我们介绍过的梯度下降法,牛顿法具有较快的收敛速度,在作业中我们将会证明在满足一定条件下,牛顿法可仅计算一步即可得到极值,但牛顿法也有自己的缺点,即较大的计算量(需要计算二次导数),具体的算法我们将在下面的介绍中逐渐给出。

牛顿法的逼近过程如下


图中的曲线表示我们要求其零点的函数,由于计算上的限制我们可能无法直接用代数的方法求出其零点,但我们可以从几何上进行逼近,只要达到我们预先设定的精确度即可认为找到了零点。其做法为:

1.选择一个初始状态

2.在该点处画出函数的切线,并与x轴交于一点,由于切线是一个线性的函数,我们可以很容易算出其与x轴交点的横坐标,如中间的图所示

3.过第二步产生的交点做x轴的垂线,与函数交于一点

4.过第三步的交点做切线,重复2、3步,如右图所示

可以看出,经过上述过程,切线与x轴的交点将不断逼近零点,但永远不会超过零点,只要我们迭代次数过多,便可达到我们需要的精确度。并且可以看出,牛顿法是以指数速度进行逼近的,远远快于之前介绍的梯度下降法。

假设我们求函数f(θ)的零点,则牛顿法可以表示为

由于我们希望得到似然函数的极点,因此可将其导数作为我们求零点的函数f(θ),转换后公式如下

可以看出,牛顿法不仅需要计算似然函数的一阶导数,还要

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值