线性代数|机器学习-P2 A的列向量空间

文章目录

  • 1. Ax矩阵的形式
  • 2. A=CR 矩阵分解
    • 2.1 rank=1 矩阵分解
    • 2.2 rank=2 矩阵分解
    • 2.3 A=CMR,求M
  • 3. Ax 向量

1. Ax矩阵的形式

假设我们有如下矩阵A:
A x = [ 2 1 3 3 1 4 5 7 12 ] [ x 1 x 2 x 3 ] \begin{equation} Ax=\begin{bmatrix} 2&1&3\\\\ 3&1&4\\\\ 5&7&12 \end{bmatrix}\begin{bmatrix}x_1\\\\x_2\\\\x_3\end{bmatrix} \end{equation} Ax= 2351173412 x1x2x3

  • 从行角度计算如下:
    A x = [ 2 1 3 ] [ x 1 x 2 x 3 ] + [ 3 1 4 ] [ x 1 x 2 x 3 ] + [ 5 7 12 ] [ x 1 x 2 x 3 ] \begin{equation} Ax=\begin{bmatrix} 2&1&3 \end{bmatrix}\begin{bmatrix}x_1\\\\x_2\\\\x_3\end{bmatrix}+\begin{bmatrix} 3&1&4 \end{bmatrix}\begin{bmatrix}x_1\\\\x_2\\\\x_3\end{bmatrix}+\begin{bmatrix} 5&7&12 \end{bmatrix}\begin{bmatrix}x_1\\\\x_2\\\\x_3\end{bmatrix} \end{equation} Ax=[213] x1x2x3 +[314] x1x2x3 +[5712] x1x2x3
    这是我们常规的思路,但是有一个问题,现在是 x 1 , x 2 , x 3 x_1,x_2,x_3 x1,x2,x3三个变量,可以用三维空间想象画图等,但是当我们有 x 1 , x 2 , x 3 , x 4 , x 5 x_1,x_2,x_3,x_4,x_5 x1,x2,x3,x4,x5的时候,我们就无法想到5维度空间,所以我们在矩阵相乘的过程中用到行向量空间的角度思考是低端的思维思路。所以我们提出了列向量的角度
  • 从列角度计算如下:
    A x = x 1 [ 2 3 5 ] + x 2 [ 1 1 7 ] + x 3 [ 3 4 12 ] \begin{equation} Ax=x_1\begin{bmatrix} 2\\\\ 3\\\\ 5 \end{bmatrix}+x_2\begin{bmatrix} 1\\\\ 1\\\\ 7 \end{bmatrix}+x_3\begin{bmatrix} 3\\\\ 4\\\\ 12 \end{bmatrix} \end{equation} Ax=x1 235 +x2 117 +x3 3412
    v 1 = x 1 [ 2 3 5 ] , v 2 = x 2 [ 1 1 7 ] ; v 3 = x 3 [ 3 4 12 ] ; A x = v 1 + v 2 + v 3 \begin{equation} v_1=x_1\begin{bmatrix} 2\\\\ 3\\\\ 5 \end{bmatrix},v_2=x_2\begin{bmatrix} 1\\\\ 1\\\\ 7 \end{bmatrix};v_3=x_3\begin{bmatrix} 3\\\\ 4\\\\ 12 \end{bmatrix};Ax=v_1+v_2+v_3 \end{equation} v1=x1 235 ,v2=x2 117 ;v3=x3 3412 ;Ax=v1+v2+v3

这样可以看出,对于Ax=b来说,矩阵b就是A的列向量的线性组合,这样及时再加几个列向量,我们可以用向量的形式表示,我们处理起来也非常的方便。通过列乘以行的方式是一种更高级的矩阵理解方式。
在这里插入图片描述

  • 小结:
    所以对于矩阵A和向量x相乘得到的结果Ax可以看做是对于矩阵A的列向量的线性组合后得到的向量,那么这个向量也一定在A的列空间中。假设我们x是随机的,那么我们可以得到矩阵A的整个列空间。

2. A=CR 矩阵分解

2.1 rank=1 矩阵分解

假设我们有矩阵A表示如下,我们希望将矩阵分解成为列向量和行向量的组合。
A = [ 1 3 8 1 3 8 1 3 8 ] \begin{equation} A=\begin{bmatrix} 1&3&8\\\\ 1&3&8\\\\ 1&3&8 \end{bmatrix} \end{equation} A= 111333888

  • 将矩阵A的第一列拿出来。 v 1 = [ 1 1 1 ] v_1=\begin{bmatrix}1\\\\1\\\\1\end{bmatrix} v1= 111
  • 将矩阵A的第二列拿出来,发现与第二列,第三列线性相关,所以停止拿出来,说以只有一列
    ,最终得到如下分解矩阵
    A = [ 1 1 1 ] [ 1 3 8 ] \begin{equation} A=\begin{bmatrix} 1\\\\1\\\\1 \end{bmatrix}\begin{bmatrix} 1&3&8 \end{bmatrix} \end{equation} A= 111 [138]

2.2 rank=2 矩阵分解

我们有如下矩阵A,将矩阵A进行分解,得到A=CR:
A = [ 2 1 3 3 1 4 5 7 12 ] \begin{equation} A=\begin{bmatrix} 2&1&3\\\\ 3&1&4\\\\ 5&7&12 \end{bmatrix} \end{equation} A= 2351173412

  • 第一步,我们先取矩阵A的第一列, v 1 = [ 2 , 3 , 5 ] T v_1=[2,3,5]^T v1=[2,3,5]T非零,那么就把 v 1 v_1 v1放到列空间中
  • 第二步,我们再取矩阵A的第二列,发现 v 1 T v 2 ≠ 0 v_1^Tv_2\neq0 v1Tv2=0,那么就把 v 2 v_2 v2放到列空间中
  • 第三步,我们再取矩阵A的第三列,发现 v 1 + v 2 = v 3 v_1+v_2=v_3 v1+v2=v3,那么 v 3 v_3 v3就抛弃,这样就形成了列满秩的矩阵C
    C = [ 2 1 3 1 5 7 ] \begin{equation} C=\begin{bmatrix} 2&1\\\\ 3&1\\\\ 5&7 \end{bmatrix} \end{equation} C= 235117
  • 第四步,我们通过矩阵的大小可得矩阵R为2行3列,那么可以发现,矩阵A的第一列为C的第一列,那么可以得到矩阵C的第一列为 c 1 = [ 1 , 0 ] T c_1=[1, 0]^T c1=[1,0]T
  • 第五步,同理可得矩阵A的第二列为矩阵C的第二列,那么 c 2 = [ 0 , 1 ] T c_2=[0, 1]^T c2=[0,1]T
  • 第六步,我们知道矩阵A的第三列为矩阵C的第一列和第二列之和,那么可得 c 3 = [ 1 , 1 ] T c_3=[1, 1]^T c3=[1,1]T
  • 第七步,综上可得方程A=CR表示如下:
    A = C R ⇒ [ 2 1 3 3 1 4 5 7 12 ] = [ 2 1 3 1 5 7 ] [ 1 0 1 0 1 1 ] \begin{equation} A=CR\Rightarrow\begin{bmatrix} 2&1&3\\\\ 3&1&4\\\\ 5&7&12 \end{bmatrix}=\begin{bmatrix} 2&1\\\\ 3&1\\\\ 5&7 \end{bmatrix}\begin{bmatrix} 1&0&1\\\\ 0&1&1 \end{bmatrix} \end{equation} A=CR 2351173412 = 235117 100111
  • 我们再行分解,可得
    [ 2 1 3 ] = 2 [ 1 0 1 ] + 1 [ 0 1 1 ] \begin{equation} \begin{bmatrix}2&1&3\end{bmatrix}=2\begin{bmatrix}1&0&1\end{bmatrix}+1\begin{bmatrix}0&1&1\end{bmatrix} \end{equation} [213]=2[101]+1[011]
    [ 3 1 4 ] = 3 [ 1 0 1 ] + 1 [ 0 1 1 ] \begin{equation} \begin{bmatrix}3&1&4\end{bmatrix}=3\begin{bmatrix}1&0&1\end{bmatrix}+1\begin{bmatrix}0&1&1\end{bmatrix} \end{equation} [314]=3[101]+1[011]
    [ 5 7 12 ] = 5 [ 1 0 1 ] + 7 [ 0 1 1 ] \begin{equation} \begin{bmatrix}5&7&12\end{bmatrix}=5\begin{bmatrix}1&0&1\end{bmatrix}+7\begin{bmatrix}0&1&1\end{bmatrix} \end{equation} [5712]=5[101]+7[011]
  • 那么可以得到如下:
    [ 2 1 3 3 1 4 ] = [ 2 1 3 1 ] [ 1 0 1 0 1 1 ] ⇒ [ 1 0 1 0 1 1 ] = [ − 1 1 3 − 2 ] [ 2 1 3 3 1 4 ] \begin{equation} \begin{bmatrix} 2&1&3\\\\ 3&1&4 \end{bmatrix}=\begin{bmatrix} 2&1\\\\ 3&1 \end{bmatrix}\begin{bmatrix} 1&0&1\\\\ 0&1&1 \end{bmatrix}\Rightarrow \begin{bmatrix} 1&0&1\\\\ 0&1&1 \end{bmatrix}=\begin{bmatrix} -1&1\\\\ 3&-2 \end{bmatrix}\begin{bmatrix} 2&1&3\\\\ 3&1&4 \end{bmatrix} \end{equation} 231134 = 2311 100111 100111 = 1312 231134
  • 那么A=CR公式可以整理为A=CMR公式
    A = C M R ⇒ [ 2 1 3 3 1 4 5 7 12 ] = [ 2 1 3 1 5 7 ] [ − 1 1 3 − 2 ] [ 2 1 3 3 1 4 ] \begin{equation} A=CMR\Rightarrow\begin{bmatrix} 2&1&3\\\\ 3&1&4\\\\ 5&7&12 \end{bmatrix}=\begin{bmatrix} 2&1\\\\ 3&1\\\\ 5&7 \end{bmatrix}\begin{bmatrix} -1&1\\\\ 3&-2 \end{bmatrix}\begin{bmatrix} 2&1&3\\\\ 3&1&4 \end{bmatrix} \end{equation} A=CMR 2351173412 = 235117 1312 231134
  • 小结: 这样做的好处是C,M,R均是满秩矩阵,这样我们可以对矩阵A进行进一步分解,真是神奇的思路,解决了SVD奇异值分解中 Σ \Sigma Σ矩阵无法满秩的情况,而且CR均是来自原始矩阵A的列向量(列满秩)和行向量(行满秩)。真是太神奇了。

2.3 A=CMR,求M

当我们知道 A=CMR, 那么如何求快速的求得M呢?
A = C M R → C T A R T = ( C T C ) M ( R R T ) → M = ( C T C ) − 1 ( C T A R T ) ( R R T ) − 1 \begin{equation} A=CMR\rightarrow C^TAR^T=(C^TC)M(RR^T)\rightarrow M=(C^TC)^{-1}(C^TAR^T)(RR^T)^{-1} \end{equation} A=CMRCTART=(CTC)M(RRT)M=(CTC)1(CTART)(RRT)1

3. Ax 向量

假设x是一个随机的列向量,如果我们给了100个随机的x,那么我们可以通过Ax来得到一系列的列向量空间,这个列向量空间也会随着x的增多而和A的列空间相似,这个就是随机采样的思路。

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

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

相关文章

开源博客项目Blog .NET Core源码学习(29:App.Hosting项目结构分析-17)

本文学习并分析App.Hosting项目中后台管理页面的按钮管理页面。   按钮管理页面用于显示、新建、编辑、删除页面按钮数据,以便配置后台管理页面中每个页面的工具栏、操作栏、数据列中的按钮的事件及响应url。按钮管理页面附带一新建及编辑页面,以支撑新…

测试:ollama加载羊驼版本llama-3中文大模型

找了一个晚上各种模型,像极了当初找各种操作系统的镜像,雨林木风,深蓝、老毛桃…… 主要是官方的默认7B版本回答好多英文,而且回复的很慢,所以我是在ollama上搜索"chinese"找到了这个羊驼版本的&#xff0c…

前端功能拖拽篇:dragleave拖拽事件穿透子元素的优雅解决方案

文章目录 前情提要应用场景⭐拖拽改变元素位置⭐拖拽改变目标区域的样式⭐dragleave拖拽事件穿透子元素的优雅解决方案 最后 前情提要 在前端工作过程中,避免不了要接触各种技术,拖拽就是其中一个,大部分关于拖拽的基础知识和Demo都在MDN中写…

微服务 feign-gateway

早期微服务跨集群调用 使用的是Eureka 和RestTemplate,这种写法虽然可以解决服务之间的调用问题 ,但是随着服务的增多,实例变动,早期的写法相当于把请求方式,请求地址,参数写死了,耦合度太高,参…

易语言本地IP一键切换程序(附带源码)

易语言本地IP一键切换程序 效果图部分源码源码领取下期更新预报 效果图 部分源码 .判断开始 (单选框1.选中 = 真)标签5.标题 = #换行符 + “正在切换IP.”.如果真 (运行 (“netsh interface ip set address ” + #引号 &#xff…

开发一套家政上门预约服务系统需要运用的关键技术

家政上门预约服务系统开发是指建立一个在线平台或应用程序,用于提供家政服务的预约和管理功能。该系统的目标是让用户能够方便地预约各种家政服务,如保洁、家庭护理、月嫂、家电维修等,并实现服务供应商管理和订单管理等功能。 开发一套家政上…

python-数据可视化(总)

python-数据可视化 ** 数据可视化 指的是通过可视化表示来探索数据,它与数据挖掘**紧密相关,而数据挖掘指的是使用代码来探索数据集的规律和关联。数据集可以是用一行代码就能表示的小型数字列表,也可以是数以吉字节的数据 最流行的工具之一…

uniapp条件编译

先看官网介绍: 语法: 开始语法: // 指定平台解析 #ifdef H5 //指定平台不解析 差别:多了个n #ifndef H5 //多平台支持解析 #ifdef H5 || MP-WEIXIN //多平台不支持解析 #ifndef H5 || MP-WEIXIN 结束语法: …

DBeaver连接Oracle报错:ORA-12514

Listener refused the connection with the following error:ORA-12514, TNS:listener does not currently know of service requested inconnect descriptor ———————————————— 1.报错信息2.配置正确结语 ———————————————— 如果是第一次连接Or…

PS Mac Photoshop 2024 for Mac[破]图像处理软件[解]PS 2024安装教程[版]

Mac分享吧 文章目录 效果一、准备工作二、开始安装1、Anticc简化版安装1.1双击运行软件,安装1.2 解决来源身份不明的开发者问题**此代码为打开:系统偏好设置 – 隐私与安全性,中的【任何来源】,如下图:**1.3 再次运行…

Linux - 文件管理高级 find、grep

0.管道 | 将前面命令的标准输出传递给管道作为后面的标准输入 1.文件查找 find find 进行文件查找时,默认进行递归查找,会查找隐藏目录下的文件 1.1 用法 # find 查找路径 查找条件... -type // 文件类型 f 普通文件 b 设备 d …

10Linux 进程管理学习笔记

Linux 进程管理 目录 文章目录 Linux 进程管理一.进程1.显示当前进程状态(ps)进程树(pstree)1.1实时显示进程信息(top)顶部概览信息:CPU 状态:内存状态:进程信息表头:进程列表:1.2(htop) 2.终止进程(kill)2.1通过名称…

Centos给普通用户添加sudo命令权限

打开sudoers文件 sudo visudo 修改sudoers文件 找到root ALL(ALL) ALL这一行,即如下图标出红线的一行 在此行下新增如下内容: lbs为用给予sudo执行权限的用户名 # 执行sudo命令,需要输入命令 lbs ALL(ALL) ALL 或 # 执行sudo命令,…

迅狐跨境电商系统源码:技术栈与多端集成

随着全球化贸易的不断深入,跨境电商系统源码成为了连接不同国家和地区消费者与商家的重要桥梁。本文将探讨跨境电商系统源码的技术栈以及如何通过多端集成来提升用户体验。 技术栈概览 跨境电商系统源码的技术栈是构建高效、稳定平台的基础。以下是构建跨境电商系…

Android 11 Audio strategy配置解析

在启动AudioPolicyService时,通过EngineBase的loadAudioPolicyEngineConfig函数去解析strategy配置。其调用流程如下 接下来就对loadAudioPolicyEngineConfig展开分析 1,解析volume标签 engineConfig::ParsingResult EngineBase::loadAudioPolicyEngine…

束测后台实操文档2-OpenWrt

束测后台实操文档1-PVE、PBS 上面文,把proxmox装好并添加好PBS上的镜像存储空间后,还原已经做好的镜像基本上就可以在已有的镜像下开展工作了。 调试的PVE环境一般两个网口,一个外网wan,一个子网lan,虚拟机一般在lan…

特征工程技巧——OneHot编码

我们以Kaggle比赛里面的一个数据集跟一个公开代码为例去解释我们的OneHot编码。 简单来说,独热编码是一种将类别型变量转换为二进制表示的方法,其中每个类别被表示为一个向量,向量的长度等于类别的数量,其中只有一个元素为1&…

Leetcode刷题笔记6

34. 在排序数组中查找元素的第一个和最后一个位置 34. 在排序数组中查找元素的第一个和最后一个位置 - 力扣(LeetCode) 解法一:暴力查找 [1, 2, 3, 3, 3, 4, 5] t 3 从前往后扫描暴力查找,最坏情况下O(N) 优化 利用数组有序的…

TCP的重传机制

TCP 是一个可靠的传输协议,解决了IP层的丢包、乱序、重复等问题。这其中,TCP的重传机制起到重要的作用。 序列号和确认号 之前我们在讲解TCP三次握手时,提到过TCP包头结构,其中有序列号和确认号, 而TCP 实现可靠传输…

Artifactory清理二进制文件丢失的制品

一、摘要 当制品上传到 Artifactory 时,Artifactory 会在数据库中记录制品的相关元数据信息,包括文件路径、大小、校验和(如 MD5、SHA1)、上传时间、索引、依赖等。实际的制品二进制文件会存储在指定的存储后端,具体的…