学习总结:机器学习(七)
感知器算法(The perceptron algorithm)和牛顿法(The Newton's method)
感知器算法:
在前面讲的逻辑回归中,g(z)采用的是sigmoid函数;而在感知器算法中,g(z)采用阶跃函数:

同样,让hθ(x) = g(θTx),更新策略为:
![]()
这就是感知器学习算法。
牛顿法:
牛顿法原本是用来寻找一个函数的零点的,采用如下的更新策略:

同样,我们可以用牛顿下降法来寻找一个函数的最大值点,采用下面的更新策略:

在逻辑回归中,我们用牛顿法来代替梯度上升法,我们可以获得如下的更新策略:
![]()
H是赫森矩阵(Hessian Matrix),它的表达式如下:

注意上面的更新策略,我们可以看到,牛顿法直接给出了每一步的步长,而梯度法是没有给出步长定义的。因此,相比于梯度法来说,牛顿法给出了更好的步长。但是赫森矩阵H为奇异矩阵时,就不能用牛顿法了。而且,计算H的逆矩阵时,算法复杂度高,步长带来的好处轻易就抵消了。所以牛顿法的应用值得考虑。
问题:1.为什么感知器算法的更新策略仍旧与逻辑回归是一样的?
我的答案:感知器算法与逻辑回归的不同之处在于,其采用的g(z)函数不同。但相同的是,阶跃函数和sigmoid函数具有相似的特征,都是将样本点分成两类,因此可以采用相同的更新策略。这个回答很牵强,希望以后可以找到更好的答案。

浙公网安备 33010602011771号