kaldi 聲學模型構建dict過程

2021-07-26 18:30:45 字數 1187 閱讀 1952

kaldi聲學模型訓練,首先需要資料準備,

在資料準備階段需要準備標註資料的發音,處理步驟如下:

1.首先是把訓練資料和測試資料對應的標註(text)合成乙個檔案到text_all,同時去掉其他非字母和數字的字串

cat

$traindatadir

/text

$testdatadir

/text

|perl -pe

"s/^[\w\-]+\s+//

">

$dictdir

/text_all

2.然後就是根據準備好的發音字典(sum_dict.processed.lex)對第一步的標註資料進行處理,得到sum_dict.lex 帶聲調

local/update_lex.pl

-i./conf/sum_dict.processed.lex

-t$dictdir

/text_all

-o$dictdir

/sum_dict.lex

3.最後,根據第二步驟生成的檔案,來生成字典,音素等檔案,放到字典資料夾下($dictdir)

local/prepare_dict.sh

$dictdir

/sum_dict.lex

$dictdir1

生成之後檢視字典資料夾下面的檔案,有如下檔案:

1) words.txt   為訓練資料和測試資料分詞之後,和起來的所有去重之後的詞

2) lexicon.txt  根據sum_dict.lex,生成word

對應的發音字典檔案,對應格式為 word phone phone phone...

3) silence_phones.txt  靜音音素 4)

optional_silence.txt  乙個單獨的音素,用來作為字典中預設的靜音音素 5)

phones.txt  根據lexicon生成的所有的音素集合 6)

nonsilence_phones.txt  非靜音音素 7)

extra_questions.txt   用於構建決策樹的問題集,由靜音音素和非靜音音素生成 還有

sum_dict.lex  

text_all  

text_all_word 

和lexiconp.txt 帶概率的發音字典檔案,格式為word prob phone phone phone...

聲學模型(一) hmm聲學訓練流程

乙個詞對應乙個hmm的情況,對應的訓練資料如果刪除了開始結尾的靜音資料的話,無需標註既可以訓練。常用訓練流程 hinit hrest 對於訓練資料較少而且需要較好的抗噪性,可以使用固定方差的模型。模型的方差可以使用hcompv進行估算,無需進行重估。對於phone級別的hmm訓練,需要額外引入her...

語音識別 聲學模型(GMM HMM)

本文主要講解一下gmm hmm演算法聲學模型的大概思路!聲學模型的目的是將經mfcc提取的所有幀的特徵向量轉化為有序的音素輸出。概述如下 我們都知道hmm模型裡面有隱含狀態概念。我們需要弄明白音素hmm模型的隱含狀態與乙個音素之間的關係,通常乙個音素含有3到5個狀態,如果乙個包含代表乙個音素的hmm...

Kaldi語言模型的建立

在kaldi中,語音識別解碼用於構成靜態搜尋網路hclg所用的語言模型為n gram模型,訓練n gram模型三個步驟 成功 在aishell工程中需要安裝的,可不裝 有提示 全部完成!耗時2天,實在沒解決 沒找到command 這個錯誤,最後在乙個大佬手把手幫助下完成,很感謝他!接下來進行中文分詞...