Challenge Project

parlerStadtparlament

Open Data Hack Challenge No. 5: Welche Themen beschäftigen das Stadtparlament St.Gallen wie stark?

⛶  Fullscreen ↓  Download 📂 Demo

Github Repo

Video Alternativer Link auf [Google Drive](https://drive.google.com/drive/folders/1RKf1eUuCuI7YBX5QFhoou2vY0h7xMyzC?usp=drive_link](Google Drive))

Open Data Hackathon Challenge parlerment

Open Data Hack St.Gallen 2023

README Verzeichnis

Ausgangslage

Auf der Open-Data-Plattform der Stadt St.Gallen liegt ein Datensatz mit den Geschäften aus dem St.Galler Stadtparlament. Darin aufgeführt sind etwa der Titel des einzelnen Vorstosses, welche Poltiker:in ihn eingereicht hat, und welche Partei dadurch dahinterstand.

Über den Datensatz sind zu jedem Geschäft die dazugehörigen Dokumente downloadbar. Bei Vorstössen etwa der jeweilige Vorstoss und die Antwort des Stadtrates darauf. Die Dokumente liegen als PDFs in einem Zip-Ordner vor.

An einem früheren Hackathon haben Studierende der Fachhochschule OST einen Code geschrieben, der den Volltext jedes Dokuments ausliest und dem jeweiligen Geschäft hinzufügt. Es wurde ausserdem versucht, jedem Geschäft ein Thema zuzuordnen, was aber nicht verlässlich gelang.

Um das volle Potenzial des Datensatzes ausreizen zu können, ist das jedoch nötig. Gerade vor Wahlen könnte der Datensatz so Einsichten liefern, für welche Themen sich welche Parteien wie stark einsetzen.

Aus diese Grund wurde diese Aufgabe als Challenge am Open Data Hack St.Gallen eingereicht.

Datenquellen

Datensatz Parlamentsgeschäfte

  • Ein Datensatz auf der Open-Data-Plattform der Stadt St.Gallen: "Traktandierte Geschäfte in Sitzungen des Stadtparlaments St.Gallen (RIS – Ratsinformationssystem)". Der Datensatz enthält auch Links zu den Sitzungsprotokollen des Stadtparlaments.

  • Eine Kaggle-Competition (kaggle.com/competitions/male-stgallen-recommender) mit einer detaillierten Problembeschreibung.

  • Code von Studierenden (bei Beat Tödtli beziehbar). Der Code ermittelt eine Vorhersage des Themas aufgrund der Titel der Geschäfte und den Kategorien aus dem Aktenplan. Das Machine Learning Modell muss jedoch weiterentwickelt werden, um die Verlässlichkeit bedeutend zu erhöhen.

Ziel

Für jedes einzelne Geschäft sollen dem Datensatz dessen wichtigsten Themen hinzugefügt werden. So sollen Auswertungen möglich werden wie zum Beispiel:

  • Wie oft hat sich das Stadtparlament mit dem Thema X beschäftigt?
  • Welche Themen waren im Jahr Y, im Zeitraum Z besonders wichtig?
  • Wie hat sich die Themenkonjunktur über die Jahre/Jahrzehnte entwickelt?
  • Welche Parteien/Fraktionen widmeten sich welchen Themen? Und wie hat sich das verändert?
  • Interessiert sich die SP vor allem für schulische Themen und die FDP vor allem für Finanzthemen?
  • Worüber wird im Stadtparlament kaum je diskutiert?
  • Sind klimapolitische Themen seit Fukushima stärker auf der Agenda als davor?

Der Code, um solche Auswertungen möglich zu machen, soll in einer Form vorliegen, dass er weiterentwickelt werden kann. Marlen Hämmerli, Datenjournalistin beim "St.Galler Tagblatt" und Challengeownerin möchte mit dem Code weiterarbeiten und ihn auch weiter entwickeln.

In einem zweiten Schritt stand es dem Team offen, ein Tool/Dashboard zu bauen. Dadurch sollte es der breiten Öffentlichkeit - und damit der Wählerschaft - möglich werden, eigene Analysen vorzunehmen.

Vorgehen

  1. Llama wurden Themen vorgegeben und die KI angewiesen, jedem Geschäft das passende zuzuordnen. So wurde der Datensatz mit Hilfe bekannter Tools (pandas) erweitert.
  2. Die Volltexte wurden nach Quartiernamen durchsucht, um so festzustellen, welche Geschäfte welchem Quartier zugeordnet werden können. (Oder nicht.) Auf diese Art wurde der Datensatz erweitert.
  3. Mit ChatGPT-4 wurden ebenfalls Themen abgefragt, aber auch Prompts mitgegeben wie z.B. "Wie links oder rechts ist Vorstoss X?"
  4. ChatGPT wurde mit den Datensätzen trainiert mit dem Ziel, die KI in einem Dashboard einzubetten.
  5. Mit Power BI wurden Visualisierungen erstellt.
  6. Ein Dashboard wurde erstellt, in das die genannten Ergebnisse einflossen.

Limitationen

Bei der Auswertung wurde nur auf die Vorstösse konzentriert. Jedem Vorstoss sind jedoch zwei Dokumente beigelegt. Neben jenem vom Parlament, auch jenes vom Stadtrat. Diese konnten nicht aus dem Datensatz gefiltert werden, flossen also in die Auswertung ein.

Prozess Architektur

Prozess Architektur Diagram

Mögliche Weiterentwicklungen

Die Integration von ChatGPT.

Team

This content is a preview from an external site.
 

Edited (version 40)

13.12.2023 14:10 ~ gaston_wey

Launch

Edited (version 39)

13.12.2023 14:09 ~ gaston_wey

Edited (version 38)

13.12.2023 14:08 ~ gaston_wey

Awesome sauce

Most Creative award, 1st place award

Sketching

Event finished

Repository updated

03.12.2023 08:44 ~ gaston_wey

Edited (version 34)

03.12.2023 08:44 ~ gaston_wey

Edited (version 32)

03.12.2023 08:35 ~ nicola_wullschleger

Update readme.md (@Simon Stratemeier)

Edited (version 31)

03.12.2023 08:04 ~ simon_stratemeier

Sketching

Edited (version 30)

03.12.2023 08:01 ~ simon_stratemeier

Edited (version 29)

03.12.2023 08:00 ~ simon_stratemeier

Update url to live page (@Simon Stratemeier)

Edited (version 28)

03.12.2023 07:57 ~ simon_stratemeier

Sketching

Edited (version 27)

03.12.2023 07:57 ~ simon_stratemeier

Edited (version 26)

03.12.2023 07:56 ~ simon_stratemeier

Edited (version 25)

03.12.2023 07:56 ~ simon_stratemeier

Edited (version 24)

03.12.2023 07:54 ~ simon_stratemeier

Edited (version 23)

03.12.2023 07:54 ~ simon_stratemeier

Edited (version 22)

03.12.2023 07:54 ~ simon_stratemeier

Update link (@Simon Stratemeier)

Update texts (@Simon Stratemeier)

Add margin to header (@Simon Stratemeier)

Add navigation icons (@Simon Stratemeier)

Fix typo (@Simon Stratemeier)

Add Chatbot Button (@Simon Stratemeier)

Fix syntax error (@Simon Stratemeier)

Merge branch 'main' of github.com:sstratemeier/stadtparlaments-dashboard (@Simon Stratemeier)

Add reworks for partei, thema and other (@Simon Stratemeier)

logo (@Till-JS)

Merge pull request #3 from osaeedi/main

Add files (@sstratemeier)

Merge branch 'sstratemeier:main' into main (@osaeedi)

Add files (@osaeedi)

Add process architectur image (@tobit01)

Image caption

03.12.2023 03:13 ~ orhansaeedi

Sketching

Image caption

03.12.2023 03:13 ~ orhansaeedi

Research

Image caption

03.12.2023 03:12 ~ orhansaeedi

Image caption

03.12.2023 03:12 ~ orhansaeedi

Image caption

03.12.2023 03:12 ~ orhansaeedi

Project

Remove duplicate README (@Simon Stratemeier)

update README (@Beat Tödtli)

Merge branch 'main' of github.com:sstratemeier/parlerStadtparlament (@Beat Tödtli)

Add mail address (@tobit0101)

Merge branch 'main' of github.com:sstratemeier/parlerStadtparlament (@Beat Tödtli)

remove docx document (@Simon Stratemeier)

Merge branch 'main' of github.com:sstratemeier/stadtparlaments-dashboard (@Simon Stratemeier)

Challenge

Event started

 
Contributed 6 months ago by beat_tdtli for Open Data Hack St.Gallen
All attendees, sponsors, partners, volunteers and staff at our hackathon are required to agree with the Hack Code of Conduct. Organisers will enforce this code throughout the event. We expect cooperation from all participants to ensure a safe environment for everybody.

Creative Commons LicenceThe contents of this website, unless otherwise stated, are licensed under a Creative Commons Attribution 4.0 International License.