Övning – Distribuera modellen och använda slutpunkten

Slutförd

Vår modell fungerar på en tillfredsställande nivå, så vi distribuerar den!

Du har olika distributionsalternativ. Vilket alternativ du väljer beror på hur du vill använda din maskininlärningsmodell. Du kan distribuera till en slutpunkt eller exportera modellen för att distribuera till olika plattformar.

Vi ska visa hur du distribuerar till slutpunkten och använder modellen med hjälp av en app.

Distribuera till en slutpunkt

Du kan distribuera till en slutpunkt genom att hämta URL:en för förutsägelsen eller genom att använda API:et i en Python-app.

Hämta förutsägelse-URL

  1. I den översta menyraden i Custom Vision-portalen väljer du Prestanda.

  2. Välj Publicera.

  3. I Publicera modell väljer du Förutsägelseresurs och sedan namnet på förutsägelsen för ditt Custom Vision-projekt. Välj Publicera.

    Skärmbild som visar hur du publicerar en tränad Custom Vision-modell.

    När modellen har publicerats ändras åtgärderna för modellen i Custom Vision-portalen.

  4. Välj fliken Förutsägelse-URL .

  5. I Så här använder du förutsägelse-API:et i textrutan under Om du har en bild-URL kopierar och sparar du värdet och väljer sedan Hämtat.

    Skärmbild som visar förutsägelsen U R L för en publicerad Custom Vision-modell.

Använda API:et i en Python-app

När modellen tränas och fungerar med tillfredsställande noggrannhet är modellen redo att användas i din app.

  1. I Azure Portal går du till resursgruppen som innehåller din Custom Vision-resurs. En resurs med namnet <YourCustomVisionResourceName-Prediction> visas med den ursprungliga resursgruppen.

    Skärmbild som visar hur du öppnar förutsägelseresursen i Azure Portal.

  2. Välj förutsägelsenamnet för att öppna sidan Översikt . Den här sidan innehåller länkar till resurser som kan hjälpa dig att lära dig mer om hur du anropar API:et för att hämta förutsägelser från modellen.

  3. Under Kom igång i avsnitt 3 väljer du länken för Python-snabbstarten. Snabbstarten för azure AI-tjänsters bildklassificering för Python öppnas i webbläsaren.

    Skärmbild som visar snabbstartsresurser som beskriver hur du anropar A P I för att få förutsägelser från modellen.

    Här är ett exempel på exempelkoden för att anropa förutsägelse-API:et i Python. Fullständig kod finns i snabbstarten.

    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))
    

När du publicerar till den publicerade slutpunkten får du ett resultat som ser ut som i följande exempel. Sannolikheten visas för varje tagg som Custom Vision-modellen har tränats på, sorterad efter det högsta värdet. Modellen känner bara igen de fågeltyper som har tränats att känna igen. Om du publicerar en bild av en fågel som modellen inte har tränats att känna igen, förutsäger modellen den nya fågeln som en av de fågelarter den har tränats på.

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%

Nu har du erfarenhet av att använda maskininlärningsmodellen som du skapade. Med nya data att analysera kan du bättre dokumentera fågelvanor för att bevara fågelmiljöer och öka utrotningshotade fågelpopulationer. Allt med hjälp av Azure AI Custom Vision!