逻辑回归

1. 逻辑回归模型

逻辑回归将线性回归的预测值转换为0/1值,通常采用sigmoid函数 g ( z ) = 1 1 + e − z g(z)=\frac{1}{1+e^{-z}} g(z)=1+ez1进行转换:
h ( x ) = 1 1 + e − ( ω T x + b ) h(x)=\frac{1}{1+e^{-(\omega^Tx+b)}} h(x)=1+e(ωTx+b)1

P ( y = 1 ∣ x ) = 1 1 + e − ( ω T x + b ) = e ω T x + b 1 + e ω T x + b P ( y = 0 ∣ x ) = 1 1 + e ω T x + b \begin{aligned} P(y=1|x)&=\frac{1}{1+e^{-(\omega^Tx+b)}}\\ &=\frac{e^{\omega^Tx+b}}{1+e^{\omega^Tx+b}} \end{aligned}\\ P(y=0|x)=\frac{1}{1+e^{\omega^Tx+b}} P(y=1x)=1+e(ωTx+b)1=1+eωTx+beωTx+bP(y=0x)=1+eωTx+b1

2. 损失函数

最大化对数似然函数
L ( ω , b ) = ∑ i = 1 m ln ⁡ P ( y i ∣ x i ; ω , b ) = ∑ i = 1 m ln ⁡ ( y i P 1 ( x i ; ω , b ) + ( 1 − y i ) P 0 ( x i ; ω , b ) ) = ∑ i = 1 m ( y i ln ⁡ h ( x i ) + ( 1 − y i ) ln ⁡ ( 1 − h ( x i ) ) ) \begin{aligned} L(\omega,b)&=\sum_{i=1}^m\ln P(y_i|x_i;\omega,b)\\ &=\sum_{i=1}^m\ln(y_iP_1(x_i;\omega,b)+(1-y_i)P_0(x_i;\omega,b))\\ &=\sum_{i=1}^m(y_i\ln h(x_i)+(1-y_i)\ln(1-h(x_i))) \end{aligned} L(ω,b)=i=1mlnP(yixi;ω,b)=i=1mln(yiP1(xi;ω,b)+(1yi)P0(xi;ω,b))=i=1m(yilnh(xi)+(1yi)ln(1h(xi)))
损失函数为
E ( ω , b ) = − ∑ i = 1 m ( y i ln ⁡ h ( x i ) + ( 1 − y i ) ln ⁡ ( 1 − h ( x i ) ) ) E(\omega,b)=-\sum_{i=1}^m(y_i\ln h(x_i)+(1-y_i)\ln(1-h(x_i))) E(ω,b)=i=1m(yilnh(xi)+(1yi)ln(1h(xi)))

3. 损失函数求解

3.1 梯度下降法

ω ^ = ( ω ; b ) \hat{\omega}=(\omega;b) ω^=(ω;b)
E ( ω ^ , b ) = − ∑ i = 1 m ( y i ln ⁡ h ( x i ) + ( 1 − y i ) ln ⁡ ( 1 − h ( x i ) ) ) = − ∑ i = 1 m ( y i ( ω T x i + b ) − ln ⁡ ( 1 + e ω T x i + b ) ) = − ∑ i = 1 m ( y i ω ^ T x i − ln ⁡ ( 1 + e ω ^ T x i ) ) ∂ E ∂ ω ^ = − ∑ i = 1 m ( y i x − e ω ^ T x 1 + e ω ^ T x x ) = ∑ i = 1 m ( h ( x i ) − y i ) x i = X T ( h ( X ) − Y ) \begin{aligned} E(\hat{\omega},b)&=-\sum_{i=1}^m(y_i\ln h(x_i)+(1-y_i)\ln(1-h(x_i)))\\ &=-\sum_{i=1}^m(y_i(\omega^Tx_i+b)-\ln(1+e^{\omega^Tx_i+b}))\\ &=-\sum_{i=1}^m(y_i\hat{\omega}^Tx_i-\ln(1+e^{\hat{\omega}^Tx_i}))\\ \frac{\partial E}{\partial \hat{\omega}}&=-\sum_{i=1}^m(y_ix-\frac{e^{\hat{\omega}^Tx}}{1+e^{\hat{\omega}^Tx}} x)\\ &=\sum_{i=1}^m(h(x_i)-y_i)x_i\\ &=X^T(h(X)-Y) \end{aligned} E(ω^,b)ω^E=i=1m(yilnh(xi)+(1yi)ln(1h(xi)))=i=1m(yi(ωTxi+b)ln(1+eωTxi+b))=i=1m(yiω^Txiln(1+eω^Txi))=i=1m(yix1+eω^Txeω^Txx)=i=1m(h(xi)yi)xi=XT(h(X)Y)
其中 X X X为为 m × n m\times n m×n维的矩阵, m m m代表样本的个数, n n n代表样本的特征数。参数更新公式为:
ω ^ = ω ^ − α X T ( h ( X ) − Y ) \hat{\omega}=\hat{\omega}-\alpha X^T(h(X)-Y) ω^=ω^αXT(h(X)Y)

3.2 牛顿法

4. 为什么sigmoid输出代表概率

参见广义线性模型推导过程

5. 共线性问题

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值