logistic回归公式推导

假设函数

h(θ)=11+eθTX h ( θ ) = 1 1 + e − θ T X

为什么使用sigmod

这个网上有很多文章,但是还是不太看懂。大概就是0-1之间增函数,还有是指数分布簇。

代价函数

J(θ)=1mi=1m[yilog(hθ(xi))+(1yi)log(1hθ(xi))] J ( θ ) = − 1 m ∑ i = 1 m [ y i log ⁡ ( h θ ( x i ) ) + ( 1 − y i ) log ⁡ ( 1 − h θ ( x i ) ) ]

代价函数推导

伯努利分布

P(X=n)={1p,n=0p,n=1 P ( X = n ) = { 1 − p , n = 0 p , n = 1

求p的最大似然估计量

P{X=x}= px(1p)1p=0,1 p x ( 1 − p ) 1 − p = 0 , 1

x1,x2,,xn x 1 , x 2 , … , x n 是给定的样本值

对应的似然函数

L(p)=i=1npxi(1p)1xi(0<p<1) L ( p ) = ∏ i = 1 n p x i ( 1 − p ) 1 − x i ( 0 < p < 1 ) 求L(p)的最大值点

取对数

lnL(p)=i=1nln[pxi(1p)1xi] ln ⁡ L ( p ) = ∑ i = 1 n ln ⁡ [ p x i ( 1 − p ) 1 − x i ]

=i=1n[xilnp+(1xi)ln(1p)] = ∑ i = 1 n [ x i ln ⁡ p + ( 1 − x i ) ln ⁡ ( 1 − p ) ]

替换成logistic回归

Cost(h(θ),y)={log(hθ(x)),y=1log(1hθ(x)),y=0 C o s t ( h ( θ ) , y ) = { − l o g ( h θ ( x ) ) , y = 1 − l o g ( 1 − h θ ( x ) ) , y = 0
(价函数
J(θ)=1m[I=1myiloghθ(xi)+(1yi)log(1hθ(xi))] 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(θ)=1m[I=1myiloghθ(xi)+(1yi)log(1hθ(xi))] 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=1mI=1mθj[yiloghθ(xi)+(1yi)log(1hθ(xi))] ∂ ∂ θ j = − 1 m ∑ I = 1 m ∂ ∂ θ j [ y i l o g h θ ( x i ) + ( 1 − y i ) l o g ( 1 − h θ ( x i ) ) ]
=1mI=1m[yiloghθ(xi)]+[(1yi)log(1hθ(xi))] = − 1 m ∑ I = 1 m [ y i l o g h θ ( x i ) ] ′ + [ ( 1 − y i ) l o g ( 1 − h θ ( x i ) ) ] ′ ……….( (u+v)=u+v ( u + v ) ′ = u ′ + v ′ )
=1mI=1m[yiloghθ(xi)]+[(1yi)log(1hθ(xi))] = − 1 m ∑ I = 1 m [ y i l o g h θ ( x i ) ] ′ + [ ( 1 − y i ) l o g ( 1 − h θ ( x i ) ) ] ′ ……….( (uv)=uvuv ( u v ) ′ = u ′ v − u v ′ )
=1mI=1m[(yi)loghθ(xi)+yi(loghθ(xi))]+[(1yi)log(1hθ(xi))+(1yi)log(1hθ(xi))] = − 1 m ∑ I = 1 m [ ( y i ) ′ l o g h θ ( x i ) + y i ( l o g h θ ( x i ) ) ′ ] + [ ( 1 − y i ) ′ l o g ( 1 − h θ ( x i ) ) + ( 1 − y i ) l o g ( 1 − h θ ( x i ) ) ′ ]
=1mI=1m[(yi)loghθ(xi)+yi(loghθ(xi))]+[(1yi)log(1hθ(xi))+(1yi)log(1hθ(xi))] = − 1 m ∑ I = 1 m [ ( y i ) ′ l o g h θ ( x i ) + y i ( l o g h θ ( x i ) ) ′ ] + [ ( 1 − y i ) ′ l o g ( 1 − h θ ( x i ) ) + ( 1 − y i ) l o g ( 1 − h θ ( x i ) ) ′ ] ……….( h(θ)=11+eθTX h ( θ ) = 1 1 + e − θ T X 带入)
=1mI=1m[yi(log(11+eθTxi)]+[(1yi)log(1+eθTxi11+eθTxi)] = − 1 m ∑ I = 1 m [ y i ( l o g ( 1 1 + e − θ T x i ) ′ ] + [ ( 1 − y i ) l o g ( 1 + e − θ T x i − 1 1 + e − θ T x i ) ′ ] ……….( (Cu)=Cu,(log(u))=1uu ( C u ) ′ = C u ′ , ( l o g ( u ) ) ′ = 1 u u ′ )
=1mI=1m[yi(1+eθTxi)(11+eθTxi)]+[(1yi)(1+eθTxieθTxi)(eθTxi1+eθTxi)] = − 1 m ∑ I = 1 m [ y i ( 1 + e − θ T x i ) ( 1 1 + e − θ T x i ) ′ ] + [ ( 1 − y i ) ( 1 + e − θ T x i e − θ T x i ) ( e − θ T x i 1 + e − θ T x i ) ′ ] ……….( (uv)=uvuvv2,(eCx)=CeCx ( u v ) ′ = u ′ v − u v ′ v 2 , ( e − C x ) ′ = − C e − C x )
=1mI=1m[yi(1+eθTxi)(0(1+eθTxi)(1+eθTxi)2)][(1yi)(1+eθTxieθTxi)((eθTxi)(1+eθTxi)2)] = − 1 m ∑ I = 1 m [ y i ( 1 + e − θ T x i ) ( 0 − ( 1 + e − θ T x i ) ′ ( 1 + e − θ T x i ) 2 ) ] − [ ( 1 − y i ) ( 1 + e − θ T x i e − θ T x i ) ( ( e − θ T x i ) ′ ( 1 + e − θ T x i ) 2 ) ]
=1mI=1m[yi((1+eθTxi)(1+eθTxi))][(1yi)(xi(1+eθTxi))] = − 1 m ∑ I = 1 m [ y i ( − ( 1 + e − θ T x i ) ′ ( 1 + e − θ T x i ) ) ] − [ ( 1 − y i ) ( x i ( 1 + e − θ T x i ) ) ] ……….( (eCx)=CeCx ( e − C x ) ′ = − C e − C x )
=1mI=1myixeθTxix+xyi1+eθTxi = − 1 m ∑ I = 1 m y i x e − θ T x i − x + x y i 1 + e − θ T x i
=1mI=1myi(1+eθTxi1)1+eθTxixj = − 1 m ∑ I = 1 m y i ( 1 + e − θ T x i − 1 ) 1 + e − θ T x i x j
=1mI=1myi(1+eθTxi1)1+eθTxixj = − 1 m ∑ I = 1 m y i ( 1 + e − θ T x i − 1 ) 1 + e − θ T x i x j
=1mI=1myi11+eθTxixi = − 1 m ∑ I = 1 m y i − 1 1 + e − θ T x i x i
=1mI=1m[yihθ(xi)]xj = − 1 m ∑ I = 1 m [ y i − h θ ( x i ) ] x j

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我来简单介绍一下 logistic 回归的原理推导。 Logistic 回归是一种分类算法,它的目标是根据输入特征预测样本属于哪个类别。在二分类问题中,我们通常将样本分为正类和负类两种情况。Logistic 回归的核心思想是通过一个 Sigmoid 函数将输入特征映射到 0 到 1 的概率值,然后根据概率值进行分类。 具体来说,我们假设有 $m$ 个样本,每个样本有 $n$ 个特征,我们用 $x^{(i)}$ 表示第 $i$ 个样本的特征向量,用 $y^{(i)}$ 表示第 $i$ 个样本的标签(0 或 1)。我们的目标是学习一个函数 $h_{\theta}(x)$,使得对于任意输入特征 $x$,$h_{\theta}(x)$ 都能够预测出该样本属于正类的概率。 我们可以使用逻辑回归模型来实现这个目标。逻辑回归模型的形式如下: $$h_{\theta}(x) = g(\theta^Tx) = \frac{1}{1+e^{-\theta^Tx}}$$ 其中,$\theta$ 是模型参数,$g(z)$ 是 Sigmoid 函数,其定义为: $$g(z) = \frac{1}{1+e^{-z}}$$ 我们的目标是最大化似然函数,即: $$L(\theta) = \prod_{i=1}^m h_{\theta}(x^{(i)})^{y^{(i)}}(1-h_{\theta}(x^{(i)}))^{1-y^{(i)}}$$ 为了方便计算,我们通常使用对数似然函数: $$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)}))$$ 我们的目标是最大化对数似然函数,即: $$\max_{\theta} l(\theta)$$ 我们可以使用梯度上升算法来求解最优参数 $\theta$。具体来说,我们需要计算对数似然函数的梯度: $$\frac{\partial l(\theta)}{\partial \theta_j} = \sum_{i=1}^m (h_{\theta}(x^{(i)})-y^{(i)})x_j^{(i)}$$ 然后根据梯度上升算法的更新公式更新参数 $\theta$: $$\theta_j := \theta_j + \alpha \frac{\partial l(\theta)}{\partial \theta_j}$$ 其中,$\alpha$ 是学习率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值