机器学习-线性回归(对于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 模型是…

深入理解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; 目录 程序…

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

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

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

目录 直线拟合,算出离群点 岭回归拟合直线&#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)# 使用…

SVN客户端使用手册

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

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

今天开始数据结构的学习&#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的各个时间版本对…

浅谈Redis

2007 年&#xff0c;一位程序员和朋友一起创建了一个网站。为了解决这个网站的负载问题&#xff0c;他自己定制了一个数据库。于2009 年开发&#xff0c;称之为Redis。这位意大利程序员是萨尔瓦托勒桑菲利波(Salvatore Sanfilippo)&#xff0c;他被称为Redis之父&#xff0c;更…

element tbas增加下拉框

使用Tabs 标签页的label插槽&#xff0c;嵌入Dropdown 下拉菜单&#xff0c;实现Tabs 标签页增加下拉切换功能 Tabs 标签页 tab-click"事件"&#xff08;这个事件当中到拥有下拉框的tab里时&#xff0c;可以存一下Dropdown 第一个菜单的id&#xff0c;实现点击到拥有…

SQL-leetcode—1179. 重新格式化部门表

1179. 重新格式化部门表 表 Department&#xff1a; ---------------------- | Column Name | Type | ---------------------- | id | int | | revenue | int | | month | varchar | ---------------------- 在 SQL 中&#xff0c;(id, month) 是表的联合主键。 这个表格有关…

【Address Overfitting】解决过拟合的三种方法

目录 1. 收集更多数据实践方法&#xff1a;适用场景&#xff1a;优缺点&#xff1a; 2. 特征选择方法介绍&#xff1a;实践示例&#xff1a;适用场景&#xff1a;优缺点&#xff1a; 3. 正则化&#xff08;Regularization&#xff09;正则化类型&#xff1a;实践示例&#xff1…

面向通感一体化的非均匀感知信号设计

文章目录 1 非均匀信号设计的背景分析1.1 基于OFDM波形的感知信号1.2 非均匀信号设计的必要性和可行性1.2 非均匀信号设计的必要性和可行性 3 通感一体化系统中的非均匀信号设计方法3.1 非均匀信号的设计流程&#xff08;1&#xff09;均匀感知信号设计&#xff08;2&#xff0…

【深度学习】搭建PyTorch神经网络进行气温预测

第一步 数据加载与观察 ①导包 import numpy as np import pandas as pd import matplotlib.pyplot as plt import torch import torch.optim as optim import warnings warnings.filterwarnings("ignore") %matplotlib inline ②加载数据 features pd.read_csv(…

ESP8266 NodeMCU与WS2812灯带:实现多种花样变换

在现代电子创意项目中&#xff0c;LED灯带的应用已经变得极为广泛。通过结合ESP8266 NodeMCU的强大处理能力和FastLED库的高效功能&#xff0c;我们可以轻松实现多达100种灯带变换效果。本文将详细介绍如何使用Arduino IDE编程&#xff0c;实现从基础到高级的灯光效果&#xff…