5 grunner til at du trenger syntetiske data

5 grunner til at du trenger syntetiske data

Kilde node: 1942868

5 grunner til at du trenger syntetiske data
Syntetiske data generert fra Kubric
 

For å trene en maskinlæringsmodell trenger du data. Datavitenskapsoppgaver er vanligvis ikke en Kaggle-konkurranse der du har et fint stort kuratert datasett som kommer forhåndsmerket. Noen ganger må du samle inn, organisere og rense dine egne data. Denne prosessen med å samle inn og merke data i den virkelige verden kan være tidkrevende, tungvint, dyr, unøyaktig og noen ganger farlig. Videre, på slutten av denne prosessen, kan du ende opp med at dataene du møtte i den virkelige verden ikke nødvendigvis er dataene du ønsker når det gjelder kvalitet, mangfold (f.eks. klasseubalanse) og kvantitet. Nedenfor er vanlige problemer du kan støte på når du arbeider med ekte data: 

  • Ekte datainnsamling og merking er ikke skalerbare
  • Manuell merking av ekte data kan noen ganger være umulig
  • Ekte data har personvern- og sikkerhetsproblemer
  • Ekte data er ikke programmerbare
  • En modell som er trent utelukkende på ekte data, er ikke ytelsesdyktig nok (f.eks. langsom utviklingshastighet)

Heldigvis kan problemer som disse løses med syntetiske data. Du lurer kanskje, hva er syntetiske data? Syntetiske data kan defineres som kunstig genererte data som vanligvis lages ved hjelp av algoritmer som simulerer virkelige prosesser, fra oppførselen til andre trafikanter helt ned til oppførselen til lys når det samhandler med overflater. Dette innlegget går over begrensningene til virkelige data, og hvordan syntetiske data kan bidra til å overvinne disse problemene og forbedre modellytelsen. 

For små datasett er det vanligvis mulig å samle inn og merke data manuelt; Imidlertid krever mange komplekse maskinlæringsoppgaver enorme datasett for opplæring. For eksempel trenger modeller som er trent for autonome kjøretøyapplikasjoner store mengder data samlet inn fra sensorer koblet til biler eller droner. Denne datainnsamlingsprosessen er treg og kan ta måneder eller til og med år. Når rådataene er samlet inn, må de deretter kommenteres manuelt av mennesker, noe som også er dyrt og tidkrevende. Videre er det ingen garanti for at de merkede dataene som kommer tilbake vil være nyttige som treningsdata, siden de kanskje ikke inneholder eksempler som informerer om modellens nåværende kunnskapshull. 

[innebygd innhold][innebygd innhold]

Merking av disse dataene innebærer ofte at mennesker tegner etiketter for hånd på toppen av sensordata. Dette er svært kostbart ettersom høyt betalte ML-team ofte bruker en stor del av tiden sin på å sikre at etikettene er riktige og sende feil tilbake til etikettørene. En stor styrke med syntetiske data er at du kan generere så mye perfekt merket data du vil. Alt du trenger er en måte å generere syntetiske kvalitetsdata på. 

Programvare med åpen kildekode for å generere syntetiske data: Kubric (flerobjektvideoer med segmenteringsmasker, dybdekart og optisk flyt) og SDV (tabell-, relasjons- og tidsseriedata).

Noen (av mange) selskaper som selger produkter eller bygger plattformer som kan generere syntetiske data inkluderer Gretel.ai (syntetiske datasett som sikrer personvernet til ekte data), NVIDIA (omnivers), og Parallelt domene (autonome kjøretøy). For mer, se 2022-listen over syntetiske dataselskaper

5 grunner til at du trenger syntetiske data
Bilde fra Parallelt domene
 

Det er noen data som mennesker ikke helt kan tolke og merke. Nedenfor er noen brukstilfeller der syntetiske data er det eneste alternativet: 

  • Nøyaktig estimering av dybde og optisk flyt fra enkeltbilder
  • Selvkjørende applikasjoner som bruker radardata som ikke er synlige for det menneskelige øyet 
  • Generer dype forfalskninger som kan brukes til å teste ansiktsgjenkjenningssystemer

5 grunner til at du trenger syntetiske data
Bilde av Michael Galarnyk
 

Syntetiske data er svært nyttig for applikasjoner i domener der du ikke enkelt kan få ekte data. Dette inkluderer noen typer bilulykkedata og de fleste typer helsedata som har personvernbegrensninger (f.eks. elektroniske helsejournaler). De siste årene har helsepersonell vært interessert i å forutsi atrieflimmer (uregelmessig hjerterytme) ved hjelp av EKG- og PPG-signaler. Å utvikle en arytmidetektor er ikke bare utfordrende siden merking av disse signalene er kjedelig og kostbar, men også på grunn av personvernbegrensninger. Dette er en grunn til at det er det forskning på å simulere disse signalene

Det er viktig å understreke at innsamling av ekte data ikke bare tar tid og energi, men kan faktisk være farlig. Et av kjerneproblemene med robotapplikasjoner som selvkjørende biler er at de er fysiske applikasjoner for maskinlæring. Du kan ikke distribuere en usikker modell i den virkelige verden og ha en krasj på grunn av mangel på relevante data. Å utvide et datasett med syntetiske data kan hjelpe modeller med å unngå disse problemene. 

Følgende er noen selskaper som bruker syntetiske data for å forbedre applikasjonssikkerheten: Toyota, Waymoog cruise.

5 grunner til at du trenger syntetiske data
Bilde fra Parallelt domene
 

Syntetisk bilde av et okkludert barn på en sykkel som dukker opp bak en skolebuss og sykler over gaten i et forstadsmiljø i California-stil.

Autonome kjøretøyapplikasjoner håndterer ofte relativt "uvanlige" (i forhold til normale kjøreforhold) hendelser som fotgjengere om natten eller syklister som sykler midt på veien. Modeller trenger ofte hundretusener eller til og med millioner av eksempler for å lære et scenario. Et stort problem er at de innsamlede dataene fra den virkelige verden kanskje ikke er det du leter etter når det gjelder kvalitet, mangfold (f.eks. klasseubalanse, værforhold, plassering) og kvantitet. Et annet problem er at for selvkjørende biler og roboter vet du ikke alltid hvilke data du trenger i motsetning til tradisjonelle maskinlæringsoppgaver med faste datasett og faste benchmarks. Mens noen dataforsterkningsteknikker som systematisk eller tilfeldig endrer bilder er nyttige, kan disse teknikkene introdusere sine egne problemer

Det er her syntetiske data kommer inn. APIer for generering av syntetiske data lar deg konstruere datasett. Disse APIene kan spare deg for mye penger siden det er veldig dyrt å bygge roboter og samle inn data i den virkelige verden. Det er mye bedre og raskere å prøve å generere data og finne ut de tekniske prinsippene ved å bruke syntetisk datasett.

Følgende er eksempler som fremhever hvordan programmerbare syntetiske data hjelper modeller å lære: forebygging av uredelige transaksjoner (American Express), bedre syklistdeteksjon (Parallell Domain)og kirurgisk analyse og gjennomgang (Hutom.io).

5 grunner til at du trenger syntetiske data
Faser i modellutviklingssyklusen | Bilde fra Jules S. Damji 
 

I industrien finnes det en rekke faktorer som påvirker levedyktigheten/ytelsen til et maskinlæringsprosjekt i både utvikling og produksjon (f.eks. datainnsamling, merknader, modelltrening, skalering, distribusjon, overvåking, omskolering av modellen og utviklingshastighet). Nylig, 18 maskinlæringsingeniører deltok i en intervjustudie som hadde som mål å forstå vanlige MLOps-praksis og utfordringer på tvers av organisasjoner og applikasjoner (f.eks. autonome kjøretøy, maskinvare, detaljhandel, annonser, anbefalingssystemer, etc.). En av konklusjonene fra studien var viktigheten av utviklingshastighet, som grovt kan defineres som evnen til raskt å prototyper og iterere på ideer.

En faktor som påvirker utviklingshastigheten er behovet for å ha data for å utføre den innledende modelltreningen og evalueringen samt hyppig modellomskolering på grunn av modellytelse som avtar over tid på grunn av datadrift, konseptdrift, eller til og med skjevhet i trening og servering. 

 

5 grunner til at du trenger syntetiske data
Bilde fra Tydeligvis AI
 

Studien rapporterte også at dette behovet førte til at noen organisasjoner satte opp et team for å merke live data ofte. Dette er dyrt, tidkrevende og begrenser en organisasjons mulighet til å omskolere modeller ofte. 

 

5 grunner til at du trenger syntetiske data
Bilde fra Gretel.ai
 

Merk at dette diagrammet ikke dekker hvordan syntetiske data også kan brukes til ting som MLOps-testing i anbefalere.

Syntetiske data har potensial til å bli brukt sammen med data fra den virkelige verden i livssyklusen for maskinlæring (bildet over) for å hjelpe organisasjoner med å holde modellene sine mer effektive. 

Syntetisk datagenerering blir mer og mer vanlig i arbeidsflyter for maskinlæring. Faktisk, Gartner spår at innen 2030 vil syntetiske data bli brukt mye mer enn virkelige data for å trene maskinlæringsmodeller. Hvis du har spørsmål eller tanker om dette innlegget, ta gjerne kontakt i kommentarfeltet nedenfor eller gjennom Twitter.
 
 
Michael Galarnyk er Data Science Professional, og jobber i Developer Relations på Anyscale.
 

Tidstempel:

Mer fra KDnuggets