在华为云鲲鹏服务器上的部署kaldi
1 介绍
Kaldi是当前最流行的开源语音识别工具(Toolkit),它使用WFST来实现解码算法。Kaldi的主要代码是C++编写,在此之上使用bash和python脚本做了一些工具。
本文档以“Kaldi最新版本”为例进行说明。
2 安装准备
华为云购买一台鲲鹏服务器
本文以云服务器KC1实例搭建,云服务器配置如表1-1所示。
表1-1 云服务器配置
项目 |
说明 |
规格 |
kc1.large.2 | 2vCPUs | 4GB |
磁盘 |
系统盘:高IO(40GB) |
操作系统要求如表1-2所示。
表1-2 操作系统要求
项目 |
说明 |
下载地址 |
Ubuntu |
18.04 |
在公共镜像中已提供。 |
Kernel |
4.15.0 |
在公共镜像中已提供。 |
3 获取源码
cd /usr/local git clone https://github.com/kaldi-asr/kaldi.git kaldi --origin golden
4 配置编译环境
1)更换镜像源
cp -a /etc/apt/sources.list /etc/apt/sources.list.bak wget -O /etc/apt/sources.list https://mirrors.huaweicloud.com/repository/conf/Ubuntu-Ports-bionic.list apt-get update
2)进入tools目录。
cd /usr/local/kaldi/tools
3)检测依赖程序是否安装。
extras/check_dependencies.sh
4)根据提示安装依赖。
CentOS7.6:
yum install wget automake autoconf zlib zlib-devel bzip2 sox gcc-gfortran.aarch64 libtool python3 -y
Ubuntu18.04:
sudo apt-get install zlib1g-dev automake autoconf sox gfortran libtool subversion python-dev swig -y
4)安装OpenBLAS依赖。
cd /usr/local/kaldi/tools extras/install_openblas.sh
说明:x86机器,需要安装的是mkl(输入命令:extras/install_mkl.sh),而鲲鹏机器,则需要安装OpenBLAS。通过vim extras/install_openblas.sh检查OpenBLAS版本,当前下载的版本是0.3.7,但该版本有问题,安装失败,将版本改为0.3.9。
5)安装openfst依赖。
cd /usr/local/kaldi/tools wget http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-1.6.7.tar.gz tar -zxvf openfst-1.6.7.tar.gz cd openfst-1.6.7 ./configure --prefix=/usr/local/kaldi/tools/openfst-1.6.7 make -j4 make install ln -s /usr/local/kaldi/tools/openfst-1.6.7 /usr/local/kaldi/tools/openfst
6)安装cub。
cd /usr/local/kaldi/tools make cub
7)再次检测依赖程序是否安装。
extras/check_dependencies.sh
当系统回显类似如下信息时,表示安装依赖完成。
extras/install_openblas.sh: all OK.
5 编译和安装
1)进入src目录。
cd /usr/local/kaldi/src/
配置生成Makefile。
./configure --shared
2)编译Kaldi。
make -j clean depend make -j4
kaldi需要安装哪一些依赖包,可以通过进入kaldi/tools目录,运行./extras/check_dependencies.sh进行查看。
6 运行和验证
egs目录下存放的是Kaldi提供的一些例子,我们通过其中的yesno例子来验证kaldi。
1)进入yesno目录。
cd /usr/local/kaldi/egs/yesno/s5
2)运行yesrun例子。
./run.sh
当系统回显类似如下信息时,表示安装kaldi成功。
- 点赞
- 收藏
- 关注作者
评论(0)