AplikaceAplikace
Nastavení

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
kurz:syntakticka_analyza [2021/03/15 14:52] Jan Kocekkurz:syntakticka_analyza [2022/08/13 13:19] (aktuální) – [Hledání v syntakticky anotovaném korpusu] Alexandr Rosen
Řádek 1: Řádek 1:
 ====== Hledání v syntakticky anotovaném korpusu ====== ====== Hledání v syntakticky anotovaném korpusu ======
  
-Korpusy [[cnk:syn2015|SYN2015]] a [[cnk:syn2020|SYN2020]] byly opatřeny syntaktickou anotací, která k morfologické anotaci a lemmatizaci přidává informaci o vztazích mezi slovy ve větě. Syntaktická anotace vychází z [[https://ufal.mff.cuni.cz/pdt2.0|Pražského závislostního korpusu]], z anotace na tzv. analytické (povrchové) rovině.+Korpusy [[cnk:syn2015|SYN2015]] a [[cnk:syn2020|SYN2020]] byly opatřeny syntaktickou anotací, která k morfologické anotaci a lemmatizaci přidává informaci o vztazích mezi slovy ve větě. Syntaktická anotace vychází z [[https://ufal.mff.cuni.cz/pdt2.0|Pražského závislostního korpusu]], z anotace na tzv. analytické (povrchové) rovině. Verze [[cnk:intercorp:verze13ud|13ud]] paralelního korpusu [[cnk:intercorp|InterCorp]] je syntakticky (a morfologicky) anotována alternativním způsobem podle zásad mezinárodního projektu [[pojmy:ud|Universal Dependencies]]. Dále popisujeme anotaci podle [[https://ufal.mff.cuni.cz/pdt2.0|Pražského závislostního korpusu]]. 
 Anotace je závislostní, to znamená, že každý token (tedy jak slovo, tak interpunkční znaménka aj.) je závislý buď na jiném tokenu v téže větě, nebo na technickém (umělém) "kořenu" věty v případě, že slovo má v celé větě řídící funkci (obvykle sloveso). Anotace je závislostní, to znamená, že každý token (tedy jak slovo, tak interpunkční znaménka aj.) je závislý buď na jiném tokenu v téže větě, nebo na technickém (umělém) "kořenu" věty v případě, že slovo má v celé větě řídící funkci (obvykle sloveso).
-Korpus byl označkován automaticky, přičemž chybovost značkování je cca 16%, tj. výrazně vyšší než v případě anotace morfologické. Chybovost je vyšší u méně častých a složitějších konstrukcí, nižší u jednodušších.+Korpus byl označkován automaticky, přičemž chybovost značkování je cca 11% (16% v SYN2015), tj. výrazně vyšší než v případě anotace morfologické. Chybovost je vyšší u méně častých a složitějších konstrukcí, nižší u jednodušších.
 Pro efektivní vyhledávání v rozsáhlém korpusu bylo nutno anotaci zjednodušit, vyhledávat lze tedy ve směru od závislého tokenu k řídícímu, ne naopak. Syntaktická anotace je podrobněji popsána v [[pojmy:syntakticka_analyza|samostatném hesle]]; zde se naučíme, jak se syntaktickou anotací pracovat. Všechny dotazy jsou založené na dotazovacím jazyce [[kurz:pokrocile_dotazy|CQL]]. Pro efektivní vyhledávání v rozsáhlém korpusu bylo nutno anotaci zjednodušit, vyhledávat lze tedy ve směru od závislého tokenu k řídícímu, ne naopak. Syntaktická anotace je podrobněji popsána v [[pojmy:syntakticka_analyza|samostatném hesle]]; zde se naučíme, jak se syntaktickou anotací pracovat. Všechny dotazy jsou založené na dotazovacím jazyce [[kurz:pokrocile_dotazy|CQL]].
  
Řádek 120: Řádek 121:
 Pokud chceme vyhledat slova, která mají vícenásobnou hodnotu atributu eparent, musí se v dotazu objevit znaky zpětné lomítko a svislice **%%"\|"%%**. Svislice proto, že vícenásobná hodnota tento znak obsahuje, zpětné lomítko proto, aby se vyhledal skutečně znak %%"|"%%, a nepoužil se způsobem obvyklým v regulárním výrazu, tj. jako alternativa mezi dvěma možnostmi. Dotaz pak bude vypadat třeba takto: Pokud chceme vyhledat slova, která mají vícenásobnou hodnotu atributu eparent, musí se v dotazu objevit znaky zpětné lomítko a svislice **%%"\|"%%**. Svislice proto, že vícenásobná hodnota tento znak obsahuje, zpětné lomítko proto, aby se vyhledal skutečně znak %%"|"%%, a nepoužil se způsobem obvyklým v regulárním výrazu, tj. jako alternativa mezi dvěma možnostmi. Dotaz pak bude vypadat třeba takto:
  
-[{{:kurz:kurz_synt_anot_ex7.png?direct&400|CQL dotaz pro nalezení vícenásobných hodnot FIXME}}]+[{{:kurz:kurz_synt_anot_ex7.png?direct&400|CQL dotaz pro nalezení vícenásobných hodnot }}]
  
 Obecný dotaz, který vyhledá všechna slova s multihodnotou atributu eparent, může být formulován takto: ''[eparent=%%".+\|.+"%%]'' Obecný dotaz, který vyhledá všechna slova s multihodnotou atributu eparent, může být formulován takto: ''[eparent=%%".+\|.+"%%]''
Řádek 167: Řádek 168:
 Kdybychom chtěli vyloučit shodné přívlastky (//**panem** Novákem//, //městem **Prahou**//), museli bychom ještě vyloučit případy, kdy se řídící a závislé substantivum shodují v pádě. Ztratili bychom tím však i část jiných výskytů. Stačí vyloučit instrumentál u "skutečného rodiče" pomocí ''ep_case!=%%"%%7%%"%%''. Kdybychom chtěli vyloučit shodné přívlastky (//**panem** Novákem//, //městem **Prahou**//), museli bychom ještě vyloučit případy, kdy se řídící a závislé substantivum shodují v pádě. Ztratili bychom tím však i část jiných výskytů. Stačí vyloučit instrumentál u "skutečného rodiče" pomocí ''ep_case!=%%"%%7%%"%%''.
  
-[{{:kurz:kurz_synt_analyza_ex10.png?direct&400|CQL dotaz na vyhledání substantivních přívlastků v prostém instrumentálu FIXME}}]+[{{:kurz:kurz_synt_analyza_ex10.png?direct&400|CQL dotaz na vyhledání substantivních přívlastků v prostém instrumentálu }}]
  
 Vyhledáme tak 72 000 výskytů přívlastků, nejčastěji závislých na slovech //cesta//, //jízda//, //společnost//, //zásobování// nebo //rána//. Vyhledáme tak 72 000 výskytů přívlastků, nejčastěji závislých na slovech //cesta//, //jízda//, //společnost//, //zásobování// nebo //rána//.
Řádek 175: Řádek 176:
 Můžeme třeba chtít zjistit, jaké typy neshodných substantivních přívlastků (z hlediska syntaktické struktury) rozvíjejí substantivum //zájem//. Nejprve tedy vyhledáme všechny substantivní přívlastky rozvíjející toto slovo (přímo či přes předložku) následujícím příkazem: ''[pos=%%"N"%% & afun=%%"Atr.*"%% & ep_lemma=%%"zájem"%%]'' Můžeme třeba chtít zjistit, jaké typy neshodných substantivních přívlastků (z hlediska syntaktické struktury) rozvíjejí substantivum //zájem//. Nejprve tedy vyhledáme všechny substantivní přívlastky rozvíjející toto slovo (přímo či přes předložku) následujícím příkazem: ''[pos=%%"N"%% & afun=%%"Atr.*"%% & ep_lemma=%%"zájem"%%]''
  
-[{{ :kurz:kurz_synt_analyza_ex13.png?direct&400|FIXME}}]+[{{ :kurz:kurz_synt_analyza_ex13.png?direct&400|}}]
  
 Připomínáme, že při vyhledávání s využitím syntaktických atributů je třeba postupovat od závislých slov k řídícím, opačně to není možné, proto hledáme všechna substantiva s funkcí přívlastku závislá na (nejbližším plnovýznamovém) slově //zájem//. Po vyhledání a zobrazení konkordance v korpusu si vytvoříme frekvenční distribuci (**[[manualy:kontext:frekvence#vlastni_nastaveni_frekvencni_distribuce|Frekvence → Vlastní]]**). Na úrovni **1.** zvolíme atribut **prep**, prokliknutím modrého tlačítka plus vlevo dole přidáme úroveň a na úrovni **2.** zvolíme atribut **case**. Pozici a (Node) začít od necháme beze změny. Připomínáme, že při vyhledávání s využitím syntaktických atributů je třeba postupovat od závislých slov k řídícím, opačně to není možné, proto hledáme všechna substantiva s funkcí přívlastku závislá na (nejbližším plnovýznamovém) slově //zájem//. Po vyhledání a zobrazení konkordance v korpusu si vytvoříme frekvenční distribuci (**[[manualy:kontext:frekvence#vlastni_nastaveni_frekvencni_distribuce|Frekvence → Vlastní]]**). Na úrovni **1.** zvolíme atribut **prep**, prokliknutím modrého tlačítka plus vlevo dole přidáme úroveň a na úrovni **2.** zvolíme atribut **case**. Pozici a (Node) začít od necháme beze změny.