Operator Reference
learn_class_box (Operator)
learn_class_box
— Train the classifier.
Warning
learn_class_box
is obsolete and is only provided for
reasons of backward compatibility. New applications should use the
MLP, SVM, KNN or GMM operators instead. The operator will be removed with
HALCON 25.11.
Signature
learn_class_box( : : ClassifHandle, Features, Class : )
Description
Features
is a tuple of any floating point numbers or integers
(attributes) which has to be assigned to the class Class
. This
class is specified by an integer. You may use the operator
enquire_class_box
later to find the most probable class for any array
(=tuple). The algorithm tries to describe the set of arrays of one class by
hyper cuboids in the feature space. On demand you may even create several
cuboids per class. Hence it is possible to learn disjunct concepts, too. I.e
such concepts which split in several “cluster” of points in the feature
space. The data structure is hidden to the user and only accessible with such
operators which are described in this chapter.
Note that if a class consists of disjunct sub-classes that would lead to a splitting of the respective hyper cuboid, the training samples should be in random order with respect to the sub-classes. Otherwise, the splitting of the hyper cuboid will be sub-optimal.
It is possible to specify attributes as unknown by indicating the symbol '*' instead of a number. If you specify n values, then all following values, i.e. the attributes n+1 until 'max', are automatically supposed to be undefined.
You may call the operators learn_class_box
and
enquire_class_box
alternately, so that it is possible to classify
already in the phase of learning. By this means you could see when a
satisfying behavior had been reached.
The classifier is going to be bigger using further training. This means, that it is not advisable to continue training after reaching a satisfactory behavior.
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
This operator modifies the state of the following input parameter:
During execution of this operator, access to the value of this parameter must be synchronized if it is used across multiple threads.
Parameters
ClassifHandle
(input_control, state is modified) class_box →
(handle)
Handle of the classifier.
Features
(input_control) number-array →
(real / integer / string)
Array of attributes to learn.
Default: [1.0,1.5,2.0]
Class
(input_control) integer →
(integer)
Class to which the array has to be assigned.
Default: 1
Result
learn_class_box
returns 2 (
H_MSG_TRUE)
for a normal case.
An exception is raised if there are memory allocation
problems. The number of classes is constrained.
If this limit is passed, an exception is raised, too.
Possible Predecessors
create_class_box
,
enquire_class_box
Possible Successors
test_sampset_box
,
enquire_class_box
,
write_class_box
,
close_class_box
,
clear_sampset
See also
test_sampset_box
,
close_class_box
,
create_class_box
,
enquire_class_box
,
learn_sampset_box
Module
Foundation