Datenanalyse und maschinelles Lernen: Sag ja zu Knime
Knime ist genial für Datenanalyse und KI-Training. Doch obwohl man nicht coden muss, ist es für Anfänger nicht leicht. Zeit für ein Tutorial mit Pflanzen.

2004 gestartet, ist Knime inzwischen eines der führenden Tools für Data Science und maschinelles Lernen geworden. Es eignet sich hervorragend dazu, Daten aus unterschiedlichen Quellen zusammenzuführen, zu analysieren und (graphisch) aufzuarbeiten, automatisiert Reports zu erstellen und KI-Modelle zu trainieren.
- Datenanalyse und maschinelles Lernen: Sag ja zu Knime
- Einfügen der Nodes zur Datenvorverarbeitung
- Klassifikator trainieren und evaluieren
- Für Fortgeschrittene: Parameter-Optimierung via Flow-Programmierung
Dieser Text soll eine Einführung in Knime sein. Anhand des Hello-World-Äquivalents des maschinellen Lernens, dem Training eines Klassifikators auf dem Iris flower data set möchte ich zeigen, wie der Einstieg in Knime gelingt. Aber auch Fortgeschrittene kommen nicht zu kurz, denn abschließend gebe ich noch einen Einblick in Knimes Flow-Programmierung zur automatischen Parameter-Optimierung von Lernverfahren. Alle gezeigten Workflows können selbst nachgebaut oder von hier heruntergeladen (Zip-Archiv) werden.
Knime (gesprochen: Neim) steht für Konstanz Information Miner und wurde um 2004 von Michael Berthold an der Universität Konstanz ins Leben gerufen. Seit 2008 existiert mit der Knime AG sogar ein eigens gegründetes Unternehmen in der Schweiz, das professionellen Support sowie den Knime-Server als weiteres Software-Produkt anbietet.
Modular und flexibel einsetzbar
Wenn von Knime gesprochen wird, ist meist die Knime Analytics Platform gemeint. Dabei handelt es sich um eine auf der Eclipse Rich Client Platform (Eclipse RCP) basierende, unter GPL v3 stehende Desktop-Software zum Erstellen von Workflows zur Datenverarbeitung.
Aktuell liegt die Knime Analytics Platform in Version 4.4.2 vor, wird aber regelmäßig gepflegt und kann im Quellcode auf Github angesehen werden. Neben der Analytics Platform existiert noch der Knime-Server, der die Ausführung von Workflows in einem Backend und ihre interaktive Nutzung über Formulare und Visualisierungen gestattet. Im Folgenden liegt der Fokus auf der Analytics Platform, im Text der Einfachheit halber nur "Knime" genannt.
Knimes große Stärke ist neben der einfachen Nutzbarkeit seine Modularität, was die Software für viele Einsatzbereiche interessant macht. So kann Knime über seine Extensions auf verschiedenste Datenquellen lesend und schreibend zugreifen, angefangen von einfachen Dateitypen wie *.csv oder *.arff, über Datenbankzugriffe via SQL bis hin zum Zugriff auf Big-Data-Umgebungen oder Webressourcen.
Es gibt Extensions für Keras, Weka, Java, Python
Aber auch umfassende Transformationen dieser Daten für die Text-, Bild- und Sprachverarbeitung sind möglich. Ferner existieren Extensions für populäre Open-Source-Lösungen wie Keras, Weka und sogar Programmcode in Java, R oder Python lässt sich integrieren. Die Knime AG bietet umfassenden Community-Support, angefangen von offiziellen Tutorials auf Youtube bis hin zu Anleitungen, um eigene Extensions zu entwickeln.
Knime wird nach meiner Erfahrung sehr unterschiedlich eingesetzt. In der Lehre dient es vor allem zur Erklärung von Algorithmen und Methoden, in der Industrie für Datenanalysen und Reports. Ich selbst nutze Knime meist als Rapid-Prototyping-Werkzeug, um schnell einen Überblick über Daten zu gewinnen und Ideen zur Datenanalyse und zum maschinellen Lernen zu evaluieren.
Auf diese Weise lässt sich effizient herausfinden, welche Ansätze funktionieren, so dass sie unter Nutzung verwandter Open-Source-Bibliotheken in nativen Code portiert werden können. Vorsicht ist jedoch bei der Nutzung im Hinblick auf die Open-Source-Lizenzen geboten. Während Knime selbst unter GPL v3 steht, können die Extensions ganz anders lizenziert sein, so dass bei einem produktiven Einsatz unbedingt die Kompatibilität der Lizenzen zueinander geprüft werden sollte.
Knime für die erste Nutzung einrichten
Für unser Beispiel laden wir zuerst die aktuelle Knime-Version herunter. Nach Installation und Start der Software fragt sie nach dem Speicherort des Workspaces, der irgendwo auf einem Laufwerk liegen kann. Der Workspace ist der zentrale Ort, wo Knime die Workflows speichern wird.
Anschließend begrüßt Knime mit seinem Startbildschirm, der ähnlich wie in diesem Screenshot aussehen sollte.
Als nächstes kann das Iris flower data set über den Data-Folder-Link von der Website geladen und irgendwo auf dem Laufwerk entpackt werden. Der eigentliche Datensatz besteht aus einer CSV-Datei, die für 150 Pflanzen drei verschiedener Arten die Breite und Länge der Kelch- (sepal) und Blütenblätter (petal) enthält. Ziel wird es sein, einen Klassifikator zu trainieren, der anhand dieser Breiten- und Längenangaben die richtige Pflanzenart vorhersagt.
Nun wird über File > New... > New KNIME Workflow ein neuer Workflow erstellt, ein Name vergeben, (zum Beispiel: IrisDataSetProject) und der Dialog via Finish geschlossen. Falls nicht automatisch geschehen, öffnet ein Doppelklick auf den Namen im Knime Explorer den soeben erstellten Workflow in der Fenstermitte und zeigt einen weißen Hintergrund mit Karo-Muster.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Einfügen der Nodes zur Datenvorverarbeitung |
Also Data Science wird ja genau deswegen häufig als der Schnittpunkt von...
Kommentieren