<figure><img src="image_1.png" /></figure>

HAL
open science

# Hierarchical Knowledge Structure Applied to Image Analyzing System - Possibilities of Practical Usage

Krzysztof Wójcik

► To cite this version:

Krzysztof Wójcik. Hierarchical Knowledge Structure Applied to Image Analyzing System - Possibilities of Practical Usage. 1st Availability, Reliability and Security (CD-ARES), Aug 2011, Vienna, Austria. pp.149-163, 10.1007/978-3-642-23300-5_12. hal-01590388

HAL Id: hal-01590388

https://inria.hal.science/hal-01590388

Submitted on 19 Sep 2017

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Hierarchical Knowledge Structure Applied to Image Analyzing System - Possibilities of Practical Usage

Krzysztof Wójcik

Pedagogical University of Cracow, Institute of Computer Science
ul.Podchorążych 2, 30-084 Kraków, Poland
krzyw@ap.krakow.pl

**Abstract.** This article describes a proposition and first examples of using inductive learning methods in building of the image understanding system with the hierarchical structure of knowledge. This system may be utilized in various task of automatic image interpretation, classification and image enhancement. The paper points to the essential problems of the whole method: the constructing an effective algorithm of conceptual clustering and creation of the method of knowledge evaluation. Some possible solutions are discussed and first practical results (image filtering) are presented.

**keywords:** image understanding, pattern recognition, image processing, knowledge engineering, machine learning, cognitive informatics.

## 1 Introduction

The starting point of presented research is the general idea of the image understanding methods (Figure 1). The most important characteristic of that approach is the extraction of the semantic content of the image (or more generally - the phenomenon or event). It is constructed by the automatic reasoning process, according to the knowledge about the images [5]. This scheme can essentially improve the automatic interpretation of the events, but we can also point to some weaknesses. The first one is the assumption that we have a useful model of the phenomena. The process of creating the model of a domain involves both, the definition of concepts and defining the relationships between them [4]. This task is more formally called an ontology building. There are several tools [6] which may support this process but the starting assumptions still depend on the knowledge and intuition of the researcher (i.e. human being) [4]. The created ontology describes one specific reality, so the system is often insufficiently flexible to act in a changing environment. That is the second weakness. Another difficulty is associated with a problem of knowledge acquisition - learning. There is no general methodology of learning [2], we have several methods, but the open problem is how to choose the suitable one and accommodate it to the changing circumstances.
The article describes an attempt to overcome these weaknesses, it explains a simple idea of creating the concept structure according to the visible phenomena. This structure includes the general knowledge about images and may be considered as the model of the phenomena.

The method will be illustrated by the chosen examples - mainly by the method of the removing of obstructions from image. They may be caused by the noise (this is an often effect of image acquiring in extreme poor light condition), by artifacts (as a result of image compression, typically occurs in USB cameras). The obstructions may be also caused by dust or scratches (analyzing of the archive, analog photos).

<figure><img src="image_3.png" /><figcaption>Fig. 1. Idea of the image understanding (based on the [5]).</figcaption></figure>

## 2 Method Outline

I begin with the problems of ontology creation. Following this approach I will cancel or reduce all initial assumptions about the visible phenomena.

That reduction leads to the statement that the phenomenon consists of a kind of atomic, elementary parts, called primitive objects or instances. They corresponds to the primitive “concepts”, called also types or classes. Suffice it to say that concepts are some kind of generalization of objects. The objects are connected by primitive relationships. We will use the following notations:

$\mathcal{X}$ — space of all objects,

$\mathbf{X}_0, \mathbf{X} \subset \mathcal{X}$ — sets of objects,

$\mathbf{C}_0, \mathbf{C}$ — sets of concepts,

$\mathbf{D}_0, \mathbf{D}$ — sets of relationships.

So, at the beginning, we assume that $\mathbf{C}_0, \mathbf{D}_0$ represent primitive concepts and primitive relationships respectively. These sets contain the whole initial knowledge. The main idea is that the general knowledge is included in the structure of concepts. So, the increase of knowledge is possible by creating the new concepts.
I consider those concepts as the generalization of objects, therefore the presence of the certain objects in the given reality is a condition of the concept creating. This universal idea is utilized in various kinds of inductive learning and learning based on the observation [1]. The objects which make the creating of the concept possible should be in some way significant. I assume that it will happen if objects are connected by the relationships. A frequent, multiple presence of those objects should strengthen their ability to create concepts, according to the simple rule: *this phenomenon occurs many times, so it must be important*. Now I will be more precise about this.

Let us assume, we can select the primitive objects and recognize them as particular instances corresponding to the certain concepts (classification task). Let us also assume that it is possible to check all prior defined relations between all objects. Consider one of them, indicated by:

$r_i$, where: $r_i \in \mathbf{D}$, $i \in \mathbf{I}$, $\mathbf{I} = \{1, 2, ..., u\}$ is a set of indices of relations. Let us presume, $r_i$ has $n$ arguments, so it may be satisfied by some $n$-tuple (ordered sequence of $n$ elements) indicated by:

$t, t \in \mathbb{X}^n \quad (\text{nth Cartesian power of set } \mathbb{X})$

Of course, this relationship may be satisfied by many other sequence, denoted by:

$t_{ik}$, where: $i \in \mathbf{I}$, $k \in \mathbf{K}$, $\mathbf{K} = \{1, 2, ..., m\}$ is a set of indices of tuples, which satisfy $r_i$ relation (the first index of tuple $t_{ik}$, point to $r_i$ relation).

Just according to the selected tuples we will try to create groups (sets) of objects that will allow us to construct the new concept. Let us define the group $\mathbf{G}$ as an ordered set of selected tuples:

$$ \mathbf{G} = \{t_{ik} : i \in \mathbf{I}, k \in \mathbf{K}\} $$

(we assume here (see above) that first index of tuple $t_{ik}$ allows us to identify relation which is satisfied).

Let us transform the $\mathbf{G}$ set by the simple replacing of each object in each tuple by the label of object type. We obtain a set, denoted by $\mathbf{S}$, that describes an abstract<fnref n="1" /> arrangement of relations in the group. The groups that have identical or similar<fnref n="2" /> arrangement will be regarded as similar. Many such groups may appear in the sequence of input images. So, a set of similar groups should be considered:

$$ \mathbf{G} = \{\mathbf{G}_1, \mathbf{G}_2, ..., \mathbf{G}_z\} $$

The $\mathbf{G}$ set will be used in creation of the new concept. The next chapter presents a simple method of construction of the $\mathbf{G}$ set. Generally, this task should consist of a kind of conceptual clustering<fnref n="3" />, in domain of defined above groups. After the clustering process we can obtain a set of groups, which are similar to each other, and according to this we can determine one, most characteristic group. I

<footnote n="1">¹ Depending on the types, not on the particular objects.</footnote>

<footnote n="2">² Similarity may be defined here in several ways.</footnote>

<footnote n="3">³ We have a $n$-ary relations, that might be represented by the predicate $\mathbb{P}(t)$, $t \in \mathbb{X}^n$. So, the solution of the clustering task may base on the usage of first-order representations and methods of inductive logic programming (ILP) [3].</footnote>
will use $G'$ to denote this group, and $S'$ to denote an arrangement of relations in $G'$. The whole task of creation of $G'$ set will be denoted by $FG$.

<figure><img src="image_4.png" /><figcaption>Fig. 2. Example of the group structure.</figcaption></figure>

Figure 2 shows several indexed objects $x_1, x_2, \dots$ of three types (circle, pentagon, square). The few relationships are also defined ($r_1$ - red oval, $r_2$ - blue, $r_3$ - orange, $r_4$ - green, $r_5$ - black). We can specify several tuples:

$t_{31} = (x_2)$, $t_{32} = (x_9)$, $t_{33} = (x_{11})$ (the $t_{31}$ denotes 1-st tuple of relation $r_3$)

$t_{21} = (x_1, x_4)$, $t_{22} = (x_1, x_2)$, $t_{23} = (x_8, x_9)$, $t_{24} = (x_8, x_7)$

$t_{41} = (x_3, x_5)$, $t_{42} = (x_{10}, x_{11})$,

$t_{11} = (x_1, x_2, x_3)$, $t_{12} = (x_9, x_8, x_{10})$.

So, I can point to two groups “strongly” connected by the relations:

$G_1 = \{t_{31}, t_{21}, t_{22}, t_{11}\}$, $G_2 = \{t_{32}, t_{24}, t_{23}, t_{12}\}$ then $G = \{G_1, G_2\}$ and for example: $G' = G_1$

Let us go back to the main problem. As a first approximation, we can say:

$$new \ concept = S'$$

The new concept is treated as an arrangement of relationships enriched by the information about the types of their arguments. To let us describe the new phenomena more completely, it should contain an additional information. The new object (of a new concept) may be defined as a combination of several sub-objects according to the structure of the group (see next part of this chapter). The new objects may have new attributes (new properties vector). The objects should in some way inherit properties from sub-objects. It may be done for example by the simple copying, calculating a sum or average of given values. More generally, we can imagine the task of calculating the attributes as a combination of certain standard transformation. Let $FA$ be a whole process of creating of new properties vector.

There is another significant question. The new objects are the combination of sub-objects, but may they be applied as arguments of old relationships? Or, should the old relationship be rather redefined in order to be applied to the new objects? It depends on how long we require the new objects to inherit a
behavior of its parents. To be more precise, it depends on how the attributes
are transformed (in the previous **FA** process) and what new interpretation they
have. Let **FR** be a process of adapting or creating the new relationships.

Finally, we can consider the concept as a composition of elements:

S', FG, FA, FR

So, the creation of the new concept is performed by the combination of transfor-
mations **FG**, **FA** and **FR**. As a result the new concept, new relationships and
new objects are obtained. We can join them into the **C**, **D**, **X** sets respectively.
The whole process may be operated repetitively. This results in creating a hier-
archical structure of concepts and hierarchical structure of new objects, see the
Figure 3. The structure of concepts includes the new general knowledge, while
the structure of objects contains the knowledge about the particular scene. The
structure of concepts may be also treated as a model of given reality. Thanks to
hierarchical form, the knowledge may be interpreted, verified, adapted to other
systems and finally understood by the man.

Thus, there are two general aspects of learning. First is associated with the
process of the creating of the concept structure. It means a building of the model
of the reality. The second kind of learning (creating of the structure of objects)
deals with the acquisition of knowledge about particular objects (scene).

<figure><img src="image_5.png" /><figcaption>**Fig. 3.** The iterative process of knowledge creation. If the new concepts are not created, the action may be called an “image interpretation”.</figcaption></figure>

There still remain two important matters. The first one is associated with
the question: is this knowledge really useful? The knowledge evaluation may be
performed in several ways:

- By the practical action.

Let us imagine the system as an agent acting in the certain environment.
According to the given scene and its own concept structure the agent can create the structure of objects. Then, the correlation between the existence of the certain concepts and the agent's ability to make correct decisions (or simple ability to survive) can be computed. We assume that the agent be able to do the correct decisions has the most useful knowledge. This approach may be used especially in evolutionary algorithms.

- By the defined performance function.

The hierarchical knowledge may be interpreted, so a direct method of its evaluation may be defined.

- By the using of the arbiter, teacher (supervised learning).

The second important problem mentioned above, is how to find the best concept structure (i.e. system knowledge). This task may be treated as the task of the optimization of the function in a multidimensional space. It seems to be properly defined; we have the criterion function <fnref n="4" />, we can also control the process of creating the concept structure. That suggests that to find the suitable concept structure we can use one of the well-known techniques, for example:

- “Trial and error method”.

- Certain kind of evolutionary algorithm (a particular system is considered as an individual).

- Kind of Monte Carlo method.

However, the direct usage of such methods is problematical. The particular concept structure is generated as a result of multiple execution of transformation **FG**, **FA** and **FR**. There are many possible variants of these transformation. The solution is one point of the extremely large hypothesis space. In order to decrease the number of solutions, we can propose some heuristic approach. Assume generally that the selection of each transformations is done with the help of a certain local criterion functions. These functions play a role of a guide that helps searching through the decision tree. The next parts of article provide more details.

## 3 The Simple Solution - the Example of Using the Method in the Image Analysis System

The examples that will be described in the next chapters have been tested in the simple image analyzing system which has been designed mainly as a field of experiments. The first example is trivial, but allows us to point to some important properties of the method.

The first steps refer to defining the initial sets **C₀**, **D₀** (primitive concepts and relationships). As a system input is considered a sequence of pictures from CCD camera (I have used figures of animals drawn by a child). By using the

<footnote n="4">⁴ it may be directly the performance function, or some functions that depend on the teacher's decision or effects of the practical action</footnote>
segmentation method we can identify sets of pixels which create a simple raster
figures. These figures may be easily transformed to vectors with properties like:
*number of pixels, color, center coordinates, approximate shape*. This structure
will be considered as a primitive object. Between such objects some primitive
relationships are defined: binary *- neighboring*, and a few unary, for example:
*having a small size, having a red color*.

The next steps relate to the **FG**, **FA** and **FR** transformations.

1. The **FG** transformation, selection of the **G** and **G'** sets.

The relationships which hold between the objects in the groups generally refer to
any, multi-argument predicates. In this simple case I will take into consideration
only one- or two-argument relationships. A group **G** will be created by one main
object o<sub>m</sub> ∈ **X** and several objects which are connected with it by some relations.
That group may be easily determined by checking all possible relationships of
the o<sub>m</sub> object. In this way we can create groups for all o<sub>m</sub> objects. Having the
set of groups, a simple clustering can be performed. In this connection we should
draw attention to several universal criteria:

1. The basic criterion - number of similar groups. The groups which have identical arrangement of relationships are similar (see previous chapter), and may create a cluster. The number of groups in this cluster indicates how important it is. The arrangement of the groups will be called a “pattern”.

2. The validity of objects that create the groups. After a few iterations of the concept creation process we obtain many combined objects. Each object may be evaluated directly basis on the number of objects that were included.

3. The validity of the relationships between the objects of the group. In the simple way it can be expressed by the number of relationships that connect objects in the group. In addition the amount of one-argument relationships that are satisfied by the main o_m object may be respected.

4. The “parent-child” restriction. Let us presume, we create a new group **G**<sub>n</sub> based on the main object o<sub>m</sub>. Let o<sub>m</sub> (as a combined object) consist of “parent” object o<sub>p</sub>. Assume that the new group **G**<sub>n</sub> includes also the o<sub>p</sub>. Such a “double” object as a redundant should be deleted or, if not, the evaluation of such a group should be decreased.

5. The similarity to old patterns. The similarity between groups on the analyzing scenes is of course a base of clustering. But the similarity between the new groups and groups that was already used to create the concepts is undesirable. It may result in creating a redundant concept.

According to the given rules a sorted list of sets of groups can be made. The best element that may be considered as the $\mathcal{G}$ set will be used to create the concept.

So, the mentioned above criteria play a role of local criterion functions (guide function) that help searching through the decision tree (chapter 2).

2. The **FA** transformation, definition of new properties vector.

The calculating of the attributes of the new objects must base on the properties
of the component objects. Without going into details, we can calculate the sum
(number of pixels), average (color, center coordinate) and maximum (shape).
3. The **FR** transformation, process of adapting or creating the relationships.
In described case the new concepts inherit all old relationships.

After a description of the **FG**, **FA** and **FR** transformations, we should still
explain how we will evaluate the knowledge and which searching algorithm will
be used (chapter 2). In our very simple case the evaluation will depend on the
"agent's ability to survive". Therefore we use an uncomplicated "trial and error
method".

<figure><img src="image_6.png" /><figcaption>**Fig. 4.** The input sequence of pictures - the figures of animals.</figcaption></figure>

Figure 4 shows the sequence of analyzing pictures. The next picture (Figure 5) presents processed images and frames showing the “state” of the system. The green circled item (top right) is an example of a pattern.

1.7 1.7 1.7 1.7 | 3 4 ct 8 ## 3 qqq 10⁵

The list of defined concepts is shown in the left-center frame. The red circled item:

type 10 ct 8 qq 5 pat: 1.7 1.7 1.7 1.7 | 3 4 6

shows the definition of type 10, that represents something having big, blue body
and four green legs. We can consider this as a concept "horse". The bootom
frames show the system state after analysis of second and third images presented
in the Figure 4. We can identify two another concept:

type 11 ct 0 qq 1 pat: | 5 6

type 13 ct 10 qq 6 pat: 1.11 | 2 4

The first one we consider as a “rider”, while the second as a “rider on the
horse” (the object of type 11 “rider” is connected to the main object of type
10 “horse”). The creation of the last concept was possible when the concept
“horse” was created first. We can say that the proper interpretation of a new
phenomenon is possible when the suitable knowledge is available. Without them,
it may be understood as a “dragon” with four legs and something red on the
top.

<footnote n="5">⁵ 1.7 - relation 1 *neighboring*; holds between the main object and four others of type 7, 3 4 - properties of main object *having a blue color*, *having a big size*, ct 8 - type of the main object (index of concept on the list), ## 3 - number of the group of objects that match the pattern, qqq 10 - value of performance function of pattern.</footnote>

<footnote n="6">⁶ type 10 - number of type, ct 8 - type of the main object, qq 5 - value of validity function of that type, pat: 1.7 1.7 1.7 1.7 | 3 4 - the pattern described earlier (objects of type 7 have properties 2,5; *having a green color*, *having small size*)</footnote>
<figure><img src="image_7.png" /><figcaption>Fig. 5. The interface of the image understanding system - the concept definitions.</figcaption></figure>

## 4 Image Filtering - Obstruction Removing

The presented above example was an illustration of the method, while the current case may be also applied practically. The task deals with the method of the image quality enhancement. For simplicity, I will only go about the removing of the dust, noise effects or artifacts. The main problem here is how to recognize the little obstructions (artifacts, dust seeds) among other small objects on the picture. The simple image recognition methods consider the properties of the objects, but it is not enough to perform a correct classification. The other small objects have often the same properties. We should also take into consideration relationships between the objects.

As well as in the previous case we have the raster image, so we will also follow analogous steps. The first step corresponds to the definitions of the primitive concepts and primitive relationships (initial sets $C_0, D_0$, chapter 2). Like
in the previous example we can obtain (after a segmentation) sets of pixels that represent the objects and then we can calculate the vectors of object properties (identical properties are used: *number of pixels*, *color*, *center coordinates*, *approximate shape*). The figure 6 shows an example of raster image (part A), objects after the segmentation process (part B) and the “map” of primitive objects (part C).

<figure><img src="image_8.png" /><figcaption>**Fig. 6.** A: example of raster image, that represents a fragment of a house roof. B: objects after the segmentation process (a region growing method was used). C: “The symbolic map” that depicts all object on the picture in the form of symbols (small circles). The unique name tags of objects as well as labels of their type are also displayed. D: Objects of learning strings (see the next chapter).</figcaption></figure>

The definitions of the relationships are also analogous. There are defined unary relations concerning properties like color and size (see chapter 3). In order to better convey the spatial interactions between objects, the binary relationship, *neighboring* (chapter 3) is split into two variants. They are: *neighboring up* (object is above the other one) and *neighboring down*.

Again, also the processes **FG**, **FA** and **FR** will be defined similarly.
In accordance with the our methodology, the next steps should involve two problems:

- the evaluation of the system knowledge,

- the choose of the the optimization method.

## 4.1 Evaluation of knowledge

A result of the working of the system is an enhancement of the picture quality, so it may be judged by the man. We can imagine thousands of output pictures generated by the systems (having different variants of knowledge). Their evaluation in this way is of course impossible. But remember, we are able to interpret the structure of the concepts (chapter 2). So, we will try to define the performance functions that should evaluate the possibility of usage of the concept structure in the classification task.

Let us divide all concepts which have been created to two parts. Let first of them correspond to the concepts which describe the “normal” objects that may appear in the picture (for example: trees, lives, homes, roofs, chimneys, cats, cat’s eyes, dogs, and so one). Let $C_1$ denote that concept set. In contrast, the second part, denoted by $C_0$ corresponds to the obstructions (artifacts, scratches, dust etc.) Additionally, consider the set of primitive objects (denoted in chapter 2 by $\mathbf{X}_0$). Based on this set two subset can be created: $S_0, S_1 \subset \mathbf{X}_0$. Let $S_1$ includes objects which (according to us) may be a part of “normal” objects that belong to concepts from $C_1$. Similarly, $S_0$ will be a set of primitive objects which may create objects of concepts from $C_0$. The $S_0$ and $S_1$ may be considered as training sets (learning sequences), created by the teacher. Our goal is to build such a knowledge (i.e. concept structure) that allows us to good distinguish between objects belonging to concepts from $C_0$ and $C_1$ respectively. If so, any object belonging to concept from $C_1$ set should include (as combined objects) a lot of primitive objects from $S_1$ and very few (or none of them) from $S_0$. Many kinds of functions which have this property can be proposed, for example:

$$f_1(C) = \begin{cases} 0 & \text{if } m_0 > m_1 \text{ or } m_1 = 0 \text{ or } m_0 > 1 \\ \frac{m_1^2}{n_1 n} & \text{otherwise} \end{cases} \quad (1)$$

where:

$C \in C_1$

$n$ — number of objects that belong to C concept

$n_1$ — number of elements in $S_1$

$m_0$ — number of primitive objects from $S_0$ that were used to create objects of C concept (the objects have the hierarchical structure, so the usage of the primitive objects may be direct or indirect)

$m_1$ — number of primitive objects from $S_1$ that were used to create objects of C concept
The value of $f_1$ function goes to 1$^7$ when concept $C$ includes objects that have been built using many elements of $S_1$. Even if one element from $S_0$ has been used, the value of function is 0$^8$.

In the same way a function $f_0$ that evaluates the possibility of recognition of "bad" objects, belonging to concepts from $C_0$ may be defined.
Having the functions:

$f_0(C^j)$, where: $C^j \in C_0, j = 1, 2, \dots$

$f_1(C^k)$, where: $C^k \in C_1, k = 1, 2, \dots$

which evaluate all concepts from $C_0$ and $C_1$ we can propose measure that evaluate the whole knowledge. This function may be based on a calculating of a maximum or weighted average of value of all $f_0(C^j)$ and $f_1(C^k)$. The measure used in our case will be defined later.

Let us note here interesting property of our system: its ability to work correctly without complete knowledge about all objects. The teacher who creates the training set selects such primitive objects, which are, according to him, most relevant and represent "difficult cases". Having such learning sequence the system must build complex structure of concepts, which may precisely interpret such difficult situations. However, a visible image includes a lot of "normal" objects whose components not appear in training set $^9$. In that case, the creation of concepts not involves using the evaluation criteria. The created concepts are mostly a small, uncomplicated and even desultory structure. So, automatically created knowledge structure is accurate in the crucial areas, while outside it has more accidental character. Our system may not "know" what is the cat's leg, but it must create the concept "cat's eye" in order to distinguish between small objects that were presented in the strings $S_0$ and $S_1$.

Let us go back to the filtering task. First, with the use of the learning method, introduced above, we should create the set $C_1$. Then, we may propose several variants of filtering procedure. In our case it is defined as follows:

1. Based on the given picture determining the primitive objects.

2. Among them finding the "suspicious" objects, which may be the seed of dust. This is an easy task. Due to the huge number of such objects, system usually creates the concept of "something small". It is also possible to directly choose the small objects from all primitive ones.

3. Creating the objects of all concepts from $C_1$.

<footnote>$^7$ normally: $m_1 \le n$, one object from $C$ concept is created according to only one primitive object from $S_1$, however there may exist object in $C$ which are not be created based on the object from $S_1$. Additionally, what is obvious: $m_1 \le n_1$</footnote>

<footnote>$^8$ The construction of the other forms of $f_1$ function involves also the usage of $m_0$ and $m_1$. If it is possible, the function should be independent on absolute value of $n_1, n$ and normalized to the chosen range, e.g. $\langle 0, 1 \rangle$</footnote>

<footnote>$^9$ The optimization method, see the next chapter, creates often many concepts in one route.</footnote>
4. Removing all suspicious objects which are not a components of the objects of $C_1$ concepts<fnref n="10" />.

One remark that only the concepts from $C_1$ are used here, so the function that evaluates the whole knowledge (see above) may be defined very simply:

$$ \xi(c_1) = \sum_{k=1}^{m} f_1(C^k), \quad C^k \in C_1, m \text{ - number of elements in } C_1 \text{ set} \quad (2) $$

<figure><img src="image_9.png" /><figcaption>Fig. 7. The upper frame: ranking list of the arrangements of the relationships. The bottom frame: set of defined concepts.</figcaption></figure>

Figure 6 D. depicts objects of learning strings $S_0$ (red) and $S_1$ (blue) (for the sake of better view they are superimposed on the raster picture). After a process of concepts creation (described in next chapter) a small concept structure was built, depicted in the bottom window of Figure 7. The item:

typ 12 ct 11 qq 2 pat: 8.10 | 3 7

is a definition of a concept that may be interpreted as a small, dark object situated above the brown, big one<fnref n="11" />. The Figure 8 presents two created objects

<footnote n="10">¹⁰ In the complementary method we can create the set $C_0$ (learning utilizes $f_0$ functions). Then, in 4th step we should remove suspicious objects which -are- a components of the objects of $C_0$ concepts.</footnote>

<footnote n="11">¹¹ type 12 - number of concept, ct 11 - type of the main object, qq 2 - value of validity of that concept, pat: 8.10 - relation 8 - neighboring up, holds between the main</footnote>
of this concept (superimposed on the raster picture). We can identify new concept
as the rod of the lightning conductor attached to the roof. The objects of new
concept may be distinguished from other objects nearby.

<figure><img src="image_10.png" /><figcaption>**Fig. 8.** The two instance of concept “rod of the lightning conductor attached to the roof”, 12 - number of type (concept), 194,195 - unique labels of objects.</figcaption></figure>

**4.2 Optimization method**

The whole task of knowledge building may be considered as a task of optimiza-
tion of a mutli-argument function. The creation of the knowledge (hierarchical
concept structure) is a multi-stage iterative process (chapter 2) On each stage
we should determine the **FG**, **FA** and **FR** transformation, but in our case the
transformation **FA** and **FR** will be always identical. So, we must determine only
the **FG** transformations, which corresponds to choosing the groups of tuples. In
this problem we will be supported by the heuristic method. On each stage we
may rank the groups according to a certain local criterion, which estimates the
possibility of the group to make a useful concept ¹². From the best groups we
choose a certain number of groups and basing on them we create the concepts.
There remains the question which of the groups to choose. The labels of groups
on the ranking list on all the stages may be considered as arguments of the
function being optimized. The Monte Carlo optimization method has been used
here. The concept described in previous point (chapter 4.1) was generated in
this way. The figure 7 (upper frame) presents ranking list of the relationship

<footnote>object and the object of type 10, 3 7 - properties of whole object: *having a brown color*, *having a big size*, furthermore, typ 10 has properties: 2,5 - *having a blue color*, *having small size*.

¹² We will not discuss the various forms of this function, its definition may respect the criteria from chapter 3, first of all the number of tuples in the group.</footnote>
arrangements on the last stage of the crating the hierarchical concept structure.
The values of the local criterion functions are displayed on the end of each line.

5 Conclusions

The conception of knowledge as certain hierarchical structures is relatively sim-
ply, but also limited. It not agrees with the many modern ways of understanding
the term "knowledge" [2]. Despite this, described approach may be useful in
the tasks of the ontology building, knowledge acquisition and interpretation of
particular phenomena. This is connected with a prospect of creating of these
structure fully automatically. Of course everything depends on the abilities of
developing and applying the appropriate methods. So, the most essential chal-
lenges are:

- Adapting the existing algorithms of clustering to the task of clustering of groups.

- Finding the methods of evaluating the knowledge.

- Finding the heuristic rules that allow us to accelerate the process of the search of the proper knowledge structure.

- Developing the methods for creating the new objects properties and relationships.

Without a progress in the solving of these problems the method seams to
be only a kind of tool to create “something from nothing”. The paper provides
some solutions of the problem. They should be treated as an incentive to further
researches.

References

1. Michalski, R.S., Steep R.: Learning from Observation: Conceptual Clustering, chapter in the book: Michalski, R.S., Carbonell, J.G., Mitchell, T.M. (eds.): Machine Learning: An Artificial Intelligence Approach, Vol. 2. Morgan Kaufmann, San Mateo (1986)

2. Michalski, R. S.: Inferential Theory of Learning and Inductive Databases. In: UQAM Summer Institute in Cognitive Sciences, Montreal, (June 30-July 11, 2003)

3. Muggleton, S. H., De Raedt, L.: Inductive logic programming: Theory and methods. Journal of Logic Programming, 19/20 (1994)

4. Russell, S., Norvig, P.: Artificial Intelligence: A Modern Approach. 3rd edn, Prentice Hall, Englewood Cliffs (2010)

5. Tadeusiewicz, R., Ogiela, M.R.: Medical Image Understanding Technology. Studies in Fuzziness and Soft Computing, vol. 156, Springer-Verlag, Heidelberg (2004)

6. Gennari J, et al.: The evolution of *Protégé*: An environment for knowledge-based systems development. Int. Journal of Human-Computer Interaction. 58(1) (2003)

7. Wójcik, K.: Inductive learning methods in the simple image understanding system. ICCVG’10 Proceedings of the 2010 international conference on Computer vision and graphics, Part I, Lecture Notes in Computer Science, Springer-Verlag Berlin, Heidelberg (2010)