【问题标题】:Automatic probability densities自动概率密度
【发布时间】:2013-01-17 21:02:20
【问题描述】:

我发现自动微分在编写数学软件时非常有用。我现在必须处理随机变量和随机变量的函数,在我看来,类似自动微分的方法也可以用于此。

我们的想法是从具有给定多元分布的基本随机向量开始,然后您想要处理随机向量分量函数的隐含概率分布。这个想法是定义运算符,当您添加、相乘、除以两个随机变量时自动适当地组合两个概率分布,并在您应用诸如取幂之类的标量函数时适当地转换分布。然后,您可以将这些组合起来,为原始随机变量构建您需要的任何函数,并自动获得相应的概率分布。

这听起来可行吗?如果不是,为什么不呢?如果是这样,并且由于这不是一个特别原始的想法,有人可以指出我现有的实现,最好是在 C

【问题讨论】:

    标签: probability automatic-differentiation


    【解决方案1】:

    在概率编程方面已经做了很多工作。一个问题是,随着您的分布变得越来越复杂,您开始需要更复杂的技术来从中采样。

    有很多方法可以做到这一点。概率图形模型为表达这些模型提供了一个词汇表,然后您可以使用各种 Metropolis-Hastings 风格的方法从中采样。 Here is a crash course.

    另一种模型是概率编程,它可以通过嵌入式领域特定语言直接完成。 Oleg Kiselyov 的HANSEI 就是这种方法的一个例子。一旦他们有了这个程序,他们就可以检查决策树,并通过一种重要性抽样的形式将它们展开,以便在每个步骤中获得尽可能多的信息。

    您可能还想阅读 Wingate 等人的 "Nonstandard Interpretations of Probabilistic Programs for Efficient Inference"。它描述了一种使用有关分布导数的额外信息来加速 Metropolis-Hastings 式采样技术的方法。我个人使用自动微分来计算这些导数,这将话题带回了自动微分。 ;)

    【讨论】:

      猜你喜欢
      • 2012-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-07
      • 2021-01-08
      • 2017-09-20
      • 2020-04-22
      相关资源
      最近更新 更多