Suurendage pettustehinguid, kasutades Amazon SageMaker PlatoBlockchain Data Intelligence'i sünteetilisi andmeid. Vertikaalne otsing. Ai.

Suurendage pettustehinguid, kasutades Amazon SageMakeris sünteetilisi andmeid

Edukate masinõppe (ML) pettusmudelite arendamine ja koolitamine nõuab juurdepääsu suurele hulgale kvaliteetsetele andmetele. Nende andmete hankimine on keeruline, kuna saadaolevad andmekogumid ei ole mõnikord piisavalt suured või piisavalt erapooletud, et ML-mudelit kasulikult koolitada, ning võivad nõuda märkimisväärseid kulusid ja aega. Määrused ja privaatsusnõuded takistavad veelgi andmete kasutamist või jagamist isegi ettevõtte organisatsiooni sees. Tundlike andmete kasutamise ja neile juurdepääsu lubamise protsess lükkab sageli ML-projektid edasi või viib need rööpast välja. Teise võimalusena saame nende väljakutsetega toime tulla sünteetiliste andmete loomise ja kasutamisega.

Sünteetilised andmed kirjeldavad kunstlikult loodud andmekogumeid, mis jäljendavad algse andmekogumi sisu ja mustreid, et käsitleda regulatiivset riski ja vastavust, aega ja hankimise kulusid. Sünteetiliste andmete generaatorid kasutavad tegelikke andmeid asjakohaste funktsioonide, korrelatsioonide ja mustrite õppimiseks, et genereerida nõutud kogused sünteetilisi andmeid, mis vastavad algselt neelatud andmekogumi statistiliste omadustega.

Sünteetilisi andmeid on laborikeskkondades kasutatud üle kahe aastakümne; turul on tõendeid kasulikkuse kohta, mis kiirendab kasutuselevõttu äri- ja avalikus sektoris. Gartner ennustab et aastaks 2024 luuakse 60 protsenti ML-i ja analüütiliste lahenduste arendamiseks kasutatavatest andmetest sünteetiliselt ning sünteetiliste andmete kasutamine kasvab jätkuvalt oluliselt.

Ühendkuningriigi reguleeriv asutus Financial Conduct Authority, tunnistab "Juurdepääs andmetele on innovatsiooni katalüsaator ja sünteetilised finantsandmed võivad mängida rolli innovatsiooni toetamisel ja võimaldades uutel tulijatel arendada, katsetada ja demonstreerida uute lahenduste väärtust."

Amazon SageMaker GroundTruth toetab praegu sünteetiliste andmete genereerimine märgistatud sünteetiliste kujutiste andmetest. See ajaveebi postitus uurib sünteetiliste andmete genereerimist tabelina. Struktureeritud andmed, nagu üksik- ja relatsioonitabelid, ning aegridade andmed on ettevõtte analüütikas kõige sagedamini esinevad tüübid.

See on kaheosaline ajaveebi postitus; loome esimeses osas sünteetilisi andmeid ja hindame nende kvaliteeti teine ​​osa.

Sellest ajaveebi postitusest saate teada, kuidas kasutada avatud lähtekoodiga teeki ydata-sünteetiline ja AWS SageMaker sülearvutid tabeliandmete sünteesimiseks pettuse kasutusjuhtumi jaoks, kus meil pole piisavalt petturlikke tehinguid, et treenida ülitäpset pettuse mudelit. Siin käsitletakse üldist pettusemudeli väljaõppe protsessi pärast.

Ülevaade lahendusest

Selle õpetuse eesmärk on sünteesida väga tasakaalustamata krediitkaardipettuste andmestiku vähemusklass, kasutades optimeeritud generatiivne võistlev võrgustik (GAN) kutsutud WGAN-GP õppida tundma algandmete mustreid ja statistilisi omadusi ning seejärel luua lõputuid sünteetiliste andmete näidiseid, mis sarnanevad algandmetega. Seda protsessi saab kasutada ka algandmete täiustamiseks, võttes üles haruldasi juhtumeid, nagu pettus, või genereerida äärmuslikke juhtumeid, mida originaalis ei ole.

Kasutame krediitkaardipettuste andmestikku, mille on avaldanud ULB, mille saab alla laadida aadressilt Kaagutama. Sünteetiliste andmete genereerimine vähemusklassi jaoks aitab lahendada tasakaalustamata andmekogumitega seotud probleeme, mis võib aidata välja töötada täpsemaid mudeleid.

Kasutame AWS-i teenuseid, sealhulgas Amazon SageMaker ja Amazon S3, millega kaasnevad pilveressursside kasutamise kulud.

Seadistage arenduskeskkond

SageMaker pakub juhitud Jupyteri sülearvuti eksemplari mudelite loomiseks, koolituseks ja juurutamiseks.

Eeldused:

SageMakeri käitamiseks peab teil olema AWS-i konto. Sa võid saada alustatud SageMakeriga ja proovige praktilised õpetused.

Jupyteri sülearvuti töökeskkonna seadistamise juhised leiate artiklist Alustage Amazon SageMakeri sülearvuti eksemplaridega.

1. samm: seadistage oma Amazon SageMakeri eksemplar

  1. Logige sisse AWS-i konsooli ja otsige "SageMaker".
  2. valima stuudio.
  3. valima Märkmiku eksemplarid vasakpoolsel ribal ja valige Loo märkmiku eksemplar.
  4. Valige järgmisel lehel (nagu on näidatud järgmisel pildil) vastavalt oma vajadustele virtuaalmasina (VM) konfiguratsioonid ja valige Loo märkmiku eksemplar. Pange tähele, et kasutasime ML-i optimeeritud VM-i ilma GPU-ta ja 5 GB andmemahuta, ml.t3.mediumi, milles töötab Amazon Linux 2, ja Jupyter Lab 3 tuuma.
    Loo märkmiku eksemplar
  5. Märkmiku eksemplar on mõne minuti jooksul kasutamiseks valmis.
  6. valima Avage JupyterLab käivitada.
    Suurendage pettustehinguid, kasutades Amazon SageMaker PlatoBlockchain Data Intelligence'i sünteetilisi andmeid. Vertikaalne otsing. Ai.
  7. Nüüd, kui meil on vajalike spetsifikatsioonidega JupyterLab, installime sünteetilise teegi.
pip install ydata-synthetic

2. samm: laadige alla või ekstraktige sünteetiliste andmete loomiseks tegelik andmestik

Laadige alla viiteandmed Kaggle'ist kas käsitsi, nagu me siin teeme, või programmiliselt Kaggle API kaudu, kui teil on Kaggle'i konto. Kui uurite seda andmekogumit, märkate, et klass "pettus" sisaldab palju vähem andmeid kui klass "mitte pettus".

Kui kasutate neid andmeid otse masinõppe prognoosimiseks, võivad mudelid alati õppida ennustama, et "mitte pettus". Mudelil on pettuseväliste juhtumite puhul hõlpsasti suurem täpsus, kuna pettusejuhtumid on haruldased. Kuna aga pettusejuhtumite avastamine on meie eesmärk selles harjutuses, võime pettuseklasside numbreid sünteetiliste andmetega, mis on modelleeritud tegelikel andmetel.

Looge JupyterLabis andmekaust ja laadige sinna üles Kaggle'i andmefail. See võimaldab teil kasutada märkmiku andmeid alates SageMakerist kaasas panipaik mille oleksite märkmiku eksemplari loomisel täpsustanud.

Suurendage pettustehinguid, kasutades Amazon SageMaker PlatoBlockchain Data Intelligence'i sünteetilisi andmeid. Vertikaalne otsing. Ai.

See andmestik on 144 MB

Suurendage pettustehinguid, kasutades Amazon SageMaker PlatoBlockchain Data Intelligence'i sünteetilisi andmeid. Vertikaalne otsing. Ai.

Seejärel saate andmeid standardkoodi abil lugeda pandateegi kaudu:

import pandas as pd
data = pd.read_csv('./data/creditcard.csv')

Pettuste tuvastamise andmetel on teatud omadused, nimelt:

  • Suur klassi tasakaalustamatus (tavaliselt mittepettuste andmepunktide suunas).
  • Privaatsusega seotud probleemid (tundlike andmete olemasolu tõttu).
  • Teatud dünaamilisus, kuna pahatahtlik kasutaja püüab alati vältida petturlike tehingute tuvastamist.
  • Saadaolevad andmekogumid on väga suured ja sageli märgistamata.

Nüüd, kui olete andmestiku üle vaadanud, filtreerime vähemusklassi (krediitkaardi andmestiku "pettuse" klass) ja teostame vastavalt vajadusele teisendusi. Sellest saate vaadata andmete teisendusi märkmik.

Kui see vähemusklassi andmestik sünteesitakse ja lisatakse tagasi algsele andmekogumile, võimaldab see luua suurema sünteesitud andmekogumi, mis käsitleb andmete tasakaalustamatust. Suurema ennustustäpsuse saame saavutada, kui pettuste tuvastamise mudeli väljaõpe kasutades uut andmekogumit.

Sünteesime uue pettuste andmestiku.

3. samm: treenige süntesaatoreid ja looge mudel

Kuna teil on SageMakeris andmed hõlpsasti kättesaadavad, on aeg meie sünteetilised GAN-mudelid tööle panna.

Generatiivne võistlev võrgustik (GAN) koosneb kahest osast:

. generaator õpib genereerima usutavaid andmeid. Loodud eksemplarid muutuvad diskrimineerija jaoks negatiivseteks koolitusnäideteks.

. diskrimineerija õpib eristama generaatori võltsandmeid pärisandmetest. Diskriminaator karistab generaatorit ebausutavate tulemuste eest.

Treeningu alguses toodab generaator ilmselgelt võltsandmeid ja diskrimineerija õpib kiiresti aru saama, et see on võlts. Treeningu edenedes läheneb generaator väljundi tootmisele, mis võib diskrimineerija petta. Lõpuks, kui generaatoriõpe läheb hästi, muutub diskrimineerija tõelise ja võltsi vahet tegemas halvemini. See hakkab võltsandmeid tõelisteks klassifitseerima ja nende täpsus väheneb.

Nii generaator kui ka diskrimineerija on närvivõrgud. Generaatori väljund on ühendatud otse diskriminaatori sisendiga. Läbi tagasipaljundamine, annab diskriminaatori klassifikatsioon signaali, mida generaator kasutab oma kaalude värskendamiseks.

4. samm: proovige süntesaatorist sünteetilisi andmeid

Nüüd, kui olete oma mudeli koostanud ja koolitanud, on aeg võtta vajalikest andmetest proovid, edastades mudelile müra. See võimaldab teil luua nii palju sünteetilisi andmeid, kui soovite.

Sel juhul genereerite tegelike andmetega võrdse koguse sünteetilisi andmeid, kuna see hõlbustab sarnaste valimi suuruste võrdlemist etapis 5.

Meil on võimalus valida petturlikke tehinguid sisaldavaid ridu, mis kombineerituna mittesünteetiliste pettuste andmetega toob kaasa pettuse ja mittepettuse klasside võrdse jaotumise. Originaal Kaggle'i andmestik sisaldas 492 pettust 284,807 XNUMX tehingust, seega loome süntesaatorist sama näidise.

# use the same shape as the real data
synthetic_fraud = synthesizer.sample(492)

Meil on võimalus koostada petturlikke tehinguid sisaldavate ridade valim protsessis, mida nimetatakse andmete suurendamiseks – mis kombineerituna mittesünteetiliste pettuste andmetega toob kaasa pettuse ja mittepettuse klasside võrdse jaotumise.

5. samm: võrrelge ja hinnake sünteetilisi andmeid tegelike andmetega

Kuigi see samm on valikuline, saate hajuvusdiagrammi abil genereeritud sünteetilisi andmeid tegelike andmetega kvalitatiivselt visualiseerida ja hinnata.

See aitab meil oma mudelit itereerida, kohandades parameetreid, muutes valimi suurust ja tehes muid teisendusi, et genereerida kõige täpsemaid sünteetilisi andmeid. See täpsuse olemus sõltub alati sünteesi eesmärgist

Alloleval pildil on kujutatud, kui sarnased on tegelike pettuste ja sünteetilise pettuse andmepunktid koolitusetappide lõikes. See annab hea kvalitatiivse kontrolli sünteetiliste ja tegelike andmete sarnasuse kohta ja selle kohta, kuidas see paraneb, kui me seda läbime rohkemate ajajärkude kaudu (kogu koolitusandmete kogumi edastamine algoritmi kaudu). Pange tähele, et mida rohkem epohhe käitame, läheneb sünteetilise andmemustri komplekt algandmetele.

Suurendage pettustehinguid, kasutades Amazon SageMaker PlatoBlockchain Data Intelligence'i sünteetilisi andmeid. Vertikaalne otsing. Ai.

6. samm: puhastage

Lõpuks peatage oma märkmiku eksemplar, kui olete sünteesiga lõpetanud, et vältida ootamatuid kulusid.

Järeldus

Masinõppe algoritmide ja kodeerimisraamistikena kiiresti areneda, kvaliteetsed mastaapsed andmed on ML-i kõige napim ressurss. Kvaliteetseid sünteetilisi andmekogumeid saab kasutada mitmesugustes ülesannetes.

Sellest ajaveebi postitusest õppisite, kui oluline on andmestiku sünteesimine avatud lähtekoodiga teegi abil, mis kasutab WGAN-GP. See on aktiivne uurimisvaldkond, kus on GANide kohta avaldatud tuhandeid artikleid ja katsetamiseks saadaval sadu nimega GAN-e. On variante, mis on optimeeritud konkreetsete kasutusjuhtude jaoks, näiteks relatsioonitabelid ja aegridade andmed.

Kogu selle artikli jaoks kasutatud koodi leiate siit märkmik, ja loomulikult on SageMakerist saadaval rohkem selliseid õpetusi ametlik dokumentatsiooni leht.

aasta teine ​​osa Selle kaheosalise ajaveebi postituste seeria puhul sukeldume põhjalikult sünteetiliste andmete kvaliteedi hindamise täpsuse, kasulikkuse ja privaatsuse vaatenurgast.


Teave Autor

Suurendage pettustehinguid, kasutades Amazon SageMaker PlatoBlockchain Data Intelligence'i sünteetilisi andmeid. Vertikaalne otsing. Ai.Faris Haddad on Data & Insightsi juht AABG Strategic Pursuits meeskonnas. Ta aitab ettevõtetel edukalt andmepõhiseks muutuda.

Ajatempel:

Veel alates AWS-i masinõpe