zpwiki/pages/students/2018/martin_wencel/README.md

200 lines
6.6 KiB
Markdown

---
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.
- [Repo s výsledkami](https://git.kemt.fei.tuke.sk/mw223on/bp2020)
- [Preprecované repo](https://git.kemt.fei.tuke.sk/KEMT/bc_wencel2021)
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?
- Urobiť deployment s demom
Stretnutie 12.3.
Stav:
- Riešenie deploymentu. V základdnom modeli chýbajú priečinky tagger a parser, je potrebné modifikovať skript pre zostavenie slovenského modelu v repozitári spacy-skmodel.
- Práca na písomnej časti
Úlohy:
- Písať.
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ť.