Kaldi DNN的特征提取和解码的连接操作
来源:互联网 发布:科比 知乎 编辑:程序博客网 时间:2024/05/17 03:52
通过读脚本,我们知道了对应的特征提取和dnn的解码过程,得到一个lat(晶格文件),最后通过晶格文件进行分析,得到解码的结果,通过几次尝试,我这里通过wav文件得到了解码的文件,接下来将详细说明:
首先是创建独立的文件夹,专门用来测试,里面保存5个文件,分别是:
1. t2ss.wav(原始的wav文件)
2. wav.scp(里面是保存了wav的绝对路径)
3. final.mdl (训练模型得到的模型文件)
4. final.mat (用来特征转换)
5. HCLG.fst (fst文件)
具体过程:
1.首先列出具体文件,这里我就按照自己的文件给出了,如果用别的,改相应文件就行了
2. 使用compute-mfcc-feats生成对应的特征文件feats.ark
3.使用copy-feats来拷贝特征文件,并创建特征的scp文件,生成feat.scp feat.ark
4.因为是复制了特征文件,所以我这里删除了其中一个feats.ark
5.使用compute-cmvn-stats计算CMVN归一化,得到cmvn.scp cmvn.ark
6.使用apply-cmvn,得到了applycmvn.ark文件
7.使用splice-feats来继续变换特征
8.使用transform来进行特征转换,为了解码调用
9.最后通过得到的transform.ark进行解码的操作,得到一个晶格文件
上面的命令我是分开写的,如果熟悉的话,可以简写,把每一步的输出当成下一步的输入
例如:
nnet-latgen-faster exp/nnet5a_clean_100_gpu/final.mdlexp/tri4b/graph_tgsmall/HCLG.fst "ark,s,cs:apply-cmvn --utt2spk=ark:data/dev_other/split20/14/utt2spk scp:data/dev_other/split20/14/cmvn.scpscp:data/dev_other/split20/14/feats.scp ark:- | splice-feats --left-context=3--right-context=3 ark:- ark:- | transform-featsexp/nnet5a_clean_100_gpu/final.mat ark:- ark:- | transform-feats--utt2spk=ark:data/dev_other/split20/14/utt2spk ark:exp/tri4b/decode_tgsmall_dev_other/trans.14ark:- ark:- |" "ark:|gzip -c >exp/nnet5a_clean_100_gpu/decode_tgsmall_dev_other/lat.14.gz"这只是一个粗略的过程,具体详细内容(数据结构)还是要配合代码看,推荐多通过gdb调试每个exe文件,多看多练才能了解更多!
- Kaldi DNN的特征提取和解码的连接操作
- 使用kaldi进行特征提取时的问题记录
- kaldi中的特征提取
- Kaldi里的特征和模型空间变换
- 利用kaldi提取mfcc特征
- Kaldi特征提取之-预处理
- Kaldi特征提取之-FBank
- Kaldi特征提取之-MFCC
- Kaldi特征提取之-VAD
- Kaldi中特征文件格式的转换
- Kaldi中特征文件格式的转换
- kaldi中特征提取,C++接口设计
- 分类特征的选择和提取
- 特征工程和特征提取的思路整理
- 纹理特征的提取
- 形状特征的提取
- 特征提取的方法
- 颜色特征的提取
- web的基础知识2
- 欢迎使用CSDN-markdown编辑器
- 同时校验多个String参数是否为空的简单方法
- Tomcat源码学习一 Tomcat实现基石Socket
- 第10周项目1-验证算法
- Kaldi DNN的特征提取和解码的连接操作
- 第12周项目3- Prime算法的验证
- Smart Form中打印图标或符号
- 零售行业数据可视化报告:看看今年双十一怎么玩?
- awk 命令
- Java性能优化指南系列(二):Java 性能分析工具
- Java作业@2017.11.11-11.12
- 优化 ExpressRoute 路由
- #define 用法