logistic回归

模型

二分类任务,已知m个样本

X={x1,x2,x3,,xm}
对应类别标签
Y={y1,y2,y3,,ym}

  • x有n维特征 xi={xi1,xi2,xi3,,xin}

  • y类别标签 yi0,1

  • 根据 X,Y 估计模型, y^=p(y=1|x)

  • 线性回归中, y^=wTx+b

  • 我们期望 0y^1

  • z=wTx+b

    y^=σ(z)=11+ez

  • 其中 σ()sigmoidSlogistic
  • σ()函数,可通过通过指数分布族、生成学习假设先验概率分布推导,这里不做推导。

代价函数

loss function
1个样本的损失函数
对于正例,类标签 y=1 ,负例,类标签 y=0 ,每个训练样本定义一个伯努利分布:

p(y|x)=y^y(1y^)1y

对上述条件似然取对数,不影响单调性
log(p(y|x))=ylogy^+(1y)log(1y^)

我们期望最小化损失函数
L(y^,y)=(ylogy^+(1y)log(1y^))

cost function 代价函数,
推广到样本集,假设所有训练样本独立同分布
P=i=1mp(yi|xi)

取对数
log(P)=i=1mlog(p(yi|xi))

同样,定义代价函数,以最小化
J(w,b)=1mi=1ml(y^i,yi)=1mi=1m(yilogy^i+(1yi)log(1y^i))

目标
w,t=argminJ(w,b)

找使 J(w,b) 最小化的解 w,t ,可以证明 J(w,b) 为凸函数,这是一个凸优化问题,这里一般采用梯度下降法来求解(或可认为逼近)

梯度下降

w=wαdJ(w,b)dw

b=bαdJ(w,b)db

  • 初始化 w,blogistic0,0

  • α 为步长(学习速率),控制梯度下降速度及精度

  • 关于梯度下降算法介绍,可以参考这里

实现

  • z=wTx+b

    y^=a=σ(z)

    L(y^,y)=(ylog(a)+(1y)log(1a))

  • 一个样本x有n维特征 x={x1,x2,x3,,xn}

  • w 定义

    w1w2wn

  • dw1=dL(w,b)dw ,链式求导 dw1=dLdadadzdzdw1

    dLda=ya+1y1a

    dadz=a(1a)

    dadz=(11+ez)=(1+ez)2(ez)=(1+ez)2(ez)=11+ezez1+ez=a1+ez11+ez=a(1a)

    dzdw1=x1

    综上 dw1=(ay)x1

    同样,可以得到 db=dLdadadzdzdb=(ay)

向量化

单个样本

  • dw=(ay)x

  • db=(ay)

m个样本

  • Z=wTX+b

  • A=σ(Z)

  • dZ=AY

  • dw=1mXdZT

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值