多元高斯分布(The Multivariate normal distribution)


在數據建模時,經常會用到多元高斯分布模型,下面就這個模型的公式並結合它的幾何意義,來做一個直觀上的講解。

1, 標准高斯函數

高斯函數標准型:

$f(x) = \frac{1}{\sqrt{2π}}e^{-\frac{x^2}{2}}$

這個函數描述了變量 x 的一種分布特性,變量x的分布有如下特點:

Ⅰ, 均值 = 0

Ⅱ, 方差為1

Ⅲ, 概率密度和為1

2, 一元高斯函數一般形式

一元高斯函數一般形式:

$f(x) = \frac{1}{\sqrt{2π}σ}e^{-\frac{(x-μ)^2}{2σ^{2}}}$

我們可以令:

$z = \frac{x - μ}{σ}$

稱這個過程為標准化, 不難理解,$z ∼ N(0, 1)$,從z -> x的過程如下:

Ⅰ, 將 x 向右移動 μ 個單位

Ⅱ, 將密度函數伸展 σ 倍

而標准化(x -> z)所做的事情就是上述步驟的逆向

唯一不太好理解的是前面 $\frac{1}{\sqrt{2π}σ}$ 中的σ, 為什么這里多了一個 σ, 不是 2σ 或其他?

當然,這里可以拿着概率密度函數的性質,使用微積分進行積分,為了保證最終的積分等於1, 這里必須是 σ

這里我想說一下自己的直觀感受:

實線代表的函數是標准高斯函數:

$f(x) = \frac{1}{\sqrt{2π}}e^{-\frac{x^2}{2×2^{2}}}$

虛線代表的是標准高斯函數在 x 軸方向2倍延展,效果如下:

A(x = 1) -> D(x = 2)

E(x = 1.5) -> F(x = 3)

G(x = 2) -> H(x = 4)

橫向拓寬了,縱向還是保持不變,可以想象,最后的函數積分肯定不等於1

采用極限的思想,將 x 軸切分成無窮個細小的片段,每個片段可以與函數圍城一個區域,因為我的切分足夠小,這個區域的面積可以近似采用公式:面積 = 底 × 高 求得:

從 AQRS -> DTUV, 底乘以2倍,高維持不變,所以,要保持變化前后面積不變,函數的高度應該變為原來的 1/2

所以高斯函數在 x 軸方向做2倍延展的同時,縱向應該壓縮為原來的一半,才能重新形成新的高斯分布函數

擴展到一般情形,x 軸方向做 σ 倍延拓的同時, y 軸應該壓縮 σ 倍(乘以 1/σ)

3, 獨立多元正態分布

先假設n個變量 $x = \left[ \begin{matrix} x_{1}, x_{2},\cdots,x_{n}\end{matrix}\right]^\mathrm{T}$ 互不相關,且服從正態分布(維度不相關多元正態分布),各個維度的均值$E(x) = \left[ \begin{matrix} μ_{1}, μ_{2},\cdots,μ_{n}\end{matrix}\right]^\mathrm{T}$, 方差 $σ(x) = \left[ \begin{matrix} σ_{1}, σ_{2},\cdots,σ_{n}\end{matrix}\right]^\mathrm{T}$

根據聯合概率密度公式:

$f(x) = p(x_{1},x_{2}....x_{n}) = p(x_{1})p(x_{2})....p(x_{n}) = \frac{1}{(\sqrt{2π})^nσ_{1}σ_{2}\cdotsσ_{n}}e^{-\frac{(x_{1}-μ_{1})^2}{2σ_{1}^2}-\frac{(x_{2}-μ_{2})^2}{2σ_{2}^2}\cdots-\frac{(x_{n}-μ_{n})^2}{2σ_{n}^2}}$

令 $z^{2} = \frac{(x_{1}-μ_{1})^2}{σ_{1}^2}+\frac{(x_{2}-μ_{2})^2}{σ_{2}^2}\cdots+\frac{(x_{n}-μ_{n})^2}{σ_{n}^2}$, $σ_{z}= σ_{1}σ_{2}\cdotsσ_{n}$

這樣多元正態分布又可以寫成一元那種漂亮的形式了(注意一元與多元的差別):

$f(z) = \frac{1}{(\sqrt{2π})^nσ_{z}}e^{-\frac{z^2}{2}}$

因為多元正態分布有着很強的幾何思想,單純從代數的角度看待z很難看出z的概率分布規律,這里需要轉換成矩陣形式:

$z^2 = z^\mathrm{T}z = \left[ \begin{matrix} x_{1} - μ_{1}, x_{2} - μ_{2}, \cdots,x_{n} - μ_{n}\end{matrix}\right] \left[ \begin{matrix} \frac{1}{σ_{1}^2}&0&\cdots&0\\
0&\frac{1}{σ_{2}^2}&\cdots&0\\
\vdots&\cdots&\cdots&\vdots\\
0&0&\cdots&\frac{1}{σ_{n}^2}
\end{matrix}\right]\left[ \begin{matrix} x_{1} - μ_{1}, x_{2} - μ_{2}, \cdots,x_{n} - μ_{n}\end{matrix}\right]^\mathrm{T}$

等式比較長,讓我們要做一下變量替換:

$x - μ_{x} = \left[ \begin{matrix} x_{1} - μ_{1}, x_{2} - μ_{2}, \cdots,x_{n} - μ_{n}\end{matrix}\right]^\mathrm{T}$

定義一個符號

$∑_{}^{} = \left[ \begin{matrix} σ_{1}^2&0&\cdots&0\\
0&σ_{2}^2&\cdots&0\\
\vdots&\cdots&\cdots&\vdots\\
0&0&\cdots&σ_{n}^2
\end{matrix}\right]$

$∑_{}^{}$代表變量 X 的協方差矩陣, i行j列的元素值表示$x_{i}$與$x_{j}$的協方差

因為現在變量之間是相互獨立的,所以只有對角線上 (i = j)存在元素,其他地方都等於0,且$x_{i}$與它本身的協方差就等於方差

$∑_{}^{}$是一個對角陣,根據對角矩陣的性質,它的逆矩陣:

$( (∑_{}^{})^{-1} = \left[ \begin{matrix} \frac{1}{σ_{1}^2}&0&\cdots&0\\
0&\frac{1}{σ_{2}^2}&\cdots&0\\
\vdots&\cdots&\cdots&\vdots\\
0&0&\cdots&\frac{1}{σ_{n}^2}
\end{matrix}\right]$

對角矩陣的行列式 = 對角元素的乘積

$σ_{z}= \left|∑_{}^{}\right|^\frac{1}{2} =σ_{1}σ_{2}.....σ_{n}$

替換變量之后,等式可以簡化為:

$z^\mathrm{T}z = (x - μ_{x})^\mathrm{T}  \sum_{}{}^{-1} (x - μ_{x})$

代入以z為自變量的標准高斯分布函數中:

$f(z) = \frac{1}{(\sqrt{2π})^nσ_{z}}e^{-\frac{z^2}{2}} = \frac{1}{(\sqrt{2π})^{n}\left|∑_{}^{}\right|^\frac{1}{2}}e^{-\frac{ (x\  -\  μ_{x})^\mathrm{T}\  (\sum_{}{})^{-1}\  (x\  -\  μ_{x})}{2}}$ 

注意前面的系數變化:從非標准正態分布->標准正態分布需要將概率密度函數的高度壓縮 $|∑_{}^{}|^\frac{1}{2}$倍, 從一維 -> n維的過程中,每增加一維,高度將壓縮 $\sqrt{2π}$倍

維度不相關正太分布函數圖像類似這樣(以二元分布函數為例):

4, 相關多元正態分布

前面也說了,我們討論多元正態分布的前提是多元變量之間是相互獨立的,實際上,有很多應用場合,變量與變量之間是有關聯的。以二元正態分布為例:

                  

向輸入平面作投影后的平面圖:

以現在的坐標系來看,X1,X2是相關的,但是如果我們換一個角度,它們就是互不相關的了:

上述過程被稱為去相關性,更專業一點叫做歸化

假設新坐標系 $x_{1}' = \left[\begin{matrix}u_{x1}^{0}, u_{x1}^{1}\end{matrix}\right]^T$, $x_{2}' = \left[\begin{matrix}u_{x2}^{0}, u_{x2}^{1}\end{matrix}\right]^T$那么原坐標系上的任意一點 $[x_{1}, x_{2}]^T$ 投影到新坐標系上的結果為:

$\left[\begin{matrix}x_{1}'\\
x_{2}'\end{matrix}\right] = \left[ \begin{matrix} u_{x1}^{0}, u_{x1}^{1}\\
u_{x2}^{0}, u_{x2}^{1} \end{matrix} \right]\left[ \begin{matrix} x_{1}\\
x_{2} \end{matrix} \right]$

為了簡單起見,定義矩陣:

$U = \left[ \begin{matrix} u_{x1}^{0}, u_{x2}^{0}\\
u_{x1}^{1}, u_{x2}^{1} \end{matrix} \right]$

U的列空間由新坐標向量組成,坐標映射之后:

$X’ = U^{T}X$

現在我們的自變量X’是相互獨立的了,滿足維度不相關高斯分布模型,現在我們想套用公式:

$f(z) = \frac{1}{(\sqrt{2π})^nσ_{z}}e^{-\frac{z^2}{2}} = \frac{1}{(\sqrt{2π})^{n}\left|∑_{}^{}\right|^\frac{1}{2}}e^{-\frac{ (x\  -\  μ_{x})^\mathrm{T}\  (\sum_{}{})^{-1}\  (x\  -\  μ_{x})}{2}}$ 

$x->x'$, 這個很容易,$μ_{x} -> μ(x')$這個也不難, 但是這里還有一個 $∑_{}^{}$是未知的! 按照定義,這里的$∑_{}^{}$應該是X’的協方差,我們已知X,已知映射矩陣,如何求解X’的協方差?

從定義出發:

$μ_{x'} = E[U^TX] = U^TE[x] = U^Tμ_{x}$ $\tag{$1$}$

映射之后的協方差:

$\begin{align*}
σ(X') &= E[(X' - μ_{X'})(X' - μ_{X'})^T]\\
&=E[ (X' - μ_{X'}) (X'^T - μ_{X'}^T) ]\\
&=E[X'X'^T - μ_{X'}X'^T - X'μ_{X'}^T + μ_{X'}μ_{X'}^T]\\
&=E[U^TXX^TU-E[U^TX]X^TU - U^TXE[U^TX]^T + E[U^TX]E[U^TX]^T]\\
&=U^TE[XX^T - E(X)X^T - XE[X]^T + E[X]E[X]^T]U\\
&=U^Tσ(X)U\\
\end{align*}$

坐標映射前后的協方差矩陣滿足關系:

$(\sum_{}^{})_{x'} = U^{T}(\sum_{}^{})_{x}U$ $\tag{$2$}$

再進一步觀察,U的列向量是單位向量,而且是相互正交的,U是正交矩陣,$U^T = U^{-1}$

$(\sum_{}^{})_{x'} = U^{-1}(\sum_{}^{})_{x}U$ 

也就是說$(\sum_{}^{})_{x'}$ 是 $(\sum_{}^{})_{x}$的相似矩陣,相似矩陣的行列式相等

$|(\sum_{}^{})_{x'}| = |(\sum_{}^{})_{x}|$  $\tag{$3$}$

並且還有一個重要結論:

$(\sum_{}^{})_{x'}^{-1} = (U^T(\sum_{}^{})_{x}U)^{-1} =  (U^{-1}(\sum_{}^{})_{x}U)^{-1}=U^{-1}(\sum_{}^{})_{x}^{-1}U = U^{T}(\sum_{}^{})_{x}^{-1}U$ $\tag{$4$}$

有了上述1、2、3、4四個結論,我們就可以放心套用標准化公式了:

$\begin{align*}
f(z) &= \frac{1}{(\sqrt{2π})^nσ_{z}}e^{-\frac{z^2}{2}} \\
&= \frac{1}{(\sqrt{2π})^{n}\left|(∑_{}^{})'_{x}\right|^\frac{1}{2}}e^{-\frac{ (x'\ -\ μ_{x'})^\mathrm{T}\ (\sum_{}{})_{x'}^{-1}\ (x'\ -\ μ_{x'})}{2}}\\
&=\frac{1}{(\sqrt{2π})^{n}\left|(∑_{}^{})_{x}\right|^\frac{1}{2}}e^{-\frac{ (U^Tx\ -\ U^Tμ_{x})^\mathrm{T}\ U^T (\sum_{}{})_{x}^{-1}\ U (U^Tx\ -\ U^Tμ_{x})}{2}}\\
&=\frac{1}{(\sqrt{2π})^{n}\left|(∑_{}^{})_{x}\right|^\frac{1}{2}}e^{-\frac{ (x\ -\ μ_{x})^\mathrm{T}\ (\sum_{}{})_{x}^{-1}\ (x\ -\ μ_{x})}{2}}
\end{align*}$

 總結一下我們做了什么。

Ⅰ, 我們先定義了新的坐標系,通過矩陣 $U^{T}$ 將元素映射到新的坐標系,目的是去相關性

Ⅱ, 在新的坐標下,我們定義了新的期望、協方差、協方差的逆,他們都可以通過 $U$ 與 $U^T$計算出來,當然我們不用計算

Ⅲ,   套用標准公式,將新的期望、協方差的逆、協方差的行列式代入,發現最后的結果與$U$、$U^T$無關

為什么會這樣?我的理解是這樣:

前提條件:概率模型已經構建

假設空白平面上有一點A, 這個點A是客觀存在的,一旦A指定了,那么它的概率大小P(A)就已經確定了

現在我們添加了一個坐標系,添加坐標系的好處只是使得P(A)可以被量化 $P(A) = f(u1, u2)$

同理,使用其他坐標系,可以得到其他坐標系下的另外一種量化 $P(A) = f(v1, v2)$

不管使用哪個坐標系,A點的概率始終是不變的,所以$f(u1, u2) = f(v1, v2)$(感覺這有點像哲學問題哈)。

5, 實例分析

$\sum_{}^{} = \left[ \begin{matrix} 1&0.8\\
0.8&1
\end{matrix} \right]$                     

這個圖形與參數是如何對應的?

      

可以把那條假象的坐標軸線畫出來,轉換前后,坐標原點不變,很明顯,這是一個旋轉變換,假設坐標軸旋轉的角度為θ,新的坐標向量矩陣將變為:

$U = \left[ \begin{matrix} cosθ&-sinθ\\
sinθ&cosθ
\end{matrix}\right]$

U的列空間組成了新坐標的坐標系

$U^T = \left[ \begin{matrix} cosθ&sinθ\\
-sinθ&cosθ
\end{matrix}\right]$

新坐標系下變量是不相關的,協方差矩陣為對角陣:

$(\sum_{}^{})_{new} = U^T \sum{} U = \left[ \begin{matrix} cosθ&sinθ\\
-sinθ&cosθ
\end{matrix}\right] \left[ \begin{matrix}
1&0.8\\
0.8&1
\end{matrix} \right] \left[ \begin{matrix} cosθ&-sinθ\\
sinθ&cosθ
\end{matrix}\right] = \left[ \begin{matrix} σ_{1}^2&0\\
0&σ_{2}^2
\end{matrix} \right]$

計算可得: $θ = \frac{π}{4}$ 

代入計算新的協方差為:

$(\sum_{}^{})_{new} = \left[ \begin{matrix} 1.8&0\\
0&0.2 \end{matrix} \right]$

得出的結論: 新的坐標系是原坐標系經過 $θ = \frac{π}{4}$旋轉而來,在新的坐標系下,輸入元素將會變得不相關,$x_{1}$方向的方差為1.8,分布比較寬, $x_{2}$方向的方差為0.2,分布比較窄,整體表現為扁平。

同理,不難得出:

               $\sum_{}^{} = \left[ \begin{matrix} 1&-0.5\\
-0.5&1
\end{matrix} \right]\qquad\qquad\qquad\qquad\sum_{}^{} = \left[ \begin{matrix} 1&-0.8\\
-0.8&1
\end{matrix} \right]\qquad\qquad\qquad\qquad\sum_{}^{} = \left[ \begin{matrix} 3&0.8\\
0.8&1
\end{matrix} \right]$                                                                           

 --------------------------------------------------------------------------------------------------------------------------------------------------------------------------

                                                                                                                                                                                路漫漫其修遠兮,吾將上下而求索

                 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM