第一阶段:./cmd.sh . ./path.sh(设置执行路径以及命令脚本名字)
ps:decode 解码 train 训练
第二阶段:data preparation(数据准备阶段)
执行 local/ thchs-30_data_prep.sh
为了创建: wav.scp, utt2spk.scp, spk2utt.scp, text 还有words.txt phone.txt
- 循环遍历thchs30/thchs30-openslr/data_thchs30/data/ 中 dev test train 3个文件夹内的wav 视频(6g视频) 获取它们的名字(如:C08_559 )
- 循环遍历thchs30/thchs30-openslr/data_thchs30/目录下的 data test train 3个文件夹内的wav 视频(6g视频) 获取.wav.trn
- 它们的名字(如:C08_559 ) 生成了 utt2spk, wav.scp 存放在egs/thchs30/s5/data/ 中 dev test train 3个文件夹
- 它们的.wav.trn 生成了phone.txt word.txt 存放在egs/thchs30/s5/data/ dev test train 3个文件夹
- utils包 utils/utt2spk_to_spk2utt.pl 利用 utt2spk 产生 spk2utt (两者排序不同而已) 存放在egs/thchs30/s5/data/ dev test train 3个文件夹
上图为目录,下图为utt2spk(由上图数据生成下图数据)
ps:C13与C14 是不同的讲话者
更多文件解释在:http://blog.youkuaiyun.com/dzp443366/article/details/54094950
第三阶段:产生的MFCC特征以及计算CMVN
MFCC就是语音特征提取
1. steps/make_mfcc.sh
2.steps/compute_cmvn_stats.sh
第四阶段:建立一个大的词汇,包括词的训练和解码
源码备注:(就是上述标题意思)
prepare language stuff
build a large lexicon that invovles words in both the training and decoding.
查看两个生成文件语句,从resource包中复制dict文件夹到 项目中的data文件夹
看一下dict里面的文件 lexicon.txt 以及phones.txt
上图为lexicon.txt
格式为: <词汇> <音素>