机器学习-线性回归(对于f(x;w)=w^Tx+b理解)

一、𝑓(𝒙;𝒘) = 𝒘T𝒙的推导

学习线性回归,我们那先要对于线性回归的表达公示,有所认识。

我们先假设空间是一组参数化的线性函数:

其中权重向量𝒘 ∈ R𝐷 和偏置𝑏 ∈ R都是可学习的参数,函数𝑓(𝒙;𝒘,𝑏) ∈ R也称为线性模型。

不失一般性, 在本章后面的描述中我们采用简化的表示方法, 直接用 𝒘和 𝒙 分别表示增广权重向量和增广特征向量. 这样, 线性回归的模型简写为 𝑓(𝒙;𝒘) = 𝒘T𝒙.

这就是题目中提到的线性回归模型的推导由来。

这里为了更好的学习线性回归模型,这里我们普及一下大学时线性代数的一些概念。

二、向量、增广向量、增广权重向量、增广特征向量的概念:

1. 向量(Vector)

定义:
向量是一组有序排列的数,表示空间中的点、数据样本或特定属性的集合。

示例:
假设我们有一个人的身体数据,包括身高和体重,我们可以用一个向量表示:

这个向量表示身高 180 cm,体重 75 kg。

常见类型:

  • 列向量(常用): n×1 维,如上例。
  • 行向量: 1×n,例如: x=[180,75]。

应用:

  • 在机器学习中,向量用来表示数据样本(输入特征)、模型参数等。
  • 在物理中,向量用来表示力、速度等有大小和方向的量。

2. 增广向量(Augmented Vector)

定义:
增广向量是在普通向量的基础上,增加一个额外的常数(通常是 1),以便于在数学计算中引入偏置项(Intercept/Bias)。

示例:
假设我们有一个特征向量:

增广后:

为什么要加 1?
在机器学习的线性回归公式中:

y = w_1 x_1 + w_2 x_2 + b

如果将 b 视为 w_3 并将增广向量 x 扩展为:

y = w_1 x_1 + w_2 x_2 + w_3 ⋅1

这时,增广后的矩阵运算更为简洁,公式变为:

应用:

  • 机器学习: 在回归、分类等问题中,引入偏置项。
  • 计算机视觉: 处理图像坐标变换(如平移操作)。
  • 信号处理: 统一矩阵运算,减少额外计算。

3. 增广权重向量(Augmented Weight Vector)

定义:
增广权重向量是在普通权重向量的基础上,增加一个额外的偏置项 b,以与增广输入向量匹配。

示例:
假设我们有普通的权重向量:

增广后:

这样,使用增广权重向量,计算目标值时,可以与增广向量配合使用:

应用:

  • 机器学习: 简化计算,避免单独处理偏置项。
  • 神经网络: 统一偏置与权重的管理,提高计算效率。

4. 增广特征向量(Augmented Eigenvector)

定义:
增广特征向量是在线性代数的特征值分解问题中,在特征向量的基础上,附加额外的约束条件或辅助信息,以便解决某些特定问题。

特征向量的基本公式:

给定矩阵 A,特征向量满足:

Av=λv

如果原始特征向量是:

增广后:

为什么要增广?

  • 在控制系统、信号处理等领域,增广特征向量可以用于增加额外信息,如系统约束或观测量。
  • 在奇异值分解(SVD)、PCA等方法中,增加维度可以提高数值稳定性或处理特殊边界条件。

应用:

  • 控制工程:增广状态向量来处理观测噪声。
  • 计算机视觉:在3D变换中加入齐次坐标(如在2D坐标 (x,y)增广为 (x,y,1))。

5. 总结:区别与联系

名称定义增加的元素作用例子
向量一组数,表示数据或坐标描述特征或数据点[180,75][180, 75]
增广向量在向量后加 1,使计算更方便1统一计算偏置项[180,75,1][180, 75, 1]
增广权重向量在权重后加偏置项 bb 以匹配增广向量1使得矩阵运算统一,减少额外处理[0.5,1.2,20][0.5, 1.2, 20]
增广特征向量在特征向量后加常数或约束1 或更多处理约束问题、增加系统观测能力[2,3,1][2, 3, 1]

它们之间的联系:

  • 增广向量和增广权重向量通常一起使用,用于机器学习中的线性模型。
  • 增广特征向量更偏向于线性代数的特征值分解和矩阵分析,并不直接用于机器学习的建模中。

三、这里思考一个问题:空间可以由线性模型表示吗?

答案是yes,空间可以在一定条件下用线性模型来表示,特别是在欧几里得空间特征空间中,线性模型可以用于描述点、方向、平面和超平面等几何对象。

1. 线性模型的基本形式

线性模型的一般数学形式是:

在向量形式下可以表示为:

其中:

  • x 表示输入向量,描述空间中的点或特征。
  • w 是权重向量,表示空间中的方向或特定超平面的法向量。
  • b 是偏置,表示超平面与原点的距离。

2. 用线性模型表示几何空间的例子

例 1:平面在三维空间中的表示

假设我们在三维空间中有一个平面,其方程可以写成:

2x+3y−z+5=0

将其改写成线性模型的形式:

z=2x+3y+5z

这实际上是一个线性回归模型,其中:

  • x1=x, x2=y,y=z。
  • 权重 w=[2,3]。
  • 偏置 b=5。

解释:

  • 这个线性方程表示三维空间中的一个平面,线性模型可以表示任意方向的平面。
  • 平面的法向量 (2,3,−1)代表其朝向。
例 2:二维平面上的直线

假设我们要表示一个 2D 平面上的直线:

y=4x+2

这里:

  • x 是输入变量,y 是输出。
  • 斜率 w1=4,偏置 b=2。

这条直线可以看作是一个 2D 空间中的线性模型,描述输入 x 和输出 y 之间的线性关系。

解释:

  • 该直线分割了平面空间,表示空间中的一个一维子空间。
  • 例如,在分类问题中,它可以用来将数据点分成两个类别。
例 3:超平面在高维空间中的表示(机器学习中的决策边界)

在机器学习中,支持向量机(SVM)和线性回归模型使用超平面来表示数据分布。例如,假设在 3D 空间中,数据点属于两个类别,我们可以用一个线性模型来区分它们:

w1x1+w2x2+w3x3+b=0

这个方程描述的是三维空间中的一个超平面,它可以将空间划分成两部分。

解释:

  • 在 n 维空间中,线性方程表示的是一个 (n−1)维的超平面。
  • 例如,在二维空间中,线性方程表示一条直线,在三维空间中,表示一个平面。
例 4:主成分分析(PCA)用于空间降维

在高维空间中,主成分分析(PCA)是一种常见的线性方法,用于找到数据的最佳投影方向。例如,给定一组三维点 (x1,x2,x3),PCA 试图找到一个最佳的线性方向来表示这些点,从而将其降维到一个平面或直线。

PCA 线性模型通常可以写作:

其中:

  • W 是投影矩阵,定义了降维后的新坐标轴。
  • 这个模型可以找到数据所在的低维子空间。

3. 线性模型表示空间的局限性

尽管线性模型可以表示许多几何对象,但也存在局限:

  • 无法表示非线性空间结构: 如果数据存在曲面或复杂的非线性关系,线性模型无法准确表示。
  • 只能描述平直的结构: 例如圆、球等非线性空间无法用简单的线性方程来表示。
  • 需要特征变换: 为了处理复杂空间,通常需要使用特征工程(如多项式特征扩展)或非线性映射(如核方法)。

4. 非线性空间如何用线性模型处理?

如果数据或空间具有非线性特征,可以通过以下方式将其转换为线性模型:

  1. 特征变换(Feature Engineering)

    通过增加维度,空间变得线性。

  2. 核方法(Kernel Methods)

    • 在支持向量机(SVM)中,核函数(如高斯核)将数据映射到高维线性可分空间。
  3. 神经网络(Deep Learning)

    • 通过多层非线性激活函数,神经网络可以近似任意复杂的空间映射。

5. 结论

  • 线性模型可以表示许多常见的空间,如直线、平面和高维超平面。
  • 对于更复杂的空间结构,需要进行特征变换或使用非线性方法来补充线性模型的局限性。
  • 在机器学习、数据分析和几何处理中,线性模型是非常重要的基础工具。

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

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

相关文章

R语言学习笔记之语言入门基础

一、R语言基础 快速熟悉R语言中的基本概念&#xff0c;先入个门。 1、运算符 运算符含义例子加1 1-减3 - 2*乘3 * 2/除9 / 3^(**)乘方2 ^ 3 2 ** 3%%取余5 %% 2%/%取整5 %/% 2 2、赋值符号 等号a 1三者等价&#xff1a;把1赋值给变量a左箭头<−a <- 1右箭头−&g…

计算机网络三张表(ARP表、MAC表、路由表)总结

参考&#xff1a; 网络三张表&#xff1a;ARP表, MAC表, 路由表&#xff0c;实现你的网络自由&#xff01;&#xff01;_mac表、arp表、路由表-CSDN博客 网络中的三张表&#xff1a;ARP表、MAC表、路由表 首先要明确一件事&#xff0c;如果一个主机要发送数据&#xff0c;那么必…

【Nomoto 船舶模型】

【Nomoto 船舶模型】 1. Nomoto 船舶模型简介2. 来源及发展历程3. 构建 一阶模型Nomoto 船舶模型3.1 C 实现3.2 Python 实现3.3 说明 5. 参数辨识方法5.1 基于最小二乘法的参数辨识5.2 数学推导5.3 Python 实现5.4 说明 4. 结论参考文献 1. Nomoto 船舶模型简介 Nomoto 模型是…

差分进化算法 (Differential Evolution) 算法详解及案例分析

差分进化算法 (Differential Evolution) 算法详解及案例分析 目录 差分进化算法 (Differential Evolution) 算法详解及案例分析1. 引言2. 差分进化算法 (DE) 算法原理2.1 基本概念2.2 算法步骤3. 差分进化算法的优势与局限性3.1 优势3.2 局限性4. 案例分析4.1 案例1: 单目标优化…

深入理解GPT底层原理--从n-gram到RNN到LSTM/GRU到Transformer/GPT的进化

从简单的RNN到复杂的LSTM/GRU,再到引入注意力机制,研究者们一直在努力解决序列建模的核心问题。每一步的进展都为下一步的突破奠定了基础,最终孕育出了革命性的Transformer架构和GPT大模型。 1. 从n-gram到循环神经网络(RNN)的诞生 1.1 N-gram 模型 在深度学习兴起之前,处理…

【JWT】jwt实现HS、RS、ES、ED签名与验签

JWT 实现 HS、RS、ES 和 ED 签名与验签 签名方式算法密钥类型签名要点验签要点HSHMAC-SHA256对称密钥- 使用 crypto/hmac 和对称密钥生成 HMAC 签名- 将 header.payload 作为数据输入- 使用同一密钥重新计算 HMAC 签名- 比较计算结果与接收到的签名是否一致RSRSA-SHA256公钥 …

地址栏信息location

获取信息 页面跳转 location.href当前地址栏信息 location.assign()设置跳转新的页面 location.replace() location.reload()刷新页面

程序员转型测试:解锁漏洞挖掘新旅程

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 程序…

StarRocks常用命令

目录 1、StarRocks 集群管理&配置命令 2、StarRocks 常用操作命令 3、StarRocks 数据导入和导出 1、StarRocks 集群管理&配置命令 查询 FE 节点信息 SHOW frontends; SHOW PROC /frontends; mysql -h192.168.1.250 -P9030 -uroot -p -e "SHOW PROC /dbs;"…

08-ArcGIS For JavaScript-通过Mesh绘制几何体(Cylinder,Circle,Box,Pyramid)

目录 概述代码实现1、Mesh.createBox2、createPyramid3、Mesh.createSphere4、Mesh.createCylinder 完整代码 概述 对于三维场景而言&#xff0c;二位的点、线、面&#xff0c;三维的圆、立方体、圆柱等都是比较常见的三维对象&#xff0c;在ArcGIS For JavaScript中我们知道点…

Linux中page、buffer_head、bio的关系

在Linux中&#xff0c;page、buffer_head、bio这三个概念紧密相关&#xff0c;共同构成了块设备I/O和内存管理的重要部分&#xff0c;它们的联系主要体现在以下方面&#xff1a; page与buffer_head 基于page构建&#xff1a;buffer_head通常是基于page来构建的&#xff0c;一…

直线拟合例子 ,岭回归拟合直线

目录 直线拟合,算出离群点 岭回归拟合直线&#xff1a; 直线拟合,算出离群点 import cv2 import numpy as np# 输入的点 points np.array([[51, 149],[122, 374],[225, 376],[340, 382],[463, 391],[535, 298],[596, 400],[689, 406],[821, 407] ], dtypenp.float32)# 使用…

SpringCloud两种注册中心

SpringCloud 基本概念 系统架构 我们之前做的所有的项目都属于单体架构&#xff0c;下面我们将要学习更适合大型项目的分布式架构 单体架构&#xff1a; 将业务的所有功能几种在一个项目中开发&#xff0c;打成一个包部署。 优点&#xff1a;架构简单、部署成本低 缺点&am…

SpringAI 搭建智能体(二):搭建客服系统智能体

在现代人工智能应用中&#xff0c;智能体&#xff08;Agent&#xff09; 是一个重要的概念&#xff0c;它的核心能力是自主性与灵活性。一个智能体不仅能够理解用户的需求&#xff0c;还能拆解任务、调用工具完成具体操作&#xff0c;并在复杂场景中高效运行。在本篇博客中&…

SVN客户端使用手册

目录 一、简介 二、SVN的安装与卸载 1. 安装&#xff08;公司内部一般会提供安装包和汉化包&#xff0c;直接到公司内部网盘下载即可&#xff0c;如果找不到可以看下面的教程&#xff09; 2. 查看SVN版本 ​编辑 3. SVN卸载 三、SVN的基本操作 1. 检出 2. 清除认证数据 3. 提交…

HTML 文本格式化详解

在网页开发中&#xff0c;文本内容的呈现方式直接影响用户的阅读体验。HTML 提供了多种文本格式化元素&#xff0c;可以帮助我们更好地控制文本的显示效果。本文将详细介绍 HTML 中的文本格式化元素及其使用方法&#xff0c;帮助你轻松实现网页文本的美化。 什么是 HTML 文本格…

衡量算法性能的量级标准:算法复杂度

今天开始数据结构的学习&#xff01;作为一大重点&#xff0c;拿出态度很重要&#xff0c;想要真实掌握&#xff0c;博客笔记自然少不了&#xff01;重点全部上色&#xff01;避免疏忽 下面我们从0基础开始学习今天的第一节&#xff01;不用担心看不懂&#xff0c;拒绝枯燥的理…

Spring Boot Starter介绍

前言 大概10来年以前&#xff0c;当时springboot刚刚出现并没有流行&#xff0c;当时的Java开发者们开发Web应用主要是使用spring整合springmvc或者struts、iBatis、hibernate等开发框架来进行开发。项目里一般有许多xml文件配置&#xff0c;其中配置了很多项目中需要用到的Be…

Java面试题2025-Spring

讲师&#xff1a;邓澎波 Spring面试专题 1.Spring应该很熟悉吧&#xff1f;来介绍下你的Spring的理解 1.1 Spring的发展历程 先介绍Spring是怎么来的&#xff0c;发展中有哪些核心的节点&#xff0c;当前的最新版本是什么等 通过上图可以比较清晰的看到Spring的各个时间版本对…

Linux 切换到 Root 用户的方式及差异详解

在 Linux 系统中&#xff0c;切换到 root 用户进行管理和操作是常见需求。不同的切换方法会影响环境变量、工作目录以及加载的配置文件。本文将介绍几种常用的切换方式及它们的特点。 切换到 Root 用户的主要方式 1. sudo su 这是通过 sudo 提权后调用 su 切换到 root 用户的…