Stanford机器学习笔记-2.Logistic Regression
Content:
2 Logistic Regression.
2.1 Classification.
2.2 Hypothesis representation.
2.2.1 Interpreting hypothesis output.
2.3 Decision boundary.
2.3.1 Non-linear decision boundaries.
2.4 Cost function for logistic regression.
2.4.1 A convex logistic regression cost function.
2.5 Simplified cost function and gradient descent.
2.5.1 Probabilistic interpretation for cost function.
2.5.2 Gradient Descent for logistic regression.
2.6 Multiclass classification problem
key words: logistic regression, classification, decision boundary, convex function, One-vs-all












2.6 Multiclass classification problem
现实中也常遇到多分类问题(multiclass classification problem),如判断手写的数字是0~9中的哪一个就是一个有10类的问题。多分类学习的基本思路是“拆解法”,即将多分类任务拆为若干个二分类任务求解。具体来说,先对问题进行拆分,然后为拆分出的每个二分类任务训练一个分类器(也就是h(x));在预测时,对这些分类器的预测结果进行集成。
下面介绍一个常用的拆分策略-“One-vs-all”.
One-vs-all每次将一个类的样例作为正例(“1”),所有其他类作为反例(“0”)来训练n个分类器。在预测时,有两种情况看
- 情况1:若仅有一个分类器预测为正例,则对应的类别标记作为最终分类结果;
- 情况2:若有多个分类器预测为正例,则选择分类器的预测置信度最大的类别标记为分类结果,也就是
。
例如对于图2-10所示的多分类问题,我们先将三角形,正方形,叉分别标记为类别1,2,3,然后做如下划分:
- 先将三角形看作正例“1”,正方形和叉看作反例“0”,训练出hθ1(x)
- 再将正方形看作正例“1”,三角形和叉看作反例“0”,训练出hθ2(x)
- 最后将叉看作正例“1”,三角形和正方形看作反例“0”,训练出hθ3(x)
预测时每一个预测值都是一个形如[hθ1(x), hθ2(x), hθ3(x)]的向量。选出最大的h(x),它的上标就是对应的类别标记。例如若预测值为[0.13, 0.24, 0.79],对应的就是上文所说的情况1,即只有hθ3(x) > 0.5表现为正例,所以应该认为是属于3标记类,即为叉。若预测值为[0.12, 0.83, 0.56], 对应的就是上文所说的情况2,hθ2(x) 和hθ3(x)都大于0.5,都预测为正例,但hθ2(x)> hθ3(x),所以应该预测是属于2标记类,即为正方形。

图2-10
Stanford机器学习笔记-2.Logistic Regression的更多相关文章
- Coursera台大机器学习课程笔记9 -- Logistic Regression
如果只想得到某种概率,而不是简单的分类,那么该如何做呢?在误差衡量问题上,如何选取误差函数这段很有意思. 接下来是如何最小化Ein,由于Ein是可凸优化的,所以采用的是梯度下降法:只要达到谷底,就找到 ...
- Coursera台大机器学习技法课程笔记05-Kernel Logistic Regression
这一节主要讲的是如何将Kernel trick 用到 logistic regression上. 从另一个角度来看soft-margin SVM,将其与 logistic regression进行对比 ...
- 【笔记】机器学习 - 李宏毅 - 6 - Logistic Regression
Logistic Regression 逻辑回归 逻辑回归与线性回归有很多相似的地方.后面会做对比,先将逻辑回归函数可视化一下. 与其所对应的损失函数如下,并将求max转换为min,并转换为求指数形式 ...
- Stanford机器学习笔记-8. 支持向量机(SVMs)概述
8. Support Vector Machines(SVMs) Content 8. Support Vector Machines(SVMs) 8.1 Optimization Objection ...
- Stanford机器学习笔记-7. Machine Learning System Design
7 Machine Learning System Design Content 7 Machine Learning System Design 7.1 Prioritizing What to W ...
- Stanford机器学习---第一讲. Linear Regression with one variable
原文:http://blog.csdn.net/abcjennifer/article/details/7691571 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...
- Andrew Ng机器学习编程作业:Logistic Regression
编程作业文件: machine-learning-ex2 1. Logistic Regression (逻辑回归) 有之前学生的数据,建立逻辑回归模型预测,根据两次考试结果预测一个学生是否有资格被大 ...
- Stanford机器学习笔记-3.Bayesian statistics and Regularization
3. Bayesian statistics and Regularization Content 3. Bayesian statistics and Regularization. 3.1 Und ...
- 机器学习实战python3 Logistic Regression
代码及数据:https://github.com/zle1992/MachineLearningInAction logistic regression 优点:计算代价不高,易于理解实现,线性模型的一 ...
随机推荐
- 使用 SVG 动画实现弹性的页面元素效果
Codrops 分享了一些给SVG元素加上弹性动画的灵感.实现的思路是把一个SVG元素整合成一个组件,然后从一个路径弹性动画到另一个.这种效果可以应用到像菜单,按钮或其它元素,使得交互更有趣,看起更原 ...
- jQ获取浏览器window的高宽
Window 对象Window 对象表示浏览器中打开的窗口.JavaScript 层级中的顶层对象,表示浏览器窗口.如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创 ...
- reactjs学习一(环境搭配react+es6+webpack热部署)
reactjs学习一(环境搭配react+es6+webpack热部署) 本文的源码在这里下载 https://github.com/tianxiangbing/webpack-study 或者使 ...
- go语言常用函数:make
创建数组切片 Go语言提供的内置函数make()可以用于灵活地创建数组切片.创建一个初始元素个数为5的数组切片,元素初始值为0: mySlice1 := make([]int, 5) 创建一个初始元素 ...
- Web数据持久化存储IndexedDB(不常用)
IndexedDB是在浏览器中保存结构化数据的一种数据库,为了替换WebSQL(标准已废弃,但被广泛支持)而出现.IndexedDB使用NoSQL的形式来操作数据库,保存和读取是JavaScript对 ...
- SQLServer表内自关联级联删除
今天处理SQLServer级联删除遇到了很蛋疼的事. SQLServer 不支持表内自关联级联删除,而MySql和Oracle却支持. 貌似原因是SQLServer 会产生循环级联,就不给这样弄.所以 ...
- JavaScript中的各种变量提升(Hoisting)
首先纠正下,文章标题里的 “变量提升” 名词是随大流叫法,“变量提升” 改为 “标识符提升” 更准确.因为变量一般指使用 var 声明的标识符,JS 里使用 function 声明的标识符也存在提升( ...
- iOS开发之多线程技术——NSOperation篇
本篇将从四个方面对iOS开发中使用到的NSOperation技术进行讲解: 一.什么是NSOperation 二.我们为什么使用NSOperation 三.在实际开发中如何使用NSOperation ...
- forward内部跳转 和redirect重定向跳转的区别
1.从地址栏显示来说 forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地 ...
- php多文件上传数组 转换
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><meta ...