Skip to content

classify_class_gmmClassifyClassGmmClassifyClassGmmclassify_class_gmmT_classify_class_gmmπŸ”—

Short descriptionπŸ”—

classify_class_gmmClassifyClassGmmClassifyClassGmmclassify_class_gmmT_classify_class_gmm β€” Calculate the class of a feature vector by a Gaussian Mixture Model.

SignatureπŸ”—

classify_class_gmm( class_gmm GMMHandle, real Features, integer Num, out integer ClassID, out real ClassProb, out real Density, out real KSigmaProb )void ClassifyClassGmm( const HTuple& GMMHandle, const HTuple& Features, const HTuple& Num, HTuple* ClassID, HTuple* ClassProb, HTuple* Density, HTuple* KSigmaProb )static void HOperatorSet.ClassifyClassGmm( HTuple GMMHandle, HTuple features, HTuple num, out HTuple classID, 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]]Herror T_classify_class_gmm( 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

HTuple HClassGmm.ClassifyClassGmm( HTuple features, int num, out HTuple classProb, out HTuple density, out HTuple KSigmaProb )

DescriptionπŸ”—

classify_class_gmmClassifyClassGmm computes the best Numnumnum classes of the feature vector Featuresfeaturesfeatures with the Gaussian Mixture Model (GMM) GMMHandleGMMHandlegmmhandle and returns the classes in ClassIDclassIDclass_id and the corresponding probabilities of the classes in ClassProbclassProbclass_prob. Before calling classify_class_gmmClassifyClassGmm, the GMM must be trained with train_class_gmmTrainClassGmm.

classify_class_gmmClassifyClassGmm corresponds to a call to evaluate_class_gmmEvaluateClassGmm and an additional step that extracts the best Numnumnum classes. As described with evaluate_class_gmmEvaluateClassGmm, the output values of the GMM can be interpreted as probabilities of the occurrence of the respective classes. However, here the posterior probability ClassProbclassProbclass_prob is further normalized as ClassProb = p(i|x)/p(x), where p(i|x) and p(x) are specified with evaluate_class_gmmEvaluateClassGmm. In most cases it should be sufficient to use Numnumnum \(=\) 11 in order to decide whether the probability of the best class is high enough. In some applications it may be interesting to also take the second best class into account (Numnumnum \(=\) 22), particularly if it can be expected that the classes show a significant degree of overlap.

Densitydensitydensity and KSigmaProbKSigmaProbksigma_prob are explained with evaluate_class_gmmEvaluateClassGmm.

Execution informationπŸ”—

Execution information
  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).

  • Multithreading scope: global (may be called from any thread).

  • Processed without parallelization.

ParametersπŸ”—

GMMHandleGMMHandlegmmhandle (input_control) class_gmm β†’ (handle)HTuple (HHandle)HClassGmm, HTuple (IntPtr)HHandleHtuple (handle)

GMM handle.

Featuresfeaturesfeatures (input_control) real-array β†’ (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

Feature vector.

Numnumnum (input_control) integer β†’ (integer)HTuple (Hlong)HTuple (int / long)intHtuple (Hlong)

Number of best classes to determine.

Default: 11
Suggested values: 1, 2, 3, 4, 51, 2, 3, 4, 5

ClassIDclassIDclass_id (output_control) integer(-array) β†’ (integer)HTuple (Hlong)HTuple (int / long)Sequence[int]Htuple (Hlong)

Result of classifying the feature vector with the GMM.

ClassProbclassProbclass_prob (output_control) real-array β†’ (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

A-posteriori probability of the classes.

Densitydensitydensity (output_control) real-array β†’ (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

Probability density of the feature vector.

KSigmaProbKSigmaProbksigma_prob (output_control) real-array β†’ (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)

Normalized k-sigma-probability for the feature vector.

ResultπŸ”—

If the parameters are valid, the operator classify_class_gmmClassifyClassGmm returns the value 2 (H_MSG_TRUE). If necessary an exception is raised.

Combinations with other operatorsπŸ”—

Combinations

Possible predecessors

train_class_gmmTrainClassGmm, read_class_gmmReadClassGmm

Alternatives

evaluate_class_gmmEvaluateClassGmm

See also

create_class_gmmCreateClassGmm

ReferencesπŸ”—

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.

ModuleπŸ”—

Foundation