首先,假设我们要从Dirichlet (1,1,1,1) 分布中生成。以下方法是否正确?
- 从 Uniform(0,1) 生成三个变量。给他们打电话,,.
- 然后,订购这些
- 然后,将差异返回为我们的 Dirichlet 变量:
这个对吗?我觉得它是正确的,但我不确定,这似乎与维基百科上描述的任何一种方法或我所做的任何其他搜索都不相同。也许它很慢或有其他问题,但我很好奇它是否正确。
假设这是正确的,它是否可以扩展到非均匀 Dirichlet,例如 Dirichlet(a,b,c,d)?
额外说明:我不是简单地问如何生成 Dirichlet;已经有很多关于这方面的信息。我只是想看看制服的方法是否可以扩展。是否有更通用的方法涉及从分布中提取,然后对这些数字进行排序,然后使用间隙?