Freigeben über


Trainieren Ihres Modells mit Custom Vision

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 die webbasierte Benutzerdefinierte Vision-Schnittstelle verwenden, um unsere Bildsätze in ein Bildklassifizierungsmodell umzuwandeln.

Azure Custom Vision ist ein Imageerkennungsdienst, mit dem Sie Eigene Image-IDs erstellen, bereitstellen und verbessern können. Der Custom Vision Service ist als eine Reihe nativer SDKs sowie über eine webbasierte Schnittstelle auf der Custom Vision-Website verfügbar.

Erstellen von benutzerdefinierten Vision-Ressourcen und -Projekten

Erstellen einer benutzerdefinierten Vision-Ressource

Um den benutzerdefinierten Vision-Dienst zu verwenden, müssen Sie benutzerdefinierte Vision-Ressourcen in Azure erstellen.

  1. Navigieren Sie zur Hauptseite Ihres Azure-Kontos, und wählen Sie Create a resource

Auswahl von Azure-Ressourcen

  1. Suchen Sie im Suchfeld nach Custom Vision, und Sie gelangen zum Azure Marketplace. Wählen Sie diese Option Create Custom Vision aus, um das Dialogfeld auf der Seite "Benutzerdefinierte Vision erstellen" zu öffnen.

Paketauswahl

  1. Wählen Sie auf der Seite "Benutzerdefinierte Vision" Folgendes aus:
  • Wählen Sie beide Training und Prediction Ressourcen aus.
  • Wählen Sie das Abonnement aus, um bereitgestellte Ressourcen zu verwalten. Wenn Ihr Azure-Abonnement nicht im Menü angezeigt wird, melden Sie sich ab, und öffnen Sie Ihr Azure-Konto mit denselben Anmeldeinformationen erneut, mit den Sie Ihr Konto geöffnet haben.
  • Erstellen Sie eine neue Ressourcengruppe, und geben Sie ihm einen Namen. In diesem Tutorial haben wir unsere MLTraining genannt, aber Sie können Ihren eigenen Namen wählen oder die bestehende Ressourcengruppe verwenden, wenn Sie über eine verfügen.
  • Geben Sie Ihrem Projekt einen Namen. In diesem Tutorial haben wir den Namen classificationApp verwendet, aber Sie können einen beliebigen Namen Ihrer Wahl verwenden.
  • Legen Sie für beide Ressourcen Training und Prediction den Standort als (US) East US und die Preisstufe als Free FO fest.
  1. Drücken Sie Review + create , um Ihre benutzerdefinierten Vision-Ressourcen bereitzustellen. Es kann einige Minuten dauern, bis Ihre Ressourcen bereitgestellt werden.

Bereitstellen einer neuen benutzerdefinierten Vision-Ressource

Erstellen eines neuen Projekts in custom Vision

Nachdem Sie Ihre Ressource erstellt haben, ist es an der Zeit, Ihr Schulungsprojekt in Custom Vision zu erstellen.

  1. Navigieren Sie in Ihrem Webbrowser zur Seite "Benutzerdefinierte Vision", und wählen Sie Sign in Melden Sie sich mit demselben Konto an, mit dem Sie sich beim Azure-Portal angemeldet haben.

  2. Wählen Sie diese Option New Project aus, um ein neues Projektdialogfeld zu öffnen.

Erstellen eines neuen Projekts

  1. Erstellen Sie ein neues Projekt wie folgt:
  • Name: Lebensmittelklassifizierung.
  • Description: Klassifizierung verschiedener Arten von Lebensmitteln.
  • Resource: Behalten Sie dieselbe Ressource bei, die Sie zuvor geöffnet haben – ClassificationApp [F0].
  • Project Types: classification
  • Classification Types: Multilabel (Multiple tags per image)
  • Domains: Food (compact).
  • Export Capabilities: Basic platforms (Tensorflow, CoreML, ONNX, ...)

Hinweis

Um in das ONNX-Format zu exportieren, stellen Sie sicher, dass Sie die Food (compact) Domäne auswählen. Nicht komprimierte Domänen können nicht in ONNX exportiert werden.

Von Bedeutung

Wenn Ihr angemeldetes Konto einem Azure-Konto zugeordnet ist, zeigt das Dropdownmenü "Ressourcengruppe" alle Azure-Ressourcengruppen an, die eine benutzerdefinierte Vision Service-Ressource enthalten. Wenn keine Ressourcengruppe verfügbar ist, vergewissern Sie sich, dass Sie sich bei customvision.ai mit demselben Konto angemeldet haben wie Sie sich beim Azure-Portal angemeldet haben.

  1. Nachdem Sie das Dialogfeld ausgefüllt haben, wählen Sie Create project aus.

Fertigstellen des Projekts

Hochladen des Schulungsdatensatzes

Nachdem Sie Ihr Projekt erstellt haben, laden Sie ein zuvor vorbereitetes Dataset mit Lebensmittelbildern aus Kaggle Open Datasets hoch.

  1. Wählen Sie Ihr FoodClassification Projekt aus, um die webbasierte Schnittstelle der Custom Vision-Website zu öffnen.

  2. Wählen Sie die Add images Schaltfläche aus, und wählen Sie dann aus Browse local files.

Dialogfeld

  1. Navigieren Sie zum Speicherort des Bild-Datasets, und wählen Sie den Schulungsordner – vegetable-fruitaus. Wählen Sie alle Bilder im Ordner aus, und wählen Sie dann aus open. Die Markierungsoption öffnet sich.

  2. Geben Sie vegetable-fruit in das My Tags Feld ein und drücken Sie Upload.

Hochladen von Bildern

Warten Sie, bis die erste Gruppe von Bildern in Ihr Projekt hochgeladen wird, und drücken Sie donedann . Die Auswahl der Kennzeichnung wird auf die gesamte Gruppe der Bilder angewendet, die Sie zum Hochladen ausgewählt haben. Deshalb ist es einfacher, Bilder aus bereits vordefinierten Bildgruppen hochzuladen. Sie können die Tags für einzelne Bilder jederzeit ändern, nachdem sie hochgeladen wurden.

Fortschritt des Bilduploads

  1. Nachdem die erste Gruppe von Bildern erfolgreich hochgeladen wurde, wiederholen Sie den Vorgang zweimal mehr, um die Bilder von Dessert und Suppe hochzuladen. Stellen Sie sicher, dass Sie sie mit den relevanten Tags versehen.

Am Ende haben Sie drei verschiedene Gruppen von Bildern bereit für die Schulung.

Anzeige von Bildtags

Trainieren des Modellklassifizierers

Sie trainieren nun das Modell, um das Gemüse, die Suppe und die Desserts aus der Reihe von Bildern zu klassifizieren, die Sie im vorherigen Teil heruntergeladen haben.

  1. Um den Schulungsvorgang zu starten, wählen Sie die Train Schaltfläche in der oberen rechten Ecke aus. Der Klassifizierer verwendet die Bilder, um ein Modell zu erstellen, das die visuellen Qualitäten jedes Tags identifiziert.

Schaltfläche „Train“ (Trainieren)

Es gibt eine Option zum Ändern des Wahrscheinlichkeitsschwellenwerts mithilfe des Schiebereglers in der linken oberen Ecke. Der Wahrscheinlichkeitsschwellenwert legt den Konfidenzgrad fest, über den eine Vorhersage verfügen muss, um als korrekt betrachtet zu werden. Wenn der Wahrscheinlichkeitsschwellenwert zu hoch ist, erhalten Sie eine korrektere Klassifizierung, aber weniger werden erkannt. Wenn der Wahrscheinlichkeitsschwellenwert hingegen zu niedrig ist, erkennen Sie viele weitere Klassifizierungen, aber mit einer niedrigeren Konfidenz oder mehr falsch positiven Ergebnissen.

In diesem Tutorial können Sie den Wahrscheinlichkeitsschwellenwert bei 50%beibehalten.

  1. Hier verwenden wir den Quick Training Prozess. Advanced Training verfügt über weitere Einstellungen und ermöglicht Es Ihnen, die für die Schulung verwendete Zeit speziell festzulegen, aber wir benötigen diese Steuerungsebene hier nicht. Drücken Sie Train , um den Schulungsvorgang zu initiieren.

Auswählen des Schulungstyps

Ein schneller Schulungsvorgang dauert nur ein paar Minuten. Während dieser Zeit werden Informationen zum Schulungsvorgang auf der Performance Registerkarte angezeigt.

Schulungsprozess

Auswerten und Testen

Auswertung der Ergebnisse

Sobald die Schulung abgeschlossen ist, wird die Zusammenfassung der ersten Schulungsiteration angezeigt. Sie umfasst die Schätzung der Modellleistung – Genauigkeit und Rückruf.

  • Die Genauigkeit gibt den Anteil der richtig identifizierten Klassifizierungen an. In unserem Modell ist genauigkeit 98,2%. Wenn unser Modell also ein Bild klassifiziert, ist es sehr wahrscheinlich, dass es richtig vorhergesagt wird.
  • Die Trefferquote gibt den Anteil der tatsächlichen Klassifizierungen an, die richtig identifiziert wurden. In unserem Modell beträgt die Erinnerungsrate 97,5%, so dass unser Modell die große Mehrheit der Bilder, die ihm präsentiert werden, richtig klassifiziert.
  • AP steht für zusätzliche Leistung. Dies stellt eine zusätzliche Metrik bereit, die die Genauigkeit und den Rückruf an unterschiedlichen Schwellenwerten zusammenfasst.

Modellschulungsauswertung

Das Modell testen

Bevor Sie das Modell exportieren, können Sie die Leistung testen.

  1. Wählen Sie Quick Test in der oberen rechten Ecke der oberen Menüleiste aus, um ein neues Testfenster zu öffnen.

Schaltfläche

In diesem Fenster können Sie eine URL des zu testenden Bilds angeben oder Browse local files ein lokal gespeichertes Bild auswählen.

Bild zum Testen auswählen

  1. Wählen Sie Browse local files aus, navigieren Sie zum Lebensmitteldatensatz, und öffnen Sie einen Überprüfungsordner. Wählen Sie ein beliebiges zufälliges Bild aus dem fruit-vegetable Ordner aus, und drücken Sie open.

Das Ergebnis der Tests wird auf dem Bildschirm angezeigt. Bei unserem Test klassifizierte der Modus das Bild erfolgreich mit 99,8% Sicherheit.

Testklassifizierungsergebnisse

Sie können die Vorhersage für Schulungen auf der Predictions Registerkarte verwenden, wodurch die Modellleistung verbessert werden kann. Weitere Informationen finden Sie unter Verbessern des Klassifizierers.

Hinweis

Möchten Sie mehr über Azure Custom Vision-APIs erfahren? Die Dokumentation zum Custom Vision Service enthält weitere Informationen zum Custom Vision-Webportal und SDK.

Exportieren des Modells nach ONNX

Nachdem wir unser Modell trainiert haben, können wir es nach ONNX exportieren.

  1. Wählen Sie die Performance Registerkarte und dann Export aus, um ein Exportfenster zu öffnen.

Schaltfläche

  1. Wählen Sie aus ONNX , um Ihr Modell in das ONNX-Format zu exportieren.

Wählen Sie Ihr Format aus

  1. Sie können die ONNX 16 Float-Option auswählen, falls erforderlich, aber in diesem Lernprogramm müssen wir keine Einstellungen ändern. Wählen Sie Export and Downloadaus.

Auswählen Ihrer Plattform

  1. Öffnen Sie die heruntergeladene .zip Datei, und extrahieren Sie die model.onnx Datei daraus. Diese Datei enthält das Klassifizierungsmodell.

Glückwunsch! Sie haben das Klassifizierungsmodell erfolgreich erstellt und exportiert.

Nächste Schritte

Nachdem wir nun über ein Klassifizierungsmodell verfügen, besteht der nächste Schritt darin, eine Windows-Anwendung zu erstellen und lokal auf Ihrem Windows-Gerät auszuführen.