Skip to content
Snippets Groups Projects
Commit e29d000f authored by Franck Dary's avatar Franck Dary
Browse files

mproved pvalue computation

parent d65a4f60
No related branches found
No related tags found
No related merge requests found
......@@ -14,7 +14,7 @@ groups = {}
splits = set()
for filename in os.listdir() :
if len(filename) < 7 or filename[-7:] != ".conllu" :
if len(filename) < 7 or filename[-7:] != ".conllu" or "bt2" in filename :
continue
splitNum = int(filename.split("_")[0])
splits.add(splitNum)
......@@ -27,15 +27,19 @@ for filename in os.listdir() :
refs = " ".join(["%sUD_French-GSD_%d/test.conllu"%(data, split) for split in splits])
os.system("cat %s > %s%s_corpus.conllu"%(refs, gold, ",".join(list(map(str,splits)))))
btTraces = []
for group in groups :
groupdir = "%s%s/"%(pvalues, group)
os.makedirs(groupdir, exist_ok=True)
for elem in groups[group] :
ins = " ".join(["%d_%s.conllu"%(split, elem) for split in splits])
os.makedirs("%s%s/"%(groupdir, elem), exist_ok=True)
os.system("cat %s > %s%s/%s_corpus.conllu"%(ins, groupdir, elem, ",".join(list(map(str,splits)))))
groupDir = "%s%s/"%(pvalues, group)
for model in groups[group] :
modeloutputs = " ".join(["%d_%s.conllu"%(split, model) for split in splits])
modelDir = "%s%s/"%(groupDir, model)
os.makedirs("%s"%(modelDir), exist_ok=True)
os.system("cat %s > %s%s_corpus.conllu"%(modeloutputs, modelDir, ",".join(list(map(str,splits)))))
btTraces.append(["%d_%s.trace"%(list(splits)[0], elem) for elem in groups[group] if "bt" in elem and "nobt" not in elem and "1" in elem][0])
traces = " ".join(["%d_%s.trace"%(list(splits)[0], elem) for elem in groups[group]])
os.system("%s %s --stats > stats_%s.txt"%(readTrace, traces, group))
os.system("%s %s --steps > steps_%s.txt"%(readTrace, traces, group))
os.system("%s %s --stats > stats_bt.txt"%(readTrace, " ".join(btTraces)))
#!/bin/bash
NAME='tagparser'
SYSTEMS=`ls $NAME`
METRICS="UAS UPOS"
RUNS=10000
RUNS=50000
GRPS=('eager'
'tagger'
'tagparser')
computePVal () {
rm -r results
NAME="$1"
OUTPUT="$1.res"
METRICS="UAS UPOS"
if [ "$OUTPUT" = "tagger.res" ]; then
METRICS="UPOS"
fi
if [ "$OUTPUT" = "eager.res" ]; then
METRICS="UAS"
fi
SYSTEMS=$(ls $NAME)
> $OUTPUT
for metric in $METRICS; do
[[ $# -ne 0 ]] && SYSTEMS=$@
set -x
set -e
for sys in $SYSTEMS; do
......@@ -18,7 +30,13 @@ for metric in $METRICS; do
> results/$sys/${testset%.conllu}
done
done
echo $metric
python3 `python3 -c 'import conll18 as x; print(x.__file__)'` -r $RUNS
echo ""
echo $metric >> $OUTPUT
python3 `python3 -c 'import conll18 as x; print(x.__file__)'` -r $RUNS >> $OUTPUT
echo "" >> $OUTPUT
done
}
for grp in ${GRPS[@]}; do
computePVal $grp
done
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment