KlassenKlassenKlassenKlassen | | | | Operatoren

set_params_class_knnT_set_params_class_knnSetParamsClassKnnset_params_class_knnSetParamsClassKnnSetParamsClassKnn (Operator)

Name

set_params_class_knnT_set_params_class_knnSetParamsClassKnnset_params_class_knnSetParamsClassKnnSetParamsClassKnn — Setzt die Klassifikationsparameter eines k-NN-Klassifikators.

Signatur

set_params_class_knn( : : KNNHandle, GenParamName, GenParamValue : )

Herror T_set_params_class_knn(const Htuple KNNHandle, const Htuple GenParamName, const Htuple GenParamValue)

Herror set_params_class_knn(const HTuple& KNNHandle, const HTuple& GenParamName, const HTuple& GenParamValue)

void HClassKnn::SetParamsClassKnn(const HTuple& GenParamName, const HTuple& GenParamValue) const

void SetParamsClassKnn(const HTuple& KNNHandle, const HTuple& GenParamName, const HTuple& GenParamValue)

void HClassKnn::SetParamsClassKnn(const HTuple& GenParamName, const HTuple& GenParamValue) const

void HOperatorSetX.SetParamsClassKnn(
[in] VARIANT KNNHandle, [in] VARIANT GenParamName, [in] VARIANT GenParamValue)

void HClassKnnX.SetParamsClassKnn(
[in] VARIANT GenParamName, [in] VARIANT GenParamValue)

static void HOperatorSet.SetParamsClassKnn(HTuple KNNHandle, HTuple genParamName, HTuple genParamValue)

void HClassKnn.SetParamsClassKnn(HTuple genParamName, HTuple genParamValue)

Beschreibung

set_params_class_knnset_params_class_knnSetParamsClassKnnset_params_class_knnSetParamsClassKnnSetParamsClassKnn setzt die Parameter der Klassifikation für den k-NN-Klassifikators KNNHandleKNNHandleKNNHandleKNNHandleKNNHandleKNNHandle. Das Setzen der Parameter beeinflusst die Ergebnisse und Verhalten von classify_class_knnclassify_class_knnClassifyClassKnnclassify_class_knnClassifyClassKnnClassifyClassKnn.

Mithilfe von set_params_class_knnset_params_class_knnSetParamsClassKnnset_params_class_knnSetParamsClassKnnSetParamsClassKnn können sowohl die Anzahl 'k'"k""k""k""k""k" der verwendeten Nachbarn, als auch weitere Parameter, mit Hilfe von GenParamNameGenParamNameGenParamNameGenParamNameGenParamNamegenParamName und GenParamValueGenParamValueGenParamValueGenParamValueGenParamValuegenParamValue eingestellt werden. Das Erhöhen des Wertes für 'k'"k""k""k""k""k" erhöht die Genauigkeit der Ergebnisse, führt allerdings zu längeren Laufzeiten. Mit der Auswahl der Methode 'method'"method""method""method""method""method" und 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes" können verschiedene Ergebnistypen für classify_class_knnclassify_class_knnClassifyClassKnnclassify_class_knnClassifyClassKnnClassifyClassKnn ausgewählt werden:

'classes_distance'"classes_distance""classes_distance""classes_distance""classes_distance""classes_distance":

Ist diese Option gewählt, werden die Klassen der nächsten 'k'"k""k""k""k""k" Vektoren zurückgegeben und deren Distanz zum Merkmalsvektor. Es wird allerdings nur das nächste Beispiel für eine Klasse verwendet, und es werden maximal 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes" Werte zurückgegeben. In einem k-NN besteht keine effiziente Möglichkeit exakt 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes" Klassen zu finden.

'classes_frequency'"classes_frequency""classes_frequency""classes_frequency""classes_frequency""classes_frequency":

Ist diese Option gewählt, werden die häufigsten Klassen unter den nächsten 'k'"k""k""k""k""k" Vektoren zurückgegeben. Die jeweilige relative Häufigkeit der Klassen wird als Bewertung mit zurückgegeben. Die Anzahl der Rückgabewerte ist maximal 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes".

'classes_weighted_frequency'"classes_weighted_frequency""classes_weighted_frequency""classes_weighted_frequency""classes_weighted_frequency""classes_weighted_frequency":

Ist diese Option gewählt, werden die häufigsten Klassen unter den nächsten 'k'"k""k""k""k""k" Vektoren zurückgegeben allerdings sortiert nach der Häufigkeit gewichtet mit der jeweiligen Distanz zum Merkmalsvektor. Die jeweilige gewichtete Häufigkeit wird als Bewertung als Zahl zwischen 0.0 und 1.0 mit zurückgegeben. Die Anzahl der Rückgabewerte ist maximal 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes".

'neighbors_distance'"neighbors_distance""neighbors_distance""neighbors_distance""neighbors_distance""neighbors_distance":

Ist diese Option gewählt, werden die nächsten 'k'"k""k""k""k""k" Nachbarn und deren Distanzen zurückgegeben. Der Wert von 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes" wird hierbei ignoriert.

Der Standardrückgabemethode ist 'classes_distance'"classes_distance""classes_distance""classes_distance""classes_distance""classes_distance".

Zusätzlich können noch die Anzahl an Versuchen das Ergebnis zu verbessern mit 'num_checks'"num_checks""num_checks""num_checks""num_checks""num_checks" eingestellt werden: Der Parameter muss positiv sein und der Standardwert ist 32. Eine Erhöhung führt zu genaueren Ergebnissen bei höherer Laufzeit. Das Setzen des Wertes auf 0 führt zu einer exakten Suche.

Zusätzlich kann noch mit 'epsilon'"epsilon""epsilon""epsilon""epsilon""epsilon" ein Abbruchkriterium aktiviert werden, indem der Wert über den Standardwert 0.0 angehoben wird. Das führt unter Umständen zu schnelleren Ergebnissen, bei höherem Risiko, nicht den exakten nächsten Nachbarn zu finden.

Parallelisierung

Dieser Operator modifiziert den Zustand des folgenden Eingabeparameters:

Der Wert dieses Parameters darf nicht über mehrere Threads verwendet werden.

Parameter

KNNHandleKNNHandleKNNHandleKNNHandleKNNHandleKNNHandle (input_control, Zustand wird modifiziert)  class_knn HClassKnn, HTupleHTupleHClassKnn, HTupleHClassKnnX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Handle eines k-NN-Klassifikators.

GenParamNameGenParamNameGenParamNameGenParamNameGenParamNamegenParamName (input_control)  string-array HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Namen der generischen Parameter des k-NN-Klassifikators.

Defaultwert: ['method','k','max_num_classes'] ["method","k","max_num_classes"] ["method","k","max_num_classes"] ["method","k","max_num_classes"] ["method","k","max_num_classes"] ["method","k","max_num_classes"]

Werteliste: 'epsilon'"epsilon""epsilon""epsilon""epsilon""epsilon", 'k'"k""k""k""k""k", 'max_num_classes'"max_num_classes""max_num_classes""max_num_classes""max_num_classes""max_num_classes", 'method'"method""method""method""method""method", 'num_checks'"num_checks""num_checks""num_checks""num_checks""num_checks"

GenParamValueGenParamValueGenParamValueGenParamValueGenParamValuegenParamValue (input_control)  number-array HTupleHTupleHTupleVARIANTHtuple (integer / real / string) (int / long / double / string) (Hlong / double / HString) (Hlong / double / char*) (Hlong / double / BSTR) (Hlong / double / char*)

Werte der generischen Parameter des k-NN-Klassifikators.

Defaultwert: ['classes_distance',5,1] ["classes_distance",5,1] ["classes_distance",5,1] ["classes_distance",5,1] ["classes_distance",5,1] ["classes_distance",5,1]

Wertevorschläge: 'classes_distance'"classes_distance""classes_distance""classes_distance""classes_distance""classes_distance", 'classes_frequency'"classes_frequency""classes_frequency""classes_frequency""classes_frequency""classes_frequency", 'classes_weighted_frequencies'"classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies""classes_weighted_frequencies", 'neighbors_distance'"neighbors_distance""neighbors_distance""neighbors_distance""neighbors_distance""neighbors_distance", 32, 0.0, 0.02, 0, 1, 2, 3, 4, 5, 6

Ergebnis

Sind die Parameterwerte korrekt, dann liefert set_params_class_knnset_params_class_knnSetParamsClassKnnset_params_class_knnSetParamsClassKnnSetParamsClassKnn den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

train_class_knntrain_class_knnTrainClassKnntrain_class_knnTrainClassKnnTrainClassKnn, read_class_knnread_class_knnReadClassKnnread_class_knnReadClassKnnReadClassKnn

Nachfolger

classify_class_knnclassify_class_knnClassifyClassKnnclassify_class_knnClassifyClassKnnClassifyClassKnn

Siehe auch

create_class_knncreate_class_knnCreateClassKnncreate_class_knnCreateClassKnnCreateClassKnn, read_class_knnread_class_knnReadClassKnnread_class_knnReadClassKnnReadClassKnn, get_params_class_knnget_params_class_knnGetParamsClassKnnget_params_class_knnGetParamsClassKnnGetParamsClassKnn

Literatur

Marius Muja, David G. Lowe: „Fast Approximate Nearest Neighbors with Automatic Algorithm Configuration“; International Conference on Computer Vision Theory and Applications (VISAPP 09); 2009.

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren