--- title: Martin Wencel published: true taxonomy: category: [bp2021] tag: [demo,nlp,spacy] author: Daniel Hladek --- # Martin Wencel Rok začiatku štúdia: 2018 Podmienkou pre získanie zápočtu je účasť na konzultácii min. raz za 2 týždne. Menej ako 6 konzultácií za semester je dôvod pre zníženie hodnotenia alebo neudelenie zápočtu. Komunikácia je možná aj cez [MS Teams](https://teams.microsoft.com/l/team/19%3aa8596a401a3842e5b91ac918a2a0afb1%40thread.tacv2/conversations?groupId=4fc0c627-d424-4587-b73a-2e47509862e9&tenantId=1c9f27ef-fee6-45f4-9a64-255a8c8e25a5). Konzultačné hodiny sú v piatok 9:20-14:00. ## Bakalárska práca 2020 Názov: Demonštrácia spracovania slovenského prirodzeného jazyka pomocou knižnice Spacy Návrh na zadanie: 1. Vypracujte teoretický úvod do spracovania prirodzeného slovenského jazyka. Vysvetlite, čo to je parsing, morfologická analýza a rozpoznávanie pomenovaných entít a akými metódami sa vykonávajú. 1. Podrobne vysvetlite, ako pracuje parsing, morfologická analýza a rozpoznávanie pomenovaných entít v knižnici Spacy. 1. Vytvorte demonštračnú webovú aplikáciu pomocou ktorej je možné vyskúšať spracovanie slovenského aj anglického jazyka. 1. Navrhnite možné zlepšenia Vami vytvorenej aplikácie. Zásobník úloh: - Vymyslite a doplňte REST API pre služby knižnice Spacy. Cieľ je vedieť využiť Spacy pomocou curl, alebo pythonu cez HTTP na spracovane textových súborov. - Vymyslieť ako spracovať väčšie textové súbory pomocou REST API alebo podobného? Stretnutie 26.2. Stav: - Dokončená a fungujúca aplikácia - Písomná časť je rozpracovaná vo forme útržkovitých poznámok a nadpisov sekcií. Úlohy: - vytvoriť súvislý text. - V texte uviesť odkazy na odbornú literatúru. ## Bakalársky projekt 2020 Cieľ: - Vytvoriť demonštráciu spracovania slovenského jazyka pomocou knižnice spacy Výstupy: - Aplikácia vie robiť pomocou spacy tokenizácia, morfologická analýza, parsing a named entity recognition pre slovenčinu a angličtinu. - [Zdrojové kódy](https://git.kemt.fei.tuke.sk/mw223on/bp2020/) Zásobník úloh: - Vymyslite a doplňte REST API pre služby knižnice Spacy. Cieľ je vedieť využiť Spacy pomocou curl, alebo pythonu cez HTTP na spracovane textových súborov. - Vymyslieť ako spracovať väčšie textové súbory pomocou REST API alebo podobného? Stretnutie 2.2.: - Práca na frontende - Dorobená slovenčina - prerobené spacy explain. Vysvetľuje tagy. - Urobené rozhranie na spracovanie súborov. Do ďalšieho stretnutia: - Skompletizovať a vykonať deployment. Virtuálne stretnutie 15.12.: Stav: - Pripravený Docker deployment. - Aplikácia funguje pre anglický jazyk. - Práca na písomnej časti Do ďalšieho stretnutia: - Dorobiť slovenčinu - Zlepšiť dizajn Virtuálne stretnutie 27.11.: Stav: - Aplikácia prerobená do Flask-u. [Zdrojové kódy](https://git.kemt.fei.tuke.sk/mw223on/bp2020/src/branch/master) sú na Gite. Úlohy na ďalšie stretnutie: - Pokračovať na práci na aplikácii. - Pripraviť deployment. Vytvoriť Python balíček (setup.py, requirements.txt, MANIFEST.in). - Pripraviť Dockerfile. Môžete použiť obraz tiangolo/meinheld-gunicorn-flask:python3.7 - Pokračovať v písaní. Virtuálne stretnutie 20.11.: Stav: - práca na písomnej časti - komplet prerobený frontend (css a html) a backend (hug). Úlohy na ďalšie stretnutie: - dať kódy na GIT. - prepísať frontend a backend do Flask, Virtuálne stretnutie 30.10.: Stav: - Modifikovaná existujúca aplikácia "spacy-streamlit", zdrojové kóódy sú na GITe podľa pokynov z minulého stretnutia. - Obsahuje aj formulár, neobsahuje REST API Úlohy do ďalšieho stretnutia: - Pokračujte v písaní. Prečítajte si odborné články na tému "dependency parsing" a vypracujte poznámky čo ste sa dozvedeli. Poznačte si zdroj. - Pokkračujte v práci na demonštračnej webovej aplikácii. Virtuálne stretnutie 19.10.: Stav: - Vypracované a odovzdané poznámky k bakalárskej práci, obsahujú výpisy z literatúry. - Vytvorený repozitár. https://git.kemt.fei.tuke.sk/mw223on/bp2020 - Nainštalovaný a spustený slovenský Spacy model. - Nainštalované Spacy REST Api https://github.com/explosion/spacy-services - Vyskúšané demo Display so slovenským modelom Úlohy na ďalšie stretnutie: - Pripravte webovú aplikáciu ktorá bude prezentovať rozpoznávanie závislostí a pomenovaných entít v slovenskom jayzyku. Mala by sa skladať z frontentu a backendu. - zapíšte potrebné Python balíčky do súboru "requirements.txt" - Vytvorte skript na inštaláciu aplikácie pomocou pip. - Vytvorte skript pre spustenie backendu aj frontendu. Výsledky dajte do repozitára. - Vytvorte návrh na frontend (HTML + CSS). - Pozrite na zdrojové kódy Spacy a zistite, čo presne robí príkaz display.serve - Vysledky dajte do repozitára. Virtuálne stretnutie 9.10. Stav: - nainštalovaná anaconda, docker aj linux, spacy, latex - prečítané niečo o NLP (Speech and Language Processing, Jurafsky and Martin). Blogy a záverečné práce. - vypracované poznámky Úlohy do ďalšieho stretnutia: - odovzdať vypracované poznámky do Moodlu. - nainštalujte a spustite slovenský [spacy model](https://git.kemt.fei.tuke.sk/dano/spacy-skmodel) - Pozrite si , nainštalujte a spustite https://github.com/explosion/spacy-services - Skúste to upraviť tak, aby displacy využíval slovenský model - Vyskúšajte komunikovať so servrom pomocou CURL - študujte jazyk Python a web framework hug Stretnutie 1.10.2O20: Na štúdium: - https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics - https://student.kemt.fei.tuke.sk/predmety/zct - Dive into Python 3 Na vypracovanie: - Prečítajte si čo je to "natural language processing" a urobte si poznámky. Do poznámok si zapíšte čo ste sa dozvedeli a zdroj. - Nainštalujte si prostredie Anaconda - Nainštalujte si Docker - Skúste rozbehať demo z https://github.com/jgontrum/spacy-api-docker Na zlepšenie: - Chceme vybrať metódu NLP ktorej sa budeme venovať. - chceme vybrať knižnicu alebo demo ktoré budeme prezentovať.