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)

    本文完

  • 相关阅读:
    多数据源配置
    Oracle创建JOB
    2新建Data Adapter
    注解的CRUD;重点:多对一和一对多处理
    Mybatis分页+使用注解开发!
    继续mybatis配置resultMap;讲解日志部分
    Today has a day off.
    Mybatis其他配置!
    Mybatis优化配置!
    Mybatis的CRUD
  • 原文地址:https://www.cnblogs.com/slankka/p/9158536.html
Copyright © 2011-2022 走看看