Dirichlet分布中的alpha到底是什么?


26

我对贝叶斯统计非常陌生,遇到了一种校正的相关度量SparCC,该度量在其算法的后端使用Dirichlet流程。我一直在尝试逐步了解算法,以真正理解正在发生的事情,但是我不确定alpha在Dirichlet分布中矢量参数的作用以及如何规范化alpha矢量参数?

该实现Python使用的是NumPyhttps : //docs.scipy.org/doc/numpy/reference/generated/numpy.random.dirichlet.html

文档说:

alpha:数组分布的参数(k维为k维样本)。

我的问题:

  1. 如何将alphas影响分布?;

  2. 如何alphas被标准化?和

  3. alphas不是整数时会发生什么?

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

# Reproducibility
np.random.seed(0)

# Integer values for alphas
alphas = np.arange(10)
# array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

# Dirichlet Distribution
dd = np.random.dirichlet(alphas) 
# array([ 0.        ,  0.0175113 ,  0.00224837,  0.1041491 ,  0.1264133 ,
#         0.06936311,  0.13086698,  0.15698674,  0.13608845,  0.25637266])

# Plot
ax = pd.Series(dd).plot()
ax.set_xlabel("alpha")
ax.set_ylabel("Dirichlet Draw")

在此处输入图片说明


6
对此发行版的Wikipedia条目是否有疑问?
西安

2
抱歉,我的措词不正确。我了解概率分布/ pdf / pmf是什么,但是我对标准化的发生方式感到困惑。从维基百科,似乎归一化是通过后的伽马函数发生。我听说过它被称为分布之上的分布,很难从Wikipedia上的eqns看到这一点。xiα1
O.rka '16

1
如果对alpha进行归一化,则可获得分布的均值。如果对分布进行正态化,则确保其在支撑上的积分等于1,因此它是有效的概率分布。
Eskapp

1
Dirichlet分布是单纯形上的分布,因此是有限支撑分布上的分布。如果您打算将分布分布在连续分布上,则应查看Dirichlet过程。
西安

Answers:


67

狄利克雷分布是描述多元概率分布变量X 1... X ķ,使得每个X 0 1 Σ Ñ = 1 X = 1,由一个向量参数化正值参数。参数k2X1,,Xkxi(0,1)i=1Nxi=1α=(α1,,αk)必须是整数,它们只需要是正实数。它们没有以任何方式“标准化”,它们是此分布的参数。

Dirichlet分布是beta分布到多个维度的概括,因此您可以从了解beta分布开始。Beta是由参数和参数化的随机变量的单变量分布。关于它的漂亮的直觉来,如果你还记得,它是共轭先验二项分布,如果我们假设一个测试之前通过参数和的二项式分布的概率参数,那么后验分布也是一个beta分布参数化X(0,1)αβαβppα=α+number of successes和。因此,您可以将和视为成功和失败的伪计数(它们不必为整数)(也请检查此线程)。β=β+number of failuresαβ

在狄利克雷分布的情况下,它是现有的缀合物用于多项分布。如果在二项式分布的情况下,我们可以用画the的黑色和白色球来代替它,那么在多项式分布的情况下,我们用种颜色显示的替换球来绘制,其中每种颜色可以用概率绘制球的数量。Dirichlet分布是概率的共轭先验,并且参数可以被认为是假设先验的每种颜色的球的Nkp1,,pkp1,,pkα1,,αk(但您还应该阅读有关此类推理陷阱)。在Dirichlet多项式模型通过将它们与每个类别中观察到的计数相加来进行更新:,其方式类似于beta-二项式模型。α1,,αkα1+n1,,αk+nk

值越高, “权重” 就越大,并且为其分配的“质量”越多(请记住,总和必须为)。如果所有相等,则分布是对称的。如果,可以认为是将推向极限的权重,而当它很高时,它会将吸引到某个中心值(在所有点都集中在中心点的意义上是中心点,而不是在感觉它在中心对称)。如果,则这些点将均匀分布。αiXix1++xk=1αiαi<1xixiα1==αk=1

可以在下面的图中看到,在这里您可以看到由(a),(b),(c),(d)。α1=α2=α3=1α1=α2=α3=10α1=1,α2=10,α3=5α1=α2=α3=0.2

Dirichlet分布的四个不同样本

Dirichlet分布有时称为“分布之上的分布”,因为它可以被认为是概率本身的分布。注意,由于每个和,所以与概率的第一和第二公理是一致的。因此,您可以将Dirichlet分布用作由诸如分类多项式之的分布描述的离散事件的概率分布。这是xi(0,1)i=1kxi=1xi确实,它是任何分布上的分布,例如,它与连续随机变量的概率无关,甚至与某些离散变量也不相关(例如,泊松分布随机变量描述了观测值为任何自然数的概率),因此使用Dirichlet根据其概率分布,您需要无限数量的随机变量)。k


2
令人难以置信的解释
O.rka'Nov 9'16

14

免责声明:我以前从未使用过此发行版。该答案基于维基百科文章以及我对此的解释。


Dirichlet分布是具有与Beta分布相似的属性的多元概率分布。

PDF的定义如下:

{x1,,xK}1B(α)i=1Kxiαi1

其中,和。K2xi(0,1)i=1Kxi=1

如果我们看一下密切相关的Beta分布:

{x1,x2(=1x1)}1B(α,β)x1α1x2β1

我们可以看到,如果,这两个分布是相同的。因此,让我们首先基于此进行解释,然后再推广到。K=2K>2


在贝叶斯统计中,将Beta分布用作二项式参数的共轭先验(请参见Beta分布)。可以将先验定义为和一些先验知识(或与Dirichlet分布和)。如果某些二项式试验于是具有成功和故障,后验分布然后如下:和。(我不会解决这个问题,因为这可能是您从贝叶斯统计中学到的第一件事)。αβα1α2ABα1,pos=α1+Aα2,pos=α2+B

因此,Beta分布然后表示和上的一些后验分布,这可以分别解释为二项分布中成功和失败的概率。并且,您拥有的数据(和)越多,则后验分布越窄。x1x2(=1x1)AB


现在我们知道了的分布是如何工作的,我们可以将其推广为多项式分布而不是二项式。这意味着我们将允许结果,而不是两个可能的结果(成功或失败)(请参阅如果为什么它会推广到Beta / Binom )。这些结果中的每一个将具有概率,与概率一样,其总和为1。K=2KK=2Kxi

αi然后在Beta发行版中扮演的角色与中的和类似,并且以类似的方式进行更新。α1α2xi

现在开始回答您的问题:

如何将alphas影响分配?

分布受限制和。该确定哪些部分维空间得到最大量。您可以在这张图片中看到此图片(由于我不拥有图片,所以不能将其嵌入此处)。(使用该解释)后验中的数据越多,越高,因此您对的值或每个结果的概率的确定性就越高。这意味着密度将更加集中。xi(0,1)i=1Kxi=1αiKi=1Kαixi

如何alphas标准化?

分布的归一化(确保积分等于1)经过项:B(α)

B(α)=i=1KΓ(αi)Γ(i=1Kαi)

再次,如果查看情况我们可以看到归一化因子与Beta分布中的归一化因子相同,后者使用以下内容:K=2

B(α1,α2)=Γ(α1)Γ(α2)Γ(α1+α2)

这延伸到

B(α)=Γ(α1)Γ(α2)Γ(αK)Γ(α1+α2++αK)

当字母不是整数时会发生什么?

的解释不变,但是如您在我之前链接的图像中所见,如果,则分布的质量会累积在范围的边缘。另一方面必须是一个整数和。αi>1αi<1xiKK2


1
谢谢你 您的解释超级有用。我希望我可以将它们都标记为正确。
O.rka,2016年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.