
魏 玲,博士,教授,主要研究方向为形式概念分析、粗糙集、三支决策、粒计算.E-mail:wl@nwu.edu.cn.
作者简介:

刘 君,硕士研究生,主要研究方向为形式概念分析、三支概念分析.E-mail:L13072948276@163.com.

王 啸,博士研究生,主要研究方向为形式概念分析、三支概念分析、粒计算.E-mail:w19513389739@163.com.

李嘉蔚,硕士研究生,主要研究方向为形式概念分析、三支概念分析、神经网络.E-mail:kagiroicn@gmail.com.
三元概念分析作为形式概念分析的三维扩展,以三元概念为基本单元,实现对三维数据的知识发现.当数据动态变化时,三元概念的更新不可避免,若重新计算所有的三元概念,时间复杂度较高,而三元背景的动态变化本质上是三元关系的改变.为此,文中给出三元背景中增加对象-属性-条件三元组时三元概念的更新方法.首先,将新增三元组的8种不同情况归并为3种更新类型.然后,引入三元背景诱导的形式背景及其形式概念,结合待选集,分别给出各种情况下三元概念的更新方法.最后,给出相应的三元概念更新算法,并通过实验验证文中算法的有效性.
WEI Ling, Ph.D., professor. Her research interests include formal concept analysis, rough sets, three-way decision and granular computing.
About Author:
LIU Jun, Master student. Her research interests include formal concept analysis and three-way concept analysis.
WANG Xiao, Ph.D. candidate. His research interests include formal concept analysis, three-way concept analysis and granular computing.
LI Jiawei, Master student. His research interests include formal concept analysis, three-way concept analysis and neural networks.
Triadic concept analysis, as a three-dimensional extension of formal concept analysis, takes triadic concepts as its basic units to enable knowledge discovery in three-dimensional data. When the data change dynamically, the update of triadic concepts is inevitable. However, the recomputation of all triadic concepts is time-consuming. Since dynamic changes in a triadic context essentially involve the alterations in triadic relations, a method for triadic concept updating when an object-attribute-condition triple is added to the triadic context is proposed. First, eight distinct scenarios of the newly added triple are classified into three updating types. Then, a formal context induced by the triadic context and its formal concepts are introduced and combined with the candidate set. The updating methods for triadic concepts in various cases are presented. Finally, an algorithm for updating triadic concepts is developed, and experiments are conducted to verify the effectiveness of the proposed algorithm.
形式概念分析(Formal Concept Analysis, FCA)是Wille[1, 2]于1982年提出的数据分析与知识发现方法.该方法以形式背景为基础, 通过对象与属性间的二元关系构建形式概念.近年来, FCA的理论体系与应用场景持续拓展[3], 已广泛应用于概念认知[4]、知识发现[5]、数据挖掘[6]、推荐系统[7]、软件工程[8]等相关领域.
为了拓展FCA理论, Lehmann等[9]提出一种新的数据分析方法— — 三元概念分析(Triadic Concept Analysis, TCA).TCA旨在解决日益增长的三维数据分析需求, 其理论基础源于皮尔斯范畴三分理论, 核心研究对象是由对象集、属性集、条件集及它们之间的三元关系构成的三元背景.在此基础上, Lehmann等[9]定义对象集、属性集和条件集之间的诱导算子, 生成三元概念.三元概念分析不仅继承并推广FCA的理论方法, 更成为处理和分析三维关联数据的重要框架之一.
近年来, TCA在理论与应用层面持续发展, 已积累较多研究成果, 如三元蕴含及关联规则挖掘[10, 11]、三元概念约简[12, 13]、三元背景的简化及约简[14, 15]、三元概念分析的应用[16, 17]、三元概念的构造方法[18, 19]等.魏玲等[20]对2014年以前的三元概念分析研究现状与发展趋势进行梳理.随后, 在三元概念的构造方面, 针对三元概念枚举法计算量较大的问题, 学者们尝试从不同的角度构造三元概念.王冰洁等[21]提出概念三元格渐进式构造算法, 王霞等[22]从对象-条件三元概念出发, 构造三元概念.在此基础上, 李谦等[18]基于三元粒概念获取三元概念, 王啸等[19]提出基于待选集的三元概念构造方法.然而, 现有三元概念构造方法主要面向静态三元背景, 未充分考虑三维数据在实际应用中的动态变化.当三元背景发生变化时, 若采用现有的静态算法直接计算三元概念, 时间成本较高.
三元背景的动态变化本质上是三元关系的改变, 因此本文研究在三元背景中增加对象-属性-条件三元组时, 三元概念的更新方法.根据新增三元组分量ai与Ki(i=1, 2, 3)的从属关系, 将更新情况划分为8类.首先, 针对K1、K2、K3保持不变的情况给出原三元概念保持不变的充要条件及新三元概念生成的判定定理.再针对K1、K2、K3单维度扩展的情况给出三元概念更新方法, 进一步利用更新前后待选集之间的关系优化更新方法, 加快更新速度.然后, 针对K1、K2、K3多维度扩展的情况给出三元概念更新方法.最后, 给出相应的三元概念更新算法, 并通过实验验证算法的有效性.
定义1[1] 称(G, M, I)为形式背景, 其中, G={x1, x2, …, xp}为对象集, 每个xi(i≤ p)称为一个对象; M={a1, a2, …, aq}为属性集, 每个aj(j≤ q)称为一个属性; I为G和M之间的二元关系, I⊆G× M.若(x, a)∈ I, 表示对象x具有属性a, 记为xIa.
在形式背景(G, M, I)中, 对于任意对象子集X⊆G和属性子集B⊆M, Wille[1]定义一对导出算子:X中所有对象共同具有的属性集合
X* ={a∈ M|∀ x∈ X, xIa}
和共同具有B中所有属性的对象集合
B* ={x∈ G|∀ a∈ B, xIa}.
如果一个二元组(X, B)满足X* =B且X=B* , 则称(X, B)是一个形式概念, 其中, X称为概念的外延, B称为概念的内涵.
使用L(G, M, I)表示形式背景(G, M, I)的全体概念, 定义
(X1, B1)⩽(X2, B2) ⇔ X1⊆X2(⇔ B1⊇B2),
则⩽为L(G, M, I)上的偏序关系, 从而(L(G, M, I), ⩽)为偏序集, 且L(G, M, I)为完备格, 称为(G, M, I)的概念格[2].上、下确界为:
$ \begin{array}{l} \underset{t \in T}{\bigvee}\left(X_{t}, B_{t}\right)=\left(\left(\cup_{t \in T} X_{t}\right)^{* * }, \cap_{t \in T} B_{t}\right), \\ \wedge_{t \in T}\left(X_{t}, B_{t}\right)=\left(\cap_{t \in T} X_{t}, \left(\cup_{t \in T} B_{t}\right)^{* * }\right), \end{array}$
其中T为指标集.
性质1[2] 设(G, M, I)为形式背景, ∀ X⊆G, X1⊆G, X2⊆G, ∀ B⊆M, B1⊆M, B2⊆M, 如下性质成立:
1)X1⊆X2 ⇒
B1⊆B2⇒
2)X⊆X* * , B⊆B* * ;
3)X* =X* * * , B* =B* * * ;
4)(X1∪ X2)* =
(B1∪ B2)* =
5)(X1∩ X2)* ⊇
(B1∩ B2)* ⊇
下面给出形式背景中增加对象-属性二元对(h, n), h∈ G, n∉M时形式概念的更新方法.
引理1 设(G, M, I)为形式背景, 在(G, M, I)上增加对象-属性二元对(h, n), h∈ G, n∉M, 更新后的形式背景为(G, M∪ {n}, I∪ {(h, n)}), 导出算子记为* '.则对于∀ (X, B)∈ L(G, M, I), 如下结论成立:
1)若X⊄{h}, 则(X, B)∈ L(G, M∪ {n}, I∪ {(h, n)});
2)若X⊆{h}, 则(X, B∪ {n})∈ L(G, M∪ {n}, I∪ {(h, n)});
3)({h}, {h}* ')∈ L(G, M∪ {n}, I∪ {(h, n)}).
证明略.
定义2[9] 称(K1, K2, K3, Y)为一个三元背景, 其中, K1={g1, g2, …, gp}为对象集, 每个gi(i≤ p)称为一个对象; K2={m1, m2, …, mq}为属性集, 每个mj(j≤ q)称为一个属性; K3={b1, b2, …, br}为条件集, 每个bk(k≤ r)称为一个条件; Y为K1、K2和K3之间的三元关系, Y⊆K1× K2× K3.若(g, m, b)∈ Y, 表示对象g在条件b下具有属性m.
定义3[11] 设K=(K1, K2, K3, Y)为三元背景, 称
K(1)=(K1, K2× K3, Y(1)),
K(2)=(K2, K1× K3, Y(2)),
K(3)=(K3, K1× K2, Y(3))
为K诱导的3个形式背景, 其中, 对于∀ g∈ K1, m∈ K2, b∈ K3, 有
gY(1)(m, b) ⇔ mY(2)(g, b) ⇔ bY(3)(g, m) ⇔ (g, m, b)∈ Y.
定义4[9] 设K=(K1, K2, K3, Y)为三元背景, 其中, {i, j, k}={1, 2, 3}且j< k.对于∀ X⊆Ki, Z⊆Kj× Kk, 定义(i)-诱导算子如下:
$\begin{array}{l} X^{(i)}=\left\{\left(a_{j}, a_{k}\right) \in K_{j} \times K_{k} \mid\left(a_{i}, a_{j}, a_{k}\right) \in Y, \forall a_{i} \in X\right\}, \\ Z^{(i)}=\left\{a_{i} \in K_{i} \mid\left(a_{i}, a_{j}, a_{k}\right) \in Y, \forall\left(a_{j}, a_{k}\right) \in Z\right\} . \end{array}$
定义5[9] 设K=(K1, K2, K3, Y)为三元背景, Ai⊆Ki, i=1, 2, 3.若满足
Ai=
其中, {i, j, k}={1, 2, 3}且j< k, 则称(A1, A2, A3)为三元背景K的三元概念, 并称A1为外延, A2为内涵, A3为方式.记K中所有三元概念构成的集合为T(K).
若对于∀ x∈ Ki, 都有
x(i)≠ Kj× Kk,
其中, {i, j, k}={1, 2, 3}且j< k, 则称K为正则三元背景.对正则三元背景K, 有[19]
$\left(K_{1}, K_{2}, \emptyset\right) \in T(K), \left(K_{1}, \emptyset, K_{3}\right) \in T(K), \left(\emptyset, K_{2}, K_{3}\right) \in T(K).$
本文讨论的三元背景都是正则的.
文献[19]提出外延待选集、内涵待选集、方式待选集及基于相应待选集的三元概念构造方法.下面仅给出外延角度的相关定义和结论.
定义6[19] 设K=(K1, K2, K3, Y)为三元背景,
K(1)=(K1, K2× K3, Y(1))
为K诱导的形式背景, (X, B)∈ L(K(1)),
$E C(X)=\left\{\bigcap_{E \in A} E \mid A \subseteq B_{K_{3}}^{X}, A \neq \emptyset\right\}$
为X的外延待选集.
引理2[19] 设K=(K1, K2, K3, Y)为三元背景,
K(1)=(K1, K2× K3, Y(1))
为K诱导的形式背景, (X, B)∈ L(K(1)).若
则(X, A, (X× A)(3))∈ T(K), 其中A∈ EC(X).
引理3[19] 设K=(K1, K2, K3, Y)为三元背景, (A1, A2, A3)∈ T(K), K(1)=(K1, K2× K3, Y(1))为K诱导的形式背景, 则存在(X, B)∈ L(K(1)), 使得
(X, A, (X× A)(3))=(A1, A2, A3),
其中A∈ EC(X).
为了简单起见, 本文将三元概念中的一般集合表示为其元素的序列.例如:对象子集{1}简写为1, 属性子集{a, d}简写为ad, 条件子集{A, B}简写为AB.
例1表1是一个三元背景K=(K1, K2, K3, Y), 其中, K1={1, 2, 3}为对象集, K2={a, b, c, d}为属性集, K3={A, B, C}为条件集.
| 表1 三元背景K=(K1, K2, K3, Y) Table 1 Triadic context K=(K1, K2, K3, Y) |
由定义5得该三元背景的所有三元概念如下:
(12, a, A), (23, c, C), (1, a, ABC), (1, abd, A), (1, ad, AB), (3, b, AB), (3, abd, B), (3, cd, C), (3, d, BC), (13, b, A), (13, ad, B), (2, ac, A), (2, c, ABC), (2, bc, C), (K1, K2, Ø ), (K1, Ø , K3), (Ø , K2, K3).
该三元背景诱导的形式背景K(1)中的形式概念如下:
(12, (a, A)), (23, (c, C)),
(13, (b, A)(a, B)(d, B)),
(1, (a, A)(b, A)(d, A)(a, B)(d, B)(a, C)),
(2, (a, A)(c, A)(c, B)(b, C)(c, C)),
(3, (b, A)(a, B)(b, B)(d, B)(c, C)(d, C)), (K1, Ø ), (Ø , K2× K3).
由定义6知, 外延1对应
外延3对应
在三元背景(K1, K2, K3, Y)上增加对象-属性-条件三元组(a1, a2, a3)时, 根据新增三元组分量ai与Ki(i=1, 2, 3)的从属关系, 可分为8种情况:
$\begin{array}{l} a_{1} \in K_{1}, a_{2} \in K_{2}, a_{3} \in K_{3} ; \\ a_{1} \in K_{1}, a_{2} \notin K_{2}, a_{3} \in K_{3} ; \\ a_{1} \in K_{1}, a_{2} \in K_{2}, a_{3} \notin K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \in K_{2}, a_{3} \in K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \notin K_{2}, a_{3} \in K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \in K_{2}, a_{3} \notin K_{3} ; \\ a_{1} \in K_{1}, a_{2} \notin K_{2}, a_{3} \notin K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \notin K_{2}, a_{3} \notin K_{3} . \end{array}$
结合各种情况下三元背景的对象集、属性集、条件集是否发生扩展, 将上述8类情况进一步归为3种更新类型.
1)类型1.K1、K2、K3保持不变, 即三者均无新增元素, 仅增加三元组.
2)类型2.K1、K2、K3单维度扩展, 即三者中一个集合有新增元素及相关三元组.
3)类型3.K1、K2、K3多维度扩展, 即三者中有两个或三个集合同时新增元素及相关三元组.
下文将针对3种更新类型, 分别给出三元概念的动态更新方法.
下面给出后文所需记号.在三元背景K=(K1, K2, K3, Y)上增加对象-属性-条件三元组(a1, a2, a3)后, 记新三元背景为K'=(K'1, K'2, K'3, Y'), 其诱导算子为(i)', 诱导的形式背景为K'(1)、K'(2)、K'(3).设(X, B)∈ L(K'(1)), 记B
当三元背景的对象集、属性集与条件集保持不变时, 增加三元组仅对三元关系进行局部调整.该情况下的三元概念更新核心在于判断原三元背景中的三元概念是否仍为新三元背景的三元概念, 同时识别新增三元组衍生的新三元概念.
定理1 设K=(K1, K2, K3, Y)为三元背景, (A1, A2, A3)∈ T(K).若在K上增加对象-属性-条件三元组(a1, a2, a3), ai∈ Ki, i=1, 2, 3, 即更新后的三元背景为
K'=(K1, K2, K3, Y∪ {(a1, a2, a3)}),
则(A1, A2, A3)∈ T(K')当且仅当如下3个条件同时成立:
1)若a1∉A1, 则存在(y, z)∈ A2× A3且(y, z)≠ (a2, a3), 使得(a1, y, z)∉Y;
2)若a2∉A2, 则存在(x, z)∈ A1× A3且(x, z)≠ (a1, a3), 使得(x, a2, z)∉Y;
3)若a3∉A3, 则存在(x, y)∈ A1× A2且(x, y)≠ (a1, a2), 使得(x, y, a3)∉Y.
证明 因为(A1, A2, A3)∈ T(K), 由定义5知,
A1={x∈ K1|∀ y∈ A2, ∀ z∈ A3, (x, y, z)∈ Y},
A2={y∈ K2|∀ x∈ A1, ∀ z∈ A3, (x, y, z)∈ Y},
A3={z∈ K3|∀ x∈ A1, ∀ y∈ A2, (x, y, z)∈ Y}.
假设
A'1={x∈ K1|∀ y∈ A2, ∀ z∈ A3, (x, y, z)∈ Y'},
A'2={y∈ K2|∀ x∈ A1, ∀ z∈ A3, (x, y, z)∈ Y'},
A'3={z∈ K3|∀ x∈ A1, ∀ y∈ A2, (x, y, z)∈ Y'},
即(A1, A2, A3)∈ T(K')当且仅当
A'1=A1, A'2=A2, A'3=A3.
必要性.考虑a1∉A1的情况.假设(A1, A2, A3)∈ T(K'), 则有A'1=A1, 即a1∉A'1, 故存在(y, z)∈ A2× A3, 使得(a1, y, z)∉Y'.又因为
Y'=Y∪ {(a1, a2, a3)}
且
(a1, y, z)≠ (a1, a2, a3),
因此(y, z)≠ (a2, a3)且(a1, y, z)∉Y, 即条件1) 成立.条件2)、3) 同理可证.
充分性.下证A'1=A1.因为Y⊆Y', 显然有A1⊆A'1, 故只需证A'1⊆A1.任取x∈ A'1, 假设x∉A1, 则必有x=a1且a1∉A1.由条件1)可知, 存在(y, z)∈ A2× A3且
(y, z)≠ (a2, a3),
使得(a1, y, z)∉Y.又因为
(a1, y, z)≠ (a1, a2, a3),
所以(a1, y, z)∉Y', 与a1∈ A'1矛盾.因此A'1⊆A1.同理可证
A'2=A2, A'3=A3.
综上所述, (A1, A2, A3)∈ T(K')当且仅当条件1)、2)、3) 同时成立.
定理1给出更新三元背景后三元概念保持不变的充要条件, 明确三元背景K=(K1, K2, K3, Y)增加三元组(a1, a2, a3), ai∈ Ki, i=1, 2, 3时, 原三元背景上的三元概念(A1, A2, A3)在新三元背景
K'=(K1, K2, K3, Y∪ {(a1, a2, a3)})
中保持不变的判定准则.
记K'中包含三元组(a1, a2, a3)的三元概念的集合:
X={(A1, A2, A3)∈ T(K')|ai∈ Ai, i=1, 2, 3}.
定理2 设K=(K1, K2, K3, Y)为三元背景, 若在K上增加对象-属性-条件三元组(a1, a2, a3), ai∈ Ki, i=1, 2, 3, 则更新后的三元背景为
K'=(K1, K2, K3, Y∪ {(a1, a2, a3)}).
对于任意满足
$\left\{a_{1}\right\}^{(1)^{\prime}(1)^{\prime}} \subseteq X \subseteq\left\{\left(a_{2}, a_{3}\right)\right\}^{(1)^{\prime}}$
且X=X(1)'(1)'的集合X, 若
$\left(A^{\prime} \times\left(X \times A^{\prime}\right)^{(3)^{\prime}}\right)^{(1)^{\prime}}=X, $
则
(X, A', (X× A')(3)')∈ T(K'),
其中A'∈ EC'(X).记I 为满足上述条件的三元概念全体, 则有X⊆I.
证明 因为
X=X(1)'(1)',
所以(X, X(1)')∈ L(K'(1)).由引理2可得, 若
$\left(A^{\prime} \times\left(X \times A^{\prime}\right)^{(3)^{\prime}}\right)^{(1)^{\prime}}=X\left(A^{\prime} \in E C^{\prime}(X)\right), $
则
(X, A', (X× A')(3)')∈ T(K').
取(A1, A2, A3)∈ T(K')且满足ai∈ Ai, i=1, 2, 3.由于
A1=
因此有
$\begin{aligned} \left\{a_{1}\right\}^{(1)^{\prime}(1)^{\prime}} \subseteq & \left(A_{2} \times A_{3}\right)^{(1)^{\prime}(1)^{\prime}(1)^{\prime}}= \\ & \left(A_{2} \times A_{3}\right)^{(1)^{\prime}} \subseteq\left\{\left(a_{2}, a_{3}\right)\right\}^{(1)^{\prime}}, \end{aligned}$
即
$\left\{a_{1}\right\}^{(1)^{\prime}(1)^{\prime}} \subseteq A_{1} \subseteq\left\{\left(a_{2}, a_{3}\right)\right\}^{(1)^{\prime}}$.
又由于(A1, A2, A3)∈ T(K'), 因此有A1=
定理2给出三元背景K=(K1, K2, K3, Y)中增加三元组(a1, a2, a3), ai∈ Ki, i=1, 2, 3时, 三元概念新增的情况, 且K'中所有包含三元组(a1, a2, a3)的三元概念的集合为该定理确定的三元概念集合的子集.
因为K'只在K的基础上新增一个三元组(a1, a2, a3), 所以新增的三元概念都必然包含该三元组.因此, 定理1和定理2确保该更新方法的完备性, 即可获取K'中的全部三元概念.
例2(续例1) 表2是表1增加对象-属性-条件三元组(3, d, A)后的三元背景
K'=(K1, K2, K3, Y∪ {(3, d, A)}),
其中新增的三元组使用下划线标注.
| 表2 三元背景K'=(K1, K2, K3, Y∪ {(3, d, A)}) Table 2 Triadic context K'=(K1, K2, K3, Y∪ {(3, d, A)}) |
令
(A1, A2, A3)=(13, ad, B)∈ T(K),
显然3∈ {1, 3}且d∈ {a, d}, 则定理1中条件1)、2) 自动成立, 又A∉{B}, 存在
(3, a)∈ {1, 3}× {a, d}
且
(3, a)≠ (3, d),
使得(3, a, A)∉Y, 则定理1中条件3) 成立, 故由定理1知(13, ad, B)∈ T(K').同理可得
$\begin{array}{l} (12, a, A), (23, c, C), (1, a, A B C), \\ (1, a b d, A), (1, a d, A B), (3, a b d, B), \\ (3, c d, C), (2, a c, A), (2, c, A B C), \\ (2, b c, C), \left(K_{1}, K_{2}, \emptyset\right), \left(K_{1}, \emptyset, K_{3}\right), \\ \left(\emptyset, K_{2}, K_{3}\right) \end{array}$
仍是新三元背景K'的三元概念.
本例中
$\begin{array}{l} \left\{a_{1}\right\}^{(1)^{\prime}(1)^{\prime}}=\{3\}^{(1)^{\prime}(1)^{\prime}}=\{3\}, \\ \left\{\left(a_{2}, a_{3}\right)\right\}^{(1)^{\prime}}=\{(d, A)\}^{(1)^{\prime}}=\{1, 3\}, \end{array}$
因此
{3}⊆X⊆{1, 3}.
令
X1={3}, X2={1, 3},
此时
X1=
由K'诱导的形式背景
K'(1)=(K1, K2× K3, Y(1)∪ {(3, (d, A))})
上外延为X1、X2的形式概念分别为
(3, (b, A)(d, A)(a, B)(b, B)(d, B)(c, C)(d, C)), (13, (b, A)(d, A)(a, B)(d, B)),
则
$\begin{array}{l} E C^{\prime}\left(X_{1}\right)=\{b d, a b d, c d, d\}, \\ E C^{\prime}\left(X_{2}\right)=\{b d, a d, d\}, \end{array}$
由定理2有
{(3, bd, AB), (3, abd, B), (3, cd, C), (3, d, ABC)}⊆T(K'),
同理
{(13, bd, A), (13, ad, B), (13, d, AB)}⊆T(K').
因此新三元背景
K'=(K1, K2, K3, Y∪ {(3, d, A)})
的所有三元概念如下:
$\begin{array}{l} (12, a, A), (23, c, C), (1, a, A B C), (1, a b d, A), \\ (1, a d, A B), (3, b d, A B), (3, a b d, B), (3, c d, C), \\ (3, d, A B C), (13, b d, A), (13, a d, B), (13, d, A B), \\ (2, a c, A), (2, c, A B C), (2, b c, C), \left(K_{1}, K_{2}, \emptyset\right), \\ \left(K_{1}, \emptyset, K_{3}\right), \left(\emptyset, K_{2}, K_{3}\right) . \end{array}$
定理2从外延待选集出发, 给出增加三元组(a1, a2, a3), ai∈ Ki, i=1, 2, 3时, 三元概念新增的判定方法, 由于K1、K2和K3在三元背景上地位的平等性, 故也可从内涵待选集和方式待选集出发, 考虑三元概念的新增.下面定理3和定理4的证明与定理2的证明类似, 故省略.
定理3 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), ai∈ Ki, i=1, 2, 3, 即更新后的三元背景
K'=(K1, K2, K3, Y∪ {(a1, a2, a3)}).
对于任意满足
$\left\{a_{2}\right\}^{(2)^{\prime}(2)^{\prime}} \subseteq X \subseteq\left\{\left(a_{1}, a_{3}\right)\right\}^{(2)^{\prime}}$
且X=X(2)'(2)'的集合X, 若
$\left(\left(X \times A^{\prime}\right)^{(1)^{\prime}} \times A^{\prime}\right)^{(2)^{\prime}}=X, $
则
((X× A')(1)', X, A')∈ T(K'),
其中A'∈ IC'(X).记I为满足上述条件的三元概念全体, 则有X⊆I.
定理4 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), ai∈ Ki, i=1, 2, 3, 即更新后的三元背景
K'=(K1, K2, K3, Y∪ {(a1, a2, a3)}).
对于任意满足
$\left\{a_{3}\right\}^{(3)^{\prime}(3)^{\prime}} \subseteq X \subseteq\left\{\left(a_{1}, a_{2}\right)\right\}$
且X=X(3)'(3)'的集合X, 若
$\left(A^{\prime} \times\left(A^{\prime} \times X\right)^{(2)^{\prime}}\right)^{(3)^{\prime}}=X, $
则
(A', (A'× X)(2)', X)∈ T(K'),
其中A'∈ MC'(X).记I为满足上述条件的三元概念全体, 则有X⊆I.
本节讨论类型1, 即K1、K2、K3保持不变(a1∈ K1, a2∈ K2, a3∈ K3)时三元概念的更新.该类型下对象集、属性集与条件集均不发生扩张, 仅对三元关系进行局部调整.其中, 定理1用于判断原三元概念是否保留, 定理2~定理4从不同角度给出新增三元概念的生成依据.
三元背景中增加对象-属性-条件三元组引发单维度扩展时, 诱导的形式背景中的二元对也会产生相应的变化, 并且待选集也会相应改变.因此, 本节从诱导的形式背景的形式概念的更新出发, 考虑由其引起的待选集的更新, 进而探讨三元背景变化时三元概念的更新.
性质2 设K=(K1, K2, K3, Y)为三元背景, 在K上增加对象-属性-条件三元组(a1, a2, a3), 更新后的三元背景记为K'=(K'1, K'2, K'3, Y').若ai∉Ki, aj∈ Kj, ak∈ Kk, 其中
{i, j, k}={1, 2, 3}
且j< k, 则对于∀ Ai⊆Ki, Aj⊆Kj, Ak⊆Kk, 有
$\begin{array}{l} A_{i}^{(i)}=A_{i}^{(i)^{\prime}}, \\ \left(A_{i} \times A_{k}\right)^{(j)}=\left(A_{i} \times A_{k}\right)^{(j)^{\prime}}, \\ \left(A_{i} \times A_{j}\right)^{(k)}=\left(A_{i} \times A_{j}\right)^{(k)^{\prime}}, \\ \left\{a_{i}\right\}^{(i)^{\prime}}=\left\{\left(a_{j}, a_{k}\right)\right\}, \\ \left\{\left(a_{j}, a_{k}\right)\right\}^{(i)^{\prime}}=\left\{\left(a_{j}, a_{k}\right)\right\}^{(i)} \cup\left\{a_{i}\right\} . \end{array}$
证明 设i=2, j=1, k=3, 则
K'=(K1, K2∪ {a2}, K3, Y∪ {(a1, a2, a3)}).
先证
$\begin{array}{l} A_{2}^{(2)}=\left\{\left(b_{1}, b_{3}\right) \in K_{1} \times K_{3} \mid \forall x \in A_{2}, \left(b_{1}, x, b_{3}\right) \in Y\right\}, \\ A_{2}^{(2)^{\prime}}=\left\{\left(b_{1}, b_{3}\right) \in K_{1} \times K_{3} \mid \forall x \in A_{2}, \left(b_{1}, x, b_{3}\right) \in Y^{\prime}\right\} . \end{array}$
由于对∀ x∈ A2⊆K2, 有x≠ a2, 因此
$\forall x \in A_{2}, \left(b_{1}, x, b_{3}\right) \in Y^{\prime} \Leftrightarrow \forall x \in A_{2}, \left(b_{1}, x, b_{3}\right) \in Y, $
故
A(2)2 =A(2)'2 .
同理可证,
$\begin{array}{l} \left(A_{2} \times A_{3}\right)^{(1)}=\left(A_{2} \times A_{3}\right)^{(1)^{\prime}}, \\ \left(A_{1} \times A_{2}\right)^{(3)}=\left(A_{1} \times A_{2}\right)^{(3)^{\prime}} . \end{array}$
由于a2为新增属性, 即Y'中第二分量为a2的三元组仅有(a1, a2, a3), 由此可得
$\begin{array}{l} \left\{a_{2}\right\}^{(2)^{\prime}}=\left\{\left(a_{1}, a_{3}\right)\right\}, \\ \left\{\left(a_{1}, a_{3}\right)\right\}^{(2)^{\prime}}=\left\{\left(a_{1}, a_{3}\right)\right\}^{(2)} \cup\left\{a_{2}\right\} . \end{array}$
性质2给出三元背景K=(K1, K2, K3, Y)增加三元组(a1, a2, a3)(仅存在一个分量不属于相应Ki(i=1, 2, 3)时, 原三元背景与新三元背景诱导算子之间的关系.
当三元背景K=(K1, K2, K3, Y)增加三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3时, 由定义6和引理1可知, K(1)中形式概念(X, B)对应的|
当正则三元背景K=(K1, K2, K3, Y)增加三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3时, 三元背景的正则性不发生改变.因此, 可先考虑K上含空集的三元概念的更新, 即(K1, K2, Ø )更新为(K1, K2∪ {a2}, Ø ), (K1, Ø , K3)仍是新三元背景的三元概念, (Ø , K2, K3)更新为(Ø , K2∪ {a2}, K3).
定理5 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3, 即更新后的三元背景
K'=(K1, K2∪ {a2}, K3, Y∪ {(a1, a2, a3)}),
则对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 下列结论成立:
1)若A1≠ {a1}, 则(A1, A2, A3)∈ T(K');
2)若A1={a1}且
$\left(A^{\prime} \times\left(A_{1} \times A^{\prime}\right)^{(3)^{\prime}}\right)^{(1)^{\prime}}=A_{1}, A^{\prime} \in E C^{\prime}\left(A_{1}\right), $
则
$\left(A_{1}, A^{\prime}, \left(A_{1} \times A^{\prime}\right)^{(3)^{\prime}}\right) \in T\left(K^{\prime}\right)$
3)$\left(a_{1}, \left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}}, a_{3}\right) \in T\left(K^{\prime}\right) .$
证明 取(A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 则由引理3可知, 存在(X, B)∈ L(K(1)), 使得
(X, A, (X× A)(3))=(A1, A2, A3),
其中A∈ EC(X).
1)因为A1≠ {a1}, 所以X≠ {a1}.根据引理1, 有(X, B)∈ L(K'(1)), 即
B
故有A∈ EC'(X).由性质2知
$\left(A \times(X \times A)^{(3)^{\prime}}\right)^{(1)^{\prime}}=\left(A \times(X \times A)^{(3)}\right)^{(1)}=X, $
因此根据引理2, 有
(X, A, (X× A)(3)')=(A1, A2, A3)∈ T(K').
2)因为A1={a1}, 所以X={a1}.根据引理1, 有
(X, B∪ {(a2, a3)})∈ L(K'(1)).
若
$\left(A^{\prime} \times\left(X \times A^{\prime}\right)^{(3)^{\prime}}\right)^{(1)^{\prime}}=X, $
其中A'∈ EC'(X), 则有
$\begin{array}{l} \left(X, A^{\prime}, \left(X \times A^{\prime}\right)^{(3)^{\prime}}\right)= \left(A_{1}, A^{\prime}, \left(A_{1} \times A^{\prime}\right)^{(3)^{\prime}}\right) \in T\left(K^{\prime}\right) . \end{array}$
3)要证
$\left(a_{1}, \left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}}, a_{3}\right) \in T\left(K^{\prime}\right), $
需证
$\begin{array}{l} \left\{a_{1}\right\}=\left(\left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}} \times\left\{a_{3}\right\}\right)^{(1)^{\prime}}, \\ \left\{a_{3}\right\}=\left(\left\{a_{1}\right\} \times\left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}}\right)^{(3)^{\prime}}, \end{array}$
其中
$\begin{array}{l} \left(\left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}} \times\left\{a_{3}\right\}\right)^{(1)^{\prime}}= \\ \left(\left(\left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)} \cup\left\{a_{2}\right\}\right) \times\left\{a_{3}\right\}\right)^{(1)^{\prime}}= \\ \left(\left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)} \times\left\{a_{3}\right\}\right)^{(1)^{\prime}} \cap\left(\left\{a_{2}\right\} \times\left\{a_{3}\right\}\right)^{(1)^{\prime}}= \\ \left(\left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)} \times\left\{a_{3}\right\}\right)^{(1)} \cap\left\{a_{1}\right\}=\left\{a_{1}\right\} \end{array}$
同理可证
$\left\{a_{3}\right\}=\left(\left\{a_{1}\right\} \times\left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}}\right)^{(3)^{\prime}} .$
定理5给出三元背景K=(K1, K2, K3, Y)增加三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3时三元概念的更新规律.若原三元背景上的三元概念(A1, A2, A3)的外延不等于{a1}, 则该三元概念仍是新三元背景
K'=(K1, K2∪ {a2}, K3, Y∪ {(a1, a2, a3)})
的三元概念; 若原三元背景上的三元概念(A1, A2, A3)的外延等于{a1}, 则该三元概念的更新如定理5中2) 所示; 若原三元背景中不存在外延为{a1}的三元概念, 则更新后的三元背景新增外延为{a1}的三元概念.
定理5虽给出该情况下的三元概念更新方法, 但当A1={a1}时, 需逐个判断A1在新三元背景下的外延待选集上的元素A'是否满足
$\left(A^{\prime} \times\left(A_{1} \times A^{\prime}\right)^{(3)^{\prime}}\right)^{(1)^{\prime}}=A_{1}, $
其过程较复杂.为了简化判定流程、优化更新方法, 给出如下性质3.
为了简便, 对于单点集{x}, 本文将
性质3 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3, 即更新后的三元背景
K'=(K1, K2∪ {a2}, K3, Y∪ {(a1, a2, a3)}),
则对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 若A1={a1}, 有
EC'(a1)=
进一步地,
|EC'(a1)|=
其中
证明 考虑属性集K2, 则有
B
其中, a2∉K2,
B=
首先, 对于∀ a∈ EC(a1)\{
A={
且A0≠ Ø .取
A'={B}∪ A0⊆B
则有
∩ A'=B∩ (∩ A0)=
所以a∈ EC'(a1), 因此
EC(a1)\{
由定义6可知B∈ EC'(a1).
其次, 对于∀ A'⊆B
S=
由于B、
EC'(a1)⊆EC(a1)∪ {B}.
若存在E∈
$\begin{aligned} \cap A^{\prime}= & B \cap E=\left(B_{a_{3}}^{a_{1}} \cup\left\{a_{2}\right\}\right) \cap E= \\ & B_{a_{3}}^{a_{1}} \cap E=B_{a_{3}}^{a_{1}}, \end{aligned}$
即
因此
EC(a1)∪ {B}⊆EC'(a1),
此时
EC'(a1)=EC(a1)∪ {B}.
若不存在E∈
则有
EC(a1)\{
可得
EC'(a1)=(EC(a1)\{
综上所述,
EC'(a1)=
性质3给出三元背景K=(K1, K2, K3, Y)增加三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3时, 外延为{a1}的三元概念更新前后对应的外延待选集之间的关系.
定理6 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3, 即更新后的三元背景
K'=(K1, K2∪ {a2}, K3, Y∪ {(a1, a2, a3)}),
对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 下列结论成立:
1)若A1≠ {a1}, 则(A1, A2, A3)∈ T(K').
2)若A1={a1}, 则当A2≠
|EC'(a1)|=|EC(a1)|,
则有
(A1, A2∪ {a2}, a3)∈ T(K'),
否则,
(A1, A2, A3)∈ T(K')
且
(A1, A2∪ {a2}, a3)∈ T(K');
其中
3)$\left(a_{1}, \left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}}, a_{3}\right) \in T\left(K^{\prime}\right) .$
证明 1)、3) 在定理5中已证, 下证2).
取(A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 则由引理3, 存在(X, B)∈ L(K(1)), 使得
(X, A, (X× A)(3))=(A1, A2, A3),
其中A∈ EC(X).
首先, 当
A2=A≠
时, 由性质3可得, A∈ EC'(a1), 又A⊆K2, 则有
$\begin{array}{l} \left(A \times\left(\left\{a_{1}\right\} \times A\right)^{(3)^{\prime}}\right)^{(1)^{\prime}}= \\ \quad\left(A \times\left(\left\{a_{1}\right\} \times A\right)^{(3)}\right)^{(1)}=\left\{a_{1}\right\}, \end{array}$
因此(A1, A2, A3)∈ T(K').
其次, 当
A2=A=
时, 若
|EC'(a1)|=|EC(a1)|,
令
A'=
由性质3可得, A'∈ EC'(a1).下证
((A2∪ {a2})× ({a1}× (A2∪ {a2}))(3)')(1)'={a1}.
由于
A2=
则对于∀ b∈ A2, 有(a1, b, a3)∈ Y, 所以,
a3∈
因此
$\begin{aligned} \left(\left\{a_{1}\right\} \times\right. & \left.\left(A_{2} \cup\left\{a_{2}\right\}\right)\right)^{(3)^{\prime}}= \\ & \left(\left\{a_{1}\right\} \times A_{2}\right)^{(3)^{\prime}} \cap\left(\left\{a_{1}\right\} \times\left\{a_{2}\right\}\right)^{(3)^{\prime}}= \\ & A_{3} \cap\left\{a_{3}\right\}=\left\{a_{3}\right\}, \end{aligned}$
此时
$\begin{array}{l} \left(\left(A_{2} \cup\left\{a_{2}\right\}\right) \times\left(\left\{a_{1}\right\} \times\left(A_{2} \cup\left\{a_{2}\right\}\right)\right)^{(3)^{\prime}}\right)^{(1)^{\prime}}= \\ \left(\left(A_{2} \cup\left\{a_{2}\right\}\right) \times\left\{a_{3}\right\}\right)^{(1)^{\prime}}= \\ \left(A_{2} \times\left\{a_{3}\right\}\right)^{(1)^{\prime}} \cap\left(\left\{a_{2}\right\} \times\left\{a_{3}\right\}\right)^{(1)^{\prime}}= \\ \left(A_{2} \times\left\{a_{3}\right\}\right)^{(1)} \cap\left\{a_{1}\right\}=\left\{a_{1}\right\} . \end{array}$
由引理2可得
$\begin{aligned} \left(a_{1}, A_{2} \cup\right. & \left.\left\{a_{2}\right\}, a_{3}\right)= \left(A_{1}, A_{2} \cup\left\{a_{2}\right\}, a_{3}\right) \in T\left(K^{\prime}\right) . \end{aligned}$
若
|EC'(a1)|≠ |EC(a1)|,
由性质3可得A∈ EC'(a1), 因此, (A1, A2, A3)∈ T(K'), 且同理可得,
(A1, A2∪ {a2}, a3)∈ T(K').
定理6优化定理5中A1={a1}时三元概念的更新方法, 即通过判断A2与
文献[11]指出, 引理1给出的(G, M, I)上增加对象-属性二元对(h, n), h∈ G, n∉M时, 形式概念的更新方法是完备的, 且由引理2和引理3可得三元背景诱导的形式背景的形式概念及待选集与其三元概念之间存在双射.因此, 定理6的更新方法具有完备性, 即可获取K'中的全部三元概念.
例3(续例1) 表3是表1增加对象-属性-条件三元组(1, e, A)后的三元背景
K'=(K1, K2∪ {e}, K3, Y∪ {(1, e, A)}),
其中新增的三元组用下划线标注.
| 表3 三元背景K'=(K1, K2∪ {e}, K3, Y∪ {(1, e, A)}) Table 3 Triadic context K'=(K1, K2∪ {e}, K3, Y∪ {(1, e, A)}) |
取
(A1, A2, A3)=(12, a, A)∈ T(K),
显然
{1, 2}≠ {1},
则由定理6中1) 知(12, a, A)∈ T(K').
本例中
{(1, a, ABC), (1, abd, A), (1, ad, AB)}∈ T(K),
即原三元背景K中存在外延为1的三元概念.由K'诱导的形式背景
K'(1)=(K1, (K2∪ {e})× K3, Y(1)∪ {(1, (e, A))})
上外延为{1}的形式概念为
(1, (a, A)(b, A)(d, A)(e, A)(a, B)(d, B)(a, C)),
则有
B
且
EC'(1)={abde, ad, a}.
由例1知
若令
(A1, A2, A3)=(1, a, ABC),
此时A2≠
(A1, A2, A3)=(1, abd, A),
此时
A2=
且
|EC'(1)|=|EC(1)|,
则由定理6中2)知
(A1, A2∪ {a2}, {a3})=(1, abde, A)∈ T(K').
由定理6中3) 知
$\left(a_{1}, \left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}}, a_{3}\right)=(1, \text { abde }, A) \in T\left(K^{\prime}\right), $
因此新三元背景
K'=(K1, K2∪ {e}, K3, Y∪ {(1, e, A)})
的所有三元概念如下:
(12, a, A), (23, c, C), (1, a, ABC),
(1, abde, A), (1, ad, AB), (3, b, AB),
(3, abd, B), (3, cd, C), (3, d, BC),
(13, b, A), (13, ad, B), (2, ac, A),
(2, c, ABC), (2, bc, C), (K1, K2, Ø ),
(K1, Ø , K3), (Ø , K2, K3).
a1∈ K1, a2∉K2, a3∈ K3时, 从K诱导的形式背景K(1)中形式概念的更新出发, 考虑由其引起的外延待选集的更新, 进而探讨三元背景变化时三元概念的更新.由于K3、K2在三元背景上地位的平等性, 故将上述方法推广至a1∈ K1, a2∈ K2, a3∉K3的情况.该情况在形式背景K(2)上进行分析, 并选取内涵待选集作为判断依据.
下面给出定理7、性质4、定理8, 鉴于K3和K2的平等性, 相关证明省略.
定理7 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∈ K1, a2∈ K2, a3∉K3, 即更新后的三元背景
K'=(K1, K2, K3∪ {a3}, Y∪ {(a1, a2, a3)}),
则对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 下列结论成立:
1)若A2≠ {a2}, 则(A1, A2, A3)∈ T(K');
2)若A2={a2}且
$\left(\left(A_{2} \times A^{\prime}\right)^{(1)^{\prime}} \times A^{\prime}\right)^{(2)^{\prime}}=A_{2}, A^{\prime} \in I C^{\prime}\left(A_{2}\right), $
则
$\left(\left(A_{2} \times A^{\prime}\right)^{(1)^{\prime}}, A_{2}, A^{\prime}\right) \in T\left(K^{\prime}\right) ; $
3)$\left(a_{1}, a_{2}, \left(\left\{a_{1}\right\} \times\left\{a_{2}\right\}\right)^{(3)^{\prime}}\right) \in T\left(K^{\prime}\right) .$
性质4 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∈ K1, a2∈ K2, a3∉K3, 即更新后的三元背景
K'=(K1, K2, K3∪ {a3}, Y∪ {(a1, a2, a3)}),
则对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 若A2={a2}, 则有
IC'(a2)=
进一步地,
其中
定理8 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∈ K1, a2∈ K2, a3∉K3, 即更新后的三元背景
K'=(K1, K2, K3∪ {a3}, Y∪ {(a1, a2, a3)}),
则对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 下列结论成立:
1)若A2≠ {a2}, 则(A1, A2, A3)∈ T(K').
2)若A2={a2}, 则当A3≠
|IC'(a2)|=|IC(a2)|,
则有
(a1, A2, A3∪ {a3})∈ T(K'),
否则(A1, A2, A3)∈ T(K')且
(a1, A2, A3∪ {a3})∈ T(K');
其中
3)$\left(a_{1}, a_{2}, \left(\left\{a_{1}\right\} \times\left\{a_{2}\right\}\right)^{(3)^{\prime}}\right) \in T\left(K^{\prime}\right) .$
定理7给出在三元背景上添加三元组(a1, a2, a3), a1∈ K1, a2∈ K2, a3∉K3时三元概念的更新方法.在此基础上, 性质4给出更新前后内涵待选集之间的关系.定理8进一步优化三元概念的更新方法.
由于引理1中(G, M, I)上增加对象-属性二元对(h, n), h∈ G, n∉M时, 形式概念更新方法的完备性、三元背景诱导的形式背景的形式概念及待选集与其三元概念之间存在双射, 因此, 定理8的更新方法是完备的, 即可获取K'中的全部三元概念.
类似地, 由于K1和K2在三元背景上地位的平等性, 将该更新方法推广至a1∉K1, a2∈ K2, a3∈ K3的情况上.该情况在形式背景K(3)上进行分析, 并选取方式待选集作为判断依据.
下面给出定理9、性质5、定理10, 鉴于K1和K2的平等性, 相关证明省略.
定理9 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∉K1, a2∈ K2, a3∈ K3, 即更新后的三元背景
K'=(K1∪ {a1}, K2, K3, Y∪ {(a1, a2, a3)}),
则对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 下列结论成立:
1)若A3≠ {a3}, 则(A1, A2, A3)∈ T(K');
2)若A3={a3}且
则
(A',
3)$\left(\left(\left\{a_{2}\right\} \times\left\{a_{3}\right\}\right)^{(1)^{\prime}}, a_{2}, a_{3}\right) \in T\left(K^{\prime}\right) .$
性质5 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∉K1, a2∈ K2, a3∈ K3, 即更新后的三元背景
K'=(K1∪ {a1}, K2, K3, Y∪ {(a1, a2, a3)}),
则对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 若A3={a3}, 则有
MC'(a3)=
进一步地,
|MC'(a3)|=
其中
定理10 设K=(K1, K2, K3, Y)为三元背景.若在K上增加对象-属性-条件三元组(a1, a2, a3), a1∉K1, a2∈ K2, a3∈ K3, 即更新后的三元背景为
K'=(K1∪ {a1}, K2, K3, Y∪ {(a1, a2, a3)}),
则对于∀ (A1, A2, A3)∈ T(K), Ai≠ Ø , i=1, 2, 3, 下列结论成立:
1)若A3≠ {a3}, 则(A1, A2, A3)∈ T(K').
2)若A3={a3}, 则当A1≠
|MC'(a3)|=|MC(a3)|,
则有
(A1∪ {a1}, a2, A3)∈ T(K'),
否则, (A1, A2, A3)∈ T(K')且
(A1∪ {a1}, a2, A3)∈ T(K');
其中
3)$\left(\left(\left\{a_{2}\right\} \times\left\{a_{3}\right\}\right)^{(1)^{\prime}}, a_{2}, a_{3}\right) \in T\left(K^{\prime}\right) .$
定理9给出在三元背景上添加三元组(a1, a2, a3), a1∉K1, a2∈ K2, a3∈ K3时三元概念的更新方法.在此基础上, 性质5给出更新前后方式待选集之间的关系.定理10进一步优化三元概念的更新方法.
类似地, 定理10的更新方法是完备的, 即可获取K'中的全部三元概念.
本节讨论类型2, 即K1、K2、K3单维度扩展时三元概念的更新, 包含
$\begin{array}{l} a_{1} \in K_{1}, a_{2} \notin K_{2}, a_{3} \in K_{3} ; \\ a_{1} \in K_{1}, a_{2} \in K_{2}, a_{3} \notin K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \in K_{2}, a_{3} \in K_{3} \end{array}$ 这3种情形, 更新方法分别由定理6、定理8和定理10给出.
对于
$\begin{array}{l} a_{1} \notin K_{1}, a_{2} \notin K_{2}, a_{3} \in K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \in K_{2}, a_{3} \notin K_{3} ; \\ a_{1} \in K_{1}, a_{2} \notin K_{2}, a_{3} \notin K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \notin K_{2}, a_{3} \notin K_{3} \end{array}$
这4种情况, 由三元概念的定义可知, 新三元背景中包含三元组(a1, a2, a3)的三元概念只有(a1, a2, a3), 因此, 相比原三元背景而言, 除含空集的三元概念外, 新三元背景仅会增加一个新三元概念(a1, a2, a3).
例4(续例1) 表4是表1增加对象-属性-条件三元组(1, e, D)后的三元背景
K'=(K1, K2∪ {e}, K3∪ {D}, Y∪ {(1, e, D)}),
其中新增的三元组用下划线标注.
| 表4 三元背景K'=(K1, K2∪ {e}, K3∪ {D}, Y∪ {(1, e, D)}) Table 4 Triadic context K'=(K1, K2∪ {e}, K3∪ {D}, Y∪ {(1, e, D)}) |
由于K'为正则三元背景, 可得K上含空集的三元概念的更新, 即(K1, K2, Ø )更新为(K1, K2∪ {e}, Ø ), (K1, Ø , K3)更新为(K1, Ø , K3∪ {D}), (Ø , K2, K3)更新为(Ø , K2∪ {e}, K3∪ {D}).此外, K'仅会增加一个新三元概念(1, e, D).
因此新三元背景
K'=(K1, K2∪ {e}, K3∪ {D}, Y∪ {(1, e, D)})
的所有三元概念如下:
本节讨论类型3, 即K1、K2、K3多维度扩展时三元概念的更新, 包含
$\begin{array}{l} a_{1} \notin K_{1}, a_{2} \notin K_{2}, a_{3} \in K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \in K_{2}, a_{3} \notin K_{3} ; \\ a_{1} \in K_{1}, a_{2} \notin K_{2}, a_{3} \notin K_{3} ; \\ a_{1} \notin K_{1}, a_{2} \notin K_{2}, a_{3} \notin K_{3} \end{array}$
这4种情形.该类型下的三元概念更新仅需考虑含空集的三元概念, 并增加新三元概念(a1, a2, a3).
由于K1、K2、K3多维度扩展时的三元概念更新相对直观, 因此本节仅给出K1、K2、K3保持不变和单维度扩展时的动态更新算法.
设K=(K1, K2, K3, Y)为三元背景, K'=(K1, K2, K3, Y')为新增三元组后的三元背景.根据定理1和定理2, 算法1以基于外延待选集的更新算法为例, 给出K中增加三元组(a1, a2, a3), a1∈ K1, a2∈ K2, a3∈ K3时的更新算法, 算法流程图如图1所示.
算法1 增加三元组(a1, a2, a3), a1∈ K1, a2∈ K2, a3∈ K3时, 三元概念的更新算法
输入K的三元概念集T, 增加的三元组(a1, a2, a3)
输出K'的三元概念集T'
1.T'← Ø , flag← true
2.for each (A1, A2, A3)∈ T do
3. if a1∉A1 then
4. for each (y, z)∈ A2× A3 do
5. if (y, z)=(a2, a3) or (a1, y, z)∈ Y then
6. flag← false, break
7. end if
8. end for
9. end if
10. if flag and a2∉A2 then
11. for each (x, z)∈ A1× A3 do
12. if (x, z)=(a1, a3) or (x, a2, z)∈ Y then
13. flag← false, break
14. end if
15. end for
16. if flag and a3∉A3 then
17. for each (x, y)∈ A1× A2 do
18. if (x, y)=(a1, a2) or (x, y, a3)∈ Y then
19. flag← false, break
20. end if
21. end for
22. if !flag then
23. T'← T'∪ {(A1, A2, A3)}
24 end if
25.end for
26.$C \leftarrow\left\{a_{1}\right\}^{(1)^{\prime}(1)^{\prime}}, D \longleftarrow\left\{\left(a_{2}, a_{3}\right)\right\}^{(1)^{\prime}}$
27.for each C⊆X⊆D do
28. if X=X(1)'(1)' then
29. for each A'∈ EC'(X) do
30. P← (X× A')(3)', Q← (A'× P)(1)'
31. if Q=X then
32. T'← T'∪ {(X, A', P)}
33. end if
34. end for
35. end if
36.end for
算法1给出增加三元组(a1, a2, a3), a1∈ K1, a2∈ K2, a3∈ K3时, 通过K中所有三元概念获取K'中所有三元概念的方法.第2行~第25行筛选K中保持不变的三元概念, 即仍为K'中的三元概念; 第26行~第36行获取K'中包含新增三元组的三元概念.由于算法1需计算新三元背景的部分外延待选集, 因此时间复杂度为
O(|T|max{α β , α γ , β γ }+α 2γ ),
其中
α =|K1|, β =|K2|, γ =|K3|.
类似地, 可得基于内涵待选集的更新算法的时间复杂度为
O(|T|max{α β , α γ , β γ }+β 2α ),
基于方式待选集的更新算法的时间复杂度为
O(|T|max{α β , α γ , β γ }+γ 2β ).
因此, 在选择更新算法时, 可根据不同的三元背景, 选择时间复杂度最小的更新算法.
根据定理6、定理8和定理10, 可得在三元背景K中增加三元组(a1, a2, a3)(仅存在一个分量不属于Ki, i=1, 2, 3)时三元概念的更新算法.以a1∈ K1, a2∉K2, a3∈ K3的情况为例, 具体算法步骤如算法2所示, 算法流程图如图2所示.设
K'=(K1, K2∪ {a2}, K3, Y')
为新增三元组后的三元背景.
算法2 增加三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3时, 三元概念的更新算法
输入K的三元概念集T, 增加的三元组(a1, a2, a3)
输出K'的三元概念集T'
1.T'← Ø , M←
2.for each (A1, A2, A3)∈ T do
3. if A1={a1} then
4. if A2=N then
5. T'← T'∪ {(A1, A2∪ {a2}, a3)}
6. for each E∈ M\N do
7. if N⊆E then
8. T'← T'∪ {(A1, A2, A3)}, break
9. end if
10. end for
11. else
12. T'← T'∪ {(A1, A2, A3)}
13. end if
14. else
15. T'← T'∪ {(A1, A2, A3)}
16. end if
17.end for
18.$T^{\prime} \leftarrow T^{\prime} \cup\left\{\left(a_{1}, \left(\left\{a_{1}\right\} \times\left\{a_{3}\right\}\right)^{(2)^{\prime}}, a_{3}\right)\right\}$
算法2给出增加三元组(a1, a2, a3), a1∈ K1, a2∉K2, a3∈ K3时, 通过K中所有三元概念获取K'中所有三元概念的方法.第4行~第13行给出外延为a1时三元概念的更新; 第14行~第16行给出外延不等于a1时三元概念的更新; 第18行为添加外延为a1的三元概念.算法2的时间复杂度为
O(|T|(γ -1)).
实验使用Java实现增加三元组时三元概念的更新算法, 在Intel(R) Core(TM) Ultra7 225 Hz CPU, 32 GB内存的硬件环境下进行.
为了验证本文算法性能, 选取不同三元背景, 针对a1∈ K1, a2∈ K2, a3∈ K3和a1∈ K1, a2∉K2, a3∈ K3这2种情况, 对比本文算法1和算法2与文献[22]算法、文献[18]算法、文献[19]算法的运行时间.实验中新增三元组均为随机生成.
由于文献[19]中3种算法的时间复杂度会随三元背景的不同而产生差异, 选取其中时间复杂度最低的算法进行对比.此外, 为了减少随机生成的三元背景和单次实验可能造成的算法运行时间的误差, 确保实验结果的准确性和可信度, 选取10次随机实验运行时间的平均值作为评价指标.
随机三元背景采用无放回简单随机抽样方式生成:给定对象集K1, 属性集K2, 条件集K3与三元背景密度ρ , 对于K1× K2× K3中的三元组(g, m, b)进行无放回简单随机抽样, 依次将抽中的三元组纳入三元关系Y, 直至三元背景密度为ρ , 最终得到随机三元背景K.其中, 三元背景密度[19]
ρ =
对于a1∈ K1, a2∈ K2, a3∈ K3的情况, 设置5组对比实验, 实验a、b、c、d中使用的三元背景为随机生成.
1)实验a.三元背景属性个数为5, 条件个数为5, 密度为0.3, 对象个数设为10, 30, 60, 100, 实验编号依次为a-1、a-2、a-3、a-4.
2)实验b.三元背景对象个数为5, 条件个数为5, 密度为0.3, 属性个数设为10, 30, 60, 100, 实验编号依次为b-1、b-2、b-3、b-4.
3)实验c.三元背景对象个数为5, 属性个数为5, 密度为0.3, 条件个数设为10, 30, 60, 100, 实验编号依次为c-1、c-2、c-3、c-4.
4)实验d.三元背景对象个数为10, 属性个数为10, 条件个数为10, 密度设为30%, 40%, 50%, 60%, 实验编号依次为d-1、d-2、d-3、d-4.
5)实验e.选取UCI数据库上6组数据集, 详细信息如表5所示, 实验编号依次为e-1、e-2、e-3、e-4、e-5、e-6.
| 表5 UCI实验数据集 Table 5 UCI experimental datasets |
对于a1∈ K1, a2∈ K2, a3∈ K3的情况, 本文算法1与文献[18]算法、文献[19]算法、文献[22]算法在不同数据集上运行时间的对比如表6所示, 表中-表示无法正常计算三元概念.由表可得, 在实验a~实验d中, 随着对象集、属性集、条件集和密度的不断增加, 4种算法的计算时间均呈现上升趋势, 但算法1的运行时间始终最短, 对于实验e中的真实数据集, 随着数据集规模的增大, 算法1依然保持最低的运行时间, 由此体现算法的有效性.
| 表6 a1∈ K1, a2∈ K2, a3∈ K3时4种算法的运行时间对比 Table 6 Running time comparison of 4 algorithms under a1∈ K1, a2∈ K2and a3∈ K3 ms |
对于a1∈ K1, a2∉K2, a3∈ K3的情况, 设置5组对比实验, 其中实验f~实验i中使用的三元背景为随机生成.
1)实验f.三元背景属性个数为5, 条件个数为5, 密度为0.3, 对象个数设为10, 30, 60, 100, 实验编号依次为f-1、 f-2、 f-3、 f-4.
2)实验g.三元背景对象个数为5, 条件个数为5, 密度为0.3, 属性个数设为10, 30, 60, 100, 实验编号依次为g-1、g-2、g-3、g-4.
3)实验h.三元背景对象个数为5, 属性个数为5, 密度为0.3, 条件个数设为10, 30, 60, 100, 实验编号依次为h-1、h-2、h-3、h-4.
4)实验i.三元背景对象个数为10, 属性个数为10, 条件个数为10, 密度设为30%, 40%, 50%, 60%, 实验编号依次为i-1、i-2、i-3、i-4.
5)实验j.使用表5所示数据集, 实验编号依次为j-1、 j-2、 j-3、 j-4、 j-5、 j-6.
本文算法2与文献[18]算法、文献[19]算法、文献[22]算法在不同数据集上运行时间对比如表7所示, 表中-表示无法正常计算三元概念.由表可得, 在各组实验中, 随着对象集、属性集、条件集和密度的不断增加, 以及数据规模的不断增大, 4种算法的计算时间总体呈现上升趋势, 但算法2的运行时间始终显著低于对比算法, 表现出更高的计算效率.
| 表7 a1∈ K1, a2∉K2, a3∈ K3时4种算法的运行时间对比 Table 7 Running time comparison of 4 algorithms under a1∈ K1, a2∉K2and a3∈ K3 ms |
本节选取不同规模的数据集, 通过多组对比实验, 验证本文的三元概念动态更新方法的准确性和有效性.实验表明, 针对三元背景新增三元组的动态更新场景, 本文方法的计算结果与直接从新三元背景出发构造三元概念的结果完全一致, 并且显著降低计算成本.
在实际应用中, 三维数据往往呈现动态变化的特征, 如何高效更新已有知识而非重新计算所有三元概念至关重要.本文给出在三元背景中增加对象-属性-条件三元组时, 三元概念的动态更新方法.根据三元背景诱导的形式背景及其形式概念, 借助待选集, 分别给出各类情况下三元概念的更新方法, 在此基础上, 设计相应的三元概念更新算法, 并通过实验验证算法的有效性.
本文主要探讨对象-属性-条件三元组新增情况下的三元概念更新方法, 后续还可研究删除三元组时三元概念的更新问题.此外, 在本文基础上, 可进一步考虑代表三元概念矩阵的更新, 进而得到三元背景动态更新时三元概念约简的获取方法, 丰富三元概念分析的理论维度.
本文责任编委 梁吉业
Recommended by Associate Editor LIANG Jiye
| [1] |
|
| [2] |
|
| [3] |
|
| [4] |
|
| [5] |
|
| [6] |
|
| [7] |
|
| [8] |
|
| [9] |
|
| [10] |
|
| [11] |
|
| [12] |
|
| [13] |
|
| [14] |
|
| [15] |
|
| [16] |
|
| [17] |
|
| [18] |
|
| [19] |
|
| [20] |
|
| [21] |
|
| [22] |
|

