zpwiki/pages/students/2017/martin_jancura
2021-02-02 16:36:10 +00:00
..
README.md Update 'pages/students/2017/martin_jancura/README.md' 2021-02-02 16:36:10 +00:00

title published taxonomy
Martin Jancura true
category tag author
bp2021
opennmt
translation
demo
nlp
Daniel Hladek

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

  1. Vypracujte teoretický úvod do strojového prekladu. Vypracujte prehľad komerčných služieb pre automatický preklad.
  2. Podrobne vysvetlite zvolenú metódu strojového prekladu.
  3. Vytvorte demonštračnú webovú aplikáciu v Javascripte pomocou ktorej je možné vyskúšať viaceré služby pre strojový preklad.
  4. 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:

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:

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.