Ćwiczenie — Wdrażanie modelu i korzystanie z punktu końcowego

Ukończone

Nasz model działa na zadowalającym poziomie, więc wdrożymy go!

Dostępne są różne opcje wdrażania. Wybrana opcja zależy od sposobu używania modelu uczenia maszynowego. Możesz wdrożyć w punkcie końcowym lub wyeksportować model do wdrożenia na różnych platformach.

Omówimy sposób wdrażania w punkcie końcowym i korzystania z modelu za pomocą aplikacji.

Wdrażanie w punkcie końcowym

Możesz wdrożyć model w punkcie końcowym, pobierając adres URL przewidywania lub korzystając z interfejsu API w aplikacji języka Python.

Pobieranie adresu URL przewidywania

  1. Na górnym pasku menu portalu Custom Vision wybierz pozycję Wydajność.

  2. Wybierz Publikuj.

  3. W obszarze Publikowanie modelu wybierz pozycję Zasób przewidywania, a następnie wybierz nazwę przewidywania dla projektu usługi Custom Vision. Wybierz Publikuj.

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

    Po opublikowaniu modelu akcje modelu zostaną zmienione w portalu Custom Vision.

  4. Wybierz kartę Adres URL przewidywania.

  5. W obszarze How to use the prediction API (Jak używać interfejsu API przewidywania) w polu tekstowym w obszarze Jeśli masz adres URL obrazu, skopiuj i zapisz wartość, a następnie wybierz pozycję Got it ( Got it).

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

Korzystanie z interfejsu API w aplikacji w języku Python

Gdy model jest trenowany i działa z zadowalającą dokładnością, model jest gotowy do użycia w aplikacji.

  1. W witrynie Azure Portal przejdź do grupy zasobów zawierającej zasób usługi Custom Vision. Zasób o nazwie <YourCustomVisionResourceName-Prediction> jest wyświetlany z oryginalną grupą zasobów.

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

  2. Wybierz nazwę przewidywania, aby otworzyć stronę Przegląd . Ta strona zawiera linki do zasobów, które mogą pomóc ci dowiedzieć się więcej na temat wywoływania interfejsu API w celu uzyskania przewidywań z modelu.

  3. W obszarze Wprowadzenie w sekcji 3 wybierz link dla przewodnika Szybki start dla języka Python. W przeglądarce internetowej zostanie otwarty przewodnik Szybki start dotyczący klasyfikacji obrazów usług Azure AI dla języka Python.

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

    Oto przykładowy kod do wywoływania interfejsu API przewidywania w języku Python. Pełny kod można znaleźć w przewodniku Szybki start.

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

Po opublikowaniu w opublikowanym punkcie końcowym otrzymasz wynik podobny do poniższego przykładu. Prawdopodobieństwo poszczególnych znaczników, dla których został przeszkolony model Custom Vision, posortowane od najwyższej wartości. Model rozpoznaje tylko gatunki ptaków, do których rozpoznawania został przeszkolony. W przypadku opublikowania obrazu ptaka, do rozpoznawania którego model nie został przeszkolony, model przewiduje jeden ze znanych sobie gatunków ptaków jako nowy gatunek.

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%

Teraz masz doświadczenie w korzystaniu z utworzonego modelu uczenia maszynowego. Dzięki nowym danym do analizy można lepiej udokumentować nawyki ptaków, aby pomóc w ochronie siedlisk ptaków i zwiększyć zagrożone populacje ptaków. Wszystko za pomocą usługi Azure AI Custom Vision!