最大化对数似然函数——牛顿方法(The Newton's method)

回到逻辑回归中sigmoid函数 g(z) ,我们讨论另一个最小化对数似然函数的方法。
让我们从使用牛顿方法求0点开始。给一个一元函数 f:RR ,我们试图去找一个点 θ 使得 f(θ)=0 。其中 θ 是一个实数。牛顿方法将会这样迭代寻找0点:

θ:=θf(θ)f(θ).

这个方法的几何阐述是很直接的。从某一初始位置出发,做函数的切线与y轴相交,交点的x值即为下一次画切线的出发点,依次循环直至收敛。下图是整个过程的图示:

The Newton's method

牛顿方法是一种快速寻找 f(θ)=0 点的方法,怎样将其应用于最大化对数似然函数上呢?考虑对数似然函数 的最大值点对应的一阶导为0,所有我们令 f(θ)=(θ) ,然后我们就可以使用同样的算法求得最大值点:

θ:=θ(θ)′′(θ).

最后在我们的逻辑回归中, θ 是一个向量值,所以我们需要将牛顿算法推广到多元函数的情况:

θ:=θH1θ(θ).

上式中, θ(θ) 是对数函数关于向量 θ 的偏导。而 H1 是一个n*n的矩阵,称为海森矩阵,它的每一项定义如下:

Hij=2(θ)θiθj.

普遍而言,牛顿方法的收敛速度比梯度下降要快得多,他只需要很少的迭代次数就可以收敛。但需要注意的是牛顿方法每一次迭代的时间成本比梯度下降要大得多,因为它每次都要求海森矩阵。即使如此,在维数n不是特别大的情况下,牛顿方法的表现要好很多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值