Bachelor

Werbung
Hochschule für Technik und Wirtschaft Berlin
Freie wissenschaftliche Arbeit zur Erlangung des akademischen Grades
Bachelor of Science in Wirtschaftsinformatik
Untersuchung und Vergleich ausgewählter
Open-Source Data Mining-Tools
Bachelorthesis
im Fachbereich Wirtschaftswissenschaften II
im Studiengang Wirtschaftsinformatik
der Hochschule für Technik und Wirtschaft Berlin
vorgelegt von: Joschka Jericke
Storkower Straße 217
10367 Berlin
Matrikel-Nr: s0528614
Erstbetreuer: Prof. Dr. Ingo Claßen
Zweitbetreuer: Prof. Dr. Martin Kempa
Abgabetermin: 09.10.2013
Inhaltsverzeichnis
Inhaltsverzeichnis
Inhaltsverzeichnis ............................................................................................... II
Abbildungsverzeichnis ....................................................................................... III
Einleitung............................................................................................................ 1
CRISP-DM.......................................................................................................... 2
Phase 1 Business Understanding .................................................................. 2
Phase 2 Data Understanding ......................................................................... 2
Phase 3 Data Preparation .............................................................................. 3
Phase 4 Data Modelling ................................................................................. 4
Phase 5 Evaluation ........................................................................................ 4
Phase 6 Deployment ...................................................................................... 5
Präsentation der zu vergleichenden Tools ......................................................... 6
Rattle-GUI ...................................................................................................... 6
Scikit-learn ..................................................................................................... 6
RapidMiner ..................................................................................................... 7
Orange ........................................................................................................... 8
Benutzeroberfläche und Funktionsweise ............................................................ 9
Rattle-GUI ...................................................................................................... 9
Scikit-learn ................................................................................................... 10
RapidMiner ................................................................................................... 13
Orange ......................................................................................................... 17
Evaluation......................................................................................................... 19
Datenschnittstellen ....................................................................................... 19
Datenexploration und Visualisierung ............................................................ 27
Data Mining Methoden ................................................................................. 41
Abschließendes Fazit ................................................................................... 44
Literaturverzeichnis ........................................................................................... VI
Weblinks ........................................................................................................... VII
Verwendeter Datensatz ................................................................................... VIII
II
Abbildungsverzeichnis
Abbildungsverzeichnis
Abbildung 1 Rattle - Benutzeroberfläche ............................................................ 9
Abbildung 2 RapidMiner Startansicht .............................................................. 13
Abbildung 3 RapidMiner Prozessansicht ......................................................... 14
Abbildung 4 RapidMiner Result Perspektive .................................................... 16
Abbildung 5 Orange Workflow .......................................................................... 18
Abbildung 6 Rattle Daten-Tab .......................................................................... 20
Abbildung 7 RapidMiner Repository………………………………………………..23
Abbildung 8 RapidMiner Operatoren ................................................................ 23
Abbildung 9 RapidMiner Model Import/Export .................................................. 25
Abbildung 10 RapidMiner Meta Data View ...................................................... 28
Abbildung 11 Rattle Datensatz ......................................................................... 29
Abbildung 12 Orange Data Table ..................................................................... 31
Abbildung 13 Rattle Explorer ............................................................................ 32
Abbildung 14 Rattle Beschreiben ..................................................................... 33
Abbildung 15 Rattle Fehlende anzeigen ........................................................... 34
Abbildung 16 Rattle Verteilungen ..................................................................... 35
Abbildung 17 Rattle Grafiken............................................................................ 36
Abbildung 18 RapidMiner - Iris ......................................................................... 37
Abbildung 19 RapidMiner SOM ........................................................................ 38
Abbildung 20 Orange Distributions .................................................................. 39
Abbildung 21 Klassifizierung Data Mining Methoden ....................................... 41
III
Abbildungsverzeichnis
Tabellenverzeichnis
Tabelle 1 Rattle GUI ........................................................................................... 6
Tabelle 2 scikit-learn .......................................................................................... 6
Tabelle 3 RapidMiner ......................................................................................... 7
Tabelle 4 Orange................................................................................................ 8
IV
Einleitung
Einleitung
Die Vorliegende Arbeit befasst sich mit einer Untersuchung von Open-Source Data Mining Tools anhand definierter Kriterien. Eine allgemein anerkannte Definition
des Data Mining gibt es zurzeit noch nicht. Jedoch beschreibt eine sehr populäre
Definition das Data Mining als einen Prozess zum Auffinden von gültigen, interpretierbaren Mustern in Datenbeständen, welche durch spezielle Analysemethoden
gefunden werden.1 Die neu gewonnen Informationen bzw. Zusammenhänge aus
den Unternehmensdatenbeständen können dann als eine Grundlage für strategische Entscheidungen herangezogen werden. Da das Einführen kommerzieller
Data Mining Software mit einem hohen Kostenaufwand verbunden ist, stellen entsprechende Tools aus dem Open-Source Bereich eine Alternative dar. Im Rahmen
der Arbeit werden die folgenden vier Open-Source Data Mining Tools fokussiert:

Rattle GUI

Scikit-learn

RapidMiner

Orange Canvas
In einem ersten Teil wird auf ein Vorgehensmodell eingegangen, welches dem
Prozess des Data Mining im Unternehmen einen gewissen Rahmen gibt und
Gleichzeitig als Fundament für die Vergleichskriterien dient. Anschließend erfolgt
eine Präsentation der Tools und nachfolgend die Evaluation.
1
Vgl.(Gabriel, Gluchowski, & Pastwa, 2009, S. 121, zitiert nach: Fayyad, U. M.; Piatetsky-Shapiro, G.;
Smyth, P.; 1996 S. 37-54)
1
CRISP-DM
CRISP-DM
Der Cross Industry Standard Process for Data Mining (CRISP-DM) ist ein aus
sechs Phasen bestehendes Vorgehensmodell, welches durch das CRSIP-DM
Konsortium geschaffen wurde, um das Durchführen von Data Mining Projekten im
Unternehmen zu unterstützen. Die sechs Phasen sehen dabei die Aufgaben des
Business Understanding, Data Understanding, Data Preparation, Data Modeling
und der Evaluation vor.2 Im Folgenden werden die einzelnen Phasen genauer beschrieben.
Phase 1 Business Understanding
Die erste Phase des CRSIP-DM-Modells beinhaltet zusammenfassend das Definieren der Projektziele, die Erstellung eines Projektplans und das Überprüfen bzw.
Sicherstellen, der für das Projekt erforderlichen Ressourcen. Die Definition der
Projektziele sollte, nach Empfehlung des CRSIP-DM-Konsortiums, in zwei Schritten erfolgen. Als erstes werden die Ziele aus einer betriebswirtschaftlichen Sicht
beschrieben. Von dieser betrieblichen Sicht ausgehend, können dann die entsprechenden analytischen Ziele für das Data-Mining abgeleitet und formuliert werden,
um so das Erreichen, der aus betrieblicher Sicht, festgelegten Ziele, zu unterstützen.
Phase 2 Data Understanding
Nachdem in der ersten Phase eine Zielsetzung für das Projekt geschaffen wurde,
folgt in der zweiten Phase das Sammeln, Beschreiben und Explorieren von allen
Daten, welche für das Projekt benötigt werden oder relevant sein könnten. Dabei
können die Daten je nach informationsbedarf aus den verschiedensten Quellen,
Unternehmensinternen sowie extern stammen. Als primäre, unternehmensinterne
Quelle wird üblicherweise ein Data-Warehouse herangezogen, da hier bereits ein
Großteil der unternehmensbezogenen Daten als historische Datensammlung vorliegt. Diese können dann bedarfsgerecht, über das Erstellen von Data-Marts, extrahiert werden und liegen in einer bereits aufbereiteten Form vor.3
Neben dem Sammeln der Daten, spielt in dieser Phase auch das Beschreiben
sowie Explorieren der Daten eine wichtige Rolle. Diese Aktivitäten sollten aus zwei
2
3
(IBM, 2010)
vgl (Grabiel, Gluchowski, & Pastwa, 2009)
2
CRISP-DM
Gründen durchgeführt werden. Zum einen, um ein besseres Verständnis für die
Daten zu erlangen und zum anderem, um die Qualität der Daten einzuschätzen.
Eine erste oberflächliche Beschreibung der Daten erfolgt dann in der Regel anhand der Metadaten. Durch diese können erste Informationen über die Struktur
der Daten, wie den Datenumfang, den eingesetzten Datentypen und den zulässigen Wertebereichen gewonnen werden. Über die Beschreibung durch Metadaten
ist es zudem möglich, erste Aussagen über die Qualität der Daten zu treffen, da
beispielsweise fehlende Werte (Missing Values) oder auch falsche Werte, welche
für den jeweiligen Datentyp nicht zulässig sind aufgedeckt werden.
Die Exploration der Daten beinhaltet hier das erste Anwenden von Methoden der
deskriptiven Statistik, durch welche erste, eventuell vorhandene Zusammenhänge
bzw. Muster in den Daten entdeckt werden können.4
Phase 3 Data Preparation
Die Data Preparation Phase umfasst sämtliche Aktivitäten, welche erforderlich
sind, um den Datenbestand für die nachfolgend einzusetzenden Analysemethoden
nutzbar zu machen. Dieser Schritt ist meist sehr ressourcenintensiv und kann bis
zu 80% der zeitlichen Ressourcen beanspruchen, insbesondere dann, wenn die
Daten aus verschiedenen Quellen stammen und so eine starke Heterogenität aufweisen.5
Die wesentlichen Aktivitäten dieser Phase sind hier aufgelistet:

Select Data: In diesem Schritt wird festgelegt, welche Attribute und Datensätze für die Analysen selektiert bzw. exkludiert werden.

Integrate Data: Beinhaltet das Anwenden von Methoden zur Kombination
bestimmter Datentabellen, über zum Beispiel Join-Statements, um eine Tabelle so um Informationen zu ergänzen, welche für die Analysen von Relevanz sein könnten.

Construct Data: Dieser Schritt bezieht sich auf das Konstruieren sogenannter abgeleiteter Attribute. Abgeleitete Attribute entstehen zum Beispiel aus
Rechenoperationen über bereits vorhandene Attribute und ergänzen so die
Datentabelle um ein neues Merkmal.
4
5
Vgl. (Grabiel, Gluchowski, & Pastwa, 2009)
Vgl. (Grabiel, Gluchowski, & Pastwa, 2009)
3
CRISP-DM

Clean Data: Durch diese Teilaktivität, soll eine möglichst hohe Qualität der
Daten sichergestellt werden. Hier steht beispielsweise die Behandlung von
fehlenden oder fehlerhaften Werten sowie das Auffinden und Eleminieren von
Redundanzen in den Daten im Vordergrund.

Format Data: Die Datenformatierung befasst sich mit der Frage nach den zu
verwendenden bzw. erforderlichen Skalenniveau und Datentypen. Je nachdem welche Data-Mining Methode bzw. Algorithmus zum Einsatz kommen
soll, müssen die Attribute in einem hierfür geeignetem Skalenniveau vorliegen
und gegeben falls in dieses Überführt werden.
Phase 4 Data Modelling
Nachdem in der vorangegangenen Phase eine umfangreiche Aufarbeitung der
relevanten Daten stattgefunden hat, folgt in dieser 4. Phase des Data Modelling
der Einsatz bestimmter Modellierungs- bzw. Analysemethoden. Je nachdem welche konkrete Data-Mining-Fragestellung für das Projekt gesetzt wurde, eignet sich
im Allgemeinen immer eine bestimmte Menge verschiedener Analysemethoden,
um entsprechende Ergebnisse zu produzieren. Innerhalb dieser Phase muss herausgefunden werden, welches Modell am besten geeignet ist. Aus diesem Grund
besteht hier eine starke Rückkopplung zur Data-Preparation Phase, da die Daten
für die Modelle entsprechend aufbereitet werden müssen. Für jedes erstellte Modell erfolgt dann jeweils eine Abschätzung der Modellqualität bzw. Genauigkeit,
über die Berechnung geeigneter Maßzahlen, wobei für das jeweilige Modell auch
entsprechende Methoden existieren, um die Qualität/Gültigkeit zu schätzen. Die
Gültigkeit legt nahe, mit welcher Wahrscheinlichkeit die Aussagen des Modells
gelten.
Phase 5 Evaluation
Die Phase der Evaluation sieht sowohl eine Bewertung der Data-Mining Ergebnisse als auch eine Bewertung des gesamten Projektverlaufs vor. In der vorherigen
Phase wurden die Modelle anhand ihrer Gültigkeit aus einer technischen Sicht der
Daten-Analyse miteinander verglichen und beurteilt, so dass hier eine Vorauswahl
getroffen wurde. Nun geht es darum die Modelle aus Sicht der Betriebswirtschaft
zu bewerten, um zu sehen welcher Nutzen sich aus den Ergebnissen ziehen lässt
4
CRISP-DM
und ob die anfangs definierten Ziele auf Grundlage der Analysen erreicht werden
können6.
Die rückblickende Bewertung des gesamten Projektverlaufs befasst sich im Wesentlichen mit aufgetretenen Problemen und damit einhergehend wie Data-Mining
Projekte zukünftig optimiert werden können. Nach dem Konsortium bestehen die
Projektergebnisse nicht nur aus den Analysergebnissen der Modelle an sich, sondern umfassen auch weitere Erkenntnisse, die während der Durchführung des
Data-Mining Projektes gemacht wurden. So kann es beispielsweise sein, dass
bestimmte Mängel in der Datenqualität zu Tage gebracht werden, welche nach
Möglichkeit optimiert werden sollten.
Phase 6 Deployment
Nachdem die Modelle umfassend aus technischer und betriebswirtschaftlicher
Sicht bewertet und im Idealfall für geeignet angesehen werden, geht es in dieser
letzten Phase darum, auf welche Art und Weise bzw. durch welche konkreten
Maßnahmen das neu gewonnene Wissen genutzt werden kann7.Zudem werden
die Projektergebnisse in einem finalen Report zur Verfügung gestellt.
6
7
Vgl. (Wirth & Hipp, 2013)
Vgl. (Grabiel, Gluchowski, & Pastwa, 2009)
5
Präsentation der zu vergleichenden Tools
Präsentation der zu vergleichenden Tools
Im folgendem werden die untersuchten Data-Mining Tools kurz mit ein paar ergänzenden Hintergrundinformationen vorgestellt.
Rattle-GUI
Offizielle Website/Herausgeber:
http://rattle.togaware.com/
Untersuchte Version:8
2.6.26
Unterstützte Betriebssysteme:
Ubuntu und Debian GNU/Linux,
MS-Windows, Mac-OS
Tabelle 1 Rattle-GUI
Rattle ist eine Erweiterung der Statistikprogrammiersprache bzw. Entwicklungsumgebung R und stellt dem Anwender eine grafische Benutzeroberfläche zur Verfügung. Entwickelt wurde Rattle vor dem Hintergrund, um für den Anwender bestimmte Funktionalitäten von R auch ohne nähere Kenntnis der R-Syntax zugänglich zu machen. Die dem Rattle-GUI zugrunde liegende Entwicklungsumgebung R
wurde in C geschrieben und gilt als eines der mächtigsten Statistik bzw. DataMining-Werkzeuge9. Eine Installation von R muss als Voraussetzung auf dem System vorhanden sein. Das Rattle-GUI-Package wird dann über eine einfache RSyntax innerhalb der R-Entwicklungsumgebung mit allen erforderlichen Libraries
heruntergeladen. Das Starten von Rattle erfolgt dann ebenfalls über einen einfachen R-Befehl.
Scikit-learn
Offizielle Website/Herausgeber:
http://scikit-learn.org/
Untersuchte Version:10
0.14
Unterstützte Betriebssysteme:
Ubuntu ,Debian GNU/Linux,
MS-Windows, Mac-OS
Tabelle 2 scikit-learn
8
stand 29.07.2013
(Graham, 2011)
10
Stand 29.07.2013
9
6
Präsentation der zu vergleichenden Tools
Scikit-learn ist eine Library für die Programmiersprache Python, welche eine Menge von Machine-Learning bzw. Data-Mining Funktionalitäten implementiert. Das
Projekt zur Entwicklung von Scikit-learn wurde 2007 gestartet. Einen ersten offiziellen Release gab es im Februar 2010. 11
RapidMiner
Offizielle Website/Herausgeber:
http://rapid-i.com/
Untersuchte Version:12
5.3.013
Unterstützte Betriebssysteme:
Ubuntu ,Debian GNU/Linux,
MS-Windows, Mac-OS
Tabelle 3 RapidMiner
Entwickelt sowie offiziell zur Verfügung gestellt wird der RapidMiner durch das
Unternehmen Rapid-I, welches sich auf Softwarelösungen und Dienstleistungen
im Bereich Data-Mining spezialisiert hat. Die ursprüngliche Entwicklung des RapidMiner begann 2001 an der Universität Dortmund. Später gründeten die Entwickler das Unternehmen Rapid-I, welches sich mit der Weiterentwicklung sowie
Wartung des Rapidminer befasst.13
Neben der als Community-Edition erhältlichen Open-Source Variante, steht der
RapidMiner auch als Lizenzpflichtige Enterprise-, Big-Data- sowie OEM-Edition
zur Verfügung, welche sich im Wesentlichen hinsichtlich der Skalierbarkeit und im
Support, seitens Rapid-I unterscheiden.14Neben Data-Mining stellt der RapidMiner
auch ETL Funktionalitäten zur Verfügung.
Der RapidMiner wurde in Java geschrieben und erfordert eine installierte JavaLaufzeitumgebung.
11
Vgl. (scikit-learn.org)
Stand 29.07.2013
13
Vgl (Mierswa)
14
Vgl http://rapid-i.com/content/view/181/190/lang,de/
12
7
Präsentation der zu vergleichenden Tools
Orange
Offizielle Website/Herausgeber:
http://orange.biolab.si/
Untersuchte Version:15
2.7
Unterstützte Betriebssysteme:
Ubuntu ,Debian GNU/Linux,
MS-Windows, Mac-OS
Tabelle 4 Orange
Die Data Mining Software Orange basiert auf Python und wurde an der “Faculty of
Computer and Information Science“ der Universität Ljubljana Slovenia entwickelt.
Orange wird über eine grafische Benutzeroberfläche bedient.
15
Stand 29.07.2013
8
Benutzeroberfläche und Funktionsweise
Benutzeroberfläche und Funktionsweise
Nachdem die einzelnen Data-Mining Tools im vorangegangenen Kapitel kurz vorgestellt wurden, soll innerhalb dieses Kapitels ein erster Eindruck von den Tools
vermittelt sowie deren Funktionsweise verdeutlicht werden, welche sich zuweilen
grundlegend voneinander unterscheiden. Die Tools werden hierbei jeweils einzeln
vorgestellt.
Rattle-GUI
Abbildung 1 Rattle - Benutzeroberfläche
Nach dem Starten von Rattle öffnet sich dem Anwender die in Abbildung 1 dargestellte Benutzeroberfläche. Im oberen Teil des Fensters befindet sich hier die sogenannte Toolbar mit den grundlegenden Funktionen zum Erstellen, Öffnen und
Speichern von R- bzw. Rattle-Projekten sowie dem generieren von Reports oder
dem Erzeugen von speziellen Datenexporten.
Die Kernfunktionen zum Vorbereiten und Durchführen von Data-Mining-Aufgaben
in Rattle sind dann nach Kategorien zusammengefasst über die einzelnen Tabs zu
9
Benutzeroberfläche und Funktionsweise
erreichen, welche unter der Toolbar angeordnet sind. Die Kategorisierung sowie
Reihenfolge der hier angeordneten Tabs ist dabei so ausgelegt, dass der Anwender im groben von links nach rechts durch die Tabs navigiert. Innerhalb eines
Tabs werden dann die entsprechenden Konfigurationen vorgenommen, welche
nach jeder Änderung über den in der Toolbar befindlichen „Ausführen“ - Button,
bestätigt werden müssen.
Der untere Bereich der Benutzeroberfläche liefert eine entsprechende Ausgabe
der Ergebnisse, welche über das jeweilige Tabs generiert wurden. Das Ausgabefeld liefert hier nur Ergebnisse in Textform.
Zu erwähnen ist, dass Rattle lediglich eine Teilmenge der Gesamtfunktionalitäten
von R verfügbar ist. Da Rattle über einen R Befehl gestartet wird, läuft die R Entwicklungsumgebung stets parallel zu Rattle. In Rattle generierte grafische Darstellungen, werden in der R Umgebung ausgegeben
Scikit-learn
Im Kontrast zu den anderen, im Rahmen dieser Arbeit untersuchten Data-Mining
Tools, gibt es in Scikit-learn kein grafisches Userinterface, sodass das DataMining Aufgaben hier direkt über die Programmierung in Python durchgeführt werden. Für die verschiedenen Data-Mining Modelle bzw. Algorithmen implementiert
die Scikit-learn Library eine Vielzahl von Klassen, welche wiederum in Packages
bzw. Modulen organisiert sind. Je nachdem welches Data-Mining Modell zum Einsatz kommen soll, wird ein sogenanntes Estimator-Objekt der entsprechenden
Klasse instanziiert.
Als Datengrundlage arbeiten bzw. erwarten Estimator-Objekte 2-dimensionale
NumPy-Arrays, welche besonders für die Bearbeitung von umfangreichen, numerischen Daten geeignet sind. Implementiert werden diese durch ein spezielles
NumPy Erweiterungs-Modul, welches als Voraussetzung für die Verwendung von
Scikit-learn vorhanden sein muss. NumPy-Arrays beinhalten die Daten dann in
einer (n_samples, n_features) Form, wobei über den Parameter n_samples die
Anzahl der Zeilen und über n_features die Anzahl der Attribute bzw. Spalten repräsentiert wird16. Ein Datensatz „x“, bei dem eine Zielvariable durch eine Regressionen oder Klassifikationen geschätzt werden soll, enthält die folgenden zwei Attribute: „x.data“ sowie „x.target“. Das „.target“ Attribut beinhaltet die Zielvariablen
bzw. das label, welches Vorhergesagt werden soll, während das „.data“ Attribut
16
Vgl. (astroml)
10
Benutzeroberfläche und Funktionsweise
die Input-Datensätze enthält. Beide Attribute basieren auf NumPy-Arrays.
Damit Estimator-Objekte mit den Daten arbeiten können, implementieren diese
standardisierten Methoden, wobei hier eine Spezifikation zwischen Supervisedund Unsupervised Estimator-Objekten vorgenommen wird. Eine standardisierte
Methode, welche durch alle Estimator-Objekte gegeben ist, ist die „model.fit()“ Methode. Als Parameter werden hier entsprechend die „.data“ bzw. „.target“ Attribute
zum Lernen der Modelle übergeben. Bei supervised Lernalgorithmen beide Attribute, in der Form „model.fit(X, y)“ und bei Unsupervised lediglich das .data Attribut, in der Form „model.fit(X)“.
Eine ausschließlich von supervised Estimator-Objekten implementierte Methode
ist die „model.predict()“ Methode .Diese wird angewandt nachdem das Model gelernt wurde und erwartet als Übergabeparameter ein neuen Arraydatensatz, um
für diesen, auf Grundlage des gelernten Modells, das entsprechende label vorherzusagen.
Zur Veranschaulichung der Vorgehensweise wird hier ein Beispiel geliefert, welches in Anlehnung an ein scikit-learn Tutorial entstanden ist17. Als Datengrundlage
kommt hierfür der Iris-Datensatz zum Einsatz.
From sklearn.dataset import load_iris
Iris = load_iris()
X, y = iris.data, iris.target
from sklearn.svm import LinearSVC
clf = LinearSVC()
clf = clf.fit(X, y)
X_new = [ [ 5.0, 3.6, 1.3, 0.25] ]
clf.predict (X_new)
array([0], dtype=int32)
list(iris.target_names)
['setosa', 'versicolor', 'virginica']
17
Vgl. ( http://www.astroml.org/sklearn_tutorial/general_concepts.html#supervised-learning-unsupervisedlearning-and-scikit-learn-syntax)
11
Benutzeroberfläche und Funktionsweise
Als erstes erfolgt hier ein Import des Iris Beispieldatensatzes aus dem
sklearn.datasets Modul. Über eine Hilfsmethode wird der Variablen „Iris“ der importierte Beispieldatensatz als NumPy-Array übergeben. Da der Iris-Datensatz ein
typisches Beispiel zur Klassifizierung darstellt, verfügt dieser über ein .data sowie
.target -Array. Im Beispiel wird der Variablen „y“ über „iris.target“ das label-array
zugewiesen. Die Variable „X“ erhält über das „iris.data“ Attribut die InputDatensätze. Als Modell soll ein Support Vector Machine Algorithmus (SVC) zum
Einsatz kommen. Das sklearn.svm package enthält für diesen verschiedene Implementierungen. Importiert wird in diesem Fall die Klasse für einen linearenSVC,
welcher anschließend anhand der Variablen „clf“ als Estimator-Objekt instanziiert
wird. Wie bereits erwähnt, verfügen sämtliche Estimator-objekte über eine .fit Methode, über welche dem Lernalgorithmus das NumPy Datenarray übergeben wird.
Im Beispiel erhält das Estimator-Objekt die Inputdaten „X“ und die Zielvariable „y“
als Übergabeparameter. Nachdem das Modell gelernt wurde, wird ein neuer Array-Datensatz „X_new“ erstellt und dem gelernten Modell zur Klassifizierung, über
die „clf.predict“ Methode übergeben. Die Ausgabe liefert dann den Index-Wert des
vorhergesagten labels, In diesem Fall 0. Über die „iris.traget_names“ Methode,
kann das Array mit den Klassennamen ausgegeben, sodass für den Datensatz
„x_new“ das label „setosa“ geschätzt wurde.
12
Benutzeroberfläche und Funktionsweise
RapidMiner
Abbildung 2 RapidMiner - Startansicht
Die Benutzeroberfläche des RapidMiner fällt relativ umfangreicher aus und setzt
sich in der Standardausführung aus drei verschiedenen, sogenannten Perspektiven zusammen. Das Durchführen von Data-Mining Aktivitäten sowie weitere damit
verbundenen Aufgaben, werden im RapidMiner über das Modellieren von Prozessen umgesetzt.
Abbildung 2 zeigt die Start-Perspektive des RapidMiner. In dieser ersten Ansicht
befinden sich nun zunächst grundlegende Funktionen, zum Anlegen neuer DataMining-Prozesse sowie dem Öffnen der zuletzt bearbeiteten Prozesse. Des Weiteren besteht die Möglichkeit zum Zugriff auf ein Online-Tutorial und dem Öffnen
vordefinierter Musterprozess, sogenannten Templates.
13
Benutzeroberfläche und Funktionsweise
Abbildung 3 RapidMiner - Prozessansicht
Um die bereits erwähnte Prozessmodellierung vorzunehmen, stellt der RapidMiner
dem Anwender, die in Abbildung 3 gezeigte, sogenannte Design-Perspektive zur
Verfügung, welche in der Standardkonfiguration aus wiederum sechs verschiedenen Teilbereichen besteht und im folgendem kurz näher beschrieben werden.
Im Bereich oben links findet der Anwender die Operatoren, welche nach Kategorien sortiert in einer hierarchischen Ordnerstruktur abgelegt sind. Diese werden
zur Modellierung des Prozess per Drag and Drop in den mittleren Bereich, der sogenannten Process-View, gezogen und über einen Datenstrom miteinander verbunden. Jeder Operator erfüllt dabei eine bestimmte Aufgabe, wie das Einlesen
von Daten, das Transformieren bestimmter Attributen in eine anderes Skalenbzw. Datenformat oder das Anwenden eines Data Mining Algorithmus. Abbildung
3 zeigt einen bereits fertig modellierten Prozess, welcher in Anlehnung an ein RapidMiner Tutorial entstanden ist18.
18
Vgl. (North, 2012)
14
Benutzeroberfläche und Funktionsweise
Im unteren, linken Bereich befindet sich dann das RapidMiner-Repository, also ein
Verzeichnis, zur strukturierten Organisation importierter Daten, angelegter Datenbankverbindungen, erstellten Prozessen und anderen Datenobjekten, wie gespeicherten Ergebnissen oder auch Reports.
Der Teilbereich direkt unter der Process-View macht den Anwender während der
Prozessmodellierung auf eventuell vorhandene Probleme im Prozess aufmerksam
und liefert gegebenenfalls Korrektur Vorschläge. Ein Fehler könnte beispielsweise
in einem falsch gewähltem Datentyp oder Skalenniveau bestehen, welches zur
Weiterverarbeitung durch den nachfolgenden Operator nicht geeignet ist.
Im Bereich rechts außen findet der Anwender dann die Parameter-View, über welche die Konfiguration der einzelnen Operatoren erfolgt. Je nachdem welcher Operator selektiert wurde, erhält der Anwender hier die entsprechenden Parameter zur
Konfiguration. Der letzte Bereich unter der Parameter-View liefert dann eine Beschreibung zur Funktionsweise des jeweils gewählten Operator und gibt dem Anwender darüber hinaus die Möglichkeit jeden Operator mit eigens angelegten
Kommentaren zu versehen.
15
Benutzeroberfläche und Funktionsweise
Abbildung 4 RapidMiner Result Perspektive
Nachdem der fertig modellierte Prozess durch den Anwender manuell ausgeführt
wurde, wird die hier in Abbildung 4 dargestellte Result-Perspektive erstellt. Um die
Art und Weise der Ergebnissdarstellung durch die Result-Perspektive zu verdeutlichen, wird an dieser Stelle nochmals auf Abb.3 verwiesen. Hier ist im modellierten
Prozess zu erkennen, dass jeweils drei separate Datenströme mit dem äußeren
rechten Rand der Process-View, den sogenannten Result-Sets, verbunden sind.
Jeder dieser Datenstörme generiert jeweils eine Ergebnisausgabe, welche dann
nach der Prozessausführung innerhalb der Result-Perspektive, auf jeweils separat
angelegten Tab einsehbar sind. Auf diese Art ermöglicht der RapidMiner quasi das
gleichzeitige Anzeigen mehrerer Ergebnisse. Abbildung 4 liefert als Beispiel, eine
dem Prozess entsprechende, aus drei Tabs bestehende Ausgabe der Ergebnisse
mit einer Datentabelle im aktuell selektiertem Tab. Im unteren, linken Bereich wird
zudem über die Auslastung des Arbeitsspeichers informiert. Des Weiteren sei an
dieser Stelle erwähnt, dass die Erstellung sämtlicher Datenvisualisierungsmöglichkeiten, wie einfachen Plots oder Histogrammen, innerhalb der ResultPerspektive, auf Grundlage der Ergebnis-Tabellen vorgenommen werden.
16
Benutzeroberfläche und Funktionsweise
Orange
Abb. 1 Orange Benutzeroberfläche
Ähnlich wie im RapidMiner werden auch in Orange sämtliche Data Mining Aufgaben und damit zusammenhängende Funktionen der Datenexploration sowie Vorbereitung über das Zusammenbauen von Workflows umgesetzt. Die Benutzeroberfläche ist weit weniger komplex als die vom RapidMiner. Nach dem Start von
Orange, gelangt der Anwender zur der in Abbildung 5 dargestellten Benutzeroberfläche, in welcher die Modellierung der Workflows vorgenommen wird. Hauptbestandteile der Workflows sind hier die sogenannten Widgets, welche sich kategorisch geordnet auf der linken Seite des User-Interface befinden. Die Übersicht ist
hier größer als im RapidMiner, dafür aber ist der Funktionsumfang wesentlich geringer.
Die Widgets werden einzeln per Drag and Drop auf der Modellierungsfläche platziert und zum Informationsaustausch über Channels miteinander verbunden, wobei jedes Widget im Prinzip über beliebig viele ein- sowie ausgehende Channels
Informationen mit weiteren Widgets austauschen kann. Anders als im RapidMiner
erfolgt in Orange keine Prozessausführung. Möchte der Anwender bestimmte Er17
Benutzeroberfläche und Funktionsweise
gebnisse einsehen, so erhält er diese über das direkte Ausführen des entsprechenden Widgets, was zum Öffnen eines extra Fensters führt.
Um einen Prozessablauf etwas näher zu veranschaulichen, zeigt die folgende Abbildung einen modellierten Workflow im Detail.
Abbildung 5 Orange Workflow
Das „File“-Widget dient zum Einlesen einer Quelldatei und ist mit einer weiteren
kleinen Menge Widgets verbunden. Führt der Anwender das Widget „Data Table“
aus, so erhält er eine einfache tabellarische Darstellung, der eingelesenen Quelldatei. Über die Ausführung der farblich in Rot gehaltenen Widgets „Attribute Statistics“, „Distributions“ sowie „Scatter Plot“ sind für den Anwender die entsprechenden Visualisierungen der Daten jeweils einzeln aufrufbar. Im unteren Teil des
Workflows erfolgt, nach einer genaueren Selektierung, der zu verwenden Attribute
bzw. Spalten, das Anwenden eines Naive Bayes-Klassifikator. Die vorgenommene
Klassifizierung des Naive Bayes Algorithmus ist anschließend über die Ausführung
des Nomogram interaktiv einsehbar. Ausgewählte Widgets werden im weiteren
Verlauf detaillierter behandelt.
18
Evaluation
Evaluation
Datenschnittstellen
Das erste Vergleichskriterium befasst sich mit einer Untersuchung der Datenschnittstellen. Da für Data-Mining Aktivitäten herangezogene Daten aus verschiedenen Quellen stammen und in unterschiedlichen Datenformaten vorliegen können, stehen hier zum einen die Möglichkeiten zum Datenimport sowie die Konnektivität zu Datenbanken Im Fokus. Des Weiteren werden auch Datenschnittstellen
nach außen hin untersucht, da durch diese einerseits die Wiederverwendbarkeit
von gelernten Modellen gewährleistet wird und andererseits Veränderungen an
den Datensätzen, welche im Rahmen der Datenvorbereitung durchgeführt wurden,
reproduziert werden können. Wurden am Trainingsdatensatz bestimmte Transformationen vorgenommen, um ein Modell zu Lernen, so müssen die gleichen
Transformationen auch am Scoring Datensatz erfolgen.
Ein weiteres Kriterium, im Zusammenhang mit dem Austausch von Data-Mining
Modellen, ist der auf XML-basierende Predictive Model Markup Language Standard (PMML), dessen Weiterentwicklung von Data Mining Group (DMG) vorangetrieben wird. Entwickelt wurde dieser, um einen einheitlichen Standard zum Austausch von gelernten Data-Mining Modellen zwischen verschiedenen Data-Mining
Tools zu schaffen.
Ein Vergleich der Datenschnittstellen wird nach den folgenden Kriterien durchgeführt:

Datenbankkonnektivität

Möglichkeit zur Übergabe von SQL-Abfragen

Import Trennzeichenbasierender Datenformate

Import von Datenformaten anderer Statistik- bzw. DataMining Software

PMML Unterstützung

Reproduzierbarkeit durchgeführter Veränderungen am Datenbestand

Import sowie Export gelernter Modelle zwischen verschiedenen Instanzen der
jeweiligen Tools
19
Evaluation
In Rattle findet der Nutzer die Optionen zu einem ersten Datenimport im „Daten“Tab. Die folgende Abbildung zeigt hierbei den zugehörigen Ausschnitt des aktiven
Daten-Tab aus der Benutzeroberfläche:
Abbildung 6: Rattle Daten-Tab
Die Auswahl der gewünschten Datenquelle erfolgt hier über die Selektion des entsprechenden Radio-Buttons. Die in Abbildung 6 selektierte Option „Tabellenblatt“,
dient zum Import sämtlicher Trennzeichenbasierter Datenformate, wie dem .txt-,
.csv- sowie dem MS-Excel .xls(x) -Datenformat. Rechts daneben findet der Anwender die Möglichkeit zum Importieren von Daten in Wekas ARRF-Datenformat.
Das Herstellen einer Datenbankverbindung erfolgt in Rattle ausschließlich über
den Open Database Connectivity Standard (ODBC), welche entsprechend über
den ODBC-Button konfiguriert wird. Hier trägt der Anwender die Datenbank-URL
bzw. den Data-Source-Name (DSN) zum Ansteuern der gewünschten Quelldatenbank ein. In der Regel muss vorher eine Konfiguration des DSN im Betriebssystem vorgenommen werden, wobei für MS-Windows so gut wie alle Datenbankanbieter einen entsprechenden ODBC-Treiber zur Verfügung stellen und Rattle somit
alle gängigen Datenbanksysteme ansprechen kann. Allerdings ist hier zu erwähnen, dass über diese Methode keine Möglichkeit besteht, Datenbankabfragen per
SQL-Syntax zu übergeben. Wurde die Datenbankverbindung hergestellt kann der
Anwender lediglich einzelne Tabellen über eine Dropdown-Liste auswählen und
unter Angabe einer Zeilenbeschränkung importieren, sodass hier beim Zugriff auf
relationale Datenbanken keine eine bedarfsgerechte Informationsbereitstellung
per SQL-Abfrage stattfinden kann.
Eine weitere Option ist das Importieren von R-Datensätzen. Hierbei referenziert
Rattle sämtliche Datensätze, welche per R-Syntax innerhalb der, dem Rattle GUI
zugrunde liegenden, R-Entwicklungsumgebung eingelesen wurden. Über eine
Dropdown-Liste kann der Anwender diese einsehen und eine Auswahl treffen. Als
besonders nützlich erweist sich diese Funktion deshalb, da auf diese Art der Um20
Evaluation
fang der möglichen Datenformate zur Verwendung in Rattle zunimmt. So stellt die
R-Umgebung per Syntax beispielsweise Möglichkeiten zum Einlesen von Datenformaten anderer Statistikprogrammen wie SPSS oder SAS zur Verfügung. Darüber hinaus implementiert eine spezielle R-Library den SQL Standard, sodass
über diesen Umweg Tabellen per SQL Abfrage aus einer Datenbank nach R als
R-Datensatz geladen und in Rattle genutzt werden können.19
Die nächste Option trägt die Bezeichnung „R-Datendatei“ und ermöglicht dem Anwender das Einlesen von Datensätzen, welche im R eigenen .rdata Datenformat
vorliegen. Sämtliche in R eingelesen Datensätze lassen sich in diesem Format
speichern, wobei eine R-Datendatei mehrere Tabellen beinhalten kann. Von den
zur Verfügung stehenden Tabellen kann in Rattle stets eine Tabelle als Datengrundlage selektiert und geladen werden.
Der Radiobutton „Bibliothek“ liefert an sich keine weiteren Funktionen zum Import
externer Dateien, sondern stellt dem Anwender eine Auswahl von speziellen R
Beispieldatensätzen, welche in den jeweiligen R-Libraries vorliegen, zur Verfügung. Über die nachfolgende Option „Korpus“ lassen sich Daten zum Text-Mining
importieren.
Der aktuelle Projektfortschritt kann als Rattle-Projektdatei gespeichert werden. Die
importierten Datensätze werden hierbei mit sämtlichen Änderungen und den gebauten Modellen als .rattle Datei gespeichert werden. Rattle Projektdateien stellen
hier also eine Möglichkeit zum Austausch von Modellen zwischen verschiedenen
Rattle Instanzen zur Verfügung.
Um Durchgeführte Aktivitäten bzw. Änderungen an den Daten später zu reproduzieren, kann der Anwender auf den R-Code zurückgreifen, welcher stets parallel
zu durchgeführten Befehlen in Rattle aufgezeichnet wird. Dieser befindet sich im
Log- Tab und kann als R-Skript exportiert werden. Auf die Weise lassen sich die
durchgeführten Änderungen am Datenbestand später nachvollziehen bzw. durch
einfache Ausführung des R-Codes am scoring Datensatz wiederholen.
Ein PMML Export durch Rattle ist gegeben. Importieren lassen sich Modelle via
PMML allerdings noch nicht. Ausgeführt werden Datenexporte, über die in Abbildung 5 zu sehende, „Exportieren“ Schaltfläche. Je nachdem auf welchem Tab sich
der Anwender beim betätigen dieser Schaltfläche befindet, werden entsprechende
Datenexporte ermöglicht. Innerhalb des Modell Tabs, kann so das dort gebaute
19
Vgl. (Graham, 2011)
21
Evaluation
Modell als PMML exportieren werden, während auf dem Log-Tab ein Export des
R-Code möglich ist.
Scikit-learn stellt über das sklearn.datasets Package eine Menge von Methoden
zum Laden von Daten bereit. Diese sind in der API in zwei Kategorien, den sogenannten Loader- und den Sample-Generator Methoden aufgeteilt. Über die Sample-Generator Methoden kann der Anwender simulierte Zufallsdatensätze generieren, wobei hier für verschiedene Data Mining Problemstellungen aus den Bereichen der Regressionsanalyse oder dem Clustering passende Datensätze erzeugt
werden können. Die verfügbaren Sample-Generatoren fallen somit relativ umfangreich aus.
Über die Loader Methoden können dann entweder bereits vorhandene Beispieldatensätze oder Daten aus externen Quellen geladen werden. Zum direkten Laden
von Daten gibt es neben den mitgelieferten Beispieldatensätzen, wie dem Irisdatensatz, Möglichkeiten zum Zugriff auf Online-Repositories. So kann der Anwender über die „datasets.fetch_mldata()“ Methode direkt auf das online verfügbare,
öffentliche Datenarchiv des machine learning data set repository (mldata.org) zugreifen, in dem nach aktuellem Stand20 über 848 Datensätze zur freien Verwendung verfügbar sind. Das mldata.org Repository wird durch das, von der Europäischen Union gegründete, Pascal-Network unterstützt, welches sich intensiv mit
der Weiterentwicklung von Data-Mining bzw. Machine Learning Technologien befasst.
Neben dem Zugriff auf Online Repositories, umfassen die Loader Methoden eine
weitere Möglichkeit zum Laden extern vorliegender Datensätze. Diese besteht im
Laden des speziellen SVMLIGHT/LIBSVM Datenformat, über die „dataset.svmlight_file()“ - Methode. LIBSVM ist ein textbasierendes Datenformat, welches speziell für Aufgaben der Klassifikationen sowie Regression unter Anwendung von Support Vector Machine Lernalgorithmen (SVM) entwickelt wurde.
Macht man sich auf die Suche nach online verfügbaren Datensätzen in diesem
Format, stellt man fest, dass die Auswahl hier noch eingeschränkt ist.
Zum Laden einfacher, textbasierender Datenformate, welche auf lokalen Datenträgern vorliegen, liefert die Scikit-learn Library direkt keine weiteren Möglichkeiten. Da Scikit-learn allerdings auf NumPy Arrays zurückgreift, kann der Anwender
die numpy.loadtxt Methode verwenden, um numerische Werte zu importieren, wobei per Parameterübergabe jedes Trennzeichen definiert werden kann.
20
Stand 10.08.2013
22
Evaluation
numpy.loadtxt (fname, dtype=<type 'float'>, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0)
Um gelernte Modelle in einer anderen scikit-learn Instanz wiederverwenden zu
können, ist es möglich Modelle über das Python pickle-Modul zu exportieren,
durch welches ein gelerntes Modell „x“ über die pickle.dump(x) Methode in einem
speziellen pickle-Objekt gespeichert werden kann.
Der RapidMiner stellt dem Anwender prinzipiell zwei verschiedene Vorgehensweisen zum Datenimport zur Verfügung. Zum einen lassen sich vorliegende Daten
direkt in das RapidMiner Repository überführen und zum anderen gibt es im RapidMiner eine hohe Anzahl von Operatoren, mit denen die Daten dann während
der Prozessausführung eingelesen werden können.
Abbildung 7 RapidMiner - Repository
Abbildung 8 RapidMiner - Operatoren
Abbildung 6 zeigt für einen Überblick der importierbaren Datenformate einen Ausschnitt der Repository-View, inklusive dem geöffnetem Kontextmenü zum Datenimport. Wie zu sehen lassen sich hier csv-, MS Excel-, XML- sowie das MSAccess .mdb Datenformat einlesen. Die „Import Database Table“ Funktion erlaubt
den Einsatz von SQL Abfragen über eine bereits vorkonfigurierte Datenbankverbindung, wobei die Ergebnisstabelle der SQL Abfrage dabei anschließend direkt in
das lokale Repository überführt wird. Zusätzlich ist zu sagen, dass sämtliche Da23
Evaluation
ten bei einem Import in das Repository in ein RapidMiner eigenes Datenformat
überführt werden. Zur weiteren Verwendung der Daten in der Prozessmodellierung gibt es dann einen speziellen „Retrieve“ Operator.
Da der RapidMiner auf Java basiert, erfolgt die Herstellung einer Datenbankverbindung per JDBC. Entsprechende JDBC Treiber sind, mit Ausnahme von Oracle
db, für alle gängigen Datenbanksysteme bereits in der Treiber Bibliothek vorhanden. Ein Vorteil durch welchen zuweilen auch die ETL-Funktionalitäten deutlich
werden ist, dass der RapidMiner zum Management der Datenbankverbindungen
über ein Tool verfügt, durch welches beliebig viele Verbindungen konfiguriert und
gespeichert werden können. Beim Bauen der Prozesse kann dann so der Zugriff
auf mehrere Datenbanken erfolgen.
Innerhalb des Repositories erfolgt dann der Zugriff auf die vordefinierten Datenbankverbindungen, innerhalb des „DB“ Knoten. Über die Baumstruktur lassen sich
die verfügbaren Tabellen aus der jeweiligen Datenbank einsehen und in den Prozess importieren. Abbildung 6 liefert hier ein Beispiel für eine aktive Datenbankverbindung mit der Bezeichnung „local my sql“ und einer dort verfügbaren Tabelle
„rapidminer_testtable“.
Abbildung 7 zeigt einen Ausschnitt der Operator-View mit den verfügbaren Operatoren zum Datenimport. Der Umfang an möglichen Datenformaten ist hier größer
als beim direkten Import via Repository. Wie zu sehen unterstützt auch der RapidMiner neben den Trennzeichenbasierten und Wekas ARFF Format, Datenformate gängiger Statistikprogramme, wie SPSS, Stata und DasyLab. Der „Read
AML“ Operator liest das RapidMiner eigene Datenformat ein.
Eine Besonderheit ist, dass der Anwender zwei Alternativen zum Lesen aus Datenbanken hat, den „Read Database“ sowie den „Stream Database“ -Operator.
Der Read Database Operator liest das Ergebnis der Datenbankabfrage direkt in
den Hauptspeicher, während der „Stream Database“ alternativ ein inkrementelles
Auslesen der Datenbank ermöglicht. Hierbei erfolgt ein stufenweisen Laden der
Daten in sogenannten Batches, was den Zugriff auf sehr umfangreiche Tabellen
möglich macht. Zu bemerken ist hier allerdings, dass über diesen Operator keine
SQL-Querys übergeben werden können, sondern lediglich einzelne Tabellen selektiert werden.
In Bezug auf die PMML Unterstützung lässt sich feststellen, dass hierfür über den
Update Assistenten eine spezielle Extension geladen werden muss, die den RapidMiner um einen „Write PMML“ Operator ergänzt. Über diesen können gelernte
24
Evaluation
Modelle dann als XML im PMML Dialekt exportiert werden. Ein Austausch von
gelernten Modellen zwischen verschiedenen RapidMiner Instanzen erfolgt ebenfalls per XML. Durch den Einsatz entsprechender „Write Model“- bzw. „Read Model“ Operatoren, lassen sich Modelle als XML exportieren und dann in einem neu
angelegten Prozess oder einer anderen RapidMiner Installation wiederverwenden.
Zur Veranschaulichung zeigt die nachfolgende Abbildung ein kleines Beispiel, wobei zu erwähnen ist, dass hier der Modellimport und Export im gleichen Prozess
stattfinden.
Abbildung 9 RapidMiner - Model Import/Export
Im dargestellten Prozess wird auf Grundlage eines Trainingsdatensatzes ein Decision Tree berechnet und anschließend über den „Write Model“ Operator exportiert.
Das berechnete Modell wird dann per „Read Model“ Operator eingelesen und über
den „Apply Model“ Operator auf einen neuen Scoring-Datensatz angewandt, um
hier dann die Klassifizierung einer Zielvariablen vorzunehmen. Das Einlesen und
Anwenden des berechneten Modells auf den Zieldatensatz kann dabei, anders als
in diesem Beispiel, in einer anderen RapidMiner Installation stattfinden.
Neben dem Austausch RapidMiner eigener Modelle, steht dem Anwender auch
eine Extension zur Integration von Modellen bzw. Algorithmen der Weka Data Mining Software zur Verfügung, sodass in Weka gelernte Modelle ebenfalls importiert werden können. Darüber hinaus lässt sich auch die interne XML Beschreibung der gesamten Prozesskonfiguration exportieren, um so den gesamten modellierten Prozessablauf in einer anderen RapidMiner-Instanz zu reproduzieren.
Zu den Datenexportmöglichkeiten lässt sich weiterhin sagen, dass der RapidMiner
25
Evaluation
neben dem csv und xls Format, sämtliche Daten aus dem Repository auch in Wekas ARFF Format schreiben kann.
In Orange ist der Umfang an unterstützten Datenformaten im Vergleich zum RapidMiner und Rattle am geringsten. Neben den Trennzeichenbasierenden Formaten werden das ARFF sowie das, aus scikit-learn bekannte, libsvm Datenformat
unterstützt. Das Einlesen von Datenformaten anderer Statistikprogramme, wie im
RapidMiner, ist hier nicht gegeben.
Zur Herstellung einer Datenbankverbindung gibt es in Orange, innerhalb der Kategorie „Prototypes“, zwei verschiedene Widgets. Eines dient zur Verbindungsherstellung via DSN, bei dem anderen erfolgt der Datenbankzugriff über das Eintragen der Verbindungsdaten, wobei hier zurzeit lediglich MySQL und Postgres Datenbanken unterstützt werden. Beide Widgets bieten die Möglichkeit für SQL Abfragen. Eine PMML Unterstützung ist in der untersuchten Version nicht gegeben.
Ein Austausch von gelernten Modellen ist aber, wie auch in Scikit-learn, über das
pickle-modul möglich. So können mithilfe des Widgets „Save Classifier“ Modelle
als Pickle Datei exportiert werden.
26
Evaluation
Datenexploration und Visualisierung
Wie in der Beschreibung des CRISP-DM Modelles deutlich wurde, erfolgt vor dem
eigentlichen Einsatz der Data-Mining Methoden, ein umfassendes Explorieren
bzw. Beschreiben der Daten, anhand statistischer Maßzahlen sowie dem Einsatz
verschiedener Visualisierungsmöglichkeiten. Innerhalb dieses Kapitels folgt eine
Darstellung, welche Möglichkeiten die einzelnen Tools hier bieten und wie diese
umgesetzt sind. Ein erstes Vergleichskriterium befasst sich hierbei mit den zur
Verfügung stehenden Kenngrößen aus der deskriptiven Statistik, durch welche
sich dem Anwender ein erster Eindruck von der Verteilung der Daten erschließt.
Das Hauptaugenmerk liegt in diesem Zusammenhang auf den folgenden Kennzahlen der deskriptiven Statistik, welche hier aufgeführt werden:

absolute und relative Häufigkeitsverteilung nummerischer sowie kategorischer
Merkmale

Lagemaße: Modus, Arithmetische Mittel, Median, Quantile

Streuungsmaße: Spannweite, Varianz, Schiefe- und Wölbungsmaß

Darstellung von Informationen innerhalb der Metadaten-Übersicht
Grundsätzlich stellen hinsichtlich der definierten Kennzahlen Orange, Rattle sowie
der RapidMiner dem Anwender eine gewisse Auswahl zur Verfügung. Das scikitlearn Package fokussiert sich mehr auf die DataMining Modellierungsmethoden
und verzichtet hier auf Implementierungen zur reinen Darstellung statistischer
Kennzahlen. In Rattle fallen die Möglichkeiten zur Darstellung der Kennzahlen am
umfangreichsten aus und decken die definierten Kennzahlen komplett ab. In
Orange und dem RapidMiner fehlen die Maßzahlen für das Schiefe- und Wölbungsmaß. Weiterhin gibt es im RapidMiner keine genaue Darstellung der Merkmalswerte von Quantilen. Zwar liefert der RapidMiner die Möglichkeit zum Generieren von Box Plots, welche das 0.25- sowie 0.75 Quantil grafisch Kennzeichnen,
jedoch werden die zughörigen Merkmalswerte nicht ausgegeben. Zudem ist die
Skalierung der Werteskala zu grob und bietet keine weitere Möglichkeit zu einer
Interaktiven Bearbeitung, sodass die Quantile bestenfalls geschätzt werden können. In Orange fehlen das Schiefe- und Wölbungsmaß. Generiert werden die
Kennzahlen im RapidMiner innerhalb der Metadaten-Übersicht, während Orange
eine Darstellung der Kennzahlen über das „Attribute Statistics“- Widget vornimmt.
In Rattle lassen sich Kennzahlen über das „Explorer“-Tab generieren.
27
Evaluation
Zur Veranschaulichung der Kennzahlen im RapidMiner stellt die folgende Abbildung die Metadaten-Übersicht des RapidMiner dar. Als Datengrundlage kommt
hierbei ein öffentlich verfügbarer Datensatz zum Einsatz, welcher im Rahmen eines RapidMiner Tutorial zur Verfügung steht.21
Abbildung 10 RapidMiner - Meta Data View
Die Metadaten-Übersicht zeigt die Attribute des Datensatzes mit den entsprechenden Datentypen und den Rollen, wobei im RapidMiner eine Festlegung der
Rollen sowie Datentypen über den, in Kapitel 4 angesprochenen, Wizard zum Datenimport vorgenommen wird. In den Spalten „Statistics“ sowie „Range“ findet der
Anwender hier erste grundlegende Statistiken. „Range“ liefert für numerische Werte die Spannweite und für kategorische die möglichen Ausprägungen zusammen
mit den absoluten Häufigkeiten. Über die Spalte „Statistics“ sind dann für numerische Attribute das arithmetische Mittel sowie die Varianz einsehbar. Für kategorische Attribute liefert „Statistics“ den Modus, also die Merkmalsausprägung, welche
am häufigsten vorkommt und dazu, die mit „least“ gekennzeichnete Ausprägung
mit der geringsten Häufigkeit. Über Fehlende Werte wird in der Anwender in der
Spalte rechts außen informiert. In der Standardausführung enthält der RapidMiner
keine weiterführenden Möglichkeiten zum Generieren von Kennzahlen bzw. dem
Beschreiben von Daten in Textform.
Ähnlich wie im RapidMiner gibt es auch in Rattle eine Metadaten-Übersicht in welcher allerdings keine Darstellung von statistischen Kennzahlen stattfindet. Die Metadaten-Übersicht öffnet sich dem Anwender direkt nach dem Einlesen der Quelldatei, innerhalb des Daten-Tabs. Die folgende Abbildung zeigt in diesem Zusammenhang eine Darstellung mit dem RapidMiner Datensatz.
21
URL: https://sites.google.com/site/dataminingforthemasses/
28
Evaluation
Abbildung 11 Rattle Datensatz
Wie zu erkennen werden auch hier sämtliche Attribute bzw. Variablen des Datensatzes mit dem zugehörigen Datentyp und den jeweiligen Rollen der einzelnen
Attribute aufgezeigt, wobei eine Vergabe der Rollen, anders als im RapidMiner,
hier in der Metadaten-Übersicht stattfindet. Zusätzlich erhält der Anwender, innerhalb der Kommentarspalte rechts außen, für jedes Attribut Aufschluss darüber wie
viele voneinander verschiedene Werteausprägungen auftreten.
Das Festlegen der einzelnen Variablenrollen spielt eine wesentliche Rolle bei der
späteren Modellierung bzw. Anwendung der Data-Mining Methoden. Die ZielVariable, in diesem Fall ist das die Variable „eReader_Adoption“, ist die abhängige Variable, welche auf Grundlage auf des Trainingsdatensatz vorhergesagt werden soll. Innerhalb des Datensatzes kann immer nur eine Ziel-Variable definiert
werden. Variablen mit der Rolle „Eingabe“ sind dann die unabhängigen, welche
einen gewissen Einfluss auf die Zielvariable nehmen. Die Rolle „Ident“ kann für
solche Variablen vergeben werden, welche Datensätze eindeutig identifizierbar
werden. Diese muss nicht zwangsläufig für jeden einzelnen Datensatz unique
sein. In diesem Beispiel werden durch die „User_ID“ mit Rolle der „Ident“, Kunden
eindeutig identifiziert, wobei ein Kunde aber mehrfach innerhalb des Datensatzes
vorhanden sein kann. Da „Ident“-Variablen zur Identifizierbarkeit gedacht sind und
29
Evaluation
im Normalfall keinen Einfluss auf die Zielvariable nehmen, werden diese bei der
späteren Modellierung in Rattle außer Acht gelassen. Über das Setzen der „Ignorieren“- Rolle können Variablen ebenfalls aus statistischen Betrachtungen und Data-Mining Modelle herausgenommen werden.
Beim Einlesen der Datensätze fällt auf, dass Rattle einerseits den Datentyp automatisch bestimmt und darüber hinaus, eine automatische Schätzung bzw. Vergabe der Variablenrollen vornimmt. Nach dem Laden des oben verwendeten Beispieldatensatzes, wurde das Attribut „eReader_Adoption“ automatisch als Zielvariable ermittelt. Diese Schätzung wird in Rattle auf Grundlage bestimmter Entscheidungsregeln getroffen22. So wird zur automatischen Ermittlung der Zielvariablen, die Anzahl der voneinander verschiedenen Werteausprägungen, der einzelnen Attribute herangezogen. Ist diese Anzahl möglichst gering bzw. kleiner als
Fünf, stellt das entsprechende Attribut eine potentielle Zielvariable dar. Hierbei
prüft Rattle zuerst das letzte Attribut im Datensatz, da sich in vielen öffentlich verfügbaren Datensätzen der Standard etabliert hat, bei dem die Zielvariable stets als
letztes Attribut am Ende des Datensatzes steht. Tritt innerhalb des Datensatzes
eine Variable auf, welche für jeden Datensatz einen einmalig vorhandenen Wert
annimmt, so wird diese als „Ident“ Rolle definiert.
Neben den Entscheidungsregeln über die Anzahl der Werteausprägungen sowie
der Reihenfolge der Attribute, erkennt Rattle die Variablenrollen auch anhand bestimmter Strings innerhalb der Attributbezeichnungen. Enthält die Attributbezeichnung den String „TARGET“ zu Beginn, so wird diese als Zielvariable erkannt.
Hierbei konnte festgestellt werden, dass diese Methode Vorrang hat gegenüber
der Variablenrollen-Ermittlung durch die Entscheidungsregeln.
In Bezug auf die Datentypen lässt sich feststellen, dass Rattle hinsichtlich des
Skalenniveaus lediglich eine Differenzierung zwischen kategorialen und numerischen Werten vornimmt. Kategoriale mit nur zwei möglichen Merkmalsausprägungen, also dichotome Merkmale bzw. Attribute, werden nicht extra als solche gekennzeichnet.
Bei Orange fällt auf, dass eine Meta-Daten-Übersicht mit einer Beschreibung der
einzelnen Attribute, wie diese In Rattle und dem RapidMiner gegeben ist, nicht
vorhanden ist. Beim Einlesen der Quelldatei erhält der Anwender lediglich einen
groben Überblick über die Anzahl der Attribute sowie Datensätze. Dafür sticht hier
22
Vgl. (Graham, 2011 s.96)
30
Evaluation
die tabellarische Ansicht der Datensätze hervor. Abbildung 12 liefert hier eine Darstellung.
Abbildung 12 Orange - Data Table
Die obige tabellarische Ansicht wird über das „Data Table“ Widget generiert. Ähnlich wie in Rattle erfolgt auch in Orange ein automatisches Festlegen der Datentypen sowie der Variablenrollen, direkt nach dem Einlesen der Quelldatei über das
„File Widget“. Die Zellen der Zielvariable „eReader_Adoption“ sind hier dunkelgrau
hinterlegt. In der Abbildung fällt auf, dass die numerischen Attribute „User_ID“ sowie „Age“ mit farblichen Balken versehen sind die Zugehörigkeit der numerischen
Merkmalsausprägung zur entsprechenden Klasse der Zielvariablen kennzeichnet.
In Abbildung 17 werden die Merkmalswerte innerhalb des Attributes „Age“ immer
dann orange markiert, sobald im gleichen Datensatz die Zielvariable „eReader_Adoption“ die Ausprägung bzw. Kategorie „Late Majority“ annimmt. Über die
Balkenlänge lässt sich Position des Wertes innerhalb der Spannweite ablesen. So
kann der Anwender hier beim Betrachten der Datensätze erkennen, ob die Zugehörigkeit zu einer Klasse mit höheren bzw. niedrigeren Merkmalswerten einhergeht.
31
Evaluation
Wie bereits erwähnt, fallen in Rattle die Möglichkeiten einer statistischen Beschreibung der Daten über das „Explorer Tab“ am umfangreichsten aus. Befindet
sich der Anwender im aktiven „Explorer Tab“, so wird dieses weiterhin in die Unterkategorien Zusammenfassung, Verteilung, Korrelationen, Hauptkomponenten
und Interaktiv gegliedert. Über den aktiven Radio-Button „Zusammenfassen“ erreicht der Anwender im Wesentlichen die grundlegenden Lagemaße.
Abbildung 13 Rattle - Explorer
Über das Zuschalten der einzelnen Checkboxen kann dann definiert werden, welche Maßzahlen bzw. Lagemaße innerhalb des Textfeldes ausgegeben werden
sollen. Jede Checkbox liefert immer eine bestimmte Ausgabe an Maßzahlen und
stellt diese in einer einheitlichen Art und Weise dar. So liefert eine aktivierte
Checkbox „Zusammenfassung“, in einer ersten tabellarischen Darstellung, die
möglichen Merkmalsausprägungen für jedes kategoriale Merkmal. Anschließend
werden für jedes numerische Attribut die einfache Maßzahlen der Spannweite,
Mittelwerte und Median sowie das erste und dritte Quartil aufgezeigt. Kategoriale
Merkmalausprägungen werden zusammen mit den entsprechenden absoluten
Häufigkeitsverteilung ausgegeben. Über Kurtosis und Schiefe lassen sich das
Schiefe- sowie Wölbungsmaße hinzufügen.
Als besonders positiv lässt sich in Rattle die Checkbox „Beschreiben“ herausstellen, welche eine sehr hilfreiche Darstellung zum Erkennen von Ausreißern bei
numerischen Werten liefert. Die folgende Abbildung zeigt hierfür ein Beispiel.
32
Evaluation
Abbildung 14 Rattle - Beschreiben
Die aktive Checkbox „Beschreiben“ generiert für numerische als auch kategorische Attribute eine Reihe von Maßzahlen. Betrachtet man hier das numerische
Attribut „Age“, so erhält man zur Beschreibung der Häufigkeitsverteilung, die
Merkmalswerte bestimmter Quantile und zusätzlich, im unteren Bereich der Abbildung, die jeweils fünf niedrigsten sowie höchsten Merkmalsausprägungen. Das
größte und kleinste Quantil, welche jeweils dargestellt werden, sind das 0.95Quantil sowie das 0.5-Quantil. So erkennt man bei dem 0.95- Quantil, dass 0.95
aller Beobachtungen bzw. Datensätze kleiner sind als der Merkmalswert an diesem Quantil. Zusammen mit fünf höchsten Merkmalswerten kann dann relativ einfach festgestellt werden, ob das Attribut ungewöhnlich hohe Merkmalswerte enthält. Analog kann man ungewöhnlich niedrige über das 0.5-Quantil zusammen mit
den fünf niedrigsten Merkmalswerten finden.
Des Weiteren liefert Rattle eine sehr sinnvolle Möglichkeit um eventuell vorhandene Strukturen beim Vorkommen von fehlenden Werten zu erkennen. Diese erreicht man über die Checkbox „Fehlende anzeigen“. Abbildung 12 zeigt hier ein
Beispiel, welches in Anlehnung an das Togaware Rattle Tutorial entstanden ist.
33
Evaluation
Abbildung 15 Rattle - Fehlende anzeigen23
Wie in der Abbildung zu sehen, führt die aktive Checkbox „Fehlende anzeigen“ zur
Ausgabe einer Matrix, welche spaltenweise die Attribute des Datensatzes abbildet.
Zu beachten in dieser Abbildung ist, dass nach dem Attribut „Occupation“ ein Zeilenumbruch erfolgt. Die Zeilen stehen nun im Grunde genommen für die Kombinationsmöglichkeiten mit denen fehlende Werte bzw. Missing Values in den Attributen gemeinsam auftreten können. Jede Zeile stellt eine Kombinationsmöglichkeit
dar. Die erste Spalte sagt aus wie oft dieses Muster bzw. Kombinationsmöglichkeit
auftritt. Befindet sich in der Zelle eines Attributs der Wert 1, so heißt das, dass für
das entsprechende Attribut keine Missing Values auftreten, wohingegen der Wert
0 das Vorhandensein von Missing Values aufzeigt. Schaut man sich die erste Zeile an, sieht man, dass in keinem Attribut Missing Values auftreten, wobei dies bei
1899 Datensätzen der Fall ist. Betrachtet man hingegen die dritte Zeile, so erkennt
man hier, dass bei hier 100 Datensätzen In den Attributen „Employment“ und „Occupation“ zugleich, fehlende Werte auftauchen. Dies könnte ein Indiz dafür sein,
dass zwischen diesen beiden Attributen eine Art Zusammenhang beim Auftreten
von Missing Values existiert. Die letzte Zeile liefert immer die Gesamtanzahl an
Missing Values in einem Attribut.
Zu den Visualisierungsmöglichkeiten lässt sich sagen, dass sich in Rattle auf sehr
anwenderfreundliche Art, übersichtliche Darstellungen erzeugen lassen. Zu erreichen sind diese ebenfalls innerhalb des Explorer-Tabs, über den Radio Button
„Verteilungen“. Die nachfolgende Abbildung liefert hierzu eine Übersicht, wobei
auch hierfür der RapidMiner Datensatz als Datengrundlage zum Einsatz kommt.
23
Vgl. (http://datamining.togaware.com/survivor/Missing.html)
34
Evaluation
Abbildung 16 - Rattle Verteilungen
Zu erkennen ist, dass hier eine Aufteilung sämtlicher Attribute des Datensatzes, in
die enthaltenden numerischen sowie kategorischen Attributen stattfindet. Anhand
dieser Aufteilung kann der Anwender dann genau sehen, welche Grafiken zur Erstellung entsprechend möglich sind. Über die Checkboxen kann dann definiert
werden, welche von den verfügbaren Grafiken für die jeweiligen Attribute generiert
werden sollen. Nach getroffener Auswahl und Bestätigung werden die ausgewählten Grafiken in der R-Entwicklungsumgebung erstellt. Der Umfang an Visualisierungsmöglichkeiten in Rattle ist geringer im Vergleich zu den Möglichkeiten der
anderen untersuchten Tools. Allerdings punktet Rattle hier durch die sehr einfache
Handhabung und das schnelle, übersichtliche zur Verfügung stellen grundlegender Grafiken.
Zur Veranschaulichung liefert die folgende Abbildung eine Darstellung, entsprechend der getroffenen Auswahl in Abbildung 16.
35
Evaluation
Abbildung 17 - Rattle Grafiken
Die erstellten Plots werden, wie Abbildung 17 zeigt, immer zusammen in einer
Übersicht dargestellt. Als positiv herauszustellen ist, dass die Grafiken bei einem
Vorhandensein einer kategorischen Zielvariablen, stets im Kontext mit den Häufigkeitsverteilungen der möglichen Ausprägungen der Zielvariablen, generiert werden.24Die Klassifizierungsmöglichkeiten der Zielvariablen sind hierbei in einer Legende festgehalten. So ist beispielsweise in der Darstellung der Box Plots oben
links zu sehen, dass hier für jede mögliche Ausprägung der Zielvariablen ein extra
Boxplot generiert wird, welcher die Verteilung des Attributes „Age“ aufzeigt. Jeder
Boxplot beinhaltet hierbei immer nur die entsprechenden Datensätze der jeweiligen Merkmalsausprägung der Zielvariablen. In dieser Gegenüberstellung wird erkenntlich, dass das Durchschnittsalter der „Early Adopter“ niedriger ist, als bei den
anderen. Weiterhin ist in dem Histogramm oben rechts zu erkennen, dass bei einem Alter von ungefähr 25, die Häufigkeit, der in Gelb gehaltenen Ausprägung
24
Vgl. (Grabiel, Gluchowski, & Pastwa, 2009, S. 109)
36
Evaluation
„Early Adopter“, einen kleinen Ausschlag nach oben annimmt, was auf einen
eventuellen Zusammenhang zwischen einen niedrigem Alter und dem frühen Erwerb eines E-Books hindeuten könnte.
Ein kleiner Negativpunkt der grafischen Darstellung in Rattle ist, dass die Ausgabe
der Grafiken immer in einer standardisierten Form erfolgt und keine weitere interaktive Bearbeitung möglich ist.
Die Visualisierungsmöglichkeiten im RapidMiner fallen hingegen sehr umfangreich
aus und bieten im Vergleich zu den anderen Tools eine größere Auswahl. Erstellt
werden diese innerhalb der sogenannten Plot-View der Result-Perspektive. Da der
Umfang hier sehr groß ist, werden im Folgenden einzelne Besonderheiten herausgestellt. Eine davon ist, dass der RapidMiner, zusammen mit Scikit-learn, das
Bauen von dreidimensionalen Scatter-Plots ermöglicht. Abbildung 16 zeigt einen
solchen, mit dem Iris-Datensatz als Datengrundlage.
Abbildung 18 RapidMiner - Iris
Sämtliche Grafiken werden im RapidMiner dann über das auf der linken Seite befindliche Menü interaktiv gestaltet. Hier in Abbildung 16 ist zu sehen, dass auf jeder Achse ein Attribut des Iris-Datensatzes abgebildet wird und eine Einfärbung
der einzelnen Punkte nach dem label, also der Klassenzugehörigkeit der einzelnen Punkte zu der kategorischen Zielvariablen erfolgt. Der 3D Scatter Plot lässt
37
Evaluation
sich beliebig drehen. Auffällig ist hierbei der große Abstand der Merkmalswerte,
der Gattung „Iris-setosa“ (Blau markiert) zu den Merkmalswerten der anderen beiden Gattungen (Grün und Rot markiert), zwischen denen es zum Teil Überschneidungen zwischen den Datenpunkten gibt. Neben einfachen Scatterplots gibt es im
RapidMiner auch komplexere Grafiken, durch welche der RapidMiner hervorsticht.
Eine davon ist die sogenannte Self-Organizing Map (SOM). Diese sind, so wie
Scatter Plots, dafür geeignet, um die Abstände zwischen numerischen Datenpunkten zu visualisieren, wobei in der SOM eine besondere Art und Weise der Veranschaulicht eingesetzt wird. Die folgende Abbildung zeigt eine SOM. Entstanden ist
diese in Anlehnung an ein RapidMiner Tutorial.25
Abbildung 19 - RapidMiner SOM
Als Datengrundlage wurde auch hier der Iris-Datensatz verwendet. Anhand der
farblichen Markierung lassen sich die zugehörigen label zu den Datenpunkten einsehen. Die Idee hinter der SOM ist es, die Distanzen zwischen den Datenpunkten
über eine Art Landschaft mit Gebirgen und Gewässern kenntlich zu machen, wobei Gebirge eine hohe- und Gewässer eine niedrige Distanz implizieren. Analog
zum dem 3D Scatter Plot in Abbildung 16 ist auch zu erkennen, dass die Datenpunkte der Gattung „Iris-setosa“ näher zusammen liegen und einen größeren Abstand zu denen aus den anderen Gattungen aufweisen.
25
Vgl. (http://rapidminerresources.com/index.php?page=pre-processing-visualisation)
38
Evaluation
Zu dem Umfang an Visualisierungsmöglichkeiten in Orange lässt sich sagen, dass
diese im Vergleich eher im Mittelfeld anzusiedeln sind und sich in etwa mit denen
von Rattle vergleichen lassen. 3-Dimensionale Grafiken, wie im RapidMiner und
scikit-learn gibt es nicht. Hierfür punktet Orange allerdings durch die hohe Interaktivität beim Erstellen der Grafiken. Die nachfolgende Abbildung zeigt ein Histogramm in Orange auf Grundlage des RapidMiner „eReader_Adoption“Datensatzes.
Abbildung 20 - Orange Distributions
In der Abbildung wird das geöffnete Widget „Distributions“ gezeigt. Auf der XAchse wird das Alter abgebildet, welches im Dropdown Menü links oben ausgewählt wurde. Numerische Werte werden hierbei in äquidistante Gruppen eingeteilt
bzw. diskretisiert. Darunter hat der Anwender die Option, einzelne mögliche Ausprägungen, der Zielvariablen, hinzuzuschalten, welche dann mit den absoluten
Häufigkeiten, in Relation zum Alter, dargestellt werden und farblich kenntlich gemacht werden. Betrachtet man nun die Verteilungen, so ist beispielsweise zu erkennen, dass die Häufigkeit der Klasse „Late Majority“ (Orange markiert) mit stei39
Evaluation
gendem Alter zunimmt. Darüber hinaus gibt es hier die zuschaltbare Option „Propability Plot“. Durch diese wird dem Histogramm eine schwarze Linie hinzugefügt,
welche die relative Häufigkeit einer selektierbaren Merkmalsausprägung der Zielvariablen visualisiert. In der Abbildung wird hier sehr schnell der Zusammenhang
zwischen dem Alter und einer steigenden Häufigkeit von „Late Majority“ deutlich.
40
Evaluation
Data Mining Methoden
Ein wesentlicher Hauptbestandteil der untersuchten Tools, sind die zur Verfügung
stehenden Data Mining-Modellierungsmethoden, welche innerhalb dieses Kapitels
einem Vergleich unterzogen werden. Um hierfür eine erste grobe Aussage bezüglich des Umfangs, der jeweils verfügbaren Modellierungsmethoden zu treffen, wird
als Grundlage auf eine allgemein anerkannte Kategorisierung von Data Mining
Methoden zurückgegriffen. Diese sieht eine grobe Aufgliederung sämtlicher Data
Mining Verfahren in die vier verschiedenen Aufgabenbereiche der Assoziation,
Klassifikation, Segmentierung und Regression bzw. Prognose vor26. Die folgende
Abbildung liefert in diesem Zusammenhang eine hierarchische Übersicht.
Abbildung 21 Klassifizierung Data Mining Methoden27
Grundsätzlich lässt sich feststellen, dass der RapidMiner, Rattle sowie Orange für
sämtliche der vier Aufgabenbereiche des Data Mining entsprechende Algorithmen
implementieren. Scikit-learn deckt die Bereiche der Klassifikation, Regression und
Segmentierung ab und lässt lediglich Algorithmen für die Assoziations-Analyse
vermissen. Innerhalb der Aufgabenbereiche unterscheiden sich die Tools allerdings hinsichtlich der Anzahl an verfügbaren Data Mining-Algorithmen. Abbildung
26
27
Vgl. (Grabiel, Gluchowski, & Pastwa, 2009, Seite 134, zitiert nach: Bankhofer, U., 2004, Seite 395-412 )
URL :http://www.dataminingarticles.com/data-mining-introduction/data-mining-techniques/
41
Evaluation
20 zeigt in einer hierarchischen Übersicht, die den Aufgabenbereichen zugehörigen Data Mining Methoden bzw. Modelle und weiterhin verschiedene Algorithmen,
mit denen ein bestimmte Data Mining Methode ausgeführt werden kann. Um bei
dem Vergleich der Data Mining Methoden weiter in die Tiefe zu gehen, wir als
Grundlage eines der Haupteinsatzgebiete des Data Mining, das customer relationship management, herangezogen, welches sich im Wesentlichen mit dem Aufbauen und dem Stärken von Kundenbeziehungen befasst, um diese möglichst
profitabel zu halten. Im Rahmen der Recherchearbeiten wurde in diesem Zusammenhang ein Forschungsbericht gefunden, welcher sich mit der Anwendung von
Data Mining Methoden im CRM befasst und die hierfür relevantesten Methoden
herausstellt. Das CRM wird im Rahmen des Berichtes als ein Prozess mit den vier
Phasen der Customer Identification, Attraction, Retention und des Customer Development definiert, wobei für jede dieser Phasen bestimmte Data Mining Methoden eine besonders häufige Anwendung in der Praxis finden. Diese werden im
folgendem kurz dargestellt und als Vergleichsgrundlage herangezogen:28

Apriori Algorithmus: Der Apriori Algorithmus dient zum Auffinden von Assoziationsregeln zwischen den Attributen eines Datensatzes. Ein oft gebrauchtes Beispiel hierfür ist die Warenkorbanalyse.

Neuronale Netzwerke: Mithilfe von Neuronalen Netzwerken können sowohl
numerische als kategorische Attribute vorherbestimmt werden. Die Funktionsweise orientiert sich an idealisierten Neuronen, sodass ein neuronales
Netz als eine Art gerichteter, gewichteter Graph verstanden werden kann.29

Decision Trees: Entscheidungsbäume bzw. Decision Trees können zur
Klassifikation von kategorischen Attributen verwendet werden. Ein Vorteil
der Decision Trees ist, dass die Darstellung der berechneten Ergebnisse
leicht interpretiert werden kann. Hierbei werden über eine hierarchische
Baumstruktur Entscheidungsregeln dargestellt, welche zugleich die Gewichtung der einzelnen Attribute deutlich machen.

K-means Clustering: Über den K-Means Clustering Algorithmus werden Datensätze bzw. Objekte, anhand nummerischer Werteausprägungen in sogenannte Cluster gruppiert. Grundlage für die Einteilung in Cluster sind die
Distanzen zu den Mittelwerten der einzelnen Cluster, sodass am Ende zueinander ähnliche Objekte bzw. Datensätze in einem Cluster liegen.
28
29
Vgl. (Ngai, Xiu, & Chau, 2009)
Vgl.( http://cs.uni-muenster.de/Professoren/Lippe/lehre/skripte/wwwnnscript/prin.html)
42
Evaluation

K-Nearest neighbour: Der K-Nearest neighbour Algorithmus kann sowohl
zur Klassifikation als auch Regression verwendet werden. Die Zuordnung
bei der Klassifikation erfolgt hier über Distanzmaße.

lineare Diskriminanz-Analyse: Die lineare Diskriminanz-Analyse nimmt eine
Vorhersage kategorischer Attribute auf Grundlage nummerischer Inputvariablen vor.

lineare und logistische Regressionsmodelle: Lineare Regressionsmodelle
schätzen den Wert einer nummerischen, abhängigen Zielvariablen. Die Berechnung des Schätzwertes wird auf Grundlage der Stärke der Abhängigkeit zwischen den einflussnehmenden Inputvariablen und der Zielvariablen
vorgenommen.

Support Vector Machines: Support Vector Machines können für Aufgaben
der binären Klassifikationen oder Regressionen verwendet werden, wobei
als Inputvariablen ausschließlich nummerische Attribute unterstützt werden.

Klassifikation per Naive Bayes: Naive Bayes Modelle werden zur Klassifikation verwendet und können diese auf Grundlage von nummerischen und
kategorischen Input-Variablen vornehmen. Ein Vorteil des Naive Bayes ist,
dass dieser schon anhand einer kleinen Menge an Trainingsdaten Klassifikationen vornehmen kann.
Bezüglich der Modellierungsmethoden lässt sich feststellen, dass hier lediglich der
RapidMiner sämtliche Algorithmen unterstützt. In Rattle fehlen Implementierung
für Naive Bayes, K-Nearest neighbour und der Diskriminanz-Analyse. Orange hingegen unterstützt sämtliche Modelle bis auf die Diskriminanz-Analyse. Da scikitlearn keine Algorithmen zur Assoziationsanalyse implementiert, fehlt hier der Apriori Algorithmus.
43
Evaluation
Abschließendes Fazit
Insgesamt lässt sich sagen, dass sämtliche Tools über bestimmte Vor- und Nachteile verfügen. Der RapidMiner kann am effizientesten in bestehende Unternehmens IT-Strukturen integriert werden, da dieser über die umfangreichsten Möglichkeiten zu einem Datenimport verfügt und darüber hinaus über ein Management
zur Konfiguration von parallel bestehenden Datenbankverbindungen. Des Weiteren ist im RapidMiner der Umfang an Modellierungsmöglichkeiten unter den untersuchten Tools am größten. Rattle liefert eine sehr umfassende Beschreibung der
Daten anhand statistischer Maßzahlen und stellt diese in einer sehr übersichtlichen und sinnvollen Weise dar. In gleicher Weise punktet Rattle durch das anwenderfreundliche Generieren von Grafiken, welche dann in einer übersichtlichen
Darstellung im Zusammenhang mit den Häufigkeitsverteilungen der Zielvariablen
dargestellt werden. Im Vergleich ist jedoch der Umfang an Modellierungsalgorithmen in Rattle am geringsten. Orange hat seine Vorteile in der starken Interaktivität
der Widgets beim Visualisieren der Daten, verfügt jedoch über die geringsten
Möglichkeiten zu einem Datenimport. Die Data Mining Algorithmen sind im Kontext der CRM-Analyse umfassender als in Rattle, decken jedoch nicht alle definierten Algorithmen ab In Scikit-learn konnten Möglichkeiten zur Assoziationsanalyse
nicht gefunden werden. Von diesen abgesehen verfügt scikit-learn über ein sehr
mächtiges Repertoire an Data Mining Algorithmen. Zudem setzt scikit-learn stark
auf einen direkten Datenimport über Online-Repositories und fokussiert sich mehr
auf die Verarbeitung nummerischer Datensätze.
Eine PMML Unterstützung ist ausschließlich durch Rattle und den RapidMiner gegeben, wobei ein interner Austausch von gelernten Modellen zwischen verschiedenen Instanzen der jeweiligen Tools jedoch bei allen möglich ist.
44
Literaturverzeichnis
Literaturverzeichnis
Roland Gabriel, Peter Gluchowski, Alexander Pastwa: Data Warehouse & Data
Mining, W3L (2009)
Dr. Matthew North: Data Mining for the Masses (2012)
Dr. Graham Williams: Data Mining with Rattle and R, Springer (2011)
Ian H. Witten, Eibe Frank: Data Mining Practical Machine Learning Tools and
Techniques, (2005)
Bankhofer, U.: Data Mining und seine betriebswirtschaftliche Relevanz, in: Betriebswirtschaftliche Forschung und Praxis, Heft 4, (2004)
Fayyad, U. M.; Piatetsky-Shapiro, G.; Smyth, P.: From Data Mining to Knowledge
Discovery in Databases: an overview, in: Advances in Knowledge Discovery and
Data Mining, Menlo Park (1996)
IBM: CRSIP-DM 1.0 (2010)
VI
Weblinks
Weblinks
Dataminingarticles.com,
URL:http://www.dataminingarticles.com/data-miningintroduction/data-mining-techniques/ [Stand: 22.September 2013]
E.W.T. Ngai, Li Xiu, “Application of data mining techniques in customer relationship
management:
A
literature
review
and
classification”,
URL:
http://cjou.im.tku.edu.tw/bi2009/DM-usage.pdf
http://cs.uni-muenster.de, URL: http://cs.unimuenster.de/Professoren/Lippe/lehre/skripte/wwwnnscript/prin.html
https://sites.google.com/site/dataminingforthemasses/Chapter07_DataSet_Trainin
g.csv
http://scikit-learn.org/stable/tutorial/basic/tutorial.html
http://www.astroml.org/sklearn_tutorial/general_concepts.html
VII
Verwendeter Datensatz
Verwendeter Datensatz
Dr. Matt North, URL: “https://sites.google.com/site/dataminingforthemasses/”
VIII
Eidesstattliche Versicherung
Ich versichere hiermit, dass ich die vorliegende Bachelorthesis selbstständig und
ohne fremde Hilfe angefertigt und keine andere als die angegebene Literatur benutzt habe. Alle von anderen Autoren wörtlich übernommenen Stellen wie auch
die sich an die Gedankengänge anderer Autoren eng anlehnenden Ausführungen
meiner Arbeit sind besonders gekennzeichnet. Diese Arbeit wurde bisher in gleicher oder ähnlicher Form keiner anderen Prüfungsbehörde vorgelegt und auch
nicht veröffentlicht.
Berlin, den 29. September 2013
Herunterladen