kaldi中跑thchs30

来源:互联网 发布:mariadb与mysql的区别 编辑:程序博客网 时间:2024/06/05 21:50

———更新————————–
尽量使用最新的版本,之需要改下面的第一个问题,就可以全部跑通,新的版本中beam size 是6, 就不会有问题了。


按照github上的版本直接跑的过程中遇到两个问题:
1. 在 make word graph的过程中字典正确的没有拷贝到本地:
在 14.04 下面没有问题,在16.04 下面出现问题了。

  cat $thchs/resource/dict/lexicon.txt $thchs/data_thchs30/lm_word/lexicon.txt | grep -v '<s>' | grep -v '</s>' | sort -u > data/dict/lexicon.txt || exit 1;

在16.04下面输出到文件里面是 (stand input),但是data/lang下面的文件都没有正确生成。
但是在14.04 下面是没有问题的(亲测)。
原因应该是 bash的版本不同导致的吧。
解决方法就是:
在grep 后面 加个 -a 就好了。

  1. 问题报如下错误:
    错误作者回答: https://groups.google.com/forum/#!topic/kaldi-help/S06_dri-Kcg
WARNING (gmm-align-compiled:AlignUtteranceWrapper():decoder-wrappers.cc:466) Retrying utterance A02_000 with beam 40WARNING (gmm-align-compiled:AlignUtteranceWrapper():decoder-wrappers.cc:475) Did not successfully decode file A02_000, len = 979WARNING (gmm-align-compiled:AlignUtteranceWrapper():decoder-wrappers.cc:466) Retrying utterance A02_001 with beam 40

具体原因:暂时不明,对对齐没有研究。

解决方法是:
将 train_mono.sh 中 gmm-align-compiled scaleoptsbeam=beam –retry-beam=[beam*4
中的beam值设置的大点就好了,比如10, 50, 100 等。
太大了对结果也会有影响。
http://kaldi-asr.org/doc/faster-decoder_8h_source.html#l00033 中定义beam的时候有说明:
46 opts->Register(“beam”, &beam, “Decoding beam. Larger->slower, more accurate.”);

原创粉丝点击