正在加载图片...
第6期 陈楠楠,等:基于改进规则激活率的扩展置信规则库推理方法 ·1183· 1.0f女 12)for Rx in Rules do 0.8H 0.6 13)if wa threshod do 14)Rules2.append(R) 0.2 15)end if 0 646a2ta.8t2 00.20.40.60.81.01.21.4 16)end for d 17)return Rules2 图3对应不同σ参数的函数S 2.4EBRB推理方法改进 Fig.3 Function S3 corresponding to different o parameters 以第1节的EBRB框架为基础,结合第 2.3规则零激活处理方法 2.2和2.3节基于规则激活率优化的个体匹配度计 观察式(8),可知个体匹配度连乘得到规则激 算方法以及零激活输入二次处理算法,本节将介 活权重,因此如果有一个属性的个体匹配度计算 绍改进后的扩展置信规则库的推理过程。 结果为零,则对应规则的激活权重为零。当所有 图4为改进后的扩展置信规则库的推理过 规则激活权重都为零时,EBRB系统瘫痪,无法得 程,具体步骤描述如下。 到对应输出结果。 为了解决上述问题,林燕清等2提出新的个 开始 体匹配度计算方法: 输人 S=1/(1+d) (10) =(12,,x) 由式(1)和式(6)可知式(10)中S的取值范 执行二次处理 计算X的置信 算法 围为[1/1+V2),1】,虽然可以解决“零激活”问题, 分布 但S最小值也会超过0.4,这导致激活规则集合 N 执行ER推理 存在严重的不一致性,特别是在规则的条件属性 =1 <规则零激活> 算法 较少的情况下。因此,林燕清等2通过反复迭代 选取最优激活子集的方式来降低不一致性,但这 计算输入与第k条 计算激活权重W 输出推理/ 导致系统的推理效率得不到保障。 规的个体匹配度S 结果y 分析以上问题可以发现,主要原因是因为没 有将发生零激活的输入与正常的输入分开处理。 因此本文提出针对规则零激活的二次处理方法, 结束 结合k近邻思想2,在权衡规则的一致性与完整 性的前提下,解决“零激活”问题。具体实现如算 图4改进的EBRB推理流程 法1所示,其中参数1通过对训练数据进行多则 Fig.4 Improved EBRB inference process 交叉的方式获取。 1)给定输入X=(x,2,…,x),首先根据式 算法1零激活输入二次处理算法 (2)(⑤)计算得X的置信分布表示: 输入产生零激活的输入X=(1,2,…,); a={ai=1,2,…,T,j=1,2,…,J} 输出激活权重前1大的规则集合Rules22。 2)根据式(9)得到该输入与第k条规则对应 1)W=体数组初始化为空*/ 的每个条件属性的个体匹配度: 2)for R in Rules do S*={S(x1,U1),S(x2,U2),…,S(xr,U)》 3)for U,in Ri do 3)循环执行2),得到输入X与规则库中所有 4)calculate similarity of(x,U)/*依据式(9), 规则的个体匹配度; σ取较大值,保证规则全激活*/ 4)以步骤2)、3)得到的结果为基础,按照 5)end for 公式(8)计算出每条规则对应的激活权重,如下 6)calculate wa/*(8)*/ 所示: 7)W.append(w) W(X)=(W(X,W2(X),…,W(X)} 8)end for 5)如果步骤4)中出现规则零激活问题,则执 9)sort(W)(descending) 行步骤6):否则执行步骤7): 10)threshod WTt] 6)执行2.3节提出的二次处理算法,重新计 11)Rules2=[ 算个体匹配度,并且只选择激活权重前1大的规1.0 0.8 0.6 0.4 S 0.2 0.6 0.8 d σ=0.1 σ=0.3 σ=0.5 σ=0.7 σ=0.9 0 0 0.2 0.4 1.0 1.2 1.4 图 3 对应不同 σ 参数的函数 S3 Fig. 3 Function S3 corresponding to different σ parameters 2.3 规则零激活处理方法 观察式 (8),可知个体匹配度连乘得到规则激 活权重,因此如果有一个属性的个体匹配度计算 结果为零,则对应规则的激活权重为零。当所有 规则激活权重都为零时,EBRB 系统瘫痪,无法得 到对应输出结果。 为了解决上述问题,林燕清等[26] 提出新的个 体匹配度计算方法: S k i = 1/(1+d k i ) (10) S k i [1/(1+ √ 2),1] S k i 由式 (1) 和式 (6) 可知式 (10) 中 的取值范 围为 ,虽然可以解决“零激活”问题, 但 最小值也会超过 0.4,这导致激活规则集合 存在严重的不一致性,特别是在规则的条件属性 较少的情况下。因此,林燕清等[26] 通过反复迭代 选取最优激活子集的方式来降低不一致性,但这 导致系统的推理效率得不到保障。 分析以上问题可以发现,主要原因是因为没 有将发生零激活的输入与正常的输入分开处理。 因此本文提出针对规则零激活的二次处理方法, 结合 k 近邻思想[28] ,在权衡规则的一致性与完整 性的前提下,解决“零激活”问题。具体实现如算 法 1 所示,其中参数 t 通过对训练数据进行多则 交叉的方式获取。 算法 1 零激活输入二次处理算法 输入 产生零激活的输入 X = (x1, x2,··· , xT ) ; 输出 激活权重前 t 大的规则集合 Rules2 。 1) W = [] /*数组初始化为空*/ 2) for Rk in Rules do 3) for Ui in Rk do 4) calculate similarity of (xi ,Ui ) /*依据式 (9), σ 取较大值, 保证规则全激活*/ 5) end for 6) calculate wk /*式 (8)*/ 7) W.append(wk ) 8) end for 9) sort(W) (descending) 10) threshod = W[t] 11) Rules2 = [] 12) for Rk in Rules do 13) if wk > threshod do 14) Rules2.append(Rk ) 15) end if 16) end for 17) return Rules2 2.4 EBRB 推理方法改进 以 第 1 节 的 EBRB 框架为基础,结合 第 2.2 和 2.3 节基于规则激活率优化的个体匹配度计 算方法以及零激活输入二次处理算法,本节将介 绍改进后的扩展置信规则库的推理过程。 图 4 为改进后的扩展置信规则库的推理过 程,具体步骤描述如下。 开始 输入 X=(x1 , x2 , …, xT) k=1 k<L Y N 计算X的置信 分布 计算输入与第k条 规的个体匹配度Sk 结束 计算激活权重W 规则零激活 执行ER推理 算法 输出推理 结果y 执行二次处理 算法 k+=1 N Y 图 4 改进的 EBRB 推理流程 Fig. 4 Improved EBRB inference process 1) 给定输入 X = (x1, x2,··· , xT ) ,首先根据 式 (2)~(5) 计算得 X 的置信分布表示: α = { αi j ,i = 1,2,··· ,T, j = 1,2,··· , Ji } 2) 根据式 (9) 得到该输入与第 k 条规则对应 的每个条件属性的个体匹配度: S k = {S k 1 (x1,U1),S k 2 (x2,U2),··· ,S k T (xT ,UT )} 3) 循环执行 2),得到输入 X 与规则库中所有 规则的个体匹配度; 4) 以步骤 2)、3) 得到的结果为基础,按照 公式 (8) 计算出每条规则对应的激活权重,如下 所示: W(X) = {W1(X),W2(X),··· ,WL(X)} 5) 如果步骤 4) 中出现规则零激活问题,则执 行步骤 6);否则执行步骤 7); 6) 执行 2.3 节提出的二次处理算法,重新计 算个体匹配度,并且只选择激活权重前 t 大的规 第 6 期 陈楠楠,等:基于改进规则激活率的扩展置信规则库推理方法 ·1183·
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有