1 Introduction

Cognitive computing is derived from the artificial intelligence of a computer system simulating the human brain [38]. One goal of cognitive computing is to let the computing system learn, think and make the right decisions like the human brain. Cognitive computing attempts to address inaccurate, uncertain and partially real problems in biological systems to achieve varying degrees of perception, memory, learning, language, thinking and problem solving. Based on its own data of the cognitive system, cognitive computing is able to continue self-improving [17]. At present, with the development of science and technology, and the arrival of large data age, how to know more meaningful knowledge (for example: concept) from vast amounts of information is an urgent need.

Formal concept analysis theory [5, 41, 42] is an area of applied mathematics, and it mainly focuses on cognitive concept based on the mathematization of concept and conceptual hierarchy in a certain formal context. As the central notion in formal concept analysis, concept lattice theory has been researched by most academics, also formal concept analysis theory and concept lattice theory have been applied to inducing decision trees [3], attribute reduction [7, 15, 20, 23, 31] and the corresponding rule mining [10, 13]. A formal context is an important part of the theory of formal concept analysis, which is used to express and record the relationship between objects and attributes. Generally speaking, formal context [5] is a triple which is composed of an object set, an attribute set, and a binary relation between object set and attribute set. In this sense, concept mainly includes two parts: extension (its meaning: an object set) and intension (scope of application: an attribute set), which can be determined with each other [4, 9, 11, 16, 22, 23, 37, 42, 46, 49]. So far, different kinds of concepts are put forward to meet different requirements of the problem analysis in practice, which included but not limited to abstract concept [37], Wille’s concept [42], property-oriented concept [4], object-oriented concept [46, 49], approximate concept [11] and three-way concept [6, 9, 22,23,24,25, 27]. Nowadays, Li et al. [12] studied concept learning from the cognitive viewpoint via granular computing. Kumar et al. [8] made use of formal concept analysis to represent memories and to perform some of the cognitive functions of human brain. Singh et al. [29] computed the weight of fuzzy formal concepts based on Shannon entropy, then the number of fuzzy formal concepts was reduced at chosen granulation of their computed weight. By employing two kinds of multi-level formal concepts they introduced, Shao et al. [26] proposed two pairs of rough approximation operators, then they discussed the properties of the proposed approximation operators in details. In addition, Yao [47] analysed interval sets and three-way concept in incomplete contexts. Shivhare et al. [28] established cognitive relations between the pair of objects and attributes by integrating the idea of cognitive informatics. Zhao et al. [51] studied the cognitive concept learning from incomplete information. In Moreton et al. [18], linguistic and non-linguistic pattern learning have been studied separately, and then the authors provided a comparative approach between them. These concepts can be distinguished from one another based on their intensions and actual demand. Furthermore, Professor Wang’s team has done a series of researches on active learning and different classifiers. For example, Wang et al. [34] proposed a non-naive Bayesian classifier based on the estimation of joint probability density for classification problems with continuous attributes. In order to make the best use of the individual classifiers and their combinations, Wang et al. [35] proposed a new scheme of classifier fusion based on upper integrals. Later, Wang et al. [36] investigated essential relationships between generalization capabilities and fuzziness of fuzzy classifiers in ensemble learning. Then two diversity criteria are proposed for multiple-instance active learning by utilizing a support vector machine based multiple-instance learning classifier [32]. Recently, by choosing extreme learning machines as the classification algorithms, Wang et al. [33] studied the relationship between generalization and uncertainty from the viewpoint of complexity of classification.

In order to improve the efficiency of cognitive concept learning, the viewpoint of granular computing is particularly worth mentioning. Granular computing is also an important issue within academic. Pedrycz [19] investigated hybrid methods and models of granular computing based on the foundations of granular computing. Yao [40, 50] proposed the formal and mathematical modeling of rule mining based on granular computing. Also, Yao examined a conceptual framework for concept learning from the viewpoints of cognitive informatics and granular computing. Then within this framework, he interpreted concept learning based on a layered model of knowledge discovery [48]. In fact, information granule is the basic unit of granular computing. Bargiela and Pedrycz [2] examined the basic motivation for information granulation and cast granular computing as a structured combination of algorithmic and non-algorithmic information processing that mimics human, intelligent synthesis of knowledge from information. Li et al. [14] proposed a framework of distance-based double-quantitative rough fuzzy set with logic operation by forming a distance-based fuzzy similarity relation in an information system with continuous data. Ever since the presentation of information granule, formal concept analysis has grown by leaps and bounds over these years. It has developed tight connection with knowledge discovery, data analysis and visualization as an effective and powerful mathematical tool. Formal concept analysis theory has established its presence in academia and practice. For example, Wu et al. [43] examined granular structure of concept lattices with application in knowledge reduction in formal concept analysis. Xu et al. [45] established a novel cognitive system based on formal concept analysis, then necessary, sufficient, sufficient and necessary information granules are addressed to exactly describe the human cognitive processes. Furthermore, by using formal concept description of information granules, Xu and Li [44] proposed a novel granular computing method of machine learning, and trained an arbitrary fuzzy information granule to become necessary, sufficient, or necessary and sufficient fuzzy information granule. Li et al. [12] discussed concept learning via granular computing from the point of view of cognitive computing.

Based on the existing cognitive concept learning methods, the basic idea of formal concept analysis is to establish a concept hierarchy structure (i.e., concept lattice) based on the relationship between objects and attributes. However, we may encounter the following problems: When we learn something in real life, sometimes our aim is to make clear what the concept is, (that is to say, what characteristics certain concept owns), without understanding the whole concept lattice. Another important thing in our real life is how to distinguish one object from the other object. For example, if we have two animals (a duck and a chicken), then how can we separate the duck from the chicken? What characteristics do we need to differentiate the duck from the chicken? While, none of the existing methods could obtain the following results: get the concept (to achieve the purpose of cognition); distinguish between two different objects (to achieve the purpose of a deep understanding of the concept). Also, based on the human recognizing psychology and philosophy, the process of human recognizing a new entity is layer by layer, and has a hierarchical structure. However, these well defined concepts do not reflect the hierarchical structure of human cognition. So, we need to look beyond the process of human cognition, then we define a multi-level concept which results in a representation of hierarchical structure of human cognition. The main theme of our paper is to address this problem. It is worth noting that the difference between the formal concept analysis based concepts and the concepts based on human cognition are mainly reflected in two aspects. One is the different methods getting concepts. For example, in [45], Xu et al. recognized concepts by establishing a cognitive system, and then trained an arbitrary information granule to become necessary, sufficient, or necessary and sufficient information granule, and finally reaching the purpose of recognizing concepts. While in the method, we mainly recognized concepts step by step based on the human cognitive mechanism. The other difference is the existing cognitive concept learning methods could only recognize complete concepts, while we obtained complete concepts and incomplete concepts, and we can also recognize some certain objects, distinguish between two different objects simultaneously.

In this paper, we simulate human cognitive process based on the human cognitive psychology and philosophy, and then we establish an attribute-oriented multi-level cognitive concept learning structure. The aims and main contributions of our attribute-oriented multi-level cognitive concept learning method are:

  1. 1.

    to obtain all the concepts (complete concepts) or incomplete concepts in data set;

  2. 2.

    to recognize some certain objects in each data set;

  3. 3.

    to distinguish between two objects (in different object sets of concepts or incomplete concepts).

Moreover, the semantic interpretations of all the concepts and incomplete concepts are discussed in order to confirm the effectiveness of our approach in terms of cognition, also the semantic interpretation gives us a simple and clear understanding of the concept or incomplete concept.

There are two basic ways [1, 21] for human beings to understand the world. One is called “experience + intuition”. In ordinary words, after gaining a lot of experiences, they understand a truth and then verify it in new experience. In the past, Confucianism, Buddhism, Mohism and Taoism all used this method. Ancient Greece created another way of knowing the world, a formal logic method. The simplest form of formal logic method is science, which simplifies complex things into several theorems, formulas, and then uses these theorems and formulas to infer to the entire system. In fact, we usually use the following method: we use the experience and intuition to perceive unknown objects step by step and then construct the process of cognitive concept through logical methods to achieve the purpose of cognition. Based on the analysis above, we need to focus on the process of human cognition, and then define a multi-level concept which results in a representation of hierarchical structure of human cognition.

It is worth noting that the related concept in this section is actually a complete concept in this paper. The remaining of this paper is organized as follows. Some basic notions and corresponding properties in formal concept analysis are reviewed in Sect. 2, also complete concept and incomplete concept are defined. In Sect. 3, we propose some special attributes in formal context, then some properties of these special attributes are discussed. In Sect. 4, we discuss human cognition process, and investigate the attribute-oriented multi-level cognition mechanism, then an attribute-oriented multi-level cognitive concept learning structure is constructed based on the cognitive psychology and philosophy. The corresponding program flow chart and pseudo code are investigated simultaneously to test the effectiveness of our method. In Sect. 5, an illustrative example is presented, then our method is used to understand the animals from some certain paths, and the semantic interpretations of concepts and incomplete concepts are discussed. The technology on how to distinguish two objects are also analyzed. In Sect. 6, in order to test our multi-level cognitive method and to make a comparative analysis with the existing \(granular\ computing\ approach\ to\ two\)-\(way\ learning\) and the three-\(way\ cognitive\ concept\ learning\ via\ multi\)-granularity, we study the performance of an experiment on five data sets downloaded from UCI databases. Finally, the paper ends with conclusions and our future research work.

2 Preliminaries

In this section, we review some basic notions such as formal context and formal concept in formal concept analysis theory from the perspective of the cognitive psychologists and a common sense. Detailed information can be found in the references.

Formal context is a triple composed of an object set, an attribute set, and a binary relation between object set and attribute set. Attributes express the characteristics of various objects, and the relationship between the attributes expresses the relationship between the concepts in a certain problem. Normally, a formal context is represented by a matrix. Each row in the matrix represents an object, and each column represents an attribute. Specific definition of formal context is presented as follows.

A triple (UATI) is called a formal context, where

  • \(U=\{x_{1},x_{2},\ldots ,x_{n}\}\) is a non-empty finite set of objects;

  • \(AT=\{a_{1},a_{2},\ldots ,a_{m}\}\) is a non-empty finite set of attributes;

  • I is a subset of Cartesian product of U and AT, (i.e., \(I\subseteq U\times AT\)).

In a matrix representing a formal context, if an object of a row has the property of a column, the value of the object under the attribute is 1, otherwise it is 0. There is no doubt that the binary relation matrix R is a Boolean matrix.

Cognitive psychologists generally choose specific research methods according to the actual situation. Among these methods, the most primitive research method is observation. From the point of view of cognitive psychology, observation is a research method which mainly summarizes the laws of cognitive activity by describing and recording the external performance of subjects (such as language, expression and behavior). It is clear that the ability to observe is inborn. In fact, there are examples of this in real life. For example, children form their own way of doing things by observing the behavior of their parents. In other words, parents are the best teachers of children, which is based on the cognitive psychology research method: observation. As a matter of fact, observation is an ability to study and accept new information, which is very important for cognition and perceiving. Then human beings can observe and remember the characteristics of a kind of material in the process of cognition based on the cognitive psychology. From this perspective, we define two notions (incomplete formal concept and complete formal concept) as follows.

Let (UATI) be a formal context, for arbitrary \(X\subseteq U\) and \(A\subseteq AT\), \((X,X^{*})\) and \((A^{\star },A)\) are called two incomplete formal concepts (or simply called incomplete concepts), where

$$\begin{aligned} \begin{aligned}&X^{*}=\{a\mid (x,a)\in I, \forall x\in X, a\in AT\}=\{a\mid I(x,a)=1, \forall x\in X, a\in AT\}, \\&A^{\star }=\{x\mid (x,a)\in I, \forall a\in A, x\in U\}=\{x\mid I(x,a)=1, \forall a\in A, x\in U\}. \end{aligned} \end{aligned}$$

If \(X^{*}=A\) and \(A^{\star }=X\), then \((X,X^{*})=(A^{\star },A)=(X,A)\) is called a complete formal concept, or called a formal concept (or simply called a concept). Where \(*\) and \(\star\) are two operators which can map an object set to an attribute set and map an attribute set to an object set, respectively.

It is worth noting that the incomplete concept we defined is different with the semiconcept defined by Wille, the detail definition of semiconcept is as follows [16, 30]: A semiconcept of a formal context (UATI) is a pair (XA) with \(X\subseteq U\) and \(A\subseteq AT\) such that \(X^{*}=A\) or \(A^{\star }=X\). So semiconcept is included in incomplete concept, i.e., semiconcept \(\varsubsetneqq\) incomplete concept.

Note that unless otherwise stated, the concept mentioned in the rest of this paper refers to the complete concept.

Each concept consists of two parts: extension and intension. Extension is a set of objects which belong to the concept, while intension is a set of attributes shared by the objects in the concept. In other words, if (XA) is a concept, then X is the extension of concept (XA) and A is the intension of concept (XA). The semantic interpretation of the definitions of extension and intension are that all the entities of a certain property and all the feature description of certain objects, respectively.

Let (UATI) be a formal context, \(X_{1}, X_{2}, X\subseteq U\) and \(A_{1}, A_{2}, A\subseteq AT\), then the above two operators \(*\) and \(\star\) have the following properties.

  1. 1.

    \(X\subseteq X^{*\star }\), \(A\subseteq A^{\star *}\);

  2. 2.

    \(X^{*}=X^{*\star *}\), \(A^{\star }=A^{\star *\star }\);

  3. 3.

    \(X\subseteq A^{\star }\Leftrightarrow A\subseteq X^{*}\);

  4. 4.

    \(X_{1}\subseteq X_{2}\Rightarrow X_{2}^{*}\subseteq X_{1}^{*}\), \(A_{1}\subseteq A_{2}\Rightarrow A_{2}^{\star }\subseteq A_{1}^{\star }\);

  5. 5.

    \((X_{1}\cup X_{2})^{*}=X_{1}^{*}\cap X_{2}^{*}\), \((A_{1}\cup A_{2})^{\star }=A_{1}^{\star }\cap A_{2}^{\star }\);

  6. 6.

    \((X_{1}\cap X_{2})^{*}\supseteq X_{1}^{*}\cup X_{2}^{*}\), \((A_{1}\cap A_{2})^{\star }\supseteq A_{1}^{\star }\cup A_{2}^{\star }\);

  7. 7.

    \((X^{*\star }, X^{*})\) and \((A^{\star }, A^{\star *})\) are two concepts.

3 Special attributes

In order to learn concepts from a formal context, we need to go into details the research of knowledge in the formal context. Especially, the relationship between attributes expresses the relationship between the concepts of the research question. So finding the relationship between attributes is an important problem to be solved. Next we will put forward definitions about some special attributes in formal context, and the corresponding properties of these attributes are investigated.

Definition 3.1

Let (UATI) be a formal context, and \(a\in AT\), then

  1. 1.

    if there exist \(a_{i}, a_{j}\in AT\), and \(a_{i}\ne a_{j}\ne a\), satisfying \(\{x\mid (x,a_{i})\in I, \forall x\in U\}\subseteq \{x\mid (x,a)\in I, \forall x\in U\}\) and \(\{x\mid (x,a_{j})\in I, \forall x\in U\}\subseteq \{x\mid (x,a)\in I, \forall x\in U\}\), then a is called a general attribute;

  2. 2.

    if for all \(x\in U\), \((x,a)\in I\), then a is called a focal attribute of all the objects;

  3. 3.

    if there only exists one object \(x\in U\) such that \((x,a)\in I\), then a is called an essential attribute of x.

Remark

Definition 3.1 can be redefied as follows based on the definitions of operators \(*\) and \(\star\) mentioned last section.

Let (UATI) be a formal context, and \(a\in AT\), then

  1. 1.

    if there exist \(a_{i}, a_{j}\in AT (a_{i}\ne a_{j}\ne a)\), satisfying \(\{a_{i}\}^{\star }\subseteq \{a\}^{\star }\) and \(\{a_{j}\}^{\star }\subseteq \{a\}^{\star }\), then a is called a general attribute;

  2. 2.

    if \(\{a\}^{\star }=U\), then a is called a focal attribute of all the objects;

  3. 3.

    if \(|\{a\}^{\star }|=1\), then a is called an essential attribute of one certain object (\(x=\{a\}^{\star }\)).

As a matter of fact, general attribute, focal attribute and essential attribute are present in the cognitive process. That is to say, there exist some attributes (general attributes) owned by some objects, an attribute (focal attribute) shared by all objects, and a certain attribute (essential attribute) only owned by one object. For example, in a formal context constructed by all the animals in the animal kingdom and their behavior and characteristics, some animals can breath with their lungs, while others cannot, all the animals are in the animal kingdom, and only the panda has a pair of dark circle eyes, i.e., “breath with lung” is a general attribute, “in the animal kingdom” is a focal attribute, and “a pair of dark circle eyes” is an essential attribute.

Since the general attribute, focal attribute and essential attribute are some special attributes in a formal context, the corresponding attribute sets satisfy all the properties mentioned in the last section. Next we will discuss some special properties of these attributes: general attribute, focal attribute and essential attribute.

Firstly, a focal attribute set is defined as follows: If for any attribute \(a\in AT\), \(\{a\}^{\star }\ne U\), then \(\emptyset\) is the focal attribute set of this formal context. That is to say, all the focal attributes can construct the focal attribute set in arbitrary formal context.

Theorem 3.1

Let (UATI) be a formal context, if this formal context has at least a general attribute, a focal attribute and an essential attribute, then we have the following properties:

  1. (1a)

    If a is a general attribute, then there exists \(a_{p_{i}}\in AT\) (\(a_{p_{i}}\ne a\)), satisfying \(\cup (\{a_{p_{i}}\}^{\star })\subseteq \{a\}^{\star }\subseteq U\);

  2. (2a)

    If \(\{a\}^{\star }=U\), then a is a general attribute, and for any attribute \(a_{k}\in AT\), \(\{a_{k}\}^{\star }\subseteq \{a\}^{\star }\) = U;

  3. (2b)

    If \(\{a\}^{\star }=U\), then for any object \(x\in U\), \(a\in \{x\}^{*}\);

  4. (2c)

    \(\emptyset\) is a focal attribute set on account of \(\emptyset ^{\star }=U\);

  5. (2d)

    If A is the set of all the focal attributes, then \((A^{\star }, A)=(U, A)\) is a concept;

  6. (3a)

    If , then \(|\{a\}^{\star }|=1\)\(|\{a\}^{\star *}|=|(\{a\}^{\star })^{*}|\ge 1\);

  7. (3b)

    If , and \(|\{a\}^{\star }|=1\), then\(|\{a\}^{\star *}|=1\)\((\{a\}^{\star },\{a\}^{\star *})\) is a concept.

Proof

It is straightforward to prove from the definitions of general attribute, focal attribute and essential attribute in Definition 3.1 and Remark.

One must note that the semantic interpretations of these properties are meaningful. From the view of common sense, there exists one attribute satisfying the fact that the number of objects having this attribute is more than the number of objects having other attributes (1a). If one attribute is shared by all the objects, then this attribute is a focal attribute, and the set of objects having this focal attribute is U (2a). It is obvious that the set of objects having other attributes is a subset of U (2b). Although only one object has the property of attribute (essential attribute), the elements of the set of attributes owned by this object may not be less than 1 (3a).

In order to understand the definitions of general attribute, focal attribute, essential attribute and their corresponding properties well, we will use an example to illustrate the meaning of these attributes and their properties.

Example 3.1

Table 1 is a formal context (UATI), where \(U=\{x_{1}, x_{2}, x_{3}, x_{4}\}\) and \(AT=\{a_{1}, a_{2}, a_{3}, a_{4}, a_{5}\}\).

Table 1 A formal context

From this formal context, we can calculate

$$\begin{aligned} \begin{aligned}&\{a_{1}\}^{\star }=\{x_{3}\},\\&\{a_{2}\}^{\star }=\{x_{1},x_{2},x_{3},x_{4}\}=U,\\&\{a_{3}\}^{\star }=\{x_{2},x_{3}\},\\&\{a_{4}\}^{\star }=\{x_{1},x_{2}\},\\&\{a_{5}\}^{\star }=\{x_{1},x_{2},x_{3}\}. \end{aligned} \end{aligned}$$

Then from the above results, the following outcomes can be obtained directly.

\(a_{1}\) is an essential attribute for \(|\{a_{1}\}^{\star }|=|\{x_{3}\}|=1\).

\(a_{2}\) is a focal attribute as a result of \(\{a_{2}\}^{\star }=\{x_{1},x_{2},x_{3},x_{4}\}=U\).

\(a_{5}\) is a general attribute, because \(\{a_{1}\}^{\star }\subseteq \{a_{5}\}^{\star }\), \(\{a_{3}\}^{\star }\subseteq \{a_{5}\}^{\star }\) and \(\{a_{4}\}^{\star }\subseteq \{a_{5}\}^{\star }\).

\(a_{2}\) is also a general attribute, since \(\{a_{1}\}^{\star }\subseteq \{a_{2}\}^{\star }\), \(\{a_{3}\}^{\star }\subseteq \{a_{2}\}^{\star }\), \(\{a_{4}\}^{\star }\subseteq \{a_{2}\}^{\star }\) and \(\{a_{5}\}^{\star }\subseteq \{a_{2}\}^{\star }\).

Based on the analysis above, one can directly get that \((\{x_{3}\}, \{a_{1}\})\) and \((U, \{a_{2}\})\) are two obvious concepts.

4 Attribute-oriented multi-level cognitive concept learning

Based on the proposed special kinds of attributes in the last section, we will construct an attribute-oriented multi-level cognitive concept learning method by using general attribute, focal attribute and essential attribute under the guidance of the philosophical principle of human cognition in this section. The basic principle of human cognition is to find different things from the same objects, so as to accomplish the task of cognition. One of the fundamental human cognitive processes is problem solving [39]. The process of cognition or solving problem is actually converting the knowledge of unknown to the knowledge of known. For the knowledge completely unknown, one can learn the knowledge through study. Then convert the knowledge of unknown into the knowledge of known step by step through some transfer functions. That is to say, when the knowledge of unknown is transformed into the knowledge of known, it can be realized by some transfer functions. The choice of transfer function should be decided according to the concrete problem. In other words, the process of human cognition is hierarchical. The human cognitive process can be described in Fig. 1. For example, there are 56 students in a class. How does a new teacher get to know the students in this class? Through communication with students, the teacher first gets to know five students on the first day. Then the number of students he knows (known knowledge) is changed from zero to five, and students unknown (unknown knowledge) from 56 to 51. Through a period of communication, the number of students he unknown decreases and the number of students he knows increases, at last he knows all 56 students in the class. That is to say, he changed the original unknown students (unknown knowledge) to known students (known knowledge) after a period of communication.

Fig. 1
figure 1

Simulating human cognitive process

In Fig. 1, the blank block in Level 0 is the knowledge of unknown. The block with blue right slash in Level 1 is the local knowledge of known by using a transfer function \(f_{1}\), and the remaining blank block is another local knowledge still unknown. Similarly, the block with green left slash, the block with purple plaid and the block with red wavy line in Levels 2, 3 and n are the local knowledge of known by using transfer functions \(f_{2}\), \(f_{3}\) and \(f_{n}\), respectively. Identically, the blank block in Levels 2 and 3 are also the local knowledge of unknown. Meanwhile after n levels’ cognition (from Level 1 to Level n), the global knowledge is known by using all the transfer functions \(f_{1}\), \(f_{2}\), \(f_{3}\), \(\ldots\), \(f_{n}\). The purpose of this figure is to simulate human cognitive process, and this is also the overall main idea of our multi-level cognitive concept learning method.

For a certain formal context and to understand some concepts by using a multi-level method, one can consider three trains of thoughts. The first idea is to learn the concept gradually from the point of view of attributes, which can be called an attribute-oriented multi-level cognitive concept learning method. The second approach is to study the formal context from the perspective of objects, which is called an object-oriented multi-level cognitive concept learning method. The third technique is mainly to think about the problem from both attributes and objects point of view (i.e., the whole formal context), and this pattern can be called an attribute-object-oriented multi-level cognitive concept learning method. In this paper, we only take the attribute-oriented multi-level cognitive concept learning method into account to solve the problem of cognitive concept learning.

The basic principle of human cognitive is that one can distinguish and recognize objects by using the universality and particularity. If someone wants to distinguish two objects, what he/she needs to do is to find out the differences between these two objects. For instance, if we have two chickens (a rooster and a hen). Both of which have two legs, short wings, and cannot fly too high. All of the above features are the common characteristics of chicken, it is obvious that we still cannot distinguish the rooster from the hen using the above given common characteristics. We all know that a rooster can crow, but a hen cannot. Then one can distinguish the rooster from the hen according to whether the chicken crows or not. Another more common example is how to discriminate the spelling of word “owe” with “own”. One can distinguish them perceptibly through “o-w-e” and “o-w-n”, i.e. the difference of the last letters in the spelling of these two words. From the view of attributes, the mechanisation of our attribute-oriented multi-level cognitive concept learning method can be described in Fig. 2. Where the red circle represents the focal attributes (i.e., the characteristics of all the objects), the blue squares and the green rhombus represent the general attributes and essential attributes, respectively. The focal attributes gather all the objects (the universe) together in Level 1. Then two different general attributes divide the universe into two parts in Level 2. We can divide the object sets step by step by using one or two attributes (may be general attributes or essential attributes) similar to the one in Level 2. The detailed method will be discussed in the next.

Fig. 2
figure 2

Attribute-oriented multi-level cognitive mechanism

The specific main idea of our multi-level method is that we can distinguish some objects from the others based on one or two characteristics in a larger object set, the phenomenon shown in Fig. 2 is mainly caused by our cognitive process. For example, a class of 56 students has 32 boys and 24 girls. One can distinguish the 32 boys from the 24 girls by using two sex attributes: male and female. One can also separate the 32 boys from the 24 girls by using only one sex attribute: male or female. That is to say, one could classify the 32 boys as a class from these 56 students by using the male sex attribute, the rest of 24 students who do not have the male attribute can be classified as another class. Accordingly, one can distinguish the 24 girls from the other 32 students by using only the female attribute. The 56 students can be classified as a class of 24 girls and another class of 32 students who do not have the female attribute. In this example, a class with 56 students is the focal attribute (red circle), sex attribute male and sex attribute female are two general attributes (blue squares). In these 56 students, if one student is from Province B and other students are from Province A. Then form Province B is an essential attribute (green rhombus), and this attribute can distinguish this student from others.

From Fig. 2, it is obvious that focal attribute is the nature of all the objects, general attribute is the feature of most objects. Focal attribute and general attribute reflect the widespread phenomenon of most objects, and they have a larger extension and a smaller intension. An essential attribute is the special characteristic of one object, and it is the unique feature which differentiates a certain object from other objects. So, it has a smaller extension and a larger intension. From left to right (i.e., the level increases), the commonality of objects decreases, while the characteristics of objects become more obvious.

For a formal context (UATI), \(U=\{x_{1},x_{2},\ldots ,x_{n}\}\), \(AT=\{a_{1},a_{2},\ldots ,a_{m}\}\), to cognitive concepts and incomplete concepts, we need three steps: (1) we calculate focal attribute set and generate concept in Level 1; (2) we calculate the general attributes and essential attributes, and generate concepts or incomplete concepts in middle levels and the highest level; (3) Draw the map of the cognitive process of our attribute-oriented multi-level cognitive concept learning method. And the detailed and completed attribute-oriented multi-level cognitive concept learning procedure and method is presented as follows.

Step 1 Calculate focal attribute set \(A_{1}\), generate a concept \((U,A_{1})\) in Level 1.

In this formal context (UATI), if there exists an attribute \(a_{i}\in AT\), satisfying \(\{a_{i}\}^{\star }=U\), then \(a_{i}\in A_{1}\). That is to say, \(A_{1}\) is the set of all the focal attributes in this formal context. For an arbitrary attribute \(a_{i}\in AT\), if \(\{a_{i}\}^{\star }\ne U\), then \(A_{1}=\emptyset\). Accordingly, we generate an incomplete concept \((U,A_{1})\). It is clear that \(U^{*}=A_{1}\) and \(A_{1}^{\star }=U\), so \((U,A_{1})\) is a concept in Level 1.

In fact, this step can be described simply as follows:

Compute \(U^{*}=A_{1}\), then one gets the concept \((U, A_{1})=(U, U^{*})\) in Level 1.

Step 2 Calculate the general attributes and essential attributes, and generate concepts or incomplete concepts in middle levels and the highest level.

From Fig. 1, one can find that the local knowledge of known in Level i is derived by a transfer function \(f_{i}\) and the corresponding concept or incomplete concept in Level \(i-1\), the local knowledge of known in Level \(i+1\) is also derived by another transfer function \(f_{i+1}\) and the corresponding concept or incomplete concept in Level i, where \(i\le m\). Hence, the local knowledge of known in higher level can be derived by a transfer function and the corresponding concept or incomplete concept in the above level. So, without loss of generality, we can suppose that all the concepts and incomplete concepts in the above level (i.e., Level i, where \(i\le m\) ) are \((X_{i1}, A_{i1})\), \((X_{i2}, A_{i2})\), \(\ldots\), \((X_{iq}, A_{iq})\), \(\ldots\), \((X_{ip}, A_{ip})\), where \(q\le p\le m\), and \(q\le p\le n\). In order to compute all the concepts and incomplete concepts in the next level (i.e., Level \(i+1\), where \(i\le m\) ), for definiteness and without loss of generality, we take the concept or incomplete concept \((X_{iq}, A_{iq})\) in Level i as an example, we will encounter the five situations listed as Case 1 to Case 5 in the following.

Case 1 If \(|X_{iq}|\ge 2\), and \((X_{iq}, A_{iq})\) satisfies \(X_{iq}^{*}\ne A_{iq}\), then \((X_{iq}, A_{iq})\) is an incomplete concept in Level i, and the concept in Level \(i+1\) is \((X_{iq}, X_{iq}^{*})\).

Case 2 If \(|X_{iq}|\ge 2\), \((X_{iq}, A_{iq})\) satisfies \(X_{iq}^{*}= A_{iq}\), then \((X_{iq}, A_{iq})\) is a concept in Level i. Furthermore, if there not only exist two attributes \(a_{s}, a_{t}\in AT-A_{iq}\) such that

$$\begin{aligned} \begin{aligned}&(A_{iq}\cup \{a_{s}\})^{\star }\cup (A_{iq}\cup \{a_{t}\})^{\star }=X_{iq}, \\&(A_{iq}\cup \{a_{s}\})^{\star }\cap (A_{iq}\cup \{a_{t}\})^{\star }=\emptyset , \end{aligned} \end{aligned}$$

but also \((A_{iq}\cup \{a_{s}\})^{\star }\) and \((A_{iq}\cup \{a_{t}\})^{\star }\) are different from all the object sets in all the upper levels, then the concepts or incomplete concepts in Level \(i+1\) are \(((A_{iq}\cup \{a_{s}\})^{\star }, A_{iq}\cup \{a_{s}\})\) and \(((A_{iq}\cup \{a_{t}\})^{\star }, A_{iq}\cup \{a_{t}\})\).

If one of these two object sets is equal to one of the object sets in all the upper levels, then we delete the corresponding concept or incomplete concept in Level \(i+1\). The purpose of doing so is to remove the duplicate concept or incomplete concept.

Case 3 If \(|X_{iq}|\ge 2\), \((X_{iq}, A_{iq})\) satisfies \(X_{iq}^{*}= A_{iq}\), then \((X_{iq}, A_{iq})\) is a concept in Level i. Furthermore, if there only exists one attribute \(a_{h}\in AT-A_{iq}\) such that

$$\begin{aligned} \begin{aligned}&(A_{iq}\cup \{a_{h}\})^{\star }\cap X_{iq}\ne \emptyset , \\&(X_{iq}-(A_{iq}\cup \{a_{h}\})^{\star })^{*}=A_{iq}, \end{aligned} \end{aligned}$$

in addition, \((A_{iq}\cup \{a_{h}\})^{\star }\) and \(X_{iq}-(A_{iq}\cup \{a_{h}\})^{\star }\) are different from all the object sets in all the upper levels, then the concepts or incomplete concepts in Level \(i+1\) are \(((A_{iq}\cup \{a_{h}\})^{\star }, A_{iq}\cup \{a_{h}\})\) and \((X_{iq}-(A_{iq}\cup \{a_{h}\})^{\star }, A_{iq})\).

If one of these two object sets is equal to one of the object sets in all the upper levels, then we delete the corresponding concept or incomplete concept in Level \(i+1\). The purpose of doing so is also to remove the duplicate concept or incomplete concept.

Case 4 If \(|X_{iq}|=1\), and \((X_{iq}, A_{iq})\) satisfies \(X_{iq}^{*}\ne A_{iq}\), then \((X_{iq}, A_{iq})\) is an incomplete concept in Level i. So the concept in Level \(i+1\) is \((X_{iq}, X_{iq}^{*})\), and cognitive learning on this path ended.

Case 5 If \(|X_{iq}|=1\), and \((X_{iq}, A_{iq})\) satisfies \(X_{iq}^{*}= A_{iq}\), then \((X_{iq}, A_{iq})\) is a concept in Level i, and cognitive learning on this path ended.

Moreover, in Case 2 and Case 3, if \(|(A_{iq}\cup \{a_{s}\})^{\star }|=1\), \(|(A_{iq}\cup \{a_{t}\})^{\star }|=1\), or \(|(A_{iq}\cup \{a_{h}\})^{\star }|=1\), then \(a_{s}\), \(a_{t}\), or \(a_{h}\) is an essential attribute. If \(|(A_{iq}\cup \{a_{s}\})^{\star }|\ge 2\), \(|(A_{iq}\cup \{a_{t}\})^{\star }|\ge 2\), or \(|(A_{iq}\cup \{a_{h}\})^{\star }|\ge 2\), then \(a_{s}\), \(a_{t}\), or \(a_{h}\) is a general attribute.

One must note that the object set of the concept \((X_{iq}, A_{iq})\) satisfies \(|X_{iq}|=1\) in Case 4 and Case 5, it means that the object in set \(X_{iq}\) can be studied by us.

By calculating the general attributes and essential attributes in Level \(i+1\), one gets all the concepts and incomplete concepts in this level. Then one can recognize all the concepts and incomplete concepts in each level by using the five cases mentioned above.

Step 3 Draw the map of the cognitive process of our attribute-oriented multi-level cognitive concept learning method. Start from Level 1 and stop until one cannot distinguish the object set in each concept and incomplete concept.

After we have drawn the map of attribute-oriented multi-level cognitive concept learning process, we can distinguish any two objects (in different object set of concepts or incomplete concepts) on the basis of the cognitive process. It is clear that one can distinguish two objects if one of these two objects has an essential attribute. For two objects which have no essential attribute, we cannot directly distinguish the one from the other. However, we can find a concept or an incomplete concept in lower level in the cognitive map, in which the concept contains both of these two objects. Then the classification standard of the concept or the incomplete concept in the next level is the characteristics which can distinguish these two objects. We will introduce the detailed method of how to distinguish between two objects in the case study section.

To understand our method, in the following we provide the corresponding program flow chart and pseudo code of our attribute-oriented multi-level cognitive concept learning procedure and method. Figure 3 is the program flow chart of our attribute-oriented multi-level cognitive procedure. Algorithm 1 is the pseudo code of attribute-oriented multi-level cognitive concept learning method in a formal context.

Fig. 3
figure 3

Program flow chart of attribute-oriented multi-level recognize

Description and explanation of Fig.3 and Algorithm 1: Input a formal context (UATI), what we need to do first is to compute the focal attribute set \(A_{1}\), then we can get the concept \((U, U^{*})=(U, A_{1})\) in Level 1. In order to calculate all the concepts and incomplete concepts in middle levels and the highest level, we need to find out some attributes which can distinguish some objects from the others in a certain object set. The most important thing is to judge which kinds of situations they are experiencing. There are five cases for us to judge and choose, then we can get the concepts or incomplete concepts in the next level. Through the repeat until loop in this program, one can compute all the concepts and incomplete concepts in each level. The variable e represents the eth concept in previous level, index represents the subscript of concepts or incomplete concepts in this level. \(C\{l-1\}\) represents the set of concepts and incomplete concepts in Level \(l-1\). \(C\{l-1\}\{e\}\{1\}\) and \(C\{l-1\}\{e\}\{2\}\) represent the object set and attribute set of the eth concept in Level \(l-1\), respectively.

figure a

So far, the cognitive process of our multi-level method is completed, and it is obvious that all the concepts and incomplete concepts can be found after multi-level cognitive, where the semantic interpretation of all the concepts and incomplete concepts are considered. We will introduce an example to illustrate the utilization of our method and program, then we give the semantic interpretation of all the concepts and incomplete concepts, also the method of how to distinguish two objects are discussed at the same time in the case study section.

5 Case study

In the cognitive system of human beings, the concept is hierarchical. For example, the concept of “Animal” includes “Aves”, “Mammalia” and “Pisces”. “Mammalia” includes “Canidae” and “Catamount”. “Catamount” includes “Tiger”, “Lion” and other concepts. For a zoologist, the classification is better to be more complete and in more details. While, for ordinary people, it is not necessary to classify the animal in details. It is because it wastes a lot of cognitive resources. In other words, it is ok if one can find a path in which ordinary people can recognize the concept they want or need to learn. In this way, if one wants to know a tiger, it can be achieved by the path: \(Animals\rightarrow Mammalia\rightarrow Catamount\rightarrow Tiger\). To use our attribute-oriented multi-level cognitive concept learning method, we present an illustrative example to understand the animals from some certain paths. Also, we introduce the detailed method of how to distinguish between two objects, and the semantic interpretation of all the concepts and incomplete concepts will be addressed in this section.

Example 5.1

Table 2 is a formal context formed by 12 kinds of animals and 9 characteristics. Where \(U=\{x_{1}, x_{2}, \ldots , x_{12}\}\) is a set of 12 kinds of animals: “Cyprinoid”, “Cow”, “Siberian tiger”, “Duck”, “Honeybee”, “Chicken”, “Shark”, “Giant panda”, “Scorpion”, “Ostrich”, “Seven star ladybugs”, “Diving bell spider”. The attribute set is \(AT=\{a_{1}, a_{2}, \ldots , a_{9}\}\) which corresponds to the following characteristics: “constant temperature”, “a pair of dark circle eyes”, “can move”, “dangerous”, “paired muscles”, “fly”, “no spine”, “oviparity”, “can live in water”. In this section, by using our attribute-oriented multi-level cognitive concept learning method which is investigated in the last section, we know all the animals in the formal context which comprises U and AT. Then we can compute all the concepts and incomplete concepts in each level. The corresponding cognitive concept maps based on animals and characteristics can be produced directly.

Table 2 A formal context formed by animals and characteristics

By using our program \(Algorithm\ 1\) of multi-level cognitive concept learning method in Sect. 4, we can calculate all the concepts and incomplete concepts in this formal context.

For formal context (UATI), where \(I\subseteq U\times AT\), by using our proposed multi-level cognitive concept learning method, all the concepts and incomplete concepts are listed as follows.

Level 1\((U,\{a_{3}\})\) is the only concept in this level, and it is obvious that \(a_{3}\) is a focal attribute, then \(a_{3}\) is a general attribute.

Level 2\((\{x_{1}, x_{2}, x_{3}, x_{4}, x_{6}, x_{7}, x_{8}, x_{10}\},\{a_{3}, a_{5}\})\) and \((\{x_{5}, x_{9}, x_{11}, x_{12}\},\{a_{3}, a_{7}\})\) are all the two concepts in this level, where \(a_{5}\) is a general attribute.

Level 3\((\{x_{2}, x_{3}, x_{4}, x_{6}, x_{8}, x_{10}\},\{a_{1}, a_{3}, a_{5}\})\), \((\{x_{1}, x_{4},x_{6},x_{7}, x_{10}\},\{a_{3}, a_{5}, a_{8}\})\) and \((\{x_{5}, x_{9}, x_{12}\},\{a_{3}, a_{4}, a_{7}\})\) are all the three concepts, and \((\{x_{5}, x_{11}\},\{a_{3}, a_{6}, a_{7}\})\) is the one incomplete concept in this level, where \(a_{1}\), \(a_{4}\) and \(a_{8}\) are general attributes.

Level 4\((\{x_{8}\}, \{a_{1}, a_{2}, a_{3}, a_{5}\})\), \((\{x_{4}, x_{6}, x_{10}\},\{a_{1}, a_{3}, a_{5}, a_{8}\})\), \((\{x_{1}, x_{4}, x_{7}\}, \{a_{3}, a_{5}, a_{8}, a_{9}\})\) and \((\{x_{9}, x_{12}\},\{a_{3}, a_{4}, a_{7}\})\) are all the four concepts. And \((\{x_{2}, x_{3}, x_{4}, x_{6}, x_{10}\},\{a_{1}, a_{3}, a_{5}\})\), \((\{x_{5}\},\{a_{3}, a_{4}, a_{6}, a_{7}\})\) and \((\{x_{5}, x_{11}\},\{a_{3}, a_{6}, a_{7}, a_{8}\})\) are all the three incomplete concepts in this level, where \(a_{1}\), \(a_{8}\) are general attributes, and \(a_{2}\) is an essential attribute.

Level 5\((\{x_{3}\},\{a_{1}, a_{3}, a_{4}, a_{5}\})\), \((\{x_{4}, x_{6}\},\{a_{1}, a_{3}, a_{5}, a_{6}, a_{8}\})\) and \((\{x_{5}\},\{a_{3}, a_{4}, a_{6}, a_{7}, a_{8}\})\) are all the three concepts. \((\{x_{2}, x_{4}, x_{6}, x_{10}\},\{a_{1}, a_{3}, a_{5}\})\), \((\{x_{10}\},\{a_{1}, a_{3}, a_{5}, a_{8}\})\), \((\{x_{4}\},\{a_{1}, a_{3}, a_{5}, a_{8}, a_{9}\})\), \((\{x_{1}, x_{7}\}, \{a_{3}, a_{5}, a_{8}, a_{9}\})\), \((\{x_{9}\}, \{a_{3}, a_{4}, a_{7}\})\), \((\{x_{12}\}, \{a_{3}, a_{4}, a_{7}, a_{8}\})\) and \((\{x_{11}\},\{a_{3}, a_{6}, a_{7}, a_{8}\})\) are all the seven incomplete concepts in this level, where \(a_{1}\), \(a_{4}\) and \(a_{8}\) are general attributes.

Level 6\((\{x_{4}\},\{a_{1}, a_{3}, a_{5}, a_{6}, a_{8}, a_{9}\})\), \((\{x_{7}\},\{a_{3}, a_{4}, a_{5}, a_{8}, a_{9}\})\) and \((\{x_{12}\}, \{a_{3}, a_{4}, a_{7}, a_{8}, a_{9}\})\) are all the three concepts, \((\{x_{2}, x_{10}\},\{a_{1}, a_{3}, a_{5}\})\), \((\{x_{6}\},\{a_{1}, a_{3}, a_{5}, a_{6}, a_{8}\})\) and \((\{x_{1}\},\{a_{3}, a_{5}, a_{8}, a_{9}\})\) are all the three incomplete concepts in this level, where \(a_{4}\) is a general attribute.

Level 7\((\{x_{2}\},\{a_{1}, a_{3}, a_{5}\})\) is the only incomplete concept in this level.

Table 3 listed the number of all the concepts and incomplete concepts of each level in the formal context formed by animals and their characteristics. Where NC, NIC, total mean the number of concepts, the number of incomplete concepts, the total number of concepts and incomplete concepts, respectively.

Table 3 Number of concepts and incomplete concepts

From Table 3, it is obvious that the trend of the change of the number of total (the number of concepts and incomplete concepts) in each level is increasing first and then decreasing. This is mainly caused by the main idea of our multi-level cognitive method.

Up to now, we have calculated all the concepts and incomplete concepts in each level. Then we can map the corresponding figure based on the results mentioned above, which is shown in Fig. 4.

From Fig. 4, one finds that the general attributes are gathered at the lower levels, while the special attributes are scattered in the higher levels. It is also straightforward to see that the lower the level, the larger the general attributes and the smaller the special attributes. The higher the level, the smaller the general attributes and the larger the special attributes. That is to say, from the lower level to the higher level, there is an increase in a certain animal’s characteristics, while there is a decrease in the types of animals which own more properties. Next we will discuss the semantic interpretation of the concepts and incomplete concepts we get above.

In Fig. 4, it is obvious that all the twelve animals are recognized in Levels 4, 5, 6 and 7. For all the concepts, the animal must have the homologous distinguishing features in a certain concept which is owned by this animal. Conversely, if something have all the characteristics in a certain concept, then it must be the certain animal in this concept. For example, if one wants to know a “Giant Panda” (\(x_{8}\)), based on the concept \((\{x_{8}\},\{a_{1}, a_{2}, a_{3}, a_{5}\})\) in Level 4, then the corresponding characteristics can be found: constant temperature (\(a_{1}\)), a pair of dark circle eyes (\(a_{2}\)), can move (\(a_{3}\)), paired muscles (\(a_{5}\)). On the contrary, if one animal has these features: constant temperature (\(a_{1}\)), a pair of dark circle eyes (\(a_{2}\)), can move (\(a_{3}\)), paired muscles (\(a_{5}\)), then this animal must be a “Giant Panda” (\(x_{8}\)). For the incomplete concepts, the animal must have the homologous distinguishing features in a certain incomplete concept which is owned by this animal. If something have all the characteristics in a certain concept, then it may not be the certain animal in this incomplete concept. For instance, based on the incomplete concept \((\{x_{10}\},\{a_{1}, a_{3}, a_{5}, a_{8}\})\) in Level 5 and concept \((\{x_{4}, x_{6}, x_{10}\},\{a_{1}, a_{3}, a_{5}, a_{8}\})\) in Level 4, “Ostrich” (\(x_{10}\)) must have these properties: constant temperature (\(a_{1}\)), can move (\(a_{3}\)), paired muscles (\(a_{5}\)), oviparity (\(a_{8}\)). Conversely, if one animal have these characteristics: constant temperature (\(a_{1}\)), can move (\(a_{3}\)), paired muscles (\(a_{5}\)), oviparity (\(a_{8}\)), then it may be “Duck” (\(x_{4}\)), “Chicken” (\(x_{6}\)) or “Ostrich” (\(x_{10}\)). The semantic interpretations of other concepts and incomplete concepts in Fig. 4 can be obtained accordingly.

Fig. 4
figure 4

Attribute-oriented multi-level cognitive animals learning structure table in formal context (UATI)

Also, it is worth knowing how to distinguish any two objects (in different object sets of concepts or incomplete concepts) on the basis of the cognitive process we proposed. First, it is straightforward to know that one can distinguish “Giant Panda” from any other animals based on an essential attribute [i.e., a pair of dark circle eyes (\(a_{2}\))] of “Giant Panda”. If each of these two objects has no essential attribute, one cannot distinguish them immediately, then the detailed approach is presented as follows. At this time, what one needs to do first is to outcrop these two objects, and then one can find a recent concept through the cognitive path of these two objects, where these two objects are included in the recent concept. At last, the classification criteria of the recent concept can distinguish these two objects. For example, if one wants to distinguish “Duck” (\(x_{4}\)) from “Chicken” (\(x_{6}\)), then one can distinguish them based on whether the animal can live in water (\(a_{9}\)) according to the classification criteria of the concept \((\{x_{4}, x_{6}\},\{a_{1}, a_{3}, a_{5}, a_{6}, a_{8}\})\) in Level 5. If the animal can live in water, then it must be a “Duck” (\(x_{4}\)), and the other one is a “Chicken” (\(x_{6}\)), this is based on the concept \((\{x_{4}\},\{a_{1}, a_{3}, a_{5}, a_{6}, a_{8}, a_{9}\})\) and incomplete concept \((\{x_{6}\},\{a_{1}, a_{3}, a_{5}, a_{6}, a_{8}\})\) in Level 6. Specially, if one wants to distinguish “Siberian tiger” (\(x_{3}\)) and “Shark” (\(x_{7}\)), first one can find these two animals in Fig. 4, then a concept \((\{x_{1}, x_{2}, x_{3}, x_{4}, x_{6}, x_{7}, x_{8}, x_{10}\},\{a_{3}, a_{5}\})\) in Level 2 can be found. So, one can solve this problem based on which characteristics the animal has, constant temperature (\(a_{1}\)) or oviparity (\(a_{8}\)). If the animal has constant temperature (\(a_{1}\)), and it is not an oviparity, then it must be a “Siberian tiger” (\(x_{3}\)) based on the concept \((\{x_{2}, x_{3}, x_{4}, x_{6}, x_{8}, x_{10}\},\{a_{1}, a_{3}, a_{5}\})\) in level 3. If the animal is an oviparity (\(a_{8}\)) and has no constant temperature, then it must be a “Shark” (\(x_{7}\)) based on the concept \((\{x_{1}, x_{4}, x_{6}, x_{7}, x_{10}\},\{a_{3}, a_{5}, a_{8}\})\) in level 3. We can distinguish two arbitrary objects (in different object sets of concepts or incomplete concepts) based on our attribute-oriented multi-level cognitive concept learning method.

Owing to the inadequate features in the formal context formed by animals and characteristics in Example 5.1, the corresponding concepts and incomplete concepts in the formal context (UATI) are obtained. In order to make all the incomplete concepts to be complete concepts, one can achieve the concepts by using the classical method (concept lattice, and so on). In addition, one can complete all the characteristics of each animal through further study, then all the incomplete concepts can be transformed into complete concepts. From the perspective of a zoologist, the complete attribute-oriented multi-level cognitive animals learning structure chart is shown in Fig. 5. Where Levels 1–4 represent the Taxa: Kingdom, Phylum, Class and Species in the animal classification system. The arrow lines represent the classification criteria from the previous taxa to the next taxa. Short lines connect the certain taxa and the corresponding characteristics of the taxa. From this figure, it is obvious that one not only can see the characteristics of each taxa intuitively, but also can see the special characteristics of each animal, which can distinguish this animal from other animals.

Fig. 5
figure 5

Complete attribute-oriented multi-level cognitive animals learning structure chart

In Fig. 5, the features of each animal is fully excavated in each level. For example, if one wants to know an “Ostrich”, then a path can be found: \(Animal\rightarrow Vertebrate\rightarrow Aves\rightarrow Ostrich\). It means that the ostrich belongs to aves in vertebrate animal. Then an ostrich not only has the characteristics of itself, but also has the features of animal’s, vertebrate’s and ave’s. That is to say, the ostrich has these characteristics: breath, move, eat, vertebral, paired muscles, oviparous, air sac, 2 atria and 2 ventricles, constant temperature, the largest bird, the only two toed bird. Where “the largest bird” and “the only two toed bird” are the essential attributes of the “Ostrich”. All the taxa and animals can be fully understood in this way in Fig. 5.

6 Experimental evaluation

For cognitive psychology, theory is the soul, model is the skeleton, and the experiments on the theory and model are flesh and blood. Therefore, the three parts are indispensable in the process of conceptual cognition. In this section, we will test our attribute-oriented multi-level cognitive concept learning method on some real life data sets.

To use our multi-level cognitive concept learning method in some real life data sets, what we need to do first is the data preprocessing. We know that the relation matrix is a Boolean matrix and if the attribute-oriented multi-level learning method can be applied to cognitive concepts, we need to perform preprocessing. Therefore, the preprocessing of data sets is mainly to transform the general relation matrix into a Boolean matrix. And then one can use our multi-level method to recognize concepts. In this paper, in order to ensure the relation matrix is a Boolean matrix before applying our multi-level method, we convert the value to 0 if this value is smaller than the average value under this attribute, and change the value to 1 if this value is not smaller than the average value under this attribute. In this section, we apply our method to solve concept cognitive problem on five real life data sets available from the UCI databases. The characteristics of these data sets are summarized in Table 4.

Table 4 Descriptions of testing date sets from UCI databases

In order to test the program of Algorithm 1 proposed in Sect. 4, we will use these five data sets described in Table 4 to verify the validity of this program. By using the program of our attribute-oriented multi-level cognitive concept learning method, we can get all the concepts and incomplete concepts of the tested five data sets. The number of concepts and incomplete concepts in each level of the tested five data sets are listed in Tables 5, 6, 7, 8 and 9, where NC, NIC, total represent the number of concepts, the number of incomplete concepts, the total number of concepts and incomplete concepts, respectively. The numbers in heading represent the level numbers when one recognizes concepts and incomplete concepts in these five data sets.

Table 5 Letter recognition: number of concepts and incomplete concepts
Table 6 Vehicle: number of concepts and incomplete concepts
Table 7 Wholesale customers: number of concepts and incomplete concepts
Table 8 Wine quality-Red: number of concepts and incomplete concepts
Table 9 Wine quality-White: number of concepts and incomplete concepts

From Tables 5, 6, 7, 8 and 9, the following conclusions are obtained.

  • The number of concepts and incomplete concepts recognized is increasing in double at the first few levels. For example, in Tables 5, 7, 8 and 9, the number of total (the total number of concepts and incomplete concepts) in Levels 1–5 are 1, 2, 4, 8 and 16, respectively. It means the concepts and incomplete concepts double increase in the first five levels in data sets: \(Letter\ recognition\), \(Wholesale\ customers\), \(Wine\ quality\)-Red and \(Wine\ quality\)-White.

  • At the beginning, the number of recognized concepts and incomplete concepts increases by layers, and the number of recognized concepts and incomplete concepts decreases by layers at a certain level. This is because some of cognitive paths have ended at some certain levels.

  • After comparing Table 5 with Table 6, we find the number of concepts in Table 6 is more than that in Table 5. This is mainly caused by the difference of these two data sets. The number of attributes of these two data sets is almost equal in \(Letter\ recognition\) and Vehicle, while \(Letter\ recognition\) data set has 8084 objects, and Vehicle has only 846 objects. In fact, Tables 8 and 9 have the similar results, but the difference is not too great. It is because the number of object set in Table 5 is 10 times that of in Table 6, while the number of object set in Table 9 is 3 times that of in Table 8. So we can draw a conclusion: The more the number of column and the less the number of row, the more the number of concepts we recognized.

Next, we will make a comparative analysis in the number of concepts using our multi-level cognitive method with the number of concepts using existing other two different approaches, which are the \(granular\ computing\ approach\ to\ two\)-\(way\ learning\) [44] and the three-\(way\ cognitive\ concept\ learning\ via\ multi\)-granularity [9]. Since the authors only listed all the necessary and sufficient granules [44] (i.e., the concepts in our paper) or three-way cognitive concepts [9] in their experiment section, we then compare the number of concepts using these three methods. Here, we only consider the maximum number of concepts recognized in [44]. It means we only use the maximum number of concepts as a comparative criterion. Table 10 shows the comparative results of the number of concepts based on attribute-oriented multi-level cognitive concept learning method, two-way learning approach [44] and three-way cognitive concept learning method [9] in the five tested data sets.

Table 10 The number of concepts learned by multi-level method, two-way [44] and three-way [9] approaches

Based on the comparative results of multi-level method, two-way [44] and three-way [9] approaches in Table 10, it is obvious that the number of concepts recognized by using our method is larger than the other two approaches, especially in the data set Vehicle. This is mainly due to this data set having more attributes than the others data sets. This proves the validity of our multi-level method in conceptual cognition, especially the processing of the data set with a larger set of attributes. In addition, we can fully guide our further cognitive concept learning by using our attribute-oriented multi-level cognitive concept learning method. Moreover, if a data set has more attributes and less objects, then the number of concepts recognized will increase in multiple, and one will recognize more objects based on the result of cognition. Another advantage of our multi-level approach is that by using the path of concept learning, we are able to have a better and long lasting memory of what we learned.

It is obvious that the more the number of concepts we get, the more we know about the data set, the more effective the method used in cognitive concepts. Based on the results in Table 10, we find the effectiveness of our attribute-oriented multi-level cognitive concept learning method in cognitive concepts. Table 10 only lists the comparison of the number of concepts obtained by those three different approaches. It is also worth noting that we got a large number of incomplete concepts at the same time in the results of the tested five data sets which are listed in Tables 5, 6, 7, 8 and 9. The significance of the number of incomplete concepts and the total number of concepts and incomplete concepts is what we should concern about. Actually, we recognized some objects by getting some concepts or incomplete concepts in distinguishing two certain objects. Next, we will discuss the objects recognized by using our multi-level method and the other two approaches (two-way and three-way). Table 11 lists the number of objects recognized by our attribute-oriented multi-level cognitive concept learning method, the existing granular computing approach to two-way learning [44] and the three-way cognitive concept learning via multi-granularity [9] in the five tested data sets. Since Xu and Li have not analysed the recognized objects in their granular computing approach to two-way learning [44], the number of objects recognized in each data sets by two-way learning record as “ / ”. As for the three-way cognitive concept learning, the number of concepts recognized is mainly determined by the number of granules. Based on the number of concepts recognized by three-way approach and the definition of three-way cognitive concept in [9], we record the biggest number of objects which can be recognized by this method in this table.

Table 11 The number of objects recognized by multi-level method, two-way [44] and three-way [9] approaches

From Table 11, it is obvious that by using our multi-level method, we can recognize parts of the objects in each data set, especially in the data set \(Letter\ recognition\), we recognized 504 objects. By using the three-way approach, they can recognized some objects. Intuitively the number of objects recognized by our multi-level method are much more than the number of objects recognized by the three-way approach in most data set (except the data set \(Wholesale\ customers\)). While in [44], the authors can not recognize the objects in the data set. This explains the validity of our method in recognizing the nature of objects, and further illustrates that our method is more useful in practice.

In fact, the aims of our attribute-oriented multi-level cognitive concept learning method are: (1) to obtain all the concepts in data set; (2) to recognize some certain objects in each data set; (3) to distinguish between two objects (in different object sets of concepts or incomplete concepts). Table 10 shows the advantage of our method in achieving aim (1). Table 11 shows the superiority of our method in achieving aim (2). As for the aim (3), it is difficult to directly explain how to distinguish between two different objects, because there are too many objects for us to distinguish. The specific approach of distinguishing two certain objects (in different object sets of concepts or incomplete concepts) can be found in the case study section.

7 Conclusions

Formal concept can be regarded as the formalization of the basic knowledge unit in the specific knowledge background. Formal concept analysis can effectively realize the extraction of basic knowledge units in the data. The main advantage of formal concept analysis theory is that it uses a graphic to represent the internal logic and organizational structure of the database. The shortcoming is that it is too complicated to give a clear and concise expression of concepts. In this paper, by defining some special attributes: general attribute, focal attribute and essential attribute, we first simulated human cognitive process and mechanism, and then we established an attribute-oriented multi-level cognitive concept learning structure based on the human cognitive psychology and philosophy. Furthermore, an algorithm of cognitive concepts learning is studied and established in a formal context. Finally, to interpret and help understand our method of conceptual cognition, we conducted an experiment about animal cognition, and studied the semantic interpretations of the concepts and incomplete concepts after we map the attribute-oriented multi-level cognitive concept learning figure. Moreover, the skill of how to distinguish any two objects (in different object sets of concepts or incomplete concepts) is introduced based on our multi-level method. In addition, five data sets downloaded from UCI databases are tested to verify the effectiveness of our attribute-oriented multi-level cognitive concept learning method and the corresponding program. Compared with the existing granular computing approach to two-way learning and the three-way cognitive concept learning via multi-granularity, results have shown the feasibility and superiority of our proposed method. In the future, we will consider the structure of object-oriented multi-level cognitive concept learning method from the perspective of objects, then an attribute-object-oriented multi-level cognitive concept learning patten will be taken into account to solve the problem of cognitive concept learning from both attributes and objects points of views (i.e., the whole formal context).