监督学习 | 线性分类 之Logistic回归原理及Sklearn实现


相关文章:

机器学习 | 目录

监督学习 | 线性回归 之多元线性回归原理及Sklearn实现

监督学习 | 非线性回归 之多项式回归原理及Sklearn实现

监督学习 | 线性回归 之正则线性模型原理及Sklearn实现

1. Logistic 回归

我们之前讨论了如何用线性模型进行回归,但若要做的是分类问题怎么办?其实只需要找一个单调可微函数将分类任务的真实标记 y y y 与线性回归模型的预测值 z z z联系起来。

考虑二分类任务,其输出标记 y ∈ { 0 , 1 } y\in \{0,1\} y{ 0,1} ,而线性回归模型产生的预测值 z = w T x + b z=\boldsymbol{w}^T\boldsymbol{x}+b z=wTx+b 是实值,于是,我们只需将实值 z z z 转换为 0/1 值。最理想的是“单位阶跃函数”(unit-step function):

y = { 0 , z < 0 0.5 , z = 0 1 , z > 0 (3) y=\left\{ \begin{aligned} &0, &\quad z<0\\ &0.5,&\quad z=0\\ &1,&\quad z>0 \end{aligned} \right.\tag{3} y=0,0.5,1,z<0z=0z>0(3)

即若预测值 z z z 大于零就判为正例,小于零就判为反例,预测值为临界值零则可任意判断,如下图所示:

图1 单位阶跃函数与对数几率函数

但如图所示,单位阶跃函数不连续,所以我们希望找到能在一定程度上近似单位阶跃函数的“替代函数”(surrogate function),并希望它单调可微,对数几率函数正是这样一个常用的替代函数。

1.1 Logistic 函数

对数几率函数(Logistic function)是一种“Sigmoid 函数”,它将 z z z 值转化为接近 0 或 1 的 y y y 值,并且其输出值在 z = 0 z=0 z=0 附近变化很陡。

对数几率函数:
f ( z ) = 1 1 + e − z (1) f(z)=\frac{1}{1+e^{-z}} \tag{1} f(z)=1+ez1(1)

z = w T x + b z=\boldsymbol{w}^T\boldsymbol{x}+b z=wTx+b 代入得:

p = 1 1 + e − ( w T x + b ) (2) p=\frac{1}{1+e^{-(\boldsymbol{w}^T\boldsymbol{x}+b)}} \tag{2} p=1+e(wTx+b)1(2)

移项并取对数得:

l n ( p 1 − p ) = w T x + b (3) ln(\frac{p}{1-p})=\boldsymbol{w}^T\boldsymbol{x}+b \tag{3} ln(1pp)=wTx+b(3<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值