set_rejection_params_class_mlpT_set_rejection_params_class_mlpSetRejectionParamsClassMlpSetRejectionParamsClassMlp (Operator)
Name
set_rejection_params_class_mlpT_set_rejection_params_class_mlpSetRejectionParamsClassMlpSetRejectionParamsClassMlp
— Setzen der Parameter einer Rückweisungsklasse.
Signatur
Beschreibung
set_rejection_params_class_mlpset_rejection_params_class_mlpSetRejectionParamsClassMlpSetRejectionParamsClassMlpSetRejectionParamsClassMlp
setzt die Parameter einer
automatisch generierten Rückweisungsklasse innerhalb eines
mehrschichtigen Perzeptrons (MLP), das in MLPHandleMLPHandleMLPHandleMLPHandleMLPHandle
übergeben wurde. In einigen Anwendungen ist es erstrebenswert zu
wissen, ob ein Merkmalsvektor ähnlich zu einem aus der
Trainingsmenge ist. Falls ein Merkmalsvektor außerhalb der zur
Verfügung stehenden Trainingsmenge liegt, soll er als eine spezielle
Rückweisungsklasse klassifiziert werden. Das bedeutet, dass der
Merkmalsvektor sich von dem Konfidenzbereich des Klassifikators
unterscheidet. Falls man die Benutzung einer zusätzlichen
Rückweisungsklasse beabsichtigt, muss eine zusätzliche Klasse beim
Erzeugen des Klassifikators in create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpCreateClassMlp
angegeben
werden. Hier muss entsprechend der Parameter NumOutputNumOutputNumOutputNumOutputnumOutput
um
eins erhöht werden.
Der Parameter der Rückweisungsklasse werden mit
GenParamNameGenParamNameGenParamNameGenParamNamegenParamName
gewählt, der entsprechende Wert mit
GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue
.
- 'rejection_class_index'"rejection_class_index""rejection_class_index""rejection_class_index""rejection_class_index":
-
Standardmäßig dient die
letzte Klasse als Rückweisungsklasse. Falls eine andere Klasse
benützt werden soll, muss GenParamNameGenParamNameGenParamNameGenParamNamegenParamName
auf
'rejection_class_index'"rejection_class_index""rejection_class_index""rejection_class_index""rejection_class_index" und GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue
auf den
Klassenindex gesetzt werden.
- 'sampling_strategy'"sampling_strategy""sampling_strategy""sampling_strategy""sampling_strategy":
-
Zur Zeit existieren drei
Strategien, um Datensätze der Rückweisungsklasse zu erzeugen. Diese
Strategien können durch Setzen von GenParamNameGenParamNameGenParamNameGenParamNamegenParamName
auf
'sampling_strategy'"sampling_strategy""sampling_strategy""sampling_strategy""sampling_strategy" und GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue
auf
'hyperbox_around_all_classes'"hyperbox_around_all_classes""hyperbox_around_all_classes""hyperbox_around_all_classes""hyperbox_around_all_classes",
'hyperbox_around_each_class'"hyperbox_around_each_class""hyperbox_around_each_class""hyperbox_around_each_class""hyperbox_around_each_class" oder
'hyperbox_ring_around_each_class'"hyperbox_ring_around_each_class""hyperbox_ring_around_each_class""hyperbox_ring_around_each_class""hyperbox_ring_around_each_class" gesetzt werden. Die
Abtaststrategie 'hyperbox_around_all_classes'"hyperbox_around_all_classes""hyperbox_around_all_classes""hyperbox_around_all_classes""hyperbox_around_all_classes" nimmt das
umschließende Rechteck um alle Trainingsdaten, die bisher angegeben
wurden. Die Abtaststrategie 'hyperbox_around_each_class'"hyperbox_around_each_class""hyperbox_around_each_class""hyperbox_around_each_class""hyperbox_around_each_class"
ist ähnlich, mit dem Unterschied, dass das umschließende Rechteck um
jede Klasse einzeln erzeugt wird, aus dem dann die Rückweisungsdaten
generiert werden. Die Abtaststrategie
'hyperbox_ring_around_each_class'"hyperbox_ring_around_each_class""hyperbox_ring_around_each_class""hyperbox_ring_around_each_class""hyperbox_ring_around_each_class" generiert Daten nur in
dem vergrößerten Bereich um das umschließende Rechteck um jede
Klasse, sozusagen nur einen Ring um die Originaldaten.
Es ist zu beachten, dass mit steigender Dimensionaliät die
Abtaststrategien 'hyperbox_around_each_class'"hyperbox_around_each_class""hyperbox_around_each_class""hyperbox_around_each_class""hyperbox_around_each_class" und
'hyperbox_ring_around_each_class'"hyperbox_ring_around_each_class""hyperbox_ring_around_each_class""hyperbox_ring_around_each_class""hyperbox_ring_around_each_class" das gleiche Ergebnis
liefern. Falls keine Rückweisungsklasse verwendet werden soll,
was der Standardfall ist, muss GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue
auf
'no_rejection_class'"no_rejection_class""no_rejection_class""no_rejection_class""no_rejection_class" gesetzt werden.
- 'hyperbox_tolerance'"hyperbox_tolerance""hyperbox_tolerance""hyperbox_tolerance""hyperbox_tolerance":
-
Der Faktor
'hyperbox_tolerance'"hyperbox_tolerance""hyperbox_tolerance""hyperbox_tolerance""hyperbox_tolerance" beschreibt, um welchen das
umschließende Rechteck in alle Dimensionen vergrössert werden soll.
Innerhalb dieses Rechtecks werden zufällig Daten mit einer
gleichverteilten Wahrscheinlichkeit erzeugt. Der Standartwert
beträgt 0.2.
- 'rejection_sample_factor'"rejection_sample_factor""rejection_sample_factor""rejection_sample_factor""rejection_sample_factor":
-
Die Anzahl von
Rückweisungsdaten ist die Anzahl von übergebenen Daten multipliziert
mit 'rejection_sample_factor'"rejection_sample_factor""rejection_sample_factor""rejection_sample_factor""rejection_sample_factor". Falls nicht genügend Daten
erzeugt werden, wird die Rückweisungsklasse nicht korrekt
klassifiziert. Falls die Rückweisungsklasse zu viele Daten enthält,
werden normale Klassen als Rückweisungsklasse klassifiziert. Der
Standardwert beträgt 1.0.
- 'random_seed'"random_seed""random_seed""random_seed""random_seed":
-
Um reproduzierbare Ergebnisse
sicherzustellen, kann mit 'random_seed'"random_seed""random_seed""random_seed""random_seed" ein Anfangswert für
den Zufallsgenerator gesetzt werden. Der Standardwert beträgt 42.
Da dieser Operator nur das Training des MLP parametrisiert, werden
die Werte nicht mit write_class_mlpwrite_class_mlpWriteClassMlpWriteClassMlpWriteClassMlp
gespeichert.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Dieser Operator modifiziert den Zustand des folgenden Eingabeparameters:
Während der Ausführung dieses Operators muss der Zugriff auf den Wert dieses Parameters synchronisiert werden, wenn er über mehrere Threads hinweg verwendet wird.
Parameter
MLPHandleMLPHandleMLPHandleMLPHandleMLPHandle
(input_control, Zustand wird modifiziert) class_mlp →
HClassMlp, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des MLP.
GenParamNameGenParamNameGenParamNameGenParamNamegenParamName
(input_control) string(-array) →
HTupleHTupleHtuple (string) (string) (HString) (char*)
Name des generischen Parameters.
Defaultwert:
'sampling_strategy'
"sampling_strategy"
"sampling_strategy"
"sampling_strategy"
"sampling_strategy"
Werteliste: 'hyperbox_tolerance'"hyperbox_tolerance""hyperbox_tolerance""hyperbox_tolerance""hyperbox_tolerance", 'random_seed'"random_seed""random_seed""random_seed""random_seed", 'rejection_class_index'"rejection_class_index""rejection_class_index""rejection_class_index""rejection_class_index", 'rejection_sample_factor'"rejection_sample_factor""rejection_sample_factor""rejection_sample_factor""rejection_sample_factor", 'sampling_strategy'"sampling_strategy""sampling_strategy""sampling_strategy""sampling_strategy"
GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue
(input_control) string(-array) →
HTupleHTupleHtuple (string / real / integer) (string / double / int / long) (HString / double / Hlong) (char* / double / Hlong)
Wert des generischen Parameters.
Defaultwert:
'hyperbox_around_all_classes'
"hyperbox_around_all_classes"
"hyperbox_around_all_classes"
"hyperbox_around_all_classes"
"hyperbox_around_all_classes"
Werteliste: 'hyperbox_around_all_classes'"hyperbox_around_all_classes""hyperbox_around_all_classes""hyperbox_around_all_classes""hyperbox_around_all_classes", 'hyperbox_around_each_class'"hyperbox_around_each_class""hyperbox_around_each_class""hyperbox_around_each_class""hyperbox_around_each_class", 'hyperbox_ring_around_each_class'"hyperbox_ring_around_each_class""hyperbox_ring_around_each_class""hyperbox_ring_around_each_class""hyperbox_ring_around_each_class", 'no_rejection_class'"no_rejection_class""no_rejection_class""no_rejection_class""no_rejection_class"
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
set_rejection_params_class_mlpset_rejection_params_class_mlpSetRejectionParamsClassMlpSetRejectionParamsClassMlpSetRejectionParamsClassMlp
den Wert 2 (H_MSG_TRUE).
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpCreateClassMlp
Nachfolger
train_class_mlptrain_class_mlpTrainClassMlpTrainClassMlpTrainClassMlp
Modul
Foundation