kaldi總結(jié)


一、相關(guān)軟件及包的安裝

將kaldi從 github 下載到本地,進(jìn)去 kaldi 目錄下,根據(jù) INSTALL 進(jìn)入 kaldi 目錄下的 src 和 tools ,按照目錄下的? INSTALL 將依賴包和庫都安裝好。

二、數(shù)據(jù)準(zhǔn)備

1、下載 kaldi 實(shí)例中的語料。

2、自己準(zhǔn)備語料,自己準(zhǔn)備語料可以參照下載的語料格式及命名,將文件進(jìn)行分包等。

三、跑代碼

進(jìn)入kaldi/egs,里面有很多例子,我們以清華30小時(egs/thchs30)為例。

1、數(shù)據(jù)預(yù)處理

local/thchs-30_data_prep.sh $H $thchs/data_thchs30 || exit 1;

根據(jù)此命令可以在$H目錄下生成 data 文件夾,data 文件夾下包含 train,dev, test, test_phone, 里面包含數(shù)據(jù)集相關(guān)的信息 ------? phone.txt; ? spk2utt; ? text; ? utt2spk; ? wav.scp; ? word.txt

2、提取 MFCC 特征及進(jìn)行 CMVN (倒譜均值歸一化)

steps/make_mfcc.sh --nj $n --cmd "$train_cmd" data/mfcc/$x exp/make_mfcc/$x mfcc/$x || exit 1;

steps/compute_cmvn_stats.sh data/mfcc/$x exp/mfcc_cmvn/$x mfcc/$x || exit 1;

創(chuàng)建 data/mfcc/train (dev, test), 里面包含了從data/train (dev, test) 下復(fù)制過來的上述6個文件以及這兩句代碼生成的 cmvn.scp 和 feats.scp。

除此之外,data/mfcc/train (dev, test) 保存了詳細(xì)的MFCC 特征和 CMVN 數(shù)據(jù)。

3、生成語言模型相關(guān)

utils/format_lm.sh data/lang data/graph/word.3gram.lm.gz $thchs/data_thchs30/lm_word/lexicon.txt data/graph/lang || exit 1;

創(chuàng)建data/graph/lang, 包含 L.fst;? G.fst ; topo 及一些保存音素對應(yīng)編號或者次對應(yīng)編號及一些其他編號的相關(guān)文件。

4、訓(xùn)練

steps/train_mono.sh --boost-silence 1.25 --nj $n --cmd "$train_cmd" data/mfcc/train data/lang exp/mono || exit 1;

創(chuàng)建 exp/mono, 包含 final.mdl; tree 等文件用于之后解碼將音頻特征到狀態(tài)及音素的映射。

5、構(gòu)圖(生成 HCLG.fst)

(local/thchs-30_decode.sh --mono true --nj $n "steps/decode.sh" exp/mono data/mfcc &)

在文件 local/thchs-30_decode.sh 里

utils/mkgraph.sh $opt data/graph/lang $srcdir $srcdir/graph_word || exit 1;

創(chuàng)建 exp/mono/graph_word, 包含 HCLG.fst; phones.txt; ?words.txt 等文件,用于之后解碼在 HCLG.fst 找尋最小路徑。

6、解碼

(local/thchs-30_decode.sh --mono true --nj $n "steps/decode.sh" exp/mono data/mfcc &)

在文件 local/thchs-30_decode.sh 里

$decoder --cmd "$decode_cmd" --nj $nj $srcdir/graph_word $datadir/test $srcdir/decode_test_word || exit 1


自己理解的解碼過程


四、查的相關(guān)資料

來源于廈門大學(xué)洪青陽副教授的WFST解碼器


HCLG.fst的解釋







最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容