Evaluarea utilității și asemănării în generatoarele de date sintetice: o analiză tehnică profundă și o analiză comparativă

Publicat în:
27 Februarie 2024

Introducere

În era digitală de astăzi, gradul de conștientizare a confidențialității datelor a crescut semnificativ. Utilizatorii își recunosc din ce în ce mai mult datele ca o amprentă digitală unică, care prezintă un risc pentru confidențialitatea lor în cazul încălcării datelor. Această îngrijorare este amplificată și mai mult de reglementări precum GDPR, care împuternicesc utilizatorii să solicite ștergerea datelor lor. Deși este foarte necesară, această legislație poate fi foarte costisitoare pentru companii, deoarece accesul la date este redus la minimum; restricții care deseori necesită timp și resurse pentru a depăși. 

Cuprins

Ce sunt generatoarele de date sintetice?

Introduceți date sintetice, o soluție la această enigmă. Generatorii de date sintetice creează seturi de date care imită datele reale ale utilizatorilor, păstrând în același timp anonimatul și confidențialitatea. Această abordare câștigă acțiune în toate industriile, de la asistență medicală la finanțe, unde confidențialitatea este primordială.  

Această postare este adaptată pentru profesioniștii și pasionații de date, concentrându-se pe evaluarea generatoarelor de date sintetice. Vom aprofunda în valorile cheie și vom efectua o analiză comparativă între Syntho's Engine și alternativele sale open-source, oferind perspective despre cum să evaluăm eficient calitatea soluției de generare a datelor sintetice. În plus, vom evalua, de asemenea, costul de timp al fiecăruia dintre aceste modele pentru a oferi mai multe informații despre funcționarea modelelor. 

Cum să alegi metoda corectă de generare a datelor sintetice?

În peisajul divers al generării de date sintetice, există o abundență de metode disponibile, fiecare concurând pentru atenție cu capacitățile sale unice. Alegerea celei mai potrivite metode pentru o anumită aplicație necesită o înțelegere aprofundată a caracteristicilor de performanță ale fiecărei opțiuni. Acest lucru necesită o evaluare cuprinzătoare a diverșilor generatori de date sintetice pe baza unui set de metrici bine definite pentru a lua o decizie informată. 

Ceea ce urmează este o analiză comparativă riguroasă a Syntho Engine alături de un cadru open-source bine-cunoscut, Synthetic Data Vault (SDV). În această analiză, am folosit multe valori utilizate în mod obișnuit, cum ar fi fidelitatea statistică, acuratețea predictivă și relația inter-variabilă. 

Măsuri de evaluare a datelor sintetice

Înainte de a introduce orice măsură specifică, trebuie să recunoaștem că există numeroase ideologii despre evaluarea datelor sintetice, fiecare dintre acestea oferind o perspectivă asupra unui anumit aspect al datelor. Având în vedere acest lucru, următoarele trei categorii se evidențiază ca fiind importante și cuprinzătoare. Aceste valori oferă perspective asupra diferitelor aspecte ale calității datelor. Aceste categorii sunt: 

      1. Valori de fidelitate statistică: Examinarea caracteristicilor statistice de bază ale datelor, cum ar fi mediile și variațiile, pentru a se asigura că datele sintetice sunt aliniate cu profilul statistic al setului de date original. 

        1. Precizie predictivă: Examinarea performanței modelului de generare a datelor sintetice, instruit cu date originale și evaluat pe date sintetice (Train Real – Test Synthetic, TRTS) și invers (Train Synthetic – Test Real, TSTR) 

          1. Relații inter-variabile: Această categorie combinată include: 

            • Corelația caracteristicilor: Evaluăm cât de bine datele sintetice mențin relațiile dintre variabile folosind coeficienți de corelație. O metrică binecunoscută, cum ar fi eroarea pătrată medie a înclinației (PMSE), ar fi de acest tip. 

            • Informații reciproce: Măsurăm dependențele reciproce dintre variabile pentru a înțelege profunzimea acestor relații dincolo de doar corelații. 

          Analiză comparativă: Syntho Engine vs. Alternative Open-Source

          Analiza comparativă a fost efectuată folosind un cadru de evaluare standardizat și tehnici de testare identice pentru toate modelele, inclusiv Syntho Engine și modelele SDV. Sintetizând seturi de date din surse identice și supunându-le acelorași teste statistice și evaluări ale modelului de învățare automată, asigurăm o comparație corectă și imparțială. Secțiunea care urmează detaliază performanța fiecărui generator de date sintetice în gama de valori prezentate mai sus.  

           

          În ceea ce privește setul de date utilizat pentru evaluare, am folosit Setul de date UCI pentru adulți care este un set de date binecunoscut în comunitatea de învățare automată. Am curățat datele înainte de toate antrenamentele și apoi am împărțit setul de date în două seturi (un set de antrenament și un set de așteptare pentru testare). Am folosit setul de antrenament pentru a genera 1 milion de puncte de date noi cu fiecare dintre modele și am evaluat diverse valori pe aceste seturi de date generate. Pentru evaluări ulterioare ale învățării automate, am folosit setul holdout pentru a evalua valori precum cele legate de TSTR și TRTS.  

           

          Fiecare generator a fost rulat cu parametrii impliciti. Deoarece unele dintre modele, cum ar fi Syntho, pot funcționa imediat pe orice date tabelare, nu a fost efectuată nicio reglare fină. Căutarea hiperparametrilor potriviți pentru fiecare model ar dura o perioadă semnificativă de timp, iar Tabelul 2 arată deja o diferență mare de timp între modelul Syntho și cele testate. 

           

          Este de remarcat faptul că, spre deosebire de restul modelelor din SDV, sintetizatorul Gaussian Copula se bazează pe metode statistice. În schimb, restul se bazează pe rețele neuronale, cum ar fi modelele GAN (Generative Adversarial Networks) și auto-encodere variaționale. Acesta este motivul pentru care Copula Gaussiană poate fi văzută ca o linie de bază pentru toate modelele discutate. 

          REZULTATE

          Calitatea datelor

          Figura 1. Vizualizarea rezultatelor calității de bază pentru toate modelele

          Aderările discutate anterior la tendințe și reprezentări în date pot fi găsite în Figura 1 și Tabelul 1. Aici, fiecare dintre metricile utilizate poate fi interpretată după cum urmează:

          • Scorul general de calitate: evaluarea generală a calității datelor sintetice, combinând diverse aspecte, cum ar fi similaritatea statistică și caracteristicile datelor. 
          • Forme coloane: evaluează dacă datele sintetice păstrează aceeași formă de distribuție ca datele reale pentru fiecare coloană. 
          • Tendințele perechilor de coloane: evaluează relația sau corelațiile dintre perechile de coloane din datele sintetice în comparație cu datele reale. 
          •  

          În general, se poate observa că Syntho realizează scoruri foarte mari la nivel general. Pentru început, când se analizează calitatea generală a datelor (evaluată cu biblioteca de metrici SDV), Syntho poate obține un rezultat de peste 99% (cu aderența formei coloanei de 99.92% și aderenței formei perechii de coloane de 99.31%). Acest lucru se întâmplă în timp ce SDV obține un rezultat de maxim 90.84% (cu Copula Gaussiană, având o aderență a formei coloanei de 93.82% și o aderență a formei perechii de coloane de 87.86%). 

          O reprezentare tabelară a scorurilor de calitate ale fiecărui set de date generat per model

          Tabelul 1. O reprezentare tabelară a scorurilor de calitate ale fiecărui set de date generat per model 

          Acoperirea datelor

          Modulul Raport de diagnosticare al SDV ne atrage atenția că datele generate de SDV (în toate cazurile) lipsesc mai mult de 10% din intervalele numerice; În cazul autocoderului variațional bazat pe tripleți (TVAE), aceeași cantitate de date categorice lipsește, de asemenea, în comparație cu setul de date original. Nu au fost generate astfel de avertismente cu rezultatele obținute prin utilizarea Syntho.  

          vizualizarea valorilor medii de performanță pe coloane pentru toate modelele
           
           

          Figura 2. vizualizarea valorilor medii de performanță pe coloane pentru toate modelele 

          În analiza comparativă, graficul din Figura 2 ilustrează că arhivele SDV au rezultate marginal mai bune în acoperirea categoriei cu unele dintre modelele lor (și anume cu GaussianCopula, CopulaGAN și Conditional Tabular GAN – CTGAN). Cu toate acestea, este important de subliniat că fiabilitatea datelor Syntho o depășește pe cea a modelelor SDV, deoarece discrepanța în acoperire între categorii și intervale este minimă, prezentând o varianță de doar 1.1%. În schimb, modelele SDV demonstrează o variație considerabilă, variind de la 14.6% la 29.2%. 

           

          Valorile reprezentate aici pot fi interpretate astfel: 

          • Acoperire categorie: Măsoară prezența tuturor categoriilor în datele sintetice în comparație cu datele reale.
          • Acoperire interval: evaluează cât de bine se potrivește intervalul de valori din datele sintetice cu cel din datele reale. 
          O reprezentare tabelară a acoperirii medii a unui anumit tip de atribut per model

          Tabelul 2. O reprezentare tabelară a acoperirii medii a unui anumit tip de atribut per model 

          Utilitate

          Trecând la subiectul utilității datelor sintetice, problema modelelor de antrenament asupra datelor devine relevantă. Pentru a avea o comparație echilibrată și corectă între toate cadrele, am ales Gradient Boosting Clasifier-ul implicit din biblioteca SciKit Learn, văzând că este acceptat ca un model performant, cu setări ieșite din cutie.  

           

          Sunt antrenate două modele diferite, unul pe datele sintetice (pentru TSTR) și unul pe datele originale (pentru TRTS). Modelul antrenat pe datele sintetice este evaluat utilizând un set de testare holdout (care nu a fost utilizat în timpul generării datelor sintetice), iar modelul antrenat pe datele originale este testat pe setul de date sintetice.  

          vizualizarea punctajelor zonei sub curbă (AUC) per metodă per model

          Figura 3. Vizualizarea punctajelor zonei de sub curbă (AUC) per metodă per model 

           Rezultatele vizualizate mai sus demonstrează superioritatea generării de date sintetice de către motorul Syntho în comparație cu alte metode, văzând că nu există nicio diferență între rezultatele obținute prin diferite metode (indicând către o asemănare mare între datele sintetice și cele reale). De asemenea, linia punctată roșie prezentă în grafic este rezultatul obținut prin evaluarea performanței de bază a unui test Train Real, Test Real (TRTR) pentru a oferi o linie de bază pentru metricile observate. Această linie reprezintă valoarea 0.92, care este scorul Area Under the Curve (scor AUC) realizat de modelul antrenat pe date reale și testat pe date reale. 

          O reprezentare tabelară a scorurilor AUC obținute de TRTS și, respectiv, TSTR per model.

          Tabelul 3. O reprezentare tabelară a scorurilor AUC obținute de TRTS și, respectiv, TSTR per model. 

          Comparație în timp

          Desigur, este crucial să luăm în considerare timpul investit în generarea acestor rezultate. Vizualizarea de mai jos ilustrează tocmai acest lucru.

          vizualizarea timpului necesar antrenamentului și efectuării generării de date sintetice a unui milion de puncte de date cu un model cu și fără GPU.

          Figura 5. Vizualizarea timpului necesar antrenamentului și performanței generarea de date sintetice de un milion de puncte de date cu un model cu și fără un GPU. 

          Figura 5 ilustrează timpul necesar pentru a genera date sintetice în două setări diferite. Primele dintre ele (denumite aici fără GPU) au fost teste rulate pe un sistem cu un procesor Intel Xeon cu 16 nuclee care rulează la 2.20 GHz. Testele marcate ca „rulat cu un GPU” au fost pe un sistem cu un procesor AMD Ryzen 9 7945HX cu 16 nuclee care rulează la 2.5 GHz și un GPU pentru laptop NVIDIA GeForce RTX 4070. După cum se observă în Figura 2 și în Tabelul 2 de mai jos, se poate observa că Syntho este semnificativ mai rapid la generarea de date sintetice (în ambele scenarii), ceea ce este critic într-un flux de lucru dinamic. 

          un tabel care ilustrează timpul necesar pentru generarea de date sintetice a 1 milion de puncte de date cu fiecare model cu și fără un GPU

          Tabelul 5. O reprezentare tabelară a timpului necesar generarea de date sintetice de un milion de puncte de date cu fiecare model cu și fără GPU 

          Observații finale și direcții viitoare 

          Constatările subliniază importanța evaluării minuțioase a calității în alegerea metodei corecte de generare a datelor sintetice. Motorul Syntho, cu abordarea sa bazată pe inteligență artificială, demonstrează puncte forte demne de remarcat în anumite valori, în timp ce instrumentele open-source precum SDV strălucesc prin versatilitatea și îmbunătățirile bazate pe comunitate. 

          Pe măsură ce domeniul datelor sintetice continuă să evolueze, vă încurajăm să aplicați aceste valori în proiectele dvs., să explorați complexitățile lor și să vă împărtășiți experiențele. Rămâneți la curent cu viitoarele postări în care ne vom aprofunda în alte valori și vom evidenția exemple reale de aplicare a acestora. 

          La sfârșitul zilei, pentru cei care doresc să testeze apele pe date sintetice, alternativa open-source prezentată poate fi o alegere justificabilă, având în vedere accesibilitatea; cu toate acestea, pentru profesioniștii care încorporează această tehnologie modernă în procesul lor de dezvoltare, orice șansă de îmbunătățire trebuie luată și toate obstacolele evitate. Prin urmare, este important să alegeți cea mai bună opțiune disponibilă. Cu analizele furnizate mai sus, devine destul de evident că Syntho și cu asta Syntho Engine este un instrument foarte capabil pentru practicieni. 

          Despre Syntho

          Syntho oferă o platformă inteligentă de generare de date sintetice, care utilizează mai multe forme de date sintetice și metode de generare, dând putere organizațiilor să transforme în mod inteligent datele într-un avantaj competitiv. Datele noastre sintetice generate de AI imită tiparele statistice ale datelor originale, asigurând acuratețea, confidențialitatea și viteza, așa cum au fost evaluate de experți externi precum SAS. Cu funcții inteligente de de-identificare și cartografiere consecventă, informațiile sensibile sunt protejate, păstrând în același timp integritatea referențială. Platforma noastră permite crearea, gestionarea și controlul datelor de testare pentru medii care nu sunt de producție, utilizând metode de generare a datelor sintetice bazate pe reguli pentru scenarii vizate. În plus, utilizatorii pot genera date sintetice în mod programatic și pot obține date de testare realiste pentru a dezvolta cu ușurință scenarii cuprinzătoare de testare și dezvoltare.  

          Doriți să aflați mai multe aplicații practice ale datelor sintetice? Simte-te liber sa programează demo!

          Despre autori

          Stagiar in inginerie software

          roham este student de licență la Delft University of Technology și este stagiar în inginerie software la Syntho 

          Inginer mecanic de învățare

          Mihai şi-a obţinut doctoratul de la Universitatea din Bristol pe tema Învățare prin consolidare ierarhică aplicată la robotică și este a Inginer de învățare automată at Syntho. 

          capac ghidaj syntho

          Salvați ghidul de date sintetice acum!