Gramatický rámec - Grammatical Framework

Gramatický rámec (GF) je programovací jazyk pro psaní gramatik přirozených jazyků. GF je schopen analyzovat a generovat texty v několika jazycích současně, zatímco pracuje z jazykově nezávislé reprezentace významu. Gramatiky napsané v GF lze sestavit do různých formátů včetně JavaScript a Jáva a lze je znovu použít jako softwarové komponenty. Společník GF je Knihovna gramatik zdrojů GF, opakovaně použitelná knihovna pro řešení morfologie a syntaxe rostoucího počtu přirozených jazyků.

Samotný GF i knihovna gramatiky zdrojů GF jsou open-source. Typologicky je GF a funkční programovací jazyk. Matematicky jde o formálně-teoretický formální systém (a logický rámec abych byl přesný) na základě Martin-Löfova intuitivní teorie typů, s dalšími rozsudky šité na míru konkrétně oblasti lingvistiky.

Jazykové funkce

Tutorial

Cíl: napsat vícejazyčnou gramatiku pro vyjádření výroků o tom, jak se John a Mary navzájem milují.[2]

Abstrakt a konkrétní moduly

V GF jsou gramatiky rozděleny na dva typy modulů:

  • an abstraktní modul obsahující formuláře pro posouzení kočka a zábava.
    • kočka nebo deklarace kategorie seznam kategorií, tj. všechny možné typy stromů, které tam mohou být.
    • zábava nebo deklarace funkcí státní funkce a jejich typy, musí být implementovány konkrétními moduly (viz níže).
  • jeden nebo více beton moduly obsahující formuláře pro posouzení lincat a lin.
    • lincat nebo definice typu linearizace, říká, jaký typ objektů vytváří linearizace pro každou kategorii uvedenou v kočka.
    • lin nebo pravidla linearizace implementovat funkce deklarované v zábava. Říkají, jak jsou stromy linearizovány.

Zvažte následující:

Abstraktní syntaxe

 abstraktní Nula = {   kočka     S ; NP ; VP ; V2 ;   zábava     Před : NP -> VP -> S ;     Kompl : V2 -> NP -> VP ;     John, Mary : NP ;     Milovat : V2 ; }

Konkrétní syntax: angličtina

 beton ZeroEng z Nula = {   lincat     S, NP, VP, V2 = Str ;   lin     Před np vp = np ++ vp ;     Kompl v2 np = v2 ++ np ;     John = "John" ;     Mary = "Mary" ;     Milovat = "miluje" ; }

Oznámení: Str (seznam tokenů nebo „řetězec“) jako jediný typ linearizace.

Vytvoření vícejazyčné gramatiky

Na mnoho konkrétních syntaxí lze použít jednu abstraktní syntaxi, v našem případě jednu pro každý nový přirozený jazyk, který chceme přidat. Stejný systém stromů lze uvést:

  • různá slova
  • různé slovní objednávky
  • různé typy linearizace

Konkrétní syntax: francouzština

 beton ZeroFre z Nula = {   lincat     S, NP, VP, V2 = Str ;   lin     Před np vp = np ++ vp ;     Kompl v2 np = v2 ++ np ;     John = "Jean" ;     Mary = „Marie“ ;     Milovat = "aime" ; }

Překlady a vícejazyčné generace

Nyní můžeme pomocí naší gramatiky překládat fráze mezi francouzštinou a angličtinou. Následující příkazy lze provést v interaktivním prostředí GF.

Importujte mnoho gramatik se stejnou abstraktní syntaxí

> importovat ZeroEng.gf ZeroFre.gfJazyky: ZeroEng ZeroFre

Překlad: linearizace potrubí na analýzu

> analyzovat -lang=Eng „John miluje Mary“ | linearizovat -lang=FreJean aime Marie

Vícejazyčná generace: linearizace do všech jazyků

> generate_random | linearizovat -treebankZero: Pred Mary (Compl Love Mary)ZeroEng: Mary miluje MaryZeroFre: Marie aime Marie

Parametry, tabulky

Latina má případech: jmenovaný pro předmět, akuzativ pro předmět.

  • Ioannes Mariam amat „John-Nom miluje Mary-Acc“
  • Maria Ioannem amat „Mary-Nom miluje John-Acc“

Používáme a typ parametru pro případ (pouze 2 z 6 latinských případů). Typ linearizace NP je a typ stolu: z Případ na Str. Linearizace John je inflexní tabulka. Při použití NP jsme vybrat (!) příslušný případ z tabulky.

Konkrétní syntaxe: latinka

 beton ZeroLat z Nula = {   lincat     S, VP, V2 = Str ;     NP = Případ => Str ;   lin     Před np vp = np ! Jmen ++ vp ;     Kompl v2 np = np !  ++ v2 ;     John = stůl {Jmen => "Ioannes" ;  => "Ioannem"} ;     Mary = stůl {Jmen => "Maria" ;  => "Mariam"} ;     Milovat = "amat" ;   param     Případ = Jmen |  ; }

Diskontinuální složky, záznamy

V holandštině sloveso heeft lief je diskontinuální složka. Typ linearizace V2 je typ záznamu se dvěma pole. Linearizace Milovat je záznam. Hodnoty polí jsou vybírány podle projekce (.)

Konkrétní syntaxe: holandština

 beton ZeroDut z Nula = {   lincat     S, NP, VP = Str ;     V2 = {proti : Str ; p : Str} ;   lin     Před np vp = np ++ vp ;     Kompl v2 np = v2.proti ++ np ++ v2.p ;     John = „Jan“ ;     Mary = „Marie“ ;     Milovat = {proti = "heeft" ; p = "lež"} ; }

Variabilní a inherentní funkce, dohoda, podpora Unicode

Pro hebrejštinu má NP pohlaví inherentní funkce - pole v záznamu. VP má pohlaví jako své proměnná vlastnost - argument tabulky. V predikci VP obdrží pohlaví NP.

Konkrétní syntaxe: hebrejština

 beton ZeroHeb z Nula = {     vlajky kódování=utf8 ;   lincat     S = Str ;     NP = {s : Str ; G : Rod} ;     VP, V2 = Rod => Str ;   lin     Před np vp = np.s ++ vp ! np.G ;     Kompl v2 np = stůl {G => v2 ! G ++ „את“ ++ np.s} ;     John = {s = „ג׳ון“ ; G = Masc} ;     Mary = {s = „מרי“ ; G = Fem} ;     Milovat = stůl {Masc => „אוהב“ ; Fem => „אוהבת“} ;   param     Rod = Masc | Fem ; }

Vizualizace analyzovat stromy

GF má vestavěné funkce, které lze použít pro vizualizaci analyzovaných stromů a zarovnání slov.

Následující příkazy vygenerují parsovací stromy pro dané fráze a otevřou vytvořený obrázek PNG pomocí systému eog příkaz.

> analyzovat -lang=Eng „John miluje Mary“ | visualize_parse -view="eog"> analyzovat -lang=Dut „Jan heeft Marie lief“ | visualize_parse -view="eog"
Analyzovat strom pro „John miluje Mary“Analyzovat strom pro „Jan heeft Marie lief“

Generování zarovnání slova

  1. V jazycích L1 a L2: propojte každé slovo s jeho nejmenším podstromem.
  2. Odstraňte intervenující strom a kombinujte odkazy přímo z L1 na L2.

Obecně to dává zarovnání frází. Odkazy mohou být křížové, fráze mohou být přerušované. The align_words příkaz sleduje podobnou syntaxi:

> analyzovat -lang=Fre „Marie aime Jean“ | align_words -lang=Fre, Dut, Lat - pohled="eog"
Zarovnání slova pro „Marie aime Jean“ ve francouzštině, holandštině a latině

Knihovna zdrojů gramatiky

V aplikacích v přirozeném jazyce představují knihovny způsob, jak zvládnout tisíce podrobností týkajících se syntaxe, lexikonu a skloňování. Knihovna gramatiky zdrojů GF je standardní knihovna pro gramatický rámec. Pokrývá morfologii a základní syntaxi pro rostoucí počet jazyků, v současné době zahrnuje afrikánštinu, amharštinu (částečnou), arabštinu (částečnou), baskickou (částečnou), bulharskou, katalánskou, čínskou, českou (částečnou), dánskou, holandskou, Estonština, finština, francouzština, němčina, řečtina starověká (částečná), řecká moderna, hebrejština (fragmenty), hindština, maďarština (částečná), interlingua, italština, japonština, korejština (částečná), latina (částečná), lotyština, maltština, mongolština , Nepálština, norský bokmål, norský nynorsk, perština, polština, pandžábština, rumunština, ruština, sindština, slovenština (částečná), slovinština (částečná), somálština (částečná), španělština, svahilština (fragmenty), švédština, thajština, turečtina (fragmenty ) a Urdu. Kromě toho má 14 jazyků lexikon WordNet a rozšíření pro rozsáhlou analýzu.[3]

Úplnou dokumentaci API knihovny najdete na Synopse RGL strana. The Stavový dokument RGL udává jazyky, které jsou aktuálně k dispozici v Knihovně gramatik zdrojů GF, včetně jejich zralosti.

Použití GF

GF byl poprvé vytvořen v roce 1998 v Xerox Research Center Europe, Grenoble, v projektu Multilingual Document Authoring. Ve společnosti Xerox byl používán pro prototypy, včetně frází restaurací, databázového dotazovacího systému, formalizace pokynů výstražného systému s překlady do 5 jazyků a redakčního systému pro popis léků.

Pozdější projekty využívající GF a zahrnující třetí strany zahrnují:

  • REMU: Spolehlivá vícejazyčná digitální komunikace, projekt financovaný Švédskou radou pro výzkum v letech 2013–2017.
  • MOLTO: vícejazyčný online překlad, projekt EU, který probíhal v letech 2010–2013.
  • SALDO: Švédský morfologický slovník založený na pravidlech vyvinutých pro GF a Funkční morfologie
  • WebAlt: vícejazyčné generování matematických cvičení (komerční projekt)
  • TALK: vícejazyčné a multimodální mluvené dialogové systémy

Akademicky byl GF použit ve čtyřech disertačních pracích a jeho výsledkem bylo přibližně padesát vědeckých publikací (viz Seznam publikací GF ).

Komerčně GF používá řada společností v oblastech, jako je elektronický obchod, zdravotní péče a překlad formálních specifikací do přirozeného jazyka.[4]

Společenství

Seznam vývojářů

Aktivní skupina pro vývojáře i uživatele GF je umístěna na adrese https://groups.google.com/group/gf-dev

Letní školy

2020 - GF jako zdroj pro výpočetní právo (Singapur)

The sedmá letní škola GF, odloženo kvůli COVID-19, se bude konat v Singapuru. Spoluorganizováno se Singapurskou univerzitou managementu Centrum pro výpočetní právo bude letní škola věnována zvláštní pozornost výpočetnímu právu.

2018 - Šestá letní škola GF (Stellenbosch, Jižní Afrika)

The šestá letní škola GF byl první, který se konal mimo Evropu. Hlavními tématy letní školy byly zdroje afrického jazyka a rostoucí využití GF v komerčních aplikacích.

2017 - GF v plné jazykové technologii (Riga, Lotyšsko)

The pátá letní škola GF se konalo v lotyšské Rize. Tato letní škola měla řadu účastníků ze startupů, kteří představili případy průmyslového využití GF.

2016 - Letní škola strojového překladu na základě pravidel (Alicante, Španělsko)

GF byla jednou ze čtyř platforem vystupujících na Letní škola strojového překladu podle pravidel spolu s Apertiem, Matxinem a TectoMT.

2015 - Čtvrtá letní škola GF (Gozo, Malta)

The čtvrtá letní škola GF se konala na ostrově Gozo na Maltě. Stejně jako předchozí vydání v roce 2013 i tato letní škola představovala spolupráci s dalšími zdroji, jako jsou Apertium a FrameNet.

2013 - Škálování gramatických zdrojů (jezero Chiemsee, Německo)

The třetí letní škola GF, se konala na ostrově Frauenchiemsee v Bavorsku v Německu se zvláštním tématem „Škálování gramatických zdrojů“. Tato letní škola se zaměřila na rozšíření stávajících gramatik zdrojů s konečným cílem pracovat s jakýmkoli textem v podporovaných jazycích. Samozřejmou součástí této práce je přípona lexikonu, ale zajímavé byly i nové gramatické konstrukce. Zvláštní zájem byl o přenesení zdrojů z jiných přístupů s otevřeným zdrojovým kódem, jako jsou WordNets a Apertium, a o vzájemné umožnění snadného opětovného použití zdrojů GF v jiných přístupech.

2011 - Frontiers of Multilingual Technologies (Barcelona, ​​Španělsko)

The druhá letní škola GF, s titulky Hranice vícejazyčných technologií se konalo v roce 2011 ve španělské Barceloně. Sponzorovalo to CLT, Centrum pro jazykové technologie univerzity v Göteborgu, ve spolupráci s UPC, Universitat Politècnica de Catalunya. Škola se zabývala novými jazyky a také podporovala probíhající práci v těch jazycích, které jsou již ve výstavbě. Zvláště byly podporovány chybějící jazyky EU.

Škola začala dvoudenním výukovým programem GF, který sloužil těm, kteří měli zájem o seznámení s GF nebo o přehledu probíhajících prací.

Všechny výsledky letní školy jsou k dispozici jako open-source software vydaný pod licencí LGPL.

2009 - Letní škola GF (Göteborg, Švédsko)

Skupinová fotografie z letní školy GF 2009 ve švédském Göteborgu

The první letní škola GF se konalo v roce 2009 ve švédském Göteborgu. Jednalo se o společné úsilí o vytvoření gramatik nových jazyků v Grammatical Framework, GF. Tyto gramatiky byly přidány do Knihovny zdrojů, která dříve měla 12 jazyků. Přibližně 10 nových jazyků je již ve výstavbě a škola se zaměřila na 23 nových jazyků. Všechny výsledky letní školy byly zpřístupněny jako open-source software vydaný pod licencí LGPL.

Letní školu organizovala Skupina jazykových technologií na Katedra informatiky a výpočetní techniky. Tato skupina je součástí Centrum jazykových technologií, oblast zaměřená na výzkum University of Gothenburg.

Kód vytvořený účastníky školy je zpřístupněn v podadresáři úložiště GF darcs příspěvek / letní škola.

Reference

  1. ^ Ranta, Aarne (2011). Gramatický rámec: Programování s vícejazyčnými gramatikami. Publikace CSLI, Centrum pro studium jazyka a informací. str.8 –9. ISBN  978-1-57586-627-7.
  2. ^ Výukový program LREC 2010
  3. ^ https://github.com/GrammaticalFramework/gf-wordnet#readme
  4. ^ https://www.digitalgrammars.com/customers

externí odkazy