Using Formal Concept Analysis to Create Conceptual Models
5.2 Formal Concept Analysis
a description of Formal Concept Analysis and how it can be used to obtain a concept hierarchy of the domain data.
5.2 Formal Concept Analysis
Formal Concept Analysis is a method that is predominantly used to investigate and process information that is explicitly given (Wille 1997, Petersen 2004, Priss 2006). FCA produces a concept lattice in which the original data is structured into formal abstractions of concepts that are comprehensible and as such, can be meaningfully interpreted. In FCA, a formal context is a triple (O, A, I) where O is a set of objects, A a set of attributes and I ⊆ O × A is a binary incidence relation between O and A. I indicates which objects have which attributes.
5.2.1 Formal Context
FCA uses a formal context to identify formal concepts. A formal context is often rep-resented as a table where a cross indicates an attribute exhibited by the corresponding object. Figure 5.5 is an example of a formal context for the SmartHouse domain. The different SmartHouse sub-problems form the set of objects, and the terms used to repre-sent the sub-problems form the set of attributes. The sub-problems in the context table have been tagged with an identifier for that difficulty for ease of understanding. For ex-ample telephone operation is the identifier for a sub-problem object that has an attribute hearing impairment (arising from a person with a hearing impairment who has difficulties operating their telephone).
ATTRIBUTES
OBJECTS hearing wheelchair mobility poor unable cerebral lack of multiple impairment problem flexibility to palsy strength sclerosis
in the stretch in hands
joint
intercom X X X X
operation
telephone X
operation
window X X X
operation
door X X
opening
Figure 5.5: Context for some SmartHouse Sub-problems
5.2. Formal Concept Analysis 86 5.2.2 Identifying Objects and Attributes
Each FCA object and associated attributes result in a concept and will also result in superconcepts if the object has common attributes with other objects. Each sub-problem of a SmartHouse report represents a specific need for a set of SmartHouse devices. We want to create a hierarchy of concepts pertaining to people’s areas of difficulty which are described in the sub-problems. It is for this reason that each sub-problem is used as an FCA object.
Each sub-problem is used as an FCA object and it follows that the terms describing the objects are used as FCA attributes. Thus the sub-problem representative terms identified in Section 5.1, become the attributes for the sub-problem FCA objects.
5.2.3 Formal Concepts
A concept is a pair (o⊆ O, a ⊆ A) such that every object in o is described by every attribute in a and conversely, every attribute in a covers every object in o. For instance in Figure 5.5, the set of objects {intercom operation, window operation, door operation}
have the set of attributes{mobility problem} in common. Conversely, the set of attributes {mobility problem} shares a common set {intercom operation, window operation, door operation} of objects to which they belong. No other object has this set of attributes.
In this work, the Concept Explorer tool, ConExp1 was used to create the concept hierarchies. ConExp’s lattice viewer has a concept node’s upper semi-circle filled with colour if an attribute is attached to the node in the reduced labeling. Correspondingly, if an object is attached to a concept node, then the lower semi-circle is filled. Attached attributes are shown as shaded rectangles and attached objects are shown as unshaded.
The concept hierarchy resulting from the context in Figure 5.5 is shown in Figure 5.6.
Every node represents a concept and the nodes are ordered by a concept-subconcept relationship. The highest node represents the most general concept while the lowest one represents the most specific concept. Therefore, as you descend the hierarchy, and become more specific (less general), the number of objects at a node reduces while the number of attributes increases. Conversely, the number of objects increases and the number of
1ConExp-1.2 is available from http://sourceforge.net/projects/conexp
5.2. Formal Concept Analysis 87 attributes reduces as one ascends the hierarchy.
Increasing generality;
Increasing number of objects 1
2
3 Increasing specificity;
Increasing number of attributes
Figure 5.6: Example Hierarchy
To prevent cluttering, reduced labeling is used. An attribute is attached to the top-most concept that has the attribute in its list of attributes. Thus the attribute occurs in all attribute lists of concepts that are reachable by descending the subtree from which it is attached; for example node 3 represents a concept whose attribute set is {mobility problem, multiple sclerosis, lack of strength in hand}. Conversely, an object is attached to the bottom-most concept where it is part of the object list. Every concept that is reachable by ascending from this point to the top-most concept has the object in its object list; for instance node 1 represents a concept whose object set is {intercom operation, window operation, door operation}.
The objects associated with a concept are called its extent, and the attributes describing the concept are called its intent. The node labeled 1 is the concept created as a result of the object set {intercom operation, window operation, door operation} having a common set of attributes{mobility problem} and the set of attributes {mobility problem} covering a common set of objects {intercom operation, window operation, door operation}. This concept has intent{mobility problem} and extent {intercom operation, window operation, door operation}. Similarly, the concept shown as node 2 has intent {hearing impairment}