A szintetikus adatgenerátorok hasznosságának és hasonlóságának értékelése: Technikai mélyrepülés és összehasonlító elemzés

Megjelent:
Február 27, 2024

Bevezetés

A mai digitális korszakban az adatvédelemmel kapcsolatos tudatosság jelentősen megnövekedett. A felhasználók egyre inkább egyedi digitális ujjlenyomatként ismerik fel adataikat, ami adatvédelmi incidens esetén kockázatot jelent a magánéletükre nézve. Ezt az aggodalmat tovább erősítik az olyan szabályozások, mint a GDPR, amelyek feljogosítják a felhasználókat adataik törlésének kérésére. Noha nagy szükség van erre a jogszabályra, nagyon költséges lehet a vállalatok számára, mivel az adatokhoz való hozzáférés minimális; korlátozások, amelyek leküzdése gyakran idő- és erőforrás-igényes. 

Tartalomjegyzék

Mik azok a szintetikus adatgenerátorok?

Szintetikus adatok megadása, megoldás erre a rejtélyre. A szintetikus adatgenerátorok olyan adatkészleteket hoznak létre, amelyek valódi felhasználói adatokat utánoznak, miközben megőrzik az anonimitást és a titkosságot. Ez a megközelítés egyre nagyobb teret hódít az egész iparágban, az egészségügytől a pénzügyekig, ahol a magánélet a legfontosabb.  

Ez a bejegyzés az adatokkal foglalkozó szakemberek és rajongók számára készült, és a szintetikus adatgenerátorok értékelésére összpontosít. Belemerülünk a kulcsfontosságú mérőszámokba, és összehasonlító elemzést végzünk a Syntho's Engine és nyílt forráskódú alternatívái között, betekintést nyújtva abba, hogyan lehet hatékonyan értékelni a szintetikus adatgenerálás megoldási minőségét. Továbbá értékelni fogjuk az egyes modellek időköltségét is, hogy további betekintést nyújtsunk a modellek működésébe. 

Hogyan válasszuk ki a megfelelő szintetikus adatgenerálási módszert?

A szintetikus adatgenerálás változatos környezetében rengeteg módszer áll rendelkezésre, amelyek mindegyike egyedi képességeivel verseng a figyelemért. Egy adott alkalmazáshoz a legmegfelelőbb módszer kiválasztása megköveteli az egyes opciók teljesítményjellemzőinek alapos megértését. Ez szükségessé teszi a különböző szintetikus adatgenerátorok átfogó értékelését egy jól meghatározott mérőszám alapján, hogy megalapozott döntést hozhassunk. 

Az alábbiakban a Syntho Engine szigorú összehasonlító elemzése következik egy jól ismert nyílt forráskódú keretrendszer, a Synthetic Data Vault (SDV) mellett. Ebben az elemzésben számos általánosan használt mérőszámot használtunk, mint például a statisztikai hűség, a prediktív pontosság és a változók közötti kapcsolat. 

Szintetikus adatértékelési metrikák

Mielőtt bármilyen konkrét mérőszámot bevezetnénk, el kell ismernünk, hogy számos ideológia létezik a szintetikus adatok értékelésével kapcsolatban, amelyek mindegyike betekintést nyújt az adatok egy bizonyos aspektusába. Ezt szem előtt tartva a következő három kategória kiemelkedik fontos és átfogó. Ezek a mutatók betekintést nyújtanak az adatminőség különböző aspektusaiba. Ezek a kategóriák a következők: 

      1. Statisztikai hűségmérők: Az adatok alapvető statisztikai jellemzőinek (átlagok és szórások) vizsgálata annak biztosítására, hogy a szintetikus adatok igazodjanak az eredeti adatkészlet statisztikai profiljához. 

        1. Prediktív pontosság: Szintetikus adatgenerálási modell teljesítményének vizsgálata, eredeti adatokkal betanítva, és szintetikus adatokon kiértékelve (Train Real – Test Synthetic, TRTS) és fordítva (Train Synthetic – Test Real, TSTR) 

          1. Változók közötti kapcsolatok: Ez a kombinált kategória a következőket tartalmazza: 

            • Funkció korreláció: Korrelációs együtthatók segítségével értékeljük, hogy a szintetikus adatok mennyire tartják fenn a változók közötti kapcsolatokat. Egy olyan jól ismert mérőszám, mint a Propensity Mean Squared Error (PMSE) ilyen típusú lenne. 

            • Kölcsönös információ: Mérjük a változók közötti kölcsönös függőséget, hogy megértsük ezeknek a kapcsolatoknak a mélységét a pusztán korrelációkon túl. 

          Összehasonlító elemzés: Syntho Engine vs. nyílt forráskódú alternatívák

          Az összehasonlító elemzést szabványos kiértékelési keretrendszerrel és azonos tesztelési technikákkal végezték el minden modellen, beleértve a Syntho Engine és az SDV modelleket is. Az azonos forrásokból származó adatkészletek szintetizálásával és ugyanazon statisztikai teszteknek és gépi tanulási modellértékeléseknek alávetésével igazságos és elfogulatlan összehasonlítást biztosítunk. A következő szakasz részletezi az egyes szintetikus adatgenerátorok teljesítményét a fent bemutatott mérőszámok tartományában.  

           

          Ami az értékeléshez használt adatkészletet illeti, a UCI felnőtt népszámlálási adatkészlete amely egy jól ismert adathalmaz a gépi tanulási közösségben. Minden betanítás előtt megtisztítottuk az adatokat, majd az adatkészletet két készletre osztottuk (egy képzési és egy tartási készletre a teszteléshez). A betanítási halmaz segítségével 1 millió új adatpontot generáltunk az egyes modellekkel, és különböző mérőszámokat értékeltünk ezeken a generált adatkészleteken. A további gépi tanulási értékelésekhez a holdout készletet használtuk az olyan mutatók értékelésére, mint például a TSTR-hez és a TRTS-hez kapcsolódóak.  

           

          Minden generátor az alapértelmezett paraméterekkel futott. Mivel egyes modellek, mint például a Syntho, bármilyen táblázatos adaton készen állnak, finomhangolásra nem került sor. Az egyes modellekhez megfelelő hiperparaméterek keresése jelentős időt vesz igénybe, és a 2. táblázatban már látható, hogy nagy időbeli különbség van a Syntho modellje és a tesztelt modellek között. 

           

          Figyelemre méltó, hogy az SDV többi modelljével szemben a Gauss-kopula szintetizátor statisztikai módszereken alapul. Ezzel szemben a többi neurális hálózatokon alapul, például a Generatív Adversarial Networks (GAN) modelleken és a variációs automatikus kódolókon. Ez az oka annak, hogy a Gauss-kopula az összes tárgyalt modell kiindulópontja. 

          Eredmények

          Adatminőség

          1. ábra Az alapvető minőségi eredmények megjelenítése minden modellnél

          A korábban tárgyalt trendekhez és reprezentációkhoz való ragaszkodások az adatokban az 1. ábrán és az 1. táblázatban találhatók. Itt az egyes használt mérőszámok a következőképpen értelmezhetők:

          • Általános minőségi pontszám: A szintetikus adatok minőségének átfogó értékelése, amely különféle szempontokat, például statisztikai hasonlóságot és adatjellemzőket kombinál. 
          • Oszlop alakzatok: Felméri, hogy a szintetikus adatok ugyanazt az eloszlási alakzatot tartják-e fenn, mint az egyes oszlopok valós adatai. 
          • Oszloppár trendek: Kiértékeli a szintetikus adatok oszloppárjai közötti kapcsolatot vagy korrelációkat a valós adatokhoz képest. 
          •  

          Összességében észrevehető, hogy a Syntho nagyon magas pontszámokat ér el. Először is, ha az általános adatminőséget nézzük (az SDV metrikakönyvtárral kiértékelve), a Syntho 99%-os eredményt érhet el (99.92%-os oszlopforma-tapadás és 99.31%-os oszloppár alaktapadás mellett). Ez így van, míg az SDV maximálisan 90.84%-os eredményt ér el (a Gaussian Copulával, amelynek oszlop alaktapadása 93.82%, oszloppár alaktapadása pedig 87.86%). 

          Az egyes generált adatkészletek minőségi pontszámainak táblázatos ábrázolása modellenként

          1. táblázat Az egyes generált adatkészletek minőségi pontszámainak táblázatos ábrázolása modellenként 

          Adatlefedettség

          Az SDV Diagnosis Report modulja felhívja a figyelmünket arra, hogy az SDV által generált adatokból (minden esetben) a numerikus tartományok több mint 10%-a hiányzik; A Triplet-Based Variational Autoencoder (TVAE) esetében ugyanannyi kategorikus adat is hiányzik az eredeti adatkészlethez képest. A Syntho használatával elért eredményekkel nem generáltak ilyen figyelmeztetéseket.  

          az összes modell átlagos oszloponkénti teljesítménymutatóinak megjelenítése
           
           

          2. ábra. Az összes modell átlagos oszloponkénti teljesítménymutatóinak megjelenítése 

          Az összehasonlító elemzésben a 2. ábra diagramja azt szemlélteti, hogy az SDV bizonyos modelljeinél (nevezetesen a GaussianCopula, CopulaGAN és feltételes táblázatos GAN – CTGAN) némileg jobb eredményeket archivál a kategórialefedettség terén. Mindazonáltal fontos kiemelni, hogy a Syntho adatainak megbízhatósága meghaladja az SDV modellekét, mivel a kategóriák és tartományok közötti lefedettség eltérése minimális, mindössze 1.1%-os eltérést mutat. Ezzel szemben az SDV modellek jelentős eltérést mutatnak, 14.6% és 29.2% között. 

           

          Az itt ábrázolt mérőszámok a következőképpen értelmezhetők: 

          • Kategória lefedettség: Méri az összes kategória jelenlétét a szintetikus adatokban a valós adatokhoz képest.
          • Tartomány lefedettsége: Kiértékeli, hogy a szintetikus adatok értéktartománya mennyire egyezik a valós adatok értékeivel. 
          Egy adott attribútumtípus átlagos lefedettségének modellenkénti táblázatos ábrázolása

          2. táblázat Egy adott attribútumtípus átlagos lefedettségének modellenkénti táblázatos ábrázolása 

          Hasznosság

          Áttérve a szintetikus adatok hasznosságának témájára, aktuálissá válik az adatokra vonatkozó modellek betanítása. Az összes keretrendszer kiegyensúlyozott és igazságos összehasonlítása érdekében az alapértelmezett Gradient Boosting Classifier-t választottuk a SciKit Learn könyvtárból, mivel azt látjuk, hogy ez meglehetősen elfogadott, mint egy jól teljesítő modell, készenléti beállításokkal.  

           

          Két különböző modellt tanítanak, egyet a szintetikus adatokon (TSTR-hez), egyet pedig az eredeti adatokon (TRTS-hez). A szintetikus adatokra betanított modell kiértékelése egy holdout tesztkészlet segítségével történik (amelyet a szintetikus adatgenerálás során nem használtak), és az eredeti adatokon betanított modellt a szintetikus adatkészleten tesztelik.  

          a görbe alatti terület (AUC) pontszámok megjelenítése módszerenként és modellenként

          3. ábra: A görbe alatti terület (AUC) pontszámainak megjelenítése módszerenként és modellenként 

           A fent megjelenített eredmények azt mutatják, hogy a Syntho motor szintetikus adatgenerálása felülmúlja a többi módszert, mivel a különböző módszerekkel kapott eredmények között nincs különbség (ami a szintetikus és a valós adatok közötti nagy hasonlóságra mutat). A diagramon lévő piros szaggatott vonal a Train Real, Test Real (TRTR) teszt alapteljesítményének kiértékelésével kapott eredmény, amely a megfigyelt metrikák alapvonalát adja meg. Ez a vonal a 0.92 értéket jelenti, amely a valós adatokon betanított és valós adatokon tesztelt modell által elért görbe alatti terület pontszám (AUC score). 

          A TRTS és TSTR által elért AUC pontszámok táblázatos ábrázolása modellenként.

          3. táblázat A TRTS és TSTR által elért AUC pontszámok táblázatos ábrázolása modellenként. 

          Időbeli összehasonlítás

          Természetesen döntő fontosságú, hogy figyelembe vegyük az eredmények előállításába fektetett időt. Az alábbi vizualizáció éppen ezt illusztrálja.

          az egymillió adatpont szintetikus adatgenerálásának betanításához és végrehajtásához szükséges idő megjelenítése GPU-s és anélküli modellel.

          5. ábra: Az edzéshez és teljesítményhez szükséges idő megjelenítése szintetikus adatgenerálás egymillió adatpont GPU-s és anélküli modellel. 

          Az 5. ábra szemlélteti a szintetikus adatok előállításához szükséges időt két különböző beállítás mellett. Ezek közül az első (itt GPU nélkül) tesztüzemek voltak egy Intel Xeon CPU-val, 16 maggal, 2.20 GHz-en. A „GPU-val futott” jelzéssel ellátott teszteket egy AMD Ryzen 9 7945HX CPU-val, 16 maggal, 2.5 GHz-en és egy NVIDIA GeForce RTX 4070 laptop GPU-val szerelték fel. Amint az a 2. ábrán és az alábbi 2. táblázaton látható, megfigyelhető, hogy a Syntho lényegesen gyorsabban generál szintetikus adatokat (mindkét forgatókönyvben), ami kritikus fontosságú egy dinamikus munkafolyamatban. 

          egy táblázat, amely bemutatja az 1 millió adatpont szintetikus adatgenerálásához szükséges időt minden modellnél GPU-val és anélkül

          5. táblázat. Az eltelt idő táblázatos ábrázolása szintetikus adatgenerálás egymillió adatpont minden GPU-val és anélküli modellel 

          Záró megjegyzések és jövőbeli irányok 

          Az eredmények aláhúzzák az alapos minőségértékelés fontosságát a megfelelő szintetikus adatgenerálási módszer kiválasztásában. A Syntho's Engine a mesterséges intelligencia által vezérelt megközelítésével figyelemre méltó erősségeket mutat bizonyos mérőszámokban, míg a nyílt forráskódú eszközök, például az SDV sokoldalúságukban és közösségvezérelt fejlesztéseikben ragyognak. 

          Mivel a szintetikus adatok területe folyamatosan fejlődik, javasoljuk, hogy alkalmazza ezeket a mutatókat projektjeiben, fedezze fel a bonyolultságukat, és ossza meg tapasztalatait. Maradjon velünk a jövőbeli bejegyzésekkel kapcsolatban, ahol mélyebben belemerülünk más mérőszámokba, és valós példákat emelünk ki ezek alkalmazására. 

          Végső soron azok számára, akik szintetikus adatokon szeretnék tesztelni a vizeket, a bemutatott nyílt forráskódú alternatíva a hozzáférhetőség ismeretében indokolt választás lehet; mindazonáltal azoknak a szakembereknek, akik ezt a modern technológiát beépítik fejlesztési folyamatukba, minden esélyt meg kell ragadni a fejlődésre, és minden akadályt el kell kerülni. Ezért fontos kiválasztani a legjobb megoldást. A fenti elemzésekből nyilvánvalóvá válik, hogy a Syntho és ezzel együtt a Syntho Engine egy nagyon alkalmas eszköz a gyakorló szakemberek számára. 

          Syntho -ról

          Syntho intelligens szintetikus adatgeneráló platformot biztosít, amely többféle szintetikus adatformátumot és -generálási módszert is felhasznál, és képessé teszi a szervezeteket arra, hogy az adatokat intelligensen versenyelőnyké alakítsák. A mesterséges intelligencia által generált szintetikus adataink az eredeti adatok statisztikai mintáit utánozzák, biztosítva a pontosságot, az adatvédelmet és a sebességet, ahogy azt külső szakértők, például a SAS is értékelték. Az intelligens azonosítás-eltávolító funkcióknak és a következetes leképezésnek köszönhetően az érzékeny információk védve vannak, miközben megőrzik a hivatkozások integritását. Platformunk lehetővé teszi tesztadatok létrehozását, kezelését és ellenőrzését nem termelési környezetekben, szabályalapú szintetikus adatgenerálási módszereket használva a célzott forgatókönyvekhez. Ezen túlmenően a felhasználók szintetikus adatokat generálhatnak programozottan, és valósághű tesztadatokhoz juthatnak, így könnyen kidolgozhatnak átfogó tesztelési és fejlesztési forgatókönyveket.  

          Szeretné megtanulni a szintetikus adatok gyakorlati alkalmazását? Bátran ütemezd be a bemutatót!

          A szerzőkről

          Szoftvermérnöki gyakornok

          nyersam a Delfti Műszaki Egyetem bachelor hallgatója, és szoftvermérnöki gyakornok Syntho 

          Machine Learning Engineer

          Mihai PhD fokozatát a A Bristoli Egyetem a Robotika területén alkalmazott hierarchikus megerősítés témában és a Gépi tanulási mérnök at Syntho. 

          szintetikus vezetőfedél

          Mentse el a szintetikus adatok útmutatóját most!