statistische Modellbildung besteht in der Praxis aus zwei Schritten:
Ermittlung der Eigenschaften der Beobachteten Werte (Verteilung, Korrelationen..)
-> deskriptive Statistik
Ermittlung von Beziehungen zwischen gegebenen Variablen (Dimensionen) und beobachtbaren Größen (Fakten) zur Erstellung von Vorhersagen für zukünftige Werte
-> prädikative Statistik / Inferenzstatistik
Deskriptive Statistik - beschreibende Statistik
prägnante zusammenfassung von Daten
Ermittlung von Lagemaßen (Wo liegen die Daten?) und Streuungsmaßen (Wie sind die Daten verteilt?)
Ermmitlung von Zussammenhangsmaßen -> Korrelationen
—> Verfahren der Deskriptiven Statistik werden für Assoziationsanalysen benötigt)
Prädikative Statistik
Ziehen von Rückschlüssen auf eine Grundgesamtheit durch betrachtung einer Stichprobe
Entwicklung von Vorhersagemodellen zur Klassifikation zuvor unbekannter daten
Aufspüren von kausalen Beziehungen in den Daten
—> Verfahren der Prädikativen Statistik werden für Klassifikations- / Regressionsanalysen benötigt
Konfusionsmatrix zur Ermittlung der Genauigkeit eines Modells
wie aus kapitel 7
weitere Kennzahlen für die Modellgüte eines (binären) Vorhersagemodells
ROC - Kurve
(“receiver operating characteristic”)
Mit der ROC-Kurve kann die Güte verschiedener Modelle durch Kombinationen der FPR und FNR visualisiert werden.
jeder Punkt auf der ROC-Kurve repräsentiertein Vorhersagemodell und zeigt dessen FPR und FNR
Je näher der Punkt oben Links im Graphen (siehe Bild) ist, desto besser funktioniert das Modell
kann formal auch durch die Fläche unter der ROC-Kurve berechnet werden (area under the curve, AUC)
Punkte unterhalb d. gestrichelten Linie würden bedeuten, das Modell liegt häufiger falsch als richtig.
programmiersprache R
R ist eine freie, quelloffene Programiersprache, mit der sich relativ einfach maschinelle Datenanalysen durchfüren und ggf. automatisieren lassen.
Gründe für die Verwendung von R
Unterstützung moderner verfahren
R bietet vielzahl von Paketen mit denen prädikative Modellierung möglich ist
-> übersteigt Funktionsumfang von Tabellenkalkulationssoftware deutlich
Reproduzierbarkeit
Durch Erstellung eines Programms werden Analyseschritte dokumentiert
-> dadurch kann transparent nachvollzogen werden, wie vorgegangen wurde
Automatisierbarkeit
Einmal ersstellte programme können wiederholt mit neuen daten ausgeführt werden.
-> daten und Ananlysebefehle sind nicht (wie z.B. bei Excel) vermischt
Quelloffenheit
R ist kostenlos + kann ohne Erwerb von Lizenzen jederzeit verwendet werden
R wird permanent von einer großen Gruppe Entwickler weiterentwickelt
wichtigste Elemente von R
Objekte
Variablen, denen Werte zugewiesen werden können
Numerische Werte, Vektoren, Matrizen, Listen, Dataframes,…
Zuweisungen mit “< - “ Operator:
grades <- c(1.3, 1.7)
Funktionen
Berechnnung einer ausgabe zu einer menge von Eingabewerten
Deklaration mit fuction: mult <- function (a, b) { return (a*b) }
fuction: mult <- function (a, b) { return (a*b) }
Pakete
Sammlung an vorgegebenen Funktionen zur Lösung häufig vorkommender Probleme
Beispiel: Paket arules für Arbeit mit assoziationsregeln
arules
Einbindung mit library (…)
library (…)
Lagemaße und Streuungsmaße
Zusammengefasste Daten aus der deskriptiven Statstik, lassen sich in Lage- und Streuungsmaße kategorisieren:
Lagemaße:
Mittelwert
Median
Modus
Streuungsmaße:
Standardabweichung
Variationskoeffizient
Bsp.:
summarise (data, mean = mean (revenue),
median = median(revenue),
stddev = sd(revenue),
total = sum(revenue))
Korrelation cor
cor (select(data, sales, revenue))
-> Wenn die Preise im betrachteten Zeitraum halbwegs konstant waren, ist von einer hohe positiven Korrelation zwischen Verkaufszahlen und Umsatz auszugehen.
Apriori-Algorithmus
Funktion zur automatischen Ermittlung und Bewertung von Assoziationsregeln
Beispiel: Immer dann wenn der Umsatz im Land Costa Rica 521 oder 1750 war, war es ein rodukt aus der Gruppe Account. (siehe 1. Zeile)
Die vier Schritte des statistischen Modellierens
Trainings- und Testdaten separieren
z.B. mit dem Paket caTools
caTools
Modellbildung mit R
R ermöglicht Bildung einer Vielzahl von Modellen zur Regression oder Klassifikation von Datensätzen auf Basis von Daten aus DF.
Modell mit Trainingsdaten erstellen
Bsp. 1: Lineare Regression zur Vorhersage des Umsatzes anhand Verkaufszahlen
lm(revenue ~ sales, data = train)
Bsp. 2: Entscheidungsbaum zur Vorhersage der Verkaufszahlen
rpart(sales ~ month + country + product_grroup, data = train, method = “anova”)
-> entspricht Regressionsmodell, da kontinuierliche Zahlenwerte vorhergesagt werden
Klassifikationsmodell; hierfür wird (binäres) Klassenlabel benötigt (siehe folgender befehl): data$highrevenue <- (data$revenue > mean(data$revenue))
data$high
revenue <
- (data$revenue > mean(data$revenue))
Baum für Klassifikationsmodell: rpart(highrevenue ~ month + country + productgroup, data = train, method = “class”)
rpart(high
revenue ~ month + country + product
group, data = train, method = “class”)
set.seed(…)
Zur Reproduzierbarkeit der Aufteilung
Paket für Entscheidungsbaum
rpart
Modellevaluation mit R
Zur Evaluation eines Modells muss Korrektheit seiner Vorhersagen anhand Testdaten überprüft und darauf basierend die Modellgüte berechnet werden.
KDD-Prozess
= ETL-Prozess + Data Warehousing + Datenanalyseprozess
5 Schritte zur (maschinellen) Datenanalyse
Einlesen - Aufbereiten - Modellieren - Visualisieren - Kommunizieren
df_countries <- select(data, countries, revenue)
Auswählen von relevanten Spalten aus dem Data Frame
df_sjb <- filter(data, country == "Costa Rica")
Löschen von irrelevanten Zeilen aus dem Data Frame
df_ranking <- arrange(data, -revenue)
Sortieren von Zeilen des Data Frames
df_rev_product <- summarize(df_group_product, sum(revenue))
Aggregation von Daten im Data Frame zu einer erhöhten Aggregationsstufe
df_group_product <- group_by(data, product)
Erhöhung der Aggregationsstufe der Daten im Data Frame
Korrekte aussagen: Deskriptive Datenanalyse
Assoziationsanalysen fallen in den Bereich der deskriptiven Statistik
Assoziationsregeln können mithilfe des Apriori-Algorithmus in R automatisch ermittelt werden
Soll untersucht werden, ob ein Zusammenhang zwischen Anzahl besuchter Weiterbildungen und Anzahl beschäftigter Mitarbeitender vorliegt, kann dies in R mit der Funktion cor() geprüft werden
cor()
Datenanalyseprozess: Korrekte Aussagen
Wird der Datenintegrationsprozess fehlerhaft durchgeführt, führt dies zur Verwendung falscher Daten aus dem Data Warehouse für die Datenanalyse.
Ein statistisches Modell gibt Auskunft über Lage und Verteilung von Daten sowie über Beziehungen zwischen den in den Daten enthaltenen Variablen
Korrekte Aussagen: Statistische Vorhersagemodelle
Ist die Accuracy einer Test-Stichprobe hoch, dann ermöglicht das Modell einen hohen Anteil korrekter Vorhersagen
Recall und precision können Aufschluss sowohl über die Qualität eines Datenbestandes als auch die Genauigkeit eines Modells geben.
Mit Hilfe geeigneter Pakete können mit R Daten aus einem Data Warehouse eingelesen werden.
Unterschied zwischen Klassifikations- und Regressionsmodellen
Klassifikationsmodelle: ordnen Daten in (diskrete) Klassen
Regressionsmodelle: Treffen (kontinuierliche) numerische Vorhersage
Last changed13 days ago