5.3.1 grundkonzept, neue funktionen open-source-suiten ...€¦ · open-source-suiten rapidminer...

7
© mayato ® GmbH. Alle Rechte vorbehalten. Seite 67 Data Mining Studie 2011 | Praxistest & Benchmarking 5.3 WEKA 3.6.3 £5.3.1 Grundkonzept, neue Funktionen und Erweiterungen WEKA 3.6.3 ist eine bekannte und populäre Software- Suite für Data Mining. Sie wurde von der Universität von Waikato in Hamilton, Neuseeland entwickelt und wird kostenlos unter der GNU General Public License vertrieben. WEKA (Waikato Environment for Knowledge Analysis) war historisch betrachtet die erste frei verfügbare, quelloffene Data Mining Software. WEKA versteht sich als umfassende Bibliothek von in Java implementierten Data-Mining-Algorithmen, auf die entweder über eine der mitgelieferten Benutze- UREHUƃ¦FKHQ RGHU ¾EHU HLJHQH -DYD3URJUDPPH ]XJH- griffen werden kann. Beispiele für letztere Variante sind die in den maya- to Data Mining Studien 2009 bzw. 2010 getesteten Open-Source-Suiten RapidMiner und KNIME, mit denen die in WEKA implementierten Algorithmen genutzt werden können. Durch die offene Architektur und die Nutzung der Java- Programmiersprache kann WEKA auf vielen Bertriebs- systemen ausgeführt werden. :(.$ ZLUG PLW YLHU YHUVFKLHGHQHQ JUDƂVFKHQ %HQXW- zeroberfächen ausgeliefert: Explorer, Experimenter, KnowledgeFlow und Simple CLI. Nach dem Start von WEKA öffnet sich der WEKA GUI Chooser, der die Wahl einer der GUIs (Graphical User Interfaces) ermöglicht. Simple CLI (kurz für Command Line Interface) ist eine .RPPDQGR]HLOHQREHUƃ¦FKH ¾EHU GLH PLW :(.$%HIHK- len direkt auf die Funktionalitäten zugegriffen werden kann. Für die erste Beschäftigung mit WEKA ist Simple &/, QLFKW JHHLJQHW 'LHVH 2EHUƃ¦FKH LVW I¾U %HWULHEV- systeme gedacht, die keine eigene Kommandozeileno- EHUƃ¦FKH ELHWHQ 1XU VR N¸QQHQ LQ GLHVHQ )¦OOHQ :(.$ Kommandozeilenbefehle genutzt werden. [Abb. 29]: WEKA GUI Chooser [Abb. 30]: Simple CLI Benutzerschnittstelle

Upload: others

Post on 19-Oct-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 5.3.1 Grundkonzept, neue Funktionen Open-Source-Suiten ...€¦ · Open-Source-Suiten RapidMiner und KNIME, mit denen die in WEKA implementierten Algorithmen genutzt werden können

© mayato® GmbH. Alle Rechte vorbehalten. Seite 67

Data Mining Studie 2011 | Praxistest & Benchmarking

5.3 WEKA 3.6.3

5.3.1 Grundkonzept, neue Funktionen und Erweiterungen

WEKA 3.6.3 ist eine bekannte und populäre Software-

Suite für Data Mining. Sie wurde von der Universität

von Waikato in Hamilton, Neuseeland entwickelt und

wird kostenlos unter der GNU General Public License

vertrieben.

WEKA (Waikato Environment for Knowledge Analysis)

war historisch betrachtet die erste frei verfügbare,

quelloffene Data Mining Software.

WEKA versteht sich als umfassende Bibliothek von in

Java implementierten Data-Mining-Algorithmen, auf

die entweder über eine der mitgelieferten Benutze-

-

griffen werden kann.

Beispiele für letztere Variante sind die in den maya-

to Data Mining Studien 2009 bzw. 2010 getesteten

Open-Source-Suiten RapidMiner und KNIME, mit denen

die in WEKA implementierten Algorithmen genutzt

werden können.

Durch die offene Architektur und die Nutzung der Java-

Programmiersprache kann WEKA auf vielen Bertriebs-

systemen ausgeführt werden.

-

zeroberfächen ausgeliefert: Explorer, Experimenter,

KnowledgeFlow und Simple CLI. Nach dem Start von

WEKA öffnet sich der WEKA GUI Chooser, der die Wahl

einer der GUIs (Graphical User Interfaces) ermöglicht.

Simple CLI (kurz für Command Line Interface) ist eine

-

len direkt auf die Funktionalitäten zugegriffen werden

kann. Für die erste Beschäftigung mit WEKA ist Simple

-

systeme gedacht, die keine eigene Kommandozeileno-

Kommandozeilenbefehle genutzt werden.

[Abb. 29]: WEKA GUI Chooser

[Abb. 30]: Simple CLI Benutzerschnittstelle

Page 2: 5.3.1 Grundkonzept, neue Funktionen Open-Source-Suiten ...€¦ · Open-Source-Suiten RapidMiner und KNIME, mit denen die in WEKA implementierten Algorithmen genutzt werden können

Seite 68

Data Mining Studie 2011 | Praxistest & Benchmarking

© mayato® GmbH. Alle Rechte vorbehalten.

Der Experimenter bietet sich an, wenn man statistische

-

nen beispielsweise die Einstellungen für statistische

Tests vorgenommen werden, was mit den anderen

GUIs nicht möglich wäre. Für Data-Mining-Aufgaben ist

der Experimenter allerdings nicht geeignet und wird

daher hier nicht weiter betrachtet.

[Abb. 31]: WEKA Experimenter

Der WEKA Explorer bietet eine dialogorientierte Be-

nutzerschnittstelle. Über Dialogfenster oder Drop-

Down-Listen werden Einstellungen geändert, über

erstellten Modelle ausgeführt werden.

Durch diese Art der Modellierung ist es nicht möglich,

mehrere Modelle in einem Arbeitsgang zu erstellen,

was einen erheblichen Nachteil der sonst - nach der

Page 3: 5.3.1 Grundkonzept, neue Funktionen Open-Source-Suiten ...€¦ · Open-Source-Suiten RapidMiner und KNIME, mit denen die in WEKA implementierten Algorithmen genutzt werden können

© mayato® GmbH. Alle Rechte vorbehalten. Seite 69

Data Mining Studie 2011 | Praxistest & Benchmarking

[Abb. 32]: WEKA Explorer

Enterprise Miner zeigt die WEKA KnowledgeFlow-

Umgebung den erstellten Data-Mining-Prozess als

Java-Klassen) werden als Icons dargestellt und mit Pfei-

Darstellung des Analyseprozesses entsteht.

Die zur Verfügung stehenden Funktionen sind zu

Gruppen zusammengefasst:

› DataSources: Einlesen von Daten

› DataSinks: Speichern von Daten

› Filters: Auswahl von Datensätzen

› Clusterers: Segmentierungsalgorithmen

› Associations: Assoziations- und Warenkorb-

analysen

› Evaluation: Bewertung von Datensätzen

und Ergebnissen

› Visualization: Ergebnisvisualisierung

Diese Gruppen und die enthaltenen Funktionen neh-

men den oberen Bereich des Knowledge Flow

-

entwickelt wird.

Im unteren Bereich des Fensters wird der Programmsta-

tus oder wahlweise der Log angezeigt. Dieser Bereich

ist vor allem wichtig, wenn es um die Fehlersuche bzw.

-behebung geht.

Page 4: 5.3.1 Grundkonzept, neue Funktionen Open-Source-Suiten ...€¦ · Open-Source-Suiten RapidMiner und KNIME, mit denen die in WEKA implementierten Algorithmen genutzt werden können

Seite 70

Data Mining Studie 2011 | Praxistest & Benchmarking

© mayato® GmbH. Alle Rechte vorbehalten.

Die KnowledgeFlow-Umgebung ist die modernste der

vier angebotenen Möglichkeiten. Deshalb beschrän-

ken wir uns in dieser Studie im Folgenden darauf, den

-

che darzustellen.

5.3.2 Clusteranalyse

Datenvorverarbeitung

WEKA kann verschiedene Dateiformate einlesen, so

können z.B. csv-Dateien (mit dem CSVLoader) oder

Datenbanktabellen (mit dem DatabaseLoader, beide

aus der Funktionengruppe DataSources eingelesen

werden.

Am effizientesten ist jedoch das Format ARFF (At-

tribute Relation File Format), das speziell für WEKA

entwickelt wurde.

Deshalb ist es ratsam, zunächst die csv-Datei der Fall-

studie in das ARFF-Format zu konvertieren. Dies geht

am besten mit einem Zeilenkommando, genauer:

einem Aufruf der Java-Klasse CSVLoader.

Dieses kann entweder in einem Eingabeaufforde-

rungsfenster des Betriebssystems oder aber in der

Benutzeroberfläche Simple CLI abgesetzt werden.

Nach wenigen Sekunden steht die ARFF-Datei zur

Verfügung.

Nun kann mit der Entwicklung des Analyseprozesses

begonnen werden. Dazu wird aus dem GUI Chooser

die KnowledgeFlow-Oberfläche gestartet. In den

Workflow-Bereich wird dann als erstes aus der Grup-

pe DataSources ein ArffLoader hinzugefügt.

[Abb. 33]: WEKA KnowledgeFlow, Startansicht

Page 5: 5.3.1 Grundkonzept, neue Funktionen Open-Source-Suiten ...€¦ · Open-Source-Suiten RapidMiner und KNIME, mit denen die in WEKA implementierten Algorithmen genutzt werden können

© mayato® GmbH. Alle Rechte vorbehalten. Seite 71

Data Mining Studie 2011 | Praxistest & Benchmarking

Wie bei fast jedem Funktionssymbol werden die Ein-

stellungen vorgenommen, indem mit der rechten

Maustaste das Kontextmenü aufgerufen und daraus

“Configure” gewählt wird. Es öffnet sich ein neues

Dialogfenster, in dem man die jeweiligen Einstel-

lungen vornehmen kann - in diesem Fall ist das die

einzulesende ARFF-Datei. Aus Performance-Gründen

- mehr dazu später - verwenden wir hier eine 20%-

Zufallsstichprobe aus dem vollständigen Datensatz,

die durch Verwendung der Funktion Resampler aus

der Gruppe Unsupervised Filter erzeugt werden kann.

[Abb. 34]: Einstellungen des ArffLoader

In WEKA gibt es mehrere Typen von Datensätzen:

Rohdaten (genannt “dataSet”), Trainingsdaten (“trai-

ningSet”) und Testdaten (“testSet”) sind die wich-

tigsten. Die Funktionen aus der Gruppe DataSources

erzeugen Daten von Typ “dataSet”, also Rohdaten.

Die meisten Data-Mining-Verfahren, so auch die

Cluster-Verfahren können jedoch nicht auf Rohdaten,

sondern nur auf Trainings- oder Testdatensätze an-

gewandt werden.

Im nächsten Schritt muss der mit dem ArffLoader

erzeugte Rohdatensatz also in einen Trainings-

Datensatz umgewandelt werden. Auch hierfür gibt

es eine Funktion: Aus der Gruppe Evaluation wird

der TrainingSetMaker ausgewählt und dem Work-

flow hinzugefügt. Um den ArffLoader nun mit dem

TrainingSetMaker zu verbinden, wählt man aus dem

Kontextmenü des ArffLoader dataSet aus. Daraufhin

erscheint ein Pfeil, der sich mit allen Funktionen, die

einen dataSet verarbeiten können, verbinden lässt.

In unserem Fall ist das nur der TrainingSetMaker.

Page 6: 5.3.1 Grundkonzept, neue Funktionen Open-Source-Suiten ...€¦ · Open-Source-Suiten RapidMiner und KNIME, mit denen die in WEKA implementierten Algorithmen genutzt werden können

Seite 72

Data Mining Studie 2011 | Praxistest & Benchmarking

© mayato® GmbH. Alle Rechte vorbehalten.

Wählt man aus dem Kontextmenüs des ArffLoader

nun den Befehl “Start loading”, so werden beide

Funktionen ausgeführt und es steht als Ergebnis ein

Trainingsdatensatz zur Verfügung, auf den sich ein

Cluster-Verfahren anwenden lässt.

Datenanalyse

Durch die offene Java-Architektur von WEKA stehen

viele unterschiedliche Data-Mining-Verfahren zur Ver-

fügung. Im Standard-Umfang von WEKA gibt es alleine

16 verschiedene Entscheidungsbaumverfahren. In der

Gruppe der Clustering-Verfahren kann der Analyst zwi-

schen 12 Verfahren wählen.

Diese extrem große Menge an zur Verfügung stehen-

den Verfahren mag auf den ersten Blick als Pluspunkt

für WEKA erscheinen, erweist sich in der Praxis jedoch

eher als hinderlich: Im professionellen Einsatz hat man

im Normalfall nicht die Zeit, die Unterschiede zwischen

über 100 Verfahren herauszuarbeiten oder diese gar

zu testen. Da auch die zur Verfügung stehende Doku-

mentation im Detail nicht weiterhilft, bleibt oft nur,

zwei bis drei Verfahren nach einer groben Beschrei-

bung auszuwählen und zu hoffen, dass ein für das

jeweilige Problem passendes Verfahren darunter ist.

Für die Demonstration anhand unserer Fallstudie wäh-

len wir aus der Gruppe Clusterers die SimpleKMeans-

Funktion. Hier handelt es sich um eine Implementie-

rung des bekannten K-Means-Verfahrens, das zu den

schnelleren Clustering-Verfahren gehört.

Die SimpleKMeans-Funktion wird also hinzugefügt und

auf die oben beschriebene Weise mit dem Trainingsda-

tensatz verbunden. Die Parametrisierung erfolgt wie-

Die Analyst kann hier beispielsweise das verwendete

Distanzmaß, die gewünschte Anzahl der Cluster und

für die Laufzeitbegrenzung eine maximale Iterations-

anzahl wählen.

Der Analyst hätte hier auch gerne die Möglichkeit, die

für die Clusterbildung zu verwendenden Variablen aus-

zuwählen. Diese Funktion fehlt in allen WEKA-Cluster-

Funktionen. Daran kann man eine generelle Eigenart

der WEKA Knowledge Flow Benutzerschnittstelle er-

kennen: Jeder Knoten, d.h. jede Funktion hat genau

eine Aufgabe, der Analyst muss also selbst an jeden

-

bauen. Dies mag zwar zur Flexibilität des Tools beitra-

In diesem konkreten Fall muss also entweder eine Funk-

tion vorgeschaltet werden, die die gewünschten Vari-

ablen auswählt, oder der Eingangsdatensatz muss auf

die entsprechenden Variablen eingeschränkt werden.

Beides ist aufwändig und führt zu Zeitverlust bei der

[Abb. 35]: Verbinden zweier Funktionen in WEKA

Page 7: 5.3.1 Grundkonzept, neue Funktionen Open-Source-Suiten ...€¦ · Open-Source-Suiten RapidMiner und KNIME, mit denen die in WEKA implementierten Algorithmen genutzt werden können

© mayato® GmbH. Alle Rechte vorbehalten. Seite 73

Data Mining Studie 2011 | Praxistest & Benchmarking

[Abb. 35]: Verbinden zweier Funktionen in WEKA

Analyse. Für unsere Fallstudie wählen wir die Funktion

“Remove” aus der Funktionsgruppe Filters, mit der Va-

riablen von der weiteren Verarbeitung ausgeschlossen

werden können.

Sind die wenigen Parameter richtig eingetragen, so kann

die Berechnung wieder gestartet werden, indem die

erste Funktion des Flows, der ArffLoader, gestartet wird.

Alle nachfolgenden Knoten werden dann der Reihe

nach ausgeführt. Sind die beschriebenen Schritte bis

hin zum Cluster-Knoten getan, so geht die eigentliche

Berechnung der Cluster sehr schnell.

Bei vier Variablen, der 20%-Stichprobe, einer Clusteran-

zahl von 9 und maximal 500 Iterationsschritten dauert

es nur wenige Sekunden, bis die Cluster gefunden sind.

Siehe dazu auch Tab. 19.

[Abb. 37]: Parameter des SimpleKMeans Verfahrens

[Abb. 36]: Clustering-Verfahren in WEKA