Julius 4.2
関数
libjulius/src/dfa_decode.c

記述文法に基づく次単語予測(第2パス) [詳細]

#include <julius/julius.h>

ソースコードを見る。

関数

int dfa_firstwords (NEXTWORD **nw, int peseqlen, int maxnw, RecogProcess *r)
 文法にしたがって,文頭に接続しうる単語を最初の予測単語群として返す.
int dfa_nextwords (NODE *hypo, NEXTWORD **nw, int maxnw, RecogProcess *r)
 部分文仮説に対して,文法に従って次に接続しうる単語群を返す.
boolean dfa_acceptable (NODE *hypo, RecogProcess *r)
 部分文仮説が文法上文として最終(受理可能)状態にあるかどうかを返す.
boolean dfa_look_around (NEXTWORD *nword, NODE *hypo, RecogProcess *r)
 次単語候補がその推定された接続予測点の前後の単語トレリス上に あるかどうかをチェックし,もしあればそのトレリス単語へのポインタをセット する.

説明

記述文法に基づく次単語予測(第2パス)

与えられた仮説に対して,DFA 文法上接続可能な次単語の集合を決定する. ただし実際には, 展開元仮説の予測される始端フレーム周辺の単語トレリス 上に残っている単語のみが展開される.

文法制約ではショートポーズは単語として記述し,そのショートポーズ単語の 出現位置を文法で指定する. ただし,実際の入力ではその想定した位置に 必ずしもポーズが入らないため,単語展開においては, 次単語集合にショートポーズがある場合は,さらにその次の単語集合まで見て 次単語集合に含める. 実際にそこにショートポーズが挿入されるかどうかは, search_bestfirst_main.c で両者のスコアを比較して判断する.

文法を用いる認識処理インスタンスでは,dfa_firstwords(), dfa_nextwords(), dfa_acceptable(), dfa_eosscore() が第2パスのメイン関数 wchmm_fbs() から 使用される. なお N-gram を用いる認識処理インスタンスでは, 代わりに ngram_decode.c 内の関数が使われる.

作者:
Akinobu LEE
日付:
Mon Mar 7 15:31:00 2005
Revision:
1.4

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


関数

int dfa_firstwords ( NEXTWORD **  nw,
int  peseqlen,
int  maxnw,
RecogProcess r 
)

文法にしたがって,文頭に接続しうる単語を最初の予測単語群として返す.

引数:
nw[out] 次単語集合の格納先へのポインタ
peseqlen[in] 入力フレーム長
maxnw[in] nw の許される最大長
r[in] 認識プロセスインスタンス
戻り値:
予測された単語数 (ただしエラー時は -1 を返す)

dfa_decode.c89 行で定義されています。

参照元 wchmm_fbs().

呼出しグラフ:

int dfa_nextwords ( NODE hypo,
NEXTWORD **  nw,
int  maxnw,
RecogProcess r 
)

部分文仮説に対して,文法に従って次に接続しうる単語群を返す.

引数:
hypo[in] 展開元の部分文仮説
nw[out] 次単語集合の格納先へのポインタ
maxnw[in] nw の許される最大長
r[in] 認識プロセスインスタンス
戻り値:
予測された単語数 (ただしエラー時は -1 を返す)

dfa_decode.c159 行で定義されています。

参照元 wchmm_fbs().

呼出しグラフ:

boolean dfa_acceptable ( NODE hypo,
RecogProcess r 
)

部分文仮説が文法上文として最終(受理可能)状態にあるかどうかを返す.

引数:
hypo[in] 部分文仮説
r[in] 認識プロセスインスタンス
戻り値:
受理可能状態にあるとき TRUE 受理不可能なとき FALSE

dfa_decode.c226 行で定義されています。

参照元 wchmm_fbs().

呼出しグラフ:

boolean dfa_look_around ( NEXTWORD nword,
NODE hypo,
RecogProcess r 
)

次単語候補がその推定された接続予測点の前後の単語トレリス上に あるかどうかをチェックし,もしあればそのトレリス単語へのポインタをセット する.

なお最尤の接続点はあとで決まるので,ここでは最適なトレリス単語 でなくてよい.

引数:
nword[i/o] 次単語候補 (対応するトレリス単語へのポインタが セットされる)
hypo[in] 展開元仮説
r[in] 認識プロセスインスタンス
戻り値:
単語トレリス上の予測位置付近に次単語が存在すれば TRUE,存在 しなければ FALSE を返す.

dfa_decode.c271 行で定義されています。

参照元 wchmm_fbs().

呼出しグラフ: