zoukankan      html  css  js  c++  java
  • 多元高斯分布(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[ egin{matrix} x_{1}, x_{2},cdots,x_{n}end{matrix} ight]^mathrm{T}$ 互不相关,且服从正态分布(维度不相关多元正态分布),各个维度的均值$E(x) = left[ egin{matrix} μ_{1}, μ_{2},cdots,μ_{n}end{matrix} ight]^mathrm{T}$, 方差 $σ(x) = left[ egin{matrix} σ_{1}, σ_{2},cdots,σ_{n}end{matrix} ight]^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[ egin{matrix} x_{1} - μ_{1}, x_{2} - μ_{2}, cdots,x_{n} - μ_{n}end{matrix} ight] left[ egin{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} ight]left[ egin{matrix} x_{1} - μ_{1}, x_{2} - μ_{2}, cdots,x_{n} - μ_{n}end{matrix} ight]^mathrm{T}$

    等式比较长,让我们要做一下变量替换:

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

    定义一个符号

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

    $∑_{}^{}$代表变量 X 的协方差矩阵, i行j列的元素值表示$x_{i}$与$x_{j}$的协方差

    因为现在变量之间是相互独立的,所以只有对角线上 (i = j)存在元素,其他地方都等于0,且$x_{i}$与它本身的协方差就等于方差

    $∑_{}^{}$是一个对角阵,根据对角矩阵的性质,它的逆矩阵:

    $( (∑_{}^{})^{-1} = left[ egin{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} ight]$

    对角矩阵的行列式 = 对角元素的乘积

    $σ_{z}= left|∑_{}^{} ight|^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|∑_{}^{} ight|^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[egin{matrix}u_{x1}^{0}, u_{x1}^{1}end{matrix} ight]^T$, $x_{2}' = left[egin{matrix}u_{x2}^{0}, u_{x2}^{1}end{matrix} ight]^T$那么原坐标系上的任意一点 $[x_{1}, x_{2}]^T$ 投影到新坐标系上的结果为:

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

    为了简单起见,定义矩阵:

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

    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|∑_{}^{} ight|^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}$ $ ag{$1$}$

    映射之后的协方差:

    $egin{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$ $ ag{$2$}$

    再进一步观察,U的列向量是单位向量,而且是相互正交的,U是正交矩阵,$U^T = U^{-1}$

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

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

    $|(sum_{}^{})_{x'}| = |(sum_{}^{})_{x}|$  $ ag{$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$ $ ag{$4$}$

    有了上述1、2、3、4四个结论,我们就可以放心套用标准化公式了:

    $egin{align*}
    f(z) &= frac{1}{(sqrt{2π})^nσ_{z}}e^{-frac{z^2}{2}} \
    &= frac{1}{(sqrt{2π})^{n}left|(∑_{}^{})'_{x} ight|^frac{1}{2}}e^{-frac{ (x' - μ_{x'})^mathrm{T} (sum_{}{})_{x'}^{-1} (x' - μ_{x'})}{2}}\
    &=frac{1}{(sqrt{2π})^{n}left|(∑_{}^{})_{x} ight|^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} ight|^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[ egin{matrix} 1&0.8\
    0.8&1
    end{matrix} ight]$                     

    这个图形与参数是如何对应的?

          

    可以把那条假象的坐标轴线画出来,转换前后,坐标原点不变,很明显,这是一个旋转变换,假设坐标轴旋转的角度为θ,新的坐标向量矩阵将变为:

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

    U的列空间组成了新坐标的坐标系

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

    新坐标系下变量是不相关的,协方差矩阵为对角阵:

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

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

    代入计算新的协方差为:

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

    得出的结论: 新的坐标系是原坐标系经过 $θ = frac{π}{4}$旋转而来,在新的坐标系下,输入元素将会变得不相关,$x_{1}$方向的方差为1.8,分布比较宽, $x_{2}$方向的方差为0.2,分布比较窄,整体表现为扁平。

    同理,不难得出:

                   $sum_{}^{} = left[ egin{matrix} 1&-0.5\
    -0.5&1
    end{matrix} ight]qquadqquadqquadqquadsum_{}^{} = left[ egin{matrix} 1&-0.8\
    -0.8&1
    end{matrix} ight]qquadqquadqquadqquadsum_{}^{} = left[ egin{matrix} 3&0.8\
    0.8&1
    end{matrix} ight]$                                                                           

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

                                                                                                                                                                                    路漫漫其修远兮,吾将上下而求索

                     

  • 相关阅读:
    SDN课程阅读作业(2)
    2019 SDN上机第5次作业
    第01组 Alpha事后诸葛亮
    Windows 7 64位安装cURL
    html 空白汉字占位符 
    申请一个免费美国手机号码
    搭建网站需要学习什么(转自知乎)
    Eclipse 项目有红感叹号
    CSS字体大小之em,px,百分比
    题目1013:开门人和关门人
  • 原文地址:https://www.cnblogs.com/bingjianing/p/9117330.html
Copyright © 2011-2022 走看看