概述
Logistic回归的目的是寻找一个非线性函数Sigmoid的最佳拟合参数,求解过程可以由最优化算法来完成。在最优化算法中,最常用的就是梯度下降算法,而梯度下降算法又可以简化为随机梯度下降算法。
随机梯度下降算法与梯度下降算法的效果相当,但占用更少的计算资源。此外,随机梯度下降是一个在线算法,它可以在新数据到来时就完成参数更新,而不需要重新读取整个数据集来进行批处理运算。
我们想要找的函数应该是,能接受所有的输入然后预测出类别。例如,在两个类的情况下,上述函数输出0或1。具有这种性质的函数称为海维塞德阶跃函数(Heaviside step function),或者直接称为单位阶跃函数。然而,海维塞德阶跃函数的问题在于:该函数在跳跃点上从0瞬间跳跃到1,这个瞬间跳跃过程有时很难处理,即不满足单调可导的性质。幸好,另一个函数也有类似的性质,且数学上更易处理,这就是Sigmoid函数。
如果横坐标刻度足够大,Sigmoid函数看起来很像一个阶跃函数。
Logistic回归也可以被看成是一种概率估计。
函数表示
其中:
代价函数
梯度下降
Repeat until convergence {
}
调整可得:
Repeat until convergence {
}
多项式回归
不管是线性回归,还是逻辑回归,当使用方程进行拟合曲线的时候,一定要考虑是否使用多项式。例如当只有
x1
和
x2
两个特征的时候,当发现使用直线无法将数据集进行分类的时候,可以考虑更高次幂的多项式组合:
然后令
将模型转化为线性回归模型。
需要注意的是,如果我们采用了多项式回归模型,在运行梯度下降之前,一定要进行特征归一化。