© Sylverarts Vectors/shutterstock.com
Windows Developer
Machine Learning mit Spark MLlib

Wie edel ist der Tropfen?

Eines der beliebtesten Themen im Big-Data-Umfeld ist Apache Spark. Spark ist eine Processing Engine, die oft mit Hadoop betrieben wird. Spark hat eine sehr spannende Machine Learning Library: Spark MLlib. Diese wollen wir uns in diesem Artikel anhand eines Beispiels im Zusammenhang mit Weinqualität etwas genauer ansehen.

Mario Meir-Huber


Spark baut in Sachen Machine Learning auf die vorhandenen Spark-APIs auf. Dadurch arbeitet der Entwickler auch hier mit DataFrames und dem DataFrames-API. Dies wird um Machine-Learning-Verfahren erweitert. Spark ist hierbei sehr flexibel einsetzbar und bietet Unterstützung für die Sprachen R, Python, Spark und Java. Die breite Unterstützung von Sprachen wie auch die verteilte Ausführung macht Spark im Data-Science- und Machine-Learning-Umfeld sehr populär.

Die wesentlichen Verfahren in der Machine-Learning-Sphäre unterscheiden sich durch die Arten, wie ein Programm lernen kann. Hierbei gibt es zwei wesentliche Verfahren: Supervised Learning und Unsupervised Learning. Im ersten Verfahren verfügt das Programm über eine Anzahl von Trainingsdaten, die bereits vollständig sind. Beim Supervised Learning gibt es bestimmte Eingangsdaten, die zu einem bestimmten Endergebnis geführt haben. Die gewünschten Ausgabevariablen bezeichnet man als Labels. Ein Label ist ein Wert, den man errechnen möchte. Beispiele hierfür sind etwa Daten über die Qualität von Produkten: Hat ein Produkt A gewisse Eigenschaften (z. B. Härtegrad, Farbe etc.), entspricht die Qualität des Produkts dem Wert X. Beim Supervised Learning steht eine gewisse Anzahl von bereits gemessenen Qualitäten (z. B. durch Menschen) zur Verfügung und man will die Qualität von neuen Produkten errechnen. Das Label (Qualität) ist der Zielwert, der basierend auf den Eigenschaften errechnet werden soll. Im Data-Science-Umfeld werden die Eigenschaften als Features bezeichnet. Wir werden diese Bezeichnung auch im Folgenden verwenden. Ein weiteres Beispiel für Supervised Learning könnte der Maschinenausfall sein. Im Trainingssatz lägen hierbei bestimmte Daten der Maschine, etwa Temperatur oder Geschwindigkeit, und ein Zustand (Ausfall oder kein Ausfall) vor. Mit einfachem Supervised Learning können wir dies berechnen.

Innerhalb der Supervised-Learning-Methodiken gibt es noch weitere Abstufungen: Semi-Supervised Learning, Active Learning und Reinforced Learning. Beim Semi-Supervised Learning handelt es sich um teilweise vorhandene Maschinendaten. Dies bedeutet, dass einige Datensätze unvollständig sind und einige Male das Label fehlt. Beim Active Learning bekommt der Algorithmus nur eine gewisse Anzahl an Trainingsdaten. Diese können beispielsweise vorher durch Menschen kategorisiert werden. Der Algorithmus muss also die jeweiligen Instanzen intelligent wählen, die gelabelt werden sollen. Beim Reinforced Learning wird...

Windows Developer
Machine Learning mit Spark MLlib

Wie edel ist der Tropfen?

Eines der beliebtesten Themen im Big-Data-Umfeld ist Apache Spark. Spark ist eine Processing Engine, die oft mit Hadoop betrieben wird. Spark hat eine sehr spannende Machine Learning Library: Spark MLlib. Diese wollen wir uns in diesem Artikel anhand eines Beispiels im Zusammenhang mit Weinqualität etwas genauer ansehen.

Mario Meir-Huber


Spark baut in Sachen Machine Learning auf die vorhandenen Spark-APIs auf. Dadurch arbeitet der Entwickler auch hier mit DataFrames und dem DataFrames-API. Dies wird um Machine-Learning-Verfahren erweitert. Spark ist hierbei sehr flexibel einsetzbar und bietet Unterstützung für die Sprachen R, Python, Spark und Java. Die breite Unterstützung von Sprachen wie auch die verteilte Ausführung macht Spark im Data-Science- und Machine-Learning-Umfeld sehr populär.

Die wesentlichen Verfahren in der Machine-Learning-Sphäre unterscheiden sich durch die Arten, wie ein Programm lernen kann. Hierbei gibt es zwei wesentliche Verfahren: Supervised Learning und Unsupervised Learning. Im ersten Verfahren verfügt das Programm über eine Anzahl von Trainingsdaten, die bereits vollständig sind. Beim Supervised Learning gibt es bestimmte Eingangsdaten, die zu einem bestimmten Endergebnis geführt haben. Die gewünschten Ausgabevariablen bezeichnet man als Labels. Ein Label ist ein Wert, den man errechnen möchte. Beispiele hierfür sind etwa Daten über die Qualität von Produkten: Hat ein Produkt A gewisse Eigenschaften (z. B. Härtegrad, Farbe etc.), entspricht die Qualität des Produkts dem Wert X. Beim Supervised Learning steht eine gewisse Anzahl von bereits gemessenen Qualitäten (z. B. durch Menschen) zur Verfügung und man will die Qualität von neuen Produkten errechnen. Das Label (Qualität) ist der Zielwert, der basierend auf den Eigenschaften errechnet werden soll. Im Data-Science-Umfeld werden die Eigenschaften als Features bezeichnet. Wir werden diese Bezeichnung auch im Folgenden verwenden. Ein weiteres Beispiel für Supervised Learning könnte der Maschinenausfall sein. Im Trainingssatz lägen hierbei bestimmte Daten der Maschine, etwa Temperatur oder Geschwindigkeit, und ein Zustand (Ausfall oder kein Ausfall) vor. Mit einfachem Supervised Learning können wir dies berechnen.

Innerhalb der Supervised-Learning-Methodiken gibt es noch weitere Abstufungen: Semi-Supervised Learning, Active Learning und Reinforced Learning. Beim Semi-Supervised Learning handelt es sich um teilweise vorhandene Maschinendaten. Dies bedeutet, dass einige Datensätze unvollständig sind und einige Male das Label fehlt. Beim Active Learning bekommt der Algorithmus nur eine gewisse Anzahl an Trainingsdaten. Diese können beispielsweise vorher durch Menschen kategorisiert werden. Der Algorithmus muss also die jeweiligen Instanzen intelligent wählen, die gelabelt werden sollen. Beim Reinforced Learning wird...

Neugierig geworden?


    
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang