【转载】logistic回归
原文地址:https://www.cnblogs.com/zichun-zeng/p/3824745.html
1、 logistic回归与一般线性回归模型的区别:
(1) 线性回归的结果变量 与因变量或者反应变量与自变量之间的关系假设是线性的,而logistic回归中 两者之间的关系是非线性的;
(2) 前提假设不同,在线性回归中,通常假设,对于自变量x的某个值,因变量Y的观测值服从正态分布,但在logistic回归中,因变量Y 服从二项分布或者多项分布;
(3) logistic中不存在线性回归中的残差项。
2、logistic回归的应用条件:
首要的条件应该是需要看一下自变量与因变量之间是什么样的一种关系。
多重线性回归中,要求自变量与因变量符合线性关系。
而logistic回归则不同,它 要求的是自变量与logit(y)符合线性关系,所谓logit实际上就是ln(P/1-P)。也就是说,自变量应与ln(P/1-P)呈线性关系(而自变量与因变量成S曲线关系:自然界中有很多事物的发展符合S曲线的规律,尤其是在生物、遗传方面,因此logistic回归经常用在生物信息学的数据挖掘中)。当然,这种情形主要针对多分类变量和连续变量。对于二分类变量就无所谓了,因为两点之间永远可以连成一条线;
最后强调一下,如果你对自变量x与y的关系不清楚,在样本含量允许的条件下,最好转换为虚拟变量的形式,这样不至于出现太大的误差。
如果你不清楚应该如何探索他们的关系,也可以采用虚拟变量的形式,比如x=1,2,3,4,如果转换的虚拟变量x2,x3,x4他们的OR值呈直线关系,那x基本上可 以直接以1,2,3,4的形式直接与y进行分析。而如果,x2,x3,x4的危险度分别为3.1,2.9,3.4。并不呈直线关系,所以还是考虑以虚拟变量形式进行分析最好。
3、logistic回归的用途:
logistic回归主要在流行病学中应用较多,比较常用的情形是探索某疾病的危险因素,根据危险因素预测某疾病发生的概率,等等。
logistic回归的主要用途:一是寻找危险因素,正如上面所说的寻找某一疾病的危险因素等。二是预测,如果已经建立了logistic回归模型,则可 以根据模型,预测在不同的自变量情况下,发生某病或某种情况的概率有多大。三是判别,实际上跟预测有些类似,也是根据logistic模型,判断某人属于 某病或属于某种情况的概率有多大,也就是看一下这个人有多大的可能性是属于某病。
3、 模型选择:
模型选择在实际应用过程中非常有用,一般把与模型有关的数据分为3部分,训练数据,验证数据和测试数据,如下图所示:
|
Training set |
Validation set |
Test set |
其中训练数据和验证数据都是已有的样本数据,即已观察到了的数据。测试数据是未来实际应用中产生的数据,是事先不知道的。
模型选择问题就是说怎样验证一个模型是否好。模型的好坏最终是要看它在测试数据集上的表现。因此在未观测到测试数据时,我们只能用验证数据集来代替它进行测试。机器学习的初学者最容易犯的一个错误是:在测试集上进行参数调整。一定要记住,凡是有关参数调整的,只能在验证集上进行,测试集不能参与任何形式的训练、验证,只能用于最终模型效果的测试。
在训练样本有限的情况下,为了提高数据的利用效率,一般采用的方法为交叉验证,比如说LOOCV,即留一法交叉验证,类似的还有k折交叉验证。交叉验证的主要目的是防止训练出来的模型过拟合。但是在当今由于数据都是海量的,交叉验证方法使用越来越少了,因为如果训练数据集非常大的话,一般不会产生过拟合现象。不过在生物医学信息的数据挖掘中,尤其是基因数据,样本的获得成本较高,特征的数目非常大,样本数相对特征数来说较小,还是会使用交叉验证、bootstrapping等方法来尽量提高样本数据的利用率,争取在样本数量较小的情况下,得到更好的分类、预测效果。
还有一些方法是不需要通过验证而直接来评价模型好坏的,比如是AIC,BIC,MDL,SRM等。
4、 统计结果关注的参数:
在商业实践中,对以上统计量最为关注的是C统计量,其次是似然卡方统计量,然后才是HL统计量,对AIC 和RSQUARE 极少关注,这一点和多元线性回归有很大的不同,根本原因是多元线性回归是一个预测模型,目标变量的值具有实际的数值意义;而logistic是一个分类模型,目标变量的值是一个分类标识,因此更关注观测值和预测值之间的相对一致性,而不是绝对一致性。
5、 logistic回归与SVM的区别与联系:
两种方法都是常见的分类算法,分类作为数据挖掘领域中一项非常重要的任务,它的目的是学会一个分类函数或分类模型(或者叫做分类器)。
从目标函数来看,区别在于逻辑回归采用的是logistical loss,svm采用的是hinge loss。这两个损失函数的目的都是增加对分类影响较大的数据点的权重,减少与分类关系较小的数据点的权重。SVM的处理方法是只考虑support vectors,也就是和分类最相关的少数点,去学习分类器。而逻辑回归通过非线性映射,大大减小了离分类平面较远的点的权重,相对提升了与分类最相关的数据点的权重。两者的根本目的都是一样的。此外,根据需要,两个方法都可以增加不同的正则化项,如l1,l2(相当于一范式、二范式)等等。所以在很多实验中,两种算法的结果是很接近的。
但是逻辑回归相对来说模型更简单,好理解,实现起来,特别是大规模线性分类时比较方便。而SVM的理解和优化相对来说复杂一些。但是SVM的理论基础更加牢固,有一套结构化风险最小化的理论基础,虽然一般使用的人不太会去关注。还有很重要的一点,SVM转化为对偶问题后,分类只需要计算与少数几个支持向量的距离,这个在进行复杂核函数计算时优势很明显,能够大大简化模型和计算量。
而SVM相对于logistic最大的特点在于其假设函数hθ(x)的非线性映射(使用多项式核、高斯核、RBF核等),使得SVM可以实现非线性分类;而logistic分类器虽然把自变量进行了logit变换,使得自变量与目标变量间不必满足线性关系,只要满足logit关系,本质上还是一个线性分类器。
6、 先验概率与后验概率
先验概率 ( Prior probability)先验概率是在缺乏某个事实的情况下描述一个变量; 而后验概率是在考虑了一个事实之后的条件概率.
7、 医学疾病研究中选择logistic回归模型的合理性:
(1) 模型判断你没病但是你有病的概率很小;Logistic的优势在于logistic很好的控制住了FPR,所以在两类错误代价不一致时,如何选取还得仔细分析。
8、ROC曲线的来源及定义
现代分类器很多都不是简单地给出一个0或1 的分类判定,而是给出一个分类的倾向程度,比如贝叶斯分类器输出的分类概率。对于这些分类器,当你取不同阈值,就可以得到不同的分类结果及分类器评价指标。我们还可以看到,随着阈值的减小(更多的客户就会被归为正例),recall和1-Specificity也相应增加(也即Specificity相应减少)。那么我们要动态的评价,一个合理的办法就是把基于不同的阈值而产生的一系列recall和Specificity描绘到直角坐标上,就能更清楚地看到它们的对应关系。由于recally和Specificity的方向刚好相反,我们把sensitivity和1-Specificity描绘到同一个图中,它们的对应关系,就得到了传说中的ROC曲线,全称是receiver operating characteristic curve,中文叫“接受者操作特性曲线”。
9、规则化项L1与L2的区别:
简单地说:L1会趋向于产生少量的特征,而其他的特征权重都是0,因为L1能产生稀疏性;而L2会选择更多的特征,这些特征都会接近于0.
L1在特征选择时非常有用;而L2就只是一种规则化而已,用于防止过拟合,提升模型的泛化能力,此外,从算法的底层优化计算 角度来说,L2更易处理某些条件下矩阵求逆的问题。
【转载】logistic回归的更多相关文章
- 转载:Logistic回归原理及公式推导
转载自:AriesSurfer 原文见 http://blog.csdn.NET/acdreamers/article/details/27365941 Logistic回归为概率型非线性回归模型,是 ...
- 转载-Logistic回归总结
Logistic回归总结 作者:洞庭之子 微博:洞庭之子-Bing (2013年11月) 1.引言 看了Stanford的Andrew Ng老师的机器学习公开课中关于Logistic Regress ...
- 转载 Deep learning:六(regularized logistic回归练习)
前言: 在上一讲Deep learning:五(regularized线性回归练习)中已经介绍了regularization项在线性回归问题中的应用,这节主要是练习regularization项在lo ...
- 如何在R语言中使用Logistic回归模型
在日常学习或工作中经常会使用线性回归模型对某一事物进行预测,例如预测房价.身高.GDP.学生成绩等,发现这些被预测的变量都属于连续型变量.然而有些情况下,被预测变量可能是二元变量,即成功或失败.流失或 ...
- 机器学习笔记—Logistic回归
本文申明:本系列笔记全部为原创内容,如有转载请申明原地址出处.谢谢 序言:what is logistic regression? Logistics 一词表示adj.逻辑的;[军]后勤学的n.[逻] ...
- 机器学习简易入门(四)- logistic回归
摘要:使用logistic回归来预测某个人的入学申请是否会被接受 声明:(本文的内容非原创,但经过本人翻译和总结而来,转载请注明出处) 本文内容来源:https://www.dataquest.io/ ...
- 第三集 欠拟合与过拟合的概念、局部加权回归、logistic回归、感知器算法
课程大纲 欠拟合的概念(非正式):数据中某些非常明显的模式没有成功的被拟合出来.如图所示,更适合这组数据的应该是而不是一条直线. 过拟合的概念(非正式):算法拟合出的结果仅仅反映了所给的特定数据的特质 ...
- 对线性回归,logistic回归和一般回归的认识
原文:http://www.cnblogs.com/jerrylead/archive/2011/03/05/1971867.html#3281650 对线性回归,logistic回归和一般回归的认识 ...
- 机器学习实战笔记5(logistic回归)
1:简单概念描写叙述 如果如今有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归.训练分类器就是为了寻找最佳拟合參数,使用的是最优化算法. 基于sigmoid ...
随机推荐
- LNK2005错误——重复定义错误
编程中经常能遇到LNK2005错误——重复定义错误,其实LNK2005错误并不是一个很难解决的错误.弄清楚它形成的原因,就可以轻松解决它了. 造成LNK2005错误主要有以下几种情况: 1.重复定义全 ...
- ftp和sftp
一.ftp ftp是文件传输协议,ftp协议包括两部分,一个是ftp客户端,另一个是ftp服务器. 原理:一般情况下,当使用FTP服务的时候,我们都知道默认是21号端口,其实还有一个20号端口.FTP ...
- 将Java应用部署到SAP云平台neo环境的两种方式
方法1 - 使用Eclipse Eclipse里新建一个服务器: 服务器类型选择SAP Cloud Platform: 点Finish,成功创建了一个Server: Eclipse里选择要部署的项目, ...
- [VC]WindowProc和DefWindowProc函数
在Windows操作系统里,当窗口显示之后,它就可以接收到系统源源不断地发过来的消息,然后窗口就需要处理这些消息,因此就需要一个函数来处理这些消 息.在API里定义了一个函数为回调函数,当系统需要向窗 ...
- UVA 1442 Cave 洞穴 (贪心+扫描)
题意:有一个洞穴,每个位置有一个底的高度p[i],和对应顶的高度s[i],要往里面尽量放燃料,要求燃料不能碰到顶,可以无限接近. 题解:制约燃料储放的就是顶的高度了,分别求出设当前储放位置的向两边的延 ...
- BOM属性对象方法
本文原链接:https://cloud.tencent.com/developer/article/1018747 BOM 1.window对象 2.location对象 3.history对象 BO ...
- Django models多表操作
title: Django models多表操作 tags: Django --- 多表操作 单独创建第三张表的情况 推荐使用的是使用values/value_list,selet_related的方 ...
- dSYM文件
来到新公司后,前段时间就一直在忙,前不久 项目 终于成功发布上线了,最近就在给项目做优化,并排除一些线上软件的 bug,因为项目中使用了友盟统计,所以在友盟给出的错误信息统计中能比较方便的找出客户端异 ...
- Linux常用命令-----------------磁盘挂载命令
磁盘挂载: [root@sdw1 ~]# mkfs.ext4 /dev/vdb[root@sdw1 ~]# blkid /dev/vdb >> /etc/fstabvi /etc/fsta ...
- console.log与console.dir的区别
今天学习promise的时候看到了console.dir这个方法,感到很好奇,查了以下感觉又长知识了 在Chrome中,控制台对象定义了两个似乎做同样事情的方法: console.log() cons ...