====== Trénovací a testovací korpus ======
===== Příprava testovacího korpusu =====
==== Příprava textů pro anotátory ====
* Adresář ''/corp/anotace'' na grimmovi.
* Sjet pomocí ''make-whole-corp.sh'' až k ''vert-rules-frazrl''.
* Udělat ''vert-rules-frazrl-rules'':
$ make-corp.sh -s vert-rules-frazrl -t vert-rules-frazrl-rules -i wide_vertical -o wide_vertical -n -v -p8
* Odstranit zbytečné značky:
annot-prep-vert.sh < /corp/syn2010/vert-rules-frazrl-rules/ \
> .../SCI/vert/
* Převést do ''csts'':$ cd .../SCI
$ make-corp.sh -s vert -t csts -g -v -p8
* Vybrat vhodné soubory pomocí ''x-rate-vert.sh'':
$ x-rate-vert.sh | sort -n -k2 | cut -f1 -d":" | head -28 | xargs cat | grep -c '.'
* Převést do ''utf-8'':
$ for ff in $(x-rate-vert.sh | sort -n -k2 | cut -f1 -d":" | head -28); do echo $ff; \
cstocs il2 utf8 < ../csts/$ff > ~/PROJEKTY/GACR1012/data/SCI-import/$ff; done
* Zarovnat délku souborů pomocí ''long-name.sh'':
$ cd .../SCI-import
$ long-name.sh
* Nadělat linky pro všechny anotátory pomocí ''distribute.sh'' (nejdřív upravit!).
* Počty tagů pro jednotlivé anotátory vyladit pomocí ''count-multi-tags.pl'':
$ for ff in VH MK ZN AB JK JN MB PK; do echo -n "$ff "; cat ????????-$ff | count-multi-tags.pl; done
* Přesunout se na jakobsonovi do adresáře s anotací:
cd /usr/local/corp/annotate
* Provést import:
bin/csts-import-utkl.pl --force ~/PROJEKTY/GACR1012/data/PUB-import/
* Upravit soubor ''users''.
==== Export oanotovaných textů ====
* Přesunout se na jakobsonovi do adresáře s původními texty:$ cd ~/PROJEKTY/GACR1012/data/PUB-import
* Provést export:$ for ff in *-AP; do echo $ff; /usr/local/corp/annotate/bin/csts-export.pl --verbose $ff \
> ../PUB-export/$ff; done
* Kontrola anotace:$ for ff in *-AP; do echo -n $ff; (/usr/local/corp/annotate/bin/csts-export.pl \
--verbose $ff > /dev/null) |& grep -c 'Warning' | xargs -0 printf "%7s"; done
==== Sloučení výsledků ====
* přesunout se do adresáře s exportovanými texty:$ cd ~/PROJEKTY/GACR1012/data/PUB-export
* vytvořit nové soubory k importu do anotačního programu:$ cd ~/PROJEKTY/GACR1012/data/korpus-cmp
$ paste | perl -pe 's/"utkl-.."/"utkl"/g' | merge-csts | remove-MM.pl \
> ../merge-import/
anebo ještě lépe použít skript:
#!/bin/bash
print_help() {
echo "Merge two annotations and prepare data for final annotation"
echo "Usage: $(basename "$0") [ -f from_dir ]" # [ -t to_dir ]
echo " $(basename "$0") -h"
echo "Defaults: from_dir - current dir (csts-export)"
echo " to_dir - ../merge-import"
echo "from_dir files: *-??"
echo "to_dir files: *-??-??"
exit 1
}
fdir="."
tdir="../merge-import"
ddir="../merge-import-done"
zdir="../merge-zero"
while getopts f:h FLAG; do
case $FLAG in
f) fdir=$OPTARG ;;
h) print_help ;;
# t) tdir=$OPTARG; ddir=$tdir-done; zdir=${tdir%-import}-zero ;;
*) echo "Unknown option \"$1\""; print_help ;;
esac
done
cd $fdir
mkdir -p $tdir;
mkdir -p $ddir;
mkdir -p $zdir;
ff=''
aa=''
cd $fdir
for gg in *-??; do
bb=${gg%-??}
if [ "x$aa" = "x$bb" ]; then
if [[ ! -f $tdir/$ff${gg: -3} ]] && [[ ! -f $ddir/$ff${gg: -3} ]] && [[ ! -f $zdir/$ff${gg: -3} ]]; then
echo "$ff${gg: -3}"
paste $ff $gg | perl -pe 's/"utkl-.."/"utkl"/g' \
| merge-csts | remove-MM.pl > $tdir/$ff${gg: -3}
fi
fi
aa=$bb
ff=$gg
done
* importovat, opravit a exportovat nové soubory do ''merge-export''
* převést do vertikály v adresáři ''.../compare/merge'':$ cd ../merge-export
$ prep-for-tag-comparison.sh < -XX-YY | cat -s > ../../compare/merge/
nebo ještě lépe$ for ff in *; \
do if [[ ( ! -f ../../compare/merge/${ff%-??-??}.fordiff ) && \
( ! -f ../../compare/merge/archiv/${ff%-??-??}.fordiff ) ]]; \
then echo $ff; \
prep-for-tag-comparison.sh < $ff | cat -s > ../../compare/merge/${ff%-??-??}; \
fi; done
a $ for ff in *; \
do if [[ ( ! -f ../../compare/merge/${ff%-??-??}.fordiff ) && \
( ! -f ../../compare/merge/archiv/${ff%-??-??}.fordiff ) ]]; \
then echo $ff; \
prep-for-tag-comparison.sh < $ff | cat -s > ../../compare/merge/${ff%-??-??}.fordiff; \
fi; done
* vyhledat invalid a opravit; porovnar s ''.fordiff'' a opravit lemmata
==== Dodatečné opravy ====
* pustit na to Milenino ''FREKVENCE/negr_kolokace_rl_vert''
* zkontrolovat skriptem ''check-vert.pl''
* //široko daleko//: opravit tag na ''Dg-------1A----''
* zkontrolovat všechna slova z dokumentu POS
* //se mnou//
* //potáhne// -- lemma
* //potřeba// -- tag
* //vole// -- tag
* //za svobodna// -- lemma i tag
* //naše koně// -- u //naše// dát ''M'' a příznak ''7''
==== Závěrečné kontroly ====
* Zkontrolovat shodu ''AA.* NN.*'' a ''NN.* AG.*'':
$ cd /corp/vert-done
$ for ff in *; do echo $ff; check-adj-noun.pl < $ff | grep --color=always "[^\ ]*/[^\ ]*"; done | l -R
$ for ff in *; do echo $ff; check-noun-adg.pl < $ff | grep --color=always "[^\ ]*/[^\ ]*"; done | l -R
===== Příprava trénovacího korpusu z PDT =====
==== Příprava dat ====
* PDT pouze morfologicky označkované: ''/data/PDT-data/variables_nodisamb''
* u těchto dat se rozgenerují X-ka, sjede se to pravidly, tagy se zjednoduší (''annot-prep-vert.sh'') a rozdělí se to na dvě sady: pro dva anotátory a pro jednoho anotátora (provede Tomáš): ''/data/PDT-data/variables_nodisamb/prac/vert-double-anot/'' a ''/data/PDT-data/variables_nodisamb/prac/vert-single-anot/''
* data se převedou do ''csts''
* zkopírují se do ''~/skoumal/PROJEKTY/GACR1012/data/PDT_nod_double-import'' a ''~/skoumal/PROJEKTY/GACR1012/data/PDT_nod_single-import''
* srovnají se délky souborů: ''long-name.sh'' (předem upravit)
* priřadí se anotátorům: ''distribute.sh'' (předem upravit)
==== Rozdělení práce ====
* ''PDT_nod_double'' tagují Marie Kelblerová (MK) a Pavel Kopřiva (PK)
* [[wiki:user:skoumal:anotace:PDT_nod_double|evidence práce]]
* ''PDT_nod_single'' tagují Marie Kelblerová (MK) a Pavel Kopřiva (PK)
* [[wiki:user:skoumal:anotace:PDT_nod_single|evidence práce]]
* Vadné texty:lnd92254_009 lnd92255_056 lnd92258_053 lnd92258_076 lnd92258_084 lnd92259_056