メインページ | モジュール | データ構造 | Directories | ファイル一覧 | データフィールド | グローバル | 関連ページ

outprob.c

音響尤度計算の実行および状態レベルキャッシュ [詳細]

#include <sent/stddefs.h>
#include <sent/speech.h>
#include <sent/htk_hmm.h>
#include <sent/htk_param.h>
#include <sent/hmm.h>
#include <sent/gprune.h>
#include "globalvars.h"

outprob.cのインクルード依存関係図

ソースコードを見る。

マクロ定義

#define LOG_UNDEF   (LOG_ZERO - 1)
 Value to be used as the initial cache value.

関数

boolean outprob_cache_init ()
boolean outprob_cache_prepare ()
static void outprob_cache_extend (int reqframe)
LOGPROB outprob_state (int t, HTK_HMM_State *stateinfo, HTK_Param *param)
 Compute output probability of a state.
void outprob_cd_nbest_init (int num)
static LOGPROB outprob_cd_nbest (int t, CD_State_Set *lset, HTK_Param *param)
static LOGPROB outprob_cd_max (int t, CD_State_Set *lset, HTK_Param *param)
static LOGPROB outprob_cd_avg (int t, CD_State_Set *lset, HTK_Param *param)
LOGPROB outprob_cd (int t, CD_State_Set *lset, HTK_Param *param)
LOGPROB outprob (int t, HMM_STATE *hmmstate, HTK_Param *param)

変数

static int statenum
 Local work area that holds total number of HMM states in the HMM definition data.
static LOGPROB ** outprob_cache = NULL
 State-level cache [t][stateid].
static int allocframenum
 Allocated frames of the cache.
static int allocblock
 Allocation block size per allocateion of the cache.
static LOGPROBlast_cache
 Local work are to hold cache list of current time.
static LOGPROBmaxprobs
 Work area that holds N-best state scores for pseudo state set.
static int maxn
 Allocated length of above.


説明

音響尤度計算の実行および状態レベルキャッシュ

作者:
Akinobu LEE
日付:
Fri Feb 18 18:45:21 2005
HMM の状態の出力確率(対数尤度)を計算します.状態の型(単語末端の pseudo HMM set かどうか)にしたがっていくつか定義されていますが, 全て下位の outprob_state() を呼びます.outprob_state() は 必要な情報を OP_ で始まる大域変数に格納し,calc_outprob_state() を呼び 出します.calc_outprob_state() は関数のポインタであり,実体は tied-mixture モデルの場合 calc_tied_mix(), それ以外の場合は calc_mix() となります. (GMS を使用する場合は gms_state())になります.

状態レベルの音響尤度キャッシュが行なわれます.キャッシュは 状態 x 入力フレームで格納され,必要な長さにしたがって伸長されます.このキャッシュは 第2パスの計算でも用いるため,全時間に渡って記録されています.

なお tied-mixture の場合はコードブックレベルでのキャッシュも同時に 行なわれます.これについては calc_tied_mix.c をご覧下さい.

Revision
1.1.1.1

outprob.c で定義されています。


関数

boolean outprob_cache_init  ) 
 

Initialize the cache data, should be called once on startup.

戻り値:
TRUE on success, FALSE on failure.

outprob.c81 行で定義されています。

参照元 outprob_init().

boolean outprob_cache_prepare  ) 
 

Prepare cache for the next input, by clearing the existing cache.

戻り値:
TRUE on success, FALSE on failure.

outprob.c98 行で定義されています。

参照元 outprob_prepare().

static void outprob_cache_extend int  reqframe  )  [static]
 

Expand the cache to time axis if needed.

引数:
reqframe [in] required frame length

outprob.c118 行で定義されています。

参照元 outprob_state().

LOGPROB outprob_state int  t,
HTK_HMM_State stateinfo,
HTK_Param param
 

Compute output probability of a state.

Set the needed values to the global variables that begins with "OP_", and call calc_outprob_state(). The calc_outprob_state() is actually a function pointer, and the entity is either calc_tied_mix() for tied-mixture model and calc_mix() for others. (If you use GMS, the entity will be gms_state() instead.)

The state-level cache is also consulted here.

戻り値:
output log probability.

outprob.c167 行で定義されています。

参照元 next_word(), outprob(), outprob_cd_avg(), outprob_cd_max(), outprob_cd_nbest(), outprob_style(), と start_word().

void outprob_cd_nbest_init int  num  ) 
 

Initialize work area for outprob_cd_nbest().

引数:
num [in] number of top states to be calculated.

outprob.c204 行で定義されています。

参照元 outprob_init().

static LOGPROB outprob_cd_nbest int  t,
CD_State_Set lset,
HTK_Param param
[static]
 

Return average of N-beat outprob for pseudo state set.

引数:
t [in] input frame
lset [in] pseudo state set
param [in] input parameter data
戻り値:
outprob log probability, average of top N states in lset.

outprob.c220 行で定義されています。

参照元 outprob_cd().

static LOGPROB outprob_cd_max int  t,
CD_State_Set lset,
HTK_Param param
[static]
 

Return maximum outprob of the pseudo state set.

引数:
t [in] input frame
lset [in] pseudo state set
param [in] input parameter data
戻り値:
maximum output log probability among states in lset.

outprob.c264 行で定義されています。

参照元 outprob_cd().

static LOGPROB outprob_cd_avg int  t,
CD_State_Set lset,
HTK_Param param
[static]
 

Return average outprob of the pseudo state set.

引数:
t [in] input frame
lset [in] pseudo state set
param [in] input parameter data
戻り値:
average output log probability of states in lset.

outprob.c286 行で定義されています。

参照元 outprob_cd().

LOGPROB outprob_cd int  t,
CD_State_Set lset,
HTK_Param param
 

Compute the log output probability of a pseudo state set.

引数:
t [in] input frame
lset [in] pseudo state set
param [in] input parameter data
戻り値:
the computed log output probability.

outprob.c312 行で定義されています。

参照元 next_word(), outprob(), outprob_style(), と start_word().

LOGPROB outprob int  t,
HMM_STATE hmmstate,
HTK_Param param
 

Top function to compute the output probability of a HMM state.

引数:
t [in] input frame
hmmstate [in] HMM state
param [in] input parameter data
戻り値:
the computed log output probability.

outprob.c346 行で定義されています。

参照元 viterbi_segment().


Juliusに対してTue Mar 28 16:22:40 2006に生成されました。  doxygen 1.4.2