机器学习入门篇之监督学习(回归篇)——多元线性回归的原理介绍

news2024/11/13 20:39:36

在机器学习入门之监督学习(分类篇)-CSDN博客,以及初步接触了机器学习,在这片文章中我们继续沿着思维导图学习监督学习的剩下部分,回归。

在监督学习中,回归是一种预测型建模技术,它涉及预测一个连续的响应变量(目标变量)基于一个或多个预测变量(特征)。与分类不同,分类预测的是离散标签,回归则是输出连续数值。这使得回归适用于许多现实世界的问题,如预测房价、气温、销售额或任何其他连续量。

常见的回归类型

  1. 线性回归(Linear Regression):假设目标变量和特征之间存在线性关系。简单线性回归用于单个特征和目标之间的关系,多元线性回归用于多个特征。
  2. 多项式回归(Polynomial Regression):当数据点与变量之间的关系更适合用多项式表示时使用。
  3. 岭回归(Ridge Regression)和套索回归(Lasso Regression):这些是线性回归的变体,包含正则化项。岭回归添加了L2正则化项,而套索回归添加了L1正则化项,以避免过拟合并改进模型。
  4. 逻辑回归(Logistic Regression):虽然名为回归,但它是一种分类方法,用于预测二元变量的概率(如0或1、是或否)。
  5. 弹性网回归(Elastic Net Regression):结合了岭回归和套索回归的特点,添加了两种类型的正则化项

这里我们从多元线性回归入手,多元线性回归是统计学中的一种回归分析方法,用于估计两个或多个自变量(预测变量)和一个因变量(响应变量)之间的关系。这种模型假设响应变量与各自变量之间存在线性关系。

一、多元线性回归的基本原理

多元线性回归模型可以表示为:

 二、最小二乘法(Least Squares Method)

最小二乘法(Least Squares Method)是一种数学优化技术,广泛用于数据拟合和参数估计。在统计学中,尤其是在回归分析中,最小二乘法用于找出最佳函数匹配一组数据,以便最小化实际观测点和预测点之间的误差平方和。

最小二乘法的目标是最小化误差的平方和。对于线性回归问题,我们有数据点集,模型试图找到一条直线(或更高维的超平面),使得所有数据点到这条直线的垂直距离之和的平方最小。

假设我们的模型是一个线性方程:

最小二乘法不仅用于简单的线性回归,还可以扩展到多元线性回归、非线性模型和曲线拟合等更复杂的情况。在多元线性回归中,最小二乘法试图找到多个参数,以使得多维空间中的超平面与数据点之间的误差平方和最小。

三、回归模型的评估

 四、回归实战

from sklearn.datasets import load_boston
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error

# 加载数据集
data = load_boston()
X = data.data
y = data.target

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)

# 创建线性回归模型
model = LinearRegression()

# 训练模型
model.fit(X_train, y_train)

# 预测测试集结果
predictions = model.predict(X_test)

# 计算均方误差
mse = mean_squared_error(y_test, predictions)
print('Mean Squared Error:', mse)

五、回归与分类的区别 

回归和分类都是监督学习中的常见问题,但它们的目标、输出类型和评估方法有所不同。这两种方法各自适用于不同的数据科学问题和场景。

回归(Regression)

目标:回归旨在预测连续的数值。它的主要任务是估计一个或多个自变量(输入)和一个因变量(输出)之间的关系。

输出类型:回归分析的输出是连续的数值,如价格、温度、长度等。

常见算法

  • 线性回归
  • 多项式回归
  • 岭回归(Ridge Regression)
  • 套索回归(Lasso Regression)

评估指标

  • 均方误差(MSE)
  • 均方根误差(RMSE)
  • 平均绝对误差(MAE)
  • 决定系数(R-squared)
分类(Classification)

目标:分类的目标是将实例分到预先定义的类别中。这涉及到将实例数据分配到两个或多个标签(类别)中。

输出类型:分类的输出是类别标签,如是/否(二分类),或者多个类别如狗、猫、鸟(多分类)。

常见算法

  • 逻辑回归
  • 决策树
  • 随机森林
  • 支持向量机(SVM)
  • 神经网络

评估指标

  • 准确率(Accuracy)
  • 精确率(Precision)
  • 召回率(Recall)
  • F1 分数
  • 混淆矩阵(Confusion Matrix)
  • ROC 曲线
关键区别
  1. 输出差异

    • 回归:预测的是连续值。
    • 分类:预测的是离散类别。
  2. 目标函数

    • 回归:通常使用均方误差作为损失函数,目标是最小化实际值和预测值之间的误差。
    • 分类:常用的损失函数包括交叉熵损失(尤其是二分类和多分类问题中),目标是最大化预测正确的概率。
  3. 评估方法

    • 回归:评估的重点是预测值和实际值之间的差异。
    • 分类:评估的重点是正确分类的实例比例和其他相关指标(如精确率和召回率)。

应用示例

  • 回归:预测房价、股票价格、温度等。
  • 分类:邮件是否为垃圾邮件、图片中是猫还是狗、信用卡交易是否为欺诈。

回归和分类是解决不同类型预测问题的关键技术,选择哪一种取决于问题的具体需求和数据的性质。

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

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

相关文章

尚硅谷谷粒商城项目笔记——十、调试前端项目renren-fast-vue【电脑CPU:AMD】

十、调试前端项目renren-fast-vue 如果遇到其他问题发在评论区,我看到后解决 1 先下载安装git git官网下载地址 2 登录gitee搜索人人开源找到renren-fast-vue复制下载链接。【网课视频中也有详细步骤】 3 下载完成后桌面会出现renren-fast-vue的文件夹 4 开始调…

【阿旭机器学习实战】【39】脑肿瘤数据分析与预测案例:数据分析、预处理、模型训练预测、评估

《------往期经典推荐------》 一、【100个深度学习实战项目】【链接】,持续更新~~ 二、机器学习实战专栏【链接】,已更新31期,欢迎关注,持续更新中~~ 三、深度学习【Pytorch】专栏【链接】 四、【Stable Diffusion绘画系列】专…

python如何判断中文是否一致

Python判断两个相等的中文字符串为false,将两个待比较的字符串都把unicode编码设为‘utf-8’也不能解决问题,具体原因如下: 1、首先查看待比较两个字符串的编码格式 ,使用命令: import chardet ...... string_code c…

macos重装系统 启动U盘制作方法 - createinstallmedia 命令使用方法总结

macos重装系统比windows要稍微复杂一些,不过还好,macos系统安装app这个Apple官方提供的系统软件里面默认就内置了一个可用为我们制作启动盘的工具 createinstallmedia 我们下载的apple安装镜像要门是 dmg/pkg/iso 的压缩档案格式的,要么是 x…

智慧安监管理平台建设方案

1. 前言:智慧安监云平台概述 "互联网"安全生产监管监测大数据平台,利用移动互联网、物联网、云计算等技术,实现安全生产监管业务的智能化处理和统一集中管理。平台旨在构建服务导向的智慧安监管理平台,推动安全生产信息…

React 后台管理项目 入门项目 简洁清晰保姆级内容讲解

序章 React Hook的后台管理项目,从0到1搭建,内容非常丰富涵盖项目搭建、路由配置、用户鉴权、首页报表、用户列表、前后端联调等功能,推荐指数:5颗星! 视频学习链接: React 通用后台管理-零基础从0到1详细的入门保姆…

PHYS_OPT_SKIPPED

当跳过候选基元单元的物理优化时 单元格的PHYS_OPT_MODIFIED属性已更新,以反映跳过的优化。 当对同一单元格跳过多个优化时,OPT_skipped值包含 跳过的优化列表。 架构支持 所有架构。 适用对象 PHYS_OPT_SKIPPED属性放置在单元格上。 价值观 下表列出了各…

【Qt】动态加载DLL之QLibrary类学习(内含完整Demo源码)

各位看官这里是目录↓↓↓,点击直达哦~ 前言一、QLibrary简介二、常用方法2.1 构造函数2.2 设置要访问的动态库——setFileName()2.3 加载动态库——load()2.4 获取动态库的名字——fileName()2.5 解析共享库中的符号——resolve() 三、示例(Demo&#x…

入门学习使用overleaf和latex

文章目录 1.下载对应的latex论文模板2.overleaf平台的使用2.1overleaf平台的介绍2.2overleaf平台模板文件的上传2.3latex语法的学习2.3.2 分段(如下图显示)2.3.3 其他2.3.4简单latex实操2.3.5 换行符和换页符2.3.6左右居中对齐2.3.7 字体设置2.3.8插入固定位置图片2.3.9文字包围…

KillWxapkg 自动化反编译微信小程序,小程序安全评估工具,发现小程序安全问题,自动解密,解包,可还原工程目录,支持修改Hook,小程序

纯Golang实现,一个用于自动化反编译微信小程序的工具,小程序安全利器,自动解密,解包,可还原工程目录,支持微信开发者工具运行 由于采用了UPX压缩的软件体积,工具运行时可能会出现错误报告&…

Springboot整合Flowable入门-学习笔记

目录 1、定义流程(画图) 2、Springboot部署流程 3、Springboot删除所有流程 4、Springboot根据 流程部署ID 查询 流程定义ID 5、Springboot启动(发起)流程 6、Springboot查询任务 6.1全部任务 6.2我的任务(代办任务) 7、…

Ubuntu怎么进入救援模式或单用户模式

进入救援模式(Rescue Mode)或单用户模式(Single User Mode)的方法取决于你所使用的Linux发行版。以下是通用的步骤,适用于大多数基于GRUB引导的系统,如Ubuntu、Debian、CentOS等: 重启你的系统。…

【Python第三方库】Requests全面解析

文章目录 安装基本用法测试网站发送GET请求发送POST请求更多请求请求参数请求头其他常用请求属性处理响应响应状态码响应内容 处理超时处理异常 requests 是一个非常流行的 Python HTTP 库,用于发送所有类型的 HTTP 请求。它简洁易用,能够处理复杂的请求…

DAMA学习笔记(十三)-大数据和数据科学

1.引言 大数据不仅指数据的量大,也指数据的种类多(结构化的和非结构化的,文档、文件、音频、视频、流数据等),以及数据产生的速度快。数据科学家是指从从数据中探究、研发预测模型、机器学习模型、规范性模型和分析方法…

数据结构与算法基础篇--有向无环

. - 力扣(LeetCode) 力扣-207题 要判定一个图是否为有向无环图(DAG, Directed Acyclic Graph),可以使用拓扑排序(Topological Sort)的方法。如果一个有向图存在拓扑排序,那么它就是…

【MySQL】事务——事务的引入、事务的概念、什么是事务、为什么会出现事务、事务的版本支持、事务的提交方式、事务常见操作方式

文章目录 MySQL1. 事务的引入2. 事务的概念2.1 什么是事务2.2 为什么会出现事务2.3 事务的版本支持2.4 事务的提交方式2.5 事务常见操作方式2.5.1 测试事务开始和回滚2.5.2 测试未commit事务回滚2.5.3 测试commit事务持久化2.5.4 测试begin事务不受自动提交影响2.5.5 测试单条S…

【C++】模板(相关知识点讲解 + STL底层涉及的模板应用)

目录 模板是什么? 模板格式 模板本质 函数模板 格式介绍 显式实例化 模板参数匹配原则 类模板 类模板的实例化 非类型模板参数 模板特化——概念 函数模板特化 类模板的特化 全特化 半特化 偏特化 三种类特化例子(放一起比较)…

在 CentOS 7 上安装 Redmine 的详细步骤及 20 个经典用法

目录 1. 引言 2. 安装步骤 2.1 更新系统 2.2 安装依赖包 2.3 安装 MariaDB 数据库 2.4 配置 MariaDB 2.5 安装 Ruby 2.6 安装 Redmine 2.7 配置 Redmine 2.8 安装 Bundler 和必要的 Gems 2.9 生成密钥并迁移数据库 2.10 配置 Apache 2.11 启动 Apache 并设置开机自…

1712系列 嵌入式电源系统

1712系列 嵌入式电源系统 2/3/4/5G&共享站点快速部署 简述 1712A 300A嵌入式电源系统采用模块化设计、组合式结构,由控制器、整流模块、交流配电单元、直流配电单元等组成。该系统将交流电转换成稳定的-48V直流电,用于铁塔、移动、电信、联通等公司…

修改nacos实力权重或者对某实例下线报错

在Nacos控制台进行上述操作,错误信息 caused: errCode: 500, errMsg: do metadata operation failed ;caused: com.alibaba.nacos.consistency.exception.ConsistencyException: The Raft Group [naming_instance_metadata] did not find the Leader node;caused:…