什么是机器学习中的逻辑回归?
已发表: 2024-10-04逻辑回归是统计分析和机器学习 (ML) 的基石方法。本综合指南将解释逻辑回归的基础知识,并讨论各种类型、实际应用以及使用这种强大技术的优点和缺点。
目录
- 什么是逻辑回归?
- 逻辑回归的类型
- 逻辑回归与线性回归
- 逻辑回归的工作原理
- 应用领域
- 优点
- 缺点
什么是逻辑回归?
逻辑回归,也称为 logit 回归或 logit 模型,是一种用于分类任务的监督学习算法,特别是用于预测二元结果(即两个可能的类别)的概率。它基于同名的统计方法,估计特定事件发生的概率。例如,逻辑回归可用于预测电子邮件是垃圾邮件或客户进行购买或离开网站的可能性。
该模型评估事件的相关属性(称为“预测变量”或“特征”)。例如,如果事件是“电子邮件到达”,相关属性可能包括源 IP 地址、发件人电子邮件地址或内容可读性评级。它使用逻辑函数对这些预测变量与结果概率之间的关系进行建模,其形式如下:
f (x) = 1 / ( 1 + e -x )
该函数输出一个介于 0 和 1 之间的值,表示事件的估计概率(可能会说“这封电子邮件有 80% 可能是垃圾邮件”)。
逻辑回归广泛应用于机器学习中,特别是二元分类任务。 sigmoid 函数(逻辑函数的一种)通常用于将任何二元分类模型的输出转换为概率。尽管逻辑回归很简单,但它是更复杂模型(例如神经网络)的基础技术,其中类似的逻辑函数用于对概率进行建模。术语Logit 模型是指使用此 Logit 函数将输入特征映射到预测概率的模型。
逻辑回归的类型
逻辑回归主要有三种类型:二元回归、多项回归和序数回归。
二元逻辑回归
也称为二元回归,这是逻辑回归的标准且最常见的形式。当逻辑回归一词不带限定词使用时,通常指的是这种类型。 “二元”这个名字来源于这样一个事实:它只考虑两个结果;它可以被认为是回答是或否的问题。如果将更复杂的问题重新构造为是或否或二元问题链,则二元回归可以处理更复杂的问题。
示例:想象一下计算三个互斥选项的几率:客户是否会流失(即停止使用产品)、注册免费版本的服务或注册付费的高级版本。链式二元回归可以通过回答以下一系列问题来解决这个问题:
- 客户会流失吗(是或否)?
- 如果没有,客户是否会注册免费服务(是或否)?
- 如果没有,客户是否会注册付费高级服务(是或否)?
多项逻辑回归
这种形式的逻辑回归也称为多项回归,是二元回归的扩展,可以回答具有两个以上潜在结果的问题。它避免了解决更复杂问题时串联问题的需要。多项式回归假设计算的赔率没有任何相互依赖性或顺序,并且所考虑的选项集涵盖了所有可能的结果。
示例:当从可用颜色列表中预测客户可能想要购买的汽车的颜色时,多项回归效果很好。但是,它不适用于计算顺序重要的赔率,例如评估绿色、黄色和红色作为客户支持问题的严重性标签,其中问题始终以绿色开始,可能会升级为黄色,然后红色(黄色始终跟随绿色,红色始终跟随黄色)。
序数逻辑回归
这种特殊形式的逻辑回归也称为回归的比例优势模型,专为序数值(结果之间的相对顺序很重要的情况)而设计。当结果具有自然顺序但类别之间的距离未知时,使用序数逻辑回归。
示例:它可用于计算酒店客人可能将其住宿分为五部分的可能性:非常差、差、一般、好和非常好。相对顺序很重要——不好的总是比中立的更差,并且重要的是要注意评论将在规模上移动的方向。当顺序很重要时,序数回归可以量化正在计算赔率的值之间的关系(例如,它可能会检测到不良的出现频率往往是中性的一半)。
逻辑回归与线性回归
尽管不同,但逻辑回归和线性回归经常出现在相似的环境中,因为它们是更大的相关数学工具集的一部分。逻辑回归通常计算离散结果的概率,而线性回归计算连续结果的期望值。
例如,如果要尝试预测未来一天最可能的温度,线性回归模型将是完成这项工作的好工具。相比之下,逻辑回归模型尝试计算或预测固定选择列表中两个或多个选项的几率。逻辑回归模型可能不是预测特定温度,而是给出特定一天落入温暖、舒适或寒冷温度范围的可能性。
由于它们是为了解决不同的用例而构建的,因此这两个模型对它们所预测的值的统计属性做出了不同的假设,并使用不同的统计工具来实现。逻辑回归通常假设适用于离散值的统计分布,例如伯努利分布,而线性回归可能使用高斯分布。逻辑回归通常需要更大的数据集才能有效工作,而线性回归通常对有影响力的异常值更敏感。此外,逻辑回归对其计算的赔率结构做出假设,而线性回归则对错误在训练数据集中的分布方式做出假设。
这些模型之间的差异导致它们在特定的理想用例中表现更好。逻辑回归在预测分类值时会更准确,而线性回归在预测连续值时会更准确。但这两种技术经常相互混淆,因为它们的输出可以通过简单的数学计算来改变用途。逻辑回归模型的输出在转换后可以应用于与线性模型输出相同类型的问题,从而节省训练两个单独模型的成本。但它不会那么有效;反过来也是如此。
逻辑回归如何工作?
作为一种监督学习算法,逻辑回归依赖于从注释良好的数据集中学习。数据集通常包含与每个特征表示的预期模型输出相匹配的特征表示列表。
为了更清楚地了解逻辑回归,必须首先掌握以下关键术语:
- 预测变量:逻辑模型在计算结果赔率时考虑的属性或特征。例如,用于估计客户购买产品的可能性的预测变量可以包括人口统计数据和浏览历史记录。
- 特征表示:预测变量的特定实例。例如,如果预测变量是“邮政编码”、“州”和“收入等级”,则一个特征表示可能是“90210”、“加利福尼亚州”和“75K+/年”。
- 链接函数:回归模型核心的数学函数,它将预测变量与特定结果的几率连接起来。该函数将遵循以下模式:
θ = b(μ)
其中θ是每个类别预测的几率, b是特定函数(通常是S形函数,称为 sigmoid), μ表示预测值(来自连续的值范围)。
- Logistic函数:逻辑回归中使用的具体链接函数,定义为
σ ( x ) =1 / ( 1 +e-x)
它将输出标准化为 0 到 1 之间的概率,将预测变量中基于乘法的比例变化转换为赔率中一致的加性变化。
- Logit 函数:逻辑函数的反函数,将概率值转换为对数赔率,这有助于解释预测变量与结果赔率的关系。它有助于解释预测变量如何与结果的可能性相关。它定义为:
logit p =σ ( p ) -1= ln ( p / ( 1 – p ) )
对于给定的赔率p,它执行逻辑函数的反函数。
- 对数损失:也称为交叉熵损失或逻辑损失,它衡量分类模型中预测概率与实际结果之间的差异。对于二元分类,通常称为“二元交叉熵”。
逻辑回归过程的核心是决定使用哪个链接函数。对于二元逻辑回归,它始终是逻辑函数。更复杂的回归将使用其他类型的 sigmoid 函数;最流行的 sigmoid 函数之一称为 softmax,在 ML 模型和多项回归用例中经常使用。
在训练期间,系统还将依赖于损失函数,该函数计算回归的执行情况或其拟合程度。系统的目标可以被认为是减少预测结果或几率与现实世界中发生的事情之间的距离(有时这种距离称为“惊喜”)。对于逻辑回归,损失函数是非常流行的对数损失函数的变体。
多种标准机器学习训练算法可用于训练逻辑回归模型,包括梯度下降、最大似然估计和随机梯度下降。
逻辑回归在机器学习中的应用
逻辑回归 ML 模型通常用于分类任务,或根据部分信息预测类别。用例跨越许多领域,包括金融、医疗保健、流行病学和营销。两个最著名的应用程序是垃圾邮件检测和医疗诊断。
电子邮件垃圾邮件检测
逻辑回归可以成为对通信进行分类的有效工具,例如将电子邮件识别为垃圾邮件或非垃圾邮件,尽管在复杂的情况下通常会使用更高级的方法。发件人地址、目的地、消息的文本内容、源 IP 地址等(电子邮件的所有属性)都可以标记为预测变量,并考虑给定电子邮件是垃圾邮件的可能性。电子邮件垃圾邮件过滤器工具可快速训练和更新新电子邮件的二进制逻辑模型,并快速检测新的垃圾邮件策略并做出反应。
垃圾邮件过滤器的更高级版本可以预处理电子邮件,使其更容易识别为垃圾邮件。例如,脚本可以针对电子邮件中发件人的 IP 地址添加被标记为垃圾邮件的电子邮件的百分比,并且回归可以考虑该信息。
医疗诊断
逻辑回归模型通常用于辅助诊断糖尿病和乳腺癌等疾病。他们从医生和医学研究人员进行的分析中学习并建立基础。
对于大量图像的诊断(例如癌症检测),医学研究人员和专业人员根据各种测试、成像和扫描构建数据集。然后,这些数据被处理并转换成文本评估列表。可以分析图像的细节,例如像素密度、各种像素簇的数量和平均半径等等。然后,这些测量结果将包含在预测变量列表中,其中包括其他测试和评估的结果。逻辑回归系统向它们学习并预测患者是否可能被诊断出患有癌症。
除了高精度预测医学诊断之外,逻辑回归系统还可以指示哪些测试结果与其评估最相关。这些信息可以帮助确定新患者测试的优先顺序,加快诊断过程。
机器学习中逻辑回归的优势
逻辑回归通常因其简单性和可解释性而受到青睐,特别是在需要相对快速地生成结果并且对数据的洞察很重要的情况下。
快速、实用的结果
从实践的角度来看,逻辑回归易于实现且易于解释。即使数据与假设或期望不完全一致,它也能可靠地执行并提供有价值的见解。底层数学模型高效且相对易于优化,使逻辑回归成为许多应用程序的稳健且实用的选择。
对数据属性的有用见解
从理论上讲,逻辑回归在二元分类任务中表现出色,并且通常对新数据进行分类非常快。它可以帮助确定哪些变量与感兴趣的结果相关,从而深入了解进一步数据分析应该关注的重点。逻辑回归通常在简单的用例中提供高精度;即使某些数据集的准确性降低,它仍然可以提供有关变量的相对重要性及其影响方向(正面或负面)的有意义的见解。
机器学习中逻辑回归的缺点
逻辑回归对其分析的数据做出假设,帮助底层算法更快、更容易理解,但代价是限制了它们的有用性。它们不能用于对连续结果或非线性关系进行建模,如果与模型的关系过于复杂,则可能会失败;如果分析太多数据,则可能会过度拟合。
仅限于离散结果
逻辑回归只能用于预测离散结果。如果问题需要连续预测,线性回归等技术更合适。
假设线性关系
该模型假设预测变量和估计赔率之间存在线性关系,这在现实世界数据中很少出现。这通常需要额外的预处理和调整以提高准确性。此外,逻辑回归假设可以使用简单的线性函数做出分类决策,这可能无法反映现实场景的复杂性。因此,逻辑回归通常是一种近似值,可能需要定期优化和更新才能保持相关性。
可能无法模拟复杂的关系
如果一组预测变量与计算的赔率不存在线性关系,或者预测变量彼此之间不够独立,则逻辑回归可能无法完全发挥作用,或者可能仅检测到线性关系的子集当系统同时具有线性和其他更复杂的属性时。
过度拟合大型数据集
对于更大、更复杂的数据集,逻辑回归很容易出现过度拟合,即模型与所训练的特定数据过于紧密地结合在一起,捕获噪声和次要细节而不是一般模式。这可能会导致新的、未见过的数据的性能不佳。正则化等技术可以帮助减轻过度拟合,但在将逻辑回归应用于复杂数据时需要仔细考虑。