語音識別工具Kaldi環境配置及安裝手冊(更新加強版)
一、 安裝作業系統
1. 下載Ubuntu 14.04版本
注:強烈不建議下載比較新的版本,首先不能保證穩定性及相容性;其次,太新的版本出了問題都沒辦法google。另外,不要手賤的點更新之類的,否則會出意想不到的災難性麻煩(本人親身體驗)。
2. 在Windows 10系統下面建立空白磁碟分割槽:
- 右鍵我的電腦
- 選擇管理
- 選擇磁碟管理
- 選擇一個磁碟
- 右鍵壓縮卷
- 壓縮後的磁碟變成為未分配部分
3. 下載並安裝好軟碟通(UltraISO)
- 開啟軟體
- 點選開啟
- 找到Ubuntu系統所在目錄,找到iso檔案並開啟
- 點選啟動,選擇寫入硬碟映象
- 大概檢查下各個選項(基本是預設格式)
- 點選格式化
- 點選寫入
- 燒錄完成
4. 從USB啟動選擇空閒空間安裝Ubuntu即可
注:Ubuntu安裝方法多種多樣,這裡就不贅述了。
二、安裝CUDA以及Kaldi之前的基本配置
輸入:
sudo apt-get update
sudo apt-get install libtool
sudo apt-get install autoconf
sudo apt-get install wget
sudo apt-get install perl
sudo apt-get install subversion
sudo apt-get install build-essential
sudo apt-get install gfortran
sudo apt-get install libatlas-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install zlib1g-dev (中間的是數字 1)
sudo apt-get install gawk
三、安裝CUDA
1. 下載cuda_7.5.18_linux.run驅動
- 放在主資料夾下
2. 安裝CUDA依賴庫
- 安裝軟體:
輸入:sudo apt-get install ppa-purge
- 增加安裝源:
輸入:sudo apt-add-repository ppa:xorg-edgers
- 更新安裝源:
輸入:sudo apt-get update
輸入:
sudo apt-get install freeglut3-dev
sudo apt-get install build-essential
sudo apt-get install libx11-dev
sudo apt-get install libxmu-dev
sudo apt-get install libxi-dev
sudo apt-get install libgl1-mesa-glx
sudo apt-get install libglu1-mesa
sudo apt-get install libglu1-mesa-dev
3. 刪除已有的nvidia:
輸入:
sudo apt-get remove --purge nvidia*
4. 編輯黑名單
輸入:
sudo nano /etc/modprobe.d/blacklist.conf
- 在終端的末尾新增:
blacklist amd76x_edac
注:這個本身就有,就在這後面新增後面以下五行,注意不要拼錯
blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist nvidiafb
blacklist rivatv
5. 關閉圖形化介面並安裝CUDA
- 操作:Ctrl+Alt+F1
輸入:賬號和密碼
輸入:
sudo service lightdm stop
chmod +x cuda_7.5.18_linux.run
sudo ./ cuda_7.5.18_linux.run
注:之後一直長按回車鍵,直到百分比進度條到100%,之後全部選擇(y)es,然後一路回車就可以了。等待CUDA安裝完成之後,螢幕最後會顯示:
6. 設定環境變數
輸入:
sudo nano /etc/profile
- 在檔案的最後一行新增 PATH="$PATH:/usr/local/cuda-7.5/bin"
- 然後儲存並退出
輸入:
source /etc/profile
輸入:
echo $PATH
輸入:
sudo nano /etc/ld.so.conf
- 在第二行寫入 include /usr/local/cuda-7.5/lib64
注:如果是第一次裝機,先要設定一下root 密碼
輸入:
sudo passwd root
root 密碼設定好之後,輸入 su 進入 root 賬號
輸入:ldconfig
輸入:exit
輸入:sudo service lightdmstart
高大上簡潔版:
四、安裝Kaldi
第一步:下載Kaldi原始碼
下載後,提取並放在主資料夾下即可。
注:推薦使用Ubuntu直接在瀏覽器下載,最好不要用Windows下載完之後用U盤拷貝過去,我當時就是這樣做的,結果有些許可權問題比較麻煩。
第二步:準備階段
編譯Kaldi之前需要完成:
1. 修改gcc以及g++版本
注:Ubuntu14.04預設安裝的gcc/g++版本是4.8,編譯Kaldi所需的版本要在4.8以下,所以需要要把gcc/g++版本降成4.6
1.1 首先檢視安裝的版本:
輸入:
ls /usr/bin/gcc*
如果沒有版本4.6,則需要安裝:
輸入:
sudo apt-get install gcc-4.6
sudo apt-get install gcc-4.6-multilib
sudo apt-get install g++-4.6
sudo apt-get install g++-4.6-multilib
1.2 安裝之後選擇當前版本
修改gcc
輸入:
sudo update-alternatives --install/usr/bin/gcc gcc /usr/bin/gcc-4.8 50
sudo update-alternatives --install/usr/bin/gcc gcc /usr/bin/gcc-4.6 40
之後輸入:
sudo update-alternatives --config gcc
之後手動選擇所需gcc版本編號,輸入1,即選擇當前gcc版本為4.6,之後回車
修改g++
輸入:
sudo update-alternatives --install/usr/bin/g++ g++ /usr/bin/g++-4.8 50
sudo update-alternatives --install/usr/bin/g++ g++ /usr/bin/g++-4.6 40
之後輸入:
sudo update-alternatives --config g++
之後需要手動選擇g++版本編號,輸入1,即選擇當前g++版本為4.6,之後回車
1.3 修改後檢視當前版本
輸入:
gcc –version
g++ --version
檢視當前版本
2. 修改預設 shell
輸入:sudoln -s -f bash /bin/sh
3. 安裝 git
輸入:sudoapt-get install git
第三步:編譯Kaldi
輸入:
cd ./kaldi-master/tools
make –j 4
注:如果中途沒有退出的話就基本沒問題了。需要注意的是安裝過程中全程保持網路暢通。如果實在看下載進度條沒速度,就自己下載好相應的包,放在應該存放的目錄下即可。
輸入:
cd ../src
./configure
注:檢查OpenFST和ATLAS兩個外部庫是否安裝成功,並且檢查CUDA是否安裝成功。沒問題的話應該有如下顯示:輸入:
make depend –j 4
make –j 4
注:如果有8個cpu可以將4替換成8,這部分時間會比較長。
第四步:單獨編譯cudamatrix
輸入:
cd kaldi-maser/src/cudamatrix/
sudo nano Makefile
- 把檔案中的TESTFILES改成BINFILES
輸入:
cd ~/kaldi-master/src/cudamatrix
make all
./cu-vector-test
如果不報錯並顯示如下資訊,則說明CUDA進行矩陣運算了。
自此,Kaldi就安裝成功了。
五、叢集工作環境
如果是叢集的話,一切就簡單多了。
先配置好Kaldi需要的依賴環境之後就可以直接開始下載並安裝Kaldi了。
第一步:git clone https://github.com/kaldi-asr/kaldi.git
第二步:檢視INSTALL檔案有相應的指導
This is the official Kaldi INSTALL. Look also at INSTALL.md for the git mirror installation.
[for native Windows install, see windows/INSTALL]
(1)
go to tools/ and follow INSTALL instructions there.
(2)
go to src/ and follow INSTALL instructions there.
然後分別檢視tools資料夾和src資料夾下指導檔案,並執行:
cd ./tools
make -j 4
cd ../src
./configure --shared
make depend -j 8
make -j 8
等待一會兒也就搞定了。
然後切換到yesno例子下面,跑下例子,等下出現下面結果就表示kaldi裝好了。
cd ./yesno/s5/
./run.sh