Skip to main content
QUICK REVIEW

[论文解读] Applications of Probabilistic Programming (Master's thesis, 2015)

Yura Perov|arXiv (Cornell University)|May 31, 2016
Gaussian Processes and Bayesian Inference参考文献 67被引用 3
一句话总结

本硕士论文提出了概率编程的两个应用:(1) 利用基于语法的先验和近似贝叶斯计算,通过贝叶斯程序合成自动发现一维采样器;(2) 通过数据驱动的提议分布提升序列蒙特卡洛推理效率,尤其针对非参数狄利克雷过程混合模型。该方法在 Anglican 系统中实现了与遗传编程相当的性能,并显著提升了概率模型中的推理效率。

ABSTRACT

This thesis describes work on two applications of probabilistic programming: the learning of probabilistic program code given specifications, in particular program code of one-dimensional samplers; and the facilitation of sequential Monte Carlo inference with help of data-driven proposals. The latter is presented with experimental results on a linear Gaussian model and a non-parametric dependent Dirichlet process mixture of objects model for object recognition and tracking. In Chapter 1 we provide a brief introduction to probabilistic programming. In Chapter 2 we present an approach to automatic discovery of samplers in the form of probabilistic programs. We formulate a Bayesian approach to this problem by specifying a grammar-based prior over probabilistic program code. We use an approximate Bayesian computation method to learn the programs, whose executions generate samples that statistically match observed data or analytical characteristics of distributions of interest. In our experiments we leverage different probabilistic programming systems to perform Markov chain Monte Carlo sampling over the space of programs. Experimental results have demonstrated that, using the proposed methodology, we can learn approximate and even some exact samplers. Finally, we show that our results are competitive with regard to genetic programming methods. In Chapter 3, we describe a way to facilitate sequential Monte Carlo inference in probabilistic programming using data-driven proposals. In particular, we develop a distance-based proposal for the non-parametric dependent Dirichlet process mixture of objects model. We implement this approach in the probabilistic programming system Anglican, and show that for that model data-driven proposals provide significant performance improvements. We also explore the possibility of using neural networks to improve data-driven proposals.

研究动机与目标

  • 开发一个贝叶斯框架,自动发现能够生成符合目标分布样本的程序代码。
  • 通过数据驱动的提议分布提升复杂概率模型中序列蒙特卡洛(SMC)推理的效率。
  • 探索神经网络在 SMC 中进一步增强数据驱动提议的潜力。
  • 在线性高斯模型和非参数依赖狄利克雷过程混合模型上评估所提方法在目标识别与跟踪任务中的表现。
  • 将所提程序合成方法与现有的遗传编程方法进行性能比较。

提出的方法

  • 在概率程序代码空间上定义基于语法规则的先验,以编码潜在采样器的结构约束。
  • 应用近似贝叶斯计算(ABC)学习其输出在统计上与观测数据或解析分布特征相匹配的程序。
  • 在 ABC 框架下,对概率程序空间使用马尔可夫链蒙特卡洛(MCMC)采样进行推理。
  • 在 Anglican 等概率编程系统中实现该方法,以支持可扩展的推理。
  • 为非参数依赖狄利克雷过程混合模型设计基于距离的提议机制,以提升 SMC 推理效率。
  • 探索将神经网络集成以学习更有效的 SMC 数据驱动提议。

实验结果

研究问题

  • RQ1通过基于语法的先验与贝叶斯推断进行概率程序合成,能否可靠地从数据或分布特征中恢复已知的一维采样器?
  • RQ2在复杂且非参数的模型(如依赖狄利克雷过程混合模型)中,数据驱动提议在加速序列蒙特卡洛推理方面效果如何?
  • RQ3神经网络能否进一步提升 SMC 推理中数据驱动提议的质量与效率?
  • RQ4与成熟的遗传编程技术相比,所提程序合成方法在性能与准确性方面表现如何?
  • RQ5该框架在现实世界推理任务(如目标识别与跟踪)中具有多大程度的泛化能力?

主要发现

  • 所提出的贝叶斯程序合成方法成功学习了近似和精确的一维采样器,证明了自动发现概率程序的可行性。
  • 该方法在从分布特征合成正确采样器方面,性能与遗传编程方法相当。
  • 数据驱动提议显著提升了线性高斯模型和非参数依赖狄利克雷过程混合模型中 SMC 推理的效率。
  • 在目标识别与跟踪任务中,基于距离的 SMC 提议机制减少了所需粒子数并加快了收敛速度。
  • 基于神经网络的提议显示出进一步提升提议质量的潜力,尽管主要评估聚焦于基于距离的设计。
  • 在 Anglican 概率编程系统中的实现使所提推理技术得以实际部署与评估。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。