概率程序设计语言(probability programming language),理学-计算机科学技术-计算机软件-软件语言与方法-软件语言,一种将概率模型的推断能力和编程语言的表示能力结合的用于描述概率模型和这些模型上相关推断机制的领域特定语言。概率程序设计的主要目的是以编程的方式进行三个方面的概率推理(probabilistic reasoning):①预测将来事件的发生概率;②根据当前观察的结果,推断(infer)事件发生的原因;③学习过去的事件以更好地预测将来的事件。为达到上述目的,一门概率程序设计语言通常基于已有的通用宿主语言(host language),引入概率模型的变量表示概率分布,进而用程序编写概率模型。对于一个概率程序,所需要的假设条件通常被编码成模型变量的前验分布。在执行过程中,程序启动推断过程(inference procedure),根据观察到的数据,自动计算模型参数的后验分布。这方面的概率建模和推断在许多领域有应用,例如信息抽取、语音识别、计算机视觉、生物学等等。早在20世纪90年代就产生了概率编程语言,例如BUGS。