Update 'pages/students/2019/michal_stromko/vp2023/Dokumentacia.md'

This commit is contained in:
Michal Stromko 2023-01-31 11:05:04 +00:00
parent e93104dc31
commit e50cc2d517

View File

@ -29,7 +29,25 @@ Na začiatok je potrebné povedať, že pri spracovaní prirodzeného jazyka dok
Vyhodnotenie vyhľadávana v modeli dôležité z hľadiska budúceho použitia modelu do produkcie. Pokiaľ sa do produkcie dostane model, ktorí bude mať nízke ohodnotenie bude sa stávať, že vyhľadávanie bude nepresné to znamená, výskedky nebudú relevantné k tomu čo sme vyhľadávali. Vyhodnotenie vyhľadávana v modeli dôležité z hľadiska budúceho použitia modelu do produkcie. Pokiaľ sa do produkcie dostane model, ktorí bude mať nízke ohodnotenie bude sa stávať, že vyhľadávanie bude nepresné to znamená, výskedky nebudú relevantné k tomu čo sme vyhľadávali.
V tejto práci som realizoval viaceré experimenty, v ktorých som hodnotil vyhľadávanie pomocou modelov do ktorých bol zaembedovaný text. Každý text obsahuje ďalšie atribúty ako otázky a odpovede. Otázky sa následne pošlú na vyhľadanie a čaká sa na výsledok vyhľadávania. Výsledky ktoré prídu sa následne porovnajú s očakávanými odpoveďami. Výsledok vyhľadávania boli odpovede ktoré som hladal v správnych odpovediach pre danú otázku. Každý model, ktorý som vyhodnocoval pracoval s počítaním embeddingov ## Zameranie práce
V tejto práci som realizoval viaceré experimenty, v ktorých som hodnotil vyhľadávanie pomocou modelov do ktorých bol zaembedovaný text. Každý text obsahuje ďalšie atribúty ako otázky a odpovede. Otázky sa následne pošlú na vyhľadanie a čaká sa na výsledok vyhľadávania. Výsledky ktoré prídu sa následne porovnajú s očakávanými odpoveďami. Najdôležitejšie je nájsť v jednej odpovedi čo najviac správnych výsledkov. Následne je potrebné spočítať počet správnych výsledkov a použiť správne vzpočítať presnosť a návratnosť vyhľadávania. V tomto prípade presnosť a návratnosť počítame pre hodnotenie všetkých otázok. Čím sú hodnoty vyššie, tak konštatujeme že vyhľadávanie pomocou danej metódy je presné a dokážeme ho používať v produkcii.
Dôležtým atribútom s ktorým sme vykonávali testovanie bola menenie parametra **top_k**. Tento parameter znamená počet najlepších odpovedí na výstupe vyhľadávania. Čím je tento paramter väčší môžeme očakávať, že sa v ňom bude nachádzať väčšie množstvo správnych odpovedí. V konečnom dôledku to vôbec nemusí byť pravda, pretože ak máme kvalitne natrénovaný model a dobre zaembedované dokumenty dokážeme mať správne výsledky na prvých miestach, čo nám ukazuje že parameter *top_k* može mať menšiu hodnotu.
Najčastejšie je táto hodnota nastavovaná na top 10 najlepších výsledkov vyhľadávania. Pri experimentoch som túto hodnotu nastavoval na hodnoty **5, 10, 15, 20, 30**. Každá metóda ktorá bola pouťitá na vyhľadávanie dosiahla iné výsledky.
### Použité metódy vyhľadávania v experimentoch
V tejto práci som použil na vyhľadávanie 4 rôzne metódy, ktorým som postupne nastavoval parameter **top_k** od 5 až 30.
Použil som vyhľadávanie pomocou:
- Faiss
- BM25
- LaBSE
- sts-slovakbert-stst
Každá jedna metóda pracuje s úplne iným modelom. Modeli LaBSE a sts-slovakbert-stst používali rovnakú knižnicu na vytvorenie vektorov aj vyhľadávanie. Rozdiel je len vtom že LABSE je multilingual embedding model, ktorého najväčšou výhodou je enkódovanie textu v rôznych jazykoch a dokáže
### Dense Passage Retriever (DPR) ### Dense Passage Retriever (DPR)