Freigeben über


Trainieren Ihres Modells mit ML.NET

In der vorherigen Phase dieses Lernprogramms haben wir die Voraussetzungen für das Erstellen Ihres eigenen Windows Machine Learning-Modells und ihrer App erläutert und ein bildset heruntergeladen, das verwendet werden soll. In dieser Phase erfahren Wir, wie Sie den ML.NET Modell-Generator verwenden, um unser Bildset in ein Bildklassifizierungsmodell umzuwandeln.

Erstellen Ihres Projekts

  1. Öffnen Sie Visual Studio, und wählen Sie "Neues Projekt erstellen" aus.

Erstellen eines neuen Projekts für den Modell-Generator

  1. Geben Sie in der Suchleiste .NET ein, wählen Sie C# als Sprache und Konsole als Plattform aus, und wählen Sie dann die C#-Konsolen-App -Projektvorlage (.NET Core) aus.

Erstellen eines neuen .NET-Projekts

  1. Im Konfigurationsfenster:
  • Geben Sie dem Projekt einen Namen. Hier haben wir mlNETTraining genannt.
  • Wählen Sie den Speicherort für Ihr Projekt aus.
  • Stellen Sie sicher, dass das Kontrollkästchen Place solution and project in the same directory nicht aktiviert ist.
  • Drücken Sie create , um Ihr Projekt zu erstellen.

Neues Projekt konfigurieren

Einrichten des Modell-Generators

Jetzt fügen Sie dem Projekt den Modell-Generator hinzu.

  1. Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das MLNETTraining-Projekt, und wählen Sie Add > Machine Learning

Hinzufügen von maschinellem Lernen zu Ihrem Projekt

Auf diese Weise öffnen Sie ML.NET Modell-Generator in einem neuen angedockten Toolfenster in Visual Studio. Der Modell-Generator führt Sie durch den Prozess der Erstellung eines Machine Learning-Modells.

Liste der Modell-Generator-Szenarien

Der erste Schritt besteht darin, das entsprechende Szenario auszuwählen. Nicht alle Szenarien unterstützen das ONNX-Format.

Wenn es sich bei der Schulungsumgebung um die Azure-Cloud handelt, befinden sich die generierten Modelle im ONNX-Format und können problemlos von der Windows ML-App ohne Konvertierung genutzt werden. Wenn Sie sich jedoch entscheiden, Ihr Machine Learning-Modell lokal auf Ihrem Computer zu trainieren, befindet sich das generierte Modell im ML.NET Format.

  • Lokale CPU-Schulung wird für alle Szenarien mit Ausnahme der Objekterkennung unterstützt.
  • Lokale GPU-Schulung wird für die Bildklassifizierung unterstützt.
  • Azure-Schulung wird für die Bildklassifizierung und Objekterkennung unterstützt.

In diesem Lernprogramm trainieren Sie das Imageklassifizierungsmodell in der Azure-Schulungsumgebung. Das Ausgabemodell wird im ONNX-Format verwendet. Das Azure-Konto ist erforderlich, um die Schulung abzuschließen.

  1. Wählen Sie das Bildklassifizierungsszenario aus.

  2. Wählen Sie "Arbeitsbereich einrichten" aus, um Ihre Azure-Schulungsumgebung einzurichten.

Einrichten Ihres Azure-Arbeitsbereichs

Melden Sie sich in der oberen rechten Ecke bei dem Konto an, das Ihrem Azure-Abonnement zugeordnet ist. Im folgenden Menü:

  • Wählen Sie das entsprechende Abonnement aus.
  • Wählen Sie einen neuen Maschinellen Lernarbeitsbereich aus, und erstellen Sie diesen.
  • Wählen Sie eine neue Computeressource aus, oder erstellen Sie sie.
  • Geben Sie ihrem Arbeitsbereich den Namen – ImageClassificationMLNET.

Konfigurieren Ihres Azure-Arbeitsbereichs

Von Bedeutung

Wenn Sie den Machine Learning-Arbeitsbereich nicht aus dem Modell-Generator erstellen können, führen Sie die folgenden Schritte aus, um einen Arbeitsbereich manuell aus Ihrem Azure-Portal zu erstellen. Andernfalls können Sie mit Schritt 4 fortfahren.

Wählen Sie unter Ihrem Azure-Konto die Option "Ressource erstellen" aus:

Verfügbare Azure-Ressourcen

Suchen Sie in der Suchleiste nach einem Maschinellen Lernen.

Suchen nach Maschinellem Lernen in der Azure-Ressourcenliste

Drücken Sie "Erstellen", um einen neuen Maschinellen Lernarbeitsbereich zu erstellen.

Die Azure Machine Learning-Ressource

Um einen neuen Arbeitsbereich zu erstellen, müssen Sie Ihren Abonnementnamen angeben, eine neue Ressourcengruppe auswählen oder erstellen, dem Arbeitsbereich einen Namen geben und alle erforderlichen Parameter wie Region, Speicherkonto usw. definieren.

Einrichten Ihres Azure ML-Arbeitsbereichs

Nachdem Sie Ihren Arbeitsbereich eingerichtet und eine neue Schulungsumgebung in ML.NET erstellt haben, können Sie zum nächsten Schritt wechseln.

Die ML.NET Schulungsumgebung

Warten Sie, bis die Bereitstellung von Machine Learning Services abgeschlossen ist.

Der nächste Schritt besteht darin, die Daten dem Modell-Generator hinzuzufügen.

  1. Navigieren Sie zum Speicherort des Bild-Datasets, und wählen Sie den Schulungsordner mit den relevanten Lebensmittelkategorien aus. In diesem Lernprogramm trainieren Sie das Modell, um Wüste, Suppe und Obst zu erkennen, sodass Sie nur diese Kategorien in unserem Datasetordner benötigen.

Hinzufügen von Daten zum ML-Modell

Jetzt sind Sie bereit, zum Schulungsteil zu wechseln!

Trainieren Ihres Modells

Der Modell-Generator wertet viele Modelle mit unterschiedlichen Algorithmen und Einstellungen aus, um Ihnen das bestmögliche Modell zu bieten.

  1. Wählen Sie als Nächstes die Option "Schulung starten" aus, um den Schulungsvorgang zu starten. Der ML.Net Modell-Generator beginnt mit dem Hochladen von Daten in Azure, bereitet den Arbeitsbereich vor und initiiert dann den Schulungsvorgang.

Trainieren Ihres Machine Learning-Modells

Sobald die Schulung abgeschlossen ist, wird eine Zusammenfassung der Schulungsergebnisse angezeigt.

Erfolgreiche Modellschulung

Optimale Genauigkeit – zeigt Ihnen die Genauigkeit des besten Modells, das der Modell-Generator gefunden hat. Eine höhere Genauigkeit bedeutet, dass das Modell bei Testdaten korrekter vorhergesagt hat. In unserem Fall kann das Modell das richtige Ergebnis mit 95,42% vertrauen.

Auswertung der Ergebnisse

  1. Bewegen Sie den nächsten Schritt, um die Schulungsergebnisse auszuwerten.

  2. Wählen Sie das Bild aus dem Auswertungsordner des Datasets aus, und erkunden Sie die Vorhersage.

Modellauswertungsergebnisse

Hinzufügen des Modells zur Lösung

ML.NET Modell-Generator kann automatisch sowohl das Machine Learning-Modell als auch die Projekte für Schulungen und das Verwenden des Modells zu Ihrer Lösung hinzufügen.

  1. Navigieren Sie zum Nutzungsteil des Schulungsvorgangs, und verkaufen Sie "Zu Lösung hinzufügen". Dadurch wird das generierte Modell zu Ihrem Lösungsordner hinzugefügt.

Hinzufügen Ihres Modells zu Ihrer Lösung

Im Projektmappen-Explorer sollten die Codedateien angezeigt werden, die vom Modell-Generator generiert wurden, einschließlich des Modells – bestModel.onnx im ONNX-Format.

Im Lösungs-Explorer angezeigtes Modell

Das Modell, das in der Azure-Cloudumgebung trainiert wurde, sodass das generierte Modell im ONNX-Format vorliegt.

Erkunden Ihres Modells

  1. Klicken Sie mit der rechten Maustaste auf die Datei "bestModel.onnx" und wählen Sie "Enthaltenden Ordner öffnen" aus.

  2. Öffnen Sie Ihre Modelldatei mit Netron-Programm.

  3. Drücken Sie auf den Eingabe1-Knoten, um die Modelleigenschaften zu öffnen.

Untersuchen der Eigenschaften Ihres Modells

Wie Sie sehen können, erfordert das Modell ein 32-Bit-Float-Tensorobjekt (mehrdimensionales Array) als Eingabe und gibt Tensor float als Ausgabe zurück. Wie das Modell erstellt wurde, gibt es nicht den Zeichenfolgenwert einer vorhergesagten Bezeichnung zurück, sondern ein Array von drei Zahlen, die jeweils die relevante Bezeichnung des Lebensmitteltyps darstellt. Sie müssen diese Werte extrahieren, um die richtige Vorhersage mit der Windows ML-App anzuzeigen.

Bezeichnung 1 Bezeichnung 2 Bezeichnung 3
0 1 2
Dessert Suppe Vegetable-Fruit

Nächste Schritte

Nachdem Sie Ihr Machine Learning-Modell trainiert haben, können Sie es in einer UWP-App mit Windows Machine Learning bereitstellen.