机器学习回归模型相关重要知识点总结

news2025/1/19 22:25:29

回归分析为许多机器学习算法提供了坚实的基础。在这篇文章中,我们将总结 10 个重要的回归问题和5个重要的回归问题的评价指标。

一、线性回归的假设是什么

  • 线性:自变量(x)和因变量(y)之间应该存在线性关系,这意味着x值的变化也应该在相同方向上改变y值。

  • 独立性:特征应该相互独立,这意味着最小的多重共线性。

  • 正态性:残差应该是正态分布的。

  • 同方差性:回归线周围数据点的方差对于所有值应该相同。

二、什么是残差,它如何用于评估回归模型

残差是指预测值与观测值之间的误差。它测量数据点与回归线的距离。它是通过从观察值中减去预测值的计算机。

残差图是评估回归模型的好方法。它是一个图表,在垂直轴上显示所有残差,在 x 轴上显示特征。如果数据点随机散布在没有图案的线上,那么线性回归模型非常适合数据,否则我们应该使用非线性模型。

三、如何区分线性回归模型和非线性回归模型

两者都是回归问题的类型。两者的区别在于他们训练的数据。

线性回归模型假设特征和标签之间存在线性关系,这意味着如果我们获取所有数据点并将它们绘制成线性(直线)线应该适合数据。

非线性回归模型假设变量之间没有线性关系。非线性(曲线)线应该能够正确地分离和拟合数据。

找出数据是线性还是非线性的三种最佳方法:

  1. 残差图;

  2. 散点图;

  3. 假设数据是线性的,训练一个线性模型并通过准确率进行评估。

四、什么是多重共线性,它如何影响模型性能?

当某些特征彼此高度相关时,就会发生多重共线性。相关性是指表示一个变量如何受到另一个变量变化影响的度量。

如果特征 a 的增加导致特征 b 的增加,那么这两个特征是正相关的。如果 a 的增加导致特征 b 的减少,那么这两个特征是负相关的。在训练数据上有两个高度相关的变量会导致多重共线性,因为它的模型无法在数据中找到模式,从而导致模型性能不佳。所以在训练模型之前首先要尽量消除多重共线性。

五、异常值如何影响线性回归模型的性能?

异常值是值与数据点的平均值范围不同的数据点。换句话说,这些点与数据不同或在第 3 标准之外。

线性回归模型试图找到一条可以减少残差的最佳拟合线。如果数据包含异常值,则最佳拟合线将向异常值移动一点,从而增加错误率并得出具有非常高 MSE 的模型。

六、什么是 MSE 和 MAE 有什么区别?

MSE 会惩罚大错误,而 MAE 不会。随着 MSE 和 MAE 的值都降低,模型趋向于一条更好的拟合线。

七、L1 和 L2 正则化是什么,应该在什么时候使用?

在机器学习中,我们的主要目标是创建一个可以在训练和测试数据上表现更好的通用模型,但是在数据非常少的情况下,基本的线性回归模型往往会过度拟合,因此我们会使用 l1 和l2 正则化。

L1 正则化或 lasso 回归通过在成本函数内添加添加斜率的绝对值作为惩罚项。有助于通过删除斜率值小于阈值的所有数据点来去除异常值。

L2 正则化或ridge 回归增加了相当于系数大小平方的惩罚项。它会惩罚具有较高斜率值的特征。

l1 和 l2 在训练数据较少、方差高、预测特征大于观察值以及数据存在多重共线性的情况下都很有用。

八、异方差是什么意思?

它是指最佳拟合线周围的数据点的方差在一个范围内不一样的情况。它导致残差的不均匀分散。如果它存在于数据中,那么模型倾向于预测无效输出。检验异方差的最好方法之一是绘制残差图。

数据内部异方差的最大原因之一是范围特征之间的巨大差异。例如,如果我们有一个从 1 到 100000 的列,那么将值增加 10% 不会改变较低的值,但在较高的值时则会产生非常大的差异,从而产生很大的方差差异的数据点。

九、方差膨胀因子的作用是什么?

方差膨胀因子(vif)用于找出使用其他自变量可预测自变量的程度。

让我们以具有 v1、v2、v3、v4、v5 和 v6 特征的示例数据为例。现在,为了计算 v1 的 vif,将其视为一个预测变量,并尝试使用所有其他预测变量对其进行预测。

如果 VIF 的值很小,那么最好从数据中删除该变量。因为较小的值表示变量之间的高相关性。

十、逐步回归(stepwise regression)如何工作?

逐步回归是在假设检验的帮助下,通过移除或添加预测变量来创建回归模型的一种方法。它通过迭代检验每个自变量的显著性来预测因变量,并在每次迭代之后删除或添加一些特征。它运行n次,并试图找到最佳的参数组合,以预测因变量的观测值和预测值之间的误差最小。

它可以非常高效地管理大量数据,并解决高维问题。

十一、除了MSE 和 MAE 外回归还有什么重要的指标么?

我们用一个回归问题来介绍这些指标,我们的其中输入是工作经验,输出是薪水。下图显示了为预测薪水而绘制的线性回归线。

指标一:平均绝对误差(MAE)

平均绝对误差 (MAE) 是最简单的回归度量。它将每个实际值和预测值的差值相加,最后除以观察次数。为了使回归模型被认为是一个好的模型,MAE 应该尽可能小。

MAE的优点是:简单易懂。结果将具有与输出相同的单位。例如:如果输出列的单位是 LPA,那么如果 MAE 为 1.2,那么我们可以解释结果是 +1.2LPA 或 -1.2LPA,MAE 对异常值相对稳定(与其他一些回归指标相比,MAE 受异常值的影响较小)。

MAE的缺点是:MAE使用的是模函数,但模函数不是在所有点处都可微的,所以很多情况下不能作为损失函数。

指标二:均方误差(MSE)

MSE取每个实际值和预测值之间的差值,然后将差值平方并将它们相加,最后除以观测数量。为了使回归模型被认为是一个好的模型,MSE 应该尽可能小。

MSE的优点:平方函数在所有点上都是可微的,因此它可以用作损失函数。

MSE的缺点:由于 MSE 使用平方函数,结果的单位是输出的平方。因此很难解释结果。由于它使用平方函数,如果数据中有异常值,则差值也会被平方,因此,MSE 对异常值不稳定。

指标三:均方根误差 (RMSE)

均方根误差(RMSE)取每个实际值和预测值之间的差值,然后将差值平方并将它们相加,最后除以观测数量。然后取结果的平方根。因此,RMSE 是 MSE 的平方根。为了使回归模型被认为是一个好的模型,RMSE 应该尽可能小。

RMSE 解决了 MSE 的问题,单位将与输出的单位相同,因为它取平方根,但仍然对异常值不那么稳定。

上述指标取决于我们正在解决的问题的上下文, 我们不能在不了解实际问题的情况下,只看 MAE、MSE 和 RMSE 的值来判断模型的好坏。

指标四:R2 score

如果我们没有任何输入数据,但是想知道他在这家公司能拿到多少薪水,那么我们能做的最好的事情就是给他们所有员工薪水的平均值。

R2 score 给出的值介于 0 到 1 之间,可以针对任何上下文进行解释。它可以理解为是拟合度的好坏。

SSR 是回归线的误差平方和,SSM 是均线误差的平方和。我们将回归线与平均线进行比较。

  • 如果 R2 得分为 0,则意味着我们的模型与平均线的结果是相同的,因此需要改进我们的模型。

  • 如果 R2 得分为 1,则等式的右侧部分变为 0,这只有在我们的模型适合每个数据点并且没有出现误差时才会发生。

  • 如果 R2 得分为负,则表示等式右侧大于 1,这可能发生在 SSR > SSM 时。这意味着我们的模型比平均线最差,也就是说我们的模型还不如取平均数进行预测。

如果我们模型的 R2 得分为 0.8,这意味着可以说模型能够解释 80% 的输出方差。也就是说,80%的工资变化可以用输入(工作年限)来解释,但剩下的20%是未知的。

如果我们的模型有2个特征,工作年限和面试分数,那么我们的模型能够使用这两个输入特征解释80%的工资变化。

R2的缺点:

随着输入特征数量的增加,R2会趋于相应的增加或者保持不变,但永远不会下降,即使输入特征对我们的模型不重要(例如,将面试当天的气温添加到我们的示例中,R2是不会下降的即使温度对输出不重要)。

指标五:Adjusted R2 score

上式中R2为R2,n为观测数(行),p为独立特征数。Adjusted R2解决了R2的问题。

当我们添加对我们的模型不那么重要的特性时,比如添加温度来预测工资.....

当添加对模型很重要的特性时,比如添加面试分数来预测工资……

以上就是回归问题的重要知识点和解决回归问题使用的各种重要指标的介绍及其优缺点,希望对你有所帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/93121.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PYNQ -z2 与 PC主板网口直连上网 可ping通外网

文章目录1.下载映像文件并烧录到板子2. 将usb和网线连接到电脑上3.将网络改为共享模式4. 使用xshell新建串口通信连接到板子5. 更改板子ip与PC 同一网段6. 通过ip地址访问7. 访问外网1.下载映像文件并烧录到板子 可以参考 烧录镜像 2. 将usb和网线连接到电脑上 3.将网络改为共…

【轻量级开源ROS 的机器人设备(5)】--(1)拟议的框架——µROS节点

前文链接: 【轻量级开源ROS 的机器人设备(4)】--(3)通信实现 【轻量级开源ROS 的机器人设备(4)】--(2)通信实现 【轻量级开源ROS 的机器人设备(4&#xff…

Docker+Jenkins+Gitee+Harbor+WebHooks实现CI/CD!

🎶 文章简介:DockerJenkinsGiteeHarborWebHooks实现CI/CD! 💡 创作目的:DockerJenkinsGiteeHarborWebHooks实现CI/CD! ☀️ 今日天气:天气有些阴沉 📝 每日一言:如果你执…

【设计模式】策略模式

【设计模式】策略模式 文章目录【设计模式】策略模式一:策略模式简介二:策略模式使用场景三:策略模式总结四:策略模式实战一:策略模式简介 在策略模式(Strategy Pattern)中,一个类的…

[附源码]Node.js计算机毕业设计房地产销售系统Express

项目运行 环境配置: Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境:最好是Nodejs最新版,我…

怎么把图片转换成excel文件?

作为一个办公人员,难免会遇到图片里面有一些内容数据,需要编辑成Excel表格。如果我们按照上面图片表格,创建一个新的文件,这样就非常费时费力,还容易出错。其实小伙伴们如果需要,可以借助软件直接把图片变成…

聚观早报 | 百度 APP 上线疫情指数;辣条第一股卫龙在港上市

今日要闻:百度 APP 上线疫情指数;辣条第一股卫龙在港上市;特斯拉股价大跌引投资者不满;苹果将允许下载第三方商店;京东调集快递小哥驰援北京百度 APP 上线疫情指数 近日,百度 APP 正式上线「疫情指数」&…

CRM客户管理系统源码带手机端+Uniapp小程序源码+调试部署视频

一套Java大型CRM客户关系管理源码带手机端和小程序源码(带调试部署视频) 了解CRM源码更多信息可私信我。 相关技术: 1. 前端:Vue 2. 后端:Spring boot 3. 数据库:MySQL 4.小程序端:UNIAPP …

C++画图之GOC编程 第6课 通天云梯

Goc编程第一课 Goc编程第一课_哔哩哔哩_bilibili Goc编程第一课扩展加复习 Goc编程第一课扩展加复习_哔哩哔哩_bilibili Goc编程第二课 Goc编程第二课_哔哩哔哩_bilibili Goc编程第三课 Goc编程第三课_哔哩哔哩_bilibili Goc编程第四课 Goc编程第四课_哔哩哔哩_bilibili G…

程序员开发10年无法突破架构师?那是因为这个环节没做对

“架构师”对于程序员来讲,一定是大部分程序员所追求以及渴望达到的一个高度。那么,到底需要达到什么要求才能算是架构师呢?下面为大家分享一张Java架构师的岗位职责图,大家可以先看看参考参考。 从图中可以看出,架构师…

机器学习~从入门到精通(一)knn算法数据集处理训练模型

一、机器学习的概念 机器学习的概念: 重点在于学习 ,区别于让机器去执行我们定义好的规则 我们让机器去学习,也就是具备一定的预测能力,需要我们给机器大量的数据,以及给定对于这些数据 机器如何去看待的规则&#x…

小程序框架与生命周期

目录 框架 响应的数据绑定 页面管理 基础组件 丰富的 API 逻辑层 App Service 小程序的生命周期 注册页面 使用 Page 构造器注册页面 在页面中使用 behaviors 使用 Component 构造器构造页面 页面的生命周期 页面路由 页面栈 路由方式 注意事项 模块化 模块化…

P2P之ICE协议(二)

名词解释 Transport Address:包含IP、port和传输协议。 Candidate:除了Transport Address 外还包括类型、优先级、foundation还有Base。 Base:Host candidate 关联一个 Server reflexive candidate 。 ICE的建连过程 ICE实现NAT穿透的所要…

影像组学——一个入门级汇报

影像组学1 相关综述2 发展历程3 研究背景4 影像组学工作流程5 临床应用6 影像组学的问题及挑战7 发展趋势1 相关综述 1. Radiomics the process and the challenges 2. Radiomics Extracting more information from medicalimages 3. Integrating pathomics with radiomics an…

Qt新手入门指南——创建一个基于Qt Widget的文本查找器(二)

Qt是目前最先进、最完整的跨平台C开发工具。它不仅完全实现了一次编写,所有平台无差别运行,更提供了几乎所有开发过程中需要用到的工具。如今,Qt已被运用于超过70个行业、数千家企业,支持数百万设备及应用。 本教程将介绍如何使用…

原生JS之sort排序方法详解

在JavaScript中排序主要用到的api就是sort了,但是使用sort有几个坑需要注意,让我们一起来看看 排序原理-不使用参数时 sort() 方法用于对数组的元素进行排序。排序顺序可以是字母或数字,并按升序或降序。 默认排序顺序为按字典升序。 在不…

CSS 如何实现羽化效果?

最近碰到这样一个问题,在一张封面上直接显示书名,可能会存在书名看不太清楚的情况(容易受到背景干扰),如下 为了解决这个问题,设计师提了一个“究极”方案,将书名背后的图片模糊一下&#xff0c…

【OpenCV-Python】教程:6-1 相机标定

OpenCV Python 相机标定 【目标】 摄像机引起的失真类型如何找到相机的内参和外参如何基于这些特性校正这些图像 【理论】 一些针孔相机会导致图像发生严重失真,主要有两种,一是径向畸变,一是切向畸变。 径向畸变使直线看起来弯曲。距离…

Spring MVC学习 | 报文信息转换

文章目录一、HttpMessageConverter二、获取请求报文信息2.1 使用原生servletAPI2.2 使用RequestBody注解获取请求体信息2.3 使用RequestEntity对象获取请求报文信息三、设置响应报文信息3.1 使用原生的servletAPI3.2 使用ResponseBody注解设置响应体信息3.3 ResponseEntity类的…

Docker 镜像构建可以分享的快乐

通过上一篇 Dockerfile 语法与指令的学习,本节就开始使用Dockerfile 来制作自己的 Docker 镜像啦。 Docker 镜像构建 新建 app.py 文件 from flask import Flaskapp Flask(__name__)app.route(/) def hello():return Hello World! Hogwarts.本代码主要功能是当我…