F_VN_GetFeatureScales
Calculate the scaling parameters for each feature in the input samples based on the scaling type.
Syntax
Definition:
FUNCTION F_VN_GetFeatureScales : HRESULT
VAR_INPUT
ipSamples : ITcVnContainer;
ipScales : Reference To ITcVnContainer;
eFeatureScalingType : ETcVnFeatureScalingType;
hrPrev : HRESULT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipSamples |
Container holding input sample(s) (ContainerType_Vector_REAL, ContainerType_Vector_LREAL, ContainerType_Vector_Vector_REAL or ContainerType_Vector_Vector_LREAL) | |
ipScales |
Reference To ITcVnContainer |
Returns a container with the scaling parameters for each feature (Vector_REAL or Vector_LREAL depending on the type of ipSamples). |
eFeatureScalingType |
Feature scaling type | |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Weiterführende Informationen
Die Funktion F_VN_GetFeatureScales
berechnet Skalierungsparameter für jeden Merkmals-Wert der übergebenen Samples. Die entsprechende Skalierung kann im Anschluss mit der Funktion F_VN_FeatureScaling zur Merkmalsnormierung angewandt werden. Dieselbe Skalierung kann auch mit F_VN_InverseFeatureScaling zum Invertieren der Skalierung der Prädiktionsergebnisse einer Regression verwendet werden.
Parameter
Samples
Die Samples, auf deren Basis die Skalierungsparameter berechnet werden, werden als Container an ipSamples
übergeben. Die Anzahl der Merkmals-Werte muss bei jedem Sample gleich sein.
Skalierung
Die berechneten Skalierungsparameter werden als Container über die Referenz ipScales
zurückgegeben. Die Anzahl und Reihenfolge der Elemente des Containers hängen vom Skalierungstyp ab, der immer im ersten Element zu finden ist. Bei MAXABS
folgt immer ein Skalierungswert pro Merkmal. Bei den anderen Typen sind es immer zwei Skalierungswerte pro Merkmal.
Skalierungstyp
Der gewünschte Skalierungstyp wird als Enum ETcVnFeatureScalingType an eFeatureScalingType
übergeben. Die Optionen sind:
TCVN_FST1_MAXABS:
Verwendet das Maximum der absoluten Merkmals-Werte, um eine Normierung im Bereich von -1 bis 1 zu erhalten. Wenn alle Werte positiv sind, erfolgt die Normierung von 0 bis 1.TCVN_FST1_MINMAX:
Verwendet die Minimal- und Maximalwerte der Merkmals-Werte, um eine Normierung im Bereich von 0 bis 1 zu erhalten.TCVN_FST1_STANDARDIZATION:
Verwendet den Mittelwert und die Standardabweichung der Merkmals-Werte, um eine Normierung der Vektor-Mittelwerte gleich 0 und der Vektor-Standardabweichung gleich 1 zu erhalten.
Anwendung
Die Berechnung von Skalierungsparametern nach der MINMAX
-Methode sieht z.B. so aus:
hr := F_VN_GetFeatureScales(
ipSamples := ipSamples,
ipScales := ipScales,
eFeatureScalingType := TCVN_FST1
_MINMAX,
hrPrev := hr);
Wenn die Anzahl der Merkmals-Werte pro Sample in ipSamples
z.B. 12
ist, wird ipScales
für diesen Skalierungstyp exakt 1 + 2 * 12 = 25
Elemente haben.
Verwandte Funktionen
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 |