From fe79c9c2ed0211b9674a38b7590882cca46dceba Mon Sep 17 00:00:00 2001 From: jp170na Date: Wed, 3 Jun 2026 21:04:03 +0200 Subject: [PATCH] Parser a Fast API --- .gitignore | 5 + app/__init__.py | 0 app/main.py | 289 + data/chunks.json | 15761 ++++++++++++++++++++++++++++++++ data/documents.json | 4482 +++++++++ requirements.txt | 23 + scripts/build_chunks.py | 183 + scripts/build_sqlite_index.py | 167 + scripts/scan_zpwiki.py | 139 + scripts/search_chunks.py | 90 + scripts/search_db.py | 271 + 11 files changed, 21410 insertions(+) create mode 100644 .gitignore create mode 100644 app/__init__.py create mode 100644 app/main.py create mode 100644 data/chunks.json create mode 100644 data/documents.json create mode 100644 requirements.txt create mode 100644 scripts/build_chunks.py create mode 100644 scripts/build_sqlite_index.py create mode 100644 scripts/scan_zpwiki.py create mode 100644 scripts/search_chunks.py create mode 100644 scripts/search_db.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bb878bf --- /dev/null +++ b/.gitignore @@ -0,0 +1,5 @@ +.venv/ +__pycache__/ +*.pyc +data/*.sqlite +data/*.db diff --git a/app/__init__.py b/app/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/app/main.py b/app/main.py new file mode 100644 index 0000000..b4a337b --- /dev/null +++ b/app/main.py @@ -0,0 +1,289 @@ +from pathlib import Path +import sqlite3 +import re +import unicodedata +from collections import Counter + +from fastapi import FastAPI +from pydantic import BaseModel, Field + + +DB_FILE = Path("data/zp_index.sqlite") + + +TECHNICAL_TERMS = { + "rag", + "agent", + "graph", + "knowledge", + "chatbot", + "nlp", + "llm", + "lm", + "openwebui", + "docker", + "webhook", + "database", + "db", + "neo4j", + "python", + "search", + "retrieval", + "generation", + "embedding", + "vector", + "vectors", + "langchain", + "graphrag", + "qa", + "question", + "answer", + "cloud", + "api", +} + + +app = FastAPI( + title="ZP Agent API", + description="API pre vyhľadávanie v repozitári záverečných prác zpwiki.", + version="0.1.0", +) + + +class SearchRequest(BaseModel): + query: str = Field(..., min_length=1) + limit: int = Field(default=10, ge=1, le=50) + + +class SearchResult(BaseModel): + score: int + chunk_id: str + document_path: str + source_url: str + title: str | None + author: str | None + chunk_index: int + categories: list[str] + tags: list[str] + text: str + text_length: int + + +def normalize_text(text: str) -> str: + text = text.lower() + text = text.replace("_", " ") + text = text.replace("/", " ") + text = text.replace("-", " ") + + text = unicodedata.normalize("NFKD", text) + text = "".join(ch for ch in text if not unicodedata.combining(ch)) + + text = re.sub(r"[^a-z0-9]+", " ", text) + return text.strip() + + +def tokenize(text: str) -> list[str]: + text = normalize_text(text) + return [word for word in text.split() if len(word) >= 2] + + +def detect_search_mode(query_tokens: list[str]) -> str: + if not query_tokens: + return "topic" + + has_technical_term = any(token in TECHNICAL_TERMS for token in query_tokens) + + if len(query_tokens) == 2 and not has_technical_term: + return "person" + + return "topic" + + +def score_tokens(query_tokens: list[str], field_tokens: list[str], weight: int) -> int: + counts = Counter(field_tokens) + score = 0 + + for token in query_tokens: + score += counts.get(token, 0) * weight + + return score + + +def contains_all_tokens(query_tokens: list[str], field_tokens: list[str]) -> bool: + return all(token in field_tokens for token in query_tokens) + + +def get_tags(conn: sqlite3.Connection, chunk_id: str) -> list[str]: + rows = conn.execute( + "SELECT tag FROM chunk_tags WHERE chunk_id = ?", + (chunk_id,), + ).fetchall() + + return [row[0] for row in rows] + + +def get_categories(conn: sqlite3.Connection, chunk_id: str) -> list[str]: + rows = conn.execute( + "SELECT category FROM chunk_categories WHERE chunk_id = ?", + (chunk_id,), + ).fetchall() + + return [row[0] for row in rows] + + +def person_match(query_tokens: list[str], item: dict) -> bool: + title_tokens = tokenize(item.get("title") or "") + path_tokens = tokenize(item.get("document_path") or "") + author_tokens = tokenize(item.get("author") or "") + text_tokens = tokenize(item.get("text") or "") + + if contains_all_tokens(query_tokens, title_tokens): + return True + + if contains_all_tokens(query_tokens, path_tokens): + return True + + if contains_all_tokens(query_tokens, author_tokens): + return True + + if contains_all_tokens(query_tokens, text_tokens): + return True + + return False + + +def score_item(query: str, query_tokens: list[str], item: dict, mode: str) -> int: + title = item.get("title") or "" + path = item.get("document_path") or "" + author = item.get("author") or "" + text = item.get("text") or "" + tags = item.get("tags") or [] + categories = item.get("categories") or [] + + title_tokens = tokenize(title) + path_tokens = tokenize(path) + author_tokens = tokenize(author) + text_tokens = tokenize(text) + tag_tokens = tokenize(" ".join(tags)) + category_tokens = tokenize(" ".join(categories)) + + score = 0 + + if mode == "person": + score += score_tokens(query_tokens, title_tokens, 30) + score += score_tokens(query_tokens, path_tokens, 30) + score += score_tokens(query_tokens, author_tokens, 15) + score += score_tokens(query_tokens, text_tokens, 2) + + if contains_all_tokens(query_tokens, title_tokens): + score += 100 + + if contains_all_tokens(query_tokens, path_tokens): + score += 100 + + if contains_all_tokens(query_tokens, author_tokens): + score += 60 + + return score + + score += score_tokens(query_tokens, title_tokens, 12) + score += score_tokens(query_tokens, path_tokens, 12) + score += score_tokens(query_tokens, tag_tokens, 10) + score += score_tokens(query_tokens, category_tokens, 6) + score += score_tokens(query_tokens, author_tokens, 3) + score += score_tokens(query_tokens, text_tokens, 2) + + normalized_query = normalize_text(query) + normalized_title = normalize_text(title) + normalized_path = normalize_text(path) + + if normalized_query and normalized_query in normalized_title: + score += 30 + + if normalized_query and normalized_query in normalized_path: + score += 30 + + matched_title_tokens = sum(1 for token in query_tokens if token in title_tokens) + matched_path_tokens = sum(1 for token in query_tokens if token in path_tokens) + + if query_tokens and matched_title_tokens == len(query_tokens): + score += 25 + + if query_tokens and matched_path_tokens == len(query_tokens): + score += 25 + + return score + + +def make_source_url(document_path: str) -> str: + clean_path = document_path.replace("pages/", "").replace("/README.md", "") + return f"https://zp.kemt.fei.tuke.sk/{clean_path}" + + +def search_database(query: str, limit: int) -> tuple[str, list[dict]]: + if not DB_FILE.exists(): + raise FileNotFoundError(f"Databáza neexistuje: {DB_FILE}") + + query_tokens = tokenize(query) + mode = detect_search_mode(query_tokens) + + conn = sqlite3.connect(DB_FILE) + + rows = conn.execute(""" + SELECT chunk_id, document_path, title, author, chunk_index, text, text_length + FROM chunks + """).fetchall() + + results = [] + + for row in rows: + chunk_id, document_path, title, author, chunk_index, text, text_length = row + + item = { + "chunk_id": chunk_id, + "document_path": document_path, + "title": title, + "author": author, + "chunk_index": chunk_index, + "text": text, + "text_length": text_length, + "tags": get_tags(conn, chunk_id), + "categories": get_categories(conn, chunk_id), + } + + if mode == "person" and not person_match(query_tokens, item): + continue + + score = score_item(query, query_tokens, item, mode) + + if score > 0: + item["score"] = score + item["source_url"] = make_source_url(document_path) + results.append(item) + + conn.close() + + results.sort(key=lambda item: item["score"], reverse=True) + + return mode, results[:limit] + + +@app.get("/health") +def health(): + return { + "status": "ok", + "database_exists": DB_FILE.exists(), + "database_path": str(DB_FILE), + } + + +@app.post("/search") +def search(request: SearchRequest): + mode, results = search_database(request.query, request.limit) + + return { + "query": request.query, + "mode": mode, + "count": len(results), + "results": results, + } diff --git a/data/chunks.json b/data/chunks.json new file mode 100644 index 0000000..a40c076 --- /dev/null +++ b/data/chunks.json @@ -0,0 +1,15761 @@ +[ + { + "chunk_id": "pages/interns/bogdan_paul_chis/README.md::chunk-0", + "document_path": "pages/interns/bogdan_paul_chis/README.md", + "title": "Bogdan Paul Chiș", + "categories": [ + "erasmus" + ], + "tags": [ + "nlp", + "ie", + "rag", + "medical" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "ERASMUS Intern Spring 2026, 20 March - 21 May (62 days)\n\nTopic:\n\n(multilingual) Triplet extraction from medical data\n\nGoal:\n\n- Construct a knowledge graph from medical package inserts in multiple languages\n- Utilize the graph in an intelligent agent that recommends medication.\n\nTasks:\n\n- Learn intelligent agents and generative models - OpenAI API, Agent frameworks, RAG systems.\n- Learn about knowledge graphs and GraphRAG. Read several research papers.\n- Find several existing drug knowledge databases. Identify possible entities and relations.\n- Prepare a Python based workflow, use git code repository\n- Try Light RAG - Simple RAG. \n- Scrape package inserts and parse the data.\n- Index the data and write a script that extracts a knowledge graph from data.\n- Visualize the graph\n- Prepare an agent that utilizes the unstructured data and graph-data.\n- Evaluate the agent using DeepEval or RAGAS.\n- Write a report\n- Put all code to GIT\n\nMeeting 18.5.2026\n\nState:\n\nAll tasks finished.\n\nRepository with outputs:\n\nhttps://github.com/chis-facultate/erasmus-kosice", + "text_length": 1063 + }, + { + "chunk_id": "pages/interns/cesar_gutierrez/README.md::chunk-0", + "document_path": "pages/interns/cesar_gutierrez/README.md", + "title": "Cesar Abascal Gutierrez", + "categories": [ + "iaeste" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "## Named entity annotations\n\nIntern, probably summer 2019\n\nCesar Abascal Gutierrez ", + "text_length": 110 + }, + { + "chunk_id": "pages/interns/cesar_gutierrez/README.md::chunk-1", + "document_path": "pages/interns/cesar_gutierrez/README.md", + "title": "Cesar Abascal Gutierrez", + "categories": [ + "iaeste" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Goals\n\n - Be able to recognize unknown named entities\n - Create a manually annotated training set from speech transcripts\n - Propose an annotation schema", + "text_length": 159 + }, + { + "chunk_id": "pages/interns/cesar_gutierrez/README.md::chunk-2", + "document_path": "pages/interns/cesar_gutierrez/README.md", + "title": "Cesar Abascal Gutierrez", + "categories": [ + "iaeste" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Plan\n\n - Convert speech transcripts into a training set\n - Train and evaluate classifier\n - Establish manual annotation \n - Select unannotated data", + "text_length": 154 + }, + { + "chunk_id": "pages/interns/cesar_gutierrez/README.md::chunk-3", + "document_path": "pages/interns/cesar_gutierrez/README.md", + "title": "Cesar Abascal Gutierrez", + "categories": [ + "iaeste" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "### Data preparation\n\nInput: Transcriber transcripts with inconsistent annotations\n\n``` \n * First small letter: regular word\n * Capital: named entity\n * ''^^'': faoreign word\n * ''@'': noise\n * ''_'': multi word expression\n * ''/'': pronuncation\n```\n\nOutput: A file that can be read by `spacy convert`", + "text_length": 301 + }, + { + "chunk_id": "pages/interns/cesar_gutierrez/README.md::chunk-4", + "document_path": "pages/interns/cesar_gutierrez/README.md", + "title": "Cesar Abascal Gutierrez", + "categories": [ + "iaeste" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## People\n\n- Cesar Abascal Gutierrez \n- Kyryl Kobzar\n- Ediz Morochovič", + "text_length": 97 + }, + { + "chunk_id": "pages/interns/cesar_gutierrez/README.md::chunk-5", + "document_path": "pages/interns/cesar_gutierrez/README.md", + "title": "Cesar Abascal Gutierrez", + "categories": [ + "iaeste" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Tools\n\n``` \n * Machine learning : https://spacy.io/usage/training\n * Manual Annotation : https://prodi.gy/\n```", + "text_length": 113 + }, + { + "chunk_id": "pages/interns/oliver_pejic/README.md::chunk-0", + "document_path": "pages/interns/oliver_pejic/README.md", + "title": "Oliver Pejic", + "categories": [ + "iaeste" + ], + "tags": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "Oliver Pejic\n\nIAESTE Intern Summer 2024, 12 weeks in August, September and October.\n\nGoal:\n \n- Help with the [Hate Speech Project](/topics/hatespeech)\n- Help with evaluation of sentence transformer models using toolkit [MTEB](https://github.com/embeddings-benchmark/mteb) \n\nFinal Tasks:\n\n- Prepare an MTEB evaluation task for [Slovak HATE speech](https://huggingface.co/datasets/TUKE-KEMT/hate_speech_slovak).\n- Prepare an MTEB evaluation task for [Slovak question answering](https://huggingface.co/datasets/TUKE-KEMT/retrieval-skquad).\n- [Machine translate](https://huggingface.co/google/madlad400-3b-mt) an SBERT evaluation set for multiple slavic languages.\n- Write a short scientific paper with results.\n\nMeeting 3.10.:\n\nState:\n\n- Prepared a pull request for Retrieval SK Quad.\n- Prepared a pull request for Hate Speech Slovak.\n\nTasks:\n\n- Make the pull request compatible with the MTEB Contribution guidelines. Discuss it when it is done.\n- Submit pull requests to MTEB project.\n- Machine Translate a database (HotpotQA, DB Pedia, FEVER) . Pick a database that is short, because translation might be slow.\n\nNon priority tasks:\n\n- Prepare databse and subnit it to HuggingFace Hub.\n- Prepare a MTE", + "text_length": 1200 + }, + { + "chunk_id": "pages/interns/oliver_pejic/README.md::chunk-1", + "document_path": "pages/interns/oliver_pejic/README.md", + "title": "Oliver Pejic", + "categories": [ + "iaeste" + ], + "tags": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "te a database (HotpotQA, DB Pedia, FEVER) . Pick a database that is short, because translation might be slow.\n\nNon priority tasks:\n\n- Prepare databse and subnit it to HuggingFace Hub.\n- Prepare a MTEB PR for the databse.\n\nMeeting 3.9:\n\nState: Studied MTEB framework and transformers.\n\nTasks:\n\n- Prepare and try MTEB evaluation tasks for the database. For evaluation you can try me5-base model. \n- Make a fork of MTEB and do necessary modification, including the documentation references for the task.\n- Prepare 2 GITHUB pull requests for the databases, preliminary BEIR script given.\n\nFuture tasks:\n\n- Prepare a machine translation system to create another slovak/multilingual evaluation task from English task. \n\nPreparation (7.8.2024):\n\n- Get familiar with [SentenceTransformer](https://sbert.net/) framework, study fundamental papers and write down notes.\n- Get familiar with [MTEB](https://github.com/embeddings-benchmark/mteb) evaluation framework.\n- Prepare a working environment on Google Colab or on school server or Anaconda.\n- Get familiar with [existing finetuning scripts](https://git.kemt.fei.tuke.sk/dano/slovakretrieval).", + "text_length": 1138 + }, + { + "chunk_id": "pages/interns/sevval_bulburu/README.md::chunk-0", + "document_path": "pages/interns/sevval_bulburu/README.md", + "title": "Sevval Bulburu", + "categories": [ + "iaeste" + ], + "tags": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "Sevval Bulburu\n\nIAESTE Intern Summer 2023, two months\n\nGoal: Help with the [Hate Speech Project](/topics/hatespeech)\n\nMeeting 12.10.2023\n\n[Github Repo with results](https://github.com/sevvalbulburu/Hate_Speech_Detection_Slovak)\n\nState:\n\n- 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.\n- 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.\n- Tried SMOTE upsampling, it did not work.\n- Is date and user name an important feature?\n- tried some grid search for hyperparameter of the neural network - learning rate, dropout, epoch size, batch size. Batch size 64 no good.\n- Tried multilingal models for Slovak dataset (cnerg), result are not good.\n\nTasks:\n\n- 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 al", + "text_length": 1200 + }, + { + "chunk_id": "pages/interns/sevval_bulburu/README.md::chunk-1", + "document_path": "pages/interns/sevval_bulburu/README.md", + "title": "Sevval Bulburu", + "categories": [ + "iaeste" + ], + "tags": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "asks:\n\n- 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.\n\nIdeas for a paper:\n\nPossible names:\n\n - \"Data set balancing for Multilingual Hate Speech Detection\"\n - \"BERT embeddings for HS Detection in Low Resource Languages\" (Turkish and Slovak).\n\n(Possible) Tasks for paper:\n\n- Create a shared draft document, e.g. on Overleaf or Google Doc\n- Write a good introduction and literature overview (Zuzka).\n- Try 2 or 3 class Softmax Layer for neural network.\n- Change the dataset for 3 class classification.\n- Prepare classifier for Slovak, English, Turkish and for multiple BERT models. Try to use multilingual BERT model for baseline embeddings.\n- Measure the effect of balancing the dataset by generation of additional examples.\n- Summarize experiments in tables.\n\nMeeting 5.9.2023\n\nState:\n\n- Proposed own Flask application\n- Created Django application with data model https://github.com/hladek/hate-annot\n\nTasks:\n\nMeeting 22.8.2023\n\nState:\n\n- Familiar with Python, Anaconda, Tensorflow, AI pro", + "text_length": 1200 + }, + { + "chunk_id": "pages/interns/sevval_bulburu/README.md::chunk-2", + "document_path": "pages/interns/sevval_bulburu/README.md", + "title": "Sevval Bulburu", + "categories": [ + "iaeste" + ], + "tags": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "oposed own Flask application\n- Created Django application with data model https://github.com/hladek/hate-annot\n\nTasks:\n\nMeeting 22.8.2023\n\nState:\n\n- Familiar with Python, Anaconda, Tensorflow, AI projects\n- created account at idoc.fei.tuke.sk and installed anaconda.\n- Continue with previous open tasks.\n- Read a website and pick a dataset from https://hatespeechdata.com/\n- Evaluate (calculate p r f1) existing multilingual model. E.G. https://huggingface.co/Andrazp/multilingual-hate-speech-robacofi with any data\n- Get familiar with Django.\n\nNotes: \n\n- ssh bulbur@idoc.fei.tuke.sk\n- nvidia-smi command to check status of GPU.\n- 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.\n- Use WSL2 to have local linux just to play.\n\nTasks:\n\n- [ ] 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.\n- [ ] Get familiar with the basic tools: Huggingface Transform", + "text_length": 1200 + }, + { + "chunk_id": "pages/interns/sevval_bulburu/README.md::chunk-3", + "document_path": "pages/interns/sevval_bulburu/README.md", + "title": "Sevval Bulburu", + "categories": [ + "iaeste" + ], + "tags": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": ". Find out how can we use Transformer neural networks to detect and categorize hate speech in internet comments created by random people.\n- [ ] 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.\n\n- [x] get familiar with Prodi.gy annotation tool.\n- [-] Set up web-based annotation environment for students (open, cooperation with [Vladimir Ferko](/students/2021/vladimir_ferko) ).\n\nIdeas for annotation tools:\n\n- https://github.com/UniversalDataTool/universal-data-tool\n- https://www.johnsnowlabs.com/top-6-text-annotation-tools/\n- https://app.labelbox.com/\n- https://github.com/recogito/recogito-js\n- https://github.com/topics/text-annotation?l=javascript\n\nFuture tasks (to be decided):\n\n- Translate existing English dataset into Slovak. Use OPUS English Slovak Marian NMT model. Train Slovak munolingual model.\n- Prepare existing Slovak Twitter dataaset, train evaluate a model.", + "text_length": 1041 + }, + { + "chunk_id": "pages/interns/yussef_ressaissi/README.md::chunk-0", + "document_path": "pages/interns/yussef_ressaissi/README.md", + "title": "Youssef Ressaissi", + "categories": [ + "iaeste" + ], + "tags": [ + "summarization", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "IAESTE Intern Summer 2025, 1.7. - 31.8.2025\n\nGoal: Evaluate and improve language models for summarization in Slovak medical or legal domain.\n\nResults:\n\n- [Report](https://git.kemt.fei.tuke.sk/yr804he/summarization25/src/branch/main/)Evaluating%20and%20Improving%20Language%20Models%20for%20Summarization%20in%20the%20Slovak%20Medical%20Domain.pdf\n- [Repo, Počítanie objektívnych metrík](https://git.kemt.fei.tuke.sk/yr804he/summarization25)\n- Dotrénovanie Gemma, Slovak Mistral 7b na sumarizáciu: https://git.kemt.fei.tuke.sk/yr804he/summarization25/src/branch/google/gemma-3-4b-it-finetuned\n- https://git.kemt.fei.tuke.sk/yr804he/summarization25/src/branch/llama3-8b-lora\n- https://git.kemt.fei.tuke.sk/yr804he/summarization25/src/branch/mixtral-finetuning\n\nTasks:\n\n1. Get familiar with basic tools \n - and prepare working environment: HF transformers, datasets, lm-evaluation-harness, HF trl\n - Read several recent papers about summarization using LLM and write a report.\n - Get familiar how to perform and evaluate document summarization using language models in Slovak.\n2. Make a comparison experiment\n - Pick summarization datasets and models. Evaluate several models for evaluation using R", + "text_length": 1200 + }, + { + "chunk_id": "pages/interns/yussef_ressaissi/README.md::chunk-1", + "document_path": "pages/interns/yussef_ressaissi/README.md", + "title": "Youssef Ressaissi", + "categories": [ + "iaeste" + ], + "tags": [ + "summarization", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "perform and evaluate document summarization using language models in Slovak.\n2. Make a comparison experiment\n - Pick summarization datasets and models. Evaluate several models for evaluation using ROUGE and BLEU metrics.\n - https://github.com/slovak-nlp/resources\n - Describe the experiments. Summarize results in a table. Describe the results. \n3. Improve performance of a languge model. \n - Use more data. Prepare a domain-oriented dataset and finetune a model. Maybe generate artificial data to imporve summarization.\n - Run new expriments and write down the results.\n4. Report and disseminate\n - Prepare a final report with analysis, experiments and conclusions.\n - Publish the fine-tuned models in HF HUB. Publish the paper from the project.\n\nMeeting 25.8.2025\n\nState:\n\n- Fine tuned several models - Slovak Mistral, \n- HPLT and Gemma 3 looks the best\n\nTasks:\n\n- Finish Report\n- Define the task that we solved.\n- List models, Describe the datasets, experimental setup - type of finetuning, type of evaluation.\n- put results in a table for each model / zero shot performance / manual evaluation / finetuning performance.\n- describe the created scripts.\n- write down a conclustion. What did", + "text_length": 1199 + }, + { + "chunk_id": "pages/interns/yussef_ressaissi/README.md::chunk-2", + "document_path": "pages/interns/yussef_ressaissi/README.md", + "title": "Youssef Ressaissi", + "categories": [ + "iaeste" + ], + "tags": [ + "summarization", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": ", type of evaluation.\n- put results in a table for each model / zero shot performance / manual evaluation / finetuning performance.\n- describe the created scripts.\n- write down a conclustion. What did we learn? What new did we discover?\n- put script and report to the git repository\n\nMeeting 19.8.\n\nState:\n\n- Fine tuned Slovak Mistral 7B\n- Tried Llama3 7B - results look ok, but MIstral is Better.\n- Tried gpt-oss, but it does not work because of dependencies.\n- Work on preliminary final report.\n- ROUGE score is not good for abstractive summarization.\n- The best way to evaluate so far is to see it in person.\n\nTasks:\n\n- Try to fine tune other models. 'google/gemma-3-4b-it, HPLT/hplt2c_slk_checkpoints Qwen/Qwen3-4B'. Results wil be in different branches of the repository.\n- Try to automatically evaluate the results using a large LLM. Read some papers about it. Prepare a script using ollama and gpt-oss-20B.\n- Work on the final report.\n \n\nMeeting 4.8.\n\nState:\n\n- Tested LMs with ROUGE metrics, most models got 4-5 ROGUE, facebook/mbart-large-50 got 17 (trained for translation).\n- In my opinion, large-50 is not good for finetuning, because it is already fine tuned for translation.\n- no finet", + "text_length": 1200 + }, + { + "chunk_id": "pages/interns/yussef_ressaissi/README.md::chunk-3", + "document_path": "pages/interns/yussef_ressaissi/README.md", + "title": "Youssef Ressaissi", + "categories": [ + "iaeste" + ], + "tags": [ + "summarization", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "most models got 4-5 ROGUE, facebook/mbart-large-50 got 17 (trained for translation).\n- In my opinion, large-50 is not good for finetuning, because it is already fine tuned for translation.\n- no finetuning done yet. \n\nTasks:\n\n- Try evaluate google/flan-t5-large, kiviki/mbart-slovaksum-large-sum and similar models. These should be already working.\n- continue working on finetuning t5 or Mbart models, but ask when you are stuck. Use hf examples script on summarization\n\nFuture tasks:\n\n- use LLMS (open or closed) and evaluate (ROUGE) summarization without fine-tuning on slovak legal data set\n- install lm-eval-harness, learn it, prepare and run task for slovak summarization\n\nMeeting 13.8.2025\n\nState:\n\n- Managed to fine-tune Slovak Mistral-7B on Legal documents. One epoch is enough. \n- Ditched T5 pipeline\n\nTasks:\n\n- try to fine tune some different llm and compare the results.\n- try to fine tune with the news dataset.\n- prepare a table - tables with results\n- compare with zero- shot scenario (with various models)\n- dont forget to put scripts on GIT.\n\nFuture task:\n\n- Find the optimal hyperparameters.\n- Write the technical report, where you summarize methods, experiments and results.\n\nMeetin", + "text_length": 1200 + }, + { + "chunk_id": "pages/interns/yussef_ressaissi/README.md::chunk-4", + "document_path": "pages/interns/yussef_ressaissi/README.md", + "title": "Youssef Ressaissi", + "categories": [ + "iaeste" + ], + "tags": [ + "summarization", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "with various models)\n- dont forget to put scripts on GIT.\n\nFuture task:\n\n- Find the optimal hyperparameters.\n- Write the technical report, where you summarize methods, experiments and results.\n\nMeeting 24.7.\n\nState:\n\n- Working custom environment with JupyterNotebook\n- Fine-tuning mbart, results are not great\n\nTasks:\n\n- Try T5 based models: slovak t5-base, umt5, mt5, flan-t5,\n- Zero shot-evaluate LLMs on news and legal data.\n- Find a way to fine-tune LLM for summarization.\n- Fine-tune LLM for summarization.\n\nMeeting 17.7.2025:\n\nState:\n\n- Studying of the task, metrics (ROUGE,BLEU)\n- Loaded a model. preprocessed a dataset, evaluated a model\n- loaded more models, used SlovakSum, generated summarization with four model and compare them with ROUGE and BLEU (TUKE-KEMT/slovak-t5-base, google/mt5-small, google/mt5-base, facebook/mbart-large-50)\n- the comparison is without fine tuning (zero shot), for far, the best is MBART-large\n- working on legal dataset \"dennlinger/eur-lex-sum\", \n- notebooks are on the kemt git\n\nTasks:\n\n- Prepare \"mango.kemt.fei.tuke.sk\" workflow\n- Finetune an existing models and evaluate it. Use News and Legal datasets\n- Try mbart-large, flan-t5-large, slovak-t5-base,", + "text_length": 1199 + }, + { + "chunk_id": "pages/interns/yussef_ressaissi/README.md::chunk-5", + "document_path": "pages/interns/yussef_ressaissi/README.md", + "title": "Youssef Ressaissi", + "categories": [ + "iaeste" + ], + "tags": [ + "summarization", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "s are on the kemt git\n\nTasks:\n\n- Prepare \"mango.kemt.fei.tuke.sk\" workflow\n- Finetune an existing models and evaluate it. Use News and Legal datasets\n- Try mbart-large, flan-t5-large, slovak-t5-base, google/t5-v1_1-large\n- Describe the experimental setup, prepare tables with results.\n\nFuture tasks:\n\n- Try prompting LLM and evaluation of the results. We need to pick LLM with SLovak Support\n- Finetune an LLM to summarize\n- Use medical data (after they are ready).\n- Prepare a detailed report (to be converted into a paper).", + "text_length": 525 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/README.md::chunk-0", + "document_path": "pages/students/2016/darius_lindvai/README.md", + "title": "Dárius Lindvai", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Dárius Lindvai\nRok začiatku štúdia: 2016\n\nRepozitár so [zdrojovými kódmi](https://git.kemt.fei.tuke.sk/dl874wn/dp2021)\n\nNázov: Obnovenie interpunkcie pomocou hlbokých neurónových sietí\n\n1. Vypracujte prehľad metód na obnovenie interpunkcie pomocou neurónových sietí.\n2. Vyberte vhodnú metódu obnovenia interpunkcie pomocou neurónových sietí.\n3. Pripravte množinu dát na trénovanie neurónovej siete, navrhnite a vykonajte sadu experimentov s rôznymi parametrami.\n4. Vyhodnoťte experimenty a navrhnite možné zlepšenia.", + "text_length": 518 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/README.md::chunk-1", + "document_path": "pages/students/2016/darius_lindvai/README.md", + "title": "Dárius Lindvai", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Diplomový projekt 2 2020\n\nStretnutie 25.1.2021\n\nStav:\n\n- Vypracovaný report experimentov\n- Prezentácia\n\nDo ďalšieho stretnutia:\n\n- Dopísať časť kde opíšete Vašu metódu\n- Rozšíriť teoretickú časť - zistite a napíšte čo je Transformer, BERT, RNN a Adversarial (kontradiktórne učenie) learning.\n\nVirtuálne stretnutie 20.11.2020\n\nStav:\n\n- Urobené úlohy z ďalšieho stretnutia\n- Práca na písomnej časti, ešte treba spracovať experimenty.\n\nDo ďalšieho stretnutia:\n\n- Finalizovať text.\n\nVirtuálne stretnutie 6.11.2020\n\nStav:\n\n- Vypracovaná tabuľka s 5 experimentami.\n- vytvorený repozitár.\n\nNa ďalšie stretnutie:\n\n- nahrať kódy na repozitár.\n- závislosťi (názvy balíčkov) poznačte do súboru requirements.txt.\n- Prepracujte experiment tak aby akceptoval argumenty z príkazového riadka. (sys.argv)\n- K experimentom zapísať skript na spustenie. V skripte by mali byť parametre s ktorými ste spustili experiment.\n- dopracujte report.\n- do teorie urobte prehľad metód punctuation restoration a opis Vašej metódy.\n\nVirtuálne stretnutie 25.9.2020\n\nUrobené:\n\n- skript pre vyhodnotenie experimentov.\n\nÚlohy do ďalšieho stretnutia:\n- vytvorte nový repozitár so zdrojovými kódmi (nazvite ho dp2021)\n- vykonať a vyhod", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/README.md::chunk-2", + "document_path": "pages/students/2016/darius_lindvai/README.md", + "title": "Dárius Lindvai", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "y.\n\nVirtuálne stretnutie 25.9.2020\n\nUrobené:\n\n- skript pre vyhodnotenie experimentov.\n\nÚlohy do ďalšieho stretnutia:\n- vytvorte nový repozitár so zdrojovými kódmi (nazvite ho dp2021)\n- vykonať a vyhodnotiť experimenty\n- Zvážiť publikovanie na http://conf.uni-obuda.hu/sami2021/paper.html\n- napísať draft na min. 4 strany s teóriou, experimantami aj bibliografipou. Môže byť aj po slovensky, potom to preložíme do nagličtiny.", + "text_length": 424 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/README.md::chunk-3", + "document_path": "pages/students/2016/darius_lindvai/README.md", + "title": "Dárius Lindvai", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Diplomový projekt 2020\n\n[Výstupy](dp2021)\n\nÚlohy na diplomový projekt:\n\n- 1. Vybrať a pripraviť dátovú množinu na natrénovanie\n- 2. Vybrať a implementovať neurónovú sieť\n- 3. Vykonať sadu experimentov na overenie presnosti klasifikácie zvolenej neurónovej siete", + "text_length": 264 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/README.md::chunk-4", + "document_path": "pages/students/2016/darius_lindvai/README.md", + "title": "Dárius Lindvai", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Zápis o činnosti\n\nVirtuálne stretnutie 26.6.\n\nUrobené: \n\n- Trénovanie modelu BiLSTM+CFR a jeho vyhodnotenie Precision Recall pre každú triedu\n\nTreba urobiť:\n\n- Vyhodnotenie na testovacej množine\n- Doplnenie skriptu pre prípravu dát\n- Krátky záznam o experimentoch - stručný opis nastavenia, dát a záznam výsledkov.\n\nVirtuálne stretnutie 14.5.2020:\n\nPrebrali sme premenu [Pytorch Tensor na NumPy Maticu](https://pytorch.org/tutorials/beginner/blitz/tensor_tutorial.html)\n- Pokračuje práca na Precision Recall - konfidenčná matica\n\nRevízia 8.5.2020:\n\n- Práca pokračuje.\n- Precision-recall vypočítate z konfidenčnej matice [takto](https://towardsdatascience.com/multi-class-metrics-made-simple-part-i-precision-and-recall-9250280bddc2).\n\nRevízia 17.4.2020:\n\n- Upravené zdrojové kódy BiLSTM+CRF pre Punctuation Restoration\n- *repozitár [dp2021](./dp2021/)*\n\nNové úlohy:\n\n- Pripravte si trénovaciu a testovaciu množinu.\n- Natrénujte neurónovú sieť na väčších dátach, použite server idoc.\n- Vyhodnnotte presnosť vo forme Precision-Recall pre každú triedu\n\nStretnutie 9.3.2020:\n\nPozrieť si:\n\n- https://github.com/sgrvinod/a-PyTorch-Tutorial-to-Sequence-Labeling\n- Comparison of Recurrent Neural Networks", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/README.md::chunk-5", + "document_path": "pages/students/2016/darius_lindvai/README.md", + "title": "Dárius Lindvai", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "presnosť vo forme Precision-Recall pre každú triedu\n\nStretnutie 9.3.2020:\n\nPozrieť si:\n\n- https://github.com/sgrvinod/a-PyTorch-Tutorial-to-Sequence-Labeling\n- Comparison of Recurrent Neural Networks for Slovak \nPunctuation Restoration (poslané emailom)\n\nSkúste upraviť kódy:\n\n- https://pytorch.org/tutorials/beginner/nlp/advanced_tutorial.html\n- repozitár https://git.kemt.fei.tuke.sk/dano/comma\n\nna problém dopĺňania interpunkcie.\n\nNa ďalšie stretnutie rozbehané kódy.\n\nStretnutie 20.2.2020\n\nÚlohy na ďalšie stretnutie: \n\n- Ako zmeniť postupnosť slov na postupnosť vektorov? \n- [Slovo na číslo] (https://hackernoon.com/what-is-one-hot-encoding-why-and-when-do-you-have-to-use-it-e3c6186d008f)\n- Ako použiť postupnosť vektorov na natrénovanie neurónovej siete?\n- [Sequence Tagging, Vocab](https://pytorch.org/text/)", + "text_length": 816 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/README.md::chunk-6", + "document_path": "pages/students/2016/darius_lindvai/README.md", + "title": "Dárius Lindvai", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Tímový projekt 2019\n\n*Projektové stránky:*\n\n- [Spracovanie prirodzeného jazyka](/topics/nlp)\n- [Python](/topics/python)\n\n*Úlohy na vypracovanie:*\n- [rešerš](./timovy_projekt/resers) tak na 3 strany - čo najnovšie sa píše na tému \"puctuation restoration\"\n- krátky program a [tutoriál](./timovy_projekt/tutorial) (program s rozsiahlym komentárom) v Pythone na využitie LSTM, napr. [ako](https://pytorch.org/tutorials/beginner/nlp/sequence_models_tutorial.html).\n- [zaujímavý blog](http://jalammar.github.io/illustrated-transformer/)\n\n*Výstup TP:*\n\n- Písomná práca: [rešerš](./timovy_projekt/resers)\n- Tutoriál: [tutoriál](./timovy_projekt/tutorial)", + "text_length": 649 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/dp2021/README.md::chunk-0", + "document_path": "pages/students/2016/darius_lindvai/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "## Update 05.06.2020\n- pridaný čas začiatku a čas ukončenia trénovania, aby bolo možné určit, ako dlho trénovanie trvalo\n- upravený skript na úpravu textu do vhodnej podoby (skombinoval som môj vlastný skript s jedným voľne dostupným na internete, aby bola úprava textu presnejšia)\n- pridaný tag na identifikáciu čísel v texte (\"N\"), čo by teoreticky mohlo zvýšiť presnosť modelu\n- vyriešený výpočet precision, recall a f-score (problém som vyriešil tak, že som najprv zo skutočných hodnôt urobil tensor, ktorý som následne konvertoval na numpy pole)", + "text_length": 550 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/dp2021/README.md::chunk-1", + "document_path": "pages/students/2016/darius_lindvai/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 1, + "text": "## Update 05.05.2020\n- upravený skript \"punc.py\" tak, že model načítava dáta zo súboru/ov\n- vytvorený skript \"text.py\", ktorý upraví dáta do vhodnej podoby (5 krokov)\n- vytvorený skript \"tags.py\", ktorý priradí každému symbolu jeden zo štvorice tagov (S, P, C, Q)", + "text_length": 263 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/dp2021/README.md::chunk-2", + "document_path": "pages/students/2016/darius_lindvai/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 2, + "text": "## Update 09.04.2020\n- Upravil som vzorový zdrojový kód, ktorý riešil Named-Entity Recognition, tak, aby dopĺňal interpunkciu.\n- Momentálne to funguje s ručne vpísanými trénovacími dátami a ručným \"otagovaním\", avšak iba pre bodku a otáznik.\n- Keď som skúšal použiť dáta, kde bol aj otáznik, ale namiesto otáznika model doplňoval bodku.\n\nvysvetlenie zápisu dát:\n- v texte som nahradil interpunciu slovami, resp. skratkami ('.' -> 'PER', ',' -> 'COM', '?' -> '.QUE')\n- sekvencie slov som označil ako \"S\", nerozlišoval som slovné druhy\n- interpunkčné znamienka som označil ako \"C\" (pre čiarku), \"P\" (pre bodku) a \"Q\" (pre otáznik)\n\nvysvetlenie výstupu: \n- Prvý tensor je predikcia modelu pred trénovaním.\n- Druhý tensor je predikcia po trénovaní.", + "text_length": 744 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-0", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 0, + "text": "# Novinky v oblasti “Punctuation Restoration”\n\nKeďže interpunkcia a veľké písmená v slovách nemajú vplyv na výslovnosť slov, sú z výstupu **ASR** (*automatic speech recognition = automatické rozpoznávanie reči*) odstraňované, výsledkom čoho sú iba sekvencie slov alebo písmen. Systémy vykonávajúce doplňovanie **interpunkčných znamienok** a veľkých písmen sú potrebné najmä preto, lebo tieto výstupy bez interpunkcie a veľkých písmen väčšinou pre ľudí nie sú zrozumiteľné (v textovej forme). Interpunkcia a veľké písmená sú taktiež dôležité prvky aj pri **NLP** (*natural language processing = spracovanie prirodzeného jazyka*).\n\nV súčasnosti existuje mnoho metód/spôsobov, akými je možné pristupovať k problematike doplňovania interpunkcie a obnovy veľkých písmen. V niektorých metódach je použitý princíp strojového prekladu, kde do modelu vstupoval text bez interpunkcie a model tento text následne “preložil” na text s interpunkciu. V iných metódach sú zasa použité CRF (*conditional random field = podmienené náhodné polia*). Avšak väčšina existujúcich metód/systémov rieši iba interpunkciu, čo však nestačí napr. pri NER (*named-entity recognition*) alebo POS (*part-of-speech*), kde je potrebn", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-1", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 1, + "text": "= podmienené náhodné polia*). Avšak väčšina existujúcich metód/systémov rieši iba interpunkciu, čo však nestačí napr. pri NER (*named-entity recognition*) alebo POS (*part-of-speech*), kde je potrebné poznať hlavne to, kde sa nachádzajú veľké písmená.\n\nV tomto článku predstavím dve metódy z roku 2019, v ktorých sú predstavené dva rôzne spôsoby, ako je možné pristupovať k problematike doplňovania interpunkcie. Prvá z nich je zameraná na tzv. transformátory a druhá z nich funguje na princípe tzv. „self-attention“.", + "text_length": 517 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-2", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 2, + "text": "### 1. FAST AND ACCURATE CAPITALIZATION AND PUNCTUATION FOR AUTOMATIC SPEECH RECOGNITION USING TRANSFORMER AND CHUNK MERGING", + "text_length": 124 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-3", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 3, + "text": "#### Rýchle a presné doplňovanie interpunkčných znamienok a obnovovanie veľkých písmen pre Automatické rozpoznávanie textu použitím transformátora a “zlučovania blokov textu” (chunk merging)\n\nMetóda vytvorená kolektívom autorov okolo Binh Nguyena z Vietnamu predstavuje spôsob doplňovania interpunkcie a obnovy veľkých písmen pre ASR. Využíva princíp transformačných modelov (*transformer models*) a zlučovania blokov (*chunk-merging*) textu so schopnosťou doplňovať interpunkciu a obnovovať veľké písmená v jednom kroku.\n\nSkladá sa z 3 komponentov, z ktorých prvý slúži na rozdeľovanie veľkých textových segmentov na menšie časti (*chunk-splitting*), ktoré sa však prekrývajú. To znamená, že takmer všetky vety (alebo slová/časti viet, to závisí aké kritérium bolo zvolené pri rozdeľovaní textu) sa po rozdelení objavia vo viacerých častiach (vysvetlené na príklade nižšie). Tieto časti textu sú po rozdelení dostatočne dlhé na to, aby mal druhý komponent k dispozícii dostatok kontextu zľava aj sprava a mohol tak vykonať čo najpresnejšiu predikciu. Posledný komponent rozhoduje, ktoré časti textu (prekrývajúce sa) budú odstránené a ktoré budú zachované a zlúčené naspäť do jedného celku (*chunk-", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-4", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 4, + "text": "ava a mohol tak vykonať čo najpresnejšiu predikciu. Posledný komponent rozhoduje, ktoré časti textu (prekrývajúce sa) budú odstránené a ktoré budú zachované a zlúčené naspäť do jedného celku (*chunk-merging*).\n> Príklad na \"chunk splitting\": Máme určitý text -skupinu viet:\n> - \"... . Futbalisti FC Liverpool sa stretnú v osemfinále Ligy majstrov s Atleticom Madrid. Rozhodol o tom pondelňajší žreb v sídle UEFA vo švajčiarskom Nyone. ...\"\n> \n> Ak na tieto vety aplikujeme algoritmus \"chunk-splitting\"-u, dostaneme podobný výstup:\n> 1. veta: Futbalisti FC Liverpool sa stretnú v osemfinále Ligy majstrov s Atleticom Madrid.\n> 2. veta: v osemfinále Ligy majstrov s Atleticom Madrid. Rozhodol o tom pondelňajší žreb\n> 3. veta: Rozhodol o tom pondelňajší žreb v sídle UEFA vo švajčiarskom Nyone.\n>\n> Samozrejme, toto je len príklad na pochopenie \"chunk-splittingu\". Reálne môžu byť vety rozdeľované rôznymi spôsobmi.\n\nMotiváciou autorov k navrhnutie tejto metódy sa stal fakt, že pokiaľ ide o kratšie rečové segmenty, štúdie v oblasti ASR dosahujú výborné výsledky (v poslednej dobe). Avšak pokiaľ ide o dlhšie rečové segmenty, stále existujú nedostatky v štandardizácii výsledného textového výstupu", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-5", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 5, + "text": "rečové segmenty, štúdie v oblasti ASR dosahujú výborné výsledky (v poslednej dobe). Avšak pokiaľ ide o dlhšie rečové segmenty, stále existujú nedostatky v štandardizácii výsledného textového výstupu ASR, napríklad doplňovanie interpunkcie a obnova kapitalizácie (veľkých písmen). Tieto nedostatky bránia čitateľovi porozumieť výstup ASR a taktiež spôsobujú problémy pri modeloch pre spracovanie prirodzeného jazyka, napríklad NER, POS “tagging” alebo sémantické parsovanie (*semantic parsing*).\n\nExperimenty, ktoré autori vykonali na Britskom národnom korpuse (*British national corpus*), preukázali, že predstavený model svojou presnosťou a rýchlosťou značne prevyšuje existujúce metódy a modely.", + "text_length": 697 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-6", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 6, + "text": "### 2. SELF-ATTENTION BASED MODEL FOR PUNCTUATION PREDICTION USING WORD AND SPEECH EMBEDDINGS", + "text_length": 93 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-7", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 7, + "text": "#### Model založený na “self-attention” zameraný na predikciu interpunkcie použitím slovných a rečových embeddingov\n\nĎalšia metóda, ktorej autormi sú Jiangyan Yi a Jianhua Tao z Číny používa na predikciu interpunkčných znamienok model založený na “*self-attention*”. V modeli sú použité “word and speech embeddings”, ktoré sú pred-trénované vo frameworku Word2Vec a Speech2Vec. Použitie tohto prístupu umožňuje modelu využívať akýkoľvek druh lexikálnych a akustických dát. Vysoká úspešnosť predošlých “self-attention” modelov v oblasti predikcie a doplňovania interpunkčných znamienok autorov inšpirovala k vytvoreniu tohto modelu.\n\nPredošlé modely používali k činnosti akustické príznaky, lexikálne príznaky, alebo ich kombináciu. Využitie akustických príznakov textu sa javí ako efektívnejšie ako využitie samotných lexikálnych príznakov. Avšak v mnohých prípadoch ich nie je možné použiť v ASR, nakoľko ľudia pri hovorení zvyknú používať pauzy medzi slovami na miestach, kde by ich používať nemali. Kombinovanie týchto dvoch typov príznakov (akustické a lexikálne) čiastočne vyrieši tento problém. Veľa štúdií používa lexikálne dáta, ktoré však musia mať pridelené rečové údaje (bodky, čiarky, pau", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md::chunk-8", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 8, + "text": ". Kombinovanie týchto dvoch typov príznakov (akustické a lexikálne) čiastočne vyrieši tento problém. Veľa štúdií používa lexikálne dáta, ktoré však musia mať pridelené rečové údaje (bodky, čiarky, pauzy medzi slovami, a podobne), čo však spôsobuje komplikácie a limituje používanie čisto lexikálnych dát.\n\nVýsledky experimentov, ktoré bolo vykonané na korpuse “English IWSLT2011”, ukazujú, že model založený na “self-attention”, ktorý používa “word and speech embeddings” dosahuje oveľa lepšie výsledky a väčšiu rýchlosť ako viacero modelov slúžiacich na doplňovanie interpunkcie.\n\n[1] NGUYEN, B. a kol.: *Fast and Accurate Capitalization and Punctuation for Automatic Speech Recognition Using Transformer and Chunk Merging.* [online] [citované 07-08-2019] URL: \n\n[2] YI, J. a kol.: *Self-attention Based Model for Punctuation Prediction Using Word and Speech Embeddings.* [online] [citované 17-04-2019] URL: ", + "text_length": 998 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-0", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 0, + "text": "# PYTORCH - LSTM TUTORIÁL", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-1", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 1, + "text": "### Čo je to Pytorch?\n\n[Pytorch](https://pytorch.org/) je open-source knižnica založená na knižnici Torch a určená primárne na účely strojového učenia (*machine learning*) a hĺbkového učenia (*deep learning*). Táto knižnica sa najčastejšie používa v kombinácii s jazykom **Python**, avšak je možné ju použiť aj s jazykom C++. Jej najväčšie využitie je v oblasti Spracovania prirodzeného jazyka (NLP). Je vyvíjaná hlavne výskumným tímom Facebooku pre umelú inteligenciu (FAIR = Facebook's AI Research lab).\n\nVlastnosti Pytorchu:\n- je jednoduchý na naučenie a používanie,\n- obsahuje rozsiahlu dokumentáciu a rôzne tutoriály, ktoré môžu začiatočníci vhodne využiť pri učení,\n- poskytuje možnosť rýchleho počítania tzv. **tensorov** (forma výstupu v knižnici Pytorch podobná matici) použitím GPU.", + "text_length": 792 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-2", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 2, + "text": "### Čo je to LSTM?\n\nProblematikou LSTM (Long Short-Term Memory networks) som sa zaoberal v mojej [Bakalárskej práci](http://opac.crzp.sk/?fn=detailBiblioForm&sid=2D0B46080A5AC858AA11B21AE978&seo=CRZP-detail-kniha). LSTM sú špeciálny typ **Rekurentných neurónových sietí** (RNN), schopné naučiť sa využívať dlhodobé kontextové súvislosti (napr. pri dopĺňaní chýbajúcej interpunkcie alebo veľkých písmen). Najväčšie využitie LSTM je v oblasti strojového učenia a hĺbkového učenia.\n\nVlastnosti LSTM:\n- dokážu spracovávať nielen jednoduché dáta (napr. obrázky), ale aj celé sekvencie dát (napr. reč alebo video),\n- sú vhodné na klasifikáciu, spracovanie a vytváranie predikcií na základe časových údajov (v Bakalárskej práci som sa venoval **Interpunkčným znamienkam**),\n- LSTM boli navrhnuté tak, aby si na rozdiel od RNN vedeli poradiť s problémom, ktorý sa nazýva “[Exploding and vanishing gradient problems](https://medium.com/learn-love-ai/the-curious-case-of-the-vanishing-exploding-gradient-bf58ec6822eb)”.\n\n|![LSTM](https://i1.wp.com/www.jessicayung.com/wp-content/uploads/2018/09/short_term_memory_by_toxicpaprika.png?w=630)|\n|:--:|\n|*Obr.1 Problém \"krátkej\" pamäte RNN*|\n\nTento tutoriál sa delí", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-3", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 3, + "text": "6822eb)”.\n\n|![LSTM](https://i1.wp.com/www.jessicayung.com/wp-content/uploads/2018/09/short_term_memory_by_toxicpaprika.png?w=630)|\n|:--:|\n|*Obr.1 Problém \"krátkej\" pamäte RNN*|\n\nTento tutoriál sa delí na 2. časti. V prvej časti ukážem návod ako si nainštalovať Pytorch a v druhej predvediem vzorový kód pomocou knižnice Pytorch na vyžitie LSTM.", + "text_length": 344 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-4", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 4, + "text": "## 1. Inštalácia knižnice Pytorch\nNa inštaláciu Pytorchu existuje viacero možných spôsobov. Pracovať s ním je možné či už vo Windowse alebo aj v Linuxovom prostredí. Taktiež je možné vybrať si, či bude inštalácia vykonaná pomocou **Anacondy** alebo PIP. Ja som sa rozhodol pracovať v prostredí Ubuntu (keďže v tomto prostredí som pracoval aj na Bakalárskej práci. Preto teraz predstavím spôsob ako nainštalovať Pytorch v tomto prostredí pomocou Anacondy.\n\nPred inštaláciou Anacondy a Pytorchu je potrebné nainštalovať prostredie **Ubuntu 16.04 LTS**. Môžete si ho stiahnuť napr. z Microsoft Store.", + "text_length": 598 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-5", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 5, + "text": "### a. Inštalácia Anacondy\nPred samotnou inštaláciou Anacondy je potrebné overiť, či sú všetky balíčky (*packages*) aktualizované. Je to možné vykonať pomocou príkazu `apt-get`:\n```bash\ndl874wn@Darius-PC:~$ apt-get update -y\n```\nNásledne je treba stiahnuť inštalačný súbor Anacondy. Jedným zo spôsobov ako to urobiť, je stiahnutie tohto súboru priamo cez terminál. Avšak pri tomto spôsobe je potrebné uistiť sa o bezpečnosti stránky, ktorá poskytuje inštalačný skript. Na stiahnutie súboru pomocou terminálu je možné použiť príkaz `curl`:\n```bash\ndl874wn@Darius-PC:~$ curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh\n```\nZadanie tohto príkazu vám zabezpečí stiahnutie najnovšej verzie Anacondy. Po stiahnutí súboru je možné spustiť inštalačný skript použitím príkazu `bash`:\n```bash\ndl874wn@Darius-PC:~$ bash Miniconda3-latest-Linux-x86_64.sh\n```\nVrámci inštalácie Anacondy sa nainštaluje aj Python 3.7.4. Počas inštalácie je potrebné potvrdiť licenčné podmienky a umiestnenie, kam sa Python nainštaluje.\n\nPo stiahnutí a nainštalovaní Anacondy ju už stačí iba spustiť. Pre spustenie bude stačiť refresh terminálu, čo je možné vykonať príkazom `source`:\n```bash\ndl874wn@D", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-6", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 6, + "text": "tnenie, kam sa Python nainštaluje.\n\nPo stiahnutí a nainštalovaní Anacondy ju už stačí iba spustiť. Pre spustenie bude stačiť refresh terminálu, čo je možné vykonať príkazom `source`:\n```bash\ndl874wn@Darius-PC:~$ source ~/.bashrc\n```", + "text_length": 232 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-7", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 7, + "text": "### b. Inštalácia Pytorchu\nĎalším krokom je nainštalovanie Pytorchu. Inštalácia je veľmi jednoduchá a rýchla. Stačí zadať jednoduchý príkaz:\n```bash\ndl874wn@Darius-PC:~$ conda install pytorch torchvision cpuonly -c pytorch\n```\nTaktiež je potrebné zadať “**y**” po výzve terminálu. Po nainštalovaní bude treba odpovedať „**yes**“ na otázku, či chceme, aby bola Anaconda hneď incializovaná.\n\nNa záver je ešte potrebné overiť, že Pytorch bol skutočne nainštalovaný. Toto overenie je možné vykonať sériou príkazov. Na začiatok je potrebné dostať sa do módu “Python REPL (a read-eval-print loop)”, čo je možné vykonať veľmi jednoducho - zadaním príkazu `python3` do terminálu:\n```bash\n(base) dl874wn@Darius-PC:~$ python3\nPython 3.7.4 (default, Aug 13 2019, 20:35:49)\n[GCC 7.3.0] :: Anaconda, Inc. on linux\nType “help”, “copyright”, “credits” or “license” for more information.\n>>>\n```\n> Python REPL je jednoduché interaktívne prostredie, ktoré spracováva jednoduché užívateľské vstupy po jednom riadku a vracia výsledok (výstup). Užívateľ teda zadáva príkazy po jednom a program ich spracováva a vyhodnocuje postupne.\n\nKeď sa už nachádzame v móde Python REPL, môžeme spustiť napr. tento jednoduchý skript,", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-8", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 8, + "text": "racia výsledok (výstup). Užívateľ teda zadáva príkazy po jednom a program ich spracováva a vyhodnocuje postupne.\n\nKeď sa už nachádzame v móde Python REPL, môžeme spustiť napr. tento jednoduchý skript, ktorý vygeneruje maticu 3x5 náhodných čísel (tensor) v intervale (0,1). Prvé číslo v zátvorke udáva počet riadkov a druhé počet stĺpcov.\n```bash\n>>> import torch\n>>> x = torch.rand(3,5)\n>>> print(x)\n```\nVýstup skriptu by mal vyzerať nasledovne:\n```bash\ntensor([[0.8490, 0.5107, 0.2124, 0.8478, 0.6296],\n [0.9270, 0.8925, 0.0260, 0.3883, 0.4998],\n [0.7393, 0.9261, 0.7133, 0.6712, 0.4431]])\n>>>\n```\nTýmto skriptom sme overili funkčnosť Pytorchu a teda môžeme Python REPL opustiť stlačením klávesovej skratky **CTRL + D**. V prípade potreby môžete Anacondu deaktivovať príkazom `conda deactivate`, avšak ak budete chcieť znova pracovať s Pytorchom, je potrebné ju znova aktivovať.\n```bash\n(base) dl874wn@Darius-PC:~$ conda deactivate\ndl874wn@Darius-PC:~$ \n```", + "text_length": 972 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-9", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 9, + "text": "## 2. Vzorový kód na využitie LSTM v Pytorchu\n\nVstup a výstup v LSTM v knižnici Pytorch je tvorený 3D tensormi. V tomto tutoriáli predvediem, ako tento vstup a výstup funguje.\n\nNa začiatok je potrebné importovať pár relevantných knižníc.\nBudeme pridávať základnú knižnicu **torch** a knižnicu **nn**, ktorá obsahuje základný balík Neurónových sietí (NN).\n```python\nimport torch\nimport torch.nn as nn\n```\nNásledne sa presunieme k vytváraniu LSTM vrstvy, ktoré funguje rovnako ako pri ostatných typoch vrstiev. LSTM vrste totiž budeme priradzovať argumenty. V tomto príklade budú použité 3 argumenty:\n- vstupná dimenzia (*input dimension*): definuje veľkosť vstupu v každom časovom kroku, napr. ak má vstupná dimenzia veľkosť 5, vstup bude vyzerať podobne - `[5, 3, 8, 6, 2]`,\n- skrytá dimenzia (*hidden dimension*): predstavuje veľkosť \"cell state\" a \"hidden state\" v každom časovom kroku,\n- počet vrstiev: počet LSTM vrstiev \"naskladaných\" na seba.\n\n```python\ninput_dim = 5 #velkost vstupnej dimenzie\nhidden_dim = 10 #velkosť skrytej dimenzie\nn_layers = 1 #pocet vrstiev\n```\n\nTieto parametre potom uložíme do LSTM vrstvy nasledovne:\n\n```python\nlstm_layer = nn.LSTM(input_dim, hidden_dim, n_layers)\n`", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-10", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 10, + "text": "e\nhidden_dim = 10 #velkosť skrytej dimenzie\nn_layers = 1 #pocet vrstiev\n```\n\nTieto parametre potom uložíme do LSTM vrstvy nasledovne:\n\n```python\nlstm_layer = nn.LSTM(input_dim, hidden_dim, n_layers)\n```\n\nV ďalšom kroku si vytvoríme fiktívne dáta aby sme videli, ako funguje vstup na vrstve. Keďže sme veľkosť dimenzie definovali ako 5, potrebujeme vytvoriť tensor vo tvare `(1, 1, 5)`. Hodnoty v tensore reprezentujú `(veľkosť vzorky, dĺžka sekvencie, veľkosť vstupnej dimenzie)`.\nTaktiež potrebujeme inicializovať \"cell state\" a \"hidden state\" jednotky LSTM. Tieto 2 parametre sú uložené vo \"zväzku\" vo formáte `(hidden state, cell state)`.\n\n```python\nbatch_size = 1 #velkost vzorky\nseq_len = 1 #dlzka sekvencie\n\ninp = torch.randn(seq_len, batch_size, input_dim)\nhidden_state = torch.randn(n_layers, batch_size, hidden_dim)\ncell_state = torch.randn(n_layers, batch_size, hidden_dim)\nhidden = (hidden_state, cell_state)\n```\n\n> Ak máme vstupnú sekvenciu (*seq_len*) napr. 100, veľkosť vzorky (*batch_size*) udáva, v akých dávkach sa bude sekvencia spracovaná a vyhodnotená. Ak máme napr. veľkosť vzorky 20, sekvencia bude spracovaná v 5 dávkach po 20.\n\nAk si chceme skontrolovať v akom tvare bude vyze", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md::chunk-11", + "document_path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai", + "published": true, + "chunk_index": 11, + "text": "ize*) udáva, v akých dávkach sa bude sekvencia spracovaná a vyhodnotená. Ak máme napr. veľkosť vzorky 20, sekvencia bude spracovaná v 5 dávkach po 20.\n\nAk si chceme skontrolovať v akom tvare bude vyzerať tvar vstupnej vrstvy a skrytej vrstvy, môžeme to urobiť pomocou príkazov `print` a `shape`:\n\n```python\nprint(\"Input shape:\", inp.shape)\nprint(\"Hidden shape:\", hidden_state.shape, \",\", cell_state.shape)\n```\n\nVýstup bude vyzerať nasledovne:\n\n```bash\n(base) dl874wn@Darius-PC:~$ python test.py\nInput shape: torch.Size([1, 1, 5])\nHidden shape: torch.Size([1, 1, 10]) , torch.Size([1, 1, 10])\n```\n\nNa záver pridáme vstupy a skryté stavy (*hidden states*):\n\n```python\nout, hidden = lstm_layer(inp, hidden)\nprint(\"Output shape:\", out.shape)\nprint(\"Hidden:\", hidden)\n```\n\nNa výstupe by sa mal objaviť tvar výstupných tensorov a taktiež samotné tensory pre \"cell state\" a \"hidden state\":\n\n```bash\nOutput shape: torch.Size([1, 1, 10])\nHidden: (tensor([[[-0.3184, 0.0795, -0.2122, -0.0699, -0.1824, -0.1231, -0.1314, 0.3096, -0.0371, 0.0488]]], grad_fn=), tensor([[[-0.5415, 0.2349, -0.4794, -0.1918, -0.2433, -0.2443, -0.2989, 0.5557, -0.0896, 0.1062]]], grad_fn=))\n```", + "text_length": 1193 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-0", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Dominik Nagy\n\n*Rok začiatku štúdia*: 2016", + "text_length": 43 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-1", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Diplomová práca 2022\n\n[GIT repozitár](https://git.kemt.fei.tuke.sk/dn161mb/dp2022)\n\n*Názov diplomovej práce*: Neurónový strojový preklad pomocou knižnice Fairseq\n\n*Meno vedúceho*: Ing. Daniel Hládek, PhD.\n\n*Zadanie diplomovej práce*: \n\n1. Vypracujte teoretický prehľad metód neurónového strojového prekladu.\n2. Podrobne opíšte vybranú metódu neurónového strojového prekladu. \n3. Natrénujte viacero modelov pre strojový preklad pomocou nástroja Fairseq a vyhodnoťte ich. \n4. Na základe výsledkov experimentov navrhnite zlepšenia.\n\nStretnutie 11.1.2022\n\n- Urobené všetky úlohy z minulého stretnutia, okrem textu a gitu.\n- Natrénované modely fairseq pre obojsmerný preklad angličtina slovenčina.\n\nÚlohy:\n\n- dajte všetky skripty do repozitára dp2022\n- Napíšte si osnovu diplomovej práce.\n- Vypracujte draft (hrubý text) diplomovej práce.\n- V texte DP sumarizujte vykonané experimenty.\n- Pripravte si prezentáciu na obhajoby.\n- Skontrolovať či sa robí tokenizácia správne pri vyhodnotení.\n\nZásobník úloh:\n\n- Pripravte článok (pre vedúceho).\n- Urobte experiment s architektúrou MBART. Porovnajte Vaše výsledky s výsledkami v článku MBART (Liu et al. : Multilingual Denoising Pre-training for Neural Mach", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-2", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "h:\n\n- Pripravte článok (pre vedúceho).\n- Urobte experiment s architektúrou MBART. Porovnajte Vaše výsledky s výsledkami v článku MBART (Liu et al. : Multilingual Denoising Pre-training for Neural Machine Translation).\n\nStretnutie 17.12.2021\n\nStav:\n\n- rozbehané trénovanie na slovensko-anglickom (LinDat) paralelnom korpuse.\n- model z angličtiny do slovenčiny. \n- tokenizácia subword NMT.\n- rozbehané trénovanie na GPU, bez anaconda.\n\nÚlohy:\n\n- [x] Cieľ je aby Vaše experimenty boli zopakovateľné. Pridajte všetky trénovacie skripty do git repozitára. Nepridávajte dáta. Pridajte skripty alebo návody na to ako pripraviť dáta. \n- [x] Zostavte tabuľku kde zapíšete parametre trénovania a dosiahnuté výsledky. \n- Napíšte prehľad aktuálnych metód strojového prekladu pomocou neurónových sietí kde prečítate viacero vedeckých článkov a ku každému uvediete názov a čo ste sa z neho dozvedeli. Vyhľadávajte kľúčové slovíčka: \"Survey of neural machine translation\". Chceme sa dozvedieť aj o transformeroch a neurónových jazykových modeloch. \n- [x] vyskúšajte trénovanie aj s inými architektúrami. Ku každému trénovaniu si poznačte skript, výsledky a dajte to na git. \n\nZásobník úloh:\n\n- [x] Výskúšajte prekl", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-3", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "neurónových jazykových modeloch. \n- [x] vyskúšajte trénovanie aj s inými architektúrami. Ku každému trénovaniu si poznačte skript, výsledky a dajte to na git. \n\nZásobník úloh:\n\n- [x] Výskúšajte preklad v opačnom smere. \n- [x] Vyskúšanie inej metódy tokenizácie (BPE, sentencepiece, wordpiece - huggingface tokenizers).\n\nStretnutie 6.7.2021\n\nStav:\n\n- Podarilo sa rozbehať setup pre trénovanie slovensko anglického prekladu na korpuse 10 viet pomocou fairseq.\n\nÚlohy:\n\n- Pokračujte v trénovaní na servri IDOC, použite skript na príápravu prostredia ktorý som Vám dal.\n- Pripravte veľký slovensko-anglický paralelný korpus a natrénujte z neho model.\n- Model vyhodnotťe pomocou metriky BLEU. Naštudujte si metriku BLEU.", + "text_length": 715 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-4", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Príprava na Diplomový projekt 2 2021\n\nZásobník úloh:\n\n- Využiť BERT model pri strojovom preklade zo slovenčiny\n\nStretnutie 17.2.2021\n\nStav:\n\n- Plán ukončiť v roku 2022\n- Vypracovaný tutoriál https://fairseq.readthedocs.io/en/latest/getting_started.html#training-a-new-model a https://fairseq.readthedocs.io/en/latest/tutorial_simple_lstm.html\n\nDo ďalšieho stretnutia:\n\n- Treba zlepšiť teoretickú prípravu a písanie.\n- Pripraviť slovensko-anglický korpus do podoby vhodnej na trénovanie. Zistite v akej podobe je potrebné dáta mať. \n- Natrénovať model fairseq pre strojový preklad zo slovenčiny.\n- Zistite ako prebieha neurónový strojový preklad, čo je to neurónová sieť, čo je to enkóder, dekóder model a napíšte to vlastnými slovami. Napíšte aj odkiaľ ste to zistili.\n- Prečítajte si https://arxiv.org/abs/1705.03122 a https://arxiv.org/abs/1611.02344 a napíšte čo ste sa dozvedeli.", + "text_length": 886 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-5", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Diplomový projekt 2\n\nVirtuálne stretnutie 25.9.\n\n- Možnosť predĺženia štúdia\n- Inak pokračovať v otvorených úlohách\n\nÚlohy na ďalšie stretnutie:\n\n- pozrieť a pripraviť česko-slovenský paralelný korpus, natrénovať a vyhodnotiť model\n- pozrieť a pripraviť anglicko-slovenský paralelný korpus, natrénovať a vyhodnotiť model", + "text_length": 323 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-6", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Diplomový projekt 1 2020\n\nLiteratúra:\n\n[Neural Network Methods for Natural Language Processing](https://www.morganclaypool.com/doi/abs/10.2200/S00762ED1V01Y201703HLT037)\n\nÚlohy na semester:\n\n- Získať a pripraviť slovenský paralelný korpus pre preklad do angličtiny a češtiny\n- Natrénovať a vyhodnotiť Fairseq Model\n\nVirtuálne stretnutie 30.7.2020:\n\nDohoda na opakovaní predmetu.\n\nVirtuálne stretnutie 14.5.2020:\n\nUrobené: rozbehaný tutoriál fairseq pre trénovanie nemecko anglických dát\n\nÚlohy na ďalšie stretnutie:\n\n- pozrieť a pripraviť česko-slovenský paralelný korpus, natrénovať a vyhodnotiť model\n- pozrieť a pripraviť anglicko-slovenský paralelný korpus, natrénovať a vyhodnotiť model\n \n\nStretnutie 6.3.2020.\n\nÚloha na ďalšie stretnutie:\n\n- spustiť Trénovanie Fairseq na idoc\n- Pozrieť dostupné [jazykové zdroje](/topics/resources)\n- Pozrieť článok [fairseq: A Fast, Extensible Toolkit for Sequence Modeling](https://www.aclweb.org/anthology/N19-4009/)\n- Pozrieť prístup a článok https://github.com/pytorch/fairseq/blob/master/examples/joint_alignment_translation/README.md", + "text_length": 1083 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-7", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "## Tímový projekt 2019\n\n*Písomná práca*: [Rešerš na tému \"Sequnce to Sequence\"](./timovy_projekt/README.md)\n\n*Úlohy tímového projektu*:\n\n- Vypracujte min. 4 stranový rešerš na tému: \"Sequence to Sequence\" (Encoder-Decoder, seq2seq, transformer, attention)\n- citujte min. 10 najvýznamnejších bibliografických zdrojov\n- Prečítajte si o [konvolučných sieťach](http://www.wildml.com/2015/11/understanding-convolutional-neural-networks-for-nlp/)\n- Prečítajte si Sequence to Sequence Convolutional Neural Network for Automatic Spelling Correction \n- Skúste si nainštalovať nástroj fairseq\n- prejdite si tutoriál https://github.com/pytorch/fairseq/blob/master/examples/translation/README.md", + "text_length": 683 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/README.md::chunk-8", + "document_path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "### Poznámky\n\nProjektové stránky:\n\n- [Spracovanie prirodzeného jazyka](/topics/nlp)\n- [Python](/topics/python)\n- [Sequence to Sequence](/topics/seq2seq)\n\nV prípade záujmu je možné pracovať na úlohe strojového prekladu.\n\nMožné trénovacie dáta: https://www.clarin.eu/resource-families/parallel-corpora", + "text_length": 299 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-0", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 0, + "text": "# Sequence-to-sequence\n\nHlboké neurónové siete (Deep Neural Networks – DNN) sú veľmi výkonné modely strojového\nučenia, ktoré sú určené na riešenie zložitých problémov, ako je rozpoznávanie reči či vizuálnych objekov.\nHlboké neurónové siete môžu vykonávať ľubobovoľný paralelný výpočet na malý počet krokov. Veľké\nDNN môžu byť trénované pokiaľ máme dostupné obrovské množstvo dát. Napriek svojej flexibilite a sile,\nhlboké neurónové siete sa dajú aplikovať iba na problémy, ktorých vstupy môžu byť rozumne kódované\nvektormi s fixným rozmerom. [1]\n\nSequence-to-sequence alebo postupnosť sekvencií je o trénovaní modelov na konverziu z jednej\ndomény na sekvencie do inej doméne ako napríklad preloženie viet z angličtiny do slovenčiny.\nPostupnosť sekvencií mapuje jednu sekvenciu neurčenej dĺžky na inú sekvenciu, ktorej dĺžka je tiež\nneznáma. [2]\n\nRekurentná Neurónová Sieť (po anglicky Recurrent Neural Network, ďalej už len RNN) je prirodená\ngeneralizácia dopredných neurónových sietí pre sekvencie. Postupnosť vstupu (x 1 ,...,xT), štandardné RNN\nvypočíta postupnosť výstupov (y 1 ,...,yT) iteráciu nasledujúcich rovníc:", + "text_length": 1121 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-1", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 1, + "text": "### ℎ𝑡 = 𝑠𝑖𝑔𝑚(𝑊ℎ𝑥𝑥𝑡 + 𝑊ℎℎ𝑡−1)", + "text_length": 85 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-2", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 2, + "text": "### 𝑦𝑡 = 𝑊𝑦ℎt\n\nRNN môže ľahko mapovať sekvencie na sekvencie vždy, keď je zarovnanie medzi vstupmi výstupmi\nznáme vopred. Nie je však jasné, ako aplikovať RNN na problémy, ktorých vstupné a výstupné sekvencie\nmajú rôzne dĺžky s komplikovanými a nemonotonickými vzťahmi. Najjednoduchšia stratégia pre\nvšeobecné sekvenčńé učenie je mapovať vstupnú sekvenciu na vektor s pevnou veľkosťou pomocou\njedného RNN a potom mapovať vektor na cieľovú sekvenciu s iným RNN.[2] [3]", + "text_length": 501 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-3", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 3, + "text": "## Convolutional neural networks\n\nKonvolučné neurónové siete sú menej bežné pre sekvenčné modelovanie, napriek niekoľkým výhodám.\nV porovnaní s opakujúcimi sa vrstvami, konvolácie vytvárajú reprezentáciu pre kontexty s pevnou\nveľkosťou, avšak efektívna veľkosť kontextu siete sa dá ľahko zväčšiť naskladaním niekoľkých vrstiev na\nseba. To umožňuje presne ovládať maximálnu dĺžku závislostí, ktoré sa majú modelovať. Konvolučné\nsiete nezávisia od výpočtov predchádzajúceho časového kroku, a preto umožňujú paralelizáciu nad\nkaždým prvkom v sekvencii. Tento kontrast v RNN, ktorý udržiava skrytý stav celej minulosti, zabraňuje\nparalelnému výpočtu v danej sekvencii [4]", + "text_length": 667 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-4", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 4, + "text": "# Encoder-decoder\n\nHlboké neurónové siete preukázali veľký úspech v rôznych aplikáciách, ako napríklad\nrozpoznávanie objektov alebo rozpoznávanie reči. Nedávno sa objavil nový prístup k štatistickému\nstrojovému prekladu založený na neurónových sieťach. Tento nový prístup je inšpirovaný podľa\nnedávneho trendu hlbokého reprezentatívneho učenia. Všetky modely neurónovej siete použité v [5]\npozostávajú z kódera a dekódera (encoder, decoder) Kóder extrahuje vektor s pevnou dĺžkou\nreprezentujúce z vety s premenlivou dĺžkou a z tohto znázornenia dekóder generuje správny cieľový\npreklad s premenlivou dĺžkou. Model neurónového strojového prekladu vyžaduje iba zlomok pamäte,\nktorú potrebuje model tradičného strojového prekladu. [6][7]\n\n ![Encoder-decoder](encoder_decoder.png)\n \n1 Ilustrácia RNN Encoder-Decoder [5]", + "text_length": 815 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-5", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 5, + "text": "# Transformer a Attention\n\nOpakujúce sa seq2seq modely, ktoré používajú encoder-decoder architektúru dosiahli veľký\npokrok v rozpoznávaní reči. Avšak, majú nevýhodu v rýchlosti tréningu. Vnútorné opakovanie obmedzuje\nparareliláziu tréningu. Neopakujúci sa seq2seq model nazývaný Transformer sa spolieha na mechanizmy\nAttention, aby sa naučil pozičným závislostiam, ktoré je možné trénovať rýchlejšie s väčšou\núčinnosťou.[8] Attention model sa nesnaží preložiť vetu naraz, preklad prebieha postupne, preloží najprv\njednu časť vety a potom pokračuje na ďalšiu casť, ako človek.\n\nAttention model by sa dal vysvetliť ako funckiu, ktorá mapuje dopyt a sadu páru kľúč-hodnota na výstup,\nkde dopyt, hodnoty, kľúče a výstup sú vektory. Výstup sa počíta ako vážená suma (weighted sum)\nhodnôt, kde váha priradená každej hodnote sa vypočíta poďla funcie kompatibility dopytu so\nzodpovedajúcim kľúčom.[9]\n\n![Scaled-Dot_Multi-Head](scaled-multi.png)\n\n2 Scaled Dot-Product Attention a Multi-Head attention", + "text_length": 991 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-6", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 6, + "text": "## Scaled Dot-Product Attention\n\nVstup pozostáva z dopytov a kľúčov rozmeru _dk_ a hodnôt rozmerov _dv._ Vypočítajú sa „dot products“\nvšetkých dopytov s kľúčmi, vydelia sa s _√dk_ a použije sa funkcia „softmax” na získane váhy hodnôt. [9]\n\n![Attention](attention.png)", + "text_length": 267 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-7", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 7, + "text": "## Multi-Head Attention\n\nSilnou stránkou Multi-Head Attentionu je schopnosť spoločne sa venovať informáciám z rôznych\nreprezentačných podpriestorov na rôznych pozíciách.[10] [9]", + "text_length": 177 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-8", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 8, + "text": "### 𝑀𝑢𝑙𝑡𝑖𝐻𝑒𝑎𝑑(𝑄,𝐾, 𝑉) = 𝐶𝑜𝑛𝑐𝑎𝑡(ℎ𝑒𝑎𝑑1, … , ℎ𝑒𝑎𝑑)𝑊O", + "text_length": 83 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-9", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 9, + "text": "### 𝑤ℎ𝑒𝑟𝑒 ℎ𝑒𝑎𝑑𝑖 = 𝐴𝑡𝑡𝑒𝑛𝑡𝑖𝑜𝑛(𝑄𝑊𝑖𝑄,𝐾𝑊𝑖K,𝑉𝑊𝑖V)", + "text_length": 120 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-10", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 10, + "text": "# Zoznam použitej literatúry\n\n[1] I. Sutskever Google, O. Vinyals Google, and Q. V Le Google, “Sequence to Sequence Learning with\nNeural Networks.”\n\n[2] M. P. For, “Natural Language Processing in Action,” _Online_ , vol. 80, no. 1. p. 453, 2017.\n\n[3] “Sequence to Sequence Learning with Neural Networks – arXiv Vanity.” [Online]. Available:\nhttps://www.arxiv-vanity.com/papers/1409.3215/. [Accessed: 20-Dec-2019].\n\n[4] J. Gehring, M. Auli, D. Grangier, D. Yarats, and Y. N. Dauphin, “Convolutional Sequence to\nSequence Learning.”\n\n[5] K. Cho _et al._ , “Learning phrase representations using RNN encoder-decoder for statistical\nmachine translation,” in _EMNLP 2014 - 2014 Conference on Empirical Methods in Natural\nLanguage Processing, Proceedings of the Conference_ , 2014, pp. 1724–1734.\n\n[6] R. Pascanu, T. Mikolov, and Y. Bengio, “On the difficulty of training recurrent neural networks,” in\n_30th International Conference on Machine Learning, ICML 2013_ , 2013, no. PART 3, pp. 2347–\n2355.\n\n[7] K. Cho, B. Van Merriënboer, D. Bahdanau, and Y. Bengio, “On the Properties of Neural Machine\nTranslation: Encoder-Decoder Approaches.”\n\n[8] L. Dong, S. Xu, and B. Xu, _SPEECH-TRANSFORMER: A NO-RECURRE", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/dominik_nagy/timovy_projekt/README.md::chunk-11", + "document_path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy", + "published": true, + "chunk_index": 11, + "text": "K. Cho, B. Van Merriënboer, D. Bahdanau, and Y. Bengio, “On the Properties of Neural Machine\nTranslation: Encoder-Decoder Approaches.”\n\n[8] L. Dong, S. Xu, and B. Xu, _SPEECH-TRANSFORMER: A NO-RECURRENCE SEQUENCE-TO-SEQUENCE\nMODEL FOR SPEECH RECOGNITION_..\n\n[9] A. Vaswani _et al._ , “Attention Is All You Need.”\n\n[10] J. Li, Z. Tu, B. Yang, M. R. Lyu, and T. Zhang, “Multi-Head Attention with Disagreement\nRegularization.”", + "text_length": 423 + }, + { + "chunk_id": "pages/students/2016/ediz_morochovic/README.md::chunk-0", + "document_path": "pages/students/2016/ediz_morochovic/README.md", + "title": "Ediz Morochovič", + "categories": [ + "bp2019" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Ediz Morochovič\n\nRok začiatku štúdia: 2016", + "text_length": 44 + }, + { + "chunk_id": "pages/students/2016/ediz_morochovic/README.md::chunk-1", + "document_path": "pages/students/2016/ediz_morochovic/README.md", + "title": "Ediz Morochovič", + "categories": [ + "bp2019" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2019\n\nNázov bakalárskej práce: Štatistické rozpoznávanie pomenovaných entít\n\nMeno vedúceho: Ing. Daniel Hládek, PhD.\n\nZadanie bakalárskej práce: \n1. Vypracujte prehľad štatistických metód identifikácie pomenovaných entít v texte.\n2. Podrobne opíšte zvolenú metódu identifikácie pomenovaných entít v texte\n3. Zvoľte si vhodnú metodiku vyhodnotenia a na vhodnej testovacej množine navrhnite a vykonajte sadu experimentov.\n4. Na základe výsledkov experimentov navrhnite možné zlepšenia.", + "text_length": 502 + }, + { + "chunk_id": "pages/students/2016/ediz_morochovic/README.md::chunk-2", + "document_path": "pages/students/2016/ediz_morochovic/README.md", + "title": "Ediz Morochovič", + "categories": [ + "bp2019" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "# Bakalársky projekt 2019\n\nÚlohy: \n Nainštalujte si prostredie Anaconda https://www.anaconda.com/\n Oboznámiť sa so zvoleným štatistickým systémom pre rozpoznávanie pomenovaných entít (https://www.nltk.org/), https://www.nltk.o/install.html, https://stanfordnlp.github.io/CoreNLP/, https://www.nltk.org/book/\n Zistite použitú štatistickú metódu a podrobne ju opíšte\n Vypracujte prehľad používaných štatistických metód (maximum entropy, conditional random fields, hidden markov models), min. 5 strán s min. 10 odkazmi na odborné články\n Navrhnite experimenty a vykonajte ich s rôznymi parametrami systému\n\nPísomná práca : \n\nVýstupy bakalárskeho projektu:\n\n \n\nPoznámky:", + "text_length": 684 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-0", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Jakub Maruniak\n\n*Rok začiatku štúdia*: 2016\n\n*Návrh na názov DP*:\n\nAnotácia a rozpoznávanie pomenovaných entít v slovenskom jazyku.\n\n[CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=ECC3D3F0B3159C4F3217EC027BE4)\n\n1. Vypracujte teoretický úvod, kde vysvetlíte čo je to rozpoznávanie pomenovaných entít a akými najnovšími metódami sa robí. Vysvetlite, ako pracuje klasifikátor pre rozpoznávanie pomenovaných entít v knižnici Spacy. \n2. Pripravte postup na anotáciu textového korpusu pre systém Prodigy pre trénovanie modelu vo vybranej úlohe spracovania prirodzeného jazyka.\n3. Vytvorte množinu textových dát v slovenskom jazyku vhodných na trénovanie štatistického modelu spracovania prirodzeného jazyka pomocou knižnice Spacy.\n4. Natrénujte štatistický model pomocou knižnice Spacy a zistite, aký vplyv má veľkosť trénovacej množiny na presnosť klasifikátora.\n\n*Spolupráca s projektom*:\n\n- [Podpora slovenčiny v Spacy](/topics/spacy)\n- [Anotácia textových dát](/topics/prodigy)\n- [Rozpoznávanie pomenovaných entít](/topics/named-entity)\n- [Spracovanie prir. jazyka](/topics/nlp)\n- [Programovanie v jazyku Python](/topics/python)", + "text_length": 1134 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-1", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Diplomová práca 2021\n\nStretnutie 12.3.\n\nStav:\n\n- Anotovanie dát, vykonané experimenty s trénovaním. \n- Dosiahli sme presnosť cca 72 percent.\n- Výsledky sú zhrnuté v tabuľke.\n\nÚlohy:\n\n- Píšte prácu.\n- Uložte trénovacie skripty na GIT.", + "text_length": 236 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-2", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Diplomový projekt 2\n\nCiele:\n\n- Anotovať sadu dát s použitím produkčnej anotačnej schémy, natrénovať a vyhodnotiť model.\n\nZásobník úloh:\n\n- Použiť model na podporu anotácie\n- Do konca ZS vytvoriť report vo forme článku.\n\nStretnutie 12.2.:\n\n- Prebrali sme článok. Treba vyhodiť a popresúvať niektoré časti, inak v poriadku.\n\nDo budúceho stretnutia:\n\n- Vybrať vhodný časopis na publikovanie\n- Využiť pri trénovaní ďalšie anotované dáta.\n\nStretnutie 20.1.\n\nPreberanie draftu práce.\n\n- Do článku vyradiť príliš všeobecné časti - napr. o strojovom učení.\n- V úvode zadefinujte problém, pojmy a bežné spôsoby riešenia problému. Čo je korpus? Ako sa vyrába? Na čo a ako sa používa?\n- V jadre predstavte Vaše riešenie. Ako vyzerá korpus? Ako ste ho urobili?\n- Na konci definujte metodiku vyhodnotenia, vyhodnotte riešenie a navrhnite zlepšenia. Akú presnosť má model vytvorený s pomocou korpusu?\n\nVirtuálne stretnutie 18.12.2021:\n\nStav:\n\n- Vytvorené anotácie do databázy, cca 1700 jednotiek.\n- Začiatok článku.\n\nVirtuálne stretnutie 27.11.2020:\n\n- Zatiaľ zostávame pri ručnej extrakcii dát z anotačnej schémy.\n- Vypracovaná [tabuľka s experimentami](./dp2021/train_experiments)\n- [Dáta a skripty](./dp2021/", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-3", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "nku.\n\nVirtuálne stretnutie 27.11.2020:\n\n- Zatiaľ zostávame pri ručnej extrakcii dát z anotačnej schémy.\n- Vypracovaná [tabuľka s experimentami](./dp2021/train_experiments)\n- [Dáta a skripty](./dp2021/annotation)\n\nÚlohy:\n\n- Pracovať na ďalších anotáciách, zlepšiť presnosť modelu.\n- Urobiť ďalšie experimenty.\n- Začať pracovať na článku. Niečo podobné ako [Znalosti](https://hi.kkui.fei.tuke.sk/daz2019/), alebo [AEI](http://www.aei.tuke.sk/). šablóna ieee alebo llncs.\n\nStretnutie 20.1.2021\n\n- Draft článku\n\nVirtuálne stretnutie 13.11.2020:\n\n- výsledky skopírované do [adresára](./dp2021)\n- prečítané 3 články - porovnanie manuálnej anotácie a poloautomatickej. \n- začiatok práce na skripte pre počítanie anotovaných entít, treba ešte vylepšiť aby vznikla tabuľka.\n- anotačná schéma vyzerá byť v poriadku, niektoré články treba odfiltrovať (zoznam obrázkov, prázdna kategória, nadpis).\n\nÚlohy do ďalšieho stretnutia:\n\n- vytvoriť spôsob pre získanie dát z produkčnej anotačnej schémy. (pre vedúceho)\n- vytvorte ďalšie anotácie.\n- Spísať pravidlá pre validáciu. Aký výsledok anotácie je dobrý? Je potrebné anotované dáta skontrolovať?\n- Vytvorte tabuľku kde uvediete presnosť modelu s rôznym množstvom", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-4", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "- vytvorte ďalšie anotácie.\n- Spísať pravidlá pre validáciu. Aký výsledok anotácie je dobrý? Je potrebné anotované dáta skontrolovať?\n- Vytvorte tabuľku kde uvediete presnosť modelu s rôznym množstvom anotovaných dát.\n- Aký je najlepší spôsob vyhodnotnenia? Vytvoriť jednotnú testovaciu množinu. Druhý spôsob je použiť \"10 fold cross validation\" (Všetky dáta sa rozdelia na 10 častí, 9 sa využije pri trénovaní, 1 pri testovaní. Trénovanie sa opakuje 10 krát stále pre inú testovaciu množinu, výsledky sa spriemerujú).\n\nVirtuálne stretnutie 30.10.2020:\n\nStav:\n\n- Vylepšený návod\n- Vyskúšaný export dát a trénovanie modelu z databázy. Problém pri trénovaní Spacy - iné výsledky ako cez Prodigy trénovanie\n- Práca na textovej časti.\n\nÚlohy do ďalšieho stretnutia:\n- Vytvorte si repozitár s názvom dp2021 a tam pridajte skripty a poznámky.\n- Pokračujte v písaní práce. Vykonajte prieskum literatúry \"named entity corpora\" aj poznámky.\n- Vytvorte systém pre zistenie množstva a druhu anotovaných dát. Koľko článkov? Koľko entít jednotlivvých typov? Výsledná tabuľka pôjde do práce.\n- Pripraviť sa na produkčné anotácie. Je schéma pripravená?\n\nVirtuálne stretnutie 16.10.2020:\n\nStav:\n- Spísané stručné poz", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-5", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "ko článkov? Koľko entít jednotlivvých typov? Výsledná tabuľka pôjde do práce.\n- Pripraviť sa na produkčné anotácie. Je schéma pripravená?\n\nVirtuálne stretnutie 16.10.2020:\n\nStav:\n- Spísané stručné poznámky k procesu anotácie\n- Pokusne anotovaných niekoľko článkov\n\nÚlohy na ďálšie stretnutie:\n- Vylepšiť oficiálny návod na anotáciu NER https://zp.kemt.fei.tuke.sk/topics/named-entity/navod podľa poznámok a skúsenosti pri anotácii. Pridajte pravidlá pre učenie Accept a Reject článku. Ktorý paragraf je vhodný na anotáciu?\n- Pripraviť skript na výber anotovaných dát z databázy a úpravu do podoby vhodnej pre trénovanie.\n- Spísať pravidlá pre validáciu. Aký výsledok anotácie je dobrý? Je potrebné anotované dáta skontrolovať?\n- Pokračujte v písaní DP.\n\nVirtuálne stretnutie 9.10.2020:\n\nStav:\n\n- Vyskúšané trénovanie modelu podľa repozitára spacy-skmodel\n- Začiatok práce na textovej časti (vo Worde do šablóny ZP).\n\nÚlophy na ďalšie stretnutie:\n\n- Prečítajte si návod na anotáciu a navrhnite zlepšenia návodu. Cieľ je napísať presnú metodiku anotácie.\n- Pokusne antujte niekoľko článkov, spíšte problémové miesta.\n\nStretnutie 25.9.2020:\n\nUrobené:\n\nOboznámenie sa procesom anotácie NER\n\nÚlohy na ďal", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-6", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "nia návodu. Cieľ je napísať presnú metodiku anotácie.\n- Pokusne antujte niekoľko článkov, spíšte problémové miesta.\n\nStretnutie 25.9.2020:\n\nUrobené:\n\nOboznámenie sa procesom anotácie NER\n\nÚlohy na ďalšie stretnutie:\n- Natrénovať a vyhodnotiť model podľa https://git.kemt.fei.tuke.sk/dano/spacy-skmodel\n- začať pracovať na textovej časti podľa https://www.ieee.org/conferences/publishing/templates.html\n\nNávrhny na zlepšenie:\n\nJe potrebné rozbehať produkčnú anotáciu NER", + "text_length": 470 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-7", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "## Diplomový projekt 1 2020\n\nVýstupy (18.6.2020): \n\n- [Anotačná schéma](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/students/2016/jakub_maruniak/dp2021/annotation)\n- [nasadenie anotačnej schémy](http://skner.tukekemt.xyz)\n- [Korpus 1300 viet z wikipédie](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/students/2016/jakub_maruniak/dp2021/annotation/ner/textfile.csv)\n\nÚlohy na semester:\n\n- Rozbehať anotačnú schému pre vyznačovanie slovenských pomenovaných entít\n- Vybrať a pripraviť vhodné dáta na anotáciu\n\nStretnutie 30.6.2020: \n\n- Dodaný korpus 1300 viet\n- Je dobré dáta rozdeliť na vety (odporúčanie, ľahšie sa sleduje anotované množstvo).\n\nVirtuálne stretnutie 15.5.2020:\n\n- Rozbehaná slovenská anotačná schéma pre pomenované entity\n- Problém so slovenským NER modelom z wiki dát\n\nÚlohy:\n\n- vytvoriť do repozitára annotation adresár ner so všetkým potrebným pre spustenie slovenskej ner schémy (skripty, vzorové textové dáta).\n- vyriešiť problém so spacy modelom.\n\nRevízia 21.4.:\n\nOdkaz na projekt: https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/students/2016/jakub_maruniak/dp2021/annotation\n\nRevízia 9.4. a 17.4.\n\nNové úlohy:\n\n- vytvor", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-8", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "modelom.\n\nRevízia 21.4.:\n\nOdkaz na projekt: https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/students/2016/jakub_maruniak/dp2021/annotation\n\nRevízia 9.4. a 17.4.\n\nNové úlohy:\n\n- vytvorte skript pre anotáciu slovenských pomenovaných entít. \n - Pozrite si https://prodi.gy/docs/named-entity-recognition (aj video)\n - Spustite schému \"Manual annotation with suggestions from a model\" (použite aj [príklady](https://git.kemt.fei.tuke.sk/dano/annotation) \n- Ako zdroj dát použite https://git.kemt.fei.tuke.sk/dano/spacy-skmodel/src/branch/master/sources/skner/wikiann-sk.bio\n - Urobte skript, ktorý zmení wiki dáta do [spacy formátu](https://raw.githubusercontent.com/explosion/prodigy-recipes/master/example-datasets/raw_shares-newsapi.jsonl)\n - Uložte skript na GIT a pridajte odkaz do profilu\n\nStretnutie 9.3.2020:\n\nVyvorený prístup do repozitára https://git.kemt.fei.tuke.sk/dano/annotation\n\nÚlohy na ďalšie stretnutie:\n\n- Oboznámte sa s so [systémom Docker](https://student.kemt.fei.tuke.sk/predmety/zct)\n- Rozbehajte si anotáciu z repozitára\n- Skúste upraviť proces tak aby bol vhodný na anotáciu slovenských pomenovaných entít\n\nNávrh možných entít na anotáciu:\n\n- OSOBA", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-9", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "t.kemt.fei.tuke.sk/predmety/zct)\n- Rozbehajte si anotáciu z repozitára\n- Skúste upraviť proces tak aby bol vhodný na anotáciu slovenských pomenovaných entít\n\nNávrh možných entít na anotáciu:\n\n- OSOBA\n- MIESTO alebo politická geografická entita\n- ORGANIZACIA\n- PRODUKT\n- INE", + "text_length": 273 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-10", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "## Tímový projekt 2019", + "text_length": 22 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/README.md::chunk-11", + "document_path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "#### Anotácia textových dát\n\n*Úlohy tímového projektu*:\n\n- Vypracujte min. 4. stranový rešerš na tému \"Crowdsourcing\"\n- citujte min. 10 najvýznamnejších bibliografických zdrojov\n\n*Písomná práca*: [Rešerš](./timovy_projekt)", + "text_length": 222 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/README.md::chunk-0", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "## Diplomový projekt 2 2020\nStav:\n- aktualizácia anotačnej schémy (jedná sa o testovaciu schému s vlastnými dátami)\n- vykonaných niekoľko anotácii, trénovanie v Prodigy - nízka presnosť = malé množstvo anotovaných dát. Trénovanie v spacy zatiaľ nefunguje.\n- Štatistiky o množstve prijatých a odmietnutých anotácii získame z Prodigy: prodigy stats wikiart. Zatiaľ 156 anotácii (151 accept, 5 reject). Na získanie prehľadu o množstve anotácii jednotlivých entít potrebujeme vytvoriť skript.\n- Prehľad literatúry Named Entity Corpus\n - Budovanie korpusu pre NER – automatické vytvorenie už anotovaného korpusu z Wiki pomocou DBpedia – jedná sa o anglický korpus, ale možno spomenúť v porovnaní postupov \n - Building a Massive Corpus for Named Entity Recognition using Free Open Data Sources - Daniel Specht Menezes, Pedro Savarese, Ruy L. Milidiú\n - Porovnanie postupov pre anotáciu korpusu (z hľadiska presnosti aj času) - Manual, SemiManual\n - Comparison of Annotating Methods for Named Entity Corpora - Kanako Komiya, Masaya Suzuki\n - Čo je korpus, vývojový cyklus, analýza korpusu (Už využitá literatúra – cyklus MATTER)\n - Natural Language Annotation for Machine Learn", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/README.md::chunk-1", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 1, + "text": "Named Entity Corpora - Kanako Komiya, Masaya Suzuki\n - Čo je korpus, vývojový cyklus, analýza korpusu (Už využitá literatúra – cyklus MATTER)\n - Natural Language Annotation for Machine Learning – James Pustejovsky, Amber Stubbs\n\nAktualizácia 09.11.2020:\n- Vyriešený problém, kedy nefungovalo trénovanie v spacy\n- Vykonaná testovacia anotácia cca 500 viet. Výsledky trénovania pri 20 iteráciách: F-Score 47% (rovnaké výsledky pri trénovaní v Spacy aj Prodigy)\n- Štatistika o počte jednotlivých entít: skript count.py", + "text_length": 525 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/README.md::chunk-2", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 2, + "text": "## Diplomový projekt 1 2020\n\n- vytvorenie a spustenie docker kontajneru\n\n```\n./build-docker.sh\ndocker run -it -p 8080:8080 -v ${PWD}:/work prodigy bash", + "text_length": 151 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/README.md::chunk-3", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 3, + "text": "# (v mojom prípade:)\nwinpty docker run --name prodigy -it -p 8080:8080 -v C://Users/jakub/Desktop/annotation/work prodigy bash\n```", + "text_length": 130 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/README.md::chunk-4", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 4, + "text": "### Spustenie anotačnej schémy\n- `dataminer.csv` články stiahnuté z wiki\n- `cd ner`\n- `./01_text_to_sent.sh` spustenie skriptu *text_to_sent.py*, ktorý rozdelí články na jednotlivé vety\n- `./02_ner_correct.sh` spustenie anotačného procesu pre NER s návrhmi od modelu \n- `./03_ner_export.sh` exportovanie anotovaných dát vo formáte jsonl potrebnom pre spracovanie vo spacy", + "text_length": 372 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md::chunk-0", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "## Diplomový projekt 2 2020\n\n- vytvorenie a spustenie docker kontajneru\n\n```\n./build-docker.sh\nwinpty docker run --name prodigy -it -p 8080:8080 -v C://Users/jakub/Desktop/annotation-master/annotation/work prodigy bash\n```", + "text_length": 222 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md::chunk-1", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 1, + "text": "### Spustenie anotačnej schémy\n- `dataminer.csv` články stiahnuté z wiki\n- `cd ner`\n- `./01_text_to_sent.sh` spustenie skriptu *text_to_sent.py*, ktorý rozdelí články na jednotlivé vety\n- `./02_ner_manual.sh` spustenie manuálneho anotačného procesu pre NER \n- `./03_export.sh` exportovanie anotovaných dát vo formáte json potrebnom pre spracovanie vo spacy. Možnosť rozdelenia na trénovacie (70%) a testovacie dáta (30%) (--eval-split 0.3).\nPozn. aby --eval-split fungoval správne, je potrebné v inštalácii prodigy (cestu zistíme pomocou `prodigy stats`) v súbore `recipes/train.py` upraviť funkciu `data_to_spacy` (mal by byť riadok 327). V novej verzii by to malo byť opravené. Do riadku treba pridať parameter eval_split. \n`json_data, eval_data, split = train_eval_split(json_data, eval_split)`", + "text_length": 799 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md::chunk-2", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 2, + "text": "### Anotované databázy\n- `./ner/skner/sknerv4.jsonl` - Aktuálna anotovaná databáza z https://skner.tukekemt.xyz/ (Celkovo cca 5000 článkov)\n- `./ner/wikiart/wikiart2.jsonl` - Vlastná databáza, články rozdelené na vety (Celkovo cca 1300 viet)\n- Presná štatistika o databázach bude doplnená", + "text_length": 288 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md::chunk-3", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 3, + "text": "### Štatistika o anotovaných dátach\n- `prodigy stats wikiart` - informácie o počte prijatých a odmietnutých článkov pre konkrétny dataset v prodigy", + "text_length": 147 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md::chunk-4", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 4, + "text": "### Vizualizácia anotovaných dát\n- `streamlit run visualizer.py visualize ./dataset.jsonl` - Vypíše anotácie zo zvolenej databázy na lokálnej adrese http://192.168.1.26:8501", + "text_length": 173 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md::chunk-5", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 5, + "text": "### Trénovanie modelu\nZaložené na: https://git.kemt.fei.tuke.sk/dano/spacy-skmodel\n- Na trénovanie NER využitá vstavaná funkcia spacy train\n- Testované aj s custom skriptom na trénovanie - `custom_train.py` - približne rovnaké výsledky, neporovnateľne dlhší čas trénovania", + "text_length": 272 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md::chunk-6", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 6, + "text": "### Scripts\n`python scripts.py [command] [arguments]`\n\n| Príkaz | Popis | Argumenty |\n| ---------- | ------------------ | ------------------- |\n| `count` | Vypíše štatistiky o databáze vo formáte JSONL z Prodigy.| dataset_path|\n| `delete_annot` | Vytvorí samostatnú databázu s anotáciami iba od zvoleného anotátora.| annotator, dataset_path, new_dataset_path|\n| `modelinfo`| Vypíše informácie o natrénovanom modeli (Precision, Recall a F-skóre), zároveň aj o jednotlivých entitách. | - |", + "text_length": 494 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md::chunk-0", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "# Trénovacie experimenty\n\nDo tohto súboru sa budú postupne zapisovať štatistiky a poznámky ku vykonaným trénovacím experimentom.\n\nV rámci experimentu pracujeme s dvomi databázami:\n - Wikiart - vlastná anotovaná databáza článkov. Každý článok = 1 veta.\n - Skner - anotovaná databáza z https://skner.tukekemt.xyz/ . Počet viet v jednotlivých článkoch je rôzny.", + "text_length": 358 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md::chunk-1", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 1, + "text": "### Trénovanie Wikiart\n1. Experiment - trénovanie modelu pomocou databázy Wikiart\n\n![1.Wikiart](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/jakub_maruniak/dp2021/img/1wikiart.PNG)\n\nCelkovo 501 článkov. \n351 použitých na trénovanie, 150 na testovanie. \n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 55,55%\n\n| Entita | Počet anotácii | F-skóre | \n|--|--|--|\n|PER|85|41,66%|\n|LOC|240|65,51%|\n|ORG|30|0,0%|\n|MISC|42|44,44%|", + "text_length": 466 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md::chunk-2", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 2, + "text": "### Trénovanie Skner\n2. Experiment - trénovanie modelu pomocou databázy skner.\n\n![2.Skner](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/jakub_maruniak/dp2021/img/2skner.PNG)\n\n1.\nCelkovo 488 článkov. \n342 použitých na trénovanie, 146 na testovanie. \n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 60,99%\n\n| Entita | Počet anotácii | F-skóre | \n|--|--|--|\n|PER|376|60,07%|\n|LOC|885|67,39%|\n|ORG|149|42,10%|\n|MISC|80|8,69%|\n\n2.\nCelkovo 976 článkov. \n684 použitých na trénovanie, 292 na testovanie. \n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 62,9%%\n\n| Entita | Počet anotácii | F-skóre | \n|--|--|--|\n|PER|684|60,68%|\n|LOC|1417|70,45%|\n|ORG|280|40,87%|\n|MISC|416|43,08%|\n\n3.\nCelkovo 2696 článkov. \n1871 použitých na trénovanie, 801 na testovanie. \n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 70.33%\n\n| Entita | Počet anotácii | F-skóre | \n|--|--|--|\n|PER|1886|71,08%|\n|LOC|3678|79,01%|\n|ORG|820|48,81%|\n|MISC|1171|52,38%|", + "text_length": 991 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md::chunk-3", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 3, + "text": "### 3. Experiment\n3. Experiment - na natrénovanie modelu je využitá kompletná databáza Skner. Na testovanie modelu je využitá databáza Wikiart.\n\n1.verzia databázy skner - 488 článkov\n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 49,67%\n\n| Entita | F-skóre | \n|--|--|\n|PER|39,08%|\n|LOC|60,99%|\n|ORG|27,77%|\n|MISC|4,44%|\n\n2.verzia databázy skner - 976 článkov\n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 51,08%\n\n| Entita | F-skóre | \n|--|--|\n|PER|38,22%|\n|LOC|60,83%|\n|ORG|33,33%|\n|MISC|30,30%|\n\n3.verzia databázy skner - 2672 článkov\n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 56,26%\n\n| Entita | F-skóre | \n|--|--|\n|PER|45,35%|\n|LOC|67,25%|\n|ORG|31,58%|\n|MISC|39,47%|", + "text_length": 704 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md::chunk-4", + "document_path": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 4, + "text": "### 4. Experiment\n4. Experiment - Obe databázy sme zlúčili. \n\n![4.Merged](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/jakub_maruniak/dp2021/img/4merged.PNG)\n\n1. verzia\nCelkovo 989 článkov. \n693 použitých na trénovanie, 296 na testovanie. \n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 61,90%\n\n| Entita | Počet anotácii | F-skóre | \n|--|--|--|\n|PER|461|54,00%|\n|LOC|1125|71,87%|\n|ORG|179|42,00%|\n|MISC|122|18,18%|\n\n2. verzia\nCelkovo 3197 článkov. \n2222 použitých na trénovanie, 951 na testovanie. \n15 iterácii trénovania. \nF-skóre natrénovaného modelu: 70,48%\n\n| Entita | Počet anotácii | F-skóre | \n|--|--|--|\n|PER|1971|69,18%|\n|LOC|3918|80,52%|\n|ORG|850|42,33%|\n|MISC|1213|50,24%|", + "text_length": 732 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-0", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 0, + "text": "**Crowdsourcing**\n\nČo je to crowdsourcing? Výraz _crowdsourcing_ bol prvý krát použitý v júni 2006, kedy editor magazínu Wired, Jeff Howe, vydal článok „The Rise of Crowdsourcing" [1]. V tomto článku a v ďalších príspevkoch na svojom blogu popisuje novú organizačnú formu, koncept, pri ktorom je problém zadaný neznámej skupine riešiteľov. Zákazníci, alebo žiadatelia môžu uverejniť požadované úlohy na crowdsourcingovú platformu, kde dodávatelia – skupina, alebo jednotlivci vykonajú tieto úlohy na základe ich záujmov a schopností [2].\n\nPodobne ako mnoho iných výrazov, ktoré boli po prvý krát použité v magazíne Wired, aj výraz crowdsourcing sa rýchlo udomácnil a začal byť používaný širokou verejnosťou. Podľa vyjadrenia Howa, sa vyhľadávanie termínu crowdsourcing pomocou Googlu zvýšilo v priebehu jedného týždňa po uverejnení článku na jeho blogu z 3 až na 180 000 výsledkov. Táto téma je aj dnes veľmi diskutovanou oblasťou výskumu, pričom v priebehu posledných 5 rokov bolo publikovaných viac ako 10 000 publikácii [3]. Platformy, akými sú Amazon Mechanical Turk, alebo CrowdFlower poskytujú možnosť jednoduchého spojenia zákazníkov a dodávateľov.\n\nPresne definovať crowdsourcing je kvôl", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-1", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 1, + "text": "viac ako 10 000 publikácii [3]. Platformy, akými sú Amazon Mechanical Turk, alebo CrowdFlower poskytujú možnosť jednoduchého spojenia zákazníkov a dodávateľov.\n\nPresne definovať crowdsourcing je kvôli rozdielnemu pohľadu na túto problematiku takmer nemožné. To, čo niektorí autori považujú za súčasť tejto oblasti nemusia iní odborníci klasifikovať ako crowdsourcing. Príkladom môžu byť tvrdenia autora Buechelera [4], ktorý vo svojom výskume opisuje Wikipediu ako príklad crowdsourcingu, alebo autor Huberman [5] na tento príklad využíva YouTube, zatiaľ čo Frank Kleeman [6] vo svojom článku tvrdí úplný opak. Množstvo rozdielnych definícii má za následok to, že crowdsourcing nemožno definovať koherentne. Estellés-Arolas a Fernando Gonzáles-Ladrón-de-Guevara vydali v roku 2012 odborný článok venujúci sa tejto problematike, pričom zozbierali odbornú literatúru na túto tému a našli takmer 40 rozdielnych interpretácií tohto termínu s viacerými konfliktmi [7]. Aj podľa vyjadrenia Darena Brabhama sa začalo mnoho médií využívať ako príklad pre crowdsourcing, avšak nemajú nič spoločné s ich pôvodnou štruktúrou. Spomenul napríklad Wikipediu, YouTube, Flickr, blogy a open-source softvéry. Všetko,", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-2", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 2, + "text": "sa začalo mnoho médií využívať ako príklad pre crowdsourcing, avšak nemajú nič spoločné s ich pôvodnou štruktúrou. Spomenul napríklad Wikipediu, YouTube, Flickr, blogy a open-source softvéry. Všetko, kde sa nachádzala väčšia skupina ľudí, ktorá robila čokoľvek bola chybne považovaná za crowdsourcing, pričom aj v mnohých známych médiách bola o tejto problematike rozširovaná mätúca informácia o tom, čo to vlastne je [1]. Estellés-Arolas a Fernando Guaevara vo svojej práci rozanalyzovali dostupné informácie a dospeli k záveru, že správna definícia by mala byť: „Crowdsourcing je typ online participatívnej aktivity, v ktorej jednotlivec, inštitúcia, nezisková organizácia, alebo spoločnosť navrhne skupine jednotlivcov s rôznymi znalosťami, rôzneho pohlavia a počtu prostredníctvom verejnej výzvy možnosť dobrovoľného vykonávania úlohy. Vykonanie úlohy variabilnej zložitosti a modularity, ktorej sa skupina zúčastní prínosom vo forme svojej práci, peňazí, vedomostí a/alebo skúseností prináša vždy vzájomný prospech. Používateľ je uspokojený daným typom potreby, či už je to finančným spôsobom, sociálnym uznaním, sebauspokojením alebo rozvojom individuálnych zručností, zatiaľ čo zadávateľ získ", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-3", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 3, + "text": "dy vzájomný prospech. Používateľ je uspokojený daným typom potreby, či už je to finančným spôsobom, sociálnym uznaním, sebauspokojením alebo rozvojom individuálnych zručností, zatiaľ čo zadávateľ získa a využije vo svoj prospech to, čo používateľ doniesol do projektu, ktorého forma závisí od typu vykonávanej činnosti. " [7]\n\nVyužitie tohto konceptu so sebou prináša aj potenciálne benefity, medzi ktoré môžeme zaradiť: [2], [8]\n\n- Náklady – Odmeny za vykonanú prácu sa značne líšia na základe typu vykonávanej práce, začínajú na mikro platbách, ale môžu sa vyšplhať až na niekoľko stovák, resp. tisícok eur. Zákazníci platia iba za vedomosti, ktoré potrebujú pre svoj konkrétny projekt. Účastníci crowdsourcingových projektov sú často krát amatéri, čerství absolventi univerzít alebo jednotlivci, ktorí si chcú vo voľnom čase privyrobiť a teda nemajú také vysoké nároky ako profesionáli. Taktiež niektoré typy úloh sú vykonávane zadarmo, na báze dobrovoľníctva.\n- Kvalita – vďaka prístupu k širokej skupine vývojárov, ktorí majú požadovanú zručnosť k vypracovaniu daného problému si má zadávateľ možnosť vybrať riešenie, ktoré najviac vyhovuje jeho podmienkam, resp. má prístup k väčšiemu množ", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-4", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 4, + "text": "rokej skupine vývojárov, ktorí majú požadovanú zručnosť k vypracovaniu daného problému si má zadávateľ možnosť vybrať riešenie, ktoré najviac vyhovuje jeho podmienkam, resp. má prístup k väčšiemu množstvu dosiahnutých výsledkov.\n- Rýchlosť – vďaka prístupu k väčšiemu množstvu talentov je možné vyvíjať, resp. zadať niekoľko úloh súčasne, nakoľko úlohy sa neviažu ku konkrétnemu vývojárovi. Taktiež sú tvorcovia na crowdsourcingových platformách často ochotní pracovať vo svojom voľnom čase, alebo cez víkendy, takže požadovaná úloha môže byť splnená o výrazne nižší čas ako v porovnaní s klasickými zamestnancami vo firmách.\n- Kreativita a inovácie – rozmanitosť odborných znalostí, ktoré poskytuje dav je omnoho väčšia ako v porovnaní s väčšinou jednotlivých spoločností. To zaisťuje, že riešenia môžu byť kreatívnejšie.\n\nNa základe týchto benefitov možno konštatovať a dedukovať, že čoraz viac úloh bude riešených práve takouto formou. Aj Lakhani a Panetta v ich štúdii poukazovali na to, že splniť úlohy požadujúce konkrétne znalosti bude pomocou klasického uzatvoreného modelu čoraz náročnejšie, nakoľko väčšina potrebných znalostí sa bude nachádzať mimo túto organizáciu [2], [9].\n\n**Crowdsourc", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-5", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 5, + "text": "ť úlohy požadujúce konkrétne znalosti bude pomocou klasického uzatvoreného modelu čoraz náročnejšie, nakoľko väčšina potrebných znalostí sa bude nachádzať mimo túto organizáciu [2], [9].\n\n**Crowdsourcing a spracovanie prirodzeného jazyka**\n\n _Natural Language Processing (NLP),_ alebo spracovanie prirodzeného jazyka je oblasť výskumu, ktorá prepája lingvistiku a umelú inteligenciu. Prirodzený jazyk je v porovnaní s počítačovými programovacími jazykmi úplne odlišný. Prirodzený jazyk slúži na komunikáciu medzi ľuďmi a vzájomné vymieňanie si informácii. Nie sú určené na preklad do konečného cyklu matematických operácii, aké používajú programovacie jazyky. Počítačový program napísaný v určitom programovacom jazyku odovzdá stroju konkrétnu úlohu, ktorú má vykonať. Neexistuje však kompilátor pre prirodzený jazyk, akými sú napríklad slovenčina, alebo angličtina.\n\nSpracovanie prirodzeného jazyka predstavuje v princípe preklad prirodzeného jazyka na dáta (čísla), pomocou ktorých sa počítač učí o svete. Toto chápanie sveta môže byť následne použité na generovanie textu v prirodzenom jazyku, ktorý odráža toto chápanie [10].\n\nSystém spracovania prirodzeného jazyka je často nazývaný „pipeline&q", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-6", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 6, + "text": "svete. Toto chápanie sveta môže byť následne použité na generovanie textu v prirodzenom jazyku, ktorý odráža toto chápanie [10].\n\nSystém spracovania prirodzeného jazyka je často nazývaný „pipeline", teda potrubie. Toto pomenovanie môžeme chápať ako zreťazené spracovanie, ktoré pozostáva z niekoľkých častí, pričom vstupom na začiatku je prirodzený jazyk a na konci je spracovaný výstup. Myšlienkou je rozdeliť problém na malé kúsky a následne využiť strojové učenie na vyriešenie každého z týchto kúskov osobitne. Zreťazením viacerých modelov strojového učenia tak môžeme spracovať aj komplikovanejšie vstupy [11]. Je známym faktom, že výkonnosť systémov strojového učenia vo veľkej miere závisí aj od množstva a kvality dát, ktoré slúžia ako vstup pre tréningový algoritmus.\n\nV priebehu posledných 10 rokoch bolo spracovanie prirodzeného jazyka posúvané vpred vďaka stále rastúcemu množstvu anotovaných dát – korpusov. Tie sú potrebné na trénovanie NLP algoritmov, ich vyhodnocovanie, ako aj umožnenie porovnávania algoritmov a opakované experimentovanie. V minulosti sa o produkovanie takýchto dát starali projekty ako napríklad ACE-2004, TAC, SemEval a Senseval alebo veľký projekt OntoNot", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-7", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 7, + "text": "umožnenie porovnávania algoritmov a opakované experimentovanie. V minulosti sa o produkovanie takýchto dát starali projekty ako napríklad ACE-2004, TAC, SemEval a Senseval alebo veľký projekt OntoNotes [12]–[15]. Tie sa ukázali, ako základ pre tréning NLP algoritmu a vďaka nim dnes vieme, aký spôsob je najlepší pre vytváranie anotácii vysokej kvality prostredníctvom zamestnávania, školenia a riadenia skupín lingvistických expertov. V posledných rokoch vznik rôznych crowdsourcových platforiem podmienil výskumníkov v oblasti NLP, aby experimentovali s týmto modelom ako novým prístupom pri získavaní jazykových korpusov [16]. Mnoho pozornosti si tieto platformy získali aj vďaka tomu, že získavanie anotácii pre tréning systémov umelej inteligencie pomocou klasických metód bolo často namáhavé a veľmi nákladné. Viacero výskumov na túto tému v poslednej dobe poukazuje na fakt, že pokiaľ sú anotácie získané od bežných ľudí v dostatočnej kvantite, dokážu sa svojou kvalitou vyrovnať, alebo často krát aj prekonať anotácie od expertov a to za podstatne nižšie náklady [17], [18], [19].\n\nVďaka crowdsourcingu majú výskumníci jednoduchý prístup k veľkej zásobe lacnej práce a poskytuje im potenciál", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-8", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 8, + "text": "krát aj prekonať anotácie od expertov a to za podstatne nižšie náklady [17], [18], [19].\n\nVďaka crowdsourcingu majú výskumníci jednoduchý prístup k veľkej zásobe lacnej práce a poskytuje im potenciál na podrobné skúmanie jazykových javov vďaka obrovskému množstvu vzoriek ľudských anotovaných dát. Táto metóda získavania dát je veľmi cenná pre počítačových lingvistov ako zdroj označených tréningových dát na využitie v strojovom učení a taktiež ako prostriedok na zhromažďovanie údajov zo spoločenských vied, ktoré spájajú používanie jazyka so základným presvedčením a správaním [3].\n\nEfektívne zbieranie crowdsourcových dát vyžaduje pozorné kladenie dôrazu na samotný proces, od výberu vhodnej skupiny pracovníkov, cez zadanie jasných inštrukcii, ktoré by mali byť pochopiteľné pre každého, až po vykonanie kontroly zozbieraných dát a eliminovanie spamu, ktorý bol vyplnený náhodne alebo zlým spôsobom, iba za účelom získania odmeny.\n\nModel crowdsourcingu pre vytváranie korpusu môže mať 3 formy. Prvou formou je mechanizovaná práca, kde sú pracovníci zvyčajne finančne odmenení. Sem patria problémy, ktoré sú subjektívne a zatiaľ nemôžu byť spoľahlivo riešené automaticky, ako napríklad získavani", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-9", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 9, + "text": "Prvou formou je mechanizovaná práca, kde sú pracovníci zvyčajne finančne odmenení. Sem patria problémy, ktoré sú subjektívne a zatiaľ nemôžu byť spoľahlivo riešené automaticky, ako napríklad získavanie názorov a citov (Mellebeek a kol., 2010) [19], rozpoznanie správneho výrazu slov (Parent, Eskenazi, 2010) [20], odpovedanie na otázky (Heilman a Smith, 2010) [21], korpusy získavané zo špeciálnych zdrojov – Twitter (Finin a kol., 2010) [22], alebo emailová komunikácia (Lawson a kol., 2010) [23] a mnoho ďalších. Nespornou výhodou crowdsourcingu je prístup k zahraničným trhom a k ľuďom, ktorých materinský jazyk je nezvyčajný, exotický. Ďalšou formou crowdsourcingu sú hry s určitým účelom (Games with a purpose – GWAP), v tomto prípade na anotáciu textov. Jedná sa o alternatívnu metódu anotačnej metódy za využitia hry. Úloha je pretransformovaná na hru, výsledkom ktorej sú anotačné dáta. Podľa niektorých výskumov vedie využitie tejto metódy ku kvalitnejším výsledkom a väčšiemu nasadeniu anotátorov vďaka tomu, že ku práci je pridaná zábavná zložka. Taktiež môže hra osloviť iné publikum, než iba klasickú skupinu crowdsourcerov, a teda môže poskytnúť väčšie množstvo výsledkov [24]. Väčšina", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-10", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 10, + "text": "tátorov vďaka tomu, že ku práci je pridaná zábavná zložka. Taktiež môže hra osloviť iné publikum, než iba klasickú skupinu crowdsourcerov, a teda môže poskytnúť väčšie množstvo výsledkov [24]. Väčšina takýchto hier v sebe obsahuje prvky hier, akými sú počítadlo skóre, výber obtiažnosti, tabuľku najlepších hráčov, ale samotná hra je z väčšej bázy v textovej forme so silnou podobnosťou s tradičnou anotáciou. V niektorých výskumoch sa však vývojári snažili o opačný prístup a navrhli klasickú grafickú hru, do ktorej následne importovali prvky anotácie. Príkladom pre takúto hru môže byť napríklad _Puzzle Racer_ [24]. Poslednou formou je využívanie dát od dobrovoľníkov, ktorí sa rozhodli určitým spôsobom prispieť k anotácii. Príkladom môže byť určovanie vhodného významu konkrétneho slova vo vete, určovanie typov entít vo vetách, hľadanie chýb atď. Vhodným príkladom môže byť napríklad online demo nástroja Prodigy [25].\n\n**Zoznam použitej literatúry**\n\n[1] D. C. Brabham, _Crowdsourcing_. 2013.\n\n[2] K. J. Stol, B. Caglayan, and B. Fitzgerald, "Competition-Based Crowdsourcing Software Development: A Multi-Method Study from a Customer Perspective," _IEEE Trans. Softw.", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-11", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 11, + "text": ". 2013.\n\n[2] K. J. Stol, B. Caglayan, and B. Fitzgerald, "Competition-Based Crowdsourcing Software Development: A Multi-Method Study from a Customer Perspective," _IEEE Trans. Softw. Eng._, vol. 45, no. 3, pp. 237–260, 2019.\n\n[3] C. Callison-Burch, L. Ungar, and E. Pavlick, "Crowdsourcing for NLP," no. January, pp. 2–3, 2015.\n\n[4] T. Buecheler, J. H. Sieg, R. M. Füchslin, and R. Pfeifer, "Crowdsourcing, open innovation and collective intelligence in the scientific method: A research agenda and operational framework," _Artif. Life XII Proc. 12th Int. Conf. Synth. Simul. Living Syst. ALIFE 2010_, no. August, pp. 679–686, 2010.\n\n[5] B. A. Huberman, D. M. Romero, and F. Wu, "Crowdsourcing, attention and productivity," _J. Inf. Sci._, vol. 35, no. 6, pp. 758–765, 2009.\n\n[6] F. Kleemann, G. G. Voß, and K. Rieder, "Un(der)paid Innovators: The Commercial Utiliza-tion of Consumer Work through Crowdsourcing," _Sci. Technol. Innov. Stud._, vol. 4, no. 1, p. PP. 5-26, 2008.\n\n[7] E. Estellés-Arolas and F. González-Ladrón-De-Guevara, "Towards an integrated crowdsourcing definition," _J. Inf. Sci", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-12", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 12, + "text": "ci. Technol. Innov. Stud._, vol. 4, no. 1, p. PP. 5-26, 2008.\n\n[7] E. Estellés-Arolas and F. González-Ladrón-De-Guevara, "Towards an integrated crowdsourcing definition," _J. Inf. Sci._, vol. 38, no. 2, pp. 189–200, 2012.\n\n[8] E. Schenk and C. Guittard, "Towards a characterization of crowdsourcing practices," _J. Innov. Econ._, vol. 7, no. 1, p. 93, 2011.\n\n[9] K. R. Lakhani and J. A. Panetta, "The Principles of Distributed Innovation."\n\n[10] H. Hobson, Lane; Howard, Cole; Hapke, _Natural Language Processing in Action_. Manning, 2019.\n\n[11] "The essential guide to how NLP works - Riti Dass - Medium." [Online]. Available: https://medium.com/@ritidass29/the-essential-guide-to-how-nlp-works-4d3bb23faf76. [Accessed: 11-Nov-2019].\n\n[12] "ACE 2004 Multilingual Training Corpus - Linguistic Data Consortium." [Online]. Available: https://catalog.ldc.upenn.edu/LDC2005T09. [Accessed: 12-Nov-2019].\n\n[13] "Text Analysis Conference (TAC)." [Online]. Available: https://tac.nist.gov/. [Accessed: 12-Nov-2019].\n\n[14] "SENSEVAL 3 – evaluation exercises." [Online]. Available: ht", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-13", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 13, + "text": ""Text Analysis Conference (TAC)." [Online]. Available: https://tac.nist.gov/. [Accessed: 12-Nov-2019].\n\n[14] "SENSEVAL 3 – evaluation exercises." [Online]. Available: https://www.senseval.org/. [Accessed: 12-Nov-2019].\n\n[15] "OntoNotes Release 5.0 - Linguistic Data Consortium." [Online]. Available: https://catalog.ldc.upenn.edu/LDC2013T19. [Accessed: 12-Nov-2019].\n\n[16] M. Sabou, K. Bontcheva, L. Derczynski, and A. Scharl, "Corpus annotation through crowdsourcing: Towards best practice guidelines," _Proc. 9th Int. Conf. Lang. Resour. Eval. Lr. 2014_, no. May 2018, pp. 859–866, 2014.\n\n[17] R. Snow, B. O'connor, D. Jurafsky, and A. Y. Ng, "Cheap and Fast-But is it Good? Evaluating Non-Expert Annotations for Natural Language Tasks," 2008.\n\n[18] Q. Su, D. Pavlov, J.-H. Chow, and W. C. Baker, _Internet-Scale Collection of Human-Reviewed Data_. .\n\n[19] B. Mellebeek, F. Benavent, J. Grivolla, J. Codina, M. R. Costa-Jussà, and R. Banchs, "Opinion Mining of Spanish Customer Comments with Non-Expert Annotations on Mechanical Turk."\n\n[20] G. Parent and M. Eskenazi, "Cluste", + "text_length": 1196 + }, + { + "chunk_id": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md::chunk-14", + "document_path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak", + "published": true, + "chunk_index": 14, + "text": ". Codina, M. R. Costa-Jussà, and R. Banchs, "Opinion Mining of Spanish Customer Comments with Non-Expert Annotations on Mechanical Turk."\n\n[20] G. Parent and M. Eskenazi, "Clustering dictionary definitions using Amazon Mechanical Turk."\n\n[21] M. Heilman and N. A. Smith, "Rating Computer-Generated Questions with Mechanical Turk," Association for Computational Linguistics, 2010.\n\n[22] T. Finin, W. Murnane, A. Karandikar, N. Keller, J. Martineau, and M. Dredze, "Annotating Named Entities in Twitter Data with Crowdsourcing," Association for Computational Linguistics, 2010.\n\n[23] N. Lawson, K. Eustice, M. Perkowitz, and M. Yetisgen-Yildiz, "Annotating Large Email Datasets for Named Entity Recognition with Mechanical Turk."\n\n[24] D. Jurgens and R. Navigli, "It's All Fun and Games until Someone Annotates: Video Games with a Purpose for Linguistic Annotation."\n\n[25] "Live Demo · Prodigy · An annotation tool for AI, Machine Learning & NLP." [Online]. Available: https://prodi.gy/demo?view\\_id=ner. [Accessed: 12-Nov-2019].", + "text_length": 1147 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-0", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Ján Holp\n\n*Rok začiatku štúdia*: 2016", + "text_length": 39 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-1", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Diplomová práca 2021\n\n*Názov diplomovej práce*: Systém získavania informácií v slovenskom jazyku.\n\n*Meno vedúceho*: Ing. Daniel Hládek, PhD.\n\n*Zadanie diplomovej práce*:\n\n1. Vypracujte prehľad metód ohodnotenia dokumentov v systémoch získavania informácií.\n2. Implementujte jednoduchý systém pre získavanie informácií v slovenskom jazyku, v ktorom využijete ohodnotenie dokumentov.\n3. Navrhnite a vypracujte experimenty, v ktorých vyhodnotíte vybrané metódy odhodnotenia dokumentov.\n4. Navrhnite možné zlepšenia presnosti vyhľadávania.\n\nStretnutie 12.3.\n\nStav:\n\n- Implementovaný PageRank, indexovanie webových stránok\n\nÚlohy:\n\n- Pripravte experiment s PageRank, databáza SCNC2, vyhodnotenie pomocou P-R-F1\n- Pozrite do knihy na metódy vyhodnotenta s PageRank\n- Pozrite do knihy a skúste pripraviť inú metriku.\n- Popri tom priprave demonštráciu s webovým rozhraním.", + "text_length": 868 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-2", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Diplomový projekt 2 2020\n\nZásobník úloh:\n\n- Urobiť verejné demo - nasadenie pomocou systému Docker. Využiť veľké slovenské dáta z internetu.\n- zlepšenie Web UI\n- vytvoriť REST api pre indexovanie dokumentu.\n- V indexe prideliť ohodnotenie každému dokumentu podľa viacerých metód, napr. PageRank\n- Využiť vyhodnotenie pri vyhľadávaní\n\n- **Použiť overovaciu databázu SCNC na vyhodnotenie každej metódy**\n- **Do konca zimného semestra vytvoriť \"Mini Diplomovú prácu cca 8 strán s experimentami\" vo forme článku**\n\nVirtuálne stretnutie 7.1.2020:\n\nDohoda na zmene smerovania práce. Chceme:\n- Rozšíriť BP o vyhľadávanie pomocou PageRank\n- Doplniť pagerank do indexu z BP\n- zakomponovať Pagerank do vyhľadávania a zistiť ako to ovplyvnilo P-R\n- Implementovať podobným spôsobom minimálne jednu ďalšiu metriku zo študijnej literatúry\n- Zásobník úloh ostáva ak bude čas. Napr. vyrobiť demo aj z BP.\n\nVirtuálne stretnutie 18.12:2020:\n\nŽiaden pokrok.\n\nVirtuálne stretnutie 3.1ľ:2020:\n\nRiešenie technických problémov ako implementovať PageRank.\n\nVirtuálne stretnutie 13.11:2020:\n\nStav: \n\n- Vyriešené technické problémy s cassandrou. Vieme indexovať z Cassandra do ES.\n\nÚlohy na ďalšie stretnutie:\n\n- urobte ná", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-3", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "oblémov ako implementovať PageRank.\n\nVirtuálne stretnutie 13.11:2020:\n\nStav: \n\n- Vyriešené technické problémy s cassandrou. Vieme indexovať z Cassandra do ES.\n\nÚlohy na ďalšie stretnutie:\n\n- urobte návrh metódy PageRank.\n- priprave Vaše kódy do formy web aplikácie a dajte ich do repozitára.\n - backend s REST API.\n - frontend s Javascriptom.\n - skúste pripraviť Dockerfile s Vašou aplikáciou.\n\nVirtuálne stretnutie 6.11:2020:\n\nStav:\n\n- Riešenie problémov s cassandrou a javascriptom. Ako funguje funkcia then? \n\nÚlohy na ďalšie stretnutie:\n\n- vypracujte funkciu na indexovanie. Vstup je dokument (objekt s textom a metainformáciami). Fukcia zaindexuje dokument do ES.\n- Naštudujte si ako funguje funkcia then a čo je to callback.\n- Naštudujte si ako sa používa Promise.\n- Naštudujte si ako funguje async - await. \n- https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Asynchronous/\n\nVirtuálne stretnutie 23.10:2020:\n\nStav:\n- Riešenie problémov s cassandrou. Ako vybrať dáta podľa primárneho kľúča.\n\nDo ďalšiehio stretnutia:\n\n- pokračovať v otvorených úlohách.\n- urobte funkciu pre indexovanie jedného dokumentu.\n\nVirtuálne stretnutie 16.10.\n\nStav:\n\n- Riešenie problémov s pripojením n", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-4", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "árneho kľúča.\n\nDo ďalšiehio stretnutia:\n\n- pokračovať v otvorených úlohách.\n- urobte funkciu pre indexovanie jedného dokumentu.\n\nVirtuálne stretnutie 16.10.\n\nStav:\n\n- Riešenie problémov s pripojením na Cassandru.\n- Riešenie spôsobu výberu dát z databázy a indexovanie.\n\nDo ďalšieho stretnutia:\n\n- Pokračovať v otvorených úlohách z minulého stretnutia.\n\nVirtuálne stretnutie 2.10.2020\n\nUrobené:\n\n- Výber a indexovanie dát z Cassandry\n\nDo ďalšieho stretnutia:\n\n- pracovať ďalej na indexovaní, použite Cassandra Javascript API\n- urobte návrh metódy PageRank\n- urobte si GIT repozitár nazvite ho dp2021 a dajte tam zdrojové kódy\n- priprave Vaše kódy do formy web aplikácie\n - backend s REST API\n - frontend s Javascriptom\n - skúste pripraviť Dockerfile s Vašou aplikáciou", + "text_length": 776 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-5", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Diplomový projekt 2020\n\nVirtuálne stretnutie 23.6.2020:\n\nHotové:\n\n- funguje databáza Cassandra\n- funguje web rozhranie\n- funguje indexovanie zo súboru.\n\nVýsledky sú v [ZIP súbore](./dp2021/zdrojove_subory/skweb.zip)\n\nTreba dokončiť:\n\n- Indexovanie z Cassandra do ES\n\nVirtuálne stretnutie 14.5.2020:\n\nNové úlohy:\n\n- Rozbehať Cassandra DB a agenta pre získavanie textu\n- Indexovať dokumnety z Cassandra DB do Elasticsearch\n- Pokračovať na práci na Web rozhraní\n- Doriešiť obnovenie slovenskej konfigurácie\n\nUrobené:\n\n- rozrobené web rozhranie\n- rozrobené indexovanie do ElasticSearch\n\nRevízia 13.5.2020:\n\n- Potrebné skompletizovať zdrojové kódy.\n- Nová verzia agenta pre získavanie textu: https://git.kemt.fei.tuke.sk/dano/websucker-pip\n\nRevízia 9.4.2020:\n\n*Návod na prácu s Elasticsearch* : [Návod](./dp2021/navod.md) \n\n*Návod na spustenie web aplikácie* : [Návod](./dp2021/web_api.md) \n\n*Záznam o doterajšom pokroku* : [Pokrok](./dp2021/pokrok.md) \n\nÚloha: \n\n- Nainštalujte si a oboznámte sa s [agentom pre získavanie textu](https://git.kemt.fei.tuke.sk/dano/websucker). \n- Zistite, aká je štruktúra dokumentov v indexoch.\n- vytvorte návrh a prototyp webovej aplikácie ktorá bude slúžiť ako rozhr", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-6", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "gentom pre získavanie textu](https://git.kemt.fei.tuke.sk/dano/websucker). \n- Zistite, aká je štruktúra dokumentov v indexoch.\n- vytvorte návrh a prototyp webovej aplikácie ktorá bude slúžiť ako rozhranie k vyhľadávaciemu indexu.\n\nStretnutie 20.2.2020\n\nÚlohy na tento semester:\n\n- Nainštalovať Elasticsearch a zindexovať veľkú databázu dát z webu.\n- Nájsť spôsob ako vytvoriť verejne prístupné demo.\n\nDo ďalšieho stretnutia:\n\n- Vytvorte git repozitár a dajte tam výsledky z bakalárskej práce. Vytvorte k tomu návod.\n- Porozmýšľajte nad HTML používateľským rozhraním.", + "text_length": 566 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-7", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "## Tímový projekt 2019\n\n*Písomná práca* : [Rešerš](./timovy_projekt) \n\n*Úlohy tímového projektu*: \n\n- Vypracujte min. 4 stranový abstrakt z knihy \"Hang Li: Learning to Rank for Information Retrieval and Natural Language Processing\"\n- Sústreďte sa najprv na algoritmus PageRank a BM25\n- citujte 10 najvýznamnejších bibliografických zdrojov", + "text_length": 338 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-8", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "### Poznámky k vypracovaniu DP\n\n- možnosť pracovať s veľkými dátami Elasticsearch, je nutné sprevádzkovať ES Cluster.\n- možnosť vypracovať jednoduché demo web vyhľadávača\n- inšpirácia Agent pre získavanie textu \"dano/websucker\"\n- Pozrite si Python knižnice pre elasticsearch, a information retrieval (pagerank a pod.)", + "text_length": 317 + }, + { + "chunk_id": "pages/students/2016/jan_holp/README.md::chunk-9", + "document_path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "## Bakalárska práca 2019\n\n*Meno vedúceho*: Ing. Daniel Hládek, PhD.\n\n*Názov bakalárskej práce*: Vyhľadávač na slovenskom internete\n\n*Text bakalárskej práce*: (https://opac.crzp.sk/?fn=detailBiblioForm&sid=A4CA3C451D400D4BD034603141D1)\n\n*Zadanie bakalárskej práce*: \n\n1. Zostaviť prehľad aktuálnych metód vyhľadávania v textových dátach a metód vyhodnotenia presnosti. \n2. Navrhnúť a opísať vlastnú metódu indexovania a vyhľadávania v slovenskom texte. \n3. Navrhnúť a vykonať sadu experimentov pomocou ktorých sa vyhodnotí navrhnutá metóda indexovania a vyhľadávania.\n4. Na základe experimentov navrhnúť vylepšenia navrhnutej metódy vyhľadávania.\n\n[Bakalárska práca 2018 - Vyhľadávač na slovenskom internete](https://opac.crzp.sk/?fn=detailBiblioForm&sid=A4CA3C451D400D4BD034603141D1)", + "text_length": 783 + }, + { + "chunk_id": "pages/students/2016/jan_holp/dp2021/README.md::chunk-0", + "document_path": "pages/students/2016/jan_holp/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "# Diplomový projekt 2020", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-0", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 0, + "text": "# Tímový projekt", + "text_length": 16 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-1", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 1, + "text": "# Learning to Rank for Information Retrieval and Natural Language Processing \n\nAutor, Hang Li , v knihe ukazuje rôzne problémy s hodnotením pri získavaní informácií a spracovaní v prirodzenom jazyku. Autor podáva podrobné vysvetlenia o učení sa pri tvorbe rebríčka a agregácií rebríčka, vrátane školení a testovania, hodnotenia, tvorby prvkov a hlavných prístupov. Na vytvorenie rebríčka bolo navrhnutých veľa metód.", + "text_length": 417 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-2", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 2, + "text": "## Získavanie informácií \nZískavanie informácií (ang. Information retrieval, skratka IR) je veda o vyhľadávaní relevantných údajov v dokumentoch alebo samotnom vyhľadávaní dokumentov. Môžeme to chápať aj ako plne automatický proces, ktorý reaguje na požiadavku užívateľa preskúmaním dokumentov a vrátením zoznamu zoradených dokumentov, ktorý by mal byť relevantný voči požiadavke užívateľa. Takýto automatizovaný systém na získavanie informácií sa používa na zníženie preťaženia informáciami. Typickými systémami na takéto získavanie informácií sú webové prehliadače. Každé vyhľadávanie musí začať analýzou požiadavky, ktorú do systému zadal užívateľ.", + "text_length": 651 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-3", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 3, + "text": "## Machine learning \nStrojové učenie je vedecká štúdia z algoritmov a štatistických modelov, ktoré počítačové systémy používajú na vykonanie určitej úlohy bez použitia jasného návodu. Je to vnímané taktiež ako podskupina umelej inteligencie. Algoritmy strojového učenia vytvárajú matematický model založený na vzorkách údajov, známych ako „školiace údaje“, aby mohli vykonať predpovede alebo rozhodnutia bez toho aby boli výslovne naprogramované na vykonanie úlohy.", + "text_length": 467 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-4", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 4, + "text": "## Learning to rank \nExistuje mnoho otázok v oblasti získavania informácií a spracovania prirodzeného jazyka (ang. natural language processing), medzi ktoré patrí aj hodnotenie (ranking). Naučiť sa hodnotiť je užitočné pre mnoho aplikácií v oblasti získavania informácií, spracovania prirodzeného jazyka a získavania \núdajov. Pri získavaní informácií je veľmi dôležité určiť, resp. ohodnotiť správnosť vyhľadaných informácií. Je potrebné určiť či sú tieto informácie pre nás relevantné alebo nie. Učenie správne hodnotiť je založené na hodnotení pomocou strojového učenia.", + "text_length": 575 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-5", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 5, + "text": "## Natural language processing \nSpracovanie prirodzeného jazyka (NLP) je odvetvie umelej inteligencie, ktoré pomáha počítačom porozumieť, interpretovať a manipulovať s ľudským jazykom. NLP čerpá z mnohých disciplín, vrátane počítačovej vedy a výpočtovej lingvistiky, v snahe zaplniť medzeru medzi ľudskou komunikáciou a počítačovým porozumením.", + "text_length": 344 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-6", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 6, + "text": "## Ranking creation \nAutor v knihe opisuje problémy s vytváraním hodnotenia, ktoré je možné rozdeliť na dve základné úlohy : \n- Tvorba hodnotenia (ranking) - Ranking aggregation \nMôžeme predpokladať, že pri vytváraní hodnotenia máme 2 množiny : \nQ = {q1, q2, ···, qi, ···, qm} \nO = {o1, o2, ···, oj, ···, on} \nMnožina Q môže obsahovať otázky pri vyhľadávaní dokumentov. Množina O môže byť množina, ktorá obsahuje cieľové vety, resp. odpovede na naše otázky. Obe množiny môžu byť nekonečné. Hodnotenie sa vytvára pomocou tzv. funkcie bodovania.", + "text_length": 547 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-7", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 7, + "text": "## Ranking aggregation \nAgregácia klasifikácie môže byť pod dohľadom alebo bez dozoru. Agregácia klasifikácie je vlastne proces kombinovania viacerých zoznamov rebríčkov do jediného rebríčka, ktorý je určený pre väčšinu ostatných vedúcich zoznamov.", + "text_length": 249 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-8", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 8, + "text": "## PageRank \nPageRank je algoritmus, ktorý pridelí čísla s ohodnotením každému prvku v množine, ktoré sú navzájom prepojené, napr. World Wide Web. Čísla prideľuje s cieľom ohodnotiť významnosť daného prvku (dokumentu) v množine. Tento algoritmus je pomenovaný podľa svojho zakladateľa – Larry Page. Tento algoritmus používa aj Google na určenie popularity . Pre tvorcov webových stránok to znamená toľko, že čím väčší je náš PageRank, tým väčšiu dôležitosť stránke prideľuje Google a iné vyhľadávače. A čím je dôležitosť väčšia, tým vyššie je umiestnenie medzi výsledkami vyhľadávania. Samozrejme to nie je jediné kritérium, ktoré stránky posúva medzi výsledkami vyššie. Druhou výhodou je, že vyhľadávač prehľadáva najviac stránky, ktoré majú najväčší PageRank. Google aktualizuje PageRank cca v 3-mesačnom intervale. \nPageRank funguje spočítaním počtu a kvality odkazov na stránku, aby určil hrubý odhad dôležitosti webovej stránky. Základný predpoklad je, že dôležitejšie webové stránky pravdepodobne získajú viac odkazov z iných webových stránok. \n\n![PageRank](pagerank.jpg)\n\nPageRank vyjadruje hodnotenie v percentách. Algoritmus Googlu používa logaritmické vyjadrenie. Na obrázku môžeme vidieť,", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-9", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 9, + "text": "bne získajú viac odkazov z iných webových stránok. \n\n![PageRank](pagerank.jpg)\n\nPageRank vyjadruje hodnotenie v percentách. Algoritmus Googlu používa logaritmické vyjadrenie. Na obrázku môžeme vidieť, že stránka s označením C má vyšší PageRank ako stránka E, aj keď je na stránku E viacero odkazov. PageRank vypočítame podľa tohto vzorca : \n\n![vzorec](vzorec1.PNG)\n\nKde P(d) je pravdepodobnosť zobrazenia stránky d, P(di) je pravdepodobnosť zobrazenia stránky di a M(d) je množina stránok pripojená k d, L(di) je počet odkazov grafu, α je váha.", + "text_length": 545 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-10", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 10, + "text": "## Okapi BM25 \nPri získavaní informácií je Okapi BM25 algoritmus hodnotenia, ktorý používajú vyhľadávacie nástroje na odhad relevantnosti dokumentov pre daný vyhľadávací dopyt. Je založený na pravdepodobnostnom vyhľadávacom rámci, ktorý v 70. a 80. rokoch 20. storočia vypracovali Stephen E. Robertson , Karen Spärck Jones a ďalší. \nBM25 je funkcia získavania slov, ktorá hodnotí skupinu dokumentov na základe výrazov, ktoré sa objavujú v každom dokumente. Vypočíta sa podľa tohto vzorca : \n\n![vzorec](vzorec2.PNG)\n\nKde w označuje slovo v dokumente d, a q, t𝒇(𝒘) označujú frekvenciu slov v dokumente d. id𝒇(𝒘) označuje inverznú frekvenciu slov w v dokumente. dl označuje dĺžku dokumentu d, avgdl označuje priemernú dĺžku dokumentu, b aj k sú konštanty.", + "text_length": 755 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-11", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 11, + "text": "## Použitá literatúra \n[1] LI, H.: Learning to Rank for Information Retrieval and Natural Language Processing: Second Edition. ., 2011, [ cit. 19.december. 2019 ]. Dostupné na webovskej stránke (world wide web): https://ieeexplore.ieee.org/document/6949403 \n\n[2] S.E. Robertson and S.Walker.Some simple effective approximations to the 2-poisson model for probabilistic weighted retrieval. In Proceedings of the17th annual international ACM SIGIR conference on Research and development in information retrieval,SIGIR’94, pages232–241, New York, NY, USA, 1994. Springer-Verlag New York, Inc. [ cit. 19.december. 2019 ]. \n\n[3] Alekh Agarwal, Soumen Chakrabarti, and Sunny Aggarwal. Learning to rank networked entities. In KDD,pages 14–23,2006 [ cit. 19.december. 2019 ]. \n\n[4] C. Cortesand V. Vapnik. Support-vector networks. Machine Learning,20(3):273–297,1995 [ cit. 19.december. 2019 ]. \n\n[5] Christopher D. Manning, Prabhakar Raghavan Hinrich Schütze.: Introduction to Information Retrieval. : Cambridge University Press, 2008. [ cit. 19.december. 2019 ]. \n\n[6] L. Page, S. Brin, R. Motwani, and T. Winograd. The pagerank citation ranking: Bringing order to the web. Technical report, Stanford Unive", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/jan_holp/timovy_projekt/README.md::chunk-12", + "document_path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Ján Holp", + "published": true, + "chunk_index": 12, + "text": "idge University Press, 2008. [ cit. 19.december. 2019 ]. \n\n[6] L. Page, S. Brin, R. Motwani, and T. Winograd. The pagerank citation ranking: Bringing order to the web. Technical report, Stanford University, Stanford, CA, 1998. [ cit. 19.december. 2019 ]. \n\n[7] Zhe Cao, Tao Qin, Tie-Yan Liu, Ming-Feng Tsai, and Hang Li. Learning to rank: from pairwise approach to listwise approach. In ICML ’07: Proceedings of the 24th international conference on Machine learning, pages 129–136, 2007 [ cit. 19.december. 2019 ]. \n\n[8] Altman, Alon; Moshe Tennenholtz (2005). \"Ranking Systems: The PageRank Axioms\" (PDF). Proceedings of the 6th ACM conference on Electronic commerce (EC-05). Vancouver, BC. [ cit. 19.december. 2019 ]. \n\n[9] Langville, Amy N.; Meyer, Carl D. (2006). Google's PageRank and Beyond: The Science of Search Engine Rankings. Princeton University Press, [ cit. 19.december. 2019 ]. \n\n[10] Michael Bendersky,W.Bruce Croft,andYanlei Diao. Quality-biased ranking of web documents. InWSDM,pages 95–104,2011, [cit. 19.december. 2019 ].", + "text_length": 1042 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-0", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Lukáš Pokrývka\n\n*Rok začiatku štúdia:* 2016\n\nNázov: Paralelné trénovanie neurónových sietí\n\n*Meno vedúceho:* Ing. Daniel Hládek, PhD.", + "text_length": 135 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-1", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Diplomová práca 2021\n\n1. Vypracujte prehľad literatúry na tému \"Paralelné trénovanie neurónových sietí\".\n2. Vyberte vhodnú metódu paralelného trénovania.\n3. Pripravte dáta a vykonajte sadu experimentov pre overenie funkčnosti a výkonu paralelného trénovania.\n4. Navrhnite možné zlepšenia paralelného trénovania neurónových sietí.\n\nStretnutie: 5.3.2021\n\nStav: \n\n- Urobené trénovanie na dvoch servroch pomocou distributed_data_parallel MNIST.\n- Funguje LUNA dataset (na 1 stroji a na viacerých kartách).", + "text_length": 504 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-2", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Diplomový projekt 2 2020\n\nCiele na semester:\n- Pripraviť tabuľku s výsledkami experimentov v rôznych konfiguráciách\n- Napísať stručný report (cca 8 strán) vo forme článku.\n\nZásobník úloh:\n\n- Ten istý scenár spustiť v rôznych podmienkach a zmerať čas.\n - Trénovanie na jednej karte na jednom stroji\n - tesla\n - xavier\n - Trénovanie na dvoch kartách na jednom stroji \n - idoc DONE\n - titan\n - možno trénovanie na 4 kartách na jednom\n - quadra\n - *Trénovanie na dvoch kartách na dvoch strojoch pomocou NCCL (idoc, tesla)*\n - možno trénovanie na 2 kartách na dvoch strojoch (quadra plus idoc).\n\nVirtuálne stretnutie 4.12.2020\n\nStav:\n- Vyriešený problém s CUDA Compute Capability. Každý conda baliček podporuje inú verziu CC. Aktuálna verzia Pytorch pracuje iba s Compute Capability 3.7 a viac. Conda Pytorch 1.3 vyžaduje CC 3.7. Tesla karta podporuje iba 3.5. Podpora CC sa dá pridať inštaláciou zo zdroja. Funguje cuda 10.0.\n- Podarilo sa natrénovať MNIST na dvoch strojoch naraz - idoc + tesla. Pytorch 1.4, wrapper distributed_data_paralel. NCCL backend. Na každom stroji sa používa rovnaký počet GPU. GPU môžu byť rôzne. \n\nÚlohy:\n\n- Doplniť ta", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-3", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "vať MNIST na dvoch strojoch naraz - idoc + tesla. Pytorch 1.4, wrapper distributed_data_paralel. NCCL backend. Na každom stroji sa používa rovnaký počet GPU. GPU môžu byť rôzne. \n\nÚlohy:\n\n- Doplniť tabuľku podpory CC v Pytorch.\n- Opísať problém s Compute Capability. Čo je to CC?\n- Napísať \"tutoriál\" ako paralelne trénovať pomocou distributed_data_parallel a NCCL. Napíšte aký setup (verzia pytorch, verzia cuda, požiaadavky na GPU ..) si paralelné trénovanie vyžaduje.\n- Opísať testovacie úlohy ktoré používate\n- Vypracujte tabuľku s vykonanými experimentami.\n- Skúste trénovanie na xavier, skompilovaný Pytorch je v adresári hladek.\n- Quadru prediskutovať (vedúci).\n\nVirtuálne stretnutie 13.11.2020\n\nStav:\n\n- Preštudovaná kniha \"Deep Learning with PyTorch\" o multi GPU tréningu. \n- vyskúšaný LUNA dataset, CT torza pre detekciu rakoviny pľúc - 60GB dát. Dáta sa predpripravia a uložia do cache. 10 epoch trvá 1 hod na bežnom počítači. Nastal problém s \"Compute Capability\" - kompatibilita verzie CUDA, Pytorch a GPU Tesla V40. \n- vyskúšaný wrapper data_paralel, distribute_data_parallel (trénovanie pytorch v klastri).\n- Pytorch Lightning - cluster trénovanie Pytorch cez Slurm.\n\nÚlohy na ďalšie", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-4", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "CUDA, Pytorch a GPU Tesla V40. \n- vyskúšaný wrapper data_paralel, distribute_data_parallel (trénovanie pytorch v klastri).\n- Pytorch Lightning - cluster trénovanie Pytorch cez Slurm.\n\nÚlohy na ďalšie stretnutie:\n\n- Pracujte na písomnej časti.\n- Pokračujte na benchmark experimentoch - trénovanie na viacerých strojoch (idoc a tesla) naraz.\n\nVirtuálne stretnutie 27.10.2020\n\nStav:\n\n- Trénovanie na procesore, na 1 GPU, na 2 GPU na idoc\n- Príprava podkladov na trénovanie na dvoch strojoch pomocou Pytorch.\n- Vytvorený prístup na teslu a xavier.\n\nÚlohy na ďďalšie stretnutie:\n- Štdúdium odbornej literatúry a vypracovanie poznámok. \n- Pokračovať v otvorených úlohách zo zásobníka\n- Vypracované skripty uložiť na GIT repozitár\n- vytvorte repozitár dp2021\n\nStretnutie 2.10.2020\n\nUrobené https://github.com/LukasPokryvka/YELP-on-GPU\n\n- demonštračná úloha pre automatické hodnotenie reštaurácií na základe recenzie v anglickom jazyku, dátová sada yelp.\n- preštudovaná kniha NLP with Pytorch, NLP in Action.\n- trénovanie na NVIDIA RTX2070 Super.\n\nÚlohy do ďalšieho stretnutia:\n- Prejsť odborné publikácie na tému \"benchmarking\" a \"parallel training of neural networks\".\n - Zapísať si relevantné bibliogr", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-5", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": ".\n- trénovanie na NVIDIA RTX2070 Super.\n\nÚlohy do ďalšieho stretnutia:\n- Prejsť odborné publikácie na tému \"benchmarking\" a \"parallel training of neural networks\".\n - Zapísať si relevantné bibliografické odkazy.\n - Zapísať poznámky\n - Použiť index scopus alebo scholar\n- Trénovanie na jednej karte na jednom stroji\n - tesla.fei.tuke.sk\n- Trénovanie na dvoch kartách na jednom stroji - zistite čas trénovania a spotrebu pamäte.\n - idoc", + "text_length": 457 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-6", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Diplomový projekt 1 2020\n\nParalelné trénovanie neurónových sietí pomocou knižnice Pytorch.\nÚlohy na semester:\n\n- podrobne si naštudovať vybranú metódu trénovania neurónových sietí\n- identifikujte možný spôsob paralelizácie\n- natrénujte zvolený model metódou paralelizácie\n\nRevízia 11.6:\n\n- Prebieha nákup https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-agx-xavier/\n- zatiaľ NCCL nefunguje na Jetson Nano, funguje na Jetson Xavier?\n- Spustenie paralelného trénovania PyTorch https://pytorch.org/docs/stable/distributed.html#launch-utility\n- Spustenie paralelného trénovania Fairseq https://fairseq.readthedocs.io/en/latest/getting_started.html#distributed-training\n\nRevízia 13.5:\n\nPozrite si odkazy na paralelné trénovanie:\n\n- Knižnica pre neuronové siete podobná TensorFlow https://pytorch.org\n- Trénovanie WordEmbedding v PyTorch https://pytorch.org/tutorials/beginner/nlp/word_embeddings_tutorial.html\n- Toolkit na medziprocesovú komunikáciu https://developer.nvidia.com/nccl Podporuje aj trénovanie na viacerých výpočtových uzloch naraz. PyTorch podporuje NCCL aj Goo toolit\n- Toolkit na medziprocesovú komunikáciu https://github.com/facebookincubator/gloo\n- Paralelné", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-7", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "/nccl Podporuje aj trénovanie na viacerých výpočtových uzloch naraz. PyTorch podporuje NCCL aj Goo toolit\n- Toolkit na medziprocesovú komunikáciu https://github.com/facebookincubator/gloo\n- Paralelné trénovanie pomocou Pytorch https://pytorch.org/docs/stable/distributed.html /\n\nVirtuálne stretnutie 14.4:\n\nNové úlohy:\n\n- rozbehať knižnicu NCCL na servri idoc\n- Preskúmať možnosti zakúpenia [NVIDIA Jetson](https://www.banggood.com/NVIDIA-Jetson-Nano-Developer-Embedded-Development-Board-A57-Artificial-Intelligence-AI-Development-Platform-p-1519173.html?gpla=1&gmcCountry=SK¤cy=EUR&createTmp=1&utm_source=googleshopping&utm_medium=cpc_bgs&utm_content=lijing&utm_campaign=ssc-sk-ele-0309&ad_id=424274501985&gclid=Cj0KCQjw2PP1BRCiARIsAEqv-pTspekjYB4EACHoOyFRq41LhNM2dQ532-fTAsjzZPy9-2aH7H9cEh0aAuf0EALw_wcB&cur_warehouse=CN) / pre vedúceho\n- nájsť vhodnú neurónovú sieť ktorá bude vedieť využívať NCCL, optimálne založenú na PyTorchm napr. [Fairseq](https://github.com/pytorch/fairseq)\n\nRevízia 14.4.\n\n- Natrénovaný FastText a GenSim word embedding model na slovenských dátach.\n\nRevízia 9.4.:\n\nNové úlohy:\n\nNatrénujte word embedding model na veľkých dátach (odkaz poskytnutý). Môžete použiť ser", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-8", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "14.4.\n\n- Natrénovaný FastText a GenSim word embedding model na slovenských dátach.\n\nRevízia 9.4.:\n\nNové úlohy:\n\nNatrénujte word embedding model na veľkých dátach (odkaz poskytnutý). Môžete použiť server idoc.\n\nNové úlohy:\n\n- Pozrite si [metódy vyhodnotenia embedding modelov](https://duckduckgo.com/?t=ffab&q=word+embedding+evaluation&ia=web). Ako by ste postupovali pri vyhodnotení slovenského modelu?\n- Pozrite si https://spacy.io/usage/training\n- Pozrite si [repozitáre a výsledky týkajúce sa Spacy](/topics/spacy).\n- Vyhodnotte slovenský spacy model\n\nStretnutie 9.3.2020\n\nÚlohy na ďalšie stretnutie:\n\n- Skúste natrénovať slovenský word2vec model podľa tutoriálu: http://spark.apache.org/docs/latest/ml-features.html#word2vec (podľa dát z emailu)\n- Pozrite si niečo o metóde BERT\n\n- https://medium.com/huggingface/introducing-fastbert-a-simple-deep-learning-library-for-bert-models-89ff763ad384\n- https://github.com/huggingface/transformers", + "text_length": 943 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-9", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "## Tímový projekt 2019\n\n*Úlohy tímového projektu:*\n\n - Vypracujte min. 4 stranový rešerš na tému: \"Paralelné spracovanie prirodzeného jazyka\" (využitie napr. s word2vec, word embeddings, GloVe, fastText).\n - Citujte min. 10 najvýznamnejších bibliografických zdrojov.\n\n*Písomná práca:* [Paralelné spracovanie prirodzeného jazyka](./timovy_projekt)\n\n- Zaujímavá príručka [Word2vec na Spark](http://spark.apache.org/docs/latest/ml-features.html#word2vec)", + "text_length": 451 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-10", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "### Priebeh práce\n\n*1. Pokus o natrénovanie modelu pomocou knižnice Gensim*\n\nAko prvý nástroj na zoznámenie sa s trénovaním W2V som zvolil Gensim. Nevýhodou knižnice je, že pri trénovaní nevyužíva GPU v žiadnom prípade. Podľa zdrojov na internete je však Gensim násobne rýchlejšia knižnica pri implementácii na menšie korpusy (https://rare-technologies.com/gensim-word2vec-on-cpu-faster-than-word2veckeras-on-gpu-incubator-student-blog/). Keďže môj korpus má približne 30GB, trénovanie pomocou Gensim by zrejme nebol najlepší nápad. Preto som si z korpusu vytiahol prvých 10,000 riadkov a otestoval implementáciu na tomto súbore. Celý skript je dostupný na [gensim_W2V.py](./dp2021/scripts/gensim_w2v.py).\nVýsledok nebol vôbec presný, čo sa vzhľadom na veľkosť korpusu dalo očakávať. Pri slove letisko bola však zhoda vysoká, čo potvrdzuje správnosť implementácie.\n\n![Výsledok implementácie Gensim](./gensim.PNG)\n\nKeďže som mal problém skript s plným korpusom spustiť na školskom serveri, v ďalšom riešení chcem využiť aj GPU. V úvahu pripadá aj rozdelenie korpusu na viacero častí s tým, že sa zachová kontext.\n\n*2. Natrénovanie slovenského modelu pomocou knižnice fasttext*\n\nAko druhú možnosť na na", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/README.md::chunk-11", + "document_path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "ešení chcem využiť aj GPU. V úvahu pripadá aj rozdelenie korpusu na viacero častí s tým, že sa zachová kontext.\n\n*2. Natrénovanie slovenského modelu pomocou knižnice fasttext*\n\nAko druhú možnosť na natrénovanie slovenského modelu som využil fasttext, knižnicu od Facebook-u. Prostredie a všetky dependencies som si vytvoril pomocou Anacondy. Následne som si naklonoval projekt z gitu (https://github.com/facebookresearch/fastText.git). Fasstext poskytuje jednoduchý nástroj na vyčistenie dát, ktorý všetky slová pretransformuje na lowercase a oddelí ich od čiarok, bodiek, atď... Následne je potrebné správne nastaviť spúšťacie parametre a zvoliť si metódu CBOW alebo skip-gram. V mojom prípade som zvolil 2-gram, dimenzionalitu vektorov 200, a nastavil som počet epochov na 10, pomocou ktorých sa vhybovosť výrazne znížila. Taktiež je možné nastaviť, koľko jadier procesora sa má využívať pre multi-threading. Na dátach o veľkosti približne 13GB trvalo trénovanie takmer 24 hodín. Výstupom su 2 súbory *.bin a *.vec. Prvý súbor obsahuje celý natrénovaný model a môže byť ďalej používaný a načítavaný podľa potreby, druhý súbor obsahuje vektory slov, jeden riadok pre každé slovo.", + "text_length": 1180 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/dp2021/README.md::chunk-0", + "document_path": "pages/students/2016/lukas_pokryvka/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "## Všetky skripty, súbory a konfigurácie\n\nhttps://github.com/pytorch/examples/tree/master/imagenet\n- malo by fungovat pre DDP, nedostupny imagenet subor z oficialnej stranky", + "text_length": 173 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-0", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 0, + "text": "**Paralelné spracovanie**\n\nSystémy na spracovanie prirodzeného jazyka (_z angl. Natural Language Processing_ – ďalej už len NLP), boli ešte v nedávnej minulosti založené na sériových algoritmoch, ktoré simulovali spôsob, ktorým ľudia čítajú text – slovo za slovom, riadok po riadku [1]. Keďže týmto štýlom boli prezentované všetky gramatické teórie, programátori ich týmto štýlom aj implementovali.\n\nŽijeme v dobe, kedy jedno-jadrový výkon v dostupnom hardwari nemusí stačiť. Táto technológia má viacero nedostatkov, od rýchlosti prenosu dát, až po zvyšovanie nákladov, s cieľom zvýšiť rýchlosť jedno-jadrových procesorov[2]. Distribuované systémy a multi-jadrové architektúry nám dokazujú, že paralelizmus je budúcnosť výpočtovej techniky.\n\nParalelné spracovanie umožňuje riešiť väčšie problémy za kratší čas, čo však prináša nové problémy – správne načasovanie a spustenie programov medzi zdieľanými počítačmi a ich následná synchronizácia. Jedna z oblastí, ktorá potrebuje veľký výpočtový výkon, je NLP. Dôvod, prečo NLP vyžaduje veľký výpočtový výkon, je práca s veľkými balíkmi dát.\n\nPoznáme dve populárne metódy, ktorými sa dá dosiahnuť vysoký výkon pre NLP. Prvou možnosťou je pridať viac graf", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-1", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 1, + "text": "e NLP. Dôvod, prečo NLP vyžaduje veľký výpočtový výkon, je práca s veľkými balíkmi dát.\n\nPoznáme dve populárne metódy, ktorými sa dá dosiahnuť vysoký výkon pre NLP. Prvou možnosťou je pridať viac grafických kariet do servera, ktorý je zodpovedný za spracovávanie, alebo prepojiť viacero serverov a tým pádom využiť dostupnosť viacerých procesorov [3]. Grafické karty sú navrhnuté paralelne spracovávať veľký počet úloh a pristupovať k veľkému objemu pamäti. Na druhej strane, čo sa týka dizajnu procesora, ktorý je jadrom každého počítača, ten bol navrhnutý tak, aby úlohy riešil sekvenčne a vysokou rýchlosťou. Kvôli tomuto dokáže pristupovať iba k obmedzenému množstvu pamäti.\n\nTrénovaním modelov hlbokého učenia sa zistilo, že viacero operácií dokáže ťažiť z paralelného spracovania. Medzi tieto operácie patrí napríklad násobenie matíc [3]. Podobne ako grafické animácie, ktoré boli hlavným cieľom pre trh s grafickými kartami, trénovanie modelov hlbokého učenia je významne urýchlený paralelizovaním násobenia matíc.\n\n ![Násobenie matíc](./matice.png)\n_Obr._ _1. Násobenie matíc_ _[3]._\n\nJednotlivé jadrá grafickej karty sú v porovnaní s jadrami procesora pomalé, ale každé jadro dokáže vypočíta", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-2", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 2, + "text": "aním násobenia matíc.\n\n ![Násobenie matíc](./matice.png)\n_Obr._ _1. Násobenie matíc_ _[3]._\n\nJednotlivé jadrá grafickej karty sú v porovnaní s jadrami procesora pomalé, ale každé jadro dokáže vypočítať príslušný vektorový komponent. Keby tento výpočet prebiehal na procesore, každý riadok násobenia by sa vykonával sekvenčne. Ak by počet riadkov matice bol _n_, procesor by na výpočet rovnakej úlohy potreboval _n_-krát viacej času. Ak by sme dokázali zredukovať čas potrebný na spracovanie modelu na napríklad na jednu desatinu, v praxi by to znamenalo, že dokážeme vyskúšať desať rôznych prístupov a dosiahnuť oveľa vyššiu presnosť.\n\n**Word embedding**\n\nWord embedding je názov pre skupinu techník, slúžiacich na jazykové modelovanie v NLP. V tomto procese sú slová a frázy zo slovníka mapované do vektorov, ktoré majú podobu reálnych čísel. Táto technika zahŕňa premenu priestoru s viacerými dimenziami na spojitý vektorový priestor s nižším počtom dimenzií. Použitím vnorených slov a fráz ako základnou reprezentáciou vstupu bol zaznamenaný zvýšený výkon pri úlohách, ako syntaktická analýza a analýza sentimentov [4].\n\nWord embedding je často využívaný v NLP práve pre jeho schopnosť zachytiť z", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-3", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 3, + "text": "ladnou reprezentáciou vstupu bol zaznamenaný zvýšený výkon pri úlohách, ako syntaktická analýza a analýza sentimentov [4].\n\nWord embedding je často využívaný v NLP práve pre jeho schopnosť zachytiť z vektorovej reprezentácie slov ich sémantické vlastnosti a lingvistické vzťahy medzi slovami použitím hlbokého učenia [5]. Tým pádom dokáže dať väčšiemu objemu surového textu nejaký kontext. Tým, že z textu získame kontext, sa nám otvárajú dvere pre extrakciu informácií, možnosť odpovedať na rôzne otázky, alebo textová sumarizácia. Na internete sú verejne dostupné rôzne predtrénované vnorené slová, ako napríklad Google News, alebo GloVe.\n\n**GloVe**\n\nTento model kombinuje výhody dvoch najväčších rodín modelov v literatúre – maticová faktorizácia a metódy lokálneho kontextu [6]. Efektívnosť tohto modelu je dosiahnutá hlavne trénovaním iba na nenulových elementoch v maticiach, ktoré reprezentujú spoločný výskyt dvoch slov. Výstupom tohto modelu je významový vektorový priestor. Ďalšou jeho výhodou je vyšší výkon v porovnaní s modelmi založenými na podobnej technológii a to konkrétne v úlohách zameraných na podobnosť a rozpoznávanie vlastných mien.\n\n| Pravdepodobnosť a pomer | k = pevné | k", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-4", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 4, + "text": "dou je vyšší výkon v porovnaní s modelmi založenými na podobnej technológii a to konkrétne v úlohách zameraných na podobnosť a rozpoznávanie vlastných mien.\n\n| Pravdepodobnosť a pomer | k = pevné | k = plyn | k = voda | k = móda |\n| --- | --- | --- | --- | --- |\n| P(k|ľad) | 1.9 x 10^-4 | 6.6 x 10^-5 | 3.0 x 10^-3 | 1.7 x 10^-5 |\n| P(k|para) | 2.2 x 10^-5 | 7.8 x 10^-4 | 2.2 x 10^-3 | 1.8 x 10^-5 |\n| P(k|ľad)/P(k|para) | 8.9 | 8.5 x 10^-2 | 1.36 | 0.96 |\n\n_Tab. 1. Pravdepodobnosti z testovacieho súboru dát_ _[7]._\n\nHlavná myšlienka tohto modelu vyplýva z obyčajného sledovania pomeru spoločného výskytu dvoch slov. Z toho sa usudzuje, že je z týchto slov neskôr možné vyvodiť ich význam. V tabuľke číslo jeden sa uvažuje výskyt pravdepodobností dvoch slov, ľad a para, s testovacími slovami zo slovníka. Testovací súbor dát má približne šesť miliárd slov.\n\nPodľa očakávaní, ľad sa vyskytuje častejšie so slovom pevný (myslené skupenstvo), ako so slovom plyn. Naopak, para sa vyskytuje častejšie práve so slovom plyn, ako so slovom pevný. So slovom voda sa tieto dva slová vyskytujú približne rovnako a so slovom móda sa ich výskyt rapídne znižuje. Vďaka týmto pravdepodobnostiam vieme zhruba od", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-5", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 5, + "text": "práve so slovom plyn, ako so slovom pevný. So slovom voda sa tieto dva slová vyskytujú približne rovnako a so slovom móda sa ich výskyt rapídne znižuje. Vďaka týmto pravdepodobnostiam vieme zhruba odhadnúť, že v testovacom súbore mali tieto slová spoločný význam viac v zmysle termodynamiky, ako v móde.\n\n**Word2vec**\n\nWord2vec je skupina relačných modelov, ktorá má za úlohu vytvárať word embedding. Tieto modely sú trénované na rekonštrukciu lingvistického kontextu slov. Word2vec používa veľký súbor dát ako svoj vstup a následne produkuje vektorový priestor, zvyčajne o veľkosti niekoľkých stoviek dimenzií. Každému slovu, ktoré je unikátne, je priradený prislúchajúci vektor v priestore. Ich pozícia vyplýva z ich významu, takže slová, ktoré zdieľajú podobný význam, sú uložené bližšie pri sebe.\n\nHlavnou výhodou tohto modelu je teda jeho schopnosť vytvárať a niesť sémantický význam, čo je veľmi užitočné pre rôzne NLP projekty [8]. Dve hlavné techniky používané v tomto modely sú _skip-gram_ a _continuous bag-of-words(CBOW)_ [9]. Tieto dva modely vytvárajú odlišne nezávislosť slov a takisto inak vnímajú podmienenosť a predpoklady. Ich spoločnou črtou je rušenie postupnosti slov, ktorá tvo", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-6", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 6, + "text": "a _continuous bag-of-words(CBOW)_ [9]. Tieto dva modely vytvárajú odlišne nezávislosť slov a takisto inak vnímajú podmienenosť a predpoklady. Ich spoločnou črtou je rušenie postupnosti slov, ktorá tvorí kontext vety. Sémantickú informáciu teda čerpajú z _n_-tíc slov a Word2vec zostáva naďalej populárnou voľbou z dôvodu jeho efektivity a jednoduchosti.\n\nHlavný rozdiel medzi syntaxou s sémantikou je, že dôležitá informácia pre syntax je rozloženie slov vo vete, kdežto sémantika vníma hlavne problém, ktoré slová patria k sebe. Keďže v modely, v ktorom je postupnosť slov zrušená, väčšina syntaktických vzťahov nedokáže byť správne interpretovaná [9]. Model CBOW je využívaný hlavne v úlohách, kedy má syntax prioritu.\n\n**FastText**\n\nFastText je voľne dostupná, odľahčená knižnica, určená pre word embedding a klasifikáciu textu. Bola vytvorená v laboratóriách umelej inteligencie spoločnosti Facebook. V súčasnosti obsahuje pred-trénované modely pre vyše 160 rôznych jazykov, vrátane slovenčiny [10].\n\nKlasifikácia textu je dôležitou súčasťou NLP a to hlavne v úlohách, ako je webové vyhľadávanie, získavanie informácií, rebríčky, spam filter, alebo klasifikácia dokumentov [11]. V súčasnosti sa", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-7", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 7, + "text": "10].\n\nKlasifikácia textu je dôležitou súčasťou NLP a to hlavne v úlohách, ako je webové vyhľadávanie, získavanie informácií, rebríčky, spam filter, alebo klasifikácia dokumentov [11]. V súčasnosti sa dostali do popredia modely na báze neurónových sietí. Napriek tomu, že tieto modely dosahujú nadpriemerné výsledky pri výkone v praktických úlohách, majú tendenciu spomaľovať pri trénovaní a testovaní. To ich limituje pri ich použití na väčších dátových súboroch. Ich hlavnou výhodou sú kompaktné veľkosti trénovacích modelov, čo je dôležité hlavne pre aplikácie, ktoré musia pracovať na zariadeniach s obmedzenou pamäťou, ako napríklad smartfóny [12].\n\nTextové klasifikátory ako fastText zjednodušujú vývojárom vývoj rôznych nástrojov s potrebou základnej analýzy jazyka. Práve identifikovanie rôznych odkazov ako potenciálne nechcené, alebo filtrovanie spamu si vyžadujú základný jazykový model, ktorý dokáže tento jazyk správne interpretovať a kategorizovať.\n\nV porovnaní s Word2vec bol pridaný nový algoritmus. Tento algoritmus berie do úvahy a predpovedá okolitých n-charakterov, kdežto Word2vec spracováva len okolité slová [3]. Pre slovo auto by to boli napríklad dvojice a trojice: au, aut, u", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-8", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 8, + "text": "vý algoritmus. Tento algoritmus berie do úvahy a predpovedá okolitých n-charakterov, kdežto Word2vec spracováva len okolité slová [3]. Pre slovo auto by to boli napríklad dvojice a trojice: au, aut, ut, uto, to. FastText následne vytvára vektorovú reprezentáciu pre každú takúto dvojicu, alebo trojicu. To zahŕňa aj zle napísané slová a časti slov. Výhodou tohto prístupu je, že fastText lepšie zvláda prácu so slovami s menej častým výskytom. Predtrénované modely poskytované Facebookom boli trénované iba na dostupných súboroch dát Wikipedie. To znamená, že slovník a presnosť modelov sa môžu líšiť v závislosti od jazyka.\n\n**Zoznam použitej literatúry**\n\n[1]. Moghrabi, C. - Moussa, S. E. - Eid, M. S. Natural language processing complexity and parallelism. IEEE: Proceedings - International Symposium on High Performance Computing Systems and Applications, 2002. 277 str. ISBN 0-7695-1626-2.\n\n[2]. Jos, Alexandre. Paraleliza¸c˜ao de Algoritmos de Processamento de L´ıngua Natural em Ambientes Distribu´ıdos. [Online] Instituto Superior Técnico, Universidade Técnica de Lisboa, október 2008 [cit. 08.11.2019] Dostupné na internete: \\<[http://www.inesc-id.pt/publications/4052/pdf](http://www.i", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-9", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 9, + "text": "stribu´ıdos. [Online] Instituto Superior Técnico, Universidade Técnica de Lisboa, október 2008 [cit. 08.11.2019] Dostupné na internete: \\<[http://www.inesc-id.pt/publications/4052/pdf](http://www.inesc-id.pt/publications/4052/pdf)\\>\n\n[3]. Lane H. – Howard C. – Hapke H. M. Natural Language Processing: In Action. New York: Manning Publications Co., 2019. ISBN 9781617294631.\n\n[4]. Socher R. – Bauer J. – Manning C. et al. Parsing With Compositional Vector Grammars. Stanford: Computer Science Department, Stanford University, 2013. ISBN 9781937284503.\n\n[5]. Wang Y. – Liu S. – Afzal N. et al. A Comparison of Word Embeddings for the Biomedical Natural Language Processing. Rochester: Department of health Sciences Research, Mayo Clinic, 2018. ISSN 15320464.\n\n[6]. Pennington J. – Socher R. – Manning C. GloVe: Global Vectors for Word Representation. Stanford: Computer Science Department, Stanford University, 2014. ISSN 00047554.\n\n[7]. GloVe: Global Vectors for Word Representation. [Online]. Dostupné na internete: \\<[https://nlp.stanford.edu/projects/glove/](https://nlp.stanford.edu/projects/glove/)\\>\n\n[8]. Rong Xin. Word2vec Parameter Learning Explained. [Online]. 2016 [cit. 10.11.", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-10", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 10, + "text": "Dostupné na internete: \\<[https://nlp.stanford.edu/projects/glove/](https://nlp.stanford.edu/projects/glove/)\\>\n\n[8]. Rong Xin. Word2vec Parameter Learning Explained. [Online]. 2016 [cit. 10.11.2019] Dostupné na internete: \\<[https://arxiv.org/pdf/1411.2738.pdf](https://arxiv.org/pdf/1411.2738.pdf)\\>\n\n[9]. Ling W. – Dyer C. – Black A. et al. Two/Too Simple Adaptations of Word2Vec for Syntax Problems. [online]. Lisbon: Instituto Superior Tecnico, Lisbon, Portugal, 2015 [cit. 10.11.2019] Dostupné na internete: \\<[https://www.aclweb.org/anthology/N15-1142.pdf](https://www.aclweb.org/anthology/N15-1142.pdf)\\>\n\n[10]. fastText: Library for efficient text classification and representation learning. [Online]. Dostupné na internete: \\<[https://fasttext.cc/](https://fasttext.cc/)\\>\n\n[11]. Joulin A. – Grave E. – Bojanowski P. et al. Bag of Tricks for Efficient Text Classification. [Online]. 15th Conference of the European Chapter of the Association for Computational Linguistic, EACL 2017 [cit. 11.11.2019] Dostupné na internete: \\<[https://arxiv.org/pdf/1607.01759.pdf](https://arxiv.org/pdf/1607.01759.pdf)\\>\n\n[12]. Joulin A. – Grave E. – Bojanowski P. et al. FastT", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md::chunk-11", + "document_path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka", + "published": true, + "chunk_index": 11, + "text": "stic, EACL 2017 [cit. 11.11.2019] Dostupné na internete: \\<[https://arxiv.org/pdf/1607.01759.pdf](https://arxiv.org/pdf/1607.01759.pdf)\\>\n\n[12]. Joulin A. – Grave E. – Bojanowski P. et al. FastText.zip: Compressing Text Classification Models. [Online]. ICLR, 2017. [cit. 11.11.2019] Dostupné na internete: \\<[https://arxiv.org/pdf/1612.03651.pdf](https://arxiv.org/pdf/1612.03651.pdf)\\>", + "text_length": 398 + }, + { + "chunk_id": "pages/students/2016/mark_feher/README.md::chunk-0", + "document_path": "pages/students/2016/mark_feher/README.md", + "title": "Márk Fehér", + "categories": [ + "dp2022" + ], + "tags": [ + "scikit", + "nlp", + "klasifikácia" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Diplomová práca 2022\n\nNázov diplomovej práce: Klasifikácia textu metódami strojového učenia\n\n- [GIT repozitár](https://git.kemt.fei.tuke.sk/mf425hk/dp2022)", + "text_length": 157 + }, + { + "chunk_id": "pages/students/2016/mark_feher/README.md::chunk-1", + "document_path": "pages/students/2016/mark_feher/README.md", + "title": "Márk Fehér", + "categories": [ + "dp2022" + ], + "tags": [ + "scikit", + "nlp", + "klasifikácia" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Návrh na zadanie DP\n\n1. Vypracujte prehľad metód klasifikácie textu metódami strojového učenia.\n2. Pripravte slovenské trénovacie dáta vo vhodnom formáte a natrénujte viacero modelov pre klasifikáciu textu do viacerých kategórií\n3. Navrhnite, vykonajte a vyhodnoťte experimenty pre porovnanie presnosti klasifikácie textu. \n4. Navrhnite zlepšenia presnosti klasifikácie textu.\n\n18.3.\n\n- Práca na texte pokračuje\n- Podarilo sa spustiť finetning huggingface glue s scnc datasetom.\n\nÚlohy:\n\n- Pokračovať v texte.\n- LSTM trénovanie urobené, výsledky sú v práci.\n- Pokúsiť sa urobiť dataset interface na vlastné dáta.\n\n4.3.2022\n\n- Stretnutie bolo aj minulý týždeň.\n- LSTM trénovanie beží (skoro ukončené).\n- SlovakBert na colab prvé výsledky cca 65 percent na scnc (asi tam je chyba).\n- Práca na texte pokračuje.\n- Vedúcim dodaný skript na scnc datasets rozhranie\n- Vedúcim dodaný skript na trénovanie run_glue.py \n- Dodaný skript na inštaláciu pytorch a cuda 11.3\n\nÚlohy:\n\n- Práca na texte - sumarizácia experimentov do tabuľky\n- Vyskúšať dotrénovanie na idoc pomocou dodaných skriptov.\n- Na trénovanie na pozadí použiť `tmux a -t 0`.", + "text_length": 1135 + }, + { + "chunk_id": "pages/students/2016/mark_feher/README.md::chunk-2", + "document_path": "pages/students/2016/mark_feher/README.md", + "title": "Márk Fehér", + "categories": [ + "dp2022" + ], + "tags": [ + "scikit", + "nlp", + "klasifikácia" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Diplomový projekt 2021\n\nStretnutie 3.12.\n\n- Dopracované vyhodnotenie pomocou SCNC. Výsledkom je konfúzna matica a grafy presnosti so štatistickými modelmi.\n- Rozpracovaná klasifikácia LSTM (Keras).\n\nÚlohy:\n\n- Pridať klasifikáciu pomocou Huggingface Transformers, model SlovakBert, multilingualBert, alebo aj iné multilinguálne modely.\n- dokončiť LSTM.\n- Pokračovať na textovej časti.\n- Zobrazte aj F1\n\nStretnutie 5.11.2021\n\n- Práca na texte, štúdium literatúry\n- pridané kódy na GIT\n\nÚlohy:\n\n- Zopakujte experimenty na korpuse scnc. Slovak Categorized News Corpus.\n- Pokračujte v otvorených úlohách\n- Upravte skripty do opakovateľnej podoby, pripravte dokumentáciu k skriptom.\n\nStretnutie 15.10.\n\n- trénovanie pomocou LSTM, zatiaľ nie je na gite\n- písanie do šabóny práce (cca 35 strán).\n\nÚlohy:\n\n- Doplniť na GIT.\n- Zabrániť overfittingu LSTM. Early stopping alebo dropout.\n\nStretnutie 1.10.\n\nStav:\n\n- modifikácia trénovacích skriptov na vypisovanie pomocných štatistík.\n- Vytvorený GIT repozitár\n- Práca na text (cca 22 strán)\n- Pridaná referenčná literatúra.\n\nÚlohy:\n\n- [x] Stiahnite si šablónu práce a vložte text čo máte pripravené, vrátane bibliografie.\n- [x] Doplňte zdrojové kódy na GITe,", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/mark_feher/README.md::chunk-3", + "document_path": "pages/students/2016/mark_feher/README.md", + "title": "Márk Fehér", + "categories": [ + "dp2022" + ], + "tags": [ + "scikit", + "nlp", + "klasifikácia" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "- Práca na text (cca 22 strán)\n- Pridaná referenčná literatúra.\n\nÚlohy:\n\n- [x] Stiahnite si šablónu práce a vložte text čo máte pripravené, vrátane bibliografie.\n- [x] Doplňte zdrojové kódy na GITe, tak aby boli opakovateľné.\n- [x] Zoznam knižníc zapíšte do súboru requirements.txt. \n- Alebo zapíšte zoznam conda balíčkov.\n- Vyberte jednu úlohu zo zásobníka a vypracujte ju.\n\nZásobník úloh:\n\n- Vyskúšajte klasifikáciu pomocou neurónových sietí.\n- Vytvorte web demo pomocou Docker\n- [x] Skúste klasifikáciu pomocou neurónovej siete. \n\nStretnutie 23.9.\n\nStav:\n\n- vypracovaný draft diplomovej práce\n- pripravené dáta z BeautifulSoup - z rôznych webov (sme.sk) \n- vypracované experimenty pomocou scikit-learn na klasifikátoroch:\n - multinomial Bayes\n - random forest\n - support vector machine\n - Stochastic Gradient Descent Classifier\n - k-neighbours\n - decision tree\n- vypracované vyhodnotenie pomocou konfúznej matice,\n\nCiele na ďalšie stretnutie:\n\n- Vytvoríte si repozitár dp2022 na školskom gite, kde dáte dáta, zdrojové kódy aj texty. \n- Vybrať jeden odborný článok alebo knihu o klasifikácii textu a vypracujte poznámky.", + "text_length": 1141 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-0", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Maroš Harahus\n\n- [Git repozitár ai4steel](https://git.kemt.fei.tuke.sk/ai4steel/ai4steel) (pre členov skupiny)\n- [GIT repozitár s poznámkami](https://git.kemt.fei.tuke.sk/mh496vd/Doktorandske) (súkromný)", + "text_length": 205 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-1", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Dizertačná práca\n\nv roku 2023/24\n\nAutomatické opravy textu a spracovanie prirodzeného jazyka\n\nCiele:\n\n- Zverejniť a obhájiť minimovku\n- Napísať dizertačnú prácu\n- Publikovať 2 články triedy Q2-Q3\n\nSúvisiaca BP [Vladyslav Krupko](/students/2020/vladyslav_krupko)", + "text_length": 264 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-2", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Druhý rok doktorandského štúdia\n\nCiele:\n\n- *Publikovanie článku Q2/Q3* - podmienka pre pokračovanie v štúdiu.\n- *Obhájiť minimovku*. Minimovka by mala obsahovať definíciu riešenej úlohy, prehľad problematiky, tézy dizertačnej práce - vedecké prínosy.\n - Poskytnite najnovší prehľad.\n - Popísať vedecký prínos dizertačnej práce\n- Zverejniť min. 1 príspevok na školskej konferencii.\n- Publikovať min. 1 riadny konferenčný príspevok.\n- Pripraviť demo.\n- Pomáhať s výukou, projektami a výskumom.", + "text_length": 502 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-3", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "### Návrh na tézy dizertačnej práce\n\nAutomatické opravy textu pri spracovaní prirodzeného jazyka\n\nHlavným cieľom dizertačnej práce je návrh, implementácia a overenie modelu pre automatickú opravu textov.\n\nNa splnenie tohto cieľa je potrebné vykonať tieto úlohy:\n\n1. Analyzovať súčasný stav modelov pre opravu gramatických chýb a preklepov.\n2. Vybrať vhodné metódy a navrhnúť vlastný model pre automatickú opravu textov v slovenskom jazyku.\n3. Navrhnúť a pripraviť metódu augumentácie dát generovaním chýb v texte.\n4. Zozbierať dáta a pripraviť ich do podoby vhodnej na overenie modelu pre automatickú opravu slovenského textu.\n5. Navrhnúť a vykonať viacero experimentov pre overenie a porovnanie navrhnutého modelu.\n\nPlán činosti na semester:\n\n1. Prediskutovať a vybrať definitívnu tému. Obidve témy sú komplikované.\n - Trénovanie jazykových modelov. Cieľom by bolo zlepšenie jazykového modelovania. \n - [x] Dá sa nadviazať na existujúce trénovacie skripty. \n - [x] Dá sa využiť webový korpus.\n - [x] Dá sa využiť naša GPU infraštruktúra. (Na trénovanie menších modelov)\n - [x] Veľký praktický prínos.\n - [ ] Teoretický prínos je otázny.\n - [ ] Naša infra", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-4", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "vý korpus.\n - [x] Dá sa využiť naša GPU infraštruktúra. (Na trénovanie menších modelov)\n - [x] Veľký praktický prínos.\n - [ ] Teoretický prínos je otázny.\n - [ ] Naša infraštruktúra je asi slabá na väčšie modely.\n - Oprava gramatických chýb.\n - [x] Dá sa nadviazať na \"spelling correction\" výskum a skripty.\n - [x] Teoretický prínos je väčší.\n - [x] Trénovanie by bolo jednoduchšie na našom HW.\n - Posledné review je z [2020](https://scholar.google.sk/scholar?hl=en&as_sdt=0%2C5&q=grammatical+error+correction+survey&btnG=)\n\n2. Napísať prehľadový článok. \n - 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//\n - Identifikovať v čom by bol náš prehľad originálny a kde by bolo možné uverejniť.\n - Prečítať a zotriediť aspoň 200 článkov na danú tému.\n - Zistiť, aké metódy, datasety a spôsoby vyhodnotenia sa používajú. \n - Rozšíriť prehľadový článok do formy minimovky.\n\n3. Priebežne pracovať na experimentoch.\n - Vybrať vhodnú dátovú množinu a metriku vyhodotenia.\n - Vybrať základnú metódu a vyh", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-5", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "užívajú. \n - Rozšíriť prehľadový článok do formy minimovky.\n\n3. Priebežne pracovať na experimentoch.\n - Vybrať vhodnú dátovú množinu a metriku vyhodotenia.\n - Vybrať základnú metódu a vyhodnotiť.\n - Vyskúšať modifikáciu základnej metódy a vyhodotiť.\n\n4. Napísať 2 konferenčné články.\n - Písať si poznámky pri experimentoch.\n - Predbežné experimenty zverejniť v krátkom článku.\n - Prediskutovať spôsob financovania.\n\nStretnutie 27.10.\n\nStav:\n\n- Prečítaných a spoznámkovaných cca 4O článkov na tému \"Grammar Error Correction\".\n- Experimenty strojový preklad s Fairseq. Z toho vznikol článok SAMI.\n- Poznámky o Transfer Leaarning. Preštudované GPT3.\n- Sú rozpracované ďalšie modely pre strojový preklad. Česko-slovenský.\n- https://github.com/KaushalBajaj11/GEC--Grammatical-Error-Correction\n- https://github.com/LukasStankevicius/Towards-Lithuanian-Grammatical-Error-Correction\n- https://github.com/yuantiku/fairseq-gec\n\nÚlohy:\n\n- Rozbehať fairseq GEC a porozmýšľať ako by a to dalo zlepšiť.\n- 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\nNápady:\n\n-", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-6", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "dalo zlepšiť.\n- 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\nNápady:\n\n- Smerovať to na inú generatívnu úlohu podobnú strojovému prekladu. Napríklad \"Question generation\".\n- question generation by sa dalo použiť na zlepšenie QA-IR systémov.\n- Možno \"multilingual question generation\"?\n\nStretnutie 9.9.2022\n\nStav:\n\nPočas prázdnin sa pracovalo na experimentoch s fairseq - strojový preklad a Spacy trénovanie, štúdium literatúry.\n\nÚlohy:\n\n- [x] Prečítať niekoľko prehľadov na tému Grammar Correction, zistiť ako sú napísané a čo je v nich napísané.\n- [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.\n- [x] Zistiť čo je to Transfer Learning. https://ieeexplore.ieee.org/abstract/document/9134370\n- 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.\n- [ ] Porozmýšľať nad témou práce.\n- [x] Pokračovať v experimenotch fairseq so strojovým prekladom. Vieme pripraviť experiment na tému \"spelling\", \"grammar\" alebo training \"roberta sma", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-7", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "ánky ku článku.\n- [ ] Porozmýšľať nad témou práce.\n- [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.\n- [-] Čítať knihy - Bishop-Patter Recognition. Yang: Transfer Learning.", + "text_length": 441 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-8", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "## Prvý ročník PhD štúdia\n\n29.6.\n\n- Vyskúšané https://github.com/NicGian/text_VAE, podľa článku https://arxiv.org/pdf/1511.06349.pdf\nTento 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.\n- So skriptami fairseq sú zatiaľ problémy.\n\nÚlohy:\n\n- Pokračovať v otvorených úlohách.\n- Vyskúšať tutoriál https://fairseq.readthedocs.io/en/latest/getting_started.html#training-a-new-model.\n- Prečítať knihu \"Bishop: Pattern Recognition\".\n\n17.6. \n\n- Končí financovanie USsteel , je potrebné zmeniť tému.\n\nÚlohy:\n\n- 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\".\n- Preštudovať články:\n * Survey of automatic spelling correction\n * Learning string distance with smoothing for OCR spelling correction\n * Sequence to Sequence Convolutional Neural Network for Automatic Spelling Correction\n * Iné súvisiace články. Kľúčové slová: \"automatic spelling correction.\"\n- Naučiť sa pracovať s fairseq. Naučiť sa ako funguje strojový preklad.\n- Zopakovať experiment OCR Trec-5 Confusion Track. Pridaný prístup do repozitár", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-9", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "Kľúčové slová: \"automatic spelling correction.\"\n- Naučiť sa pracovať s fairseq. Naučiť sa ako funguje strojový preklad.\n- Zopakovať experiment OCR Trec-5 Confusion Track. Pridaný prístup do repozitára https://git.kemt.fei.tuke.sk/dano/correct\n\nZásobník úloh:\n\n- Vymyslieť systém pre opravu gramatických chýb. Aka Grammarly.\n- Využiť GAN-VAE sieť na generovanie chybového textu. To by mohlo pomôcť pri učení NS.\n\n3.6.\n\nÚlohy:\n\n- 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\n- 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).\n- Vypočítanie presnosti pre každý konvertor zo spojeného modelu, pokračovať.\n\n27.5.\n\n- Našli sme medzné hodnoty pre dáta zo skriptov USS.\n- Urobený skript, polynómová transformácia príznakov nepomáha.\n- rozrobený skript na generovanie dát GAN.\n\nOtvorené úlohy:\n\n- Pokračovať v otvorených úlohách.\n- (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.", + "text_length": 1197 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-10", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "úlohy:\n\n- Pokračovať v otvorených úlohách.\n- (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.\n\nStretnutie 20.5.\n\nOtvorené úlohy:\n\n- [ ] (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.\n- [ ] (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.\n- [ ] (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ý.\n\nNeprioritné úlohy:\n\n- [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)\n- [x] Vyradenie niektorých kolóniek, podľa koeficientu lineárnej regresie (daniel, funguje ale nezlepšuje presnosť).\n - Generovať umelé \"e", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-11", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "zmysel používať autoenóder (aj VAE). (Asi to nemá zmysel)\n- [x] Vyradenie niektorých kolóniek, podľa koeficientu lineárnej regresie (daniel, funguje ale nezlepšuje presnosť).\n - Generovať umelé \"extrémne\" dáta. Sledovať, ako sa model správa. Extrémne dáta by mali byť fyzicky možné.\n\nUrobené úlohy:\n\n- Hľadanie hyperparametrov pre neurónku a náhodný les.\n\nReport 29.4.2022\n\n- Práca na VE.\n- Čítanie článkov.\n\nReport 8.4.2022\n\n- Študovanie teórie\n- Práca na VAE kóde rozpracovaný\n\nReport 1.4.2022\n\n- práca na DH neurónovej sieťi\n ![DH](/uss.PNG)\n- študovanie o Deep Belief Network\n\nStretnutie 28.3.\n\nÚlohy:\n\n- Dokončiť podrobnú anotáciu dát. Aké sú kazuálne súvisosti medzi atribútmi?\n- Zopakovať a vylepšiť DH neurónovú sieť na predikciu síry\n\nZásobník úloh:\n\n- Zvážiť použitie Deep Belief Network.\n\nReport 25.3.2022\n\n- Porovnávanie dát január, február (subor je na gite)\n- Hodnotenie ešte nemám spisujem čo tým chcem dosiahnuť ci to ma vôbec zmysel na tom pracovať \n\nReport 18.3.2022\n\n-\tpráca na dátach (príprava na TS, zisťovanie súvislosti, hľadanie hraničných hodnôt)\n-\tštudovanie timesesries (https://heartbeat.comet.ml/building-deep-learning-model-to-predict-stock-prices-part-1-2-58e62ad75", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-12", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "dátach (príprava na TS, zisťovanie súvislosti, hľadanie hraničných hodnôt)\n-\tštudovanie timesesries (https://heartbeat.comet.ml/building-deep-learning-model-to-predict-stock-prices-part-1-2-58e62ad754dd,)\n-\tštudovanie o reinforcement learning (https://github.com/dennybritz/reinforcement-learning\nhttps://github.com/ShangtongZhang/reinforcement-learning-an-introduction)\n-\tštudovanie o transfer learning\n-\tštudovanie feature selection (https://machinelearningmastery.com/feature-selection-machine-learning-python/\nhttps://www.kdnuggets.com/2021/12/alternative-feature-selection-methods-machine-learning.html)\n\nReport 11.3.2022\n\n- Data Preprocessing (inspirácia- https://www.kaggle.com/tajuddinkh/drugs-prediction-data-preprocessing-json-to-csv) \n- Analyzovanie dát (inspirácia- https://www.kaggle.com/rounakbanik/ted-data-analysis, https://www.kaggle.com/lostinworlds/analysing-pokemon-dataset\nhttps://www.kaggle.com/kanncaa1/data-sciencetutorial-for-beginners) \n- Pracovanie na scripte jsnol --> csv\n \n- Študovanie time series (https://www.machinelearningplus.com/time-series/time-series-analysis-python/\nPython Live - 1| Time Series Analysis in Python | Data Science with Python Training | Edurek", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-13", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "sv\n \n- Študovanie time series (https://www.machinelearningplus.com/time-series/time-series-analysis-python/\nPython Live - 1| Time Series Analysis in Python | Data Science with Python Training | Edureka\nComplete Python Pandas Data Science Tutorial! (Reading CSV/Excel files, Sorting, Filtering, Groupby)\nhttps://www.kaggle.com/kashnitsky/topic-9-part-1-time-series-analysis-in-python) \n- Time series články (https://ieeexplore.ieee.org/abstract/document/8853246\nhttps://ieeexplore.ieee.org/abstract/document/8931714\nhttps://ieeexplore.ieee.org/abstract/document/8942842\nhttps://arxiv.org/abs/2103.01904) \n\nWorking on:\n- Neurónovej siete pre GAN time series (stále mam nejaké errory)\n- klasickej neuronke\n\nStretnutie 1.3.2022\n\nÚlohy:\n\n- Zapracovať wandB pre reporting experimentov\n- Textovo opísať dáta\n\nZásobník úloh:\n\n- Vyskúšať predtrénovanie pomocou \"historických dát\".\n\nReport 25.02.2022\n\n- Prehlaď o jazykových modeloch (BERT, RoBERTa, BART, XLNet, GPT-3) (spracovane poznámky na gite)\n- Prehlaď o time-series GAN\n- Úprava skriptu z peci jsnol -- > csv\n- Skúšanie programu GAN na generovanie obrázkov (na pochopenie ako to funguje)\n- Hľadanie vhodnej implementácie na generovanie dát\n- Rozpracova", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-14", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "o time-series GAN\n- Úprava skriptu z peci jsnol -- > csv\n- Skúšanie programu GAN na generovanie obrázkov (na pochopenie ako to funguje)\n- Hľadanie vhodnej implementácie na generovanie dát\n- Rozpracovaná (veľmi malo) analýza datasetu peci\n\nStretnutie 2.2.2022\n\nIn progress:\n\n- Práca na prehľade článkov VAE-GAN\n- na (súkromný) git pridaný náhľad dát a tavný list\n- práca na Pandas skripte\n\nÚlohy:\n\n- Dokončiť spacy článok\n- Dokončiť prehľad článkov\n- Pripraviť prezentáciu na spoločné stretnutie. Do prezentácie uveď čo si sa dozvedel o metódach VAE a GAN. Vysvetli, ako funguje \"autoenkóder\". \n- Napísať krátky blog vrátane odkazov nal literatúru o tom ako funguje neurónový jazykový model (BERT, Roberta, BART, GPT-3, XLNet). Ako funguje? Na čo všetko sa používa?\n\nStretnutie 18.1.2022\n\nÚlohy:\n\n- [ ] Do git repozitára pridať súbor s podrobným popisom jednotlivých kolóniek v dátovej množine.\n- [-] Do git repozitára pridať skript na načítanie dát do Pandas formátu.\n- [ ] Vypracovať písomný prehľad metód modelovania procesov v oceliarni (kyslíkového konvertora BOS-basic oxygen steelmaking).\n- [x] Nájsť oznam najnovších článkov k vyhľadávaciuemu heslu \"gan time series\", \"vae time series\", \"seq", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-15", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 15, + "text": "ad metód modelovania procesov v oceliarni (kyslíkového konvertora BOS-basic oxygen steelmaking).\n- [x] Nájsť oznam najnovších článkov k vyhľadávaciuemu heslu \"gan time series\", \"vae time series\", \"sequence modeling,prediction\" napísať ku nim komentár (abstrakt z abstraktu) a dať na git.\n- [x] Preformulovať zadanie BP Stromp.\n- [-] Dokončiť draft článok spacy.\n\nZásobník úloh:\n\n- [-] Získať prehľad o najnovších metódach NLP - transformers,GAN, VAE a nájsť súvis s modelovaním BOS.\n- [ ] nájsť vhodnú implementáciu gan-vae v pythone pre analýzu časových radov alebo postupnosti. \n\nStretnutie 17.1.2022\n\n- Mame dáta z vysokej pece (500GB)\n- Zlepšený konvolučný autoenkóder - dosahuje state-of-the-art.\n- Prečítané niečo o transformers a word2vec.\n\nStretnutie 9.12.2021\n\n- Natrénovaný autoenkóder (feed-forward) pre predikciu celkovej váhy Fe a obsahu S.\n- dát je celkom dosť.\n\nÚlohy:\n\n- Vyskúšať iné neurónové siete (keras?).\n- Pohľadať dátové množiny, ktoré sú podobné riešenej úlohe. Napr. Open Data.\n\nStretnutie 26.11.2021\n\nDáta z US Steel:\n\n- Najprv sa do vysokej pece nasypú suroviny.\n- Z tavby sa postupne odoberajú vzorky a meria sa množstvo jednotlivých vzoriek.\n- Na konci tavby sa robí fin", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-16", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 16, + "text": "ta.\n\nStretnutie 26.11.2021\n\nDáta z US Steel:\n\n- Najprv sa do vysokej pece nasypú suroviny.\n- Z tavby sa postupne odoberajú vzorky a meria sa množstvo jednotlivých vzoriek.\n- Na konci tavby sa robí finálna analýza taveniny.\n- Priebeh procesu závisí od vlastností konkrétnej pece. Sú vlastnosti pece stacionárne? Je možné , že vlastnosti pece sa v čase menia.\n- Cieľom je predpovedať výsledky anaýzy finálnej tavby na základe predošlých vzoriek?\n- Cieľom je predpovedať výsledky nasledujúceho odberu na základe predchádzajúcich?\n- Čo znamená \"dobrá tavba\"?\n- Čo znamená \"dobrá predpoveď výsledkov\"? \n- Je dôležitý čas odbery vzorky?\n\nZásobník úloh:\n\n- Formulovať problém ako \"predikcia časových radov\" - sequence prediction.\n- Nápad: The analysis of time series : an introduction / Chris Chatfield. 5th ed. Boca Raton : Chapman and Hall, 1996. xii, 283 s. (Chapman & Hall texts in statistical science series). - ISBN 0-412-71640-2 (brož.).\n- Prezrieť literatúru a zistiť najnovšie metódy na predikciu.\n- Navrhnúť metódu konverzie dát na vektor príznakov. Sú potrebné binárne vektory?\n- Navrhnúť metódu výpočtu chybovej funkcie - asi euklidovská vzdialenosť medzi výsledkov a očakávaním.\n- Vyskúšať nav", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-17", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 17, + "text": "- Navrhnúť metódu konverzie dát na vektor príznakov. Sú potrebné binárne vektory?\n- Navrhnúť metódu výpočtu chybovej funkcie - asi euklidovská vzdialenosť medzi výsledkov a očakávaním.\n- Vyskúšať navrhnúť rekurentnú neurónovú sieť - RNN, GRU, LSTM.\n- Nápad: Transformer network, Generative Adversarial Network.\n- Nápad: Vyskúšať klasické štatistické modely (scikit-learn) - napr. aproximácia polynómom, alebo SVM.\n\nStretnutie 1.10.\n\nStav:\n\n- Štúdium základov neurónových sietí\n- Úvodné stretnutie s US Steel\n\nÚlohy:\n\n- Vypracovať prehľad aktuálnych metód grafových neurónových sietí\n- Nájsť a vyskúšať toolkit na GNN.\n- Vytvoriť pracovný repozitár na GITe.\n- Naštudovať dáta z US Steel.\n- Publikovať diplomovú prácu.", + "text_length": 716 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-18", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 18, + "text": "## Diplomová práca 2021\n\n- [CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=ECC3D3F0B3159C4F3216E2027BE4)\n- [Zdrojové kódy](https://git.kemt.fei.tuke.sk/mh496vd/diplomovka/)\n\nNázov diplomovej práce: Neurónová morfologická anotácia slovenského jazyka\n\n1. Vysvetlite, ako funguje neurónová morfologická anotácia v knižnici Spacy. Vysvetlite, ako funguje predtrénovanie v knižnici Spacy.\n2. Pripravte slovenské trénovacie dáta vo vhodnom formáte a natrénujte základný model morfologickej anotácie pomocou knižnice Spacy.\n3. Pripravte model pre morfologickú anotáciu s pomocou predtrénovania.\n4. Vyhodnoťte presnosť značkovania modelov vo viacerých experimentoch a navrhnite možné zlepšenia.", + "text_length": 693 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-19", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 19, + "text": "## Diplomový projekt 2 2020\n\nZásobník úloh:\n\n- skúsiť prezentovať na lokálnej konferencii, (Data, Znalosti and WIKT) alebo fakultný zborník (krátka verzia diplomovky).\n- Využiť korpus Multext East pri trénovaní. Vytvoriť mapovanie Multext Tagov na SNK Tagy.\n- vykonať a opísať viac experinentov s rôznymi nastaveniami.\n\nStretnutie 12.2.\n\nStav:\n\n- Práca na texte\n\nDo ďalšieho stretnutia:\n\n- Opraviť text podľa ústnej spätnej väzby \n- Vysvetlite čo je to morfologická anotácia.\n- Vystvetlite ako sa robí? Ako funguje spacy neurónová sieť?\n- atď. predošlé textové úlohy z 30.10. 2020\n\nStretnutie 25.1.2021\n\nStav:\n\n- Urobená prezentácia, spracované experimenty do tabuľky.\n\nDo ďalšieho stretnutia:\n\n- Pracovať na súvislom texte.\n\nVirtuálne stretnutie 6.11.2020\n\nStav:\n\n- Prečítané (podrobne) 2 články a urobené poznámky. Poznánky sú na GITe.\n- Dorobené ďalšie experimenty.\n\nÚlohy do ďalšieho stretnutia:\n\n- Pokračovať v otvorených úlohách.\n\nVirtuálne stretnutie 30.10.2020\n\nStav:\n\n- Súbory sú na GIte\n- Vykonané experimenty, Výsledky experimentov sú v tabuľke\n- Návod na spustenie\n- Vyriešenie technických problémov. Je k dispozicíí Conda prostredie.\n\nÚlohy na ďalšie stretnutie:\n\n- Preštudovať literatú", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-20", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 20, + "text": "Vykonané experimenty, Výsledky experimentov sú v tabuľke\n- Návod na spustenie\n- Vyriešenie technických problémov. Je k dispozicíí Conda prostredie.\n\nÚlohy na ďalšie stretnutie:\n\n- Preštudovať literatúru na tému \"pretrain\" a \"word embedding\"\n - [Healthcare NER Models Using Language Model Pretraining](http://ceur-ws.org/Vol-2551/paper-04.pdf)\n - [Design and implementation of an open source Greek POS Tagger and Entity Recognizer using spaCy](https://ieeexplore.ieee.org/abstract/document/8909591)\n - https://arxiv.org/abs/1909.00505\n - https://arxiv.org/abs/1607.04606\n - LSTM, recurrent neural network, \n - Urobte si poznámky z viacerých čnánkov, poznačte si zdroj a čo ste sa dozvedeli.\n- Vykonať viacero experimentov s pretrénovaním - rôzne modely, rôzne veľkosti adaptačných dát a zostaviť tabuľku\n- Opísať pretrénovanie, zhrnúť vplyv pretrénovania na trénovanie v krátkom článku cca 10 strán.\n\nVirtuálne stretnutie 8.10.2020\n\nStav:\n- Podarilo sa vykonať pretrénovanie aj trénovanie, prvé výsledky experimentov.\n- pretrénovanie funguje na GPU, použila sa verzia spacy 2.2, trénovanie na IDOC\n- trénovanie ide lepšie na CPU\n- vyskytol sa problém že nevie alokovať viac ako 2GB R", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-21", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 21, + "text": "vanie, prvé výsledky experimentov.\n- pretrénovanie funguje na GPU, použila sa verzia spacy 2.2, trénovanie na IDOC\n- trénovanie ide lepšie na CPU\n- vyskytol sa problém že nevie alokovať viac ako 2GB RAM\n- 200 iterácií pretrénovania, 4000 riadkov viet\n\nÚlohy do ďalšieho stretnutia:\n- Dať zdrojáky na GIT\n- Urobiť porovnanie voči presnosti bez pretrain\n- Výsledky dajte do tabuľky - aké parametre ste použili pri trénovaní a pretrénovaí?\n- experimenty si poznačte do skriptu aby sa dali zopakovať\n- Do článku (do súboru README na GIte) presne opíšte nastavenie experimentu - parametre, dáta a spôsob overenia, aspoň rozpracovať.\n- Začnite spisovať teoretickú časť článku, aspoň rozpracovať.\n\nStretnutie 25.9.2020\n\nStav:\n- chyba pri použití príkazu pretrain, ktorá sa objavila s novou verziou Spacy\n\nÚlohy do ďalšieho stretnutia:\n- pokračovať so starou verziou Spacy (2.2)\n\nNávrhy na zlepšenie:\n- Použiť viac textových dát.\n\nZvážiť publikovanie na: http://conf.uni-obuda.hu/sami2021/index.html\n- najprv napísať po slovensky, potom sa to preloží\n- opísať experimenty", + "text_length": 1063 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-22", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 22, + "text": "## Diplomový projekt 2020\n\nZdroje:\n\n- [Jazykové zdroje](/topics/resources)\n\nDoplnenie podpory morfologického značkovania slovenského jazyka do nlp frameworku (spacy alebo flair) \n\n- Úlohy na tento semester: \n - Pozrieť jazykové zdroje z https://www.clarin.eu/resource-families/manually-annotated-corpora (MultextEast)\n - Oboznámte sa so sadou morfologických značiek Universal Dependencies https://universaldependencies.org/sk/index.html\n - Oboznámte sa so sadou SNK https://korpus.sk/morpho.html\n - Natrénovať Spacy Model s POS a s pretrénovaním\n\nStretnutie 23.6.2020:\n\n- Výsledok: [Skript na trénovanie Spacy POS](https://git.kemt.fei.tuke.sk/mh496vd/diplomovka/src/branch/master/script.sh)\n\nStretnutie 12.6.2020:\n\n- Pretrénovanie Fasttext a trénovanie POS Spacy modelu - ešte treba vylepšiť presnosť \n\nK zápočtu:\n\n- Finálny okomentovaný skript pre trénovanie POS modelu podľa Slovak Treebank s pretrénovaním Fasttext. \n- Ak sa dá tak pri trénovaní využite GPU\n- Zistite výslednú presnosť, mala by byť nad 80 percent.\n- Porovnajte s presnosťou bez pretrénovania.\n\nVirtuálne stretnutie 15.5.2020:\n\n- Spustenie exitujúceho skriptu pre trénovanie POS modelu z repozitára spacy-skmodel, pro", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-23", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 23, + "text": "sť, mala by byť nad 80 percent.\n- Porovnajte s presnosťou bez pretrénovania.\n\nVirtuálne stretnutie 15.5.2020:\n\n- Spustenie exitujúceho skriptu pre trénovanie POS modelu z repozitára spacy-skmodel, problém nastal pri NER dátach.\n- Vytvorený [repozitár](https://git.kemt.fei.tuke.sk/mh496vd/diplomovka)\n\nNové úlohy:\n\n- Podrobne preštudovať a realizovať [spacy pretrain](https://spacy.io/api/cli#pretrain)\n- [Blog o Spacy pretrain](https://explosion.ai/blog/spacy-v2-1)\n\nRevízia 9.4.2020:\n\nReport o doterajšej práci:\n\n- naštudovanie Fasttext\n- implementácia do Spacy\n- úprava modelu v spacy na rozpoznanie jazyka\n- snaha o spacy-udpipe pre non-English text\n\nNové úlohy:\n\n- pridajte zdrojový text a odkaz na \"implementáciu\".\n- natrénujte model podľa https://git.kemt.fei.tuke.sk/dano/spacy-skmodel\n- skúste pridať \"word-embeddingy\" z fasttext do trénovania.\n- vyhodnoťte natrénovaný model - zistite presnosť značkovania. Aký vplyv majú embeddingy na presnosť?\n- porozmýšľajte ako sa dá presnosť zlepšiť.\n\nStretnutie 5.3.2020:\n\nÚlohy na ďalšie stretnutie:\n\n- zobrať alebo vytvoriť fasttext model\n- pozrieť sa na [spacy pretrain](https://spacy.io/api/cli) - tam sa bude dať využiť fasttext model\n- vložiť", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-24", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 24, + "text": "Stretnutie 5.3.2020:\n\nÚlohy na ďalšie stretnutie:\n\n- zobrať alebo vytvoriť fasttext model\n- pozrieť sa na [spacy pretrain](https://spacy.io/api/cli) - tam sa bude dať využiť fasttext model\n- vložiť ho do spacy modelu pomocou `spacy pretrain`\n- pozrieť si http://nl.ijs.si/ME/V4/ morfosyntaktická anotácia MULTEXT\n- porozmýšľať ako využiť korpus \"MultextEast\" - potrebné vytvoriť mapovanie značiek na SNK Tagset\n\nPoznámka:\n\n- Aktivovaná Omega\n- Pozrieť sa na https://git.kemt.fei.tuke.sk/dano/spacy-skmodel/src/branch/master/sources/slovak-treebank , aktivovaný prístup\n- už existuje mapovanie [Universal Dependencie na SNK tagset](https://github.com/explosion/spaCy/blob/master/spacy/lang/sk/tag_map.py)\n\nStretnutie: 20.2.2020:\n\nÚlohy na ďalšie stretnutie:\n\n- Pozrieť https://spacy.io/usage/training#tagger-parser\n- Pozrieť si čo je word embedding - word2vec, fasttext, glove\n- Nájsť spôsob ako využiť existujúci model word embedding pri trénovaní https://fasttext.cc/docs/en/pretrained-vectors.html\n- Ako natrénovať Spacy POS model?", + "text_length": 1033 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/README.md::chunk-25", + "document_path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 25, + "text": "## Tímový projekt 2019\n\nProjektové stránky:\n\n- [Spracovanie prirodzeného jazyka](/topics/nlp)\n- [Python](/topics/python)\n- [Podpora slovenčiny v knižnici Spacy](/topics/spacy)\n\n[Spacy tutoriál](./timovy_projekt)\n\n- Vypracovať tutoriál pre prácu s nástrojom Spacy pre úlohu zisťovania gramatických značiek (part-of-speech). Súčasťou tutoriálu by mali byť aj odkazy na relevantné zdroje (odborné članky, min. 4).", + "text_length": 410 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-0", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 0, + "text": "# NLP\n\nJe založený na umelej inteligencii, ktorá sa zaoberá interakciami medzi počítačom a jazykmi. NLP uľahčuje proces analýzy a\nporozumenia ľudského jazyka pre počítače a umelú inteligenciu. Pomáha extrahovať informácie z textu. V dnešnej dobe sa textové údaje vytvárajú vo veľkom množstve a je ich dôležité spravovať a odovzdať informácie z neštruktúrovaných údajov. Preto musíme údaje reprezentovať vo formáte v ktorom počítače rozumejú a v tomto prípade nám pomáha NLP. Má niekoľko prípadov použitia:\n\n* Automatické zhrnutie\n* Uznanie pomenovaného subjektu\n* Systémy odpovedania na otázky\n* Analýza sentimentu", + "text_length": 614 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-1", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 1, + "text": "# SPACY\n\n Je bezplatná knižnica pre NLP v programovacom jazyku python. Táto knižnica je napísala v Cythone a je určená pre budovanie extrakcie informácii alebo pochopenie prirodzeného jazyka. Je navrhnutý pre použitie v pythone a ponuka priateľské rozhranie API.", + "text_length": 262 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-2", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 2, + "text": "## Detekcia viet\n\nDetekcia viet je proces lokalizácie začiatku a konca vety v danom texte. Tato detekcia nám umožňuje rozdeliť vetu resp. text na jazykovo významne jednotky. Tieto jednotky potom môžem využívať pri spracovaní text na vykonávanie úloh ako napríklad označovanie reči.", + "text_length": 281 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-3", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 3, + "text": "## Part-of-speech (Part of Speech)\n\nZnačkovanie pomocou Part of Speech je proces označovania slova pomocou príslušnej časti reči, ako je podstatné meno, prídavné meno, sloveso, príslovka atď. Podľa gramatických pravidiel jazyka, ktoré sa ďalej konštruujú na základe kontextu výskytu slova a jeho vzťahy s inými slovami vo vete. Po tokenizácii môže spacy daný objekt označiť pomocou svojich najmodernejších štatistických modelov. Značky sú k dispozícii ako atribút objektu Token.", + "text_length": 478 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-4", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 4, + "text": "## Tokenizácia\n\nTokenizácia sa voľne označuje ako segmentácia textového dokumentu na slová, ktoré sa tiež nazývajú tokeny. Token je definovaný ako postupnosť znakov, ktoré spolu tvoria sémantickú jednotku pri spracovaní textu. V niektorých kontextoch nemusia byť tokeny slovami a môžu pozostávať zo slov alebo dokonca viacslovných fráz v závislosti od toho, čo sa považuje za sémantickú jednotku. Spacy tonizuje daný text na slová a interpunkcie použitím pravidiel, ktoré sú vyladené pre konkrétny jazyk. Najnákladnejšie pravidlo pre anglický jazyk je rozdelenie postupnosti znakov v texte na medzery (napr. Medzeru), často známe ako točenie medzier. \n* **text_with_ws** tlačí tokenový text s medzerou (ak je k dispozícii),\n* **is_alpha** zistí, či token pozostáva z abecedných znakov alebo nie,\n* **is_punct** zistí, či je token interpunkčný symbol alebo nie,\n* **is_space** zistí, či je token medzerou alebo nie,\n* **shape_** vytlačí tvar slova,\n* **is_stop** zistí, či je token zastavovacím slovom alebo nie,\n\n| Skratka | Anglicky vyznam | Slovensky vyznam |\n|:-------:|:-------------------------:|:------------------:|\n| ADJ | adjective | prídavné meno |\n| AD", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-5", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 5, + "text": "alebo nie,\n\n| Skratka | Anglicky vyznam | Slovensky vyznam |\n|:-------:|:-------------------------:|:------------------:|\n| ADJ | adjective | prídavné meno |\n| ADP | adposition | umiestnenie |\n| ADV | adverb | príslovka |\n| AUX | auxiliary verb | pomocné sloveso |\n| CONJ | coordinating conjunction | koordinačná spojka |\n| DET | determiner | determinant |\n| INTJ | interjection | prerušenie |\n| NOUN | noun | podstatné meno |\n| NUM | numeral | číslice |\n| PART | particle | častica |\n| PRON | pronoun | zámeno |\n| PROPN | proper noun | vlastné meno |\n| PUNCT | punctuation | interpunkcia |\n| SCONJ | subordinating conjunction | podriadená spojka |\n| SYM | symbol | symbol |\n| VERB | verb | sloveso |\n| X | other | iné |\n\n| Tag | Description", + "text_length": 1192 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-6", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 6, + "text": "symbol | symbol |\n| VERB | verb | sloveso |\n| X | other | iné |\n\n| Tag | Description | Slovensky vyznam | Example |\n|:----:|:-----------------------------------------:|:----------------:|:--------------------------:|\n| CC | conjunction, coordinating | | and, or, but |\n| CD | cardinal number | | five, three, 13% |\n| DT | determiner | | the, a, these |\n| EX | existential there | | there were six boys |\n| FW | foreign word | | mais |\n| IN | conjunction, subordinating or preposition | | of, on, before, unless |\n| JJ | adjective | | nice, easy |\n| JJR | adjective, comparative | | nicer, easier |\n| JJS | adjectiv", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-7", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 7, + "text": "| | nice, easy |\n| JJR | adjective, comparative | | nicer, easier |\n| JJS | adjective, superlative | | nicest, easiest |\n| LS | list item marker | | |\n| MD | verb, modal auxillary | | may, should |\n| NN | noun, singular or mass | | tiger, chair, laughter |\n| NNS | noun, plural | | tigers, chairs, insects |\n| NNP | noun, proper singular | | Germany, God, Alice |\n| NNPS | noun, proper plural | | we met two Christmases ago |\n| PDT | predeterminer | | both his children |\n| POS | possessive ending | | 's |\n| PRP | pronoun, personal | | me, you, it |\n| PRP$", + "text_length": 1167 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-8", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 8, + "text": "possessive ending | | 's |\n| PRP | pronoun, personal | | me, you, it |\n| PRP$ | pronoun, possessive | | my, your, our |\n| RB | adverb | | extremely, loudly, hard |\n| RBR | adverb, comparative | | better |\n| RBS | adverb, superlative | | best |\n| RP | adverb, particle | | about, off, up |\n| SYM | symbol | | % |\n| TO | infinitival to | | what to do |\n| UH | interjection | | oh, oops, gosh |\n| VB | verb, base form | | think |\n| VBZ | verb, 3rd person singular present | | she thinks", + "text_length": 1184 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-9", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 9, + "text": "| VB | verb, base form | | think |\n| VBZ | verb, 3rd person singular present | | she thinks |\n| VBP | verb, non-3rd person singular present | | I think |\n| VBD | verb, past tense | | they thought |\n| VBN | verb, past participle | | a sunken ship |\n| VBG | verb, gerund or present participle | | thinking is fun |\n| WDT | wh-determiner | | which, whatever, whichever |\n| WP | wh-pronoun, personal | | what, who, whom |\n| WP$ | wh-pronoun, possessive | | whose, whosever |\n| WRB | wh-adverb | | where, when |", + "text_length": 1009 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-10", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 10, + "text": "# Inštalácia spacy\n\n```python\npip install -U spaCy //instalacia spacy\npython -m spacy download en //instalacia anglickeho jazyka\n```", + "text_length": 132 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-11", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 11, + "text": "#### prvý kód\n```python\nimport spacy\nnlp = spacy.load('en')\ndoc = nlp('Hello World!')\nfor token in doc:\n print('\"' + token.text + '\"', token.idx)\n#Vystup", + "text_length": 160 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-12", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 12, + "text": "# \"Hello\" 0", + "text_length": 11 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-13", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 13, + "text": "# \" \" 6", + "text_length": 10 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-14", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 14, + "text": "# \"World\" 10", + "text_length": 12 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-15", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 15, + "text": "# \"!\" 15\n```\nAko prvé si importujeme spacy knižnicu. Zadáme vetu, ktorú chceme prejsť tokenizáciu. V tomto pípade používame iba dva tokeny. Prvý nám vypíše text a medzeri, druhý token nám napíše, na ktorom mieste sa nachádza naše slovo.\n```python\ndoc = nlp(\"Next week I'll be in Madrid.\")\nfor token in doc:\n print(\"{0}\\t{1}\\t{2}\\t{3}\\t{4}\\t{5}\\t{6}\\t{7}\".format(\n token.text,\n token.idx,\n token.lemma_,\n token.is_punct,\n token.is_space,\n token.shape_,\n token.pos_,\n token.tag_\n ))\n\n#vystup", + "text_length": 553 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-16", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 16, + "text": "# Next 0 next False False Xxxx ADJ JJ", + "text_length": 50 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-17", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 17, + "text": "# week 5 week False False xxxx NOUN NN", + "text_length": 54 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-18", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 18, + "text": "# I 10 -PRON- False False X PRON PRP", + "text_length": 47 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-19", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 19, + "text": "# 'll 11 will False False 'xx VERB MD", + "text_length": 50 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-20", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 20, + "text": "# 15 False True SPACE _SP", + "text_length": 47 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-21", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 21, + "text": "# be 17 be False False xx VERB VB", + "text_length": 46 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-22", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 22, + "text": "# in 20 in False False xx ADP IN", + "text_length": 42 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-23", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 23, + "text": "# Madrid 23 madrid False False Xxxxx PROPN NNP", + "text_length": 59 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-24", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 24, + "text": "# . 29 . True False . PUNCT \n```\n* **token.text** reprezentácia textu dokumentu v Unicode,\n* \t**token.idx** znakový index začiatku,\n* **token.lemma_** základná podoba tokenu bez inflexných prípon,\n* **token.is_punct** je to interpunkcia znamienka,\n* **token.is_space** pozostáva token z bielych znakov,\n* **token.shape_** transformácia reťazca tokenov na zobrazenie ortografických prvkov, \n napríklad „Xxxx“ alebo „dd“\n* **token.pos_** hrubozrnná časť reči,\n* **token.tag_** jemnozrnná reč.\n \nPoďme si rozobrať výstup prvého slova Next. Ako prvé sa nám vypíše samotné slovo, ďalej nasleduje, na ktorom indexe slovo začína. V našom prípade je to index 0. V ďalšom stĺpci máme slovo napísané pomocou malých písmen. Ďalšie dva stĺpce nám zisťujú, či dané slovo obsahuje interpunkčné znamienko (napr. apostrof) a či slovo nepozostáva z medzery. Predposledný stĺpec nám zisťuje, aký slovný druh (viď. tabuľku nižšie) je dané slovo v našom prípade je to podstatné meno atd.\n\nDetekcia vety\n\n```python\ndoc = nlp(\"These are apples. These are oranges.\")\n \nfor sent in doc.sents:\n print(sent)", + "text_length": 1101 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-25", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 25, + "text": "# These are apples.", + "text_length": 19 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-26", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 26, + "text": "# These are oranges.\n```\nPomenovanie entit\n\n```python\nimport spacy\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"Apple is looking at buying U.K. startup for $1 billion\")\n\nfor ent in doc.ents:\n print(ent.text, ent.start_char, ent.end_char, ent.label_)\n \n#Apple 0 5 ORG\n#U.K. 27 31 GPE\n#$1 billion 44 54 MONEY\n```\nNa tomto príklade môžme pozorovať, že spacy dokáže rozlíšiť slova. Dokáže zistiť či dané slovo je napr. mesto(GPE-Geopolitical entity) alebo nejaká organizácia (ORG- Companies). Ďalej vie určiť či sa jedná o dátum, sumu peňazí, osobu atď. .", + "text_length": 556 + }, + { + "chunk_id": "pages/students/2016/maros_harahus/timovy_projekt/README.md::chunk-27", + "document_path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 27, + "text": "# Záver\nV tomto semestri som sa venoval programovaciemu jazyku python. Študoval som tento programovací jazyk jeho syntax a ďalšie veci okolo tohto programovacieho jazyka. V ďalšej časti som sa venoval frameworku Spacy ktorý vytvára model pre Part Of Speech tagging. Zisťoval som čo tento framework dokáže robiť a na akom princípe funguje. Ďalších semestroch sa budem venovať podpory slovenského jazyka pre framework Spacy. Konkrétne vytvorené značkovania v slovenskom jazyku. Ako prvé si musím naštudovať sadu slovenského národného korpusu a na akom princípe funguje. V letnom semestri by som už vytvoriť mapovanie morfologických značiek slovenského národného korpusu. Ako hlavne body mojej diplomovej prace budú vypracovanie prehľadu spôsobu morfologickej anotácie slovenského jazyka. Taktiež si budem musieť pripraviť nejaké dáta s ktorými by som mohol pracovať vo svojej diplomovej práci. Poslednou cestou mojej prace bude vyhodnotiť presnosť značkovania mnou vytvoreného nastroja a navrhnúť nejaké zlepšenia ktoré by sa mohli do budúcna implementovať.", + "text_length": 1055 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-0", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Patrik Pavlišin", + "text_length": 17 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-1", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2022\n\nPredbežný názov: Neurónový strojový preklad\n\nNávrh na nástroje pre strojový preklad:\n\n- OpenNMT-py\n- Fairseq\n- Hugging Face Transformers", + "text_length": 160 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-2", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Návrh na zadanie diplomovej práce\n\n1. Pripraviť prehľad aktuálnych metód strojového prekladu pomocou neurónových sietí. \n2. Vybrať konkrétnu metódu strojového prekladu pomocou neurónových sietí a podrobne ju opísať.\n3. Pripraviť vybraný paralelný korpus do vhodnej podoby a pomocou vybranej metódy natrénovať model pre strojový preklad. \n4. Vyhodnotiť experimenty a navrhnúť možnosti na zlepšenie.", + "text_length": 403 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-3", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Diplomový projekt 2\n\nCiele na semester:\n\n1. Natrénovať \"kvalitný model\" na preklad z angličtiny do slovenčiny.\n2. Napísať draft diplomovej práce.\n\nZásobník úloh:\n\n- natrénovať aj iné preklady (z a do češtiny).\n\n18.2.2022\n\n- Beží trénovanie na idoc\n\nÚlohy:\n\nZmeňte štruktúru práce podľa tohoto myšienkového postupu.\nPridajte nové časti a vyradte nerelevantné časti.\n\n1. Vysvetlite čo je to neurónový strojovyý preklad.\n2. Vysvetlite, čo je to neurónová sieť.\n3. Povedze aké typy neurónových sietí sa používajú na strojový preklad.\n4. Vyberte konkrétnu neurónovú sieť (tú ktorá sa používa v OPennmt) a podrobne opíšte ako funguje.\n5. Predstavte Open NMT.\n6. Povedzte o dátach ktoré ste použili (dorobiť).\n7. Vysvetlite, ako ste pripravili experimenty, ako ste ich spustili a aké výlsekdy ste dosiahli (dorobiť).\n8. Sumarizujte experimenty a určite miesto na zlepšenie (dorobiť).\n\n27.1.2022\n\n- Hotovy model na CZ-EN\n\nÚlohy:\n\n- Aktualizujte trénovacie skripty na gite.\n- Rozbehajte GPU trénovnaie na idoc. Vyriešte technické problémy.\n- Natrénujte viacero modelov s viacerými nastaveniami a výsledkyž dajte do tabuľky. Ku každému modelu si poznačte výsledné BLEU. Výsledky skontrolujte aj osobne. \n- P", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-4", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "doc. Vyriešte technické problémy.\n- Natrénujte viacero modelov s viacerými nastaveniami a výsledkyž dajte do tabuľky. Ku každému modelu si poznačte výsledné BLEU. Výsledky skontrolujte aj osobne. \n- Pokračujte na texte práce. Odstrániť nezmyselné časti. Pri ďalšom stretnutí prezentujte stav textovej časti.\n\n17.12.2021\n\n- Vylepšený draft práce.\n- Nové vyhodnotenie a výsledky modelu.\n- Trénovanie na česko-anglickom korpuse.\n\nÚlohy:\n\n- natrénujte na tomto EN-SK korpuse: https://lindat.mff.cuni.cz/repository/xmlui/handle/11858/00-097C-0000-0006-AAE0-A\n- Pokračujte v otvorených úlohách z minulého stretnutia.\n- Výsledky experiemntov zhrňte do tabuľky. Poznačte architektúru neurónovej siete, parametre trénovania.\n- Skúste rozbehať trénovanie na GPU. \n\n1. Vytvorte nové conda prostredie. Spustite:\n\n conda install pytorch=1.8.1cudatoolkit=10.1 -c pytorch\n\n2. Nainštalujte OpenNMT.\n\n26.11.2021\n\nNatrénovaný prvý model OpenNMT na korpuse europarlament.\nVýslekdy vyzerajú OK, ale sú chaotické. Pravdepodobne bolo trénovanie prerušené predčasne. Zatiaľ nefunguje trénovanie na GPU.\n\nÚlohy: \n\n- Pokračujte v trénovaní Europarl. Modelu, skúste vylepšiť výsledky.\n- Trénovanie robte opakovateľným spôso", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-5", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "depodobne bolo trénovanie prerušené predčasne. Zatiaľ nefunguje trénovanie na GPU.\n\nÚlohy: \n\n- Pokračujte v trénovaní Europarl. Modelu, skúste vylepšiť výsledky.\n- Trénovanie robte opakovateľným spôsobom - dajte na git nastavenia a trénovacie skripty, ale nie textové dáta. Len poznačte odkiaľ ste ich stiahli.\n- Pokračujte v práci na texte - myšlienky by mali logicky nasledovať za sebou.\n\n12.11.2021\n\nPráca na texte\n\nÚlohy:\n\n- Zlepšiť štruktúru práce\n- Dotrénovať a vyhodnotiť model slovenčina-angličtina.\n\n28.10.\n\nStav:\n\n- Vypracovaný draft článoku o transformeroch, treba vylepšiť. Článok je na ZP Wiki \n- Problém pri príprave trénovacích dát.\n\nÚlohy:\n\n- Naučte sa pripravovať textové dáta. Prejdite si knihu https://diveintopython3.net aspoň do 4 kapitoly. Vypracujte všetky príklady z nej. \n- Pokračujte v práci na článku. Treba doplniť odkazy do textu. Treba zlepšiť štruktúru a logickú náväznosť viet. Vysvetlite neznáme pojmy. \n- Zmente článok na draft diplomovej práce. Vypracujte osnovu diplomovej práce - napíšte názvy kapitol a ich obsah. Zaraďte tam text o transformeroch ktorý ste vypracovali.\n- Pripravte textové dáta do vhodnej podoby a spustite trénovanie. \n\nStretnutie 30.9.\n\nStav", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-6", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "iplomovej práce - napíšte názvy kapitol a ich obsah. Zaraďte tam text o transformeroch ktorý ste vypracovali.\n- Pripravte textové dáta do vhodnej podoby a spustite trénovanie. \n\nStretnutie 30.9.\n\nStav:\n\n- Len začaté štúdium článkov, ostatné úlohy zostávajú otvorené.\n\nÚlohy:\n\n- Pokračovať v úlohách zo 17.6.\n- Na trénovanie použite OpenNMT.\n- Vytvorte si repozitár dp2022 a do neho dajte skripty na natrénovanie modelov. Nedávajte tam veľké dáta, ale dajte tam skript na ich stiahnutie, napr. pomocou wget.\n - prepare-env.sh : ako ste vyttvorili Vaše prostredie - nainštalovali programy.\n - download-data.sh: ako ste získali dáta\n - prepare-data.sh: ako ste pripravili dáta\n - train1.sh: ako ste natrénovali model\n - evaluate1.sh: ako ste vyhodnotili model.", + "text_length": 772 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-7", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "## Diplomový projekt 1\n\nStretnutie 17.6.\n\n- Splnené podmienky na zápočet.\n- Napísaný tutoriál a úvod do NMT\n\nÚlohy:\n\n- Skúste zlepšiť presnosť strojového prekladu. Modifikujte setup tak, aby sa výsledky zlepšili.\n- Preštudujte si architektúru neurónovej siete typu Transformer. Prečítajte si blogy a urobte poznámky,\nPrečítajte si článok s názvom \"Attention is all you need.\". Urobte si poznámky čo ste sa dozvedeli.\n- Preštudujte si architektúru typu enkóder-dekóder. Urobte si poznámky čo ste sa dozvedeli a z akých zdrojov. \nVyužívajte vyhľadávač Scholar.\n\nStretnutie 9.4.\n\nStav:\n\n- Problém pri OpenNMT-py Quickstart - Nvidia driver nefunguje v prostredí WSL1. riešenie - vypnúť GPU training alebo trénovať na IDOC.\n- Napísané poznámky o NMT na cca 3 strany, na zpwiki\n\nÚlohy:\n\n- Vysvetlite vlastnými slovami čo to je neurónová sieť. Ak sa niečo dozviete z článku, povedzte vlastnými slovami čo ste sa dozvedeli a z akého článku ste sa to dozvedeli.\n- Vysvetlite vlastnými slovami ako prebieha neurónový preklad. Vysvetlite, ako sa text premení do formy ktorá je zrozumiteľná pre neurónovú sieť. Vysvetlite čo je výstupom neurónovej siete a ako sa ten výstup premení na text.\n- Napíšte to do mark", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-8", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "urónový preklad. Vysvetlite, ako sa text premení do formy ktorá je zrozumiteľná pre neurónovú sieť. Vysvetlite čo je výstupom neurónovej siete a ako sa ten výstup premení na text.\n- Napíšte to do markdown súboru na zpwiki.\n- Dokončite tutoriál OpenNMT-py.\n\nStretnutie 12.3.\n\nStav:\n\n- poznámky k článku \"Google’s neural machine translation system .\n- Śtúdium ostatných článkov pokračuje.\n- Problém - aktuálna verzia OpenNMT-py nefunguje s pythonom 3.5. Je potrebné využit Anacondu.\n\nÚlohy:\n\n- Vypracujte poznámky k článkom\n- Pokračujte v tutoriáli OpenNMT-py cez prostredie Anaconda.\n- Poznámky pridajte na zpWiki vo formáte Markdown\n\nStretnutie 18.2.\n\nStav:\n- Vypracovaný článok z minulého semestra\n\nÚlohy:\n\n- V linuxovom prostredí (napr. idoc) si vytvorte python virtuálne prostredie:\n - vytvorte si adresár s projektom\n - mkdir ./venv\n - python3 -m virtualenv ./venv\n - source ./venv/bin/activate\n - Keď skončíte: deactivate\n- Prejdite si tutoriál https://github.com/OpenNMT/OpenNMT-py\n- Prečítjte si články z https://opennmt.net/OpenNMT-py/ref.html\n- Vypracujte poznámky k článku \"Google’s neural machine translation system: bridging the gap between human and machine translation. a", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-9", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "py\n- Prečítjte si články z https://opennmt.net/OpenNMT-py/ref.html\n- Vypracujte poznámky k článku \"Google’s neural machine translation system: bridging the gap between human and machine translation. arXiv preprint arXiv:1609.08144, 2016\". Čo ste sa z čánku dozvedeli?", + "text_length": 267 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-10", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "## Tímový projekt 2021\n\nCiel: \n- vytvoriť článok s témou \"Štatistický preklad\".\n- vytvoriť článok, publikovateľný na konferencii\n\nVirtuálne stretnutie 4.12.2020\n\nStav:\n\n- Vypracovaný prehľad na tri strany, prečítané 3 články. \n- Prístup treba zlepšiť. \n\nÚlohy na ďalšie stretnutie:\n\n- Pokračujte v písaní. Prečítajte si min. 10 článok na tému strojový preklad a ku každému napíšte čo ste sa dozvedeli.\n- Zamerajte sa na články o neurónovom strojovom preklade. Zistite a napíšte čo je to archtektúra encoder-decoder. Napíšte aké neurónové siete sa najviac používajú.\n- Pozrite [Ondrej Megela](/students/2018/ondrej_megela), [Martin Jancura](/students/2017/martin_jancura), [Dominik Nagy](/students/2016/dominik_nagy) \n- Navrhnite zadanie diplomovej práce.\n\nVirtuálne stretnutie 2.10.2020\n\nPrečítajte si a vypracujte poznámky:\n\n- https://apps.dtic.mil/sti/pdfs/ADA466330.pdf\n- https://arxiv.org/abs/1409.1259\n\nPozrite si aj niektoré články ktoré sú v bibliografii.\n\nZistitie, aké najnovšie voľne šíriteľné systémy na strojový preklad sú dostupné a napíšte ku nim krátku charakteristiku. Na akej metóde sú založené? V ktorom článku je táto metóda opísaná? Používajte scopus alebo scholar.\nZapíšte si zau", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-11", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "ľné systémy na strojový preklad sú dostupné a napíšte ku nim krátku charakteristiku. Na akej metóde sú založené? V ktorom článku je táto metóda opísaná? Používajte scopus alebo scholar.\nZapíšte si zaujímavé bibliografické odkazy a poznačte si, čo zaujímavé sa v nich nachádza.", + "text_length": 276 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-12", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "## Bakalárska práca 2020\n\nhttps://opac.crzp.sk/?fn=detailBiblioForm&sid=AFB64E0160B4F4E92146D39F9648\n\nNázov bakalárskej práce: Metódy automatického prekladu\n\nMeno vedúceho: Ing. Daniel Hládek, PhD.\n\nZadanie bakalárskej práce: \n\n1. Pripraviť prehľad aktuálnych metód automatického prekladu. \n2. Predstaviť vybranú metódu automatického prekladu. \n3. Pripraviť vybraný paralelný korpus a vykonať niekoľko experimentov s automatickým prekladom. \n4. Vyhodnotiť experimenty vhodnou metódou a navrhnúť možnosti na zlepšenie.", + "text_length": 517 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/README.md::chunk-13", + "document_path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "## Bakalársky projekt 2019\n\nPrejsť si tutoriál a tréning zo stránky \n\n-\t(http://www.statmt.org/moses/?n=Moses.Overview)\n\nPreštudovať\n\n-\t(https://github.com/rain1024/slp2-pdf)\n-\t(http://folk.uio.no/plison/pdfs/talks/meetup_SMT.pdf)\n-\t(http://www.statmt.org/moses/?n=Moses.Overview)\n\nKniha\n\n-\tJ. JUHÁR, 2011, Rečové technológie v telekomunikačných a informačných systémoch. Košice: EQUILIBRIA, s.r.o., ISBN 978-80- 89284-75-7\t \n\nCiele projektu\n\n1. Oboznámiť sa s metódami automatického prekladu.\n2. Nainštalovať a spustiť program Moses.\n3. Oboznámiť sa s programom Moses.\n4. Vyskúšať model prekladu.\n\nVypracovať rešerš na tému Metódy strojového prekladu a Paralelne korpusy na 5 strán od každého", + "text_length": 694 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-0", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "## Úvod\n\nNeurónový strojový preklad (NMT) je prístup k strojovému prekladu, ktorý využíva umelú neurónovú sieť na predpovedanie pravdepodobnosti postupnosti slov, typicky modelovaním celých viet v jednom integrovanom modeli. NMT nie je drastickým krokom nad rámec toho, čo sa tradične robí v štatistickom strojovom preklade (SMT). Štruktúra modelov je jednoduchšia ako frázové modely. Neexistuje žiadny samostatný jazykový model, prekladový model a model zmeny poradia, ale iba jeden sekvenčný model, ktorý predpovedá jedno slovo po druhom. Táto predikcia postupnosti je však podmienená celou zdrojovou vetou a celou už vyprodukovanou cieľovou sekvenciou.", + "text_length": 655 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-1", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 1, + "text": "## Neurónová sieť\n\nNeurónovú sieť tvoria neuróny, ktoré sú medzi sebou poprepájané. Všeobecne môžeme poprepájať ľubovoľný počet neurónov, pričom okrem pôvodných vstupov môžu byť za vstupy brané aj výstupy iných neurónov. Počet neurónov a ich vzájomné poprepájanie v sieti určuje tzv. architektúru (topológiu) neurónovej siete. Neurónová sieť sa v čase vyvíja, preto je potrebné celkovú dynamiku neurónovej siete rozdeliť do troch dynamík a potom uvažovať tri režimy práce siete: organizačná (zmena topológie), aktívna (zmena stavu) a adaptívna (zmena konfigurácie). Jednotlivé dynamiky neurónovej siete sú obvykle zadané počiatočným stavom a matematickou rovnicou, resp. pravidlom, ktoré určuje vývoj príslušnej charakteristiky sieti v čase. \n\nSynaptické váhy patria medzi dôležité časti Neurónovej siete. Tieto váhy ovplyvňujú celú sieť tým, že ovplyvňujú vstupy do neurónov a tým aj ich stavy. Synaptické váhy medzi neurónmi i, j označujeme wi,j. Najdôležitejším momentom pri činnosti Neurónovej siete je práve zmena váh delta wi,j. Vo všeobecnosti ich rozdeľujeme na kladné (excitačné) a záporné (inhibičné). \n\nNeurón je základným prvkom Neurónovej siete. Rozdiel medzi umelým a ľudským je v tom,", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-2", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 2, + "text": "ete je práve zmena váh delta wi,j. Vo všeobecnosti ich rozdeľujeme na kladné (excitačné) a záporné (inhibičné). \n\nNeurón je základným prvkom Neurónovej siete. Rozdiel medzi umelým a ľudským je v tom, že v súčasnosti je možné vytvoriť oveľa rýchlejší neurón, ako ľudský. Avšak čo sa týka počtu neurónov, ľudský mozog sa skladá z 10 na 11 až 10 na 14 neurónov a každý neurón má 10 na 3 až 10 na 4 neurónových spojení. V súčasnej dobe nie je možné nasimulovať v rámci jednej Neurónovej siete také množstvo neurónov. V tomto ohľade je ľudský mozog podstatne silnejší oproti nasimulovanej Neurónovej siete. [3]\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/tp20/neuronova%20siet.png)| \n|:--:| \n|Obr 1. základné zobrazenie Neurónovej siete|\n\nČinnosť Neurónových sieti rozdeľujeme na :\n\n- Fáza učenia – v tejto fáze sa znalosti ukladajú do synaptických váh neurónovej siete, ktoré sa menia podľa stanovených pravidiel počas procesu učenia. V prípade neurónových sieti môžeme pojem učenie chápať ako adaptáciu neurónových sieti, teda zbieranie a uchovávanie poznatkov.\n\n- Fáza života – dochádza ku kontrole a využitiu nadobudnutých poznatkov na riešeni", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-3", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 3, + "text": "eurónových sieti môžeme pojem učenie chápať ako adaptáciu neurónových sieti, teda zbieranie a uchovávanie poznatkov.\n\n- Fáza života – dochádza ku kontrole a využitiu nadobudnutých poznatkov na riešenie určitého problému (napr. transformáciu signálov, problémy riadenia procesov, aproximáciu funkcií, klasifikácia do tried a podobne). V tejto fáze sa už nemenia synaptické váhy.\n\nNeurónová sieť by vo všeobecnosti mala mať pravidelnú štruktúru pre ľahší popis a analýzu. Viacvrstvová štruktúra patrí k pomerne dobre preskúmaným štruktúram Neurónovej siete a skladá sa z :\n\n- Vstupná vrstva (angl. Input layer) – na vstup prichádzajú len vzorky z vonkajšieho sveta a výstupy posiela k ďalším neurónom\n\n- Skrytá vrstva (angl. Hidden layer) – vstupom sú neuróny z ostatných neurónov z vonkajšieho sveta (pomocou prahového prepojenia) a výstupy posiela opäť ďalším neurónom \n\n- Výstupná vrstva (angl. Output layer) – prijíma vstupy z iných neurónov a výstupy posiela do vonkajšieho prostredia\n\nReprezentatívna vzorka je jedným zo základných pojmov Neurónových sieti. Jedná sa o usporiadanú množinu usporiadaných dvojíc, pričom ku každému vstupu je priradený vyhovujúci výstup. Poznáme dva typy reprezentat", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-4", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 4, + "text": "ívna vzorka je jedným zo základných pojmov Neurónových sieti. Jedná sa o usporiadanú množinu usporiadaných dvojíc, pričom ku každému vstupu je priradený vyhovujúci výstup. Poznáme dva typy reprezentatívnych vzoriek :\n\n- Trénovaciu vzorku – využíva sa pri fáze učenia (pri tejto vzorke je dôležité vybrať tú najvhodnejšiu a najkvalitnejšiu, pretože získané poznatky sa ukladajú učením do synaptických váh neurónovej siete)\n\n- Testovacia vzorka – používa sa vo fáze života\n\nTopológiu Neurónových sieti rozdeľujeme na :\n\n- Dopredné Neurónové siete (angl. feed-forward neural network), ktoré sa ďalej delia na kontrolované a nekontrolované učenie, v tejto topológií je signál šírený iba jedným smerom. U dopredných sietí neexistujú spojenia medzi neurónmi tej istej vrstvy, ani medzi neurónmi vzdialených vrstiev.\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/tp20/dopredn%c3%bd%20nn.png)| \n|:--:| \n|Obr 2. Dopredná Neurónová sieť|\n\n- Rekurentné Neurónové siete (angl. recurrent neural network), ktoré sa ďalej delia na kontrolované a nekontrolované učenie, signál sa šíry obojsmerne (neuróny sa môžu správať ako vstupné aj výstupné). [3]\n\n|![](http", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-5", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 5, + "text": "rónové siete (angl. recurrent neural network), ktoré sa ďalej delia na kontrolované a nekontrolované učenie, signál sa šíry obojsmerne (neuróny sa môžu správať ako vstupné aj výstupné). [3]\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/tp20/recurrent%20neural%20network.png)| \n|:--:| \n|Obr 3. Rekurentná Neurónová sieť|\n\n**Exploding and vanishing gradient problems**\n\nV strojovom učení sa s problémom miznúceho gradientu stretávame pri trénovaní umelých neurónových sietí metódami učenia založenými na gradiente a spätnou propagáciou. V takýchto metódach dostáva každá z váh neurónovej siete aktualizáciu úmernú čiastočnej derivácii chybovej funkcie vzhľadom na aktuálnu váhu v každej iterácii trénovania. Problém je v tom, že v niektorých prípadoch bude gradient zbytočne malý, čo účinne zabráni tomu, aby váha zmenila svoju hodnotu. V najhoršom prípade to môže úplne zabrániť neurónovej sieti v ďalšom trénovaní. Ako jeden príklad príčiny problému majú tradičné aktivačné funkcie, ako je hyperbolická tangenciálna funkcia, gradienty v rozsahu (0, 1) a spätné šírenie počíta gradienty podľa pravidla reťazca. To má za následok znásobenie n tých", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-6", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 6, + "text": "lému majú tradičné aktivačné funkcie, ako je hyperbolická tangenciálna funkcia, gradienty v rozsahu (0, 1) a spätné šírenie počíta gradienty podľa pravidla reťazca. To má za následok znásobenie n týchto malých čísel na výpočet gradientov prvých vrstiev v sieti n-vrstiev, čo znamená, že gradient (chybový signál) exponenciálne klesá s n, zatiaľ čo prvé vrstvy trénujú veľmi pomaly. \nAk sa použijú aktivačné funkcie, ktorých deriváty môžu nadobúdať väčšie hodnoty, riskujeme, že narazíme na súvisiaci problém s explodujúcim gradientom. Problém s explodujúcim gradientom je problém, ktorý sa môže vyskytnúť pri trénovaní umelých neurónových sietí pomocou gradientného klesania spätným šírením. Problém s explodujúcim gradientom je možné vyriešiť prepracovaním sieťového modelu, použitím usmernenej lineárnej aktivácie, využitím sietí s LSTM, orezaním gradientu a regularizáciou váh. Ďalším riešením problému s explodujúcim gradientom je zabrániť tomu, aby sa gradienty zmenili na 0, a to pomocou procesu známeho ako orezávanie gradientov, ktorý kladie na každý gradient vopred definovanú hranicu. Orezávanie prechodov zaisťuje, že prechody budú smerovať rovnakým smerom, ale s kratšími dĺžkami. [2]\n\n**", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-7", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 7, + "text": "u známeho ako orezávanie gradientov, ktorý kladie na každý gradient vopred definovanú hranicu. Orezávanie prechodov zaisťuje, že prechody budú smerovať rovnakým smerom, ale s kratšími dĺžkami. [2]\n\n**Neurónový preklad**\n\nNeurónový strojový preklad vo všeobecnosti zahŕňa všetky typy strojového prekladu, kde sa na predpovedanie postupnosti čísel používa umelá neurónová sieť. V prípade prekladu je každé slovo vo vstupnej vete zakódované na číslo, ktoré neurónová sieť prepošle do výslednej postupnosti čísel predstavujúcich preloženú cieľovú vetu. Prekladový model následne funguje prostredníctvom zložitého matematického vzorca (reprezentovaného ako neurónová sieť). Tento vzorec prijíma reťazec čísel ako vstupy a výstupy výsledného reťazca čísel. Parametre tejto neurónovej siete sú vytvárané a vylepšované trénovaním siete s miliónmi vetných párov. Každý takýto pár viet tak mierne upravuje a vylepšuje neurónovú sieť, keď prechádza každým vetným párom pomocou algoritmu nazývaným spätné šírenie. [3]\n\n**Systém neurónového strojového prekladu spoločnosti Google**\n\nNeurónový strojový preklad (angl. NMT - neural machine translation) používa end-to-end učenie pre strojový preklad, ktorého cieľom", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-8", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 8, + "text": ". [3]\n\n**Systém neurónového strojového prekladu spoločnosti Google**\n\nNeurónový strojový preklad (angl. NMT - neural machine translation) používa end-to-end učenie pre strojový preklad, ktorého cieľom je prekonať slabé stránky konvenčných frázových systémov. End-to-end učenie je typ Deep Learningu, v ktorom sú všetky parametre trénované spoločne, a nie krok za krokom. Bohužiaľ systémy NMT výpočtovo náročné počas trénovania ako aj pri samotnom preklade (je to kvôli ochrane napr. pri vysokom množstve veľkých súborov a veľkých modelov). Niekoľko autorov tiež uviedlo (odkaz na [1]), že systémom NMT chýba robustnosť, najmä keď vstupné vety obsahujú zriedkavé, alebo zastaralé slová. Tieto problémy bránili používaniu NMT v praktických nasadeniach a službách, kde je nevyhnutná presnosť aj rýchlosť. \n\nSpoločnosť Google preto predstavila GNMT (google´s neural machine translation) systém , ktorý sa pokúša vyriešiť mnohé z týchto problémov. Tento model sa skladá z hlbokej siete Long Short-Term Memory (LSTM) s 8 kódovacími a 8 dekódovacími vrstvami, ktoré využívajú zvyškové spojenia, ako aj pozorovacie spojenia zo siete dekodéra ku kódovaciemu zariadeniu. Aby sa zlepšila paralelnosť a tým pádom", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-9", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 9, + "text": "ory (LSTM) s 8 kódovacími a 8 dekódovacími vrstvami, ktoré využívajú zvyškové spojenia, ako aj pozorovacie spojenia zo siete dekodéra ku kódovaciemu zariadeniu. Aby sa zlepšila paralelnosť a tým pádom skrátil čas potrebný na trénovanie, tento mechanizmus pozornosti spája spodnú vrstvu dekodéra s hornou vrstvou kódovacieho zariadenia. Na urýchlenie konečnej rýchlosti prekladu používame pri odvodzovacích výpočtoch aritmetiku s nízkou presnosťou. Aby sa vylepšila práca so zriedkavými slovami, slová sa delia na vstup aj výstup na obmedzenú množinu bežných podslovných jednotiek („wordpieces“). Táto metóda poskytuje dobrú rovnováhu medzi flexibilitou modelov oddelených znakom a účinnosťou modelov oddelených slovom, prirodzene zvláda preklady zriedkavých slov a v konečnom dôsledku zvyšuje celkovú presnosť systému.\n\nŠtatistický strojový preklad (SMT - statistical machine translation) je po celé desaťročia dominantnou paradigmou strojového prekladu. Implementáciami SMT sú vo všeobecnosti systémy založené na frázach (PBMT - phrase-based machine translation), ktoré prekladajú postupnosti slov alebo frázy, kde sa môžu dĺžky líšiť. Ešte pred príchodom priameho neurónového strojového prekladu sa", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-10", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 10, + "text": "y založené na frázach (PBMT - phrase-based machine translation), ktoré prekladajú postupnosti slov alebo frázy, kde sa môžu dĺžky líšiť. Ešte pred príchodom priameho neurónového strojového prekladu sa neurónové siete s určitým úspechom používali ako súčasť systémov SMT. Možno jeden z najpozoruhodnejších pokusov spočíval v použití spoločného jazykového modelu na osvojenie frázových reprezentácií, čo prinieslo pozoruhodné zlepšenie v kombinácii s prekladom založeným na frázach. Tento prístup však vo svojej podstate stále využíva frázové prekladové systémy, a preto dedí ich nedostatky. \n\nO koncepciu end-to-end učenia pre strojový preklad sa v minulosti pokúšali s obmedzeným úspechom. Po mnohých seminárnych prácach v tejto oblasti sa kvalita prekladu NMT priblížila k úrovni frázových prekladových systémov pre bežné výskumné kritériá. V anglickom a francúzskom jazyku WMT’14 dosiahol tento systém zlepšenie o 0,5 BLEU (je algoritmus na hodnotenie kvality textu) v porovnaní s najmodernejším frázovým systémom. Odvtedy bolo navrhnutých veľa nových techník na ďalšie vylepšenie NMT ako napríklad použitie mechanizmu pozornosti na riešenie zriedkavých slov, mechanizmu na modelovanie pokrytia pre", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-11", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 11, + "text": "ázovým systémom. Odvtedy bolo navrhnutých veľa nových techník na ďalšie vylepšenie NMT ako napríklad použitie mechanizmu pozornosti na riešenie zriedkavých slov, mechanizmu na modelovanie pokrytia prekladu, rôznymi druhmi mechanizmov pozornosti, minimalizáciou strát na úrovni vety. \n\nLSTM sú špeciálny typ Rekurentných neurónových sietí (RNN), ktorý slúži na dosiahnutie dlhodobého kontextu (napr. Pri doplnení chýbajúcej interpunkcie alebo veľkých písmen). Najväčšie využitie LSTM je v oblasti strojového učenia a hlbokého učenia. \nVlastnosti LSTM: \n- pripravený spracovať nielen jednoduché dáta, ale aj celé sekvenčné dáta (napr. reč alebo video), \n- sú vhodné na klasifikáciu, spracovanie a vytváranie predikcií na základe časových údajov \n- LSTM boli definované tak, aby si na rozdiel od RNN vedeli pomôcť s problémom, ktorý sa nazýva „Exploding and vanishing gradient problems“. [1]\n\n**Wordpiece Model**\n\nTento prístup je založený výlučne na dátach a je zaručené, že pre každú možnú postupnosť znakov vygeneruje deterministickú segmentáciu (segmenty používateľov založené na nejakej hypotéze následne sa dáta analyzujú, aby sa zistilo, či sú segmenty zaujímavé a užitočné). Je to podobné ako me", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-12", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 12, + "text": "znakov vygeneruje deterministickú segmentáciu (segmenty používateľov založené na nejakej hypotéze následne sa dáta analyzujú, aby sa zistilo, či sú segmenty zaujímavé a užitočné). Je to podobné ako metóda použitá pri riešení zriedkavých slov v strojovom preklade neurónov. Na spracovanie ľubovoľných slov najskôr rozdelíme slová na slovné druhy, ktoré sú dané trénovaným modelom slovných spojení. Pred cvičením modelu sú pridané špeciálne symboly hraníc slov, aby bolo možné pôvodnú sekvenciu slov získať z postupnosti slovných spojení bez nejasností. V čase dekódovania model najskôr vytvorí sekvenciu slovných spojení, ktorá sa potom prevedie na zodpovedajúcu sekvenciu slov. \n\n|![one](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/tp20/Bez%20n%c3%a1zvu.png)|\n|:--:| \n|Obr 4. Príklad postupnosti slov a príslušná postupnosť slovných spojení|\n\nVo vyššie uvedenom príklade je slovo „Jet“ rozdelené na dve slovné spojenia „_J“ a „et“ a slovo „feud“ je rozdelené na dve slovné spojenia „_fe“ a „ud“. Ostatné slová zostávajú ako jednotlivé slová. „_“ Je špeciálny znak pridaný na označenie začiatku slova. \nWordpiece model sa generuje pomocou prístupu z", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-13", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 13, + "text": "rozdelené na dve slovné spojenia „_fe“ a „ud“. Ostatné slová zostávajú ako jednotlivé slová. „_“ Je špeciálny znak pridaný na označenie začiatku slova. \nWordpiece model sa generuje pomocou prístupu založeného na údajoch, aby sa maximalizovala pravdepodobnosť jazykových modelov cvičných údajov, vzhľadom na vyvíjajúcu sa definíciu slova. Vzhľadom na cvičný korpus a množstvo požadovaných tokenov D je problémom optimalizácie výber wordpieces D tak, aby výsledný korpus bol minimálny v počte wordpieces, ak sú segmentované podľa zvoleného wordpiece modelu. V tejto implementácii používame špeciálny symbol iba na začiatku slov, a nie na oboch koncoch. Počet základných znakov tiež znížime na zvládnuteľný počet v závislosti na údajoch (zhruba 500 pre západné jazyky, viac pre ázijské jazyky). Zistili sme, že použitím celkovej slovnej zásoby medzi 8 000 a 32 000 slovnými jednotkami sa dosahuje dobrá presnosť (BLEU skóre) aj rýchlosť dekódovania pre dané jazykové páry. \n\nV preklade má často zmysel kopírovať zriedkavé názvy entít alebo čísla priamo zo zdroja do cieľa. Na uľahčenie tohto typu priameho kopírovania vždy používame wordpiece model pre zdrojový aj cieľový jazyk. Použitím tohto príst", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-14", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 14, + "text": "l kopírovať zriedkavé názvy entít alebo čísla priamo zo zdroja do cieľa. Na uľahčenie tohto typu priameho kopírovania vždy používame wordpiece model pre zdrojový aj cieľový jazyk. Použitím tohto prístupu je zaručené, že rovnaký reťazec vo zdrojovej a cieľovej vete bude segmentovaný presne rovnakým spôsobom, čo uľahčí systému naučiť sa kopírovať tieto tokeny. Wordpieces dosahujú rovnováhu medzi flexibilitou znakov a efektívnosťou slov. Zistili sme tiež, že naše modely dosahujú lepšie celkové skóre BLEU pri používaní wordpieces - pravdepodobne kvôli tomu, že naše modely teraz efektívne pracujú v podstate s nekonečnou slovnou zásobou bez toho, aby sa uchýlili iba k znakom. [1]", + "text_length": 682 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-15", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 15, + "text": "## OpenNMT-py tutoriál\n\nPri práci na tomto tutoriáli som použil školský server idoc, rovnako ako aj voľne dostupné linuxové prostredie Ubuntu.\nPredtým než začneme so samotným tutoriálom je nutné si nainštalovať PyTorch (rámec pre preklad neurónových strojov s otvoreným zdrojom) verziu projektu OpenNMT rovnako ako inštaláciu najnovšej dostupnej verzie knižnice pip. To vykonáme zadaním nasledujúcich príkazov:\n\n- pip install --upgrade pip\n- pip install OpenNMT-py\n\nPrvým krokom v tutoriáli je príprava dát, na to nám poslúži predpripravená vzorka dát v anglicko-nemeckom jazyku voľne dostupná na internete obsahujúca 10 000 tokenizovaných viet (tokenizovanie je rozdelenie frázy, vety, odseku alebo celého textu na menšie jednotky teda tokeny,). Údaje pozostávajú z paralelných zdrojových (src) a cieľových (tgt) údajov obsahujúcich jednu vetu na riadok s tokenmi oddelenými medzerou.\n\n- wget https://s3.amazonaws.com/opennmt-trainingdata/toy-ende.tar.gz\n- tar xf toy-ende.tar.gz\n- cd toy-ende\n\nPre pokračovanie si musíme pripraviť konfiguračný súbor YAML, aby sme určili údaje, ktoré sa použijú:\n\n- -# toy_en_de.yaml\n- -## Where the samples will be written\n- save_data: toy-ende/run/example\n- -## W", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-16", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 16, + "text": "pokračovanie si musíme pripraviť konfiguračný súbor YAML, aby sme určili údaje, ktoré sa použijú:\n\n- -# toy_en_de.yaml\n- -## Where the samples will be written\n- save_data: toy-ende/run/example\n- -## Where the vocab(s) will be written\n- src_vocab: toy-ende/run/example.vocab.src\n- tgt_vocab: toy-ende/run/example.vocab.tgt\n- -# Prevent overwriting existing files in the folder\n- overwrite: False\n\n- -# Corpus opts:\n- data:\n- corpus_1:\n- path_src: toy-ende/src-train.txt\n- path_tgt: toy-ende/tgt-train.txt\n- valid:\n- path_src: toy-ende/src-val.txt\n- path_tgt: toy-ende/tgt-val.txt\n\n...\n\nZ tejto konfigurácie môžeme zostaviť slovnú zásobu, ktorá bude potrebná na trénovanie modelu:\n\n- onmt_build_vocab -config toy-ende/toy_en_de.yaml -n_sample 10000\n\n \nAby sme mohli model trénovať, musíme do konfiguračného súboru YAML pridať:\n\n-- cesty slovnej zásoby, ktoré sa budú používať (v tomto prípade cesty vygenerované programom onmt_build_vocab)\n\n-- tréning špecifických parametrov.\n\nPridáme do YAML konfiguračného súboru nasledujúce riadky:\n\n- -# Vocabulary files that were just created\n- src_vocab: toy-ende/run/example.vocab.src\n- tgt_vocab: toy-ende/run/example.vocab.tgt\n- -# Where to save the che", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-17", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 17, + "text": "nfiguračného súboru nasledujúce riadky:\n\n- -# Vocabulary files that were just created\n- src_vocab: toy-ende/run/example.vocab.src\n- tgt_vocab: toy-ende/run/example.vocab.tgt\n- -# Where to save the checkpoints\n- save_model: toy-ende/run/model\n- save_checkpoint_steps: 500\n- train_steps: 1000\n- valid_steps: 500\n\nPotom už len stačí spustiť proces trénovania:\n\n- onmt_train -config toy-ende/toy_en_de.yaml\n\nV tejto konfigurácii bude bežať predvolený model, ktorý sa skladá z dvojvrstvového modulu LSTM s 500 skrytými jednotkami v kodéri aj v dekodéri.\n\nPosledným krokom je samotný preklad, ktorý vykonáme zadaním nasledujúceho príkazu:\n\n- onmt_translate -model toy-ende/run/model_step_1000.pt -src toy-ende/src-test.txt -output toy-ende/pred_1000.txt -verbose\n\nVýsledkom je model, ktorý môžeme použiť na predpovedanie nových údajov. To prebieha spustením tzv. Beam search. Beam search sa využíva za účelom udržania ľahšieho ovládania vo veľkých systémoch s nedostatkom pamäte na uloženie celého vyhľadávacieho stromu. To vygeneruje predpovede do výstupného súboru toy-ende/pred_1000.txt . V mojom prípade proces prekladu trval na školskom serveri idoc približne 5 hodín zatiaľ čo v Linuxovom prostredí U", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-18", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 18, + "text": "acieho stromu. To vygeneruje predpovede do výstupného súboru toy-ende/pred_1000.txt . V mojom prípade proces prekladu trval na školskom serveri idoc približne 5 hodín zatiaľ čo v Linuxovom prostredí Ubuntu 1 hodinu. V obidvoch prípadoch boli výsledky podpriemerné, pretože demo súbor údajov bol dosť malý.", + "text_length": 305 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp21/README.md::chunk-19", + "document_path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 19, + "text": "## Zoznam použitej literatúry \n\n[1]. WU Y., SCHUSTER M., CHEN Z., LE V. Q., NOROUZI M.: _Google’s Neural Machine Translation System: Bridging the Gapbetween Human and Machine Translation._ [online]. [citované 08-09-2016].\n\n[2]. PYKES K.: _The Vanishing/Exploding Gradient Problem in Deep Neural Networks._ [online]. [citované 17-05-2020].\n\n[3]. ŠÍMA J., NERUDA R.: Teoretické otázky neurónových sítí [online]. [1996].", + "text_length": 417 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-0", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "## Attention, The Transformer\n\n**Úvod**\n\nTransformer je modelová architektúra, ktorá sa vyhýba opakovaniu a namiesto toho sa úplne spolieha na mechanizmus pozornosti na kreslenie globálnych závislostí medzi vstupom a výstupom. Je to prvý transdukčný model, ktorý sa spolieha úplne na vlastnú pozornosť pri výpočte reprezentácii vstupu a výstupu bez použitia RNN (Recurrent Neural Network) alebo CNN (Convolution Neural Network). Používa sa predovšetkým v oblasti NLP (Natural Language Processing) a CV (Computer Vision). Mechanizmy pozornosti sa stali súčasťou presvedčivého modelovania sekvencií a prenosových modelov v rôznych úlohách, ktoré umožňujú modelovanie závislostí bez ohľadu na ich vzdialenosť vo vstupných alebo výstupných sekvenciách. Takmer vo všetkých prípadoch sa však takéto mechanizmy pozornosti používajú v spojení s rekurentnou sieťou. Systémy počítačového videnia (CV) založené na CNN môžu tiež ťažiť z mechanizmov pozornosti. Hlavnou vlastnosťou tzv. “mechanizmus pozornosti” je že vie na základe vstupnej postupnosti v každom kroku rozhodnúť, ktoré časti postupnosti sú dôležité. Je to technika, ktorá napodobňuje kognitívnu pozornosť.\n\nNajmä Multi-head attention mechanizmus", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-1", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 1, + "text": "je že vie na základe vstupnej postupnosti v každom kroku rozhodnúť, ktoré časti postupnosti sú dôležité. Je to technika, ktorá napodobňuje kognitívnu pozornosť.\n\nNajmä Multi-head attention mechanizmus v Transformeri umožňuje, aby bola každá pozícia priamo spojená s akýmikoľvek inými pozíciami v sekvencii. Informácie tak môžu prúdiť cez pozície bez akejkoľvek medzistraty. Napriek tomu existujú dva problémy, ktoré môžu poškodiť účinnosť Multi-head attention pri sekvenčnom učení. Prvý pochádza zo straty sekvenčných informácií o pozíciách, pretože s každou pozíciou zaobchádza rovnako. Na zmiernenie tohto problému Transformer zavádza vkladanie pozícií, ktorých účinky sa však ukázali ako obmedzené. [4]\n\nNa vyriešenie vyššie uvedených obmedzení štandardného Transformera bol navrhnutý nový model sekvenčného učenia R-Transformer. Ide o viacvrstvovú architektúru postavenú na RNN a štandardnom Transformeri, pričom využíva výhody oboch svetov, ale zároveň sa vyhýba ich príslušným nevýhodám. Konkrétnejšie, pred výpočtom globálnych závislostí pozícii pomocou Multi-head attention najskôr spresníme znázornenie každej polohy tak, aby sa sekvenčné a lokálne informácie v jej susedstve mohli v repreze", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-2", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 2, + "text": "tnejšie, pred výpočtom globálnych závislostí pozícii pomocou Multi-head attention najskôr spresníme znázornenie každej polohy tak, aby sa sekvenčné a lokálne informácie v jej susedstve mohli v reprezentácii skomprimovať. Aby sa to dosiahlo bola zavedená lokálna rekurentná neurónová sieť, označená ako LocalRNN, na spracovanie signálov v rámci lokálneho okna končiaceho na danej pozícii. LocalRNN navyše pracuje na miestnych oknách všetkých pozícií identicky a nezávisle a pre každú z nich vytvára skrytú reprezentáciu. Okrem toho, keďže sa lokálne okno posúva pozdĺž sekvencie jednu pozíciu za druhou, sú zahrnuté aj globálne sekvenčné informácie. Dôležité najme je, že nakoľko LocalRNN sa používa iba na lokálne okná, vyššie uvedené nevýhody RNN je možné zmierniť. [1][6]\n\nRekurentné neurónové siete, najmä long short-term pamäť (LSMT, špeciálny druh RNN, vytvorený na riešenie problémov s miznúcim gradientom) a uzavreté rekurentné neurónové siete, boli pevne zavedené ako najmodernejšie prístupy k problémom sekvenčného modelovania a prenosov, ako je jazykové modelovanie a strojový preklad. LSTM je architektúra umelej rekurentnej neurónovej siete (RNN), ktorá sa používa v oblasti deep-learning", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-3", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 3, + "text": "k problémom sekvenčného modelovania a prenosov, ako je jazykové modelovanie a strojový preklad. LSTM je architektúra umelej rekurentnej neurónovej siete (RNN), ktorá sa používa v oblasti deep-learning učenia. Na rozdiel od štandardných dopredných neurónových sietí (ang. Feedforward neural network) má LSTM spätnú väzbu. Dokáže spracovať nielen jednotlivé dátové body (napríklad obrázky), ale aj celé sekvencie dát (napríklad reč alebo video). Početné snahy odvtedy pokračujú v posúvaní hraníc rekurentných jazykových modelov a architektúr encoder-decoder. Sieťové pamäte typu end-to-end sú založené na RNN (Recurrent Neural Network) mechanizme namiesto opakovania zarovnaného podľa sekvencie a ukázalo sa, že fungujú dobre pri úlohách zodpovedajúcich otázky v jednoduchom jazyku a pri modelovaní jazykov. End-to-end učenie je typ Deep Learningu, v ktorom sú všetky parametre trénované spoločne, a nie krok za krokom. [7] [8]\n\nRNN boli dlhodobo dominantnou voľbou pre sekvenčné modelovanie, závažne však trpia najme dvoma problémami. Po prvé, ľahko trpí problémami s miznutím a explodovaním gradientu, čo do značnej miery obmedzuje schopnosť naučiť sa veľmi dlhodobé závislosti. Po druhé, sekvenčná p", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-4", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 4, + "text": "šak trpia najme dvoma problémami. Po prvé, ľahko trpí problémami s miznutím a explodovaním gradientu, čo do značnej miery obmedzuje schopnosť naučiť sa veľmi dlhodobé závislosti. Po druhé, sekvenčná povaha prechodov dopredu aj dozadu veľmi sťažuje, ak nie priam znemožňuje, paralelizáciu výpočtu, čo dramaticky zvyšuje časovú zložitosť v tréningovom aj testovacom postupe. Preto mnohé nedávno vyvinuté modely sekvenčného učenia úplne vypustili rekurentnú štruktúru a spoliehajú sa iba na konvolučnú (Convolution Neural Network) alebo mechanizmus pozornosti, ktoré sa dajú ľahko paralelizovať a umožňujú tok informácií v ľubovoľnej dĺžke. Dva reprezentatívne modely, ktoré pritiahli veľkú pozornosť, sú Temporal Convolution Networks (TCN) a Transformer. V rôznych úlohách sekvenčného učenia preukázali porovnateľný alebo dokonca lepší výkon ako výkonnosť RNN. [8]\n\n**Modelová architektúra**\n\nVäčšina konkurenčných prenosových modelov neurónovej sekvencie má štruktúru encoder-decoder. V tomto prípade encoder mapuje vstupnú sekvenciu symbolových reprezentácií (x1, ..., xn) na sekvenciu spojitých reprezentácií z = (z1, ..., zn). Vzhľadom na z, decoder potom generuje výstupnú sekvenciu (y1, ..., ym)", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-5", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 5, + "text": "encoder mapuje vstupnú sekvenciu symbolových reprezentácií (x1, ..., xn) na sekvenciu spojitých reprezentácií z = (z1, ..., zn). Vzhľadom na z, decoder potom generuje výstupnú sekvenciu (y1, ..., ym) symbolov jeden po druhom. V každom kroku je model automaticky regresívny a pri generovaní ďalšieho spotrebuje predtým vygenerované symboly ako ďalší vstup. [1]\n \n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/Modelov%c3%a1%20architekt%c3%bara%20Transformer.png)| \n|:--:| \n|Obr 1. Modelová architektúra Transformer|", + "text_length": 575 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-6", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 6, + "text": "## Encoder-Decoder architektúra\n\nRovnako ako predchádzajúce modely, Transformer používa architektúru encoder-decoder. Encoder-Decoder architektúra je spôsob použitia rekurentných neurónových sietí na problémy s predikciou sekvencie k sekvencii. Pôvodne bol vyvinutý pre problémy so strojovým prekladom, aj keď sa osvedčil pri súvisiacich problémoch s predikciou sekvencie k sekvencii, ako je zhrnutie textu a zodpovedanie otázok. Skladá sa z 3 častí (encoder, intermediate vector a decoder).\n\nEncoder – prijme jeden prvok vstupnej sekvencie v každom časovom kroku, spracuje ho, zhromaždí informácie o danom prvku a šíri ho ďalej.\n\nIntermediate vector – konečný vnútorný stav vytvorený z časti encoder modelu. Obsahuje informácie o celej vstupnej sekvencii, ktoré pomôžu decoderu robiť presné predpovede.\n\nDecoder – predpovedá výstup v každom časovom kroku.\n\nEncoder pozostáva z kódovacích vrstiev, ktoré spracovávajú vstup iteračne jednu vrstvu za druhou, zatiaľ čo decoder pozostáva z dekódovacích vrstiev, ktoré robia to isté s výstupom encodera. Funkciou každej vrstvy encodera je generovať kódovanie, ktoré obsahuje informácie o tom, ktoré časti vstupov sú navzájom relevantné. Odošle svoje kódo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-7", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 7, + "text": "vrstiev, ktoré robia to isté s výstupom encodera. Funkciou každej vrstvy encodera je generovať kódovanie, ktoré obsahuje informácie o tom, ktoré časti vstupov sú navzájom relevantné. Odošle svoje kódovanie do ďalšej vrstvy encodera ako vstupy. Každá decoderová vrstva robí opak, pričom použije všetky kódovania a na začlenenie výstupnej sekvencie použije svoje začlenené kontextové informácie. Aby sa to dosiahlo, každá vrstva encodera a decodera využíva mechanizmus pozornosti.\n\nPri každom vstupe pozornosť zvažuje relevanciu každého ďalšieho vstupu a čerpá z neho pri vytváraní výstupu. Každá decoderová vrstva má mechanizmus dodatočnej pozornosti, ktorý čerpá informácie z výstupov predchádzajúcich decoderov, než vrstva decodera čerpá informácie z kódovaní.\n\nObe vrstvy encodera a decodera majú feed-forward neurónovú sieť (umelá neurónová sieť, v ktorej spojenia medzi uzlami netvoria cyklus) na dodatočné spracovanie výstupov a obsahujú zvyškové spojenia a kroky na normalizácie vrstiev. [3]\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/%c5%a0trukt%c3%bara%20modelu%20sequence%20to%20sequence.png)| \n|:--:| \n|Obr 2. Štruktúra modelu", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-8", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 8, + "text": "![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/%c5%a0trukt%c3%bara%20modelu%20sequence%20to%20sequence.png)| \n|:--:| \n|Obr 2. Štruktúra modelu sequence to sequence (encoder-decoder)|\n\n**Transformer Encoder**\n\nEncoder sa skladá zo zásobníka _N = 6_ rovnakých vrstiev. Každá vrstva má dve podvrstvy. Prvým je multi-head self-attention mechanizmus a druhým je jednoduchá polohovo plne prepojená sieť spätnej väzby. Multi-head Attention je modul pre mechanizmy pozornosti, ktorý prechádza mechanizmom pozornosti niekoľkokrát paralelne. Self-attention, tiež známy ako Intra-attention, je mechanizmus pozornosti, ktorý spája rôzne polohy jednej sekvencie s cieľom vypočítať reprezentáciu tej istej sekvencie. Okolo každej z dvoch čiastkových vrstiev sa používa zvyškové spojenie, po ktorom nasleduje normalizácia vrstvy. To znamená, že výstupom každej podvrstvy je _LayerNorm (x + Sublayer (x))_, kde _Sublayer (x)_ je funkcia implementovaná samotnou podvrstvou. Aby sa uľahčili tieto zvyškové spojenia, všetky podvrstvy v modeli, ako aj vkladacie vrstvy, produkujú výstupy dimenzie _dmodel_ = 512. [1]\n\n**Transformer Decoder**\n\nDecoder je tiež zlo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-9", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 9, + "text": "ou podvrstvou. Aby sa uľahčili tieto zvyškové spojenia, všetky podvrstvy v modeli, ako aj vkladacie vrstvy, produkujú výstupy dimenzie _dmodel_ = 512. [1]\n\n**Transformer Decoder**\n\nDecoder je tiež zložený zo zásobníka _N = 6_ rovnakých vrstiev. Okrem dvoch podvrstiev v každej vrstve encodera, decoder vkladá tretiu podvrstvu, ktorá vykonáva multi-head attention nad výstupom encoder zásobníka. Podobne ako encoder, používa zvyškové spojenia okolo každej z podvrstiev, po ktorých nasleduje normalizácia vrstvy. Toto maskovanie v kombinácii so skutočnosťou, že vloženia výstupov sú posunuté o jednu pozíciu, zaisťuje, že predpovede pre polohu _i_ môžu závisieť iba od známych výstupov v polohách menších ako _i_. [1]\n\n**Scaled Dot-Product Attention**\n\nNašu osobitnú pozornosť nazývame „Pozornosť zameraná na produkt“ (obrázok 2). Vstup pozostáva z dotazov a kľúčov dimenzie _dk_ a hodnôt dimenzie _dv_. Bodové produkty dotazu vypočítame všetkými klávesmi, každý vydelíme √_dk_ a použijeme funkciu _softmax_, aby sme získali váhy hodnôt.\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/Scaled%20Dot-Production%20Attention.png)| \n|:--:| \n|Obr 3.", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-10", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 10, + "text": "tmax_, aby sme získali váhy hodnôt.\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/Scaled%20Dot-Production%20Attention.png)| \n|:--:| \n|Obr 3. Scaled Dot-Production Attention|\n\nV praxi počítame funkciu pozornosti pre množinu dotazov súčasne zabalených do matice _Q_. Kľúče a hodnoty sú tiež zabalené spolu do matíc _K_ a _V_. Maticu výstupov vypočítame ako:\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/rovnica%201.png)| \n|:--:| \n\nDve najčastejšie používané funkcie pozornosti sú additive attention a dot-product attention. Dot-product attention je identická s naším algoritmom, s výnimkou faktora mierky 1/$\\sqrt{dk}$. Additive attention počíta funkciu kompatibility pomocou siete spätnej väzby s jednou skrytou vrstvou. Aj keď sú tieto dva teoreticky náročné, dot-product attention je v praxi oveľa rýchlejšia a priestorovo efektívnejšia, pretože je možné ich implementovať pomocou vysoko optimalizovaného maticového multiplikačného kódu.\n\nZatiaľ čo pri malých hodnotách dk tieto dva mechanizmy fungujú podobne, additive attention prevyšuje pozornosť produktu bez toho, aby sa šk", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-11", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 11, + "text": "ou vysoko optimalizovaného maticového multiplikačného kódu.\n\nZatiaľ čo pri malých hodnotách dk tieto dva mechanizmy fungujú podobne, additive attention prevyšuje pozornosť produktu bez toho, aby sa škálovala pri väčších hodnotách _dk_. Je pravdepodobné, že pri veľkých hodnotách _dk_ sa bodové produkty zväčšujú a tlačia funkciu _softmax_ do oblastí, kde má extrémne malé gradienty (v strojovom učení je gradient derivátom funkcie, ktorá má viac ako jednu vstupnú premennú). Aby sa tomuto efektu zabránilo, škálujeme bodové produkty o 1/$\\sqrt{dk}$ [1] [4]\n\n**Multi-Head Attention**\n\nNamiesto toho, aby sme vykonávali funkciu jedinej pozornosti s _dmodel_-dimenzionálnymi kľúčmi, hodnotami a dotazmi, považuje sa za výhodné lineárne premietať dotazy, kľúče a hodnoty _h_-krát s rôznymi, naučenými lineárnymi projekciami do dimenzií _dk_, _dk_ a _dv_. Na každej z týchto predpokladaných verzií dotazov, kľúčov a hodnôt potom paralelne vykonávame funkciu pozornosti, čím sme získali _dv_-dimenzionálne výstupné hodnoty. Tieto sú zreťazené a znova premietnuté, výsledkom sú konečné hodnoty (obrázok 4).\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-12", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 12, + "text": "výstupné hodnoty. Tieto sú zreťazené a znova premietnuté, výsledkom sú konečné hodnoty (obrázok 4).\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/Multi-Head%20Attention.png)| \n|:--:| \n|Obr 4. Multi-Head Attention|\n\nMulti-head attention umožňuje modelu spoločne sa zaoberať informáciami z rôznych reprezentačných podpriestorov na rôznych pozíciách. Pri použití single-head attention to priemerovanie bráni.\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/rovnica%202.png)| \n|:--:| \n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/Screenshot_1.png)| \n|:--:| \n|Obr 5. matice parametrov|\n\nV tomto prípade si za _h_ dosadíme 8 paralelných vrstiev pozornosti, alebo „heads“. Pre každý z nich používame _dk_ = _dv_ = _dmodel/h_ = _64_. Vzhľadom na zmenšený rozmer každej hlavy sú celkové výpočtové náklady podobné nákladom na pozornosť single-head s plnou dimenzionalitou (koľko atribútov má množina údajov).\n\nThe Transformer využíva Multi-head attention tromi rôznymi spôsobmi:\n\nVo vrstvách „encoder-decoder attention“ pochádzajú", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-13", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 13, + "text": "rnosť single-head s plnou dimenzionalitou (koľko atribútov má množina údajov).\n\nThe Transformer využíva Multi-head attention tromi rôznymi spôsobmi:\n\nVo vrstvách „encoder-decoder attention“ pochádzajú dotazy z predchádzajúcej vrstvy decodera a pamäťové kľúče a hodnoty sú z výstupu encodera. To umožňuje každej pozícii v decoderi zúčastniť sa na všetkých pozíciách vo vstupnej sekvencii.\n\nEncoder obsahuje vrstvy self-attention. Vo vrstve self-attention pochádzajú všetky kľúče, hodnoty a dotazy z rovnakého miesta, teda predchádzajúcej vrstvy v encoderu. Každá pozícia v encoderi sa môže venovať všetkým polohám v predchádzajúcej vrstve encodera.\n\nVrstvy self-attention v decoderi umožňujú každej pozícii v decoderi zúčastniť sa na všetkých polohách v decoderi až do danej polohy. Musí sa zabrániť toku informácii v decoderi, aby sa zachovala autoregresívna vlastnosť (model časových radov, ktorý používa pozorovania z predchádzajúcich časových krokov ako vstup do regresnej rovnice na predpovedanie hodnoty v nasledujúcom časovom kroku). To implementujeme do scaled dot-product attention pomocou maskovania (nastavením na -∞) všetkých hodnôt na vstupe softmax, ktoré zodpovedajú nezákonným spojenia", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-14", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 14, + "text": "hodnoty v nasledujúcom časovom kroku). To implementujeme do scaled dot-product attention pomocou maskovania (nastavením na -∞) všetkých hodnôt na vstupe softmax, ktoré zodpovedajú nezákonným spojeniam. [1] [4]", + "text_length": 209 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-15", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 15, + "text": "## R-Transformer\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/branch/master/pages/students/2016/patrik_pavlisin/dp22/R-Transformer.png)| \n|:--:| \n|Obr 5. R-Transformer|\n\nNavrhovaný transformátor R sa skladá zo stohu rovnakých vrstiev. Každá vrstva má 3 komponenty, ktoré sú usporiadané hierarchicky. Ako je znázornené na obrázku, nižšou úrovňou sú lokálne rekurentné neurónové siete, ktoré sú určené na modelovanie lokálnych štruktúr v sekvencii, stredná úroveň je Multi-head attention, ktorá je schopná zachytiť globálne dlhodobé závislosti a horná úroveň je position-wise feedforward sieť, ktorá vykonáva nelineárnu transformáciu prvkov. [2]\n\n**Porovnanie s TCN**\n\nR-Transformer je čiastočne motivovaný hierarchickou štruktúrou v TCN, v TCN je lokalita v sekvenciách zachytená konvolučnými filtrami. Sekvenčné informácie v rámci každého receptívneho poľa sú však pri konvolučných operáciách ignorované. Na rozdiel od toho, štruktúra LocalRNN v R-Transformer ju môže plne začleniť vďaka sekvenčnej povahe RNN. Pre modelovanie globálnych dlhodobých závislostí to TCN dosahuje pomocou rozšírených konvolúcií, ktoré fungujú na nenásledných pozíciách. Aj keď táto operácia vedie k väčším receptívn", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-16", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 16, + "text": "čnej povahe RNN. Pre modelovanie globálnych dlhodobých závislostí to TCN dosahuje pomocou rozšírených konvolúcií, ktoré fungujú na nenásledných pozíciách. Aj keď táto operácia vedie k väčším receptívnym poliam v nižších vrstvách, chýba značné množstvo informácií z veľkej časti pozícií v každej vrstve. [2]\n\n**Porovnanie s Transformerom**\n\nR-Transformer a štandardný Transformer majú podobnú kapacitu dlhodobého zapamätania vďaka Multi-head attention mechanizmu. Dve dôležité vlastnosti však odlišujú R-Transformer od štandardného Transformera. Po prvé, R-Transformer explicitne a efektívne zachytáva lokalitu v sekvenciách s novou štruktúrou LocalRNN, zatiaľ čo štandardný Transformer ju modeluje veľmi nepresne pomocou Multi-head attention, ktorá pôsobí na všetkých pozíciách. Po druhé, R-Transformer sa nespolieha na žiadne vloženie polohy ako Transformer. V skutočnosti sú výhody jednoduchého polohového zabudovania veľmi obmedzené a vyžaduje značné úsilie na navrhnutie efektívnych polohových zabudovaní, ako aj správnych spôsobov ich začlenenia. [2] [4]", + "text_length": 1059 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/dp22/README.md::chunk-17", + "document_path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 17, + "text": "## Zoznam použitej literatúry\n\n[1]. VASWANI A., SHAZEER N., PARMAR N., USZKOREIT J., JONES L., GOMEZ N.A., KASIER L., POLUSUKHIN.I.: _Attention Is All You Need._ [online]. [citované 2017].\n\n[2]. WANG Z., MA Y., LIU Z., TANG J.: _R-Transformer: Recurrent Neural Network Enhanced Transformer._ [online]. [citované 12-07-2019].\n\n[3]. SRIVASTAVA S.: _Machine Translation (Encoder-Decoder Model)!._ [online]. [citované 31-10-2019].\n\n[4]. ALAMMAR J.: _The Illustrated Transformer._ [online]. [citované 27-06-2018].\n\n[5]. _Sequence Modeling with Neural Networks (Part 2): Attention Models_ [online]. [citované 18-04-2016].\n\n[6]. GIACAGLIA G.: _How Transformers Work._ [online]. [citované 11-03-2019].\n\n[7]. _Understanding LSMT Networks_ [online]. [citované 27-08-2015].\n\n[8]. _6 Types of Artifical Neural Networks Currently Being Used in Machine Translation_ [online]. [citované 15-01-201].", + "text_length": 884 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-0", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "# Strojový preklad", + "text_length": 18 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-1", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 1, + "text": "## Štatistický strojový preklad\n\nStrojový preklad je automatický preklad jednej, alebo skupiny viacerých viet jedného jazyka do druhého pomocou počítačov. Jedná sa o dôležitú aplikáciu v oblasti spracovania prirodzeného jazyka a záujem o toto odvetvie je takmer taký starý ako elektronický počítač. Štatistický strojový preklad zaznamenal za necelé dve desaťročia obrovský pokrok a v súčasnosti práve on dominuje v tejto oblasti výskumu. SMT využíva veľké množstvo paralelných korpusov a textov, ktoré už boli predtým preložené, vďaka čomu je stroj preložiť dovtedy nevidené vety. Príkladom pre SMT sú modely IBM, slovné modely, ktoré predstavujú prvú generáciu štatistického strojového prekladu. S použitím rôznych nástrojov a dostatku paralelného textu tak môžeme vytvoriť strojový preklad pre nový jazykový pár vo veľmi krátkom čase, podľa niektorých štúdii dokonca za menej ako deň.\n\nPopularita internetu výrazne ovplyvnila záujem o strojový preklad a šírenie informácii vo viacerých jazykoch. Príkladom sú viacjazyčné vlády, spravodajské agentúry a spoločnosti pôsobiace na globálnom trhu. Vďaka tomuto rozšíreniu sú základným zdrojom vo výskume SMT, pretože sú každodenným produktom bežných ľud", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-2", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 2, + "text": "íkladom sú viacjazyčné vlády, spravodajské agentúry a spoločnosti pôsobiace na globálnom trhu. Vďaka tomuto rozšíreniu sú základným zdrojom vo výskume SMT, pretože sú každodenným produktom bežných ľudských činností. A je to taktiež jeden z dôvodov, prečo Európska únia, či Vláda Spojených štátov zvýšila financovanie výskumu strojového prekladu na podporu svojich záujmov v oblasti politiky. Rýchli a lacný výpočtový hardvér umožnil aplikácie, ktoré závisia od veľkého počtu súborov údajov a miliárd štatistík. Výrazne k tomu prispeli pokroky v rýchlosti procesora, veľkosti a rýchlosti pamäte novších počítačov. Vývoj metrík automatického prekladu taktiež umožnil zrýchliť vývoj systémov strojového prekladu a podporil konkurenciu medzi výskumnými skupinami. [10]", + "text_length": 764 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-3", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 3, + "text": "## Neurónový strojový preklad\n\nSila NMT spočíva v jeho schopnosti učiť sa priamo, end-to-end spôsobom, mapovanie zo vstupného textu na asociovaný výstupný text. End-to-end učenie je typ procesu Deep Learning, v ktorom sú všetky parametre trénované spoločne, a nie krok za krokom. Neurónový strojový preklad je jedným z novších prístupov v štatistickom strojovom preklade založený čisto na neurónových sieťach, pozostávajú z kódovacieho zariadenia a dekódera. Tento typ strojového prekladu viedol k zlepšeniu najmä v oblasti hodnotenia ľudí, v porovnaní so systémami založenými na štatistickom strojovom preklade. Podľa najnovších štúdií NMT všeobecne produkuje plynulé, ale nedostatočné preklady, čo je v kontraste s konvenčným štatistickým strojovým prekladom, ktorý produkuje adekvátne, ale nie plynulé preklady. Kódovacie zariadenie extrahuje reprezentáciu pevnej dĺžky zo vstupnej vety s premennou dĺžkou a dekóder následne vygeneruje finálny preklad z danej reprezentácie. Neurálny strojový preklad funguje dobre predovšetkým na krátke vety bez neznámych slov, preklad sa však zhoršuje s pribúdajúcou dĺžkou textu a neznámych slov, taktiež slovná zásoba ma veľký vplyv na výkon prekladu. Výhodou", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-4", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 4, + "text": "lad funguje dobre predovšetkým na krátke vety bez neznámych slov, preklad sa však zhoršuje s pribúdajúcou dĺžkou textu a neznámych slov, taktiež slovná zásoba ma veľký vplyv na výkon prekladu. Výhodou neurónového strojového prekladu je, že oproti SMT vyžaduje iba zlomok pamäte pre trénovanie (napr. ak neurónový strojový preklad použije 500 MB pamäte, SMT by na rovnaké trénovanie využil desiatky gigabajtov). Na rozdiel od iných konvenčných prekladových systémov, sa každý komponent modelu neurálneho prekladu trénuje spoločne, aby sa maximalizoval výkon prekladu. [4] [5] [6] [7]", + "text_length": 582 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-5", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 5, + "text": "## NMT s SMT výhodami\n\nVzhľadom na vedomosti, ktoré máme o NMT a SMT je preto prirodzené pokúsiť sa využívať výhody oboch modelov na lepšie preklady. Konkrétne začleniť model SMT do rámca NMT, čo znamená, že v každom kroku SMT odošle ďalšie odporúčania generovaných slov na základe dekódovacích informácii z NMT. Experimentálne výsledky čínsko-anglického prekladu (NMT advised by SMT, 2016) ukazujú, že navrhovaný prístup dosahuje mimoriadne konzistentné vylepšenia oproti najnovším NMT a SMT modelom. Jedným z rozdielov v tomto prístupe je, že tento model nevyberá ďalšie slovo len na základe vektorových reprezentácií (vektory čísel, ktoré predstavujú význam slova), ale umožňuje tiež predikciu na základe odporúčaní z modelu SMT. (Viac informácii na [3] ).", + "text_length": 759 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-6", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 6, + "text": "## Recurrent neural network\n\nRekurentné neurónové siete (RNN) sú najmodernejším algoritmom pre sekvenčné dáta a používajú ich napr. Apple´s Siri alebo Google. Je to prvý algoritmus, ktorý si pamätá svoj vstup a to vďaka vnútornej pamäti, čo ho robí perfektným pre problémy strojového učenia, ktoré zahŕňajú sekvenčné dáta. RNN môžu používať svoj vnútorný stav (pamäť) na spracovanie sekvencií vstupov s premennou dĺžkou. Obojsmerná rekurentná neurónová sieť, známa ako kóder, používa neurónová sieť na kódovanie zdrojovej vety pre druhý RNN, známy ako dekodér, ktorý sa používa na predikciu slov v cieľovom jazyku. Neurónová sieť sa považuje za snahu napodobniť akcie ľudského mozgu zjednodušeným spôsobom. Mechanizmus pozornosti je tiež pokusom o implementáciu rovnakej akcie selektívneho sústredenia sa na niekoľko dôležitých vecí, zatiaľ čo ostatné sú ignorované v hlbokých neurónových sieťach. Rekurentné neurónové siete čelia problémom pri kódovaní dlhých vstupov do jedného vektora. To je možné kompenzovať pomocou tzv. attention mechanisms (mechanizmus pozornosti), ktorý umožňuje dekodéru sústrediť sa na rôzne časti vstupu pri generovaní každého slova výstupu. \n\nTermín „rekurentná neurónová", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-7", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 7, + "text": "kompenzovať pomocou tzv. attention mechanisms (mechanizmus pozornosti), ktorý umožňuje dekodéru sústrediť sa na rôzne časti vstupu pri generovaní každého slova výstupu. \n\nTermín „rekurentná neurónová sieť“ sa používa bez rozdielu na označenie dvoch širokých tried sietí s podobnou všeobecnou štruktúrou, kde jedna je konečný impulz a druhá nekonečný impulz. Obe triedy sietí vykazujú časové dynamické správanie. Konečná impulzná opakujúca sa sieť je filter, ktorého impulzná odozva (alebo odozva na akýkoľvek vstup konečnej dĺžky) má konečnú dobu trvania, pretože sa v konečnom čase usadí na nule, zatiaľ čo nekonečná impulzná odozva (IIR) je vlastnosť vzťahujúca sa na mnoho lineárnych časovo invariantných systémov, ktoré sa vyznačujú tým, že majú impulznú odozvu h (t), ktorá sa nestane presne nulou za určitým bodom, ale pokračuje donekonečna. (Viac informácii na ( [7],[8] ).", + "text_length": 880 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-8", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 8, + "text": "## Convolutional Neural Networks\n\nOkrem RNN je ďalším prirodzeným prístupom k riešeniu sekvencií s premennou dĺžkou použitie rekurzívnej konvolučnej neurónovej siete, kde sú parametre na každej úrovni zdieľané cez celú sieť. Konvolučné neurónové siete sú v zásade o niečo lepšie pre dlhé nepretržité sekvencie, ale pôvodne sa nepoužívali kvôli niekoľkým slabinám. Tie boli v roku 2017 úspešne kompenzované pomocou „attention mechanisms“.\n\nKonvolučná neurónová sieť (CNN) je trieda hlbokých neurónových sietí, ktorá sa najčastejšie používa na analýzu vizuálnych snímok. Sú tiež známe ako umelé neurónové siete s invariantným posunom alebo s priestorovým invariantom (SIANN) na základe ich architektúry zdieľaných váh a charakteristík invariantnosti prekladu. CNN používajú v porovnaní s inými algoritmami klasifikácie obrázkov relatívne malé predbežné spracovanie. To znamená, že sa sieť učí filtre, ktoré boli v tradičných algoritmoch vyrobené ručne. Táto nezávislosť od predchádzajúcich znalostí a ľudského úsilia pri navrhovaní funkcií je hlavnou výhodou. \n\nKonvolučné siete sa inšpirovali biologickými procesmi v tom, že vzorec spojenia medzi neurónmi pripomína organizáciu vizuálnej mozgovej kôry", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-9", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 9, + "text": "udského úsilia pri navrhovaní funkcií je hlavnou výhodou. \n\nKonvolučné siete sa inšpirovali biologickými procesmi v tom, že vzorec spojenia medzi neurónmi pripomína organizáciu vizuálnej mozgovej kôry zvieraťa. Jednotlivé kortikálne neuróny (vonkajšia vrstva nervového tkaniva mozgu) reagujú na podnety iba v obmedzenej oblasti zorného poľa známej ako receptívne pole. Vnímavé polia rôznych neurónov sa čiastočne prekrývajú tak, že pokrývajú celé zorné pole.\n\nCNN používajú v porovnaní s inými algoritmami klasifikácie obrázkov relatívne málo predbežného spracovania. To znamená, že sa sieť učí filtre, ktoré boli v tradičných algoritmoch vyrobené ručne. Pri spracovaní signálu je filtrom zariadenie alebo proces, ktorý odstraňuje zo signálu niektoré nežiaduce komponenty alebo vlastnosti. Táto nezávislosť od predchádzajúcich znalostí a ľudského úsilia pri navrhovaní funkcií je hlavnou výhodou. (Viac informácii na [5],[6] ).", + "text_length": 927 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-10", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 10, + "text": "## Encoder–Decoder Approach\n\nArchitektúra Encoder-Decoder s rekurentnými neurónovými sieťami sa stala efektívnym a štandardným prístupom pre neurónový strojový preklad (NMT) a predikciu Sequence-to-sequence (seq2seq) všeobecne. Seq2seq je trénovanie modelov na prevod sekvencií z jednej domény (napr. vety v angličtine) na sekvencie v inej doméne (napr. rovnaké vety preložené do slovenčiny)\n\nMnoho úloh strojového učenia sa dá vyjadriť ako transformácia - alebo transdukcia - vstupných sekvencií do výstupných sekvencií (napr. rozpoznávanie reči, strojový preklad, alebo prevod textu na reč. (Alex Graves, 2012)\n\nStrojový preklad je hlavnou problémovou doménou pre modely sekvenčnej transdukcie, ktorých vstup aj výstup sú sekvencie s premennou dĺžkou. Na zvládnutie tohto typu vstupov a výstupov môžeme navrhnúť architektúru s dvoma hlavnými komponentmi. Prvým komponentom je kódovacie zariadenie, ktoré berie ako vstup sekvenciu s premennou dĺžkou a transformuje ju do stavu s pevným tvarom. Druhým komponentom je dekodér, ktorý mapuje kódovaný stav pevného tvaru na sekvenciu s premennou dĺžkou. Toto sa nazýva Encoder-Decoder architektúra.\n\nAj keď je architektúra Encoder-Decoder efektívna, má p", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-11", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 11, + "text": "m komponentom je dekodér, ktorý mapuje kódovaný stav pevného tvaru na sekvenciu s premennou dĺžkou. Toto sa nazýva Encoder-Decoder architektúra.\n\nAj keď je architektúra Encoder-Decoder efektívna, má problémy s dlhými sekvenciami textu, ktoré sa majú preložiť. Problém pramení z internej reprezentácie pevnej dĺžky, ktorá sa musí použiť na dekódovanie každého slova vo výstupnej sekvencii. Riešením je použitie attention mechanism (mechanizmu pozornosti), ktorý umožňuje modelu naučiť sa, kam má venovať pozornosť vstupnej sekvencii, pretože každé slovo výstupnej sekvencie je dekódované. \n\nKľúčovými výhodami tohto prístupu sú schopnosť trénovať jeden end-to-end model priamo na zdrojových a cieľových vetách a schopnosť zvládnuť vstupné a výstupné sekvencie textu s rôznou dĺžkou. Ako dôkaz úspechu metódy je architektúra jadrom prekladateľskej služby Google. Architektúra rekurentnej neurónovej siete Encoder-Decoder s pozornosťou je v súčasnosti najmodernejším riešením niektorých benchmarkových problémov pre strojový preklad. Táto architektúra je použitá v jadre systému Google Neural Machine Translation alebo GNMT, ktorý sa používa v ich službe Google Translate. [8]\n\n|![](https://git.kemt.fei", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-12", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 12, + "text": "roblémov pre strojový preklad. Táto architektúra je použitá v jadre systému Google Neural Machine Translation alebo GNMT, ktorý sa používa v ich službe Google Translate. [8]\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/commit/5134c49afabbb2e5e8e090b8fa54bb1711dd6160/pages/students/2016/patrik_pavlisin/1.png)| \n|:--:| \n|Obr 1. encoder-decoder architektúra|", + "text_length": 363 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-13", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 13, + "text": "## BERT\n\nBidirectional Encoder Representations from Transformers (BERT) je Transformer-based technika strojového učenia pre spracovanie prirodzeného jazyka vyvinutý spoločnosťou Google. Transformátor je model Deep Learning predstavený v roku 2017, ktorý sa používa predovšetkým v oblasti spracovania prirodzeného jazyka (NLP). Deep Learning je funkcia umelej inteligencie (AI), ktorá napodobňuje činnosť ľudského mozgu pri spracovaní údajov a vytváraní vzorcov pre použitie pri rozhodovaní. Keď bol BERT publikovaný, dosiahol vynikajúcu výkonnosť v mnohých úlohách porozumenia prirodzenému jazyku ako napr. SQuAD (Stanford Question Answering Dataset) a SWAG (Situations With Adversarial Generations). Dôvody spoľahlivého výkonu BERT v týchto úlohách porozumenia prirodzenému jazyku ešte nie sú dobre pochopené. \n\nBERT využíva Transformátor, attention mechanism (mechanizmus pozornosti), ktorý sa učí kontextové vzťahy medzi slovami v texte. Vo svojej základnej podobe obsahuje Transformer dva samostatné mechanizmy – encoder, ktorý číta text zo vstupu, a dekodér, ktorý vytvára predpoveď pre danú úlohu. Pretože cieľom BERT je vygenerovať jazykový model, je potrebný iba encoder mechanizmus. Na rozdi", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-14", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 14, + "text": "tné mechanizmy – encoder, ktorý číta text zo vstupu, a dekodér, ktorý vytvára predpoveď pre danú úlohu. Pretože cieľom BERT je vygenerovať jazykový model, je potrebný iba encoder mechanizmus. Na rozdiel od smerových modelov, ktoré čítajú textový vstup postupne (zľava doprava alebo sprava doľava), Transformer encoder číta celú postupnosť slov naraz. Preto sa považuje za obojsmerný, aj keď by bolo presnejšie povedať, že je nesmerový. Táto vlastnosť umožňuje modelu naučiť sa kontext slova na základe celého jeho okolia (vľavo a vpravo od slova). Vstupom je postupnosť tokenov, ktoré sa najskôr vložia do vektorov a potom sa spracujú v neurónovej sieti. Výstupom je postupnosť vektorov veľkosti H, v ktorých každý vektor zodpovedá vstupnému tokenu s rovnakým indexom.\n\nV súčasnosti sú vopred vytrénované jazykové modely BERT považované za dôležité pre širokú škálu úloh NLP, ako sú napríklad Natural Language Inference (NLI je podtémou spracovania prirodzeného jazyka v umelej inteligencii, ktorá sa zaoberá strojovým čítaním s porozumením) a Question Answer (QA je disciplína informatiky v oblasti získavania informácií). Napriek svojmu obrovskému úspechu stále majú limity na reprezentáciu kontext", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-15", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 15, + "text": "zaoberá strojovým čítaním s porozumením) a Question Answer (QA je disciplína informatiky v oblasti získavania informácií). Napriek svojmu obrovskému úspechu stále majú limity na reprezentáciu kontextových informácií v korpuse špecifickom pre danú oblasť, pretože sú trénované na všeobecnom korpuse (napr. Anglická Wikipedia). Napríklad Ubuntu Corpus, ktorý je jedným z najpoužívanejších korpusov pri výbere odpovedí, obsahuje množstvo terminológií a príručiek, ktoré sa vo všeobecnom korpuse zvyčajne nevyskytujú (napr. Apt-get, mkdir a grep). Pretože sa korpus zameriava predovšetkým na určitú doménu, existujúce diela majú obmedzenia pri porovnávaní kontextu dialógu a odozvy. Korpus konverzácií, ako napríklad Twitter a Reddits, sa navyše skladá hlavne z hovorových výrazov, ktoré sú zvyčajne gramaticky nesprávne. [1] [2]", + "text_length": 825 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-16", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 16, + "text": "## Metódy vyhodnotenia\n\nAko zistíme či je náš výstup zo systému SMT dobrý ? Na vyhodnotenie strojového prekladu bolo navrhnutých veľa rôznych metód. Zaujímavosťou je že o metódach pre hodnotenie strojového prekladu sa za v posledných rokoch píše viac ako o samotnom strojovom preklade. Vyhodnotenie človekom je vo všeobecnosti veľmi časovo a finančne náročné, pretože vyžaduje zaplatenie odborníka v daných dvoch jazykoch. Z toho dôvodu sa začali vyvíjať automatické metriky, ktoré úzko korelujú s ľudských úsudkom. Čím presnejšie tieto metriky budú tým lepšia bude naša výkonnosť v hodnotením strojového prekladu. Pri vývoji týchto metrík bolo dôležité použiť sady testovacích viet, pre ktoré už existovali ľudské preklady, napríklad z paralelného korpusu. Metódy automatického prekladu sú založené na čiastočnom zosúladení reťazcov medzi výstupným a referenčným prekladom (viz. Obrázok 2).\n\n|![](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/commit/c3bd7dca0c3305a736ddf42b88e1e35f3c59c9ec/pages/students/2016/patrik_pavlisin/tp20/2.png)| \n|:--:| \n|Obr 2. Príklad čiastočnej zhody reťazcov používaný vo väčšine metód hodnotenia.|\n\nJednou z metrík na hodnotenie je napríklad známy Levenshtein, známy", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-17", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 17, + "text": "dents/2016/patrik_pavlisin/tp20/2.png)| \n|:--:| \n|Obr 2. Príklad čiastočnej zhody reťazcov používaný vo väčšine metód hodnotenia.|\n\nJednou z metrík na hodnotenie je napríklad známy Levenshtein, známy tiež ako word error rate (WER), ten predstavuje počet vložení, odstránení a substitúcii potrebných na prevedenie výstupnej vety na vetu vstupnú. Táto metrika je však najmenej vhodná, pretože nerozpoznáva nové usporiadanie slov. Slovo, ktoré je správne preložené, ale na zlom mieste bude penalizované ako vymazanie (na výstupe) a vloženie (na správnom mieste). Preto je výhodnejšie použiť position-independent word error rate (PER), ktorá nepenalizuje poradie, pretože výstupné a referenčné vety považuje za neusporiadané. Za posledné roky je však najbežnejšou používanou metrikou BLEU, ktorá berie do úvahy jednoslovné zhody medzi výstupnou a referenčnou vetou ako aj zhody n-gramov. BLEU je zameraná na presnosť, čo znamená, že počet n-gramových zhôd považuje za zlomok počtu celkových n-gramov vo výstupe. Zlomok sa počíta osobitne pre každé n a berie sa geometrický priemer. Presnosť metriky BLEU je upravená tak, aby eliminovala opakovania, ktoré sa vyskytujú vo vetách.\n\nAj keď sa BLEU pokúša za", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-18", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 18, + "text": "ýstupe. Zlomok sa počíta osobitne pre každé n a berie sa geometrický priemer. Presnosť metriky BLEU je upravená tak, aby eliminovala opakovania, ktoré sa vyskytujú vo vetách.\n\nAj keď sa BLEU pokúša zachytiť povolené rozdiely v preklade, tak tento systém zachádza oveľa ďalej ako by mal. BLEU nekladie žiadne výslovné obmedzenia na hranicu, v ktorej sa vyskytujú zodpovedajúce n-gramy. Pre umožnenie variácie pri výbere slova sa preto v preklade metriky BLEU používajú viacnásobné preklady odkazov, ale taktiež kladie len veľmi málo obmedzení na to ako je možné čerpať gramové zhody z viacerých referenčných prekladov. BLEU je týmito spôsobmi obmedzené, umožňuje obrovské množstvo variácií, ďaleko nad rámec toho, čo by sa dalo považovať za prijateľnú variáciu v strojovom preklade. Ukázalo sa, že pre priemerný preklad hypotéz existuje viac ako milión možných variantov, z ktorých každý získal podobné skóre BLEU. Tvrdíme preto, že počet prekladov, ktoré majú rovnaké skóre, je taký veľký, že je nepravdepodobné, aby všetci z nich boli hodnotené ľudskými prekladateľmi rovnako kvalitne. Z toho vyplýva, že je možné dostať identické skóre po hodnotení metrikou BLEU, ktoré by ale ľudia hodnotili horši", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-19", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 19, + "text": "avdepodobné, aby všetci z nich boli hodnotené ľudskými prekladateľmi rovnako kvalitne. Z toho vyplýva, že je možné dostať identické skóre po hodnotení metrikou BLEU, ktoré by ale ľudia hodnotili horšie. Je preto tiež možné dosiahnuť vyššie skóre BLEU, bez toho, aby sa v skutočnosti zlepšila samotná kvalita strojového prekladu.\n\nNeschopnosť BLEU rozlišovať medzi náhodne generovanými variáciami prekladu naznačuje, že to v niektorých prípadoch nemusí korelovať s ľudskými úsudkami o kvalite prekladu. S pribúdajúcim počtom identického skóre klesá pravdepodobnosť, že by sa všetky z nich dali považovať za rovnako pravdepodobné. To zdôrazňuje skutočnosť, že BLEU je metrika na meranie hrubej kvality prekladu. K tomuto tvrdeniu prispieva aj niekoľko ďalších faktorov ako napríklad, že so synonymami a parafrázami sa zaobchádza iba vtedy ak sú v skupine viacerých referenčných odkazov. Dalej skóre slov sa počíta rovnako, takže v prípade chýbajúceho obsahového materiálu to neprináša žiadnu penalizáciu. Každá z týchto chýb prispieva k zvýšeniu zle preložených a nezrozumiteľných prekladov. Vzhľadom na to, že BLEU môže teoreticky priradiť rovnaké skóre prekladu dvom textom odlišnej kvality, je logic", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-20", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 20, + "text": "u. Každá z týchto chýb prispieva k zvýšeniu zle preložených a nezrozumiteľných prekladov. Vzhľadom na to, že BLEU môže teoreticky priradiť rovnaké skóre prekladu dvom textom odlišnej kvality, je logické, že vyššie skóre BLEU nemusí nevyhnutne znamenať skutočne zlepšenie kvality prekladu. [9]", + "text_length": 292 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-21", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 21, + "text": "## Zoznam použitej literatúri\n\n[1]. WANG T., LEE D., LEE CH. YANG K., OH D., LIM H.: _Domain Adaptive Training BERT for Response Selection._ [online]. [citované 01-08-2019].\n\n[2]. DEVLIN J., CHANG M., LEE K., TOUTANOVA K.: BERT: _Pre-training of Deep Bi-directional Transformers for Language Understanding._ [online]. [citované 24-05-2019].\n\n[3]. WANG X., LU Z., TU Z., LI H., XIONG D., ZHANG M.: _Neural Machine Translation Advised by Statistical Machine Translation._ [online]. [citované 30-12-2016].\n\n[4]. ZHANG A., LIPTON C. Z., LI M., SMOLA J. A.: _Dive into Deep Learning._ [online]. [citované 06-11-2020].\n\n[5]. O´SHEA K., NASH R.: _An Introduction to Convolutional Neural Networks._ [online]. [citované 02-12-2015].\n\n[6]. KALCHBERNNER N., GREFENSTETTE E., BLUNSOM P.: _A Convolutional Neural Network for Modelling Sentences__._ [online]. [citované 08-08-2014].\n\n[7]. ZAREMBA W., SUTSKEVER I., VINYALS O.: _Recurrent Neural Network Regularization_. [online]. [citované 19-02-2015].\n\n[8]. CHO K., MERRIENBOER vB., BAHDANAU D.: _On the Properties of Neural Machine Translation: Encoder–Decoder Approaches._ [online]. [citované 07-10-2014].\n\n[9]. CALLISON-BURCH C., OSBORNE M., KOEHN P.: _Re-ev", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/patrik_pavlisin/tp20/README.md::chunk-22", + "document_path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 22, + "text": "K., MERRIENBOER vB., BAHDANAU D.: _On the Properties of Neural Machine Translation: Encoder–Decoder Approaches._ [online]. [citované 07-10-2014].\n\n[9]. CALLISON-BURCH C., OSBORNE M., KOEHN P.: _Re-evaluating the Role of BLEU in Machine Translation Research__._ [online]. [citované 2006].\n\n[10]. LOPEZ A.: _A Survey of Statistical Machine Translation._ [online]. [citované 01-04-2007].", + "text_length": 385 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-0", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Tomáš Kuchárik\n(študent KPI)\n\nSúvisiace práce:\n\n- [Martin Jancura](/students/2017/martin_jancura)\n- [Patrik Pavlišin](/students/2016/patrik_pavlisin)\n- [Projekt SK QUAD](/topics/question)", + "text_length": 189 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-1", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Diplomová práca 2022\n\n[Repozitár s výsledkami](https://git.kemt.fei.tuke.sk/tk634rv/dp2022)\n\nNázov: Tvorba korpusu otázok a odpovedí v slovenskom jazyku pomocou strojového prekladu\n\nZadanie:\n\n1. Vypracujte prehľad jazykových mutácii overovacej množiny SQUAD a opíšte spôsob ich tvorby. \n2. Vypracujte prehľad aktuálnych systémov pre generovanie odpovede na otázku v prirodzenom jazyku. \n3. Navrhnite postup pre vytvorenie korpusu otázok a odpovedí v slovenskom jazyku pomocou strojového prekladu z anglického jazyka,\n4. Porovnajte strojovo preloženú verziu SQUAD s manuálne vytvorenou verziou.\n5. Porovnajte presnosť systému generovania odpovedí naučenom na strojovo preloženej verzie SQUAD s s manuálne vytvorenou verziou.\n\nStretnutie 21.2.2022\n\n- Urobený skript na preklad SQUAD pomocou google API.\n- Text nie je.\n\nÚlohy\n\n- Pridali možnosť na preklad pomocou európskeho prekladača etranslation. Transformujte celý squad do textového súboru so špeciálnymi značkami a nazad. \n- Vypracujte draft práce. Napíšte osnovu, napíšte teóriu, napíšte čo ste robili.", + "text_length": 1062 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-2", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Diplomový projekt 2 2021\n\nCieľom je vytvoriť strojovo preloženú verziu SQUAD a overiť ju na QA systém.\n\nSttetnutie 22.10.2021\n\nStav:\n\n- Začatý prieskum jazykových mutácií strojovo preloženého SQUAD - španielsky, taliansky, francúzsky a švédsky.\n- Začatý priestup prekladových API - napr. na google sa platí 20 $ za milion znakov.\n- Zaujala ma metód prekladu pomocou špeciálnych znakov. \n- Španielsky SQUAD má svoju štatistickú metódu zarovnania.\n- Možnosti pre preklad:\n - Google, Microsoft v rámci Free kreditu (asi ho je málo).\n - Zakúpiť kredit cez projekt.\n - Využiť \"nekomerčný\" projekt pre preklad, napr. [etranslation](https://ec.europa.eu/cefdigital/wiki/display/CEFDIGITAL/eTranslation).\n \n\nÚlohy:\n\n- Pokračujte v písomnom prieskume jazykových mutácií SQUAD.\n- Začnite pracovať na skripte na strojový preklad SQUAD. Jedna z možností je prepísať SQUAD do čisto textového formátu obohateného o špeciálne značky. Pripravte skript, ktorý prevedie SQUAD do čisto textového formátu obohateného o špeciálne značky. Vyskúšajte formát v dostupných prekladačoch. V prípade, že značky sú zachované, pripravte aj skript na spätnú konverziu preloženého výsledku do formátu SQUAD.\n\nStretnut", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-3", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "obohateného o špeciálne značky. Vyskúšajte formát v dostupných prekladačoch. V prípade, že značky sú zachované, pripravte aj skript na spätnú konverziu preloženého výsledku do formátu SQUAD.\n\nStretnutie 15.10.\n\nStav:\n- Pôvodné zadanie neaktuálne\n\nÚlohy:\n\n- Upraviť nové zadanie DP.\n- Urobiť písomný prieskum rôznych jazykových verzií overovacej množiny squad a spôsobov ich vytvorenia. Môžete začať v archíve HuggingFace Datasets.\n- Vybrať vhodný spôsob ako strojovo preložiť SQUAD. Zistiť aké sú možné problémy.\n- Zistiť ako funguje strojový preklad cez API.\n\nZásobník úloh:\n\n- [ ] Urobiť vyhodnotenie SQUAD na knižnici Hugging Face Transformers.", + "text_length": 647 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-4", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Diplomová práca 2021\n\nNázov: Tvorba korpusu otázok a odpovedí v slovenskom jazyku pomocou crowdsourcingu\n\nZadanie:\n\n1. Vypracujte prehľad metód vytvárania jazykových zdrojov pomocou crowsdourcingu.\n2. Vypracujte prehľad aktuálnych systémov pre generovanie odpovede na otázku v prirodzenom jazyku. \n3. Navrhnite postup pre vytvorenie korpusu otázok a odpovedí v slovenskom jazyku.\n4. Vytvorte webovú aplikáciu a pomocou nej anotujte dostatočné množstvo otázok a odpovedí.\n5. Navrhnite zlepšenia procesu anotácie otázok a odpovedí. \n\nCieľom práce je príprava nástrojov a budovanie tzv. \"Question Answering datasetov\"\n\n- Spolupráca na vedeckom projekte [Otázky a odpovede](/topics/question)\n- [Projektový repozitár](https://git.kemt.fei.tuke.sk/dano/annotation)", + "text_length": 761 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-5", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Diplomový projekt 2\n\nZásobník úloh:\n\n- Dá sa zistiť koľko času strávil anotátor pri vytváraní otázky? Ak sa to dá zistiť z DB schémy, tak by bolo dobré to zobraziť vo webovej aplikácii.\n\nVirtuálne stretnutie 27.11.2020\n\nStav:\n\n- Dorobené požiadavky z minulého stretnutia.\n- Aplikáciu je potrebné prepracovať, kvôli tomu že algoritmus zobrazovania nie je vhodný.\nSpracovanie databázy pri každej požiadavke je príliš pomalé (výpočtovo zložité). Je potrebné cachovanie v novej DB schéme.\n- Nová DB schéma (SQLalchemy) je rozrobená (vedúci).\n- Preštudované články SQUAD - poznámky sú na papieri.\n\nÚlohy na ďalšie stretnutie:\n\n- Vypracovať draft DP práce vo forme článku na cca 10 strán.\n- Preštudovať odbornú literatúru na tému \"Crowdsourcing language resources\" a napísať poznámky (čo ste sa dozvedeli z článku) a bibliografické odkazy. \n- Anotovať aspoň 100 otázok a zistite potrebný čas.\n\nVirtuálne stretnutie 27.10.2020\n\nStav:\n\n- Dorobená webová aplikácia podľa pokynov z minulého stretnutia, kódy sú na gite\n\nÚlohy na ďalšie stretnutie:\n\n- Urobiť konfiguračný systém - načítať konfiguráciu zo súboru (python-configuration?). Meno konfiguračného súboru by sa malo dať zmeniť cez premennú prostredi", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-6", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "sú na gite\n\nÚlohy na ďalšie stretnutie:\n\n- Urobiť konfiguračný systém - načítať konfiguráciu zo súboru (python-configuration?). Meno konfiguračného súboru by sa malo dať zmeniť cez premennú prostredia (getenv).\n- Dorobiť autentifikáciu pre anotátorov pre zobrazovanie výsledkov, aby anotátor videl iba svoje výsledky. Je to potrebné? Zatiaľ dorobiť iba pomocou e-mailu.\n- Dorobiť heslo na webovú aplikáciu\n- Dorobiť zobrazovanie zlých a dobrých anotácií pre každého anotátora.\n- Preštudovať odbornú literatúru na tému \"Crowdsourcing language resources\". Vyberte niekoľko odborných publikácií (scholar, scopus), napíšte bibliografický odkaz a čo ste sa z publikácii dozvedeli o vytváraní jazykových zdrojov. Aké iné korpusy boli touto metódou vytvorené? \n\nVirtuálne stretnutie 20.10.2020\n\nStav:\n\n- Vylepšený skript pre prípravu dát , mierna zmena rozhrania (duplicitná práca kvôli nedostatku v komunikácii).\n\nÚohy do ďalšieho stretnutia:\n\n- Dorobiť webovú aplikáciu pre zisťoovanie množstva anotovaných dát.\n- Odladiť chyby súvisiace s novou anotačnou schémou.\n- Zobraziť množstvo anotovaných dát\n- Zobraziť množstvo platných anotovaných dát.\n- Zobbraziť množstvo validovaných dát.\n- Otázky sa v rámc", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-7", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "ch dát.\n- Odladiť chyby súvisiace s novou anotačnou schémou.\n- Zobraziť množstvo anotovaných dát\n- Zobraziť množstvo platných anotovaných dát.\n- Zobbraziť množstvo validovaných dát.\n- Otázky sa v rámci jedného paragrafu nesmú opakovať. Každá otázka musí mať odpoveď. Každá otázka musí byť dlhšia ako 10 znakov alebo dlhšia ako 2 slová. Odpoveď musí mať aspoň jedno slovo. Otázka musí obsahovať slovenské slová. \n- Výsledky posielajte čím skôr do projektového repozitára, adresár database_app.\n\nStretnutie 25.9.2020\n\nUrobené:\n - validačné rozhranie.\n - rozdelenie vstupného formulára na 5 častí pre ľahšie parsovanie napísaných otázok.\n\nÚlohy na ďalšie stretnutie:\n- pripraviť rozhranie, kde sa anotuje práve jedna otázka naraz a ten istý paragraf sa zobrazí 5 krát.\n- stanoviť množinu metadát o anotovanej jednotke (názov článku, ktorý paragraf, poradie otázky?, kto to anotoval)\n- metadáta je potrebné doplniť do prípravných skriptov (ako JSON objekt s názvom \"meta\", príklad \"ner2/01_selectparagraphs.py\") do validačného aj otázkového rozhrania doplniť informácie o anotátorovi a o metadátach anotovanej jednotky.\n- skúsiť začať písať draft diplomovej práce a skúsiť to zverejniť na http://conf.un", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-8", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "hs.py\") do validačného aj otázkového rozhrania doplniť informácie o anotátorovi a o metadátach anotovanej jednotky.\n- skúsiť začať písať draft diplomovej práce a skúsiť to zverejniť na http://conf.uni-obuda.hu/sami2021/paper.html\n\nNávrhy na zlepšenie (pre vedúceho):\n\n- v priebehu 3. týždňa spustiť skúšobnú anotačnú dávku- možno s 2 rozhraniami aby sa vyskúšalo.\n- pripraviť inštanciu Postgres Databázy (pre vedúceho).\n- písať komentáre ku commitom a do zdrojákov.", + "text_length": 466 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-9", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "## Diplomový projekt 1\n\nÚlohy na semester:\n\n- Získať a parsovať dump slovenskej wikipédie z https://dumps.wikimedia.org/mirrors.html\n- Vybrať prvú množinu článkov\n- Nasadiť anotačnú aplikáciu - tvorbu otázky a vyznačenie odpovede.\n- Navrhnúť pracovný postup pre využitie modelu pri ďalšej anotácii\n- Možno: natrénovať model z anglických alebo slovenských dát.\n\nZásobník úloh:\n\n- Vytvorte skript pre transformáciu výsledkov anotácie odpovedí do formátu [SQUAD 2:0](https://rajpurkar.github.io/SQuAD-explorer/)\n- Oboznámte sa s relačnou databázovou schémou Prodigy.\n\nVirtuálne stretnutie 6.7.\n\n- Pridaný Bootstrap.js do rozhrania aplikácie\n- Vytvorený Dockerfile, vznikol konflikt verzíí (treba opraviť).\n\nÚloha: Zobraziť a validovať výsledky anotácie od anotátorov.\n\n- oddeliť validáciu od aplikácie..\n- Preštudovať \"Review\" alebo \"Diff\" rozhranie prodigy.\n- Zvážiť validáciu pomocou rovnakého alebo podobného receptu ako na anotáciu.\n- Zvážiť vytvorenie nového receptu pre validáciu. Paragraf, otázka, odpoveď, anotovala by sa korekcia?\n- Zvážiť modifikáciu \"answer receptu\" pre validáciu.\n- Modifikovať \"question\" recept na 5 vstupných polí. Pomôže to?\n- Vytvoriť východziu stránku pre anotátorov.", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-10", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": ", odpoveď, anotovala by sa korekcia?\n- Zvážiť modifikáciu \"answer receptu\" pre validáciu.\n- Modifikovať \"question\" recept na 5 vstupných polí. Pomôže to?\n- Vytvoriť východziu stránku pre anotátorov.\n\nVirtuálne stretnutie 26.6.\n\nVytvorená aplikácia na analýzu anotácií Prodigy.\n- Pohľad na otázky a odpovede\n- Pohľad na konkrétny dataset - analýza sessionid\n- Pohľad na anotátora - koľko anotoval v akom datasete \n\nTreba dorobiť:\n\n- Odovzdať cez GIT do repozitára annotation\n- Skrášliť\n- dorobiť Dockerfile\n- Pridať možnosť práce s ľubovoľnými datasetmi\n\nVirtuálne stretnutie 14.5.\n\nUrobené: modifikované skripty wikirank a getbestwiki,ly\n\nNová úloha: Vytvoriť skript pre analýzu DB schémy a zistenie kto anotoval koľko\n- naprv konzolový skript, potom web aplikácia napr. Flask, \n\nRevízia 16.4:2020:\n\n- Predbežné výstupy (wikipedia parser) v repozitári https://git.kemt.fei.tuke.sk/tk634rv/dp2021\n- Vytvorený prístup na server omega\n\nNové úlohy:\n\n- Oboznámte sa s obsahom [spoločného repozitára]( https://git.kemt.fei.tuke.sk/dano/annotation), stručná dokumentácia sa nachádza v súboroch README.md a v shell skriptoch.\n- Spustite si a vyskúšajte navrhnutú anotačnú schému pre vytváranie otázok a odpov", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-11", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "s://git.kemt.fei.tuke.sk/dano/annotation), stručná dokumentácia sa nachádza v súboroch README.md a v shell skriptoch.\n- Spustite si a vyskúšajte navrhnutú anotačnú schému pre vytváranie otázok a odpovedí.\n- Modifikujte skript wikirank.py a vyraďte z výpočtu stránky ktoré majú v názve číslo alebo dvojbodku. Výsledky PageRank uložte vo formáte JSONL\n- Vytvorte skript, ktorý vyberie stránky s najlepším PageRank a z nich vytvorí korpus vhodný na anotáciu otázok.\n- Dôsledne komunikujte Vaše výsledky alebo problémy na ktoré ste narazili.\n\nRevízia 9.4.2020:\n\nNové úlohy:\n\n- Nainštalujte si anotačnú aplikáciu https://git.kemt.fei.tuke.sk/dano/annotation\n- Pozrite si recepty v adresári \"question_answer\".\n- Podľa vzoru vytvorte korpus paragrafov zo slovenskej Wikipédie vhodných na anotovanie otázok.\n\nÚvodné stretnutie 6.3.2020.\n\nPorozmýšľať:\n\n- Ako vyberieme najlepšie články (PageRank?)\n- Ako premením článok z wikipedie na sadu úloh (task) pre Prodigy. \n\nVytvorený spoločný repozitár https://git.kemt.fei.tuke.sk/dano/annotation\n\nÚlohy na ďalšie stretnutie:\n\n- Získať a parsovať dump slovenskej wikipédie z https://dumps.wikimedia.org/mirrors.html.\n- Študovať odborné články na tému Question Answ", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2016/tomas_kucharik/README.md::chunk-12", + "document_path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "kemt.fei.tuke.sk/dano/annotation\n\nÚlohy na ďalšie stretnutie:\n\n- Získať a parsovať dump slovenskej wikipédie z https://dumps.wikimedia.org/mirrors.html.\n- Študovať odborné články na tému Question Answering\n- Oboznámiť sa s https://github.com/5hirish/adam_qas\n- Oboznámte sa s frameworkom Spacy a Prodigy.", + "text_length": 304 + }, + { + "chunk_id": "pages/students/2017/dmytro_ushatenko/README.md::chunk-0", + "document_path": "pages/students/2017/dmytro_ushatenko/README.md", + "title": "Dmytro Ushatenko", + "categories": [ + "bp2020" + ], + "tags": [ + "chatobot", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Dmytro Ushatenko", + "text_length": 18 + }, + { + "chunk_id": "pages/students/2017/dmytro_ushatenko/README.md::chunk-1", + "document_path": "pages/students/2017/dmytro_ushatenko/README.md", + "title": "Dmytro Ushatenko", + "categories": [ + "bp2020" + ], + "tags": [ + "chatobot", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalárska práca 2020\n\n- [Repozitár](https://git.kemt.fei.tuke.sk/du707zr/BAKALRSKA_PRACA)\n- Názov: Jednoduchý chatbot v jazyku Python,\n\nZadanie bakalárskej práce:\n\n1. Vypracujte prehľad metód vytvárania dialógových systémov\n2. Na základe zvolenej metódy implementujte jednoduchý dialógový systém ktorý bude informovať o možnostiach štúdia na katedre.\n3. Identifikujte miesta možného zlepšenia navrhnutého dialógového systému.\n\nCieľ: \n\nVytvorenie jednoduchého chatbota s použitím toolkitu RASA ktorý bude informovať o zvolenej téme,\nnapr. o predmetoch štúdia prvého ročníka programu PS na KEMT:\n\nPomôcka pre začínajúcich študentov:\n\n- Čo mám robiť?\n- Aké predmety budem študovať?\n- Ako skončím predmet? (potrebujem zápočet a skúšku)\n\n- [NLP](/topics/nlp)\n- [Python](/topics/python)\n- [pomenované entity](/topics/chatbot)\n\nÚlohy na tento semester:\n\n- Prejdite si tutoriál https://rasa.com/docs/rasa/user-guide/rasa-tutorial/\n- Pripravte jednoduchý dialógový systém\n- Pripravte \"návod na použitie\", kde zapíšete čo ste spravili v tutoriáli\n- Vylepšite Vašu rešerš, dajte dôraz na citovanie zdrojov a na jazykovú stránku.\n\nV druom semestri:\n\n- pripravíte si celé demo\n- dookončíte prácu", + "text_length": 1187 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-0", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Martin Jancura\n\n*Rok začiatku štúdia*: 2017", + "text_length": 46 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-1", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Diplomový projekt\n\n- [GIT repozitár](https://git.kemt.fei.tuke.sk/mj130zg/DP2023)\n- [DP Práca](https://opac.crzp.sk/?fn=detailBiblioForm&sid=E4E659F3575B0C5BCF0C726CCD36)\n\nNázov diplomovej práce: \n\nRozpoznávanie emócií v texte\n\nZadanie diplomovej práce:\n\n1. Vypracujte prehľad metód rozpoznávania sentimentu z textu.\n2. Vytvorte slovenskú overovaciu množinu pre rozpoznávanie sentimentu.\n3. Vyberte vhodný model pre rozpoznávanie sentimentu v slovenských textoch.\n4. Vyhodnoťte vybraný model pomocou vytvorenej množiny a navrhnite jeho zlepšenia.\n\nCiele:\n\n- Vedieť klasifikovať emocionálny náboj v texte pomocou neurónovej siete.\n\nCiele na semester:\n\n- Získať prehľad v problematike rozpoznávania emócií z textu\n- Vybrať dátovú množinu, vybrať vhodný klasifikátor, natrénovať model a vyhodnotiť výsledky.\n\nInformácie:\n\n- [Hate speech Project](/topics/hatespeech)\n- https://www.sciencedirect.com/topics/computer-science/emotion-detection\n\nStretnutie 10.1.2023\n\nStav:\n\n- Scraper je na GITe\n- Písomná časť je začatá.\n- Vyskúšaný SlovakBERT so sentiment classification\n- anotované množina topky, príliš veľa HATE.\n\nÚlohy:\n\n- Vypracovať prehľad datasetov\n- Treba anotovať inú množinu, kde budú aj pozit", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-2", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "časť je začatá.\n- Vyskúšaný SlovakBERT so sentiment classification\n- anotované množina topky, príliš veľa HATE.\n\nÚlohy:\n\n- Vypracovať prehľad datasetov\n- Treba anotovať inú množinu, kde budú aj pozitívne príspevky.\n- Vyhodnotiť P R F1\n- Pripraviť zero shot experiment s Slovak GPT2.. Dostupné na Huggingface Hub.\n- Výsledky experimentov dať do tabuľky\n- Pokračovať v písomnej práci.\n\nStretnutie 20.1.2023\n\nStav:\n\n- Vylepšený scraper, tak by zachytával jednotilivé príspevky, autora, text aj rating.\n- Teoretická časť nebola urobená.\n\nÚlohy:\n\n- Zdrojové kódy scrapera pridajte na GIT. \n- Vpracujte písomný prehľad datasetov pre slovenčinu a rozpoznávanie emócií https://github.com/slovak-nlp/resources.\n- Vypracujte prehľad neurónových metód na rozpoznávanie emócií z textu. bert, roberta, gpt. \n- Zistite, ako sa pomocou modelu GPT robí \"zero shot sentiment classification\".\n- Vyskúšajte slovenský model pre klasifikáciu sentimentu https://huggingface.co/kinit/slovakbert-sentiment-twitter.\n- Ručne anotujte vytvorenú databázu diskusných príspevkov z topky.sk\n- Urobte klasifikáciu príspevkov pomocou neurónového modelu a vyhodnoťte presnosť (accuracy, precision, recall).\n\nZásobník úloh:\n\n- Do scra", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-3", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "anotujte vytvorenú databázu diskusných príspevkov z topky.sk\n- Urobte klasifikáciu príspevkov pomocou neurónového modelu a vyhodnoťte presnosť (accuracy, precision, recall).\n\nZásobník úloh:\n\n- Do scrapera skúste doplniť zaznamenanie ID nadradeného príspevku. ID môže byť aj nejaký hash.\n- Urobte zero shot classification pomocou slovenského GPT .\n\nStretnutie 25.11.\n\nStav:\n\n- 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.\n\nÚlohy:\n\n- Zdrojové texty scrapera dajte do git repozitára.\n- Nainštalujte si balíček Anaconda a HF transformers.\n- 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. \n- 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.\n\nZásobník úloh:\n\n- Zo získaných slovenských dát vytvorte overovaciu", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-4", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "e 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.\n\nZásobník úloh:\n\n- Zo získaných slovenských dát vytvorte overovaciu množinu pre vybranýb model pre klasifikáciu sentimentu.\n- Pozrieť či existuje databáza.\n\nStretnutie 8.6.\n\nStav:\n\n- Vypracovaný tutoriál huggingface\n- Vytvorený jednoduchý scraper Beautifulsoup na Topky.sk\n- Rozpracovaný scraper Selenium\n\nÚlohy:\n\n- [-] Dať kódy na GIT - scraper (twitter, topky) aj tutorial\n- [ ] 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.\n\nStretnutie 20.5.2022\n\nMierny pokrok nastal len v oblasti Python.\n\nÚlohy:\n\n- Pokračovať v otvorených úlohách.\n- Chceme sa sústrediť na \"sledovanie medií\".\n- [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?\n- Aký emočný náboj je v príspevku? Cieľom môže byť detekcia nenávistného obsahu.\n\n11.3.2022\n\nNávrh na tému:\n\n- Sledovanie médií alebo sociálnych sietí. - blogy, noviny, disk", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-5", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "ieme zistiť o príspevkoch?\n- Aký emočný náboj je v príspevku? Cieľom môže byť detekcia nenávistného obsahu.\n\n11.3.2022\n\nNávrh na tému:\n\n- Sledovanie médií alebo sociálnych sietí. - blogy, noviny, diskusie, twitter.\n- Zistenie metainformácií o príspevkoch. \n- Spracovanie príspevku - identifikácia sentimentu, detekcia nenávistnej reči, určenie témy príspevku, lepšie vyhľadávanie v databáze príspevkov. Ktorý materiál sa týka určitej témy?\n\nNávrh na postup:\n\n1. Oboznámenie sa s problematikou.\n2. Zostavenie databázy príspevkov. Stiahnutie a predspracovanie.\n3. Spracovanie databázy - natrénovanie neurónovej siete, klasifikácia a vyhodnotenie.\n\nÚlohy:\n\n- [ ] 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.\n- [ ] 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.\n- [ ] Vyskúšajte tento [model](https://huggingface.co/nlptown/bert-base-multilingual-uncased-sentiment) pre klasifikáciu anglických textov. \n\nZásobník úloh:\n\n- [x] Pokračujte v štúdi", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-6", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "te krátku správu.\n- [ ] Vyskúšajte tento [model](https://huggingface.co/nlptown/bert-base-multilingual-uncased-sentiment) pre klasifikáciu anglických textov. \n\nZásobník úloh:\n\n- [x] Pokračujte v štúdiu Pythonu, Oboznámte sa s Twitter API a zistite ako získať nejaký príspevok na Twitteri.\n- [ ] Naučte sa pracovať s knižnicou BeautifulSoup a pripravte scraper na vybraný zdroj.\n\nStretnutie 4.3.2022\n\nNápady na tému diplomovej práce:\n\n- Strojový preklad pomocou neurónových sietí.\n- Rozpoznávanie reči pomocou transformerov - Hubert.\n- Rozpoznávanie nenávistnej reči pomocou transfomers. \n- Sledovanie medií - vytvorenie databázy a jej analýza.\n- Rozpoznávanie (klasifikácia) obrázkov pomocou neurónovej siete.\n\nÚlohy:\n\n- Porozmýšľajte nad každou hore uvedenou témou.\n- Porozmýšľajte nad témou čo by Vás bavila.\n- Pokračujte v štúdiu Pythonu.\n- Oboznámte sa s knižnicou HuggingFace Transformers alebo s knižnocou fairseq.", + "text_length": 921 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-7", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "## Bakalárska práca 2020\n\nNázov: Webová aplikácia pre demonštráciu strojového prekladu\n\n1. Vypracujte teoretický úvod do strojového prekladu. Vypracujte prehľad komerčných služieb pre automatický preklad.\n2. Podrobne vysvetlite zvolenú metódu strojového prekladu.\n3. Vytvorte demonštračnú webovú aplikáciu v Javascripte pomocou ktorej je možné vyskúšať viaceré služby pre strojový preklad.\n4. Navrhnite možné zlepšenia Vami vytvorenej aplikácie.\n\nZásobník úloh:\n\n- Zapisať človekom urobený preklad do databázy.\n- Vyrobiť deployment a zverejniť stránku s demom.\n- pripraviť modul s vlastným prekladom.\n- Vyhodnotiť preklad metódou BLEU\n\n[repozitár](https://git.kemt.fei.tuke.sk/mj130zg/BP2021)\n\nStretnutie 26.3\n\nStav:\n\n- Práca na písomnej časti, kontrola na budúce.\n\nÚlohy:\n\n- Pripravte deployment dema so strojovým prekladom\n\nStretnutie 13.3.\n\nStav:\n- práca na písomnej časti (neurónový strojový preklad).\n- odladená chyba axios cors na translation.tukekemt.xyz.\n\nÚlohy:\n- Písať.\n\nStretnutie 5.3.\n\nStav:\n\n- Nastal progres v písomnej časti, pokračujte ďalej\n\nStretnutie 26.2.\n\nStav:\n\n- Prerobený úvod práce podľa nového zadania.\n- Práca na vlastnom backende (vedúci). Backend je prístupný na https://t", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-8", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "av:\n\n- Nastal progres v písomnej časti, pokračujte ďalej\n\nStretnutie 26.2.\n\nStav:\n\n- Prerobený úvod práce podľa nového zadania.\n- Práca na vlastnom backende (vedúci). Backend je prístupný na https://translation.tukekemt.xyz/ende/. \n\nÚlohy:\n\n- Pokračujte v písomnej práci.\n- Backend momentálne nefunguje. Keď bude fungovať, pracujte na napojení na frontend.", + "text_length": 356 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-9", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "## Bakalársky projekt 2020\n\nKonzultácie sa budú konať osobne alebo cez [Teams](https://teams.microsoft.com/l/team/19%3aa8596a401a3842e5b91ac918a2a0afb1%40thread.tacv2/conversations?groupId=4fc0c627-d424-4587-b73a-2e47509862e9&tenantId=1c9f27ef-fee6-45f4-9a64-255a8c8e25a5) minimálne raz za dva týždne, menej ako 6 konzultácií za semester je dôvodom pre zníženie hodnotenia semester je dôvodom pre zníženie hodnotenia alebo neudelenie zápočtu. Odporúčaný čas konzultácie je piatok.\n\nMožné backendy:\n\n- https://opennmt.net/OpenNMT/installation/\n- FairSeq \n- [Dokumentácia k OpenNMT-py REST servru](https://forum.opennmt.net/t/simple-opennmt-py-rest-server/1392)\n- [Zdrojové kódy k REST Servru](https://github.com/OpenNMT/OpenNMT-py/blob/master/onmt/bin/server.py|", + "text_length": 761 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-10", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "### Poznámka vedúceho 2.2\n\nInštalácia OpenNMT-py na servri idoc:\n\nOpenNMT-py vyžaduje verziu Pytorch presne 1.6.0.\n\nCUDA 11 na idoc nefunguje, lebo je tam príliš starý nvidia driver (420).\n\n```\nconda create -n openmnt\nconda activate opennmt\nconda install pytorch=1.6.0 torchvision torchaudio cudatoolkit=9.2 -c pytorch\npip install OpenNMT-py\n```\n\n[Jednoduchý návod na trénovanie](https://opennmt.net/OpenNMT-py/quickstart.html).", + "text_length": 428 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-11", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "### Stretnutie 29.1.2021\n\nStav:\n\n- Práca na prezentácii.\n- Dohoda na zadaní.\n\nÚlohy:\n\n- Dorobiť REST API pomocou nmt-wizard-docker - pre vedúceho.", + "text_length": 146 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-12", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "### Stretnutie 26.1.2021\n\nStav:\n\n- Práca na textovej časti\n- Práca na prezentácii\n- Urobený tutoriál OpenNMP-py, natrénovaný model na preklad z angličtiny do nemčiny.\n\nÚlohy:\n\n- Pracovať na teoretickej časti - doplňte aj o metódach vyhodnotenia BLEU\n- Dokončiť prezentáciu\n- Spojiť webovú aplikáciu s vlastným rest API.\n- Pozrieť si výstupy práce P. [Pavlišin](/students/2016/patrik_pavlisin)", + "text_length": 392 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-13", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "### stretnutie 18.12.2020:\n\nStav: \n\n- inštalácia OpenNMT-py: zlyhala proavdepodobne kvôli konfigurácii CUDA\n- práca na písomnej časti pokračuje\n- kompletne prerobené kódy pre preklad (frontend aj backend) pomocou Microsoft a IBM. Aplikácia používa Express.JS\n- kódy sú dostupné na https://git.kemt.fei.tuke.sk/mj130zg/BP2021", + "text_length": 325 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-14", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "### Virtuálne stretnutie 4.12.2020:\n\nStav:\n\n- Inštalácia OpenNMT-py. Tutoriál zatiaľ nefunguje, pravdepodobne kvôli chybne nainštalovanej knižnici numpy.\n\nÚlohy na ďalšie stretnutie:\n\n- Vypracujte písomný prehľad metód strojového prekladu pomocou neurónových sietí. Prehľad by mal obsahovať odkazy na aktuálnu odbornú literatúru - knihy a články.\nV prehľade vysvetlite aj čo je to architektúra seq2seq, (endkóder-dekóder). Nájdite odborné články o opennmt, prečítajte si ich a napíšte čo ste sa dozvedeli.\n- (vedúci) urobiť deployment openmnt-py (flask,wsgi).\n- Pokračujte v tutoriáli openmt-py. Pre inštaláciu závislostí (pytorch, numpy, cuda) použite systém Anaconda.", + "text_length": 669 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-15", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 15, + "text": "### Virtuálne stretnutie 6.11.2020:\n\nStav: \n\nPráca na písomnej časti.\n\nÚlohy do ďalšieho stretnutia:\n\n- Pohľadať takú knižnicu, kde vieme využiť vlastný preklad. Skúste si nainštalovať OpenNMT.\n- Prejdite si tutoriál https://github.com/OpenNMT/OpenNMT-py#quickstart alebo podobný.\n- Navrhnite ako prepojiť frontend a backend.", + "text_length": 325 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-16", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 16, + "text": "### Virtuálne stretnutie 23.10.2020:\n\nStav:\n\n- Urobený frontend pre komunikáciu s Microsof Translation API, využíva Axios a Vanilla Javascriupt\n\nÚlohy do ďalšieho stretnutia:\n\n- Pohľadať takú knižnicu, kde vieme využiť vlastný preklad. Skúste si nainštalovať OpenNMT.\n- Zistiť čo znamená politika CORS.\n- Pokračujte v písaní práce, pridajte časť o strojovom preklade.. Prečítajte si články https://opennmt.net/OpenNMT/references/ a urobte si poznámky. Do poznámky dajte bibliografický odkaz a čo ste sa dozvedeli z článku.", + "text_length": 523 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-17", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 17, + "text": "### Virtuálne stretnutie 16.10:\n\nStav:\n\n- Začiatok práce na textovej časti, napísaný úvod\n- Vytvorený repozitár https://git.kemt.fei.tuke.sk/mj130zg/BP2021\n- Vytvorené poznámky ku existujúcemu JS api\n- Na ďalšie práce použiť IBM Watson na strane frontendu, ale pripraviť sa na vlastný backend.\n\nDo ďalšieho stretnutia:\n\n- Prezentovať frontend s IBM Watson alebo Microsoft, kódy dajte do repozitára.\n- Pohľadať takú knižnicu, kde vieme využiť vlastný preklad.\n- Zistiť čo znamená politika CORS.\n- Pokračujte v písaní práce, pridajte časť o strojovom preklade.", + "text_length": 559 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-18", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 18, + "text": "### Virtuálne stretnutie 9.10:\n\nDo ďalšieho stretnutia:\n\n- Pripraviť si poznámky o tom čo ste sa dozvedeli o NLP na odovzdanie na kontrolu.\n- Vytvoriť repozitár na GITe kde sa budú dávať zdrojové kódy. (adresár backend, adresár frontend, súbor README).\n- Do súboru README napíšte možné API ktoré ste našli aj s krátkym opisom.\n\n- V prvej fáze môžete využiť existujúce Cloud API.\n\nStav:\n\n- rozhodli sme sa pre demonštráciu strojového prekladu.\n- našli ste niekoľko API na strojový preklad (platené, alebo obmedzené).", + "text_length": 515 + }, + { + "chunk_id": "pages/students/2017/martin_jancura/README.md::chunk-19", + "document_path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 19, + "text": "### Stretnutie 30.9.\n\nNápady na úlohu NLP:\n\n- demo [Spacy](https://github.com/explosion/spacy-services)\n- strojový preklad pomocou [machine-translator](https://www.npmjs.com/package/machine-translator)\n- chatbot napr. [chatbot](https://github.com/ddsky/chatbot)\n- Niektorú knižnicu z [blogu](https://www.kommunicate.io/blog/nlp-libraries-node-javascript/)\n- vyhľadajte natural language processing for javascript.\n\n- Na ďalšom stretnutí si vyberieme konkrétnu tému NLP.\n- Pripraviť si poznámky o tom čo ste sa dozvedeli o NLP.", + "text_length": 526 + }, + { + "chunk_id": "pages/students/2017/stanislav_matsunych/README.md::chunk-0", + "document_path": "pages/students/2017/stanislav_matsunych/README.md", + "title": "Stanislav Matsunych", + "categories": [ + "bp2020" + ], + "tags": [ + "nn", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Stanislav Matsunych", + "text_length": 21 + }, + { + "chunk_id": "pages/students/2017/stanislav_matsunych/README.md::chunk-1", + "document_path": "pages/students/2017/stanislav_matsunych/README.md", + "title": "Stanislav Matsunych", + "categories": [ + "bp2020" + ], + "tags": [ + "nn", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalárska práca 2019\n\nGenerovanie a modelovanie prirodzeného jazyka pomocou rekurentných neurónových sietí\n\n- [Zdrojové texty BP](https://git.kemt.fei.tuke.sk/sm892rt/BC_Matsunych_2020_Final)\n- [CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=60B4917E3BAC23F10C7DAB27651C&seo=CRZP-detail-kniha)", + "text_length": 302 + }, + { + "chunk_id": "pages/students/2017/stanislav_matsunych/README.md::chunk-2", + "document_path": "pages/students/2017/stanislav_matsunych/README.md", + "title": "Stanislav Matsunych", + "categories": [ + "bp2020" + ], + "tags": [ + "nn", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "### Návrh na zadanie\n\n1. Vypracovať prehľad metód generovania prirodzeného jazyka pomocou rekurentných neurónových sietí\n2. Vyberte si vhodnú metódu na zostavenie modelu prirodzeného jazyka a natrénujte model na vhodných dátach.\n3. Vytvorte aplikáciu, ktorá bude demonštrovať generovanie prirodzeného jazyka\n4. Vyhodnotte vytvorený model a navrhnite jeho zlepšenia.", + "text_length": 365 + }, + { + "chunk_id": "pages/students/2017/stanislav_matsunych/README.md::chunk-3", + "document_path": "pages/students/2017/stanislav_matsunych/README.md", + "title": "Stanislav Matsunych", + "categories": [ + "bp2020" + ], + "tags": [ + "nn", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Stretnutia\n\nRevízia 14.5.:\n\n- obhajoba v septembri\n\n19.2.2020: \n\n- Naštudovať perpelxitu, porozmýšľať ako to implementovať, perplexita= cross entropis\n- začať pracovať na teoretickej časti (vytvárať finálnu podobu).", + "text_length": 218 + }, + { + "chunk_id": "pages/students/2017/stanislav_matsunych/README.md::chunk-4", + "document_path": "pages/students/2017/stanislav_matsunych/README.md", + "title": "Stanislav Matsunych", + "categories": [ + "bp2020" + ], + "tags": [ + "nn", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Bakalársky projekt 2019\n\nPozrieť si \n\n- https://medium.com/@shivambansal36/language-modelling-text-generation-using-lstms-deep-learning-for-nlp-ed36b224b275\n- https://towardsdatascience.com/character-level-language-model-1439f5dd87fe\n\nPrejsť si tutoriál \n\n- http://karpathy.github.io/2015/05/21/rnn-effectiveness/\n- https://machinelearningmastery.com/develop-character-based-neural-language-model-keras/\n\nCielom je: \n\nVytvoriť jazykový model slovenského jazyka na báze rekurentných neurónových sietí\n\n- V prvom semestri bude výstup:\n- jednoduchý program na vytvorenie LM a generovanie znakov z neho\n\n- Vypracujte rešerš na tému \"Rekurentné neurónové siete na tvorbu jazykových modelov \" (LSTM, GRU) cca 10 strán\n\nMožné trénovacie texty: [Zlatý fond sme](https://zlatyfond.sme.sk/)\n\nMožný framework pre web demo: [Flask](https://www.fullstackpython.com/flask.html)\n\nTutoriál https://realpython.com/flask-by-example-part-1-project-setup/\n\n 502 mkdir flask\n 503 ls -l\n 504 cd flask/\n 505 ls -l\n 506 python -m virtualenv\n 507 python -m virtualenv ./venv\n 508 ls -l\n 509 source ./venv/bin/activate\n 510 ls -l\n 511 pip install flask\n 512", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2017/stanislav_matsunych/README.md::chunk-5", + "document_path": "pages/students/2017/stanislav_matsunych/README.md", + "title": "Stanislav Matsunych", + "categories": [ + "bp2020" + ], + "tags": [ + "nn", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "/\n 505 ls -l\n 506 python -m virtualenv\n 507 python -m virtualenv ./venv\n 508 ls -l\n 509 source ./venv/bin/activate\n 510 ls -l\n 511 pip install flask\n 512 ls -l\n 513 ls -l ./venv/lib/python3.8/site-packages/\n 514 python\n 515 pip install ipython\n 516 ipython\n 517 ls -l\n 518 vim ./mojawebka.py\n 519 history", + "text_length": 394 + }, + { + "chunk_id": "pages/students/2017/than_trung_thanh/README.md::chunk-0", + "document_path": "pages/students/2017/than_trung_thanh/README.md", + "title": "Than Trung Thanh", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "named entity", + "ne", + "spacy", + "prodigy", + "anotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Than Trung Thanh", + "text_length": 18 + }, + { + "chunk_id": "pages/students/2017/than_trung_thanh/README.md::chunk-1", + "document_path": "pages/students/2017/than_trung_thanh/README.md", + "title": "Than Trung Thanh", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "named entity", + "ne", + "spacy", + "prodigy", + "anotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalársky projekt 2020\n\nRozpoznávanie pomenovaných entít v slovenskom jazyku pomocou nástrojov Spacy a Prodigy\n\n- Tvorba korpusu a modelu pomocou nástrojov Spacy a Prodigy\n- Práca na internom projekte [rozpoznávanie pomenovaných entít](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics/named-entity).\n- Využite [existujúci model](https://git.kemt.fei.tuke.sk/dano/spacy-skmodel).\n\nPodobná práca:\n\n- [Jakub Maruniak](/students/2016/jakub_maruniak)\n\nCiel je práce je zlepšiť presnosť rozpoznávania pomenovaných entít pre slovenský jazyk.\nPresnosť je možné zlepšiť pomocou nových trénovacích dát alebo pomocou zlepšenia procesu trénovania.\n\nPredbežné zadanie:\n\n- Vypracujte teoretický úvod, kde vysvetlíte čo je to rozpoznávanie pomenovaných entít a akými najnovšími metódami sa robí. \n- Vysvetlite, ako pracuje klasifikátor pre rozpoznávanie pomenovaných entít v knižnici Spacy . \n- Pomocou nástroja Prodigy anotujte dostatočné množstvo textu pre výskyt pomenovaných entít.\n- Pomocou nástroja Spacy vytvorte a vyhodnoťte model pre rozpoznávanie pomenovaných entít v slovenčine. Zistite, ako Vami anotované dáta zlepšili presnosť vytvoreného modelu.\n- Navrhnite spôsoby pre ďal", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2017/than_trung_thanh/README.md::chunk-2", + "document_path": "pages/students/2017/than_trung_thanh/README.md", + "title": "Than Trung Thanh", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "named entity", + "ne", + "spacy", + "prodigy", + "anotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "Pomocou nástroja Spacy vytvorte a vyhodnoťte model pre rozpoznávanie pomenovaných entít v slovenčine. Zistite, ako Vami anotované dáta zlepšili presnosť vytvoreného modelu.\n- Navrhnite spôsoby pre ďalšie zlepšenie presnosti modelu pre rozpoznávanie pomenovaných entít.\n\nStretnutie 8.2.2020:\n\nStav:\n- Anotovaných 1000 anotácií (3 dni).\n- Prečítané články a spracovaný rešerš na 3,5 strany.\n\nDo ďalšieho stretnutia:\n\n- Pracovať na zlepšení písomného prejavu.\n- Nájsť odborné články z dokumentácie Spacy, ku každému napísať bibliografický odkaz a čo ste sa dozvedeli do prehľadu.\n- Prepracovať rešerš kompletne - odstrániť sémantické aj gramatické chyby.\n- Prečítajte si a napíšte poznámky z: Li, Jing, et al. \"A survey on deep learning for named entity recognition.\" IEEE Transactions on Knowledge and Data Engineering (2020).\n\nStretnutie 28.1.2020:\n\nStav: \n- Preštudované Spacy a Prodigy.\n- Pokus o spracovanie XML dump Wikipédia.\n- Prečítané blogy.\n- Urobená prezentácia.\n- Natrénovaný model.\n\nÚlohy:\n\n- Začať pracovať na písomnej časti. Prečítajte si niekoľko nových odborných článkov a napíšte čo ste sa dozvedeli na minimálne 4 strany.\n- Schmitt, Xavier, et al. \"A replicable comparison study of N", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2017/than_trung_thanh/README.md::chunk-3", + "document_path": "pages/students/2017/than_trung_thanh/README.md", + "title": "Than Trung Thanh", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "named entity", + "ne", + "spacy", + "prodigy", + "anotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "- Začať pracovať na písomnej časti. Prečítajte si niekoľko nových odborných článkov a napíšte čo ste sa dozvedeli na minimálne 4 strany.\n- Schmitt, Xavier, et al. \"A replicable comparison study of NER software: StanfordNLP, NLTK, OpenNLP, SpaCy, Gate.\" 2019 Sixth International Conference on Social Networks Analysis, Management and Security (SNAMS). IEEE, 2019.\n- Partalidou, Eleni, et al. \"Design and implementation of an open source Greek POS Tagger and Entity Recognizer using spaCy.\" 2019 IEEE/WIC/ACM International Conference on Web Intelligence (WI). IEEE, 2019.\n- Fernández-Pedauye, Julio, et al. \"Enhancing the spaCy Named Entity Recognizer for Crowdsensing.\" Intelligent Environments 2020: Workshop Proceedings of the 16th International Conference on Intelligent Environments. Vol. 28. IOS Press, 2020.\n- Nájdite si sami ďalšie články.\n\nOsobné stretnutie 23.9.2020\n\nÚlohy do ďalšieho stretnutia:\n\n- preštudujte si, čo je to rozpoznávanie pomenovaných entít a ako sa robí, prečítajte si aj odborné články a knihy. Informácie získate zadaním hesla \"named entity recognition\".\n- Nainštalujte si prostredie Anaconda.\n- Nainštalujte si a spustite trénovanie [existujúceho modelu](https://git.k", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2017/than_trung_thanh/README.md::chunk-4", + "document_path": "pages/students/2017/than_trung_thanh/README.md", + "title": "Than Trung Thanh", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "named entity", + "ne", + "spacy", + "prodigy", + "anotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "odborné články a knihy. Informácie získate zadaním hesla \"named entity recognition\".\n- Nainštalujte si prostredie Anaconda.\n- Nainštalujte si a spustite trénovanie [existujúceho modelu](https://git.kemt.fei.tuke.sk/dano/spacy-skmodel).\n- preštudujte materiály:\n - https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics/nlp\n - https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics/python\n - https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics/prodigy\n\nDalšie stretnutie odporúčam o 2 týždne.\n\nKonzultácie sa budú konakť minimálne raz za dva týždne, menej ako 6 konzutácií za semester je dôvodom pre zníženie hodnotenia semester je dôvodom pre zníženie hodnotenia alebo neudelenie zápočtu.alebo neudelenie zápočtu.", + "text_length": 776 + }, + { + "chunk_id": "pages/students/2018/NaN1name_buday/README.md::chunk-0", + "document_path": "pages/students/2018/NaN1name_buday/README.md", + "title": "Martin NaN1", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "nemo", + "bert", + "gpt" + ], + "author": "Anton Buday", + "published": true, + "chunk_index": 0, + "text": "# Nan1_name \n\nRok začiatku štúdia: 2018\n\nPodmienkou pre získanie zápočtu je účasť na konzultácii min. raz za 2 týždne. Menej ako 6 konzultácií za semester je dôvod pre zníženie hodnotenia alebo neudelenie zápočtu.\nKomunikácia je možná aj cez MS Teams, Cisco Webex...\nKonzultačné hodiny sú podľa dohody, preferujem chat na MS Teams.", + "text_length": 331 + }, + { + "chunk_id": "pages/students/2018/NaN1name_buday/README.md::chunk-1", + "document_path": "pages/students/2018/NaN1name_buday/README.md", + "title": "Martin NaN1", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "nemo", + "bert", + "gpt" + ], + "author": "Anton Buday", + "published": true, + "chunk_index": 1, + "text": "## Bakalársky projekt 2020\n\nNázov: Využitie najnovších nástrojov v rámci prirodzeného spracovania reči\n\nCieľ:\n- Pokúsiť sa použiť slovenské dáta na spracovanie prirodzeného jazyka v prostredí zvoleného nástroja\n\nNávrh na zadanie:\n\n1. Vyberte a naštudujte najnovšie a najvýznamnejšie metódy spracovania prirodzeného jazyka.\n2. Vypracujte základnú teóriu k zvolenej metóde a nástroju na spracovanie textu.\n3. Vytvorte demonštračnú webovú aplikáciu pomocou ktorej je možné vyskúšať zvolenú metódu.\n4. Navrhnite možné zlepšenia Vašej práce z hľadiska výberu architektúry, nástroja alebo metódy spracovania textu.\n\nZásobník úloh:\n- Vytvorte si repozitár na GITe, nazvite ho bp2021. Do neho budete dávať kódy a dokumentáciu, ktorú vytvoríte.\n\nVirtuálne stretnutie .\n\nStav:\n- prečítajte si niečo o NLP:\n - odporúčam zdroje ako arxiv, blogy z medium.com\n - https://colab.research.google.com/github/NVIDIA/NeMo/blob/main/tutorials/nlp/GLUE_Benchmark.ipynb#scrollTo=daYw_Xll2ZR9\n - https://colab.research.google.com/github/NVIDIA/NeMo/blob/main/tutorials/NeMo_voice_swap_app.ipynb#scrollTo=I9eIxAyKHREB\n - https://github.com/pytorch/fairseq/tree/master/examples/roberta\n - zisti", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/NaN1name_buday/README.md::chunk-2", + "document_path": "pages/students/2018/NaN1name_buday/README.md", + "title": "Martin NaN1", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "nemo", + "bert", + "gpt" + ], + "author": "Anton Buday", + "published": true, + "chunk_index": 2, + "text": "//colab.research.google.com/github/NVIDIA/NeMo/blob/main/tutorials/NeMo_voice_swap_app.ipynb#scrollTo=I9eIxAyKHREB\n - https://github.com/pytorch/fairseq/tree/master/examples/roberta\n - zistite čo je to NER, POS.\n - https://www.youtube.com/embed/wBgpMf_KQVw //NeMO, Jarvis\n - https://github.com/pytorch/fairseq/blob/master/examples/wav2vec/README.md\n\nÚlohy do ďalšieho stretnutia:\n-\n-\n\nStretnutie x.yy.2O20:\n\nNa štúdium:\n- \n-\n\nNa vypracovanie:\n\n- \n- \n\nNa zlepšenie:\n\n- Chceme vybrať metódu NLP ktorej sa budeme venovať.\n- chceme vybrať knižnicu alebo demo ktoré budeme prezentovať.", + "text_length": 604 + }, + { + "chunk_id": "pages/students/2018/adrian_remias/README.md::chunk-0", + "document_path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Adrián Remiáš\n\nRok začiatku štúdia: 2018", + "text_length": 42 + }, + { + "chunk_id": "pages/students/2018/adrian_remias/README.md::chunk-1", + "document_path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2024\n\nNávrh na zadamie:\n\n1. Vypracujte prehľad metód obnovy interpunkcie v slovenskom jazyku.\n2. Vypracujte prehľad metód jazykového modelovania pomocou neurónovej siete typu Transformer.\n3. Pripravte dátovú množinu pre trénovanie a vyhodnotenie neurónovej siete na úlohu dopĺňania a opravy interpunkcie.\n4. Vyberte viacero neurónových modelov, natrénujte ich na úlohu dopĺňania a opravy interpunkcie.\n5. Vyhodnoťte experimenty a vyberte najlepší model. \n\nCiele:\n\n- Natrénovanie modelu pre opravu iterpunkcie a jeho vyhodnotenie.\n- Výsledky by mali byť prezentovateľné vo vedeckom článku.\n\nStretnutie 3.1.2024\n\nStav:\n\n. Funguje zero shot metóda založená na dopňĺňaní mask tokenu.\n\nÚlohy:\n\n1. 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.\n2. 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", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2018/adrian_remias/README.md::chunk-2", + "document_path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": ". 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é.\n3. 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. \n4. Vyskúšajte viaceré experimenty s viacerými rôznymi BERT modelmi s podporou slovenčiny a výžsledky zapíšte do tabuľky.\n5. Skúste číselne vyhodnotiť aj Vašu \"zero shot\" metódu.\n- Pokračujte v písaní tectu práce.\n\nStretnutie 7.12.2023\n\nStav:\n\n- Vytvorený program na trénovanie neurónovej siete. Masked language modeling skript run_mlm.py. Roberta for Masked LM DataCollatorForLanguageModelling.\n- 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á. \n\nÚlohy:\n\n- 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/\n- O spôsobe vyh", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/adrian_remias/README.md::chunk-3", + "document_path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "abuľ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/\n- O spôsobe vyhodnotenia môžete napísať aj krátku podkapitolu.\n- Uvedte zdroje odkiaľ ste čerpali pri tvorbe.\n\n```\n Pôvodný text: Dnes je pekný deň .\n Opravený text Dnes , je pekný deň .\n\n . , ? ! x toto dáva sieť\n . 2 1 0 0 0 \n , \n ?\n !\n x 1 1\n očakávané hodnoty\n```\n\nZásobník úloh:\n\n- 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. \n- Podrobné {vysvetlenie](https://medium.com/@alexmriggio/bert-for-sequence-classification-from-scratch-code-and-theory-fb88053800fa).\n\nTakto by mala vyzerať trénovacia množina.\n\n```\nx x x . , x x .\nDnes je pekný den Povedala že ostane doma\n``` \n\n- Môžete využiť [skripty](https://github.com/huggingface/transformers/tree/main/examples/pytorch/token-classification). Tam je potrebn0 správ", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/adrian_remias/README.md::chunk-4", + "document_path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "x .\nDnes je pekný den Povedala že ostane doma\n``` \n\n- 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).\n\nStretnutie 23.11.2023\n\nStav: \n\n- Boli nainštalované softvéry na idoc podľa pokynov.\n- Śtúdium a kódovanie: problémy.\n\nÚlohy:\n\n- [ ] Podrobne sa oboznámte https://github.com/xashru/punctuation-restoration/tree/master . Prečítajte si\n č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.\n - Pohľadajte iný podobný repozitár.\n - 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. \n - Pokračujte v štúdiu jazyka Python. https://diveintopython3.net/\n - Pokračujte v písaní práce podľa pokynov vyššie.\n\nStret", + "text_length": 1197 + }, + { + "chunk_id": "pages/students/2018/adrian_remias/README.md::chunk-5", + "document_path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "ri. Oboznámte sa so zdrojovými kódmi a skúste pochopiť ktorá časť robí čo. \n - Pokračujte v štúdiu jazyka Python. https://diveintopython3.net/\n - Pokračujte v písaní práce podľa pokynov vyššie.\n\nStretnutie 26.10.2023\n\nStav:\n\n- Štúdium a poznámky podľa pokynov. Vyskúšaná Anaconda a transformers.\n\nÚlohy:\n\n- [ ] Pokračovať v štúdiu a v poznámkach. To je teoretická časť DP.\n- [-] 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.\n- [x] Inštalujte Pytorch s podporou CUDA 10.1 alebo 10.2 z https://pytorch.org/get-started/previous-versions/\n- [x] Na idoc nainštalujte transformers, pytorch s CUDA 10.1 pomocou Anaconda.\n- 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/. \nNa ľavej strane bude text bez interpunkcie. Na pravej strane bude len interpunkcia.\n- [ ] Natrénujte neurónovú sieť. Množinu rozdeľte na trénovaciu a testovaciu časť. Začneme s modelom SlovakBERT.\n\nZásobník úloh:\n\n- Vyskúšajte iný model ako je Slovak BERT.\n- Pripravte dáta na \"čiastočné\" dopňlňani", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/adrian_remias/README.md::chunk-6", + "document_path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "te neurónovú sieť. Množinu rozdeľte na trénovaciu a testovaciu časť. Začneme s modelom SlovakBERT.\n\nZásobník úloh:\n\n- Vyskúšajte iný model ako je Slovak BERT.\n- 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ť.\n\nStretnutie 5.10.2023\n\nStav:\n\n- Urobená bakalárska práca na tému \"Analýza textu z pohľadu forenznej lingvistiky\".\n\nÚlohy:\n\n- [x] Nainštalujte si balíček Anaconda. Pomocou neho si nainštalujete knižnicu Pytorch s podporou CUDA.\n\n \n conda install pytorch torchvision torchaudio pytorch-cuda=11.8 -c pytorch -c nvidia\n pip install transformers\n\n- [x] Oboznámte sa s frameworkom HuggingFace [Transformers](https://huggingface.co/docs/transformers/index). Vypracujte si viacero úvodných tutoriálov.\n- [x] Podrobne sa oboznámte s úlohou [token classificaton](https://huggingface.co/docs/transformers/tasks/token_classification).\n- [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.\n- [x] Prečítajte si \"Attention is all you need\" https://arxiv.", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/adrian_remias/README.md::chunk-7", + "document_path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "xplore.ieee.org/abstract/document/9089903 Comparison of Recurrent Neural Networks for Slovak Punctuation Restoration, urobte si poznámky.\n- [x] Prečítajte si \"Attention is all you need\" https://arxiv.org/abs/1706.03762, urobte si poznámky.\n- [-] 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.\n\nZásobník úloh:\n\n- Vyberte množinu slovenských textov a upravte ju do podoby vhodnej na trénovanie neurónovej siete. Natrénujte neurónovú sieť.\n- 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.", + "text_length": 676 + }, + { + "chunk_id": "pages/students/2018/david_ilas/README.md::chunk-0", + "document_path": "pages/students/2018/david_ilas/README.md", + "title": "Dávid Iľaš", + "categories": [ + "dp2023" + ], + "tags": [ + "nlp", + "emotion" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "Rok začiatku štúdia: 2018\n\nUž neštuduje tento študijný program.", + "text_length": 63 + }, + { + "chunk_id": "pages/students/2018/david_ilas/README.md::chunk-1", + "document_path": "pages/students/2018/david_ilas/README.md", + "title": "Dávid Iľaš", + "categories": [ + "dp2023" + ], + "tags": [ + "nlp", + "emotion" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Diplomová práca 2023\n\nTéma: Rozpoznávanie emócií z textu.\n\nTODO: Návrh na zadanie diplomovej práce.\n\nCiele:\n\n- Vedieť klasifikovať emocionálny náboj v texte pomocou neurónovej siete.\n\nCiele na semester:\n\n- Získať prehľad v problematike rozpoznávania emócií z textu\n- Vybrať dátovú množinu, vybrať vhodný klasifikátor, natrénovať model a vyhodnotiť výsledky.\n\nInformácie:\n\n- [Hate speech Project](/topics/hatespeech)\n- https://www.sciencedirect.com/topics/computer-science/emotion-detection\n\nStretnutie 18.2.\n\nÚlohy:\n\n- 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.\n- Heslá na vyhľadávanie: eomotion recognition, transfer learning, deep learning, emotion classification, emotion detection\n- Na vyhľadávanie článkov použite google scholar alebo scopus.com.\n- Nainštalujte si balíček Anaconda\n- Prejdite si niekoľko Python tutoriálov, odporúčam online knihu Dive Into Python 3\n\nZásobník úloh:\n\n- Oboznámte sa s knižnicou Huggingface Transformers", + "text_length": 1033 + }, + { + "chunk_id": "pages/students/2018/david_omasta/README.md::chunk-0", + "document_path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "Začiatok štúdia: 2018\n\nSúvisiace stránky:\n\n- [Question Answering](/topics/question) - interný projekt\n- Jozef Olekšák\n- Matej Čarňanský (BERT)\n- Ondrej Megela", + "text_length": 158 + }, + { + "chunk_id": "pages/students/2018/david_omasta/README.md::chunk-1", + "document_path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2024\n\nVedúci: Daniel Hládek\n\nNávrh na názov:\n\nGeneratívne modely pre automatické odpovede na otázky v slovenskom jazyku\n\nNávrh na zadanie DP:\n\n- Vypracujte prehľad najnovších generatívnych neurónových jazykových modelov.\n- Vypracujte prehľad slovenských a multilinguálnych generatívnych jazykových modelov.\n- Navrhnite experiment, pri ktorom bude model generovať odpovede na zadané otázky v kontexte.\n- Analyzujte výsledky experimentu vhodným spôsobom a identifikujte možné zlepšenia.\n\nCiele:\n\n- Pripraviť demo.\n- Pripravť vedecký článok z DP.\n\nStretnutie 9.2.2024\n\nStav:\n\n- Dotrénovaný mt5-small na poľský jazyk.\n- Práca na texte\n- Urobené demo streamlit a Dockerfile. \n\nÚlohy:\n\n- Zdrojáky dajte na GIT\n- Pridajte výsledky do tabuľky\n- Pokračujte v práci na texte.\n- Pridajte experimenty s modelom https://huggingface.co/google/umt5-small na slovenský, anglický aj poľský jazyk.\n\nStretnutie 8.12.\n\nStav:\n\n- Urobený Dockerfile a compose.\n- Pridaný experiment s mT5.\n- Práca na teoretickej časti.\n- Vyskúšaná LLAMA na idoc aj mt5-base ale nejde kvôli GPU\n\nÚlohy:\n\n- Pokračujte v písomnej práci. Výsledky experiemntov opíšte a dajte do tabuliek.\n- Dokončite DEMOZ\n- pre porovnanie, vy", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/david_omasta/README.md::chunk-2", + "document_path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "tickej časti.\n- Vyskúšaná LLAMA na idoc aj mt5-base ale nejde kvôli GPU\n\nÚlohy:\n\n- Pokračujte v písomnej práci. Výsledky experiemntov opíšte a dajte do tabuliek.\n- Dokončite DEMOZ\n- pre porovnanie, vyskúšajte dotrénovať mt5 na dátovej sade pre iný jazyk. Angličtina - squad, Poľský jazyk clarin-pl/poqaud .\n\nZásobník úloh:\n\n- Keď bude k dispozícii, vyskúšajte nový slovenský t5 model.\n\nStretnutie 10.11\n\nStav:\n\n- DP je rozpísaná. Existuje draft.\n- Vypracovaný experiment s Slovak t5 small\n\nÚlohy:\n\n- [-] Opravte DP podľa pokynov\n- [x] Pridajte experiment s mt5 small .https://huggingface.co/google/mt5-small\n- [-] Pripravte demo na nasadenie. Zmente Windows kontajner na Linux.\n- [x] zdrojáky dajte na kemt GIT\n\nZásobník úloh:\n\n- [-] Skúste generovanie odpovedí s modelom LLAMA alebo podobným. \n- [x] Skúste generovanie odpovedí s \"base\" modelmi na školskom servri.\n\nStretnutie 6.10\n\nStav:\n\n- Práca na Dockerfile so streamlit\n\nÚlohy:\n\n- Pozrieť a pracovať na minulých otvorených úlohách.\n- Pripraviť draft na prečítanie.\n\nZásobník úloh:\n\n- Vyskúšať aj iné generatívne modely a pripraviť z nich experimenty.\n- Pripraviť a vyskúšať aj iné dátové množiny.", + "text_length": 1152 + }, + { + "chunk_id": "pages/students/2018/david_omasta/README.md::chunk-3", + "document_path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "# Diplomová práca 2023\n\nTéma: Dotrénovanie slovenského generatívneho jazykového modelu.\n\nVedúci: Ján Staš\n\nNávrh na názov:\n\nGeneratívne modely slovenského jazyka\n\nNávrh na zadanie DP:\n\n- Vypracujte prehľad najnovších generatívnych neurónových jazykových modelov.\n- Vypracujte prehľad slovenských a multilinguálnych generatívnych jazykových modelov.\n- Navrhnite experiment, pri ktorom bude model generovať odpovede na zadané otázky a kontext.\n- Analyzujte výsledky experimentu vhodným spôsobom a identifikujte možné zlepšenia.\n\nCiele na zimný semester:\n\nPraktické:\n\n- Rozbehajte proces dotrénovania jazykových modelov pomocou knižnice Huggingface Transformers\n- Vyberte alebo vytvorte vhodnú dátovú množinu ktorá bude obsahovať slovenské dialógu.\n- Vyskúšajte slovenský generatívny model GPT a dotrénujte ho pre použitie v dialógovom systéme.\n- Vytvorte demonštračnú aplikáciu.\n\nTeoretické:\n\n- Vypracujte prehľad najnovších generatívnych neurónových jazykových modelov (cca 20 strán).\n- Napíšte návod na inštaláciu a návod na použitie skriptov pre dotrénovanie (cca 5 strán).\n\nStretnutie 25.4.\n\nStav:\n\n- Napísaný draft práce\n- Pripravené demo s generovaním otázok pomocou t5, huggingface, streamlit, f", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/david_omasta/README.md::chunk-4", + "document_path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "na inštaláciu a návod na použitie skriptov pre dotrénovanie (cca 5 strán).\n\nStretnutie 25.4.\n\nStav:\n\n- Napísaný draft práce\n- Pripravené demo s generovaním otázok pomocou t5, huggingface, streamlit, fastapi.\n- Git je momentálne na https://git.kpi.fei.tuke.sk/do867bc\n\nÚlohy:\n\n- Pracovať na textovej časti podľa poznámok - zlepšiť text, štruktúru a úpravu.\n- Vytvoriť repozitár na git.kemt.fei.tuke.sk a dajte tam zdrojáky \n- 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.\n- Skontrolujte výsledky ROUGE, vyzerajú podozrivo.\n\nZásobník úloh:\n\n- Vytvorte Dockerfile\n\nStretnutie 24.2.2023\n\nStav:\n\n- Rozbehaný notebook na dotrénovanie slovenského t5 na úlohu generatívneho question answering.\n\nÚlohy:\n\n- [x] Dajte notebook na GIT\n- [x] Vyhodnnotte presnosť generovania odpovede pomocou P-R-F1 pre celú dev množinu.\n- [-] 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.\n- [x] Zopakujte experiment pre model mt5-small, mt5-base. Výsledky dajte do tabuľky.\n\nStretnutie 24.11\n\nStav:", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2018/david_omasta/README.md::chunk-5", + "document_path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "ký QA dataset. Slovne opíšte experiment. Aký postup ste použili, aké dáta, aké modely.\n- [x] Zopakujte experiment pre model mt5-small, mt5-base. Výsledky dajte do tabuľky.\n\nStretnutie 24.11\n\nStav:\n\n- nainštalované prostredie na idoc, spustený hf skript run_generation.py \n- prečítané články.\n\nÚlohy:\n\n- [-] písomne vysvetlite ako funguje neurónová sieť typu Transformer . Uveďte odkazy na odborné články.\n- [ ] 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.\n- 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\n- Pozrite si tento tutoriál https://towardsdatascience.com/fine-tune-a-non-english-gpt-2-model-with-huggingface-9acc2dc7635b\n- Pozrite si toto demo https://huggingface.co/blog/few-shot-learning-gpt-neo-and-inference-api\n- Vytvorte si git repozitár do ktoréhu budete ukladať Vaše skripty.\n- Vyskúšajte slovenský GPT model https://huggingface.co/Milos/slovak-gpt-j-162M (je m", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/david_omasta/README.md::chunk-6", + "document_path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "og/few-shot-learning-gpt-neo-and-inference-api\n- Vytvorte si git repozitár do ktoréhu budete ukladať Vaše skripty.\n- Vyskúšajte slovenský GPT model https://huggingface.co/Milos/slovak-gpt-j-162M (je malý, stredný, veľký)\n\nStretnutie 14.10.\n\nStav:\n\n- Na vlastnom počítači rozbehané Anaconda, Pytorch a CUDA.\n- Prečítané články.\n\nÚlohy:\n\n- Pokračovať.\n\nStretnutie 7.10.\n\nStav:\n\n- Obznámený s Google Colab. Vyskúšané tutoriály BERT text classification, \n\nÚlohy:\n\n- [-] Prečítajte si ako funguje neurónová sieť typu Transformer a [ ] písomne to vysvetlite. Uveďte odkazy na odborné články.\n- [ ] 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.\n- [x] Nainštalujte si prostredie Anaconda, knižnicu PyTorch s podporou CUDA a knižnicu HF transformers. Použite server idoc.\n- [x] Vyskúšajte tento skript: https://github.com/huggingface/transformers/tree/main/examples/pytorch/text-generation.\n\nZásobník úloh:\n\n- Prečítajte si ako funguje neurónová sieť typu GPT a písomne to vysvetlite, Uveďte odkazy na odborné články.\n- Vyskúšajte tento tutoriál https://towardsdatascience.com/fine-tune-a-non-", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/david_omasta/README.md::chunk-7", + "document_path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "ásobník úloh:\n\n- Prečítajte si ako funguje neurónová sieť typu GPT a písomne to vysvetlite, Uveďte odkazy na odborné články.\n- Vyskúšajte tento tutoriál https://towardsdatascience.com/fine-tune-a-non-english-gpt-2-model-with-huggingface-9acc2dc7635b\n- Pozrite si toto demo https://huggingface.co/blog/few-shot-learning-gpt-neo-and-inference-api\n- Vytvorte si git repozitár do ktoréhu budete ukladať Vaše skripty.\n- Vyskúšajte slovenský GPT model https://huggingface.co/Milos/slovak-gpt-j-162M (je malý, stredný, veľký)", + "text_length": 518 + }, + { + "chunk_id": "pages/students/2018/martin_wencel/README.md::chunk-0", + "document_path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Martin Wencel \n\nRok začiatku štúdia: 2018\n\nPodmienkou pre získanie zápočtu je účasť na konzultácii min. raz za 2 týždne. Menej ako 6 konzultácií za semester je dôvod pre zníženie hodnotenia alebo neudelenie zápočtu.\nKomunikácia je možná aj cez [MS Teams](https://teams.microsoft.com/l/team/19%3aa8596a401a3842e5b91ac918a2a0afb1%40thread.tacv2/conversations?groupId=4fc0c627-d424-4587-b73a-2e47509862e9&tenantId=1c9f27ef-fee6-45f4-9a64-255a8c8e25a5).\nKonzultačné hodiny sú v piatok 9:20-14:00.", + "text_length": 494 + }, + { + "chunk_id": "pages/students/2018/martin_wencel/README.md::chunk-1", + "document_path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalárska práca 2020\n\nNázov: Demonštrácia spracovania slovenského prirodzeného jazyka pomocou knižnice Spacy\n\n- [Demonštračná aplikácia pre Spacy](https://spacy.tukekemt.xyz)\n- [Bakalárska práca](https://opac.crzp.sk/?fn=detailBiblioForm&sid=CF9E62B1F4156FE3B22E0B84D7C8)\n\nNávrh na zadanie:\n\n1. Vypracujte teoretický úvod do spracovania prirodzeného slovenského jazyka. Vysvetlite, čo to je parsing, morfologická analýza a rozpoznávanie pomenovaných entít a akými metódami sa vykonávajú.\n1. Podrobne vysvetlite, ako pracuje parsing, morfologická analýza a rozpoznávanie pomenovaných entít v knižnici Spacy.\n1. Vytvorte demonštračnú webovú aplikáciu pomocou ktorej je možné vyskúšať spracovanie slovenského aj anglického jazyka.\n1. Navrhnite možné zlepšenia Vami vytvorenej aplikácie.\n\n- [Repo s výsledkami](https://git.kemt.fei.tuke.sk/mw223on/bp2020)\n- [Preprecované repo](https://git.kemt.fei.tuke.sk/KEMT/bc_wencel2021)\n\nZásobník úloh:\n- Vymyslite a doplňte REST API pre služby knižnice Spacy. Cieľ je vedieť využiť Spacy pomocou curl, alebo pythonu cez HTTP na spracovane textových súborov.\n- Vymyslieť ako spracovať väčšie textové súbory pomocou REST API alebo podobného? \n- Urobiť deployme", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/martin_wencel/README.md::chunk-2", + "document_path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "Cieľ je vedieť využiť Spacy pomocou curl, alebo pythonu cez HTTP na spracovane textových súborov.\n- Vymyslieť ako spracovať väčšie textové súbory pomocou REST API alebo podobného? \n- Urobiť deployment s demom\n\nStretnutie 26.3.\n\nStav:\n\n- Práca na písomnej časti.\n\nStretnutie 12.3.\n\nStav:\n\n- Riešenie deploymentu. V základdnom modeli chýbajú priečinky tagger a parser, je potrebné modifikovať skript pre zostavenie slovenského modelu v repozitári spacy-skmodel.\n- Práca na písomnej časti\n\nÚlohy:\n\n- Písať.\n\nStretnutie 26.2.\n\nStav: \n\n- Dokončená a fungujúca aplikácia\n- Písomná časť je rozpracovaná vo forme útržkovitých poznámok a nadpisov sekcií.\n\nÚlohy:\n\n- vytvoriť súvislý text.\n- V texte uviesť odkazy na odbornú literatúru.", + "text_length": 727 + }, + { + "chunk_id": "pages/students/2018/martin_wencel/README.md::chunk-3", + "document_path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Bakalársky projekt 2020\n\nCieľ:\n- Vytvoriť demonštráciu spracovania slovenského jazyka pomocou knižnice spacy\n\nVýstupy:\n\n- Aplikácia vie robiť pomocou spacy tokenizácia, morfologická analýza, parsing a named entity recognition pre slovenčinu a angličtinu.\n- [Zdrojové kódy](https://git.kemt.fei.tuke.sk/mw223on/bp2020/)\n\nZásobník úloh:\n- Vymyslite a doplňte REST API pre služby knižnice Spacy. Cieľ je vedieť využiť Spacy pomocou curl, alebo pythonu cez HTTP na spracovane textových súborov.\n- Vymyslieť ako spracovať väčšie textové súbory pomocou REST API alebo podobného? \n\nStretnutie 2.2.:\n\n- Práca na frontende\n- Dorobená slovenčina - prerobené spacy explain. Vysvetľuje tagy.\n- Urobené rozhranie na spracovanie súborov.\n\nDo ďalšieho stretnutia:\n\n- Skompletizovať a vykonať deployment.\n\nVirtuálne stretnutie 15.12.:\n\nStav:\n\n- Pripravený Docker deployment.\n- Aplikácia funguje pre anglický jazyk.\n- Práca na písomnej časti\n\nDo ďalšieho stretnutia:\n\n- Dorobiť slovenčinu\n- Zlepšiť dizajn\n\nVirtuálne stretnutie 27.11.:\n\nStav:\n\n- Aplikácia prerobená do Flask-u. [Zdrojové kódy](https://git.kemt.fei.tuke.sk/mw223on/bp2020/src/branch/master) sú na Gite.\n\nÚlohy na ďalšie stretnutie:\n- Pokračovať n", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/martin_wencel/README.md::chunk-4", + "document_path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "álne stretnutie 27.11.:\n\nStav:\n\n- Aplikácia prerobená do Flask-u. [Zdrojové kódy](https://git.kemt.fei.tuke.sk/mw223on/bp2020/src/branch/master) sú na Gite.\n\nÚlohy na ďalšie stretnutie:\n- Pokračovať na práci na aplikácii.\n- Pripraviť deployment. Vytvoriť Python balíček (setup.py, requirements.txt, MANIFEST.in). \n- Pripraviť Dockerfile. Môžete použiť obraz tiangolo/meinheld-gunicorn-flask:python3.7\n- Pokračovať v písaní.\n\nVirtuálne stretnutie 20.11.:\n\nStav:\n- práca na písomnej časti\n- komplet prerobený frontend (css a html) a backend (hug).\n\nÚlohy na ďalšie stretnutie:\n- dať kódy na GIT.\n- prepísať frontend a backend do Flask,\n\nVirtuálne stretnutie 30.10.:\n\nStav:\n\n- Modifikovaná existujúca aplikácia \"spacy-streamlit\", zdrojové kóódy sú na GITe podľa pokynov z minulého stretnutia.\n- Obsahuje aj formulár, neobsahuje REST API\n\nÚlohy do ďalšieho stretnutia:\n\n- Pokračujte v písaní. Prečítajte si odborné články na tému \"dependency parsing\" a vypracujte poznámky čo ste sa dozvedeli. Poznačte si zdroj.\n- Pokkračujte v práci na demonštračnej webovej aplikácii.\n\nVirtuálne stretnutie 19.10.:\n\nStav: \n\n- Vypracované a odovzdané poznámky k bakalárskej práci, obsahujú výpisy z literatúry.\n- Vytvor", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/martin_wencel/README.md::chunk-5", + "document_path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "i zdroj.\n- Pokkračujte v práci na demonštračnej webovej aplikácii.\n\nVirtuálne stretnutie 19.10.:\n\nStav: \n\n- Vypracované a odovzdané poznámky k bakalárskej práci, obsahujú výpisy z literatúry.\n- Vytvorený repozitár. https://git.kemt.fei.tuke.sk/mw223on/bp2020\n- Nainštalovaný a spustený slovenský Spacy model.\n- Nainštalované Spacy REST Api https://github.com/explosion/spacy-services\n- Vyskúšané demo Display so slovenským modelom\n\nÚlohy na ďalšie stretnutie:\n\n- Pripravte webovú aplikáciu ktorá bude prezentovať rozpoznávanie závislostí a pomenovaných entít v slovenskom jayzyku. Mala by sa skladať z frontentu a backendu.\n- zapíšte potrebné Python balíčky do súboru \"requirements.txt\"\n- Vytvorte skript na inštaláciu aplikácie pomocou pip.\n- Vytvorte skript pre spustenie backendu aj frontendu. Výsledky dajte do repozitára.\n- Vytvorte návrh na frontend (HTML + CSS).\n- Pozrite na zdrojové kódy Spacy a zistite, čo presne robí príkaz display.serve\n- Vysledky dajte do repozitára.\n\nVirtuálne stretnutie 9.10.\n\nStav:\n- nainštalovaná anaconda, docker aj linux, spacy, latex\n- prečítané niečo o NLP (Speech and Language Processing, Jurafsky and Martin). Blogy a záverečné práce.\n- vypracované poznámky", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2018/martin_wencel/README.md::chunk-6", + "document_path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "tie 9.10.\n\nStav:\n- nainštalovaná anaconda, docker aj linux, spacy, latex\n- prečítané niečo o NLP (Speech and Language Processing, Jurafsky and Martin). Blogy a záverečné práce.\n- vypracované poznámky\n\nÚlohy do ďalšieho stretnutia:\n- odovzdať vypracované poznámky do Moodlu.\n- nainštalujte a spustite slovenský [spacy model](https://git.kemt.fei.tuke.sk/dano/spacy-skmodel)\n- Pozrite si , nainštalujte a spustite https://github.com/explosion/spacy-services\n- Skúste to upraviť tak, aby displacy využíval slovenský model\n- Vyskúšajte komunikovať so servrom pomocou CURL\n- študujte jazyk Python a web framework hug\n\nStretnutie 1.10.2O20:\n\nNa štúdium:\n- https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics\n- https://student.kemt.fei.tuke.sk/predmety/zct\n- Dive into Python 3\n\nNa vypracovanie:\n\n- Prečítajte si čo je to \"natural language processing\" a urobte si poznámky. Do poznámok si zapíšte čo ste sa dozvedeli a zdroj.\n- Nainštalujte si prostredie Anaconda\n- Nainštalujte si Docker\n- Skúste rozbehať demo z https://github.com/jgontrum/spacy-api-docker \n\nNa zlepšenie:\n\n- Chceme vybrať metódu NLP ktorej sa budeme venovať.\n- chceme vybrať knižnicu alebo demo ktoré budeme prezentov", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/martin_wencel/README.md::chunk-7", + "document_path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "r\n- Skúste rozbehať demo z https://github.com/jgontrum/spacy-api-docker \n\nNa zlepšenie:\n\n- Chceme vybrať metódu NLP ktorej sa budeme venovať.\n- chceme vybrať knižnicu alebo demo ktoré budeme prezentovať.", + "text_length": 203 + }, + { + "chunk_id": "pages/students/2018/oleh_bilykh/README.md::chunk-0", + "document_path": "pages/students/2018/oleh_bilykh/README.md", + "title": "Oleh Bilykh", + "categories": [ + "bp2021" + ], + "tags": [ + "question-answer", + "drqa", + "qa", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Oleh Bilykh\n\n*Začiatok štúdia: 2018*\n\nSúvisiace stránky:\n\n- [Ongrej Megela](/students/2018/bilykh) - RoBERTa\n- [Lukáš Pokrývka](/students/2016/pokryvka) - paralelné trénovanie\n- [Question Answering](/topics/question) - interný projekt\n- Matej Čarňanský (BERT)", + "text_length": 261 + }, + { + "chunk_id": "pages/students/2018/oleh_bilykh/README.md::chunk-1", + "document_path": "pages/students/2018/oleh_bilykh/README.md", + "title": "Oleh Bilykh", + "categories": [ + "bp2021" + ], + "tags": [ + "question-answer", + "drqa", + "qa", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalárska práca 2021\n\nTéma:\n\nAutomatické generovanie odpovedí na otázky v prirodzenom jazyku pomocou neurónových sietí.\n\nNávrh na zadanie BP:\n\n- Vypracujte teoretický prehľad metód automatického generovania odpovede na otázky v prirodzenom jazyku.\n- Zvoľte vhodný existujúci systém a pripravte ho na použitie.\n- Navrhnite, vykonajte a vyhodnoťte experimenty s generovaním odpovede na otázky v prirodzenom jazyku.\n- Navrhnite možné zlepšenia systému pre generovanie odpovede.\n\nStretnutie 19.3.\n\nStav:\n\n- Podarilo sa natrénovať SQUAD model pre DrQA.\n- Podarilo sa spustiť skript pre vyhodnotenie.\n- Webová aplikácia je funkčná.\n- Písomná časť je rozporacovaná.", + "text_length": 662 + }, + { + "chunk_id": "pages/students/2018/oleh_bilykh/README.md::chunk-2", + "document_path": "pages/students/2018/oleh_bilykh/README.md", + "title": "Oleh Bilykh", + "categories": [ + "bp2021" + ], + "tags": [ + "question-answer", + "drqa", + "qa", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Bakalársky projekt 2020\n\nZásobník úloh:\n\n- Nainštalovať a natrénovať systém DrQA s databázou SquAD.\n- Natrénujte vlastný model.\n- Vyhodnnotte natrénovaný model.\n- Pripravte jednoduché demo ako webovú aplikáciu (doplňujúca úloha).\n\nKonzultácie sa budú konakť minimálne raz za dva týždne, menej ako 6 konzultácií za semester je dôvodom pre zníženie hodnotenia alebo neudelenie zápočtu.\n\nStretnutie 2.2.2021\n\nStav:\n\n- Nainštalovaný a funkčný systém DrQA na servri tesla - konzola aj web aplikácia.\n- Použitý je existujúci model.\n- Dorobená prezentácia.\n\nDo ďalšieho stretnutia:\n\n- Pracujte na písomnej časti - prezentujte na ďalšom stretnutí.\n- Vytvorte repozitár na GITe a dajte tam návod na inštaláciu DrQA.\n- Zistite ako sa robí vyhodnotenie a vyhodnotte existujúci model na databáze SQAD.\n- Prejdite si https://github.com/facebookresearch/DrQA/blob/master/scripts/reader/README.md a urobte zápis vykonaných krokov.\n- Vytvorte skript pre spustenie webovej aplikácie a pridajte ho na git.\n\nE-mail 17.12.2020:\n\n- Na IDOC nainštalovaný Pytorch 1.0, spustenie ide na GPU, ale nastala chyba \n`OSError: [Errno 12] Cannot allocate memory`.\n- Vytvorený prístup na tesla, kde sa nachádza viac pamäte.\n\nStre", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/oleh_bilykh/README.md::chunk-3", + "document_path": "pages/students/2018/oleh_bilykh/README.md", + "title": "Oleh Bilykh", + "categories": [ + "bp2021" + ], + "tags": [ + "question-answer", + "drqa", + "qa", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "7.12.2020:\n\n- Na IDOC nainštalovaný Pytorch 1.0, spustenie ide na GPU, ale nastala chyba \n`OSError: [Errno 12] Cannot allocate memory`.\n- Vytvorený prístup na tesla, kde sa nachádza viac pamäte.\n\nStretnutie: 3.12.2020\n\nStav:\n\n- Riešenie technického problému so spustením, pravdepodobne treba použiť staršiu verziu Pytorch 1.0. Na CPU na idoc to nejde, načíta model ale nevypíše výsledky.\n\nStretnutie 20.11.2020\n\nStav:\n\n- Technický problém s inštaláciou: https://github.com/facebookresearch/DrQA\n- Vytvorený prístup na idoc\n- Práca na písomnej časti.\n\nÚlohy do ďalšieho stretnutia:\n\n- skúsiť nainštalovať DrQA na Linuxe.\n- anotovať aspoň 100 otázok podľa: https://zp.kemt.fei.tuke.sk/topics/question/navod\n- zapíšte si postup pre úspešnú inštaláciou\n- Prebehnite tutoriál DrQA\n- Pokračujte v písaní - urobte si poznámky z článku \"Reading {Wikipedia} to Answer Open-Domain Questions\" o DrQA.\n\nStretnutie: 13.11.2020\n\nStav:\n\n- Nainštalovaná Anaconda a Jupyter notebook, nič viac.\n\nÚlohy na ďalšie stretnutie:\n\n- Dobehnúť zameškané.\n\nStretnutie: 12.10.2020\n\nÚlohy na ďalšie stretnutie:\n\n- Vypracujte poznámky z toho čo ste sa dozvedeli o systémoch pre generovanie odpovedí.\n - definujte úlohu\n - p", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/oleh_bilykh/README.md::chunk-4", + "document_path": "pages/students/2018/oleh_bilykh/README.md", + "title": "Oleh Bilykh", + "categories": [ + "bp2021" + ], + "tags": [ + "question-answer", + "drqa", + "qa", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "nutie:\n\n- Dobehnúť zameškané.\n\nStretnutie: 12.10.2020\n\nÚlohy na ďalšie stretnutie:\n\n- Vypracujte poznámky z toho čo ste sa dozvedeli o systémoch pre generovanie odpovedí.\n - definujte úlohu\n - predstavte existujúce implementácie. Aké metódy využívajú? Uveďte aj odkazy na odborné články.\n - predstavte možné trénovacie množiny \n- Z literatúry zistite, akým spôsobom sa vyhodnocuje systém pre generovanie odpovedí.\n- Vyskúšajte si nainštalovať systém DrQA a vyskúšajte ho s existujúcim modelom.\n - odporúčam použiť virtuálne prostredie Python (virtualenv) alebo systém Anaconda.\n- Prejdite si tutoriál https://github.com/facebookresearch/DrQA\n\nStav:\n\n- Oboznámenie sa s úlohou.\n\nStretnutie 25.9.2020\n\nÚlohy na ďalšie stretnutie:\n\n- Oboznámte sa s https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics/question\n - čo je SQuaD\n - prečítajte si články\n - Pozrite si existujúce implementácie, jednu z nich si vyberiete.", + "text_length": 953 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-0", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Ondrej Megela \n\nZačiatok štúdia: 2018\n\nSúvisiace stránky:\n\n- [Oleh Bilykh](/students/2018/bilykh) - question answering\n- [Lukáš Pokrývka](/students/2016/pokryvka) - paralelné trénovanie\n- [Question Answering](/topics/question) - interný projekt\n- Matej Čarňanský (BERT)\n\nPozrieť toto: \n\nhttps://paperswithcode.com/task/text-generation?page=3", + "text_length": 343 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-1", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2023\n\nhttps://opac.crzp.sk/?fn=detailBiblioForm&sid=E4E659F3575B0C5BCF0F726CCD36\n\nNazov:\n\nAutomatické generovanie otázok v slovenskom jazyku\n\n1. Vypracujte prehľad generatívnych jazykových modelov.\n2. Vypracujte prehľad vyhodnocovacích metrík pre generatívne modely.\n3. Navrhnite a vykonajte viaceré experimenty pre úlohu generovania otázok.\n4. Vyhodnoťte experimenty vhodnou metrikou a navrhnite zlepšenia modelu generovania otázok.\n\nSúvisiace práce:\n\n- Dávid Omasta\n\nCieľ: Využiť slovenský generatívny model na tvorbu databázy otázok a odpovedí.\n\nhttps://git.kemt.fei.tuke.sk/om385wg/DP\n\nStretnutie 24.2.2023\n\nStav:\n\n- 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.\n\nÚlohy:\n\n- Na vyhodnotenie použiť sémantický model. POdľa modelu vytvoriť dvojice - generovaná veta a referencia.\n- Na vyhodnotneie použiť \"Answerability\" - QA model s thresholdom.\n- Pracovať na diplomovej práci - písať prehľad - metódy, metriky vyhodnotenia, datasety.\n- Do DP pripraviť experiment", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-2", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "a a referencia.\n- Na vyhodnotneie použiť \"Answerability\" - QA model s thresholdom.\n- Pracovať na diplomovej práci - písať prehľad - metódy, metriky vyhodnotenia, datasety.\n- Do DP pripraviť experiment s vyhodnotením.\n\nZásobník úloh:\n- Priradiť vgenerované vety ku referencii na základe sémantickej podobnosti.\n- Priamo merať sémantickú pokdobnosť vygenerovaných viet a referenciíá.\n- Použiť operátor max, mean alebo kl-diveregencia, cross-entropy?\n\nStretnutie 23.1.2023\n\nStav:\n\n- Modifikovany ssk quad dataset, tak aby aby sa dal vykonat finetuning t5. Vstupom je kontext a viacero otazok.\n- Dotrenovany t5 model na generovanie otazok. Vyzera ze ide.\n- Vyskusany few shot learning pomocou prikladov zo sk quad.\n\nUlohy:\n\n- Pokracovat v pisani podla aktualizovaneho zadania\n- 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.\n\nZasobnik uloh:\n\n- Navrhnut eperimenty pre DP/clanbok.\n- porovnat slovensky a anglicky model. Mozno aj iny jazyk.\n- vyskusat, ako pomahaju generovane toazky pri QA.\n- rucne vyhodnotit vygenerovane otazky.\n\nStretnutie 22.12.", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-3", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "nut eperimenty pre DP/clanbok.\n- porovnat slovensky a anglicky model. Mozno aj iny jazyk.\n- vyskusat, ako pomahaju generovane toazky pri QA.\n- rucne vyhodnotit vygenerovane otazky.\n\nStretnutie 22.12.\n\n- Slovenský GPT model nefunguje na few shot generovanie otázok.\n- Existuje slovenský T5 model small. Ten funguje.\n- Vyskúšaný finetuning na colabe na slovenský T5 model na anglických dátach, zbehol za 1.5. hodiny.\n- 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.\n- QA evaluátor a generátor https://github.com/AMontgomerie/question_generator\n- Finetuning slovenského T5 https://colab.research.google.com/drive/1z-Zl2hftMrFXabYfmz8o9YZpgYx6sGeW?usp=sharing\n\nÚlohy:\n\n- Pracovať na textovej časti DP a.k.a. ATKS\n- Skontrolovať a na ďalšom stretnutí updatovať zadanie DP.\n- Dokončiť skripty a generovať otázky pre slovenský jazyk.\n- Vyhodnotiť kvalitu generovania otázok.\n- Pripraviť experiment, kde vo viacerých scenároch (finetuning, few shot) generujeme otázky.\n\nZásobník úloh:\n\n- Pripraviť článok (do časopisu). Najprv prekladom z DP.\n- Pripraviť aj out-of-domain test - iná", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-4", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "aviť experiment, kde vo viacerých scenároch (finetuning, few shot) generujeme otázky.\n\nZásobník úloh:\n\n- Pripraviť článok (do časopisu). Najprv prekladom z DP.\n- Pripraviť aj out-of-domain test - iná doména (noviny, úäradné dokumenty). Iný jazyk. Porovnanie slovenského a anglického generovanie.\n- Pripraviť test, kde odmieriame prínos automaticky generovanej databázy na probmém question answering.\n- Použiť generátor pri manuálnej anotácii. Človek môže hodnotiť kvalitu generovanej otázky alebo ju opraviť.\n\nStretnutie 28.10\n\nStav:\n- 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.\n\nÚlohy:\n\n- Pokračovať v Zero Shot: Vymeniť Sentence za Veta. Pozrieť Separátor v slovníku.\n- 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\n\nZásobník úloh:\n\n- 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.\n- Možno bud", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-5", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "ce/clm\n\nZásobník úloh:\n\n- 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.\n- Možno bude fungovať nejaký multilinguálny generatívny model.\n\nStretnutie 7.10:\n\nStav:\n\n- 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.\n\nÚlohy:\n\n- [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.\n- [ ] Vyoracujte písomný prehľad generatívnych jazykových modelov.\n- [ ] Vypracujte písomný prehľad metód generovania otázok pomocou jazykového modelu. Nezabudnite na odkazy na odbornú literatúru.\n\nZásobník úloh:\n\n- [ ] Dotrénovať slovenský GPT model pomocou HF skriptu run_clm.py\n- [ ] Zistiť aký veľký model nám funguje.\n- [ ] Vybrať vhodný server na dorénovanie. Koľko GRAM potrebujeme?\n- [ ] Záložná možnosť - písať pre anglický jazyk.", + "text_length": 1070 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-6", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Diplomový projekt 1 2022\n\nCieľ: \n\n- Vytvoriť a vyhodnotiť generatívny model slovenského jazyka.\n- Navrhnúť a vytvoriť overovaciu množinu pre slovenské generatívne modely.\n\nStretnutie 29.6.\n\n- Vyskúšané dosadenie slovenského GPT modelu do kódu patil-suraj. Nefunguje - nepasuje konfigurácia. \n- Vyskúšané nasadenie Multilingual T5. Podarilo sa ho nahrať. Chyba \"index Out Of Range\".\n\nÚlohy:\n\n- Pokračovať v otvorených úlohách. Rozbehať skripty \"patil-suraj\".\n\nZásobník úloh:\n\n- Vyskúšať existujúci slovenský BART model (od vedúceho).\n- Natrénovať a vyskúšať nový slovenský BART model (aj pre vedúceho). \n\nStretnutie 8.4.\n\nPrezreté sú tri repozitáre. kompatibilné s HF Transformers\n\nhttps://github.com/p208p2002/Transformer-QG-on-SQuAD#seq2seq-lm\n- Používa modely GPT-2, BART,T5, upravený „BERT“\n- vstup ide odsek + zvýraznená odpoveď pomocou tokenu [HL]\n\nHaystack deepset – QG pipeline\n- Postup: (https://haystack.deepset.ai/tutorials/question-generation)\n- kompatibilný s HF Transformers\n- https://github.com/deepset-ai/haystack#mortar_board-tutorials\n- https://www.deepset.ai/blog/generate-questions-automatically-for-faster-annotation\n\nhttps://github.com/patil-suraj/question_generation\n- Využív", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-7", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "/github.com/deepset-ai/haystack#mortar_board-tutorials\n- https://www.deepset.ai/blog/generate-questions-automatically-for-faster-annotation\n\nhttps://github.com/patil-suraj/question_generation\n- Využíva 2 formáty vstupu: \n- Oddelenie odpovede pomocou SEP, odpoveď je osobitne\n - 42 `[SEP]` 42 is the answer to life, the universe and everything. Vyznačenie odpovede pomocou HL priamo v kontexte.\n - `` 42 `` is the answer to life, the universe and everything.\n\n3 možnosti definície úlohy generovanie otázok :\n- QG – vstup je kontext a odpoveď, výstup je otázka\n- 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\n- End-to-End QG – Generovanie otázok len na zaklade kontextu, vstup je kontext, výstup je otázka.\n\nÚlohy:\n\n- Začneme s prístupom \"End-To-End\" - generovanie otázok na základe zadaného odseku.\n- Rozbehnite skript, ktorý naučí generatívny model generovať otázky na základe zadaného odseku. Ako vstup použite sk-quad.\n\nZásobník úloh:\n\n- Navrhnite a implementujte spôsob vyhľadanie zaujímavej časti odseku - kandidáta na možnú odpoveď.\n\n11.3.\n\n- Vyskúšaný GPT na clo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-8", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "základe zadaného odseku. Ako vstup použite sk-quad.\n\nZásobník úloh:\n\n- Navrhnite a implementujte spôsob vyhľadanie zaujímavej časti odseku - kandidáta na možnú odpoveď.\n\n11.3.\n\n- Vyskúšaný GPT na cloab, zatiaľ nefunguje kvôli pamäti. \n\nMožné spôsoby využitia generatívnych modelov:\n\n- mnli - multi natural language inference - textual entailment and contradiction, zero shot classification\n- strojový preklad\n- sumarizácia, conditional generation - asi nepotrebuje finetinung\n- konverzačné systémy - generovanie odpovede na otázku\n- generovanie otázok ku zadanému odseku (reverse squad)\n\nMožné spôsoby vytvorenia overovacej množiny:\n\n- Využitie slovenského squadu pre úlohu generovania otázok.\n- Strojový preklad existujúceho jazykového zdroja do slovenčiny.\n- Pokúsime sa vytvoriť vlastnú dátovú množinu od začiatku. Pre ktorú úlohu?\n- Na overenie použijeme existujúci paralelný korpus - to si vyžaduje fine-tuning pre strojový preklad.\n- Strojovo vytvoríme overovaciu databázu pre úlohu sumarizácie. Zoberieme novinové články alebo vedecké články alebo záverečné práce ktoré majú uvedený abstrakt.\n\nÚlohy:\n\n- vyskúšať menší GPT model\n- Zistit a stručne opísať, ako funguje automatické generovanie", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-9", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "e. Zoberieme novinové články alebo vedecké články alebo záverečné práce ktoré majú uvedený abstrakt.\n\nÚlohy:\n\n- vyskúšať menší GPT model\n- Zistit a stručne opísať, ako funguje automatické generovanie otázok vo formáte squad. Ako neurónka berie do úvahy odpoveď? Zisitiť ako vyznačiť zaujímavé časti odseku (NER, parser, sumarizácia..) - ako vygenerovať odpoveď.\n- Porozmýšľať, ako použiť na túto úlohu Transformers.\n\n25.2.\n\n- Vytvorený textový report, kde je urobený prehľad metód vyhodnotenia a niekoľkých testovacích korpusov a benchmarkov. Rouge je používaná metrika.\n\nÚlohy:\n\n- Vypracovať prehľad generatívnych jazykových modelov \n- Vyskúšať slovenský GPT model.\n- Navrhnúť ako dotrénovať model na úlohu sumarizácie. \n\nZásobník úloh:\n\n- Vytvoriť model pre generovanie faktických otázok ku zadanému paragrahu.. Môžeme využiť slovenský squad.\n- Vytvoriť model pre sumarizáciu novinových článkov.\n- Vytvoriť databázu pre vyhodnotenie generatívnych vlastností jazykového mo,delu.\nNapr. úloha sumarizácie alebo iná.\n\nStretnutie 27.1.2022\n\nÚlohy:\n\n- Napísať prehľad spôsobov vyhodnotenia generatívnych modelov\n- Zostaviť prehľad metrík a dátových množin. \n- Zostaviť prehľad najnovších generatívnych mo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-10", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "cie alebo iná.\n\nStretnutie 27.1.2022\n\nÚlohy:\n\n- Napísať prehľad spôsobov vyhodnotenia generatívnych modelov\n- Zostaviť prehľad metrík a dátových množin. \n- Zostaviť prehľad najnovších generatívnych modelov.\n\nZásobník úloh:\n\n- Zistiť niečo o algoritmoch GAN (generative adversarial network) a VAE (variational autoendoder).\n- Napíšte na aké NLP úlohy sa používajú a s akými výsledkami.\n- Zistite aké (optinálne) Python-Pytorch knižnice sa dajú použiť.", + "text_length": 450 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-11", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "## Bakalárska práca 2020\n\nNázov: Neurónové jazykové modelovanie typu BERT.\n\n[Bakalárska práca](https://opac.crzp.sk/?fn=detailBiblioForm&sid=4A7927334F9373E92B42D999785B)\n\nNávrh na zadanie:\n\n1. Vypracujte prehľad metód jazykového modelovania pomocou neurónových sietí.\n2. Vypracujte prehľad aplikácií modelu typu BERT a spôsoby ich vyhodnotenia.\n3. Natrénujte jazykový model metódou BERT alebo podobnou.\n4. Vyhodnoťte jazykový model a navrhnite zlepšenia presnosti.\n\nZásobník úloh:\n\n- Cieľom je vedieť natrénovať BERT model a vyhodnotiť ho na zvolenej testovacej množine.\n- vyhodnotiť slovenský Roberta Model na pokusnej množine SK-quad.\n\nStretnutie 12.3.\n\nStav:\n\n- Konzultácia štruktúry práce\n\nÚlohy:\n\n- Písať.\n\nStretnutie 26.2.\n\nStav:\n\n- Vyriešený technický problém s architektúrou modelu podľa predpokladu.\n- Urobené vyhodnotenie modelu wiki103 na CommonsenseQA.\n\nÚlohy:\n\n- Pokračujte v práci na textovej časti.\n- Odovzdané pracovné dáta pre slovenský Roberta Model aj SK-Quad. Pokúste sa to vyhodnotiť ako neprioritnú ulohu.\n\nStretnutie 22.2.\n\nStav:\n\n- Natrénovaný model wiki103 na stroji Quadro. Problém sa vyriešil vypnutím GPU pri trénovaní,\n- Vznikol problém pri vypracovaní https://github.c", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-12", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "dnotiť ako neprioritnú ulohu.\n\nStretnutie 22.2.\n\nStav:\n\n- Natrénovaný model wiki103 na stroji Quadro. Problém sa vyriešil vypnutím GPU pri trénovaní,\n- Vznikol problém pri vypracovaní https://github.com/pytorch/fairseq/blob/master/examples/roberta/commonsense_qa/README.md - Architecture mismatch. Možné riešenie - iný prepínač `-arch` pri dotrénovaní. tak aby sedel s predtrénovaním.\n\nÚlohy:\n\n- skúsiť vyhodnotenie Wiki 103 na Commonsense\n- Pokračujte v práci na textovej časti - vytvorte plynulý text.", + "text_length": 503 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-13", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "## Bakalársky projekt 2020\n\nStretnutie 12.2.\n\nStav:\n\n- Pokúšame sa vytvoriť hodnotenie pomcou množiny CommonSenseQA\n- Problém pri trénovaní na Wiki103 na stroji Quadra, (vyzerá to ako deadlock)\n- Máme k dispozícii ROBERTA model natrénovaný na veľkej množine slovenských dát.\n\nDo budúceho stretnutia:\n\n- Problém sa možno dá obísť skopírovaním modelu zo stroja Tesla.\n- na kopírovanie použite príkaz `scp -r user@server:zdrojovyadresar cielovyadresar`.\n- pokračovať vo vyhodnotení pomocou CommonSenseQA.\n- skúste vyhodnotiť aj slovenský model. Ako?\n- pracujte na súvislom texte bakalárskej práce.\n\nVirtuálne stretnutie 18.12.2020\n\nStav:\n\n- Natrénovaný model ROBERTA na malej množine Wiki103 podľa tutoriálu. Trénovanie trvalo jeden týždeň.\n- Spísané poznámky ku množine SQUAD.\n- Vytvorený prístup na server quadra.kemt.fei.tuke.sk\n\nÚlohy:\n\n- Pokračovať v písaní\n- Prejsť si tutoriál https://github.com/pytorch/fairseq/blob/master/examples/roberta/commonsense_qa/README.md - cieľom je vedieť vyhodnotiť BERT model.\n- Pri trénovaní si overte, či sú využité všetky 4 karty. \n- Pozrite si DP [Lukáš Pokrývka](https://zp.kemt.fei.tuke.sk/students/2016/lukas_pokryvka)\n- Ak pôjde trénovanie v poriadku, skúst", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-14", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "BERT model.\n- Pri trénovaní si overte, či sú využité všetky 4 karty. \n- Pozrite si DP [Lukáš Pokrývka](https://zp.kemt.fei.tuke.sk/students/2016/lukas_pokryvka)\n- Ak pôjde trénovanie v poriadku, skúste vykonať viac experimentov s rôznymi parametrami, zapíšte si postup experimetu (príkazový riadok) a výsledok.\n\nVirtuálne stretnutie 4.12.2020\n\nStav:\n\n- Preštudovaný tutoriál https://github.com/pytorch/fairseq/blob/master/examples/roberta/README.pretraining.md\n- Vyriešený problém s Pytorch. \n- Inštalácia [Fairseq](https://git.kemt.fei.tuke.sk/om385wg/bp2021/wiki/In%C5%A1tal%C3%A1cia-fairseq) Conda aj Pytorch.\n- Chyba optimizéra [Fairseq](https://git.kemt.fei.tuke.sk/om385wg/bp2021/wiki/Vyrie%C5%A1en%C3%A9-Chyby) a jej riešenie.\n- Vypracované poznámky o trénovaní a vyhodnocovaní BERT.\n\nÚlohy:\n\n- Pokračujte v práci na písomnej časti. Skúste prepísať odrážky do plynulého textu.\n- Pridajte poznámky o vyhodnotení pomocou SQUAD.\n- Pokračujte v trénovaní Roberta na dátovej sade Wiki-103 na systéme Tesla, odhadovaný čas trénovania 64 hod. \n- Zistite ako sa dá vyhodnotiť natrénovaný model Roberta.\n- Zvážiť možnosť trénovania na systéme Titan a Quadra (pre vedúceho).\n\nVirtuálne stretnutie 20.11.", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-15", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 15, + "text": "e Tesla, odhadovaný čas trénovania 64 hod. \n- Zistite ako sa dá vyhodnotiť natrénovaný model Roberta.\n- Zvážiť možnosť trénovania na systéme Titan a Quadra (pre vedúceho).\n\nVirtuálne stretnutie 20.11.2020\n\nStav:\n\n- Urobené tutoriály ale iba na CPU.\n\nDo ďalšieho stretnutia:\n\n- Prejsť si tutoriál https://github.com/pytorch/fairseq/blob/master/examples/roberta/README.pretraining.md .\n- Pracovať na písomnej časti - zamerať sa na vyhodnotenie BERT modelu. Na aké modelové úlohy sa používa? \n- Napíšte poznámky, kde všade sa vyskytol technický problém a aké bolo riešenie. Dôležité sú verzie a podmienky pri ktorých sa problém vyskytol.\n- Spíšte ako nainštalovať knižnice tak aby to fungovalo (s CPU aj s GPU).\n- Vytvorte si na GITe repozitár bp2021, do neho dajte poznámky a kódy ktoré ste vyskúšali.\n\nVirtuálne stretnutie 13.11.2020\n\nStav:\n\n- Vypracované poznámky aj k transformer a BERT\n- Vyskúšaná release verzia Fairseq. Stále trvá technický problém s tutoriálom. \n- Vyskúšaný BERT tutoriáli. Chyba \"illegal instruction\" pri extrahovaní príznakov \"extract features from ROBERTA\". https://discuss.pytorch.org/t/illegal-instruction-core-dumped-in-first-pytorch-tutorial/62059/3 pravdepodobne problém", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-16", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 16, + "text": "a \"illegal instruction\" pri extrahovaní príznakov \"extract features from ROBERTA\". https://discuss.pytorch.org/t/illegal-instruction-core-dumped-in-first-pytorch-tutorial/62059/3 pravdepodobne problém s inštrukčnou sadou CPU. \n- \\vytvorený prístup na tesla pre vyriešenie.\n\nDo ďalšieho stretnutia:\n\n- pokračovať v otvorených úlohách.\n\nVirtuálne stretnutie 30.10.2020\n\nStav:\n- Vypracované poznámky k seq2seq\n- nainštalovaný Pytorch a fairseq\n- problémy s tutoriálom. Riešenie by mohlo byť použitie release verzie 0.9.0, pip install fairseq=0.9.0\n\nDo ďalšieho stretnutia:\n\n- Vyriešte technické porblémy\n- prejdide si tutoriál https://fairseq.readthedocs.io/en/latest/getting_started.html#training-a-new-model\n- Prejsť si tutoriál https://github.com/pytorch/fairseq/blob/master/examples/roberta/README.md alebo podobný.\n- Preštudujte si články na tému BERT, urobte si poznámky čo ste sa dozvedeli spolu so zdrojom.\n\nVirtuálne stretnutie 16.10.2020\n\nStav:\n\n- Vypracované poznámky k uvedeným bodom.\n- Problém s inštaláciou Anaconda.\n\nDo ďalieho stretnutia:\n\n- nainštalujte pytorch a knižnicu fairseq\n- prejtide si tutoriál https://fairseq.readthedocs.io/en/latest/getting_started.html#training-a-new-mode", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/ondrej_megela/README.md::chunk-17", + "document_path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 17, + "text": "lém s inštaláciou Anaconda.\n\nDo ďalieho stretnutia:\n\n- nainštalujte pytorch a knižnicu fairseq\n- prejtide si tutoriál https://fairseq.readthedocs.io/en/latest/getting_started.html#training-a-new-model\n- Napíšte ďalšie poznámky ku architektúre encoder-decoder, nájdite najdôležitejšie články a čo hovoria.\n\nVirtuálne stretnutie 2.10.2020\n\nVytvorený prístup `ssh megela@idoc.fei.tuke.sk`\n\nÚlohy do ďalšieho stretnutia:\n- Naštudujte si a vyracujte poznámky s uvedením zdroja:\n - spracovanie prirodzeného jazyka\n - jazykové modelovanie\n - rekurentná neurónová sieť\n - architektúra enkóder dekóder alebo seq2seq\n- Nainštalujte si prostredie Anaconda, pytorch a knižnicu fairseq\n\nNa štúdium:\n\nhttps://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics\n\n- python\n- nlp\n- seq2seq", + "text_length": 797 + }, + { + "chunk_id": "pages/students/2018/samuel_sirotnik/README.md::chunk-0", + "document_path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Samuel Širotník\n\nRok začiatku štúdia: 2018", + "text_length": 44 + }, + { + "chunk_id": "pages/students/2018/samuel_sirotnik/README.md::chunk-1", + "document_path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalárska práca 2020\n\n[Bakalárska práca na CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=CF9E62B1F4156FE3B62A0984D7C8)\n\nPráca úspešne obhájená. Odovzdaný klaster mal zle nakrimpované káble.\n\nPokusný Kubernetes klaster použitím Raspberry Pi pre výuku klaudových technológií\n\n1. Vypracujte teoretický úvod do technológie Kubernetes.\n2. Vytvorte pokusný klaster pomocou viacerých modulov Raspberry Pi a nainštalujte na neho Kubernetes.\n3. Vypracujte podrobný návod na zostavenie hardvérovej časti klastra.\n4. Vypracujte podrobný návod na inštaláciu softvéru - operačného systému a súčastí Kubernetes.\n\nCieľ projektu je vytvoriť domáci lacný klaster pre výuku cloudových technológií.\n\nZásobník úloh:\n\n- Aktivujte si technológiu WSL2 a Docker Desktop ak používate Windows.\n- Cieľ je vedieť dať klaster rýchlo do východiskového stavu - klvalitný návod a skritpty ktoré sa dajú opakovať.\n\nStretnutie 19.3.:\n\nStav:\n\n- doplnený a primontovaný switch, skrátené káble.\n- ručne priradené IP adresy (do súboru /etc/network-interfaces).\n- práca na písomnej časti.\n\nÚlohy:\n\n- vyskúšajte prácu s K8s podľa návodov z cvičení Základov klaudových technológií.\n- Doplniť register obrazov kontajnera - pripravi", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/samuel_sirotnik/README.md::chunk-2", + "document_path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "súboru /etc/network-interfaces).\n- práca na písomnej časti.\n\nÚlohy:\n\n- vyskúšajte prácu s K8s podľa návodov z cvičení Základov klaudových technológií.\n- Doplniť register obrazov kontajnera - pripraviť deployment.\n- Pripraviť deployment pre ingress. (nginx ingress controller).\n- píšte prácu.\n\nStretnutie 5.3.2021:\n\nStav:\n\n- Hardware je zmontovaný - ide chladenie, switch, napájanie, kabeláž aj uzly.\n- Zo software: podarilo sa nabootovať a nainštalovať K8s. - MicroK8s a Ubuntu 20.04 ARM 64\n\nÚlohy:\n\n- Zabezpečiť aby klaster mal stabilné IP adresy. Statické IP adresy (zakódovať do obrazu?) Alebo použiť dynamické IP adresy - dhcp? bootovanie zo siete?\n- Doplniť register obrazov kontajnera.\n- Možno primontovať switch na klaster?\n- Začať pracovať na písomnej časti. \n\nStretnutie 19.2.\n\nStav:\n\n- Zmontovaný klaster, ale nie je kompletný. Zostavený cluster case, karty a dosky.\n- Vyskytla sa chyba po zapojení micro HDMI kábla (čierna obrazovka), bliká červená LED na doske.\n\nDo ďalšieho stretnutia:\n\n- Pokročiť so zostavením HW. Vymyslieť sieťovú kabeláž, primontovanie zdroja, primontovanie switcha.\n- Pokračujte v práci na písomnej časti. \n- Skúste na zostavenom klastri rozbehať Kubernetes.\n- Pr", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2018/samuel_sirotnik/README.md::chunk-3", + "document_path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "- Pokročiť so zostavením HW. Vymyslieť sieťovú kabeláž, primontovanie zdroja, primontovanie switcha.\n- Pokračujte v práci na písomnej časti. \n- Skúste na zostavenom klastri rozbehať Kubernetes.\n- Pripraviť postup na vytvorenie obrazu operačného systému. Napísať skript pre inštaláciu baličkov a programov na čístý Raspbery PI OS. Vymyslieť skript na zostavenie nového obrazu flash karty.", + "text_length": 387 + }, + { + "chunk_id": "pages/students/2018/samuel_sirotnik/README.md::chunk-4", + "document_path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Bakalársky projekt 2020\n\nStretnutie 27.11.\n\nStav:\n\n- Prebratá zásielka\n- Je potrebné ešte prebrať switch a ethernet káble.\n\nÚlohy na ďalšie stretnutie:\n\n- Zostaviť HW.\n\n![Zasielka](./zasielka1-sirotnik-rpi.jpg)\n\n- 4 x Raspberry Pi4\n- 4 x Cluster Case\n- 1 x USBC kábel\n- 4 x 128GB SD karta\n- 1 x zdroj EPICO 60W\n\n![Zasielka](./zasielka2-sirotnik-switch.jpg)\n\n- 1 x switch 5 port TP Link\n- 4 x ethernet kábel\n- 1 x zdroj EPICO 60W\n- 1 x zásuvka s vypínačom\n\nVirtuálne stretnutie 13.11.\n\nStav:\n\n- Nainštalovaný microk8s.\n- Prečítané tutoriály - install microk8s, oficiálny k8s tutoriál [Kubernetes Basics]( https://kubernetes.io/docs/tutorials/kubernetes-basics/).\n\nDo ďalšieho stretnutia:\n\n- Urobte si viac kópí virtuálne stroje RPiOS pre simuláciu klastra.\n- Na virtuálny stroj RPiOS nainštalujte Docker a kubernetes. Skúste aj v klaster móde.\n- Odoslať a prebrať HW (ďalší týždeň utorok najneskôr).\n- Pokračovať v oficiálnom K8s tutoriáli. \n\nVirtuálne stretnutie 30.10.\n\nStav:\n- vypracovaný písomný prehľad podľa pokynov\n- nainštalovaný RaspberryPI OS do Virtual\\boxu\n- vypracovaný predbežný HW návrh\n- Nainštalované Docker Toolbox aj Ubuntu s Dockerom\n- Oboznámenie sa s Dockerom\n- Vedúci: vykona", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/samuel_sirotnik/README.md::chunk-5", + "document_path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "ý prehľad podľa pokynov\n- nainštalovaný RaspberryPI OS do Virtual\\boxu\n- vypracovaný predbežný HW návrh\n- Nainštalované Docker Toolbox aj Ubuntu s Dockerom\n- Oboznámenie sa s Dockerom\n- Vedúci: vykonaný nákup HW - Dosky 5x RPi4 model B 8GB, SD Karty 128GB 11ks, the pi hut Cluster Case for raspberry pi 4ks, Zdroj 60W and 18W Quick Charger Epico 1ks. 220V kábel a zásuvka s vypínačom.\n\nDo budúceho stretnutia:\n\n- Dá sa kúpiť oficiálmy 5 portový switch?\n- Skompletizovať nákup a dohodntúť spôsob odovzdania. Podpísať preberací protokol.\n- Použite https://kind.sigs.k8s.io na simuláciu klastra.\n- Nainštalujte si https://microk8s.io/ , prečítajte tutoriály https://ubuntu.com/tutorials/\n- Prejdite si https://kubernetes.io/docs/tutorials/hello-minikube/ alebo pododbný tutoriály\n\nVirtuálne stretnutie 16.10.\n\nStav:\n- Prečítanie články\n- začatý tutorál Docker zo ZCT\n- vedúci vytovoril prístup na Jetson Xavier AGX2 s ARM procesorom.\n- začatý nákup na Raspberry Pi a príslušenstvo.\n\nÚlohy do ďalšieho stretnutia\n- Vypracovať prehľad (min 4) existujúcich riešení Raspberry Pi cluster (na odovzdanie). Aký hardware a software použili?\n - napájanie, chladenie, sieťové prepojenie\n- Oboznámte sa s http", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2018/samuel_sirotnik/README.md::chunk-6", + "document_path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "stretnutia\n- Vypracovať prehľad (min 4) existujúcich riešení Raspberry Pi cluster (na odovzdanie). Aký hardware a software použili?\n - napájanie, chladenie, sieťové prepojenie\n- Oboznámte sa s https://www.raspberrypi.org/downloads/raspberry-pi-os/\n- Nainštalujte si https://roboticsbackend.com/install-raspbian-desktop-on-a-virtual-machine-virtualbox/\n- Napíšte podrobný návrh hardware pre vytvorenie Raspberry Pi Cluster.\n\nStretnutie 29.9.\n\nDohodli sme sa na zadaní práce.\n\nNávrhy na zlepšenie (pre vedúceho):\n\n- Zistiť podmienky financovania (odhad 350EUR).\n- K dispozícii je ARM počítač \"Jetson Xavier AGX\" - vytvoriť prístup.\n\nÚlohy na ďalšie stretnutie: \n\n- Prečítajte si:\n - https://magpi.raspberrypi.org/articles/build-a-raspberry-pi-cluster-computer\n - https://www.raspberrypi.org/blog/five-years-of-raspberry-pi-clusters/\n - https://kubecloud.io/setting-up-a-kubernetes-on-arm-cluster-on-raspberry-pis-f7f64065138c\n - https://kubernetes.io/docs/tutorials/\n - https://student.kemt.fei.tuke.sk/predmety/zct\n- Nainštalujte si:\n - https://kubernetes.io/docs/tasks/tools/install-minikube/\n - Docker\n- Pripravte návrh aký hardware a software bude potrebný.\n\nPodmienkou pre", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2018/samuel_sirotnik/README.md::chunk-7", + "document_path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "t.kemt.fei.tuke.sk/predmety/zct\n- Nainštalujte si:\n - https://kubernetes.io/docs/tasks/tools/install-minikube/\n - Docker\n- Pripravte návrh aký hardware a software bude potrebný.\n\nPodmienkou pre získanie zápočtu je účasť na konzultácii min. raz za 2 týždne. Menej ako 6 konzultácií za semester je dôvod pre zníženie hodnotenia alebo neudelenie zápočtu.\nKomunikácia je možná aj cez [MS Teams](https://teams.microsoft.com/l/team/19%3aa8596a401a3842e5b91ac918a2a0afb1%40thread.tacv2/conversations?groupId=4fc0c627-d424-4587-b73a-2e47509862e9&tenantId=1c9f27ef-fee6-45f4-9a64-255a8c8e25a5).", + "text_length": 591 + }, + { + "chunk_id": "pages/students/2019/alina_vitko/README.md::chunk-0", + "document_path": "pages/students/2019/alina_vitko/README.md", + "title": "Alina Vitko", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2019", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2019/alina_vitko/README.md::chunk-1", + "document_path": "pages/students/2019/alina_vitko/README.md", + "title": "Alina Vitko", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2022\n\nSystémy pre generovanie odpovede na otázku v prirodzenom jazyku\n\n1. Vypracujte prehľad aktuálnych metód pre generovanie odpovede na otázku v prirodzenom jazyku.\n2. Vyberte a podrobne opíšte existujúci systém pre generovanie odpovede na otázku v prirodzenom slovenskom jazyku.\n3. Vytvorte demonštračnú webovú aplikáciu pre vybraný systém.\n4. Navrhnite zlepšenia systému pre generovanie odpovede.\n\nStretnutie 8.4.\n\nProgres zatiaľ nenastal.\n\nÚlohy platia z minulého stretnutia.\n\nZásobník úloh:\n\n- Študujte Python a Docker.\n- Pripravte nasadenie aplikácie pomocou systému Docker. Napíšte Dockerfile.\n- Napíšte vlastnú aplikáciu Streamlit alebo inej knižnice (pywebio, gradio).\n- Inšpirujte sa:\n - https://github.com/gradio-app/hub-bert-squad\n - https://www.mihaileric.com/posts/state-of-the-art-question-answering-streamlit-huggingface/\n\nStretnutie 17.1.2022\n \n- Zmenené texty v demo aplikácii\n- Pridaná časť do textu práce\n\nÚlohy:\n\n- Dokončiť demo slovenským modelom podľa minulých úloh.\n- pokračovať v písaní práce.\n\nStretnutie 28.1.\n\n- Demo aplikácia funguje - vieme ju spustit aj nainstalovat.\n- Vytvorený repozitár so zdrojovými kódmi demo aplikácie https://git.kemt.", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/alina_vitko/README.md::chunk-2", + "document_path": "pages/students/2019/alina_vitko/README.md", + "title": "Alina Vitko", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "a minulých úloh.\n- pokračovať v písaní práce.\n\nStretnutie 28.1.\n\n- Demo aplikácia funguje - vieme ju spustit aj nainstalovat.\n- Vytvorený repozitár so zdrojovými kódmi demo aplikácie https://git.kemt.fei.tuke.sk/dano/qademo\n\nÚlohy:\n\n- Naklonujte si repozitár. \n- Získajte slovenský model a dajte ho do adresára models. Zistite, akého typu je slovenský model. \n- Modifikujte demo aplikáciu tak, aby pracovala so slovenským modelom.\n- Modifikujte demo aplikáciu tak aby bola \"naša\". Preložte ju, doplnte obrázky.\n- Oboznámte sa s knižnicou https://streamlit.io/\n- Do práce pridajte časť, kde podrobne opíšete ako funguje QA s použitím knižnite transformers. Napíšte o modeloch, ktoré budete prezentovať.\n\nZásobník úloh:\n\n- Pripravte aplikáciu do podoby vhodnej na nasadenie. Vytvorte Dockerfile.", + "text_length": 793 + }, + { + "chunk_id": "pages/students/2019/alina_vitko/README.md::chunk-3", + "document_path": "pages/students/2019/alina_vitko/README.md", + "title": "Alina Vitko", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Bakalársky projekt 2021\n\nVytovrenie prehľadu existujúcich systémov QA.\n\nStretnutie 17.12.2021\n\n- Inštalácia funguje, ale spustenie nefunguje. Možný dôvod je to že to nie je kompatibilné s Windows. Alebo nastala chyba pri inštalácii.\n\nÚlohy:\n\n- Nainštalujte si WSL2 a Windows Terminal.\n- do ubuntu na wsl2 nainštalujte Anaconda for Linux.\n- Vyskúšajte to ešte raz do čistého prostredia anaconda. Staré zmažte.\n- Prejdite si knihu https://diveintopython3.net/\n- Pozrite si https://github.com/gerulata/slovakbert a prečítajte si článok na Arxiv. https://arxiv.org/abs/2109.15254 . Vytvorte si nové Anaconda prostredie a prejdite si tutoriál na tej stránke.\n\nStretnutie 10.12.2021\n\n- Vyskúšané https://github.com/fastforwardlabs/question_answering, zatiaľ nefunguje.\n- Mierne vylepšené texty.\n\nÚlohy:\n\nVyskúšajte nainštalovať https://github.com/facebookresearch/DrQA do virtuálneho priostredia Anaconda.\n\nAko nainštalovať https://github.com/fastforwardlabs/question_answering:\n\nJe potrebné mať nekoľko GB voľného miesta. Ak je Váš počítač pomalý, vytvorím Vám konto na školskom servri.\n\n1. Aktivujte si prázdne prostredie Anaconda. \n \n```\n conda create -m qa\n conda activate qa\n```\n\n2. Nainšt", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/alina_vitko/README.md::chunk-4", + "document_path": "pages/students/2019/alina_vitko/README.md", + "title": "Alina Vitko", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "GB voľného miesta. Ak je Váš počítač pomalý, vytvorím Vám konto na školskom servri.\n\n1. Aktivujte si prázdne prostredie Anaconda. \n \n```\n conda create -m qa\n conda activate qa\n```\n\n2. Nainštalujte Pytorch:\n\n```\n conda install pytorch=1.6 torchvision torchaudio cpuonly -c pytorch\n```\n\n3. naklonujte repozitár\n\n```\n git clone https://github.com/fastforwardlabs/question_answering\n cd question_answering\n```\n\n4. nainštalujte aplikáciu\n\n```\n pip install -r requirements.txt\n```\n\n5. Spustite web rozhranie\n\n```\n streamlit run ./apps/wikiqa.py\n```\n\nStretnutie 12.11.2021\n\n- Pokračuje práca na texte\n- Nainštalovaná Anaconda\n- Začiatok Python Tutoriálu\n\nÚlohy:\n\n- Pokračujte v práci na texte.\n- Pokračujte v Python Tutoriáli.\n- Prečítajte si blogy na https://qa.fastforwardlabs.com/ Vyskúšajte si, či Vám to pôjde v Anaconde.\n- Nainštalujte si HuggingFace transformers: https://huggingface.co/transformers/installation.html do Anacondy\n- Prejdite si tutoriál https://huggingface.co/transformers/training.html\n- Ak Vám to pôjde, prejdite si tutoriál https://github.com/huggingface/notebooks/blob/master/examples/question_answering.ipynb\n- Ak sa zaseknete, skúsime to vyriešiť na kon", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/alina_vitko/README.md::chunk-5", + "document_path": "pages/students/2019/alina_vitko/README.md", + "title": "Alina Vitko", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "/transformers/training.html\n- Ak Vám to pôjde, prejdite si tutoriál https://github.com/huggingface/notebooks/blob/master/examples/question_answering.ipynb\n- Ak sa zaseknete, skúsime to vyriešiť na konzultácii.\n\nZásobník úloh:\n\n- Nainštalujte a vyskúšajte toto: https://github.com/facebookresearch/DrQA\n\nStretnutie 5.11.2021\n\n- Splnené zadané úlohy z minulého týždňa, okrem nainštalovania\n\nStretnutie 28.10.2021\n\nStav:\n\nVypracovaný prehľad viacerých systémov QA a viacerých datasetov na QA.\n\nÚlohy:\n\n- Navrhnite niekoľko spôsobov prekladu výrazu question answering systems do slovenčiny. \n- napr. systémy odpovedania na otázku, systémy pre generovanie odpovede na otázku v prirodzenom jazyku.\n- Vyhľadajte tieto termíny na internete.\n- Nainštalujte a vyskúšajte vybraný systém\n- Doplňte odkazy na odborné články do textu práce. \n\nÚlohy:\n\n- [x] Doplňte odkazy na zdroje, aj do textu.\n- [x] Doplňte teoretický úvod do QA.\n- [x] Dopíšte informácie o datasetoch SQUAD -1.0 a 2.0. a [MRQA](https://mrqa.github.io/2019/shared).\n- [x] Doplňte metodiku vyhodnotenia QA, napr. F1-precision-recall.\n- [ ] Vyberte jeden systém QA, skúste ho nainštalovať a vyskúšať tak ako je.\n\nZásobník úloh:\n\n- Nainštalujte si", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/alina_vitko/README.md::chunk-6", + "document_path": "pages/students/2019/alina_vitko/README.md", + "title": "Alina Vitko", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "hub.io/2019/shared).\n- [x] Doplňte metodiku vyhodnotenia QA, napr. F1-precision-recall.\n- [ ] Vyberte jeden systém QA, skúste ho nainštalovať a vyskúšať tak ako je.\n\nZásobník úloh:\n\n- Nainštalujte si najprv balíček Anaconda.\n- Prejdite si knihu https://diveintopython3.net/\n\nStretnutie 15.10.2021\n\nStav:\n\n- Začiatok písania prehľadu QA (nie hotový).\n\nÚlohy:\n\n- Vyberte min. dva odborné články alebo knihy a napíšte čo ste sa z nich dozvedeli o systémoch pre generovanie odpovede na otázku v prirodzenom jazyku, Napíšte bibliografické údaje o zdroji.\n- Webové stránky a blogy môžete tiež používať.\n- Nájdite a opíšte čo najviac QA systémov. Začať môžete systémom DRQA.", + "text_length": 667 + }, + { + "chunk_id": "pages/students/2019/artem_yatsenko/README.md::chunk-0", + "document_path": "pages/students/2019/artem_yatsenko/README.md", + "title": "Artem Yatsenko", + "categories": [ + "bp2022" + ], + "tags": [ + "ner", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "Začiatok štúdia 2019", + "text_length": 20 + }, + { + "chunk_id": "pages/students/2019/artem_yatsenko/README.md::chunk-1", + "document_path": "pages/students/2019/artem_yatsenko/README.md", + "title": "Artem Yatsenko", + "categories": [ + "bp2022" + ], + "tags": [ + "ner", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2022\n\nNázov: Rozpoznávanie pomenovaných entít v slovenskom jazyku\n\nPomenované entity sú väčšinou vlastné podstatné mená v texte. Ich rozpoznanie nám pomôže určiť o čom text je. To sa často využíva v chatbotoch alebo vo vyhľadávaní v texte.\n\nNávrh na zadanie:\n\n1. Vypracujte prehľad metód pre rozpoznávanie pomenovaných entít v texte.\n2. Vyberte vhodnú metódu a natrénujte model pre rozpoznávanie pomenovaných entít.\n3. Vykonajte viacero experimentov a zistite s akými parametrami má model najvyššiu presnosť.\n4. Navrhnite ďalšie zlepšenia modelu pre rozpoznávanie pomenovaných entít.\n\nPodobné práce:\n\n- [Jakub Maruniak](/students/2016/jakub_maruniak)\n- [Martin Wencel](students/2018/martin_wencel)", + "text_length": 716 + }, + { + "chunk_id": "pages/students/2019/artem_yatsenko/README.md::chunk-2", + "document_path": "pages/students/2019/artem_yatsenko/README.md", + "title": "Artem Yatsenko", + "categories": [ + "bp2022" + ], + "tags": [ + "ner", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "# Bakalársky projekt 2021\n\n- Zlepšite model pre rozpoznávanie pomenovaných entít.\n- Anotujte korpus, navrhnite lepší klasifikátor.\n\nStretnutie 30.9.\n\nÚlohy:\n\n- Prihláste sa na github.com, získajte prístup k repozitáru https://github.com/hladek/spacy-skmodel. Nainštalujte si prostredie, spustite trénovací skript. Budete potrebovať prostredie Anaconda. Môžete využiť svoj počítač, alebo školský server idoc.fei.tuke.sk (urobím prístup v prípade potreby).\n- Vyznačte niekoľko (min. 20 článkov) pomenovaných entít cez webové rozhranie https://zp.kemt.fei.tuke.sk/topics/named-entity/navod\n- Napíšte krátku správu o tom čo je to rozpoznávanie pomenovaných entít a ako sa robí. Napíšte z akých zdrojov ste čerpali.", + "text_length": 710 + }, + { + "chunk_id": "pages/students/2019/david_stromp/README.md::chunk-0", + "document_path": "pages/students/2019/david_stromp/README.md", + "title": "Dávid Stromp", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 0, + "text": "Rok začiatku štúdia: 2019", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2019/david_stromp/README.md::chunk-1", + "document_path": "pages/students/2019/david_stromp/README.md", + "title": "Dávid Stromp", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2022\n\nNávrh na zadanie:\n\n1. Vypracujte prehľad distribuovaných databáz alebo súborových systémov vhodných pre uloženie veľkého množstva textu.\n2. Vyberte vhodný spôsob uloženia veľkého množstva webových stránok.\n3. Nasaďte vybrané distribuované úložisko na testovací klaster pomocou systému Kubernetes.\n4. Vykonajte sadu testov pre overenia priepustnosti operácií zápisov a čítania.\n5. Identifikujte slabé miesta distribuovaného úložiska a navrhnite zlepšenia.\n\nTO-DO na Diplomovku\nCieľ práce:\n\n- Zlepšiť proces získavania informácií\n- Implementovať algoritmus paralelného spracovania dokumentov v databáze Cassandra. \n- Implementovať algoritmus Page Rank alebo algoritmus jazykového modelu dokumentu.", + "text_length": 720 + }, + { + "chunk_id": "pages/students/2019/david_stromp/README.md::chunk-2", + "document_path": "pages/students/2019/david_stromp/README.md", + "title": "Dávid Stromp", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 2, + "text": "## Bakalársky projekt 2021\n\nCiele:\n\n- Vytvoriť nasadenie distribuovanej databázy na testovaci K8S klaster.\n- \n\n22.8.2022\n- Praca skontrolovana pripravena na odovzdanie, treba este poriesit zadavaci list\n \n\n9.8.2022\n- Doplnene grafy z grafany do prace\n\n8.8.2022\n- Skontrolovana praca pridane komentare\n- Student opravil chyby podla komentarov\n\n3.8.2022\n- Poslana praca na kontrolu \n\n1.8.2022\n- Prakticka cast hotova\n- Dohodnutie sa na pisani praktickej casti\n\n25.7.2022\n- 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\n\n25.7.2022\n- Vytvoreni script na generovanie udajov\n- Skusanie scriptu \n- nainstalovana Grafana\n\n22.7.2022\n- Testovanie clustra prenasanie suborov atd\n\n8.7.2022\n- Stretnutie čo dalej\n\n2.6.2022\n- Presuvame pracu na September pretoze nestiahame pravit prenasany predmet\n\n6.5.2022\n- Teoreticka praca skontrolovane subezne praca na praktickej casti", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2019/david_stromp/README.md::chunk-3", + "document_path": "pages/students/2019/david_stromp/README.md", + "title": "Dávid Stromp", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 3, + "text": "atd\n\n8.7.2022\n- Stretnutie čo dalej\n\n2.6.2022\n- Presuvame pracu na September pretoze nestiahame pravit prenasany predmet\n\n6.5.2022\n- Teoreticka praca skontrolovane subezne praca na praktickej casti\n\n8.4.2022\n- Práca na teoretickej casti prace\n\n1.4.2022\n- Dohodli sme sa ze vynechame Page rank a budeme sa sustredit iba na distribuovane ulozisko\n\n14.3.2022\n- Page rank implemetovany, beži ale nie v takej forme aku si prestavujeme\n\n1.3.2022\n- Problem pri implementácii page ranku\n\n22.2.2022\n- K8ssandra nainštalovaná na virtuálnych strojoch\n\n15.2.2022\n- Kubernetes beží na virtualkach. Potreba nainštalovať ešte k8ssandru, dnes \n\n14.2.2022\n- Vytvorené ďalšie 4 virtualky na UVT\n\n10.2.2022\n- Vytvorená Virtualka na UVT\n\nStretnutie 18.10.2021\n- Nahodený dashboard\n- Vygenerovaný token\n- Poslane prihlasovacie údaje\n\nStretnutie 22.10.2021\n- cassandra operátor zatiaľ nie je spojazdnený, \n- servicy nenabiehajú.\n- Pracuje sa na odstránení problému\n\nStretnutie 27.10.2021\n- Error standard_init_linux.go:228: exec user process caused: exec format error\n\nStretnutie 29.10.2021\n- Poslaný návod na k8ssandru \n- Snaha odstránení problému\n\nStretnutie 8.11.2021\n- Na novo inštalácia k8s cluster \n- Vyskúša", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/david_stromp/README.md::chunk-4", + "document_path": "pages/students/2019/david_stromp/README.md", + "title": "Dávid Stromp", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 4, + "text": "go:228: exec user process caused: exec format error\n\nStretnutie 29.10.2021\n- Poslaný návod na k8ssandru \n- Snaha odstránení problému\n\nStretnutie 8.11.2021\n- Na novo inštalácia k8s cluster \n- Vyskúšanie staršej verzie k8s\nprvý je ten že ten reaper operator s cass operatorom nesúvisí až tak úplne,\n a druhý je ten že aj keď staršia verzia k8ssandry opravila cass-operaotr, tak reaper-operator stále je v crashloope, takže to celé nefunguje,\n\nStretnutie 12.11.2021\nPoslaná teória\n\nStretnutie 28.11.2021\n- Prechod na virtulky virtual box\n\nStretnutie 3.12.2021\n- nechce fungovať DNS resolving,\n- pracuje s ana odstranieni problem \n\nStretnutie 4.12.2021\n- k8ssandra rozbehaná,\n\n16.12.2021\n- Zhodnotenie výsledkom \n- Dohodnutie sa na teórii a odovzdaní\n\nStretnutie 19.01.2022\n- Uvažovanie o možnosti virtualizie na UVT\n- Ďalšie kroky\n\nStretnutie 23.1.2022\n- Písanie teórie \n- Poslanie prezentácie na pred obhajoby\n\nStretnutie 15.10\n- Rozbehaný dashboard\n- Vytvorenie účtu\n- Pridanie ďalších raspberry pi\n- Predstavenie dashboardu\n\nÚlohy na ďalší týždeň:\n- Nainštalovanie Casasndry\n- Prepojenie s databázou\n\nStretnutie 08.10\n\n- Preinštalovanie kubernetes\n- Nainštalovanie Casasndry\n- Spravená časť osnovy", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/david_stromp/README.md::chunk-5", + "document_path": "pages/students/2019/david_stromp/README.md", + "title": "Dávid Stromp", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 5, + "text": "- Predstavenie dashboardu\n\nÚlohy na ďalší týždeň:\n- Nainštalovanie Casasndry\n- Prepojenie s databázou\n\nStretnutie 08.10\n\n- Preinštalovanie kubernetes\n- Nainštalovanie Casasndry\n- Spravená časť osnovy\n- Prepojenie s databázou \n\nÚlohy na ďalší týždeň:\n\n- Sfunkčnite k8s dashboard\n- Nainštalovať všetky potrebne veci \n\nStretnutie 01.10.\n- Minikube funguje na vlastnom počítací\n- Pripravené relevantné poznámky k bakalárskej práci\n- Získaný prístup k RaspberryPi klastru\n\nÚlohy na ďalší týždeň:\n- Sfunkčnite Casasndra operator (K8ssandra)\n- Sfunkčnite k8s dashboard\n- Naučte sa vkladať dáta do Cassandry a písať dotazy.\n- pošlite osnovu k bakalárskej práci a relevantný text (stačí aj v poznámkovom bloku)\n\nStretnutie 24.9.\n\nÚlohy:\n\n- Napíšte osnovu bakalárskej práce a pridajte do nej relevantné text čo máte.\n- Pripravte Casasndra operator - na začiatok na Vašom počítači. (napr. microk8s, minikube).\n- Dohodntite sa s Ing. Harahusom a získajte prístup ku RaspberryPi klastru.\n- Naučte sa vkladať dáta do Cassandry a písať dotazy.\n\nZásobník úloh:\n\n- Rozbehať crawler Websucker s Cassandrou.\n- Implementovať PageRank.\n- Napísať skript na indexovanie pomocou ElasticSearch.\n\nStretnutie 10.9.\n\nÚlohy:\n\n- N", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/david_stromp/README.md::chunk-6", + "document_path": "pages/students/2019/david_stromp/README.md", + "title": "Dávid Stromp", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 6, + "text": "do Cassandry a písať dotazy.\n\nZásobník úloh:\n\n- Rozbehať crawler Websucker s Cassandrou.\n- Implementovať PageRank.\n- Napísať skript na indexovanie pomocou ElasticSearch.\n\nStretnutie 10.9.\n\nÚlohy:\n\n- Nainštalovať databázu Cassandra - Využite Docker.\n- Vyberte si CQL tutoriál a napíšte krátky záznam čo ste sa naučili.\n- Nájdite blogy o spracovaní veľkých dát pomocou Cassandry a napíšte krátky záznam o tom čo ste sa dozveldeli.\n- Naštudujte si článok http://ilpubs.stanford.edu:8090/422/ (Brin and Page). Zistite ako súvisí implementácia algorimtu PageRank s Cassandrou. Napíšte to do záznamu.", + "text_length": 594 + }, + { + "chunk_id": "pages/students/2019/dmytro_mural/README.md::chunk-0", + "document_path": "pages/students/2019/dmytro_mural/README.md", + "title": "Dmytro Mural", + "categories": [ + "bp2022" + ], + "tags": [], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 0, + "text": "Rok začiatku štúdia: 2019", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2019/dmytro_mural/README.md::chunk-1", + "document_path": "pages/students/2019/dmytro_mural/README.md", + "title": "Dmytro Mural", + "categories": [ + "bp2022" + ], + "tags": [], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2022\n\nGrafové neurónové siete pre vyhľadávanie na internete.\n\nhttps://arxiv.org/abs/1810.05997\n\nNávrh na zadanie:\n\n1. Vysvetlite čo je to grafová neurónová sieť\n2. Vypracujte prehľad najnovších druhov grafových neurónovýsh sietí.\n3. Vyberte jednu metódu grafových neurónových sietí a navrhnite spôsob experimentálneho ohodnotenia sady prepojených článkov pomocou grafovej neurónovej siete. \n4. Vyhodnnoťte experimenty a navrhnite zlepšenia Vášho prístupu. \n\nCieľ práce:\n\nZlpešite metódy ohodnotenia prepojených ddkumentov na internete .", + "text_length": 556 + }, + { + "chunk_id": "pages/students/2019/dmytro_mural/README.md::chunk-2", + "document_path": "pages/students/2019/dmytro_mural/README.md", + "title": "Dmytro Mural", + "categories": [ + "bp2022" + ], + "tags": [], + "author": "Maroš Harahus", + "published": true, + "chunk_index": 2, + "text": "## Bakalársky projekt 2021\n\nCiele:\n\nStretnutie 15.10\n\n- Naštudovať si ako fungujú neurónové siete\n- Naštudovať ako fungujú grafové neurónové siete\n- Napísať rešerš", + "text_length": 163 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-0", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2019\n\nDP sa prekladá na rok 2025", + "text_length": 53 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-1", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2024 - 2025\n\nVektorové vyhľadávanie dokumentov v prostredí Kubernetes\n\nZadanie:\n\n1. Napíšte prehľad metód vektorovej reprezentácie dokumentov pomocou neurónových sietí. \n2. Napíšte prehľad vektorových databáz a ich metód vyhľadávania.\n3. Nasaďte vybranú vektorovú databázu do testovacieho distribuovaného prostredia. \n4. Vytvorte index väčšieho množstva textových dokumentov vo vybranej vektorovej databáze. \n5. Vytvorte webové rozhranie na vyhľadávanie a slovne vyhodnoťte výsledky. \n\nCiel:\n\n- 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.\n\nSpolupráca Michal Stromko, Kristián Sopkovič. Huzenko\n\nStretnutie:\n\nStav:\n- Text je rozpísaný.\n\nÚlohy:\n\n- Zlepšiť štruktúru práce\n\nStretnutie 10.3.2025\n\nStav:\n\n- Zaindexovaná slovenská Wikipédia na servri QUADRO. Trvalo to niekoľko hodín na jednej karte - SlovakBERT. \n- Práca na texte.\n- RPI už funguje (2x reštart, problém s káblom).\n\nStretnutie 21.2.2025\n\nStav:\n\n- Optimalizácia procesu indexovania - veľkosť dávky.\n- Treba reštartovať RPI Klaster.\n\nStretnutie 17.1.2025\n\nStav:\n\n- Pokus o indexovanie na Quadre, ale treba nainštalova", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-2", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "Stretnutie 21.2.2025\n\nStav:\n\n- Optimalizácia procesu indexovania - veľkosť dávky.\n- Treba reštartovať RPI Klaster.\n\nStretnutie 17.1.2025\n\nStav:\n\n- Pokus o indexovanie na Quadre, ale treba nainštalovať Anaconda pre závislosti.\n- Prezentácia.\n\nStretnutie 16.12.\n\n- Vytvorený indexer\n- Vytvorené rozhranie vyhľadávania\n- Deployment Milvus.\n- Zatiaľ je indexovanie pomalé na domácej karte.\n\nÚlohy:\n\n- Dajte kódy na GIT.\n- Vyskúšajte indexovanie na servri QUADRO\n- Pracujte na textovej časti.\n\nStretnutie 22.11.\n\nStav:\n\n- Použitý HELM chart pre Milvus. Sú potrebné úpravy konfigurácie pre ARM - vymeniť Docker IMAGES.\n- PV je vyriešené.\n\nÚlohy:\n\n- Skripty aj konfiguráky dávajte na GIT.\n- Urobte skripty pre \"prípravu\" klastra. \n- Urobte skripty pre nasadenie Milvus na Klaster.\n- Pokračujte v písaní práce.\n\nZásobík úloh:\n\n- Keď to bude hotové, vyskúšajte skripty na DeskPI Super6C Klastri, p. Huzenko.\n- Urobte benchamark na Milvus deployment.\n- Naštudujte si Ansible a urobíte Ansible konfiguráciu microk8s.\n\nStretnutie 7.11.2024\n\nStav:\n\n- Riešenie problémov súvisiacich s PersistentVolume\n- Práca na texte\n\nStretnutie 15.10.2024\n\nStav:\n\n- Rozpísaná práca\n- Príprava na nasadenie Milvus DB na RPI klas", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-3", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "rok8s.\n\nStretnutie 7.11.2024\n\nStav:\n\n- Riešenie problémov súvisiacich s PersistentVolume\n- Práca na texte\n\nStretnutie 15.10.2024\n\nStav:\n\n- Rozpísaná práca\n- Príprava na nasadenie Milvus DB na RPI klaster.\n\nÚlohy:\n\n- 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.\n- Pokračujte v práci na HW a SW.\n\nStretnutie 27.9.2024\n\nStav:\n\n- Urobené vyhľadávanie Milvus, odstavce sú v sqlite.\n- Indexovanie je v osobitnom skripte.\n- Urobené web rozhranie pomocou Flask.\n\nÚlohy:\n\n- 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.\n- Na RPI klaster k8s urobte paralelný deployment Milvus a mongodb aj webové rozhranie.\n- Pokračujte v štúdiu LangChain.\n- Pokračujte v písaní - sentence transformers, retrieval augmented generation, distributed database. \n\nStretnutie 23.7.2024\n\nStav:\n\n- Vytvorený jednoduchý i", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-4", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "ozhranie.\n- Pokračujte v štúdiu LangChain.\n- Pokračujte v písaní - sentence transformers, retrieval augmented generation, distributed database. \n\nStretnutie 23.7.2024\n\nStav:\n\n- Vytvorený jednoduchý index pomocou Milvus, indexovanie pomocou slovakbert-mnlr.\n- Zatiaľ slovakbert-mnlr vyzerá lepšie, ale treba to ešte vyskúšať.\n\nÚlohy:\n\n- 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. \n- Skripty dávajte na GIT.\n- Oboznámte sa s knižnicou LangChain, začnite tu https://python.langchain.com/v0.2/docs/tutorials/retrievers/\n- 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.\n\nZásobník úloh:\n\n- vyhľadávací systém môžete urobiť pomocou langchain alebo inej knižnice.\n- Pripravte deployment navrhnutého systému na k8s klaster.\n- skúste spustiť vyhľadávací systém na raspberry pi klastri.\n- zaindexujte slovenský internet.\n- Pripravte benchmark rýchlosti indexovania.\n- P", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-5", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "Pripravte deployment navrhnutého systému na k8s klaster.\n- skúste spustiť vyhľadávací systém na raspberry pi klastri.\n- zaindexujte slovenský internet.\n- Pripravte benchmark rýchlosti indexovania.\n- Pripravte webové rozhranie pre vyhľadávanie.\n\nStretnutie 3.5.2024\n\nStav:\n\n- Rozbehaný Milvus lokálne pomocou Docker.\n- Implementácia vyhľadávania pomocou Python.\n- Rozpracovaná príprava na Milvus RPI Klaster.\n\nÚlohy:\n\n- Skúste zaindexovať slovenské dáta. Na vektorovú reprezentáciu použite https://huggingface.co/TUKE-DeutscheTelekom/slovakbert-skquad-mnlr\n- Na začiatok zaindexujte slovenskú wikipédiu. Sparsovaný text bol dodaný.\n- Napíšte o tom čo je to SentenceTransformer - ako sa trénuje a ako sa používa.\n- Pozrite si DP M. Stromko a K. Sopkovič.\n\nZásobník úloh:\n\n- Benchmarking vyhľadávania. Vyskúšame viacero embeddingov s rôznym rozmerom. Modely typu Matroshka.\n- Zhlukovanie dokumentov - zostavenie doménového korpusu s dát.\n- Dolovanie otázok a odpovedí.\n- Je priestor pre nákupy RPI pre nový RPI klaster.\n\nStretnutie 8.12.2023\n\nStav:\n\n- Funguje microk8s RPI klaster. Aktivované HA.\n\nÚlohy:\n\n- Vypracujte prehľad vektorových databáz. QDRANT, *MILVUS*, Weaviate, a iné. Opíšte ako funguje i", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-6", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "ový RPI klaster.\n\nStretnutie 8.12.2023\n\nStav:\n\n- Funguje microk8s RPI klaster. Aktivované HA.\n\nÚlohy:\n\n- 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, \n- Pokračujte v úlohách: nasadte databázu, zaindexujte dokumenty a vypracujte webové rozhranie. \n\nStretnutie 10.11.2023\n\nStav:\n\n- Teoretická príprava a tri strany poznámok.\n\nÚlohy:\n\n- Nasadte databázu Milvus na RPi. Vytvorte skripty na nasadenie pomocou Kubernetes. Zvážte možnosž použitia HELM alebo K8S Operátor.\n- Preštudujte si ako funguje distribuované nasadenie Milvus.\n- Zistitie si čo je K8S operator. \n- Zistite čo to je HELM.\n- Zisite ako nasadit Milvus pomocu Operator alebo pomocou HELM.\n- Skúste zaindexovať pár dokumentov.\n- Pokračujte v písaní práce.\n\nZásobník úloh:\n\n- Vytvorte HTML rozhranie pre hybridné vyhľadávanie. Môžete využiť pomoc od Stromko-Sopkovič.\n\nStretnutie 26.10.2023\n\nStav:\n\n- Vypracovaný text na tému: Hardware RPI, kontajnerizácia, Čo je ingress. Paralelné spracovanie dát, o Kubernetes. \n- Na klastri sú nainštalované všetky potrebné nástroje: Multipass, k8s", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-7", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": ".2023\n\nStav:\n\n- Vypracovaný text na tému: Hardware RPI, kontajnerizácia, Čo je ingress. Paralelné spracovanie dát, o Kubernetes. \n- Na klastri sú nainštalované všetky potrebné nástroje: Multipass, k8s, \n\nÚlohy:\n\n- [x] Je potrebný Multipass na beh MicroK8s RPI klastra? Ak áno tak prečo. Ak nie tak to opravte.\n- [ ] Pozrite si profily Stromko, Sopkovič.\n- [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.\n- [x] Prečítajte si https://qdrant.tech/articles/hybrid-search/\n- [ ] Použite vektorovú databázu s podporou ukladania textu.\n- [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. \n\nZásobník úloh:\n\n- Zaindexujte slovenský internet.\n- Pripravte jednoduché webové rozhranie pre vyhľadávanie na slovenskom internete.\n- Vykonajte záťažové testy pre indexovanie a vyhľadávanie.", + "text_length": 1135 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-8", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "# Diplomový projekt 2023\n\nNápady:\n\n- 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. \n- Klaster by malo byť jednoduché dať do východiskového stavu.\n- Klaster by mal mať aj podpornú infraštruktúru: Storage, Ingress, Registry, LoadBalancer.\n- Možno vytvoriť iný klaster pre skúštanie výukových alebo demonštračných aplikácií. Napr. JupyterLab, NLP demo pre GPU.\n- Preskúmať možnosti paralelného spracovania dát - Dask, SLURM, Spark, \n\nStav:\n\n- Podarilo sa nainštalovať a nasadiť Kubernetes klaster na raspberry PI\n- Bola vytvorená písomná správa\n- Skripty sú na https://git.kemt.fei.tuke.sk/ft835qr/dp2024\n- Výsledky boli odovzdané na poslednú chvíľu.\n\nÚlohy:\n\n- Oboznámte sa so systémom microk8s. Nainštalujte si ho a vyskúšajte. \n- Zistite čo je Ingress a ako si ho vytvoríme.\n- Zistite, aké storage podporuje microk8s a ako ho implementovať.\n- Navrhnite architektúru k8s klastra. Máme k dispozícii 5 jednotiek RPi4 s SD kartami. 1 jednotku Nvidia Jetson Xavier.\n\nZásobník úloh:\n\n- Namontovať klaster do serverovne a prideliť IP.\n- Rozbehať JupyterLab.", + "text_length": 1157 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-9", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "# Bakalárska práca 2022\n\nNázov bakalárskej práce:\n\nAplikačné testy v systémoch kontinuálnej integrácie a nasadenia\n\nNávrh na zadanie:\n\n1. Vypracujte prehľad metód a nástrojov automatického testovania\n2. Vypracujte prehľad metód a nástrojov systémov kontinuálnej integrácie a nasadenia\n3. Vyberte vhodné metódy a pomocou systému Docker Compose nasaďte systém automatického testovania do vybraného systému kontinuálnej itengrácie a nasadenia.\n4. Vypracujte sadu aplikačných testov na vybranú webovú aplikáciu. \n5. Navrhnite zlepšenia systému spúšťania automatických testov.\n\nStretnutie 15.3.\n\n- Podarilo sa implementovať GitLab CI CD pipeline s Cypress\n- Výsledky sú na https://git.kpi.fei.tuke.sk/filip.tomas/bp2022\n- Treba vedúcemu prideliť práva na čítanie.\n\nÚlohy:\n\n- Pracujte na texte\n- Pokračujte v práci na otvorenyých úlohách.\n\nStretnutie 25.2.\n\n- Fungujú automatické testy Cypress\n\nÚlohy:\n\n- [ ] Vypracovať písomný prehľad CI CD systémov nasaditeľných pomocou Docker Compose.\n- [ ] Vybrať vhodný systém, optimálne taký, ktorý sa dá integrovať so systémov Gitea. https://gitea.com/gitea/awesome-gitea#user-content-devops\n- [ ] Pripravte deployment docker compose, kotrý bude obsahovať GITEA a", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-10", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "dný systém, optimálne taký, ktorý sa dá integrovať so systémov Gitea. https://gitea.com/gitea/awesome-gitea#user-content-devops\n- [ ] Pripravte deployment docker compose, kotrý bude obsahovať GITEA aj CI CD podľa výberu. Najčastejšie sa používa asi Jenkins.\n\nInterakcia medzi Gitea a CI CD sa deje pomocou webhook. Riešenie pomocou GITlab je akceptovateľné, ale nie preferované.", + "text_length": 380 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-11", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "# Bakalársky projekt 2021\n\nCiele:\n\n1. [ ] Naučiť sa nasadiť a pracovať so systémom CI-CD. Vytvoriť pokusné nasadenie CI CD systému pomocou Docker compose. Môžete použiť [TUKE Cloud](https://cloud.tuke.sk/).\n2. [x] Vytvoriť automatické aplikačné testy ku aplikácii Traktor.\n3. [-] Vytvoriť kompletný reťazec CI-CD ku aplikácii Traktor. Automatický build a test, zobrazenie reportu.\n4. [-] Vypracovanie písomného prehľadu.\n\nStretnutie 10.12.2021\n\n- Pripravený prvý reálny test, skladá sa z viacerých scenárov.\n- Práca na texte\n\nÚlohy:\n\n- Pokračovať s vytváraním testov\n- Pokračovať v práci na texte.\n- Rozbehať vlastný CI CD. \n\nPráca na texte.\n\nÚlohy: Pokračujte v otvorených úlohách\n- Napíšte čo je to testovanie a aké spôsoby testovania poznáme (aplikačné, použiteľnosti, jednotkové... ).\n\nStretnutie 22.10.\n\n- Napísaný prvý draf s poznámkami o CI CD\n- pripravené prvé test-case\n\nÚlohy:\n\n- Pokračujte v otvorených úlohách\n- Vytvorte GIT repozitár s názvom bp2022 a nahrajte do neho testovacie scenáre.\n\nZásobník úloh:\n\n- [ ] Skúste vytvoriť nasadenie vhodného CI CD na tuke cloude.\n- [ ] Upravte scenáre tak, aby boli ľahko automaticky spustiteľné. vytvorte skript pre inštaláciu potrebných komponen", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/filip_tomas/README.md::chunk-12", + "document_path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "e.\n\nZásobník úloh:\n\n- [ ] Skúste vytvoriť nasadenie vhodného CI CD na tuke cloude.\n- [ ] Upravte scenáre tak, aby boli ľahko automaticky spustiteľné. vytvorte skript pre inštaláciu potrebných komponentov a pre spustenie testov.\n\nStretnutie 23.9.\n\n- Dohodli sme sa na zadaní, cieľoch a názve.\n\nÚlohy:\n\n- [ ] Urobte písomný prehľad systémov CI-CD. Uveďte zdroje z ktorých ste čerpali.\n- [ ] Nájdite vhodnú odbornú literatúru, uveďte ju do prehľadu. V školskej knižnici môže byť dobrá kniha.\n- [x] Navrhnite základné testovacie scenáre pre aplikáciu https://traktor.kemt.fei.tuke.sk.", + "text_length": 580 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-0", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2019", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-1", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Dizertačná práca 2028\n\nCieľ:\n\n- Vylepšiť RAG-QA v slovenskom jazyku.\n\nStretnutie 6.11.2024\n\nKritériá na rok 24-25:\n\n- 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.\n\nPlán na publikácie - povinná jazda:\n\n- SCYR 8B\n- [RADIOELEKTRONIKA 2025 15](https://radioelektronika.uniza.sk/home.php?id_conference=28)\n- RADIOELEKTRONIKA 2025 15 (Eva Kupcová)\n- 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.\n\nĎalšie \"jednoduché\" konferencie kde zvykneme chodiť:\n\n- ELMAR\n- SAMI\n- CINTI\n- ICETA\n- ITAT\n\nTreba overiť konkrétny termín \"uzávierky\" hodnotenia doktoranda.\n\nPlán na publikácie - Conference our level:\n\n- Slovko (výstup ide do Jaz. časopisu)\n- TSD 2025\n- LREC-COLING 2026 konferencia.\n\nPlán na publikácie - Journal our level:\n\n- Jazykovedný časopis, má dobré hodnotenie (Scopus Q2-eq. WOS Q3)\n- IEEE Access Q2\n- PeerJ Computer Science Q2\n- Pattern Recognition Q2\n- Nature Scienfic Reports Q2\n- Language Resources and Evaluation Q3\n- Natural Language Proc", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-2", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "obré hodnotenie (Scopus Q2-eq. WOS Q3)\n- IEEE Access Q2\n- PeerJ Computer Science Q2\n- Pattern Recognition Q2\n- Nature Scienfic Reports Q2\n- Language Resources and Evaluation Q3\n- Natural Language Processing (Journal) asi Q3\n\nPlán na publikácie - Cream de la Creme:\n\n- INTERSPPECH\n- ENLP alebo iná ACL konferencia\n\nStretnutie 21.6.\n\nNápady na tému DP:\n\n- 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í.\n- Grafová reprezentácia informácie - vyhľadávanie v štruktúrovaných, prepojených dokumenotch.\n- Zlepšenie modelov vektorovej reprezentácie.\n- Tvorba nových \"základných\" generatívnych modelov.", + "text_length": 686 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-3", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "# Diplomová práca 2024\n\nNeurónové vyhľadávanie na základe sémantickej podobnosti vektorov.\n\n1. Vypracujte prehľad metód neurónovej vektorovej reprezentácie viet alebo odsekov.\n1. Pripravte trénovaciu množinu a natrénujte model vektorovej reprezentácie dokumentov.\n1. Vyhodnoťte natrénovaný model vo viacerých experimentoch.\n1. Identifikujte slabé miesta modelu a navrhnite jeho zlepšenia.\n\nZadanie sa ešte môže zmeniť.\n\nSúvisiace práce: Michal Stromko\n\nCieľ je zlepšiť slovenské vyhľadávanie pomocou neurónových sietí.\n\nNámety na tému:\n\n- 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*?\n- 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.\n- Vytvorte kognitívne vyhľadávanie pre mesto Košice \n\n[Slovak Semantic Textual Similarity Benchmark](https://huggingface.co/datasets/crabz/stsb-sk) \nna trénovanie Sentence Transformer", + "text_length": 1095 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-4", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Diplomový projekt 2\n\nStretnutie 1.3.2024\n\nStav:\n\n- Práca na teórii\n- Preskúmané modifikátory stratovej funkcie - Matrioshka embedding. Metóda zníženia dimenzie embeddingov.\n- Porovnané slovenská (preložená) SNLI-sk a STSB-sk. e5 small model (374dim) MNLR plus loss modifier a matrioshka LOSS. \n\nStretnutie 29.1.2024\n\nStav:\n\n- Príprava prezentácie.\n- 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.\n \n\nStretnutie 15.12.2023\n\nStav:\n\n- Lepšie preložená databáza (Azure) SNLI a STSB-SK (pôvodne preložená cez OPUS).\n- Natrénovaný Bi Encoder (SNLI) aj Cross Encoder (STSB) zo SlovakBERT a E5. \n\nÚlohy:\n\n- Vyhoddnotte natrénované modely a výsledky sumarizujte v dip. práci. Môžete použit slovenský dataset od M Stromka keď bude.\n- Datasety a modely nahrajte na HF HUB, zatiaľ privátne. TUKE-DeutscheTelekom ORG. Zistite vo firme podmienky zverejnenia. \n- Po Novom roku dodajte draft DP.\n\nZásobník úloh:\n\n- Porozmýšľajte nad článkom.\n\nStretnutie 3.11.2023\n\nStav:\n\n- Sú spracované ďalšie dáta o službách z Magistrátu Košíc.\n- Dotréno", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-5", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "dmienky zverejnenia. \n- Po Novom roku dodajte draft DP.\n\nZásobník úloh:\n\n- Porozmýšľajte nad článkom.\n\nStretnutie 3.11.2023\n\nStav:\n\n- Sú spracované ďalšie dáta o službách z Magistrátu Košíc.\n- 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. \n- SIMSCE prístup na trénovanie pomocou MNLR, je SOTA. Koher reranker je tiež SOTA, ale je komerčný.\n- Pokračujeme v minulých úlohách.\n- Evaluačná množina SK QUAD bola preložená do nemčiny a angličtiny.\n- Mistrail LLM model natrénovaný na európskych jazykoch.\n\nÚlohy:\n\n- 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. \n- 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. \n\nZásobník úloh:\n\n- Výsledky budeme demonštrovať na", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-6", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "o 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. \n\nZásobník úloh:\n\n- Výsledky budeme demonštrovať na košických dátach.\n\nStretnutie 13.10.2023\n\nStav:\n\n- Spracované dáta z mesta Košice - 110 najčastejších otázok a odpovedí.\n- Nasadená 13B ChatLLama na Titan, 4 bit kvantizácia.\n\nÚlohy:\n\n- 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.\n- 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.\n- Model vyhodndotte na dostupných databázach.\n- Prečítajte si viacero nových článkov na tému \"mutlilingual alebo crosslingual\" \"information retrieval\" \"document embeddings\". Urobte si poznámky do DP.\n\nZásobník úloh:\n\n- Košické dáta je možné využiť pri vyhdonotení.\n- Možno dáta na vyhodnotenie slovenského IR vytvorí aj M. Stromko.\n- Pripraviť API na ChatLLAma.\n\nStr", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-7", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "dings\". Urobte si poznámky do DP.\n\nZásobník úloh:\n\n- Košické dáta je možné využiť pri vyhdonotení.\n- Možno dáta na vyhodnotenie slovenského IR vytvorí aj M. Stromko.\n- Pripraviť API na ChatLLAma.\n\nStretnutie 28.9.20023\n\nStav:\n\n- Vieme pracovať - natrénovať SBERT (Sentence Transformer).\n- Je strojovo preložená SNLI databáza pomocou Marian NMT setup.\n\nNápady:\n\n- Získať dáta-dokumenty z webovej stránky mesta Košice.\n- Získať informácie z webovej stránky https://www.esluzbykosice.sk/\n- Spracovať dáta o často kladených otázkach, ktoré sme dostali z mesta Košice.\n- Spracovať dáta o agende, ktoré sme dostali z mesta Košice.\n- Vytvoriť ku týmto dátam \"asistenta\" pre získavanie informácí.\n\nÚlohy:\n\n- [-] Porozmýšľať ktorú časť problému \"pomoci občanom mesta Košice\" by sme mohli riešiť.\n- [-] Spracujte dodané dáta od mesta Košice (vedúci pripraví a pošle).\n- [ ] Dáta zaindexujte a pripravte jednoduché vyhľadávanie.\n- [ ] Pokračujte v písomnej teoretickej príprave na tému \"Sentence Transformers\".\n\nZásobník úloh:\n\n- Pripravte scraper na dáta od mesta Košice.", + "text_length": 1061 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-8", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "## Diplomový projekt 1\n\nStretnutie 2.6.2023\n\nStav:\n\n- Natrénovaný IR retriever\n- Natrénovaný model pre generatívne odpovede na báze Slovak T5 Small.\n- Práca na texte\n\nStretnutie 25.5.\n\nStav:\n\n- Trénovanie MNLR nebolo v poriadku, lebo boli použité iba kladné príklady.\n\nÚloha:\n\n- Natrénovať model SNLI. Natrénovať iný model STSB. \n- Porovnajte ich ako cross-encoder. Vyhodnoťte recall vyhľadávania na databáze sk-quad.\n- Porovnajte to so základným modelom mnlr sk quad.\n- Skúste oba modely dotrénovať na MNLR skquad a vyhodnotiť. \n- pracujte na písomnej časti.\n\nStretnutie 5.5.2023\n\nStav:\n\n- Natrénovaný model MNLR SlovakBERT na preloženej databáze Standformd SNLI.st.: tot je asi zle\n- Urobnené predbežné vyhodnotenie - analýza strednej hodnoty kosínusovej podobnosti pre triedy entailment, contradiction, neutral.\n- Výsledkom MNLR je kosínusové podobnisť.\n- Urobené aj softmax trénovanie. Výsledkom softmax je trieda pre 2 zadané vety.\n\nÚlohy:\n\n- Upravte a dajte trénovacie skripty na GIT.\n- Vyhodnotiť presnosť klasifikácie softmax pomocou konfúznej matice - p,r,f1\n- Dotrénovať SNLI ST na SK Quad a vyhodnotiť na úlohe sémantického vyhľadávania. - recall. To tj e zlá úloha.\n- Pracujte na písomnej", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-9", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "tiť presnosť klasifikácie softmax pomocou konfúznej matice - p,r,f1\n- Dotrénovať SNLI ST na SK Quad a vyhodnotiť na úlohe sémantického vyhľadávania. - recall. To tj e zlá úloha.\n- 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. \n\nZásobník úloh:\n\n- Cieľom je poblikovať kvalitný článok.\n- Cieľ 2 je aplikovať model pre úlohu vyhonotenia súladu staevebnej dokumentácie so regulatívou - zákonmi a vyhláškami.\n- Využijeme databázu STSB-sk (na hf hube) ako ďalší zdroj dát\n- Pripravte porovnávacie experimenty pre anglické datasety.\n- Do ďalších experimentov zahrňte multilinguálne modely.\n\nStretnutie 24.4.2023\n\nStav:\n\n- Preložené SNLI - všetky 3 časti.\n\nStretnutie 17.3.2023\n\nStav:\n\n- Je preložená SNLI databáza, trénovacia časť. Použitý OPUS Helsinki NLP model\n\nÚlohy:\n\n- Preložiť aj testovaciu časť.\n- Natrénovať Sentence Transforner (ST) na databáze SNLI, podľa SlovakBERT.\n- Dotrénovať SNLI ST na SK Quad a vyhodnotiť na úlohe sémantického vyhľadávania. - recall\n- Podobným spôsobom vyhodnotiť Slovakbert-stsb.\n- Napí", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-10", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "ce Transforner (ST) na databáze SNLI, podľa SlovakBERT.\n- Dotrénovať SNLI ST na SK Quad a vyhodnotiť na úlohe sémantického vyhľadávania. - recall\n- Podobným spôsobom vyhodnotiť Slovakbert-stsb.\n- Napíšte o tom čo je to ST, ako funguje. Pripravte prehľad databáz na trénovanie ST.\n\nZásobník úloh:\n\n- Porovnať s slovakbert-crossencoder na tuke-dtss modelmm.\n\nStretnutie 17.2.2023\n\nÚlohy\n\n- 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.\n- 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. \n\nZásobník úloh:\n\n- Zistite ako využiť slovenský generatívny model pre sémantické vyhľadávnaie. Pripravte experiment a vyhodnotte ho.\n- Vyberte databázu pre sémantické vyhľadávanie alebo question answering na vhodnú na vytvorenie slovenského klonu. \n\nStretnutie 24.11.\n\nÚlohy:\n\n- Porozmýľať ďalej o téme, komuikovať o možnom grante na anotáciu.\n- Vyskúšajte [Sentence Transformers", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-11", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "alebo question answering na vhodnú na vytvorenie slovenského klonu. \n\nStretnutie 24.11.\n\nÚlohy:\n\n- Porozmýľať ďalej o téme, komuikovať o možnom grante na anotáciu.\n- Vyskúšajte [Sentence Transformers framework](https://github.com/UKPLab/sentence-transformers/tree/master/examples). Pozrite si príklady, ako trénovať.\n- Prečítajte si článok https://arxiv.org/abs/1908.10084.\n- Zistite, čo je Natural Language Inference, aké sú dostupné databázy.\n- Zistite, čo je Semantic Textual Similarity, aké sú dostupné databázy.\n- Pozrite si https://git.kemt.fei.tuke.sk/dano/slovakretrieval/", + "text_length": 580 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-12", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "# Bakalárska práca 2022\n\nNávrh na názov bakalárkej práce:\n\nModel Spacy pre spracovanie prirodzeného jazyka v slovenčine\n\nCiele bakalárskej práce:\n\n- Zlepšiť presnosť modelu Spacy pre slovenčinu\n\nZadanie:\n\n1. Zistite ako pracuje knižnica Spacy a opíšte metódy ktoré používa.\n2. Natrénujte model pre spracovanie slovenského prirodzeného jazyka.\n3. Vykonajte viacero experimentov a zistite presnosť pri rôznych parametroch.\n4. Identifikujte slabé miesta a zlepšite presnosť spracovania.\n\n25.3.2022\n\n- Zopakované trénovanie POS aj NER\n- Zisitili sme, že keď sa NER trénuje osobitne bez POS tak dáva lepšie výsledky. Prečo?\n- konfiguračné súbory sú na githube. malý nepoužíva slovné vektory, stredný používa 200000 ti. slov vektorov. \n- uncased multilingual bert vychadza lepsie ako cased.\n- v konfiguácii sú fasattext slovné vektory aj multilingualbert uncased. Používajú sa slovné vektory pri klasifikácii???\n\nÚlohy:\n\n- Zosumarizovať výsledky experimentov do písomneč časti\n- Finalizovať BP - na ďalšom stretnutí prejdeme spolu draft.\n- Pripraviť skripty na natrenovanie modelov na verejnú distribúciu.\n\n4.3. 2022\n\n- Natrénované NER modely Spacy Transformers, výsledky sú na wandb\n\nÚlohy:\n\n- [ ] Priprav", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-13", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "stretnutí prejdeme spolu draft.\n- Pripraviť skripty na natrenovanie modelov na verejnú distribúciu.\n\n4.3. 2022\n\n- Natrénované NER modely Spacy Transformers, výsledky sú na wandb\n\nÚlohy:\n\n- [ ] Pripraviť modely (návody na trénovanie) na verejnú distribúciu.\n- [x] Natrénovať menšie modely bez slovných vektorov.\n- [-] Pokračovať v písaní.\n- [x] Vytvoriť rozhranie pre využitie modelov huggingface ,modelov slovakbert. Využiť spacy-transformers alebo spacy-sentence-transformers.\n- [x] Na githube vytvorte fork alebo branch repozitára, dajte mi prístup. tam bude pracovná verzia s novými modelmi. \n\n25.2.2022\n\n- Vyskúšané experimenty s hyperparametrami s pôvodnou architektúrou POS modelu.\n- Zmenená architektúra POS na Spacy Transformer (bez BERT predtrénovania, využíva slovné vektory). Dosiahnuté zlepšenie POS z 0.8 na 0,9. Výsledky sú vo forme grafu dostupné na wandb\n\nÚlohy:\n\n- Zdieľať wandb projekt,\n- Vyskúšať transformers architektúru na NER model. \n- Vyskúšať BERT architektúry - MultilingualBERT, SlovakBERT, LABSE, Slovak GPT\n- Pracujte na texte", + "text_length": 1058 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-14", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "## Bakalársky projekt 2021\n\n18.2.2022\n\n- Na idoc je problém s timeout pri zostaení pip balíčka, ale funguje trénovanie spacy pos\n\nÚlohy:\n\n- [x] Zatiaľ sa sústrediť na POS model čo funguje.\n- [x] Do týždňa opraviť idoc (pre vedúceho).\n\n7.2.2022\n\n- Rozbehaný trénovací skript na vlastnom počítači\n- Spustených niekoľko experimentov.\n\nÚlohy:\n\n- [x] Pokračujte v otvorených úlohách.\n- [x] Výsledky experimentov dajte do tabuľky do práce.\n\nZásobník úloh:\n\n- [x] Skúste použiť logovací nástroj https://docs.wandb.ai/guides/integrations/spacy\n- [x] Skúste rozbehať trénovacie skripty na školskom servri. Problémy vytriešime na konzultácii.\n\n26.11. 2021\n\n- Absolvovaný kurz Explosion https://course.spacy.io/en/\n- Mierne zlepšený text práce.\n\nÚlohy:\n\n- [x] Vytvorte GIT a vložte do neho svoje trénovacie skritpy. Nedávajte tam veľké textové súbory. Dajte odkazy odkiaľ ste získali dáta. Celý proces by mal byť opakovateľný,\n- [x] Skúste zlepšiť hyperparametre môjho trénovacieho skriptu spacy3\n- [ ] Skúste pridať MultilingualBert do trénovania.\n- [ ] Pokračujte v práci na textovej časti.\n- [x] Vytvorené modely je potrebné vyhodnotiť. Pozrite ako to je v mojom Spacy repozitári.\n\nZápis 21.10.\n\nVyskúšať t", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-15", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 15, + "text": "pridať MultilingualBert do trénovania.\n- [ ] Pokračujte v práci na textovej časti.\n- [x] Vytvorené modely je potrebné vyhodnotiť. Pozrite ako to je v mojom Spacy repozitári.\n\nZápis 21.10.\n\nVyskúšať toto:\n\n- [MultilingualBert](https://github.com/google-research/bert/blob/master/multilingual.md). Dá sa adaptovať na Slovak Treebank.\n- [Spacy Transformers](https://spacy.io/universe/project/spacy-transformers)\n\nStretnutie 15.10.\n\nStav:\n\n- Rozpracovaná kapitola o Spacy\n- Pokusné trénovanie HuggingFace v Pytorch\n\nÚlohy:\n\n- Pokračovať v otvorených úlohách.\n\nZásobník úloh:\n\n- Aplikovať model BERT do Spacy Pipeline.\n\nStretnutie 1.10\n\nStav:\n\n- Vypracovaných asi 8 strán osnovy\n- Preštudované Transformery a Spacy\n- Vyskúšané trénovanie Pytorch\n\nÚlohy:\n\n- Pripravte si prostredie Anaconda a v ňom spustite trénovanie.\n- Pokračovať v otvorených úlohách.\n\nStretnutie 24.9.2021\n\nStav:\n\n- Naštudovaná knižnica Spacy - pozreté tutoriály\n- Vytvorený prístup na idoc\n\nÚlohy:\n\n- Spustite trénovanie podľa skriptov na githube. Môžete použiť server idoc.\n- Skúste napísať osnovu BP práce.\n- Nájdite odborný článok na tému \"Transformer neural network\" a do BP napíšte čo ste sa dozvedeli.\n- Stručne napíšte čo je t", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/kristian_sopkovic/README.md::chunk-16", + "document_path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 16, + "text": "ov na githube. Môžete použiť server idoc.\n- Skúste napísať osnovu BP práce.\n- Nájdite odborný článok na tému \"Transformer neural network\" a do BP napíšte čo ste sa dozvedeli.\n- Stručne napíšte čo je to knižnica Spacy a ako pracuje. Citujte aspoň jeden odborný článok.\n- Zistite ako by sa dal zlepšiť proces trénovania.\n\nStretnutie 25.6.2021\n\n- Vytvorený prístup do repozitára spacy-skmodel na GIThube\n\nÚlohy:\n\n- Skúste spustiť trénovací skript a natrénovať slovenský spacy model\n- Pozrite si bakalársku prácu [Martin Wencel](/students/2018/martin_wencel)", + "text_length": 554 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-0", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2019", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-1", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2023/24\n\nSémantické vyhľadávanie v slovenskom texte\n\nZadanie práce:\n\n1. Vypracujte prehľad najnovších metód sémantického vyhľadávania pomocou neurónových sietí.\n2. Implementujte sémantické vyhľadávanie na slovenskej wikipédii pomocou existujúcich modelov. \n2. Vyberte dátovú množinu otázok a odpovedí a ručne anotujte výsledky sémantického vyhľadávania. \n3. Pripravte, vykonajte a opíšte experimenty na vyhodnotenie vyhľadávania pomocou Vami ručne vytvorenej množiny. \n4. Vyhodnoťte experimenty a identifikujte slabé miesta a navrhnite zlepšenia.\n\nCiele DP:\n\n- Bolo by fajn, keby z DP bol vedecký článok.\n- Dotrénovať slovenský ST model.\n- Porovnať viacero metód na vyhľadávanie v slovenskom texte - BM25, TF IDF, WordEmbedding, SentenceTransformers, Alebo iné embeddingy.\n\nStretnutie 6.3.\n\n- Hotová anotácia 1134 otázok, ku každej je 20 odpovedí v 5 kategóriách. \n- Hotové vyhodnotenie modelu Slovakbert-mnlr, metriky recall, MRR, MAP, NDCG. Model je \"podpriemerný\".\n\nÚlohy:\n\n- [ ]Dokončiť text DP, asi bude treba niektoré časti skrátiť.\n- [ ] Nájsť podobnú databázu. STSB je podobná, ale možno iná je podobnejšia. \n- [x] Spraviť nový dockerfile pre vyhľadávacie demo.\n\nZásobník ú", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-2", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "]Dokončiť text DP, asi bude treba niektoré časti skrátiť.\n- [ ] Nájsť podobnú databázu. STSB je podobná, ale možno iná je podobnejšia. \n- [x] Spraviť nový dockerfile pre vyhľadávacie demo.\n\nZásobník úloh:\n\n- Pripraviť databázy do kompletnej podoby pre uverejnenie. Na jedno miesto dať všetky potrebné súbory, vrátane sk quad.\n- Databázu treba dať do podoby, aby bola kompatibilná s inými vyhodnocovacími skriptami. \n- 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.\n- * Napísať článok, zverejniť databázu *. Zvážiť spoločný článok s Kristiánom S.\n\nStretnutie 16.2.\n\nStav:\n\n- Dokončená teoretická časť DP.\n- Dokončená aplikácia \"Vyhľadávanie na slovenskej wikipédii\". Treba ešte dorobiť Dockerfile.\n- Začatá práca na kapitole - Tvorba korpusu pre vyhodnotenie sémantického vyhľadávania. \n- Treba urobiť ešte vyhodnotenie na modeli Slovakbert-mnlr. Porovnanie s bm25 baseline, aj hybrid.", + "text_length": 1005 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-3", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "# Diplomový projekt 2\n\nStretnutie 30.11.20\n\nStav:\n\n- Rozrobený text\n- Anotovaných cca 1000 dokumentov\n\nÚlohy:\n\n- Skúsiť experimenty\n- Pokračovať v anotáciách\n- Pokračovať v písaní textu.\n\nStretnutie 9.11. 2023\n\nStav - urobené úlohy: \n- Je anotovaných cca 240 otázok, ku každej cca 20 dokumentov\n- [x] Pridať kódy na Git\n- [x] Napísať návod pre anotovanie\n- [x] Spaviť jednu stránku pre vypísanie počtu už anotovaných otázok z danej sady\n- [x] Pridať do indexu search, každému kontextu ID\n- [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\n- [x] Rozdelenie anotačného datasetu na sady (anotačné sady je ich 8)\n- [x] Zamiešanie správnych odpovedí okrem odpovede zo skquad tá je na index = 0 vždy\n- [x] Prerobiť anotačnú aplikáciu tak, aby mala po anotovaní štruktúru id správnej odpovede a kategóriu.\n- [x] Pri anotovaní budem ťahať z id odpovede presný text z toho datasetu\n- [x] Anotovacie kategórie: sú na gite skwiki\n- [x] Zapísať nové veci a poznámky do Mira\n- [x] Zmeniť v Mire štruktúru anotačného aj finálneho datasetu\n- [x] Opovedí môže byť rôzne množstvo nie iba po jednej", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-4", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "vacie kategórie: sú na gite skwiki\n- [x] Zapísať nové veci a poznámky do Mira\n- [x] Zmeniť v Mire štruktúru anotačného aj finálneho datasetu\n- [x] Opovedí môže byť rôzne množstvo nie iba po jednej odpove\n\nÚlohy:\n\n- Pokračovať v anotácia prvých a druhých 1000 otázok\n- Pripraviť experimenty pre vyhodnotenie presnosti s novými dátami\n- Pokračovať v písaní.\n\nZásobník úloh:\n\n- Zvážiť indexovať kratšie kontexty. Nevýhody: vznikne neporiadok. Výhody: Môže sa urýchliť práca anotátorov. \n- Zvážiť nasadenie, úpravu django appky a anotovať s náhodnými študentami.\n\nStretnutie 2.11.2023\n\nStav:\n\n- Prvá verzia anotačnej aplikácie v Streamlit\n- Pripravené dáta na anotovanie.\n\nÚlohy:\n\n- Prideliť ID pre kontexty a pridať ich do indexu.\n- 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.\n- Premiešať 20 najlepších odpovedí.\n- Pracujte na texte DP - robte si poznámky z článkov o metrikách vyhodnotenia.\n\nStretnutie 26.10.2023\n\nStav:\n\n- Urobený preskum dostupných databáz na vyhodnotenie IR.\n- Prípravený plán na tvorbu dat", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-5", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": ".\n- Pracujte na texte DP - robte si poznámky z článkov o metrikách vyhodnotenia.\n\nStretnutie 26.10.2023\n\nStav:\n\n- Urobený preskum dostupných databáz na vyhodnotenie IR.\n- 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.\nZatiaľ sa nebude robiť kros validácia.\n\nÚlohy:\n\n- 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.\n- Urobte prehľad článkov, ktoré anotujú databázu podobným spôsobom.\n- Anotovať aj \"nezodpovedateľné\" otázky. Zodpovedajúci \"nesprávny\" kontext so SKQUAD bude kategória 5.\n- 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ť.\n\nZásobník úloh:\n\n- Zvážiť strojový preklad vybranej databázy a ich porovnanie.\n- Čo urobiť s kontextami zo SKQUAD vo Wiki2023 - vyznačiť? \n\nStretnutie", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-6", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "nájdených kontextoch, lebo sa môžu mierne líšiť.\n\nZásobník úloh:\n\n- Zvážiť strojový preklad vybranej databázy a ich porovnanie.\n- Čo urobiť s kontextami zo SKQUAD vo Wiki2023 - vyznačiť? \n\nStretnutie 5.10.2023\n\nNápad:\n\n- Vytvoriť novú databázu pre vyhodnotenie získavania informácií v slovenskom jazyku.\n- Predošlá práca je https://nlp.kemt.fei.tuke.sk/language/categorizednews\n\nÚlohy:\n\n- Definovať úlohu pre ktorú chceme vytvoriť overenie. Ako by mala vyzerať \"otázka\"? Ako by mala vyzerať \"odpoveď\"? Čo znamená dobrá odpoveď?\n- Zostaviť prehľad existujúcich databáz pre vyhodnotenie vyhľadávania. Napíšte si poznámky.\n- Vyberte vhodnú databázu na \"klonovanie\".\n- Zvážiť vytvorenie strojovo preloženej databázy na porovnanie.\n- 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\".\n\nStretnutie 28.9.2023\n\nStav:\n\n- Naindexovaná nová verzia Wikipédie (14.8.2023). Sentence Transformers a BM25.\n- Otázky sú v angličtine aj v slovenčine.\n- Zistili sme, že otázky v SK QUAD sú veľmi jednoduché.\n\nÚlohy:\n\n- Dajte skripty na parsovanie Wiki na GIT.\n- Vytvorte a vyhoddnoťte kros linguálny QA systém. Otázky v slovenčine by f", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-7", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "aj v slovenčine.\n- Zistili sme, že otázky v SK QUAD sú veľmi jednoduché.\n\nÚlohy:\n\n- Dajte skripty na parsovanie Wiki na GIT.\n- Vytvorte a vyhoddnoťte kros linguálny QA systém. Otázky v slovenčine by fungovali aj pre anglickú databázu.\n- 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.\n- 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\nNápad:\n\n- Vytvoriť alebo vybrať zložitejšie otázky a vyhodnotiť ich.", + "text_length": 837 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-8", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "# Diplomovy projekt 1\n\nNápady na semester (spolu s K. Sopkovicom)\n\n- Chceme rozbehat demo vyhľadávanie. Existuje streamlit verzia.\n- 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.\n- Chceme využiť aj QA model - využiť ho v deme.\n- Chcemem vyhodnotiť výkonnosť celého systému - všetky komponenty naraz. Aké sú možné metriky.\n- Pripraviť slovenskú databázu STS a NLI.\n- Vypracovať prehľad metód na vyhodnotenie IR systémov a kompletných systémov QA.\n- Preskúmať možnosti zlepšenia - Sentence Transformer skripty pre doménovú adaptáciu a multilinguálne modely.\n- Vypracovať prehľad článkov, ktoré riešia kompletné sémantické vyhľadávanie.\n- Podrobne opísať proces fungovania a trénovanie sentence transformera. Princíp dual-encoder, cross-encoder.\n- Pripraviť multi-lingual experiment na vyhľadávanie, napr. Angličtina, Slovenčina, Nemčina.\n- Vyskúšať vyhľadávanie v inej doméne (noviny, mestské dokumenty).\n\nStretnutie 26.6.\n\nStav:\n\n- Demo funguje, je odladene aj nasadene\n- Praca naa pisomenj casti pokracuje\n\nÚlohy:\n\n- Pripraviť vyhľadávanie čislo anglické,", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-9", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "nie v inej doméne (noviny, mestské dokumenty).\n\nStretnutie 26.6.\n\nStav:\n\n- Demo funguje, je odladene aj nasadene\n- Praca naa pisomenj casti pokracuje\n\nÚlohy:\n\n- Pripraviť vyhľadávanie čislo anglické, čislo slovenské a slovensko anglické multilinguálne. \n- 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. \n- Cieľ je aby bola diplomovka publikovateľná.\n- Pokračovať v písaní. Text by mal byť podkladom na prezentované experimenty.\nMal by vysvetľovať základné pojmy. Pozrite si články na tému \"information retrieval in wikipedia\".\n\nStretnutie 27.3.2023\n\nStav:\n\n- Jednoduché demo stremalit fuguje - vektorové vyhľadávanie pomocou transformers utils.semantic_search.\n- 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.\n- Pokračovať v písomnej časti.\n\nZásobník úloh:\n\n- util_semanticsearch vymentiť za qdrant alebo faiss alebo iné.\n- Určiť prah, na základe ktorého sa zistí, že o", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-10", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "a otázku aj najrelevantnejšie dokumenty.\n- Pokračovať v písomnej časti.\n\nZásobník úloh:\n\n- util_semanticsearch vymentiť za qdrant alebo faiss alebo iné.\n- Určiť prah, na základe ktorého sa zistí, že odpoveď nie je v databáze.\n- Neskôr dorobiť \"fallback\" na \"fuzzy\" vyhľadávanie relevatných dokumentov.\n\nStretnutie 20.2.2023\n\nÚlohy:\n\n- [-] Spravte QA demo pomocou streamlit. Najprv vytvorte faiss index, do pamäte nahrajte všetky paragrafy.\n- [ ] 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.\n- [ ] Modely sa nachádzajú na HF TUKE-DeutscheTelekom.\n\nZásobník:\n\n- Na uloženie odsekov a vektorov vyberte a použite vhodnú databázu (faiss, sqlite, qdrtant, jina ....).\n- Implementujte stránkovanie (ak bude potrebné), zlepšite výzor.\n\nStretnutie 17.2.2023\n\nÚlohy:\n\n- Zoberte existujúci model bi-encoder. Indexujte všetky odseky do vektorovej databázy FAISS. \n- 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. \n- Potom v najlepších dokumentoch vykonajte QA vyhľadávanie. \n- Zo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-11", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "o 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. \n- Potom v najlepších dokumentoch vykonajte QA vyhľadávanie. \n- Zobrazte výsledky používateľovi.\n\nZásobník úloh:\n\n- Pripravte experimenty, kde prezentujeme komponenty, porovnáme rôzne možnosti do podoby článku.", + "text_length": 344 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-12", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "# Vedecky projekt 2022/23\n\nSúvisiace práce:\n\n- Matej Kobyľan\n- Suchanič\n- Kristián Sopkovič\n\nCiele na semester:\n\n- Zistiť ktorá knižnica je dobrá a ktorý model je dobrý na slovenské vyhľadávnaie vo wikipédii pre QA. \n - Možnosti pre knižnice sú: JinaDocArray, Elasticsearch-Opensearch, Faiss, Haystack\n - Možnosti pre modely sú: DPR, LABSE, LASER, Iný Sentence Transformer, WordEmbedding.\n- Vypracovat demonštračné vyhľadávanie v slovenskej wikipédii.\n- Vypracovat spravu o precitanych clankoch spolu s odkazmi, cca 4 strany\n- Vyslovit ciele diplomovej prace.\n\nKlucove slova:\n\n- Jina, Rasa, Vektorova Databaza\n- Hierarchicke vztahy medzi dokumentami\n- Faiss, Elasticsearch-Opensearch, Fasttext\n- https://aclanthology.org/2020.emnlp-main.550/, Dense Passage Retrieval for Open-Domain Question Answering.\n- Urobit demo vyhladavanie v slovenskej wikipedii.\n- LABSE, LASER embedding model\n- multi language IR\n\nStretnutie 9.1.2023\n\nStav:\n\n- Vyrobená tabuľka s experimentami pre rôzne modely a rôzne veľkosti vrátenej množiny k\n- Zatiaľ najlepší je model BM25\n\nÚlohy:\n\n- Pripravte experiment v ktorom najprv vyhľadáte množinu k=(napr. 100, 200 alebo 50) prvkov pomocou bm25, výsledky zoradíte", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-13", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "rôzne veľkosti vrátenej množiny k\n- Zatiaľ najlepší je model BM25\n\nÚlohy:\n\n- 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.\n- 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. \n\nZásobník úloh:\n\n- Vytvoriť vyhľadávanie v dvoch krokoch. Najprv \"nahrubo\", potom výsledky znova zoradiť.\n- 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. \n- Vyhodnotiť modely v adresári crossencoder.\n\nStretnutie 19.12.2022\n\nStav:\n\n- Spustený skript pre vyhodnotenie\n\nÚlohy:\n\n- 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\n- V testovacom scenári vyskúšqjte viacero modelov. WordEmbedding, LABSE, SlovakBERT, BN25\n- V texte opíšte použíté modely, dataset aj testova", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-14", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "adávaní nás zaujíma k najlepších výsledkov. K=1,5,10,20,30\n- V testovacom scenári vyskúšqjte viacero modelov. WordEmbedding, LABSE, SlovakBERT, BN25\n- V texte opíšte použíté modely, dataset aj testovací scenár.\n- Z výsledky by mohol byť konferenčný článok.\n\nZásobník úloh:\n\n- Natrénujte model Kharpukin DPR, podľa Facebook skriptov alebo pomocou Nvidia Deep learning examples.\n- Vyhodnotte celý proces QA na vrátených výsledkoch.\n\nStretnutie 10.11.2022\n\nStav:\n\n- Konvertovaný SCNC do JSON.\n- Práca s Jina-Elasticsearch pre uloženie embeddingov.\n- Prečítaný a spoznámkovaný článok \"Making Monolingual Sentence Embeddings Multilingual using Knowledge Distillation\".\n\nÚlohy:\n\n- Rozbehať skript SlovakRetrieval ktorý využíva FAISS. V skripte je už aj BM25, ostatné modely aj vyhodnotenie Recall na množine SK QUAD.\n- Vytvoriť slovenské vyhľadávanie pomocou WordEmbeding. Použiť slovenský Spacy Model.\n- Prečítať a spoznámkovať ďalšie články z https://github.com/UKPLab/sentence-transformers\n\nZasobnik uloh:\n\n- Dotrénovať sentence transformer na slovenský jazyk. Ako?\n\nStretnutie 14.10.2022\n\nUlohy:\n\n- Precitat si clanok, napiste poznamky\n- Navrhnite na co by ste sa chceli sustredit.\n\nStav:\n\n- Naštudovan", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-15", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 15, + "text": "h:\n\n- Dotrénovať sentence transformer na slovenský jazyk. Ako?\n\nStretnutie 14.10.2022\n\nUlohy:\n\n- Precitat si clanok, napiste poznamky\n- Navrhnite na co by ste sa chceli sustredit.\n\nStav:\n\n- Naštudovaný článok Kharpukin Dense Passage Retrieval\n- Naštudované Jina-DocArray.\n- Je k dispozícci ES na školskom servri - aj tak je lepšie pracovať na vlastnej inštancii.\n\nÚlohy:\n\n- Dodaný skript na indexovanie SCNC do ES. Upravte skript na Jina DocArray\n- Skúste zaindexovať slovenské dokumenty pomocou JinaDoc Array. Vyberte vhdoný existujúci model, napr. LABSE.\n- Skúste ich vyhľadávať.\n- 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?\n\nZásobník úloh:\n\n- skúste zaindexovať slovenské dokumenty pomocou Elasticsearch. \n- Zistite ako funguje vektorové vyhľadávanie v ES.", + "text_length": 834 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-16", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 16, + "text": "# Bakalárska práca 2022\n\n- [Repozitár](https://git.kemt.fei.tuke.sk/ms111of/bp2022)\n\nNázov: Indexovanie slovenského textu pomocou Elasticsearch\n\n1. Vypracujte prehľad metód pre získavanie informácií.\n2. Vytvorte vyhľadávací index dokumentov zo slovenského internetu.\n3. Vytvorte demonštračnú webovú aplikáciu pre vyhľadávanie na slovenskom internete.\n4. Navrhnite zlepšenia vyhľadávania.", + "text_length": 387 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-17", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 17, + "text": "## Bakalársky projekt 2021\n\n4.3.2022\n\n- Prebehlo viacero stretnutí\n- Spravená Flask aplikácia, funguje, doplnené stránkovanie, zobrazenie otázok samosttne aj s ohodnotením , zobrazenie článku. Vyhľadanie podľa ľubovoľnej otázky.\n- Urobený compose pre ES a Kibanu\n\nÚlohy:\n\n- Dorobiť Dockerfile pre web aplikáciu.\n- Pracovať na texte práce.\n\nStretnutie 18.2.2022\n\n- Boli viaceré stretnutia\n- Aplikácia funguje\n\nÚlohy:\n\n- Doplniť stránkovanie, vyhľadanie vo voľnej otázke, zobrazenie článku.\n- Pracovač na texte.\n\nStretnutie 7.1.2022\n\n- Vytvorená Flask aplikácia a Dockerfile\n- Urobené jednoduché vyhodnotenie pomocou počtu výsledkov. \n\nÚlohy:\n\n- Urobte konfiguráciu url Elasticsearch pomocou premennej prostredia alebo argumentu príkazového riadka do Dockerfile.\n- Môžete dať všetko do docker-compose.\n- Urobte vyhodnotenie vyhľadávania pomocou Precision-recalll. Pozrite si DP Ján Holp. Zaindexujete testovaciu množinu. V testeovacej množine sú vzorové otázky a vzorové vyýsledky. Zoberiete vzorovú otázu a ku nej vyhľadáte výsledky. Porovnáte Vašu množinu a vzorovú množinu. zistíte veľkosť ich prieniku. Podľa veľkosti vzorovej množiny a výsledkovej množiny vypožítate precision-recall.\n- Dorobte p", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-18", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 18, + "text": "tázu a ku nej vyhľadáte výsledky. Porovnáte Vašu množinu a vzorovú množinu. zistíte veľkosť ich prieniku. Podľa veľkosti vzorovej množiny a výsledkovej množiny vypožítate precision-recall.\n- Dorobte prezentáciu\n- Do práce pridajte opis toho ako funguje Flask aplikácia a ako komunikuje s Elasticsearch. \n\nStretnutie 3.12.2021\n\n- Podarilo sa zaindexovať dokument do ES pomocou Python skriptu\n\nÚlohy:\n\n- Zaindexujte viac dát\n- Vytvorte webové rozhranie pre vyhľadávanie. Flaśk aplikácia. \n\nStretnutie 26.11.2021\n\n- Vypracované skripty na vkladanie, ale zatiaľ nefungujú.\n\nÚlohy:\n\n- Zoznámte sa s ES API\n- Prejdite tutoriál http://blog.adnansiddiqi.me/getting-started-with-elasticsearch-in-python/\n\nStretnutie 12.11.2021\n\nPokračujú práce na písomnej časti, na praktickej zatiaľ nie.\n\nÚlohy:\n\n- Zlepšiť štruktúru práce. \n- Doplniť do textu odkazy na literatúru.\n\nCiele na semester:\n\n- vedieť zaindexovať väčšie množstvo slovenských textov.\n- vytvoriť funkčné webové demo na vyhľadávanie v týchto textoch.\n\nStretnutie 22.10.2021:\n\n- Pokračovanie na otvrených úlohách - problémy s Essential Data Docker setup\n\nÚlohy:\n\n- Nainštalovať ES a Kibana, upravte compose na https://alysivji.github.io/elasticsearch-", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-19", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 19, + "text": "Stretnutie 22.10.2021:\n\n- Pokračovanie na otvrených úlohách - problémy s Essential Data Docker setup\n\nÚlohy:\n\n- Nainštalovať ES a Kibana, upravte compose na https://alysivji.github.io/elasticsearch-kibana-with-docker-compose.html\n- Pozrieť si knihu https://nlp.stanford.edu/IR-book/ a urobiť z nej poznámky do teoretickej časti BP. Odvolávajte sa na túto knihu v texte.\n- Skúste cez Kibanu zaindexovať jeden text a vyhľadať niečo. \n- Preštudujte si ES Analyzer.\n\nStretnutie 15.10.2021\n\nStav:\n\n- Nainštalovaný ES na UVT virtuálke s dostatkom miesta.\n- Naštudovaný Docker.\n\nÚlohy:\n\n- Pokračovať v otvorených úlohách.\n- Vyberte vhodnú klientskú knižnicu pre prácu s ES.\n- Pozrite podporu slovenčiny na ES od [Essential Data](https://github.com/essential-data/elasticsearch-sk).\n\nStretnutie 1.10.2021\n\nStav: \n\n- Urobený GIT, Overleaf aj virtuálny stroj na tuke cloud. \n\nÚlohy:\n\n- Pokračovať v otvorených úlohách.\n\nStretnutie 24.9.2021\n\nStav:\n\n- Urobené poznámku ku knihe \"Learning to Rank\".\n- Naštudované Cassandra.\n\nÚlohy:\n\n- Kódy dávajte na GIT do repozitára bp2022\n- Začnite pracovať na Flask Web aplikácii. Aplikácia by mala vedieť zadať dotaz a zobraziť výsledky vyhľadávania.\n- Vytvorte skript na", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-20", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 20, + "text": "né Cassandra.\n\nÚlohy:\n\n- Kódy dávajte na GIT do repozitára bp2022\n- Začnite pracovať na Flask Web aplikácii. Aplikácia by mala vedieť zadať dotaz a zobraziť výsledky vyhľadávania.\n- Vytvorte skript na indexovanie wikipédie do ES\n- Napíšte si osnovu bakalárskej práce a dopíšte do nej relevantné texty ktoré máte.\n\nZásobník úloh:\n\n- Vytvorte si virtuálny stroj na cloud.tuke.sk\n- Web aplikácia by mala byť Dockerizovaná - vytvoríme Docker image.\n- Vytvorte si pracovné prostredie s ElasticSearch a docker-compose: nainštalujete Docker Swarm", + "text_length": 539 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-21", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 21, + "text": "## Vedecký projekt 2021\n\nNávrh na zadanie bakalárskej práce:\n\n1. Vypracujte teoretickú úvod do problematiky získavania informácií.\n2. Navrhnite spôsob vytvorenia indexu vybranej databázy a implementujte vyhľadávanie.\n3. Vykonajte niekoľko experimentov a identifikujte mesto pre zlepšenie vyhľadávania. \n\nPodobná práca [Ján Holp](/students/2016/jan_holp)\n\nKlaudové služby pre získavanie informácií\n\nCieľom projektu je zistiť ako fungujú klaudové služby pre umelú inteligenciu a ako fungujú webové vyhľadávače.\n\nÚlohy:\n\n- Zistite čo je to získavanie informácií.\n- Oboznámte sa s Azure Cognitive Search a získajte prístup k službe. Pre prihlásenie môžete použiť Váše študentské prihlasovacie údaje.\n- Vypracujte minimálne jeden tutoriál pre prácu s Azure Cognitive Search.\n- Vypracujte krátky report na 2 strany kde napíšete čo ste robili a čo ste sa dozvedeli.\n\nZásobník úloh:\n\n- Vytvorte index a vyhľadávanie na ZP Wiki.\n- Napíšte tutoriál o tom ako ste to dokázali.\n\nStretnutie 4.6.\n\n- Dohodli sme sa na vytvorení vyhľadávacieho systému za použitia crawlera, indexu a webového rozhrania.\n- Vytvorený prístup na websucker-pip git,\n- Vytvorený prístup na idoc \n- Pre vedúceho : vytvoriť prístup na cas", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-22", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 22, + "text": "na vytvorení vyhľadávacieho systému za použitia crawlera, indexu a webového rozhrania.\n- Vytvorený prístup na websucker-pip git,\n- Vytvorený prístup na idoc \n- Pre vedúceho : vytvoriť prístup na cassandra, dorobiť deployment elasticsearch.\n\nÚlohy:\n\n- Zoznámiť sa so zdrojovými kódmi crawlera\n- Prečítať si knihu \"Learning to Rank for Information Retrieval and Natural Language Processing: Second Edition\"\n- Nainštalujte si u seba cassandru a vyskúšajte crawler, zistite ako pracuje Cassandra.\n- Porozmmýšľajte, ako vytvoriť vyhľadávací index pre text uložený v cassandre. Index môže byť vytvorený pomocou elasticsearch alebo podobného systému.\n\nDo budúcnosti:\n\n- Zaindexovať texty\n- Vytvoriť webové rozhranie pre vyhľadávací index.\n\nStretnutie 7.5.\n\nStav:\n\n- Vytvorená SQL databáza pomocou az príkazov (SQL Database).\n- Nainštalované Azure Data Studio, vytvorená databáza študentov.\n- Vytvorený nový ACS index a naindexovaná databáza.\n- Azure Blob funguje iba cez Portál kvôli Location. Azure Data Storage. Všetky README sa dali do jedného súboru a to sa zaindexxovalo pomocou ACS.\n- [Dokumetácia](vp2021) je rozsiahla, podmienky na zápočet sú splnené.\n\nStretnutie 23.4.\n\nStav:\n\n- vytvorené ACS pre", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-23", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 23, + "text": "Storage. Všetky README sa dali do jedného súboru a to sa zaindexxovalo pomocou ACS.\n- [Dokumetácia](vp2021) je rozsiahla, podmienky na zápočet sú splnené.\n\nStretnutie 23.4.\n\nStav:\n\n- vytvorené ACS pre vyhľadávanie vo vzorovej databáze hotelov.\n- vytvorený prázdny index pre vyhľadávanie na Wiki.\n- vytvorená databáza SQL Database - zatiaľ nefunguje. Chýba prístup na shell pre vytvorenie.\n- vytvorený Azure BLOB - zatiaľ nefunguje. Vytvorená tabuľka so základnými informáciami -id, meno,... Nefunguje indexovanie blobu - problém s názvami blobu.\n- zpwiki viem pridať do kontajnera - statický WEB blob kontajner.\n- Vyzerá to tak, že ACS priamo nepracuje s PostgreSQL ani s Mariadb\n\nMožnosti:\n\n- Pokračovať v ceste pomocou ACS.\n- Využiť Grav Plugin TNT Search.\n- Vymyslieť niečo celkom iné.\n\nÚlohy:\n\n- Zapracovať na indexovaní pomocou Azure SQL.\n- Porozmýšľať ako ďalej - chceme použiť hotové riešenie alebo niečo vymyslieť. Napríklad Elasticsearch - vyžaduje si Python, Javascript. \n\nStretnutie 9.4:\n\nStav:\n- Vytvorená sada tutoriálov o Azure a Azure Cognitive Search. Dobré na ZKT. Tutorály sú na [GIthube](https://github.com/michal552703/Vedecky-projekt).\n- Zistili sme, že ACS indexuje iba z Azur", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/README.md::chunk-24", + "document_path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 24, + "text": "Stav:\n- Vytvorená sada tutoriálov o Azure a Azure Cognitive Search. Dobré na ZKT. Tutorály sú na [GIthube](https://github.com/michal552703/Vedecky-projekt).\n- Zistili sme, že ACS indexuje iba z Azure Storage.\n\nÚlohy:\n\n- Vytvoriť pokusný Azure Storage zdroj. Môže to byť Azure Blob alebo Azure Table alebo Azure SQL.\n- Použiť indexer na indexovanie obsahu zdroja.\n- Zapísať postup do súboru MD. \n\nStretnutie 19.3\n\nStav:\n\n- Vytvorený prístup na Azure Portal\n\nÚlohy:\n\n- Vypracujte minimálne jeden tutoriál pre prácu s Azure Cognitive Search.", + "text_length": 539 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/vp2021/README.md::chunk-0", + "document_path": "pages/students/2019/michal_stromko/vp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "# Správa o vedeckom projekte\n\nV tomto vedeckom projekte som sa pokúsil o zaindexovanie stránky [ZP WIKI](https://zp.kemt.fei.tuke.sk/taxonomy?name=category&val=project) pomocou nástroja Azure Cognitive Search. Zároveň popri zisťovaní a vytváraní indexu som spravil pre ostatných študentov krátke tutoriály. \n\nTutoriáloch, ktoré som vytvoril nájdete:\n- aktivácia Azure konta [Activation](tutorials/create_acount_on_azure.md)\n- Pridanie aplikácie Azure Cognitive Search na portál [Create ACS](tutorials/create_azure_cognitive_search.md)\n- Vytvorenie indexu v aplikácii Azure Cognitive Serch [Create index](tutorials/create_index.md)\n- základné inštalovanie aplikácii v terminály pre MAC OS s procesorom M1 [Install](tutorials/install_apk_mac_os.md)", + "text_length": 747 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/vp2021/tutorials/README.md::chunk-0", + "document_path": "pages/students/2019/michal_stromko/vp2021/tutorials/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "#### V tomto adresáry sú uložené všetky tutoriály", + "text_length": 49 + }, + { + "chunk_id": "pages/students/2019/michal_stromko/vp2021/tutorials/img/README.md::chunk-0", + "document_path": "pages/students/2019/michal_stromko/vp2021/tutorials/img/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "#### V tomto adresáry sú uložené všetky fotky ku tutoriálom.", + "text_length": 60 + }, + { + "chunk_id": "pages/students/2019/patrik_pokrivcak/README.md::chunk-0", + "document_path": "pages/students/2019/patrik_pokrivcak/README.md", + "title": "Patrik Pokrivčák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "hate" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2019", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2019/patrik_pokrivcak/README.md::chunk-1", + "document_path": "pages/students/2019/patrik_pokrivcak/README.md", + "title": "Patrik Pokrivčák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "hate" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca\n\nTéma:\n\nRozpoznávanie nenávistnej reči pomocou veľkých jazykových modelov\n\nZadanie:\n\n1. Vypracujte prehľad veľkých jazykových modelov s podporou slovenčiny.\n2. Vypracujte prehľad metód rozpoznávania nenávistnej reči pomocou veľkých jazykových modelov.\n3. Vyberte vhodnú dátovú množinu pre rozpoznávanie nenávistnej reči a pomocou nej vhodnou metrikou porovnajte viacero jazykových modelov pre úlohu rozpoznávania nenávistnej reči.\n4. Vyhodnoťte experimenty a navrhnite zlepšenia rozpoznávania. \n\nCieľe:\n\n- Naučiť sa rozpoznávať nenávistnú reči HS pomocou LLM - lokálnych alebo komerčných.\n- Zlepšiť chopnosti LLM pre rozpoznávanie HS - dotrénovaním alebo promptingom.\n- Vytvoriť demo\n- Výsledky prezentovať na konferencii - alebo článku.\n\nNápad:\n\n- Generovanie nenávistnej reči pre účely trénovania.\n- Rozpoznávanie HS pomocou embeding modelov, few shot alebo dotrénovanie.\n\nSúvisiaca téma:\n\n- [Python](/topics/python)\n- [Hate Speech](/topics/hatespeech)\n- [Tetiana Mahorian](/students/2022/tetiana_mohorian)\n\nStretnutie 15.10.\n\nStav:\n\n- Staré poznámky.\n\nÚlohy:\n\n- Navrhnite prompt na klasifikáciu nenávistnej reči a vyhodnotte, aký presný je model na množine https://huggingface.c", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/patrik_pokrivcak/README.md::chunk-2", + "document_path": "pages/students/2019/patrik_pokrivcak/README.md", + "title": "Patrik Pokrivčák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "hate" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ents/2022/tetiana_mohorian)\n\nStretnutie 15.10.\n\nStav:\n\n- Staré poznámky.\n\nÚlohy:\n\n- 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\n- Pokračujte v písaní DP. Použite odkazy na odborné články,\n\nZásobník úloh:\n\n- Dotrénujte model na klasifikáciu nenávistnej reči.\n- Dotrénujte model na generovanie nenávistnej reči.\n- Vyskúšajte SentenceTransformer (me5) na klasifikáciu.", + "text_length": 566 + }, + { + "chunk_id": "pages/students/2019/patrik_pokrivcak/README.md::chunk-3", + "document_path": "pages/students/2019/patrik_pokrivcak/README.md", + "title": "Patrik Pokrivčák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "hate" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Diplomový projekt 2024\n\nStretnutie 10.5.2024\n\nStav:\n\n- Poznámky o neurónových sieťach a rozbehané HF transformers.\n- Práca s Kaggle.\n\nÚlohy:\n\n- Pokračovať v otvorených úlohách a štúdiu.\n- [ ] 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.\n- 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.\n\nZásobník úloh:\n\n- Vyskúšajte Ollama a niekoľko jazykových modelov (LLAMA3, mistral, ) pre few-shot rozpoznávanie HS.\n- Dotrénujte embedding model na HS detection\n- Pripravte dáta na vyhodnotenie few shot klasifikácie.\n\nStretnutie 5.4.\n\nStav:\n\n- Začiatok štúdia Python a LMM. \n\nÚlohy:\n\n- [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.\n- [-] Zistite, ako pracuje model GPT. Zistite čo je to prompting. Navrhnite \"prompt\" pre ChatGPT ktorý by klasifikoval nenávistnú reč.\n- [x] Oboznámte sa s knižnicou HF transformers. Nainštalujte si ju. Prejdite si jeden alebo 2 tutoriály.\n- [ ] Zistite ako f", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/patrik_pokrivcak/README.md::chunk-4", + "document_path": "pages/students/2019/patrik_pokrivcak/README.md", + "title": "Patrik Pokrivčák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "hate" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "ting. Navrhnite \"prompt\" pre ChatGPT ktorý by klasifikoval nenávistnú reč.\n- [x] Oboznámte sa s knižnicou HF transformers. Nainštalujte si ju. Prejdite si jeden alebo 2 tutoriály.\n- [ ] 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\n\nStretnutie 15.2.\n\nÚlohy:\n\n- [x] Nainštalujte si prostredie Anaconda. Naučiť sa lepšie programovať v jazyku Python.\n- [x] Prečítajte si Dive into Python 3.\n- [x] Priečítajte si Dive into Deep learning.\n- [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.\n- [-] Zistite, aké existujú veľké jazykové modely a ako pracujú. Napíšte o tom poznámky na 2 strany.", + "text_length": 805 + }, + { + "chunk_id": "pages/students/2019/samuel_horani/README.md::chunk-0", + "document_path": "pages/students/2019/samuel_horani/README.md", + "title": "Samuel Horáni", + "categories": [ + "vp2021", + "bp2022" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2019\n\nNávrh na zadanie BP:\n\n1. Vypracujte teroretický úvod do modelovania dialógu a povedzte ake metódy sa aktuálne používajú.\n2. Navrhnite a vytvorte dialógový systém komunikujúci v slovenskom jazyku pre úlohu objednania jedla z donáškovej služby.\n3. Vykonajte sadu experimentov a dialógovým systémom a identifikujte miesta pre zlepšenie.\n\nNápady na balakársku prácu:\n\n- chatbot pre objednanie jedla.\n- chatbot s informáciami pre cestovateľov.\n- Urobenie web rozhrania.\n- dá sa dorobiť aj rečové rozhranie.\n- dá sa to prepojiť aj na QA systém.\n\nVýsledky:\n\n- [Repozitár s webovou aplikáciou](https://git.kemt.fei.tuke.sk/sh662er/rasa-flask-website)\n- [Repozitár s chatbotom](https://git.kemt.fei.tuke.sk/sh662er/Rasa)", + "text_length": 738 + }, + { + "chunk_id": "pages/students/2019/samuel_horani/README.md::chunk-1", + "document_path": "pages/students/2019/samuel_horani/README.md", + "title": "Samuel Horáni", + "categories": [ + "vp2021", + "bp2022" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalársky projekt 2021\n\nCiele:\n\n- Vypracovať draft B. práce.\n- Mať funkčné demo vo forme nasadenej webovej aplikácie.\n\n---\n\n6.1.2022\n\n- Chatbot vie \"rezervovať\" stôl - rozpoznať entitu s názvom stola.\n- Urobený Dockerfile pre Rasa bot\n\nÚlohy:\n\n- Dorobiť Dockerfile pre Flask App\n- Skúsiť urobiť docker-compose.yaml (Swarm Mode Docker)\n- Pre deployment je dobré zmeniť databázu na Postgres. Postgres sa robí \"jednoducho\" cez compose. \n- Upraviť konfiguráciu do podoby vhodnej na nasadenie. Nasadenie aplikácia bude mať inú konfiguráciu (napr. databázu) ako aplikácia vo vývoji.\n- Naučte robota hovoriť o aktuálnom jedálnom lístku. \n - čo mi ponúknete na obed?\n - Aké máte menu na pondelok?\n - čo obsahuje \"čiernohorský rezeň\"?\n- Naučte robota hiečo o reštaurácii.\n - Ako sa tam dostanem?\n- Naučte robota aby vedel pomôcť človeku. \n - Čo vieš urobiť?\n- Pracujte na prezentácii.\n- Pracujte na písomnej časti.\n\n---\n\nStretnutie 17.12.2021\n\nStav:\n\n- Pridané testy na RASA test, urobené vyhodnotenie pomocou konfúznej matice.\n\nÚlohy:\n\n- [x] Pridajte schopnosť rozlišovať pomenované entity typu LOC. Spacy model by to mal vedieť. \n- [ ] Vylepšite chatbota do prvej funkčnej verzie.\n- [x] P", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/samuel_horani/README.md::chunk-2", + "document_path": "pages/students/2019/samuel_horani/README.md", + "title": "Samuel Horáni", + "categories": [ + "vp2021", + "bp2022" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "yhodnotenie pomocou konfúznej matice.\n\nÚlohy:\n\n- [x] Pridajte schopnosť rozlišovať pomenované entity typu LOC. Spacy model by to mal vedieť. \n- [ ] Vylepšite chatbota do prvej funkčnej verzie.\n- [x] Pripravte deployment pomocou Docker.\n- [ ] Dajte vyskúšať chatbota tretej osobe a zapíšte si story.\n\n---\n\nStretnutie 10.12.\n\n- Naštudujte si https://rasa.com/docs/rasa/testing-your-assistant\n- Pokračujte v otvorených úlohách.\n\n---\n\nStretnutie 3.12.2021\n\nStav: \n\n- Teoretická čast BP je v celkom dobrom stave. Prebehlo viacero stretnutí k BP.\n\nUlohy:\n\n1. [x] Navrhnite a napíšte intenty a utterance pre chatbota\n2. [x] Natrénujte model, výskúšajte ho, opravte ho.\n3. [x] Vytvorte testovacie stories a vyhonotte model.\n4. [x] Kódy dajte na GIT\n5. [x] Pripravte deployment pomocou Docker.\n\n- - -\n\nStretnutie 12.11.2021\n\nVyhodnotenie zatiaľ nefunguje.\n\nÚlohy:\n\n- [x] Pokračovať v písaní práce.\n- [x] Dokončiť web demo.\n- [x] Vytvorte dockerfile.\n\nZásobník úloh:\n\n- Vyhdonotiť NLU (úlohy z 12.10.)\n\nStretnutie 22.10.2021\n\n- Urobené webové rozhranie pre analýzu konverzácií.\n\nPokračovať v otvorených úlohách.\n\nStretnutie 12.10.\n\nStav:\n\n- Vytvorené prepojenie s databázou a RASA pre uchovanie logov z konverz", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/samuel_horani/README.md::chunk-3", + "document_path": "pages/students/2019/samuel_horani/README.md", + "title": "Samuel Horáni", + "categories": [ + "vp2021", + "bp2022" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "tie 22.10.2021\n\n- Urobené webové rozhranie pre analýzu konverzácií.\n\nPokračovať v otvorených úlohách.\n\nStretnutie 12.10.\n\nStav:\n\n- Vytvorené prepojenie s databázou a RASA pre uchovanie logov z konverzácií.\n- Rozpracovaná knižnica pre prácu s databázou konverzácií.\n- Vyskúšaný nový Spacy jazykový model.\n- Vypracovaný report pre odovzdanie v 4. týždni - šablóna, osnova, krátky článok.\n\nÚlohy:\n\n- [x] Vyhodnotiť NLU model. \n- [x] Pripraviť sadu na vyhodnotenie NLU a spôsob ako ju v skripte vykonať. Vytvoriť niekoľko modelových situácií a sledovať, ako \"dobre\" bude chatbot reagovať. \n- [x] Zistiť z odbornej literatúry akým spôsobom sa zvyčajne vyhodnocuje NLU úloha. Prečítajte si článok o NLU a napíšte ako sa vyhodnocuje NLU model. Nájdite anglickú databázu na vyhdonotenie NLU a pozrite sa ako vyzerá. [blog rasa](https://rasa.com/blog/evaluating-rasa-nlu-models-in-jupyter/).\n\nZásobník úloh:\n\n- [x] Analyzovať logy z konverzácií. Pripraviť export konverzácií v JSON pre spracovanie a HTML formáte pre zobrazenie.\n\n- - -\n\nStretnutie 1.10.\n\nStav:\n\n- Minulé úlohy dokončené: Osnova, \n- flask aplikácia je rozpracovaná a komunikuje s RASA.\n\nÚlohy:\n\n- [x] Vytvoriť Word s osnovou práce a do neho za", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/samuel_horani/README.md::chunk-4", + "document_path": "pages/students/2019/samuel_horani/README.md", + "title": "Samuel Horáni", + "categories": [ + "vp2021", + "bp2022" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "áte pre zobrazenie.\n\n- - -\n\nStretnutie 1.10.\n\nStav:\n\n- Minulé úlohy dokončené: Osnova, \n- flask aplikácia je rozpracovaná a komunikuje s RASA.\n\nÚlohy:\n\n- [x] Vytvoriť Word s osnovou práce a do neho zapísať relevantné texty.\n- [x] Pokračujte na Flask aplikácii\n- [x] Zistite čo je to Dockerfile.\n\n- - -\n\nStretnutie 24.9.\n\nStav: \n\n- Rozpracovaná flask aplikácia pre napojenie sa na RASA chatbota\n- Veľmi základná ale funkčná verzia RASA bota\n- Odovzdaný nový jazykový model Spacy.\n\nÚlohy:\n\n- [x] Dorobiť komunikáciu Flask a RASA s novým jazykovým modelom. Zdrojáky na GIT.\n- [x] Vytvorte draft práce, napíšte osnovu a pridajte tam relevantné texty ktoré máte.\n- [x] Nájdite aspoň jeden vedecký článok na tému \"dialogue management\" a napíšte čo ste sa dozvedeli.\n\n- - -", + "text_length": 766 + }, + { + "chunk_id": "pages/students/2019/samuel_horani/README.md::chunk-5", + "document_path": "pages/students/2019/samuel_horani/README.md", + "title": "Samuel Horáni", + "categories": [ + "vp2021", + "bp2022" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Vedecký projekt 2021\n\nDialógový systém pomocou RASA framework\n\nCieľom projektu je naučiť sa niečo o dialógových systémoch a oboznámiť sa so základnými nástrojmi.\n\n- Nainštalujte a oboznámte sa s RASA frameworkom. Pri inštalácii využite systém Anaconda.\n- Vyberte a prejdite najmenej jeden tutoriál pre prácu s RASA frameworkom.\n- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.\n- Výstup je tu https://git.kemt.fei.tuke.sk/sh662er/Rasa\n- - -\nStretnutie 16.6.2021\n\nStav:\n\n- Stránka s UI je vo Flask\n- Problém je so stavom spojenia s RASA servrom.\n- - -\nStretnutie 6.5.2021\n\n- prebehla aj Komunikácia cez teams a email.\n- Vyskúšaný TUKE spacy model, ide v poriadku pre všetky intenty.\n\nÚlohy:\n\n- [x] podmienky na zápočet sú splnené - ale poprosím dokumentáciu konvertovať do Markdown a nahrať na GIT.\n- - -\nStretnutie 9.4.2021\n\nStav:\n\n- Vypracovaná dokumentácia.\n- Podarilo sa modifikovať systém tak že vie využiť slovenský fasttext word embedding model.\n- modifikácia využíva všeobecný spacy pipeline. Bolo potrebné anlyzovať zdrojové kódy spacy aby to išlo. \n\nÚlohy:\n\n- [x] Vyskúšať slovenský spacy model od vedúceho.\n- - -\nStretnutie 26.3.2021\n\nStav:\n\n- Prekl", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2019/samuel_horani/README.md::chunk-6", + "document_path": "pages/students/2019/samuel_horani/README.md", + "title": "Samuel Horáni", + "categories": [ + "vp2021", + "bp2022" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "ikácia využíva všeobecný spacy pipeline. Bolo potrebné anlyzovať zdrojové kódy spacy aby to išlo. \n\nÚlohy:\n\n- [x] Vyskúšať slovenský spacy model od vedúceho.\n- - -\nStretnutie 26.3.2021\n\nStav:\n\n- Preklad jazykového modelu z angličity do slovenčiny\n- Napísané pravidlá \"ako sa volám\".\n\nÚlohy:\n\n- [x] Fast tex model implememntovať\n- [x] napísať dokumentáciu\n- - -\nStretnutie 19.3.2021\n\nZásobník úloh:\n\n- [x] Doplniť podporu slovenčiny do fr. RASA\n\nStav:\n\n- Je nainštalovaný fr. RASA pomcou Anaconda\n- Je vytvorený základný jazykový model - v anglickom jazyku.\n- Prezretý video kanál s [RASA tutoriálom](https://www.youtube.com/watch?v=rlAQWbhwqLA&list=PL75e0qA87dlHQny7z43NduZHPo6qd-cRc)\n\nÚlohy:\n\n- [x] Skúsiť vytvoriť agenta ktorý komunikuje po slovensky. Najprv by sa preložili trénovacie príklady.\n- [x] Zistiť ako doplniť podporu slovenčiny do RASA. Komponenty ktoré máme k dispozícii sú: spacy model, fastext a glove word embedding model, BERT model (fresh and secret).", + "text_length": 971 + }, + { + "chunk_id": "pages/students/2020/david_kostilnik/README.md::chunk-0", + "document_path": "pages/students/2020/david_kostilnik/README.md", + "title": "Dávid Kostilník", + "categories": [ + "dp2025" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2020", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2020/david_kostilnik/README.md::chunk-1", + "document_path": "pages/students/2020/david_kostilnik/README.md", + "title": "Dávid Kostilník", + "categories": [ + "dp2025" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2025\n\nTéma:\n\nSémantické vyhľadávanie pomocou veľkých modelov\n\n- Tvorba datasetu prekladom, využitie existujúcich datasetov\n- Dotrénovanie existujúceho modelu typu BERT pomocou preloženého MS MARCO.\n\nCiele: \n\n- Zlepšiť RAG.\n\nZadanie:\n\n1. Vypracujte prehľad metód a modelov sémantického vyhľadávania pomocou neurónových sietí.\n2. Vyberte vhodnú dátovú množinu a dotrénujte jazykový model pre úlohu sémantického vyhľadávania v slovenčine. \n3. Navrhnite a vykonajte experimenty pre vyhodnotenie dotrénovaného modelu.\n4. Vyhodnotťte experimenty a navrhnite zlepšenia. \n\nStretnutie 13.2.2025\n\nStav:\n\n- Napísaná teória - neviem?\n- Práca na trénovaní mbert pomocou MS MARCO na úlohe extraktívnej QA čo nesedí so zadaním.\n- Fuzzy matching na vyhľadanie odpovede v datasete.\n\nÚlohy:\n\n- Pokračujte v otvorených úlohách týkajúcich sa SBERT, pracujte na texte DP.\n- Pozrite si a vyskúšajte repozitár https://github.com/hladek/slovak-retrieval, skript train-bi-mnlr.py. Upravte skript pre trénovnaie na MS MARCO. Natrénujte a vyhodnotte viac modelov.\n- Naštudujte si metódy vyodnotenia vektorových modelov (MTEB a beir). Vyskúšajte skripty pre vyhodnotenie v danom repozitári (MTEB a BEIR).\n- Skr", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/david_kostilnik/README.md::chunk-2", + "document_path": "pages/students/2020/david_kostilnik/README.md", + "title": "Dávid Kostilník", + "categories": [ + "dp2025" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "aie na MS MARCO. Natrénujte a vyhodnotte viac modelov.\n- Naštudujte si metódy vyodnotenia vektorových modelov (MTEB a beir). Vyskúšajte skripty pre vyhodnotenie v danom repozitári (MTEB a BEIR).\n- Skripty dajte na KEMT GIT.\n\nStretnutie 29.10.2024\n\nStav:\n\n- Prečítané nejaké články. Inak nič.\n\nÚlohy:\n\n- Podrobne si naštudujte a vyskúšajte framework Sentence Transformers https://sbert.net/index.html. Využite Google Colab na príklady.\n- 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.\n- Píšte si poznámky o tom čo ste zistili o SBERT. Použite odkazy na vedecké články. Vedecké články nájdete na Google Scholar.\n\nZásobník úloh:\n\n- pracujte na servri quadro a prostredí Anaconda.\n- Natrénujte slovenský BERT model na preloženej databáze MS MARCO (WIP K. Sopkovič).", + "text_length": 874 + }, + { + "chunk_id": "pages/students/2020/david_kostilnik/README.md::chunk-3", + "document_path": "pages/students/2020/david_kostilnik/README.md", + "title": "Dávid Kostilník", + "categories": [ + "dp2025" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Diplomový projekt 2024\n\nStretnutie 4.4. 2024\n\nÚlohy:\n\n- 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.\n- Oboznámte sa ako funguje rekurentná neurónová sieť. Sústreďte sa na typ RWKV. Urobte si poznmámy.\n- Vyskúšajte si túto NN. Začnite tu https://wiki.rwkv.com/basic/play.html\n\nZásobník úloh:\n\n- Oboznámte sa ako funguje NN Mamba.\n- Zostavte RAG systém s pomocou RWKV. \n- Oboznámte sa ako funguje Sentence Transformer.\n- Porovnajte embeddingy RWKV s inými metódami (Sentence Transformers)\n\nStretnutie 15.2.2024\n\nÚlohy:\n\n- Oboznámte sa s prácou [K. Sopkovič](/students/2019/kristian_sopkovic) a [M. Stromko](/students/2019/michal_stromko).", + "text_length": 731 + }, + { + "chunk_id": "pages/students/2020/jakub_kristian_lukas/README.md::chunk-0", + "document_path": "pages/students/2020/jakub_kristian_lukas/README.md", + "title": "Jakub Kristián Lukas", + "categories": [ + "bp2023" + ], + "tags": [ + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2020", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2020/jakub_kristian_lukas/README.md::chunk-1", + "document_path": "pages/students/2020/jakub_kristian_lukas/README.md", + "title": "Jakub Kristián Lukas", + "categories": [ + "bp2023" + ], + "tags": [ + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2023\n\nTéma: Systém pre rozpoznávanie nenávistnej reči v online diskusiách\n\nSúvisí s PhD prácou [Manohar Gowdru Shridhara](students/2021/manohar_gowdru_shridharu)\n\nNávrh na zadanie: \n\n- Preštudovať teóriu.\n- Zopakovať jednoduchý experiment pre rozpoznávanie nenávistnej reči v anglickom jazyku s pomocou frameworku HuggingFace transformers. \n- Vypracovať webové demo.\n\nStretnutie 3.111.\n\nStav:\n\n- štúdium Python. \n- Vyskúšané niektoré HF HS modely.\n\nÚlohy:\n\n- Prejdite si Streamlit tutoriál.\n- 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.\n\nStretnutie 7.10.\n\nStav:\n\n- Nainštalované prostredie Anadonda, HF, Pytorch\n- Zdieľaný priečinok [google drive](https://drive.google.com/drive/folders/1voblyxpAwsjNWBSFB-8F_heQCb5cGakJ?usp=sharing)\n- Vypracovaný text na 2 strany o BERT modeli. \n\nÚlohy:\n\n- [ ] Prečítať a napísať poznámky na jednu stranu. Pozrite si aj súvisiace články,\n - https://arxiv.org/abs/2004.06465 \n- [ ] Prejdite si HF Tutoriál.\n- [ ] Pozrite si https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit\n- [x] Prejdite si knihu Dive into Python", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/jakub_kristian_lukas/README.md::chunk-2", + "document_path": "pages/students/2020/jakub_kristian_lukas/README.md", + "title": "Jakub Kristián Lukas", + "categories": [ + "bp2023" + ], + "tags": [ + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ky,\n - https://arxiv.org/abs/2004.06465 \n- [ ] Prejdite si HF Tutoriál.\n- [ ] Pozrite si https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit\n- [x] Prejdite si knihu Dive into Python 3.\n- [x] Vyskúšať a preštudovať tieto modely\n - https://huggingface.co/Hate-speech-CNERG/dehatebert-mono-english\n - https://huggingface.co/Narrativa/byt5-base-tweet-hate-detection\n\nStretnutie 29.9.\n\nStav:\n- Oboznamili sme sa s projektom.\n\nÚlohy:\n\n- Zistiť ako funguje model BERT. Napísať o tom správu na 2 strany. Priložiť odkazy na odborné články.\n- Nainštalovať si HuggingFace Transformers a vypracovať tutoriál. HF Transformers bude vyžadovať CUDA a Pytorch. Dostupné to je na školskom servri idoc.\n - [x] Nainštalovať Anaconda\n - [x] Nainštalovať Pytorch\n - [x] nainštalujete transformers.\n - [ ] prejdide si tutoriál", + "text_length": 840 + }, + { + "chunk_id": "pages/students/2020/kamil_tomcufcik/README.md::chunk-0", + "document_path": "pages/students/2020/kamil_tomcufcik/README.md", + "title": "Kamil Tomčufčík", + "categories": [ + "dp2025" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2020", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2020/kamil_tomcufcik/README.md::chunk-1", + "document_path": "pages/students/2020/kamil_tomcufcik/README.md", + "title": "Kamil Tomčufčík", + "categories": [ + "dp2025" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2025\n\nCiel:\n\nOveriť a zlepšiť možnosti generovania jednotkových testov\n\nZadanie:\n\n1. Vypracujte prehľad veľkých jazykových modelov s podporou generovania programového kódu.\n2. Vyberte vhodnú dátovú množinu a metriku na vyhodnotenie generovania kódu.\n3. Navrhnite a vyhodnoťte experimenty s generovaním kódu s pomocou veľkého jazykového modelu. \n4. Identifikujte slabé miesta a navrhnite zlepšenia.\n\nStretnutie 12.12.2024\n\nStav:\n\n- Metrika Pass@K sa používa na vyhodnotenie generovaného kódu. Meria, koľko automatických textov bolo splnených. Používa sa aj BLEU, verzia CodeBLEU. CodeJudge.\n- Na testovanie generovaných testov sa používajú: vykonanie produkčného kódu, pokrytie testov, mutácie kódu, statická analýza generovaného kódu.\n- Vyskúšaný model polycoder (na C),codeparrot (na python) na kaggle. Code T5 zatiaľ nie je vyskúšaný. \n- Copilot by mal byť pre študentov zadarmo. Študneti majú aj Azure kredity.\n\nÚlohy:\n\n- Pokračujte v otvorených úlohách.\n- Pripravte sa na predobhajobu - prezentácia s výsledkami. \n\nZásobník úloh:\n\n- Pomocou vybranej množiny porovnajte vybrané modely pre generovanie kódu.\n\nStretnutie 14.11. 2924\n\nStav:\n\n- Vyhľadané modely na generovanie kódu.", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2020/kamil_tomcufcik/README.md::chunk-2", + "document_path": "pages/students/2020/kamil_tomcufcik/README.md", + "title": "Kamil Tomčufčík", + "categories": [ + "dp2025" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "hajobu - prezentácia s výsledkami. \n\nZásobník úloh:\n\n- Pomocou vybranej množiny porovnajte vybrané modely pre generovanie kódu.\n\nStretnutie 14.11. 2924\n\nStav:\n\n- Vyhľadané modely na generovanie kódu. Nie sú vyskúšané. Codex, CodeParrot a Incoder. Na unittesty CodeT5 a AthenaTest.\n- Rozčítané knihy podľa pokynov.\n\nÚlohy:\n\nZistite odpovede na tieto otázky:\n- [x] Ako zistíme, že vygenerovaný kód je dobrý.\n- [x] Ako zistíme, že vygenerovaný test vyhovuje špecifikácii?\n- [-] Vypracujte písomný prehľad modelov pre generovanie kódu. Napíšte aké modely sa používajú, Akým spôsobom sa vyhodnocujú. Napíšte na akej neurónovej sieti sú založené, aké sú veľk=, aké jazyky podporujú, aké výsledky dosahujú. Použite odborné články. Odborné články nájdete na google scholar alebo scopus.\n- [-] Pripravte vzorovú dátovú množinu. Hotové testy, implementácie aj dokumentáciu. Možno vybrať existujúci open source projekt alebo hotovú dátovú množinu. \n- [-] Vyskúšajte niekoľko jazykových modelov pre generovanie kódu aj generovanie testov. \n- [ ] Do diplomovej práce vypracujte experimenty kde vyhodnotíte jazykové modely pre generovanie testov v rôznych prostrediach. \n\nZásobník úloh:\n\n- Dotrénujte model pre lep", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/kamil_tomcufcik/README.md::chunk-3", + "document_path": "pages/students/2020/kamil_tomcufcik/README.md", + "title": "Kamil Tomčufčík", + "categories": [ + "dp2025" + ], + "tags": [ + "lm" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "ódu aj generovanie testov. \n- [ ] Do diplomovej práce vypracujte experimenty kde vyhodnotíte jazykové modely pre generovanie testov v rôznych prostrediach. \n\nZásobník úloh:\n\n- Dotrénujte model pre lepšie generovansie testov. \n\nStretnutie online 5.2.2024:\n\nÚlohy:\n\n- Nainštalujte si prostredie Anaconda, pozrite si knihu https://diveintopython3.net/ \nDive Into Python 3\n- 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\n- vyskúšajte viac modelov pre generovanie kódu. Codex, Copilot, ChatGPT\n- zistite ako funguje veľký jazykový model\n\nZásobník úloh (zadanie na ďalšie stretnutie):\n\n- Zistite zoznam open source modelov pre generovanie kódu a porovnajte ich možnosti. Zoznam zapíšte do textového súboru.\n- Vyberte si jeden z modelov na generovanie kódu, nainštalujte si ho a vyskúšajte.\n- 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.\n- Zistite, ako sa dá taký model \"dotrénovať\" na špecifickú úlohu generovania testov.", + "text_length": 1154 + }, + { + "chunk_id": "pages/students/2020/matej_kobylan/README.md::chunk-0", + "document_path": "pages/students/2020/matej_kobylan/README.md", + "title": "Matej Kobyľan", + "categories": [ + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2020", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2020/matej_kobylan/README.md::chunk-1", + "document_path": "pages/students/2020/matej_kobylan/README.md", + "title": "Matej Kobyľan", + "categories": [ + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2024\n\nCieľ: Vytvoriť dialógový systém pre podporu komunikácie občana s mestom Košice\n\nÚlohy:\n\n- Zistite, čo je to Natural Language Understanding. Napíšte o tom správu na 2 strany.\n- Prečítajte si BP Samuel Horáni. https://opac.crzp.sk/?fn=detailBiblioForm&sid=A770A18E340C6018B48DE7BDD5C2 Napíšte čo ste sa dozvedeli.\n- Prečítajte si článok https://link.springer.com/article/10.1007/s10462-022-10248-8 a napíšte, čo ste sa dozvedeli.\n- Vyskúšajte si chatbota z repozitára https://git.kemt.fei.tuke.sk/sh662er/Rasa. \nNainštalujte si https://pytorch.org/get-started/locally/\nNainštalujte si https://github.com/hladek/spacy-skmodel\n- Skúste ho upraviť tak, aby dával informácie o meste Košice.", + "text_length": 709 + }, + { + "chunk_id": "pages/students/2020/matej_kobylan/README.md::chunk-2", + "document_path": "pages/students/2020/matej_kobylan/README.md", + "title": "Matej Kobyľan", + "categories": [ + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "# Bakalárska práca 2023\n\nSystém pre monitoring médií\n\nPráca súvisí s [DP Michal Stromko](/students/2019/michal_stromko)\n\nNávrh na zadanie:\n\n- Navrhnite a implementuje systém pre extrakciu textu a metainfrmácií z webových stránok alebo sociálnych sietí\n- Modifikujte agenta pre získavanie textu tak aby do databázy ukladal sledované webové stránky v pravidelných intervaloch.\n- Aplikujte neurónovú sieť na klasifikáciu získaných článkov.\n\nAnalýza úlohy:\n\nChceme vytvoriť databázu novinových článkov. \n\nPre článok chceme evidovať:\n\n- zdroj\n- autor\n- titulok\n- text rozdelený na odseky\n- odkazy na iné články\n- autorská sekcia\n- autorské tagy alebo kľúčové slovíčka.\n- perex\n- dátum vydania.\n- pôvodné html\n\nKu databáze chceme vytvoriť agenta ktorý by v pravidelných intervaloch dopĺňal nové články. Agenta pre zber textu stačí modifikovať. \n\nKu databáze chceme vytvoriť webové rozhranie.\n\nV databáze chceme vedieť vyhľadávať. \n\nChceme vedieť automaticky zistiť tému článku.\n\nChceme automaticky zistiť sumár článku.\n\n- Vyberte vhodnú databázu.\n - Postgres, Cassandra.\n- Navrhnite schému.\n- Modifikujte agenta pre zber textu.\n- Implementujte webové rozhranie na prístup k databáze. \n\nStretnutie 24.1.2", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/matej_kobylan/README.md::chunk-3", + "document_path": "pages/students/2020/matej_kobylan/README.md", + "title": "Matej Kobyľan", + "categories": [ + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "umár článku.\n\n- Vyberte vhodnú databázu.\n - Postgres, Cassandra.\n- Navrhnite schému.\n- Modifikujte agenta pre zber textu.\n- Implementujte webové rozhranie na prístup k databáze. \n\nStretnutie 24.1.2022\n\nStav:\n\n- Začiatok štúdia Python.\n- Prečítané články: \"COVID a kľúčové slová\", o Elasticsearch.\n\nÚlohy:\n\n- Pokračovať v otvorených úlohách z 30.9.\n- Zistite, čo je to systém RASA a ako pracuje.\n- Skúste prejsť tutoriál https://rasa.com/blog/category/tutorials/\n- Zvážiť zmenu témy na \"RASA\" dialógový systém.\n\nStretnutie 30.9.2022\n\nÚlohy:\n\n- [x] Prečítajte si záverečné práce J. Holp, M. Stromko.\n- [ ] Nainštalujte si systém Anaconda. Naučte sa pracovať s virtuálnymi prostrediami.\n- [x] Prejdite si Python tutoriál.\n- [ ] 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.\n- [ ] Oboznámte sa s kódom agenta websucker https://git.kemt.fei.tuke.sk/dano/websucker-pip.\n\nZásobník úloh:\n\n- Pozrieť sa na https://github.com/microsoft/playwright-python\n- Zistite, ako funguje knižnica BeautifulSoup, vypracujte tutoriál.\n- Vypracujte prehľad literatúry na tému \"Monitorovanie médií\". Otvorte si google scholar, hyhľadajte h", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/matej_kobylan/README.md::chunk-4", + "document_path": "pages/students/2020/matej_kobylan/README.md", + "title": "Matej Kobyľan", + "categories": [ + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "m/microsoft/playwright-python\n- Zistite, ako funguje knižnica BeautifulSoup, vypracujte tutoriál.\n- 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.\n- Zistite si, čo je systém Elasticsearch a ako pracuje. Napíšte o tom správu na jednu stranu.\n- Pomocou systému Docker si nainštalujte Elasticsearch 8.4\n- Prejdite si tutoriál https://elasticsearch-dsl.readthedocs.io/en/latest/index.html\n- Urobte si GIT repozitár, kde budeme dávať kódy.", + "text_length": 703 + }, + { + "chunk_id": "pages/students/2020/matus_suchanic/README.md::chunk-0", + "document_path": "pages/students/2020/matus_suchanic/README.md", + "title": "Matúš Suchanič", + "categories": [ + "vp2022", + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2020", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2020/matus_suchanic/README.md::chunk-1", + "document_path": "pages/students/2020/matus_suchanic/README.md", + "title": "Matúš Suchanič", + "categories": [ + "vp2022", + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2023\n\nTéma: Vyhľadávanie na slovenskej Wikipédii\n\nÚloha: \n\n- 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í.\n- Vytvorte dátovú množinu pre vyhodnotenie kategorizácie na základe wiki kategórií. \n\nNázov: \n\nAutomatická kategorizácia slovenského textu\n\n1. Vypracujte prehľad najnovších metód kategorizácie textu pomocou neurónových sietí aj pomocou štatistických metód.\n2. Vyberte a pripravte vhodnú dátovú množinu pre otestovanie kategorizácie.\n3. Vyberte vhodnú metódu kategorizácie, pripravte a vykonajte experimenty na jej vyhodnotnie. \n4. Vyhodnoťte experimenty a identifikujte slabé miesta zvoleného prístupu.\n\nPráca súvisí s:\n\n- [DP Michal Stromko](/students/2019/michal_stromko)\n- [BP Matej Kobyľan](/students/2020/matej_kobylan)\n\nStretnutie 27.1.2023\n\nPodmienky na zápočet:\n\n- Pripravte slovenskú databázu na trénovanie úlohy klasifikácie článkov.\n- Zopakujte experiment pre klasifikáciu článkov v prostredí HF transformers.\n- Natrénujte vlastný model na HF transformers na klasifikáciu článkov.\n- Vykonaný experiment opíšte na min. 2 strany. Napíšte aký model sa používa, aký druh neuróno", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/matus_suchanic/README.md::chunk-2", + "document_path": "pages/students/2020/matus_suchanic/README.md", + "title": "Matúš Suchanič", + "categories": [ + "vp2022", + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ánkov v prostredí HF transformers.\n- Natrénujte vlastný model na HF transformers na klasifikáciu článkov.\n- Vykonaný experiment opíšte na min. 2 strany. Napíšte aký model sa používa, aký druh neurónovej siete. Ako prebieha dotrénovanie?\n\nStretnutie 21.1.2023\n\nStav:\n\n- Prečítané články, urobený report na cca 7 strán.\n\nÚlohy:\n\n- Boli vedúcim poskytnuté dáta, ktoré obsahujú názvy článkov, kategórie, aj texty článkov. \n- Urobte skript, ktorý spojí dáta tak, aby boli dáta spolu - názov, text a zoznam kategórií.\n- Natrénujte na týchto dátach neurónovú sieť pre kategorizáciu článkov. \n- 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.\n- Na klasifikáciu použite: toolkit transformers, model slovakbert, alebo model slovak gpt, slovak t5\n- 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.\nOpíšte experiment - použitý model, použité dáta, spôsob vyhodnotenia a výsledky. Napíšte čo z toho vyplýva - kde je priesto", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/matus_suchanic/README.md::chunk-3", + "document_path": "pages/students/2020/matus_suchanic/README.md", + "title": "Matúš Suchanič", + "categories": [ + "vp2022", + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "ko funguje klasifikácia dokumentov pomocou modelu BERT alebo Roberta, a GPT.\nOpíš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.\n\nStretnutie 28.10.2022\n\nStav:\n\n- Preštudované články o text categorization, BERT, KNN. Napísaný krátky report.\n\nÚlohy:\n\n- 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.\n- Pokračujte v experimente s HF transformers a kategorizáciou.\n- Pozrite si skripty na repozitári slovakretrieval a skúste ich rozbehnúť.\n\nZásobník úloh:\n\n- 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í.\n- Spýtajte sa vedúceho na skripty ku spracovaniu dumpu wikipédie.\n\nStretnutie 30.9.2022:\n\nStav:\n\n- Je nainštalovaný Anaconda a HF transformers.\n\nÚlohy:\n\n- [x] Prečítajte si BP Michal Stromko a DP Ján Holp. Napíšte z toho poznámky na pol strany.\n- [x] Zistite, čo to je model BERT a ako sa s sním pracuje. Napíšte o tom poznámku.\n- [-] Vypracujte prehľad nov", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/matus_suchanic/README.md::chunk-4", + "document_path": "pages/students/2020/matus_suchanic/README.md", + "title": "Matúš Suchanič", + "categories": [ + "vp2022", + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "] Prečítajte si BP Michal Stromko a DP Ján Holp. Napíšte z toho poznámky na pol strany.\n- [x] Zistite, čo to je model BERT a ako sa s sním pracuje. Napíšte o tom poznámku.\n- [-] 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.\n- [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. \n\n- [ ] 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. \n\nZásobník úloh:\n\n- [ ] Pripravte skript, ktorý bude vedieť klasifikovať neznáme články uložené v databáze.", + "text_length": 981 + }, + { + "chunk_id": "pages/students/2020/matus_suchanic/README.md::chunk-5", + "document_path": "pages/students/2020/matus_suchanic/README.md", + "title": "Matúš Suchanič", + "categories": [ + "vp2022", + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "# Vedecký projekt 2022\n\nExtrakcia informácií z webových stránok\n\nFinálny cieľ: \n\n- Vytvoriť skript ktorý spracuje HTML kód a identifikuje zaujímavé časti z webstránky, napr. noviny alebo diskusie (modrý koník)\n- Naučte sa niečo o spracovaní prirodzeného jazyka\n\nVýstupy:\n\n- Report na cca 4 strany - ako si nainštalovať anacondu, niečo o knižnici HuggingFace Transformers\n- Skript na parsovanie dvoch stránok\n\nStretnutie 3.6.\n\nStav: \n\n- Odovzdaná písomná správa nie je uspokojivá.\n\nÚlohy:\n\n- Nainštalujte si Hugging Face Transformers\n- 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.\n- Vlastnými slovami zapíšte, čo všetko bude potrebné urobiť, aby sme vedeli klasifikovať slovenské texty.\n- Vytvorte si GIT repozitár a dajte do neho vytvorené skripty na parsovanie stránok.\n\nStretnutie 18.3.2022\n\nÚlohy:\n\n- Nainštalovať si systém Anaconda\n- Napíšte návod ako nainštalovať a používať systém Anacona\n- Nainštalovať si knižnicu BeautifulSoup4, prejsť si tutoriál\n- napíšte krátky úvod do knižnice Huggingface Transformers\n- Prečítajte si články o hlbokých ne", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/matus_suchanic/README.md::chunk-6", + "document_path": "pages/students/2020/matus_suchanic/README.md", + "title": "Matúš Suchanič", + "categories": [ + "vp2022", + "bp2023" + ], + "tags": [ + "ir" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "ko nainštalovať a používať systém Anacona\n- Nainštalovať si knižnicu BeautifulSoup4, prejsť si tutoriál\n- napíšte krátky úvod do knižnice Huggingface Transformers\n- Prečítajte si články o hlbokých neurónových sieťach a spracovaní prirodzeného jazyka", + "text_length": 250 + }, + { + "chunk_id": "pages/students/2020/pavol_hudak/README.md::chunk-0", + "document_path": "pages/students/2020/pavol_hudak/README.md", + "title": "Pavol Hudák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2020", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2020/pavol_hudak/README.md::chunk-1", + "document_path": "pages/students/2020/pavol_hudak/README.md", + "title": "Pavol Hudák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2025\n\nDotrénovanie veľkého jazykového modelu na odpovede v slovenčine\n\nZadanie:\n\n1. Vypracujte prehľad veľkých jazykových modelov v slovenčine.\n2. Vypracujte prehľad metód dotrénovania veľkých jazykových modelov.\n3. Vyberte vhodnú dátovú množinu v slovenčine a dotrénujte veľký jazykový model.\n4. Vyhodnoťte experimenty a navrhnite zlepšenia. \n\nCiel:\n\n- Dotrénovanie LLM pre zlepšenie jeho schopnosti odpovedať na otázku v slovenskom jazyku.\n- Dotrénovanie a vyhodnotenie LLM na slovenský instruct dataset.\n- Strojový preklad vybranej množiny instruct.\n\nStretnutie 21.2.2025\n\nStav:\n\n- Natrénovaný Mistral 7B Slovak Alpaca (celej, 4 epochy) na quadro.\n- Strojové preklady Seamless do angličtiny (neviem na čo).\n- Použitý model Opus na backtranslation - alpaca.\n\nÚlohy:\n\n- Zlepšite štruktúru aj text DP.\n- Vyhodnotte výsledný model. Vedúci dodá skripty. Alebo dodajte model vedúcemu. Výsledky dajte do práce. \n\nZásobník uloh:\n\n- Dotrénujte iný model, napr. GEMMA.\n- Po vyhodnotení skúste zlepšiť model - pridať nové dáta, pridať epochy.\n- Strojovo preložte vhodné zdroje na dotrénovanie. Konzultujte vedúceho. \n\nStretnutie 14.11.2024\n\nStav:\n\n- Dotrénovaný slovenský Mistral 7B na male", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/pavol_hudak/README.md::chunk-2", + "document_path": "pages/students/2020/pavol_hudak/README.md", + "title": "Pavol Hudák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ste zlepšiť model - pridať nové dáta, pridať epochy.\n- Strojovo preložte vhodné zdroje na dotrénovanie. Konzultujte vedúceho. \n\nStretnutie 14.11.2024\n\nStav:\n\n- Dotrénovaný slovenský Mistral 7B na malej časti Slovak Alpaca ma Kaggle.\n- Pokračuje písanie.\n\nÚlohy:\n\n- Pokračovať v trénovaní tak aby sa využila celá množina. Môžeme využiť školské servre. Vedúci vytvorí prístup.\n- Pokračujte v písaní\n- Zdrojové kódy dajte na GIT. Nedávajte tam dáta ani modely.\n\nZásobník úloh:\n \n- Dotrénujte aj iné modely a porovnajte výsledky.\n- Zverejnite dotrénovaný model alebo viac modelov na HF HUB. využijeme TUKE-KEMT org. \n\nStretnutie 15.10.\n\nStav:\n\n- Napísané 4 strany poznámok o Transformers.\n\nÚlohy:\n\n- Dotrénujte slovenský model na instruct množine. Ako model použite https://huggingface.co/slovak-nlp/mistral-sk-7b a PEFT. \n- Nainštalujte si Ctranslate2 a model https://huggingface.co/facebook/m2m100_1.2B. Skúste preložiť OpenORCA.\nPoužite server quadro alebo Kaggle. \n- Pracujte na texte DP - vysvetlite ako funguje model ChatGPT, Mistral a napíšte ako funguje \"instruct model\", uvedte odkazy na odborné články.", + "text_length": 1109 + }, + { + "chunk_id": "pages/students/2020/pavol_hudak/README.md::chunk-3", + "document_path": "pages/students/2020/pavol_hudak/README.md", + "title": "Pavol Hudák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "# Diplomový projekt 2024\n\nCiele na semester:\n\n- Zobrať veľký jazykový model (základný alebo instruct alebo chat). \n- Skúsiť ho dotrénovať metódou PEFT pre úlohu Question Answering na korpuse SK QUAD. Vieme sa inšpirovať výsledkami E. Matovka.\n- Strojovo preložiť vybranú databázu otázok a odpovedí a pomocou nej skúsiť vylepšiť model.\n- Vyhodnotiť presnosť QA dotrénovaného modelu.\n\nĎalšie nápady:\n\n- Automaticky zlepšiť \"prompt\" pre QA.\n\nVybrať jednu z úloh:\n\n- Tvorba instruct datasetu - Anotácia alebo preklad množín\n- Dotrénovanie LLM na dostupnom hardvéri - LORA-PEFT\n\nStretnutie 7.6.2024\n\nStav:\n\n- Práca na dotrénovaní LLama3 a Phi2 cez kaggle, zatiaľ nefunguje.\n\nStretnutie 5.4.\n\nStav:\n\n- Nainštalované PrivateGPT. \n- Nainštalovaná Anaconda a Python, aj štúdium a príprava.\n- Oboznámenie sa s LangChain a SlovakAlpaca aj PEFT.\n\nÚlohy:\n\n- Skúste dotrénovať veľký jazykový model metódou PEFT s množinou SlovakAlpaca. Vyberte vhodný model.\n- Vyskúšajte modely cez ollama.\n- Prihláste sa na quadro.kemt.fei.tuke.sk tam nainštalujte anaconda. Vedúci Vám musí urobiť prístup.\n- Kandidáti sú UMT5, TinyLLama, LLama3, Mistral, mt0, Phi alebo iné.\n- Vyhodnote presnosť dotrénovania (BLEU - založené na", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2020/pavol_hudak/README.md::chunk-4", + "document_path": "pages/students/2020/pavol_hudak/README.md", + "title": "Pavol Hudák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": ".kemt.fei.tuke.sk tam nainštalujte anaconda. Vedúci Vám musí urobiť prístup.\n- Kandidáti sú UMT5, TinyLLama, LLama3, Mistral, mt0, Phi alebo iné.\n- Vyhodnote presnosť dotrénovania (BLEU - založené na porovnávaní ngramov výsledku a očakávania). \n- Robte si poznámky o tom ako funguje veľký jazykový model a metóda PEFT.\n\nZásobník úloh:\n\n- Strojovo preložiť databázu OpenORCA. \n\nStretnutie 23.2.\n\nStav:\n\n- Rozbehané prostredie s Pytorch aj CUDA Anaconda na vlastnom PC.\n- Vyskúšaný HF google/t5 ... na úlohu strojového prekladu\n\nÚlohy:\n\n- Pokračujte v štúdiu podľa otvorených úloh.\n- Nainštalujte a vyskúšajte softvér PrivateGPT. \n- Prihláste sa na systém IDOC a nainštalujte si tam systém Anaconda.\n\nZásobník úloh:\n\n- Nainštalujte a vyskúšajte balíček LangChain.\n- Zistite čo je to metóda PEFT - LORA.\n- Skúste dotrénovať veľký jazykový model s množinou SlovakAlpaca.\n- Skúste vylepšiť LLM pomocou inej množiny, strojovo preloženej. \n\nStretnutie 14.2.\n\nÚlohy:\n\n- [ ] Oboznámiť sa s veľkými jazykovými modelmi LLM. Ako funguje ChatGPT? Čo je to LLAMA? Napíšte si poznámky.\n- [x] Nainštalujte si Anaconda.\n- [-] Pokračujte v štúdiu Python. Preštudujte si knihu Dive deep into deep learning.\n- [x] Nainš", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/pavol_hudak/README.md::chunk-5", + "document_path": "pages/students/2020/pavol_hudak/README.md", + "title": "Pavol Hudák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "qa" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "modelmi LLM. Ako funguje ChatGPT? Čo je to LLAMA? Napíšte si poznámky.\n- [x] Nainštalujte si Anaconda.\n- [-] Pokračujte v štúdiu Python. Preštudujte si knihu Dive deep into deep learning.\n- [x] Nainštalujte si knižnicu Huggingface Transformers. \n- [ ] Vyskúšajte LLM model LLAMA https://huggingface.co/meta-llama/Llama-2-70b\n- [ ] Prejdite si tento tutoriál https://huggingface.co/blog/llama2", + "text_length": 393 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-0", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2020", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-1", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2024\n\n1. Napíšte prehľad existujúcich jazykových modelov pre generovanie slovenského jazyka.\n2. 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. \n3. Natrénujte neurónovú sieť pre úlohu generovania odpovede a vyhodnoťte výsledky. \n4. Vyhodnoťte experimenty, identifikujte slabé miesta a navrhnite vylepšenia. \n\nNa Maise je vypísaná nová téma ohľadom \"konverzačnej umelej inteligencie\". Je potrebné čím skôr finalizovať tému aj praconvé úlohy.\n\nCiele:\n\n- Dotrénovať ChatGPT alebo iný generatívny model pre vlastnú databázu otázok a odpovedí.\n\nStretnutie 15.5.2025\n\nStav:\n\n- Rozpísaná práca\n- Experimenty sú pripravené (podrobne neviem).\n\nÚlohy:\n\n- Dajte prácu do šablóny a vypracujte ASAP. \n- Do práce môžete dokresliť diagramy. Dôsledne citujte - uvádzajte referencie aj pre obrázky.\n- Stiahnite si zadávací list a šablónu z ETD knižnice. \n- Zaregistrujte sa do knižnice na vytlačenie práce. Na to budete potrebovať titulný list a počet strán. \n- Pošlite vedúcemu na kontrolu čím skôr (do budúceho utorka). \n- Na vyhodno", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-2", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "nu z ETD knižnice. \n- Zaregistrujte sa do knižnice na vytlačenie práce. Na to budete potrebovať titulný list a počet strán. \n- Pošlite vedúcemu na kontrolu čím skôr (do budúceho utorka). \n- Na vyhodnotenie generatívneho modelu použite metriku BLEU. Na to potrebujete očakávaný výstup modelu.\n\nStretnutie 26.4. 2024\n\nStav:\n\n- Práca na dátach GymBeam. Scraper ide. Máme otázky o procese objednania.\n- Vyskúšané mt5, llama 2 7B, mixtral, \n\nÚloha:\n\n- 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.\n- Ku Vašim dátam môžete primešať dáta zo SK QUAD.\n- Naučte rôzne neurónové siete mt5base, Slovakbert, llama odpovedať na otázku a vyhodnnotte výsledky. Na quadro nainštaluje Anaconda.\n- Nainštalujte Pytorch, Transformers z repozitára. Použite screen alebo tmux na spustenie.Kartu vyberiete pomocou premennej prostredia CUDA_VISIBLE_DEVICES.\n- Použite skripty z https://github.com/huggingface/transformers/tree/main/examples/pytorch/question-answering . \n- Pokračujte v písaní práce.", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-3", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "beriete pomocou premennej prostredia CUDA_VISIBLE_DEVICES.\n- Použite skripty z https://github.com/huggingface/transformers/tree/main/examples/pytorch/question-answering . \n- Pokračujte v písaní práce.\n\nZásobník:\n\n- 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\n\nStretnutie 29.1.2024\n\nStav:\n\n- Prezentácia je.\n- Získané dáta z GymBeam. Selenium Scraper je veľmi pomalý, nevieme prečo.\n- Vyskúšané ChatGPT API s dátami čo máme. Odpoveď je zatiaľ po anglicky.\n- Na prevod z csv do json je použitá LLAMA.\n\nÚlohy:\n\n- 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.\n- Výsledky dajte do tabuľky do práce.\n- Pokračujte v písaní práce.\n- Pokračujte v získavaní a príprave dát.\n\nZásobník:\n\n- 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", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-4", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "h 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.\n \n\nStretnutie 15.12.2023\n\nStav:\n\n- Napísané texty podľa pokynov. Experimenty ešte neboli vykonané.\n\nÚlohy:\n\n- 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.\n- Pripravte dáta do vhodnej podoby a natrénujte generatívny model - ChatGPT, T5-SMALL, \n- Vyhoddnotte všetky modely, výsledky sumarizujte v tabuľkách. Experimenty opíšte do práce.\n- Urobte si repozitár bp2024 na git.kemt.fei.tuke.sk. Skripty dávajte na git.\n\nStretnutie 21.11.2023\n\nStav:\n\n- Napísaný text na tému Seq2Seq.\n- Napísaný scraper pre získavanie dát z E shopu.\n\nÚlohy:\n\n- Skúste dotrénovať model ChatGPT. Využijeme kredity [Azure pre študentov](https", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-5", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "tretnutie 21.11.2023\n\nStav:\n\n- Napísaný text na tému Seq2Seq.\n- Napísaný scraper pre získavanie dát z E shopu.\n\nÚlohy:\n\n- 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.\n- 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. \n- Zistite, ako vyhodnotiť dotrénovaný model. Ako funguje https://github.com/openai/evals ? Napíšte o tom poznánky.\n\nZásobník úloh:\n\n- Na generovanie odpovedí použijeme jednoduchý model T5-small v HF transformers.\n- 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\". \n- Preštudujte si knihu https://d2l.ai/ a napíšte si z nej poznámky.\n- 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ánk", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-6", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "/d2l.ai/ a napíšte si z nej poznámky.\n- 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.\n- Nainštalujte si prostredie Anaconda.\n- Nainštalujte si knižnicu HF transformers, prejdite si základný tutoriál. \n- Prejdite si tutoriál https://huggingface.co/docs/transformers/tasks/summarization", + "text_length": 415 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-7", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "# Bakalárska práca 2023\n\nTéma: Oprava preklepov v slovenskom jazyku.\n\nSúvisiaca dizertačná práca [Maroš Harahus](/students/2016/maros_harahus).\n\nCieľ: \n\n- Naštudovať si problematiku opravy preklepov a napísať prehľad aktuálnych metód.\n- Vykonať jednoduchý experiment na automatickú opravu preklepov pomocou neurónovej siete.\n- Naprogramovať webovú demo aplikáciu.\n\n \n\nStretnutie 28.9.2023\n\nStav:\n\n- Nainštalovaná Anaconda, problém s CUDA.\n\nÚlohy:\n\n- Pokračujte v otvorených úlohách z minulého roka.\n- Na inštalovanie Pytorch je potrebné nainštalovať najprv CUDa cez Anaconda.\n\n conda install pytorch==1.10.0 torchvision==0.11.0 torchaudio==0.10.0 cudatoolkit=10.2 -c pytorch\n \nNápad:\n\n- Natrénovať chatbota pre pomoc zákazníkom. Aké trénovacie dáta a aký model použiť?\n\nStretnutie 29.9.2022\n\nÚlohy:\n\n- [ ] Prečítajte si článok \"Survey of Automatic Spelling Correction\" a napíšte z neho poznámky na cca 2 strany.\n- [ ] Prečítajte si článok Comparison of recurrent neural networks for slovak punctuation restoration.\n- [ ] 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-de", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2020/vladyslav_krupko/README.md::chunk-8", + "document_path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "tion restoration.\n- [ ] 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.\n- [x] Nainštalujte si systém Anaconda.\n- [-] Nainštalujte si knižnicu Pytorch\n\nZásobník úloh:\n\n- [ ] Nainštalujte si systém Fairseq\n- [ ] Prejdite si aspoň jeden fairseq tutoriál, napr. https://fairseq.readthedocs.io/en/latest/tutorial_simple_lstm.html\n\nZásobník úloh:\n\n- Vybrať dáta a urobiť experiment.\n- naprogramovať demo.", + "text_length": 546 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-0", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2021", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-1", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2026\n\nZvýšenie bezpečnosti veľkých jazykových modelov\n\nZadanie:\n\n1. Vypracujte prehľad súčasného stavu výskumu v oblasti zvyšovania bezpečnosti veľkých jazykových modelov, vrátane identifikácie známych bezpečnostných problémov a spôsobov ich vyhodnotenia. \n2. Vyberte vhodnú trénovaciu sadu a zarovnajte vybraný jazykový model s cieľom zvýšiť jeho bezpečnosť. \n3. Vyberte vhodnú testovaciu sadu a vyhodnoťte bezpečnosť viacerých modelov, vrátane zarovnaného modelu. \n4. Na základe experimentov predložte konkrétne odporúčania pre ďalšie zlepšenia bezpečnosti modelov v slovenskom jazyku. \n\nVyhodnotenie jazykových modelov\n\nhttps://git.kemt.fei.tuke.sk/ah866cw/DP\n\n(pre bezpečnostné problémy)\n\nMožné ciele:\n\n- Zistiť, či sú súčasné jazykové modely bezpečné. Aké problémy obsahujú? Menia bezpečnostné vlastnosti na základe jazyka?\n- Vyhodnotiť viacero jazykových modelov vo viacerých jazykoch.\n- Navrhnúť zlepšenia na zvýšenie bezpečnosti.\n\nStretnutie 3.2.\n\nStav:\n- Dotrénovaný Slovak Mistral - DPO aj SFT\n- práca na texte\n- trénovacie dáta sú založené na preklade pomocou NLLB - LIbrai/do-not-answer\n\nÚlohy:\n\n- Vyjadrite mieru zlepšenia v jednotlivých krokoch dotrénovania modelu", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-2", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ovak Mistral - DPO aj SFT\n- práca na texte\n- trénovacie dáta sú založené na preklade pomocou NLLB - LIbrai/do-not-answer\n\nÚlohy:\n\n- Vyjadrite mieru zlepšenia v jednotlivých krokoch dotrénovania modelu Slovak Mistral vzhľadom na testovaciu množinu. \n- Urobte podobný proces aj pre iný model a porovnajte výsledky.\n- Do práce dajte tabuľku, hyperparametre trénovania, modelov aj trénovací postup v textovej podobe. \n- Pokračujte v práci na texte.\n\nStretnutie 19.12.2025\n\nStav:\n\n- Nie je progress\n\nÚlohy:\n\n- Pokračujte v písaní a trénovaní ľubovoľného modelu.\n- Vyhodnoťte, zarovnajte a zlepšite Slovak Mistral, Slovak T5 large.\n- Možno bude potrebné vygenerovať trénovacie dáta v slovenčine. Na generovanie použite \"abliterated\" alebo \"uncensored\" modely. (napr. qwen3)\n\nStretnutie 18.11.2025\n\nStav:\n\n- Preskúmané metriky: Unsafe rate, severity, toxicity, overrefusal, jailbreak. Vyžadujú si model alebo človeka.\n- Datasety: \"LibrAI/do-not-answer\",\"walledai/HarmBench\",\"allenai/real-toxicity-prompts\",\"toxigen/toxigen-data\", \"AlignmentResearch/AdvBench\".\n- LLamaGuard3 je model pre detekciu nebezpečných promptov.\n- Sú vyhodnotené modely LLama, Qwen, Gemma.\n\nÚlohy:\n\n- Skúste zlepšiť bezpečnosť ľubovo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-3", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "\"toxigen/toxigen-data\", \"AlignmentResearch/AdvBench\".\n- LLamaGuard3 je model pre detekciu nebezpečných promptov.\n- Sú vyhodnotené modely LLama, Qwen, Gemma.\n\nÚlohy:\n\n- Skúste zlepšiť bezpečnosť ľubovoľného modelu pomocu zarovnania DPO alebo iné. Skript dajte na git. Na trénovanie a vyhodnotenie je potrebné použiť iné dáta.\n- Pokračujte v písaní - metriky, modely, spôsob zarovnania. Opíšte experimenty - porovnanie modelov, dotrénovnaie modelov. Citujte články z Google Scholar.\n\nZásobník úloh:\n\n- Vyhodnoťte, zarovnajte a zlepšite Slovak Mistral, Slovak T5 large.\n\nStretnutie 3.11.2025\n\nStav:\n\n- Vyskúšané modely (mistral, openchat) pre generovanie nebezpečných odpovedí a pre detekciu nebezpečných promptov.\n- Splnená väčšina otvorených úloh.\n\nÚlohy:\n\n- [x] Ako číselne vyhodnotiť \"nebezpečnosť modelu\"? Prečítajte si články. Aké sú metriky? Aké sú databázy?\n- [x] Nájsť alebo natrénovať model pre detekciu nebezpečných promptov a nebezpečných odpovedí. \n- [x] Číselne porovnajte nebezpečnosť viacerých modelov. llama, gemma, qwen gpt-oss, Výsledky dajte do tabuľky.\n- [x] Vybrať vhodný model pre potlačenie nebezpečných odpovedí pomocou DPO. Ako hodnotenie poslúži datababáza nebezpečných prom", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-4", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "acerých modelov. llama, gemma, qwen gpt-oss, Výsledky dajte do tabuľky.\n- [x] Vybrať vhodný model pre potlačenie nebezpečných odpovedí pomocou DPO. Ako hodnotenie poslúži datababáza nebezpečných promptov, alebo iný model alebo aj náhodná hodnota.\n- [x] Skripty dávajte na GIT.\n- [x] Pokračujte v písaní.\n\nZásobník úloh:\n\n- Zarovnajte ľubovoľný model zvolenou metódou.\n- Pripravte postup pre zarovnanie slovenského modelu.\n\nStretnutie 10.10.2025:\n\nStav:\n\nPreštudované:\n\n- https://github.com/EleutherAI/lm-evaluation-harness?utm_source=chatgpt.com\n- https://github.com/confident-ai/deepeval?utm_source=chatgpt.com\n- https://github.com/open-compass/opencompass?utm_source=chatgpt.com\n- https://github.com/explodinggradients/ragas?utm_source=chatgpt.com\n- https://github.com/braintrustdata/autoevals?utm_source=chatgpt.com\n\nÚlohy:\n\n- [x] pozrite si databázy PKU-Alignment/PKU-SafeRLHF alebo aurora-m/adversarial-prompts . Vyhľadajte iné databázy.\n- [x] Vyskúšajte LLM s týmito databázami. Ako sa bydú správať?\n- [x] Oboznámte sa s pojmom LLM alignment. Ako upravíme správanie jazykového modelu pomocou reinformcement learning?\n- [ ] Používajte google scholar a píšte si poznámky.\n- [-] Pokračujte v otvo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-5", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "rávať?\n- [x] Oboznámte sa s pojmom LLM alignment. Ako upravíme správanie jazykového modelu pomocou reinformcement learning?\n- [ ] Používajte google scholar a píšte si poznámky.\n- [-] Pokračujte v otvorených úlohách - DPO.\n\nZásobník úloh:\n\n- Vybrať metódy, vybrať databázu a vybrať model. Databázu vieme aj generovať - augmentovať. Alebo ju vieme ručne upraviť. \n- Niektorú databázu viem aj preložiť. Prístup vieme použiť aj na nový jazykový model slovak-t5-large.\n- Ako sa správajú modely v rôznych jazykoch?\n- vyhodnotiť model z hľadiska bezpečnosti.\n- upraviť správanie modelu tak aby sa zlepšilo.\n\nStretnutie 2.10. :\n\nÚlohy:\n\n- Pokračujte v otvorených úlohách. Kľúčové slovíčka: Python, TRL , LLM.\n- Zistite čo je to Reinforcement Learning, RLHF, DPO, PEFT.\n- Vyskúšajte si voľne dostupné LLM pomocou ollama. gpt-oss, gemma, qwen.\n- Pozrite si databázy \"nebezpečných promptov\". Prečítajte si články. Pozrite si, aké články ich citujú. Použite google scholar.\n\nZásobník úloh:\n\n- Zopakujte a vylepšite experimenty vo vybranom článku.\n- Finalizovať zadanie diplomovej práce.\n\nStretnutie 11.6. :\n\n- Štúdium a vyskúšanie Python, Anaconda Transformers\n- Písomné poznámky.\n- Zistil, že ChatGPT dokáže po", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-6", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "ite experimenty vo vybranom článku.\n- Finalizovať zadanie diplomovej práce.\n\nStretnutie 11.6. :\n\n- Štúdium a vyskúšanie Python, Anaconda Transformers\n- Písomné poznámky.\n- Zistil, že ChatGPT dokáže poradiť s útokom na AP alebo na iný server. Netreba to (model) veľa presviedčať.\n\nÚlohy:\n\n- Pokračujte v praktickej príprave - Transformers \n- Vyskúšajte a naštudujte Huggingface TRL. Ako sa dá v modeloch potlačiť toxické správanie? Zistite čo je to RLHF.\n- Zistite, ako sa vyhodnocujú všeobecné jazykové modely.\n- Preštudujte si [prácu](https://dspace.cvut.cz/bitstream/handle/10467/115227/F3-DP-2024-Jirkovsky-Adam-DP-final.pdf?sequence=-1&isAllowed=y) a [článok](https://arxiv.org/abs/2412.01020)/\n- Vyhľadajte a preskúmajte existujúce dátové sady nebezpečných promptov. \"corpus of dangerous-harmful prompts\".\n- Zistite, ako sa vyhodnocujú modely z hľadiska bezpečnosti. Aké škody môžu spôsobiť jazykové modely? Napíšte poznámnky.\n\nZásobník úloh:\n\n- Rozšírte a preložte nebezpečné prompty. Aby sme dostali viacjazyčnú sadu (Slovensko-Anglicko-Ruská-Ukrajinská).\n- Pomocu tejto sady vyhodnoťte viacero jazykových modelov.\n- Implementujte vlastnú metódu na zvýšenie bezpečnosti modelu. \n\nStretnutie 4.", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-7", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "ostali viacjazyčnú sadu (Slovensko-Anglicko-Ruská-Ukrajinská).\n- Pomocu tejto sady vyhodnoťte viacero jazykových modelov.\n- Implementujte vlastnú metódu na zvýšenie bezpečnosti modelu. \n\nStretnutie 4.4.2025\n\nStav:\n\n- Preštudované niektoré jazykové modely.\n\nÚlohy:\n\n- [x] Pokračujte v štúdiu Python, Anaconda, Transformers, dive into deep learning.\n- [x] Napíšte poznámky o tom ako funguje model typu GPT, napr. LLAMA alebo DeepSeek. Napíšte ako sa trénuje - čo na to potrebujeme a v akých fázach to prebieha. Napíšte aj odkazy na odbornú literatúru.\n- [x] Zisite ako prebieha dotrénovanie pomocou PEFT-LORA a napíšte o tom poznáky,\n- [x] Zistite ako prebieha dotrénovanie typu reinforcement learning a napíšte o tom poznámky.\n\nZásobník úloh:\n\n- Môžeme riešiť problém bezpečnosti jazykových modelov. Ako upraviť model tak, aby neprezradil citlivé alebo nebezpečné informácie.\n- Dotrénujme existujúci jazykový model (napr. SlovakMistral) na úlohu instruct a využime reinforcement learning na potlačenie neželaných vlastností.\n\nStretnutie 28.2.2025\n\nStav:\n\n- Vyskúšané LM (cez ollama, aj API) Python (in progress).\n\nÚlohy:\n\n- Pokračujte v štúdiu.\n- Pozrite sa na článok a dataset https://github.com/kini", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-8", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "neželaných vlastností.\n\nStretnutie 28.2.2025\n\nStav:\n\n- Vyskúšané LM (cez ollama, aj API) Python (in progress).\n\nÚlohy:\n\n- Pokračujte v štúdiu.\n- Pozrite sa na článok a dataset https://github.com/kinit-sk/gest . Urobte si poznámky. Zistite aké jazykové modely majú podporu slovenského jazyka. Zistite ako sa vyhodnocuje bias v jazykových modelov. Zistite, aké podobné množiny existujú pre iné jazyky. \n\nZásobník úloh:\n\n- Porovnajte viaceré modely pre mieru výskyt rodových stereotypov. Môže byť aj pre viaceré jazyky (slovenčina, angličtina, ruština).\n- Zistitie, ako je možné potlačiť neželané vlastnosti modelu. (https://huggingface.co/docs/trl/en/index, https://github.com/allenai/open-instruct).\n\nStretnutie 5.2.2025\n\nÚlohy:\n\n- Oboznámte sa s problematikou veľkých jazykových modelov. Towards Data Science\n- Naučte sa Python lepšie\n- Poučte sa o strojovom účení.\n- Vyskúšajte si framework HF Transformers\n- Vyskúšajte si veľký jazykový model, napr. cez systém OLLAMA.\n- Oboznámte sa s frameworkom lm-eval-harness. Zistite, aké úlohy a aké metriky sa používajú. \n\nZásobník úloh:\n\n- Nájdite na webe zaujímavý zdroj otázok a odpovedí, ktorý by bol vhodný na vyhodnotneie jazykového modelu.\n- Vyberte", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2021/artur_hyrenko/README.md::chunk-9", + "document_path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "lm-eval-harness. Zistite, aké úlohy a aké metriky sa používajú. \n\nZásobník úloh:\n\n- Nájdite na webe zaujímavý zdroj otázok a odpovedí, ktorý by bol vhodný na vyhodnotneie jazykového modelu.\n- Vyberte úlohu vhodnú na anotáciu (spolu s vedúcim).", + "text_length": 243 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-0", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2021", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-1", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2024\n\nSpolupráca [Vladimír Ferko](/students/2021/vladimir_ferko)\n\nNadväzuje [Martin Jancura](/students/2017/martin_jancura)\n\nNázov: Slovenská konverzačná umelá inteligencia\n\nPredbežný cieľ:\n\nNatrénovať jazykový model pre jednoduchú slovenskú konverzáciu. \n\nZadanie BP:\n\n1. Vypracujte prehľad modelov a dátových množín pre generovanie slovenského jazyka.\n2. Opíšte metódy dotrénovania generatívnych jazykových modelov. \n3. Vyberte vhodnú dátovú množinu a dotrénujte model pre plnenie jednoduchých úloh podľa zadaných inštrukcií.\n4. Vyhodnoťte natrénovaný model, identifikujte jeho slabé miesta a navrhnite zlepšenia.\n\nPredbežné úlohy:\n\n- Oboznámte sa s existujúcimi modelmi pre generovanie slovenského jazyka.\n- 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.\n- Natrénujte neurónovú sieť pre odpovedanie v diskusiách. \n- Vytvorte webové demo.\n- Napísať vedecký článok z BP\n \n\nStretnutie 12.4.\n\nStav:\n\n- Vyskúšaná LLAMA2 cez HF AutoTrain (SlovakAlpaca+). Je náročná na RAM. Zatiaľ to vyzerá horšie ako LLAMA1.\n- Práca na texte.\n\nÚlohy:\n\n- V", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-2", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "o.\n- Napísať vedecký článok z BP\n \n\nStretnutie 12.4.\n\nStav:\n\n- Vyskúšaná LLAMA2 cez HF AutoTrain (SlovakAlpaca+). Je náročná na RAM. Zatiaľ to vyzerá horšie ako LLAMA1.\n- Práca na texte.\n\nÚlohy:\n\n- 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.\n- 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. \n- Pokračujte v otvorených úlohách: Zdrojáky dajte na git, dáta na školský server.\n\nZásobník úloh:\n\n- Ako zlepšíme veľké jazykové modely pre slovenčinu?\n\nStretnutie 8.3.\n\nStav:\n\n- Práca na evaluatore - Preštudované [LLAMA evaluator od NVIDIA](https://docs.nvidia.com/nemo-framework/user-guide/latest/llama/evaluation.html). \n\nÚlohy:\n\n- Vyskúšajte knižnicu https://github.com/EleutherAI/lm-evaluation-harness. Zistite, ako sa dá použiť s našimi vlastnými dátami.\n- Dajte skript na reddit na git. \n- Odovzdajte reddit dáta - dajte ich školský server (titan) a povedzte kde.\n- Pokračujte v otvorených úlohách.\n\nStretnutie:\n\nStav\n\n- Prezentácia\n- S", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-3", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "vlastnými dátami.\n- Dajte skript na reddit na git. \n- Odovzdajte reddit dáta - dajte ich školský server (titan) a povedzte kde.\n- Pokračujte v otvorených úlohách.\n\nStretnutie:\n\nStav\n\n- Prezentácia\n- Skript na trénovanie funguje na vlastnom 3060Ti 8GB, funguje aj LLAMA 7B 4bit\n- Natrénované na Instruct (SlovakAlpaca) datasete. \n- Tento dataset je doplnený o dáta z redditu - r/Slovak.\n- jedno trénovanie na malom datasete trvalo 28 hod. Trénovanie sa podarilo - zbežná kontrola je ok.\n- Prečistenie textov pre výskyt vulgarizmov.\n- Začal \"študovať\" evaluate.\n\nÚlohy:\n\n- 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. \n- Pokračovať v písaní práce.\n- Skripty dať na GIT. Na trénovanie aj na prípravu dát. Na git nedávajte veľké dáta. \n\nZásobnk úloh:\n\n- Nájsť ďalšie tréningové údaje pre model​\n- Vytvoriť rozšírené webové rozhranie, ktoré sa bude pohodlnejšie pou", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-4", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "na GIT. Na trénovanie aj na prípravu dát. Na git nedávajte veľké dáta. \n\nZásobnk úloh:\n\n- Nájsť ďalšie tréningové údaje pre model​\n- Vytvoriť rozšírené webové rozhranie, ktoré sa bude pohodlnejšie používať​\n- Optimalizovať algoritmy, aby sa zvýšila účinnosť​\n- Skúste na Titane natrénovať nejaký \"lepší\" model LLAMA ako 7B-4bit.\n\nStretnutie 7.12.2023\n\nStav:\n\n- 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.\n- Vytvorený prístup na server Titan \n\nÚlohy:\n\n- Vytvorte si GIT repozitár na školskom GITe a dajte do neho Vaše skripty. Dáta tam nedávajte.\n- Skúste natrénovať LLama na servri Titan s SlovakAlpaca Datasetom. \n- Vyskúšajte natrénovať s datasetom sk-quad. \n- 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.\n- Prečítajte si článok: AlpacaEval: An Automatic Evaluator of Instruction-following Models a urobte si poznámnky.\n\nZásobník úloh:\n\n- Natrénujte model SlovakT5 s Slovak Alpaca Datasetom.\n- Pozrite si skripty [text-generation](https://github.co", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-5", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "matic Evaluator of Instruction-following Models a urobte si poznámnky.\n\nZásobník úloh:\n\n- Natrénujte model SlovakT5 s Slovak Alpaca Datasetom.\n- 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)\n- Natrénovaný model je potrebné vyhodnotiť. Dátovú množinu si rozdelte na 2 časti. Metrika na vyhodnotenie je BLEU alebo Rouge. \n- Pokračujte na práci na vlastnom diskusnom datasete.\n\nStretnutie 23.11.2023\n\nStav:\n\n- Písomná práca pokračuje.\n- 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.\n\nÚlohy:\n\n- Dokončiť skript pre získavanie dát. Alebo nájsť dáta a skript ktorý funguje.\n- 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.\n- Pokračujte v písaní BP.\n\nZásobník úloh:\n\n- Pozrite sa na projekt https://github.com/imartinez/privateGPT. Zisite ako to funguje. Vedeli by sme ho spustiť? \n\nStre", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-6", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "úste ho rozbehať so svojimi dátami.\n- Pokračujte v písaní BP.\n\nZásobník úloh:\n\n- Pozrite sa na projekt https://github.com/imartinez/privateGPT. Zisite ako to funguje. Vedeli by sme ho spustiť? \n\nStretnutie 26.10.2023\n\nStav:\n\n- Podarilo sa spustiť pipeline pre generovanie pomocou Slovak T5 small.\n\nÚlohy:\n\n- [ ] Pokračovať v otvorených úlohách z minulého stretnutia.\n- [x] Prečítajte si DP O. Megela.\n- [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.\n\nStretnutie 12.10.2023\n\nStav:\n\n- Pripravený skript na preklad pomoocu HF transformers a Helsinki NLP modelov aj s TKInter rozhraním.\n- Písomná príprava podľa pokynov.\n\nÚlohy:\n\n- [x] Dobrý model na generovanie Slov. jazyka je Slovak T5 Small.\n- [ ] Pokračujte v teoretickej príprave podľa otvorených úloh - prehľad generatívnych jazykových modelov.\n- [ ] 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. Nepos", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-7", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "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.\n- [ ] Druhá možnosť je použiť dáta z Reditu alebo Faceboku, podľa skriptov V. Ferko.\n- [-] Generatívny model už natrénoval p. Omasta a p. Megela. Oboznámte sa s ich profilmi.\n\nStretnutie 1.8.2023\n\nStav:\n\n- Oboznámenie sa s jazykom Python\n\nÚlohy:\n\n- 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).\n- Nainštalujte si prostredie Anaconda a knižnicu Huggingface transformers.\n- Prečítajte si knihu https://d2l.ai/\n- Zistite ako funguje neurónová sieť typu Transformer. https://jalammar.github.io/illustrated-transformer/\n- 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 \n- Napíšte jednoduchý skript na strojový preklad", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2021/eduard_matovka/README.md::chunk-8", + "document_path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "atí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 \n- Napíšte jednoduchý skript na strojový preklad pomocou knižnice HF transformers.\n- Oboznámte sa s https://github.com/karpathy/minGPT\n\nZásobník úloh:\n\n- Zoberte korpus slovenských alebo iných diskusí a natrénujte neurónový model aby podľa neho odpovedal na zadané odázky.\n- Zistite, ako sa vyhodnucujú generatívne modely pre úlohu konverzácie. \n- Oboznámte sa s frameworkom https://python.langchain.com/docs/get_started/introduction.html", + "text_length": 589 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-0", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Manohar Gowdru Shridhara\n\nBeginning of the study: 2021\n\nrepository: https://git.kemt.fei.tuke.sk/mg240ia", + "text_length": 106 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-1", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Disertation Thesis\n\nin 2023/24\n\nHate Speech Detection\n\nGoals:\n\n- Publish and defend a minimal thesis \n- Write a dissertaion thesis\n- Publish 2 A-class journal papers", + "text_length": 168 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-2", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Second year of PhD study\n\nGoals:\n\n- Publish and defend a minimal thesis. Minimal thesis should contain PhD thesis statements - scientific contributions.\n - Provide state-of-the-art overview.\n - Formulate dissertation theses (describe scientific contribution of the thesis).\n - Prepare to reach the scientific contribution.\n- Publish Q2/Q3 paper\n- Publish 1 school conference paper. \n- Publish 1 regular conference paper. \n- Prepare a demo for hate speech detection.\n\nMeeting 5.10.\n\nStatus:\n\nStudied python and ML: \n - Basics to Advanced python is completed\n - word2vec and word embedding examples are tried\n - Basic tools (tensorflow) on Machine Learning and task are completed\n - learning on ML and Deep learning libraries and fairseq RNN, SVM BERT code samples\n\nBuilding the datasets memes based on Dravidian languages:\n - Collected base papers on Hate speech Multilanguage troll and not troll memes with low resource languages\n\nCurrected the survey paper and shared for review.\n\nWorked on the baseline HS expriment.\n- https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit\n\nTasks:\n\n- Publish a paper on SAMI 2023\n- publish a paper on a school conference, ask f", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-3", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "iew.\n\nWorked on the baseline HS expriment.\n- https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit\n\nTasks:\n\n- Publish a paper on SAMI 2023\n- publish a paper on a school conference, ask for deadline.\n\nPossible paper topics:\n\n- contine to work on the baseline HS experiment. Evaluate accuracy for the classifiers. This is a possible simple publication.\n- continue to work on the horsehead experiment. This is another possible paper.\n- continue work on the dravidian dataset. this in another possible papers.\n- continue to work on the survey paper. This is another possible Q3 paper.\n\nMeeting 6.9.2022\n\nStatus:\n\n- Managed to move to Kosice. \n- \"A systematic review of Hate Sppech\" is in progress (cca 50 pages + 100 references). \n- \"Horseheard\" paper is in progress.\n\nTasks:\n\n- Gather feedback for \"Systematic review\",make new revisions according to the feedback, select a journal and publish.\n- Pick dataset, prepare several methods of HS and compare results.\n- Work on web demo of HS detection. \n- Continue working on \"horseheard paper\".\n- Read provided books.", + "text_length": 1075 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-4", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## First year of PhD study\n\nGoals: \n\n- [x] Provide state-of-the-art overview.\n- [x] Read and make notes from at least 100 scientific papers or books.\n- [ ] Publish at least 2 conference papers.\n- [x] Prepare for minimal thesis.\n\nResources:\n\n- [Hate Speech Project Page](/topics/hatespeech)\n- https://hatespeechdata.com/\n- [Hate speech detection: Challenges and solutions](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6701757/)\n- [HateBase](https://hatebase.org/) \n- [Resources and benchmark corpora for hate speech detection: a systematic review]\n(https://link.springer.com/article/10.1007/s10579-020-09502-8) \n\nMeeting 5.10.\n\nStatus:\n\nStudied python and ML: \n - Basics to Advanced python is completed\n - word2vec and word embedding examples are tried\n - Basic tools (tensorflow) on Machine Learning and task are completed\n - learning on ML and Deep learning libraries and fairseq RNN, SVM BERT code samples\n\nBuilding the datasets memes based on Dravidian languages:\n - Collected base papers on Hate speech Multilanguage troll and not troll memes with low resource languages\n\nCurrected the survey paper and shared for review.\n\nWorked on a baseline HS experiment:\n\nhttps://git.kemt.fei.tuk", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-5", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "ers on Hate speech Multilanguage troll and not troll memes with low resource languages\n\nCurrected the survey paper and shared for review.\n\nWorked on a baseline HS experiment:\n\nhttps://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit\n\nTasks:\n\n- Publish a paper about the dataset on the SAMI 2023 Conference.\n- Publish a paper in school journal - ask about deadlilne. \n\n14.7:\n\nStatus:\n\n- Worked on an horseheard implementation.\n- Picked a feasible dataset and method to start with: kannada dataset, tagging sentiment for movie reviews. \n- Worked on a paper.\n- Studied several papers,\n- started to work on a streamlit demo\n \nOpen tasks:\n\n- Focus on making a baseline experiment for sentiment classification using classical methods, such as Transformers. PLEASE DO NOT AVOID !!!! \n- 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.\n- Try to prepare an exper", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-6", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "ite 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.\n- Try to prepare an experiment with the selected dataset. https://git.kemt.fei.tuke.sk/mg240ia/Hate_Speech_IMAYFLY_and_HORSEHERD\n- For preparing a web application with demo, learn about streamlit. In progress: https://git.kemt.fei.tuke.sk/mg240ia/Hate-Speech-Detector-Streamlit \n\nRead Papers : \n\n- https://aclanthology.org/2020.peoples-1.6.pdf \n- https://aclanthology.org/2022.ltedi-1.14/ \n- https://arxiv.org/abs/2108.03867 \n- https://arxiv.org/pdf/2112.15417v4.pdf \n- https://arxiv.org/ftp/arxiv/papers/2202/2202.04725.pdf \n- https://github.com/manikandan-ravikiran/DOSA/blob/main/EACL_Final_Paper.pdf \n- https://aclanthology.org/2020.icon-main.13.pdf \n- http://ceur-ws.org/Vol-3159/T6-4.pdf \n- https://www.researchgate.net/publication/353819476_Hope_Speech_detection_in_under-resourced_Kannada_language \n- https://www.researchgate.net/publication/346964457_Creation_of_Corpus_and_analysis_in_Code-Mixed_Kannada-English_Twitter_data_for_Emotion_Prediction \n- https://www.semanticscholar.org/paper/Detecting-stance-in-kannad", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-7", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "archgate.net/publication/346964457_Creation_of_Corpus_and_analysis_in_Code-Mixed_Kannada-English_Twitter_data_for_Emotion_Prediction \n- https://www.semanticscholar.org/paper/Detecting-stance-in-kannada-social-media-code-mixed-SrinidhiSkanda-Kumar/f651d67211809f2036ac81c27e55d02bd061ed64 \n- https://www.academia.edu/81920734/Findings_of_the_Sentiment_Analysis_of_Dravidian_Languages_in_Code_Mixed_Text \n- https://competitions.codalab.org/competitions/30642#learn_the_details \n- https://paperswithcode.com/paper/creation-of-corpus-and-analysis-in-code-mixed \n- https://paperswithcode.com/paper/hope-speech-detection-in-under-resourced#code", + "text_length": 638 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-8", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "## Meeting 13.6.\n\n- Implemented a Mayfly and Horse Heard Algorithms in Python and Matlab for HS datasets.\n- Written a draft of a paper.\n- Performed experiments on HS with Word2Vec, FastText, OneHot.\n\nTasks:\n\n- Implement open tasks from the previous meetings !!!!!!!!\n- Share Scripts with GIT and Drafts with Online Word or Docs !!!\n- try https://huggingface.co/cardiffnlp/twitter-roberta-base-hate, try to repeat the training and evaluation", + "text_length": 440 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-9", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "## Meeting 24.5.\n\n- shared colab notebook, with on-going implementation of mayfly algorithm for preprocessing in sentiment recognition in a twitter dataset.\n\nTasks:\n\n- Implement open tasks from the previous meetings !!!\n- [ ] Focus on making a baseline experiment for sentiment classification using classcal methods, such as Transformers.\n- [x] Consider using pre-trained embeddings. FastText, word2vec, sentence-transformers, Labse, Laser,\n\nSupplemental tasks:\n\n- [x] Fininsh the mayfly implementation", + "text_length": 502 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-10", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "## Meeting 20.5.\n\n- learned about Firefly / mayfly optimization algorithm.\n- read ten papers,\n- wrote 1 page abstract about possible system, based od DBN.", + "text_length": 155 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-11", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "## Meeting 25.4.\n\n- Learned aboud deep learning lifecycle / evaluation, BERT, RoBERTa, GPT\n- Tried HF transformers, Spacy, NLTK, word embeddings, sentence transformers.\n- Set up a repo with notes: https://git.kemt.fei.tuke.sk/mg240ia\n\nTasks:\n\n- [ ] Publish experiments into the repository.\n- [ ] Prepare a paper for publication in faculty proceedings http://eei.fei.tuke.sk/#!/\n- [ ] Send me draft in advance.\n\nSuplemental tasks:\n\n- [x] For presentation of the results, learn about https://wandb.ai/. This can dispplay results (learning curve, etc.)\n- [ ] For preparing a web aplication with demo, learn about streamlit.", + "text_length": 620 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-12", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "## Meeting 12.4.\n\n- Created repositories, empty so far.\n- 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\".\n- The experiments are based on BERT (which kind?), Tweet Emotion Intensity. \n- Prepared colab notebook with experiments.\n\nTasks:\n\n- [ ] Finish experiments, upload source codes into git, provide a description of the experiments.\n- [ ] 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.\n- [x] Learn about \"Sentence Transformers\".\n- [ ] Summarize the results in the table, publish the table on git. \n- [-] Use Markdown for formatting. There is \"Typora\".\n- [-] Continue to improve the SCYR paper.\n- If you have some conference in mind, tell me.", + "text_length": 929 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-13", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "## Meeting 25.3.22\n\n- Learned about Transformers, BERT, LSTM and RNN.\n- Tried HuggingFace transformers library\n- Started Google Colab - executing sentiment analysis, hf transformers pipeline functions.\n- prepared datasets: twitter-roberta Datasets. Experiments a re riunnig, no results yet.\n- prepared a short note about nlp and neural networks. \n- still working on the SCYR paper\n\nTasks:\n\n- [-] finish experiments about sentiment and present results.\n- [-] create a repository on git.kemt.fei.tuke.sk and upload your experiments, results and notes. Use you student creadentials.\n- [-] continue working on \"SCYR\" review paper, consider publishing it elswhere (the firs version got rejected).\n- [-] prepare an outline for another paper with sentiment classification.", + "text_length": 766 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-14", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "## Meeting 10.3.22\n\n- Improvement of the report.\n- Installed Transformers and Anaconda\n\nTasks:\n\n- Try [this model](https://huggingface.co/cardiffnlp/twitter-roberta-base-sentiment) with your own text.\n- Learn how Transformers Neural Network Works. Learn how Roberta Model training works. Learn how BERT model finetuning works. Write a short memo about your findings and papers read on this topic.\n- Pick a dataset: \n - https://huggingface.co/datasets/sentiment140 (english)\n - https://www.clarin.si/repository/xmlui/handle/11356/1054 (multilingua)\n - https://huggingface.co/datasets/tamilmixsentiment (english tamil code switch)\n- Grab baseline BERT type model and try to finetune it for sentiment classification.\n- For finetuning and evaluation you can use this scrip https://github.com/huggingface/transformers/tree/master/examples/pytorch/text-classification\n- For finetuning you will need to install CUDA and Pytorch. It can work on CPU or NOT.\n- If you need GPU, use the school server idoc.fei.tuke.sk or google Colab.\n- Continue working on the paper.\n- Remind me about the SCYR conference payment.", + "text_length": 1113 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-15", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 15, + "text": "## Meeting 21.2.22\n\n- Written a report about HS detection (in progress) \n\nTasks:\n\n- Repair the report (rewrite copied parts, make the paragrapsh be logically ordered, teoreticaly - formaly define the HS detection, analyze te datasets in detail - how do they work. what metric do they use).\n- Install Hugging Face Transformers and come through a tutorial", + "text_length": 354 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-16", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 16, + "text": "## Meeting 31.1.22\n\n- Read some blogs about transformers\n- Installed and tied transformers\n- Worked on the review paper\n- Picked the Twitter Dataset on keggle\n- still selecting a method\n\nOpen tasks:\n\n- Continue to work on the paper and share the paper with us.\n- Prepare som ideas for the common discussion about the project.\n- [ ] Try to prepare an experiment with the selected dataset.\n- [ ] You can use the school CUDA infrastructre (idoc.fei.tuke.sk).\n- [ ] Set up a repository for experiments, use the school git server git.kemt.fei.tuke.sk.\n- [x] Get ready to post a paper on the school PhD conference SCYR, deadline is in the middle of February http://scyr.kpi.fei.tuke.sk/.", + "text_length": 681 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-17", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 17, + "text": "### Meeting 10.1.22\n\n- Set up a git account https://github.com/ManoGS with script to prepare \"twitter\" dataset and \"english\" dataset for HS detection.\n- confgured laptop with (Anaconda) / PyCharm, pytorch, cuda gone throug some basic python tutorials.\n- Read some blogs how to use kaggle (dataset database).\n- tutorials on huggingface transformers - understanding sentiment analysis.\n\nOpen tasks:\n\n- [x] Continue to work on the review - with datasets and methods (specified below).\n- [x] Read and make notes about transformers, neural language models and finentuning.\n- [ ] Pick feasible dataset and method to start with.\n- [ ] You can use the school CUDA infrastructre (idoc.fei.tuke.sk).\n- [ ] Set up a repository for experiments, use the school git server git.kemt.fei.tuke.sk.\n- [ ] Get ready to post a paper on the school PhD conference SCYR, deadline is in the middle of February http://scyr.kpi.fei.tuke.sk/.", + "text_length": 918 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-18", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 18, + "text": "#### Meeting 16.12.21\n\n- A report was provided (through Teams).\n- Installed Anaconda and started s Transformers tutorial\n- Started Dive into python book\n\nTask:\n\n- Report: Create a detailed list of available datasets for HS.\n- Report: Create a detailed description of the state of the art approaches for HS detection.\n- Practical: Continue with open tasks below. (pick datasetm, perform classification,evaluate the experiment.)", + "text_length": 426 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-19", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 19, + "text": "#### Meeting 10.12.21\n\nNo report (just draft) was provided so far.\n\n1. Read papers from below and make notes what you have learned fro the papers. For each note make a bibliographic citation. Write down authors of the paper, name paper of the paper, year, publisher and other important information. \nWhen you find out something, make a reference with a number to that paper.\nYou can use a bibliografic manager software. Mendeley, Endnote, Jabref.\n2. From the papers find out answers to the questions below.\n3. Pick a hatespeech dataset. \n4. Pick an approach and Python library for HS classification.\n5. Create a [GIT](https://git.kemt.fei.tuke.sk) repository and share your experiment files. Do not commit data files, just links how to download the files.\n6. Perform and evaluate experiments.", + "text_length": 792 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-20", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 20, + "text": "#### Meeting 10.11.21", + "text_length": 21 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-21", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 21, + "text": "#### First tasks\n\nPrepare a report where you will explain:\n\n- what is hate speech detection,\n- where and why you can use hate-speech detection,\n- what are state-of-the-art methods for hate speech detection,\n- how can you evaluate a hate-speech detection system,\n- what datasets for hate-speech detection are available,\n\nThe report should properly cite scientific bibliographical sources.\nUse a bibliography manager software, such as Mendeley.\n\nCreate a [VPN connection](https://uvt.tuke.sk/wps/portal/uv/sluzby/vzdialeny-pristup-vpn) to the university network to have access to the scientific databses. Use scientific indexes to discover literature:\n\n- [Scopus](https://www.scopus.com/) (available from TUKE VPN)\n- [Scholar](httyps://scholar.google.com) \n\nYour review can start with:\n\n- [Hate speech detection: Challenges and solutions](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6701757/)\n- [HateBase](https://hatebase.org/) \n- [Resources and benchmark corpora for hate speech detection: a systematic review](https://link.springer.com/article/10.1007/s10579-020-09502-8) \n\nGet to know the Python programming language\n\n- Read [Dive into Python](https://diveintopython3.net/) \n- Install [Anaconda]", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/manohar_gowdru_shridharu/README.md::chunk-22", + "document_path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 22, + "text": "matic review](https://link.springer.com/article/10.1007/s10579-020-09502-8) \n\nGet to know the Python programming language\n\n- Read [Dive into Python](https://diveintopython3.net/) \n- Install [Anaconda](https://www.anaconda.com/) \n- Try [HuggingFace Transformers library]( https://huggingface.co/transformers/quicktour.html)", + "text_length": 322 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-0", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2021", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-1", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2026\n\nhttps://git.kemt.fei.tuke.sk/ms058bd/Diplomovka\n\nNázov práce:\n\nAgentové systémy pomocou veľkého jazykového modelu\n\nZadanie:\n\n1. Vypracujte prehľad systémov generovania prirodzeného jazyka, ktoré podporujú vyhľadávanie a sú vhodné na spracovanie právnych informácií. \n2. Na základe tohto prehľadu navrhnite a implementujte agentový systém, ktorý umožní vyhľadávanie v právnych dokumentoch, odpovedanie na otázky a sumarizáciu textov. \n3. Vytvorte sadu vzorových úloh na testovanie systému a optimalizujte generovanie odpovedí pre úlohy, ktoré vyžadujú viacero krokov. \n4. Otestujte systém na navrhnutých úlohách, vyhodnoťte jeho výkonnosť a identifikujte slabé miesta. \n\nCiele:\n\n- Vytvoriť systém pre spracovanie právnych informácií. Systém by mal vedieť vyhľadávať v rozsudkoch, zákonoch a vyhláškach. \n, odpovedať na otázky a sumarizovať dokumenty. Je možné, že riešenie úlohy si vyžiada viac krokov.\n- Vytvoriť sadu vzorových úloh pre vyhodnotenie takéhoto systému.\n- Zlepšiť generovanie odpovedí pre úlohy vyžadujúce viac krokov.\n\nStretnutie 23.3.2026\n\nStav:\n\n- Systém funguje.\n- Vyhodnotenie Faithfulness, AnswerRelevancy a ContextualRelevancy s databázou otázok a odp", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-2", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "epšiť generovanie odpovedí pre úlohy vyžadujúce viac krokov.\n\nStretnutie 23.3.2026\n\nStav:\n\n- Systém funguje.\n- Vyhodnotenie Faithfulness, AnswerRelevancy a ContextualRelevancy s databázou otázok a odpovedí od právničky.\n- Písomná časť je WIP.\n- aktuálne zdrojáky sú k dispozícii na https://git.kemt.fei.tuke.sk/ms058bd/Diplomovka\n\nÚlohy:\n\n- aktualizovať README zdrojákov\n- pracovať na texte. Používajte google scholar a odkazy v texte.\n- vypracujte viacero experimentov pre rôzne hodnoty hyperparametrov (napr. threshold) a výsledky dajte do tabuľky, príp. grafu.\n- Opíšte experimenty - komponenty, dáta, hyperparametre. Slovne zhodnotte výsledky v tabuľkách.\n\nStretnutie 5.2.2026\n\n- Zväčšený index\n- Problém s kvalitou vyhľadávania. Problém môžu byť tabuľky - agent ich nevidí. Parsovanie bolo z html dát cez beautifulsoup.\n- Práca na texte.\n\nÚlohy:\n \n- Vyhodnotte Váš systém pomocou viacerých metrík DeepEval - pomocou jazykového modelu. \n\nZásobník úloh:\n\n- Zlepšiť krok rozhodnovania - použiť internet, FAISS alebo API?\n- Preparsovať dáta pomocou Docling.\n\nStretnutie 5.12.2025\n\n- Zlepšenie parsovania a promptingu.\n- Funguje LangGraph pipeline - \"router\" vyberie index (API, FAISS alebo internet)", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-3", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "rnet, FAISS alebo API?\n- Preparsovať dáta pomocou Docling.\n\nStretnutie 5.12.2025\n\n- Zlepšenie parsovania a promptingu.\n- Funguje LangGraph pipeline - \"router\" vyberie index (API, FAISS alebo internet), podľa toho sa získajú dokumenty (40 nabližších). Tie sa filtrujú pomocou LM (na cca 5). Potom sa generuje sa odpoveď. Niekedy sa odfiltruje relevantný dokument (chunk) a model potom halucinuje.\n- Prerábal som chunkovanie html pre parsovanie dat. Chunk mal 512 tokenov. Prerábané kvoli vysvetlovaniu z akeho zakona, cisla, bodu… zakon je. Následne bolo potrebne preindexovanie. Model me5-large. Veľkosť indexu 26Gi. Avšak len html, prilohy neindexovane.\n- Nastavovanie promptu pre sumarizaciu čo použit(API, web search, faiss)\n- Úprava tresholdu a poctu dokumentov pre faiss retriever aby naslo spravne dokumenty a spravne odpovedl na otazku. Kazda odpoved ina a dobra v niecom, zla v niecom preto zistujem ako to upravit spravne. Vytvorenie pomocnych funkcii nieco ako router na filtrovanie zakonov, ktore sa vobec dostanu dalej na tvorbu odpovede\n- mozno bude treba iny model takze rechunk, reindex, rerank aby tam boli aj pdfka(to je dost podstatne). Povedat ze grafika 1 je obmedzena. skusit sa", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-4", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": ", ktore sa vobec dostanu dalej na tvorbu odpovede\n- mozno bude treba iny model takze rechunk, reindex, rerank aby tam boli aj pdfka(to je dost podstatne). Povedat ze grafika 1 je obmedzena. skusit sa opytat na ine graficke karty lepsie. 1 - 30 hodin. 2,3,4 - 5 hodin cca\n\nÚlohy:\n\n- Použiť reranking namiesto \"filtrovania\".\n- Použiť iný vektorový model - ktorý vie väčší kontext. Dá sa použiť prompting aj pre vektorový model (pre indexovanie). \n- Pracovať ďalej na texte a dávať zdrojáky na GIT.\n\nZásobník úloh:\n\n- Doplniť testy, ktoré by automaticky vyhodnotili aktuálny postup vyhľadávania (pipeline) pomocou jazykového modelu. \n- Použiť \"školské API\" pre generovanie aj pre indexovanie.\n- Doplniť spätnú kontrolu výsledkov pomocou jazykového modelu.\n- Dotrénovanie Rerankera.\n- Dorobiť parsovanie príloh v PDF (nie je priorita).\n- Je možné vyhodiť starú legislatívu.\n\nStretnutie 27.11.2025\n\nStav:\n\n- Práca na písomnej časti (13 strán).\n- Práca s API funguje, chyba 500 je spôsobená na strane poskytovateľa.\n- WIP - vysvetlenie rozhodnutia. Je potrebné podrobne preparsovať dump slov-lex aby sme zachytili meno zákona a paragrafy.\n- Momentálne je preparsovaná časť.\n- Sú technické problémy s quadro", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-5", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "tovateľa.\n- WIP - vysvetlenie rozhodnutia. Je potrebné podrobne preparsovať dump slov-lex aby sme zachytili meno zákona a paragrafy.\n- Momentálne je preparsovaná časť.\n- Sú technické problémy s quadro.\n\nÚlohy:\n\n- Zlepšite parsovanie legislatívy. \n- kódy dajte na git.\n\nZásobník úloh:\n\n- Využite lokálne nasadený veľký jazykový model, embedding model, vektorovú databázu.\n- Spätne overte vysvetlenie.\n\nStretnutie 7.11.2025\n\nStav:\n\n- Prerobené z langChain na langGraph takže samostatné nodes a endpoints teda ja mám kontrolu kam čo pôjde\n- Pridané API Ministerstva ktoré, ale momentálne vracia chybu a teda nie je správne implementované\n- Pridanie monitoringu pomocou langSmith teda vidím kaskádový proces celého rozhodovania, počet tokenov a response time\n- pred vstupom do faiss edgu preformuluje otázku na právne položenú resp. upraví užívateľov text(reformulate_query)\n\nÚlohy:\n\n- Zvýšte vysvetliteľnosť. Pri výsledkoch vždy uvedte, podľa ktorého právneho predpisu sa orientujete. \n- Môžete pridať aj \"odôvodnenie\".\n- Pridajte viac testovacích otázok do databázy otázok.\n- Pripravte deployment pomocou Docker Compose na školskú infraštruktúru. Využitie lokálneho OpenAI compatible API.\n- Pracujte na", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-6", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "j \"odôvodnenie\".\n- Pridajte viac testovacích otázok do databázy otázok.\n- Pripravte deployment pomocou Docker Compose na školskú infraštruktúru. Využitie lokálneho OpenAI compatible API.\n- Pracujte na texte práce. Aké sú najnovšie články o inteligentných agentoch?\n\nZásobík úloh:\n\n- Pridajte možnosť pre spätnú kontrolu. Ak vieme odpoveď, je správna vhľadom na zadanú otázku a nájdené právne predpisy?\n- Vyčíslite kvalitu systému pre testovacie otázky.\n- Možnosť prdať vlastné dokumenty do vyhľadávania alebo do databázy.\n\nStretnutie 30.10.2025\n\nStav:\n\n- Pripravené Gradio demo, OpenAI SDK agent vie vyhľadávať v FAISS indexe.\n- Pripravená prvá verzia OpenAI agenta, pracuje s gpt4-o-mini\n\nÚlohy:\n\n- Dajte zdrojáky dema a agenta na GIT\n- Naučte agenta pracovať s REST API [Obcan Justice](https://obcan.justice.sk/pilot/api/ress-isu-service/swagger-ui/index.html#)\n- agent by mal vedieť prehľadať zákony, vyhlášky, správne konania, rozsudky, relevantné webové stránky.\n- Pripravte novú databázu otázok a odpovedí ohľadom colného konania.\n- Pokračujte v práci na texte, študujte \"function calling\".\n\nZásobník úloh:\n\n- Je možné že bude treba viac agentov.\n- Je možné, že výsledky bude treba overiť (gro", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-7", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "k a odpovedí ohľadom colného konania.\n- Pokračujte v práci na texte, študujte \"function calling\".\n\nZásobník úloh:\n\n- Je možné že bude treba viac agentov.\n- Je možné, že výsledky bude treba overiť (grounding).\n- Možno bude treba toto urobiť bez OpenAI.\n\nStretnutie 10.10.2025\n\nStav:\n\n- Štúdium podľa odporúčania. Poznámky z oblasti znalostné grafy, langchain, SBERT, function calling - agent tools. LLM.\n- Máme index zákonov.\n\nÚlohy:\n\n- Vytvorte systém pre generovanie odpovede na základe získaných dokumentov.\n- Navrhnite agenta pre získanie relevantných informácií ku dotazu a generovanie odpovede. \nAgent bude vedieť využívať viaceré nástroje, napr. verejné REST API alebo vyhľadávanie na internete.\n- Ako modelový príklad použite otázky týkajúce sa colných konaní. Nájdite si príklady otázok z tejto oblasi.\n- Oboznámte a vyskúšajte OpenAI Agents SDK alebo nový langchain alebo CrewAI.\n- Do práce píšte o inteligentných agentoch, REACT, LLM, function calling.\n\nPrázdninová Príprava:\n\n- Zopakujte si Python. \n- Vyskúšajte si prácu s veľkými jazykovými modelmi. Nainštalujte si ollama. \n- Oboznámte sa s frameworkom LangChain. \n- pozrite si LangChain Transformers Agents. \n- Ako funguje FunctionCall", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-8", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "i Python. \n- Vyskúšajte si prácu s veľkými jazykovými modelmi. Nainštalujte si ollama. \n- Oboznámte sa s frameworkom LangChain. \n- pozrite si LangChain Transformers Agents. \n- Ako funguje FunctionCalling - AgentTools?. \n- Zistite ako funguje REACT (Reasoning and Acting) Agent - nájdite článok na Scholar.\n- Zistite ako funguje dotrénovnaie veľkých jazykových modelov. Zistite čo je to PEFT (LORA, QLORA) a čo je to kvantizácia. Zisite čo je to \"few shot\" prompting. \n- Čo je to inferenčný server. Zistite čo je to VLLM, na čo je to dobré. Pozri si LocalAI.", + "text_length": 559 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-9", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "## Diplomový projekt 2025\n\nStretnutie 14.5.2025\n\nStav:\n\n- Zaindexované zákony a vyhlášky vyhlásené v roku 2022 pomocou FAISS a SlovakBert-mnlr\n- Urobené gradio demo pomocou langchain, ktoré ku dotazu nájde a zobrazí 3 najlepšie dokumenty.\n\nÚlohy:\n\n- Zlepšite skript pre predspracovanie dát. Pridajte ďalšie dáta, identifikujte a opravte nedostatky. Chceme mať k dispozícii právne kompletné právne predpisy v súčasnom znení.\n- Preštudujte si knižnicu LangGraph a \"function calling\". \n- Zistite, ako \"znalostný graf - knowledge graph\" dokáže vylepšiť výsledky vyhľadávania v zákonoch. Graph RAG.\n\nZásobník úloh:\n\n- Vyjadrite vnútorné a vzájomné vzťahy medzi právnymi predpismi.\n- Vytvorte \"pekné\" webové rozhranie a príslušné Docker skripty pre nasadenie dema.\n- Vytvorte agenta, ktorý bude vedioeť riešiť právne problémy.\n- Zostaviť testovacie dáta. Vzorovú množinu otázok, odpovedí a relevantných dokumentov. Pomocou tejto množiny vyhodnotiť systém. Vyhodnotneie sa skladá z dvoch častí - vyhdonotenie vyhľadávania a vyhodnotenie automatických odpovedí.\n- Inšpirovať sa stránkou https://aipravnik.sk/\n- Natrénujte model pre úlohu sumarizácie súdnych rozhodnutí (nízka priorita).\n\nStretnutie 10.3.2025", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-10", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "e vyhľadávania a vyhodnotenie automatických odpovedí.\n- Inšpirovať sa stránkou https://aipravnik.sk/\n- Natrénujte model pre úlohu sumarizácie súdnych rozhodnutí (nízka priorita).\n\nStretnutie 10.3.2025\n\nÚlohy:\n\n- [x] Preštudovať - ako zostaviť RAG systém pomocou LangChain\n- [-] Vytvoriť databázu právnych informácií - texty zákonov, vyhlášok a rozsudkov spolu s metainformáciami. Vedúci pridelí prístup na QUADRO. (úloha Šarišský)\n- [-] Zistiť ako fungujú agentové systémy na báze LLM - React. A volanie \"nástrojov\" function calling pomocou LLM.\n- Získajte prístup na QUADRO. V adresári /mnt/sharedhome/hladek/corpora/slovak_law/ sú dáta. Dáta premente do JSON.\nExtrahujte text, vytiahnite metainformácie. Na extrakciu textu využite vhodnú knižnicu. Napr. Apache TIKA.\n- [-] Vytvoriť RAG systém pre spracovanie tejto databázy. Pozrite si: Inšpirácia prácou Valerii Kutsenko, Yevhenii Leonov, [Oleh Poiasnik](/students/2022/oleh_poiasnik). Môžete sa inšpirovať [GIT BP Poiasnik](https://git.kemt.fei.tuke.sk/op405wm/Bakalarska_praca) (úloha Ščišľak)\n\nMyšlienkový postup pre ZP:\n\n1. Zadefinujete úlohu a pojmy.\n2. Vysvetlíte, ako sa táto úloha rieši vo svete.\n3. Napíšete, ako ste túto plohu riešlili", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-11", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": ".tuke.sk/op405wm/Bakalarska_praca) (úloha Ščišľak)\n\nMyšlienkový postup pre ZP:\n\n1. Zadefinujete úlohu a pojmy.\n2. Vysvetlíte, ako sa táto úloha rieši vo svete.\n3. Napíšete, ako ste túto plohu riešlili Vy a prečo. \n4. Vyhodnottíte Vaše riešenie. Porováte výsledky so svetom a identifikujete miesta na zlepšenie.\n\nZásobník úloh:\n\n- [x] Dáta sa vložia do databázy a zaindexujú vhodným SBERT modelom.\n- [ ] Vyhľadať na internete množinu vzorových právnych otázok a vyhodnotiť systém (Šarišský)", + "text_length": 489 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-12", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "# Bakalárska práca 2024\n\n[Git repo](https://git.kemt.fei.tuke.sk/ms058bd/vp2023)\n\nSúvisiace materiály:\n\n- [Projektová stránka](/topics/chatbot)\n- [Repozitár s webovou aplikáciou](https://git.kemt.fei.tuke.sk/sh662er/rasa-flask-website)\n- [Repozitár s chatbotom](https://git.kemt.fei.tuke.sk/sh662er/Rasa)\n- Bakalárska práca [Samuel Horáni](/students/2019/samuel_horani)\n- video kanál s [RASA tutoriálom](https://www.youtube.com/watch?v=rlAQWbhwqLA&list=PL75e0qA87dlHQny7z43NduZHPo6qd-cRc)\n- Slovenský Spacy model https://github.com/hladek/spacy-skmodel\n\nNávrh na zadanie BP:\n\nDialógový systém pre zodpovedanie najčastejšie kladených otázok\n\n1. Vypracujte prehľad metód dialógových systémov s použitím pravidiel a jazykových modelov. \n2. Navrhnite a overte bázu pravidiel pre dialógový systém pre pomoc pri komunikácii občana s mestským magistrátom.\n3. Vytvorte webové demo pre chatbota.\n4. Identifikujte slabé miesta a navrhnite zlepšenia dialógového systému.\n\nNápady na balakársku prácu:\n\n- chatbot pre komunikáciu s mestom\n- vytvorenie NLU databázy.\n- Urobenie web rozhrania.\n- dá sa to prepojiť aj na QA systém.\n\nStretnutie 23.02.2024\n\nStav:\n\n- Práca na text aj na pravidlách.\n\nStretnutie 9.2.2024", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-13", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "pre komunikáciu s mestom\n- vytvorenie NLU databázy.\n- Urobenie web rozhrania.\n- dá sa to prepojiť aj na QA systém.\n\nStretnutie 23.02.2024\n\nStav:\n\n- Práca na text aj na pravidlách.\n\nStretnutie 9.2.2024\n\nStav:\n\n- Urobené nové testovacie scenáre a vyhodnotenie modelu.\n- Pridané pravidlá pre FAQ a chitchat.\n- Vyskúšané PrivateGPT.\n\nÚlohy:\n\n- Vytvorte Dockerfile na nasadenie aplikácie.\n- Podľa výsledkov vyhodnotenia zlepšite bázu pravidiel.\n- Pracujte na texte\n\nZásobník úloh:\n\n- Ď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.\n\nStretnutie 4.1.2024\n\nStav:\n\n- Splnené úlohy z minulého stretnutia.\n\nÚlohy:\n\n- Vypracujte prezentáciu s výsledkami zo semestra.\n- Pokračujte v písaní. \n- Vytvorte nové testovacie scenáre, vyhodnotte model a doplnte výslekdy do práce.\n- Do chatbota doplňte pravidlá pre [FAQ](https://rasa.com/docs/rasa/chitchat-faqs/)\n- Zdrojové kódy dajte na GIT.\n\nZásobník úloh:\n\n- Rozbehať PrivateGPT a integrovať ho do RASA.\n\nStretnutie 8.12.\n\nStav:\n\n- Práca na databáze pravidiel pre dialóg. Pravidlá obsahujú na", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-14", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "a/chitchat-faqs/)\n- Zdrojové kódy dajte na GIT.\n\nZásobník úloh:\n\n- Rozbehať PrivateGPT a integrovať ho do RASA.\n\nStretnutie 8.12.\n\nStav:\n\n- Práca na databáze pravidiel pre dialóg. Pravidlá obsahujú najčastejšie otázky týkajúce sa digitálnych služieb.\n\nÚlohy:\n\n- [x] Vedúci finalizuje zadanie.\n- [x] Pokračujte v písomnej práci.\n- [x] Pokračujte v tvorbe webovej aplikácie - integrujte pravidlá od kolegu Ščišľaka-\n- [x] Zistite ako pracujú veľké jazykové modely a napíšte si poznánmky.\n- [x] Zistite, čo je to \"Retrieval Augumented Generation\", ako to funguje a na čo je to dobré.\n- [x] Oboznámte sa so softvérom PrivateGPT. Zistite ako funguje, napíšte is poznámky-\n- [x] Pridajte kapitolu o Získavaníí dokumentov pre použitie v dialógových systémoch.\n\nZásobník úloh:\n\n- [-] Na školský server alebo na vlastnú M1 nainštalujte PrivateGPT.\n\nStretnutie 10.11.2023\n\nStav:\n\n- Web app funguje. Frontend je HTML, CSS, Javascrip - axios.\n- Zdrojáky sú na https://git.kemt.fei.tuke.sk/ms058bd/vp2023. \n\nÚlohy:\n\n- Pokračujte\n- Vedúci sa pozrie na build - Dockerfile.\n\nStretnutie 27.10.2023\n\n- Pokračuje písomná príprava.\n- Pokračuje práca na stránke. \n\nÚlohy:\n\n- Pokračujte v otvorených úlohách.\n- Preskúmajt", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-15", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 15, + "text": "y:\n\n- Pokračujte\n- Vedúci sa pozrie na build - Dockerfile.\n\nStretnutie 27.10.2023\n\n- Pokračuje písomná príprava.\n- Pokračuje práca na stránke. \n\nÚlohy:\n\n- Pokračujte v otvorených úlohách.\n- Preskúmajte možnosti vytvorenia vlastného frontentu pre RASA chatbota. Zistite viaceré alternatívy.\n\nStretnutie 6.10.2023\n\nStav:\n\n- Dockerfile in progress\n- Teoretická a písomná príprava in progress\n\nÚlohy:\n\n- Pokračujte\n\nStretnutie 29.9.2023\n\nStav:\n\n- Ten istý ako pri minulom stretnutí, kódy sú na KEMT GITe. \n- Momentálne vie chatbot poskytnúť kontakt na človeka, ktorý sa zaoberá danou agendou.\n\nÚlohy:\n\n- [-] Dokončiť demo do podoby vhodnej na nasadenie. Dokončiť Dockerfile, dokončiť pravidlá. Vedúci pomôže so zverejnením.\n- [-] 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\".\n- [-] 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.\n\nZásobník úloh:\n\n- Je potrebné aby chatbot sa vedel \"učiť\", resp. upraviť svoje pravidlá podľa meniacich sa skutočností. Je potrebné vymyslie", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-16", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 16, + "text": "četbota. Do práce uvedte aj priebeh a výsledky testovania.\n\nZásobník úloh:\n\n- 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.\n- Identifikuje, aké ďalšie úlohy by mohol riešiť chatbot.\n- Zlepšite chatbota aby spolupracoval s kognitívnym vyhľadávaním, práca [Kristián Sopkovič](/students/2019/kristian_sopkovic).", + "text_length": 458 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-17", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 17, + "text": "## Vedecký projekt 2023\n\nCiele:\n\n- Napísať krátku písomnú správu\n- Oboznámiť sa s technológiou RASA a so súvisiacimi technológiami NLP\n- Vytvoriť jednoduchého chatbota ktorý bude komunikovať po slovensky.\n\nStretnutie 5.5\n\nStav:\n\n- Draft písomnej správy\n- Začiatok práce s Dockerfile\n\nÚlohy:\n\n- Prepracujte \"blog\" na uverejnenie na stránke.\n- [-] Zlepšiť bázu pravidiel chatbota a dať na git\n- [-] Identifikovať slabé miesta, porozmýšľať ako by sa to dalo zlepšiť.\n \n\nStretnutie 21.4.\n\nStav:\n\n- Chatbot funguje pre vybrané časti agendy mesta\n- Funguje aj lokálne demo pomocou RasaWebWidget. Používa sa Websocket\n- Rozpracovaný písomný report\n\nÚlohy:\n\n- [x] Dať zdrojové kódy na GIT\n- [-] Dokončiť písomnú správu. Cieľ je mať blog, ktorý oboznámi študenta o možnostiach a práci s RASA.\n\nZásobník úloh:\n\n- [-] Dorobiť Dockerfile.\n- [ ] Zverejniť demo na K8s (pre vedúceho).\n- [ ] Zverejniť blog vo formáte Markdown.\n- [-] Zlepšiť bázu pravidiel chatbota.\n- [-] Identifikovať slabé miesta, porozmýšľať ako by sa to dalo zlepšiť.\n\nStretnutie 12.4.2023\n\nStav:\n\n- Robot komunikuje po slovensky pre jedoduchú úlohu súvisiacu s esluzby mesta Košice.\n- Zdrojáky sú na gite https://git.kemt.fei.tuke.sk/ms058bd", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-18", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 18, + "text": "ko by sa to dalo zlepšiť.\n\nStretnutie 12.4.2023\n\nStav:\n\n- Robot komunikuje po slovensky pre jedoduchú úlohu súvisiacu s esluzby mesta Košice.\n- Zdrojáky sú na gite https://git.kemt.fei.tuke.sk/ms058bd/vp2023\n- Napísaný krátky report, draft\n\nÚlohy:\n\n- Zlepšiť štylistiku reportu.\n- 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/ .\n\nZásobník úloh:\n\n- Zlepšite bázu pravidiel chatbota pre esluzby.\n - Zistenie kontaktnej osoby pre agendu.\n - Najčastejšie otázky.\n - Riešenie problémov.\n- Vymyslieť postup ktorý by umožnil pretrénovať chatbota aj pracovníkom magistrátu. Editovanie pravidiel vo webovej aplikácii.\n\nStretnutie 27.3.2023\n\nStav:\n\n- Chatbot funguje po anglicky cez Anaconda.\n- Napísané niektoré reporty.\n- Pripravené niektoré testovacie konverzácie.\n\nÚlohy:\n\n- [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.\n- [x] Zdrojáky dajte na KEMT GIT, repozitár nazvite vp2023\n- [-] Pokračujte v otvorených úlohách.\n\nZásobník úloh:\n\n- [x] Preštuduj", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/martin_sarissky/README.md::chunk-19", + "document_path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 19, + "text": "ktorý bude informovať o dostupných e-službách pre košický magistrát.\n- [x] Zdrojáky dajte na KEMT GIT, repozitár nazvite vp2023\n- [-] Pokračujte v otvorených úlohách.\n\nZásobník úloh:\n\n- [x] Preštudujte si ako sa vyhodnocuje RASA chatbot\n\nÚlohy:\n\n- [x] Nainštalujte a oboznámte sa s RASA frameworkom. Pri inštalácii využite systém Anaconda.\n- [x] Vyberte a prejdite najmenej jeden tutoriál pre prácu s RASA frameworkom.\n- [x] Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.\n- [x] Vytvorte chatbota, ktorý sa bude vedieť predstaviť a odpovedať koľko je hodín.\n- [x] Zistite čo je to NLU a napíšte o tom krátku správu.\n- [-] Prečítajte si Horániho BP.\n- [-] Zistite ako pracuje RASA a napíšte o tom krátku správu. Zistite, aké neurónové siete sa tam používajú.\n\nZásobník úloh:\n\n- Rozbehajte Horániho chatbota.\n- Pridajte podporu slovenčiny do Vášho chatbota.", + "text_length": 892 + }, + { + "chunk_id": "pages/students/2021/matej_novotny/README.md::chunk-0", + "document_path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2021", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2021/matej_novotny/README.md::chunk-1", + "document_path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2026\n\nKlasifikácia webových dát pre lepšie jazykové modelovanie\n\nRepo https://git.kemt.fei.tuke.sk/mn180gd/diplomovka\n\nZadanie:\n\n1. Vypracujte prehľad súčasných prístupov a nástrojov na klasifikáciu webových dát podľa typu a na detekciu nenávistného obsahu. \n2. Navrhnite a implementujte systém, ktorý automaticky roztriedi webové texty podľa uvedených typov a domén a zároveň vyhodnotí ich úroveň nenávisti. \n3. Zostavte kvalitný všeobecný a tematický korpus vhodný na trénovanie jazykového modelu. \n4. Štatisticky analyzujte výskyt jednotlivých kategórií textov a výskyt potenciálneho nenávistného obsahu. \n5. Slovne vyhodnoťte navrhnutý systém a navrhnite ďalšie zlepšenia pre zvýšenie kvality trénovacích dát. \n\n Po trénovaní modelu ho otestujte na relevantných úlohách, vyhodnoťte vplyv klasifikácie a kvality dát na výkonnosť modelu, identifikujte slabé miesta (napr. nedostatočná reprezentatívnosť domén alebo nepresná detekcia nenávisti) a navrhnite konkrétne opatrenia na ich odstránenie.\n\nCieľ je lepšie pripraviť webové dáta na trénovanie jazykového modelu.\n\n1. Trénovacie dáta zotriedime podľa druhu (blogy, eshopy, wikipedia, tematicka stranka, diskusie, kniha, cl", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_novotny/README.md::chunk-2", + "document_path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "na ich odstránenie.\n\nCieľ je lepšie pripraviť webové dáta na trénovanie jazykového modelu.\n\n1. Trénovacie dáta zotriedime podľa druhu (blogy, eshopy, wikipedia, tematicka stranka, diskusie, kniha, clanok,reklama). Druhy textu vyjadrujú kvalitu. Mozeme identifikovat aj domenu (zdravie, pravo, architektura, auta, ). Na to využijeme alebo natrénujeme model. Môžeme vyhodnotiť aj mieru nenávisti v danom texte. \n2. Pomocou informacie o texte vieme zostaviť kvalitný všeobecný alebo tematický korpus. Je možné využiť HPC Devana.\n3. Z týchto textov chceme natrénovať alebo dotrénovať jazykový model.\n\nStretnutie 28.1.2026\n\nStav:\n\n- Skript na vyhodnotenie hatespeech a klasifikáciu dát je pripravený.\n- Overenie - sklep dataset a mc4. \n- Slovak bert je fine tune.\n- klasifikovanie do: blogy, eshopy, wikipedia, tematicka stranka, diskusie,kniha, clanok,správy\n- Trénovanie na colab.\n\nÚlohy:\n\n- Pridajte kategeóriu iné.\n- Dotrénujte klasifikátory. Vyhodnotte ich na testovascej množine. Dáta s príkladmi by mali byť rozdelené na térnovanie a testovacie.\n- Výsledky experimentov dajte do tabuľky. Do práce napíšte trénovací postup aj hyperarametre. \n- Aplikujte klasifikáciu na webový korpus. Štatistické v", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2021/matej_novotny/README.md::chunk-3", + "document_path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "y mali byť rozdelené na térnovanie a testovacie.\n- Výsledky experimentov dajte do tabuľky. Do práce napíšte trénovací postup aj hyperarametre. \n- Aplikujte klasifikáciu na webový korpus. Štatistické výsledky dajte do tabuľky. \n- V teoretickej časti vysvetlite Váš postup a porovnajte ho s inými prístupmi, napr. hplt alebo dolma dataset.\n- Pripravte prezentáciu\n\nStretnutie 13.11.2025\n\n- Pripravený skript pre rozponávanie nenávisti. Pomocou HF transformers model. Natrénovaný vlastný model na kaggle. Treba na tom ešte pracovať. Založený run_classification z HF transformers examples.\n\nÚlohy:\n\n- Dajte skripty na kemt git\n- Pripravte sadu vzorových url ktoré budú reprezentovať kategórie ktoré nás zaujímajú: blogy, eshopy, wikipedia, tematicka stranka, diskusie, kniha, clanok,reklama, organizácia, pornografia, správy. Z url získajte texty, každý text bude patriť do kategórie. Množinu rozdelte na trénovaciu a testovaciu. Zabezpečte aby materiály z jedného zdroja neboli v oboch naraz.\n- Na sade natrénujte a vyhodnotte klasifikátor.\n- Pokračujte v práci na texte.\n\nZásobník úloh:\n\n- Pomocou klasifikátorov analyzujte dostupné slovenské dáta. \n- Overte či je zoznam kategórií správny.\n- Ak bude b", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_novotny/README.md::chunk-4", + "document_path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "natrénujte a vyhodnotte klasifikátor.\n- Pokračujte v práci na texte.\n\nZásobník úloh:\n\n- Pomocou klasifikátorov analyzujte dostupné slovenské dáta. \n- Overte či je zoznam kategórií správny.\n- Ak bude bert klasifikátor pomalý, vyskúšajte štatistické metódy z NLTK.\n\nStretnutie 9.10.2025\n\nStav:\n\n- HF transformers tutoriály na tokenizáciu.\n- spísané poznámky - LLM a tokenizácia (2 PDF z google scholar)\n- stiahnuté nejaké články v wikipédie a vyskúšaný klasifikačný skript.\n- vytvorený prístup na novotny@titan.kemt.fei.tuke.sk . Používajte adresár /mnt/sharedhome/novotny\n\nÚlohy:\n\n- Oboznámte sa so skriptami a dátami v /mnt/sharedhome/hladek/bert-train corpus3, slavic1\n- Vytvorte skript pre rozpoznávanie nenávisti v texte. Cieľom je vytvoriť korpus bez \"nenávistného\" textu. Zistite, koľko nenávistných textov je vo webových korpusoch. \n- Ak je to potrebné, natrénujte model pre ropoznávanie slovenského nenávistného textu. Použite skript pre klasifikáciu a dáta z https://huggingface.co/TUKE-KEMT - senti-sk, toxic-sk a `hate_speech_slovak`.\n- Píšte si poznámku.\n\nZásobník úloh:\n\n- Oboznámte sa s algoritmami v https://www.nltk.org/book/ch06.html\n- Zistite, či sa nená nenávisť klasifikovať aj nej", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_novotny/README.md::chunk-5", + "document_path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "- senti-sk, toxic-sk a `hate_speech_slovak`.\n- Píšte si poznámku.\n\nZásobník úloh:\n\n- Oboznámte sa s algoritmami v https://www.nltk.org/book/ch06.html\n- Zistite, či sa nená nenávisť klasifikovať aj nejakou jednoduchšou metódou (bayes, ME) a porovnajte.\n- Vytvorte model pre klasifikáciu druhu alebo témy textu.\n\nÚlohy:\n\n- Pošlite mi poznámky z DP v 6. týždni.\n- Kódy z DP dávajte na katedrový GIT.\n- Naučte sa pracovať s tmux alebo screen\n\nStretnutie 4.6.2025\n\nStav:\n\n- naštudovaná klasifikácia pomocou Transformer.\n- preskúmany mc4 dataset.\n\nÚloha:\n\n- naučiť sa pracovať s HF Transformers. Prejdite si tutoriál na klasifikáciu dokumentov. Pozrite sa do adresára na githube examples/pytorch/classification, tam nájdete skripty pre klasifikáciu.\n- Oboznámte sa s existujúcimi modelmi pre klasifikáciu textu (nenávisť, téma, druh ...).\n- Napísať skript, ktorý nám toho povie veľa o neznámom texte - druh, téma, nenávisť. Cieľ je aby klasifikácia prebiehala rýchlo pretože textu je veľa. Bude treba odhadnúť, koľko času budeme potrebovať na spracovanie veľkého možstva textu - počet kilobajtov za sekundu.\n\nStretnutie:\n\nÚlohy:\n\n- Naučte sa Python. Nainštalujte si prostredie Anaconda. \n- Naučte sa pracov", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_novotny/README.md::chunk-6", + "document_path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "núť, koľko času budeme potrebovať na spracovanie veľkého možstva textu - počet kilobajtov za sekundu.\n\nStretnutie:\n\nÚlohy:\n\n- Naučte sa Python. Nainštalujte si prostredie Anaconda. \n- Naučte sa pracovať s knižnicou Transformers a HuggingFace Hub - prejdite si jeden alebo 2 tutoriály na klasifikáciu textu.\n- Zistite čo je to jazykový model a urobte si poznámky. \n- Pozrite si knihu Deep Dive into Deep Learning a napíšte si poznámky.\n- Zistite, ako funguje neurónová sieť typu Transformer a napíšte si poznámky.\n- Zistite, čo je to korpus textov mc4. \n- Zistite, ako funguje klasifikácia textov pomocou Transformera. Zisite, čo je to tokenizácia. \n\nZásobník úloh:\n\n- Vytovrte množinu príkladov textov z webu a zotriedte ich podľa kvality a druhu.\n- Natrénujte neurónovú sieť pre rozlišovanie druhov textov.\n\nStretnutie 28.3.2025\n\nStav:\n\n- Naštudovaný Python, neurónové siete čiastočne.\n\nÚlohy:\n\n- Pozrite si dataset https://huggingface.co/datasets/allenai/c4\n- Pozite si knihu https://d2l.ai/\n- Pokračujte v štúdiu HF transformers, vyskúšajte si tutoriály.\n- Sústredte sa na \"Document Classification\". a Document Embeddings. Tu sa používajú tzv. encoder-only modely, napr. BERT, SentenceTransformer.", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_novotny/README.md::chunk-7", + "document_path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "ačujte v štúdiu HF transformers, vyskúšajte si tutoriály.\n- Sústredte sa na \"Document Classification\". a Document Embeddings. Tu sa používajú tzv. encoder-only modely, napr. BERT, SentenceTransformer.\n\nZásobník úloh:\n\n- definovať kategórie, ktoré sú dôležité z hľadiska jazykového modelovania. Ku každej kategórii budú potrebné príklady.\n- Príklad kategórie: Novinový článok, blog, diskusia, urážlivý text, kniha, odborný článok, doménovo orientovaný text - právo, medicína, reklamna, eshop, inzerát, nelegálny obsah,", + "text_length": 518 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-0", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2021", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-1", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2026\n\nNázov:\n\nZnalostné grafy pre zlepšenie vyhľadávania právnych informácií.\n\nZadanie:\n\n1. Vypracujte prehľad súčasných prístupov k využitiu znalostných grafov na vyhľadávanie pomocou jazykových modelov. \n2. Zostavte vzorový znalostný graf z právnej oblasti. \n3. Navrhnite a implementujte systém, ktorý pomocou znalostných grafov umožní vyhľadávanie v rozsudkoch, zákonoch a vyhláškach, odpovedanie na otázky a sumarizáciu dokumentov. \n4. Otestujte systém na navrhnutých úlohách, vyhodnoťte jeho výkonnosť a identifikujte slabé miesta. \n\nCiele:\n\n- Vytvoriť systém pre spracovanie právnych informácií. Systém by mal vedieť vyhľadávať v rozsudkoch, zákonoch a vyhláškac\n, odpovedať na otázky a sumarizovať dokumenty. Je možné , že riešenie úlohy si vyžiada viac krokov.\n- Vytvoriť sadu vzorových úloh pre vyhodnotenie takéhoto systému.\n- Zlepšiť generovanie odpovedí pre úlohy vyžadujúce viac krokov pomocou znalostných grafov\n\nRepozitár: https://git.kemt.fei.tuke.sk/ms252gb/DP2026\n\nStretnutie 30.3.2025\n\nStav:\n\n- Vytvorený GraphRAG, skladá sa z FAISS a Neo4J. Neo4J beží lokálne a spája sa so servrom.\n- Vytvorené testovanie - 110 otázok. Ku každej otázke je správna odpoveď a", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-2", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "026\n\nStretnutie 30.3.2025\n\nStav:\n\n- Vytvorený GraphRAG, skladá sa z FAISS a Neo4J. Neo4J beží lokálne a spája sa so servrom.\n- Vytvorené testovanie - 110 otázok. Ku každej otázke je správna odpoveď a odpoveď ktorú generoval chatbot. Sú tam očakávané zdroje a vygenerované zdroje.\n\nÚlohy:\n\n- Nové kódy dajte na GIT.\n- Overte možnosti zverejnenia databázy otázok.\n- Poromýšľajte o článku.\n- Pracujte na texte.\n\nStretnutie 10.10.2025\n\nStav:\n\n- Rozbehaný agent na báze ollama.\n- naštudované RAG, function calling, retrieval, evaluation. \n\nÚlohy:\n\n- zistite, čo je to znalostný graf. Študujte \"graph retrieval augmented generation\" na google scholar.\n- Oboznámte sa s databázou Neo4J - zistite ako ju využiť spolu s langchain.\n- Zistite, ako vieme vylepšiť RAG pomocou znalostného grafu.\n- Oboznámte sa s tezaurom slovenského práva. Konvertujte PDF s tezaurom do JSON. Použite docling alebo ollama s gpt-oss.\na skúste to zaindexovať (do Neo4J).\n- Navrhnite prompt ktorý konvertuje otázku na Neo4J dopyt pre získanie relevantných dokumentov.\n- skripty dávajte na GIT.\n\nLetná Príprava:\n\n- Zopakujte si Python. \n- Vyskúšajte si prácu s veľkými jazykovými modelmi. Nainštalujte si oollama. \n- Oboznámte sa s", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-3", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "re získanie relevantných dokumentov.\n- skripty dávajte na GIT.\n\nLetná Príprava:\n\n- Zopakujte si Python. \n- Vyskúšajte si prácu s veľkými jazykovými modelmi. Nainštalujte si oollama. \n- Oboznámte sa s framewworkom LangChain. \n- pozrite si LangChain Transformers Agents. \n- Ako funguje FunctionCalling - AgentTools?. \n- Zistite ako funguje REACT (Reasoning and Acting) Agent - nájdite článok na Scholar.\n- Zistite ako funguje dotrénovnaie veľkých jazykových modelov. Zistite čo je to PEFT (LORA, QLORA) a čo je to kvantizácia. Zisite čo je to \"few shot\" prompting. \n- Čo je to inferenčný server. Zistite čo je to VLLM, na čo je to dobré. Pozri si LocalAI.", + "text_length": 655 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-4", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "# Diplomový projekt 1 2025\n\nStretnutie 14.5.2025\n\nStav:\n\n- Naštudovaný REACT\n- Vytvorený RAG - vektory do FAISS. Model Mistral - ollama inferenčný server.\n- Vyskúšané generatívne modely OLLAMA. \n- Problém s \"pridávaním súborov na QUADRO\".\n\nÚlohy:\n\n- Pridajte skripty na git.\n- Pre prácu s lepšími modelmi (väčšie generatívne modely, me5 embeddingy) použite server QUADRO - identifikujte problémy. \n- Prečítajte si články o agentových jazykových modeloch pre právne informácie a urobte si poznámky.\n- identifikujte možné zdroje dát pre riešenie právnych problémov.\n- Navrhnite agentový prístup na riešenie právnych problémov. \n- Zistite, aké databázy sa používajú na vyhodnotenie a na trénovanie \"agentových\" (function calling) jazykových modelov.\n- Pozrite si množinu https://huggingface.co/datasets/TUKE-KEMT/slovak-financial-exam , toto môžeme použiť na vyhodnotenie. \n\nZásobnk úloh:\n\n- Bude treba pripraviť množinu na vydnotenie \"agentového\" prístupu.\n- Zostavte množinu vzorových otázok a odpovedí a relevantných dokumentov. Na webe môžete nájsť fóra s právnymi otázkami a na ich základe zostaviť testy.\n- Dotrénovať vhodný model.\n\nStretnutie 10.3.2025\n\nÚlohy:\n\n- Preštudovať - ako zostaviť RAG s", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-5", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "í a relevantných dokumentov. Na webe môžete nájsť fóra s právnymi otázkami a na ich základe zostaviť testy.\n- Dotrénovať vhodný model.\n\nStretnutie 10.3.2025\n\nÚlohy:\n\n- Preštudovať - ako zostaviť RAG systém pomocou LangChain\n- Zistiť ako fungujú agentové systémy na báze LLM - React. A volanie \"nástrojov\" function calling pomocou LLM.\n- Vytvoriť databázu právnych informácií - texty zákonov, vyhlášok a rozsudkov spolu s metainformáciami. Vedúci pridelí prístup na QUADRO. (úloha Šarišský)\n- Vytvoriť RAG systém pre spracovanie tejto databázy. Inšpirácia prácou Valerii Kutsenko, Yevhenii Leonov, [Oleh Poiasnik](/students/2022/oleh_poiasnik). Môžete sa inšpirovať [GIT BP Poiasnik](https://git.kemt.fei.tuke.sk/op405wm/Bakalarska_praca) (úloha Ščišľak)\n- Vyhľadať na internete množinu vzorových právnych otázok a vyhodnotiť systém (Šarišský)", + "text_length": 843 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-6", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "# Bakalárska práca 2024\n\nNázov: Dialógový systém pre potreby samosprávy\n\nZadanie:\n\n1. Vypracujte teroretický úvod do modelovania dialógu a povedzte aké metódy sa aktuálne používajú.\n2. Navrhnite a vytvorte dialógový systém v slovenskom jazyku pre úlohu komunikácie občana s mestom.\n3. Vykonajte sadu experimentov a dialógovým systémom.\n4. Vyhodnoťte experimenty a identifikujte miesta pre zlepšenie.\n\nSúvisiace materiály:\n\n- [Projektová stránka](/topics/chatbot)\n\nSpolupráca:\n\n- [Martin Šarišský](/students/2021/martin_sarissky)\n\nStretnutie 23.2:\n\nStav:\n\n- Práca na pravidlách aj texte\n\nÚlohy:\n\n- 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.\n\nStretnutie 16.2.2024\n\nStav:\n\n- Pridanie \"domain\" pravidiel pre \"bežného\" používateľa\n- Pridané pravidlá pre slovenské mená a ulice.\n- Zlepšenie rozpoznávanie IČO a rodné číslo.\n\nÚlohy:\n\n- Pracujte na zlepšení rozpoznávania firiem, priezvisk. Firma sa môže volač hocijak, Je tam možnosť využiť obchodný register.\n- pridajte možnosť využiť chatgpt alebo inú službu na generovanie odpoveďe.\n- Pridajte testovacie scenáre vytvorené 3. neznalým človekom a", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-7", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "môže volač hocijak, Je tam možnosť využiť obchodný register.\n- pridajte možnosť využiť chatgpt alebo inú službu na generovanie odpoveďe.\n- 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ť.\n- Stále píšte. Zlepšite časť o rozpoznávaní intentov a pomentovaných entít.\n\nStretnutie 9.2.\n\nStav:\n\n- Zlepšený proces \"rozpoznávania\" druhu formulára - chatbot sa spýta, aký formulár treba vyplniť.\n- Pri vypĺnaní nastal problém s rozpoznávaním mien a adries.\n- Pridané testovacie \"stories\".\n- Je problém keď pri firme sa vyplňa formulára niečo iné ako pri fyzickej osobe.\n\nÚlohy:\n\n- Zlepšite chatbota podľa výsledkov vyhodnotenia.\n- Pridajte zdrojáky na GIT.\n- Preskúmajte možnosti využitia ChatGPT\n- Zlepšite rozpoznávanie pomenovaných entít - mená, priezviská, názvy firiem. Najprv vyskúšajte riešenie cez RASA.\n\nZásobník úloh:\n\n- Vyskúšajte trénovanie modelu pomocou spacy. spacy-skmodel na githube.\n- Vyskúšajte možnosť zlepšenia pomenovaných entít cez model Spacy. Pravidlový rozpoznávač alebo alebo rozpoznávač pomocou neurónovej siete.\n- Vedúci má n", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-8", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "odelu pomocou spacy. spacy-skmodel na githube.\n- Vyskúšajte možnosť zlepšenia pomenovaných entít cez model Spacy. Pravidlový rozpoznávač alebo alebo rozpoznávač pomocou neurónovej siete.\n- Vedúci má niekde dáta.\n\nStretnutie 9.1\n\nStav:\n\n- Rozšírenie možnosti formulárov.\n- Práca na písomnej časti.\n\nÚlohy:\n\n- 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\".\n- Pokračujte v písomnej časti.\n- 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.\n- Pripravte prezentáciu a pošlite texty BP na spätnú väzbu, dajte kódy na GIT. \n- Upravte kódy tak, aby ich vedúci vedel ľahko vyskúšať pomocou Docker.\n\nZásobník úloh:\n\n- Zistite čo je to LangChain a na čo sa používa. Nainštalujte si to a vyskúšajte.\n\nStretnutie 8.12.2023\n\nStav:\n\n- Vyriešený problem týkajúci sa SLOTov. Bola potrebná osobnitná funkcia submit.\n- Práca na písomenj časti.\n\nÚlohy:\n\n- [x] Vedúci by mal finalizovať zadanie.\n- [x] Integrovať Vašu bázu pravidi", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-9", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "Stav:\n\n- Vyriešený problem týkajúci sa SLOTov. Bola potrebná osobnitná funkcia submit.\n- Práca na písomenj časti.\n\nÚlohy:\n\n- [x] Vedúci by mal finalizovať zadanie.\n- [x] Integrovať Vašu bázu pravidiel s kolegom Šarišským. Spraviť z toho jedného bota. \n- [x] Zistite si ako pracujú veľké jazykové modely LLM a napíšte si o tom poznámky.\n- [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. \n\nZásobník úloh:\n\n- [ ] 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\".\n\nStretnutie 14.11.\n\nStav:\n\n- Vyriešený problém s Policy - problém bol asi na strane Stories.\n- Nastal problém s rozpoznávaním entít. Podarilo sa naštartovať Form, nepodarilo sa rozpoznať slot. Nevie rozpoznať typ priznania za psa.\n\nStretnutie 3.11.\n\nStav:\n\n- Práca na \"Forms\" v RASA. Problém s \"Policy\" konfiguráciou bol skonzultovaný.\n\nÚlohy:\n\n- Riešte problém s Policy pomocou \"debug\" výpisov.\n- Píšte BP. Opíšte a", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-10", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "znania za psa.\n\nStretnutie 3.11.\n\nStav:\n\n- Práca na \"Forms\" v RASA. Problém s \"Policy\" konfiguráciou bol skonzultovaný.\n\nÚlohy:\n\n- Riešte problém s Policy pomocou \"debug\" výpisov.\n- Píšte BP. Opíšte ako funguje NLU a ako funguje rozhodovanie pomcou pravidiel v RASA. \n\nZásobník úloh:\n\n- 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.\n\n \nStretnutie 27.10\n\nStav:\n\n- Pokračuje písomná príprava a práca na kódoch chatbota.\n\nÚlohy:\n\n- Pokračujte v otvorených úlohách, aj zo zásobníka.\n- Študujte generatívne jazykové modely.\n\nZásobník:\n\n- Integrujeme bázu pravidiel oboch chatbotov.\n\nStretnutie 6.10.\n\nStav:\n\n- Vypracované úlohy z minulého stretnutia\n\nÚlohy:\n\n- 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. \n- Naštudujte si RASA Forms aby ste vedeli pomôcť človeku vyplniť formulár.\n- Vytvorte pomôcku pre vyplnenie formulára s pomocou c", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-11", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "ešiť. Potom by mal naštartovať postup pre riešenie daného problému. \n- Naštudujte si RASA Forms aby ste vedeli pomôcť človeku vyplniť formulár.\n- 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\".\n- pravidlá pre chatbota uložte na GIT repozitár s názvom bp2023. Môžete prístup zdieľať s kolegom.\n- 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.\n\nZásobník úloh:\n\n- naštudujte si ako sa vyhodnocuje RASA chatbot.\n- napíšte testovacie konverzácie pre Vaše pravidlá.\n- 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.\n\nStretnutie 28.9.2023\n\nStav:\n\n- Nainštalovaná RASA\n\nÚlohy:\n\n- [x] Nainštalujte si Anaconda. Do Anaconda prostredia si nainštalujte RASA.\n- [-] Pokračujte v štúdiu RASA-Python. Na servri scholar si vyhľadajte termín \"natural language understanding\". \nPrečítajte si niekoľko vedeckých článkov alebo kníh na túto tému a napíšte si poznámky.\n- [x] Pozrite si stránku htt", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/matej_scislak/README.md::chunk-12", + "document_path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "A-Python. Na servri scholar si vyhľadajte termín \"natural language understanding\". \nPrečítajte si niekoľko vedeckých článkov alebo kníh na túto tému a napíšte si poznámky.\n- [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.\n\nZásobník úloh:\n\n- Vytvorte pomôcku pre vyplnenie formulára s pomocou chatbota.", + "text_length": 513 + }, + { + "chunk_id": "pages/students/2021/nikita_bodnar/README.md::chunk-0", + "document_path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2021", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2021/nikita_bodnar/README.md::chunk-1", + "document_path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2025\n\nZadanie:\n\n1. Vypracujte prehľad neurónových sietí a metód na vykonávanie opravy textu. \n2. Vyberte a pripravte slovenské dáta do vhodnej podoby a aplikujte viacero existujúcich modelov na opravu textu.\n3. Číselne a slovne vyhodnoťte modely a navrhnite zlepšenia.\n\nStretnutie 27.3.\n\nStav:\n\n- Text je v lepšom stave.\n\nStretnutie 11.3.\n\nStav:\n\n- Vypracované experimenty pre obnovu interpunkcie, zatiaľ na dosť krátkom texte. Výsledky sú v nejakej prezentácii.\n- Práca na texte BP ???\n\nÚlohy:\n\n- Na experimenty použite text z Wikipedia Dejiny Košic https://sk.wikipedia.org/wiki/Dejiny_Ko%C5%A1%C3%ADc\n- Do práce napíšte, že používate metódu \"Zero Shot\" - bez dotrénovania. Porovnajte túto metódu sFew Shot a SFT (Supervised Finetuning).\n- Do prehľadu doplnte odkazy na odborné články - nájdete ich na Google Scholar.\n- Čím skôr odovzdajte text BP pre získanie spätnej väzby\n- Nové Kódy pre experimenty nahrajte na GIT.\n\nStretnutie:\n\nStav:\n\n- Vybratá množina c4\n- Vyhodnotenie SlovakBERT, mBERT a Roberta Base pre EN.\n- Naprogramované úloha doplnenie interpunkcie. Kódy sú na GITE. \n\nÚlohy:\n\n- [ ] Vyberte slovenské texty z množiny mC4. Na vybranom texte zopakujte experimenty.", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2021/nikita_bodnar/README.md::chunk-2", + "document_path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "lovakBERT, mBERT a Roberta Base pre EN.\n- Naprogramované úloha doplnenie interpunkcie. Kódy sú na GITE. \n\nÚlohy:\n\n- [ ] Vyberte slovenské texty z množiny mC4. Na vybranom texte zopakujte experimenty.\n- [x] Doplnte ďalšie modely typu BERT s podporou slovenčiny. Modely vo veľkosti BASE: Fernet, HPLT, xlm-r, mdeberta, distilmbert \n- [x] Vypracujte tabuľky s výsledkami experimentov.\n- [-] Do práce opíšte experimenty.\n\nZásobník úloh:\n\n- Vypracujte experimenty pre modely Byt5 a slovak t5.\n\nPoznámky 21.1.2025\n\nStav:\n\n- Napísané skripty pre vyhodnotenie \"masked\" language modeling.\n- Vyhodnotené modely SlovakBERT a multilingualbert BASE.\n\nÚlohy:\n\n- [x] Vyberte vhodnú množinu slovenských textov.\n- [-] Pripravte množinu pre úlohu detekcie chýbajúcej alebo nadbytočnej interpunkcie - (bodka, čiarka, otáznik, výkričník, dvojbodka). \n- [-] Pripravte množinu pre pre úlohu opravy od identifikovaného preklepu.\n- [-] Vyhodnotte viaceré modely.\n- [ ] Pokračujte v písaní práce podľa nového zadania.\n\nZásobník úloh:\n\n- Využite modely SlovakT5 a ByT5.\n\nStretnutie 17.12.\n\nStav:\n\n- Práca na skriptoch, nainštalovaný Pytorch, transformers, fairseq, \n- Skript na prípravu dát - spustený. \n- chyba pri spustení t", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/nikita_bodnar/README.md::chunk-3", + "document_path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "ík úloh:\n\n- Využite modely SlovakT5 a ByT5.\n\nStretnutie 17.12.\n\nStav:\n\n- Práca na skriptoch, nainštalovaný Pytorch, transformers, fairseq, \n- Skript na prípravu dát - spustený. \n- chyba pri spustení trénovacieho skriptu - chýba executable.\n\nÚlohy:\n\n- ! Začnite pracovať na písomnej časti.\n- Nainštalujte si Marian NMT.\n- Vypýtajte si Marian Model na opravu od Ing. Maroš Harahus. \n- Vyskúšajte ho a vyhodnotte pomocou metriky WER. Zistite si čo je to WER, napíšte to do práce\n- Nainštalujte si model ByT5 z knižnice HF Transformers. Zistie čo to je, napíšte to do práce. \n- Vyskúšajte model ByT5 na korekciu textu. Vyhodnoote ho. \n- Vyskúšajte model SlovakBERT na detekciu preklepov. Model určuje pravdepodobnosť každého slova vo vete. Model vie doplniť chýbajúce slovo, alebo najpravdepodobnejšie slovo. Zistite že ako, napíšte to do práce. \n- Do práce doplnte odkazy na vedecké články. \n\nZásobník úloh:\n\n- Natrénujte model.\n\nStav:\n\n- Nainštalovaný MarianMT a rozbehaný preklad z nemčiny do angličtiny.\n- Textová časť je neuspokojivá.\n\nÚlohy:\n\n- Naučte sa trénovať systém pre strojový preklad. \n- Vytvorte korpus pre trénovanie systému na opravu textu. Korpus vytvoríte z webového textu (mc4-sk) do", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2021/nikita_bodnar/README.md::chunk-4", + "document_path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "ny.\n- Textová časť je neuspokojivá.\n\nÚlohy:\n\n- Naučte sa trénovať systém pre strojový preklad. \n- Vytvorte korpus pre trénovanie systému na opravu textu. Korpus vytvoríte z webového textu (mc4-sk) do ktorého programovo pridáte chyby. Text korpusu mc4 nájdete na HuggingFace Hube. Knižnica datasets slúži na prácu s korpusmi. Korpus musí byť \"dostatočne\" (viac ako 1GB) veľký. \n- Natrénujte a vyhodnotte model.\n- Píšte BP do šablóny podľa pokynov. Prečítajte si odborné články a používajte odkazy. Odborné články nájdete na Google Scholar.", + "text_length": 538 + }, + { + "chunk_id": "pages/students/2021/nikita_bodnar/README.md::chunk-5", + "document_path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "# Bakalárska práca 2024\n\nKorekcia textu pomocou neurónových sietí\n\nSpolupráca: Maroš Harahus, Andrii Pervashov\n\nZadanie BP:\n\n1. Vypracujte prehľad existujúcich systémov pre neurónový strojový preklad. \n2. Definujte úlohu korekcie textu a vysvetlite, ako je možné ju riešiť pomocou systému pre strojový preklad. \n3. Vyberte a pripravte dáta do vhodnej podoby a aplikujte existujúci model pre strojový preklad na opravu textu vo vybranej úlohe.\n4. Číselne a slovne vyhodnoťte model na vybranej úlohe. Identifikujte jeho slabé miesta a navrhnite zlepšenia. \n\nStretnutie 24.1.2024:\n\nStav:\n\n- Nie je posun.\n\nÚlohy:\n\n- Natrénujte jednoduchý ľubovoľný model pre strojový preklad pomocou Marian NMT. Skripty su v repozitári bert-train.\n- Natrénujte model pre opravu korekcie na slovenskom texte a vyhodnoote ho.\n- Pokračujte v písaní bakalárskej práce.\n\nStretnutie 23.11.2023\n\nStav:\n\n- Prečítaný článok o Spelling a urobené poznámky\n- Ostatné úlohy: in progress. Treba pridať!!!\n\nÚlohy:\n\n- 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.\n- Vyhodnotte presnosť tohoto systému. Presnosť s", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/nikita_bodnar/README.md::chunk-6", + "document_path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "zdaný 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.\n- Vyhodnotte presnosť tohoto systému. Presnosť sa hodnotí metrikou WER, CER. Skripty nájdete v bert-train repozitári.\n- Zlepšite tento systém. \n- 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.\n\nStretnutie 6.10.\n\nStav:\n\n- Štúdium Python a neurónové siete.\n\nStretnutie 3.7.\n\nStav:\n\nExistuje model Marian NMT rep korekciu. \n\nÚloha:\n\n- [-] Zistite ako funguje neurónová sieť typu Transformer.\n- [x] Nainštalujte si systém Anaconda a prejdite si knihu Dive into Pyhton 3.\n- [ ] Zistite ako funguje strojový preklad.\n- [x] Prečítajte si článok Hládek: \"Survey of Automatic Spelling Correction\" a *urobte si poznámky*.\n- [-] Prečítajte si knihu https://d2l.ai/ \n- [ ] Vaše zistenia zapíšte do textového súboru. Pridajte odkazy na zdroje - odborné články a blogy.\n- [ ] Oboznámiť sa zo systémom Marian NMT. Nainštalujte si to a vyskúšajte nejaké demo na strojový preklad. \n- [ ] Získajte prístup na školský server idoc.\n\nZásobník úloh:\n\n- Vyskú", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/nikita_bodnar/README.md::chunk-7", + "document_path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "rné články a blogy.\n- [ ] Oboznámiť sa zo systémom Marian NMT. Nainštalujte si to a vyskúšajte nejaké demo na strojový preklad. \n- [ ] Získajte prístup na školský server idoc.\n\nZásobník úloh:\n\n- Vyskúšaje natrénovať model Marian NMT podľa návodu na stránke.\n- Získajte od vedúceho skripty pre trénovanie Marian NMT na úlohu korekcie textu.\n- Podľa nich natrénujte a vyhodnotte model.\n- Zistite s akými parametrami model pracuje najlepšie. Skúste model vylepšiť.\n- Vypracujte webové demo.", + "text_length": 487 + }, + { + "chunk_id": "pages/students/2021/oleksandr_hryshchenko/README.md::chunk-0", + "document_path": "pages/students/2021/oleksandr_hryshchenko/README.md", + "title": "Oleksandr Hryshchenko", + "categories": [ + "dp2026" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2021", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2021/oleksandr_hryshchenko/README.md::chunk-1", + "document_path": "pages/students/2021/oleksandr_hryshchenko/README.md", + "title": "Oleksandr Hryshchenko", + "categories": [ + "dp2026" + ], + "tags": [ + "ir", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2026\n \nGrafové neurónové siete pre získavanie informácií\n\nProjekt zakončený.\n\nStretnutie 13.2.2025\n\nÚlohy:\n\n- Precvičte si jazyk Python, nainštalujte si prostredie Anaconda.\n- Zistite čo sú to grafové neurónové siete. Prečítajte si odborné články a urobte si poznámky. Pozrite sa na https://scholar.google.sk/ vyhľadávajte \"graph neural network\".\n- Oboznámte sa s frameworkom LangChain https://python.langchain.com/docs/tutorials/graph/ https://python.langchain.com/v0.1/docs/use_cases/graph/constructing/\n- Oboznámte sa so systémami pre generovanie odpovede na základe vyľadávania. Retrieval augmented generation.\n\nZásobník úloh:\n\n- Vytvorte systém pre získavanie informácií, ktorý bude vedieť pracovať s grafovými informáciami. Grafové innformácie môžu byt: slabo štruktúrované dokumenty, napr. súdne rozhodnutia alebo zdravotné informácie. Chceme vedieť spracovať dokumenty, ktoré majú vzájomné a vnútorné vzťahy.", + "text_length": 936 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-0", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2021\n\nštudent KPI, pracovník DTSS", + "text_length": 54 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-1", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalárska práca 2024\n\n- [Projekt HateSpeech](/topics/hatespeech)\n- [Pokyny KPI ku záverečným prácam](https://kpi.fei.tuke.sk/sk/zaverecne-prace)\n- Spolupráca: [Eduard Matovka](/students/2021/eduard_matovka)\n- Nadväzuje [Martin Jancura](/students/2017/martin_jancura)\n\nNázov: Anotácia a vyhodnotenie slovenskej databázy nenávistnej reči\n\n1. Napíšte prehľad existujúcich dátových zdrojov pre úlohu rozpoznávania sentimentu a nenávistnej reči v diskusiách. \n2. Pripravte korpus diskusií v slovenskom jazyku. Vyberte vhodný zdroj diskusí a pripravte ho do podoby vhodnej na anotáciu.\n3. Modifikujte existujúcu aplikáciu pre úlohu anotácie nenávistnej reči v diskusiách. Napíšte návod pre anotáciu. \n4. Anotujte čo najväčšie množstvo dát pre výskyt nenávistnej reči. \n5. Štatisticky analyzujte výskyt anotovanej nenávistnej reči v diskusiách. \n\nPredbežné zadanie - úlohy na semester:\n\n- 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.\n- zobrazte štatistiky získaných dát.\n- Anotovať sentiment diskusných príspevkov.\n- Možno anotovať nenávistnú reč. Toto konzultovať s p. Sokolovou.\n- Z nazbieraných dát zost", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-2", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "oznávanie nenávistnej reči.\n- zobrazte štatistiky získaných dát.\n- Anotovať sentiment diskusných príspevkov.\n- Možno anotovať nenávistnú reč. Toto konzultovať s p. Sokolovou.\n- Z nazbieraných dát zostavte a vyhodnoťte model\n\nStretnutie 10.5.2024\n\nStav:\n\n- Natrénovaný prvý model slovakbert\n- Práca na mdeberta\n\nÚlohy: \n\n- Konvertujte úlohu na binárnu klasifikáciu.\n- Zlepšite fitrovanie datasetu.\n- Natrénujte a vyhodnoťte nové modely pre viac filtrované datasety. Do práce dajte zapíšte výsledné veľkosti a výsledky.\n\nPravidlá pre filtrovanie datsetu:\n\n1. \"Dôveryhodní\" ľudia idú do testovacej časti\n2. 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. \n3. Vyskúšať: Vyhodiť vzorku aj pri akomkoľvek vnútornom nesúhlase. Je viac filtrovaná množina lepšia?\n\nZásobník úloh:\n\n- Vytvoriť HF Dataset.\n\nStretnutie 22.3.\n\nStav:\n\n- Práca na vlastnej Flask aplikácii\n\nÚlohy:\n\n- Pripravte draft práce, ktorý bude obsahovať osnovu a texty ktoré máte. Pracujte na tom ďalej, popri praktických úlohách.\n- Naštudujt", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-3", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "tnutie 22.3.\n\nStav:\n\n- Práca na vlastnej Flask aplikácii\n\nÚlohy:\n\n- Pripravte draft práce, ktorý bude obsahovať osnovu a texty ktoré máte. Pracujte na tom ďalej, popri praktických úlohách.\n- 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.\n- Vyhľadajte a opíšte podobné iniciatívy pre anotáciu HS.\n- Vo vašej antotačnej schéme napodobnite vybraný prístup (OffensEval).\n- Pred tým než začnete anotovať, konzultujme vybranú anotačnú schému.\n- Čím skôr začnite anotovať podľa vybranej schémy.\n\nStretnutie 11.3.\n\nStav:\n\n- Analýza zozbieraných dát z Facebooku pred anotáciou - výber rôznych kanálov. Vo forme notebooku.\n- Dáta sú v jednom súbore JSON\n\nÚlohy:\n\n- [x] Aplikujte detekciu emócií na dataset. Do datasetu zaraďte 20 percent pozitívneho, 20 neutrálneho a 60 negatívneho obsahu.\n- [x] Dataset premiešajte. Začnite anotovať, akýmkoľvek spôsobom.\n- [-] Do písomnej časti opíšte postup pri príprave dát.\n\nStretnutie 8.2.2024\n\nStav:\n\n- 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", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-4", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "tup pri príprave dát.\n\nStretnutie 8.2.2024\n\nStav:\n\n- 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.\n\nÚlohy:\n\n- 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). \n\nMomentálne máme:\n\n- Facebook, rôzne profily. Problém je výskyt spamu - tématicky podobných príspevkov.\n\nIné možné zdroje:\n\n- Reddit-Slovakia.\n- Diskusie pod článkami.\n\nStretnutie 23.1.2024\n\nStav:\n\n- Práca iba na textovej časti.\n\nÚlohy:\n\n- 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.\n- Pripravte aplikáciu na anotovanie a skúste anotovať pár jednotiek. Zaznamenajte chyby anotačnej aplikácie. \n- Ak bude aplikácia v poriadku, anotujte viac.\n- Pokračujte v práci na textovej časti podľa inštrukcií nižšie.\n- Pokračujte v otvorených úlohách. \n\nZásobník úloh:\n\n- Prečistenie databázy na výskyt spamu: Pomocou modelu slovak-bert-mnlr identifikujte sémanticky podobné dokumenty. Ak má je", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-5", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "dľa inštrukcií nižšie.\n- Pokračujte v otvorených úlohách. \n\nZásobník úloh:\n\n- 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. \n- Z anotovaných dát natrénujte model.\n\nStretnutie 27.10.2023\n\nStav:\n\n- Podarilo sa rozbehať anotačnú aplikáciu a pripraviť dáta.\n\nÚlohy:\n\n- Pripravte aplikáciu na nasadenie. Pripravte dockerfile, pridajte CSS. Vyskúšajte aplikáciu a identifikujte chyby.\n- 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.\n- 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.\n- Prečítajte si knižku https://d2l.ai/\n\nZásobník úloh:\n\n- An", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-6", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "https://github.com/huggingface/transformers/tree/main/examples/pytorch/text-classification skúste ho rozbehať aj na iných vlastných dátach.\n- Prečítajte si knižku https://d2l.ai/\n\nZásobník úloh:\n\n- Analyzujte anotované dáta. Výsledky zobrazte do tabuľky.\n- Natrénujte a vyhodnoťte model.\n\nStretnutie 13.10.2023\n\nStav:\n\n- Rozbehané Prodigy anotácie\n- Vyskúšaný model https://huggingface.co/kinit/slovakbert-sentiment-twitter\n\nÚlohy:\n\n- [ ] 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. \n- [ ] 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.\n- 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.\n\nZá", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-7", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "y som mal prístup k zdrojovým kódom na stiahnutie a na tvorbu modelov.\n- 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.\n\nZásobník úloh:\n\n- Čím skôr rozbehať anotácie sentimentu alebo hate speech medzi študentami.\n- Zozbierané dáta využiť na natrénovanie modelu.\n- 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.\n- Prečítajte si knižku https://d2l.ai/\n\nStretnutie 8.8.\n\nStav:\n\n- vypracovaný skript pre získanie dát z Reditt\n\nÚlohy:\n\n- [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\".\n\nZásobník úloh:\n\n- Finalizovať dátovú množinu (facebook alebo reddit) a anotačnú schému.\n- Pripraviť návod pre anotátorov\n- Pripraviť webovú appku na sledovanie anotácií.\n- Natrénovať model.\n\nStretnutie 29.6.2023\n\nStav:\n\n- Je hotový skript pre zber diskusií z Facebooku. Skript je Python, Selenium a BS4.\n\nÚlohy:\n\n- [ ] Vykonať prieskum litera", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2021/vladimir_ferko/README.md::chunk-8", + "document_path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "pku na sledovanie anotácií.\n- Natrénovať model.\n\nStretnutie 29.6.2023\n\nStav:\n\n- Je hotový skript pre zber diskusií z Facebooku. Skript je Python, Selenium a BS4.\n\nÚlohy:\n\n- [ ] 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- [ ] Skript na stiahnutie s krátkym komentárom dajte na KEMT GIT. Repo nazvite BP2024\n- [ ] 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.\n- V prípade potreby Vám viem prideliť prístup na školský server s GPU.", + "text_length": 875 + }, + { + "chunk_id": "pages/students/2022/andrii_pervashov/README.md::chunk-0", + "document_path": "pages/students/2022/andrii_pervashov/README.md", + "title": "Andrii Pervashov", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/andrii_pervashov/README.md::chunk-1", + "document_path": "pages/students/2022/andrii_pervashov/README.md", + "title": "Andrii Pervashov", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2027\n\nNávrh na tému:\n\nPrepis reči pre tvorbu štruktúrovaného zdravotného záznamu\n\nCiele:\n\n- Vytvorte systém pre prepis reči a naplnenie formulára pomocou lokálnych jazykových modelov\n- Zlepšite jazykový model pre extraktiu štruktúrovaných informácií z medicínskej alebo súdnej domény.\n\nÚlohy:\n\n- Oboznámte sa so systémom OpenWebUI - prečítajte si dokumentáciu, príp. spravte si svoju inštanciu.\n- Vytvorte jedno alebo viacero rozšírení, ktoré umožnia napňlňať formuláre pomocou rečového vstupu.\n- Agent by mal vedieť transformovať rečový vstup do štruktúrovanej podoby.\n\nTeoretické úlohy:\n\n- Oboznámte sa s postupmi pre dotrénovanie jazykového modelu - LORA, PEFT.\n- Oboznámte sa s metódami Information Extraction. Vyhľadajte si články na túto tému a napíšte, aké metódy sa používajú. Vstupom je text v prir. jazyku, výstupom je niečo ako JSON.\n\nZásobník úloh:\n- Vyskúšajte ako funguje rozpoznávanie reči cez OPeWEBUI. Navrhnute zlepšenia.\n- Ako vieme zistiť, ktoré informácie nám chýbajú?", + "text_length": 1007 + }, + { + "chunk_id": "pages/students/2022/andrii_pervashov/README.md::chunk-2", + "document_path": "pages/students/2022/andrii_pervashov/README.md", + "title": "Andrii Pervashov", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Bakalárska práca 2025\n\nNávrh na tému:\n\nKorekcia textu pomocou neurónových sietí\n\n- Oboznámte sa s existujúcimi systémami pre neurónový strojový preklad.\n- Aplikujte existujúci model na opravu textu vo vybraných úlohách.\n- Vyhodnnotte model pomocou overovacej množiny.\n\nNávrh na zadanie práce:\n\n1. Napíšte prehľad metód opravy textu pomocou neurónových modelov.\n2. Zostavte trénovací korpus a natrénujte vybraný model na úlohu opravy textu v slovenskom jazyku.\n3. Navrhnite experiment a vyhodnoťte kvalitu natrénovaného neurónového modelu.\n4. Identifikujte možné zlepšenia navrhnutého modelu.\n\nStretnutie 14.2.2025\n\nStav:\n\n- Pokračuje trénovanie.\n\nÚlohy:\n\n- Definujte problém ktorý riešite. \n- Napíšte aj stručné poznámky z článku Survey of Automatic Spelling Correction.\n- Do teoretickej časti napíšte ako funguje model transformer, model T5.\n- Do praktickej časti napíšte o tom ako ste vytvorili dátovú množinu, ako ste navrhli, vyýkonali a vyhodnotili experimenty.\n- V texte používajte odkazy na odbornú literatúru. Články z google scholar.\n\nStretnutie 31.1.2025\n\nStav:\n\n- Vyskúšané byt5, problémy s pamäťou, problémy s obmedzením dĺžky.\n\nÚlohy:\n\n- Pokračujte s obmedzením ktoré dovolí", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/andrii_pervashov/README.md::chunk-3", + "document_path": "pages/students/2022/andrii_pervashov/README.md", + "title": "Andrii Pervashov", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "odkazy na odbornú literatúru. Články z google scholar.\n\nStretnutie 31.1.2025\n\nStav:\n\n- Vyskúšané byt5, problémy s pamäťou, problémy s obmedzením dĺžky.\n\nÚlohy:\n\n- Pokračujte s obmedzením ktoré dovolí GPU pamäť (128 znakov).ň\n- Píšte prácu. Výsledky zobrazte v tabuľke.\n\nZásobník úloh:\n\n- Vyskúšajte iný model, napr. slovak-t5-base.\n\nStretnutie 19.12.2024\n\nStav:\n\n- Nové trénovanie Byt5 z mc4. Vyzerá, že to ide. Vlastný trénovací skript, skript od Ing. Harahusa.\n- Text prepísaný do Latex, WIP\n\nStretnutie 22.11.2024\n\nStav:\n\n- WikiEdits nefunguje. \n- Trénovanie na korpuse 1 kníh. Program zmení písmená, urobí gramatické chyby. Problém je v tom, že dát na natrénovanie je málo. BLEU ROUGE nie sú dobré metriky.\n- Na trénovanie sa používa mt5-large.\n- Konzultácia Ing. Harahusom PhD.\n- Trénovanie modelu.\n\nÚlohy:\n\n- Pokračujte v písaní podľa pokynov nižšie.\n- Implemenujte metódu vyhodnotenia WER-CER-SER. Použite Python balíček alebo ex. kód. python-levenshtein.\n- Vyhodnnotte model \"zero shot\" - bez dotrénovnaia. Vyhodnotte viac modelov. Môžťete vyskúšať aj Slovak Falcon, slovak t5 base.\n- Pokračujte s \"base modelmi\".\n- Vyskúšajte opravu textu pomocou \"promptu\". Použite veľký jazykový model. Vyb", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/andrii_pervashov/README.md::chunk-4", + "document_path": "pages/students/2022/andrii_pervashov/README.md", + "title": "Andrii Pervashov", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "dotrénovnaia. Vyhodnotte viac modelov. Môžťete vyskúšať aj Slovak Falcon, slovak t5 base.\n- Pokračujte s \"base modelmi\".\n- Vyskúšajte opravu textu pomocou \"promptu\". Použite veľký jazykový model. Vyberte vhodný, napr. chatgpt alebo iný. \n\nZásobník úloh:\n\n- Dotrénujte model typu t5-base na väčšom množstve dát. MNôžete použiť webový korpus - mc4.\n\nStretnutie 3.10.2024\n\nStav:\n\n- Spustený skript WikiEdits bez úprav. Výsledkom bol (asi) dobrý súbor csv s úpravami v slovenskom jazyku.\n- Vyskúšané dotrénovanie modelu mt5-base na tejto databáze. Trénovanie sa spustí. Po zatvorení tmux sa trénovanie nepodarí obnoviť.\n\nOnline update 4.9.2024\n\nÚlohy:\n\n- Upravte skripty [WikiEdits](https://github.com/snukky/wikiedits/tree/master/wikiedits) na slovenský jazyk\n\nStav 14.8.2024:\n\n- Nainštalovaná Anaconda, rozbehaný anglický trénovací skript s databázou WikiEdits a modelom T5small. Notebook je príliš pomalý na trénovanie.\n- Oboznámenie sa s materiálmi - d2dl aj Python.\n\nÚlohy:\n\n- 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.\n- Použite server google scholar a zistite ako sa robí ooprava textu pomocu modelu T5. Poznač", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/andrii_pervashov/README.md::chunk-5", + "document_path": "pages/students/2022/andrii_pervashov/README.md", + "title": "Andrii Pervashov", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "modelov T5 aj GPT aj ChatGPT. Robte si písomné poznámky. Poznačte si odkazy na odborné články, napr. Arxiv.\n- 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ú.\n- Prečítajte si môj článok Survey of Automatic Spelling Correction a urobte si poznámky,\n- 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.\n\nZásobník úloh:\n\n- Natrénujte model pre opravu textu v slovenskom jazyku.\n- Pripravte webové demo.\n\nStretnutie 26.4. 2024\n\nÚlohy:\n\n- Nainštalujte si prostredie Anaconda. \n- Prejdite si knihu Dive Deep into Python 3.\n- Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.\t\n- Nainštalujte si Pytorch, a huggingface transformers a oboznámte sa ako funguje táto knižnica.\n- Zistite ako funguje tento model https://huggingface.co/docs/transformers/en/model_doc/byt5\n- Napíšte si poznámky o tom ako funguje model Transformers a ako funguje model T5.", + "text_length": 1047 + }, + { + "chunk_id": "pages/students/2022/daniil_huzenko/README.md::chunk-0", + "document_path": "pages/students/2022/daniil_huzenko/README.md", + "title": "Daniil Huzenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/daniil_huzenko/README.md::chunk-1", + "document_path": "pages/students/2022/daniil_huzenko/README.md", + "title": "Daniil Huzenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2025\n\nVedúci: doc. Matúš Pleva PhD.\n\nPredbežný názov:\n\nTestovanie hybridného klaudu s využiťím kombinácie verejného a privátneho riešenia\n\nCielom práce je vytvorenie vzelávacích materiálov o Kubernetes a funkčného prototypu privátneho klastra Kubernetes .\n\nZadanie:\n\n1.\tNapíšte prehľad metód automatizácie procesov a vypracujte úvod do platformy Kubernetes. \n2.\tVypracujte prehľad domácich klastrov založených na platforme ARM.\n3.\tZostavte vlastný klaster z viacerých dosiek Raspberry PI.\n4.\tNakonfigurujte na klastri platformu Kubernetes opakovateľným spôsobom a porovnajte riešenie s podobným na platforme Intel.\n5.\tVypracujte textový a video tutoriál (s titulkami vo viacerých jazykoch) k zostaveniu a konfigurácii klastra s Raspberry PI. \n\nStretnutie 21.2.\n\n- Pridajte kapitolu o Azure Kubernetes System.\n- Porovnajte vytvorenie K8s klastra s RPI a vytovrenie klastra s AKS. Napíšte ako je možné tieto dva spôsoby kombinovať. Napíšte ako funguje hybridný klaud. \n- Pozrite si ako sa dá vytvoriť domáci klaster z RPI. Napíšte o tom do práce aké sú spôsoby.\n\nStretnutie 14.2.\n\nÚlohy:\n\n- Do teoretickej časti napíšte prehľad odbornej literatúry - použitie Kubernetes vo vzdelávaní", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/daniil_huzenko/README.md::chunk-2", + "document_path": "pages/students/2022/daniil_huzenko/README.md", + "title": "Daniil Huzenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ko sa dá vytvoriť domáci klaster z RPI. Napíšte o tom do práce aké sú spôsoby.\n\nStretnutie 14.2.\n\nÚlohy:\n\n- Do teoretickej časti napíšte prehľad odbornej literatúry - použitie Kubernetes vo vzdelávaní. použite google scholar. Heslo je \"kubernetes in education\".\n\nStetnutie 22.11.2024\n\nStav:\n\n- Klaster funguje. Ku každému node je možné sa pripojiť cez SSH. \n- Momentálne notebook slúži ako router. \n- Práca na DNS MASQ prideľovanie IP adries z routra.\n- Microk8s funguje\n\nÚlohy:\n\n- Napíšte návod a skripty pre konfiguráciu routra pre K8s klastra SuperC.\n- Router by mal vedieť:\n - prideliť IP adresu v privátnej podsieti pre všetky uzly klastra.\n - mal by vedieť konfigurovať (resetovať) klaster pomocou Ansible.\n- Vyporacujte video a textový tutoriál k inštalácii klastra.\n- Skripty a návody dajte na GIT. Video nedávajte na GIT. (dajte na Youtube).\n\nZásobník úloh:\n\n- Router by mal slúžiť ako rozhranie medzi verejnou a súkromnou sieťou - mal by sprostredkovať služby Kubernetes. Dorobte na to skripty Ansible a K8s konfiguráciu - Ingress, Load Balancer, Dashboard.\n\nStretnutie 14.11\n\nStav:\n\n- 1 ks klastra je zmontovany\n\nÚlohy:\n\n- Napíšte o tom čo je to kontajnerizácia, čo je Kubernetes, str", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/daniil_huzenko/README.md::chunk-3", + "document_path": "pages/students/2022/daniil_huzenko/README.md", + "title": "Daniil Huzenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "skripty Ansible a K8s konfiguráciu - Ingress, Load Balancer, Dashboard.\n\nStretnutie 14.11\n\nStav:\n\n- 1 ks klastra je zmontovany\n\nÚlohy:\n\n- Napíšte o tom čo je to kontajnerizácia, čo je Kubernetes, stručne o Rpi CM4 a Super6C - opíšte HW.\n- Píšte o metódach orchestrácie. Čo je to a akými metódami sa to robí?\n- Napíšte o Ansible. Ako riadiť klaster pomocou Ansible?\n- Citujte knihy a odborné články. Nájdete to na google scholar.\n\nZásobník úloh:\n\n- Pripravte skripty Ansible pre \"setup\" klastra\n- Pripravte skripty pre \"reinstall\" klastra poocou Ansible\n- Zistite ako funguje netboot na rpi, skúste reinstall cez networkboot.\n\nStretnutie 12.11.2024\n\nStav:\n\n- Písanie draftu BP\n- Vyskúšané tutoriály s Minikube.\n\nÚlohy:\n\n- Zmontujte Raspberry Pi klaster: 1x skrinka s príslušenstvom, 6x RPI Compute Module 4, 1 doska a zdroj SUper6C.\n- Urobte videoblog o tom ako zmontovať RPI klaster. Akým jazykom? Po rusky alebo po slovensky? \n- Zistite čo je to MicroK8s\n - 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.\n - Prihláste sa na Azure KLaud.\n\nZásobník úloh:\n\n- Oživte kla", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/daniil_huzenko/README.md::chunk-4", + "document_path": "pages/students/2022/daniil_huzenko/README.md", + "title": "Daniil Huzenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "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.\n - Prihláste sa na Azure KLaud.\n\nZásobník úloh:\n\n- Oživte klaster a nainštalujte na neho MicroK8s. Inštaláciu urobte ľahko opakovateľnú pomocou skriptu.\n- Nainštalujte monitorovacie nástroje na klaster.\n- Urobte deployment aplikácie na privány klaster aj na verejnmý klaster (AKS).\n- Urobte druhý videoblog o inštalácii softvéru na náš klaster.\n- Napíšte textový blog o tom čo ste urobili - cieľ je poučiť a inšpirovať študentov.\n\nStretnutie 4.10.2024\n\nStav:\n\nNaštudovaný Kubernetes, nainštalované Minikube\n\nÚlohy:\n\n- [x] Napíšte draft BP. Napíšte čo je to Kubernetes a ako sa používa.čo je to kontajnerizácia\n- [x] Napíšte, aké nástroje sa používajú na monitoring klastra.\n- [-] Vyskúšajte a opíšte nástroj Prometheus, Istio. Zistite čo je service-mesh. Čo je „network fabric“ – Calico.", + "text_length": 926 + }, + { + "chunk_id": "pages/students/2022/jakub_schwarc/README.md::chunk-0", + "document_path": "pages/students/2022/jakub_schwarc/README.md", + "title": "Jakub Schwarc", + "categories": [ + "dp2027" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/jakub_schwarc/README.md::chunk-1", + "document_path": "pages/students/2022/jakub_schwarc/README.md", + "title": "Jakub Schwarc", + "categories": [ + "dp2027" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomový projekt 2026\n\nTéma:\n\nInštrukčné dotrénovanie jazykového modelu\n\nCiele na semester:\n\n- Dotrénujte a vyhodnotte Slovak Mistral.\n\nStretnutie 27.2.\n\n- Obozn8mte sa problematikou podľa zadaných zdrojov.\n- Pozrite si https://allenai.org/olmo\n\nÚlohy:\n\n- Oboznámte sa s problematikou veľkých jazykových modelov. Towards Data Science\n- Naučte sa Python lepšie. Nainštalujte si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Vyskúšajte si framework HF Transformers.\n- Oboznámte sa s repozitárom https://github.com/allenai/open-instruct, prečítajte si články\n- Oboznámte sa s repozitárom https://github.com/nlp-uoregon/Okapi, prečítajte si články\n\nZásobník úloh:\n\n- Pracujte na teoretickej časti: opíšte základné pojmy, metódy a dátové množiny. Používajte google scholar a bibliografické odkazy.\n- Najprv pracujte s domácou GPU, ak nebude stačiť pracujte s Google Coolab, ak nebude stačiť požiadajte konzultanta.\n- Naštudovať a vyskúšať PEFT-QLORA.\n- Oboznámte sa s knižnicou \"unsloth\".\n- Oboznámte sa s Huggingface TRL.\n- Oboznámte sa s https://github.com/hiyouga/LLaMA-Factory", + "text_length": 1111 + }, + { + "chunk_id": "pages/students/2022/jan_malinovsky/README.md::chunk-0", + "document_path": "pages/students/2022/jan_malinovsky/README.md", + "title": "Ján Malinovský", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/jan_malinovsky/README.md::chunk-1", + "document_path": "pages/students/2022/jan_malinovsky/README.md", + "title": "Ján Malinovský", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomový projekt 2026\n\nTéma:\n\nGrafové vyhľadávanie pre podporu vzdelávania\n\nCiele na semester.\n\n- Zistite čo je to Retrieval Augmented Generation\n- Zistite, čo je to znalostný graf\n- Naučte sa čo je to GraphRAG\n- Zostavte malý znalostný graf z oblasti vzdelávania. Pri zostavení môžete využiť jazykový model. Môžete preložiť existujúci znalostný graf. \n- Využite znalostný graf pre zlepšenie práce alebo vysvetliteľnosti jazkového modelu\n\nNapr.\n\n- výchovné opatrenia v špeciálnej pedagogike.\n- osnovy pre výuku na základnej škole.\n- spôsoby práce asistenta pedagóga.\n\nStretnutie 14.5.2026\n\nStav:\n\n- Preštudované materiály podľa pokynov nižšie .\n- Získané dokumenty - osnovy pre pre základné školy: slovenčina, matematika, angličtina, informatika, fyzika, biológia, občianska náuka, telesná výchova, chémia pre všetky ročníky. \n- Extrahovaný text pomocou pypdf a docx. Sú tam aj excel tabuľky, ale tie nie sú extrahované.\n- Text sa rozdelí na chunky (cca 8000 znakov), vypočíta sa hash na deduplikáciu.\n- Pomocou LM sa dokument transformtuje na JSON. Z dokumentu LLM extrahuje \"vzdelávacie koncepty\" a vzťahy medzi nimi. Vzťahy sú z určenej množiny typu \"implements\", \"depends on\", \"teaches\", \"req", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/jan_malinovsky/README.md::chunk-2", + "document_path": "pages/students/2022/jan_malinovsky/README.md", + "title": "Ján Malinovský", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "áciu.\n- Pomocou LM sa dokument transformtuje na JSON. Z dokumentu LLM extrahuje \"vzdelávacie koncepty\" a vzťahy medzi nimi. Vzťahy sú z určenej množiny typu \"implements\", \"depends on\", \"teaches\", \"requires\".\n- Výsledok sa zobrazí vo forme grafu.\n- Vytvorený jednoduchý agent, ktorý vyhľadáva v znalostnom grafe a na základe týchto informácií generuje odpoveď.\n\nZdroje doumentov:\n\n- https://www.minedu.sk/vzdelavacie-standardy-pre-1-stupen-zs/\n- https://www.minedu.sk/vzdelavacie-standardy-pre-2-stupen-zs/\n- https://podporneopatrenia.minedu.sk/zabezpecenie-posobenia-pedagogickeho-asistenta-v-triede/\n- https://www.upsvr.gov.sk/socialne-veci-a-rodina/rodina/opatrenia-socialnopravnej-ochrany-deti-a-socialnej-kurately/socialno-pravna-ochrana-deti/opatrenia-na-zabezpecenie-ochrany-zivota-zdravia-a-vyvinu-dietata/vychovne-opatrenia.html?page_id=1205\n - https://www.minedu.sk/pedagogicky-asistent-podporne-opatrenie/\n - https://podporneopatrenia.minedu.sk/katalog-podpornych-opatreni/\n\nÚlohy:\n\n- *dajte zdrojové kódy na GIT*.\n\nTýka sa ďalšieho obdobia:\n\n- Pozrite si https://github.com/hkuds/minirag . Prečítajte si článok, vyskúšajte zdrojové kódy s dátami ktoré máte. \n- Pozrite si https://github.co", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/jan_malinovsky/README.md::chunk-3", + "document_path": "pages/students/2022/jan_malinovsky/README.md", + "title": "Ján Malinovský", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "e zdrojové kódy na GIT*.\n\nTýka sa ďalšieho obdobia:\n\n- Pozrite si https://github.com/hkuds/minirag . Prečítajte si článok, vyskúšajte zdrojové kódy s dátami ktoré máte. \n- Pozrite si https://github.com/HKUDS/LightRAG. Prečítajte si článok, pozrite zdrojové kódy, môžete aj vyskúšať.\n- Preštudujte si jazyk Cypher.\n- Preštudujte si embedding modely a vektorové databázy, napr. ChromaDB a multilingual e5-large.\n- Pokračujte štúdiu GraphRAG:\n- Vytovrte webové demo pre pomoco pedagógovi pri príprave na hodinu. Môžete použiť gradio alebo streamlit. \n- Vytvorte agenta pre pomoc učiteľovi alebo pedagogickému asistentovi pri príprave na vyučovanie. \n\nZásobník úloh:\n\n- Využite školskú infraštruktúru\n- Zlepšite proces tvorby znalostného grafu. Zlepšite druhy vzájomných vzťahov, zlepšite proces extrakcie. \n- Vytvorte proces zhlukovania konceptov (pomenovaných entít)\n- Použite grafovú datagázu Neo4J alebo inú.\n- Jeden z možných spôsobov vyhľadávnaia je použitie relačnej dabázy. \n- Preštudujte si spôsoby vyhodnotenia RAG - RAGAS, DeepEval a vyhodnnotte systém.\n\nStretnutie 20.2.2026\n\nÚlohy:\n\n- Naučte sa programovať v [Python](https://zp.kemt.fei.tuke.sk/topics/python).\n- Zistite, čo je to RAG. Zi", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/jan_malinovsky/README.md::chunk-4", + "document_path": "pages/students/2022/jan_malinovsky/README.md", + "title": "Ján Malinovský", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "soby vyhodnotenia RAG - RAGAS, DeepEval a vyhodnnotte systém.\n\nStretnutie 20.2.2026\n\nÚlohy:\n\n- Naučte sa programovať v [Python](https://zp.kemt.fei.tuke.sk/topics/python).\n- Zistite, čo je to RAG. Zistite ako funguje generatívny model. Napíšte o tom poznámky a zdroje ktoré ste použili.\n- Prihláste sa na https://ui.tukekemt.xyz/ , api https://docs.openwebui.com/reference/api-endpoints/\n- https://docs.langchain.com/oss/python/langchain/quickstart\n- Pozrite si https://graphrag.com/concepts/intro-to-graphrag/\n- https://docs.langchain.com/oss/python/integrations/retrievers/graph_rag\n\nZásobník úloh:\n\n- Indexujte a vyhľadávajte v databáze dokumentov z oblasti vzdelávania.\n- Oboznámte sa s https://github.com/topoteretes/cognee", + "text_length": 729 + }, + { + "chunk_id": "pages/students/2022/jan_ptak/README.md::chunk-0", + "document_path": "pages/students/2022/jan_ptak/README.md", + "title": "Ján Pták", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/jan_ptak/README.md::chunk-1", + "document_path": "pages/students/2022/jan_ptak/README.md", + "title": "Ján Pták", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomový projekt 2026\n\nTéma:\n\nAgent pre manažment záverečných prác\n\nCiele na semester.\n\n- Zistite čo je to Retrieval Augmented Generation\n- Vytvorte agenta pre zlepšenie manažmentu záverečných prác zpwiki. \n- Ako rozhranie použite OpenWebUI. \n- Navrhnite deployment pomocou Docker. Implementujte aj synchronizáciou (pomocou WebHOOK)\n\nZásobník úloh:\n\n- Zistite, čo je to znalostný graf\n- Naučte sa čo je to GraphRAG\n- Využite znalostný graf pre zlepšenie práce alebo vysvetliteľnosti jazkového modelu\n\nStretnutie 20.2.2026\n\nÚlohy:\n\n- Zistite, čo je to RAG. Zistite ako funguje generatívny model. Napíšte o tom poznámky a zdroje ktoré ste použili.\n- Prihláste sa na https://ui.tukekemt.xyz/ , api https://docs.openwebui.com/reference/api-endpoints/\n- Prejdite si https://docs.langchain.com/oss/python/langchain/quickstart\n- Pozrite si dokumentáciou https://docs.openwebui.com/. \n- Pozrite si https://git.kemt.fei.tuke.sk/KEMT/zpwiki/\n- Naprogramujte proces, ktorý zaindexuje Markdown súbory.\n- Naprogramujte agenta, ktorý vie vyhľadávať v zaindexovaných súboroch.\n- Vaše kódy dajte na KEMT GIT.", + "text_length": 1095 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-0", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-1", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2027\n\nExpertný agentový systém na podporu rozhodovania v lekárni\n\nCieľ:\n\n- Vylepšiť agenta pre prácu so znalostným grafom - interakcie a kontraindikácie.\n- Zostaviť znalostný graf z databázy príbalových letákov adc a s jeho pomocou zlepšiť generovanie odpovede.\n\nStretnutie 14.5.\n\nStav:\n\n- Získaná databáza ADC pomocou scrapera.\n- Dáta sú transformované do JSON, je definovaná schéma.\n- Pomocou LightRAG je vytvorený znalostný graf pre niekoľko (500) liekov.\n- Prvá verzia agenta na základe LightRAG. Problém je, že znalostný graf je príliš veľký.\n- Kódy pre extrakciu aj pre krawlera sú na gite, aj konfigurácia spustenia LightRAG.\n\nÚlohy:\n\n- Zlepšite vyhľadávanie v znalostnom grafe. Nakonfigurovať LightRAG na databázu Neo4J.\n- Preskúmajte vzniknutý KG. Nachádzajú sa v ňom duplicitné koncepty alebo vzťahy? \n- Oboznámte sa so systémom MiniRAG: https://github.com/hkuds/minirag Prečítajte si článok. \n- Oboznámte sa so systémom RAGAS a DeepEVAL.\n\nZásobník úloh:\n\n- Zostavte databázu vzorových úloh pre vyhodnotenie takéhoto systému a vyberte vhodnú metodiku vyhodnotenia. \n- Pripravte webové demo. Môžete použiť streamlit alebo gradio.\n\nStretnutie 30.4.2026\n\nÚlohy:\n\n- Oboznámte", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-2", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ázu vzorových úloh pre vyhodnotenie takéhoto systému a vyberte vhodnú metodiku vyhodnotenia. \n- Pripravte webové demo. Môžete použiť streamlit alebo gradio.\n\nStretnutie 30.4.2026\n\nÚlohy:\n\n- Oboznámte sa s pojmami na stránke https://graphrag.com/concepts/intro-to-graphrag/ . Napíšte is poznámky.\n- Vyskúšajte si softvér https://github.com/hkuds/lightrag . \n- Prečítajte si článok LightRAG: Simple and Fast Retrieval-Augmented Generation\n- Oboznámte sa so systémom https://docs.ragas.io/en/stable/\n\nZásobník úloh:\n\n- Využite školské LLM prístupné cez API.\n- Pripravte skripty pre získanie (scarpovanie) databázy ADC.\n- Zlepšite proces parsovania do formátu JSON. Môžete použiť systém Docling.\n\nStretnutie 30.3.\n\nStav:\n\n- Oboznámenie sa s LightRAG.\n- Vyskúšané s lokálnym minilm-paraphrase a openwebui tukekemt API.\n\nÚlohy:\n\n- Pripravte skripty pre získanie (scrapovanie) databázy ADC.\n- Zlepšite proces parsovania do formátu JSON. Môžete použiť systém Docling.\n- Skripty dajte na GIT.\n- Vypracujte prehľad článkov zameraných na tvorbu znalostného grafu alebo exťrakcie štruktúrovaných informácií z medicínskych dát.\n- Zistite, ktoré entity sú dôležité pre databázu liekov.", + "text_length": 1171 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-3", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "# Bakalárska práca 2025\n\nChceme vytvoriť asistenta pre farmaceuta alebo zákazníka lekárne pre vyhľadávanie v príbalových letákoch.\n\nGenerovanie jazyka s podporou vyhľadávania v doménovo orientovaných dátach\n\n1. Vypracujte prehľad metód a modelov generovania jazyka s pomocou vyhľadávania.\n2. Navrhnite a vytvorte systém pre zodpovedanie otázok v prirodzenom jazyku v doménovo orientovaných dátach.\n3. Vyskúšajte a vyhodnoťte vytvorený systém.\n4. Navrhnite zlepšenia pre vybranú metódu generovania odpovede.\n\nStaré zadanie:\n\nVyhľadávanie právnych informácií pomocou neurónových sietí\n\n- Oboznámte sa s existujúcimi modelmi pre vyhľadávanie v texte.\n- Vytvorte systém pre vyhľadávanie v zákonoch a vyhláškach.\n- Vyhľadajte súvisiace paragrafy so zadanou otázkou\n- Vyhodnotte či je zadané tvrdenie v súlade s legislatívou alebo nie.\n\nRAG: Generovanie jazyka s pomocou vyhľadávania - Retrieval augmented generation\n\nStretnutie 28.3.2025\n\nStav:\n\n- Agent funguje super.\n- Kódy sú na osobnom githube\n\nÚlohy:\n\n- Kódy dajte na KEMT GIT.\n- Dopracujte Docker Compose.\n- Zverejnite demo, napr. pomocou TUKE Cloud.\n\n13.2.2025\n\nStav:\n\n- Funguje QA nad databázou liekov.\n- Autentifikacia cez Google.\n- H", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-4", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "hube\n\nÚlohy:\n\n- Kódy dajte na KEMT GIT.\n- Dopracujte Docker Compose.\n- Zverejnite demo, napr. pomocou TUKE Cloud.\n\n13.2.2025\n\nStav:\n\n- Funguje QA nad databázou liekov.\n- Autentifikacia cez Google.\n- História sa ukladá do Postgres DB na AWS.\n- Používa sa Mistral Large. Slovenský Mistral nefunguje lebo ho treba dotrénovať. \n- Vektorový model paraphrase-multilingual-MiniLM-L12-v2\n- Projekt beží cez Docker, sú hotové aj Docker skripty.\n- V texte je osnova a draft. Treba ešte pracovať hlavne na teoretickej časti - odbornej literatúre.\n\nÚlohy:\n\n- Pokračujte v práci na texte.\n- Skúste vyhodnotiť navrhnutý systém. Pripravte dotazník. Osloviť kolegov aby to vyskúšali a slovne vyhodnotili systém.\n- dajte nové kódy na git.\n\nZásobník úloh:\n\n- Zlepšite logiku dialógu. Jazykový model by sa mal správať ak inteligentný agent - mal by mať definovaný cieľ konverzácie. \n- Definujte ciele dialógu - čo by mal agent vedieť pre úspešnú odpoveď. Napr. Interakcie s liekmi. Sú lieky na predpis? Aké sú podrobnejšie symptómy choroby? Suchý kašeľ alebo vykašliavanie? Koľko rokov má pacient? Aká anamnéza je dôležitá.\n- Preštudujte si metodiku REACT a Chain of Thought. https://arxiv.org/abs/2210.03629 \n\n8.11.2", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-5", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "jšie symptómy choroby? Suchý kašeľ alebo vykašliavanie? Koľko rokov má pacient? Aká anamnéza je dôležitá.\n- Preštudujte si metodiku REACT a Chain of Thought. https://arxiv.org/abs/2210.03629 \n\n8.11.2024\n\nStav:\n\n- Modifikovaný frontend (Tailwind)\n- Vytvorený Docker Images, Elasticsearch databáza aj index.\n- Je aj skript na indexovanie.\n- Vyskúšaný Mistral Small a Mistral Large cez API-\n\nÚlohy:\n\n- Pracujte na texte, pošlite mi draft.\n- Pripojte sa na server quadro.kemt.fei.tuke.sk (cez ssh z tuke siete). Použite prostredie Anaconda.\n- 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ý.\n\n17.10.20204\n\nStav:\n\n- Funguje web rozhranie aj vyhľadávanie.\n- Kódy sú na gite. Využíva sa Flask, Mistral API pre Mistral-Small (nebeží lokálne). Na vektory MiniLM2\n- Napísané poznámky o praktickej časti. \n\nÚlohy\n\n- Otázka: Je to hybridné vyhľadávanie?\n- Začnite písať teoretickú časť práce. \n- 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á", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-6", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "o hybridné vyhľadávanie?\n- Začnite písať teoretickú časť práce. \n- 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ť.\n- Vyskúšajte rôzne spôsoby vyhľadávania - aj sparse (riedke vyhľadávanie).\n- Kódy dávajte na git.\n\nZásobník úloh:\n\n- 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. \n- Vyskúšajte Váš systém s lepšími modelmi (Slovak Mistral, iný väčší model, na vektory me5 alebo slovakbert-mnlr).\n- pripravte nasadenie aplikácie pomocou systému Docker Compose.\n- Urobte číslelné vyhodnotenie vyhľadávania. Toto má na starosti Yevhenii Leonov. \n\n27.9.2024\n\nStav:\n\n- 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ň.\n- Výskúšaný Slovenský Mistral \"slovak-nlp/mistral-sk-7b\". Výskúšané cez API skript.\n- 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.\n\nÚl", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-7", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "ýskúšané cez API skript.\n- 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.\n\nÚlohy:\n\n- Pokračujte v štúdiu LangChain. Prejdite si tutoriály.\n- Čí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.\n- Vytvorte skript pre indexovanie a prípravu dát, dajte ho na git.\n- 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é.\n\nZásobník úloh:\n\n- 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.\n- Model bude treba dotrénovať na inštrukcie, použiť databázu Slovak Alpaca.\n- 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.\n- Pripraviť vlastné webové rozhranie a backend LangChain.\n\nStretnutie 18.9.2024\n\nStav:\n\n- Vyskúšaný model bioBERT, cez Tra", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-8", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "dávanie, aby sa vedel spýtať dolnňujúce otázky. Prečítajte si článok o ReACT.\n- Pripraviť vlastné webové rozhranie a backend LangChain.\n\nStretnutie 18.9.2024\n\nStav:\n\n- Vyskúšaný model bioBERT, cez Transformers, Anaconda na malom datasete na notebooku\n- ElasticSearch Python API\n- vlastný skript na indexovanie pomocou SBERT\n\nÚlohy:\n\n- 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.\n- 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).\n- Urobte si lokálnu inštaláciu PrivateGPT na Vašom notebooku. Zmente konfiguráciu - modely a prompty\n- Dáta dodá Kristián Sopkovič - cez Teams sa spojte.\n- Pokračujte v štúdiu Python, Transformers. Oboznámte sa s LangChain.\n- Prečítajte si tento článok https://arxiv.org/abs/1908.10084 o sentence transformers a urobte si poznámky.\n\nZásobník úloh:\n\n- Urobte množinu na vyhdnotenie. Vytvoríte množinu vzorových otázok a odpovedí. Vyhodnotte celý proces.\n- Modely by mali be", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-9", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "bs/1908.10084 o sentence transformers a urobte si poznámky.\n\nZásobník úloh:\n\n- Urobte množinu na vyhdnotenie. Vytvoríte množinu vzorových otázok a odpovedí. Vyhodnotte celý proces.\n- 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.\n- Preskúmať využitie Knowledge Graph pre spracovanie medicínskych dát.\n\nStretnutie 26.4.2024\n\nÚlohy:\n\n- Zistite čo je to Retrieval Augmented Generation a napíšte o tom správu.\n- Naučte sa základy jazyka Python.\n- Podrobne si prejdite minimálne dva tutoriály.\n- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.\n- Nainštalujte si a vyskúšajte softvér PrivateGPT\n- Nainštalujte si prostredie Anaconda. Prejdite si knihu Dive Deep into Python 3.\n- 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.\n- Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.\n\nZásobník úloh:\n\n- Spracujte a indexujte slovenské zákony a vyhlášky.\n- Získajte zoznam právnych tvrdení ktoré je možné overiť.\n- Existuje množina zmlúv o prenájme v slovens", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/oleh_poiasnik/README.md::chunk-10", + "document_path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "ai/ a napíšte si poznámky.\n\nZásobník úloh:\n\n- Spracujte a indexujte slovenské zákony a vyhlášky.\n- Získajte zoznam právnych tvrdení ktoré je možné overiť.\n- Existuje množina zmlúv o prenájme v slovenskom jazyku. https://huggingface.co/datasets/mtarasovic/ner-rent-sk-dataset", + "text_length": 274 + }, + { + "chunk_id": "pages/students/2022/samuel_vasil/README.md::chunk-0", + "document_path": "pages/students/2022/samuel_vasil/README.md", + "title": "Samuel Vasiľ", + "categories": [ + "bp2026" + ], + "tags": [ + "llm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/samuel_vasil/README.md::chunk-1", + "document_path": "pages/students/2022/samuel_vasil/README.md", + "title": "Samuel Vasiľ", + "categories": [ + "bp2026" + ], + "tags": [ + "llm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalárska práca 2026\n\nkonzultant Matúš Čavojský\n\nPredbežný názov:\n\nOrchestrácia veľkých jazykových modelov pomocou model context protokolu s využitím OpenWebUI\n\nZadanie:\n\n- Vypracujte prehľad súčasných veľkých jazykových modelov s podporou slovenčiny, ktoré sa používajú na generovanie prirodzeného jazyka, generovanie programového kódu a vyhľadávanie informácií. \n- Nasaďte OpenWebUI pomocou Docker Compose a vybrať niekoľko vhodných modelov, ktoré sprístupníte prostredníctvom webového rozhrania aj REST API. \n- Rozšírte nasadený systém o podporu RAG, vyhľadávania na webe, volania funkcií a integráciu ďalších nástrojov. \n- Otestujte a vyhodnoťte celý rámec, identifikujte slabé miesta a navrhnite konkrétne opatrenia na ich odstránenie.\n\nUkončil predčasne\n\nÚlohy:\n\n- Vypracovať prehľad jazykových modelov s podporou slovenčiny pre úlohy generovania prirodzeného jazyka, generovania proprogramov a vyhľadávania.\n- Nasadiť OpenWebUI pomocou Docker Compose\n- Vybrať viacero vhodných modelov a sprístupniť ich pomoocou Webového rozhrania a REST API\n- Pridať podporu RAG, vyhľadávania na webe, volania funkcií a nástrojov.\n\nStretnutie 24.10.2025\n\nStav:\n\n- Funguje OpenWebUI : WebUI, Proxy, MCP", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/samuel_vasil/README.md::chunk-2", + "document_path": "pages/students/2022/samuel_vasil/README.md", + "title": "Samuel Vasiľ", + "categories": [ + "bp2026" + ], + "tags": [ + "llm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "a sprístupniť ich pomoocou Webového rozhrania a REST API\n- Pridať podporu RAG, vyhľadávania na webe, volania funkcií a nástrojov.\n\nStretnutie 24.10.2025\n\nStav:\n\n- Funguje OpenWebUI : WebUI, Proxy, MCP Adapter, OLLAMA server\n\nÚlohy:\n\n- Pridať RAG. Musí byť nejaká vektorová databáza.\n- Dokončiť Docker Compose Skripty aj dokumentáciu a dať ich na KEMT GIT\n- Do práce pidajte prehľad LLM Deployment - prečítaje a citujete články z Google scholar.\n\nBudúce úlohy:\n\n- Nasadiť systém do produkcie na školskom servri.\n- Navrhnúť politiku prístupu pre študentov, Autentifikácia pomocou LDAP?\n- Dalo by sa urobiť aj dotrénovanie?\n- Pozrieť pluginy - doplniť zaujímavé vlastnosti.", + "text_length": 670 + }, + { + "chunk_id": "pages/students/2022/serhii_yemets/README.md::chunk-0", + "document_path": "pages/students/2022/serhii_yemets/README.md", + "title": "Serhii Yemets", + "categories": [ + "bp2025" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/serhii_yemets/README.md::chunk-1", + "document_path": "pages/students/2022/serhii_yemets/README.md", + "title": "Serhii Yemets", + "categories": [ + "bp2025" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2025\n\nCieľ:\n\n- Zlepšenie slovenského modelu pre rozpoznávanie pomenovaných entít.\n\nDo budúcnosti: \n\n- Vypracovanie webového dema\n- Využitie modelu v nejakej zaujímavej úlohe (chatbot alebo právne texty).\n\nNávrh na zadanie bakalárskej práce:\n\n1. Napíšte prehľad neurónových modelov vhodných pre rozpoznávanie pomenovaných entít v slovenskom jazku.\n2. Napíšte prehľad existujúcich dátových množín, vhodných na trénovanie modelu pre rozpoznávanie pomenovaných entít.\n3. Vyberte vhodný model, dátovú množinu a natrénujte a vyhodnoťte model.\n4. Vytvorte webové demo pre rozpoznávanie pomenovaných entít.\n5. Identifikujte spôsoby možného zlepšenia natrénovaného modelu pre rozpoznávanie pomenovaných entít.\n\nStretnutie 28.3.2025\n\nStav:\n\n- spojené datasety: wikiann a conll2003. Pomohlo to. Dosiahli sme 0.9 na SLovak BERT.\n\nÚlohy:\n\n- Skúste zlepšiť model.\n- Zverejniť model. V spolupráci s vedúcim. Ku modelu pripravte krátky opis ako bol trénovaný a aké výsledky dosiahol.\n- Definujte a zlepšite štruktúru práce. Práca postuypuije od všeobecného ku konkrétnemu. Kapitoly by mali byť konzistentné s názvom. Prezentujte ako ste splnili zadanie. Zlepšite jazykovú úroveň práce. Dôsledn", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/serhii_yemets/README.md::chunk-2", + "document_path": "pages/students/2022/serhii_yemets/README.md", + "title": "Serhii Yemets", + "categories": [ + "bp2025" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "e a zlepšite štruktúru práce. Práca postuypuije od všeobecného ku konkrétnemu. Kapitoly by mali byť konzistentné s názvom. Prezentujte ako ste splnili zadanie. Zlepšite jazykovú úroveň práce. Dôsledne používajte jednotnú terminológiu. \n\nZásobník úloh:\n\n- Pridajte ďalšie dáta a pretrénujte model. V prípade potreby dostanete prístup na školský server. \n\nStretnutie 21.3.2025\n\nStav:\n\n- Zlepšenie procesu trénovania modelu - viac epoch, použitie LORA.\n- Použitie SlovakBERT a WikiANN dataset.\n- Urobené Web DEMO. \n- Text nie je pokrok.\n\nÚlohy:\n\n- Zdrojové texty pre trénovnanie a pre demo dajte na KEMT GIT.\n- Zlepšite výsledky trénovania. Skúste iné parametre LR. Skúste inú dátovú množinu. Skúste spojiť viaceré dátové množiny do jednej.\n- Porovnajte viacero modelov. ModernBERT, mbert, hplt bert base, slovak roberta, Výsledky dajte do tabuľky. Opíšte postup experimentov.\n- Pracujte na texte, hlavne na praktickej časti.\n\nZásobník úloh:\n\n- Vyskúšajte generatívne modely Slovak T5 base, Slovak Mistral 7B.\n\nStretnutie 20.12.2024\n\nStav:\n\n- Splnené úlohy z posledného stetnutia\n- Text je v dobrom stave, treba ešte použiť šablónu.\n\nÚlohy:\n\n- Pripravte si prezentáciu.\n- Textu dajte na moodle, skrip", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/serhii_yemets/README.md::chunk-3", + "document_path": "pages/students/2022/serhii_yemets/README.md", + "title": "Serhii Yemets", + "categories": [ + "bp2025" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "stral 7B.\n\nStretnutie 20.12.2024\n\nStav:\n\n- Splnené úlohy z posledného stetnutia\n- Text je v dobrom stave, treba ešte použiť šablónu.\n\nÚlohy:\n\n- Pripravte si prezentáciu.\n- Textu dajte na moodle, skripty dajte na git.\n- Pokračujte v písaní. Doplňte časť o spôsobe anotovania NER - značkovanie BIO (beginning, inside, outside) alebo iné. Doplôte časť o vyhodnotení - precision,recall, F1. Doplňte odkazy na dátové množiny. Používajte odkazy na vedecké články.\n- Zlepšite presnosť Vášho modelu. Do BP napíšte priebeh trénovania a vyhodnotenia. Výsledky experimenotv zapíšte do tabuľky.\n\nZásobník úloh:\n\n- Zostavte webové demo\n- Pripravte experiment pre ukrajinský a ruský jazyk.\n- Priprave Dockerfile pre Vaše demo\n- Vytvorte dátovú množinu spojením viacerých existujúcich množin do jednej. Vedúci Vám dá nejaké skripty.\n\nStretnutie 30.10.2024\n\nStav:\n\n- Napísané texty o NE. \n- Vyskúšané a naštudované veci podľa pokynov,\n- Začiatok práce na webovom deme.\n\nÚlohy:\n\n- [x] Naštudujte korpusy s [NER pre slovenský jazyk](https://github.com/slovak-nlp/resources). Napíšte ich zoznam. Ku každému napíšte veľkosť (počet viet, slov) a druhy pomenovaných entít.\n- [x] Najprv budeme pracovať s ručne anotovanými", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/serhii_yemets/README.md::chunk-4", + "document_path": "pages/students/2022/serhii_yemets/README.md", + "title": "Serhii Yemets", + "categories": [ + "bp2025" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "lovenský jazyk](https://github.com/slovak-nlp/resources). Napíšte ich zoznam. Ku každému napíšte veľkosť (počet viet, slov) a druhy pomenovaných entít.\n- [x] 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.\n- [x] 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?\n- [x] Prejdite si tutoriál https://huggingface.co/docs/transformers/en/tasks/token_classification\n\nZásobník úloh:\n\n- Natrénujte nový Spacy NER model ktorý by bol lepší ako pôvodný.\n- Spojte viacero dátových množin (manuálne anotovaných) do jednej a použite je na natrénovanie modelu. \n- Použite veľký jazykový model pre NER anotáciu a porovnajte ho s menším dotrénovaným NER modelom.\n- Vykonané experimenty slovne opíšte a výsledky zapíšte do tabuliek. Výsledky slovne okomentujte. \n\nStretnutie 20.5.20204\n\nÚlohy:\n\n- [x] Zistite čo je to rozpoznávanie pomenovaných entít (named entity recognition) a napíšte o tom správu", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/serhii_yemets/README.md::chunk-5", + "document_path": "pages/students/2022/serhii_yemets/README.md", + "title": "Serhii Yemets", + "categories": [ + "bp2025" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "a výsledky zapíšte do tabuliek. Výsledky slovne okomentujte. \n\nStretnutie 20.5.20204\n\nÚlohy:\n\n- [x] Zistite čo je to rozpoznávanie pomenovaných entít (named entity recognition) a napíšte o tom správu.\n- [x] Zopakujte si základy jazyka Python \"Dive into Python 3\". Nainštalujte si prostredie Anaconda.\n- [x] Oboznámte sa s knižnicou Spacy a vyskúšajte si skripty v https://github.com/hladek/spacy-skmodel\n- [x] Nainštalujte si knižnicu Huggingface Transformers. Oboznámte sa s ňou. Zistite, ako sa trénuje model NER pomocou takejto knižnice. \n- [x] Zistite, aké modely a jazykové zdroje sú dostupné pre túto úlohy pre slovenský jazyk https://github.com/slovak-nlp/resources\n\nZásobník úloh:\n\n- Pripravte viacero korpusov pre NER. Môžu byť aj viacjazyčné.\n- Natrénujte model Huggingface pre NER", + "text_length": 791 + }, + { + "chunk_id": "pages/students/2022/tetiana_mohorian/README.md::chunk-0", + "document_path": "pages/students/2022/tetiana_mohorian/README.md", + "title": "Tetiana Mohorian", + "categories": [ + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/tetiana_mohorian/README.md::chunk-1", + "document_path": "pages/students/2022/tetiana_mohorian/README.md", + "title": "Tetiana Mohorian", + "categories": [ + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Bakalárska práca 2025\n\n- Spolupráca [P. Pokrivčák](/students/2019/patrik_pokrivcak)\n- [Python](/topics/python)\n- [Hate Speech](/topics/hatespeech)\n\nRozpoznávanie nenávistnej reči pomocou veľkých jazykových modelov.\n\nZadanie:\n\n1. Vypracujte prehľad veľkých jazykových modelov s podporou slovenčiny.\n2. Vypracujte prehľad dostupných textových korpusov pre rozpoznávanie nenávistnej reči.\n3. Vyberte model a metódu rozpoznávania nenávistnej reči. Vyhodnoťte presnosť rozpoznávania nenávistnej reči na vybranej množine.\n4. Navrhnite zlepšenia vybranej metódy.\n\nNávrh na tému:\n\n- Oboznámte sa s existujúcimi veľkými jazykovými modelmi - uzatvorenými aj otvorenými.\n- Aplikujte existujúci model na úlohu detekcie nenávistnej reči. \n- Na adaptáciu použite \"prompting\" a \"LORA\".\n- Vyhodnotte model pomocou [overovacej množiny](https://huggingface.co/datasets/TUKE-KEMT/hate_speech_slovak).\n\nStretnutie 28.3.\n\nStav:\n\n- Práca na stránke, frontend backend\n- Práca na Telegram bot, vyhodnotenie s priateľmi.\n- Few Shot Learning: 0.7 F1. Slovak T5-small model. \n- Práca na lm-eval-harness, zatiaľ sa to nepodarilo. Task zatiaľ nefunguje, framework funguje.\n- Pripravená aj TK Inter aplikácia.\n- Pripravte webo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/tetiana_mohorian/README.md::chunk-2", + "document_path": "pages/students/2022/tetiana_mohorian/README.md", + "title": "Tetiana Mohorian", + "categories": [ + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "- Few Shot Learning: 0.7 F1. Slovak T5-small model. \n- Práca na lm-eval-harness, zatiaľ sa to nepodarilo. Task zatiaľ nefunguje, framework funguje.\n- Pripravená aj TK Inter aplikácia.\n- Pripravte webovú aplikáciu na zverejnenie pomocou Docker.\n\nÚlohy:\n\n- Vedúci môže pomôcť s Task na LM E H - pripomente mi to ďalší týždeň.\n- Využite iný model. Napr. Slovak T5 large alebo base. Alebo Slovak MIstral.\n- Updatujte kódy na GITE. \n- Do práce môžete dať screenshoty z Vašej aplikácie\n\nZásobník úloh:\n\n- Zverejnite Vašu aplikáciu napr. pomocou TUKE Cloud.\n\nStretnutie 13.2.2025\n\nStav:\n\n- Dotrénovaný t5 small na HS\n- Vyhodnotené viaceré modely pre úlohu detekcie HS\n- Navrhnutý prompt.\n- Práca web. deme. Funguje frontend (react), zatiaľ nefunguje backend (django).\n- Práca na telegram bote - upozornenie diskutujúcich na \"nevhodné\" výrazy. \n- Práca na texte. \n\nÚlohy:\n\n- Pokračujte v písaní. Je potrebné zlepšiť jazyk, vyradiť príliš všeobecné časti, pridať odkazy na odbornú literatúru, zrozumiteľne opísať experimenty a výsledky.\n- Pripravte experiment s \"few shot\" a veľkým jazykovým modelom. Môžete použiť lm-eval-harness.\n- Skripty dajte na kemt git.\n\nZásobník úloh:\n\n- Pripravte DEMO s pomocou Doc", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/tetiana_mohorian/README.md::chunk-3", + "document_path": "pages/students/2022/tetiana_mohorian/README.md", + "title": "Tetiana Mohorian", + "categories": [ + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "ísať experimenty a výsledky.\n- Pripravte experiment s \"few shot\" a veľkým jazykovým modelom. Môžete použiť lm-eval-harness.\n- Skripty dajte na kemt git.\n\nZásobník úloh:\n\n- Pripravte DEMO s pomocou Docker.\n\nStretnutie 12.11.2024\n\nStav:\n\n- Vyskúšané few shot Distillbert, BERT, GPT3, T5, najlepšie výsledky mal DistillBERT : 65F1. Problém je, že tieto modely nevedia po slovensky.\n- Na vyhodnotenie použitý svoj skript a framework llm-eval-harness.\n- Pokračuje písanie.\n\nÚlohy:\n\n- [x] Pošlite mi draft BP na ďalšie stretnutie.\n- [x] Urobte si repozitár na KEMT GIT a dajte tam zdrojové kódy na spustenie experimentov.\n- [x] Pokračujte v písaní.\n- [-] 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 .\n- [x] Napíšte ChatGPT prompt na detekciu nenávistnej reči. \n- 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.\n\nZásobník úloh:\n\n- [x] Zistite čo je to PEFT a kvantizácia a ako sa to používa. \n- [x] Dotrénujte jazykový model pre rozponávanie HS pomocou metódy PEFT.\n\nStretnutie 18.10.2024\n\nStav:\n\n- Urobené 3 p", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/tetiana_mohorian/README.md::chunk-4", + "document_path": "pages/students/2022/tetiana_mohorian/README.md", + "title": "Tetiana Mohorian", + "categories": [ + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": ".\n\nZásobník úloh:\n\n- [x] Zistite čo je to PEFT a kvantizácia a ako sa to používa. \n- [x] Dotrénujte jazykový model pre rozponávanie HS pomocou metódy PEFT.\n\nStretnutie 18.10.2024\n\nStav:\n\n- Urobené 3 prehľadové tabuľky s modelmi - architektúra, presnosť, multilinguaglita. \n- Pozretá kniha DDIP3 a d2dl. Poznámky na 20 strán.\n- Nainštalovaná OLLama, Transformers, vyskúšaný Mistral. \n- Urobené všetko.\n\nÚlohy:\n\n- 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). \n- Navrhnite promt (može byť aj viac rôznych) pre veľký jazykový model pre detekciu nenávistnej reči. \n- 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.\n- Oboznámte sa ako funguje overenie veľkých jazykových modelov pomocu Eleuther lm-evaluation-harness.\n\nZásobník úloh:\n\n- [ ] Dotrénujte vybrané modely na úlohu detekcie nenávistnej reči. Model bude vykonávať binárnu klasifikáciu. \n- [x] Pripravte skript pre overenie LLM na úlohe rozpoznávanie nenávistnej reči. Pripravte postup pre", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/tetiana_mohorian/README.md::chunk-5", + "document_path": "pages/students/2022/tetiana_mohorian/README.md", + "title": "Tetiana Mohorian", + "categories": [ + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "jte vybrané modely na úlohu detekcie nenávistnej reči. Model bude vykonávať binárnu klasifikáciu. \n- [x] Pripravte skript pre overenie LLM na úlohe rozpoznávanie nenávistnej reči. Pripravte postup pre overenie pomocu existujúceho frameworku pre overenie. \n\nStretnutie 3.10.2024\n\nÚlohy:\n\n- [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.\n- [x] Prejdite si knihu Dive Deep into Python 3.\n- [x] Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.\t\n- [x] Zistite čo je to \"prompting\", a \"few shot learning\". Napíšte si poznámky.\n- [x] Oboznámte sa s OPEN AI Python API.\n- [x] Nainštalujte si prostredie Anaconda. \n- [x] Nainštalujte si Pytorch, a huggingface transformers a oboznámte sa ako funguje táto knižnica.\n- [x] Nainštalujte si prostredie OLLAMA a vyskúšajte lokálne jazykové modely\n\nZásobník úloh:\n\n- [x] Nainštalujte si knižnicu LangChain a pozrite si ako fungujú [ChatModely](https://python.langchain.com/docs/modules/model_io/chat/)", + "text_length": 1026 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-0", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-1", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Diplomová práca 2027\n\nZlepšenie vyhľadávania pomocou znalostných grafov.\n\nMyšlienky:\n\n- Agent si buduje vnútornú reprezentáciu pomocu ktorej vie lepšie generovať.\n- Vnútorná reprezentácia je v človeku zrozumiteľnej podobe, napr. znalostný graf.\n\nMožné úlohy:\n\n- Navrhnite agenta, ktorý bude budovať a využívať znalostný graf pri vyhľadávaní.\n- Môže to byť v oblasti vzdelávania, práva alebo medicíny.\n- Zostavte multilinguálny znalostný graf, ktorý môže pomôcť pri generovaní.\n\nExistujúca práca:\n\n- LightRAG - pozrite si to.\n\nStretnutie 15.5.\n\nStav:\n\n- Zaindexované anglické dáta Alice in Wonderland pomocou LightRAG, zostavený znalostný graf z knihy.\n\nÚlohy:\n\n- Pozrite sa na systém MiniRAG\n- Získajte texty Alice in Wonderland v iných jazykoch - napr. po rusky a po slovensky. Zostavte multilinguálny znalostný graf. \n- Prečítajte si najnovšie vedecké články na tému \"multilingual knowledge graph construction\", \"multilingual entity linking (alignment)\". Urobte si poznámky o spôsoboch ako urobiť takýto graf a ako ho využiť pri vyhľadávaní. \n\nStretnutie 27.4. \n\nÚlohy:\n\n- Naštudujte si problematiku.\n- Získajte vzorový znalostný graf ktorý sa bude dať použiť pri výskume.\n- Vytvorte jednoduché d", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-2", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "takýto graf a ako ho využiť pri vyhľadávaní. \n\nStretnutie 27.4. \n\nÚlohy:\n\n- Naštudujte si problematiku.\n- Získajte vzorový znalostný graf ktorý sa bude dať použiť pri výskume.\n- Vytvorte jednoduché demo, ktoré bude demonštrovať využitie znalostného grafu pri vyhľadávaní.\n- Na právnych dátach pracujú kolegovia Šarišský a Ščišľak. Spracovali Právny Thesaurus.\n- Na lekárskych dátach pracuje doc. Bednár. Z toho sa da vytiahnuť znalostný graf. \n- Na dátach zo vzdelávania pracuje vedúci - máme ZPWIKI.\n\nNápady na prínos:\n\n- navrhnite spôsob automatického budovania znalostného grafu vo zvolenej doméne.\n- navrhnite spôsob vyhľadávania s pomocou existujúceho znalostného grafu.\n- dotrénujte jazykový model alebo navrhnite metódu promptovania pre tvorbyu znalostných grafov z dát.\n- navrhnite metódu pre dotrénovanie jazykového modelu s pomocou znalostného grafu \n- augmentácia modelu s pomocou znalostného grafu.", + "text_length": 910 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-3", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "# Diplomový projekt 2026\n\nProjekt odložený.\n\nAugmentácia dát pre zlepšenie získavania informácií\n\nCiele na prácu:\n\n- Zlepšiť slovenský vektorový jazykový model pomocou umelo generovaných dát.\n- Preskúmať možnosti augmentácie pre lepšie využitie znalostných grafov\n- Preskúmať možnosti agmentácie pre vyhľadávanie v (slabo) štruktúrovaných dátach.\n- Chceme napríklad vedieť vyhľadávať priamo v JSON.\n\nCiele na semester:\n\n- Dotrénovať slovenský vektorový model pre vyhľadávanie s promptom.\n- Preskúmať možnosti zlepšenia vyhľadávania pomocou promptingu.\n\nÚlohy:\n\n- Vyberte vhodný model pre pre základ. me5 majú pomerne malý kontext.\n- Natrénujte a vyhodnotte slovenský vektorový model pomocou dodaného skriptu.\n- Zistite, ako sa trénujú vektorové modely s podporou promptu a napíšte o tom krátku správu. Aké metódy existujú?\n\nZásobník úloh:\n\n- Natrénujte vektorový model s podporou promptu.\n- Pozrite si https://graphrag.com/\n- Pozrite si https://github.com/topoteretes/cognee\n\nNápady na tému:\n\n- Augmentácia dát - generovanie umelých trénovacích množín.\n- Vyskúšať nové LLM na generovanie trénovacích dát.\n- Použiť existujúce dáta - zlepšiť ich pomocou LLM alebo generovať podobné dáta.\n- Generovať", + "text_length": 1198 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-4", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "ntácia dát - generovanie umelých trénovacích množín.\n- Vyskúšať nové LLM na generovanie trénovacích dát.\n- Použiť existujúce dáta - zlepšiť ich pomocou LLM alebo generovať podobné dáta.\n- Generovať a overovať dáta pre vyhodnotenie modelov.\n- Vyvmyslieť metódy pre vyhodnotenie \"kvality dát\" - ich \"užitočnosť\" pre trénovanie.\n- Preskúmať metídy \"učiteľ - žiak.\" Ako môže jeden model pomôcť pri trénovaní iného modelu.\n- Vytvoriť novú doménovo orientovanú QA množinu. Vytvoriť Instruct množinu.\n- Vytvoriť slovenský doménovo orientovaný model. \n\nStretnutie 3.10.\n\nÚlohy:\n\n- Oboznámiť sa s novými metódami generovania trénovacích množín. Prečítejte si nové články na google scholar a urobte si poznámky. \n- Kľúčové slovíčka: data augmentation, distillation, question generation, \n- Pozrite si https://github.com/nlp-uoregon/Okapi\n- Vyskúšať nové LLM pre generovanie, napr. pomocou ollama. gpt-oss, \n- Pozrite si https://huggingface.co/docs/trl/en/index. Oboznámte sa s metódami GPO a SFT. Ako dokáže pomôcť existujúci model pri dotrénovaní nového modelu.", + "text_length": 1056 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-5", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "# Bakalárska práca 2025\n\nAutomatické generovanie otázok zo zadaného textu\n\nCieľ je vylepšiť slovenský model pre generovanie vektrovej reprezentácie. vylepšiť proces RAG: Generovanie jazyka s pomocou vyhľadávania - Retrieval augmented generation\n\nZadanie BP:\n\n1. Vypracujte prehľad systémov pre generovanie otázok a spôsobov ich vyhodnotenia.\n2. Vyberte vhodný systém pre generovanie otázok a vytvorte umelú množinu otázok a odpovedí.\n3. S pomocou tejto množiny natrénujte a vyhodnoťte systém pre generovanie odpovede na zadanú otázku.\n4. Identifikujte jeho slabé miesta a navrhnite zlepšenia. \n\nNové nápady:\n\n- Vytvorte systém pre generovanie otázok o zadanom texte.\n- Vytvorte umelo generovanú množinu otázok a odpovedí o liekoch.\n- Pomocou umelej množiny zlepšite existujúci systém pre otázky a odpovede o liekoch.\n\nAko na to:\n\n- Natrénujte generatívny model pre generovanie otázok. Použite existujúci skript a množinu SKQUAD.\n- 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 odpovedí ku", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-6", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "už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 odpovedí ku odsekom. \n- Výstupom by mala byť umelo generovaná databáza otázok a odpovedí.\n \nStretnutie:\n\nStav:\n\n- Urobené porovnanie vplyvu agmentovaných dát na question answering.\n- Rozpísaná práca\n\nÚlohy:\n\n- Pokračujte v písaní. Doplne text o definícii úlohy, question generation, podrobnosti o experimnentoch, podrobnosti o procese generovania množiny QA.\n- Najnovšie skripty dajte na GIT.\n\nZásobník úloh:\n\n- Doplniť experimenty s inými modelmi (Slovak Mistral).\n\nStretnutie 7.3.2025\n\nStav:\n\n- Vytvorený skkript pre prípravu nového generovaného korpusu. Obsahuje kontext, otázku aj odpoveď. Zatiaľ nevie vyznačiť odpoveĎ v kontexte.\n- Vygenerované korpusy otázok a odpovedí pre SKWIKI a prokuratúru.\n- Natrénovaný model pre QA na základe SKWIKI generovaných dát - model slovak T5 base. Augmntovaná množina má zatiaľ 30k otázok.\n- Vyzerá to tak, že model s augmentovanými dátami je o dosť lepší. Je to naozaj dobre?\n\nÚlohy:\n\n- Overiť či generované množina nie je príliš podobná overovacej.\n- Pokračujte v písa", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-7", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "zatiaľ 30k otázok.\n- Vyzerá to tak, že model s augmentovanými dátami je o dosť lepší. Je to naozaj dobre?\n\nÚlohy:\n\n- Overiť či generované množina nie je príliš podobná overovacej.\n- Pokračujte v písaní práce , opíšte experimenty, vypracujte tabuľky.\n- Pozrite sa na článok O. Megela: Fine-Tuning and Evaluation of Question Generation for Slovak Language\n- Pre porovnanie vyhodnotte modely sami (slovak-t5-base), dotrénujute na SKQUAD-train. Vyhodnocujete stále na test časti. POrovnajte s viacerými augmentovanými dátami. V niekroých testoch primiešajte aj skquad train. \n\nZásobník úloh:\n\n- Publikovať na konferencii.\n\nStretnutie 25.2.\n\nStav:\n\n- Vyskúšané rôzne metódy porovnania pomocou slovných vektorov (bge, me5, spacy word vectors).\n- https://git.kemt.fei.tuke.sk/vk202uf/bp2024/src/branch/main/stretnutie.md\n- Nová verzia BP.\n\nÚlohy:\n\n- Pozrite si článok https://scholar.nycu.edu.tw/en/publications/fine-tuning-and-evaluation-of-question-generation-for-slovak-lang\n- Napíšte prehľad metód generovania otázok.\n- Pripravte skript na generovanie QA korpusu zo zadaných dát a modelov.\n- Pripravte viacero automaticky generovaných korpusov otázok a odpovedí. Formát vygenerovaných dát by mal byť ro", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-8", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "rovania otázok.\n- Pripravte skript na generovanie QA korpusu zo zadaných dát a modelov.\n- Pripravte viacero automaticky generovaných korpusov otázok a odpovedí. Formát vygenerovaných dát by mal byť rovnaký ako SK QUAD - jsonl.\n- Odovzdané dáta wikpedia, prokuratura, adc.\n- Skúste natrénovať nové modely pre otázky a odpovede z týchto dát.\n- Píšte prácu, skripty dajte na git.\n\nStretnutie 21.2.2025:\n\nStav:\n\n- Najprv sa generuje odpoveď. Na základe odpovede a kontextu sa generuje otázka pomocou SlovakT5. Je potrebné vyradiť \"zlé\" trojice.\n\n Úlohy:\n\n - Zoberte model TUKE-DeutscheTelekom/slovakbert-skquad . Na zadanú otázku a kontext zistite odpoveď. Porovnajte ju s \"vygenerovanou odpoveďou\". Ako bude f1 menšie ako \"threshold\", vyradíte trojicu. Porovnanie sa dá urobiť aj cez vektoropvý model https://github.com/hladek/spacy-skmodel. Alebo word2vec, alebo gensim.\n\n Zásobník úloh:\n\n - NIečo podobné sa dá urobiť pomocou vektorového (embedding) modelu, napr. BGE alebo me5. Vypočítate vektory pre otázku a odpoveď, \"cosínusovú vzdialenosť\" medzi otázkou a odpoveďou.\n \n\nStretnutie 13.2.2025\n\nStav:\n\n- Práca na texte. \n- Vyskúšané iné hyperparametre trénovania. Zväčšená veľkosť generovanej otázk", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-9", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "otázku a odpoveď, \"cosínusovú vzdialenosť\" medzi otázkou a odpoveďou.\n \n\nStretnutie 13.2.2025\n\nStav:\n\n- Práca na texte. \n- Vyskúšané iné hyperparametre trénovania. Zväčšená veľkosť generovanej otázky.\n- \"Chýbajúce odpovede\" boli vyhodené. \n\nÚlohy:\n\n- Pokračujte v písaní.\n- Vytvorte umelo generovanú množinu otázok a odpovedí z wikipédie alebo z adc.\n- Natrénujte a vyhodnotte model na umelo vytvorenej množine a úlohe zodpovedania otázky. Môžete použiť aj SlovakBERT.\n\nStretnutie 22.11.2024\n\nStav:\n\n- Napísané o mt5 a umt5 v BP.\n- Dotrénované 4 modely, slovakt5-base, slavict5-base, mt5-base, umt5-base. \n- Urobené dotrénovanie na generovanie otázok. \n- Napísaná tabuľka s výsledkami experimentov. Metriky BLEU a ROGUE.\n- Napísaný skript, skript je na gite. \n\nÚlohy:\n\n- Pokračujte v písaní práce. Napíšte aj o metrikách vyhodnotenia.\n- Vyhľadajte a stručne opíšte vedecké články o generovaní otázok. Na vyhľadanie použite Google scholar.\n- Pridajte slovak t5 base model do experimentov.\n- Dotrénujte Slovak Falcon. Tam bude treba iný skript.\n\nZásobník úloh:\n\n- Vymyslieť systém - natrénovať meurónku na návrh \"odpovede\".\n- Vyskúšať generovať otázky bez zadanej odpovede. Odpoveď generujte pomocou", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-10", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "jte Slovak Falcon. Tam bude treba iný skript.\n\nZásobník úloh:\n\n- Vymyslieť systém - natrénovať meurónku na návrh \"odpovede\".\n- Vyskúšať generovať otázky bez zadanej odpovede. Odpoveď generujte pomocou modelu. Model pre automatické odpovede už je na HF Hube: slovakbert-skquad.\n- Vyradiť také otázky, na ktoré systém nevie dopovedať.\n- Skúsiť generovať otázky z medicínskeho textu.\n\nStretnutie 18.10.2024\n\nStav:\n\n- Natrénovaný model SlovakT5 Base. Skripty sú na [GITe](https://git.kemt.fei.tuke.sk/vk202uf/bp2024). Trénovanie funguje.\n- Naštudované články o T5 a Falcon, napísané poznámky.\n\nÚlohy:\n\n- Doplnte vyhodnotenie modelu pomocu BLEU Skore. Ako testovaciu množinu použite testovaciu časť SkQUAD.\n- 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.\n\nZásobník úloh:\n\n- 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).\n- Ako bude model dobr", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-11", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "al 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).\n- Ako bude model dobrý, tak ho uverejníme na repoztári Huggingface Hub.\n- Ak bude práca dobrá, skúsime prepracovať a urobiť článok na konferencii. \n- V spolupráci Y. Leonov urobiť vyhodnotenie aj v medicínskej doméne.\n- Skúsíme poprosiť doktorov o názor. \n\nStretnutie 27.9.2024\n\nStav:\n\n- Prezereté repozitáre a články. Napísané poznámky.\n- Vytvorený prázdny git repozitár.\n\nÚlohy:\n\n- Zistite ako sa dotrénujú generatívne modely HuggingFace. Zistite čo je to Few Shot learning a *urobte si poznámky*.\n- 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.\n- 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.\n- Oboznámte sa s Hugggingface API a OpenAI API. Na generovanie môžete použiť aj toto api.\n- Skripty na dotrénovanie dávajte do GIT repozitára.\n\nZásobník úloh:\n\n- Zoberte databázu liekov a generujte otázky o liekoch - od Ing", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-12", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "ngface API a OpenAI API. Na generovanie môžete použiť aj toto api.\n- Skripty na dotrénovanie dávajte do GIT repozitára.\n\nZásobník úloh:\n\n- Zoberte databázu liekov a generujte otázky o liekoch - od Ing. K. Sopkovič, alebo O. Poiasnik. \n- Možno bude treba použiť ChatGPT API a príklady z databázy SK QUAD.\n- Možno bude treba dotrénovať Slovak Mistral 7B na inštrukcie.\n\nStaré Úlohy:\n\n- 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.\n- Pozrite si repozitár https://github.com/patil-suraj/question_generation\n- Pozrite si repozitár https://github.com/gauthierdmn/question_generation\n- Pozrite si článok https://telrp.springeropen.com/articles/10.1186/s41039-021-00151-1\n- Oboznámte sa s DP Ondrej Megela a článok https://aclanthology.org/2023.rocling-1.20.pdf\n- Oboznámte sa s knižnicou HF transformers - vyskúšajte si nejaký tutoriál.\n- Zistite, ako funguje model T5.\n- Pozrite si skript `generate/run_qg.py` v [repo](https://git.kemt.fei.tuke.sk/dano/slovakretrieval) a vyskúšajte ho. \n- Čítajte súvisiace odborné články a robte si poznámky.\n- Urobte si repozitár na git.kemt a dávajte tam Vaše skripty. \n- Na", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-13", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "[repo](https://git.kemt.fei.tuke.sk/dano/slovakretrieval) a vyskúšajte ho. \n- Čítajte súvisiace odborné články a robte si poznámky.\n- Urobte si repozitár na git.kemt a dávajte tam Vaše skripty. \n- Na experimenty použite https://colab.research.google.com/\n\nStaré Nápady:\n- Možno pomocou vytvorenia-prekladu vlastnej trénovacej databázy.\n- alebo pomocou nekontrolovaného učenia, reps. augmentácie alebo generovania.\n- Alebo zber trénovacích dát z webového korpusu.\n- Sústrediť sa na vektrovú reprezentáciu dokumentov?\n\nÚlohy na semester - \"nepovinné, oficiálne sa to začne na zimný semester 2024\"\n\n- Zistite čo je to Retrieval Augmented Generation a napíšte o tom správu.\n- Naučte sa základy jazyka Python.\n- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.\n\nStretnutie 9.5.24\n\nStav:\n\n- Naštudované Deep dive intoi Python a dl2ai, niečo o RAG.\n\nÚlohy:\n\n- 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). \n- Urobe si poznámky.\n\nStretnutie 22.3.\n\nÚlohy:\n\n- Nainštalujte si prostre", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/valerii_kutsenko/README.md::chunk-14", + "document_path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "príklady pre slovenské texty a so [slovenským modelom](https://huggingface.co/TUKE-DeutscheTelekom/slovakbert-skquad-mnlr). \n- Urobe si poznámky.\n\nStretnutie 22.3.\n\nÚlohy:\n\n- Nainštalujte si prostredie Anaconda. Prejdite si knihu Dive Deep into Python 3.\n- Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.\n- Zistite ako funguje RAG. Zistite ako funguje ChatGPT. Zistite ako funguje vyhľadávanie pomocou SentenceTranformers. Napíšte o tom poznámky.\n- Skúste si tento tutoriál o [LangChain](https://python.langchain.com/docs/get_started/quickstart)\n \nZásobník úloh:\n\n- Nainštalujte si PrivateGPT.", + "text_length": 606 + }, + { + "chunk_id": "pages/students/2022/vladyslav_yanchenko/README.md::chunk-0", + "document_path": "pages/students/2022/vladyslav_yanchenko/README.md", + "title": "Vladyslav Yanchenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/vladyslav_yanchenko/README.md::chunk-1", + "document_path": "pages/students/2022/vladyslav_yanchenko/README.md", + "title": "Vladyslav Yanchenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2025\n\nNázov: \n\nKontinuálne nasadenie a testovanie aplikácie v klaudovom prostredí. \n\nÚlohy BP:\n\n1. Vypracujte písomný prehľad verejných klaudových služieb a softvérových prosriedkov pre podporu procesu a nasadenia aplikácie.\n2. Vytvorte a opíšte webovú aplikáciu zloženú z viacerých komponentov a upravte ju do podoby vhodnej na nasadenie v klaude. K aplikácii vytvorte automatické testy.\n3. Vytvorte a opíšte proces kontinuálneho nasadenia a integrácie zmien do Vašej aplikácie pomocou vybraných klaudových služieb. \n4. Navrhnite zlepšenia Vášho procesu tak, aby bolo možné aplikáciu vylepšovať a udržiavať v prostredí softvérovej firmy.\n\nVedúci: doc. Matúš Pleva PhD.\n\nNápad:\n\n- Vytvoriť webovú aplikáciu s použitím Spring Boot, využitie klaudovej databázy Azure a klaudového úložiska. realizovať JWT, využiť CI CD.\n\nStretnutie 21.3.2025\n\nStav:\n\n- Práca na obsahu BP. Stav zatiaľ nie je uspokojivý.\n- Pridaný Ingress do aplikácie.\n- Pridaný GMETER do monitorovania klastra.\n\nÚlohy:\n\n- Zlepšite text práce. Postupujte od všeobecného ku konkrétnemu. Spojte súvisiace časti. Definujte úlohu, vysvetlite základné pojmy. Predstavte Vaše riešenie. V experimentoch vyhodnotte Vaše ri", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/vladyslav_yanchenko/README.md::chunk-2", + "document_path": "pages/students/2022/vladyslav_yanchenko/README.md", + "title": "Vladyslav Yanchenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ohy:\n\n- Zlepšite text práce. Postupujte od všeobecného ku konkrétnemu. Spojte súvisiace časti. Definujte úlohu, vysvetlite základné pojmy. Predstavte Vaše riešenie. V experimentoch vyhodnotte Vaše riešenie a napíšte záver - nápady na zlepšenie.\n- Použite generatívny model na zlepšenie gramaticky a štylistiky.\n- Dbajte aby práca spĺňala zadanie.\n\nStretnutie 27.2.2025\n\nStav:\n\n- Grafana a Prometheus inštalované cez K8s\n- Práca na písomnej časti.\n\nÚlohy:\n\n- Zjednotiť zápis slova klaud\n- Opraviť preklepy\n- Opraviť šablónu\n\nStretnutie 31.1.2025\n\nStav:\n\n- Zmena funkcionality\n- Problémy pri nasadení - pomocou GitHUb Action, containers. Na kubernetes klaster, lokálny.\n- Problém je s vlastnými K8s skriptami.\n- Práca na písomnej časti.\n\nÚlohy:\n\n- Pracujte na písomnej časti.\n- Opravte K8S skripty.\n\nStretnutie 23.1.\n\nStav:\n\n- Kód na zmenu hesla, auth JWT token.\n- komunikácia medzi frontendom a backendom cez API, ath. cez JWT.\n\nStretnutie 13.12.2024\n\nStav:\n\n- CI-CD GIT HUB pipeline pre backend aj frontend.\n- Dockerfile je, zatiaľ to nefunguje s Azure Cloud, funguje lokalne. Registry zatiaľ nefunguje.\n- Auth cez JWT Token do LocalStorage.\n- Vyskúšaný Docker Compose, zatiaľ nefunguje na lokálny k", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/vladyslav_yanchenko/README.md::chunk-3", + "document_path": "pages/students/2022/vladyslav_yanchenko/README.md", + "title": "Vladyslav Yanchenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "rontend.\n- Dockerfile je, zatiaľ to nefunguje s Azure Cloud, funguje lokalne. Registry zatiaľ nefunguje.\n- Auth cez JWT Token do LocalStorage.\n- Vyskúšaný Docker Compose, zatiaľ nefunguje na lokálny klaster.\n\nÚlohy:\n\n- Zistiť čo je Registry a ako to funguje.\n\nStretnutie 8.11.2024\n\nStav:\n\n- Backend SpringBoot, frontend React-Next.js.\n- Urobená základná autentifikácia pomocou HTTP Basic Auth.\n- Vyskúšaná kontajnerizácia.\n- Kódy sú na GitHUBe. https://github.com/MrSid333/bankapp.git\n- Aktivované Azure a Azure PostgreSQL aj úložisko. Zatiaľ nie je prepojené. úložisko.\n- Naštudované GITHUB CI-CD.\n- Nainštalované minikube.\n- Práca na textoch.\n\nÚlohy:\n\n- Pokračujte v otvorených úlohách. \n- Vytvorte nasadenie aplikácie pomocou Kubernetes.\n- Napíšte automatické testy a zostavte Github CI-CD pipeline. \n- Zistite aké obmedzenia má GitHUB Pipeline.\n- Píšte BP pošlite mi draft.\n\nZásobník úloh:\n\n- 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.\n- 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 konkre", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/vladyslav_yanchenko/README.md::chunk-4", + "document_path": "pages/students/2022/vladyslav_yanchenko/README.md", + "title": "Vladyslav Yanchenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "ste nezverejnili Vaše prístupové údaje.\n- 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.\n- Zostavte pipeline pomocou iného nástroja (Azure, Jenkins) a porovnajte ich.\n\nStretnutie 3.10.2024\n\nÚlohy:\n\n-\t[x] Preštudujte si platformu Kubernetes. Napíšte čo je to. Napíšte čo je to kontajnerizácia.\n-\t[x] Nainštalujte si microk8s. Aktivujte si MS Azure a naučte sa to používať.\n-\t[x] Vytvorte webovú aplikáciu, kotrá sa bude zkladať z viacerých mikroslužieb a bude využívať klaudové úložisko.\n-\tNapíš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.\n-\tKu aplikácii navrhnite niekoľko automatických testov.\n-\tZostavte CI CD Pipeline pre automatické zostavenie a testovanie aplikácie", + "text_length": 937 + }, + { + "chunk_id": "pages/students/2022/yevhenii_leonov/README.md::chunk-0", + "document_path": "pages/students/2022/yevhenii_leonov/README.md", + "title": "Yevhenii Leonov", + "categories": [ + "vp2024", + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2022", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2022/yevhenii_leonov/README.md::chunk-1", + "document_path": "pages/students/2022/yevhenii_leonov/README.md", + "title": "Yevhenii Leonov", + "categories": [ + "vp2024", + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2025\n\nTéma:\n\nVyhodnotenie generovania slovenského jazyka s pomocou vyhľadávania\n\nPredbežné zadanie:\n\n1. Vypracujte prehľad metód a modelov generovania jazyka s pomocou vyhľadávania.\n2. Vypracujte prehľad metód ich vyhodnotenia. \n3. Vyskúšajte a vyhodnoťte vybranú metódu generovania jazyka s pomocou vyhľadávania.\n4. Navrhnite zlepšenia pre vybranú metódu generovania odpovede. \n\nNávrh na tému:\n\n- Vyhodnotenie systémov RAG\n\nSpolupráca Oleh Poiasnik\n\nStretnutie 4.2.2025\n\nStav:\n\n- Vyriešené Závislosti projektu - cez Anaconda\n- Answer relevancy, využitý OpenAI token\n- Pripravené testovacie otázky a prepojené s RAG systémom Poiasnik.\n- Písomná časť - nie je pokrok.\n\nÚlohy:\n\n- Pracujte na písomnej časti.\n- Rozšírte testovaciu množinu.\n- Opíšte testovací scenár. Výsledky zapíšte do tabuľky.\n\nStav 8.11.2024:\n\n- Práca na úlohách z minulého stretnutia, vyskúšaný RAGAS. \n- Nainštalovaný a vyskúšaný systém od p. Poiasnika.\n\nÚlohy:\n\n- Pripravte \"vzorovú\" množinu na testovanie.\n- Pripravte testovaciu množinu. Množina by sa mala skladať z čo najväčšieho množstva príkladov. \n- Vyskúšajte testovaciu množinu pomocou RAGAS a modelov ktoré používa p. Poiasnik. Vyhodnotte modely pomoc", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2022/yevhenii_leonov/README.md::chunk-2", + "document_path": "pages/students/2022/yevhenii_leonov/README.md", + "title": "Yevhenii Leonov", + "categories": [ + "vp2024", + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ripravte testovaciu množinu. Množina by sa mala skladať z čo najväčšieho množstva príkladov. \n- Vyskúšajte testovaciu množinu pomocou RAGAS a modelov ktoré používa p. Poiasnik. Vyhodnotte modely pomocou množiny.\n- Kódy dávajte na GIT (napr. branch alebo adresár p Poiasnik GIT).\n- Pokračujte v písomných úlohách. Hľadajte články cez scholar a píšte si poznámky. Do BP.\n\nZásobník úloh:\n\n- Pripravte (nakódujte, odkopírovať) postup vyhľadávania podobný ako \"reálny systém\", ale využíval RAGAS.\n- Pripravte testovacie API pre RAG systém. Bude to funkcia alebo URL cez ktorú sa bude dať systém testovať. \n- Pomocou metriky a množiny vyhodnotte reálny systém.\n\nStretnutie 11.10.2024:\n\nStav:\n\n- Urobené poznámky na tému RAG\n- Nainštalované PrivateGPT, Ollama na Windowse\n\nÚlohy:\n\n- [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.\n- [x] Naštudujte dokumentáciu a články https://docs.ragas.io/en/stable/index.html\n- [ ] 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. \n- [-] Zistite a opíšte", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2022/yevhenii_leonov/README.md::chunk-3", + "document_path": "pages/students/2022/yevhenii_leonov/README.md", + "title": "Yevhenii Leonov", + "categories": [ + "vp2024", + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "ndex.html\n- [ ] 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. \n- [-] Zistite a opíšte aké metriky sa používajú. Ku každej metrike je potrebný odkaz na článok. \n\nZásobník úloh:\n\n- [-] 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.\n- [ ] Napíšte príklady alebo použite generatívny model", + "text_length": 534 + }, + { + "chunk_id": "pages/students/2022/yevhenii_leonov/README.md::chunk-4", + "document_path": "pages/students/2022/yevhenii_leonov/README.md", + "title": "Yevhenii Leonov", + "categories": [ + "vp2024", + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "# Vedecký projekt 2024\n\nRAG: Generovanie jazyka s pomocou vyhľadávania -Retrieval augmented generation\n\nÚlohy na semester:\n\n- Zistite čo je to Retrieval Augmented Generation a napíšte o tom správu.\n- Naučte sa základy jazyka Python.\n- Podrobne si prejdite minimálne dva tutoriály.\n- Napíšte krátky report na 2 strany kde napíšete čo ste urobili a čo ste sa dozvedeli.\n- Nainštalujte si a vyskúšajte softvér PrivateGPT\n\nStretnutie 12.4.\n\nStav:\n\n- Učenie sa Pythonu, nainštalovaná Anaconda.\n- Urobené stručné poznámky o RAG o BERT a o GPT.\n\nÚlohy:\n\n- Pokračujte v otvorených úlohách.\n- Vyskúšajte systém OLLAMA. Keď to nejde na Windows, vyskúšajte Ubuntu WSL(2). \n- Pracujte na \"článku\".\n\nStretnutie 22.3.\n\nÚlohy:\n\n- [-] Nainštalujte si prostredie Anaconda. Prejdite si knihu Dive Deep into Python 3.\n- [-] 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.\n- [-] Prečítajte si knihu https://d2l.ai/ a napíšte si poznámky.", + "text_length": 1041 + }, + { + "chunk_id": "pages/students/2023/denis_le_thanh/README.md::chunk-0", + "document_path": "pages/students/2023/denis_le_thanh/README.md", + "title": "Denis Le Thanh", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2023\n\nštudent KPI\n\nvedúci Ing. Tomáš Kormaník\n\nkonzultácie: Ing. Kristián Sopkovič", + "text_length": 103 + }, + { + "chunk_id": "pages/students/2023/denis_le_thanh/README.md::chunk-1", + "document_path": "pages/students/2023/denis_le_thanh/README.md", + "title": "Denis Le Thanh", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2026\n\nTéma:\n\nTrénovanie jazykového modelu pre spracovanie inštrukcií v prirodzenom jazyku\n\nCiele:\n\n- Skúsiť dotrénovať slovenský generatívny model (slovak-mistral-7b) pre inštrukcie.\n\nStretnutie 5.12. (K. Sopkovič)\n\nStav:\n\n- Analyticka praca cca 12 stran \n- Su potrebne vyhotiv zmeny - tema musi suvisiet so studijnum odborom - kyberbezpecnost (potrebna diskusia s D.Hladek). - Navrhujeme kontrolu obsahu instrukcii? Filter? Hate Speech model do pipeline? k dispozicii je fine tunning script ktory treba este doladit\n\nÚlohy:\n\n- Skuste upravit poskytnuty script p.doc. Hladekom aby spojazdnil dotrenovanie pomocou QLORA na datasete https://huggingface.co/datasets/saillab/alpaca-slovak-cleaned/\n- Pre hlbsie experimenty bude treba vubavit pristup na server (zatial je vysoko doporucena free verzia na google collab) - odporucam video z youtube ako tutorial pre pracu v collabe - popripadne kontaktovat veduceho prace Ing. Kormanika pre vybavenie pristupu na DGX / podobny server vzhaldom na vypoctovu narocnost (tutorial ako pouzivat server bude poskytnuty konzultantom Sopkovicom)\n- Urobit prieskum moznych verejnych datesetov podobnym alpace, ktore by sa mohli pouzit\n\nStretnutie", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2023/denis_le_thanh/README.md::chunk-2", + "document_path": "pages/students/2023/denis_le_thanh/README.md", + "title": "Denis Le Thanh", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "aldom na vypoctovu narocnost (tutorial ako pouzivat server bude poskytnuty konzultantom Sopkovicom)\n- Urobit prieskum moznych verejnych datesetov podobnym alpace, ktore by sa mohli pouzit\n\nStretnutie 3.10.2025\n\nStav:\n\n- Naštudované LLM, transformers, anaconda, Okapi, open instruct, ollama. \n\nÚlohy:\n\n- Naštudovať a vyskúšať PEFT-QLORA.\n- Vyskúšajte si skript pre dotrénovanie Slovak Mistral.(poslal som cez Teams)\n- Oboznámte sa s Huggingface TRL.\n- Oboznámte sa s knižnicou \"unsloth\".\n- Oboznámte sa s https://github.com/hiyouga/LLaMA-Factory\n- Pracujte na teoretickej časti: opíšte základné pojmy, metódy a dátové množiny. Používajte google scholar a bibliografické odkazy.\n- Najprv pracujte s domácou GPU, ak nebude stačiť pracujte s Google Coolab, ak nebude stačiť požiadajte konzultanta.\n\nZásobník úloh:\n\n- Dotrénujte a vyhodnotte Slovak Mistral.\n\nStretnutie 26.2.\n\nÚlohy:\n\n- Oboznámte sa s problematikou veľkých jazykových modelov. Towards Data Science\n- Naučte sa Python lepšie. Nainštalujte si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Vyskúšajte si framework HF Transformers.\n- Vyskúšajte si veľký jazykový model, napr. cez systém OLLAMA.\n- Oboznámte sa", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/denis_le_thanh/README.md::chunk-3", + "document_path": "pages/students/2023/denis_le_thanh/README.md", + "title": "Denis Le Thanh", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Vyskúšajte si framework HF Transformers.\n- Vyskúšajte si veľký jazykový model, napr. cez systém OLLAMA.\n- Oboznámte sa s repozitárom https://github.com/allenai/open-instruct, prečítajte si články\n- Oboznámte sa s repozitárom https://github.com/nlp-uoregon/Okapi, prečítajte si články\n\nZásobník úloh:\n\n- Strojovo preložte vybranú množinu inštrukcií a použite ju v trénovaní.\n- Vyhodnotte výsledný model a porovnajte ho.", + "text_length": 500 + }, + { + "chunk_id": "pages/students/2023/maksym_zatirka/README.md::chunk-0", + "document_path": "pages/students/2023/maksym_zatirka/README.md", + "title": "Maksym Zatirka", + "categories": [ + "bp2026" + ], + "tags": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2023\n\nštudent KM", + "text_length": 37 + }, + { + "chunk_id": "pages/students/2023/maksym_zatirka/README.md::chunk-1", + "document_path": "pages/students/2023/maksym_zatirka/README.md", + "title": "Maksym Zatirka", + "categories": [ + "bp2026" + ], + "tags": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2026\n\nTéma:\n\nGrafová databáza pre podporu generovania slovenského jazyka\n\nZadanie:\n\n1. Vypracujte prehľad metód podpory generovania prirodzeného jazyka pomocou znalostných grafov.\n2. Zostavte znalostný graf pre slovenské právo a vložte ho do vybranej grafovej databázy. \n3. Navrhnite a vytvorte inteligentného agenta, ktorý využije vytvorený znalostný graf.\n4. Vyhodnoťte agenta, identifikujte jeho slabé miesta a navrhnite zlepšenia pre prácu so znalostným grafom.\n\nCiele:\n\nVytvorte databázu pre vyhľadávanie v právnych predpisoch s využitím grafovej informácie.\n\nStretnutie 26.5.2026\n\nStav:\n\n- Agent aj parser funguje.\n- Webová aplikácia je nasadená cez streamlit.\n- grafová databáza neo4J cez neo4J aura. \n- najprv ide parsovanie štruktúry. V druhej etape ide sémantické parsovanie - langchain a llamaindex. \n- agent má viacero nástrojov. \n\n```\nsearch_concept, # vyhľadávanie pojmov s provenienciou\ncypher_lookup, # fallback pre pokročilé Cypher dotazy\nfulltext_search, # fulltextové vyhľadávanie v texte paragrafov\nget_provision, # úplný text jedného paragrafu\nlist_acts, # zoznam všetkých zákonov\ngraph_traversal, # sémantické okolie konkrétneho z", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/maksym_zatirka/README.md::chunk-2", + "document_path": "pages/students/2023/maksym_zatirka/README.md", + "title": "Maksym Zatirka", + "categories": [ + "bp2026" + ], + "tags": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "# fulltextové vyhľadávanie v texte paragrafov\nget_provision, # úplný text jedného paragrafu\nlist_acts, # zoznam všetkých zákonov\ngraph_traversal, # sémantické okolie konkrétneho zákona\ndefines_concepts, # pojmy definované v zákone\nfind_amendments, # novelizácie a zrušenia zákonov\ngraph_stats, # štatistika grafu\ncompare_acts, # porovnanie dvoch zákonov\nact_provisions, # štruktúra zákona (paragrafy, články atď.)\n```\n\nPoužíva školský LLM model120-fast.\n\nStretnutie 6.3.\n\n- Parser vie rozparsovať zákony na paragrafy a odseky, vie verzie zákonov.\n- Máme jednoduchého agenta, ktorý vie pracovať s grafovou databázou.\n\nÚlohy:\n\n- Pripravte vzorovú datababázy zákonov - nemusia byť všetky a vložte ju do grafovej databázy..\n- Pripravte viacero testovacích scenárov pre vyhľadávanie v zákonoch. Scenár by mal byť vo forme otázky. \n- Agent by mal podľa otázky vyhľadať relevatné a súvisiace paragrafy v databáze a vygenerovať odpoveď podľa paragrafov.\n- Zobrazte aj zoznam zdrojov - relevantnej časti znalostného grafu.\n- Kódy dajte na GIT. Mal by tam byť parser. Aj agent. Aj stručná dokumentácia.\n- Pracujte na teoretickej časti práce. Napíšte o metódach Grap", + "text_length": 1196 + }, + { + "chunk_id": "pages/students/2023/maksym_zatirka/README.md::chunk-3", + "document_path": "pages/students/2023/maksym_zatirka/README.md", + "title": "Maksym Zatirka", + "categories": [ + "bp2026" + ], + "tags": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "aj zoznam zdrojov - relevantnej časti znalostného grafu.\n- Kódy dajte na GIT. Mal by tam byť parser. Aj agent. Aj stručná dokumentácia.\n- Pracujte na teoretickej časti práce. Napíšte o metódach GraphRAG. Používajte články z Google Scholar. Opíšte metódu zostavenia znalostného grafu, grafovú databázu aj architektúru agenta. Opíšte výsledky experimentov v testovacích scenároch.\n\nZásobník úloh:\n\n- Pripravte pekné webové rozhranie. \n- Pripravte deployment Vašej aplikácie - dockerfile a docker compose.\n\nStretnutie 4.2.\n\n- Sú stiahnuté predpisy za rok 2024.\n- Hotový skript na transformáciu HTML do grafovej databázy.\n- Súbory sú na https://git.kpi.fei.tuke.sk/kpi-zp/2026/bp.maksym.zatirka/workspace/grafova-databaza-pre-podporu-generovania-slovenskeho-jazyka\n\nÚlohy:\n\n- Použite model, prístupný cez OpenAI completions API.\n- Agent by mal vedieť vyhľadávať v zákonoch aj v súvisiacich predpisoch. Ku otázke zistite súvisiace právne predpisy z grafovej databázy. Porovnajte to s odpoveďou modelu.\n- Vytvorte aj jednoduché rozhranie ku agentovi. Rozhranie sa da riešiť ako modul do openwebui. \n- Napíšte niekoľko vzorových scenárov.\n- Zatiaľ použijete svoju databázu neo4j, neskôr prirobím databazu", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2023/maksym_zatirka/README.md::chunk-4", + "document_path": "pages/students/2023/maksym_zatirka/README.md", + "title": "Maksym Zatirka", + "categories": [ + "bp2026" + ], + "tags": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "- Vytvorte aj jednoduché rozhranie ku agentovi. Rozhranie sa da riešiť ako modul do openwebui. \n- Napíšte niekoľko vzorových scenárov.\n- Zatiaľ použijete svoju databázu neo4j, neskôr prirobím databazu ku ui.tukekemt.xyz\n- Pokračujte v práci na texte BP - využitie znalostných grafov v LLM.\n- Rozšírte databázu pravidiel.\n\nStretnutie 7.11.\n\nStav:\n\n- Prečítané články\n- Vyskúšaná Neo4J a Python. \n- Vyskúšaný tutoriál lagchain, intro do Neo4J.\n\nÚlohy:\n\n- Pokračujte v teoretickej príprave. Pridajte písomné poznámky z článkov a tutoriálov do práce.\n- Vytvorte znalostný graf, ktorý vyjadruje slovenské právne predpisy a vložte ho do databázy. \n- Oboznámte sa s obsahom slov-lex.sk a navrhnite štruktúru znalostného grafu pre vyjadrenie vzťahov medzi právnymi predpismi. Aké entity a aké vzťahy tam existujú? Napr. zákon má číslo, má názov.\n- Vytvorte skript, ktorý spracuje HTML súbory zo slov-lex a vytvorí znalostný graf vo formáte Neo4j. Na parsovanie html možno bude stačiť BeautifulSoup.\n- Bol aktivovaný prístup na server quadro ku súborom z slov-lex.sk .\n- Skripty dávajte na GIT.\n\nZásobník úloh:\n\n- Využite znalostný graf pri RAG a vyhľadávaní. Spolupráca Matej Ščišľak.\n\nStretnutie 2.10. \n\nÚlo", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/maksym_zatirka/README.md::chunk-5", + "document_path": "pages/students/2023/maksym_zatirka/README.md", + "title": "Maksym Zatirka", + "categories": [ + "bp2026" + ], + "tags": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "ivovaný prístup na server quadro ku súborom z slov-lex.sk .\n- Skripty dávajte na GIT.\n\nZásobník úloh:\n\n- Využite znalostný graf pri RAG a vyhľadávaní. Spolupráca Matej Ščišľak.\n\nStretnutie 2.10. \n\nÚlohy:\n\n- Prejdite si tutoriál https://python.langchain.com/docs/tutorials/rag/\n- Prejdite si tutoriály https://neo4j.com/docs/getting-started/appendix/tutorials/tutorials-overview/\n- Zistite, ako vieme využiť grafy pri RAG - ako skombinovať langchain a neo4j\n- Pokračujte v štúdiu Python \n- Prečítajte si články https://arxiv.org/abs/2408.08921 a https://ieeexplore.ieee.org/abstract/document/10771030 a robte si poznámky.\n\nZásobník úloh:\n\n- Pripravte databázu znalosti zo súdnej domény pre zlepšenie vyhľadávania v rozsudkoch. \n\nPredbežné úlohy:\n\n- Naučte sa Python lepšie. Nainštalujte si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Zistite čo je to Retrieval Augmented Generation a napíšte si o tom poznámky\n- Pozrite si knižnicu [llamaindex](https://developers.llamaindex.ai/python/framework/).\n- Zistite čo je to [znalostný graf](https://en.wikipedia.org/wiki/Knowledge_graph)\n- Zistite ako funguje databáza Neo4J.\n- Zistite čo je to SparkQL.\n- Napíšte si poznám", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/maksym_zatirka/README.md::chunk-6", + "document_path": "pages/students/2023/maksym_zatirka/README.md", + "title": "Maksym Zatirka", + "categories": [ + "bp2026" + ], + "tags": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "amaindex.ai/python/framework/).\n- Zistite čo je to [znalostný graf](https://en.wikipedia.org/wiki/Knowledge_graph)\n- Zistite ako funguje databáza Neo4J.\n- Zistite čo je to SparkQL.\n- Napíšte si poznámky z vecí ktoré ste sa naučili. Využívajte odborné články, ktoré nájdete na google scholar.", + "text_length": 291 + }, + { + "chunk_id": "pages/students/2023/oleksandr_dorybohov/README.md::chunk-0", + "document_path": "pages/students/2023/oleksandr_dorybohov/README.md", + "title": "Oleksandr Dorybohov", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2023", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2023/oleksandr_dorybohov/README.md::chunk-1", + "document_path": "pages/students/2023/oleksandr_dorybohov/README.md", + "title": "Oleksandr Dorybohov", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2026\n\nhttps://git.kemt.fei.tuke.sk/od059jr/ai-lawyer-agent\n\nTéma:\n\nAutomatické odpovede na otázky v právnej oblasti\n\nCiele:\n\nVytvorte agenta pre spracovanie slovenských právnych textov \n\nPredbežné zadanie:\nZadanie:\n\n1. Vypracujte prehľad jazykových modelov s podporou slovenčiny a s možnosťou volania nástrojov. \n2. Vyberte a opíšte vhodné verejné API pre prístup k informáciám z právnej oblasti. \n3. Navrhnite a vypracujte inteligentného agenta, ktorý bude vedieť používať toto API s cieľom pomôcť pri práci s právnou agendou. \n4. Vytvorte a vyhodnoťte webové demo pre interakciu s agentom. \n\nSpolupráca:\n\n- Projekt [Právne informácie](/topics/legal).\n\nStretnutie 23.3.2026\n\nStav:\n\n- Agent funguje.\n- Text je v príprave.\n\nÚlohy:\n\n- Pracujte na texte práce. Používajte google scholar a odkazy v texte.\n- Rozšírte rozhranie pre prácu s verejným API.\n- Vytvorte MCP server pre prácu s verejným API.\n- Pripravte kódy na nasadenie pomocou Docker. Upravte konfiguráciu aby sa aplikácia dala používať s rôznymi modelmi cez OpenAI API. Môžete použiť LiteLLM.\n- Do práce opíšte rôzne scenáre použitia. Porovnajte aj viac jazykových modelov. Ako vedia iné jazykovvé modely spolupracova", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/oleksandr_dorybohov/README.md::chunk-2", + "document_path": "pages/students/2023/oleksandr_dorybohov/README.md", + "title": "Oleksandr Dorybohov", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "ácia dala používať s rôznymi modelmi cez OpenAI API. Môžete použiť LiteLLM.\n- Do práce opíšte rôzne scenáre použitia. Porovnajte aj viac jazykových modelov. Ako vedia iné jazykovvé modely spolupracovať s OpenAI Agents SDK?\n\nStretnutie 19.12.2025\n\nStav:\n\n- Urobený Dockerfile aj docker-compose, httpx namiesto requests, streamlit na chainlit \n- Zlepšený system prompt.\n\nÚlohy:\n\n- Pokračujte v písaní\n- Dajte kódy na GIT.\n- Vyskúšajte ešte raz model na mango, ak to nefunguje kontaktujte vedúceho.\n\nStretnutie 12.12.2025\n\nStav:\n\n- Nová verzia projektu je na GITe. Demo funguje lokálne s lokálnym modelom. Vie vyhľadávať v súdnych rozhodnutiach a konaniach.\n- Pridané odkazy a rozhranie na API cez SWAGGER.\n- Funguje OLLAMA- gpt-oss:20B model.\n- Pokračuje písomná časť, je problém pri kompilácii.\n- Testovacie otázky sú v PDF.\n\nÚlohy:\n\n- [x] Agent by sa mal snažiť preformulovať otázku tak, aby našiel judikatúru týkajúcu sa otázky a podľa nej dal odpoveď. Podľa toho upravte prompty.\n- [x] Priprave demo na zverejnenie. Pripravte Dockerfile a docker compose pre Vášho agenta. \n- [ ] Výskúšajte API modelu na školskom servri mango.\n- [ ] Pokračujte v písomnej práci\n- [ ] Pridajte \"testovacie\" scenáre -", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/oleksandr_dorybohov/README.md::chunk-3", + "document_path": "pages/students/2023/oleksandr_dorybohov/README.md", + "title": "Oleksandr Dorybohov", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "o na zverejnenie. Pripravte Dockerfile a docker compose pre Vášho agenta. \n- [ ] Výskúšajte API modelu na školskom servri mango.\n- [ ] Pokračujte v písomnej práci\n- [ ] Pridajte \"testovacie\" scenáre - otázky pre chatbota a očakávané odpovede. \n\nZásobník úloh:\n\n- Slovne alebo automaticky vyhodnotte správanie agenta. \n\nStretnutie 14.11.2025\n\nStav:\n\n- Śtúdium LLM, ale ešte treba písať viac.\n- Vyskúšaná OLLAMA, treba viac panäte.\n- Vyskúšané OpenAI agents, práca s streamnlit.\n- Vyskúšané Justice.sk Swager REST Api. Funguje.\n\nÚlohy:\n\n- Pokračujte v písaní práce, kódy dajte na kemt GIT.\n- Pripravte Streamlit rozhranie \n- OpenAI agents API agenta pre volanie REST API funkcií pre získanie právnych informácií.\n- Zaujíma nás: Získavanie znenia rozsudkov, občianskych konaní, správnych konaní, zmluvy, zoznam sudcov, rozvrh súdu.\n- Pripravte testovacie otázky.\n\nZásobník úloh:\n\n- Použite školský model gpt-oss-20B alebo Qwen3-72B s OpenAI Agents\n\nStretnutie 3.10.2025\n\nStav:\n\n- Štúdium Python, Anaconda, langgraph\n- Základy LLM\n\nÚlohy:\n\n- [ ] Oboznámte sa so základmi LLM. Ako pracujú najnovšie modely? Zistite čo je to LLM function calling. Použite google scholar a píšte si poznámky.\n- [x] Vyskúšajt", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/oleksandr_dorybohov/README.md::chunk-4", + "document_path": "pages/students/2023/oleksandr_dorybohov/README.md", + "title": "Oleksandr Dorybohov", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "a, langgraph\n- Základy LLM\n\nÚlohy:\n\n- [ ] Oboznámte sa so základmi LLM. Ako pracujú najnovšie modely? Zistite čo je to LLM function calling. Použite google scholar a píšte si poznámky.\n- [x] Vyskúšajte si ollama s novými modelmi. Napr. gpt-oss.\n- [x] Vyskúšajte si knižnicu openai-agents-sdk a prejdite si tutoriály.\n- [x] Treba vybrať knižnicu a model pre prácu s agentami. \n- Pozrite si https://obcan.justice.sk/pilot/api/ress-isu-service/swagger-ui/index.html a https://www.justice.gov.sk/sluzby/register-partnerov-verejneho-sektora/open-data/ Podľa týchto odkazov si vyskúšajte REST rozhranie pre prácu s verejnými súdnymi API. Napr. cez curl, alebo Python requests.\n- Zistitie, ako pracuje agent ktorý vie volať REST API.\n\nZásobník úloh:\n\n- Vytvorte agenta, ktorý bude vedieť pracovať s verejne dostupným API a pomocou neho bude vedieť pomáhať právnikom a sudcom.\n- Navrhnite WEB demo ku takémuto agentovi.\n\nStretnutie 10.4.\n\nÚlohy:\n\n- Oboznámte sa s problematikou veľkých jazykových modelov. Towards Data Science\n- Naučte sa Python lepšie. Nainštalujte si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Vyskúšajte si framework HF Transformers.\n- Vyskúšajte si", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2023/oleksandr_dorybohov/README.md::chunk-5", + "document_path": "pages/students/2023/oleksandr_dorybohov/README.md", + "title": "Oleksandr Dorybohov", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "Towards Data Science\n- Naučte sa Python lepšie. Nainštalujte si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Vyskúšajte si framework HF Transformers.\n- Vyskúšajte si veľký jazykový model.\n- Vyskúšajte si framework LangChain a LangGraph. Prejdite si základný tutoriál LangGraph.\n- Oboznámte sa so stránkou otvorenesudy.sk\n- Napíšte si poznámky z vecí ktoré ste sa naučili.\n\nZásobník úloh:\n\n- Získajte, vytvorte alebo vygenerujte databázu otázok a odpovedí z právnej oblasti.\n- Získajte a spracujte databázu právnych informácií\n- Vytvorte webovú aplikáciu pre využitie agenta pre právne informácie", + "text_length": 629 + }, + { + "chunk_id": "pages/students/2023/ronald_zalacko/README.md::chunk-0", + "document_path": "pages/students/2023/ronald_zalacko/README.md", + "title": "Ronald Zalacko", + "categories": [ + "bp2026" + ], + "tags": [ + "web" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2023\n\nVedúci: Matúš Pleva", + "text_length": 46 + }, + { + "chunk_id": "pages/students/2023/ronald_zalacko/README.md::chunk-1", + "document_path": "pages/students/2023/ronald_zalacko/README.md", + "title": "Ronald Zalacko", + "categories": [ + "bp2026" + ], + "tags": [ + "web" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2026\n\nTéma:\n\nSkórovací online systém pre robotické súťaže\n\nhttps://git.kemt.fei.tuke.sk/rz409st/scoring-system/src/branch/main/backend\n\nCiele:\n\n- Vypracujte prehľad robotických súťaží a podporného softvéru pre robotické súťaže.\n- Vyberte jeden druh robotickej sútaže a opíšte procesy ktoré tam prebiehajú.\n- Podľa vykonanej analýzy navrhnite a vytvorte aplikáciu pre podporu a manažment robotickej súťaže.\n- Aplikáciu nasaďte pomocu systému Docker a otestujte.\n- Slovne ohodnoťte aplikáciu a identifikujte miesta pre zlepšenie. Vypracujte používateľskú a systémovú príručku.\n\nStretnutie 8.12.2025\n\n- Práca na textoch podľa inštrukcií\n- Frontend React, backend Flask, DB Postgres, SQLAlchemy, Vite JS, Websocket - socket.io, JWT Token na AUTH.\n- Aplikácia funguje.\n\nÚlohy - Úprava logiky:\n\n- pridat Judge podla lokalneho miesta /KE, BA/. Judge by mal mať Organizáciu-Affiliation.\n- bez prihlasovania hracov, admin ako judge \n- judge aby bol pouzitelny z mobilu\n- bodovanie - čas pre obe timy, ku kazdemu timu pripisat casove skore, kolko to trvalo to prejst, napr. \n- v jednom kole môže byť N tímov\n- zvacsit pismo, primerane vsetko \n- admin, moznost jedneho timu iba, aj viac ako n", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/ronald_zalacko/README.md::chunk-2", + "document_path": "pages/students/2023/ronald_zalacko/README.md", + "title": "Ronald Zalacko", + "categories": [ + "bp2026" + ], + "tags": [ + "web" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "obe timy, ku kazdemu timu pripisat casove skore, kolko to trvalo to prejst, napr. \n- v jednom kole môže byť N tímov\n- zvacsit pismo, primerane vsetko \n- admin, moznost jedneho timu iba, aj viac ako n\n- 1 sutaz, viac disciplin, viac kôl, \n- line following, vyjdenie z bludiska,\n\nÚlohy:\n\n- pokračovať v písaní podľa inštrukcií. Používajte Google scholar a odkazy v texte na odborné články.\n\nÚlohy 30.10.2025:\n\n- [x] Zistite čo je to REST API. Napíšte si poznámky\n- [x] Zistite aký je proces pri návrhu webovej aplikácie. Napíšte si poznánky.\n- [x] Zistite, aké Javascript Frameworky sa používajú na tvorbu webových aplikácií.\n- [x] Oboznámte sa s technológiou Docker Compose. \n- [x] Zistite, čo je to UML modelovanie. \n- [ ] Slovne opíšte robotickú súťaž. Zostavte aktivity diagram a use case diagram pre robotickú súťaž. Akí ľudia budú interagovať s aplikáciou? Akým spôsobom. Aké pohľady budú potrebovať?\n- [x] Zostavte entitno relačný diagram pre relačnú databázu.\n- [x] Navrhnite architektúru aplikácie. Aké technológie sa použijú na Frontend a aké na Backend?\n- [x] Zistite ako sa používa Copilot.\n- [x] Študujte Javascript - \n- [x] Voliteľné: Študujte Python - prejdite si Flask tutoriál\n- [x", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2023/ronald_zalacko/README.md::chunk-3", + "document_path": "pages/students/2023/ronald_zalacko/README.md", + "title": "Ronald Zalacko", + "categories": [ + "bp2026" + ], + "tags": [ + "web" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "likácie. Aké technológie sa použijú na Frontend a aké na Backend?\n- [x] Zistite ako sa používa Copilot.\n- [x] Študujte Javascript - \n- [x] Voliteľné: Študujte Python - prejdite si Flask tutoriál\n- [x] Pozrite si https://robosteam.eu/ https://github.com/hladek/scoreboard2 https://github.com/hladek/scoreboard https://contests.nitroclubs.eu/\n\nZásobník úloh:\n\n- [x] Zdrojové kódy dajte na katedrový GIT.\n- [x] Implementujte frontent aj Backennd\n- [x] Implementujte databázu\n- [x] Vytvorte Dockerfile a docker-compose.\n\nÚlohy 11.10.2025\n\n- Urobte prehľad robotických súťaží \n- Oboznámte sa techológiami Websockets, Flask, SQLAlchemy.", + "text_length": 632 + }, + { + "chunk_id": "pages/students/2023/rostyslav_rodzhuk/README.md::chunk-0", + "document_path": "pages/students/2023/rostyslav_rodzhuk/README.md", + "title": "Rostyslav Rodzhuk", + "categories": [ + "vp2025", + "bp2026" + ], + "tags": [ + "agent", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2023", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2023/rostyslav_rodzhuk/README.md::chunk-1", + "document_path": "pages/students/2023/rostyslav_rodzhuk/README.md", + "title": "Rostyslav Rodzhuk", + "categories": [ + "vp2025", + "bp2026" + ], + "tags": [ + "agent", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2026\n\nTéma:\n\nInteligentný agent pre podporu práce špeciálneho pedagóga\n\nPredbežné zadanie:\n\n1. Vypracujte prehľad agentových systémov na báze veľkého jazykového modelu. \n2. Získajte dáta z internetu a vytvorte inteligentného agenta na pomoc špeciálnemu pedagógovi. \n3. Navrhnite a nasadte webové rozhranie pre inteligentného agenta. \n4. Navrhnite viacero scenárov interakcie s inteligentným agentom a slovne vyhodnoťte ich priebeh. \n\nhttps://github.com/RostikRd/bp2026\n\nÚlohy:\n\n- Zistite, čo robí špeciálny pedagóg.\n- Pozrite si opatrenia na https://podporneopatrenia.minedu.sk/katalog-podpornych-opatreni/ a vyberte relevantné dokumenty\n- Vytvorte inteligentného agenta, ktorý by na základe dokumentov navrhol najlepšie výchovné opatrenia.\n\nStretnutie 11.5.\n\nStav:\n\n- Dokončené texty aj program.\n\nÚlohy:\n\n- Daje zdrojáky na GIT.\n\nStretnutie 6.3.\n\nStav: \n\n- Prezentovaná teoretická časť\n\nÚlohy:\n\n- Pokračujte v písaní.\n- Dajte zdrojáky na GIT.\n\nStretnutie 6.2.2026\n\nStav:\n\n- využitie internetu pre vyhľadanie aj overenie. \n- Dorobený fallback na internet.\n- texty nie je pokrok\n- možnosť pridať vlastné dokumenty.\n\nÚlohy:\n\n- dajte zdroje na GIT\n- Pokračujte v práci na textoch", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/rostyslav_rodzhuk/README.md::chunk-2", + "document_path": "pages/students/2023/rostyslav_rodzhuk/README.md", + "title": "Rostyslav Rodzhuk", + "categories": [ + "vp2025", + "bp2026" + ], + "tags": [ + "agent", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "yužitie internetu pre vyhľadanie aj overenie. \n- Dorobený fallback na internet.\n- texty nie je pokrok\n- možnosť pridať vlastné dokumenty.\n\nÚlohy:\n\n- dajte zdroje na GIT\n- Pokračujte v práci na textoch\n\nStretnutie 12.12.2025\n\nStav:\n\n- Docker compose je uroený\n- Mierne zlepšenie UI\n- Písanie o RAG.\n\nÚlohy:\n\n- Pokračovať v tom čo je.\n- Dajte nové zdrojáky na GIT.\n\nZásobník úloh:\n\n- Vyskúšať prácu s modelom nasadeným na školskom servri.\n- Agent môže využiť internet, ak nenájde výsledky v dokumentoch.\n- Agent môže overiť výsledky pomocným vyhľadávaním.\n- Možnosť spätnej väzby od pedagóga.\n\nStretnutie 7.11.\n\nStav:\n\n- Špeciálny pedagóg pomáha celej škole. Napíše odporúčania pre učiteľa aj pre školu o opatreniach pre študenta.\n- Vieme navrhnúť takého agenta, ktorý navrhne opatrenia.\n- Získané HTML dáta z podporneopatrenia.minedu.sk. Dáta sú konvertované do Markdown pomocu Docling.\n- Opatrenia sú roztriedené to troch skupín: všeobecné, cielené a individuálne. \n- Skript vytvorí cez langchain vektorové reprezentácie vo FAISS indexe.\n- Iný skript implementuje API RAG agenta. Je tam aj malé WEB rozhranie. \n- Je aj dockerfile pre frontend aj backend.\n\nÚlohy:\n\n- [x] Zistite čo je to RAG. Hľadaj", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/rostyslav_rodzhuk/README.md::chunk-3", + "document_path": "pages/students/2023/rostyslav_rodzhuk/README.md", + "title": "Rostyslav Rodzhuk", + "categories": [ + "vp2025", + "bp2026" + ], + "tags": [ + "agent", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "ektorové reprezentácie vo FAISS indexe.\n- Iný skript implementuje API RAG agenta. Je tam aj malé WEB rozhranie. \n- Je aj dockerfile pre frontend aj backend.\n\nÚlohy:\n\n- [x] Zistite čo je to RAG. Hľadajte \"Retrieval Augmented Generation\". Napíšte si poznámky. Používajte google scholar. \n- [ ] Vypracujte prehľad odborných článkov (z google scholar) o AI agentoch pre podporu vzdelávania. Poznačte si prečítané články.\n- [ ] Zlepšite vysvetliteľnosť výsledkov agenta. Prečo agent navrhol dané opatrenia? Pridajte odkazy na opatrenia príp. na legislatívu.\n- [ ] Pridajte možnosť vlastných dokumentov (správa od lekára, psychológa, poznámky pedagóga, prospech..) o študentovi.\n- [x] Porozprávajte sa s Ing. Sopkovičom ohľadom kontaktu s reálnym špec. pedagógom.\n- [x] Pripravte možnosť nasadenia systému na školskom servri. Vytvorte Docker Compose, produkčnú konfiguráciu. \n\nStretnutie 3.10.2025\n\nStav:\n\n- Oboznámenie sa s prácou špeciálneho pedagóga.\n\nÚlohy:\n\n- [x] Pokračujte v štúdiu podporných opatrení. Môžete nájsť podobné stránky aj v ukrajinčine. Čo robí špeciálny pedagóg?Ako vieme pomôcť pri ich práci? Napíšte si poznámky.\n- [x] Pripravte si množinu dát - získajte dokumenty s podpornými opat", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/rostyslav_rodzhuk/README.md::chunk-4", + "document_path": "pages/students/2023/rostyslav_rodzhuk/README.md", + "title": "Rostyslav Rodzhuk", + "categories": [ + "vp2025", + "bp2026" + ], + "tags": [ + "agent", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "ení. Môžete nájsť podobné stránky aj v ukrajinčine. Čo robí špeciálny pedagóg?Ako vieme pomôcť pri ich práci? Napíšte si poznámky.\n- [x] Pripravte si množinu dát - získajte dokumenty s podpornými opatreniami https://podporneopatrenia.minedu.sk/ a indexujte ju do databázy pre vyhľadávanie. Použite langchain. Na získanie môžete použiť wget. Na prípravu dát môžete použiť \"https://github.com/docling-project/docling\".\n- Zistite čo je to RAG. Hľadajte \"Retrieval Augmented Generation\". Napíšte si poznámky. Používajte google scholar. \n- [x] Prejdite si tutoriál https://python.langchain.com/docs/tutorials/rag/\n- [x] Implementujte RAG systém pre prácu so získanými dátami.\n- Oboznámte sa s knižnicou Openai Agents SDK.\n- Kódy na prípravu dát a kódy agenta dávajte na katedrový GIT - repozitár bp2026:\n\nZásobník úloh:\n\n- Vytvorte agenta pre pomoc špeciálnemu pedagógovi. Agent vie prečítať zadané dokumenty a na základe otázok zvoliť najlepšie opatrenia.", + "text_length": 951 + }, + { + "chunk_id": "pages/students/2023/rostyslav_rodzhuk/README.md::chunk-5", + "document_path": "pages/students/2023/rostyslav_rodzhuk/README.md", + "title": "Rostyslav Rodzhuk", + "categories": [ + "vp2025", + "bp2026" + ], + "tags": [ + "agent", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "# Vedecký projekt 2025\n\nVeľký jazykový model ako inteligentný agent\n\n- Zistite čo je to veľký jazykový model\n- Oboznámte sa frameworkom LangChain\n- Prečítajte si článok https://arxiv.org/abs/2210.03629\n- Prejdite si tutoriál https://python.langchain.com/v0.1/docs/modules/agents/agent_types/react/\n\nKontrola 23.4:\n\n- Je to ok, napísaná správa.\n\nÚlohy 27.3.2025:\n\n- nainštalujte si prostredie Anaconda. \n- Prejdite si knihu Dive Into Python. \n- Nainštalujte si knižnicu LangChain a naučte sa ju používať. \n- Nainštalujte si a oboznámte sa s knižnicou Huggingface Transformers. \n- Naučte sa čo je to veľký jazykový model. \n- Prejdite si základy tutoriál LangChain a prejdite si tutorirál o práci s LLM Agentami. \n- Napíšte správu na min. 3 strany, kde zhrniete, čo ste sa naučili.", + "text_length": 779 + }, + { + "chunk_id": "pages/students/2023/samuel_dzurina/README.md::chunk-0", + "document_path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2023", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2023/samuel_dzurina/README.md::chunk-1", + "document_path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2026\n\nTéma:\n\nDialógový systém pre podporu firemných procesov\n\nCiele:\n\nVytvorte agenta pre podporu činnosti zásielkovej spoločnosti.\n\nZadanie:\n\n1. Vypracujte prehľad architektúr a jazykových modelov pre inteligentných agentov. \n2. Vypracujte zoznam požiadaviek na agenta pre podporu činnosti zásielkovej spoločnosti. \n3. Na základe vypracovaného prehľadu a zoznamu požiadaviek navrhnite a vypracujte inteligentného agenta. \n4. Agenta otestujte a vyhodnoťte formou dotazníka, identifikujte slabé miesta a navrhnite zlepšenia. \n\nSpolupráca:\n\n- Simona Bobrovčanová\n- Valerii Kutsenko\n- Oleh Poiasnik\n- Martin Šarišský\n- Matej Ščišľak\n\nStretnutie 27.2.2025\n\nStav:\n\n- Zlepšenie extrakcie textu z dokumentov.\n- Chatbot je použiteľný.\n- je napísaných asi 15 strán textu. Úvod, analýza, návrh, ciele\n\nÚlohy:\n\n- \n\nStretnutie 17.12.2025\n\nStav:\n\n- Je urobená prvá verzia chatbota - vie hľadať PDF a pristupovať na internet cez DUCKDUCK. Rozhranie je cez streamlit.\n- Urobené lokálne RAG - me5large. Indexujú sa CMR dohovory, dve verzie (8 a 15 strán). Cez langchain.\n\nÚlohy:\n\n- Pokračujte v písaní. Do teoretickej časti vysvetlite RAG (komponenty - postup, modely, databázy) a metódy ktoré", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/samuel_dzurina/README.md::chunk-2", + "document_path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "me5large. Indexujú sa CMR dohovory, dve verzie (8 a 15 strán). Cez langchain.\n\nÚlohy:\n\n- Pokračujte v písaní. Do teoretickej časti vysvetlite RAG (komponenty - postup, modely, databázy) a metódy ktoré sa používajú. Použite Google Schlar a odkazy na literatúru v texte.\n- V praktickej časti predstavte Vášho chatbota. Predstavte problémovú oblasť, ktorú riešite - logistickú spoločnosť a proces ktorý riešite. Aké dokumenty sú relevantné. \n- Opíšte Vášho chatbota - architektúru a použité prostriedky.\n- Pripravte znenie dotazníka, odhadovaný počet reposndentov a metódu vyhodnotenia. Definujte ciele priekumu dotazníkom.\n- Rozšírte chatbota pre ďalši vybraný proces a pridajte relevatné dokumenty. Napr. zmluvné podmienky prepravy.\n- kódy dajte na GIT.\n\nStretnutie 27.11.2025\n\nStav:\n\n- Získané prepravné dokumenty z Talianska do veľkej Británie. a Z Francúzska do británie. Zatiaľ nevieme ako sa používajú.\n- Vytvorený modelový OpenAI chatbot. Agent používa openai api, gpt3.5 turbo a vie odpovedať na otázky. Asi má problém s vyhľadávaním na internete.\n\nÚlohy:\n\n- Do práce vysvetlite ako funguje function calling, dajte prehľad modelov ktoré sa na túto úlohu používajú. Citujte články zo scholar.\n-", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2023/samuel_dzurina/README.md::chunk-3", + "document_path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "a otázky. Asi má problém s vyhľadávaním na internete.\n\nÚlohy:\n\n- Do práce vysvetlite ako funguje function calling, dajte prehľad modelov ktoré sa na túto úlohu používajú. Citujte články zo scholar.\n- Zdrojáky dajte na KEMT GIT (nedávajte API kľúč).\n- Navrhnite a použite existujúce používateľské rozhranie pre Vášho agenta. Rozhranie by malo byť použiteľné na prezentáciu kolegom. napr. n8n, streamlit, gradio\n- Spýtajte sa kolegov. Aké otázky by zadávali agentovi pri ich práci. Aké informácie vyhľadávajú za akým cieľom? Výsledky prieskumu si zapíšte.\n\nZásobník úloh:\n\n- Vytvorte Dockerfile\n\nStretnutie 30.10.2025\n\nStav:\n\n- Potreba: Spedicka firma potrebuje efektivnejsie riesit colne pravidla pre prepravy z EU colneho priestoru mimo EU (napr. do Norska, Svajciarska, GB).\n\nOtvorene otazky a odpovede:\n1. Pri akom konkretnom procese vie pomoct chatbot? Kto a ako sa tento proces vykonava doteraz?\nPomoc chatbota: Chatbot by sa vyuzival na zosuladenie a zrychlenie procesov pri rieseni colneho odbavenia. Konkretne pri priprave spravnych dokumentov (kontrola faktury, dodacieho listu, priradenie spravneho colneho cisla pre vyvazany/dovazany produkt).\nSucasny stav: Doteraz to vykonaval spediter m", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/samuel_dzurina/README.md::chunk-4", + "document_path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "avenia. Konkretne pri priprave spravnych dokumentov (kontrola faktury, dodacieho listu, priradenie spravneho colneho cisla pre vyvazany/dovazany produkt).\nSucasny stav: Doteraz to vykonaval spediter manualne. Musel pracne hladat na webe alebo prezerat dokumenty o colnych pravidlach. To bolo zdlhave, kedze v kazdej krajine sa pravidla lisia.\nPrioritne trasy: Najviac vyuzivana trasa je z EU do GB. Riesi sa aj tranzit EU tovaru mimo priestor EU ku koncovemu zakaznikovi a naspat do EU.\n2. Ake su technicke poziadavky na nasadenie? Ma firma HW s GPU? Je mozne data poslat mimo firmy?\nOdpoved: Externe riesenie je v poriadku. Data je mozne poslat mimo firmy. (Firma teda nepotrebuje vlastny HW s GPU).\n3. Ktore konkretne data vie agent vyuzit? Ktora legislativa je relevantna?\nOdpoved: Agent musi vyuzivat cely aktualny colny dohovor a vsetky relevantne zakony (cela prislusna legislativa).\n\nÚlohy:\n\n- Vyberte a podrobne opíšte modelový proces pro ktorom vieme pomôcť. Napr. dovoz zeleniny z Veľkej Británie. Aké dokumenty sú potrebné na vstupe? Aké sú na výstupe? \n- Podľa toho zistite, aká legislatíva je relevantná.\n- Pokračujte v tutoriáloch OpenAI Agenta. Vytvorte agenta, ktorý vie vyhľadávať n", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/samuel_dzurina/README.md::chunk-5", + "document_path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "itánie. Aké dokumenty sú potrebné na vstupe? Aké sú na výstupe? \n- Podľa toho zistite, aká legislatíva je relevantná.\n- Pokračujte v tutoriáloch OpenAI Agenta. Vytvorte agenta, ktorý vie vyhľadávať na internete, získať potrebné dokumenty a na ich základe navrhnúť odpoveď.\n- Zistite, ako funguje \"function calling\" a \"tools\" v OpenAI.\n- Čítajte články na Scholar a píšte poznámy o Agentových systémoch v business procesoch.\n\nStretnutie 9.10.2025\n\nStav:\n\n- Špedičná firma by využila colné pravidlá z EU do EU a CMR dohovor (dohovor o medzinárodnej zmluve o cestnej doprave). CMR dohovor - nákladný list, je formulár ktorý vyplní šofér alebo príjemca a je dokladom o vykonanej preprave. Niečo ako sprievodný list. \n- Aké colné pravidlá platia pre prepravu konkrétneho druhu tovaru.\n- Otázky sa týkajú colných vyhlásení.\n\nOtvorené otázky:\n\n- [ ] Pri akom konkrétnom procese vie pomôcť chatbot? Kto a ako sa tento proces vykonáva doteraz?\n- [ ] Ktoré konkrétne dáta vie agent využiť? Ktorá legislatíva (zákony, vyhlášky, zmluvy) je relevantná.\n- [x] Aké sú technické požiadavky na nasadenie? Má firma HW s GPU? Je možné dáta poslať mimo firmy?\n- [x] Je možná formálna spolupráca \"https://uvptechnicom.s", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/samuel_dzurina/README.md::chunk-6", + "document_path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "(zákony, vyhlášky, zmluvy) je relevantná.\n- [x] Aké sú technické požiadavky na nasadenie? Má firma HW s GPU? Je možné dáta poslať mimo firmy?\n- [x] Je možná formálna spolupráca \"https://uvptechnicom.sk/spolupraca/#formy\" alebo https://edihcassovium.sk/ ?\n\nÚlohy:\n\n- Zistite, ako pracuje RAG systém. Vypracujte tutoriál https://python.langchain.com/docs/tutorials/rag/\n- Pozrite sa na gogole scholar a prečítajte si odborné články na tému \"retrieval augmented generation\" . Napíšte si poznámky.\n- Prečítajte si článok https://arxiv.org/abs/2401.03428 a napíšte si poznámky.\n- Navrhnite modelový príklad použitia intelignetného agenta v špedičnej firme.\n- Vyskúšajte https://openai.github.io/openai-agents-python/ a vytvorte prvú verziu agenta.\n\nStretnutie 13.5.2025\n\nStav:\n\n- Hotová prvá verzia chatbota. Urobil to niekto iný. Chatbot má zoznam otázok a odpovedí. Vie sťahovať z Wikipedie a vie odpovedať z wikipedie. Chunkuje na 100 znakov. Používa OpenAI API. Nemá databázu, len CSV.\n\nÚlohy:\n\n- Špecifikujte oblasť použitia chatbota. Identifikujte potenciálne zdroje informácií. Alebo budeme robiť v nejakej právnej, vzdelávacej alebo lekárskej oblasti.\n- Oboznámte sa s problematikou veľkých jazyk", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/samuel_dzurina/README.md::chunk-7", + "document_path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "cifikujte oblasť použitia chatbota. Identifikujte potenciálne zdroje informácií. Alebo budeme robiť v nejakej právnej, vzdelávacej alebo lekárskej oblasti.\n- Oboznámte sa s problematikou veľkých jazykových modelov. Towards Data Science\n- Naučte sa Python lepšie. Nainštalujte si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Vyskúšajte si framework HF Transformers.\n- Vyskúšajte si veľký jazykový model, pomocou HF transformers alebo pomocou ollama.\n- Vyskúšajte si framework LangChain a LangGraph. Prejdite si základný tutoriál LangGraph.\n- Pozrite si knižnicu llamaindex.\n- Napíšte si poznámky z vecí ktoré ste sa naučili. Využívajte odborné ščlánky, ktoré nájdete na google scholar.", + "text_length": 718 + }, + { + "chunk_id": "pages/students/2023/simona_bobrovcanova/README.md::chunk-0", + "document_path": "pages/students/2023/simona_bobrovcanova/README.md", + "title": "Simona Bobrovčanová", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2023", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2023/simona_bobrovcanova/README.md::chunk-1", + "document_path": "pages/students/2023/simona_bobrovcanova/README.md", + "title": "Simona Bobrovčanová", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2026\n\nTéma:\n\nAutomatická sumarizácia slovenského textu\n\nZadanie:\n\n1. Zostavte prehľad modelov a metód vhodných na automatickú sumarizáciu textov v slovenskom jazyku.\n2. Vyberte viacero vhodných modelov a vykonajte sumarizáciu na vybranej množine.\n3. Vyhodnoťte výsledky vhodnou metódou.\n4. Identifikujte slabé miesta existujúceho spôsobu sumarizácie a navrhnite možné zlepšenia. \n\nhttps://git.kemt.fei.tuke.sk/sb610oy/bakalarska-praca\n\nCiele:\n\nZlepšite spracovanie slovenských právnych textov - vytvorte systém pre sumarizáciu rozsudkov alebo iných právnych dokumentov.\n\nStretnutie 27.2.2026\n\nStav:\n\n- Malé modely majú príliš maly kontext. \n- Vyskúšaná hierarchická sumarizácia - text je rozdelený na časti a potom sa vykoná sumár zo sumárov. Funguje to \"dobre\".\n- Práca na texte pokračuje\n- Bol poskytnutý prístup na ui.tukekemt.xyz\n\nÚlohy:\n\n- Dajte skripty na GIT.\n- Vyskúšajte aj sumarizáciu pomocou API modelu.\n- Implementujte porovnanie pomocu ROUGE a BLEU.\n- Implementujte vyuhodnotenie aj pomocu DeepEval https://deepeval.com/docs/metrics-summarization.\n- Pokračujte v písaní - opíšte experimenty, výsledky dajte do tabuľky a okomentujte. \n\nStretnutie 5.12.2025\n\nStav:\n\n- Na", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/simona_bobrovcanova/README.md::chunk-2", + "document_path": "pages/students/2023/simona_bobrovcanova/README.md", + "title": "Simona Bobrovčanová", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "uhodnotenie aj pomocu DeepEval https://deepeval.com/docs/metrics-summarization.\n- Pokračujte v písaní - opíšte experimenty, výsledky dajte do tabuľky a okomentujte. \n\nStretnutie 5.12.2025\n\nStav:\n\n- Napísané poznámky o procese dotrénovania pre sumarizáciu, prečítané články zo Scholar.\n- Pripravené dáta zo sudov pre trénovanie sumarizácie. Text rozhodnutia je vstup, výstup je poučenie. Hlavička a odôvodnenie sa momentálne neberie do úvahy.\n- Pripravený skript na LORA dotrénovanie. \n- Vyhodnotenie pomocou ROUGE and BLEU.\n- Dotrénované a vyhodnotené modely slovak-mistral 7B., Qwen3 , Gemma, Slovak-t5-base\n- Vyzerá to tak, že problémom je dĺžka kontextu. Modely často vynechajú informácie na konci.\n\nÚlohy:\n\n- Možné riešenie problému s kontextom je \"hierarchická sumarizácia\" - model najprv sumarizuje na kratších častiach a potom spojí výsledky do jedného. Sú aj iné spôsoby riešenia? (napr. pomocou vektorových modelov) Toto je možné napísať do prehľadu.\n- Vypracujte automatické vyhodnotenie sumarizácie pomocu jazykového modelu. Vedúci dodá skript .\n- Vyskúšajte \"zero shot prístup\" pomocou \"veľkého jazykového modelu\". Porovnajte veľký model a dotrénované modely.\n- Výsledky experimentov daj", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/simona_bobrovcanova/README.md::chunk-3", + "document_path": "pages/students/2023/simona_bobrovcanova/README.md", + "title": "Simona Bobrovčanová", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "umarizácie pomocu jazykového modelu. Vedúci dodá skript .\n- Vyskúšajte \"zero shot prístup\" pomocou \"veľkého jazykového modelu\". Porovnajte veľký model a dotrénované modely.\n- Výsledky experimentov dajte do tabuľky. \n\nZásobník úloh:\n\n- Implementujte niektorý prístup na prácu s veľkým kontextom.\n\nStretnutie 6.10.2025\n\nStav:\n\n- Preštudované deep learning\n- Framework HF Transformers\n- Trénovanie sumarizácie pomocou LORA v Anaconda, 4 bit kvanitizácia - llama, mt5-base, mt5 na 6GB RAM\n\nÚlohy:\n\n- Pozrite sa na google scholar, prečítajte si najnovšie články o sumarizácii súdnych textov a urobte si poznámky.\n- Napíšte o procese dotrénovania jazykového modelu - supervised finetuning, PEFT-LORA podľa vedeckých článkov.\n- Vytvoreny pristup bobrovcanova@titan.kemt.fei.tuke.sk.\n- Dáta sú v /mnt/sharedhome/hladek/corpora/prokuraturadb/\n- Pripravte si trénovacie a testovacie dáta, zatiaľ bez deanonymizácie a bez prípravy.\n- Natrénujte a vyhodnotte model pre generovanie poučenia na (základe rozhodnutie a-alebo odôvodnenia). \n- \"Objektívne\" vyhodnotenie je pomocou metriky ROUGE alebo BLEU.\n- Vyskúšajte modely: slovak-mistral 7B., Qwen3 , Gemma, Slovak-t5-base\n- skripty dajte na kemt git.\n\nZásobní", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/simona_bobrovcanova/README.md::chunk-4", + "document_path": "pages/students/2023/simona_bobrovcanova/README.md", + "title": "Simona Bobrovčanová", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "ie a-alebo odôvodnenia). \n- \"Objektívne\" vyhodnotenie je pomocou metriky ROUGE alebo BLEU.\n- Vyskúšajte modely: slovak-mistral 7B., Qwen3 , Gemma, Slovak-t5-base\n- skripty dajte na kemt git.\n\nZásobník úloh:\n\n- Vyhodnotenie presnosti pomocou LLM\n- Lepšie predspracovanie textu\n- Generovanie rozhodnutia z odôvodnenia.\n- sumarizácia zero shot, napr. pomocou gpt-oss\n\nStretnutie 3.4.\n\nÚlohy:\n\n- Oboznámte sa s problematikou veľkých jazykových modelov. Towards Data Science\n- Naučte sa Python lepšie. Nainštalujte si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Vyskúšajte si framework HF Transformers.\n- Vyskúšajte si veľký jazykový model, napr. cez systém OLLAMA.\n- Oboznámte sa so stránkou otvorenesudy.sk\n- Zistite, ako vieme dotrénovať jazykový model. Zistite čo je to metóda PEFT, čo je to Supervised finetuning.\n- Oboznámte sa s databázou https://huggingface.co/datasets/NaiveNeuron/slovaksum\n- Napíšte si poznámky z vecí ktoré ste sa naučili.\n\nZásobník úloh:\n\n \n- Spracujte slovenské súdne dáta, upravte ich do podoby vhodnej na trénovanie jazykového modelu\n- Natrénujte a vyhodnotte model pre úlohu sumarizácie.", + "text_length": 1151 + }, + { + "chunk_id": "pages/students/2023/yevhenii_medushivskyi/README.md::chunk-0", + "document_path": "pages/students/2023/yevhenii_medushivskyi/README.md", + "title": "Yevhenii Medushivskyi", + "categories": [ + "bp2026" + ], + "tags": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "rok začiatku štúdia: 2023", + "text_length": 25 + }, + { + "chunk_id": "pages/students/2023/yevhenii_medushivskyi/README.md::chunk-1", + "document_path": "pages/students/2023/yevhenii_medushivskyi/README.md", + "title": "Yevhenii Medushivskyi", + "categories": [ + "bp2026" + ], + "tags": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Bakalárska práca 2026\n\nTéma:\n\nZískavanie textu z webových stránok\n\nZadanie:\n\n1. Vypracujte prehľad webových korpusov a metód ich tvorby. \n2. Vytvorte a nasadte webový crawler na sledovanie a sťahovanie slovenského internetu. \n3. Pomocou crawlera získajte dáta z internetu a vytvorte korpus dát pre viaceré domény. \n4. Analyzujte získané dáta, priebeh ich sťahovania a navrhnite zlepšenia procesu získavania textových dát. \n\nStretnutie 11.5.2026.\n\nStav:\n\n- Napísaná práca\n- zozbierané texty\n\nÚlohy:\n\n- dokončite prácu\n- dajte zdrojáky na GIT.\n\nStretnutie 13.3.2026\n\nStav:\n\n- Zozbieraných cca 450MB textu.\n- Vylepšený text BP\n\nÚlohy:\n\n- Pridajte funciu \"dolovania\" domén zo získaného textu.\n- Dajte kódy na GIT\n- Pokračujte v dolovaní textu, min. 5GB\n- zlepšite deduplikáciu a boilereplate removal - napr. justext.\n\nStretnutie 4.2.2025\n\nStav:\n\n- Crawler funguje, má web rozhranie\n\nÚlohy:\n\n- Pridaje zoznam prioritných webov a blacklist, pridajte preľad štatistík o doménach ((počet navštívených stréno, veľkosč získan=hop textu, počet získaných odkazov interné a externé)) z už získaných dát.\n- Zamiešajte zoznam domén. Pridajte možnosť zamerať crawlera na určitý zoznam stránok.\n- Snažte sa zís", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/yevhenii_medushivskyi/README.md::chunk-2", + "document_path": "pages/students/2023/yevhenii_medushivskyi/README.md", + "title": "Yevhenii Medushivskyi", + "categories": [ + "bp2026" + ], + "tags": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "stréno, veľkosč získan=hop textu, počet získaných odkazov interné a externé)) z už získaných dát.\n- Zamiešajte zoznam domén. Pridajte možnosť zamerať crawlera na určitý zoznam stránok.\n- Snažte sa získať čo najviac textu. Sledujte činnosť crawlera, zobrazte grafy nazbieraného textu, odkazov, navštívených stránok, navštívených domén.\n- Pokračujte v práci na texte BP, citujte vedecké články o \"text mining\",\n\nStretnutie 18.12.2025\n\nStav:\n\n- Práca na texte.\n- Frontend React a Muix,\n- zatiaľ na https://github.com/yvhdpdngr276/sk_web_crawl1, je tam aj branch frontend\n- frontend vyzerá ok, ale chýba mu funkcionalita.\n\nÚlohy:\n\n- Pracujte na textu. Pridajte informácie o korpusoch z https://github.com/slovak-nlp/resources\n- Kódy dajte na KEMT GIT\n- frontend dajte do osobitného adresára, nie do branch.\n- Pridajte možnosť naštartovať a zastaviť workera. Jeden worker by mal fungovať na jednu doménu.\n- Pridajte zoznam možných domén a algoritmus (naplnenie work qeue) pre výber ďalších domén.\n- Zobrazte stav pre každú navštívenú doménu. Koľko odkazov bolo navštívených, koľko textu sa získalo, koľko nenavštívených odkazov je načerpaných. \n- Zobrazte históriu a plán činnosti pre každého workera - k", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/yevhenii_medushivskyi/README.md::chunk-3", + "document_path": "pages/students/2023/yevhenii_medushivskyi/README.md", + "title": "Yevhenii Medushivskyi", + "categories": [ + "bp2026" + ], + "tags": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "zte stav pre každú navštívenú doménu. Koľko odkazov bolo navštívených, koľko textu sa získalo, koľko nenavštívených odkazov je načerpaných. \n- Zobrazte históriu a plán činnosti pre každého workera - koľko užitočného textu načerpal, koľko odkazov navštívil.\n\nZásobík úloh:\n\n- Analyzujte získané odkazy pre danú doménu. Odkazy by som rozdelil na tokeny a urobil štatistickú analýzu tokenov.\n- Pridajte možnost blacklistu pre domény a tokeny v URL\n- Natrénujte prediktor získaného textu na základe URL (tokenov).\n- Zobrazte dostupné konfigurácie workerov.\n\nStretnutie 7.11.2025\n\nStav:\n\n- Vytvorený crawler na báze Scrapy, využíva redis, Mongo, Trafilatura, Playwright, Celery\n\nÚlohy:\n\n- Vytvorte Deploymnet pomocou docker compose na školskom servri.\n- Vytvorte WebUI pre sledovanie behu Crawlera.\n- Navrhnite opatrenie proti preťaženiu zdroja dát. \n- Spustite pokusné sťahovanie a zistite ako sa systém správa. Dávajte pozor na \"preťaženie zdroja\".\n- Kódy dávajte na GIT.\n- Pracujte na texte práce. Prehľad systémov na text mining, prehľad webových korpusov a metód ich tvorby. Opis nášho riešenia. \n\nZásobník úloh:\n\n- Navrhnite systém pre vyhodnotenie domény. Aký je predpoklad pre získanie kvalitného", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2023/yevhenii_medushivskyi/README.md::chunk-4", + "document_path": "pages/students/2023/yevhenii_medushivskyi/README.md", + "title": "Yevhenii Medushivskyi", + "categories": [ + "bp2026" + ], + "tags": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "ľad systémov na text mining, prehľad webových korpusov a metód ich tvorby. Opis nášho riešenia. \n\nZásobník úloh:\n\n- Navrhnite systém pre vyhodnotenie domény. Aký je predpoklad pre získanie kvalitného textu?\n- Navrhnite systém pre vyhodnoteie kvality textu. \n- Spustite \"produkčnú\" prevádzku. Sledujte činnosť a množstvo získaného textu. Zostavte grafy a tabuľky.\n\nStretnutie 9.10.2025\n\nStav:\n\n- Pridané skripty pre pridanie hplt2\n- Prečítané Web Mining and Text mining - vypracované poznámky.\n- Preštudované Docker.\n\nÚlohy:\n\n- Pozrite sa na HPLT3.\n- Pozrite sa na https://github.com/lc/gau\n- Zistite na čo je súbor robots.txt.\n- Zistite, ako nasadiť aplikáciu pomocou Docker Compose.\n- Na tvorbu vyberte vhodné nástroje - Django , Docker, Flask. Work Queue (beanstalkd, Celery, iné...)\n- Mal by mať časť, ktorá sa zameriava na určité stránky (média, noviny, blogy, doménové stránky ) a časť ktorá zísava texty zo \"statických\" stránok.\n- Mal by byť schopný sa vyhnúť \"nekvalitným\" stránkam - eshopom, \"nevhodnému\" obsahu. Mal by vedieť ohodnotiť \"kvalitu\" získaného textu. \n- Crawler by mal mať webové rozhranie pre prehľad o jeho činnosti a výsledkoch.\n- Kódy posielajte na katedrový git.\n- Píšte si", + "text_length": 1200 + }, + { + "chunk_id": "pages/students/2023/yevhenii_medushivskyi/README.md::chunk-5", + "document_path": "pages/students/2023/yevhenii_medushivskyi/README.md", + "title": "Yevhenii Medushivskyi", + "categories": [ + "bp2026" + ], + "tags": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "\"nevhodnému\" obsahu. Mal by vedieť ohodnotiť \"kvalitu\" získaného textu. \n- Crawler by mal mať webové rozhranie pre prehľad o jeho činnosti a výsledkoch.\n- Kódy posielajte na katedrový git.\n- Píšte si poznámky. Vypracujte prehľad existujúcich crawlerov a odborných článkov o text mining. Použite google scholar.\n\nZásobník úloh\n\nStretnutie 20.8.2025\n\nStav:\n\n- Oboznámenie sa s Common Crawl.\n- Splnené minulé úlohy\n\nÚlohy:\n\n- Oboznámte sa s pojmom \"web mining\" alebo \"text mining\". Vyhľadajte tieto pojmy na google scholar, prečítajte si články a napíšte si poznámky.\n- Oboznámte sa s datasetom HPLT2. Naštudujte si celý proces tvorby datasetu.\n- Oboznámte sa s procesom tvorby veľkého slovenského korpusu. Pozrite si adresár data v [repozitari](https://git.kemt.fei.tuke.sk/dano/bert-train).\n- Podľa vzoru si vytvorte vlastnú kópiu skriptov, vyskúšajte ich. Vedúci vytvorí prístup na školský server.\n- Pridajte slovenské dáta z HPLT2.\n\nZásobník úloh:\n\n- Oboznámte sa s platformou Docker.\n- Vytvorte a nasadte crawler pre slovenský jazyk. Použite existujúci projekt [websucker](https://git.kemt.fei.tuke.sk/dano/websucker-pip), alebo iný.\n- Vytvorte doménovo orientovaný crawler.\n- Nasadte monitorovani", + "text_length": 1199 + }, + { + "chunk_id": "pages/students/2023/yevhenii_medushivskyi/README.md::chunk-6", + "document_path": "pages/students/2023/yevhenii_medushivskyi/README.md", + "title": "Yevhenii Medushivskyi", + "categories": [ + "bp2026" + ], + "tags": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "nasadte crawler pre slovenský jazyk. Použite existujúci projekt [websucker](https://git.kemt.fei.tuke.sk/dano/websucker-pip), alebo iný.\n- Vytvorte doménovo orientovaný crawler.\n- Nasadte monitorovanie behu crawlera pomocou webovej aplikácie.\n\nStretnutie 28.2.2025\n\nÚlohy:\n\n- [x] Oboznámte sa s jazykom Python. Kniha Dive into Python 3, nainštalujte si prostredie Anaconda.\n- [x] Vypracujte prehľad webových korpusov pre trénovanie jazykových modelov a metód ich tvorby. C4 alebo mC4. Zoznam nájdete na https://github.com/slovak-nlp/resources. Napíšte si poznámky. Prečítajte si odborné články.\n- [x] Pozrite si projekty Apache Tika, Trafilatura, Apache Nutch, BeautifulSoup, Pupeteer (headless browser).\n\nZásobník úloh:\n\n- Získajte prístup na vhodný školský server a nakonfigurujte vlastný crawler na získavanie doménovo orientovaných dát.\n- Vytvorte korpus súdnych dát - súdne rozhodnutia, zákony, vyhlášky, zmluvy.\n- Vytvorte korpus medicínskych dát.\n- Vytvorte korpus novinových článkov a blogov.\n- Vytvorte korpus webových diskusií.\n- Vytvorte korpus všeobecných dát.\n- Vytvorené texty analyzujte.", + "text_length": 1102 + }, + { + "chunk_id": "pages/topics/akopisat/README.md::chunk-0", + "document_path": "pages/topics/akopisat/README.md", + "title": "Záverečné práce a projekty", + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Ako písať záverečnú prácu\n\n- [Ako písať záverečnú prácu](http://akopisatprace.sk/wp-content/uploads/ako_pisat_zav_prace_final_skratene2_6.pdf)\n- [Odovzdanie a šablóna](https://portal.lib.tuke.sk/etd/)", + "text_length": 202 + }, + { + "chunk_id": "pages/topics/akopisat/README.md::chunk-1", + "document_path": "pages/topics/akopisat/README.md", + "title": "Záverečné práce a projekty", + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Osnova záverečnej práce\n\n1. Úvod: Predstavte čitateľovi problém \n2. Teória (State-of-the-art): Vysvetlíte možné spôsoby riešenia definovaného problému a vysvetlíte dôležité pojmy. Mali by ste sa odvolávať na najnovšie vedecké články a knihy.\n3. Riešenie: Z možných spôsobov riešenia vyberte jeden a odôvodnite prečo ste ho vybrali. Opíšte ho podrobnejšie. \n4. Vyhodnotenie (Experimenty): Vaše riešenie predstavte vo viacerých modelových situáciách a navrhnite experimenty ktoré číselne vyhodnotia Vaše riešenie. Experimenty navrhnite a opíšte tak, aby ich bolo možné zopakovať a aby Vaše výsledky boli porovnateľné s inými.\n5. Záver (Diskusia). Identifikujte slabé miesta Vášho prístupu navrhnite zlepšenia. Definujte ako by mal vyzerať budúci výskum v oblasti riešenia Vášho problému. Zhrňte Vášu prácu a Váš prínos do vybranej oblasti.", + "text_length": 841 + }, + { + "chunk_id": "pages/topics/akopisat/README.md::chunk-2", + "document_path": "pages/topics/akopisat/README.md", + "title": "Záverečné práce a projekty", + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Ako citovať\n\nNiekoľko zásad pri práci s odbornou literatúrou:\n\n- Pri konkrétnych tvrdeniach sa odvolajte na zdroj odbornej literatúry.\n- Odkazy na rôzne webové stránky umiestnite radšej do poznámky pod čiarou.\n- Citácie by mali byť krátke.\n- Doslovné citácie zvýraznite oddelením od ostatného textu.\n- Doslovných citácii nemá byť veľa.\n- Sú povolené aj kratšie parafrázy.\n- Počet referencií by mal byť min. 1 na každé dve strany.\n\n[Ako citovať podľa ISO 960](https://ippr.sk/c/204-citacie-parafrazy-bibliograficke-odkazy-iso-690)", + "text_length": 532 + }, + { + "chunk_id": "pages/topics/akopisat/README.md::chunk-3", + "document_path": "pages/topics/akopisat/README.md", + "title": "Záverečné práce a projekty", + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "### Využívajte indexy odbornej literatúry\n\nPreferujte aktuálne a kvalitné zdroje (nie rôzne blogy, manuály alebo tutoriály).\n\n- https://scholar.google.sk/ \n- https://arxiv.org/search/cs\n- https://www.aclweb.org/anthology/\n- https://www.scopus.com/ (prístupné iba zo školy)\n- https://www.semanticscholar.org/\n- https://www.researchgate.net/", + "text_length": 339 + }, + { + "chunk_id": "pages/topics/akopisat/README.md::chunk-4", + "document_path": "pages/topics/akopisat/README.md", + "title": "Záverečné práce a projekty", + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "### Používajte softvér na manažment citácií\n\nKeď prečítate článok, robte si z neho poznámky a výpisy. Poznámky k článku využijete pri písaní práce. Uchovajte si bibliografický záznam pre ľahšie citovanie. \n\nPri malom množstve článkov (max. 3) stačí obyčajný editor.\nPre písanie záverečnej práce použite špecializovaný nástroj.\nUmožňuje ľahké generovanie zoznamu použitej literatúry pre Word aj pre Latex.\n\n- [Mendeley](https://www.mendeley.com/)\n- [JabRef](https://www.jabref.org/)", + "text_length": 481 + }, + { + "chunk_id": "pages/topics/akopisat/README.md::chunk-5", + "document_path": "pages/topics/akopisat/README.md", + "title": "Záverečné práce a projekty", + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Používajte správne slovenské termíny\n\nAk ste si nie istí prekladom pojmu z angličtiny , pozrite si slovenskú literatúru na danú tému.\n\nKonzultujte existujúce odborné slovníky napr. z:\n\n- https://terminologickyportal.sk/", + "text_length": 222 + }, + { + "chunk_id": "pages/topics/akopisat/README.md::chunk-6", + "document_path": "pages/topics/akopisat/README.md", + "title": "Záverečné práce a projekty", + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Návrh zadania záverečnej práce\n\n1. Definujte PROBLÉM\n2. Vypracujte prehľad možných metód riešenia a vyberte vhodnú METÓDU\n3. Vyberte metódu OHODNOTENIA, navrhnite a vykonajte EXPERIMENTY.\n4. Vyhodnoťte experimenty a navrhnite možné zlepšenia", + "text_length": 248 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-0", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 0, + "text": "! Cieľ:\n!\n! - Natrénovať a vyhodnotiť slovenský jazykový model typu BERT z korpusu webových textov", + "text_length": 98 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-1", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 1, + "text": "## Súvisiace projekty\n\n- [SlovakBERT](https://github.com/gerulata/slovakbert) od Kinit, a [článok](https://arxiv.org/abs/2109.15254)\n- [SK Quad](/topics/question) - Slovak Question Answering Dataset \n- bakalárska práca [Ondrej Megela](/students/2018/ondrej_megela)\n- diplomová práza Jozef Olekšák (in progress, trénovanie electra na colab).\n- https://git.kemt.fei.tuke.sk/dano/bert-train", + "text_length": 387 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-2", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 2, + "text": "## Rozpracované úlohy\n\n- Trénovanie na TPU Google Colab Electra Base. (Olekšák)\n- trénovanie XLNet Base\n- Tokenizer SentencePiece pre XLNet\n- Trénovanie Roberta Base (zatiaľ najlepšie 0.65)", + "text_length": 190 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-3", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 3, + "text": "## Hotové úlohy", + "text_length": 15 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-4", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 4, + "text": "## Trénovací korpus\n\nDeduplikované a tokenizované webové dáta pomocou nášho tokenizátora a deduplikátora. \n\n- Wikipédia\n- Oscar Dedup\n- Sita\n- Websucker 2010,2012,2017\n- Websucker 2022 in progress\n\nSpolu 25 GB po deduplikovaní.", + "text_length": 227 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-5", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 5, + "text": "### Electra Model\n\n- Vyhodnotenie Electra na SK SQUAD, UDP POS tagging\n- Trénovacie skripty Electra\n- Konvertovanie Electra do Transformers pomocou ransformers/src/transformers/models/electra/convert_electra_original_tf_checkpoint_to_pytorch.py \n- Natrénovaný model Electra-small 128, 256 batch size, learning 2e-4, skweb2017dedup, Slovník 32K wordpiece, 0.83 POS, 0.51 Squad", + "text_length": 376 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-6", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 6, + "text": "### Hugging Face Models Finetuning\n\n- Dotrénovaný model multilingual BERT base na SK QUAD, funguje demo skript. (0.72)\n- Dotrénovany Slovak Bert na SK QUAD (0.75)\n- Dotrénovaný model multilingual BERT na SQUAD anglickej, overné na slovenskej SK QUAD\n- SK Quad Datasets Interface", + "text_length": 279 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-7", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 7, + "text": "### Hugging Face Roberta\n\n- Natrénovaný HF Roberta Small\n- Deduplikovaný webový korpus oscar plus skweb2017\n- tokenizer BPE Roberta\n- natrénovaný roberta base na 17GB korpuse, 0.65 na Squad\n- trénovanie pomocou deepspeed (zrýchľuje cca 2x).\n- pri efektívnej veľkosti dávky 1000 je asi najrýchlejčia konvrergencia pri lr 1e-4. , adam (0.9-0.999).\n- Tokenizátor BPE treba trénovať na celkom korpuse.", + "text_length": 397 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-8", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 8, + "text": "## Budúce úlohy\n\n- Pripraviť aj iné množiny na vyhodnotnie: kategorizácia textu na SCNC1.\n- trénovanie na HPC\n- trénovanie Large modelu\n- trénovanie BART", + "text_length": 154 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-9", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 9, + "text": "## Poznámky Roberta\n\n- Trénovanie roberta base s deepspeed 5 epoch, 25G korpus trvá 400 hod. BEz deepsdpeed 900 hod. na dvoch kartách.\n- Veľkosť dávky roberta base na jedno zariadenie Titan24GB je 64 pre deepspeed. \n- Dáta z prokuratúry asi zhoršujú model kvôli anonymizácii, skratkám a právnickému jazyku.\n- Konfigurácia deepspeed po čase nastavila lr na nula a trénovanie sa zastavilo.", + "text_length": 388 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-10", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 10, + "text": "## Poznámky Electra\n\n- Electra vie využiť iba jednu Titan kartu, druhú zbytočne blokuje.\n- Trénovanie base electra trvá cca 40 dní na jednej karte.\n- Trénovanie electra small trvá asi 3 dni na jednej karte Titan RTX, ale model už ďalej nekonverguje po jednom dni.\n- Trénovanie electra small trvá asi 7 dní na jednej karte GTX1080\n- Dotrénovanie trvá iba niekoľko hodín.\n- Electric small 128 nefunguje na Quadre kvôli pamäti,\n- Electra small 512/32 batch funguje na Titane.\n- ELECTRA ingoruje pokyn na ponechanie diakritiky!!!! Ponechanie diakritiky funguje iba pre \"prepare\", inak sa diakritika stále odstraňuje. Ne ponechanie diakritiky sú potrebné úpravy v zdrojových kódoch. \n- TODO: Vytvorenie slovníka ako pri BERT https://github.com/google-research/electra/issues/58 \n- electra prepare skript defaultne odstraňuje diakritiku a dáva malé písmená.", + "text_length": 851 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-11", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 11, + "text": "## Poznámky ku hyperparametrom\n\n- V SLovak Bert bola veľkosť vstupného vektora 512. Máme toľko pamäte?\n- Spotrebu pamäte ovplyvňujú veľkosť vstupného vektora, veľkosť trénovacej dávky.\n- Nie každý model je vhodný na QA. Je potrebné aby mal veľký rozmer vstupného vektora aby aj dlhší odsek mohol byť na vstupe. Z toho dôvodu 128 \"small model\" asi nestačí na QA.\n- Väčší vstupný rozmer je obmedzený veľkosťou RAM pri trénovaní. \n- learning rate by malo byť priamo úmerné s batch_size. Malý batch size by mal mať malý learning rate.", + "text_length": 530 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-12", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 12, + "text": "## Budúci výskum\n\n- Zistiť aký je optimálny počet tokenov? V Slovak BERT použili 50k.\n- Pripraviť webové demo na slovenské QA.\n- Integrovať QA s dialógovým systémom.\n- Integrovať QA s vyhľadávačom.\n- Zostaviť multilinguálny BERT model.\n- Natrénovať BART model.\n- Natrénovať model založený na znakoch.", + "text_length": 300 + }, + { + "chunk_id": "pages/topics/bert/README.md::chunk-13", + "document_path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "author": "Daniel Hládek", + "published": true, + "chunk_index": 13, + "text": "## Hardvérové požiadavky\n\n[https://medium.com/nvidia-ai/how-to-scale-the-bert-training-with-nvidia-gpus-c1575e8eaf71](zz):\n\n When the mini-batch size n is multiplied by k, we should multiply the starting learning rate η by the square root of k as some theories may suggest. However, with experiments from multiple researchers, linear scaling shows better results, i.e. multiply the starting learning rate by k instead.\n\n| BERT Large | 330M |\n| BERT Base | 110M |\n\nVäčšia veľkosť vstupného vektora => menšia veľkosť dávky => menší parameter učenia => pomalšie učenie", + "text_length": 568 + }, + { + "chunk_id": "pages/topics/chatbot/README.md::chunk-0", + "document_path": "pages/topics/chatbot/README.md", + "title": "Dialógový systém", + "categories": [ + "project" + ], + "tags": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "Navrhnite a vytvorte dialógový systém komunikujúci v slovenskom jazyku pre úlohu komunikácie občana s mestom.", + "text_length": 109 + }, + { + "chunk_id": "pages/topics/chatbot/README.md::chunk-1", + "document_path": "pages/topics/chatbot/README.md", + "title": "Dialógový systém", + "categories": [ + "project" + ], + "tags": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Úlohy\n\n- Zostavte bázu pravidiel pre systém RASA.\n- Vyhodnoťte chatbota pre rôzne úlohy.\n- Vytvorte a nasaďte webovú aplikáciu pre testovací prístup.\n\n- Spracujte dáta o digitálnych služnách od mesta. Vytvorte z nich trénovaciu databázu.\n- Identifikujte agendu ktorú by riešil chatbot.\n- Identifikujte, ktoré časti pravidiel sa budú dať meniť.\n- Vytvorte webovú aplikáciu pre úpravu bázy pravidiel a pretrénovanie chatbota.\n- Integrujte chatbota s QA systémom.", + "text_length": 463 + }, + { + "chunk_id": "pages/topics/chatbot/README.md::chunk-2", + "document_path": "pages/topics/chatbot/README.md", + "title": "Dialógový systém", + "categories": [ + "project" + ], + "tags": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Zdroje\n\n- video kanál s [RASA tutoriálom](https://www.youtube.com/watch?v=rlAQWbhwqLA&list=PL75e0qA87dlHQny7z43NduZHPo6qd-cRc)\n- https://chatbotslife.com/how-you-can-build-your-first-chatbot-using-rasa-in-under-15-minutes-ce557ea52f2f\n- https://medium.com/analytics-vidhya/building-a-simple-chatbot-in-python-using-nltk-7c8c8215ac6e", + "text_length": 335 + }, + { + "chunk_id": "pages/topics/chatbot/README.md::chunk-3", + "document_path": "pages/topics/chatbot/README.md", + "title": "Dialógový systém", + "categories": [ + "project" + ], + "tags": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "### Prostriedky\n\n- [Repozitár s webovou aplikáciou](https://git.kemt.fei.tuke.sk/sh662er/rasa-flask-website)\n- [Repozitár s chatbotom](https://git.kemt.fei.tuke.sk/sh662er/Rasa)\n- [RASA toolbox](https://rasa.com/)\n- Slack() - ako rozhranie\n- Slovenský Spacy model https://github.com/hladek/spacy-skmodel", + "text_length": 326 + }, + { + "chunk_id": "pages/topics/chatbot/README.md::chunk-4", + "document_path": "pages/topics/chatbot/README.md", + "title": "Dialógový systém", + "categories": [ + "project" + ], + "tags": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Riešitelia\n\n- [Matej Ščišľak](/students/2021/matej_scislak)\n- [Martin Šarišský](/students/2021/marin_sarissky)", + "text_length": 113 + }, + { + "chunk_id": "pages/topics/chatbot/README.md::chunk-5", + "document_path": "pages/topics/chatbot/README.md", + "title": "Dialógový systém", + "categories": [ + "project" + ], + "tags": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Predošlí riešitelia\n\n- Bakalárska práca [Samuel Horáni](/students/2019/samuel_horani)\n- Dmytro Ushatenko (Daniel Hládek), 19/20\n- Jozef Olekšák (Stanislav Ondáš) 18/19 Riadenie dialógu na báze\n štatických metód", + "text_length": 216 + }, + { + "chunk_id": "pages/topics/chatbot/README.md::chunk-6", + "document_path": "pages/topics/chatbot/README.md", + "title": "Dialógový systém", + "categories": [ + "project" + ], + "tags": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Existujúce riešenia\n\n - [KEMT Bot](https://kemt.fei.tuke.sk)\n - ", + "text_length": 101 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-0", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Často kladené otázky", + "text_length": 22 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-1", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Pre koho to je?\n\nStránka je určená pre študentov a vyučujúcich na Katedre elektroniky a multimediálnych telekomunikácií pre zdieľanie výsledkov záverečných prác.\nPomôže aj záujemcom o štúdium, zamestnávateľom a partnerom katedry na získanie prehľadu o študentskej odbornej činnosti.", + "text_length": 285 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-2", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Ako to funguje\n\nStránka je založená na princípe WIKI - každý prihlásený použvateľ môže zapisovať na ľubovoľné miesto. Každá zmena aj jej autor sa ale zaznamenáva pomocou [systému GIT](https://git.kemt.fei.tuke.sk). Je jednoduché zistiť, kto urobil kedy akú zmenu a zmenu zvrátiť.\n\nStránky môžte editovať cez web rozhranie systému alebo lokálne pomocou Vášho obľúbeného textového editora a synchronizovať pomocou príkazu `git`. Jedna stránka zodpovedá jednému adresáru. Do adresáru umiestnite text stránky vo formáte Markdown do súboru `README.md` a ostatné súvisiace súbory, napr. obrázky.", + "text_length": 594 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-3", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Čo tu nájdem?\n\nNájdete tu materiály súvisiace s vypracovaním záverečnej práce. Kažý študent tu nájde svoj záznam o projekte.\n\nŠtudenti sú organizovaní do skupín podľa roku nástupu na štúdium:\n\n- `/students/rok_nastupu_na_studium/meno_priezvisko`: Stránka s profilom študenta a prácami na ktorých pracoval.", + "text_length": 309 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-4", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Ako upravím stránky cez webové rozhranie\n\nZobrazte si stránku kotrú chcete upraviť. ´Tuknite na odkaz \"Edit this page\".\nNa editovanie sa potrebujete prihlásiť do GIT servra pomocou Vašich študentských prístupových údajov.\n\nZmeny môžete vykonávať pomocou webového editora, kotrý Vám uľahčí prácu s formátom Markdown.\n V pravom hornom rohu ťuknite na ikonku s perom. Otvorí sa Vám editor v ktorom môžte upravovať. \nKeď skončíte s úpravami, ťuknite na zelené tlačítko \"Commit changes/Potvrď zmeny\" celkom dole na stránke. Zmena na GITe sa automaticky zobrazí aj na wiki stránke.\n\nPre vytvorenie nového adresára stačí dopísať jeho meno pred názov nového súboru a adresár sa vytvorí automaticky.", + "text_length": 695 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-5", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Ako upravím stránky pomocu môjho textového editora\n\nAk chcete upravovať pomocou Vášho textového editora, vytvorte si lokálnu kópiu repozirára. Použite grafický GIT klient, ktorý je súčasťou Vášho editora alebo pomocou príkazu `git clone` .\nAk kópiu už máte vytvorenú, získajte najnovšie zmeny príkazom `git pull`.\n\nV Vašou kópiou môžte vykonávať bežné operácie so súbormi a adresármi - úpravu, premiestnenie alebo vymazanie. Nájdite alebo vytvorte vhodný adresár, a upravte súbor `README.md`, do adresára skopírujte obrázky a iné súbory. Stránka sa bude volať rovnako ako adresár. \n\nNa konci pridajte zmenené súbory príkazom `git add` a potvrďte zmeny príkazom `/git commit`. Zmeny odošlite príkazom `git push`.", + "text_length": 716 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-6", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Čo je to Markdown?\n\nMarkdown je jednoduchý značkovací formát obyčajného textu ktorý sa dá ľahko premeniť na HTML alebo aj iné formáty.\n\n- [Krátky prehľad syntaxe](https://commonmark.org/help/)\n- [Viac informácií o Markdown](https://www.markdownguide.org/getting-started)\n\nText vo formáte Markdown vytvoríte pomocou textového editora alebo pomocou webového editora, ale môžte využiť aj špecializované nástroje:\n\n- [Dillinger](https://dillinger.io/), online Markdown Editor\n- Online nástroj na [konverziu DOC](https://word2md.com/)\n- [Pandoc](https://pandoc.org/) (konverzia z a do Markdown)", + "text_length": 592 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-7", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "## Ako vytvorím odkaz\n\nMeno stránky je totožné s adresárom v ktorom sa nachádza. Na stránku sa odkážete podobne ako na adresár v ktorom sa nachádza.\n\nTakto odkážete na stránku Vášho kolegu:\n\n [Môj obľúbený kolega](/students/2016/vzorny_student)", + "text_length": 247 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-8", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "## Ako vložím obrázok\n\nUložte súbor s obrázkom do adresára s Vašou stránkou. Do textu pridajte odkaz na obrázok a pridajte výkričník:\n\n ![Text odkazu](./obrazok.jpg)\n\nNa vloženie obrázka môžete použiť aj web rozhranie. Ťuknite na \"Edit page\" a potom cez Git na \"New file\".", + "text_length": 275 + }, + { + "chunk_id": "pages/topics/faq/README.md::chunk-9", + "document_path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "## Čo ak som našiel preklep?\n\nMôžte ho sám opraviť.", + "text_length": 51 + }, + { + "chunk_id": "pages/topics/hatespeech/README.md::chunk-0", + "document_path": "pages/topics/hatespeech/README.md", + "title": "Hate Speech", + "categories": [ + "project" + ], + "tags": [ + "hatespeech", + "nlp", + "nlm" + ], + "author": null, + "published": null, + "chunk_index": 0, + "text": "# Hate Speech Scientific Project\n\nGoal:\n\n- To be able to recognize parts of text that contains hate or vulgarisms.\n\nPossible applications:\n\n- Management of discussion forums / detection of spam or abuse.\n- \"Postprocessing\" for biased generative language models - preventing to generate inapropriate responses.\n\nPlan:\n\n- Perform a review of the state-of-the-art\n- Pick established (english) corpora\n- Formalize the problem - classification of sentiment, recognition of topic, keyword selection, \n- Propose a preliminary system, repeat existing approach.\n- Create small evaluation set in Slovak\n- Try multilingual/crosslingual approach. Possibility of machine translation.\n- Annotate a bigger Slovak Corpus\n- Recognize and publish scientific contribution\n\nFuture Tasks:\n\n- Evaluate existing multilingual model. E.G. https://huggingface.co/Andrazp/multilingual-hate-speech-robacofi\n- Translate existing English dataset into Slovak. Use OPUS English Slovak Marian NMT model. Train Slovak munolingual model. \n- Train or finetune or prompt a large langauge model.\n\nIn progress tasks:\n\n- Annotate a Twitter Dataset. Possible guidelines are: https://developers.perspectiveapi.com/s/about-the-api-training-dat", + "text_length": 1200 + }, + { + "chunk_id": "pages/topics/hatespeech/README.md::chunk-1", + "document_path": "pages/topics/hatespeech/README.md", + "title": "Hate Speech", + "categories": [ + "project" + ], + "tags": [ + "hatespeech", + "nlp", + "nlm" + ], + "author": null, + "published": null, + "chunk_index": 1, + "text": "l. \n- Train or finetune or prompt a large langauge model.\n\nIn progress tasks:\n\n- Annotate a Twitter Dataset. Possible guidelines are: https://developers.perspectiveapi.com/s/about-the-api-training-data?language=en_US\n- Annotate a Facebook Dataset. Use some other guidelines. e.g. sentence-level annotation, for context sensitive hate.\n- Prepare existing Slovak Twitter dataaset, train evaluate a model. \n\nFinished tasks:\n\n- Perform preliminary experiments with HS detection (Bulburu)\n- Prepare an anotation infrastructure for Facebook data annotation (Ferko)\n- Gather Facebook data and prepare for annotation. (Ferko)\n\nPeople:\n\n- Ján Staš\n- Daniel Hládek\n- Zuzana Sokolová\n- [Vladimír Ferko](/students/2021/vladimir_ferko)\n- [Tetiana Mohorian](/students/2022/tetiana_mohorian)\n- [Patrik Pokrivčák](/students/2019/patrik_pokrivcak)\n\nFormer participants:\n\n- [Sevval Bulburu](/interns/sevval_bulburu)\n- [Manohar Gowdru Shridharu](/students/2021/manohar_gowdru_shridharu)\n\nLinks:\n\n- https://europeanonlinehatelab.com/\n- https://hatespeechdata.com/\n- https://oznacuj-dezinfo.kinit.sk/", + "text_length": 1079 + }, + { + "chunk_id": "pages/topics/legal/README.md::chunk-0", + "document_path": "pages/topics/legal/README.md", + "title": "Legal Data Processing", + "categories": [ + "project" + ], + "tags": [ + "legal", + "nlp" + ], + "author": null, + "published": null, + "chunk_index": 0, + "text": "# Legal Data Processing Scientific Project\n\nGoal:\n\n- Help the slovak judges \n\nPossible applications:\n\n- agent retrieval agent to search in laws and processdings.\n- question answering system\n\nPlan:\n\n- Develop a demo agent for legal and proceeding retrieval anad answering.\n- Develop a summarization system - retrieve and highlight important parts of document. Generate a summary.\n\nPeople:\n\n- Daniel Hládek\n- [Martin Šarišský](/students/2021/martin_sarissky) - agentový systém\n- [Matej Ščišľak](/students/2021/matej_scislak) - sumarizácia, dotrénovanie LLM\n- [Maxim Zatyrka](/students/2023/maxim_zatyrka) - využitie grafovej informácie ( Tezaurus)\n- [Oleksandr Dorybohov](/students/2023/oleksandr_dorybohov) - agent pre volanie REST\n- [Simona Bobrovčanová](/students/2023/simona_bobrovcanova) - sumarizácia\n- [Samuel Ďžurina](/students/2023/samuel_dzurina) - získavanie colných informácií.\n\nTasks:\n\n- Create index of Slovak laws\n- Create index of the Slovak Court proceedings.\n- Fine-tune Slovak embedding model for the legal domain.\n- Evaluate LLMS for the legal domain.\n- Design legal data pre-processing (anonymization, de-anonymization)\n- Create a knowledge graph (tezaurus)\n- Create legal data", + "text_length": 1199 + }, + { + "chunk_id": "pages/topics/legal/README.md::chunk-1", + "document_path": "pages/topics/legal/README.md", + "title": "Legal Data Processing", + "categories": [ + "project" + ], + "tags": [ + "legal", + "nlp" + ], + "author": null, + "published": null, + "chunk_index": 1, + "text": "edding model for the legal domain.\n- Evaluate LLMS for the legal domain.\n- Design legal data pre-processing (anonymization, de-anonymization)\n- Create a knowledge graph (tezaurus)\n- Create legal data summarization (extractive and abstractive) system.\n- Create agent that utilizes OpenAPI\n\nLinks:\n\n- OpenAPI pre prístup k údajom o súdoch a o rozsudkoch. https://obcan.justice.sk/pilot/api/ress-isu-service/swagger-ui/index.html\n- [Register partnerov verejného sektora](https://rpvs.gov.sk/opendatav2/swagger/index.html) Swagger Open Api, [https://www.justice.gov.sk/sluzby/register-partnerov-verejneho-sektora/open-data/](Dokumentácia)\n- Databáza zákonov a register opatrení https://static.slov-lex.sk/\n- [Tezaurus slovenského práva](https://www.slov-lex.sk/tezaury/terminy) - aj vzťahy ku právnym predpisom\n- [Znalostný graf údajov verejnej správy](https://znalosti.gov.sk/)", + "text_length": 875 + }, + { + "chunk_id": "pages/topics/morphology/README.md::chunk-0", + "document_path": "pages/topics/morphology/README.md", + "title": "Morfologická analýza slovenského jazyka", + "categories": [ + "project" + ], + "tags": [ + "pos", + "spacy", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Morfologická analýza slovenského jayzka\n\nIdentifikácia morfologických jednotiek\n\n- Hunspell Leamtizátor, pravidlá pre affix\n\nByte Pair Encoding\n\nWord Prep https://ieeexplore.ieee.org/document/9005608\n\nMorfessor morfologické jednotky", + "text_length": 235 + }, + { + "chunk_id": "pages/topics/named-entity/README.md::chunk-0", + "document_path": "pages/topics/named-entity/README.md", + "title": "Pomenované entity", + "categories": [ + "project" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Pomenované entity", + "text_length": 19 + }, + { + "chunk_id": "pages/topics/named-entity/README.md::chunk-1", + "document_path": "pages/topics/named-entity/README.md", + "title": "Pomenované entity", + "categories": [ + "project" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Stretnutia\n\n11.8.2020\n\nRozdelíme wikicorpus na 100 častí.\n\nNebudeme riešiť doménový bias vo wikipédii.\n\nBudeme riešiť bias na dĺžku článkov.\n\nTagová značka asi: LOC, MISC, ORG, PER.\n\nPeter sa pozrie na wikiextraktor.\n\nDaniel:\n\n- vyrieši šablóny\n- vypočíta štatistiky o dĺžke paragrafov\n- navrhne pravidlo na ohodnotenie kvality článku, Kvalita článku závisí na dĺžke dobrých paragrafov a dĺžke celého článku.", + "text_length": 411 + }, + { + "chunk_id": "pages/topics/named-entity/README.md::chunk-2", + "document_path": "pages/topics/named-entity/README.md", + "title": "Pomenované entity", + "categories": [ + "project" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Úlohy", + "text_length": 8 + }, + { + "chunk_id": "pages/topics/named-entity/README.md::chunk-3", + "document_path": "pages/topics/named-entity/README.md", + "title": "Pomenované entity", + "categories": [ + "project" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "### Príprava dát\n\n[Repozitár annotation/wikicorpus](https://git.kemt.fei.tuke.sk/dano/annotation/src/branch/master/wikicorpus)\n\nVstup: Wiki XML dump\n\nVýstup: Množina dokumentov pre anotáciu\n\nurobené:\n\n- Parsovanie XML Wiki DUMP \n- Skript pre extrakciu paragrafov.\n\nurobiť:\n\n- Filter pre vyradenie článkov a paragrafov.\n- Ručný výber článkov.", + "text_length": 341 + }, + { + "chunk_id": "pages/topics/named-entity/README.md::chunk-4", + "document_path": "pages/topics/named-entity/README.md", + "title": "Pomenované entity", + "categories": [ + "project" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "### Príprava anotačnej schémy\n\nVstup: dataset na anotovanie\n\nVýstup: nasadená a pripravená aplikácia na anotovanie\n\n[Repozitár annotation/ner](https://git.kemt.fei.tuke.sk/dano/annotation/src/branch/master/ner)\n\nurobené:\n\n- Anotačný recept (Jakub Maruniak)\n- [Deploymment Prodigy](http://skner.tukekemt.xyz) (Daniel Hládek)\n- Konverzia dát do Prodigy (Jakub Maruniak)\n\nurobiť:\n\n- Anotačný manuál\n- Sada značiek na anotáciu\n- Podporný model? Ak pomáha tak pripraviť aj schému alebo dataset s podporným modelom.\n- Pripraviť podrobné anotovanie \"development\" množiny", + "text_length": 563 + }, + { + "chunk_id": "pages/topics/named-entity/README.md::chunk-5", + "document_path": "pages/topics/named-entity/README.md", + "title": "Pomenované entity", + "categories": [ + "project" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "### Prípravná anotačná dávka\n\n[Repozitár annotation/database_app](https://git.kemt.fei.tuke.sk/dano/annotation/src/branch/master/database_app)\n\nVstup:\n\n- pripravená aplikácia pre anotovanie\n\nVýstup:\n\n- prvé anotované dáta\n- aplikácia pre analýzu anotovaných dát\n- skript pre spájanie a filtrovanie anotovaných dát\n\nurobené:\n\n- nasadenie aplikácie pre analýzu anotovaných dát http://askner.tukekemt.xyz (Daniel Hládek)\n\nprebieha:\n\n- aplikácia pre analýzu anotovaných dát - kto anotoval čo, ako a koľko (Tomáš Kuchárik)\n\nurobiť:\n\n- Anotácia dát\n- Príprava skriptu na čistenie anotovaných dát", + "text_length": 589 + }, + { + "chunk_id": "pages/topics/named-entity/README.md::chunk-6", + "document_path": "pages/topics/named-entity/README.md", + "title": "Pomenované entity", + "categories": [ + "project" + ], + "tags": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "### Produkčná anotačná dávka\n\nVstup: Pripravená aplikácia a dáta na anotovanie\n\nVýstup: \n\n- Anotované dáta\n- korpus\n\ntreba urobiť:\n\n- Motivácia študentov\n- Anotácia dát\n- Analýza anotovaných dát\n- tvorba korpusu anotovaných dát\n- Validácia anotovaných dát (anotačná schéma pre validáciu?)", + "text_length": 288 + }, + { + "chunk_id": "pages/topics/named-entity/navod/README.md::chunk-0", + "document_path": "pages/topics/named-entity/navod/README.md", + "title": "Anotácia pomenovaných entít", + "categories": [], + "tags": [ + "ner", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Anotácia pomenovaných entít\n\nPomôžte nám pri vedeckom výskume tým, že naučíte stroj rozpoznávať vlastné podstatné mená.\nUčenie prebieha tak, že v texte ukážete ktoré slová patria názvom osôb, miest, organizácií alebo vecí.\nÚčasť v tomto experimente Vám pomôže vylepšiť Vaše študijné výsledky a vyhrať aj televízny otázkový kvíz \"Tisícionár\".", + "text_length": 343 + }, + { + "chunk_id": "pages/topics/named-entity/navod/README.md::chunk-1", + "document_path": "pages/topics/named-entity/navod/README.md", + "title": "Anotácia pomenovaných entít", + "categories": [], + "tags": [ + "ner", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Návod pre anotátorov\n\nVašou úlohou bude v texte vyznačiť vlastné podstatné mená.\nVlastné podstatné meno sa v slovenskom jazyku spravidla začína veľkým písmenom, ale môže obsahovať aj ďalšie slová písané malým písmenom. \nAk vlastné podstatné meno v sebe obsahuje iný názov, napr. Nové Mesto nad Váhom, anotujte ho ako jeden celok.\n\n- PER: mená osôb\n- LOC: geografické názvy\n- ORG: názvy organizácii\n- MISC: iné názvy, napr. názvy produktov.\n\nV texte narazíte aj na slová, ktoré síce pomenúvajú geografickú oblasť, avšak nejedná sa o vlastné podstatné mená (napr. britská kolónia, londýnsky šerif...). Takéto slová nepovažujeme za pomenované entity a preto Vás prosíme, aby ste ich neoznačovali.\n\nV prípade, že v texte sa nenachádzajú žiadne anotácie, tento článok je platný, a teda zvoľte možnosť Accept.\n\nV prípade, že text sa skladá iba z jedného, resp. niekoľkých slov, ktoré sami o sebe nenesú žiaden význam, tento článok je neplatný, a teda zvoľte možnosť Reject.", + "text_length": 970 + }, + { + "chunk_id": "pages/topics/named-entity/navod/README.md::chunk-2", + "document_path": "pages/topics/named-entity/navod/README.md", + "title": "Anotácia pomenovaných entít", + "categories": [], + "tags": [ + "ner", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Anotačné dávky\n\nDo formulára napíšte Váš e-mail aby bolo možné rozpoznať, kto vykonal anotáciu. \n\nPočas anotácie môžete pre zjednodušenie práce využívať klávesové skratky: \n- 1,2,3,4 - prepínanie medzi entitami\n- klávesa \"a\" - Accept\n- klávesa \"x\" - Reject\n- klávesa \"space\" - Ignore\n- klávesa \"backspace\" alebo \"del\" - Undo\n\nPo anotovaní nezabudnite svojú prácu uložiť (ikona vľavo hore, alebo \"Ctrl + s\").", + "text_length": 410 + }, + { + "chunk_id": "pages/topics/named-entity/navod/README.md::chunk-3", + "document_path": "pages/topics/named-entity/navod/README.md", + "title": "Anotácia pomenovaných entít", + "categories": [], + "tags": [ + "ner", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "### Pokusná anotačná dávka\n\nDávka je zameraná na zber spätnej väzby od anotátorov na zlepšenie rozhrania a anotačného procesu.\n\n{% include \"forms/form.html.twig\" with { form: forms('ner1') } %}", + "text_length": 193 + }, + { + "chunk_id": "pages/topics/nlp/README.md::chunk-0", + "document_path": "pages/topics/nlp/README.md", + "title": "Nástroje a zdroje pre spracovanie prirodzeného jazyka", + "categories": [ + "info" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "## Knihy\n\n- Lane, Howard, Hopke: Natural language processing in action\n- [Spacy Tutoriál](https://nlpforhackers.io/complete-guide-to-spacy/)\n- [Dive into Python](https://diveintopython3.problemsolving.io/) [(česky)](http://diveintopython3.py.cz/index.html)\n- [Natural Language Processing in Action](https://www.manning.com/books/natural-language-processing-in-action) [(git)](https://github.com/totalgood/nlpia)\n- [Python Data Science Handbook](https://github.com/jakevdp/PythonDataScienceHandbook)\n- [Speech and Language Processing 2rd edition](https://github.com/rain1024/slp2-pdf)\n- [Speech and Language Processing 3rd edition](https://web.stanford.edu/~jurafsky/slp3/)", + "text_length": 674 + }, + { + "chunk_id": "pages/topics/nlp/README.md::chunk-1", + "document_path": "pages/topics/nlp/README.md", + "title": "Nástroje a zdroje pre spracovanie prirodzeného jazyka", + "categories": [ + "info" + ], + "tags": [ + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Odporúčané nástroje\n\n- Prostredie [Anaconda](https://www.anaconda.com/distribution/)\n- Chatbot [RASA](https://rasa.com/)\n- Knižnica [Spacy](https://spacy.io/)\n- Anotácie [Prodigy](https://prodi.gy/)\n- Získavanie informácií [Elasticsearch](https://www.elastic.co/products/elasticsearch)\n- seq2seq Neurónové siete [Fairseq](https://github.com/pytorch/fairseq)\n- webové aplikácie a REST [Flask](https://www.fullstackpython.com/flask.html)\n- [Flair](https://github.com/zalandoresearch/flair)\n- [Spacy](https://spacy.io/)\n- [GloVe](https://nlp.stanford.edu/projects/glove/) word embedding\n- [FastText](https://fasttext.cc/) word embedding\n- [GenSim](https://radimrehurek.com/gensim/) (topic modelling)\n\nPostup: \n\n- Nainštaluj si Anacondu\n- Prečítaj si materiály\n- Vyber si zaujímavú úlohu a nástroj\n- Vyskúšaj nástroj\n- Napíš správu o riešení úlohy", + "text_length": 846 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-0", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Otvorené témy záverečných prác\n\nDaniel Hládek", + "text_length": 47 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-1", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Nápady na projekty\n\n- Čistenie dát - zlepšenie webových trénovacích korpusov. Identifikácia \"neužitočných častí\" textu. Reklámy, eshopy. Vulgárne diskusie. Zostavenie modelu pre identifikáciu.\n- Sumarizácia na súdnych alebo lekárskych dátach.\n- Dotrénovanie jazykového modelu pre súdnu alebo lekársku doménu pomoocu LORA/PEFT.\n- Spracovanie pomenovaných entít - anonymizácia. \n- Grafové neurónové siete - súdna doména. Alebo Open Data. \n- Zber slovenských dát z webu.\n- Tvorba množiny otázok a odpovedí z webu.\n- Tvorba nových trénovacích dát pomocou LLM - augmentácia, question generation.\n- RWKW - trénovanie, dotrénovanie.\n- Dotrénovanie T5-gen., MIstral modelov s rôznymi datbázami (qa, instruct, sumarizácia, hate speech). Zostavenie množiny pre dotrénovanie s instuct alebo prefix.\n- Zlepšenie LLM embeddingov na slovenčinu - využitie strojovo preložených databáz (MS Marco, Gigaword).\n- LLM Agents - function calling, REACT.\n- reinformcement v LLM - https://huggingface.co/docs/trl/index\n- Skript pre generovanie \"gramatických chýb\".\n- Využitie a nasedenie veľkého LLM na naše servre. Napr. https://huggingface.co/NovaSky-AI/Sky-T1-32B-Preview\n- Opis obrázku v slovenskom jazyku. Zatiaľ nev", + "text_length": 1200 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-2", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "Skript pre generovanie \"gramatických chýb\".\n- Využitie a nasedenie veľkého LLM na naše servre. Napr. https://huggingface.co/NovaSky-AI/Sky-T1-32B-Preview\n- Opis obrázku v slovenskom jazyku. Zatiaľ neviem ako.\n- Vytvorenie anotovaných dát v slovenčine. Akých? Reasoning? Grammar? Parallel?\n- Model distilation.", + "text_length": 309 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-3", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Bakalárske práce\n\nNaučíte sa:\n\n- niečo o spracovaní prirodzeného jazyka\n- vytvárať webové aplikácie\n- pracovať s nástrojmi v jazyku Python\n- prekonávať technické problémy\n\nPožiadavky:\n\n- chcieť sa naučiť niečo nové", + "text_length": 217 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-4", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "### Demonštračný systém pre generovanie odpovede na otázku v prirodzenom jazyku\n\n- Natrénujte existujúci systém pre generovanie odpovede na otázku v prorodzdenom jazyku.\n- Vytvorte demonštračnú webovú aplikáciu.", + "text_length": 211 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-5", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "### Strojový preklad slovenského jazyka\n\n- Zoberte existjúci systém pre strojový preklad.\n- Pripravte existujúci paralelný korpus pre trénovanie.\n- Vytvorte model pre strojový preklad slovenského jazyka.", + "text_length": 203 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-6", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "### Rozpoznávanie pomenovaných entít v slovenskom jazyku\n\n- Zlepšite model pre rozpoznávanie pomenovaných entít \n- Anotujte korpus, navrhnite lepší klasifikátor.", + "text_length": 161 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-7", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "### Vyhľadávač na slovenskom internete\n\n- Vytvorte index pre vyhľadávanie v databáze slovenských stránok (Cassandra, Elasticseaech).\n- Vytvorte webové rozhranie k vyhľadávaču", + "text_length": 174 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-8", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "## Diplomové práce\n\nNaučíte sa:\n\n- Niečo viac o neurónových sieťach.\n- Vytvárať jednoduché programy na úpravu dát.\n- Zapojiť sa do reálneho výskumu.", + "text_length": 148 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-9", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "### Morfologická analýza s podporou predtrénovania\n\n- Zoberte existujúci model pre morfologickú analýzu slovenského jazyka vyhodnotte ho\n- Použite BERT model na natrénovanie morfologickej anotácie a porovnajte presnosť so základným modelom.", + "text_length": 241 + }, + { + "chunk_id": "pages/topics/otvorene/README.md::chunk-10", + "document_path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "### Slovné jednotky v predspracovaní pre strojový preklad\n\n- Natrénujte systém pre strojový preklad\n- Vytvorte niekoľko modelov pre rozdelenie slov na menšie jednotky v slovenskom jazyku. Pre každý model rozdelenia slov natrénujte systém pre strojový preklad. \n- Porovnajte výsledky strojového prekladu s rôznymi rozdeleniami slov.", + "text_length": 331 + }, + { + "chunk_id": "pages/topics/prodigy/README.md::chunk-0", + "document_path": "pages/topics/prodigy/README.md", + "title": "Anotácia textových dát", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Anotácia textových dát\n\n- Natrénovanie štatistického modelu pre spracovanie prirodzeného jazyka zo slovenských dát\n- Manuálna anotácia slovenských dát pre výskyt pomenovaných entít", + "text_length": 182 + }, + { + "chunk_id": "pages/topics/prodigy/README.md::chunk-1", + "document_path": "pages/topics/prodigy/README.md", + "title": "Anotácia textových dát", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Postup\n\n- Definovanie anotačnej schémy\n- Príprava dátovej množiny vhodnej na anotáciu\n- Natrénovanie štatistického modelu Spacy\n- Príprava anotačnej úlohy Prodigy", + "text_length": 165 + }, + { + "chunk_id": "pages/topics/prodigy/README.md::chunk-2", + "document_path": "pages/topics/prodigy/README.md", + "title": "Anotácia textových dát", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Nástroje\n\n- Python (príprava dát)\n- Spacy (štatistický model) [Spacy](https://spacy.io/))\n- [Prodigy](https://prodi.gy/) (anotácie)", + "text_length": 134 + }, + { + "chunk_id": "pages/topics/prodigy/README.md::chunk-3", + "document_path": "pages/topics/prodigy/README.md", + "title": "Anotácia textových dát", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Riešitelia\n\n- Andrej Hopko (BP, ex?)\n- Tomáš Kuchárik (príprava dát z wikipedie)\n- Jakub Maruniak\n- [Cesar Gutierez](/topics/named-entity) (stáž leto 2019)", + "text_length": 158 + }, + { + "chunk_id": "pages/topics/python/README.md::chunk-0", + "document_path": "pages/topics/python/README.md", + "title": "Jazyk Python", + "categories": [ + "info" + ], + "tags": [ + "python" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Práca s jazykom Python v prostredí Anaconda\n\nVhodný na spracovanie prirodzeného jazyka\n\nPodobné prostredie si viete vytvoriť na Vašom počítači, na školskom servri alebo na Google Colab.", + "text_length": 187 + }, + { + "chunk_id": "pages/topics/python/README.md::chunk-1", + "document_path": "pages/topics/python/README.md", + "title": "Jazyk Python", + "categories": [ + "info" + ], + "tags": [ + "python" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Ako začať s Pythonom\n\nPrečítajte si \n\nhttps://diveintopython3.net/\n\nhttp://diveintopython3.py.cz/index.html\n\nhttps://jakevdp.github.io/PythonDataScienceHandbook/", + "text_length": 164 + }, + { + "chunk_id": "pages/topics/python/README.md::chunk-2", + "document_path": "pages/topics/python/README.md", + "title": "Jazyk Python", + "categories": [ + "info" + ], + "tags": [ + "python" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Vývojové prostredie Anaconda\n\nNainštalujte si prostedie [anaconda](https://www.anaconda.com/). \n\nStiahnite si [inštalátor](https://docs.conda.io/en/latest/miniconda.html).\n\nNa systéme Linux si Anacondu stiahnete aj nainštalujete jedným príkazom:\n\n```\ncurl -s https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh | bash\n```\n\n[Anaconda manuál](https://docs.conda.io/projects/conda/en/latest/user-guide/getting-started.html)\n\nVytvorenie nového virtuálneho prostredia anaconda:\n\n```\nconda create --name mojeprostredie\n```\n\nAktiácia virtuálneho prostredia Anaconda:\n\n```\nconda activate mojeprostredie\n```\n\n[Ťahák Anaconda](https://docs.conda.io/projects/conda/en/4.6.0/_downloads/52a95608c49671267e40c689e0bc00ca/conda-cheatsheet.pdf)", + "text_length": 752 + }, + { + "chunk_id": "pages/topics/python/README.md::chunk-3", + "document_path": "pages/topics/python/README.md", + "title": "Jazyk Python", + "categories": [ + "info" + ], + "tags": [ + "python" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Inštalácia Pytorch s podporou CUDA do prostredia Anaconda\n\nNa inštaláciu ľubovoľnej verzie CUDA a Pytorch nepotrebujete admin práva. \nVerzia Python, CUDA a Pytorch musí spolu sedieť.\nNajnovšiu verziu všetkého potrebného stiahnete zo stránky [Pytorch](https://pytorch.org/)\n\nNapríklad takto:\n\n```\nconda install python=3.10\nconda install pytorch pytorch-cuda=11.8 -c pytorch -c nvidia\n```\n\nInštalácia bude chvíľu trvať.\n\nOverte si že CUDA funguje správne:\n\n```\npython\n>>> import torch\n>>> torch.cuda.is_available()\n```", + "text_length": 520 + }, + { + "chunk_id": "pages/topics/python/README.md::chunk-4", + "document_path": "pages/topics/python/README.md", + "title": "Jazyk Python", + "categories": [ + "info" + ], + "tags": [ + "python" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Spustenie dlhších procesov na GPU\n\nNa servri QUADRO sú k dispozícii 4 karty NVIDIA 1080, 12 GB RAM.\n\nOverte si, ktoré karty sú voľné:\n\n```\nnvidia-smi\n```\n\nPri trénovaní si zvoľte na ktorej karte budete trénovať pomocou premennej prostredia `CUDA_VISIBLE_DEVICES`.\n\nNapr. \n\n```\nCUDA_VISIBLE_DEVICES=2,3 python train.py\n```\n\nspustí 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.\n\nDlhšie procesy môžete manažovať cez príkaz `tmux`.\n\nNajprv si spustíte nové sedenie:\n\n```\ntmux\n```\n\n```\nCTRL+B C si viete urobiť nové okno. \nCTRL+B B prepnete okno. \nCTRL+B N prepnete okno. \nCTRL+B D vypnete tmux, ale procesy budú stále bežať aj keď sa odhlásite. \n```\n\n```\ntmux a -t 0\n```\n\nobnovíte posledné sedenie", + "text_length": 769 + }, + { + "chunk_id": "pages/topics/python/README.md::chunk-5", + "document_path": "pages/topics/python/README.md", + "title": "Jazyk Python", + "categories": [ + "info" + ], + "tags": [ + "python" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Virtualenv\n\nPráca s virtuálnymi prostrediami Python\n\nVirtuálne prostredie je vhodné keď pre určitý porjket potrebujete inštalovať balíčky tak a by nevytvárali konflikty\na zároveň nepotrebujete prostredie Anaconda.\n\nVytvorí nové virtuálne prostredie:\n\n```\npython -m virtualenv ./venv\n```\n\nAktivuje virtuálne prostredie:\n\n```\nsource ./venv/bin/activate\n```\n\nInštaluje balíčky do virtuálneho prostredia:\n```\npip install ...\n```\n\nVypne virtuálne prostredie:\n\n```\ndeactivate\n```\n\nVymazanie virtuálneho prostredia\n\n```\nrm -r venv\n```", + "text_length": 530 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-0", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Question Answering\n\n- [Project repository](https://git.kemt.fei.tuke.sk/dano/annotation) (private)\n- [Annotation Manual for question annotation](navod)\n- [Annotation Manual for validations](validacie)\n- [Annotation Manual for unanswerable questions](nezodpovedatelne)\n- [Summary database application](https://app.question.tukekemt,xyz)", + "text_length": 337 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-1", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Project Description\n\n- Create a clone of [SQuaD 2.0](https://rajpurkar.github.io/SQuAD-explorer/) in the Slovak language\n- Setup annotation infrastructure with [Prodigy](https://prodi.gy/)\n- Perform and evaluate annotations of [Wikipedia data](https://dumps.wikimedia.org/backup-index.html).\n\nAuxiliary tasks:\n\n- Consider using machine translation \n- Train and evaluate Question Answering model", + "text_length": 397 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-2", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## People\n\n- Daniel Hládek (responsible researcher).\n- Tomáš Kuchárik (student, help with web app).\n- Ján Staš (BERT model).\n- [Ondrej Megela](/students/2018/ondrej_megela), [Oleh Bilykh](/students/2018/oleh_bilykh), Matej Čarňanský (auxiliary tasks).\n- other students and annotators (annotations).", + "text_length": 298 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-3", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Finished Tasks", + "text_length": 17 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-4", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "### Raw Data Preparation\n\nInput: Wikipedia\n\nOutput: a set of paragraphs\n\n1. Obtaining and parsing of wikipedia dump\n1. Selecting feasible paragraphs\n\nDone:\n\n- Wiki parsing script (Daniel Hládek)\n- PageRank script (Daniel Hládek)\n- selection of paragraphs: select all good paragraphs and shuffle\n- fix minor errors\n\nTo be done:\n\n- Select the largest articles (to be compatible with squad).\n\nNotes:\n\n- PageRank Causes bias to geography, random selection might be the best\n- [75 best articles](https://sk.wikipedia.org/wiki/Wikip%C3%A9dia:Zoznam_najlep%C5%A1%C3%ADch_%C4%8Dl%C3%A1nkov)\n- [167 good articles](https://sk.wikipedia.org/wiki/Wikip%C3%A9dia:Zoznam_dobr%C3%BDch_%C4%8Dl%C3%A1nkov)\n- [Wiki Facts](https://sk.wikipedia.org/wiki/Wikip%C3%A9dia:Zauj%C3%ADmavosti)", + "text_length": 767 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-5", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "### Annotation Manual\n\nOutput: Recommendations for annotators\n\nDone:\n\n- Web Page for annotators (Daniel Hládek)\n- Modivation video (Daniel Hládek)\n- Video with instructions (Daniel Hládek)\nbn application?", + "text_length": 205 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-6", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "### Question Annotation\n\nAn annotation recipe for Prodigy\n\nInput: A set of paragraphs\n\nOutput: 5 questions for each paragraph\n\nDone: \n\n- a data preparation script (Daniel Hládek)\n- annotation recipe for Prodigy (Daniel Hládek)\n- deployment at [question.tukekemt.xyz](http://question.tukekemt.xyz) (only from tuke) (Daniel Hládek)\n- answer annotation together with question (Daniel Hládek)\n- prepare final input paragraphs (dataset)", + "text_length": 431 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-7", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "### Annotation Web Application\n\nAnnotation work summary, web applicatiobn\n\nInput: Database of annotations\n\nOutput: Summary of work performed by each annotator\n\nDone:\n\n- application template (Tomáš Kuchárik)\n- Dockerfile (Daniel Hládek)\n- web application for annotation analysis in Flask (Tomáš Kuchárik, Daniel Hládek)\n- application deployment (Daniel Hládek)\n- extract annotations from question annotation in squad format (Daniel Hladek)", + "text_length": 438 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-8", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "### Annotation Validation\n\nInput: annnotated questions and paragraph\n\nOutput: good annotated questions\n\nDone:\n\n- Recipe for validations (binary annotation for paragraphs, question and answers, text fields for correction of question and answer). (Daniel Hládek)\n- Deployment", + "text_length": 273 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-9", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "## Tasks in progress", + "text_length": 20 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-10", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "### Unanswerable question annotation\n\nInput: validated questions and answers\n\nOutput: Unanswerable questions and answers\n\nDone:\n\n- Annotation manual\n- Annotation interface\n- Database schema modifications\n- Modification of the database application\n- Export of validations\n\nIn progress:\n\n- Annotaion process optimization", + "text_length": 318 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-11", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "### Final Data Export\n\nInput: Validations and unanswerable questions\n\nOutput: Final database in SQUAD format\n\nDone:\n\n- Preliminary export script\n\nTo be done:\n\n- Final export script\n- Database web visualization\n- Prepare development set", + "text_length": 235 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-12", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 12, + "text": "## Resources", + "text_length": 12 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-13", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 13, + "text": "### Bibligraphy\n\n- Reading Wikipedia to Answer Open-Domain Questions, Danqi Chen, Adam Fisch, Jason Weston, Antoine Bordes\nFacebook Research\n- SQuAD: 100,000+ Questions for Machine Comprehension of Text https://arxiv.org/abs/1606.05250\n- [WDaqua](https://wdaqua.eu/our-work/) publications", + "text_length": 288 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-14", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 14, + "text": "### Existing Datasets\n\n- [Squad](https://rajpurkar.github.io/SQuAD-explorer/) The Stanford Question Answering Dataset(SQuAD) (Rajpurkar et al., 2016) \n- [WebQuestions](https://github.com/brmson/dataset-factoid-webquestions)\n- [Freebase](https://en.wikipedia.org/wiki/Freebase)", + "text_length": 281 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-15", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 15, + "text": "## Intern tasks\n\nWeek 1: Intro\n\n- Get acquainted with the project and Squad Database\n- Download the database and study the bibliography\n- Study [Prodigy annnotation](https://Prodi.gy) tool\n- Read [SQuAD: 100,000+ Questions for Machine Comprehension of Text](https://arxiv.org/abs/1606.05250)\n- Read [Know What You Don't Know: Unanswerable Questions for SQuAD](https://arxiv.org/abs/1806.03822)\n\nOutput:\n\n- Short report\n\nWeek 2-4 The System\n\nSelect and train a working question answering system\n\nOutput:\n\n- a deployment script with comments for a selected question answering system \n\nWeek 5-7 The Model\n\nTake a working training recipe (can use English data), a script with comments or Jupyter Notebook\n\nOutput:\n\n- a trained model\n- evaluation of the model (if possible)", + "text_length": 768 + }, + { + "chunk_id": "pages/topics/question/README.md::chunk-16", + "document_path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 16, + "text": "### Question Answering Model\n\nTraining the model with annotated data\n\nInput: An annotated QA database\n\nOutput: An evaluated model for QA\n\nTo be done:\n\n- Selecting existing modelling approach\n- Evaluation set selection\n- Model evaluation\n- Supporting the annotation with the model (pre-selecting answers)\n\nIn progress:\n\n- Preliminary model (Ján Staš and Matej Čarňanský)", + "text_length": 369 + }, + { + "chunk_id": "pages/topics/question/navod/README.md::chunk-0", + "document_path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "Pomôžte nám pri vedeckom výskume tým, že naučíte stroj odpovedať na otázky z Wikipédie. \nUčenie prebieha tak, že vytvoríte príklad s otázkou a odpoveďou. Účasť v tomto experimente Vám pomôže vylepšiť Vaše študijné výsledky a vyhrať televízny kvíz \"Tisícionár\".", + "text_length": 260 + }, + { + "chunk_id": "pages/topics/question/navod/README.md::chunk-1", + "document_path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Návod pre anotátorov\n\nAk chcete, pozrite si [videonávod](https://files.kemt.fei.tuke.sk/predmety/question_answer/navod1.mp4) a [motivačnú prednášku](https://files.kemt.fei.tuke.sk/predmety/usaa/videa/usaa20pr10.mp4) o systémoch na generovanie odpovede na otázku v prirodzenom jazyku.\n\nNajprv sa Vám zobrazí krátky článok. Vašou úlohou bude prečítať si časť článku, vymyslieť k nemu otázku a v texte vyznačiť odpoveď. Na vyznačenie jednej otázky máte asi 50 sekúnd.\n\n1. Prečítajte si článok. Ak článok nie je vyhovujúci ťuknite na červený krížik \"Reject\" (Tab a potom 'x').\n2. Napíšte otázku. Ak neviete napísať otázku, ťuknite na \"Ignore\" (Tab a potom 'i'). \n3. Vyznačte myšou odpoveď. Odpoveď by mala byť čo najstručnejšia. Ak je odpoveď dlhšia alebo máte problém ju celú vyznačiť, stačí vyznačiť prvé a posledné slovo. Ťuknite na zelenú fajku \"Accept\" (klávesa a) a pokračujte ďalšou otázkou k tomu istému článku alebo k novému článku. \n4. Ten istý článok sa Vám zobrazí 5 krát, vymyslite k nemu 5 rôznych otázok. \n5. Ak sa Vám zobrazí hlasenie \"No tasks available\", skúste obnoviť stránku.", + "text_length": 1101 + }, + { + "chunk_id": "pages/topics/question/navod/README.md::chunk-2", + "document_path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Začnite anotovať\n\nDo formulára napíšte Váš e-mail aby bolo možné rozpoznať, kto vykonal anotáciu. \n\n{% include \"forms/form.html.twig\" with { form: forms('question1') } %}\n\nPozrite sa koľko ste anotovali. Súčet sa synchronizuje raz za hodinu:\n\n{% include \"forms/form.html.twig\" with { form: forms('questionapp') } %}", + "text_length": 318 + }, + { + "chunk_id": "pages/topics/question/navod/README.md::chunk-3", + "document_path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Vyradenie nevhodných textov\n\nAk je zobrazený text nevhodný, tak ho zamietnite. Nevhodný text:\n\n- Obsahuje príliš málo faktov na to aby ste napísali 5 otázok.\n- Obsahuje chyby formátovania.\n- Obsahuje príliš veľa zoznamov.\n- Obsahuje málo súvislého textu.\n- Text je príliš dlhý.\n- Ak sa neviete rozhodnúť, radšej text zamietnite aby ste nestrácali čas.\n- Text zamietnite aj v prípade, že sa vám k nemu nezobrazí 1. otázka.", + "text_length": 424 + }, + { + "chunk_id": "pages/topics/question/navod/README.md::chunk-4", + "document_path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Vyznačovanie odpovede\n\nOdpoveď na otázku musí byť jednoliata časť paragrafu. Odpoveď nemôže byť viacero rôznych častí toho istého odseku.\nV prípade, že vyznačíte viac častí jednej odpovede tak sa výsledná odpoveď počíta od začiatku prvej časti po koniec poslednej časti.\nAk Vám používateľské rozhranie nedovoľuje vyznačiť celú odpoveď, tak stačí vyznačiť začiatočné a konečné slovo odpovede.", + "text_length": 394 + }, + { + "chunk_id": "pages/topics/question/navod/README.md::chunk-5", + "document_path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Platné a neplatné anotácie\n\nDo celkového počtu Vami vykonaných anotácií sa nebudú počítať anotácie:\n\n- ktoré ste vyradili z dôvodu nevhodného textu,\n- kde ste zabudli napísať otázku,\n- kde je otázka príliš krátka (menej ako 3 slová),\n- kde nie je vyznačená žiadna odpoveď.\n\nSnažte sa, aby bola anotácia platná aj z významového hľadiska:\n\n- Odpoveď sa musí nachádzať v článku.\n- Otázka musí byť jednoznačná. Jednoznačná otázka je otázka ktorú musíte položiť, aby ste dostali vyznačenú odpoveď.\n\nPríklad na nejednoznačnú otázku:\n\n- Kto sa narodil v roku 1982? (veľa rôznych ľudí).\n- Kto sa umiestnil na druhom mieste na olympiáde? (nie je jasné na ktorej olymiáde a v ktorej disciplíne).", + "text_length": 688 + }, + { + "chunk_id": "pages/topics/question/navod/README.md::chunk-6", + "document_path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Príklad na anotáciu otázok\n\n Lyzozómy sú sférické organely s jednoduchou membránou , ktoré vznikajú v Golgiho aparáte a obsahujú enzýmy kyslých hydroláz. Slúžia na odbúravanie endogénneho a exogénneho materiálu v bunkách a bunkových štruktúrach, ktoré stratili funkčnosť. Tento jav sa označuje ako autofágia. Autofágia je normálny fyziologický proces v každej zdravej bunke. V mŕtvych, alebo nevratne poškodených bunkách membrány lyzozómov praskajú a enzýmy rozložia celý obsah bunky. \n\n1. Čo to je lyzozóm? \n2. Kde vznikajú lyzozómy?\n3. Aké enzýmy obsahuje lyzozóm?\n4. Na čo slúži lyzozóm?\n5. Čo je to autofágia?\n\nPríklad na nesprávu otázku:\n1. Čo je to Golgiho aparát? - odpoveď sa v článku nenachádza.\n2. Čo sa deje v mŕtvych bunkách? - otázka nie je jednoznačná, presná odpoveď sa v článku nenachádza.\n3. Čo je normálny fyziologický proces? - odpoveď sa v článku", + "text_length": 1199 + }, + { + "chunk_id": "pages/topics/question/navod/README.md::chunk-7", + "document_path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "át? - odpoveď sa v článku nenachádza.\n2. Čo sa deje v mŕtvych bunkách? - otázka nie je jednoznačná, presná odpoveď sa v článku nenachádza.\n3. Čo je normálny fyziologický proces? - odpoveď sa v článku nenachádza.", + "text_length": 211 + }, + { + "chunk_id": "pages/topics/question/nezodpovedatelne/README.md::chunk-0", + "document_path": "pages/topics/question/nezodpovedatelne/README.md", + "title": "Tvorba nezodpovedateľných otázok", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": false, + "chunk_index": 0, + "text": "Pomôžte nám pri vedeckom výskume tým, že naučíte stroj odpovedať na otázky z Wikipédie. \nÚčasť v tomto experimente Vám pomôže vylepšiť Vaše študijné výsledky a vyhrať televízny kvíz \"Tisícionár\".\nHotová nezodpovedateľná otázka a odpoveď bude slúžiť ako negatívny príklad pre učenie systému pre automatické odpovede. Vďaka negatívnym príkladom bude možné lepšie rozlíšiť, ktoré odpovede systému sú nerelevantné k danému odseku.\n\nAk chcete, pozrite si [motivačnú prednášku](https://files.kemt.fei.tuke.sk/predmety/usaa/videa/usaa20pr10.mp4) o systémoch na generovanie odpovede na otázku v prirodzenom jazyku.", + "text_length": 608 + }, + { + "chunk_id": "pages/topics/question/nezodpovedatelne/README.md::chunk-1", + "document_path": "pages/topics/question/nezodpovedatelne/README.md", + "title": "Tvorba nezodpovedateľných otázok", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": false, + "chunk_index": 1, + "text": "# Úloha\n\nVašou úlohou bude vymýšľanie \"nezodpovedateľných\" otázok k zobrazenému odseku.\nNezodpovedateľná otázka by mala vyzerať relevantne a obsahovať podobné slová aké sú v zobrazenom odseku. V aktuálnom odseku by mala existovať uspokojivá ale nesprávna odpoveď na nezodpovedateľnú otázku.\n\nNezodpovedateľná otázka musí mať tieto vlastnosti: \n\n- je gramaticky správna.\n- obsahuje slová ktoré sa nachádzajú v odseku.\n- v odseku sa nenachádza správna odpoveď na nezodpovedateľnú otázku, nemusí vôbec existovať.\n- v odseku sa nachádza gramaticky správna, ale významovo nesprávna odpoveď.\n- odpoveď by mala byť stručná.", + "text_length": 616 + }, + { + "chunk_id": "pages/topics/question/nezodpovedatelne/README.md::chunk-2", + "document_path": "pages/topics/question/nezodpovedatelne/README.md", + "title": "Tvorba nezodpovedateľných otázok", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": false, + "chunk_index": 2, + "text": "# Pracovný postup\n\nV úlohe sa vám zobrazí odsek a príklad na zodpovedateľnú otázku. Príklad môžete využiť ako inšpiráciu alebo môžete vymyslieť úplne inú nezodpovedateľnú otázku.\n\nAk využijete ponúkanú zodpovedateľnú otázku, tak nezodpovedateľnú otázku vytvoríte:\n\n- Negáciou slovesa otázky.\n- Pridaním antonymu (protikladu) namiesto niektorého podstatného mena.\n- Výmenou pomenovanej entity (vlastného podstatného mena) za iné.\n- Pridaním nemožnej podmienky k otázke, napr. času alebo spôsobu.\n\nV odseku vyznačte uspokojivú odpoveď na položenú otázku.\n\n- Uspokojivá odpoveď musí gramaticky sedieť s otázkou.\n- Uspokojivá odpoveď môže byť významovo nesprávna.\n\nPríklad:\n\nOdsek o Dominike Cibuľkovej:\n\n\nDominika Cibulková reprezentovala Slovensko ako tímová jednotka vo fedcupovom stretnutí prvého kola Svetovej skupiny proti Nemecku . V sobotu 8 . februára nastúpila na úvodný zápas stretnutia proti nemeckej tímovej dvojke Andrei Pekovicovej , ale prehrala 1:2 na sety ( 6:2 , 6:7 ( 7:9 ) , 2:6 )\n\n\nZodpovedateľná otázka a odpoveď ako príklad:\n\n- Koho reprezentovala Cibuľková vo Fedcupovom stretnutí? :Slovensko\n- Proti komu prehrala Dominika Cibuľková na úvodnom zápase Fedcupu?: proti neme", + "text_length": 1200 + }, + { + "chunk_id": "pages/topics/question/nezodpovedatelne/README.md::chunk-3", + "document_path": "pages/topics/question/nezodpovedatelne/README.md", + "title": "Tvorba nezodpovedateľných otázok", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": false, + "chunk_index": 3, + "text": "\n\nZodpovedateľná otázka a odpoveď ako príklad:\n\n- Koho reprezentovala Cibuľková vo Fedcupovom stretnutí? :Slovensko\n- Proti komu prehrala Dominika Cibuľková na úvodnom zápase Fedcupu?: proti nemeckej tímovej dvojke Andrei Pekovicovej\n\nNezodpovedateľná otázka a uspokojivá odpoveď:\n\n- Koho reprezentovala Cibuľková na olympiáde? : Slovensko\n- Kto porazil Andreu Pekovičovú na úvodnom zápase Fedcupu?: Dominika Cibuľková", + "text_length": 423 + }, + { + "chunk_id": "pages/topics/question/nezodpovedatelne/README.md::chunk-4", + "document_path": "pages/topics/question/nezodpovedatelne/README.md", + "title": "Tvorba nezodpovedateľných otázok", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": false, + "chunk_index": 4, + "text": "# Začnite anotovať\n\nDo formulára napíšte Váš e-mail aby bolo možné rozpoznať, kto vykonal anotáciu. \n\n{% include \"forms/form.html.twig\" with { form: forms('question3') } %}\n\nPozrite sa koľko ste anotovali. Súčet sa synchronizuje raz za hodinu:\n\n{% include \"forms/form.html.twig\" with { form: forms('questionapp') } %}", + "text_length": 317 + }, + { + "chunk_id": "pages/topics/question/validacie/README.md::chunk-0", + "document_path": "pages/topics/question/validacie/README.md", + "title": "Validácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "Pomôžte nám pri vedeckom výskume tým, že naučíte stroj odpovedať na otázky z Wikipédie. \nUčenie prebieha tak, že vytvoríte príklad s otázkou a odpoveďou. Účasť v tomto experimente Vám pomôže vylepšiť Vaše študijné výsledky a vyhrať televízny kvíz \"Tisícionár\".\n\nAk chcete, pozrite si [motivačnú prednášku](https://files.kemt.fei.tuke.sk/predmety/usaa/videa/usaa20pr10.mp4) o systémoch na generovanie odpovede na otázku v prirodzenom jazyku.", + "text_length": 442 + }, + { + "chunk_id": "pages/topics/question/validacie/README.md::chunk-1", + "document_path": "pages/topics/question/validacie/README.md", + "title": "Validácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "# Úloha\n\nVašou úlohou bude overiť, či je napísaná otázka a odpoveď správna.\nVýsledkom Vašej práce by mala byť kvalitná databáza otázok a odpovedí.\n\nKvalitná otázka s odpoveďou:\n\n- Otázka je jednoznačná - pomocou otázky je možné vyhľadať aktuálny odsek.\n- Otázka má zmysel a odpoveď odpovedá na položenú otázku. \n- Otázka aj odpoveď je gramaticky a pravopisne správna.\n- Na otázku sa dá odpovedať s použitím aktuálneho odseku.\n- Otázka musí gramaticky sedieť s odpoveďou.\n- Odpoveď musí byť stručná. Mala by zodpovedať otázku s použitím čo najmenšieho počtu slov.", + "text_length": 562 + }, + { + "chunk_id": "pages/topics/question/validacie/README.md::chunk-2", + "document_path": "pages/topics/question/validacie/README.md", + "title": "Validácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "# Pracovný postup\n\nVaše pracovné prostredie bude vyzerať asi takto.\n\n![validation](validation-explanation.png)\n\nOdporúčaný pracovný postup:\n\n1. Prečítajte si otázku a odpoveď.\n2. Ak je to potrebné tak upravte odpoveď tak, aby zodpovedala otázku. Ak máte ťažkosti s vyznačením celej odpovede tak stačí vyznačiť prvé a posledné slovo. \n3. Ak je odpoveď príliš dlhá, upravte ju tak zodpovedala otázku s použitím najmenšieho počtu slov.\n3. Doplňte do otázky predmet ak to je potrebné aby bola otázka jednoznačná.\nPredmet sa spravidla nachádza v nadpise odseku.\n4. Ak gramatický tvar otázky nesedí tak otázku preformulujte tak aby sedela s odpoveďou.\n5. Ak sa v otázke nachádzajú pravopisné chyby alebo preklepy tak ich opravte.\nSlová mimo slovníka sú v otázke vyznačené červenou.\n6. Ak je otázka \"neopraviteľná\" alebo nemá zmysel tak ju zamietnite.", + "text_length": 844 + }, + { + "chunk_id": "pages/topics/question/validacie/README.md::chunk-3", + "document_path": "pages/topics/question/validacie/README.md", + "title": "Validácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "# Začnite anotovať\n\nDo formulára napíšte Váš e-mail aby bolo možné rozpoznať, kto vykonal anotáciu. \n\n{% include \"forms/form.html.twig\" with { form: forms('question2') } %}\n\nPozrite sa koľko ste anotovali. Súčet sa synchronizuje raz za hodinu:\n\n{% include \"forms/form.html.twig\" with { form: forms('questionapp') } %}", + "text_length": 317 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-0", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Slovenské jazykové zdroje", + "text_length": 27 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-1", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "### POS\n\n[Multext East](http://nl.ijs.si/ME/) Anotovaný román George Orwell 1984 v 15 európskych jazykoch", + "text_length": 106 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-2", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "### NER\n\n- Learning multilingual named entity recognition from Wikipedia- WIKI Ner?\n- Cross-lingual Name Tagging and Linking for 282 Languages - NER anotácia aj slovenskej Wikipédie podľa anglickej\n - https://drive.google.com/drive/folders/1bkK6ly_awxe9IgAKL16VVvCtjcYcDSw8\n - https://elisa-ie.github.io/wikiann/", + "text_length": 320 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-3", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "### Parsing-POS\n\n[Slovak Dependency Treebank](https://lindat.mff.cuni.cz/repository/xmlui/handle/11234/1-1822)\n\nhttps://github.com/UniversalDependencies/UD_Slovak-SNK\n\n[Artificial Treebank with Ellipsis](https://lindat.mff.cuni.cz/repository/xmlui/handle/11234/1-2616)", + "text_length": 268 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-4", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "### Wordnet\n\n[Slovak Word Net](https://korpus.sk/WordNet.html)", + "text_length": 62 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-5", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "### Parallel Corpus\n\nEuroparlament\n\n[Czech-Slovak Parallel Corpus](https://lindat.mff.cuni.cz/repository/xmlui/handle/11858/00-097C-0000-0006-AADF-0)\n\n[English-Slovak Parallel Corpus](https://lindat.mff.cuni.cz/repository/xmlui/handle/11858/00-097C-0000-0006-AAE0-A)\n\n[Multext East](http://nl.ijs.si/ME/)", + "text_length": 304 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-6", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "### Sentiment\n\n[Twitter sentiment for 15 European languages](https://www.clarin.si/repository/xmlui/handle/11356/1054)", + "text_length": 118 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-7", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "### Web\n\n- [Aranea](http://ucts.uniba.sk/aranea_about/)\n- [SkTenTen](https://www.sketchengine.eu/sktenten-slovak-corpus/) automaticky POS anotovaný, prístup cez web rozhranie\n- [CommonCrawl](https://commoncrawl.org/2020/03/february-2020-crawl-archive-now-available/) Obsahuje aj slovenské dáta?\n- [Oscar](https://traces1.inria.fr/oscar/) klasifikácia a deduplikácia dát z COmmonCrawl, aj pre slovenčinu (4.5 GB dedub, 665M slov dedup.)", + "text_length": 435 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-8", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "### Wikipedia\n\n[Wikipedia vo formáte JSON Elasticsearch Bulk](https://dumps.wikimedia.org/other/cirrussearch/current/)", + "text_length": 118 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-9", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 9, + "text": "### Word Embedding\n\n- [FastText Word Embedding from Common Crawl](https://fasttext.cc/docs/en/crawl-vectors.html)\n- [FastText Word Embedding from Wikipedia](https://fasttext.cc/docs/en/pretrained-vectors.html)", + "text_length": 209 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-10", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 10, + "text": "### Databázy zdrojov\n\nhttps://github.com/slovak-nlp/resources\n\nhttps://www.clarin.eu/portal\n\nhttps://www.clarin.eu/resource-families/manually-annotated-corpora\n\nhttp://www.meta-share.org/\n\nhttps://korpus.sk/res.html\n\nSlovak Stemming https://www.mediawiki.org/wiki/User:TJones_(WMF)/Notes/Slovak_Stemmer_Analysis", + "text_length": 311 + }, + { + "chunk_id": "pages/topics/resources/README.md::chunk-11", + "document_path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 11, + "text": "### Tools\n\n- [Spacy](https://spacy.io/), tokenizer, stopwords, custom model\n- [Slovak Lexer](https://github.com/hladek/slovak-lexer) / tokenizer\n- [Slovak Elasticsearch](https://github.com/essential-data/elasticsearch-sk) - stopwords, stemmer\n- [Slovak Hunspell](https://github.com/essential-data/hunspell-sk) - stemmer, spelling", + "text_length": 329 + }, + { + "chunk_id": "pages/topics/seq2seq/README.md::chunk-0", + "document_path": "pages/topics/seq2seq/README.md", + "title": "Prepis postupností", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Sequence to sequence\n\n[Fairseq](https://github.com/pytorch/fairseq) je riadkový nástroj pre spracovanie prirodezného jazyka naprogramovaný v jazyku Python využívajúci neurónové siete.\nVie sa na príkladoch naučiť ako prepisovať jednu postupnosť ľubovoľných symbolov (znakov alebo slov) na inú postuponosť.", + "text_length": 307 + }, + { + "chunk_id": "pages/topics/seq2seq/README.md::chunk-1", + "document_path": "pages/topics/seq2seq/README.md", + "title": "Prepis postupností", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Transformer\n\nNiektoré zaujímavé odkazy na tému sequence to sequence:\n\nhttps://github.com/pytorch/fairseq\n\nhttp://jalammar.github.io/illustrated-transformer/\n\nhttps://arxiv.org/abs/1706.03762", + "text_length": 193 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-0", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "[Trénovanie modelov Spacy](https://spacy.io/usage/training)", + "text_length": 59 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-1", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Ciele\n\n- Vytvoriť modul v jazyku Python pre podporu slovenčiny\n- Natrénovať štatistické modely:\n - pre morfologickú analýzu \n - rozpoznávanie pomenovaných entít\n- Unifikovaný systém pre predspracovanie slovenského jazyka\n- Možné aplikácie:\n - Podporiť dialógový systém RASA\n - Neurónové vyhľadávanie", + "text_length": 313 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-2", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 2, + "text": "## Hotové úlohy\n\n- trénovanie modelu Spacy 2, kompletné skripty\n- trénovanie modelu Spacy 3 do SNK POS tagsetu (ver. 3.0), kompletné skripty\n- trénovanie modelu Spacy 3 do UD tagsetu (ver. 3.1.), kompletné skripty\n- zahrnuté slovné vektory Fasttext Common Crawl\n- Trénovanie Dependency, POS pomocu UD Corpus\n- Trénovanie NER pomocou automatického korpusu WikiNER (druhý model).", + "text_length": 377 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-3", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 3, + "text": "## Budúce úlohy\n\n- Zahrnúť predtrénované modely (MultilingualBert, SlovakBert....).\n- Nájsť optimálne hyperparametre.\n- Zostaviť korpus pomenovaných entít.\n- Zaradiť model do oficiálnej distribúcie Explosion AI, podmienka je vlastný korpus pomenovaných entít.", + "text_length": 259 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-4", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 4, + "text": "## Neprioritné úlohy (zásobník)\n\n- Zaradiť vlastné WordEmbedding (fasttext).\n- Pridať lexikálne pravidlá (skratky, stop slová) do oficiálnej distrubúcie Spacy. \n- Zaradiť MultextEast do trénovania. Tam je ale potrebné konvertovať tagy do UD, napr. pomocou [Interset](https://github.com/dan-zeman/interset)", + "text_length": 305 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-5", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 5, + "text": "## Súvisiace projekty\n\n- Anotácia pomenovaných entít pomocu frameworku [Prodigy](/topics/named-entity).\n- [Predtrénovanie jazykového modelu](/topics/bert)", + "text_length": 154 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-6", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 6, + "text": "## Repozitár\n\n- https://github.com/hladek/spacy-skmodel\n- [Repozitár Jozef Olekšák](https://git.kemt.fei.tuke.sk/jo673fv/sk-spacy)(slovenské stop words a pravidlá)\n- https://files.kemt.fei.tuke.sk/minio/models/spacy/ Hotové spacy modely", + "text_length": 236 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-7", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 7, + "text": "## Ľudia\n\n- [Maroš Harahus](/students/2016/maros_harahus) (štatistické značkovanie)\n- [Kristián Sopkovič](/students/2019/kristian_sopokovic) (vylepšenie parametrov, transformery)", + "text_length": 178 + }, + { + "chunk_id": "pages/topics/spacy/README.md::chunk-8", + "document_path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 8, + "text": "## Ukončené projekty\n\n- Jozef Olekšák (slovenské stop words a pravidlá),\n- [Lukáš Pokrývka](/students/2016/lukas_pokryvka) (Word Embedding Modely)\n- [Martin Wencel](/students/2018/martin_wencel) demo aplikácia", + "text_length": 209 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-0", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 0, + "text": "# AI4Steel", + "text_length": 10 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-1", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 1, + "text": "## Cieľ\n\n- Návrh modelu zloženia tavnej zmesi v konvertore s využitím hlbokých neurónových sietí", + "text_length": 97 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-2", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 2, + "text": "## Riešitelia\n\n- [Maroš Harahus](/students/2016/maros_harahus)\n- Lukáš Hruška", + "text_length": 77 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-3", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 3, + "text": "## Metódy\n\n- klasické (štatistické) metódy predikcie postupností a predikcie časových radov.\n- modelovanie pomocou hlbokých neurónových sietí (RNN, LSTM, VAE, CNN, Transformer, GNN, GAN)\n- https://en.m.wikipedia.org/wiki/Basic_oxygen_steelmaking\n- Time Series Prediction\n- Markov Decision Process?\n- Možné nástroje: Keras, Pytorch Lightning ...", + "text_length": 344 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-4", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 4, + "text": "## Stretnutia", + "text_length": 13 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-5", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 5, + "text": "## Úlohy\n\n- Pochopiť modelovaný proces a zostaviť podrobný prehľad metód modelovania a možných overovacích množin.\n- Predpripraviť dáta\n- Vybrať vhodnú sadu nástrojov, zostaviť a vyhodnotiť model.\n- Overiť model v praxi", + "text_length": 219 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-6", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 6, + "text": "## Harmonogram\n\n(zatiaľ bez termínov)", + "text_length": 37 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-7", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 7, + "text": "### Fáza teoretickej prípravy\n\nVo fáze teoretickej prípravy sa zameriame na pochopenie technologického procesu výroby ocele. Absolvujeme osobnú exkurziu v železiarni a porozprávame sa s pracovníkmi pri tavbe. V oblasti dátovej analytiky sa oboznámime so základnými predikcie postupností a predikcie časových radov klasickými metódami aj metódami pomocou neurónových sietí. Vypracujeme prehľadový článok kde zhrnieme aktuálne vedecké práce na túto tému.", + "text_length": 452 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-8", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 8, + "text": "### Fáza prípravy dát\n\nZhromaždíme všetky dostupné dáta z technologického procesu a konvertujeme ich do strojovo ľahko čitateľnej formy. Očistíme ich od šumu a doplníme chýbajúce hodnoty.\n\nAnalyzujeme dáta aby sme identifikovali závislé a nezávislé veličiny, ich dátový typy a jednotky. Z očistených dát zostavíme trénovaciu a vyhodnocovaciu množinu. Navrhneme vhodnú metódu a metriku vyhodnotenia. Identifikujeme vhodné softvérové prostriedky a knižnice.", + "text_length": 455 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-9", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 9, + "text": "### Fáza modelovania\n\nNavrhneme a implementujeme prvotný model. Na základy prvých výsledkov budeme skúšať rôzne metódy reprezentácie pomocou vektorovej formy – kódovanie do jednotkového vektora, zníženie rozmeru matice alebo kvantizáciu. Vyskúšame rôzne spôsoby modelovania založené na štatistike aj na neurónových sieťach. Začneme vyvíjať používateľskú aplikáciu pre nasadenie modelu do praxe. Predbežné výsledky budeme publikovať a konzultovať s odborníkmi z praxe.", + "text_length": 467 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-10", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 10, + "text": "### Fáza nasadenia\n\nModel, ktorý dosiahne najlepšie výsledky v simulácii skúsime overiť v praxi. Dokončíme aplikáciu pre podporu rozhodovania pri technologickom procese. Zozbierame spätnú väzbu od pracovníkov tavby a podľa toho vylepšíme model a aplikáciu.", + "text_length": 256 + }, + { + "chunk_id": "pages/topics/steel/README.md::chunk-11", + "document_path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "author": null, + "published": null, + "chunk_index": 11, + "text": "### Fáza vyhodnotenia a prezentácie výsledkov:\n\nOdmeriame vplyv nového modelu na technologický proces. Zorganizujeme PR aktivity (tlačovú konferencium, PR články, reportáže) pre prezentovanie výsledkov projektu. Prezentujeme finálne výsledky na konferenciách a v časopisoch.", + "text_length": 274 + }, + { + "chunk_id": "pages/topics/translation/README.md::chunk-0", + "document_path": "pages/topics/translation/README.md", + "title": "Strojový preklad", + "categories": [ + "project" + ], + "tags": [ + "translation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 0, + "text": "# Strojový preklad\n\n- Štatistický strojový preklad\n- Neurónový strojový preklad", + "text_length": 79 + }, + { + "chunk_id": "pages/topics/translation/README.md::chunk-1", + "document_path": "pages/topics/translation/README.md", + "title": "Strojový preklad", + "categories": [ + "project" + ], + "tags": [ + "translation" + ], + "author": "Daniel Hladek", + "published": true, + "chunk_index": 1, + "text": "## Študenti\n\n- [Patrik Pavlišin](/students/2016/patrik_pavlisin)\n- [Dominik Nagy](/students/2016/dominik_nagy)\n- [Martin Jancura](/students/2017/martin_jancura)", + "text_length": 160 + } +] \ No newline at end of file diff --git a/data/documents.json b/data/documents.json new file mode 100644 index 0000000..05515e9 --- /dev/null +++ b/data/documents.json @@ -0,0 +1,4482 @@ +[ + { + "path": "pages/interns/bogdan_paul_chis/README.md", + "title": "Bogdan Paul Chiș", + "categories": [ + "erasmus" + ], + "tags": [ + "nlp", + "ie", + "rag", + "medical" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "erasmus" + ], + "tag": [ + "nlp", + "ie", + "rag", + "medical" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Bogdan Paul Chiș", + "published": true, + "taxonomy": { + "category": [ + "erasmus" + ], + "tag": [ + "nlp", + "ie", + "rag", + "medical" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "ERASMUS Intern Spring 2026, 20 March - 21 May (62 days)\n\nTopic:\n\n(multilingual) Triplet extraction from medical data\n\nGoal:\n\n- Construct a knowledge graph from medical package inserts in multiple languages\n- Utilize the graph in an intelligent agent that recommends medication.\n\nTasks:\n\n- Learn intelligent agents and generative models - OpenAI API, Agent frameworks, RAG systems.\n- Learn about knowledge graphs and GraphRAG. Read several research papers.\n- Find several existing drug knowledge datab", + "content_length": 1063 + }, + { + "path": "pages/interns/cesar_gutierrez/README.md", + "title": "Cesar Abascal Gutierrez", + "categories": [ + "iaeste" + ], + "tags": [ + "ner", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "iaeste" + ], + "tag": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Cesar Abascal Gutierrez", + "published": true, + "taxonomy": { + "category": [ + "iaeste" + ], + "tag": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "## Named entity annotations\n\nIntern, probably summer 2019\n\nCesar Abascal Gutierrez \n\n## Goals\n\n - Be able to recognize unknown named entities\n - Create a manually annotated training set from speech transcripts\n - Propose an annotation schema\n\n\n## Plan\n\n - Convert speech transcripts into a training set\n - Train and evaluate classifier\n - Establish manual annotation \n - Select unannotated data \n\n### Data preparation\n\nInput: Transcriber transcripts with inconsisten", + "content_length": 946 + }, + { + "path": "pages/interns/oliver_pejic/README.md", + "title": "Oliver Pejic", + "categories": [ + "iaeste" + ], + "tags": [ + "hatespeech", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "iaeste" + ], + "tag": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Oliver Pejic", + "published": true, + "taxonomy": { + "category": [ + "iaeste" + ], + "tag": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "Oliver Pejic\n\nIAESTE Intern Summer 2024, 12 weeks in August, September and October.\n\nGoal:\n \n- Help with the [Hate Speech Project](/topics/hatespeech)\n- Help with evaluation of sentence transformer models using toolkit [MTEB](https://github.com/embeddings-benchmark/mteb) \n\nFinal Tasks:\n\n- Prepare an MTEB evaluation task for [Slovak HATE speech](https://huggingface.co/datasets/TUKE-KEMT/hate_speech_slovak).\n- Prepare an MTEB evaluation task for [Slovak question answering](https://huggingface.co/d", + "content_length": 2138 + }, + { + "path": "pages/interns/sevval_bulburu/README.md", + "title": "Sevval Bulburu", + "categories": [ + "iaeste" + ], + "tags": [ + "hatespeech", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "iaeste" + ], + "tag": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Sevval Bulburu", + "published": true, + "taxonomy": { + "category": [ + "iaeste" + ], + "tag": [ + "hatespeech", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "Sevval Bulburu\n\n\nIAESTE Intern Summer 2023, two months\n\nGoal: Help with the [Hate Speech Project](/topics/hatespeech)\n\nMeeting 12.10.2023\n\n[Github Repo with results](https://github.com/sevvalbulburu/Hate_Speech_Detection_Slovak)\n\nState:\n\n- 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.\n- Manually adjusted the slovak HS dataset. Slovak dataset is not balanced. Tried some methods for \"balancing\" the ", + "content_length": 4046 + }, + { + "path": "pages/interns/yussef_ressaissi/README.md", + "title": "Youssef Ressaissi", + "categories": [ + "iaeste" + ], + "tags": [ + "summarization", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "iaeste" + ], + "tag": [ + "summarization", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Youssef Ressaissi", + "published": true, + "taxonomy": { + "category": [ + "iaeste" + ], + "tag": [ + "summarization", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "IAESTE Intern Summer 2025, 1.7. - 31.8.2025\n\nGoal: Evaluate and improve language models for summarization in Slovak medical or legal domain.\n\nResults:\n\n- [Report](https://git.kemt.fei.tuke.sk/yr804he/summarization25/src/branch/main/)Evaluating%20and%20Improving%20Language%20Models%20for%20Summarization%20in%20the%20Slovak%20Medical%20Domain.pdf\n- [Repo, Počítanie objektívnych metrík](https://git.kemt.fei.tuke.sk/yr804he/summarization25)\n- Dotrénovanie Gemma, Slovak Mistral 7b na sumarizáciu: htt", + "content_length": 5531 + }, + { + "path": "pages/students/2016/darius_lindvai/README.md", + "title": "Dárius Lindvai", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "nn", + "interpunction", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Dárius Lindvai", + "published": true, + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "nn", + "interpunction", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Dárius Lindvai\nRok začiatku štúdia: 2016\n\nRepozitár so [zdrojovými kódmi](https://git.kemt.fei.tuke.sk/dl874wn/dp2021)\n\nNázov: Obnovenie interpunkcie pomocou hlbokých neurónových sietí\n\n1. Vypracujte prehľad metód na obnovenie interpunkcie pomocou neurónových sietí.\n2. Vyberte vhodnú metódu obnovenia interpunkcie pomocou neurónových sietí.\n3. Pripravte množinu dát na trénovanie neurónovej siete, navrhnite a vykonajte sadu experimentov s rôznymi parametrami.\n4. Vyhodnoťte experimenty a navrhnit", + "content_length": 4690 + }, + { + "path": "pages/students/2016/darius_lindvai/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "## Update 05.06.2020\n- pridaný čas začiatku a čas ukončenia trénovania, aby bolo možné určit, ako dlho trénovanie trvalo\n- upravený skript na úpravu textu do vhodnej podoby (skombinoval som môj vlastný skript s jedným voľne dostupným na internete, aby bola úprava textu presnejšia)\n- pridaný tag na identifikáciu čísel v texte (\"N\"), čo by teoreticky mohlo zvýšiť presnosť modelu\n- vyriešený výpočet precision, recall a f-score (problém som vyriešil tak, že som najprv zo skutočných hodnôt urobil ten", + "content_length": 1561 + }, + { + "path": "pages/students/2016/darius_lindvai/timovy_projekt/resers/README.md", + "title": "Novinky v oblasti “Punctuation Restoration”", + "categories": [ + "tp2020" + ], + "tags": [ + "interpunction", + "nlp" + ], + "published": true, + "author": "Dárius Lindvai", + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai" + }, + "metadata": { + "title": "Novinky v oblasti “Punctuation Restoration”", + "published": true, + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "interpunction", + "nlp" + ], + "author": "Dárius Lindvai" + } + }, + "content_preview": "# Novinky v oblasti “Punctuation Restoration”\n\nKeďže interpunkcia a veľké písmená v slovách nemajú vplyv na výslovnosť slov, sú z výstupu **ASR** (*automatic speech recognition = automatické rozpoznávanie reči*) odstraňované, výsledkom čoho sú iba sekvencie slov alebo písmen. Systémy vykonávajúce doplňovanie **interpunkčných znamienok** a veľkých písmen sú potrebné najmä preto, lebo tieto výstupy bez interpunkcie a veľkých písmen väčšinou pre ľudí nie sú zrozumiteľné (v textovej forme). Interpun", + "content_length": 6437 + }, + { + "path": "pages/students/2016/darius_lindvai/timovy_projekt/tutorial/README.md", + "title": "PYTORCH - LSTM TUTORIÁL", + "categories": [ + "tp2020" + ], + "tags": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "published": true, + "author": "Dárius Lindvai", + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai" + }, + "metadata": { + "title": "PYTORCH - LSTM TUTORIÁL", + "published": true, + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "python", + "lstm", + "nn", + "nlp", + "pytorch", + "anaconda" + ], + "author": "Dárius Lindvai" + } + }, + "content_preview": "# PYTORCH - LSTM TUTORIÁL\n\n### Čo je to Pytorch?\n\n[Pytorch](https://pytorch.org/) je open-source knižnica založená na knižnici Torch a určená primárne na účely strojového učenia (*machine learning*) a hĺbkového učenia (*deep learning*). Táto knižnica sa najčastejšie používa v kombinácii s jazykom **Python**, avšak je možné ju použiť aj s jazykom C++. Jej najväčšie využitie je v oblasti Spracovania prirodzeného jazyka (NLP). Je vyvíjaná hlavne výskumným tímom Facebooku pre umelú inteligenciu (FAI", + "content_length": 9167 + }, + { + "path": "pages/students/2016/dominik_nagy/README.md", + "title": "Dominik Nagy", + "categories": [ + "dp2022", + "bp2019" + ], + "tags": [ + "translation", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2022", + "bp2019" + ], + "tag": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Dominik Nagy", + "published": true, + "taxonomy": { + "category": [ + "dp2022", + "bp2019" + ], + "tag": [ + "translation", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Dominik Nagy\n\n*Rok začiatku štúdia*: 2016\n\n## Diplomová práca 2022\n\n[GIT repozitár](https://git.kemt.fei.tuke.sk/dn161mb/dp2022)\n\n*Názov diplomovej práce*: Neurónový strojový preklad pomocou knižnice Fairseq\n\n*Meno vedúceho*: Ing. Daniel Hládek, PhD.\n\n*Zadanie diplomovej práce*: \n\n1. Vypracujte teoretický prehľad metód neurónového strojového prekladu.\n2. Podrobne opíšte vybranú metódu neurónového strojového prekladu. \n3. Natrénujte viacero modelov pre strojový preklad pomocou nástroja Fairseq ", + "content_length": 6053 + }, + { + "path": "pages/students/2016/dominik_nagy/timovy_projekt/README.md", + "title": "Sequence-to-sequence", + "categories": [ + "tp2020" + ], + "tags": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "published": true, + "author": "Dominik Nagy", + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy" + }, + "metadata": { + "title": "Sequence-to-sequence", + "published": true, + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "nn", + "seq2seq", + "translation", + "nlp" + ], + "author": "Dominik Nagy" + } + }, + "content_preview": "# Sequence-to-sequence\n\nHlboké neurónové siete (Deep Neural Networks – DNN) sú veľmi výkonné modely strojového\nučenia, ktoré sú určené na riešenie zložitých problémov, ako je rozpoznávanie reči či vizuálnych objekov.\nHlboké neurónové siete môžu vykonávať ľubobovoľný paralelný výpočet na malý počet krokov. Veľké\nDNN môžu byť trénované pokiaľ máme dostupné obrovské množstvo dát. Napriek svojej flexibilite a sile,\nhlboké neurónové siete sa dajú aplikovať iba na problémy, ktorých vstupy môžu byť roz", + "content_length": 6275 + }, + { + "path": "pages/students/2016/ediz_morochovic/README.md", + "title": "Ediz Morochovič", + "categories": [ + "bp2019" + ], + "tags": [ + "ner", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2019" + ], + "tag": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Ediz Morochovič", + "published": true, + "taxonomy": { + "category": [ + "bp2019" + ], + "tag": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Ediz Morochovič\n\nRok začiatku štúdia: 2016\n\n# Bakalárska práca 2019\n\nNázov bakalárskej práce: Štatistické rozpoznávanie pomenovaných entít\n\nMeno vedúceho: Ing. Daniel Hládek, PhD.\n\nZadanie bakalárskej práce: \n1. Vypracujte prehľad štatistických metód identifikácie pomenovaných entít v texte.\n2. Podrobne opíšte zvolenú metódu identifikácie pomenovaných entít v texte\n3. Zvoľte si vhodnú metodiku vyhodnotenia a na vhodnej testovacej množine navrhnite a vykonajte sadu experimentov.\n4. Na základe v", + "content_length": 1236 + }, + { + "path": "pages/students/2016/jakub_maruniak/README.md", + "title": "Jakub Maruniak", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Jakub Maruniak", + "published": true, + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "spacy", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Jakub Maruniak\n\n*Rok začiatku štúdia*: 2016\n\n*Návrh na názov DP*:\n\nAnotácia a rozpoznávanie pomenovaných entít v slovenskom jazyku.\n\n[CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=ECC3D3F0B3159C4F3217EC027BE4)\n\n1. Vypracujte teoretický úvod, kde vysvetlíte čo je to rozpoznávanie pomenovaných entít a akými najnovšími metódami sa robí. Vysvetlite, ako pracuje klasifikátor pre rozpoznávanie pomenovaných entít v knižnici Spacy. \n2. Pripravte postup na anotáciu textového korpusu pre systém Pr", + "content_length": 8383 + }, + { + "path": "pages/students/2016/jakub_maruniak/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "## Diplomový projekt 2 2020\nStav:\n- aktualizácia anotačnej schémy (jedná sa o testovaciu schému s vlastnými dátami)\n- vykonaných niekoľko anotácii, trénovanie v Prodigy - nízka presnosť = malé množstvo anotovaných dát. Trénovanie v spacy zatiaľ nefunguje.\n- Štatistiky o množstve prijatých a odmietnutých anotácii získame z Prodigy: prodigy stats wikiart. Zatiaľ 156 anotácii (151 accept, 5 reject). Na získanie prehľadu o množstve anotácii jednotlivých entít potrebujeme vytvoriť skript.\n- Prehľad l", + "content_length": 2188 + }, + { + "path": "pages/students/2016/jakub_maruniak/dp2021/annotation/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "## Diplomový projekt 2 2020\n\n- vytvorenie a spustenie docker kontajneru\n\n\n```\n./build-docker.sh\nwinpty docker run --name prodigy -it -p 8080:8080 -v C://Users/jakub/Desktop/annotation-master/annotation/work prodigy bash\n```\n\n\n\n\n### Spustenie anotačnej schémy\n- `dataminer.csv` články stiahnuté z wiki\n- `cd ner`\n- `./01_text_to_sent.sh` spustenie skriptu *text_to_sent.py*, ktorý rozdelí články na jednotlivé vety\n- `./02_ner_manual.sh` spustenie manuálneho anotačného procesu pre NER \n- `./03_expor", + "content_length": 2413 + }, + { + "path": "pages/students/2016/jakub_maruniak/dp2021/train_experiments/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "# Trénovacie experimenty\n\nDo tohto súboru sa budú postupne zapisovať štatistiky a poznámky ku vykonaným trénovacím experimentom.\n\nV rámci experimentu pracujeme s dvomi databázami:\n - Wikiart - vlastná anotovaná databáza článkov. Každý článok = 1 veta.\n - Skner - anotovaná databáza z https://skner.tukekemt.xyz/ . Počet viet v jednotlivých článkoch je rôzny.\n### Trénovanie Wikiart\n1. Experiment - trénovanie modelu pomocou databázy Wikiart\n\n![1.Wikiart](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/raw/", + "content_length": 3261 + }, + { + "path": "pages/students/2016/jakub_maruniak/timovy_projekt/README.md", + "title": "Crowdsourcing", + "categories": [ + "tp2020" + ], + "tags": [ + "annotation", + "nlp" + ], + "published": true, + "author": "Jakub Maruniak", + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak" + }, + "metadata": { + "title": "Crowdsourcing", + "published": true, + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "annotation", + "nlp" + ], + "author": "Jakub Maruniak" + } + }, + "content_preview": "**Crowdsourcing**\n\nČo je to crowdsourcing? Výraz _crowdsourcing_ bol prvý krát použitý v júni 2006, kedy editor magazínu Wired, Jeff Howe, vydal článok „The Rise of Crowdsourcing" [1]. V tomto článku a v ďalších príspevkoch na svojom blogu popisuje novú organizačnú formu, koncept, pri ktorom je problém zadaný neznámej skupine riešiteľov. Zákazníci, alebo žiadatelia môžu uverejniť požadované úlohy na crowdsourcingovú platformu, kde dodávatelia – skupina, alebo jednotlivci vykonajú tieto úloh", + "content_length": 15153 + }, + { + "path": "pages/students/2016/jan_holp/README.md", + "title": "Ján Holp", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "ir", + "nlp", + "pagerank" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Ján Holp", + "published": true, + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "ir", + "nlp", + "pagerank" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Ján Holp\n\n*Rok začiatku štúdia*: 2016\n\n## Diplomová práca 2021\n\n*Názov diplomovej práce*: Systém získavania informácií v slovenskom jazyku.\n\n*Meno vedúceho*: Ing. Daniel Hládek, PhD.\n\n*Zadanie diplomovej práce*:\n\n1. Vypracujte prehľad metód ohodnotenia dokumentov v systémoch získavania informácií.\n2. Implementujte jednoduchý systém pre získavanie informácií v slovenskom jazyku, v ktorom využijete ohodnotenie dokumentov.\n3. Navrhnite a vypracujte experimenty, v ktorých vyhodnotíte vybrané metó", + "content_length": 6713 + }, + { + "path": "pages/students/2016/jan_holp/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "# Diplomový projekt 2020", + "content_length": 25 + }, + { + "path": "pages/students/2016/jan_holp/dp2021/zdrojove_subory/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "", + "content_length": 0 + }, + { + "path": "pages/students/2016/jan_holp/timovy_projekt/README.md", + "title": "Získavanie informácií", + "categories": [ + "tp2020" + ], + "tags": [ + "ir", + "nlp" + ], + "published": true, + "author": "Ján Holp", + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "ir", + "nlp" + ], + "author": "Ján Holp" + }, + "metadata": { + "title": "Získavanie informácií", + "published": true, + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "ir", + "nlp" + ], + "author": "Ján Holp" + } + }, + "content_preview": "# Tímový projekt\n\n# Learning to Rank for Information Retrieval and Natural Language Processing \n\nAutor, Hang Li , v knihe ukazuje rôzne problémy s hodnotením pri získavaní informácií a spracovaní v prirodzenom jazyku. Autor podáva podrobné vysvetlenia o učení sa pri tvorbe rebríčka a agregácií rebríčka, vrátane školení a testovania, hodnotenia, tvorby prvkov a hlavných prístupov. Na vytvorenie rebríčka bolo navrhnutých veľa metód. \n\n## Získavanie informácií \nZískavanie informácií (ang. Informat", + "content_length": 7645 + }, + { + "path": "pages/students/2016/lukas_pokryvka/README.md", + "title": "Lukáš Pokrývka", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "gpu", + "cloud" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Lukáš Pokrývka", + "published": true, + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "gpu", + "cloud" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Lukáš Pokrývka\n\n*Rok začiatku štúdia:* 2016\n\n\nNázov: Paralelné trénovanie neurónových sietí\n\n*Meno vedúceho:* Ing. Daniel Hládek, PhD.\n\n## Diplomová práca 2021\n\n1. Vypracujte prehľad literatúry na tému \"Paralelné trénovanie neurónových sietí\".\n2. Vyberte vhodnú metódu paralelného trénovania.\n3. Pripravte dáta a vykonajte sadu experimentov pre overenie funkčnosti a výkonu paralelného trénovania.\n4. Navrhnite možné zlepšenia paralelného trénovania neurónových sietí.\n\n\n\nStretnutie: 5.3.2021\n\nStav", + "content_length": 9701 + }, + { + "path": "pages/students/2016/lukas_pokryvka/dp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "## Všetky skripty, súbory a konfigurácie\n\nhttps://github.com/pytorch/examples/tree/master/imagenet\n- malo by fungovat pre DDP, nedostupny imagenet subor z oficialnej stranky", + "content_length": 173 + }, + { + "path": "pages/students/2016/lukas_pokryvka/timovy_projekt/README.md", + "title": "Paralelné spracovanie", + "categories": [ + "tp2020" + ], + "tags": [ + "gpu", + "nlp" + ], + "published": true, + "author": "Lukáš Pokrývka", + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka" + }, + "metadata": { + "title": "Paralelné spracovanie", + "published": true, + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "gpu", + "nlp" + ], + "author": "Lukáš Pokrývka" + } + }, + "content_preview": "**Paralelné spracovanie**\n\nSystémy na spracovanie prirodzeného jazyka (_z angl. Natural Language Processing_ – ďalej už len NLP), boli ešte v nedávnej minulosti založené na sériových algoritmoch, ktoré simulovali spôsob, ktorým ľudia čítajú text – slovo za slovom, riadok po riadku [1]. Keďže týmto štýlom boli prezentované všetky gramatické teórie, programátori ich týmto štýlom aj implementovali.\n\nŽijeme v dobe, kedy jedno-jadrový výkon v dostupnom hardwari nemusí stačiť. Táto technológia má viac", + "content_length": 11410 + }, + { + "path": "pages/students/2016/mark_feher/README.md", + "title": "Márk Fehér", + "categories": [ + "dp2022" + ], + "tags": [ + "scikit", + "nlp", + "klasifikácia" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2022" + ], + "tag": [ + "scikit", + "nlp", + "klasifikácia" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Márk Fehér", + "published": true, + "taxonomy": { + "category": [ + "dp2022" + ], + "tag": [ + "scikit", + "nlp", + "klasifikácia" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Diplomová práca 2022\n\nNázov diplomovej práce: Klasifikácia textu metódami strojového učenia\n\n- [GIT repozitár](https://git.kemt.fei.tuke.sk/mf425hk/dp2022)\n\n## Návrh na zadanie DP\n\n1. Vypracujte prehľad metód klasifikácie textu metódami strojového učenia.\n2. Pripravte slovenské trénovacie dáta vo vhodnom formáte a natrénujte viacero modelov pre klasifikáciu textu do viacerých kategórií\n3. Navrhnite, vykonajte a vyhodnoťte experimenty pre porovnanie presnosti klasifikácie textu. \n4. Navrhnite ", + "content_length": 3445 + }, + { + "path": "pages/students/2016/maros_harahus/README.md", + "title": "Maroš Harahus", + "categories": [ + "dp2021", + "bp2019" + ], + "tags": [ + "spelling", + "spacy", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Maroš Harahus", + "published": true, + "taxonomy": { + "category": [ + "dp2021", + "bp2019" + ], + "tag": [ + "spelling", + "spacy", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Maroš Harahus\n\n- [Git repozitár ai4steel](https://git.kemt.fei.tuke.sk/ai4steel/ai4steel) (pre členov skupiny)\n- [GIT repozitár s poznámkami](https://git.kemt.fei.tuke.sk/mh496vd/Doktorandske) (súkromný)\n\n\n## Dizertačná práca\n\nv roku 2023/24\n\nAutomatické opravy textu a spracovanie prirodzeného jazyka\n\nCiele:\n\n- Zverejniť a obhájiť minimovku\n- Napísať dizertačnú prácu\n- Publikovať 2 články triedy Q2-Q3\n\nSúvisiaca BP [Vladyslav Krupko](/students/2020/vladyslav_krupko)\n\n\n## Druhý rok doktorandské", + "content_length": 22377 + }, + { + "path": "pages/students/2016/maros_harahus/timovy_projekt/README.md", + "title": "Spracovanie prirodzeného jazyka", + "categories": [ + "tp2020" + ], + "tags": [ + "spacy", + "nlp" + ], + "published": true, + "author": "Maroš Harahus", + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus" + }, + "metadata": { + "title": "Spracovanie prirodzeného jazyka", + "published": true, + "taxonomy": { + "category": [ + "tp2020" + ], + "tag": [ + "spacy", + "nlp" + ], + "author": "Maroš Harahus" + } + }, + "content_preview": "# NLP\n\nJe založený na umelej inteligencii, ktorá sa zaoberá interakciami medzi počítačom a jazykmi. NLP uľahčuje proces analýzy a\nporozumenia ľudského jazyka pre počítače a umelú inteligenciu. Pomáha extrahovať informácie z textu. V dnešnej dobe sa textové údaje vytvárajú vo veľkom množstve a je ich dôležité spravovať a odovzdať informácie z neštruktúrovaných údajov. Preto musíme údaje reprezentovať vo formáte v ktorom počítače rozumejú a v tomto prípade nám pomáha NLP. Má niekoľko prípadov použ", + "content_length": 11694 + }, + { + "path": "pages/students/2016/patrik_pavlisin/README.md", + "title": "Patrik Pavlišin", + "categories": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tags": [ + "nmt", + "translation", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tag": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Patrik Pavlišin", + "published": true, + "taxonomy": { + "category": [ + "dp2022", + "bp2020", + "tp2021" + ], + "tag": [ + "nmt", + "translation", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Patrik Pavlišin\n\n# Diplomová práca 2022\n\n\nPredbežný názov: Neurónový strojový preklad\n\nNávrh na nástroje pre strojový preklad:\n\n- OpenNMT-py\n- Fairseq\n- Hugging Face Transformers\n\n\n## Návrh na zadanie diplomovej práce\n\n1. Pripraviť prehľad aktuálnych metód strojového prekladu pomocou neurónových sietí. \n2. Vybrať konkrétnu metódu strojového prekladu pomocou neurónových sietí a podrobne ju opísať.\n3. Pripraviť vybraný paralelný korpus do vhodnej podoby a pomocou vybranej metódy natrénovať mod", + "content_length": 9132 + }, + { + "path": "pages/students/2016/patrik_pavlisin/dp21/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "## Úvod\n\nNeurónový strojový preklad (NMT) je prístup k strojovému prekladu, ktorý využíva umelú neurónovú sieť na predpovedanie pravdepodobnosti postupnosti slov, typicky modelovaním celých viet v jednom integrovanom modeli. NMT nie je drastickým krokom nad rámec toho, čo sa tradične robí v štatistickom strojovom preklade (SMT). Štruktúra modelov je jednoduchšia ako frázové modely. Neexistuje žiadny samostatný jazykový model, prekladový model a model zmeny poradia, ale iba jeden sekvenčný model,", + "content_length": 18073 + }, + { + "path": "pages/students/2016/patrik_pavlisin/dp22/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "## Attention, The Transformer\n\n**Úvod**\n\nTransformer je modelová architektúra, ktorá sa vyhýba opakovaniu a namiesto toho sa úplne spolieha na mechanizmus pozornosti na kreslenie globálnych závislostí medzi vstupom a výstupom. Je to prvý transdukčný model, ktorý sa spolieha úplne na vlastnú pozornosť pri výpočte reprezentácii vstupu a výstupu bez použitia RNN (Recurrent Neural Network) alebo CNN (Convolution Neural Network). Používa sa predovšetkým v oblasti NLP (Natural Language Processing) a C", + "content_length": 16734 + }, + { + "path": "pages/students/2016/patrik_pavlisin/tp20/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "# Strojový preklad\n\n## Štatistický strojový preklad\n\nStrojový preklad je automatický preklad jednej, alebo skupiny viacerých viet jedného jazyka do druhého pomocou počítačov. Jedná sa o dôležitú aplikáciu v oblasti spracovania prirodzeného jazyka a záujem o toto odvetvie je takmer taký starý ako elektronický počítač. Štatistický strojový preklad zaznamenal za necelé dve desaťročia obrovský pokrok a v súčasnosti práve on dominuje v tejto oblasti výskumu. SMT využíva veľké množstvo paralelných kor", + "content_length": 18821 + }, + { + "path": "pages/students/2016/tomas_kucharik/README.md", + "title": "Tomáš Kuchárik", + "categories": [ + "dp2021", + "dp2022" + ], + "tags": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2021", + "dp2022" + ], + "tag": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Tomáš Kuchárik", + "published": true, + "taxonomy": { + "category": [ + "dp2021", + "dp2022" + ], + "tag": [ + "nmt", + "translation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Tomáš Kuchárik\n(študent KPI)\n\nSúvisiace práce:\n\n- [Martin Jancura](/students/2017/martin_jancura)\n- [Patrik Pavlišin](/students/2016/patrik_pavlisin)\n- [Projekt SK QUAD](/topics/question)\n\n\n## Diplomová práca 2022\n\n[Repozitár s výsledkami](https://git.kemt.fei.tuke.sk/tk634rv/dp2022)\n\nNázov: Tvorba korpusu otázok a odpovedí v slovenskom jazyku pomocou strojového prekladu\n\nZadanie:\n\n1. Vypracujte prehľad jazykových mutácii overovacej množiny SQUAD a opíšte spôsob ich tvorby. \n2. Vypracujte preh", + "content_length": 10464 + }, + { + "path": "pages/students/2017/dmytro_ushatenko/README.md", + "title": "Dmytro Ushatenko", + "categories": [ + "bp2020" + ], + "tags": [ + "chatobot", + "demo", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2020" + ], + "tag": [ + "chatobot", + "demo", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Dmytro Ushatenko", + "published": true, + "taxonomy": { + "category": [ + "bp2020" + ], + "tag": [ + "chatobot", + "demo", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Dmytro Ushatenko\n\n## Bakalárska práca 2020\n\n- [Repozitár](https://git.kemt.fei.tuke.sk/du707zr/BAKALRSKA_PRACA)\n- Názov: Jednoduchý chatbot v jazyku Python,\n\nZadanie bakalárskej práce:\n\n1. Vypracujte prehľad metód vytvárania dialógových systémov\n2. Na základe zvolenej metódy implementujte jednoduchý dialógový systém ktorý bude informovať o možnostiach štúdia na katedre.\n3. Identifikujte miesta možného zlepšenia navrhnutého dialógového systému.\n\nCieľ: \n\nVytvorenie jednoduchého chatbota s použi", + "content_length": 1208 + }, + { + "path": "pages/students/2017/martin_jancura/README.md", + "title": "Martin Jancura", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2021", + "dp2023" + ], + "tag": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Martin Jancura", + "published": true, + "taxonomy": { + "category": [ + "bp2021", + "dp2023" + ], + "tag": [ + "opennmt", + "translation", + "demo", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Martin Jancura\n\n*Rok začiatku štúdia*: 2017\n\n## Diplomový projekt\n\n- [GIT repozitár](https://git.kemt.fei.tuke.sk/mj130zg/DP2023)\n- [DP Práca](https://opac.crzp.sk/?fn=detailBiblioForm&sid=E4E659F3575B0C5BCF0C726CCD36)\n\nNázov diplomovej práce: \n\nRozpoznávanie emócií v texte\n\nZadanie diplomovej práce:\n\n1. Vypracujte prehľad metód rozpoznávania sentimentu z textu.\n2. Vytvorte slovenskú overovaciu množinu pre rozpoznávanie sentimentu.\n3. Vyberte vhodný model pre rozpoznávanie sentimentu v sloven", + "content_length": 12546 + }, + { + "path": "pages/students/2017/stanislav_matsunych/README.md", + "title": "Stanislav Matsunych", + "categories": [ + "bp2020" + ], + "tags": [ + "nn", + "lm", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2020" + ], + "tag": [ + "nn", + "lm", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Stanislav Matsunych", + "published": true, + "taxonomy": { + "category": [ + "bp2020" + ], + "tag": [ + "nn", + "lm", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Stanislav Matsunych\n\n## Bakalárska práca 2019\n\nGenerovanie a modelovanie prirodzeného jazyka pomocou rekurentných neurónových sietí\n\n- [Zdrojové texty BP](https://git.kemt.fei.tuke.sk/sm892rt/BC_Matsunych_2020_Final)\n- [CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=60B4917E3BAC23F10C7DAB27651C&seo=CRZP-detail-kniha)\n\n### Návrh na zadanie\n\n1. Vypracovať prehľad metód generovania prirodzeného jazyka pomocou rekurentných neurónových sietí\n2. Vyberte si vhodnú metódu na zostavenie modelu pri", + "content_length": 2311 + }, + { + "path": "pages/students/2017/than_trung_thanh/README.md", + "title": "Than Trung Thanh", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "named entity", + "ne", + "spacy", + "prodigy", + "anotation" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "demo", + "nlp", + "named entity", + "ne", + "spacy", + "prodigy", + "anotation" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Than Trung Thanh", + "published": true, + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "demo", + "nlp", + "named entity", + "ne", + "spacy", + "prodigy", + "anotation" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Than Trung Thanh \n\n## Bakalársky projekt 2020\n\nRozpoznávanie pomenovaných entít v slovenskom jazyku pomocou nástrojov Spacy a Prodigy\n\n- Tvorba korpusu a modelu pomocou nástrojov Spacy a Prodigy\n- Práca na internom projekte [rozpoznávanie pomenovaných entít](https://git.kemt.fei.tuke.sk/KEMT/zpwiki/src/branch/master/pages/topics/named-entity).\n- Využite [existujúci model](https://git.kemt.fei.tuke.sk/dano/spacy-skmodel).\n\nPodobná práca:\n\n- [Jakub Maruniak](/students/2016/jakub_maruniak)\n\nCiel ", + "content_length": 3799 + }, + { + "path": "pages/students/2018/NaN1name_buday/README.md", + "title": "Martin NaN1", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "nemo", + "bert", + "gpt" + ], + "published": true, + "author": "Anton Buday", + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "demo", + "nlp", + "nemo", + "bert", + "gpt" + ], + "author": "Anton Buday" + }, + "metadata": { + "title": "Martin NaN1", + "published": true, + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "demo", + "nlp", + "nemo", + "bert", + "gpt" + ], + "author": "Anton Buday" + } + }, + "content_preview": "# Nan1_name \n\nRok začiatku štúdia: 2018\n\nPodmienkou pre získanie zápočtu je účasť na konzultácii min. raz za 2 týždne. Menej ako 6 konzultácií za semester je dôvod pre zníženie hodnotenia alebo neudelenie zápočtu.\nKomunikácia je možná aj cez MS Teams, Cisco Webex...\nKonzultačné hodiny sú podľa dohody, preferujem chat na MS Teams.\n\n\n## Bakalársky projekt 2020\n\nNázov: Využitie najnovších nástrojov v rámci prirodzeného spracovania reči\n\nCieľ:\n- Pokúsiť sa použiť slovenské dáta na spracovanie prirod", + "content_length": 1939 + }, + { + "path": "pages/students/2018/adrian_remias/README.md", + "title": "Adrián Remiáš", + "categories": [ + "dp2024" + ], + "tags": [ + "nlp", + "transformers", + "interpuction" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2024" + ], + "tag": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Adrián Remiáš", + "published": true, + "date": "01-02-2014", + "taxonomy": { + "category": [ + "dp2024" + ], + "tag": [ + "nlp", + "transformers", + "interpuction" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Adrián Remiáš\n\nRok začiatku štúdia: 2018\n\n\n# Diplomová práca 2024\n\nNávrh na zadamie:\n\n1. Vypracujte prehľad metód obnovy interpunkcie v slovenskom jazyku.\n2. Vypracujte prehľad metód jazykového modelovania pomocou neurónovej siete typu Transformer.\n3. Pripravte dátovú množinu pre trénovanie a vyhodnotenie neurónovej siete na úlohu dopĺňania a opravy interpunkcie.\n4. Vyberte viacero neurónových modelov, natrénujte ich na úlohu dopĺňania a opravy interpunkcie.\n5. Vyhodnoťte experimenty a vybert", + "content_length": 6724 + }, + { + "path": "pages/students/2018/david_ilas/README.md", + "title": "Dávid Iľaš", + "categories": [ + "dp2023" + ], + "tags": [ + "nlp", + "emotion" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2023" + ], + "tag": [ + "nlp", + "emotion" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Dávid Iľaš", + "published": true, + "taxonomy": { + "category": [ + "dp2023" + ], + "tag": [ + "nlp", + "emotion" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "Rok začiatku štúdia: 2018\n\nUž neštuduje tento študijný program.\n\n## Diplomová práca 2023\n\nTéma: Rozpoznávanie emócií z textu.\n\nTODO: Návrh na zadanie diplomovej práce.\n\nCiele:\n\n- Vedieť klasifikovať emocionálny náboj v texte pomocou neurónovej siete.\n\nCiele na semester:\n\n- Získať prehľad v problematike rozpoznávania emócií z textu\n- Vybrať dátovú množinu, vybrať vhodný klasifikátor, natrénovať model a vyhodnotiť výsledky.\n\nInformácie:\n\n- [Hate speech Project](/topics/hatespeech)\n- https://www.sc", + "content_length": 1101 + }, + { + "path": "pages/students/2018/david_omasta/README.md", + "title": "Dávid Omasta", + "categories": [ + "dp2023", + "dp2024" + ], + "tags": [ + "lm" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2023", + "dp2024" + ], + "tag": [ + "lm" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Dávid Omasta", + "published": true, + "taxonomy": { + "category": [ + "dp2023", + "dp2024" + ], + "tag": [ + "lm" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "Začiatok štúdia: 2018\n\nSúvisiace stránky:\n\n- [Question Answering](/topics/question) - interný projekt\n- Jozef Olekšák\n- Matej Čarňanský (BERT)\n- Ondrej Megela\n\n# Diplomová práca 2024\n\nVedúci: Daniel Hládek\n\nNávrh na názov:\n\nGeneratívne modely pre automatické odpovede na otázky v slovenskom jazyku\n\nNávrh na zadanie DP:\n\n- Vypracujte prehľad najnovších generatívnych neurónových jazykových modelov.\n- Vypracujte prehľad slovenských a multilinguálnych generatívnych jazykových modelov.\n- Navrhnite exp", + "content_length": 6843 + }, + { + "path": "pages/students/2018/martin_wencel/README.md", + "title": "Martin Wencel", + "categories": [ + "bp2021" + ], + "tags": [ + "demo", + "nlp", + "spacy" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Martin Wencel", + "published": true, + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "demo", + "nlp", + "spacy" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Martin Wencel \n\nRok začiatku štúdia: 2018\n\nPodmienkou pre získanie zápočtu je účasť na konzultácii min. raz za 2 týždne. Menej ako 6 konzultácií za semester je dôvod pre zníženie hodnotenia alebo neudelenie zápočtu.\nKomunikácia je možná aj cez [MS Teams](https://teams.microsoft.com/l/team/19%3aa8596a401a3842e5b91ac918a2a0afb1%40thread.tacv2/conversations?groupId=4fc0c627-d424-4587-b73a-2e47509862e9&tenantId=1c9f27ef-fee6-45f4-9a64-255a8c8e25a5).\nKonzultačné hodiny sú v piatok 9:20-14:00.\n\n## B", + "content_length": 6446 + }, + { + "path": "pages/students/2018/oleh_bilykh/README.md", + "title": "Oleh Bilykh", + "categories": [ + "bp2021" + ], + "tags": [ + "question-answer", + "drqa", + "qa", + "demo", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "question-answer", + "drqa", + "qa", + "demo", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Oleh Bilykh", + "published": true, + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "question-answer", + "drqa", + "qa", + "demo", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Oleh Bilykh\n\n*Začiatok štúdia: 2018*\n\nSúvisiace stránky:\n\n- [Ongrej Megela](/students/2018/bilykh) - RoBERTa\n- [Lukáš Pokrývka](/students/2016/pokryvka) - paralelné trénovanie\n- [Question Answering](/topics/question) - interný projekt\n- Matej Čarňanský (BERT)\n\n## Bakalárska práca 2021\n\nTéma:\n\nAutomatické generovanie odpovedí na otázky v prirodzenom jazyku pomocou neurónových sietí.\n\nNávrh na zadanie BP:\n\n- Vypracujte teoretický prehľad metód automatického generovania odpovede na otázky v priro", + "content_length": 3887 + }, + { + "path": "pages/students/2018/ondrej_megela/README.md", + "title": "Ondrej Megela", + "categories": [ + "bp2021", + "dp2023" + ], + "tags": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2021", + "dp2023" + ], + "tag": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Ondrej Megela", + "published": true, + "taxonomy": { + "category": [ + "bp2021", + "dp2023" + ], + "tag": [ + "nlp", + "fairseq", + "lm", + "bert", + "question-answer", + "qa" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Ondrej Megela \n\nZačiatok štúdia: 2018\n\nSúvisiace stránky:\n\n- [Oleh Bilykh](/students/2018/bilykh) - question answering\n- [Lukáš Pokrývka](/students/2016/pokryvka) - paralelné trénovanie\n- [Question Answering](/topics/question) - interný projekt\n- Matej Čarňanský (BERT)\n\n\nPozrieť toto: \n\nhttps://paperswithcode.com/task/text-generation?page=3\n\n# Diplomová práca 2023\n\n\nhttps://opac.crzp.sk/?fn=detailBiblioForm&sid=E4E659F3575B0C5BCF0F726CCD36\n\nNazov:\n\nAutomatické generovanie otázok v slovenskom j", + "content_length": 16198 + }, + { + "path": "pages/students/2018/samuel_sirotnik/README.md", + "title": "Samuel Širotník", + "categories": [ + "bp2021" + ], + "tags": [ + "raspberrypi", + "cloud" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Samuel Širotník", + "published": true, + "date": "01-02-2014", + "taxonomy": { + "category": [ + "bp2021" + ], + "tag": [ + "raspberrypi", + "cloud" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Samuel Širotník\n\nRok začiatku štúdia: 2018\n\n\n## Bakalárska práca 2020\n\n[Bakalárska práca na CRZP](https://opac.crzp.sk/?fn=detailBiblioForm&sid=CF9E62B1F4156FE3B62A0984D7C8)\n\nPráca úspešne obhájená. Odovzdaný klaster mal zle nakrimpované káble.\n\n\nPokusný Kubernetes klaster použitím Raspberry Pi pre výuku klaudových technológií\n\n1. Vypracujte teoretický úvod do technológie Kubernetes.\n2. Vytvorte pokusný klaster pomocou viacerých modulov Raspberry Pi a nainštalujte na neho Kubernetes.\n3. Vypra", + "content_length": 6040 + }, + { + "path": "pages/students/2019/alina_vitko/README.md", + "title": "Alina Vitko", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "qa", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2022" + ], + "tag": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Alina Vitko", + "published": true, + "taxonomy": { + "category": [ + "bp2022" + ], + "tag": [ + "ir", + "qa", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2019\n\n# Bakalárska práca 2022\n\nSystémy pre generovanie odpovede na otázku v prirodzenom jazyku\n\n\n1. Vypracujte prehľad aktuálnych metód pre generovanie odpovede na otázku v prirodzenom jazyku.\n2. Vyberte a podrobne opíšte existujúci systém pre generovanie odpovede na otázku v prirodzenom slovenskom jazyku.\n3. Vytvorte demonštračnú webovú aplikáciu pre vybraný systém.\n4. Navrhnite zlepšenia systému pre generovanie odpovede.\n\nStretnutie 8.4.\n\nProgres zatiaľ nenastal.\n\nÚlohy p", + "content_length": 5503 + }, + { + "path": "pages/students/2019/artem_yatsenko/README.md", + "title": "Artem Yatsenko", + "categories": [ + "bp2022" + ], + "tags": [ + "ner", + "spacy", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2022" + ], + "tag": [ + "ner", + "spacy", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Artem Yatsenko", + "published": true, + "taxonomy": { + "category": [ + "bp2022" + ], + "tag": [ + "ner", + "spacy", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "Začiatok štúdia 2019\n\n# Bakalárska práca 2022\n\nNázov: Rozpoznávanie pomenovaných entít v slovenskom jazyku\n\nPomenované entity sú väčšinou vlastné podstatné mená v texte. Ich rozpoznanie nám pomôže určiť o čom text je. To sa často využíva v chatbotoch alebo vo vyhľadávaní v texte.\n\nNávrh na zadanie:\n\n1. Vypracujte prehľad metód pre rozpoznávanie pomenovaných entít v texte.\n2. Vyberte vhodnú metódu a natrénujte model pre rozpoznávanie pomenovaných entít.\n3. Vykonajte viacero experimentov a zistite", + "content_length": 1450 + }, + { + "path": "pages/students/2019/david_stromp/README.md", + "title": "Dávid Stromp", + "categories": [ + "bp2022" + ], + "tags": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "published": true, + "author": "Maroš Harahus", + "taxonomy": { + "category": [ + "bp2022" + ], + "tag": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus" + }, + "metadata": { + "title": "Dávid Stromp", + "published": true, + "taxonomy": { + "category": [ + "bp2022" + ], + "tag": [ + "ir", + "cassandra", + "nlp", + "cluster" + ], + "author": "Maroš Harahus" + } + }, + "content_preview": "Rok začiatku štúdia: 2019\n\n# Bakalárska práca 2022\n\nNávrh na zadanie:\n\n1. Vypracujte prehľad distribuovaných databáz alebo súborových systémov vhodných pre uloženie veľkého množstva textu.\n2. Vyberte vhodný spôsob uloženia veľkého množstva webových stránok.\n3. Nasaďte vybrané distribuované úložisko na testovací klaster pomocou systému Kubernetes.\n4. Vykonajte sadu testov pre overenia priepustnosti operácií zápisov a čítania.\n5. Identifikujte slabé miesta distribuovaného úložiska a navrhnite zlep", + "content_length": 5356 + }, + { + "path": "pages/students/2019/dmytro_mural/README.md", + "title": "Dmytro Mural", + "categories": [ + "bp2022" + ], + "tags": [], + "published": true, + "author": "Maroš Harahus", + "taxonomy": { + "category": [ + "bp2022" + ], + "tag": [], + "author": "Maroš Harahus" + }, + "metadata": { + "title": "Dmytro Mural", + "published": true, + "taxonomy": { + "category": [ + "bp2022" + ], + "tag": [], + "author": "Maroš Harahus" + } + }, + "content_preview": "Rok začiatku štúdia: 2019\n\n# Bakalárska práca 2022\n\nGrafové neurónové siete pre vyhľadávanie na internete.\n\nhttps://arxiv.org/abs/1810.05997\n\n\nNávrh na zadanie:\n\n1. Vysvetlite čo je to grafová neurónová sieť\n2. Vypracujte prehľad najnovších druhov grafových neurónovýsh sietí.\n3. Vyberte jednu metódu grafových neurónových sietí a navrhnite spôsob experimentálneho ohodnotenia sady prepojených článkov pomocou grafovej neurónovej siete. \n4. Vyhodnnoťte experimenty a navrhnite zlepšenia Vášho prístu", + "content_length": 753 + }, + { + "path": "pages/students/2019/filip_tomas/README.md", + "title": "Filip Tomáš", + "categories": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tags": [ + "testovanie", + "javascript", + "typescript" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tag": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Filip Tomáš", + "published": true, + "taxonomy": { + "category": [ + "bp2022", + "dp2024", + "dp2025" + ], + "tag": [ + "testovanie", + "javascript", + "typescript" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2019\n\n\nDP sa prekladá na rok 2025\n\n# Diplomová práca 2024 - 2025\n\n\nVektorové vyhľadávanie dokumentov v prostredí Kubernetes\n\nZadanie:\n\n1. Napíšte prehľad metód vektorovej reprezentácie dokumentov pomocou neurónových sietí. \n2. Napíšte prehľad vektorových databáz a ich metód vyhľadávania.\n3. Nasaďte vybranú vektorovú databázu do testovacieho distribuovaného prostredia. \n4. Vytvorte index väčšieho množstva textových dokumentov vo vybranej vektorovej databáze. \n5. Vytvorte web", + "content_length": 11335 + }, + { + "path": "pages/students/2019/kristian_sopkovic/README.md", + "title": "Kristián Sopkovič", + "categories": [ + "bp2022", + "dp2024" + ], + "tags": [ + "spacy", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2022", + "dp2024" + ], + "tag": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Kristián Sopkovič", + "published": true, + "taxonomy": { + "category": [ + "bp2022", + "dp2024" + ], + "tag": [ + "spacy", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2019\n\n# Dizertačná práca 2028\n\nCieľ:\n\n- Vylepšiť RAG-QA v slovenskom jazyku.\n\nStretnutie 6.11.2024\n\nKritériá na rok 24-25:\n\n- 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.\n\nPlán na publikácie - povinná jazda:\n\n- SCYR 8B\n- [RADIOELEKTRONIKA 2025 15](https://radioelektronika.uniza.sk/home.php?id_conference=28)\n- RADIOELEKTRONIKA 2025 15 (Eva", + "content_length": 15096 + }, + { + "path": "pages/students/2019/michal_stromko/README.md", + "title": "Michal Stromko", + "categories": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tags": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tag": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Michal Stromko", + "published": true, + "taxonomy": { + "category": [ + "vp2021", + "bp2022", + "dp2024" + ], + "tag": [ + "ir", + "cloud", + "demo", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2019\n\n# Diplomová práca 2023/24\n\nSémantické vyhľadávanie v slovenskom texte\n\n\nZadanie práce:\n\n1. Vypracujte prehľad najnovších metód sémantického vyhľadávania pomocou neurónových sietí.\n2. Implementujte sémantické vyhľadávanie na slovenskej wikipédii pomocou existujúcich modelov. \n2. Vyberte dátovú množinu otázok a odpovedí a ručne anotujte výsledky sémantického vyhľadávania. \n3. Pripravte, vykonajte a opíšte experimenty na vyhodnotenie vyhľadávania pomocou Vami ručne vytvo", + "content_length": 21569 + }, + { + "path": "pages/students/2019/michal_stromko/vp2021/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "# Správa o vedeckom projekte\n\nV tomto vedeckom projekte som sa pokúsil o zaindexovanie stránky [ZP WIKI](https://zp.kemt.fei.tuke.sk/taxonomy?name=category&val=project) pomocou nástroja Azure Cognitive Search. Zároveň popri zisťovaní a vytváraní indexu som spravil pre ostatných študentov krátke tutoriály. \n\nTutoriáloch, ktoré som vytvoril nájdete:\n- aktivácia Azure konta [Activation](tutorials/create_acount_on_azure.md)\n- Pridanie aplikácie Azure Cognitive Search na portál [Create ACS](tutorial", + "content_length": 747 + }, + { + "path": "pages/students/2019/michal_stromko/vp2021/tutorials/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "#### V tomto adresáry sú uložené všetky tutoriály", + "content_length": 49 + }, + { + "path": "pages/students/2019/michal_stromko/vp2021/tutorials/img/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "#### V tomto adresáry sú uložené všetky fotky ku tutoriálom.", + "content_length": 60 + }, + { + "path": "pages/students/2019/patrik_pokrivcak/README.md", + "title": "Patrik Pokrivčák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "hate" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2025" + ], + "tag": [ + "nlp", + "hate" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Patrik Pokrivčák", + "published": true, + "taxonomy": { + "category": [ + "dp2025" + ], + "tag": [ + "nlp", + "hate" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2019\n\n# Diplomová práca\n\n\nTéma:\n\nRozpoznávanie nenávistnej reči pomocou veľkých jazykových modelov\n\nZadanie:\n\n1. Vypracujte prehľad veľkých jazykových modelov s podporou slovenčiny.\n2. Vypracujte prehľad metód rozpoznávania nenávistnej reči pomocou veľkých jazykových modelov.\n3. Vyberte vhodnú dátovú množinu pre rozpoznávanie nenávistnej reči a pomocou nej vhodnou metrikou porovnajte viacero jazykových modelov pre úlohu rozpoznávania nenávistnej reči.\n4. Vyhodnoťte experime", + "content_length": 3406 + }, + { + "path": "pages/students/2019/samuel_horani/README.md", + "title": "Samuel Horáni", + "categories": [ + "vp2021", + "bp2022" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "vp2021", + "bp2022" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Samuel Horáni", + "published": true, + "taxonomy": { + "category": [ + "vp2021", + "bp2022" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2019\n\nNávrh na zadanie BP:\n\n1. Vypracujte teroretický úvod do modelovania dialógu a povedzte ake metódy sa aktuálne používajú.\n2. Navrhnite a vytvorte dialógový systém komunikujúci v slovenskom jazyku pre úlohu objednania jedla z donáškovej služby.\n3. Vykonajte sadu experimentov a dialógovým systémom a identifikujte miesta pre zlepšenie.\n\n\nNápady na balakársku prácu:\n\n- chatbot pre objednanie jedla.\n- chatbot s informáciami pre cestovateľov.\n- Urobenie web rozhrania.\n- dá sa", + "content_length": 6489 + }, + { + "path": "pages/students/2020/david_kostilnik/README.md", + "title": "Dávid Kostilník", + "categories": [ + "dp2025" + ], + "tags": [ + "ir" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2025" + ], + "tag": [ + "ir" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Dávid Kostilník", + "published": true, + "taxonomy": { + "category": [ + "dp2025" + ], + "tag": [ + "ir" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2020\n\n# Diplomová práca 2025\n\nTéma:\n\nSémantické vyhľadávanie pomocou veľkých modelov\n\n- Tvorba datasetu prekladom, využitie existujúcich datasetov\n- Dotrénovanie existujúceho modelu typu BERT pomocou preloženého MS MARCO.\n\nCiele: \n\n- Zlepšiť RAG.\n\nZadanie:\n\n1. Vypracujte prehľad metód a modelov sémantického vyhľadávania pomocou neurónových sietí.\n2. Vyberte vhodnú dátovú množinu a dotrénujte jazykový model pre úlohu sémantického vyhľadávania v slovenčine. \n3. Navrhnite a vyk", + "content_length": 2638 + }, + { + "path": "pages/students/2020/jakub_kristian_lukas/README.md", + "title": "Jakub Kristián Lukas", + "categories": [ + "bp2023" + ], + "tags": [ + "hatespeech" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2023" + ], + "tag": [ + "hatespeech" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Jakub Kristián Lukas", + "published": true, + "taxonomy": { + "category": [ + "bp2023" + ], + "tag": [ + "hatespeech" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2020\n\n# Bakalárska práca 2023\n\nTéma: Systém pre rozpoznávanie nenávistnej reči v online diskusiách\n\nSúvisí s PhD prácou [Manohar Gowdru Shridhara](students/2021/manohar_gowdru_shridharu)\n\nNávrh na zadanie: \n\n- Preštudovať teóriu.\n- Zopakovať jednoduchý experiment pre rozpoznávanie nenávistnej reči v anglickom jazyku s pomocou frameworku HuggingFace transformers. \n- Vypracovať webové demo.\n\nStretnutie 3.111.\n\nStav:\n\n- štúdium Python. \n- Vyskúšané niektoré HF HS modely.\n\nÚlohy", + "content_length": 1870 + }, + { + "path": "pages/students/2020/kamil_tomcufcik/README.md", + "title": "Kamil Tomčufčík", + "categories": [ + "dp2025" + ], + "tags": [ + "lm" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2025" + ], + "tag": [ + "lm" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Kamil Tomčufčík", + "published": true, + "taxonomy": { + "category": [ + "dp2025" + ], + "tag": [ + "lm" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2020\n\n# Diplomová práca 2025\n\nCiel:\n\nOveriť a zlepšiť možnosti generovania jednotkových testov\n\nZadanie:\n\n1. Vypracujte prehľad veľkých jazykových modelov s podporou generovania programového kódu.\n2. Vyberte vhodnú dátovú množinu a metriku na vyhodnotenie generovania kódu.\n3. Navrhnite a vyhodnoťte experimenty s generovaním kódu s pomocou veľkého jazykového modelu. \n4. Identifikujte slabé miesta a navrhnite zlepšenia.\n\nStretnutie 12.12.2024\n\nStav:\n\n- Metrika Pass@K sa použív", + "content_length": 3184 + }, + { + "path": "pages/students/2020/matej_kobylan/README.md", + "title": "Matej Kobyľan", + "categories": [ + "bp2023" + ], + "tags": [ + "ir" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2023" + ], + "tag": [ + "ir" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Matej Kobyľan", + "published": true, + "taxonomy": { + "category": [ + "bp2023" + ], + "tag": [ + "ir" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2020\n\n# Bakalárska práca 2024\n\nCieľ: Vytvoriť dialógový systém pre podporu komunikácie občana s mestom Košice\n\n\nÚlohy:\n\n- Zistite, čo je to Natural Language Understanding. Napíšte o tom správu na 2 strany.\n- Prečítajte si BP Samuel Horáni. https://opac.crzp.sk/?fn=detailBiblioForm&sid=A770A18E340C6018B48DE7BDD5C2 Napíšte čo ste sa dozvedeli.\n- Prečítajte si článok https://link.springer.com/article/10.1007/s10462-022-10248-8 a napíšte, čo ste sa dozvedeli.\n- Vyskúšajte si cha", + "content_length": 3446 + }, + { + "path": "pages/students/2020/matus_suchanic/README.md", + "title": "Matúš Suchanič", + "categories": [ + "vp2022", + "bp2023" + ], + "tags": [ + "ir" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "vp2022", + "bp2023" + ], + "tag": [ + "ir" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Matúš Suchanič", + "published": true, + "taxonomy": { + "category": [ + "vp2022", + "bp2023" + ], + "tag": [ + "ir" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2020\n\n# Bakalárska práca 2023\n\nTéma: Vyhľadávanie na slovenskej Wikipédii\n\nÚloha: \n\n- 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í.\n- Vytvorte dátovú množinu pre vyhodnotenie kategorizácie na základe wiki kategórií. \n\nNázov: \n\nAutomatická kategorizácia slovenského textu\n\n1. Vypracujte prehľad najnovších metód kategorizácie textu pomocou neurónových sietí aj pomocou štatistických metód.\n2.", + "content_length": 5265 + }, + { + "path": "pages/students/2020/pavol_hudak/README.md", + "title": "Pavol Hudák", + "categories": [ + "dp2025" + ], + "tags": [ + "nlp", + "qa" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2025" + ], + "tag": [ + "nlp", + "qa" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Pavol Hudák", + "published": true, + "taxonomy": { + "category": [ + "dp2025" + ], + "tag": [ + "nlp", + "qa" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2020\n\n# Diplomová práca 2025\n\nDotrénovanie veľkého jazykového modelu na odpovede v slovenčine\n\nZadanie:\n\n1. Vypracujte prehľad veľkých jazykových modelov v slovenčine.\n2. Vypracujte prehľad metód dotrénovania veľkých jazykových modelov.\n3. Vyberte vhodnú dátovú množinu v slovenčine a dotrénujte veľký jazykový model.\n4. Vyhodnoťte experimenty a navrhnite zlepšenia. \n\n\n\nCiel:\n\n- Dotrénovanie LLM pre zlepšenie jeho schopnosti odpovedať na otázku v slovenskom jazyku.\n- Dotrénova", + "content_length": 4542 + }, + { + "path": "pages/students/2020/vladyslav_krupko/README.md", + "title": "Vladyslav Krupko", + "categories": [ + "bp2024" + ], + "tags": [ + "spelling" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2024" + ], + "tag": [ + "spelling" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Vladyslav Krupko", + "published": true, + "taxonomy": { + "category": [ + "bp2024" + ], + "tag": [ + "spelling" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2020\n\n# Bakalárska práca 2024\n\n\n1. Napíšte prehľad existujúcich jazykových modelov pre generovanie slovenského jazyka.\n2. 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. \n3. Natrénujte neurónovú sieť pre úlohu generovania odpovede a vyhodnoťte výsledky. \n4. Vyhodnoťte experimenty, identifikujte slabé miesta a navrh", + "content_length": 7000 + }, + { + "path": "pages/students/2021/artur_hyrenko/README.md", + "title": "Artur Hyrenko", + "categories": [ + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2026" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Artur Hyrenko", + "published": true, + "taxonomy": { + "category": [ + "dp2026" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2021\n\n# Diplomová práca 2026\n\nZvýšenie bezpečnosti veľkých jazykových modelov\n\nZadanie:\n\n1. Vypracujte prehľad súčasného stavu výskumu v oblasti zvyšovania bezpečnosti veľkých jazykových modelov, vrátane identifikácie známych bezpečnostných problémov a spôsobov ich vyhodnotenia. \n2. Vyberte vhodnú trénovaciu sadu a zarovnajte vybraný jazykový model s cieľom zvýšiť jeho bezpečnosť. \n3. Vyberte vhodnú testovaciu sadu a vyhodnoťte bezpečnosť viacerých modelov, vrátane zarovna", + "content_length": 8275 + }, + { + "path": "pages/students/2021/eduard_matovka/README.md", + "title": "Eduard Matovka", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2024" + ], + "tag": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Eduard Matovka", + "published": true, + "taxonomy": { + "category": [ + "bp2024" + ], + "tag": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2021\n\n# Bakalárska práca 2024\n\nSpolupráca [Vladimír Ferko](/students/2021/vladimir_ferko)\n\nNadväzuje [Martin Jancura](/students/2017/martin_jancura)\n\nNázov: Slovenská konverzačná umelá inteligencia\n\nPredbežný cieľ:\n\nNatrénovať jazykový model pre jednoduchú slovenskú konverzáciu. \n\nZadanie BP:\n\n1. Vypracujte prehľad modelov a dátových množín pre generovanie slovenského jazyka.\n2. Opíšte metódy dotrénovania generatívnych jazykových modelov. \n3. Vyberte vhodnú dátovú množinu a ", + "content_length": 7624 + }, + { + "path": "pages/students/2021/manohar_gowdru_shridharu/README.md", + "title": "Manohar Gowdru Shridhara", + "categories": [ + "phd2024" + ], + "tags": [ + "lm", + "nlp", + "hatespeech" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "phd2024" + ], + "tag": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Manohar Gowdru Shridhara", + "published": true, + "taxonomy": { + "category": [ + "phd2024" + ], + "tag": [ + "lm", + "nlp", + "hatespeech" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Manohar Gowdru Shridhara\n\nBeginning of the study: 2021\n\nrepository: https://git.kemt.fei.tuke.sk/mg240ia\n\n## Disertation Thesis\n\nin 2023/24\n\nHate Speech Detection\n\nGoals:\n\n- Publish and defend a minimal thesis \n- Write a dissertaion thesis\n- Publish 2 A-class journal papers\n\n## Second year of PhD study\n\nGoals:\n\n- Publish and defend a minimal thesis. Minimal thesis should contain PhD thesis statements - scientific contributions.\n - Provide state-of-the-art overview.\n - Formulate dissertat", + "content_length": 15079 + }, + { + "path": "pages/students/2021/martin_sarissky/README.md", + "title": "Martin Šarišský", + "categories": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Martin Šarišský", + "published": true, + "taxonomy": { + "category": [ + "vp2023", + "bp2024", + "dp2026" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2021\n\n# Diplomová práca 2026\n\nhttps://git.kemt.fei.tuke.sk/ms058bd/Diplomovka\n\nNázov práce:\n\nAgentové systémy pomocou veľkého jazykového modelu\n\nZadanie:\n\n1. Vypracujte prehľad systémov generovania prirodzeného jazyka, ktoré podporujú vyhľadávanie a sú vhodné na spracovanie právnych informácií. \n2. Na základe tohto prehľadu navrhnite a implementujte agentový systém, ktorý umožní vyhľadávanie v právnych dokumentoch, odpovedanie na otázky a sumarizáciu textov. \n3. Vytvorte s", + "content_length": 17458 + }, + { + "path": "pages/students/2021/matej_novotny/README.md", + "title": "Matej Novotný", + "categories": [ + "dp2026" + ], + "tags": [ + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2026" + ], + "tag": [ + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Matej Novotný", + "published": true, + "taxonomy": { + "category": [ + "dp2026" + ], + "tag": [ + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2021\n\n# Diplomová práca 2026\n\nKlasifikácia webových dát pre lepšie jazykové modelovanie\n\nRepo https://git.kemt.fei.tuke.sk/mn180gd/diplomovka\n\nZadanie:\n\n1. Vypracujte prehľad súčasných prístupov a nástrojov na klasifikáciu webových dát podľa typu a na detekciu nenávistného obsahu. \n2. Navrhnite a implementujte systém, ktorý automaticky roztriedi webové texty podľa uvedených typov a domén a zároveň vyhodnotí ich úroveň nenávisti. \n3. Zostavte kvalitný všeobecný a tematický ", + "content_length": 6550 + }, + { + "path": "pages/students/2021/matej_scislak/README.md", + "title": "Matej Ščišľak", + "categories": [ + "bp2024", + "dp2026" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2024", + "dp2026" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Matej Ščišľak", + "published": true, + "taxonomy": { + "category": [ + "bp2024", + "dp2026" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2021\n\n\n# Diplomová práca 2026\n\nNázov:\n\nZnalostné grafy pre zlepšenie vyhľadávania právnych informácií.\n\nZadanie:\n\n1. Vypracujte prehľad súčasných prístupov k využitiu znalostných grafov na vyhľadávanie pomocou jazykových modelov. \n2. Zostavte vzorový znalostný graf z právnej oblasti. \n3. Navrhnite a implementujte systém, ktorý pomocou znalostných grafov umožní vyhľadávanie v rozsudkoch, zákonoch a vyhláškach, odpovedanie na otázky a sumarizáciu dokumentov. \n4. Otestujte s", + "content_length": 11061 + }, + { + "path": "pages/students/2021/nikita_bodnar/README.md", + "title": "Nikita Bodnar", + "categories": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tags": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Nikita Bodnar", + "published": true, + "taxonomy": { + "category": [ + "vp2023", + "bp2024", + "bp2025" + ], + "tag": [ + "chatbot", + "rasa", + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2021\n\n# Bakalárska práca 2025\n\nZadanie:\n\n1. Vypracujte prehľad neurónových sietí a metód na vykonávanie opravy textu. \n2. Vyberte a pripravte slovenské dáta do vhodnej podoby a aplikujte viacero existujúcich modelov na opravu textu.\n3. Číselne a slovne vyhodnoťte modely a navrhnite zlepšenia.\n\nStretnutie 27.3.\n\nStav:\n\n- Text je v lepšom stave.\n\nStretnutie 11.3.\n\nStav:\n\n- Vypracované experimenty pre obnovu interpunkcie, zatiaľ na dosť krátkom texte. Výsledky sú v nejakej prez", + "content_length": 6066 + }, + { + "path": "pages/students/2021/oleksandr_hryshchenko/README.md", + "title": "Oleksandr Hryshchenko", + "categories": [ + "dp2026" + ], + "tags": [ + "ir", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2026" + ], + "tag": [ + "ir", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Oleksandr Hryshchenko", + "published": true, + "taxonomy": { + "category": [ + "dp2026" + ], + "tag": [ + "ir", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2021\n\n# Diplomová práca 2026\n \nGrafové neurónové siete pre získavanie informácií\n\nProjekt zakončený.\n\nStretnutie 13.2.2025\n\nÚlohy:\n\n- Precvičte si jazyk Python, nainštalujte si prostredie Anaconda.\n- Zistite čo sú to grafové neurónové siete. Prečítajte si odborné články a urobte si poznámky. Pozrite sa na https://scholar.google.sk/ vyhľadávajte \"graph neural network\".\n- Oboznámte sa s frameworkom LangChain https://python.langchain.com/docs/tutorials/graph/ https://python.lan", + "content_length": 963 + }, + { + "path": "pages/students/2021/vladimir_ferko/README.md", + "title": "Vladimír Ferko", + "categories": [ + "bp2024" + ], + "tags": [ + "dialog", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2024" + ], + "tag": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Vladimír Ferko", + "published": true, + "taxonomy": { + "category": [ + "bp2024" + ], + "tag": [ + "dialog", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2021\n\nštudent KPI, pracovník DTSS\n\n## Bakalárska práca 2024\n\n- [Projekt HateSpeech](/topics/hatespeech)\n- [Pokyny KPI ku záverečným prácam](https://kpi.fei.tuke.sk/sk/zaverecne-prace)\n- Spolupráca: [Eduard Matovka](/students/2021/eduard_matovka)\n- Nadväzuje [Martin Jancura](/students/2017/martin_jancura)\n\nNázov: Anotácia a vyhodnotenie slovenskej databázy nenávistnej reči\n\n1. Napíšte prehľad existujúcich dátových zdrojov pre úlohu rozpoznávania sentimentu a nenávistnej reči ", + "content_length": 7945 + }, + { + "path": "pages/students/2022/andrii_pervashov/README.md", + "title": "Andrii Pervashov", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2025", + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Andrii Pervashov", + "published": true, + "taxonomy": { + "category": [ + "bp2025", + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Diplomová práca 2027\n\nNávrh na tému:\n\nPrepis reči pre tvorbu štruktúrovaného zdravotného záznamu\n\nCiele:\n\n- Vytvorte systém pre prepis reči a naplnenie formulára pomocou lokálnych jazykových modelov\n- Zlepšite jazykový model pre extraktiu štruktúrovaných informácií z medicínskej alebo súdnej domény.\n\nÚlohy:\n\n- Oboznámte sa so systémom OpenWebUI - prečítajte si dokumentáciu, príp. spravte si svoju inštanciu.\n- Vytvorte jedno alebo viacero rozšírení, ktoré umožnia napň", + "content_length": 5093 + }, + { + "path": "pages/students/2022/daniil_huzenko/README.md", + "title": "Daniil Huzenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2025" + ], + "tag": [ + "klaud" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Daniil Huzenko", + "published": true, + "taxonomy": { + "category": [ + "bp2025" + ], + "tag": [ + "klaud" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Bakalárska práca 2025\n\nVedúci: doc. Matúš Pleva PhD.\n\nPredbežný názov:\n\nTestovanie hybridného klaudu s využiťím kombinácie verejného a privátneho riešenia\n\nCielom práce je vytvorenie vzelávacích materiálov o Kubernetes a funkčného prototypu privátneho klastra Kubernetes .\n\nZadanie:\n\n1.\tNapíšte prehľad metód automatizácie procesov a vypracujte úvod do platformy Kubernetes. \n2.\tVypracujte prehľad domácich klastrov založených na platforme ARM.\n3.\tZostavte vlastný klaste", + "content_length": 3960 + }, + { + "path": "pages/students/2022/jakub_schwarc/README.md", + "title": "Jakub Schwarc", + "categories": [ + "dp2027" + ], + "tags": [ + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2027" + ], + "tag": [ + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Jakub Schwarc", + "published": true, + "taxonomy": { + "category": [ + "dp2027" + ], + "tag": [ + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Diplomový projekt 2026\n\n\nTéma:\n\nInštrukčné dotrénovanie jazykového modelu\n\nCiele na semester:\n\n- Dotrénujte a vyhodnotte Slovak Mistral.\n\nStretnutie 27.2.\n\n- Obozn8mte sa problematikou podľa zadaných zdrojov.\n- Pozrite si https://allenai.org/olmo\n\nÚlohy:\n\n- Oboznámte sa s problematikou veľkých jazykových modelov. Towards Data Science\n- Naučte sa Python lepšie. Nainštalujte si prostredie Anaconda.\n- Poučte sa o strojovom účení. Dive into deep learning.\n- Vyskúšajte si", + "content_length": 1139 + }, + { + "path": "pages/students/2022/jan_malinovsky/README.md", + "title": "Ján Malinovský", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Ján Malinovský", + "published": true, + "taxonomy": { + "category": [ + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Diplomový projekt 2026\n\n\nTéma:\n\nGrafové vyhľadávanie pre podporu vzdelávania\n\nCiele na semester.\n\n- Zistite čo je to Retrieval Augmented Generation\n- Zistite, čo je to znalostný graf\n- Naučte sa čo je to GraphRAG\n- Zostavte malý znalostný graf z oblasti vzdelávania. Pri zostavení môžete využiť jazykový model. Môžete preložiť existujúci znalostný graf. \n- Využite znalostný graf pre zlepšenie práce alebo vysvetliteľnosti jazkového modelu\n\nNapr.\n\n- výchovné opatrenia v ", + "content_length": 3764 + }, + { + "path": "pages/students/2022/jan_ptak/README.md", + "title": "Ján Pták", + "categories": [ + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Ján Pták", + "published": true, + "taxonomy": { + "category": [ + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Diplomový projekt 2026\n\n\nTéma:\n\nAgent pre manažment záverečných prác\n\n\nCiele na semester.\n\n- Zistite čo je to Retrieval Augmented Generation\n- Vytvorte agenta pre zlepšenie manažmentu záverečných prác zpwiki. \n- Ako rozhranie použite OpenWebUI. \n- Navrhnite deployment pomocou Docker. Implementujte aj synchronizáciou (pomocou WebHOOK)\n\n\nZásobník úloh:\n\n- Zistite, čo je to znalostný graf\n- Naučte sa čo je to GraphRAG\n- Využite znalostný graf pre zlepšenie práce alebo v", + "content_length": 1126 + }, + { + "path": "pages/students/2022/oleh_poiasnik/README.md", + "title": "Oleh Poiasnik", + "categories": [ + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2025", + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Oleh Poiasnik", + "published": true, + "taxonomy": { + "category": [ + "bp2025", + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Diplomová práca 2027\n\nExpertný agentový systém na podporu rozhodovania v lekárni\n\nCieľ:\n\n- Vylepšiť agenta pre prácu so znalostným grafom - interakcie a kontraindikácie.\n- Zostaviť znalostný graf z databázy príbalových letákov adc a s jeho pomocou zlepšiť generovanie odpovede.\n\nStretnutie 14.5.\n\nStav:\n\n- Získaná databáza ADC pomocou scrapera.\n- Dáta sú transformované do JSON, je definovaná schéma.\n- Pomocou LightRAG je vytvorený znalostný graf pre niekoľko (500) liek", + "content_length": 9493 + }, + { + "path": "pages/students/2022/samuel_vasil/README.md", + "title": "Samuel Vasiľ", + "categories": [ + "bp2026" + ], + "tags": [ + "llm", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "llm", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Samuel Vasiľ", + "published": true, + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "llm", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n\n## Bakalárska práca 2026\n\nkonzultant Matúš Čavojský\n\nPredbežný názov:\n\nOrchestrácia veľkých jazykových modelov pomocou model context protokolu s využitím OpenWebUI\n\nZadanie:\n\n- Vypracujte prehľad súčasných veľkých jazykových modelov s podporou slovenčiny, ktoré sa používajú na generovanie prirodzeného jazyka, generovanie programového kódu a vyhľadávanie informácií. \n- Nasaďte OpenWebUI pomocou Docker Compose a vybrať niekoľko vhodných modelov, ktoré sprístupníte pros", + "content_length": 1699 + }, + { + "path": "pages/students/2022/serhii_yemets/README.md", + "title": "Serhii Yemets", + "categories": [ + "bp2025" + ], + "tags": [ + "ner", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2025" + ], + "tag": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Serhii Yemets", + "published": true, + "taxonomy": { + "category": [ + "bp2025" + ], + "tag": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Bakalárska práca 2025\n\nCieľ:\n\n- Zlepšenie slovenského modelu pre rozpoznávanie pomenovaných entít.\n\nDo budúcnosti: \n\n- Vypracovanie webového dema\n- Využitie modelu v nejakej zaujímavej úlohe (chatbot alebo právne texty).\n\nNávrh na zadanie bakalárskej práce:\n\n1. Napíšte prehľad neurónových modelov vhodných pre rozpoznávanie pomenovaných entít v slovenskom jazku.\n2. Napíšte prehľad existujúcich dátových množín, vhodných na trénovanie modelu pre rozpoznávanie pomenovan", + "content_length": 4823 + }, + { + "path": "pages/students/2022/tetiana_mohorian/README.md", + "title": "Tetiana Mohorian", + "categories": [ + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2025" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Tetiana Mohorian", + "published": true, + "taxonomy": { + "category": [ + "bp2025" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n\n## Bakalárska práca 2025\n\n- Spolupráca [P. Pokrivčák](/students/2019/patrik_pokrivcak)\n- [Python](/topics/python)\n- [Hate Speech](/topics/hatespeech)\n\n\nRozpoznávanie nenávistnej reči pomocou veľkých jazykových modelov.\n\nZadanie:\n\n1. Vypracujte prehľad veľkých jazykových modelov s podporou slovenčiny.\n2. Vypracujte prehľad dostupných textových korpusov pre rozpoznávanie nenávistnej reči.\n3. Vyberte model a metódu rozpoznávania nenávistnej reči. Vyhodnoťte presnosť roz", + "content_length": 5068 + }, + { + "path": "pages/students/2022/valerii_kutsenko/README.md", + "title": "Valerii Kutsenko", + "categories": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tags": [ + "rag", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Valerii Kutsenko", + "published": true, + "taxonomy": { + "category": [ + "vp2024", + "bp2025", + "dp2027" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Diplomová práca 2027\n\nZlepšenie vyhľadávania pomocou znalostných grafov.\n\nMyšlienky:\n\n- Agent si buduje vnútornú reprezentáciu pomocu ktorej vie lepšie generovať.\n- Vnútorná reprezentácia je v človeku zrozumiteľnej podobe, napr. znalostný graf.\n\nMožné úlohy:\n\n- Navrhnite agenta, ktorý bude budovať a využívať znalostný graf pri vyhľadávaní.\n- Môže to byť v oblasti vzdelávania, práva alebo medicíny.\n- Zostavte multilinguálny znalostný graf, ktorý môže pomôcť pri genero", + "content_length": 13632 + }, + { + "path": "pages/students/2022/vladyslav_yanchenko/README.md", + "title": "Vladyslav Yanchenko", + "categories": [ + "bp2025" + ], + "tags": [ + "klaud" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2025" + ], + "tag": [ + "klaud" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Vladyslav Yanchenko", + "published": true, + "taxonomy": { + "category": [ + "bp2025" + ], + "tag": [ + "klaud" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Bakalárska práca 2025\n\nNázov: \n\nKontinuálne nasadenie a testovanie aplikácie v klaudovom prostredí. \n\nÚlohy BP:\n\n1. Vypracujte písomný prehľad verejných klaudových služieb a softvérových prosriedkov pre podporu procesu a nasadenia aplikácie.\n2. Vytvorte a opíšte webovú aplikáciu zloženú z viacerých komponentov a upravte ju do podoby vhodnej na nasadenie v klaude. K aplikácii vytvorte automatické testy.\n3. Vytvorte a opíšte proces kontinuálneho nasadenia a integráci", + "content_length": 3972 + }, + { + "path": "pages/students/2022/yevhenii_leonov/README.md", + "title": "Yevhenii Leonov", + "categories": [ + "vp2024", + "bp2025" + ], + "tags": [ + "rag", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "vp2024", + "bp2025" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Yevhenii Leonov", + "published": true, + "taxonomy": { + "category": [ + "vp2024", + "bp2025" + ], + "tag": [ + "rag", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2022\n\n# Bakalárska práca 2025\n\n\nTéma:\n\n\nVyhodnotenie generovania slovenského jazyka s pomocou vyhľadávania\n\nPredbežné zadanie:\n\n1. Vypracujte prehľad metód a modelov generovania jazyka s pomocou vyhľadávania.\n2. Vypracujte prehľad metód ich vyhodnotenia. \n3. Vyskúšajte a vyhodnoťte vybranú metódu generovania jazyka s pomocou vyhľadávania.\n4. Navrhnite zlepšenia pre vybranú metódu generovania odpovede. \n\n\nNávrh na tému:\n\n- Vyhodnotenie systémov RAG\n\nSpolupráca Oleh Poiasnik\n", + "content_length": 3613 + }, + { + "path": "pages/students/2023/denis_le_thanh/README.md", + "title": "Denis Le Thanh", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Denis Le Thanh", + "published": true, + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2023\n\nštudent KPI\n\nvedúci Ing. Tomáš Kormaník\n\nkonzultácie: Ing. Kristián Sopkovič\n\n# Bakalárska práca 2026\n\n\nTéma:\n\nTrénovanie jazykového modelu pre spracovanie inštrukcií v prirodzenom jazyku\n\n\nCiele:\n\n- Skúsiť dotrénovať slovenský generatívny model (slovak-mistral-7b) pre inštrukcie.\n\nStretnutie 5.12. (K. Sopkovič)\n\nStav:\n\n- Analyticka praca cca 12 stran \n- Su potrebne vyhotiv zmeny - tema musi suvisiet so studijnum odborom - kyberbezpecnost (potrebna diskusia s D.Hladek)", + "content_length": 2608 + }, + { + "path": "pages/students/2023/maksym_zatirka/README.md", + "title": "Maksym Zatirka", + "categories": [ + "bp2026" + ], + "tags": [ + "nlp", + "graph", + "db" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Maksym Zatirka", + "published": true, + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "nlp", + "graph", + "db" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2023\n\nštudent KM\n\n\n# Bakalárska práca 2026\n\n\nTéma:\n\nGrafová databáza pre podporu generovania slovenského jazyka\n\nZadanie:\n\n1. Vypracujte prehľad metód podpory generovania prirodzeného jazyka pomocou znalostných grafov.\n2. Zostavte znalostný graf pre slovenské právo a vložte ho do vybranej grafovej databázy. \n3. Navrhnite a vytvorte inteligentného agenta, ktorý využije vytvorený znalostný graf.\n4. Vyhodnoťte agenta, identifikujte jeho slabé miesta a navrhnite zlepšenia pre pr", + "content_length": 5342 + }, + { + "path": "pages/students/2023/oleksandr_dorybohov/README.md", + "title": "Oleksandr Dorybohov", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Oleksandr Dorybohov", + "published": true, + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2023\n\n\n# Bakalárska práca 2026\n\nhttps://git.kemt.fei.tuke.sk/od059jr/ai-lawyer-agent\n\nTéma:\n\nAutomatické odpovede na otázky v právnej oblasti\n\nCiele:\n\nVytvorte agenta pre spracovanie slovenských právnych textov \n\nPredbežné zadanie:\nZadanie:\n\n1. Vypracujte prehľad jazykových modelov s podporou slovenčiny a s možnosťou volania nástrojov. \n2. Vyberte a opíšte vhodné verejné API pre prístup k informáciám z právnej oblasti. \n3. Navrhnite a vypracujte inteligentného agenta, kto", + "content_length": 4663 + }, + { + "path": "pages/students/2023/ronald_zalacko/README.md", + "title": "Ronald Zalacko", + "categories": [ + "bp2026" + ], + "tags": [ + "web" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "web" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Ronald Zalacko", + "published": true, + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "web" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2023\n\n\nVedúci: Matúš Pleva\n\n\n# Bakalárska práca 2026\n\n\nTéma:\n\nSkórovací online systém pre robotické súťaže\n\n\nhttps://git.kemt.fei.tuke.sk/rz409st/scoring-system/src/branch/main/backend\n\nCiele:\n\n- Vypracujte prehľad robotických súťaží a podporného softvéru pre robotické súťaže.\n- Vyberte jeden druh robotickej sútaže a opíšte procesy ktoré tam prebiehajú.\n- Podľa vykonanej analýzy navrhnite a vytvorte aplikáciu pre podporu a manažment robotickej súťaže.\n- Aplikáciu nasaďte pom", + "content_length": 2685 + }, + { + "path": "pages/students/2023/rostyslav_rodzhuk/README.md", + "title": "Rostyslav Rodzhuk", + "categories": [ + "vp2025", + "bp2026" + ], + "tags": [ + "agent", + "lm", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "vp2025", + "bp2026" + ], + "tag": [ + "agent", + "lm", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Rostyslav Rodzhuk", + "published": true, + "taxonomy": { + "category": [ + "vp2025", + "bp2026" + ], + "tag": [ + "agent", + "lm", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2023\n\n\n\n# Bakalárska práca 2026\n\n\nTéma:\n\nInteligentný agent pre podporu práce špeciálneho pedagóga\n\nPredbežné zadanie:\n\n1. Vypracujte prehľad agentových systémov na báze veľkého jazykového modelu. \n2. Získajte dáta z internetu a vytvorte inteligentného agenta na pomoc špeciálnemu pedagógovi. \n3. Navrhnite a nasadte webové rozhranie pre inteligentného agenta. \n4. Navrhnite viacero scenárov interakcie s inteligentným agentom a slovne vyhodnoťte ich priebeh. \n\n\nhttps://git", + "content_length": 4768 + }, + { + "path": "pages/students/2023/samuel_dzurina/README.md", + "title": "Samuel Džurina", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp", + "agent" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Samuel Džurina", + "published": true, + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "lm", + "nlp", + "agent" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2023\n\n\n# Bakalárska práca 2026\n\n\nTéma:\n\nDialógový systém pre podporu firemných procesov\n\n\nCiele:\n\nVytvorte agenta pre podporu činnosti zásielkovej spoločnosti.\n\nZadanie:\n\n1. Vypracujte prehľad architektúr a jazykových modelov pre inteligentných agentov. \n2. Vypracujte zoznam požiadaviek na agenta pre podporu činnosti zásielkovej spoločnosti. \n3. Na základe vypracovaného prehľadu a zoznamu požiadaviek navrhnite a vypracujte inteligentného agenta. \n4. Agenta otestujte a vyh", + "content_length": 6751 + }, + { + "path": "pages/students/2023/simona_bobrovcanova/README.md", + "title": "Simona Bobrovčanová", + "categories": [ + "bp2026" + ], + "tags": [ + "lm", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Simona Bobrovčanová", + "published": true, + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "lm", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2023\n\n\n# Bakalárska práca 2026\n\nTéma:\n\nAutomatická sumarizácia slovenského textu\n\nZadanie:\n\n1. Zostavte prehľad modelov a metód vhodných na automatickú sumarizáciu textov v slovenskom jazyku.\n2. Vyberte viacero vhodných modelov a vykonajte sumarizáciu na vybranej množine.\n3. Vyhodnoťte výsledky vhodnou metódou.\n4. Identifikujte slabé miesta existujúceho spôsobu sumarizácie a navrhnite možné zlepšenia. \n\nhttps://git.kemt.fei.tuke.sk/sb610oy/bakalarska-praca\n\nCiele:\n\nZlepšite ", + "content_length": 4181 + }, + { + "path": "pages/students/2023/yevhenii_medushivskyi/README.md", + "title": "Yevhenii Medushivskyi", + "categories": [ + "bp2026" + ], + "tags": [ + "ir", + "lm", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Yevhenii Medushivskyi", + "published": true, + "taxonomy": { + "category": [ + "bp2026" + ], + "tag": [ + "ir", + "lm", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "rok začiatku štúdia: 2023\n\n# Bakalárska práca 2026\n\n\nTéma:\n\nZískavanie textu z webových stránok\n\nZadanie:\n\n1. Vypracujte prehľad webových korpusov a metód ich tvorby. \n2. Vytvorte a nasadte webový crawler na sledovanie a sťahovanie slovenského internetu. \n3. Pomocou crawlera získajte dáta z internetu a vytvorte korpus dát pre viaceré domény. \n4. Analyzujte získané dáta, priebeh ich sťahovania a navrhnite zlepšenia procesu získavania textových dát. \n\nStretnutie 11.5.2026.\n\nStav:\n\n- Napísaná ", + "content_length": 6139 + }, + { + "path": "pages/topics/akopisat/README.md", + "title": "Záverečné práce a projekty", + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "zp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Záverečné práce a projekty", + "published": true, + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "zp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Ako písať záverečnú prácu\n\n- [Ako písať záverečnú prácu](http://akopisatprace.sk/wp-content/uploads/ako_pisat_zav_prace_final_skratene2_6.pdf)\n- [Odovzdanie a šablóna](https://portal.lib.tuke.sk/etd/)\n\n## Osnova záverečnej práce\n\n1. Úvod: Predstavte čitateľovi problém \n2. Teória (State-of-the-art): Vysvetlíte možné spôsoby riešenia definovaného problému a vysvetlíte dôležité pojmy. Mali by ste sa odvolávať na najnovšie vedecké články a knihy.\n3. Riešenie: Z možných spôsobov riešenia vyberte j", + "content_length": 2877 + }, + { + "path": "pages/topics/bert/README.md", + "title": "Jazykový model slovenského jazyka", + "categories": [], + "tags": [], + "published": true, + "author": "Daniel Hládek", + "taxonomy": {}, + "metadata": { + "title": "Jazykový model slovenského jazyka", + "published": true, + "author": "Daniel Hládek" + }, + "content_preview": "! Cieľ:\n!\n! - Natrénovať a vyhodnotiť slovenský jazykový model typu BERT z korpusu webových textov\n\n## Súvisiace projekty\n\n- [SlovakBERT](https://github.com/gerulata/slovakbert) od Kinit, a [článok](https://arxiv.org/abs/2109.15254)\n- [SK Quad](/topics/question) - Slovak Question Answering Dataset \n- bakalárska práca [Ondrej Megela](/students/2018/ondrej_megela)\n- diplomová práza Jozef Olekšák (in progress, trénovanie electra na colab).\n- https://git.kemt.fei.tuke.sk/dano/bert-train\n\n## Rozpraco", + "content_length": 4790 + }, + { + "path": "pages/topics/chatbot/README.md", + "title": "Dialógový systém", + "categories": [ + "project" + ], + "tags": [ + "chatbot", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Dialógový systém", + "published": true, + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "chatbot", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "Navrhnite a vytvorte dialógový systém komunikujúci v slovenskom jazyku pre úlohu komunikácie občana s mestom.\n\n## Úlohy\n\n- Zostavte bázu pravidiel pre systém RASA.\n- Vyhodnoťte chatbota pre rôzne úlohy.\n- Vytvorte a nasaďte webovú aplikáciu pre testovací prístup.\n\n- Spracujte dáta o digitálnych služnách od mesta. Vytvorte z nich trénovaciu databázu.\n- Identifikujte agendu ktorú by riešil chatbot.\n- Identifikujte, ktoré časti pravidiel sa budú dať meniť.\n- Vytvorte webovú aplikáciu pre úpravu báz", + "content_length": 1675 + }, + { + "path": "pages/topics/faq/README.md", + "title": null, + "categories": [ + "info" + ], + "tags": [ + "zp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "zp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "published": true, + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "zp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Často kladené otázky\n\n## Pre koho to je?\n\nStránka je určená pre študentov a vyučujúcich na Katedre elektroniky a multimediálnych telekomunikácií pre zdieľanie výsledkov záverečných prác.\nPomôže aj záujemcom o štúdium, zamestnávateľom a partnerom katedry na získanie prehľadu o študentskej odbornej činnosti.\n\n## Ako to funguje\n\nStránka je založená na princípe WIKI - každý prihlásený použvateľ môže zapisovať na ľubovoľné miesto. Každá zmena aj jej autor sa ale zaznamenáva pomocou [systému GIT](ht", + "content_length": 3809 + }, + { + "path": "pages/topics/hatespeech/README.md", + "title": "Hate Speech", + "categories": [ + "project" + ], + "tags": [ + "hatespeech", + "nlp", + "nlm" + ], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": { + "title": "Hate Speech", + "category": [ + "project" + ], + "tag": [ + "hatespeech", + "nlp", + "nlm" + ] + }, + "content_preview": "# Hate Speech Scientific Project\n\nGoal:\n\n- To be able to recognize parts of text that contains hate or vulgarisms.\n\nPossible applications:\n\n- Management of discussion forums / detection of spam or abuse.\n- \"Postprocessing\" for biased generative language models - preventing to generate inapropriate responses.\n\nPlan:\n\n- Perform a review of the state-of-the-art\n- Pick established (english) corpora\n- Formalize the problem - classification of sentiment, recognition of topic, keyword selection, \n- Pro", + "content_length": 2083 + }, + { + "path": "pages/topics/legal/README.md", + "title": "Legal Data Processing", + "categories": [ + "project" + ], + "tags": [ + "legal", + "nlp" + ], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": { + "title": "Legal Data Processing", + "category": [ + "project" + ], + "tag": [ + "legal", + "nlp" + ] + }, + "content_preview": "# Legal Data Processing Scientific Project\n\nGoal:\n\n- Help the slovak judges \n\nPossible applications:\n\n- agent retrieval agent to search in laws and processdings.\n- question answering system\n\nPlan:\n\n- Develop a demo agent for legal and proceeding retrieval anad answering.\n- Develop a summarization system - retrieve and highlight important parts of document. Generate a summary.\n\n\nPeople:\n\n- Daniel Hládek\n- [Martin Šarišský](/students/2021/martin_sarissky) - agentový systém\n- [Matej Ščišľak](/st", + "content_length": 1876 + }, + { + "path": "pages/topics/morphology/README.md", + "title": "Morfologická analýza slovenského jazyka", + "categories": [ + "project" + ], + "tags": [ + "pos", + "spacy", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "pos", + "spacy", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Morfologická analýza slovenského jazyka", + "published": true, + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "pos", + "spacy", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Morfologická analýza slovenského jayzka\n\n\nIdentifikácia morfologických jednotiek\n\n- Hunspell Leamtizátor, pravidlá pre affix\n\nByte Pair Encoding\n\nWord Prep https://ieeexplore.ieee.org/document/9005608\n\n\nMorfessor morfologické jednotky", + "content_length": 237 + }, + { + "path": "pages/topics/named-entity/README.md", + "title": "Pomenované entity", + "categories": [ + "project" + ], + "tags": [ + "ner", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Pomenované entity", + "published": true, + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "ner", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Pomenované entity\n## Stretnutia\n\n11.8.2020\n\nRozdelíme wikicorpus na 100 častí.\n\nNebudeme riešiť doménový bias vo wikipédii.\n\nBudeme riešiť bias na dĺžku článkov.\n\nTagová značka asi: LOC, MISC, ORG, PER.\n\nPeter sa pozrie na wikiextraktor.\n\nDaniel:\n\n- vyrieši šablóny\n- vypočíta štatistiky o dĺžke paragrafov\n- navrhne pravidlo na ohodnotenie kvality článku, Kvalita článku závisí na dĺžke dobrých paragrafov a dĺžke celého článku.\n\n## Úlohy\n\n### Príprava dát\n\n[Repozitár annotation/wikicorpus](https", + "content_length": 2232 + }, + { + "path": "pages/topics/named-entity/navod/README.md", + "title": "Anotácia pomenovaných entít", + "categories": [], + "tags": [ + "ner", + "annotation" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "author": "Daniel Hladek", + "categories": [ + "project" + ], + "tags": [ + "ner", + "annotation" + ] + }, + "metadata": { + "title": "Anotácia pomenovaných entít", + "published": true, + "process": { + "twig": true + }, + "cache_enable": false, + "taxonomy": { + "author": "Daniel Hladek", + "categories": [ + "project" + ], + "tags": [ + "ner", + "annotation" + ] + }, + "forms": { + "ner1": { + "name": "ner1", + "fields": [ + { + "name": "name", + "label": "Login", + "placeholder": "Váš e-mail", + "autofocus": true, + "autocomplete": true, + "type": "email", + "validate": { + "required": true, + "message": "Musíte zadať platný e-mail aby sa započítala anotácia" + } + } + ], + "buttons": [ + { + "type": "submit", + "value": "Začni anotovať" + } + ], + "process": [ + { + "redirect": "https://skner.tukekemt.xyz/?session={{ form.value.name }}" + } + ] + } + } + }, + "content_preview": "# Anotácia pomenovaných entít\n\nPomôžte nám pri vedeckom výskume tým, že naučíte stroj rozpoznávať vlastné podstatné mená.\nUčenie prebieha tak, že v texte ukážete ktoré slová patria názvom osôb, miest, organizácií alebo vecí.\nÚčasť v tomto experimente Vám pomôže vylepšiť Vaše študijné výsledky a vyhrať aj televízny otázkový kvíz \"Tisícionár\".\n\n## Návod pre anotátorov\n\n\nVašou úlohou bude v texte vyznačiť vlastné podstatné mená.\nVlastné podstatné meno sa v slovenskom jazyku spravidla začína veľkým ", + "content_length": 1925 + }, + { + "path": "pages/topics/nlp/README.md", + "title": "Nástroje a zdroje pre spracovanie prirodzeného jazyka", + "categories": [ + "info" + ], + "tags": [ + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Nástroje a zdroje pre spracovanie prirodzeného jazyka", + "published": true, + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "## Knihy\n\n- Lane, Howard, Hopke: Natural language processing in action\n- [Spacy Tutoriál](https://nlpforhackers.io/complete-guide-to-spacy/)\n- [Dive into Python](https://diveintopython3.problemsolving.io/) [(česky)](http://diveintopython3.py.cz/index.html)\n- [Natural Language Processing in Action](https://www.manning.com/books/natural-language-processing-in-action) [(git)](https://github.com/totalgood/nlpia)\n- [Python Data Science Handbook](https://github.com/jakevdp/PythonDataScienceHandbook)", + "content_length": 1524 + }, + { + "path": "pages/topics/otvorene/README.md", + "title": "Otvorené projekty", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Otvorené projekty", + "published": true, + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Otvorené témy záverečných prác\n\nDaniel Hládek\n\n\n## Nápady na projekty\n\n- Čistenie dát - zlepšenie webových trénovacích korpusov. Identifikácia \"neužitočných častí\" textu. Reklámy, eshopy. Vulgárne diskusie. Zostavenie modelu pre identifikáciu.\n- Sumarizácia na súdnych alebo lekárskych dátach.\n- Dotrénovanie jazykového modelu pre súdnu alebo lekársku doménu pomoocu LORA/PEFT.\n- Spracovanie pomenovaných entít - anonymizácia. \n- Grafové neurónové siete - súdna doména. Alebo Open Data. \n- Zber slo", + "content_length": 3062 + }, + { + "path": "pages/topics/prodigy/README.md", + "title": "Anotácia textových dát", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "question-answer", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "annotation", + "ner", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Anotácia textových dát", + "published": true, + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "annotation", + "ner", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Anotácia textových dát\n\n- Natrénovanie štatistického modelu pre spracovanie prirodzeného jazyka zo slovenských dát\n- Manuálna anotácia slovenských dát pre výskyt pomenovaných entít\n\n## Postup\n\n- Definovanie anotačnej schémy\n- Príprava dátovej množiny vhodnej na anotáciu\n- Natrénovanie štatistického modelu Spacy\n- Príprava anotačnej úlohy Prodigy\n\n## Nástroje\n\n- Python (príprava dát)\n- Spacy (štatistický model) [Spacy](https://spacy.io/))\n- [Prodigy](https://prodi.gy/) (anotácie) \n\n## Riešiteli", + "content_length": 646 + }, + { + "path": "pages/topics/python/README.md", + "title": "Jazyk Python", + "categories": [ + "info" + ], + "tags": [ + "python" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "python" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Jazyk Python", + "published": true, + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "python" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Práca s jazykom Python v prostredí Anaconda\n\nVhodný na spracovanie prirodzeného jazyka\n\n\nPodobné prostredie si viete vytvoriť na Vašom počítači, na školskom servri alebo na Google Colab.\n\n\n## Ako začať s Pythonom\n\nPrečítajte si \n\nhttps://diveintopython3.net/\n\nhttp://diveintopython3.py.cz/index.html\n\nhttps://jakevdp.github.io/PythonDataScienceHandbook/\n\n## Vývojové prostredie Anaconda\n\nNainštalujte si prostedie [anaconda](https://www.anaconda.com/). \n\nStiahnite si [inštalátor](https://docs.cond", + "content_length": 2940 + }, + { + "path": "pages/topics/question/README.md", + "title": "Question Answering", + "categories": [ + "project" + ], + "tags": [ + "annotation", + "question-answer", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Question Answering", + "published": true, + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "annotation", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Question Answering\n\n- [Project repository](https://git.kemt.fei.tuke.sk/dano/annotation) (private)\n- [Annotation Manual for question annotation](navod)\n- [Annotation Manual for validations](validacie)\n- [Annotation Manual for unanswerable questions](nezodpovedatelne)\n- [Summary database application](https://app.question.tukekemt,xyz)\n\n\n## Project Description\n\n- Create a clone of [SQuaD 2.0](https://rajpurkar.github.io/SQuAD-explorer/) in the Slovak language\n- Setup annotation infrastructure wi", + "content_length": 5492 + }, + { + "path": "pages/topics/question/navod/README.md", + "title": "Anotácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "author": "Daniel Hladek", + "categories": [ + "project" + ], + "tags": [ + "question-answer", + "annotation" + ] + }, + "metadata": { + "title": "Anotácia otázok a odpovedí", + "published": true, + "process": { + "twig": true + }, + "cache_enable": false, + "taxonomy": { + "author": "Daniel Hladek", + "categories": [ + "project" + ], + "tags": [ + "question-answer", + "annotation" + ] + }, + "forms": { + "question1": { + "name": "question1", + "fields": [ + { + "name": "name", + "label": "Login", + "placeholder": "Váš e-mail", + "autofocus": true, + "autocomplete": true, + "type": "email", + "validate": { + "required": true, + "message": "Musíte zadať platný e-mail aby sa započítala anotácia" + } + } + ], + "buttons": [ + { + "type": "submit", + "value": "Začni anotovať" + } + ], + "process": [ + { + "redirect": "https://question.tukekemt.xyz/?session={{ form.value.name }}" + } + ] + }, + "questionapp": { + "name": "questionapp", + "fields": [ + { + "name": "name", + "label": "Login", + "placeholder": "Váš e-mail", + "autofocus": true, + "autocomplete": true, + "type": "email", + "validate": { + "required": true, + "message": "Zadajte e-mail s anotáciami" + } + } + ], + "buttons": [ + { + "type": "submit", + "value": "Koľko som anotoval?" + } + ], + "process": [ + { + "redirect": "https://app.question.tukekemt.xyz/annotator/{{ form.value.name }}" + } + ] + } + } + }, + "content_preview": "Pomôžte nám pri vedeckom výskume tým, že naučíte stroj odpovedať na otázky z Wikipédie. \nUčenie prebieha tak, že vytvoríte príklad s otázkou a odpoveďou. Účasť v tomto experimente Vám pomôže vylepšiť Vaše študijné výsledky a vyhrať televízny kvíz \"Tisícionár\".\n\n## Návod pre anotátorov\n\nAk chcete, pozrite si [videonávod](https://files.kemt.fei.tuke.sk/predmety/question_answer/navod1.mp4) a [motivačnú prednášku](https://files.kemt.fei.tuke.sk/predmety/usaa/videa/usaa20pr10.mp4) o systémoch na gen", + "content_length": 4408 + }, + { + "path": "pages/topics/question/nezodpovedatelne/README.md", + "title": "Tvorba nezodpovedateľných otázok", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "published": false, + "author": "Daniel Hladek", + "taxonomy": { + "author": "Daniel Hladek", + "categories": [ + "project" + ], + "tags": [ + "question-answer", + "annotation" + ] + }, + "metadata": { + "title": "Tvorba nezodpovedateľných otázok", + "published": false, + "process": { + "twig": true + }, + "cache_enable": false, + "taxonomy": { + "author": "Daniel Hladek", + "categories": [ + "project" + ], + "tags": [ + "question-answer", + "annotation" + ] + }, + "forms": { + "question3": { + "name": "question3", + "fields": [ + { + "name": "name", + "label": "Login", + "placeholder": "Váš e-mail", + "autofocus": true, + "autocomplete": true, + "type": "email", + "validate": { + "required": true, + "message": "Musíte zadať platný e-mail aby sa započítala anotácia" + } + } + ], + "buttons": [ + { + "type": "submit", + "value": "Začni anotovať" + } + ], + "process": [ + { + "redirect": "https://unanswerable.question.tukekemt.xyz/?session={{ form.value.name }}" + } + ] + }, + "questionapp": { + "name": "questionapp", + "fields": [ + { + "name": "name", + "label": "Login", + "placeholder": "Váš e-mail", + "autofocus": true, + "autocomplete": true, + "type": "email", + "validate": { + "required": true, + "message": "Zadajte e-mail s anotáciami" + } + } + ], + "buttons": [ + { + "type": "submit", + "value": "Koľko som anotoval?" + } + ], + "process": [ + { + "redirect": "https://app.question.tukekemt.xyz/annotator/{{ form.value.name }}" + } + ] + } + } + }, + "content_preview": "Pomôžte nám pri vedeckom výskume tým, že naučíte stroj odpovedať na otázky z Wikipédie. \nÚčasť v tomto experimente Vám pomôže vylepšiť Vaše študijné výsledky a vyhrať televízny kvíz \"Tisícionár\".\nHotová nezodpovedateľná otázka a odpoveď bude slúžiť ako negatívny príklad pre učenie systému pre automatické odpovede. Vďaka negatívnym príkladom bude možné lepšie rozlíšiť, ktoré odpovede systému sú nerelevantné k danému odseku.\n\nAk chcete, pozrite si [motivačnú prednášku](https://files.kemt.fei.tuke", + "content_length": 2972 + }, + { + "path": "pages/topics/question/validacie/README.md", + "title": "Validácia otázok a odpovedí", + "categories": [], + "tags": [ + "question-answer", + "annotation" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "author": "Daniel Hladek", + "categories": [ + "project" + ], + "tags": [ + "question-answer", + "annotation" + ] + }, + "metadata": { + "title": "Validácia otázok a odpovedí", + "published": true, + "process": { + "twig": true + }, + "cache_enable": false, + "taxonomy": { + "author": "Daniel Hladek", + "categories": [ + "project" + ], + "tags": [ + "question-answer", + "annotation" + ] + }, + "forms": { + "question2": { + "name": "question2", + "fields": [ + { + "name": "name", + "label": "Login", + "placeholder": "Váš e-mail", + "autofocus": true, + "autocomplete": true, + "type": "email", + "validate": { + "required": true, + "message": "Musíte zadať platný e-mail aby sa započítala anotácia" + } + } + ], + "buttons": [ + { + "type": "submit", + "value": "Začni anotovať" + } + ], + "process": [ + { + "redirect": "https://validation.question.tukekemt.xyz/?session={{ form.value.name }}" + } + ] + }, + "questionapp": { + "name": "questionapp", + "fields": [ + { + "name": "name", + "label": "Login", + "placeholder": "Váš e-mail", + "autofocus": true, + "autocomplete": true, + "type": "email", + "validate": { + "required": true, + "message": "Zadajte e-mail s anotáciami" + } + } + ], + "buttons": [ + { + "type": "submit", + "value": "Koľko som anotoval?" + } + ], + "process": [ + { + "redirect": "https://app.question.tukekemt.xyz/annotator/{{ form.value.name }}" + } + ] + } + } + }, + "content_preview": "Pomôžte nám pri vedeckom výskume tým, že naučíte stroj odpovedať na otázky z Wikipédie. \nUčenie prebieha tak, že vytvoríte príklad s otázkou a odpoveďou. Účasť v tomto experimente Vám pomôže vylepšiť Vaše študijné výsledky a vyhrať televízny kvíz \"Tisícionár\".\n\nAk chcete, pozrite si [motivačnú prednášku](https://files.kemt.fei.tuke.sk/predmety/usaa/videa/usaa20pr10.mp4) o systémoch na generovanie odpovede na otázku v prirodzenom jazyku.\n\n# Úloha\n\nVašou úlohou bude overiť, či je napísaná otázka", + "content_length": 2171 + }, + { + "path": "pages/topics/resources/README.md", + "title": "Slovenské jazykové zdroje", + "categories": [ + "info" + ], + "tags": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Slovenské jazykové zdroje", + "published": true, + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "annotation", + "ner", + "pos", + "question-answer", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Slovenské jazykové zdroje\n\n### POS\n\n[Multext East](http://nl.ijs.si/ME/) Anotovaný román George Orwell 1984 v 15 európskych jazykoch\n\n\n### NER\n\n- Learning multilingual named entity recognition from Wikipedia- WIKI Ner?\n- Cross-lingual Name Tagging and Linking for 282 Languages - NER anotácia aj slovenskej Wikipédie podľa anglickej\n - https://drive.google.com/drive/folders/1bkK6ly_awxe9IgAKL16VVvCtjcYcDSw8\n - https://elisa-ie.github.io/wikiann/\n\n### Parsing-POS\n\n[Slovak Dependency Tree", + "content_length": 2631 + }, + { + "path": "pages/topics/seq2seq/README.md", + "title": "Prepis postupností", + "categories": [ + "info" + ], + "tags": [ + "nn", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Prepis postupností", + "published": true, + "taxonomy": { + "category": [ + "info" + ], + "tag": [ + "nn", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Sequence to sequence\n\n[Fairseq](https://github.com/pytorch/fairseq) je riadkový nástroj pre spracovanie prirodezného jazyka naprogramovaný v jazyku Python využívajúci neurónové siete.\nVie sa na príkladoch naučiť ako prepisovať jednu postupnosť ľubovoľných symbolov (znakov alebo slov) na inú postuponosť.\n\n\n## Transformer\n\nNiektoré zaujímavé odkazy na tému sequence to sequence:\n\nhttps://github.com/pytorch/fairseq\n\nhttp://jalammar.github.io/illustrated-transformer/\n\nhttps://arxiv.org/abs/1706.03", + "content_length": 503 + }, + { + "path": "pages/topics/spacy/README.md", + "title": "Podpora slovenčiny v knižnici Spacy", + "categories": [ + "project" + ], + "tags": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Podpora slovenčiny v knižnici Spacy", + "published": true, + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "spacy", + "nn", + "pos", + "ner", + "annotation", + "nlp" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "[Trénovanie modelov Spacy](https://spacy.io/usage/training)\n\n## Ciele\n\n- Vytvoriť modul v jazyku Python pre podporu slovenčiny\n- Natrénovať štatistické modely:\n - pre morfologickú analýzu \n - rozpoznávanie pomenovaných entít\n- Unifikovaný systém pre predspracovanie slovenského jazyka\n- Možné aplikácie:\n - Podporiť dialógový systém RASA\n - Neurónové vyhľadávanie\n\n## Hotové úlohy\n\n- trénovanie modelu Spacy 2, kompletné skripty\n- trénovanie modelu Spacy 3 do SNK POS tagsetu (ver. 3.0), k", + "content_length": 2107 + }, + { + "path": "pages/topics/steel/README.md", + "title": null, + "categories": [], + "tags": [], + "published": null, + "author": null, + "taxonomy": {}, + "metadata": {}, + "content_preview": "# AI4Steel\n\n## Cieľ\n\n- Návrh modelu zloženia tavnej zmesi v konvertore s využitím hlbokých neurónových sietí\n\n## Riešitelia\n\n- [Maroš Harahus](/students/2016/maros_harahus)\n- Lukáš Hruška\n\n## Metódy\n\n- klasické (štatistické) metódy predikcie postupností a predikcie časových radov.\n- modelovanie pomocou hlbokých neurónových sietí (RNN, LSTM, VAE, CNN, Transformer, GNN, GAN)\n- https://en.m.wikipedia.org/wiki/Basic_oxygen_steelmaking\n- Time Series Prediction\n- Markov Decision Process?\n- Možné nást", + "content_length": 2728 + }, + { + "path": "pages/topics/translation/README.md", + "title": "Strojový preklad", + "categories": [ + "project" + ], + "tags": [ + "translation" + ], + "published": true, + "author": "Daniel Hladek", + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "translation" + ], + "author": "Daniel Hladek" + }, + "metadata": { + "title": "Strojový preklad", + "published": true, + "taxonomy": { + "category": [ + "project" + ], + "tag": [ + "translation" + ], + "author": "Daniel Hladek" + } + }, + "content_preview": "# Strojový preklad\n\n- Štatistický strojový preklad\n- Neurónový strojový preklad\n\n## Študenti\n\n- [Patrik Pavlišin](/students/2016/patrik_pavlisin)\n- [Dominik Nagy](/students/2016/dominik_nagy)\n- [Martin Jancura](/students/2017/martin_jancura)", + "content_length": 241 + } +] \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..6f1caf5 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,23 @@ +annotated-doc==0.0.4 +annotated-types==0.7.0 +anyio==4.13.0 +click==8.4.1 +exceptiongroup==1.3.1 +fastapi==0.136.3 +gitdb==4.0.12 +GitPython==3.1.50 +h11==0.16.0 +idna==3.18 +markdown-it-py==4.2.0 +mdurl==0.1.2 +pydantic==2.13.4 +pydantic_core==2.46.4 +Pygments==2.20.0 +python-frontmatter==1.3.0 +PyYAML==6.0.3 +rich==15.0.0 +smmap==5.0.3 +starlette==1.2.1 +typing-inspection==0.4.2 +typing_extensions==4.15.0 +uvicorn==0.48.0 diff --git a/scripts/build_chunks.py b/scripts/build_chunks.py new file mode 100644 index 0000000..6380c38 --- /dev/null +++ b/scripts/build_chunks.py @@ -0,0 +1,183 @@ +from pathlib import Path +import json +import re +import frontmatter +from rich import print + + +ZPWIKI_ROOT = Path("../zpwiki") +PAGES_ROOT = ZPWIKI_ROOT / "pages" +OUTPUT_FILE = Path("data/chunks.json") + +MAX_CHARS = 1200 +OVERLAP_CHARS = 200 + + +def json_safe(value): + if value is None: + return None + + if isinstance(value, (str, int, float, bool)): + return value + + if isinstance(value, list): + return [json_safe(item) for item in value] + + if isinstance(value, dict): + return {str(key): json_safe(val) for key, val in value.items()} + + return str(value) + + +def normalize_list(value): + if value is None: + return [] + + if isinstance(value, list): + return [str(item).strip() for item in value if str(item).strip()] + + if isinstance(value, str): + return [item.strip() for item in value.split(",") if item.strip()] + + return [str(value)] + + +def clean_markdown(text: str) -> str: + text = text.replace("\r\n", "\n") + text = re.sub(r"\n{3,}", "\n\n", text) + text = text.strip() + return text + + +def split_by_headings(text: str) -> list[str]: + parts = re.split(r"(?m)(?=^#{1,6}\s+)", text) + return [part.strip() for part in parts if part.strip()] + + +def split_long_text(text: str, max_chars: int = MAX_CHARS, overlap: int = OVERLAP_CHARS) -> list[str]: + if len(text) <= max_chars: + return [text] + + chunks = [] + start = 0 + + while start < len(text): + end = start + max_chars + chunk = text[start:end].strip() + + if chunk: + chunks.append(chunk) + + if end >= len(text): + break + + start = max(0, end - overlap) + + return chunks + + +def chunk_markdown(text: str) -> list[str]: + text = clean_markdown(text) + + if not text: + return [] + + heading_parts = split_by_headings(text) + + chunks = [] + + for part in heading_parts: + if len(part) <= MAX_CHARS: + chunks.append(part) + else: + chunks.extend(split_long_text(part)) + + return chunks + + +def extract_document(file_path: Path) -> dict: + post = frontmatter.load(file_path) + + metadata = { + key: json_safe(value) + for key, value in post.metadata.items() + } + + taxonomy = metadata.get("taxonomy") or {} + + categories = normalize_list( + metadata.get("category") + or taxonomy.get("category") + ) + + tags = normalize_list( + metadata.get("tag") + or metadata.get("tags") + or taxonomy.get("tag") + or taxonomy.get("tags") + ) + + author = ( + metadata.get("author") + or taxonomy.get("author") + ) + + relative_path = file_path.relative_to(ZPWIKI_ROOT) + + return { + "path": str(relative_path), + "title": metadata.get("title"), + "categories": categories, + "tags": tags, + "published": metadata.get("published"), + "author": author, + "content": post.content.strip(), + "metadata": metadata, + } + + +def main(): + if not PAGES_ROOT.exists(): + raise SystemExit(f"Neexistuje priečinok: {PAGES_ROOT}") + + markdown_files = sorted(PAGES_ROOT.glob("**/README.md")) + + all_chunks = [] + document_count = 0 + + for file_path in markdown_files: + document = extract_document(file_path) + chunks = chunk_markdown(document["content"]) + + document_count += 1 + + for index, chunk_text in enumerate(chunks): + all_chunks.append({ + "chunk_id": f"{document['path']}::chunk-{index}", + "document_path": document["path"], + "title": document["title"], + "categories": document["categories"], + "tags": document["tags"], + "author": document["author"], + "published": document["published"], + "chunk_index": index, + "text": chunk_text, + "text_length": len(chunk_text), + }) + + OUTPUT_FILE.parent.mkdir(parents=True, exist_ok=True) + + with OUTPUT_FILE.open("w", encoding="utf-8") as file: + json.dump(all_chunks, file, ensure_ascii=False, indent=2) + + print(f"[green]Dokumentov:[/green] {document_count}") + print(f"[green]Chunkov:[/green] {len(all_chunks)}") + print(f"[green]Výstup uložený do:[/green] {OUTPUT_FILE}") + + if all_chunks: + print("\n[bold]Ukážka prvého chunku:[/bold]") + print(all_chunks[0]) + + +if __name__ == "__main__": + main() diff --git a/scripts/build_sqlite_index.py b/scripts/build_sqlite_index.py new file mode 100644 index 0000000..4cc78c2 --- /dev/null +++ b/scripts/build_sqlite_index.py @@ -0,0 +1,167 @@ +from pathlib import Path +import json +import sqlite3 +from rich import print + + +DOCUMENTS_FILE = Path("data/documents.json") +CHUNKS_FILE = Path("data/chunks.json") +DB_FILE = Path("data/zp_index.sqlite") + + +def create_tables(conn: sqlite3.Connection): + cursor = conn.cursor() + + cursor.execute("DROP TABLE IF EXISTS chunk_tags") + cursor.execute("DROP TABLE IF EXISTS chunk_categories") + cursor.execute("DROP TABLE IF EXISTS chunks") + cursor.execute("DROP TABLE IF EXISTS documents") + + cursor.execute(""" + CREATE TABLE documents ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + path TEXT UNIQUE NOT NULL, + title TEXT, + author TEXT, + published INTEGER, + content_length INTEGER, + metadata_json TEXT + ) + """) + + cursor.execute(""" + CREATE TABLE chunks ( + id INTEGER PRIMARY KEY AUTOINCREMENT, + chunk_id TEXT UNIQUE NOT NULL, + document_path TEXT NOT NULL, + title TEXT, + author TEXT, + chunk_index INTEGER, + text TEXT NOT NULL, + text_length INTEGER, + FOREIGN KEY(document_path) REFERENCES documents(path) + ) + """) + + cursor.execute(""" + CREATE TABLE chunk_tags ( + chunk_id TEXT NOT NULL, + tag TEXT NOT NULL + ) + """) + + cursor.execute(""" + CREATE TABLE chunk_categories ( + chunk_id TEXT NOT NULL, + category TEXT NOT NULL + ) + """) + + cursor.execute("CREATE INDEX idx_documents_path ON documents(path)") + cursor.execute("CREATE INDEX idx_chunks_document_path ON chunks(document_path)") + cursor.execute("CREATE INDEX idx_chunks_title ON chunks(title)") + cursor.execute("CREATE INDEX idx_chunk_tags_tag ON chunk_tags(tag)") + cursor.execute("CREATE INDEX idx_chunk_categories_category ON chunk_categories(category)") + + conn.commit() + + +def load_json(path: Path): + if not path.exists(): + raise SystemExit(f"Súbor neexistuje: {path}") + + with path.open("r", encoding="utf-8") as file: + return json.load(file) + + +def insert_documents(conn: sqlite3.Connection, documents: list[dict]): + cursor = conn.cursor() + + for doc in documents: + cursor.execute(""" + INSERT INTO documents ( + path, title, author, published, content_length, metadata_json + ) + VALUES (?, ?, ?, ?, ?, ?) + """, ( + doc.get("path"), + doc.get("title"), + doc.get("author"), + 1 if doc.get("published") else 0, + doc.get("content_length"), + json.dumps(doc.get("metadata") or {}, ensure_ascii=False), + )) + + conn.commit() + + +def insert_chunks(conn: sqlite3.Connection, chunks: list[dict]): + cursor = conn.cursor() + + for chunk in chunks: + cursor.execute(""" + INSERT INTO chunks ( + chunk_id, document_path, title, author, chunk_index, text, text_length + ) + VALUES (?, ?, ?, ?, ?, ?, ?) + """, ( + chunk.get("chunk_id"), + chunk.get("document_path"), + chunk.get("title"), + chunk.get("author"), + chunk.get("chunk_index"), + chunk.get("text"), + chunk.get("text_length"), + )) + + for tag in chunk.get("tags") or []: + cursor.execute(""" + INSERT INTO chunk_tags (chunk_id, tag) + VALUES (?, ?) + """, ( + chunk.get("chunk_id"), + tag, + )) + + for category in chunk.get("categories") or []: + cursor.execute(""" + INSERT INTO chunk_categories (chunk_id, category) + VALUES (?, ?) + """, ( + chunk.get("chunk_id"), + category, + )) + + conn.commit() + + +def main(): + documents = load_json(DOCUMENTS_FILE) + chunks = load_json(CHUNKS_FILE) + + DB_FILE.parent.mkdir(parents=True, exist_ok=True) + + conn = sqlite3.connect(DB_FILE) + + create_tables(conn) + insert_documents(conn, documents) + insert_chunks(conn, chunks) + + cursor = conn.cursor() + + document_count = cursor.execute("SELECT COUNT(*) FROM documents").fetchone()[0] + chunk_count = cursor.execute("SELECT COUNT(*) FROM chunks").fetchone()[0] + tag_count = cursor.execute("SELECT COUNT(*) FROM chunk_tags").fetchone()[0] + category_count = cursor.execute("SELECT COUNT(*) FROM chunk_categories").fetchone()[0] + + conn.close() + + print(f"[green]SQLite index vytvorený:[/green] {DB_FILE}") + print(f"Dokumentov: {document_count}") + print(f"Chunkov: {chunk_count}") + print(f"Tag záznamov: {tag_count}") + print(f"Kategória záznamov: {category_count}") + + +if __name__ == "__main__": + main() diff --git a/scripts/scan_zpwiki.py b/scripts/scan_zpwiki.py new file mode 100644 index 0000000..c9446ea --- /dev/null +++ b/scripts/scan_zpwiki.py @@ -0,0 +1,139 @@ +from pathlib import Path +from collections import Counter +import json +import frontmatter +from rich import print + + +ZPWIKI_ROOT = Path("../zpwiki") +PAGES_ROOT = ZPWIKI_ROOT / "pages" +OUTPUT_FILE = Path("data/documents.json") + + +def json_safe(value): + if value is None: + return None + + if isinstance(value, (str, int, float, bool)): + return value + + if isinstance(value, list): + return [json_safe(item) for item in value] + + if isinstance(value, dict): + return {str(key): json_safe(val) for key, val in value.items()} + + return str(value) + + +def normalize_list(value): + if value is None: + return [] + + if isinstance(value, list): + return [str(item).strip() for item in value if str(item).strip()] + + if isinstance(value, str): + return [item.strip() for item in value.split(",") if item.strip()] + + return [str(value)] + + +def main(): + if not PAGES_ROOT.exists(): + raise SystemExit(f"Neexistuje priečinok: {PAGES_ROOT}") + + markdown_files = sorted(PAGES_ROOT.glob("**/README.md")) + + documents = [] + metadata_keys = Counter() + categories_counter = Counter() + tags_counter = Counter() + authors_counter = Counter() + + for file_path in markdown_files: + post = frontmatter.load(file_path) + + metadata = { + key: json_safe(value) + for key, value in post.metadata.items() + } + + taxonomy = metadata.get("taxonomy") or {} + content = post.content.strip() + + for key in metadata.keys(): + metadata_keys[key] += 1 + + categories = normalize_list( + metadata.get("category") + or taxonomy.get("category") + ) + + tags = normalize_list( + metadata.get("tag") + or metadata.get("tags") + or taxonomy.get("tag") + or taxonomy.get("tags") + ) + + author = ( + metadata.get("author") + or taxonomy.get("author") + ) + + for category in categories: + categories_counter[category] += 1 + + for tag in tags: + tags_counter[tag] += 1 + + if author: + authors_counter[str(author)] += 1 + + relative_path = file_path.relative_to(ZPWIKI_ROOT) + + documents.append({ + "path": str(relative_path), + "title": metadata.get("title"), + "categories": categories, + "tags": tags, + "published": metadata.get("published"), + "author": author, + "taxonomy": taxonomy, + "metadata": metadata, + "content_preview": content[:500], + "content_length": len(content), + }) + + OUTPUT_FILE.parent.mkdir(parents=True, exist_ok=True) + + with OUTPUT_FILE.open("w", encoding="utf-8") as file: + json.dump(documents, file, ensure_ascii=False, indent=2) + + print(f"[green]Našiel som README.md súborov:[/green] {len(markdown_files)}") + print(f"[green]Výstup uložený do:[/green] {OUTPUT_FILE}") + + print("\n[bold]Najčastejšie metadata kľúče:[/bold]") + for key, count in metadata_keys.most_common(30): + print(f"{key}: {count}") + + print("\n[bold]Najčastejšie kategórie:[/bold]") + for key, count in categories_counter.most_common(30): + print(f"{key}: {count}") + + print("\n[bold]Najčastejšie tagy:[/bold]") + for key, count in tags_counter.most_common(40): + print(f"{key}: {count}") + + print("\n[bold]Najčastejší autori:[/bold]") + for key, count in authors_counter.most_common(20): + print(f"{key}: {count}") + + print("\n[bold]Ukážka prvého dokumentu:[/bold]") + if documents: + print(documents[0]) + + +if __name__ == "__main__": + main() diff --git a/scripts/search_chunks.py b/scripts/search_chunks.py new file mode 100644 index 0000000..7b04ee9 --- /dev/null +++ b/scripts/search_chunks.py @@ -0,0 +1,90 @@ +from pathlib import Path +import json +import re +import sys +from collections import Counter +from rich import print + + +CHUNKS_FILE = Path("data/chunks.json") + + +def tokenize(text: str) -> list[str]: + text = text.lower() + text = re.sub(r"[^a-záäčďéíĺľňóôŕšťúýž0-9]+", " ", text) + return [word for word in text.split() if len(word) >= 2] + + +def score_chunk(query_tokens: list[str], chunk: dict) -> int: + text = " ".join([ + chunk.get("title") or "", + " ".join(chunk.get("tags") or []), + " ".join(chunk.get("categories") or []), + chunk.get("author") or "", + chunk.get("text") or "", + ]) + + tokens = tokenize(text) + token_counts = Counter(tokens) + + score = 0 + + for query_token in query_tokens: + score += token_counts.get(query_token, 0) * 3 + + if query_token in [tag.lower() for tag in chunk.get("tags", [])]: + score += 10 + + if query_token in [category.lower() for category in chunk.get("categories", [])]: + score += 6 + + title = (chunk.get("title") or "").lower() + if query_token in title: + score += 5 + + return score + + +def main(): + if len(sys.argv) < 2: + print("[red]Použitie:[/red] python scripts/search_chunks.py \"rag agent\"") + raise SystemExit(1) + + query = " ".join(sys.argv[1:]) + query_tokens = tokenize(query) + + if not CHUNKS_FILE.exists(): + raise SystemExit(f"Súbor neexistuje: {CHUNKS_FILE}") + + with CHUNKS_FILE.open("r", encoding="utf-8") as file: + chunks = json.load(file) + + results = [] + + for chunk in chunks: + score = score_chunk(query_tokens, chunk) + + if score > 0: + results.append((score, chunk)) + + results.sort(key=lambda item: item[0], reverse=True) + + print(f"[bold]Dopyt:[/bold] {query}") + print(f"[bold]Počet výsledkov:[/bold] {len(results)}") + + print("\n[bold]Top výsledky:[/bold]\n") + + for rank, (score, chunk) in enumerate(results[:10], start=1): + print(f"[cyan]{rank}. Skóre: {score}[/cyan]") + print(f"[bold]Názov:[/bold] {chunk.get('title')}") + print(f"[bold]Cesta:[/bold] {chunk.get('document_path')}") + print(f"[bold]Kategórie:[/bold] {chunk.get('categories')}") + print(f"[bold]Tagy:[/bold] {chunk.get('tags')}") + print(f"[bold]Autor:[/bold] {chunk.get('author')}") + print("[bold]Text:[/bold]") + print((chunk.get("text") or "")[:700]) + print("-" * 80) + + +if __name__ == "__main__": + main() diff --git a/scripts/search_db.py b/scripts/search_db.py new file mode 100644 index 0000000..9ababa3 --- /dev/null +++ b/scripts/search_db.py @@ -0,0 +1,271 @@ +from pathlib import Path +import sqlite3 +import re +import sys +import unicodedata +from collections import Counter +from rich import print + + +DB_FILE = Path("data/zp_index.sqlite") + + +TECHNICAL_TERMS = { + "rag", + "agent", + "graph", + "knowledge", + "chatbot", + "nlp", + "llm", + "lm", + "openwebui", + "docker", + "webhook", + "database", + "db", + "neo4j", + "python", + "search", + "retrieval", + "generation", + "embedding", + "vector", + "vectors", + "langchain", + "graphrag", + "qa", + "question", + "answer", + "cloud", + "api", +} + + +def normalize_text(text: str) -> str: + text = text.lower() + text = text.replace("_", " ") + text = text.replace("/", " ") + text = text.replace("-", " ") + + text = unicodedata.normalize("NFKD", text) + text = "".join(ch for ch in text if not unicodedata.combining(ch)) + + text = re.sub(r"[^a-z0-9]+", " ", text) + return text.strip() + + +def tokenize(text: str) -> list[str]: + text = normalize_text(text) + return [word for word in text.split() if len(word) >= 2] + + +def detect_search_mode(query_tokens: list[str]) -> str: + """ + person režim: + napríklad jan ptak, jan holp, daniel hladek + + topic režim: + napríklad rag agent, knowledge graph, nlp chatbot + """ + + if not query_tokens: + return "topic" + + has_technical_term = any(token in TECHNICAL_TERMS for token in query_tokens) + + if len(query_tokens) == 2 and not has_technical_term: + return "person" + + return "topic" + + +def score_tokens(query_tokens: list[str], field_tokens: list[str], weight: int) -> int: + counts = Counter(field_tokens) + score = 0 + + for token in query_tokens: + score += counts.get(token, 0) * weight + + return score + + +def get_tags(conn: sqlite3.Connection, chunk_id: str) -> list[str]: + rows = conn.execute( + "SELECT tag FROM chunk_tags WHERE chunk_id = ?", + (chunk_id,) + ).fetchall() + + return [row[0] for row in rows] + + +def get_categories(conn: sqlite3.Connection, chunk_id: str) -> list[str]: + rows = conn.execute( + "SELECT category FROM chunk_categories WHERE chunk_id = ?", + (chunk_id,) + ).fetchall() + + return [row[0] for row in rows] + + +def contains_all_tokens(query_tokens: list[str], field_tokens: list[str]) -> bool: + return all(token in field_tokens for token in query_tokens) + + +def person_match(query_tokens: list[str], item: dict) -> bool: + title_tokens = tokenize(item.get("title") or "") + path_tokens = tokenize(item.get("document_path") or "") + author_tokens = tokenize(item.get("author") or "") + text_tokens = tokenize(item.get("text") or "") + + if contains_all_tokens(query_tokens, title_tokens): + return True + + if contains_all_tokens(query_tokens, path_tokens): + return True + + if contains_all_tokens(query_tokens, author_tokens): + return True + + """ + Text berieme slabšie, ale necháme ho ako fallback. + Napríklad ak meno nie je v title, ale je v obsahu. + """ + if contains_all_tokens(query_tokens, text_tokens): + return True + + return False + + +def score_item(query: str, query_tokens: list[str], item: dict, mode: str) -> int: + title = item.get("title") or "" + path = item.get("document_path") or "" + author = item.get("author") or "" + text = item.get("text") or "" + tags = item.get("tags") or [] + categories = item.get("categories") or [] + + title_tokens = tokenize(title) + path_tokens = tokenize(path) + author_tokens = tokenize(author) + text_tokens = tokenize(text) + tag_tokens = tokenize(" ".join(tags)) + category_tokens = tokenize(" ".join(categories)) + + score = 0 + + if mode == "person": + score += score_tokens(query_tokens, title_tokens, 30) + score += score_tokens(query_tokens, path_tokens, 30) + score += score_tokens(query_tokens, author_tokens, 15) + score += score_tokens(query_tokens, text_tokens, 2) + + if contains_all_tokens(query_tokens, title_tokens): + score += 100 + + if contains_all_tokens(query_tokens, path_tokens): + score += 100 + + if contains_all_tokens(query_tokens, author_tokens): + score += 60 + + return score + + score += score_tokens(query_tokens, title_tokens, 12) + score += score_tokens(query_tokens, path_tokens, 12) + score += score_tokens(query_tokens, tag_tokens, 10) + score += score_tokens(query_tokens, category_tokens, 6) + score += score_tokens(query_tokens, author_tokens, 3) + score += score_tokens(query_tokens, text_tokens, 2) + + normalized_query = normalize_text(query) + normalized_title = normalize_text(title) + normalized_path = normalize_text(path) + + if normalized_query and normalized_query in normalized_title: + score += 30 + + if normalized_query and normalized_query in normalized_path: + score += 30 + + matched_title_tokens = sum(1 for token in query_tokens if token in title_tokens) + matched_path_tokens = sum(1 for token in query_tokens if token in path_tokens) + + if query_tokens and matched_title_tokens == len(query_tokens): + score += 25 + + if query_tokens and matched_path_tokens == len(query_tokens): + score += 25 + + return score + + +def main(): + if len(sys.argv) < 2: + print("[red]Použitie:[/red] python scripts/search_db.py \"rag agent\"") + raise SystemExit(1) + + if not DB_FILE.exists(): + raise SystemExit(f"Databáza neexistuje: {DB_FILE}") + + query = " ".join(sys.argv[1:]) + query_tokens = tokenize(query) + mode = detect_search_mode(query_tokens) + + conn = sqlite3.connect(DB_FILE) + + rows = conn.execute(""" + SELECT chunk_id, document_path, title, author, chunk_index, text, text_length + FROM chunks + """).fetchall() + + results = [] + + for row in rows: + chunk_id, document_path, title, author, chunk_index, text, text_length = row + + item = { + "chunk_id": chunk_id, + "document_path": document_path, + "title": title, + "author": author, + "chunk_index": chunk_index, + "text": text, + "text_length": text_length, + "tags": get_tags(conn, chunk_id), + "categories": get_categories(conn, chunk_id), + } + + if mode == "person" and not person_match(query_tokens, item): + continue + + score = score_item(query, query_tokens, item, mode) + + if score > 0: + item["score"] = score + results.append(item) + + results.sort(key=lambda item: item["score"], reverse=True) + + print(f"[bold]Dopyt:[/bold] {query}") + print(f"[bold]Režim:[/bold] {mode}") + print(f"[bold]Počet výsledkov:[/bold] {len(results)}") + print("\n[bold]Top výsledky:[/bold]\n") + + for rank, item in enumerate(results[:10], start=1): + print(f"[cyan]{rank}. Skóre: {item['score']}[/cyan]") + print(f"[bold]Názov:[/bold] {item['title']}") + print(f"[bold]Cesta:[/bold] {item['document_path']}") + print(f"[bold]Chunk:[/bold] {item['chunk_index']}") + print(f"[bold]Kategórie:[/bold] {item['categories']}") + print(f"[bold]Tagy:[/bold] {item['tags']}") + print(f"[bold]Autor:[/bold] {item['author']}") + print("[bold]Text:[/bold]") + print((item["text"] or "")[:700]) + print("-" * 80) + + conn.close() + + +if __name__ == "__main__": + main()