Übung: Bereitstellen des Modells und Verwenden des Endpunkts

Abgeschlossen

Da unser Modell eine zufriedenstellende Leistung bringt, stellen wir es bereit!

Sie haben unterschiedliche Optionen für die Bereitstellung. Welche Option Sie auswählen, hängt davon ab, wie Sie Ihr Machine Learning-Modell verwenden möchten. Sie können die Bereitstellung an einem Endpunkt durchführen oder das Modell für die Bereitstellung auf verschiedenen Plattformen exportieren.

Hier wird das Bereitstellen des Endpunkts und die Verwendung des Modells mithilfe einer App behandelt.

Bereitstellung an einem Endpunkt

Sie können die Bereitstellung an einem Endpunkt durchführen, indem Sie die Vorhersage-URL abrufen oder die API in einer Python-App nutzen.

Abrufen der Vorhersage-URL

  1. Wählen Sie im Custom Vision-Portal in der oberen Menüleiste Leistung aus.

  2. Wählen Sie Veröffentlichen aus.

  3. Wählen Sie in Modell veröffentlichen die Option Vorhersagenressource und dann den Namen der Vorhersage für Ihr Custom Vision-Projekt aus. Wählen Sie Veröffentlichen aus.

    Screenshot that shows how to publish a trained Custom Vision model.

    Nachdem das Modell veröffentlicht wurde, werden die Aktionen für das Modell im Custom Vision-Portal geändert.

  4. Wählen Sie die Registerkarte Vorhersage-URL aus.

  5. Kopieren und speichern Sie den Wert in Verwenden der Vorhersage-API im Textfeld unter Wenn Sie über eine Bild-URL verfügen, und wählen Sie dann OK.

    Screenshot that highlights the prediction U R L for a published Custom Vision model.

Verwenden der API in einer Python-App

Sobald das Modell trainiert wurde und eine zufriedenstellende Genauigkeit erzielt, können Sie es in Ihrer App verwenden.

  1. Navigieren Sie im Azure-Portal zu der Ressourcengruppe, die Ihre Custom Vision-Ressource enthält. Eine Ressource namens <YourCustomVisionResourceName>-Prediction wird mit der ursprünglichen Ressourcengruppe angezeigt.

    Screenshot that shows how to open the prediction resource in the Azure portal.

  2. Wählen Sie den Vorhersagenamen aus, um die Seite Übersicht zu öffnen. Auf dieser Seite finden Sie Links zu Ressourcen, die Ihnen helfen, mehr über das Abrufen der API zum Abrufen von Vorhersagen aus dem Modell zu erfahren.

  3. Unter Get Started, wählen Sie im Abschnitt 3 den Link für den Python-Schnellstart aus. Der Schnellstart: Azure KI Services-Bildklassifizierung für Python wird in Ihrem Webbrowser geöffnet.

    Screenshot that shows quickstart resources that describe how to call the A P I to get predictions from the model.

    Hier ist ein Beispielcode zum Aufrufen der Vorhersage-API in Python. Den gesamten Code finden Sie im Schnellstart.

    from azure.cognitiveservices.vision.customvision.prediction import CustomVisionPredictionClient
    
    # Create variables for your resource; replace variables with valid values.
    prediction_key = "<YourKey>"
    endpoint = "<YourEndpoint>"
    base_image_url = "<BasePathToImageFolder>"
    
    # An example of a default iteration name is "Iteration1".
    publish_iteration_name = "<PublishedIterationName>"
    
    # You can find the project ID in the settings of the Custom Vision project in the portal.
    project.id = "<CustomVisionProjectId>"
    
    # Now, you have a trained endpoint that you can use to make a prediction.
    prediction_credentials = ApiKeyCredentials(in_headers={"Prediction-key": prediction_key})
    
    predictor = CustomVisionPredictionClient(endpoint, prediction_credentials)
    
    with open(base_image_url + "images/Test/test_image.jpg", "rb") as image_contents:
        results = predictor.classify_image(
            project.id, publish_iteration_name, image_contents.read())
    
    # Display the results.
    for prediction in results.predictions:
        print("\t" + prediction.tag_name +
             ": {0:.2f}%".format(prediction.probability * 100))
    

Wenn Sie an den veröffentlichten Endpunkt posten, erhalten Sie ein Ergebnis, das dem folgenden Beispiel ähnelt. Die Wahrscheinlichkeit, mit der jedes Tag des Custom Vision-Modells trainiert wurde, wird sortiert nach der höchsten Bewertungen angezeigt. Das Modell erkennt nur die Vogelarten, für die es trainiert wurde. Wenn Sie ein Bild von einem Vogel posten, für den das Modell nicht trainiert wurde, schlägt das Modell eine der Vogelarten vor, mit denen es trainiert wurde.

American Crow: 99.18%
Common Grackle: 25.34%
Red-tailed Hawk (Dark morph): 4.09%
Mourning Dove: 1.74%
American Robin (Adult): 0.92%
House Sparrow (Female): 0.40%
American Robin (Juvenile): 0.31%
Northern Cardinal (Adult Male): 0.24%
Tufted Titmouse: 0.04%
Blue Jay: 0.04%
House Sparrow (Male): 0.04%
Northern Cardinal (Female): 0.04%
Red-tailed Hawk (Light morph immature): 0.02%
American Goldfinch (Male): 0.02%
House Wren: 0.01%
American Goldfinch (Female): 0.01%

Nun haben Sie Erfahrungen mit der Verwendung des von Ihnen erstellten Machine Learning-Modells gesammelt. Mit neuen zu analysierenden Daten können Sie Lebensräume von Vögeln effizienter dokumentieren, um die Erhaltung von Lebensräumen zu unterstützen und die Populationen gefährdeter Vogelarten zu fördern. Alles mit der Hilfe von Azure KI Custom Vision!