[语音识别] kaldi -- aidatatang_200zh脚本解析:检查相关模型
Posted MachineLP
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[语音识别] kaldi -- aidatatang_200zh脚本解析:检查相关模型相关的知识,希望对你有一定的参考价值。
输入:data/local/lm/3gram-mincount/lm_unpruned.gz
输出:G.fst
local/format_data.sh
流程:
1. 解压lm_unpruned.gz并通过arpa2fst转换成G.fst (语言模型概率就成了图权重的一部分)
gunzip -c "$arpa_lm" | \\
arpa2fst --disambig-symbol=#0 \\
--read-symbol-table=data/lang_test/words.txt - data/lang_test/G.fst
2. 对G.fst进行检查, 检查FST是否随机, 打印出两个数字,最小权重和最大权重,以告诉用户FST不随机的程度。如果一个WFST从任意状态出发的跳转的权重之➕运算为1,那就说这个WFST满足stochastic性质,在一个满足stochastic性质的图上解码,解码效率要高一些。
fstisstochastic data/lang_test/G.fst
3. 确定化(G.fst, L_disambig.fst)
fstdeterminize data/lang_test/G.fst
fstdeterminize data/lang_test/L_disambig.fst
4. 将词典L.fst和语言模型G.fst组合
fsttablecompose data/lang_test/L_disambig.fst data/lang_test/G.fst | \\
fstdeterminizestar >/dev/null || echo Error
fsttablecompose data/lang/L_disambig.fst data/lang_test/G.fst | \\
fstisstochastic || echo LG is not stochastic
备注
以上是关于[语音识别] kaldi -- aidatatang_200zh脚本解析:检查相关模型的主要内容,如果未能解决你的问题,请参考以下文章