evaluate_class_gmm — Evaluate a feature vector by a Gaussian Mixture Model.
evaluate_class_gmm computes three different probability
values for a feature vector
Features with the Gaussian
Mixture Model (GMM)
The a-posteriori probability of class
i for the sample
Features(x) is computed as
and returned for each class in
ClassProb. The formulas for
the calculation of the center density function p(x|j) are described with
The probability density of the feature vector is computed as a sum of
the posterior class probabilities
and is returned in
Density. Here, Pr(i) are
the prior classes probabilities as computed by
Density can be used for novelty
detection, i.e., to reject feature vectors that do not belong to any
of the trained classes. However, since
Density depends on
the scaling of the feature vectors and since
Density is a
probability density, and consequently does not need to lie between 0
and 1, the novelty detection can typically be performed more easily
KSigmaProb (see below).
A k-sigma error ellipsoid is defined as a locus of points
In the one dimensional case this is the interval . For any 1D Gaussian
distribution, it is true that approximately 65% of the
occurrences of the random variable are within this range for k=1,
approximately 95% for k=2, approximately 99%
for k=3, etc. Hence, the probability that a Gaussian distribution
will generate a random variable outside this range is approximately
35%, 5%, and 1%, respectively. This
probability is called k-sigma probability and is denoted by P[k].
P[k] can be computed numerically for univariate as well as for
multivariate Gaussian distributions, where it should be noted that
for the same values of k, (here N and (N+1) denote dimensions). For Gaussian
mixture models the k-sigma probability is computed as:
They are weighted with the class priors and then normalized. The
maximum value of all classes is returned in
KSigmaProb can be used for novelty detection. Typically,
feature vectors having values below 0.0001 should be rejected. Note
that the rejection threshold defined by the parameter
refers to the
evaluate_class_gmm, the GMM must be trained
The position of the maximum value of
ClassProb is usually
interpreted as the class of the feature vector and the corresponding
value as the probability of the class. In this case,
classify_class_gmm should be used instead of
directly returns the class and corresponding probability.
A-posteriori probability of the classes.
Probability density of the feature vector.
Normalized k-sigma-probability for the feature vector.
If the parameters are valid, the operator
returns the value 2 (H_MSG_TRUE). If necessary an exception is
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.