机器学习之高斯分布例题

考虑三维正态分布 p ( x ∣ ω ) ∼ N ( μ ∣ Σ ) p({\bf x}\mid\omega)\sim N({\bf \mu}\mid\Sigma) p(xω)N(μΣ),其中 μ = ( 1 2 2 ) {\bf \mu}=\left( \begin{matrix}1\\2\\2\end{matrix} \right) μ=122 Σ = ( 1 0 0 0 5 2 0 2 5 ) \Sigma=\left( \begin{matrix} 1 & 0 & 0 \\ 0 & 5 & 2 \\ 0 & 2 &5 \end{matrix} \right) Σ=100052025

(a) 求点 x 0 = ( 0.5 , 0 , 1 ) T x_0=(0.5,0,1)^T x0=(0.5,0,1)T处的概率密度;

解:根据正态分布密度公式:

N ( μ ∣ Σ ) = 1 ( 2 π ) D / 2 1 ∣ Σ ∣ 1 / 2 e x p { − 1 2 ( x − μ ) T Σ − 1 ( x − μ ) } N({\bf \mu}\mid\Sigma)= \frac {1}{(2\pi)^{D/2}}\frac {1}{|\Sigma|^{1/2}}exp\left \{ \frac{-1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu) \right \} N(μΣ)=(2π)D/21Σ1/21exp{21(xμ)TΣ1(xμ)}

其中,由题目条件可知 x 0 − μ = ( − 0.5 − 2 − 1 ) , ∣ Σ ∣ − 1 = ( 1 0 0 0 5 21 − 2 21 0 − 2 21 5 21 ) , ∣ Σ ∣ = 21 x_0-\mu=\left( \begin{matrix}-0.5\\-2\\-1\end{matrix} \right),|\Sigma|^{-1}=\left( \begin{matrix} 1&0&0 \\ 0&\frac{5}{21}&-\frac{2}{21} \\ 0&-\frac{2}{21}&\frac{5}{21} \end{matrix} \right),|\Sigma|=21 x0μ=0.521,Σ1=10002152120212215,Σ=21

因此,
p ( x 0 ∣ μ ) = 1 ( 2 π ) 3 / 2 1 ∣ Σ ∣ 1 / 2 e x p { − 1 2 ( x 0 − μ ) T Σ − 1 ( x 0 − μ ) } = 1 168 π 3 e x p { − 89 168 } \begin{aligned} p(x_0\mid\mu)&=\frac {1}{(2\pi)^{3/2}}\frac {1}{|\Sigma|^{1/2}}exp\left \{ \frac{-1}{2}(x_0-\mu)^T\Sigma^{-1}(x_0-\mu) \right \} \\ &=\frac{1}{\sqrt{168\pi^3}}exp \left \{ -\frac{89}{168} \right \} \end{aligned} p(x0μ)=(2π)3/21Σ1/21exp{21(x0μ)TΣ1(x0μ)}=168π3 1exp{16889}

(b) 构造白化变换矩阵 A ω ( A ω = Φ Λ − 1 / 2 ) A_\omega(A_\omega=\Phi\Lambda^{-1/2}) Aω(Aω=ΦΛ1/2),计算分别表示本征向量和本征值的矩阵 Φ 和 Λ \Phi和\Lambda ΦΛ;然后,将此分布转换为以原点为中心,协方差矩阵为单位阵的分布,即 p ( x ∣ ω ) ∼ N ( 0 ∣ I ) p({\bf x}\mid\omega)\sim N({\bf 0}\mid I) p(xω)N(0I)

解:设 Σ \Sigma Σ的特征值为 λ i \lambda_i λi,对应的特征向量为 ξ i \xi_i ξi,由矩阵的性质得:

Σ ξ i = λ i ξ i , \Sigma\xi_i=\lambda_i\xi_i, Σξi=λiξi解得 λ = [ λ 1 , λ 2 , λ 3 ] T = [ 1 , 3 , 7 ] T , ξ 1 = [ 1 , 0 , 0 ] T , ξ 2 = [ 0 , 2 2 , − 2 2 ] T , ξ 3 = [ 0 , 2 2 , 2 2 ] T \lambda=[\lambda_1,\lambda_2,\lambda_3]^T=[1,3,7]^T,\xi_1=[1,0,0]^T,\xi_2=[0,\frac{\sqrt{2}}{2},-\frac{\sqrt{2}}{2}]^T,\xi_3=[0,\frac{\sqrt{2}}{2},\frac{\sqrt{2}}{2}]^T λ=[λ1,λ2,λ3]T=[1,3,7]Tξ1=[1,0,0]T,ξ2=[0,22 ,22 ]T,ξ3=[0,22 ,22 ]T

因此对应的本征值矩阵和本征向量为:

Λ = d i a g [ λ 1 , λ 2 , λ 3 ] = ( 1 0 0 0 3 0 0 0 7 ) ; \Lambda=diag[\lambda_1,\lambda_2,\lambda_3]=\left( \begin{matrix} 1 & 0 & 0 \\ 0 & 3 & 0 \\ 0 & 0 & 7 \end{matrix} \right); Λ=diag[λ1,λ2,λ3]=100030007

Φ = [ ξ 1 , ξ 2 , ξ 3 ] = ( 1 0 0 0 − 2 2 2 2 0 2 2 2 2 ) \Phi=[\xi_1,\xi_2,\xi_3]=\left( \begin{matrix} 1 & 0 & 0 \\ 0 & -\frac{\sqrt{2}}{2} & \frac{\sqrt{2}}{2} \\ 0 & \frac{\sqrt{2}}{2} & \frac{\sqrt{2}}{2} \end{matrix} \right) Φ=[ξ1,ξ2,ξ3]=100022 22 022 22

A ω ( A ω = Φ Λ − 1 / 2 ) = ( 1 0 0 0 − 6 6 14 14 0 6 6 14 14 ) A_\omega(A_\omega=\Phi\Lambda^{-1/2})=\left( \begin{matrix} 1 & 0 & 0 \\ 0 & -\frac{\sqrt{6}}{6} & \frac{\sqrt{14}}{14} \\ 0 & \frac{\sqrt{6}}{6} & \frac{\sqrt{14}}{14} \end{matrix} \right) Aω(Aω=ΦΛ1/2)=100066 66 01414 1414

下面推导变换过程:

y = A T x y=A^Tx y=ATx,则 x = ( A T ) − 1 y x=(A^T)^{-1}y x=(AT)1y

( x − μ ) T Σ − 1 ( x − μ ) = ( ( A T ) − 1 y − ( A T ) − 1 μ y ) T Σ − 1 ( ( A T ) − 1 y − ( A T ) − 1 μ y ) = ( y − μ y ) T ( A − 1 ) T Σ − 1 A − 1 ( y − μ y ) = ( y − μ y ) T ( A T Σ A ) − 1 ( y − μ y ) \begin{aligned} & (x-\mu)^T\Sigma^{-1}(x-\mu) \\ = & ((A^T)^{-1}y-(A^T)^{-1}\mu_y)^T\Sigma^{-1}((A^T)^{-1}y-(A^T)^{-1}\mu_y) \\ = & (y-\mu_y)^T (A^{-1})^T \Sigma^{-1} A^{-1} (y-\mu_y)\\ =& (y-\mu_y)^T (A^T \Sigma A)^{-1} (y-\mu_y) \end{aligned} ===(xμ)TΣ1(xμ)((AT)1y(AT)1μy)TΣ1((AT)1y(AT)1μy)(yμy)T(A1)TΣ1A1(yμy)(yμy)T(ATΣA)1(yμy)

其中 μ y = ( A T ) − 1 μ \mu_y=(A^T)^{-1}\mu μy=(AT)1μ

由上式可知 p ( y ∣ ω ) ∼ N ( A T μ ∣ A T Σ A ) p({\bf y}\mid\omega)\sim N({\bf A^T\mu}\mid A^T\Sigma A) p(yω)N(ATμATΣA)

A T Σ A = ( Φ Λ − 1 / 2 ) T Σ Φ Λ − 1 / 2 = Λ − 1 / 2 Φ T Σ Φ Λ = Λ − 1 / 2 Λ Λ − 1 / 2 = I A^T\Sigma A=(\Phi\Lambda^{-1/2})^T \Sigma \Phi\Lambda^{-1/2}=\Lambda^{-1/2} \Phi^T \Sigma\Phi\Lambda =\Lambda^{-1/2}\Lambda\Lambda^{-1/2}=I ATΣA=(ΦΛ1/2)TΣΦΛ1/2=Λ1/2ΦTΣΦΛ=Λ1/2ΛΛ1/2=I

若要变换后的高斯分布 p ( y ∣ ω ) ∼ N ( 0 ∣ I ) p({\bf y}\mid\omega)\sim N({\bf 0}\mid I) p(yω)N(0I),则只需要将y平移 μ \mu μ个单位,因此此变换为:

y = ( A ω ) T ( x − μ ) y=(A_\omega)^T(x-\mu) y=(Aω)T(xμ)

( c ) 将整个同样的变换过程应用于点 x 0 x_0 x0以产生一变换点 x w ; x_w; xw

x w = ( A w ) T ( x 0 − μ ) = [ 1 2 , − 6 6 , 3 14 14 ] T x_w=(A_w)^T(x_0-\mu)=\left[ \frac{1}{2},-\frac{\sqrt{6}}{6} ,\frac{3\sqrt{14}}{14}\right]^T xw=(Aw)T(x0μ)=[21,66 ,14314 ]T

( d ) 通过详细计算说明,证明原分布中从 x 0 x_0 x0到均值 μ \mu μ的mahalanobis距离与变换后的分布中从 x ω x_\omega xω到 0 的mahalanobis距离相等;

因为马氏距离的平方为:$\nabla2=(x-\mu)T \Sigma^{-1}(x-\mu) $

所以分别计算变换前和变换后马氏距离的平方可得:

x 0 → μ , ∇ 2 = ( x 0 − μ ) T Σ − 1 ( x 0 − μ ) = 89 84 x w → 0 , ∇ 2 = x w T x w = 89 84 \begin{aligned} &x_0 \rightarrow \mu , \nabla^2=(x_0-\mu)^T \Sigma^{-1}(x_0-\mu)=\frac{89}{84} \\ & x_w \rightarrow 0,\nabla^2=x_w^Tx_w=\frac{89}{84} \end{aligned} x0μ2=(x0μ)TΣ1(x0μ)=8489xw02=xwTxw=8489

由计算可知,两者的马氏距离相等。

( e ) 概率密度在某个线性变换下是否保持不变?换句话说,对于某线性变换T,是否有 p ( x 0 ∣ N ( μ , Σ ) ) = p ( T t x 0 ∣ N ( T t μ , T t Σ T ) ) p({\bf x_0}\mid N(\mu , \Sigma)) = p(T^tx_0 \mid N(T^t\mu,T^t \Sigma T)) p(x0N(μ,Σ))=p(Ttx0N(Ttμ,TtΣT))?解释原因

通常会变化。以高斯分布为例,分析 p ( x ) p(x) p(x)的表达式,尽管 e e e的指数项上的值在变换前后不变,但 ∣ S ∣ | S | S的值变化了,这将使得 p ( x ) p(x) p(x)的值变化。方差(或协方差矩阵)用于衡量总体与均值的偏离程度。在变换中总体的分布范围会改变,自然会造成方差(或协方差矩阵)的变化。

( f ) 证明:当把一个一般的白化变换 A ω ( A ω = Φ Λ − 1 / 2 ) A_\omega(A_\omega=\Phi\Lambda^{-1/2}) Aω(Aω=ΦΛ1/2)应用于一个高斯分布时可保证最终分布的协方差与单位阵 I I I成比例,检查变换后的矩阵是否仍具有归一化特性;

证明:令原始高斯分布的协方差矩阵为 Σ \Sigma Σ ,变换后高斯分布的协方差矩阵为 Σ ω \Sigma_\omega Σω ,由协方差矩阵的定义

Σ = E [ ( x − μ ) ( x − μ ) T ] \Sigma=E[(x-\mu)(x-\mu)^T] Σ=E[(xμ)(xμ)T]

Σ ω = E [ ( A ω T x − A ω T μ ) ( A ω T x − A ω T μ ) T ] = E [ ( A ω T x − A ω T μ ) ( x T A ω − μ T A ω ) ] = E [ A ω T ( x − μ ) ( x − μ ) T A ω ) ] = A ω T E [ ( x − μ ) ( x − μ ) T ] A ω ) = A ω T Σ A ω \begin{aligned}\Sigma_\omega &=E[(A_\omega^Tx-A_\omega^T\mu)(A_\omega^Tx-A_\omega^T\mu)^T] \\ &=E[(A_\omega^Tx-A_\omega^T\mu)(x^TA_\omega-\mu^TA_\omega)] \\&= E[A_\omega^T(x-\mu)(x-\mu)^TA_\omega)] \\ &=A_\omega^TE[(x-\mu)(x-\mu)^T]A_\omega) \\ &=A_\omega^T\Sigma A_\omega \end{aligned} Σω=E[(AωTxAωTμ)(AωTxAωTμ)T]=E[(AωTxAωTμ)(xTAωμTAω)]=E[AωT(xμ)(xμ)TAω)]=AωTE[(xμ)(xμ)T]Aω)=AωTΣAω

前面的解题中为了方便将 Φ \Phi Φ取为正交的,在一般情况下表示本征向量的矩阵不一定正交,不妨设为 Φ = k Ω \Phi=k\Omega Φ=kΩ,其中 Ω \Omega Ω为正交阵, k k k为常数。由于 Σ \Sigma Σ为对称阵,故有分解 Σ = Ω Λ Ω T \Sigma=\Omega\Lambda\Omega^T Σ=ΩΛΩT,将之代入 Σ ω \Sigma_\omega Σω中有

Σ ω = A ω T Ω Λ Ω T A ω = ( k Ω Λ − 1 2 ) T Ω Λ Ω T ( k Ω Λ − 1 2 ) = k 2 ( Λ − 1 2 ) T Ω T Ω Λ Ω T Ω Λ − 1 2 \Sigma_\omega=A_\omega^T\Omega\Lambda\Omega^TA_\omega=(k\Omega\Lambda^{-\frac{1}{2}})^T\Omega\Lambda\Omega^T(k\Omega\Lambda^{-\frac{1}{2}})=k^2(\Lambda^{-\frac{1}{2}})^T\Omega^T\Omega\Lambda\Omega^T\Omega\Lambda^{-\frac{1}{2}} Σω=AωTΩΛΩTAω=(kΩΛ21)TΩΛΩT(kΩΛ21)=k2(Λ21)TΩTΩΛΩTΩΛ21

由于 Λ \Lambda Λ为对角阵, ( Λ − 1 2 ) T = Λ − 1 2 (\Lambda^{-\frac{1}{2}})^T=\Lambda^{-\frac{1}{2}} (Λ21)T=Λ21,而 Ω T = Ω − 1 \Omega^T=\Omega^{-1} ΩT=Ω1,因此

Σ ω = k 2 ( Λ − 1 2 ) T Ω T Ω Λ Ω T Ω Λ − 1 2 = k 2 Λ − 1 2 Λ Λ − 1 2 = k 2 I \Sigma_\omega=k^2(\Lambda^{-\frac{1}{2}})^T\Omega^T\Omega\Lambda\Omega^T\Omega\Lambda^{-\frac{1}{2}}=k^2\Lambda^{-\frac{1}{2}}\Lambda\Lambda^{-\frac{1}{2}}=k^2I Σω=k2(Λ21)TΩTΩΛΩTΩΛ21=k2Λ21ΛΛ21=k2I

你可能感兴趣的:(机器学习之高斯分布例题)