Compare commits
540 Commits
Author | SHA1 | Date | |
---|---|---|---|
922906146b | |||
e08a6d253b | |||
576dc43627 | |||
fe78cd0f9b | |||
50f4205743 | |||
670c89d4cb | |||
dbbac1f125 | |||
d7f39c528f | |||
d64df15f33 | |||
708b3b8ae2 | |||
b5d1cc40df | |||
78ba13aa59 | |||
38c65bb735 | |||
ca13fbd359 | |||
fc24d25d03 | |||
e12e139143 | |||
13d98987c4 | |||
c47eaec6ac | |||
4936ab1e93 | |||
d22679dab6 | |||
97e4f327c8 | |||
58659f217c | |||
fae1be974e | |||
10c5517013 | |||
0534b21a1a | |||
52255aec0f | |||
c62fe1f3ed | |||
4aa4ff8d46 | |||
498aaaccf4 | |||
a3e9d0c9df | |||
fc30546f7f | |||
dce18ad848 | |||
9ce49ff66f | |||
5509f9c143 | |||
bd987ff9f2 | |||
5208ea17f0 | |||
2f2f770fb9 | |||
1229f4bda7 | |||
22eec496fd | |||
0c5094133f | |||
15c82dbf31 | |||
a2c9baa731 | |||
906510a66f | |||
6cbce1139b | |||
2e95faf73a | |||
cacf1872e1 | |||
3cdf28843b | |||
b9bf125809 | |||
3d172dbe10 | |||
878733dec1 | |||
b15765bb22 | |||
b27f66b38b | |||
a29ca8833a | |||
ab6865ecaa | |||
87ba0e3dd3 | |||
e39200ee7f | |||
48f8d348b5 | |||
9e4799fc1d | |||
4297a48520 | |||
369acec5f0 | |||
61785a9438 | |||
a717c8333d | |||
138250b5c0 | |||
|
140e15191a | ||
b76d500026 | |||
6b72a975e8 | |||
|
42e71e2dd9 | ||
|
946bc7f9f1 | ||
b06eb9c21c | |||
d57316ea1c | |||
156fc07b79 | |||
d58d4dfb69 | |||
9e65785250 | |||
1d93bc6b88 | |||
de59c44ae8 | |||
2036b817d3 | |||
|
b9d48f1295 | ||
82a789f03d | |||
f27d3035e7 | |||
eb6f1414d0 | |||
91044d842e | |||
93464ea6f4 | |||
4a773587c5 | |||
ff74724afa | |||
2d57819456 | |||
8ad2446551 | |||
14219bb803 | |||
fab240a113 | |||
a7434babd6 | |||
9c4d430f50 | |||
97c6100dd8 | |||
ed0603679a | |||
57ac07b858 | |||
f1b4128614 | |||
c3e2b89bdb | |||
cd3159da34 | |||
99c3630651 | |||
7bd199056e | |||
abbced8914 | |||
5244c3ba37 | |||
68a2950c80 | |||
99b2567b83 | |||
|
8fcff43616 | ||
|
5d6075672c | ||
d9ded4c56a | |||
6e55139ffc | |||
ec7e0f9702 | |||
9a3d26f474 | |||
5d9122dad8 | |||
ea3cf0455b | |||
5a3033991b | |||
56535a22d3 | |||
32230d93e4 | |||
bd728b347f | |||
6a251795b3 | |||
|
0854127b94 | ||
|
517b2acdce | ||
582ec7de93 | |||
af65f29a56 | |||
237a787b19 | |||
fdf720fd08 | |||
f08f95e1c7 | |||
17012a6998 | |||
9b37357264 | |||
9736cc5b8f | |||
9dacd8eab3 | |||
849eb5188d | |||
55ad30bdaf | |||
624de1cc22 | |||
a16ce8de2b | |||
4939bf781d | |||
4fa9922d7d | |||
b0c087653c | |||
069db4e233 | |||
b1226fadf9 | |||
7c539430bb | |||
11361bddf9 | |||
0ad9a351df | |||
79f30ce433 | |||
23a6f1fe1a | |||
41da6bd005 | |||
b13b158f6c | |||
0d8fd39491 | |||
14d9da2af3 | |||
42b4395329 | |||
18c270c9ff | |||
d0fdb99f43 | |||
26f7a860eb | |||
4f4a66e067 | |||
a5a6855bcb | |||
4f43917680 | |||
15f9bc7e23 | |||
9764b95549 | |||
a3d49dc7a9 | |||
39b3d6f5ef | |||
e579083c4c | |||
89ad49be09 | |||
d54e37787e | |||
e975c1305d | |||
32546e03d2 | |||
9522887db7 | |||
9a6c81083e | |||
369543e606 | |||
38007e9b2f | |||
5a6c0f038e | |||
67f20bb84a | |||
df53b4af35 | |||
26f5198070 | |||
80b87c13b3 | |||
d8b36e8e16 | |||
94422ee832 | |||
ccded68704 | |||
0e1bf24a01 | |||
635abb25e1 | |||
e244502cdd | |||
6d426239bb | |||
0968b18d78 | |||
de2e164040 | |||
b77288fa85 | |||
7208d12af2 | |||
e9a09c427f | |||
9065b1effd | |||
93990295ec | |||
ed45d9fceb | |||
80cef12276 | |||
bcab212f34 | |||
eadf0b71fe | |||
7293cd877a | |||
cc5307000f | |||
2f8c425f9d | |||
da19f64d07 | |||
b7ea1ea43d | |||
1887ffd153 | |||
0c81fc8076 | |||
4db2a23226 | |||
bf46c12e69 | |||
11393f2bad | |||
acb779d298 | |||
e10c0c8896 | |||
2f21819f22 | |||
eb4f8def32 | |||
b79f78cc8e | |||
ece560f2ff | |||
7f09df3968 | |||
5af69cfa2c | |||
97364a71e0 | |||
4db145504d | |||
d51b32b692 | |||
09f086625e | |||
f5e0e2cacd | |||
0abf1e0243 | |||
38f8b31b58 | |||
289aa70b91 | |||
c4047e488c | |||
08b435b191 | |||
21606fff97 | |||
4da4e9bc8a | |||
687e7c8183 | |||
af79987f2e | |||
c552ebe754 | |||
49023656d3 | |||
7f4281c0c7 | |||
79b0289f72 | |||
f111a07b7c | |||
b7d09419db | |||
cac1df1b02 | |||
2278572956 | |||
f516a886e9 | |||
84f7990e3b | |||
4bf9d7eb82 | |||
08aff172ed | |||
2ad90801df | |||
b49168fc83 | |||
236018a74f | |||
b81177028a | |||
70d6ac1a44 | |||
71ca8d8e55 | |||
e429df9a83 | |||
37384f4bf2 | |||
d7f3920bc4 | |||
74b9c90856 | |||
cf3ca04242 | |||
8b06a8eb76 | |||
a95e93cdfd | |||
8e59a3c08a | |||
1a9b421b5e | |||
0759352656 | |||
641ce0d453 | |||
55e2b15928 | |||
8e7a30d6eb | |||
8d1d728241 | |||
dfbf9f0d34 | |||
670cf1a222 | |||
ae45f0467a | |||
cbab37d7a6 | |||
70510dc906 | |||
7d005f7894 | |||
b620d8454e | |||
54c801c0bc | |||
d5888fd98f | |||
19b77d22cf | |||
8c23357eb4 | |||
738c5220aa | |||
6c5ab7e7db | |||
13660e80f1 | |||
98359fe3c5 | |||
db7890b061 | |||
c7cd410f7d | |||
270b5f7944 | |||
e14dc631c5 | |||
8c458cf6e7 | |||
290abefa3c | |||
0793a45b32 | |||
6eaef23ffd | |||
05a1a0830d | |||
f202afe564 | |||
94f6a18dbd | |||
8b04e06d0e | |||
7bc29bc310 | |||
8d03d79a43 | |||
888f08f7ea | |||
7889c710d0 | |||
051ef6fbf3 | |||
1244e03ca8 | |||
1321ff8ef3 | |||
eb510a665b | |||
ce0aa244b3 | |||
462bb97028 | |||
f02b578ad4 | |||
a8389a1748 | |||
bd02969944 | |||
18ad2b3e2e | |||
ca24fe5a58 | |||
b841543d06 | |||
e1722ce583 | |||
b8f3c29d58 | |||
1906920e0f | |||
9feade3a56 | |||
431ecad829 | |||
fe1160531f | |||
97bf0c71e2 | |||
2658cd723d | |||
3843b1868e | |||
3ebba9181a | |||
7906f71afe | |||
976f57094c | |||
b4c3aeb7b0 | |||
a51e3c0330 | |||
5a6dd420ad | |||
465c5fca2f | |||
03b0a0fc4f | |||
6a88da919e | |||
3b6cb298dd | |||
1acf509cd5 | |||
b013eae5ff | |||
297a2d0fd0 | |||
5805ccc88d | |||
065104678a | |||
64cd72834f | |||
3b69e68c68 | |||
96714cf86f | |||
ac85d71c09 | |||
a183810ec0 | |||
6e769db305 | |||
5f48040f68 | |||
67cd24be8c | |||
7ce7770fd9 | |||
95f1777282 | |||
19eb0489b1 | |||
7be98d80fe | |||
2ab2ebdac3 | |||
ea8b11bf66 | |||
37ea275bb3 | |||
30f25a1ba6 | |||
4e73c3673f | |||
4eaf719563 | |||
75d6563d88 | |||
e2f5af01ca | |||
f17685b6af | |||
b1bb64c130 | |||
4d81829a7d | |||
425a07c453 | |||
967567a82d | |||
dd10986c2a | |||
1b79126c95 | |||
23565f6494 | |||
b6de5e9024 | |||
cdb4302794 | |||
3466cae684 | |||
650c359280 | |||
9914034a16 | |||
75f985b727 | |||
bf16cd8874 | |||
43790f1ef1 | |||
0503d1500a | |||
d624e1b9e2 | |||
4f8404b180 | |||
7a75e080c9 | |||
46836c436f | |||
fb75959d0a | |||
24eec48dfb | |||
69275ddf3c | |||
914c8b0d3c | |||
f5745a4b43 | |||
6e7db225aa | |||
42846fc2c6 | |||
df308ff8fa | |||
48e6cba92d | |||
607b500a20 | |||
7f7ed6b851 | |||
d519291a6f | |||
e50cc2d517 | |||
e93104dc31 | |||
7c0493590d | |||
65e4b3dfc3 | |||
56d9b16765 | |||
94a0b9bbd8 | |||
326fcb088e | |||
a70ecb4bac | |||
990335d73b | |||
22dce13975 | |||
6d5579ab93 | |||
8262accfa8 | |||
018e294592 | |||
1b3bcf5dd9 | |||
a0ea885b44 | |||
5d4f2d724a | |||
9f827d4138 | |||
a2d5579560 | |||
bcd2fe3b24 | |||
8b254bc6f1 | |||
713ef1b3f3 | |||
8a1b7c01a5 | |||
a9ed0f3a04 | |||
5df7c705f6 | |||
7bc2147c32 | |||
fdbb633b7c | |||
025a444027 | |||
8f34de0f5e | |||
a94df966d6 | |||
ad38cf5973 | |||
a163da80cd | |||
cc8452ef41 | |||
47f56e9eab | |||
14779680b6 | |||
3c12261123 | |||
ad6fb599c6 | |||
c046bc0dfd | |||
7ce7063e70 | |||
bf94f4b7fa | |||
6a3d7ff793 | |||
376a8db290 | |||
c28de252be | |||
37ad32d82c | |||
d425a1b64b | |||
36851f4d8c | |||
5fd78c2e28 | |||
2ad4bd283c | |||
857734f725 | |||
d640ff2c17 | |||
89504d718a | |||
2a398b18be | |||
b4aad5d442 | |||
bf509acc4b | |||
81b9a37659 | |||
07563ae39d | |||
023b5a759c | |||
870a494434 | |||
5210ba5989 | |||
01bbdbd871 | |||
4e988eb1d5 | |||
1dd44d87f3 | |||
e2a5a6e07f | |||
1cc689607f | |||
b97ccf69a1 | |||
79ec7d1a71 | |||
62c30e5405 | |||
05eeddad6a | |||
7e1fccbc1f | |||
1b59e3931b | |||
8225a94b2a | |||
5df5b672c8 | |||
cd7cdf0d7f | |||
ae824caeb5 | |||
de34985d85 | |||
d6ccd33659 | |||
09c19da0b4 | |||
758fa7b609 | |||
6a3a90cfc8 | |||
20b3a8c24f | |||
8b31786a99 | |||
1677cfc7bd | |||
31b2756ea4 | |||
caffd2ffd0 | |||
d26ba7a260 | |||
3d042fedb5 | |||
cf1f45d1f1 | |||
3b73f2ec66 | |||
a067accf1f | |||
d71e1dd711 | |||
f42be61cb7 | |||
a0eebc2829 | |||
634b32e6f6 | |||
a3b6cbdc35 | |||
f343ab27fc | |||
43ddc7a199 | |||
8b0de16542 | |||
9fe8dd9221 | |||
d58a0976f9 | |||
d1c1cf9a88 | |||
41b08e6dae | |||
3bfbe0d902 | |||
a4b526f10b | |||
791de5d962 | |||
56aab9cd60 | |||
5e391d8034 | |||
b0ab648a84 | |||
e5049bf745 | |||
634ca5ed66 | |||
f0b0a292de | |||
3360fc9987 | |||
945f0ec273 | |||
0c615320af | |||
9e8641e5c9 | |||
fbd511101e | |||
c5b35646f7 | |||
d76800b16d | |||
a423ce391a | |||
6c20b11439 | |||
fc184ce27a | |||
a67f15374b | |||
bc91f11049 | |||
20fe1b96a2 | |||
23cf241a87 | |||
f9e7d0eaf1 | |||
67b8fffafb | |||
a8694b8de7 | |||
aeb9c4174e | |||
7fa2c5ba7f | |||
8d132a7fe0 | |||
5deb5e0177 | |||
fcfbf6e317 | |||
830425a99f | |||
243a461dc6 | |||
8c88c44684 | |||
8ceb2ef2aa | |||
8e1f7c3989 | |||
bc67b44c67 | |||
0618cd7610 | |||
e80a20c38c | |||
b9ca3c5679 | |||
2244c154f9 | |||
5ed58223c3 | |||
a6848cace3 | |||
665d43c6da | |||
f5af4be555 | |||
63ad60f2ca | |||
16690600ba | |||
e71f213555 | |||
ca58249d62 | |||
0e662ff2c8 | |||
6dc09aa381 | |||
62480ac786 | |||
eaad73df7c | |||
1cfb5f0d4a | |||
87d89eb2b0 | |||
06fec23f6b | |||
fbe064ecb4 | |||
d981396f28 | |||
8b7ac79ba0 | |||
297c746fa2 | |||
68fb45f2e7 | |||
54446db373 | |||
c026422601 | |||
552d2e265b | |||
da55365f81 | |||
561423c04d | |||
db92d0b8ad | |||
e6b63c5f4c | |||
68f84e57dc |
@ -14,6 +14,7 @@ Wiki stánka pre spoluprácu na záverečných prácach.
|
|||||||
|
|
||||||
- [Často kladené otázky](/topics/faq)
|
- [Často kladené otázky](/topics/faq)
|
||||||
- [Ako napíšem záverečnú prácu](/topics/akopisat)
|
- [Ako napíšem záverečnú prácu](/topics/akopisat)
|
||||||
|
- [Prostredie Anaconda a jazyk Python pre strojové učenie](/topics/python)
|
||||||
|
|
||||||
## Vedúci
|
## Vedúci
|
||||||
|
|
||||||
@ -22,30 +23,42 @@ Wiki stánka pre spoluprácu na záverečných prácach.
|
|||||||
|
|
||||||
## Predmety
|
## Predmety
|
||||||
|
|
||||||
- [Diplomové práce 2022](/categories/dp2022)
|
- [Diplomové práce 2024](/categories/dp2024)
|
||||||
- [Bakalárske práce 2022](/categories/bp2022)
|
- [Bakalárske práce 2024](/categories/bp2024)
|
||||||
- Diplomový projekt 2022-Diplomová práca 2023
|
|
||||||
|
|
||||||
## Vedecké projekty
|
## Vedecké projekty
|
||||||
|
|
||||||
- Korpus otázok a odpovedí
|
- [Dialógový systém](/topics/chatbot)
|
||||||
- [Projektová stránka](/topics/question)
|
|
||||||
- [Vytvorte otázky a odpovede](/topics/question/navod)
|
|
||||||
- [Validujte otázky a odpovede](/topics/question/validacie)
|
|
||||||
- [Vytvorte nezodpovedateľné otázky a odpovede](/topics/question/nezodpovedatelne)
|
|
||||||
- Rozpoznávanie nenávistnej reči (Hate Speech Detection)
|
- Rozpoznávanie nenávistnej reči (Hate Speech Detection)
|
||||||
- [Hate Speech Project Page](/topics/hatespeech)
|
- [Hate Speech Project Page](/topics/hatespeech)
|
||||||
- Rozpoznávanie pomenovaných entít
|
- Rozpoznávanie pomenovaných entít
|
||||||
- [Projektová stránka](/topics/named-entity)
|
- [Projektová stránka](/topics/named-entity)
|
||||||
- [Anotujte korpus](/topics/named-entity/navod)
|
- [Anotujte korpus](/topics/named-entity/navod)
|
||||||
|
- [Ostatné projekty](/categories/projects)
|
||||||
|
|
||||||
|
## Ukončené projekty
|
||||||
|
|
||||||
- [Podpora slovenčiny v knižnici Spacy](/topics/spacy)
|
- [Podpora slovenčiny v knižnici Spacy](/topics/spacy)
|
||||||
- [Slovenský BERT model](/topics/bert)
|
- [Slovenský BERT model](/topics/bert)
|
||||||
- [AI4Steel](/topics/steel)
|
- [AI4Steel](/topics/steel)
|
||||||
- [Ostatné projekty](/categories/projects)
|
- Korpus otázok a odpovedí
|
||||||
|
- [Projektová stránka](/topics/question)
|
||||||
|
- [Vytvorte otázky a odpovede](/topics/question/navod)
|
||||||
|
- [Validujte otázky a odpovede](/topics/question/validacie)
|
||||||
|
- [Vytvorte nezodpovedateľné otázky a odpovede](/topics/question/nezodpovedatelne)
|
||||||
|
|
||||||
## Uzavreté predmety
|
## Uzavreté predmety
|
||||||
|
|
||||||
|
## 2023
|
||||||
|
|
||||||
|
- [Diplomové práce 2023](/categories/dp2023)
|
||||||
|
- [Bakalárske práce 2023](/categories/bp2023)
|
||||||
|
|
||||||
|
## 2022
|
||||||
|
|
||||||
|
- [Diplomové práce 2022](/categories/dp2022)
|
||||||
|
- [Bakalárske práce 2022](/categories/bp2022)
|
||||||
|
|
||||||
## 2021
|
## 2021
|
||||||
|
|
||||||
- [Bakalárske práce 2021](/categories/bp2021)
|
- [Bakalárske práce 2021](/categories/bp2021)
|
||||||
|
@ -1,5 +1,16 @@
|
|||||||
|
---
|
||||||
|
title: Cesar Abascal Gutierrez
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [iaeste]
|
||||||
|
tag: [ner,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
## Named entity annotations
|
## Named entity annotations
|
||||||
|
|
||||||
|
Intern, probably summer 2019
|
||||||
|
|
||||||
Cesar Abascal Gutierrez <cesarbielva1994@gmail.com>
|
Cesar Abascal Gutierrez <cesarbielva1994@gmail.com>
|
||||||
|
|
||||||
## Goals
|
## Goals
|
||||||
|
66
pages/interns/oliver_pejic/README.md
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
---
|
||||||
|
title: Oliver Pejic
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [iaeste]
|
||||||
|
tag: [hatespeech,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
Oliver Pejic
|
||||||
|
|
||||||
|
IAESTE Intern Summer 2024, 12 weeks in August, September and October.
|
||||||
|
|
||||||
|
Goal:
|
||||||
|
|
||||||
|
- Help with the [Hate Speech Project](/topics/hatespeech)
|
||||||
|
- Help with evaluation of sentence transformer models using toolkit [MTEB](https://github.com/embeddings-benchmark/mteb)
|
||||||
|
|
||||||
|
Final Tasks:
|
||||||
|
|
||||||
|
- Prepare an MTEB evaluation task for [Slovak HATE speech](https://huggingface.co/datasets/TUKE-KEMT/hate_speech_slovak).
|
||||||
|
- Prepare an MTEB evaluation task for [Slovak question answering](https://huggingface.co/datasets/TUKE-KEMT/retrieval-skquad).
|
||||||
|
- [Machine translate](https://huggingface.co/google/madlad400-3b-mt) an SBERT evaluation set for multiple slavic languages.
|
||||||
|
- Write a short scientific paper with results.
|
||||||
|
|
||||||
|
Meeting 3.10.:
|
||||||
|
|
||||||
|
State:
|
||||||
|
|
||||||
|
- Prepared a pull request for Retrieval SK Quad.
|
||||||
|
- Prepared a pull request for Hate Speech Slovak.
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- Make the pull request compatible with the MTEB Contribution guidelines. Discuss it when it is done.
|
||||||
|
- Submit pull requests to MTEB project.
|
||||||
|
- Machine Translate a database (HotpotQA, DB Pedia, FEVER) . Pick a database that is short, because translation might be slow.
|
||||||
|
|
||||||
|
Non priority tasks:
|
||||||
|
|
||||||
|
- Prepare databse and subnit it to HuggingFace Hub.
|
||||||
|
- Prepare a MTEB PR for the databse.
|
||||||
|
|
||||||
|
Meeting 3.9:
|
||||||
|
|
||||||
|
State: Studied MTEB framework and transformers.
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- Prepare and try MTEB evaluation tasks for the database. For evaluation you can try me5-base model.
|
||||||
|
- Make a fork of MTEB and do necessary modification, including the documentation references for the task.
|
||||||
|
- Prepare 2 GITHUB pull requests for the databases, preliminary BEIR script given.
|
||||||
|
|
||||||
|
Future tasks:
|
||||||
|
|
||||||
|
- Prepare a machine translation system to create another slovak/multilingual evaluation task from English task.
|
||||||
|
|
||||||
|
Preparation (7.8.2024):
|
||||||
|
|
||||||
|
- Get familiar with [SentenceTransformer](https://sbert.net/) framework, study fundamental papers and write down notes.
|
||||||
|
- Get familiar with [MTEB](https://github.com/embeddings-benchmark/mteb) evaluation framework.
|
||||||
|
- Prepare a working environment on Google Colab or on school server or Anaconda.
|
||||||
|
- Get familiar with [existing finetuning scripts](https://git.kemt.fei.tuke.sk/dano/slovakretrieval).
|
||||||
|
|
||||||
|
|
||||||
|
|
104
pages/interns/sevval_bulburu/README.md
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
---
|
||||||
|
title: Sevval Bulburu
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [iaeste]
|
||||||
|
tag: [hatespeech,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
Sevval Bulburu
|
||||||
|
|
||||||
|
|
||||||
|
IAESTE Intern Summer 2023, two months
|
||||||
|
|
||||||
|
Goal: Help with the [Hate Speech Project](/topics/hatespeech)
|
||||||
|
|
||||||
|
Meeting 12.10.2023
|
||||||
|
|
||||||
|
[Github Repo with results](https://github.com/sevvalbulburu/Hate_Speech_Detection_Slovak)
|
||||||
|
|
||||||
|
State:
|
||||||
|
|
||||||
|
- Proposed and tried extra layers above BERT model to make a classifier in seriees of experiments. There is a single sigmoid neuron on the output.
|
||||||
|
- Manually adjusted the slovak HS dataset. Slovak dataset is not balanced. Tried some methods for "balancing" the dataset. By google translate - augmentation. Other samples are "generated" by translation into random langauge and translating back. This creates "paraphrases" of the original samples. It helps.
|
||||||
|
- Tried SMOTE upsampling, it did not work.
|
||||||
|
- Is date and user name an important feature?
|
||||||
|
- tried some grid search for hyperparameter of the neural network - learning rate, dropout, epoch size, batch size. Batch size 64 no good.
|
||||||
|
- Tried multilingal models for Slovak dataset (cnerg), result are not good.
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- Please send me your work report. Please upload your scripts and notebooks on git and send me a link. git is git.kemt.fei.tuke.sk or github. Prepare some short comment about scripts.You can also upload the slovak datasetthere is some work done on it.
|
||||||
|
|
||||||
|
Ideas for a paper:
|
||||||
|
|
||||||
|
Possible names:
|
||||||
|
|
||||||
|
- "Data set balancing for Multilingual Hate Speech Detection"
|
||||||
|
- "BERT embeddings for HS Detection in Low Resource Languages" (Turkish and Slovak).
|
||||||
|
|
||||||
|
(Possible) Tasks for paper:
|
||||||
|
|
||||||
|
- Create a shared draft document, e.g. on Overleaf or Google Doc
|
||||||
|
- Write a good introduction and literature overview (Zuzka).
|
||||||
|
- Try 2 or 3 class Softmax Layer for neural network.
|
||||||
|
- Change the dataset for 3 class classification.
|
||||||
|
- Prepare classifier for Slovak, English, Turkish and for multiple BERT models. Try to use multilingual BERT model for baseline embeddings.
|
||||||
|
- Measure the effect of balancing the dataset by generation of additional examples.
|
||||||
|
- Summarize experiments in tables.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Meeting 5.9.2023
|
||||||
|
|
||||||
|
State:
|
||||||
|
|
||||||
|
- Proposed own Flask application
|
||||||
|
- Created Django application with data model https://github.com/hladek/hate-annot
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
Meeting 22.8.2023
|
||||||
|
|
||||||
|
State:
|
||||||
|
|
||||||
|
- Familiar with Python, Anaconda, Tensorflow, AI projects
|
||||||
|
- created account at idoc.fei.tuke.sk and installed anaconda.
|
||||||
|
- Continue with previous open tasks.
|
||||||
|
- Read a website and pick a dataset from https://hatespeechdata.com/
|
||||||
|
- Evaluate (calculate p r f1) existing multilingual model. E.G. https://huggingface.co/Andrazp/multilingual-hate-speech-robacofi with any data
|
||||||
|
- Get familiar with Django.
|
||||||
|
|
||||||
|
|
||||||
|
Notes:
|
||||||
|
|
||||||
|
- ssh bulbur@idoc.fei.tuke.sk
|
||||||
|
- nvidia-smi command to check status of GPU.
|
||||||
|
- Use WinSCP to Copy Files. Use anaconda virtual env to create and activate a new python virtual environment. Use Visual Studio Code Remote to delvelop on your computer and run on remote computer (idoc.fei.tuke.sk). Use the same credentials for idoc server.
|
||||||
|
- Use WSL2 to have local linux just to play.
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- [ ] Get familiar with the task of Hate speech detection. Find out how can we use Transformer neural networks to detect and categorize hate speech in internet comments created by random people.
|
||||||
|
- [ ] Get familiar with the basic tools: Huggingface Transformers, Learn how to use https://huggingface.co/Andrazp/multilingual-hate-speech-robacofi in Python script. Learn something about Transformer neural networks.
|
||||||
|
|
||||||
|
- [x] get familiar with Prodi.gy annotation tool.
|
||||||
|
- [-] Set up web-based annotation environment for students (open, cooperation with [Vladimir Ferko](/students/2021/vladimir_ferko) ).
|
||||||
|
|
||||||
|
Ideas for annotation tools:
|
||||||
|
|
||||||
|
- https://github.com/UniversalDataTool/universal-data-tool
|
||||||
|
- https://www.johnsnowlabs.com/top-6-text-annotation-tools/
|
||||||
|
- https://app.labelbox.com/
|
||||||
|
- https://github.com/recogito/recogito-js
|
||||||
|
- https://github.com/topics/text-annotation?l=javascript
|
||||||
|
|
||||||
|
Future tasks (to be decided):
|
||||||
|
|
||||||
|
- Translate existing English dataset into Slovak. Use OPUS English Slovak Marian NMT model. Train Slovak munolingual model.
|
||||||
|
- Prepare existing Slovak Twitter dataaset, train evaluate a model.
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -3,7 +3,7 @@ title: Maroš Harahus
|
|||||||
published: true
|
published: true
|
||||||
taxonomy:
|
taxonomy:
|
||||||
category: [dp2021,bp2019]
|
category: [dp2021,bp2019]
|
||||||
tag: [spacy,nlp]
|
tag: [spelling,spacy,nlp]
|
||||||
author: Daniel Hladek
|
author: Daniel Hladek
|
||||||
---
|
---
|
||||||
# Maroš Harahus
|
# Maroš Harahus
|
||||||
@ -11,13 +11,234 @@ taxonomy:
|
|||||||
- [Git repozitár ai4steel](https://git.kemt.fei.tuke.sk/ai4steel/ai4steel) (pre členov skupiny)
|
- [Git repozitár ai4steel](https://git.kemt.fei.tuke.sk/ai4steel/ai4steel) (pre členov skupiny)
|
||||||
- [GIT repozitár s poznámkami](https://git.kemt.fei.tuke.sk/mh496vd/Doktorandske) (súkromný)
|
- [GIT repozitár s poznámkami](https://git.kemt.fei.tuke.sk/mh496vd/Doktorandske) (súkromný)
|
||||||
|
|
||||||
|
|
||||||
## Dizertačná práca
|
## Dizertačná práca
|
||||||
|
|
||||||
Generovanie vektorových reprezentácií štruktúrovaných dát.
|
v roku 2023/24
|
||||||
|
|
||||||
## Minimovka 2023
|
Automatické opravy textu a spracovanie prirodzeného jazyka
|
||||||
|
|
||||||
- Grafové neurónové siete
|
Ciele:
|
||||||
|
|
||||||
|
- Zverejniť a obhájiť minimovku
|
||||||
|
- Napísať dizertačnú prácu
|
||||||
|
- Publikovať 2 články triedy Q2-Q3
|
||||||
|
|
||||||
|
Súvisiaca BP [Vladyslav Krupko](/students/2020/vladyslav_krupko)
|
||||||
|
|
||||||
|
|
||||||
|
## Druhý rok doktorandského štúdia
|
||||||
|
|
||||||
|
Ciele:
|
||||||
|
|
||||||
|
- *Publikovanie článku Q2/Q3* - podmienka pre pokračovanie v štúdiu.
|
||||||
|
- *Obhájiť minimovku*. Minimovka by mala obsahovať definíciu riešenej úlohy, prehľad problematiky, tézy dizertačnej práce - vedecké prínosy.
|
||||||
|
- Poskytnite najnovší prehľad.
|
||||||
|
- Popísať vedecký prínos dizertačnej práce
|
||||||
|
- Zverejniť min. 1 príspevok na školskej konferencii.
|
||||||
|
- Publikovať min. 1 riadny konferenčný príspevok.
|
||||||
|
- Pripraviť demo.
|
||||||
|
- Pomáhať s výukou, projektami a výskumom.
|
||||||
|
|
||||||
|
### Návrh na tézy dizertačnej práce
|
||||||
|
|
||||||
|
Automatické opravy textu pri spracovaní prirodzeného jazyka
|
||||||
|
|
||||||
|
Hlavným cieľom dizertačnej práce je návrh, implementácia a overenie modelu pre automatickú opravu textov.
|
||||||
|
|
||||||
|
Na splnenie tohto cieľa je potrebné vykonať tieto úlohy:
|
||||||
|
|
||||||
|
1. Analyzovať súčasný stav modelov pre opravu gramatických chýb a preklepov.
|
||||||
|
2. Vybrať vhodné metódy a navrhnúť vlastný model pre automatickú opravu textov v slovenskom jazyku.
|
||||||
|
3. Navrhnúť a pripraviť metódu augumentácie dát generovaním chýb v texte.
|
||||||
|
4. Zozbierať dáta a pripraviť ich do podoby vhodnej na overenie modelu pre automatickú opravu slovenského textu.
|
||||||
|
5. Navrhnúť a vykonať viacero experimentov pre overenie a porovnanie navrhnutého modelu.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Plán činosti na semester:
|
||||||
|
|
||||||
|
1. Prediskutovať a vybrať definitívnu tému. Obidve témy sú komplikované.
|
||||||
|
- Trénovanie jazykových modelov. Cieľom by bolo zlepšenie jazykového modelovania.
|
||||||
|
- [x] Dá sa nadviazať na existujúce trénovacie skripty.
|
||||||
|
- [x] Dá sa využiť webový korpus.
|
||||||
|
- [x] Dá sa využiť naša GPU infraštruktúra. (Na trénovanie menších modelov)
|
||||||
|
- [x] Veľký praktický prínos.
|
||||||
|
- [ ] Teoretický prínos je otázny.
|
||||||
|
- [ ] Naša infraštruktúra je asi slabá na väčšie modely.
|
||||||
|
- Oprava gramatických chýb.
|
||||||
|
- [x] Dá sa nadviazať na "spelling correction" výskum a skripty.
|
||||||
|
- [x] Teoretický prínos je väčší.
|
||||||
|
- [x] Trénovanie by bolo jednoduchšie na našom HW.
|
||||||
|
- Posledné review je z [2020](https://scholar.google.sk/scholar?hl=en&as_sdt=0%2C5&q=grammatical+error+correction+survey&btnG=)
|
||||||
|
|
||||||
|
|
||||||
|
2. Napísať prehľadový článok.
|
||||||
|
- Prečítať existujúce prehľady na danú tému. Zistitť ako boli napísané, kde boli uverejnené, čo je ich prínos. Je dobré použiť metodiku https://www.prisma-statement.org//
|
||||||
|
- Identifikovať v čom by bol náš prehľad originálny a kde by bolo možné uverejniť.
|
||||||
|
- Prečítať a zotriediť aspoň 200 článkov na danú tému.
|
||||||
|
- Zistiť, aké metódy, datasety a spôsoby vyhodnotenia sa používajú.
|
||||||
|
- Rozšíriť prehľadový článok do formy minimovky.
|
||||||
|
|
||||||
|
3. Priebežne pracovať na experimentoch.
|
||||||
|
- Vybrať vhodnú dátovú množinu a metriku vyhodotenia.
|
||||||
|
- Vybrať základnú metódu a vyhodnotiť.
|
||||||
|
- Vyskúšať modifikáciu základnej metódy a vyhodotiť.
|
||||||
|
|
||||||
|
4. Napísať 2 konferenčné články.
|
||||||
|
- Písať si poznámky pri experimentoch.
|
||||||
|
- Predbežné experimenty zverejniť v krátkom článku.
|
||||||
|
- Prediskutovať spôsob financovania.
|
||||||
|
|
||||||
|
Stretnutie 27.10.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Prečítaných a spoznámkovaných cca 4O článkov na tému "Grammar Error Correction".
|
||||||
|
- Experimenty strojový preklad s Fairseq. Z toho vznikol článok SAMI.
|
||||||
|
- Poznámky o Transfer Leaarning. Preštudované GPT3.
|
||||||
|
- Sú rozpracované ďalšie modely pre strojový preklad. Česko-slovenský.
|
||||||
|
- https://github.com/KaushalBajaj11/GEC--Grammatical-Error-Correction
|
||||||
|
- https://github.com/LukasStankevicius/Towards-Lithuanian-Grammatical-Error-Correction
|
||||||
|
- https://github.com/yuantiku/fairseq-gec
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Rozbehať fairseq GEC a porozmýšľať ako by a to dalo zlepšiť.
|
||||||
|
- Pozrieť si prehľad https://scholar.google.sk/scholar?hl=en&as_sdt=0%2C5&q=question+generation&btnG=&oq=question+ge a napísať niekoľko poznámok. Vedeli by sme nájsť prínos?
|
||||||
|
|
||||||
|
Nápady:
|
||||||
|
|
||||||
|
- Smerovať to na inú generatívnu úlohu podobnú strojovému prekladu. Napríklad "Question generation".
|
||||||
|
- question generation by sa dalo použiť na zlepšenie QA-IR systémov.
|
||||||
|
- Možno "multilingual question generation"?
|
||||||
|
|
||||||
|
Stretnutie 9.9.2022
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
Počas prázdnin sa pracovalo na experimentoch s fairseq - strojový preklad a Spacy trénovanie, štúdium literatúry.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Prečítať niekoľko prehľadov na tému Grammar Correction, zistiť ako sú napísané a čo je v nich napísané.
|
||||||
|
- [x] Prečítať niekoľko prehľadov (survey) na tému Neural Language Modelling - BERT Type models. Zistiť, kde je priestor na vedecký prínos.
|
||||||
|
- [x] Zistiť čo je to Transfer Learning. https://ieeexplore.ieee.org/abstract/document/9134370
|
||||||
|
- Na obe témy vyhľadať a prečítať niekoľko článkov. Uložiť záznam do databázy, napísať poznánky ku článku.
|
||||||
|
- [ ] Porozmýšľať nad témou práce.
|
||||||
|
- [x] Pokračovať v experimenotch fairseq so strojovým prekladom. Vieme pripraviť experiment na tému "spelling", "grammar" alebo training "roberta small", "bart small" na web korpuse? Toto by sa mohlo publikovať na konferenčnom článku do konca roka. treba vybrať dátovú množinu, metodiku vyhodnoteia, metódu trénovania.
|
||||||
|
- [-] Čítať knihy - Bishop-Patter Recognition. Yang: Transfer Learning.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Prvý ročník PhD štúdia
|
||||||
|
|
||||||
|
29.6.
|
||||||
|
|
||||||
|
- Vyskúšané https://github.com/NicGian/text_VAE, podľa článku https://arxiv.org/pdf/1511.06349.pdf
|
||||||
|
Tento prístup je pôvodne na Question Generation. Využíva GLOVE embeding a VAE. Možno by sa to dalo využiť ako chybový model.
|
||||||
|
- So skriptami fairseq sú zatiaľ problémy.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v otvorených úlohách.
|
||||||
|
- Vyskúšať tutoriál https://fairseq.readthedocs.io/en/latest/getting_started.html#training-a-new-model.
|
||||||
|
- Prečítať knihu "Bishop: Pattern Recognition".
|
||||||
|
|
||||||
|
|
||||||
|
17.6.
|
||||||
|
|
||||||
|
- Končí financovanie USsteel , je potrebné zmeniť tému.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Do konca ďalšieho školského roka submitovať karent článok. To je podmienka pre ďalšie pokračovanie. Článok by mal nadviazať na predošlý výskum v oblasti "spelling correction".
|
||||||
|
- Preštudovať články:
|
||||||
|
* Survey of automatic spelling correction
|
||||||
|
* Learning string distance with smoothing for OCR spelling correction
|
||||||
|
* Sequence to Sequence Convolutional Neural Network for Automatic Spelling Correction
|
||||||
|
* Iné súvisiace články. Kľúčové slová: "automatic spelling correction."
|
||||||
|
- Naučiť sa pracovať s fairseq. Naučiť sa ako funguje strojový preklad.
|
||||||
|
- Zopakovať experiment OCR Trec-5 Confusion Track. Pridaný prístup do repozitára https://git.kemt.fei.tuke.sk/dano/correct
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vymyslieť systém pre opravu gramatických chýb. Aka Grammarly.
|
||||||
|
- Využiť GAN-VAE sieť na generovanie chybového textu. To by mohlo pomôcť pri učení NS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
3.6.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripraviť experiment pri ktorom sa vyhodnotia rôzne spôsoby zhlukovania pre rôzne veľkosti priestoru (PCA, k-means, DBSCAN, KernelPCA - to mi padalo). Základ je v súbore embed.py
|
||||||
|
- Do tabuľky spísať najdôležitejšie a najmenej dôležité parametre pre rôzne konvertory a pre všetky konvertory naraz (furnace-linear.py).
|
||||||
|
- Vypočítanie presnosti pre každý konvertor zo spojeného modelu, pokračovať.
|
||||||
|
|
||||||
|
27.5.
|
||||||
|
|
||||||
|
- Našli sme medzné hodnoty pre dáta zo skriptov USS.
|
||||||
|
- Urobený skript, polynómová transformácia príznakov nepomáha.
|
||||||
|
- rozrobený skript na generovanie dát GAN.
|
||||||
|
|
||||||
|
Otvorené úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v otvorených úlohách.
|
||||||
|
- (3) Urobiť zhlukovanie a pridať informáciu do dátovej množiny. Zistiť, či informácia o zhlukoch zlepšuje presnosť. Informácia o grade umožňuje predikciu.
|
||||||
|
|
||||||
|
Stretnutie 20.5.
|
||||||
|
|
||||||
|
Otvorené úlohy:
|
||||||
|
|
||||||
|
- [ ] (1) Vypočítanie presnosti pre každý konvertor zo spojeného modelu a porovnanie s osobitnými modelmi. Chceme potvrdiť či je spojený model lepší vo všetkých prípadoch.
|
||||||
|
- [ ] (2) Doplniť fyzické limity pre jednotlivé kolónky do anotácie. Ktoré kolónky nemôžu byť negatívne? Tieto fyzické limity by mali byť zapracované do testu robustnosti.
|
||||||
|
- [ ] (4) Overenie robustnosti modelu. Vymyslieť testy invariantnosti, ktoré overia ako sa model správa v extrémnej situácii. Urobiť funkciu, kotrá otestuje parametre lineárnej regresie a povie či je model validný. Urobiť funkciu, ktorá navrhne nejaké vstupy a otestuje, či je výstup validný.
|
||||||
|
|
||||||
|
Neprioritné úlohy:
|
||||||
|
|
||||||
|
- [o] Preskúmať možnosti zníženia rozmeru vstupného priestoru. PCA? alebo zhlukovanie? Zistiť, či vôbec má zmysel používať autoenóder (aj VAE). (Asi to nemá zmysel)
|
||||||
|
- [x] Vyradenie niektorých kolóniek, podľa koeficientu lineárnej regresie (daniel, funguje ale nezlepšuje presnosť).
|
||||||
|
- Generovať umelé "extrémne" dáta. Sledovať, ako sa model správa. Extrémne dáta by mali byť fyzicky možné.
|
||||||
|
|
||||||
|
|
||||||
|
Urobené úlohy:
|
||||||
|
|
||||||
|
- Hľadanie hyperparametrov pre neurónku a náhodný les.
|
||||||
|
|
||||||
|
Report 29.4.2022
|
||||||
|
|
||||||
|
- Práca na VE.
|
||||||
|
- Čítanie článkov.
|
||||||
|
|
||||||
|
Report 8.4.2022
|
||||||
|
|
||||||
|
- Študovanie teórie
|
||||||
|
- Práca na VAE kóde rozpracovaný
|
||||||
|
|
||||||
|
Report 1.4.2022
|
||||||
|
|
||||||
|
- práca na DH neurónovej sieťi
|
||||||
|
![DH](/uss.PNG)
|
||||||
|
- študovanie o Deep Belief Network
|
||||||
|
|
||||||
|
Stretnutie 28.3.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Dokončiť podrobnú anotáciu dát. Aké sú kazuálne súvisosti medzi atribútmi?
|
||||||
|
- Zopakovať a vylepšiť DH neurónovú sieť na predikciu síry
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zvážiť použitie Deep Belief Network.
|
||||||
|
|
||||||
|
Report 25.3.2022
|
||||||
|
|
||||||
|
- Porovnávanie dát január, február (subor je na gite)
|
||||||
|
- Hodnotenie ešte nemám spisujem čo tým chcem dosiahnuť ci to ma vôbec zmysel na tom pracovať
|
||||||
|
|
||||||
Report 18.3.2022
|
Report 18.3.2022
|
||||||
|
|
||||||
@ -29,10 +250,6 @@ https://github.com/ShangtongZhang/reinforcement-learning-an-introduction)
|
|||||||
- študovanie feature selection (https://machinelearningmastery.com/feature-selection-machine-learning-python/
|
- študovanie feature selection (https://machinelearningmastery.com/feature-selection-machine-learning-python/
|
||||||
https://www.kdnuggets.com/2021/12/alternative-feature-selection-methods-machine-learning.html)
|
https://www.kdnuggets.com/2021/12/alternative-feature-selection-methods-machine-learning.html)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Report 11.3.2022
|
Report 11.3.2022
|
||||||
|
|
||||||
- Data Preprocessing (inspirácia- https://www.kaggle.com/tajuddinkh/drugs-prediction-data-preprocessing-json-to-csv)
|
- Data Preprocessing (inspirácia- https://www.kaggle.com/tajuddinkh/drugs-prediction-data-preprocessing-json-to-csv)
|
||||||
@ -53,10 +270,8 @@ Working on:
|
|||||||
- Neurónovej siete pre GAN time series (stále mam nejaké errory)
|
- Neurónovej siete pre GAN time series (stále mam nejaké errory)
|
||||||
- klasickej neuronke
|
- klasickej neuronke
|
||||||
|
|
||||||
|
|
||||||
Stretnutie 1.3.2022
|
Stretnutie 1.3.2022
|
||||||
|
|
||||||
|
|
||||||
Úlohy:
|
Úlohy:
|
||||||
|
|
||||||
- Zapracovať wandB pre reporting experimentov
|
- Zapracovať wandB pre reporting experimentov
|
||||||
@ -75,20 +290,6 @@ Report 25.02.2022
|
|||||||
- Hľadanie vhodnej implementácie na generovanie dát
|
- Hľadanie vhodnej implementácie na generovanie dát
|
||||||
- Rozpracovaná (veľmi malo) analýza datasetu peci
|
- Rozpracovaná (veľmi malo) analýza datasetu peci
|
||||||
|
|
||||||
Záznam z porady 24.2:
|
|
||||||
|
|
||||||
- tavby za sebou súvisia kvôli kalibrácii .. x tavieb
|
|
||||||
- overiť anomálie v dátach .. ci je problém signifikantný...atď.
|
|
||||||
- pýtať sa na druh šrotu, lebo niektoré sú podobne
|
|
||||||
- prečo mame rozdelene modely_ nebude stačiť jeden model ?
|
|
||||||
- možná kalibrácia , zisti prečo sú horšie dáva ? ci to je kvôli senzorom alebo kedy sa kalibruje atď.
|
|
||||||
- čo ma andrii model je lepší ako čo majú v USS
|
|
||||||
- model nemá len vedieť povedať najočakávanejšiu hodnôt ale nech vie aj určovať distribúciu.. aby nepovedal že sira vyjde tak a tak ale že vyjde xy s takou pravdepodobnosťou ... dopočítane pravdepodobnosti
|
|
||||||
- model s pravdepodobnosťou
|
|
||||||
- porovnať ktorý model kedy funguje lepšie
|
|
||||||
- prečo je taká vysoká presnosť? simulovanie meracieho pristroja s danou presnosťou pri normálnej distribúcii chyby
|
|
||||||
- distribúcia pravdepodobnosti na výstupe
|
|
||||||
|
|
||||||
Stretnutie 2.2.2022
|
Stretnutie 2.2.2022
|
||||||
|
|
||||||
In progress:
|
In progress:
|
||||||
@ -123,11 +324,10 @@ Zásobník úloh:
|
|||||||
|
|
||||||
Stretnutie 17.1.2022
|
Stretnutie 17.1.2022
|
||||||
|
|
||||||
- Mme dáta z vysokej pece (500GB)
|
- Mame dáta z vysokej pece (500GB)
|
||||||
- Zlepšený konvolučný autoenkóder - dosahuje state-of-the-art.
|
- Zlepšený konvolučný autoenkóder - dosahuje state-of-the-art.
|
||||||
- Prečítané niečo o transformers a word2vec.
|
- Prečítané niečo o transformers a word2vec.
|
||||||
|
|
||||||
|
|
||||||
Stretnutie 9.12.2021
|
Stretnutie 9.12.2021
|
||||||
|
|
||||||
- Natrénovaný autoenkóder (feed-forward) pre predikciu celkovej váhy Fe a obsahu S.
|
- Natrénovaný autoenkóder (feed-forward) pre predikciu celkovej váhy Fe a obsahu S.
|
||||||
@ -163,7 +363,6 @@ Zásobník úloh:
|
|||||||
- Nápad: Transformer network, Generative Adversarial Network.
|
- Nápad: Transformer network, Generative Adversarial Network.
|
||||||
- Nápad: Vyskúšať klasické štatistické modely (scikit-learn) - napr. aproximácia polynómom, alebo SVM.
|
- Nápad: Vyskúšať klasické štatistické modely (scikit-learn) - napr. aproximácia polynómom, alebo SVM.
|
||||||
|
|
||||||
|
|
||||||
Stretnutie 1.10.
|
Stretnutie 1.10.
|
||||||
|
|
||||||
Stav:
|
Stav:
|
||||||
@ -180,7 +379,6 @@ Stav:
|
|||||||
- Publikovať diplomovú prácu.
|
- Publikovať diplomovú prácu.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Diplomová práca 2021
|
## Diplomová práca 2021
|
||||||
|
|
||||||
- [CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=ECC3D3F0B3159C4F3216E2027BE4)
|
- [CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=ECC3D3F0B3159C4F3216E2027BE4)
|
||||||
@ -384,8 +582,6 @@ Stretnutie: 20.2.2020:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Tímový projekt 2019
|
## Tímový projekt 2019
|
||||||
|
|
||||||
Projektové stránky:
|
Projektové stránky:
|
||||||
|
BIN
pages/students/2016/maros_harahus/uss.PNG
Normal file
After Width: | Height: | Size: 35 KiB |
@ -6,12 +6,129 @@ taxonomy:
|
|||||||
tag: [opennmt,translation,demo,nlp]
|
tag: [opennmt,translation,demo,nlp]
|
||||||
author: Daniel Hladek
|
author: Daniel Hladek
|
||||||
---
|
---
|
||||||
|
|
||||||
# Martin Jancura
|
# Martin Jancura
|
||||||
|
|
||||||
*Rok začiatku štúdia*: 2017
|
*Rok začiatku štúdia*: 2017
|
||||||
|
|
||||||
## Diplomový projekt
|
## Diplomový projekt
|
||||||
|
|
||||||
|
- [GIT repozitár](https://git.kemt.fei.tuke.sk/mj130zg/DP2023)
|
||||||
|
- [DP Práca](https://opac.crzp.sk/?fn=detailBiblioForm&sid=E4E659F3575B0C5BCF0C726CCD36)
|
||||||
|
|
||||||
|
Názov diplomovej práce:
|
||||||
|
|
||||||
|
Rozpoznávanie emócií v texte
|
||||||
|
|
||||||
|
Zadanie diplomovej práce:
|
||||||
|
|
||||||
|
1. Vypracujte prehľad metód rozpoznávania sentimentu z textu.
|
||||||
|
2. Vytvorte slovenskú overovaciu množinu pre rozpoznávanie sentimentu.
|
||||||
|
3. Vyberte vhodný model pre rozpoznávanie sentimentu v slovenských textoch.
|
||||||
|
4. Vyhodnoťte vybraný model pomocou vytvorenej množiny a navrhnite jeho zlepšenia.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Ciele:
|
||||||
|
|
||||||
|
- Vedieť klasifikovať emocionálny náboj v texte pomocou neurónovej siete.
|
||||||
|
|
||||||
|
Ciele na semester:
|
||||||
|
|
||||||
|
- Získať prehľad v problematike rozpoznávania emócií z textu
|
||||||
|
- Vybrať dátovú množinu, vybrať vhodný klasifikátor, natrénovať model a vyhodnotiť výsledky.
|
||||||
|
|
||||||
|
Informácie:
|
||||||
|
|
||||||
|
- [Hate speech Project](/topics/hatespeech)
|
||||||
|
- https://www.sciencedirect.com/topics/computer-science/emotion-detection
|
||||||
|
|
||||||
|
Stretnutie 10.1.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Scraper je na GITe
|
||||||
|
- Písomná časť je začatá.
|
||||||
|
- Vyskúšaný SlovakBERT so sentiment classification
|
||||||
|
- anotované množina topky, príliš veľa HATE.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vypracovať prehľad datasetov
|
||||||
|
- Treba anotovať inú množinu, kde budú aj pozitívne príspevky.
|
||||||
|
- Vyhodnotiť P R F1
|
||||||
|
- Pripraviť zero shot experiment s Slovak GPT2.. Dostupné na Huggingface Hub.
|
||||||
|
- Výsledky experimentov dať do tabuľky
|
||||||
|
- Pokračovať v písomnej práci.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 20.1.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vylepšený scraper, tak by zachytával jednotilivé príspevky, autora, text aj rating.
|
||||||
|
- Teoretická časť nebola urobená.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zdrojové kódy scrapera pridajte na GIT.
|
||||||
|
- Vpracujte písomný prehľad datasetov pre slovenčinu a rozpoznávanie emócií https://github.com/slovak-nlp/resources.
|
||||||
|
- Vypracujte prehľad neurónových metód na rozpoznávanie emócií z textu. bert, roberta, gpt.
|
||||||
|
- Zistite, ako sa pomocou modelu GPT robí "zero shot sentiment classification".
|
||||||
|
- Vyskúšajte slovenský model pre klasifikáciu sentimentu https://huggingface.co/kinit/slovakbert-sentiment-twitter.
|
||||||
|
- Ručne anotujte vytvorenú databázu diskusných príspevkov z topky.sk
|
||||||
|
- Urobte klasifikáciu príspevkov pomocou neurónového modelu a vyhodnoťte presnosť (accuracy, precision, recall).
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Do scrapera skúste doplniť zaznamenanie ID nadradeného príspevku. ID môže byť aj nejaký hash.
|
||||||
|
- Urobte zero shot classification pomocou slovenského GPT .
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 25.11.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vieme parsovať Disqus fóra z topky.sk. Vieme získať nadpis a hlavičku článku, tagy článku. Vieme odlíšiť jednotlivé diskusné príspevky. Scraper je v javascripte, knižnica puppeteer.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zdrojové texty scrapera dajte do git repozitára.
|
||||||
|
- Nainštalujte si balíček Anaconda a HF transformers.
|
||||||
|
- Pozrite si tento model https://huggingface.co/cardiffnlp/twitter-xlm-roberta-base-sentiment. Vyskúšajte ho na anglickom texte aj na slovenskom texte. Prečítajte si vedecký článok a urobte si poznámky.
|
||||||
|
- Prečítajte si článok o modeli XLM a napíšte poznámky. Prečítajte si vedecký článok o datasete, ktorý bol použitý a urobrte si poznámky. Vyhľadajte si dataset na huggingface HUB a pozrite sa ako vyzerá. Na vyhľadávanie použite TUKE sieť a google scholar.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zo získaných slovenských dát vytvorte overovaciu množinu pre vybranýb model pre klasifikáciu sentimentu.
|
||||||
|
- Pozrieť či existuje databáza.
|
||||||
|
|
||||||
|
Stretnutie 8.6.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vypracovaný tutoriál huggingface
|
||||||
|
- Vytvorený jednoduchý scraper Beautifulsoup na Topky.sk
|
||||||
|
- Rozpracovaný scraper Selenium
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [-] Dať kódy na GIT - scraper (twitter, topky) aj tutorial
|
||||||
|
- [ ] Dopísať písomnú správu o tutoriáli (2 až 3 strany) - čo ste sa dozvedeli o BERT, čo ste urobili. Dajte to do README.md.
|
||||||
|
|
||||||
|
Stretnutie 20.5.2022
|
||||||
|
|
||||||
|
Mierny pokrok nastal len v oblasti Python.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v otvorených úlohách.
|
||||||
|
- Chceme sa sústrediť na "sledovanie medií".
|
||||||
|
- [x] Vytvoriť skript pre sledovanie Twitter kanálov. Skript by mal v pravidelných interovaloch získať nový obsah a uložiť ho do databázy (cassandra?). Zistitie, ktoré informácie o príspevkoch sú dôležité. čo vieme zistiť o príspevkoch?
|
||||||
|
- Aký emočný náboj je v príspevku? Cieľom môže byť detekcia nenávistného obsahu.
|
||||||
|
|
||||||
|
|
||||||
11.3.2022
|
11.3.2022
|
||||||
|
|
||||||
Návrh na tému:
|
Návrh na tému:
|
||||||
@ -23,20 +140,19 @@ Návrh na tému:
|
|||||||
Návrh na postup:
|
Návrh na postup:
|
||||||
|
|
||||||
1. Oboznámenie sa s problematikou.
|
1. Oboznámenie sa s problematikou.
|
||||||
2. Zostavenie databázy príspevkov.Stiahnutie a predspracovanie.
|
2. Zostavenie databázy príspevkov. Stiahnutie a predspracovanie.
|
||||||
3. Spracovanie databázy - natrénovanie neurónovej siete, klasifikácia a vyhodnotenie.
|
3. Spracovanie databázy - natrénovanie neurónovej siete, klasifikácia a vyhodnotenie.
|
||||||
|
|
||||||
Úlohy:
|
Úlohy:
|
||||||
|
|
||||||
- Zistite ako funguje neurónový jazykový model typu BERT - ako ho trénujeme a ako ho dotrénujeme. Zistite ako vieme pomocou neurónového jazykového modelu rozpoznávať sentiment v texte. Napíšte o tom krátku správu.
|
- [ ] Zistite ako funguje neurónový jazykový model typu BERT - ako ho trénujeme a ako ho dotrénujeme. Zistite ako vieme pomocou neurónového jazykového modelu rozpoznávať sentiment v texte. Napíšte o tom krátku správu.
|
||||||
- Nainštalujte si Anaconda, Oboznámte sa s knižnicou *HuggingFace Transformers*. Vyberte si tutoriál, prejdite ho a napíšte krátku správu.
|
- [ ] Nainštalujte si Anaconda, Oboznámte sa s knižnicou *HuggingFace Transformers*. Vyberte si tutoriál, prejdite ho a napíšte krátku správu.
|
||||||
- Vyskúšajte tento [model](https://huggingface.co/nlptown/bert-base-multilingual-uncased-sentiment) pre klasifikáciu anglických textov.
|
- [ ] Vyskúšajte tento [model](https://huggingface.co/nlptown/bert-base-multilingual-uncased-sentiment) pre klasifikáciu anglických textov.
|
||||||
|
|
||||||
Zásobník úloh:
|
Zásobník úloh:
|
||||||
|
|
||||||
- Pokračujte v štúdiu Pythonu, Oboznámte sa s Twitter API a zistite ako získať nejaký príspevok na Twitteri.
|
- [x] Pokračujte v štúdiu Pythonu, Oboznámte sa s Twitter API a zistite ako získať nejaký príspevok na Twitteri.
|
||||||
- Naučte sa pracovať s knižnicou BeautifulSoup a pripravte scraper na vybraný zdroj.
|
- [ ] Naučte sa pracovať s knižnicou BeautifulSoup a pripravte scraper na vybraný zdroj.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
155
pages/students/2018/adrian_remias/README.md
Normal file
@ -0,0 +1,155 @@
|
|||||||
|
---
|
||||||
|
title: Adrián Remiáš
|
||||||
|
published: true
|
||||||
|
date: 01-02-2014
|
||||||
|
taxonomy:
|
||||||
|
category: [dp2024]
|
||||||
|
tag: [nlp, transformers, interpuction]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
# Adrián Remiáš
|
||||||
|
|
||||||
|
Rok začiatku štúdia: 2018
|
||||||
|
|
||||||
|
|
||||||
|
# Diplomová práca 2024
|
||||||
|
|
||||||
|
Návrh na zadamie:
|
||||||
|
|
||||||
|
1. Vypracujte prehľad metód obnovy interpunkcie v slovenskom jazyku.
|
||||||
|
2. Vypracujte prehľad metód jazykového modelovania pomocou neurónovej siete typu Transformer.
|
||||||
|
3. Pripravte dátovú množinu pre trénovanie a vyhodnotenie neurónovej siete na úlohu dopĺňania a opravy interpunkcie.
|
||||||
|
4. Vyberte viacero neurónových modelov, natrénujte ich na úlohu dopĺňania a opravy interpunkcie.
|
||||||
|
5. Vyhodnoťte experimenty a vyberte najlepší model.
|
||||||
|
|
||||||
|
|
||||||
|
Ciele:
|
||||||
|
|
||||||
|
- Natrénovanie modelu pre opravu iterpunkcie a jeho vyhodnotenie.
|
||||||
|
- Výsledky by mali byť prezentovateľné vo vedeckom článku.
|
||||||
|
|
||||||
|
Stretnutie 3.1.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
. Funguje zero shot metóda založená na dopňĺňaní mask tokenu.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
1. Vyskúšajte príklad [token classification](https://github.com/huggingface/transformers/tree/main/examples/pytorch/token-classification) z repozitára HF transformers pre úlohu NER alebo POS. Oboznámte sa s argumentami príkazového riadka.
|
||||||
|
2. Pripravte si trénovacie dáta. Použite formát JSON. Na jeden riadok ide jeden príklad. Príklad je tvorený textom (zoznamom slov) a interpunkciou (zoznam tried). Budete mať súbor train.json a test.json. Na prípravu dátovej množiny si pripravte skript aby to bolo opakovateľné.
|
||||||
|
3. Spustite skript so svojimi dátami a so slovenským BERTOMN. Nastavte parametre príkazového riadku a formát trénovacej množiny tak aby tomu skript rozumel.
|
||||||
|
4. Vyskúšajte viaceré experimenty s viacerými rôznymi BERT modelmi s podporou slovenčiny a výžsledky zapíšte do tabuľky.
|
||||||
|
5. Skúste číselne vyhodnotiť aj Vašu "zero shot" metódu.
|
||||||
|
- Pokračujte v písaní tectu práce.
|
||||||
|
|
||||||
|
Stretnutie 7.12.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vytvorený program na trénovanie neurónovej siete. Masked language modeling skript run_mlm.py. Roberta for Masked LM DataCollatorForLanguageModelling.
|
||||||
|
- Navrhnutý skript pridáva mask token medzi slová a sleduje, čo doplní model. Časť s trénovaním je v tomto prípade zbytočná.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vyhoddnotte prenosť Vami navrhnutého prístupu. Mali by ste zostaviť kontingenčnú tabuľku. (confusion matrix). Tabuľka má na jednej osi očakávané hodnoty a na druhej osi skutočné hodnoty. https://www.analyticsvidhya.com/blog/2020/09/precision-recall-machine-learning/
|
||||||
|
- O spôsobe vyhodnotenia môžete napísať aj krátku podkapitolu.
|
||||||
|
- Uvedte zdroje odkiaľ ste čerpali pri tvorbe.
|
||||||
|
|
||||||
|
```
|
||||||
|
Pôvodný text: Dnes je pekný deň .
|
||||||
|
Opravený text Dnes , je pekný deň .
|
||||||
|
|
||||||
|
. , ? ! x toto dáva sieť
|
||||||
|
. 2 1 0 0 0
|
||||||
|
,
|
||||||
|
?
|
||||||
|
!
|
||||||
|
x 1 1
|
||||||
|
očakávané hodnoty
|
||||||
|
```
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Dotrénujte neurónovú sieť na úlohu dopňlňania interpunkcie. Úloha je formulovaná ako "klasifikácia postupností" a je podobná úlohám "part of speech tagging" alebo "named entity recognition". Pokračujte v prieskume literatúry na túto tému a robte si poznámky o prístupoch.
|
||||||
|
- Podrobné {vysvetlenie](https://medium.com/@alexmriggio/bert-for-sequence-classification-from-scratch-code-and-theory-fb88053800fa).
|
||||||
|
|
||||||
|
Takto by mala vyzerať trénovacia množina.
|
||||||
|
|
||||||
|
```
|
||||||
|
x x x . , x x .
|
||||||
|
Dnes je pekný den Povedala že ostane doma
|
||||||
|
```
|
||||||
|
|
||||||
|
- Môžete využiť [skripty](https://github.com/huggingface/transformers/tree/main/examples/pytorch/token-classification). Tam je potrebn0 správne pripraviť dátovú množinu tak, aby na ľavej strane bole len slová a na pravej strane bola ku kažnédmu slovu pridelená trieda. Formát by mal byť JSON, na jeden riadok jeden dokument, zrozumiteľný pre [HF datasets](https://huggingface.co/docs/datasets/loading#json).
|
||||||
|
|
||||||
|
Stretnutie 23.11.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Boli nainštalované softvéry na idoc podľa pokynov.
|
||||||
|
- Śtúdium a kódovanie: problémy.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ] Podrobne sa oboznámte https://github.com/xashru/punctuation-restoration/tree/master . Prečítajte si
|
||||||
|
článok. Urobte si poznámky čo ste sa dozvedeli. Zistite, aké metódy iné sa používajú na PR a aká metóda je v článku. Zistitie, ako to súvisí s Modelom BERT.
|
||||||
|
- Pohľadajte iný podobný repozitár.
|
||||||
|
- Získajte zdrojové kódy a spustite experimenty v naglickom a bangla jazyku s dátami dodanými v repozitári. Oboznámte sa so zdrojovými kódmi a skúste pochopiť ktorá časť robí čo.
|
||||||
|
- Pokračujte v štúdiu jazyka Python. https://diveintopython3.net/
|
||||||
|
- Pokračujte v písaní práce podľa pokynov vyššie.
|
||||||
|
|
||||||
|
Stretnutie 26.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Štúdium a poznámky podľa pokynov. Vyskúšaná Anaconda a transformers.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ] Pokračovať v štúdiu a v poznámkach. To je teoretická časť DP.
|
||||||
|
- [-] Na katedrovom gite si vytvorte repozitár s názvom DP2024, do neho dajte kódy pre tvorbu dát a trénovanie siete. Dáta nedávajte na git.
|
||||||
|
- [x] Inštalujte Pytorch s podporou CUDA 10.1 alebo 10.2 z https://pytorch.org/get-started/previous-versions/
|
||||||
|
- [x] Na idoc nainštalujte transformers, pytorch s CUDA 10.1 pomocou Anaconda.
|
||||||
|
- Vyberte množinu slovenských textov a upravte ju do podoby vhodnej na trénovanie neurónovej siete. Dáta sa nachádzajú na servri idoc.fei.tuke.sk v /mnt/sharedhome/hladek/bert-train/data/corpus3/.
|
||||||
|
Na ľavej strane bude text bez interpunkcie. Na pravej strane bude len interpunkcia.
|
||||||
|
- [ ] Natrénujte neurónovú sieť. Množinu rozdeľte na trénovaciu a testovaciu časť. Začneme s modelom SlovakBERT.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vyskúšajte iný model ako je Slovak BERT.
|
||||||
|
- Pripravte dáta na "čiastočné" dopňlňanie. Skúste identifikovať iba koniec vety. Skúste náhodne "pokaziť" interpunkciu a pomocou neurónovej siete ju opraviť.
|
||||||
|
|
||||||
|
Stretnutie 5.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Urobená bakalárska práca na tému "Analýza textu z pohľadu forenznej lingvistiky".
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Nainštalujte si balíček Anaconda. Pomocou neho si nainštalujete knižnicu Pytorch s podporou CUDA.
|
||||||
|
|
||||||
|
|
||||||
|
conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia
|
||||||
|
pip install transformers
|
||||||
|
|
||||||
|
- [x] Oboznámte sa s frameworkom HuggingFace [Transformers](https://huggingface.co/docs/transformers/index). Vypracujte si viacero úvodných tutoriálov.
|
||||||
|
- [x] Podrobne sa oboznámte s úlohou [token classificaton](https://huggingface.co/docs/transformers/tasks/token_classification).
|
||||||
|
- [x] Prečítajte si [článok](https://ieeexplore.ieee.org/abstract/document/9089903 Comparison of Recurrent Neural Networks for Slovak Punctuation Restoration, urobte si poznámky.
|
||||||
|
- [x] Prečítajte si "Attention is all you need" https://arxiv.org/abs/1706.03762, urobte si poznámky.
|
||||||
|
- [-] Vyhľadajte heslo "punctuation restoration" na google scholar, poznačte si najdôležitejšie články. Prečítajte si ich a napíšte, akú metódu používaju.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vyberte množinu slovenských textov a upravte ju do podoby vhodnej na trénovanie neurónovej siete. Natrénujte neurónovú sieť.
|
||||||
|
- Na katedrovom gite si vytvorte repozitár s názvom DP2024, do neho dajte kódy pre tvorbu dát a trénovanie siete. Dáta nedávajte na git.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -10,6 +10,7 @@ taxonomy:
|
|||||||
|
|
||||||
Rok začiatku štúdia: 2018
|
Rok začiatku štúdia: 2018
|
||||||
|
|
||||||
|
Už neštuduje tento študijný program.
|
||||||
|
|
||||||
## Diplomová práca 2023
|
## Diplomová práca 2023
|
||||||
|
|
||||||
@ -39,21 +40,13 @@ Stretnutie 18.2.
|
|||||||
Úlohy:
|
Úlohy:
|
||||||
|
|
||||||
- Vyberte 3 vedecké články, prečítajte si ich a napíšte poznámky čo ste sa dozvedeli. Poznačte si bibliografické informácie o článkoch.
|
- Vyberte 3 vedecké články, prečítajte si ich a napíšte poznámky čo ste sa dozvedeli. Poznačte si bibliografické informácie o článkoch.
|
||||||
- Heslá na vyhľadávanie: emotion recognition, transfer learning, deep learning, emotion classification, emotion detection
|
- Heslá na vyhľadávanie: eomotion recognition, transfer learning, deep learning, emotion classification, emotion detection
|
||||||
- Na vyhľadávanie článkov použite google scholar alebo scopus.com.
|
- Na vyhľadávanie článkov použite google scholar alebo scopus.com.
|
||||||
- Nainštalujte si balíček Anaconda
|
- Nainštalujte si balíček Anaconda
|
||||||
- Prejdite si niekoľko Python tutoriálov, odporúčam online knihu Dive Into Python 3
|
- Prejdite si niekoľko Python tutoriálov, odporúčam online knihu Dive Into Python 3
|
||||||
|
|
||||||
Splnené úlohy 26.3.2021 :
|
|
||||||
|
|
||||||
- Naštudoval som si základy neuronových sieti
|
|
||||||
- Nainštaloval som si balíček Anaconda + krátky úvod
|
|
||||||
- Štúdium programovania v programovacom jazyku Python
|
|
||||||
- Úvod do emotion classification a emotion detection
|
|
||||||
- Oboznámenie s knižnicou Huggingface
|
|
||||||
|
|
||||||
Zásobník úloh:
|
Zásobník úloh:
|
||||||
|
|
||||||
- Oboznámte sa s knižnicou Huggingface Transformers
|
- Oboznámte sa s knižnicou Huggingface Transformers
|
||||||
.
|
|
||||||
|
|
||||||
|
228
pages/students/2018/david_omasta/README.md
Normal file
@ -0,0 +1,228 @@
|
|||||||
|
---
|
||||||
|
title: Dávid Omasta
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [dp2023,dp2024]
|
||||||
|
tag: [lm]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
Začiatok štúdia: 2018
|
||||||
|
|
||||||
|
Súvisiace stránky:
|
||||||
|
|
||||||
|
- [Question Answering](/topics/question) - interný projekt
|
||||||
|
- Jozef Olekšák
|
||||||
|
- Matej Čarňanský (BERT)
|
||||||
|
- Ondrej Megela
|
||||||
|
|
||||||
|
# Diplomová práca 2024
|
||||||
|
|
||||||
|
Vedúci: Daniel Hládek
|
||||||
|
|
||||||
|
Návrh na názov:
|
||||||
|
|
||||||
|
Generatívne modely pre automatické odpovede na otázky v slovenskom jazyku
|
||||||
|
|
||||||
|
Návrh na zadanie DP:
|
||||||
|
|
||||||
|
- Vypracujte prehľad najnovších generatívnych neurónových jazykových modelov.
|
||||||
|
- Vypracujte prehľad slovenských a multilinguálnych generatívnych jazykových modelov.
|
||||||
|
- Navrhnite experiment, pri ktorom bude model generovať odpovede na zadané otázky v kontexte.
|
||||||
|
- Analyzujte výsledky experimentu vhodným spôsobom a identifikujte možné zlepšenia.
|
||||||
|
|
||||||
|
Ciele:
|
||||||
|
|
||||||
|
- Pripraviť demo.
|
||||||
|
- Pripravť vedecký článok z DP.
|
||||||
|
|
||||||
|
Stretnutie 9.2.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Dotrénovaný mt5-small na poľský jazyk.
|
||||||
|
- Práca na texte
|
||||||
|
- Urobené demo streamlit a Dockerfile.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zdrojáky dajte na GIT
|
||||||
|
- Pridajte výsledky do tabuľky
|
||||||
|
- Pokračujte v práci na texte.
|
||||||
|
- Pridajte experimenty s modelom https://huggingface.co/google/umt5-small na slovenský, anglický aj poľský jazyk.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 8.12.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Urobený Dockerfile a compose.
|
||||||
|
- Pridaný experiment s mT5.
|
||||||
|
- Práca na teoretickej časti.
|
||||||
|
- Vyskúšaná LLAMA na idoc aj mt5-base ale nejde kvôli GPU
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v písomnej práci. Výsledky experiemntov opíšte a dajte do tabuliek.
|
||||||
|
- Dokončite DEMOZ
|
||||||
|
- pre porovnanie, vyskúšajte dotrénovať mt5 na dátovej sade pre iný jazyk. Angličtina - squad, Poľský jazyk clarin-pl/poqaud .
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Keď bude k dispozícii, vyskúšajte nový slovenský t5 model.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 10.11
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- DP je rozpísaná. Existuje draft.
|
||||||
|
- Vypracovaný experiment s Slovak t5 small
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [-] Opravte DP podľa pokynov
|
||||||
|
- [x] Pridajte experiment s mt5 small .https://huggingface.co/google/mt5-small
|
||||||
|
- [-] Pripravte demo na nasadenie. Zmente Windows kontajner na Linux.
|
||||||
|
- [x] zdrojáky dajte na kemt GIT
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [-] Skúste generovanie odpovedí s modelom LLAMA alebo podobným.
|
||||||
|
- [x] Skúste generovanie odpovedí s "base" modelmi na školskom servri.
|
||||||
|
|
||||||
|
Stretnutie 6.10
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na Dockerfile so streamlit
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pozrieť a pracovať na minulých otvorených úlohách.
|
||||||
|
- Pripraviť draft na prečítanie.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vyskúšať aj iné generatívne modely a pripraviť z nich experimenty.
|
||||||
|
- Pripraviť a vyskúšať aj iné dátové množiny.
|
||||||
|
|
||||||
|
|
||||||
|
# Diplomová práca 2023
|
||||||
|
|
||||||
|
Téma: Dotrénovanie slovenského generatívneho jazykového modelu.
|
||||||
|
|
||||||
|
Vedúci: Ján Staš
|
||||||
|
|
||||||
|
Návrh na názov:
|
||||||
|
|
||||||
|
Generatívne modely slovenského jazyka
|
||||||
|
|
||||||
|
Návrh na zadanie DP:
|
||||||
|
|
||||||
|
- Vypracujte prehľad najnovších generatívnych neurónových jazykových modelov.
|
||||||
|
- Vypracujte prehľad slovenských a multilinguálnych generatívnych jazykových modelov.
|
||||||
|
- Navrhnite experiment, pri ktorom bude model generovať odpovede na zadané otázky a kontext.
|
||||||
|
- Analyzujte výsledky experimentu vhodným spôsobom a identifikujte možné zlepšenia.
|
||||||
|
|
||||||
|
Ciele na zimný semester:
|
||||||
|
|
||||||
|
Praktické:
|
||||||
|
|
||||||
|
- Rozbehajte proces dotrénovania jazykových modelov pomocou knižnice Huggingface Transformers
|
||||||
|
- Vyberte alebo vytvorte vhodnú dátovú množinu ktorá bude obsahovať slovenské dialógu.
|
||||||
|
- Vyskúšajte slovenský generatívny model GPT a dotrénujte ho pre použitie v dialógovom systéme.
|
||||||
|
- Vytvorte demonštračnú aplikáciu.
|
||||||
|
|
||||||
|
Teoretické:
|
||||||
|
|
||||||
|
- Vypracujte prehľad najnovších generatívnych neurónových jazykových modelov (cca 20 strán).
|
||||||
|
- Napíšte návod na inštaláciu a návod na použitie skriptov pre dotrénovanie (cca 5 strán).
|
||||||
|
|
||||||
|
Stretnutie 25.4.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Napísaný draft práce
|
||||||
|
- Pripravené demo s generovaním otázok pomocou t5, huggingface, streamlit, fastapi.
|
||||||
|
- Git je momentálne na https://git.kpi.fei.tuke.sk/do867bc
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pracovať na textovej časti podľa poznámok - zlepšiť text, štruktúru a úpravu.
|
||||||
|
- Vytvoriť repozitár na git.kemt.fei.tuke.sk a dajte tam zdrojáky
|
||||||
|
- Finalizovať repozitár s demom. Pridajte odkazy na modely, modely nedávajte na GIT. Na git dajte zdrojové kódy v Python a Notebooky. Pridajte README s opisom kódov a návodom na inštaláciu.
|
||||||
|
- Skontrolujte výsledky ROUGE, vyzerajú podozrivo.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vytvorte Dockerfile
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 24.2.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
|
||||||
|
- Rozbehaný notebook na dotrénovanie slovenského t5 na úlohu generatívneho question answering.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Dajte notebook na GIT
|
||||||
|
- [x] Vyhodnnotte presnosť generovania odpovede pomocou P-R-F1 pre celú dev množinu.
|
||||||
|
- [-] Pokračujte v písaní textu DP. Opíšte slovenský QA dataset. Slovne opíšte experiment. Aký postup ste použili, aké dáta, aké modely.
|
||||||
|
- [x] Zopakujte experiment pre model mt5-small, mt5-base. Výsledky dajte do tabuľky.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 24.11
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- nainštalované prostredie na idoc, spustený hf skript run_generation.py
|
||||||
|
- prečítané články.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [-] písomne vysvetlite ako funguje neurónová sieť typu Transformer . Uveďte odkazy na odborné články.
|
||||||
|
- [ ] Písomne vysvetlite, čo to je generatívny jazykový model a ako funguje. Uveďte odkazy na najnovšie články o generatívnych jazykových modeloch - T5, GPT, BART.
|
||||||
|
- Vyskúšajte tento skript run_clm.py : https://github.com/huggingface/transformers/tree/main/examples/pytorch/language-modeling. Pozrite si príklad na run_mlm.py v repozitári https://git.kemt.fei.tuke.sk/dano/bert-train v adresári hugging/roberta-train
|
||||||
|
- Pozrite si tento tutoriál https://towardsdatascience.com/fine-tune-a-non-english-gpt-2-model-with-huggingface-9acc2dc7635b
|
||||||
|
- Pozrite si toto demo https://huggingface.co/blog/few-shot-learning-gpt-neo-and-inference-api
|
||||||
|
- Vytvorte si git repozitár do ktoréhu budete ukladať Vaše skripty.
|
||||||
|
- Vyskúšajte slovenský GPT model https://huggingface.co/Milos/slovak-gpt-j-162M (je malý, stredný, veľký)
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 14.10.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Na vlastnom počítači rozbehané Anaconda, Pytorch a CUDA.
|
||||||
|
- Prečítané články.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať.
|
||||||
|
|
||||||
|
Stretnutie 7.10.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Obznámený s Google Colab. Vyskúšané tutoriály BERT text classification,
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [-] Prečítajte si ako funguje neurónová sieť typu Transformer a [ ] písomne to vysvetlite. Uveďte odkazy na odborné články.
|
||||||
|
- [ ] Písomne vysvetlite, čo to je generatívny jazykový model a ako funguje. Uveďte odkazy na najnovšie články o generatívnych jazykových modeloch - T5, GPT, BART.
|
||||||
|
- [x] Nainštalujte si prostredie Anaconda, knižnicu PyTorch s podporou CUDA a knižnicu HF transformers. Použite server idoc.
|
||||||
|
- [x] Vyskúšajte tento skript: https://github.com/huggingface/transformers/tree/main/examples/pytorch/text-generation.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Prečítajte si ako funguje neurónová sieť typu GPT a písomne to vysvetlite, Uveďte odkazy na odborné články.
|
||||||
|
- Vyskúšajte tento tutoriál https://towardsdatascience.com/fine-tune-a-non-english-gpt-2-model-with-huggingface-9acc2dc7635b
|
||||||
|
- Pozrite si toto demo https://huggingface.co/blog/few-shot-learning-gpt-neo-and-inference-api
|
||||||
|
- Vytvorte si git repozitár do ktoréhu budete ukladať Vaše skripty.
|
||||||
|
- Vyskúšajte slovenský GPT model https://huggingface.co/Milos/slovak-gpt-j-162M (je malý, stredný, veľký)
|
@ -17,6 +17,134 @@ Súvisiace stránky:
|
|||||||
- [Question Answering](/topics/question) - interný projekt
|
- [Question Answering](/topics/question) - interný projekt
|
||||||
- Matej Čarňanský (BERT)
|
- Matej Čarňanský (BERT)
|
||||||
|
|
||||||
|
|
||||||
|
Pozrieť toto:
|
||||||
|
|
||||||
|
https://paperswithcode.com/task/text-generation?page=3
|
||||||
|
|
||||||
|
# Diplomová práca 2023
|
||||||
|
|
||||||
|
|
||||||
|
https://opac.crzp.sk/?fn=detailBiblioForm&sid=E4E659F3575B0C5BCF0F726CCD36
|
||||||
|
|
||||||
|
Nazov:
|
||||||
|
|
||||||
|
Automatické generovanie otázok v slovenskom jazyku
|
||||||
|
|
||||||
|
1. Vypracujte prehľad generatívnych jazykových modelov.
|
||||||
|
2. Vypracujte prehľad vyhodnocovacích metrík pre generatívne modely.
|
||||||
|
3. Navrhnite a vykonajte viaceré experimenty pre úlohu generovania otázok.
|
||||||
|
4. Vyhodnoťte experimenty vhodnou metrikou a navrhnite zlepšenia modelu generovania otázok.
|
||||||
|
|
||||||
|
Súvisiace práce:
|
||||||
|
|
||||||
|
- Dávid Omasta
|
||||||
|
|
||||||
|
Cieľ: Využiť slovenský generatívny model na tvorbu databázy otázok a odpovedí.
|
||||||
|
|
||||||
|
https://git.kemt.fei.tuke.sk/om385wg/DP
|
||||||
|
|
||||||
|
Stretnutie 24.2.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vytvorený notebook pre vyhodnotenie generovanie otázok pomocou BLEU. Zatiaľ nefunguje, pretože asi je potrebné spoávne zoradiť vygenerovanú otázku a referenciu, Ku paragrafu môže existovať viacero rôznych otázok, preto je tažké ich porovnať pomocou BLEU ngramov.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Na vyhodnotenie použiť sémantický model. POdľa modelu vytvoriť dvojice - generovaná veta a referencia.
|
||||||
|
- Na vyhodnotneie použiť "Answerability" - QA model s thresholdom.
|
||||||
|
- Pracovať na diplomovej práci - písať prehľad - metódy, metriky vyhodnotenia, datasety.
|
||||||
|
- Do DP pripraviť experiment s vyhodnotením.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
- Priradiť vgenerované vety ku referencii na základe sémantickej podobnosti.
|
||||||
|
- Priamo merať sémantickú pokdobnosť vygenerovaných viet a referenciíá.
|
||||||
|
- Použiť operátor max, mean alebo kl-diveregencia, cross-entropy?
|
||||||
|
|
||||||
|
Stretnutie 23.1.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Modifikovany ssk quad dataset, tak aby aby sa dal vykonat finetuning t5. Vstupom je kontext a viacero otazok.
|
||||||
|
- Dotrenovany t5 model na generovanie otazok. Vyzera ze ide.
|
||||||
|
- Vyskusany few shot learning pomocou prikladov zo sk quad.
|
||||||
|
|
||||||
|
Ulohy:
|
||||||
|
|
||||||
|
- Pokracovat v pisani podla aktualizovaneho zadania
|
||||||
|
- Implementovat vyhodnbotenie generovania otazok. Vyhodnotenie pomocou generovanej odpovede. BLEU-ROUGE-METEOR pre gemnerovanue otazky a gold truth otazky. Ako sa to robi v literature ? Zistit a napisat.
|
||||||
|
|
||||||
|
|
||||||
|
Zasobnik uloh:
|
||||||
|
|
||||||
|
- Navrhnut eperimenty pre DP/clanbok.
|
||||||
|
- porovnat slovensky a anglicky model. Mozno aj iny jazyk.
|
||||||
|
- vyskusat, ako pomahaju generovane toazky pri QA.
|
||||||
|
- rucne vyhodnotit vygenerovane otazky.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 22.12.
|
||||||
|
|
||||||
|
- Slovenský GPT model nefunguje na few shot generovanie otázok.
|
||||||
|
- Existuje slovenský T5 model small. Ten funguje.
|
||||||
|
- Vyskúšaný finetuning na colabe na slovenský T5 model na anglických dátach, zbehol za 1.5. hodiny.
|
||||||
|
- Nájdený QA evaluátor, ktorý ohodnotí vygenerované otázky pomocou BERT. Evaluátor hodnotí, či otázka a odpovedˇ sedia spolu. Trénuje sa na rovnakom datasete ako generátor.
|
||||||
|
- QA evaluátor a generátor https://github.com/AMontgomerie/question_generator
|
||||||
|
- Finetuning slovenského T5 https://colab.research.google.com/drive/1z-Zl2hftMrFXabYfmz8o9YZpgYx6sGeW?usp=sharing
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pracovať na textovej časti DP a.k.a. ATKS
|
||||||
|
- Skontrolovať a na ďalšom stretnutí updatovať zadanie DP.
|
||||||
|
- Dokončiť skripty a generovať otázky pre slovenský jazyk.
|
||||||
|
- Vyhodnotiť kvalitu generovania otázok.
|
||||||
|
- Pripraviť experiment, kde vo viacerých scenároch (finetuning, few shot) generujeme otázky.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pripraviť článok (do časopisu). Najprv prekladom z DP.
|
||||||
|
- Pripraviť aj out-of-domain test - iná doména (noviny, úäradné dokumenty). Iný jazyk. Porovnanie slovenského a anglického generovanie.
|
||||||
|
- Pripraviť test, kde odmieriame prínos automaticky generovanej databázy na probmém question answering.
|
||||||
|
- Použiť generátor pri manuálnej anotácii. Človek môže hodnotiť kvalitu generovanej otázky alebo ju opraviť.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 28.10
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
- Vyskúšaný slovenský GPT model v rôznych veľkostiach. Generovanie funguje. Obbmedzene funguje aj zero shot sentiment classification. Zagtiaľ nefuguje pre generovanie otázok.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v Zero Shot: Vymeniť Sentence za Veta. Pozrieť Separátor v slovníku.
|
||||||
|
- Skúsiť rozbehať run_clm pre slovenský GPT model pre úlohu generovania otázok. Poskytnutý prístup do repozitára bert-train. Ak skript bude fungovať, tak ho pridajte do repozitára bert-train/huggingface/clm
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Možno by sa dalo formulovať úlohu ako klasický machne translation a použiť niekotrý existujúci setup pre preklad bez predtrénovania. Existujú skripty pre fairseq.
|
||||||
|
- Možno bude fungovať nejaký multilinguálny generatívny model.
|
||||||
|
|
||||||
|
Stretnutie 7.10:
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- PatilSuraj zatiaľ nefunguje. Funguje iba na T5 a Bart vlastné anglické, nefunguje na gpt-j ano na mt5. Stále je tam možnosť vyskúšať vlastný slovenský BART.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Vyskúšať slovenský GPT model v úlohe few-shot learning. Inšpirácia https://huggingface.co/blog/few-shot-learning-gpt-neo-and-inference-api. Použite niektorý prístup z patilsuraj.
|
||||||
|
- [ ] Vyoracujte písomný prehľad generatívnych jazykových modelov.
|
||||||
|
- [ ] Vypracujte písomný prehľad metód generovania otázok pomocou jazykového modelu. Nezabudnite na odkazy na odbornú literatúru.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [ ] Dotrénovať slovenský GPT model pomocou HF skriptu run_clm.py
|
||||||
|
- [ ] Zistiť aký veľký model nám funguje.
|
||||||
|
- [ ] Vybrať vhodný server na dorénovanie. Koľko GRAM potrebujeme?
|
||||||
|
- [ ] Záložná možnosť - písať pre anglický jazyk.
|
||||||
|
|
||||||
## Diplomový projekt 1 2022
|
## Diplomový projekt 1 2022
|
||||||
|
|
||||||
Cieľ:
|
Cieľ:
|
||||||
@ -24,6 +152,56 @@ Cieľ:
|
|||||||
- Vytvoriť a vyhodnotiť generatívny model slovenského jazyka.
|
- Vytvoriť a vyhodnotiť generatívny model slovenského jazyka.
|
||||||
- Navrhnúť a vytvoriť overovaciu množinu pre slovenské generatívne modely.
|
- 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".
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v otvorených úlohách. Rozbehať skripty "patil-suraj".
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vyskúšať existujúci slovenský BART model (od vedúceho).
|
||||||
|
- Natrénovať a vyskúšať nový slovenský BART model (aj pre vedúceho).
|
||||||
|
|
||||||
|
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
|
||||||
|
- Postup: (https://haystack.deepset.ai/tutorials/question-generation)
|
||||||
|
- kompatibilný s HF Transformers
|
||||||
|
- https://github.com/deepset-ai/haystack#mortar_board-tutorials
|
||||||
|
- https://www.deepset.ai/blog/generate-questions-automatically-for-faster-annotation
|
||||||
|
|
||||||
|
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.
|
11.3.
|
||||||
|
|
||||||
- Vyskúšaný GPT na cloab, zatiaľ nefunguje kvôli pamäti.
|
- Vyskúšaný GPT na cloab, zatiaľ nefunguje kvôli pamäti.
|
||||||
|
@ -19,6 +19,23 @@ Systémy pre generovanie odpovede na otázku v prirodzenom jazyku
|
|||||||
3. Vytvorte demonštračnú webovú aplikáciu pre vybraný systém.
|
3. Vytvorte demonštračnú webovú aplikáciu pre vybraný systém.
|
||||||
4. Navrhnite zlepšenia systému pre generovanie odpovede.
|
4. Navrhnite zlepšenia systému pre generovanie odpovede.
|
||||||
|
|
||||||
|
Stretnutie 8.4.
|
||||||
|
|
||||||
|
Progres zatiaľ nenastal.
|
||||||
|
|
||||||
|
Úlohy platia z minulého stretnutia.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Študujte Python a Docker.
|
||||||
|
- Pripravte nasadenie aplikácie pomocou systému Docker. Napíšte Dockerfile.
|
||||||
|
- Napíšte vlastnú aplikáciu Streamlit alebo inej knižnice (pywebio, gradio).
|
||||||
|
- Inšpirujte sa:
|
||||||
|
- https://github.com/gradio-app/hub-bert-squad
|
||||||
|
- https://www.mihaileric.com/posts/state-of-the-art-question-answering-streamlit-huggingface/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Stretnutie 17.1.2022
|
Stretnutie 17.1.2022
|
||||||
|
|
||||||
- Zmenené texty v demo aplikácii
|
- Zmenené texty v demo aplikácii
|
||||||
|
@ -18,6 +18,7 @@ Návrh na zadanie:
|
|||||||
4. Vykonajte sadu testov pre overenia priepustnosti operácií zápisov a čítania.
|
4. Vykonajte sadu testov pre overenia priepustnosti operácií zápisov a čítania.
|
||||||
5. Identifikujte slabé miesta distribuovaného úložiska a navrhnite zlepšenia.
|
5. Identifikujte slabé miesta distribuovaného úložiska a navrhnite zlepšenia.
|
||||||
|
|
||||||
|
TO-DO na Diplomovku
|
||||||
Cieľ práce:
|
Cieľ práce:
|
||||||
|
|
||||||
- Zlepšiť proces získavania informácií
|
- Zlepšiť proces získavania informácií
|
||||||
@ -29,9 +30,62 @@ Cieľ práce:
|
|||||||
Ciele:
|
Ciele:
|
||||||
|
|
||||||
- Vytvoriť nasadenie distribuovanej databázy na testovaci K8S klaster.
|
- Vytvoriť nasadenie distribuovanej databázy na testovaci K8S klaster.
|
||||||
- Implementovať algoritmus pre zoradenie (ranking) dokumentov v takejto databáze.
|
-
|
||||||
|
|
||||||
|
22.8.2022
|
||||||
|
- Praca skontrolovana pripravena na odovzdanie, treba este poriesit zadavaci list
|
||||||
|
|
||||||
|
|
||||||
|
9.8.2022
|
||||||
|
- Doplnene grafy z grafany do prace
|
||||||
|
|
||||||
|
8.8.2022
|
||||||
|
- Skontrolovana praca pridane komentare
|
||||||
|
- Student opravil chyby podla komentarov
|
||||||
|
|
||||||
|
3.8.2022
|
||||||
|
- Poslana praca na kontrolu
|
||||||
|
|
||||||
|
1.8.2022
|
||||||
|
- Prakticka cast hotova
|
||||||
|
- Dohodnutie sa na pisani praktickej casti
|
||||||
|
|
||||||
|
25.7.2022
|
||||||
|
- 1 Giga týka je takmer nemožné kedže je tam teraz 2 milióby entries ( zápis trval vyše 3 hodin a 2 razy mi plne spadlo spojenie ( preto usudzujem že celonočný zápis nebude veľmi účinný )) a má to len 50 Mb, hladal som softwárové riešenia ktoré by generovali veľké množstvo dát pre cassandru, avšak čo som našiel bolo len na normálnu cassandru a nie na k8ssandru bežiacu na kubernete
|
||||||
|
|
||||||
|
25.7.2022
|
||||||
|
- Vytvoreni script na generovanie udajov
|
||||||
|
- Skusanie scriptu
|
||||||
|
- nainstalovana Grafana
|
||||||
|
|
||||||
|
|
||||||
|
22.7.2022
|
||||||
|
- Testovanie clustra prenasanie suborov atd
|
||||||
|
|
||||||
|
8.7.2022
|
||||||
|
- Stretnutie čo dalej
|
||||||
|
|
||||||
|
2.6.2022
|
||||||
|
- Presuvame pracu na September pretoze nestiahame pravit prenasany predmet
|
||||||
|
|
||||||
|
6.5.2022
|
||||||
|
- Teoreticka praca skontrolovane subezne praca na praktickej casti
|
||||||
|
|
||||||
|
8.4.2022
|
||||||
|
- Práca na teoretickej casti prace
|
||||||
|
|
||||||
|
|
||||||
|
1.4.2022
|
||||||
|
- Dohodli sme sa ze vynechame Page rank a budeme sa sustredit iba na distribuovane ulozisko
|
||||||
|
|
||||||
|
14.3.2022
|
||||||
|
- Page rank implemetovany, beži ale nie v takej forme aku si prestavujeme
|
||||||
|
|
||||||
|
1.3.2022
|
||||||
|
- Problem pri implementácii page ranku
|
||||||
|
|
||||||
|
22.2.2022
|
||||||
|
- K8ssandra nainštalovaná na virtuálnych strojoch
|
||||||
|
|
||||||
15.2.2022
|
15.2.2022
|
||||||
- Kubernetes beží na virtualkach. Potreba nainštalovať ešte k8ssandru, dnes
|
- Kubernetes beží na virtualkach. Potreba nainštalovať ešte k8ssandru, dnes
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
title: Filip Tomáš
|
title: Filip Tomáš
|
||||||
published: true
|
published: true
|
||||||
taxonomy:
|
taxonomy:
|
||||||
category: [bp2022]
|
category: [bp2022,dp2024]
|
||||||
tag: [testovanie,javascript,typescript]
|
tag: [testovanie,javascript,typescript]
|
||||||
author: Daniel Hladek
|
author: Daniel Hladek
|
||||||
---
|
---
|
||||||
@ -10,6 +10,196 @@ taxonomy:
|
|||||||
rok začiatku štúdia: 2019
|
rok začiatku štúdia: 2019
|
||||||
|
|
||||||
|
|
||||||
|
DP sa prekladá na rok 2025
|
||||||
|
|
||||||
|
# Diplomová práca 2024 - 2025
|
||||||
|
|
||||||
|
Zadanie:
|
||||||
|
|
||||||
|
1. Napíšte prehľad metód vektorovej reprezentácie dokumentov pomocou neurónových sietí.
|
||||||
|
2. Napíšte prehľad vektorových databáz a ich metód vyhľadávania.
|
||||||
|
3. Nasaďte vybranú vektorovú databázu do testovacieho distribuovaného prostredia.
|
||||||
|
4. Vytvorte index väčšieho množstva textových dokumentov vo vybranej vektorovej databáze.
|
||||||
|
5. Vytvorte webové rozhranie na vyhľadávanie a slovne vyhodnoťte výsledky.
|
||||||
|
|
||||||
|
Ciel:
|
||||||
|
|
||||||
|
- Vytvorte distribuovaný vyhľadávací index pre dáta zo slovenského internetu. Cieľom je vytvoriť vyhľadávanie na (skoro) celom slovenskom internete.
|
||||||
|
|
||||||
|
Spolupráca Michal Stromko, Kristián Sopkovič.
|
||||||
|
|
||||||
|
Stretnutie 7.11.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Riešenie problémov súvisiacich s PersistentVolume
|
||||||
|
- Práca na texte
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 15.10.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Rozpísaná práca
|
||||||
|
- Príprava na nasadenie Milvus DB na RPI klaster.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Píšte prácu: Definuje úlohu. Napíšte súčasný stav. Predstavte naše riešenie. Vyhodnotte naše riešenie. Postupujte od všeobnecného ku konkrétnemu.
|
||||||
|
- Pokračujte v práci na HW a SW.
|
||||||
|
|
||||||
|
Stretnutie 27.9.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Urobené vyhľadávanie Milvus, odstavce sú v sqlite.
|
||||||
|
- Indexovanie je v osobitnom skripte.
|
||||||
|
- Urobené web rozhranie pomocou Flask.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Na indexovanie používajte server quadro - 4 GPU karty 1080 12GB RAM. Prístup dá vedúci. Skript upravte tak, aby používal všetky 4 karty. Urobte meranie o koľko sa zrýchlylo spracovanie. Prihlásite sa ccez SSH `filip@quadro.kemt.fei.tuke.sk` . Server je dostupn7 iba cez VPN. Vytvoríte si prostredie Anaconda. Dlhý skript pustíte pomocou screen alebo tmux.
|
||||||
|
- Na RPI klaster k8s urobte paralelný deployment Milvus a mongodb aj webové rozhranie.
|
||||||
|
- Pokračujte v štúdiu LangChain.
|
||||||
|
- Pokračujte v písaní - sentence transformers, retrieval augmented generation, distributed database.
|
||||||
|
|
||||||
|
Stretnutie 23.7.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vytvorený jednoduchý index pomocou Milvus, indexovanie pomocou slovakbert-mnlr.
|
||||||
|
- Zatiaľ slovakbert-mnlr vyzerá lepšie, ale treba to ešte vyskúšať.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte pri vytváraní indexu pomocou Milvus- slovakbert-mnlr. Snažte sa zindexovať celú wikipédiu. Indexujte na úrovni odstavcov. Na uloženie textu môžete použiť súborový systém (urobte si funkciu ktorá namapuje ID na meno súboru). Alebo na uloženie použite databázu. Napríklad minio alebo sqlite.
|
||||||
|
- Skripty dávajte na GIT.
|
||||||
|
- Oboznámte sa s knižnicou LangChain, začnite tu https://python.langchain.com/v0.2/docs/tutorials/retrievers/
|
||||||
|
- robte si písomné poznámky. študujte vedecké články (napr. z Arxiv). Odkaz na článok si poznačte a zapíšte si čo sa v článku píše.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- vyhľadávací systém môžete urobiť pomocou langchain alebo inej knižnice.
|
||||||
|
- Pripravte deployment navrhnutého systému na k8s klaster.
|
||||||
|
- skúste spustiť vyhľadávací systém na raspberry pi klastri.
|
||||||
|
- zaindexujte slovenský internet.
|
||||||
|
- Pripravte benchmark rýchlosti indexovania.
|
||||||
|
- Pripravte webové rozhranie pre vyhľadávanie.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 3.5.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Rozbehaný Milvus lokálne pomocou Docker.
|
||||||
|
- Implementácia vyhľadávania pomocou Python.
|
||||||
|
- Rozpracovaná príprava na Milvus RPI Klaster.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Skúste zaindexovať slovenské dáta. Na vektorovú reprezentáciu použite https://huggingface.co/TUKE-DeutscheTelekom/slovakbert-skquad-mnlr
|
||||||
|
- Na začiatok zaindexujte slovenskú wikipédiu. Sparsovaný text bol dodaný.
|
||||||
|
- Napíšte o tom čo je to SentenceTransformer - ako sa trénuje a ako sa používa.
|
||||||
|
- Pozrite si DP M. Stromko a K. Sopkovič.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Benchmarking vyhľadávania. Vyskúšame viacero embeddingov s rôznym rozmerom. Modely typu Matroshka.
|
||||||
|
- Zhlukovanie dokumentov - zostavenie doménového korpusu s dát.
|
||||||
|
- Dolovanie otázok a odpovedí.
|
||||||
|
- Je priestor pre nákupy RPI pre nový RPI klaster.
|
||||||
|
|
||||||
|
Stretnutie 8.12.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Funguje microk8s RPI klaster. Aktivované HA.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vypracujte prehľad vektorových databáz. QDRANT, *MILVUS*, Weaviate, a iné. Opíšte ako funguje ich vyhľadávací index. Ako funguje tvorba a vyhľadávanie v distribuovanom indexe?. Citujte odborné články,
|
||||||
|
- Pokračujte v úlohách: nasadte databázu, zaindexujte dokumenty a vypracujte webové rozhranie.
|
||||||
|
|
||||||
|
Stretnutie 10.11.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Teoretická príprava a tri strany poznámok.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Nasadte databázu Milvus na RPi. Vytvorte skripty na nasadenie pomocou Kubernetes. Zvážte možnosž použitia HELM alebo K8S Operátor.
|
||||||
|
- Preštudujte si ako funguje distribuované nasadenie Milvus.
|
||||||
|
- Zistitie si čo je K8S operator.
|
||||||
|
- Zistite čo to je HELM.
|
||||||
|
- Zisite ako nasadit Milvus pomocu Operator alebo pomocou HELM.
|
||||||
|
- Skúste zaindexovať pár dokumentov.
|
||||||
|
- Pokračujte v písaní práce.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vytvorte HTML rozhranie pre hybridné vyhľadávanie. Môžete využiť pomoc od Stromko-Sopkovič.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 26.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vypracovaný text na tému: Hardware RPI, kontajnerizácia, Čo je ingress. Paralelné spracovanie dát, o Kubernetes.
|
||||||
|
- Na klastri sú nainštalované všetky potrebné nástroje: Multipass, k8s,
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Je potrebný Multipass na beh MicroK8s RPI klastra? Ak áno tak prečo. Ak nie tak to opravte.
|
||||||
|
- [ ] Pozrite si profily Stromko, Sopkovič.
|
||||||
|
- [x] Zistite, ako funguje "vektorové" vyhľadávanie pomocou neurónových sietí. Ako funguje SBERT-SentenceTransformer? Ako funguje vyhľadávanie BM25? Nájdite články a napíšte poznámky na 3 strany.
|
||||||
|
- [x] Prečítajte si https://qdrant.tech/articles/hybrid-search/
|
||||||
|
- [ ] Použite vektorovú databázu s podporou ukladania textu.
|
||||||
|
- [x] Preskúmajte možnosti nasadenia QDRANT, *MILVUS*, Weaviate. Oboznámte sa s týmito databázami. Umožňujú hybridné vyhľadávanie? Vyberte jednu vhodnú na nasadenie v našich podmienkach. Mala by fungovať aj na RPI klastri, mala by podporovať aj hybridné vyhľadávanie.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zaindexujte slovenský internet.
|
||||||
|
- Pripravte jednoduché webové rozhranie pre vyhľadávanie na slovenskom internete.
|
||||||
|
- Vykonajte záťažové testy pre indexovanie a vyhľadávanie.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Diplomový projekt 2023
|
||||||
|
|
||||||
|
Nápady:
|
||||||
|
|
||||||
|
- Zostaviť Raspberry Pi K8S Cluster pre podporu výuky predmetu ZKT. Chceme mať k dispozícii viacero fyzických uzlov, kde je možné spúštať rôzne aplikácie.
|
||||||
|
- Klaster by malo byť jednoduché dať do východiskového stavu.
|
||||||
|
- Klaster by mal mať aj podpornú infraštruktúru: Storage, Ingress, Registry, LoadBalancer.
|
||||||
|
- Možno vytvoriť iný klaster pre skúštanie výukových alebo demonštračných aplikácií. Napr. JupyterLab, NLP demo pre GPU.
|
||||||
|
- Preskúmať možnosti paralelného spracovania dát - Dask, SLURM, Spark,
|
||||||
|
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Podarilo sa nainštalovať a nasadiť Kubernetes klaster na raspberry PI
|
||||||
|
- Bola vytvorená písomná správa
|
||||||
|
- Skripty sú na https://git.kemt.fei.tuke.sk/ft835qr/dp2024
|
||||||
|
- Výsledky boli odovzdané na poslednú chvíľu.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Oboznámte sa so systémom microk8s. Nainštalujte si ho a vyskúšajte.
|
||||||
|
- Zistite čo je Ingress a ako si ho vytvoríme.
|
||||||
|
- Zistite, aké storage podporuje microk8s a ako ho implementovať.
|
||||||
|
- Navrhnite architektúru k8s klastra. Máme k dispozícii 5 jednotiek RPi4 s SD kartami. 1 jednotku Nvidia Jetson Xavier.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Namontovať klaster do serverovne a prideliť IP.
|
||||||
|
- Rozbehať JupyterLab.
|
||||||
|
|
||||||
|
|
||||||
# Bakalárska práca 2022
|
# Bakalárska práca 2022
|
||||||
|
|
||||||
|
|
||||||
|
@ -2,13 +2,309 @@
|
|||||||
title: Kristián Sopkovič
|
title: Kristián Sopkovič
|
||||||
published: true
|
published: true
|
||||||
taxonomy:
|
taxonomy:
|
||||||
category: [bp2022]
|
category: [bp2022,dp2024]
|
||||||
tag: [spacy,nlp]
|
tag: [spacy,nlp]
|
||||||
author: Daniel Hladek
|
author: Daniel Hladek
|
||||||
---
|
---
|
||||||
|
|
||||||
rok začiatku štúdia: 2019
|
rok začiatku štúdia: 2019
|
||||||
|
|
||||||
|
# Dizertačná práca 2028
|
||||||
|
|
||||||
|
Cieľ:
|
||||||
|
|
||||||
|
- Vylepšiť RAG-QA v slovenskom jazyku.
|
||||||
|
|
||||||
|
Stretnutie 6.11.2024
|
||||||
|
|
||||||
|
Kritériá na rok 24-25:
|
||||||
|
|
||||||
|
- Získať min. 40 bodov za publikácie podľa [tabuľky](https://www.fei.tuke.sk/uploads/1d/fa/1dfad875721c7e707dbe9c1f93f327b3/2022_Zasady_PhD_studia_TUKE_uplne_znenie_po_D1_web.pdf) dole.
|
||||||
|
|
||||||
|
Plán na publikácie - povinná jazda:
|
||||||
|
|
||||||
|
- SCYR 8B
|
||||||
|
- [RADIOELEKTRONIKA 2025 15](https://radioelektronika.uniza.sk/home.php?id_conference=28)
|
||||||
|
- RADIOELEKTRONIKA 2025 15 (Eva Kupcová)
|
||||||
|
- V prípade núdze [EEI](https://eei.fei.tuke.sk/deadlines/) alebo [AEI](https://www.aei.tuke.sk/index.html). Tam sa dajú uverejniť aj výsledky záverečných prác.
|
||||||
|
|
||||||
|
Ďalšie "jednoduché" konferencie kde zvykneme chodiť:
|
||||||
|
|
||||||
|
- ELMAR
|
||||||
|
- SAMI
|
||||||
|
- CINTI
|
||||||
|
- ICETA
|
||||||
|
- ITAT
|
||||||
|
|
||||||
|
Treba overiť konkrétny termín "uzávierky" hodnotenia doktoranda.
|
||||||
|
|
||||||
|
Plán na publikácie - Conference our level:
|
||||||
|
|
||||||
|
- Slovko (výstup ide do Jaz. časopisu)
|
||||||
|
- TSD 2025
|
||||||
|
- LREC-COLING 2026 konferencia.
|
||||||
|
|
||||||
|
Plán na publikácie - Journal our level:
|
||||||
|
|
||||||
|
- Jazykovedný časopis, má dobré hodnotenie (Scopus Q2-eq. WOS Q3)
|
||||||
|
- IEEE Access Q2
|
||||||
|
- PeerJ Computer Science Q2
|
||||||
|
- Pattern Recognition Q2
|
||||||
|
- Nature Scienfic Reports Q2
|
||||||
|
- Language Resources and Evaluation Q3
|
||||||
|
- Natural Language Processing (Journal) asi Q3
|
||||||
|
|
||||||
|
|
||||||
|
Plán na publikácie - Cream de la Creme:
|
||||||
|
|
||||||
|
- INTERSPPECH
|
||||||
|
- ENLP alebo iná ACL konferencia
|
||||||
|
|
||||||
|
Stretnutie 21.6.
|
||||||
|
|
||||||
|
Nápady na tému DP:
|
||||||
|
|
||||||
|
- Agentový prístup k získavaniu informácií. Agent vie iniciatívne získať ďalšie potrebné informácie pre splnenie cieľa získavania informácií.
|
||||||
|
- Grafová reprezentácia informácie - vyhľadávanie v štruktúrovaných, prepojených dokumenotch.
|
||||||
|
- Zlepšenie modelov vektorovej reprezentácie.
|
||||||
|
- Tvorba nových "základných" generatívnych modelov.
|
||||||
|
|
||||||
|
# Diplomová práca 2024
|
||||||
|
|
||||||
|
Neurónové vyhľadávanie na základe sémantickej podobnosti vektorov.
|
||||||
|
|
||||||
|
1. Vypracujte prehľad metód neurónovej vektorovej reprezentácie viet alebo odsekov.
|
||||||
|
1. Pripravte trénovaciu množinu a natrénujte model vektorovej reprezentácie dokumentov.
|
||||||
|
1. Vyhodnoťte natrénovaný model vo viacerých experimentoch.
|
||||||
|
1. Identifikujte slabé miesta modelu a navrhnite jeho zlepšenia.
|
||||||
|
|
||||||
|
Zadanie sa ešte môže zmeniť.
|
||||||
|
|
||||||
|
|
||||||
|
Súvisiace práce: Michal Stromko
|
||||||
|
|
||||||
|
Cieľ je zlepšiť slovenské vyhľadávanie pomocou neurónových sietí.
|
||||||
|
|
||||||
|
Námety na tému:
|
||||||
|
|
||||||
|
- Natrénujte alebo dotrénujte Sentence Transformer Model, alebo iný model pre sémantícké vyhľadávanie. Aké sú potrebné databázy? Je možné dotrénovať *multilinguálny model*?
|
||||||
|
- Vytvorte databázu pre trénovanie SBERT. Strojový preklad, existujúcej NLI databázy, Semantic Textual Similarity databázy. Alebo ak získame grant, tak vytvoríme "originálnu" (klon) slovenskú databázu.
|
||||||
|
- Vytvorte kognitívne vyhľadávanie pre mesto Košice
|
||||||
|
|
||||||
|
[Slovak Semantic Textual Similarity Benchmark](https://huggingface.co/datasets/crabz/stsb-sk)
|
||||||
|
na trénovanie Sentence Transformer
|
||||||
|
|
||||||
|
|
||||||
|
## Diplomový projekt 2
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 1.3.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na teórii
|
||||||
|
- Preskúmané modifikátory stratovej funkcie - Matrioshka embedding. Metóda zníženia dimenzie embeddingov.
|
||||||
|
- Porovnané slovenská (preložená) SNLI-sk a STSB-sk. e5 small model (374dim) MNLR plus loss modifier a matrioshka LOSS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 29.1.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Príprava prezentácie.
|
||||||
|
- Natrénované viacerá MNLR modely a vyhodnotené na SK QUAD, zostavená tabuľka s výsledkami. Najlepšie vychýdza dotrénovaný e5 model, SlovakBERT dotrénovaný je 2. najlepší. Na dotrénovanie boli použíté preložené SNLI dáta.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 15.12.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Lepšie preložená databáza (Azure) SNLI a STSB-SK (pôvodne preložená cez OPUS).
|
||||||
|
- Natrénovaný Bi Encoder (SNLI) aj Cross Encoder (STSB) zo SlovakBERT a E5.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vyhoddnotte natrénované modely a výsledky sumarizujte v dip. práci. Môžete použit slovenský dataset od M Stromka keď bude.
|
||||||
|
- Datasety a modely nahrajte na HF HUB, zatiaľ privátne. TUKE-DeutscheTelekom ORG. Zistite vo firme podmienky zverejnenia.
|
||||||
|
- Po Novom roku dodajte draft DP.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Porozmýšľajte nad článkom.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 3.11.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Sú spracované ďalšie dáta o službách z Magistrátu Košíc.
|
||||||
|
- Dotrénovanie multilinguálnych modelov na NLI databázach. MNLR loss. Model E5 a varianty. Batch size by mala byť najmenej 256. LR na finetuning je E-5. Preto je možné pracovať iba so SMALL model. Max seq. len bol orezaný na 256 z 512 aby to išlo na 1x24 GB Titan.
|
||||||
|
- SIMSCE prístup na trénovanie pomocou MNLR, je SOTA. Koher reranker je tiež SOTA, ale je komerčný.
|
||||||
|
- Pokračujeme v minulých úlohách.
|
||||||
|
- Evaluačná množina SK QUAD bola preložená do nemčiny a angličtiny.
|
||||||
|
- Mistrail LLM model natrénovaný na európskych jazykoch.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Chceme dotrénovať E5 model na anglickom, nemeckom a slovenskom SNLI pre úlohu kros linguálneho IR. Vyhodnocovať budeme na SQUADE anglickom, nemeckom a slovenskom jazyku.
|
||||||
|
- Pokračujte v písaní diplomovej práce. Pripravte si osnovu a ku každej časti napíšte čo by v nej malo byť. Udržiavajte si zoznam použitej literatúry. Poznačte si bib. údaje o článkoch a knihách z ktorých čerpáte, priradte kódy jednotlivým záznamom.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Výsledky budeme demonštrovať na košických dátach.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 13.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Spracované dáta z mesta Košice - 110 najčastejších otázok a odpovedí.
|
||||||
|
- Nasadená 13B ChatLLama na Titan, 4 bit kvantizácia.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Chceme vytvoriť model pre cross-lingual information retrieval. Model bude vedieť vytvoriť "vyhľadávací embedding" pre texty a otázky vo viacerých jazykoch.
|
||||||
|
- Na základe dostupných dát natrénujte takýto model. K dispozícii máme preloženú Slovak NLI, Anglickú NLI. Určite existujú aj iné jazyky. Zoberte viacero NLI databáz a dotrénujte z nich multilinguálny model. Aký model je najlepší ako "základ"? Možno multilinguálne SBERT: E5, mpnet, miniLM.
|
||||||
|
- Model vyhodndotte na dostupných databázach.
|
||||||
|
- Prečítajte si viacero nových článkov na tému "mutlilingual alebo crosslingual" "information retrieval" "document embeddings". Urobte si poznámky do DP.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Košické dáta je možné využiť pri vyhdonotení.
|
||||||
|
- Možno dáta na vyhodnotenie slovenského IR vytvorí aj M. Stromko.
|
||||||
|
- Pripraviť API na ChatLLAma.
|
||||||
|
|
||||||
|
Stretnutie 28.9.20023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vieme pracovať - natrénovať SBERT (Sentence Transformer).
|
||||||
|
- Je strojovo preložená SNLI databáza pomocou Marian NMT setup.
|
||||||
|
|
||||||
|
Nápady:
|
||||||
|
|
||||||
|
- Získať dáta-dokumenty z webovej stránky mesta Košice.
|
||||||
|
- Získať informácie z webovej stránky https://www.esluzbykosice.sk/
|
||||||
|
- Spracovať dáta o často kladených otázkach, ktoré sme dostali z mesta Košice.
|
||||||
|
- Spracovať dáta o agende, ktoré sme dostali z mesta Košice.
|
||||||
|
- Vytvoriť ku týmto dátam "asistenta" pre získavanie informácí.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [-] Porozmýšľať ktorú časť problému "pomoci občanom mesta Košice" by sme mohli riešiť.
|
||||||
|
- [-] Spracujte dodané dáta od mesta Košice (vedúci pripraví a pošle).
|
||||||
|
- [ ] Dáta zaindexujte a pripravte jednoduché vyhľadávanie.
|
||||||
|
- [ ] Pokračujte v písomnej teoretickej príprave na tému "Sentence Transformers".
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pripravte scraper na dáta od mesta Košice.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Diplomový projekt 1
|
||||||
|
|
||||||
|
Stretnutie 2.6.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Natrénovaný IR retriever
|
||||||
|
- Natrénovaný model pre generatívne odpovede na báze Slovak T5 Small.
|
||||||
|
- Práca na texte
|
||||||
|
|
||||||
|
Stretnutie 25.5.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Trénovanie MNLR nebolo v poriadku, lebo boli použité iba kladné príklady.
|
||||||
|
|
||||||
|
Úloha:
|
||||||
|
|
||||||
|
- Natrénovať model SNLI. Natrénovať iný model STSB.
|
||||||
|
- Porovnajte ich ako cross-encoder. Vyhodnoťte recall vyhľadávania na databáze sk-quad.
|
||||||
|
- Porovnajte to so základným modelom mnlr sk quad.
|
||||||
|
- Skúste oba modely dotrénovať na MNLR skquad a vyhodnotiť.
|
||||||
|
- pracujte na písomnej časti.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 5.5.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Natrénovaný model MNLR SlovakBERT na preloženej databáze Standformd SNLI.st.: tot je asi zle
|
||||||
|
- Urobnené predbežné vyhodnotenie - analýza strednej hodnoty kosínusovej podobnosti pre triedy entailment, contradiction, neutral.
|
||||||
|
- Výsledkom MNLR je kosínusové podobnisť.
|
||||||
|
- Urobené aj softmax trénovanie. Výsledkom softmax je trieda pre 2 zadané vety.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Upravte a dajte trénovacie skripty na GIT.
|
||||||
|
- Vyhodnotiť presnosť klasifikácie softmax pomocou konfúznej matice - p,r,f1
|
||||||
|
- Dotrénovať SNLI ST na SK Quad a vyhodnotiť na úlohe sémantického vyhľadávania. - recall. To tj e zlá úloha.
|
||||||
|
- Pracujte na písomnej správe, ktorá poslúži ako základ pre DP a pre článok. Do textu opíšte trénovanie ktoré ste vykonali, postup pri preklade, návrh experimentov a výsledky. Do teoretickej časti píšte o sentence transformeroch.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Cieľom je poblikovať kvalitný článok.
|
||||||
|
- Cieľ 2 je aplikovať model pre úlohu vyhonotenia súladu staevebnej dokumentácie so regulatívou - zákonmi a vyhláškami.
|
||||||
|
- Využijeme databázu STSB-sk (na hf hube) ako ďalší zdroj dát
|
||||||
|
- Pripravte porovnávacie experimenty pre anglické datasety.
|
||||||
|
- Do ďalších experimentov zahrňte multilinguálne modely.
|
||||||
|
|
||||||
|
Stretnutie 24.4.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Preložené SNLI - všetky 3 časti.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 17.3.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Je preložená SNLI databáza, trénovacia časť. Použitý OPUS Helsinki NLP model
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Preložiť aj testovaciu časť.
|
||||||
|
- Natrénovať Sentence Transforner (ST) na databáze SNLI, podľa SlovakBERT.
|
||||||
|
- Dotrénovať SNLI ST na SK Quad a vyhodnotiť na úlohe sémantického vyhľadávania. - recall
|
||||||
|
- Podobným spôsobom vyhodnotiť Slovakbert-stsb.
|
||||||
|
- Napíšte o tom čo je to ST, ako funguje. Pripravte prehľad databáz na trénovanie ST.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Porovnať s slovakbert-crossencoder na tuke-dtss modelmm.
|
||||||
|
|
||||||
|
Stretnutie 17.2.2023
|
||||||
|
|
||||||
|
Úlohy
|
||||||
|
|
||||||
|
- Zoberte existujúci model SlovakBERT-stsb a použite ho na dotrénovanie bi-encódera na databáze SK quad. Porovnajte presnosť vyhľadávania s bi-encóderom natrénovaným iba na SlovakBERT (dodá vedúci). Použite skripty v repozitári slovak-retrieval.
|
||||||
|
- Urobte prehľad databáz potrebných na dotrénovanie Sentence Transformer. Vyberte vhodnú databázu na strojový preklad, napr. nejakú NLI databázu. Použite ju na dotrénovanie bi-encódera.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zistite ako využiť slovenský generatívny model pre sémantické vyhľadávnaie. Pripravte experiment a vyhodnotte ho.
|
||||||
|
- Vyberte databázu pre sémantické vyhľadávanie alebo question answering na vhodnú na vytvorenie slovenského klonu.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 24.11.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Porozmýľať ďalej o téme, komuikovať o možnom grante na anotáciu.
|
||||||
|
- Vyskúšajte [Sentence Transformers framework](https://github.com/UKPLab/sentence-transformers/tree/master/examples). Pozrite si príklady, ako trénovať.
|
||||||
|
- Prečítajte si článok https://arxiv.org/abs/1908.10084.
|
||||||
|
- Zistite, čo je Natural Language Inference, aké sú dostupné databázy.
|
||||||
|
- Zistite, čo je Semantic Textual Similarity, aké sú dostupné databázy.
|
||||||
|
- Pozrite si https://git.kemt.fei.tuke.sk/dano/slovakretrieval/
|
||||||
|
|
||||||
# Bakalárska práca 2022
|
# Bakalárska práca 2022
|
||||||
|
|
||||||
Návrh na názov bakalárkej práce:
|
Návrh na názov bakalárkej práce:
|
||||||
|
@ -2,13 +2,375 @@
|
|||||||
title: Michal Stromko
|
title: Michal Stromko
|
||||||
published: true
|
published: true
|
||||||
taxonomy:
|
taxonomy:
|
||||||
category: [vp2021,bp2022]
|
category: [vp2021,bp2022,dp2024]
|
||||||
tag: [ir,cloud,demo,nlp]
|
tag: [ir,cloud,demo,nlp]
|
||||||
author: Daniel Hladek
|
author: Daniel Hladek
|
||||||
---
|
---
|
||||||
|
|
||||||
rok začiatku štúdia: 2019
|
rok začiatku štúdia: 2019
|
||||||
|
|
||||||
|
# Diplomová práca 2023/24
|
||||||
|
|
||||||
|
Sémantické vyhľadávanie v slovenskom texte
|
||||||
|
|
||||||
|
|
||||||
|
Zadanie práce:
|
||||||
|
|
||||||
|
1. Vypracujte prehľad najnovších metód sémantického vyhľadávania pomocou neurónových sietí.
|
||||||
|
2. Implementujte sémantické vyhľadávanie na slovenskej wikipédii pomocou existujúcich modelov.
|
||||||
|
2. Vyberte dátovú množinu otázok a odpovedí a ručne anotujte výsledky sémantického vyhľadávania.
|
||||||
|
3. Pripravte, vykonajte a opíšte experimenty na vyhodnotenie vyhľadávania pomocou Vami ručne vytvorenej množiny.
|
||||||
|
4. Vyhodnoťte experimenty a identifikujte slabé miesta a navrhnite zlepšenia.
|
||||||
|
|
||||||
|
Ciele DP:
|
||||||
|
|
||||||
|
- Bolo by fajn, keby z DP bol vedecký článok.
|
||||||
|
- Dotrénovať slovenský ST model.
|
||||||
|
- Porovnať viacero metód na vyhľadávanie v slovenskom texte - BM25, TF IDF, WordEmbedding, SentenceTransformers, Alebo iné embeddingy.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 6.3.
|
||||||
|
|
||||||
|
- Hotová anotácia 1134 otázok, ku každej je 20 odpovedí v 5 kategóriách.
|
||||||
|
- Hotové vyhodnotenie modelu Slovakbert-mnlr, metriky recall, MRR, MAP, NDCG. Model je "podpriemerný".
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ]Dokončiť text DP, asi bude treba niektoré časti skrátiť.
|
||||||
|
- [ ] Nájsť podobnú databázu. STSB je podobná, ale možno iná je podobnejšia.
|
||||||
|
- [x] Spraviť nový dockerfile pre vyhľadávacie demo.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pripraviť databázy do kompletnej podoby pre uverejnenie. Na jedno miesto dať všetky potrebné súbory, vrátane sk quad.
|
||||||
|
- Databázu treba dať do podoby, aby bola kompatibilná s inými vyhodnocovacími skriptami.
|
||||||
|
- Pripraviť vlastný vyhodnocovací skript. 1. vstup sú výsledky z vyhľadávania (predicted), druhé sú pravdivé výsledky (gold, actual). Výstupom sú hodnoty metrík v JSON.
|
||||||
|
- * Napísať článok, zverejniť databázu *. Zvážiť spoločný článok s Kristiánom S.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 16.2.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Dokončená teoretická časť DP.
|
||||||
|
- Dokončená aplikácia "Vyhľadávanie na slovenskej wikipédii". Treba ešte dorobiť Dockerfile.
|
||||||
|
- Začatá práca na kapitole - Tvorba korpusu pre vyhodnotenie sémantického vyhľadávania.
|
||||||
|
- Treba urobiť ešte vyhodnotenie na modeli Slovakbert-mnlr. Porovnanie s bm25 baseline, aj hybrid.
|
||||||
|
|
||||||
|
|
||||||
|
# Diplomový projekt 2
|
||||||
|
|
||||||
|
Stretnutie 30.11.20
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Rozrobený text
|
||||||
|
- Anotovaných cca 1000 dokumentov
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Skúsiť experimenty
|
||||||
|
- Pokračovať v anotáciách
|
||||||
|
- Pokračovať v písaní textu.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 9.11. 2023
|
||||||
|
|
||||||
|
Stav - urobené úlohy:
|
||||||
|
- Je anotovaných cca 240 otázok, ku každej cca 20 dokumentov
|
||||||
|
- [x] Pridať kódy na Git
|
||||||
|
- [x] Napísať návod pre anotovanie
|
||||||
|
- [x] Spaviť jednu stránku pre vypísanie počtu už anotovaných otázok z danej sady
|
||||||
|
- [x] Pridať do indexu search, každému kontextu ID
|
||||||
|
- [x] Pri vyhľadávaní sprrávnych odpovedí uložiť uložiť tak, aby bol súbor odpovede, ktorý bude mať parametere id_odpovede a k nemu priradený text odpovede
|
||||||
|
- [x] Rozdelenie anotačného datasetu na sady (anotačné sady je ich 8)
|
||||||
|
- [x] Zamiešanie správnych odpovedí okrem odpovede zo skquad tá je na index = 0 vždy
|
||||||
|
- [x] Prerobiť anotačnú aplikáciu tak, aby mala po anotovaní štruktúru id správnej odpovede a kategóriu.
|
||||||
|
- [x] Pri anotovaní budem ťahať z id odpovede presný text z toho datasetu
|
||||||
|
- [x] Anotovacie kategórie: sú na gite skwiki
|
||||||
|
- [x] Zapísať nové veci a poznámky do Mira
|
||||||
|
- [x] Zmeniť v Mire štruktúru anotačného aj finálneho datasetu
|
||||||
|
- [x] Opovedí môže byť rôzne množstvo nie iba po jednej odpove
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v anotácia prvých a druhých 1000 otázok
|
||||||
|
- Pripraviť experimenty pre vyhodnotenie presnosti s novými dátami
|
||||||
|
- Pokračovať v písaní.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zvážiť indexovať kratšie kontexty. Nevýhody: vznikne neporiadok. Výhody: Môže sa urýchliť práca anotátorov.
|
||||||
|
- Zvážiť nasadenie, úpravu django appky a anotovať s náhodnými študentami.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 2.11.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Prvá verzia anotačnej aplikácie v Streamlit
|
||||||
|
- Pripravené dáta na anotovanie.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Prideliť ID pre kontexty a pridať ich do indexu.
|
||||||
|
- Upraviť rozhranie. Defaultná položka je 0 - "nevidel som - ignoroval som". Premenovať ostatné kategórie na "Nevidel som", "Neviem","Relevantné", "Slabo relevantné", "Nerelevantné". Kontext zo SQUAD bude 1, neviditeľný pre antátorov.
|
||||||
|
- Premiešať 20 najlepších odpovedí.
|
||||||
|
- Pracujte na texte DP - robte si poznámky z článkov o metrikách vyhodnotenia.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 26.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Urobený preskum dostupných databáz na vyhodnotenie IR.
|
||||||
|
- Prípravený plán na tvorbu databázy. Zoberieme otázky zo SK QUAD a ku nim vyhľadáme 20 najlepších paragrafov z celej wikipédie 2023. Kategória 1 budú kontexty zo SKQUAD. Kategória 2 budú iné správne kontexty. Kategória 3 budú čiastočne správne. Kategória 4 budú nesprávne kontexty. Na vyhľadávanie použijeme aktuálny demo systém.
|
||||||
|
Zatiaľ sa nebude robiť kros validácia.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripravte anotačné prostredie na báze Streamlit. Otázky berte podľa poradia v poslednej verzii SKQUAD databázy. Anotujte čo najviac otázok. Ku každej otázke bude 20 dokumentov.
|
||||||
|
- Urobte prehľad článkov, ktoré anotujú databázu podobným spôsobom.
|
||||||
|
- Anotovať aj "nezodpovedateľné" otázky. Zodpovedajúci "nesprávny" kontext so SKQUAD bude kategória 5.
|
||||||
|
- Kontexty zo SQUADU by nemali byť v indexe. Doplníme ich neskôr. Bude potrebné ich identifikovať vo nájdených kontextoch, lebo sa môžu mierne líšiť.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zvážiť strojový preklad vybranej databázy a ich porovnanie.
|
||||||
|
- Čo urobiť s kontextami zo SKQUAD vo Wiki2023 - vyznačiť?
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 5.10.2023
|
||||||
|
|
||||||
|
Nápad:
|
||||||
|
|
||||||
|
- Vytvoriť novú databázu pre vyhodnotenie získavania informácií v slovenskom jazyku.
|
||||||
|
- Predošlá práca je https://nlp.kemt.fei.tuke.sk/language/categorizednews
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Definovať úlohu pre ktorú chceme vytvoriť overenie. Ako by mala vyzerať "otázka"? Ako by mala vyzerať "odpoveď"? Čo znamená dobrá odpoveď?
|
||||||
|
- Zostaviť prehľad existujúcich databáz pre vyhodnotenie vyhľadávania. Napíšte si poznámky.
|
||||||
|
- Vyberte vhodnú databázu na "klonovanie".
|
||||||
|
- Zvážiť vytvorenie strojovo preloženej databázy na porovnanie.
|
||||||
|
- Vybrať vhodnú metódu anotácie dát. K tejto metóde implementovať anotačné nástroje. Je možnosť použiť "vyhľadávacie demo na wikipédiu".
|
||||||
|
|
||||||
|
Stretnutie 28.9.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Naindexovaná nová verzia Wikipédie (14.8.2023). Sentence Transformers a BM25.
|
||||||
|
- Otázky sú v angličtine aj v slovenčine.
|
||||||
|
- Zistili sme, že otázky v SK QUAD sú veľmi jednoduché.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Dajte skripty na parsovanie Wiki na GIT.
|
||||||
|
- Vytvorte a vyhoddnoťte kros linguálny QA systém. Otázky v slovenčine by fungovali aj pre anglickú databázu.
|
||||||
|
- Nájdite vedecké články publikované na túto tému. Prečítajte si ich a urobte si poznámky. Aké databázy a aké spôsoby vyhodnotenia sa používajú? Systém sa skladá z dvoch modulov - information retrieval a question answering. Každý sa vyhodnocuje inak. Vyhľadávajte "cross lingual information retrieval", "cross lingual question answering". Môže sa použiť ako esej AKT.
|
||||||
|
- Skúste vytvoriť systém na "kros linguálne" indexovanie na "information retrieval". Je potrebné zistiť, aké modely a metódy sa na to používajú. MPnet alebo LABSE?
|
||||||
|
|
||||||
|
|
||||||
|
Nápad:
|
||||||
|
|
||||||
|
- Vytvoriť alebo vybrať zložitejšie otázky a vyhodnotiť ich.
|
||||||
|
|
||||||
|
|
||||||
|
# Diplomovy projekt 1
|
||||||
|
|
||||||
|
|
||||||
|
Nápady na semester (spolu s K. Sopkovicom)
|
||||||
|
|
||||||
|
- Chceme rozbehat demo vyhľadávanie. Existuje streamlit verzia.
|
||||||
|
- Chceme natrénovať a vyhodbnotiť model pre sémantické vyhľadávanie. Existuje prvá verzia sentence transformera (Cross Encoder, Dual Encoder natrénovaná na SK QUAD. Porovnať s STS SlovakBERT.
|
||||||
|
- Chceme využiť aj QA model - využiť ho v deme.
|
||||||
|
- Chcemem vyhodnotiť výkonnosť celého systému - všetky komponenty naraz. Aké sú možné metriky.
|
||||||
|
- Pripraviť slovenskú databázu STS a NLI.
|
||||||
|
- Vypracovať prehľad metód na vyhodnotenie IR systémov a kompletných systémov QA.
|
||||||
|
- Preskúmať možnosti zlepšenia - Sentence Transformer skripty pre doménovú adaptáciu a multilinguálne modely.
|
||||||
|
- Vypracovať prehľad článkov, ktoré riešia kompletné sémantické vyhľadávanie.
|
||||||
|
- Podrobne opísať proces fungovania a trénovanie sentence transformera. Princíp dual-encoder, cross-encoder.
|
||||||
|
- Pripraviť multi-lingual experiment na vyhľadávanie, napr. Angličtina, Slovenčina, Nemčina.
|
||||||
|
- Vyskúšať vyhľadávanie v inej doméne (noviny, mestské dokumenty).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 26.6.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Demo funguje, je odladene aj nasadene
|
||||||
|
- Praca naa pisomenj casti pokracuje
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripraviť vyhľadávanie čislo anglické, čislo slovenské a slovensko anglické multilinguálne.
|
||||||
|
- Vyčísliť p-r-f1 celého vyhľadávania pre tieto tri prípady to tak, že jeden dokument (jedna jednotka) je jeden odsek (paragraf). Teda indexujete po paragrafoch.
|
||||||
|
- Cieľ je aby bola diplomovka publikovateľná.
|
||||||
|
- Pokračovať v písaní. Text by mal byť podkladom na prezentované experimenty.
|
||||||
|
Mal by vysvetľovať základné pojmy. Pozrite si články na tému "information retrieval in wikipedia".
|
||||||
|
|
||||||
|
Stretnutie 27.3.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Jednoduché demo stremalit fuguje - vektorové vyhľadávanie pomocou transformers utils.semantic_search.
|
||||||
|
- Cieľ: ku každému paragrafu vypočítať embedding pomocou mnlr. Poznačiť si dokument id. V prvom kroku ku otázke vyhľadať paragrafy. V druhom kroku ku otázke vyhľadať odpovede v paragrafoch. V treťom kroku zobraziť odpoveď na otázku aj najrelevantnejšie dokumenty.
|
||||||
|
- Pokračovať v písomnej časti.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- util_semanticsearch vymentiť za qdrant alebo faiss alebo iné.
|
||||||
|
- Určiť prah, na základe ktorého sa zistí, že odpoveď nie je v databáze.
|
||||||
|
- Neskôr dorobiť "fallback" na "fuzzy" vyhľadávanie relevatných dokumentov.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 20.2.2023
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [-] Spravte QA demo pomocou streamlit. Najprv vytvorte faiss index, do pamäte nahrajte všetky paragrafy.
|
||||||
|
- [ ] Dotaz transformuje na vektor. Nájdite 5 najlepších odsekov. Vykonajte QA na všety odseky. Zobrazte odseky. Zobrazte najlepšiu odpoveď a názov dokumentu kde sa nachádza.
|
||||||
|
- [ ] Modely sa nachádzajú na HF TUKE-DeutscheTelekom.
|
||||||
|
|
||||||
|
Zásobník:
|
||||||
|
|
||||||
|
- Na uloženie odsekov a vektorov vyberte a použite vhodnú databázu (faiss, sqlite, qdrtant, jina ....).
|
||||||
|
- Implementujte stránkovanie (ak bude potrebné), zlepšite výzor.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 17.2.2023
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zoberte existujúci model bi-encoder. Indexujte všetky odseky do vektorovej databázy FAISS.
|
||||||
|
- Upravte streamlit demo na QA systém. Skript sa nachádza v slovak-retrieval/qademo. Skript bude vyhľadávať k najlepších dokumentov vektorovým vyhľadávaním.
|
||||||
|
- Potom v najlepších dokumentoch vykonajte QA vyhľadávanie.
|
||||||
|
- Zobrazte výsledky používateľovi.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pripravte experimenty, kde prezentujeme komponenty, porovnáme rôzne možnosti do podoby článku.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Vedecky projekt 2022/23
|
||||||
|
|
||||||
|
|
||||||
|
Súvisiace práce:
|
||||||
|
|
||||||
|
- Matej Kobyľan
|
||||||
|
- Suchanič
|
||||||
|
- Kristián Sopkovič
|
||||||
|
|
||||||
|
Ciele na semester:
|
||||||
|
|
||||||
|
- Zistiť ktorá knižnica je dobrá a ktorý model je dobrý na slovenské vyhľadávnaie vo wikipédii pre QA.
|
||||||
|
- Možnosti pre knižnice sú: JinaDocArray, Elasticsearch-Opensearch, Faiss, Haystack
|
||||||
|
- Možnosti pre modely sú: DPR, LABSE, LASER, Iný Sentence Transformer, WordEmbedding.
|
||||||
|
- Vypracovat demonštračné vyhľadávanie v slovenskej wikipédii.
|
||||||
|
- Vypracovat spravu o precitanych clankoch spolu s odkazmi, cca 4 strany
|
||||||
|
- Vyslovit ciele diplomovej prace.
|
||||||
|
|
||||||
|
|
||||||
|
Klucove slova:
|
||||||
|
|
||||||
|
- Jina, Rasa, Vektorova Databaza
|
||||||
|
- Hierarchicke vztahy medzi dokumentami
|
||||||
|
- Faiss, Elasticsearch-Opensearch, Fasttext
|
||||||
|
- https://aclanthology.org/2020.emnlp-main.550/, Dense Passage Retrieval for Open-Domain Question Answering.
|
||||||
|
- Urobit demo vyhladavanie v slovenskej wikipedii.
|
||||||
|
- LABSE, LASER embedding model
|
||||||
|
- multi language IR
|
||||||
|
|
||||||
|
Stretnutie 9.1.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vyrobená tabuľka s experimentami pre rôzne modely a rôzne veľkosti vrátenej množiny k
|
||||||
|
- Zatiaľ najlepší je model BM25
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripravte experiment v ktorom najprv vyhľadáte množinu k=(napr. 100, 200 alebo 50) prvkov pomocou bm25, výsledky zoradíte pomocou neurónovej siete a vyberiete m=(napr. 10,20,50) najlepších prvkov. Výsledky vyhodnotíte.
|
||||||
|
- Zoradenie pomocou NN vyzerá takto: zoberiete otázku a paragraf. Vypočítate skóre podobnosti. Prvý spôsob výpočtu je, že vložíte otázku aj paragraf naraz do NN. Výsledok je podobnosť. Na výpočet podobnosti zatiaľ použite model slovakbert-stsb.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vytvoriť vyhľadávanie v dvoch krokoch. Najprv "nahrubo", potom výsledky znova zoradiť.
|
||||||
|
- Druhý spôsob vyhľadávania nahrubo je: vypočítate významový vektor pre paragraf aj pre odsek. Výpočítate kosínusovú podobnosť jedného aj druhého.
|
||||||
|
- Vyhodnotiť modely v adresári crossencoder.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 19.12.2022
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Spustený skript pre vyhodnotenie
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripravte testovací scenár. Množina SK QUAD. Vyhľadávame v paragrafoch. Pri vyhľadávaní nás zaujíma k najlepších výsledkov. K=1,5,10,20,30
|
||||||
|
- V testovacom scenári vyskúšqjte viacero modelov. WordEmbedding, LABSE, SlovakBERT, BN25
|
||||||
|
- V texte opíšte použíté modely, dataset aj testovací scenár.
|
||||||
|
- Z výsledky by mohol byť konferenčný článok.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Natrénujte model Kharpukin DPR, podľa Facebook skriptov alebo pomocou Nvidia Deep learning examples.
|
||||||
|
- Vyhodnotte celý proces QA na vrátených výsledkoch.
|
||||||
|
|
||||||
|
Stretnutie 10.11.2022
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Konvertovaný SCNC do JSON.
|
||||||
|
- Práca s Jina-Elasticsearch pre uloženie embeddingov.
|
||||||
|
- Prečítaný a spoznámkovaný článok "Making Monolingual Sentence Embeddings Multilingual using Knowledge Distillation".
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Rozbehať skript SlovakRetrieval ktorý využíva FAISS. V skripte je už aj BM25, ostatné modely aj vyhodnotenie Recall na množine SK QUAD.
|
||||||
|
- Vytvoriť slovenské vyhľadávanie pomocou WordEmbeding. Použiť slovenský Spacy Model.
|
||||||
|
- Prečítať a spoznámkovať ďalšie články z https://github.com/UKPLab/sentence-transformers
|
||||||
|
|
||||||
|
|
||||||
|
Zasobnik uloh:
|
||||||
|
|
||||||
|
- Dotrénovať sentence transformer na slovenský jazyk. Ako?
|
||||||
|
|
||||||
|
Stretnutie 14.10.2022
|
||||||
|
|
||||||
|
Ulohy:
|
||||||
|
|
||||||
|
- Precitat si clanok, napiste poznamky
|
||||||
|
- Navrhnite na co by ste sa chceli sustredit.
|
||||||
|
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Naštudovaný článok Kharpukin Dense Passage Retrieval
|
||||||
|
- Naštudované Jina-DocArray.
|
||||||
|
- Je k dispozícci ES na školskom servri - aj tak je lepšie pracovať na vlastnej inštancii.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Dodaný skript na indexovanie SCNC do ES. Upravte skript na Jina DocArray
|
||||||
|
- Skúste zaindexovať slovenské dokumenty pomocou JinaDoc Array. Vyberte vhdoný existujúci model, napr. LABSE.
|
||||||
|
- Skúste ich vyhľadávať.
|
||||||
|
- Nájdite si článok o vyhľadávaní pomocou LABSE. Napíšte si z neho poznámky. Ako prebieha vyhľadávanie pomocou LABSE?
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- skúste zaindexovať slovenské dokumenty pomocou Elasticsearch.
|
||||||
|
- Zistite ako funguje vektorové vyhľadávanie v ES.
|
||||||
|
|
||||||
|
|
||||||
# Bakalárska práca 2022
|
# Bakalárska práca 2022
|
||||||
|
|
||||||
|
|
||||||
|
@ -0,0 +1,39 @@
|
|||||||
|
# Evaluation Set for Slovak News Information Retrieval
|
||||||
|
|
||||||
|
Vyhodnocovací datset pre vyhľadávanie informácii
|
||||||
|
|
||||||
|
## Poznámky
|
||||||
|
- článok ukazuje ako vytvoriť vyhodnocovací súbor (databázu) otázok a odpovedí v slovenčine pre rôzne typy úloh v NLP.
|
||||||
|
- databáza je kompatibilná s datasetom Cranfield
|
||||||
|
- táto databáza je zostavená z relevantých dokumentov pre vyhodnotenie vyhľadávania
|
||||||
|
- v databáze sa nachádzajú tieto polia:
|
||||||
|
- názov článku
|
||||||
|
- meno autora
|
||||||
|
- dátum publikovania článku
|
||||||
|
- text článku
|
||||||
|
- kategória článku (napr. politika, ekonomika)
|
||||||
|
- databáza obsahuje 3980 novinových článkov rozdelených do 6tich kategórii: ekonomika a podnikanie, kultúra, šport, domáce správy, svetové správy a zdravotníctvo
|
||||||
|
- v databáze môžeme nájsť aj 80 otázok, ktoré sa týkajú novynových článkov.
|
||||||
|
- každej jednej otázke je priradený atribút, ktorí hovorí relevanciu danej otázky v intervale 1 - 4
|
||||||
|
|
||||||
|
**Vyhodnotenie vyhľadávania informácii**
|
||||||
|
|
||||||
|
- je to proces merania ako dobrý je daný systém, ktorý vyhľadáva informácie v danej databáze na základe preddefinovaných kritérii
|
||||||
|
- pre vyhodnotenie potrebujeme relevantné dokumenty, v ktorých sa nachádza odpoveď na otázku
|
||||||
|
- Vyhodnotenie vieme zapísať pomocou rôznych metrík ako:
|
||||||
|
- Presnosť
|
||||||
|
- Návratnosť
|
||||||
|
- F miera
|
||||||
|
|
||||||
|
## Túto tému dať do DP má veľký význam aspoň podkapitola
|
||||||
|
**Lingvistické problémy Information Retreival v slovečine**
|
||||||
|
|
||||||
|
- aby sme mohli implementovať systém IR pre slovenský jazyk, alebo podobný jazyk ako je slovenčina je potrebné zohľadniť nasledujúce špecifické problémy:
|
||||||
|
- streaming or lemmatization
|
||||||
|
- viacslovnsé výrazy a pomenované entity
|
||||||
|
- synonymá a hononymá
|
||||||
|
|
||||||
|
- jedným hlavným problémom, ktorý je špecifický pre slovenský jazyk je identifikovanie slov v texte
|
||||||
|
- prvý krok je vykonanie morfologickej analýzi na identifikáciu pôvodnej základnej morfologickej formy
|
||||||
|
- pre slovenský jazyk v tomto článku bola navrhnutá morfologická forma s využitím skrytého Markovho modelu.
|
||||||
|
- skoro rovanký prístup môžeme zvoliť aj pre indetifikáciu koreňa slova s použitím systému, ktorí je založený na. pravidlách (Hunspell)
|
22
pages/students/2019/michal_stromko/dp2024/Evaluation_IR.md
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# Prehľad existujúcich databáz pre vyhodnotenie vyhľadávania
|
||||||
|
|
||||||
|
- Začiatok IR sa datuje až do 60. rokov 20-teho storočia -> prvé Granfields experiments
|
||||||
|
- V roku 1968 Gerrard Salton vynašiel model vektorového priestoru, definoval, že IR je oblasť týkajúca sa genrovania, ukladania, klasifikácie, analýzy a vyhľadávania
|
||||||
|
|
||||||
|
![Research Timeline](images/research_timeline.png)
|
||||||
|
|
||||||
|
Najrošírenejšie databázy
|
||||||
|
- TREC (Text Retrieval Conference) vzniklo tu viacero datasetov pre sémantické vyhľadávanie
|
||||||
|
- Cranfield Collection
|
||||||
|
- ClueWeb Datasets, existujú viacré verzie.
|
||||||
|
- ClueWeb09 - 1 040 809 705 webových stránok v 10 tich jazykoch
|
||||||
|
- ClueWeb12 - 733 019 372 webových stránok v angličtine
|
||||||
|
- ClueWeb22 - projekt Lemur 10 miliárd webových stránok
|
||||||
|
- MS MARCO - dataset zameraný na hĺbkové učenie, prvý súbor obsahoval 100 tisíc skutočných otázok BING a odpovede generované ľuďmi
|
||||||
|
- CORD-19 - je to databáza súboru údajov, ktorá bola vytvorená výskumnými skupinami na tému COVID 19. Jej zdroje tvoria viac ako jeden milión článkov
|
||||||
|
- SQUAD dataset
|
||||||
|
- je tvorený dátami z Wikipédie, kde existuje na každú otázku opoveď vo verzii jeden.
|
||||||
|
- vo verzii 2 sa nachádza 100 000 otázok zo SQuAD1.1 s viac ako 50 000 nezodpovedateľnými otázkami, ale sú napísané tak, aby to vyzeralo, že na danú otázku odpoveď existuje
|
||||||
|
- bol vytvorený v anglickom jazyku a existujú aj jeho iné varianty v iných jazykoch
|
||||||
|
- je vytorený aj multijazyčný squad má názov xquad skladá sa z jazykov Angličtina, Nemčina, Španielčina, Turečtina a ďalšie
|
||||||
|
- ako posledný je squad v slovenčine squad-sk
|
@ -0,0 +1,23 @@
|
|||||||
|
# Slovak Categorized News Corpus
|
||||||
|
|
||||||
|
## Poznámky
|
||||||
|
- článok opisuje vytvorenie a používanie slovenského kategorizovaného korpusu z novynových článkov pre rôzne v NLP
|
||||||
|
- dáta boli zbierané pomocou bota a boli použité funkcie, ktoré realizovali detekciu hraníc slov a viet, rozpoznávanie entít, morfologické zakončenia, lemantizáciu do hovorenej formy.
|
||||||
|
- Výsledný korpus obsahuje 1,5 milióna tokenov a 102 tisíc viet, rozdelených do šiestich kategórii.
|
||||||
|
- Kategórie korpusu:
|
||||||
|
- politika
|
||||||
|
- šport
|
||||||
|
- kultúra
|
||||||
|
- ekonomika
|
||||||
|
- zdravotníctvo
|
||||||
|
- svet
|
||||||
|
|
||||||
|
- Korpus môže byť použitý na automatické extrahovanie entít, hodnotenie jazykových modelov, kategorizáciu dokumentov, lingvistický výskum
|
||||||
|
|
||||||
|
### Lemantizácia
|
||||||
|
- je proces v NLP, ktoré zahŕňa premenovanie slov na ich základnú formu (koreň slova), tento proces je užitočný pri analýze textu, pretože umožňuje porovnávať a analyzovať rôzne formy toho istého slova ako jednu entitu.
|
||||||
|
- pre tento článok môžeme povedať, žš každý token (slovo, alebo časť slova) v korpuse má priradenú najpravdepodobnejšiu lemu
|
||||||
|
|
||||||
|
# Transcription to a Spoken Form
|
||||||
|
- je sémantické zobrazenie hovoreného jazyka vo forme písaného textu. Transkripcia by nemala byť zamieňaná s prekladom, ktorý znamená preloženie významu textu z jedného jazyka do druhého jazyka
|
||||||
|
- transkripcia sa často používa pri prepisovaní audio a video súborov
|
After Width: | Height: | Size: 113 KiB |
149
pages/students/2019/michal_stromko/vp2023/Dokumentacia.md
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
<h1 align="center">
|
||||||
|
<b>TECHNICKÁ UNIVERZITA V KOŠICIACH <br>
|
||||||
|
FAKULTA ELEKTRONIKY A INFORMATIKY</b>
|
||||||
|
</h1>
|
||||||
|
<br> <br> <br> <br>
|
||||||
|
|
||||||
|
<p align="center", style="font-size:35px; line-height:normal;" > <b>Hodnotenie vyhľadávania modelu </b></p>
|
||||||
|
<br> <br> <br> <br> <br> <br> <br>
|
||||||
|
|
||||||
|
<b>
|
||||||
|
<p style="text-align:left;">
|
||||||
|
2022
|
||||||
|
<span style="float:right;">
|
||||||
|
Michal Stromko
|
||||||
|
</span>
|
||||||
|
</p>
|
||||||
|
</b>
|
||||||
|
|
||||||
|
<br> <br>
|
||||||
|
|
||||||
|
# Úvod
|
||||||
|
|
||||||
|
Cieľom tejto práce je zoznámenie s možnosťami hodnotenia modelov. Natrénovaný model dokážeme vyhodnotiť viacerými technickými metódami s použitím rôzdnych open source riešení. Každé z riešení nám ponúkne iné výsledky. V tejto práci bližšie opíšem základné pojmy, ktoré je potrebné poznať pri hodnotení. Opíšem základné informácie o technikách hodnotenia od základných pojmov ako napríklad Vektorové vyhľadávania, DPR, Sentence Transformers, BM-25, Faiss a mnoho ďalších.
|
||||||
|
|
||||||
|
|
||||||
|
# Základné znalosti
|
||||||
|
|
||||||
|
Na začiatok je potrebné povedať, že pri spracovaní prirodzeného jazyka dokážeme používať rôzne metódy prístupu hodnotenia modelu, poprípade aj vyhľadávanie v modeli. V poslených rokoch sa v praxi stretávame s vyhľadávaním na základe vypočítania vektorov. Následne na takto vypočítané vektory dokážeme pomocou kosínusovej vzdialenosti nájsť vektory, inak povedané dve čísla, ktoré sú k sebe najbližšie. Jedno z čísel je z množiny vektorov, ktoré patria hľadanému výrazu, druhé číslo patrí slovu alebo vete, ktorá sa nacháza v indexe.
|
||||||
|
|
||||||
|
Vyhodnotenie vyhľadávania je 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é čo znamená, že výsledky nebudú relevantné k tomu čo sme vyhľadávali.
|
||||||
|
|
||||||
|
## 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 vypočítanú 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 môžeme konštatovať, ž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 bolo menenie parametra **top_k**. Tento parameter znamená počet najlepších odpovedí na výstupe vyhľadávania. Čím je tento paramter väčší, tým 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-stsb
|
||||||
|
|
||||||
|
Každá jedna metóda pracuje s úplne iným modelom. Modely LaBSE a sts-slovakbert-stsb používali rovnakú knižnicu na vytvorenie vektorov aj vyhľadávanie.
|
||||||
|
|
||||||
|
#### Faiss
|
||||||
|
|
||||||
|
Faiss používal knižnicu spacy, do ktorej parameter model_name vstupoval model ktorý bol natrénovaný pre slovenské dáta na mojej katedre. Následne boli dáta indexované pomocou knižnice faiss, ktorá má funkciu indexovania dát. Vyhľadávanie dát bolo tak isto realizované pomocou funkcie *faiss.search()*, ktorej parametre sú otázka a počet očakávaných dokumentov, inak povedané odpovedí.
|
||||||
|
|
||||||
|
#### BM25
|
||||||
|
|
||||||
|
BM25 je jeden z najstarších možností vyhľadávania v neuónových sieťach, napriek tomu je stále stabilný a relatívne presní aj v dnešnej dobe.
|
||||||
|
|
||||||
|
Pri vyhľadávaní informácii v BM25, označený Okapi je navrhnutý tak, že vyhľadáva na základe najlepšej zhody. Vyhľadávanie funguje na nájdení najlepších dokumentov, ktoré sú zoradené podľa relevantnosti k vyhľadanej požiadavke. Je založený na zoradení na pravdepodobnostnom rámci. BM 25 bol v priebehu rokov modifikovaný a vylepšovaný.
|
||||||
|
|
||||||
|
Pre vypočítanie skóra používa Inverse documents frequency (IDF). Vypočíta sa ako N a značí celkový počet dokumentov. Pri výpočte sa používa maximálna hodnota zo všetkých indexov, ktorá pochádza z najväčšieho indexu disku. Pre lepšie pochopenie IDF vypočítava uzol obsahu a index, treba však rátať s tým, že sa môžu vyskytovať mierne odchylky.
|
||||||
|
|
||||||
|
Jedným z dôležitých atribútov je či sa konenčný výsledný dokument vyskytne viackrát v relevantých odpovediach. Čím viackrát sa opakuje jeden dokument, tým je väčšia pravdepodobnoť, že bude označený za jeden z najlepších výsledkov vyhľadávania.
|
||||||
|
|
||||||
|
|
||||||
|
Evaluovanie pomocou modelu LaBSE a sts-slovakbert-stsb som realizoval použítím knižnice **Sentence tranformers**. Práca s touto knižnicou je veľmi jednoduchá, pretože v dokumentácii, ktorú obsahuje, vieme veľmi jednoducho zaembedovať dokumenty a zároveň aj vyhľadávať.
|
||||||
|
|
||||||
|
Ako môžete vidieť v práci som použil model LaBSE aj keď som mal k dispozícii priamo natrénovaný model pre slovenčinu. Bolo to z dôvodu zistiť ako sa bude správať model LaBSE oproti modelu, ktorý bol natrénovaný pre Sloveský jazyk. Model LaBSE nebol vybratý len tak náhodou. Je to špecifický model, ktorý bol natrénovaný tak, aby podporoval vyhľadávanie, klasifikáciu textu a ďalšie aplikácie vo viacerých jazykoch. Vo všeobecnosti je označovaný ako multilangual embedding model. Je to model, ktorý je prispôsobený rôznym jazykom nielen pri indexovaní, ale aj vyľadávaní. Nájväčšou výhodou modelu je, že môžeme mať dokument, v ktorom sa nachádzajú vety vo vicacerých jazykoch. Pre niektoré modeli je to veľké obmedzenie, s ktorým si neporadia, avšak LaBSE je stavaný na takéto situácie, a tak si ľahko poradí a zaindexuje tento dokument.
|
||||||
|
|
||||||
|
#### slovakbert-sts-stsb
|
||||||
|
Môžeme ho označiť ako sentence similarity model založený na SlovakBERT. Model bol dotrénovaný na STSbenchmark a preložený do slovenčniny pomocou M2M100. Model používa univerzálny sentence enkóder pre slovenské vety. Autory článku, ktorý trénovali SlovakBERT uvádzajú, že model je založený na large-scale transformers-based a používa 19,35 GB dát získaných z crawlovania webov so slovenským textom. Autori nakoniec vyhodnotili a prirovnali tento model ku ostatným veľkým jayzykovým modelom, ako napríklad XLM-R-Large.
|
||||||
|
|
||||||
|
Je to síce prvý model, ktorý dosahuje najlepšie výsledky oproti ostatným jazykovým modelom pre slovenčinu, ale treba si všimnúť, že stále tu existujú viacjazyčné jazykové modely, ktoré sú stále konkurencieschopné.
|
||||||
|
|
||||||
|
Hodnotenie modelu prebiehalo hlavne pomocou metriky F1. F1 bola priemerovaná zo súborov údajov. Autori modelu uvádzajú, že pri použití nízkych hodnôť hyperparametrov sa váhy moc nemenia, čo znamená lepšie výsledky hodnotenia.
|
||||||
|
|
||||||
|
Nevýhodou tohto jazykového modelu je nedostatok hodnotiacich benchmarkov. Ďalej vznikal problém s korpusom textov, tento model bol natrénovaný na dátach, ktoré boli vytvorené strojovým prekladom. Práve kvôli tomu vznikali chyby ako *noisy datasets (v prípade analýzy sentimentu)*.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Výsledky experimentov
|
||||||
|
|
||||||
|
Spolu bolo realizovananých 20 experimentov vyhnotenia vyhľadávania na trénovacom datasete skquad. Každý jeden experiment pozostával z indexovania datasetu a následním vyhľadávaním na vopred vytvorených otázkach. Metódy medzi sebou mali spoločný počet experimentov a pri každej metóde boli vypočítané metriky Precission a Recall.Zároveň na každej metóde bolo vykonaných 5 experimentov s rôznymi parametrami top_k. Z týchto experimentov vznikla jedna veľká, nie moc prehľadná tabuľka, ktorú môžete vidieť nižšie.
|
||||||
|
|
||||||
|
| Evaluation mode | 5 Precision | 5 Recall | 10 Precision | 10 Recall | 15 Precision | 15 Recall | 20 Precision | 20 Recall | 30 Precision | 30 Recall |
|
||||||
|
|----------------- |------------- |---------- |-------------- |----------- |-------------- |----------- |-------------- |----------- |-------------- |----------- |
|
||||||
|
| FAISS | 0.0015329215534271926 | 0.007664607767135963 | 0.0012403410938007953 | 0.012403410938007953 | 0.0010902998324539249 | 0.016354497486808874 | 0.001007777138713146 | 0.020155542774262923 | 0.0008869105670726116 | 0.02660731701217835 |
|
||||||
|
| BM 25 | 0.113256145439996 | 0.56628072719998 | 0.06176698592112831 | 0.6176698592112831 | 0.043105187259829786 | 0.6465778088974468 | 0.033317912425917126 | 0.6663582485183426 | 0.023139696749939567 | 0.694190902498187 |
|
||||||
|
| LABSE | 0.09462602215609292 | 0.47313011078046463 | 0.05531896271474655 | 0.5531896271474656 | 0.039858461076796116 | 0.5978769161519418 | 0.031433644252169345 | 0.6286728850433869 | 0.022339059908141407 | 0.6701717972442421 |
|
||||||
|
|slovakbert-sts-stsb | 0.08082472679986996 | 0.4041236339993498 | 0.04856210457875916 | 0.4856210457875916 | 0.03553810631256929 | 0.5330715946885394 | 0.028241516417014677 | 0.5648303283402936 | 0.020285578534096876 | 0.6085673560229063 |
|
||||||
|
|
||||||
|
V poslednom kroku je potrebné vyhodnotiť experimenty. Z takejto neprehľadnej tabuľky je to zložité, preto som zvolil prístup vytvorenia grafov, na ktorých presne vidno, ktorá metóda je najlepšia. Boli vytvorené grafy, ktoré ukazujú výskedky presnosti a návratnosti na rovnakom počte vrátaných odpovedí medzi métódami. Posledné 4 grafy znázorňujú každú metódu samostatne s narastajúcim počtom odpovedí.
|
||||||
|
|
||||||
|
#### Správanie metód pri rovnkakom počte najlepších odpovedí
|
||||||
|
- Top 5 odpovedí
|
||||||
|
|
||||||
|
V tomto grafe môžete vidieť, že pri vyhľadávaní top 5 odpovedí najlepšiu presnosť a návratnosť mala metóda BM25, ktorá dosiahla najlepšie výsledky. Najhoršie výsledky boli dosiahnuté metódou Faiss. Metóda sentence transformers s použitím LaBSE dosiahla druhý najlepší výsledok.
|
||||||
|
|
||||||
|
![Top 5 rovnakých odpovedí](img/k_5.png)
|
||||||
|
|
||||||
|
- Top 10 odpovedí
|
||||||
|
|
||||||
|
Pri 10 najlepších odpovediach BM25 dosiahlo lepší výsledok Recall, ako pri top 5 výsledkoch, ale zároveň Precision sa zhoršila. Faiss má naďalej najhoršie výsledky. Sentence tranformers s použitím slovenského modelu slovakbert-sts-stsb sa zlepšila oproti predchádzajúcemu grafu.
|
||||||
|
|
||||||
|
![Top 10 rovnakých odpovedí](img/k_10.png)
|
||||||
|
|
||||||
|
- Top 15 odpovedí
|
||||||
|
|
||||||
|
Na tomoto grafe ďalej môžeme sledovať zlepšovanie Recall pre BM25, ale treba si však všimnúť, že Precission klesá. Dôležtým mýlnikom pri tomto grafe je porovnanie modelu LaBSE s slovakbert-sts-stsb, pretože slovakbert sa začína správať pri najlepších 15 odpovediach ako model LaBSE, to nám môže aj naznačit, že s rastúcim počtom odpovedí pre model LaBSE neprichádza viac správnych dokumentov, ako by sa očakávalo. Najväčšie priblíženie modelu slovakbert k modelu LaBSE môžete vidieť na metrike Precision.
|
||||||
|
|
||||||
|
![Top 15 rovnakých odpovedí](img/k_15.png)
|
||||||
|
|
||||||
|
- Top 20 odpovedí
|
||||||
|
|
||||||
|
Na tomto grafe už môžeme vidieť, že model LaBSE a slovakbert majú skoro rovnaké hodnoty Precision a Recall. To nám môže nazanačovať, že použitie modelu slovakbert bude silnejšie pri vracaní väčšieho počtu výsledkov.
|
||||||
|
|
||||||
|
![Top 20 rovnakých odpovedí](img/k_20.png)
|
||||||
|
|
||||||
|
- Top 30 odpovedí
|
||||||
|
|
||||||
|
Posledný graf v tejto kategórii nám ukazuje, že aj pri 30 odpovediach má metóda BM25 najlepší Recall, ale treba sa pozrieť na model slovakbert, ktorý má pri top 30 odpovedach minimálnu odchýlku od modelu LaBSE.
|
||||||
|
|
||||||
|
![Top 30 rovnakých odpovedí](img/k_30.png)
|
||||||
|
|
||||||
|
|
||||||
|
#### Správanie metódy s narastajúcim počtom najlepších odpovedí
|
||||||
|
|
||||||
|
V tejto časti práce skúsim bližšie zobraziť dva grafy, na ktorých môžete vidieť správanie metódy hodnotenia vyhľadávania s narastajúcim počtom výsledkov z vyhľadávania. Nižšie sa nachádzajú iba 2 metódy, ktoré podľa mňa v experimentoch dosiahli najlepšie výsledky.
|
||||||
|
|
||||||
|
- Metódou BM25
|
||||||
|
|
||||||
|
Metóda BM25 počas všetkých experimentov vykazovala najlepšie výsledky, nie len Precission, ale aj Recall. Na grafe môžete vidieť, že s narastajúcim počtom výsledkov Precission klesal, ale zároveň Recall stúpal. Pri tejto metóde vidím môžnosti experimentovania, napríklad pri 50 alebo 100 odpovediach z vyhľadávania
|
||||||
|
|
||||||
|
![BM25](img/bm25.png)
|
||||||
|
|
||||||
|
- Metódou sentence transformers s použitím slovakbert-sts-stsb
|
||||||
|
|
||||||
|
Model slovakbert, ktorý bol zverejnený na konci minulého roka, dosiahol pri poskytnutom datasete perfektné výsledky. Dovoľujem si to tvrdiť z toho dôvodu, že nebol trénovaný na datasete, ktorým bol hodnotený. V budúnosti by mohlo byť zaujímavé dotrénovať tento model pomocou použitého datasetu a následne takýto model ohodnotiť. Predpokladám, že tento model by mohol lepšie vyhľadávať aj pri menšom množstve najlepších výsledkov z vyhľadávania.
|
||||||
|
|
||||||
|
![slovakbert](img/slovakbert_sts.png)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
### Záver vyhodnotenia experimentov
|
||||||
|
|
||||||
|
V tejto práci sa mi podarilo úspešne vykonať 20 experimentov, ktoré ukázali, že dokážeme efektívne využiť natrénovaný slovenský model na iných dátach. Zároveň môžeme vidieť aj efektívne vyhľadávanie metódou BM25, ktorá dosahovala nadpriemerné výsledky.
|
||||||
|
|
||||||
|
Pokračovanie v práci by som mohol realizovať použitím dvoch techník vyhľadávania. Ideálnym prípadom môže byť použitie oboch metód. Je dôležité, aby metódy išli v správnom poradí. Po prvom vyhľadávan by bolo ideálne použiť text similarity pre efektívne zoradenie výsledkov.
|
||||||
|
|
@ -0,0 +1,12 @@
|
|||||||
|
# Dense Passage Retrieval for Open-Domain Question Answering
|
||||||
|
## Clanok č.1
|
||||||
|
|
||||||
|
### Dense Passage Retriever (DPR)
|
||||||
|
- výskum tejto práce je zameraný na zlepšenie vyhľadávania v QA.
|
||||||
|
- pre používanie DPR je dôležité používať správny Encoder, ktorý mapuje text na dimenzionálne vektory skutočnej hodnoty a vytvára index __M__, ktorý sa používa pre vyhľadávanie
|
||||||
|
- pri behu DPR sa aplikuje iný Enkóder, ktorý mapuje vstupnú otázku na d-rozmerný vektor, a vyhľadáva podľa toho ktorý vektor je najbližšie k vektoru otázky. Podobnosť medzi otázkou a pasážou definujeme pomocou bodového súčinu ich vektorov.
|
||||||
|
- doležitou súčasťou takéhoto vyhľadávania je správne vypočítanie kosínusovej vzdialenosti.
|
||||||
|
- trénovanie Encodera sa vykonáva z dôvodu lepšieho vypočítania metrických údajov.
|
||||||
|
- cieľ trénovania je vytvorenie dvoch vektorov, tak aby tieto dve relevantné dvojice otázok a odpovedí mali najmenšiu vzdialenosť medzi sebou.
|
||||||
|
__Pozitívne a negatívne pasáže__
|
||||||
|
- pri vyhľadávaní sa často stretávame s pozitívnymi výsledkami ktoré sú k dispozícii explicitne, zatiaľ čo negatívne výsledky je potrebné vybrať z veľkého súboru.
|
@ -0,0 +1,8 @@
|
|||||||
|
# Making Monolingual Sentence Embeddings Multilingual using Knowledge Distillation
|
||||||
|
|
||||||
|
## Abstrak
|
||||||
|
- tento článok predstavuje vylepšenia vyhľadávania, na základe rozšírenia modelu, pomocou pridania nových viet do modelu.
|
||||||
|
- tieto vety su podobne tym ktore sa uz nachadzali v modeli, a vypocitane vektory by mali byt umiestnene, tak aby boli blyzko pri predtym vypocitanom embedingu.
|
||||||
|
- pri takomto trenovani pouzivame trenovanie viacjazycnych viet.
|
||||||
|
- vyhodou takéhoto použitia je jednoduché rozšírenie existujúcich modelov s relatívne malým počtom vzoriek.
|
||||||
|
- článok je zameraný na ukážku účinosti vyhľadávania pre viac ako 50 jazykov z rôznych rodín, v konečnom dôsledku to môže znamenať aj zahrnutie slovenského jazyka.
|
BIN
pages/students/2019/michal_stromko/vp2023/img/bm25.png
Normal file
After Width: | Height: | Size: 9.6 KiB |
BIN
pages/students/2019/michal_stromko/vp2023/img/k_10.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
pages/students/2019/michal_stromko/vp2023/img/k_15.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
pages/students/2019/michal_stromko/vp2023/img/k_20.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
pages/students/2019/michal_stromko/vp2023/img/k_30.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
pages/students/2019/michal_stromko/vp2023/img/k_5.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
pages/students/2019/michal_stromko/vp2023/img/slovakbert_sts.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
pages/students/2019/michal_stromko/vp2023/img/vzorec.png
Normal file
After Width: | Height: | Size: 7.1 KiB |
47
pages/students/2019/michal_stromko/vp2023/notes.md
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
### Dense Passage Retriever (DPR)
|
||||||
|
|
||||||
|
DPR nazývame ako typ systému, spracovania prirodzeného jazyka (NLP). Tento systém získava relevantné časti, inak povedané pasáže z veľkého korpusu textu. V kombinácii s sémantickou analýzou a algoritmom strojového učenia, ktorý idenetifikuje najrelevantnejšie pasáže pre daný dopyt. DPR je založený na používaní správneho enkódera, ktorý mapuje text na dimenzionálne vektory skutočnej hodnoty a vytvára index M, ktorý sa používa pre vyhľadávanie. Treba však povedať, že počas behu DPR sa aplikuje aj iný enkóder **EQ**, ktorý mapuje vstupnú otázku na d-rozmerný vektor a následne hľadá tie vektory, ktoré sú najbližšie k vektoru otázky. Podobnosť medzi otázkou a časťou odpovede definujeme pomocou **Bodového súčinu ich vektorov**.
|
||||||
|
|
||||||
|
![vzorec podobnosti](img/vzorec.png)
|
||||||
|
|
||||||
|
Aj keď existujú silnejšie modelové formy na meranie podobnosti medzi otázkou a pasážou, ako sú siete pozostávajúce z viacerých vrstiev krížovej pozornosti, ktorá musí byť rozložiteľná, aby sme mohli vopred vypočítať kolekcie pasáží. Väčšina rozložiteľných funkcii podobnosti používa transformácie euklidovskej vzdialenosti.
|
||||||
|
|
||||||
|
**Cross Attentions** (krížová pozornosť)
|
||||||
|
Cross Attentions v DPR je technika, ktorá sa používa na zlepšenie presnosti procesu vyhľadávania. Funguje tak, že umožňuje modelu pracovať s viacerými pasížami naraz, čo umožňuje identifikovanie najrelevantnejších pasáží. Pre pre správne identifikovanie DPR berie do úvahy kontext každej pasáže. V prvom kroku najskôr model identifikuje kľúčové výrazy v dotaze a následne použije sémantickú analýzu na identifikáciu súvisiacich výrazov. Mechanizmus pozornisti umožňuje modelu zamerať sa na najdôležitejšie slová v každej pasáži, zatiaľ čo algoritmu strojového učenia pomáha modelu s identifikáciou.
|
||||||
|
|
||||||
|
V ďalšom kroku _Cross Attentions_ používa systém bodovania na hodnotenie získaných pasáží. Bodovací systém berie do úvahy relevantnosť pasáží k dopytu, dĺžku pasáží a počet výskytov dopytovacích výrazov v pasážach. Posledným dôležitým atribútom, ktorý sa zisťuje je miera súvislosti nájdeného výrazu k výrazu dopytu.
|
||||||
|
|
||||||
|
**Pozitívne a negatívne pasáže** (Positive and Negative passages)
|
||||||
|
Časté problémy, ktoré vznikajú pri vyhľadávaní sú spojené s opakujúcimi sa pozitívnymi výsledkami, zatiaľ čo negatívne výsledky sa vyberajú z veľkej množiny. Ako príklad si môžeme uviesť pasáž, ktorá súvisí s otázkou a nachádza sa v súbore QA a dá sa nájsť pomocou odpovede. Všetky ostatné pasáže aj keď nie sú explicitne špecifikované, môžu byť predvolene považované za irelevantné.
|
||||||
|
Poznáme tri typy negatívnych odpovedí:
|
||||||
|
- **Náhodný (Random)**
|
||||||
|
- Je to akákoľvek náhodná pasáž z korpusu
|
||||||
|
- **BM25**
|
||||||
|
- Top pasáže vracajúce BM25, ktoré neobsahujú odpoveď, ale zodpovedajú väčšine otázkou
|
||||||
|
- **Zlato (Gold)**
|
||||||
|
- Pozitívne pasáže párované s ostatnými otázkami, ktoré sa objavili v trénovacom súbore
|
||||||
|
|
||||||
|
### Sentence Transformers
|
||||||
|
|
||||||
|
- je Python framework
|
||||||
|
- dokázeme vypočítať Embeddingy vo vyše 100 jazykoch a dajú sa použíť na bežné úlohy ako napríklad semantic text similarity, sementic search, paraphrase mining
|
||||||
|
- framework je založený na PyTorch a Transformers a ponúka veľkú zbierku predtrénovyných modelov, ktoré sú vyladené pre rôzdne úlohy
|
||||||
|
|
||||||
|
|
||||||
|
### Word Embedding
|
||||||
|
|
||||||
|
Požívanie Word Embedings závisí od dobre vypočítaných Embedingov. Pokiaľ máme dobre vypočítané Embeddingy dokážeme veľmi jednoducho dostávať správne odpovede napríklad pri vyhľadávaní. Word Embedding môžeme poznať aj pod slovným spojením ako distribuovaná reprezentácia slov. Dokážeme pomocou neho zachytiť sémantické aj systaktické informácie o slovách z veľkého neoznačeného korpusu.
|
||||||
|
|
||||||
|
Word Emedding používa tri kritické komponenty pri trénovaní a to model, korpus a trénovacie parametre. Aby sme mohli navrhnút efektívne word-embedding metódy je potrebné na začiatku objasniť konštrukciu modelu. Takmer všetky metódy trénovania word embeddings sú založené na rovnakej distribučnej hypotéze: **Slové, ktoré sa vyskytujú v podobných kontextoch, majú tendenciu mať podobné významy**
|
||||||
|
|
||||||
|
Vzhľadom na vyšie napísanú hypotézu rôzne metódy modelujú vzťah medzi cieľovým slovom _w_ a jeho kontextom _c_ v korpuse s rôzymi spôsobmi, pričom _w_ a _c_ sú vložené do vektorov. Vo všeobecnosti môžeme povedať, že existujúce metódy sa líšia v dvoch hlavných aspektoch modelu konštrukcii a to **vzťah medzi cieľovým slovom a jeho kontextom a reprezentácia kontextu**
|
||||||
|
|
||||||
|
Treba brať na vedomie, že trénovanie presných word embeddingov silne, inak povedané výrazne súvisí s tréningovým korpusom. Rôzne tréningové korpusy s rôznou veľkosťou a pochádzajúcej z rôzdnej oblasti môžu výrazne ovplyvniť konečné výsledky.
|
||||||
|
|
||||||
|
Nakoniec presné trénovanie word embeddingov silne závisí od parametrov akými sú:
|
||||||
|
- počet iterácii
|
||||||
|
- dimenzionalita embeddingov
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Bol uvedený pre širokú verejnosť v roku 2021
|
104
pages/students/2019/patrik_pokrivcak/README.md
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
---
|
||||||
|
title: Patrik Pokrivčák
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [dp2025]
|
||||||
|
tag: [nlp, hate]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2019
|
||||||
|
|
||||||
|
# Diplomová práca
|
||||||
|
|
||||||
|
|
||||||
|
Téma:
|
||||||
|
|
||||||
|
Rozpoznávanie nenávistnej reči pomocou veľkých jazykových modelov
|
||||||
|
|
||||||
|
Cieľe:
|
||||||
|
|
||||||
|
- Naučiť sa rozpoznávať nenávistnú reči HS pomocou LLM - lokálnych alebo komerčných.
|
||||||
|
- Zlepšiť chopnosti LLM pre rozpoznávanie HS - dotrénovaním alebo promptingom.
|
||||||
|
- Vytvoriť demo
|
||||||
|
- Výsledky prezentovať na konferencii - alebo článku.
|
||||||
|
|
||||||
|
Nápad:
|
||||||
|
|
||||||
|
- Generovanie nenávistnej reči pre účely trénovania.
|
||||||
|
- Rozpoznávanie HS pomocou embeding modelov, few shot alebo dotrénovanie.
|
||||||
|
|
||||||
|
Súvisiaca téma:
|
||||||
|
|
||||||
|
- [Python](/topics/python)
|
||||||
|
- [Hate Speech](/topics/hatespeech)
|
||||||
|
- [Tetiana Mahorian](/students/2022/tetiana_mohorian)
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 15.10.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Staré poznámky.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Navrhnite prompt na klasifikáciu nenávistnej reči a vyhodnotte, aký presný je model na množine https://huggingface.co/datasets/TUKE-KEMT/hate_speech_slovak. Vyskúšajte viac modelov. Vyskúšajte aj https://huggingface.co/slovak-nlp/mistral-sk-7b
|
||||||
|
- Pokračujte v písaní DP. Použite odkazy na odborné články,
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Dotrénujte model na klasifikáciu nenávistnej reči.
|
||||||
|
- Dotrénujte model na generovanie nenávistnej reči.
|
||||||
|
- Vyskúšajte SentenceTransformer (me5) na klasifikáciu.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Diplomový projekt 2024
|
||||||
|
|
||||||
|
Stretnutie 10.5.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Poznámky o neurónových sieťach a rozbehané HF transformers.
|
||||||
|
- Práca s Kaggle.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v otvorených úlohách a štúdiu.
|
||||||
|
- [ ] Zistite čo je to SentenceTransformer. Prejdite si tutoriál https://sbert.net/docs/usage/semantic_textual_similarity.html Ako model použite multilingual e5 base alebo slovakbert-mnlr.
|
||||||
|
- Prečítajte si niekoľko vedeckých článkov o klasifikácii HS, poznačte si ich informácie a urobte si poznámky. Na vyhľadanie článkov použite google scholar.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vyskúšajte Ollama a niekoľko jazykových modelov (LLAMA3, mistral, ) pre few-shot rozpoznávanie HS.
|
||||||
|
- Dotrénujte embedding model na HS detection
|
||||||
|
- Pripravte dáta na vyhodnotenie few shot klasifikácie.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 5.4.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Začiatok štúdia Python a LMM.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Pokračujte v štúdiu neurónových sietí a klasifikácie nenávsistnej reči podľa otvorených úloh. Píšte si poznámky.
|
||||||
|
- [-] Zistite, ako pracuje model GPT. Zistite čo je to prompting. Navrhnite "prompt" pre ChatGPT ktorý by klasifikoval nenávistnú reč.
|
||||||
|
- [x] Oboznámte sa s knižnicou HF transformers. Nainštalujte si ju. Prejdite si jeden alebo 2 tutoriály.
|
||||||
|
- [ ] Zistite ako funguje "few shot" alebo "zero shot" learning s GPT modelom. Vyskúšajte si to z HF Transformers. napr. https://huggingface.co/blog/few-shot-learning-gpt-neo-and-inference-api
|
||||||
|
|
||||||
|
Stretnutie 15.2.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Nainštalujte si prostredie Anaconda. Naučiť sa lepšie programovať v jazyku Python.
|
||||||
|
- [x] Prečítajte si Dive into Python 3.
|
||||||
|
- [x] Priečítajte si Dive into Deep learning.
|
||||||
|
- [x] Zistite si čo je to nenávistná reč a ako sa rozpoznáva pomocou neurónových sietí. Napíšte si o tom poznámky na dve strany.
|
||||||
|
- [-] Zistite, aké existujú veľké jazykové modely a ako pracujú. Napíšte o tom poznámky na 2 strany.
|
||||||
|
|
||||||
|
|
||||||
|
|
72
pages/students/2020/david_kostilnik/README.md
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
---
|
||||||
|
title: Dávid Kostilník
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [dp2025]
|
||||||
|
tag: [ir]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2020
|
||||||
|
|
||||||
|
# Diplomová práca 2025
|
||||||
|
|
||||||
|
Ešte sa rozhodne.
|
||||||
|
|
||||||
|
Téma:
|
||||||
|
|
||||||
|
Sémantické vyhľadávanie pomocou veľkých modelov
|
||||||
|
|
||||||
|
- Tvorba datasetu prekladom, využitie existujúcich datasetov
|
||||||
|
- Dotrénovanie existujúceho modelu typu BERT pomocou preloženého MS MARCO.
|
||||||
|
|
||||||
|
Ciele:
|
||||||
|
|
||||||
|
- Zlepšiť RAG.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 29.10.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Prečítané nejaké články. Inak nič.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
|
||||||
|
- Podrobne si naštudujte a vyskúšajte framework Sentence Transformers https://sbert.net/index.html. Využite Google Colab na príklady.
|
||||||
|
- Podrobne si naštudujte databázu MS MARCO. Zistite a vyskúšajte dotrénovanie anglického modelu typu BERT (bert, roberta, xlm, deberta ...) na databáze MS Marco.
|
||||||
|
- Píšte si poznámky o tom čo ste zistili o SBERT. Použite odkazy na vedecké články. Vedecké článkuý nájdete na Google Scholar.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- pracujte na servri quadro a prostredí Anaconda.
|
||||||
|
- Natrénujte slovenský BERT model na preloženej databáze MS MARCO (WIP K. Sopkovič).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Diplomový projekt 2024
|
||||||
|
|
||||||
|
Stretnutie 4.4. 2024
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Oboznámte sa s tým, ako funguje neurónová sieť typu Transformer. Urobte si poznámky. Poznačete si zdroje, uprednostnite vedecké články.
|
||||||
|
- Oboznámte sa ako funguje rekurentná neurónová sieť. Sústreďte sa na typ RWKV. Urobte si poznmámy.
|
||||||
|
- Vyskúšajte si túto NN. Začnite tu https://wiki.rwkv.com/basic/play.html
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Oboznámte sa ako funguje NN Mamba.
|
||||||
|
- Zostavte RAG systém s pomocou RWKV.
|
||||||
|
- Oboznámte sa ako funguje Sentence Transformer.
|
||||||
|
- Porovnajte embeddingy RWKV s inými metódami (Sentence Transformers)
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 15.2.2024
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Oboznámte sa s prácou [K. Sopkovič](/students/2019/kristian_sopkovic) a [M. Stromko](/students/2019/michal_stromko).
|
||||||
|
|
||||||
|
|
71
pages/students/2020/jakub_kristian_lukas/README.md
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
---
|
||||||
|
title: Jakub Kristián Lukas
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2023]
|
||||||
|
tag: [hatespeech]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2020
|
||||||
|
|
||||||
|
# Bakalárska práca 2023
|
||||||
|
|
||||||
|
Téma: Systém pre rozpoznávanie nenávistnej reči v online diskusiách
|
||||||
|
|
||||||
|
Súvisí s PhD prácou [Manohar Gowdru Shridhara](students/2021/manohar_gowdru_shridharu)
|
||||||
|
|
||||||
|
Návrh na zadanie:
|
||||||
|
|
||||||
|
- Preštudovať teóriu.
|
||||||
|
- Zopakovať jednoduchý experiment pre rozpoznávanie nenávistnej reči v anglickom jazyku s pomocou frameworku HuggingFace transformers.
|
||||||
|
- Vypracovať webové demo.
|
||||||
|
|
||||||
|
Stretnutie 3.111.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- štúdium Python.
|
||||||
|
- Vyskúšané niektoré HF HS modely.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Prejdite si Streamlit tutoriál.
|
||||||
|
- Pokračovať v otvorených úlohách. Spojazdnite streamlit HS demo. Píšte si poznámky z prehľadového článku, Prečítajte si súvisiace články a napíšte poznánky.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 7.10.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Nainštalované prostredie Anadonda, HF, Pytorch
|
||||||
|
- Zdieľaný priečinok [google drive](https://drive.google.com/drive/folders/1voblyxpAwsjNWBSFB-8F_heQCb5cGakJ?usp=sharing)
|
||||||
|
- Vypracovaný text na 2 strany o BERT modeli.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ] Prečítať a napísať poznámky na jednu stranu. Pozrite si aj súvisiace články,
|
||||||
|
- https://arxiv.org/abs/2004.06465
|
||||||
|
- [ ] Prejdite si HF Tutoriál.
|
||||||
|
- [ ] Pozrite si https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit
|
||||||
|
- [x] Prejdite si knihu Dive into Python 3.
|
||||||
|
- [x] Vyskúšať a preštudovať tieto modely
|
||||||
|
- https://huggingface.co/Hate-speech-CNERG/dehatebert-mono-english
|
||||||
|
- https://huggingface.co/Narrativa/byt5-base-tweet-hate-detection
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 29.9.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
- Oboznamili sme sa s projektom.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zistiť ako funguje model BERT. Napísať o tom správu na 2 strany. Priložiť odkazy na odborné články.
|
||||||
|
- Nainštalovať si HuggingFace Transformers a vypracovať tutoriál. HF Transformers bude vyžadovať CUDA a Pytorch. Dostupné to je na školskom servri idoc.
|
||||||
|
- [x] Nainštalovať Anaconda
|
||||||
|
- [x] Nainštalovať Pytorch
|
||||||
|
- [x] nainštalujete transformers.
|
||||||
|
- [ ] prejdide si tutoriál
|
||||||
|
|
60
pages/students/2020/kamil_tomcufcik/README.md
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
---
|
||||||
|
title: Kamil Tomčufčík
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [dp2025]
|
||||||
|
tag: [lm]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2020
|
||||||
|
|
||||||
|
# Diplomová práca 2025
|
||||||
|
|
||||||
|
Ciel:
|
||||||
|
|
||||||
|
Overiť a zlepšiť možnosti generovania jednotkových testov
|
||||||
|
|
||||||
|
Stretnutie 14.11. 2924
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vyhľadané modely na generovanie kódu. Nie sú vyskúšané. Codex, CodeParrot a Incoder. Na unittesty CodeT5 a AthenaTest.
|
||||||
|
- Rozčítané knihy podľa pokynov.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
Zistite odpovede na tieto otázky:
|
||||||
|
- Ako zistíme, že vygenerovaný kód je dobrý.
|
||||||
|
- Ako zistíme, že vygenerovaný test vyhovuje špecifikácii?
|
||||||
|
|
||||||
|
- Vypracujte písomný prehľad. Napíšte aké modely sa používajú, Akým spôsobom sa vyhodnocujú. Použite odb orné článkyl. Odborné články nájdete na google scholar alebo scopus.
|
||||||
|
- Pripravte vzorovú dátovú množinu. Hotové testy, implementácie aj dokumentáciu., Možno vybrať exsitujúci open source projekt alebo hotovú dátovú množinu.
|
||||||
|
- Vyskúšajte niekoľko jazkovych modelov pre generovanie kódu aj generovanie testov.
|
||||||
|
- Do diplomovej práce vypracujte experimenty kde vyhodnotíte jazykové modely pre generovanie testov v rôznych prostrediach.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Dotrénujte model pre lepšie generovansie testov.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie online 5.2.2024:
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Nainštalujte si prostredie Anaconda, pozrite si knihu https://diveintopython3.net/
|
||||||
|
Dive Into Python 3
|
||||||
|
- pre úvod do neurónových sietí si prečítajte knihu https://d2l.ai/index.html Dive into Deep Learning — Dive into Deep Learning 1.0.3 documentation
|
||||||
|
- vyskúšajte viac modelov pre generovanie kódu. Codex, Copilot, ChatGPT
|
||||||
|
- zistite ako funguje veľký jazykový model
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh (zadanie na ďalšie stretnutie):
|
||||||
|
|
||||||
|
- Zistite zoznam open source modelov pre generovanie kódu a porovnajte ich možnosti. Zoznam zapíšte do textového súboru.
|
||||||
|
- Vyberte si jeden z modelov na generovanie kódu, nainštalujte si ho a vyskúšajte.
|
||||||
|
- Zistite, ako sa číselne vyjadrí kvalita generovania počítačového kódu. Aké metriky sa používajú? Zistie aké trénovacie a vyhodnocovacie množiny sa používaju. Zoznam zapíšte do súboru.
|
||||||
|
- Zistite, ako sa dá taký model "dotrénovať" na špecifickú úlohu generovania testov.
|
||||||
|
|
||||||
|
|
109
pages/students/2020/matej_kobylan/README.md
Normal file
@ -0,0 +1,109 @@
|
|||||||
|
---
|
||||||
|
title: Matej Kobyľan
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2023]
|
||||||
|
tag: [ir]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2020
|
||||||
|
|
||||||
|
# Bakalárska práca 2024
|
||||||
|
|
||||||
|
Cieľ: Vytvoriť dialógový systém pre podporu komunikácie občana s mestom Košice
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zistite, čo je to Natural Language Understanding. Napíšte o tom správu na 2 strany.
|
||||||
|
- Prečítajte si BP Samuel Horáni. https://opac.crzp.sk/?fn=detailBiblioForm&sid=A770A18E340C6018B48DE7BDD5C2 Napíšte čo ste sa dozvedeli.
|
||||||
|
- Prečítajte si článok https://link.springer.com/article/10.1007/s10462-022-10248-8 a napíšte, čo ste sa dozvedeli.
|
||||||
|
- Vyskúšajte si chatbota z repozitára https://git.kemt.fei.tuke.sk/sh662er/Rasa.
|
||||||
|
Nainštalujte si https://pytorch.org/get-started/locally/
|
||||||
|
Nainštalujte si https://github.com/hladek/spacy-skmodel
|
||||||
|
- Skúste ho upraviť tak, aby dával informácie o meste Košice.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Bakalárska práca 2023
|
||||||
|
|
||||||
|
Systém pre monitoring médií
|
||||||
|
|
||||||
|
Práca súvisí s [DP Michal Stromko](/students/2019/michal_stromko)
|
||||||
|
|
||||||
|
Návrh na zadanie:
|
||||||
|
|
||||||
|
- Navrhnite a implementuje systém pre extrakciu textu a metainfrmácií z webových stránok alebo sociálnych sietí
|
||||||
|
- Modifikujte agenta pre získavanie textu tak aby do databázy ukladal sledované webové stránky v pravidelných intervaloch.
|
||||||
|
- Aplikujte neurónovú sieť na klasifikáciu získaných článkov.
|
||||||
|
|
||||||
|
Analýza úlohy:
|
||||||
|
|
||||||
|
Chceme vytvoriť databázu novinových článkov.
|
||||||
|
|
||||||
|
Pre článok chceme evidovať:
|
||||||
|
|
||||||
|
- zdroj
|
||||||
|
- autor
|
||||||
|
- titulok
|
||||||
|
- text rozdelený na odseky
|
||||||
|
- odkazy na iné články
|
||||||
|
- autorská sekcia
|
||||||
|
- autorské tagy alebo kľúčové slovíčka.
|
||||||
|
- perex
|
||||||
|
- dátum vydania.
|
||||||
|
- pôvodné html
|
||||||
|
|
||||||
|
Ku databáze chceme vytvoriť agenta ktorý by v pravidelných intervaloch dopĺňal nové články. Agenta pre zber textu stačí modifikovať.
|
||||||
|
|
||||||
|
Ku databáze chceme vytvoriť webové rozhranie.
|
||||||
|
|
||||||
|
V databáze chceme vedieť vyhľadávať.
|
||||||
|
|
||||||
|
Chceme vedieť automaticky zistiť tému článku.
|
||||||
|
|
||||||
|
Chceme automaticky zistiť sumár článku.
|
||||||
|
|
||||||
|
- Vyberte vhodnú databázu.
|
||||||
|
- Postgres, Cassandra.
|
||||||
|
- Navrhnite schému.
|
||||||
|
- Modifikujte agenta pre zber textu.
|
||||||
|
- Implementujte webové rozhranie na prístup k databáze.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 24.1.2022
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Začiatok štúdia Python.
|
||||||
|
- Prečítané články: "COVID a kľúčové slová", o Elasticsearch.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v otvorených úlohách z 30.9.
|
||||||
|
- Zistite, čo je to systém RASA a ako pracuje.
|
||||||
|
- Skúste prejsť tutoriál https://rasa.com/blog/category/tutorials/
|
||||||
|
- Zvážiť zmenu témy na "RASA" dialógový systém.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 30.9.2022
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Prečítajte si záverečné práce J. Holp, M. Stromko.
|
||||||
|
- [ ] Nainštalujte si systém Anaconda. Naučte sa pracovať s virtuálnymi prostrediami.
|
||||||
|
- [x] Prejdite si Python tutoriál.
|
||||||
|
- [ ] Zistite ako pracuje agent pre zber textu - web crawler. Vyhľadajte odborné články alebo knihy na túto tému a urobte si poznámky.
|
||||||
|
- [ ] Oboznámte sa s kódom agenta websucker https://git.kemt.fei.tuke.sk/dano/websucker-pip.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pozrieť sa na https://github.com/microsoft/playwright-python
|
||||||
|
- Zistite, ako funguje knižnica BeautifulSoup, vypracujte tutoriál.
|
||||||
|
- Vypracujte prehľad literatúry na tému "Monitorovanie médií". Otvorte si google scholar, hyhľadajte heslo "news monitoring" , "social media monitoring". Vyberte články ktoré sa Vám zadajú zaujímavé, prečítajte si ch a napíšte na min. jednu stranu poznámky čo ste sa dozvedeli. Uveďte zdroje - názy článkov a autorov.
|
||||||
|
- Zistite si, čo je systém Elasticsearch a ako pracuje. Napíšte o tom správu na jednu stranu.
|
||||||
|
- Pomocou systému Docker si nainštalujte Elasticsearch 8.4
|
||||||
|
- Prejdite si tutoriál https://elasticsearch-dsl.readthedocs.io/en/latest/index.html
|
||||||
|
- Urobte si GIT repozitár, kde budeme dávať kódy.
|
||||||
|
|
@ -2,18 +2,104 @@
|
|||||||
title: Matúš Suchanič
|
title: Matúš Suchanič
|
||||||
published: true
|
published: true
|
||||||
taxonomy:
|
taxonomy:
|
||||||
category: [vp2022]
|
category: [vp2022,bp2023]
|
||||||
tag: [spacy,nlp]
|
tag: [ir]
|
||||||
author: Daniel Hladek
|
author: Daniel Hladek
|
||||||
---
|
---
|
||||||
|
|
||||||
rok začiatku štúdia: 2020
|
rok začiatku štúdia: 2020
|
||||||
|
|
||||||
|
# Bakalárska práca 2023
|
||||||
|
|
||||||
|
Téma: Vyhľadávanie na slovenskej Wikipédii
|
||||||
|
|
||||||
|
Úloha:
|
||||||
|
|
||||||
|
- Implementujte systém na kategorizáciu slovenských novinových článkov. Systém by mal kategorizovať ľubovoľný článok do wiki kategórií.
|
||||||
|
- Vytvorte dátovú množinu pre vyhodnotenie kategorizácie na základe wiki kategórií.
|
||||||
|
|
||||||
|
Názov:
|
||||||
|
|
||||||
|
Automatická kategorizácia slovenského textu
|
||||||
|
|
||||||
|
1. Vypracujte prehľad najnovších metód kategorizácie textu pomocou neurónových sietí aj pomocou štatistických metód.
|
||||||
|
2. Vyberte a pripravte vhodnú dátovú množinu pre otestovanie kategorizácie.
|
||||||
|
3. Vyberte vhodnú metódu kategorizácie, pripravte a vykonajte experimenty na jej vyhodnotnie.
|
||||||
|
4. Vyhodnoťte experimenty a identifikujte slabé miesta zvoleného prístupu.
|
||||||
|
|
||||||
|
Práca súvisí s:
|
||||||
|
|
||||||
|
- [DP Michal Stromko](/students/2019/michal_stromko)
|
||||||
|
- [BP Matej Kobyľan](/students/2020/matej_kobylan)
|
||||||
|
|
||||||
|
Stretnutie 27.1.2023
|
||||||
|
|
||||||
|
Podmienky na zápočet:
|
||||||
|
|
||||||
|
- Pripravte slovenskú databázu na trénovanie úlohy klasifikácie článkov.
|
||||||
|
- Zopakujte experiment pre klasifikáciu článkov v prostredí HF transformers.
|
||||||
|
- Natrénujte vlastný model na HF transformers na klasifikáciu článkov.
|
||||||
|
- Vykonaný experiment opíšte na min. 2 strany. Napíšte aký model sa používa, aký druh neurónovej siete. Ako prebieha dotrénovanie?
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 21.1.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Prečítané články, urobený report na cca 7 strán.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Boli vedúcim poskytnuté dáta, ktoré obsahujú názvy článkov, kategórie, aj texty článkov.
|
||||||
|
- Urobte skript, ktorý spojí dáta tak, aby boli dáta spolu - názov, text a zoznam kategórií.
|
||||||
|
- Natrénujte na týchto dátach neurónovú sieť pre kategorizáciu článkov.
|
||||||
|
- Vedúci Vám poskytne ďalšiu množinu v takom istom formáte s vyhodnocovacími dátami. Na tejto množine to vyhodnotíte. Alebo rozdeľte trénovaciu množinu na dve časti a vyhodnocovaciu množinu dajte stranou.
|
||||||
|
- Na klasifikáciu použite: toolkit transformers, model slovakbert, alebo model slovak gpt, slovak t5
|
||||||
|
- Začnite písať BP. Do práce dajte definíciu úlohy a zoznam metód, ktorou sa táto úloha rieši. Vysvetlite, ako funguje klasifikácia dokumentov pomocou modelu BERT alebo Roberta, a GPT.
|
||||||
|
Opíšte experiment - použitý model, použité dáta, spôsob vyhodnotenia a výsledky. Napíšte čo z toho vyplýva - kde je priestor na zlepšenie.
|
||||||
|
|
||||||
|
Stretnutie 28.10.2022
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Preštudované články o text categorization, BERT, KNN. Napísaný krátky report.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v štúdiu odborných článkov o kategorizácii textu. Použite Scholar. Robte si poznámky, poznačte si bibl. odkazy. Min. 5 nových článkov. Toto pôjde do BP.
|
||||||
|
- Pokračujte v experimente s HF transformers a kategorizáciou.
|
||||||
|
- Pozrite si skripty na repozitári slovakretrieval a skúste ich rozbehnúť.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vytvorte skript, ktorý spracuje dump slovenskej wikipédie a zistí, ktorý článok patrí do ktorých kategórií. Cieľ je spraviť systém ktorý zaradí neznámy článok do wikipédia kategórií.
|
||||||
|
- Spýtajte sa vedúceho na skripty ku spracovaniu dumpu wikipédie.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 30.9.2022:
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Je nainštalovaný Anaconda a HF transformers.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Prečítajte si BP Michal Stromko a DP Ján Holp. Napíšte z toho poznámky na pol strany.
|
||||||
|
- [x] Zistite, čo to je model BERT a ako sa s sním pracuje. Napíšte o tom poznámku.
|
||||||
|
- [-] Vypracujte prehľad novej odbornej literatúry na tému Text Categorization. Zistite aké štatistické a neurónové metódy sa používajú. Ako základ Vám poslúži článok nižšie. Prehľad by mal mať aspoň 2 strany.
|
||||||
|
- [x] Prečítajte si článok "Comparison of Statistical Algorithms and Deep Learning for Slovak Document Classification" https://ieeexplore.ieee.org/abstract/document/9869155 dostupný z TUKE siete. Napíšte na pol strany čo ste sa dozvedeli.
|
||||||
|
|
||||||
|
- [ ] Zopakujte experiment s klasifikáciou slovenských novinových článkov. Použite knižnicu HF transformers, Skripty Vám dodá vedúci. Použite knižnicu HF transformers, Skripty Vám dodá vedúci. Použite "Slovak Categorized News Corpus" na trénovanie.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [ ] Pripravte skript, ktorý bude vedieť klasifikovať neznáme články uložené v databáze.
|
||||||
|
|
||||||
# Vedecký projekt 2022
|
# Vedecký projekt 2022
|
||||||
|
|
||||||
Extrakcia informácií z webových stránok
|
Extrakcia informácií z webových stránok
|
||||||
|
|
||||||
|
|
||||||
Finálny cieľ:
|
Finálny cieľ:
|
||||||
|
|
||||||
- Vytvoriť skript ktorý spracuje HTML kód a identifikuje zaujímavé časti z webstránky, napr. noviny alebo diskusie (modrý koník)
|
- Vytvoriť skript ktorý spracuje HTML kód a identifikuje zaujímavé časti z webstránky, napr. noviny alebo diskusie (modrý koník)
|
||||||
@ -21,9 +107,23 @@ Finálny cieľ:
|
|||||||
|
|
||||||
Výstupy:
|
Výstupy:
|
||||||
|
|
||||||
- Report na cca 4 strany - ako si nainštalovať anacondu, niečo o knižnici HUggingFace Transformers
|
- Report na cca 4 strany - ako si nainštalovať anacondu, niečo o knižnici HuggingFace Transformers
|
||||||
- Skript na parsovanie dvoch stránok
|
- Skript na parsovanie dvoch stránok
|
||||||
|
|
||||||
|
Stretnutie 3.6.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Odovzdaná písomná správa nie je uspokojivá.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
|
||||||
|
- Nainštalujte si Hugging Face Transformers
|
||||||
|
- Prejdite si tento tutoriál, https://huggingface.co/docs/transformers/tasks/sequence_classification. Po slovensky zapíšte vlastnými slovami čo ste urobili a čo ste zistili. Zapíšte každý krok.
|
||||||
|
- Vlastnými slovami zapíšte, čo všetko bude potrebné urobiť, aby sme vedeli klasifikovať slovenské texty.
|
||||||
|
- Vytvorte si GIT repozitár a dajte do neho vytvorené skripty na parsovanie stránok.
|
||||||
|
|
||||||
Stretnutie 18.3.2022
|
Stretnutie 18.3.2022
|
||||||
|
|
||||||
Úlohy:
|
Úlohy:
|
||||||
|
130
pages/students/2020/pavol_hudak/README.md
Normal file
@ -0,0 +1,130 @@
|
|||||||
|
---
|
||||||
|
title: Pavol Hudák
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [dp2025]
|
||||||
|
tag: [ir]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2020
|
||||||
|
|
||||||
|
# Diplomová práca 2025
|
||||||
|
|
||||||
|
Ciel:
|
||||||
|
|
||||||
|
- Dotrénovanie LLM pre zlepšenie jeho schopnosti odpovedať na otázku v slovenskom jazyku.
|
||||||
|
- Dotrénovanie a vyhodnotenie LLM na slovenský instruct dataset.
|
||||||
|
- Strojový preklad vybranej množiny instruct.
|
||||||
|
|
||||||
|
Stretnutie 14.11.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Dotrénovaný slovenský Mistral 7B na malej časti Slovak Alpaca ma Kaggle.
|
||||||
|
- Pokračuje písanie.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračovať v trénovaní tak aby sa využila celá množina. Môžeme využiť školské servre. Vedúci vytvorí prístup.
|
||||||
|
- Pokračujte v púísaní
|
||||||
|
- Zdrojové kódy dajte na GIT. Nedávajte tam dáta ani modely.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Dotrénujte aj iné modely a porovnajte výsledky.
|
||||||
|
- Zverejnite dotrénovaný model alebo viac modelov na HF HUB. využijeme TUKE-KEMT org.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 15.10.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Napísané 4 strany poznámok o Transformers.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Dotrénujte slovenský model na instruct množine. Ako model použite https://huggingface.co/slovak-nlp/mistral-sk-7b a PEFT.
|
||||||
|
- Nainštalujte si Ctranslate2 a model https://huggingface.co/facebook/m2m100_1.2B. Skúste preložiť OpenORCA.
|
||||||
|
Použite server quadro alebo Kaggle.
|
||||||
|
- Pracujte na texte DP - vysvetlite ako funguje model ChatGPT, Mistral a napíšte ako funguje "instruct model", uvedte odkazy na odborné články.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Diplomový projekt 2024
|
||||||
|
|
||||||
|
Ciele na semester:
|
||||||
|
|
||||||
|
- Zobrať veľký jazykový model (základný alebo instruct alebo chat).
|
||||||
|
- Skúsiť ho dotrénovať metódou PEFT pre úlohu Question Answering na korpuse SK QUAD. Vieme sa inšpirovať výsledkami E. Matovka.
|
||||||
|
- Strojovo preložiť vybranú databázu otázok a odpovedí a pomocou nej skúsiť vylepšiť model.
|
||||||
|
- Vyhodnotiť presnosť QA dotrénovaného modelu.
|
||||||
|
|
||||||
|
Ďalšie nápady:
|
||||||
|
|
||||||
|
- Automaticky zlepšiť "prompt" pre QA.
|
||||||
|
|
||||||
|
Vybrať jednu z úloh:
|
||||||
|
|
||||||
|
- Tvorba instruct datasetu - Anotácia alebo preklad množín
|
||||||
|
- Dotrénovanie LLM na dostupnom hardvéri - LORA-PEFT
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 7.6.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na dotrénovaní LLama3 a Phi2 cez kaggle, zatiaľ nefunguje.
|
||||||
|
|
||||||
|
Stretnutie 5.4.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Nainštalované PrivateGPT.
|
||||||
|
- Nainštalovaná Anaconda a Python, aj štúdium a príprava.
|
||||||
|
- Oboznámenie sa s LangChain a SlovakAlpaca aj PEFT.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Skúste dotrénovať veľký jazykový model metódou PEFT s množinou SlovakAlpaca. Vyberte vhodný model.
|
||||||
|
- Vyskúšajte modely cez ollama.
|
||||||
|
- Prihláste sa na quadro.kemt.fei.tuke.sk tam nainštalujte anaconda. Vedúci Vám musí urobiť prístup.
|
||||||
|
- Kandidáti sú UMT5, TinyLLama, LLama3, Mistral, mt0, Phi alebo iné.
|
||||||
|
- Vyhodnote presnosť dotrénovania (BLEU - založené na porovnávaní ngramov výsledku a očakávania).
|
||||||
|
- Robte si poznámky o tom ako funguje veľký jazykový model a metóda PEFT.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Strojovo preložiť databázu OpenORCA.
|
||||||
|
|
||||||
|
Stretnutie 23.2.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Rozbehané prostredie s Pytorch aj CUDA Anaconda na vlastnom PC.
|
||||||
|
- Vyskúšaný HF google/t5 ... na úlohu strojového prekladu
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v štúdiu podľa otvorených úloh.
|
||||||
|
- Nainštalujte a vyskúšajte softvér PrivateGPT.
|
||||||
|
- Prihláste sa na systém IDOC a nainštalujte si tam systém Anaconda.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Nainštalujte a vyskúšajte balíček LangChain.
|
||||||
|
- Zistite čo je to metóda PEFT - LORA.
|
||||||
|
- Skúste dotrénovať veľký jazykový model s množinou SlovakAlpaca.
|
||||||
|
- Skúste vylepšiť LLM pomocou inej množiny, strojovo preloženej.
|
||||||
|
|
||||||
|
Stretnutie 14.2.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ] Oboznámiť sa s veľkými jazykovými modelmi LLM. Ako funguje ChatGPT? Čo je to LLAMA? Napíšte si poznámky.
|
||||||
|
- [x] Nainštalujte si Anaconda.
|
||||||
|
- [-] Pokračujte v štúdiu Python. Preštudujte si knihu Dive deep into deep learning.
|
||||||
|
- [x] Nainštalujte si knižnicu Huggingface Transformers.
|
||||||
|
- [ ] Vyskúšajte LLM model LLAMA https://huggingface.co/meta-llama/Llama-2-70b
|
||||||
|
- [ ] Prejdite si tento tutoriál https://huggingface.co/blog/llama2
|
181
pages/students/2020/vladyslav_krupko/README.md
Normal file
@ -0,0 +1,181 @@
|
|||||||
|
---
|
||||||
|
title: Vladyslav Krupko
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2024]
|
||||||
|
tag: [spelling]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2020
|
||||||
|
|
||||||
|
# Bakalárska práca 2024
|
||||||
|
|
||||||
|
|
||||||
|
1. Napíšte prehľad existujúcich jazykových modelov pre generovanie slovenského jazyka.
|
||||||
|
2. Získajte a pripravte korpus dát pre úlohu generovania odpovedí v slovenskom jazyku. Vyberte vhodný zdroj a pripravte ho do podoby vhodnej na trénovanie neurónových sietí. Sumarizujte získané dáta v tabuľke.
|
||||||
|
3. Natrénujte neurónovú sieť pre úlohu generovania odpovede a vyhodnoťte výsledky.
|
||||||
|
4. Vyhodnoťte experimenty, identifikujte slabé miesta a navrhnite vylepšenia.
|
||||||
|
|
||||||
|
|
||||||
|
Na Maise je vypísaná nová téma ohľadom "konverzačnej umelej inteligencie". Je potrebné čím skôr finalizovať tému aj praconvé úlohy.
|
||||||
|
|
||||||
|
Ciele:
|
||||||
|
|
||||||
|
- Dotrénovať ChatGPT alebo iný generatívny model pre vlastnú databázu otázok a odpovedí.
|
||||||
|
|
||||||
|
Stretnutie 15.5.2025
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Rozpísaná práca
|
||||||
|
- Experimenty sú pripravené (podrobne neviem).
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Dajte prácu do šablóny a vypracujte ASAP.
|
||||||
|
- Do práce môžete dokresliť diagramy. Dôsledne citujte - uvádzajte referencie aj pre obrázky.
|
||||||
|
- Stiahnite si zadávací list a šablónu z ETD knižnice.
|
||||||
|
- Zaregistrujte sa do knižnice na vytlačenie práce. Na to budete potrebovať titulný list a počet strán.
|
||||||
|
- Pošlite vedúcemu na kontrolu čím skôr (do budúceho utorka).
|
||||||
|
- Na vyhodnotenie generatívneho modelu použite metriku BLEU. Na to potrebujete očakávaný výstup modelu.
|
||||||
|
|
||||||
|
Stretnutie 26.4. 2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na dátach GymBeam. Scraper ide. Máme otázky o procese objednania.
|
||||||
|
- Vyskúšané mt5, llama 2 7B, mixtral,
|
||||||
|
|
||||||
|
Úloha:
|
||||||
|
|
||||||
|
- Pripravte dáta na úlohu odpovede na otázku. V jednej jednotke by mala byť otázka, odpoveď a dokument kde sa nachádza odpoveď. Urobte niekoľko 100 jednotiek. Dáta rozdeľte na dve skupiny - trénovaciu aj testovaciu. Dáta dajte do podoby kompatibilnej s databázou sk-quad.
|
||||||
|
- Ku Vašim dátam môžete primešať dáta zo SK QUAD.
|
||||||
|
- Naučte rôzne neurónové siete mt5base, Slovakbert, llama odpovedať na otázku a vyhodnnotte výsledky. Na quadro nainštaluje Anaconda.
|
||||||
|
- Nainštalujte Pytorch, Transformers z repozitára. Použite screen alebo tmux na spustenie.Kartu vyberiete pomocou premennej prostredia CUDA_VISIBLE_DEVICES.
|
||||||
|
- Použite skripty z https://github.com/huggingface/transformers/tree/main/examples/pytorch/question-answering .
|
||||||
|
- Pokračujte v písaní práce.
|
||||||
|
|
||||||
|
Zásobník:
|
||||||
|
|
||||||
|
- Na dotrénovanie LLAMA alebo podobného modelu musíte použiť PEFT. https://www.theaidream.com/post/fine-tuning-large-language-models-llms-using-peft
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 29.1.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Prezentácia je.
|
||||||
|
- Získané dáta z GymBeam. Selenium Scraper je veľmi pomalý, nevieme prečo.
|
||||||
|
- Vyskúšané ChatGPT API s dátami čo máme. Odpoveď je zatiaľ po anglicky.
|
||||||
|
- Na prevod z csv do json je použitá LLAMA.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Na vyhdonotenie je potrebné rozdeliť dáta na dve časti, trénovaciu a testovaciu. Testovacie dáta vynechajte z trénovania. Sledujte čo generuje model a porovnajte to s tým čo je očakávané v dátach. Ako metriku porovnania použite ROUGE alebo BLEU.
|
||||||
|
- Výsledky dajte do tabuľky do práce.
|
||||||
|
- Pokračujte v písaní práce.
|
||||||
|
- Pokračujte v získavaní a príprave dát.
|
||||||
|
|
||||||
|
Zásobník:
|
||||||
|
|
||||||
|
- Na rovnakých dátach natrénujte "lokálny model" pomocou skriptov Huggingface (machine translation) - mt5-base, llama-7B-4bit . Musíte nainštalovať transformers zo zdrojákov. Musíte si vytvoriť nové virtuálne prostredie a najprv nainštalovať pytorch.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 15.12.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Napísané texty podľa pokynov. Experimenty ešte neboli vykonané.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Z webu získajte vhodnú sadu otázok a odpovedí. Uložte ju vo formáte json - jeden dokument na jede riadok. Využite Váš scraper. Ako zdroj skúste použiť Otázky zákazníkov z GymBeam. Uložte - v jednom dokumente by mal byť informácie o produktem otázky aj odpovede. Ak sa to nepodarí, zamerajte sa na iný zdroj dát. Napríklad https://www.modrastrecha.sk/forum/ , alebo https://www.modrykonik.sk/forum.
|
||||||
|
- Pripravte dáta do vhodnej podoby a natrénujte generatívny model - ChatGPT, T5-SMALL,
|
||||||
|
- Vyhoddnotte všetky modely, výsledky sumarizujte v tabuľkách. Experimenty opíšte do práce.
|
||||||
|
- Urobte si repozitár bp2024 na git.kemt.fei.tuke.sk. Skripty dávajte na git.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 21.11.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Napísaný text na tému Seq2Seq.
|
||||||
|
- Napísaný scraper pre získavanie dát z E shopu.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Skúste dotrénovať model ChatGPT. Využijeme kredity [Azure pre študentov](https://azureforeducation.microsoft.com/devtools) . Prihlásite sa ako študent do MAISU. Prejdite si [tutoriál](https://learn.microsoft.com/en-us/azure/ai-services/openai/how-to/fine-tuning?tabs=turbo&pivots=programming-language-studio). Dávajte pozor, aby ste si nevyčerpali študentské kredity.
|
||||||
|
- Zistite, ako funguje ChatGPT a ako ho dotrénovať. Prečítajte si niekoľko blogov a napíšte si poznámky. Použite aj odkazy na odborné články.
|
||||||
|
- Zistite, ako vyhodnotiť dotrénovaný model. Ako funguje https://github.com/openai/evals ? Napíšte o tom poznánky.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Na generovanie odpovedí použijeme jednoduchý model T5-small v HF transformers.
|
||||||
|
- Vytvorte trénovaciu databázu ktorá Vás zaujíma vo formáte ktorý je požadovaný. Druhá možnosť je využiť "Košické dáta".
|
||||||
|
- Preštudujte si knihu https://d2l.ai/ a napíšte si z nej poznámky.
|
||||||
|
- Zistite ako funguje model T5 a model BART a napíšte o tom správu na 3 strany. Odborné články vyhľadajte na Google Scholar. Do správy zapíšte ktoré odborné články ste prečítali.
|
||||||
|
- Nainštalujte si prostredie Anaconda.
|
||||||
|
- Nainštalujte si knižnicu HF transformers, prejdite si základný tutoriál.
|
||||||
|
- Prejdite si tutoriál https://huggingface.co/docs/transformers/tasks/summarization
|
||||||
|
|
||||||
|
|
||||||
|
# Bakalárska práca 2023
|
||||||
|
|
||||||
|
Téma: Oprava preklepov v slovenskom jazyku.
|
||||||
|
|
||||||
|
Súvisiaca dizertačná práca [Maroš Harahus](/students/2016/maros_harahus).
|
||||||
|
|
||||||
|
Cieľ:
|
||||||
|
|
||||||
|
- Naštudovať si problematiku opravy preklepov a napísať prehľad aktuálnych metód.
|
||||||
|
- Vykonať jednoduchý experiment na automatickú opravu preklepov pomocou neurónovej siete.
|
||||||
|
- Naprogramovať webovú demo aplikáciu.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 28.9.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Nainštalovaná Anaconda, problém s CUDA.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v otvorených úlohách z minulého roka.
|
||||||
|
- Na inštalovanie Pytorch je potrebné nainštalovať najprv CUDa cez Anaconda.
|
||||||
|
|
||||||
|
conda install pytorch==1.10.0 torchvision==0.11.0 torchaudio==0.10.0 cudatoolkit=10.2 -c pytorch
|
||||||
|
|
||||||
|
Nápad:
|
||||||
|
|
||||||
|
- Natrénovať chatbota pre pomoc zákazníkom. Aké trénovacie dáta a aký model použiť?
|
||||||
|
|
||||||
|
Stretnutie 29.9.2022
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ] Prečítajte si článok "Survey of Automatic Spelling Correction" a napíšte z neho poznámky na cca 2 strany.
|
||||||
|
- [ ] Prečítajte si článok Comparison of recurrent neural networks for slovak punctuation restoration.
|
||||||
|
- [ ] Zistite, ako funguje neurónový strojový preklad. Prečítajte si niekoľko blogov a napíšte si poznámky na jednu stranu, uveďte aj odkazy na články. Kľúčové slovíčko je enkóder-dekóder architektúra.
|
||||||
|
- [x] Nainštalujte si systém Anaconda.
|
||||||
|
- [-] Nainštalujte si knižnicu Pytorch
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [ ] Nainštalujte si systém Fairseq
|
||||||
|
- [ ] Prejdite si aspoň jeden fairseq tutoriál, napr. https://fairseq.readthedocs.io/en/latest/tutorial_simple_lstm.html
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vybrať dáta a urobiť experiment.
|
||||||
|
- naprogramovať demo.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
191
pages/students/2021/eduard_matovka/README.md
Normal file
@ -0,0 +1,191 @@
|
|||||||
|
---
|
||||||
|
title: Eduard Matovka
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2024]
|
||||||
|
tag: [dialog,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2021
|
||||||
|
|
||||||
|
# Bakalárska práca 2024
|
||||||
|
|
||||||
|
Spolupráca [Vladimír Ferko](/students/2021/vladimir_ferko)
|
||||||
|
|
||||||
|
Nadväzuje [Martin Jancura](/students/2017/martin_jancura)
|
||||||
|
|
||||||
|
Názov: Slovenská konverzačná umelá inteligencia
|
||||||
|
|
||||||
|
Predbežný cieľ:
|
||||||
|
|
||||||
|
Natrénovať jazykový model pre jednoduchú slovenskú konverzáciu.
|
||||||
|
|
||||||
|
Zadanie BP:
|
||||||
|
|
||||||
|
1. Vypracujte prehľad modelov a dátových množín pre generovanie slovenského jazyka.
|
||||||
|
2. Opíšte metódy dotrénovania generatívnych jazykových modelov.
|
||||||
|
3. Vyberte vhodnú dátovú množinu a dotrénujte model pre plnenie jednoduchých úloh podľa zadaných inštrukcií.
|
||||||
|
4. Vyhodnoťte natrénovaný model, identifikujte jeho slabé miesta a navrhnite zlepšenia.
|
||||||
|
|
||||||
|
Predbežné úlohy:
|
||||||
|
|
||||||
|
- Oboznámte sa s existujúcimi modelmi pre generovanie slovenského jazyka.
|
||||||
|
- Pripravte korpus diskusií v slovenskom jazyku. Vyberte vhodný zdroj diskusí a pripravte ho do podoby vhodnej na trénovanie neurónových sietí. Napr. modrý koník, modrá strecha, íné diskusie.
|
||||||
|
- Natrénujte neurónovú sieť pre odpovedanie v diskusiách.
|
||||||
|
- Vytvorte webové demo.
|
||||||
|
- Napísať vedecký článok z BP
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 12.4.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vyskúšaná LLAMA2 cez HF AutoTrain (SlovakAlpaca+). Je náročná na RAM. Zatiaľ to vyzerá horšie ako LLAMA1.
|
||||||
|
- Práca na texte.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vyskúšajte model Gemma. Vyskúšajte model RWKV (tento nie je Trannsformer, je to RNN) s množinou SlovakAlpaca. Výsledky experimentov (BLEU alebo ROUGE) dajte do tabuľky.
|
||||||
|
- Pokračujte v písaní práce. Opíšte experimenty. Opíšte aj dataset ktorý používate. V teroetickej časti opíšte metódy neurónových sietí aj úlohu ktorú riešime. Ako súvisí s konverzáciou.
|
||||||
|
- Pokračujte v otvorených úlohách: Zdrojáky dajte na git, dáta na školský server.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Ako zlepšíme veľké jazykové modely pre slovenčinu?
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 8.3.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na evaluatore - Preštudované [LLAMA evaluator od NVIDIA](https://docs.nvidia.com/nemo-framework/user-guide/latest/llama/evaluation.html).
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vyskúšajte knižnicu https://github.com/EleutherAI/lm-evaluation-harness. Zistite, ako sa dá použiť s našimi vlastnými dátami.
|
||||||
|
- Dajte skript na reddit na git.
|
||||||
|
- Odovzdajte reddit dáta - dajte ich školský server (titan) a povedzte kde.
|
||||||
|
- Pokračujte v otvorených úlohách.
|
||||||
|
|
||||||
|
Stretnutie:
|
||||||
|
|
||||||
|
Stav
|
||||||
|
|
||||||
|
- Prezentácia
|
||||||
|
- Skript na trénovanie funguje na vlastnom 3060Ti 8GB, funguje aj LLAMA 7B 4bit
|
||||||
|
- Natrénované na Instruct (SlovakAlpaca) datasete.
|
||||||
|
- Tento dataset je doplnený o dáta z redditu - r/Slovak.
|
||||||
|
- jedno trénovanie na malom datasete trvalo 28 hod. Trénovanie sa podarilo - zbežná kontrola je ok.
|
||||||
|
- Prečistenie textov pre výskyt vulgarizmov.
|
||||||
|
- Začal "študovať" evaluate.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vyhodnotiť natrénovaný model. Dáta, ktoré máte k dispozícii rozdeľte na trénovaciu a testovaciu časť. Môžeme rozdeliť Instruct dáta osobitne, diskusné dáta osobitne. Vzniknú nám dve testovacie množiny. Vyhoddnotte model pred trénovaním aj po trénovaní. Možné metriky sú: ROUGE a BLEU. Zistite si čo to je. Výsledky zapíšte do tabuľky. Pre urýchlenie trénovania môžete využiť TITAN.
|
||||||
|
- Pokračovať v písaní práce.
|
||||||
|
- Skripty dať na GIT. Na trénovanie aj na prípravu dát. Na git nedávajte veľké dáta.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobnk úloh:
|
||||||
|
|
||||||
|
- Nájsť ďalšie tréningové údaje pre model
|
||||||
|
- Vytvoriť rozšírené webové rozhranie, ktoré sa bude pohodlnejšie používať
|
||||||
|
- Optimalizovať algoritmy, aby sa zvýšila účinnosť
|
||||||
|
- Skúste na Titane natrénovať nejaký "lepší" model LLAMA ako 7B-4bit.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 7.12.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vytvorený skript pre trénovanie konverzácie LLAMA na datasete SlovakAlpaca na Google Colab. Využíva knižnicu HF, Na spustenie skripty nestačia zdroje na Google Colab. Skript využíva PEFT.
|
||||||
|
- Vytvorený prístup na server Titan
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vytvorte si GIT repozitár na školskom GITe a dajte do neho Vaše skripty. Dáta tam nedávajte.
|
||||||
|
- Skúste natrénovať LLama na servri Titan s SlovakAlpaca Datasetom.
|
||||||
|
- Vyskúšajte natrénovať s datasetom sk-quad.
|
||||||
|
- Zistite ako sa vyhodnocujú "instruct" generatívne modely. Preštudujte si [repozitár](https://github.com/tatsu-lab/alpaca_eval) a napíšte si poznámky.
|
||||||
|
- Prečítajte si článok: AlpacaEval: An Automatic Evaluator of Instruction-following Models a urobte si poznámnky.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Natrénujte model SlovakT5 s Slovak Alpaca Datasetom.
|
||||||
|
- Pozrite si skripty [text-generation](https://github.com/huggingface/transformers/tree/main/examples/pytorch/text-generation} a [seq2seq](https://github.com/huggingface/transformers/blob/main/examples/pytorch/question-answering/run_seq2seq_qa.py)
|
||||||
|
- Natrénovaný model je potrebné vyhodnotiť. Dátovú množinu si rozdelte na 2 časti. Metrika na vyhodnotenie je BLEU alebo Rouge.
|
||||||
|
- Pokračujte na práci na vlastnom diskusnom datasete.
|
||||||
|
|
||||||
|
Stretnutie 23.11.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Písomná práca pokračuje.
|
||||||
|
- Urobený skript na získanie dát. Skript využíva Praw na získanie dát z Reddit. Skript zatiaľ nepokrýva celú konverzáciu.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Dokončiť skript pre získavanie dát. Alebo nájsť dáta a skript ktorý funguje.
|
||||||
|
- Skúste začať trénovanie generatívneho modelu pomocou dostupných dát. Pozrite si trénovací skript https://git.kemt.fei.tuke.sk/do867bc/DIPLOMOVA_PRACA a skúste ho rozbehať so svojimi dátami.
|
||||||
|
- Pokračujte v písaní BP.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pozrite sa na projekt https://github.com/imartinez/privateGPT. Zisite ako to funguje. Vedeli by sme ho spustiť?
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 26.10.2023
|
||||||
|
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Podarilo sa spustiť pipeline pre generovanie pomocou Slovak T5 small.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ] Pokračovať v otvorených úlohách z minulého stretnutia.
|
||||||
|
- [x] Prečítajte si DP O. Megela.
|
||||||
|
- [x] V texte vysvetlite, čo je to model GPT, T5 a BART. Ku každému modelu nájdite *odborné články* a blogy, prečítajte si ich a napíšte si poznámky. Zapíšte si bibliografické údaje o článku. Odborný článok nájdete cez Google Scholar.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 12.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Pripravený skript na preklad pomoocu HF transformers a Helsinki NLP modelov aj s TKInter rozhraním.
|
||||||
|
- Písomná príprava podľa pokynov.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Dobrý model na generovanie Slov. jazyka je Slovak T5 Small.
|
||||||
|
- [ ] Pokračujte v teoretickej príprave podľa otvorených úloh - prehľad generatívnych jazykových modelov.
|
||||||
|
- [ ] Vytvorte dataset slovenských konverzácií. Vyberte zdroj dát, pomocou scrapera extrahujte dáta a upravte ich do vhodného formátu JSON. Stiahnite časť alebo celú webovú stránku do viacerých htmls súborov. Neposielajte veľa requestov za minútu. Dobrý nástorj na stianutie je wget. Napíšte skript, ktorý pomocu knižnice BeautifulSoup4 extrahuje diskusie a uloží ich do JSON.
|
||||||
|
- [ ] Druhá možnosť je použiť dáta z Reditu alebo Faceboku, podľa skriptov V. Ferko.
|
||||||
|
- [-] Generatívny model už natrénoval p. Omasta a p. Megela. Oboznámte sa s ich profilmi.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 1.8.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Oboznámenie sa s jazykom Python
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v štúdiu jazyka Python. Pozrite si nástroje [zo stránky Python](/topics/python). Pozrite si zdroje [zo stránky NLP ](/topics/nlp).
|
||||||
|
- Nainštalujte si prostredie Anaconda a knižnicu Huggingface transformers.
|
||||||
|
- Prečítajte si knihu https://d2l.ai/
|
||||||
|
- Zistite ako funguje neurónová sieť typu Transformer. https://jalammar.github.io/illustrated-transformer/
|
||||||
|
- Zistite, čo je to generatívny jazykový model. Napíšte na 3 strany čo ste sa dozvedeli o generatívnych jazykových modeloch. Použite aj článok https://arxiv.org/abs/1910.13461
|
||||||
|
- Napíšte jednoduchý skript na strojový preklad pomocou knižnice HF transformers.
|
||||||
|
- Oboznámte sa s https://github.com/karpathy/minGPT
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zoberte korpus slovenských alebo iných diskusí a natrénujte neurónový model aby podľa neho odpovedal na zadané odázky.
|
||||||
|
- Zistite, ako sa vyhodnucujú generatívne modely pre úlohu konverzácie.
|
||||||
|
- Oboznámte sa s frameworkom https://python.langchain.com/docs/get_started/introduction.html
|
||||||
|
|
||||||
|
|
@ -10,6 +10,8 @@ taxonomy:
|
|||||||
|
|
||||||
Beginning of the study: 2021
|
Beginning of the study: 2021
|
||||||
|
|
||||||
|
repository: https://git.kemt.fei.tuke.sk/mg240ia
|
||||||
|
|
||||||
## Disertation Thesis
|
## Disertation Thesis
|
||||||
|
|
||||||
in 2023/24
|
in 2023/24
|
||||||
@ -18,28 +20,81 @@ Hate Speech Detection
|
|||||||
|
|
||||||
Goals:
|
Goals:
|
||||||
|
|
||||||
|
- Publish and defend a minimal thesis
|
||||||
- Write a dissertaion thesis
|
- Write a dissertaion thesis
|
||||||
- Publish 2 A-class journal papers
|
- Publish 2 A-class journal papers
|
||||||
|
|
||||||
## Minimal Thesis
|
## Second year of PhD study
|
||||||
|
|
||||||
(preliminary dissertaion and exam in 2022/23)
|
|
||||||
|
|
||||||
Goals:
|
Goals:
|
||||||
|
|
||||||
- Provide state-of-the-art overview.
|
- Publish and defend a minimal thesis. Minimal thesis should contain PhD thesis statements - scientific contributions.
|
||||||
- Formulate dissertation theses (describe scientific contribution of the thesis).
|
- Provide state-of-the-art overview.
|
||||||
- Prepare to reach the scientific contribution.
|
- Formulate dissertation theses (describe scientific contribution of the thesis).
|
||||||
- Publish 4 conference papers.
|
- Prepare to reach the scientific contribution.
|
||||||
|
- Publish Q2/Q3 paper
|
||||||
|
- Publish 1 school conference paper.
|
||||||
|
- Publish 1 regular conference paper.
|
||||||
|
- Prepare a demo for hate speech detection.
|
||||||
|
|
||||||
|
Meeting 5.10.
|
||||||
|
|
||||||
|
Status:
|
||||||
|
|
||||||
|
Studied python and ML:
|
||||||
|
- Basics to Advanced python is completed
|
||||||
|
- word2vec and word embedding examples are tried
|
||||||
|
- Basic tools (tensorflow) on Machine Learning and task are completed
|
||||||
|
- learning on ML and Deep learning libraries and fairseq RNN, SVM BERT code samples
|
||||||
|
|
||||||
|
Building the datasets memes based on Dravidian languages:
|
||||||
|
- Collected base papers on Hate speech Multilanguage troll and not troll memes with low resource languages
|
||||||
|
|
||||||
|
Currected the survey paper and shared for review.
|
||||||
|
|
||||||
|
Worked on the baseline HS expriment.
|
||||||
|
- https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- Publish a paper on SAMI 2023
|
||||||
|
- publish a paper on a school conference, ask for deadline.
|
||||||
|
|
||||||
|
Possible paper topics:
|
||||||
|
|
||||||
|
- contine to work on the baseline HS experiment. Evaluate accuracy for the classifiers. This is a possible simple publication.
|
||||||
|
- continue to work on the horsehead experiment. This is another possible paper.
|
||||||
|
- continue work on the dravidian dataset. this in another possible papers.
|
||||||
|
- continue to work on the survey paper. This is another possible Q3 paper.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Meeting 6.9.2022
|
||||||
|
|
||||||
|
Status:
|
||||||
|
|
||||||
|
- Managed to move to Kosice.
|
||||||
|
- "A systematic review of Hate Sppech" is in progress (cca 50 pages + 100 references).
|
||||||
|
- "Horseheard" paper is in progress.
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- Gather feedback for "Systematic review",make new revisions according to the feedback, select a journal and publish.
|
||||||
|
- Pick dataset, prepare several methods of HS and compare results.
|
||||||
|
- Work on web demo of HS detection.
|
||||||
|
- Continue working on "horseheard paper".
|
||||||
|
- Read provided books.
|
||||||
|
|
||||||
|
|
||||||
## First year of PhD study
|
## First year of PhD study
|
||||||
|
|
||||||
Goals:
|
Goals:
|
||||||
|
|
||||||
- Provide state-of-the-art overview.
|
- [x] Provide state-of-the-art overview.
|
||||||
- Read and make notes from at least 100 scientific papers or books.
|
- [x] Read and make notes from at least 100 scientific papers or books.
|
||||||
- Publish at least 2 conference papers.
|
- [ ] Publish at least 2 conference papers.
|
||||||
- Prepare for minimal thesis.
|
- [x] Prepare for minimal thesis.
|
||||||
|
|
||||||
Resources:
|
Resources:
|
||||||
|
|
||||||
@ -47,7 +102,139 @@ Resources:
|
|||||||
- https://hatespeechdata.com/
|
- https://hatespeechdata.com/
|
||||||
- [Hate speech detection: Challenges and solutions](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6701757/)
|
- [Hate speech detection: Challenges and solutions](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6701757/)
|
||||||
- [HateBase](https://hatebase.org/)
|
- [HateBase](https://hatebase.org/)
|
||||||
- [Resources and benchmark corpora for hate speech detection: a systematic review](https://link.springer.com/article/10.1007/s10579-020-09502-8)
|
- [Resources and benchmark corpora for hate speech detection: a systematic review]
|
||||||
|
(https://link.springer.com/article/10.1007/s10579-020-09502-8)
|
||||||
|
|
||||||
|
Meeting 5.10.
|
||||||
|
|
||||||
|
Status:
|
||||||
|
|
||||||
|
Studied python and ML:
|
||||||
|
- Basics to Advanced python is completed
|
||||||
|
- word2vec and word embedding examples are tried
|
||||||
|
- Basic tools (tensorflow) on Machine Learning and task are completed
|
||||||
|
- learning on ML and Deep learning libraries and fairseq RNN, SVM BERT code samples
|
||||||
|
|
||||||
|
Building the datasets memes based on Dravidian languages:
|
||||||
|
- Collected base papers on Hate speech Multilanguage troll and not troll memes with low resource languages
|
||||||
|
|
||||||
|
Currected the survey paper and shared for review.
|
||||||
|
|
||||||
|
Worked on a baseline HS experiment:
|
||||||
|
|
||||||
|
https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit
|
||||||
|
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- Publish a paper about the dataset on the SAMI 2023 Conference.
|
||||||
|
- Publish a paper in school journal - ask about deadlilne.
|
||||||
|
|
||||||
|
|
||||||
|
14.7:
|
||||||
|
|
||||||
|
Status:
|
||||||
|
|
||||||
|
- Worked on an horseheard implementation.
|
||||||
|
- Picked a feasible dataset and method to start with: kannada dataset, tagging sentiment for movie reviews.
|
||||||
|
- Worked on a paper.
|
||||||
|
- Studied several papers,
|
||||||
|
- started to work on a streamlit demo
|
||||||
|
|
||||||
|
Open tasks:
|
||||||
|
|
||||||
|
- Focus on making a baseline experiment for sentiment classification using classical methods, such as Transformers. PLEASE DO NOT AVOID !!!!
|
||||||
|
- Prepare a survey paper for school journal or a conference. Use and correct the draft form the beginning. PLEASE DO NOT AVOID !!!! The goal is to identify the most current trends in methods for HS detection. Write in your own words what did you learn from the literature. Write what will be you contribution. Contribution is something new that we have to prove that is new and better.
|
||||||
|
- Try to prepare an experiment with the selected dataset. https://git.kemt.fei.tuke.sk/mg240ia/Hate_Speech_IMAYFLY_and_HORSEHERD
|
||||||
|
- For preparing a web application with demo, learn about streamlit. In progress: https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit
|
||||||
|
|
||||||
|
Read Papers :
|
||||||
|
|
||||||
|
- https://aclanthology.org/2020.peoples-1.6.pdf
|
||||||
|
- https://aclanthology.org/2022.ltedi-1.14/
|
||||||
|
- https://arxiv.org/abs/2108.03867
|
||||||
|
- https://arxiv.org/pdf/2112.15417v4.pdf
|
||||||
|
- https://arxiv.org/ftp/arxiv/papers/2202/2202.04725.pdf
|
||||||
|
- https://github.com/manikandan-ravikiran/DOSA/blob/main/EACL_Final_Paper.pdf
|
||||||
|
- https://aclanthology.org/2020.icon-main.13.pdf
|
||||||
|
- http://ceur-ws.org/Vol-3159/T6-4.pdf
|
||||||
|
- https://www.researchgate.net/publication/353819476_Hope_Speech_detection_in_under-resourced_Kannada_language
|
||||||
|
- https://www.researchgate.net/publication/346964457_Creation_of_Corpus_and_analysis_in_Code-Mixed_Kannada-English_Twitter_data_for_Emotion_Prediction
|
||||||
|
- https://www.semanticscholar.org/paper/Detecting-stance-in-kannada-social-media-code-mixed-SrinidhiSkanda-Kumar/f651d67211809f2036ac81c27e55d02bd061ed64
|
||||||
|
- https://www.academia.edu/81920734/Findings_of_the_Sentiment_Analysis_of_Dravidian_Languages_in_Code_Mixed_Text
|
||||||
|
- https://competitions.codalab.org/competitions/30642#learn_the_details
|
||||||
|
- https://paperswithcode.com/paper/creation-of-corpus-and-analysis-in-code-mixed
|
||||||
|
- https://paperswithcode.com/paper/hope-speech-detection-in-under-resourced#code
|
||||||
|
|
||||||
|
## Meeting 13.6.
|
||||||
|
|
||||||
|
- Implemented a Mayfly and Horse Heard Algorithms in Python and Matlab for HS datasets.
|
||||||
|
- Written a draft of a paper.
|
||||||
|
- Performed experiments on HS with Word2Vec, FastText, OneHot.
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- Implement open tasks from the previous meetings !!!!!!!!
|
||||||
|
- Share Scripts with GIT and Drafts with Online Word or Docs !!!
|
||||||
|
- try https://huggingface.co/cardiffnlp/twitter-roberta-base-hate, try to repeat the training and evaluation
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Meeting 24.5.
|
||||||
|
|
||||||
|
- shared colab notebook, with on-going implementation of mayfly algorithm for preprocessing in sentiment recognition in a twitter dataset.
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- Implement open tasks from the previous meetings !!!
|
||||||
|
- [ ] Focus on making a baseline experiment for sentiment classification using classcal methods, such as Transformers.
|
||||||
|
- [x] Consider using pre-trained embeddings. FastText, word2vec, sentence-transformers, Labse, Laser,
|
||||||
|
|
||||||
|
Supplemental tasks:
|
||||||
|
|
||||||
|
- [x] Fininsh the mayfly implementation
|
||||||
|
|
||||||
|
|
||||||
|
## Meeting 20.5.
|
||||||
|
|
||||||
|
- learned about Firefly / mayfly optimization algorithm.
|
||||||
|
- read ten papers,
|
||||||
|
- wrote 1 page abstract about possible system, based od DBN.
|
||||||
|
|
||||||
|
|
||||||
|
## Meeting 25.4.
|
||||||
|
|
||||||
|
- Learned aboud deep learning lifecycle / evaluation, BERT, RoBERTa, GPT
|
||||||
|
- Tried HF transformers, Spacy, NLTK, word embeddings, sentence transformers.
|
||||||
|
- Set up a repo with notes: https://git.kemt.fei.tuke.sk/mg240ia
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- [ ] Publish experiments into the repository.
|
||||||
|
- [ ] Prepare a paper for publication in faculty proceedings http://eei.fei.tuke.sk/#!/
|
||||||
|
- [ ] Send me draft in advance.
|
||||||
|
|
||||||
|
Suplemental tasks:
|
||||||
|
|
||||||
|
- [x] For presentation of the results, learn about https://wandb.ai/. This can dispplay results (learning curve, etc.)
|
||||||
|
- [ ] For preparing a web aplication with demo, learn about streamlit.
|
||||||
|
|
||||||
|
## Meeting 12.4.
|
||||||
|
|
||||||
|
- Created repositories, empty so far.
|
||||||
|
- Tried to replicate the results from "Emotion and sentiment analysis of tweets using BERT" paper and "Fine-Tuning BERT Based Approach for Multi-Class Sentiment Analysis on Twitter Emotion Data".
|
||||||
|
- The experiments are based on BERT (which kind?), Tweet Emotion Intensity.
|
||||||
|
- Prepared colab notebook with experiments.
|
||||||
|
|
||||||
|
Tasks:
|
||||||
|
|
||||||
|
- [ ] Finish experiments, upload source codes into git, provide a description of the experiments.
|
||||||
|
- [ ] Try to improve the results - try different kind of BERT - roberta, electra, xl-net. Can "generative models" be used? (gpt, bart, t5). Can "sentence transformers be used" - labse, laser.
|
||||||
|
- [x] Learn about "Sentence Transformers".
|
||||||
|
- [ ] Summarize the results in the table, publish the table on git.
|
||||||
|
- [-] Use Markdown for formatting. There is "Typora".
|
||||||
|
- [-] Continue to improve the SCYR paper.
|
||||||
|
- If you have some conference in mind, tell me.
|
||||||
|
|
||||||
## Meeting 25.3.22
|
## Meeting 25.3.22
|
||||||
|
|
||||||
@ -60,11 +247,10 @@ Resources:
|
|||||||
|
|
||||||
Tasks:
|
Tasks:
|
||||||
|
|
||||||
- finish experiments about sentiment and present results.
|
- [-] finish experiments about sentiment and present results.
|
||||||
- create a repository on git.kemt.fei.tuke.sk and upload your experiments, results and notes. Use you student creadentials.
|
- [-] create a repository on git.kemt.fei.tuke.sk and upload your experiments, results and notes. Use you student creadentials.
|
||||||
- continue working on "SCYR" review paper, consider publishing it elswhere (the firs version got rejected).
|
- [-] continue working on "SCYR" review paper, consider publishing it elswhere (the firs version got rejected).
|
||||||
- prepare an outline for another paper with sentiment classification.
|
- [-] prepare an outline for another paper with sentiment classification.
|
||||||
|
|
||||||
|
|
||||||
## Meeting 10.3.22
|
## Meeting 10.3.22
|
||||||
|
|
||||||
|
267
pages/students/2021/martin_sarissky/README.md
Normal file
@ -0,0 +1,267 @@
|
|||||||
|
---
|
||||||
|
title: Martin Šarišský
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [vp2023,bp2024]
|
||||||
|
tag: [chatbot,rasa,dialog,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2021
|
||||||
|
|
||||||
|
# Bakalárska práca 2024
|
||||||
|
|
||||||
|
|
||||||
|
[Git repo](https://git.kemt.fei.tuke.sk/ms058bd/vp2023)
|
||||||
|
|
||||||
|
Súvisiace materiály:
|
||||||
|
|
||||||
|
- [Projektová stránka](/topics/chatbot)
|
||||||
|
- [Repozitár s webovou aplikáciou](https://git.kemt.fei.tuke.sk/sh662er/rasa-flask-website)
|
||||||
|
- [Repozitár s chatbotom](https://git.kemt.fei.tuke.sk/sh662er/Rasa)
|
||||||
|
- Bakalárska práca [Samuel Horáni](/students/2019/samuel_horani)
|
||||||
|
- video kanál s [RASA tutoriálom](https://www.youtube.com/watch?v=rlAQWbhwqLA&list=PL75e0qA87dlHQny7z43NduZHPo6qd-cRc)
|
||||||
|
- Slovenský Spacy model https://github.com/hladek/spacy-skmodel
|
||||||
|
|
||||||
|
Návrh na zadanie BP:
|
||||||
|
|
||||||
|
Dialógový systém pre zodpovedanie najčastejšie kladených otázok
|
||||||
|
|
||||||
|
1. Vypracujte prehľad metód dialógových systémov s použitím pravidiel a jazykových modelov.
|
||||||
|
2. Navrhnite a overte bázu pravidiel pre dialógový systém pre pomoc pri komunikácii občana s mestským magistrátom.
|
||||||
|
3. Vytvorte webové demo pre chatbota.
|
||||||
|
4. Identifikujte slabé miesta a navrhnite zlepšenia dialógového systému.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Nápady na balakársku prácu:
|
||||||
|
|
||||||
|
- chatbot pre komunikáciu s mestom
|
||||||
|
- vytvorenie NLU databázy.
|
||||||
|
- Urobenie web rozhrania.
|
||||||
|
- dá sa to prepojiť aj na QA systém.
|
||||||
|
|
||||||
|
Stretnutie 23.02.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na text aj na pravidlách.
|
||||||
|
|
||||||
|
Stretnutie 9.2.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Urobené nové testovacie scenáre a vyhodnotenie modelu.
|
||||||
|
- Pridané pravidlá pre FAQ a chitchat.
|
||||||
|
- Vyskúšané PrivateGPT.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vytvorte Dockerfile na nasadenie aplikácie.
|
||||||
|
- Podľa výsledkov vyhodnotenia zlepšite bázu pravidiel.
|
||||||
|
- Pracujte na texte
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Ďalej skúšajte PrivateGPT. Zmente "prompt" pre vyhľadávanie. Prompt zmente na slovenský. Napr. "Si asistent pre vyhľadávanie a hovoríš po slovensky." Model nastavte na LLAMA 7B 4bit. Na embedingy skúste SlovakBERT-MNLR.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 4.1.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Splnené úlohy z minulého stretnutia.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vypracujte prezentáciu s výsledkami zo semestra.
|
||||||
|
- Pokračujte v písaní.
|
||||||
|
- Vytvorte nové testovacie scenáre, vyhodnotte model a doplnte výslekdy do práce.
|
||||||
|
- Do chatbota doplňte pravidlá pre [FAQ](https://rasa.com/docs/rasa/chitchat-faqs/)
|
||||||
|
- Zdrojové kódy dajte na GIT.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Rozbehať PrivateGPT a integrovať ho do RASA.
|
||||||
|
|
||||||
|
Stretnutie 8.12.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na databáze pravidiel pre dialóg. Pravidlá obsahujú najčastejšie otázky týkajúce sa digitálnych služieb.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Vedúci finalizuje zadanie.
|
||||||
|
- [x] Pokračujte v písomnej práci.
|
||||||
|
- [x] Pokračujte v tvorbe webovej aplikácie - integrujte pravidlá od kolegu Ščišľaka-
|
||||||
|
- [x] Zistite ako pracujú veľké jazykové modely a napíšte si poznánmky.
|
||||||
|
- [x] Zistite, čo je to "Retrieval Augumented Generation", ako to funguje a na čo je to dobré.
|
||||||
|
- [x] Oboznámte sa so softvérom PrivateGPT. Zistite ako funguje, napíšte is poznámky-
|
||||||
|
- [x] Pridajte kapitolu o Získavaníí dokumentov pre použitie v dialógových systémoch.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [-] Na školský server alebo na vlastnú M1 nainštalujte PrivateGPT.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 10.11.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Web app funguje. Frontend je HTML, CSS, Javascrip - axios.
|
||||||
|
- Zdrojáky sú na https://git.kemt.fei.tuke.sk/ms058bd/vp2023.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte
|
||||||
|
- Vedúci sa pozrie na build - Dockerfile.
|
||||||
|
|
||||||
|
Stretnutie 27.10.2023
|
||||||
|
|
||||||
|
- Pokračuje písomná príprava.
|
||||||
|
- Pokračuje práca na stránke.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v otvorených úlohách.
|
||||||
|
- Preskúmajte možnosti vytvorenia vlastného frontentu pre RASA chatbota. Zistite viaceré alternatívy.
|
||||||
|
|
||||||
|
Stretnutie 6.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Dockerfile in progress
|
||||||
|
- Teoretická a písomná príprava in progress
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 29.9.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Ten istý ako pri minulom stretnutí, kódy sú na KEMT GITe.
|
||||||
|
- Momentálne vie chatbot poskytnúť kontakt na človeka, ktorý sa zaoberá danou agendou.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [-] Dokončiť demo do podoby vhodnej na nasadenie. Dokončiť Dockerfile, dokončiť pravidlá. Vedúci pomôže so zverejnením.
|
||||||
|
- [-] Zistite, akým spôsobom sa vyhodnocuje-testuje chatbot. Napíšte, ktoré scenáre chatbota sú implementované a ku nim napíšte "testovacie dialógy".
|
||||||
|
- [-] Začnite písať baklársku prácu a pripravte "draft". V práci vysvetlite, čo je to NLU, ako sa robí. Ako príklad uveďte Vášho četbota. Do práce uvedte aj priebeh a výsledky testovania.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Je potrebné aby chatbot sa vedel "učiť", resp. upraviť svoje pravidlá podľa meniacich sa skutočností. Je potrebné vymyslieť webovú aplikáciu pre úpravu bázy pravidiel aj zamestnancami magistrátu.
|
||||||
|
- Identifikuje, aké ďalšie úlohy by mohol riešiť chatbot.
|
||||||
|
- Zlepšite chatbota aby spolupracoval s kognitívnym vyhľadávaním, práca [Kristián Sopkovič](/students/2019/kristian_sopkovic).
|
||||||
|
|
||||||
|
|
||||||
|
## Vedecký projekt 2023
|
||||||
|
|
||||||
|
|
||||||
|
Ciele:
|
||||||
|
|
||||||
|
- Napísať krátku písomnú správu
|
||||||
|
- Oboznámiť sa s technológiou RASA a so súvisiacimi technológiami NLP
|
||||||
|
- Vytvoriť jednoduchého chatbota ktorý bude komunikovať po slovensky.
|
||||||
|
|
||||||
|
Stretnutie 5.5
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Draft písomnej správy
|
||||||
|
- Začiatok práce s Dockerfile
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Prepracujte "blog" na uverejnenie na stránke.
|
||||||
|
- [-] Zlepšiť bázu pravidiel chatbota a dať na git
|
||||||
|
- [-] Identifikovať slabé miesta, porozmýšľať ako by sa to dalo zlepšiť.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 21.4.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Chatbot funguje pre vybrané časti agendy mesta
|
||||||
|
- Funguje aj lokálne demo pomocou RasaWebWidget. Používa sa Websocket
|
||||||
|
- Rozpracovaný písomný report
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Dať zdrojové kódy na GIT
|
||||||
|
- [-] Dokončiť písomnú správu. Cieľ je mať blog, ktorý oboznámi študenta o možnostiach a práci s RASA.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [-] Dorobiť Dockerfile.
|
||||||
|
- [ ] Zverejniť demo na K8s (pre vedúceho).
|
||||||
|
- [ ] Zverejniť blog vo formáte Markdown.
|
||||||
|
- [-] Zlepšiť bázu pravidiel chatbota.
|
||||||
|
- [-] Identifikovať slabé miesta, porozmýšľať ako by sa to dalo zlepšiť.
|
||||||
|
|
||||||
|
Stretnutie 12.4.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Robot komunikuje po slovensky pre jedoduchú úlohu súvisiacu s esluzby mesta Košice.
|
||||||
|
- Zdrojáky sú na gite https://git.kemt.fei.tuke.sk/ms058bd/vp2023
|
||||||
|
- Napísaný krátky report, draft
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zlepšiť štylistiku reportu.
|
||||||
|
- Pripraviť jednoduchú webovú aplikáciu na demo s chatbotom. Inšpirujte sa prácou S. Horáni. alebo použite Flask, Streamlit alebo Rasa ChatWidget https://rasa.com/docs/rasa/connectors/your-own-website/ .
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zlepšite bázu pravidiel chatbota pre esluzby.
|
||||||
|
- Zistenie kontaktnej osoby pre agendu.
|
||||||
|
- Najčastejšie otázky.
|
||||||
|
- Riešenie problémov.
|
||||||
|
- Vymyslieť postup ktorý by umožnil pretrénovať chatbota aj pracovníkom magistrátu. Editovanie pravidiel vo webovej aplikácii.
|
||||||
|
|
||||||
|
Stretnutie 27.3.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Chatbot funguje po anglicky cez Anaconda.
|
||||||
|
- Napísané niektoré reporty.
|
||||||
|
- Pripravené niektoré testovacie konverzácie.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Pozrite si stránku https://www.esluzbykosice.sk/, navrhnite chatbbota ktorý bude informovať o dostupných e-službách pre košický magistrát.
|
||||||
|
- [x] Zdrojáky dajte na KEMT GIT, repozitár nazvite vp2023
|
||||||
|
- [-] Pokračujte v otvorených úlohách.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [x] Preštudujte si ako sa vyhodnocuje RASA chatbot
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Nainštalujte a oboznámte sa s RASA frameworkom. Pri inštalácii využite systém Anaconda.
|
||||||
|
- [x] Vyberte a prejdite najmenej jeden tutoriál pre prácu s RASA frameworkom.
|
||||||
|
- [x] Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.
|
||||||
|
- [x] Vytvorte chatbota, ktorý sa bude vedieť predstaviť a odpovedať koľko je hodín.
|
||||||
|
- [x] Zistite čo je to NLU a napíšte o tom krátku správu.
|
||||||
|
- [-] Prečítajte si Horániho BP.
|
||||||
|
- [-] Zistite ako pracuje RASA a napíšte o tom krátku správu. Zistite, aké neurónové siete sa tam používajú.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Rozbehajte Horániho chatbota.
|
||||||
|
- Pridajte podporu slovenčiny do Vášho chatbota.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
198
pages/students/2021/matej_scislak/README.md
Normal file
@ -0,0 +1,198 @@
|
|||||||
|
---
|
||||||
|
title: Matej Ščišľak
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2024]
|
||||||
|
tag: [chatbot,rasa,dialog,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2021
|
||||||
|
|
||||||
|
# Bakalárska práca 2024
|
||||||
|
|
||||||
|
|
||||||
|
Názov: Dialógový systém pre potreby samosprávy
|
||||||
|
|
||||||
|
|
||||||
|
Zadanie:
|
||||||
|
|
||||||
|
1. Vypracujte teroretický úvod do modelovania dialógu a povedzte aké metódy sa aktuálne používajú.
|
||||||
|
2. Navrhnite a vytvorte dialógový systém v slovenskom jazyku pre úlohu komunikácie občana s mestom.
|
||||||
|
3. Vykonajte sadu experimentov a dialógovým systémom.
|
||||||
|
4. Vyhodnoťte experimenty a identifikujte miesta pre zlepšenie.
|
||||||
|
|
||||||
|
|
||||||
|
Súvisiace materiály:
|
||||||
|
|
||||||
|
- [Projektová stránka](/topics/chatbot)
|
||||||
|
|
||||||
|
Spolupráca:
|
||||||
|
|
||||||
|
- [Martin Šarišský](/students/2021/martin_sarissky)
|
||||||
|
|
||||||
|
Stretnutie 23.2:
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na pravidlách aj texte
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vypracujte pravidlá pre rozpoznanie neznámeho zámeru. Cieľ je aby chatbot vedel upozorniť na agendu ktorú nemá implementovanú a vedel ponúknuť čo vie.
|
||||||
|
|
||||||
|
Stretnutie 16.2.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Pridanie "domain" pravidiel pre "bežného" používateľa
|
||||||
|
- Pridané pravidlá pre slovenské mená a ulice.
|
||||||
|
- Zlepšenie rozpoznávanie IČO a rodné číslo.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pracujte na zlepšení rozpoznávania firiem, priezvisk. Firma sa môže volač hocijak, Je tam možnosť využiť obchodný register.
|
||||||
|
- pridajte možnosť využiť chatgpt alebo inú službu na generovanie odpoveďe.
|
||||||
|
- Pridajte testovacie scenáre vytvorené 3. neznalým človekom a vyhodnotte chatbota. Chceme vedieť, aký dobrý je pri rozpoznávaní intentov, a ktoré intenty a entity sú problematické. Určite ako to zlepšiť.
|
||||||
|
- Stále píšte. Zlepšite časť o rozpoznávaní intentov a pomentovaných entít.
|
||||||
|
|
||||||
|
Stretnutie 9.2.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Zlepšený proces "rozpoznávania" druhu formulára - chatbot sa spýta, aký formulár treba vyplniť.
|
||||||
|
- Pri vypĺnaní nastal problém s rozpoznávaním mien a adries.
|
||||||
|
- Pridané testovacie "stories".
|
||||||
|
- Je problém keď pri firme sa vyplňa formulára niečo iné ako pri fyzickej osobe.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zlepšite chatbota podľa výsledkov vyhodnotenia.
|
||||||
|
- Pridajte zdrojáky na GIT.
|
||||||
|
- Preskúmajte možnosti využitia ChatGPT
|
||||||
|
- Zlepšite rozpoznávanie pomenovaných entít - mená, priezviská, názvy firiem. Najprv vyskúšajte riešenie cez RASA.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vyskúšajte trénovanie modelu pomocou spacy. spacy-skmodel na githube.
|
||||||
|
- Vyskúšajte možnosť zlepšenia pomenovaných entít cez model Spacy. Pravidlový rozpoznávač alebo alebo rozpoznávač pomocou neurónovej siete.
|
||||||
|
- Vedúci má niekde dáta.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 9.1
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Rozšírenie možnosti formulárov.
|
||||||
|
- Práca na písomnej časti.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zlepšite Vášho chatbota pomocou ChatGPT. So službou viete komunikovať pomocou Python API a "api tokenu". LLM je možné dotrénovať na vlastných dátach. Alebo LLM vie riešiť špecifickú úlohu ktorú definujete pomocou "promptu".
|
||||||
|
- Pokračujte v písomnej časti.
|
||||||
|
- Pripravte testovacie scenáre pre Vašu sadu pravidiel a vyhodnotte pomocou nej chatbota. Jedna množina na vyhodnotenie bude Vaša a druhá množina kolegu Šarišského.
|
||||||
|
- Pripravte prezentáciu a pošlite texty BP na spätnú väzbu, dajte kódy na GIT.
|
||||||
|
- Upravte kódy tak, aby ich vedúci vedel ľahko vyskúšať pomocou Docker.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zistite čo je to LangChain a na čo sa používa. Nainštalujte si to a vyskúšajte.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 8.12.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vyriešený problem týkajúci sa SLOTov. Bola potrebná osobnitná funkcia submit.
|
||||||
|
- Práca na písomenj časti.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Vedúci by mal finalizovať zadanie.
|
||||||
|
- [x] Integrovať Vašu bázu pravidiel s kolegom Šarišským. Spraviť z toho jedného bota.
|
||||||
|
- [x] Zistite si ako pracujú veľké jazykové modely LLM a napíšte si o tom poznámky.
|
||||||
|
- [x] Preštudujte si, ako integrovať veľké jazykové modely s RASA. Veľké jazykové modely sú ChatGPT alebo BARD. Na ChatGPT máte k dispozícici študentské kredity cez Azure Dev Tools for Teaching.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [ ] Zlepšite Vášho chatbota pomocou ChatGPT. So službou viete komunikovať pomocou Python API a "api tokenu". LLM je možné dotrénovať na vlastných dátach. Alebo LLM vie riešiť špecifickú úlohu ktorú definujete pomocou "promptu".
|
||||||
|
|
||||||
|
Stretnutie 14.11.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vyriešený problém s Policy - problém bol asi na strane Stories.
|
||||||
|
- Nastal problém s rozpoznávaním entít. Podarilo sa naštartovať Form, nepodarilo sa rozpoznať slot. Nevie rozpoznať typ priznania za psa.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 3.11.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na "Forms" v RASA. Problém s "Policy" konfiguráciou bol skonzultovaný.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Riešte problém s Policy pomocou "debug" výpisov.
|
||||||
|
- Píšte BP. Opíšte ako funguje NLU a ako funguje rozhodovanie pomcou pravidiel v RASA.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Naštudujte si čo je to Reinforcement learning a ako to súvisí s chatbotmi. https://www.telusinternational.com/insights/ai-data/article/reinforcement-learning-primer . Napíšte si o tom aj poznámky.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 27.10
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Pokračuje písomná príprava a práca na kódoch chatbota.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v otvorených úlohách, aj zo zásobníka.
|
||||||
|
- Študujte generatívne jazykové modely.
|
||||||
|
|
||||||
|
Zásobník:
|
||||||
|
|
||||||
|
- Integrujeme bázu pravidiel oboch chatbotov.
|
||||||
|
|
||||||
|
Stretnutie 6.10.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vypracované úlohy z minulého stretnutia
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Nadviažte na prácu p. Šarišského a navrhnite a implementujte chatbota na riešenie vybraných a analyzovaných úloh. Chatbot by mal vedieť identifikovať problém, mal by vedieť či je schopný ho riešiť. Potom by mal naštartovať postup pre riešenie daného problému.
|
||||||
|
- Naštudujte si RASA Forms aby ste vedeli pomôcť človeku vyplniť formulár.
|
||||||
|
- Vytvorte pomôcku pre vyplnenie formulára s pomocou chatbota a RASA Forms pre viacero problémov. Vyberte jednoduché problémy s malým počtom "slotov".
|
||||||
|
- pravidlá pre chatbota uložte na GIT repozitár s názvom bp2023. Môžete prístup zdieľať s kolegom.
|
||||||
|
- Prečítajte si najnovšie články o chatbotoch vo verejnej správe "chatbot citizen services". Zistite aké metódy používajú a napíšte o tom do písomnej práce.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- naštudujte si ako sa vyhodnocuje RASA chatbot.
|
||||||
|
- napíšte testovacie konverzácie pre Vaše pravidlá.
|
||||||
|
- Zistite ako pracuje generatívny jazykový model (GPT, T5, LLAMA) a ako sa dá využiť v dialógových systémoch. Sú založené na neurónových sieťach typu Transformer.
|
||||||
|
|
||||||
|
Stretnutie 28.9.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Nainštalovaná RASA
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Nainštalujte si Anaconda. Do Anaconda prostredia si nainštalujte RASA.
|
||||||
|
- [-] Pokračujte v štúdiu RASA-Python. Na servri scholar si vyhľadajte termín "natural language understanding".
|
||||||
|
Prečítajte si niekoľko vedeckých článkov alebo kníh na túto tému a napíšte si poznámky.
|
||||||
|
- [x] Pozrite si stránku https://www.esluzbykosice.sk/. Vyberte niekoľko vzorových problémov a ku nim implementuje asistenta na ich riešenie. Napríklad, občan chce zaplatiť za odvoz odpadu a nevie čo má robiť. Alebo občan si kúpil psa a nevie aké má povinnosti.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vytvorte pomôcku pre vyplnenie formulára s pomocou chatbota.
|
||||||
|
|
87
pages/students/2021/nikita_bodnar/README.md
Normal file
@ -0,0 +1,87 @@
|
|||||||
|
---
|
||||||
|
title: Nikita Bodnar
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [vp2023,bp2024,bp2025]
|
||||||
|
tag: [chatbot,rasa,dialog,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2021
|
||||||
|
|
||||||
|
# Bakalárska práca 2024
|
||||||
|
|
||||||
|
Korekcia textu pomocou neurónových sietí
|
||||||
|
|
||||||
|
Spolupráca: Maroš Harahus, Andrii Pervashov
|
||||||
|
|
||||||
|
Zadanie BP:
|
||||||
|
|
||||||
|
1. Vypracujte prehľad existujúcich systémov pre neurónový strojový preklad.
|
||||||
|
2. Definujte úlohu korekcie textu a vysvetlite, ako je možné ju riešiť pomocou systému pre strojový preklad.
|
||||||
|
3. Vyberte a pripravte dáta do vhodnej podoby a aplikujte existujúci model pre strojový preklad na opravu textu vo vybranej úlohe.
|
||||||
|
4. Číselne a slovne vyhodnoťte model na vybranej úlohe. Identifikujte jeho slabé miesta a navrhnite zlepšenia.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 24.1.2024:
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Nie je posun.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Natrénujte jednoduchý ľubovoľný model pre strojový preklad pomocou Marian NMT. Skripty su v repozitári bert-train
|
||||||
|
- Natrénujte model pre opravu korekcie na slovenskom texte a vyhodnoote ho.
|
||||||
|
- Pokračujte v písaní bakalárskej práce.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 23.11.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Prečítaný článok o Spelling a urobené poznámky
|
||||||
|
- Ostatné úlohy: in progress. Treba pridať!!!
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Vedúcim bol odovzdaný funkčný Marian na servri IDOC. Aj model pre generovanie-opravu znakov. Oboznámte sa so systémov. Spustite model pre preklad. Spustite trénovanie.
|
||||||
|
- Vyhodnotte presnosť tohoto systému. Presnosť sa hodnotí metrikou WER, CER. Skripty nájdete v bert-train repozitári.
|
||||||
|
- Zlepšite tento systém.
|
||||||
|
- V texte vysvetlite, ako funguje model typu Transformer. Vysvetlite, ako funguje Marian NMT. Aké neurónové siete používa? Uvedte aj odkazy na odborné články.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 6.10.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Štúdium Python a neurónové siete.
|
||||||
|
|
||||||
|
Stretnutie 3.7.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
Existuje model Marian NMT rep korekciu.
|
||||||
|
|
||||||
|
|
||||||
|
Úloha:
|
||||||
|
|
||||||
|
- [-] Zistite ako funguje neurónová sieť typu Transformer.
|
||||||
|
- [x] Nainštalujte si systém Anaconda a prejdite si knihu Dive into Pyhton 3.
|
||||||
|
- [ ] Zistite ako funguje strojový preklad.
|
||||||
|
- [x] Prečítajte si článok Hládek: "Survey of Automatic Spelling Correction" a *urobte si poznámky*.
|
||||||
|
- [-] Prečítajte si knihu https://d2l.ai/
|
||||||
|
- [ ] Vaše zistenia zapíšte do textového súboru. Pridajte odkazy na zdroje - odborné články a blogy.
|
||||||
|
- [ ] Oboznámiť sa zo systémom Marian NMT. Nainštalujte si to a vyskúšajte nejaké demo na strojový preklad.
|
||||||
|
- [ ] Získajte prístup na školský server idoc.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vyskúšaje natrénovať model Marian NMT podľa návodu na stránke.
|
||||||
|
- Získajte od vedúceho skripty pre trénovanie Marian NMT na úlohu korekcie textu.
|
||||||
|
- Podľa nich natrénujte a vyhodnotte model.
|
||||||
|
- Zistite s akými parametrami model pracuje najlepšie. Skúste model vylepšiť.
|
||||||
|
- Vypracujte webové demo.
|
||||||
|
|
210
pages/students/2021/vladimir_ferko/README.md
Normal file
@ -0,0 +1,210 @@
|
|||||||
|
---
|
||||||
|
title: Vladimír Ferko
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2024]
|
||||||
|
tag: [dialog,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2021
|
||||||
|
|
||||||
|
študent KPI, pracovník DTSS
|
||||||
|
|
||||||
|
## Bakalárska práca 2024
|
||||||
|
|
||||||
|
- [Projekt HateSpeech](/topics/hatespeech)
|
||||||
|
- [Pokyny KPI ku záverečným prácam](https://kpi.fei.tuke.sk/sk/zaverecne-prace)
|
||||||
|
- Spolupráca: [Eduard Matovka](/students/2021/eduard_matovka)
|
||||||
|
- Nadväzuje [Martin Jancura](/students/2017/martin_jancura)
|
||||||
|
|
||||||
|
Názov: Anotácia a vyhodnotenie slovenskej databázy nenávistnej reči
|
||||||
|
|
||||||
|
1. Napíšte prehľad existujúcich dátových zdrojov pre úlohu rozpoznávania sentimentu a nenávistnej reči v diskusiách.
|
||||||
|
2. Pripravte korpus diskusií v slovenskom jazyku. Vyberte vhodný zdroj diskusí a pripravte ho do podoby vhodnej na anotáciu.
|
||||||
|
3. Modifikujte existujúcu aplikáciu pre úlohu anotácie nenávistnej reči v diskusiách. Napíšte návod pre anotáciu.
|
||||||
|
4. Anotujte čo najväčšie množstvo dát pre výskyt nenávistnej reči.
|
||||||
|
5. Štatisticky analyzujte výskyt anotovanej nenávistnej reči v diskusiách.
|
||||||
|
|
||||||
|
|
||||||
|
Predbežné zadanie - úlohy na semester:
|
||||||
|
|
||||||
|
- Vytvoriť slovenskú databázu diskusií. Databáza by mala byť prezentovateľná na konferencii a použiteľná pre rozpoznávanie nenávistnej reči.
|
||||||
|
- zobrazte štatistiky získaných dát.
|
||||||
|
- Anotovať sentiment diskusných príspevkov.
|
||||||
|
- Možno anotovať nenávistnú reč. Toto konzultovať s p. Sokolovou.
|
||||||
|
- Z nazbieraných dát zostavte a vyhodnoťte model
|
||||||
|
|
||||||
|
Stretnutie 10.5.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Natrénovaný prvý model slovakbert
|
||||||
|
- Práca na mdeberta
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Konvertujte úlohu na binárnu klasifikáciu.
|
||||||
|
- Zlepšite fitrovanie datasetu.
|
||||||
|
- Natrénujte a vyhodnoťte nové modely pre viac filtrované datasety. Do práce dajte zapíšte výsledné veľkosti a výsledky.
|
||||||
|
|
||||||
|
Pravidlá pre filtrovanie datsetu:
|
||||||
|
|
||||||
|
1. "Dôveryhodní" ľudia idú do testovacej časti
|
||||||
|
2. Máme tri hlasy ku jednému prísmevku. Na určenie triedy nám treba minimálne dva súhlasné hlasy. Ak výjde trieda neviem tak anotáciu vyradíme. Tie hlasy ktoré majú ++= tie sú plus, tieh hlasy ktorú su --=,. tie sú mínus. Ostatné príspevky zahodíme.
|
||||||
|
3. Vyskúšať: Vyhodiť vzorku aj pri akomkoľvek vnútornom nesúhlase. Je viac filtrovaná množina lepšia?
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vytvoriť HF Dataset.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 22.3.
|
||||||
|
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na vlastnej Flask aplikácii
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripravte draft práce, ktorý bude obsahovať osnovu a texty ktoré máte. Pracujte na tom ďalej, popri praktických úlohách.
|
||||||
|
- Naštudujte si [OffensEval 2019-20](https://sites.google.com/site/offensevalsharedtask/home). Do práce pridajte časť o tom čo to je, aké články sa o tom publikovali.
|
||||||
|
- Vyhľadajte a opíšte podobné iniciatívy pre anotáciu HS.
|
||||||
|
- Vo vašej antotačnej schéme napodobnite vybraný prístup (OffensEval).
|
||||||
|
- Pred tým než začnete anotovať, konzultujme vybranú anotačnú schému.
|
||||||
|
- Čím skôr začnite anotovať podľa vybranej schémy.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 11.3.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Analýza zozbieraných dát z Facebooku pred anotáciou - výber rôznych kanálov. Vo forme notebooku.
|
||||||
|
- Dáta sú v jednom súbore JSON
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Aplikujte detekciu emócií na dataset. Do datasetu zaraďte 20 percent pozitívneho, 20 neutrálneho a 60 negatívneho obsahu.
|
||||||
|
- [x] Dataset premiešajte. Začnite anotovať, akýmkoľvek spôsobom.
|
||||||
|
- [-] Do písomnej časti opíšte postup pri príprave dát.
|
||||||
|
|
||||||
|
Stretnutie 8.2.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na identifikácii podobných príspevkov pomocou embeddingov. V matici sa vyhľadá každý dokument, ktorého kosínusová podobnosť je väčšia ako konštanta.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Získajte dáta z íných zdrojov, vhodné na anotáciu. Kritériá sú: miera výskytu nenávistnej reči, druh nenávistnej reči a legálne nástrahy (osobné dáta, licencia).
|
||||||
|
|
||||||
|
Momentálne máme:
|
||||||
|
|
||||||
|
- Facebook, rôzne profily. Problém je výskyt spamu - tématicky podobných príspevkov.
|
||||||
|
|
||||||
|
Iné možné zdroje:
|
||||||
|
|
||||||
|
- Reddit-Slovakia.
|
||||||
|
- Diskusie pod článkami.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 23.1.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca iba na textovej časti.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripravte dátovú množinu na anotovanie. Vyberte také dáta, ktoré obsahujú málo spamu a primerané množstvo "hatespeech". Môžete "nascrapovať" nové zdroje, také ktoré sú vhodnejšie.
|
||||||
|
- Pripravte aplikáciu na anotovanie a skúste anotovať pár jednotiek. Zaznamenajte chyby anotačnej aplikácie.
|
||||||
|
- Ak bude aplikácia v poriadku, anotujte viac.
|
||||||
|
- Pokračujte v práci na textovej časti podľa inštrukcií nižšie.
|
||||||
|
- Pokračujte v otvorených úlohách.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Prečistenie databázy na výskyt spamu: Pomocou modelu slovak-bert-mnlr identifikujte sémanticky podobné dokumenty. Ak má jeden dokument príliš veľa podobných, označte ho ako spam. Konzultovať s Stromko alebo Sopkovič. Asi bude treba použiť vektorový index.
|
||||||
|
- Z anotovaných dát natrénujte model.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 27.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Podarilo sa rozbehať anotačnú aplikáciu a pripraviť dáta.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripravte aplikáciu na nasadenie. Pripravte dockerfile, pridajte CSS. Vyskúšajte aplikáciu a identifikujte chyby.
|
||||||
|
- Pokračujte v teoretickej príprave podľa pokynov nižšie. Sústredte sa na anotáciu a automatické rozpznávanie nenávistnej reči. Môžete vyjadriť aj súvis medzi rozpoznávaním sentimentu a nenávistnej reči. Na vyhľadávanie článkov použite Google scholar. Do práce si poznačte bibliografický odkaz na článok ktorý preštudujete. Ku každému článku si napíšte poznámky čo ste sa dozvedeli.
|
||||||
|
- Oboznámte sa so skriptom https://github.com/huggingface/transformers/tree/main/examples/pytorch/text-classification skúste ho rozbehať aj na iných vlastných dátach.
|
||||||
|
- Prečítajte si knižku https://d2l.ai/
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Analyzujte anotované dáta. Výsledky zobrazte do tabuľky.
|
||||||
|
- Natrénujte a vyhodnoťte model.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 13.10.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Rozbehané Prodigy anotácie
|
||||||
|
- Vyskúšaný model https://huggingface.co/kinit/slovakbert-sentiment-twitter
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ] Vykonať prieskum literatúry. Aké sú existujúce anglické a slovenské databázy na analýzu sentimentu? Ako sa klasifikuje sentiment pomocou neurónových sietí? Prieskum by mal mať niekoľko strán a mal by obsahovať odkazy na odbornú literatúru a iné zdroje. https://github.com/slovak-nlp/resources Tu pozrite zoznam modelov a datasetov pre sentiment. Nájdite aj niekoľko článkov na tému "crowdsourcing dataset for sentiment classification". Robte si písomné poznámky, použije sa to do BP.
|
||||||
|
- [ ] Vytvorte KEMT GIT repo. Nastavte tam synchronizáciu s KPI Git tak aby som mal prístup k zdrojovým kódom na stiahnutie a na tvorbu modelov.
|
||||||
|
- Preštudujte si zdrojové kódy https://github.com/hladek/hate-annot a skúste ich rozbehať na svojom počítači s Vašimi dátami.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Čím skôr rozbehať anotácie sentimentu alebo hate speech medzi študentami.
|
||||||
|
- Zozbierané dáta využiť na natrénovanie modelu.
|
||||||
|
- Oboznámte sa so skriptom https://github.com/huggingface/transformers/tree/main/examples/pytorch/text-classification skúste ho rozbehať aj na iných vlastných dátach.
|
||||||
|
- Prečítajte si knižku https://d2l.ai/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 8.8.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- vypracovaný skript pre získanie dát z Reditt
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
|
||||||
|
- [x] Rozbehajte u seba jednoduché anotácie pomocou Prodigy. V texte označujte časti, ktoré sú urážlivé. Môžete to urobiť podľa skritpov v https://git.kemt.fei.tuke.sk/dano/annotation . Dáta anotujete podobne ako "named entities".
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Finalizovať dátovú množinu (facebook alebo reddit) a anotačnú schému.
|
||||||
|
- Pripraviť návod pre anotátorov
|
||||||
|
- Pripraviť webovú appku na sledovanie anotácií.
|
||||||
|
- Natrénovať model.
|
||||||
|
|
||||||
|
Stretnutie 29.6.2023
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Je hotový skript pre zber diskusií z Facebooku. Skript je Python, Selenium a BS4.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [ ] Vykonať prieskum literatúry. Aké sú existujúce anglické a slovenské databázy na analýzu sentimentu? Ako sa klasifikuje sentiment pomocou neurónových sietí? Prieskum by mal mať niekoľko strán a mal by obsahovať odkazy na odbornú literatúru a iné zdroje. https://github.com/slovak-nlp/resources Tu pozrite zoznam modelov a datasetov pre sentiment.
|
||||||
|
- [ ] Skript na stiahnutie s krátkym komentárom dajte na KEMT GIT. Repo nazvite BP2024
|
||||||
|
- [ ] Vyskúšajte rozpoznávanie sentimentu pre slovenčinu pomocou existujúceho modelu Huggingface Transformers. https://huggingface.co/kinit/slovakbert-sentiment-twitter Vyskúšajte tento model.
|
||||||
|
- V prípade potreby Vám viem prideliť prístup na školský server s GPU.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
66
pages/students/2022/andrii_pervashov/README.md
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
---
|
||||||
|
title: Andrii Pervashov
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2025]
|
||||||
|
tag: [rag,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2022
|
||||||
|
|
||||||
|
|
||||||
|
## Bakalárska práca 2025
|
||||||
|
|
||||||
|
|
||||||
|
Návrh na tému:
|
||||||
|
|
||||||
|
Korekcia textu pomocou neurónových sietí
|
||||||
|
|
||||||
|
- Oboznámte sa s existujúcimi systémami pre neurónový strojový preklad.
|
||||||
|
- Aplikujte existujúci model na opravu textu vo vybraných úlohách.
|
||||||
|
- Vyhodnnotte model pomocou overovacej množiny.
|
||||||
|
|
||||||
|
Stretnutie 3.10.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Spustený skript WikiEdits bez úprav. Výsledkom bol (asi) dobrý súbor csv s úpravami v slovenskom jazyku.
|
||||||
|
- Vyskúšané dotrénovanie modelu mt5-base na tejto databáze. Trénovanie sa spustí. Po zatvorení tmux sa trénovanie nepodarí obnoviť.
|
||||||
|
|
||||||
|
|
||||||
|
Online update 4.9.2024
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Upravte skripty [WikiEdits](https://github.com/snukky/wikiedits/tree/master/wikiedits) na slovenský jazyk
|
||||||
|
|
||||||
|
Stav 14.8.2024:
|
||||||
|
|
||||||
|
- Nainštalovaná Anaconda, rozbehaný anglický trénovací skript s databázou WikiEdits a modelom T5small. Notebook je príliš pomalý na trénovanie.
|
||||||
|
- Oboznámenie sa s materiálmi - d2dl aj Python.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v štúdiu modelov T5 aj GPT aj ChatGPT. Robte si písomné poznámky. Poznačte si odkazy na odborné články, napr. Arxiv.
|
||||||
|
- Použite server google scholar a zistite ako sa robí ooprava textu pomocu modelu T5. Poznačte si články ktoré sa týkajú tejto témy a napíšte o čom tie články sú.
|
||||||
|
- Prečítajte si môj článok Survey of Automatic Spelling Correction a urobte si poznámky,
|
||||||
|
- dotrénujte anglický model t5 small na opravu a vyhodnotte ho. Na vyhodnotneie sa používa metrika WER, CER, SER, BLEU. Zistite čo to je.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Natrénujte model pre opravu textu v slovenskom jazyku.
|
||||||
|
- Pripravte webové demo.
|
||||||
|
|
||||||
|
Stretnutie 26.4. 2024
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Nainštalujte si prostredie Anaconda.
|
||||||
|
- Prejdite si knihu Dive Deep into Python 3.
|
||||||
|
- Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.
|
||||||
|
- Nainštalujte si Pytorch, a huggingface transformers a oboznámte sa ako funguje táto knižnica.
|
||||||
|
- Zistite ako funguje tento model https://huggingface.co/docs/transformers/en/model_doc/byt5
|
||||||
|
- Napíšte si poznámky o tom ako funguje model Transformers a ako funguje model T5.
|
||||||
|
|
83
pages/students/2022/daniil_huzenko/README.md
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
---
|
||||||
|
title: Daniil Huzenko
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2025]
|
||||||
|
tag: [klaud]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2022
|
||||||
|
|
||||||
|
# Bakalárska práca 2025
|
||||||
|
|
||||||
|
Vedúci: doc. Matúš Pleva PhD.
|
||||||
|
|
||||||
|
Predbežný názov:
|
||||||
|
|
||||||
|
Testovanie hybridného klaudu s využiťím kombinácie verejného a privátneho riešenia
|
||||||
|
|
||||||
|
Cielom práce je vytvorenie vzelávacích materiálov o Kubernetes.
|
||||||
|
|
||||||
|
Stretnutie 14.11
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- 1 ks klastra je zmontovany
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Napíšte o tom čo je to kontajnerizácia, čo je Kubernetes, stručne o Rpi CM4 a Super6C - opíšte HW.
|
||||||
|
- Píšte o metódach orchestrácie. Čo je to a akými metódami sa to robí?
|
||||||
|
- Napíšte o Ansible. Ako riadiť klaster pomocou Ansible?
|
||||||
|
- Citujte knihy a odborné články. Nájdete to na google scholar.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pripravte skripty Ansible pre "setup" klastra
|
||||||
|
- Pripravte skripty pre "reinstall" klastra poocou Ansible
|
||||||
|
- Zistite ako funguje netboot na rpi, skúste reinstall cez networkboot.
|
||||||
|
|
||||||
|
Stretnutie 12.11.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Písanie draftu BP
|
||||||
|
- Vyskúšané tutoriály s Minikube.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zmontujte Raspberry Pi klaster: 1x skrinka s príslušenstvom, 6x RPI Compute Module 4, 1 doska a zdroj SUper6C.
|
||||||
|
- Urobte videoblog o tom ako zmontovať RPI klaster. Akým jazykom? Po rusky alebo po slovensky?
|
||||||
|
- Zistite čo je to MicroK8s
|
||||||
|
- Pokračujte v písaní BP. Používajte citácie na odbornú literatúru ()knihy a odborné články. Do BP píšte aj o hardvéri ktorý ste dostali. Odborné články nájdete na google scholar.
|
||||||
|
- Prihláste sa na Azure KLaud.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Oživte klaster a nainštalujte na neho MicroK8s. Inštaláciu urobte ľahko opakovateľnú pomocou skriptu.
|
||||||
|
- Nainštalujte monitorovacie nástroje na klaster.
|
||||||
|
- Urobte deployment aplikácie na privány klaster aj na verejnmý klaster (AKS).
|
||||||
|
- Urobte druhý videoblog o inštalácii softvéru na náš klaster.
|
||||||
|
- Napíšte textový blog o tom čo ste urobili - cieľ je poučiť a inšpirovať študentov.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 4.10.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
Naštudovaný Kubernetes, nainštalované Minikube
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
|
||||||
|
- [x] Napíšte draft BP. Napíšte čo je to Kubernetes a ako sa používa.čo je to kontajnerizácia
|
||||||
|
- [x] Napíšte, aké nástroje sa používajú na monitoring klastra.
|
||||||
|
- [-] Vyskúšajte a opíšte nástroj Prometheus, Istio. Zistite čo je service-mesh. Čo je „network fabric“ – Calico.
|
||||||
|
|
||||||
|
|
139
pages/students/2022/oleh_poiasnik/README.md
Normal file
@ -0,0 +1,139 @@
|
|||||||
|
---
|
||||||
|
title: Oleh Poiasnik
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2025]
|
||||||
|
tag: [rag,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2022
|
||||||
|
|
||||||
|
# Bakalárska práca 2025
|
||||||
|
|
||||||
|
Nové zadanie:
|
||||||
|
|
||||||
|
Chceme vytvoriť asistenta pre farmaceuta alebo zákazníka lekárne pre vyhľadávanie v príbalových letákoch.
|
||||||
|
|
||||||
|
|
||||||
|
Staré zadanie:
|
||||||
|
|
||||||
|
Vyhľadávanie právnych informácií pomocou neurónových sietí
|
||||||
|
|
||||||
|
- Oboznámte sa s existujúcimi modelmi pre vyhľadávanie v texte.
|
||||||
|
- Vytvorte systém pre vyhľadávanie v zákonoch a vyhláškach.
|
||||||
|
- Vyhľadajte súvisiace paragrafy so zadanou otázkou
|
||||||
|
- Vyhodnotte či je zadané tvrdenie v súlade s legislatívou alebo nie.
|
||||||
|
|
||||||
|
|
||||||
|
RAG: Generovanie jazyka s pomocou vyhľadávania - Retrieval augmented generation
|
||||||
|
|
||||||
|
8.11.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Modifikovaný frontend (Tailwind)
|
||||||
|
- Vytvorený Docker Images, Elasticsearch databáza aj index.
|
||||||
|
- Je aj skript na indexovanie.
|
||||||
|
- Vyskúšaný Mistral Small a Mistral Large cez API-
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pracujte na texte, pošlite mi draft.
|
||||||
|
- Pripojte sa na server quadro.kemt.fei.tuke.sk (cez ssh z tuke siete). Použite prostredie Anaconda.
|
||||||
|
- Na inferenciu (beh modelu) vyskúšajte vllm. Alebo ollama alebo localai. Dobrý model pre slovenčinu je Qwen2.5 alebo slovak-t5-base. Na vektorvé vyhľadávnaie je zatiaľ najlepší model multilingual E5. Možno aj BGE - nie je overený.
|
||||||
|
|
||||||
|
17.10.20204
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Funguje web rozhranie aj vyhľadávanie.
|
||||||
|
- Kódy sú na gite. Využíva sa Flask, Mistral API pre Mistral-Small (nebeží lokálne). Na vektory MiniLM2
|
||||||
|
- Napísané poznámky o praktickej časti.
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy
|
||||||
|
|
||||||
|
- Otázka: Je to hybridné vyhľadávanie?
|
||||||
|
- Začnite písať teoretickú časť práce.
|
||||||
|
- Pokračujte v práci na frontende aj backende, tak aby to dobre vyzeralo aj dobre fungovalo - aby sa to dalo použiť ako demo. Treba dávať pozor na právnu zodpovednosť.
|
||||||
|
- Vyskúšajte rôzne spôsoby vyhľadávania - aj sparse (riedke vyhľadávanie).
|
||||||
|
- Kódy dávajte na git.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pripravte modely na lokálne nasadenie pomocou inferenčného servra (vllm, ctranslate2). Chceme aby modely bežali cez (OpenAI) API na našej infraštruktúre.
|
||||||
|
- Vyskúšajte Váš systém s lepšími modelmi (Slovak Mistral, iný väčší model, na vektory me5 alebo slovakbert-mnlr).
|
||||||
|
- pripravte nasadenie aplikácie pomocou systému Docker Compose.
|
||||||
|
- Urobte číslelné vyhodnotenie vyhľadávania. Toto má na starosti Yevhenii Leonov.
|
||||||
|
|
||||||
|
|
||||||
|
27.9.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vyskúšané generatívne modely - OpenAI aj HuggingFace Prakticky sú nepoužiteľné, kvôli tomu, že chybné požiadavky míňajú kredit. Kreditu je málo na deň.
|
||||||
|
- Výskúšaný Slovenský Mistral "slovak-nlp/mistral-sk-7b". Výskúšané cez API skript.
|
||||||
|
- Nainštalovaný PrivateGPT. Zaindexovaná databáza liekov cez ElasticSearch a implementovaný RAG s modelom Slovak Mistral. Funguje to celkom dobre na dopyt o bolesti hlavy.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v štúdiu LangChain. Prejdite si tutoriály.
|
||||||
|
- Čítajte články a robte si poznámky. Pozrite si článok o modeli Mistral, o sentence transformeroch, aj o "retrieval augmented generation". Na vyhľadanie článku použite google scholar.
|
||||||
|
- Vytvorte skript pre indexovanie a prípravu dát, dajte ho na git.
|
||||||
|
- Konfiguračné skripty na Privategpt a skripty pre prípravu dát dajte na git repozitár. Na kemt.git.fei.tuke.sk. Skripty by mali byť opakovateľné.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Lepšie pripraviť dáta. Bude treba vyradiť lieky pre zvieratá. Texty bude treba predpripraviť. O lieku bude treba zistiť metainformácie. Bude treba vyznačiť, či je liek na lekársky predpis alebo nie.
|
||||||
|
- Model bude treba dotrénovať na inštrukcie, použiť databázu Slovak Alpaca.
|
||||||
|
- Pripraviť "inteligentného agenta" pre vyhľadávanie, aby sa vedel spýtať dolnňujúce otázky. Prečítajte si článok o ReACT.
|
||||||
|
- Pripraviť vlastné webové rozhranie a backend LangChain.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 18.9.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vyskúšaný model bioBERT, cez Transformers, Anaconda na malom datasete na notebooku
|
||||||
|
- ElasticSearch Python API
|
||||||
|
- vlastný skript na indexovanie pomocou SBERT
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- vhodné modely pre slovenský jazyk: me5-base pre vektorové vyhľadávanie. Ale ako použijete ES, tak nie je potrebný. Pre generovanie: je možné použiť OpenAI API alebo HuggingfaceAPI, má obmedzenie. Otvorené modely: LLama3, RWKV, Sovenský Mistral 7B TBA.
|
||||||
|
- Na začiatok skúste rozbehať postup s PrivateGPT, OpenAI API a vyhľadávaním (pomocou ES alebo me5-base alebo OpenAI API - ADA embedding).
|
||||||
|
- Urobte si lokálnu inštaláciu PrivateGPT na Vašom notebooku. Zmente konfiguráciu - modely a prompty
|
||||||
|
- Dáta dodá Kristián Sopkovič - cez Teams sa spojte.
|
||||||
|
- Pokračujte v štúdiu Python, Transformers. Oboznámte sa s LangChain.
|
||||||
|
- Prečítajte si tento článok https://arxiv.org/abs/1908.10084 o sentence transformers a urobte si poznámky.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Urobte množinu na vyhdnotenie. Vytvoríte množinu vzorových otázok a odpovedí. Vyhodnotte celý proces.
|
||||||
|
- Modely by mali bežať na našej infraštruktúre. Treba pripravť vhodný inferenčný server na našom HW, vybrať a dotrénovať vhodný model.
|
||||||
|
- Preskúmať využitie Knowledge Graph pre spracovanie medicínskych dát.
|
||||||
|
|
||||||
|
Stretnutie 26.4.2024
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zistite čo je to Retrieval Augmented Generation a napíšte o tom správu.
|
||||||
|
- Naučte sa základy jazyka Python.
|
||||||
|
- Podrobne si prejdite minimálne dva tutoriály.
|
||||||
|
- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.
|
||||||
|
- Nainštalujte si a vyskúšajte softvér PrivateGPT
|
||||||
|
- Nainštalujte si prostredie Anaconda. Prejdite si knihu Dive Deep into Python 3.
|
||||||
|
- Nainštalujte si PrivateGPT. Zistite ako funguje RAG. Zistite ako funguje ChatGPT. Zistite ako funguje vyhľadávanie pomocou SentenceTranformers. Napíšte o tom poznámky.
|
||||||
|
- Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Spracujte a indexujte slovenské zákony a vyhlášky.
|
||||||
|
- Získajte zoznam právnych tvrdení ktoré je možné overiť.
|
||||||
|
- Existuje množina zmlúv o prenájme v slovenskom jazyku. https://huggingface.co/datasets/mtarasovic/ner-rent-sk-dataset
|
||||||
|
|
64
pages/students/2022/serhii_yemets/README.md
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
---
|
||||||
|
title: Serhii Yemets
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2025]
|
||||||
|
tag: [ner,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2022
|
||||||
|
|
||||||
|
# Bakalárska práca 2025
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Cieľ:
|
||||||
|
|
||||||
|
- Zlepšenie slovenského modelu pre rozpoznávanie pomenovaných entít.
|
||||||
|
|
||||||
|
Do budúcnosti:
|
||||||
|
|
||||||
|
- Vypracovanie webového dema
|
||||||
|
- Využitie modelu v nejakej zaujímavej úlohe (chatbot alebo právne texty).
|
||||||
|
|
||||||
|
Stretnutie 30.10.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Napísané texty o NE.
|
||||||
|
- Vyskúšané a naštudované veci podľa pokynov,
|
||||||
|
- Začiatok práce na webovom deme.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Naštudujte korpusy s NER pre slovenský jazyk. Napíšte ich zoznam. Ku každému napíšte veľkosť (počet viet, slov) a druhy pomenovaných entít.
|
||||||
|
- Najprv budeme pracovať s ručne anotovanými dátami. Použite ich na natrénovanie modelu typu BERT (napr. SlovakBER alebo mbert) a vyhodnotte ich presnosť. Na trénovanie použite Spacy alebo Transformers.
|
||||||
|
- Pokračujte v písaní BP. Stručne (max. 1.5 strany) vysvetlite ako funguje transformer. Na google scholar nájdite vedecké články o NER a napíšte čo ste sa z nich dozvedeli. Aké majú výsledky a aké metódy používaju?
|
||||||
|
- Prejdite si tutoriál https://huggingface.co/docs/transformers/en/tasks/token_classification
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Natrénujte nový Spacy NER model ktorý by bol lepší ako pôvodný.
|
||||||
|
- Spojte viacero dátových množin (manuálne anotovaných) do jednej a použite je na natrénovanie modelu.
|
||||||
|
- Použite veľký jazykový model pre NER anotáciu a porovnajte ho s menším dotrénovaným NER modelom.
|
||||||
|
- Vykonané experimenty slovne opíšte a výslekdy zapíšte do tabuliek. Výsledky slovne okomentujte.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 20.5.20204
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Zistite čo je to rozpoznávanie pomenovaných entít (named entity recognition) a napíšte o tom správu.
|
||||||
|
- [x] Zopakujte si základy jazyka Python "Dive into Python 3". Nainštalujte si prostredie Anaconda.
|
||||||
|
- [x] Oboznámte sa s knižnicou Spacy a vyskúšajte si skripty v https://github.com/hladek/spacy-skmodel
|
||||||
|
- [x] Nainštalujte si knižnicu Huggingface Transformers. Oboznámte sa s ňou. Zistite, ako sa trénuje model NER pomocou takejto knižnice.
|
||||||
|
- [x] Zistite, aké modely a jazykové zdroje sú dostupné pre túto úlohy pre slovenský jazyk https://github.com/slovak-nlp/resources
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pripravte viacero korpusov pre NER. Môžu byť aj viacjazyčné.
|
||||||
|
- Natrénujte model Huggingface pre NER
|
||||||
|
|
||||||
|
|
92
pages/students/2022/tetiana_mohorian/README.md
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
---
|
||||||
|
title: Tetiana Mohorian
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2025]
|
||||||
|
tag: [rag,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2022
|
||||||
|
|
||||||
|
|
||||||
|
## Bakalárska práca 2025
|
||||||
|
|
||||||
|
- Spolupráca [P. Pokrivčák](/students/2019/patrik_pokrivcak)
|
||||||
|
- [Python](/topics/python)
|
||||||
|
- [Hate Speech](/topics/hatespeech)
|
||||||
|
|
||||||
|
|
||||||
|
Návrh na tému:
|
||||||
|
|
||||||
|
Rozpoznávanie nenávistnej reči pomocou veľkých jazykových modelov.
|
||||||
|
|
||||||
|
- Oboznámte sa s existujúcimi veľkými jazykovými modelmi - uzatvorenými aj otvorenými.
|
||||||
|
- Aplikujte existujúci model na úlohu detekcie nenávistnej reči.
|
||||||
|
- Na adaptáciu použite "prompting" a "LORA".
|
||||||
|
- Vyhodnotte model pomocou [overovacej množiny](https://huggingface.co/datasets/TUKE-KEMT/hate_speech_slovak).
|
||||||
|
|
||||||
|
Stretnutie 12.11.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Vyskúšané few shot Distillbert, BERT, GPT3, T5, najlepšie výsledky mal DistillBERT : 65F1. Problém je, že tieto modely nevedia po slovensky.
|
||||||
|
- Na vyhodnotenie použitý svoj skript a framework llm-eval-harness.
|
||||||
|
- Pokračuje písanie.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pošlite mi draft BP na ďalšie stretnutie.
|
||||||
|
- Urobte si repozitár na KEMT GIT a dajte tam zdrojové kódy na spustenie experimentov.
|
||||||
|
- Pokračujte v písaní.
|
||||||
|
- Vyskúšajte vyhodnotiť modely v rôznych veľkostiach (small, base, large, 1B, 3B, 7B): mt5, slovak-t5-base, slovak-t5-small, Qwen2.5, Slovak Mistral, LLama3, SlovakBERT .
|
||||||
|
- Napíšte ChatGPT prompt na detekciu nenávistnej reči.
|
||||||
|
- Ak Vám nebude stačiť GPU Vášho počítača, vedúci Vám pridelí prístup na školský server alebo môžete vyskúšať Google Colab.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zistite čo je to PEFT a kvantizácia a ako sa to používa.
|
||||||
|
- Dotrénujte jazykový model pre rozponávanie HS pomocou metódy PEFT.
|
||||||
|
|
||||||
|
Stretnutie 18.10.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Urobené 3 prehľadové tabuľky s modelmi - architektúra, presnosť, multilinguaglita.
|
||||||
|
- Pozretá kniha DDIP3 a d2dl. Poznámky na 20 strán.
|
||||||
|
- Nainštalovaná OLLama, Transformers, vyskúšaný Mistral.
|
||||||
|
- Urobené všetko.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v písaní bakalárskej práce. Postupujte od definície úlohy, prehľad súčasného stavu, Vaše riešenie, experimenty a závery. Používajte odkazy na odbornú literatúru (vedecké články cez Google Scholar).
|
||||||
|
- Navrhnite promt (može byť aj viac rôznych) pre veľký jazykový model pre detekciu nenávistnej reči.
|
||||||
|
- Pomocou množiny vyhodnotte model pre detekciu HS v zero shot alebo v few shot scenári. Na vyhodnotenie použite metriku Precision-Recall-F1.
|
||||||
|
- Oboznámte sa ako funguje overenie veľkých jazykových modelov pomocu Eleuther lm-evaluation-harness.
|
||||||
|
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [ ] Dotrénujte vybrané modely na úlohu detekcie nenávistnej reči. Model bude vykonávať binárnu klasifikáciu.
|
||||||
|
- [x] Pripravte skript pre overenie LLM na úlohe rozpoznávanie nenávistnej reči. Pripravte postup pre overenie pomocu existujúceho frameworku pre overenie.
|
||||||
|
|
||||||
|
Stretnutie 3.10.2024
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Oboznámte sa s existujúcimi veľkými jazykovými modelmi - uzatvorenými aj otvorenými. Urobte si poznámky a napíšte prehľad.
|
||||||
|
- [x] Prejdite si knihu Dive Deep into Python 3.
|
||||||
|
- [x] Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.
|
||||||
|
- [x] Zistite čo je to "prompting", a "few shot learning". Napíšte si poznámky.
|
||||||
|
- [x] Oboznámte sa s OPEN AI Python API.
|
||||||
|
- [x] Nainštalujte si prostredie Anaconda.
|
||||||
|
- [x] Nainštalujte si Pytorch, a huggingface transformers a oboznámte sa ako funguje táto knižnica.
|
||||||
|
- [x] Nainštalujte si prostredie OLLAMA a vyskúšajte lokálne jazykové modely
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [x] Nainštalujte si knižnicu LangChain a pozrite si ako fungujú [ChatModely](https://python.langchain.com/docs/modules/model_io/chat/)
|
||||||
|
|
124
pages/students/2022/valerii_kutsenko/README.md
Normal file
@ -0,0 +1,124 @@
|
|||||||
|
---
|
||||||
|
title: Valerii Kutsenko
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [vp2024,bp2025]
|
||||||
|
tag: [rag,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2022
|
||||||
|
|
||||||
|
# Bakalárska práca 2025
|
||||||
|
|
||||||
|
Generovanie otázok zo zadaného textu.
|
||||||
|
|
||||||
|
|
||||||
|
Cieľ je vylepšiť slovenský model pre generovanie vektrovej reprezentácie. vylepšiť proces RAG: Generovanie jazyka s pomocou vyhľadávania -Retrieval augmented generation
|
||||||
|
|
||||||
|
Nové nápady:
|
||||||
|
|
||||||
|
- Vytvorte systém pre generovanie otázok o zadanom texte.
|
||||||
|
- Vytvorte umelo generovanú množinu otázok a odpovedí o liekoch.
|
||||||
|
- Pomocou umelej množiny zlepšite existujúci systém pre otázky a odpovede o liekoch.
|
||||||
|
|
||||||
|
Ako na to:
|
||||||
|
|
||||||
|
- Natrénujte generatívny model pre generovanie otázok. Použite existujúci skript a množinu SKQUAD.
|
||||||
|
- Určite, ktorá otázka je dobre vygenerovaná a ktorá nie. Tu môžete použiť: systém pre vyhľadávanie alebo neurónovú sieť pre otázky a odpovede. Ku otázke viete nájsť odpovede pomocou neurónovej siete. Výstupom by mala byť čo najkvalitnejšia množina otázok a dpovedí ku odsekom.
|
||||||
|
- Výstupom by mala byť umelo generovaná databáza otázok a odpovedí.
|
||||||
|
|
||||||
|
Stretnutie 18.10.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Natrénovaný model SlovakT5 Base. Skripty sú na [GITe](https://git.kemt.fei.tuke.sk/vk202uf/bp2024). Trénovanie funguje.
|
||||||
|
- Naštudované články o T5 a Falcon, napísané poznámky.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Doplnte vyhodnotenie modelu pomocu BLEU Skore. Ako testovaciu množinu použite testovaciu časť SkQUAD.
|
||||||
|
- Natrénujte aj iné modely: mt5-base, SlavicT5-base, umt5-base. Opíšte testovací scenár - ako ste dotrénovali model . Vyhodnotte ich v tabuľke. Do práce napíšte o týchto modeloch.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- SKúste natrénovať aj modely typu GPT. Tam bude treba upraviť skript na model typu GPT - SlovakMistral 7B. Titeo modely sú veľké. Budete potrebovať prístup na školský server. Budete potrebovať použiť mnetódu: quantization (bitsandbytes) a peft (parameter efficient fine tuning).
|
||||||
|
- Ako bude model dobrý, tak ho uverejníme na repoztári Huggingface Hub.
|
||||||
|
- Ak bude práca dobrá, skúsime prepracovať a urobiť článok na konferencii.
|
||||||
|
- V spolupráci Y. Leonov urobiť vyhodnotenie aj v medicínskej doméne.
|
||||||
|
- Skúsíme poprosiť doktorov o názor.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 27.9.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Prezereté repozitáre a články. Napísané poznámky.
|
||||||
|
- Vytvorený prázdny git repozitár.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zistite ako sa dotrénujú generatívne modely HuggingFace. Zistite čo je to Few Shot learning a *urobte si poznámky*.
|
||||||
|
- Prečítajte si článok o modele Falcon a napíšte ako funguje. Prečítajte si článok o modele T5 a napíšte ako funguje.
|
||||||
|
- Dotrénujte generatívny model na generovanie otázok podľa zadaného paragrafu. Na dotrénovanie použite databázu SK QUAD. Ako model použite Slovak T5 Base alebo Slovak Mistral 7 B.
|
||||||
|
- Oboznámte sa s Hugggingface API a OpenAI API. Na generovanie môžete použiť aj toto api.
|
||||||
|
- Skripty na dotrénovanie dávajte do GIT repozitára.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Zoberte databázu liekov a generujte otázky o liekoch - od Ing. K. Sopkovič, alebo O. Poiasnik.
|
||||||
|
- Možno bude treba použiť ChatGPT API a príklady z databázy SK QUAD.
|
||||||
|
- Možno bude treba dotrénovať Slovak Mistral 7B na inštrukcie.
|
||||||
|
|
||||||
|
Staré Úlohy:
|
||||||
|
|
||||||
|
- Zistite, aké sú možné prístupy ku generovaniu otázok pomocou generatívneho modelu a aké sú možné prístupy k overeniu vygenerovanej otázky.
|
||||||
|
- Pozrite si repozitár https://github.com/patil-suraj/question_generation
|
||||||
|
- Pozrite si repozitár https://github.com/gauthierdmn/question_generation
|
||||||
|
- Pozrite si článok https://telrp.springeropen.com/articles/10.1186/s41039-021-00151-1
|
||||||
|
- Oboznámte sa s DP Ondrej Megela a článok https://aclanthology.org/2023.rocling-1.20.pdf
|
||||||
|
- Oboznámte sa s knižnicou HF transformers - vyskúšajte si nejaký tutoriál.
|
||||||
|
- Zistite, ako funguje model T5.
|
||||||
|
- Pozrite si skript `generate/run_qg.py` v [repo](https://git.kemt.fei.tuke.sk/dano/slovakretrieval) a vyskúšajte ho.
|
||||||
|
- Čítajte súvisiace odborné články a robte si poznámky.
|
||||||
|
- Urobte si repozitár na git.kemt a dávajte tam Vaše skripty.
|
||||||
|
- Na experimenty použite https://colab.research.google.com/
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Staré Nápady:
|
||||||
|
- Možno pomocou vytvorenia-prekladu vlastnej trénovacej databázy.
|
||||||
|
- alebo pomocou nekontrolovaného učenia, reps. augmentácie alebo generovania.
|
||||||
|
- Alebo zber trénovacích dát z webového korpusu.
|
||||||
|
- Sústrediť sa na vektrovú reprezentáciu dokumentov?
|
||||||
|
|
||||||
|
Úlohy na semester - "nepovinné, oficiálne sa to začne na zimný semester 2024"
|
||||||
|
|
||||||
|
- Zistite čo je to Retrieval Augmented Generation a napíšte o tom správu.
|
||||||
|
- Naučte sa základy jazyka Python.
|
||||||
|
- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.
|
||||||
|
|
||||||
|
Stretnutie 9.5.24
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Naštudované Deep dive intoi Python a dl2ai, niečo o RAG.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Zistite, ako funguje [Sentence Transformers](https://sbert.net/). Pozrite si dokumentáciu. Vyskúšajte zopakovať príklady pre slovenské texty a so [slovenským modelom](https://huggingface.co/TUKE-DeutscheTelekom/slovakbert-skquad-mnlr).
|
||||||
|
- Urobe si poznámky.
|
||||||
|
|
||||||
|
Stretnutie 22.3.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Nainštalujte si prostredie Anaconda. Prejdite si knihu Dive Deep into Python 3.
|
||||||
|
- Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.
|
||||||
|
- Zistite ako funguje RAG. Zistite ako funguje ChatGPT. Zistite ako funguje vyhľadávanie pomocou SentenceTranformers. Napíšte o tom poznámky.
|
||||||
|
- Skúste si tento tutoriál o [LangChain](https://python.langchain.com/docs/get_started/quickstart)
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Nainštalujte si PrivateGPT.
|
64
pages/students/2022/vladyslav_yanchenko/README.md
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
---
|
||||||
|
title: Vladyslav Yanchenko
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [bp2025]
|
||||||
|
tag: [klaud]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2022
|
||||||
|
|
||||||
|
# Bakalárska práca 2025
|
||||||
|
|
||||||
|
Názov: Testovanie v klaudového riešenia na platforme Kuberntes
|
||||||
|
|
||||||
|
Vedúci: doc. Matúš Pleva PhD.
|
||||||
|
|
||||||
|
Nápad:
|
||||||
|
|
||||||
|
- Vytvoriť webovú aplikáciu s použitím Spring Boot, využitie klaudovej databázy Azure a klaudového úložiska. realizovať JWT
|
||||||
|
|
||||||
|
Stretnutie 8.11.2024
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Backend SpringBoot, frontend React-Next.js.
|
||||||
|
- Urobená základná autentifikácia pomocou HTTP Basic Auth.
|
||||||
|
- Vyskúšaná kontajnerizácia.
|
||||||
|
- Kódy sú na GitHUBe. https://github.com/MrSid333/bankapp.git
|
||||||
|
- Aktivované Azure a Azure PostgreSQL aj úložisko. Zatiaľ nie je prepojené. úložisko.
|
||||||
|
- Naštudované GITHUB CI-CD.
|
||||||
|
- Nainštalované minikube.
|
||||||
|
- Práca na textoch.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v otvorených úlohách.
|
||||||
|
- Vytvorte nasadenie aplikácie pomocou Kubernetes.
|
||||||
|
- Napíšte automatické testy a zostavte Github CI-CD pipeline.
|
||||||
|
- Zistite aké obmedzenia má GitHUB Pipeline.
|
||||||
|
- Píšte BP pošlite mi draft.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Vytvorte nasadenie Vašej aplikácie do Azure a skritpy pre nasadenie dajte na GitHUB. Dávajte pozor aby ste nezverejnili Vaše prístupové údaje.
|
||||||
|
- Napíšte článok do "online média" o CI CD v klaude vo forme tutoriálu pre študentov. Z tutoriálu sa študent dozvie, čo je to CI CD, ako to vytvoriť pre konkretny projekt na GITHUbe.
|
||||||
|
- Zostavte pipeline pomocou iného nástroja (Azure, Jenkins) a porovnajte ich.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 3.10.2024
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Preštudujte si platformu Kubernetes. Napíšte čo je to. Napíšte čo je to kontajnerizácia.
|
||||||
|
- [x] Nainštalujte si microk8s. Aktivujte si MS Azure a naučte sa to používať.
|
||||||
|
- [x] Vytvorte webovú aplikáciu, kotrá sa bude zkladať z viacerých mikroslužieb a bude využívať klaudové úložisko.
|
||||||
|
- Napíšte čo je to CI CD a na čo sa využíva. Zistitie aké CI CD nástroje existujú. Vyberte si vhodný nástroj. Napr. GIT HUB, aleo GitLAB, alebo Jenkins. Alebo použite pipeline z Azure.
|
||||||
|
- Ku aplikácii navrhnite niekoľko automatických testov.
|
||||||
|
- Zostavte CI CD Pipeline pre automatické zostavenie a testovanie aplikácie
|
||||||
|
|
||||||
|
|
||||||
|
|
109
pages/students/2022/yevhenii_leonov/README.md
Normal file
@ -0,0 +1,109 @@
|
|||||||
|
---
|
||||||
|
title: Yevhenii Leonov
|
||||||
|
published: true
|
||||||
|
taxonomy:
|
||||||
|
category: [vp2024,bp2025]
|
||||||
|
tag: [rag,nlp]
|
||||||
|
author: Daniel Hladek
|
||||||
|
---
|
||||||
|
|
||||||
|
|
||||||
|
rok začiatku štúdia: 2022
|
||||||
|
|
||||||
|
# Bakalárska práca 2025
|
||||||
|
|
||||||
|
|
||||||
|
Téma:
|
||||||
|
|
||||||
|
|
||||||
|
Generovanie slovenského jazyka s pomocou vyhľadávania
|
||||||
|
|
||||||
|
Predbežné zadanie:
|
||||||
|
|
||||||
|
1. Vypracujte prehľad metód a modelov generovania jezyka s pomocou vyhľadávania
|
||||||
|
2. Vyskúšajte a vyhodnotte vybranú metódu generovania jazyka s pomocou vyhľadávania.
|
||||||
|
|
||||||
|
|
||||||
|
Návrh na tému:
|
||||||
|
|
||||||
|
- Vyhodnotenie systémov RAG
|
||||||
|
|
||||||
|
Spolupráca Oleh Poiasnik
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Práca na úlohách z minulého stretnutia, vyskúšaný RAGAS.
|
||||||
|
- Nainštalovaný a vyskúšaný systém od p . Poiasnika.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pripravte "vzorovú" množinu na testovanie.
|
||||||
|
- Pripravte testovaciu množinu. Množina by sa mala skladať z čo najväčšieho množstva príkladov.
|
||||||
|
- Vyskúšajte testovaciu množinu pomocou RAGAS a modelov ktoré používa p. Poiasnik. Vyhodnotte modely pomocou množiny.
|
||||||
|
- Kódy dávajte na GIT (napr. branch alebo adresár p Poiasnik GIT).
|
||||||
|
- Pokračujte v písomných úlohách. Hľadajte články cez scholar a píšte si poznámky. Do BP.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- Pripravte (nakódujte, odkopírovať) postup vyhľadávania podobný ako "reálny systém", ale využíval RAGAS.
|
||||||
|
- Pripravte testovacie API pre RAG systém. Bude to funkcia alebo URL cez ktorú sa bude dať systém testovať.
|
||||||
|
- Pomocou metriky a množiny vyhodnotte reálny systém.
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 11.1.:
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Urobené poznámky na tému RAG
|
||||||
|
- Nainštalované PrivateGPT, Ollama na Windowse
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [x] Budeme využívať systém RAGAS. Nainštalujte si ho a vyskúšajte. Optimálne použite systém Anaconda-Linux. V anaconda využívajte virtuálne prostredia.
|
||||||
|
- [x] Naštudujte dokumentáciu a články https://docs.ragas.io/en/stable/index.html
|
||||||
|
- [ ] Vyhľadajte vedecké články na tému "retrieval augmented generation evaluation" a prečítajte si aj článok o "ragas". Použite google scholar. Napíšte si poznámky.
|
||||||
|
- [-] Zistite a opíšte aké metriky sa používajú. Ku každej metrike je potrebný odkaz na článok.
|
||||||
|
|
||||||
|
Zásobník úloh:
|
||||||
|
|
||||||
|
- [-] Zostavte množinu na vyhodnotenie RAG systému pre medicínsku oblasť. Množina bude vyjadrovať "testovací scenár" navštevy lekárne. V prvej fáze neriešime dialóg, ale otázky a odpovede.
|
||||||
|
- [ ] Napíšte príklady alebo použite generatívny model
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Vedecký projekt 2024
|
||||||
|
|
||||||
|
|
||||||
|
RAG: Generovanie jazyka s pomocou vyhľadávania -Retrieval augmented generation
|
||||||
|
|
||||||
|
|
||||||
|
Úlohy na semester:
|
||||||
|
|
||||||
|
- Zistite čo je to Retrieval Augmented Generation a napíšte o tom správu.
|
||||||
|
- Naučte sa základy jazyka Python.
|
||||||
|
- Podrobne si prejdite minimálne dva tutoriály.
|
||||||
|
- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.
|
||||||
|
- Nainštalujte si a vyskúšajte softvér PrivateGPT
|
||||||
|
|
||||||
|
Stretnutie 12.4.
|
||||||
|
|
||||||
|
Stav:
|
||||||
|
|
||||||
|
- Učenie sa Pythonu, nainštalovaná Anaconda.
|
||||||
|
- Urobené stručné poznámky o RAG o BERT a o GPT.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- Pokračujte v otvorených úlohách.
|
||||||
|
- Vyskúšajte systém OLLAMA. Keď to nejde na Windows, vyskúšajte Ubuntu WSL(2).
|
||||||
|
- Pracujte na "článku".
|
||||||
|
|
||||||
|
|
||||||
|
Stretnutie 22.3.
|
||||||
|
|
||||||
|
Úlohy:
|
||||||
|
|
||||||
|
- [-] Nainštalujte si prostredie Anaconda. Prejdite si knihu Dive Deep into Python 3.
|
||||||
|
- [-] Nainštalujte si PrivateGPT. Zistite ako funguje RAG. Zistite ako funguje ChatGPT. Zistite ako funguje vyhľadávanie pomocou SentenceTranformers. Napíšte o tom poznámky.
|
||||||
|
- [-] Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.
|
||||||
|
|
@ -7,25 +7,44 @@ taxonomy:
|
|||||||
author: Daniel Hladek
|
author: Daniel Hladek
|
||||||
---
|
---
|
||||||
|
|
||||||
# Chatbot
|
Navrhnite a vytvorte dialógový systém komunikujúci v slovenskom jazyku pre úlohu komunikácie občana s mestom.
|
||||||
|
|
||||||
Ciele: Vytvorenie demonštračnej aplikácie pre interaktívnu komunikáciu s
|
## Úlohy
|
||||||
automatom
|
|
||||||
|
- Zostavte bázu pravidiel pre systém RASA.
|
||||||
|
- Vyhodnoťte chatbota pre rôzne úlohy.
|
||||||
|
- Vytvorte a nasaďte webovú aplikáciu pre testovací prístup.
|
||||||
|
|
||||||
|
- Spracujte dáta o digitálnych služnách od mesta. Vytvorte z nich trénovaciu databázu.
|
||||||
|
- Identifikujte agendu ktorú by riešil chatbot.
|
||||||
|
- Identifikujte, ktoré časti pravidiel sa budú dať meniť.
|
||||||
|
- Vytvorte webovú aplikáciu pre úpravu bázy pravidiel a pretrénovanie chatbota.
|
||||||
|
- Integrujte chatbota s QA systémom.
|
||||||
|
|
||||||
## Zdroje
|
## Zdroje
|
||||||
|
|
||||||
- <https:%%//%%chatbotslife.com/how-you-can-build-your-first-chatbot-using-rasa-in-under-15-minutes-ce557ea52f2f>
|
- video kanál s [RASA tutoriálom](https://www.youtube.com/watch?v=rlAQWbhwqLA&list=PL75e0qA87dlHQny7z43NduZHPo6qd-cRc)
|
||||||
- <https:%%//%%medium.com/analytics-vidhya/building-a-simple-chatbot-in-python-using-nltk-7c8c8215ac6e>
|
- https://chatbotslife.com/how-you-can-build-your-first-chatbot-using-rasa-in-under-15-minutes-ce557ea52f2f
|
||||||
|
- https://medium.com/analytics-vidhya/building-a-simple-chatbot-in-python-using-nltk-7c8c8215ac6e
|
||||||
|
|
||||||
### Prostriedky
|
### Prostriedky
|
||||||
|
|
||||||
- [RASA toolbox](https://rasa.com/)
|
- [Repozitár s webovou aplikáciou](https://git.kemt.fei.tuke.sk/sh662er/rasa-flask-website)
|
||||||
- Slack(<https:%%//%%slack.com>) - ako rozhranie
|
- [Repozitár s chatbotom](https://git.kemt.fei.tuke.sk/sh662er/Rasa)
|
||||||
|
- [RASA toolbox](https://rasa.com/)
|
||||||
|
- Slack(<https:%%//%%slack.com>) - ako rozhranie
|
||||||
|
- Slovenský Spacy model https://github.com/hladek/spacy-skmodel
|
||||||
|
|
||||||
## Riešitelia
|
## Riešitelia
|
||||||
|
|
||||||
- Dmytro Ushatenko (Daniel Hládek), 19/20
|
- [Matej Ščišľak](/students/2021/matej_scislak)
|
||||||
- Jozef Olekšák (Stanislav Ondáš) 18/19 Riadenie dialógu na báze
|
- [Martin Šarišský](/students/2021/marin_sarissky)
|
||||||
|
|
||||||
|
## Predošlí riešitelia
|
||||||
|
|
||||||
|
- Bakalárska práca [Samuel Horáni](/students/2019/samuel_horani)
|
||||||
|
- Dmytro Ushatenko (Daniel Hládek), 19/20
|
||||||
|
- Jozef Olekšák (Stanislav Ondáš) 18/19 Riadenie dialógu na báze
|
||||||
štatických metód
|
štatických metód
|
||||||
|
|
||||||
## Existujúce riešenia
|
## Existujúce riešenia
|
||||||
@ -33,11 +52,3 @@ automatom
|
|||||||
- [KEMT Bot](https://kemt.fei.tuke.sk)
|
- [KEMT Bot](https://kemt.fei.tuke.sk)
|
||||||
- <https:%%//%%jobothq.slack.com/>
|
- <https:%%//%%jobothq.slack.com/>
|
||||||
|
|
||||||
## Riešiteľ 1
|
|
||||||
|
|
||||||
Zadanie:
|
|
||||||
|
|
||||||
1. Vypracujte úvod do problematiky systémov pre riadenie dialógu
|
|
||||||
2. Vypracujte prehľad používaných metód riadenia dialógu
|
|
||||||
3. Navrhnite a implementujte agenta pre zisťovanie informácií o katedre
|
|
||||||
KEM
|
|
||||||
|
@ -24,16 +24,46 @@ Plan:
|
|||||||
- Create small evaluation set in Slovak
|
- Create small evaluation set in Slovak
|
||||||
- Try multilingual/crosslingual approach. Possibility of machine translation.
|
- Try multilingual/crosslingual approach. Possibility of machine translation.
|
||||||
- Annotate a bigger Slovak Corpus
|
- Annotate a bigger Slovak Corpus
|
||||||
- Recognize and publish scientific contribution
|
- Recognize and publish scientific contribution
|
||||||
|
|
||||||
|
Future Tasks:
|
||||||
|
|
||||||
|
- Evaluate existing multilingual model. E.G. https://huggingface.co/Andrazp/multilingual-hate-speech-robacofi
|
||||||
|
- Translate existing English dataset into Slovak. Use OPUS English Slovak Marian NMT model. Train Slovak munolingual model.
|
||||||
|
- Train or finetune or prompt a large langauge model.
|
||||||
|
|
||||||
|
In progress tasks:
|
||||||
|
|
||||||
|
- Annotate a Twitter Dataset. Possible guidelines are: https://developers.perspectiveapi.com/s/about-the-api-training-data?language=en_US
|
||||||
|
- Annotate a Facebook Dataset. Use some other guidelines. e.g. sentence-level annotation, for context sensitive hate.
|
||||||
|
- Prepare existing Slovak Twitter dataaset, train evaluate a model.
|
||||||
|
|
||||||
|
Finished tasks:
|
||||||
|
|
||||||
|
- Perform preliminary experiments with HS detection (Bulburu)
|
||||||
|
- Prepare an anotation infrastructure for Facebook data annotation (Ferko)
|
||||||
|
- Gather Facebook data and prepare for annotation. (Ferko)
|
||||||
|
|
||||||
People:
|
People:
|
||||||
|
|
||||||
|
|
||||||
- Ján Staš
|
- Ján Staš
|
||||||
- Daniel Hládek
|
- Daniel Hládek
|
||||||
- Zuzana Sokolová
|
- Zuzana Sokolová
|
||||||
|
- [Vladimír Ferko](/students/2021/vladimir_ferko)
|
||||||
|
- [Tetiana Mohorian](/students/2022/tetiana_mohorian)
|
||||||
|
- [Patrik Pokrivčák](/students/2019/patrik_pokrivcak)
|
||||||
|
|
||||||
|
|
||||||
|
Former participants:
|
||||||
|
|
||||||
|
- [Sevval Bulburu](/interns/sevval_bulburu)
|
||||||
- [Manohar Gowdru Shridharu](/students/2021/manohar_gowdru_shridharu)
|
- [Manohar Gowdru Shridharu](/students/2021/manohar_gowdru_shridharu)
|
||||||
|
|
||||||
|
|
||||||
Links:
|
Links:
|
||||||
|
|
||||||
|
|
||||||
|
- https://europeanonlinehatelab.com/
|
||||||
- https://hatespeechdata.com/
|
- https://hatespeechdata.com/
|
||||||
- https://oznacuj-dezinfo.kinit.sk/
|
- https://oznacuj-dezinfo.kinit.sk/
|
@ -6,11 +6,14 @@ taxonomy:
|
|||||||
tag: [python]
|
tag: [python]
|
||||||
author: Daniel Hladek
|
author: Daniel Hladek
|
||||||
---
|
---
|
||||||
# Jazyk Python
|
# Práca s jazykom Python v prostredí Anaconda
|
||||||
|
|
||||||
Vhodný na spracovanie prirodzeného jazyka
|
Vhodný na spracovanie prirodzeného jazyka
|
||||||
|
|
||||||
|
|
||||||
|
Podobné prostredie si viete vytvoriť na Vašom počítači, na školskom servri alebo na Google Colab.
|
||||||
|
|
||||||
|
|
||||||
## Ako začať s Pythonom
|
## Ako začať s Pythonom
|
||||||
|
|
||||||
Prečítajte si
|
Prečítajte si
|
||||||
@ -50,6 +53,71 @@ conda activate mojeprostredie
|
|||||||
|
|
||||||
[Ťahák Anaconda](https://docs.conda.io/projects/conda/en/4.6.0/_downloads/52a95608c49671267e40c689e0bc00ca/conda-cheatsheet.pdf)
|
[Ťahák Anaconda](https://docs.conda.io/projects/conda/en/4.6.0/_downloads/52a95608c49671267e40c689e0bc00ca/conda-cheatsheet.pdf)
|
||||||
|
|
||||||
|
## Inštalácia Pytorch s podporou CUDA do prostredia Anaconda
|
||||||
|
|
||||||
|
Na inštaláciu ľubovoľnej verzie CUDA a Pytorch nepotrebujete admin práva.
|
||||||
|
Verzia Python, CUDA a Pytorch musí spolu sedieť.
|
||||||
|
Najnovšiu verziu všetkého potrebného stiahnete zo stránky [Pytorch](https://pytorch.org/)
|
||||||
|
|
||||||
|
Napríklad takto:
|
||||||
|
|
||||||
|
```
|
||||||
|
conda install python=3.10
|
||||||
|
conda install pytorch pytorch-cuda=11.8 -c pytorch -c nvidia
|
||||||
|
```
|
||||||
|
|
||||||
|
Inštalácia bude chvíľu trvať.
|
||||||
|
|
||||||
|
Overte si že CUDA funguje správne:
|
||||||
|
|
||||||
|
```
|
||||||
|
python
|
||||||
|
>>> import torch
|
||||||
|
>>> torch.cuda.is_available()
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Spustenie dlhších procesov na GPU
|
||||||
|
|
||||||
|
Na servri QUADRO sú k dispozícii 4 karty NVIDIA 1080, 12 GB RAM.
|
||||||
|
|
||||||
|
Overte si, ktoré karty sú voľné:
|
||||||
|
|
||||||
|
```
|
||||||
|
nvidia-smi
|
||||||
|
```
|
||||||
|
|
||||||
|
Pri trénovaní si zvoľte na ktorej karte budete trénovať pomocou premennej prostredia `CUDA_VISIBLE_DEVICES`.
|
||||||
|
|
||||||
|
Napr.
|
||||||
|
|
||||||
|
```
|
||||||
|
CUDA_VISIBLE_DEVICES=2,3 python train.py
|
||||||
|
```
|
||||||
|
|
||||||
|
spustí trénovanie na 3. a na 4. karte. Prosím vždy si vyberte toľko koľko potrebujete a zbytočne nebolujte karty pre druhých.
|
||||||
|
|
||||||
|
|
||||||
|
Dlhšie procesy môžete manažovať cez príkaz `tmux`.
|
||||||
|
|
||||||
|
Najprv si spustíte nové sedenie:
|
||||||
|
|
||||||
|
```
|
||||||
|
tmux
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
CTRL+B C si viete urobiť nové okno.
|
||||||
|
CTRL+B B prepnete okno.
|
||||||
|
CTRL+B N prepnete okno.
|
||||||
|
CTRL+B D vypnete tmux, ale procesy budú stále bežať aj keď sa odhlásite.
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
tmux a -t 0
|
||||||
|
```
|
||||||
|
|
||||||
|
obnovíte posledné sedenie
|
||||||
|
|
||||||
## Virtualenv
|
## Virtualenv
|
||||||
|
|
||||||
@ -90,4 +158,3 @@ Vymazanie virtuálneho prostredia
|
|||||||
rm -r venv
|
rm -r venv
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
|