Skalabilna klasifikacija podataka za sigurnost i privatnost

Skalabilna klasifikacija podataka za sigurnost i privatnost

Klasifikacija podataka zasnovana na sadržaju je otvoren problem. Tradicionalni sistemi za prevenciju gubitka podataka (DLP) rješavaju ovaj problem uzimanjem otiska prsta relevantnih podataka i praćenjem krajnjih tačaka za otiske prstiju. S obzirom na veliki broj resursa podataka koji se stalno mijenjaju na Facebooku, ovaj pristup ne samo da nije skalabilan, već je i neefikasan za određivanje gdje se podaci nalaze. Ovaj rad se fokusira na end-to-end sistem izgrađen da detektuje osetljive semantičke tipove u Facebook-u u velikoj meri i automatski nameće skladištenje podataka i kontrolu pristupa.

Pristup koji je ovdje opisan je naš prvi sistem zaštite privatnosti od kraja do kraja koji pokušava riješiti ovaj problem uključivanjem signala podataka, mašinskog učenja i tradicionalnih tehnika otiska prsta za mapiranje i klasifikaciju svih podataka na Facebooku. Opisani sistem radi u proizvodnom okruženju, postižući prosječan F2 rezultat od 0,9+ u različitim klasama privatnosti dok obrađuje velike količine resursa podataka u desetinama spremišta. Predstavljamo prijevod Facebookovog ArXiv dokumenta o skalabilnoj klasifikaciji podataka za sigurnost i privatnost zasnovanu na mašinskom učenju.

Uvod

Danas organizacije prikupljaju i pohranjuju velike količine podataka u različitim formatima i lokacijama [1], a zatim se podaci konzumiraju na mnogim mjestima, ponekad se kopiraju ili keširaju više puta, što rezultira vrijednim i osjetljivim poslovnim informacijama koje su raspršene po mnogim podacima preduzeća trgovine. Kada se od organizacije traži da ispuni određene zakonske ili regulatorne zahtjeve, kao što je usklađenost sa propisima u parničnom postupku, postaje neophodno prikupiti podatke o lokaciji traženih podataka. Kada propis o privatnosti navodi da organizacija mora maskirati sve brojeve socijalnog osiguranja (SSN) kada dijeli lične podatke sa neovlašćenim entitetima, prirodni prvi korak je pretraživanje svih SSN brojeva u skladištima podataka organizacije. U takvim okolnostima, klasifikacija podataka postaje kritična [1]. Sistem klasifikacije će omogućiti organizacijama da automatski nametnu politiku privatnosti i sigurnosti, kao što su omogućavanje politike kontrole pristupa, zadržavanje podataka. Facebook predstavlja sistem koji smo izgradili u Facebooku koji koristi višestruke signale podataka, skalabilnu arhitekturu sistema i mašinsko učenje za otkrivanje osjetljivih semantičkih tipova podataka.

Otkrivanje i klasifikacija podataka je proces pronalaženja i označavanja podataka kako bi se relevantne informacije mogle brzo i efikasno pronaći kada je to potrebno. Trenutni proces je prilično ručne prirode i sastoji se od ispitivanja relevantnih zakona ili propisa, utvrđivanja koje vrste informacija treba smatrati osjetljivim i koji su različiti nivoi osjetljivosti, a zatim konstruiranja klasa i politika klasifikacije u skladu s tim [1]. Prevencija gubitka podataka (DLP) zatim uzima otiske prstiju na podatke i prati krajnje tačke nizvodno kako bi se dobili otisci prstiju. Kada se radi o skladištu s velikim brojem sredstava i petabajtima podataka, ovaj pristup jednostavno nema skalu.

Naš cilj je da izgradimo sistem klasifikacije podataka koji se prilagođava i robusnim i prolaznim korisničkim podacima, bez ikakvih dodatnih ograničenja na tip ili format podataka. Ovo je odvažan cilj i naravno dolazi sa izazovima. Dati zapis podataka može imati hiljade znakova.

Skalabilna klasifikacija podataka za sigurnost i privatnost
Slika 1. Online i offline tokovi predviđanja

Stoga ga moramo efikasno predstaviti koristeći zajednički skup karakteristika koje se kasnije mogu kombinovati i lako kretati. Ove karakteristike ne samo da bi trebalo da obezbede tačnu klasifikaciju, već i da obezbede fleksibilnost i proširivost za lako dodavanje i otkrivanje novih tipova podataka u budućnosti. Drugo, morate se baviti velikim oflajn stolovima. Trajni podaci mogu se pohraniti u tablice veličine mnogo petabajta. To može rezultirati sporijim brzinama skeniranja. Treće, moramo se pridržavati stroge SLA klasifikacije za promjenjive podatke. Ovo prisiljava sistem da bude visoko efikasan, brz i precizan. Konačno, moramo obezbijediti klasifikaciju podataka sa niskim kašnjenjem za promjenjive podatke da bismo izvršili klasifikaciju u realnom vremenu, kao i za slučajeve korištenja interneta.

Ovaj rad opisuje kako smo se nosili sa gore navedenim izazovima i predstavlja brz i skalabilan sistem klasifikacije koji klasifikuje elemente podataka svih tipova, formata i izvora na osnovu zajedničkog skupa karakteristika. Proširili smo arhitekturu sistema i kreirali prilagođeni model mašinskog učenja kako bismo brzo klasifikovali vanmrežne i onlajn podatke. Ovaj rad je organizovan na sljedeći način: Odjeljak 2 predstavlja cjelokupni dizajn sistema. Treći dio govori o dijelovima sistema mašinskog učenja. Odjeljci 3 i 4 ističu srodni rad i navode buduće pravce rada.

arhitektura

Da bi se nosio sa izazovima upornih onlajn podataka na Facebooku, sistem klasifikacije ima dva odvojena toka, o kojima ćemo detaljno razgovarati.

Sustainable Data

U početku, sistem mora naučiti o brojnim informacijama Facebooka. Za svako spremište se prikupljaju neke osnovne informacije, kao što je centar podataka koji sadrži te podatke, sistem koji sadrži te podatke i sredstva koja se nalaze u određenom spremištu podataka. Ovo stvara katalog metapodataka koji omogućava sistemu da efikasno dohvaća podatke bez preopterećenja klijenata i resursa koje koriste drugi inženjeri.

Ovaj katalog metapodataka pruža autoritativni izvor za svu skeniranu imovinu i omogućava vam da pratite status različitih sredstava. Koristeći ove informacije, prioritet planiranja se uspostavlja na osnovu prikupljenih podataka i internih informacija iz sistema, kao što je vrijeme kada je sredstvo posljednji put uspješno skenirano i vrijeme kada je kreirano, kao i prošlih memorijskih i CPU zahtjeva za to sredstvo ako već je skeniran. Zatim, za svaki resurs podataka (kako resursi postanu dostupni), poziva se posao za stvarno skeniranje resursa.

Svaki posao je kompajlirana binarna datoteka koja izvodi Bernoullijevo uzorkovanje na najnovijim podacima dostupnim za svako sredstvo. Imovina je podijeljena u pojedinačne kolone, gdje se rezultat klasifikacije svake kolone obrađuje nezavisno. Dodatno, sistem skenira za sve zasićene podatke unutar kolona. JSON, nizovi, kodirane strukture, URL-ovi, serijalizovani podaci baze 64 i još mnogo toga se skeniraju. Ovo može značajno povećati vrijeme izvršenja skeniranja jer jedna tablica može sadržavati hiljade ugniježđenih stupaca u blob-u json.

Za svaki red koji je odabran u materijalu podataka, sistem klasifikacije izdvaja objekte sa plutajućim i tekstualnim objektima iz sadržaja i pridružuje svaki objekt nazad koloni iz koje je uzet. Izlaz koraka izdvajanja karakteristika je mapa svih karakteristika za svaki stupac koji se nalazi u materijalu podataka.

Čemu služe znakovi?

Koncept atributa je ključan. Umjesto float i tekstualnih svojstava, možemo proslijediti sirove uzorke nizova koji se direktno izdvajaju iz svakog izvora podataka. Osim toga, modeli mašinskog učenja mogu se trenirati direktno na svakom uzorku, umjesto na stotine proračuna karakteristika koje samo pokušavaju aproksimirati uzorak. Postoji nekoliko razloga za to:

  1. Privatnost na prvom mjestu: što je najvažnije, koncept funkcija nam omogućava da u memoriju pohranimo samo one obrasce koje dohvatimo. Ovo osigurava da pohranjujemo uzorke za jednu svrhu i da ih nikada ne evidentiramo vlastitim naporima. Ovo je posebno važno za promjenjive podatke, budući da usluga mora održavati neko stanje klasifikacije prije nego što pruži predviđanje.
  2. Memorija: Neki uzorci mogu imati hiljade znakova. Čuvanje takvih podataka i njihovo prenošenje u dijelove sistema nepotrebno troši mnogo dodatnih bajtova. Ova dva faktora se mogu kombinovati tokom vremena, s obzirom na to da postoji mnogo resursa podataka sa hiljadama kolona.
  3. Agregacija karakteristika: Karakteristike jasno predstavljaju rezultate svakog skeniranja kroz skup funkcija, omogućavajući sistemu da kombinuje rezultate prethodnih skeniranja istog izvora podataka na prikladan način. Ovo može biti korisno za agregiranje rezultata skeniranja iz jednog izvora podataka u više pokreta.

Funkcije se zatim šalju u uslugu predviđanja gdje koristimo klasifikaciju zasnovanu na pravilima i mašinsko učenje da predvidimo oznake podataka svake kolone. Usluga se oslanja i na klasifikatore pravila i na mašinsko učenje i bira najbolje predviđanje dato od svakog objekta predviđanja.

Klasifikatori pravila su ručna heuristika, oni koriste proračune i koeficijente za normalizaciju objekta na raspon od 0 do 100. Jednom kada se takav početni rezultat generira za svaki tip podataka i naziv stupca koji je povezan s tim podacima, on nije uključen ni u jednu "zabranu". liste" ,Klasifikator pravila odabire najviši normalizirani rezultat među svim tipovima podataka.

Zbog složenosti klasifikacije, oslanjanje isključivo na ručnu heuristiku rezultira niskom preciznošću klasifikacije, posebno za nestrukturirane podatke. Iz tog razloga smo razvili sistem mašinskog učenja za rad sa klasifikacijom nestrukturiranih podataka kao što su korisnički sadržaj i adresa. Mašinsko učenje je omogućilo da se počne odmicati od ručne heuristike i primijeniti dodatne signale podataka (npr. imena kolona, ​​porijeklo podataka), značajno poboljšavajući točnost detekcije. Kasnije ćemo zaroniti duboko u našu arhitekturu mašinskog učenja.

Usluga predviđanja pohranjuje rezultate za svaku kolonu zajedno s metapodacima koji se odnose na vrijeme i stanje skeniranja. Svi potrošači i daljnji procesi koji zavise od ovih podataka mogu ih pročitati iz dnevno objavljenog skupa podataka. Ovaj skup objedinjuje rezultate svih ovih poslova skeniranja ili API-ja Kataloga podataka u realnom vremenu. Objavljene prognoze su osnova za automatsku primjenu politika privatnosti i sigurnosti.

Konačno, nakon što usluga predviđanja zapiše sve podatke i sve prognoze budu pohranjene, naš API kataloga podataka može vratiti sve prognoze tipa podataka za resurs u realnom vremenu. Svaki dan sistem objavljuje skup podataka koji sadrži sve najnovije prognoze za svako sredstvo.

Nestabilni podaci

Iako je gornji proces dizajniran za trajna sredstva, netrajni promet se također smatra dijelom podataka organizacije i može biti važan. Iz tog razloga, sistem obezbeđuje onlajn API za generisanje predviđanja klasifikacije u realnom vremenu za bilo koji povremeni saobraćaj. Sistem predviđanja u realnom vremenu se široko koristi u klasifikovanju odlaznog saobraćaja, dolaznog saobraćaja u modele mašinskog učenja i podataka o oglašivačima.

Ovdje API uzima dva glavna argumenta: ključ grupisanja i neobrađene podatke koje treba predvidjeti. Usluga izvodi isto dohvaćanje objekata kao što je gore opisano i grupiše objekte zajedno za isti ključ. Ove funkcije su također podržane u kešu postojanosti za oporavak od kvara. Za svaki ključ grupisanja, servis osigurava da je vidio dovoljno uzoraka prije pozivanja usluge predviđanja, slijedeći proces opisan gore.

Optimizacija

Za skeniranje nekih skladišta koristimo biblioteke i tehnike za optimizaciju čitanja iz vruće memorije [2] i osiguravamo da nema smetnji od strane drugih korisnika koji pristupaju istom skladištu.

Za izuzetno velike tabele (50+ petabajta), uprkos svim optimizacijama i efikasnosti memorije, sistem radi na skeniranju i izračunavanju svega pre nego što ostane bez memorije. Na kraju krajeva, skeniranje se u potpunosti izračunava u memoriji i ne pohranjuje se tokom skeniranja. Ako velike tablice sadrže tisuće stupaca s nestrukturiranim nakupinama podataka, posao može uspjeti zbog nedovoljnih memorijskih resursa pri izvođenju predviđanja na cijeloj tablici. To će rezultirati smanjenom pokrivenošću. Da bismo se borili protiv ovoga, optimizirali smo sistem da koristi brzinu skeniranja kao proxy za to koliko dobro sistem podnosi trenutno radno opterećenje. Koristimo brzinu kao prediktivni mehanizam da vidimo probleme sa memorijom i prediktivno izračunamo mapu karakteristika. Istovremeno, koristimo manje podataka nego inače.

Signali podataka

Sistem klasifikacije je dobar onoliko koliko su dobri signali iz podataka. Ovdje ćemo pogledati sve signale koje koristi sistem klasifikacije.

  • Zasnovano na sadržaju: Naravno, prvi i najvažniji signal je sadržaj. Bernoullijevo uzorkovanje vrši se na svakom elementu podataka koji skeniramo i izdvajamo karakteristike na osnovu sadržaja podataka. Mnogi znakovi proizlaze iz sadržaja. Moguć je bilo koji broj plutajućih objekata, koji predstavljaju proračune koliko puta je određena vrsta uzorka viđena. Na primjer, možemo imati znakove broja e-mailova koji se vide u uzorku ili znakove koliko emotikona se vidi u uzorku. Ovi proračuni karakteristika mogu se normalizirati i agregirati u različitim skeniranjima.
  • Porijeklo podataka: Važan signal koji može pomoći kada se sadržaj promijeni iz nadređene tablice. Uobičajeni primjer su heširani podaci. Kada se podaci u podređenoj tabeli heširaju, oni često dolaze iz nadređene tabele, gde ostaju čisti. Podaci o poreklu pomažu u klasifikaciji određenih tipova podataka kada se ne čitaju jasno ili se konvertuju iz tabele uzvodno.
  • Napomene: Još jedan signal visokog kvaliteta koji pomaže u identifikaciji nestrukturiranih podataka. U stvari, napomene i podaci o porijeklu mogu raditi zajedno kako bi širili atribute kroz različita sredstva podataka. Napomene pomažu u identifikaciji izvora nestrukturiranih podataka, dok podaci o porijeklu mogu pomoći u praćenju toka tih podataka kroz spremište.
  • Ubacivanje podataka je tehnika u kojoj se posebni, nečitljivi znakovi namjerno uvode u poznate izvore poznatih tipova podataka. Zatim, kad god skeniramo sadržaj sa istim nečitljivim nizom znakova, možemo zaključiti da sadržaj dolazi iz tog poznatog tipa podataka. Ovo je još jedan kvalitativni signal podataka sličan napomenama. Osim što detekcija zasnovana na sadržaju pomaže u otkrivanju unesenih podataka.

Measuring Metrics

Važna komponenta je rigorozna metodologija za mjerenje metrike. Glavne metrike za iteraciju poboljšanja klasifikacije su preciznost i opoziv svake oznake, pri čemu je F2 rezultat najvažniji.

Za izračunavanje ovih metrika potrebna je nezavisna metodologija za označavanje imovine podataka koja je nezavisna od samog sistema, ali se može koristiti za direktno poređenje sa njim. U nastavku opisujemo kako prikupljamo temeljnu istinu od Facebooka i koristimo je za obuku našeg sistema klasifikacije.

Prikupljanje pouzdanih podataka

Akumuliramo pouzdane podatke iz svakog dolje navedenog izvora u vlastitu tabelu. Svaka tabela je odgovorna za agregiranje najnovijih uočenih vrijednosti iz tog određenog izvora. Svaki izvor ima provjere kvaliteta podataka kako bi se osiguralo da su uočene vrijednosti za svaki izvor visokog kvaliteta i da sadrže najnovije oznake tipa podataka.

  • Konfiguracije platforme za evidentiranje: Određena polja u tabelama košnica su popunjena podacima koji su specifičnog tipa. Upotreba i širenje ovih podataka služi kao pouzdan izvor istine.
  • Ručno označavanje: Programeri koji održavaju sistem, kao i eksterni označavači su obučeni da označavaju kolone. Ovo općenito dobro funkcionira za sve vrste podataka u skladištu i može biti primarni izvor istine za neke nestrukturirane podatke, kao što su podaci o porukama ili korisnički sadržaj.
  • Kolone iz nadređenih tabela mogu biti označene ili označene kao da sadrže određene podatke, a mi možemo pratiti te podatke u tabelama dece.
  • Dohvaćanje niti izvršenja: niti izvršenja u Facebooku nose specifične vrste podataka. Koristeći naš skener kao arhitekturu usluge, možemo uzorkovati tokove koji imaju poznate tipove podataka i poslati ih kroz sistem. Sistem obećava da neće pohranjivati ​​ove podatke.
  • Primeri tabela: Velike tabele košnica, za koje je poznato da sadrže ceo korpus podataka, takođe se mogu koristiti kao podaci za obuku i proslediti kroz skener kao uslugu. Ovo je odlično za tabele sa punim opsegom tipova podataka, tako da je nasumično uzorkovanje kolone ekvivalentno uzorkovanju čitavog skupa tog tipa podataka.
  • Sintetički podaci: možemo čak koristiti biblioteke koje generiraju podatke u hodu. Ovo dobro funkcionira za jednostavne, javne tipove podataka kao što su adresa ili GPS.
  • Nadzornici podataka: Programi za zaštitu privatnosti obično koriste upravitelje podataka za ručno dodjeljivanje politika dijelovima podataka. Ovo služi kao vrlo tačan izvor istine.

Kombinujemo svaki glavni izvor istine u jedan korpus sa svim tim podacima. Najveći izazov s valjanošću je osigurati da bude reprezentativan za spremište podataka. U suprotnom, klasifikacioni motori se mogu pretrenirati. Za borbu protiv ovoga, svi gore navedeni izvori se koriste kako bi se osigurala ravnoteža prilikom obuke modela ili izračunavanja metrike. Osim toga, ljudi koji označavaju ljude jednolično uzorkuju različite kolone u spremištu i označavaju podatke u skladu s tim tako da prikupljanje temeljne istine ostane nepristrasno.

Kontinuirana integracija

Da biste osigurali brzu iteraciju i poboljšanje, važno je uvijek mjeriti performanse sistema u realnom vremenu. Možemo mjeriti svako poboljšanje klasifikacije u odnosu na sistem danas, tako da možemo taktički voditi buduća poboljšanja na osnovu podataka. Ovdje gledamo kako sistem dovršava povratnu petlju koju obezbjeđuju valjani podaci.

Kada sistem za planiranje naiđe na sredstvo koje ima oznaku iz pouzdanog izvora, zakazujemo dva zadatka. Prvi koristi naš proizvodni skener, a time i naše proizvodne mogućnosti. Drugi zadatak koristi najnoviji skener izrade s najnovijim funkcijama. Svaki zadatak zapisuje svoj izlaz u vlastitu tabelu, označavajući verzije zajedno sa rezultatima klasifikacije.

Ovako uspoređujemo rezultate klasifikacije kandidata za izdanje i proizvodnog modela u realnom vremenu.

Dok skupovi podataka upoređuju RC i PROD karakteristike, evidentiraju se mnoge varijacije mehanizma za ML klasifikaciju usluge predviđanja. Najnoviji model strojnog učenja, trenutni model u proizvodnji i svi eksperimentalni modeli. Isti pristup nam omogućava da „isječemo“ različite verzije modela (agnostično prema našim klasifikatorima pravila) i uporedimo metriku u realnom vremenu. Ovo olakšava određivanje kada je ML eksperiment spreman za proizvodnju.

Svake noći, RC karakteristike izračunate za taj dan šalju se u instalaciju ML treninga, gdje se model obučava o najnovijim RC karakteristikama i procjenjuje svoje performanse u odnosu na osnovni skup podataka o istini.

Svako jutro model završava obuku i automatski se objavljuje kao eksperimentalni model. Automatski se uključuje u eksperimentalnu listu.

Neki rezultati

Preko 100 različitih tipova podataka označeno je sa velikom preciznošću. Dobro strukturirani tipovi kao što su e-pošta i telefonski brojevi klasifikuju se sa ocenom f2 većom od 0,95. Besplatni tipovi podataka kao što su sadržaj i naziv koji generiraju korisnici također rade vrlo dobro, sa F2 rezultatima većim od 0,85.

Veliki broj pojedinačnih kolona trajnih i promjenjivih podataka klasifikuje se dnevno u svim spremištima. Više od 500 terabajta dnevno se skenira u više od 10 skladišta podataka. Većina ovih spremišta ima preko 98% pokrivenosti.

Vremenom je klasifikacija postala veoma efikasna, sa poslovima klasifikacije u stalnom vanmrežnom toku u proseku od 35 sekundi od skeniranja sredstva do izračunavanja predviđanja za svaku kolonu.

Skalabilna klasifikacija podataka za sigurnost i privatnost
Rice. 2. Dijagram koji opisuje kontinuirani tok integracije da bi se razumjelo kako se RC objekti generiraju i šalju u model.

Skalabilna klasifikacija podataka za sigurnost i privatnost
Slika 3. Dijagram visokog nivoa komponente mašinskog učenja.

Komponenta sistema mašinskog učenja

U prethodnom odeljku, duboko smo zaronili u celokupnu arhitekturu sistema, ističući razmeru, optimizaciju i vanmrežne i onlajn tokove podataka. U ovom odeljku ćemo pogledati uslugu predviđanja i opisati sistem mašinskog učenja koji pokreće uslugu predviđanja.

Sa preko 100 tipova podataka i nekim nestrukturiranim sadržajem kao što su podaci o porukama i korisničkim sadržajem, korištenje čisto ručne heuristike dovodi do subparametarske preciznosti klasifikacije, posebno za nestrukturirane podatke. Iz tog razloga, razvili smo i sistem mašinskog učenja koji se bavi složenošću nestrukturiranih podataka. Korišćenje mašinskog učenja omogućava vam da počnete da se udaljavate od ručne heuristike i radite sa funkcijama i dodatnim signalima podataka (na primer, nazivi kolona, ​​poreklo podataka) kako biste poboljšali tačnost.

Implementirani model proučava vektorske reprezentacije [3] preko gustih i rijetkih objekata odvojeno. Oni se zatim kombinuju kako bi se formirao vektor, koji prolazi kroz seriju normalizacije serije [4] i koraka nelinearnosti kako bi se proizveo konačni rezultat. Krajnji rezultat je broj u pokretnom zarezu između [0-1] za svaku oznaku, što ukazuje na vjerovatnoću da primjer pripada tom tipu osjetljivosti. Korištenje PyTorcha za model nam je omogućilo da se krećemo brže, omogućavajući programerima izvan tima da brzo naprave i testiraju promjene.

Prilikom dizajniranja arhitekture, bilo je važno odvojeno modelirati rijetke (npr. tekst) i guste (npr. numeričke) objekte zbog njihovih inherentnih razlika. Za konačnu arhitekturu, također je bilo važno izvršiti pregled parametara kako bi se pronašla optimalna vrijednost za brzinu učenja, veličinu serije i druge hiperparametre. Izbor optimizatora je takođe bio važan hiperparametar. Otkrili smo da je popularan optimizator Adamčesto dovodi do preopterećenja, dok model sa SGD stabilniji. Bilo je dodatnih nijansi koje smo morali uključiti direktno u model. Na primjer, statička pravila koja osiguravaju da model napravi determinističko predviđanje kada karakteristika ima određenu vrijednost. Ova statička pravila definiraju naši klijenti. Otkrili smo da je njihovo ugrađivanje direktno u model rezultiralo samostalnijom i robusnijom arhitekturom, za razliku od implementacije koraka naknadne obrade za rukovanje ovim posebnim rubnim slučajevima. Također imajte na umu da su ova pravila onemogućena tokom treninga kako ne bi ometali proces treninga gradijentnog spuštanja.

Problemi

Jedan od izazova bilo je prikupljanje kvalitetnih i pouzdanih podataka. Modelu je potrebno povjerenje za svaku klasu kako bi mogao naučiti asocijacije između objekata i oznaka. U prethodnom dijelu raspravljali smo o metodama prikupljanja podataka za mjerenje sistema i obuku modela. Analiza je pokazala da klase podataka kao što su brojevi kreditnih kartica i bankovnih računa nisu baš česte u našem skladištu. To otežava prikupljanje velikih količina pouzdanih podataka za obuku modela. Da bismo riješili ovaj problem, razvili smo procese za dobivanje sintetičkih temeljnih istinitih podataka za ove klase. Takve podatke generišemo za osjetljive tipove uključujući SSN, brojevi kreditnih kartica и IBAN-brojeve za koje model ranije nije mogao predvidjeti. Ovaj pristup omogućava obradu osjetljivih tipova podataka bez rizika privatnosti povezanih sa skrivanjem stvarnih osjetljivih podataka.

Osim osnovnih pitanja istine, postoje i otvorena arhitektonska pitanja na kojima radimo, kao što su promijeniti izolaciju и rano zaustavljanje. Izolacija promjena je važna kako bi se osiguralo da kada se različite promjene naprave na različitim dijelovima mreže, utjecaj bude izolovan na specifične klase i da nema širok utjecaj na ukupnu učinkovitost predviđanja. Poboljšanje kriterija ranog zaustavljanja je također kritično kako bismo mogli zaustaviti proces treninga na stabilnoj tački za sve razrede, umjesto na tački u kojoj se neki razredi pretreniraju, a drugi ne.

Značaj karakteristike

Kada se nova karakteristika uvede u model, želimo da znamo njen ukupni uticaj na model. Takođe želimo da budemo sigurni da su predviđanja razumljiva ljudima, tako da možemo tačno da razumemo koje karakteristike se koriste za svaku vrstu podataka. U tu svrhu smo razvili i uveli po klasi važnost karakteristika za PyTorch model. Imajte na umu da se ovo razlikuje od ukupne važnosti karakteristika, koja je obično podržana, jer nam ne govori koje su karakteristike važne za određenu klasu. Mjerimo važnost objekta izračunavanjem povećanja greške predviđanja nakon preuređivanja objekta. Značajka je "važna" kada zamjena vrijednosti povećava grešku modela jer se u ovom slučaju model oslanjao na značajku da napravi svoje predviđanje. Značajka je „nevažna“ kada miješanje njenih vrijednosti ostavlja grešku modela nepromijenjenom, jer je u ovom slučaju model ignorirao [5].

Važnost karakteristike za svaku klasu nam omogućava da model učinimo interpretativnim tako da možemo vidjeti šta model gleda kada predviđa oznaku. Na primjer, kada analiziramo ADDR, tada garantujemo da je znak povezan sa adresom, kao npr AddressLinesCount, visoko se rangira u tabeli važnosti karakteristika za svaku klasu, tako da se naša ljudska intuicija dobro poklapa sa onim što je model naučio.

procjena

Važno je definirati jednu metriku uspjeha. Mi biramo F2 - ravnoteža između prisjećanja i tačnosti (pristranost opoziva je nešto veća). Opoziv je važniji za slučaj korištenja privatnosti nego tačnost jer je za tim od ključne važnosti da ne propusti nijedan osjetljivi podatak (a da pritom osigura razumnu tačnost). Stvarna procjena performansi F2 našeg modela je izvan okvira ovog rada. Međutim, pažljivim podešavanjem možemo postići visoke (0,9+) F2 rezultate za najvažnije osjetljive klase.

Povezani rad

Postoji mnogo algoritama za automatsku klasifikaciju nestrukturiranih dokumenata koristeći različite metode kao što su podudaranje uzoraka, pretraživanje sličnosti dokumenata i različite metode mašinskog učenja (Bayesian, stabla odlučivanja, k-najbliži susjedi i mnoge druge) [6]. Bilo koji od ovih može se koristiti kao dio klasifikacije. Međutim, problem je skalabilnost. Pristup klasifikacije u ovom članku je pristrasan prema fleksibilnosti i performansama. Ovo nam omogućava da u budućnosti podržimo nove klase i zadržimo kašnjenje na niskom nivou.

Mnogo se radi i na otisku prstiju podataka. Na primjer, autori u [7] opisali su rješenje koje se fokusira na problem hvatanja osjetljivih curenja podataka. Osnovna pretpostavka je da se podaci mogu uzeti otiskom prsta kako bi se uskladili sa skupom poznatih osjetljivih podataka. Autori u [8] opisuju sličan problem curenja privatnosti, ali njihovo rješenje je bazirano na specifičnoj Android arhitekturi i klasificirano je samo ako radnje korisnika rezultiraju dijeljenjem ličnih podataka ili ako osnovna aplikacija propušta korisničke podatke. Ovdje je situacija nešto drugačija jer korisnički podaci također mogu biti vrlo nestrukturirani. Stoga nam je potrebna složenija tehnika od otiska prsta.

Konačno, da bismo se izborili s nedostatkom podataka za neke vrste osjetljivih podataka, uveli smo sintetičke podatke. Postoji veliki broj literature o povećanju podataka, na primjer, autori u [9] istraživali su ulogu ubrizgavanja buke tokom treninga i uočili pozitivne rezultate u nadgledanom učenju. Naš pristup privatnosti je drugačiji jer uvođenje bučnih podataka može biti kontraproduktivno, a mi se umjesto toga fokusiramo na visokokvalitetne sintetičke podatke.

zaključak

U ovom radu smo predstavili sistem koji može klasifikovati podatak. Ovo nam omogućava da kreiramo sisteme za sprovođenje politike privatnosti i bezbednosti. Pokazali smo da skalabilna infrastruktura, kontinuirana integracija, strojno učenje i osiguranje podataka visokog kvaliteta igraju ključnu ulogu u uspjehu mnogih naših inicijativa za zaštitu privatnosti.

Mnogo je pravaca za budući rad. Ovo može uključivati ​​pružanje podrške za nešematizirane podatke (datoteke), klasifikaciju ne samo tipa podataka već i nivoa osjetljivosti i korištenje samonadgledanog učenja tokom treninga generiranjem tačnih sintetičkih primjera. Što će zauzvrat pomoći modelu da smanji gubitke za najveći iznos. Budući rad bi se također mogao fokusirati na radni tok istrage, gdje idemo dalje od otkrivanja i pružamo analizu uzroka različitih povreda privatnosti. Ovo će pomoći u slučajevima kao što je analiza osjetljivosti (tj. da li je osjetljivost privatnosti tipa podataka visoka (npr. korisnička IP adresa) ili niska (npr. Facebook interna IP adresa)).

Bibliografija

  1. David Ben-David, Tamar Domany i Abigail Tarem. Klasifikacija podataka preduzeća korištenjem semantičkih web tehnologija. U Peter F.Ï Patel-Schneider, Yue Pan, Pascal Hitzler, Peter Mika, Lei Zhang, Jeff Z. Pan, Ian Horrocks i Birte Glimm, urednici, Semantička mreža – ISWC 2010, str. 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 i Sanjeev Kumar. f4: Facebookov topli BLOB sistem za skladištenje. U 11. USENIX simpozijum o dizajnu i implementaciji operativnih sistema (OSDI 14), strane 383–398, Broomfield, CO, oktobar 2014. Udruženje USENIX.
  3. Tomas Mikolov, Ilya Sutskever, Kai Chen, Greg S Corrado i Jeff Dean. Distribuirani prikazi riječi i fraza i njihova kompozicija. U C. J. C. Burges, L. Bottou, M. Welling, Z. Ghahramani i K. Q. Weinberger, urednici, Napredak u neuronskim sistemima za obradu informacija 26, stranice 3111–3119. Curran Associates, Inc., 2013.
  4. Sergey Ioffe i Christian Szegedy. Paketna normalizacija: Ubrzavanje dubinskog mrežnog treninga smanjenjem unutrašnjeg kovarijatnog pomaka. U Francis Bach i David Blei, urednici, Zbornik radova 32. međunarodne konferencije o mašinskom učenju, svezak 37 od Proceedings of Machine Learning Research, strane 448–456, Lille, Francuska, 07–09. jul 2015. PMLR.
  5. Leo Breiman. Slučajne šume. Mach. Naučite., 45(1):5–32, oktobar 2001.
  6. Thair Nu Phyu. Pregled tehnika klasifikacije u rudarenju podataka.
  7. X. Shu, D. Yao i E. Bertino. Otkrivanje izlaganja osjetljivih podataka koje čuva privatnost. IEEE Transakcije o forenzici informacija i sigurnosti, 10(5):1092–1103, 2015.
  8. Zhemin Yang, Min Yang, Yuan Zhang, Guofei Gu, Peng Ning i Xiaoyang Wang. Namjera: Analiza prijenosa osjetljivih podataka u androidu radi otkrivanja curenja privatnosti. stranice 1043–1054, 11. 2013.
  9. Qizhe Xie, Zihang Dai, Eduard H. Hovy, Minh-Thang Luong i Quoc V. Le. Povećanje podataka bez nadzora.

Skalabilna klasifikacija podataka za sigurnost i privatnost
Saznajte detalje o tome kako da dobijete traženu profesiju od nule ili na viši nivo u smislu vještina i plaće pohađanjem online kurseva SkillFactory:

Više kurseva

izvor: www.habr.com

Dodajte komentar