Einführung in Datenanalyse und Data Mining mit Intelligenten

Werbung
Einführung in
Datenanalyse und Data Mining
mit Intelligenten Technologien
Christian Borgelt
Otto-von-Guericke Universität Magdeburg
Institut für Wissens- und Sprachverarbeitung
Universitätsplatz 2, D-39106 Magdeburg
E-mail: [email protected]
Überblick
Einleitung
Daten und Wissen
– Kennzeichen und Unterschiede von Daten und Wissen
– Bewertungskriterien für Wissen
– Beispiel: Tycho Brahe und Johannes Kepler
Knowledge Discovery und Data Mining
– Wie findet man Wissen?
– Der Knowledge-Discovery-Prozeß (KDD-Prozeß)
– Data-Mining-Aufgaben
Beispiele für Data-Mining-Verfahren
– Entscheidungsbäume
– Neuronale Netze
– Schlußfolgerungsnetze
– weitere Ansätze
– Clusteranalyse
Zusammenfassung
Einleitung
In jedem Unternehmen gibt es Systeme zur elektronischen Datenverarbeitung.
– Produktions- und Vertriebsplanung
– Lagerverwaltung
– Kunden- und Personaldatenverwaltung
Gewöhnlich besteht eine Kopplung mit Datenbanksystemen.
(z.B. Kunden-, Lieferanten-, Bauteiledatenbank)
Jede denkbare Einzelinformation kann abgerufen werden.
Aber: Daten allein genügen nicht.
– In einer Datenbank sieht man den Wald vor lauter Bäumen nicht“.
”
– Allgemeine Muster, Strukturen, Regelmäßigkeiten bleiben verborgen.
– Oft können solche Muster ausgenutzt werden, um den Umsatz zu steigern
(z.B. Verbundkäufe in einem Supermarkt).
Daten
Beispiele für Daten
Kolumbus entdeckte Amerika im Jahre 1492.“
”
Herr Meier fährt einen VW Golf.“
”
Kennzeichen von Daten
beziehen sich auf Einzelfälle
(Zeitpunkte, Objekte, Personen, etc.)
beschreiben individuelle Eigenschaften
sind oft in großer Zahl/Menge vorhanden (Datenbanken)
sind gewöhnlich leicht zu erfassen bzw. zu beschaffen
(z.B. Scannerkassen im Supermarkt, Internet)
lassen keine Voraussagen zu
Wissen
Beispiele für Wissen
Alle Massen ziehen sich an.“
”
Täglich um 17:04 Uhr fährt ein InterRegio von Magdeburg nach Braun”
schweig.“
Kennzeichen von Wissen
bezieht sich auf Fallklassen
(Mengen von Zeitpunkten, Objekten, Personen, etc.)
beschreibt allgemeine Muster, Strukturen, Gesetze, Prinzipien, etc.
besteht aus möglichst wenigen Aussagen (dies ist eine Zielsetzung!)
ist gewöhnlich schwer zu finden bzw. zu beschaffen
(z.B. Suche nach Naturgesetzen, Ausbildung)
läßt Voraussagen zu
Bewertungskriterien für Wissen
nicht jede allgemeine Aussage ist gleich wichtig, gleich gehaltvoll, gleich nützlich
)
Wissen muß bewertet werden
Bewertungskriterien
Korrektheit (Wahrscheinlichkeit, Testerfolg)
Allgemeinheit (Geltungsbereich, Geltungsbedingungen)
Nutzbarkeit (Relevanz, Vorhersagekraft)
Verständlichkeit (Einfachheit, Übersichtlichkeit)
Neuheit (vorher unbekannt, unerwartet)
Vorrang
Wissenschaft: Korrektheit, Allgemeinheit, Einfachheit
Wirtschaft: Nutzbarkeit, Verständlichkeit, Neuheit
Tycho Brahe (1546–1601)
Wer war Tycho Brahe?
dänischer Adeliger und Astronom
baute 1582 auf der Insel Hven (32 km NO von Kopenhagen) eine Sternwarte
bestimmte die Positionen der Sonne, des Mondes und der Planeten
(Genauigkeit: eine Bogensekunde, ohne Fernrohr!)
zeichnete die Bewegungen der Himmelskörper über mehrere Jahre hinweg auf
Brahes Problem
Er konnte die von ihm gesammelten Daten nicht in einem einheitlichen Schema
zusammenfassen.
Das von ihm entwickelte tychonische Planetensystem bewährte sich nicht.
Johannes Kepler (1571–1630)
Wer war Johannes Kepler?
deutscher Astronom und Gehilfe von Tycho Brahe
vertrat das kopernikanische Planetensystem
versuchte sein Leben lang, die Gesetzmäßigkeiten zu finden,
die die Bewegungen der Planeten bestimmen
ging von den von Tycho Brahe gesammelten Daten aus
Die Keplerschen Gesetze
1. Alle Planeten bewegen sich auf Ellipsen, in deren einem Brennpunkt die Sonne
steht.
2. Eine von der Sonne zum Planeten gezogene Linie überstreicht in gleichen Zeiten
gleiche Flächen.
3. Die Quadrate der Umlaufzeiten zweier Planeten verhalten sich zueinander wie
die Kuben der großen Ellipsenhauptachsen ihrer Umlaufbahnen.
Wie findet man Wissen?
Man kennt keine universelle Methode, um Wissen zu entdecken.
Probleme
Heute sind riesige Datenmengen in Datenbanken verfügbar.
Wir ertrinken in einem Meer von Informationen,
aber wir hungern nach Wissen.
John Naisbett
Manuelle Analysen sind schon lange nicht mehr durchführbar.
Einfache Hilfsmittel (z.B. Darstellung in Diagrammen) stoßen an ihre Grenzen.
Lösungsversuche
Unterstützung durch Datenanalyseprogramme
Knowledge Discovery in Databases
Data Mining
Knowledge Discovery und Data Mining
Knowledge Discovery in Databases
Übliche Charakterisierung:
KDD is the non-trivial process of identifying valid, novel, potentially useful,
and ultimately understandable patterns in data. [Fayyad et al. 1996]
KDD ist der nicht-triviale Prozeß der Identifizierung von gültigen, neuen, potentiell nützlichen und schließlich verständlichen Mustern in Daten
Data Mining
Data Mining ist der Schritt des KDD-Prozesses, in dem nach interessanten
Mustern gesucht wird. Er kann durch eine Menge von Problemtypen charakterisiert werden.
Der Knowledge-Discovery-Prozeß (KDD-Prozeß)
Vorstufen
Bestimmung des Nutzenpotentials
Anforderungs- und Durchführbarkeitsanalyse
Hauptstufen
Sichtung des Datenbestandes, Datenauswahl, ggf. Datenerhebung
Vorverarbeitung (60% bis 80% des Aufwandes)
– Vereinheitlichung und Transformation der Datenformate
– Säuberung (Behandlung von Fehlern, Fehlstellen und Ausreißern)
– Reduktion/Fokussierung (Stichproben, Attributauswahl, Prototypenbildung)
Data Mining (mit verschiedenen Verfahren)
Visualisierung (auch parallel zu Vorverarbeitung/Data Mining/Interpretation)
Interpretation, Prüfung und Bewertung der Ergebnisse
Anwendung und Dokumentation
Datenanalyse-/Data-Mining-Aufgaben
Klassifikation (classification)
Wird der Kunde seinen Kredit zurückzahlen?
Konzeptbeschreibung (concept description)
Welche Eigenschaften haben reparaturanfällige Fahrzeuge?
Segmentierung (segmentation, clustering)
Was für Kundengruppen habe ich?
Prognose (prediction, trend analysis)
Wie wird sich der Dollarkurs entwickeln?
Abhängigkeitsanalyse (dependency/association analysis)
Welche Produkte werden zusammen gekauft?
Abweichungsanalyse (deviation analysis)
Gibt es jahreszeitliche Umsatzschwankungen?
Entscheidungsbäume I
Idee
Ein Entscheidungsbaum zur
Bestimmung eines Medikamentes. Zuerst wird der
Blutdruck getestet. Ist der
Wert hoch oder niedrig, kann
das richtige Medikament sofort angegeben werden. Ist
der Blutdruck normal, wird
das Alter des Patienten geprüft, wodurch auch in diesem Fall das richtige Medikament bestimmt werden.
Blutdruck
Q
Q
Q
Q
hoch
+
niedrig
Q
Q
Q
Q
normal
Q
Q
Q
QQ
s
?
Medikament A
Alter
Medikament B
@
@
40
@
@
@
> 40
@
@
Medikament A
@
R
@
Medikament B
Entscheidungsbäume II
Datenbank
No
Geschecht Alter Blutdruck
Med.
Patientendaten zusammen mit
einem wirksamen Medikament
(wirksam in bezug auf eine nicht
näher spezifizierte Krankheit).
Es fällt schwer, direkt aus dieser
Tabelle eine Regel für die Vorhersage des richtigen Medikamentes
abzulesen.
1
2
3
4
5
6
7
8
9
10
11
12
männlich
weiblich
weiblich
männlich
weiblich
männlich
weiblich
männlich
männlich
weiblich
weiblich
männlich
A
B
A
B
A
A
B
B
B
A
B
A
20
73
37
33
48
29
52
42
61
30
26
54
normal
normal
hoch
niedrig
hoch
normal
normal
niedrig
normal
normal
niedrig
hoch
Entscheidungsbäume III
Aufteilung der Datensätze
No
Blutdruck Alter
Med.
Durch ein EntscheidungsbaumLernprogramm vorgenommene
Aufteilung der Fälle aus der
Patientendatenbank. Blutdruck
und Alter des Patienten bestimmen zusammen das wirksame
Medikament.
3
5
12
1
6
10
7
9
2
11
4
8
hoch
hoch
hoch
normal
normal
normal
normal
normal
normal
niedrig
niedrig
niedrig
A
A
A
A
A
A
B
B
B
B
B
B
37
48
54
20
29
30
52
61
73
26
33
42
Assoziationsregeln
Durch Scannerkassen in Supermärkten sind große Mengen an Kundendaten
verfügbar (Bondaten).
Großes Interesse an Verbundkäufen
Assoziationsregeln zur Beschreibung von Verbundkäufen:
!
Anordnung von Produkten in Regalen
Wenn ein Kunde Brot und Wein kauft,
”
dann kauft er in 80% aller Fälle auch Käse.“
Kenngrößen von Assoziationsregeln:
– Support (Stützung): relative Fallzahl, in denen die Regel anwendbar ist.
– Confidence (Sicherheit): relative Fallzahl, in denen die Regel richtig ist.
Apriori-Gen-Algorithmus von Rakesh Agrawal et al.
– Vorteil: sehr effizient, daher auch auf große Datenmengen anwendbar
– Problem: Vielzahl von Regeln, wichtige Regeln
versinken in einem Meer irrelevanter Regeln
Anwendung: Suche nach häufigen Molekülstrukturen
S
a bc de f
111111
S N
a bc de f
111110
S C
a bc de f
122111
C S C
a bc de f
022000
C S N
a bc de f
122110
O
C S N
a bc de f
222000
N
C S N
a bc de f
000110
O
C S N
O
a bc de f
200000
O
C C S
N
a bc de f
210000
C S O
a bc de f
222001
N
C C S
a bc de f
110100
O
C S O
a bc de f
200000
N
C S O
a bc de f
000001
C S N
a bc de f
000111
O
C C S
a bc de f
210000
N
C C S
a bc de f
000100
C C S
a bc de f
110100
O S N
a bc de f
211000
N S N
a bc de f
000110
S O
a bc de f
211001
S N
a bc de f
000111
O S O
a bc de f
200000
O S N
a bc de f
000001
O
O S N
a bc de f
200000
Ausgehend von einem Startatom werden Molekülfragmente aufgebaut und auf ihre Stützung
in einer Menge gegebener Moleküle geprüft.
Neuronale Netze I
NN wurden den Gehirnstrukturen von Lebewesen nachempfunden,
heute gibt es aber nur noch eine entfernte Analogie zum biologischen Ursprung.
Idee:
– Kleine Recheneinheiten, sogenannte Neuronen,
werden über gewichtete Verbindungen miteinander verschaltet.
– Durch Veränderung der Verbindungsgewichte können NN auf die Ausgabe bestimmter Werte bei Anliegen bestimmter Eingangswerte trainiert“
”
werden (Verfahren: Rückpropagation).
Einsatzgebiete: Klassifikation, Prognose, Funktionsapproximation
Problem: Ein trainiertes neuronales Netz ist eine black box“.
”
Lösungsversuch: Neuro-Fuzzy-Systeme
Kombination der Lernfähigkeit von neuronalen Netzen
mit der Verständlichkeit von Fuzzy-Systemen
Neuronale Netze II
Eingabeschicht
Ein neuronales Netz
Neuronale Netze werden gewöhnlich in Schichten organisiert. Verbindungen gibt es dann nur zwischen benachbarten Schichten. Nebenstehend ein einfaches neuronales Netz aus sechs Neuronen mit
Eingabe-, Ausgabe- und versteckter Schicht.
versteckte
Schicht
Ausgabeschicht
3
x
*
@
@
@
@
@
HH
@
H
J
HH
@
R
@
H
J j
H
J
J
* J
J
J
J
J
HH
J
H
HH JJ
^
H
j
H
1
4
y
2
5
6
z
Schlußfolgerungsnetze I
Entwicklung aus der Wahrscheinlichkeitstheorie
Heute werden auch andere Unsicherheitskalküle verwendet,
z.B. die Possibilitätstheorie.
Idee:
– Durch ein Netzwerk (einen Hypergraphen) werden Abhängigkeiten
zwischen Variablen dargestellt.
– Die Details der Abhängigkeiten werden durch Wahrscheinlichkeitsoder Possibilitätsverteilungen beschrieben.
Einsatzgebiet: Abhängigkeitsanalyse
Anwendung bei Daimler-Benz/Mercedes-Benz
– Analyse der QUIS-Datenbank
– Suche nach Ursachen von Fehlern/Schäden
Schlußfolgerungsnetze II
Ein Ausschnitt eines fiktiven
zweischichtigen Netzes, das
die Abhängigkeiten zwischen
Schäden und Fehlern (untere Schicht) und Bauzustandsmerkmalen (obere Schicht)
beschreibt. Übereinstimmungen mit tatsächlichen Abhängigkeiten sind rein zufällig.
el. Schiebedach
Ein fiktives Teilnetz, das die
Abhängigkeit eines Batterieschadens vom Vorhandensein
eines elektrischen Schiebedaches und einer Klimaanlage
beschreibt.
(fiktive) Häufigkeit
von Batterieschäden
A
A
A
A
A
AU
Motorbaureihe
Klimaanlage
J
J
J
J
J
^
J
Batterieschaden
elektrisches
Schiebedach
Reifentyp
Schlupfregelung
@
@
@
@
@
R
@
Kompressorschaden
?
Bremsenschaden
Klimaanlage
mit
ohne
mit
9%
3%
ohne
3%
2%
Spezialfall: Naive-Bayes-Klassifikator
Ein Naive-Bayes-Klassifikator ist ein Bayessches Netz mit einer sternförmigen
Struktur.
Das Klassenattribut ist das einzige Attribut ohne Eltern.
Alle annderen Attribute haben nur das Klassenattribut als Elter.
Aa 3
Aa 4
Aa 2
Ca(+,/
Aa 1
Aa 3
Aa n
Aa 4
P (C = ci j ! ) =
1
p0
P ( C = ci ; ! ) =
Aa,1 2
Ca(+,/
Aa 1
Aa n
1
p0
P ( C = ci ) n
Y
j =1
P (Aj = aj j C = ci)
Visualisierung von Bayes-Klassifikatoren
Naiver Bayes-Klassifikator
Voller Bayes-Klassifikator
Clusteranalyse I
Idee:
– Zusammenfassung von Fällen zu Gruppen (Clustern)
– zwei Fälle aus einer Gruppe sollen möglichst ähnlich sein
– zwei Fälle aus verschiedenen Gruppen sollen möglichst unterschiedlich sein
Einsatzgebiete:
– Prototypenbildung
(Repräsentation der Fälle einer Gruppe durch einen typischen Fall)
– Konzeptbeschreibung
(Bestimmung der die Gruppen unterscheidenden Merkmale)
Methoden:
– hierarchische Clusteranalyse
– Fuzzy-Clusteranalyse
Clusteranalyse II
Clustereinteilung
Eine Einteilung zweidimensionaler Daten in Cluster.
Der Kreis und die Ellipsen
deuten an, welche Punkte
zu einer Gruppe zusammengefaßt wurden.
6
r
rr r
rr
r r
r
rr rrrr r r rrr
r
rrr rrrrr rr rr r r
rr rr rrrrrrrrrrrrrrrrrrrrrr rr
rrrrrrrrrrrrrrrrrrrrrrrrrrrrrr r r r
rrrrrrrrrrrrrrrrrrrrrrrrrrrrr
rrrrrrrrrrrrrrrr
rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr r
rr rrrrrr rrrrrrrrrrrrrrr r rr
r rrrrr rrrrrrrrr
rrr rr rrr r r
r
r
rrr r
r
rrr
rrr r r r
r
rr r r r rrr rrrrrr r r r
r rrrr rr rrrrr rrrr rrr r
r rrr r rrrr rrrrrrr rrrrrrrrrr rrr r r
rr rrrr rrrrrrrr r rr r
rr r rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr rr rr r
r rr rrrr rrrrrrrrrrrrrrrrrrrrrr rrr rrrrrrrrr r
rr r r rr r rrrrrrr rrr rr r r r
r
r r rrrrrrrrrrrrrrrrr rr rrrr rrrrr r r
r r r r rr r rr rrr
rr r
r
r rr
r r
r rr
r
r
r rr
r rrrrrr rrrrrrrrr r r
rrrrrrrrr rrrrr rr
rr rrr rrrrrrrrrrrrrr r
rr rrrrrrrrrrrrrrrrrrrrrrrrrrrrr rrr
rr r rrr
r r rrrrrrrrrrrrrrrrrrrrrrrrrrr
rr r r
r rrrrrrrrrrrrrrrrr rrrrrrrrrrr r
rrr rr rrrrrrrrrr r r
r r rrrrr r
r r rrrrrrrrrrrr rrrrr r
r rr r
r r rrr
r
r r
r
rr r
r
-
Weitere Ansätze
klassische statistische Verfahren
– Diskriminanzanalyse
– Regressionsanalyse
– Hauptkomponentenanalyse
– Faktorenanalyse
– Zeitreihenanalyse
– k-nearest neighbour
Verfahren des maschinellen Lernens
– induktive logische Programmierung
– conceptual clustering
– instance based learning
evolutionäre/genetische Algorithmen
Zusammenfassung
Daten allein sind noch kein Wissen,
aber in in Daten kann Wissen verborgen sein.
Manuelle Analysen sind heute undurchführbar,
deshalb muß der Mensch durch intelligente Computerprogramme
unterstützt werden.
Zwar können diese Programme den Menschen noch lange nicht ersetzen,
aber sie können ihm eine wertvolle Hilfestellung leisten.
Achtung: Schwere Fehler können auftreten,
wenn komplexe Methoden nicht richtig angewandt
oder vom Anwender nicht hinreichend verstanden werden.
Herunterladen