[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

-> 越大越病态

相关推荐
Aurora@Hui2 小时前
MIT NANDA:Networked Agents and Decentralized AI
人工智能
小二·2 小时前
Python Web 开发进阶实战:AI 原生应用商店 —— 在 Flask + Vue 中构建模型即服务(MaaS)与智能体分发平台
前端·人工智能·python
Aaron_9452 小时前
AnythingLLM:全栈私有化AI聊天应用平台的深度解析
人工智能
KG_LLM图谱增强大模型2 小时前
多智能体大语言模型框架赋能医学等多领域低资源命名实体识别:知识检索、消歧与反思分析的创新实践
人工智能·语言模型·自然语言处理
SmartBrain2 小时前
RAG、RAGFlow 与 Agentic RAG技术对比分析
人工智能·语言模型
guygg882 小时前
基于BP神经网络的迭代优化实现(MATLAB)
人工智能·神经网络·matlab
LIZHUOLONG12 小时前
AI 系统学习路径
人工智能·学习
laplace01232 小时前
PPO到GRPO自己话总结
人工智能·python·大模型·agent·rag