Kaldi執行過程中遇到的一些問題(持續更新...)
Q: qsub command not found
A: 這個看錯誤重定向,如果是queue任務提交失敗,需要考慮當前是否為單cpu,無cuda gpu等環境,去cmd.sh檢視配置是否達到要求
Q:Karel和Dan的DNN問題
A:Karel的DNN(nnet)不支援CPU,Dan的DNN(nnet2)支援CPU,可以在虛擬機器上跑
Q:如何檢視DNN和HMM模型二進位制檔案
A:nnet-am-copy –binary=false final.mdl final.mdl.txt 或者
gmm-copy –binary=false final.mdl final.mdl.txt 或者
nnet3-am-copy –binary=false final.mdl final.mdl.txt
根據模型檔案的型別對應選擇指令碼
Q:自己在準備yesno指令碼時,如果將utterance-id寫成spkid-uttid格式,不管spkid是否同一人的id,不管arpa是否自己生成,都會導致識別率無法達到100%
A:改成uttid而不是spkid-uttid就不會出現這樣的問題,這個可能得檢視原始碼才能發現如何處理的,猜測可能在將spkid-uttid轉換成int時出現一些差錯?或者與cmvn也有一小部分關係?
Q:cmvn對語音如何處理?
A:cmvn是把特徵規整成均值為0,方差為1的向量。
這個是針對 相同的spkid 進行規整的。
x = (x-u)/delta 這樣規整
一般來說,cmn和cvn是在一條語音內進行規整(對於多個說話人,cmvn是在同一個說話人內進行規整的,所以如果實際語音有多個說話人,但是標註只有一個說話人,那麼cmvn可能會不準確)
Q:如何設定需要開啟的預設程式(比如想用sublime而不是gedit開啟kaldi指令碼)
A:/usr/share/applications裡面有安裝的程式完整包名
該目錄下還有個default.list,把裡面對應的包名改成自己想要設定的程式包名即可