Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision Next revision Both sides next revision | ||
user:zeman:deltacorpus [2016/05/10 18:48] zeman created |
user:zeman:deltacorpus [2016/06/01 18:06] zeman |
||
---|---|---|---|
Line 6: | Line 6: | ||
* ''/ | * ''/ | ||
* ''/ | * ''/ | ||
+ | * ''/ | ||
* ''/ | * ''/ | ||
===== TODO ===== | ===== TODO ===== | ||
- | * Kromě '' | + | |
- | * Místo HamleDTu 3.0 to celé vyzkoušet na Universal Dependencies | + | |
- | * Posunout | + | * Opustit HamleDT 2.0, přejít na Universal Dependencies (zatím verzi 1.2 kvůli kompatibilitě s dalšími projekty). |
+ | * Vyhodnotit úspěšnost | ||
+ | * Ozvat se Vladovi Benkovi s gruzínštinou (k té by se mohl hodit i UniMorph Christo Kirova a Davida Yarowského, | ||
+ | * Posunout se k parsingu (nový článek na PACLIC, odložený deadline 12.6.2016). | ||
+ | * U parsingu se zatím musíme držet UD 1.2 a nemůžeme přejít | ||
+ | * Trénovací i testovací treebank obsahuje deltaznačky, | ||
+ | * Pro každý jazyk je třeba rozhodnout, kterému deltamodelu věříme. A samozřejmě potřebujeme vždy takovou modifikaci, aby trénovací data deltamodelu neobsahovala dotyčný jazyk. Na tom už se pracuje. c7 pro všechny už jsem vyzkoušel a dopadlo to katastrofálně. Ale je možné, že jsem použil značky z HamleDTa a nasadil je na UD, tím by se část katastrofy vysvětlovala. | ||
+ | * I u parsingu vyzkoušet multi-source transfer, tj. na zdrojové straně je směs několika jazyků vybraných podle různých kritérií. (Pozor, | ||
+ | * Bude-li to vypadat smysluplně, | ||
+ | * Srovnat | ||
+ | * Obdobně je zajímavá rychloanotace u značek, viz Cucerzan and Yarowsky 2002. Vybrat 100 nejčastějších slov, dát jim značky. | ||
+ | * Článek: | ||
+ | * Citovat Loganathana (použil delex na indické jazyky). | ||
+ | * Citovat Teresu Lynn (použila to přímo k urychlení tvorby irského treebanku). | ||
+ | * Citovat Rudu Rosu (algoritmus výběru vhodného zdrojového jazyka; váhy v MST parseru). | ||
+ | * Vůbec by neškodilo vyhodnotit to na více parserech. Nebo alespoň přidat nivreeager + liblinear, je to rychlé. | ||
+ | |||
+ | ===== Deltacorpus ===== | ||
+ | |||
+ | Verze 1.0 (2016-03-17) obsahuje 107 jazyků vybraných z W2C. V každém je první milión tokenů (nebo méně, pokud jich W2C neobsahuje milión). Všechny jsou označkované stejným modelem, a to tím, který se při našich pokusech choval v průměru nejlépe: klasifikátor SVM se 17 rysy natrénovaný na směsi c7, tedy na bulharštině, | ||
+ | |||
+ | Více než polovina jazyků v Deltacorpusu je indoevropských, | ||
+ | * Pro baltoslovanské jazyky bulharštinu, | ||
+ | * Pro germánské jazyky němčinu, angličtinu a švédštinu. | ||
+ | * Pro románské jazyky katalánštinu, | ||
+ | * Lze ještě uvažovat o tom, že | ||
+ | * pro ostatní indoevropské jazyky, pro semitské jazyky, svahilštinu a také pro všechny umělé jazyky použijeme směs indoevropských jazyků, tj. z původního c7 vyhodíme maďarštinu a turečtinu a nahradíme je třeba češtinou a portugalštinou; | ||
+ | * pro aglutinační jazyky (uralské, turkické, altajské, drávidské, | ||
+ | * zbývající jazyky (nevarština, | ||
+ | |||
+ | Tyhle nové trénovací směsi bychom samozřejmě měli opět vyhodnotit na testovacích jazycích, které máme k dispozici. V článku bylo 19 testovacích jazyků, ale vynechal bych bengálštinu a telugštinu, | ||
+ | |||
+ | ===== Obecné poznámky ===== | ||
+ | |||
+ | Zhiweiův kód je v Pythonu a používá jeden nestandardní modul, '' | ||
===== Jak spočítat hodnoty rysů ===== | ===== Jak spočítat hodnoty rysů ===== | ||
- | Rysy se získávají z velkého neanotovaného korpusu, v našem případě typicky z W2C. Výstupem je slovník, který pro každé slovo (typ) dodá hodnoty rysů. Na základě tohoto slovníku můžeme převést libovolný nový text daného jazyka na struktury | + | Rysy se získávají z velkého neanotovaného korpusu, v našem případě typicky z W2C. Výstupem je slovník, který pro každé slovo (typ) dodá hodnoty rysů. Na základě tohoto slovníku můžeme převést libovolný nový text daného jazyka na posloupnost struktur |
+ | |||
+ | ===== Jak natrénovat a pustit tagger ===== | ||
+ | Zhiwei dělal obojí v jednom kroku. Prošel trénovací data, natrénoval klasifikátor, |