classify_class_knn
— Sucht nach den nächsten Nachbarn eines gegebenen Merkmalsvektors.
classify_class_knn
sucht die nächsten 'k' Nachbarn
zu dem gegebenen Merkmalsvektor in Features
.
Die Nachbarschaft wird mit Hilfe der L2-Norm zwischen dem gegebenen
Merkmalsvektors und den Trainingsbeispielen ermittelt.
Mithilfe von set_params_class_knn
können sowohl die Anzahl
'k' der verwendeten Nachbarn, als auch weitere Parameter,
die das Verhalten von classify_class_knn
steuern, eingestellt
werden. Mit der Auswahl der Methode 'method' und
'max_num_classes' in set_params_class_knn
können
verschiedene Ergebnistypen für classify_class_knn
ausgewählt werden:
Ist diese Option gewählt, werden
die Klassen der nächsten 'k' Vektoren in Result
zurückgegeben und deren Distanz zum Merkmalsvektor in Rating
.
Es wird allerdings nur das nächste Beispiel für eine Klasse verwendet,
und es werden maximal 'max_num_classes' Werte zurückgegeben.
In einem k-NN besteht keine effiziente Möglichkeit exakt
'max_num_classes' zu finden.
Ist diese Option gewählt, werden
die häufigsten Klassen unter den nächsten 'k'
Vektoren zurückgegeben. Die relative Häufigkeit wird in Rating
zurückgegeben. Es werden maximal 'max_num_classes' Werte
zurückgegeben.
Ist diese Option gewählt,
werden die häufigsten Klassen unter den nächsten 'k'
Vektoren zurückgegeben allerdings sortiert nach der Häufigkeit
gewichtet mit der jeweiligen Distanz zum Merkmalsvektor.
Die gewichtete Häufigkeit wird in Rating
zurückgegeben als
Zahl zwischen 0.0 und 1.0.
Es werden maximal 'max_num_classes' Werte zurückgegeben.
Ist diese Option gewählt, werden
die nächsten 'k' Nachbarn in Result
und deren
Distanzen in Rating
zurückgegeben.
Der Wert von 'max_num_classes' wird hierbei ignoriert.
Im Standardfall gibt classify_class_knn
die Klasse und Distanz des
nächsten Beispiels zurück (entspricht 'classes_distance' ).
KNNHandle
(input_control) class_knn →
(handle)
Handle des k-NN-Klassifikators.
Features
(input_control) number-array →
(real)
Merkmalsvektor der klassifiziert werden soll.
Result
(output_control) number-array →
(integer)
Ergebnisse der Klassifikation, entweder als Klassen oder Indizes.
Rating
(output_control) number-array →
(real)
Bewertung der Ergebnisse, entweder als Distanzen oder als relative oder gewichtete Häufigkeiten.
Sind die Parameterwerte korrekt, dann liefert
classify_class_knn
den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
train_class_knn
,
read_class_knn
,
set_params_class_knn
create_class_knn
,
read_class_knn
Marius Muja, David G. Lowe: „Fast Approximate Nearest Neighbors with Automatic Algorithm Configuration“; International Conference on Computer Vision Theory and Applications (VISAPP 09); 2009.
Foundation