Scikit Learn 中的普通最小二乘法和 Ridge 回归方差17 Mar 2025 | 6 分钟阅读 Scikit-learn 的 linear_model 模块实现了普通最小二乘法 (OLS) 和岭回归。通过模型的属性,您可以在使用 OLS 或岭回归拟合线性回归模型时获取估计的系数和方差。 Scikit-learn 的 LinearRegression 类可用于 OLS。模型拟合后,coef_ 属性允许您获取估计的系数。但是,Scikit-learn 不直接提供 OLS 的方差估计。它必须使用统计技术或其他库工具独立计算。 普通最小二乘法 (OLS): 普通最小二乘法 (OLS) 是一种用于计算线性回归模型参数的方法。目标是找到观测数据点与线性模型的预测值之间的最佳拟合线,同时最小化残差平方和。 岭回归: 岭回归是线性回归中用于处理过拟合问题的一种方法。通过向损失函数添加一个正则化项来将系数推向零,从而实现这一点。这降低了模型的方差,从而提高了其预测未来的能力。 正则化: 正则化是一种用于防止机器学习模型过拟合的方法。它通过在损失函数中包含一个惩罚项来实现,以防止模型拟合数据噪声。根据具体问题,可以使用 L1 正则化(套索)、L2 正则化(岭)或弹性网络等技术来实现正则化。 均方误差 (MSE): 均方误差 (MSE) 是用于评估回归模型性能的统计量。它衡量了预测值与实际值之间平方差异的平均值。较低的 MSE 表明模型与数据的匹配度更好。 R 方: R 方 (R-Squared) 是用于评估回归模型拟合优度的统计量。它计算了自变量可以解释的因变量变异的百分比。较高的值表明模型与数据的拟合度更好,R 方的值介于 0 到 1 之间。 示例输出 ![]() ![]() 该算法生成一个具有非线性关系的合成数据集。然后,使用多项式特征,它拟合了两个回归模型:岭回归和普通最小二乘法 (OLS)。在数据集上进行训练后,模型会预测测试数据点的结果。使用均方误差 (MSE) 评估模型在训练数据集上的性能。代码提供了两张图表来可视化 OLS 和岭回归模型的数据和回归线。图表带有图例,其中包含每种模型的 MSE 值,以显示数据点和相关的回归线。此代码演示了多项式特征、OLS、岭回归以及使用 matplotlib 进行可视化的技术。 普通最小二乘法和岭回归的方差假设我们有一个数据集,其中包含一个预测变量 X 和 n 个预测变量,例如 x1、x2、x3 等,以及一个响应变量 Y。在这种情况下,我们想构建一个线性回归模型来预测 Y 基于预测变量 X。在这里,我们将比较 OLS 和岭回归方法。 普通最小二乘法 (OLS): OLS 旨在最小化残差平方和,并确定预测变量的最佳拟合系数。OLS 估计量来源于 岭回归: 为了控制系数的幅度,岭回归将一个称为正则化参数的惩罚项添加到残差平方和中。岭估计量来源于 I: 是单位矩阵,而 (lambda) 是正则化参数。 现在,让我们研究预测变量方差对 OLS 和岭回归系数的影响。 假设 x1 的方差远大于 x2。与 x2 相比,x1 的值范围更大。 OLS 使用 (XT * X) 的逆来估计系数,因此,如果一个预测变量的方差较大,它将对估计的系数产生重大影响。因此,与 x2 的系数相比,x1 的系数将具有更大的方差。 通过将单位矩阵乘以惩罚项,岭回归有助于将系数减小到零。因此,岭回归减小了高方差预测变量的影响。因此,即使 x1 的方差较大,x1 和 x2 的岭系数也将具有相似的方差。 总而言之,当预测变量之间存在方差差异时,岭回归通过将系数向零收缩来减小它们之间的方差差异。OLS 倾向于为对应于更高方差预测变量的系数提供更大的方差。 注意:这里的示例假设一个简单的情况来演示 OLS 和岭回归之间的方差差异。在实际情况中,OLS 和岭回归之间的选择会受到多种因素的影响,包括数据的性质、多重共线性以及期望的偏差与方差之间的权衡。以下代码创建一个包含 50 个样本和 10 个特征的虚假数据集。我们将数据分成训练集和测试集,以便将 OLS 和岭回归模型拟合到训练数据。然后,为了查看两个模型的方差差异,我们计算了两个模型在测试数据集上的均方误差,并绘制了它们的系数。 输出 ![]() 图表显示,OLS 模型的系数幅度更大,范围比岭回归模型的更广。因此,在方差和对数据噪声的敏感性方面,OLS 模型比岭回归模型表现更好。 OLS 模型: 与岭回归模型相比,OLS 模型的 MSE 较高 (0.18),表明其总方差略高。 岭回归模型: 岭回归模型的 MSE 较低 (0.21),表明其总方差低于 OLS 模型。 在岭回归中,正则化参数 (lambda) 有助于在减小残差平方和与最小化系数幅度之间进行权衡。通过引入惩罚项,岭回归可以降低模型的方差,从而减少过拟合并提高泛化性能。 岭回归模型的 MSE 较低 (0.09),表明其方差低于 OLS 模型 (0.13)。这表明岭回归模型在该数据集上的 MSE 表现优于其他模型,因为它能更好地捕捉数据中的基本模式并去除过拟合。 下一个主题根据出生日期显示星座或生肖的程序 |
在本教程中,我们将通过几种方式学习如何在 Python 中验证 IP 地址。当我们在编写操作系统级别的程序时,它很有用。如果我们正在使用 Django 或 Flask 开发一些 Web 应用程序,我们可能需要确定用户的 IP...
7 分钟阅读
您可以使用开源的Selenium测试自动化工具创建脚本来自动化Web浏览器。它常用于在线应用程序测试,并与多种编程语言兼容,包括Python、Java、C#和Ruby。通过使用Web驱动程序,该程序可以管理浏览器并模拟...
阅读 6 分钟
在接下来的教程中,我们将构建一个“随机密码生成器”。该程序将借助字母、数字和符号生成指定长度的强随机密码。让我们先了解先决条件并建立直觉……
37分钟阅读
飞船泰坦尼克号问题是基本泰坦尼克号生存问题的进阶版本,机器学习爱好者必须面对一次,并预测一个人的生存几率。飞船泰坦尼克号项目问题说明 在这个项目中,一艘飞船载着许多人进行太空旅行。……
14 分钟阅读
Python正则表达式中的re.search()与re.findall() 正则表达式,也称为理性表达式,是用于定义搜索模式的字符序列。它主要用于字符串模式匹配或字符串匹配,例如查找和替换操作。正则表达式是广义的...
阅读 4 分钟
什么是二叉搜索树?二叉树是一种二叉数据结构,包含不同的节点,每个节点最多有两个子节点。这些节点遵循一些属性,包括:二叉树的左节点的值小于根节点的值。……
5 分钟阅读
确定星座 一旦我们有了用户的出生日期,我们就可以继续确定他们的星座。程序逻辑将使用预定义的每个星座的日期范围与提供的日期进行比较。例如,我们可以推断用户是...
阅读 4 分钟
在本教程中,我们将编写 Python 程序来查找给定列表的完美和。让我们理解问题陈述。问题陈述 给定一个由非负整数组成的数组 arr[] 和一个整数 sum,任务是计算给定数组的子集数,这些子集...
5 分钟阅读
? 无论您是刚开始学习还是希望在面试前巩固技能,都可以找到完美的 Python 练习。像学习任何其他技能一样,在掌握一门新编程语言时,坚持不懈至关重要。我们建议每天练习编码...
7 分钟阅读
为了创建 GUI,Python 提供了多种选择(图形用户界面)。Tkinter 是所有 GUI 技术中最广泛使用的方式。它是 Tk GUI 工具包的标准 Python 接口,随 Python 预装。这是开发最快、最直接的方法...
阅读 6 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India