scipy.stats.dirichlet¶
- scipy.stats.dirichlet = <scipy.stats._multivariate.dirichlet_gen object>[源代码]¶
狄利克莱特随机变量。
这个
alpha
关键字指定分布的浓度参数。0.15.0 新版功能.
- 参数
- xarray_like
分位数,最后一个轴为 x 表示组件。
- alphaarray_like
浓度参数。条目的数量决定了分布的维度。
- random_state :{无,整型,
numpy.random.Generator
,{无,整型, 如果 seed 为无(或 np.random )、
numpy.random.RandomState
使用的是Singleton。如果 seed 是一个整型、一个新的RandomState
实例,其种子设定为 seed 。如果 seed 已经是一个Generator
或RandomState
实例,则使用该实例。- 或者,可以调用对象(作为函数)来修复
- 浓度参数,返回“冻结的”Dirichlet
- 随机变量:
- rv = dirichlet(alpha)
使用相同的方法冻结对象,但保持给定的浓度参数不变。
注意事项
每个人 \(\alpha\) 条目必须为正数。该分布仅在由定义的单纯形上受支持
\[\sum_{i=1}^{K}x_i=1\]哪里 \(0 < x_i < 1\) 。
如果分位数不在单纯形内,则会引发ValueError。
的概率密度函数
dirichlet
是\[F(X)=\frac{1}{\mathm{B}(\boldbol\alpha)}\prod_{i=1}^K x_i^{\alpha_i-1}\]哪里
\[\mathm{B}(\boldbol\alpha)=\frac{\prod_{i=1}^K\Gamma(\alpha_i)} {\Gamma\Bigl(\sum_{i=1}^K\alpha_i\BiGR)}\]和 \(\boldsymbol\alpha=(\alpha_1,\ldots,\alpha_K)\) 、浓度参数和 \(K\) 是空间的维度,其中 \(x\) 取值。
请注意,Dirichlet接口有些不一致。rvs函数返回的数组相对于pdf和logpdf期望的格式进行了转置。
示例
>>> from scipy.stats import dirichlet
生成Dirichlet随机变量
>>> quantiles = np.array([0.2, 0.2, 0.6]) # specify quantiles >>> alpha = np.array([0.4, 5, 15]) # specify concentration parameters >>> dirichlet.pdf(quantiles, alpha) 0.2843831684937255
相同的PDF,但遵循对数比例
>>> dirichlet.logpdf(quantiles, alpha) -1.2574327653159187
一旦我们指定了狄利克雷分布,我们就可以计算出感兴趣的数量。
>>> dirichlet.mean(alpha) # get the mean of the distribution array([0.01960784, 0.24509804, 0.73529412]) >>> dirichlet.var(alpha) # get variance array([0.00089829, 0.00864603, 0.00909517]) >>> dirichlet.entropy(alpha) # calculate the differential entropy -4.3280162474082715
我们还可以从分布中返回随机样本
>>> dirichlet.rvs(alpha, size=1, random_state=1) array([[0.00766178, 0.24670518, 0.74563305]]) >>> dirichlet.rvs(alpha, size=2, random_state=2) array([[0.01639427, 0.1292273 , 0.85437844], [0.00156917, 0.19033695, 0.80809388]])
方法:
``pdf(x, alpha)``
概率密度函数。
``logpdf(x, alpha)``
概率密度函数的对数。
``rvs(alpha, size=1, random_state=None)``
从Dirichlet分布中随机抽取样本。
``mean(alpha)``
Dirichlet分布的均值
``var(alpha)``
狄利克雷分布的方差
``entropy(alpha)``
计算狄利克雷分布的微分熵。