You can subscribe to this list here.
| 2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
(2) |
Sep
(1) |
Oct
(1) |
Nov
|
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2012 |
Jan
|
Feb
|
Mar
(8) |
Apr
(4) |
May
(2) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2013 |
Jan
|
Feb
(2) |
Mar
(2) |
Apr
(7) |
May
(31) |
Jun
(40) |
Jul
(65) |
Aug
(37) |
Sep
(12) |
Oct
(57) |
Nov
(15) |
Dec
(35) |
| 2014 |
Jan
(3) |
Feb
(30) |
Mar
(57) |
Apr
(26) |
May
(49) |
Jun
(26) |
Jul
(63) |
Aug
(33) |
Sep
(20) |
Oct
(153) |
Nov
(62) |
Dec
(20) |
| 2015 |
Jan
(6) |
Feb
(21) |
Mar
(42) |
Apr
(33) |
May
(76) |
Jun
(102) |
Jul
(39) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Daniel P. <dp...@gm...> - 2013-11-09 14:51:44
|
Forwarding this thread to kaldi-users for archiving.
Dan
---------- Forwarded message ----------
From: Marco Siniscalchi <sin...@gm...>
Date: Fri, Nov 8, 2013 at 6:43 PM
Subject: Re: KALDI on Mac OS 10.9
To: Arnab Ghoshal <ar...@gm...>
Cc: Daniel Povey <dp...@gm...>
Dear Daniel and Arnab,
Thank you very much for your prompt reply.
I have followed Arnab's tip, and I have installed Kaldi on Mac OS X
10.0 using gcc4.4. It seems that the installation was successful but
with several warnings.
Thanks.
Ciao,
Marco
p.s.
You definitely do not need the following info, but just for the sake
of sharing what I have done:
The makefile/darwin_10_9 file contains the following lines:
ifndef FSTROOT
$(error FSTROOT not defined.)
endif
CXXFLAGS = -msse -msse2 -stdlib=libstdc++ -Wall -I.. \
-fPIC \
-DKALDI_DOUBLEPRECISION=0 -DHAVE_POSIX_MEMALIGN \
-Wno-sign-compare -Winit-self \
-DHAVE_EXECINFO_H=1 -DHAVE_CXXABI_H \
-DHAVE_CLAPACK \
-I$(FSTROOT)/include \
$(EXTRA_CXXFLAGS) \
-g # -O0 -DKALDI_PARANOID
LDFLAGS = -g
LDLIBS = $(EXTRA_LDLIBS) $(FSTROOT)/lib/libfst.a -ldl -lm -lpthread
-framework Accelerate
CXX = g++
CC = g++-mp-4.4
RANLIB = ranlib
AR = ar
On Fri, Nov 8, 2013 at 5:19 PM, Arnab Ghoshal <ar...@gm...> wrote:
>
> There has been a major change in the compilers in 10.9. It is all LLVM
> compiler (clang) now, even though the executable is called gcc. Some
> of the changes are due to strict C++11 standard compliance and will
> eventually be standard in other compilers (e.g. anything still
> including tr1 headers will not compile). I still haven't managed to
> compile most of the things on 10.9 and trying to figure out what all
> is needed. Maybe a stop-gap solution is to install gcc4.4 using
> macports and use that. If you try that please let us know what
> happens.
> -arnab
>
> On Fri, Nov 8, 2013 at 11:09 AM, Daniel Povey <dp...@gm...> wrote:
> > Arnab may be able to help with this..
> > Dan
> >
> >
> > On Fri, Nov 8, 2013 at 6:20 AM, Marco Siniscalchi
> > <sin...@gm...> wrote:
> >> Dear Daniel, hi.
> >>
> >> I am trying to install KALDI on a Mac OS X 10.9, but I unfortunately run
> >> into the following error message:
> >>
> >> Undefined symbols for architecture x86_64:
> >> "std::string::find_last_of(char, unsigned long) const", referenced from:
> >> kaldi::OffsetFileInputImpl::SplitFilename(std::string const&,
> >> std::string*, unsigned long*) in kaldi-util.a(kaldi-io.o)
> >>
> >> when the following command is executed
> >>
> >> kaldi-truck/src/> gcc -g -rdynamic align-equal.o ../lm/kaldi-lm.a
> >> ../decoder/kaldi-decoder.a ../lat/kaldi-lat.a ../hmm/kaldi-hmm.a
> >> ../transform/kaldi-transform.a ../gmm/kaldi-gmm.a ../tree/kaldi-tree.a
> >> ../matrix/kaldi-matrix.a ../util/kaldi-util.a ../base/kaldi-base.a
> >> ../thread/kaldi-thread.a
> >> /Users/marco/KALDI/kaldi-trunk/tools/openfst/lib/libfst.a -ldl -lm -lpthread
> >> -framework Accelerate -o align-equal
> >>
> >>
> >> Any suggestion to fix it? BTW: i did not have any problem when installing
> >> KALDI on a Mac OS X 10.6.8
> >>
> >> Thank you in advance for your time.
> >>
> >> Ciao,
> >> marco
> >>
> >> FYI:
> >>
> >> 1) Darwin Kernel Version 13.0.2: Sun Sep 29 19:38:57 PDT 2013;
> >> root:xnu-2422.75.4~1/RELEASE_X86_64 x86_64
> >>
> >> 2) I have generated a makefike/darwin_10_9.mk which is very similar to
> >> makefike/darwin_10_8.mk, but it uses the flag -stdlib=libstdc++
> >>
> >> 3) I had to use the flag -stdlib=libstdc++ to compile openfst
|
|
From: Tony R. <to...@ca...> - 2013-11-08 15:29:02
|
Hi Dan, On 11/08/2013 03:17 PM, Daniel Povey wrote: > Thanks! > Ricky, could you please apply this patch? > BTW, Tony-- "stable" is not really recommended right now; the trunk is > sufficiently stable. I guess I knew that - but I didn't have kaldi-stable installed so I thought I would give it a go. It was impressive to see everything install so cleanly bar one out-of-date URL. I may well reinstall kaldi-trunk it was a long time ago I last did this. > Also, RE rnnlm-0.4a: can you give us some context? How does this > relate to Tomas Mikolov's tools? This is Tomas Mikolov's code with some patches and speedups - it's deliberately a safe minimal change release. Once it has been stress tested a bit better it'll be back on the main RNNLM web site (http://www.fit.vutbr.cz/~imikolov/rnnlm/). I've got more work planned for it if anyone wants to collaborate. Tony -- Dr A J Robinson, Founder, Cantab Research Ltd Phone direct: 01223 977211, office: 01223 794497 Company reg no GB 05697423, VAT reg no 925606030 St Johns Innovation Centre, Cowley Road, Cambridge, CB4 0WS |
|
From: Ho Y. C. <ric...@gm...> - 2013-11-08 15:21:46
|
Dan, I have just applied this patch in stable branch already. Thanks Tony. Ricky On Fri, Nov 8, 2013 at 11:17 PM, Daniel Povey <dp...@gm...> wrote: > Thanks! > Ricky, could you please apply this patch? > BTW, Tony-- "stable" is not really recommended right now; the trunk is > sufficiently stable. > Also, RE rnnlm-0.4a: can you give us some context? How does this > relate to Tomas Mikolov's tools? > > Dan > > > On Fri, Nov 8, 2013 at 4:02 AM, Tony Robinson <to...@ca...> > wrote: > > A clean checkout of kaldi-stable (revision 3143) fails to compile the > > tools with the error message: > > > > code6 tonyr: make irstlm > > svn -r 398 co https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunkirstlm > > svn: Repository moved permanently to > > 'https://svn.code.sf.net/p/irstlm/code/trunk'; please relocate > > make: *** [irstlm] Error 1 > > > > This is trivially fixed with the patch (-p0) below. > > > > > > Tony > > > > P.S. I have a pre-release of rnnlm-0.4a if anyone wants to help me > > stress test it. > > > > diff -Naur tools-/Makefile tools/Makefile > > --- tools-/Makefile 2013-11-08 07:26:52.918054030 +0000 > > +++ tools/Makefile 2013-11-08 07:23:07.138912446 +0000 > > @@ -89,7 +89,7 @@ > > touch $@ > > > > irstlm: > > - svn -r 398 co > https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunk irstlm > > + svn -r 398 co > https://svn.code.sf.net/p/irstlm/code/trunk irstlm > > > > > > clapack: clapack_download cblas_download > > diff -Naur tools-/install.sh tools/install.sh > > --- tools-/install.sh 2013-11-08 07:26:52.917054038 +0000 > > +++ tools/install.sh 2013-11-08 07:21:19.264799569 +0000 > > @@ -94,7 +94,7 @@ > > # left till later, if you are in a hurry. > > echo "****(4) install IRSTLM (optional; only needed if you want to > build LMs and don't already have a setup)" > > > > - svn -r 398 co https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunkirstlm || exit 1 > > + svn -r 398 co https://svn.code.sf.net/p/irstlm/code/trunk irstlm || > exit 1 > > > > if [ ! -e irstlm ]; then > > echo "***download of irstlm failed." > > > > -- > > Dr A J Robinson, Founder, Cantab Research Ltd > > Phone direct: 01223 977211, office: 01223 794497 > > Company reg no GB 05697423, VAT reg no 925606030 > > St Johns Innovation Centre, Cowley Road, Cambridge, CB4 0WS > > > > > ------------------------------------------------------------------------------ > > November Webinars for C, C++, Fortran Developers > > Accelerate application performance with scalable programming models. > Explore > > techniques for threading, error checking, porting, and tuning. Get the > most > > from the latest Intel processors and coprocessors. See abstracts and > register > > > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk > > _______________________________________________ > > Kaldi-users mailing list > > Kal...@li... > > https://lists.sourceforge.net/lists/listinfo/kaldi-users > |
|
From: Daniel P. <dp...@gm...> - 2013-11-08 15:17:37
|
Thanks! Ricky, could you please apply this patch? BTW, Tony-- "stable" is not really recommended right now; the trunk is sufficiently stable. Also, RE rnnlm-0.4a: can you give us some context? How does this relate to Tomas Mikolov's tools? Dan On Fri, Nov 8, 2013 at 4:02 AM, Tony Robinson <to...@ca...> wrote: > A clean checkout of kaldi-stable (revision 3143) fails to compile the > tools with the error message: > > code6 tonyr: make irstlm > svn -r 398 co https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunk irstlm > svn: Repository moved permanently to > 'https://svn.code.sf.net/p/irstlm/code/trunk'; please relocate > make: *** [irstlm] Error 1 > > This is trivially fixed with the patch (-p0) below. > > > Tony > > P.S. I have a pre-release of rnnlm-0.4a if anyone wants to help me > stress test it. > > diff -Naur tools-/Makefile tools/Makefile > --- tools-/Makefile 2013-11-08 07:26:52.918054030 +0000 > +++ tools/Makefile 2013-11-08 07:23:07.138912446 +0000 > @@ -89,7 +89,7 @@ > touch $@ > > irstlm: > - svn -r 398 co https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunk irstlm > + svn -r 398 co https://svn.code.sf.net/p/irstlm/code/trunk irstlm > > > clapack: clapack_download cblas_download > diff -Naur tools-/install.sh tools/install.sh > --- tools-/install.sh 2013-11-08 07:26:52.917054038 +0000 > +++ tools/install.sh 2013-11-08 07:21:19.264799569 +0000 > @@ -94,7 +94,7 @@ > # left till later, if you are in a hurry. > echo "****(4) install IRSTLM (optional; only needed if you want to build LMs and don't already have a setup)" > > - svn -r 398 co https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunk irstlm || exit 1 > + svn -r 398 co https://svn.code.sf.net/p/irstlm/code/trunk irstlm || exit 1 > > if [ ! -e irstlm ]; then > echo "***download of irstlm failed." > > -- > Dr A J Robinson, Founder, Cantab Research Ltd > Phone direct: 01223 977211, office: 01223 794497 > Company reg no GB 05697423, VAT reg no 925606030 > St Johns Innovation Centre, Cowley Road, Cambridge, CB4 0WS > > ------------------------------------------------------------------------------ > November Webinars for C, C++, Fortran Developers > Accelerate application performance with scalable programming models. Explore > techniques for threading, error checking, porting, and tuning. Get the most > from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk > _______________________________________________ > Kaldi-users mailing list > Kal...@li... > https://lists.sourceforge.net/lists/listinfo/kaldi-users |
|
From: Tony R. <to...@ca...> - 2013-11-08 09:15:36
|
A clean checkout of kaldi-stable (revision 3143) fails to compile the tools with the error message: code6 tonyr: make irstlm svn -r 398 co https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunk irstlm svn: Repository moved permanently to 'https://svn.code.sf.net/p/irstlm/code/trunk'; please relocate make: *** [irstlm] Error 1 This is trivially fixed with the patch (-p0) below. Tony P.S. I have a pre-release of rnnlm-0.4a if anyone wants to help me stress test it. diff -Naur tools-/Makefile tools/Makefile --- tools-/Makefile 2013-11-08 07:26:52.918054030 +0000 +++ tools/Makefile 2013-11-08 07:23:07.138912446 +0000 @@ -89,7 +89,7 @@ touch $@ irstlm: - svn -r 398 co https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunk irstlm + svn -r 398 co https://svn.code.sf.net/p/irstlm/code/trunk irstlm clapack: clapack_download cblas_download diff -Naur tools-/install.sh tools/install.sh --- tools-/install.sh 2013-11-08 07:26:52.917054038 +0000 +++ tools/install.sh 2013-11-08 07:21:19.264799569 +0000 @@ -94,7 +94,7 @@ # left till later, if you are in a hurry. echo "****(4) install IRSTLM (optional; only needed if you want to build LMs and don't already have a setup)" - svn -r 398 co https://irstlm.svn.sourceforge.net/svnroot/irstlm/trunk irstlm || exit 1 + svn -r 398 co https://svn.code.sf.net/p/irstlm/code/trunk irstlm || exit 1 if [ ! -e irstlm ]; then echo "***download of irstlm failed." -- Dr A J Robinson, Founder, Cantab Research Ltd Phone direct: 01223 977211, office: 01223 794497 Company reg no GB 05697423, VAT reg no 925606030 St Johns Innovation Centre, Cowley Road, Cambridge, CB4 0WS |
|
From: Paul D. <pau...@gm...> - 2013-11-06 18:00:53
|
Determinization in the log semiring On Wednesday, 6 November 2013, Lahiru Samarakoon wrote: > Hi Dan, > > I read about avoiding weight pushing in the Kaldi website but I couldn't > find which stage of the graph creation compensates for that. > > My question is How to make them pushed without pushing? and What stage of > graph creation (C++ binary) does it? > > Thanks, > Lahiru > > > On Tue, Nov 5, 2013 at 8:17 PM, Daniel Povey <dp...@gm...> wrote: > >> It's not an encoding change, it's a change in the graph creation >> algorithm so the weights are "already pushed". It has no effect on >> the graph size. The quality should be the same in general (although >> it will be better under some almost-pathological cases). It means >> that you don't have to worry about weight pushing failing. >> Dan >> >> >> On Tue, Nov 5, 2013 at 5:56 AM, Lahiru Samarakoon <lah...@gm...> >> wrote: >> > Hi All, >> > >> > Can anyone briefly explain me the encoding mechanism used in Kaldi >> instead >> > of weight pushing in the decoding graph creation? >> > >> > What is the effect of this change to the final graph size? Is it bigger >> when >> > compared with a graph which uses weight pushing? >> > >> > Thanks, >> > Lahiru >> > >> > >> > >> > >> > >> > >> ------------------------------------------------------------------------------ >> > November Webinars for C, C++, Fortran Developers >> > Accelerate application performance with scalable programming models. >> Explore >> > techniques for threading, error checking, porting, and tuning. Get the >> most >> > from the latest Intel processors and coprocessors. See abstracts and >> > register >> > >> http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk >> > _______________________________________________ >> > Kaldi-users mailing list >> > Kal...@li... >> > https://lists.sourceforge.net/lists/listinfo/kaldi-users >> > >> > > |
|
From: Daniel P. <dp...@gm...> - 2013-11-06 17:58:57
|
That's right-- also, there was a change to the epsilon-removal algorithm and I think possibly even other algorithms, so they keep an already-stochastic FST stochastic. Dan On Wed, Nov 6, 2013 at 12:55 PM, Paul Dixon <pau...@gm...> wrote: > Determinization in the log semiring > > > On Wednesday, 6 November 2013, Lahiru Samarakoon wrote: >> >> Hi Dan, >> >> I read about avoiding weight pushing in the Kaldi website but I couldn't >> find which stage of the graph creation compensates for that. >> >> My question is How to make them pushed without pushing? and What stage of >> graph creation (C++ binary) does it? >> >> Thanks, >> Lahiru >> >> >> On Tue, Nov 5, 2013 at 8:17 PM, Daniel Povey <dp...@gm...> wrote: >>> >>> It's not an encoding change, it's a change in the graph creation >>> algorithm so the weights are "already pushed". It has no effect on >>> the graph size. The quality should be the same in general (although >>> it will be better under some almost-pathological cases). It means >>> that you don't have to worry about weight pushing failing. >>> Dan >>> >>> >>> On Tue, Nov 5, 2013 at 5:56 AM, Lahiru Samarakoon <lah...@gm...> >>> wrote: >>> > Hi All, >>> > >>> > Can anyone briefly explain me the encoding mechanism used in Kaldi >>> > instead >>> > of weight pushing in the decoding graph creation? >>> > >>> > What is the effect of this change to the final graph size? Is it bigger >>> > when >>> > compared with a graph which uses weight pushing? >>> > >>> > Thanks, >>> > Lahiru >>> > >>> > >>> > >>> > >>> > >>> > >>> > ------------------------------------------------------------------------------ >>> > November Webinars for C, C++, Fortran Developers >>> > Accelerate application performance with scalable programming models. >>> > Explore >>> > techniques for threading, error checking, porting, and tuning. Get the >>> > most >>> > from the latest Intel processors and coprocessors. See abstracts and >>> > register >>> > >>> > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk >>> > _______________________________________________ >>> > Kaldi-users mailing list >>> > Kal...@li... >>> > https://lists.sourceforge.net/lists/listinfo/kaldi-users >>> > >> >> > |
|
From: Nagendra K. G. <nag...@go...> - 2013-11-06 13:52:42
|
Essentially graph building process makes sure that the resulting graph is "stochastic" and scripts print stochasticity so that you can monitor it. From: Lahiru Samarakoon [mailto:lah...@gm...] Sent: Wednesday, November 06, 2013 3:52 AM To: dp...@gm... Cc: kal...@li... Subject: Re: [Kaldi-users] Weight Pushing Hi Dan, I read about avoiding weight pushing in the Kaldi website but I couldn't find which stage of the graph creation compensates for that. My question is How to make them pushed without pushing? and What stage of graph creation (C++ binary) does it? Thanks, Lahiru On Tue, Nov 5, 2013 at 8:17 PM, Daniel Povey <dp...@gm...> wrote: It's not an encoding change, it's a change in the graph creation algorithm so the weights are "already pushed". It has no effect on the graph size. The quality should be the same in general (although it will be better under some almost-pathological cases). It means that you don't have to worry about weight pushing failing. Dan On Tue, Nov 5, 2013 at 5:56 AM, Lahiru Samarakoon <lah...@gm...> wrote: > Hi All, > > Can anyone briefly explain me the encoding mechanism used in Kaldi instead > of weight pushing in the decoding graph creation? > > What is the effect of this change to the final graph size? Is it bigger when > compared with a graph which uses weight pushing? > > Thanks, > Lahiru > > > > > > ---------------------------------------------------------------------------- -- > November Webinars for C, C++, Fortran Developers > Accelerate application performance with scalable programming models. Explore > techniques for threading, error checking, porting, and tuning. Get the most > from the latest Intel processors and coprocessors. See abstracts and > register > http://pubads.g.doubleclick.net/gampad/clk?id=60136231 <http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk > &iu=/4140/ostg.clktrk > _______________________________________________ > Kaldi-users mailing list > Kal...@li... > https://lists.sourceforge.net/lists/listinfo/kaldi-users > |
|
From: Lahiru S. <lah...@gm...> - 2013-11-06 08:51:45
|
Hi Dan, I read about avoiding weight pushing in the Kaldi website but I couldn't find which stage of the graph creation compensates for that. My question is How to make them pushed without pushing? and What stage of graph creation (C++ binary) does it? Thanks, Lahiru On Tue, Nov 5, 2013 at 8:17 PM, Daniel Povey <dp...@gm...> wrote: > It's not an encoding change, it's a change in the graph creation > algorithm so the weights are "already pushed". It has no effect on > the graph size. The quality should be the same in general (although > it will be better under some almost-pathological cases). It means > that you don't have to worry about weight pushing failing. > Dan > > > On Tue, Nov 5, 2013 at 5:56 AM, Lahiru Samarakoon <lah...@gm...> > wrote: > > Hi All, > > > > Can anyone briefly explain me the encoding mechanism used in Kaldi > instead > > of weight pushing in the decoding graph creation? > > > > What is the effect of this change to the final graph size? Is it bigger > when > > compared with a graph which uses weight pushing? > > > > Thanks, > > Lahiru > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > November Webinars for C, C++, Fortran Developers > > Accelerate application performance with scalable programming models. > Explore > > techniques for threading, error checking, porting, and tuning. Get the > most > > from the latest Intel processors and coprocessors. See abstracts and > > register > > > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk > > _______________________________________________ > > Kaldi-users mailing list > > Kal...@li... > > https://lists.sourceforge.net/lists/listinfo/kaldi-users > > > |
|
From: Daniel P. <dp...@gm...> - 2013-11-05 12:17:27
|
It's not an encoding change, it's a change in the graph creation algorithm so the weights are "already pushed". It has no effect on the graph size. The quality should be the same in general (although it will be better under some almost-pathological cases). It means that you don't have to worry about weight pushing failing. Dan On Tue, Nov 5, 2013 at 5:56 AM, Lahiru Samarakoon <lah...@gm...> wrote: > Hi All, > > Can anyone briefly explain me the encoding mechanism used in Kaldi instead > of weight pushing in the decoding graph creation? > > What is the effect of this change to the final graph size? Is it bigger when > compared with a graph which uses weight pushing? > > Thanks, > Lahiru > > > > > > ------------------------------------------------------------------------------ > November Webinars for C, C++, Fortran Developers > Accelerate application performance with scalable programming models. Explore > techniques for threading, error checking, porting, and tuning. Get the most > from the latest Intel processors and coprocessors. See abstracts and > register > http://pubads.g.doubleclick.net/gampad/clk?id=60136231&iu=/4140/ostg.clktrk > _______________________________________________ > Kaldi-users mailing list > Kal...@li... > https://lists.sourceforge.net/lists/listinfo/kaldi-users > |
|
From: Lahiru S. <lah...@gm...> - 2013-11-05 10:56:16
|
Hi All, Can anyone briefly explain me the encoding mechanism used in Kaldi instead of weight pushing in the decoding graph creation? What is the effect of this change to the final graph size? Is it bigger when compared with a graph which uses weight pushing? Thanks, Lahiru |
|
From: Josef N. <jos...@gm...> - 2013-10-30 08:34:56
|
>> What might be alternatives if one want to further reduce the size of HCLG.fst? It is also possible to simulate a kind of 'poor mans' dynamic composition. You can build the the component FSTs: H, Cdet(L), G, use openfst (1.3.2+) to perform the operations needed to prepare CL and G for lookahead composition. Then you modify one of the decoder interfaces - gmm-decode-faster or whatever to accept the three arguments, build a ComposeFst from that and feed it to the decoder core. The cascade build chains in kaldi are not really designed to support this, but you can make it work with a bit of elbow grease. Accuracy plateau should be the same; it will definitely be slower, and operate at different beam points to your vanilla builds, but it may be an interesting path if you foresee yourself hitting a wall. |
|
From: Hao T. <lar...@gm...> - 2013-10-24 18:24:42
|
Everything is clear now. Thank you so much. Hao On Thu, Oct 24, 2013 at 11:52 AM, Daniel Povey <dp...@gm...> wrote: > They can be arbitrarily off in principle, but it just won't matter for > any purpose that we use the lattice. > The lattice-boost-ali.cc looks at the frame-level phone identities (I > think), so all that matters is whether those frame-level things are > aligned between the num and den lats, which they are--it's just that > they are not aligned with the words, which that program anyway > ignores. > Dan > > > On Thu, Oct 24, 2013 at 11:22 AM, Hao Tang <lar...@gm...> wrote: >> 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 |
|
From: Daniel P. <dp...@gm...> - 2013-10-24 16:52:38
|
They can be arbitrarily off in principle, but it just won't matter for any purpose that we use the lattice. The lattice-boost-ali.cc looks at the frame-level phone identities (I think), so all that matters is whether those frame-level things are aligned between the num and den lats, which they are--it's just that they are not aligned with the words, which that program anyway ignores. Dan On Thu, Oct 24, 2013 at 11:22 AM, Hao Tang <lar...@gm...> wrote: > 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 |
|
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 |
|
From: Daniel P. <dp...@gm...> - 2013-10-24 01:13:47
|
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 |
|
From: Hao T. <lar...@gm...> - 2013-10-24 00:58:44
|
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 |
|
From: Daniel P. <dp...@gm...> - 2013-10-24 00:32:12
|
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 |
|
From: Daniel P. <dp...@gm...> - 2013-10-24 00:30:33
|
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 |
|
From: Hao T. <lar...@gm...> - 2013-10-24 00:27:04
|
Thanks for the fast reply. > Theoretically, I think label pushing is concerned with lattice > > determinization operation. > Deteminized lattice means less redundancy with regarding to transition > number in lattice, > and less redundancy means more sharing, but more sharing must keep > the one-input-to-one-ouput rule, thus we are doing this by label > pushing. > > If lattice has no word output, there should be no label pushing concerned > with derterminization So label pushing sounds like a separate step before or after determinization. Can you briefly describe the algorithm or point me to a paper about the details? > It helps us to map phone sequence to corresponding word correctly. > With optimized lattice (determinization ), we lose word to its phone > sequence mapping > information. Can you briefly describe this algorithm as well? Do these algorithms maintain any guarantee or are they just heuristics? The reason I want to understand the details is that I want to know by how much can the time information be off. I am also reading the MMI training script, and, correct me if I am wrong, the lattice there are not time-aligned. I guess you must assume that the time information can not be off by too much when doing MMI training? Hao > >> >> 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? > > > I agree with your understanding :-) > > Haihua > >> >> >> 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 > > |
|
From: Haihua Xu <hh...@gm...> - 2013-10-23 23:47:59
|
This is also hard for me :-) On Wed, Oct 23, 2013 at 3:54 PM, Hao Tang <lar...@gm...> wrote: > Hi, > > 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? > > Theoretically, I think label pushing is concerned with lattice > determinization operation. Deteminized lattice means less redundancy with regarding to transition number in lattice, and less redundancy means more sharing, but more sharing must keep the one-input-to-one-ouput rule, thus we are doing this by label pushing. If lattice has no word output, there should be no label pushing concerned with derterminization In addition, what is latbin/lattice-align-words.cc doing exactly? > It helps us to map phone sequence to corresponding word correctly. With optimized lattice (determinization ), we lose word to its phone sequence mapping information. > 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? > I agree with your understanding :-) Haihua > > 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 > |
|
From: Hao T. <lar...@gm...> - 2013-10-23 22:54:54
|
Hi, 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 |
|
From: Jan T. <af...@ce...> - 2013-10-23 14:45:40
|
Yes, these are usual warnings :) y. On Wed, Oct 23, 2013 at 5:02 AM, E <oth...@ao...> wrote: > > Thanks all for your help. > > I was able to get HCLG.fst (937 megabytes) for pruned Gigaword LM (64k > vocab). I installed Kaldi on a 64 bit - 8 core - 32 Gb RAM machine for this > purpose (I wan't the only user BTW). > > Following warnings appeared on terminal (I hope these are *usual* warnings) > [info]: LG not stochastic. > [info]: CLG not stochastic. > HCLGa is not stochastic > > ------------------------------------------------------------------------------ > 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 > |
|
From: E <oth...@ao...> - 2013-10-23 09:02:55
|
Thanks all for your help. I was able to get HCLG.fst (937 megabytes) for pruned Gigaword LM (64k vocab). I installed Kaldi on a 64 bit - 8 core - 32 Gb RAM machine for this purpose (I wan't the only user BTW). Following warnings appeared on terminal (I hope these are *usual* warnings) [info]: LG not stochastic. [info]: CLG not stochastic. HCLGa is not stochastic |
|
From: E <oth...@ao...> - 2013-10-22 07:25:59
|
For those interested, I found a past discussion on this here http://sourceforge.net/mailarchive/message.php?msg_id=29165776 _thread closed_ |