zpwiki/pages/students/2018/ondrej_megela
2022-06-29 08:23:26 +00:00
..
README.md Update 'pages/students/2018/ondrej_megela/README.md' 2022-06-29 08:23:26 +00:00

title published taxonomy
Ondrej Megela true
category tag author
bp2021
dp2023
nlp
fairseq
lm
bert
question-answer
qa
Daniel Hladek

Ondrej Megela

Začiatok štúdia: 2018

Súvisiace stránky:

Diplomový projekt 1 2022

Cieľ:

  • Vytvoriť a vyhodnotiť generatívny model slovenského jazyka.
  • Navrhnúť a vytvoriť overovaciu množinu pre slovenské generatívne modely.

Stretnutie 29.6.

  • Vyskúšané dosadenie slovenského GPT modelu do kódu patil-suraj. Nefunguje - nepasuje konfigurácia.
  • Vyskúšané nasadenie Multilingual T5. Podarilo sa ho nahrať. Chyba "index Out Of Range".

Stretnutie 8.4.

Prezreté sú tri repozitáre. kompatibilné s HF Transformers

https://github.com/p208p2002/Transformer-QG-on-SQuAD#seq2seq-lm

  • Používa modely GPT-2, BART,T5, upravený „BERT“
  • vstup ide odsek + zvýraznená odpoveď pomocou tokenu [HL]

Haystack deepset QG pipeline

https://github.com/patil-suraj/question_generation

  • Využíva 2 formáty vstupu:
  • Oddelenie odpovede pomocou SEP, odpoveď je osobitne
    • 42 [SEP] 42 is the answer to life, the universe and everything. Vyznačenie odpovede pomocou HL priamo v kontexte.
    • <hl> 42 <hl> is the answer to life, the universe and everything.

3 možnosti definície úlohy generovanie otázok :

  • QG vstup je kontext a odpoveď, výstup je otázka
  • Multitask QA- QG: Deje sa vo viacerých krokoch: vyhľadanie odpovede (zaujímavej časti) v texte, generovanie otazky na zaklade odpovede, spätné vyhľadanie odpovede
  • End-to-End QG Generovanie otázok len na zaklade kontextu, vstup je kontext, výstup je otázka.

Úlohy:

  • Začneme s prístupom "End-To-End" - generovanie otázok na základe zadaného odseku.
  • Rozbehnite skript, ktorý naučí generatívny model generovať otázky na základe zadaného odseku. Ako vstup použite sk-quad.

Zásobník úloh:

  • Navrhnite a implementujte spôsob vyhľadanie zaujímavej časti odseku - kandidáta na možnú odpoveď.

11.3.

  • Vyskúšaný GPT na cloab, zatiaľ nefunguje kvôli pamäti.

Možné spôsoby využitia generatívnych modelov:

  • mnli - multi natural language inference - textual entailment and contradiction, zero shot classification
  • strojový preklad
  • sumarizácia, conditional generation - asi nepotrebuje finetinung
  • konverzačné systémy - generovanie odpovede na otázku
  • generovanie otázok ku zadanému odseku (reverse squad)

Možné spôsoby vytvorenia overovacej množiny:

  • Využitie slovenského squadu pre úlohu generovania otázok.
  • Strojový preklad existujúceho jazykového zdroja do slovenčiny.
  • Pokúsime sa vytvoriť vlastnú dátovú množinu od začiatku. Pre ktorú úlohu?
  • Na overenie použijeme existujúci paralelný korpus - to si vyžaduje fine-tuning pre strojový preklad.
  • Strojovo vytvoríme overovaciu databázu pre úlohu sumarizácie. Zoberieme novinové články alebo vedecké články alebo záverečné práce ktoré majú uvedený abstrakt.

Úlohy:

  • vyskúšať menší GPT model
  • Zistit a stručne opísať, ako funguje automatické generovanie otázok vo formáte squad. Ako neurónka berie do úvahy odpoveď? Zisitiť ako vyznačiť zaujímavé časti odseku (NER, parser, sumarizácia..) - ako vygenerovať odpoveď.
  • Porozmýšľať, ako použiť na túto úlohu Transformers.

25.2.

  • Vytvorený textový report, kde je urobený prehľad metód vyhodnotenia a niekoľkých testovacích korpusov a benchmarkov. Rouge je používaná metrika.

Úlohy:

  • Vypracovať prehľad generatívnych jazykových modelov
  • Vyskúšať slovenský GPT model.
  • Navrhnúť ako dotrénovať model na úlohu sumarizácie.

Zásobník úloh:

  • Vytvoriť model pre generovanie faktických otázok ku zadanému paragrahu.. Môžeme využiť slovenský squad.
  • Vytvoriť model pre sumarizáciu novinových článkov.
  • Vytvoriť databázu pre vyhodnotenie generatívnych vlastností jazykového mo,delu. Napr. úloha sumarizácie alebo iná.

Stretnutie 27.1.2022

Úlohy:

  • Napísať prehľad spôsobov vyhodnotenia generatívnych modelov
  • Zostaviť prehľad metrík a dátových množin.
  • Zostaviť prehľad najnovších generatívnych modelov.

Zásobník úloh:

  • Zistiť niečo o algoritmoch GAN (generative adversarial network) a VAE (variational autoendoder).
  • Napíšte na aké NLP úlohy sa používajú a s akými výsledkami.
  • Zistite aké (optinálne) Python-Pytorch knižnice sa dajú použiť.

Bakalárska práca 2020

Názov: Neurónové jazykové modelovanie typu BERT.

Bakalárska práca

Návrh na zadanie:

  1. Vypracujte prehľad metód jazykového modelovania pomocou neurónových sietí.
  2. Vypracujte prehľad aplikácií modelu typu BERT a spôsoby ich vyhodnotenia.
  3. Natrénujte jazykový model metódou BERT alebo podobnou.
  4. Vyhodnoťte jazykový model a navrhnite zlepšenia presnosti.

Zásobník úloh:

  • Cieľom je vedieť natrénovať BERT model a vyhodnotiť ho na zvolenej testovacej množine.
  • vyhodnotiť slovenský Roberta Model na pokusnej množine SK-quad.

Stretnutie 12.3.

Stav:

  • Konzultácia štruktúry práce

Úlohy:

  • Písať.

Stretnutie 26.2.

Stav:

  • Vyriešený technický problém s architektúrou modelu podľa predpokladu.
  • Urobené vyhodnotenie modelu wiki103 na CommonsenseQA.

Úlohy:

  • Pokračujte v práci na textovej časti.
  • Odovzdané pracovné dáta pre slovenský Roberta Model aj SK-Quad. Pokúste sa to vyhodnotiť ako neprioritnú ulohu.

Stretnutie 22.2.

Stav:

Úlohy:

  • skúsiť vyhodnotenie Wiki 103 na Commonsense
  • Pokračujte v práci na textovej časti - vytvorte plynulý text.

Bakalársky projekt 2020

Stretnutie 12.2.

Stav:

  • Pokúšame sa vytvoriť hodnotenie pomcou množiny CommonSenseQA
  • Problém pri trénovaní na Wiki103 na stroji Quadra, (vyzerá to ako deadlock)
  • Máme k dispozícii ROBERTA model natrénovaný na veľkej množine slovenských dát.

Do budúceho stretnutia:

  • Problém sa možno dá obísť skopírovaním modelu zo stroja Tesla.
  • na kopírovanie použite príkaz scp -r user@server:zdrojovyadresar cielovyadresar.
  • pokračovať vo vyhodnotení pomocou CommonSenseQA.
  • skúste vyhodnotiť aj slovenský model. Ako?
  • pracujte na súvislom texte bakalárskej práce.

Virtuálne stretnutie 18.12.2020

Stav:

  • Natrénovaný model ROBERTA na malej množine Wiki103 podľa tutoriálu. Trénovanie trvalo jeden týždeň.
  • Spísané poznámky ku množine SQUAD.
  • Vytvorený prístup na server quadra.kemt.fei.tuke.sk

Úlohy:

Virtuálne stretnutie 4.12.2020

Stav:

Úlohy:

  • Pokračujte v práci na písomnej časti. Skúste prepísať odrážky do plynulého textu.
  • Pridajte poznámky o vyhodnotení pomocou SQUAD.
  • Pokračujte v trénovaní Roberta na dátovej sade Wiki-103 na systéme Tesla, odhadovaný čas trénovania 64 hod.
  • Zistite ako sa dá vyhodnotiť natrénovaný model Roberta.
  • Zvážiť možnosť trénovania na systéme Titan a Quadra (pre vedúceho).

Virtuálne stretnutie 20.11.2020

Stav:

  • Urobené tutoriály ale iba na CPU.

Do ďalšieho stretnutia:

  • Prejsť si tutoriál https://github.com/pytorch/fairseq/blob/master/examples/roberta/README.pretraining.md .
  • Pracovať na písomnej časti - zamerať sa na vyhodnotenie BERT modelu. Na aké modelové úlohy sa používa?
  • Napíšte poznámky, kde všade sa vyskytol technický problém a aké bolo riešenie. Dôležité sú verzie a podmienky pri ktorých sa problém vyskytol.
  • Spíšte ako nainštalovať knižnice tak aby to fungovalo (s CPU aj s GPU).
  • Vytvorte si na GITe repozitár bp2021, do neho dajte poznámky a kódy ktoré ste vyskúšali.

Virtuálne stretnutie 13.11.2020

Stav:

Do ďalšieho stretnutia:

  • pokračovať v otvorených úlohách.

Virtuálne stretnutie 30.10.2020

Stav:

  • Vypracované poznámky k seq2seq
  • nainštalovaný Pytorch a fairseq
  • problémy s tutoriálom. Riešenie by mohlo byť použitie release verzie 0.9.0, pip install fairseq=0.9.0

Do ďalšieho stretnutia:

Virtuálne stretnutie 16.10.2020

Stav:

  • Vypracované poznámky k uvedeným bodom.
  • Problém s inštaláciou Anaconda.

Do ďalieho stretnutia:

Virtuálne stretnutie 2.10.2020

Vytvorený prístup ssh megela@idoc.fei.tuke.sk

Úlohy do ďalšieho stretnutia:

  • Naštudujte si a vyracujte poznámky s uvedením zdroja:
    • spracovanie prirodzeného jazyka
    • jazykové modelovanie
    • rekurentná neurónová sieť
    • architektúra enkóder dekóder alebo seq2seq
  • Nainštalujte si prostredie Anaconda, pytorch a knižnicu fairseq

Na štúdium:

https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics

  • python
  • nlp
  • seq2seq