逻辑回归--分类问题【机器学习】

逻辑回归定义

逻辑回归(Logistic Regression)是一种用于解决二分类(0 or 1)问题的机器学习方法,用于估计某种事物的可能性。比如某用户购买某商品的可能性,某病人患有某种疾病的可能性,垃圾邮件的分类等等,以及某广告被用户点击的可能性等。但这里的可能性与数学上的概率不一样。

问题引入

对于肿瘤是恶性还是良性的分类,我们得出一下模型
逻辑回归--分类问题【机器学习】
从上图可以看到,在现在的情况下,当hθ(x)>=0.5h_\theta(x) >= 0.5的时候,我们认为肿瘤是恶性的,这里我们会得到完全一样的结果,正确率达到100%。但是当我们的数据变成下图这样的时候
逻辑回归--分类问题【机器学习】
我们仍然认为0.5是一个阈值,那么此时模型对结果的预测的性能将会表现得很差。说明我们不能用简单的直线对数据进行分类。

逻辑回归

分类问题我们可以将其转化为数值的计算问题,我们根据计算得到的数值对数据进行分类,我们要求
0<=hθ(x)<=10 <= h_\theta(x) <= 1
从而我们认为当0<=hθ(x)<0.50 <= h_\theta(x) < 0.5的时候,y=0y = 0;当0.5<=hθ(x)<=10.5 <= h_\theta(x) <= 1的时候,y=1y = 1;这样便将数据分为两类。满足条件的逻辑回归函数为
g(z)=11+ezg(z) = \frac{1}{1 + e^{-z}}
从而
hθ(x)=g(θTx)=11+eθTxh_\theta(x) = g(\theta^Tx) = \frac{1}{1 + e^{-\theta^Tx}}
逻辑回归--分类问题【机器学习】
我们最后分类的根据是
逻辑回归--分类问题【机器学习】
对应特征变量来说,其几何意义是非常明显的
逻辑回归--分类问题【机器学习】

逻辑函数的推导

要理解下面的过程,要对概率的知识有一定的理解.
我们用到的逻辑函数为
y=11+ezy = \frac{1}{1 + e^{-z}}
逻辑回归--分类问题【机器学习】
若y >= 0.5被归为1的类,y < 0.5被归为0这类,根据概率论知识,有
P(Y=1X)=ez1+ezP(Y = 1|X) = \frac{e^z}{1 + e^z}
P(Y=0X)=11+ezP(Y = 0|X) = \frac{1}{1 + e^z}
所以
logP(Y=1X)1P(Y=1X)=z=&gt;p1p=ez=&gt;1pp=ez=&gt;p=11+ezlog\frac{P(Y = 1|X)}{1 - P(Y = 1|X)} = z =&gt; \frac{p}{1 - p} = e^z =&gt; \frac{1 - p}{p} = e^{-z} =&gt; p = \frac{1}{1 + e^{-z}}

损失函数的设置

我们这里的损失函数与线性回归的损失函数设置有很大的不同,由于我们的范围是在0-1之间的,我们使用的损失函数为
逻辑回归--分类问题【机器学习】
理由如下,当y = 1的时候,函数图像为
逻辑回归--分类问题【机器学习】
我们看一下是否符号逻辑,我们要求在预测正确的时候cost要小一些,预测错误的时候cost要大一些,上图我们正确的结果是1,如果我们预测的是0,那么cost的计算相应会大一些,同理当y = 0也是一样
逻辑回归--分类问题【机器学习】
两个函数合并可以写成
逻辑回归--分类问题【机器学习】
最后损失函数的形式为
逻辑回归--分类问题【机器学习】

梯度下降训练

对每个参数求导,我们最后得到
逻辑回归--分类问题【机器学习】

延申

在特征平面表现为非线性的时候,我们的模型要做出变化
逻辑回归--分类问题【机器学习】

更多技术博客https://vilin.club/