Name
evaluate_class_gmm T_evaluate_class_gmm EvaluateClassGmm evaluate_class_gmm EvaluateClassGmm EvaluateClassGmm — Berechnen der Bewertung eines Merkmalsvektors durch ein Gaussian
Mixture Model.
evaluate_class_gmm evaluate_class_gmm EvaluateClassGmm evaluate_class_gmm EvaluateClassGmm EvaluateClassGmm berechnet drei verschiedenen
Wahrscheinlichkeitwerten für einen Merkmalsvektor Features Features Features Features Features features
durch das Gaussian Mixture Model (GMM) GMMHandle GMMHandle GMMHandle GMMHandle GMMHandle GMMHandle .
Die a-posteriori-Wahrscheinlichkeit einer Klasse i für ein
Merkmal Features Features Features Features Features features (x) wird über
berechnet und in ClassProb ClassProb ClassProb ClassProb ClassProb classProb pro Klasse zurückgegeben. Die
Berechnungsformeln für die Aktivitäten/Zentren-Dichtefunction p(x|j)
sind bei create_class_gmm create_class_gmm CreateClassGmm create_class_gmm CreateClassGmm CreateClassGmm angegeben.
Die Dichtefunktion von einem Features Features Features Features Features features Vektor wird als
Summe der Klassenwahrscheinlichkeiten berechnet
und in Density Density Density Density Density density zurückgegeben. Hierbei sind
Pr(i) die a-priori-Wahrscheinlichkeiten der Klassen, so
wie sie von train_class_gmm train_class_gmm TrainClassGmm train_class_gmm TrainClassGmm TrainClassGmm berechnet werden.
Density Density Density Density Density density kann zur sog. Novelty-Detection verwendet werden,
d.h. zur Rückweisung von Merkmalsvektoren, die keiner der
trainierten Klassen entsprechen. Da Density Density Density Density Density density jedoch von der
Skalierung der Merkmalswerte abhängt und als Dichtewert auch nicht
zwischen 0 und 1 liegen muss, kann die Novelty-Detection im Normalfall
über KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb (s.u.) einfacher durchgeführt werden.
Ein k-Sigma-Fehler-Ellipsoid ist der geometrische Ort von
Punkten x, für die
gilt. Im eindimensionallen Fall ist er das Intervall
. Für beliebige
1D-Normalverteilungen gilt, dass für k=1 ca. 65% der
Werte der Zufallsvariablen innerhalb dieses Intervalls auftreten, für
k=2 ca. 95%, für k=3 ca. 99% usw. Diese
Wahrscheinlichkeit wird k-Sigma-Wahrscheinlichkeit genannt. Sie
wird mit P[k] bezeichnet. P[k] kann numerisch berechnet werden,
wobei zu beachten ist, dass für gleiche Werte von k,
(hier sind N und (N+1) die
Dimensionen des Merkmalsvektors). Für die GMM wird die
k-Sigma-Wahrscheinlichkeit wie folgt berechnet:
wird schließlich noch mit den
a-priori-Wahrscheinlichkeiten gewichtet und dann normalisiert. Der
größte Wert aller Klassen wird in KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb
zurückgegeben:
KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb kann zur Novelty-Detection verwendet werden.
Normalerweise werden Merkmale, die einen KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb -Wert
kleiner als 0.0001 haben, zurückgewiesen. Der Schwellwert, der in
classify_image_class_gmm classify_image_class_gmm ClassifyImageClassGmm classify_image_class_gmm ClassifyImageClassGmm ClassifyImageClassGmm über den Parameter
RejectionThreshold RejectionThreshold RejectionThreshold RejectionThreshold RejectionThreshold rejectionThreshold definiert wird, bezieht sich auf die
entsprechenden KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb KSigmaProb -Werte.
Das GMM muss vor der Verwendung von evaluate_class_gmm evaluate_class_gmm EvaluateClassGmm evaluate_class_gmm EvaluateClassGmm EvaluateClassGmm mit
train_class_gmm train_class_gmm TrainClassGmm train_class_gmm TrainClassGmm TrainClassGmm trainiert werden.
Die Position des Maximums von ClassProb ClassProb ClassProb ClassProb ClassProb classProb wird typischerweise
als die Klasse des Merkmalsvektors interpretiert und der zugehörige
Wert als die Wahrscheinlichkeit der Klasse. In diesem Fall sollte
statt evaluate_class_gmm evaluate_class_gmm EvaluateClassGmm evaluate_class_gmm EvaluateClassGmm EvaluateClassGmm classify_class_gmm classify_class_gmm ClassifyClassGmm classify_class_gmm ClassifyClassGmm ClassifyClassGmm
verwendet werden, da classify_class_gmm classify_class_gmm ClassifyClassGmm classify_class_gmm ClassifyClassGmm ClassifyClassGmm direkt die Klasse
und Wahrscheinlichkeit zurückliefert.
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Wird ohne Parallelisierung verarbeitet.
Die a-posteriori-Klassenwahrscheinlichkeit.
Wahrscheinlichkeitsdichte des Merkmalsvektors.
Normalisierte k-Sigma-Wahrscheinlichkeit für
den Merkmalsvektor.
Sind die Parameterwerte korrekt, dann liefert
evaluate_class_gmm evaluate_class_gmm EvaluateClassGmm evaluate_class_gmm EvaluateClassGmm EvaluateClassGmm den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
train_class_gmm train_class_gmm TrainClassGmm train_class_gmm TrainClassGmm TrainClassGmm ,
read_class_gmm read_class_gmm ReadClassGmm read_class_gmm ReadClassGmm ReadClassGmm
classify_class_gmm classify_class_gmm ClassifyClassGmm classify_class_gmm ClassifyClassGmm ClassifyClassGmm
create_class_gmm create_class_gmm CreateClassGmm create_class_gmm CreateClassGmm CreateClassGmm
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.
Foundation