Formal Concept Analysis (FCA) is an approach for conceptual classification building and rule discovery from a binary table describing a set of objects by a set of attributes. Extensions have been proposed to deal with non-binary and more complex data, such as Relational Concept Analysis (RCA) for multi-relational data. RCA aims to highlight groups of objects characterized by their relationships with other groups of objects. The richer and more complex nature of the underlying data allows RCA to produce richer results than FCA, at the expense of higher computational and interpretive complexity. The most commonly used conceptual classification structure in FCA is the concept lattice. However, in many applications, concept lattice substructures, such as AOC-posets, are preferred over the full lattice, either to mitigate combinatorial blow-up or to focus on the most informative parts of the structure. Indeed, in an AOC-poset, only concepts introducing an object or an attribute are represented, which makes AOC-posets smaller and easier to compute and use than concept lattices. Although RCA was originally defined on concept lattices, it can also be instantiated on AOC-posets. RCA is iterative and its convergence is guaranteed in the lattice-based setting, but this guarantee is lost when using AOC-posets. In this paper, we investigate this loss of convergence in detail. We show why convergence is no longer guaranteed in the general case, identify conditions under which it can still be ensured, and discuss how a dataset can be transformed to recover convergence. We also propose a convergent variant of the process, which preserves the AOC-poset structure: relational attributes, once created, are never removed, which guarantees convergence at the price of attributes that may refer to concepts absent from the final structures.
Figures & tables
herbaceous
bulb
leaves
roots
stems
flowers
camomile
×
×
garlic
×
×
×
laurel
×
angelica
×
×
×
woodruff
×
×
×
borage
×
×
×
Table 1: Formal Context of plants and their used parts ( KPlants )
Figure 1: Concept Lattice on KPlants . Each concept is represented in 3 parts: its identifier (top), its intent (middle), and its extent (bottom); only introduced attributes and objects are shown in intents and extents respectively. In the text, C_plants_i is shortened to cp_i .
Figure 2: Formal Context KRemedies (left) and concept lattice (right) for remedies. In the text, C_remedies_i is shortened to cr_i .
rcontains
camomile
garlic
laurel
angelica
woodruff
borage
celery
remedy0
×
×
×
remedy1
×
×
×
×
remedy2
×
×
×
×
remedy3
×
×
×
Table 2: Relation rcontains
remedies
∃ r(cp_11)
∃ r(cp_10)
∃ r(cp_3)
∃ r(cp_0)
∃ r(cp_7)
∃ r(cp_9)
∃ r(cp_5)
∃ r(cp_1)
∃ r(cp_4)
∃ r(cp_6)
∃ r(cp_2)
∃ r(cp_8)
remedy0
×
×
×
×
×
×
×
×
remedy1
×
×
×
×
×
×
×
×
×
remedy2
×
×
×
×
×
×
×
×
×
×
remedy3
×
×
×
×
×
×
Table 3: Existential scaling of the formal context for Remedies based on the relation rcontains (shortened to r in the column headers), S∃(KRemedies,rcontains,CPlants) .
Figure 3: Concept Lattice on S∃(KRemedies,rcontains,CPlants) apposed to KRemedies .
Figure 4: General overview of the patterns extracted from the concept lattice family built on RP with the existential quantifier and a focus on cr_0 and linked nodes.
Figure 5: AOC-posets of Remedies (left) and Plants (right).
remedies
∃ r(cp_2)
∃ r(cp_0)
∃ r(cp_4)
∃ r(cp_3)
∃ r(cp_5)
∃ r(cp_7)
∃ r(cp_8)
∃ r(cp_1)
∃ r(cp_6)
remedy0
×
×
×
×
×
×
remedy1
×
×
×
×
×
×
×
remedy2
×
×
×
×
×
×
×
×
remedy3
×
×
×
×
×
Table 4: Existential Scaling of Formal Context of Remedies with AOC-poset of Plants S∃(KRemedies,rcontains,CPlants) . ∃r(cp_i) abbreviates ∃rcontains(cp_i) .
remedies
∃∀ r(cp_2)
∃∀ r(cp_0)
∃∀ r(cp_4)
∃∀ r(cp_3)
∃∀ r(cp_5)
∃∀ r(cp_7)
∃∀ r(cp_8)
∃∀ r(cp_1)
∃∀ r(cp_6)
remedy0
×
×
remedy1
×
remedy2
×
remedy3
×
×
Table 5: Strict universal scaling of formal context of Remedies with AOC-poset of Plants S∃∀(KRemedies,rcontains,CPlants) . ∃∀r(cp_i) abbreviates ∃∀rcontains(cp_i) .
Figure 6: AOC-poset for the KRemedies formal context extended with the existential scaling on CPlants .
reconcileEntries
withdraw
Ledger
×
BankAccount
×
Customer
Transaction
Table 7: Relational Contexts of the Bank UML fragment. For the sake of simplicity, ownedAttribute is the only relational context for which we consider an inverse ( class ) in this example.
Figure 10: Bank example - AOC-posets at step 0. In the paper, C_Operation_i may be shortened to co_i , C_Parameter_i may be shortened to cpa_i , C_Class_i may be shortened to cc_i , and C_Property_i may be shortened to cpr_i . For each concept, I, E, and Sta denote the intent cardinality, extent cardinality, and stability metric in decimal comma notation, respectively.
Figure 11: Bank example - AOC-posets at step 1.
Figure 12: Bank example - Class and Property AOC-posets at step 2 (Operation and Parameter AOC-posets are unchanged).
Figure 13: Bank example - Class and Property AOC-posets at step 3 (Operation and Parameter AOC-posets are unchanged).
Figure 14: Refactoring suggestions for the Bank model. The two new superclasses factor out the notion of owning an administrative identification (in AdminAsset ), and the fact that this identification is a String (in FinancialStructure ), and group coherent classes.
Table 8: RCF for the counterexample illustrating divergence using the existential scaling operator ( ∃ ) on each relation.
Table 9: AOC-posets obtained from applying RCA-AOC on the RCF from Table 8 using the existential scaling operator ( ∃ ) on each relation. For each step, AOC-posets come, from left to right, from K1 , K2 , K3 and K4 .
Table 10: RCF for the counterexample illustrating divergence using the strict universal scaling operator ( ∃∀ ) on each relation.
Table 11: AOC-posets obtained from applying RCA-AOC on the relational context family from Table 10 using the strict universal scaling operator ( ∃∀ ) on each relation. For each step, AOC-posets come, from left to right, from K1 , K2 and K3 .
Figure 15: Dependency graph for RCF in Table 10 .
Figure 16: Example of dependency graph.
Figure 17: Bank example - Concepts created and disappearing along the steps of RCA-AOC: co_8 present only at step 0; cc_17 present at step 1, created from co_8 , and absent at step 2; cpr_22 present at step 2, created from cc_17 , and absent at step 3. In RCA-AOC-conv, co_8 also disappears at step 1, but cc_17 and cpr_22 , being the attribute-concepts of the kept relational attributes built on co_8 and cc_17 respectively, persist from their creation on.
Appendix figures & tables6 assets
Supplementary material from the paper’s appendix.
Appendix
Figure 18: Illustration of the incremental construction of an AOC-poset by adding an attribute. Each concept is represented with its full intent and extent. The simplified intent and simplified extent elements are circled. Concepts represented with dashed lines are concepts from the lattice that do not belong to the AOC-poset in the pictured cases: the concepts C∗ from cases 3.c and 4.c can never exist in the AOC-poset while the concepts C2 from cases 4.a and 4.b could belong to the AOC-poset if ExtentS(C)∩Extent(CA)=∅ . Crossed-out concepts are concepts that cannot exist even in the concept lattice.
Formal Contexts
K1 a1_1 o1_1 × o1_2 × o1_3
K2 a2_1 a2_2 o2_1 × o2_2 ×
K3 a3_1 a3_2 o3_1 × o3_2 ×
K4 a4_1 a4_2 o4_1 × o4_2 ×
Relations
r1_2 o2_1 o2_2 o1_1 × o1_2 × o1_3 ×
r3_1 o1_1 o1_2 o1_3 o3_1 × o3_2 ×
r4_3 o3_1 o3_2 o4_1 × o4_2 ×
r3_4 o4_1 o4_2 o3_1 × o3_2 ×
Appendix
Table 12: RCF making RCA-AOC diverge when using the existential scaling operator on each relation, and requiring object-concept recomputation in RCA-AOC-conv.
Figure 19: Dependency graph of Table 12
Figure 20: AOC-posets built with RCA-AOC-conv at steps 0 to 2 for Table 12 . The process converges.
Figure 21: AOC-posets built with RCA-AOC-conv at steps 3 to 4 for Table 12 . The process converges.
Figure 22: AOC-posets built with RCA-AOC at steps 2 to 5 for Table 12 . The process diverges.