Anslut dig till vÄrt nÀtverk!

AI 101

Vad Àr syntetiska data?

mm

Vad Àr syntetiska data?

Syntetisk data Àr en snabbt vÀxande trend och ett framvÀxande verktyg inom datavetenskap. Vad Àr syntetisk data exakt? Det korta svaret Àr att syntetisk data bestÄr av data som inte Àr baserad pÄ nÄgra verkliga fenomen eller hÀndelser, snarare genereras det via ett datorprogram. Men varför blir syntetisk data sÄ viktig för datavetenskap? Hur skapas syntetisk data? LÄt oss utforska svaren pÄ dessa frÄgor.

Vad Àr en syntetisk datauppsÀttning?

Som termen "syntetisk" antyder genereras syntetiska datauppsÀttningar genom datorprogram, istÀllet för att skapas genom dokumentation av verkliga hÀndelser. Det primÀra syftet med en syntetisk datauppsÀttning Àr att vara mÄngsidig och robust nog att vara anvÀndbar för utbildning av maskininlÀrningsmodeller.

För att vara anvĂ€ndbar för en maskininlĂ€rningsklassificerare bör den syntetiska datan ha vissa egenskaper. Även om data kan vara kategoriska, binĂ€ra eller numeriska, bör datauppsĂ€ttningens lĂ€ngd vara godtycklig och data ska genereras slumpmĂ€ssigt. De slumpmĂ€ssiga processer som anvĂ€nds för att generera data bör vara kontrollerbara och baseras pĂ„ olika statistiska fördelningar. SlumpmĂ€ssigt brus kan ocksĂ„ placeras i datamĂ€ngden.

Om den syntetiska datan anvÀnds för en klassificeringsalgoritm, bör mÀngden klassseparation vara anpassningsbar, sÄ att klassificeringsproblemet kan göras lÀttare eller svÄrare enligt problemets krav. Under tiden, för en regressionsuppgift, kan icke-linjÀra generativa processer anvÀndas för att generera data.

Varför anvÀnda syntetiska data?

NÀr ramverk för maskininlÀrning som TensorfFlow och PyTorch blir enklare att anvÀnda och fördesignade modeller för datorseende och naturlig sprÄkbehandling blir mer allmÀnt förekommande och kraftfulla, Àr det primÀra problemet som datavetare mÄste möta insamlingen och hanteringen av data. Företag har ofta svÄrt att skaffa stora mÀngder data för att trÀna en korrekt modell inom en given tidsram. HandmÀrkning av data Àr ett kostsamt, lÄngsamt sÀtt att skaffa data. Men att generera och anvÀnda syntetisk data kan hjÀlpa datavetare och företag att övervinna dessa hinder och utveckla pÄlitliga modeller för maskininlÀrning pÄ ett snabbare sÀtt.

Det finns ett antal fördelar med att anvÀnda syntetisk data. Det mest uppenbara sÀttet att anvÀnda syntetiska data gynnar datavetenskap Àr att det minskar behovet av att fÄnga data frÄn verkliga hÀndelser, och av denna anledning blir det möjligt att generera data och konstruera en datauppsÀttning mycket snabbare Àn en datauppsÀttning som Àr beroende av verkliga hÀndelser. Detta innebÀr att stora mÀngder data kan produceras pÄ kort tid. Detta gÀller sÀrskilt för hÀndelser som sÀllan intrÀffar, som om en hÀndelse sÀllan intrÀffar i naturen, kan mer data hÄnas frÄn nÄgra Àkta dataprover. Utöver det kan data automatiskt mÀrkas nÀr de genereras, vilket drastiskt minskar den tid som behövs för att mÀrka data.

Syntetisk data kan ocksÄ vara anvÀndbar för att fÄ trÀningsdata för edge-fall, som Àr instanser som kan intrÀffa sÀllan men som Àr avgörande för framgÄngen för din AI. Kantfall Àr hÀndelser som liknar det primÀra mÄlet för en AI men skiljer sig Ät pÄ viktiga sÀtt. Till exempel kan objekt som endast Àr delvis synliga betraktas som kantfall nÀr man utformar en bildklassificerare.

Slutligen syntetiska datamÀngder kan minimera integritetsproblem. Försök att anonymisera data kan vara ineffektiva, eftersom Àven om kÀnsliga/identifierande variabler tas bort frÄn datasetet kan andra variabler fungera som identifierare nÀr de kombineras. Det hÀr Àr inte ett problem med syntetisk data, eftersom den aldrig var baserad pÄ en verklig person, eller verklig hÀndelse, i första hand.

AnvÀnder fall för syntetiska data

Syntetisk data har ett brett utbud av anvÀndningar, eftersom det kan appliceras pÄ nÀstan vilken maskininlÀrningsuppgift som helst. Vanliga fall för syntetiska data inkluderar sjÀlvkörande fordon, sÀkerhet, robotteknik, bedrÀgeriskydd och hÀlsovÄrd.

Ett av de första anvÀndningsfallen för syntetisk data var sjÀlvkörande bilar, eftersom syntetisk data anvÀnds för att skapa trÀningsdata för bilar under förhÄllanden dÀr det Àr svÄrt eller farligt att fÄ riktig trÀningsdata pÄ vÀgen. Syntetisk data Àr ocksÄ anvÀndbar för att skapa data som anvÀnds för att trÀna bildigenkÀnningssystem, som övervakningssystem, mycket mer effektivt Àn att manuellt samla in och mÀrka en massa trÀningsdata. Robotsystem kan vara lÄngsamma att trÀna och utveckla med traditionella datainsamlings- och trÀningsmetoder. Syntetisk data tillÄter robotföretag att testa och konstruera robotsystem genom simuleringar. BedrÀgeriskyddssystem kan dra nytta av syntetisk data, och nya metoder för upptÀckt av bedrÀgeri kan trÀnas och testas med data som Àr stÀndigt ny nÀr syntetisk data anvÀnds. Inom sjukvÄrdsomrÄdet kan syntetiska data anvÀndas för att designa hÀlsoklassificerare som Àr korrekta, men ÀndÄ bevarar mÀnniskors integritet, eftersom data inte kommer att baseras pÄ riktiga personer.

Syntetiska datautmaningar

Även om anvĂ€ndningen av syntetisk data för med sig mĂ„nga fördelar, medför det ocksĂ„ mĂ„nga utmaningar.

NÀr syntetisk data skapas saknar den ofta extremvÀrden. Outliers förekommer naturligt i data, och Àven om de ofta tas bort frÄn trÀningsdatauppsÀttningar, kan deras existens vara nödvÀndig för att trÀna verkligt tillförlitliga maskininlÀrningsmodeller. Utöver detta kan kvaliteten pÄ syntetiska data variera mycket. Syntetisk data genereras ofta med ingÄngsdata, eller frödata, och dÀrför kan kvaliteten pÄ data vara beroende av kvaliteten pÄ indata. Om den data som anvÀnds för att generera den syntetiska datan Àr partisk, kan den genererade datan vidmakthÄlla den biasen. Syntetisk data krÀver ocksÄ nÄgon form av utdata/kvalitetskontroll. Det mÄste kontrolleras mot mÀnskligt kommenterade data, eller annars Àr autentisk data nÄgon form.

Hur skapas syntetiska data?

Syntetisk data skapas programmatiskt med maskininlÀrningstekniker. Klassiska maskininlÀrningstekniker som beslutstrÀd kan anvÀndas, liksom tekniker för djupinlÀrning. Kraven pÄ den syntetiska datan kommer att pÄverka vilken typ av algoritm som anvÀnds för att generera datan. BeslutstrÀd och liknande maskininlÀrningsmodeller lÄter företag skapa icke-klassiska, multimodala datadistributioner, trÀnade pÄ exempel pÄ verklig data. Generering av data med dessa algoritmer kommer att ge data som Àr starkt korrelerade med den ursprungliga trÀningsdatan. I de fall dÀr den typiska distributionen av data Àr kÀnd kan ett företag generera syntetisk data genom att anvÀnda en Monte Carlo-metod.

Deep learning-baserade metoderna för att generera syntetisk data anvÀnder vanligtvis antingen en variationsautoencoder (VAE) eller ett generativt motstÄndsnÀtverk (GAN). VAE: er Àr oövervakade maskininlÀrningsmodeller som anvÀnder kodare och avkodare. Kodardelen av en VAE Àr ansvarig för att komprimera data till en enklare, kompakt version av den ursprungliga datamÀngden, som avkodaren sedan analyserar och anvÀnder för att generera en representation av basdata. En VAE trÀnas med mÄlet att ha ett optimalt förhÄllande mellan indata och utdata, en dÀr bÄde indata och utdata Àr extremt lika.

NÀr det kommer till GAN-modeller kallas de för "adversariella" nÀtverk pÄ grund av att GAN faktiskt Àr tvÄ nÀtverk som konkurrerar med varandra. Generatorn Àr ansvarig för att generera syntetisk data, medan det andra nÀtverket (diskriminatorn) fungerar genom att jÀmföra genererad data med en riktig datauppsÀttning och försöker avgöra vilken data som Àr falsk. NÀr diskriminatorn fÄngar falska data, meddelas generatorn detta och den gör Àndringar för att försöka fÄ en ny batch data av diskriminatorn. I sin tur blir diskriminatorn bÀttre och bÀttre pÄ att upptÀcka förfalskningar. De tvÄ nÀtverken trÀnas mot varandra, med förfalskningar som hela tiden blir mer verklighetstrogna.

Bloggare och programmerare med specialiteter inom MaskininlÀrning och Deep Learning Àmnen. Daniel hoppas kunna hjÀlpa andra att anvÀnda kraften i AI för socialt bÀsta.