F_VN_TrainBatch

F_VN_TrainBatch 1:

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

F_VN_TrainBatch 2: Inputs

Name

Type

Description

ipMlModel

ITcVnMlModel

Classifier, clusterer, novelty detector, or regressor to be used

ipSamples

ITcUnknown

Container holding a batch of input samples (ContainerType_Vector_Vector_REAL or ContainerType_Vector_Vector_LREAL)

ipOutputs

ITcVnContainer

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

HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.)

F_VN_TrainBatch 3: Return value

HRESULT

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:

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.44 or later

PC or CX (x64) with PL50, e.g. Intel 4-core Atom CPU

Tc3_Vision