什么是逻辑回归?

作者

Fangfang Lee

Developer Advocate

IBM

什么是逻辑回归?

逻辑回归是数据科学 中一种监督式机器学习算法。它是一种预测离散或分类结果的分类算法。例如,我们可以使用分类模型,根据储蓄金额、收入和信用评分等预测因素来确定是否批准贷款。

在本文中,我们将深入探讨逻辑回归背后的数学原理。逻辑回归是机器学习和人工智能 (AI) 中最常用的分类算法之一。我们还将深入探讨回归的细节、用例和不同类型的逻辑回归。在生成式 AI 时代,支撑逻辑回归的基础仍然在编排复杂神经网络模型中仍然发挥着关键的作用。逻辑回归在行为和社会科学研究背景下的统计测试以及整个数据科学领域仍然具有很高的相关性。我们可以使用 Python 中的 scikit-learn 模块轻松实现逻辑回归。  

在本阅读解释器中,我们向您介绍线性回归和逻辑回归之间的区别、数学基础、不同类型的逻辑回归及其相关用例。

逻辑回归与线性回归

逻辑回归与线性回归一样,是一种线性模型,用于研究预测变量(自变量)与输出变量(响应、目标或因变量)之间的关系。主要区别在于,当输出为连续值时,例如预测某人的信用评分,会使用线性回归。当结果为分类变量时,例如贷款是否获得批准,可以使用逻辑回归。

在逻辑回归中,模型预测特定结果发生的概率。例如,根据某人的财务状况,我们可以预测其贷款获得批准的概率。模型的输出是一个介于 0 和 1 之间的值。根据阈值(通常为 0.5),我们将结果分类为“批准”或“不批准”。与线性回归中在数据中画一条直线不同,逻辑回归拟合一条 S 形曲线,将输入值映射到概率。

线性回归和逻辑回归都使用统计检验来评估哪些预测变量对输出结果有显著影响。t 检验和方差分析 (ANOVA)(或逻辑回归的似然比检验)等技术可为每个系数生成 p 值,帮助我们评估这种关系是否具有统计显著性。低 p 值(通常低于 0.05)表明该变量对模型有意义的贡献。我们还根据回归类型使用不同的指标来评估拟合优度——即模型对观察到的结果的解释程度。 

当我们构建模型时,重要的是要防止过拟合,即模型捕获训练数据中的噪声并且在新数据上表现不佳。如果预测变量多而样本量小,这种风险就会增加。为了解决这个问题,我们可以应用正则化,这是一种通过缩小系数来降低不太重要变量影响的技术。还必须仔细注意异常值,因为它们会扭曲模型,导致产生误导性的 p 值或系数。在实践中,我们通过多次迭代特征选择、测试和优化来改进模型。

为了更具体地对比两种模型,考虑一个线性回归场景,我们想根据某人当前的储蓄等特征来预测其信用评分。我们可以将其建模为:

 Ycreditscore=β0+β1Xsavings

储蓄与信用评分的线性回归

底层逻辑回归

与线性回归一样,逻辑回归是一种线性模型,属于广义线性模型 (GLM) 家族。与前面的示例一样,如果想表示批准或不批准的概率,我们应用线性函数。

 Yapproval=β0+β1Xsavings

由于线性函数假设存在线性关系,因此随着 X 值的变化,Y 可能会采用 (-inf, inf) 中的值。我们知道,概率的取值范围限制在 [0,1] 之间。利用线性模型的这一原理,我们无法直接对二元结果的概率进行建模。相反,我们需要一个逻辑模型来理解概率。因此,我们希望对输入应用转换,以便限制结果。这种转换被称为逻辑回归方程。这个方程可能看起来很复杂,但我们将在下一节中逐步分解其推导过程。

Y=P(x)=eβ0+β1x1+eβ0+β1x

 

按储蓄金额审批贷款

sigmoid 转换允许我们对前面的用例进行二元预测。进行转换后,X 的值可以取 (-inf, inf),而 y 将限制在 [0,1] 之间

要理解逻辑回归函数(或 sigmoid 函数),我们需要牢固掌握以下概念:

  • 几率、对数几率和几率比
  • 逻辑回归系数
  • 最大似然估计 (MLE) 

几率、对数几率和几率比

几率

概率之比的对数称为 logit 函数,它构成了逻辑回归的基础。

因为概率被限制在 0 和 1 之间,所以不能直接使用线性函数对概率建模,而要改用几率。虽然概率和几率都表示结果的可能性,但它们的定义不同:

概率衡量事件发生的机会占所有可能结果的比例。

极简主义图案,白色方块上有蓝色和红色圆圈。

几率 比较事件发生的机会与不发生的机会。

极简主义图案,白色方块上有蓝色和红色圆圈。

对数几率

令 p(x) 表示事件发生的概率。则 x 的几率定义为:

 odds(x)=p(x)1-p(x) 

我们来看一个具体的例子:

假设一个篮子里有 3 个苹果和 5 个橙子。

- 拿到橙子的概率为 5/(3+5) = 0.625

- 拿到橙子的几率为 5/3 ≈ 1.667

这意味着拿到橙子的可能性是拿到苹果的 ≈1.667 倍。相反,拿到苹果的几率为 3/5 = 0.6,小于 1,表明结果(拿到苹果)的可能性较小。根据几率等式,我们也可以把几率看作结果发生的概率大于 1,即结果发生的概率。因此,拿到橙子的几率为 = P(橙子)/(1-P(橙子))=0.625/(1-0.625)≈1.667

几率取值范围为 0 到无穷大。几率值大于 1 表示结果有利,小于 1 表示结果不利,等于 1 表示事件发生的可能性与不发生的可能性相同。

不过,几率在 1 周围并不对称。例如,几率 2 和 0.5 分别表示“可能性翻倍”和“可能性减半”,但它们在数值尺度上差异很大。为解决这种不平衡,我们取几率的对数,这将几率的无界尺度 [0, ∞) 转换为实数轴 (−∞, ∞)。这被称为对数几率,或 logit,是逻辑回归模型的基础。

我们将对数几率定义为:

 log(p(x)1-p(x))

这种变换允许我们将对数几率表示为输入的线性函数:

 log(p(x)1-p(x))=β0+β1·x1

然后,我们可以对两边进行指数化运算,得出几率:

 p(x)1-p(x)=eβ0+β1·x1

求解 p(x) 我们得到了 sigmoid 函数,该函数能确保预测值保持在 0 到 1 之间:

 p(x)=eβ0+β1·x11+eβ0+β1·x1

这种转换允许逻辑回归输出有效的概率,即使我们在底层使用线性函数对它们进行建模。

几率

我们最后引入 几率比概念,该概念有助于解释模型系数的影响。几率比告诉我们当输入变量 x1 增加一个单位时,几率如何变化。

假设事件几率为:

 odds(x1)=eβ0+β1·x1 

如果我们将 x1 增加一个单位,新几率变为:

 odds(x1+1)=eβ0+β1(x1+1)=eβ0+β1x1·eβ1 

这意味着 x1 每增加一个单位,几率就会乘以 eb1 。该乘数即为几率比。

- 如果 b1>1,则几率增加(事件更有可能发生)

- 如果 b1<1,则几率降低(事件变得可能)

- 如果 b1=1,几率比为 0,即输入对几率没有影响

几率比赋予逻辑回归可解释性,它能说明事件的几率如何随输入变化,这在医疗、营销和金融等应用场景中非常实用。但是,我们不能用解释线性回归系数的方式来解释这些系数。接下来让我们深入探讨系数的确定与解释方法。

逻辑回归系数

连续预测变量

回顾之前的内容:在线性回归中,系数很容易解释。以连续变量线性回归为例:输入特征 x 每增加一个单位,预测结果 y 将增加 b1 个单位。这种直接关系之所以有效,是因为线性回归假设输入特征与目标之间存在恒定变化率。它的输出没有上限,并且呈线性增长。

然而,逻辑回归并不直接对 y 进行建模,而是通过 log-odds(几率的对数)对 y 的概率进行建模。因此,我们不能说 x 每增加一个单位会导致 y 发生恒定单位变化。相反,我们需要通过系数对对数几率的影响(进而对几率和事件概率的影响)来解释系数。

具体而言,在逻辑回归中:

  • 正系数意味着随着输入增加,结果的对数几率会上升。这对应着概率的增加。
  • 负系数意味着随着输入增加,结果的对数几率会下降。这对应于概率的降低。
  • 系数为零意味着变量对结果没有影响。

重要的是,系数的大小反映了这种影响的强度,而几率比(系数的指数)则告诉我们变量每增加一个单位,几率会变化多少。

分类预测变量

与其他机器学习算法一样,我们可以在逻辑回归中纳入分类变量进行预测。在处理分类变量或离散变量时,我们通常会使用特征工程技术,如单次编码或虚拟变量,将它们转换成模型可以使用的二进制格式。

例如,使用之前相同的概念,假设我们想预测某人是否获得贷款批准(y=1 批准, y=0 不批准)的依据是他们是否仍有债务:

- 使 x=0 表示他们没有债务

- 使 x=1 表示他们有债务

我们的对数几率为 y=approval 将是 y=b0+b1*x1

系数 b1,则表示与没有债务的人相比,有债务的人获得批准的对数几率的变化。

为了使其更具可解释性,我们可将 b1 取指数,以获得几率比:

  • 如果  b1 为正, e 的 b1 幂大于 1,意味着有债务会提高获批几率。
  • 如果  b1 为负数, e 的 b1 小于 1,意味着有债务会降低获批几率。
  • 如果 b1 为 0, eb1 幂为 1,意味着债务状况无影响。

因此,虽然我们失去了线性回归系数的直观解释性,但逻辑回归仍能提供丰富的可解释洞察,特别是当我们从几率和概率变化的角度进行阐述时。概率增减的幅度作为函数 x 并不对应于单位增量 x但这取决于 x 在特定点的取值。

 

Mixture of Experts | 12 月 12 日,第 85 集

解码 AI:每周新闻摘要

加入我们世界级的专家小组——工程师、研究人员、产品负责人等将为您甄别 AI 领域的真知灼见,带来最新的 AI 资讯与深度解析。

最大似然估计

逻辑回归中的系数, β0  以及 β1 ,采用最大似然估计法 (MLE) 进行估计。MLE 的核心思想是找到能使观测数据在逻辑回归模型下“最可能”出现的参数。

在逻辑回归中,我们对目标变量的概率进行建模 y1 给定一个输入,值为 1(例如,“批准”) x1 通过使用逻辑(sigmoid) 函数:

 Y=P(x)=eβ0+β1x1+eβ0+β1x

MLE 尝试不同的组合 b0b1,并对每种组合提出疑问:在此参数条件下,我们看到实际数据的可能性有多大?

这通过似然函数来捕捉,该函数将每个数据点的预测概率相乘:

  L(β0,β1)=i=1np(xi)yi·(1-p(xi))1-yi

- 如果 y1=1  =1(“批准”),我们希望模型的预测概率为 P(x1) 尽可能接近 1。项 p(xi)yi  处理此情况。如果 y1 的实际观测数据实际上是“批准”或 1,则该项为 1。

- 如果 y1=0  =0,我们希望预测概率接近 0。术语 (1-p(xi))1-yi 处理此情况。如果实际观测数据是 y1 是“未批准”,或 0,该值将为 p(xi) 接近于 0,则 1-p(xi) 将接近于 1。

因此对于每个数据点,我们根据实际标签是 1 或 0 来乘以 p(x1)1p(xi) ,所有样本的乘积给出单一数值:当前模型下观测到整个数据集的似然度。我们可以看出,如果预测结果(使用参数 b0b1)与观测数据相符,似然值将最大化。将所有概率相乘的原因在于我们假设各结果相互独立。一个人获得批准的概率不应影响另一个人获得批准的概率。

由于该乘积可能极小,我们通常使用对数似然,将乘积转换为求和,更便于计算和优化。

为找到使对数似然最大化的值, b0b1 我们使用梯度下降,这是一种迭代优化算法。每步计算对数似然相对于各参数的变化量(即梯度),然后沿似然增长方向微调参数。该过程最终会收敛至最拟合数据的 b0b1 值。

逻辑回归的类型

逻辑回归模型有三种类型,它们是根据分类响应定义的。

  • 二元逻辑回归:在这种方法中,响应或因变量的性质是二分的,即只有两种可能的结果(如 0 或 1)。其一些常见用途包括预测电子邮件是否为垃圾邮件,或者肿瘤是否为恶性。在逻辑回归中,这是最常用的方法,更一般地说,它是二元分类最常见的分类器之一。
  • 多元逻辑回归:在这种逻辑回归模型中,因变量有三个或更多可能的结果,但这些值没有特定的顺序。例如,电影制片厂希望预测电影观众可能会看哪种类型的电影,从而更有效地推销电影。多元逻辑回归模型可以帮助制片厂确定一个人的年龄、性别和约会状态对他们喜欢的电影类型的影响强度。这样,制片厂就可以针对可能去看电影的人群开展特定电影的广告宣传活动。
  • 有序逻辑回归:当响应变量有三种或三种以上可能的结果,且这些值确实有一个确定的顺序时,就可以使用这种逻辑回归模型。有序响应的示例包括从 A 到 F 的评分量表,或从 1 到 5 的评分量表。

逻辑回归用例

逻辑回归通常用于预测和分类问题。其中一些用例包括:

  • 欺诈检测:逻辑回归模型可以帮助团队识别数据异常,从而预测欺诈行为。某些行为或特征可能与欺诈活动具有更高的关联性,这对于银行和其他金融机构保护其客户特别有帮助。基于 SaaS 的公司也开始采用这些做法,在围绕业务绩效进行数据分析时消除数据集中的虚假用户帐户。
  • 疾病预测:在医学领域,这种分析方法可用于预测特定人群患病的可能性。医疗保健组织可以为对特定疾病表现出较高倾向的个人建立预防性护理。
  • 流失预测:在企业的不同职能部门中,特定行为可能是人员流失的征兆。例如,人力资源和管理团队可能想知道企业内部是否有存在离开组织风险的高绩效人员。这种洞察力可以引发对话,从而了解企业内部的问题领域,例如企业文化或薪酬体系。另外,销售机构可能希望了解哪些客户有可能将业务转移到其他地方。这可以促使团队制定保留策略以避免收入损失。
相关解决方案
IBM watsonx.ai

使用面向 AI 构建器的新一代企业级开发平台 IBM watsonx.ai,可以训练、验证、调整和部署生成式 AI、基础模型和机器学习功能。使用一小部分数据,即可在很短的时间内构建 AI 应用程序。

了解 watsonx.ai
人工智能 (AI) 解决方案

借助 IBM 业界领先的人工智能专业知识和解决方案组合,让人工智能在您的业务中发挥作用。

深入了解 AI 解决方案
AI 咨询与服务

通过增加 AI 重塑关键工作流程和运营,最大限度提升体验、实时决策和商业价值。

深入了解人工智能服务
采取后续步骤

一站式访问跨越 AI 开发生命周期的功能。利用用户友好型界面、工作流并访问行业标准 API 和 SDK,生成功能强大的 AI 解决方案。

深入了解 watsonx.ai 预约实时演示