[FeatureSet fs] setDesc @../step2/featDesc fs setAccess @../step2/featAccess [CodebookSet cbs fs] read ../step2/codebookSet [DistribSet dss cbs] read ../step2/distribSet [PhonesSet ps] read ../step2/phonesSet [Tags tags] read ../step2/tags [Tree dst ps:phones ps tags dss] read ../step2/distribTree SenoneSet sns [DistribStream str dss dst] [TmSet tms] read ../step2/transitionModels [TopoSet tps sns tms] read ../step2/topologies [Tree tpt ps:phones ps tags tps] read ../step2/topologyTree cbs load ../step3/codebookWeights [DBase db] open ../step1/db.dat ../step1/db.idx -mode r [Dictionary dict ps:phones tags] read ../step1/convertedDict AModelSet amo tpt ROOT HMM hmm dict amo Path path LDA lda fs MSC 16 foreach ds [dss:] { lda add $ds ; lda map [dss index $ds] -class $ds } foreach utt [db] { puts $utt set uttInfo [db get $utt] makeArray arr $uttInfo fs eval $uttInfo hmm make $arr(text) -optWord SIL path bload ../step4/labels/$utt path map hmm -senoneSet sns -stream 0 lda accu path } lda update DMatrix A DMatrix K A simdiag K lda.matrixT lda.matrixW [FMatrix B] DMatrix A B bsave ldaMatrix set fp [open ldaCounts w] foreach cl [lda:] { puts $fp "{ $cl [lda:$cl.mean configure -count] }" } close $fp set newFeatureDescription { $fes readADC ADC $arg(adc) -bm shorten -hm 1024 -offset mean -v 0 $fes adc2mel MSC ADC 16ms $fes meansub MSC MSC -a 2 $fes matmul LDA MSC ldaMatrix -cut 12 } set fp [open featDesc w] ; puts $fp $newFeatureDescription ; close $fp exit