# estimate updsum begin Update statistic count initialfinalsilencebreath for

- Slides: 3

estimate upd_sum begin Update statistic count • 判斷 initial/final/silence/breath • for one specified mode, state , one frame x • for all mixtures • update sumpi • for all dim • update sumi , sumii • update count of model and state 1 m m>I/F_MODEL 0 1 s s>I/F_STATE 0 initial/final model parameters estimate end • for all mixtures • compute cl (sumpi / cnt) • if cl>threshold/ i/f_mix_num, for all dim • compute u 1 (sum i/f / sump i/f) v 1 (sum ii/ff / sump i/f –u 1*u 1) product (*=v 1 ) • compute dl ( sqrt (produt) ) • else, d 1=0 Remove null mixture • for all mixtures • if dl=0, remove the mixture, mix_num - • re-compute c 1 Find new mixture number • new_mix = cnt/50 While new_mix> i/f_mix_num? no yes Add mixture • find max c (largest cluster) • split max c • i/f_mix_num ++ While new_mix< i/f_mix_num? yes Remove mixture • find min c • update c_sum • remove the mixture , i/f_mix_num -- • for all initial/final mixtures • normalize c 1 end no

estimatesil begin silence model parameters estimate • for all mixtures • compute c 1 (sumpi / scnt) • if cl>threshold/ s_mix , for all dim • compute u 1 (sums/sumps) 1 While new_mix< bre_mix_num and new_mix>0? yes v 1 (sumss/sumps-u 1*u 1) product (*=v 1 ) • compute d 1 ( sqrt (produt) ) • else, d 1=0 Remove mixture • find min c • update c_sum • remove the mixture , bre_mix_num -- Remove null mixture • for all mixtures • if d 1=0, remove the mixture, mix_num - • re-compute c 1 While S_MIX> s_mix_? • for all mixtures • normalize c 1 no end yes Add mixture • find max c (largest cluster) • split max c • s_mix ++ 1 s s>B_STATE 0 Estimate breath statistics • for all mixtures • compute cl (sumpb / cnt) • for all dim (if cl>threshold/ bre_mix_num) • compute ul (sumb / sumpb) vl (sumbb / sumpb –ul*ul) product (*=vl ) • compute dl ( sqrt (produt) ) • else, dl=0 Remove null mixture • for all mixtures • if dl=0, remove the mixture, mix_num - • normalize cl Find new mixture number • new_mix = cnt/50 While new_mix> bre_mix_num? yes 1 Add mixture • find max c(largest cluster) • split max c • bre_mix_num ++ no 2

Update_duration begin Update duration count • for 411 syllables • for male and female • for initial and final states • update state frame count and sum temp Degenerate model • for male and female • for initial and final model • for all states • find average and variance state duration • for initial and final model • for all states • if not enough model number, combine male and female model , and re-compute the average and variance state duration Find state duration • for male and female • for 411 model • for all states • find average and variance state duration Assign parameters for gamma function • for male and female • for all models • for all states • find alpha , beta , duration (t 1, t 2, t 3) end