Table of Contents
Příprava korpusů
Postup pro obrábění korpusů pro ČNK
Vše se dělá na grimmovi, v adresáři /corp a jeho podadresářích.
Předpokládáme, že existují adresáře in a in-il2. V in jsou texty v kódování CP1250, v in-il2 v latin2, aby se lépe editovaly.
Po nainstalování nové verze morfologie je nutné překompilovat LEX (v LangRu) a zkopírovat ho do adresáře /corp.
Po podstatných opravách pravidel je třeba provést totéž.
Názvy podadresářů jsou konstruovány tak, aby bylo jasno, v jakém jsou data formátu (vert, csts nebo cstk) a jaké kroky byly provedeny (např. vert-rules-frazrl-rulh1). Posloupnost začíná u rules, že je předtím in a morf, se předpokládá.
Postup po jednotlivých krocích
- Nejdříve se přesuneme do pracovního adresáře.
cd /corp/<korpus>
- Aktualizujeme
in.make-corp.sh -t in -v -p8
- Provedeme morfologickou analýzu.
make-corp.sh -t vert-morf -v -p8
- Provedeme první kolo pravidel.
make-corp.sh -t vert-rules -o wide_vertical -v -p8
Provede se jenom
root, výstup je vRLtazích. - Teď se provedou Mileniny frazémy. Nejdřív je třeba převést korpus do formátu
cstk. Pak se přesuneme do adresáře…/SYN2005.1s Mileninými programy a tabulkami, ale zároveň potřebujeme v tomto adresáři právo zápisu. Toho docílíme tím, že si adresář od Mileny zkopírujeme.make-corp.sh -t cstk-rules -s vert-rules -v -p8 cd rsync -avz ~milena/SYN2005.1 . cd SYN2005.1 make-frazrl.sh -d . -k /corp/<korpus> -v -p8 cd /corp/<korpus>
- Následuje druhé kolečko pravidel, tentokrát s heuristikou, ale nejdřív musíme zkonvertovat korpus zase do vertikály. Při spuštění pravidel nesmíme zapomenout na RL tagy a taky musíme opravit tagy, aby vyhovovaly programu
gc.x. K tomu slouží programnormalize.pl(a parametr-n).make-corp.sh -t vert-rules-frazrl -s cstk-rules-frazrl -v -p8 make-corp.sh -t vert-rules-frazrl-rulh1 -s vert-rules-frazrl -i wide_vertical -o wide_vertical -n -v -p8
- Po pravidlech se konečně dostane na
morče, ale předtím musíme zkonvertovat korpus docstsmake-corp.sh -t csts-rules-frazrl-rulh1 -s vert-rules-frazrl-rulh1 -v -p8 make-corp.sh -t csts-rules-frazrl-rulh1-tag -s csts-rules-frazrl-rulh1 -v -p8
- Po morčeti opravíme
být. K tomu slouží opět Milenin program, tentokrát v adresáři FREKVENCE. Převod zcstkdocstsprovedeme přesverta při tom taky odmažeme přebytečná lemmata a tagy (parametr-u).make-corp.sh -t vert-rules-frazrl-rulh1-tag -s csts-rules-frazrl-rulh1-tag -u -v -p8 make-corp.sh -t cstk-rules-frazrl-rulh1-tag -s vert-rules-frazrl-rulh1-tag -v -p8 cd rsync -avz ~milena/FREKVENCE . cd FREKVENCE corr-byt-rl.sh -d . -k /corp/<korpus> -v -p8 cd /corp/<korpus>
- Po být přidáme vidy, ale nejdřív musíme konvertovat do
vert.make-corp.sh -t vert-rules-frazrl-rulh1-tag-byt -s cstk-rules-frazrl-rulh1-tag-byt -v -p8 make-asp.sh -t vert-rules-frazrl-rulh1-tag-byt-vid -s vert-rules-frazrl-rulh1-tag-byt -v
- A nakonec provedeme konečné opravy.
corr-asp.sh -t vert-rules-frazrl-rulh1-tag-byt-vid-corr -s vert-rules-frazrl-rulh1-tag-byt-vid -v -p8
Vše v jednom kroku
Všechny kroky popsané v předchozí sekci je možné provést zadáním jediného příkazu
make-whole-corp.sh
Defaultně se začne provedením in (první target) a skončí se provedením závěrečných oprav (poslední target). Je možné pouštět proces jenom odněkud někam:
make-whole-corp.sh -t <first_target> -T <last_target> -v -p8
Místo celých dlouhých názvů targetů se uvádějí jenom jejich poslední části (in, morf, rules, frazrl atd.):
make-whole-corp.sh -t morf -T rulh1 -v -p8
Přepínač -v znamená verbose, ale není tak upovídaný jako v make-corp.sh. Přepínač -p je počet procesorů, které pracují.
Konverze do manatee
Do manatee konvertujeme korpusy ve tvaru vert příkazem manatee-registry.sh.
manatee-registry.sh -c . -f vert-rules-frazrl-rulh1-tag-byt-vid-corr