1. kaldi的安装
按照官网教程,kaldi的安装首先通过git获取项目,再进行编译。
git clone https://github.com/kaldi-asr/kaldi.git
cd kaldi/tools/; make; cd ../src; ./configure; make
如果报错,则可能是相关的依赖项没有安装,可按照提示一步步安装(需要root权限)。
sudo apt-get install zlib1g-dev automake autoconf sox subversion
sudo bash extras/install_mkl.sh
2. kaldi的使用
2.1 librispeech的ASR模型训练
egs目录下放着各个数据库的样例代码,一个文件夹就是一个数据库,非常全面。进入egs/librispeech/s5/.每个代码里边都会有一份cmd.sh(引入单机多卡run.pl或者多机多卡quene.pl模式), path.sh(引入各种kaldi的路径), run.sh(训练及测试的整个主流程)。以下主要细看run.sh,整体流程为 导入参数->下载部分数据并预处理->准备并创建语言模型->提取特征->训练部分数据集->训练单因素、三音素模型并变换训练->加入更多数据集->变换训练->加入全部数据集->变换训练->解码->训练tdnn模型。具体如下:
#!/usr/bin/env bash
## 导入参数
data=/home/fwq/Project/kaldi/kaldi/data
data_url=www.openslr.org/resources/12
lm_url=www.openslr.org/resources/11
mfccdir=mfcc
stage=1
. ./cmd.sh
. ./path.sh
. parse_options.sh
set -e
## 下载数据
if [ $stage -le 1 ]; then
for part in dev-clean test-clean dev-other test-other train-clean-100; do
local/download_and_untar.sh $data $data_url $part
done
local/download_lm.sh $lm_url data/local/lm
fi
## 生成各种数据的各种文件,如wav.scp,text,utt2spk,spk2gender,utt2dur
if [ $stage -le 2 ]; then
for part in dev-clean test-clean dev-other test-other train-clean-100; do
local/data_prep.sh $data/LibriSpeech/$part data/$(echo $part | sed s/-/_/g)
done
fi
## 准备语言模型,准备字典(local/prepare_dict_sh),准备语言相关数据(utils/prepare_lang.sh),格式化数据(local/format_lms.sh)
if [ $stage -le 3 ]; then
local/prepare_dict.sh --stage 3 --nj 30 --cmd "$train_cmd" \
data/local/lm data/local/lm data/local/dict_nosp
utils/prepare_lang.sh data/local/dict_nosp \
"<UNK>" data/local/lang_tmp_nosp data/lang_nosp
local/format_lms.sh --src-dir data/lang_nosp data/local/lm
fi
## 用3-gram和4-gram语言模型创建ConstArpaLm格式语言模型
if [ $stage -le 4 ]; then
utils/build_const_arpa_lm.sh data/local/lm/lm_tglarge.arpa.gz \
data/lang_nosp data/lang_nosp_test_tglarge
utils/build_const_arpa_lm.sh data/local/lm/lm_fglarge.arpa.gz \
data/lang_nosp data/lang_nosp_test_fglarge
fi
## 数据特征提取,提取mfcc,计算每条wav文件的均值方差
if [ $stage -le 5 ]; then
if [[ $(hostname -f) == *.clsp.jhu.edu ]]; then

本文详细介绍了Kaldi的安装步骤,包括获取源码、编译和安装依赖。接着,文章深入讲解了如何使用Kaldi训练Librispeech的ASR模型,涵盖了数据下载、预处理、特征提取、模型训练、解码等多个环节。最后,文中展示了如何利用预训练模型测试自定义数据集,包括数据准备、特征计算、解码和评分。整个过程展示了Kaldi的强大功能和实用性。
最低0.47元/天 解锁文章
1173

被折叠的 条评论
为什么被折叠?



