Logistic regression(逻辑回归 算法原理)

Logistic regression


目的: 回归???NO !!!经典的二分类算法!!!
优点:原理简单,容易实现,应用广泛
机器学习算法的选择:先逻辑回归,再用复杂的。
决策边界:可以是非线性的。


 Sigmoid函数
 

g(z) = \frac{1}{1+e^{-z}}

自变量取值为任意实数,值域[0,1]

将任意的输入映射到[0,1]区间,再在线性回归中可以得到一个预测值h _{\theta }(x) ^{y},再将该值映射到Sigmoid中这样就完成了由值到概率的转换,也就是分类任务。

预测函数:h_{\theta }(x) =g(\theta ^{T}x) =\frac{1}{1+e^{-\theta ^ {t}x}}

其中:\theta ^{T}x = \sum_{i=1}^{m}\theta _{i}x_{i}=\theta _{0}+\theta _{1}x_{1}+\theta _{2}x_{2}+...

分类任务:

p(y=1|x;\theta)=h _{\theta }(x)                                                                                                 

p(y=0|x;\theta)=1-h _{\theta }(x)

上面两个式子不利于化简。

整合:p(y|x;\theta)=h _{\theta }(x) ^{y}(1-h_{\theta }x) ^{1-y}

y:目标值分类只有两个,不是0,就是1。

对于二分类任务(0,1),整合后取0只保留(1-h_{\theta }x) ^{1-y} 取1只保留h _{\theta }(x) ^{y}

 似然函数: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(\theta )=logL(\theta )=\sum_{i=1}^{m}(y_{i}log h_{\theta }(x_{i})+(1-y_{i})log(1-h_{\theta }x_{i}))

求最大似然(梯度上升)——>梯度下降,引入 -(1/m) ,(1/m)是为了综合考虑m隔样本。

此时应用梯度上升求最大值,引入

 解释:什么样的方向(theta)最合适的问题?——对(θ)求偏导。

1. 接下来对J(θ)求偏导

2. 对每个theta求偏导。(θ1——thetan)

3. 最后x_{i}^{}j  i:第几个样本 ,j:样本的第几个特征

梯度下降得到最优方向后:

参数更新:

更新的方向(1)乘以学习率(α或者叫步长)就等于更新的幅度。

θj更新的次数,可以自己写个循环。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值