Kom igång med bildklassificering i Azure

Slutförd

Du kan utföra bildklassificering med Hjälp av Azure AI Custom Vision, som är tillgängligt som en del av Azure AI Services-erbjudandena. Det här är i allmänhet enklare och snabbare än att skriva egen modellträningskod, så att personer med liten eller ingen erfarenhet av maskininlärning kan skapa effektiva bildklassificeringslösningar.

Azure-resurser för Azure AI Custom Vision

Att skapa en bildklassificeringslösning med Azure AI Custom Vision består av två huvuduppgifter. Först måste du använda befintliga bilder till att träna modellen. Sedan måste du publicera modellen så att klientprogram kan använda den till att generera prediktioner.

För var och en av uppgifterna behöver du en resurs i din Azure-prenumeration. Du kan använda följande typer av resurser:

  • Custom Vision: En dedikerad resurs för custom vision-tjänsten, som kan vara träning, förutsägelse eller båda resurserna.
  • Azure AI-tjänster: En allmän resurs som innehåller Azure AI Custom Vision tillsammans med många andra Azure AI-tjänster. Du kan använda den här typen av resurs för träning, prediktion eller både och.

Separationen av resurser för träning och prediktion är användbar när du vill spåra resursanvändningen under modellträningen separat från de klientprogram som använder modellen till att göra prediktioner om bildklasser. Den kan dock göra utvecklingen av bildklassificeringslösning mindre intuitiv.

Den enklaste metoden är att använda en allmän Azure AI-tjänstresurs för både träning och förutsägelse. Det här innebär att du bara behöver bry dig om en enda slutpunkt (den HTTP-adress där din tjänst hanteras) och en nyckel (ett hemligt värde som klientprogram använder till att autentisera sig).

Om du väljer att skapa en Custom Vision-resurs uppmanas du att välja träning, prediktion eller båda. Om du väljer ”båda” så skapas två resurser, en för träning och en för prediktion.

Du kan också använda en mix-and-match-metod där du använder en dedikerad Custom Vision-resurs för träning, men distribuerar din modell till en Azure AI-tjänstresurs för förutsägelse. För att det här ska fungera måste tränings- och prediktionsresurserna skapas i samma region.

Modellträning

När du ska träna en klassificeringsmodell måste du ladda upp bilder till din träningsresurs och ge dem lämpliga klassetiketter. Sedan tränar du modellen och utvärderar träningsresultatet.

Du kan utföra dessa uppgifter i Custom Vision-portalen, eller om du har den kodningsupplevelse som krävs kan du använda något av Azure AI Custom Vision-tjänstens programmeringsspråkspecifika programutvecklingspaket (SDK:er).

En av de viktigaste aspekterna när du använder bilder till klassificering är att du har tillräckligt med bilder av objekten och att bilderna visar objekten ur flera olika vinklar.

Modellutvärdering

Modellträningsprocessen är en iterativ process där Azure AI Custom Vision-tjänsten upprepade gånger tränar modellen med hjälp av vissa data, men rymmer en del tillbaka för att utvärdera modellen. Efter träningsprocessen anges modellens resultat med följande utvärderingsmått:

  • Precision: Vilken procentandel av klassförutsägelserna som gjordes av modellen var korrekta? Om modellen till exempel förutsade att 10 bilder visade apelsiner, och åtta verkligen visade apelsiner, så är precisionen 0,8 (80 %).
  • Kom ihåg: Vilken procentandel av klassförutsägelser identifierade modellen korrekt? Om det till exempel finns 10 bilder på äpplen och modellen hittade 7 av dem är träffsäkerheten 0,7 (70 %).
  • Genomsnittlig precision (AP): Ett övergripande mått som tar hänsyn till både precision och återkallande.

Använda modellen till prediktioner

När du har tränat modellen och är nöjd med det utvärderade resultatet kan du publicera modellen till din prediktionsresurs. När du publicerar modellen kan du tilldela den ett namn (standardnamnet är ”IterationX”, där X är det antal gånger du har tränat modellen).

För att kunna använda din modell behöver apputvecklare följande information:

  • Projekt-ID: Det unika ID:t för det Custom Vision-projekt som du skapade för att träna modellen.
  • Modellnamn: Det namn som du tilldelade modellen under publiceringen.
  • Förutsägelseslutpunkt: HTTP-adressen för slutpunkterna för förutsägelseresursen som du publicerade modellen till (inte träningsresursen).
  • Förutsägelsenyckel: Autentiseringsnyckeln för förutsägelseresursen som du publicerade modellen till (inte träningsresursen).