zoukankan      html  css  js  c++  java
  • 斯坦福机器学习课程 Exercise 习题四

    Exercise 4: Logistic Regression and Newton’s Method

    回顾一下线性回归
    hθ(x)=θTx

    Logistic Regression
    hθ(x)=11+eθTx=p{y=1|x;θ}

    cost(hθ(x),y)的选择
    cost(hθ(x),y)=loghθ(x) (y=1)
    选择对数似然损失函数作为逻辑回归的Cost Function 原因是这个cost函数是凸函数,具有碗状的形状,而凸函数具有良好的性质:对
    于凸函数来说局部最小值点即为全局最小值点,因此只要能求得这类函数的一个最小值点,该点一定为全局最小值点。
    hθ(x)=1的时候cost =0 反之cost=+
    同理,cost(hθ(x),y)=log(1hθ(x)) (y=0)
    hθ(x)=0的时候cost =0 反之cost=+

    in summarize

    cost(hθ(x),y)=y loghθ(x)(1y)log(1hθ(x)) (y=1 or 0)
    J(θ)=1mcost(hθ(x(i)),y(i))
    J(θ)=1mi=1m[y loghθ(x)+(1y)log(1hθ(x))]

    牛顿迭代法

    xn+1=xnf(xn)f′′(xn)

    decision boundary

    hθ(x)=1g(θTx)=0.5
    θ0+θ1x1+θ2x2=0
    x2=1θ2(θ0+θ1x1)
    plot_y=1θ2(θ0+θ1X)


    预测不被admitted的概率

    prob=1g(θTx)
    for i=1:MAX_ITR
        z=x*theta;
        h=g(z);
        deltaJ= (1/m).* x' * (h - y);
        Hessian=(1/m).*x'* diag(h) * diag(1-h) * x;
        J(i)= (1/m) * sum (-y.*log(h) - (1-y).*log(1-h) );
        theta = theta - Hessian  deltaJ;
    end

    关键的地方是 Hessian矩阵的求法:
    Ng的课程讲到

    H=1mi=1m[h(x(i))��R(1h(x(i)))��R(x(i))(x(i))T]

    后面的则是

    R(n+1)×1R1×(n+1)


    h(x(i))是向量,因此在矩阵运算的时候,将向量表示成对角矩阵。

    diag(h)diag(1h)

    本文完

  • 相关阅读:
    Linux下vsftpd的安装,Java上传文件实现。
    springboot整合shiro、redis及相关优化
    spring boot 配置文件
    spring boot 解决跨域访问
    spring-boot与spring-data-JPA的简单整合
    QQ空间里的“可能认识的人”深层思考????
    unix
    linux
    Linux中fork()函数详解
    word is too tall: try to use less letters, smaller font or bigger background 报错 java程序 验证码不显示
  • 原文地址:https://www.cnblogs.com/slankka/p/9158536.html
Copyright © 2011-2022 走看看