3D 高斯为什么是椭球
- [✅ 第 1 步:先从你完全熟悉的东西开始 ------ 圆](#✅ 第 1 步:先从你完全熟悉的东西开始 —— 圆)
- [✅ 第 2 步:圆可以变成椭圆,只要把 x 或 y 缩放一下](#✅ 第 2 步:圆可以变成椭圆,只要把 x 或 y 缩放一下)
- [✅ 第 3 步:用矩阵写一个椭球方程(用你能理解的方式)](#✅ 第 3 步:用矩阵写一个椭球方程(用你能理解的方式))
- [🟡 到这里我们已经知道:](#🟡 到这里我们已经知道:)
- [✅ 第 4 步:非对角矩阵会"旋转"椭球](#✅ 第 4 步:非对角矩阵会“旋转”椭球)
-
- [👉 一个矩阵的本质作用:](#👉 一个矩阵的本质作用:)
-
- [把"单位球"变成某种形状(拉伸 + 旋转)](#把“单位球”变成某种形状(拉伸 + 旋转))
- [✅ 第 5 步:核心直觉(你必须记住的)](#✅ 第 5 步:核心直觉(你必须记住的))
- [❗ 这是关键总结:](#❗ 这是关键总结:)
- [🟣 最容易记住的比喻(超级通俗)](#🟣 最容易记住的比喻(超级通俗))
-
-
- [1. 若协方差相同 = 各个方向一样 → 球](#1. 若协方差相同 = 各个方向一样 → 球)
- [2. 若某方向方差大 = 那个方向拉得更开 → 椭球变长](#2. 若某方向方差大 = 那个方向拉得更开 → 椭球变长)
- [3. 若变量之间有相关性(非对角线)= 椭球会旋转](#3. 若变量之间有相关性(非对角线)= 椭球会旋转)
-
好的,我现在 从线性代数最基础 开始,一步一步、不跳步骤、完全零基础 地解释为什么:
(x-\\mu)\^T \\Sigma\^{-1} (x-\\mu) = \\text{constant}
会是一个 椭球方程。
你不需要任何线性代数背景,我会用图形和直觉帮你理解。
✅ 第 1 步:先从你完全熟悉的东西开始 ------ 圆
二维圆的方程:
x 2 + y 2 = r 2 x^2 + y^2 = r^2 x2+y2=r2
这代表"所有到原点的距离相同的点组成了圆"。
三维球:
x 2 + y 2 + z 2 = r 2 x^2 + y^2 + z^2 = r^2 x2+y2+z2=r2
这是三维球的方程。
也就是说:
平方加起来 = 常数 → 球(圆)
✅ 第 2 步:圆可以变成椭圆,只要把 x 或 y 缩放一下
你肯定见过:
x 2 a 2 + y 2 b 2 = 1 \frac{x^2}{a^2} + \frac{y^2}{b^2} = 1 a2x2+b2y2=1
这是椭圆。
为什么变成椭圆?
因为:
- x 方向被除以 a(所以 x 被缩放)
- y 方向被除以 b(所以 y 被缩放)
结果:
圆被水平或竖直拉伸,就变成椭圆
三维同理:
x 2 a 2 + y 2 b 2 + z 2 c 2 = 1 \frac{x^2}{a^2} + \frac{y^2}{b^2} + \frac{z^2}{c^2} = 1 a2x2+b2y2+c2z2=1
就是一个椭球。
✅ 第 3 步:用矩阵写一个椭球方程(用你能理解的方式)
上面这个三维椭球方程:
x 2 a 2 + y 2 b 2 + z 2 c 2 \frac{x^2}{a^2} + \frac{y^2}{b^2} + \frac{z^2}{c^2} a2x2+b2y2+c2z2
其实可以写成矩阵形式:
( x y z ) ( 1 a 2 0 0 0 1 b 2 0 0 0 1 c 2 ) ( x y z ) \begin{pmatrix} x & y & z \end{pmatrix} \begin{pmatrix} \frac{1}{a^2} & 0 & 0 \\ 0 & \frac{1}{b^2} & 0 \\ 0 & 0 & \frac{1}{c^2} \end{pmatrix} \begin{pmatrix} x \ y \ z \end{pmatrix} (xyz) a21000b21000c21 (x y z)
为什么?
因为乘起来就会变成:
x 2 a 2 + y 2 b 2 + z 2 c 2 \frac{x^2}{a^2} + \frac{y^2}{b^2} + \frac{z^2}{c^2} a2x2+b2y2+c2z2
也就是椭球。
🟡 到这里我们已经知道:
一个对角矩阵可以描述椭球的拉伸方式。
但是 Σ − 1 \Sigma^{-1} Σ−1(协方差矩阵的逆)不是对角矩阵怎么办?
它可能是这样的:
Σ − 1 = ( 4 1 3 1 2 0 3 0 5 ) \Sigma^{-1} = \begin{pmatrix} 4 & 1 & 3 \\ 1 & 2 & 0 \\ 3 & 0 & 5 \end{pmatrix} Σ−1= 413120305
它有斜线上的数字 → 会"旋转"椭球。
别急,我们继续。
✅ 第 4 步:非对角矩阵会"旋转"椭球
你现在知道:
- 对角矩阵 = 只是拉伸(不旋转)
- 有非零 off-diagonal 元素(非对角线)= 旋转 + 拉伸
但是你又问:
我不懂线性代数,为什么它会旋转?
我用最通俗的方式解释:
👉 一个矩阵的本质作用:
把"单位球"变成某种形状(拉伸 + 旋转)
比如:
把一张纸上的圆压一下、拉一下、斜着拽一下
→ 它就变成了一个椭圆。
在三维中:
把一个球沿不同方向:
- 拉长
- 压扁
- 斜着旋转
- 再继续拉长
→ 就变成了椭球。
任何矩阵(只要是对称正定的)都会做类似的事。
而 Σ − 1 \Sigma^{-1} Σ−1 正好就是一个对称正定矩阵,因此它做到的事情就是:
把球通过旋转 + 拉伸变成椭球。
✅ 第 5 步:核心直觉(你必须记住的)
( x − μ ) T A ( x − μ ) = 1 (x-\mu)^T A (x-\mu)=1 (x−μ)TA(x−μ)=1
意思是:
所有被矩阵 A"变形后"的点,保持同样"距离",组成一个曲面。
这个曲面必然是椭球,因为:
- A 会把球变形
- 球的等距面是球
- 球被线性变换(拉伸+旋转)后必然变为椭球
就是这么简单。
❗ 这是关键总结:
球(圆)经过一个线性变换(矩阵 A) → 必然变成椭球。
高斯分布里的等值面满足
( x − μ ) T Σ − 1 ( x − μ ) = c (x-\mu)^T\Sigma^{-1}(x-\mu)=c (x−μ)TΣ−1(x−μ)=c所以就是椭球。
因为 Σ − 1 \Sigma^{-1} Σ−1 就是"把球拉成椭球"的那个变换矩阵。
🟣 最容易记住的比喻(超级通俗)
想象你有一个像橡皮做的球:
1. 若协方差相同 = 各个方向一样 → 球
像吹好的气球,完全对称。
2. 若某方向方差大 = 那个方向拉得更开 → 椭球变长
3. 若变量之间有相关性(非对角线)= 椭球会旋转
就像你拽球的时候不是正着拽,而是"斜着拽"。
最终形状:
→ 一个斜着、拉伸过的球 = 椭球。