Byg højtydende billedklassificeringsmodeller ved hjælp af Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Byg højtydende billedklassificeringsmodeller ved hjælp af Amazon SageMaker JumpStart

Billedklassificering er en computervisionsbaseret maskinlæringsteknik (ML), der giver dig mulighed for at klassificere billeder. Nogle velkendte eksempler på billedklassificering omfatter klassificering af håndskrevne cifre, medicinsk billedklassificering og ansigtsgenkendelse. Billedklassificering er en nyttig teknik med flere forretningsapplikationer, men det er ikke trivielt at bygge en god billedklassificeringsmodel.

Flere overvejelser kan spille en rolle, når man skal vurdere en ML-model. Ud over modelnøjagtighed er andre potentielle målinger af betydning modeltræningstid og slutningstid. I betragtning af den iterative karakter af ML-modeludvikling giver hurtigere træningstider dataforskere mulighed for hurtigt at teste forskellige hypoteser. Hurtigere inferencing kan være kritisk i realtidsapplikationer.

Amazon SageMaker JumpStart giver et-klik finjustering og udrulning af en lang række præ-trænede modeller på tværs af populære ML-opgaver, samt et udvalg af end-to-end-løsninger, der løser almindelige forretningsproblemer. Disse funktioner fjerner de tunge løft fra hvert trin i ML-processen, hvilket gør det nemmere at udvikle højkvalitetsmodeller og reducerer tiden til implementering. JumpStart API'er giver dig mulighed for programmæssigt at implementere og finjustere et stort udvalg af JumpStart-understøttede præ-trænede modeller på dine egne datasæt.

Du kan trinvist træne og tune de ML-modeller, der tilbydes i JumpStart, før implementering. I skrivende stund er 87 deep-learning-baserede billedklassificeringsmodeller tilgængelige i JumpStart.

Men hvilken model vil give dig de bedste resultater? I dette indlæg præsenterer vi en metode til nemt at køre flere modeller og sammenligne deres output på tre dimensioner af interesse: modelnøjagtighed, træningstid og slutningstid.

Løsningsoversigt

JumpStart giver dig mulighed for at træne, tune og implementere modeller enten fra JumpStart-konsollen ved hjælp af dens brugergrænseflade eller med dens API. I dette indlæg bruger vi API-ruten, og præsenterer en notesbog med forskellige hjælpescripts. Du kan køre denne notesbog og få resultater for nem sammenligning af disse modeller med hinanden og derefter vælge en model, der passer bedst til din virksomheds behov med hensyn til modelnøjagtighed, træningstid og slutningstid.

offentligt datasæt brugt i dette indlæg består af næsten 55,000 billeder af syge og sunde planteblade indsamlet under kontrollerede forhold, med klasseetiketter fra 0-38. Dette datasæt er opdelt i tog- og valideringsdatasæt, med cirka 44,000 under uddannelse og 11,000 billeder under validering. Følgende er et par eksempler på billeder.

Til denne øvelse valgte vi modeller fra to rammer – PyTorch og TensorFlow – som tilbydes af JumpStart. Følgende 15 modelalgoritmer dækker en bred vifte af populære neurale netværksarkitekturer fra disse rammer:

  • pytorch-ic-alexnet-FT
  • pytorch-ic-densenet121-FT
  • pytorch-ic-densenet201-FT
  • pytorch-ic-googlenet-FT
  • pytorch-ic-mobilenet-v2-FT
  • pytorch-ic-resnet152-FT
  • pytorch-ic-resnet34-FT
  • tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT
  • tensorflow-ic-imagenet-inception-resnet-v2-classification 4-FT
  • tensorflow-ic-imagenet-inception-v3-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-075-224-classification-4-FT
  • tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT
  • tensorflow-ic-imagenet-resnet-v2-152-classification-4-FT
  • tensorflow-ic-tf2-preview-mobilenet-v2-classification-4-FT

Vi bruger modellen tensorflow-ic-imagenet-inception-v3-classification-4-FT som et grundlag, som resultater fra andre modeller sammenlignes med. Denne basismodel blev valgt vilkårligt.

Koden, der bruges til at køre denne sammenligning, er tilgængelig på AWS prøver GitHub repo.

Resultater

I dette afsnit præsenterer vi resultaterne fra disse 15 kørsler. For alle disse kørsler var de anvendte hyperparametre epoker = 5, indlæringshastighed = 0.001, batchstørrelse = 16.

Modelnøjagtighed, træningstid og slutningstid fra model tensorflow-ic-imagenet-inception-v3-classification-4-FT blev taget som basis, og resultater fra alle andre modeller præsenteres i forhold til denne basismodel. Vores hensigt her er ikke at vise, hvilken model der er den bedste, men snarere at vise, hvordan du gennem JumpStart API kan sammenligne resultater fra forskellige modeller og derefter vælge en model, der passer bedst til din brugssituation.

Følgende skærmbillede fremhæver den basismodel, som alle andre modeller blev sammenlignet med.

Byg højtydende billedklassificeringsmodeller ved hjælp af Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Følgende plot viser en detaljeret visning af relativ nøjagtighed vs. relativ træningstid. PyTorch-modeller er farvekodet i rød og TensorFlow-modeller i blå.

Byg højtydende billedklassificeringsmodeller ved hjælp af Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Modellerne fremhævet med en grøn ellipse i det foregående plot synes at have en god kombination af relativ nøjagtighed og lav relativ træningstid. Følgende tabel giver flere detaljer om disse tre modeller.

Modelnavn Relativ nøjagtighed Relativ træningstid
tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT 1.01 0.74
tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT 1.02 0.74
tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT 1.04 1.16

Følgende plot sammenligner relativ nøjagtighed vs. relativ slutningstid. PyTorch-modeller er farvekodet i rød og TensorFlow-modeller i blå.

Byg højtydende billedklassificeringsmodeller ved hjælp af Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Lodret søgning. Ai.

Følgende tabel giver detaljer om de tre modeller i den grønne ellipse.

Modelnavn Relativ nøjagtighed Relativ slutningstid
tensorflow-ic-imagenet-mobilenet-v2-050-224-classification-4-FT 1.01 0.94
tensorflow-ic-imagenet-mobilenet-v2-140-224-classification-4-FT 1.02 0.90
tensorflow-ic-bit-s-r101x1-ilsvrc2012-classification-1-FT 1.04 1.43

De to plots viser tydeligt, at visse modelalgoritmer klarede sig bedre end andre på de tre dimensioner, der blev udvalgt. Den fleksibilitet, der tilbydes gennem denne øvelse, kan hjælpe dig med at vælge den rigtige algoritme, og ved at bruge den medfølgende notesbog, kan du nemt køre denne type eksperiment på enhver af de 87 tilgængelige modeller.

Konklusion

I dette indlæg viste vi, hvordan man bruger JumpStart til at bygge højtydende billedklassificeringsmodeller på flere dimensioner af interesse, såsom modelnøjagtighed, træningstid og slutningsforsinkelse. Vi har også leveret koden til at køre denne øvelse på dit eget datasæt; du kan vælge en hvilken som helst model af interesse blandt de 87 modeller, der i øjeblikket er tilgængelige til billedklassificering i JumpStart-modelhubben. Vi opfordrer dig til at prøve det i dag.

For flere detaljer om JumpStart, se SageMaker JumpStart.


Om forfatterne

Byg højtydende billedklassificeringsmodeller ved hjælp af Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Lodret søgning. Ai.Dr. Raju Penmatcha er AI/ML Specialist Solutions Architect i AI-platforme hos AWS. Han modtog sin ph.d. fra Stanford University. Han arbejder tæt sammen på den lave/ingen kode-pakke af tjenester i SageMaker, som hjælper kunder med nemt at bygge og implementere maskinlæringsmodeller og -løsninger. Når han ikke hjælper kunder, kan han godt lide at rejse til nye steder.

Byg højtydende billedklassificeringsmodeller ved hjælp af Amazon SageMaker JumpStart PlatoBlockchain Data Intelligence. Lodret søgning. Ai.Dr. Ashish Khetan er en Senior Applied Scientist med Amazon SageMaker indbyggede algoritmer og hjælper med at udvikle machine learning algoritmer. Han fik sin ph.d. fra University of Illinois Urbana-Champaign. Han er en aktiv forsker i maskinlæring og statistisk inferens og har publiceret mange artikler i NeurIPS, ICML, ICLR, JMLR, ACL og EMNLP konferencer.

Tidsstempel:

Mere fra AWS maskinindlæring