https://blog.csdn.net/weixin_43566049/article/details/131851128?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522169708026216800225560761%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=169708026216800225560761&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-21-131851128-null-null.142^v96^pc_search_result_base6&utm_term=%E5%AE%89%E8%A3%85espnet&spm=1018.2226.3001.4187
Kaldi+ESPnet安装指南
源码地址:kaldi-asr/kaldi: kaldi-asr/kaldi is the official location of the Kaldi project.(github.com)
espnet/espnet: End-to-End Speech Processing Toolkit (github.com)
官方安装文档:
http://kaldi-asr.org/doc/install.html
https://espnet.github.io/espnet/installation.html
服务器波动两次给环境和数据全整没了,第三次重新安装,给自己写个指南,万一还有下次(
0 环境准备
新建conda环境,在环境中安装好pytorch。
根据espnet/egs2/librimix/sot_asr1(espnet/egs2/librimix/sot_asr1 at master · espnet/espnet (github.com))的README文件所示,他人复现环境版本信息如下:
目标安装python版本为3.8,pytorch版本为1.12.1。
conda create --name espnet python=3.8
conda activate espnet
pip install torch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1
1
2
3
4
5
等待下载任务完成后conda list查看已安装包列表:
接下来正式开始Kaldi工具的安装。
1 Kaldi安装
1.1 克隆Kaldi文件
进到目标文件夹下输入命令:
git clone https://github.com/kaldi-asr/kaldi.git
1
题外话:全新的服务器环境中没有git命令,于是企图安装git命令,输入命令报错发现没有sudo,遂安装sudo。命令如下:
apt-get install sudo
sudo apt-get install git
1
2
下载任务完成后可以看到目标文件夹中多出了kaldi文件夹。
1.2 tools编译
1.2.1 安装依赖包
首先进到kaldi/tools文件夹,根据官方文档,检查依赖包的安装情况:
extras/check_dependencies.sh
1
运行完成,显示缺少包:
直接复制它的命令进行安装:
sudo apt-get install g++ make automake autoconf patch sox gfortran libtool subversion python2.7
1
完成之后再回到上一条命令继续检查,发现遗漏:
继续复制命令安装:
sudo apt-get install zlib1g-dev
1
再再回到check,继续检查:
直接使用它给的命令安装:
extras/install_mkl.sh
1
安装完成后会提示successfully installed,再再再回到check:
提示all OK了,这一步完成。
1.2.2 编译
具体信息可以仔细查看官方安装文档,我直接:
make -j 8
1
等待编译完成。(-j *可选,配置高可多,低的话少一点否则会报错。)
1.3 src编译
确保上一步安装完成后回到kaldi目录下,进入src文件夹。
第一步:
./configure --shared
1
看到显示successfully configured,并提示下一步:
make depend -j 8
1
完成后再:
make -j 8
1
显示Done,完成。
1.4 验证是否安装成功
退回到kaldi目录下,进入egs文件夹,运行yesno实例:
cd egs/yesno/s5/
./run.sh
1
2
成功。
2 ESPnet安装
2.1 克隆Espnet文件
git clone https://github.com/espnet/espnet.git
1
2.2 安装依赖包
sudo apt-get install cmake
sudo apt-get install sox
sudo apt-get install flac
1
2
3
安装完成后连接到kaldi:
$ cd <espnet-root>/tools
$ ln -s <kaldi-root> .
1
2
2.3 设置Python环境
因为已经创建了conda环境,所以直接获取当前环境下的python:
./setup_python.sh $(command -v python3)
1
2.4 编译安装
在espnet/tools文件夹下直接:
make
1
2.5 验证安装是否成功
进入文件夹espnet/egs/yesno/asr1,运行:
./run.sh
1
成功。
小插曲:
报错line 107: bc: command not found,没安装bc(Basic Calculator)包,直接
sudo apt-get install bc
1
报错run.pl: job failed, log is in exp/train_nodev_pytorch_train/train.log,看起来是torch出了问题,在log文件里找到AssertionError: Torch not compiled with CUDA enabled,conda list发现torch和torchaudio变成cpu版本的了,解决办法就是uninstall这两个cpu的包,再跟前面一样重新安装一下GPU版本的就行了:
pip install torch==1.13.1 torchvision==0.14.1 torchaudio==0.13.1
————————————————
版权声明:本文为CSDN博主「每天都要写bug」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43566049/article/details/131851128