Generierung individueller Playlists

Generierung individueller Playlists

CRISP-DM ist ein standardisierter Prozess für Data-Mining-Projekte, der sechs Hauptphasen umfasst: Geschäftsverständnis, Datenverständnis, Datenvorbereitung, Modellbildung, Modellbewertung und Einsatz. Es hilft bei der strukturierten Durchführung von Datenanalysen, um Geschäftsprobleme zu lösen, indem es einen klaren Rahmen für die Arbeit liefert. Der Prozess ist iterativ, erlaubt also das Zurückkehren zu vorherigen Phasen, um Anpassungen basierend auf neuen Erkenntnissen vorzunehmen. CRISP-DM wird in verschiedenen Branchen und Organisationen eingesetzt, um datenbasierte Entscheidungen zu treffen und Einblicke zu gewinnen.

Business Understanding (Geschäftsverständnis)

Viele Online-Versandhandelsunternehmen haben eine hohe Rücksendequote (von bis zu 50%), wobei 97% aller zurückgesendeten Produkte wieder auf Lager genommen und verkauft werden können. Um die Waren wieder zu verkaufen, müssen sie entsprechend identifiziert, etikettiert und wieder eingelagert werden.

Angenommen, dass im Jahr 2020 185,5 Millionen Bestellungen (Statista, 2021) mit jeweils 6 Artikeln (Annahme) eingehen würden, dann würde eine Rücksendequote von 50% bedeuten, dass 556,5 Millionen Artikel neu identifiziert und kategorisiert werden müssten.

Um diesen Prozess zu unterstützen und die Identifizierung der zurückgesendeten Kleidungsstücke zu erleichtern, soll eine Bilderkennungssoftware entwickelt werden, die die zugehörigen Kategorien der einzelnen Kleidungsstücke anhand von Bildern erkennt.

Datenverständnis

Data Understanding

Der Datenrahmen fashion-mnist_test stammt von Kaggle und ist über das Fashion-MNIST GitHub Repository zugänglich. Dieser Datensatz wurde 2017 von Zalando erstellt und besteht aus Artikelbildern des Unternehmens.

Der Datensatz liegt im CSV-Format vor und enthält insgesamt 70.000 Bilder von Kleidungsstücken, die in 60.000 Trainingsbilder und 10.000 Testbilder unterteilt sind. Jedes Bild wurde auf eine Größe von 28×28 Pixel skaliert und in Graustufen umgewandelt.

Der Datensatz umfasst 784 Merkmale, die jeweils einem Pixel des Bildes entsprechen, sowie ein zusätzliches Label, das die Kategorie des Kleidungsstücks angibt. Sowohl die Merkmale als auch die Labels sind als Integer-Werte gespeichert. Die Pixelwerte repräsentieren die Intensität des Grautons, während die Labels die verschiedenen Kleidungsstückkategorien darstellen.

Insgesamt enthält der Datensatz 70.000 Beobachtungen. Die Parameter “Standort”, Verteilungsparameter und Korrelationsanalyse sind für diesen Datensatz nicht anwendbar.

Der Fashion-MNIST-Datensatz bietet eine moderne und herausfordernde Alternative zum klassischen MNIST-Datensatz, da er realistischere und komplexere Bilder von Kleidungsstücken enthält. Dies stellt eine größere Herausforderung für Bildklassifizierungsmodelle dar und bietet eine realistischere Anwendungsmöglichkeit im Bereich der maschinellen Bildverarbeitung.

Datenvorbereitung

Die Data Preparation Phase beginnt mit der Aufteilung der Daten in Trainings-, Validierungs- und Testsets sowie der Skalierung der Merkmale. Anschließend werden die Bildformate von 784 auf 28×28 umgewandelt (falls als CSV mit 784 Spalten geladen) und die Labels in ein kategorisches Format konvertiert. Die Überprüfung der Datenformate gewährleistet, dass alle Daten im korrekten Format vorliegen.

Datenmodell

In der Modellierungsphase wird die Architektur des Modells definiert, die verschiedene Arten von Schichten umfasst. Zunächst wurde ein einfaches DNN mit dichten Schichten ausprobiert, jedoch konnten verbesserte Ergebnisse erzielt werden, indem auf eine CNN-Architektur umgestellt wurde. Als Ausgangsarchitektur wurde die Implementierung von LeNet-5 gewählt und angepasst. Die Hyperparameter wurden mithilfe eines Keras-Optimierers optimiert, der verschiedene Kombinationen ausprobierte, um die aktuellen Parameter auszuwählen. Das Modell umfasst Schichten wie Dense für die Berechnung des Skalarprodukts, Dropout zur Vermeidung von Überanpassung, Flatten zum Flachlegen von Matrizen, MaxPooling2D zur Reduzierung der Eingabedimensionen und Conv2D für Faltungsoperationen auf den Eingabedaten.

Evaluation

Nach dem Training und der Validierung des Modells wird die Leistung anhand der Testdaten ausgewertet. Dabei erreicht das Modell eine Testgenauigkeit von über 90 %, was darauf hinweist, dass es gut in der Lage ist, neue, bisher ungesehene Daten zu klassifizieren. Der Testverlust ist ebenfalls akzeptabel niedrig, was darauf hinweist, dass das Modell Vorhersagen nahe an den tatsächlichen Daten trifft. Zusätzlich zeigen klassenspezifische Metriken wie Präzision, Rückruf und F1-Score für jede Klasse (z.B. Top, Trouser, Pullover usw.), dass das Modell gute bis sehr gute Ergebnisse erzielt, insbesondere bei Klassen wie Sneaker, Bag und Ankle boot. Diese Ergebnisse bieten eine umfassende Bewertung der Modellleistung und helfen dabei, seine Eignung für praktische Anwendungen zu beurteilen.

Deployment

Im Rahmen des CRISP-DM Zyklus stellt das Deployment den letzten Schritt dar, bei dem das trainierte Modell für den produktiven Einsatz vorbereitet wird. Dies beinhaltet die Implementierung des Modells in eine Produktionsumgebung, wo es Echtzeitdaten verarbeiten kann. Vor dem Deployment müssen alle Aspekte wie Modellperformance auf Testdaten, Sicherstellung der Skalierbarkeit und Integration in bestehende Systeme sorgfältig überprüft werden. Zudem ist es entscheidend, fortlaufende Überwachung und Wartung sicherzustellen, um die langfristige Leistung und Genauigkeit des Modells zu gewährleisten.

Link zum Notebook
Link zum Datensatz