Vorhersage der Interaktion eines Nutzers mit einer Werbeanzeige

Vorhersage der Interaktion eines Nutzers mit einer Werbeanzeige

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)

Für Anbieter einer Werbeplattform ist es wichtig, dass möglichst viele der Nutzer, welchen eine Werbeanzeige ausgespielt wird diese auch anklicken. Erreicht ein Anbieter hier besonders gute Ergebnisse ist er interesanter für portentzielle Kunden und kann höhere Preise verlangen. Darum wird in diesem Beispiel anhand von demographischen Merkmalen eines Nutzers sowie Daten zu seiner Internetnutzung, vorhergesagt ob ein Nutzer mit einer Anzeige interagieren wird oder nicht.

Datenverständnis

Der Datensatz welcher in diesem Beispiel verwendet wird, wurde ursprünglich auf Kaggle veröffentlicht, steht dort jedoch nichtmehr zur Verfügung, daher kann er nun vom Google Cloud Storage bezogen werden. Jede Zeile des Datensatzes stellt einen Nutzer dar. Die Spalten beinhalten Informationen zum Nutzer in numerischer sowie kategorialer Form. Ein Beispiel für ein numerisches Merkmal ist Zeit welche der Nutzer täglich auf der Seite verbringt oder auch sein Alter, kategoriale Merkmale sind Wohnort und Gechlecht. Zusätzlich sind auch noch Spalten vorhanden welche Merkmale der Werbeanzeige beinhalten nämlich das Thema der Anzeige sowie ob der Nutzer sie angeklickt hat.

Datenvorbereitung

Um später ein Modell zur Vorhersage effektiv trainieren zu können muss die Qualität der Daten sichergestellt werden.
Hierzu wird in einem ersten Schritt überprüft ob es Spalten gibt, welche fehlende Werte für Zeilen aufweisen, zusätzlich wird der Datensatz auf Duplikate gechekt. Im nächsten Schritt wird die Ausgewogenheit des Datensatzes überprüft, bei einer Klassifikationsaufgabe wie dieser sollte der Datensatz möglichst die gleiche Anzahl an Einträgen für jede Klassifikationsmöglichkeit enthalten. Dieser Datensatz ist enthält 500 Einträge in welchen die Anzeige angeklickt wurde und 500 Einträge in welchen die Anzeige nicht angeklickt wurde und ist somit schon perfekt ausgewogen.
Nun beginnt die explorative Datenanalyse, in ihr werden die verschiedenen Merkmale in Verhältnis zueinander gesetzt und das Ergebnis visuell dargestellt und eine Korrelationsanalyse durchgeführt. Das dient dazu mögliche Zusammenhänge zwischen der Zielvariable, in unserem Fall “Anzeige angeklickt”, und den Merkmalen zu finden.
Zusätzlich wird aus dem Timestamp an welchem die Werbeanzeige angezeigt wurde, folgende Merkmale Monat, Tag, Stund sowie Wochentag extrahiert und in neuen Spalten gespeichert. Das Alter wurde in Altersgruppen eingeteilt und in einer neuen Spalte gespeichert. Mit disen neuen Spalten wird nochmal eine explorative Analyse ausgeführt. Die Ergebnisse dieser Analyse werden verwendet um Merkmale bei welchen sich kein Zusammenhang finden lässt werden aus dem Datensatz entfernt, dieser Schritt wird Dimensionsreduktion genannt. Im Falle dieses Datensatzes betrifft es die Spalten Land, Stadt, Thema der Anzeige, Tag, Monat, Stunde, Wochentag, Alter und Altersgruppe.
Dieser Datensatz wird abschließend auf ein gemeinsames Messniveau skaliert, auch Standardisierung gennant, und in einen Trainings- sowie Testdatensatz aufgeteilt.

Datenmodell

Es werden nun zwei Modelle mit dem erstellten Datensatz gebaut, um sie anschließend miteinander zu vergleichen und das bessere der beiden zu Verwenden.
Modell 1 basiert auf der logistischen Regression, welche bei binären Zielvariablen immer sehr gute Ergebnisse liefert.
Modell 2 basiert auf einem Entscheidungsbaum.

Evaluation

Die trainierten Modelle werden nun mit dem Testdatensatz getestet. Es gibt verschiedene Metriken zur Bewertung der Qualität des Modells unteranderem Accuracy (= allgemeine Genauigkeit der Klassifikation), Precision (= Päzision der positiven Vorhersagen) und Recall (= Stellt dar wie viele der tatsächlich positiven Einträge im Testdatensatz als positiv erkannt wurden).
Hier bei erreicht das Lineare-Regressions-Modell eine Accuracy von 97,8%, eine Precision von 100% und einen Recall von 95,41%. Das Entscheidungsbaum-Modell erreicht die folgenden Werte: Accuracy 93,9% , Precision 90.60% , Recall 97.25%.
Da es sich hier nicht um einen Fall handelt bei dem alle Fälle erkannt werden müssen bei der eine Anzeige angeklickt wird, sollte Modell 1 verwendet werden.

Deployment

Es würde sich anbieten dieses Modell beim Ausspielen der Anzeigen zu implementieren, um vor dem Ausspielen einer Anzeige vorherzusagen ob sie geklickt werden würde oder nicht. Hierdurch kann vermieden werden das Nutzer von Werbeanzeigen genervt werden, welche sie sowieso nicht anklicken werden. Dadurch entsteht ein Mehrwert für den Werbekunden sowie für den Nutzer.

Link zum Notebook
Link zum Datensatz