Relevante Fachgebiete für Data Mining Prozesse beim Data Mining 1. Data cleaning: Datensäuberung von Rauschen & Inkonsistenz 2. Data integration: Datenintegration aus multiplen Quellen 3. Data selection: Auswahl der zur Analyse relevanten Daten 4. Data transformation: Umwandlung in geeignetes Format 5. Data Mining: Kernprozess 6. Pattern evaluation: Identifikation wirklich interessanter Muster 7. Knowledge presentation: Visualisierung der Ergebnisse 1 2 Architektur eines Data Mining Systems Beispiel: Datenquelle (relationale DB) Komponenten: Datenquelle (Datenbank, Data warehouse oder andere Quelle) Datenserver (Datenbank oder Data warehouse) Wissensbasis (knowledge base) Data Mining Maschine (data mining engine) Musterauswertungsmodul (pattern evaluation module) GUI 3 4
Beispiel Datenintegration in Data Warehouse Aufbau eines Data Warehouse Beschreibt aggregierte Daten (auf der Basis von Einzeltransaktionen mit Datum, Artikel, Filiale, Anbieter usw.) in mehreren Dimensionen (hier 3: Zeitraum, Artikelgruppe, Ort) zu bestimmten Themen (hier: Verkaufszahlen in $). Typische Repräsentation ist ein n-dimensionaler Datenwürfel (Data cube). zugrundeliegende Daten: 5 6 Varianten Jeder Kuboid repräsentiert eine andere Datenzusammenfassung 2 Beispiele für 2-D und 4-D Kuboide 2-D Kuboid-Beispiel (Type+Time), textuell: 2-D Kuboid-Beispiel (Type+Time+Location+Supplier), grafisch: 7 8
Definitionsschemata für Data Warehouses Alternative Definitionsschemata (a) Snowflake Schema (Normalisierung der Dimensionstabellen) Star-Schema, bestehend aus: (1) einer große zentrale Tabelle (Fakttabelle) mit Kerndaten (2) einer Menge von kleineren Begleittabellen für jede Dimension (Dimensionstabellen) b) Fact Constellation Schema (mehrere Fakt-Tabellen) Definition in DQML (Data Mining Query language): define cube sales_star [time, item, branch, location]: dollars_sold = sum (sales_in_dollars), units_sold = count(*) define dimension time as (time-key, day, day_of_week, month, quarter, year) define dimension item as (item_key, item_name, brand, type, supplier-type) define dimension branch as (branch_key, branch_name, branch-type) define dimension location as (location_key, street, city, province_or_state, country) 9 10 Konzepthierarchien Konzepthierarchien sind wichtig für die Navigation in Data Warehouses (Verfeinerung und Generalisierung von Sichten für alle Dimensionen). Häufig sind sie bereits implizit im Datenbank-Schema, z.b. bei location: city, province_or_state, country. OLAP-Operationen (OnLine Analytical Processing) OLAP-Operationen benutzen Konzepthierarchien und ermöglichen dem Benutzer die interaktive Analyse der Daten, indem Sichten auf die Daten verändert werden. Typische Operatoren sind: Roll-up (Drill-up): Datenaggregation durch Aufsteigen in Konzepthierarchie oder Reduktion einer Dimension Drill-down: Datenverfeinerung (invers zu Roll-up) durch Absteigen in Konzepthierarchie oder Hinzufügen einer Dimension Slice bzw. Dice: Selektion einer bzw. mehrerer Dimensionen eines Datenwürfel. Ergebnis ist ein Teilwürfel. Pivot (rotate): Rotation der Axen Konzepthierarchien repräsentieren Hintergrundwissen und werden explizit als Schema-Hierarchie im Datenbankschema definiert, wobei auch Heterarchien (partielle Ordnung; s. (b)) sinnvoll sind. Typische Konzepthierarchien (z.b. für Zeit) sind meist vordefiniert. 11 12
Beispiel für OLAP-Operationen Hervorheben von Ausnahmen Pro Zelle können Indikatoren für überraschende Werte (d.h. starke Abweichungen zu vergleichbaren Zellen) auf allen Aggregationsebenen berechnet werden: SelfExp: Indikator für Abweichung ( Überraschungsgrad ) zu anderen Zellen auf derselben Aggregationsebene InExp: Indikator für Abweichung auf niederen (d.h. bei aktueller Sicht unsichtbaren) Aggregationsebenen PathExp: Indikator für Abweichungen auf dem Pfad zu niederen Abstraktionenebenen 13 14 Beispiel für Abweichungs-Entdeckung Formen der Datenvorverarbeitung SelfExp wird als Hintergrundfarbe kodiert, InExp als Kasten, Stärke der Abweichung als Intensität. Starke InExp-Abweichungen finden sich in Jul, Aug, Sep. Eine Path-Exp. die für eine der Zellen aktiviert wird, zeigt mehr Auffälligkeiten in der Dimension Item (im Vergleich zu Region) (Sony b/w printer in Dec = -11%, Toshiba desktop computer in Aug = 5%) Sony b/w printer im Nov (-15%) ist im Vergleich zu Nov-Gesamtzahlen (-4%) weniger überraschend als im Dec (-11% zu +3%). Die Kästchen (InExp) bei IBM-desktop computer im Jul und Sep triggeren eine weitere Verfeinerung (nach Regionen): (South in Sep = -34% 15 16
Datensäuberung (Data cleaning) Umgangsmöglichkeiten mit fehlenden Werten: Ignorieren des Tupel Manuelles Auffüllen Einsetzen einer globalen Konstante (z.b. unbekannt) Mittelwert aller Attribut-Tupel einsetzen Mittelwert aller Attribut-Tupel der gleichen Klasse einsetzen Den wahrscheinlichsten Wert einsetzen (z.b. mit Entscheidungsbäumen, Bayes schen Inferenzen oder Regression ermittelt) Umgangsmöglichkeiten mit verrauschten Daten: Binning: Glätten der Werte durch Berücksichtung von Nachbarwerten. Bsp.: Originalfolge sei 4, 8, 15, 21, 21, 24, 25, 28, 34 Aufteilung in bins : (4, 8, 15) (21, 21, 24) (25, 28, 34) Glätten durch Mittelwerte: (9, 9, 9) (22, 22, 22) (29, 29, 29) Glätten durch Bin-Grenzen: (4, 4, 15) (21, 21, 24) (25, 25, 34) Clustering: Ausreißer können durch Clustering entdeckt und dann ggf. entfernt werden Manuelle Überprüfung von Ausreißer-Kandidaten Regression: (Mulitple) lineare Regression ermittelt lineare Zusammenhänge zwischen zwischen zweien bzw. mehreren Variablen. Falls solche Zusammenhänge existieren, können Ausreißer leicht festgestellt werden. Datenintegration Typische Integrationsprobleme: Schema Integration (z.b. Identifikation unterschiedlicher Attributnamen im Datenbankschema wie cust_number versus customer_id ). Erkennen von Redundanz (z.b. wenn ein Attributwert aus einem anderen hergeleitet werden kann; kann z.b. mit Korrelationsanalyse festgestellt werden) Erkennung von Duplikaten (z.b. identische Tupel) Erkennen von Datenwertkonflikten (können z.b. durch unterschiedliche Maßeinheiten verursacht werden, z.b. Entfernung in km oder Meilen, oder durch verschiedene Kontexte, z.b. Preise mit/ohne Mwst). Erkennen von inkonsistenten Daten: Vergleich der Daten mit externen Referenzen (z.b. Papierbelege) Berücksichtigung von Constraints Inkonsistenzen durch fehlerhafte Datenintegration 17 18 Datentransformation Typische Transformationsoperationen für Data Mining: Glättung verrauschter Daten (s.o.) Aggregation bzw. Verallgemeinerung (Zusammenfassung von Daten ähnlich wie bei Konstruktion der Data Cubes und Konzepthierarchien) Normalisierung (Skalierung der Attributdaten, so dass sie in ein bestimmtes Intervall passen, z.b. zwischen 0 und 1) Attributkonstruktion (Konstruktion neuer Attribute aus alten, z.b. um Redundanzen zu verringern oder aussagekräftigere Attribute zu erzeugen). Transformationen mit dem Ziel der Datenreduktion (z.b. Entfernen irrelevanter oder redundanter Dimensionen, Datenkompression, Wechsel der Repräsentation). Data Mining Funktionen (1) Konzeptbeschreibung: Datencharakterisierung: Beschreibung einer Zielklasse, z.b. Eigenschaften aller Kunden, die mehr als 1000 pro Jahr ausgeben. Ergebnis in verschiedenen grafischen Formaten (Kuchen-, Balkendiagramme, Kurven, Tabellen), als Data Cube oder als Regeln Datendifferenzierung: Vergleich einer Zielklasse mit allgemeinen Merkmalen einer Vergleichklasse, z.b. Vergleich der Produkte, die im letzten Jahr um mindestens 10% besser verkauft wurden, mit denen, die sich um mindestens 10% verschlechtert haben. Assoziationsregel-Analyse: Entdecken von Merkmalswerten, die häufig in einer Datenmenge (z.b. in Warenkörben oder bei Transaktionsdaten) zusammen auftreten, z.b. wenn Alter (X, 20-29) und Einkommen (X, 20-29 K ) kauft (X, CD-Player) mit Support = 2% und Konfidenz = 60% Klassifikation und Vorhersage Herausfinden von Modellen (Funktionen), die ein Konzept so beschreiben und differenzieren, dass eine Vorhersage des Konzeptnamens aufgrund von Eigenschaften möglich ist, z.b. mit Regeln, Entscheidungsbäumen, mathematischen Formeln oder Neuronalen Netzen. Relevanzanalyse: Herausfinden, welche Eigenschaften für die Klassifikation und Vorhersage überhaupt relevant sind. 19 20
Data Mining Funktionen (2) Cluster-Analyse Im Gegensatz zur Klassifikation, bei der klassifizierte Datenobjekte (Fälle mit Lösung) analysiert werden, werden bei der Cluster-Analyse nichtklassifizierte Datenobjekte (Fälle ohne Lösung) in ähnliche Gruppen eingeteilt. Bsp.: Herausfinden homogener Subgruppen der Kunden. Interessantheit von Mustern Problem: Data Mining Systeme produzieren oft Tausende oder Millionen von Mustern bzw. Regeln. Davon ist nur ein Bruchteil wenn überhaupt für Menschen interessant (Problem ähnlich wie bei Information Retrieval bzw. Suchmaschinen): Lösungsaspekte: 1. Was macht Muster interessant? 2. Kann ein Data Mining System alle interessanten Muster generieren (Recall)? 3. Kann ein Data Mining System nur interessante Muster generieren (Precision)? Kennzeichen interessanter Muster: a) für Menschen einfach verständlich b) auf neue Daten mit gewisser Wahrscheinlichkeit übertragbar c) potentiell nützlich d) neu Objektive Interessantheitskriterien: z.b. Support und Confidence bei Assoziationsregeln Ausreißer-Analyse: Ausreißer werden häufig als Rauschen oder Ausnahmen ignoriert, aber in manchen Anwendungen ist ihre Analyse zentral, z.b. bei der Betrugsanalyse. Zeitliche Entwicklungs-Analyse Entdeckung von Trends in zeitorientierten Daten Subjektive Interessantheitskriterien: relevant für Zielfunktion, kein Allgemeinwissen, unerwartet im Vergleich zu bisherigem Wissensstand, hilfreich bei Hypothesenbestätigung 21 22 Präsentations- & Visualisierungsformen Beschreibungsaspekte des Data Mining 23 24
Beschreibungssprache (DMQL): Toplevel Aktuelle Themengebiete beim Data Mining Methoden: Mining verschiedener Arten von Wissen (s. Funktionen) Interaktives Mining auf verschiedenen Abstraktionsebenen Einbezug von Hintergrundwissen Data Mining Anfragesprachen (analog zu SQL, z.b. DMQL) Präsentation und Visualisierung von Data Mining Ergebnissen Umgang mit Rauschen und unvollständigen Daten Formalisierung der Interessantheit Performanz: Effizienz und Skalierbarkeit der Data Mining Algorithmen Parallele, verteilte und inkrementelle Algorithmen Vielfalt von Datentypen: Relationale und komplexe Datentypen Heterogene Datenbanken Web Mining 25 26