classify_class_gmmT_classify_class_gmmClassifyClassGmmClassifyClassGmmclassify_class_gmm (Operator)
Name
classify_class_gmmT_classify_class_gmmClassifyClassGmmClassifyClassGmmclassify_class_gmm — Berechnen der Klasse eines Merkmalsvektors durch ein Gaußsches
Mischverteilungsmodell.
Signatur
void ClassifyClassGmm(const HTuple& GMMHandle, const HTuple& Features, const HTuple& Num, HTuple* ClassID, HTuple* ClassProb, HTuple* Density, HTuple* KSigmaProb)
HTuple HClassGmm::ClassifyClassGmm(const HTuple& Features, Hlong Num, HTuple* ClassProb, HTuple* Density, HTuple* KSigmaProb) const
static void HOperatorSet.ClassifyClassGmm(HTuple GMMHandle, HTuple features, HTuple num, out HTuple classID, out HTuple classProb, out HTuple density, out HTuple KSigmaProb)
HTuple HClassGmm.ClassifyClassGmm(HTuple features, int num, out HTuple classProb, out HTuple density, out HTuple KSigmaProb)
def classify_class_gmm(gmmhandle: HHandle, features: Sequence[float], num: int) -> Tuple[Sequence[int], Sequence[float], Sequence[float], Sequence[float]]
def classify_class_gmm_s(gmmhandle: HHandle, features: Sequence[float], num: int) -> Tuple[int, Sequence[float], Sequence[float], Sequence[float]]
Beschreibung
classify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmmClassifyClassGmmclassify_class_gmm berechnet mit dem durch
GMMHandleGMMHandleGMMHandleGMMHandleGMMHandlegmmhandle gegebenen Gaußsche Mischverteilungsmodell (GMM) die
NumNumNumNumnumnum besten Klassen des Merkmalsvektors FeaturesFeaturesFeaturesFeaturesfeaturesfeatures
und gibt die Klassen in ClassIDClassIDClassIDClassIDclassIDclass_id und die zugehörigen
Wahrscheinlichkeiten der Klassen in ClassProbClassProbClassProbClassProbclassProbclass_prob zurück. Das
GMM muss vor der Verwendung von classify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmmClassifyClassGmmclassify_class_gmm mit
train_class_gmmtrain_class_gmmTrainClassGmmTrainClassGmmTrainClassGmmtrain_class_gmm trainiert werden.
classify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmmClassifyClassGmmclassify_class_gmm entspricht dem Aufruf von
evaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmmEvaluateClassGmmevaluate_class_gmm und der zusätzlichen Bestimmung der
besten NumNumNumNumnumnum Klassen. Wie bei evaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmmEvaluateClassGmmevaluate_class_gmm
beschrieben, können die Ausgabewerte ClassProbClassProbClassProbClassProbclassProbclass_prob des GMM als
Wahrscheinlichkeiten des Auftretens der jeweiligen Klasse
interpretiert werden.
Im Normalfall, sollte es ausreichend
sein, NumNumNumNumnumnum = 1 zu verwenden, um zu entscheiden,
ob die Wahrscheinlichkeit der besten Klasse des Merkmalsvektors hoch
genug ist. In manchen Anwendungen kann es aber auch interessant
sein, die zweitbeste Klasse zu betrachten (NumNumNumNumnumnum =
2), insbesondere, wenn zu erwarten ist, dass sich die
Klassen signifikant überlappen.
Die Parameter DensityDensityDensityDensitydensitydensity und KSigmaProbKSigmaProbKSigmaProbKSigmaProbKSigmaProbksigma_prob sind bei
evaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmmEvaluateClassGmmevaluate_class_gmm beschrieben.
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
GMMHandleGMMHandleGMMHandleGMMHandleGMMHandlegmmhandle (input_control) class_gmm → HClassGmm, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des GMM.
FeaturesFeaturesFeaturesFeaturesfeaturesfeatures (input_control) real-array → HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Merkmalsvektor.
NumNumNumNumnumnum (input_control) integer → HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Anzahl der zu bestimmenden besten Klassen.
Defaultwert: 1
Wertevorschläge: 1, 2, 3, 4, 5
ClassIDClassIDClassIDClassIDclassIDclass_id (output_control) integer(-array) → HTupleSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)
Ergebnis der Klassifikation des Merkmalsvektors
durch das GMM.
ClassProbClassProbClassProbClassProbclassProbclass_prob (output_control) real-array → HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Die a-posteriori-Klassenwahrscheinlichkeit.
DensityDensityDensityDensitydensitydensity (output_control) real-array → HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Wahrscheinlichkeitsdichte des Merkmalsvektors.
KSigmaProbKSigmaProbKSigmaProbKSigmaProbKSigmaProbksigma_prob (output_control) real-array → HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
Normalisierte k-Sigma-Wahrscheinlichkeit für
den Merkmalsvektor.
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
classify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmmClassifyClassGmmclassify_class_gmm den Wert TRUE. Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
Vorgänger
train_class_gmmtrain_class_gmmTrainClassGmmTrainClassGmmTrainClassGmmtrain_class_gmm,
read_class_gmmread_class_gmmReadClassGmmReadClassGmmReadClassGmmread_class_gmm
Alternativen
evaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmmEvaluateClassGmmevaluate_class_gmm
Siehe auch
create_class_gmmcreate_class_gmmCreateClassGmmCreateClassGmmCreateClassGmmcreate_class_gmm
Literatur
Christopher M. Bishop: „Neural Networks for Pattern Recognition“;
Oxford University Press, Oxford; 1995.
Mario A.T. Figueiredo: „Unsupervised Learning of Finite Mixture
Models“; IEEE Transactions on Pattern Analysis and Machine
Intelligence, Vol. 24, No. 3; March 2002.
Modul
Foundation