2013-02-26 38 views
0

問候研究員,如何直接讀取HTK中的後部probs?

我拼命試圖找到哪些文件,我將在HTK 3.4修改,這樣我就可以直接讀取音素/單音後probs的序列話語,並直接將其轉發給解碼器,給定了聲學和語言模型。

更詳細的,我正在關注包括第9步的HTK教程,我只是想在單聲道上工作。我的(自己的,特定的)特徵向量是具有每個音素的3個狀態的概率的向量序列,這類似於

(p(aa_begin),p(aa_mid),p(aa_end),...,p (z_begin),p(z_mid),p(z_end))

對於話語中的每個幀,其中條目如上所述,已經是後驗概率。

任何想法我需要修改哪些文件來讀取我(特定)文件(自己的二進制格式)的文件以及如何直接將它們轉發給解碼器?最好讓我可以使用HVite & HEResult獲得結果?

非常感謝幫助, G.

+0

修改HTK以使用後代而不是GMM可能性將會變得複雜。您可以在HVite.c的ProcessFile函數中或HRec.c中的ProcessObservation函數中執行此操作。這聽起來像你想要的與Hybrid-HMM系統非常相似;使用谷歌搜索可能會有所幫助。另一種選擇是使用後人作爲特徵向量 - 這是在串聯繫統中完成的。這可能不是你想要的,但可能會更簡單。 – user1955591 2013-02-28 12:59:53

+0

問候並感謝您的回覆。 posterios的向量我基本上是當前分類框架的特徵向量,所以你的觀察比較精確。在解碼時,HVite似乎是一個很好的選擇。我最害怕的是,我也必須修改FST ... – gilgamash 2013-03-01 08:54:46

+0

嗨,你會從哪裏開始將後輩視爲一個功能?謝謝,G. – gilgamash 2013-03-01 09:59:31

回答

0

我覺得HVite選項-f將呈現結果你希望的方式。 這裏是我發送命令:

./HVite -T 1 -f -b SIL -C配置-a -H模型/ hmm7 /宏-H模型/ hmm7/hmmdefs -i word1.mlf - m -t 250.0 -y lab -I word.mlf -S train.scp -L label/dict.list phone1.list

這裏是文件的開頭word1.mlf(s2,s3,s4開始每個音素的中心和末尾)

"mfc/dr1_fcjf0_sa1.lab" 

0 100000 s2 -48.580540 sil -1204.165527 sil 

100000 400000 s3 -158.456665 

400000 1900000 s4 -997.128357 

1900000 2000000 s2 -75.405327 SH -530.110291 SHE 

2000000 2500000 s3 -306.394897 

2500000 2700000 s4 -148.310074 

2700000 3000000 s2 -252.779510 IY -796.414673 

3000000 3300000 s3 -214.586655 

3300000 3700000 s4 -329.048492 
+0

嗨,謝謝你的回覆。同時,我很早就完成了項目,爲HTK增加了很多新的代碼。糟糕的工作,因爲工具包寫得像1982年,但我完成了工作。無論如何,最好的問候! – gilgamash 2015-09-25 09:42:32