Zurück zu den Projekten
Studium
Bachelorarbeit: Graph Neural Networks für Kundenprofilierung
Welche Produktkategorie kauft ein Kunde als Nächstes? In meiner Bachelorarbeit habe ich Kunden und Produkte als Graphen betrachtet, der mit jedem Kauf wächst – und ein Temporal Graph Neural Network trainiert, das neue Verbindungen in diesem Graphen vorhersagt.
Vorgehen nach CRISP-DM
- Business Understanding: Marketing gezielter machen – passende Angebote statt Streuwerbung
- Data Understanding: verfügbare Daten sichten, rechtliche und ethische Rahmenbedingungen klären
- Data Preparation: Kaufdaten aus zwei Jahren, unvollständige Zeilen entfernt, seltene Kategorien aussortiert, neues Merkmal „Stammkundengrad“, Zeit als Unix-Zeitstempel
- Modeling: Temporal Graph Network mit Expander-Graph-Rewiring, Training in Google Colab
- Evaluation: Rangliste der vorhergesagten Kategorien, bewertet mit dem Mean Reciprocal Rank
Warum ein zeitlicher Graph?
- Jeder Kauf ist eine Kante zwischen Kunde und Produktkategorie – mit Zeitstempel
- Ein Temporal Graph Network (TGN) merkt sich für jeden Knoten einen Zustand („Memory“) und aktualisiert ihn mit jedem neuen Ereignis
- Trainiert wird in Paketen (Batches) in zeitlicher Reihenfolge – das Modell sieht nie die Zukunft
Rewiring mit Expander-Graphen (TGR)
- Typische Probleme: weit entfernte Knoten tauschen keine Informationen aus (Under-Reaching), Informationen stauen sich an wenigen Kanten (Over-Squashing), selten aktive Knoten veralten (Memory Staleness)
- Lösung nach Petrović et al. (2024): ein zusätzlicher, künstlicher Expander-Graph mit gut verteilten Abkürzungen
- Beide Darstellungen – echter und künstlicher Graph – werden kombiniert; so bleiben alle Knoten aktuell
Ergebnis und Ausblick
- Mean Reciprocal Rank: Wie weit oben landet die richtige Kategorie? Das Modell war schon nach wenigen Epochen sehr treffsicher – ganz ohne Hyperparameter-Optimierung
- Ein Prototyp: Für den Einsatz bräuchte es Infrastruktur, Skalierung und Monitoring
- Weitere Ideen: mehr Kundenmerkmale, längere Zeiträume, Übertragung auf Cross-Selling und Neukunden
Technik
- Python, pandas, PyTorch, PyTorch Geometric (TemporalData)
- Temporal Graph Network, Graph Attention, Link Prediction
- Google Colab (GPU)