CSTR-Edinburgh / merlin

This is now the official location of the Merlin project.
http://www.cstr.ed.ac.uk/projects/merlin/
Apache License 2.0
1.31k stars 442 forks source link

missing files in label state align for duration and acoustics #250

Open abhigarg opened 6 years ago

abhigarg commented 6 years ago

I was training using 1800 mono channel 16khz wave files and corresponding text files and got a file count error at step 05 of build your own voice. I observed that its because only 1791 files are generated for label state align folder in duration and acoustics. Any ideas why these files are not generated for the 9 files? I have also checked the wave and text files for these 9 files and they seem to be fine.

saurabhvyas commented 6 years ago

I have the same problem, I used artcic dataset , which had 60 files originally, but in '/home/saurabh/merlin/merlin/egs/build_your_own_voice/s1/experiments/my_voice/duration_model/data/file_id_list.scp' I only see 57 files, what about other 3 files ?

guntariosc commented 6 years ago

It seems the HVite fails to generate the alignment of the missing labels. If you check mono_align.mlf, alignments for the missing files are not available there.

From http://www.ee.columbia.edu/ln/LabROSA/doc/HTKBook21/node141.html, it is said that "The inability to match the data against the recognition network is usually caused by poorly trained acoustic models and/or very tight pruning beam-widths. In such cases, partial recognition results can still be obtained by setting the HREC configuration variable FORCEOUT true."

So either you experiment with pruning beam width (parameter -t in HVite) or change variable forceOutput to TRUE in htk/HTKLib/HRec.c before compiling HTK.

I've tried changing forceOutput to TRUE. HVite can generate alignment result after changing forceOutput to TRUE, but the alignments are bad i.e only half of the sentence is aligned.

guntariosc commented 6 years ago

http://www.voxforge.org/home/dev/acousticmodels/linux/create/htkjulius/tutorial/monophones/step-8/comments/realignment-should-be-run-without-pruning

It turns out that leaving out pruning option (-t) on HVite command in forced_alignment.py will generate alignment just fine.

simonkingedinburgh commented 6 years ago

guntariosc wrote:

It turns out that leaving out pruning option (-t) on HVite command in forced_alignment.py will generate alignment just fine.

although this indicates that there may still be a problem with your data

in general, some light pruning is a GOOD idea when doing forced alignment, because it can detect some mismatches between labels and speech

Simon

-- The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336.