#include <sent/stddefs.h>
#include <sent/htk_hmm.h>
#include <sent/htk_param.h>
#include <sent/hmm.h>
#include <sent/gprune.h>
#include "globalvars.h"
gprune_safe.cのインクルード依存関係図
関数 | |
LOGPROB | compute_g_safe (HTK_HMM_Dens *binfo, LOGPROB thres) |
Calculate probability with safe pruning. | |
boolean | gprune_safe_init () |
void | gprune_safe (HTK_HMM_Dens **g, int gnum, int *last_id) |
Compute a set of Gaussians with safe pruning. | |
変数 | |
static boolean * | mixcalced |
Mark which Gaussian has been computed. |
safe pruning は最も安全な枝刈り法です.上位N個のガウス分布が確実に 得られますが,高速化の効果は他の手法に比べて小さいです.
gprune_safe() は outprob_init() によってその関数へのポインタが compute_gaussset にセットされることで使用されます.このポインタが calc_tied_mix() または calc_mix() から呼び出されます.
gprune_safe.c で定義されています。
|
Calculate probability with safe pruning. Calculate probability of a Gaussian toward OP_vec, performing pruning using the scholar threshold.
gprune_safe.c の 77 行で定義されています。 参照元 gprune_beam(), gprune_heu(), と gprune_safe(). |
|
Initialize and setup work area for Gaussian pruning by safe algorithm.
gprune_safe.c の 106 行で定義されています。 参照元 outprob_init(). |
|
Compute a set of Gaussians with safe pruning. If the N-best mixtures in the previous frame is specified in last_id, They are first computed to set the initial threshold. After that, the rest of the Gaussians will be computed with the thresholds to drop unpromising Gaussians from computation at early stage of likelihood computation. If the computation of a Gaussian reached to the end, the threshold will be updated to always hold the likelihood of current N-best score. The calculated scores will be stored to OP_calced_score, with its corresponding mixture id to OP_calced_id. These are done by calling cache_push(). The number of calculated mixtures is also stored in OP_calced_num. This can be called from calc_tied_mix() or calc_mix().
gprune_safe.c の 142 行で定義されています。 参照元 outprob_init(). |