Bachelor's Thesis

Web Application for Efficient Topic Labeling in Text Collections

Final Thesis 2.17 MB

Author of thesis: Marek Sucharda

Acad. year: 2025/2026

Supervisor: Ing. Michal Hradiš, Ph.D.

Reviewer: Ing. Vojtěch Bartl, Ph.D.

Abstract:

Manual document annotation is one of the most time-consuming steps in both qualitative and quantitative analysis. This thesis describes the design and implementation of a component of a web application called semANT. Specifically, the implemented component consists of a document viewer and an annotation editor with AI-powered features. The editor allows for coding, which is the process of manually marking passages in the text and assigning labels (codes, tags) to them. Two key functions utilizing AI methods have been implemented. The first is automatic annotation suggestion using LLM, where the system suggests suitable passages to the user and assigns relevant tags to them. The second feature is the suggestion of the most suitable tags for a manually marked section of text using zero-shot classification with the mDeBERTa model, which evaluates the most relevant tags and then displays them in the user interface. The logic of these features is separated into a standalone Python library called Topicer. User testing showed a reduction in coding time when using automatic suggestions. Testing the agreement between manual coding and the classifier achieved an agreement rate of 56—85%. The results suggest that integrating these features into the annotation editor has the potential to reduce the time required for coding in qualitative analysis.

Keywords:

qualitative text analysis, annotation editor, text coding, large language models, natural language processing, zero-shot classification, NLI, mDeBERTa, digitised documents, OCR, Vue.js, FastAPI, Weaviate

Date of defence

17.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaCznamka

Grading

C

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm C.

Topics for thesis defence

  1. Lze přiřadit více různých tagů pro jeden zvolený span?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

doc. Ing. František Zbořil, CSc. (předseda)
doc. Ing. Michal Španěl, Ph.D. (místopředseda)
Ing. Jan Pluskal, Ph.D. (člen)
Ing. Aleš Smrčka, Ph.D. (člen)
Ing. Josef Strnadel, Ph.D. (člen)

Supervisor’s report
Ing. Michal Hradiš, Ph.D.

Student se zapojil do vývoje aplikace v rámci výzkumného projektu, ale jeho aktivita mohla být vyšší. Chyběla mi snaha o hlubší pochopení účelu vytvářeného modulu a iniciativa při návrhu možných AI funkcí a uživatelského rozhraní.

Evaluation criteria Verbal classification
Informace k zadání

Zadání přímo vychází z výzkumného projektů semANT a výsledek práce student integroval do aplikace, která bude jedním z výsledků projektu. Student vytvořil modul pro anotaci textu s AI asistencí. Výsledek je funkční.

Práce s literaturou

Student si vyhledal potřebné zdroje, ale jeho aktivita v tomto směru byla spíš nižší.

Aktivita během řešení, konzultace, komunikace

Student se zapojil do vývoje v projektu, ale jeho aktivita nebyla ideální. Postup mohl konzultovat více. 

Aktivita při dokončování

Práce byla dokončována na poslední chvíli, ale to bylo částečně způsobeno i integrací do společné aplikace a s tím spojenými konflikty a potřebou koordinace. 

Publikační činnost, ocenění
Points proposed by supervisor: 70

Grade proposed by supervisor: C

Reviewer’s report
Ing. Vojtěch Bartl, Ph.D.

Jedná se o zajímavou aplikaci užívající jazykové modely pro jednodušší anotaci textu. Pro návrhy tagů, nebo lokalizaci textu na základě tagu je využíván externí jazykový model. Návrhy jsou uživateli prezentovány pomocí navrženého rozhraní. Vyhodnocení systému by mělo proběhnout na větším vzorku uživatelů. Tři uživatelé nejsou statisticky dostatečný vzorek. Výsledná čísla tak nejsou průkazná a nedávají informaci o skutečné využitelnosti výsledné práce.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: průměrně obtížné zadání

Jedná se o průměrně složité zadání zaměřené na UI/UX s externím využitím jazykových modelů.

Prezentační úroveň technické zprávy

Práce se čte dobře a jednotlivé kapitoly dávají smysl. Kapitola o uživatelském rozhraní rozsahem přesahuje ostatní kapitoly a mohla by tedy být více rozčleněna.

77
Formální úprava technické zprávy

Text je vysázen kvalitně a bez větších chyb. Problémem jsou obrázky bez referencí, což snižuje plynulost četby.

74
Realizační výstup

Některé detaily jako překrývání spanů by bylo potřeba doladit a řádně otestovat. Testování aplikace na malém vzorku účastníků nedává dostatečnou zpětnou vazbu.

68
Využitelnost výsledků

Práce je součástí webové aplikace semANT. Až na pár detailů je aplikace plně použitelná. Překrytí/zanoření spanů není řešeno ideálně — zanořený span není v aktuální situaci dostatečně rozlišitelný. Návrhy pomocí jazykových modelů mohou dopomoci rychlejším anotování textu. Dle provedených testů (kterých je málo) se zdá, že pro zkušeného uživatele nejsou tyto návrhy až tak důležité.

Rozsah splnění požadavků zadání

Evaluation level: zadání téměř splněno s drobnými výhradami

Zadání splněno dle navržených bodů. Testování aplikace mohlo být provedeno důkladněji.

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

Zpráva je v obvyklém rozsahu. Poměrně velká část práce se zabývá uživatelským rozhraním, které je ale v tomto případě klíčové.

Práce s literaturou

Referencí není moc, ale jsou relevantní a odkazují na kvalitní zdroje. Citací mohli být každopádně více — hlavně týkající se teoretického pozadí práce.

72
Topics for thesis defence:
  1. Lze přiřadit více různých tagů pro jeden zvolený span?
Points proposed by reviewer: 71

Grade proposed by reviewer: C

Responsibility: Mgr. et Mgr. Hana Odstrčilová