假设有函数:
,我们希望找到满足
的
值. 这里
是实数.
牛顿方法执行下面的更新:
下图为执行牛顿方法的过程:
简单的来说就是通过求当前点的导数得到下一个点.用到的性质是导数值等于该点切线和横轴夹角的正切值.
令,我们可以用同样的算法去最大化
牛顿方法的一般化:
如果是一个向量,那么:
其中,是
对
的偏导数;
H称为黑塞矩阵(Hessian matrix),是一个n*n的矩阵,n是特征量的个数,并且
牛顿方法的收敛速度比批处理梯度下降快很多,很少次的迭代就能够非常接近最小值了;但是当n很大时,每次迭代求黑塞矩阵和黑塞矩阵的逆代价是很大的.