F_VN_CreateSvmModel
Create an SVM model of the specified type. The initial reference count is set to one if a new model is created and kept, otherwise. Models of this type neither support on-line training (sample by sample) nor retraining. Predictions can only be scalar.
Syntax
Definition:
FUNCTION F_VN_CreateSvmModel : HRESULT
VAR_INPUT
ipMlModel : Reference To ITcVnMlModel;
eSvmType : ETcVnSvm;
fC : LREAL;
fNu : LREAL;
fP : LREAL;
eKernelType : ETcVnSvmKernelType;
fGamma : LREAL;
fCoef0 : LREAL;
fDegree : LREAL;
hrPrev : HRESULT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipMlModel |
Reference To ITcVnMlModel |
Returns the created model (Non-zero interface pointers are reused.) |
eSvmType |
SVM model type | |
fC |
LREAL |
Parameter C (required for TCVN_SVM_C_CLASSIFIER, TCVN_SVM_EPS_REGRESSOR, and TCVN_SVM_NU_REGRESSOR; ignored otherwise) |
fNu |
LREAL |
Parameter nu (required for TCVN_SVM_NU_CLASSIFIER, TCVN_SVM_NOVELTY_DETECTOR, and TCVN_SVM_NU_REGRESSOR; ignored otherwise) |
fP |
LREAL |
Parameter p (required for TCVN_SVM_EPS_REGRESSOR; ignored otherwise) |
eKernelType |
Kernel type | |
fGamma |
LREAL |
Parameter gamma (used by polynomial, RBF, sigmoid, and chi-squared kernels; ignored otherwise) |
fCoef0 |
LREAL |
parameter coef0 (used by polynomial and sigmoid kernels; ignored otherwise) |
fDegree |
LREAL |
Degree (used by polynomial kernels; ignored otherwise) |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Weiterführende Informationen
Die Funktion F_VN_CreateSvmModel
erstellt ein Support Vector Machine (SVM) Modell.
Support Vector Machine-Modelle
Support Vector Maschinen können auch für komplexe nichtlineare Problemstellungen verwendet werden. Die Prädiktion stützt sich ausschließlich auf die sogenannten Support-Vektoren, weshalb SVM-Modelle vergleichsweise speichereffizient sind. Für das Training werden alle Samples gleichzeitig benötigt (Batch-Training) und ein Nachtrainieren ist nicht möglich.
Parameter
Modell
In dem Interface Pointer ipMlModel
wird das erstellte Modell zurückgegeben.
Modell-Typ
eSvmType
legt fest, ob das SVM-Modell zur Klassifizierung, zur Regression oder zur Anomalie-Detektion genutzt wird:
- TCVN_SVM_C_CLASSIFIER
- TCVN_SVM_NU_CLASSIFIER
- TCVN_SVM_NOVELTY_DETECTOR
- TCVN_SVM_EPS_REGRESSOR
- TCVN_SVM_NU_REGRESSOR
Modell-Parameter
Die Verwendung und Bedeutung der Parameter fC
, fNu
und fP
hängt vom ausgewähltem eSvmType
ab.
Kernel-Typ
Mit eKernelType
wird der verwendete Kernel-Typ zur Berechnung festgelegt. Der Kernel-Typ hängt von der Aufgabenstellung / Datenverteilung ab und muss daran angepasst werden.
Kernel-Parameter
Die Verwendung und Bedeutung der Parameter fGamma
, fCoef0
und fDegree
hängt vom ausgewähltem eKernelType
ab.
Expert-Parameter
Die Expert-Varianten F_VN_CreateSvmModelExp und F_VN_CreateSvmModelExp2 enthalten zusätzliche Parameter.
Anwendung
Ein SVM-Modell zur Klassifikation kann z.B. so erstellt werden:
hr := F_VN_CreateSvmModel(
ipMlModel := ipMlModel,
eSvmType := TCVN_SVM_NU_CLASSIFIER,
fC := 0,
fNu := 0.1,
fP := 0,
eKernelType := TCVN_SKT_RBF,
fGamma := 1,
fCoef0 := 0,
fDegree := 0,
hrPrev := hr);
Required License
TC3 Vision Machine Learning
System Requirements
Development environment | Target platform | PLC libraries to include |
---|---|---|
TwinCAT V3.1.4024.54 or later | PC or CX (x64) with PL50, e.g. Intel 4-core Atom CPU | Tc3_Vision |