|
From: Hao T. <lar...@gm...> - 2013-10-24 15:22:29
|
Thanks for the clarification. I am sorry it's getting a little bit off topic. I just want to confirm it is safe to assume that the times before aligning are not too off in the context of rescoring a dense lattice. I've looked at the MMI and MPE script. latbin/lattice-boost-ali.cc boosts the not time-aligned denominator with the time-aligned numerator, so I guess the answer to the above question is yes? Hao On Wed, Oct 23, 2013 at 8:13 PM, Daniel Povey <dp...@gm...> wrote: > We implement something slightly different called MFPE which does not > require the start/end information. Anyway most recipes use BMMI which > also does not require it. > Dan > > > On Wed, Oct 23, 2013 at 8:58 PM, Hao Tang <lar...@gm...> wrote: >> I am confused. Maybe I misunderstood something in the following paper. >> >> https://wiki.inf.ed.ac.uk/twiki/pub/CSTR/ListenSemester1_2007_8/povey_mpe.pdf >> >> Won't you need to know the start and end of frame indices for each arc >> in the lattice in order to run forward-backward on each phone arc? >> >> Hao >> >> On Wed, Oct 23, 2013 at 7:32 PM, Daniel Povey <dp...@gm...> wrote: >>> BTW, the time information does not matter at all for MMI training. >>> >>> Dan >>> >>> >>> On Wed, Oct 23, 2013 at 8:30 PM, Daniel Povey <dp...@gm...> wrote: >>>> I just updated that paragraph to the below. >>>> >>>> If you want the time information of the lattices explicitly (rather than having >>>> to count transition-ids), there is a function LatticeStateTimes (for Lattice), >>>> and CompactLatticeStateTimes (for CompactLattice), which will give you the time >>>> where each state is located (a number from 0 to the number of frames in the >>>> file). Be careful that in general, the words are not synchronized with to the >>>> transition-ids, meaning that the transition-ids on an arc won't necessarily all >>>> belong to the word whose label is on that arc. This means that the times you >>>> get from the lattice will (as far as the word labels are concerned) be inexact. >>>> The same is also true of the weights; these are also not synchronized with >>>> either the words or the transition-ids on a particular arc. If you want exact >>>> times (e.g. for conversion to HTK lattices, or for sclite scoring), then you >>>> should run the program lattice-align-words. This program only works if you >>>> built your system with word-position-dependent phones, and it requires certain >>>> command-line options to tell it which phones are in which position in the word. >>>> See egs/wsj/s3/run.sh for an example (search for align). There is an >>>> alternative program, lattice-align-words-lexicon, that you can use if your >>>> system does not have word-position-dependent phones. >>>> >>>> Dan >>>> >>>> >>>> >>>>> >>>>> I'm trying to understand the last paragraph in the lattice page. >>>>> >>>>> http://kaldi.sourceforge.net/lattices.html >>>>> >>>>> What does it mean that the labels are pushed relative to the >>>>> transition-ids and why does Kaldi choose to do this? >>>>> >>>>> In addition, what is latbin/lattice-align-words.cc doing exactly? >>>>> After aligning, I see plenty of silence phones appear in the lattice, >>>>> and the weights seem to be pushed. I assume the weights after aligning >>>>> are not meaningful for individual edges anymore and are only >>>>> meaningful for the whole path? >>>>> >>>>> Thanks, >>>>> Hao >>>>> >>>>> ------------------------------------------------------------------------------ >>>>> October Webinars: Code for Performance >>>>> Free Intel webinars can help you accelerate application performance. >>>>> Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from >>>>> the latest Intel processors and coprocessors. See abstracts and register > >>>>> http://pubads.g.doubleclick.net/gampad/clk?id=60135991&iu=/4140/ostg.clktrk >>>>> _______________________________________________ >>>>> Kaldi-users mailing list >>>>> Kal...@li... >>>>> https://lists.sourceforge.net/lists/listinfo/kaldi-users |