F_VN_TrainBatch
Train a classifier, a clusterer, a novelty detector, or a regressor with a batch of samples. On-line trainable models are trained once with each sample. Depending on the application and the number of available training samples, repeated training of such models with the same data may improve the results.
Can use available TwinCAT Job Tasks for executing parallel code regions.
Syntax
Definition:
FUNCTION F_VN_TrainBatch : HRESULT
VAR_INPUT
ipMlModel : ITcVnMlModel;
ipSamples : ITcUnknown;
ipOutputs : ITcVnContainer;
hrPrev : HRESULT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipMlModel |
Classifier, clusterer, novelty detector, or regressor to be used | |
ipSamples |
Container holding a batch of input samples (ContainerType_Vector_Vector_REAL or ContainerType_Vector_Vector_LREAL) | |
ipOutputs |
Class labels (for classification, ContainerType_Vector_DINT) or target outputs (for regression with scalar output, ContainerType_Vector_REAL or ContainerType_Vector_LREAL; for regression with vectorial output, ContainerType_Vector_Vector_REAL or ContainerType_Vector_Vector_LREAL) to be learnt (must be 0 for clusterers and for novelty detectors) | |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Weiterführende Informationen
Die Funktion F_VN_TrainBatch
trainiert ein Modell mit mehreren Samples. Abhängig von der Art des Modells müssen die Ergebniswerte einen anderen Typ haben (siehe ipOutputs
). Als Modellart werden Klassifikator, Clusterer, Anomalie-Detektor und Regressor unterstützt.
Parameter
Modell
Das zuvor erstellte Modell muss an ipMlModel
übergeben werden.
Samples
Die Samples werden in einem Container an ipSamples
übergeben. Der Typ des Containers muss ContainerType_Vector_Vector_REAL
oder ContainerType_Vector_Vector_LREAL
sein.
Ergebnisse
Die bekannten Ergebnisse zu den Samples werden in einem Container an ipOutputs
übergeben. Je nach Typ des Modells muss der Container einen unterschiedlichen Typ haben:
- Klassen-Label für eine Klassifikation:
ContainerType_Vector_DINT
- Numerische Ergebniswerte für eine skalare Regression:
ContainerType_Vector_REAL
oderContainerType_Vector_LREAL
- Numerische Ergebniswerte für eine vektorielle Regression:
ContainerType_Vector_Vector_REAL
oderContainerType_Vector_Vector_LREAL
Wenn es sich um ein Clusterer-Modell oder um einen Anomalie-Detektor handelt, muss ipOutputs := 0
sein.
Anwendung
Ein ML-Model zur Klassifikation kann z.B. so trainiert werden:
hr := F_VN_TrainBatch(
ipMlModel := ipMlModel,
ipSamples := ipSamples,
ipOutputs := ipClassLabels,
hrPrev := hr);
Verwandte Funktionen
Required License
TC3 Vision Machine Learning
System Requirements
Development environment | Target platform | PLC libraries to include |
---|---|---|
TwinCAT V3.1.4024.59 or later | PC or CX (x64) with PL50, e.g. Intel 4-core Atom CPU | Tc3_Vision |