Povežite se s nama

AI 101

Što su sintetički podaci?

mm

Što su sintetički podaci?

Sintetički podaci su trend koji se brzo Å”iri i alat u nastajanju u području znanosti o podacima. Å to su točno sintetički podaci? Kratak odgovor je da se sintetički podaci sastoje od podatke koji se ne temelje na pojavama ili događajima iz stvarnog svijeta, nego se generira pomoću računalnog programa. Ipak, zaÅ”to sintetički podaci postaju toliko važni za podatkovnu znanost? Kako nastaju sintetički podaci? Istražimo odgovore na ova pitanja.

Što je sintetički skup podataka?

Kao Å”to izraz "sintetski" sugerira, sintetički skupovi podataka generiraju se pomoću računalnih programa, umjesto da se sastavljaju kroz dokumentaciju događaja iz stvarnog svijeta. Primarna svrha sintetičkog skupa podataka je da bude svestran i dovoljno robustan da bude koristan za obuku modela strojnog učenja.

Kako bi bili korisni za klasifikator strojnog učenja, sintetički podaci trebaju imati određena svojstva. Iako podaci mogu biti kategorički, binarni ili numerički, duljina skupa podataka trebala bi biti proizvoljna, a podaci bi trebali biti generirani nasumično. Nasumični procesi koji se koriste za generiranje podataka trebali bi se moći kontrolirati i temeljiti na različitim statističkim distribucijama. Nasumični Å”um također se može smjestiti u skup podataka.

Ako se sintetički podaci koriste za algoritam klasifikacije, količina razdvajanja klasa treba biti prilagodljiva, kako bi se problem klasifikacije mogao olakÅ”ati ili otežati u skladu sa zahtjevima problema. U međuvremenu, za zadatak regresije, nelinearni generativni procesi mogu se koristiti za generiranje podataka.

ZaŔto koristiti sintetičke podatke?

Kako okviri strojnog učenja kao Å”to su TensorfFlow i PyTorch postaju lakÅ”i za koriÅ”tenje, a unaprijed dizajnirani modeli za računalni vid i obradu prirodnog jezika postaju sveprisutniji i moćniji, primarni problem s kojim se znanstvenici moraju suočiti jest prikupljanje i rukovanje podacima. Tvrtke često imaju poteÅ”koća s prikupljanjem velikih količina podataka za obuku preciznog modela unutar zadanog vremenskog okvira. Ručno označavanje podataka je skup i spor način prikupljanja podataka. Međutim, generiranje i koriÅ”tenje sintetičkih podataka može pomoći znanstvenicima i tvrtkama da prevladaju te prepreke i brže razviju pouzdane modele strojnog učenja.

Postoje brojne prednosti koriÅ”tenja sintetičkih podataka. Najočitiji način na koji upotreba sintetičkih podataka koristi znanosti o podacima je taj Å”to smanjuje potrebu za hvatanjem podataka iz događaja u stvarnom svijetu, i iz tog razloga postaje moguće generirati podatke i konstruirati skup podataka mnogo brže od skupa podataka koji ovisi o događaji iz stvarnog svijeta. To znači da se velike količine podataka mogu proizvesti u kratkom vremenskom roku. To posebno vrijedi za događaje koji se rijetko događaju, jer ako se događaj rijetko događa u divljini, viÅ”e podataka može se lažirati iz nekih pravih uzoraka podataka. Osim toga, podaci se mogu automatski označavati kako se generiraju, čime se drastično smanjuje vrijeme potrebno za označavanje podataka.

Sintetički podaci također mogu biti korisni za dobivanje podataka o obuci za rubne slučajeve, Å”to su slučajevi koji se mogu dogoditi rijetko, ali su ključni za uspjeh vaÅ”e umjetne inteligencije. Rubni slučajevi su događaji koji su vrlo slični primarnoj meti umjetne inteligencije, ali se razlikuju na važne načine. Na primjer, objekti koji su samo djelomično vidljivi mogu se smatrati rubnim slučajevima kada se dizajnira klasifikator slike.

Konačno, sintetički skupovi podataka može umanjiti brigu o privatnosti. PokuÅ”aji anonimiziranja podataka mogu biti neučinkoviti, jer čak i ako se osjetljive/identifikacijske varijable uklone iz skupa podataka, druge varijable mogu djelovati kao identifikatori kada se kombiniraju. Ovo nije problem sa sintetičkim podacima, jer se nikad nisu temeljili na stvarnoj osobi ili stvarnom događaju.

Koristi slučajeve za sintetičke podatke

Sintetički podaci imaju Å”irok izbor namjene, jer se može primijeniti na bilo koji zadatak strojnog učenja. Slučajevi uobičajene upotrebe za sintetičke podatke uključuju samovozeća vozila, sigurnost, robotiku, zaÅ”titu od prijevara i zdravstvenu skrb.

Jedan od početnih slučajeva upotrebe sintetičkih podataka bili su samovozeći automobili, jer se sintetički podaci koriste za stvaranje podataka o obuci za automobile u uvjetima u kojima je dobivanje stvarnih podataka o obuci na cesti teÅ”ko ili opasno. Sintetički podaci također su korisni za stvaranje podataka koji se koriste za obuku sustava za prepoznavanje slika, kao Å”to su sustavi nadzora, mnogo učinkovitije od ručnog prikupljanja i označavanja hrpe podataka za obuku. Robotski sustavi mogu se sporo obučavati i razvijati s tradicionalnim metodama prikupljanja podataka i obuke. Sintetički podaci omogućuju tvrtkama koje se bave robotikom testiranje i projektiranje robotskih sustava putem simulacija. Sustavi za zaÅ”titu od prijevara mogu imati koristi od sintetičkih podataka, a nove metode otkrivanja prijevara mogu se uvježbati i testirati s podacima koji su stalno novi kada se koriste sintetički podaci. U području zdravstva, sintetički podaci mogu se koristiti za dizajniranje zdravstvenih klasifikatora koji su točni, ali čuvaju privatnost ljudi, jer se podaci neće temeljiti na stvarnim ljudima.

Izazovi sintetičkih podataka

Iako upotreba sintetičkih podataka sa sobom donosi mnoge prednosti, ona donosi i mnoge izazove.

Kada se stvaraju sintetički podaci, često im nedostaju odstupanja. Outlieri se pojavljuju u podacima prirodno, i iako se često ispuÅ”taju iz skupova podataka za obuku, njihovo postojanje može biti neophodno za obuku istinski pouzdanih modela strojnog učenja. Osim toga, kvaliteta sintetičkih podataka može biti vrlo promjenjiva. Sintetički podaci često se generiraju s ulaznim ili početnim podacima, pa stoga kvaliteta podataka može ovisiti o kvaliteti ulaznih podataka. Ako su podaci koriÅ”teni za generiranje sintetičkih podataka pristrani, generirani podaci mogu ovjekovječiti tu pristranost. Sintetički podaci također zahtijevaju neki oblik izlaza/kontrole kvalitete. Potrebno ga je provjeriti s podacima koje su označili ljudi ili su u suprotnom autentični podaci neki oblik.

Kako se stvaraju sintetički podaci?

Sintetički podaci izrađuju se programski tehnikama strojnog učenja. Mogu se koristiti klasične tehnike strojnog učenja poput stabala odlučivanja, kao Å”to mogu i tehnike dubokog učenja. Zahtjevi za sintetičke podatke utjecat će na vrstu algoritma koji se koristi za generiranje podataka. Stabla odlučivanja i slični modeli strojnog učenja omogućuju tvrtkama stvaranje neklasičnih, multimodalnih distribucija podataka, obučenih na primjerima podataka iz stvarnog svijeta. Generiranje podataka pomoću ovih algoritama pružit će podatke koji su u visokoj korelaciji s izvornim podacima o obuci. Na primjer, gdje je poznata tipična distribucija podataka, tvrtka može generirati sintetičke podatke koriÅ”tenjem Monte Carlo metode.

Metode temeljene na dubokom učenju za generiranje sintetičkih podataka obično koriste ili varijacijski autokoder (VAE) ili generativna protivnička mreža (GAN). VAE su modeli strojnog učenja bez nadzora koji koriste kodere i dekodere. Koderski dio VAE-a odgovoran je za komprimiranje podataka u jednostavniju, kompaktnu verziju izvornog skupa podataka, koju dekoder zatim analizira i koristi za generiranje prikaza osnovnih podataka. VAE se obučava s ciljem postizanja optimalnog odnosa između ulaznih i izlaznih podataka, odnosa u kojem su i ulazni i izlazni podaci iznimno slični.

Kada je riječ o GAN modelima, oni se nazivaju "adversarial" mrežama zbog činjenice da su GAN zapravo dvije mreže koje se međusobno natječu. Generator je odgovoran za generiranje sintetičkih podataka, dok druga mreža (diskriminator) radi uspoređujući generirane podatke sa stvarnim skupom podataka i pokuÅ”ava utvrditi koji su podaci lažni. Kada diskriminator uhvati lažne podatke, generator je obavijeÅ”ten o tome i on vrÅ”i promjene kako bi pokuÅ”ao dobiti novu grupu podataka od diskriminatora. Zauzvrat, diskriminator postaje sve bolji i bolji u otkrivanju krivotvorina. Dvije su mreže uvježbane jedna protiv druge, a krivotvorine sve viÅ”e postaju realistične.