Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
user:zeman:dz-parser:icon [2012/12/08 10:37] zeman První výsledky MST parseru. |
user:zeman:dz-parser:icon [2012/12/11 12:37] (current) zeman training-k:5 |
||
---|---|---|---|
Line 6: | Line 6: | ||
* Natrénovat McDonaldův MST parser. Pokud možno s pořádnými rysy, neprojektivně a druhý řád. Ale na druhou stranu, aby to taky někdy doběhlo. | * Natrénovat McDonaldův MST parser. Pokud možno s pořádnými rysy, neprojektivně a druhý řád. Ale na druhou stranu, aby to taky někdy doběhlo. | ||
- | | + | * Zkusit |
- | | + | |
* Natrénovat Malt parser a mezi rysy mu přidat hypotézu od MST (parser MST-Malt podle Joakimova a Ryanova článku). | * Natrénovat Malt parser a mezi rysy mu přidat hypotézu od MST (parser MST-Malt podle Joakimova a Ryanova článku). | ||
* To znamená, že musím vybrat nejlepší parametry trénování MST, rozdělit trénovací data na 10 dílů, opakovaně natrénovat MST na devíti dílech a pustit ho na ten desátý. Pak musím rozhodnout, jakým způsobem se názor MST předloží Maltu. Musí to být rys položky na vstupu nebo na zásobníku. Asi nejjednodušší by bylo zavést rys, který pro každé slovo řekne značku jeho rodiče. V mnoha větách to bude ukazovat na více než jedno slovo, ale někde to snad pomůže. A pokud místo značky dáme slovo, mohla by být příliš řídká data. (Můžeme ale zavést dva rysy a dát tam obojí.) Index rodiče je jako rys k ničemu, protože hodnota má v každé větě jiný význam. Nejlepší by zřejmě bylo, kdybychom dokázali posuzovat dvě položky najednou (např. dvě horní položky v zásobníku) a říct, zda si MST parser myslí, že mezi nimi vede hrana. Ale to zase neumím popsat a je otázka, jestli to vůbec umí Malt parser, resp. ten jeho SVM rádce. | * To znamená, že musím vybrat nejlepší parametry trénování MST, rozdělit trénovací data na 10 dílů, opakovaně natrénovat MST na devíti dílech a pustit ho na ten desátý. Pak musím rozhodnout, jakým způsobem se názor MST předloží Maltu. Musí to být rys položky na vstupu nebo na zásobníku. Asi nejjednodušší by bylo zavést rys, který pro každé slovo řekne značku jeho rodiče. V mnoha větách to bude ukazovat na více než jedno slovo, ale někde to snad pomůže. A pokud místo značky dáme slovo, mohla by být příliš řídká data. (Můžeme ale zavést dva rysy a dát tam obojí.) Index rodiče je jako rys k ničemu, protože hodnota má v každé větě jiný význam. Nejlepší by zřejmě bylo, kdybychom dokázali posuzovat dvě položky najednou (např. dvě horní položky v zásobníku) a říct, zda si MST parser myslí, že mezi nimi vede hrana. Ale to zase neumím popsat a je otázka, jestli to vůbec umí Malt parser, resp. ten jeho SVM rádce. | ||
Line 16: | Line 15: | ||
HTB verze 0,51: train 12041 sent, 268093 tok? (words), dev 1233 / 26416 | HTB verze 0,51: train 12041 sent, 268093 tok? (words), dev 1233 / 26416 | ||
+ | |||
+ | **MST parser:** V& | ||
Vyhodnotit samostatně | Vyhodnotit samostatně | ||
Line 24: | Line 25: | ||
===== Výsledky ===== | ===== Výsledky ===== | ||
- | mst nonproj o2 full | + | ==== Různé redukce značek ==== |
- | Labeled | + | |
- | | + | Je vhodné využívat formát dat CoNLL, který je i pro MST parser nyní výchozí. Při konverzi do původního formátu MST je nutné rozhodnout, co prohlásíme za morfologickou značku. Pokud nechceme zbytek informace zahodit, tak máme značky velmi dlouhé a neumožňujeme parseru vybrat si, jaká jejich část ho zajímá nejvíc. Naproti tomu ve formátu CoNLL bere MST parser 0.4.3b v úvahu všechny morfologické sloupce (CPOS, POS i FEAT), jak vyplývá z následujících pokusů. Zatím jsem nezkoumal, zda je schopen rozložit obsah sloupce FEAT na samostatné rysy. A nikdy jsem mu nedal kompletní rysy, vždy jsem je omezil buď na vibhakti + tam, nebo jsem je úplně vymazal. |
- | Label accuracy score: 16637 / 26416 * 100 = 62.98 % | + | |
+ | Zlatý standard morfologie, trénování na 1000 větách, neprojektivní MST parser 2. řádu. Střídavě jsem redukoval nebo mazal (nahrazoval podtržítkem) hodnoty v různých sloupcích. Parser na všechny tyto změny reagoval a pokaždé dosáhl jiné úspěšnosti. To znamená, že všechny tyto sloupce bere při trénování v úvahu. | ||
+ | |||
+ | ^ CPOS ^ POS ^ FEAT ^ UAS ^ LA ^ LAS ^ Model ^ Rysů ^ Čas učení ^ | ||
+ | | ano | ano | vibhakti + tam | 91.78 | 79.76 | 77.73 | 131 MB 9.12.2012 23:31:04 | 2 334 346 | 11 min | | ||
+ | | ano | ano | ne | 88.47 | 77.52 | 75.55 | 56 MB 9.12.2012 23:32:15 | 1 130 847 | 12 min | | ||
+ | | ano | ne | vibhakti + tam | 90.47 | 68.65 | 66.64 | 128 MB 10.12.2012 9:10:05 | 2 246 768 | 11 min | | ||
+ | | ne | ano | vibhakti + tam | 88.11 | 77.83 | 74.62 | 127 MB 10.12.2012 9:13:08 | 2 234 096 | 14 min | | ||
- | mst nonproj o2 1000 | + | ==== training-k ==== |
- | Labeled | + | |
- | Unlabeled attachment score: 20335 / 26416 * 100 = 76.98 % | + | |
- | Label accuracy score: | + | |
- | Parser zřejmě | + | Ambati et al. použili 2. řád a training-k: |
====== ICON 2009 NLP Tools Contest ====== | ====== ICON 2009 NLP Tools Contest ====== |