Projektvorschläge Datenanalyse und Big Data

Florian Wolf
Florian Wolf
Last updated 
Hier werdet ihr die Informationen zu den Prüfungsleistungen (Projektarbeiten) finden.

Deadline der schriftlichen Leistung: Bitte sendet bis Sonntag, den 28. Mai 2023, eure schriftliche Ausarbeitung an krapp@hochschule-bc.de

Jede Einzelperson muss die Gruppenarbeit selbstständig einreichen, da eine einzelne Benotung erfolgt! Es ist anzugeben, aus welchen Mitgliedern die Gruppe besteht. 

Die Prüfungsleistung wird aus einer schriftlichen Abgabe sowie einer kurzen Projektpräsentation in Gruppen bestehen (am letzten Veranstaltungstag [13. Mai 2023] bzw. nachträglich).

Gerne könnt ihr eigene Themenvorschläge mit uns besprechen!


Themenvorschläge


Block 1: KI und ML

Jedes dieser Projekte soll eine Einführung in den Themenkomplex, die Kernfragestellungen sowie die Erklärung aller wesentlichen Fachbegriffe und Konzepte in geeigneter Tiefe enthalten!
  1. Reinforcement learning anhand von Markow-Entscheidungsproblem
    In diesem Spiel findet ein Roboter den Weg aus einem Labyrinth, indem Reinforcement learning from Human Feedback angewandt wird. Die Funktionen des Tools lassen zu, auch die Mathematik hinter den Aktionen (policy) zu verstehen. Ziel dieses Projektes ist eine mathematische Beschreibung des zugehörigen Markow-Entscheidungsproblems. Beispielsweise lässt sich für jedes Feld eine Übergangsmatrix zu den vier benachbarten Felder finden. Wie ändert sich diese im Laufe des Trainingsprozesses?
  2. Vektorverfahren im Text Mining
    Auf Grundlage von z.B. 100 Kochrezepten sollen Wörter für Zutaten vektorisiert werden. Hierbei findet innerhalb von Excel eine Häufigkeitsanalyse der Wörter in den Texten statt, welche zu Einträgen in einer Matrix führen, die wiederum die Vektoren für die einzelnen Wörter ergibt. Im Idealfall liegen die Vektoren für "Pfeffer" und "Salz" nahe beieinander und "Pfeffer" und "Zucker" weit voneinander entfernt. In vielen Fällen werden die 100 Rezepte jedoch nicht ausreichen, um sinnvolle Vektoren zu finden.
  3. Sentimentanalyse im Text Mining
    Hierbei soll es darum gehen, Aussagen danach zu bewerten, ob sie positiv/glücklich oder negativ/unglücklich sind. Der Prozess ist recht einfach: Spezielle Wörter in einem kurzen Text erhalten positive und negative Gewichte. So können neue Texte eine Kennzahl erzeugen, welche ausdrückt, wie positiv/negativ die Aussage ist. Die Gewichte müssen ähnlich wie bei Simple Networks so angepasst werden, dass das Modell dabei trainiert wird. Im Wesentlichen soll hier eine Sentimentanalyse im Stil von "Simple Networks" in Excel entwickelt werden.


Projekt Block 2: Einführung in die Datenanalyse

In diesem Projekt geht es darum, einen Datenanalyse-Prozess exemplarisch zu durchlaufen. Suchen Sie sich hierfür einen oder mehrere geeignete Datensätze (z.B. https://www.kaggle.com/datasets, https://offenedaten-konstanz.de/). Führen Sie anhand dieser ein Datenanalyse-Projekt durch und dokumentieren Sie dieses. Dies beinhaltet folgende Schritte:
  • Businesscase: formulieren Sie ein Projektziel, eine mögliche Projektumgebung und einzelne Projektschritte. Entgegen der üblichen Praxis können Sie sich hier zuerst eine geeignete und ansprechende Datenquelle aussuchen und dann den Business-Case entwickeln.
  • Datenbeschreibung & -plausibilität: Erstellen Sie eine Übersicht über alle vorkommenden Attribute, deren Beschreibung sowie der jeweiligen Ausprägungen. Gehen Sie hierbei ggf. auf die Datenqualität und mögliche Filteroptionen ein. Führen Sie mindestens zwei neu berechnete/umgewandelte Felder ein.
  • Cluster/Box-Plot Analyse: Führen Sie mindestens zwei sinnvolle Analysen durch, welche in Ihren Business-Case passen.
  • Visualisierungen: Erstellen Sie für Ihren Businesscase geeignete Visualisierungen.
  • Erklärungen/Schlussfolgerungen: Interpretieren Sie Ihre Visualisierungen im Hinblick auf Ihren Businesscase.
  • Mögliche Vorhersagen: Integrieren Sie in Ihren Businesscase mögliche Fragestellungen, für welche Vorhersage-Modelle aus den verwendeten Daten genutzt werden können. 

Projekt Block 3: Entwicklung eines Film-Empfehlungssystems

Ansprechpartnerin: Sarah Schönbrodt, sarah.schoenbrodt@gmail.com

Für einen Teil des Netflixdatensatzes soll ein Film-Empfehlungssystem basierend auf der Nearest Neighbor Methode entwickelt und in einem Jupyter Notebook umgesetzt werden.
 
Das Notebook soll als eine Art Computational Essay (Kombination aus Code und Dokumentation) aufgebaut sein. Alle Modellierungsschritte, Annahmen und Berechnungen sollten somit für Nicht-Expert:innen verständlich beschrieben und Ergebnisse diskutiert und interpretiert werden. Code sollte kommentiert und an den entsprechenden Stellen des Computational Essays direkt integriert werden.
Tipp: zur Strukturierung eures Computational Essays könnt ihr euch an den zentralen Schritten des CRSIP-DM Zyklus orientieren.

Als Ausgangspunkt liegt ein Jupyter Notebook bereit, indem die Daten bereits eingelesen sind.


Projekt Block 4: Reinforcement Learning

Ausführung des Codes:
  1. Lege den code grid_world.py auf deinem Desktop ab
  2. Öffne ein Terminal, via CMD+Leerzeichen, Terminal
  3. Führe die beiden Befehle jeweils einzeln aus:
cd Desktop
python grid_world.py
Anforderungen:
  • Dokumentation auf Englisch, Inhalte:
    • Kopfzeile mit Projekttitel, Datum, Namen und Namen der restlichen Gruppenmitgliedern
    • Verwendung, Erklärung und Motivation der wichtigsten Begriffe (z.B. V-Funktion, Q-Funktion, Policy, Zeithorizont)
    • Grobes technisches Vorgehen erläutern, hier könnt ihr auch gerne auf Schwierigkeiten und Herausforderungen eingehen
    • Interpretation der Ergebnisse: Experimentiert mit verschiedenen Zeithorizonten und beschreibt, wie die Policy aussieht, wie sich diese Verändert und welche Erklärungen es gibt
  • Maximal 4 Seiten
  • Benennung: YYYY-MM-DD-Vorname-Nachname-RL.pdf
  • Dokument als PDF und Code per florianwolf1710@t-online.de