Tjitze Rienstra: Ranked Programming
西溪逻辑论坛第91期
Date: 18 June 2018 (11:00-12:00)
Venue: Room 259, Main Teaching Building, Xixi Campus, Zhejiang University
Speaker: Dr. Tjitze Rienstra (University of Koblenz-Landau)
Title: Ranked Programming
Abstract: In recent years, probabilistic programming languages (PPLs) have become a popular tool in the field of Bayesian Machine Learning. Roughly speaking, PPLs allow one to specify and reason about probabilistic models, by writing programs that include probabilistic random choice constructs and observation statements.
In this talk I introduce a qualitative variant of a probabilistic programming called “ranked programming”. Such a language can be used to reason about uncertainty expressible by distinguishing “normal” from “exceptional” events. This kind of uncertainty often appears in common sense reasoning problems, where precise probabilities are unknown. Semantically, the approach is based on a qualitative abstraction of probability theory called “ranking theory”.
I discuss syntax and semantics of a ranked programming language, explain the similarities and differences between ranked programming and probabilistic programming, and present a number of examples that demonstrate the practical utility of the approach.
讲座报道
2018年6月18日上午,“第91期西溪逻辑论坛”邀请的主讲人是德国科布伦茨-朗道大学的Tjitze Rienstra博士。Rienstra在今天的报告中主要介绍了一种概率编程语言(Probabilistic Programming Language)的变体——“排序编程语言”。这种语言使用排序理论(Ranking Theory)代替概率论,并与概率编程语言进行结合,通过区分“正常”和“惊讶”行为来处理不确定性。他首先分别介绍了概率编程语言和排序理论。其次通过将排序理论和概率论进行比较,解释了两者之间的相似和差异之处。然后他详细介绍了排序编程语言的语法和形式语义。最终他通过电路诊断的案例说明了排序编程语言中的迭代修正方式。
概率编程语言(PPL)是基于编程语言进行扩充的,主要的特征是(1)从给定的概率分布中随机抽取数值,以及(2)基于观察来进行条件修正。PPL的一个显著表现是其产生的不是确定性结果,而是可能结果的概率分布。这与排序理论的表示方向有关,排序理论可以被认为是对概率论进行定性抽象产生的结果,用参数来衡量事件的“惊讶”程度,例如,排序0表示正常,排序1表示惊讶,排序2表示非常惊讶等等,当排序为∞时表示不可能。排序理论相较于概率论,计算上更简单,并且不需要概率赋值即可进行有意义的推断。语法上,这种语言在编程语言的基础上扩展了两种特殊表达式。第一种是排序选择,它具有a<<e>>b的形式,表示正常情况下执行a,如果a未被执行,则执行b(惊讶程度为e)。第二种是观察。它的形式是 observe b,表示b被观察到成立,因此需要基于观察对排序进行修正,主要表现为删除不满足b的替代方案,并且统一将剩余替代方案的排序降为0。迭代修正的意思是说在一些百分百确定的观察结果前,对原有的排序进行修正,这是十分必要的,因为我们不可能接受与观察矛盾的排序。L-conditioning就是一种常用的方法,其用参数x来表征证据的影响。最后Rienstra 通过电路诊断的案例具体说明了修正的过程和结果。
对本次报告的评价,首先本次报告具有较好的针对性,对于逻辑学专业的学生有很大的启发作用,Rienstra通过经典的实验案例分析,将概念讲解得非常清楚,且易于理解;其次在讲座过程中,也非常注重和同学们的互动,同学们都积极的提出问题、参与讨论,气氛非常融洽。
(撰稿:杭颖颖;摄影:何娟)