Kaldi配置環境變數

llearner發表於2017-08-25

大家都知道,Kaldi在執行run.sh前都需要執行path.sh來進行一些環境變數的配置。但是這是暫時的,一旦關閉終端視窗,想要重新執行run.sh的部分命令還得重新執行path.sh一遍。而且有些情況path.sh會做很多重複的工作,在不同的例子中需要對path.sh做很多不同的配置,不如直接將需要用到的bin檔案加入到Linux環境變數中,讓使用過程更加方便快捷。

大家都知道在Linux環境中有三種配置環境變數的方法:1、在控制檯中加入PATH,Kaldi的執行path.sh就屬於這種方法,但是關閉當前shell視窗就失效了;2、修改/etc/profile檔案,Linux中所有的使用者都會受此影響,需要root許可權才能更改;3、修改使用者根目錄下的bashrc檔案,即~/.bashrc,針對當前使用者有效。修改後記得source下檔案使其更新。

這裡推薦第三種方法加入Kaldi的環境變數,主要是加入一些Kaldi在訓練識別等過程使用到的bin程式,以及檢視二進位制模型的自帶程式,以及轉換FST等一些第三方可執行程式等路徑。.bashrc檔案參考如下(基於當前Kaldi最新版):

export PATH=$PATH:/xxx/Srilm/bin/i686-m64
export KALDI_DIR=/yyy/kaldi
export WORK_DIR=$KALDI_DIR/egs/wsj/s5/
export PATH=$PATH:./:$KALDI_DIR/src/bin:$KALDI_DIR/src/lmbin:$KALDI_DIR/src/fstbin:$KALDI_DIR/src/gmmbin:$KALDI_DIR/src/kwsbin:$KALDI_DIR/src/latbin:$KALDI_DIR/src/featbin:$KALDI_DIR/src/fgmmbin:$KALDI_DIR/src/sgmm2bin:$KALDI_DIR/src/chainbin/:$KALDI_DIR/src/nnetbin/:$KALDI_DIR/src/nnet2bin:$KALDI_DIR/src/nnet3bin:$KALDI_DIR/src/onlinebin:$KALDI_DIR/src/online2bin:$KALDI_DIR/src/ivectorbin:$KALDI_DIR/tools/openfst-1.6.2/bin:$WORK_DIR/utils:$WORK_DIR/steps:

xxx,yyy代表路徑
注意環境變數中的版本號,根據自己的路徑進行對應的更改
其中SRILM是用來將 字詞和拼音對映 轉換成語言模型要用到的arpa 工具目錄。

相關文章