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. java架构之路-(mysql底层原理)Mysql之让我们再深撸一次mysql

    让我再深撸一次mysql吧,这次主要以应对面试来说说mysql,大概几个方向,索引结构,查询引擎,索引优化,explain的详解和trace工具的使用. 索引: 我们先来看一下mysql的B+tree ...

  2. 夯实Java基础系列7:一文读懂Java 代码块和执行顺序

    目录 Java中的构造方法 构造方法简介 构造方法实例 例 1 例 2 Java中的几种构造方法详解 普通构造方法 默认构造方法 重载构造方法 java子类构造方法调用父类构造方法 Java中的代码块 ...

  3. .NET Core使用NPOI导出复杂Word详解

    前言: 最近使用NPOI做了个导出Word文档的功能,关于使用.NET Core 导出Word文档的方式有很多.最终我为什么选择了NPOI来实现了这个功能,首先是NPOI是一个开源,免费且容易上手的第 ...

  4. java 对数组进行截取组合操作

    1.使用skip跳过和limit限制组合,示例: Integer skip = (page.getPageNum() - 1) * page.getPageNum(); Integer limit = ...

  5. java基础之循环遍历List和Map

    List和Map是在编程中使用的最频繁的集合类型了,每天都不知道要见它们多少面.在这里介绍下这两种类型的循环遍历,以供学习参考和使用. 一.List 遍历List一般有三种方法,如下: List< ...

  6. 常用Form表单正则表达式

    前端常用form表单提交,校验正则表达式奉上!/** * 邮箱 * @param {*} s */ export function isEmail (s) { return /^([a-zA-Z0-9 ...

  7. Windows下IIS搭建Ftp服务器

    第一步:启用Windows IIS Web服务器 1.1 控制面板中找到"程序"并打开 1.2 程序界面找到"启用或关闭Windows功能"并打开 1.3 上面 ...

  8. Dubbo和Zookerper的关系

    1.Dubbo的作用 Dubbo是管理中间层的工具,在业务层到数据仓库间有非常多服务的接入和服务提供者需要调度,dubbo提供一个框架解决这个问题.Dubbo基于RPC(Remote Procedur ...

  9. 使用Jmeter并发websocket协议项目

    1.安装Jmeter 网址:http://jmeter.apache.org/下载 2.启动Jmeter \apache-jmeter-5.1.1\bin\jmeter.bat 3.安装‘Plugin ...

  10. 利用 turtle库绘制简单图形

    turtle库是python的基础绘图库,这个库被介绍为一个最常用的用来介绍编程知识的方法库,其主要是用于程序设计入门,是标准库之一,利用turtle可以制作很多复杂的绘图. turtle名称含义为“ ...