changeset 357:dcabd87581b5

- AWS
author tomwalters
date Wed, 11 Aug 2010 22:53:59 +0000
parents 4bf6d5bb232e
children 74c185b2b918
files trunk/SConstruct trunk/experiments/scripts/cnbh-syllables/run_training_and_testing/run_test_instance.sh trunk/experiments/scripts/cnbh-syllables/run_training_and_testing/test_features.sh trunk/experiments/scripts/master.sh
diffstat 4 files changed, 43 insertions(+), 39 deletions(-) [+]
line wrap: on
line diff
--- a/trunk/SConstruct	Wed Aug 11 17:29:51 2010 +0000
+++ b/trunk/SConstruct	Wed Aug 11 22:53:59 2010 +0000
@@ -49,11 +49,12 @@
                   'Modules/Profile/ModuleSlice.cc',
                   'Modules/Profile/ModuleScaler.cc',
                   'Modules/Output/FileOutputHTK.cc',
-                  'Modules/Output/FileOutputAIMC.cc']
+                  'Modules/Output/FileOutputAIMC.cc',
+                  'Modules/Features/ModuleGaussians.cc']
 
 # List of currently incative source files which we may want to add back in
 sources_disabled = ['Modules/SNR/ModuleNoise.cc',
-                    'Modules/Features/ModuleGaussians.cc']
+                    ]
 
 # File which contains main()
 sources = common_sources + ['Main/AIMCopy_SSI_Features_v3.cc']
--- a/trunk/experiments/scripts/cnbh-syllables/run_training_and_testing/run_test_instance.sh	Wed Aug 11 17:29:51 2010 +0000
+++ b/trunk/experiments/scripts/cnbh-syllables/run_training_and_testing/run_test_instance.sh	Wed Aug 11 22:53:59 2010 +0000
@@ -7,7 +7,7 @@
 # input_vector_size - number or elements in the input vector (normally 39 for MFCCs, 12 for AIM)
 # feature_code - HTK feature type code for the features being used (normally MFCC_0_D_A for MFCCs and USER_E_D_A for AIM features)
 # FEATURE_SUFFIXES - List of suffixes appended to the feature filenames. For the MFCCs this is just "mfc" but for the AIM feature, there can be multiple features generated from each run of AIMCopy
-# WORK - working directory
+# WORKING_DIRECTORY - working directory
 # SYLLIST_COMPLETE
 
 # Filenames generated here
@@ -22,55 +22,57 @@
 TEST_SCRIPT=testing_script
 SYLLIST_COMPLETE=syllable_list_with_silence
 
-hmm_type=${total_hmm_states}states_${mixture_components}mixture_components
+SILENCE=sil
+
+hmm_type=${total_hmm_states}_states_${mixture_components}_mixture_components
 echo "HMM type: $hmm_type"
-mkdir -p $WORK/$hmm_type
+mkdir -p $WORKING_DIRECTORY/$hmm_type
 
 echo "Creating HMM structure..."
-./gen_hmmproto.py --input_size ${input_vector_size} --total_hmm_states ${total_hmm_states} --feature_type ${feature_code} > $WORK/$hmm_type/$HMMPROTO
+./gen_hmmproto.py --input_size ${input_vector_size} --total_hmm_states ${total_hmm_states} --feature_type ${feature_code} > $WORKING_DIRECTORY/$hmm_type/$HMMPROTO
 
 echo "Adding output mixture components..."
-./gen_hhed_script.py --num_means ${mixture_components} --total_hmm_states ${total_hmm_states} > $WORK/$hmm_type/$HHED_SCRIPT
+./gen_hhed_script.py --num_means ${mixture_components} --total_hmm_states ${total_hmm_states} > $WORKING_DIRECTORY/$hmm_type/$HHED_SCRIPT
 
 
 echo "Training HMM..."
 echo "Setting up prototype HMM..."
-mkdir -p $WORK/$hmm_type/hmm0
-HCompV -C $WORK/$HMMCONFIG -f 0.01 -m -S $WORK/$TRAIN_SCRIPT -M $WORK/$hmm_type/hmm0 $WORK/$hmm_type/$HMMPROTO
+mkdir -p $WORKING_DIRECTORY/$hmm_type/hmm0
+HCompV -C $WORKING_DIRECTORY/$HMMCONFIG -f 0.01 -m -S $WORKING_DIRECTORY/$TRAIN_SCRIPT -M $WORKING_DIRECTORY/$hmm_type/hmm0 $WORKING_DIRECTORY/$hmm_type/$HMMPROTO
 
 echo "Generating HMM definitions..."
 # Now take the prototype file from hmm0, and create the other HMM definitions
 # from it
-grep -A 9999 "<BEGINHMM>" $WORK/$hmm_type/hmm0/$HMMPROTO > $WORK/$hmm_type/hmm0/hmms
+grep -A 9999 "<BEGINHMM>" $WORKING_DIRECTORY/$hmm_type/hmm0/$HMMPROTO > $WORKING_DIRECTORY/$hmm_type/hmm0/hmms
 for syllable in $(cat $WORK/$SYLLIST_COMPLETE); do
-  echo "~h $syllable" >> $WORK/$hmm_type/$feature/hmm0/hmmdefs
-  cat $WORK/$hmm_type/$feature/hmm0/hmms >> $WORK/$hmm_type/$feature/hmm0/hmmdefs
+  echo "~h $syllable" >> $WORKING_DIRECTORY/$hmm_type/$feature/hmm0/hmmdefs
+  cat $WORKING_DIRECTORY/$hmm_type/$feature/hmm0/hmms >> $WORKING_DIRECTORY/$hmm_type/$feature/hmm0/hmmdefs
 done
  
-echo -n "~o<STREAMINFO> 1 ${input_vector_size}<VECSIZE> ${input_vector_size}<NULLD><${feature_code}><DIAGC>" > $WORK/$hmm_type/$feature/hmm0/macros
+echo -n "~o<STREAMINFO> 1 ${input_vector_size}<VECSIZE> ${input_vector_size}<NULLD><${feature_code}><DIAGC>" > $WORKING_DIRECTORY/$hmm_type/$feature/hmm0/macros
 
-cat $WORK/$hmm_type/$feature/hmm0/vFloors >> $WORK/$hmm_type/$feature/hmm0/macros
+cat $WORKING_DIRECTORY/$hmm_type/$feature/hmm0/vFloors >> $WORKING_DIRECTORY/$hmm_type/$feature/hmm0/macros
 
-${HTK_PREFIX}HHEd  -H $WORK/$hmm_type/$feature/hmm0/macros -H $WORK/$hmm_type/$feature/hmm0/hmmdefs $WORK/$hmm_type/$HHED_SCRIPT $WORK/$SYLLIST_COMPLETE
+HHEd  -H $WORKING_DIRECTORY/$hmm_type/$feature/hmm0/macros -H $WORKING_DIRECTORY/$hmm_type/$feature/hmm0/hmmdefs $WORKING_DIRECTORY/$hmm_type/$HHED_SCRIPT $WORKING_DIRECTORY/$SYLLIST_COMPLETE
 
 for iter in $TRAINING_ITERATIONS_LIST; do
   echo "Training iteration ${iter}..."
   let "nextiter=$iter+1"
-  mkdir $WORK/$hmm_type/hmm$nextiter
-  ${HTK_PREFIX}HERest -C $WORK/$HMMCONFIG -I $WORK/$TRAIN_MLF \
-    -t 250.0 150.0 1000.0 -S $WORK/$TRAIN_SCRIPT \
-    -H $WORK/$hmm_type/hmm$iter/macros -H $WORK/$hmm_type/hmm$iter/hmmdefs \
-    -M $WORK/$hmm_type/hmm$nextiter $WORK/$SYLLIST_COMPLETE
+  mkdir $WORKING_DIRECTORY/$hmm_type/hmm$nextiter
+  ${HTK_PREFIX}HERest -C $WORKING_DIRECTORY/$HMMCONFIG -I $WORKING_DIRECTORY/$TRAIN_MLF \
+    -t 250.0 150.0 1000.0 -S $WORKING_DIRECTORY/$TRAIN_SCRIPT \
+    -H $WORKING_DIRECTORY/$hmm_type/hmm$iter/macros -H $WORKING_DIRECTORY/$hmm_type/hmm$iter/hmmdefs \
+    -M $WORKING_DIRECTORY/$hmm_type/hmm$nextiter $WORKING_DIRECTORY/$SYLLIST_COMPLETE
 done
 
 for iter in $TESTING_ITERATIONS_LIST; do
   echo "Testing iteration ${iter}..."
-  ${HTK_PREFIX}HVite -H $WORK/$hmm_type/hmm$iter/macros -H $WORK/$hmm_type/hmm$iter/hmmdefs \
-    -C $WORK/$HMMCONFIG -S $WORK/$TEST_SCRIPT -i $WORK/$hmm_type/$RECOUT \
-    -w $WORK/$WDNET -p 0.0 -s 5.0 $WORK/$DICT $WORK/$SYLLIST_COMPLETE
+  ${HTK_PREFIX}HVite -H $WORKING_DIRECTORY/$hmm_type/hmm$iter/macros -H $WORKING_DIRECTORY/$hmm_type/hmm$iter/hmmdefs \
+    -C $WORKING_DIRECTORY/$HMMCONFIG -S $WORKING_DIRECTORY/$TEST_SCRIPT -i $WORKING_DIRECTORY/$hmm_type/$RECOUT \
+    -w $WORKING_DIRECTORY/$WDNET -p 0.0 -s 5.0 $WORKING_DIRECTORY/$DICT $WORKING_DIRECTORY/$SYLLIST_COMPLETE
   echo "Results from testing on iteration ${iter}..."
-  ${HTK_PREFIX}HResults -e "???" ${SILENCE} -I $WORK/$TEST_MLF $WORK/$SYLLIST_COMPLETE $WORK/$hmm_type/$RECOUT
+  ${HTK_PREFIX}HResults -e "???" ${SILENCE} -I $WORKING_DIRECTORY/$TEST_MLF $WORKING_DIRECTORY/$SYLLIST_COMPLETE $WORKING_DIRECTORY/$hmm_type/$RECOUT
   ${HTK_PREFIX}HResults -p -t -e "???" ${SILENCE} \
-    -I $WORK/$TEST_MLF $WORK/$SYLLIST_COMPLETE $WORK/$hmm_type/$RECOUT > $WORK/$hmm_type/${RESULTS_FILE}_iteration_$iter
-  grep Aligned $WORK/$hmm_type/${RESULTS_FILE}_iteration_$iter| sed -E "s/.*\/..\/([a-z]{2})([0-9]{2,3}\.[0-9])p([0-9]{2,3}\.[0-9])s.*/\2 \3/" | sort | uniq -c > $WORK/$hmm_type/${MISCLASSIFIED}_iteration_$iter
+    -I $WORKING_DIRECTORY/$TEST_MLF $WORKING_DIRECTORY/$SYLLIST_COMPLETE $WORKING_DIRECTORY/$hmm_type/$RECOUT > $WORKING_DIRECTORY/$hmm_type/${RESULTS_FILE}_iteration_$iter
+  grep Aligned $WORKING_DIRECTORY/$hmm_type/${RESULTS_FILE}_iteration_$iter| sed -E "s/.*\/..\/([a-z]{2})([0-9]{2,3}\.[0-9])p([0-9]{2,3}\.[0-9])s.*/\2 \3/" | sort | uniq -c > $WORKING_DIRECTORY/$hmm_type/${MISCLASSIFIED}_iteration_$iter
 done
--- a/trunk/experiments/scripts/cnbh-syllables/run_training_and_testing/test_features.sh	Wed Aug 11 17:29:51 2010 +0000
+++ b/trunk/experiments/scripts/cnbh-syllables/run_training_and_testing/test_features.sh	Wed Aug 11 22:53:59 2010 +0000
@@ -21,18 +21,10 @@
 FEATURE_SIZE=$8
 FEATURE_TYPE=$9
 
-
 TRAIN_SPEAKERS=train_speakers
 TEST_SPEAKERS=test_speakers
 
-# These are not
-SYLLIST_COMPLETE=syllist
-GRAM=gram
-DICT=dict
-WDNET=wdnet
-TRAIN_MLF=train.mlf
-TEST_MLF=test.mlf
-HMMCONFIG=hmmconfig
+HMMCONFIG=hmm_configuration
 
 
 if [ "$FEATURE_TYPE" == "MFCC_0_D_A"]
@@ -52,8 +44,8 @@
 EOF
 fi
 
-for total_hmm_states in 3 4 5 6 7 8; do
-  for mixture_components in 1 2 3 4 5 6 7; do
+for total_hmm_states in $HMM_STATES_LIST; do
+  for mixture_components in $MIXTURE_COMPONENTS_LIST; do
     . run_test_instance.sh &
   done
 done
--- a/trunk/experiments/scripts/master.sh	Wed Aug 11 17:29:51 2010 +0000
+++ b/trunk/experiments/scripts/master.sh	Wed Aug 11 22:53:59 2010 +0000
@@ -114,12 +114,19 @@
 TRAINING_ITERATIONS="0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20"
 TESTING_ITERATIONS="1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20"
 HMM_STATES="3 4 5 6 7 8"
-HMM_OUTPUT_COMPONENTS=""
+HMM_OUTPUT_COMPONENTS="1 2 3 4 5 6"
 
 FEATURE_CLASS=mfcc
+FEATURE_SUFFIX=mfc
 FEATURE_SIZE=39
 FEATURE_TYPE=MFCC_0_D_A
 
+./run_training_and_testing/train_test_sets/generate_train_test_lists.sh \
+    $TALKERS \
+    $WORK \
+    $FEATURES_DIR \
+    $FEATURE_SUFFIX
+
 for SOURCE_SNR in $FEATURE_DIRS; do
   ./run_training_and_testing/test_features.sh \
       $HMMS_ROOT \
@@ -130,5 +137,7 @@
       $TRAINING_ITERATIONS \
       $TESTING_ITERATIONS \
       $FEATURE_SIZE \
-      $FEATURE_TYPE
+      $FEATURE_TYPE \
+      $TRAINING_SCRIPT \
+      $TESTING_SCRIPT
 done
\ No newline at end of file