逻辑回归知识点

目录

作用

模型函数

逻辑回归的目标函数

优化过程:


作用

用来预测分类,与朴素贝叶斯分类不同,贝叶斯获得的是离散值,最后通过比较离散值界定分类,逻辑回归根据区间进行分类。

模型函数

  • h_{\Theta }\left ( x \right ) = \frac{1}{1+e^{-\Theta ^{T}x}}
  • Z=\Theta ^{T}x
  • 则:h\left ( z \right )=\frac{1}{1+e^{-z}}
  • z=+\inftyh\left ( z \right )\approx 1,当z=-\infty,h\left ( z \right )\approx 0

逻辑回归的目标函数

  • 训练 h(x) 的过程,就是求 θ 的过程。
  • 当 y>0.5 时,z 被归类为真(True)或阳性(Positive),当 y<=0.5 时,z 被归类为假(False)或阴性(Negative)
  •  LR也能处理多分类问题

因为h\left ( x \right )\in \left [ 0,1 \right ]

所以h\left ( x \right )即是x属于阳性的概率。P\left ( y=1|x \right )=h\left ( x \right ),P\left ( y=0|x \right )=1-h\left ( x \right )

二项分布式可得:P\left ( y|x \right )=h\left ( x \right )^{y}\left ( 1-h\left ( x \right ) \right )^{1-y}

设训练集一共有 m 个数据,那么这 m 个数据的联合概率就是:

L(\theta) = \prod_{i=1}^{m}P(y^{(i)}|x^{(i)};\theta) = \prod_{i=1}^{m}(h_\theta(x^{(i)}))^{y^{(i)}}(1-h_\theta(x^{(i)}))^{(1-y^{(i)})}

我们求取 θ 的结果,就是让这个 L(θ) 达到最大。即让阳性数据属于阳性的概率最大

使用极大似然估计法:l(\theta) = \log(L(\theta)) = \sum_{i=1}^{m}[y^{(i)}\log(h_\theta(x^{(i)})) + (1-y^{(i)})\log(1-h_\theta(x^{(i)}))]

转变为凸函数:J(\theta) = - \log(L(\theta)) = -\sum_{i=1}^{m}[y^{(i)}\log(h_\theta(x^{(i)})) + (1-y^{(i)})\log(1-h_\theta(x^{(i)}))]

优化目标是最小化J(θ),使用梯度下降法。

优化过程:

J(θ) 对 θ 求导:

\frac{\partial{ J(\theta)}}{\partial{\theta}} = -\sum_{i=1}^{m}[y^{(i)}\frac{h_\theta'(x^{(i)})}{h_\theta(x^{(i)})} - (1-y^{(i)})\frac{h_\theta'(x^{(i)})}{(1-h_\theta(x^{(i)}))}] = \sum_{i=1}^{m}[(-y^{(i)})\frac{h_\theta'(x^{(i)})}{h_\theta(x^{(i)})}+(1-y^{(i)})\frac{h_\theta'(x^{(i)})}{(1-h_\theta(x^{(i)}))}]

因为:

h'(z) = \frac{d(\frac{1}{1+e^{-z}})}{dz} = -(\frac{-e^{-z}}{(1 + e^{-z})^2}) = \frac{e^{-z}}{1+e^{-z}}\frac{1}{1+e^{-z}} = (1- \frac{1}{1+e^{-z}})(\frac{1}{1+e^{-z}} ) = h(z)(1 - h(z))

运用链式法则,有:

\frac{\partial{ h_\theta(x)}}{\partial{\theta}} = \frac{\partial{ h_\theta(x)}}{\partial{(\theta x)}} x = h_\theta(x)(1 - h_\theta(x))x

将上式带入上面的 J(θ) 求导式子里,有:

\frac{\partial{ J(\theta)}}{\partial{\theta}} = \sum_{i=1}^{m}[(-y^{(i)})\frac{h_\theta(x^{(i)})(1- h_\theta(x^{(i)}))x^{(i)}}{h_\theta(x^{(i)})} + (1-y^{(i)})\frac{h_\theta(x^{(i)})(1- h_\theta(x^{(i)}))x^{(i)}}{(1-h_\theta(x^{(i)}))}] = \sum_{i=1}^{m}[-y^{(i)} + y^{(i)}h_\theta(x^{(i)}) + h_\theta(x^{(i)}) - y^{(i)}h_\theta(x^{(i)}) ]x^{(i)} = \sum_{i=1}^{m}[ h_\theta(x^{(i)}) -y^{(i)}]x^{(i)}

当 x 为多维的时候(设 x 有 n 维),则在对 z=θx 求导的时候,要对 x的每一个维度求导。

又因为 θ和 x 维度相同,所以当 x 有 n 维的时候,θ 同样是有 n 维的。则 J(θ) 的求导也变成了对 θ 的每一个维度求导:

\frac{\partial{ J(\theta)}}{\partial{\theta_j}} = \sum_{i=1}^{m}[ h_\theta(x^{(i)}) -y^{(i)}]x_j^{(i)} ;\quad j = 1, 2, ..., n

优化算法伪代码:

设: θ0,α

while (不收敛)
{
    θj:=θj+α∑mi=1(y(i)−hθ(x(i)))x(i)j
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海人001

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值