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 vRL
tazí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.1
s 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 docsts
make-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 zcstk
docsts
provedeme přesvert
a 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