Einstieg in die Bildklassifizierung in Azure
Sie können Bildklassifizierungen mit dem Azure KI Custom Vision-Dienst durchführen, der als Teil der Azure KI Services-Angebote verfügbar ist. Das ist im Allgemeinen einfacher und schneller, als eigenen Code für das Modelltraining zu schreiben. Zudem können auch Benutzer mit wenig bis gar keiner Erfahrung im Bereich Machine Learning eine effektive Bildklassifizierungslösung entwickeln.
Azure-Ressourcen für Azure KI Custom Vision
Das Entwickeln einer Bildklassifizierungslösung mit Azure KI Custom Vision besteht aus zwei Hauptaufgaben. Zuerst müssen Sie vorhandene Bilder verwenden und das Modell trainieren. Dann müssen Sie das Modell veröffentlichen, damit es von Clientanwendungen zum Generieren von Vorhersagen verwendet werden kann.
Für jede dieser Aufgaben benötigen Sie eine Ressource in Ihrem Azure-Abonnement. Folgende Ressourcenarten können verwendet werden:
- Custom Vision: Dies ist eine dedizierte Ressource für den Custom Vision-Dienst, die eine Trainingsressource, Vorhersageressource oder beides sein kann.
- Azure KI Services: eine allgemeine Ressource, die Azure KI Custom Vision zusammen mit vielen anderen Azure KI Services-Diensten enthält. Sie können diesen Ressourcentyp für das Training, Vorhersagen oder beides verwenden.
Die Trennung von Trainings- und Vorhersageressourcen ist nützlich, wenn Sie die Ressourcennutzung für das Modelltraining getrennt von Clientanwendungen verfolgen möchten, die mit dem Modell Bildklassen vorhersagen. Die Entwicklung einer Bildklassifizierungslösung kann dann jedoch etwas verwirrend sein.
Der einfachste Ansatz besteht darin, eine allgemeine Azure KI Services-Ressource sowohl für das Training als auch für die Vorhersage zu verwenden. Dies bedeutet, dass Sie sich nur mit einem Endpunkt (die HTTP-Adresse, unter der Ihr Dienst gehostet wird) und einem Schlüssel (geheimer Wert, mit dem sich Clientanwendungen authentifizieren) befassen müssen.
Wenn Sie eine Custom Vision-Ressource erstellen, werden Sie aufgefordert, Training, Vorhersage oder beides auszuwählen. Beachten Sie unbedingt, dass bei der Auswahl von „beides“ zwei Ressourcen erstellt werden: eine für das Training und eine für die Vorhersage.
Es ist auch möglich, einen gemischten Ansatz zu wählen, wobei Sie eine dedizierte Custom Vision-Ressource für das Training verwenden, Ihr Modell jedoch zur Vorhersage in einer Azure KI Services-Ressource bereitstellen. Damit dies funktioniert, müssen die Trainings- und Vorhersageressourcen in derselben Region erstellt werden.
Modelltraining
Um ein Klassifizierungsmodell zu trainieren, müssen Sie Bilder in Ihre Trainingsressource hochladen und sie mit den entsprechenden Klassenbeschriftungen kennzeichnen. Anschließend müssen Sie das Modell trainieren und die Trainingsergebnisse bewerten.
Sie können diese Aufgaben im Custom Vision-Portal durchführen. Wenn Sie über die erforderliche Programmiererfahrung verfügen, können Sie eines der programmiersprachspezifischen Software Development Kits (SDKs) für den Azure KI Custom Vision-Dienst verwenden.
Eine der wichtigsten Überlegungen bei der Verwendung von Bildern zur Klassifizierung besteht darin, sicherzustellen, dass Sie über ausreichende Bilder der betreffenden Objekte verfügen und diese Bilder das Objekt aus vielen verschiedenen Blickwinkeln zeigen.
Modellauswertung
Das Modelltraining ist ein iterativer Prozess, bei dem der Azure KI Custom Vision-Dienst das Modell wiederholt mit einigen der Daten trainiert, allerdings auch ein paar zurückbehält, um das Modell zu evaluieren. Am Ende des Trainingsprozesses wird die Leistung des trainierten Modells durch die folgenden Auswertungsmetriken angegeben:
- Genauigkeit: Wie viel Prozent der Klassenvorhersagen des Modells waren korrekt? Beispiel: Wenn das Modell vorhergesagt hat, dass auf zehn Bildern Orangen sind, tatsächlich aber nur auf acht Bildern Orangen waren, beträgt die Genauigkeit 0,8 (80 Prozent).
- Trefferquote: Wie viel Prozent der Klassenvorhersagen wurden vom Modell richtig identifiziert? Beispiel: Wenn auf zehn Bildern Äpfel sind und das Modell sieben gefunden hat, liegt eine Trefferquote von 0,7 (70 Prozent) vor.
- Average Precision (AP) (Durchschnittliche Genauigkeit): Dies ist eine allgemeine Metrik, bei der sowohl die Genauigkeit als auch die Trefferquote berücksichtigt werden.
Verwendung des Vorhersagemodells
Wenn Sie das Modell trainiert haben und mit der ausgewerteten Leistung zufrieden sind, können Sie es in Ihrer Vorhersageressource veröffentlichen. Wenn Sie das Modell veröffentlichen, können Sie ihm einen Namen zuweisen (der Standardwert ist „IterationX“, wobei „X“ die Häufigkeit ist, mit der Sie das Modell trainiert haben).
Entwickler von Clientanwendungen benötigen die folgenden Informationen, um Ihr Modell verwenden zu können:
- Projekt-ID: Dies ist die eindeutige ID des Custom Vision-Projekts, das Sie zum Trainieren des Modells erstellt haben.
- Modellname: Dies ist der Name, den Sie dem Modell bei der Veröffentlichung zugewiesen haben.
- Prediction endpoint (Vorhersageendpunkt): Dies ist die HTTP-Adresse der Endpunkte für die Vorhersageressource, für die Sie das Modell veröffentlicht haben (nicht die Trainingsressource).
- Vorhersageschlüssel: Dies ist der Authentifizierungsschlüssel für die Vorhersageressource, für die Sie das Modell veröffentlicht haben (nicht die Trainingsressource).