Exploring Bayesian approaches to eQTL mapping through probabilistic programming
影响基因表达的基因组多态性(也称为表达数量性状基因座或eQTL)的发现可以被公式化为稀疏贝叶斯多变量/多元回归问题。在这种模型的发展的一个重要方面是定制的推理方法,一个过程,可以成为相当费力,当多个候选模型正在考虑的实施。我们使用Stan(一种流行的概率编程语言)描述了此类模型中的自动黑盒推理。利用Stan这样的系统可以促进模型原型设计和测试,从而加快数据建模过程。本章中描述的代码可以在https://github.com/dvav/eQTLBookChapter上找到。
2019-06-12 q-bio.GN q-bio.QM stat.AP
Dynestyx: A Probabilistic Programming Library for Dynamical Systems
Basis Research Institute(Basis研究院);Massachusetts Institute of Technology(麻省理工学院)
提出dynestyx库,通过统一接口支持状态空间模型的先验指定、混合效应推断及状态与参数估计,实现贝叶斯动态系统分析。
2026-06-16 cs.LG eess.SP nlin.CD
Inference Compilation and Universal Probabilistic Programming
University of Oxford(牛津大学)
我们介绍了一种使用深度神经网络来摊销通用概率程序设计语言引起的模型族中的推理成本的方法,建立了一个结合概率编程和深度学习方法优势的框架。我们称我们所做的是“编译推理”,因为我们的方法将以通用程序设计语言编写的概率程序形式的推理问题的指称规范转换为以神经网络规约语言表示的训练过的神经网络。当在测试时,该神经网络被馈送观测数据并被执行时,它在由概率程序指定的原始模型中执行近似推理。我们的训练目标和学习过程的目的是让训练后的神经网络被用来作为一个顺序重要性采样推理机的建议分布。我们说明了我们在混合模型和验证码求解上的方法,并显示了推理效率的显着加速。
2017-03-02 cs.AI cs.LG stat.ML
Detecting Dependencies in Sparse, Multivariate Databases Using Probabilistic Programming and Non-parametric Bayes
Massachusetts Institute of Technology(麻省理工学院)
具有数百个变量和许多缺失值的数据集是常见的。在这种情况下,检测变量之间的真实预测关系以及抑制假阳性在统计和计算上都具有挑战性。本文提出了一种方法,结合概率规划,信息论,和非参数贝叶斯。它展示了如何使用贝叶斯非参数建模来(i)为所有变量构建联合概率模型的集合;(ii)有效地检测边缘独立性;以及(iii)估计变量的任意子集之间的条件互信息,受到广泛的约束。用户可以使用BayesDB访问这些功能,BayesDB是一个用于概率数据分析的概率编程平台,通过用简单的类似SQL的语言编写查询。本文实证表明,该方法可以(i)检测具有挑战性的合成问题的上下文特定(中)的依赖关系,(ii)提高敏感性和特异性,超过基线的统计和机器学习,在现实世界的数据库中的300多个稀疏观察的宏观经济发展和公共卫生指标。
2017-03-27 cs.AI cs.LG stat.ML
PClean: Bayesian Data Cleaning at Scale with Domain-Specific Probabilistic Programming
Massachusetts Institute of Technology(麻省理工学院)
数据清理自然被定义为地面真实数据和可能错误的生成模型中的概率推理,但现实世界错误模式的多样性和推理的困难使得贝叶斯方法难以自动化。我们提出了PClean,概率程序设计语言(PPL),利用特定的知识贝叶斯自动清洗。与通用PPL相比,PClean解决了一个受限制的问题域,实现了三个建模和推理创新:(1)用户程序定制的关系数据库实例的非参数模型;(2)利用PClean模型类结构的新型顺序Monte Carlo推理算法;以及(3)编译器,其基于用户的模型和数据生成接近最优的SMC建议和阻塞吉布斯复原内核。我们的经验表明,短(< 50行)PClean程序可以:在数据清理基准上比通用PPL推理更快,更准确;在准确性和运行时间方面与最先进的数据清理系统相匹配(与同一运行时间中的通用PPL推理不同);并扩展到具有数百万条记录的真实数据集。
2022-11-19 cs.AI cs.LG stat.CO
Guaranteed Bounds for Posterior Inference in Universal Probabilistic Programming
CISPA Helmholtz Center for Information Security(CISPA亥姆霍兹信息安全中心);University of Oxford(牛津大学)
提出了一种通过计算保界来近似概率规划后验分布的新方法。我们的工作的出发点是一个基于区间的跟踪语义的递归,高阶概率程序设计语言与连续分布。以(超/次加性)措施的形式,这些下限/上限是非随机的,可证明是正确的:使用语义,我们证明了一个给定的程序的实际后夹在上下界(健全性),而且边界收敛到后(完整性)。作为一个实际的和健全的近似,我们引入了一个权重感知区间类型的系统,它自动推断区间界限上不仅返回值,但也重量的程序执行,同时。我们已经构建了一个名为GuBPI的工具实现,它可以自动计算这些后验下限/上限。我们的评价的例子从文献中表明,界是有用的,甚至可以用来识别错误的输出随机后验推理过程。
2022-06-06 cs.LG cs.LO cs.PL
Myopic Bayesian Design of Experiments via Posterior Sampling and Probabilistic Programming
Carnegie Mellon University(卡内基梅隆大学);U-Mass, Amherst(马萨诸塞大学阿默斯特分校)
我们设计了一个新的近视策略的顺序实验设计(DOE)的问题,其中的目标是收集数据,以满足一定的问题的具体目标。我们的方法,近视后验采样(MPS),是受经典的后验(汤普森)采样算法的启发,多武装匪徒,并利用概率规划和近似贝叶斯推断的灵活性,以解决广泛的问题。从经验上讲,这种通用策略在各种DOE任务中与更专业的方法竞争,更重要的是,能够解决现有方法似乎不适用的复杂DOE目标。在理论方面,我们利用自适应子模块化和强化学习的思想来推导MPS实现次线性后悔的条件。
2018-05-25 cs.AI cs.LG stat.ML
Diffusion models for probabilistic programming
Swiss Data Science Center(瑞士数据科学中心);ETH Zurich(苏黎世联邦理工学院)
本文提出DMVI方法,利用扩散模型作为变分近似实现概率编程语言中的自动化近似推断,在保持相近计算成本和减少手动调优的同时,后验推断准确度优于现有方法。
2023-11-21 cs.LG stat.ML
ProBO: Versatile Bayesian Optimization Using Any Probabilistic Programming Language
CMU(卡内基梅隆大学)
优化查询开销函数是科学和工程中的常见任务,其中将查询数量保持在最小是有益的。一种流行的策略是贝叶斯优化(BO),它利用概率模型来执行此任务。目前,大多数BO使用高斯过程(GP)或其他一些代理模型。但是,有一组广泛的贝叶斯建模技术可用于捕获复杂系统并减少BO中的查询数量。概率程序设计语言(Probability Programming Language,PPL)是一种现代工具,它允许灵活的模型定义、先验规范、模型组合和自动推理。在本文中,我们开发的ProBO,BO程序,只使用标准的操作常见的大多数PPL。这允许用户插入用任意PPL构建的模型,并直接在BO中使用它。我们描述收购功能ProBO,并有效地优化这些功能的复杂模型或昂贵的推理程序的策略。使用现有的PPL,我们实现了新的模型,以帮助在一些具有挑战性的优化设置,并证明这些模型超参数和架构搜索任务。
2019-07-04 cs.AI cs.LG stat.ML
Inferring Signaling Pathways with Probabilistic Programming
University of Wisconsin–Madison(威斯康星大学麦迪逊分校);Morgridge Institute for Research(莫格里奇研究所)
细胞通过令人眼花缭乱的复杂生化过程来调节自己,这些过程被称为信号通路。这些通常被描述为一个网络,其中节点代表蛋白质,边表示它们彼此之间的影响。为了在细胞水平上理解疾病和治疗,对工作中的信号通路有准确的理解是至关重要的。由于信号通路可以被疾病改变,因此从病症或患者特异性数据推断信号通路的能力是非常有价值的。存在多种用于推断信号通路的技术。我们建立在过去的作品,制定信号通路推断作为一个动态贝叶斯网络结构估计问题的磷酸化蛋白质组时间过程数据。我们采用贝叶斯方法,使用马尔可夫链蒙特卡罗估计可能的动态贝叶斯网络结构的后验分布。我们的主要贡献是(i)一个新的建议分布,有效地采样稀疏图和(ii)放松常见的限制性建模假设。我们实现我们的方法,命名为稀疏信号通路采样,在朱莉娅使用Gen概率编程语言。概率编程是构建统计模型的强大方法。生成的代码是模块化的、可扩展的和易读的。Gen语言,特别是,允许我们定制我们的推理过程的生物图,并确保有效的采样。我们评估我们的算法模拟数据和HPN-DREAM途径重建的挑战,比较我们的性能对各种基线方法。我们的研究结果表明了概率编程的巨大潜力,特别是Gen,用于生物网络推理。在www.example.com上找到完整的代码库
2020-07-17 cs.LG q-bio.MN stat.ML
Declarative Modeling and Bayesian Inference of Dark Matter Halos
概率编程允许以声明的方式指定概率模型。最近,几个新的软件系统和语言的概率编程已经开发的基础上,新开发的和改进的概率模型的近似推理方法。在这方面的贡献的概率模型的理想化的暗物质定位问题。我们首先推导出推断暗物质位置和质量的概率模型,然后展示如何使用BUGS和Infer.NET(两个概率编程软件系统)实现此模型。最后,两个系统的不同功能进行了讨论。目前的暗物质模型主要包含非共轭因子,因此,用Infer.NET实现该模型比较困难。
2013-06-02 astro-ph.IM stat.ML
Probabilistic Programming with Gaussian Process Memoization
Royal Holloway, University of London(伦敦大学皇家霍洛威学院);Massachusetts Institute of Technology(麻省理工学院)
高斯过程(GPs)是统计学、机器学习、机器人学、计算机视觉和科学计算中广泛使用的工具。然而,尽管它们很受欢迎,但它们很难应用;除了最简单的分类或回归应用程序之外,所有应用程序都需要对复杂的协方差函数进行规范和推断,而这些函数不允许简单的分析后验。本文展示了如何嵌入高斯过程中的任何高阶概率程序设计语言,使用基于记忆的习惯用法,并通过实现和扩展经典和国家的最先进的GP应用程序演示其实用性。高斯过程的接口,称为gptom,将任意实值计算过程作为输入,并返回一个统计仿真器,该仿真器会在调用原始过程并记录其输入输出行为时自动改进。gptom的灵活性说明通过三个应用程序:(i)强大的GP回归与分层超参数学习,(ii)发现符号表达式的时间序列数据通过完全贝叶斯结构学习的随机语法生成的内核,和(iii)一个强盗配方的贝叶斯优化与自动推理和动作选择。所有应用程序都共享一个50行的Python库,每个应用程序只需要不到20行的概率代码。
2016-01-05 cs.AI cs.LG stat.ML
Probabilistic Programming in Python using PyMC
概率编程(PP)允许在代码中灵活地指定贝叶斯统计模型。PyMC 3是一个新的开源PP框架,具有直观、可读且功能强大的语法,接近统计学家用来描述模型的自然语法。它具有下一代马尔可夫链蒙特卡罗(MCMC)采样算法,例如No-U-Turn Sampler(NUTS; Hoffman,2014),这是哈密顿蒙特卡罗(HMC; Duane,1987)的自调整变体。Python的Probably编程具有许多优点,包括多平台兼容性,表达性强但清晰可读的语法,易于与其他科学库集成,以及通过C,C++,Fortran或Cython的可扩展性。这些特性使得编写和使用贝叶斯分析所需的自定义统计分布、采样器和转换函数相对简单。
2015-07-29 stat.CO
GaussED: A Probabilistic Programming Language for Sequential Experimental Design
序贯算法是试验设计的常用算法,它可以有效地进行仿真、优化和推理。对于这些应用中的大多数,已经开发了定制软件,但是该方法是通用的,并且在这样的软件中执行的许多实际计算是相同的。出于不同的问题,可以在原则上解决共同的代码,本文介绍了GaussED,一个简单的概率编程语言耦合到一个功能强大的试验设计引擎,一起自动化顺序试验设计近似高斯过程模型的兴趣(可能是非线性的)数量。使用少量命令,GaussED可用于:求解线性偏微分方程,从积分数据执行断层重建,并使用梯度数据实现贝叶斯优化。
2021-10-15 stat.CO
MultiVerse: Causal Reasoning using Importance Sampling in Probabilistic Programming
Babylon Health(巴比伦健康);University of Oxford(牛津大学);University College London(伦敦大学学院)
我们详细说明使用重要性采样的因果推理,特别是反事实推理。我们展示了如何在概率编程中本地实现这一点。通过考虑反事实查询的结构,可以显著优化推理过程。我们还考虑设计选择,以实现进一步优化。我们介绍了MultiVerse,一个概率编程的原型引擎近似因果推理。我们提供了实验结果,并与Pyro,现有的概率编程框架与一些因果推理工具进行比较。
2020-01-28 cs.AI cs.LG cs.PL
Probabilistic programming for birth-death models of evolution using an alive particle filter with delayed sampling
我们认为概率规划的出生-死亡模型的进化,并引入一个新的广泛适用的推理方法,结合了扩展的活粒子滤波器(APF)与自动Rao-Blackwellization通过延迟采样。进化的死亡模型是导致进化树的多样化过程的系统发育模型的一个重要家族。概率编程语言(Probabilistic Programming Languages,PPL)为遗传学家提供了一个新的令人兴奋的工具:他们的模型可以实现为概率程序,只需基本的编程知识。PPL中的一般推理方法减少了对外部专家的需求,允许快速原型设计和测试,并加速了新模型的开发和部署。我们将展示如何在现有的PPL中实现这些生灭模型作为简单的程序,并证明了这种模型的有用性所提出的推理方法。对于流行的BiSSE模型的方法产生的有效样本量和条件接受率的增加了30倍,与标准的自举粒子滤波器。虽然集中在遗传学,扩展的APF是一个通用的推理方法,显示其实力的情况下,粒子往往被分配为零的权重。在权值为正的情况下,使用自适应滤波器而不是自举粒子滤波器的额外开销可以忽略不计,使得我们的方法在概率规划推理中成为自举粒子滤波器的合适替代品.
2021-02-14 stat.CO stat.ML
Probabilistic Programming with Densities in SlicStan: Efficient, Flexible and Deterministic
Stan是一种概率程序设计语言,越来越多地用于现实世界的可扩展项目。然而,为了使实际推理成为可能,该语言通过采用块语法牺牲了一些可用性,这缺乏组合性和灵活的用户定义函数。此外,该语言的语义主要是根据实现的直觉给出的,并且还没有正式化。本文提供了一个正式的处理斯坦语言,并介绍了概率程序设计语言SlicStan -组成,自我优化版本的斯坦。我们的主要贡献是:(1)通过基于操作密度的语义来形式化Stan的核心子集;(2)Stan类语言SlicStan的设计和语义,通过其组合语法,更灵活的功能和信息流类型系统来实现更好的代码重用和抽象;(3)将SlicStan转换为Stan的形式化,语义保持过程。
2018-11-02 cs.PL stat.CO stat.ML
Deep Probabilistic Programming
Columbia University(哥伦比亚大学);Adobe Research(Adobe研究院);Google Research(谷歌研究院);Google Brain(谷歌大脑)
我们建议爱德华,图灵完备的概率编程语言。Edward定义了两种组合表示-随机变量和推理。通过将推理视为一等公民,与建模相提并论,我们证明了概率编程可以像传统的深度学习一样灵活和计算效率高。为了灵活性,Edward使用各种可组合的推理方法,从点估计到变分推断,再到MCMC,很容易拟合同一模型。此外,Edward可以重用建模表示作为推理的一部分,促进丰富的变分模型和生成对抗网络的设计。为了提高效率,Edward被集成到TensorFlow中,比现有的概率系统提供了显著的加速。例如,我们在一个基准测试逻辑斯谛回归任务上显示,Edward至少比Stan快35倍,比PyMC 3快6倍。此外,Edward没有运行时开销:它和手写的TensorFlow一样快。
2017-03-07 cs.AI cs.LG cs.PL
SPPL: Probabilistic Programming with Fast Exact Symbolic Inference
Massachusetts Institute of Technology(麻省理工学院)
我们提出的总和产品概率语言(SPPL),一种新的概率程序设计语言,自动提供精确的解决方案,广泛的概率推理查询。SPPL将概率程序转换为和积表达式,这是一种新的符号表示和相关的语义域,扩展了标准和积网络以支持混合型分布,数值变换,逻辑公式以及逐点和集值约束。我们正式SPPL通过一种新的翻译策略,从概率程序和产品的表达式,并给出健全的精确算法的条件和计算事件的概率。SPPL对概率程序施加了一系列限制,以确保它们可以被翻译成和积表达式,这允许系统利用新技术,通过自动利用概率结构来提高翻译和推理的可扩展性。我们实现了一个原型的SPPL与模块化架构和评估基准系统的目标,显示它获得了高达3500倍的加速比最先进的符号系统的任务,如验证的公平性的决策树分类,平滑隐马尔可夫模型,条件变换的随机变量,并计算罕见的事件概率。
2021-06-11 cs.LG cs.PL cs.SC
Venture: a higher-order probabilistic programming platform with programmable inference
MIT(麻省理工学院)
我们描述风险,概率编程的交互式虚拟机,其目的是充分表达,可扩展,高效的通用用途。像Church一样,Venture中的概率模型和推理问题也是通过一种图灵完备的高阶概率语言来描述的。与Church不同,Venture还提供了一种组合语言,用于基于可扩展的精确和近似技术构建的自定义推理策略。我们还描述了四个关键方面的风险投资的实施,建立在概率图形模型的想法。首先,我们描述了随机过程接口(SPI),指定和封装原始随机变量。SPI支持自定义控制流、高阶概率程序、部分可交换序列和“无可能性”随机模拟器。它还支持外部模型,这些模型对隐藏在Venture中的潜在变量进行推断。其次,我们描述了概率执行轨迹(PETS),这代表了执行历史的风险投资计划。PET捕获条件依赖、存在依赖和可交换耦合。第三,我们描述了分区的执行历史称为脚手架的因素,全球推理问题成连贯的子问题。最后,我们描述了一个家庭的随机再生算法,有效地修改PET片段内的支架。随机再生线性运行时缩放的情况下,许多以前的方法缩放二次。我们将展示如何使用随机再生和SPI来实现通用的推理策略,如大都会黑斯廷斯,吉布斯采样,并阻止粒子马尔可夫链蒙特卡罗和平均场变分推理技术的基础上的建议。
2014-04-01 cs.AI cs.PL stat.CO