方炜杰,尹泽锋,巩晓婷,蓝以信,傅仰耿
(1. 福州大学数学与计算机科学学院,福建 福州 350108;2. 福州大学决策科学研究所, 福建 福州 350108)
专家系统是利用某一领域的专家知识和经验构建知识库,用以解决该领域中各种复杂问题的计算机系统. 置信规则库[1](belief rule base,BRB)系统是专家系统的一种实现,其由传统的IF-THEN规则[2]系统发展而来,采用基于证据推理的置信规则库推理方法[3](belief rule-base inference methodology using the evidential reasoning approach,RIMER). RIMER算法由文献[3]提出,以Dempster/Shafer证据理论[4-5]、 决策理论[6]、 模糊理论[7]为基础,兼具处理定量信息和定性知识的能力,能够对具有模糊不确定性或概率不确定性的数据进行建模. BRB系统的前件属性连接方式有析取[8]和合取两种,后者的被称为CBRB(conjunction belief rule-base, CBRB). 文献[9-11]对现有的CBRB系统进行拓展,提出在规则的前件属性当中加入对各个属性参考值的置信度,形成扩展置信规则库系统(extended belief rule-base,EBRB).
RIMER算法由D-S证据理论的合成法则发展而来[12],是基于概率论的理论体系. 在概率论中,多个事件共同发生的置信度是由各事件的概率相乘所得,因此RIMER算法也通过前件属性的个体匹配度的乘积计算规则激活权重. 然而,从数学角度看,两个乘积相同的个体匹配度分布可能有着不同的极值、 方差等条件. 忽视这些条件,将个体匹配度的乘积对等于规则的激活程度,在某些应用场景中是不合适的.
不确定理论[13]是另一种处理置信度问题的工具,该理论使用不确定测度M(A)来表示对事件A的信任程度,用多个事件不确定测度的交集表示这些事件同时为真的置信度. 在不确定推理[13]计算规则权重的过程中,不确定测度的交集以取最小值的方法表示,但直接将这一方法套用在CBRB推理过程中并不能得到合适的效果. 为此,本研究借鉴不确定理论的推理方式,结合CBRB系统自身的各项参数对其推理过程进行改进,提出一种结合两者优点并适用于大部分数据集的规则权重计算方法,并在EBRB系统上验证改进的效果.
大部分BRB系统都属于合取型BRB系统,其由一系列置信规则组成,而置信规则是IF-THEN规则的扩展. CBRB系统中的第k条置信规则表示为:
(1)
扩展置信规则库系统是对CBRB系统的扩展[9],也是一种合取型BRB系统. EBRB系统中每条规则的前件是一个前件属性参考值的置信分布,表示该规则中各个前件属性对其每个候选值的匹配度. 具体地,EBRB系统中第k条规则见下述表示.
(2)
(3)
之后,由于CBRB系统与EBRB系统中规则的前件属性都是以合取“∧”方式连接的,因此二者都采用个体匹配度相乘的方式来计算规则的激活权重. 具体地,第k条规则的激活权重ωk的计算公式为:
(4)
(5)
这里,
(6)
采用上述公式合成后即可得到离散型的结果置信分布{(Dn,βn)|n=1, 2, …,N}. 对于分类问题,一般直接选取置信度最大的结果评价等级作为输出. 对于回归问题,则需考虑各个评价等级所对应的效用值,按各个评价等级上的置信度对其效用值进行加权,得到数值型的输出.
证据理论起源于1967年Dempster提出的由多值映射导出的上概率和下概率,之后Shafer对其进行完善,形成D-S证据理论[12]. 在证据理论中,命题由识别框架Θ表示,其子集对应表示可能成为答案的事件. 基本信任分配函数M表示对各个事件A的信任程度,该函数也称为概率质量函数. 具体的,有:
(7)
不同的信息来源可能对同一个识别框架给出不同的基本信任分配函数. 对此,D-S证据理论先对不同的证据进行打折,再采用正交合成法来合成结果. 正交合成法的计算公式也是基于概率乘法的,对两个基本信任分配函数M1和M2,合成公式如下:
(8)
在上述理论的基础上,文献[14]提出了ER算法,公式(8)即为ER算法递归形式的理论基础.
概率论中的合取是以相乘方式体现的,但不同的个体匹配度分布相乘有可能得到同样的结果. 例如0.6×0.6×0.6的计算结果与0.3×0.8×0.9是相同的. 如果这三个数表示三个事件的概率,那么它们共同发生的概率就是0.216. 如果这三个数表示CBRB系统中某条激活规则的全部三个个体匹配度,那么在现有方法的计算下,该规则的激活权重也是0.216.
然而,目前的规则权重计算方法并非在所有情况下都是最合适的. 不妨设想这样一个应用场景:需要对某种机器的故障检测进行建模,机器有三个部件,对每个部件记录运行时的参数,只有三个部件均正常运转时,整个机器才能正常运转. 现有一条置信规则和两条测试数据,规则中的三个前件属性分别代表机器中三个部件正常运行时的参数,规则的分类结果为机器能否正常运行,两条数据对该规则的个体匹配度分别是{0.6, 0.6, 0.6}和{0.3, 0.8, 0.9}. 显然对两者而言三个部件同时损坏的概率是相等的,但后者无法正常运行的可能性更大.
实际上,计算激活权重的意义与计算事件共同发生概率的意义是不同的. 概率论的方法在合成结果置信分布的应用上的确具有理论依据,但计算激活权重时,某些情况下个体匹配度的极值比乘积更值得关注. 上述例子中的问题可以引入不确定推理的思想来解决,基于此,本研究对CBRB系统中规则激活权重的计算方式进行改进.
不确定理论于2007年由文献[13]提出,如今已经成为数学领域的一个分支. 不确定理论能够对与置信度有关的问题进行建模. 不确定理论用可度量空间(Γ,L)描述问题. 其中,L代表事件的集合,L中的各个元素Λ均由非空集合Γ中的元素构成. 不确定测度M(Λ)表示对Λ的信任程度. 对任意(Γ,L),有:
(9)
在不确定推理中,一条规则表示为:如果Xi对应于σi, 则Y对应于η. 其中,X与Y表示概念,σ与η表示不确定集合. 不确定规则中的前件属性同样是以合取方式连接的. 设输入数据中的Xi为ai,可以计算出各个M(ai∈σi),则该不确定规则的权重c表示为:
(10)
这里,m表示前件属性的总数. 依据规则权重对各规则的后件进行加权平均,即得到不确定推理的结果. 不确定推理的流程与CBRB系统十分类似. 事实上,ER算法被认为是消解证据间冲突和处理不确定信息的一种更具鲁棒性的加权平均算法. 但在规则权重的计算上,不确定理论更注重个体匹配度中的最小值.
在计算规则激活权重时,若采用不确定理论的计算思想,则规则的激活权重与各前件属性个体匹配度间的关系可以表示为:
(11)
事实上,如果直接使用式(11)取代激活权重计算式(4)中的连续相乘操作,得到的推理结果并不理想. 式(11)的不足之处在于完全忽视了规则中其余个体匹配度的作用,使得信息没有得到充分有效的利用. 回到上节2.2中的例子,假设两条数据的个体匹配度分别是{0.3, 0.6, 0.6}和{0.3, 0.8, 0.9},那么前者发生故障的可能性显然比后者要大. 如果直接使用式(11)进行计算,这一差别就不会被体现.
(12)
(13)
将新的规则权重计算方法应用于2.2节中的例子,则前者激活权重为0.6(0.6×0.6)-1=0.24,后者激活权重为0.3(0.8×0.9)-1=0.19. 可见新方法成功区分了两者的激活权重. 再假设后者的个体匹配度为{0.3, 0.6, 0.6},则采用新方法计算出其激活权重为0.3(0.6×0.6)-1=0.03,即随着其与个体匹配度乘积的降低,规则的激活权重也会进一步降低. 与传统的的规则激活权重计算方法相比,新方法同样需要遍历个体匹配度计算乘积,并可以在这一过程中得到个体匹配度最小值. 此外,新方法也不需要更多的空间开销,因此其时空复杂度与旧方法相同.
本研究分别在回归和分类问题上验证新方法的推理能力. 实验环境为:Inter(R) Core(TM) i7-6700 CPU @ 3.40 GHz 3.41 GHz;16 GB内存;Windows 10操作系统;算法实现平台为JetBrains PyCharm Community Edition 2019.1.1 x64;Python版本3.6.5.
输油管道泄露问题数据集来源于一条位于英国的输油管道发生泄漏事故时记录的历史数据. 事故发生时,反映管道泄露大小(leak size,LS)的主要因素为管道输入流量与输出流量的差值(flow difference,FD)以及管道内部的压力差值(pressure difference,PD),基于此,本实验以FD和PD为前件属性,以LS为结果属性进行EBRB系统的构建. 前件属性候选值和结果评价等级均参照文献[9]中的标准设置,由于本实验修正了文献[9]中个体匹配度为负的问题,因此复现结果有所不同. 之后,本实验分别采用文献[9]中的训练方式和十折交叉验证两种方法设计实验. 实验结果评价指标为平均绝对误差(MAE). 实验结果如表1所示.
表1 输油管道泄露问题对比实验
在两个实验结果中,采用本研究提出的规则权重计算方法后EBRB系统回归结果的MAE值相比Liu_EBRB系统分别减少了13.99%和14.12%,本研究方法的改进效果得到了验证.
本研究选取了若干个来自UCI的公共分类数据集,与文献[15]中的部分实验结果进行对比. 各测试数据集的详细信息如表2所示,实验方法均为十折交叉验证. 对于规则库的各项参数,根据每个前件属性的取值范围均匀地设置5个属性候选值,结果评价等级的设置与分类数一致. 实验结果的评价指标为平均分类精度.
表2 其他分类数据集信息
表3列出了本研究方法与传统方法(Liu_EBRB)及其他常用同类方法在10个分类数据集上的对比实验结果. 实验结果中,本研究方法在9个数据集上的推理效果都优于传统方法,在5个数据集上的推理方法达到了第一. 即应用新方法后EBRB系统在大部分数据集上的推理精度都有所提升. 这一结果也说明在许多情况下,最小的个体匹配度与其他个体匹配度相比具有更重要的意义.
表3 分类数据集的分类精度对比
注:表中括号数据为算法推理精度的排名.