KALDI語音識別庫在LINUX下的安裝和編譯

JamesJuZhang發表於2014-01-26

1.介紹

Kaldi語音識別工具將HTK比較零碎的各種各樣的指令和功能進行整理集合,使用perl指令碼呼叫。同時也加入了深度神經網路的分類器(DNN),本身由原來做HTK開發的人員製作而成,可以說是HTK的升級加強版。 

kaldi官方網站請見:http://kaldi.sourceforge.net/index.html 


2.安裝和編譯

第一步:下載kaldi工具包 
kaldi 有兩個版本,kaldi-1和kaldi—trunk,前者是穩定版,後者是新版。我安裝的是新版。 
下面開始安裝: 

sudo apt-get install subversion
svn update
svn co https://kaldi.svn.sourceforge.net/svnroot/kaldi/trunk kaldi-trunk
cd kaldi-trunk
cd tools
cat INSTALL
make  -j 4

注:

1.當電腦有不止一個cpu時,假設有四個,可以輸入:make -j 4 以節省時間。

2.make指令是為了安裝8個軟體,其中,(sph2pipe, openfst, ATLAS)這3個是必須的。

第二步:配置

cd ../src
./configure

注:通常這個時候會報錯,那是因為沒有安裝openfst或者ATLAS

安裝openfst:

1.安裝g++

sudo apt-get install g++

2.解壓

tar -xovzf openfst-1.3.2.tar.gz
for dir in openfst-1.3.2/{src/,}include/fst; do
    ( [ -d $dir ] && cd $dir && patch -p0 -N <../../../../openfst.patch ) 
done 
rm openfst 2>/dev/null # Remove any existing link
ln -s openfst-1.3.2 openfst
cd openfst-1.3.2

以下選擇正確的配置指令:

若是linuxdarwin

./configure --prefix=`pwd` --enable-static --disable-shared
若是64位系統,
./configure --host=x86_64-linux --prefix=`pwd` --enable-static --disable-shared
若是虛擬機器,
./configure --prefix=`pwd` CXX=g++-4.exe CC=gcc-4.exe --enable-static --disable-shared
3.安裝
sudo make install
安裝ATLAS:

注:安裝ATLAS前,要保證關掉cpu throttling。絕大部分作業系統預設開啟power management中的cpu throttling以保護cpu。絕大部分電腦可以在BIOS中關掉cpu throttling(通常在power management中或cpu frequency 選項中。)絕大部分作業系統也能關掉cpu throttling,在fedora中,輸入/usr/bin/cpufreq-selector -g performance可以關掉cpu throttling。本機器是ubuntu 12.04 cpu frequency scaling governor的路徑是(/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor)。此處建議使用:https://wiki.archlinux.org/index.php/CPU_Frequency_Scaling_(簡體中文)中的修改軟體,修改後是臨時的,重啟之後恢復預設設定,這樣不會對基礎設定造成影響。

具體操作:
sudo apt-get install cpufrequtils 
sudo cpufreq-set -c 1 -g performance
sudo cpufreq-set -c 2 -g performance
sudo cpufreq-set -c 3 -g performance
sudo cpufreq-set -c 4 -g performance
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
cat /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor

檢視裡面的選項ondemand是否均改為performance

除了更改cpu throttling,還要安裝gfortran,否則會出錯:

sudo apt-get install gfortran

最後,在tools目錄下輸入:

./install_atlas.sh

完成ATLAS的安裝。

第三步:配置安裝:

../src
./configure
make depend
make -j 4


在一段時間之後就會有提示出現,顯示安裝成功。




相關文章