Dette blogindlæg er skrevet sammen med Caroline Chung fra Veoneer.
Veoneer er en global bilelektronikvirksomhed og en af verdens førende inden for elektroniske sikkerhedssystemer til biler. De tilbyder klassens bedste fastholdelseskontrolsystemer og har leveret over 1 milliard elektroniske styreenheder og kollisionssensorer til bilproducenter globalt. Virksomheden fortsætter med at bygge på en 70-årig historie med udvikling af bilsikkerhed med speciale i avanceret hardware og systemer, der forhindrer trafikhændelser og afbøder ulykker.
Automotive in-cabin sensing (ICS) er et spirende rum, der bruger en kombination af flere typer sensorer såsom kameraer og radar, og kunstig intelligens (AI) og machine learning (ML) baserede algoritmer til at øge sikkerheden og forbedre køreoplevelsen. At bygge et sådant system kan være en kompleks opgave. Udviklere skal manuelt annotere store mængder billeder til trænings- og testformål. Dette er meget tidskrævende og ressourcekrævende. Ekspeditionstiden for en sådan opgave er flere uger. Ydermere er virksomheder nødt til at håndtere problemer som inkonsistente etiketter på grund af menneskelige fejl.
AWS er fokuseret på at hjælpe dig med at øge din udviklingshastighed og sænke dine omkostninger til at bygge sådanne systemer gennem avancerede analyser som ML. Vores vision er at bruge ML til automatiseret annotering, hvilket muliggør genoptræning af sikkerhedsmodeller og sikrer ensartede og pålidelige præstationsmålinger. I dette indlæg deler vi hvordan, ved at samarbejde med Amazons Worldwide Specialist Organization og Generativt AI Innovationscenter, udviklede vi en aktiv læringspipeline til afgrænsningsbokse for billedhoved i kabinen og annotering af nøglepunkter. Løsningen reducerer omkostningerne med over 90 %, accelererer annoteringsprocessen fra uger til timer med hensyn til ekspeditionstiden og muliggør genbrug til lignende ML-datamærkningsopgaver.
Løsningsoversigt
Aktiv læring er en ML-tilgang, der involverer en iterativ proces med udvælgelse og annotering af de mest informative data for at træne en model. Givet et lille sæt mærkede data og et stort sæt umærkede data, forbedrer aktiv læring modellens ydeevne, reducerer mærkningsindsatsen og integrerer menneskelig ekspertise til robuste resultater. I dette indlæg bygger vi en aktiv læringspipeline til billedannoteringer med AWS-tjenester.
Følgende diagram viser den overordnede ramme for vores aktive læringspipeline. Mærkningspipelinen tager billeder fra en Amazon Simple Storage Service (Amazon S3) samler og udsender kommenterede billeder i samarbejde med ML-modeller og menneskelig ekspertise. Træningspipelinen forbehandler data og bruger dem til at træne ML-modeller. Den indledende model er sat op og trænet på et lille sæt manuelt mærkede data og vil blive brugt i mærkningspipelinen. Mærkningspipeline og træningspipeline kan gentages gradvist med flere mærkede data for at forbedre modellens ydeevne.
I mærkningspipelinen er en Amazon S3-begivenhedsmeddelelse påkaldes, når en ny batch billeder kommer ind i Unlabeled Datastore S3-bøtten, hvilket aktiverer mærkningspipelinen. Modellen producerer slutningsresultaterne på de nye billeder. En tilpasset vurderingsfunktion udvælger dele af dataene baseret på konfidensresultatet eller andre brugerdefinerede funktioner. Disse data, med dets slutningsresultater, sendes til et menneskeligt mærkningsjob Amazon SageMaker Ground Truth skabt af rørledningen. Den menneskelige mærkningsproces hjælper med at annotere dataene, og de modificerede resultater kombineres med de resterende auto-annoterede data, som kan bruges senere af træningspipelinen.
Model genoptræning sker i træningspipelinen, hvor vi bruger datasættet, der indeholder de menneskemærkede data til at genoptræne modellen. Der produceres en manifestfil for at beskrive, hvor filerne er gemt, og den samme indledende model genoptrænes på de nye data. Efter genoptræning erstatter den nye model den oprindelige model, og næste iteration af den aktive læringspipeline starter.
Modelimplementering
Både mærkningspipeline og træningspipeline er indsat på AWS CodePipeline. AWS CodeBuild instanser bruges til implementering, som er fleksibel og hurtig til en lille mængde data. Når der er brug for hastighed, bruger vi Amazon SageMaker endepunkter baseret på GPU-instansen for at allokere flere ressourcer til at understøtte og accelerere processen.
Modellens genoptræningspipeline kan aktiveres, når der er nyt datasæt, eller når modellens ydeevne skal forbedres. En kritisk opgave i omskolingspipelinen er at have versionskontrolsystemet for både træningsdata og model. Selvom AWS-tjenester som f.eks Amazon-anerkendelse har den integrerede versionskontrolfunktion, som gør pipelinen ligetil at implementere, tilpassede modeller kræver metadatalogning eller yderligere versionskontrolværktøjer.
Hele arbejdsgangen implementeres ved hjælp af AWS Cloud Development Kit (AWS CDK) for at oprette nødvendige AWS-komponenter, herunder følgende:
- To roller for CodePipeline og SageMaker jobs
- To CodePipeline-job, som orkestrerer arbejdsgangen
- To S3-spande til rørledningernes kodeartefakter
- Én S3-spand til mærkning af jobmanifestet, datasæt og modeller
- For- og efterbehandling AWS Lambda funktioner til SageMaker Ground Truth-mærkningsopgaverne
AWS CDK-stakkene er meget modulariseret og kan genbruges på tværs af forskellige opgaver. Trænings-, inferenskoden og SageMaker Ground Truth-skabelonen kan erstattes af lignende aktive læringsscenarier.
Model træning
Modeltræning omfatter to opgaver: annotering af hovedafgrænsningsrammen og annotering af menneskelige nøglepunkter. Vi introducerer dem begge i dette afsnit.
Anmærkning til hovedafgrænsningsrammen
Hovedafgrænsningsboksannotering er en opgave til at forudsige placeringen af en afgrænsningsramme af det menneskelige hoved i et billede. Vi bruger en Tilpassede etiketter til Amazon-genkendelse model til hovedafgrænsningsboksannoteringer. Det følgende eksempel notesbog giver en trin-for-trin vejledning i, hvordan man træner en Rekognition Custom Labels-model via SageMaker.
Vi skal først forberede dataene for at starte træningen. Vi genererer en manifestfil til træningen og en manifestfil til testdatasættet. En manifestfil indeholder flere elementer, som hver især er til et billede. Følgende er et eksempel på manifestfilen, som inkluderer billedsti, størrelse og annoteringsoplysninger:
Ved hjælp af manifestfilerne kan vi indlæse datasæt til en Rekognition Custom Labels-model til træning og test. Vi itererede modellen med forskellige mængder træningsdata og testede den på de samme 239 usete billeder. I denne test er mAP_50
score steget fra 0.33 med 114 træningsbilleder til 0.95 med 957 træningsbilleder. Følgende skærmbillede viser præstationsmålingerne for den endelige Rekognition Custom Labels-model, som giver fremragende præstationer med hensyn til F1-score, præcision og genkaldelse.
Vi testede yderligere modellen på et tilbageholdt datasæt, der har 1,128 billeder. Modellen forudsiger konsekvent nøjagtige afgrænsningsboksforudsigelser på de usete data, hvilket giver en høj mAP_50
på 94.9 %. Følgende eksempel viser et automatisk kommenteret billede med en hovedafgrænsningsramme.
Nøglepunkter annotation
Nøglepunkters annotering producerer placeringer af nøglepunkter, herunder øjne, ører, næse, mund, nakke, skuldre, albuer, håndled, hofter og ankler. Ud over placeringsforudsigelsen er synligheden af hvert punkt nødvendig for at forudsige i denne specifikke opgave, som vi designer en ny metode til.
Til annotering af nøglepunkter bruger vi en Yolo 8 Pose model på SageMaker som den oprindelige model. Vi forbereder først dataene til træning, herunder generering af etiketfiler og en konfigurations-.yaml-fil, der følger Yolos krav. Efter at have forberedt dataene træner vi modellen og gemmer artefakter, herunder modelvægte-filen. Med den trænede modelvægte-fil kan vi kommentere de nye billeder.
I træningsfasen bruges alle de mærkede punkter med placeringer, inklusive synlige punkter og okkluderede punkter, til træning. Derfor giver denne model som standard placeringen og tilliden til forudsigelsen. I den følgende figur er en stor konfidensgrænse (hovedtærskel) nær 0.6 i stand til at dividere de punkter, der er synlige eller okkluderede, kontra uden for kameraets synspunkter. Okkluderede punkter og synlige punkter er dog ikke adskilt af konfidensen, hvilket betyder, at den forudsagte konfidens ikke er nyttig til at forudsige sigtbarheden.
For at få forudsigelse af synlighed introducerer vi en ekstra model, der er trænet på datasættet, der kun indeholder synlige punkter, eksklusive både okkluderede punkter og uden for kameraets synspunkter. Følgende figur viser fordelingen af punkter med forskellig synlighed. Synlige punkter og andre punkter kan adskilles i den ekstra model. Vi kan bruge en tærskel (ekstra tærskel) nær 0.6 for at få de synlige punkter. Ved at kombinere disse to modeller designer vi en metode til at forudsige placering og synlighed.
Et nøglepunkt forudsiges først af hovedmodellen med placering og hovedkonfidens, derefter får vi den ekstra konfidens forudsigelse fra den ekstra model. Dens synlighed klassificeres derefter som følger:
- Synlig, hvis dens hovedkonfidens er større end dens hovedtærskel, og dens yderligere konfidens er større end den ekstra tærskel
- Okkluderet, hvis dens hovedkonfidens er større end dens hovedtærskel, og dens yderligere konfidens er mindre end eller lig med den yderligere tærskel
- Uden for kameraets anmeldelse, hvis andet
Et eksempel på annotering af nøglepunkter er vist i det følgende billede, hvor faste mærker er synlige punkter, og hule mærker er okkluderede punkter. Uden for kameraets kontrolpunkter vises ikke.
Baseret på standarden OKS definition på MS-COCO-datasættet, er vores metode i stand til at opnå mAP_50 på 98.4 % på det usete testdatasæt. Med hensyn til synlighed giver metoden en klassificeringsnøjagtighed på 79.2 % på samme datasæt.
Menneskelig mærkning og omskoling
Selvom modellerne opnår stor ydeevne på testdata, er der stadig muligheder for at lave fejl på nye data fra den virkelige verden. Menneskelig mærkning er processen til at rette disse fejl for at forbedre modellens ydeevne ved hjælp af genoptræning. Vi designede en bedømmelsesfunktion, der kombinerede den konfidensværdi, der udsendes fra ML-modellerne til output af alle hovedafgrænsningsbokse eller nøglepunkter. Vi bruger det endelige resultat til at identificere disse fejl og de resulterende dårlige mærkede billeder, som skal sendes til den menneskelige mærkningsproces.
Ud over dårlige mærkede billeder er en lille del af billederne tilfældigt udvalgt til menneskelig mærkning. Disse menneskemærkede billeder føjes til den aktuelle version af træningssættet til genoptræning, forbedring af modellens ydeevne og overordnet annoteringsnøjagtighed.
I implementeringen bruger vi SageMaker Ground Truth til menneskelig mærkning behandle. SageMaker Ground Truth giver en brugervenlig og intuitiv brugergrænseflade til datamærkning. Følgende skærmbillede demonstrerer et SageMaker Ground Truth-mærkejob til annotering af head bounding box.
Følgende skærmbillede demonstrerer et SageMaker Ground Truth-mærkningsjob til annotering af nøglepunkter.
Omkostninger, hastighed og genbrugelighed
Omkostninger og hastighed er de vigtigste fordele ved at bruge vores løsning sammenlignet med menneskelig mærkning, som vist i følgende tabeller. Vi bruger disse tabeller til at repræsentere omkostningsbesparelser og hastighedsaccelerationer. Ved at bruge den accelererede GPU SageMaker-instans ml.g4dn.xlarge er trænings- og slutningsomkostningerne for hele livet på 100,000 billeder 99 % mindre end omkostningerne ved menneskelig mærkning, mens hastigheden er 10-10,000 gange hurtigere end den menneskelige mærkning, afhængigt af opgave.
Den første tabel opsummerer omkostningseffektivitetsmålingerne.
Model | mAP_50 baseret på 1,128 testbilleder | Træningsomkostninger baseret på 100,000 billeder | Slutningsomkostninger baseret på 100,000 billeder | Omkostningsreduktion sammenlignet med menneskelig annotering | Inferenstid baseret på 100,000 billeder | Tidsacceleration sammenlignet med menneskelig annotering |
Afgrænsningsboks til genkendelseshoved | 0.949 | $4 | $22 | 99% mindre | 5.5 h | Dage |
Yolo Nøglepunkter | 0.984 | $27.20 | * 10 $ | 99.9% mindre | minutter | uger |
Følgende tabel opsummerer præstationsmålinger.
Anmærkningsopgave | mAP_50 (%) | Uddannelsesomkostninger ($) | Inferensomkostninger ($) | Inferens tid |
Hovedafgrænsningsboks | 94.9 | 4 | 22 | 5.5 timer |
Centrale punkter | 98.4 | 27 | 10 | 5 minutter |
Desuden giver vores løsning genanvendelighed til lignende opgaver. Udviklinger i kameraopfattelse for andre systemer, såsom avanceret førerassistentsystem (ADAS) og systemer i kabinen, kan også anvende vores løsning.
Resumé
I dette indlæg viste vi, hvordan man bygger en aktiv læringspipeline til automatisk annotering af billeder i kabinen ved hjælp af AWS-tjenester. Vi demonstrerer kraften i ML, som gør dig i stand til at automatisere og fremskynde annoteringsprocessen, og fleksibiliteten i rammerne, der bruger modeller enten understøttet af AWS-tjenester eller tilpasset på SageMaker. Med Amazon S3, SageMaker, Lambda og SageMaker Ground Truth kan du strømline datalagring, annoteringer, træning og udrulning og opnå genbrug og samtidig reducere omkostningerne betydeligt. Ved at implementere denne løsning kan bilvirksomheder blive mere agile og omkostningseffektive ved at bruge ML-baserede avancerede analyser såsom automatiseret billedannotering.
Kom i gang i dag og lås op for kraften i AWS tjenester og maskinlæring til dine brugssager til registrering i kabinen i din bil!
Om forfatterne
Yanxiang Yu er en Applied Scientist hos Amazon Generative AI Innovation Center. Med over 9 års erfaring med at bygge AI og maskinlæringsløsninger til industrielle applikationer har han specialiseret sig i generativ AI, computervision og tidsseriemodellering.
Tianyi Mao er en anvendt videnskabsmand ved AWS med base i Chicago-området. Han har 5+ års erfaring med at bygge maskinlæring og deep learning-løsninger og fokuserer på computervision og forstærkende læring med menneskelig feedback. Han nyder at arbejde med kunder for at forstå deres udfordringer og løse dem ved at skabe innovative løsninger ved hjælp af AWS-tjenester.
Yanru Xiao er en Applied Scientist ved Amazon Generative AI Innovation Center, hvor han bygger AI/ML-løsninger til kundernes virkelige forretningsproblemer. Han har arbejdet inden for flere områder, herunder fremstilling, energi og landbrug. Yanru opnåede sin ph.d. i datalogi fra Old Dominion University.
Paul George er en dygtig produktleder med over 15 års erfaring inden for bilteknologier. Han er dygtig til at lede produktledelse, strategi, Go-to-Market og systemingeniørteams. Han har inkuberet og lanceret adskillige nye sanse- og perceptionsprodukter globalt. Hos AWS leder han strategi og go-to-market for arbejdsbelastninger af autonome køretøjer.
Caroline Chung er ingeniørchef hos Veoneer (opkøbt af Magna International), hun har over 14 års erfaring med at udvikle sanse- og perceptionssystemer. Hun leder i øjeblikket før-udviklingsprogrammer for interiørsansning hos Magna International, der leder et team af computersynsingeniører og dataforskere.
- SEO Powered Content & PR Distribution. Bliv forstærket i dag.
- PlatoData.Network Vertical Generative Ai. Styrk dig selv. Adgang her.
- PlatoAiStream. Web3 intelligens. Viden forstærket. Adgang her.
- PlatoESG. Kulstof, CleanTech, Energi, Miljø, Solenergi, Affaldshåndtering. Adgang her.
- PlatoHealth. Bioteknologiske og kliniske forsøgs intelligens. Adgang her.
- Kilde: https://aws.amazon.com/blogs/machine-learning/build-an-active-learning-pipeline-for-automatic-annotation-of-images-with-aws-services/
- :har
- :er
- :ikke
- :hvor
- $OP
- 000
- 1
- 100
- 114
- 121
- 14
- 15 år
- 15 %
- 16
- 2%
- 24
- 300
- 33
- 400
- 440
- 7
- 8
- 9
- 97
- 98
- a
- I stand
- fremskynde
- accelereret
- accelererer
- acceleration
- ulykker
- gennemført
- nøjagtighed
- præcis
- opnå
- erhvervede
- tværs
- aktivering
- aktiv
- ADA'er
- tilføjet
- Desuden
- Yderligere
- dygtig
- vedtage
- fremskreden
- fordele
- Efter
- adræt
- Landbrug
- AI
- AI / ML
- algoritmer
- Alle
- tildele
- også
- Skønt
- Amazon
- Amazon Web Services
- beløb
- beløb
- an
- analytics
- ,
- enhver
- applikationer
- anvendt
- tilgang
- ER
- OMRÅDE
- kunstig
- kunstig intelligens
- Kunstig intelligens (AI)
- AS
- hjælpe
- At
- auto
- automatisere
- Automatiseret
- Automatisk Ur
- automotive
- autonom
- AWS
- Bad
- baseret
- BE
- bliver
- Billion
- Blog
- både
- Boks
- kasser
- bygge
- Bygning
- bygger
- virksomhed
- by
- værelse
- kameraer
- CAN
- stand
- bil
- caroline
- center
- udfordringer
- Chicago
- valgt
- klassificering
- klassificeret
- Cloud
- kode
- samarbejde
- kombination
- kombineret
- kombinerer
- kommer
- Virksomheder
- selskab
- sammenlignet
- komplekse
- komponenter
- Compute
- computer
- Datalogi
- Computer Vision
- tillid
- Konfiguration
- konsekvent
- konsekvent
- forbrugende
- indeholder
- fortsætter
- kontrol
- samarbejde
- korrigere
- Koste
- omkostningsbesparelser
- Omkostninger
- Crash
- skabe
- oprettet
- Oprettelse af
- kritisk
- Nuværende
- For øjeblikket
- skik
- Kunder
- tilpassede
- banebrydende
- data
- data opbevaring
- datasæt
- deal
- dyb
- dyb læring
- Standard
- definition
- leveret
- demonstrere
- demonstreret
- demonstrerer
- Afhængigt
- indsat
- implementering
- dybde
- beskrive
- Design
- konstrueret
- udviklet
- udviklere
- udvikling
- Udvikling
- udvikling
- diagram
- forskellige
- fordeling
- driver
- grund
- hver
- indsats
- enten
- elektronisk
- Elektronik
- smergel
- muliggør
- muliggør
- energi
- Engineering
- Ingeniører
- forbedre
- styrke
- sikring
- Hele
- lige
- fejl
- begivenhed
- eksempel
- Eksklusive
- fremskynde
- erfaring
- ekspertise
- Øjne
- f1
- FAST
- hurtigere
- Feature
- feedbacks
- Fields
- Figur
- File (Felt)
- Filer
- endelige
- Fornavn
- Fleksibilitet
- fleksibel
- fokuserede
- fokuserer
- efter
- følger
- Til
- Framework
- fra
- funktion
- funktioner
- yderligere
- Endvidere
- generere
- generere
- generative
- Generativ AI
- få
- given
- Global
- Globalt
- Gå-på-marked
- GPU
- gradvist
- stor
- større
- Ground
- sker
- Hardware
- Have
- he
- hoved
- højde
- hjælpe
- hjælper
- Høj
- stærkt
- hans
- historie
- HOURS
- Hvordan
- How To
- Men
- HTML
- http
- HTTPS
- menneskelig
- identificere
- if
- billede
- billeder
- gennemføre
- implementering
- implementeret
- gennemføre
- forbedrer
- forbedring
- in
- omfatter
- Herunder
- Forøg
- øget
- inkuberet
- industrielle
- oplysninger
- informative
- initial
- Innovation
- innovativ
- instans
- integreret
- Integrerer
- Intelligens
- interiør
- internationalt
- ind
- indføre
- intuitiv
- påberåbes
- involverer
- spørgsmål
- IT
- Varer
- iteration
- ITS
- Job
- Karriere
- jpeg
- jpg
- Nøgle
- etiket
- mærkning
- Etiketter
- stor
- senere
- lanceret
- leder
- førende
- Leads
- læring
- til venstre
- mindre
- Livet
- ligesom
- belastning
- placering
- placeringer
- logning
- lavere
- maskine
- machine learning
- Main
- maerker
- Making
- ledelse
- leder
- styring
- manuelt
- Producenter
- Produktion
- midler
- Metadata
- metode
- Metrics
- fejl
- afbøde
- ML
- model
- modellering
- modeller
- modificeret
- mere
- mest
- munden
- flere
- I nærheden af
- nødvendig
- Behov
- behov
- behov
- Ny
- næste
- næse
- roman
- objekter
- opnået
- of
- tilbyde
- Gammel
- on
- ONE
- kun
- or
- organisation
- Andet
- vores
- ud
- output
- udgange
- uden for
- i løbet af
- samlet
- dele
- sti
- opfattelsen
- ydeevne
- pipeline
- plato
- Platon Data Intelligence
- PlatoData
- Punkt
- punkter
- del
- udgør
- muligheder
- Indlæg
- magt
- Precision
- forudsige
- forudsagde
- forudsige
- forudsigelse
- Forudsigelser
- forudser
- Forbered
- forberede
- forhindre
- problemer
- behandle
- produceret
- producerer
- Produkt
- produktstyring
- Produkter
- Programmer
- giver
- formål
- radar
- virkelige verden
- reducerer
- reducere
- reduktion
- pålidelig
- resterende
- udskiftes
- repræsentere
- kræver
- Krav
- ressource
- Ressourcer
- resulterende
- Resultater
- genanvendelige
- gennemgå
- ridning
- robust
- roller
- Sikkerhed
- sagemaker
- samme
- Gem
- Besparelser
- scenarier
- Videnskab
- Videnskabsmand
- forskere
- score
- Sektion
- udvælgelse
- udvælger
- sensorer
- sendt
- Series
- Tjenester
- sæt
- flere
- Del
- hun
- skuldre
- viste
- vist
- Shows
- betydeligt
- lignende
- Simpelt
- Størrelse
- lille
- solid
- løsninger
- Løsninger
- SOLVE
- Space
- specialist
- specialiseret
- speciale
- specifikke
- hastighed
- Stakke
- Stage
- standard
- starte
- påbegyndt
- starter
- Stadig
- opbevaring
- opbevaret
- ligetil
- Strategi
- strømline
- sådan
- support
- Understøttet
- systemet
- Systemer
- bord
- tager
- Opgaver
- opgaver
- hold
- hold
- Teknologier
- skabelon
- vilkår
- prøve
- afprøvet
- Test
- end
- at
- deres
- Them
- derefter
- Der.
- derfor
- Disse
- de
- denne
- tærskel
- Gennem
- tid
- Tidsserier
- gange
- til
- i dag
- værktøjer
- top
- Trafik
- Tog
- uddannet
- Kurser
- Sandheden
- tutorial
- to
- typen
- typer
- ui
- forstå
- enheder
- universitet
- låse
- brug
- anvendte
- nyttigt
- brugervenlig
- bruger
- ved brug af
- Ved hjælp af
- værdi
- køretøj
- udgave
- versus
- meget
- via
- synspunkter
- synlighed
- synlig
- vision
- mængder
- we
- web
- webservices
- uger
- hvornår
- som
- mens
- Hele
- bredde
- vilje
- med
- arbejdede
- workflow
- arbejder
- world
- verdensplan
- yaml
- år
- Ja
- hvilket giver
- udbytter
- Du
- Din
- zephyrnet