- dbs.uni-hannover.de

Werbung
L EIBNIZ U NIVERSITÄT H ANNOVER
FAKULTÄT FÜR E LEKTROTECHNIK UND I NFORMATIK
I NSTITUT FÜR P RAKTISCHE I NFORMATIK
FACHGEBIET D ATENBANKEN UND I NFORMATIONSSYSTEME
Masterarbeit
im Studiengang Informatik
Kombinationen von Data Mining-Verfahren:
Analyse und Automatisierung
Ulf Mewe
Matrikel.-Nr. 2178968
Prüfer: Prof. Dr. Udo Lipeck
Zweitprüfer: Dr. Hans Hermann Brüggemann
Betreuer: Prof. Dr. Udo Lipeck, Dipl.-Math. Christian Stahlhut
22. April 2008
Zusammenfassung
Das Data Mining hat sich in der Informatik seit den späten 80er Jahren entwickelt. Seitdem sind
Verfahren entwickelt worden, die in der Lage sind, große Datenbestände zu analysieren und dabei
Muster, Strukturen und statistische Auffälligkeiten zu entdecken, ohne vorher zu wissen, von welcher Art diese sind. Je nach Anwendungsgebiet ist es sinnvoll, entweder ein einzelnes Data MiningVerfahren zu nutzen oder verschiedene Verfahren zu kombinieren. Die Kombination mehrerer Data
Mining-Verfahren wird als „Kombiniertes Data Mining“ bezeichnet. Ziel des „Kombinierten Data
Mining“ ist es, bessere Ergebnisse im Vergleich zum herkömmlichen Data Mining zu erzielen.
In dieser Arbeit wird ein deutlicher Schwerpunkt auf die Kombination aus den Data Mining-Verfahren Clustering und Assoziationsanalyse gelegt. Es werden verschiedene Experimente durchgeführt, um zu zeigen, dass diese Kombination zu einer Verbesserung der Ergebnisse führen kann.
Um die Ergebnisse des herkömmlichen Data Mining und des „Kombinierten Data Mining“ überhaupt miteinander vergleichen zu können, wird ein Maß IW eingeführt, das es ermöglicht, Mengen
von Assoziationsregeln zu bewerten und somit zu vergleichen. Weiterhin wird ein Ansatz zur Automatisierung des „Kombinierten Data Mining“ vorgestellt. Dabei erfolgt die Auswahl der besten
Clusterattribute mit Hilfe einer Korrelationsanalyse zwischen verschiedenen potentiellen Clusterattributen und dem Assoziationsattribut.
Aufbauend auf diesem Ansatz zur Automatisierung des „Kombinierten Data Mining“ wurde die
Anwendung „Easy Mining“ implementiert. Die Anwendung ermöglicht es, ein herkömmliches
Data Mining, ein „Kombiniertes Data Mining“, sowie ein automatisches „Kombiniertes Data Mining“ durchzuführen und die Ergebnisse mit Hilfe des Maßes IW bewerten zu lassen. Mit Hilfe der
Anwendung „Easy Mining“ wurden abschließend weitere Experimente zum automatischen „Kombinierten Data Mining“ durchgeführt.
Inhaltsverzeichnis
1 Einleitung
5
2 Data Mining und Knowledge Discovery
2.1 Knowledge Discovery und der KDD-Prozess
2.2 Data Mining . . . . . . . . . . . . . . . . . . .
2.2.1 Clustering . . . . . . . . . . . . . . . .
2.2.2 Assoziationsanalyse . . . . . . . . . .
2.2.3 Klassifikation . . . . . . . . . . . . . .
2.2.4 Regression . . . . . . . . . . . . . . . .
.
.
.
.
.
.
7
7
9
10
11
13
14
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
15
16
17
18
19
21
21
22
22
22
24
24
27
27
30
4 Bewertung von Mengen von Assoziationsregeln
4.1 Einführung in MDL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Bewertung von Mengen von Assoziationsregeln . . . . . . . . . . . . . . . . . . . . .
4.2.1 MDL als Grundlage für die Bewertung von Mengen von Assoziationsregeln
4.2.2 Komprimierung von Daten mittels Assoziationsregeln . . . . . . . . . . . . .
4.2.3 Vernachlässigung der Assoziationsregeln . . . . . . . . . . . . . . . . . . . . .
4.2.4 Bewertung von Mengen von Assoziationsregeln . . . . . . . . . . . . . . . . .
4.2.5 Algorithmus zur Berechnung von IW ( A, T ) . . . . . . . . . . . . . . . . . . .
4.2.6 Korrelation zwischen Support, Confidence und dem Maß IW ( A, T ) . . . . .
4.2.7 Berechnung von IW ( A, T ) für mehrere Mengen von Assoziationsregeln . . .
.
.
.
.
.
.
.
.
.
32
32
33
33
33
35
37
40
43
44
.
.
.
.
46
47
47
48
49
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 Kombination von Data Mining-Verfahren
3.1 Erweiterung des Knowledge Discovery-Prozesses . . . . . . . . . . . . . . . . . . .
3.2 Arten des „Kombinierten Data Mining“ . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Kombinationen aus zwei Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1 Kombinationen aus Clustering und Assoziationsanalyse . . . . . . . . . . .
3.3.2 Clustering und Klassifikation/Regression (C → K / C → R) . . . . . . . . .
3.3.3 Assoziationsanalyse und Klassifikation/Regression (A → K / A → R) . . .
3.3.4 Klassifikation/Regression und Clustering (K → C / R → C) . . . . . . . . .
3.3.5 Klassifikation/Regression und Assoziationsanalyse (K → A / R → A) . . .
3.3.6 Kombinationen aus Klassifikation und Regression . . . . . . . . . . . . . . .
3.3.7 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4 Kombination aus Clustering und Assoziationsanalyse . . . . . . . . . . . . . . . . .
3.4.1 Einordnung der Kombination aus Clustering und Assoziationsanalyse . . .
3.4.2 Vor- und Nachteile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.3 Weitere Arbeiten zur Kombination von Clustering und Assoziationsanalyse
5 Beispiele zum Kombinierten Data Mining“
”
5.1 Experimente . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1.1 Datengrundlage der durchgeführten Experimente
5.1.2 Durchgeführte Experimente . . . . . . . . . . . . .
5.2 Ergebnisse des herkömmlichen Data Mining . . . . . . .
3
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Inhaltsverzeichnis
5.3
5.4
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
49
52
52
53
59
59
6 Automatisierung des Kombinierten Data Mining“
”
6.1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.2 Bestimmung der besten Clusterattribute . . . . . . . . . . . . . . . . . . . . . . .
6.3 Berechnung der Korrelation zwischen zwei Attributen . . . . . . . . . . . . . .
6.3.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.2 χ2 -Verfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.3.3 Berechnung der Korrelation mittels der stochastischen Unabhängigkeit
6.4 Bestimmung der Korrelation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.4.1 Probleme bei der Berechnung der Korrelation mittels des χ2 -Verfahrens
6.4.2 Ergebnisse der Korrelationsanalyse . . . . . . . . . . . . . . . . . . . . .
6.5 Auswertung der Ergebnisse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
61
61
62
63
63
65
69
71
72
72
75
7 Vorstellung der Anwendung ”Easy Mining”
7.1 Einleitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7.1.1 Schritte des automatischen „Kombinierten Data Mining“
7.1.2 Weitere Funktionen der Anwendung „Easy Mining“ . .
7.2 Benutzerschnittstellen . . . . . . . . . . . . . . . . . . . . . . . .
7.2.1 Konfigurationsdatei . . . . . . . . . . . . . . . . . . . . .
7.2.2 Anforderungen an die Daten . . . . . . . . . . . . . . . .
7.2.3 Ausgabe der Anwendung „Easy Mining“ . . . . . . . . .
7.3 Implementierung . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
79
79
79
80
81
81
84
84
84
5.5
Ergebnisse des „Kombinierten Data Mining“ . . . . .
Analyse der Ergebnisse . . . . . . . . . . . . . . . . . .
5.4.1 Statistische Auswertung der Ergebnisse . . . .
5.4.2 Analyse der Ergebnisse anhand von Beispielen
5.4.3 Fazit . . . . . . . . . . . . . . . . . . . . . . . .
Laufzeitanalyse . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8 Tests und Ergebnisse
92
9 Fazit und Ausblick
95
A Dokumentation der verwendeten Datenbanken
A.1 Relationales Schema der Filmdatenbank „Movie Database“ . . . . .
A.2 Erläuterungen zum Schema der Filmdatenbank „Movie Database“
A.3 Relationales Schema der für die Experimente verwendeten Tabellen
A.4 Erläuterungen zum Schema der verwendeten Tabellen . . . . . . .
97
97
97
98
99
B Ergebnisse der Laufzeitanalyse
C
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
100
Easy Mining“-Konfigurationsdateien
101
”
C.1 Kommentierte Konfigurationsdatei . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
C.2 Herkömmliches Data Mining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
C.3 „Kombiniertes Data Mining“ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
D Ausgabe der Anwendung Easy Mining“
”
110
Literaturverzeichnis
113
4
1 Einleitung
In den vergangenen Jahrzehnten hat die Menge der in Computersystemen gespeicherten Daten
enorm zugenommen. Dies liegt daran, dass einerseits die Kapazitäten von Datenspeichern auf
Grund der technischen Entwicklung enorm zugenommen haben und es andererseits immer mehr
Möglichkeiten zur Erhebung und zur Erfassung von Daten gibt. Dieser rasante Anstieg der überwiegend in Datenbanken und Datenbankclustern gespeicherten Informationen hat zur Folge, dass
immer höhere Anforderungen an die Verarbeitung von Informationen gestellt werden. Direkte Anfragen nach bestimmten Informationen sind zwar über Datenbankanfragesprachen wie SQL problemlos möglich doch sind diese nicht in der Lage, interessante Informationen wie Muster, Strukturen oder Gesetzmäßigkeiten aufzuspüren, die nur implizit in den Daten enthalten sind. Traditionelle
Methoden zur Analyse von Daten, die dem Aufspüren solcher Informationen dienen, scheitern aber
an der Menge der Daten. So ist beispielsweise eine Analyse einer größeren Datenmenge durch den
Menschen unvorstellbar. Diese Funktion soll das Data Mining übernehmen und somit die traditionelle Datenanalyse ersetzen. Darüber hinaus werden durch das Data Mining statistische Methoden
zur Datenanalyse zur Verfügung gestellt, die ansonsten nicht direkt angeboten werden.
Das Data Mining hat sich in der Informatik seit den späten 80er Jahren entwickelt. Seitdem sind
Verfahren entwickelt worden, die in der Lage sind, große Datenbestände zu analysieren und dabei Muster, Strukturen und statistische Auffälligkeiten zu entdecken, ohne vorher zu wissen, von
welcher Art diese sind. Die gefundenen Muster werden dem Benutzer im Anschluss an den Data
Mining-Prozess in einer verständlichen Form präsentiert. Zu den Anwendungsgebieten des Data
Mining gehören u.a. die Warenkorbanalyse, zielgerichtetes Marketing, Risikomanagement und Betrugserkennung bei Versicherungen oder Kreditkartenunternehmen [Hum04].
Je nach Anwendungsgebiet ist es sinnvoll, entweder ein einzelnes Data Mining-Verfahren zu nutzen
oder verschiedene Verfahren zu kombinieren. Bei der Kombination von zwei oder mehreren Verfahren bietet sich in erster Linie die sequentielle Ausführung der beteiligten Verfahren an, wobei auch
ein paralleler Einsatz von Verfahren möglich ist [Hum04]. Die Kombination mehrerer Data MiningVerfahren wird als „Kombiniertes Data Mining“ bezeichnet (vgl. Kapitel 3). Das Ziel des „Kombinierten Data Mining“ ist es, effizientere (leichter interpretierbare) und hochwertigere Ergebnisse,
d. h. einerseits fehlerreduzierte Ergebnisse und andererseits Ergebnisse mit höherer Aussagekraft
zu produzieren [Hum04].
Ergebnisse mit höherer Aussagekraft können z. B. Regeln sein, die nur in einem bestimmten Bereich
der Daten gelten. Solche Regeln, nach denen normalerweise nur mit einer Assoziationsanalyse gesucht wird, könnten mit einem Clustering (zur Identifizierung von unterschiedlichen Bereichen)
und einer anschließenden Assoziationsanalyse gefunden werden. Ein Beispiel für eine solche Regel
ist, dass eine bestimmte Kundengruppe eines Buchladens häufig das Buch B kauft, wenn sie auch
das Buch A gekauft hat. Auf den gesamten Kundenstamm des Buchladens bezogen wäre die Zuverlässigkeit dieser Regel deutlich geringer. Die verschiedenen Kundengruppen können vor der Assoziationsanalyse mittels eines Clustering anhand des Geschlechtes, des Alters, des Berufes und/oder
weiterer persönlicher Daten identifiziert werden.
Probleme bei der Kombination von Data Mining-Verfahren bereiten einerseits die Auswahl von geeigneten Verfahren und andererseits die Auswahl von sinnvollen Eingaben in die Verfahren. So ist
5
1 Einleitung
eine Kombination eines Clustering und einer Assoziationsanalyse nur dann sinnvoll, wenn die Attribute, nach denen geclustert wird, so gewählt sind, dass möglichst keine Regeln verloren gehen
und gleichzeitig Cluster entstehen, die neue interessante Informationen enthalten. Wenn beispielsweise die Verteilung der für die Assoziationsanalyse verwendeten Attribute im gesamten Datenbestand ungefähr gleich der Verteilung dieser Attribute in den einzelnen Clustern ist, dann kann eine
Analyse der einzelnen Cluster keine neuen interessanten Informationen hervorbringen. Aus diesem
Grund ist die Auswahl der für die Data Mining-Verfahren verwendeten Informationen maßgeblich
für die Qualität der Resultate verantwortlich. In verschiedenen Arbeiten (u. a. [LY00]) wird deshalb
immer wieder darauf hingeweisen, dass für die Auswahl der Attribute Expertenwissen erforderlich
ist. Alternativen zu der Auswahl der Attribute mittels Expertenwissen sind zwar denkbar, aber sehr
aufwendig: Hierbei wird das „Kombinierte Data Mining“ für verschiedene Attributkombinationen
wiederholt. Die aussagekräftigsten Ergebnisse werden dem Nutzer im Anschluss an diesen Prozess
präsentiert.
In dieser Arbeit soll gezeigt werden, dass sich der Prozess der Kombination von Data MiningVerfahren durchaus automatisieren lässt, sodass kein Expertenwissen mehr nötig ist. Zur Reduktion des Problems werden nur Verfahren des „Kombinierten Data Mining“ untersucht, die im ersten Schritt ein Clustering der Daten durchführen. Im Anschluss an das Clustering wird im zweiten
Schritt eine Assoziationsanalyse durchgeführt. Die Attribute für das Clustering werden automatisch anhand der Zielsetzung der Assoziationsanalyse ermittelt.
Die weiteren Kapitel dieser Arbeit gliedern sich wie folgt: Im zweiten Kapitel werden zunächst alle
nötigen Grundlagen zum Data Mining und zum Knowledge Discovery-Prozess erläutert.
Das dritte Kapitel behandelt das „Kombinierte Data Mining“. Zunächst wird der erweiterte Knowledge Discovery-Prozess für das „Kombinierte Data Mining“ eingeführt. Im Anschluss werden verschiedene Arten des „Kombinierten Data Mining“ vorgestellt und verschiedene Verfahren mit zwei
Iterationen erläutert. Zuletzt wird näher auf die Kombination aus Clustering und Assoziationsanalyse eingegangen.
Um die Ergebnisse des „Kombinierten Data Mining“ mit denen eines herkömmlichen Data Mining
vergleichen zu können, wird ein Maß benötigt. Das in dieser Arbeit verwendete Maß zum Vergleich
von Mengen von Assoziationsregeln wird im vierten Kapitel eingeführt.
Im fünften Kapitel werden die Ergebnisse von verschiedenen Beispielen zum „Kombinierten Data
Mining“ vorgestellt, welche die Vorteile der Kombination der Verfahren deutlich machen. Die Beispiele stammen aus der Movie-Database, einer Filmdatenbank. Die Beschreibung und das Schema
der Movie-Database finden sich im Anhang A.
Die Automatisierung des „Kombinierten Data Mining“ wird im sechsten Kapitel behandelt. Insbesondere der Identifizierung von Attributen, die im ersten Data Mining-Verfahren verwendet werden sollen, kommt in diesem Kapitel eine besondere Bedeutung zu. Zur Identifizierung der besten
Attribute wird ein Ansatz vorgestellt, der die geeigneten Attribute anhand der Ergebnisse einer
Korrelationsanalyse auswählt.
Im siebten Kapitel wird die im Rahmen dieser Masterarbeit entwickelte Java-Anwendung „Easy
Mining“ vorgestellt. Diese setzt die hier vorgestellten Verfahren zur Automatisierung des „Kombinierten Data Mining“ um und zeigt, in wie weit sich der Prozess der Knowledge Discovery automatisieren lässt.
Zum automatisierten „Kombinierten Data Mining“ wurden weitere Experimente mit der Anwendung „Easy Mining“ durchgeführt. Die Ergebnisse werden im achten Kapitel präsentiert, bevor im
letzten und neunten Kapitel ein Fazit gezogen und ein Ausblick auf mögliche zukünftige Erweiterungen gegeben wird.
6
2 Data Mining und Knowledge Discovery
In diesem Kapitel werden zunächst die Begriffe Data Mining und Knowledge Discovery näher erläutert. Zudem werden der KDD-Prozess und die dazugehörigen Schritte vorgestellt. Die Begriffe
Data Mining und Knowledge Discovery gehören thematisch eng zusammen: Knowledge Discovery kann im Prinzip als Oberbegriff für das bekanntere Data Mining verstanden werden. Der Begriff
Knowledge Discovery bezeichnet das gesamte Verfahren zur Aufdeckung von verborgenen Mustern etc. Der zur Knowledge Discovery gehörende Prozess, der KDD-Prozess1 , umfasst dabei den
gesamten Prozess der Analyse einschließlich der Vorbereitung der Daten sowie einer Bewertung
der Resultate. Das Data Mining ist ein einzelner Prozessschritt in dieser Prozesskette und bezeichnet die eigentliche Datenanalyse, also die Suche nach bisher unbekannten Mustern, Strukturen und
Gesetzmäßigkeiten in einer Menge von Daten.
Ziel der Knowledge Discovery ist es, in einer gegebenen großen Datenmenge bislang unbekannte
und nützliche Zusammenhänge zu finden und zu erkennen. Während kleine Datenmengen noch
problemlos mit traditionellen Methoden wie z. B. der Analyse durch einen Menschen beherrscht
werden können, scheitern diese Techniken bei großen Datenmengen oder sie sind zumindest nicht
in der Lage, die gesamten Daten zu untersuchen. In diesem Bereich kommen die Knowledge Discovery und verschiedene Data Mining-Verfahren zum Einsatz, die speziell für die Analyse großer
Datenmengen entwickelt wurden.
2.1 Knowledge Discovery und der KDD-Prozess
Die Knowledge Discovery lässt sich als nicht-trivialer Prozess zur Identifikation von gültigen, neuartigen, potentiell nützlichen und allgemein verständlichen Mustern in Daten beschreiben.2 Der
KDD-Prozess ist in Abbildung 2.1 dargestellt und besteht aus den folgenden sieben Schritten:
1. Erfassung und Bereitstellung von Daten
2. Definition der Ziele der Wissensfindung
3. Datenauswahl (Selektion)
4. Datenbereinigung (Preprocessing)
5. Datentransformation
6. Data Mining (die eigentliche Datenanalyse)
7. Interpretation der gewonnenen Erkenntnisse
1 Process
of Knowledge Discovery in databases
discovery in databases is the non-trivial process of identifying valid, novel, potential useful, and ultimately understandable pattern in data“ [FPSM92]
2 „Knowledge
7
2 Data Mining und Knowledge Discovery
Abbildung 2.1: Überblick über die Stufen des KDD-Prozesses3,4
Erfassung und Bereitstellung von Daten
Im ersten Schritt des KDD-Prozesses werden die für eine Datenanalyse benötigten Daten zur Verfügung gestellt. Dazu gehört neben der Bereitstellung der Daten auch die vorherige Erfassung der
benötigten Daten.
Definition der Ziele der Wissensfindung
Im zweiten Schritt des KDD-Prozesses werden die Ziele der Wissensfindung definiert. Alle folgenden Schritte basieren auf dieser Definition, weil es nur unter Berücksichtigung der definierten Ziele
möglich ist, die richtigen Daten und geeignete Verfahren zur Analyse dieser Daten auszuwählen
etc.
Datenauswahl (Selektion)
Bei der Selektion der Daten werden diejenigen Daten ausgewählt, die für die Analyse verwendet
werden sollen. Bei der Auswahl der Daten können Einschränkungen getroffen werden, die sich einerseits auf die Anzahl der verwendeten Attribute, andererseits auf die Anzahl der betrachteten
Tupel beziehen. Bei der Einschränkung der Tupel können, um die spätere Analyse der Daten zu beschleunigen, entweder irrelevante Tupel weggelassen werden oder es kann eine Teilmenge gebildet
werden, welche die gesamte Menge gut repräsentiert. Die zweite Variante wird häufig eingesetzt,
um eine grobe Abschätzung der Ergebnisse zu erhalten, bevor eine Analyse über den gesamten
Datenbestand durchgeführt wird.
Datenbereinigung (Preprocessing)
Während der Datenbereinigung sollen die zu analysierenden Daten so vorbereitet werden, dass
sie von möglichst hoher Qualität sind und eine Analyse problemlos durchgeführt werden kann.
Die Qualität der Daten wird in erster Linie durch fehlende (Attribut-)Werte, durch Ausreißer in
den Daten und durch Redundanzen und Inkonstistenzen vermindert. Somit gehören die Eliminierung fehlender (Attribut-)Werte, z. B. durch Ergänzung eines default-Wertes, die Erkennung und
Behandlung von Ausreißern und die Beseitigung von Redundanzen und Inkonsistenzen zu den
Hauptaufgaben in diesem Prozessschritt.
Datentransformation
Im Transformationsschritt werden die durch das Preprocessing bereinigten Daten für die eigentliche Datenanalyse vorbereitet. Durch die Transformation soll eine Abstraktion der Daten [und eine
Vereinheitlichung ihrer Struktur] erreicht werden, so dass eine weitere Verarbeitung im Hinblick
auf das eigentliche Data Mining sichergestellt werden kann. [Spe07]
3 in
Anlehnung an [FPSS96]
sind die Schritte 3-7 des KDD-Prozesses
4 Dargestellt
8
2 Data Mining und Knowledge Discovery
Zu den während der Transformation eingesetzten Verfahren zählen die Normalisierung und die
Diskretisierung von (Attribut-)Werten, die Aggregierung und die Generalisierung, die Konstruktion
von neuen Attributen und die Attribut-Reduktion. Weitere Informationen zu diesen Verfahren sind
in [Spe07] zu finden.
Data Mining (die eigentliche Datenanalyse)
Beim Data Mining handelt es sich um die eigentliche Analyse der Daten. Hierzu stehen verschiedene Techniken und Verfahren zur Verfügung, wie das Clustering, die Assoziationsanalyse, die Klassifikation und die Regression. Ausführliche Informationen zu diesem Prozessschritt finden sich in
Abschnitt 2.2 (Data Mining).
Interpretation der Ergebnisse
Im letzten Schritt des KDD-Prozesses werden die gefundenen Beziehungen interpretiert. Das Data
Mining liefert als Ergebnis nur Muster, Strukturen und Gesetzmäßigkeiten, die in den Daten enthalten sind. Diese müssen im Anschluss an das Data Mining entweder noch interpretiert werden
oder wenigstens für den Nutzer des Systems (oder für ein anderes System) in eine verständliche
Form gebracht werden. Für einen menschlichen Benutzer bieten sich in erster Linie Visualisierungen wie Regeln, Entscheidungsbäume, Tabellen oder Diagramme an. Für andere Systeme hängt die
Aufbereitung von den zur Verfügung stehenden Schnittstellen ab.
Die Ergebnisse des Data Mining können zur Verbesserung des KDD-Prozesses verwendet werden.
Diese Rückflüsse sind in Abbildung 2.1 als Pfeile dargestellt. Abhängig von den Ergebnissen könnten z. B. andere Daten für die Analyse verwendet, die gleichen Daten anders aufbereitet oder die
Parameter des Data Mining verändert werden.
2.2 Data Mining
Data Mining ist der Prozess der (semi-)automatischen Erforschung und Analyse von großen Datenmengen zur Identifizierung von interessanten Strukturen wie Mustern, statistischen Modellen und
Beziehungen.5 Zu diesem Zweck wurden verschiedene Data Mining-Verfahren entwickelt. Diese
lassen sich grundlegend in zwei Klassen einordnen: die deskriptiven (unsupervised) und die prädiktiven (supervised) Methoden. Die prädiktiven Methoden erlernen anhand von Beispieldatensätzen Informationen über die vorhandenen Daten und sollen später mit Hilfe dieser Informationen
Vorhersagen über neue Datensätze machen. Zu den prädiktiven Methoden gehören die Klassifikation und die Regression. Die deskriptiven Methoden machen hingegen keine Vorhersagen für neue
Datensätze, sondern nutzen die vorhandenen Informationen in den Datensätzen, um neue Informationen über diese Daten zu gewinnen. Zu den deskriptiven Methoden gehören das Clustering und
die Assoziationsanalyse.
Zum Verständnis dieser Arbeit werden grundlegende Kenntnisse der Data Mining-Methoden Clustering, Assoziationsanalyse, Klassifikation und Regression benötigt. Diese Methoden werden im
Folgenden kurz erläutert. Für weitere Informationen siehe [Spe07] und [ES00].
5 in
Anlehnung an Berry/Linhoff und Fayyad/Chaudhuri/Bradley
9
2 Data Mining und Knowledge Discovery
2.2.1 Clustering
Das Clustering wird zur Gruppierung von Daten eingesetzt, und zwar um Daten in vorher nicht
bekannte Klassen einzuordnen.
Ziel des Clustering ist es, eine gegebene Datenmenge so in Cluster (Gruppen) einzuteilen, dass
Objekte im gleichen Cluster möglichst ähnlich und Objekte aus verschiedenen Clustern möglichst
unähnlich zueinander sind.
Durch das Zusammenfassen der Daten zu Clustern sind die Daten innerhalb eines Clusters bezüglich der berücksichtigten Attribute ähnlich. Somit lassen sich für jeden Cluster Wertekombinationen
bestimmen, die diesen Cluster besonders auszeichnen, und es könnte beispielsweise ein besonders
guter Repräsentant für jeden Cluster bestimmt werden.
Clustering-Verfahren
Zur Durchführung eines Clustering stehen unterschiedliche Algorithmen zur Verfügung. Grundsätzlich lassen sich nach [ES00] zwei unterschiedliche Arten von Verfahren unterscheiden: die partitionierenden und die hierarchischen Verfahren.
Beim partitionierenden Clustering wird eine Datenmenge so in k Cluster zerlegt, dass jeder Cluster mindestens ein Objekt enthält und gleichzeitig jedes Objekt zu genau einem Cluster gehört.
Die bekanntesten Algorithmen zum partitionierenden Clustering sind der k-means- und der EMAlorithmus. Anhand des k-means-Algorithmus, der für das Clustering in dieser Arbeit verwendet
wird, wird später ein mögliches Vorgehen zum partitionierenden Clustering vorgestellt.
Im Gegensatz zu den partitionierenden Verfahren erzeugen hierarchische Clustering-Verfahren keine einfache Zerlegung der Datenmenge, sondern eine hierarchische Repräsentation der Daten, aus
der man eine Clusterstruktur ableiten kann[ES00]. Die hierarchischen Verfahren lassen sich noch
weiter in anhäufende (agglomerative clustering) und in teilende Verfahren (divisive clustering) einteilen. Bei den anhäufenden Verfahren bildet zu Beginn jedes Objekt einen eigenen Cluster. Die
Cluster werden schrittweise zu größeren Clustern zusammengefasst. Hierzu werden jeweils die beiden Cluster mit dem geringsten Abstand verschmolzen. Der Algorithmus stoppt, wenn nur noch
ein Cluster existiert. Die teilenden Verfahren starten mit einem Cluster, der alle Objekte enthält
und teilen diesen schrittweise in kleinere Cluster auf, bis jedes Objekt einen eigenen Cluster bildet. Die beim hierarchischen Clustering entstehende Baumstruktur wird in der Regel mit einem
Dendrogramm visualisiert. Die bekanntesten Verfahren sind der Single-Link-Clusteringalgorithmus
und seine Varianten Complete-Link- Clustering und Average-Link-Clustering.
Weitere Informationen zum Clustering sind u. a. in [Spe07] und [ES00] zu finden.
Der k-means-Algorithmus
In dieser Arbeit wird für das Clustering der Daten der k-means-Algorithmus verwendet. Wie im vorherigen Abschnitt bereits erwähnt, gehört dieser Algorithmus zu den partitionierenden Verfahren,
genauer: zu den iterativen distanzbasierten partitionierenden Verfahren. Neben den zu clusternden
Daten benötigt dieser Algorithmus die gewünschte Anzahl von Clustern als Eingabeparameter. Diese wird im Folgenden mit k bezeichnet.
Der k-means-Algorithmus besteht aus vier Schritten:
1. Initialisierung: (Zufällige) Auswahl von k Clusterzentren
2. Zuordnung: Jedes Objekt wird dem ihm am nächsten liegenden Cluster zugeordnet
10
2 Data Mining und Knowledge Discovery
3. Neuberechnung: Es werden für jeden Cluster die Clusterzentren neu berechnet
4. Wiederholung: Ausführung der Schritte 2 und 3, bis ein Abbruchkriterium erfüllt wird
Im ersten Schritt werden k Punkte, die sogenannten Seed-Points festgelegt. Zur Auswahl der SeedPoints sind verschiedene Vorgehensweisen denkbar. Zu den häufigsten Vorgehensweisen gehören
die Auswahl von k beliebigen bzw. zufälligen Punkten aus den Eingabedaten oder die Verwendung
der ersten k Punkte aus den Eingabedaten. Eine weitere Vorgehensweise ist die Verwendung von k
zufälligen und von den Eingabedaten unabhängigen Punkten. Die ausgewählten Punkte sind die
Seed-Points und bilden die Clusterzentren für die erste Iteration.
Im zweiten Schritt werden die Eingabedaten auf die Cluster verteilt. Die Zuordnung erfolgt so, dass
der Abstand der Elemente zu den Clusterzentren minimiert wird. Folglich wird jedes Objekt dem
ihm am nächsten liegenden Cluster zugeordnet, wobei der Abstand zwischen einem Element und
einem Cluster definiert ist als der Abstand des Elements zum Zentrum des Clusters.
Im dritten Schritt werden die Zentren der einzelnen Cluster neu berechnet. Die neuen Zentren ergeben sich als Mittelwert der numerischen Attribute und als Medoide der kategorischen Attribute.
Der zweite und der dritte Schritt werden solange wiederholt, bis entweder eine stabile Aufteilung
der Daten in Cluster gefunden wurde oder bis ein anderes Abbruchkriterium erreicht wird. Als
alternatives Abbruchkriterium kommt in erster Linie das Erreichen einer maximalen Zahl von Iterationen in Frage, aber auch andere Kriterien sind denkbar.
2.2.2 Assoziationsanalyse
Das Ziel einer Assoziationsanalyse ist das Auffinden von Regeln innerhalb einer gegebenen Datenmenge. Die Datenmenge besteht hierbei aus einer Menge von Transaktionen. Transaktionen selbst
bestehen aus einer Menge von Items. Alle Items, die in derselben Transaktion vorhanden sind, gehören dabei zusammen.
Gesucht werden Mengen von Items, für die Folgendes gilt: Immer wenn die Items x1 , x2 , ..., xn in
einer Transaktion vorhanden sind, treten auch die Items y1 , y2 , ..., ym in dieser Transaktion auf. Die
gefundenen Regeln werden meist in der Form x1 , x2 , ..., xn ⇒ y1 , y2 , ..., ym dargestellt, wobei gilt,
dass die Mengen X = { x1 , x2 , ..., xn } und Y = {y1 , y2 , ..., ym } keine gemeinsamen Elemente haben.
Ein gängiges Beispiel für eine Assoziationsanalyse sind Einkäufe in einem Supermarkt. Eine Transaktion besteht hierbei aus den Artikeln (Items), die während eines Einkaufs von einem Kunden
gekauft werden. Eine Regel könnte dann lauten: „Immer wenn Cola gekauft wird, werden auch
Chips gekauft“ bzw. „Cola ⇒ Chips“.
Im Zusammenhang mit der Assoziationsanalyse sind zwei Maße von besonderer Bedeutung: Support und Confidence.
Der Support einer Regel gibt an, wie aussagekräftig diese Regel ist. Es ist sicherlich einleuchtend,
dass eine Regel, die in jeder zweiten Transaktion gültig ist, eine höhere Aussagekraft hat als eine
Regel, die nur in jeder hundertsten Transaktion gültig ist. Diese unterschiedliche Aussagekraft wird
über den Support abgebildet.
Der Support einer Menge von Items, welcher u. a. zur Berechnung der Confidence verwendet werden kann, ist definiert als der Anteil von Transaktionen, die diese Items enthalten. Der Support einer
Menge X ist also die relative Häufigkeit, mit der die in X vorkommenden Waren zusammen gekauft
werden.[ES00] Damit gilt für den Support einer Menge X:
support( X ) =
|{t ∈ T : X ⊆ t}|
|T |
11
2 Data Mining und Knowledge Discovery
Der Support einer Regel A ⇒ B ist definiert als der Support von A ∪ B, d. h. die relative
Häufigkeit des gemeinsamen Auftretens aller Items bzw. Waren, die in der Assoziationsregel
vorkommen.[ES00] Damit folgt für den Support einer Regel A ⇒ B:
support( A ⇒ B) =
|{t ∈ T : A ∪ B ⊆ t}|
|T |
Die Confidence einer Regel gibt deren Zuverlässigkeit an. Man kann sagen, dass eine Assoziationsregel A ⇒ B mit einer Confidence c gilt, wenn c% aller Transaktionen, die A enthalten, auch B
enthalten. Nach [ES00] ist die Confidence einer Assoziationregel A ⇒ B definiert als der Anteil
der Transaktionen, welche die Menge B enthalten, in der Teilmenge aller Transaktionen, welche die
Menge A enthalten. Damit ergibt sich die Confidence einer Regel A ⇒ B als:
con f idence( A ⇒ B) =
|{t ∈ T : A ∪ B ⊆ t}|
support( A ⇒ B)
=
support( A)
|{t ∈ T : A ∈ t}|
Ein weiteres Maß zur Bewertung von Assoziationsregeln ist das Improvement, welches auch als
Lift bezeichnet wird. Dieses Maß wird in der Arbeit von Lai und Yang (siehe [LY00]) neben dem
Support und der Confidence zur Bewertung von Assoziationsregeln verwendet. Das Improvement
gibt an, um wieviel die Confidence den Erwartungswert übertrifft, und stellt eine Kombination aus
Support und Confidence dar. Formal ist das Improvement einer Regel A ⇒ B definiert als:
improvement( A ⇒ B) =
con f idence( A ⇒ B)
support( B)
Das Improvement gibt somit an, um wieviel sich die Verteilung bestimmter Items in einer Teilmenge
von der Verteilung in der Grundgesamtheit6 unterscheidet. Für eine Regel A ⇒ B bedeutet z. B. ein
Improvement von 4, dass B innerhalb aller Transaktionen, in denen A enthalten ist, 4-mal häufiger
vertreten ist als in der Grundgesamtheit.
Berechnung von Assoziationsregeln
Die Berechnung von Assoziationsregeln mit einem minimalen Support s und einer minimalen Confidence c erfolgt in zwei Schritten:
1. Bestimmung aller Mengen von Items mit einem Support ≥ s (= Frequent Itemsets)
2. Bildung von Assoziationsregeln aus den Frequent Itemsets
Diese beiden Schritte werden im Folgenden näher erläutert.
Berechnung von Frequent Itemsets
Da für jede Assoziationsregel A ⇒ B mit minimalem Support s gilt, dass auch das entsprechende
Itemset A ∪ B einen Support ≥ s hat, reicht es für die Bestimmung von Assoziationsregeln aus, nur
die Frequent Itemsets zu betrachten und aus diesen die Mengen A und B abzuleiten.
Zur Bestimmung der Frequent Itemsets wird in dieser Arbeit der Apriori-Algorithmus verwendet.
Ein naives Vorgehen zur Berechnung der Frequent Itemsets ist nicht praktikabel, weil solch ein Algorithmus die Häufigkeit aller k-elementigen Mengen von Items berechnen müsste, es 2|items| solcher
Teilmengen gibt und die Anzahl der Items in den meisten Anwendungsfällen sehr groß ist.
6 Die
Grundgesamtheit bezeichnet die Menge aller Transaktionen.
12
2 Data Mining und Knowledge Discovery
Der Apriori-Algorithmus nutzt hingegen aus, dass jede Teilmenge eines Frequent Itemsets selbst auch
häufig sein muss. Es ist sicherlich einleuchtend, dass das Itemset x1 , x2 nur dann häufig sein kann,
wenn die Items x1 und x2 selbst häufig in den Transaktionen vorkommen. Durch Ausnutzung dieser
Eigenschaft der Frequent Itemsets kann die Anzahl der zu zählenden Teilmengen stark reduziert
werden, weil nur diejenigen überprüft werden müssen, für die gilt, dass alle Teilmengen häufig
sind. Die zu überprüfenden Itemsets werden Kandidaten genannt.
Der Apriori-Algorithmus berechnet zuerst die einelementigen Frequent Itemsets, dann die zweielementigen Frequent Itemsets, usw. Um z. B. die dreielementigen Frequent Itemsets zu bestimmen, werden zunächst alle dreielementigen Mengen von Items berechnet, die sich als „Join“ von zweielementigen Frequent Itemsets ergeben. Für jeden dieser Kandidaten wird dann überprüft, ob der Support
größer gleich dem minimalem Support ist. Wenn dies der Fall ist, wird der Kandidat in die Menge
der Frequent Itemsets aufgenommen.
Allgemein werden zum Auffinden von k+1-elementigen Frequent Itemsets nur die k+1-elementigen
Mengen von Itemsets überprüft, die durch einen „Join“ aus k-elementigen Frequent Itemsets gebildet
werden können und für die gilt, dass alle k-1-elementigen Teilmengen ebenfalls Frequent Itemsets
sind.
Mit dem Apriori-Algorithmus lassen sich auf diese Weise alle Frequent Itemsets in einer Menge von
Transaktionen bestimmen, ohne alle 2|items| Teilmengen von Items zu überprüfen. Der Algorithmus
stoppt, sobald in einer Iteration keine Frequent Itemsets gefunden werden.
Berechnung von Assoziationsregeln aus Frequent Itemsets
Wie weiter oben in der Motivation für die Berechnung von Frequent Itemsets bereits erwähnt, reicht
es aus, nur die Frequent Itemsets zu betrachten, um alle Assoziationsregeln mit einem minimalem
Support s und einer minimalen Confidence c zu finden. Um aus einem Frequent Itemset X alle Regeln
zu finden, die mindestens den minimalen Support haben, muss für jede Teilmenge A von X die
Regel A ⇒ ( X − A) gebildet werden.
Für jede dieser Regeln muss im Anschluss die Confidence überprüft werden. Ist die Confidence
einer Regel kleiner als die minimale Confidence c, wird diese Regel gestrichen, ansonsten wird sie
ausgegeben.
2.2.3 Klassifikation
Die Klassifikation ist eine Methode zur Vorhersage der Klassenzugehörigkeit von gegebenen Daten. Es geht somit um die Zuordnung von Daten zu Klassen. Im Gegensatz zum Clustering, bei
dem die Klassen a priori unbekannt sind, sind bei der Klassifikation die Klassen, denen die Daten
zugeordnet werden sollen, im Vorfeld bekannt.
Aufgabe der Klassifikation ist es, Objekte auf Grund ihrer Attributwerte einer vorgegebenen Klasse
zuzuordnen. Hierzu muss zunächst anhand von Trainingsobjekten eine Funktion erlernt werden,
mit der Objekte einer Klasse zugeordnet werden können. Mit Hilfe dieser Funktion ist es im Anschluss möglich, unklassifizierte Objekte anhand ihrer Attribute zu klassifizieren, d. h. einer Klasse
zuzuordnen.
Weitere Informationen zur Klassifikation sind in [ES00] und [Spe07] zu finden.
13
2 Data Mining und Knowledge Discovery
2.2.4 Regression
Die Regression ist genauso wie die Klassifikation eine Methode zur Vorhersage von Werten. Während bei der Klassifikation die Zugehörigkeit zu einer Klasse anhand von Attributwerten bestimmt
wird, wird die Regression verwendet, um numerische, kontinuierliche und geordnete Werte vorherzusagen. Auch hier muss zunächst anhand von Trainingsobjekten eine Funktion erlernt werden. Diese Funktion heißt Regressionsfunktion und hat allgemein die Form y = f ( x1 , ..., xn ), wobei
x1 , ..., xn die Attributwerte eines Objektes sind. Diese Funktion kann zur Prognose von Werten für
die nächsten Objekte verwendet werden.
Weitere Informationen zur Regression finden sich in [Spe07].
14
3 Kombination von Data Mining-Verfahren
Nachdem die Grundlagen des Data Mining in Kapitel 2 erläutert wurden, wird im dritten Kapitel
das „Kombinierte Data Mining“ behandelt. Hierzu wird der Begriff des „Kombinierten Data Mining“ zunächst definiert:
Definition 1 („Kombiniertes Data Mining“ [Hum04]) Die sequentielle Ausführung von Data MiningVerfahren wird als „Kombiniertes Data Mining“ bezeichnet.
Grundsätzlich kann demnach jede sequentielle Ausführung von Data Mining-Verfahren als „Kombiniertes Data Mining“ bezeichnet werden. Unter diese allgemeine Definition fallen alle KDD-Prozesse, in denen mindestens zwei Data Mining-Verfahren hintereinander ausgeführt werden.
Die Definition von [Stö04] schränkt diese Definition ein, indem das Kritierium des „Profitierens“
eingeführt wird:
Definition 2 („Kombiniertes Data Mining“ [Stö04]) Beim „Kombinierten Data Mining“ wird ein Data
Mining-Verfahren A vor einem Data Mining-Verfahren B ausgeführt, so dass B von A profitiert. B kann dazu
das Ergebnis von A und/oder eigens ermittelte Hilfsinformationen von A für B nutzen. B profitiert dann von
A, wenn das Ergebnis von B, gemäß einem geeignetem Gütemaß, besser ist [als ohne A], und/oder sich die
Laufzeit von B verringert.
Nach [Stö04] handelt es sich bei der sequentiellen Ausführung von Data Mining-Verfahren somit
nur dann um „Kombiniertes Data Mining“, wenn das zweite Verfahren durch die Kombination
bessere Ergebnisse liefert als ohne die Kombination.
Diese Definition ist allerdings nicht ganz unproblematisch, da die Qualität der Ergebnisse u. a. von
den verwendeten Daten abhängt. Somit ist es möglich, dass auf einer Datenmenge das zweite Verfahren vom ersten profitiert, dies aber auf einer anderen Datenmenge nicht der Fall ist. Aus diesem
Grund müssten zu jedem KDD-Prozess auch die zu analysierenden Daten bekannt sein, um zu
entscheiden, ob ein „Kombiniertes Data Mining“ durchgeführt wird.
Die ersten beiden Definitionen berücksichtigen nicht, dass auch andere Ausführungsreihenfolgen
als die sequentielle Ausführung von Data Mining-Verfahren möglich sind. So ist u. a. auch eine
parallele Ausführung von zwei Data Mining-Verfahren möglich. Diese alternativen Ausführungsreihenfolgen werden in der folgenden Definition berücksichtigt.
Definition 3 („Kombiniertes Data Mining“) Beim „Kombinierten Data Mining“ werden mindestens
zwei Data Mining-Verfahren so ausgeführt, dass mindestens eines dieser Verfahren die Ergebnisse und/oder
eigens ermittelte Hilfsinformationen der anderen Data Mining-Verfahren nutzen kann.
Wie in allen Definitionen deutlich wird, handelt es sich beim „Kombinierten Data Mining“ um eine
Kombination von mindestens zwei Data Mining-Verfahren. Die häufigste Ausführungsreihenfolge
15
3 Kombination von Data Mining-Verfahren
ist dabei die sequentielle Ausführung. Die Hauptgründe für die Kombination von Data MiningVerfahren sind die Verbesserung der Ergebnisse und die verbesserte Laufzeit der Verfahren.
In dieser Arbeit wird der Begriff des „Kombinierten Data Mining“ analog zur dritten Definition
verwendet. Die ersten beiden Definitionen sind auf Grund der Einschränkung auf sequentielle Ausführungsreihenfolgen nicht ausreichend, da u. a. für das implizite „Kombinierte Data Mining“ eine
erweiterte Definition benötigt wird, die auch andere Reihenfolgen zulässt. Die zweite Definition ist
auch auf Grund der Einschränkung auf profitable Verfahren problematisch. Die Profitabilität eines
Verfahrens stellt zwar eine wichtige Information über kombinierte Verfahren dar, sie sollte aus oben
genannten Gründen jedoch nicht zur Abgrenzung von herkömmlichen und kombinierten Verfahren verwendet werden. Auf die Profitabilität verschiedener Kombinationen wird u. a. im Abschnitt
3.3 näher eingegangen.
3.1 Erweiterung des Knowledge Discovery-Prozesses
In diesem Abschnitt wird eine Erweiterung des Knowledge Discovery-Prozesses für das sequentielle „Kombinierte Data Mining“ vorgestellt. Der KDD-Prozess für das „Kombinierte Data Mining“
unterscheidet sich vom oben vorgestellten KDD-Prozess, da mehrere Data Mining-Verfahren eingesetzt werden können. Der KDD-Prozess für das „Kombinierte Data Mining“ ist in Abbildung 3.1
dargestellt.
Abbildung 3.1: Überblick über die Stufen des erweiterten KDD-Prozesses1
Die einzelnen Schritte im KDD-Prozess für das „Kombinierte Data Mining“ bleiben im Vergleich
zum oben vorgestellten KDD-Prozess unverändert. Auch ist es weiterhin möglich, den KDD-Prozess
auf Grund der Erkenntnisse einer früheren Ausführung zu verändern.
Die Unterschiede zwischen den Prozessen bestehen darin, dass im KDD-Prozess für das „Kombinierte Data Mining“ die gefundenen Muster Eingaben in ein nachfolgendes Data Mining-Verfahren
sein können. Dazu bestehen zwei Möglichkeiten: Die Muster können entweder als neue Eingabedaten in das nachfolgende Verfahren eingebracht werden, oder sie können Hilfsinformationen zur
Verfügung stellen.
In beiden Fällen wird zunächst ein herkömmliches Data Mining durchgeführt. Die hierbei ermittelten Muster werden im Anschluss allerdings unterschiedlich genutzt.
Im ersten Fall dienen die gefundenen Muster als Eingabedaten für das nachfolgende Verfahren.
Diese Daten durchlaufen alle Phasen des KDD-Prozesses wie herkömmliche Daten. Dies bedeutet,
dass die gefundenen Muster gegebenfalls vor der weiteren Verarbeitung noch selektiert, bereinigt
und transformiert werden. Auf die aufbereiteten Daten wird danach ein weiteres Data MiningVerfahren angewendet. Im Anschluss können die gefundenen Muster entweder als neue Eingabedaten für eine weitere Iteration des erweiterten KDD-Prozesses verwendet werden oder sie werden
interpretiert, aufbereitet und für den Nutzer des Systems ausgegeben und/oder gespeichert.
1 Dargestellt
sind die Schritte 3-7 des KDD-Prozesses
16
3 Kombination von Data Mining-Verfahren
Im zweiten Fall werden die gefundenen Muster als Hilfsinformationen für das nachfolgende Verfahren verwendet. Die Zielsetzung der ersten Iteration des KDD-Prozesses sollte dabei so gewählt
werden, dass die Ergebnisse dieser Iteration direkt ohne weitere Aufbereitung vom nachfolgenden Verfahren verwendet werden können. Bei den Hilfsinformationen handelt es sich meist um
Informationen über die Daten, also Metainformationen, die im nachfolgenden Verfahren verwendet werden können, um die Ergebnisse des Data Mining zu verbessern. Ein Beispiel hierfür ist die
Gewinnung von Informationen über die Verteilung von Daten mittels einer Clusteranalyse und die
anschließende Nutzung dieser Information zur Erstellung eines verbesserten Decision Trees für die
Klassifizierung von Daten.
3.2 Arten des Kombinierten Data Mining“
”
Grundsätzlich können insgesamt fünf Arten des „Kombinierten Data Mining“ unterschieden werden. Diese Unterscheidung ist unabhängig von den verwendeten Data Mining-Verfahren. Die fünf
verschiedenen Arten sollen im Folgenden kurz erläutert werden.
Naives Kombiniertes Data Mining“
”
Beim naiven „Kombinierten Data Mining“ werden mindestens zwei Verfahren so miteinander kombiniert, dass das Nachfolgerverfahren die Ergebnisse des Vorgängerverfahrens nutzt. Im Kontext
des erweiterten KDD-Prozesses bedeutet dies, dass die Ergebnisse des Vorgängerverfahrens die Eingabedaten des Nachfolgerverfahrens sind. Diese Daten können vor dem eigentlichen Data Mining
noch weiter selektiert, transformiert oder bereinigt werden. Ein Beispiel für das naive „Kombinierte
Data Mining“ ist die Kombination aus Clustering und Assoziationsanalyse, bei der die Assoziationsanalyse für jeden Cluster separat durchgeführt wird. Bei der Betrachtung des kombinierten
Verfahrens können die einzelnen Data Mining-Verfahren isoliert untersucht werden.
Vorgängerverfahren kennt Nachfolgerverfahren
Bei dieser Art des „Kombinierten Data Mining“ berechnet das Vorgängerverfahren Hilfsinformationen für das Nachfolgerverfahren. Ein Beispiel für dieses Verfahren ist die Kombination aus Clustering und Klassifikation, bei der das Clustering Hilfsinformationen für die Klassifikation berechnet.
Bei diesen Hilfsinformationen kann es sich z. B. um Informationen über die Verteilung der Daten
handeln, damit bei der Erzeugung eines Decision Trees eine optimale Aufteilung erfolgen kann. In
diesem Fall muss das Clustering wissen, welche Attribute für die Klassifikation verwendet werden,
damit die Klassifikation vom Clustering profitieren kann. Denn nur wenn die Klassifikationsattribute auch für das Clustering verwendet werden, können die Ergebnisse des Clustering zur Erzeugung des Decision Trees verwendet werden. Daher können in dieser Konstellation nur dann bessere
Ergebnisse durch die Kombination von Data Mining-Methoden erzielt werden, wenn das Vorgängerverfahren das Nachfolgerverfahren kennt.
Nachfolgerverfahren kennt Vorgängerverfahren
Die Verfahrensart „Nachfolgerverfahren kennt Vorgängerverfahren“ nutzt den Effekt aus, dass das
Nachfolgerverfahren in vielen Fällen von einem vereinfachten Problem ausgehen kann, wenn es
nicht nur die Ergebnisse des Vorgängerverfahrens, sondern auch das Vorgängerverfahren kennt.
Ein Beispiel hierfür ist die Kombination aus Clustering und Klassifikation: Wenn ein Clustering mit
17
3 Kombination von Data Mining-Verfahren
zwei Attributen durchgeführt wird und das Ergebnis des Clustering stets konvexe Cluster2 sind,
muss der Klassifikationsalgorithmus die Clusterattribute nicht mehr berücksichtigen. Die optimale
Aufteilung zwischen zwei Clustern ergibt sich aus der Mittelsenkrechte zwischen den Clustermittelpunkten.
Vorgänger- und Nachfolgerverfahren kennen sich gegenseitig
Bei dieser Art des „Kombinierten Data Mining“ handelt es sich um die Kombination der Verfahren
„Vorgängerverfahren kennt Nachfolgerverfahren“ und „Nachfolgerverfahren kennt Vorgängerverfahren“.
Implizites Kombiniertes Data Mining“
”
Beim impliziten „Kombinierten Data Mining“ handelt es sich um die einzige Art des „Kombinierten
Data Mining“, bei der die beteiligten Verfahren nicht sequentiell ausgeführt werden. Bei dieser Art
des „Kombinierten Data Mining“ verwendet ein Data Mining-Verfahren zusätzlich zu seinen eigenen Methoden die Methoden und Techniken eines anderen Verfahrens. Auch hierfür kann die Kombination aus Clustering und Klassifikation als Beispiel verwendet werden: Es handelt sich z. B. um
ein implizites „Kombiniertes Data Mining“, wenn der Klassifikationsalgorithmus zur Aufteilung
von zwei Datenmengen in bestimmten Fällen einen Clusteringalgorithmus verwendet und anhand
der gefundenen Cluster die Aufteilungskritierien definiert.
3.3 Kombinationen aus zwei Verfahren
Im folgenden Abschnitt soll die Kombination von Data Mining-Verfahren untersucht werden, wobei
nur Kombinationen aus maximal zwei Verfahren betrachet werden. Kombinationen aus mehr als
zwei Verfahren werden in dieser Arbeit nicht untersucht. Bei den betrachteten Verfahren handelt es
sich um Clustering, Assoziationsanalyse, Klassifikation und Regression.
Grundsätzlich können mit diesen Verfahren 16 unterschiedliche Kombinationen gebildet werden.
Es ist aber zu beachten, dass nicht alle Verfahren sinnvoll kombiniert werden können. Die möglichen Kombinationen sind in Tabelle 3.1 dargestellt.
Clustering (C)
Assoziationsanalyse (A)
Klassifikation (K)
Regression (R)
Clustering (C)
C→C
A→C
K→C
R→C
Assoziationsanalyse (A)
C→A
A→A
K→A
R→A
Klassifikation (K)
C→K
A→K
K→K
R→K
Regression (R)
C→R
A→R
K→R
R→R
Tabelle 3.1: Mögliche Kombination aus zwei Verfahren
Im Folgenden werden diese Kombinationen kurz vorgestellt und auf ihre praktische Relevanz überprüft. Darüber hinaus wird zu jeder praktikablen Kombination auch ein möglicher Anwendungsfall
kurz vorgestellt.
2 Ein
Cluster ist genau dann konvex, wenn jeder Punkt innerhalb des Clusters mit jedem anderen Punkt innerhalb des
Clusters verbunden werden kann, ohne dass die Verbindungslinie die Grenze des Clusters schneidet.
18
3 Kombination von Data Mining-Verfahren
3.3.1 Kombinationen aus Clustering und Assoziationsanalyse
Clustering und Clustering (C → C)
Bei dieser Kombination werden zwei Clusterings durchgeführt. Hierdurch ist es möglich, die verwendeten Clusterattribute unterschiedlich zu gewichten. Werden zunächst die Daten nach den Attributen x1 , ..., xn und anschließend die Daten in den entstandenen Clustern nach den Attributen
y1 , ..., ym geclustert, wird das Ergebnis von den Attributen x1 , ..., xn dominiert. Das liegt daran, dass
die Attribute y1 , ..., ym nur die im ersten Schritt gefundenen Cluster weiter unterteilen. Dementsprechend haben die Attribute x1 , ..., xn einen stärkeren Einfluss auf das Ergebnis als die Attribute
y1 , ..., ym .
Clustering und Assoziationsanalyse (C → A)
Bei der Kombination aus Clustering und Assoziationsanalyse werden die Daten in einem ersten
Schritt in verschiedene Cluster aufgeteilt. Im zweiten Schritt wird für jeden Cluster eine Assoziationsanalyse durchgeführt. Hiervon erhofft man sich, Assoziationsregeln zu finden, die nur in einem Teilbereich der untersuchten Daten gelten. Die Kombination aus Clustering und Assoziationsanalyse ist das „Kombinierte Data Mining“-Verfahren, welches in dieser Arbeit näher untersucht
wird. Weitere Informationen zu dieser Kombination finden sich in Abschnitt 3.4.
Assoziationsanalyse und Clustering (A → C)
Bei der Kombination aus Assoziationsanalyse und Clustering wird zunächst eine Assoziationsanalyse auf dem vorhandenen Datenbestand durchgeführt. Die gefundenen Assoziationsregeln werden
im Anschluss geclustert, um zusammenhängende Gruppen von Assoziationsregeln zu finden. Dieser
Ansatz wird in der Arbeit [LSW97] untersucht. Es wird untersucht, wie mit Hilfe eines Clustering
aus einer großen Menge von Assoziationsregeln eine kleinere Menge mit generellen Regeln (siehe
Beispiel) erzeugt werden kann. Hierbei werden nur Regeln untersucht, deren Prämisse (linke Seite
der Regel) aus zwei numerischen Attributen und deren Konklusion (rechte Seite der Regel) aus kategorischen Attributen besteht. Nach der Assoziationsanalyse werden zunächst Blöcke von Regeln
mit gleicher Konklusion gebildet. Diese Blöcke werden anhand der Prämisse geclustert, wobei ein
Algorithmus verwendet wird, der nur rechteckige Cluster ohne Löcher produziert. Der Abstand
zwischen zwei Elementen ergibt sich aus der Differenz der beiden numerischen Attribute. Das Ergebnis eines solchen Clustering ist in Abbildung 3.2 dargestellt. Ein weiteres Zusammenfassen der
Cluster ist nicht möglich, weil der entstehende Cluster nicht mehr rechteckig wäre.
Dadurch, dass die Regeln eines Clusters jeweils in ihrer Konklusion übereinstimmen und die Attributwerte der Prämissen ohne Lücken aneinander angrenzen, können die Regeln eines Clusters jetzt
zu einer generelleren Regel zusammengefasst werden, die die Regeln im Cluster ersetzt. Dies soll
an einem Beispiel verdeutlicht werden.
Gegeben seinen die acht Regeln R1 bis R8 die in Abbildung 3.2 den Cluster unten links bilden:
R1 : salary={20-25k} ∧ age=21 ⇒ kat1
R2 : salary={20-25k} ∧ age=22 ⇒ kat1
R3 : salary={25-30k} ∧ age=21 ⇒ kat1
R4 : salary={25-30k} ∧ age=22 ⇒ kat1
R5 : salary={30-35k} ∧ age=21 ⇒ kat1
R6 : salary={30-35k} ∧ age=22 ⇒ kat1
R7 : salary={35-40k} ∧ age=21 ⇒ kat1
R8 : salary={35-40k} ∧ age=22 ⇒ kat1
19
3 Kombination von Data Mining-Verfahren
Abbildung 3.2: Beispiel zur Kombination aus Assoziationsanalyse und Clustering
Auf Grund der rechteckigen Clusterform ohne Lücken lassen sich diese Regeln zu folgender Regel
zusammenfassen:
salary={20-40k} ∧ age={21-22} ⇒ kat1
Weitere Informationen zu diesem Anwendungsfall finden sich in [LSW97].
Assoziationsanalyse und Assoziationsanalyse (A → A)
Die Kombination von zwei Assoziationsanalysen erfolgt in zwei Phasen. Die Ergebnisse der ersten
Phase dienen hierbei als Eingabe in die zweite Phase. Gegeben seien die n Mengen von Transaktionen T1 bis Tn . Für jede dieser Mengen wird in der ersten Phase zunächst eine Assoziationsanalyse
durchgeführt. Die Ergebnisse dieser Analysen sind die n Mengen von Assoziationsregeln A1 bis
An , wobei die Menge Ai das Ergebnis der Assoziationsanalyse auf der Menge Ti von Transaktionen
ist. Die Mengen von Assoziationsregeln A1 bis An können auch als Transaktionen angesehen werden. Jede Menge Ai stellt hierbei eine Transaktion dar und jede Regel innerhalb dieser Menge stellt
ein Item innerhalb der Transaktion dar. Mit diesen Transaktionen wird im Anschluss eine weitere
Assoziationsanalyse durchgeführt. Das Ergebnis dieser Analyse sind Informationen über Regeln,
die häufig zusammen auftreten. Dies soll an einem Beispiel verdeutlicht werden:
Gegeben seien die Mengen von Transaktionen T1 und T2 . Die Assoziationsanalyse mit den Transaktionen T1 liefert die Regeln a1 ⇒ b1 und a2 ⇒ b2 . Die Assoziationsanalyse mit T2 liefert die gleichen
Regeln.
Diese Regelmengen können auch als Transaktionen aufgefasst werden. Damit ergeben sich folgende
Transaktionen:
Ta : {a1 ⇒ b1 , a2 ⇒ b2 }
Tb : {a1 ⇒ b1 , a2 ⇒ b2 }
Die zweite Assoziationsanalyse liefert die Regeln (a1 ⇒ b1 ) ⇒ (a2 ⇒ b2 ) und (a2 ⇒ b2 ) ⇒ (a1 ⇒ b1 ).
Für die untersuchten Daten gilt also immer: Wenn die Regel a1 ⇒ b1 gilt, dann gilt auch die Regel
a2 ⇒ b2 .
20
3 Kombination von Data Mining-Verfahren
Zur Kombination von zwei Assoziationsanalysen gibt es noch eine weitere Möglichkeit. Dabei bilden nicht die gefundenen Regeln, sondern die Frequent Itemsets die Eingabe in das zweite Verfahren. Im ersten Schritt werden die Frequent Itemsets einer Menge von Transaktionen mit Hilfe
einer Assoziationsanalyse ermittelt. Jedes Frequent Itemset wird als eine Transaktion für die zweite Assoziationsanalyse angesehen. Die zweite Assoziationsanalyse berechnet, welche Items in den
Frequent Itemsets häufig gemeinsam auftreten. Folglich werden die Frequent Items in den Frequent
Itemsets einer vorangegangenen Assoziationsanalyse berechnet.
3.3.2 Clustering und Klassifikation/Regression (C → K / C → R)
Bei den kombinierten Verfahren aus Clustering und Klassifikation bzw. Clustering und Regression
werden die Daten genau wie bei der Kombination aus Clustering und Assoziationsanalyse im ersten
Schritt in verschiedene Cluster aufgeteilt. Im Anschluss wird für jeden Cluster eine eigene Funktion
zur Klassifizierung der Daten bzw. zur Vorhersage der Werte erlernt. Man erhofft sich dadurch, dass
bestimmte Eigenschaften der Daten innerhalb der Cluster ausgenutzt werden können, um die Klassifizierung und die Regression zu verbessern. Bei diesen Eigenschaften handelt es sich um Attributkombinationen, welche die Daten innerhalb eines Clusters gut unterscheiden, die aber auf dem
gesamten Datenbestand keine oder nur eine schlechte Unterscheidungswirkung entfalten können.
Als Beispiel könnte die Klassifikation von Filmen anhand ihres Budgets dienen. Die Klassifizierungsfunktion soll anhand des Budgets eine Prognose über das Rating eines Filmes machen. Obwohl tendenziell gilt, dass je höher das Budget eines Filmes ist, desto höher auch sein Rating ist,
liefert diese Klassifikation ein eher schlechtes Ergebnis. Der Grund ist, dass die Budgets von Filmen
abhängig von Produktionsland, Genre, etc. sehr stark voneinander abweichen. So ist ein Actionfilm
aus den USA sicherlich deutlich teurer produziert als ein tschechisches Märchen mit gleicher Bewertung. Durch eine Zusammenfassung von ähnlichen Filmen (z. B. durch Clustering nach Land
und Genre) hofft man, diese Effekte deutlich zu reduzieren, so dass in den Clustern die einfache
Annahme, je höher das Budget, desto höher auch der Erfolg, zumindest mit einer höheren Wahrscheinlichkeit gilt und somit die Clusteringergebnisse des „Kombinierten Data Mining“ bessere
Resultate liefern als ohne eine Kombination.
Die Data Mining-Verfahren Clustering und Klassifikation können auch auf eine andere Art kombiniert werden, so dass eine Verbesserung der Ergebnisse erzielt werden kann. Dabei werden mit Hilfe
des Clustering Hilfsinformationen für die Klassifikation berechnet, so z. B. Informationen über die
Verteilung der Daten. Die Hilfsinformationen werden einem modifiziertem Klassifikationsalgorithmus über eine vordefinierte Schnittstelle zur Verfügung gestellt. Dieser kann die Hilfsinformationen
nutzen, um die Klassifizierung zu optimieren. Falls der Klassifikationsalgorithmus beispielsweise
einen Decision Tree zur Klassifizierung verwendet, können u. a. die Reihenfolge, in der die Attribute zur Unterscheidung verwendet werden, und die idealen Aufteilungen der Daten mit Hilfe der
Hilfsinformationen optimiert werden. Dieser Ansatz wurde in den Arbeiten [Hum04] und [Stö04]
der Universität Linz ausführlich behandelt.
3.3.3 Assoziationsanalyse und Klassifikation/Regression (A → K / A → R)
Die Kombination aus Assoziationsanalyse und Klassifikation kann theoretisch zur Klassifizierung
von Mengen von Transaktionen verwendet werden, wobei jeweils eine Menge von Transaktionen
ein zu klassifizierendes Objekt darstelllt. Hierzu wird zunächst für jede Menge von Transaktionen
eine Assoziationsanalyse durchgeführt. Anhand der gefundenen Regeln kann die Zuweisung in die
entsprechenden Klassen erfolgen. Anstelle der Regeln zur Klassifizierung der Menge können auch
die Frequent Itemsets als Ergebnis der Assoziationsanalyse verwendet werden.
21
3 Kombination von Data Mining-Verfahren
Die Kombination aus Assoziationsanalyse und Regression ist zwar u. U. technisch möglich, aber
Anwendungsfälle für diese Kombination sind nur schwer vorstellbar. Der Grund ist, dass die Regression nur kontinuierliche Werte als Eingabe verarbeiten kann. Daher soll auf diese Kombination
nicht näher eingegangen werden.
3.3.4 Klassifikation/Regression und Clustering (K → C / R → C)
Die Kombinationen aus Klassifikation und Clustering bzw. Regression und Clustering können
durchaus interessante Ergebnisse liefern. Zunächst wird eine Klassifikation/Regression der Eingabedaten durchgeführt. Das Ergebnis wird als zusätzliches Attribut zu den Daten hinzugefügt.
Mit den erweiterten Daten kann ein Clustering durchgeführt werden, wobei das Ergebnis der Klassifikation/Regression als „normales“ Clusterattribut in das Clustering einbezogen wird. Mit dieser Technik ist es u. a. möglich, Attribute mit null-Werten zu vervollständigen, wobei mit Hilfe
der Regression lediglich numerische Attribute vervollständigt werden können. Zur Vervollständigung wird zunächst mit Hilfe der vorhandenen vollständigen Datensätze eine Klassifizierungsfunktion/Regressionsfunktion erlernt. Mit dieser können die fehlenden Werte prognostiziert werden
und es können vollständige Daten im Clusteringverfahren verwendet werden.
3.3.5 Klassifikation/Regression und Assoziationsanalyse (K → A / R → A)
Auch bei der Kombination aus Klassifikation und Assoziationsanalyse werden die Daten zunächst
klassifiziert, bei der Kombination aus Regression und Assoziationsanalyse werden zunächst die zu
prognostizierenden Werte berechnet. Das Ergebnis der Klassifikation bzw. der Regression wird als
zusätzliches Attribut zu den Daten hinzugefügt. Im Anschluss wird eine Assoziationsanalyse mit
den ergänzten Daten durchgeführt. Hierbei werden zwei unterschiedliche Arten von Regeln gefunden: Einerseits Regeln, die nur aus den ursprünglichen Attributen bestehen, und andererseits
Regeln, die auch das Attribut einbeziehen, welches durch die Klassifikation/Regression hinzugefügt wurde. Die Assoziationsregeln, die nur aus den ursprünglichen Attributen bestehen, hätte man
allerdings auch ohne die Kombination aus Klassifikation und Assoziationsanalyse bzw. Regression
und Assoziationsanalyse erhalten. Die interessanten Regeln sind diejenigen, die das neue Attribut
einbeziehen. Hierbei können wieder zwei unterschiedliche Arten von Regeln unterschieden werden: Einerseits die Regeln, die das hinzugefügte Attribut in der Prämisse enthalten, andererseits die
Regeln, die es in der Konklusion enthalten. Bei den Regeln, die das neue Attribut in der Konklusion
beinhalten, handelt es sich mit großer Wahrscheinlichkeit um die Regeln, welche zur Klassifizierung
der Daten verwendet wurden, falls hierzu ein regelbasierter Klassifikator verwendet wurde. Falls
das neue Attribut allerdings in der Prämisse einer Regel vorkommt, wurde eine Regel gefunden, die
ohne die Kombination nicht hätte gefunden werden können. Diese Regeln können einerseits neues
Wissen repräsentieren oder andererseits eine neue (einfachere) Repräsentation für bereits bekanntes
Wissen darstellen.
3.3.6 Kombinationen aus Klassifikation und Regression
In diesem Abschnitt werden die kombinierten Verfahren Klassifikation und Klassifikation (K → K),
Klassifikation und Regression (K → R), Regression und Klassifikation (R → K) und Regression und
Regression (R → R) näher untersucht.
Durch die Kombination der Data Mining-Verfahren Klassifikation und Regression bzw. Regression
und Regression können im Vergleich zum herkömmlichen Data Mining vermutlich keine verbes-
22
3 Kombination von Data Mining-Verfahren
serten Ergebnisse erzielt werden. Bei der Kombination aus Klassifikation und Regression wird zunächst eine Prognose für die Zugehörigkeit eines Objektes zu einer Klasse durch die Klassifikation
berechnet. Bei der Kombination aus Regression und Regression wird die Prognose mit Hilfe der Regressionsfunktion berechnet. In beiden Fällen kann das zweite Verfahren, also die Regression, die
gleichen Attribute zur Berechnung der Prognose verwenden wie das erste Verfahren. Zusätzlich
kann auf das Ergebnis des ersten Verfahrens zugegriffen werden. Da dieses Ergebnis von den anderen Attributen abhängig ist, bringt die Einbeziehung keine neuen Informationen. Dementsprechend
kann das zweite Verfahren nur auf die gleichen Daten wie das erste Verfahren zugreifen und deshalb
keine besseren Ergebnisse liefern. Denn das zweite Verfahren ist so mächtig, dass es die Ergebnisse
des ersten Verfahrens mitberechnen kann. Daher können die Kombinationen aus Klassifikation und
Regression bzw. aus Regression und Regression auch insgesamt keine besseren Ergebnisse liefern
als ein herkömmliches Data Mining.
Wenn es das Ziel der Klassifikation ist, lediglich eine möglichst gute Prognose für bisher unbekannte Werte zu berechnen, dann verhalten sich die Verfahren Klassifikation und Klassifikation
bzw. Regression und Klassifikation analog zu den obigen Verfahren und können somit ebenfalls
keine Verbesserung der Ergebnisse erzielen. Sollen diese Verfahren aber zusätzlich zu einer guten
Prognose möglichst leicht verständliche und aussagekräftige Regeln zur Klassifizierung der Daten
bereitstellen, kann durch die Kombination eine Verbesserung erreicht werden, da hierbei transitive
Abhängigkeiten aufgespalten werden können.
Dies soll an einem Beispiel verdeutlicht werden. In einem Datenbestand sollen folgende Abhängigkeiten gelten:
Lieblingsfarbe = rosa ⇒ Geschlecht = weiblich ⇒ Art des Kunden = guter Kunde
Lieblingsfarbe = blau ⇒ Geschlecht = männlich ⇒ Art des Kunden = schlechter Kunde
Die Klassifikation, ob es sich bei einem Kunden um einen guten oder einen schlechten Kunden
handelt, kann also direkt über die Lieblingsfarbe oder das Geschlecht erfolgen. Eine herkömmliche
Klassifikation zur Vorhersage der Art des Kunden würde eine der folgende Regelmengen finden
und zur Klassifikation verwenden:
Lieblingsfarbe = rosa ⇒ Art des Kunden = guter Kunde
Lieblingsfarbe = blau ⇒ Art des Kunden = schlechter Kunde
oder
Geschlecht = weiblich ⇒ Art des Kunden = guter Kunde
Geschlecht = männlich ⇒ Art des Kunden = schlechter Kunde
Ein „Kombiniertes Data Mining“, bei dem zunächst eine Klassifikation nach Geschlecht und danach
eine Klassifikation nach der Art des Kunden erfolgt, würde folgende Regelmenge finden und zur
Klassifikation verwenden:
Lieblingsfarbe = rosa ⇒ Geschlecht = weiblich
Lieblingsfarbe = blau ⇒ Geschlecht = männlich
Geschlecht = weiblich ⇒ Art des Kunden = guter Kunde
Geschlecht = männlich ⇒ Art des Kunden = schlechter Kunde
Das Ergebnis der Klassifikation ist dasselbe wie beim herkömmlichen Data Mining. Die gefundenen Regeln sind allerdings aussagekräftiger als beim herkömmlichen Data Mining - sie enthalten
23
3 Kombination von Data Mining-Verfahren
mehr Wissen. Im Vergleich zur Kombination aus Klasifikation und Klassifikation fehlen beim herkömmlichen Data Mining Informationen: Entweder fehlen die Informationen über die transitive
Abhängikeit der Attribute wie bei der ersten Regelmenge oder der Zusammenhang zwischen zwei
Attributen ist in den Regeln nicht enthalten. Dies trifft bei der zweiten Regelmenge zu, bei der der
Zusammenhang zwischen Farbe und Geschlecht von den Regeln nicht erfasst wird.
3.3.7 Zusammenfassung
In Tabelle 3.2 sind die Ergebnisse der Analyse der kombinierten Verfahren dargestellt. Angegeben
sind die möglichen Kombinationen mit Anwendungsfällen. In Klammern dargestellt sind die möglichen Kombinationen, bei denen die Anwendungsfälle nicht ganz klar sind. Kombinationen, die
nur technisch möglich sind, aber keine verwertbaren oder keine verbesserten Ergebnisse liefern,
sind nicht mit angegeben.
Clustering (C)
Assoziationsanalyse (A)
Klassifikation (K)
Regression (R)
Clustering (C)
C→C
A→C
K→C
R→C
Assoziationsanalyse (A)
C→A
A→A
K→A
R→A
Klassifikation (K)
C→K
(A → K)
(K → K)
(R → K)
Regression (R)
C→R
(A → R)
Tabelle 3.2: Kombinationen aus zwei Verfahren, die zu einer Verbesserung der Ergebnisse führen
3.4 Kombination aus Clustering und Assoziationsanalyse
Bei der Kombination aus Clustering und Assoziationsanalyse wird zunächst ein Clustering eines
Datenbestandes durchgeführt. Anhand des Clusteringergebnisses werden die Transaktionen für die
Assoziationsanalyse in verschiedene Mengen aufgeteilt. Für jede dieser Mengen wird im Anschluss
eine Assoziationsanalyse durchgeführt. Der gesamte Prozess ist in Abbildung 3.3 dargestellt und
soll im Folgenden ausführlich erläutert werden. Das Vorgehen bei der Kombination aus Clustering
und Assoziationsanalyse zum „Kombinierten Data Mining“ lässt sich grundsätzlich in sechs Phasen
unterteilen:
1. Auswahl der Daten (Selektion)
2. Vorbereitung der Daten für das Clustering (Preprocessing / Transformation)
3. Clustering der Daten
4. Vorbereitung der Daten für die Assoziationsanalyse (Preprocessing / Transformation)
5. Assoziationsanalyse
6. Präsentation der Ergebnisse
Auswahl der Daten
Im ersten Schritt des Prozesses werden die Daten für das gesamte „Kombinierte Data Mining“ ausgewählt. Zu diesen Daten gehören die Datensätze, die für das Clustering verwendet werden sollen,
und die Transaktionen für die Assoziationsanalyse. Die Zuordnung der zusammengehörigen Datensätze und Transaktionen erfolgt über eine einheitliche ID. Ein Schema für eine mögliche Auswahl
ist in Abbildung 3.4 dargestellt. Aus der Basistabelle lassen sich die Datensätze für das Clustering
24
3 Kombination von Data Mining-Verfahren
Abbildung 3.3: Kombination aus Clustering und Assoziationsanalyse
und für die Assoziationsanalyse extrahieren. Hierbei müssen zwar nicht alle Datensätze der Basistabelle übernommen werden, für alle zu berücksichtigenden Datensätze muss aber gelten, dass
sowohl Einträge in der Tabelle „Clusterdaten“ als auch in der „Transaktionen“-Tabelle zu finden
sind.
Die Daten in den unterschiedlichen Tabellen können als verschiedene Sichtweisen auf dasselbe Objekt angesehen werden. Dementsprechend kann in den einzelnen Schritten je nach Bedarf auf die
verschiedenen Tabellen zugegriffen werden. Die Daten aus der Tabelle „Clusterdaten“ werden für
die ersten drei Schritte des Prozesses verwendet, die Daten der „Transaktionen“-Tabelle hingegen
in den Schritten vier und fünf. Im letzten Schritt erfolgt lediglich die Präsentation der Ergebnisse.
Hierbei wird auf keine der Tabellen zugegriffen.
Abbildung 3.4: Auswahl der Daten für das „Kombinierte Data Mining“
Die Auswahl der Daten soll an einem Beispiel verdeutlich werden. Die Grundlage des Beispiels bilden Einkäufe in einem Supermarkt. Die Basistabelle enthält neben der ID des Einkaufs die gekauften Waren und (Meta-)Informationen über den Einkauf. Diese können z. B. der Beruf des Kunden,
die Postleitzahl des Kunden oder die Uhrzeit des Einkaufes sein. Die Daten, die für das Clustering ausgewählt werden, sind die ID des Einkaufes und diejenigen Attribute, die für das Clustering
verwendet werden sollen. In diesem Fall könnten diese Attribute der Beruf des Kunden, die Postleitzahl des Kunden oder die Uhrzeit des Einkaufs sein. Die ausgewählten Daten für die Assoziationsanalyse bestehen aus der ID des Einkaufs und aus den gekauften Produkten (Items).
Vorbereitung der Daten für das Clustering (Preprocessing / Transformation)
Die Vorbereitung der Daten für das Clustering beim „Kombinierten Data Mining“ ist identisch mit
der Vorbereitung der Daten beim herkömmlichen Data Mining. In dieser Phase können Redundan-
25
3 Kombination von Data Mining-Verfahren
zen und Inkonsistenzen beseitigt, fehlende Werte ergänzt und Daten aus verschiedenen Quellen
integriert werden. Bei der Transformation werden Daten in eine für das Clustering gültige Form
gebracht. Zur Transformation gehört auch das Zusammenfassen verschiedener Datensätze, die sich
auf das gleiche reale Objekt beziehen, wenn der Clusteralgorithmus für jedes Objekt einen einzelnen Datensatz erwartet. So können z. B. die Datensätze (1,Deutschland) und (1,USA) zum Datensatz
(1,"Deutschland,USA") zusammengefasst werden, wenn sie sich auf das gleiche Objekt (wie hier auf
das Objekt 1) beziehen.
Clustering der Daten
Im dritten Schritt wird ein herkömmliches Clustering der Daten durchgeführt und die gefundenen
Cluster werden ausgegeben. Anstatt des Clustering können an dieser Stelle in bestimmten Fällen
auch eine einfache Gruppierung durchgeführt und die einzelnen Gruppen ausgegeben werden. Für
den nachfolgenden Prozess ist es nicht von Bedeutung, auf welche Weise die Cluster bzw. Gruppen
entstanden sind.
Vorbereitung der Daten für die Assoziationsanalyse (Preprocessing / Transformation)
Nach dem Clustering der Daten werden ab diesem Schritt die Daten aus der „Transaktionen“Tabelle für die einzelnen Objekte verwendet.
Bei der Vorbereitung der Daten für die Assoziationsanalyse werden prinzipiell dieselben Schritte
wie bei der Vorbereitung der Daten für das Clustering durchgeführt. Auch hier können Redundanzen und Inkonsistenzen beseitigt und Daten aus verschiedenen Quellen integriert werden. Die
Ergänzung von fehlenden Werten ist meist nicht möglich, da fehlende Items in Transaktionen nur
selten identifiziert werden können. Bei der Beseitigung von Redundanzen und Inkonsistenzen ist zu
beachten, dass diese über alle Objekte hinweg erfolgen sollte und nicht nur innerhalb der einzelnen
Cluster.
Zur Vorbereitung der Daten gehört auch deren Transformation. Die Daten werden in eine für die
folgenden Schritte gültige Form gebracht. Bei der Assoziationsanalyse werden die Daten meist
als Transaktionsmatrix dargestellt. Eine Transaktionsmatrix ist eine Boolesche Matrix, die für jede
Transaktion eine Zeile und für jedes Item eine Spalte besitzt. Kommt ein Item j in einer Transaktion
i vor, dann ist der Wert der Matrix an der Stelle i, j gleich 1, ansonsten 0.
Transaktion1
...
Transaktioni
...
Item1
...
...
...
Item j
...
...
{0, 1}
...
...
...
Tabelle 3.3: Transaktionsmatrix
Assoziationsanalyse
In diesem Schritt wird für jede Menge von Transaktionen, die beim Clustering entstanden ist, eine Assoziationsanalyse durchgeführt. Hierbei handelt es sich um eine Assoziationsanalyse wie sie
aus dem herkömmlichem Data Mining bekannt ist. Nähere Informationen hierzu finden sich in
Abschnitt 2.2.2. Als Ergebnis entsteht für jede Menge von Transaktionen eine Menge von Assoziationsregeln, die auch leer sein kann.
26
3 Kombination von Data Mining-Verfahren
Bei diesem Schritt ist zu beachten, dass der definierte Support an die Größe des Clusters angepasst
werden sollte. Wird z. B. eine Assoziationsanalyse auf einem Datenbestand mit 1000 Transaktionen
durchgeführt und der Support soll 1% betragen, bedeutet dies, dass eine Menge von Items in mindestens zehn Transaktionen vorkommen muss, damit sie den nötigen Support erreicht. Werden die
Transaktionen nun in zwei gleich große Cluster mit je 500 Transaktionen zerlegt und der relative
Support nicht angepasst, so würde es reichen, wenn eine Menge von Items in fünf Transaktionen
vorkommt, um den nötigen Support zu erreichen. Da dieser Effekt in der Regel nicht erwünscht
ist, sollte der Support an die Größe der Cluster angepasst werden. In diesem Beispiel würde es bedeuten, dass für jeden Cluster eine Assoziationsanalyse mit einem Support von 2% durchgeführt
werden muss. In diesem Fall wird der relative Support also angepasst, so dass der absolute Support
gleich bleibt.
Präsentation der Ergebnisse
Im letzten Schritt werden die gefundenen Ergebnisse präsentiert. Präsentiert werden im Normallfall
eine kurze Beschreibung der gefundenen Cluster und die in den Clustern gefundenen Assoziationsregeln.
3.4.1 Einordnung der Kombination aus Clustering und Assoziationsanalyse
Die Arten „Vorgängerverfahren kennt Nachfolgerverfahren“, „Nachfolgerverfahren kennt Vorgängerverfahren“ und „Vorgänger- und Nachfolgerverfahren kennen sich gegenseitig“ lassen sich ausschließen, da einerseits im gesamten Prozess keine Besonderheiten der beteiligten Verfahren berücksichtigt werden und andererseits die Verfahren auch durch andere Verfahren (z. B. Clustering
durch eine Gruppierung) oder zumindest die verwendeten Algorithmen durch andere Algorithmen
ausgetauscht werden können. Wichtig ist nur, dass die beteiligten Verfahren die Ergebnisse in einer
definierten Form bereitstellen.
Auch handelt es sich nicht um das „Implizite Kombinierte Data Mining“, bei dem ein Data MiningVerfahren von einem anderen Verfahren aufgerufen und in dieses eingebunden wird.
Die Kombination aus Clustering und Assoziationsanalyse ist eine Abwandlung des naiven „Kombinierten Data Mining“. Beim naiven Data Mining werden zwei Verfahren so kombiniert, dass das
zweite Verfahren die Ergebnisse des ersten Verfahrens nutzt. Bei der hier vorgestellten Kombination
aus Clustering und Assoziationsanalyse werden die Ergebnisse des Clustering zwar nicht direkt
in die Assoziationsanalyse übernommen, da aber bei der Assoziationsanalyse und beim Clustering
nur auf unterschiedliche Eigenschaften derselben Objekte zugegriffen wird, handelt es sich auch bei
der hier vorgestellten Kombination aus Clustering und Assoziationsanalyse um ein naives „Kombiniertes Data Mining“.
3.4.2 Vor- und Nachteile durch die Kombination von Clustering und
Assoziationsanalyse
Durch die Kombination von Clustering und Assoziationsanalyse erhofft man sich, wie bei den meisten anderen Kombinationen auch, eine Verbesserung der Laufzeit, eine Verbesserung des Speicherplatzbedarfs der Verfahren und/oder eine Verbesserung der Ergebnisse. In diesem Abschnitt soll
darauf eingegangen werden, unter welchen Bedingungen wirklich eine Verbesserung durch diese
Kombination erreicht werden kann und unter welchen Umständen es sogar zu einer Verschlechterung der Ergebnisse durch die Kombination der Verfahren kommen kann.
27
3 Kombination von Data Mining-Verfahren
Verbesserung der Ergebnisse
Die Verbesserung der Ergebnisse kommt bei dieser Kombination dadurch zustande, dass bestimmte Regeln nicht für den gesamten Datenraum gleich gut gelten, sondern dass diese Regeln nur in
einem bestimmten Bereich der gesamten Daten gelten oder zumindest in einem bestimmten Bereich
besonders gut bzw. zuverlässig sind. Das entscheidende Maß, welches durch die Kombination verbessert wird, ist bei der Kombination aus Clustering und Assoziationsanalyse also die Confidence
einer Regel. Die Erhöhung der Confidence kommt dadurch zustande, dass Transaktionen, die die
Prämisse und die Konklusion erfüllen, und Transaktionen, die nur die Prämisse, aber nicht die Konklusion erfüllen, unter Umständen unterschiedlichen Clustern zugeordnet werden.
Dies soll an einem Beispiel erläutert werden. Gegeben seien hierzu folgende sechs Einkäufe in einem
Supermarkt:
ID
1
2
3
4
5
6
Uhrzeit
8:05
8:15
8:30
11:45
12:00
14:00
gekaufte Artikel
Brötchen, Milch, Wurst
Brötchen, Wurst
Brötchen, Schinken, Wurst
Eier, Käse, Wurst
Käse, Wurst
Wurst
Einkäufe in einem Supermarkt
Durch ein Clustering mit der Uhrzeit als Clusterattribut und durch eine dem Clusteringergebnis
entsprechende Aufteilung der Transaktionen ergeben sich folgende zwei Mengen von Transaktionen:
ID
1
2
3
Uhrzeit
8:05
8:15
8:30
gekaufte Artikel
Brötchen, Milch, Wurst
Brötchen, Wurst
Brötchen, Schinken, Wurst
ID
4
5
6
Uhrzeit
11:45
12:00
14:00
Cluster 1
gekaufte Artikel
Eier, Käse, Wurst
Käse, Wurst
Wurst
Cluster 2
Vergleicht man nun die Confidence der Regel Wurst ⇒ Brötchen in den beiden Fällen, dann stellt
man fest, dass sich die Confidence dieser Regel durch die Kombination aus Clustering und Assoziationsanalyse erhöht. Im nicht-kombinierten Fall gilt für die Confidence
con f idence(Wurst ⇒ Brötchen) =
3
= 50%.
6
Durch die Kombination ergibt sich hingegen eine Confidence von
con f idence(Wurst ⇒ Brötchen) =
3
= 100%
3
für den ersten Cluster und für den zweiten Cluster eine Confidence von
con f idence(Wurst ⇒ Brötchen) =
0
= 0%.
3
Das heißt, dass man durch die Kombination von Data Mining-Verfahren zusätzliches Wissen gewinnen kann. Bei der Kombination aus Clustering und Assoziationsanalyse muss hierzu lediglich
28
3 Kombination von Data Mining-Verfahren
bekannt sein, in welchem Cluster man sich befindet. Für das obige Beispiel bedeutet dies u. a., dass
morgens bzw. vormittags immer die Regel gilt, wenn Wurst gekauft wird, dann werden auch Brötchen gekauft. Am Nachmittag hingegen gilt diese Regel nie.
Neben der Erhöhung der Confidence von bekannten Regeln kann die Kombination von Clustering
und Assoziationsanalyse auch dazu führen, dass „neue“ Regeln entdeckt werden. Wenn eine Regel
nur in einem bestimmten Bereich der Daten gültig ist, wird sie im Normalfall bei einer Assoziationsanalyse eine Confidence erreichen, die kleiner ist als die minimale Confidence. Durch die Kombination von Clustering und Assoziationsanalyse ist es allerdings möglich, dass die Confidence dieser
Regel soweit erhöht wird, dass sie die minimale Confidence erreicht und die Regel zur Ergebnismenge der Assoziationsanalyse für den entsprechenden Cluster gehört.
Die Kombination aus Clustering und Assoziationsanalyse ist nicht nur in der Lage, die Zuverlässigkeit einer Regel zu erhöhen, sondern sie kann auch zu einer Erhöhung des Supports einer Regel
führen. Dies liegt daran, dass die Daten durch das Clustering nicht gleichmäßig verteilt werden.
Ist z. B. in einer Menge von 1000 Transaktionen eine Menge von Items zehnmal enthalten, bedeutet
10
dies einen Support von 1000
= 1%. Werden die Transaktionen durch ein Clustering in zwei gleich
große Cluster aufgeteilt und liegen alle Transaktionen, die diese Menge von Items enthalten, in ei10
nem Cluster, bedeutet dies, dass der Support dieser Menge von Items auf 500
= 2% ansteigt. Da
durch ein gutes Clustering häufig Transaktionen mit ähnlichen Items in einem Cluster zusammengefasst werden, lässt sich eine Erhöhung des Supports in vielen Fällen bei der Kombination aus
Clustering und Assoziationsanalyse feststellen.
Verschlechterung der Ergebnisse
In bestimmten Fällen, insbesondere bei der Auswahl von ungeeigneten Clusterattributen, können
die Ergebnisse durch die Kombination von Clustering und Assoziationsanalyse verschlechtert werden. Bei der Verschlechterung der Ergebnisse enthält die Ergebnismenge der Assoziationsanalyse
weniger Regeln als ohne die Kombination. Hierfür ist der Support und insbesondere die Anpassung des Supports an die Clustergröße verantwortlich. Die Anpassung kann zusammen mit einer
schlechten Aufteilung der Transaktionen dafür sorgen, dass eine Regel das Kriterium des minimalen Supports nicht mehr erfüllt. Dies soll an einem Beispiel verdeutlich werden:
Gegeben sind 1000 Transaktionen und ein minimaler Support von 1%. Jede Regel muss also in
mindestens zehn Transaktionen vorkommen, um zur Ergebnismenge zu gehören. Werden die 1000
Transaktionen nun in zwei gleich große Cluster mit je 500 Transaktionen aufgeteilt, muss auf Grund
der Anpassung des Supports eine Regel in mindestens 2% aller Transaktionen innerhalb eines Clusters gelten, damit sie weiterhin für zehn Transaktionen gültig ist. Gibt es nun eine Regel, die in genau zehn Transaktionen gilt, wird diese Regel bei einer Assoziationsanalyse (ohne „Kombiniertes
Data Mining“) gefunden. Ergibt sich bei der Kombination von Clustering und Assoziationsanalyse
allerdings eine Aufteilung der zehn Transaktionen, so dass die Regel in beiden Clustern in genau
fünf Transaktionen gilt, erreicht die Regel in jedem Cluster nur einen Support von einem Prozent.
Dies hat zur Folge, dass die Regel nicht zur Ergebnismenge der Assoziationsanalyse gehört.
Wie im Beispiel deutlich wird, kann sich das Ergebnis der Assoziationsanalyse durch das „Kombinierte Data Mining“ auch verschlechtern, wenn die Aufteilung der Transaktionen nicht optimal ist.
Aus diesem Grund ist die Aufteilung der Transaktionen ein kritischer Punkt bei der Kombination
aus Clustering und Assoziationsanalyse.
Verbesserung der Laufzeit und des Speicherplatzbedarfs
Die Kombination von Clustering und Assoziationsanalyse kann nicht nur zu einer Verbesserung
der Ergebnisse führen. In den meisten Fällen lässt sich auch eine Verbesserung der Laufzeit und
29
3 Kombination von Data Mining-Verfahren
des Speicherplatzbedarfs feststellen. Denn sowohl die Laufzeit als auch der Speicherplatzbedarf
des hier verwendeten Apriori-Algorithmus zur Berechnung der Assoziationsregeln steigen exponentiell mit der Anzahl der Transaktionen. Das heißt, dass von einer Verbesserung der Laufzeit und
des Speicherplatzbedarfs ausgegangen werden kann, wenn die Transaktionen in mehrere ungefähr
gleich große Mengen von Transaktionen aufgeteilt werden. Zusätzlich kann in diesem Fall davon
ausgegangen werden, dass die Anzahl der unterschiedlichen Items in einem Cluster kleiner ist als
die Gesamtzahl der unterschiedlichen Items über alle Cluster, was zu einer weiteren Verbesserung
der Laufzeit und des Speicherplatzbedarfs führt. In den meisten Fällen liefert das Clustering bei der
Kombination aus Clustering und Assoziationsanalyse genau eine solche gleichmäßige Aufteilung
der Transaktionen in mehrere Mengen. In diesen Fällen tritt eine Verbesserung der Laufzeit und des
Speicherplatzbedarfs ein.
Im theoretisch schlechtesten Fall (worst case) gilt diese allerdings nicht. In diesem Fall liefert das
Clustering eine ungleichmäßige Aufteilung der Daten, wobei im schlimmsten Fall n Cluster mit
insgesamt m Elementen entstehen und hiervon n − 1 Cluster je einen Datensatz enthalten und ein
Cluster m − (n − 1) Elemente. In diesem Fall ist keine Verbesserung der Laufzeit und des Speicherplatzbedarfs zu erwarten.
3.4.3 Weitere Arbeiten zur Kombination von Clustering und Assoziationsanalyse
Zum „Kombinierten Data Mining“ gibt es bereits verschiedene Veröffentlichungen. Hierzu gehören die bereits erwähnten Veröffentlichungen [GHS06], [Hum04], [LSW97] und [Stö04]. Zur Kombination von Clustering und Assoziationsanalyse gibt es die Veröffentlichung [LY00] von Lai und
Yang mit dem Titel „A Group-based Inference Approach to Customized Marketing on the WebIntegrating Clustering and Association Rules Techniques“. Auf diese Veröffentlichung soll im Folgenden näher eingegangen werden.
In der Veröffentlichung von Lai und Yang stellen diese eine Fallstudie zum personenbezogenen
Marketing vor. Hierbei sollen zunächst unterschiedliche Daten über die Benutzer eines Webshops
gesammelt werden. Anhand dieser Informationen können dann verschiedene Kunden durch ein
Clustering zu Gruppen zusammengefasst werden. Für jede dieser Gruppen wird im Anschluss ermittelt, welche Produkte und welche Produktkategorie für die Kunden interessant sind bzw. welche
Produkte häufig zusammengekauft werden. Anhand dieser Informationen könnte dann u. a. nutzerspezifische Werbung geschaltet werden.
Im Rahmen des Projektes wurde zunächst ein Webshop mit Büchern für Mitglieder einer Universität
entwicklet. Mit Hilfe dieses Webshops konnten innerhalb von fünf Tagen die nötigen Informationen
für das weitere Projekt ermittelt werden. Zu diesen Informationen gehören neben den persönlichen
Daten der Kunden auch Informationen über über die angesehenen und über die gekauften Artikel.
Anhand der ermittelten Daten wurde ein Clustering durchgeführt. Unter anderem wurden folgende Informationen für das Clustering verwendet: das Geschlecht, das Alter, die Blutgruppe, der Beruf, das Einkommen, der Familienstand und die im Internet verbrachte Zeit (pro Tag). Mit Hilfe
dieser Informationen wurden drei unterschiedliche Cluster ermittelt. Für jeden Cluster wurde im
Anschluß eine Assoziationsanalyse durchgeführt. Die gefundenen Regeln wurden zur Bewertung
des Ansatzes verwendet.
Zur Bewertung der gefundenen Regeln wurden jeweils der Support, die Confidence und das Improvement der gefunden Regeln mit und ohne vorheriges Clustering miteinander verglichen. Ohne
Clustering wurden 14 Assoziationsregeln gefunden, beim „Kombinierten Data Mining“ wurden
insgesamt 27 Regeln gefunden, wobei die meisten Regeln in mehr als einem Cluster aufgetreten
30
3 Kombination von Data Mining-Verfahren
sind. Von den 27 gefundenen Regeln hatten 26 einen besseren Support, 21 eine bessere Confidence
und acht ein besseres Improvement als die entsprechenden Regeln, die ohne vorheriges Clustering
entstanden sind. Damit lässt sich für diesen Anwendungsfall festhalten, dass durch die Kombination aus Clustering und Assoziationsanalyse bessere Ergebnisse erzielt wurden.
31
4 Bewertung von Mengen von Assoziationsregeln
In der Arbeit von Lai und Yang werden die gefundenen Regeln aus der Assoziationsanalyse mit
und ohne vorheriges Clustering anhand des Support, der Confidence und anhand des Improvements miteinander verglichen. Dies ist insofern problematisch, dass immer nur einzelne Regeln
miteinander verglichen werden können und es unklar ist, wie ein Ergebnis zu bewerten ist, bei dem
einzelne Regeln verbessert wurden, andere Regeln durch das vorherige Clustering jedoch schlechter geworden sind. Darüber hinaus bleibt es unklar, wann man von einer Verbesserung einer Regel
sprechen kann. Wenn der Support, die Confidence und das Improvement einer Regel sich alle verbessert haben, wurde sicherlich eine bessere Regel gefunden; wenn alle drei Werte schlechter sind,
handelt es sich um eine schlechtere Regel. Was ist aber, wenn sich einzelne Maße verbessert, andere
hingegen verschlechtert haben? Handelt es sich dann um eine bessere oder eine schlechtere Regel?
Lai und Yang haben dieses Problem insofern umgangen, dass sie zu jedem Maß einzeln angegeben
haben, wieviele Regeln sich bzgl. dieses Maßes verbessert haben. Die Frage, ob die gesamte Regelmenge eine Verbesserung gegenüber den gefundenen Assoziationsregeln ohne Clustering darstellt
wurde nicht direkt beantwortet, sondern nur über die Verbesserung der einzelnen Maße begründet.
In dieser Arbeit soll ein Maß1 vorgestellt werden, das es erlaubt, ganze Regelmengen miteinander
zu vergleichen, um die Ergebnisse der durchgeführten Experimente bewerten zu können. Dieses
Maß stützt sich auf die grundlegenden Ideen des „Minimum Description Length“-Prinzips. Zunächst wird deshalb ein kurzer Einblick in die Grundideen der Minimum Description Length, im
Folgenden kurz MDL, gegeben. Danach wird erläutert, wie diese grundlegenden Ideen zur Bewertung von Mengen von Assoziationsregeln verwendet werden können. Es wird darauf eingegangen, wie Daten mit Hilfe von Assoziationsregeln komprimiert werden können und wie Mengen
von Assoziationsregeln dadurch bewertet werden können. Die Vernachlässigung der Assoziationsregeln und der Einfluss des Supports und der Confidence auf das hier vorgestellte Maß sind weitere
wichtige Aspekte, die im folgenden Kapitel untersucht werden.
4.1 Einführung in MDL
Die Minimum Description Length ist ein Prinzip zur Auswahl des besten Modells zur Repräsentation von Daten. Die grundlegende Idee ist, dass jede Regularität in den Daten ausgenutzt werden
kann, um die Daten zu komprimieren. Komprimierung heißt in diesem Zusammenhang, dass weniger Symbole zur Kodierung der Daten benötigt werden. Gleichzeitig gilt für die Komprimierung,
dass je regulärer die Daten sind, sie umso stärker komprimiert werden können. Wenn man bedenkt,
dass das Erlernen von Wissen in den meisten Fällen gleichbedeutend mit dem Finden von Mustern
bzw. Regularitäten in den Daten ist, kann man folgende Aussage treffen: Je stärker sich Daten komprimieren lassen, desto mehr Wissen ist über die Daten vorhanden.
Der Zusammenhang von Wissen über die Datenbasis und von ihrer Komprimierung soll an einem
Beispiel verdeutlicht werden. Gegeben sind folgende jeweils 10.000 Bit langen Sequenzen:
1 Mit
dem Begriff des Maßes ist in dieser Arbeit eine Größenwertangabe und kein Maß im mathematischen Sinne gemeint.
32
4 Bewertung von Mengen von Assoziationsregeln
(1)
00010001000100010001 . . . 0001000100010001000100010001
(2)
01110100110100100110 . . . 1010111010111011000101100010
Die erste Sequenz ist eine 2500-fache Wiederholung der Bitsequenz „0001“. Die Sequenz ist sehr
regulär und kann durch ein einfaches Computerprogramm, wie z. B. das folgende, erzeugt werden:
for (i=1; i<=2500; i++) {print ’0001’;}
Die zweite Sequenz ist eine Sequenz, die zufällig durch ein Münzwurfexperiment erzeugt wurde.
Sie ist dementsprechend komplett zufällig und enthält keine Regularitäten. Sie kann aus diesem
Grund auch nicht weiter komprimiert werden. Ein Computerprogramm zur Erzeugung der Sequenz müsste die komplette Sequenz beeinhalten, um sie auszugeben:
print ’01110100110100100110 . . . 1010111010111011000101100010’;
Anhand der Größe ist gut zu erkennen, wie Wissen über die Daten (bzw. über Regularitäten innerhalb der Daten) ausgenutzt werden kann, um die Daten zu komprimieren. Während sich die
erste Sequenz durch ein Programm mit weniger als 50 Zeichen erzeugen lässt, benötigt das zweite
Programm mehr als 10.000 Zeichen zur Erzeugung der Sequenz.
4.2 Bewertung von Mengen von Assoziationsregeln
4.2.1 MDL als Grundlage für die Bewertung von Mengen von Assoziationsregeln
Zur Bewertung von Mengen von Assoziationsregeln soll in dieser Arbeit die Grundidee der MDL
verwendet werden, dass Wissen und die Fähigkeit, Daten zu komprimieren, gleichbedeutend sind.
In dieser Arbeit werden die bei der Assoziationsanalyse gefundenen Regeln verwendet, um die
zugrundeliegenden Daten zu komprimieren. Die Kernidee ist, dass eine Regelmenge besser ist als
eine andere, wenn sie in der Lage ist, Daten besser zu komprimieren als die andere, weil sie mehr
Wissen beinhaltet, welches sie zur Komprimierung nutzen kann.
Sollen zwei Regelmengen wie z. B. das Ergebnis einer „normalen“ Assoziationsanalyse und das
Ergebnis eines „Kombinierten Data Mining“ miteinander verglichen werden, werden die beiden
Regelmengen zur Komprimierung der verwendeten Daten verwendet. Die Regelmenge, die das
bessere Ergebnis bei der Komprimierung erzielt, ist die bessere Regelmenge. Damit muss auch die
ihr zugrunde liegende Assoziationsanalyse das bessere Ergebnis erzielt haben.
4.2.2 Komprimierung von Daten mittels Assoziationsregeln
Die Komprimierung der Daten durch die Assoziationsregeln hängt unter anderem davon ab, wie
die Daten bzw. die Transaktionen dargestellt sind. In dieser Arbeit wird von einer einfachen Darstellung der Transaktionen als Liste von Items ausgegangen ({item1 ,...,itemn }). Beispiele für Transaktionen in dieser Darstellung sind
• Einkäufe in einem Supermarkt: {Butter, Brot, Eier}
• Schauspieler in einem Film: {„Johnny Depp“,„Orlando Bloom“,„Keira Knightley“}
• Einkäufe in einem Buchladen: {„Knowledge Discovery in Databases“,„Data Mining“}
33
4 Bewertung von Mengen von Assoziationsregeln
In dieser Arbeit wird vereinfacht davon ausgegangen, dass der Speicherplatz zur Speicherung eines Items unabhängig von der Anzahl der unterschiedlichen Items ist. Es gilt also, dass jedes Item
einen konstanten Speicherplatz benötigt. Dieser beträgt stets eine Speichereinheit. Allgemein gilt
somit, dass eine Transaktion mit n Elementen n Einheiten Speicherplatz benötigt. Für die oben dargestellten Transaktionen bedeutet dies, dass sowohl die erste, als auch die zweite Transaktion einen
Speicherplatz von drei Einheiten benötigen - die dritte Transaktion benötigt zwei Speichereinheiten.
Soll nun eine Assoziationsregel X ⇒ Y, wobei X und Y jeweils Mengen von Items sind, zur Komprimierung der Daten verwendet werden, können aus einer Transaktion, die sowohl die Items aus X
als auch die Items aus Y enthält, die Elemente aus Y entfernt werden. Diese Elemente können später
durch die Anwendung der Assoziationsregel auf die (restliche) Transaktion wieder vervollständigt
werden. Das heißt, dass auf Grund der Kenntnis der Regel X ⇒ Y die Daten in einer kürzeren Form
gespeichert werden können. Wenn allerdings für eine Transaktion gilt, dass sie alle Elemente aus X,
aber nicht alle Elemente aus Y enthält, muss für diese Transaktion explizit gespeichert werden, dass
die Regel nicht angewendet werden darf. Alternativ kann man die Transaktion um die fehlenden
Elemente aus Y erweitern und diese als negiert kennzeichen. Die Regel darf dann zwar angewendet
werden, die negierten Elemente sind aber auch nach der Anwendung der Assoziationsregel zur Vervollständigung der Transaktion nicht in der Transaktion enthalten. Daraus resultieren zusätzliche
Kosten für die Speicherung der Transaktionen. Vereinfacht wird davon ausgegangen, dass auch hier
pro ergänztem Item Kosten in Höhe von einer Speichereinheit anfallen. Der Grund für die anfallenden Kosten bei der Speicherung ist, dass an dieser Stelle offensichtlich das in der Regeln enthaltene
Wissen für diese Transaktion nicht gilt. „Falsches“ Wissen wird in diesem Ansatz demnach genauso
bestraft, wie „korrektes“ Wissen belohnt wird.
Die Komprimierung mit Hilfe von Assoziationsregeln soll an einem Beispiel verdeutlicht werden.
Gegeben seien folgende Regeln:
R1 : Chips ⇒ Cola
R2 : Babypuder ⇒ Windeln
R3 : Marmelade, Nutella ⇒ Toast
R4 : Schraubenzieher ⇒ Muttern
und folgende ausgewählte Transaktionen:
T1 : {Chips, Cola}
T2 : {Babypuder, Windeln}
T3 : {Chips, Cola, Marmelade, Nutella, Toast}
T4 : {Cola}
T5 : {Marmelade, Toast}
T6 : {Chips}
T7 : {Schraubenzieher, Schrauben}
Die Transaktionen T1 , T2 und T3 lassen sich mit Hilfe der Assoziationsregeln komprimieren. Für
alle drei Transaktionen gilt, dass sie mindestens die Konklusion und die Prämisse einer Regel erfüllen. Die Transaktionen können mittels der Regeln R1 , R2 und R3 verkürzt werden, sodass sich
die ursprünglichen Transaktionen durch Anwendung der Regeln rekonstruieren lassen. Wird eine
0
Regel R zur Komprimierung einer Transaktion verwendet, wird diese im Folgenden als R bezeichnet im Gegensatz zu R für die Rekonstruktion. Die Anwendung von R führt somit zur Erweiterung
der Transaktion um die Konklusion der Regel, sofern die Prämisse der Regel erfüllt ist. Der durch
die Komprimierung erzielte Gewinn, im Folgenden Komprimierungsgewinn, ist für jede Regel in
Klammern angegeben.
R
0
T1 : {Chips, Cola}
1
−−−
→ T1 : {Chips}
T2 : {Babypuder, Windeln}
2
−−−
→ T2 : {Babypuder}
R
0
R1 ,
(+1)
0
0
R3
(+1)
T3 : {Chips, Cola, Marmelade, Nutella, Toast} −−−→ T3 : {Chips, Marmelade, Nutella} (+2)
34
4 Bewertung von Mengen von Assoziationsregeln
Die Transaktionen T4 und T5 lassen sich nicht mit Hilfe der hier angegebenen Regeln komprimieren, aber sie enthalten auch kein „falsches“ Wissen, wofür bei der Komprimierung Kosten entstehen
würden. Denn die Items der Transaktionen erfüllen keine der Prämissen der Regeln, so dass keine
Regel zur Komprimierung angewendet werden kann. Die Transaktionen werden unverändert gespeichert.
T4 : {Cola}
∅
−−→ T4 : {Cola}
(0)
∅
T5 : {Marmelade, Toast} −−→ T5 : {Marmelade, Toast}
(0)
Bei den Transaktionen T6 und T7 treten bei der Komprimierung Kosten auf, weil das in den Assoziationsregeln enthaltene Wissen für diese Transaktionen nicht gilt bzw. sogar falsch ist. Würden
diese Transaktionen unverändert gespeichert werden, so ergäben sich bei der Rekonstruktion der
ursprünglichen Transaktionen folgende Transaktionen durch die Anwendung der Regeln R1 und
R4 .
T6 : {Chips}
R
1
−−−
→ T6 : {Chips, Cola}
R
4
T7 : {Schraubenzieher, Schrauben} −−−
→ T7 : {Schraubenzieher, Schrauben, Muttern}
Diese Ergänzung führt zu falschen Transaktionen, da die Konklusion der Regeln nicht in den ursprünglichen Transaktionen enthalten war. Um dies zu verhindern, müssen beide Transaktionen
um die negierten Elemente, die bei der Rekonstruktion nicht wieder hinzugefügt werden sollen,
ergänzt werden. Dies führt zur Speicherung folgender Transaktionen. Der Komprimierungsverlust,
also der Verlust, der durch die Komprimierung entsteht, wird als negativer Komprimierungsgewinn in Klammern angegeben.
0
T6 : {Chips}
R1
−−−→ T6 : {Chips, ¬Cola}
(-1)
0
R4
T7 : {Schraubenzieher, Schrauben} −−−→ T7 : {Schraubenzieher, Schrauben, ¬Muttern} (-1)
Der gesamte Komprimierungsgewinn K bei Anwendung aller Regeln ergibt sich als die Summe der
einzelnen Komprimierungsgewinne bzw. -verluste K (Ti ):
K = K ( T1 ) + K ( T2 ) + K ( T3 ) + K ( T4 ) + K ( T5 ) + K ( T6 ) + K ( T7 )
= 1 + 1 + 2 + 0 + 0 + (−1) + (−1) = 2
Somit wurde insgesamt ein Gewinn von zwei Speichereinheiten durch die Anwendung aller Regeln
zur Komprimierung der Transaktionen erzielt.
4.2.3 Vernachlässigung der Assoziationsregeln
Im vorherigen Abschnitt wurde erläutert, wie mit Hilfe von Assoziationsregeln eine Menge von Daten komprimiert werden kann. Anhand des Grades der Komprimierung können Rückschlüsse auf
das in den Regeln enthaltene Wissen gezogen werden. Wie in diesem Abschnitt ebenfalls erläutert
wurde, können die ursprünglichen Transaktionen durch Anwendung der Assoziationsregeln aus
den komprimierten Transaktionen rekonstruiert werden. Das bedeutet, dass neben den komprimierten Transaktionen auch die Assoziationsregeln gespeichert werden müssten, um die ursprünglichen Transaktionen rekonstruieren zu können. Somit müsste eigentlich der zur Speicherung der
Assoziationsregeln benötigte Speicherplatz in die Betrachtung und in die Berechnung des Komprimierungsgewinnes einbezogen werden. Dies ist allerdings im Zusammenhang mit der Bewertung
von Mengen von Assoziationsregeln problematisch. Es kann vorkommen, dass die Daten zur Speicherung der Assoziationsregeln mehr Platz beanspruchen, als durch die Komprimierung gewonnen
35
4 Bewertung von Mengen von Assoziationsregeln
werden kann. Dieser Effekt tritt verstärkt bei kleinen Datenmengen und bei solchen Datenmengen
auf, für die viele Regeln gefunden werden können. Aber auch bei Datenmengen, für die gilt, dass
die einzelnen Attribute viele verschiedene Werte annehmen können, kommt es zu Problemen. Anders ausgedrückt: Wenn der benötigte Speicherplatz zur Speicherung der Assoziationsregeln in die
Betrachtung mit einbezogen wird, kann eine große Menge von Assoziationsregeln eine Menge von
Transaktionen schlechter komprimieren als eine kleine Menge von Assoziationsregeln, obwohl die
größere Menge von Assoziationsregeln eindeutig mehr Wissen enthält, als die kleinere Menge. Das
Ergebnis entspricht daher nicht den Anforderungen an das Maß, da es messen soll, welche Menge
von Assoziationregeln das meiste Wissen repräsentiert.
Aus diesem Grund soll bei der Bewertung von Assoziationsregeln auf die Einbeziehung des Speicherplatzbedarfes zur Speicherung der Assoziationsregeln verzichtet werden. Wie im Folgenden
erläutert werden soll, ist dies aus verschiedenen Gründen möglich.
Es kann auf die Speicherung der Assoziationsregeln verzichtet werden, weil die Transaktionen lediglich bewertet und nicht wirklich komprimiert werden sollen. Würde man die Transaktionen tatsächlich komprimieren wollen, dann könnte natürlich nicht auf die Speicherung verzichtet werden,
weil in diesem Fall eine Rekonstruktion der ursprünglichen Daten nicht möglich wäre.
Auch bei der Bewertung einer Komprimierung kann normalerweise nicht auf die Einbeziehung der
Dekomprimierungsvorschriften verzichtet werden. Es müsste eigentlich immer die Größe der Dekomprimierungsvorschrift und die Größe der komprimierten Daten mit einbezogen werden. Denn
sonst würden Komprimierungen als gut angesehen, obwohl sie es offensichtlich nicht sind. Würde nur die Größe der Dekomprimierungsvorschrift betrachtet, dann wäre eine Komprimierung am
besten, wenn sie keine Dekomprimierungsvorschrift besitzt, die Daten also nicht komprimiert werden. Würde nur die Größe der komprimierten Daten betrachtet, dann wäre die beste Komprimierung, diejenige, die eine Dekomprimierungsvorschrift besitzt, welche alle Daten beinhaltet. Die Daten lassen sich dann auf 0 Bit komprimieren und mit Hilfe der Dekomprimierungsvorschrift wieder erzeugen. Auch diese Komprimierung ist bei genauerer Betrachtung sicherlich nicht die beste
Komprimierung. Sowohl die erste als auch die zweite Komprimierung haben bei Betrachtung der
Dekomprimierungsvorschrift und der komprimierten Daten eine Größe gleich den unkomprimierten Daten, d. h., dass in beiden Fällen insgesamt keine Komprimierung erzielt werden konnte. Ein
gute Komprimierung erzielt eine möglichst gute Kompressionsrate, ohne eine große Dekomprimierungsvorschrift zu besitzen, so dass die Größe der Dekomprimierungsvorschrift und der komprimierten Daten kleiner als die unkomprimierten Daten sind.
Durch die Einbeziehung der Größe der Dekomprimierungsvorschrift soll also sichergestellt werden,
dass die untersuchten Komprimierungen vergleichbar sind. Bei der Bewertung von Mengen von
Assoziationsregeln wird die Vergleichbarkeit aber bereits auf anderem Wege sichergestellt: Durch
die Angabe der Werte für den Support und für die Confidence hat der Benutzer bereits indirekt
definiert, wie viele Regeln er zu lernen bereit ist. In diesem Fall wird die Vergleichbarkeit der Ergebnisse dadurch hergestellt, dass alle betrachteten Dekomprimierungsvorschriften2 maximal so
viele Regeln enthalten, wie der Nutzer zu lernen bereit ist. Somit kann vereinfacht davon ausgegangen werden, dass die Größe der Dekomprimierungsvorschriften vernachlässigt werden kann.
Gemessen wird nur die Komprimierung, die durch die Anwendung der Assoziationsregeln auf die
Daten erzielt werden kann.
Zur Vernachlässigung des Speicherplatzbedarfs der Assoziationsregeln folgt ein Beispiel im nächsten Abschnitt (Beispiel 2).
2 In
diesem Zusammenhang besteht die Dekomprimierungsvorschrift aus der Vorschrift zur Dekomprimierung der Daten (=Anwendung von Assoziationsregeln) und den hierfür nötigen Assoziationsregeln.
36
4 Bewertung von Mengen von Assoziationsregeln
4.2.4 Bewertung von Mengen von Assoziationsregeln
Zur Bewertung von Mengen von Assoziationsregeln mit dem hier vorgestellten Maß werden die
Daten wie bereits in Abschnitt 4.2.2 erläutert nicht tatsächlich komprimiert. Stattdessen wird lediglich berechnet, wieviele Items durch die Komprimierung eingespart werden könnten und wieviele (negierte) Items zusätzlich zu den Transaktionen hinzugefügt werden müssten. Es wird nur
die erreichbare Komprimierung berechnet, anstatt die Komprimierung tatsächlich durchzuführen.
Die Größe der komprimierten Daten wird ins Verhältnis mit den unkomprimierten, d. h. den ursprünglichen Daten gesetzt. Hieraus ergibt sich die erreichbare Komprimierung. Müssen z. B. zur
Speicherung der Transaktionen 100 Items gespeichert werden3 und werden für die komprimierten
75
Daten nur 75 Speichereinheiten benötigt, ergibt sich die Komprimierung zu 100
= 75%.
Definition 4 (Inhärentes Wissen) Das hier vorgestellte Maß zur Bewertung einer Menge von Assoziationsregeln A wird im Folgenden als inhärentes Wissen IW ( A, T ) bezeichnet. Sei k der Speicherplatz, der
zur Speicherung der mit den Assoziationsregeln aus A komprimierten Transaktionen benötigt wird, und u
der Speicherplatz, der notwendig wäre, um die unkomprimierten Transaktionen T zu speichern, dann ist das
inhärente Wissen IW ( A, T ) definiert als:
IW ( A, T ) = 1 −
k
u
Das inhärente Wissen IW ( A, T ) bezeichnet somit das Wissen, welches in der Regelmenge A enthalten ist, wobei der Quotient uk den durch die Komprimierung erzielten (Speicherplatz-)Gewinn
beschreibt. Für das inhärente Wissen gilt folgender Grundsatz: Je besser die Komprimierung, umso mehr Wissen wird durch die Regelmenge repräsentiert, umso höher ist der Wert des inhärenten
Wissens IW ( A, T ) und umso besser ist die Regelmenge.
Für obiges Beispiel gilt, dass zur Speicherung der komprimierten Transaktionen 75 Speichereinheiten nötig wären und die unkomprimierten Transaktionen 100 Speichereinheiten belegen würden.
Damit ergibt sich für das inhärente Wissen ein Wert von:
IW ( A, T ) = 1 −
75
= 25%
100
Die Ergebnisse dieses Maßes wurden mit der Wahrnehmung des Autors verglichen: Hierzu wurden
zwei Mengen von Assoziationsregeln zunächst hinsichtlich des enthaltenen Wissens bewertet. Im
Anschluss wurde für die gleichen Mengen das Maß IW berechnet. In allen untersuchten Fällen
stimmte die menschliche Wahrnehmung mit den Ergebnissen des Maßes überein, welche Menge
von Assoziationsregeln das meiste Wissen beinhaltet.
Die Bewertung von Assoziationsregeln mit Hilfe des hier vorgestellten Maßes soll im Folgenden
anhand eines Beispiels näher erläutert werden.
3 Hierfür
werden laut Definition 100 Speichereinheiten benötigt.
37
4 Bewertung von Mengen von Assoziationsregeln
Gegeben seien folgende Transaktionen:
T1 : {Backwaren, Zeitungen}
T2 : {Backwaren, Obst}
T3 : {Backwaren, Gemüse}
T4 : {Gemüse, Wasser}
T5 : {Wasser}
T6 : {Backwaren}
T7 : {Backwaren, Limonade}
T8 : {Backwaren, Limonade, Zeitungen}
T9 : {Obst, Limonade, Backwaren, Zeitungen}
T10 : {Limonade, Backwaren}
T11 : {Gemüse, Limonade, Backwaren, Zeitungen}
Diese Transaktionen bestehen aus insgesamt 25 Items und benötigen damit einen Speicherplatz von
25 Speichereinheiten. Eine Assoziationsanalyse mit einem minimalem Support von 10% und einer
minimalen Confidence von 75% liefert zu diesen Transaktionen folgende Assoziationsregeln:
R1 : Limonade ⇒ Backwaren
Support = 45%
Confidence = 100%
R2 : Zeitungen ⇒ Backwaren
Support = 36%
Confidence = 100%
R3 : Zeitungen ⇒ Limonade
Support = 27%
Confidence = 75%
R4 : Backwaren, Zeitungen ⇒ Limonade
Support = 27%
Confidence = 75%
Eine Komprimierung der Transaktionen mit diesen Assoziationsregeln würde zu folgenden neuen
Transaktionen führen:
T1 : {Zeitungen, ¬Limonade}
T2 : {Backwaren, Obst}
T3 : {Backwaren, Gemüse}
T4 : {Gemüse, Wasser}
T5 : {Wasser}
T6 : {Backwaren}
T7 : {Limonade}
T8 : {Zeitungen}
T9 : {Obst, Zeitungen}
T10 : {Limonade}
T11 : {Gemüse, Zeitungen}
Zur Speicherung dieser Transaktionen würden 17 Speichereinheiten benötigt. Damit ergibt sich für
17
= 32%.
das Maß IW ein Wert von 1 − 25
Zum Vergleich werden die gleichen Transaktionen mit einer anderen Regelmenge komprimiert:
Verwendet werden nur die die Regeln R2 bis R4 . Diese Regeln beinhalten weniger Wissen als die
vollständige Regelmenge. Aus diesem Grund ist zu erwarten, dass sich ein schlechterer Wert bzgl.
des vorgestellten Maßes ergibt als im vorhergehenden Beispiel. Die Anwendung der Regeln führt
zu folgenden neuen Transaktionen:
T1 : {Zeitungen, ¬Limonade}
T2 : {Backwaren, Obst}
T3 : {Backwaren, Gemüse}
T4 : {Gemüse, Wasser}
T5 : {Wasser}
T6 : {Backwaren}
T7 : {Backwaren, Limonade}
T8 : {Zeitungen}
T9 : {Obst, Zeitungen}
T10 : {Limonade, Backwaren}
T11 : {Gemüse, Zeitungen}
Um diese Transaktionen zu speichern, würden 19 Speichereinheiten benötigt. Damit ergibt sich ein
19
= 24% für das hier vorgestellte Maß. Dieser Wert ist im Vergleich mit der
Wert von IW = 1 − 25
vollständigen Regelmenge wie erwartet schlechter.
38
4 Bewertung von Mengen von Assoziationsregeln
In einem weiteren Beispiel soll gezeigt werden, wie sich die Einbeziehung des zur Speicherung
der Assoziationsregeln notwendigen Speicherplatzes auf die Ergebnisse des Maßes IW auswirken
würde.
Gegeben seien wieder die Transaktionen und die Mengen von Assoziationsregeln aus dem vorherigen Beispiel. Zur Speicherung der komprimierten Transaktionen würden also 17 bzw. 19 Speichereinheiten benötigt. Hinzu kommen die Kosten zur Speicherung der Assoziationsregeln. Geht man
auch hier von Kosten von einer Speichereinheit pro Item und einer weiteren Speichereinheit pro
Regel (zur Unterteilung der Regeln in Prämisse und Konklusion) aus, so folgt für die Kosten zur
Speicherung der kompletten Menge von Assoziationsregeln und der hiermit komprimierten Transaktionen:
K = Kosten zur Speicherung der Assoziationsregeln
+ Kosten zur Speicherung der komprimierten Transaktionen
= 13 + 17 = 30
Damit würde sich für das hier vorgestellte Maß ein Wert von IW = 1 − 30
25 = −20% ergeben, wenn
der Speicherplatz zur Speicherung der Assoziationsregeln mit einbezogen würde.
Für die Kosten zur Speicherung der Regeln R2 bis R5 und der hiermit komprimierten Transaktionen
gilt:
K = Kosten zur Speicherung der Assoziationsregeln
+ Kosten zur Speicherung der komprimierten Transaktionen
= 10 + 19 = 29
Damit würde sich für das hier vorgestellte Maß ein Wert von IW = 1 − 29
25 = −16% ergeben, wenn
der Speicherplatz zur Speicherung der Assoziationsregeln mit einbezogen würde. Dieser Wert ist
im Vergleich mit der vollständigen Regelmenge besser. Das Ergebnis des Maßes unter Einbeziehung
des Speicherplatzbedarfes zur Speicherung der Assoziationsregeln entspricht somit nicht dem gewünschten Ergebnis. Dementsprechend sollte, wie in Abschnitt 4.2.3 erläutert wurde, auf die Einbeziehung des Speicherplatzbedarfs zur Speicherung der Assoziationsregeln bei der Berechnung des
Maßes verzichtet werden.
Im dritten Beispiel soll gezeigt werden, dass die Vernachlässigung des Speicherplatzes nicht immer
notwendig wäre. Wenn genügend Transaktionen vorhanden sind und es nur wenige unterschiedliche Items gibt, könnte der Speicherplatz zur Speicherung der Assoziationsanalysen durchaus in
die Bewertung der Assoziationsregeln mit einbezogen werden, ohne dass die Ergebnisse verfälscht
würden.
Gegeben seien folgende Transaktionen:
T1 : {Backwaren, Zeitungen}
T2 : {Obst, Gemüse}
In den der Assoziationsanalyse zugrunde liegenden Daten tritt die Transaktion T1 n-mal auf und
die Transaktion T2 m-mal.
Für das Beispiel sollen folgende Assoziationsregeln betrachtet werden:
R1 : Backwaren ⇒ Zeitungen
R2 : Obst ⇒ Gemüse
Zur Speicherung der Assoziationsregeln werden drei Speichereinheiten pro Regel benötigt: je eine
Einheit für die Prämisse und für die Konklusion, sowie eine Einheit zur Unterteilung der Assoziationsregel in Prämisse und Konklusion.
39
4 Bewertung von Mengen von Assoziationsregeln
Im ersten Fall sollen die Transaktionen mit den Regeln R1 und R2 komprimiert werden. Für IW gilt
dann:
n+m+6
IW ( A, T ) = 1 −
2n + 2m
Im zweiten Fall werden die Transaktionen nur mit der Regel R1 komprimiert. Für das Maß IW sollte
sich in diesem Fall also ein schlechterer Wert als im ersten Fall ergeben. Für IW gilt:
IW ( A, T ) = 1 −
n + 2m + 3
2n + 2m
Falls m ≤ 3 gilt, dann ist IW im zweiten Fall größer als im ersten Fall. Dann kann der Speicherplatzbedarf zur Speicherung der Assoziationsregeln nicht berücksichtigt werden, ohne das Ergebnis zu
verfälschen. Falls allerdings m > 3 gilt, dann ist IW im ersten Fall immer größer. Das Maß würde
also auch unter Berücksichtigung des Speicherplatzes, der zur Speicherung der Assoziationsregeln
nötig ist, das richtige Ergebnis liefern.
4.2.5 Algorithmus zur Berechnung von IW(A, T)
Gegeben sei die Regelmenge R mit den Assoziationsregeln R1 , ..., Rn , wobei die Konklusionen der
Regeln einelementig sind. Weiterhin sei die Transaktionsdatenbank TDB mit den Transaktionen
T1 , ..., Tm gegeben. In der Transaktionsdatenbank sind insgesamt m Transaktionen mit insgesamt
k Items gespeichert.
Außerdem seien folgende Funktionen bzw. Operatoren gegeben:
card( X )
liefert die Anzahl der Elemente der Menge X
P(r )
liefert die Prämisse der Regel r
K(r )
liefert die Konklusion der Regel r
!( x )
Negation von x: liefert true, falls x false ist; sonst false
isElement( x, X )
liefert true, falls das Element x in der Menge X enthalten ist; sonst false
isSubset(A,B)
liefert true, falls A eine Teilmenge von B ist; sonst false
A minus B
liefert die Elemente, die in A, aber nicht in B enthalten sind (Mengenminus)
X.add( x )
fügt das Element x zur Menge X hinzu
X.remove( x )
entfernt das Element x aus der Menge X
Zur Berechnung des Maßes IW wird in dieser Arbeit ein vereinfachter Algorithmus verwendet, der
weder das doppelte Entfernen von Elementen aus einer Transaktion, wie z. B. durch die Assoziationsregeln A ⇒ C und B ⇒ C, noch Zyklen innerhalb der Assoziationsregeln, wie z. B. bei den
Assoziationsregeln A ⇒ B und B ⇒ A, berücksichtigt. Ein Zyklus liegt genau dann vor, wenn es
zwei Assoziationsregeln R1 und R2 gibt, für die Folgendes gilt:
• die Prämisse von R2 ist eine Teilmenge des transitiven Abschlusses von R1 und
• die Konklusion von R2 ist eine Teilmenge der Prämisse von R1
Die vereinfachte Variante des Algorithmus, die das Maß IW approximiert, wird im Folgenden mit
IW 0 bezeichnet. Der Algorithmus zur Berechnung von IW 0 ist in Listing 4.1 dargestellt.
Die Variable gain beinhaltet hierbei den Gewinn bzw. Verlust, welcher durch Anwendung der Regeln auf eine einzelne Transaktion erzielt wird (Komprimierungsgewinn/-verlust der Transaktion).
40
4 Bewertung von Mengen von Assoziationsregeln
gain = 0;
totalgain = 0;
forall t in T {
forall r in R {
if ( isSubset ( P ( r ) ,t ) and isElement ( K ( r ) ,t ) ) {
gain = gain + 1;
}
if ( isSubset ( P ( r ) ,t ) and !( isElement ( K ( r ) ,t ) ) ) {
gain = gain - 1;
}
}
totalgain = totalgain + min ( card ( t ) -1 , gain )
return totalgain / k ;
// = IW
}
Listing 4.1: Algorithmus zur Berechnung von
IW 0
Die Variable totalgain beinhaltet den Gewinn bzw. Verlust für alle bisher untersuchten Transaktionen. Der Algorithmus berechnet für alle Transaktionen und für alle Regeln den durch die Komprimierung erzielbaren Gewinn. Ist sowohl die Prämisse als auch die Konklusion einer Regel in einer
Transaktion enthalten, so wird die Variable gain um die Anzahl der Elemente in der Konklusion
der Regel erhöht. Ist hingegen nur die Prämisse und nicht die ganze Konklusion in der Transaktion
enthalten, so wird die Anzahl der Elemente der Konklusion, die nicht in der Transaktion enthalten
sind, von der Variablen abgezogen.4 Der Gesamtgewinn totalgain ergibt sich als Summe der erzielten Einzelgewinne, wobei jeder Einzelgewinn maximal so groß sein darf, dass die Transaktion
noch ein Element enthält. Es dürfen also nicht mehr als n − 1 Elemente aus einer Transaktion mit
n Elementen entfernt werden. Würden mehr Elemente enfernt, wäre eine Rekonstruktion der ursprünglichen Transaktion in keinem Fall mehr möglich. Indem man den Gesamtgewinn durch die
Anzahl der Items k teilt, erhält man den Wert für das Maß IW.
Der Algorithmus zur Berechnung des Maßes IW unterscheidet sich durch die Erkennung von Zyklen und durch das Unterbinden doppelter Komprimierungen vom Algorithmus zur Berechnung
von IW 0 . Der Algorithmus zur Berechnung von IW ist in den Listings 4.2 und 4.3 dargestellt. Listing 4.2 enthält den Algorithmus zur Berechnung von IW, wenn die Assoziationsregeln keine Zyklen enthalten, und Listing 4.3 enthält den Algorithmus zur Eliminierung von Zyklen innerhalb der
Assoziationsregeln. Zusätzlich zu den oben definierten Mengen seien die Mengen Rtmp und I gegeben. Rtmp enthält zu Beginn die gleichen Assoziationsregeln wie R und verhindert die doppelte
Verwendung von Assoziationsregeln bei der Ermittlung von Zyklen. Bei der Menge I handelt es
sich um eine Menge von Items.
Für den Fall, dass Zyklen innerhalb der Assoziationsregeln schon im Vorfeld eliminiert wurden,
unterscheidet sich der Algorithmus zur Berechnung von IW nur in den Zeilen 5, 8-9 und 12-13
vom Algorithmus zur Berechnung von IW 0 . In Zeile 5 wird die Menge I von Items für jede Transaktion zunächst auf die leere Menge gesetzt. Diese Menge enthält während der Berechnung die
Items, welche innerhalb der aktuellen Transaktion schon Komprimierungsgewinne oder -verluste
verursacht haben. In den Zeilen 8 und 13 wird überprüft, ob die Konklusion der Assoziationsregel
innerhalb dieser Transaktion schon zur Komprimierung verwendet wurde. Ist dies der Fall, wurde
das entsprechende Item schon zur Transaktion hinzugefügt oder aus der Transaktion entfernt bzw.
4 vgl.
Abschnitt 4.2.2
41
4 Bewertung von Mengen von Assoziationsregeln
1
2
gain = 0;
totalgain = 0;
3
4
5
forall t in T {
I = {};
6
forall r in R {
if ( isSubset ( P ( r ) ,t ) and isElement ( K ( r ) ,t ) and !( isElement ( K ( r ) ,I ) ) )
{
I . add ( K ( r ) ) ;
gain = gain + 1;
}
if ( isSubset ( P ( r ) ,t ) and !( isElement ( K ( r ) ,t ) ) and !( isElement ( K ( r ) ,I ) ) )
{
I . add ( K ( r ) ) ;
gain = gain - 1;
}
}
7
8
9
10
11
12
13
14
15
16
17
18
19
totalgain = totalgain + min ( card ( t ) -1 , gain )
return totalgain / k ;
// = IW
20
21
22
}
Listing 4.2: Algorithmus zur Berechnung von IW
es wurden die entsprechenden Gewinne und Verluste schon berücksichtigt. In diesem Fall wird das
Item nicht weiter betrachtet. In den Zeilen 9 und 13 werden die Items, die zum ersten Mal zur Komprimierung verwendet werden, zur Menge I hinzugefügt, damit diese Items kein zweites Mal bei
der Berechnung des Komprimierungsgewinns berücksichtigt werden.
Dieser Algorithmus geht davon aus, dass die Assoziationsregeln keine Zyklen enthalten. Daher
müssen die Assoziationsregeln entsprechend vorbereitet werden. Ein Algorithmus zur Entfernung
der Zyklen aus einer Menge von Assoziationsregeln ist in Listing 4.3 angegeben.
Zur Ermittlung und Eliminierung von Zyklen wird für jede Assoziationsregel der transitive Abschluss der Prämisse berechnet. Hierzu werden, ausgehend von der Prämisse der untersuchten Regel, alle Elemente bestimmt, die indirekt durch Anwendung der Assoziationsregeln erreicht werden
können. Hierzu wird zunächst die Prämisse der zu untersuchenden Regel zur Menge I hinzugefügt. Anschließend wird diese Menge iterativ um die Elemente erweitert, die durch Anwendung
von Assoziationsregeln (aus der Menge Rtmp) erreicht werden können. Anwendbar ist eine Assoziationsregel, wenn die Prämisse in der Menge I enthalten ist. Für alle anwendbaren Regeln wird
die Konklusion zur Menge I hinzugefügt. Dies wird so lange wiederholt, bis sich die Menge I nicht
weiter verändert, wobei jede Assoziationsregel nur einmal angewendet werden darf. Damit eine
Regel nicht wiederholt angewendet wird, wird diese nach ihrer Anwendung aus der Menge Rtmp
entfernt. Falls ein Element aus der Prämisse der untersuchten Regel durch Anwendung einer anderen Regel zur Menge I hinzugefügt werden soll, wurde ein Zyklus gefunden. Die Regel, die den
Zyklus schließt, wird aus der Menge R der Assoziationsregeln entfernt. Nach Überprüfung aller
Assoziationsregeln werden auf diese Weise alle Zyklen aus der Menge der Assoziationsregeln R
entfernt sein.
Die Vereinfachungen des Maßes IW 0 führen dazu, dass die entstehenden Transaktionen nicht in
jedem Fall richtig rekonstruierbar sind und dass in bestimmten Fällen zu viele Elemente aus den
Transaktionen entfernt (oder hinzugefügt) werden. Die Einschränkungen, die das Maß IW 0 vor-
42
4 Bewertung von Mengen von Assoziationsregeln
forall r in R {
I = P(r);
Rtmp = R ;
change = true ;
while ( change ) {
card = card ( I ) ;
forall rt in Rtmp {
if ( isSubset ( P ( rt ) ,I ) ) {
if ( !( isElement ( K ( rt ) ,I ) ) ) {
I . add ( K ( rt ) ) ;
}
else if ( isElement ( K ( rt ) ,P ( r ) ) ) {
// Zyklus gefunden = > Regel entfernen
R . remove ( rt ) ;
}
Rtmp . remove ( rt ) ;
}
}
if ( card == card ( I ) ) { change = false ; }
}
}
Listing 4.3: Algorithmus zur Eliminierung von Zyklen
nimmt, vereinfachen die Berechnung des Maßes und haben nur sehr geringe Auswirkungen auf die
Ergebnisse. Dies konnte anhand einer Überprüfung der Ergebnisse aus Kapitel 5 gezeigt werden.5
Die Ergebnisse des Maßes IW 0 weichen durchschnittlich um 0,3 von den Ergebnissen des Maßes IW
ab, das Zyklen und doppelte Items berücksichtigt. Da diese Abweichung über alle Einzelergebnisse
relativ konstant ist, kann auf die Berücksichtigung von Zyklen und doppelten Elementen verzichtet werden, ohne die Ergebnisse durch diese Vereinfachung bzgl. ihrer Aussagekraft zu verändern.
Aus diesem Grund wurden die in den nächsten Kapiteln folgenden Experimente mit dem einfacheren Maß IW 0 berechnet. Die Reihenfolge der besten Ergebnisse bleibt bei Verwendung des Maßes
IW 0 in den meisten Fällen genauso unverändert, wie die Aussage, ob eine Verbesserung durch die
Kombination von Clustering und Assoziationsanalyse eingetreten ist.
4.2.6 Korrelation zwischen Support, Confidence und dem Maß IW(A, T)
In diesem Abschnitt soll kurz erläutert werden, welchen Einfluss der Support und die Confidence
einer Regel auf das hier vorgestellte Maß haben. Wenn sich zwei Regelmengen A1 und A2 nur in
der Höhe des Supports der Assoziationsregeln unterscheiden und o.B.d.A. gilt, dass mindestens
eine Regel der Regelmenge A1 einen höheren Support hat als die entsprechende Regel in A2 und
die restlichen Regeln einen identischen Support haben, dann sollte sicherlich gelten, dass die Regelmenge A1 bzgl. des hier vorgestellten Maßes besser ist als A2 . Für die Confidence einer Regel sollte
dies analog gelten.
5 Überprüft
wurden die Ergebnisse der Experimente 2,3,4,6 und 7.
43
4 Bewertung von Mengen von Assoziationsregeln
Zwei Regelmengen A1 und A2 unterscheiden sich nur in den Regeln r1 und r2 . Betrachtet werden
jetzt zwei Fälle:
1. support(r1 ) > support(r2 ) ∧ confidence(r1 ) = confidence(r2 )
2. support(r1 ) = support(r2 ) ∧ confidence(r1 ) > confidence(r2 )
Im ersten Fall kommt die Regel r1 nach Definition des Supports in mehr Transaktionen vor als die
Regel r2 und kann damit auch häufiger zur Komprimierung der Transaktionen angewendet werden.
Aus diesem Grund erzielt die erste Regelmenge auch eine bessere Komprimierung und ist bzgl. des
Maßes IW besser als die zweite.
Im zweiten Fall gibt es weniger Ausnahmen von der Regel r1 als von r2 . Das bedeutet, dass die
Transaktionen mit Hilfe der ersten Regel besser komprimiert werden können als durch Anwendung
der zweiten Regel. Durch die höhere Zuverlässigkeit ist die Differenz aus dem Komprimierungsgewinn und dem Komprimierungsverlust bei Komprimierung mit Hilfe der ersten Regel größer als
bei Komprimierung mittels r2 : Pro gewonnener Speichereinheit durch die Komprimierung mittels
r1 entstehen weniger Kosten für die Speicherung von negierten Items als bei der Komprimierung
mit Hilfe der Regel r2 . Somit gilt die oben definierte Anforderung sowohl für den Support als auch
für die Confidence.
4.2.7 Berechnung von IW(A, T) für mehrere Mengen von Assoziationsregeln
Das Maß IW kann auch für mehrere Mengen von Assoziationsregeln berechnet werden. Dies ist
u. a. erforderlich, um die Ergebnisse des herkömmlichen Data Mining und des „Kombinierten Data Mining“ miteinander vergleichen zu können: Beim herkömmlichen Data Mining entsteht eine
Menge von Assoziationsregeln, für die das Maß IW wie in den vorherigen Abschnitten vorgestellt
berechnet werden kann. Beim „Kombinierten Data Mining“ entstehen hingegen mehrere Mengen
von Assoziationsregeln - für jeden Cluster entsteht eine Menge. Für diese Mengen ist es notwendig,
einen gemeinsamen Wert für das Maß IW zu ermitteln, um das Gesamtergebnis des „Kombinierten
Data Mining“ mit dem des herkömmlichen Data Mining zu vergleichen. Im einfachsten Fall könnte hierzu der Durchschnitt der IW-Werte der einzelnen Cluster berechnet werden. Hierbei würde
allerdings u. a. die Größe der einzelnen Cluster vernachlässigt. Aus diesem Grund werden die Einzelgewinne für alle Cluster berechnet und ins Verhältnis zu der Anzahl der Items über alle Cluster
gesetzt. Dies entspricht dem mit der Anzahl der Items gewichtetem Durchschnitt der IW-Werte der
einzelnen Cluster.
Gegeben seien n Mengen von Assoziationsregeln { A1 , ...An } =: An und n Mengen von Transaktionen { T1 , ..., Tn } =: T n . Des Weiteren bezeichnet Ki den Komprimierungsgewinn, der durch Komprimierung von Ti mittels Ai erzielt werden kann, und Ii die Anzahl der Items in der Menge Ti . Das
Maß IW für mehrere Mengen von Assoziationsregeln wird dann wie folgt berechnet:
IW ( An , T n ) =
∑in=1 Ki
∑in=1 Ii
Zur Berechnung des Maßes IW für das Ergebnis eines „Kombinierten Data Mining“ mit der Kombination aus Clustering und Assoziationsanalyse wird also zunächst der Komprimierungsgewinn für
die einzelnen Cluster berechnet. Die Summe der Einzelgewinne wird anschließend ins Verhältnis
zu der Gesamtzahl der Items in allen Clustern gesetzt. Das Ergebnis entspricht dem mit der Anzahl
der Items gewichteten Durchschnitt der IW-Werte der einzelnen Cluster:
K
∑in=1 Ii ∗ Iii
∑in=1 Ii ∗ IW ( Ai , Ti )
∑n K
=
= in=1 i = IW ( An , T n )
n
n
∑i=1 Ii
∑i=1 Ii
∑i=1 Ii
44
4 Bewertung von Mengen von Assoziationsregeln
Ein anderer Ansatz zur Berechnung des Maßes IW für mehrere Mengen von Assoziationsregeln ist
es, die verschiedenen Mengen von Assoziationsregeln (und Transaktionen) in einem ersten Schritt
zu einer Menge von Assoziationsregeln (und zu einer Menge von Transaktionen) zu kombinieren.
Im Anschluss kann für diese Menge das Maß IW berechnet werden. Um verschiedene Mengen von
Assoziationsregeln zu kombinieren, muss gekennzeichnet werden, zu welcher Menge eine Assoziationsregel gehört. Dies ist durch Erweiterung der Prämisse durch eine eindeutige ID wie z. B. die
Clusternummer möglich. Die verschiedenen Mengen von Transaktionen können ebenfalls auf diese
Weise zu einer Menge zusammengefasst werden: Zu jeder Transaktion wird ein künstliches Item
mit der eindeutigen ID hinzugefügt. Eine Assoziationsregel kann jetzt nur noch zur Komprimierung einer Transaktion verwendet werden, wenn die IDs übereinstimmen. Dies ist gleichbedeutend
damit, dass die Assoziationsregel und die Transaktion zur gleichen Menge, also z. B. zum selben
Cluster gehören. Wird für diese Menge der Komprimierungsgewinn berechnet, ist dies allerdings
dasselbe, als würde für jeden Cluster der Komprimierungsgewinn berechnet. Der Komprimierungsgewinn für die zusammengefasste Menge von Assoziationsregeln ist daher identisch mit der Summe der Einzelgewinne der Cluster. Da auch die Anzahl der Items in der zusammengefassten Menge
identisch ist mit der Summe der Items in den einzelnen Clustern, führt dieser Ansatz zur gleichen
Definition für IW ( An , T n ) wie die Berechnung des Maßes mittels des mit der Anzahl der Items
gewichteten Durchschnitts der IW-Werte der einzelnen Cluster. Dieser Ansatz stellt also nur eine
andere Sichtweise auf das hier verwendete Verfahren dar.
Beim „Kombinierten Data Mining“ mit der Kombination von Clustering und Assoziationsanalyse
ist bei der Berechnung von IW ( An , T n ) zu beachten, dass das Maß nur bei einer kleinen Anzahl von
Clustern verwertbare Ergebnisse liefert. Der Grund hierfür ist, dass der Overhead, der für jeden
zusätzlichen Cluster entsteht, in dieses Maß nicht mit einbezogen wird. Somit würde das Maß IW
den besten Wert erzielen, wenn jeder Cluster aus genau einer Transaktion bestehen würde. Für
diese Transaktion könnte eine optimale Regel gefunden werden, sodass alle bis auf ein Element aus
ihr entfernt werden könnten. In diesem Fall würde die optimale Komprimierung erzielt werden,
wobei dies trotzdem nicht das beste Ergebnis darstellt. Bei einer kleinen Anzahl von Clustern kann
hingegen der Overhead, der zur Speicherung der einzelnen Cluster benötigt wird, vernachlässigt
werden. Zur Einschränkung der maximal erzeugten Clusterzahl wird in dieser Arbeit deshalb der
k-means Algorithmus zum Clustern der Daten verwendet, wobei für die Experimente in Kapitel 5
eine Clusterzahl n zwischen zwei und fünf Clustern gewählt wurde.
45
5 Beispiele zum Kombinierten Data Mining“
”
In diesem Kapitel werden Beispiele zum „Kombinierten Data Mining“ bzw. zur Kombination aus
Clustering und Assoziationsanalyse präsentiert. Verglichen werden sollen einerseits das „Kombinierte Data Mining“ mit dem herkömmlichen Data Mining und andererseits mehrere Kombinationen aus Clustering und Assoziationsanalyse, die auf unterschiedlichen Datenbeständen und mit
unterschiedlichen Clusterattributen durchgeführt werden.
Durchgeführt werden die meisten Beispiele mit Hilfe einer Filmdatenbank, kurz MovieDB. Darin
sind Informationen zu Kino-, Fernseh- und sonstigen Filmen und zu Fernsehserien gespeichert. Die
folgenden Beispiele konzentrieren sich hierbei auf die gespeicherten Filme.
Zu jedem Film werden u. a. folgende Informationen gespeichert: der Titel, alternative Titel, das Produktionsjahr, das Genre, das Rating, das Budget (inkl. Währung), der Drehort und die beteiligten
Personen.
Bei den alternativen Titeln handelt es sich meist um den Titel des Filmes in einem anderen Land.
Ein Beispiel hierfür ist „Lord of the Rings: The Fellowship of the Ring, The“ (Orginaltitel), welcher
in Deutschland unter dem Namen „Herr der Ringe: Die Gefährten, Der“ erschienen ist.
Das Rating enthält die (durchschnittliche) Bewertung einer Produktion zusammen mit der Anzahl
der abgegebenen Stimmen. 10 ist hierbei die beste Bewertung, 0 die schlechteste. Für die hier durchgeführten Untersuchungen wird das Rating auf drei unterschiedliche Werte abgebildet: „low“ für
Ratings kleiner als 4, „middle“ für Ratings zwischen 4 und 7 und „high“ für Ratings größer als 7.
Der Drehort ist der genaue Ort, an dem der Film gedreht wurde. Zu einem Film können auch mehrere Drehorte angegeben werden. Sofern bekannt wird auch das Land gespeichert, in dem sich der
Ort befindet. Zusätzlich zu den Informationen in der ursprünglichen MovieDB beinhaltet die hier
verwendete Version auch den Kontinent, in dem sich ein Land befindet.
Zu jeder Produktion werden die beteiligten Personen gespeichert. Hierbei handelt es sich u. a. um
die Schauspieler, den Regisseur und den Produzenten. Zusätzlich zum Namen können das Geschlecht, die Größe in Zentimetern oder der wirkliche Name (falls die Person einen Künstlernamen
benutzt) gespeichert werden. Außerdem sind evt. Datum, Land und Ort der Geburt oder des Todes gespeichert. Für jede Mitwirkung einer Person an einer Produktion, wird deren Aufgabe festgehalten: „actor“ für Schauspieler, „director“ für Regisseure, „costumedesigner“ etc. Eine Person
kann mehrere Aufgaben in einer Produktion haben (etwa Schauspieler und Produzent). Zusätzlich
kann bekannt sein, an welcher Position die Person im Abspann der Produktion (bzgl. der Aufgabe) genannt wird. Neben der Aufgabe innerhalb der Produktion wird für Schauspieler die Rolle
gespeichert, die sie gespielt haben.
Die komplette Beschreibung der gespeicherten Daten und das zugrundeliegene Datenbankschema
findet sich im Anhang in den Abschnitten A.1 und A.2.
46
5 Beispiele zum „Kombinierten Data Mining“
5.1 Experimente
5.1.1 Datengrundlage der durchgeführten Experimente
Die Grundlage für die hier durchgeführten Experimente bilden sechs unterschiedliche Ausschnitte
aus der MovieDB. Diese sollen im Folgenden kurz vorgestellt werden. Das Schema der entsprechenden Tabellen ist im Anhang in Abschnitt A.3 zu finden.
Action-Thriller
Bei den Action-Thrillern handelt es sich um Kinofilme aus den Genre „Action“ und/oder „Thriller“, für die ein Budget in Euro oder US-Dollar angegeben ist. Für diese Filme sind das Genre,
das Produktionsland (inkl. Kontinent), das Jahr (inkl. Dekade), das Rating und das Budget bekannt. Diese Informationen sind in der Tabelle actionthriller_movies gespeichert. Die Tabelle
actionthriller_actor enthält die Namen und die Position der Schauspieler, die in den Filmen
mitgespielt haben. Insgesamt gibt es 1859 Action-Thriller, welche die oben genannten Kriterien erfüllen, und 5021 verschiedene Schauspieler, die in diesen Filmen mitgewirkt haben.
Blockbuster (USA)
Bei den Blockbustern handelt es sich um Kinofilme aus den USA, die ein Rating von mindestens 7
haben. Dieses Kriterium erfüllen 3691 Filme. Zu diesen Filmen ist das Genre, das Produktionsland
(inkl. Kontinent), das Produktionsjahr (inkl. Dekade) und das Rating bekannt. Diese Informationen
finden sich in der Tabelle blockbuster_usa_movies. Auch zu diesen Filmen liegen Informationen
über die Schauspieler (Name, Position im Abspann) vor. Diese Informationen sind über die Tabelle
blockbuster_usa_actor zugänglich. Insgesamt handelt es sich um 3662 verschiedene Schauspieler.
Deutsche Filme
In der Tabelle german_movies sind alle deutschen Filme unabhängig von Typ und Genre erfasst.
Hier finden sich neben Kinofilmen auch Fernsehfilme und Videofilme1 . Insgesamt wurden 1380 Filme erfasst. Zu diesen Filmen sind der Typ, das Genre, das Produktionsland (inkl. Kontinent), das
Produktionsjahr (inkl. Dekade) und das Rating erfasst. In den erfassten Filmen haben 2208 Schauspieler mitgespielt. Die Informationen über die Schauspieler sind in der Tabelle german_actor gespeichert.
Deutsche Filme (mit Budget)
Bei den deutschen Filmen mit Budget handelt es sich prinzipiell um die gleichen Filme wie bei den
deutschen Filmen, jedoch sind in der Tabelle german_budget_movies nur Filme erfasst, für die ein
Budget in Euro angegeben ist. Hiervon existieren 107 Filme mit 117 unterschiedlichen Schauspielern. Die Informationen über die Schauspieler sind über die Tabelle german_budget_actor zugänglich.
Bei den deutschen Filmen mit Budget ist zu beachten, dass es sich nur um sehr wenige Filme mit
wenigen unterschiedlichen Schauspielern handelt und die Filme eine nicht repräsentative Teilmenge der deutschen Filme sind. Aus diesem Grund sollten die Ergebnisse einer Analyse auf dieser
Datengrundlage kritisch betrachtet werden. Ganz sollte allerdings nicht auf diese Filme verzichtet
werden, damit auch ein Clustering der deutschen Filme bzgl. ihres Budgets durchgeführt werden
kann.
1 Videofilme
sind Filme, die weder im Kino noch im Fernsehen gelaufen sind.
47
5 Beispiele zum „Kombinierten Data Mining“
Europäische Filme
Bei diesen Filmen handelt es sich um europäische Kinofilme mit einem angegebenen Budget in
Euro oder US-Dollar. Auch für diese Filme sind Informationen über das Genre, das Produktionsland (inkl. Kontinent), das Produktionsjahr (inkl. Dekade), das Rating und das Budget gespeichert.
Diese Informationen sind in der Tabelle european_movies enthalten. Die Informationen über die
beteiligten Schauspieler sind in der Tabelle european_actor gespeichert. Insgesamt gibt es 1284
europäische Kinofilme mit einem angegebenen Budget und es haben 2581 Schauspieler in diesen
Filmen mitgewirkt.
Komödien / Familienfilme
Die Kinofilme aus den Genre „Comedy“ und „Family“ mit einem angegebenen Budget in Euro oder
US-Dollar sind in der Tabelle comedyfamily_movies zusammengefasst. Zu diesen 1824 Filmen sind
das Genre, das Produktionsland (inkl. Kontinent), das Produktionsjahr (inkl. Dekade), das Rating
und das Budget erfasst. Die Daten der 4982 Schauspieler, die in diesen Filmen tätig waren, sind über
die Tabelle comedyfamily_actor abrufbar.
5.1.2 Durchgeführte Experimente
Auf der im obigen Abschnitt vorgestellten Datengrundlage wurden verschiedene Experimente zum
Vergleich des herkömmlichen und des „Kombinierten Data Mining“ durchgeführt. Auf der Datengrundlage wurde zum einen eine herkömmliche Assoziationsanalyse durchgeführt, um Assoziationsregeln zwischen Schauspielern zu finden. Zum anderen wurde ein „Kombiniertes Data Mining“ mit demselben Ziel durchgeführt, bei dem die Daten vor der Assoziationsanalyse mit verschiedenen Attributen geclustert wurden. Die Anzahl der erzeugten Cluster und die verwendeten
Attribute sind zusammen mit den Ergebnissen in Abschnitt 5.3 aufgeführt. Bei den durchgeführten
Untersuchungen wurden jeweils nur die n erstgenannten Schauspieler in die Berechnung mit einbezogen, um den Speicherplatzbedarf der Assoziationsanalyse zu reduzieren. Der minimale Support
für die durchgeführten Analysen wurde so gewählt, dass die Berechnungen mit dem gegebenen
Arbeitsspeicher (1024 MB) durchgeführt werden konnten. Die minimale Confidence für die gefundenen Regeln beträgt in allen durchgeführten Experimenten 50%.
Die durchgeführten Experimente sind in Tabelle 5.1 dargestellt. Die Spalten der Tabelle haben folgende Bedeutung.
Die Spalte „Nr.“ enthält eine eindeutige Nummer zur Identifikation und zur späteren Referenzierung auf die durchgeführte Anfrage. Die Spalte „Quelle“ beeinhaltet die verwendete Datenquelle (siehe vorherigen Abschnitt ). Die Spalte „Top n“ bezieht sich auf die Anzahl der verwendeten
Schauspieler - verwendet werden jeweils die n erstgenannten Schauspieler. Enthält diese Spalte keinen Wert (–), dann wurden alle gespeicherten Schauspieler bei der Suche nach Assoziationsregeln
berücksichtigt. Die Spalte „#Filme“ enthält die Anzahl der Filme (= Transaktionen). Die Spalten
„Support“ und „Conf.“ enthalten die für die Assoziationsanalyse verwendeten Support- und Confidencewerte. Der Supportwert ist hierbei einmal relativ in Prozent und einmal absolut angegeben
als Anzahl von Filmen, in denen die Schauspieler mindestens mitgespielt haben müssen.
48
5 Beispiele zum „Kombinierten Data Mining“
Nr.
1
2
3
4
5
6
7
Quelle
Action-Thriller
Action-Thriller
Blockbuster (USA)
Deutsche Filme
Deutsche Filme (Budget)
Europäische Filme
Komödien
Top n
4
3
4
3
–
5
5
#Filme
1648
1605
1390
1121
107
1047
1533
Support
0,24% = 4 Filme
0,18% = 3 Filme
0,20% = 3 Filme
0,20% = 3 Filme
1,50% = 2 Filme
0,35% = 4 Filme
0,25% = 4 Filme
Conf.
50%
50%
50%
50%
50%
50%
50%
Tabelle 5.1: Durchgeführte Experimente
5.2 Ergebnisse des herkömmlichen Data Mining
In diesem Abschnitt werden die Ergebnisse des herkömmlichen Data Mining vorgestellt. Die Ergebnisse der durchgeführten Experimente sind in Tabelle 5.2 abgebildet. Die Spalten der Tabelle haben
folgende Bedeutungen.
Die Spalte „Ref.“ beinhaltet eine Referenz auf die eindeutige Nummer der durchgeführten Analyse in der Tabelle 5.1 (Durchgeführte Experimente). Die Spalte „Quelle“ beeinhaltet die verwendete
Datenquelle (siehe vorherigen Abschnitt ). Die Spalten „#Regeln“ und „IW“ beziehen sich auf das
Ergebnis der Assoziationsanalyse. Die Spalte „#Regeln“ beinhaltet die Anzahl der gefundenen Regeln, die Spalte „IW“ das inhärente Wissen.
Ref.
1
2
3
4
5
6
7
Quelle
Action-Thriller
Action-Thriller
Blockbuster (USA)
Deutsche Filme
Deutsche Filme (Budget)
Europäische Filme
Komödien
#Regeln
25
45
53
71
57
188
264
IW
0,19 (9/4773)
0,96 (36/3739)
0,79 (29/3650)
1,46 (36/2474)
12,58 (38/302)
-0,47 (-14/2959)
0,06 (3/5163)
Tabelle 5.2: Ergebnisse des herkömmlichen Data Mining
5.3 Ergebnisse des Kombinierten Data Mining“
”
Die Ergebnisse der durchgeführten Experimente zum „Kombinierten Data Mining“ sind in den
folgenden Tabellen dargestellt. Die Spalten der Tabelle haben folgende Bedeutungen.
Die Spalte „Ref.“ beinhaltet eine Referenz auf die eindeutige Nummer der durchgeführten Analyse
in der Tabelle 5.1 (Durchgeführte Experimente). Indirekt erfolgt über diese Referenz auch die Zuordnung einer kombinierten Assoziationsanalyse zu einer herkömmlichen Assoziationsanalyse. Die
Spalte „Quelle“ beeinhaltet die verwendete Datenquelle (siehe vorherigen Abschnitt ). In der Spalte „Clusterattribute“ ist angegeben, welche Attribute für das Clustering verwendet wurden. Die
Spalte „#Cluster“ beinhaltet die Anzahl der erzeugten Cluster. Die Spalten „#Regeln“ und „IW“
beziehen sich auf das Ergebnis der Assoziationsanalyse. Die Spalte „#Regeln“ beinhaltet hierbei
49
5 Beispiele zum „Kombinierten Data Mining“
die Gesamtzahl der gefundenen Regeln in allen Clustern, die Spalte „IW“ das inhärente Wissen.
In der letzten Spalte „∆IW“ ist angegeben, wie sich das inhärente Wissen durch die Kombination
von Clustering und Assoziationsanalyse verändert hat. Angegeben ist die prozentuale Veränderung
des Maßes „IW“ des „Kombinierten Data Mining“ im Vergleich zum herkömmlichen Data Mining.
Eine positive Angabe (+) bedeutet, dass sich das Ergebnis durch die Kombination von Clustering
und Assoziationsanalyse verbessert hat, während eine negative Angabe (-) anzeigt, dass sich das
Ergebnis verschlechtert hat.
Das Ergebnis des herkömmlichen Data Mining ist aus praktischen Gründen jeweils in der ersten
Zeile der folgenden Tabellen nochmals angegeben. Da im herkömmlichen Fall nicht geclustert wurde, enthalten die Spalten „Clusterattribute“ und „#Cluster“ keine Werte.
Action-Thriller
Ref.
1
1
1
1
Quelle
Action-Thriller
Action-Thriller
Action-Thriller
Action-Thriller
Clusterattribute
#Cluster
Kontinent
Kontinent
Rating
2
3
3
#Regeln
25
25
25
0
IW
0,19 (9/4773)
0,19 (9/4773)
0,19 (9/4773)
0,00 (0/4733)
∆IW
±0%
±0%
-100%
Tabelle 5.3: Ergebnisse des „Kombinierten Data Mining“ (Action-Thriller [1])
Ref.
2
2
2
2
2
2
2
Quelle
Action-Thriller
Action-Thriller
Action-Thriller
Action-Thriller
Action-Thriller
Action-Thriller
Action-Thriller
Clusterattribute
#Cluster
Budget
Dekade
Kontinent
Kontinent
Rating
Budget, Kontinent
3
3
2
3
3
3
#Regeln
45
19
29
33
32
34
10
IW
0,96 (36/3739)
0,37 (14/3739)
0,62 (23/3739)
0,80 (30/3739)
0,72 (27/3739)
0,43 (16/3739)
0,29 (11/3739)
∆IW
-61%
-36%
-17%
-25%
-56%
-69%
Tabelle 5.4: Ergebnisse des „Kombinierten Data Mining“ (Action-Thriller [2])
Blockbuster (USA)
Ref.
3
3
3
3
3
3
Quelle
Blockbuster (USA)
Blockbuster (USA)
Blockbuster (USA)
Blockbuster (USA)
Blockbuster (USA)
Blockbuster (USA)
Clusterattribute
#Cluster
Dekade
Genre
Rating
Dekade, Genre
Genre, Rating
3
3
3
3
3
#Regeln
53
23
52
53
17
52
IW
0,79 (29/3650)
0,49 (18/3650)
1,04 (38/3650)
0,85 (31/3650)
0,85 (31/3650)
0,85 (31/3650)
Tabelle 5.5: Ergebnisse des „Kombinierten Data Mining“ (Blockbuster (USA))
50
∆IW
-38%
+31%
+7%
+7%
+7%
5 Beispiele zum „Kombinierten Data Mining“
Deutsche Filme
Ref.
4
4
4
4
4
4
4
4
4
4
4
4
Quelle
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Deutsche Filme
Clusterattribute
#Cluster
Dekade
Genre
Rating
Typ
Typ
Dekade, Rating
Dekade, Rating
Rating, Typ
Rating, Typ
Rating, Typ
Rating, Typ
3
3
3
3
5
3
5
2
3
4
5
#Regeln
71
69
70
78
76
76
80
81
76
82
83
81
IW
1,46 (36/2474)
1,37 (34/2474)
1,90 (47/2474)
2,34 (58/2474)
1,78 (44/2474)
1,78 (44/2474)
1,86 (46/2474)
1,78 (44/2474)
1,78 (44/2474)
2,47 (61/2474)
2,63 (65/2474)
2,67 (66/2474)
∆IW
-6%
+31%
+61%
+22%
+22%
+28%
+22%
+22%
+69%
+81%
+83%
Tabelle 5.6: Ergebnisse des „Kombinierten Data Mining“ (Deutsche Filme)
Deutsche Filme (mit Budget)
Ref.
5
5
5
5
5
5
5
5
Quelle
Deutsche Filme (Budget)
Deutsche Filme (Budget)
Deutsche Filme (Budget)
Deutsche Filme (Budget)
Deutsche Filme (Budget)
Deutsche Filme (Budget)
Deutsche Filme (Budget)
Deutsche Filme (Budget)
Clusterattribute
#Cluster
Budget
Budget
Budget
Rating
Typ
Rating, Typ
Rating, Typ
2
3
4
3
3
3
5
#Regeln
57
50
46
35
54
50
54
45
IW
12,58 (38/302)
9,93 (30/302)
10,60 (32/302)
8,61 (26/302)
14,57 (44/302)
13,25 (40/302)
14,57 (44/302)
12,91 (39/302)
∆IW
-21%
-16%
-32%
+16%
+5%
+16%
+3%
Tabelle 5.7: Ergebnisse des „Kombinierten Data Mining“ (Deutsche Filme (mit Budget))
Europäische Filme
Ref.
6
6
6
6
6
6
6
6
6
6
Quelle
Europäische Filme
Europäische Filme
Europäische Filme
Europäische Filme
Europäische Filme
Europäische Filme
Europäische Filme
Europäische Filme
Europäische Filme
Europäische Filme
Clusterattribute
#Cluster
Budget
Dekade
Jahr
Land
Land
Rating
Budget, Rating
Dekade, Rating
Land, Rating
3
3
3
2
3
3
3
3
3
#Regeln
188
186
4
6
188
188
186
186
186
2
IW
-0,47 (-14/2959)
-0,34 (-10/2959)
0,30 (9/2959)
0,57 (17/2959)
-0,47 (-14/2959)
-0,47 (-14/2959)
0,34 (10/2959)
-0,34 (-10/2959)
0,34 (10/2959)
0,27 (8/2959)
Tabelle 5.8: Ergebnisse des „Kombinierten Data Mining“ (Europäische Filme)
51
∆IW
+29%
+164%
+221%
±0%
±0%
+171%
+29%
+171%
157%
5 Beispiele zum „Kombinierten Data Mining“
Komödien / Familienfilme
Ref.
7
7
7
7
7
7
7
7
7
Quelle
Komödien
Komödien
Komödien
Komödien
Komödien
Komödien
Komödien
Komödien
Komödien
Clusterattribute
Budget
Budget
Budget
Dekade
Jahr
Kontinent
Rating
Budget, Rating
#Cluster
2
3
4
3
3
3
3
3
#Regeln
264
263
265
188
265
7
189
264
265
IW
0,06 (3/5163)
0,37 (19/5163)
0,21 (11/5163)
-0,25 (-13/5163)
0,14 (7/5163)
0,41 (21/5163)
-0,04 (-2/5163)
0,62 (32/5163)
0,21 (11/5163)
∆IW
+533%
+267%
-533%
+133%
+600%
-167%
+967%
+267%
Tabelle 5.9: Ergebnisse des „Kombinierten Data Mining“ (Komödien / Familienfilme)
5.4 Analyse der Ergebnisse
In diesem Abschnitt sollen die Ergebnisse der durchgeführten Experimente untersucht werden. Im
Abschnitt „Statistische Auswertung der Ergebnisse“ sollen zunächst die Fragen „Wie viele Ergebnisse konnten verbessert werden?“ und „Welche Clusterattribute liefern die besten Ergebnisse?“
beantwortet werden. In Abschnitt 5.4.2 soll dann anhand von ausgewählten Experimenten und Ergebnismengen untersucht werden, weshalb es zu einer Verbesserung bzw. zu einer Verschlechterung der Ergebnisse kommt.
5.4.1 Statistische Auswertung der Ergebnisse
Zunächst kann festgestellt werden, dass es durch die Kombination von Clustering und Assoziationsanalyse grundsätzlich möglich ist, eine Verbesserung des Ergebnisses im Vergleich zum herkömmlichen Data Mining zu erzielen. Bei den hier verwendeten Daten kam es bei fünf von sieben
Ausschnitten aus der MovieDB zu einer Verbesserung des Ergebnisses in mindestens einem Fall.
Werden die richtigen Clusterattribute zur Aufteilung der Daten verwendet, kommt es in der Mehrheit der Fälle zu einer Verbesserung des Ergebnisses.
Bei den 49 insgesamt durchgeführten Experimenten wurde in 31 Fällen eine Verbesserung des Ergebnisses erzielt, in vier Fällen hat sich das Ergebnis nicht verändert und in 14 Fällen hat sich das
Ergebnis durch das „Kombinierte Data Mining“ verschlechtert. Die Anzahl der gefundenen Regeln
hat sich durch die Kombination von Clustering und Assoziationsanalyse ebenfalls verändert: In 12
Fällen wurden mehr Regeln gefunden als ohne die Kombination, in sechs Fällen hat sich die Anzahl
der Regeln nicht verändert und in 31 Fällen wurden weniger Regeln gefunden.
Bei der hier verwendeten Datengrundlage haben sich die Attribute Genre und Rating als besonders
gute Attribute zum Clustern der Daten herausgestellt, wenn Assoziationsregeln zwischen Schauspielern gesucht werden. Die Attribute Budget, Dekade und Kontinent haben hingegen in den meisten Fällen zu einer Verschlechterung der Ergebnisse geführt.
Anhand der Ergebnisse der Experimente können nun auch für die einzelnen Ausschnitte aus der
MovieDB die am besten geeigneten Clusterattribute identifiziert werden. Clusterattribute, die ein
gutes Resultat bzgl. des Maßes IW erzielt haben, aber gleichzeitig zu einer deutlichen Reduktion der
gefundenen Assoziationsregeln geführt haben, sind in Klammern angegeben. Wurde mehr als ein
Attribut zum Clustern der Daten verwendet, sind die verwendeten Attribute in Mengenklammern
angegeben. Diese besten Clusterattribute sind in Tabelle 5.10 dargestellt.
52
5 Beispiele zum „Kombinierten Data Mining“
Quelle
Actionthriller (1)
Actionthriller (2)
Blockbuster
Deutsche Filme
Deutsche Filme (mit Budget)
Europäische Filme
Komödien
optimale Clusterattribute
∅
∅
Genre, Rating
{Rating, Typ}, Rating, Genre
Rating, {Rating, Typ}
Rating, (Dekade), (Jahr)
Rating, (Jahr), Budget
Tabelle 5.10: optimale Clusterattribute
5.4.2 Analyse der Ergebnisse anhand von Beispielen
In diesem Abschnitt soll in erster Linie das Zustandekommen der Ergebnisse untersucht werden.
Es soll die Frage geklärt werden, warum sich manche Attribute gut zum Clustern der Daten bei der
Kombination aus Clustering und Assoziationsanalyse eignen und andere Attribute hingegen zu
einer Verschlechterung der Ergebnisse führen. Zur Untersuchung der Ergebnisse wird jeweils das
Ergebnis eines herkömmlichen Data Mining mit dem Ergebnis des „Kombinierten Data Mining“
verglichen. Zur Analyse wurden diejenigen Anfragen ausgewählt, die auf eine bestimmte Weise
auffällig waren.
Blockbuster
Die Blockbuster wurden für eine Analyse des Ergebnisses ausgewählt, weil sich durch ein Clustering mit dem Attribut „Genre“ eine Verbesserung des Maßes IW erzielen lässt, obwohl die Anzahl
der gefundenen Assoziationsregeln geringer ist als im herkömmlichen Fall.
Beim Clustering mit dem Attribut „Genre“ werden drei Cluster erzeugt: Der erste Cluster enthält
751 Filme mit unterschiedlichen Genre, der zweite Cluster enthält 162 Kriminalfilme und der dritte
Cluster 477 Filme mit dem Genre „Drama“. Lediglich im ersten Cluster werden Assoziationsregeln
gefunden. Daraus folgt, dass keine Assoziationsregel doppelt auftritt.
Im Vergleich zum herkömmlichen Data Mining wird eine Regel weniger gefunden (siehe Listing
5.1) und es konnte keine neue Assoziationsregel gefunden werden. Der Verlust der Regel kommt
durch eine ungünstige Aufteilung der Transaktionen beim Clustering zustande. Die Schauspieler
Joe Pesci und Robert De Niro haben gemeinsam in den Filmen „Casino“, „Raging Bull“ und „Godfellas“ mitgespielt. Durch das Clustering wird der Film „Casino“ dem zweiten Cluster zugeordnet,
während die anderen beiden Filme dem ersten Cluster zugeordnet werden. Da für die Assoziationsanalyse der absolute Support auf drei Filme festgelegt worden ist, wird die Assoziationsregel beim
herkömmlichen Data Mining gefunden. Durch die Aufteilung der Filme in zwei Cluster wird der
minimale Support in keinem der Cluster erreicht, so dass diese Regel bei der Assoziationsanalyse
nicht gefunden wird.
’ Pesci , Joe ’
=>
’ De Niro , Robert ’
( Confidence =0.75)
Listing 5.1: Ergebnis des „Kombinierten Data Mining“ (nur fehlende Regeln)
Der Verlust dieser Regel wird dadurch kompensiert, dass sieben Assoziationsregeln durch die Kombination von Clustering und Assoziationsanalyse bzgl. der Confidence verbessert worden sind. 45
Regeln bleiben durch die Kombination von Clustering und Assoziationsanalyse im Vergleich zur
53
5 Beispiele zum „Kombinierten Data Mining“
herkömmlichen Assoziationsanalyse unverändert und es werden keine Regeln verschlechtert. Die
verbesserten Regeln sind im Vergleich zu den herkömmlichen Regeln in den Listings 5.2 und 5.3
dargestellt.
’ Shatner , William ’ = > ’ Doohan , James ’ ( Confidence =0.75)
’ Shatner , William ’ = > ’ Kelley , DeForest ’ ( Confidence =0.75)
’ Shatner , William ’ = > ’ Nimoy , Leonard ’ ( Confidence =0.75)
’ Jackman , Hugh ’ = > ’ Stewart , Patrick ’ ( Confidence =0.75)
’ Jackman , Hugh ’ = > ’ McKellen , Ian ’ ( Confidence =0.75)
’ Farrow , Mia ’ = > ’ Allen , Woody ’ ( Confidence =0.57)
’ Keaton , Diane ’ = > ’ Allen , Woody ’ ( Confidence =0.56)
Listing 5.2: Ergebnis des herkömmlichen Data Mining (nur veränderte Regeln)
’ Shatner , William ’ = > ’ Doohan , James ’ ( Confidence =1)
’ Shatner , William ’ = > ’ Kelley , DeForest ’ ( Confidence =1)
’ Shatner , William ’ = > ’ Nimoy , Leonard ’ ( Confidence =1)
’ Jackman , Hugh ’ = > ’ Stewart , Patrick ’ ( Confidence =1)
’ Jackman , Hugh ’ = > ’ McKellen , Ian ’ ( Confidence =1)
’ Farrow , Mia ’ = > ’ Allen , Woody ’ ( Confidence =0.8)
’ Keaton , Diane ’ = > ’ Allen , Woody ’ ( Confidence =1)
Listing 5.3: Ergebnis des „Kombinierten Data Mining“ (nur veränderte Regeln)
In diesem Beispiel kommt die Verbesserung des Maßes dadurch zustande, dass sich die Confidence
einzelner Regeln erhöht und es somit weniger Ausnahmen von den gefundenen Assoziationsregeln
gibt. Dadurch kann ein höherer Komprimierungsgewinn erzielt werden, was zu einer Erhöhung des
Maßes IW führt (vgl. 4.2.6). Der Grund für die Erhöhung der Confidence einzelner Regeln ist, dass
Transaktionen, die eine Ausnahme zu den gefundenen Assoziationsregeln darstellen, durch das
Clustering einem anderen Cluster zugeordnet werden. Für den hier untersuchten Cluster existieren
dementsprechend weniger Ausnahmen von diesen Regeln, welches letztendlich zur Erhöhung des
Maßes IW führt. Für die einzelnen Assoziationsregeln kommt die Erhöhung der Confidence wie
folgt zustande:
Die Schauspieler William Shatner, DeForest Kelley, Leonard Nimoy und James Doohan haben gemeinsam in den Filmen2 „Star Trek II: The Wrath of Khan“, „Star Trek IV: The Voyage home“ und
„Star Trek VI: The undiscovered country“ der „Star Trek“-Reihe mitgespielt. William Shatner hat
zusätzlich noch in dem Film „The Intruder“ mitgespielt, bei dem es sich um ein Drama handelt. An
diesem Film waren die anderen Schauspieler nicht beteiligt. Beim herkömmlichen Data Mining gelten die Regeln „’Shatner, William’ => ’Doohan, James’“, „’Shatner, William’ => ’Kelley, DeForest’“
und „’Shatner, William’ => ’Nimoy, Leonard’“ also nur in drei von vier Fällen (Confidence = 75%).
Durch das Clustering beim „Kombinierten Data Mining“ werden die Filme allerdings unterschiedlichen Clustern zugeordnet: Während die Filme der „Star Trek“-Reihe dem ersten Cluster zugeordnet
werden, gehört der Film „The Intruder“ zum dritten Cluster (Drama). Dies führt dazu, dass die hier
untersuchten Assoziationsregeln mit den Schauspielern William Shatner, DeForest Kelley, Leonard
Nimoy und James Doohan im ersten Cluster für alle Filme mit William Shatner gelten (Confidence
= 100%).
Die Erhöhung der Confidence bei den Regeln ’Jackman, Hugh’ => ’Stewart, Patrick’ und
’Jackman, Hugh’ => ’McKellen, Ian’ ist auf ähnliche Gründe zurück zu führen. Die drei Schauspieler haben gemeinsam in den Filmen „X-Men“, „X-Men 2“ und „X-Men: The last stand“ mitgespielt.
Zusätzlich zu diesen Filmen hat Hugh Jackman noch in dem Drama „Prestige“ mitgespielt. Die
2 Bei
den hier betrachteten Filmen handelt es sich nur um die Filme aus der Tabelle „Blockbuster_USA_Movies“.
54
5 Beispiele zum „Kombinierten Data Mining“
Aufteilung der Filme durch das Clustering sorgt dafür, dass im kombinierten Fall dieser Film einem anderen Cluster zugeordnet wird als die anderen drei Filme. Dies führt dazu, dass die beiden
Assoziationsregeln im herkömmlichen Fall eine Confidence von 75% haben, während sie im kombinierten Fall eine Confidence von 100% erreichen.
Auch für die restlichen zwei Assoziationsregeln gilt, dass die Erhöhung der Confidence dadurch
zustande kommt, dass Filme, die eine Ausnahme von einer Assoziationsregel bilden, einem anderen Cluster zugeordnet werden. Mia Farrow und Woody Allen haben gemeinsam in vier Filmen
mitgespielt. In den Filmen „Another Woman“ (Drama), „The purple Rose of Cairo“ (Comedy) und
„Rosemary’s Baby“ (Drama) hat hingegen nur Mia Farrow mitgespielt. Durch das Clustering beim
„Kombinierten Data Mining“ werden die beiden Dramen dem dritten Cluster und die restlichen Filme dem ersten Cluster zugeordnet. Somit existieren im ersten Cluster weniger Ausnahmen von der
Assoziationsregel „’Farrow, Mia’ => ’Allen, Woody’“, was zu einer Verbesserung der Confidence
führt. Diane Keaton hat in fünf Filmen mit Woody Allen zusammengearbeitet. In den Filmen „The
Godfather I-III“ und „Sleeper“ hat Woody Allen im Gegensatz zu Diane Keaton nicht mitgespielt.
Da diese vier Filme alle als „Drama“ klassifiziert sind, führt das Clustering zu einer Aufspaltung in
Filme, in denen Diane Keaton alleine aufgetreten ist (Cluster 3), und in solche, in denen sie gemeinsam mit Woody Allen (Cluster 1) mitgespielt hat. Dies führt dazu, dass es im ersten Cluster keine
Ausnahmen von der Regel „’Keaton, Diane’ => ’Allen, Woody’“ gibt.
Deutsche Filme
Im Vergleich zu den Blockbustern tritt bei den deutschen Filmen eine Verbesserung des Maßes IW
zusammen mit einer größeren Anzahl von gefundenen Assoziationsregeln auf, wenn diese Filme
mittels des Attributs „Rating“ geclustert werden. Bei diesem Beispiel sind in erster Linie die zusätzlich entstandenen Regeln interessant und sollen näher betrachtet werden.
Bei der Aufteilung der Daten mittels des Attributs „Rating“ entstehen drei Cluster: Im ersten Cluster
finden sich 305 Filme, die ein hohes Rating erhalten haben. Im zweiten Cluster finden sich 719 Filme,
die ein mittleres Rating erhalten haben, und im dritten Cluster 97 Filme mit einem niedrigen Rating.
In allen drei Clustern können Regeln identifiziert werden: Im ersten Cluster 14 Assoziationsregeln,
im zweiten 52 und im dritten 12. Interessanterweise gelten alle gefundenen Assoziationsregeln in
jeweils genau einem Cluster.
Im Vergleich zum herkömmlichen Data Mining gehen insgesamt 14 Regeln verloren. Hiervon eine
mit einer Confidence von 100%, drei Regeln mit einer Confidence von 67% und acht Regeln mit einer
Confidence von 50%. Im Gegensatz dazu können aber 21 bisher unbekannte Regeln identifiziert
werden. Hiervon weisen sechs eine Confidence von 100% auf, sieben eine Confidence von 67% und
acht eine Confidence von 50%. Bei den neuen Regeln ist insbesondere der erste Cluster von großem
Interesse, weil in diesem Cluster insgesamt 14 Assoziationsregeln gefunden werden, wovon acht
neu sind.
Die Assoziationsregeln, welche durch das „Kombinierte Data Mining“ verloren gehen sind, können
durch die neu gefundenen Regeln kompensiert werden. Insgesamt tragen die neuen Regeln sogar
zur Verbesserung des Maßes IW bei, da es sich bei diesen Assoziationsregeln um Regeln mit einer
höheren Confidence im Vergleich zu den verloren gegangenen Regeln handelt. Die neuen Regeln
sind in Listing 5.4 dargestellt.
Neben der Verbesserung des Maßes IW durch die zusätzlichen Regeln tritt auch dadurch eine Verbesserung auf, dass 14 Assoziationsregeln durch die Kombination von Clustering und Assoziationsanalyse bzgl. der Confidence verbessert werden können. Eine Verschlechterung von Assoziationsregeln ist bzgl. der Confidence nicht zu beobachten. Vier Regeln weisen durch die Kombination
55
5 Beispiele zum „Kombinierten Data Mining“
einen schlechteren Support auf. In den Listings 5.5 und 5.6 sind die Regeln aufgeführt, die die deutlichste Verbesserung durch die Kombination von Clustering und Assoziationsanalyse im Vergleich
zum herkömmlichen Data Mining erfahren haben.
Cluster 1:
’ Behrendt , Klaus J . ’ = > ’ George , Götz ’ ( Confidence =1)
’ Mühe , Ulrich ’ = > ’ Gedeck , Martina ’ ( Confidence =1)
’ Giller , Walter ’ = > ’ Held , Martin ’ ( Confidence =0.67)
’ Held , Martin ’ = > ’ Giller , Walter ’ ( Confidence =0.67)
’ Knaup , Herbert ’ = > ’ Bleibtreu , Moritz ’ ( Confidence =0.67)
’ Mira , Brigitte ’ = > ’ Carstensen , Margit ’ ( Confidence =0.5)
’ Vogler , Rüdiger ’ = > ’ Kreuzer , Lisa ’ ( Confidence =0.5)
’ Paul , Christiane ’ = > ’ Vogel , Jürgen ’ ( Confidence =0.5)
Cluster 2:
’ Klinger , Paul ’ = > ’ Brühl , Heidi ’ ( Confidence =1)
’ Klinger , Paul ’ = > ’ Meissner , Angelika ’ ( Confidence =1)
’ Held , Martin ’ = > ’ Krüger , Hardy ’ ( Confidence =0.67)
’ Schygulla , Hanna ’ = > ’ Lommel , Ulli ’ ( Confidence =0.67)
’ Adorf , Mario ’ = > ’ Landgrebe , Gudrun ’ ( Confidence =0.5)
’ Palmer , Lilli ’ = > ’ Schneider , Romy ’ ( Confidence =0.5)
’ Glas , Uschi ’ = > ’ Lingen , Theo ’ ( Confidence =0.5)
’ Stadlober , Robert ’ = > ’ Schilling , Tom ’ ( Confidence =0.5)
’ Berkel , Christian ’ = > ’ Sawatzki , Andrea ’ ( Confidence =0.5)
Cluster 3:
’ Schell , Maria ’ = > ’ Fischer , O . W . ’ ( Confidence =1)
’ Hoven , Adrian ’ = > ’ Söderbaum , Kristina ’ ( Confidence =1)
’ Fischer , O . W . ’ = > ’ Schell , Maria ’ ( Confidence =0.67)
’ Glas , Uschi ’ = > ’ Kraus , Hans ’ ( Confidence =0.67)
Listing 5.4: Zusätzliche Regeln durch die Kombination von Clustering und Assoziationsanalyse
’ Hoven , Adrian ’ = > ’ Birgel , Willy ’ ( Confidence =0.5)
’ Birgel , Willy ’ = > ’ Söderbaum , Kristina ’ ( Confidence =0.5)
’ Lingen , Theo ’ = > ’ Glas , Uschi ’ ( Confidence =0.5)
’ Lommel , Ulli ’ = > ’ Schygulla , Hanna ’ ( Confidence =0.5)
’ Timoteo , Sabine ’ = > ’ Vogel , Jürgen ’ ( Confidence =0.5)
Listing 5.5: Ergebnis des herkömmlichen Data Mining (nur veränderte Regeln)
Cluster 1:
’ Timoteo , Sabine ’
Cluster 2:
’ Lingen , Theo ’
’ Lommel , Ulli ’
Cluster 3:
’ Birgel , Willy ’
’ Hoven , Adrian ’
=>
=>
=>
=>
=>
’ Vogel , Jürgen ’
( Confidence =1)
’ Glas , Uschi ’ ( Confidence =1)
’ Schygulla , Hanna ’ ( Confidence =1)
’ Söderbaum , Kristina ’ ( Confidence =1)
’ Birgel , Willy ’ ( Confidence =1)
Listing 5.6: Ergebnis des „Kombinierten Data Mining“ (nur veränderte Regeln)
Insgesamt kommt die Verbesserung des Ergebnisses durch die Kombination von Clustering und
Assoziationsanalyse in diesem Fall durch zwei Aspekte zustande. Auf der einen Seite führen die zusätzlichen Assoziationsregeln zu einer Verbesserung des Maßes und gleichen die verlorenen Asso56
5 Beispiele zum „Kombinierten Data Mining“
ziationsregel mehr als aus, auf der anderen Seite sorgen die verbesserten Assoziationsregeln für
eine weitere Verbesserung des Ergebnisses.
Deutsche Filme (mit Budget)
Bei den deutschen Filmen mit Budget kommt es nach einem Clustering mit dem Attribut „Budget“
zu einer Verschlechterung des Ergebnisses. Die Verschlechterung ist am größten beim Clustering
mit der Zielsetzung, zwei Cluster zu erzeugen. Deshalb soll auch in diesem Fall überprüft werden,
wie dieses Ergebnis zustande kommt.
Insgesamt wurden bei diesem Experiment 107 Filme in die Betrachtung einbezogen. Bei den deutschen Filmen mit Budget handelt es sich damit um das kleinste der hier durchgeführten Experimente. Das Clustering ergibt zwei Cluster, wobei der erste Cluster alle Filme mit einem Budget zwischen
43 und 150 Millionen enthält. Hiervon gibt es 14 Filme. Der zweite Cluster enthält insgesamt 93 Filme, die ein Budget zwischen 891 Euro und 40 Millionen Euro aufweisen.
Die Suche nach Assoziationsregeln führt nur im zweiten Cluster zum Erfolg: Hier werden insgesamt 50 Assoziationsregeln gefunden. Zum Vergleich: Ohne Clustering können 57 Assoziationsregeln gefunden werden. Insgesamt gehen durch die Kombination von Clustering und Assoziationsanalyse zehn Regeln verloren, es können aber drei neue Regeln gefunden werden. Die zehn
fehlenden Regeln setzen sich aus drei Regeln mit einer Confidence mit 100% und sieben Regeln
mit einer Confidence von 67% zusammen. Die drei neuen Regeln haben lediglich eine Confidence
von 50%. Insgesamt können durch das Clustering nur drei Regeln bzgl. der Confidence verbessert
werden. Der Support der vorhandenen Regeln ist in beiden Fällen identisch.
Insgesamt lässt sich festhalten, dass sich die Verschlechterung des Maßes in erster Linie auf das
Fehlen der zehn Assoziationsregeln zurückführen lässt. Die Entdeckung von drei neuen Regeln, die
bzgl. der Confidence auch noch schlechter sind, und die drei verbesserten Regeln führen nicht zu
einer solch großen Verbesserung, als dass der Verlust der Assoziationsregeln ausgeglichen werden
könnte.
Komödien
Bei den Komödien kommt es wie auch bei den deutschen Filmen mit Budget zu einer Verschlechterung, wenn die Daten vorher mit Hilfe des Budgets in Cluster aufgeteilt werden. Auf Grund der
Vielzahl der Regeln soll an dieser Stelle auf eine vollständige Auswertung des Ergebnisses verzichtet werden und stattdessen das Ergebnis des Maßes IW anhand der Anzahl der gefundenen Regeln
erklärt werden.
Näher untersucht werden soll das Experiment, bei dem die Daten in vier Cluster aufgeteilt wurden.
Hierbei enthält der erste Cluster 792 Filme mit einem Budget zwischen 50 und 11.500.000 Euro. Darin können 188 Assoziationsregeln gefunden werden. In den übrigen Clustern können keine Assoziationsregeln gefunden werden. Hierbei handelt es sich um folgende Cluster: Cluster 2 (Budget:
750 - 225 Millionen Euro / 77 Elemente), Cluster 3 (Budget: 35 - 74 Millionen Euro / 288 Elemente)
und Cluster 4 (Budget: 12 - ca. 34 Millionen Euro / 436 Elemente).
Im Vergleich zum herkömmlichen Data Mining stellt man fest, dass durch die Aufteilung der Daten
mit Hilfe des Attributs „Budget“ viele Regeln verloren gehen. Insgesamt können im herkömmlichen Fall 264 Assoziationsregeln gefunden werden, während es im kombinierten Fall nur 188 Regeln sind. Das bedeutet, dass insgesamt 76 Regeln durch das „Kombinierte Data Mining“ verloren
gehen. Wenn man das Ergebnis noch genauer betrachtet, stellt man fest, dass überwiegend gute
Regeln durch die Kombination von Clustering und Assoziationsanalyse verloren gehen: Während
57
5 Beispiele zum „Kombinierten Data Mining“
im herkömmlichen Fall 227 Assoziationsregeln mit einer Confidence von 100% gefunden werden,
sind dies im kombinierten Fall nur noch 160 Regeln. Das bedeutet, dass 88% der verlorenen Regeln
eine Confidence von 100% haben. Die gesamte Verteilung der Assoziationsregeln ist in Tabelle 5.11
dargestellt.
Confidence
100%
90% - 99%
80% - 89%
70% - 79%
60% - 69%
50% - 59%
#herkömmlich
227
0
19
1
7
10
#kombiniert
160
0
16
1
4
7
Tabelle 5.11: Verteilung der Assoziationsregeln
Durch die Kombination von Clustering und Assoziationsanalyse gehen überwiegend gute Regeln
verloren oder werden zumindest deutlich verschlechtert. Der Verlust vieler Regeln mit einer hohen Confidence sorgt insgesamt für die deutliche Verschlechterung des Ergebnisses und somit des
Maßes IW.
Europäische Filme
Die Europäischen Filme wurden für eine nähere Analyse ausgewählt, weil es durch ein Clustering
mit dem Attribut „Rating“ zu einer Verbesserung des Maßes IW kommt, obwohl genauso wie bei
den Blockbustern weniger Assoziationsregeln gefunden werden. Wie bei den Komödien soll auch
in diesem Fall auf Grund der Vielzahl der gefundenen Regeln keine vollständige Auswertung des
Ergebnisses durchgeführt werden, sondern stattdessen die Veränderung des Maßes IW wieder über
die Verteilung der Assoziationsregeln erläutert werden.
Das Clustering mit dem Attribut „Rating“ liefert drei Cluster: Cluster 1 enthält die Filme mit einem
hohem Rating, Cluster 2 die Filme mit einem mittleren Rating und Cluster 3 die Filme mit einem
niedrigen Rating. Der erste Cluster enthält 311 Filme, der zweite 673 und der dritte 63. Lediglich im
ersten Cluster können Assoziationsregeln gefunden werden, so dass auch keine Regeln mehrfach
vorkommen.
Im Vergleich zum herkömmlichen Data Mining werden beim „Kombinierten Data Mining“ nur
Assoziationsregeln mit einer Confidence ≥ 80% gefunden. Außerdem können mehr Regeln mit
einer Confidence von 100% gefunden werden. Die Verteilung aller Regeln ist in Tabelle 5.12 angegeben.
Confidence
100%
90% - 99%
80% - 89%
70% - 79%
60% - 69%
50% - 59%
#herkömmlich
161
0
12
1
9
5
#kombiniert
174
0
12
0
0
0
Tabelle 5.12: Verteilung der Assoziationsregeln
Die Verbesserung des Maßes IW erklärt sich dadurch, dass nur Regeln mit einer Confidence von
unter 79% fehlen. Diese wurden entweder so verbessert, dass ihre Confidence größer als 80% ist,
58
5 Beispiele zum „Kombinierten Data Mining“
oder sie sind durch die Kombination von Clustering und Assoziationsanalyse verloren gegangen
und durch neue, bessere Regeln ersetzt worden. Darüber hinaus werden insgesamt 13 Assoziationsregeln mit einer Confidence von 100% zusätzlich gefunden bzw. auf diesen Confidencewert
verbessert.
5.4.3 Fazit
Wie in Abschnitt 5.4.1 bereits erwähnt, kann in den meisten Fällen davon ausgegangen werden, dass
sich die Ergebnisse einer Assoziationsanalyse durch die Kombination von Clustering und Assoziationsanalyse verbessern lassen, wenn die richtigen Clusterattribute verwendet werden. Die Verbesserung der Ergebnisse kommt in den meisten Fällen durch zwei Effekte zustande: Auf der einen
Seite kann die Kombination aus Clustering und Assoziationsanalyse wie erhofft neue Assoziationsregeln finden, die eine herkömmliche Assoziationsanalyse nicht findet. Hierbei handelt es sich um
Assoziationsregeln, die nur auf einem bestimmten Teilbereich der Daten gelten, so z. B. nur in Filmen mit einem hohen Rating. Auf der anderen Seite kommen die Verbesserungen dadurch zustande, dass verbesserte Regeln gefunden werden. Dies betrifft meist die Verbesserung der Confidence
einer Regel, so dass es weniger Ausnahmen einer Regel in einem bestimmten Teilbereich der Daten
gibt. Es wurde also eine bessere Assoziationsregel gefunden, die allerdings (in dieser Form) nur auf
einem Teilbereich der Daten gültig ist.
Die Verschlechterung der Ergebnisse durch die Kombination hängt in den meisten Fällen mit dem
Verlust von Regeln zusammen. Durch eine ungünstige Aufteilung der Daten können sowohl die
Confidence als auch der Support einer Regel soweit absinken, dass sie durch die Assoziationsanalyse (unter den gegebenen Parametern) nicht mehr gefunden werden. Wenn dieser Effekt so stark
ist, dass er weder durch die Verbesserung von Regeln noch durch neue Regeln aufgefangen werden
kann, kommt es zu einer Verschlechterung des Ergebnisses und damit zu einer Verschlechterung
des Maßes IW.
5.5 Laufzeitanalyse
Wie in Abschnitt 3.4.2 bereits erwähnt wurde, ist durch die Kombination von Clustering und Assoziationsanalyse eine Verbesserung der Laufzeit des Data Mining zu erwarten. In Abbildung 5.1 sind
die Laufzeiten der durchgeführten Experimente (in Minuten) dargestellt. An erster Stelle ist jeweils
die Laufzeit des herkömmlichen Data Mining („herkömmliches DM“) dargestellt. Wurden für ein
Attribut verschiedene Experimente mit unterschiedlicher Clusteranzahl durchgeführt, ist in den
Diagrammen die durchschnittliche Laufzeit angegeben. Nicht dargestellt sind die Ergebnisse der
deutschen Filme mit Budget, da auf Grund der geringen Laufzeit von 3 Sekunden keine Veränderung der Laufzeit für die Berechnung der Ergebnisse festgestellt werden konnte. Die vollständigen
Ergebnisse der Laufzeitanalyse sind in Anhang B zu finden.
Die Ergebnisse der Experimente bestätigen die Annahme, dass durch die Kombination eine Verbesserung der Laufzeit erreicht werden kann. Diese beträgt bis zu 80%, ohne dass eine Verschlechterung der Ergebnisse eintritt, bzw. bis zu 70%, wenn nur die besten Resultate bzgl. des Maßes IW
betrachtet werden. Der größte absolute Zeitgewinn lässt sich bei den Actionthrillern erzielen. Die
Laufzeit reduziert sich hier von ca. 45 Minuten auf ca. 9 Minuten, ohne dass eine Verschlechterung
der Ergebnisse eintritt. Werden auch Ergebnisse berücksichtigt, die bzgl. des Maßes IW eine Verschlechterung der Ergebnisse im Vergleich mit dem herkömmlichen Data Mining darstellen, kann
eine Verbesserung um bis zu 90% erreicht werden.
In insgesamt 31 Fällen konnte eine Reduzierung der Laufzeit durch die Kombination von Clustering und Assoziationsanalyse erzielt werden. In lediglich einem Fall hat die Kombination zu einer
Verschlechterung der Laufzeit geführt.
59
5 Beispiele zum „Kombinierten Data Mining“
44:53
8:50
8:22
herkömmliches
DM
herkömmliches
DM
Kontinent
Rating
Kontinent
Rating
Budget
Budget+Kontinent
Dekade
3:46
2:34
2:09
8:50
1:32
3:46
Actionthriller
Actionthriller 2
11:26
herkömmliches
DM
7:17
herkömmliches
DM
Rating
Kontinent
Rating
Budget
Budget+Rating
Genre+Rating
Genre
Dekade+Genre
5:05
Jahr
Dekade
Dekade
3:33
5:00
4:56
4:54
4:38
4:30
3:29
2:03
1:43
1:15
Blockbuster
2:13
Komödien
2:15
herkömmliches
DM
1:18
1:18
1:17
4:30
Typ
Budget
Rating
Rating
Rating+Typ
Budget+Rating
Land+Rating
Genre
Dekade
Dekade+Rating
Dekade+Rating
Dekade
Jahr
1:15
1:00
herkömmliches
DM
Land
0:58
2:18
0:58
1:35
1:27
1:12
0:54
Europäische Filme
Deutsche Filme
Abbildung 5.1: Laufzeit der durchgeführten Experimente
60
0:50
6 Automatisierung des Kombinierten Data
”
Mining“
Diesem Kapitel behandelt die Automatisierung des „Kombinierten Data Mining“. Zunächst folgt
eine kurze Einführung zur Automatisierung des Data Mining. In den darauf folgenden Abschnitten wird die Auswahl der besten Clusterattribute erläutert. Hierzu wird ein Ansatz vorgestellt, der
die Korrelation1 zwischen verschiedenen Attributen bestimmt, um die besten Attribute auszuwählen. Die Korrelation der Attribute soll mit Hilfe der stochastischen Unabhängigkeit und mit Hilfe
des χ2 -Verfahrens bestimmt werden, welches ebenfalls in diesem Ansatz näher erläutert wird. Im
letzten Abschnitt dieses Kapitels werden mit Hilfe des vorgestellten Ansatzes die besten Clusterattribute für die in Kapitel 5 durchgeführten Experimente ermittelt und mit den tatsächlich besten
Clusterattributen verglichen.
6.1 Einleitung
Die Automatisierung des Data Mining soll dem Nutzer einer Data Mining Anwendung so viele
Arbeitsschritte wie möglich abnehmen und trotzdem das bestmögliche Resultat erzielen. So könnte
z. B. die Aufbereitung der Daten, die Festlegung der besten Parameter zur Durchführung des Data Mining oder die Auswahl des für die Assoziationsanalyse verwendeten Attributs automatisiert
werden. In dem hier untersuchten Fall, der Kombination aus Clustering und Assoziationsanalyse,
könnte zusätzlich die Auswahl der besten Clusterattribute automatisiert werden.
In dieser Arbeit wird versucht, dem Nutzer des Systems alle für das Clustering nötigen Schritte
abzunehmen. Der Nutzer muss lediglich die für die Assoziationsanalyse nötigen Schritte wie die
Aufbereitung der Daten und die Konfiguration der Assoziationsanalyse selbst übernehmen. Die
Auswahl von geeigneten Clusterattributen und die Durchführung des Clustering soll das System
hingegen automatisch bzw. mit möglichst wenig Interaktion mit dem Nutzer erledigen. Für den
Fall, dass die Auswahl des besten Clusterattributs nicht möglich ist, können alternativ die vielversprechendsten Attribute für das Clustering ausgewählt und mehrere Assoziationsanalysen auf den
unterschiedlich geclusterten Daten durchgeführt werden. Aus den entstehenden Ergebnissen kann
entweder mit Hilfe eines Maßes (vgl. Kapitel 4) das beste Ergebnis ausgewählt werden oder es werden dem Nutzer des Systems mehrere alternative Ergebnisse präsentiert.
Der entscheidende Schritt zur Automatisierung des „Kombinierten Data Mining“ ist die Auswahl
der besten Clusterattribute. Bisherige Arbeiten gehen davon aus, dass für diesen Schritt Expertenwissen über die zugrundeliegenden Daten nötig ist. In dieser Arbeit soll versucht werden, die
besten Attribute mit Hilfe der Korrelation zwischen den Clusterattributen und den Attributen der
Assoziationsanalyse zu bestimmen. Hierzu soll die Korrelation zunächst formal definiert werden:
1 Die
Korrelation ist eine Beziehung zwischen zwei oder mehr statistischen Variablen bzw. in diesem Fall zwischen zwei
oder mehr Attributen. (vgl. Definition 5)
61
6 Automatisierung des „Kombinierten Data Mining“
Definition 5 (Korrelation / Korrelationsrechnung (in Anlehnung an [Ste07])) Gegeben seien zwei
Merkmale X und Y, die an n statistischen Einheiten beobachtet werden. Wenn X und Y korrelieren, also eine
Korrelation zwischen X und Y besteht, bedeutet dies, dass ein (ungerichteter) Zusammenhang zwischen
X und Y besteht. Dies bedeutet lediglich, dass gewisse Ausprägungskombinationen von X und Y gehäuft
beobachtet werden können. Hierbei handelt es sich nicht notwendigerweise um einen funktionalen Zusammenhang, etwa in der Form, dass Y eine (verrauschte) Funktion von X ist.
Im Rahmen der Korrelationsrechnung werden diese ungerichteten Zusammenhänge untersucht und in
Form von Kennzahlen quantifiziert.
6.2 Bestimmung der besten Clusterattribute
Dieser Abschnitt behandelt die Auswahl der richtigen Clusterattribute. Wie die Experimente im
vorherigen Kapitel gezeigt haben, hängen die Qualität der Ergebnisse und die erzielbare Verbesserung sehr stark von der Auswahl der richtigen Clusterattribute ab. Werden ungeeignete Attribute
für das Clustering der Transaktionen verwendet, führt dies zu einer Verschlechterung der Ergebnisse. Eine Verbesserung der Ergebnisse und damit des Maßes IW kann auf zwei unterschiedliche Arten zustande kommen: Zum einen führt eine Verbesserung der Confidence von einer oder mehreren
Assoziationsregeln auch zu einer Verbesserung der Ergebnisse, sofern die übrigen Regeln sich bzgl.
der Confidence nicht verändern. Zum anderen tritt eine Verbesserung des Ergebnisses ein, wenn
neue zusätzliche Regeln bei der Assoziationsanalyse gefunden werden. Neue Regeln werden allerdings genau dann gefunden, wenn sich ihre Confidence durch das Clustering soweit erhöht, dass
die Confidence größer als der entsprechende Grenzwert ist. Folglich reicht es aus, die Clusterattribute so zu wählen, dass möglichst viele Regeln bzgl. der Confidence verbessert werden können.
Gleichzeitig sollten durch das Clustering natürlich keine Regeln verloren gehen oder im Hinblick
auf Confidence oder Support verschlechtert werden.
Um eine möglichst hohe Confidence der gefundenen Assoziationsregeln zu erreichen, muss das
Clusterattribut so gewählt werden, dass für möglichst viele Assoziationsregeln Folgendes gilt: Die
Transaktionen, für die eine Assoziationsregel gilt2 , und diejenigen Transaktionen, für die sie nicht
gilt3 , werden unterschiedlichen Clustern zugeordnet. Die Transaktionen, die eine Ausnahme zu
einer Assoziationsregel bilden, befinden sich also nicht im selben Cluster wie die Transaktionen, für
die die Assoziationsregel gilt.
Um solch eine Aufteilung der Daten zu erreichen, soll folgende Beobachtung ausgenutzt werden: In
vielen Anwendungsbereichen gilt, dass sich die Attributwerte, die ein Attribut annimmt, in einem
bestimmten Kontext bewegen, d. h., dass eine (lose) Abhängigkeit zwischen verschiedenen Attributen besteht. Dies bedeutet, dass nicht alle Wertekombinationen in einer Datenbank gleichhäufig
auftreten: manche Kombinationen treten häufig auf, andere eher selten und viele treten gar nicht
auf. Dies soll am Beispiel der Schauspieler verdeutlicht werden.
Für die meisten Schauspieler gilt, dass sie überwiegend Filme eines bestimmten Genres, eines bestimmten Typs und in einem bestimmten Produktionsland drehen. Darüber hinaus spielen gute
Schauspieler häufig in guten und in teuren Filmen, während weniger gute Schauspieler meist in weniger guten Filmen und in Filmen mit einem geringeren Budget mitspielen. Diese Beobachtung bedeutet aber gleichzeitig, dass bestimmte Schauspieler häufig zusammenarbeiten, zumindest wenn
die Schauspieler für sich typische Filme drehen. Dreht ein Schauspieler hingegen einen Film aus
einem ganz anderen Genre oder mit einem ganz anderen Budget als sonst, bedeutet dies meistens,
2 Prämisse
3 Es
und Konklusion sind erfüllt.
ist nur die Prämisse, aber nicht die Konklusion erfüllt.
62
6 Automatisierung des „Kombinierten Data Mining“
dass er mit ganz anderen Schauspielern zusammenarbeitet. Dieser Film stellt dann eine Ausnahme
zu den restlichen Filmen dieses Schauspielers dar und sollte deshalb einem anderen Cluster zugeordnet werden als die für diesen Schauspieler typischen Filme, wenn ein möglichst gutes Resultat
der Assoziationsanalyse erzielt werden soll.
Das Attribut, welches für die Assoziationsanalyse verwendet wird, wird im Folgenden als Assoziationsattribut bezeichnet. Korreliert nun ein Attribut sehr stark mit dem Assoziationsattribut, in
diesem Fall also mit dem Attribut „Schauspieler“, so ist davon auszugehen, dass die Schauspieler
diesbezüglich nur selten von ihren Gewohnheiten abweichen. Ein Clustering mit diesem Attribut
würde aus diesem Grund dazu führen, dass dann für die meisten Schauspieler gilt, dass die für sie
typischen und untypischen Filme unterschiedlichen Clustern zugeordnet werden. Bei dieser Aufteilung handelt es sich um genau die gewünschte Aufteilung, um die Confidence der gefundenen
Regeln soweit wie möglich zu erhöhen.
Es ist zu vermuten, dass sich erstens mit Hilfe der Korrelation zwischen zwei Attributen eine gute
Schätzung vornehmen lässt, um geeignete Clusterattribute zu identifizieren, und dass zweitens diejenige Attribute die besten sind, welche die stärkste Korrelation mit dem Assoziationsattribut aufweisen. Aus diesem Grund werden diejenigen Attribute für die Assoziationsanalyse ausgewählt,
welche am stärksten mit dem Assoziationsattribut korrelieren, um die besten Resultate zu erzielen.
Das Vorgehen zur Auswahl des besten Clusterattributs soll an einem Beispiel verdeutlicht werden.
Gegeben sei eine Tabelle mit Informationen über Filme. Zu jedem Film sind das Genre, das Rating, der Kontinent der Produktion (ggf. auch mehrere Kontinente) und die beteiligten Schauspieler gespeichert. Mittels einer Assoziationsanalyse sollen Regeln über das Zusammenwirken von
Schauspielern ermittelt werden. Die Daten sollen zuvor mittels eines Clustering aufgeteilt werden.
Zur Bestimmung des besten Clusterattributs wird zunächst die Korrelation zwischen den möglichen Clusterattributen und demjenigen Attribut berechnet, welches für die Assoziationsanalyse
verwendet werden soll. In diesem Fall wird die Korrelation zwischen den Attributkombinationen
Genre/Schauspieler, Rating/Schauspieler und Kontinent/Schauspieler ermittelt. Das Clusterattribut, welches bzgl. der Korrelation das beste Ergebnis erzielt, also das Clusterattribut, welches am
stärksten mit dem Assoziationsattribut „Schauspieler“ korreliert, wird für das Clustering verwendet.
6.3 Berechnung der Korrelation zwischen zwei Attributen
Zur Berechnung der Korrelation zwischen zwei Attributen kommen in erster Linie zwei Verfahren
in Betracht. Handelt es sich bei beiden Attributen um numerische Attribute, lässt sich die Korrelation mittels des Korrelationskoeffizienten berechnen. Ist mindestens eines der Attribute ein kategorisches Attribut, ist die Berechnung mittels des Korrelationskoeffizienten nicht möglich. In diesem
Fall kann die Korrelation mit Hilfe des χ2 -Verfahrens berechnet werden. Da davon ausgegangen
werden kann, dass eine Assoziationsanalyse meist auf nicht-numerischen Attributen durchgeführt
wird und sich außerdem numerische Attribute mittels einer Diskretisierung der Werte zu kategorischen Attributen umwandeln lassen, soll hier nur die Berechnung der Korrelation mittels des χ2 Verfahrens betrachtet werden. Außerdem wird in dieser Arbeit ein weiterer Ansatz zur Berechnung
der Korrelation zwischen zwei Attributen vorgeschlagen: die Berechnung mittels der stochastischen
Unabhängigkeit.
6.3.1 Grundlagen
Sowohl die Berechnung der Korrelation mittels des χ2 -Verfahrens als auch die Berechnung mittels
der stochastischen Unabhängigkeit basieren auf den gleichen Grundideen. Diese werden im Folgenden kurz vorgestellt.
63
6 Automatisierung des „Kombinierten Data Mining“
Gegeben seien hierzu die zwei kategorischen Attribute A und B. Das Attribut A kann c unterschiedliche Werte annehmen: ( a1 , a2 , ..., ac ), das Attribut B r unterschiedliche Werte: (b1 , b2 , ..., br ). Die zu
untersuchenden Daten können in einer Kontingenztafel dargestellt werden. Eine Kontingenztafel
ist eine Tabelle, welche die absoluten Häufigkeiten verschiedener Merkmalsausprägungen beinhaltet. Für die Attribute A und B hätte eine solche Tabelle c Spalten für die verschiedenen Attributwerte
von A und r Zeilen für die Attributwerte des Attributs B. Sei ( Ai , Bj ) das Ereignis, dass Attribut A
den Wert ai annimmt und Attribut B den Wert b j , also ( A = ai , B = b j ). Für jede mögliche Kombination aus den Attributwerten der Attribute A und B enthält die Kontingenztafel ein Feld, welches
die Anzahl der Vorkommen dieser Attributkombination in den zu untersuchenden Daten enthält.
Diese Anzahl wird im Folgenden mit nij bezeichnet. In Abbildung 6.1 ist eine Kontingenztafel für
zwei Attribute dargestellt.
Abbildung 6.1: Kontingenztafel für zwei Attribute
Zu einer gegebenen Kontingenztafel mit den Attributen A und B ergeben sich die Zeilen- bzw.
Spaltensummen ni. bzw. n.j als:
r
ni. =
∑ nij
c
bzw.
n.j =
j =1
∑ nij
i =1
Diese werden auch als absolute Randhäufigkeiten bezeichnet.
Die gemeinsamen relativen Häufigkeiten ergeben sich zu pij =
n
ten zu pi. = nni. und p.j = n.j .
nij
n
und die relativen Randhäufigkei-
Zu jeder Zelle ij der Kontingenztafel kann die erwartete Anzahl des Vorkommens vom Ereignis
(Ai ,B j ) angegeben werden. Diese erwartete Häufigkeit nij∗ berechnet sich wie folgt:
nij∗ =
count( A = ai ) · count( B = b j )
ni. · n.j
=
,
n
n
wobei n die Anzahl der Datensätze ist, count( A = ai ) die Anzahl der Datensätze mit dem Wert ai
für das Attribut A und count( B = b j ) die Anzahl der Datensätze mit dem Wert b j für das Attribut
B. In Abbildung 6.1 ist count( A = ai ) als ni. und count( B = b j ) als n.j bezeichnet.
Für das Auftreten von zwei unabhängigen Ereignissen X und Y gilt, dass die Wahrscheinlichkeit für
ihr gemeinsames Auftreten gleich dem Produkt der Einzelwahrscheinlichkeiten ist:
P ( X ∩ Y ) = P ( X ) · P (Y )
Für zwei unabhängige Attribute A und B gilt (für alle ai und b j ) analog:
P( Ai , Bj ) ≈ P( Ai ) · P( Bj ) bzw.
64
pij ≈ pi. · p.j
6 Automatisierung des „Kombinierten Data Mining“
bzw. mit n multipliziert:
nij ≈
ni. · n.j
n
oder auch nij −
ni. · n.j
≈ 0 bzw. nij − nij∗ ≈ 0
n
Ist diese Differenz für sämtliche i, j klein, so kann davon ausgegangen werden, dass die Attribute
A und B tatsächlich (stochastisch) voneinander unabhängig sind. Diese Tatsache wird sowohl bei
der Berechnung der Korrelation mittels der stochastischen Unabhängigkeit als auch bei der Berechnung mittels des χ2 -Verfahrens ausgenutzt. Bei der Berechnung mittels der stochastischen Unabhängigkeit wird zur Überprüfung der Unabhängigkeit das durchschnittliche Verhältnis zwischen
der erwarteten Häufigkeit und der tatsächlichen Häufigkeit über alle Zellen einer Kontingenztafel
berechnet. Beim χ2 -Verfahren wird die Kontingenztafel mit derjenigen Kontingenztafel mit gleichen
Randhäufigkeiten verglichen, die sich bei empirischer Unabhängigkeit einstellt. Auf diese beiden
Ansätze wird in den folgenden Abschnitten ausführlicher eingegangen.
6.3.2 χ2 -Verfahren
Das χ2 -Verfahren bzw. der χ2 -Unabhängigkeitstest ist ein Verfahren zur Berechnung der Korrelation zwischen zwei kategorischen Attributen bzw. zur Überprüfung der Unabhängigkeit von zwei
kategorischen Attributen. Handelt es sich bei (mindestens) einem der beteiligten Attribute um ein
numerisches Attribut, muss zunächst eine Diskretisierung zur Umwandlung des Attributs in ein
kategorisches Attribut erfolgen.
Für zwei Attribute lässt sich der χ2 -Wert berechnen als:
χ2 =
c
r
∑∑
(nij − nij∗ )2
nij∗
i =1 j =1
Die grundlegende Idee beim χ2 -Verfahren ist, dass für unabhängige Attribute Folgendes gilt:
nij ≈
ni. · n.j
n
oder auch nij −
ni. · n.j
≈ 0 bzw. nij − nij∗ ≈ 0
n
Wenn diese Differenz für sämtliche i, j klein ist, so kann davon ausgegangen werden, dass die Attribute A und B tatsächlich voneinander unabhängig sind. Beim χ2 -Verfahren wird die vorhandene
Kontingenztafel mit einer idealen Kontingenztafel für zwei unabhängige Attribute mit der gleichen
Randverteilung verglichen. Die entstehenden Differenzen (bzw. die Quadrate der Differenzen) werden über alle Zellen der Kontingenztafel aufsummiert und mit der erwarteten Häufigkeit (bzw. mit
1/nij∗ ) gewichtet. Bei der Berechnung von χ2 liefern diejenigen Werte den größten Beitrag, welche
am stärksten vom erwarteten Wert abweichen.
Zur Überprüfung der Unabhängigkeit von zwei Attributen A und B testet das χ2 -Verfahren die Hypothese, dass die Attribute A und B stochastisch unabhängig sind. Hierzu wird überprüft, wie sich
der berechnete χ2 -Wert zu einem Referenzwert χ2Ref verhält. Ist der berechnete Wert kleiner oder
gleich dem Referenzwert, wird die Hypothese angenommen. Das heißt, dass die untersuchten Attribute voneinander unabhängig sind. Ist der berechnete χ2 -Wert größer als der Referenzwert, wird
die Hypothese abgelehnt. In diesem Fall sind die Attribute voneinander abhängig. Der Maximalwert wird genau dann angenommen, wenn in jeder Zeile und Spalte genau eine Zelle besetzt ist
und die anderen Zellen null sind. In diesem Fall kann direkt von der Ausprägung ai des Attributs
A auf die Ausprägung b j des Attributs B geschlossen werden.
Der Referenzwert χ2Ref hängt von der Anzahl der Freiheitsgrade und dem Signifikanzniveau ab.
Die Freiheitsgrade ergeben sich in diesem Fall als (c − 1) · (r − 1). Die Irrtumswahrscheinlichkeit
65
6 Automatisierung des „Kombinierten Data Mining“
gibt an, wie groß die Wahrscheinlichkeit ist, dass die gemessenen Ergebnisse nur auf Grund eines
ungünstigen Zufalls zustande gekommen sind. Die Obergrenze für die Irrtumswahrscheinlichkeit
wird als Signifikanzniveau bezeichnet. In den meisten Fällen wird für das Signifikanzniveau ein
Wert von 5% angenommen. Ist die Irrtumswahrscheinlichkeit kleiner oder gleich dem Signifikanzniveau, spricht man von Signifikanz.
χ2 ist nur bei ausreichend großen erwarteten Häufigkeiten annähernd mit (c − 1) · (r − 1) Freiheitsgraden χ2 -verteilt. Hierzu müssen die erwarteten Häufigkeiten mindestens 1 bzw. 5 betragen.4 Das
χ2 -Verfahren führt nur in diesen Fällen zu richtigen Ergebnissen. Ist die erwartete Häufigkeit zu
klein, können gegebenenfalls mehrere Attributwerte zusammengefasst werden, um die Mindestgröße zu erreichen.
Ein weiteres Problem beim χ2 -Verfahren ist die Vergleichbarkeit der Ergebnisse: Die χ2 -Statistik
kann nur sinnvoll eingesetzt werden, um Kontingenztafeln gleicher Dimension und gleichen Stichprobenumfangs zu vergleichen. Abhilfe schafft allerdings der normierte Kontingenzkoeffizient K ∗ ,
mit dem es möglich ist, unterschiedliche Maßzahlen unabhängig von der Dimension der Kontingenztafel und des Stichprobenumfangs zu vergleichen.
Definition 6 (Kontingenzkoeffizient / Normierter Kontingenzkoeffizient ([Ste07])) Der Kontingenzkoeffizient nach Pearson ist gegeben durch
s
χ2
K=
n + χ2
q
min(c,r )−1
an. Der normierte Kontingenzkoeffizient nimmt
und nimmt Werte zwischen 0 und Kmax =
min(c,r )
Werte zwischen 0 und 1 an und ist definiert als
K∗ =
K
Kmax
Beispiele zum χ2 -Verfahren
Gegeben seinen die drei Schauspieler S1 , S2 und S3 , sowie die drei Filmgenres „Action“ (kurz „A“),
„Biography“ (kurz „B“) und „Comedy“ (kurz „C“). Jeder Schauspieler hat in einer bestimmen Anzahl von Filmen aus diesen Genres mitgewirkt. Die Anzahl der Filme (pro Schauspieler und Genre)
ist in der Kontingenztafel in Abbildung 6.2 dargestellt. Schauspieler S1 hat z. B. in 100 Filmen mit
dem Genre „Comedy“ mitgespielt. Die entsprechenden absoluten Randhäufigkeiten sind ebenfalls
in Abbildung 6.2 enthalten.
Zur Berechnung von χ2 müssen zunächst die erwarteten Häufigkeiten berechnet werden. Diese
ergeben sich aus den absoluten Randhäufigkeiten und der Gesamtzahl der betrachteten Datensätze.
Zur Erinnerung: Die erwarteten Häufigkeiten nij∗ sind definiert als:
nij∗ =
4 Der
count( A = ai ) · count( B = b j )
n
minimale Wert für die erwarteten Häufigkeiten wird in verschiedenen Lehrbüchern unterschiedlich angegeben.
66
6 Automatisierung des „Kombinierten Data Mining“
Abbildung 6.2: Kontingenztafel mit den tatsächlichen Häufigkeiten
Für dies Beispiel folgt:
= 80
∗ =
n12
200·200
500
200·100
500
∗ =
n22
100·100
500
= 20
• Schauspieler=S1 , Genre=Action:
∗ =
n11
• Schauspieler=S1 , Genre=Biography:
= 40
• ...
• Schauspieler=S2 , Genre=Biography:
• ...
Die gesamten erwarteten Häufigkeiten sind in Abbildung 6.3 dargestellt. Zu beachten ist, dass die
Randhäufigkeiten in der Kontingenztafel für die erwarteten Häufigkeiten mit den Randhäufigkeiten in der Kontingenztafel für die tatsächlichen Werte übereinstimmen.
Abbildung 6.3: Kontingenztafel mit den erwarteten Häufigkeiten
Die Korrelation der zwei Attribute Schauspieler und Genre ergibt sich dann als
χ2 =
c
r
∑∑
i =1 j =1
=
(nij − nij∗ )2
nij∗
(100 − 80)2 (0 − 40)2 (100 − 80)2
+
+
80
40
80
(0 − 40)2 (100 − 20)2 (0 − 40)2
+
+
+
40
20
40
(100 − 80)2 (0 − 40)2 (100 − 80)2
+
+
+
80
40
80
= 5 + 40 + 5 + 40 + 320 + 40 + 5 + 40 + 5 = 500
Um zu entscheiden, ob die beiden Attribute unabhängig sind oder nicht und wie stark die Korrelation zwischen ihnen ist, muss der Referenzwert χ2Ref bestimmt werden. Dieser ist abhängig von den
67
6 Automatisierung des „Kombinierten Data Mining“
Freiheitsgraden und vom Signifikanzniveau. Die Freiheitsgrade ergeben sich in diesem Beispiel zu
(c − 1) · (r − 1) = (3 − 1) · (3 − 1) = 4. Bei einem Signifikanzniveau von 5% ergibt sich für den
Referenzwert ein Wert von χ2Ref = 9, 49.5
Der Wert von χ2 ist größer als der Wert von χ2Ref ; daraus folgt, dass die Hypothese der Unabhängigkeit der beiden Attribute abgelehnt wird: Die beiden Attribut korrelieren miteinander. Da χ2
deutlich größer ist als χ2Ref , kann man sogar von einer starken Korrelation der beiden Attribute ausgehen.
Zum χ2 -Verfahren soll noch ein weiteres Zahlenbeispiel angeführt werden. Gegeben seien die gleichen Attribute (Schauspieler, Genre) und Attributwerte wie im vorherigen Beispiel. Die Anzahl der
tatsächlichen und der erwarteten Häufigkeiten sind in Abbildung 6.4 dargestellt. Die erwarteten
Häufigkeiten sind in Klammern angegeben.
Abbildung 6.4: Kontingenztafel mit den tatsächlichen und den erwarteten Häufigkeiten
Wie man an der Kontingenztafel sehr gut erkennen kann, weichen die tatsächlichen Werte nur geringfügig von den erwarteten Werten ab. Es ist somit zu erwarten, dass sich für χ2 ein Wert kleiner
als der Referenzwert ergibt, da die Attribute offensichtlich nicht voneinander abhängig sind.
Die Korrelation ergibt sich als:
χ
2
c
=
r
∑∑
i =1 j =1
=
(nij − nij∗ )2
nij∗
(82 − 80)2 (38 − 40)2 (80 − 80)2
+
+
80
40
80
(38 − 40)2 (21 − 20)2 (41 − 40)2
+
+
+
40
20
40
(80 − 80)2 (41 − 40)2 (79 − 80)2
+
+
+
80
40
80
= 0, 05 + 0, 1 + 0 + 0, 1 + 0, 05 + 0, 025 + 0 + 0, 025 + 0, 0125 = 0, 3625
Da sich die Freiheitsgrade in diesem Beispiel im Vergleich zum vorigen Beispiel nicht verändert
haben, ergibt sich für χ2Ref bei einem Signifikanzniveau von 5% wieder ein Wert von 9, 49.
In diesem Fall ist der Wert von χ2 deutlich kleiner als χ2Ref . Die Hypothese wird akzeptiert und es
kann davon ausgegangen werden, dass die beiden Attribute voneinander unabhängig sind.
5 Die
Referenzwerte werden meist aus Tabellen über die χ2 -Verteilung übernommen, die in den meisten Textbüchern
über Statstik enthalten sind.
68
6 Automatisierung des „Kombinierten Data Mining“
6.3.3 Berechnung der Korrelation mittels der stochastischen Unabhängigkeit
Dieses Verfahren zur Berechnung der Korrelation basiert auf der Tatsache, dass für unabhängige
Attribute A und B Folgendes gilt:
P ( Ai , B j ) ≈ P ( Ai ) · P ( B j )
⇔
P ( Ai , B j )
≈1
P ( Ai ) · P ( B j )
⇔
P ( Ai , B j )
−1 ≈ 0
P ( Ai ) · P ( B j )
Ist diese Differenz für alle Kombinationen ( Ai , Bj ) klein, so kann dementsprechend davon ausgegangen werden, dass die Attribute A und B tatsächlich voneinander unabhängig sind. Zur Überprüfung der Unabhängigkeit kann die durchschnittliche Differenz über alle Zellen einer Kontingenztafel berechnet werden. Die Abhängigkeit zweier Attribute A und B wird im Folgenden als
Dep( A, B) bezeichnet und wird definiert als
c
Dep( A, B) =
r
| I ( A i , B j ) − 1|
c·r
i =1 j =1
∑∑
mit
I ( x, y) =
P( x, y)
P( x ) · P(y)
Sind die beobachteten Werte von zwei Attributen vollständig unabhängig, dann ist Dep( A, B) = 0.
Je stärker die Abhängigkeit zweier Attribute ist, desto größer ist auch der entsprechende Wert von
Dep( A, B).
Seien ni. und n.j die Randhäufigkeiten einer Kontingenztafel mit den Attributen A und B und n die
Gesamtzahl der Elemente in der Kontingenztafel. Weiterhin wird die Anzahl der Elemente, für die
gilt A = ai und B = b j , mit nij bezeichnet. Damit lässt sich Dep( A, B) schreiben als:
c
Dep( A, B) =
r
∑∑
i =1 j =1
n·n
| ni. ·nij.j − 1|
c·r
Mit Hilfe dieser Formel lässt sich die Abhängigkeit zweier beliebiger kategorischer Attribute bestimmen. Ergibt die Berechnung der Abhängigkeit der zwei Attribute A und B einen Wert von
Dep( A, B) = x, weichen die tatsächlichen Werte im Durchschnitt um den Faktor x von den erwarteten Häufigkeiten ab. Damit kann man bei großen erwarteten Häufigkeiten bei einem Wert von
x > 0.5 bereits von einer starken Korrelation ausgehen, während bei kleinen Häufigkeiten ein größerer Wert von x hierfür erforderlich ist.
Bei der Berechnung der Abhängigkeit mit diesem Ansatz ist es im Gegensatz zum χ2 -Verfahren
nicht entscheidend, ob die erwarteten Häufigkeiten größer sind als 1 bzw. 5; dafür ist es für die
Vergleichbarkeit der Ergebnisse entscheidend, dass sich die erwarteten Häufigkeiten in der gleichen Größenordnung bewegen. Sollte dies für zwei Kontingenztafeln nicht gelten, dann sind die
Ergebnisse des Maßes Dep( A, B) nicht zur Bewertung der Ergebnisse geeignet.
Beispiele zur Berechnung der Korrelation mittels der stochastischen Unabhängigkeit
Wie bei den Beispielen zum χ2 -Verfahren seien die drei Schauspieler S1 , S2 und S3 sowie die drei
Filmgenres „Action“ (kurz „A“), „Biography“ (kurz „B“) und „Comedy“ (kurz „C“) gegeben. Jeder
Schauspieler hat in einer bestimmen Anzahl von Filmen aus diesen Genres mitgewirkt. Die Anzahl
der Filme (pro Schauspieler und Genre) ist in der Kontingenztafel in Abbildung 6.5 dargestellt.
Zur Berechnung der Abhängigkeit von zwei Attributen wird zunächst die Abhängigkeit für die
einzelnen Zellen der Kontingenztafel berechnet. Für jede Zelle der Kontingenztafel ergibt sich der
Wert für die Abhängigkeit als:
n ∗ nij
|
− 1|
ni. ∗ n.j
69
6 Automatisierung des „Kombinierten Data Mining“
Abbildung 6.5: Kontingenztafel mit den tatsächlichen Häufigkeiten
Für die einzelnen Zellen der Kontingenztafel folgt:
n∗n
• Schauspieler=S1 , Genre=Action:
∗100
| ni. ∗nij.j − 1| = | 500
200∗200 − 1| = 0, 25
• Schauspieler=S1 , Genre=Biography:
500∗0
| ni. ∗nij.j − 1| = | 200
∗100 − 1| = 1
• Schauspieler=S1 , Genre=Comedy:
500∗100
| ni. ∗nij.j − 1| = | 200
∗200 − 1| = 0, 25
• Schauspieler=S2 , Genre=Action:
500∗0
| ni. ∗nij.j − 1| = | 100
∗200 − 1| = 1
• Schauspieler=S2 , Genre=Biography:
∗100
| ni. ∗nij.j − 1| = | 500
100∗100 − 1| = 4
• Schauspieler=S2 , Genre=Comedy:
500∗0
| ni. ∗nij.j − 1| = | 100
∗200 − 1| = 1
n∗n
n∗n
n∗n
n∗n
n∗n
• ...
Für das Maß Dep( A, B) für die Abhängigkeit der Attribute folgt dann:
c
Dep( A, B) =
r
∑∑
i =1 j =1
n∗n
| ni. ∗nij.j − 1|
c∗r
=
0, 25 1 0, 25 1 4 1 0, 25 1 0, 25
8
+ +
+ + + +
+ +
= ≈ 0, 89
9
9
9
9 9 9
9
9
9
9
Der durchschnittliche Erwartungswert ergibt sich in diesem Beispiel zu cn∗r = 500
9 ≈ 55. Damit ergibt
sich für die tätsächlichen Häufigkeiten eine durchschnittliche Abweichung von
Dep( A, B) ∗
n
≈ 0, 89 ∗ 55 ≈ 50
c∗r
im Vergleich zu den erwarteten Häufigkeiten. Bei diesem Beispiel kann man bei einem Wert von
0,89 für das Maß Dep( A, B) von einer starken Korrelation sprechen.
Auch zu diesem Verfahren soll noch ein weiteres Beispiel angeführt werden. Gegeben seien die
gleichen Attribute (Schauspieler, Genre) und Attributwerte wie im vorherigen Beispiel. Die Anzahl
der tatsächlichen Häufigkeiten ist in Abbildung 6.6 dargestellt.
Zunächst werden die Abhängigkeiten für die einzelnen Zellen der Kontingenztafel berechnet:
n∗n
• Schauspieler=S1 , Genre=Action:
500∗82
| ni. ∗nij.j − 1| = | 200
∗200 − 1| = 0, 025
• Schauspieler=S1 , Genre=Biography:
500∗38
| ni. ∗nij.j − 1| = | 200
∗100 − 1| = 0, 05
• Schauspieler=S1 , Genre=Comedy:
500∗80
| ni. ∗nij.j − 1| = | 200
∗200 − 1| = 0
• Schauspieler=S2 , Genre=Action:
500∗38
| ni. ∗nij.j − 1| = | 100
∗200 − 1| = 0, 05
• Schauspieler=S2 , Genre=Biography:
500∗21
| ni. ∗nij.j − 1| = | 100
∗100 − 1| = 0, 05
n∗n
n∗n
n∗n
n∗n
70
6 Automatisierung des „Kombinierten Data Mining“
Abbildung 6.6: Kontingenztafel mit den tatsächlichen Häufigkeiten
n∗n
• Schauspieler=S2 , Genre=Comedy:
500∗41
| ni. ∗nij.j − 1| = | 100
∗200 − 1| = 0, 025
• Schauspieler=S3 , Genre=Action:
500∗80
| ni. ∗nij.j − 1| = | 200
∗200 − 1| = 0
• Schauspieler=S3 , Genre=Biography:
500∗41
| ni. ∗nij.j − 1| = | 200
∗100 − 1| = 0, 025
• Schauspieler=S3 , Genre=Comedy:
500∗79
| ni. ∗nij.j − 1| = | 200
∗200 − 1| = 0, 0125
n∗n
n∗n
n∗n
Für das Maß Dep( A, B) für die Abhängigkeit der Attribute folgt dann:
c
Dep( A, B) =
n∗n
r
∑∑
i =1 j =1
=
=
| ni. ∗nij.j − 1|
c∗r
0, 025 0, 05 0 0, 05 0, 05 0, 025 0 0, 025 0, 0125
+
+ +
+
+
+ +
+
9
9
9
9
9
9
9
9
9
0, 2375
≈ 0, 026
9
Der durchschnittliche Erwartungswert ergibt sich in diesem Beispiel zu cn∗r = 500
9 ≈ 55. Damit ergibt
sich für die tätsächlichen Häufigkeiten eine durchschnittliche Abweichung von
Dep( A, B) ∗
n
≈ 0, 026 ∗ 55 ≈ 1, 43
c∗r
im Vergleich zu den erwarteten Häufigkeiten. In diesem Beispiel kann man dementsprechend von
einer schwachen Korrelation sprechen.
6.4 Bestimmung der Korrelation
In diesem Abschnitt geht es um die Korrelation der Attribute, die für die Experimente im vorherigen Kapitel verwendet wurden. In den Experimenten zum „Kombinierten Data Mining“ wurden die Daten zunächst mittels verschiedener Clusterattribute in kleinere Einheiten aufgeteilt. Anschließend wurde in diesen Einheiten nach Assoziationsregeln mit Schauspielern gesucht. Die Korrelation wird zwischen den jeweiligen Clusterattributen und dem Attribut Schauspieler berechnet.
Zu berücksichtigen ist, dass jeweils der gleiche Ausschnitt aus der Datenbank zur Berechnung der
Korrelation verwendet wird, welcher auch für die Assoziationsanalyse verwendet wird. Zur Berechnung der Korrelation zwischen den Attributen „Budget“ und „Schauspieler“ wurden die Budgets der Filme zunächst in fünf Budgetklassen eingeteilt. Die genauen Klassen wurden abhängig
von den Daten so gewählt, dass alle Klassen ungefähr gleich viele Filme enthalten.
71
6 Automatisierung des „Kombinierten Data Mining“
6.4.1 Probleme bei der Berechnung der Korrelation mittels des χ2 -Verfahrens
Wie in Abschnitt 6.3.2 (χ2 -Verfahren) bereits erwähnt wird, ist χ2 nur bei ausreichend großen erwarteten Häufigkeiten annähernd mit (c − 1) · (r − 1) Freiheitsgraden χ2 -verteilt und führt das Verfahren nur in diesen Fällen zu korrekten Ergebnissen. Der kritische Wert für die erwarteten Häufigkeiten wird in unterschiedlichen Lehrbüchern mit 1 bzw. 5 angegeben. In den hier durchgeführten
Experimenten zur Bestimmung der Korrelation mittels des χ2 -Verfahren hat ein Großteil der Zellen
jedoch eine erwartete Häufigkeit kleiner eins.
Das Problem wurde soweit wie möglich minimiert, indem verschiedene Attributwerte zu Attributwertklassen zusammengefasst wurden. So wurden z. B. für das Attribut „Budget“ fünf Budgetklassen eingeführt, um die Anzahl der verschiedenen Werte zu minimieren. Für das Attribut „Land“
und für das Attribut „Jahr“ können zur Berechnung die Attribute „Kontinent“ bzw. „Dekade“ verwendet werden, um die Anzahl der Attributwerte zu reduzieren. Falls auch diese Attribute zum
Clustern der Daten verwendet wurden, wurden die Attributwerte der Attribute „Land“ und „Jahr“
nicht weiter zusammengefasst.
Das Zusammenfassen der Attributwerte für das Attribut „Schauspieler“ ist hingegen nicht problemlos möglich, da sich die Frage stellt, wie die Schauspieler auf sinnvolle Weise zusammengefasst werden können, ohne die Ergebnisse dadurch zu verändern bzw. zu verfälschen. Aus diesem
Grund wurde auf das Zusammenfassen von Schauspielern zu Gruppen von Schauspielern verzichtet. Stattdessen wurden für die Korrelationsanalyse nur die häufigen Schauspieler betrachtet, also
die Schauspieler, die in den meisten Filmen mitgewirkt haben. Diese Einschränkung sollte für die
Auswahl der geeigneten Clusterattribute keine negativen Auswirkungen haben, da zu erwarten ist,
dass es sich bei den in den Assoziationsregeln gefundenen Schauspielern in erster Linie um die
Schauspieler handelt, die in vielen Filmen mitgespielt haben. Bei den hier durchgeführten Experimenten wurden jeweils die 25% der Schauspieler betrachtet, die die meisten Filme gedreht haben.
Die beiden Maßnahmen zur Lösung des angesprochenen Problems haben zu einer deutlichen Reduzierung des Problems geführt. Der prozentuale Anteil der Zellen, die eine erwartete Häufigkeit
kleiner eins haben ist in den folgenden Tabellen angegeben, um die Ergebnisse besser einschätzen
zu können.
6.4.2 Ergebnisse der Korrelationsanalyse
Die Ergebnisse der Korrelationsanalyse sind in den folgenden Tabellen angegeben. Die Ergebnisse
sind nach der Anzahl der verwendeten Attribute und nach IW sortiert angegeben. Auf die Angabe
der Quelle für die durchgeführten Experimente wurde in den Tabellen aus Platzgründen verzichtet.
Die Quellen ergeben sich aus der Tabellenunterschrift bzw. der angegebenen Referenznummer. Die
Spalten der Tabellen haben folgende Bedeutung:
Die Spalte „Ref.“ beinhaltet eine Referenz auf die eindeutige Nummer der durchgeführten Experimente in der Tabelle 5.1 (Durchgeführte Experimente) aus dem vorherigen Kapitel. Die Spalte
„Clusterattribute“ beinhaltet die Attribute, welche zum Clustern der Daten verwendet wurden und
die Spalte „#Cluster“ die Anzahl der gefundenen Cluster. Die Spalte „IW“ beinhaltet den Wert
des inhärenten Wissens. Die Spalte „<1“ beinhaltet den prozentualen Anteil der Zellen mit einer
erwarteten Häufigkeit kleiner eins zu der Gesamtzahl der Zellen der Kontingenztafel, nachdem
die Reduktion der Attributwerte durchgeführt wurde. Dieser Wert ist nur für die Beurteilung der
Ergebnisse des χ2 -Verfahrens relevant. Die Berechnung des Maßes Dep( A, B) wurde auf den unveränderten Orginaldaten durchgeführt. Die Spalte „χ2 “ beinhaltet den χ2 -Wert für die Korrelation
zwischen den Clusterattributen und dem Attribut „Schauspieler“. Die Spalte „χ2Ref. “ beinhaltet den
72
6 Automatisierung des „Kombinierten Data Mining“
χ2 -Referenzwert für ein Signifikanzniveau von 5%.6 Die Spalte „χ2Diff. “ beinhaltet die Abweichung
der Korrelation zum Referenzwert: Ist diese positiv, korrelieren die untersuchten Attribute, ist sie
hingegen negativ, sind die Attribute voneinander unabhängig. In der Spalte „K ∗ “ ist der Wert für
den normierten Kontingenzkoeffizienten angegeben, in der Spalte Dep( A, B) der entsprechende
Wert für das Maß Dep( A, B) zur Beurteilung der Korrelation zwischen den Attributen.
Action-Thriller
Ref.
1
1
1
Clusterattribute
Rating
Kontinent
Kontinent
#Cluster
3
2
3
IW
0,00
0,27
0,27
<1
25%
60%
60%
χ2
5.567
7.622
7.622
χ2Ref.
1.049
3.055
3.055
χ2Diff.
4.518
4.567
4.567
K∗
0,804
0,77
0,77
Dep(A,B)
1,22
1,3
1,3
Tabelle 6.1: Ergebnisse der Korrelationsanalyse (Action-Thriller [1])
Ref.
2
2
2
2
2
2
Clusterattribute
Budget
Rating
Dekade
Kontinent
Kontinent
Budget, Kontinent
#Cluster
3
3
3
4
3
3
IW
0,56
0,75
0,88
1,02
1,10
0,37
<1
5%
25%
55%
60%
60%
90%
χ2
10.038
5.108
15.048
6.979
6.979
39.445
χ2Ref.
1.854
948
2.305
2.754
2.754
14.768
χ2Diff.
8.184
4.160
12.743
4.225
4.225
24.677
K∗
0,879
0,823
0,922
0,786
0,786
0,944
Dep(A,B)
1,37
1,25
1,77
1,33
1,33
1,71
Tabelle 6.2: Ergebnisse der Korrelationsanalyse (Action-Thriller [2])
Blockbuster (USA)
Ref.
3
3
3
3
3
Clusterattribute
Dekade
Rating
Genre
Dekade, Genre
Genre, Rating
#Cluster
3
3
3
3
3
IW
0,71
1,15
1,34
0,99
1,15
<1
5%
15%
80%
100%
90%
χ2
16.134
1.691
15.825
85.795
30.444
χ2Ref.
2.176
462
8.912
51.864
18.113
χ2Diff.
13.958
1.229
6.913
33.931
12.331
K∗
0,931
0,655
0,868
0,97
0,922
Dep(A,B)
1,5
0,89
1,62
1,87
1,77
Tabelle 6.3: Ergebnisse der Korrelationsanalyse (Blockbuster)
6 Die
Freiheitsgrade ergeben sich aus den Attributwerten der Clusterattribute und des Attributs „Schauspieler“.
73
6 Automatisierung des „Kombinierten Data Mining“
Deutsche Filme
Ref.
4
4
4
4
4
4
4
4
4
4
4
Clusterattribute
Dekade
Typ
Typ
Genre
Rating
Dekade, Rating
Dekade, Rating
Rating, Typ
Rating, Typ
Rating, Typ
Rating, Typ
IW
2,14
2,63
2,63
2,83
3,03
2,59
2,63
2,63
3,23
3,40
3,44
#Cluster
3
3
5
3
3
5
3
2
3
4
5
<1
35%
35%
35%
85%
30%
80%
80%
70%
70%
70%
70%
χ2
8.287
4.097
4.097
9.166
2.196
20.339
20.339
7.972
7.972
7.972
7.972
χ2Ref.
1.452
601
601
5.633
601
4800
4800
2.013
2.013
2.013
2.013
K∗
0,943
0,937
0,937
0,893
0,803
0,962
0,962
0,915
0,915
0,915
0,915
χ2Diff.
6.835
3.496
3.496
3.533
1.595
15.539
15.539
5.959
5.959
5.959
5.959
Dep(A,B)
1,56
1,43
1,43
1,58
1,22
1,91
1,91
1,84
1,84
1,84
1,84
Tabelle 6.4: Ergebnisse der Korrelationsanalyse (Deutsche Filme)
Deutsche Filme mit Budget
Ref.
5
5
5
5
5
5
5
Clusterattribute
Budget
Budget
Budget
Typ
Rating
Rating, Typ
Rating, Typ
#Cluster
4
2
3
3
3
5
3
IW
10,93
12,58
13,25
15,56
17,55
15,56
17,55
<1
10%
10%
10%
65%
35%
65%
65%
χ2
359
359
359
30
104
135
135
χ2Ref.
69
69
69
38
38
84
84
χ2Diff.
290
290
290
-8
66
51
51
K∗
0,951
0,951
0,951
0,524
0,806
0,773
0,773
Dep(A,B)
1,44
1,44
1,44
2,69
1,72
2,65
2,65
Tabelle 6.5: Ergebnisse der Korrelationsanalyse (Deutsche Filme (mit Budget))
Europäische Filme
Ref.
6
6
6
6
6
6
6
6
6
Clusterattribute
Dekade
Jahr
Budget
Land
Land
Rating
Budget, Rating
Dekade, Rating
Land, Rating
#Cluster
3
3
3
2
3
3
3
3
3
IW
-0,34
-0,34
-0,20
0,30
0,47
0,57
-0,20
0,27
0,47
<1
15%
90%
0%
85%
85%
25%
40%
50%
95%
χ2
21.896
148.372
15.517
51.571
51.571
6.866
43.901
51.596
109.116
χ2Ref.
1.694
18.232
1.364
12.417
12.417
699
4.636
5.287
4.636
χ2Diff.
20.202
130.140
14.153
39.154
39.154
6.167
39.265
46.309
104.480
K∗
0,925
0,98
0.893
0,936
0,936
0,811
0,945
0,953
0,967
Tabelle 6.6: Ergebnisse der Korrelationsanalyse (Europäische Filme)
74
Dep(A,B)
1,49
1,95
1,34
1,96
1,96
1,21
1,77
1,8
2,18
6 Automatisierung des „Kombinierten Data Mining“
Komödien / Familienfilme
Ref.
7
7
7
7
7
7
7
7
Clusterattribute
Budget
Kontinent
Dekade
Budget
Jahr
Budget
Rating
Budget, Rating
#Cluster
4
3
3
3
3
2
3
3
IW
-0,17
0,04
0,29
0,37
0,41
0,52
0,77
0,37
<1
20%
65%
60%
20%
100%
20%
30%
80%
χ2
8.992
8.173
15.597
8.992
91.372
8.992
5.381
29.536
χ2Ref.
2486
3.092
3.092
2486
33.036
2486
1.267
8.515
χ2Diff.
6.506
5.081
12.505
6.506
58.336
6.506
4.114
21.021
K∗
0,873
0,839
0,936
0,873
0,979
0,873
0,851
0,947
Dep(A,B)
1,31
1,39
1,5
1,31
2,02
1,31
1,21
1,78
Tabelle 6.7: Ergebnisse der Korrelationsanalyse (Komödien / Familienfilme)
6.5 Auswertung der Ergebnisse
Die durchgeführten Experimente haben gezeigt, dass die am Anfang des Kapitels aufgestellte These
in dieser Form nicht bestätigt werden kann. Wenn für das Clustering der Daten diejenigen Attribute
verwendet werden, welche am stärksten mit dem Assoziationsattribut korrelieren, werden in den
meisten Fällen ungeeignete, zumindest aber nicht die am besten geeigneten Attribute ausgewählt.
Für jedes Attribut wurden drei unterschiedliche Maße zum Messen der Korrelation berechnet. In
Tabelle 6.8 sind die Attribute, welche bzgl. des Maßes IW das beste Ergebnis erzielt haben, und
die Attribute, die bzgl. der verschiedenen Maße die stärkste Korrelation ergeben haben, einander
gegenübergestellt. Die Attribute sind nach dem Ergebnis bzgl. der verwendeten Maße sortiert, so
dass das Attribut, welches in Bezug auf das entsprechende Maß den besten Wert erzielt hat, auch
an erster Stelle steht.
Die Spalten der Tabelle haben folgende Bedeutung: Die Spalte „Quelle“ beinhaltet den Namen der
verwendeten Datengrundlage. Die Spalte „IW“ beinhaltet die Clusterattribute, die bzgl. des Maßes
IW das beste Ergebnis beim „Kombinierten Data Mining“ ergeben haben. Die Spalten „χ2Diff. “, „K ∗ “
und „Dep(A,B)“ enthalten die Attribute, die für das Clustering verwendet würden, wenn jeweils
die Attribute, welche bzgl. des entsprechenden Maßes die stärkste Korrelation aufweisen, gewählt
würden.
Diese Ergebnisse zeigen, dass die am besten geeigneten Clusterattribute nicht gefunden werden,
wenn die Attribute ausgewählt werden, welche die stärkste Korrelation mit dem Assoziationsattribut aufweisen. Im besten Fall (Dep( A, B)) werden vier der 15 am besten geeigneten Attribute
auf diese Weise gefunden. In den anderen beiden Fällen werden sogar nur 3 von 15 Attributen für
ein Clustering vorgeschlagen. Dieser Ansatz ist also nicht zur Automatisierung des „Kombinierten
Data Mining“ geeignet.
Die Experimente haben allerdings gezeigt, dass Attribute, die nur eine geringe Korrelation mit dem
Assoziationsattribut aufweisen, gute Kandidaten für das Clustering darstellen. Auf Grund der Datengrundlage konnte jedoch nicht geklärt werden, ob dies auch für Attribute gilt, die nicht mit dem
Assoziationsattribut korrelieren (χ2 < χ2Ref. ), da nur eines der untersuchten Attribute keine Korrelation mit dem Assoziationsattribut aufgewiesen hat. Vermutlich tritt aber eine Verschlechterung der
Ergebnisse ein, wenn Attribute verwendet werden, die nicht mit dem Assoziationsattribut korrelieren, da es sich bei der Aufteilung der Daten in diesem Fall um eine willkürliche Aufteilung handelt.
75
6 Automatisierung des „Kombinierten Data Mining“
K∗
χ2Diff.
IW
Quelle
Dep(A,B)
Action-Thriller (1)
Kontinent
Rating
Rating
Kontinent
Action-Thriller (2)
Kontinent
Dekade,
{Budget, Kontinent}
Dekade
{Budget, Kontinent}
Dekade
{Budget, Kontinent}
Blockbuster
Genre, Rating
Deutsche Filme
{Rating, Typ},
Rating, Genre
Rating,
{Rating, Typ}
Rating, (Dekade),
(Jahr)
Rating, (Jahr),
Budget
{Dekade, Genre},
Dekade
{Dekade, Rating},
Dekade
Budget, Rating
{Dekade, Genre},
Dekade
{Dekade, Rating},
Dekade
Budget, Rating
Jahr,
{Land, Rating}
Jahr,
{Budget, Rating}
Jahr,
{Land, Rating}
Jahr,
{Budget, Rating}
{Dekade, Genre},
{Genre, Rating}
{Dekade, Rating},
{Rating, Typ}
Typ,
{Rating, Typ}
{Land, Rating},
Land
Jahr,
{Budget, Rating}
Deutsche Filme
mit Budget
Europäische Filme
Komödien
Tabelle 6.8: Ausgewählte Clusterattribute mit der stärksten Korrelation
Aus diesem Grund sollen im Folgenden für die Auswahl der besten Clusterattribute nur Attribute
betrachtet werden, die mit dem Assoziationsattribut korrelieren.
Bei der Verwendung des Maßes K ∗ zur Messung der Korrelation werden 11 der 15 besten Attribute
zum Clustern der Daten richtig erkannt. In den meisten Fällen stimmt auch die Reihenfolge der
Attribute, d. h., das Attribut, welches das beste Ergebnis beim „Kombinierten Data Mining“ bzgl.
des Maßes IW erzielt hat, ist auch das Attribut, welches die geringste Korrelation aufweist. Würden
zusätzlich zu den identifizierten Attributen auch die möglichen Kombinationen dieser Attribute betrachet, so würden sogar 12 der 15 besten Attribute auf diese Weise identifiziert. Die Auswahl der
Attribute mit Hilfe eines anderen Maßes zur Beurteilung der Korrelation würde nur leicht schlechtere Ergebnisse liefern: Würde zur Auswahl das Maß XDiff. verwendet, würden neun der 15 Attribute gefunden (bzw. zehn bei Berücksichtigung von Kombinationen). Bei Verwendung des Maßes
Dep( A, B) würden acht der 15 Attribute gefunden.
In Tabelle 6.9 sind die Attribute, welche bzgl. des Maßes IW das beste Ergebnis erzielt haben, und
die Attribute, die mit dem Assoziationsattribut korrelieren und bzgl. der verschiedenen Maße die
schwächste Korrelation ergeben haben, einander gegenübergestellt. Die Spalten haben dieselbe Bedeutung wie in Tabelle 6.8, wobei die Spalten „χ2Diff. “, „K ∗ “ und „Dep(A,B)“ jetzt die Attribute enthalten, die für das Clustering verwendet würden, wenn jeweils die Attribute, welche bzgl. des entsprechenden Maßes die schwächste Korrelation aufweisen, gewählt würden.
Im Folgenden soll näher darauf eingegangen werden, weshalb die ursprüngliche These durch die
Ergebnisse widerlegt wurde und aus welchen Gründen eine geringere Korrelation zu besseren Ergebnissen beim „Kombinierten Data Mining“ führen kann.
Bei den hier durchgeführten Experimenten konnte insgesamt eine sehr starke Korrelation zwischen
den Attributen festgestellt werden. Dies bedeutet, dass bestimmte Attributwerte der untersuchten Attribute sehr häufig gemeinsam auftreten, während andere Attributwerte nur sehr selten gemeinsam auftreten. Werden die Daten vor der Assoziationsanalyse mit einem Attribut geclustert,
welches sehr stark mit dem Assoziationsattribut korreliert, führt dies dazu, dass nur wenige Transaktionen, die eine Ausnahme zu den Assoziationsregeln darstellen, durch das Clustering einem
anderen Cluster zugeordnet werden können. Dies soll an einem Beispiel verdeutlicht werden:
76
6 Automatisierung des „Kombinierten Data Mining“
Quelle
χ2Diff.
IW
K∗
Dep(A,B)
Action-Thriller (1)
Kontinent
Rating
Kontinent
Rating
Action-Thriller (2)
Kontinent
Rating
Kontinent
Rating
Blockbuster
Genre, Rating
Rating, Genre
Rating, Genre
Rating, Dekade, Genre
Deutsche Filme
{Rating, Typ},
Rating, Genre
Rating,
{Rating, Typ}
Rating, (Dekade),
(Jahr)
Rating, (Jahr),
Budget
Rating, Typ, Genre
Rating, Genre
Rating, Typ
Typ, Rating
Typ, Rating
Budget, Rating
Rating, Budget,
Dekade
Rating, Kontinent,
Budget
Rating, Budget,
Dekade
Kontinent, Rating,
Budget
Rating, Budget,
Dekade
Rating, Budget
Deutsche Filme
(Budget)
Europäische Filme
Komödien
Tabelle 6.9: Ausgewählte Clusterattribute mit der schwächsten Korrelation
Gegeben seien die drei Schauspieler S1 , S2 und S3 , die Filme in den 60er und 70er Jahren gedreht
haben. In diesem ersten Fall gelte weiterhin, dass die Schauspieler S1 und S2 in den 60er Jahren 50
Filme gemeinsam produziert haben. Die restlichen Anzahlen ergeben sich aus der Kontingenztafel
in Abbildung 6.7.
Abbildung 6.7: Kontingenztafel mit starker Korrelation
Die Korrelation K ∗ zwischen den Attributen „Schauspieler“ und „Dekade“ ist in diesem Beispiel
K ∗ = 1. Betrachtet werden die beiden Assoziationsregeln S1 ⇒ S2 (Confidence = 50%) und S1 ⇒ S3
(Confidence = 0%). Ein Clustering nach dem Attribut „Dekade“ bewirkt in diesem Beispiel keine
Veränderung der Confidence der Regeln. Somit tritt in diesem Beispiel auch keine Verbesserung
durch das „Kombinierte Data Mining“ bzgl. des Maßes IW ein.
Im zweiten Fall seien wieder die selben drei Schauspieler gegeben, die Filme in den 60ern und 70ern
gedreht haben. Weiterhin gelte in diesem Beispiel, dass die Schauspieler S1 und S2 50 Filme und die
Schauspieler S1 und S3 25 Filme miteinander produziert haben. Die restlichen Anzahlen ergeben
sich wieder aus der Kontingenztafel in Abbildung 6.8.
Die Korrelation K ∗ zwischen den Attributen „Schauspieler“ und „Dekade“ ist in diesem Beispiel
K ∗ = 0, 91, also geringer als im ersten Fall. Betrachtet werden wieder die beiden Assoziationsregeln
S1 ⇒ S2 (Confidence = 50%) und S1 ⇒ S3 (Confidence = 25%), wobei die zweite Assoziationsregel
in diesem Fall eine Confidence von 25% besitzt. Ein Clustering mit dem Attribut „Dekade“ bewirkt
in diesem Fall eine Steigerung der Confidence der ersten Regel um 17% auf 67% und der zweiten
Regel um 75% auf 100%. Die Steigerung der Confidence dieser beiden Regeln würde gleichzeitig
eine Erhöhung des Maßes IW bewirken.
77
6 Automatisierung des „Kombinierten Data Mining“
Abbildung 6.8: Kontingenztafel mit schwächerer Korrelation
Der Grund für diese Ergebnisse liegt wie bereits angesprochen darin, dass im ersten Fall die Korrelation so stark ist, dass durch das Clustering keine weitere Verbesserung der Confidence der Assoziationsregeln möglich ist, da keine Ausnahmen durch das Clustering einem anderen Cluster zugeordnet werden können. Im zweiten Fall, in dem die Korrelation zwischen den Attributen geringer
ist, existieren hingegen Transaktionen, die eine Ausnahme zu den untersuchten Assoziationsregeln
darstellen. Ein Aufteilung der Daten mit Hilfe dieses Attributes kann also eine Verbesserung der
Confidence der Regeln bewirken und damit eine Verbesserung des Maßes IW.
Ist die Korrelation zwischen zwei Attributen hingegen zu gering, dann handelt es sich beim Clustering um eine willkürliche Aufteilung der Daten. Auch in diesem Fall ist vermutlich keine Verbesserung des Maßes IW zu erwarten.
Zur Automatisierung des „Kombinierten Data Mining“ werden im Folgenden jeweils die Attribute
mit der minimalen Korrelation ausgewählt, die mit dem Assoziationsattribut korrelieren. Sollte keines der untersuchten Attribute mit dem Assoziationsattribut korrelieren (χ2 < χ2Ref. ), werden die
Attribute verwendet, welche die stärkste Korrelation aufweisen (max (χ2 )).
78
7 Vorstellung der Anwendung ”Easy Mining”
Das Kapitel „Vorstellung der Anwendung EasyMining“ gliedert sich in vier Abschnitte. Im ersten Teil werden Grundzüge der Anwendung „Easy Mining“ und die verschiedenen Schritte zur
Durchführung des automatisierten „Kombinierten Data Mining“ vorgestellt. Im zweiten Abschnitt
wird die zur Verfügung stehende Benutzerschnittstelle präsentiert und der Aufruf der Anwendung
beschrieben. Der dritte Abschnitt behandelt die Architektur der Anwendung und die Funktion der
einzelnen Klassen und Methoden. Im letzten Abschnitt werden die Anforderungen an die Daten formuliert. Diese müssen im Rahmen des Preprocessing erfüllt werden, damit die Anwendung „Easy
Mining“ ein Data Mining durchführen kann.
7.1 Einleitung
„Easy Mining“ ist eine Anwendung zur Durchführung eines (semi-)automatischen „Kombinierten
Data Mining“. Die Anwendung wählt hierzu u. a. die am besten geeigneten Clusterattribute aus
einer vom Benutzer spezifizierten Liste von Attributen aus und führt anschließend das Clustering
der Daten und eine Assoziationsanalyse für jeden der entstandenen Cluster automatisch aus.
7.1.1 Schritte des automatischen Kombinierten Data Mining“
”
Der Prozess des automatischen „Kombinierten Data Mining“ kann in sechs Schritte aufgeteilt werden:
1. Bereitstellung der benötigten Daten durch den Benutzer
2. Berechnung der Korrelation
3. Auswahl der Clusterattribute
4. Clustering
5. Assoziationsanalyse
6. Präsentation der Ergebnisse
Bereitstellung der benötigten Daten durch den Benutzer
Der Benutzer stellt die für das automatische „Kombinierte Data Mining“ benötigten Daten zur Verfügung: Hierzu gehören die für das „Kombinierte Data Mining“ zu verwendenden Tabellen, die
Attribute, die bei der Ermittlung der besten Clusterattribute berücksichtigt werden sollen, und das
Attribut, welches für die Assoziationsanalyse zu verwenden ist. Darüber hinaus muss der Benutzer
die gewünschte Clusteranzahl und die Anzahl der Attribute, für welche ein Clustering und eine
Assoziationsanalyse durchgeführt werden soll, spezifizieren. Für die Assoziationsanalyse ist außerdem die Angabe der Werte für die minimale Confidence und den minimalen Support erforderlich.
79
7 Vorstellung der Anwendung ”Easy Mining”
Zu den verwendeten Tabellen gehört zunächst die Tabelle, welche die Informationen zum Clustern der Daten enthält. Diese besteht aus einer eindeutigen ID zur Identifizierung der Datensätze
und aus den zu untersuchenden potentiellen Clusterattributen. Des Weiteren muss der Benutzer
die Tabelle mit den Transaktionen für die Assoziationsanalyse angegeben. Diese besteht ebenfalls
aus einer eindeutigen ID und einem Attribut, welches die Items der Transaktionen enthält. Die Zuordnung der Datensätze in den beiden Tabellen erfolgt über eine einheitliche ID. Bei den beiden
Tabellen kann es sich auch um zwei unterschiedliche Sichten auf dieselbe Tabelle handeln. Es wird
davon ausgegangen, dass die Daten in den Tabellen richtig selektiert sind und dass das Preprocessing bereits vom Benutzer durchgeführt wurde. Eine Transformation der Transaktionen in die
benötigte Form kann von der Anwendung „Easy Mining“ automatisch durchgeführt werden.
Die Angabe der zu untersuchenden potentiellen Clusterattribute ermöglicht es dem Benutzer, auf
diese Attribute einzuwirken. Auf diese Weise kann der gesamte Prozess beschleunigt werden, indem Vorwissen des Benutzers in den Prozess einfließt. Es können aber auch Attribute untersucht
werden, die eigentlich nicht zu den besten Clusterattributen gehören.
Berechnung der Korrelation / Auswahl der Clusterattribute
Im zweiten Schritt des Prozesses zur Durchführung des automatischen „Kombinierten Data Mining“ wird die Korrelation zwischen den potentiellen Clusterattributen und dem Assoziationsattribut berechnet. Zur Bewertung der Korrelation wird der normierte Kontingenzkoeffizient K ∗
verwendet. Anhand der Ergebnisse der Korrelationsanalyse werden die Attribute sortiert und die
besten n Attribute ausgewählt. Die Anzahl n wird hierbei vom Benutzer des Systems spezifiziert.
Ausgewählt werden jeweils die Attribute, welche mit dem Assoziationsattribut korrelieren und eine
möglichst geringe Korrelation aufweisen. Existieren keine Attribute, die mit dem Assoziationsattribut korrelieren, werden die Attribute mit der maximalen Korrelation ausgewählt.
Bisher werden in der hier vorgestellten Anwendung nur einzelne Attribute bei der Auswahl der
besten Clusterattribute berücksichtigt. Sollen auch Kombinationen von Attributen betrachtet werden, müssen die Attribute bei der Vorbereitung der Daten vom Benutzer zu einem Attribut zusammengefasst werden.
Clustering / Assoziationsanalyse / Präsentation der Ergebnisse
Für die n besten Clusterattribute wird ein Clustering der Daten und für jeden der erzeugten Cluster
eine Assoziationsanalyse durchgeführt. Im Anschluss werden die Ergebnisse präsentiert. Hierbei
handelt es sich insbesondere um die gefundenen Assoziationsregeln und den Wert des Maßes IW.
7.1.2 Weitere Funktionen der Anwendung Easy Mining“
”
Mit Hilfe der Anwendung „Easy Mining“ können neben dem automatischen „Kombinierten Data Mining“ auch ein herkömmliches Data Mining und ein einfaches „Kombiniertes Data Mining“
durchgeführt werden. Bei letzterem werden die zu verwendenden Clusterattribute nicht automatisch von der Anwendung „Easy Mining“ ermittelt, sondern vom Benutzer spezifiziert.
80
7 Vorstellung der Anwendung ”Easy Mining”
7.2 Benutzerschnittstellen
In der aktuellen Version der Anwendung „Easy Mining“ erfolgt die Bedienung über Konfigurationsdateien. Eine spätere Erweiterung auf eine graphische Oberfläche wurde beim Entwurf der
Anwendung jedoch schon berücksichtigt. Die Ergebnisse des Data Mining werden direkt in der
Kommandozeile ausgegeben. Die Ausgabe der Ergebnisse in eine Datei ist mittels der Ausgabeumleitung („>“) möglich.
Zur Verwendung der Anwendung „Easy Mining“ werden ein Datenbank-Treiber (für Oracle), eine
Datei „weka.jar“ mit der Weka-Anwendung und eine Datei „DatabaseUtils.props“ mit den Datenbankeinstellungen benötigt. Bei der Anwendung „Weka“ handelt es sich um eine „Open Source“Anwendung der Universität Waikato, Neuseeland. Diese stellt verschiedene Data Mining-Algorithmen zur Verfügung, die von der Anwendung „Easy Mining“ u. a. zum Clustern der Daten und zur
Berechnung der Assoziationsregeln verwendet werden.
7.2.1 Konfigurationsdatei
Bei der Entwicklung der Anwendung „Easy Mining“ wurden zunächst Konfigurationsdateien zur
Steuerung der Anwendung realisiert. Der Grund hierfür liegt in den relativ langen Laufzeiten der
Data Mining-Algorithmen. Konfigurationsdateien ermöglichen es dem Benutzer, verschiedene Dateien mit unterschiedlichen Experimenten vorzubereiten und diese automatisiert (z. B. über Nacht)
ablaufen zu lassen. Dies stellt einen entscheidenen Vorteil gegenüber einer graphischen Oberfläche
zur Eingabe der Konfigurationsparameter dar.
Zur Benutzung der Anwendung „Easy Mining“ mit einer Konfigurationsdatei muss zunächst eine „.cfg“-Datei mit den notwendigen Konfigurationsparametern erstellt werden. Der Aufruf der
Anwendung erfolgt wie in Listing 7.1 dargestellt.
java core . EasyMining configfile ./ configfile . cfg
Listing 7.1: Aufruf der Anwendung „Easy Mining“ mit einer Konfigurationsdatei
Eine beispielhafte Konfigurationsdatei ist in Listing 7.2 dargestellt. Kommentare können innerhalb
einer Konfigurationsdatei angegeben werden, indem der Kommentarzeile ein # vorangestellt wird.
Nicht benötigte Parameter können einfach weggelassen werden. Die Bedeutung der einzelnen Parameter wird im Folgenden kurz erläutert. Zusätzlich ist eine kommentierte Konfigurationsdatei in
Abschnitt C.1 des Anhanges zu finden.
Im Abschnitt „Allgemeine Einstellungen“ werden zunächst die grundlegenden Einstellungen vorgenommen. Hierzu gehört sowohl der Typ der zu verwendenen Datenquelle als auch die Art des
durchzuführenden Data Mining.
Der Typ der zu verwendenen Datenquelle wird mit dem Parameter sourcetype festgelegt. Gültige
Werte für diesen Parameter sind file, falls die Daten für das Data Mining aus einer Datei eingelesen werden sollen, und oracleDB, falls die Daten aus einer (Oracle-)Datenbank abgefragt werden
sollen. Soll ein automatisches „Kombiniertes Data Mining“ durchgeführt werden, müssen die Daten in einer Datenbank gespeichert sein, damit die Berechnung der Korrelation zur Bestimmung des
besten Clusterattributs durchgeführt werden kann.
Der Parameter dataMiningMethod wurde für zukünftige Erweiterungen der Anwendung „Easy
Mining“ eingeführt. Mit diesem Parameter wird festgelegt, welche Data Mining-Methode angewendet werden soll. Zum jetzigen Zeitpunkt ist der einzige gültige Wert asso, zur Durchführung
81
7 Vorstellung der Anwendung ”Easy Mining”
# Allgemeine Einstellungen
sourcetype = file
dataMiningMethod = asso
# Da t en ba n kz ug a ng s da te n
username = username
password = password
# Clustering
makeClustering = true
clusteranzahl = 3
clustersource = ./ clustersource
clusterattribute = a1 , a2 , a3 , a4 , a5
a u to F i n d Be s t A t tr i b u te s = true
NBestAttributes = 1
# # Assozia tionsan alyse
assosource = ./ assosource
assoPrepared = false
support = 0.5
confidence = 0.8
s a ve I n t e rm e d i a te R e s ul t = true
s a v e I n t e r m e d i a t e R e s u l t A s = ./ intermediateResult
Listing 7.2: Konfigurationsdatei
einer Assoziationsanalyse. In späteren Versionen könnte die Anwendung z. B. um die Data MiningMethode „Klassifikation“ erweitert werden, um weitere Experimente zur Kombination aus Clustering und Klassifikation durchzuführen.
Die Parameter im Abschnitt „Datenbankzugangsdaten“ müssen nur angegeben werden, falls die
Daten für das Data Mining aus einer Datenbank abgefragt werden. In diesem Fall müssen die Datenbankzugangsdaten in der Konfigurationsdatei angegeben werden. Hierzu gibt es die Parameter
username und password, die den Benutzernamen und das Datenbankpasswort des Benutzers festlegen.
Im Abschnitt „Clustering“ werden die für das Clustering notwendigen Einstellungen vorgenommen. Hierzu wird zunächst mittels des Parameters makeClustering (true|false) festgelegt, ob
überhaupt ein Clustering durchgeführt werden soll oder ob es sich bei dem durchzuführenden
Data Mining um ein herkömmliches Data Mining handeln soll. Ist dieser Parameter in der Konfigurationsdatei nicht enthalten, wird er auf „false“ gesetzt.
Die Parameter clusteranzahl, clustersource, clusterattribute, autoFindBestAttributes und
NBestAttributes müssen nur festgelegt werden, wenn die Daten vor dem eigentlichen Data Mining geclustert werden sollen, also nur, wenn ein (automatisches) „Kombiniertes Data Mining“
durchgeführt werden soll. Mit dem Parameter clusteranzahl wird die Anzahl der zu erzeugenden
Cluster definiert. Der Parameter clustersource definiert die Datenquelle, die für das Data Mining
genutzt werden soll. Hierbei kann es sich entweder um einen Pfad zu einer „arff“-Datei1 oder um
eine Datenbankanfrage handeln. Der Parameter clusterattribute legt die Attribute fest, welche
für das Clustering der Daten verwendet werden. Sollen mehrere Attribute zum Clustern der Daten verwendet werden, können diese als kommagetrennte Liste angegeben werden. Der Parameter
1 Das
„arff“-Dateiformat (Attribute-Relation File Format) ist das Dateiformat des Weka-Projektes zur Speicherung von
Relationen.
82
7 Vorstellung der Anwendung ”Easy Mining”
autoFindBestAttributes (true|false) entscheidet, ob es sich bei den angegebenen Attributen
schon um die endgültigen Attribute zum Clustern der Daten handelt oder ob es sich um die Attribute handelt, aus denen die besten n Attribute zum Clustern der Daten ausgewählt werden sollen. Falls die Attribute automatisch ausgewählt werden sollen, kann die Anzahl der zu wählenden
Attribute n mit dem Parameter NBestAttributes festgelegt werden.
Im Abschnitt „Assoziationsanalyse“ werden die Einstellungen für die Assoziationsanalyse vorgenommen. Hierzu muss zunächst eine Datenquelle für die Assoziationsanalyse definiert werden.
Dies geschieht mit dem Parameter AssosourceName. Angegeben werden kann, genauso wie bei der
Datenquelle für das Clustering, der Pfad zu einer „arff“-Datei oder ein SQL-Statement. Der Parameter assoPrepared (true|false) gibt an, ob die Daten bereits vorbereitet sind, d. h., ob sie bereits
als Transaktionsmatrix vorliegen. Ist dieser Parameter in der Konfigurationsdatei nicht enthalten,
wird er auf false gesetzt. In den meisten Fällen werden die Eingabedaten nicht als Transaktionsmatrix vorliegen und somit nicht vorbereitet sein. Eine Ausnahme stellen Zwischenergebnisse dar,
die mit der Anwendung „Easy Mining“ gespeichert wurden. Denn diese werden als Transaktionsmatrix gespeichert und müssen nicht nochmals in eine Transaktionsmatrix umgewandelt werden.
Mit Hilfe der Parameter confidence und support werden die Confidence- bzw. die Supportwerte
für die Assoziationsanalyse definiert.
Die Parameter saveIntermediateResult (true|false) und saveIntermediateResultsAs geben
an, ob und wo Zwischenergebnisse gespeichert werden sollen. Bei den Zwischenergebnissen
handelt es sich um die in eine Transaktionsmatrix umgewandelten Eingabedaten. Ist dieser Parameter in der Konfigurationsdatei nicht enthalten, wird er auf false gesetzt. Der Parameter
saveIntermediateResultsAs enthält einen gültigen Pfad (inkl. Dateinamen), an dem die Zwischenergebnisse als „arff“-Datei gespeichert werden.
In Listing 7.3 ist eine beispielhafte Konfigurationsdatei dargestellt, wie sie für die Berechnung der
Ergebnisse in Kapitel 5 verwendet wurde.
# Allgemeine Einstellungen
sourcetype = oracleDB
dataMiningMethod = asso
# Da t en ba n kz ug a ng s da te n
username = mewe
password = *****
# Clustering
makeClustering = true
clusteranzahl = 3
clustersource = select distinct id , min ( decade ) as decade ,
min ( rating ) as rating from german_movies group by id
clusterattribute = rating
# # Assozia tionsan alyse
assosource = select distinct id , name from german_actor
where credit_pos <= 3 order by id
assoPrepared = false
support = 0.002
confidence = 0.5
Listing 7.3: Konfigurationsdatei
83
7 Vorstellung der Anwendung ”Easy Mining”
TransaktionsID
1
1
1
1
...
m
...
m
Transaktionselement
item11
item12
...
item1n
...
itemm1
...
itemmo
Tabelle 7.1: Format von Transaktionen
7.2.2 Anforderungen an die Daten
Zur Durchführung des „Kombinierten Data Mining“ gibt es verschiedene Anforderungen an die
zugrunde liegenden Daten: Das Attribut, welches die eindeutige ID zur Zuordnung von Clusterdaten und Transaktionen enthält, muss in beiden Tabellen mit „ID“ bezeichnet sein. Die Transaktionen
müssen entweder als Transaktionsmatrix oder als (zweispaltige) Tabelle vorliegen. Im zweiten Fall
beinhaltet die erste Spalte die TransaktionsID zur Identifizierung der Transaktionen und die zweite
Spalte die einzelnen Items der Transaktionen (vgl. Tabelle 7.1).
7.2.3 Ausgabe der Anwendung Easy Mining“
”
Die Ausgabe der Anwendung „Easy Mining“ gliedert sich in die vier Abschnitte „Attributauswahl“, „Clustering“, „Assoziationsanalyse“ und „Bewertung des Ergebnisses“. Im Abschnitt „Attributauswahl“ wird eine Liste der zu untersuchenden Attribute und eine Liste der für das Clustering ausgewählten Attribute ausgegeben. Im Abschnitt „Clustering“ wird eine Beschreibung der
Eingabetupel, das Clusterattribut und die Anzahl der erzeugten Cluster ausgegeben. Im Anschluss
folgt eine Beschreibung der erzeugten Cluster. Hierbei wird für jedes numerische Clusterattribut
der Wertebereich und für jedes kategorische Clusterattribut eine Liste der im Cluster enthaltenen
Werte ausgegeben. Im Abschnitt „Assoziationsanalyse“ werden die gefundenen Assoziationsregeln
ausgegeben. Beim „Kombinierten Data Mining“ erfolgt die Ausgabe separat für jeden Cluster. Im
letzten Abschnitt der Ausgabe, dem Abschnitt „Bewertung des Ergebnisses“ werden die Werte für
die Maße IW (realer Komprimierungsgewinn) und IW 0 (Komprimierungsgewinn) ausgegeben. In
allen Abschnitten erfolgen zusätzlich verschiedene Statusausgaben. Eine beispielhafte Ausgabe ist
in Anhang D zu finden.
7.3 Implementierung
In diesem Abschnitt wird die Implementierung der Anwendung „Easy Mining“ vorgestellt. Die dazugehörigen Klassendiagramme und das Aktivitätsdiagramm sind in den Abbildungen 7.1, 7.2 und
7.3 dargestellt. Im Klassendiagramm in Abbildung 7.1 sind die Packages, Klassen und Methoden
der Anwendung „Easy Mining“ dargestellt. Auf die Darstellung der Attribute wurde aus Gründen
der Übersichtlichkeit an dieser Stelle verzichtet. Ebenfalls nicht dargestellt ist die Klasse „Utilities“,
die Hilfsfunktionen zur Verfügung stellt, welche von allen Klassen des Packages „EasyMining.core“
verwendet werden. In Abbildung 7.2 wurde zusätzlich auf die Darstellung der Methoden der Anwendung „Easy Mining“ verzichtet. Das Aktivitätsdiagramm in Abbildung 7.3 zeigt die möglichen
Abläufe der Anwendung „Easy Mining“.
84
<<interface>>
Input
EasyMiningProperties(configfilePath : String) : void
EasyMiningProperties
getSourcetype() : String
getUsername() : String
getPassword() : String
makeClustering() : boolean
getDataMiningMethod() : String
getClustersource() : String
getClusteranzahl() : int
getClusterattributes() : String
autoFindBestAttributes() : boolean
getNBestAttributes() : int
getAssosourceName() : String
assoPrepared() : boolean
getSupport() : double
getConfidence() : double
saveIntermediateResult() : boolean
saveIntermediateResultsAs() : String
EasyMining.Input
Mining(input : Input) : void
startMining() : void
Mining
main(args : String[]) : void
EasyMining
EasyMining.core
85
createInstances(sourcetype : String,sourcename : String,username : String,password : String) : Instances
safeInstances(inst : Instances,path : String) : void
describeInstances(instArray : Instances[]) : void
splitInstances(splitinfo : Instances,splitdata : Instances) : Instances[]
createTMatrix(unprepared : Instances) : Instances
prepareInstancesForClustering(inst : Instances) : Instances
sortString(str : String) : String
Dataset
Association(data : Instances) : void
createRules(support : double,confidence : double) : void
getRules() : Vector
printRules() : void
printStatsAndRules() : void
estimateRuleSet() : int[]
convertRules(str : String) : String
containsAllElements(str1 : String,str2 : String) : boolean
Association
Cluster(data : Instances,clusterattribute : String) : void
createCluster(clusteranzahl : int) : void
getCluster() : Instances
getClusters() : Instances[]
printCluster() : void
printClusterStats(verbose : boolean) : void
Cluster
ClusterAttributes(sourcetype : String,sourcename : String,username : String,password : String) : void
findBestClusterattributes(clusterattributes : String,bestN : int) : String[]
ClusterAttributes
ChiSquare(sourcetype : String,sourcename : String,username : String,password : String) : void
calculateCorrelation(attribute1 : String,attribute2 : String) : double[]
poz(z : double) : double
ex(x : double) : double
pochisq(x : double,df : int) : double
critchi(p : double,df : int) : double
ChiSquare
Apriori
weka.associations
ClusterEvaluation
SimpleKMeans
weka.clusterers
7 Vorstellung der Anwendung ”Easy Mining”
Abbildung 7.1: Klassendiagramm der Anwendung „Easy Mining“
7 Vorstellung der Anwendung ”Easy Mining”
EasyMining.core
EasyMining
ChiSquare
EasyMining.Input
<<interface>>
Input
Mining
ClusterAttributes
weka.clusterers
SimpleKMeans
EasyMiningProperties
Cluster
ClusterEvaluation
Association
weka.associations
Dataset
Apriori
Abbildung 7.2: Klassendiagramm der Anwendung „Easy Mining“ (ohne Methoden)
Zum Clustern der Daten und zur Durchführung der Assoziationsanalyse werden Algorithmen der
„Open Source“-Anwendung Weka (Version 3.5.6) der Universität Waikato, Neuseeland, verwendet.
Damit diese Algorithmen verwendet werden können, wird außerdem für die (interne) Darstellung
der Daten auf die Datenstrukturen des Weka-Projekts zurückgegriffen. Im Klassendiagramm sind
nur die wichtigsten verwendeten Klassen dargestellt: So wurde z. B. auf die Darstellung der Klassen
„Instances“ und „Attribut“ verzichtet, die nur zur Behandlung der internen Darstellung verwendet
werden. Auf die Klassen des Weka-Projektes wird im Folgenden nicht näher eingegangen, sondern
auf die entsprechende Dokumentation verwiesen (siehe [Weka07a] und [Weka07b]).
Beim Entwurf der Anwendung „Easy Mining“ wurde darauf geachtet, dass zukünftige Erweiterungen einfach in die bestehende Anwendung integriert werden können. Sollen z. B. weitere Benutzerschnittstellen zur Verfügung gestellt werden, so muss lediglich das Interface „Input“ implementiert
werden und der Aufruf der Benutzerschnittstelle über die Klasse „EasyMining“ erfolgen. Bei der
Auswahl der zu konfigurierenden Parameter wurde ebenfalls auf zukünftige Erweiterungen Rücksicht genommen. Darüber hinaus ist eine Erweiterung auf andere Datenquellen genauso möglich
wie die Integration weiterer Data Mining-Verfahren. Um weitere Verfahren zu integrieren, muss
lediglich eine entsprechende Klasse zur Anwendung „Easy Mining“ hinzugefügt werden und die
Klasse „Mining“, die den Ablauf des Data Mining steuert, entsprechend angepasst werden.
Im Folgenden wird auf die wichtigsten Klassen und Methoden näher eingegangen.
EasyMining
Die Klasse „EasyMining“ ist die Startklasse der Anwendung „Easy Mining“. Sie wertet die übergebenen Startparameter aus (vgl. Abschnitt 7.2.1), stellt eine Verbindung zur Benutzerschnittstelle her
und startet das Data Mining.
Input
Das Interface „Input“ stellt die Schnittstelle zwischen der Klasse „Mining“ und der Benutzerschnittstelle dar. Die Klasse „Mining“ greift lediglich auf die vom Interface definierten (get-)Methoden zu,
86
7 Vorstellung der Anwendung ”Easy Mining”
EasyMining
KonfigurationsDatei
makeClustering=false
Mining
starten
makeClustering=true
autoFindBestAttr.=true
autoFindBestAttr.=false
Erzeuge
Dataset für
Korr.analyse
....
Erzeuge
Dataset für
Korr.analyse
Berechne
Korrelation
....
Berechne
Korrelation
Erzeuge
Dataset für
Transaktionen /
Transaktionsmatrix
Assoziationsanalyse
Auswahl
der besten
Attribute
Clusterdaten
....
....
Erzeuge
Dataset für
Transaktionen /
Transaktionsmatrix
Transaktionen
Assoziationsanalyse
Bewertung
der Mengen von
Assoziationsregeln
Erzeuge
Dataset für
Clustering
Clustern
der Daten
Abbildung 7.3: Aktivitätsdiagramm der Anwendung „Easy Mining“
um die nötigen Informationen vom Benutzer abzufragen. Die Informationen werden in Form einer
Konfigurationsdatei zur Verfügung gestellt, aber auch eine graphische Oberfläche zur Eingabe der
Parameter ist denkbar.
Die Methode getSourcetype() liefert die Art der zu verwendenden Datenquelle zurück. Gültige
Rückgabewerte sind „file“, falls die Daten für das Data Mining aus einer Datei eingelesen werden
sollen, und „oracleDB“, falls die Daten aus einer (Oracle-)Datenbank abgefragt werden sollen. Soll
ein automatisches „Kombiniertes Data Mining“ durchgeführt werden, müssen die Daten in einer
Datenbank gespeichert sein, damit die Berechnung der Korrelation zur Bestimmung des besten
Clusterattributs durchgeführt werden kann.
Die Methoden getUsername() und getPassword() liefern die notwendigen Benutzerdaten (Benutzername / Passwort) zum Zugriff auf die Datenbank.
Die Methode makeClustering liefert einen Wahrheitswert, der angibt, ob die Daten geclustert werden sollen, bevor die Assoziationsanalyse durchgeführt wird. Das Ergebnis dieser Methode bestimmt somit, ob ein herkömmliches Data Mining oder ein „Kombiniertes Data Mining“ durchgeführt wird. Falls ein Clustering durchgeführt wird, liefert die Methode getClustersource() einen
Verweis auf die zu clusternden Daten. Hierbei kann es sich entweder um einen Pfad zu einer
„arff“-Datei oder um eine Datenbankanfrage handeln. Die Methode getClusteranzahl() liefert
die gewünschte Anzahl von Clustern zurück, die beim Clustering gebildet werden. Die Methode
getClusterattributes() liefert die Attribute zurück, welche zum Clustern der Daten verwendet
werden sollen. Der Rückgabewert der Methode autoFindBestAttributes() entscheidet darüber,
ob es sich bei den Clusterattributen schon um die endgültigen Attribute handelt oder ob es sich um
die Attribute handelt, aus denen die besten n Attribute zum Clustern der Daten ausgewählt werden
sollen. Der Parameter n kann mit Hilfe der Methode getNBestAttributes() abgefragt werden.
Die Methode getDataMiningMethod() ist für zukünftige Erweiterungen eingeführt worden. Der
Rückgabewert gibt an, welche Data Mining-Methode auf die Daten angewendet werden soll. Bisher
ist der einzige gültige Rückgabewert „asso“ für eine Assoziationsanalyse. In folgenden Versionen
87
7 Vorstellung der Anwendung ”Easy Mining”
könnten auch andere Data Mining-Methoden implementiert werden, so dass z. B. auch eine Kombination aus Clustering und Klassifikation durchgeführt werden kann.
Die Methode getAssosourceName() liefert einen Verweis auf die Daten, welche für die Assoziationsanalyse verwendet werden sollen. Bei dem Rückgabewert kann es sich entweder um einen
Pfad zu einer Datei oder um eine Datenbankanfrage handeln. Der Rückgabewert der Methode
assoPrepared() zeigt an, ob die Datenquelle bereits für die Assoziationsanalyse vorbereitet ist.
Dies wird in den meisten Fällen nicht der Fall sein, es sei denn, es wurden Zwischenergebnisse mit
Hilfe der Anwendung „Easy Mining“ gespeichert, die jetzt als Datenquelle verwendet werden. Die
Methoden getSupport() und getConfidence liefern die Werte für den minimalen Support bzw. die
minimale Confidence zurück.
Die Rückgabewerte der Methoden saveIntermediateResult() und saveIntermediateResultsAs()
geben an, ob und wo Zwischenergebnisse gespeichert werden sollen.
EasyMiningProperties
Die Klasse „EasyMiningProperties“ implementiert das Interface „Input“. Die Klasse liest die für
das Data Mining benötigten Informationen aus einer Konfigurationsdatei ein und macht sie mittels
der get-Methoden für die anderen Komponenten der Anwendung „Easy Mining“ zugänglich. Bei
der Initialisierung der Klasse muss der Pfad zur Konfigurationsdatei angegeben werden. Dieser
wird vom Benutzer beim Aufruf der Anwendung „Easy Mining“ festgelegt. Der genaue Aufbau
der Konfigurationsdatei wird in Abschnitt 7.2.1 ausführlich beschrieben.
Mining
Die Klasse „Mining“ ist die Hauptklasse der Anwendung „Easy Mining“. Sie ist für die Auswertung
der Konfigurationsparameter und für die Steuerung des gesamten Data Mining-Prozesses verantwortlich. Die Initialisierung erfolgt durch die Klasse „EasyMining“, die auch den zu verwendenden
Input an die Klasse „Mining“ übergibt. Die Methode startMining() startet das eigentliche Data
Mining. Der Ablauf des Data Mining wird mit Hilfe der Benutzerschnittstelle vom Benutzer festgelegt. Beim automatischen „Kombinierten Data Mining“ wird von der Methode startMining() die
Klasse „Clusterattributes“ aufgerufen, um die besten Clusterattribute zu bestimmen. Im Anschluss
wird das Clustering von der Klasse „Cluster“ durchgeführt und es werden die für die Assoziationsanalyse zu verwendenden Daten mit Hilfe der Klasse „Dataset“ anhand des Clusteringergebnisses aufgeteilt. In den letzten Schritten wird die eigentliche Assoziationsanalyse für die einzelnen Cluster durchgeführt, das Maß IW berechnet und die Ergebnisse ausgegeben. Die Ergebnisse
bestehen hierbei aus den in den Clustern gefundenen Assoziationsregeln und dem Ergebnis des
Maßes IW. Abhängig von den Konfigurationsparametern fallen bestimmte Schritte beim Data Mining weg. Beim „Kombinierten Data Mining“ wird auf die automatische Ermittlung der besten
Clusterattribute verzichtet, während beim herkömmlichen Data Mining auf die Ermittlung der besten Clusterattribute und auf das Clustering (inkl. der Aufteilung der Daten) verzichtet wird.
Clusterattributes
Die Klasse „Clusterattributes“ ist für die Bestimmung der besten Clusterattribute zuständig. Dies
geschieht mit Hilfe der Methode findBestClusterattributes(clusterattributes : String, bestN :
int). Zur Bestimmung der besten Attribute wird die Korrelation mittels des normierten Kontingenzkoeffizienten zwischen den übergebenen Attributen berechnet. Zurückgeliefert werden die n
Attribute, bei denen die Korrelation (bei bestehender Korrelation) am geringsten ist. Sollten hierbei keine n Attribute gefunden werden, werden die Attribute mit der nächstkleineren Korrelation
zurückgeliefert.
88
7 Vorstellung der Anwendung ”Easy Mining”
ChiSquare
Die Klasse „ChiSquare“ stellt Methoden zur Berechnung der Korrelation mittels des χ2 -Verfahrens
zur Verfügung. Die Korrelation zwischen zwei Attributen lässt sich mittels der Methode calculateCorrelation( attribute1 : String, attribute2 : String) berechnen. Die Methode liefert einen Array
mit drei Doublewerten zurück: An erster Position ist hierbei der berechnete χ2 -Wert gespeichert,
an zweiter Position der Referenzwert χ2Ref. und an dritter Position der normierte Kontingenzkoeffizient K ∗ . Die Berechnung des χ2 -Wertes und des normierten Kontingenzkoeffizienten K ∗ für die
beiden Attribute erfolgt innerhalb dieser Methode. Die Berechnung des Referenzwertes χ2Ref. erfolgt
mit Hilfe der Methode critchi( p : double, d f : int), die Berechnung der Wahrscheinlichkeit des
χ2 -Wertes mit Hilfe der Methode pochisq( x : double, d f : int). Die Implementierung dieser Methoden sowie der Hilfsmethoden poz(z : double) und ex( x : double) basiert auf den entsprechenden
C-Quellen von Geri Perlman aus dem Jahr 19872 .
Cluster
Die Klasse „Cluster“ ist für das Clustering der Daten verantwortlich. Bei der Initialisierung müssen die zu clusternden Daten (als Datentyp „weka.Instances“) und die zu verwendenen Clusterattribute angegeben werden. Der Aufruf der Methode createCluster(clusteranzahl : int) bereitet
die Daten für das Clustering vor und teilt sie in einzelne Cluster auf. Insgesamt werden maximal
clusteranzahl Cluster erzeugt. Zum Clustern der Daten wird der „Simple-k-Means“-Algorithmus
verwendet. Dieser wird von der Klasse „weka.clusterers.SimpleKMeans“ zur Verfügung gestellt.
Die Methode getCluster() liefert das Ergebnis des Clustering als Datentyp „weka.Instances“ zurück. Die Informationen, welchem Cluster die einzelnen Datensätze zugeordnet wurden, sind hierbei als zusätzliches Attribut in den Daten enthalten. Die Methode getClusters() liefert hingegen
ein Array von „weka.Instances“ zurück, wobei jede „weka.Instances“ die Datensätze eines Clusters enthält. Die Methoden printCluster() und printClusterStats(verbose : boolean) dienen der
Ausgabe des Ergebnisses. Während die Methode printCluster() die Datensätze und die entsprechenden Clusternummern ausgibt, gibt die Methode printClusterStats(verbose : boolean) Informationen über das durchgeführte Clustering aus. Hierzu gehören Informationen wie die verwendeten Clusterattribute oder die Anzahl der erzeugten Cluster. Diese Informationen werden mit Hilfe
der Klasse „weka.clusterers.ClusterEvaluation“ ermittelt.
Association
Die Klasse „Association“ führt eine Assoziationsanalyse für eine Menge von Transaktionen durch.
Diese müssen bei der Initialisierung der Klasse als „weka.Instances“ übergeben werden. Die eigentliche Assoziationsanalyse wird von der Methode createRules(support : int, con f idence : int) unter
Zuhilfenahme der Klasse „weka.associations.Apriori“ durchgeführt. Die Methode getRules liefert
einen Vektor mit den gefundenen Assoziationsregeln zurück. Jede Regel besteht wiederum aus einem Vektor. Das erste Element des Vektors ist die Prämisse, das zweite die Konklusion und das
dritte Element beinhaltet den Confidencewert der entsprechenden Assoziationsregel. Die Methode
printRules() ist für die Ausgabe der Assoziationsregeln verantwortlich. Die Methode estimateRuleSet() stellt u. a. alle Informationen zur Verfügung, die zur Berechnung des Maßes IW benötigt
werden. Zu den bereitgestellten Informationen gehören die Anzahl der gefundenen Assoziationsregeln, die Anzahl der Transaktionen, die Anzahl der in den Transaktionen enthaltenen Items und
der erzielbare Komprimierungsgewinn. Die Berechnung des Maßes IW erfolgt allerdings erst in der
Klasse „Mining“, weil sich die Berechnung beim herkömmlichen Data Mining und beim „Kombinierten Data Mining“ unterscheidet.
2 http://www.netlib.org/a/perlman
89
7 Vorstellung der Anwendung ”Easy Mining”
Dataset
Die Klasse „Dataset“ wird verwendet, um „weka.Instances“ zu erzeugen, zu speichern, zu verändern und zu beschreiben. Mit Hilfe der Methode createInstances(sourcetype : String, sourcename :
String, username : String, password : String) können „weka.Instances“ auf einfache Art und Weise erstellt werden. Die Instances können entweder aus einer (arff-)Datei oder aus einer Datenbank
erzeugt werden. Angegeben werden müssen hierzu der Sourcetype, der Sourcename und die Datenbankzugangsdaten (Username, Password), falls die Instances aus einer Datenbank erzeugt werden
soll. Eine nähere Beschreibung der Parameter ist im Abschnitt über das Interface „Input“ zu finden.
Die Methode saveInstances(inst : Instances, path : String) speichert die angegebene Instances an
dem angegebenen Ort (path).
Um eine Beschreibung für mehrere Instances zu bekommen, kann die Methode describeInstances
(instArray : Instances[]) verwendet werden. Für jedes Attribut wird der Name des Attributs und
eine Beschreibung der Attributwerte ausgegeben. Bei numerischen Attributen handelt es sich bei
den Beschreibungen um eine Angabe des Wertebereichs, bei nominalen Attributen um eine Auflistung der Attributwerte. Diese Funktion wird dafür verwendet, eine Beschreibung der einzelnen
Cluster zu erzeugen.
Die Methode splitInstances(splitin f o : Instances, splitdata : Instances) teilt eine Instances (splitdata) anhand der Informationen, die in einer anderen Instances (splitin f o) enthalten sind, in mehrere Instances auf. Die Instances splitin f o enthält hierbei mindestens zwei Attribute: eine eindeutige
ID und eine Nummer, die die Zugehörigkeit zu einer Instances angibt. Die Instances splitdata enthält die Informationen, die aufgeteilt werden sollen. Im Kontext des „Kombinierten Data Mining“
mit einer Kombination aus Clustering und Assoziationsanalyse beinhaltet die Instances splitin f o
das Ergebnis des Clustering: Sie besteht (mindestens) aus der ID des Datensatzes und der Nummer
des Clusters, welchem der Datensatz zugeordnet wurde. Sind weitere Attribute enthalten, werden
diese ignoriert. Die Instances splitdata enthält die Transaktionen, die anhand des Clusteringergebnisses aufgeteilt werden sollen. Zurückgegeben werden mehrere Instances, nämlich für jeden Cluster eine, die die Datensätze des jeweiligen Clusters enthalten.
Die Methode createTMatrix(unprepared : Instances) erzeugt aus einer Menge von Transaktionen
eine Transaktionsmatrix. Die Transaktionen müssen hierfür in einem bestimmten Format vorliegen
(vgl. Tabelle 7.1).
Die Methode prepareInstancesForClustering(inst : Instances) bereitet eine Instances für das
Clustering vor. Die Vorbereitung betrifft nur die nominalen Attribute. Bei der Vorbereitung der
Daten wird die Reihenfolge von Teilen von Attributwerten verändert. Ist zu einem Film z. B. der
Attributwert „Deutschland; USA“ für das Herkunftsland gespeichert, ist dies gleichbedeutend mit
dem Attributwert „USA; Deutschland“. Wird allerdings beim Clustering von nominalen Attributen wie in der Weka Implementierung des „Simple-k-Means“-Algorithmus nur überprüft, ob die
Attributwerte identisch sind, dann werden die Herkunftsländer „Deutschland; USA“ und „USA;
Deutschland“ als unterschiedliche Länder angesehen. Damit dies nicht geschieht, werden die Attributwerte von nominalen Attributen sortiert („USA; Deutschland“ wird zu „Deutschland; USA“).
Als Trennzeichen wird das Semikolon verwendet. Zur Sortierung der Attributwerte wird die Methode sortString(str : String) verwendet.
Utilities
Die Klasse „Utilities“ enthält verschiedene Hilfsfunktionen, die von den Klassen des „EasyMining.
core“-Packages verwendet werden. Zu den wichtigsten Methoden gehören die Methoden removeAttributes(instances : Instances, attributes : String, inverse : boolean) und getAttributenames
90
7 Vorstellung der Anwendung ”Easy Mining”
(inst : Instances). Die erste Methode löscht Attribute aus einer Instances. Hierzu muss eine Instances, eine Liste von Attributen und ein Wahrheitswert (inverse) angegeben werden. Der Parameter inverse entscheidet darüber, ob die übergebenen Attribute aus der Instances gelöscht werden
(inverse = f alse) oder ob alle anderen Attibute gelöscht werden (inverse = true). Die zweite Methode liefert die Attributnamen einer Instances als String zurück. Eine Übersicht über alle Methoden
findet sich in Abbildung 7.4.
Utilities
getPosOfAttribute(inst : Instances,attr : String) : int
getRange(inst : Instances,str : String[]) : String
removeAttributes(inst : Instances,attributes : String,inverse : boolean) : Instances
getEmptyAttributes(inst : Instances) : Vector<Integer>
getNumberOfValuesPerAttribute(inst : Instances) : int[]
getAttributenames(inst : Instances) : String
printVector(v : Vector) : void
printArray(array : Object[]) : void
Abbildung 7.4: Die Klasse „Utilities“
91
8 Tests und Ergebnisse
In diesem Kapitel werden weitere Experimente zum automatischen „Kombinierten Data Mining“
vorgestellt. Bei diesen Experimenten werden nicht wie im 5. Kapitel Assoziationsregeln zwischen
Schauspielern untersucht, sondern es sollen Assoziationsregeln zwischen den weiteren Informationen zu den Filmen untersucht werden. Insbesondere sollen auch attributübergreifende Assoziationsregeln gefunden und untersucht werden. Hierzu werden die Attributwerte verschiedener
Attribute, wie z. B. der Attribute „Genre“ und „Land“ zu einer Transaktion kombiniert, um Abhängigkeiten zwischen diesen Attributen in Form von Assoziationsregeln zu finden. Hierbei können
z. B. Assoziationsregeln mit unterschiedlichen Attributwerten eines Attributs, wie z. B. „Genre=
’Action’ ⇒ Genre=’Thriller’“ oder „Land=’Mexiko’ ⇒ Land=’Spanien’“, aber auch Assoziationsregeln zwischen Attributwerten unterschiedlicher Attribute, wie z. B. „Land=’USA’ ⇒ Genre=
’Action’“ gefunden werden.
Dies soll an einem Beispiel verdeutlicht werden. Gegeben seien folgende Daten:
FilmID
1
1
2
3
Genre
Action
Thriller
Komödie
Drama
FilmID
1
2
2
3
Land
USA
USA
GB
Kanada
Für die attributübergreifende Assoziationsanalyse können diese Daten in Transaktionen umgeformt
werden:
T1 : {Genre=’Action’, Genre=’Thriller’, Land=’USA’}
T2 : {Genre=’Komödie’, Land=’USA’, Land=’GB’}
T3 : {Genre=’Drama’, Land=’Kanada’}
Mit diesen Transaktionen kann im Anschluss eine Assoziationsanalyse durchgeführt werden. Es
werden u. a. folgende Assoziationsregeln gefunden:
R1 : Genre=’Action’ ⇒ Genre=’Thriller’
R2 : Land=’GB’ ⇒ Land=’USA’
R3 : Land=’GB’ ⇒ Genre=’Komödie’
Bei den durchgeführten Experimenten wurden alle Filme aus der MovieDB berücksichtigt. Zusätzlich zu bisher verwendeten Informationen wurde ein zusätzliches Attribut („Alter“) mit dem Durchschnittsalter der Schauspieler (zum Zeitpunkt der Veröffentlichung) eingeführt. Mit Hilfe dieses
Attributs lassen sich u. a. Abhängigkeiten zwischen der Bewertung eines Filmes und dem durchschnittlichen Alter der beteiligten Schauspieler untersuchen.
92
8 Tests und Ergebnisse
Bei der Assoziationsanalyse wurden für das Assoziationsattribut folgende Kombinationen von Attributen verwendet:
• Genre, Land
• Genre, Rating
• Rating, Alter
• Rating, Dekade
Diese Kombinationen wurden auf Grund ihrer praktischen Relevanz ausgewählt. Die Kombination
aus Genre und Land kann z. B. Aufschluss darüber geben, ob es einen Zusammenhang zwischen
den an einem Film beteiligten Ländern und dem Filmgenre gibt. Werden also Filme mit bestimmten
Genre häufig in denselben Ländern gedreht? Oder produzieren bestimmte Länder häufig Filme eines bestimmten Genres? Die Kombination aus Genre und Rating geht der Frage nach, ob bestimmte
Genres dem Personenkreis besonders gut gefallen, der die Filme bewertet hat. Die Kombination aus
Rating und Alter beantwortet die gleiche Frage, nur mit dem Durchschnittsalter der Schauspieler.
Sind also Filme, in denen die Schauspieler in einem bestimmtem Alter sind, sehr beliebt oder werden diese vielleicht als besonders schlecht empfunden? Die Kombination aus Rating und Dekade
kann die Frage beantworten, ob Filme aus einer bestimmten Dekade von dem Personenkreis, der
die Bewertung abgibt, als besonders gut oder schlecht empfunden werden.
Bei den Experimenten wurden für das Clustering der Daten jeweils die drei Attribute verwendet,
welche bzgl. des normierten Kontingenzkoeffizienten K∗ die geringste Korrelation aufgewiesen haben, wobei nur Attribute berücksichtigt wurden, die mit dem Assoziationsattribut korrelieren.
Die Ergebnisse des automatischen „Kombinierten Data Mining“ sind in den folgenden Tabellen
dargestellt. Die Spalten haben folgende Bedeutung: Die Spalte „Assoziationsattribut“ beinhaltet
die Attribute, welche für die Assoziationsanalyse kombiniert wurden. Die Spalte „Clusterattribute“
enthält das Attribut, welches für das Clustering verwendet wurden. Die Spalte „#Cluster“ enthält
die Anzahl der erzeugten Cluster, die Spalte „#Regeln“ enthält die Anzahl der gefundenen Assoziationsregeln. Die Spalte „K∗ “ enthält den normierten Kontingenzkoeffizienten K∗ für die Korrelation
zwischen dem Assoziationsattributen und dem Clusterattribut. Die Spalte „IW“ beinhaltet das Ergebnis des Maßes IW.
Die Ergebnisse in den folgenden Tabellen sind anhand des normierten Kontingenzkoeffizienten
absteigend sortiert. In der ersten Zeile ist jeweils das Ergebnis des herkömmlichen Data Mining
angegeben.
Genre, Land
Assoziationsattribute
Genre, Land
Genre, Land
Genre, Land
Genre, Land
Clusterattribute
Kontinent
Rating
Typ
#Cluster
3
3
3
#Regeln
162
256
197
208
K∗
1,00
0,803
0,801
IW
3,47 (4513/130.045)
4,35 (5656/130.045)
4,43 (5761/130.045)
3,43 (4459/130.045)
Tabelle 8.1: Ergebnisse des automatischen „Kombinierten Data Mining“ (Genre, Land)
93
8 Tests und Ergebnisse
Genre, Rating
Assoziationsattribute
Genre, Rating
Genre, Rating
Genre, Rating
Genre, Rating
Clusterattribute
Typ
Kontinent
Dekade
#Cluster
3
3
3
#Regeln
233
368
297
284
K∗
0,658
0,650
0,645
IW
8,53 (9.467/111.015)
10,08 (11.192/111.015)
9,52 (10.566/111.015)
10,85 (12.041/111.015)
Tabelle 8.2: Ergebnisse des automatischen „Kombinierten Data Mining“ (Genre, Rating)
Rating, Alter
Assoziationsattribute
Rating, Alter
Rating, Alter
Rating, Alter
Rating, Alter
Clusterattribute
Genre
Kontinent
Dekade
#Cluster
3
3
3
#Regeln
5
5
14
15
K∗
0,306
0,305
0,228
IW
15,04 (11.735/78.034)
15,04 (11.735/78.034)
15,06 (11.752/78.034)
15,14 (11.811/78.034)
Tabelle 8.3: Ergebnisse des automatischen „Kombinierten Data Mining“ (Rating, Alter)
Rating, Dekade
Assoziationsattribute
Rating, Dekade
Rating, Dekade
Rating, Dekade
Rating, Dekade
Clusterattribute
Genre
Kontinent
Type
#Cluster
3
3
3
#Regeln
6
6
17
19
K∗
0,257
0,207
0,142
IW
14,49 (11.311/78.034)
14,50 (11.312/78.034)
14,46 (11.287/78.034)
14,64 (11.426/78.034)
Tabelle 8.4: Ergebnisse des automatischen „Kombinierten Data Mining“ (Rating, Dekade)
Bei den hier durchgeführten Experimenten konnte nochmals gezeigt werden, dass auch auf anderen
Daten mit Hilfe der Korrelationsanalyse gute Clusterattribute für das „Kombinierte Data Mining“
identifiziert werden können, wenn die Attribute mit der geringsten Korrelation ausgewählt werden.
In drei der vier Experimente ist das Attribut mit der geringsten Korrelation auch das Attribut, welches das beste Ergebnis beim „Kombinierten Data Mining“ erzielt. In einem Fall („Genre, Land“)
handelt es sich bei dem Attribut mit der zweitniedrigsten Korrelation um das beste Attribut, wobei
∗
in diesem Fall die Korrelation nur unwesentlich höher ist (KRating
=0,803), als die niedrigste Korrela∗ =0,801). In einem Fall („Rating, Alter“) konnte die Reihenfolge der Ergebnisse mittels der
tion (KTyp
Korrelationsanalyse genau vorhergesehen werden.
Überraschend ist, dass das Clustering mit dem Attribut „Kontinent“ beim Experiment „Genre,
Land“ trotz der hohen Korrelation das zweitbeste Ergebnis und damit ein besseres Ergebnis als
das Attribut mit der geringsten Korrelation erzielt hat.
94
9 Fazit und Ausblick
In dieser Arbeit wurden Kombinationen von Data Mining-Verfahren untersucht, wobei ein deutlicher Schwerpunkt auf die Kombination aus Clustering und Assoziationsanalyse gelegt wurde.
Die Einführung eines Maßes zur Bewertung von Mengen von Assoziationsregeln hat dazu geführt,
dass die Ergebnisse verschiedener Assoziationsanalysen erstmals auf einfache Weise miteinander
vergleichbar sind. Die durchgeführten Experimente haben gezeigt, dass durch die Kombination
von Clustering und Assoziationsanalyse eine Verbesserung der Ergebnisse erzielt werden kann.
Die Qualität der Ergebnisse wurde anhand des hier eingeführten Maßes bestimmt. Neben der Verbesserung der Ergebnisse konnte gezeigt werden, dass sich die Laufzeit für das Data Mining durch
die Kombination von Clustering und Assoziationsanalyse deutlich reduzieren lässt.
Weiterhin wurde ein Ansatz zur automatischen Auswahl der Clusterattribute beim „Kombinierten
Data Mining“ vorgestellt. Dieser Ansatz zeigt, dass entgegen der bisherigen Annahme, die Auswahl
der Clusterattribute habe durch Experten zu erfolgen, eine Automatisierung der Auswahl möglich
ist. Bei dem hier vorgestellten Ansatz erfolgt die Auswahl der besten Clusterattribute mit Hilfe einer
Korrelationsanalyse zwischen verschiedenen potentiellen Clusterattributen und dem Assoziationsattribut.
Aufbauend auf diesem Ansatz zur Automatisierung des „Kombinierten Data Mining“ wurde die
Anwendung „Easy Mining“ implementiert. Diese Anwendung ermöglicht es, ein herkömmliches
Data Mining, ein „Kombiniertes Data Mining“, sowie ein automatisches „Kombiniertes Data Mining“ durchzuführen und die Ergebnisse mit Hilfe des Maßes IW bewerten zu lassen. Mit Hilfe der
Anwendung „Easy Mining“ wurden abschließend weitere Experimente zum automatischen „Kombinierten Data Mining“ durchgeführt, in denen gezeigt werden konnte, dass die Automatisierung
auch auf einer anderen Datengrundlage zu guten Ergebnissen führt.
Diese Arbeit kann als Grundlage für weitere Untersuchungen zur Analyse und Automatisierung
des „Kombinierten Data Mining“ verwendet werden.
Ausweitung der Experimente auf andere Daten
Bei den hier durchgeführten Experimenten handelt es sich ausschließlich um Experimente mit den
Daten aus einer Film-Datenbank. Zwar wurden unterschiedliche Datengrundlagen (Ausschnitte
aus der Datenbank) und Assoziationsattribute für die Experimente verwendet, dennoch stammen
alle Daten aus einem bestimmten Anwendungsgebiet. Zur Verifikation der Ergebnisse wären weitere Experimente auf anderen Datenbeständen wünschenswert. Auf Grund der Einschränkungen
bei der Berechnung der Korrelation mittels des χ2 -Verfahren wären insbesondere Datenbestände
interessant, in denen die einzelnen Items häufig auftreten.
In der Arbeit [Spe07] wurde ein Ansatz zur Materialisierung von räumlichen Informationen entwickelt. Mit diesem Ansatz ist es möglich, ein Data Mining in räumlichen Datenbanken durchzuführen, bei dem ausschließlich Methoden und Algorithmen für das Data Mining in relationalen Datenbanken benutzt werden. Mit Hilfe dieses Ansatzes und der Anwendung „Easy Mining“ könnte
ein (automatisches) „Kombiniertes Data Mining“ auf räumlichen Daten durchgeführt werden. Für
95
9 Fazit und Ausblick
das Clustering bieten sich hierbei in erster Linie die räumlichen Koordinaten der einzelnen räumlichen Objekte an. Im Kontext der räumlichen Daten ist in erster Linie interessant, ob auch hier eine
Verbesserung der Ergebnisse durch die Kombination von Data Mining-Verfahren erzielt werden
kann.
Erweiterung der Anwendung Easy Mining“
”
Die im Rahmen dieser Masterarbeit entwickelte Anwendung „Easy Mining“ ist in der Lage, ein
„Kombiniertes Data Mining“ mit den Data Mining-Verfahren Clustering und Assoziationsanalyse
durchzuführen. In zukünftigen Versionen wäre eine Erweiterung um andere Data Mining-Verfahren
denkbar. So könnte neben der Kombination aus Clustering und Assoziationsanalyse z. B. auch die
Kombination aus Clustering und Klassifikation näher untersucht werden. Neben der grundsätzlichen Frage, ob überhaupt eine Verbesserung durch die Kombination dieser beiden Verfahren erreicht werden kann, ist es interessant, ob auch bei diesen Verfahren eine Automatisierung des Prozesses möglich ist und welche Clusterattribute zu den besten Klassifikationsergebnissen führen.
Neben der Erweiterung der Anwendung „Easy Mining“ um weitere Data Mining-Verfahren könnte
in zukünftigen Versionen auch der Grad der Automatisierung erhöht werden und die Automatisierung noch weiter verbessert werden. Zur Erhöhung des Automatisierungsgrades könnte z. B. die
Anzahl der verwendeten Clusterattribute nicht mehr apriori vom Benutzer des Systems festgelegt
werden, sondern automatisch von der Anwendung ermittelt werden. Hierzu bietet sich unter Umständen die Angabe eines Thresholds an, um den das Ergebnis der Korrelationsanalyse maximal
vom besten Ergebnis abweichen darf, damit ein „Kombiniertes Data Mining“ auch mit diesem Attribut durchgeführt wird. Weitere Automatisierungen könnten z. B. die Auswahl des Assoziationsattributs betreffen. Eine Verbesserung der Automatisierung könnte darauf abzielen, dass nicht nur
die besten Attribute ausgewählt werden, sondern dass diese sogar in der richtigen Reihenfolge ausgegeben werden. Weiterhin könnte die Qualität der Vorhersagen noch weiter verbessert werden.
Kombination der Ergebnisse
In dieser Arbeit wurden die Ergebnisse des herkömmlichen Data Mining mit den Ergebnissen des
„Kombinierten Data Mining“ verglichen, um zu zeigen, dass die Kombination von Clustering und
Assoziationsanalyse zu einer Verbesserung der Ergebnisse führen kann. Was hierbei nicht berücksichtigt wurde, ist die Tatsache, dass sich die Ergebnisse des herkömmlichen und des „Kombinierten Data Mining“ auch kombinieren lassen. So könnten theoretisch allgemeingültige Regeln zur
Komprimierung aller Daten angegeben werden und weitere (speziellere) Regeln für die einzelnen
Cluster. Auf diese Weise ließe sich u. a. der Verlust von Assoziationsregeln beim „Kombinierten
Data Mining“ verhindern. Die Kombination der Ergebnisse führt vermutlich zu einer weiteren Verbesserung des Gesamtergebnisses und sollte deshalb zukünftig näher untersucht werden.
96
A Dokumentation der verwendeten Datenbanken
A.1 Relationales Schema der Filmdatenbank Movie Database“
”
PRODUCTION
(production, titlenull , runtimenull , yearnull )
MOVIE
(production → PRODUCTION, type)
EPISODE
(production → PRODUCTION, series → SERIES, seasonnull , episodenull ,
air_datenull )
SERIES
(series, title, yearnull )
GENRE
(production → PRODUCTION, genre)
LOCATION
(production → PRODUCTION, countrynull , location)
CONTINENT
(continent , country → LOCATION, continent_name)
AKA
(production → PRODUCTION, country, aka)
BUDGET
(production → PRODUCTION, budget, currency)
RATING
(production → PRODUCTION, rating, votes)
PERSON
(person, name, realnamenull , sexnull , heightnull , birth_datenull , birth_countrynull ,
birth_locationnull , death_datenull , death_countrynull , death_locationnull )
PARENTS
(person → PERSON, mothernull → PERSON, fathernull → PERSON)
WORKS
(person → PERSON, production → PRODUCTION, job, credit_posnull )
PLAYS
(person → PERSON, production → PRODUCTION, role)
A.2 Erläuterungen zum Schema der Filmdatenbank Movie Database“
”
Die Tabelle PRODUCTION enthält Informationen zu Film und Fernsehproduktionen. Jede Produktion hat eine eindeutige Nummer (production). Zusätzlich sind jeweils (sofern bekannt) der Titel
(title), das Produktionsjahr (year) und die Laufzeit in Minuten (runtime) angegeben.
Filme (MOVIE) sind spezielle Produktionen eines bestimmten Typs (type); mögliche Typen sind:
„cinema“ für Kino und „tv“ für Fernsehfilme sowie „video“ für Filme, die weder im Kino noch im
Fernsehen gezeigt wurden.
Episoden (EPISODE) sind Produktionen, die zu Serien (series) gehören. Hierzu gibt es Angaben
über Staffel und Folgennummer (season und episode) sowie zum Datum der Erstausstrahlung
(air_date).
Jede Serie (SERIES) ist jeweils durch eine eindeutige Nummer identifiziert (series). Zusätzlich ist
der Titel der Serie (title) und das Jahr (year), in dem die Serie begann, angegeben.
97
A Dokumentation der verwendeten Datenbanken
Zu Produktionen gibt es diverse weitere Daten: In GENRE sind die Genres einer Produktion vermerkt, z.B. „Action“, „Drama“ oder „SciFi“.
RATING enthält die (durchschnittliche) Bewertung (rating) einer Produktion zusammen mit der
Anzahl abgegebener Stimmen (votes). 10 ist die beste Bewertung, 0 die schlechteste.
In BUDGET steht, wieviel Geld (budget, inkl. Angabe der Währung in currency) ein Film gekostet
hat.
In der Tabelle LOCATION steht, wo die Produktion gedreht wurde: Die Spalte location enthält den
genauen Ort und die Spalte country (sofern bekannt) das Land, in dem sich der Ort befindet. Zu
einem Film können auch mehrere Drehorte angegeben werden.
In der Tabelle CONTINENT wird jedem Land aus der Tabelle LOCATION ein Kontinent zugeordnet. Auf diese Weise können bei Abfragen z. B. nur europäische Filme betrachtet werden.
Die Tabelle AKA (von „also known as“) enthält alternative Titel von Produktionen: Eine Produktion kann in einem anderen Land (country) einen anderen (oder mehrere andere) Titel (aka) haben,
etwa „Herr der Ringe: Die Gefährten, Der“ als deutscher Titel des Films „Lord of the Rings: The
Fellowship of the Ring, The“. country kann hier auch „International“ sein.
Eine PERSON wird durch eine eindeutig Nummer (person) identifiziert. Zusätzlich zum Namen
(name) der Person kann ihr Geschlecht (sex - „m“ für männlich, „f“ für weiblich), ihre Größe in
Zentimetern (height) oder der wirkliche Name (realname) - falls die Person einen Künstlernamen
benutzt - bekannt sein. Außerdem sind evtl. Datum, Land und Ort der Geburt (birth_...) oder des
Todes (death_... ) angegeben.
Die Zuordnung der Eltern (mother, father) zu einer Person (falls bekannt) erfolgt in der Tabelle
PARENTS.
Die Tabelle WORKS stellt eine Beziehung zwischen Produktionen und Personen her. Für jede
Mitwirkung einer Person an einer Produktion wird deren Aufgabe (job) festgehalten: „actor“ für
Schauspieler, „director“ für Regisseure, „costumedesigner“ etc. Eine Person kann mehrere Aufgaben in einer Produktion haben (etwa Schauspieler und Produzent). Zusätzlich kann bekannt sein,
an welcher Position die Person im Abspann der Produktion (bzgl. der Aufgabe) genannt wird
(credit_pos).
Verkörpert eine Person in einer Produktion eine Rolle, z.B. als Schauspieler oder als Stimme für eine
Trickfigur, enthält die Tabelle PLAYS (sofern bekannt) den Namen solcher Rollen (role).
A.3 Relationales Schema der für die Experimente verwendeten Tabellen
ACTIONTHRILLER_MOVIES
(id, genre, country, continent, year, decade, rating, budget)
ACTIONTHRILLER_ACTOR
(id, name, credit_pos, movies)
BLOCKBUSTER_USA_MOVIES
(id, genre, country, continent, year, decade, rating)
BLOCKBUSTER_USA_ACTOR
(id, name, credit_pos, movies)
COMEDYFAMILY_MOVIES
(id, genre, country, continent, year, decade, rating, budget)
COMEDYFAMILY_ACTOR
(id, name, credit_pos, movies)
98
A Dokumentation der verwendeten Datenbanken
EUROPEAN_MOVIES
(id, genre, country, continent, year, decade, rating, budget)
EUROPEAN_ACTOR
(id, name, credit_pos, movies)
GERMAN_MOVIES
(id, type, genre, country, continent, year, decade, rating)
GERMAN_ACTOR
(id, name, credit_pos, movies)
GERMAN_BUDGET_MOVIES
(id, type, genre, country, continent, year, decade, rating, budget)
GERMAN_BUDGET_ACTOR
(id, name, credit_pos, movies)
A.4 Erläuterungen zum Schema der verwendeten Tabellen
In der Tabelle ACTIONTHRILLER_MOVIES sind Kinofilme aus den Genre „Action“ und/oder
„Thriller“ gespeichert, für die ein Budget in Euro oder US-Dollar angegeben ist. Die Tabelle
ACTIONTHRILLER_ACTOR enthält die Namen der Schauspieler, die Position im Abspann und
die Anzahl der gedrehten Filme aus den Genres „Action“ und/oder „Thriller“.
In der Tabelle BLOCKBUSTER_USA_MOVIES sind Kinofilme aus den USA gespeichert, die ein
Rating von mindestens 7 haben. Die Tabelle BLOCKBUSTER_USA_ACTOR enthält die Namen der
Schauspieler, die Position im Abspann und die Anzahl der gedrehten „Blockbuster“.
Die Tabelle COMEDYFAMILY_MOVIES enthält Kinofilme aus den Genre „Comedy“ und „Family“ mit einem angegebenen Budget in Euro oder US-Dollar. Die Tabelle COMEDYFAMILY_ACTOR
enthält die Namen der Schauspieler, die Position im Abspann und die Anzahl der gedrehten Komödien und Familienfilme.
In der Tabelle EUROPEAN_MOVIES sind Informationen zu europäischen Kinofilmen mit einem
angegebenen Budget in Euro oder US-Dollar gespeichert. Die Tabelle EUROPEAN_ACTOR enthält
die Namen der Schauspieler, die Position im Abspann und die Anzahl der gedrehten europäischen
Filme.
In der Tabelle GERMAN_MOVIES sind alle deutschen Filme unabhängig von Typ und Genre
erfasst. Hier finden sich neben Kinofilmen auch Fernsehfilme und Videofilme1 . Die Tabelle
GERMAN_ACTOR enthält die Namen der Schauspieler, die Position im Abspann und die Anzahl
der gedrehten deutschen Filme.
Die Tabelle GERMAN_BUDGET_MOVIES enthält die deutschen Filme, zu denen ein Budget in
Euro oder US-Dollar angegeben ist. Die Tabelle GERMAN_BUDGET_ACTOR enthält die Namen
der Schauspieler, die Position im Abspann und die Anzahl der gedrehten deutschen Filme, zu denen
ein Budget in EURO oder US-Dollar angegeben ist.
1 Videofilme
sind Filme, die weder im Kino noch im Fernsehen gelaufen sind.
99
B Ergebnisse der Laufzeitanalyse
Im Folgenden sind die Laufzeiten der Experimente aus dem 5. Kapitel dargestellt. Wurde ein herkömmliches Data Mining durchgeführt, ist die Laufzeit der Experimente angegeben. Wurde ein
„Kombiniertes Data Mining“ durchgeführt, sind die verwendeten Clusterattribute, die Anzahl der
erzeugten Cluster (in Klammern) und die Laufzeit der Experimente angegeben. Die Laufzeit ist
jeweils in Minuten und Sekunden angegeben.
Actionthriller
herkömmliches DM
Kontinent (2)
Kontinent (3)
Rating (3)
Actionthriller 2
herkömmliches DM
Budget (3)
Dekade (3)
Kontinent (2)
Kontinent (3)
Rating (3)
Budget+Kontinent (3)
Blockbuster
herkömmliches DM
Dekade (3)
Genre (3)
Rating (3)
Dekade+Genre (3)
Genre+Rating (3)
Deutsche Filme
herkömmliches DM
Dekade (3)
Genre (3)
Rating (3)
Typ (3)
Typ (5)
Dekade+Rating (3)
Dekade+Rating (5)
Rating+Typ (2)
Rating+Typ (3)
Rating+Typ (4)
Rating+Typ (5)
Deutsche Filme (Budget)
herkömmliches DM 0:03
Budget (2)
0:03
Budget (3)
0:03
Budget (4)
0:03
Rating (3)
0:03
Typ (3)
0:03
Rating+Typ (3)
0:03
Rating+Typ (5)
0:04
44:53
8:46
8:51
3:46
8:50
2:34
1:32
8:30
8:09
3:46
2:09
Europäische Filme
herkömmliches DM
Budget (3)
Dekade (3)
Jahr (3)
Land (2)
Land (3)
Rating (3)
Budget+Rating (3)
Dekade+Rating (3)
Land+Rating (3)
7:17
1:15
2:03
5:05
1:43
3:33
2:13
1:18
0:58
0:58
2:15
2:15
1:18
1:17
1:00
1:15
Komödien / Familienfilme
herkömmliches DM 11:26
Budget (2)
6:17
Budget (3)
4:41
Budget (4)
3:04
Dekade (3)
3:29
Kontinent (3)
5:00
Jahr (3)
4:30
Rating (3)
4:56
Budget+Rating (3)
4:38
4:30
0:54
1:12
1:35
2:18
2:19
0:51
0:49
2:19
0:59
0:56
0:59
100
C Easy Mining“-Konfigurationsdateien
”
C.1 Kommentierte Konfigurationsdatei
# EasyMining Konfigu rations datei ( mit Erlaeuterungen )
# Art der Datenquelle fuer das kombinierte Data Mining : ( file | oracleDB )
sourcetype = file
# Da t en ba n kz ug a ng s da te n
# ( falls " sourcetype = oracleDB ")
# username : Benutzername fuer die Datenbank
# password : Datenbankpasswort
username = username
password = password
# Clustering
# makeClustering : Soll ein Clustering durchgefuehrt werden ? ( true | false )
# clustersource : Wo befinden sich die Daten , die geclustert werden sollen ?
#
( Pfad zur Arff - Datei | SQL - Statement )
# clusterattribute : Welche Attribute sollen zum Clustern der Daten
#
verwendet werden ? ( attribut1 ,... , attributN )
# clusteranzahl : Wieviele Cluster sollen erzeugt werden ?
makeClustering = true
clustersource = ./ clustersource
clusterattribute = attribut1
clusteranzahl = 3
# Kombiniertes Data Mining
# dataMiningMethod : Welches Verfahren soll ( nach dem Clustern ) verwendet
#
werden ? ( asso )
dataMiningMethod = asso
# Ass oziatio nsanaly se
# assosource : Wo befinden sich die Daten fuer die Assozi ationsa nalyse ?
#
( Pfad zur Arff - Datei | SQL - Statement )
# assoPrepared : Liegen die Eingabedaten bereits als Transaktionsmatrix vor ?
#
( true | false )
# support : Wert fuer den Support , z . B . "0.1" (=10%)
# confidence : Wert fuer die Confidence , z . B . "0.9" (=90%)
# s a ve I n t er m e d i at e R e s ul t : Soll die berechnete Transaktionsmatrix als
#
Arff - Datei gespeichert werden ? ( true | false )
# s a v e I n t e r m e d i a t e R e s u l t A s : Wo soll die Transaktionsmatrix gespeichert
#
werden ? ( Pfad zur Arff - Datei )
assosource = ./ assosource
assoPrepared = true
support = 0.5
confidence = 0.8
s a ve I n t e rm e d i a te R e s ul t = true
s a v e I n t e r m e d i a t e R e s u l t A s = ./ intermediateResult
101
C „Easy Mining“-Konfigurationsdateien
C.2 Herkömmliches Data Mining
Die Konfigurationsdateien setzen sich aus den globalen Einstellungen für das herkömmliche Data
Mining und den speziellen Einstellungen für das entsprechende Experiment zusammen. Die Einstellungen sind im Folgenden dargestellt.
Globale Einstellungen für das herkömmliche Data Mining
sourcetype = oracleDB
username = mewe
password = *****
makeClustering = false
dataMiningMethod = asso
assoPrepared = false
confidence = 0.5
Action-Thriller
assosource = select distinct id , name from act io nth ri lle r_a ct or
where credit_pos <= 4 order by id
support
= 0.0024
Action-Thriller 2
assosource = select distinct id , name from act io nth ri lle r_a ct or
where credit_pos <= 3 order by id
support
= 0.0018
Blockbuster (USA)
assosource = select distinct id , name from b lo ck b us te r _u s a_ ac t or
where credit_pos <= 4 order by id
support
= 0.002
Deutsche Filme
assosource = select distinct id , name from german_actor
where credit_pos <= 3 order by id
support
= 0.002
Deutsche Filme (mit Budget)
assosource = select distinct id , name from g erman_b udget_ac tor order by id
support
= 0.018
102
C „Easy Mining“-Konfigurationsdateien
Europäische Filme
assosource = select distinct id , name from european_actor
where credit_pos <= 5 order by id
support
= 0.0035
Komödien / Familienfilme
assosource = select distinct id , name from comedyfamily_actor
where credit_pos <= 5 order by id
support
= 0.0025
C.3 Kombiniertes Data Mining“
”
Die Konfigurationsdateien setzen sich aus den globalen Einstellungen für das „Kombiniertee Data
Mining“, den speziellen Einstellungen für das Clustering und den speziellen Einstellungen für die
Assoziationsanalyse zusammen. Die globalen Einstellungen und die Einstellungen für das Clustering sind im Folgenden aufgeführt. Die Einstellungen für die Assoziationsanalyse sind identisch mit
den Einstellungen beim herkömmlichen Data Mining und können dem Abschnitt C.2 entnommen
werden.
Globale Einstellungen für das Kombiniertee Data Mining“
”
sourcetype = oracleDB
username = mewe
password = *****
makeClustering = true
dataMiningMethod = asso
assoPrepared = false
confidence = 0.5
C.3.1 Action-Thriller
Action-Thriller (Kontinent)
clustersource = select distinct id , aggr_concat ( continent ) as continent
from a c ti on t hr il l er _ mo vi e s
group by id
clusterattribute = continent
clusteranzahl = 2
clustersource = select distinct id , aggr_concat ( continent ) as continent
from a c ti on t hr il l er _ mo vi e s
group by id
clusterattribute = continent
clusteranzahl = 3
103
C „Easy Mining“-Konfigurationsdateien
Action-Thriller (Rating)
clustersource = select distinct id , rating
from a c ti on t hr il l er _ mo vi e s
clusterattribute = rating
clusteranzahl = 3
C.3.2 Action-Thriller 2
Action-Thriller 2 (Budget)
clustersource = select distinct id , budget
from a c ti on t hr il l er _ mo vi e s
clusterattribute = budget
clusteranzahl = 3
Action-Thriller 2 (Dekade)
clustersource = select distinct id , decade
from a c ti on t hr il l er _ mo vi e s
clusterattribute = decade
clusteranzahl = 3
Action-Thriller 2 (Kontinent)
clustersource = select distinct id , aggr_concat ( continent ) as continent
from a c ti on t hr il l er _ mo vi e s
group by id
clusterattribute = continent
clusteranzahl = 2
clustersource = select distinct id , aggr_concat ( continent ) as continent
from a c ti on t hr il l er _ mo vi e s
group by id
clusterattribute = continent
clusteranzahl = 3
Action-Thriller 2 (Rating)
clustersource = select distinct id , rating
from a c ti on t hr il l er _ mo vi e s
clusterattribute = rating
clusteranzahl = 3
Action-Thriller 2 (Budget, Kontinent)
clustersource = select distinct id , budget ,
aggr_concat ( continent ) as continent
from a c ti on t hr il l er _ mo vi e s
group by id , budget
clusterattribute = budget , continent
clusteranzahl = 3
104
C „Easy Mining“-Konfigurationsdateien
C.3.3 Blockbuster (USA)
Blockbuster (Dekade)
clustersource = select distinct id , decade
from bl o c k bu s t e r _u s a _ m ov i e s
clusterattribute = decade
clusteranzahl = 3
Blockbuster (Genre)
clustersource = select distinct id , min ( genre ) as genre
from bl o c k bu s t e r _u s a _ m ov i e s
group by id
clusterattribute = genre
clusteranzahl = 3
Blockbuster (Rating)
clustersource = select distinct id , rating
from bl o c k bu s t e r _u s a _ m ov i e s
clusterattribute = rating
clusteranzahl = 3
Blockbuster (Dekade, Genre)
clustersource = select distinct id , decade , min ( genre ) as genre
from bl o c k bu s t e r _u s a _ m ov i e s
group by id , decade
clusterattribute = decade , genre
clusteranzahl = 3
Blockbuster (Genre, Rating)
clustersource = select distinct id , min ( genre ) as genre , rating
from bl o c k bu s t e r _u s a _ m ov i e s
group by id , rating
clusterattribute = genre , rating
clusteranzahl = 3
C.3.4 Deutsche Filme
Deutsche Filme (Dekade)
clustersource = select distinct id , decade from german_movies
clusterattribute = decade
clusteranzahl = 3
105
C „Easy Mining“-Konfigurationsdateien
Deutsche Filme (Genre)
clustersource = select distinct id , min ( genre ) as genre
from german_movies
group by id
clusterattribute = genre
clusteranzahl = 3
Deutsche Filme (Rating)
clustersource = select distinct id , rating from german_movies
clusterattribute = rating
clusteranzahl = 3
Deutsche Filme (Typ)
clustersource = select distinct id , type from german_movies
clusterattribute = type
clusteranzahl = 3
clustersource = select distinct id , type from german_movies
clusterattribute = type
clusteranzahl = 5
Deutsche Filme (Dekade, Rating)
clustersource = select distinct id , decade , rating from german_movies
clusterattribute = decade , rating
clusteranzahl = 3
clustersource = select distinct id , decade , rating from german_movies
clusterattribute = decade , rating
clusteranzahl = 5
Deutsche Filme (Rating, Typ)
clustersource = select distinct
clusterattribute = rating , type
clusteranzahl = 2
clustersource = select distinct
clusterattribute = rating , type
clusteranzahl = 3
clustersource = select distinct
clusterattribute = rating , type
clusteranzahl = 4
clustersource = select distinct
clusterattribute = rating , type
clusteranzahl = 5
id , rating , type from german_movies
id , rating , type from german_movies
id , rating , type from german_movies
id , rating , type from german_movies
106
C „Easy Mining“-Konfigurationsdateien
C.3.5 Deutsche Filme (mit Budget)
Deutsche Filme (mit Budget) (Budget)
clustersource = select distinct id , budget from ger ma n_b udg et _mo vi es
clusterattribute = budget
clusteranzahl = 2
clustersource = select distinct id , budget from ger ma n_b udg et _mo vi es
clusterattribute = budget
clusteranzahl = 3
clustersource = select distinct id , budget from ger ma n_b udg et _mo vi es
clusterattribute = budget
clusteranzahl = 4
Deutsche Filme (mit Budget) (Rating)
clustersource = select distinct id , rating from ger ma n_b udg et _mo vi es
clusterattribute = rating
clusteranzahl = 3
Deutsche Filme (mit Budget) (Typ)
clustersource = select distinct id , type from ge rma n_ bud get _m ovi es
clusterattribute = type
clusteranzahl = 3
Deutsche Filme (mit Budget) (Rating, Typ)
clustersource = select distinct id , rating , type from ger ma n_b ud get _mo vi es
clusterattribute = rating , type
clusteranzahl = 3
clustersource = select distinct id , rating , type from ger ma n_b ud get _mo vi es
clusterattribute = rating , type
clusteranzahl = 5
C.3.6 Europäische Filme
Europäische Filme (Budget)
clustersource = select distinct id , budget from european_movies
clusterattribute = budget
clusteranzahl = 3
107
C „Easy Mining“-Konfigurationsdateien
Europäische Filme (Dekade)
clustersource = select distinct id , decade from european_movies
clusterattribute = decade
clusteranzahl = 3
Europäische Filme (Jahr)
clustersource = select distinct id , year from european_movies
clusterattribute = year
clusteranzahl = 3
Europäische Filme (Jahr)
clustersource = select distinct id , aggr_concat ( country ) as country
from european_movies
group by id
clusterattribute = country
clusteranzahl = 2
clustersource = select distinct id , aggr_concat ( country ) as country
from european_movies
group by id
clusterattribute = country
clusteranzahl = 3
Europäische Filme (Rating)
clustersource = select distinct id , rating from european_movies
clusterattribute = rating
clusteranzahl = 3
Europäische Filme (Budget, Rating)
clustersource = select distinct id , budget , rating from european_movies
clusterattribute = budget , rating
clusteranzahl = 3
Europäische Filme (Dekade, Rating)
clustersource = select distinct id , decade , rating from european_movies
clusterattribute = decade , rating
clusteranzahl = 3
Europäische Filme (Land, Rating)
clustersource = select distinct id , aggr_concat ( country ) as country , rating
from european_movies
group by id , rating
clusterattribute = country , rating
clusteranzahl = 3
108
C „Easy Mining“-Konfigurationsdateien
C.3.7 Komödien / Familienfilme
Komödien / Familienfilme (Budget)
clustersource = select distinct id , budget from co medyfam ily_mov ies
clusterattribute = budget
clusteranzahl = 2
clustersource = select distinct id , budget from co medyfam ily_mov ies
clusterattribute = budget
clusteranzahl = 3
clustersource = select distinct id , budget from co medyfam ily_mov ies
clusterattribute = budget
clusteranzahl = 4
Komödien / Familienfilme (Dekade)
clustersource = select distinct id , decade from co medyfam ily_mov ies
clusterattribute = decade
clusteranzahl = 3
Komödien / Familienfilme (Jahr)
clustersource = select distinct id , year from comedyf amily_mo vies
clusterattribute = year
clusteranzahl = 3
Komödien / Familienfilme (Kontinent)
clustersource = select distinct id , aggr_concat ( continent ) as continent
from comed yfamily_ movies
group by id
clusterattribute = continent
clusteranzahl = 3
Komödien / Familienfilme (Rating)
clustersource = select distinct id , rating from co medyfam ily_mov ies
clusterattribute = rating
clusteranzahl = 3
Komödien / Familienfilme (Budget, Rating)
clustersource = select distinct id , budget , rating from com edyfami ly_movi es
clusterattribute = budget , rating
clusteranzahl = 3
109
D Ausgabe der Anwendung Easy Mining“
”
Im Folgenden ist eine beispielhafte Ausgabe der Anwendung „Easy Mining“ angegeben. Im Gegensatz zur wirklichen Ausgabe sind im Abschnitt „Assoziationsanalyse“ aus Gründen der Übersichtlichkeit jeweils nur die ersten vier Assoziationsregeln angegeben.
Attributauswahl
---------------------- Attributauswahl ----------------------
Eingabeattribute : RATING
*** Attributauswahl : Bestimmung der besten Attribute : o . k . ***
Beste Attribute : RATING
Clustering
----------------- Clustering ----------------*** Clustering : Vorbereiten der Daten : o . k . ***
*** Clustering : o . k . ***
Eingabetupel : ID , RATING
geclustert wird nach : RATING
Anzahl der erzeugten Cluster : 3
Beschreibung des Clusters 0 :
RATING : [ middle ]
Beschreibung des Clusters 1 :
RATING : [ high ]
Beschreibung des Clusters 2 :
RATING : [ low ]
110
D Ausgabe der Anwendung „Easy Mining“
Assoziationsanalyse
-------------------------- Asso ziations analyse -------------------------*** Assozi ationsan alyse : Erstellung der Transaktionsmatrix : o . k . ***
*** Assozi ationsan alyse : Splitten der Instanzen : o . k . ***
*** Assozi ationsan alyse : Erzeugung des Modells für Cluster 0
(1143 Elemente ) : o . k . ***
*** Assozi ationsan alyse : Erzeugung der Regeln für Cluster 0
( Support =0.34% Confidence =50.0%) : o . k . ***
*** Assozi ationsan alyse : Erzeugung der Bewertung für Cluster 0: o . k . ***
Cluster 0: (1143 Elemente )
’ Chandrasekhar ,
’ Chandrasekhar ,
’ Soter , Paul ’=1
’ Chandrasekhar ,
...
Jay ’=1
Jay ’=1
4 =>
Jay ’=1
4 = > ’ Heffernan , Kevin ’=1 4
( Confidence =1)
4 = > ’ Lemme , Steve ’=1 4
( Confidence =1)
’ Chandrasekhar , Jay ’=1 4
( Confidence =1)
4 = > ’ Soter , Paul ’=1 4
( Confidence =1)
*** Assozi ationsan alyse : Erzeugung des Modells für Cluster 1
(294 Elemente ) : o . k . ***
*** Assozi ationsan alyse : Erzeugung der Regeln für Cluster 1
( Support =1.3% Confidence =50.0%) : o . k . ***
*** Assozi ationsan alyse : Erzeugung der Bewertung für Cluster 1: o . k . ***
Cluster 1: (294 Elemente )
’ Palin , Michael ’=1 5 = > ’ Cleese , John ’=1 5
( Confidence =1)
’ Cleese , John ’=1 5 = > ’ Palin , Michael ’=1 5
( Confidence =1)
’ Keaton , Diane ’=1 4 = > ’ Allen , Woody ’=1 4
( Confidence =1)
’ Chapman , Graham ’=1 4 = > ’ Cleese , John ’=1 4
( Confidence =1)
...
*** Assozi ationsan alyse : Erzeugung des Modells für Cluster 2
(96 Elemente ) : o . k . ***
*** Assozi ationsan alyse : Erzeugung der Regeln für Cluster 2
( Support =3.99% Confidence =50.0%) : o . k . ***
*** Assozi ationsan alyse : Erzeugung der Bewertung für Cluster 2: o . k . ***
Cluster 2: (96 Elemente )
#
#
111
D Ausgabe der Anwendung „Easy Mining“
Bewertung des Ergebnisses
Bewertung der gefundenen Regeln :
Anzahl der gefundenen Regeln : 264
Metrik 1 ( Ko mp rim ie run gs gew inn ) : 0.62% (32/5163)
Metrik 1 ( realer Ko mpr im ier un gsg ew inn ) : 0.45% (23/5163)
112
Literaturverzeichnis
[ES00]
Ester, Martin / Sander, Jörg: Knowledge Discovery in Databases - Techniken und Anwendungen, Springer, 2000
[FPSM92] Frawley, W. J. / Piatetsky-Shapiro, G. / Matheus, C. J.: Knowledge discovery in databases
- an overview, Ai Magazine 13 (3), pp. 57-70, 1992
[FPSS96] Fayyad, U. M. / Piatetsky-Shapiro, G. / Smyth, P.: From Data Mining to Knowledge
Discovery in Databases, AI Magazine 17 (3), pp. 37-54, 1996
[GH06]
Geng, Liqiang / Hamilton, Howard J.: Interestingness measures for data mining: A survey, ACM Comput. Surv. 38 (3), 2006
[GHS06] Goller, Mathias / Humer, Markus / Schrefl, Michael: Beneficial Sequential Combination
of Data Mining Algorithms, ICEIS (2), pp. 135-143, 2006
[Gr04]
Grünwald, Peter: A tutorial introduction to the minimum description length principle,
CoRR (June 2004), 2004
[Hen04]
Henze, N.: Skript zur Vorlesung ”Web Data Management”, Universität Hannover, 2004
[HH01]
Hettich, S. / Hippner, H.: Assoziationsanalyse, in: Hippner, H. / Küsters, U. / Meyer, M.
/ Wilde, K.D. (Hrsg.):
Handbuch Data Mining im Marketing - Knowledge Discovery in Marketing Databases,
Vieweg Verlag, 2001, S. 427-463
[HK06]
Han, Jiawei / Kamber, Micheline: Data Mining - Concepts and Techniques, Elsevier, 2006,
pp. 67-70 (Korrelationsanalyse zwischen zwei Attributen),
pp. 86-97 (Erzeugung von Konzept-Hierarchien),
pp. 285-289 (Klassifikation und Vorhersagen),
pp. 360-366 (Qualitätsmessung von Klassifikationen),
pp. 600-607 (Spatial Data Mining)
[Hum04] Humer, Markus: Kombiniertes Data Mining - Klassifikation unter Verwendung von
durch Clustering gewonnenen Hilfsinformationen, Diplomarbeit, Johannes-KeplerUniversität Linz, 2004
[Kuo04]
Kuonen, Diego: A statistical perspective of data mining, CRM Zine (Vol. 48), 2004
[LSW97] Lent, Brian / Swami, Arun N. / Widom, Jennifer: Clustering Association Rules, 13. ICDE
1997, pp. 220-231, 1997
[LY00]
Lai, Hsiangchu / Yang, Tzyy-Ching: A Group-based Inference Approach to Customized Marketing on the Web - Integrating Clustering and Association Rules Techniques,
Proceedings of the 33rd Hawaii International Conference on System Sciences, 2000
[SC03]
Shekhar, Shashi / Chawla, Sanjay: Spatial Databases - A Tour, Pearson Education, 2003,
pp. 182-222 (Spatial Data Mining)
[Spe07]
Spehling, Markus: Analyse und Erweiterung von Methoden des Data Mining in räumlichen Datenbanken, Masterarbeit, Leibniz Universität Hannover, 2007
[Ste07]
Steland, Ansgar: Basiswissen Statistik - Kompaktkurs für Anwender aus Wirtschaft, Informatik und Technik, Springer, 2007
113
Literaturverzeichnis
[Stö04]
Stöttinger, Klaus: Kombiniertes Data Mining - Effiziente Generierung von Hilfsinformationen während des Clustering, Diplomarbeit, Johannes-Kepler-Universität Linz, 2004
[Weka07a] Weka Documentation, http://weka.sourceforge.net/wekadoc/index.php
[Weka07b] Weka API, http://weka.sourceforge.net/doc/
[WF05]
Witten, Ian H. / Frank, Eibe: Data Mining - Practical machine learning tools and techniques (2. Auflage), Morgan Kaufmann, 2005
[Wiki07]
Wikipedia - Die freie Enzyklopädie, http://de.wikipedia.org,
Chi-Quadrat-Test
Knowledge Discovery in Databases
Kontingenztafel
Ockhams Rasiermesser
Statistische Signifikanz
114
Herunterladen