本篇再介绍一种常见的广义线性模型:Logistic模型。该模型主要针对分类结果进行建模。与之功能类似的另一个模型是Probit模型,但较少应用。

Logistic模型的形式

两点分布,又称伯努利分布,其概率函数如下:

写成指数形式:

整理后,

同样,对比指数族分布的通式:

可得,

根据广义线性模型 与解释变量为线性关系的假设,Logistic回归的模型形式如下:

因此, 是二项分布族模型的默认连接函数。

Probit模型

Logistic模型的形式经过变形后,可得,

上式右边恰好与标准增长分布(又称Logistic分布)的概率分布函数 形似。

Probit模型则假设,右边与标准正态分布的概率分布函数形似:

示例

glm函数中,两种模型的family参数分别设置为binomial(link = "logit")binomial(link = "probit"),其中前者可简写为binomial()

示例数据是iris,该数据集的Species包含三个水平,在glm函数中使用subset参数去掉一个水平即可将其作为二分变量。

  • Logistic模型

model.1 <- glm(Species ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width,family = binomial(),data = iris, subset = Species != "setosa")coef(summary(model.1))
##                Estimate Std. Error   z value   Pr(>|z|)
## (Intercept)  -42.637804  25.707477 -1.658576 0.09720127
## Sepal.Length  -2.465220   2.394297 -1.029622 0.30318758
## Sepal.Width   -6.680887   4.479547 -1.491420 0.13585116
## Petal.Length   9.429385   4.737172  1.990509 0.04653485
## Petal.Width   18.286137   9.742561  1.876933 0.06052723
  • Probit模型

model.2 <- glm(Species ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width,family = binomial(link = "probit"),data = iris, subset = Species != "setosa")coef(summary(model.2))
##                Estimate Std. Error   z value   Pr(>|z|)
## (Intercept)  -23.984504  13.843085 -1.732598 0.08316710
## Sepal.Length  -1.440487   1.271920 -1.132530 0.25741174
## Sepal.Width   -3.778139   2.555536 -1.478413 0.13929722
## Petal.Length   5.316433   2.435396  2.182985 0.02903692
## Petal.Width   10.485569   5.614329  1.867644 0.06181168

优势比(OR)

对于Logistic模型,有

则系数 的含义表示自变量 每增加一个单位, 增加为原来的 倍。

是事件发生与不发生的概率之比,称为优势比(Odds Ratio,OR),故Logistic模型的结果主要关注OR:

  • OR > 1,表示自变量与因变量存在正相关关系;

  • OR < 1,表示自变量与因变量存在负相关关系。

可以看出,Logistic模型的系数有很直观的含义;而Probit模型的系数的含义则模糊不清。大概正因为如此,前者应用远远比后者广泛。

准二项分布族

两点分布和泊松分布一样,其概率表达式只有一个参数,使得其均值和方差受到同一个参数控制,即数据序列的均值和离散程度之间存在定量关系。然而给定的数据序列未必满足这一要求,这时就可以使用准二项分布族quasibinomial(link = "logit")

下面代码的结果如果偏离1太远,则说明数据实际的离散程度与理论上的离散程度存在差距:

deviance(model.1)/df.residual(model.1)
## [1] 0.1252479

使用准二项分布族进行Logistic回归:

model.3 <- glm(Species ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width,family = quasibinomial(),data = iris, subset = Species != "setosa")coef(summary(model.3))
##                Estimate Std. Error   t value     Pr(>|t|)
## (Intercept)  -42.637804  9.5776372 -4.451808 2.319321e-05
## Sepal.Length  -2.465220  0.8920248 -2.763623 6.865568e-03
## Sepal.Width   -6.680887  1.6689102 -4.003143 1.239335e-04
## Petal.Length   9.429385  1.7648917  5.342756 6.257963e-07
## Petal.Width   18.286137  3.6297110  5.037904 2.238771e-06

stats | 广义线性模型(三)——二元Logistic模型和Probit模型相关推荐

  1. 机器学习笔记——3 logistic模型和probit模型基本原理,从哲学视角谈谈统一二者的潜变量模型

    logistic模型和probit模型基本原理,从哲学视角谈谈统一二者的潜变量模型 监督学习的两种类别 在监督学习中,根据标签值的类型可以将其分为两类: 一类是定量数据,其分为计量型和计数型,这种可以 ...

  2. stats | 广义线性模型(二)——泊松回归

    本篇介绍一种常见的广义线性模型:泊松回归.泊松分布是离散型分布,它的概率分布函数如下: 写成指数族分布的形式如下: 对照指数族分布的通式: 可得, 广义线性模型假设与解释变量存在线性关系,即 又因为泊 ...

  3. R语言广义加性模型(GAMs:Generalized Additive Model)建模:数据加载、划分数据、并分别构建线性回归模型和广义线性加性模型GAMs、并比较线性模型和GAMs模型的性能

    R语言广义加性模型(GAMs:Generalized Additive Model)建模:数据加载.划分数据.并分别构建线性回归模型和广义线性加性模型GAMs.并比较线性模型和GAMs模型的性能 目录

  4. 【word2vec】篇三:基于Negative Sampling 的 CBOW 模型和 Skip-gram 模型

    系列文章: [word2vec]篇一:理解词向量.CBOW与Skip-Gram等知识 [word2vec]篇二:基于Hierarchical Softmax的 CBOW 模型和 Skip-gram 模 ...

  5. 数据库设计(ER模型和UML模型及转换为关系模型的公式)

    本文根据b站鲁老师的教学视频整理而来,可能会偏理论化,有点枯燥,但是如果认真看完,还是会有所收获哒. 从本文可以学习到: 对于一个即将展开的项目,我们应该怎么设计及实现数据库. 掌握概念模型(ER模型 ...

  6. R语言广义线性模型泊松回归(Poisson Regression)模型

    R语言广义线性模型泊松回归(Poisson Regression)模型 试想一下,你现在就站在一个人流密集的马路旁,打算收集闯红灯的人群情况(?).首先,利用秒表和计数器,一分钟过去了,有5个人闯红灯 ...

  7. 【word2vec】篇二:基于Hierarchical Softmax的 CBOW 模型和 Skip-gram 模型

    文章目录 CBOW 模型 基本结构 目标函数 梯度计算 Skip-gram 模型 基本结构 梯度计算 优缺点分析 系列文章: [word2vec]篇一:理解词向量.CBOW与Skip-Gram等知识 ...

  8. 基于 OData 模型和 JSON 模型的 SAP UI5 表格控件行项目的添加和删除实现

    这是 Jerry 2021 年的第 62 篇文章,也是汪子熙公众号总共第 339 篇原创文章. 龟虽寿曹操神龟虽寿,犹有竟时:腾蛇乘雾,终为土灰.老骥伏枥,志在千里:烈士暮年,壮心不已.盈缩之期,不但 ...

  9. lr模型和dnn模型_建立ML或DNN模型的技巧

    lr模型和dnn模型 机器学习 (Machine Learning) Everyone can fit data into any model machine learning or deep lea ...

最新文章

  1. java中的new_java里的new到底是什么意思?
  2. 你会采取什么方法改进你的测试用例_软件测试面试时常考的几道面试题
  3. springboot学习笔记一(从maven项目到springboot)
  4. C# 中的回车换行符 表示
  5. 为什么 IEnumerable 没有提供 ForEach ?
  6. 什么是地址译码 理解二进制编码
  7. 分治 —— 莫队算法 —— 带修莫队
  8. 前端开发 表单元素 0229
  9. 练习:C#---for循环(整数和、阶乘、楼梯)
  10. mysql系统特性_MySQL · 引擎特性 · InnoDB 事务系统
  11. redis学习笔记---java操作redis,使用expire模拟指定时间段内限制ip访问的次数;
  12. APP抓包,针对 SSLPinning反爬
  13. java随机生成测试数据
  14. 状态机工作流.实列.报销审批流程(二)
  15. 弘辽科技:信息层面售假排查逻辑
  16. libuv 的Processes
  17. Pandas详解十之Dropna滤除缺失数据
  18. 面对 ESM 的开发模式,webpack 还有还手之力吗?(转载)
  19. jQuery(JS库) | 一文带你掌握jQuery的使用
  20. asp毕业设计——基于asp+access的学生管理系统设计与实现(毕业论文+程序源码)——学生管理系统

热门文章

  1. 当代年轻人的社恐(二)
  2. 复选框实现。全选、全不选、多选
  3. The OSS Access Key Id you provided does not exist in our records
  4. 案例分析-电影评分分析
  5. 阿里巴巴CEO马云曾经注册过的N个搞笑商标 只有你想不到
  6. 大学排行榜 : qs全球中国区大学排行榜
  7. java 设计模式
  8. 哈尔滨工程大学考研经验分享(中):初试
  9. 什么是BN(Batch Normalization)
  10. 与其苟延残喘,不如纵情燃烧