目录
在预测问题中,形如的问题称为logistic回归。其中,称为logistic函数,或sigmoid函数。
logistic回归与线性回归的区别在于,线性回归中,输入x、输出y都是连续值,但在logistic回归中,y为离散的0、1值。
四. logistic函数
称为logistic函数,或sigmoid函数,它的图像如下:
(图源自CS229)
由图像可以看到,它的定义域为,值域为(0,1),通过使用该函数,可将定义域内的输入压缩到(0,1)之间。Logistic函数还有一个特征,就是它的导数也非常简洁,证明如下:
(图源自CS229)
五. logistic回归
在logistic回归问题中,我们也使用梯度下降算法。但与之前不同的是,此处使用的模型假说与误差函数不同。上文已给出,接下来讨论。
假设已知训练例,且设在x固定的情况下,y=1的概率为:
我们可以通过概率论里似然函数求参数的方法来求出θ的值。这一步的思想是,求使y满足训练例的可能性最大的θ。
令。为方便求解,取对数
我们要求似然函数最大,将视为损失函数,得到:
在梯度下降中,我们要用到对θ的偏导数,得到:
将上面所得的与代入梯度下降中去,得到完整算法:
输入:训练集
输出:参数θ
1.令θ=0;
2.计算
3.令,若达到迭代次数,或收敛,转到4.。若不满足,则返回2.。
4.输出θ
六. 感知机算法
感知机算法与Logistic回归的区别在于不同。在该算法中,有
令,且。感知机算法中的g(z)不可导,讲义中也并未给出算法的推导。
输入:训练集
输出:参数θ
1.令θ=0;
2.计算
3.令,若达到迭代次数,或收敛,转到4.。若不满足,则返回2.。
4.输出θ
七. 牛顿法
我们考虑牛顿法求零点的算法。在该方法中,先任意选定一个参数θ,利用公式不断迭代,最终无限接近使f(θ)为零的点θ。在回归算法中,我们需要使似然函数最大(也即损失函数最小),由微积分知识可知,导数为零的点是函数的极值点。回归算法假设该函数是一个凸函数,所以其极值点就是最指点。我们的问题变成,求似然函数导数的零点。可采用如下方式更新参数:。
在θ为n维向量的情况下,
,其中,
该方法也叫Fisher scoring。
输入:训练集
输出:参数θ
1.令θ=0;
2.计算
3.令,若达到迭代次数,或收敛,转到4.。若不满足,则返回2.。
4.输出θ