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_mlpAddSampleClassMlpAddSampleClassMlpadd_sample_class_mlp fügt ein Trainingsmuster zu dem durch MLPHandleMLPHandleMLPHandleMLPHandlemlphandle gegebenen mehrschichtigen Perzeptron (MLP) hinzu. Das Trainingsmuster wird durch FeaturesFeaturesFeaturesfeaturesfeatures und TargetTargetTargettargettarget beschrieben. FeaturesFeaturesFeaturesfeaturesfeatures ist der Merkmalsvektor des Musters und muss folglich die Länge NumInputNumInputNumInputnumInputnum_input besitzen, die in create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpcreate_class_mlp angegeben worden ist. TargetTargetTargettargettarget ist der Zielvektor des Musters, der für alle drei Aktivierungsfunktionen in der Ausgabeschicht des MLP (siehe create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpcreate_class_mlp) die Länge NumOutputNumOutputNumOutputnumOutputnum_output besitzen muss und aus reellen Zahlen bestehen muss (Ausnahme: s.u.). Falls das MLP zur Regression (Funktionsapproximation) verwendet wird (OutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'linear'"linear""linear""linear""linear"), ist TargetTargetTargettargettarget der Funktionswert der Funktion an der Koordinate FeaturesFeaturesFeaturesfeaturesfeatures. In diesem Fall kann TargetTargetTargettargettarget beliebige reelle Zahlen beinhalten. Für OutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'logistic'"logistic""logistic""logistic""logistic" können in TargetTargetTargettargettarget 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 OutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'softmax'"softmax""softmax""softmax""softmax" dürfen die Werte von TargetTargetTargettargettarget auch nur 0.0 und 1.0 enthalten. Im Gegensatz zu OutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = 'logistic'"logistic""logistic""logistic""logistic" muss der Wert 1.0 an genau einer Stelle des Tupels TargetTargetTargettargettarget vorkommen. Die Stelle des Tupels bezeichnet die Klasse des Musters. Zur Vereinfachung kann für OutputFunctionOutputFunctionOutputFunctionoutputFunctionoutput_function = '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 NumOutputNumOutputNumOutputnumOutputnum_output - 1 sein. Intern wird die Klasse in einen Zielvektor der Länge NumOutputNumOutputNumOutputnumOutputnum_output konvertiert.

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

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

Im Normalfall ist es günstig, die Trainingsmuster mit write_samples_class_mlpwrite_samples_class_mlpWriteSamplesClassMlpWriteSamplesClassMlpwrite_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

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

Handle des MLP.

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

Merkmalsvektor des zu speichernden Trainingsmusters.

TargetTargetTargettargettarget (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_mlpAddSampleClassMlpAddSampleClassMlpadd_sample_class_mlp den Wert 2 ( H_MSG_TRUE) . Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

create_class_mlpcreate_class_mlpCreateClassMlpCreateClassMlpcreate_class_mlp

Nachfolger

train_class_mlptrain_class_mlpTrainClassMlpTrainClassMlptrain_class_mlp, write_samples_class_mlpwrite_samples_class_mlpWriteSamplesClassMlpWriteSamplesClassMlpwrite_samples_class_mlp

Alternativen

read_samples_class_mlpread_samples_class_mlpReadSamplesClassMlpReadSamplesClassMlpread_samples_class_mlp

Siehe auch

clear_samples_class_mlpclear_samples_class_mlpClearSamplesClassMlpClearSamplesClassMlpclear_samples_class_mlp, get_sample_num_class_mlpget_sample_num_class_mlpGetSampleNumClassMlpGetSampleNumClassMlpget_sample_num_class_mlp, get_sample_class_mlpget_sample_class_mlpGetSampleClassMlpGetSampleClassMlpget_sample_class_mlp

Modul

Foundation