逻辑回归知识点整理

逻辑回归笔记整理

逻辑回归(Logistic Regression)

首先需要明确两个概念:

  1. 逻辑回归并非回归算法,而是分类算法。“回归”一词来源于最佳拟合(拟合:调整分类边界),可简单理解为用一条直线对一些数据点进行拟合(该线称为最佳拟合直线),而拟合过程称为回归。
  2. logistic分类的思想:根据现有数据对分类边界建立回归公式

分类问题

对于二分类问题:
y ϵ { 0 , 1 } y\epsilon\{0,1\} yϵ{0,1} 其中,0表示负例,1表示正例。

对于多分类问题
y ϵ { 0 , 1 , 2 , 3 , . . . , n } y\epsilon\{0,1,2,3,...,n\} yϵ{0,1,2,3,...,n}
若分类器使用的是回归模型,并且模型已经训练好,可设置一个阈值:
h θ ( x ) ≥ 0.5 h_{\theta}(x)\geq0.5 hθ(x)0.5,y属于正例;若 h θ ( x ) &lt; 0.5 h_{\theta}(x)&lt;0.5 hθ(x)<0.5,y属于负例

对于二分类问题,线性回归模型Hypothesis输出值 h θ ( x ) h_{\theta}(x) hθ(x)可以大于1也可以小于0。而对于逻辑回归,Hypothesis输出值介于0到1之间:
0 ≤ h θ ( x ) ≤ 1 0\leq h_{\theta}(x)\leq1 0hθ(x)1

代价函数

将Hypothesis输出值界定在0到1之间,需引入函数g,令Hypothesis表示为:
h θ ( x ) = g ( θ T x ) h_{\theta}(x)=g(\theta^Tx) hθ(x)=g(θTx)

g称为Sigmoid Function或Logisitic Function:
g ( z ) = 1 1 + e − z g(z)=\frac1{1+e^{-z}} g(z)=1+ez1
其函数图形为:
sigmoid函数图
其中, θ \theta θ为参数。综合以上两个式子,可得到LR模型的数学表达式:
h θ ( x ) = 1 1 + e − θ T x h_{\theta}(x)=\frac1{1+e^{-\theta^Tx}} hθ(x)=1+eθTx1

决策边界

假设给定阈值0.5,当 h θ ( x ) ≥ 0.5 h_{\theta}(x)\geq0.5 hθ(x)0.5时, y = 1 y=1 y=1;当 h θ ( x ) &lt; 0.5 h_{\theta}(x)&lt;0.5 hθ(x)<0.5时, y = 0 y=0 y=0。对于 h θ ( x ) = g ( θ T x ) ≥ 0.5 h_{\theta}(x)=g(\theta^Tx)\geq0.5 hθ(x)=g(θTx)0.5,则 θ T x ≥ 0 \theta^Tx\geq0 θTx0,意味着预估 y = 1 y=1 y=1;反之,当预测 y = 0 y=0 y=0时, θ T x &lt; 0 \theta^Tx&lt;0 θTx<0
故可认为 θ T x = 0 \theta^Tx=0 θTx=0是一个决策边界,当其大于或小于0时,LR分别预测不同的分类结果。如:
h θ ( x ) = g ( θ 0 + θ 1 x 1 + θ 2 x 2 ) h_{\theta}(x)=g(\theta_0+\theta_1x_1+\theta_2x_2) hθ(x)=g(θ0+θ1x1+θ2x2)
θ 0 , θ 1 , θ 2 \theta_0,\theta_1,\theta_2 θ0,θ1,θ2,分别取-3,1,1,当 − 3 + x 1 + x 2 ≥ 0 -3+x_1+x_2\geq0 3+x1+x20时, y = 1 y=1 y=1,则 x 1 + x 2 = 3 x_1+x_2=3 x1+x2=3是一个决策边界:
线性决策边界
这是一个线性的决策边界,当 h θ ( x ) h_{\theta}(x) hθ(x)更复杂时,可得到非线性的决策边界:
h θ ( x ) = g ( θ 0 + θ 1 x 1 + θ 2 x 2 + θ 3 x 1 2 + θ 4 x 2 2 ) h_{\theta}(x)=g(\theta_0+\theta_1x_1+\theta_2x_2+\theta_3x_1^2+\theta_4x_2^2) hθ(x)=g(θ0+θ1x1+θ2x2+θ3x12+θ4x22)
θ 0 , θ 1 , θ 2 , θ 3 , θ 4 \theta_0,\theta_1,\theta_2,\theta_3,\theta_4 θ0,θ1,θ2,θ3,θ4分别取值-1,0,0,1,1,当 x 1 2 + x 2 2 ≥ 1 x_1^2+x_2^2\geq1 x12+x221时, y = 1 y=1 y=1,此时决策边界是一个圆:
非线性决策边界

代价函数(Cost Function)

LR的代价函数为对数似然损失函数
f ( x ) = { − l o g ( h θ ( x ) ) if y=1 − l o g ( 1 − h θ ( x ) ) if y=0 f(x)= \begin{cases} -log( h_{\theta}(x))&amp; \text{if y=1}\\ -log(1- h_{\theta}(x))&amp; \text{if y=0} \end{cases} f(x)={log(hθ(x))log(1hθ(x))if y=1if y=0
加入惩罚项:
J ( θ ) = 1 m ∑ i = 1 m C o s t ( h θ ( x ( i ) ) , y ( i ) ) J(\theta)=\frac1m\sum_{i=1}^{m}Cost(h_{\theta}(x^{(i)}),y^{(i)}) J(θ)=m1i=1mCost(hθ(x(i)),y(i))
最终的代价函数公式为:
J ( θ ) = 1 m [ ∑ i = 1 m y ( i ) l o g h θ ( x ( i ) ) + ( 1 − y ( i ) ) l o g ( 1 − h θ ( x ( i ) ) ) ] J(\theta)=\frac1m\left[\sum_{i=1}^{m}y^{(i)}logh_{\theta}(x^{(i)})+(1-y^{(i)})log(1-h_{\theta}(x^{(i)}))\right] J(θ)=m1[i=1my(i)loghθ(x(i))+(1y(i))log(1hθ(x(i)))]
取似然函数为:
L ( θ ) = ∏ i = 1 m P ( y ( i ) ∣ x ( i ) ; θ ) = ∏ i = 1 m ( h θ ( x ( i ) ) ) y ( i ) ( 1 − l o g h θ ( x ( i ) ) ) 1 − y ( i ) L(\theta)=\prod_{i=1}^{m}P(y^{(i)}|x^{(i)};\theta)=\prod_{i=1}^{m}(h_{\theta}(x^{(i)}))^{y^{(i)}}(1-logh_{\theta}(x^{(i)}))^{1-y{(i)}} L(θ)=i=1mP(y(i)x(i);θ)=i=1m(hθ(x(i)))y(i)(1loghθ(x(i)))1y(i)
对数似然函数为:
l ( θ ) = l o g L ( θ ) = ∑ i = 1 m ( y ( i ) l o g h θ ( x ( i ) ) + ( 1 − y ( i ) ) l o g ( 1 − h θ ( x ( i ) ) ) ) l(\theta)=logL(\theta)=\sum_{i=1}^{m}\left(y^{(i)}logh_{\theta}(x^{(i)})+(1-y^{(i)})log(1-h_{\theta}(x^{(i)}))\right) l(θ)=logL(θ)=i=1m(y(i)loghθ(x(i))+(1y(i))log(1hθ(x(i))))
最大似然估计就是求使 l ( θ ) l(\theta) l(θ)取最大值时的 θ \theta θ

多类分类问题

处理方法:保留其中一类,剩下的作为另一类。
多类分类问题图示
分别计算其中一类相对于其他类的概率:
多类分类问题
对于每一个类i训练一个LR分类器,并预测 y=i 的概率。对于每一个新的输入变量x,分布对每一个类别进行预测,取最大概率的那个类作为分类结果。

参考链接:
[1]: http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值