2013-02-26 7 views
0

인사말 동료,HTK에서 직접 posterior probs를 읽는 방법?

나는 필사적으로 내가 직접 발언에 대한 음소/monophones에 대한 후방 probs의 시퀀스를 읽고 직접 디코더로 전달 할 수 있도록 내가 HTK 3.4에서 수정해야합니다 파일을 찾을 것을 시도하고, 음향 및 언어 모델 둘 다 주어진다.

자세한 내용은 9 단계를 포함하여 HTK 튜토리얼을 따르고 있으며 단음으로 작업하고 싶습니다. 내 (자신의 고유 한) 특징 벡터는 각 음소의 3 가지 상태에 대한 확률을 갖는 벡터의 시퀀스이며,

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

여기서, 상기 엔트리는 이미 후부의 probs이다.

내 (특정) 파일 (고유 한 바이너리 형식)의 파일을 읽으려면 수정해야하는 파일과이를 디코더로 직접 전달하는 방법은 무엇입니까? HVite & HEResult를 사용하여 결과를 얻을 수 있도록 최선을 다 했습니까?

덕분에 도움을 많이 G.

+0

GMM 우도 대신에 포스트를 사용하도록 HTK를 수정하는 것은 복잡 할 것입니다. HVite.c의 ProcessFile 함수 나 HRec.c의 ProcessObservation 함수에서 수행 할 수 있습니다. 그것은 당신이 원하는 것이 하이브리드 - HMM 시스템과 매우 유사하다는 것입니다. 인터넷 검색이 도움이 될 수 있습니다. 다른 옵션은 사후 벡터를 특성 벡터로 사용하는 것입니다. 이것이 바로 Tandem 시스템에서 수행되는 것입니다. 그게 네가 원하는 것일 수는 없겠지만 훨씬 더 간단해질 것이다. – user1955591

+0

인사말과 답장을 보내 주셔서 감사합니다. posterios의 벡터는 기본적으로 현재 분류 ​​된 프레임의 특징 벡터이므로, 사용자의 ovservation은 다소 정확합니다. HVite는 해독 할 때 좋은 장소 인 것 같습니다. 내 최악의 두려움은 또한 FST를 수정해야한다는 것입니다 ... – gilgamash

+0

안녕하세요, 어디서 후반 대우를 시작 하시겠습니까? 고마워, G. – gilgamash

답변

0

나는 HVite에 -f 옵션은 결과 당신이 원하는 방법을 제시 것이라 생각합니다. 여기 는 내가 보내는 명령입니다

./HVite -T 1 -f -b SIL -C 설정 -a -H 모델/hmm7/매크로 -H 모델/hmm7/hmmdefs -i word1.mlf - 250.0 -y 실험실 -I word.mlf -S train.scp -L 라벨/dict.list의 phone1.list 여기

및 -t m는 파일 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