genienlp/decanlp/tests/test.sh

55 lines
4.5 KiB
Bash
Raw Normal View History

2019-03-02 01:11:03 +00:00
#!/usr/bin/env bash
set -e
set -x
SRCDIR=`dirname $0`
# functional tests
2019-03-04 23:08:56 +00:00
function delete {
rm -rf $1
}
2019-03-12 20:30:27 +00:00
2019-03-04 23:08:56 +00:00
mkdir -p $SRCDIR/embeddings
curl -O "https://parmesan.stanford.edu/glove/glove.6B.50d.txt.pt" ; mv glove.6B.50d.txt.pt $SRCDIR/embeddings/
curl -O "https://parmesan.stanford.edu/glove/charNgram.txt.pt" ; mv charNgram.txt.pt $SRCDIR/embeddings/
2019-03-02 01:11:03 +00:00
TMPDIR=`pwd`
workdir=`mktemp -d $TMPDIR/decaNLP-tests-XXXXXX`
i=0
for hparams in "" ; do
# train
2019-03-05 03:37:23 +00:00
pipenv run decanlp train --train_tasks almond --train_iterations 4 --preserve_case --save_every 2 --log_every 2 --val_every 2 --save $workdir/model_$i --data $SRCDIR/dataset/ $hparams --exist_ok --skip_cache --root "" --embeddings $SRCDIR/embeddings --small_glove --no_commit
2019-03-12 20:30:27 +00:00
# with curriculum
pipenv run decanlp train --train_tasks almond --train_iterations 4 --preserve_case --save_every 2 --log_every 2 --val_every 2 --save $workdir/model_"$i"_curriculum --data $SRCDIR/dataset/ $hparams --exist_ok --skip_cache --root "" --embeddings $SRCDIR/embeddings --small_glove --no_commit --use_curriculum
2019-03-21 18:20:48 +00:00
# with grammar
pipenv run decanlp train --train_tasks almond --train_iterations 4 --preserve_case --save_every 2 --log_every 2 --val_every 2 --save $workdir/model_"$i"_grammar --data $SRCDIR/dataset/ $hparams --exist_ok --skip_cache --root "" --embeddings $SRCDIR/embeddings --small_glove --no_commit --thingpedia $SRCDIR/dataset/thingpedia-8strict.json --almond_grammar full.bottomup
2019-03-21 23:01:14 +00:00
# with thingpedia as context
pipenv run decanlp train --train_tasks almond_with_thingpedia_as_context --train_iterations 4 --preserve_case --save_every 2 --log_every 2 --val_every 2 --save $workdir/model_"$i"_context_switched --data $SRCDIR/dataset/ $hparams --exist_ok --skip_cache --root "" --embeddings $SRCDIR/embeddings --small_glove --no_commit --thingpedia $SRCDIR/dataset/thingpedia-8strict.json
2019-03-02 01:11:03 +00:00
# greedy decode
2019-03-04 23:08:56 +00:00
pipenv run decanlp predict --tasks almond --evaluate test --path $workdir/model_$i --overwrite --eval_dir $workdir/model_$i/eval_results/ --data $SRCDIR/dataset/ --embeddings $SRCDIR/embeddings
2019-03-12 23:27:28 +00:00
pipenv run decanlp predict --tasks almond --evaluate test --path $workdir/model_"$i"_curriculum --overwrite --eval_dir $workdir/model_"$i"_curriculum/eval_results/ --data $SRCDIR/dataset/ --embeddings $SRCDIR/embeddings
2019-03-21 18:20:48 +00:00
pipenv run decanlp predict --tasks almond --evaluate test --path $workdir/model_"$i"_grammar --overwrite --eval_dir $workdir/model_"$i"_grammar/eval_results/ --data $SRCDIR/dataset/ --embeddings $SRCDIR/embeddings --thingpedia $SRCDIR/dataset/thingpedia-8strict.json
2019-03-21 23:01:14 +00:00
pipenv run decanlp predict --tasks almond --evaluate test --path $workdir/model_"$i"_context_switched --overwrite --eval_dir $workdir/model_"$i"_context_switched/eval_results/ --data $SRCDIR/dataset/ --embeddings $SRCDIR/embeddings --thingpedia $SRCDIR/dataset/thingpedia-8strict.json
2019-03-02 01:11:03 +00:00
# export prediction results
2019-03-05 03:37:23 +00:00
pipenv run python3 $SRCDIR/../utils/post_process_decoded_results.py --original_data $SRCDIR/dataset/almond/test.tsv --gold_program $workdir/model_$i/eval_results/test/almond.gold.txt --predicted_program $workdir/model_$i/eval_results/test/almond.txt --output_file $workdir/model_$i/results.tsv
2019-03-21 18:20:48 +00:00
pipenv run python3 $SRCDIR/../utils/post_process_decoded_results.py --original_data $SRCDIR/dataset/almond/test.tsv --gold_program $workdir/model_"$i"_curriculum/eval_results/test/almond.gold.txt --predicted_program $workdir/model_"$i"_curriculum/eval_results/test/almond.txt --output_file $workdir/model_"$i"_curriculum/results.tsv
pipenv run python3 $SRCDIR/../utils/post_process_decoded_results.py --original_data $SRCDIR/dataset/almond/test.tsv --gold_program $workdir/model_"$i"_grammar/eval_results/test/almond.gold.txt --predicted_program $workdir/model_"$i"_grammar/eval_results/test/almond.txt --output_file $workdir/model_"$i"_grammar/results.tsv
2019-03-21 23:01:14 +00:00
pipenv run python3 $SRCDIR/../utils/post_process_decoded_results.py --original_data $SRCDIR/dataset/almond/test.tsv --gold_program $workdir/model_"$i"_context_switched/eval_results/test/almond.gold.txt --predicted_program $workdir/model_"$i"_context_switched/eval_results/test/almond.txt --output_file $workdir/model_"$i"_context_switched/results.tsv
2019-03-04 23:08:56 +00:00
# check if result files exist
if [ ! -f $workdir/model_$i/results.tsv ] && [ ! -f $workdir/model_$i/results_raw.tsv ]; then
echo "File not found!"
exit
fi
2019-03-02 01:11:03 +00:00
i=$((i+1))
done
2019-03-21 18:20:48 +00:00
trap "delete $workdir" TERM