2. Übersicht Analytics-Methoden#

Es gibt verschiedene Kategorisierungen von Analytics-Modellen - wir wählen hier eine, die vom Einsatzzweck ausgeht. Wir betrachten drei Typen von Fragestellungen, die beantwortet werden sollen und beschreiben typische Modelle.

Fragestellung

Art des Modells

Beschreibung

Was ist passiert?

Deskriptiv

Es werden historische Daten betrachtet und zusammengefasst, um Charakteristiken und Muster zu erkennen.

Was könnte passieren?

Prädiktiv

Basierend auf Mustern in den historischen Daten wird die Zukunft vorhergesagt

Was sollten wir tun?

Präskriptiv

Aus einer Reihe von möglichen Aktionen wird die optimale gewählt

Modelle der Stufe “Was sollten wir tun?” erscheinen am mächtigsten. Dies kommt jedoch zum Preis einer erhöhten Komplexität und vor allem zusätzlicher, sehr starker Annahmen, die man treffen muss:

  • “Was ist passiert?” lässt sich beantworten unter der Annahme, dass die Daten repräsentativ für die Realität sind

  • “Was wird wahrscheinlich passieren?” erfordert die zusätzliche Annahme, dass die Zukunft so sein wird wie die Vergangenheit war

  • “Was sollten wir tun?” erfordert zusätzlich, dass die möglichen Aktionen und deren Erfolgswahrscheinlichkeiten bekannt sind

Gestartet wird immer mit deskriptiven Modellen und bei Eignung des Problems und guten Kosten-Nutzen-Verhältnis wird im zeitlichen Verlauf auf komplexere Modelle ausgeweitet. Bei Modellen, die erklären was passiert ist, kommt es häufig zur Frage “warum ist es passiert”? Bitte beachten Sie, dass die Frage eine andere Herangehensweise erfordert. Insbesondere sind Experimente notwendig und die Frage kann nicht durch reine Betrachtung historischer Daten beantwortet werden.

Arten von Analytics-Modell

2.1. Deskriptive Modelle#

Bei der deskriptiven Analyse ist das Ziel meist recht weit gefasst und daher das Vorgehen explorativ: es werden unterschiedliche Methoden ausprobiert und dort wo interessante Ergebnisse sind wird tiefer reingegangen. Typische Methoden sind:

  • Berechnung von statistischen Kennzahlen, z.B. Mittelwerte, Quantile, Min/Max, Korrelationskoeffizienten

  • Untersuchung von Verteilungen, z.B. visuell mit Histogrammen und Boxplots

  • Aggregationen von Einzeldaten auf höhere Ebenen (z.B. von Städten auf Länder, von Minuten auf Tage)

  • Visualisierungen, z.B. Darstellung eines Liefernetzwerks oder Heatmaps mit Anrufaufkommen über die Woche in einem Call Center

  • Clusteranalysen, z.B. Segmentierung von Kunden in Gruppen mit ähnlichem Kaufverhalten

2.2. Prädiktive Modelle#

Bei prädiktiven Modellen wird ein klar definierter Wert vorhergesagt. Dabei unterscheiden wir zwischen zwei grundlegenden Typen:

  • Regression: ein numerischer Wert wird vorhergesagt, z.B. der Umsatz in Euro, die Temperatur in Grad, ein Preis

  • Klassifikation: eine Klassenzugehörigkeit wird vorhergesagt, z.B. über- oder unterdurchschnittlicher Umsatz, Regentag (ja/nein), Betrugfsfall (ja/nein)

Die eingesetzten Methoden überschneiden sich - im Prinzip lassen sich auch beide Typen gegenseitig überführen:

  • Eine Regression kann genutzt werden um die Wahrscheinlichkeit einer Klassenzugehörigkeit vorherzusagen. Mit einem Schwellenwert kann hieraus eine Klassifikation gebildet werden.

  • Der Lösungsraum einer Regression kann in diskrete Intervalle aufgeteilt werden und die Intervalle dann als Klassen in einer Klassifikation behandelt werden.

Eine Auswahl von Methoden:

  • Lineare Regression

  • Entscheidungsbäume (Decision Trees)

  • Neuronale Netze

  • Zeitreihenanalyse, z.B. ARIMA

  • Ensembles (Kombination mehrerer Modelle, ggfs. unterschiedlicher Algorithmen)

  • Support Vector Machines

  • k-Nearest-Neighbour

2.3. Präskriptive Modelle#

Mit Modellen, die einen Vorschlag machen, was wir als nächstes tun sollen, sind die meisten von uns schon in Berührung gekommen: Recommender-Systeme in Online Shops, die uns weitere Artikel zum Einkauf empfehlen. Ein einfacher Ansatz für solche Systeme sind Association Rules. Hier wird analysiert welche Kombinationen von Artikeln häufig zusammen gekauft werden. Wenn nun ein Artikel aus einer gängigen Kombination im Warenkorb liegt wird der zweite Artikel empfohlen.

Ein weiteres gängiges Beispiel sind Navigationsdienste, die eine Routenoptimierung zwischen zwei Punkten vornehmen. Im Unternehmenskontext werden diese Probleme schnell noch komplexer. Betrachten wir z.B. die Belieferung von Supermärkten aus Zentrallagern:

  • Es müssen mehrere Supermärkte angefahren werden - eine optimale Route zu finden ist sehr aufwändig (Traveling Salesman Problem)

  • Jeder Supermarkt hat andere Beschränkungen bezüglich der möglichen Anlieferungszeiten (z.B. nicht vor 7 Uhr wegen Anwohnern oder nicht nach 7 Uhr weil Anlieferung über Kundenparkplatz erfolgt)

  • Die Fahrtdauer lässt sich nicht einfach aus der Streckenlänge ableiten (Verkehr, Ampeln, usw.)

  • Beschränkte Kapazitäten an LKWs insbesondere unter Berücksichtigung verschiedener Transportarten (z.B. Obst/Gemüse oder gekühlt oder tiefgekühlt)

  • Für Kosteneffizienz müssen LKWs optimal voll beladen sein - das wird beeinflusst durch Warenbeschaffenheit und durch die Reihenfolge des Ausladens

Solche Probleme sind zu komplex, um sie durch Ausprobieren aller Möglichkeiten und Auswahl der Besten zu lösen. Stattdessen kommen z.B. heuristische Verfahren zum Einsatz, die den Suchraum einschränken und dennoch eine gute Annäherung der optimalen Lösung bieten (z.B. bei linearer Optimierung). Eine andere Möglichkeit sind Monte Carlo Simulationen. Hier werden unterschiedliche Szenarien zufällig generiert. In diesen Szenarien können dann z.B. unterschiedliche Strategien zur Optimierung getestet werden. Wichtig ist hierbei die richtigen Verteilungen für bestimmte Events (z.B. Stau) zu kennen.

2.4. Daten#

Daten sind die Grundlage für alle Arten von Modellen. Je nach Algorithmus und Anwendung können sehr unterschiedliche Arten von Daten verwendet werden inklusive unstrukturierter Formate wie Bild-, Text- oder Audiodateien. Für die meisten Algorithmen ist jedoch zuerst eine Umwandlung in ein strukturiertes tabellenartiges Format notwendig. Im Verlauf dieses Kurses werden wir detailliert über die Implementierung solcher Umwandlungen sprechen. Ein typischer Datensatz, der von Modellierungs-Algorithmen verarbeitet werden kann, hat die folgende Struktur:

Feature 1 Feature 2 ... Feature n Zielvariable
1 X[1,1] X[1,2] ... X[1,n] Y[1]
2 X[2,1] X[2,2] ... X[2,n] Y[2]
... ... ... ... ... ...
m X[m,1] X[m,2] ... X[m,n] Y[m]

Jede Zeile in der Tabelle enthält eine Beobachtung über die Gegenstände unserer Modellierung, z.B.:

  • Bei einer Kundensegmentierung: ein Kunde je Zeile

  • Bei einer Klassifikationen von Kreditkartenbetrugsfällen: eine Transaktion je Zeile

  • Bei einer Prädiktion von Immobilienpreisen: eine Immobilie je Zeile

Jede Beobachtung wird durch eine Reihe von Eigenschaften beschrieben - die sogenannten Features, z.B.:

  • Kundensegmentierung: Alter, Adresse, Geschlecht, Durchschnittlicher Einkaufswert, … des Kunden

  • Kreditkartenbetrug: Ort, Betrag, Branche des Händlers, Online/Offline, Datum, Zeit, … der Transaktion

  • Immobilienpreise: Baujahr, Postleitzahl, Aufzug (Ja/Nein), Anzahl Zimmer, Fläche, … der Immobilie

Bei Vorhersagemodellen (Prädiktion, d.h. Regression und Klassifikation) gibt es noch eine Zielvariable, die den vorherzusagenden Wert enthält. Da es sich um historische Daten handelt, ist die Zielvariable also das was wir in Zukunft vorhersagen wollen oftmals bekannt. Ansonsten muss diese über manuelle oder automatisierte Methoden hinzugefügt werden - dies wird Labeling genannt. In unseren Beispielen:

  • Kreditkartenbetrug: War diese Transaktion betrügerisch (Ja/Nein)

  • Immobilienpreise: Was war der tatsächliche Verkaufspreis (in Euro)

Wenn keine Zielvariable vorhanden ist, dann sprechen wir von Unsupervised Learning - z.B. beim Clustering.

Wichtig für das Erstellung von guten Modellen ist die Unterteilung der Daten in Test- und Trainingsdaten. Typischerweise werden 60-80% der Daten fürs Training genommen. Das heisst der Algorithmus durchsucht diese Trainingsdaten nach Mustern, die die bekannte Zielvariable beeinflussen. Die Testdaten werden dem Algorithmus während des Trainings komplett vorenthalten.

Zum Testen des Modells werden dann Vorhersagen auf den Features der Testdaten gemacht - die Zielvariable wird dabei ignoriert. Die vorhergesagten Werte werden dann mit den tatsächlichen Zielvariablen verglichen und über verschiedene Gütemaße wird die Genauigkeit der Vorhersagen quantifiziert. Mit dieser Quantifizierung kann dann bewertet werden, welches das beste Modell ist und ob es den Ansprüchen genügt.

Würde man diese Unterteilung nicht vornehmen, wäre es eine dominante Strategie die Daten einfach komplett in einer Datenbank abzuspeichern und man könnte immer korrekte Vorhersagen treffen - aber eben nur auf den bekannten historischen Daten. Eine Verallgemeinerung auf unbekannte zukünftige Daten ist bei diesen Modellen meist sehr schlecht. Man spricht von Overfitting, d.h. das Modell wurde zu sehr an die Daten angepasst ohne zu berücksichtigen, dass diese ja nur ein unvollständiges Sample der Realität darstellen.

Die Unterteilung hat grundsätzlich zufällig zu erfolgen mit Ausnahme bei Zeitreihen. Auf weitere Details wird im Laufe des Kurses eingegangen.