Trainieren von Machine Learning-Modellen

Apache Spark in Microsoft Fabric ermöglicht maschinelles Lernen mit Big Data und bietet so die Chance, wertvolle Erkenntnisse aus umfangreichen strukturierten, unstrukturierter und sich schnell verändernden Daten zu gewinnen. Beim Trainieren von Machine Learning-Modellen mithilfe von Apache Spark in Microsoft Fabric gibt es mehrere Optionen: Apache Spark MLlib, SynapseML und verschiedene andere Open-Source-Bibliotheken.

Apache SparkML und MLlib

Apache Spark in Microsoft Fabric bietet ein einheitliches Open-Source-Framework für die Parallelverarbeitung von Daten, das die arbeitsspeicherinterne Verarbeitung unterstützt, um die Leistung von Big Data-Analysen zu steigern. Die Spark-Verarbeitungs-Engine ist auf Geschwindigkeit, einfache Nutzung und anspruchsvolle Analysen ausgelegt. Dank seiner verteilten In-Memory-Datenverarbeitungsfunktionen eignet sich Spark besonders für iterative Algorithmen beim maschinellen Lernen und für Graphberechnungen.

Es gibt zwei skalierbare Bibliotheken für maschinelles Lernen, die algorithmische Modellierungsfunktionen in dieser verteilten Umgebung bereitstellen: MLlib und SparkML. MLlib enthält die Original-API, die auf Grundlage von RDDs erstellt wurde. SparkML ist ein neueres Paket, das eine API auf höherer Ebene bereitstellt, die auf Dataframes basiert, um ML-Pipelines zu erstellen. SparkML unterstützt noch nicht alle Features von MLlib, ersetzt jedoch MLlib als Machine Learning-Standardbibliothek in Spark.

Hinweis

Weitere Informationen zum Erstellen eines SparkML-Modells finden Sie im Artikel Trainieren von Modellen mit Apache Spark MLlib.

Die Microsoft Fabric-Runtime für Apache Spark enthält mehrere populäre Open-Source-Pakete zum Trainieren von Machine Learning-Modellen. Diese Bibliotheken enthalten wiederverwendbaren Code, den Sie in Ihren Programmen oder Projekten nutzen können. Zu den relevanten Machine Learning-Bibliotheken, die standardmäßig enthalten sind, gehören die folgenden:

  • Scikit-learn ist eine der beliebtesten Machine Learning-Bibliotheken für einen Knoten für klassische ML-Algorithmen. Scikit-learn unterstützt die meisten beaufsichtigten und unbeaufsichtigten Lernalgorithmen und kann ebenfalls für Data Mining und Datenanalyse verwendet werden.

  • XGBoost ist eine beliebte Machine Learning-Bibliothek, die optimierte Algorithmen zum Trainieren von Entscheidungsstrukturen und zufälligen Gesamtstrukturen enthält.

  • PyTorch und Tensorflow sind leistungsfähige Deep Learning-Bibliotheken von Python. Mithilfe dieser Bibliotheken können Sie Modelle mit einzelnen Computern erstellen, indem Sie die Anzahl von Executors in Ihrem Pool auf Null festlegen. Auch wenn Apache Spark in dieser Konfiguration nicht funktionsfähig ist, stellt es eine einfache und kostengünstige Möglichkeit dar, Modelle mit einzelnen Computern zu erstellen.

SynapseML

SynapseML (zuvor als MMLSpark bezeichnet) ist eine Open-Source-Bibliothek, die die Erstellung hochgradig skalierbarer Machine Learning-Pipelines (ML) vereinfacht. Diese Bibliothek ist darauf ausgelegt, die Produktivität von Data Scientists mit Spark zu steigern, die Experimentierrate zu erhöhen und innovative Verfahren für das maschinelle Lernen – einschließlich Deep Learning – in großen Datasets zu nutzen.

SynapseML bietet zusätzlich zu den SparkML-APIs auf niedriger Ebene eine weitere Ebene beim Erstellen skalierbarer ML-Modelle, z.B. zum Indizieren von Zeichenfolgen, Umwandeln von Daten in ein von Algorithmen für maschinelles Lernen erwartetes Layout und Zusammenstellen von Featurevektoren. Die SynapseML-Bibliothek vereinfacht diese und andere gängige Aufgaben zum Erstellen von Modellen in PySpark.

Dieser Artikel bietet eine Übersicht über die verschiedenen Optionen zum Trainieren von Machine Learning-Modellen innerhalb von Apache Spark in Microsoft Fabric. In den folgenden Tutorials erfahren Sie mehr über das Modelltraining: