06 Porovnání NovaMorf s koncepcí Universal Dependencies (UD)

1 Úvodní přehled

Porovnání obou sad slovních druhů je ve zvláštní tabulce (POS.xlsx).

2 Kategorie a rysy

To, čemu my říkáme kategorie, se v UD nazývá feature, česky rys, takže to tak důsledně používáme, aby to bylo na první pohled jasné, o čem píšeme. Kategorie mají hodnoty, rysy mají values, takže tam se to nemusí dodržovat tak striktně.

V následujícím přehledu jsou jen ty rysy, které my nemáme nebo je řešíme jinak. Patří do dvou skupin:

Universal features = ty rysy, které jsou definovány pro všechny jazyky

● Tense

● VerbForm

● Voice

Language specific features = ty rysy, které jsou definovány jen pro některé jazyky, v tomto případě tedy pro češtinu, ale některé jsou platné i pro jiné jazyky

● Hyph

● Gender[psor]

● Number[psor]

● NameType

● NumForm

● NumValue

● PrepCase

● Style

Tense

Čas s hodnotami Fut, Past a Pres, přičemž Fut je relevantní pro VERB a AUX, druhé dvě hodnoty i pro ADJ. V datech je možno se setkat s hodnotou Past u přídavných jmen vzniklých z přechodníku minulého (odstoupivší apod.), a s hodnotou Pres u adjektiv z přechodníku přítomného (docházející, vedoucí, probíhající…). To zřejmě není úplně správně, přechodníky obecně nevyjadřují čas, ale spíš současnost nebo následnost s dějem vyjádřeným jiným slovesem. Podle znalce UD jde o záměrné zjednodušení.

VerbForm

Tenhle rys je hodně podobný naší kategorii Slovesný tvar (VRB), ale má trošku jiné hodnoty. Především není rozlišen přítomný a minulý přechodník. Ten se rozlišuje podle předchozího rysu Tense. Naše řešení pokládáme za lepší – viz též námitku u Tense.

Voice

Slovesný způsob. Pro češtinu má pouze dvě relevantní hodnoty, Act a Pass, které vyjadřujeme pomocí hodnot kategorie Slovesný tvar (VRB).

Všechny předchozí tři rysy se týkají sloves a my jsme je sloučili do jedné kategorie – Slovesný tvar (VRB).

Hyph

UD má rys Hyph s hodnotou Yes relevantní pro A. Tuto hodnotu má neúplné adjektivum následované pomlčkou a dalším adjektivem, přičemž to poslední je úplné, např. česko-německo-ruský. Jednotlivé pomlčky jsou tokeny, takže slovo z příkladu se tokenizuje do 5 tokenů. Tokeny „česko“ a „německo“ mají Hyph=Yes.

V datech (cs-ud-train.conllu) je i takto označené slovo bez následné pomlčky:

13

Česko

český

ADJ

A2--------A----




Hyph=Yes|Negative=Pos




15

amod








14

německého

německý

ADJ

AANS2----1A----




Case=Gen|Degree=Pos|Gender=Neut|Negative=Pos|Number=Sing




15

amod








V NovaMorf jsou neúplná adjektiva zahrnuta pod nový slovní druh POS=S (afixový segment). Toto řešení je obecnější, protože

● zahrnuje i postfixový segment

● tuto kategorii lze využít i pro jiný slovní druh než adjektivum (tří i čtyřkolka)

Dále by se dala mohli využít i u zkratek, tedy pro slovní tvary s ABR=+.

Bylo by možné zavést i kategorii Znaménko (HYP):[1]

Hodnoty:

+

pomlčka za prefixovým segmentem nebo


pomlčka nebo jiné znaménko (např. lomítko /) před postfixovým segmentem nebo


tečka za zkratkou

Další možností je mít víc hodnot, a to podle znaménka, které se použilo: tečka, pomlčka, lomítko, závorka...

A ještě jiným řešením by mohla být mutace, a to nejspíš globální, neboť se to týká takových forem, které se neohýbají, čili mají jen jeden tvar. V tom případě by se odlišilo:

česko-: G- od česko bez pomlčky, kde by se globální mutace neuváděla, nebo byla G0.

Podobně:

tvar á v malý/á by mělo G/:

malý: lemma(malý) = malý

/: lemma(/) = / & POS=Z & SUB=z (interpunkční znaménko)

á: lemma(á) = á & POS=S & SUB=e (ostatní afixový segment), G/

Otázka je, jestli to není už zbytečné. Nicméně to může být dobré třeba k tomu, že bychom rozlišili např. tyto dva případy (z Omnia Bohemica):

česko německá říkanka (G0, nebo HYP=-)

česko- i německojazyčný (G-, nebo HYP=+)

Otázka je, zda je třeba to rozlišovat, když tam ten spojovník stejně bude, ovšem jen jako zvl. token.

Rod a číslo posesora (Gender[psor], Number[psor])

Nemáme, UD mají.

NameType

To je sémantické rozlišení vlastních podstatných jmen, vlastně typ pojmenované entity. Vychází z MorfFlexu, může nabývat více hodnot, resp. některé hodnoty jsou vícehodnotové. My nemáme slovní druh vlastní jméno (PROPN). V jedné verzi jsme to chtěli mít jako poddruh podstatných (možná i přídavných přivlastňovacích) jmen, ale pak jsme od toho upustili. První námitka je formální – poddruhy vyjadřují něco jiného, např. už vlastnost být přivlastňovací je poddruhem. A potom to není ani zdaleka morfologická vlastnost.

NumForm

má hodnoty Digit, Roman a Word. Jde o rozdílné zápisy čísel. V NovaMorf jsme to neřešili.

Souvisí to i s lemmatizací čísel. Je otázkou, zda lemmatizovat všechny způsoby zápisu čísla stejně, a jak vlastně?

lem(3), lem(tři), lem(III)

Nejpřirozenějším způsobem je zahrnout všechny tři varianty zápisu do vícenásobného lemmatu. V tom případě by bylo třeba ty způsoby odlišit pomocí globální mutace. Po řadě by mohla být: G1 (Digit), Gw (Word), GR (Roman).

NumValue

Hodnoty 1 pro jedničku, 2 pro dvojku a 3 pro trojku a čtyřku. Pro ostatní čísla je nerelevantní. Relevantní pro A v případě jedni, jedněch... a pro C pro 1,2,3,4, ale v příkladech je i tisíc. Prý se to může hodit při následné syntaktické analýze.

PrepCase

Relevantní pro P – odlišuje tvary osobních zájmen 3. osoby, které po předložce začínají n (např. nich) na rozdíl od bezpředložkových začínajících j (např. jich). My to řešíme pomocí Flektivní mutace.

Style

Sémantický příznak archaičnosti apod. Nemáme a nechceme. Řešíme obecněji pomocí mutací.

3 Zájmena

Ve zvláštní tabulce (zajmena.xlsx) je barevně znázorněna korespondence mezi rysem PronType a kategorií Deixe.

Rys PronType je určen také pro zájmenné číslovky (kolik, tolik, několik, mnoho, málo, značka DET; kolikátý, tolikátý, několikátý, kolikerý, tolikerý, několikerý taky DET; kolikrát, tolikrát, několikrát značka ADV) a pro zájmenná příslovce (kde, kam, kdy, jak, někde, nikde...).

Naše kategorie Poddruh (SUB) je zohledněna v UD jen částečně. UD zavádějí dva zvláštní rysy, Poss a Reflex:

Poss

- binární rys s hodnotou Yes, relevantní pro pronouns, determiners or adjectives. Hodnota + znamená, že zájmeno je přivlastňovací.

Podle příkladů jsou takto označena ta naše přivlastňovací zájmena, která mají deixi určitou (můj, jeho,...), vztažnou (jejíž, jehož, jejichž) nebo reflexivní (svůj). Ostatní takto označeny nejsou – viz příklady z označkovaných dat v souboru cs-ud-train.conllu:

něčím

něčí

DET

PZZS7----------

Case=Ins|Gender=Masc,Neut|Number=Sing|PronType=Ind

něčích

něčí

DET

PZXP2----------

Case=Gen|Number=Plur|PronType=Ind

V datech nejsou žádné tvary lemmatu ničí ani čí. Ty by taky měly mít Poss=Yes.

Reflex

To je také binární rys s hodnotou Yes, relevantní pro pronouns and determiners. Patří sem osobní a přivlastňovací zájmena si, se, sebe,..., svůj.

4 Možnosti převodu morfologie z NovaMorf do UD

Vzhledem k tomu, že UD jsou jednodušší, bude převod z NovaMorf do UD poměrně snadný. Opačně to obecně nepůjde, ale to se neočekává.

Možnosti převodu probereme postupně podle slovních druhů NovaMorf (dále jen NM)

POS=N

Definice podstatných jmen vypadají stejně, jediným rozdílem je slovní druh PROPN, tedy vlastní jména v UD. Ta v NM označena nemáme, ale dají se velmi snadno odlišit velkým písmenem na začátku lemmatu. Převod by tedy mohl být snadný.

POS=A

Definice adjektiv jsou v obou systémech stejné.

POS=P

V UD jsou naše zájmena rozmístěna mezi zájmena (PRON), adjektiva (ADJ) a determiners (DET).

Tabulka (zajmena.xlsx) jasně vymezuje, kam které (naše) zájmeno patří v UD.

POS=C

Definice číslovek je v UD výrazně jednodušší než v NM. Číslovky se zařazují ke slovním druhům především podle typu flexe, tedy naše číslovky najdeme mezi adjektivy (první), substantivy (třetina) i adverbii (natřikrát, potřetí). Vymezení poddruhu a deixe číslovek v NM určí, do kterého slovního druhu daná číslovka patří v UD.

POS=V

Definice sloves je v UD také velmi podobná. Jediným větším rozdílem je slovní druh AUX, do kterého UD ukládá pomocná slova, v případě češtiny jen pomocná slovesa být, bývat, bývávat. Lze je zadat výčtem, tedy je možno je v UD správně odlišit od běžných sloves (VERB).

POS=D

Definice adverbií se neliší.

POS=R

Všechny předložky jsou v UD značeny jako adposition (ADP), zřejmě kvůli kompatibilitě s jinými jazyky. Převod je tedy snadný.

POS=J

Spojky má UD rozlišeny na souřadicí (CCONJ) a podřadicí (SCONJ) na úrovni slovního druhu, NM na úrovni poddruhu. Převod bude snadný.

POS=I

Stejné definice u obou systémů.

POS=T

Slovní druh částice je obecně velmi obtížně definovatelný. Z dokumentace si nejsme jisti, zda PART skutečně obsahuje naše částice. Vzhledem k tomu, že částice jsou neohebné a jejich příslušnost ke slovnímu druhu se individuálně zadává ručně pomocí slovníku, bude možné částice namapovat vzájemně podle slovníků.

POS=Z

Symboly jsou v UD rozděleny do dvou slovních druhů – PUNCT a SYM (symbol). Obě skupiny jsou zadány výčtem, takže mapování nebude problematické.

POS=S

Afixový segment v UD definovaný není. Místo toho mají UD kategorii HYPH, která je relevantní pro adjektiva a pro prefixový segment má hodnotu +. Naše sufixové segmenty nemají v UD žádný protějšek, tedy je nebude možno jednoduše v UD označkovat. Zatím se sufixové segmenty v českých textech neoznačovaly vůbec, takže se pokusíme naopak činovníky v UD inspirovat.

POS=F

Cizí slova mají UD vyznačeno jako kategorii Foreign, která je relevantní pro všechny slovní druhy. V tomto případě nebude možno určit slovní druh v UD, protože ho v NM záměrně nerozlišujeme. Důvodem je, že to většinou nedává smysl. Podle dosavadních dat v UD to ale vypadá, že neuděláme chybu, když budeme slovní druh NM cizí slovo převádět vždy na NOUN (substantivum) a přiřadíme mu rys Foreign = Foreign.

Agregáty

Agregáty se v NM dělí do podrobnějších typů, což UD nedělají.

Koncept vícenásobné lemmatizace spolu s vícenásobnou morfologickou značkou je ale pro oba systémy velmi podobný, takže při převodu by bylo třeba zohlednit jen případné drobné rozdíly ve značení a tokenizaci.



[1] Je to jen výhledové, zatím nezavedeno.