学习笔记: 线性代数-高维投影的一些应用

简介: 线性代数个人学习笔记

$\ \ \ \ \ $之前提到过,在处理很多实际应用中的线性系统$Ax=b$求解问题的时候,由于采集大量样本导致矩阵$A$的行数大于列数,意味着方差的个数远远大于未知数个数,在这种情况下,由于数据偏差,方程之间就容易出现矛盾,因此真实情况建立的线性系统$Ax=b$大概率是无解的。

$\ \ \ \ \ $但是当我们并不需要一个十分精确的解,而只需一个接近解也足够用于研究的情况下。在线性系统$Ax=b$中,单单对于$Ax$来说,其实$Ax$表示的就是矩阵$A$的列空间,从向量乘法看$Ax$表示成$x$中的未知数与矩阵$A$的列向量相乘再相加的形式$x_1 \cdot \vec v_1+x_2 \cdot \vec v_2+x_3 \cdot \vec v_3 \cdots$,而这个表示形式的就是矩阵$A$的列向量的生成空间。既然$Ax$是矩阵$A$的列空间,继而线性系统$Ax=b$的求解问题可以理解成在$Ax$这个列空间中找到向量$b$,如果向量$b$在矩阵$A$的列空间中的话,那么就肯定会有一个或多个$x$与它相对应。所以在获取一个实际线性问题的近似解的时候,通常是在矩阵$A$的列空间中找到一个离$b$最近的$b'$,转而求解线性系统$Ax=b'$的解来近似$Ax=b$。

在矩阵$A$的列空间中寻找一个离$\vec b$最近的向量$\vec b'$,这个$\vec b'$其实就是$\vec b$在$A$的列空间的投影
根据高中的几何知识可知$\vec b$在$A$的列空间的投影$\vec b'$是$A$的列空间中与向量$\vec b$夹角最小的向量,也即方向上最接近的向量。
三维空间中一个向量b投影到三维空间的子空间上得到b'
求出矩阵$A$的列空间的一组正交基(Gram-Schmidt过程),然后求出$\vec b$分别到这组正交基各个分量的投影(一维投影问题),然后把这些投影分量加和在一起就是$\vec b$在$A$的列空间的投影$\vec b'$

目录
相关文章
|
前端开发 JavaScript Java
从前端到后端:构建全栈应用的技术路线探析
【2月更文挑战第3天】本文通过探讨前端和后端开发的基本概念和技术要点,深入剖析了构建全栈应用的技术路线。从前端的HTML、CSS和JavaScript,到后端的Java、C和数据库,我们将带您逐步了解如何将不同技术组合起来实现高效、稳定的全栈应用。
327 7
|
SQL 关系型数据库 MySQL
Mycat【Mycat部署安装(核心配置及目录结构、安装以及管理命令详解)Mycat高级特性(读写分离概述、搭建读写分离、MySQL双主双从原理)】(三)-全面详解(学习总结---从入门到深化)
Mycat【Mycat部署安装(核心配置及目录结构、安装以及管理命令详解)Mycat高级特性(读写分离概述、搭建读写分离、MySQL双主双从原理)】(三)-全面详解(学习总结---从入门到深化)
1126 0
|
Linux 开发工具 git
CentOS安装git客户端
【8月更文挑战第22天】在 CentOS 上安装 Git 可通过两种方式:一是利用 yum 包管理器,只需在终端依次执行 `sudo yum update` 和 `sudo yum install git` 命令,安装时按提示输入 y 即可;二是从源码安装,适用于有特殊需求的场景。首先安装必要的依赖库,然后下载并解压 Git 的源码包,最后通过一系列 make 命令完成配置与编译安装。无论哪种方式,安装完毕后均可通过 `git --version` 验证安装情况。
545 6
|
10月前
|
调度 iOS开发 MacOS
python多进程一文够了!!!
本文介绍了高效编程中的多任务原理及其在Python中的实现。主要内容包括多任务的概念、单核和多核CPU的多任务实现、并发与并行的区别、多任务的实现方式(多进程、多线程、协程等)。详细讲解了进程的概念、使用方法、全局变量在多个子进程中的共享问题、启动大量子进程的方法、进程间通信(队列、字典、列表共享)、生产者消费者模型的实现,以及一个实际案例——抓取斗图网站的图片。通过这些内容,读者可以深入理解多任务编程的原理和实践技巧。
577 1
|
11月前
|
缓存 前端开发 安全
前端开发者必备:HTTP状态码含义与用途解析,常见错误码产生原因及解决策略
前端开发者必备:HTTP状态码含义与用途解析,常见错误码产生原因及解决策略
1312 0
|
机器学习/深度学习 监控 算法框架/工具
用Python实现简单的图像分类器
用Python实现简单的图像分类器
276 0
|
资源调度 Kubernetes 调度
从 Linux Crontab 到 K8s CronJob,定时任务正在经历怎样的变革
从 Linux Crontab 到 K8s CronJob,定时任务正在经历怎样的变革
119158 59
|
存储 开发框架 缓存
基因组组装:NextDenovo2 使用大全
基因组组装:NextDenovo2 使用大全
|
Python
ERROR: Failed building wheel for osgeo
ERROR: Failed building wheel for osgeo
635 0