5 Data Warehouses und Data Mining Mittels OLAP Techniken können große Datenmengen unterschiedlich stark verdichtet und gezielt aufbereitet werden. Mittels Data Mining können große Datenmengen nach bisher unbekannten Zusammenhängen durchsucht werden. 5.1 Data Warehouses, Decision Support und OLAP zwei Arten von Datenbankanwendungen: online transaction processing (OLTP) online analytical processing (OLAP) Prof. Dr. Dietmar Seipel 407
Online Transaction Processing (OLTP) Beipiele: Buchung eines Fluges in einem Flugreservierungssystem Verarbeitung einer Bestellung in einem Handelsunternehmen operatives Tagesgeschäft Update lastig Transaktionen verarbeiten nur begrenzte Datenmengen jüngste, aktuell gültige Daten Prof. Dr. Dietmar Seipel 408
5.1.1 Online Analytical Processing (OLAP) Beipiele: Wie hat sich die Auslastung der Transatlantikflüge über die letzten zwei Jahre entwickelt? Wie haben sich besonders offensive Marketingstrategien für bestimmte Produktlinien auf die Verkaufszahlen ausgewirkt? entscheidungsunterstützende Anwendungen Anfrage lastig Rückschlässe auf die Entwicklung des Unternehmens sehr große Datenmengen historische Daten Prof. Dr. Dietmar Seipel 409
OLAP Auswertungen Grundlage für die strategische Unternehmensplanung Bestandteil umfassender Decision Support Systeme oder Management Informationssysteme Es besteht momentan weitgehender Konsens, daß man OLTP und OLAP Anwendungen nicht auf derselben Datenbank ausführen sollte: OLTP Datenbanken sind auf Änderungstransaktionen mit Zugriff auf sehr begrenzte Datenmengen optimiert. Die OLTP Daten sind auf verschiedene Datenbanken verteilt. OLAP Anfragen sind sehr komplex und sie betreffen meist sehr große Datenmengen. Die parallele Auswertung von OLAP Anfragen könnte das OLTP Processing empfindlich stören. Prof. Dr. Dietmar Seipel 410
Aufbau eines Data Warehouse dediziertes Datenbanksystem Integration aller für die Decision Support Anwendungen notwendigen Daten in konsolidierter Form für das initiale Laden müssen die Daten konsolidiert, gereinigt und durch Aggregation teilweise vor verdichtet werden die Auffrischung des Data Warehouse erfolgt meist im Batchmodus Prof. Dr. Dietmar Seipel 411
DB Entwurf für ein Data Warehouse Sternschema (star schema) eine Faktentabelle mehrer Dimensionstabellen verbunden über Fremdschlüsselbeziehungen Die Faktentabelle ist oft riesig. Sie wird normalisiert. Die Dimensionstabellen sind viel kleiner. Sie werden in der Regel nicht normalisiert, da sonst die Anfrageformulierung und bearbeitung erschwert würde. Die Verleztung der Normalformen ist nicht so kritisch, da die Daten nur selten verändert werden. Die Normalisierung der Dimensionstabellen würde ein Sternflockenschema (star flake schema) ergeben. Prof. Dr. Dietmar Seipel 412
Filialen Verkäufer Beispiel eines Sternschemas Zeit Verkäufe Anzahl Faktentabelle Kunden Produkte Verkäufe (Datum, Filiale, Verkäufer, Kunde, Produkt, Anzahl) Dimensionstabellen Zeit (Datum, Tag, Monat, Jahr, Wochentag, KW, Quartal, Saison, Filialen (Id, Land, Bezirk, ) Verkäufer (Id, Name, Fachgebiet, Manager, Alter, ) Kunden (Id, Name, Alter, ) Produkte (Id, Typ, Gruppe, Hauptgruppe, Hersteller, ) ) Fremdschlüsselbedingungen von der Faktentabelle auf die Dimensionstabellen Prof. Dr. Dietmar Seipel 413
VERKÄUFE DATUM FILIALE VERKÄUFER KUNDE PRODUKT ANZAHL 2000 07 25 Würzburg 825 4711 1347 1 2000 07 26 Würzburg 825 4711 1347 2 ZEIT DATUM TAG MONAT JAHR WOCHENTAG KW QUARTAL SAISON 2000 07 25 25 Juli 2000 Dienstag 30 3 Hochsommer 2000 07 26 26 Juli 2000 Mittwoch 30 3 Hochsommer Prof. Dr. Dietmar Seipel 414
FILIALEN ID LAND BEZIRK Würzburg D Bayern KUNDEN ID NAME ALTER 4711 Seipel 43 VERKÄUFER ID NAME FACHGEBIET MANAGER ALTER 825 Handyman Elektronik 119 23 PRODUKTE ID TYP GRUPPE HAUPTGRUPPE HERSTELLER 1347 Handy Mobiltelekom Telekom Siemens Prof. Dr. Dietmar Seipel 415
Größenordnungen: Faktentabelle: viele Millionen Tupel Dimensionstabellen: 100.000 Produkte 1.000 Einträge in Zeit Tabelle (3 Jahre) 100 GB bis zu 10 TB Daten Prof. Dr. Dietmar Seipel 416
5.1.2 Anfragen im Sternschema: Star Joins Wieviele Handies wurden in den Bayerischen Filialen zu Weihnachten 2001 gekauft? Join über die Fremdchlüsselbedingungen Restriktionen auf den Dimensionstabellen Gruppierung und Aggregation der Ergebnistupel zur Verdichtung erleichtern die Interpretation der Ergebnisse Prof. Dr. Dietmar Seipel 417
Anfrage 1: Wieviele Handies haben Kunden in den bayerischen Filialen zu Weihnachten 2001 pro Hersteller gekauft? SELECT FROM WHERE AND AND z.jahr = 2001 AND AND GROUP BY p.hersteller, SUM (v.anzahl) Verkäufe v, Produkte p, Zeit z, Filialen f v.produkt = p.produkt AND v.datum = z.datum v.filiale = f.id AND p.typ = Handy z.saison = Weihnachten f.bezirk = Bayern p.hersteller Prof. Dr. Dietmar Seipel 418
Roll Up und Drill Down unterschiedliche Verdichtungsgrade: Drill Down: Erweiterung der Group By Klausel führt zu weniger starker Verdichtung Roll Up: Verkleinerung der Group By Klausel führt zu stärkerer Verdichtung Prof. Dr. Dietmar Seipel 419
Anfrage 2: Wieviele Handies haben Kunden pro Hersteller und Jahr pro Jahr insgesamt gekauft? SELECT FROM WHERE AND GROUP BY p.hersteller, z.jahr, SUM (v.anzahl) Verkäufe v, Produkte p, Zeit z v.produkt = p.produkt AND v.datum = z.datum p.typ = Handy p.hersteller, z.jahr Prof. Dr. Dietmar Seipel 420
SELECT FROM WHERE AND GROUP BY z.jahr, SUM (v.anzahl) Verkäufe v, Produkte p, Zeit z v.produkt = p.produkt AND v.datum = z.datum p.typ = Handy z.jahr SELECT FROM WHERE AND SUM (v.anzahl) Verkäufe v, Produkte p v.produkt = p.produkt p.typ = Handy Prof. Dr. Dietmar Seipel 421
Hersteller Jahr Anzahl Siemens 1999 2.000 Siemens 2000 3.000 Siemens 2001 3.500 Motorola 1999 1.000 Nokia 2001 2.000 Jahr Anzahl 1999 4.000 2000 5.500 2001 7.000 Hersteller Anzahl Siemens 8.500 Motorola 3.500 Nokia 4.500 Prof. Dr. Dietmar Seipel 422
Spreadsheet Darstellung Hersteller Jahr 1999 2000 2001 Siemens 2.000 3.000 3.500 8.500 Motorola 1.000 1.000 1.500 3.500 Nokia 1.000 1.500 2.000 4.500 4.000 5.500 7.000 16.500 Prof. Dr. Dietmar Seipel 423
Die Nutzer von Decision Support Systemen wollen sehr flexibel Daten stark verdichtet oder detailierter darstellen. Operationen: slice: Schneiden in Scheiben durch einzelne Selektionen auf den Dimensionstabellen dice: Schneiden in Würfel durch kombinierte Selektionen auf den Dimensionstabellen Prof. Dr. Dietmar Seipel 424
Der CUBE Operator Man kann viele Aggregate aus anderen noch nicht so stark verdichteten Aggregaten berechnen: GROUP BY A, B, C und GROUP BY C, D, E GROUP BY A, B, C, D, E Der CUBE Operator des DBMS nutzt dies zur Optimierung. Bei einer Aggregation über Attribute werden alle Unter Aggregate gemeinsam berechnet. Dann können Drill Down Operationen leicht ausgeführt werden. Prof. Dr. Dietmar Seipel 425
SELECT FROM WHERE AND AND AND GROUP BY p.hersteller, z.jahr, f.land, SUM (v.anzahl) Verkäufe v, Produkte p, Zeit z, Filialen f v.produkt = p.produkt v.datum = z.datum v.filiale = f.id p.typ = Handy CUBE (p.hersteller, z.jahr, f.land) Prof. Dr. Dietmar Seipel 426
Jahr Filiale Materialisierungs Hierarchie Produkt Filiale Produkt Jahr Produkt Filiale Jahr Filiale Produkt Jahr Prof. Dr. Dietmar Seipel 427
Zeit Hierarchie Jahr Quartal Woche (KW) Monat Tag Kalenderwochen (KW) können zu zwei unterschiedlichen Monaten gehören Prof. Dr. Dietmar Seipel 428
Data Warehouse Architekturen ROLAP: relationales OLAP auf der Basis relationaler Datenbanken MOLAP: multi dimensionales OLAP auf der Basis mehr dimensionaler Datenstrukturen mehr dimensionale Arrays dünn besetzte (sparse) Dimensionen Prof. Dr. Dietmar Seipel 429
5.2 Data Mining Beim Data Mining werden große Datenmengen nach bisher unbekannten Zusammenhängen durchsucht. Ziel: hoch skalierbare Algorithmen, die auch auf sehr großen Datenmengen anwendbar sind. drei Ansätze: Klassifikation von Objekten Finden von Assoziationsregeln Clusterung von ähnlichen Objekten Prof. Dr. Dietmar Seipel 430
Knowledge Discovery in Datenbanken (KDD) Knowledge Evaluation und Präsentation Data Mining Selektion und Transformation Muster Data Warehouses Cleaning und Integration Datenbanken flache Files Prof. Dr. Dietmar Seipel 431
5.2.1 Klassifikation Risiko Abschätzung von Versicherungspolicen; beispielsweise für Autohaftpflicht oder Risikolebensversicherungen Datenobjekte werden gemäß ihrer Attributwerte klassifiziert, um daraus eine möglichst genaue Vorhersage treffen zu können Klassifikationsregel: Vorhersage Attribute vorherzusagendes (abhängiges) Attribut (Ziel) Prädikate Prof. Dr. Dietmar Seipel 432
Beispiel (Kreditwürdigkeit) Id Married PrevDef Income Def C1 yes no 50 no C2 yes no 100 no C3 no yes 135 yes C4 yes no 125 no C5 yes no 50 no C6 no no 30 no C7 yes yes 10 no C8 yes no 10 yes C9 yes no 75 no C10 yes yes 45 no Id Married PrevDef Income Def C11 yes no 60 yes C12 no yes 125 yes C13 yes yes 20 no C14 no no 15 no C15 no no 60 no C16 yes no 15 yes C17 yes no 35 no C18 no yes 160 yes C19 yes no 40 no C20 yes no 30 no to default: einen Kredit nicht zurück zahlen Prof. Dr. Dietmar Seipel 433
Klassifikationsregeln 1. Falls jemand noch keinen Kredit platzen ließ, verheiratet ist und mindestens 30 T Euro verdient, dann wird er keinen Kredit platzen lassen: 2. Falls jemand schon einmal einen Kredit platzen ließ, dann hängt seine Kreditwürdigkeit stark davon ab ob er verheiratet ist: Prof. Dr. Dietmar Seipel 434
Beispiel (Auto) 1. Männer über 35, die ein Coupé fahren, gehören in eine hohe Riskogruppe (Draufgänger in der Midlife Crisis): männlich Coupé 2. Männer über 35, die einen Kleinbus (Mini Van) fahren, gehören in eine niedrige Riskogruppe (verantwortungsbewußter Familienvater) männlich Mini Van Prof. Dr. Dietmar Seipel 435
Entscheidungs Baum Ein Klassifikations/Entscheidungs Baum faßt viele Klassifikationsregeln zu einem Klassifikationsschema zusammen. Jedes Blatt des Baums entspricht einer Klassifikationsregel. Welche Attribute für die Klassifikation herangezogen werden kann durch den Benutzer gesteuert werden, oder es kann auch vollautomatisch durch Ausprobieren geschehen. Prof. Dr. Dietmar Seipel 436
Entscheidungs Baum (Kreditwürdigkeit) PrevDef yes no Married Married yes no yes no Def = no (3, 100%) Def = yes (3, 100%) Income Def = no (3, 100%) Def = yes (2, 100%) Def = no (8, 89%) Def = yes (1, 11%) Prof. Dr. Dietmar Seipel 437
Entscheidungs Baum (Auto) Geschlecht Alter m w geringes Risiko hohes Risiko Autotyp Coupé hohes Risiko Mini Van geringes Risiko Prof. Dr. Dietmar Seipel 438
Bestimmung von Entscheidungs Bäumen Aufspalten der Tabelle in und Id Married PrevDef Income Def C1 yes no 50 no C2 yes no 100 no C4 yes no 125 no C5 yes no 50 no C6 no no 30 no C8 yes no 10 yes C9 yes no 75 no C11 yes no 60 yes C14 no no 15 no C15 no no 60 no C16 yes no 15 yes C17 yes no 35 no C19 yes no 40 no C20 yes no 30 no Id Married PrevDef Income Def C3 no yes 135 yes C7 yes yes 10 no C10 yes yes 45 no C12 no yes 125 yes C13 yes yes 20 no C18 no yes 160 yes Prof. Dr. Dietmar Seipel 439
Entropie Begriff aus der Informationstheorie Für eine Tabelle mit der Attributmenge der Wertebereich von. und ein Attribut sei Für einen Wert sei die Anzahl der Tupel aus mit diesem Wert für und für das Attribut : die relative Häufigkeit des Wertes Wir setzen Prof. Dr. Dietmar Seipel 440
Falls alle Werte in haben, so gilt dieselbe Wahrscheinlichkeit Prof. Dr. Dietmar Seipel 441
Beispiel (Kreditwürdigkeit) : : : ferner gilt in den Teil Tabellen: Prof. Dr. Dietmar Seipel 442
Sie 1. Falls man bezüglich das Ziel Attribut. aufspaltet, dann ist die gewichtet gemittelte Entropie der Teiltabellen Es gilt immer 2. Der Informationsgewinn beim Aufspalten ist im Beispiel: Prof. Dr. Dietmar Seipel 443 gegeben durch
Der ID3 Algorithmus von Quinlan (1986) 1. Falls und, dann gibt es genau einen Wert nicht aufgespalten. wird wird mit markiert. für, 2. Falls dann wird ebenfalls nicht aufgespalten. wird mit dem häufigsten Wert und keine Attribute mehr hat, für markiert. 3. Sonst: Bestimme das Attribut mit dem größten Informationsgewinn und spalte in die Teil Tabellen, für, auf. Wende das Verfahren rekursiv auf diese Teil Tabellen an. mit Diskretisierung von kontinuierlichen Wertebereichen: C4.5 Algorithmus Prof. Dr. Dietmar Seipel 444
Aufspalten bezüglich und : Id Married PrevDef Income Def C1 yes no 50 no C2 yes no 100 no C4 yes no 125 no C5 yes no 50 no C8 yes no 10 yes C9 yes no 75 no C11 yes no 60 yes C16 yes no 15 yes C17 yes no 35 no C19 yes no 40 no C20 yes no 30 no Id Married PrevDef Income Def C7 yes yes 10 no C10 yes yes 45 no C13 yes yes 20 no Id Married PrevDef Income Def C6 no no 30 no C14 no no 15 no C15 no no 60 no Id Married PrevDef Income Def C3 no yes 135 yes C12 no yes 120 yes C18 no yes 160 yes Prof. Dr. Dietmar Seipel 445
Aufspalten der Daten: Training Set: Erzeugung eines Entscheidungsbaumes Validation Set: Beschneiden des Entscheidungsbaumes an den Blättern Test Set: Test des Entscheidungsbaumes Verfeinerungen des Ansatzes: gain ratio (Quinlan 1986) gini index (Breiman et al. 1984) Prof. Dr. Dietmar Seipel 446
5.2.2 Assoziationsregeln Beispiel (Walmart) Bei der Auswertung von Supermarkteinkäufen im Walmart wurde in den USA festgestellt, daß oft im selben Einkaufswagen Bier, Kartoffelchips und Baby Windeln zu finden waren. Prof. Dr. Dietmar Seipel 447
ist die Anzahl der Transaktionen, welche 2. Der Support von ist der Anteil der Transaktionen, welche Frequent Itemsets Definition (Itemsets) Sei eine Menge von Items und Transaktionen mit. eine Menge von Sei ein Itemset: 1. Die Häufigkeit von enthalten: enthalten: 3. heißt für frequent, falls d.h. Prof. Dr. Dietmar Seipel 448
Der Á Priori Algorithmus Induktive Bestimmung der Menge aller Frequent Itemsets der Größe. 1. Generiere 2. Bestimme erweitere dazu alle und teste ob auch wieder ein Frequent Itemset ist: um alle aus und :, mit, 3. Verbesserung, falls (vgl. dynamische Programmierung): Prof. Dr. Dietmar Seipel 449
Der Á Priori Algorithmus bestimmt alle Frequent Itemsets. Er basiert darauf, daß alle Teilmengen eines Frequent Itemsets frequent sind, denn ebenfalls Da die Bestimmung von zeitaufwendig ist, kann man bei der Berechnung von zuerst testen, ob alle Itemsets frequent sind, bevor man berechnet. Für ein Itemset für ein Kandidaten Itemset, mit d.h. dem Schnitt Teilmenge von der Größe, welche aus der bestehen, auf Größe kann man z.b. alle Teilmengen und und einer testen. Prof. Dr. Dietmar Seipel 450
, Beispiel (Drucker) Produkte: Transaktionen: : die Frequent Itemsets müssen in mindestens Transaktionen enthalten sein Wir bestimmen Prof. Dr. Dietmar Seipel 451 nur für relevante Itemsets.
1. betrachtete Itemsets: Drucker Papier PC Scanner Toner + 4 + 3 + 4 + 2 + 3 Wir erhalten Also gibt es kein Frequent Itemset, denn aus egal von welcher Größe mit folgt Prof. Dr. Dietmar Seipel 452
2. relevante Itemsets: Drucker Papier PC Scanner Toner + + 3 + + 3 + + 3 + + 2 + + 3 + + 2 Die Itemsets, welche sie sind alle nicht frequent. enthalten, werden nicht betrachtet; Prof. Dr. Dietmar Seipel 453
3. 3 der 4 möglichen Erweiterungen der Frequent 2 Itemsets sind nicht relevant: Das Itemset welches keinen Drucker enthält, ist eine Obermenge von und von und somit nicht frequent. Die Itemsets und sind ebenfalls Obermengen davon und somit nicht frequent. Das einzige relevante Itemset der Größe ist frequent: Drucker Papier PC Scanner Toner + + + 3 4. keine Frequent Itemsets der Größe : Prof. Dr. Dietmar Seipel 454
Beispiel (Kreditwürdigkeit) Frequent Itemsets: Es gibt hier Itemsets der Größe, denn es gibt Attribut Teilmengen der Größe, und für jedes Attribut gibt es hier zwei mögliche Werte. Ein Eintrag von denen besagt, daß es maximal, d.h. nicht verlängerbar, sind. Frequent Itemsets der Größegibt, Prof. Dr. Dietmar Seipel 455
: alle maximalen Frequent Itemsets haben die Größe 4 Married PrevDef Income Def no yes yes no yes no no yes no no no 2 yes 2 no 2 yes 3 no 8 Prof. Dr. Dietmar Seipel 456
: es gibt 4 maximale Frequent Itemsets der Größe 2 und ein maximales Frequent Itemset der Größe 4 Married PrevDef Income Def yes no yes yes no 4 4 yes 4 5 no 8 Prof. Dr. Dietmar Seipel 457
: es gibt 3 maximale Frequent Itemsets der Größe 1 und ein maximales Frequent Itemset der Größe 4 Married PrevDef Income Def no 6 yes 6 yes 6 yes no no 8 : es gibt ein maximales Frequent Itemset der Größe 4 Married PrevDef Income Def yes no no 8 Prof. Dr. Dietmar Seipel 458
Assoziationsregeln Definition (Assoziationsregel, Support, Confidence) Eine Assoziationsregel hat die Form für Itemsets. 1. Der Support von sowohl als auch gibt den Anteil der Transaktionen an, die enthalten: Die Confidence von 2. gibt den Anteil der Transaktionen, die enthalten, bezogen auf die Transaktionen, die enthalten, an: und 3. Falls, so schreiben wir Prof. Dr. Dietmar Seipel 459
Beispiel (Support und Confidence von Assoziationsregeln) 1. Für die Assoziationsregel erhalten wir und 2. Für die Assoziationsregel erhalten wir und Prof. Dr. Dietmar Seipel 460
Assoziationsregeln zum Entscheidungs Baum (Kreditwürdigkeit) PrevDef yes no Married Married yes no yes no Def = no Def = yes Income Def = no Def = yes Def = no Prof. Dr. Dietmar Seipel 461
Die Zweige des Entscheidungs Baums entsprechen folgenden Assoziationsregeln: 15%,100% 15%,100% 10%,100% 40%,89% 15%,100% Prof. Dr. Dietmar Seipel 462
3. Falls um, so erhöht man die Confidence, wenn man um Satz (Support und Confidence von Assoziationsregeln) Sie 1. Für 2. Für gilt eine Assoziationsregel. gilt verkleinert. Für gilt 4. Falls, so erhöht man die Confidence, wenn man vergrößert und um verkleinert. Für gilt Prof. Dr. Dietmar Seipel 463 und und und
, so verringert man die Confidence, wenn man, so verringert man die Confidence, wenn man 5. Falls verkleinert. Für gilt und um 6. Falls verkleinert und um vergrößert. Für gilt und um 7. Für ein Itemset und gilt, so gilt auch Prof. Dr. Dietmar Seipel 464 Falls
Bestimmung der Assoziationsregeln Definition (Redundante Assoziationsregeln) Eine Assoziationsregel heißt redundant, 1. falls oder, da dann trivialerweise immer gilt, 2. falls es eine andere Assoziationsregel mit und und da dann bereits aus In der Regel gibt es sehr viele Assoziationsregeln. gibt,, folgt. Man kann redundante Assoziationsregeln Berechnung weglassen. Außer enthalten sie nur redundante Information. bei der Prof. Dr. Dietmar Seipel 465
Beispiel (Kreditwürdigkeit) Wir bestimmen alle nicht redundanten Assoziationsregeln mit Def oder Def. Married PrevDef Income Def yes no yes 10% 100% no no no 15% 100% no yes yes 15% 100% yes yes no 15% 100% yes no no 40% 89% yes no 45% 90% no no 50% 91% Neben den Assoziationsregeln wurden zwei weitere Assoziationsregeln berechnet. zum Entscheidungs Baum Prof. Dr. Dietmar Seipel 466
Falls man an Assoziationsregeln mit beliebigen rechten Seiten interessiert ist, so könnte man sich zur Reduktion des Aufkommens auf nicht redundante, maximale Assoziationsregeln beschränken. Definition (Subsumtion von Assoziationsregeln) 1. Eine Assoziationsregel kurz falls subsumiert eine Assoziationsregel und und 2. Eine Assoziationsregel heißt maximal, falls sie von keiner anderen Assoziationsregel subsumiert wird. Falls und so folgt schon aus da dann immer automatisch auch gilt. Prof. Dr. Dietmar Seipel 467
Assoziationsregeln mit 40% und 80%: Married PrevDef Income Def yes no no 40% 80% yes no no 40% hper yes no 45% 82% yes no 45% 82% yes no 45% 82% yes no 45% 82% yes no 45% 90% yes no 45% 90% no no 50% 91% no no 50% 91% no no 50% 91% Prof. Dr. Dietmar Seipel 468
weitere Assoziationsregeln mit 15% 40% und 80%: Married PrevDef Income Def no no no 15% 100% no yes yes 15% 100% no no no 15% 100% no yes yes 15% 100% yes yes no 15% 100% yes no yes 15% 100% yes no yes 15% 100% yes yes no 15% 100% no yes yes 15% 100% yes 20% 80% no 25% 83% Prof. Dr. Dietmar Seipel 469
weitere Assoziationsregeln mit 10% 20% und 80%: Married PrevDef Income Def yes no yes 10% 100% yes yes no 10% 100% yes yes no 10% 100% yes no yes 10% 100% Assoziationsregeln zum Entscheidungs Baum: Die berechnete Assoziationsregel 50%,91% subsumiert die Regel Die Regeln,, Entscheidungs Baums wurden auch berechnet. zum vierten Zweig des Entscheidungs Baums. und zu den anderen Zweigen des Prof. Dr. Dietmar Seipel 470
5.2.3 Clustering Auffinden von Gruppen logisch verwandeter Objekte, so daß die Objekte einer Gruppe sehr ähnlich sind; Ähnlichkeitsmaß: Euklidscher Abstand o.ä., Normierung, so daß die besonders relevanten Dimensionen (Charakteristika) stärker gewichtet werden als andere; Outlier Detection: Objekte, die aus dem Rahmen fallen. Bei Klassifikationsregeln und Entscheidungsbäumen sind die Kategorien nach denen die Objekte klassifiziert werden, vorher bekannt. Beim Clustering werden diese erst durch den Algorithmus bestimmt. Prof. Dr. Dietmar Seipel 471
Cluster und Outlier: outlier Prof. Dr. Dietmar Seipel 472
Der K Means Algorithmus Gewünschte Anzahl von Clustern 1. wähle zufällig Objekte als Zentren der initialencluster aus 2. ordne die restlichen Objekte jeweils dem nächsten Cluster zu (Änhlichkeitsvergleich mit dem Zentrum des Clusters) 3. berechne die Zentren der Cluster neu als die Mittelwerte der Objekte des Clusters 4. wiederhole die Schritte 2 und 3 solange bis sich die Cluster nicht mehr verändern Verfeinerungen: Wiederholung des Algorithmus mit verschiedenen initialen Zentren gezielte Selektion der initialen Zentren Test verschiedener Werte für die Anzahl der Zentren Prof. Dr. Dietmar Seipel 473
Beispiel: Id Alter Note S1 17 3.9 S2 17 3.5 S3 18 3.1 S4 20 3.0 S5 23 3.5 S6 26 3.6 Prof. Dr. Dietmar Seipel 474
Clusterung nach dem Alter: initiale Clusterzentren und Cluster: Zentren: S1, S4 Cluster 1: S1, S2, S3 Cluster 2: S4, S5, S6 neue Clusterzentren und Cluster: Zentren: (17 + 17 + 18)/3 = 17.333, (20 + 23 + 26)/3 = 23 Cluster 1: S1, S2, S3, S4 Cluster 2: S5, S6 das frühere Zentrum von Cluster 2 ist ins Cluster 1 gewandert weitere Schritte bringen keine Veränderung der Cluster Notendurchschnitt von (3.9 + 3.5 + 3.1 + 3.0)/4 = 3.375 in Cluster 1 (jüngere Studenten) und (3.5 + 3.6)/2 = 3.55 in Cluster 2 (ältere Studenten). Prof. Dr. Dietmar Seipel 475
fach gewichten, da dann die neuen numerischen Werte zwischen 0 und Beispiel (Kreditwürdigkeit) Transformation: Wir bilden nicht numerische Werte auf numerische ab: yes no Ci Damit rangieren die numerischen Werte für Married, PrevDef und Def zwischen 0 und 1. Normierung: Das Einkommen rangiert zunächst zwischen 0 und 160. Im Vergleich zu den anderen Attributen kann man es mittels Income Income liegen. Prof. Dr. Dietmar Seipel 476
Clusterung mittels K Means vierfache Gewichtung des Einkommens: Income 3 Cluster: Income Id Married PrevDef Income Def Id Married PrevDef Income Def 1 C1 yes no 50 no 1 C14 no no 15 no 1 C2 yes no 100 no 1 C15 no no 60 no 1 C3 no yes 135 yes 1 C17 yes no 35 no 1 C4 yes no 125 no 1 C18 no yes 160 yes 1 C5 yes no 50 no 1 C19 yes no 40 no 1 C6 no no 30 no 1 C20 yes no 30 no 1 C9 yes no 75 no 2 C13 yes yes 20 no 1 C10 yes yes 45 no 2 C7 yes yes 10 no 1 C11 yes no 60 yes 3 C16 yes no 15 yes 1 C12 no yes 125 yes 3 C8 yes no 10 yes Die Cluster Einkommen, und außerdem gilt und enthalten verheiratete Personen mit niedrigen Prof. Dr. Dietmar Seipel 477
zweifache Gewichtung des Einkommens: Income 4 Cluster: Income Id Married PrevDef Income Def 1 C1 yes no 50 no 1 C2 yes no 100 no 1 C4 yes no 125 no 1 C5 yes no 50 no 1 C9 yes no 75 no 1 C17 yes no 35 no 1 C19 yes no 40 no 1 C20 yes no 30 no 2 C8 yes no 10 yes 2 C11 yes no 60 yes 2 C16 yes no 15 yes Id Married PrevDef Income Def 3 C7 yes yes 10 no 3 C10 yes yes 45 no 3 C13 yes yes 20 no 4 C3 no yes 135 yes 4 C6 no no 30 no 4 C12 no yes 125 yes 4 C14 no no 15 no 4 C15 no no 60 no 4 C18 no yes 160 yes 3 Cluster: und oder und oder und zusammen Prof. Dr. Dietmar Seipel 478
Hierarchisches Clustering 1. starte mit einem Cluster pro Datenobjekt 2. verschmelze zwei möglichst nahe beeinander liegende Cluster, basierend auf der Distanz zwischen den Zentren (Mittelwerten) der Cluster der Distanz zwischen den zwei nächsten Nachbarn zweier Cluster (d.h., je einem Element der jeweils betrachteten Cluster) 3. dieser Prozeß kann zu jedem Zeitpunkt abgebrochen werden, sobald man ein zufriedenstellendes Clustering erreicht hat Prof. Dr. Dietmar Seipel 479
Dentrogramm 17,17,18,20,23,26 17,17,18,20 17,17,18 17,17 23,26 17 17 18 20 23 26 Prof. Dr. Dietmar Seipel 480