主观Bayes算法的实现
摘 要
不确定性推理是指建立在不确定性知识和论据基础上的推理。首先,本文设计了基于主观Bayes方法的不确定性推理算法, 通过实验结果比较了结论不确定的合成算法与更新算法的一致性, 实现了不确定推理问题求解的自动化。
关键词:不确定性推理 主观Bayes
1 问题描述
在证据不确定的情况下,以充分性量度LS、必要性量度LN、E 的先验概率P(E)和H的先验概率P(H)作为前提条件,分析P(H/S)和P(E/S)的关系。
2 主观Bayes原理介绍
主观Bayes方法又称主观概率论,是杜达(R.O.Duda)等人在1976年提出的,是一种不确定性推理模型。
①知识不确定性的表示:
在主观Bayes方法中,知识是用产生式规则表示的,具体形式为:
其中,E是知识的前提条件,既可以是简单条件,也可以是复合条件。
• P(H)是结论H的先验概率,由专家根据经验给出。
• LS称为充分性度量,用于指出E对H的支持程度,取值范围为[0,∞),其定义为:
• LN称为必要性度量,用于指出¬ E对H的支持程度,取值范围为[0,∞),其定义为:
LS和LN的值由领域专家给出,代表知识的静态强度。
②证据不确定性的表示:
• 在主观Bayes方法中,证据的不确定性用概率表示[3]。对于证据E,由用户根据观察S给出P(E|S),即动态强度。用P(E|S)描述证据的不确定性 (证据E不是可以直接观测的)。
• 由于主观给定P(E|S)有所困难,所以实际中可以用可信度C(E|S)代替P(E|S)。
• 在PROSPECTOR中C(E|S)取整数:{-5,….5}
C(E|S)=-5表示在观测S下证据E肯定不存在P(E|S)=0
C(E|S)= 5表示在观测S下证据E肯定存在P(E|S)=1
C(E|S)= 0表示S与E无关,即P(E|S)= P(E)
• 给定C(E|S)后,P(E|S)可近似计算如下:
组合证据的不确定性:
(1)当组合证据是多个单一证据的合取时,即:
则:
(2)当组合证据是多个单一证据的析取时,即:
则:
(3)对于“¬”运算, 则:
3 算法描述
MATLAB程序如下:
clc;
X=input('请输入LS,LN,P(H),P(E):');
P1=(X(1)*X(3))/((X(1)-1)*X(3)+1);
P0=(X(2)*X(3))/((X(2)-1)*X(3)+1);
axis([0 1.1 0 1.1]);
line([0 X(4)],[P0 X(3)],'color','k','linewidth',2);
line([X(4) 1],[X(3) P1],'color','k','linewidth',2);
line([X(4) X(4)],[0 X(3)],'linestyle',':');
line([0 X(4)],[X(3) X(3)],'linestyle',':');
line([1 1],[0 P1],'linestyle',':');
line([0 1],[P1 P1],'linestyle',':');
title('主观BAYES');
text(0,P0,'P(H/~E)');
text(0,X(3),'P(H)');
text(0,P1,'P(H/S)');
text(X(4),0,'P(E)');
xlabel('P(E/S)');
ylabel('P(H/S)');
grid;