概率逻辑程序

1.研究概况

  • Prolog :1972年,一种描述性的程序设计语言(逻辑程序),以一阶谓词逻辑为理论基础,语法上可以表示为一阶谓词逻辑的Horn 子句集。用户只需要编写程序的逻辑部分,而控制部分由计算机自动完成。prolog程序基本语法
  • probabilistic logic programming:1992年,R.Ng,提出了第一个概率逻辑程序框架,并在此框架中对概率信息进行描述,同时研究了这种语言的固定点语义。形式:对一般的逻辑程序中的每个原子附加一个概率值
  • PRISM : 1995年,提出了著名的分布语义:
    在这里插入图片描述
    在这里插入图片描述
  • Problog:2007年,对Prolog的扩展,即每条逻辑程序前加上了其概率 Problog官网,它使用了
    1.PRISM中的分布语义:
    在这里插入图片描述
    2.DNF
    在这里插入图片描述
    3.二叉决策图:
    在这里插入图片描述

2.概率选择

在这里插入图片描述
不同的概率逻辑程序选用的概率选择的算法不同,但目的是相同的,即获得可能的世界的一个较好的分布。如PRISM中的二进制开关函数:bsw(ID,N,R),在一个描述一个人的血型如何被来自父母的基因决定的程序中,bsw函数的应用为:
在这里插入图片描述
获得可能的世界的一个分布后,和bsw相关的参数可以通过优化算法如EM算法被计算出来,使得该结果下的可能的世界的联合分布概率最大。

4.推理

  • SUCC任务:该任务是计算基查询q成功的概率,表示为:SUCC(q) = P(q),其中, P(q)=
    在这里插入图片描述
  • MARG任务:该任务是在计算给定条件 下,求每个基原子q的边缘概率,其表示为:
    在这里插入图片描述
  • MPE任务:该任务是找到一个最有可能世界,在该世界中,使条件e成立,其表示为:
    在这里插入图片描述其中U是在Herbrand基中不出现在e中的所有原子构成的集合。
  • 精确推理:大多数的精确推理方法都被认为是对蕴含感兴趣查询q的所有可能世界的谓词逻辑表示进行推理。这
    类方法将可能世界定义成一个析取范式(以下简称DNF),其定义如下:
    在这里插入图片描述
    该式可以对应到前面分布语义的公式中,用析取符号替换求和符号,用合取符号替换乘号,用随机变量的真值替换概率
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值