Razširljiva klasifikacija podatkov za varnost in zasebnost

Razširljiva klasifikacija podatkov za varnost in zasebnost

Vsebinsko razvrščanje podatkov je odprt problem. Tradicionalni sistemi za preprečevanje izgube podatkov (DLP) rešujejo to težavo s prstnim odtisom ustreznih podatkov in spremljanjem končnih točk za prstne odtise. Glede na veliko število nenehno spreminjajočih se podatkovnih virov na Facebooku ta pristop ni le razširljiv, ampak tudi neučinkovit za določanje, kje se podatki nahajajo. Ta dokument se osredotoča na sistem od konca do konca, zgrajen za zaznavanje občutljivih semantičnih vrst v Facebooku v velikem obsegu in samodejno uveljavljanje shranjevanja podatkov in nadzora dostopa.

Tukaj opisani pristop je naš prvi sistem zasebnosti od konca do konca, ki poskuša rešiti to težavo z vključitvijo podatkovnih signalov, strojnega učenja in tradicionalnih tehnik prstnih odtisov za preslikavo in razvrščanje vseh podatkov na Facebooku. Opisani sistem deluje v produkcijskem okolju in dosega povprečno oceno F2 0,9+ v različnih razredih zasebnosti, medtem ko obdeluje velike količine podatkovnih virov v desetinah skladišč. Predstavljamo prevod Facebookovega dokumenta ArXiv o razširljivi klasifikaciji podatkov za varnost in zasebnost na podlagi strojnega učenja.

Predstavitev

Danes organizacije zbirajo in shranjujejo velike količine podatkov v različnih formatih in na različnih lokacijah [1], nato pa se podatki porabijo na številnih mestih, včasih se večkrat kopirajo ali shranijo v predpomnilnik, kar povzroči, da so dragocene in občutljive poslovne informacije razpršene po številnih podatkih podjetja. trgovine. Ko mora organizacija izpolnjevati določene zakonske ali regulativne zahteve, kot je skladnost s predpisi v civilnih postopkih, postane potrebno zbrati podatke o lokaciji zahtevanih podatkov. Ko uredba o zasebnosti navaja, da mora organizacija zakriti vse številke socialnega zavarovanja (SSN), ko deli osebne podatke z nepooblaščenimi subjekti, je naravni prvi korak iskanje po vseh SSN v shrambah podatkov organizacije. V takih okoliščinah postane klasifikacija podatkov kritična [1]. Sistem klasifikacije bo organizacijam omogočil samodejno uveljavljanje politik zasebnosti in varnosti, kot je omogočanje politik nadzora dostopa, hramba podatkov. Facebook uvaja sistem, ki smo ga zgradili pri Facebooku in ki uporablja več podatkovnih signalov, razširljivo sistemsko arhitekturo in strojno učenje za odkrivanje občutljivih tipov semantičnih podatkov.

Odkrivanje in razvrščanje podatkov je postopek iskanja in označevanja podatkov, tako da je mogoče po potrebi hitro in učinkovito pridobiti ustrezne informacije. Trenutni postopek je po naravi precej ročni in obsega preučevanje ustreznih zakonov ali predpisov, določanje, katere vrste informacij je treba šteti za občutljive in kakšne so različne ravni občutljivosti, nato pa ustrezno oblikovanje razredov in klasifikacijskih politik [1]. Preprečevanje izgube podatkov (DLP) nato vzame prstne odtise podatkov in nadzira spodnje končne točke, da pridobi prstne odtise. Ko imamo opravka s skladiščem s petabajti podatkov, ki je veliko sredstev, ta pristop preprosto ni primeren.

Naš cilj je zgraditi sistem za klasifikacijo podatkov, ki se prilagaja tako robustnim kot prehodnim uporabniškim podatkom, brez kakršnih koli dodatnih omejitev glede vrste ali formata podatkov. To je drzen cilj in seveda prihaja z izzivi. Podan podatkovni zapis je lahko dolg na tisoče znakov.

Razširljiva klasifikacija podatkov za varnost in zasebnost
Slika 1. Tokovi napovedovanja v spletu in zunaj njega

Zato ga moramo učinkovito predstaviti z uporabo skupnega nabora funkcij, ki jih je mogoče pozneje kombinirati in enostavno premikati. Te funkcije ne bi smele zagotavljati samo natančne klasifikacije, temveč tudi prilagodljivost in razširljivost za enostavno dodajanje in odkrivanje novih tipov podatkov v prihodnosti. Drugič, ukvarjati se morate z velikimi tabelami brez povezave. Trajne podatke je mogoče shraniti v tabelah, ki so velike veliko petabajtov. To lahko povzroči počasnejše hitrosti skeniranja. Tretjič, držati se moramo stroge klasifikacije SLA za nestanovitne podatke. Zaradi tega je sistem zelo učinkovit, hiter in natančen. Nazadnje moramo zagotoviti klasifikacijo podatkov z nizko zakasnitvijo za nestanovitne podatke za izvedbo klasifikacije v realnem času, pa tudi za primere uporabe interneta.

Ta članek opisuje, kako smo se spopadli z zgornjimi izzivi, in predstavlja hiter in razširljiv klasifikacijski sistem, ki razvršča podatkovne elemente vseh vrst, formatov in virov na podlagi skupnega niza funkcij. Razširili smo sistemsko arhitekturo in ustvarili model strojnega učenja po meri za hitro razvrščanje podatkov brez povezave in na spletu. Ta dokument je organiziran na naslednji način: Razdelek 2 predstavlja celotno zasnovo sistema. Razdelek 3 obravnava dele sistema strojnega učenja. Razdelka 4 in 5 poudarjata povezano delo in orišeta prihodnje usmeritve dela.

arhitektura

Za spopadanje z izzivi trajnih spletnih podatkov v obsegu Facebooka ima klasifikacijski sistem dva ločena toka, o katerih bomo podrobneje razpravljali.

Trajnostni podatki

Na začetku se mora sistem seznaniti s številnimi informacijskimi sredstvi Facebooka. Za vsako repozitorij se zbere nekaj osnovnih informacij, na primer podatkovni center, ki vsebuje te podatke, sistem, ki vsebuje te podatke, in sredstva, ki se nahajajo v določenem repozitoriju podatkov. To ustvari katalog metapodatkov, ki sistemu omogoča učinkovito pridobivanje podatkov brez preobremenitve strank in virov, ki jih uporabljajo drugi inženirji.

Ta katalog metapodatkov zagotavlja verodostojen vir za vsa skenirana sredstva in vam omogoča sledenje statusu različnih sredstev. Z uporabo teh informacij se določi prioriteta razporejanja na podlagi zbranih podatkov in notranjih informacij iz sistema, kot je čas, ko je bilo sredstvo nazadnje uspešno skenirano, in čas, ko je bilo ustvarjeno, ter pretekle zahteve po pomnilniku in procesorju za to sredstvo, če skenirano je bilo prej. Nato se za vsak podatkovni vir (ko viri postanejo na voljo) pokliče opravilo za dejansko skeniranje vira.

Vsako opravilo je prevedena binarna datoteka, ki izvede Bernoullijevo vzorčenje na najnovejših podatkih, ki so na voljo za vsako sredstvo. Sredstvo je razdeljeno na posamezne stolpce, kjer se rezultat klasifikacije vsakega stolpca obdeluje neodvisno. Poleg tega sistem pregleda vse nasičene podatke v stolpcih. JSON, nizi, kodirane strukture, URL-ji, serializirani podatki base 64 in drugo so skenirani. To lahko znatno podaljša čas izvajanja skeniranja, ker lahko posamezna tabela vsebuje na tisoče ugnezdenih stolpcev v blobu json.

Za vsako vrstico, ki je izbrana v podatkovnem sredstvu, klasifikacijski sistem iz vsebine izvleče lebdeče in besedilne objekte ter vsak predmet poveže nazaj s stolpcem, iz katerega je bil vzet. Rezultat koraka ekstrakcije funkcij je zemljevid vseh funkcij za vsak stolpec, najden v podatkovnem sredstvu.

Za kaj so znaki?

Koncept atributov je ključen. Namesto lastnosti float in besedila lahko posredujemo neobdelane vzorce nizov, ki so neposredno ekstrahirani iz vsakega podatkovnega vira. Poleg tega je mogoče modele strojnega učenja učiti neposredno na vsakem vzorcu, namesto na stotine izračunov funkcij, ki poskušajo samo približati vzorec. Razlogov za to je več:

  1. Zasebnost na prvem mestu: Najpomembneje je, da nam koncept funkcij omogoča, da v pomnilnik shranimo samo tiste vzorce, ki jih pridobimo. To zagotavlja, da vzorce hranimo za en sam namen in jih nikoli ne beležimo z lastnimi prizadevanji. To je še posebej pomembno za nestanovitne podatke, saj mora storitev ohraniti določeno stanje klasifikacije, preden zagotovi napoved.
  2. Pomnilnik: nekateri vzorci so lahko dolgi na tisoče znakov. Shranjevanje takšnih podatkov in njihov prenos v dele sistema po nepotrebnem porabi veliko dodatnih bajtov. Ta dva dejavnika se lahko sčasoma združita, saj obstaja veliko podatkovnih virov s tisoči stolpcev.
  3. Združevanje funkcij: Funkcije jasno predstavljajo rezultate vsakega skeniranja prek nabora funkcij, kar sistemu omogoča, da na priročen način združi rezultate prejšnjih pregledov istega podatkovnega vira. To je lahko uporabno za združevanje rezultatov skeniranja iz enega samega podatkovnega vira v več izvajanjih.

Funkcije se nato pošljejo v storitev predvidevanja, kjer uporabljamo klasifikacijo na podlagi pravil in strojno učenje za predvidevanje podatkovnih oznak vsakega stolpca. Storitev se zanaša na klasifikatorje pravil in strojno učenje ter izbere najboljšo napoved iz vsakega predmeta napovedi.

Klasifikatorji pravil so ročna hevristika, uporabljajo izračune in koeficiente za normalizacijo predmeta na obseg od 0 do 100. Ko je tak začetni rezultat ustvarjen za vsako vrsto podatkov in ime stolpca, povezano s temi podatki, ni vključen v nobeno "prepoved seznami", Klasifikator pravil izbere najvišjo normalizirano oceno med vsemi vrstami podatkov.

Zaradi zapletenosti klasifikacije zanašanje zgolj na ročne hevristike povzroči nizko natančnost klasifikacije, zlasti za nestrukturirane podatke. Iz tega razloga smo razvili sistem strojnega učenja za delo s klasifikacijo nestrukturiranih podatkov, kot sta uporabniška vsebina in naslov. Strojno učenje je omogočilo začetek odmika od ročne hevristike in uporabo dodatnih podatkovnih signalov (npr. imena stolpcev, izvor podatkov), s čimer se je bistveno izboljšala natančnost zaznavanja. Pozneje se bomo poglobili v našo arhitekturo strojnega učenja.

Storitev predvidevanja shrani rezultate za vsak stolpec skupaj z metapodatki glede časa in stanja skeniranja. Vsi potrošniki in nadaljnji procesi, ki so odvisni od teh podatkov, jih lahko preberejo iz dnevno objavljenega nabora podatkov. Ta niz združuje rezultate vseh teh opravil skeniranja ali API-jev kataloga podatkov v realnem času. Objavljene napovedi so osnova za samodejno uveljavljanje politik zasebnosti in varnosti.

Ko storitev napovedovanja zapiše vse podatke in so vse napovedi shranjene, lahko naš API kataloga podatkov v realnem času vrne vse napovedi podatkovnih vrst za vir. Vsak dan sistem objavi nabor podatkov, ki vsebuje vse najnovejše napovedi za vsako sredstvo.

Nestanovitni podatki

Medtem ko je zgornji postopek zasnovan za trajna sredstva, se tudi netrajni promet šteje za del podatkov organizacije in je lahko pomemben. Iz tega razloga sistem ponuja spletni API za generiranje napovedi klasifikacije v realnem času za kateri koli občasni promet. Sistem napovedovanja v realnem času se pogosto uporablja pri razvrščanju odhodnega prometa, vhodnega prometa v modele strojnega učenja in podatke o oglaševalcih.

Tukaj API sprejme dva glavna argumenta: ključ združevanja in neobdelane podatke, ki jih je treba predvideti. Storitev izvede isto pridobivanje objektov, kot je opisano zgoraj, in združi objekte skupaj za isti ključ. Te funkcije so podprte tudi v obstojnem predpomnilniku za obnovitev napake. Za vsak ključ združevanja storitev zagotovi, da je videla dovolj vzorcev, preden pokliče storitev predvidevanja, po zgoraj opisanem postopku.

Optimizacija

Za skeniranje nekaterih shramb uporabljamo knjižnice in tehnike za optimizacijo branja iz vroče shrambe [2] in zagotovimo, da drugih uporabnikov ne moti dostop do iste shrambe.

Za izjemno velike tabele (50+ petabajtov) kljub vsem optimizacijam in učinkovitosti pomnilnika sistem deluje tako, da skenira in izračuna vse, preden mu zmanjka pomnilnika. Navsezadnje je optično branje v celoti izračunano v pomnilniku in se med skeniranjem ne shrani. Če velike tabele vsebujejo na tisoče stolpcev z nestrukturiranimi gručami podatkov, lahko opravilo ne uspe zaradi nezadostnih pomnilniških virov pri izvajanju predvidevanj za celotno tabelo. To bo povzročilo zmanjšano pokritost. Za boj proti temu smo optimizirali sistem za uporabo hitrosti skeniranja kot posrednika za to, kako dobro sistem obravnava trenutno delovno obremenitev. Hitrost uporabljamo kot napovedni mehanizem, da opazimo težave s pomnilnikom in predvideno izračunamo zemljevid funkcij. Hkrati porabimo manj podatkov kot običajno.

Podatkovni signali

Klasifikacijski sistem je dober le toliko, kolikor so dobri signali iz podatkov. Tukaj si bomo ogledali vse signale, ki jih uporablja klasifikacijski sistem.

  • Temelji na vsebini: Seveda je prvi in ​​najpomembnejši signal vsebina. Bernoullijevo vzorčenje se izvaja na vsakem podatkovnem sredstvu, ki ga skeniramo, in ekstrahira funkcije na podlagi vsebine podatkov. Veliko znakov prihaja iz vsebine. Možno je poljubno število lebdečih predmetov, ki predstavljajo izračune, kolikokrat je bila določena vrsta vzorca videna. Na primer, lahko imamo znake o številu e-poštnih sporočil, vidnih v vzorcu, ali znake o tem, koliko emojijev je vidnih v vzorcu. Te izračune funkcij je mogoče normalizirati in združiti med različnimi pregledi.
  • Izvor podatkov: pomemben signal, ki lahko pomaga, ko se vsebina spremeni iz nadrejene tabele. Pogost primer so zgoščeni podatki. Ko so podatki v podrejeni tabeli zgoščeni, pogosto prihajajo iz nadrejene tabele, kjer ostanejo čisti. Podatki o poreklu pomagajo pri razvrščanju določenih vrst podatkov, če niso jasno prebrani ali so pretvorjeni iz zgornje tabele.
  • Opombe: še en visokokakovosten signal, ki pomaga pri prepoznavanju nestrukturiranih podatkov. Pravzaprav lahko opombe in podatki o poreklu delujejo skupaj pri širjenju atributov po različnih podatkovnih sredstvih. Opombe pomagajo identificirati vir nestrukturiranih podatkov, medtem ko lahko podatki o rodovništvu pomagajo slediti toku teh podatkov v celotnem repozitoriju.
  • Vstavljanje podatkov je tehnika, pri kateri so posebni, neberljivi znaki namerno vneseni v znane vire znanih tipov podatkov. Potem, ko skeniramo vsebino z istim neberljivim zaporedjem znakov, lahko sklepamo, da vsebina izvira iz te znane vrste podatkov. To je še en kvalitativni podatkovni signal, podoben opombam. Le da detekcija na podlagi vsebine pomaga odkriti vnesene podatke.

Merilne metrike

Pomembna komponenta je stroga metodologija za merjenje metrik. Glavni meritvi za ponovitev izboljšanja klasifikacije sta natančnost in priklic vsake oznake, pri čemer je ocena F2 najpomembnejša.

Za izračun teh metrik je potrebna neodvisna metodologija za označevanje podatkovnih sredstev, ki je neodvisna od samega sistema, vendar jo je mogoče uporabiti za neposredno primerjavo z njim. Spodaj opisujemo, kako zbiramo osnovno resnico iz Facebooka in jo uporabljamo za usposabljanje našega klasifikacijskega sistema.

Zbiranje zanesljivih podatkov

Zanesljive podatke zbiramo iz vsakega spodaj navedenega vira v svojo tabelo. Vsaka tabela je odgovorna za združevanje zadnjih opazovanih vrednosti iz tega določenega vira. Vsak vir ima preverjanja kakovosti podatkov, da se zagotovi, da so opažene vrednosti za vsak vir visoke kakovosti in vsebujejo najnovejše oznake vrste podatkov.

  • Konfiguracije platforme za beleženje: nekatera polja v tabelah panjev so poseljena s podatki določene vrste. Uporaba in širjenje teh podatkov služi kot zanesljiv vir resnice.
  • Ročno označevanje: razvijalci, ki vzdržujejo sistem, in zunanji označevalci so usposobljeni za označevanje stolpcev. To na splošno dobro deluje za vse vrste podatkov v skladišču in je lahko primarni vir resnice za nekatere nestrukturirane podatke, kot so podatki sporočil ali uporabniška vsebina.
  • Stolpci iz nadrejenih tabel so lahko označeni ali opombe, da vsebujejo določene podatke, in tem podatkom lahko sledimo v podrejenih tabelah.
  • Pridobivanje niti izvajanja: niti izvajanja v Facebooku prenašajo določene vrste podatkov. Z uporabo našega skenerja kot storitvene arhitekture lahko vzorčimo tokove, ki imajo znane tipe podatkov, in jih pošljemo skozi sistem. Sistem obljublja, da teh podatkov ne bo shranjeval.
  • Vzorčne tabele: Velike panjske tabele, za katere je znano, da vsebujejo celoten podatkovni korpus, se lahko uporabljajo tudi kot podatki za usposabljanje in se skozi skener prenesejo kot storitev. To je odlično za tabele s celotnim obsegom podatkovnih tipov, tako da je naključno vzorčenje stolpca enakovredno vzorčenju celotnega nabora tega podatkovnega tipa.
  • Sintetični podatki: Uporabljamo lahko celo knjižnice, ki podatke ustvarjajo sproti. To dobro deluje za preproste javne vrste podatkov, kot sta naslov ali GPS.
  • Upravljavci podatkov: programi za zasebnost običajno uporabljajo skrbnike podatkov za ročno dodeljevanje pravilnikov delom podatkov. To služi kot zelo natančen vir resnice.

Vsak večji vir resnice združimo v en korpus z vsemi temi podatki. Največji izziv pri veljavnosti je zagotoviti, da je reprezentativen za repozitorij podatkov. V nasprotnem primeru se lahko motorji za klasifikacijo pretrenirajo. Za boj proti temu se vsi zgornji viri uporabljajo za zagotavljanje ravnovesja pri usposabljanju modelov ali izračunavanju meritev. Poleg tega človeški označevalci enotno vzorčijo različne stolpce v repozitoriju in ustrezno označijo podatke, tako da zbiranje osnovne resnice ostane nepristransko.

Neprekinjena integracija

Da bi zagotovili hitro ponavljanje in izboljšave, je pomembno, da vedno merite delovanje sistema v realnem času. Vsako izboljšavo klasifikacije lahko izmerimo glede na današnji sistem, tako da lahko na podlagi podatkov taktično vodimo prihodnje izboljšave. Tukaj pogledamo, kako sistem zaključi povratno zanko, ki jo zagotavljajo veljavni podatki.

Ko sistem za razporejanje naleti na sredstvo, ki ima oznako iz zaupanja vrednega vira, načrtujemo dve nalogi. Prvi uporablja naš proizvodni skener in s tem naše proizvodne zmogljivosti. Druga naloga uporablja najnovejši skener gradnje z najnovejšimi funkcijami. Vsaka naloga zapiše svoj rezultat v lastno tabelo, pri čemer označi različice skupaj z rezultati razvrščanja.

Tako v realnem času primerjamo rezultate klasifikacije kandidata za izdajo in proizvodnega modela.

Medtem ko nabori podatkov primerjajo funkcije RC in PROD, se beležijo številne različice mehanizma klasifikacije ML storitve napovedovanja. Najnovejši model strojnega učenja, trenutni model v proizvodnji in vsi poskusni modeli. Isti pristop nam omogoča, da "razrežemo" različne različice modela (ne glede na naše klasifikatorje pravil) in primerjamo meritve v realnem času. Tako je enostavno ugotoviti, kdaj je poskus ML pripravljen za začetek proizvodnje.

Vsako noč se funkcije RC, izračunane za ta dan, pošljejo v cevovod za usposabljanje ML, kjer se model uri na najnovejših funkcijah RC in oceni svojo zmogljivost glede na nabor podatkov o resnici na terenu.

Vsako jutro model zaključi usposabljanje in je samodejno objavljen kot poskusni model. Samodejno je vključen na poskusni seznam.

Nekaj ​​rezultatov

Več kot 100 različnih vrst podatkov je označenih z visoko natančnostjo. Dobro strukturirane vrste, kot so e-pošta in telefonske številke, so razvrščene z oceno f2, večjo od 0,95. Prosti tipi podatkov, kot so uporabniško ustvarjena vsebina in ime, prav tako delujejo zelo dobro, z rezultati F2 nad 0,85.

Veliko število posameznih stolpcev trajnih in nestanovitnih podatkov je dnevno razvrščenih po vseh repozitorijih. Dnevno se pregleda več kot 500 terabajtov v več kot 10 podatkovnih skladiščih. Večina teh skladišč ima več kot 98-odstotno pokritost.

Sčasoma je klasifikacija postala zelo učinkovita, saj opravila klasifikacije v trajnem toku brez povezave v povprečju vzamejo 35 sekund od skeniranja sredstva do izračuna napovedi za vsak stolpec.

Razširljiva klasifikacija podatkov za varnost in zasebnost
riž. 2. Diagram, ki opisuje neprekinjen integracijski tok za razumevanje, kako se RC objekti generirajo in pošljejo modelu.

Razširljiva klasifikacija podatkov za varnost in zasebnost
Slika 3. Diagram visoke ravni komponente strojnega učenja.

Sistemska komponenta strojnega učenja

V prejšnjem razdelku smo se globoko poglobili v celotno sistemsko arhitekturo in izpostavili obseg, optimizacijo ter tokove podatkov brez povezave in na spletu. V tem razdelku si bomo ogledali storitev napovedovanja in opisali sistem strojnega učenja, ki poganja storitev napovedovanja.

Z več kot 100 vrstami podatkov in nekaj nestrukturirane vsebine, kot so podatki o sporočilih in uporabniška vsebina, uporaba povsem ročne hevristike zagotavlja subparametrično natančnost klasifikacije, zlasti za nestrukturirane podatke. Iz tega razloga smo razvili tudi sistem strojnega učenja, ki se ukvarja s kompleksnostjo nestrukturiranih podatkov. Uporaba strojnega učenja vam omogoča, da se začnete odmikati od ročne hevristike in delate s funkcijami in dodatnimi podatkovnimi signali (na primer imena stolpcev, izvor podatkov), da izboljšate natančnost.

Implementirani model proučuje vektorske predstavitve [3] ločeno nad gostimi in redkimi objekti. Ti se nato združijo, da tvorijo vektor, ki gre skozi niz korakov normalizacije serije [4] in nelinearnosti, da se ustvari končni rezultat. Končni rezultat je število s plavajočo vejico med [0-1] za vsako oznako, ki označuje verjetnost, da primer pripada tej vrsti občutljivosti. Uporaba PyTorcha za model nam je omogočila hitrejše premikanje, kar je omogočilo razvijalcem zunaj ekipe, da hitro naredijo in preizkusijo spremembe.

Pri načrtovanju arhitekture je bilo pomembno ločeno modelirati redke (npr. besedilo) in goste (npr. numerične) objekte zaradi njihovih inherentnih razlik. Za končno arhitekturo je bilo pomembno tudi izvesti pregled parametrov, da bi našli optimalno vrednost za stopnjo učenja, velikost serije in druge hiperparametre. Pomemben hiperparameter je bila tudi izbira optimizatorja. Ugotovili smo, da je priljubljen optimizator Adampogosto vodi do pretiranega opremljanja, medtem ko model z SGD bolj stabilen. Obstajajo dodatne nianse, ki smo jih morali vključiti neposredno v model. Na primer statična pravila, ki zagotavljajo, da model naredi deterministično napoved, ko ima funkcija določeno vrednost. Ta statična pravila določijo naše stranke. Ugotovili smo, da je njihova vključitev neposredno v model povzročila bolj samostojno in robustno arhitekturo v nasprotju z izvajanjem koraka naknadne obdelave za obravnavo teh posebnih robnih primerov. Upoštevajte tudi, da so ta pravila med vadbo onemogočena, da ne motijo ​​procesa vadbe spuščanja po strminah.

Težave

Eden od izzivov je bilo zbiranje kakovostnih in zanesljivih podatkov. Model potrebuje zaupanje za vsak razred, da se lahko nauči povezav med predmeti in oznakami. V prejšnjem razdelku smo razpravljali o metodah zbiranja podatkov za merjenje sistema in usposabljanje modela. Analiza je pokazala, da podatkovni razredi, kot so številke kreditnih kartic in bančnih računov, v našem skladišču niso zelo pogosti. To otežuje zbiranje velikih količin zanesljivih podatkov za usposabljanje modelov. Da bi rešili to težavo, smo razvili postopke za pridobivanje sintetičnih temeljnih resničnih podatkov za te razrede. Takšne podatke ustvarjamo tudi za občutljive vrste SSN, številke kreditnih kartic и IBAN-števila, za katera model prej ni mogel predvideti. Ta pristop omogoča obdelavo občutljivih vrst podatkov brez tveganj za zasebnost, povezanih s skrivanjem dejanskih občutljivih podatkov.

Poleg temeljnih vprašanj resnice so odprta arhitekturna vprašanja, na katerih se ukvarjamo, kot npr spremenite izolacijo и zgodnji postanek. Izolacija sprememb je pomembna za zagotovitev, da je vpliv različnih sprememb v različnih delih omrežja izoliran na določene razrede in nima širokega vpliva na celotno uspešnost napovedovanja. Izboljšanje meril za zgodnjo ustavitev je prav tako ključnega pomena, da lahko ustavimo proces treninga na stabilni točki za vse razrede, namesto na točki, kjer se nekateri razredi pretrenirajo, drugi pa ne.

Pomembnost funkcije

Ko je v model uvedena nova funkcija, želimo vedeti njen splošni vpliv na model. Prav tako želimo zagotoviti, da so napovedi človeško razumljive, tako da lahko natančno razumemo, katere funkcije se uporabljajo za vsako vrsto podatkov. V ta namen smo razvili in predstavili po razredih pomen funkcij za model PyTorch. Upoštevajte, da se to razlikuje od splošne pomembnosti funkcije, ki je običajno podprta, ker nam ne pove, katere funkcije so pomembne za določen razred. Pomembnost objekta merimo tako, da izračunamo povečanje napovedne napake po preureditvi objekta. Funkcija je "pomembna", ko zamenjava vrednosti poveča napako modela, ker se je v tem primeru model zanašal na funkcijo, da bi naredil svojo napoved. Funkcija je »nepomembna«, ko premeščanje njenih vrednosti pusti napako modela nespremenjeno, saj jo je v tem primeru model prezrl [5].

Pomembnost funkcije za vsak razred nam omogoča, da naredimo model interpretabilen, tako da lahko vidimo, kaj model gleda, ko napoveduje oznako. Na primer, ko analiziramo NASLOV, potem zagotavljamo, da znak, povezan z naslovom, kot npr AddressLinesCount, je visoko uvrščen v tabeli pomembnosti funkcij za vsak razred, tako da se naša človeška intuicija dobro ujema s tem, kar se je model naučil.

Vrednotenje

Za uspeh je pomembno določiti eno samo metriko. Izbrali smo F2 - ravnotežje med priklicem in natančnostjo (pristranskost pri priklicu je nekoliko večja). Odpoklic je za primer uporabe zasebnosti pomembnejši od natančnosti, ker je za ekipo ključnega pomena, da ne zgreši nobenih občutljivih podatkov (ob zagotavljanju razumne natančnosti). Dejansko vrednotenje zmogljivosti F2 našega modela presega obseg tega dokumenta. Vendar pa lahko s skrbno nastavitvijo dosežemo visoke (0,9+) ocene F2 za najpomembnejše občutljive razrede.

Povezano delo

Obstaja veliko algoritmov za samodejno razvrščanje nestrukturiranih dokumentov z uporabo različnih metod, kot so ujemanje vzorcev, iskanje podobnosti dokumentov in različne metode strojnega učenja (Bayesian, odločitvena drevesa, k-najbližji sosedi in številne druge) [6]. Vsako od teh je mogoče uporabiti kot del klasifikacije. Vendar je težava razširljivost. Klasifikacijski pristop v tem članku je nagnjen k prilagodljivosti in učinkovitosti. To nam omogoča, da v prihodnosti podpiramo nove razrede in ohranjamo nizko zakasnitev.

Veliko dela je tudi s prstnimi odtisi podatkov. Na primer, avtorji v [7] opisujejo rešitev, ki se osredotoča na problem zajemanja uhajanja občutljivih podatkov. Osnovna predpostavka je, da je podatkom mogoče vzeti prstne odtise, da jih primerjamo z nizom znanih občutljivih podatkov. Avtorji v [8] opisujejo podoben problem uhajanja zasebnosti, vendar njihova rešitev temelji na specifični arhitekturi Android in je razvrščena le, če dejanja uporabnika povzročijo deljenje osebnih podatkov ali če osnovna aplikacija odteka uporabniške podatke. Tukaj je situacija nekoliko drugačna, saj so uporabniški podatki lahko tudi zelo nestrukturirani. Zato potrebujemo bolj zapleteno tehniko kot odvzem prstnih odtisov.

Da bi se spopadli s pomanjkanjem podatkov za nekatere vrste občutljivih podatkov, smo uvedli sintetične podatke. Obstaja veliko literature o povečevanju podatkov, na primer, avtorji v [9] so raziskovali vlogo vnašanja šuma med usposabljanjem in opazili pozitivne rezultate pri nadzorovanem učenju. Naš pristop k zasebnosti je drugačen, ker je uvedba šumnih podatkov lahko kontraproduktivna, zato se namesto tega osredotočamo na sintetične podatke visoke kakovosti.

Zaključek

V tem članku smo predstavili sistem, ki lahko razvrsti del podatkov. To nam omogoča ustvarjanje sistemov za uveljavljanje politik zasebnosti in varnosti. Pokazali smo, da imajo razširljiva infrastruktura, stalna integracija, strojno učenje in visokokakovostno zagotavljanje podatkov ključno vlogo pri uspehu številnih naših pobud glede zasebnosti.

Usmeritev za prihodnje delo je veliko. To lahko vključuje zagotavljanje podpore za neshematizirane podatke (datoteke), razvrščanje ne le vrste podatkov, temveč tudi stopnjo občutljivosti in uporabo samonadzorovanega učenja med usposabljanjem z ustvarjanjem natančnih sintetičnih primerov. Kar bo posledično pomagalo modelu zmanjšati izgube za največji znesek. Prihodnje delo bi se lahko osredotočilo tudi na potek dela preiskave, kjer presegamo odkrivanje in zagotavljamo analizo temeljnih vzrokov različnih kršitev zasebnosti. To bo pomagalo v primerih, kot je analiza občutljivosti (tj. ali je občutljivost zasebnosti vrste podatkov visoka (npr. IP uporabnika) ali nizka (npr. interni IP Facebook)).

Bibliografija

  1. David Ben-David, Tamar Domany in Abigail Tarem. Klasifikacija podatkov podjetja z uporabo tehnologij semantičnega spleta. V Peter F.Ï Patel-Schneider, Yue Pan, Pascal Hitzler, Peter Mika, Lei Zhang, Jeff Z. Pan, Ian Horrocks in Birte Glimm, uredniki, Semantični splet – ISWC 2010, strani 66–81, Berlin, Heidelberg, 2010. Springer Berlin Heidelberg.
  2. Subramanian Muralidhar, Wyatt Lloyd, Sabyasachi Roy, Cory Hill, Ernest Lin, Weiwen Liu, Satadru Pan, Shiva Shankar, Viswanath Sivakumar, Linpeng Tang in Sanjeev Kumar. f4: Facebookov sistem za shranjevanje toplih BLOB. noter 11. simpozij USENIX o načrtovanju in implementaciji operacijskih sistemov (OSDI 14), strani 383–398, Broomfield, CO, oktober 2014. Združenje USENIX.
  3. Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg S. Corrado in Jeff Dean. Porazdeljene predstavitve besed in besednih zvez ter njihova sestavljivost. V C. J. C. Burges, L. Bottou, M. Welling, Z. Ghahramani in K. Q. Weinberger, uredniki, Napredek v sistemih za obdelavo nevronskih informacij 26, strani 3111–3119. Curran Associates, Inc., 2013.
  4. Sergey Ioffe in Christian Szegedy. Paketna normalizacija: pospeševanje globokega mrežnega usposabljanja z zmanjšanjem notranjega premika kovariate. Francis Bach in David Blei, urednika, Zbornik 32. mednarodne konference o strojnem učenju, zvezek 37 Zbornik raziskav strojnega učenja, strani 448–456, Lille, Francija, 07.–09. julij 2015. PMLR.
  5. Leo Breiman. Naključni gozdovi. Mach. Naučite se., 45(1):5–32, oktober 2001.
  6. Thair Nu Phyu. Pregled klasifikacijskih tehnik pri rudarjenju podatkov.
  7. X. Shu, D. Yao in E. Bertino. Zaznavanje izpostavljenosti občutljivih podatkov, ki ohranja zasebnost. Transakcije IEEE o informacijski forenziki in varnosti, 10(5):1092–1103, 2015.
  8. Zhemin Yang, Min Yang, Yuan Zhang, Guofei Gu, Peng Ning in Xiaoyang Wang. Pristojnik: Analiza prenosa občutljivih podatkov v sistemu Android za odkrivanje uhajanja zasebnosti. strani 1043–1054, 11. 2013.
  9. Qizhe Xie, Zihang Dai, Eduard H. Hovy, Minh-Thang Luong in Quoc V. Le. Nenadzorovano povečevanje podatkov.

Razširljiva klasifikacija podatkov za varnost in zasebnost
Poiščite podrobnosti o tem, kako pridobiti iskan poklic iz nič ali Level Up v smislu spretnosti in plače z obiskovanjem spletnih tečajev SkillFactory:

Več tečajev

Vir: www.habr.com

Dodaj komentar