学习笔记——机器学习--逻辑回归理论推导

  在介绍Logistic Regression之前我们先简单说一下线性回归,,线性回归的主要思想就是通过历史数据拟合出一条直线,用这条直线对新的数据进行预测
线性回归的公式如下:

y=hθ(x)=θ0+θ1x1+θ2x2++θnxn=θTx(532) (532) y = h θ ( x ) = θ 0 + θ 1 x 1 + θ 2 x 2 + ⋯ + θ n x n = θ T x

  而对于Logistic Regression来说,其思想也是基于线性回归(Logistic Regression属于广义线性回归模型)。其公式如下:

hθ(x)=g(θTx)=11+eθTx       g(z)=11+ez(533)(534) (533) h θ ( x ) = g ( θ T x ) = 1 1 + e − θ T x (534)               g ( z ) = 1 1 + e − z

  被称作sigmoid函数,我们可以看到,Logistic Regression算法是将线性函数的结果映射到了sigmoid函数中。
sigmoid的函数图形如下:


这里写图片描述

  可以看到,sigmoid的函数输出是介于(0,1)之间的,中间值是0.5,于是之前的公式 hθ(x) h θ ( x ) 的含义就很好理解了,因为 hθ(x) h θ ( x ) 输出是介于(0,1)之间,也就表明了数据属于某一类别的概率,例如 :
          hθ(x)<0.5 h θ ( x ) < 0.5 则说明当前数据属于A类;
          hθ(x)>0.5 h θ ( x ) > 0.5 则说明当前数据属于B类。
  所以我们可以将sigmoid函数看成样本数据的概率密度函数。有了上面的公式,我们接下来需要做的就是怎样去估计参数 θ θ
  首先我们来看, θ θ 函数的值有特殊的含义,它表示 hθ(x) h θ ( x ) 结果取1的概率,因此对于输入x分类结果为类别1和类别0的概率分别为:

P(y=1|x;θ)=hθ(x)P(y=0|x;θ)=1hθ(x)(535)(536) (535) P ( y = 1 | x ; θ ) = h θ ( x ) (536) P ( y = 0 | x ; θ ) = 1 − h θ ( x )

根据上式,接下来我们可以使用概率论中极大似然估计的方法去求解损失函数,首先得到概率函数为:

P(y|x;θ)=(hθ(x))y×(1hθ(x))1y(537) (537) P ( y | x ; θ ) = ( h θ ( x ) ) y × ( 1 − h θ ( x ) ) 1 − y

  因为样本数据(m个)独立,所以它们的联合分布可以表示为各边际分布的乘积,取似然函数为:

L(θ)=Πmi=1P(y(i)x(i);θ)        =Πmi=1(hθ(x(i)))y(i)×(1hθ(x(i)))1y(i)(538)(539) (538) L ( θ ) = Π m i = 1 P ( y ( i ) | x ( i ) ; θ ) (539)                 = Π m i = 1 ( h θ ( x ( i ) ) ) y ( i ) × ( 1 − h θ ( x ( i ) ) ) 1 − y ( i )

取对数似然函数:

l(θ)=log(L(θ))=i=1mlog((hθ(x(i)))y(i))+log((1hθ(x(i)))1y(i))                        =i=1my(i)log(hθ(x(i)))+(1y(i))log((1hθ(x(i)))(540)(541) (540) l ( θ ) = l o g ( L ( θ ) ) = ∑ i = 1 m log ⁡ ( ( h θ ( x ( i ) ) ) y ( i ) ) + l o g ( ( 1 − h θ ( x ( i ) ) ) 1 − y ( i ) ) (541)                                                 = ∑ i = 1 m y ( i ) log ⁡ ( h θ ( x ( i ) ) ) + ( 1 − y ( i ) ) l o g ( ( 1 − h θ ( x ( i ) ) )

给出损失函数 J(θ)=l(θ) J ( θ ) = l ( θ ) ,对 J(θ) J ( θ ) 求偏导数

θjJ(θ)=θj(i=1my(i)log(hθ(x(i)))+(1y(i))log((1hθ(x(i))))              =i=1m(y(i)hθ(x(i))(1y(i))1hθ(x(i)))θjhθ(x(i))               =i=1m(y(i)g(θTx(i))(1y(i))1g(θTx(i)))θjg(θTx(i))(542)(543)(544) (542) ∂ ∂ θ j J ( θ ) = ∂ ∂ θ j ( ∑ i = 1 m y ( i ) log ⁡ ( h θ ( x ( i ) ) ) + ( 1 − y ( i ) ) l o g ( ( 1 − h θ ( x ( i ) ) ) ) (543)                             = ∑ i = 1 m ( y ( i ) h θ ( x ( i ) ) − ( 1 − y ( i ) ) 1 − h θ ( x ( i ) ) ) ∂ ∂ θ j h θ ( x ( i ) ) (544)                               = ∑ i = 1 m ( y ( i ) g ( θ T x ( i ) ) − ( 1 − y ( i ) ) 1 − g ( θ T x ( i ) ) ) ∂ ∂ θ j g ( θ T x ( i ) )

因为

g(θTx)=11+eθTx(545) (545) g ( θ T x ) = 1 1 + e − θ T x

所以

θjg(θTx(i))=θj(11+eθTx(i))=eθTx(i)(1+eθTx(i))2θjθTx(i)(546) (546) ∂ ∂ θ j g ( θ T x ( i ) ) = ∂ ∂ θ j ( 1 1 + e − θ T x ( i ) ) = − − e − θ T x ( i ) ( 1 + e − θ T x ( i ) ) 2 ⋅ ∂ ∂ θ j θ T x ( i )

θjJ(θ) =i=1m(y(i)g(θTx(i))(1y(i))1g(θTx(i)))(eθTx(i)(1+eθTx(i))2θjθTx(i))               =i=1m(y(i)g(θTx(i))(1y(i))1g(θTx(i)))g(θTx(i))(1g(θTx(i)))θjθTx(i)               =i=1m(y(i)g(θTx(i))(1y(i))1g(θTx(i)))g(θTx(i))(1g(θTx(i)))θj(θ0+θ1x(i)1+θ2x(i)2+θjx(i)j+θnx(i)n)               =i=1m(y(i)(1g(θTx(i)))g(θTx(i))(1y(i)))x(i)j               =i=1m(y(i)hθ(x(i)))x(i)j(547)(548)(549)(550)(551) (547) ∂ ∂ θ j J ( θ )   = ∑ i = 1 m ( y ( i ) g ( θ T x ( i ) ) − ( 1 − y ( i ) ) 1 − g ( θ T x ( i ) ) ) ( − − e − θ T x ( i ) ( 1 + e − θ T x ( i ) ) 2 ⋅ ∂ ∂ θ j θ T x ( i ) ) (548)                               = ∑ i = 1 m ( y ( i ) g ( θ T x ( i ) ) − ( 1 − y ( i ) ) 1 − g ( θ T x ( i ) ) ) g ( θ T x ( i ) ) ( 1 − g ( θ T x ( i ) ) ) ∂ ∂ θ j θ T x ( i ) (549)                               = ∑ i = 1 m ( y ( i ) g ( θ T x ( i ) ) − ( 1 − y ( i ) ) 1 − g ( θ T x ( i ) ) ) g ( θ T x ( i ) ) ( 1 − g ( θ T x ( i ) ) ) ∂ ∂ θ j ( θ 0 + θ 1 x 1 ( i ) + θ 2 x 2 ( i ) + ⋯ θ j x j ( i ) ⋯ + θ n x n ( i ) ) (550)                               = ∑ i = 1 m ( y ( i ) ( 1 − g ( θ T x ( i ) ) ) − g ( θ T x ( i ) ) ( 1 − y ( i ) ) ) ⋅ x j ( i ) (551)                               = ∑ i = 1 m ( y ( i ) − h θ ( x ( i ) ) ) ⋅ x j ( i )


从而迭代θ至收敛即可:

θj:=θj+αi=1m(y(i)hθ(x(i)))x(i)j θ j := θ j + α ∑ i = 1 m ( y ( i ) − h θ ( x ( i ) ) ) ⋅ x j ( i )

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值