[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
user:dusek:morpho_gen [2011/09/29 14:20]
dusek
user:dusek:morpho_gen [2012/07/26 16:12]
dusek
Line 1: Line 1:
-==== Generování morfologických atributů z formémů a gramatémů ====+==== Generování morfologických atributů z formémů a gramatémů (návrh) ====
  
 === Postup === === Postup ===
   * Nejdřív určit MainPOS a SubPOS, podle toho se budou určovat další featury   * Nejdřív určit MainPOS a SubPOS, podle toho se budou určovat další featury
   * Určit i Lemma, na základě zdrojového lemmatu (důležité hlavně pro #PersPron, ale i possesiva nebo cokoliv by se sbalovalo na t-rovině)   * Určit i Lemma, na základě zdrojového lemmatu (důležité hlavně pro #PersPron, ale i possesiva nebo cokoliv by se sbalovalo na t-rovině)
 +    * lemma se mění na t-rovině u: #PersPron, possesiv, (číslovek, deadjektivních adverbií, neurčitých zájmen -- jen opravdová, ne automatická)
   * něco obecnějšího na složené slovesné formy   * něco obecnějšího na složené slovesné formy
 +    * do autom. skládání stromu z formémů (až po vygenerování všech funkcí; asi bude ale zvláštní funkce, protože to není to samé co auxy ve formému, časuje se to)
 +      * možná jen mezikrok, který vyrobí ty formy
 +    * možná mít celou složenou formu jako celek a dávat jí nejdřív jeden tag (-- včetně modálů? asi by vlastně nebyl problém, modál bude další kategorie)
 +    * Získání složených slovesných forem (asi by šlo i na a-rovině):
 +
 +  t-node [ 1+x a/aux.rf a-node [ m/tag ~ '^V' ], a/lex.rf a-node [ m/tag ~ '^V' ] ];
  
 === Modely === === Modely ===
   * Jeden model na všechny POSy? Spíš asi dělené, na různá políčka různý, určování zleva doprava   * Jeden model na všechny POSy? Spíš asi dělené, na různá políčka různý, určování zleva doprava
 +    * časem může být použit interset
 +  * zřejmě tři bloky: 
 +    - určení slovního druhu
 +    - doplnění konstant (podle formému a slovníku)
 +    - určení jednotlivých morfologických hodnot
 +  * hodí se, že první blok už bude mít rody všech substantiv doplněné
 +  * trénování na zlatých formémech ? aby se netloukly s tím výsledkem ?
 +    * potom možná bude nižší accuracy, ale větší gramatikalicita -- asi by se mělo změřit
 +
 +== určení slovního druhu ==
 +  * SubPOS podle č. morfologie
 +  * vynechat slovesné formy -- bude se určovat čas
 +  * vynechat vokalizaci předložek, bude se určovat zvlášť
 +  * u většiny slov jednoznačné, je pár složitých, nejhorší je #PersPron
 +    * přímo z t_lemma & formém se dá určit 99% případů
 +    * šlo by mít modely jen pro nejednoznačné případy, pro ostatní je generovat z MorphoLM (a brát první, co přijde) nebo mít uložené ve slovníku a jako fallback až LM
 +      * zřejmě nejde mít jeden velký model, který by ošetřil všechny triviální případy -- bude nutné si udělat pls.gz
 +    * modely: pro každé slovo zvlášť, tj. určení jen těch pár tříd
  
 === POSy a generované věci === === POSy a generované věci ===
   * drop -- přidá se k vyhození, negeneruje se nic   * drop -- přidá se k vyhození, negeneruje se nic
-  * +  * substantiva: jen číslo a negace (pád z formému, rod ze slovníku) 
 +  * adjektiva: číslo, negace, rod, pád (pokud není dán z formému) 
 +  * zájmena: číslo, negace, rod, pád (není-li dán z formému), possesivnost (v určení lemmatu? -- //svůj// apod.) 
 +  * číslovky: pád (není-li z formému), rod (není-li konstantní) 
 +    * možná až potom dát ReverseNounNumberDependendency, aby to nedělalo bordel 
 +  * slovesa: osoba, číslo, čas, rod (v tagu samotném), modální sloveso, negace 
 +  * předložky: vokalizace ?
  
 === Potřebné featury === === Potřebné featury ===
 +  * IsSubject -- MarkSubject, featury od subjectu //pro agreement, hl. sloves, ale i adjektivních komplementů//
 +    * tj. mít ''subject->'' v ''LayerAttributes'' !!
 +  * z+2, featury od toho, co na tom visí //pro adjektiva: "každý z mužů, každá z žen"//
 +
 +  t-node [ a/lex.rf a-node [ m/lemma ~ '^každý$' ], t-node [ a/aux.rf a-node [ m/form ~ '^z(e)?$' ] ] ];
 +
 +  * Koreference (gramatická) //pro "který", vztažná zájmena//
 +  * rodič a jeho featury //pro adjektiva: governors gender//
 +  * formém ovlivňuje gramatický slovesný čas -- v:že+fin, v:aby+fin, negaci: v:dokud+fin, v:než+fin
  
 === Zůstává ruční / původní === === Zůstává ruční / původní ===
   * Reflexiva tantum, Subconjs, DropSubjPersProns (?),  MoveCliticsToWackernagel, Expletiva (?)   * Reflexiva tantum, Subconjs, DropSubjPersProns (?),  MoveCliticsToWackernagel, Expletiva (?)
   * AddPrepos, AddParentheses, AddPunctuation -- hodně obecné, asi by se dalo generaliozvat!   * AddPrepos, AddParentheses, AddPunctuation -- hodně obecné, asi by se dalo generaliozvat!
 +  * **GenerateWordForms -- nutné pročistit**, je v tom bordel
 +  * Vokalizace ?
 +
 +==== Slovesa ====
 +  * Generování slovesných forem -- jednoduché ML na závorkový zápis
 +  * Výsledky: varianty pokusů:
 +
 +^ pokus              ^ popis                                                                             ^ datum            ^ accuracy ^
 +| verbal             | původní varianta, přímo lemmata modálních sloves v targetu, bez featury pro osobu | 2011-12-08 18:48 | 94.641   |
 +| verbal-person      | s featurou "person" a navíc osobou uvedenou v targetu                             | 2011-12-14 18:56 | 94.085   |
 +| verbal-persfeat    | s featurou "person"                                                               | 2011-12-22 12:41 | 94.952   |
 +| verbal-normalized  | normalizované pořadí v targetu, sjednocené modály, jen deontmod                   | 2012-01-27 17:09 |          |
 +| verbal-inf_mod_fix | normalizované pořadí v targetu, sjednocené modály, deontmod + is_modal            | 2012-02-01 17:49 | 96.976   |
 +| verbal-uni_mod     | normalizované pořadí v targetu, sjednocené modály, jen is_modal                   | 2012-02-03 14:57 | 96.942   |
 +
 +  * Výsledky nejsou úplně porovnatelné, původní verbal má jiné testovací instance (ale jen o trošku), navíc množina target values je pokaždé jiná!
 +
 +=== TODO ===
 +  * nastavit nějak líp cost -- asi menší regularizaci, víc overtraining, aby se i řídké příklady zohlednily
 +    * přitom zřejmě chyby budou výjimečné (protože prostor featur je hodně hustý a ke každé chybě bude existovat i správný příklad)
 +  * možná filtrovat nemožné příklady (neshodné aux.rf se zlatými? kolik to bude %?)
 +  * váhy příkladům (čím delší string, tím větší váha :-))
 +  * opravit nějak generování "by/bychom"
 +

[ Back to the navigation ] [ Back to the content ]