[AI数学从入门到入土] 线性代数基础

[AI数学从入门到入土] 线性代数基础

个人导航

知乎:https://www.zhihu.com/people/byzh_rc

CSDN:https://blog.csdn.net/qq_54636039

注:本文仅对所述内容做了框架性引导,具体细节可查询其余相关资料or源码

参考文章:各方资料

文章目录

线性组合、线性相关、线性无关

1.线性组合(linear combination)

给一组向量 v 1 , ... , v k v_1,\dots,v_k v1,...,vk,形如
a 1 v 1 + ⋯ + a k v k a_1v_1+\cdots+a_kv_k a1v1+⋯+akvk

叫这组向量的线性组合

2.线性相关(linearly dependent)

若存在不全为 0 的系数 ( a 1 , ... , a k ) (a_1,\dots,a_k) (a1,...,ak),使
a 1 v 1 + ⋯ + a k v k = 0 a_1v_1+\cdots+a_kv_k=0 a1v1+⋯+akvk=0

则这组向量线性相关

-> 直觉:有冗余,某个向量能被其他向量"拼出来"

3.线性无关(linearly independent)

只有当所有系数都为 0 才能凑出 0:
a 1 v 1 + ⋯ + a k v k = 0 ⇒ a 1 = ⋯ = a k = 0 a_1v_1+\cdots+a_kv_k=0 \\ \Rightarrow \\ a_1=\cdots=a_k=0 a1v1+⋯+akvk=0⇒a1=⋯=ak=0

则这组向量线性无关

-> 直觉:每个向量都带来新信息/新方向

秩Rank

对矩阵 X ∈ R m × n X\in\mathbb{R}^{m\times n} X∈Rm×n:

秩的定义(常用等价定义)

r a n k ( X ) = 列向量里线性无关的最大个数 = 列空间的维数 = 非零奇异值的个数 \begin{align} \mathrm{rank}(X) &=\text{列向量里线性无关的最大个数} \\ &=\text{列空间的维数} \\ &=\text{非零奇异值的个数} \end{align} rank(X)=列向量里线性无关的最大个数=列空间的维数=非零奇异值的个数

而且, r a n k ( X ) = r a n k ( X T ) \mathrm{rank}(X)=\mathrm{rank}(X^T) rank(X)=rank(XT)

-> 直觉:数据/特征真正"站得住"的独立方向数

列空间、行空间、零空间

对线性方程 X w = y Xw=y Xw=y 或最小二乘 X w ≈ y Xw\approx y Xw≈y

1.列空间(Column Space)

列空间: C ( X ) = { X w ∣ w ∈ R n } \text{列空间:}\quad \mathcal{C}(X)=\{Xw \mid w\in\mathbb{R}^n\} 列空间:C(X)={Xw∣w∈Rn}

-> 模型 X w Xw Xw 能产生的所有预测向量集合

线性模型能拟合到的 y y y 只能在列空间里

不在列空间就只能"投影拟合"(最小二乘)

2.零空间(Null Space)

零空间: N ( X ) = { w ∣ X w = 0 } \text{零空间:}\quad \mathcal{N}(X)=\{w\mid Xw=0\} 零空间:N(X)={w∣Xw=0}

-> 参数变化沿着零空间方向不会改变预测 X w Xw Xw, 该方向上无论参数 w w w多大都不改变结果

一旦有 σ i = 0 \sigma_i=0 σi=0,就有非零零空间方向,参数沿着它变动不影响输出

3.秩-零度定理

r a n k ( X ) + n u l l i t y ( X ) = n \color{purple}{\mathrm{rank}(X)+\mathrm{nullity}(X)=n} rank(X)+nullity(X)=n

nullity 是零空间维数

-> 参数空间 n n n 维里,一部分方向真的影响输出(rank),剩下的方向不影响输出(nullity)

投影(Projection)

最小二乘:
min ⁡ w ∥ y − X w ∥ 2 \min_w \|y-Xw\|^2 wmin∥y−Xw∥2

其解满足: y ^ = X w ^ \hat y=X\hat w y^=Xw^ 是把 y y y 正交投影 到列空间 C ( X ) \mathcal{C}(X) C(X) 上

正交投影: 误差方向与子空间成 90°

关键性质:残差向量 r = y − y ^ r=y-\hat y r=y−y^ 与列空间 C ( X ) \mathcal{C}(X) C(X) 中的任意向量都正交

( y − y ^ ) ⊥ C ( X ) (y-\hat y) \perp \mathcal{C}(X) (y−y^)⊥C(X)

这就是正规方程 X T ( X w − y ) = 0 X^T(Xw-y)=0 XT(Xw−y)=0 的几何意义

"拟合=投影",泛化差时可能是在投影里把噪声也当成信号

条件数

当特征"几乎相关", X T X X^TX XTX 虽可逆但很病态

常用指标:
κ ( X ) = σ max ⁡ σ min ⁡ \kappa(X)=\frac{\sigma_{\max}}{\sigma_{\min}} κ(X)=σminσmax

( σ \sigma σ 是奇异值)

κ \kappa κ 越大 ⇒ 解对噪声越敏感 ⇒ 系数不稳定

SVD

1.定义

对任意矩阵 X ∈ R m × n X\in\mathbb{R}^{m\times n} X∈Rm×n,都存在分解:
X = U Σ V T X = U\Sigma V^T X=UΣVT

  • 秩 = 非零奇异值个数
  • 零空间由 V V V 里对应零奇异值的列组成

U ∈ R m × m U\in\mathbb{R}^{m\times m} U∈Rm×m:正交矩阵(列向量两两正交、长度 1)

V ∈ R n × n V\in\mathbb{R}^{n\times n} V∈Rn×n:正交矩阵(列向量两两正交、长度 1)

Σ ∈ R m × n \Sigma\in\mathbb{R}^{m\times n} Σ∈Rm×n:对角"矩形"矩阵,主对角线上是非负数
σ 1 ≥ σ 2 ≥ ⋯ ≥ σ r > 0 , σ r + 1 = ⋯ = 0 \sigma_1\ge \sigma_2\ge\cdots\ge \sigma_r>0,\quad \sigma_{r+1}=\cdots=0 σ1≥σ2≥⋯≥σr>0,σr+1=⋯=0

这些 σ i \sigma_i σi 叫奇异值 ,且 r = r a n k ( X ) r=\mathrm{rank}(X) r=rank(X)

2.放大能力

把一个向量 w w w 送进 X X X:
X w = U Σ V T w Xw = U\Sigma V^T w Xw=UΣVTw

按步骤看:

  1. V T V^T VT:把输入空间(参数空间)先旋转到一组特殊坐标系
  2. Σ \Sigma Σ:在这些坐标轴上做按轴缩放 (第 i i i 个轴缩放 σ i \sigma_i σi 倍)
  3. U U U:再把结果在输出空间里旋转到最终方向

SVD 表明:**矩阵 X X X 对不同方向的"放大能力"**有多强------最强方向放大 σ 1 \sigma_1 σ1,最弱方向放大 σ r \sigma_r σr

3. X T X X^TX XTX

由 SVD 推出:
X T X = ( U Σ V T ) T ( U Σ V T ) = V Σ T Σ V T X^TX = (U\Sigma V^T)^T(U\Sigma V^T)=V\Sigma^T\Sigma V^T XTX=(UΣVT)T(UΣVT)=VΣTΣVT

其中 Σ T Σ \Sigma^T\Sigma ΣTΣ 是 n × n n\times n n×n 的对角矩阵,元素是 σ i 2 \sigma_i^2 σi2

所以:

  • X T X X^TX XTX 的特征值就是 σ i 2 \sigma_i^2 σi2
  • 只要有 σ i = 0 \sigma_i=0 σi=0,就有特征值 0 ⇒ \Rightarrow ⇒ X T X X^TX XTX 不可逆
4."严重共线性"= 奇异值很小

当某些 σ i \sigma_i σi 很小但不为 0:

  • Σ + \Sigma^+ Σ+ 里会出现 1 / σ i 1/\sigma_i 1/σi 的大数
  • 噪声会被在这些方向上疯狂放大
  • 参数 w w w 巨大且不稳定

Σ + \Sigma^+ Σ+: 伪逆( Σ \Sigma Σ的非零奇异值取倒数)

条件数:(衡量病态程度)
κ ( X ) = σ 1 σ r \kappa(X)=\frac{\sigma_1}{\sigma_r} κ(X)=σrσ1

-> 越大越病态

相关推荐
INDEMIND3 分钟前
牵手海尔、TCL,INDEMIND家用具身陪伴机器人AI平台加速家庭AI陪伴落地
人工智能·机器人·陪伴机器人
wheelmouse77884 分钟前
AI 时代的 Git 进阶术:如何优雅地让多个 Agent 并行开发
人工智能·git·ai编程
ZPC82107 分钟前
PPO (Proximal Policy Optimization) 算法模块详细拆解
人工智能·pytorch·算法·机器人
仙女修炼史8 分钟前
FCOS: Fully Convolutional One-Stage Object Detection
人工智能·目标检测·目标跟踪
大傻^10 分钟前
Spring AI Alibaba 多模态开发:集成视觉理解与视频分析能力
人工智能·spring·音视频·springai·springaialibaba·混合检索
前端摸鱼匠12 分钟前
面试题3:自注意力机制(Self-Attention)的计算流程是什么?
人工智能·ai·面试·职场和发展
出门吃三碗饭15 分钟前
CARLA: 如何在 CARLA 中回放自动驾驶场景
人工智能·机器学习·自动驾驶
Axis tech17 分钟前
第二届人形机器人半程马拉松即将于4月开赛,对比去年技术进步有哪些?
人工智能·机器人
志栋智能17 分钟前
超自动化巡检,如何成为业务稳定的“压舱石”?
大数据·运维·网络·人工智能·自动化
lifallen19 分钟前
从零推导一个现代 ReAct Agent框架
人工智能·算法·语言模型