Data Warehousing und Data Mining

Werbung
Data Warehousing
und
Data Mining
Einführung in Data Mining
Ulf Leser
Wissensmanagement in der
Bioinformatik
Wo sind wir?
•
•
•
•
•
•
•
•
•
Einleitung & Motivation
Architektur
Modellierung von Daten im DWH
Umsetzung des multidimensionalen Datenmodells
Extraction, Transformation & Load (ETL)
Indexstrukturen für DWH
Logische Optimierung
Materialisierte Sichten
Data Mining
Ulf Leser: Data Warehousing und Data Mining
2
Inhalt dieser Vorlesung
•
•
•
•
•
Was ist Data Mining?
Typische Problemstellungen & Anwendungen
Datenaufbereitung
Deskriptive Datenanalyse
Oracle Data Mining
Ulf Leser: Data Warehousing und Data Mining
3
Beispiel
• Wann werden Baseballspiele durchgeführt?
• Beobachtungen des Vortags
• Ziel: Vorhersage der Spieldurchführung aufgrund
früherer Beobachtungen
Ulf Leser: Data Warehousing und Data Mining
4
Vorhersage
Sunny
Hot
Normal
False
?
…
…
…
…
?
• Einfacher Versuch: Regeln ableiten
Ulf Leser: Data Warehousing und Data Mining
5
Entscheidungsbäume
Outlook
sunny
Temperature
hot
overcast
Temperature
rainy
Temperature
mild
Humidity
high
Windy
true
No
false
No
Ulf Leser: Data Warehousing und Data Mining
6
Mehr Beobachtungen
Sunny
Hot
High
False
Yes
Sunny
Hot
High
False
No
Sunny
Hot
High
True
No
…
…
…
..
…
Ulf Leser: Data Warehousing und Data Mining
7
Aber wie?
Outlook
sunny
Temperature
hot
mild
Humidity
high
Windy
true
No
false
2/3: No, 1/3: Yes
Ulf Leser: Data Warehousing und Data Mining
overcast
Temperature
rainy
Temperature
• Welche Faktoren sind am
aussagekräftigsten?
• In welcher Reihenfolge bauen
wir den Baum am besten?
• Müssen wir immer bis zu den
Blättern gehen?
• …
8
Entscheidungsregeln
• Andere Darstellung des Baumes
• Regeln = Modell der Wirklichkeit
– Festlegung der Attribute und möglichen Ausprägungen
– Vereinfachung: Bestimmte Attribute, Bestimmte Ausprägungen
• Qualität von Regeln
– Support: Auf wie viele der Trainingsdaten passt die Regel?
– Confidence: Für wie viele der passenden Trainingsdaten sagt
die Regel das richtige Ergebnis voraus?
Ulf Leser: Data Warehousing und Data Mining
9
Traditionelle Analysemethode
• Manuell ausgeführte statistische Analyse
• Eher wenige Datensätze, eher wenig Attribute
• Formulieren von Hypothesen und deren Überprüfung
– „Hypothesis-driven“
– „Wie hoch ist die statistische Evidenz, dass das Wetter am
Vortag mit der Austragung eines Baseballspiels korreliert?“
– Hypothesen werden vor der Datenanalyse formuliert
• Im DWH: Man überlegt sich mögliche Zusammenhänge
und überprüft sie durch Formulieren der
entsprechenden Anfrage
Ulf Leser: Data Warehousing und Data Mining
10
Data Mining
• „We are drowning in data and starving for knowledge“
– „Was machen Kunden eigentlich auf meiner Webseite?“
• Riesige Datenberge
–
–
–
–
–
Business: Weblogs, Telefonate, Einkäufe, Börsendaten, …
Forschung: Astronomie, Teilchenphysik, Bioinformatik, …
Jeder: Nachrichten, Blogs, Webseiten, Fotos, …
Millionen oder Milliarden von Datensätzen
Hochdimensionale Daten mit Hunderten von Attributen
• Schon Formulierung von Hypothesen ist schwierig
• „Data-Driven“: Automatische Generierung und Prüfung
von Hypothesen
– Vorsicht: Irgendwas findet man immer
Ulf Leser: Data Warehousing und Data Mining
11
Beispiele
Welche Kunden erreiche
ich mit welcher Werbung
am Besten?
Welche Assoziationen
bestehen zwischen den
in einem Supermarkt
gekauften Waren?
DWH
Bei welchen Telefonkunden
besteht der Verdacht eines
Betrugs?
Zu welcher Klasse
gehört dieser
Stern?
Ulf Leser: Data Warehousing und Data Mining
12
Knowledge Discovery in Databases
[FPSS96]
• “KDD is the non-trivial process of identifying valid, novel,
useful and ultimately understandable patterns in data"
–
–
–
–
Valid: Muster sind im statistischen Sinne valide (signifikant)
Novel: Bisher unbekannt
Useful: keine Mengen von undurchschaubarer Assoziationen
Unterstandable: Man versteht die Muster (und damit die Daten)
• Sehr viel Interpretationsspielraum
• Data Mining als kreative Tätigkeit
Ulf Leser: Data Warehousing und Data Mining
13
KDD als Prozess
Quelle:
[FPPS96]
• Datenauswahl
• Datenvorverarbeitung
• Datenreduktion
• Explorative Datenanalyse
• Data Mining
• Interpretation und Anwendung
Ulf Leser: Data Warehousing und Data Mining
14
Inhalt dieser Vorlesung
• Was ist Data Mining?
• Typische Problemstellungen
– Klassifikation
– Clustering
– Assoziationsregeln
• Datenaufbereitung
• Deskriptive Datenanalyse
• Oracle Data Mining
Ulf Leser: Data Warehousing und Data Mining
15
Eingabe
• Unser Modell
– Eine Menge O={o1, o2,… ,on} von Objekten
– Jedes Objekt oi wird beschrieben durch die gleiche Menge von
Attributen A={a1, a2,… ,am}
• Heißen auch Dimensionen oder Feature
– Die Attributwerte oij können kategorial, diskret, oder
kontinuierlich sein
– Attributwerte können geordnet, halbgeordnet, ungeordnet sein
• Definition
Eine Klassifikationsfunktion f:O→C bildet Objekte aus O
auf eine Menge von Klassen C={C1, C2, …, Cl} ab
Ulf Leser: Data Warehousing und Data Mining
16
Drei klassische DM Aufgaben
• Klassifikation
– Gegeben eine Menge von Objekten und eine Menge von Klassen
– Welcher Klasse gehören die unklassifizierten Objekte an?
– Beispiel: Fraud-Detection bei Kreditkarten
• Clustering
– Gegeben eine Menge von Objekten
– Gibt es Gruppen (Cluster) ähnlicher Objekte?
– Beispiel: Segmentierung von Kunden
• Assoziationsregeln
– Geg. Menge von jeweils gemeinsam durchgeführten Aktionen
– Welche Aktionen kommen besonders häufig zusammen vor?
– Beispiel: Welche Produkte werden häufig gemeinsam gekauft?
Ulf Leser: Data Warehousing und Data Mining
17
Klassifikation
• Attribute debt, income
• Jeder Kunde als Punkt im zweidimensionalen Raum
• Klassen:
– „loan was fine“ (o)
– „loan was lost“ (x)
• Für historische Objekte
ist Klassenzugehörigkeit
bekannt
• Finde Funktion, die neue Objekte (Werte für debt,
income) einer der zwei Klasse zuordnet
– Für neue Kunden also ihre Klasse vorhersagt
Ulf Leser: Data Warehousing und Data Mining
18
Lineare Trennung
Quelle:
[FPPS96]
• Berechnung der Trennfunktion, die den Fehler minimiert
– Komplexere Funktionen als lineare sind möglich
• Geht nur bei numerischen Attributen
Ulf Leser: Data Warehousing und Data Mining
19
Overfitting
• Overfitting
– Modell ist perfekt für Trainingsdaten
– Aber sehr wahrscheinlich schlecht für andere Daten
Ulf Leser: Data Warehousing und Data Mining
20
Hierarchische Aufteilung
• Verwendung lokaler Trennfunktionen
• Siehe Entscheidungsregeln
Ulf Leser: Data Warehousing und Data Mining
21
Clustering
• Finde Gruppen zusammengehöriger Objekte
• Benötigt Abstandsmaß d
– Es soll gelten: zusammengehörend = „nahe“ bzgl. d
Ulf Leser: Data Warehousing und Data Mining
22
Clustern Daten?
Ulf Leser: Data Warehousing und Data Mining
23
Nicht immer einfach
Quelle:
[ES00]
• Problem deutlich schlechter definiert als Klassifikation
–
–
–
–
–
–
Wie groß sollen die Cluster ein?
Welche Form dürfen die Cluster haben?
Wie viele Cluster erwartet man?
Müssen alle Punkte geclustert werden?
Dürfen sich Cluster überlappen?
…
Ulf Leser: Data Warehousing und Data Mining
24
Association Rule Mining
• Welche Items wurden häufiger als t Mal zusammen
verkauft?
Quelle:
[Dun02]
• Problem: Es gibt so viele mögliche Itemsets!
– Wie viele?
Ulf Leser: Data Warehousing und Data Mining
25
Grundprinzip: „Large Itemset property“
• Jede Subgruppe eines
häufigen Itemsets
muss häufig sein
• … oder …
• Häufige große
Itemsets müssen aus
häufigen kleinen
Itemsets bestehen
Ulf Leser: Data Warehousing und Data Mining
26
Weitere Themen
• Text-Mining: Clustering und Klassifikation von Texten
– Verschlagwortung; Plagiaterkennung; gezieltes Verschicken von
Nachrichten; Clustering von Suchmaschinenergebnissen; …
• Web-Mining
– Welche Webseiten werden häufig in einer bestimmten
Reihenfolge besucht? Welche Struktur haben Web-Sites? Wie
kommen Kunden mit meiner Webseite klar? …
• Spatial Mining
– Daten mit geographischem Bezug
• Graph-Mining
– Struktur sozialer Netzwerke, Web als Graph, biologische
Netzwerke, …
• …
Ulf Leser: Data Warehousing und Data Mining
27
Klassifikation [Dun02]
Ulf Leser: Data Warehousing und Data Mining
28
Beispiele aus der Praxis
[AN00]
• Bonitätsprüfung im Versandhandel
– Gelernt aus ~5000 Beispielen mit ~100 Features
• Abbuchungen, Zahlungsverhalten, …
– 1-2% Verbesserung in der Vorhersage bringt >Millionen Euro
• Verbundkäufe in Warenkorbdaten
• Kundensegmentierung aus Nutzungsverhalten
– Telekoms: Welche Tarife anbieten? Welche Tarife schaffen?
• Tarifeinstufung von Kunden bei Versicherungen
• …
Ulf Leser: Data Warehousing und Data Mining
29
Inhalt dieser Vorlesung
•
•
•
•
•
Was ist Data Mining?
Typische Problemstellungen
Datenaufbereitung
Deskriptive Datenanalyse
Oracle Data Mining
Ulf Leser: Data Warehousing und Data Mining
30
Datenaufbereitung
• Viele DM Verfahren reagieren empfindlich auf Ausreißer,
fehlende Werte, Datenfehler etc.
• Preprocessing: Herstellung einer homogenen,
vollständigen und bereinigten Datenbasis
– Alles aus ETL: Transformation, Plausibilität, Umrechnung, …
– Ersetzung von fehlenden Werten durch Schätzen, Extrapolation
– Diskretisierung von Werten (Binning)
• Z.B. Einteilung des Einkommens von Kunden in 5 Bereiche
• Glättet Ausreißer, reduziert die Zahl verschiedener Werte
– Ranking von Werten
• Statt absoluten Einkommen wird der Rang benutzt
• Glättet Ausreißern
• Lässt aber auch ev. wichtige Unterschiede verschwinden
Ulf Leser: Data Warehousing und Data Mining
31
Binning
3500
3000
2500
2000
Normal distribution
1500
Uniform distribution
1000
500
10
3
11
0
11
7
96
89
82
75
68
61
54
47
40
0
• Extremfall: Ersetzen durch einen Wert
• Schlechte Idee
Ulf Leser: Data Warehousing und Data Mining
32
Equi-Width Histograms
3500
3000
2500
2000
Normal distribution
1500
Equi-width
1000
500
117
110
103
96
89
82
75
68
61
54
47
40
0
• Zahl der Bins festlegen und Raum äquidistant aufteilen
• Bins enthalten unterschiedlich viele Werte und decken
den ganzen Raum gleichmäßig ab
• Berechnung durch Sortierung und einen Scan
Ulf Leser: Data Warehousing und Data Mining
33
Equi-Depth
3500
3000
2500
2000
Normal distribution
1500
Equi-Depth
1000
500
117
110
103
96
89
82
75
68
61
54
47
40
0
• Zahl der Bins festlegen, dann Raum so aufteilen, dass
alle Bins gleich viele Tupel enthalten
• Führt zu gleichgroßen Bins mit unterschiedlicher Breite
Ulf Leser: Data Warehousing und Data Mining
34
Inhalt dieser Vorlesung
•
•
•
•
•
Was ist Data Mining?
Typische Problemstellungen
Datenaufbereitung
Explorative Datenanalyse
Oracle Data Mining
Ulf Leser: Data Warehousing und Data Mining
35
Explorative (deskriptive) Datenanalyse
• Ziel: „Gefühl“ für die Daten bekommen
– Welche Werte sind wie häufig?
– Unterliegen die Werte einer bestimmten Verteilung?
– Sind zwei (oder mehr) Attributwerte stark korreliert?
• Bei 2.000.000.000 Tupeln nicht einfach
• Vorbereitung zur Auswahl des Data Mining Verfahrens
• Hier: Nur ganz einfache statistische Kennwerte
– Und deren Berechnung im DWH
Ulf Leser: Data Warehousing und Data Mining
36
Univariate Beschreibung
•
•
•
•
Beschreibung der Verteilung der Werte eines Attributs
Suche nach einer möglichst kompakten Beschreibung
Alle Werte: Verteilungsfunktion
Ein Wert: Mittelwert, Median, Mode (häufigste Wert)
Quelle: [HK05]
Ulf Leser: Data Warehousing und Data Mining
37
Normalverteilte Daten
• Sehr viele Daten sind normalverteilt
• Zwei Werte: Standardabweichung und Varianz
– [μ–σ, μ+σ]: Ca. 68% der Datenpunkte
– [μ–2σ, μ+2σ]: Ca. 95% der Datenpunkte
– [μ–3σ, μ+3σ]: >99% der Datenpunkte
Ulf Leser: Data Warehousing und Data Mining
38
Visualisierung von Verteilungen
• Boxplots
– Min und max
– Erstes und drittes Quartil
– Mittelwert und (meist) Median
• Histogramme
Ulf Leser: Data Warehousing und Data Mining
39
SQL
• Standard SQL: avg, stddev, median, quartile
• Wie findet man den mode eines Attributs t.a?
SELECT a, cnt
FROM (SELECT a, count(a) cnt
FROM
t
GROUP BY a
ORDER BY count(a))
WHERE ROWNUM=1;
Ulf Leser: Data Warehousing und Data Mining
40
Multivariate Beschreibung
• Gleichzeitige Betrachtung der Verteilungen zweier (oder
mehr) Attribute
• Einfachsten Fall: Statistische Unabhängigkeit
– P(a|b)=p(a) und umgekehrt
– Besser beide Attribute univariat beschreiben
– Erkennbar im Scatter-Plot
Ulf Leser: Data Warehousing und Data Mining
41
Kontingenztabellen
• Sehr oft sind Attribute aber nicht unabhängig
– Trotzdem nimmt man das oft an um Dinge einfach zu halten
• Kontingenztabelle für kategoriale Attribute
Mittelfristig
Arbeitslos
Langfristig
Arbeitslos
Summen
Ohne Ausbildung
19
18
37
Mit abgeschlossener
Ausbildung
43
20
63
Summe
62
38
100
• Was erwartet man für unabhängige Attribute?
Ulf Leser: Data Warehousing und Data Mining
42
Korrelationskoeffizient
• Misst die lineare Korrelation zweier Attribute X und Y
n
∑ (x − x) ⋅ ( y − y)
i
rXY =
i
i =1
n
n
2
i
i
(
)
(
)
x
x
y
y
−
⋅
−
∑
∑
2
i =1
.
.
.
.
.
.
.
.
.
.
.
...
r XY > 0
rX Y ≈ 0
...... .........
.. . .
Ulf Leser: Data Warehousing und Data Mining
i =1
.... ... .
. .. ..
r XY < 0
rX Y ≈ 0
.
.
.
.
..
.
43
n
SQL
∑ (x − x) ⋅ ( y − y)
i
rXY =
i
i =1
n
n
∑ (x − x) ⋅ ∑ ( y − y)
i
i =1
2
i
i =1
• Berechnung Kontingenztabelle für Attribute t.a und t.b?
SELECT a,b,count(*)
FROM
t
GROUP BY cube(a,b);
• Berechnung des Korrelationskoeffizienten für t.a und t.b?
SELECT up/sqrt(down)
FROM (SELECT sum((a-ma)*(b-mb)) up
FROM t, (SELECT avg(a) ma, avg(b) mb
FROM t) tm),
(SELECT sum(sqr(a-ma))*sum(sqr(b-mb)) down
FROM t, (SELECT avg(a) ma, avg(b) mb
FROM t) tm);
Ulf Leser: Data Warehousing und Data Mining
44
2
Inhalt dieser Vorlesung
•
•
•
•
•
Was ist Data Mining?
Typische Problemstellungen
Datenaufbereitung
Deskriptive Datenanalyse
Oracle Data Mining
Ulf Leser: Data Warehousing und Data Mining
45
Oracle Data Mining (ODM)
• Bibliothek mit typischen Data Mining Algorithmen
• Daten müssen in einer Tabelle vorliegen
• Zugriff über zwei APIs
– DBMS_DATA_MINING / DBMS_DATA_MINING_TRANSFORM
– Java API
• ODM Models
– Die meisten Verfahren berechnen Modelle
• Entscheidungsbäume, Verteilungen, …
– Modelle werden in der DB gespeichert und können
ausgetauscht, angewandt, exportiert und importiert werden
Ulf Leser: Data Warehousing und Data Mining
46
Einige ODM Algorithmen
• Klassifikation: Decision Tree, Naive Bayes, Bayes
Networks, SVM
• Regression
• Clustering: K-Means, hierarchisches Clustering
• Association Rule Mining
• Text Mining: Clustering, Klassifikation
Ulf Leser: Data Warehousing und Data Mining
47
Literatur
• Han, J. and Kamber, M. (2006). "Data Mining. Concepts and
Techniques", Morgan Kaufmann.
• Alpar, P. and Niedereichholz, J., Eds. (2000). "Data Mining im
praktischen Einsatz". Braunschweig/Wiesbaden, Vieweg
Verlagsgesellschaft.
• Dunham, A. M. H. (2002). "Data Mining". New Jersey, Pearson
Education Inc.
• Ester, M. and Sander, J. (2000). "Knowledge Discovery in
Databases". Berlin, Springer.
• Fayyad, U. M., Piatetsky-Shapiro, G. and Smyth, P. (1996). "From
Data Mining to Knowledge Discovery in Databases." AI Magazine
17(3): 37-54.
• Ganti, V., Gehrke, J. and Ramakrishnan, R. (1999). "Mining Very
Large Databases." IEEE Computer: 38-45.
Ulf Leser: Data Warehousing und Data Mining
48
Herunterladen