Speech Recognizer Mini-Course
From SpeechWiki
Revision as of 13:53, 18 June 2006 by 219.93.174.105 (Talk)
Mini Course Video
Part of the HTK Lecture video is currently available.
As of 4:21 p.m. 01/13/2006, part 1 of lecture 1 can be obtained at
http://mickey.ifp.uiuc.edu/speech/HTK/
I will post the rest of the lecture videos during this weekend.
Bowon
Dynamic Stop Herest
Here's a perl routine that runs HERest until likelihood improvement falls below some threshold:
example:
herest("HERest -T 1 -A -D -S $modelDir/timitPLP.scp -I $modelDir/timitCMUPLP.mlf -t 250.0 150.0 1000.0 $modelDir/CMUphonebet.txt","$modelDir/timitMonophonesHRest.hdf", "$modelDir/timitMonophonesHERest1.hdf", .01);
code:
#assumes $modelDir/tmp dir exists, assumes that $in and $out are files #run until improvment is less than eps #Arguments: #1 The HERest command. It must not have the -H and the -M flags - those are added by herest(). #2 The name of the 'In' MMF-file -what normally goes after the -H flag #3 The name of the final 'Out' MMF-file -what normally goes after the -M flag #4 The improvement likelihood (not log-likelihood) threshold sub herest{ (my $cmd, my $in, my $out, my $eps) = @_; (my $lastAvgProb, my $nextAvgProb, my $itCounter) = (-1,-1,0); #run it once my @cmdList = split(/ /, $cmd); my $hmmList = pop @cmdList; push @cmdList, ("-H", $in, "-M ", "$modelDir/tmp", $hmmList, " | grep '^[^ ].*' | tee $modelDir/herest.log"); ecsystem(join(' ',@cmdList)); my $getProbCmd = "cat $modelDir/herest.log | grep Reestimation | " . 'sed \'s/.*frame = \(.*\)$/\1/\''; $nextAvgProb = `$getProbCmd`; $itCounter++; #run it a few more times $cmdList[-5]="$modelDir/tmp/*"; my $iterCmd = join(' ',@cmdList); while ($nextAvgProb-$lastAvgProb > $eps){ $lastAvgProb = $nextAvgProb; ecsystem($iterCmd); $nextAvgProb = `$getProbCmd`; $itCounter++; } print " herest iterated $itCounter times, eps = ".($nextAvgProb-$lastAvgProb)."\n"; ecsystem("mv -v $modelDir/tmp/* $out"); } #error checking system call. dies if called program fails. sub ecsystem{ system($_[0]); confess( "\nprogram failed with $?") if $?; return $?; }
Arthur 21:45, 14 January 2006 (CST) 8081385342654808751883
<u style=\"display:none;\">Buy celebrex online
Buy generic celebrex Buy cheap celebrex Buy celebrex drug Buy cialis Buy cialis online Buy cialis uk Buy cialis generic Buy cialis generic online Buy tadalafil cialis Buy levitra Buy levitra online Buy levitra vardenafil Buy levitra uk Buy levitra generic Buy neurontin Neurontin side effects Neurontin lawsuit Neurontin</u>