为什么要有逻辑回归
解决线性回归不能很好的划分二分类的问题。
这种只适用于二分类的问题。如图,y只有0和1两种取值。
如图,这种 是与非 的图像。
有时候线性回归并不能很好的划分是与非。
但是上图有一个特征,y=0.5很好的把是于非划分了出来,小于0.5的是非,大于0.5的是 '是'
逻辑回归应运而生:
先得出线性回归的公式z,然后再代入下面的公式。这样>0.5的都会得到 '是',<0.5的都会得到 '非'
h ( z ) = 1 1 + e − z \begin{array}{c}h(z)=\frac{1}{1+e^{-z}}\end{array} h(z)=1+e−z1
逻辑回归的代价函数问题
普通函数的代价函数
J ( θ 0 , θ 1 ) = 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y ( i ) ) 2 J\left(\theta_{0}, \theta_{1}\right)=\frac{1}{2 m} \sum_{i=1}^{m}\left(h_{\theta}\left(x^{(i)}\right)-y^{(i)}\right)^{2} J(θ0,θ1)=2m1i=1∑m(hθ(x(i))−y(i))2
m组数据的 预测值 - 实际值 的最小平方和
逻辑回归的代价函数
为什么是上面的公式?
因为逻辑回归的实际值 是 [0,1],代价任你相减!直接相减 值不超过1,怎么样都是没代价一样。所以不能再用直接相减 再 最小平方和的方式求代价了。所以有了上面的公式。
作用
当y=1时:
y=1的时候,h=1/(1+e^-z) 接近1。
而把h=1代入 -log(1)得到0。说明预测函数h和y几乎一致
而把h=0代入 -log(0)得到无穷,说明预测错误,得到惩罚
当y=0时:
y=0的时候,预测函数肯定也是接近于0的。
h应该接近0,而把h=1代入 -log(1-h) = -log(0)得到无穷。说明h预测错误。
而把h=0代入 -log(1-h) = -log(1)得到0,说明预测正确
再用拉格朗日的方式结合到一块。
正则化逻辑回归
我们把θ3,θ4的系数弄得很大。
与之前的对比,同样要得到一个y值,由于上面的式子中的θ3,θ4系数很大,那么只好θ3,θ4努力的变小。才能得到同样的y值。这样幂比较高的,θ3,θ4比较小,对式子的影响就没那么大了。图像也就没那么弯曲了。