当前位置: 首页 > article >正文

【机器学习】线性回归 多元线性回归

多元线性回归

    • V1.1
    • 多元线性回归
    • 一元线性回归与多元线性回归
    • 多元线性回归模型的误差衡量
    • 多元线性回归的最优解
      • 多元线性回归的解析解(标准数学解法)
        • 多元线性回归的解析解公式分析
      • 多元线性回归的搜索解法

V1.1

加入链接会影响文章推荐权重,阅读机器学习系列文章请移步【机器学习】板块。

多元线性回归

多元线性回归使用多维特征向量来推算回归值,推算方法使用以下公式
y = w 0 + w 1 ∗ x 1 + w 2 ∗ x 2 + . . . + w n ∗ x n y=w_0+w_1*x_1+w_2*x_2+...+w_n*x_n y=w0+w1x1+w2x2+...+wnxn
其中 x i x_i xi是N维特征向量第 i i i 维的数据, w i w_i wi是特征向量第 i i i 维特征的权值, y y y是该特征向量的预测值。
求解多元线性回归模型,即通过N维特征向量及其对应的标签真实值,求解多元线性公式参数, w 0 . . w n w_0..w_n w0..wn的过程。

一元线性回归与多元线性回归

一元线性回归的2个参数 k k k b b b,其中 k k k对应一元特征的权值。
多元线性回归有 w 1 w_1 w1- w n w_n wn这N个权重,分别对应特征向量的N个维度的特征值。

多元线性回归模型的误差衡量

对于单个特征向量,其误差为 y r e a l − y p r e d i c t y_{real}-y_{predict} yrealypredict
总体误差,使用各个特征向量投票决定,这里可以使用MSE(Mean Squared Error)方法(其他总体误差计算方法比如RMES,MAE)。
可以认为最优的模型即是将总体误差最小化时的模型,在使用MSE的情况下,即是要求解使得模型总体损失最小时的参数 w 0 . . . w n w_0...w_n w0...wn。可用如下公式表示
arg min ⁡ w 0 . . . w n ∑ i = 1 m ( y r e a l − y p r e d i c t ) 2 \argmin_{w_0...w_n}\sum_{i=1}^{m}(y_{real}-y_{predict})^2 w0...wnargmini=1m(yrealypredict)2
y p r e d i c t y_{predict} ypredict公式代入,公式中就直接包含了模型的参数 w 0 . . . w n w_0...w_n w0...wn
arg min ⁡ w 0 . . . w n ∑ i = 1 m ( y r e a l − ( w 0 + w 1 ∗ x 1 + w 2 ∗ x 2 + . . . + w n ∗ x n ) ) 2 \argmin_{w_0...w_n}\sum_{i=1}^{m}(y_{real}-(w_0+w_1*x_1+w_2*x_2+...+w_n*x_n))^2 w0...wnargmini=1m(yreal(w0+w1x1+w2x2+...+wnxn))2

多元线性回归的最优解

多元线性回归的解析解(标准数学解法)

对于给定的N维训练数据及数据标签,线性回归模型的最优解及参数 w 0 . . . w n w_0...w_n w0...wn ,可以通过以下公式得到多元线性回归的最优参数
W = ( X T X ) − 1 X T Y W=(X^TX)^{-1}X^TY W=(XTX)1XTY

多元线性回归的解析解公式分析

在多元线性回归的解析解公式中, X X X为特征矩阵( M ∗ N M*N MN维), Y Y Y为特征向量的标签值( M ∗ 1 M*1 M1维)。
X T X^T XT的维度 N ∗ M N*M NM
( X T X X^TX XTX)的维度为 N ∗ N N*N NN
( X T X ) − 1 (X^TX)^{-1} (XTX)1)的维度为 N ∗ N N*N NN
( X T X ) − 1 X T (X^TX)^{-1}X^T (XTX)1XT的维度为 N ∗ M N*M NM
( X T X ) − 1 X T Y (X^TX)^{-1}X^TY (XTX)1XTY的维度为 N ∗ 1 N*1 N1

多元线性回归的搜索解法

解析解在特征维度较大时计算较为复杂,计算量大,因此工程上并不经常采用这种方法。
scikit-learn库中对于线性回归问题,使用的是梯度下降的解法。

相关文章:

【机器学习】线性回归 多元线性回归

多元线性回归 V1.1多元线性回归一元线性回归与多元线性回归多元线性回归模型的误差衡量多元线性回归的最优解多元线性回归的解析解(标准数学解法)多元线性回归的解析解公式分析 多元线性回归的搜索解法 V1.1 加入链接会影响文章推荐权重,阅读…...

【VSCode】MicroPython环境配置

【VSCode】MicroPython环境配置 RT-Thread MicroPython 插件安装MicroPython 库文件配置结束语 RT-Thread MicroPython 插件安装 在 VSCode 拓展中搜索 “RT-Thread MicroPython” 并安装,详细配置步骤(修改 VSCode 默认终端、MicroPython 代码补全&…...

【python】网页批量转PDF

安装wkhtmltopdf 网站:wkhtmltopdf wkhtmltopdf http://www.baidu.com/ D:website1.pdf 安装pdfkit库 pip install pdfkit 批量转换代码 import os import pdfkit path_wkthmltopdf rE:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe config pdfkit.configu…...

基于Flask的租房信息可视化系统的设计与实现

【Flask】基于Flask的租房信息可视化系统的设计与实现(完整系统源码开发笔记详细部署教程)✅ 目录 一、项目简介二、项目界面展示三、项目视频展示 一、项目简介 随着互联网的快速发展,租房市场日益繁荣,信息量急剧增加&#xff…...

Scrapy安装,创建Scrapy项目,启动Scrapy爬虫

Scrapy安装,创建Scrapy项目,启动Scrapy爬虫 1. 安装 Python2. 安装 Scrapy3. 验证安装4. 创建 Scrapy 项目5. 启动爬虫5.1 示例 总结 Scrapy 的安装方式比较简单,下面是基于 Python 环境的安装流程: 1. 安装 Python 首先&#x…...

C++项目:高并发内存池_上

目录 1. 项目介绍 2. 内存池概念 2.1 池化技术 2.2 内存池和内存碎片 2.3 细看malloc 3. 定长内存池的实现 ObjectPool.hpp 4. 高并发内存池框架 5. thread cache测试 5.1 thread cache框架 5.2 ConcurrentAlloc.hpp 6. central cache测试 6.1 central cache框架 …...

人工智能驱动的自动驾驶:技术解析与发展趋势

🌍 人工智能(AI)正在彻底变革自动驾驶技术。 从感知到决策,从定位到控制,AI 的发展让汽车越来越接近真正的无人驾驶。本文将详细解析 AI 在自动驾驶中的核心应用,深入探讨各个关键技术,并展望未…...

手机控制电脑远程关机

远程看看软件兼容iOS和Android设备,该软件除了能通过电脑远程关闭另一台电脑外,您还可以通过它在手机上远程关闭公司的电脑。您可以按照以下步骤进行操作以实现电脑远程关机: 步骤1.在手机应用商店搜索“远程看看”进行软件安装,…...

IO模型与NIO基础--NIO网络传输选择器--字符编码

放进NIO体系进行网络编程的工作流程: Selector的创建 通过调用Selector.open()方法创建一个Selector,如下: Selector selector Selector.open(); 向Selector注册通道 通过Channel.register()方法来实现, 注意:Chan…...

【亚马逊开发者账号02】终审问题SA+review_Pre-review+Doc.xlsx

1.终审问题 你好感谢您在此过程中的回复和协作。所有想要构建具有受限 SP-API 角色的公开可用应用程序的开发人员都必须与我们的解决方案架构师团队一起完成架构审核。 这将需要详细说明应用程序的数据流、个人身份信息 (PII) 的数据保护控制&#xff0…...

基于STM32与BD623x的电机控制实战——从零搭建无人机/机器人驱动系统

系列文章目录 1.元件基础 2.电路设计 3.PCB设计 4.元件焊接 5.板子调试 6.程序设计 7.算法学习 8.编写exe 9.检测标准 10.项目举例 11.职业规划 文章目录 一、为什么选择这两个芯片?1.1 STM32微控制器1.2 ROHM BD623x电机驱动 二、核心控制原理详解2.1 H桥驱动奥…...

c++标准io与线程,互斥锁

封装一个 File 类, 用有私有成员 File* fp 实现以下功能 File f "文件名" 要求打开该文件 f.write(string str) 要求将str数据写入文件中 string str f.read(int size) 从文件中读取最多size个字节, 并将读取到的数据返回 析构函数 #…...

leetcode刷题第十三天——二叉树Ⅲ

本次刷题顺序是按照卡尔的代码随想录中给出的顺序 翻转二叉树 226. 翻转二叉树 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*//*总体思路就是,对于每一个结点&…...

SIM盾构建安全底座的可行性分析

一、背景 1.1安全需求现状 在数字化时代,信息安全面临着日益严峻的挑战。各类网络攻击手段层出不穷,如数据泄露、恶意软件攻击、网络诈骗等,给个人、企业和社会带来了巨大的损失。为了保障信息系统的安全性,需要构建一个可靠的安…...

全新的Android UI框架Jetpack Compose

Jetpack Compose 概述Compose API设计原则Compose 和 View 的关系Compose预览 概述 Jetpack Compose 是Android新一代UI框架,采用了 声明式 的开发范式,基于Kotlin DSL打造,并且可以和现有的Android View 体系共存。 Compose API设计原则 …...

在高流量下保持WordPress网站的稳定和高效运行

随着流量的不断增加,网站的稳定和高效运行变得越来越重要,特别是使用WordPress搭建的网站。流量过高时,网站加载可能会变慢,甚至崩溃,直接影响用户体验和网站正常运营。因此,我们需要采取一些有效的措施&am…...

Cython学习笔记1:利用Cython加速Python运行速度

Cython学习笔记1:利用Cython加速Python运行速度 CythonCython 的核心特点:利用Cython加速Python运行速度1. Cython加速Python运行速度原理2. 不使用Cython3. 使用Cython加速(1)使用pip安装 cython 和 setuptools 库(2&…...

Django 5实用指南(五)模板系统

Django5的模板系统是其核心功能之一,允许开发者将动态数据嵌入到HTML模板中,并根据不同的业务需求渲染页面。Django模板系统基于 Django模板语言(DTL),它提供了一些强大的功能,如模板标签、过滤器、条件语句…...

基于深度学习进行呼吸音检测的详细示例

以下是一个基于深度学习进行呼吸音检测的详细示例,我们将使用Python语言以及一些常见的深度学习库(如TensorFlow、Keras)和数据处理库(如numpy、pandas),同时会用到音频处理库librosa。整个流程包括数据加载…...

iOS 中使用 FFmpeg 进行音视频处理

在 iOS 中使用 FFmpeg 进行音视频处理,通常需要将 FFmpeg 的功能集成到项目中。由于 FFmpeg 是一个 C 库,直接在 iOS 中使用需要进行一些配置和封装。 1. 在 iOS 项目中集成 FFmpeg 方法 1:使用 FFmpeg 预编译库 下载 FFmpeg iOS 预编译库: 可以从以下项目中获取预编译的 …...

web的分离不分离:前后端分离与不分离全面分析

让我们一起走向未来 🎓作者简介:全栈领域优质创作者 🌐个人主页:百锦再新空间代码工作室 📞工作室:新空间代码工作室(提供各种软件服务) 💌个人邮箱:[1504566…...

记录一个ES分词器不生效的解决过程

问题背景 商城项目,其中商品查询检索使用的是ES, 但存在某些商品查询不到的问题 例如:某商品名包含AA_BBB这样的关键词,但是搜索"AA"不能查询到该商品,但是将商品名修改为AA BBB后就能查询到了. 怀疑是分词的问题,但看代码,在创建ES索引时在对应字段上也定义了分词器…...

高性能内存对象缓存Memcached详细实验操作

目录 前提准备: cache1,2: 客户端cache-api(一定得是LAMP环境) memcache实现主主复制以及高可用(基于以上完成) cache1,2: memcachekeepalived(基于以上完成) cache1,2: 前提准备: 1. 准备三台cent…...

css之display:grid布局改块级元素布局

1.问题: div是块级元素,一个div元素占一行,但是,今天测试样式时,总是会有两个div并占一行,很困惑,结果发现是app这个样式 在main.css里 #app样式布局在main.ts里被应用 2.原因以及样式分析 im…...

高效率:转换效率高达 96%,可有效减少能源损耗

WD5030 的特点 高效率:转换效率高达 96%,可有效减少能源损耗,降低设备发热,提高能源利用效率,延长电池供电设备的续航时间135。 精准输出电压:内置可调线路补偿和可调输出电压功能,输出电压精度…...

推荐一个github star45k+进阶的java项目及知识的网站

mall是github上star 45k的一个java项目 mall项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBootMyBatis实现,采用Docker容器化部署。 前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心…...

第2章 深入理解Thread构造函数

Thread的构造函数。 2.1 线程的命名 在构造一个Thread时可以为其命名。 2.1.1 线程的默认命名 下面构造函数中,并没有为线程命名。 Thread() Thread(Runnable target) Thread(ThreadGroup group, Runnable target)打开源码会看到 public Thread(Runnable targe…...

node 使用 Redis 缓存

缓存是什么? 高并发下,一个项目最先出问题的,并不是程序本身,而是数据库最先承受不住。 在数据库上我们可以做很多优化,例如优化 SQL 语句,优化索引,如果数据量大了,还可以分库、分表…...

PMBOK第7版整体架构全面详解

1. 引言 7月1日对于项目管理从业者和研究者而言,是个非凡意义的一个时间,这一天,翘首以待的《 项 目管理知识体系指南 》(PMBOK)第七版终于发布了。 总体而言,PMBOK第七版集百家之所长,成一…...

【Scrapy】Scrapy教程6——提取数据

前一小节我们拿到了页面的数据,那页面中那么多内容,我们想要其中的部分内容,该如何获取呢?这就需要对我们下载到的数据进行解析,提取出来想要的数据,这节就讲讲如何提取数据。 引入 我们编辑保存下来的shouye.html文件看下,发现这是什么鬼,全是如下图的代码。 没错…...