Logistic回归结果的回归系数和OR值解读。Logistic回归虽然名字叫”回归” ,但却是一种分类学习方法。使用场景大概有两个:第一用来预测,第二寻找因变量的影响因素。

一 从线性回归到Logistic回归

线性回归和Logistic回归都是广义线性模型的特例。

假设有一个因变量y和一组自变量x1, x2, x3, ... , xn,其中y为连续变量,我们可以拟合一个线性方程:

y =β0+β1*x1+β2*x2+β3*x3+...+βn*xn

并通过最小二乘法估计各个β系数的值。

如果y为二分类变量,只能取值0或1,那么线性回归方程就会遇到困难: 方程右侧是一个连续的值,取值为负无穷到正无穷,而左侧只能取值[0,1],无法对应。为了继续使用线性回归的思想,统计学家想到了一个变换方法,就是将方程右边的取值变换为[0,1]。最后选中了Logistic函数:

y = 1 / (1+e-x)

这是一个S型函数,值域为(0,1),能将任何数值映射到(0,1),且具有无限阶可导等优良数学性质。

我们将线性回归方程改写为:

y = 1 / (1+e-z),

其中,z =β0+β1*x1+β2*x2+β3*x3+...+βn*xn

此时方程两边的取值都在0和1之间。

进一步数学变换,可以写为:

Ln(y/(1-y)) =β0+β1*x1+β2*x2+β3*x3+...+βn*xn

Ln(y/(1-y))称为Logit变换。我们再将y视为y取值为1的概率p(y=1),因此,1-y就是y取值为0的概率p(y=0),所以上式改写为:

p(y=1) = ez/(1+ez),

p(y=0) = 1/(1+ez),

其中,z =β0+β1*x1+β2*x2+β3*x3+...+βn*xn.

接下来就可以使用”最大似然法”估计出各个系数β。

二 odds与OR复习

odds: 称为几率、比值、比数,是指某事件发生的可能性(概率)与不发生的可能性(概率)之比。用p表示事件发生的概率,则:odds = p/(1-p)。

OR:比值比,为实验组的事件发生几率(odds1)/对照组的事件发生几率(odds2)。

三 Logistic回归结果的解读

我们用一个例子来说明,这个例子中包含200名学生数据,包括1个自变量和4个自变量:

因变量:  hon,表示学生是否在荣誉班(honors class),1表示是,0表示否;

自变量:

female :性别,分类变量,1=女,0=男

read: 阅读成绩,为连续变量

write: 写作成绩,为连续变量

math:数学成绩,为连续变量

1、不包含任何变量的Logistic回归

首先拟合一个不包含任何变量的Logistic回归,

模型为 ln(p/(1-p) =β0

回归结果如下(结果经过编辑):

hon

系数β

标准误

P

截距

-1.12546

0.164

0.000

这里的系数β就是模型中的β0= -1.12546,

我们用p表示学生在荣誉班的概率,所以有ln(p/(1-p) =β0= -1.12546,

解方程得:p = 0.245。

odds = p/1-p = 0.3245

这里的p是什么意思呢?p就是所有数据中hon=1的概率。

我们来统计一下整个hon的数据:

hon

例数

百分比

0

151

75.5%

1

49

24.5%

hon取值为1的概率p为49/(151+49) = 24.5% = 0.245,我们可以手动计算出ln(p/(1-p) = -1.12546,等于系数β0。可以得出关系:

β0=ln(odds)。

2、包含一个二分类因变量的模型

拟合一个包含二分类因变量female的Logistic回归,

模型为 ln(p/(1-p)  =β0+β1*female.

回归结果如下(结果经过编辑):

hon

系数β

标准误

P

female

0.593

.3414294

0.083

截距

-1.47

.2689555

0.000

在解读这个结果之前,先看一下hon和female的交叉表:

hon

female

Total

Male

Female

0

74

77

151

1

17

32

49

Total

91

109

根据这个交叉表,对于男性(Male),其处在荣誉班级的概率为17/91,处在非荣誉班级的概率为74/91,所以其处在荣誉班级的几率odds1=(17/91)/(74/91) = 17/74 = 0.23;相应的,女性处于荣誉班级的几率odds2 = (32/109)/(77/109)=32/77 = 0.42。女性对男性的几率之比OR = odds2/odds1 = 0.42/0.23 = 1.809。我们可以说,女性比男性在荣誉班的几率高80.9%。

回到Logistic回归结果。截距的系数-1.47是男性odds的对数(因为男性用female=0表示,是对照组),ln(0.23) = -1.47。变量female的系数为0.593,是女性对男性的OR值的对数,ln(1.809) = 0.593。所以我们可以得出关系: OR = exp(β),或者β= ln(OR)(exp(x)函数为指数函数,代表e的x次方)。

3、包含一个连续变量的模型

拟合一个包含连续变量math的Logistic回归,

模型为 ln(p/(1-p)  =β0+β1*math.

回归结果如下(结果经过编辑):

hon

系数β

标准误

P

math

.1563404

.0256095

0.000

截距

-9.793942

1.481745

0.000

这里截距系数的含义是在荣誉班中math成绩为0的odds的对数。我们计算出odds = exp(-9.793942) = .00005579,是非常小的。因为在我们的数据中,没有math成绩为0的学生,所以这是一个外推出来的假想值。

怎么解释math的系数呢?根据拟合的模型,有:

ln(p/(1-p)) =  - 9.793942  + .1563404*math

我们先假设math=54,有:

ln(p/(1-p))(math=54) = - 9.793942 + .1563404 *54

然后我们把math提高提高一个单位,令math=55,有:

ln(p/(1-p))(math=55) = - 9.793942 + .1563404 *55

两者之差:

ln(p/(1-p))(math=55) - ln(p/1-p))(math = 54) = 0.1563404.

正好是变量math的系数。

由此我们可以说,math每提高1个单位,odds(即p/(1-p),也即处于荣誉班的几率)的对数增加0.1563404。

那么odds增加多少呢?根据对数公式:

ln(p/(1-p))(math=55) - ln(p/1-p))(math = 54) = ln((p/(1-p)(math=55)/ (p/(1-p)(math=54))) = ln(odds(math=55)/ odds(math=54)) = 0.1563404.

所以:

odds(math=55)/ odds(math=54)  =  exp(0.1563404) = 1.169.

因此我们可以说,math每升高一个单位,odds增加16.9%。且与math的所处的绝对值无关。

聪明的读者肯定发现,odds(math=55)/ odds(math=54)不就是OR嘛!

4、包含多个变量的模型(无交互效应)

拟合一个包含female、math、read的Logistic回归,

模型为 ln(p/(1-p) = β0+β1*math+β2*female+β3*read.

回归结果如下(结果经过编辑):

hon

系数β

标准误

P

math

.1229589

0.000

female

0.979948

0.020

read

.0590632

0.026

截距

-11.77025

0.000

该结果说明:

(1) 性别:在math和read成绩都相同的条件下,女性(female=1)进入荣誉班的几率(odds)是男性(female=0)的exp(0.979948) = 2.66倍,或者说,女性的几率比男性高166%。

(2) math成绩:在female和read都相同的条件下,math成绩每提高1,进入荣誉班的几率提高13%(因为exp(0.1229589) = 1.13)。

(3)read的解读类似math。

5、包含交互相应的模型

拟合一个包含female、math和两者交互相应的Logistic回归,

模型为 ln(p/(1-p)  =β0+β1*female+β2*math+β3*female *math.

所谓交互效应,是指一个变量对结果的影响因另一个变量取值的不同而不同。

回归结果如下(结果经过编辑):

hon

系数β

标准误

P

female

-2.899863

0.349

math

.1293781

0.000

female*math

.0669951

0.210

截距

-8.745841

0.000

注意:female*math项的P为0.21,可以认为没有交互相应。但这里我们为了讲解交互效应,暂时忽略P值,姑且认为他们是存在交互效应的。

由于交互效应的存在,我们就不能说在保持math和female*math不变的情况下,female的影响如何如何,因为math和female*math是不可能保持不变的!

对于这种简单的情况,我们可以分别拟合两个方程,

对于男性(female=0):

log(p/(1-p))= β0 + β2*math.

对于女性(female=1):

log(p/(1-p))= (β0 + β1) + (β2 + β3 )*math.

然后分别解释。

多项logistic回归系数解释_Logistic回归结果的回归系数和OR值解读相关推荐

  1. 【Clemetine】基于二项Logistic回归的电信客户流失预测

    一.实验目的及要求 1.掌握Logistic回归分析的基本步骤.原理.软件实现.结果分析: 2.理解多重共线性的概念.原理及岭轨迹的软件实现: 3.了解高维数据分析的应用领域及分析方法. 二.实验仪器 ...

  2. logistic回归的标准化回归系数 计算方式

    @创建于:2022.12.17 @修改于:2022.12.17 文章目录 1.未标准化回归系数 2.标准化回归系数 3.两者的区别 4.手动计算 5.计算样例 6.参考资料 1.未标准化回归系数 通常 ...

  3. scikit-learn学习笔记(五)Logistic regression(逻辑回归)

    逻辑函数(logistic function) 为了更好地解释逻辑回归,让我们首先了解一下逻辑函数.逻辑函数由于它的S形,有时也被称为sigmoid函数. 现在我要引入比值比(odds ratio)的 ...

  4. Logistic Regression Classifier逻辑回归

    Logistic Regression Classifier逻辑回归主要思想就是用最大似然概率方法构建出方程,为最大化方程,利用牛顿梯度上升求解方程参数. 优点:计算代价不高,易于理解和实现. 缺点: ...

  5. 二元logistic模型案例_SPSS二项logistic回归分析案例实践,做个预测模型

    SPSS二项logistic回归分析案例实践,做个预测模型 自己动手实践是学习统计软件工具的捷径之一. 收集到某公司各个商户id,以及他们的注册时长.营业收入.成本数据,以及合作续约的情况,现在我们想 ...

  6. 【算法】Logistic regression (逻辑回归) 概述

    Logistic regression (逻辑回归)是当前业界比较常用的机器学习方法,用于估计某种事物的可能性.比如某用户购买某商品的可能性,某病人患有某种疾病的可能性,以及某广告被用户点击的可能性等 ...

  7. Logistic regression (逻辑回归) 概述

    http://hi.baidu.com/grandyang/item/e1df4ecf195eb816b77a240e Logistic regression (逻辑回归)是当前业界比较常用的机器学习 ...

  8. 转:Logistic regression (逻辑回归) 概述

    Logistic regression (逻辑回归)是当前业界比较常用的机器学习方法,用于估计某种事物的可能性.比如某用户购买某商品的可能性,某病人患有某种疾病的可能性,以及某广告被用户点击的可能性等 ...

  9. 【转】Logistic regression (逻辑回归) 概述

    原文出处:苏冉旭,http://hi.baidu.com/hehehehello/item/40025c33d7d9b7b9633aff87 Logistic regression (逻辑回归)是当前 ...

  10. Logistic Regression(逻辑回归)原理及公式推导

    Logistic Regression(逻辑回归)原理及公式推导 Logistic Regression(逻辑回归)是机器学习中一个非常非常常见的模型,在实际生产环境中也常常被使用,是一种经典的分类模 ...

最新文章

  1. nginx 正向代理配置
  2. 智源“高能对撞粒子分类挑战赛”开启,品鉴宇宙粒子的独特“味道”
  3. SQL 分组统计并返回当前行
  4. 到底什么是hash partition?
  5. 2013-3-14 生活日记
  6. 数据库写入中文出现乱码的处理方式
  7. 查询SQL中日期条件
  8. 桌面怎么新建html文件夹下,创建文件夹的步骤 怎么往新建的文件夹里写东西呀?...
  9. bat 文件 服务器,bat文件做成服务器
  10. 封装和参数调用(格式修改)
  11. matlab二阶系统绘制bode图,二阶系统bode图
  12. 重点人员动态管控系统开发方案,情指勤一体化平台建设
  13. matlab横纵坐标程序,matlab横纵坐标标注
  14. 一文了解肠-器官轴,肠好身体好
  15. ctex打开文件乱码或打不开
  16. 从python入门到人生巅峰
  17. android 3d车辆轨迹,极限汽车轨迹3D游戏
  18. 200多程序员报名杨超越编程大赛 直男及肥宅更喜欢杨超越??
  19. Java项目:流浪猫狗救助管理系统(java+SSM+JSP+bootstrap+jQuery+mysql)
  20. C、C++、C#、Java、php、python语言的内在特性及区别

热门文章

  1. 定时任务cron表达式工具
  2. 超详细SPSS主成分分析计算指标权重(一)
  3. java实现同步的几种方式(总结)
  4. 开源免费etl作业批量调度必备软件 Taskctl Free应用版
  5. 访问服务器 信号灯超时时间已到,win7系统分区提示信号灯超时时间已到怎么办...
  6. 利用Mimics.19对肺支气管进行三维重构
  7. 盗窟手机小我私人撤军华强北:市场一年不如一年
  8. github 安装浏览器导航插件Octotree
  9. oracle startup open ora 03113,Oracle 11g startup时报ORA-03113通信通道的文件结尾
  10. 用渐变工具绘制七色彩虹(每天一个PS小项目)