Machine Learning: Der KDD-Prozess
Data-Mining Aufgaben
• Aufgabe
• Wissensextraktion durch
automatisches Erkennen von Mustern in Daten
• Keine spezifische Hypothese darüber, welche Muster
vorliegen sollten
• Gesucht werden Muster, die in Bezug auf das
Domänenwissen interpretierbar sind
• Von Daten zum Wissen
• „We are drowing in
information, but starving for knowledge“
John Naisbett
• Randbedingungen
• Sehr große Datenbanken mit vielen Fehlern: Bioinformatik
• Viele Muster und Trends, bleiben unentdeckt:
Marktanalyse
Definitionsversuch
• Automatische Extraktion
• Verwendet Methoden der
Statistik und andere Verfahren
• Versteckte Information
• Erst das Verständnis von
Zusammenhängen ermöglicht Entscheidungen
• Prädiktive Information
• Prospektive statt retrospektive Analyse
,,
Data Mining is theautomated extraction of hidden predictive
information from (large) databases‘‘
Thearling, Introduction to Data Mining
Data Mining
• Data Mining – Historie
• Ursprünglich ein Ausdruck, den Statistiker für das
„Überinterpretieren von Daten“
zu falschen
Schlussfolgerungen verwendet haben.
• Heute verwendet mit der Bedeutung „Entdecken von sinnvollen Datenmengen“
Data Mining
• Data Mining – Historie
• Ursprünglich ein Ausdruck, den Statistiker für das
„Überinterpretieren von Daten“
zu falschen
Schlussfolgerungen verwendet haben.
• Heute verwendet mit der Bedeutung „Entdecken von sinnvollen Datenmengen“
• Der Parapsychologe David Rhine untersuchte
extrasensorische
Wahrnehmung (ESP)
• Studenten sollten 10 Karten raten. 1/1000 der Studenten riet alle richtig.
• Beim erneuten Testen waren diese nicht besser als der Durchschnitt
• Schlussfolgerung: „telling people to have ESP causes them to lose it!“
Knowledge Discovery
Fayyad (1996)
Beispiel-Anwendungen
• Marktanalyse
• Welcher Kunde kauft was?
• Welchen Kunden direkt ansprechen?
• Betrugsentdeckung
• Wird die Kreditkarte
missbräuchlich verwendet?
• Weist die Stromrechnung auf Manipulation hin?
• Bioinformatik
• Gibt es Hinweise auf die Qualität der Daten?
• Abgrenzung
• data warehousing
• ad hoc reporting
• Datenvisualisierung
• Software-Agenten
Individualisierte Start-Seiten
Individualisierte Start-Seiten
1. 1 Motivation
Bei welchen Telefonkunden besteht der Verdacht eines
Betrugs?
Zu welcher Klasse gehört dieser Stern?
Welche Assoziationen bestehen zwischen den in einem Supermarkt gekauften Waren?
solche Analysen lassen sich nicht mehr manuell durchführen
riesige Datenmengen werden automatisch gesammelt
1.1 Definition KDD
[Fayyad, Piatetsky-Shapiro & Smyth 96]
Knowledge Discovery in Databases (KDD) ist der Prozess der (semi-) automatischen Extraktion von Wissen aus Datenbanken, das
• gültig
• bisher unbekannt
• und potentiell nützlich ist.
Bemerkungen
• (semi)-automatisch: im Unterschied zu manueller Analyse.
Häufig ist trotzdem Interaktion mit dem Benutzer nötig.
• gültig: im statistischen Sinn.
• bisher unbekannt: bisher nicht explizit, kein „Allgemeinwissen“.
• potentiell nützlich: für eine gegebene Anwendung.
1.1 Abgrenzung KDD
•Statistik
• modellbasierte Inferenzen
• Schwerpunkt auf numerischen Daten [Berthold & Hand 1999]
•Maschinelles Lernen
• Suchverfahren
• Schwerpunkt auf symbolischen Daten
• [Mitchell 1997]
•Datenbanksysteme
• Skalierbarkeit für große Datenmengen
• neue Datentypen (z.B. Webdaten)
• Integration mit kommerziellen Datenbanksystemen
• [Chen, Han & Yu 1996]
1.1 KDD-Prozeß
Vorverar- beitung
Trans- formation
Datenbank
Fokussieren Data
Mining
Evaluation
Muster Wissen
Prozessmodell nach Han
Databases
Data Cleaning
Data Integration Selection
Data Mining Data Warehouse
Task-relevant Data
Pattern Evaluation Knowledge
1.1 Fokussieren
Verständnis der gegebenen Anwendung
•z.B. Tarifgestaltung in der Telekommmunikations-Branche Definition des Ziels des KDD
•z.B. Segmentation der Kunden Beschaffung der Daten
•z.B. aus operationaler DB zur Abrechnung Klärung der Verwaltung der Daten
•File System oder DBS?
Selektion der relevanten Daten
•z.B. 100 000 ausgewählte Kunden mit allen Anrufen in 2011
Bsp.-Anwendung
1.1 Vorverarbeitung
Integration von Daten aus unterschiedlichen Quellen
• einfache Übersetzungen von Attributnamen (z.B. KNr --> KundenSchl)
• Nutzen von Anwendungswissen um ähnliche Daten zusammenzufassen (z.B. regionale Zuordnung von Postleitzahlen)
Konsistenzprüfung
• Test anwendungsspezifischer Konsistenzbedingungen
• Bereinigung von Inkonsistenzen Vervollständigung
• Ersetzen von unbekannten Attributwerten durch Defaults
• Verteilung der Attributwerte soll i.A. erhalten bleiben!
Vorverarbeitung ist häufig einer der aufwendigsten KDD-Schritte
1.1 Vorverarbeitung
•Data Warehouse [Chaudhuri & Dayal 1997]
• dauerhafte
• integrierte Sammlung von Daten
• aus unterschiedlichen Quellen
• zum Zweck der Analyse bzw. Entscheidungsunterstützung
Data Warehouse
Operationelle DB
Integrieren Laden
Aktualisieren
Bedient OLAP
Data Mining Report Generator
1.1 Transformation
•Diskretisierung numerischer Attribute
• unabhängig von der Data-Mining-Aufgabe
z.B. Aufteilung des Wertebereichs in Intervalle gleicher Länge
• abhängig von der Data-Mining-Aufgabe
z.B. Aufteilung in Intervalle so, daß der Informationsgewinn in Bezug auf die Klassenzugehörigkeit maximiert wird
•Erzeugen abgeleiteter Attribute
• durch Aggregation über Mengen von Datensätzen
z.B. von einzelnen Anrufen zu „Gesprächsminuten tagsüber, Wochentag, Stadtgespräch“
• durch Verknüpfung mehrerer Attribute
z.B. Umsatzänderung = Umsatz 2010 - Umsatz 2009
1.1 Transformation
•Attribut-Selektion
• manuell
wenn Anwendungswissen über die Bedeutung der Attribute und über die gegebene Data-Mining-Aufgabe bekannt ist
• automatisch
Bottom-Up (ausgehend von der leeren Menge jeweils ein Attribut hinzufügen)
Top-Down (ausgehend von der Gesamtmenge der Attribute jeweils ein Attribut entfernen)
z.B. so, dass die Diskriminierung der Klassen optimiert wird
zu viele Attribute führen zu Ineffizienz und evtl. Ineffektivität des Data Mining.
manche Transformationen können durch OLAP-Systeme realisiert
werden.
1.1 Data Mining
•Definition [Fayyad, Piatetsky-Shapiro, Smyth 96]
• Data Mining ist die Anwendung effizienter Algorithmen, die die in einer Datenbank enthaltenen Muster liefern.
•Data-Mining-Aufgaben
•
•
• •
• •
•
• •
• •
•
•
a
a
a
b b
b b
a b a
b a
•
•
• •
• •
•
• •
•
•
•
A und B --> C
Clustering Klassifikation
Assoziationsregeln Generalisierung
andere Aufgaben: Regression, Entdecken von Ausreißern . . .
1.1 Data Mining Anwendungen
Clustering
Customer Segmentation, Klassifikation
Bewertung der Kreditwürdigkeit Beobachtungen
Assoziationsregeln, Reorganisation eines Supermarkts Generalisierung
Beschreibung von Clustern, Kundengruppenanalyse
1.1 Evaluation
Ablauf
Präsentation der gefundenen Muster häufig durch entsprechende Visualisierungen.
Bewertung der Muster durch den Benutzer.
Bei schlechter Bewertung erneutes Data Mining mit:
• anderen Parametern,
• anderem Verfahren,
• anderen Daten.
Bei guter Bewertung:
• Integration des gefundenen Wissens in die Wissensbasis,
• Nutzung des neuen Wissens für zukünftige KDD-Prozesse.
1.1 Evaluation
Bewertung der gefundenen Muster Vorhersagekraft der Muster
• Verwendete Daten sind Stichprobe aus der Grundgesamtheit aller Daten.
• Wie gut lassen sich die in diesen „Trainingsdaten“ gefundenen Muster auf zukünftige Daten verallgemeinern?
• Vorhersagekraft wächst mit Größe und Repräsentativität der Stichprobe.
Interessantheit der Muster
• Muster schon bekannt?
• Muster überraschend?
• Muster für viele Fälle anwendbar?
Knowledge Discovery
Fayyad (1996)
Knowledge Discovery
Knowledge Discovery
1.2 Datenschutz
Große Gefahren des Missbrauchs der Data-Mining-Techniken, insbesondere dann, wenn persönliche Daten ohne Kenntnis der betreffenden Person gesammelt und analysiert werden
Datenschutz (privacy) muss im Kontext des KDD neu diskutiert werden!
Beispiel Amazon.de:
http://www.amazon.de/gp/help/customer/display.html/ref=hp_rel_topic?i e=UTF8&nodeId=3312401
• sammelt persönliche Daten
„... when you search, buy, bid, post, participate in a contest or questionnaire, or communicate with customer service.“
• erlaubt dem Kunden, die persönlichen Daten zu überprüfen und zu korrigieren, behaupten Sie!
•Wie geht das?
Individualisierte Produktsichten
Individualisierte Produktsichten
Individualisierte Produktsichten
Individualisierte Produktsichten
Individualisierte Produktsichten
Struktur der (Lern)-daten
• Instanz
• spezifischer Typ eines Beispiels
• Etwas, was klassifiziert,
assoziiert oder geclustert wird
• Individuelles, unabhängiges Beispiel des Zielkonzeptes
• Charakterisiert durch einen vorbestimmten Satz von Attributen
• Eingabe
• Instanzen/Datensatz
• Repräsentation als einfache Relation/flat file
• Probleme
• Eher restriktive Form der Eingabe
• Keine Beziehungen zwischen Objekten
• Aber: sehr praxisnah, da häufig verwendet
Bsp. Familienbaum
Johannes M
Käthe und F
Ute F
Johann M
Edda F
Maika F
Jannes und M
Georg M
Henriette F
Hans und M
Ubbo M
Bernd M Johannes
M
Familienbaum als Tabelle
Name Gender Parent1 Parent2
Johannes Male ? ?
Käthe Female ? ?
Ute Female Johannes Käthe
Johann Male Johannes Käthe
Edda Female Johannes Käthe
Georg Male Maika Jannes
Henriette Female Maika Jannes
Hans Male Maika Jannes
Ubbo Male Edda Georg
Bernd Male Edda Georg
1. Person 2. Person Schwest.
Johannes Käthe No
Johannes Ute No
… … …
Ute Johann No
Ute Johann No
Ute Edda Yes
… … …
Georg Henriette Yes
… … …
Ubbo Bernd No
… … …
Bernd Ubbo No
1. Person 2. Person Schwest.
Edda Ute Yes
Johann Edda Yes
Georg Henriette Yes Hans Henriette Yes
Johann Ute Yes
Ute Edda Yes
Alle anderen No
Closed-world assumption
Schwester-von Beziehung
Vollständige Repräsentation
1. Person 2. Person Schwest.
Name Gend. Parent1 Parent2 Name Gend. Parent1 Parent2
Ute Fem Johann. Käthe Edda Fem Johann. Käthe Ja Johann Male Johann. Käthe Edda Fem Johann. Käthe Ja Georg Male Maika Jannes Henrie. Fem Maika Jannes Ja Hans Male Maika Jannes Henrie. Fem Maika Jannes Ja Edda Male Johann. Käthe Ute Fem Johann. Käthe Ja Johann Male Johann. Käthe Ute Fem Johann. Käthe Ja
Alle anderen Nein
If second person’s gender = female and
first person’s parent = second person’s parent
Geglättete Datei
• Glätten
• auch De-Normalisierung genannt.
• Einige Relationen werden zusammengefügt, um eine neue Relation zu bilden
• Möglich ist das mit jedem finiten Satz von finiten Relationen
• Problem
• Beziehungen ohne vorher spezifizierte Anzahl von Objekten
• Bsp.: Konzept der Kernfamilie
• De-Normalisierung kann nicht erwünschte Regularitäten erzeugen, die die Struktur der Datenbank reflektieren
• Bsp.: Lieferant sagt die Adresse des Lieferanten voraus
Struktur der Attribute
• Grundprinzip
• Jede Instanz wird durch eine feste Anzahl von Merkmalen (Attribute) beschrieben
• Problem 1
• Die Anzahl der Attribute kann in der Praxis variieren
• Lösung: „irrelevant value“-flag
• Problem 2
• Existenz eines Attributes kann von dem Wert eines anderen Attributes abhängen
• Typen von Attributen
• Nominal
• Ordinal
• Intervall
• Verhältnis
Nominalskalierte Attribute
• Wertebereich
• diskrete Symbole
• Werte selbst sind nur Namen oder Label
• Beispiel
• Attribut „Vorhersage“ der Wetterdaten
• Werte: Nasskalt, bewölkt, sonnig,...
• Eigenschaften
• Keine Relation ist impliziert zwischen nominal Werten (z.B. keine Ordnung)
• Nur Gleichheitstest können durchgeführt werden
Ordinalskalierte Attribute
• Geordnete Wertemenge
• Aber: keine Distanzen
zwischen den Werten definiert
• Beispiel:
• Attribut Temperatur in den Wetterdaten
• Werte: Heiss > Warm > Kalt
• Arithmetische Operationen wie Addition bzw. Subtraktion
machen keinen Sinn
• Beispielregel:
• Temperatur < heiss
Sport = Ja
• Vorsicht
• Aus den Namen der Attribute läßt sich nicht auf Nominal- oder Ordinalskalierung
schließen
Intervallskalierte Attribute
• Eigenschaften
• Intervallmengen sind nicht nur geordnet, sondern auch in bestimmte und gleiche Einheiten aufgeteilt
• Konsequenz
• Differenz zwischen Werten macht Sinn
• Summe oder Produkt macht keinen Sinn!?
• Null-Wert ist nicht definiert!
Rationalskalierte Attribute
• Verhältnismengen
• definieren auch den Null-Wert
• Bsp.: Attribut Distanz
• Distanz zwischen einem
Objekt und sich selbst ist null
• Eigenschaften
• Verhältnismengen werden wie rationale Zahlen behandelt
• Alle mathematischen Operationen sind erlaubt
• Probleme
• gibt es einen „inhärent“
definierten Null-Wert?
• Antwort abhängig von Wissen
• Fahrenheit kannte z.B. keine untere Grenze für Temperatur
Rationalskalierte Attribute
• Verhältnismengen
• definieren auch den Null-Wert
• Bsp.: Attribut Distanz
• Distanz zwischen einem
Objekt und sich selbst ist null
(Quelle: http://de.wikipedia.org/w/index.php?title=Datei:Thermometer_%28PSF%
Eingabevorbereitung
• Problem
• unterschiedliche Datenquellen (z.B. Verkaufsdaten,
Controlling, Kundenkartei...)
• Datenintegration
• Tabellen, Konventionen, Zeitintervalle,
Datenaggregation,
Primärschlüssel, Fehler...
• Anforderungen
• Daten müssen zusammen getragen, integriert und gesäubert werden
• „Data Warehouse“
konsistenter Zugriff
• WWW: unstrukturiert
• Externe Daten könnten erforderlich werden
• Kritisch: Typ und Level der Datenaggregation
Missing Values
• Problem
• Häufig erkennbar durch out-of-range-Einträge
• unbekannter, nicht
aufgenommener, irrelevanter Typ
• Gründe
• nicht funktionierendes Equipment, Vergleich
unterschiedlicher Datensätze, Messung unmöglich...
• Eigenschaften
• Missing value kann selbst auch signifikant sein
• Bsp.: fehlender Test in einer medizinischen Untersuchung
• Häufig: „missing“ als
zusätzliches Attribut oder NULL value
Ungenaue Werte
• Ursache
• Daten wurden nicht zum
„minen“ aufgenommen
• Folge
• Fehler und Auslassungen, die nicht den Zweck der
ursprünglich beabsichtigten Auswertung stören
• Beispiel
• Schlechte Qualitätssicherung bei der Erfassung des Alters der Kunden
• später aber Bedarf für Markanalyse
• Nominalattribute
• Typographische Fehler
• Wichtig, weil Stringvergleich
• Intervallattribute
• Typographische und
Messfehler in numerischen Attributen
• „Ausrutscher“ müssen identifiziert werden
• Fehler könnten bewusst eingebracht werden (z.B.
falsche PLZ)