Master's Thesis

Analýza dat z hlasování Evropského parlamentu

Final Thesis 4.28 MB Appendix 11.11 MB

Author of thesis: Ing. Petr Smažinka

Acad. year: 2025/2026

Supervisor: Ing. Jiří Hynek, Ph.D.

Reviewer: Ing. Magdaléna Ondrušková

Abstract:

Roll-call voting records of the European Parliament are publicly available, yet fragmented across heterogeneous sources and difficult to connect with broader context. This thesis presents an analytical tool that automatically collects voting data from five sources – the EP REST API, database Eurostat, HowTheyVote, Wikidata and Wikipedia – integrates them into a unified relational model extending the Zastupko.cz schema, and uses large language models to extract national government compositions from Wikipedia. The tool computes voting bloc cohesion, MEP loyalty and participation indices, association patterns in group behaviour, and correlations with socioeconomic indicators, presenting the results as an interactive web interface verified against synthetic data and validated in cooperation with the Zastupko.cz development team.

Keywords:

open data, European Parliament, Eurostat, socioeconomic indicators, semantic extraction, large language models, data modelling, web scraping, data visualization, voting analysis, faction cohesion, association rules, anomaly detection

Date of defence

23.06.2026

Result of the defence

Defended (thesis was successfully defended)

znamkaAznamka

Grading

A

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 a na další otázky přítomných, např. ohledně testování konzistence LLM modelů použitých v rámci projektu či možnosti jejich výměny. 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 A - výborně.

Topics for thesis defence

  1. Zloženie národných vlád sa získava LLM extrakciou z anglickej mutácie Wikipédie, ktorá je komunitne editovaná a môže byť neaktuálna alebo nekonzistentná. Ako systém reaguje na prípad, keď sa zloženie vlády zmenilo počas volebného obdobia EP?
  2. V texte zdôvodňujete použitie LLM vetou – interná klasifikácia EP neumožňuje detailné filtrovanie podľa tém. Čo konkrétne táto interná klasifikácia obsahuje, prečo je nedostatočná a zvažovali ste nejaké alternatívy (napr. klasifikovať podľa výborov EP)?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology and Artificial Intelligence (MITAI)

Specialization

Information Systems and Databases (NISD)

Composition of Committee

doc. Ing. Petr Matoušek, Ph.D., M.A. (předseda)
doc. Ing. Tomáš Martínek, Ph.D. (místopředseda)
Ing. Zbyněk Křivka, Ph.D. (člen)
Ing. Ivana Burgetová, Ph.D. (člen)
Ing. Matěj Grégr, Ph.D. (člen)
Ing. Šárka Květoňová, Ph.D. (člen)

Supervisor’s report
Ing. Jiří Hynek, Ph.D.

Student ke své práci přistupoval velmi svědomitě, dokázal pracovat samostatně a vytvořil použitelné řešení rozšiřující datový ekosystém projektu Zastupko.cz o data z Evropského parlamentu. Výsledky prezentoval na studentské konferenci, kde získal ocenění. Navrhuji hodnocení stupněm A.

Evaluation criteria Verbal classification
Information about assignment

Práce vznikla v rámci výzkumu zpracování otevřených dat. Cílem bylo vyvinout analytický nástroj pro automatizovaný sběr, integraci a vizualizaci dat o hlasování v Evropském parlamentu v kontextu socioekonomických ukazatelů členských států. Systém sbírá data z pěti zdrojů (REST API Evropského parlamentu, Eurostat, HowTheyVote, Wikidata, Wikipedia), integruje je do jednotného relačního modelu a pomocí velkých jazykových modelů extrahuje složení národních vlád z Wikipedie. Výsledný nástroj umožňuje výpočet koheze hlasovacích bloků, indexů loajality a participace poslanců a korelací se socioekonomickými ukazateli. Student se musel vypořádat s heterogenitou a rozsahem zpracovávaných dat a seznámit se se zpracováním otevřených dat v jazyce Python (Pandas, BeautifulSoup, Requests), využitím velkých jazykových modelů, relační databází MySQL a vývojem webového rozhraní v PHP a JavaScriptu (Chart.js, DataTables). Zadání hodnotím jako obtížnější a považuji ho za splněné.

Activity during solution, consultations, communication

Práce byla dokončena včas a obsah mohl být řádně konzultován.

Publication activity, awards

Výsledky byly publikovány na studentské konferenci Excel@FIT 2026, kde byl student oceněn v rámci hlasování studentů středních škol. Výstupy jsou potenciálně využitelné v projektu Zastupko.cz.

Work with literature

Student prostudoval doporučenou literaturu a aktivně si vyhledával další zdroje týkající se zpracování otevřených dat, jazykových modelů a legislativy Evropského parlamentu.

Activity during solution, consultations, communication

Student byl velmi aktivní během celého akademického roku. Přistupoval k práci pečlivě a byl schopen samostatně řešit netriviální problémy.

Points proposed by supervisor: 95

Grade proposed by supervisor: A

Reviewer’s report
Ing. Magdaléna Ondrušková

Práca prináša funkčný, verejne nasadený analytický nástroj, ktorý automatizovane integruje hlasovanie Európskeho parlamentu s kontextovými dátami piatich zdrojov a prezentuje ich formou interaktívneho webového rozhrania.  Navrhujem hodnotiť prácu stupňom A

Evaluation criteria Verbal classification Points Max. points
The extent to which the requirements of the assignment have been met

Evaluation level: assignment fulfilled

Extent of the technical report

Evaluation level: is within the usual extent

Presentation level of the technical report

Práca má jasnú štruktúru s dôsledným oddelením teoretickej časti (kap. 2–4), návrhu (kap. 5) a implementácie (kap. 6). 

90 100
Formal preparation of a technical report

Práca je po typografickej stránke velmi kvalitne spracovaná, obsahuje iba mierne nedostatky (napr. pretekajúci text na strane 50). 

90 100
Work with literature

Zoznam literatúry obsahuje 68 položiek s vyváženým zastúpením vedeckých článkov z konferencií a časopisov, technických štandardov a inštitucionálnych zdrojov. Citácie sú konzistentné a relevantné k téme.

95 100
Realisation output

Implementácia zahŕňa funkčný nástroj EUVoteAnalyzer nasadený na verejne dostupnej adrese s dátami z 9. a 10. volebného obdobia EP, automatizovaný testovací rámec overujúci numerickú správnosť piatich kľúčových analytických metód na synteticky zostrojených dátach so ručne vypočítanými referenčnými výsledkami a komponent integrovateľný do projektu Zastupko.cz. Práca bola ocenená študentami stredných škôl na konferencii Excel@FIT 2026.

95 100
Usability of results

Nástroj funguje samostatne a umožňuje užívateľom (široká verejnosť, novinári,...) prezerať politické dáta z hlasovania Európskeho parlamentu. Navyše je možné nástroj integrovať do projektu zastupko.cz. 

The difficulty of the assignment

Evaluation level: more difficult assignment

Práca integruje päť typovo odlišných zdrojov – REST API Európskeho parlamentu, Eurostat, HowTheyVote, Wikidata a Wikipedia – s rôznymi formátmi a podmienkami prístupu (rate limiting, SPARQL, neštruktúrovaný HTML) do jediného relačného modelu rozširujúceho schéma projektu Zastupko.cz. Analytická vrstva kombinuje Agreement Index, indexy loajality a participácie, asociačné pravidlá algoritmom FP-growth, Pearsonovu koreláciu s ukazovateľmi Eurostatu a detekciu anomálií, pričom tematická klasifikácia hlasovaní do 15 kategórií je realizovaná veľkým jazykovým modelom Gemini. Zadanie hodnotím ako obtiažnejšie.

Topics for thesis defence:
  1. Zloženie národných vlád sa získava LLM extrakciou z anglickej mutácie Wikipédie, ktorá je komunitne editovaná a môže byť neaktuálna alebo nekonzistentná. Ako systém reaguje na prípad, keď sa zloženie vlády zmenilo počas volebného obdobia EP?
  2. V texte zdôvodňujete použitie LLM vetou – interná klasifikácia EP neumožňuje detailné filtrovanie podľa tém. Čo konkrétne táto interná klasifikácia obsahuje, prečo je nedostatočná a zvažovali ste nejaké alternatívy (napr. klasifikovať podľa výborov EP)?
Points proposed by reviewer: 95

Grade proposed by reviewer: A

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