.. | ||
README.md |
title | published | taxonomy | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Martin Jancura | true |
|
Martin Jancura
Rok začiatku štúdia: 2017
Bakalársky projekt 2020
Názov: Webová aplikácia pre demonštráciu spracovania prirodzeného jazyka
- Vypracujte teoretický úvod do strojového prekladu. Vypracujte prehľad komerčných služieb pre automatický preklad.
- Podrobne vysvetlite zvolenú metódu strojového prekladu.
- Vytvorte demonštračnú webovú aplikáciu v Javascripte pomocou ktorej je možné vyskúšať viaceré služby pre strojový preklad.
- Navrhnite možné zlepšenia Vami vytvorenej aplikácie.
Konzultácie sa budú konať osobne alebo cez Teams minimálne raz za dva týždne, menej ako 6 konzultácií za semester je dôvodom pre zníženie hodnotenia semester je dôvodom pre zníženie hodnotenia alebo neudelenie zápočtu. Odporúčaný čas konzultácie je piatok.
Možné backendy:
- https://opennmt.net/OpenNMT/installation/
- FairSeq
- Dokumentácia k OpenNMT-py REST servru
- [Zdrojové kódy k REST Servru](https://github.com/OpenNMT/OpenNMT-py/blob/master/onmt/bin/server.py|
Zásobník úloh:
- Zapisať človekom urobený preklad do databázy.
- Vyrobiť deployment a zverejniť stránku s demom.
- pripraviť modul s vlastným prekladom.
- Vyhodnotiť preklad metódou BLEU
Poznámka vedúceho 2.2
Trénovanie pomocou OpenNMT-py na servri idoc:
conda create -n openmnt
conda activate opennmt
conda install pytorch=1.6.0 torchvision torchaudio cudatoolkit=9.2 -c pytorch
pip install OpenNMT-py
https://opennmt.net/OpenNMT-py/quickstart.html
Stretnutie 29.1.2021
Stav:
- Práca na prezentácii.
- Dohoda na zadaní.
Úlohy:
- Dorobiť REST API pomocou nmt-wizard-docker - pre vedúceho.
Stretnutie 26.1.2021
Stav:
- Práca na textovej časti
- Práca na prezentácii
- Urobený tutoriál OpenNMP-py, natrénovaný model na preklad z angličtiny do nemčiny.
Úlohy:
- Pracovať na teoretickej časti - doplňte aj o metódach vyhodnotenia BLEU
- Dokončiť prezentáciu
- Spojiť webovú aplikáciu s vlastným rest API.
- Pozrieť si výstupy práce P. Pavlišin
stretnutie 18.12.2020:
Stav:
- inštalácia OpenNMT-py: zlyhala proavdepodobne kvôli konfigurácii CUDA
- práca na písomnej časti pokračuje
- kompletne prerobené kódy pre preklad (frontend aj backend) pomocou Microsoft a IBM. Aplikácia používa Express.JS
- kódy sú dostupné na https://git.kemt.fei.tuke.sk/mj130zg/BP2021
Virtuálne stretnutie 4.12.2020:
Stav:
- Inštalácia OpenNMT-py. Tutoriál zatiaľ nefunguje, pravdepodobne kvôli chybne nainštalovanej knižnici numpy.
Úlohy na ďalšie stretnutie:
- Vypracujte písomný prehľad metód strojového prekladu pomocou neurónových sietí. Prehľad by mal obsahovať odkazy na aktuálnu odbornú literatúru - knihy a články. V prehľade vysvetlite aj čo je to architektúra seq2seq, (endkóder-dekóder). Nájdite odborné články o opennmt, prečítajte si ich a napíšte čo ste sa dozvedeli.
- (vedúci) urobiť deployment openmnt-py (flask,wsgi).
- Pokračujte v tutoriáli openmt-py. Pre inštaláciu závislostí (pytorch, numpy, cuda) použite systém Anaconda.
Virtuálne stretnutie 6.11.2020:
Stav:
Práca na písomnej časti.
Úlohy do ďalšieho stretnutia:
- Pohľadať takú knižnicu, kde vieme využiť vlastný preklad. Skúste si nainštalovať OpenNMT.
- Prejdite si tutoriál https://github.com/OpenNMT/OpenNMT-py#quickstart alebo podobný.
- Navrhnite ako prepojiť frontend a backend.
Virtuálne stretnutie 23.10.2020:
Stav:
- Urobený frontend pre komunikáciu s Microsof Translation API, využíva Axios a Vanilla Javascriupt
Úlohy do ďalšieho stretnutia:
- Pohľadať takú knižnicu, kde vieme využiť vlastný preklad. Skúste si nainštalovať OpenNMT.
- Zistiť čo znamená politika CORS.
- Pokračujte v písaní práce, pridajte časť o strojovom preklade.. Prečítajte si články https://opennmt.net/OpenNMT/references/ a urobte si poznámky. Do poznámky dajte bibliografický odkaz a čo ste sa dozvedeli z článku.
Virtuálne stretnutie 16.10:
Stav:
- Začiatok práce na textovej časti, napísaný úvod
- Vytvorený repozitár https://git.kemt.fei.tuke.sk/mj130zg/BP2021
- Vytvorené poznámky ku existujúcemu JS api
- Na ďalšie práce použiť IBM Watson na strane frontendu, ale pripraviť sa na vlastný backend.
Do ďalšieho stretnutia:
- Prezentovať frontend s IBM Watson alebo Microsoft, kódy dajte do repozitára.
- Pohľadať takú knižnicu, kde vieme využiť vlastný preklad.
- Zistiť čo znamená politika CORS.
- Pokračujte v písaní práce, pridajte časť o strojovom preklade.
Virtuálne stretnutie 9.10:
Do ďalšieho stretnutia:
-
Pripraviť si poznámky o tom čo ste sa dozvedeli o NLP na odovzdanie na kontrolu.
-
Vytvoriť repozitár na GITe kde sa budú dávať zdrojové kódy. (adresár backend, adresár frontend, súbor README).
-
Do súboru README napíšte možné API ktoré ste našli aj s krátkym opisom.
-
V prvej fáze môžete využiť existujúce Cloud API.
Stav:
- rozhodli sme sa pre demonštráciu strojového prekladu.
- našli ste niekoľko API na strojový preklad (platené, alebo obmedzené).
Stretnutie 30.9.
Nápady na úlohu NLP:
-
demo Spacy
-
strojový preklad pomocou machine-translator
-
chatbot napr. chatbot
-
Niektorú knižnicu z blogu
-
vyhľadajte natural language processing for javascript.
-
Na ďalšom stretnutí si vyberieme konkrétnu tému NLP.
-
Pripraviť si poznámky o tom čo ste sa dozvedeli o NLP.