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.