Given a vector of log-likelihoods (typically of Gaussians in a GMM but could be of pdf-ids), a number gselect >= 1 and a minimum posterior 0 <= min_post < 1, it gets the posterior for each element of log-likes by applying Softmax(), then prunes the posteriors using "gselect" and "min_post" (keeping at least one), and outputs the result into "post_entry", sorted from greatest to least posterior. More...

This is similar to WeightSilencePost, except that on each frame it works out the amount by which the overall posterior would be reduced, and scales down everything on that frame by the same amount. More...

Detailed Description

Typedef Documentation

GaussPost is a typedef for storing Gaussian-level posteriors for an utterance.

the "int32" is a transition-id, and the Vector<BaseFloat> is a vector of Gaussian posteriors. WARNING: We changed "int32" from transition-id to pdf-id, and the change is applied for all programs using GaussPost. This is for efficiency purpose. We also changed the name slightly from GauPost to GaussPost to reduce the chance that the change will go un-noticed in downstream code.

If "merge" is true, it will make a common entry whenever there are duplicated entries, adding up the weights. If "drop_frames" is true, for frames where the two sets of posteriors were originally disjoint, makes no entries for that frame (relates to frame dropping, or drop_frames, see Vesely et al, ICASSP 2013). Returns the number of frames for which the two posteriors were disjoint (i.e. no common transition-ids or whatever index we are using).

The number of matrix-rows is the same as the 'post.size()', the number of matrix-columns is defined by 'NumPdfs' in the TransitionModel. The elements which are not specified in 'Posterior' are equal to zero.

Given a vector of log-likelihoods (typically of Gaussians in a GMM but could be of pdf-ids), a number gselect >= 1 and a minimum posterior 0 <= min_post < 1, it gets the posterior for each element of log-likes by applying Softmax(), then prunes the posteriors using "gselect" and "min_post" (keeping at least one), and outputs the result into "post_entry", sorted from greatest to least posterior.

Returns the total log-likelihood (the output of calling ApplySoftMax() on a copy of log_likes).