备注:本篇文章是有kaldi学习 语音深度学习群(群号:367623211)里的@冒顿同志写的,本人代发。在这里感谢@冒顿同学的努力……欢迎大家积极学习……
一、安装所有相关软件包
sudo apt-get install autoconf,automake,gcc,libtool,subversion,libatlas-dev,libatlas-base-dev,gfortran
二、下载kaldi到目录kaldi-trunk
svn co https://svn.code.sf.net/p/kaldi/code/trunk kaldi-trunk
三、编译安装使用到的工具
cd kaldi-trunk/tools
make
四、配置kaldi
cd ../src
./configure
五、编译kaldi
make all
六、运行例子yesno
cd ../egs/yesno/s5
./run.sh
参考结果:
decode.sh: feature type is delta
%WER 0.00 [ 0 / 240, 0 ins, 0 del, 0 sub ] exp/mono0a/decode_test_yesno/wer_1
七、运行例子timit
1、在kaldi-trunk/egs/timit目录下创建data目录
cd
mkdir kaldi-trunk/egs/timit/data
2、把timit.rar里面的东西拷贝到kaldi-trunk/egs/timit/data 中,我的数据是rar格式的,所以在windows下解压,然后winscp拷贝
3、修改运行环境:修改kaldi-trunk/egs/timit/s5中的cms.sh,默认是运行#a)JHU cluster,改成运行#c)run it local
#a) JHU cluster options
#export train_cmd="queue.pl -l arch=*64"
#export decode_cmd="queue.pl -l arch=*64,mem_free=2G,ram_free=2G"
#export mkgraph_cmd="queue.pl -l arch=*64,ram_free=4G,mem_free=4G"
#export cuda_cmd=run.pl
#b) BUT cluster options
#export train_cmd="queue.pl -q all.q@@blade -l ram_free=1200M,mem_free=1200M"
#export decode_cmd="queue.pl -q all.q@@blade -l ram_free=1700M,mem_free=1700M"
#export decodebig_cmd="queue.pl -q all.q@@blade -l ram_free=4G,mem_free=4G"
#export cuda_cmd="queue.pl -q long.q@@pco203 -l gpu=1"
#export cuda_cmd="queue.pl -q long.q@pcspeech-gpu"
#export mkgraph_cmd="queue.pl -q all.q@@servers -l ram_free=4G,mem_free=4G"
#c) run it locally...
export train_cmd=run.pl
export decode_cmd=run.pl
export cuda_cmd=run.pl
export mkgraph_cmd=run.pl
4、修改run.sh 更改数据位置
timit=/export/corpora5/LDC/LDC93S1/timit/TIMIT修改为
timit=/root/kaldi-trunk/egs/timit/data
5、运行例子
cd
cd kaldi-trunk/egs/timit/s5
经过漫长的等待:出结果了
在整个过程中,出了N多错误,分别在cygwin,vmware虚拟机,真机上安装调试了N次,现将遇到的问题总结如下:如果有相同问题的,可以参考
一、svn co https://svn.code.sf.net/p/kaldi/code/trunk kaldi-trunk 出错
1、未安装subversion
解决:sudo apt-get install subversion
2、找不到https://kaldi.svn.sourceforge.net/svnroot/kaldi/trunk
解决:换成https://svn.code.sf.net/p/kaldi/code/trunk
二、tools里面make出错
1、 sctk-2.4.0-20091110-0958.tar.bz2 解压出错。这个是因为压缩工具不支持bz2的解压。
解决:修改Makefile,将所有的 sctk-2.4.0-20091110-0958.tar.bz2 改成sctk-2.4.0-20091110-0958.tar.gz
2、缺少gcc,automake,autoconf,gfortran,libtool
解决:安装相应的软件包。
三、src里面./configure 或者make 出错
1、Could not find libatlas.so in any of the obvious places, will most likely try static:
找不到libatlas.so
解决:sudo apt-get install libatlas-base-dev ,libatlas-dev
四、运行yesno例子出错
1、找不到libfstscript.so.1
fstarcsort: error while loading shared libraries: libfstscript.so.1: cannot open shared object file: No such file or directory
解决:find libfstscript.so.1 然后把这个文件拷贝到/usr/lib
2、找不到libfst.so.1
fstarcsort: error while loading shared libraries: libfst.so.1: cannot open shared object file: No such file or directory
解决:findlibfst.so.1 然后把这个文件拷贝到/usr/lib
五、运行timit 例子出错:
1、找不到测试数据
timit_data_prep.sh: Spot check of command line argument failed
Command line argument must be absolute pathname to TIMIT directory
with name like /export/corpora5/LDC/LDC93S1/timit/TIMIT
解决:修改run.sh 中的 timit=/export/corpora5/LDC/LDC93S1/timit/TIMIT,使他指向你的数据位置
2、找不到qsub
qsub not found.
解决:修改cmd.sh :注释掉#a)下面的命令,打开#c)下面的选项。