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(1−hθ(x)) (y=0)
当hθ(x)=0的时候cost =0 反之cost=+∞

in summarize

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

牛顿迭代法

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

decision boundary

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

预测不被admitted的概率

prob=1−g(θ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=1m∑i=1m[h(x(i))R(1−h(x(i)))R∗(x(i))∗(x(i))T]

后面的则是

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

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

diag(h)∗diag(1−h)

本文完

斯坦福机器学习课程 Exercise 习题四的更多相关文章

  1. 斯坦福机器学习课程 Exercise 习题三

    Exercise 3: Multivariate Linear Regression 预处理数据 Preprocessing the inputs will significantly increas ...

  2. 斯坦福机器学习课程 Exercise 习题二

    Exercise 2: Linear Regression 话说LaTex用起来好爽 Matlab代码 迭代并且画出拟合曲线 Linear regression 公式如下 hθ(x)=θTx=∑i=0 ...

  3. 关于Coursera上的斯坦福机器学习课程的编程作业提交问题

    学习Coursera上的斯坦福机器学习课程的时候,需要向其服务器提交编程作业,我遇到如下问题: 'Submission failed: unexpected error: urlread: Peer ...

  4. Andrew Ng机器学习课程笔记(四)之神经网络

    Andrew Ng机器学习课程笔记(四)之神经网络 版权声明:本文为博主原创文章,转载请指明转载地址 http://www.cnblogs.com/fydeblog/p/7365730.html 前言 ...

  5. 【原】Coursera—Andrew Ng斯坦福机器学习(0)——课程地址和软件下载

    斯坦福大学机器学习 课程信息 机器学习是一门研究在非特定编程条件下让计算机采取行动的学科.最近二十年,机器学习为我们带来了自动驾驶汽车.实用的语音识别.高效的网络搜索,让我们对人类基因的解读能力大大提 ...

  6. cs229 斯坦福机器学习笔记(一)-- 入门与LR模型

    版权声明:本文为博主原创文章,转载请注明出处. https://blog.csdn.net/Dinosoft/article/details/34960693 前言 说到机器学习,非常多人推荐的学习资 ...

  7. CS229 机器学习课程复习材料-线性代数

    本文是斯坦福大学CS 229机器学习课程的基础材料,原始文件下载 原文作者:Zico Kolter,修改:Chuong Do, Tengyu Ma 翻译:黄海广 备注:请关注github的更新,线性代 ...

  8. 斯坦福机器学习视频笔记 Week1 Linear Regression and Gradient Descent

    最近开始学习Coursera上的斯坦福机器学习视频,我是刚刚接触机器学习,对此比较感兴趣:准备将我的学习笔记写下来, 作为我每天学习的签到吧,也希望和各位朋友交流学习. 这一系列的博客,我会不定期的更 ...

  9. 斯坦福大学自然语言处理第四课“语言模型(Language Modeling)”

    http://52opencourse.com/111/斯坦福大学自然语言处理第四课-语言模型(language-modeling) 一.课程介绍 斯坦福大学于2012年3月在Coursera启动了在 ...

随机推荐

  1. video.js 使用中抛出异常:DOMException: "'#1098942864706113536' is not a valid selector"

    原因:video.js 在获取页面元素时使用的是querySelector方法,由于querySelector是按css规范来实现的,所以它传入的字符串中第一个字符不能是数字. 解决:元素Id在赋值时 ...

  2. 暑期——第九周总结(1,林子雨老师关于hdfs eclipse案例报错问题【已解决】)

    所花时间:7天 代码行:1000(Java)+500(Python)+300(C++) 博客量:1篇 了解到知识点 : 一: 解决"Class org.apache.hadoop.hdfs. ...

  3. 从壹开始学习 NetCore 新篇章 ║ Blog.Core 开发社之招募计划书

    宫 哈喽大家好,国庆马上就要来了,在新的第四季度来临之际,祝大家年末能顺顺利利,解决所有的难题.大家可能从我的标题里也能看的出来,老张又要耍花样,搞事情了,近来随着 netcore 3.0 的正式推出 ...

  4. [phyton]文件的简单读写练习

    f.open() 用于打开一个文件. f=open("record.txt","w",encoding="utf-8")#打开文件,设置文件 ...

  5. Spring Data JPA 梳理 - JPA与“Spring、Spring Data JPA”的关系

    JPA其实也就是java实体对象和关系型数据库建立起映射关系,通过面向对象编程的思想操作关系型数据库的规范. Spring 框架对 JPA 提供的支持主要体现在如下几个方面: 首先,它使得 JPA 配 ...

  6. python 对excel进行截图

    工作中需要对excel的单元格区域进行截图,以前是调用vba进行(走了很多弯路,虽然能实现,但比较low),后来逐步发现python的win32com与vba师出同门,很多方法操作都是类似的. 可以对 ...

  7. 在ZYBO板卡上实现PL-PS交互(通过AXI的方式)

    前情提要:参考的是下面所说的原网页,只是原作者用的是vivado 2014.4,我用vivado 2018.2跑的,图是新的,内容大多“换汤不换药”,但是我在做的时候存在一些问题,我记录了下来并将解决 ...

  8. Java 学习笔记之 方法内的临时变量是线程安全

    方法内的临时变量是线程安全: 方法内部的私有变量,是线程安全的. public class HasSelfPrivateNum { public void addI(String username) ...

  9. 初识TDD

    什么是 TDD ? TDD 有广义和狭义的区分. 广义角度指的是 ATDD(Acceptance Test Driven Development),包括 BDD(Behavior Driven Tes ...

  10. e课表项目第二次冲刺周期第六天

    昨天干了什么? 昨天是这次冲刺周期的第五天,我们的冲刺周期已经快过了一半,我们已经实现了对第一层界面的设计,所以我们的进度和我们的时间正好吻合,所以我们有信心完成我们的软件.我在网上搜了一些关于监听的 ...