Both sides previous revision
Previous revision
Next revision
|
Previous revision
Next revision
Both sides next revision
|
user:zeman:dz-parser:icon [2009/10/28 12:32] zeman Naivní telugu. |
user:zeman:dz-parser:icon [2009/10/28 18:51] zeman Koordinace. |
| bn | 39.52 | 44.14 | | | bn | 39.52 | 44.14 | |
| te | 73.75 | 76.89 | | | te | 73.75 | 76.89 | |
| |
| |
| |
| ===== Analýza chyb ===== |
| |
Takhle se z morfologických indických dat vyrobí soubor pro Tred, který obsahuje indické písmo místo WX: | Takhle se z morfologických indických dat vyrobí soubor pro Tred, který obsahuje indické písmo místo WX: |
| |
<code>cat hi/dtest.rmconll | conll_wc2utf.pl -l hi | $TOOLS/conll2csts.pl -y 2006 -l hi | perl -pe 's/<t>\S+\t/<t>/; s/\t.*?</</;' | cstsfs.pl > hi/dtest.fs</code> | <code>cat hi/dtest.rmconll | conll_wc2utf.pl -l hi | $TOOLS/conll2csts.pl -y 2006 -l hi | perl -pe 's/<t>\S+\t/<t>/; s/\t.*?</</;' | cstsfs.pl > hi/dtest.fs</code> |
| |
| Důležitou součástí výše uvedeného příkazu je perlový kód, který maže tabulátory ze značek, jinak se na výsledek nedá v Tredu koukat. Tady je varianta pro výstup parseru: |
| |
| <code>cat hi/dtest.voted.rconll | conll_wc2utf.pl -l hi | $TOOLS/conll2csts.pl -y 2006 -l hi | perl -pe 's/<t>\S+\t/<t>/; s/\t.*?</</;' | cstsfs.pl > hi/dtest.voted.fs</code> |
| |
| A takhle spojíme vzorovou anotaci s výstupem parseru, abychom viděli chyby: |
| |
| <code>conll_pokusy.pl -l hi -t -g hi/dtest.mconll -s hi/dtest.voted.rconll | cstsfs.pl -s dzchyby > hi/dtest.voted.fs</code> |
| |
| Není pravda, že ze značky POS jednoznačně vyplývá značka chunku. Proto bych měl parserům poskytnout obě značky, může jim to pomoct. Např. v bengálské větě "(3) তবে / tabé সুদীপ / sudípa ওকে / óké একদিন / ékadina আড়ালে / áđa়াlé ডেকে / đéké বলেছিল / baléčhila কৌতূহল / kautúhala দেখালে / dékhálé তুমি / tumi উঁচুতে / um̃čuté উঠতে / uţhaté অনিমেষ / animéša" jsou slova "déké" a "dékhálé" značena jako "VGNF|VM" (zřejmě gerundium), zatímco "baléčhila" a "uthaté" jsou "VGF|VM". Pokud parser u všech vidí jen "VM", pak není divu, že v té větě nasekal několik divokých chyb. |
| |
| V hindštině se často na chybách podílí uzel NULL. Spočítat, kolik takových uzlů ve kterém jazyce je. |
| |
| Přinejmenším častá slova by měla být pro parsery viditelná jako samostatný rys uzlu. Např. hindské "कि / ki" ("že") se mi zavěsilo špatně a kdo ví, jestli to není jen proto, že parser viděl pouze značku "CC". Podobně "तो / tó" má taky značku "CC", ale jeho zavěšování asi bude o dost jiné. |
| |
| Úspěšnost přes 85 % je poměrně vysoká a je těžké v těch občasných chybách vysledovat nějaké pravidlo. Přinejmenším v hindštině se mi ale zdá, že často jde o chyby se slovesy či spojkami (koordinace sloves) a často na velkou vzdálenost. |
| |
| Příklad problému s koordinací, stejného, jaký měl DZ parser na češtině: "(143) भाई / bháí और / aura भाभी / bhábhí उसके / usaké अच्छा / aččhá व्यवहार / vjavahára करते / karaté". "bháí aura bhábhí" je jasná koordinace dvou podstatných jmen, která pak dohromady tvoří podmět slovesa. Parser je sice správně spojil do koordinace, pak už ale asi viděl jen spojku "aura", zapomněl na podstatná jména pod ní, vzpomněl si, že spojky také spojují celé klauze, a pověsil ji na kořen. |
| |
| Je potřeba přinejmenším Malt parseru, ale pokud to jde, tak i MST parseru předhodit podrobnější rysy, aby parser mohl pracovat zvlášť např. s lemmatem a zvlášť s pádem a sám se rozhodnout, ve kterém případě mu co pomáhá víc. |
| |
| ===== Výsledky ===== |
| |
První výsledky DZ Parseru na vývojových datech: | První výsledky DZ Parseru na vývojových datech: |