ubuntu18.04.1下Kaldi安装教程
1. 下载kaldi代码
1.1 安装git版本控制软件
sudo apt-get install git
1.2 下载源代码
sudo git clone https://github.com/kaldi-asr/kaldi.git kaldi --origin golden
国内速度可能有点慢,耐心等待。
2. 安装编译依赖库
2.1 检查需要安装的库
进入tools
文件下运行extras/check_dependencies.sh
文件
cd kaldi/tools
extras/check_dependencies.sh
脚本将提示你需要安装哪些依赖库;
按照提示安装后再次执行extras/check_dependencies.sh
;
如果全部安装完毕,将提示:extras/check_dependencies.sh: all OK
若有个别无法成功安装的,下面给出解决办法:
2.2 开始编译
终端键入:
sudo make
多核并行处理可加快编译速度,具体指令如下:
sudo make -j n
n 为服务器CPU逻辑核数,终端键入如下指令可获取:
cat /proc/cpuinfo | grep "processor" | wc -l
编译时间稍长,耐心等待,结束会显示All done OK.
3. 编译kaldi代码
3.1 配置编译环境
切换到./src
目录下,输入 ./configure
进行配置,如果编译目的是在服务器上搭建训练环境,则推荐使用如下编译方式:
cd ..
cd src
sudo ./configure --shared
如果只用CPU运算,则需在配置时加入如下选项:
--use-cuda=no
3.2 MKL安装
**2020.10月**
kaldi下mkl又可以正常安装了,安装脚本路径:tools/extras/install_mkl.sh
-------------------------------------分割线-------------------------------------
自2019或更早一段时间其,安装kaldi时无法自动安装MKL库
,用户可选择手动安装,参考链接: MKL安装方法.
需要注意的是,最新版本的MKL(2020)默认位置不在/opt/intel
下,而是跟压缩包在同一父目录下,安装的时候还需注意。配置时有两个配置参数,MKL
和MKL lib
参数分别需要安装的MKL和MKL lib所在位置,可自行尝试填写,如果失败,注意自己输入的路径是否正确,可根据提示的找不到的文件位置,在自己的文件中找到其对应位置,反推正确的输入路径。
if 如果你默认装到了opt/intel
位置,那么脚本会自己配置好一切。
if 不想安装MKL,可在配置文件./configure
中修改默认使用的数学函数库。但这样无法达到性能最大化。
3.3 开始编译
首先
sudo make -j clean depend
然后,正式编译,可多线程编译加快速度:
sudo make -j n
n为电脑逻辑核心数,然后耐心等待,无比漫长的等待,时间稍长。
编译完成会显示Done
4. 试运行
运行yesno
例子,只能识别Yes和No两个单词。
4.1 进入/kaldi/egs目录下
该目录下存放了kaldi所有的示例,我们进入yesno
示例下
cd ../egs/yesno/s5
4.2 运行命令
sudo ./run.sh
4.3 显示结果
成功运行结果最后一行显示如下;
%WER 0.00 [ 0 / 232, 0 ins, 0 del, 0 sub ] exp/mono0a/decode_test_yesno/wer_10_0.0
5 打完收工
6 一些可能出现的问题:
- 无法make ‘sph2pipe_v2.5.tar.gz’
--2017-08-25 11:43:20-- http://www.openslr.org/resources/3/sph2pipe_v2.5.tar.gz
Resolving www.openslr.org (www.openslr.org)... failed: Temporary failure in name resolution.
wget: unable to resolve host address ‘www.openslr.org’
Makefile:156: recipe for target 'sph2pipe_v2.5.tar.gz' failed
make: *** [sph2pipe_v2.5.tar.gz] Error
解决:由于这个网页打开时间长,所有需要打开Makefile 将wget -T 10改为100