Real-time Data Mining

Werbung
Florian Stompe
Real-time Data Mining
Datenmodellierung und
Mustererkennung in Echtzeit
Diplomica Verlag
Florian Stompe
Real-time Data Mining: Datenmodellierung und Mustererkennung in Echtzeit
ISBN: 978-3-8366-2879-2
Herstellung: Diplomica® Verlag GmbH, Hamburg, 2009
Dieses Werk ist urheberrechtlich geschützt. Die dadurch begründeten Rechte,
insbesondere die der Übersetzung, des Nachdrucks, des Vortrags, der Entnahme von
Abbildungen und Tabellen, der Funksendung, der Mikroverfilmung oder der
Vervielfältigung auf anderen Wegen und der Speicherung in Datenverarbeitungsanlagen,
bleiben, auch bei nur auszugsweiser Verwertung, vorbehalten. Eine Vervielfältigung
dieses Werkes oder von Teilen dieses Werkes ist auch im Einzelfall nur in den Grenzen
der gesetzlichen Bestimmungen des Urheberrechtsgesetzes der Bundesrepublik
Deutschland in der jeweils geltenden Fassung zulässig. Sie ist grundsätzlich
vergütungspflichtig. Zuwiderhandlungen unterliegen den Strafbestimmungen des
Urheberrechtes.
Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in
diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme,
dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei
zu betrachten wären und daher von jedermann benutzt werden dürften.
Die Informationen in diesem Werk wurden mit Sorgfalt erarbeitet. Dennoch können
Fehler nicht vollständig ausgeschlossen werden und der Verlag, die Autoren oder
Übersetzer übernehmen keine juristische Verantwortung oder irgendeine Haftung für evtl.
verbliebene fehlerhafte Angaben und deren Folgen.
© Diplomica Verlag GmbH
http://www.diplomica-verlag.de, Hamburg 2009
INHALT
ABBILDUNGEN .......................................................................................................................I
BEISPIELE .............................................................................................................................. II
LISTINGS ................................................................................................................................ II
TABELLEN ............................................................................................................................. II
ABKÜRZUNGEN ................................................................................................................. III
1.
Einleitung .......................................................................................................................... 1
2.
Die Evolution des Data Mining ....................................................................................... 3
3.
2.1.
Grundlagen des klassischen Data Mining .................................................................. 3
2.2.
Dynamik im Umfeld der Business Intelligence ......................................................... 6
Data Mining für große, stark dynamische Datenbanken ........................................... 11
3.1.
4.
Inkrementelle Update-Algorithmen zur Assoziationsanalyse .................................. 13
3.1.1.
Grundlagen der Assoziationsanalyse ............................................................... 15
3.1.2.
Der Fast Update Algorithmus (FUP) ............................................................... 20
3.1.3.
Erweiterung des Fast Update Algorithmus (FUP2) ......................................... 26
3.1.4.
Der Updatae Large Itemset Algorithmus (ULI) ............................................... 29
3.1.5.
Weitere Algorithmen zur inkrementellen Assoziationsanalyse ....................... 32
3.2.
Inkrementelles Mining zur Entdeckung von Sequenzmustern ................................. 33
3.3.
Inkrementelles Clustering ........................................................................................ 38
3.3.1.
Grundlagen des Clustering ............................................................................... 39
3.3.2.
Das IncrementalDBSCAN Verfahren .............................................................. 40
3.3.3.
Das IncOPTICS Verfahren............................................................................... 47
3.3.4.
Weitere inkrementelle Clustering-Verfahren ................................................... 52
Mining von kontinuierlichen Datenflüssen (Data Streams) ....................................... 53
4.1.
Anfragen an Data Streams........................................................................................ 55
4.2.
Ansätze und Verfahren zur Analyse von Data Streams ........................................... 56
4.2.1.
Klassifizierung stationärer Daten in Streams ................................................... 56
4.2.2.
Klassifizierung nicht-stationärer Daten in Streams .......................................... 60
5.
6.
4.2.3.
Clustern von Daten in Streams ......................................................................... 65
4.2.4.
Muster- und Regelerkennung in Streams ......................................................... 71
Ein Realtime Data Mining Framework ........................................................................ 76
5.1.
Definition und Konzept ............................................................................................ 76
5.2.
Exemplarischer Einsatz im Verkehr ......................................................................... 82
Zusammenfassung und Ausblick .................................................................................. 85
LITERATUR .......................................................................................................................... 87
ABBILDUNGEN
Abbildung 1: Wissensgenerierung und –nutzung mit Hilfe von Data Mining .......................... 7
Abbildung 2: Transaktionssysteme mit integriertem Data Mining .......................................... 10
Abbildung 3: Vergleich der Datenbankgrößen 2003/2005 [ADW05] ..................................... 11
Abbildung 4: Mining dynamischer Datenbanken .................................................................... 12
Abbildung 5: Inkrementelle Algorithmen zur Assoziationsanalyse ........................................ 14
Abbildung 6: Ablauf des ersten Iterationsschrittes beim FUP [CHV+96] .............................. 21
Abbildung 7: Inkrementelle Algorithmen zur Entdeckung von Sequenzmustern (a) .............. 34
Abbildung 8: Inkrementelle Algorithmen zur Entdeckung von Sequenzmustern (b) .............. 35
Abbildung 9: Inkrementelle Algorithmen zum Clustering ...................................................... 38
Abbildung 10: Dichte-verbundene Punktmenge beim DBSCAN-Algorithmus ....................... 41
Abbildung 11: Vom Update betroffene Cluster beim IncrementalDBSCAN ........................... 43
Abbildung 12: Leistungsvorteil des IncrementalDBSCAN bei einer geographischen
Datenbank [EKS+98] ............................................................................................................... 47
Abbildung 13: Kerndistanz und Erreichbarkeitsdistanz beim OPTICS ................................... 48
Abbildung 14: Erreichbarkeitsdiagramm beim OPTICS ......................................................... 49
Abbildung 15: Reorganisation der Clusterordnung beim IncOPTICS [KKG03] .................... 51
Abbildung 16: Info-Fuzzy Netzwerk mit zwei Eingabeattributen ........................................... 61
Abbildung 17: Architektur des OLIN-Systems [Las02] .......................................................... 62
Abbildung 18: Anpassung der Fenstergröße an die Drift-Rate beim OLIN [Las02] ............... 63
Abbildung 19: Architektur des CluStream-Frameworks ......................................................... 66
Abbildung 20: CluStream Snapshots ....................................................................................... 69
Abbildung 21: CluStream Cluster-Bewegungen [Sat06] ......................................................... 70
Abbildung 22: Signatur des Telefonanschlusses eines Unternehmens [CoP01]...................... 74
Abbildung 23: Komponentenmodell von Realtime Data Mining Algorithmen ....................... 80
I
BEISPIELE
Beispiel 1: Arbeitsweise des Apriori-Algorithmus .................................................................. 18
Beispiel 2: Negative border ...................................................................................................... 30
Beispiel 3: Sequentielle Transaktionsdatenbank und entdeckte Sequenzmuster [AgR95] ...... 34
Beispiel 4: CluStream Snapshots ............................................................................................. 68
LISTINGS
Listing 1: Join-Schritt des Apriori-Algorithmus ...................................................................... 17
Listing 2: DBSCAN-Algorithmus [EKS+98] .......................................................................... 41
Listing 3: SQL-Anfrage auf einem Data Stream [LTW+05] ................................................... 55
Listing 4: Hoeffding Baum-Algorithmus [DoH00] ................................................................. 59
TABELLEN
Tabelle 1: Parameter zur Daten-Beschreibung......................................................................... 24
Tabelle 2: FUP2 Notationen [CLK97] ..................................................................................... 26
Tabelle 3: ULI Notationen ....................................................................................................... 30
Tabelle 4: Laufzeitverbesserung des IncOPTICS ggü. dem OPTICS [KKG03]...................... 52
Tabelle 5: Leistungsvergleich OLIN/ IncrementalOLIN [CAL04] ......................................... 64
Tabelle 6: Ziele des Realtime Data Mining ............................................................................. 77
Tabelle 7: Komponenten dreier Realtime Data Mining Algorithmen ...................................... 81
Tabelle 8: Datensätze MRT-Auslastung .................................................................................. 82
II
ABKÜRZUNGEN
BI
Business Intelligence
BIRCH
Balanced Iterative Reducing and Clustering using Hierarchies
CDR
Call Detail Record
COI
Community of Interest
CPU
Central Processing Unit
DBMS
Datenbank-Management-System
DBSCAN
Density-Based Spatial Clustering of Applications with Noise
DHP
Direct Hash Pruning
DM
Data Mining
DSM-FI
Data Stream Mining for Frequent Itemsets
DUCstream
Dense Units Clustering for data stream
DUS
Decreasingly Updating Sequences
DWH
Data Warehouse
EDA
Explorative Datenanalyse
ERP
Enterprise Resource Planning
ETL
Extract, Transform and Load
FASTUP
Fast Sequential Pattern Update Algorithm
FHC
Fuzzy Hierarchical Clustering
FUP
Fast Update Algorithmus
ID
Identification Number
IFHC
Incremental Fuzzy Hierarchical Clustering
IFN
Info-Fuzzy-Netzwerk
ISE
Incremental Sequence Extraction
ISM
Incremental Sequence Mining
IUS
Incrementally Updating Sequences
KDD
Knowledge Discovery in Databases
MRT
Mass Rapid Transit
OLAP
Online Analytical Processing
OLE DB
Object Linking and Embedding Database
OLIN
On-Line Information Network
OLTP
Online Transaction Processing
III
OPTICS
Ordering Points To Identify the Clustering Structure
SWF
Sliding-Window Filtering
SQL
Structured Query Language
TA
Transaktion(en)
TID
Transaction Identification Number
ULI
Updatae Large Itemset-Algorithmus
VFDT
Very Fast Decision Tree
VLDB
Very Large Database
XML
Extensible Markup Language
IV
1.
Einleitung
Organisationen generieren heute Daten für nahezu jede Transaktion an der sie beteiligt sind.
Dabei können, je nach Größe der Organisation, täglich bis zu mehrere Millionen Datensätze
anfallen. In wissenschaftlich-technischen Bereichen, wie z.B. der Satellitenaufklärung, werden oft mehrere Gigabytes an Daten pro Tag produziert. Diese enorme Datenmenge hat auch
Einfluss auf die Analyse der Daten mittels Data Mining.
Daten entstehen häufig schneller als sie analysiert werden können. Ein Grund hierfür ist u.a.
das One-Shot Paradigma des klassischen Data Mining [DoH01]. Danach wird Data Mining
als Analyseprozess eines kompletten Datenbestandes zu einem diskreten Zeitpunkt verstanden. Diese Sichtweise ist einer exponentiell wachsenden Datenmenge auf Dauer nicht gewachsen. Darüber hinaus werden in vielen Anwendungsbereichen die Ergebnisse des Data
Mining zeitnah mit der Entstehung der Daten benötigt. Dies ist beispielsweise in der Betrugserkennung bei Kreditkartentransaktionen der Fall. Das Verhalten der Nutzer von Kreditkarten
kann sich durch Ereignisse wie Urlaub, Geschäftsreisen usw. zeitweise ändern. Dennoch muss
eine schnelle, treffsichere Entscheidung darüber getroffen werden können, ob es sich bei einer
Kreditkarten-Transaktion um einen möglichen Betrug handelt. Zunehmend werden deshalb
Ansätze verfolgt, die Data Mining als einen kontinuierlichen Prozess betrachten.
Gegenstand dieses Buches ist die Untersuchung verschiedener Ansätze, Methoden und Algorithmen, mit denen sich neu entstehende Daten zeitnah analysieren und die Ergebnisse in ein
bereits existierendes Mining-Modell einarbeiten lassen. Im Kapitel 2 werden nach einer kurzen Einführung in das klassische Data Mining mögliche Echtzeit-Anforderungen im Business
Intelligence Umfeld identifiziert. Dabei werden die Aspekte der Erstellung (Modelling) und
der Nutzung (Scoring) von Data Mining Modellen in Echtzeit voneinander abgegrenzt. Da
das Problem der zu verarbeitenden großen Datenmengen im Wesentlichen auf Seiten des Modelling und weniger auf Seiten des Scoring liegt, konzentriert sich Realtime Data Mining primär auf Lösungen zur Modellerstellung.
Zwei unterschiedliche Grundprinzipien zur kontinuierlichen Datenanalyse lassen sich danach
unterscheiden: Kapitel 3 beschäftigt sich mit dem Mining von großen, dynamischen Datenbanken und verbindet die klassische Sichtweise statisch gespeicherter Daten mit der Idee eines kontinuierlichen Mining-Prozesses. Im Kapitel 4 wird auf eine spezielle Entwicklung des
1
Data Mining, das Stream Mining eingegangen. Hier werden Daten nicht aus Datenbanken
heraus analysiert, sondern unmittelbar nach deren Entstehung aus einem Data Stream.
Bei der Betrachtung von Algorithmen im Rahmen dieser beiden Grundprinzipien werden gemeinsame Merkmale identifiziert, die es erlauben, diese Algorithmen in einen Ordnungsrahmen einzubetten und voneinander zu unterscheiden. Dazu gehört beispielsweise die Fähigkeit
eines Algorithmus, grundlegende Änderungen im Datenentstehungsprozess, sog. Concept
Drifts, zu erkennen. Es gibt kaum Real-World Prozesse, die solchen plötzlichen oder allmählichen Veränderungen nicht unterworfen sind. Das Kaufverhalten von Konsumenten lässt sich
ebenso dazu zählen wie das Wetter.
Data Mining, das anfangs nur eine lose Ansammlung unterschiedlichster Verfahren zur Datenanalyse war, kann inzwischen als integrierter Prozess mit systematisch geordneten Methoden bzw. Algorithmen betrachtet werden. Dazu trägt u.a. ein in [Han01] vorgestelltes Framework bei, das klare Aufgaben innerhalb des Data Mining definiert. Darüber hinaus werden
Algorithmen zur Lösung dieser Aufgaben in einzelne Komponenten aufgeteilt. Dies erleichtert, durch die erhöhte Transparenz und bessere Vergleichbarkeit, die Auswahl eines geeigneten Algorithmus für ein spezifisches Data Mining Problem. Für die Herausforderungen der
Datenanalyse unter Echtzeitanforderungen ist dieses Framework jedoch unzureichend.
Im Kapitel 5 soll nach einer Definition des Begriffs „Realtime Data Mining“ ein Framework
vorgestellt werden, welches als Ordnungsschema für die speziellen Eigenschaften von
Realtime Mining-Algorithmen dienen kann. Dies ermöglicht es, ein spezifisches Data Mining
Problem systematisch zu analysieren und in seine Bestandteile zu zerlegen. Mit Hilfe des vorgestellten Komponentenmodells kann dann ein geeigneter Realtime Mining-Algorithmus gefunden werden. Zum Abschluss des Kapitels wird ein Anwendungsbeispiel konstruiert, an
dem die Möglichkeiten des Realtime Data Mining skizziert werden.
2
2.
Die Evolution des Data Mining
Data Mining, im englischen Sprachraum auch oft als Knowledge Discovery in Databases
(KDD) bezeichnet, ist eine relativ junge Disziplin, die auf Methoden der Statistik, des maschinellen Lernens bzw. der künstlichen Intelligenz, der Datenbanktechnologie und verwandter Wissenschaften zurückgreift [Han01]. Seit der Begriff in den frühen neunziger Jahren
etabliert wurde, hat sich diese Disziplin rasant entwickelt. Die Anforderungen an das Data
Mining nehmen stetig zu, denn aus immer mehr und immer komplexeren Daten muss in immer kürzerer Zeit relevantes Wissen extrahiert werden. Im Abschnitt 2.1 dieses Kapitels sollen zunächst die Grundlagen des Data Mining dargestellt werden. Abschnitt 2.2 erläutert im
Anschluss die steigenden Anforderungen unter dem besonderen Aspekt dynamischer Daten.
2.1.
Grundlagen des klassischen Data Mining
Data Mining ist die Wissenschaft von der Extrahierung nützlicher Informationen aus großen
Datenmengen [Han01]. Es umfasst Verfahren, mit denen Daten systematisch analysiert werden können, um unerwartete Beziehungen zu finden oder die Daten zu kompakten Modellen
zu verdichten. Dabei spricht man auch von lokalen Mustern (local patterns) und globalen Modellen (global models). Ein Muster trifft Aussagen über einen abgegrenzten Bereich des Datenraums. Eine Wahrscheinlichkeitsaussage der Form p(Y
Wahrscheinlichkeit p1 für das Auftreten von Y
von X
y1 | X
x1 )
p1 bezieht z.B. die
y1 nur auf einen eingeschränkten Bereich
x1 . Mit Mustern lassen sich beispielsweise Ausreißer in Populationen darstellen, wie
sie bei Anomalien, wie z.B. Betrugsfällen, vorkommen.
Dagegen beschreiben Aussagen in einem Data Mining Modell den gesamten Datenraum. Ein
einfaches Model der Form Y
aX b mit den Parametern a und b ergibt z.B. eine Regres-
sionsgerade, mit deren Hilfe sich neue Punkte im Datenraum prognostizieren lassen. Um ein
vollständiges Bild über einen Datenbestand zu erhalten, ist es häufig sinnvoll, sowohl Modelle als auch Muster für die Datenanalyse heranzuziehen. So benötigt man zur Entdeckung von
außergewöhnlichem Verhalten über Muster zunächst eine Beschreibung des gewöhnlichen
Verhaltens mit Hilfe von Modellen.
3
Herunterladen