在线性回归算法中,,
的值域是(-
,+
),有没有一种办法,修改一下这个算法,让其能够实现分类的预测问题呢?
- Sigmoid函数,将
的值域由(-
,+
)变到(0,1)
- 决策边界。假设决策边界的值为0.5,当Sigmoid(
)>0.5,则预测值输出1;当Sigmoid(
)<0.5,则预测值输出0。(这样变换之后即把一个回归问题转换成了一个分类问题)
- 与求线性回归损失函数时的方法一样,先引入似然函数,然后取对数,得出逻辑回归的损失函数。
- 使用梯度下降求
。
2.1 Sigmoid函数
Sigmoid函数即可以把范围在(-,+)的值变换到(0,1)。
2.2 逻辑回归的假设函数:
P() = 0.8,则表示对于这组x值,预测值y等于1的概率为0.8。
取1和取0的概率函数:
合并:
g
2.3 损失函数
求损失函数的过程是对上式,先构建似然函数,再取对数。
似然函数为:
对数似然函数为:
2.4 梯度下降
为了便于使用梯度下降法,在函数前乘以.
求解更新过程:
因此,的更新过程:
2.5 多元分类
逻辑回归模型除了可以用来解决二元分类问题,还可以用来解决多元分类问题。
针对多元分类问题, ,总共有 n + 1 个类别。其解决思路是,首先把问题转换成二元分类问题,即 y = 0 是一个类别,把
作为另一个类别,然后计算这两个类别的概率;接着,把y = 1 作为一个类别,然后把
作为另一个类别,再计算这两个类别的概率。由此推广开,总共需要 n +1 个预测函数。在这 n +1 个预测函数预测出来的概率中,取最大的那个,即为预测的类别。
2.6 sklearn调用及参数解释
机器学习sklearn19.0——Logistic回归算法
sklearn逻辑回归(Logistic Regression,LR)类库使用小结
官方文档
文章参考:
机器学习之逻辑回归