X-Git-Url: https://www.fleuret.org/cgi-bin/gitweb/gitweb.cgi?p=folded-ctf.git;a=blobdiff_plain;f=run.sh;h=42dc58b182285324da09a1f5a6aa8868202268cd;hp=13f3a8e9b7eba18b6173e46d865c00f5235fca8f;hb=94ef84aef3a1845326c7c43970997b701a919bd6;hpb=9029782367bf98ab9bbb5dd1affc64a13342f3e1 diff --git a/run.sh b/run.sh index 13f3a8e..42dc58b 100755 --- a/run.sh +++ b/run.sh @@ -19,6 +19,7 @@ MAIN_URL="http://www.idiap.ch/folded-ctf" +###################################################################### # Compiling make -j -k @@ -81,53 +82,85 @@ fi RESULT_DIR=./results -if [[ ! -d ${RESULT_DIR} ]]; then - mkdir ${RESULT_DIR} -fi +case $1 in -for SEED in {0..9}; do + pics) - for MODE in hb h+b; do + SEED=0 - EXPERIMENT_RESULT_DIR="${RESULT_DIR}/${MODE}-${SEED}" + EXPERIMENT_RESULT_DIR="${RESULT_DIR}/hb-${SEED}" - mkdir ${EXPERIMENT_RESULT_DIR} 2> /dev/null + if [[ -d "${EXPERIMENT_RESULT_DIR}" ]]; then - if [[ $? == 0 ]]; then + for n in -1 0 2501 2504; do - OPTS="--random-seed=${SEED} --wanted-true-positive-rate=0.75" - - if [[ $MODE == "h+b" ]]; then - OPTS="${OPTS} --force-head-belly-independence=yes" - fi - - if [[ $1 == "valgrind" ]]; then - OPTS="${OPTS} --nb-classifiers-per-level=1 --nb-weak-learners-per-classifier=10" - OPTS="${OPTS} --proportion-for-train=0.1 --proportion-for-validation=0.025 --proportion-for-test=0.01" - OPTS="${OPTS} --wanted-true-positive-rate=0.1" - DEBUGGER="valgrind --db-attach=yes --leak-check=full --show-reachable=yes" - fi - - ${DEBUGGER} ./folding \ - --niceness=15 \ - --pool-name=${POOL_NAME} \ - --nb-levels=2 \ - --nb-classifiers-per-level=25 --nb-weak-learners-per-classifier=100 \ - --result-path=${EXPERIMENT_RESULT_DIR} \ - --detector-name=${EXPERIMENT_RESULT_DIR}/default.det \ - ${OPTS} \ - open-pool \ - train-detector \ - compute-thresholds \ - write-detector \ - sequence-test-detector | tee -a ${EXPERIMENT_RESULT_DIR}/stdout + ./folding --random-seed=${SEED} \ + --pool-name=${POOL_NAME} \ + --result-path=${EXPERIMENT_RESULT_DIR} \ + --detector-name=${EXPERIMENT_RESULT_DIR}/default.det \ + --nb-images=1 \ + --material-feature-nb=${n} \ + open-pool \ + read-detector \ + write-pool-images + + done else + echo "You have to run at least the first round completely to be able" >&2 + echo "to generate the pictures." >&2 + exit 1 + fi + + ;; - echo "${EXPERIMENT_RESULT_DIR} exists, aborting experiment." + valgrind|"") + if [[ ! -d ${RESULT_DIR} ]]; then + mkdir ${RESULT_DIR} fi - done + for SEED in {0..9}; do + + for MODE in hb h+b; do + + EXPERIMENT_RESULT_DIR="${RESULT_DIR}/${MODE}-${SEED}" + + mkdir ${EXPERIMENT_RESULT_DIR} 2> /dev/null + + if [[ $? == 0 ]]; then + + if [[ $MODE == "h+b" ]]; then + OPTS="${OPTS} --force-head-belly-independence=yes" + fi + + if [[ $1 == "valgrind" ]]; then + OPTS="${OPTS} --nb-classifiers-per-level=1 --nb-weak-learners-per-classifier=10" + OPTS="${OPTS} --proportion-for-train=0.1 --proportion-for-validation=0.025 --proportion-for-test=0.01" + OPTS="${OPTS} --wanted-true-positive-rate=0.1" + DEBUGGER="valgrind --db-attach=yes --leak-check=full --show-reachable=yes" + fi + + ${DEBUGGER} ./folding \ + --random-seed=${SEED} \ + --pool-name=${POOL_NAME} \ + --result-path=${EXPERIMENT_RESULT_DIR} \ + --detector-name=${EXPERIMENT_RESULT_DIR}/default.det \ + ${OPTS} \ + open-pool \ + train-detector \ + compute-thresholds \ + write-detector \ + sequence-test-detector | tee -a ${EXPERIMENT_RESULT_DIR}/stdout + + else + + echo "${EXPERIMENT_RESULT_DIR} exists, aborting experiment." + + fi + + done + + done -done +esac