Auswählen Ihres Szenarios und Aufbereiten von Daten

Abgeschlossen

In dieser Lerneinheit erfahren Sie, wie Sie ein Szenario und eine Trainingsumgebung auswählen und Ihre Daten für das Training in Model Builder aufbereiten.

Starten des Trainingsprozesses

Zum Starten des Trainingsprozesses müssen Sie einer neuen oder vorhandenen .NET-Anwendung ein neues Machine Learning-Modellelement (ML.NET) hinzufügen.

Tipp

Portabilität ist einer der Vorteile, die Klassenbibliotheken Ihnen bieten. Klassenbibliotheken machen es einfach, von der Konsole, dem Desktop, dem Web und jedem anderen Typ von .NET-Anwendung aus auf alle Modelle zu verweisen, die Teil einer Bibliothek sind. Daher wird empfohlen, einer Klassenbibliothek Machine Learning-Modellelemente (ML.NET) hinzuzufügen.

Das Machine Learning Modell-Element (ML.NET) fügt dem Projekt eine Datei mit der Dateierweiterung MBCONFIG hinzu. Dateien, die die Erweiterung MBCONFIG verwenden, sind in JSON erstellte Model Builder-Konfigurationsdateien. Diese Dateien ermöglichen Folgendes:

  • Geben Sie einen Namen für das Modell ein.
  • Mit anderen Personen in Ihrem Team über die Quellcodeverwaltung zusammenarbeiten.
  • Beibehalten des Zustands. Wenn Sie zu einem beliebigen Zeitpunkt im Trainingsprozess Model Builder schließen müssen, wird der Zustand gespeichert, und Sie können später an der Stelle weiterarbeiten, an der Sie aufgehört haben.

Auswählen eines Szenarios

Der erste Schritt zum Trainieren eines Machine Learning-Modells ist die Entscheidung, welches Szenario und welche Machine Learning-Aufgabe am besten geeignet sind. Außerdem müssen Sie festlegen, was Sie vorhersagen möchten.

Was ist ein Szenario?

Ein Szenario beschreibt das Problem, das Sie mit Ihren Daten lösen möchten. Zu den gängigsten Szenarien gehören die in der vorherigen Lerneinheit aufgeführten Fälle:

  • Kategorisieren von Daten: Organisieren von Nachrichtenartikeln nach Thema
  • Vorhersagen eines numerischen Werts: Schätzen des Preises eines Hauses
  • Gruppieren von Elementen mit ähnlichen Merkmalen: Kundensegmentierung
  • Klassifizieren von Bildern: Markieren eines Bilds basierend auf dessen Inhalt
  • Empfehlen von Elementen: Filmempfehlungen
  • Erkennen von Objekten in einem Bild: Erkennen von Fußgängern und Fahrrädern an einer Kreuzung

Diese Szenarien sind Machine Learning-Aufgaben zugeordnet. Eine Machine Learning-Aufgabe ist die Art von Vorhersage oder Rückschluss, die auf der Grundlage des gestellten Problems oder der Frage und der verfügbaren Daten gemacht wird.

Machine Learning-Aufgaben lassen sich in der Regel in zwei Kategorien unterteilen:

  • Überwacht
  • Unbeaufsichtigt

Der Hauptunterschied zwischen den beiden Kategorien liegt darin, ob die Bezeichnung oder der Wert, den Sie vorhersagen möchten, bekannt ist.

Bei überwachten Aufgaben ist die Bezeichnung bekannt. Beispiele für überwachte Machine Learning-Aufgaben:

  • Klassifizierung
    • Binäre Klassifizierung (zwei Kategorien)
    • Multiklassen-Klassifizierung (zwei oder mehr Kategorien)
    • Image
  • Regression

Bei nicht überwachten Aufgaben ist die Bezeichnung unbekannt. Beispiele für nicht überwachte Machine Learning-Aufgaben:

  • Clustering
  • Anomalieerkennung

In Model Builder unterstützte Szenarien

Model Builder unterstützt die folgenden Szenarien, die Machine Learning-Aufgaben zugeordnet sind:

Szenario ML-Aufgabe Anwendungsfall
Datenklassifizierung Binäre und Multiklassen-Klassifizierung Organisieren von Artikeln nach Thema
Wertvorhersage Lineare Regression Vorhersagen des Preises eines Hauses basierend auf dessen Merkmalen
Bildklassifizierung Bildklassifizierung (Deep Learning) Organisieren von Bildern nach Tierarten basierend auf dem Inhalt eines Bilds
Empfehlung Empfehlung Empfehlen von Filmen basierend auf den Vorlieben ähnlicher Benutzer
Objekterkennung Objekterkennung (Deep Learning) Identifizieren physischer Schäden in einem Bild

Auswählen eines Szenarios für Predictive Maintenance

Abhängig vom Aussehen Ihrer Daten kann das Predictive Maintenance-Problem mithilfe verschiedener Aufgaben modelliert werden. Da die Bezeichnung für Ihren Anwendungsfall ein binärer Wert (0 oder 1) ist, der beschreibt, ob eine Maschine defekt ist, ist das Szenario der Datenklassifizierung geeignet.

Auswählen Ihrer Umgebung

Nachdem Sie die Datenklassifizierung ausgewählt haben, müssen Sie die Umgebung auswählen, in der Sie Ihr Machine Learning-Modell trainieren möchten. Umgebungen beschreiben die Computeressourcen, die Sie zum Trainieren Ihres Machine Learning-Modells verwenden.

Unterstützte Umgebungen in Model Builder

Model Builder unterstützt die folgenden Umgebungsoptionen:

Szenario Lokale CPU Lokale GPU Azure-GPU
Datenklassifizierung ✔️
Wertvorhersage ✔️
Bildklassifizierung ✔️ ✔️ ✔️
Empfehlung ✔️
Objekterkennung ✔️

Je nach Anwendungsfall gibt es verschiedene Gründe, warum Sie eine lokale oder Azure-Umgebung auswählen können.

Lokale Umgebungen

Es gibt verschiedene Gründe, aus denen Sie lokale Computeumgebungen in Betracht ziehen können:

  • Ein lokales Training verursacht keine Kosten, da Sie die Ressourcen Ihres Computers nutzen.
  • Sie möchten nicht, dass Ihre Daten Ihren Computer oder Ihr Rechenzentrum verlassen.

Azure-Umgebungen

Szenarios wie Bildklassifizierung und Objekterkennung sind ressourcenintensiv. Die Verwendung einer GPU kann den Trainingsprozess häufig beschleunigen. Wenn Sie nicht über eine GPU oder einen Computer mit ausreichend CPU oder RAM verfügen, kann das Auslagern des Trainingsprozesses an Azure Ihr System entlasten.

Laden und Aufbereiten Ihrer Daten

Wenn Sie Ihr Szenario und Ihre Trainingsumgebung ausgewählt haben, ist es an der Zeit, Ihre Daten zu laden und vorzubereiten.

Daten sind die wichtigste Komponente zum Erstellen von Machine Learning-Modellen. Der Prozess zum Laden von Daten in Model Builder besteht aus drei Schritten:

  1. Auswählen des Datenquellentyps
  2. Geben Sie den Speicherort Ihrer Daten an.
  3. Auswählen des Spaltenzwecks

Auswählen des Datenquellentyps

Abhängig von Ihrem Szenario unterstützt Model Builder das Laden von Daten aus den folgenden Quellen:

  • Dateien mit Trennzeichen (Komma, Semikolon, Tabstopp)
  • Lokale und Remote-SQL Server-Datenbanken
  • Bilder (JPG und PNG)

Angeben des Speicherorts Ihrer Daten

Nachdem Sie Ihren Datenquellentyp ausgewählt haben, müssen Sie den Speicherort des Datasets angeben. Dabei kann es sich um ein Verzeichnis, einen Dateipfad oder eine Datenbankverbindungszeichenfolge handeln. Dies hängt vom zuvor ausgewählten Szenario und Datenquellentyp ab.

Wenn eine Datenquelle in Model Builder ausgewählt wird, analysiert Model Builder die Daten und versucht, Folgendes zu identifizieren:

  • Header und Spaltennamen
  • Spaltentrennzeichen
  • Spaltendatentypen
  • Spaltenzweck
  • Dezimaltrennzeichen

Nachdem die Daten geladen wurden, zeigt Model Builder eine Vorschau einiger Elemente in Ihrem Dataset an.

Auswählen des Spaltenzwecks

Abhängig vom gewählten Szenario müssen Sie den Zweck bestimmter Spalten definieren. In Szenarien wie Datenklassifizierung und Wertvorhersage müssen Sie auswählen, welche Ihrer Spalten die Spalte ist, die Sie vorhersagen möchten (Bezeichnung).

Standardmäßig werden alle anderen Spalten, die nicht die Bezeichnung sind, als Features verwendet. Features sind Spalten, die als Eingaben zum Vorhersagen der Bezeichnung verwendet werden.

Erweiterte Datenoptionen

Model Builder bietet erweiterte Datenoptionen, um anzupassen, wie Ihre Daten geladen werden. Mit diesen Optionen können Sie Einstellungen für Ihre Spalten und die Datasetformatierung anpassen.

Für Spalten können Sie die folgenden Einstellungen auswählen:

  • Zweck: Soll die Spalte ein Feature oder eine Bezeichnung sein oder ignoriert werden? Sie können nur eine Spalte als Bezeichnung auswählen.
  • Datentyp: Handelt es sich bei dem Wert um einen Gleitkommawert mit einfacher Genauigkeit, um eine Zeichenfolge oder einen booleschen Wert?
  • Kategorisch: Repräsentiert die Spalte einen Kategoriewert (z. B. niedrig, mittel, hoch)?

Bei der Datenformatierung können Sie auswählen, ob die Daten Spaltenüberschriften, das Spaltentrennzeichen (Komma, Semikolon, Tabulator) und den Dezimaltrennzeichentyp (Punkt oder Komma) enthalten.

Grundlegendes zum Predictive Maintenance-Dataset

In diesem Modul wird das AI4I 2020 Predictive Maintenance Dataset verwendet. Dieser synthetische Datensatz spiegelt reale, in der Industrie verwendete Predictive Maintenance-Daten wider. Das Dataset umfasst 10.000 Datenpunkte und 14 Spalten. Es stammt aus:

Explainable Artificial Intelligence for Predictive Maintenance Applications, Stephan Matzka, Third International Conference on Artificial Intelligence for Industries (AI4I 2020), 2020 (im Druck), und wird im UCI Machine Learning Repository – Dua, D. und Graff, C. (2019). UCI Machine Learning Repository http://archive.ics.uci.edu/ml. Irvine, CA: University of California, School of Information and Computer Science

Im Folgenden finden Sie eine Vorschau der Daten:

UDI Product ID type Air temperature [K] Process temperature [K] Rotational speed [rpm] Torque [Nm] Tool wear [min] Machine failure TWF HDF PWF OSF RNF
1 M14860 M 298.1 308.6 1551 42.8 0 0 0 0 0 0 0
162 L47341 L 298.3 308.1 1412 52.3 218 1 0 0 0 1 0

Die Spalten werden wie folgt definiert:

  • UDI: Der Index der Zeile.
  • Product ID: Ein Produktbezeichner, der eine Produkttypkategorie und eine variantenspezifische Seriennummer enthält.
  • Type: Produktqualitätskategorie. Die Werte sind L (niedrig; 50 % aller Produkte), M (mittel; 30 %) oder H (hoch; 20 %).
  • Air temperature [K], Process temperature [K], Rotational speed [rpm], Torque [Nm], Tool wear [min]: von Sensoren erfasste Werte.
  • Machine failure: Binäre Bezeichnung (0 oder 1), die angibt, ob die Maschine ausgefallen ist.
  • TWF, HDF, PWF, OSF, RNF: unabhängige Maschinenausfallmodi. Der Wert 1 gibt an, dass der jeweilige Fehlermodus aufgetreten ist.

In diesem Szenario verwenden Sie nicht alle Spalten im Dataset, weil sie entweder keine Informationen für die Vorhersage oder redundante Informationen enthalten.

Da Sie vorhersagen möchten, ob eine Maschine ausfallen wird oder nicht, ist die Spalte Machine failure die Bezeichnung. In Model Builder können Sie für Features Daten aus den Spalten Product ID, Type und den verschiedenen Sensorspalten verwenden.

Wenngleich die Fehlermodi für die Diagnose der Fehlerursache nützlich sind, sind sie für Ihren Anwendungsfall nicht hilfreich. Dies liegt daran, dass Sie nur wissen möchten, ob eine Maschine ausgefallen ist oder nicht. Darüber hinaus werden ähnliche Informationen bereits durch die Spalte Machine failure erfasst. Deshalb können Sie diese Spalten ignorieren.

Fahren Sie mit der nächsten Lerneinheit fort, um Ihr Wissen über Szenarios, Umgebungen und die Datenaufbereitung zu überprüfen.