前言
在学习和实践了线性回归模型后,我们终于来到了下一站------分类问题,分类问题中经典的算法称为逻辑回归.
逻辑回归模型引入
给定一些样本以后,我们首先需要选用一个合适的样本估测函数去估计样本值,首先如果使用线性函数去模拟可以吗?现在想要预测肿瘤良性与肿瘤大小的关系,看下面这些样本在坐标系上的分布.
此时使用线性回归可以得到如下图形:
若使用线性函数模拟,在本次模拟中,根据下列函数判定,模拟效果还不错:
y = { 1 , if p r e d i c t _ r e s u l t ≥ 0.5 0 , if p r e d i c t _ r e s u l t < 0.5 y= \begin{cases} 1, & \text{if $predict\_result\geq0.5$} \\ 0, & \text{if $predict\_result<0.5$} \end{cases} y={
1,0,if predict_result≥0.5if predict_result<0.5
可以在图像中看出,黄线左侧肿瘤预测为良性,右侧预测为恶性,目前看来一切都很正常,那我们再加入一个样本(18,1),得到的结果如下图:
预测的准确率低的离谱,这就说明在分类问题中,运用线性回归预测是不科学的,可能存在某些数据导致预测很差,那么,我们需要构造一个合理的预测函数,这个预测函数h的值最好能够满足 0 < h ( x ) < 1 0<h(x)<1 0<h(x)<1,有一个函数完美的契合了这样的条件------sigmoid function.
sigmoid function------预测函数
这个函数表达式是这样的:
ϕ ( z ) = 1 1 + e − z \phi(z)=\frac {1}{1+e^{-z}} ϕ(z)=1+e−z1
它的图像是这样的:
从图像上可以看出,当z<0时, ϕ < 0.5 \phi<0.5 ϕ<0.5,z>0时, ϕ > 0.5 \phi>0.5 ϕ>0.5,并且它是连续的,位于0和1之间,我们将 z = θ T x z=\theta^Tx z=θTx代入函数,就可以得到满足条件的预测函数:
h θ ( x ) = 1 1 + e − θ T x h_\theta(x)=\frac{1}{1+e^{-\theta^T x}} hθ(x)=