Upload
others
View
4
Download
0
Embed Size (px)
Citation preview
6. Data Mining
2
Inhalt§ 6.1 Motivation
§ 6.2 Klassifikation
§ 6.3 Clusteranalyse
§ 6.4 Asszoziationsanalyse
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
3
6.1 Motivation§ Data Mining and Knowledge Discovery zielt darauf ab,
verwertbare Erkenntnisse (actionable insights) ausverfügbaren Daten zu gewinnen
§ Überlappung mit dem Gebiet des maschinellen Lernens(machine learning), wo jedoch die Vorhersagekraft,anstelle von Einsichten, im Vordergrund steht
§ Begriff „Data Mining“ kam in den frühen 1990er Jahren auf, verwendete Verfahren sind teilweise älter
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
4
Aufgaben (tasks)§ Drei gängige Aufgaben (tasks) im Data Mining sind:
§ Klassifikation, d.h. Datenpunkte (z.B. Dokumente) und ihre Klassen (z.B. Themen) sind bekannt; finde heraus, was Datenpunkte einer bestimmten Klasse auszeichnet, umso neue Datenpunkte klassifizieren zu können
§ Clusteranalyse, d.h. Datenpunkte (z.B. Dokumente) sind bekannt; teile die Datenpunkte in (eine bestimmte Anzahl)von homogenen Gruppen (cluster) ein
§ Mustererkennung, d.h. Daten (z.B. Einkäufe) sind bekannt;finde darin Muster (z.B. häufig zusammen gekaufte Artikel)
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
5
6.2 Klassifikation§ Datenpunkte (z.B. Dokumente) mit ihren Klassen (z.B.
Themen) sind gegeben; finde für neue Datenpunktedie passende Klasse heraus
§ Drei Arten von Verfahren zur Klassifikation
§ distanzbasierte (z.B. k-Nächste-Nachbarn)
§ probabilistische (z.B. Naïve Bayes)
§ diskriminative (z.B. Entscheidungsbäume)
§ Verfahren unterscheiden sich u.a. darin, ob sie erklären können, was eine bestimmte Klasse auszeichnet
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
6
Anwendungsbeispiele§ Klassifikation von Zeitungsartikeln oder Blogposts
in Politik, Sport, Kultur, Reise und Auto
§ Klassifikation von E-Mailsin Spam und Nicht-Spam
§ Segmentierung von Kundenin Schnäppchenjäger, Normalos und Luxusliebhaber
§ Produktempfehlungen für bestimmten Kunden durch Klassifikation in Interessant und Nicht-Interessant
§ Handschrifterkennung auf Überweisungsträgern durch Klassifikation der gescannten Zeichen in Klassen 0-9
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
7
6.2.1 k-Nächste Nachbarn§ Klassifikation anhand der k nächsten Nachbarn ist ein
distanzbasiertes Verfahren, welches mehr alszwei Klassen unterstützt
§ Idee: Neuer Datenpunkt wird klassifiziert, indem
§ die k nächsten Datenpunkte mit bekannter Klassegemäß geeignetem Distanzmaß bestimmt werden
§ die häufigste aus deren Klassen ausgewählt wird
§ Typische Werte für k sind {5, 10, 15, 25}; im Fall binärer Klassifikation ist Wahl eines ungeraden Werts sinnvoll
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
8
Euklidische Distanz§ Datenpunkte als Vektoren in m-dimensionalen Vektorraum
§ Euklidische Distanz (L2-Distanz) als Distanzmaßzwischen zwei Vektoren xi und xj
d(xi, xj) =ı̂ıÙ
mÿ
k=1
!x(i,k) ≠ x(j,k)
"2
xi
xj
d(xi, xj)
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
9
Euklidische Distanz§ Euklidische Distanz ist eine Metrik, d.h. es gelten
§ positive Definitheit
§ Symmetrie
§ Dreiecksungleichung
d(xi, xj) Ø 0
d(xi, xj) = d(xj , xi)
d(xi, xk) Æ d(xi, xj) + d(xj , xk)
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
10
k-Nächste Nachbarn§ Beispiel: Autos mit Merkmalen Gewicht und Hubraum
sowie Merkmal Herkunft
§ Auto mit Gewicht 1000 kgund Hubraum 3L istzu klassifizieren
800 1000 1200 1400 1600 1800 2000
12
34
56
7
Gewicht
Hubraum
U.S.A.EuropaJapan
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
11
k-Nächste Nachbarn
§ Auto wird alsHerkunftU.S.A.klassifiziert
800 1000 1200 1400 1600 1800 2000
12
34
56
7
Gewicht
Hubraum
U.S.A.EuropaJapan
k = 3
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
12
k-Nächste Nachbarn§ Die drei nächsten Nachbarn sind
§ x1 = (1080, 3.2)
§ x2 = (1190, 2.8)
§ x3 = (900, 1.8)
§ Distanzen zu
§ x = (1000, 3)
§ d(x, x1) ≈ 180
§ d(x, x2) ≈ 190
§ d(x, x3) ≈ 100800 900 1000 1100 1200 1300 1400
1.0
1.5
2.0
2.5
3.0
3.5
4.0
Gewicht
Hubraum
U.S.A.EuropaJapan
x1
x2
x3
x
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
13
k-Nächste Nachbarn§ k-Nächste Nachbarn ist ein einfaches, aber robustes
Klassifikationsverfahren, das immer anwendbar ist,wenn zwischen Datenpunkten ein sinnvollesDistanzmaß definiert werden kann
§ Nachteile:
§ naïve Implementierung, d.h. Distanzberechnung zu allen Datenpunkten aus den Trainingsdaten, ist rechenintensiv(bessere Implementierungen verwenden Indexstrukturen)
§ geringe Interpretierbarkeit, d.h. keine Erkenntnissedarüber, welche Eigenschaften die Datenpunkteeiner Klasse auszeichnen (z.B. viel Hubraum für U.S.A.)
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
14
§ Naïve Bayes ist eine Familie von Klassifikationsverfahren,die insbesondere zur Klassifikation von Textdokumenten(z.B. E-Mails in Spam/Nicht-Spam) eingesetzt wird
§ Der Name Naïve Bayes rührt daher, dass die Verfahrenden Satz von Bayes für bedingte Wahrscheinlichkeitenverwenden und eine (naïve) Unabhängigkeitsannahmeüber die Verteilung der verwendeten Merkmale machen
6.2.2 Naïve Bayes
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
15
Bedingte Wahrscheinlichkeit§ Betrachte zwei Ereignisse A und B, z.B.
§ A ist das Ereignis, dass Objekt ein Kreis ist
§ B ist das Ereignis, dass Objekt grün ist
§ A � B ist das Ereignis, dassein grünes Kreisgezogen wird
P [ B ] = 4/9
P [ A ] = 5/9
P [ A · B ] = 3/9
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
16
Bedingte Wahrscheinlichkeit§ Bedingte Wahrscheinlichkeit P[ B | A ] (lies: B gegeben A)
ist die Wahrscheinlichkeit, dass Ereignis B eingetretenist, wenn wir wissen, dass Ereignis A eingetreten ist
hier:
P [ B | A ] = P [ A · B ]P [ A ]
P [ B | A ] = 3/5
P [ A | B ] = 3/4
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
17
Stochastische Unabhängigkeit§ Zwei Ereignisse A und B heißen (stochastisch)
unabhängig, wenn gilt
§ Bemerkung: Die beiden Ereignisse A und B im vorigen Beispiel sind nicht (stochastisch) unabhängig
P [ A · B ] = P [ A ] · P [ B ]
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
18
Satz von Bayes§ Thomas Bayes (1701–1761) formulierte
folgenden Satz zur Berechnungbedingter Wahrscheinlichkeiten vonEreignissen A und B
§ Satz von Bayes erlaubt das Umkehren der Schlussrichtungund ist z.B. dann nützlich, wenn eines der Ereignisseschwierig alleine zu beobachten
Quelle: en.wikipedia.orgP [ A | B ] = P [ B | A ] · P [ A ]
P [ B ]
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
19
Satz von Bayes§ Beispiel: Untersuchung von Wildtieren
§ Ereignis A soll sein, dass Wildtier ein Fuchs ist
§ Ereignis B soll sein, dass Wildtier an Tollwut erkrankt ist
§ Annahme: Beobachtete Wahrscheinlichkeiten seien
§ Wahrscheinlichkeit, dass Fuchs an Tollwut erkrankt ist
P [ A ] = 0.1 P [ B ] = 0.05 P [ A | B ] = 0.25
P [ B | A ] = 0.25 · 0.050.1 = 0.125
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
20
Naïve Bayes zur Klassifikation von Dokumenten§ Dokumente (z.B. E-Mails oder Zeitungsartikel) werden
vorverarbeitet, z.B. indem Groß- und Kleinschreibungentfernt wird und die Dokumente an Leerzeichenin Wörter aufgeteilt werden
§ Jedes Dokument wird so in eine Multimenge von Wörtern(bag of words) überführt, d.h. Reihenfolge der Wörter geht verloren, ihre Häufigkeit bleibt jedoch erhalten
The green politician Peter Green
{ green, green, peter, politician, the }
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
21
Naïve Bayes zur Klassifikation von Dokumenten§ Trainingsdaten stehen uns in Form von Dokumenten d
zur Verfügung, wobei wir für jedes die zugehörigeKlasse c (z.B. Spam / Nicht-Spam) kennen
§ Zur Klassifikation eines vorher unbekannten Dokuments dbestimmt man die bedingten Wahrscheinlichkeiten
und ordnet das Dokument in die Klasse mit derhöchsten bedingten Wahrscheinlichkeit ein
P [ c | d ]
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
22
Naïve Bayes zur Klassifikation von Dokumenten§ Wahrscheinlichkeiten der einzelnen Klassen lassen
sich auf Grundlage der Trainingsdaten schätzen als
§ Wahrscheinlichkeit, dass ein Wort w in einem Dokumentaus einer bestimmten Klasse c vorkommt, geschätzt als
P [ c ] =
# Dokumente in Klasse c
# Dokumente
P [ w | c ] =
# Vorkommen des Worts w in Dokumenten der Klasse c
# Wortvorkommen in Dokumenten in Klasse c
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
23
Naïve Bayes zur Klassifikation von Dokumenten§ Wahrscheinlichkeit, dass vorher unbekanntes
Dokument d zur Klasse c gehört, geschätzt als
dies kann vereinfacht werden, da nur die Klasse mit maximaler bedingter Wahrscheinlichkeit bestimmtwerden muss, der Faktor P[d] jedoch für alleKlassen gleich ist
P [ c | d ] = P [ d | c ] · P [ c ]P [ d ]
P [ c | d ] Ã P [ d | c ] · P [ c ]
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
24
Naïve Bayes zur Klassifikation von Dokumenten§ Wahrscheinlichkeit, dass Dokument d aus der Klasse c
stammt, schätzt man anhand der Wortvorkommen als
hierbei sei f(w, d) die Zahl der Vorkommendes Worts w im Dokument d
§ Intuition: Dies entspricht der Wahrscheinlichkeit, dass das Dokument d durch zufälliges Ziehen von Wörtern gemäß der Wahrscheinlichkeiten P[w | c] zustande kommt
P [ d | c ] ß
wœd
P [ w | c ] f(w,d)
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
25
Beispiel Naïve Bayes§ Folgende Dokumente mit Klassen N/S als Trainingsdaten
§ Wahrscheinlichkeiten der Klassen N und S
a b x y
d1 2 1 0 0 N
d2 0 1 2 2 S
d3 2 1 1 1 N
d4 1 0 2 2 S
d5 1 1 0 0 N
P [ N ] = 3/5 P [ S ] = 2/5
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
26
Beispiel Naïve Bayes§ Folgende Dokumente mit Klassen N/S als Trainingsdaten
§ Wahrscheinlichkeiten der Wörter a, b, x und y je Klasse
a b x y
d1 2 1 0 0 N
d2 0 1 2 2 S
d3 2 1 1 1 N
d4 1 0 2 2 S
d5 1 1 0 0 N
P [ a | N ] = 5/10 P [ a | S ] = 1/10P [ b | N ] = 3/10P [ x | N ] = 1/10P [ y | N ] = 1/10
P [ b | S ] = 1/10P [ x | S ] = 4/10P [ y | S ] = 4/10
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
27
Beispiel Naïve Bayes§ Klassifikation des vorher unbekannten Dokuments d6
§ Das Dokument wird in die Klasse N eingeordnet
a b x y
d6 2 2 1 1 ?
P [ S | d6 ] = P [ d6 | S ] · P [ S ]
=3 1
10 · 110 · 1
10 · 110 · 4
10 · 410
4· 2
5 = 6.4/106
P [ N | d6 ] = P [ d6 | N ] · P [ N ]
=3 5
10 · 510 · 3
10 · 310 · 1
10 · 110
4· 3
5 = 135/106
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
28
Rechnen mit kleinen Wahrscheinlichkeiten§ Wie am Beispiel zu erkennen, werden die betrachteten
Wahrscheinlichkeiten sehr klein, was zu numerischenProblemen (z.B. Abrunden zu Null) führen kann
§ Für eine Implementierung ist es daher ratsam, eineLog-Transformation vorzunehmen
log P [ c | d ] Ã log P [ d | c ] + log P [ c ]
log P [ d | c ] Ãÿ
wœd
f(w, d) · log P [ w | c ]
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
29
Rechnen mit kleinen Wahrscheinlichkeiten§ Die Logarithmus-Funktion ist monoton; da es nur gilt,
die maximale bedingte Wahrscheinlichkeit P[c | d] zu ermitteln, ihr genauer Wert jedoch irrelevant ist,ist eine solche Transformation zulässig
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
30
Zusammenfassung§ Data Mining and Knowledge Discovery zielt darauf ab,
verwertbare Erkenntnisse aus Daten zu gewinnen
§ Klassifikation ordnet neue Datenpunkte in Klassen ein,deren Charakteristika vorab anhand von Trainingsdatenbestimmt wurden
§ k-Nächste Nachbarn als Klassifikationsverfahrenbasierend auf der Distanz zwischen Datenpunkten
§ Naïve Bayes als probabilistisches Klassifikationsverfahren,welches häufig zur Klassifikation von Texten eingesetzt wird
Datenbanken & Informationssysteme / Kapitel 6: Data Mining
31
Literatur[1] C. D. Manning, P. Raghavan, H. Schütze:
Information Retrieval, Cambridge University Press, 2008(Kapitel 14 & 16)
[2] M. J. Zaki und W. Meira Jr.: Data Mining and Analysis,Cambridge University Press, 2014 (Kapitel 18)http://www.dataminingbook.info
Datenbanken & Informationssysteme / Kapitel 6: Data Mining