机器学习中常见的概率分布

机器学习中常见的概率分布

  在机器学习中有许多简单的概率分布,掌握这些概率分布有助于思考问题。

1.Bernoulli分布(伯努利分布)

  Bernoulli分布是单个二值随机变量的分布。一个简单的实验只有两个可能的结果,例如抛硬币的正面和反面、做一件事成功或失败,将这两种情况记作0和1,即随机变量只能取值为0和1,并由单个参数 ϕ \phi 给出随机变量等于1的概率。
  Bernoulli分布具有一些性质。
P ( X = 1 ) = ϕ P ( X = 0 ) = 1 ϕ P(X=1) = \phi \\ P(X=0) = 1-\phi
概率质量函数为:
P ( X = x ) = ϕ x ( 1 ϕ ) 1 x P(X=x)=\phi^x(1-\phi)^{1-x}
对于 f ( x ) = x f(x)=x ,期望和方差为:
E x [ f ( x ) ] = 1 ϕ + 0 ( 1 ϕ ) = ϕ V a r x [ f ( x ) ] = E [ ( f ( x ) E [ f ( x ) ] ) 2 ] = ϕ ( 1 ϕ ) E_x[f(x)]=1*\phi+0*(1-\phi)=\phi \\ Var_x[f(x)]=E[(f(x)-E[f(x)])^2]=\phi(1-\phi)

2.Multinoulli分布(多项式分布的一个特例)

  Multinoulli分布也叫范畴分布(categorical distribution),是Bernoulli分布的泛化,如果说Bernoulli分布代表着一个只有两种结果的简单实验,那Multinoulli分布就是可能有 k k 个结果的实验。随机向量 X X 定义为:
X = [ X 1 , X 2 , , X k ] X=[X_1, X_2,\cdots, X_k]
当得到第 i i 个结果时,随机向量 X X 的第 i i 个值即 X i X_i 为1,其他为0。 k k 个可能的结果的概率则用 p 1 , p 2 , , p K p_1, p_2,\cdots,p_K 来表示。
   X X K × 1 K×1 的离散随机向量, R X R_X X X 的支持,其中一个量为1,其他量均为0
R X = { x { 0 , 1 } K : j = 1 K x j = 1 } R_X=\{x\in\{0,1\}^K:\sum_{j=1}^Kx_j=1\}
p 1 , p 2 , , p K p_1, p_2, \cdots, p_K K K 个非负数,并且满足:
j = 1 K p j = 1 \sum_{j=1}^Kp_j=1
这时,如果有如下联合概率质量函数我们就说 X X 有一个Multinoulli分布并且概率为 p 1 , p 2 , , p K p_1,p_2,\cdots,p_K
p X ( x 1 , x 2 , , x K ) = { j = 1 K p j x j i f ( x 1 , x 2 , , x K ) R X 0 o t h e r w i s e p_X(x_1, x_2,\cdots,x_K)= \begin{cases} \prod_{j=1}^Kp_j^{x_j} &if(x_1,x_2,\cdots,x_K)\in R_X \\ 0 &otherwise \end{cases}
( x 1 , x 2 , , x K ) R X (x_1,x_2,\cdots,x_K)\in R_X 并且此时有 x i = 1 x_i=1 ,这说明其他的值都是0,因此就有下面的式子:
j = 1 K p j x j = p 1 x 1 p i x i p K x K = p 1 0 p i 1 p K 0 = 1 p i 1 = p i \prod_{j=1}^Kp_j^{x_j}=p_1^{x_1}*\cdots *p_i^{x_i}*\cdots *p_K^{x_K} \\ =p_1^{0}*\cdots *p_i^{1}*\cdots *p_K^{0} \\=1*\cdots *p_i*\cdots*1 \\=p_i
  Multinoulli分布经常用来表示对象分类的分布,所以我们很少假设状态1具有数值1之类的。因此,我们通常不需要去计算Multinoulli分布的随机变量的期望和方差。

3.高斯分布

  实数上最常用的分布就是正态分布,也称高斯分布。若随机变量X服从一个数学期望为 μ \mu 、方差为 σ 2 \sigma^2 的正态分布,记为 N ( μ σ 2 ) N(\mu,\sigma^2) 。概率密度函数为
N ( x : μ , σ 2 ) = 1 2 π σ 2 e x p ( 1 2 σ 2 ( x μ ) 2 ) N(x:\mu,\sigma^2)=\sqrt{\cfrac{1}{2\pi\sigma^2}}exp(-\cfrac{1}{2\sigma^2}(x-\mu)^2)
其概率密度函数为正态分布的期望值 μ \mu 决定了其位置,其标准差 σ \sigma 决定了分布的幅度。当 μ = 0 , σ = 1 \mu = 0,\sigma = 1 时的正态分布是标准正态分布。
  正态曲线呈钟型,两头低,中间高,左右对称因其曲线呈钟形,因此人们又经常称之为钟形曲线。
  当我们要对概率密度函数求值时,需要对 σ \sigma 平方并取倒数。当我们需要经常对不同参数下的概率密度函数求值时,一种更高效的参数化分布的方式是使用参数 β ( 0 , ) \beta\in(0,\infty) 来控制分布的精度(或方差的倒数):
N ( x : μ , β 1 ) = β 2 π e x p ( 1 2 β ( x μ ) 2 ) N(x:\mu,\beta^{-1})=\sqrt{\cfrac{\beta}{2\pi}}exp(-\cfrac{1}{2}\beta(x-\mu)^2)
  进一步,正态分布可以推广到 R n R_n 空间,这种情况下被称为多维正态分布。它的参数是一个正定对称矩阵 Σ \Sigma
N ( x : μ , Σ ) = 1 ( 2 π ) n d e t ( Σ ) e x p ( 1 2 ( x μ ) T Σ 1 ( x μ ) ) N(x:\mu,\Sigma)=\sqrt{\cfrac{1}{(2\pi)^n det(\Sigma)}}exp(-\cfrac{1}{2}(x-\mu)^T\Sigma^{-1}(x-\mu))
  这式子看起来很复杂的样子,我只是简单了解了一下。参数 μ \mu 仍然表示分布的均值,只不过现在是向量值。参数 Σ \Sigma 给出了分布的协方差矩阵。和单变量的情况类似,当我们希望对很多不同参数下的概率密度函数多次求值时,协方差矩阵并不是一个很高效的参数化分布方式,因为对概率密度函数求值时需要对 Σ \Sigma 求逆。我们可以使用一个精度矩阵 β \beta 进行替代:
N ( x : μ , β 1 ) = d e t ( β ) ( 2 π ) n e x p ( 1 2 ( x μ ) T β ( x μ ) ) N(x:\mu,\beta^{-1})=\sqrt{\cfrac{det(\beta)}{(2\pi)^n}}exp(-\cfrac{1}{2}(x-\mu)^T\beta(x-\mu))
  我们常常把协方差矩阵固定成一个对角阵。一个更简单的版本是各向同性高斯分布,它的协方差矩阵是一个标量乘以单位阵。

4.指数分布和Laplace分布(拉普拉斯分布)

  深度学习中,我们经常会需要一个在 x = 0 x=0 点处取得边界点的分布。为了实现这一目的,我们可以使用指数分布:
p ( x ; λ ) = λ 1 x 0 e x p ( λ x ) p(x;\lambda)=\lambda1_{x\ge0}exp(-\lambda x)
其中用指示函数 1 x 0 1_{x\ge0} 来使得当 x x 取负值时的概率为0。
  一个联系紧密的概率分布是Laplace分布,它允许我们在任意一点 μ \mu 处设置概率质量的峰值:
L a p l a c e ( x ; μ , γ ) = 1 2 γ e x p ( x μ γ ) Laplace(x;\mu, \gamma)=\cfrac{1}{2\gamma}exp(-\cfrac{|x-\mu|}{\gamma})
其中 μ \mu 是位置参数, γ \gamma 是尺度参数,果 μ = 0 \mu = 0 ,那么,正半部分恰好是尺度为 1 γ \cfrac{1}{\gamma} (或者 γ \gamma ,看具体指数分布的尺度参数形式)的指数分布的一半。

5.Dirac分布(狄拉克分布)和经验分布

  在一些情况下,我们希望概率分布中的所有质量都集中在一个点上。这可以通过Dirac delta函数 δ ( x ) \delta(x) 定义概率密度函数来实现:
p ( x ) = δ ( x μ ) p(x)=\delta(x-\mu)
   δ ( x ) \delta(x) 是一个广义函数,在物理学中常用其表示质点、点电荷等理想模型的密度分布,该函数在除了零以外的点取值都等于零,而其在整个定义域上的积分等于1。通过把 p ( x ) p(x) 定义成 δ \delta 函数右移 μ \mu 个单位,我们就得到了一个在 x = μ x=\mu 处具有无限窄也无限高的概率质量。
  Dirac分布经常作为经验分布的一个组成部分出现:
p ^ ( x ) = 1 m i = 1 m δ ( x x ( i ) ) \hat p(x)=\cfrac{1}{m}\sum_{i=1}^m\delta(x-x^{(i)})
经验分布将概率密度 1 m \cfrac{1}{m} 赋给 m m 个点的每一个,这些点是给定数据集或者采样的集合。只有在定义连续型随机变量的经验分布时, δ ( x ) \delta(x) 函数才是必要的。对于离散型随机变量,情况更加简单:经验分布可以被定义成一个Multinoulli分布,对于每一个可能的输入,其概率可以简单地设为在训练集上哪个输入值的经验概率。
  当我们在训练集上训练模型时,可以认为从这个训练集上得到的经验分布指明了采样来源的分布。关于经验分布另外一种重要的观点是,它是训练数据的似然最大的那个概率密度函数。

参考资料《深度学习》

发布了32 篇原创文章 · 获赞 53 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/qq_39378221/article/details/103382653