I det här inlägget diskuterar vi bästa praxis för att förbättra prestandan för dina datorseendemodeller Amazon Rekognition anpassade etiketter. Rekognition Custom Labels är en fullständigt hanterad tjänst för att bygga anpassade datorseende modeller för bildklassificering och användningsfall för objektdetektering. Rekognition Custom Labels bygger på de förutbildade modellerna i Amazon-erkännande, som redan är utbildade på tiotals miljoner bilder i många kategorier. Istället för tusentals bilder kan du komma igång med en liten uppsättning träningsbilder (några hundra eller färre) som är specifika för ditt användningsfall. Rekognition Custom Labels abstraherar bort komplexiteten som är involverad i att bygga en anpassad modell. Den inspekterar automatiskt träningsdata, väljer rätt ML-algoritmer, väljer instanstyp, tränar flera kandidatmodeller med olika hyperparameterinställningar och matar ut den bäst tränade modellen. Rekognition Custom Labels ger också ett lättanvänt gränssnitt från AWS Management Console för att hantera hela ML-arbetsflödet, inklusive märkning av bilder, utbildning av modellen, implementering av modellen och visualisering av testresultaten.
Det finns tillfällen då en modells noggrannhet inte är den bästa, och du har inte många alternativ för att justera modellens konfigurationsparametrar. Bakom kulisserna finns det flera faktorer som spelar en nyckelroll för att bygga en högpresterande modell, till exempel följande:
- Bildvinkel
- Bildupplösning
- Bildformat
- Ljusexponering
- Tydlighet och livfull bakgrund
- Färgkontrast
- Exempeldatastorlek
Följande är de allmänna stegen som ska följas för att utbilda en produktionsklassad Rekognition Custom Labels-modell:
- Granska taxonomi – Detta definierar listan över attribut/objekt som du vill identifiera i en bild.
- Samla in relevant data – Det här är det viktigaste steget, där du behöver samla relevanta bilder som ska likna det du skulle se i en produktionsmiljö. Det kan handla om bilder av objekt med olika bakgrund, ljus eller kameravinklar. Du skapar sedan en utbildnings- och testdatauppsättning genom att dela upp de insamlade bilderna. Du bör endast inkludera verkliga bilder som en del av testdatauppsättningen och bör inte inkludera några syntetiskt genererade bilder. Anteckningar av den data du samlat in är avgörande för modellens prestanda. Se till att begränsningsrutorna är täta runt objekten och att etiketterna är korrekta. Vi diskuterar några tips som du kan tänka på när du bygger en lämplig datauppsättning senare i det här inlägget.
- Granska utbildningsstatistik – Använd de föregående datamängderna för att träna en modell och granska träningsmåtten för F1-poäng, precision och återkallelse. Vi kommer att diskutera i detalj om hur man analyserar träningsmåtten senare i det här inlägget.
- Utvärdera den utbildade modellen – Använd en uppsättning osynliga bilder (används inte för att träna modellen) med kända etiketter för att utvärdera förutsägelserna. Detta steg bör alltid utföras för att säkerställa att modellen fungerar som förväntat i en produktionsmiljö.
- Omträning (valfritt) – I allmänhet är att träna vilken maskininlärningsmodell som helst en iterativ process för att uppnå önskade resultat, en datorseendemodell är inte annorlunda. Granska resultaten i steg 4 för att se om fler bilder behöver läggas till träningsdata och upprepa steg 3 – 5 ovan.
I det här inlägget fokuserar vi på de bästa metoderna för att samla in relevant data (steg 2) och utvärdera dina tränade mätvärden (steg 3) för att förbättra din modellprestanda.
Samla in relevant data
Detta är det mest kritiska steget i utbildningen av en produktionsklassad Rekognition Custom Labels-modell. Specifikt finns det två datamängder: utbildning och testning. Träningsdata används för att träna modellen, och du måste lägga ner mödan på att bygga en lämplig träningsuppsättning. Rekognition Custom Labels-modeller är optimerade för F1-poäng på testdataset för att välja den mest exakta modellen för ditt projekt. Därför är det viktigt att skapa en testdatauppsättning som liknar den verkliga världen.
Antal bilder
Vi rekommenderar att du har minst 15-20 bilder per etikett. Att ha fler bilder med fler varianter som återspeglar ditt användningsfall kommer att förbättra modellens prestanda.
Balanserad datauppsättning
Helst bör varje etikett i datamängden ha ett liknande antal prover. Det bör inte finnas en stor skillnad i antalet bilder per etikett. Till exempel liknar en datauppsättning där det högsta antalet bilder för en etikett är 1,000 50 mot 1 bilder för en annan etikett en obalanserad datauppsättning. Vi rekommenderar att du undviker scenarier med ett skevt förhållande på 50:XNUMX mellan etiketten med det minsta antalet bilder och etiketten med det högsta antalet bilder.
Olika typer av bilder
Inkludera bilder i tränings- och testdataset som liknar det du kommer att använda i den verkliga världen. Om du till exempel vill klassificera bilder av vardagsrum kontra sovrum, bör du inkludera tomma och möblerade bilder av båda rummen.
Följande är ett exempel på ett möblerat vardagsrum.
Däremot är följande ett exempel på ett omöblerat vardagsrum.
Följande är ett exempel på ett möblerat sovrum.
Följande är ett exempel på ett omöblerat sovrum.
Olika bakgrunder
Inkludera bilder med olika bakgrunder. Bilder med naturligt sammanhang kan ge bättre resultat än vanlig bakgrund.
Följande är en exempelbild på gården till ett hus.
Följande är en exempelbild på gården till ett annat hus med en annan bakgrund.
Varierande ljusförhållanden
Inkludera bilder med varierande ljussättning så att det täcker de olika ljusförhållandena som uppstår vid slutledning (till exempel med och utan blixt). Du kan också inkludera bilder med varierande mättnad, nyans och ljusstyrka.
Följande är ett exempel på en blomma under normalt ljus.
Däremot är följande bild av samma blomma under starkt ljus.
Varierande vinklar
Inkludera bilder tagna från olika vinklar av objektet. Detta hjälper modellen att lära sig olika egenskaper hos föremålen.
Följande bilder är av samma sovrum från olika vinklar.
Det kan finnas tillfällen då det inte är möjligt att skaffa bilder av olika slag. I dessa scenarier kan syntetiska bilder genereras som en del av träningsdatauppsättningen. För mer information om vanliga bildförstärkningstekniker, se Datautvidgning.
Lägg till negativa etiketter
För bildklassificering kan det bidra till att öka modellens noggrannhet genom att lägga till negativa etiketter. Du kan till exempel lägga till en negativ etikett som inte matchar någon av de obligatoriska etiketterna. Följande bild representerar de olika etiketterna som används för att identifiera fullvuxna blommor.
Lägger till den negativa etiketten not_fully_grown
hjälper modellen att lära sig egenskaper som inte är en del av fully_grown
märka.
Hantering av etikettförvirring
Analysera resultaten på testdatauppsättningen för att känna igen eventuella mönster som saknas i tränings- eller testdatauppsättningen. Ibland är det lätt att upptäcka sådana mönster genom att visuellt granska bilderna. På följande bild kämpar modellen för att lösa mellan en bakgård kontra uteplatsetikett.
I det här scenariot kan det bidra till att öka modellens noggrannhet genom att lägga till fler bilder till dessa etiketter i datamängden och även omdefiniera etiketterna så att varje etikett är distinkt.
Dataförstoring
Inuti Rekognition Custom Labels utför vi olika dataförstärkningar för modellträning, inklusive slumpmässig beskärning av bilden, färgflimmer, slumpmässiga gaussiska brus och mer. Baserat på dina specifika användningsfall kan det också vara fördelaktigt att lägga till mer explicita dataförstärkningar till din träningsdata. Om du till exempel är intresserad av att upptäcka djur i både färg och svartvita bilder kan du potentiellt få bättre noggrannhet genom att lägga till svartvita och färgversioner av samma bilder till träningsdatan.
Vi rekommenderar inte ökningar av testdata om inte tilläggen återspeglar dina produktionsanvändningsfall.
Granska utbildningsstatistik
F1-poäng, precision, återkallelse och antagen tröskel är metrik som genereras som ett resultat av utbildning av en modell med hjälp av Custom Labels för erkännande. Modellerna är optimerade för bästa F1-poäng baserat på testdatauppsättningen som tillhandahålls. Den antagna tröskeln genereras också baserat på testdatauppsättningen. Du kan justera tröskeln baserat på ditt företags krav vad gäller precision eller återkallelse.
Eftersom de antagna tröskelvärdena är inställda på testdatauppsättningen bör en lämplig testuppsättning återspegla det verkliga produktionsanvändningsfallet. Om testdatauppsättningen inte är representativ för användningsfallet kan du se artificiellt höga F1-poäng och dålig modellprestanda på dina verkliga bilder.
Dessa mätvärden är användbara när du utför en första utvärdering av modellen. För ett produktionsklassat system rekommenderar vi att man utvärderar modellen mot en extern datauppsättning (500–1,000 1 osynliga bilder) som representerar den verkliga världen. Detta hjälper till att utvärdera hur modellen skulle prestera i ett produktionssystem och även identifiera eventuella saknade mönster och korrigera dem genom att omskola modellen. Om du ser en bristande överensstämmelse mellan FXNUMX-poäng och extern utvärdering föreslår vi att du undersöker om dina testdata återspeglar det verkliga användningsfallet.
Slutsats
I det här inlägget gick vi igenom de bästa metoderna för att förbättra Rekognition Custom Labels-modeller. Vi uppmuntrar dig att lära dig mer om Anpassade etiketter för erkännande och prova det för dina företagsspecifika datauppsättningar.
Om författarna
Amit Gupta är senior AI Services Solutions Architect på AWS. Han brinner för att möjliggöra för kunder med väl utformade maskininlärningslösningar i stor skala.
Yogesh Chaturvedi är Solutions Architect på AWS med inriktning datorseende. Han arbetar med kunder för att hantera deras affärsutmaningar med hjälp av molnteknik. Utanför jobbet tycker han om att vandra, resa och titta på sport.
Hao Yang är senior tillämpad forskare vid Amazon Rekognition Custom Labels-teamet. Hans huvudsakliga forskningsintressen är objektdetektering och lärande med begränsade kommentarer. Utanför jobbar tycker Hao om att titta på film, fotografera och utomhusaktiviteter.
Pashmeen Mistry är Senior Product Manager för Amazon Rekognition Custom Labels. Utanför jobbet tycker Pashmeen om äventyrliga vandringar, fotografering och att umgås med sin familj.
- AI
- ai konst
- ai art generator
- har robot
- Amazon-erkännande
- artificiell intelligens
- artificiell intelligenscertifiering
- artificiell intelligens inom bankväsendet
- artificiell intelligens robot
- robotar med artificiell intelligens
- programvara för artificiell intelligens
- AWS maskininlärning
- AWS Management Console
- blockchain
- blockchain konferens ai
- coingenius
- konversationskonstnärlig intelligens
- kryptokonferens ai
- dalls
- djupt lärande
- du har google
- Mellan (200)
- maskininlärning
- plato
- plato ai
- Platon Data Intelligence
- Platon spel
- PlatonData
- platogaming
- skala ai
- syntax
- zephyrnet