230 likes | 697 Views
GATE. General Architecture for Text Engineering. Čo je GATE?. IDE : GATE Developer : V ývojové prostredie komponentov na spracovanie textu s množstvom pluginov ( http://gate.ac.uk/gate/doc/plugins.html ) W eb aplikácia : GATE Teamware : zdieľané anotačné prostredie
E N D
GATE General Architecture for Text Engineering
Čo je GATE? • IDE: GATE Developer: Vývojovéprostrediekomponentovnaspracovanietextusmnožstvompluginov(http://gate.ac.uk/gate/doc/plugins.html) • Webaplikácia: GATE Teamware: zdieľanéanotačnéprostredie • Framework: GATE Embedded: knižnicaoptimalizovanánapoužitievrozličnýchaplikáciách, open source, 100% JAVA, obsahujevšetkyfunkcieIDE • Ďalšiesystémyvychádzajúcez GATE: http://gate.ac.uk/family/ • Stiahnutie: http://gate.ac.uk/download/
GATE Developer • Vývojovéprostredienatvorbukomponentovnaspracovanietextu • GATE komponent je Java Bean + XML konfiguráciou • CREOLE (Collection of RE-usable Objects for Language Engineering) –vstavanékomponenty (tokenizátory, gazetteer, POS tagger, …) • Komponentysaspájajú do pluginov(napr. ANNIE – IE systém) • Typykomponentov: • Language resources • Slovníky, korpus, ontológie, … • Processing resources • manipuláciasanotáciami • Parsery, taggery, … • Visual resources • Vizualizačné a editovaciekomponenty do GUI
GATE Developer • Pluginy sa spravujú v CREOLE plugin manažéri (load/unload):
GATE Developer Language resources (zdroje dát) • Hlavným zdrojom je Document • Document = text + anotácie + vlastnosti (features) • Kolekcia dokumentov –Corpus • Anotácie – lingvistické informácie dokumentu (viaceré množiny an.) • Vlastnosti – každá anotácia môže mať vlastnosti (kľúč => hodnota) Vlastnosti (features)
GATE Developer • Tagy HTML/XML dokumentov sa konvertujú na anotácie a sú k dispozícii v anotačnej množine “Original markups”
GATE Developer Processing resources (PR) • algoritmynaspracovaniedokumentov • Jednoduché PR • Document reset –vymazanieanotácií • Tokeniser–tokenizátor (slová, čísla, …) • Sentence splitter –identifikujezačiatky a konceviet • ANNIE • KomplexnýpluginzloženýzviacerýchPR komponentov • Tokeniser, Gazetteer, Sentence Splitter,POS Tagger (slovesá, podst. m., …),JAPE gramatiky (NE Transducer),OrthoMatcher (koreferencia–osoby, firmy)
GATE Developer Processing resources (PR) • Ďalšie PR (cez Manage CREOLE plugins) • Co-reference (tá istá entita má viacero názvov) • Machine learning (z ručne anotovaných dokumentov) • Ontológie (OntoGazetteer, OntoRootGazetteer) • Komponenty na integráciu s 3rd party nástrojmi • …
GATE Developer JAPE gramatiky • Regulárne výrazynad anotáciamia ich vlastnosťami • Na spustenie gra-matiky sa používaJAPE Transducerkomponent • Ukážka JAPE pra-vidla na extrakciuemailovej adresy
Tutoriál (VlastnéPR GATE 5.2.1) • Spustíme GATE Developer • Tools -> BootStrap Wizard Vytvoríme si komponent,ktorý spočíta podst. menávo vete a ich počet pridádo anotácie typu “Sentence”ako vlastnosť “nounCount”
Tutoriál (Vlastné PR) • GATE Developer vygenerujekostruzdrojovýchkódovnašeho PR vozvolenomadresári
Tutoriál (Vlastné PR) • V adresárisvygenerovanýmizdrojovýmikódmitrebaskontrolovať a prípadneupraviťcestuku GATE adresáruvbuild.xml(gate.home).
Tutoriál (Vlastné PR) • Vytvorímeprojektv Eclipse (Java Project from Existing Ant Buildfile)
Tutoriál (Vlastné PR) • Otvorímezdrojovýkód (NounCounter.java) a zmeníme za V ďalšomkrokuimplementujemehlavnúmetódupočítadlapodstatných mien vovetách a rozšírimeanotáciutypu “Sentence” ovlastnosť “nounCount”.
Tutoriál (Vlastné PR) 7. Do triedynašeho PR pridámemetódu execute, ktorásaautomatickyzavoláprivykonávaní PR. Z východzejanotačnejmnožiny (Default) vytiahnemevšetkyvety. Každúvetuspracujemeposlovách a počítamepodst. m. (NN)
Tutoriál (Vlastné PR) • Naše PR skompilujeme a exportujemeakonounCounter.jar do adresáraprojektu, kdesanachádzaajkonfiguračnýsúbor PR creole.xml. • Vrátimesa GATE Developer prostredia a otvoríme CREOLE pluginmanažéra (slajd 4). Tupridámenáš PR (Add a new CREOLE repository) a nalistujemeadresárnašeho PR snounCounter.jar. Po načítanísanámnáš PR zobrazívzoznamepluginov, kdepriňom a zaškrtnemevoľbu “Load now”.
Tutoriál (Vlastné PR) • Načítameaplikáciu ANNIE (1), vytvorenímeinštanciunašeho PR pluginu (2) a pridáme ho do načítanejapplikácie ANNIE (3). Ďalejužlenvytvorímekorpusdokumentov a spustímenadním ANNIE snašímkomponentom. 1 2 3
Tutoriál (Vlastné PR) 11.Výsledok
Tutoriál (GATE v aplikácii) • V GATE Developeri si vytvoríme aplikáciu (napr. načítame plugin ANNIE) • Aplikáciu uložíme ako annie.xgapp do adresára ./app v novovytvorenom Java projekte
Tutoriál (GATE v aplikácii) 3. Do build path Java projektu pridáme knižnice z distribúcie GATE(http://gate.ac.uk/download/index.html): • ./bin/gate.jar a všetky knižnice z adresára ./lib/ (všetky možno nebudú potrebné, ale takto je to jednoduchšie) 4. V našej aplikácii ako prvé nasta-víme cestu ku GATE distribúcii(gate.home) a potom inicializuje-me GATE (Gate.init())
Tutoriál (GATE v aplikácii) • Našu GATE aplikáciu “annie.xgapp” načítame pomocou triedy PersistenceManager, nastavíme jej korpus, ktorý ma spracovať (setCorpus()) a spustíme (execute). Otvorí sa nám okno GATE Developer, kde si môžeme pozrieť anotované dokumenty korpusu. K anotáciam dokumentu v príklade môžeme pristupovať cez jeho inštanciu “document”. • K anotáciám v aplikácii pristupujeme nasledovne:
Ďalšie info Hlavná stránka http://gate.ac.uk/ Video tutoriály http://gate.ac.uk/demos/movies.html Video kurz http://gate.ac.uk/demos/gate-seminar.html