This is an old revision of the document!
Morpho Challenge 2007
Stránky soutěže jsou na http://www.cis.hut.fi/morphochallenge2007/. E-mailová adresa organizátorů je morphochallenge2007@james.hut.fi.
Data mám v ~/data/morphochallenge
.
Dostali jsme pro každý jazyk (angličtinu, němčinu, finštinu a turečtinu) seznam slovních tvarů a jejich četností. Měli jsme za úkol pro každý slovní tvar vrátit jeho dělení na morfémy. Morfémy mohly být identifikovány libovolným řetězcem, při vyhodnocování se pouze zjišťovalo, zda se u slov, která mají obsahovat tentýž morfém, skutečně opakuje stejně pojmenovaný morfém.
Moje zpracování se skládá ze dvou částí:
- Rozebrat slova na vstupu, získat seznam vzorů, kmenů a koncovek.
- Znova projít slova na vstupu, každé přiřadit k jednomu nebo několika vzorům a vypsat odpovídající rozklady.
Nijak nevyužívám informaci o četnosti slovních tvarů ani o kontextu slov v korpusu. Slovo umím rozložit na právě dva morfémy (kmen a koncovka) nebo nechat nerozložené. Při přiřazování slov ke vzorům se přednostně zjišťuje, zda známe přímo danou dvojici kmen-koncovka. Pokud žádnou takovou dvojici nenajdeme, zjišťujeme, zda rozpoznáme alespoň koncovky (aniž bychom znali kmen).
Potřebné skripty a výstupy jsou ve složce ~/zapoctaky/konc
.
Seznam vzorů se buduje takto (práce je rozdělena do několika kroků, protože zpracování velkých dat trvá dlouho a při opravě nějaké drobnosti u filtrování vzorů nechceme muset opakovat i první dva kroky):
csts2kmkon.pl < en.csts > en.kmkon kmkon2vzor.pl < en.kmkon > en.vzor vzorfiltr.pl < en.vzor > en1.vzor
Skript vzorfiltr.pl
jako vedlejší účinek vedle standardního výstupu tiše vyrobí soubory kmeny.txt
a koncovky.txt
.
Rozklad slov na základě již vybudovaného seznamu vzorů se provede takto:
mchallenge.pl kmeny.txt koncovky.txt < wordlist.eng > en.dz.txt