Logistic Regression(逻辑回归)(二)—深入理解
(整理自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(逻辑回归)(二)—深入理解的更多相关文章
- Coursera DeepLearning.ai Logistic Regression逻辑回归总结
既<Machine Learning>课程后,Andrew Ng又推出了新一系列的课程<DeepLearning.ai>,注册了一下可以试听7天.之后每个月要$49,想想还是有 ...
- Logistic Regression逻辑回归
参考自: http://blog.sina.com.cn/s/blog_74cf26810100ypzf.html http://blog.sina.com.cn/s/blog_64ecfc2f010 ...
- Logistic Regression(逻辑回归)
分类是机器学习的一个基本问题, 基本原则就是将某个待分类的事情根据其不同特征划分为两类. Email: 垃圾邮件/正常邮件 肿瘤: 良性/恶性 蔬菜: 有机/普通 对于分类问题, 其结果 y∈{0,1 ...
- 机器学习简要笔记(五)——Logistic Regression(逻辑回归)
1.Logistic回归的本质 逻辑回归是假设数据服从伯努利分布,通过极大似然函数的方法,运用梯度上升/下降法来求解参数,从而实现数据的二分类. 1.1.逻辑回归的基本假设 ①伯努利分布:以抛硬币为例 ...
- Deep Learning 学习笔记(4):Logistic Regression 逻辑回归
逻辑回归主要用于解决分类问题,在现实中有更多的运用, 正常邮件or垃圾邮件 车or行人 涨价or不涨价 用我们EE的例子就是: 高电平or低电平 同时逻辑回归也是后面神经网络到深度学习的基础. (原来 ...
- 【原】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 ...
- 【原】Coursera—Andrew Ng机器学习—课程笔记 Lecture 6_Logistic Regression 逻辑回归
Lecture6 Logistic Regression 逻辑回归 6.1 分类问题 Classification6.2 假设表示 Hypothesis Representation6.3 决策边界 ...
- 机器学习之LinearRegression与Logistic Regression逻辑斯蒂回归(三)
一 评价尺度 sklearn包含四种评价尺度 1 均方差(mean-squared-error) 2 平均绝对值误差(mean_absolute_error) 3 可释方差得分(explained_v ...
- 吴恩达深度学习:2.1Logistic Regression逻辑回归及其损失函数
1.Logistic Regression是一个二元分类问题 (1)已知输入的特征向量x可能是一张图,你希望把它识别出来,这是不是猫图,你需要一个算法,可以给出预测值,更正式的y是一个概率,当输入特征 ...
随机推荐
- CentOS用yum安装搭建LAMP
#1.安装Apache yum install httpd httpd-devel #启动apache /etc/init.d/httpd start #设为开机启动: chkconfig httpd ...
- Kruscal 、 Prime Template
Kruscal Template : 很裸的Kruscal Template(求最小生成树中最长路,即最短路中最长路) //#pragma comment(linker, "/STACK: ...
- 在SSH整合框架中经常会用到Service层,请问大家这个Service层有什么具体的作用,可不可以不用这个Service层呢?
有效地分离数据访问层(DAO)和业务层(SERVICE),使之各司其职,举例说明:如果DAO层访问数据库,得到的数据根据业务需要要进行加密,那么取数据和把数据加密就是2个步骤,访问数据和业务逻辑加工, ...
- wget -r -nc -np "http://www.zhihu.com/"
下载网站所有 -r, --recursive specify recursive download. -nc, --no-clobber skip dow ...
- Linux c c++ 开发调试技巧
看到一篇介绍 linux c/c++ 开发调试技巧的文章,感觉挺使用,哪来和大家分享. 通向 UNIX 天堂的 10 个阶梯Author: Arpan Sen, 高级技术人员, Systems Doc ...
- windows下各个浏览器用html5进行h.264大视频播放的性能对比说明
最近在调查windows下哪种浏览器进行大视频播放时候稳定性比较高. 举h.264的4g的视频为例. 选用的浏览器有ie10,firefox,chrome.(因为opera不支持h.264所以没有考虑 ...
- Codeforces Round #FF (Div. 2):C. DZY Loves Sequences
C. DZY Loves Sequences time limit per test 1 second memory limit per test 256 megabytes input standa ...
- 死锁 android ANR
以下为一段ANR的LOG,主要是在WindowManagerService.java和ActivityManagerService.java中实现. W/WindowManager( 2183): K ...
- WinForm----DataGridview---连接数据库,以及双击一条数据,显示信息到Label控件,也可以是TextBox控件。
最终效果: 代码: using System; using System.Collections.Generic; using System.ComponentModel; using System. ...
- java--内部类访问final成员
局部类只能访问外包方法中的final成员.位于方法内部的局部类,可以访问局部类之外,外包方法之内的所以变量和方法,但是生命周期不同,延长生命周期的办法就是将变量设置为final类型. 1)从程序设计语 ...