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. 先将三角形看作正例“1”,正方形和叉看作反例“0”,训练出hθ1(x)
  2. 再将正方形看作正例“1”,三角形和叉看作反例“0”,训练出hθ2(x)
  3. 最后将叉看作正例“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的更多相关文章

  1. Coursera台大机器学习课程笔记9 -- Logistic Regression

    如果只想得到某种概率,而不是简单的分类,那么该如何做呢?在误差衡量问题上,如何选取误差函数这段很有意思. 接下来是如何最小化Ein,由于Ein是可凸优化的,所以采用的是梯度下降法:只要达到谷底,就找到 ...

  2. Coursera台大机器学习技法课程笔记05-Kernel Logistic Regression

    这一节主要讲的是如何将Kernel trick 用到 logistic regression上. 从另一个角度来看soft-margin SVM,将其与 logistic regression进行对比 ...

  3. 【笔记】机器学习 - 李宏毅 - 6 - Logistic Regression

    Logistic Regression 逻辑回归 逻辑回归与线性回归有很多相似的地方.后面会做对比,先将逻辑回归函数可视化一下. 与其所对应的损失函数如下,并将求max转换为min,并转换为求指数形式 ...

  4. Stanford机器学习笔记-8. 支持向量机(SVMs)概述

    8. Support Vector Machines(SVMs) Content 8. Support Vector Machines(SVMs) 8.1 Optimization Objection ...

  5. Stanford机器学习笔记-7. Machine Learning System Design

    7 Machine Learning System Design Content 7 Machine Learning System Design 7.1 Prioritizing What to W ...

  6. Stanford机器学习---第一讲. Linear Regression with one variable

    原文:http://blog.csdn.net/abcjennifer/article/details/7691571 本栏目(Machine learning)包括单参数的线性回归.多参数的线性回归 ...

  7. Andrew Ng机器学习编程作业:Logistic Regression

    编程作业文件: machine-learning-ex2 1. Logistic Regression (逻辑回归) 有之前学生的数据,建立逻辑回归模型预测,根据两次考试结果预测一个学生是否有资格被大 ...

  8. Stanford机器学习笔记-3.Bayesian statistics and Regularization

    3. Bayesian statistics and Regularization Content 3. Bayesian statistics and Regularization. 3.1 Und ...

  9. 机器学习实战python3 Logistic Regression

    代码及数据:https://github.com/zle1992/MachineLearningInAction logistic regression 优点:计算代价不高,易于理解实现,线性模型的一 ...

随机推荐

  1. 12款支持移动设备的响应式 WordPress 主题

    响应式和现代设计风格的多用途 WordPress 主题与能够非常灵活的适应所有设备.而高级主题能够更大可能性的轻松定制.所有的主题是完全响应式的,您可以从主题选项中启用响应模式. 今天,这个列表收集了 ...

  2. 【干货分享】32本优秀的 JavaScript 免费电子书

    JSbooks 收集了32本优秀的 JavaScript 免费电子书,分为初级.中级.高级三个类比,大家可以根据自身的情况需要下载.实实在在的干货!记得收藏和分享啊:) 您可能感兴趣的相关文章 Ver ...

  3. 使用animate()的时候,有时候会出现移进移出的闪动问题

    怎么解决这种问题呢?在animate()前面需要加上stop() 例如: $(".nav_list").hover(function(){ $(".div1") ...

  4. 模拟position:fixed效果

    大家都知道fixed定位相对于浏览器窗口,下面就介绍一种不用fixed也能实现其效果的定位方法,就那点css代码,这里就直接呼上来: <!DOCTYPE html> <html> ...

  5. JavaScript基础20——element对象

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  6. AngularJS结合RequireJS做文件合并压缩的那些坑

    我在项目使用了AngularJS框架,用RequireJS做异步模块加载(AMD),在做文件合并压缩时,遇到了一些坑,有些只是解决了,但不明白原因. 那些坑 1. build.js里面的paths必须 ...

  7. swift学习笔记之-协议

    //协议(Protocols) import UIKit /*协议(Protocols) 1.协议定义了一个蓝图,规定了用来实现某一特定任务或者功能的方法.属性,以及其他需要的东西 2.类.结构体或枚 ...

  8. SharePoint 2013 BCS

    http://liandove.blog.51cto.com/176335/1247410 http://liandove.blog.51cto.com/176335/1249339 http://l ...

  9. 微信小程序开发之如何哪获取微信小程序的APP ID

    微信小程序的开发工具,在新建项目的时候,默认提示填写APP ID,如果不填写AppID 也是可以本地测试和开发的,但是无法通过手机调试,只能在开发工具里查看 如果需要真机调试微信小程序,需要安装微信6 ...

  10. Android保持屏幕常亮的方法

    以前一直使用newWakeLock方法: this.powerManager = (PowerManager) this .getSystemService(Context.POWER_SERVICE ...