有趣的開源軟體:語音識別工具Kaldi (一)
阿新 • • 發佈:2019-01-10
Kaldi是一個非常強大的語音識別工具庫,主要由Daniel Povey開發和維護。目前支援GMM-HMM、SGMM-HMM、DNN-HMM等多種語音識別的模型的訓練和預測。其中DNN-HMM中的神經網路還可以由配置檔案自定義,DNN、CNN、TDNN、LSTM以及Bidirectional-LSTM等神經網路結構均可支援。
下載以及安裝
與其他開源軟體一樣,首先Clone它在Github上的程式碼
$ git clone https://github.com/kaldi-asr/kaldi
Clone下來之後按照INSTALL檔案的指示,需要先完成tools資料夾下的編譯安裝,然後再去編譯src下的內容。因此,先去tools資料夾:
$ cd kaldi/tools
在tools資料夾下依舊有一個INSTALL,我們根據它的指示,一步一步完成安裝。首先,需要執行extras/check_dependencies.sh這個指令碼來檢查一些依賴的環境是否存在並且正確配置。
$ extras/check_dependencies.sh extras/check_dependencies.sh: automake is not installed. extras/check_dependencies.sh: autoconf is not installed. extras/check_dependencies.sh: neither libtoolize nor glibtoolize is installed extras/check_dependencies.sh: subversion is not installed extras/check_dependencies.sh: we recommend that you run (our best guess): sudo apt-get install automake autoconf libtool subversion You should probably do: sudo apt-get install libatlas3-base /bin/sh is linked to dash, and currently some of the scripts will not run properly. We recommend to run: sudo ln -s -f bash /bin/sh
這個輸出的結果不同的Linux會不相同(我的是Ubuntu 16.04)。根據check_dependencies.sh輸出結果的提示,安裝缺的包,以及配置正確的環境
$ sudo apt-get install automake autoconf libtool subversion
$ sudo apt-get install libatlas3-base
$ sudo ln -s -f bash /bin/sh
然後再重新執行一遍check_dependencies.sh
$ extras/check_dependencies.sh extras/check_dependencies.sh: all OK.
如果輸出以上結果,那麼我們可以繼續安裝了
$ make -j 16
其中-j 16是開16個job同時進行編譯,這個可以根據CPU核心的數量進行指定。確定沒有錯誤後切換到src資料夾
$ cd ../src
這裡面也包含了一個INSTALL檔案,按照裡面的步驟編譯和安裝
$ ./configure
執行完成後在最後一行可以看到SUCCESS,如果沒有的話那應該是哪個步驟出問題了,可以去檢查一下上面幾個步驟是否有錯誤
$ make depend
$ make -j 16
檢查一下編譯是否有錯誤,如果沒有錯誤的話make指令碼會在螢幕的最後一行輸出Done。至此Kaldi的編譯安裝完成了,可以愉快的開始訓練模型了:P