--- license: mit datasets: - TUKE-KEMT/hate_speech_slovak language: - sk metrics: - precision - recall - f1 base_model: - TUKE-KEMT/slovak-t5-base pipeline_tag: text-classification library_name: transformers tags: - hate-speech --- # Slovak Hate Speech Classifier 🇸🇰🛡️ Tento model je doladený na úlohu rozpoznávania nenávistnej reči v slovenskom jazyku, vychádzajúc z architektúry [`SlovakT5-base`](https://huggingface.co/UKE-KEMT/slovak-t5-base). --- ## 📌 Základné informácie - **Tréningové dáta:** [`TUKE-KEMT/hate_speech_slovak`](https://huggingface.co/datasets/TUKE-KEMT/hate_speech_slovak) - **Jazyk:** Slovenský (sk) - **Úloha:** Binárna klasifikácia nenávistnej reči (0 = neutrálne, 1 = nenávistné) - **Prístup:** Few-shot + LoRA (PEFT) - **Modelová architektúra:** T5 --- ## 🧪 Výsledky (few-shot eval) | Model | Precision | Recall | F1 Score | |--------------------|-----------|--------|----------| | SlovakT5-base | 0.6689 | 0.6082 | 0.6386 | | SlovakT5-base LoRA | 0.7113 | 0.7859 | 0.7486 | --- ## 🛠️ Použitie ### ✅ Prompt štýl: ``` Text: "Nenávidím ťa a všetkých ako ty." Obsahuje text nenávistnú reč? ``` ### ❌ Výstupy: - `Áno` → ak je toxický - `Nie` → ak nie je --- ## 📦 Použitie v kóde (HuggingFace `transformers`) ```python from transformers import AutoTokenizer, AutoModelForSeq2SeqLM tokenizer = AutoTokenizer.from_pretrained("tetianamohorian/hate_speech_model") model = AutoModelForSeq2SeqLM.from_pretrained("tetianamohorian/hate_speech_model") inputs = tokenizer('Text: "Nenávidím ťa.\nObsahuje text nenávistnú reč?"', return_tensors="pt") outputs = model.generate(**inputs) print(tokenizer.decode(outputs[0], skip_special_tokens=True)) # Áno ``` --- ## 🧠 Tréning - Použitá knižnica: `peft`, `transformers` - Adaptácia: LoRA (`r=8`, `alpha=16`) - Tréningová konfigurácia: 3 epochy, batch size 16, learning rate 5e-5 --- ## 📜 Licencia MIT --- ## 💬 Kontakt / autor Model vytvorený ako súčasť bakalárskej práce na TUKE, 2025. Kontakt: [GitHub](https://github.com/tetianamohorian)