zoukankan      html  css  js  c++  java
  • 通过梯度下降和logistic回归求w向量和b

    我们已有一个训练集,X,Y

          [x1,    [y1,

          x2,      y2,

    X=  x3,       Y=    y3,

           .       .

       xn]      yn]

    xi=[xi1,xi2,xi3,.....xim]   xi用来描述第i个样本

    yi=0 or 1       yi用来描述第i个样本是正样本还是负样本

    然后对于已有的 W=[w1,w2,.....,wm],b来说

    我们有一个函数J(W,b)来表示我们已有的W,b在预测结果的时候,对整个训练样本的误差值

    J(W,b)=1/n*( L(y^1,y1) + L(y^2,y2) + .....+L(y^n,yn))

    y^i表示用已有的[W,b]对样本Xi的预测值,yi表示样本xi的真实结果

    L(y^i,yi)=-yi*log(y^i)+(1-yi)*log(1-y^i)

    y^i=sigmoid(xi*WT+b)

    WT代表W的转置

    sigmoid(z)=1/(1+exp(-z))

    我们求出J(W,b)对于w1,w2,...wm,b的偏导数

    [a1,a2,....am,am+1]

    [W,b]=[W,b]-[a1,a2......,am+1]*alpha

    其中alpha是一个较小的量

    经过多次训练,J[W,b]会达到最优,此时就可以停止训练并且开始工作了

  • 相关阅读:
    jar包和war包的区别:
    tail
    redis
    查看Linux操作系统版本
    CentOS 7.0 systemd代替service
    周刊(三月最后一期)
    周刊第四期
    周刊第三期
    周刊第二期
    周刊(第一期)
  • 原文地址:https://www.cnblogs.com/shensobaolibin/p/7873421.html
Copyright © 2011-2022 走看看