add_sample_class_mlpT_add_sample_class_mlpAddSampleClassMlpAddSampleClassMlpadd_sample_class_mlp (Operator)

Name

add_sample_class_mlpT_add_sample_class_mlpAddSampleClassMlpAddSampleClassMlpadd_sample_class_mlp — Hinzufügen eines Trainingsmusters zu den Trainingsdaten eines mehrschichtigen Perzeptrons.

Signatur

add_sample_class_mlp( : : MLPHandle, Features, Target : )

Herror T_add_sample_class_mlp(const Htuple MLPHandle, const Htuple Features, const Htuple Target)

void AddSampleClassMlp(const HTuple& MLPHandle, const HTuple& Features, const HTuple& Target)

void HClassMlp::AddSampleClassMlp(const HTuple& Features, const HTuple& Target) const

void HClassMlp::AddSampleClassMlp(const HTuple& Features, Hlong Target) const

static void HOperatorSet.AddSampleClassMlp(HTuple MLPHandle, HTuple features, HTuple target)

void HClassMlp.AddSampleClassMlp(HTuple features, HTuple target)

void HClassMlp.AddSampleClassMlp(HTuple features, int target)

def add_sample_class_mlp(mlphandle: HHandle, features: Sequence[float], target: MaybeSequence[Union[int, float]]) -> None

Beschreibung

add_sample_class_mlpadd_sample_class_mlpAddSampleClassMlpAddSampleClassMlpAddSampleClassMlpadd_sample_class_mlp fügt ein Trainingsmuster zu dem durch MLPHandleMLPHandleMLPHandleMLPHandleMLPHandlemlphandle gegebenen mehrschichtigen Perzeptron (MLP) hinzu. Das Trainingsmuster wird durch FeaturesFeaturesFeaturesFeaturesfeaturesfeatures und TargetTargetTargetTargettargettarget beschrieben. FeaturesFeaturesFeaturesFeaturesfeaturesfeatures ist der Merkmalsvektor des Musters und muss folglich die Länge NumInputNumInputNumInputNumInputnumInputnum_input besitzen, die in create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpCreateClassMlpcreate_class_mlp angegeben worden ist. TargetTargetTargetTargettargettarget ist der Zielvektor des Musters, der für alle drei Aktivierungsfunktionen in der Ausgabeschicht des MLP (siehe create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpCreateClassMlpcreate_class_mlp) die Länge NumOutputNumOutputNumOutputNumOutputnumOutputnum_output besitzen muss und aus reellen Zahlen bestehen muss (Ausnahme: s.u.). Falls das MLP zur Regression (Funktionsapproximation) verwendet wird (OutputFunctionOutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'linear'"linear""linear""linear""linear""linear"), ist TargetTargetTargetTargettargettarget der Funktionswert der Funktion an der Koordinate FeaturesFeaturesFeaturesFeaturesfeaturesfeatures. In diesem Fall kann TargetTargetTargetTargettargettarget beliebige reelle Zahlen beinhalten. Für OutputFunctionOutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'logistic'"logistic""logistic""logistic""logistic""logistic" können in TargetTargetTargetTargettargettarget nur die Werte 0.0 und 1.0 angegeben werden. Ein Wert von 1.0 spezifiziert das Vorhandensein des jeweiligen Attributes, während 0.0 die Abwesenheit des Attributes spezifiziert. Da in diesem Fall die Attribute unabhängig voneinander anwesend oder abwesend sein können, können beliebige Kombinationen von 0.0 und 1.0 übergeben werden. Für OutputFunctionOutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'softmax'"softmax""softmax""softmax""softmax""softmax" dürfen die Werte von TargetTargetTargetTargettargettarget auch nur 0.0 und 1.0 enthalten. Im Gegensatz zu OutputFunctionOutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'logistic'"logistic""logistic""logistic""logistic""logistic" muss der Wert 1.0 an genau einer Stelle des Tupels TargetTargetTargetTargettargettarget vorkommen. Die Stelle des Tupels bezeichnet die Klasse des Musters. Zur Vereinfachung kann für OutputFunctionOutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'softmax'"softmax""softmax""softmax""softmax""softmax" auch ein einzelner ganzzahliger Wert übergeben werden, der direkt die Klasse des Musters bezeichnet. Hierbei werden die Klassen von 0 ab gezählt, d.h. die Klasse muss ein Wert zwischen 0 und NumOutputNumOutputNumOutputNumOutputnumOutputnum_output - 1 sein. Intern wird die Klasse in einen Zielvektor der Länge NumOutputNumOutputNumOutputNumOutputnumOutputnum_output konvertiert.

Bevor das MLP mit train_class_mlptrain_class_mlpTrainClassMlpTrainClassMlpTrainClassMlptrain_class_mlp trainiert werden kann, müssen alle Trainingsmuster mit add_sample_class_mlpadd_sample_class_mlpAddSampleClassMlpAddSampleClassMlpAddSampleClassMlpadd_sample_class_mlp zum MLP hinzugefügt werden.

Die Anzahl der abgespeicherten Trainingsmuster kann mit get_sample_num_class_mlpget_sample_num_class_mlpGetSampleNumClassMlpGetSampleNumClassMlpGetSampleNumClassMlpget_sample_num_class_mlp abgefragt werden. Einzelne Trainingsmuster können mit get_sample_class_mlpget_sample_class_mlpGetSampleClassMlpGetSampleClassMlpGetSampleClassMlpget_sample_class_mlp wieder ausgelesen werden.

Im Normalfall ist es günstig, die Trainingsmuster mit write_samples_class_mlpwrite_samples_class_mlpWriteSamplesClassMlpWriteSamplesClassMlpWriteSamplesClassMlpwrite_samples_class_mlp in eine Datei zu speichern, damit sie wiederverwendet werden können, und damit bei Bedarf neue Trainingsmuster zum Datensatz hinzugefügt werden können, und ein neu erzeugtes MLP mit dem erweiterten Datensatz neu trainiert werden kann.

Ausführungsinformationen

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

MLPHandleMLPHandleMLPHandleMLPHandleMLPHandlemlphandle (input_control, Zustand wird modifiziert)  class_mlp HClassMlp, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des MLP.

FeaturesFeaturesFeaturesFeaturesfeaturesfeatures (input_control)  real-array HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Merkmalsvektor des zu speichernden Trainingsmusters.

TargetTargetTargetTargettargettarget (input_control)  number(-array) HTupleMaybeSequence[Union[int, float]]HTupleHtuple (integer / real) (int / long / double) (Hlong / double) (Hlong / double)

Klasse oder Zielvektor des zu speichernden Trainingsmusters.

Ergebnis

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

Vorgänger

create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpCreateClassMlpcreate_class_mlp

Nachfolger

train_class_mlptrain_class_mlpTrainClassMlpTrainClassMlpTrainClassMlptrain_class_mlp, write_samples_class_mlpwrite_samples_class_mlpWriteSamplesClassMlpWriteSamplesClassMlpWriteSamplesClassMlpwrite_samples_class_mlp

Alternativen

read_samples_class_mlpread_samples_class_mlpReadSamplesClassMlpReadSamplesClassMlpReadSamplesClassMlpread_samples_class_mlp

Siehe auch

clear_samples_class_mlpclear_samples_class_mlpClearSamplesClassMlpClearSamplesClassMlpClearSamplesClassMlpclear_samples_class_mlp, get_sample_num_class_mlpget_sample_num_class_mlpGetSampleNumClassMlpGetSampleNumClassMlpGetSampleNumClassMlpget_sample_num_class_mlp, get_sample_class_mlpget_sample_class_mlpGetSampleClassMlpGetSampleClassMlpGetSampleClassMlpget_sample_class_mlp

Modul

Foundation