(整理自AndrewNG的课件,转载请注明。整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/

上一篇讲解了Logistic Regression的基础知识,感觉有很多知识没说清楚,自己理解的也不透彻,好在coursera上NG又从另外的角度讲了一下。这里我权当个搬运工,把他讲的搬过来,加上自己的理解整理一下。主要分成三个部分:对的再理解、Decision Boundary(决策边界)、多类问题。

1 对的再理解

这部分采用启发式的方式来讲解,循序渐进的在跟大家讲一下选择的合理性。我们知道Linear Regression不适合用来解决分类问题,从下面角度来理解:

对于Logistic Regression,

,由图显然,若x从负无穷到正无穷变化时,的变化范围也是从负无穷到正无穷,而y的取值只能是0或1 。这岂不是很奇怪,直观想象:即使不能映射到0或1,也至少将映射到,数学里还真有一个函数,那就是我们上次提到的:

那直接将特征x从映射到可以吗?显然不合理,若是那样:当x大于0时,就判断为1类,否则为0类,显然不符合实际情况,应该具体问题具体分析。所以就将进行映射,对于分类问题,通过恰当的选择特征构造,通过梯度下降法,是可以训练出分类器的。

从概率上这也是合理的,计算出的是,对于输入x,输出y=1的概率。假如对于输入x,计算出=0.7,则表示y=1的概率为70%,则判断为y=1 。

2 Decision Boundary(决策边界)

上面介绍了分类,却没对的含义,给出形象的解释:

图示如下:

假如已经训练好分类器为,我们对新输入x,判断其类别的依据是:

,由于,所以等价于判断:

所以就是我们的分类面,即Decision Boundary 。举例说明:

,对于这个分类问题有两个特征。我们假设,经过训练求解:

,则分界面为

,即

再来看一个非线性决策边界的例子:

,对于这个分类问题有4个特征,分别是。我们假设,经过训练求解:

,则分界面的方程为: ,为一个圆,图如下:

也就是说,虽然罗辑回归的假设函数为,但分类结果的直观表示却是,即Decision Boundary(决策边界)。

3 多类问题

以上我们主要介绍了用逻辑回归解决二值分类的问题,下面我们简要介绍一下多类问题。现实生活中有很多的多类问题,例如要根据掌握的信息进行天气的预测,就有阴、晴、雨、雪等情况;对邮件进行分类管理,也可分为家人、朋友、同事等管理类别。

用Logistic Regression解决多类问题的思路很简单:就是把就绝K类的问题,转化为求解K的二值分类问题。下面以一个例子来说明:

,这是一个简单的3类问题,我们把它分解成下面3个二值问题来解决:

,经过这样的处理就把问题转换成已知的二值分类问题了,用逻辑回归分别进行求解:

就可以得到表示对于输入变量x,它属于i类的概率。如果要对新来的输入进行类别的预测,分别计算,那类对应的最大,说明输入属于这个类别的概率最大,就判断为这个类别。

这里有一点需要注意:对于K类的多类问题,是要分解成K个二值问题的,而不是(K-1)个或更少。因为各个之间没有什么直接的关系(之和不为1):

,可以看到它们之间有交叉,也有都不包含的区域。

Logistic Regression(逻辑回归)(二)—深入理解的更多相关文章

  1. Coursera DeepLearning.ai Logistic Regression逻辑回归总结

    既<Machine Learning>课程后,Andrew Ng又推出了新一系列的课程<DeepLearning.ai>,注册了一下可以试听7天.之后每个月要$49,想想还是有 ...

  2. Logistic Regression逻辑回归

    参考自: http://blog.sina.com.cn/s/blog_74cf26810100ypzf.html http://blog.sina.com.cn/s/blog_64ecfc2f010 ...

  3. Logistic Regression(逻辑回归)

    分类是机器学习的一个基本问题, 基本原则就是将某个待分类的事情根据其不同特征划分为两类. Email: 垃圾邮件/正常邮件 肿瘤: 良性/恶性 蔬菜: 有机/普通 对于分类问题, 其结果 y∈{0,1 ...

  4. 机器学习简要笔记(五)——Logistic Regression(逻辑回归)

    1.Logistic回归的本质 逻辑回归是假设数据服从伯努利分布,通过极大似然函数的方法,运用梯度上升/下降法来求解参数,从而实现数据的二分类. 1.1.逻辑回归的基本假设 ①伯努利分布:以抛硬币为例 ...

  5. Deep Learning 学习笔记(4):Logistic Regression 逻辑回归

    逻辑回归主要用于解决分类问题,在现实中有更多的运用, 正常邮件or垃圾邮件 车or行人 涨价or不涨价 用我们EE的例子就是: 高电平or低电平 同时逻辑回归也是后面神经网络到深度学习的基础. (原来 ...

  6. 【原】Coursera—Andrew Ng机器学习—Week 3 习题—Logistic Regression 逻辑回归

    课上习题 [1]线性回归 Answer: D A 特征缩放不起作用,B for all 不对,C zero error不对 [2]概率 Answer:A [3]预测图形 Answer:A 5 - x1 ...

  7. 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 6_Logistic Regression 逻辑回归

    Lecture6 Logistic Regression 逻辑回归 6.1 分类问题 Classification6.2 假设表示 Hypothesis Representation6.3 决策边界 ...

  8. 机器学习之LinearRegression与Logistic Regression逻辑斯蒂回归(三)

    一 评价尺度 sklearn包含四种评价尺度 1 均方差(mean-squared-error) 2 平均绝对值误差(mean_absolute_error) 3 可释方差得分(explained_v ...

  9. 吴恩达深度学习:2.1Logistic Regression逻辑回归及其损失函数

    1.Logistic Regression是一个二元分类问题 (1)已知输入的特征向量x可能是一张图,你希望把它识别出来,这是不是猫图,你需要一个算法,可以给出预测值,更正式的y是一个概率,当输入特征 ...

随机推荐

  1. XCode 6 出现 no identity found: Command /usr/bin/codesign failed with exit code 1 解决方法汇总

    1, 解决办法,进入开发者账号重建一个 Provisioning Profiles(或配套证书) 文件,把证书添加正确就可以了 (应该是最有效的) 2, 将p12文件重新安装下 3, 在 iPhone ...

  2. python sqlalchemy-migrate 使用方法

    1:下载相关模块     pip install sqlalchemy     pip install sqlalchemy-migrate   2:创建model (model.py),这里用来绑定 ...

  3. python几个排序函数 sort sorted argsort

    Python中排序常用到的sort .sorted和argsort函数 [摘要:Python中sort 战 sorted函数 一 .先容 sort函数是list列表中的函数,而 sorted能够对li ...

  4. A*算法的C语言实现

    #include ”stdio.h“ #include “conio.h” #include ”assert.h“ #include “stdlib.h” #define MAPMAXSIZE 100 ...

  5. 笔记之Cyclone IV 第一卷第一章FPGA 器件系列概述

    因为本人用的黑金四代开发板,中央芯片采用ALTERA的cycloneIV E,所以就此器件阅读altera官网资料,并做相应的笔记,以便于以后查阅 Cyclone IV 器件系列具有以下特性:■ 低成 ...

  6. hibernate对应的annocation版本

    Hibernate Compatibility Matrix Package Version Core Annotations EntityManager Validator Search Shard ...

  7. Delphi发送邮件...

    ///首先在控件栏定位到:Indy Clients加入控件IdSMTP ///再定位到:Indy Misc加入控件IdMessage ///发送邮件函数 procedure TForm1.SendMa ...

  8. 简单字符串处理 hdu1062 Text Reverse

    虽然这个题目一遍AC,但是心里还是忍不住骂了句shit! 花了一个小时,这个题目已经水到一定程度了,但是我却在反转这个操作上含糊不清,并且还是在采用了辅助数组的情况下,关系的理顺都如此之难. 其实我是 ...

  9. Android:ViewPager04

    目录结构层次: 注意点: 1.MyAdapter.java一定要 extends PagerAdapter 2.MyAdapter要覆写以下几个方法: a.public int getCount(){ ...

  10. mysql入门记录

    mysql -h localhost(or ID) -u root -p show databases; create database <数据库名>: drop database < ...