Kaldi(A5)語言模型及HCLG.fst生成

這節(jié)介紹一下如何修改生成適合自己場景的語言模型。

Ref

Online decoding in Kaldi(Nnet2) http://kaldi-asr.org/doc/online_decoding.html

修改語言模型

首先寡痰,我們?yōu)槭裁匆薷恼Z言模型抗楔?雖然已有現(xiàn)成的Fisher_English或者Librispeech的HCLG.fst,但是他們用到的是3-gram拦坠,也就是說上下文一共是3個(gè)單詞连躏,而且文本涵蓋的范圍很廣。假如我只想在特定范圍內(nèi)進(jìn)行識別呢贞滨?比如僅僅在對某個(gè)智能音箱的指令范圍內(nèi)入热?這就需要我們用自己提供的語料庫來限定其識別的范圍以提升準(zhǔn)確度拍棕,并且如果范圍較小的話還可以提升實(shí)時(shí)性。
參考“Example for using your own language model with existing online-nnet2 models”勺良,我們只需要準(zhǔn)備一個(gè)文本文件作為語料庫即可绰播。在這里文檔提到了需要使用SRILM這個(gè)工具來生成模型,所以先來安裝它尚困。

安裝SRILM

首先請參考
SRILM的安裝與使用
官方Doc
提到了還需要安裝TCL蠢箩,來到tcl download
下載之后輸入以下命令進(jìn)行安裝

wget https://prdownloads.sourceforge.net/tcl/tcl8.6.7-src.tar.gz
tar vxzf tcl8.6.7-src.tar.gz
cd tcl8.6.7/unix
./configure
make
sudo make install

然后繼續(xù)SRILM的安裝

vim Makefile
#修改為SRILM=/home/dale/SRILM
make World
PATH=$PATH:/home/dale/SRILM/bin/i686-m64:/home2/zhangzhan/SRILM/bin
MANPATH=$MANPATH:/home/dale/SRILM/man
make test

OpenSLR

首先看看提供給我們下載的語言模型(如果想要更好的識別率可以從這些語言模型中下載,然后根據(jù)文檔中提供的命令重新訓(xùn)練出一個(gè)HCLG.fst
http://www.openslr.org/11/


可以看到3-gram和4-gram差的還是很大的…在這里我的項(xiàng)目對實(shí)時(shí)性要求很高事甜,所以我準(zhǔn)備用2-gram谬泌。

生成ARPA語言模型

準(zhǔn)備好自己的文本為train_text.txt

PATH=$PATH:/home2/zhangzhan/SRILM/bin/i686-m64:/home2/zhangzhan/SRILM/bin
MANPATH=$MANPATH:/home2/zhangzhan/SRILM/man
#生成計(jì)數(shù)文件
ngram-count -text train_text.txt -order 2 -write xgn_count
#生成ARPA LM
ngram-count -read xgn_count -order 2 -lm xgn_lm -interpolate -kndiscount
gzip xgn_lm

好了,我們的語言模型已經(jīng)生成好了逻谦,名為xgn_lm.gz掌实,下面根據(jù)這個(gè)文件生成Kaldi所需的HCLG.fst

生成HCLG.fst

此處參考官方Doc給出的過程即可,需要注意的是下面命令中將會用到訓(xùn)練時(shí)的一些文件邦马,所以需要先跑過訓(xùn)練腳本才能修改贱鼻。

PATH=$PATH:/home2/zhangzhan/kaldi-trunk/src/lmbin/:/home2/zhangzhan/kaldi-trunk/src/fstbin:/home2/zhangzhan/kaldi-trunk/tools/openfst-1.6.5/bin/:/home2/zhangzhan/kaldi-trunk/src/bin/
dict_dir=data/local/dict                # The dict directory provided by the online-nnet2 models
lm=xgn_lm.gz                      # ARPA format LM you just built.記得在這里修改為剛才構(gòu)建的
lang=data/lang_chain                          # Old lang directory provided by the online-nnet2 models
lang_own=data/lang_own                  # New lang directory we are going to create, which contains the new language model
~/kaldi-trunk/egs/wsj/s5/utils/format_lm.sh $lang $lm $dict_dir/lexicon.txt $lang_own
graph_own_dir=graph_own
#model_dir=nnet_a_gpu_online
model_dir=tdnn_1b_sp
~/kaldi-trunk/egs/wsj/s5/utils/mkgraph.sh $lang_own $model_dir $graph_own_dir 

最后就在graph_own_dir下面生成好了經(jīng)過我們定制的HCLG.fst
至此滋将,我們可以搭建一個(gè)屬于自己的簡單語音識別系統(tǒng)了邻悬。后續(xù)將會記錄一些補(bǔ)充內(nèi)容。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末耕渴,一起剝皮案震驚了整個(gè)濱河市拘悦,隨后出現(xiàn)的幾起案子齿兔,更是在濱河造成了極大的恐慌橱脸,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件分苇,死亡現(xiàn)場離奇詭異添诉,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)医寿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進(jìn)店門栏赴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人靖秩,你說我怎么就攤上這事须眷∥瑁” “怎么了体捏?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵阻塑,是天一觀的道長仲智。 經(jīng)常有香客問我泉沾,道長三椿,這世上最難降的妖魔是什么亏娜? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任铛纬,我火速辦了婚禮,結(jié)果婚禮上棒呛,老公的妹妹穿的比我還像新娘聂示。我一直安慰自己,他們只是感情好簇秒,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布鱼喉。 她就那樣靜靜地躺著,像睡著了一般趋观。 火紅的嫁衣襯著肌膚如雪蒲凶。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天拆内,我揣著相機(jī)與錄音旋圆,去河邊找鬼。 笑死麸恍,一個(gè)胖子當(dāng)著我的面吹牛灵巧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播抹沪,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼刻肄,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了融欧?” 一聲冷哼從身側(cè)響起敏弃,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎噪馏,沒想到半個(gè)月后麦到,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡欠肾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年瓶颠,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片刺桃。...
    茶點(diǎn)故事閱讀 40,115評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡粹淋,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出瑟慈,到底是詐尸還是另有隱情桃移,我是刑警寧澤,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布葛碧,位于F島的核電站借杰,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏吹埠。R本人自食惡果不足惜第步,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一疮装、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧粘都,春花似錦廓推、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至堆生,卻和暖如春专缠,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背淑仆。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工涝婉, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人蔗怠。 一個(gè)月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓墩弯,卻偏偏與公主長得像,于是被迫代替她去往敵國和親寞射。 傳聞我的和親對象是個(gè)殘疾皇子渔工,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 很多人覺得繪畫很難引矩,很多人覺得很簡單,大部分畫不好的人都把這些歸咎于自己沒天賦侵浸,其實(shí)旺韭,在我看來,你要成為大畫家通惫,確...
    攝影師超超閱讀 925評論 2 20
  • 我記得茂翔,我騎共享單車的樣子混蔼,連自己都想笑履腋。我記得,我開車的樣子惭嚣,連自己都逗樂遵湖。我記得,無論在路上行駛什么交通...
    8e0b8093b46f閱讀 79評論 0 4
  • 鴿子和狗吠晚吞。人對于聲音是相當(dāng)敏感的延旧。世界萬物,都會發(fā)出自己的聲音槽地。水杯與水的摩擦聲迁沫,空調(diào)運(yùn)行的聲音芦瘾,摩托車啟動的噪...
    被踩著的尾巴閱讀 170評論 0 2
  • 哇,運(yùn)城的天真美,云也變化極多。 你看集畅,這朵云像一架飛船近弟,停留在天空中,好像還在等待著它的同伴們挺智。 ...
    06小石頭曾立軒閱讀 165評論 0 0
  • 《無題》—— littlesen (山木)曲曲池邊路赦颇,春來少人行二鳄。含水芙蓉葉,春去氣猶清媒怯。夕嵐分彩翠订讼,高樹藏鶯聲。...
    嵐風(fēng)的葉子閱讀 1,414評論 0 0