Անվտանգության և գաղտնիության համար տվյալների մասշտաբային դասակարգում

Անվտանգության և գաղտնիության համար տվյալների մասշտաբային դասակարգում

Բովանդակության վրա հիմնված տվյալների դասակարգումը բաց խնդիր է: Տվյալների կորստի կանխարգելման ավանդական (DLP) համակարգերը լուծում են այս խնդիրը՝ մատնահետք վերցնելով համապատասխան տվյալները և վերահսկելով մատնահետքերի վերջնական կետերը: Հաշվի առնելով Facebook-ում անընդհատ փոփոխվող տվյալների ռեսուրսների մեծ թիվը, այս մոտեցումը ոչ միայն մասշտաբային չէ, այլև անարդյունավետ է տվյալների գտնվելու վայրը որոշելու համար: Այս փաստաթուղթը կենտրոնանում է ծայրից ծայր համակարգի վրա, որը կառուցված է Facebook-ում մասշտաբով զգայուն իմաստային տեսակներ հայտնաբերելու և տվյալների պահպանման և մուտքի վերահսկման ավտոմատ կերպով կիրառման համար:

Այստեղ նկարագրված մոտեցումը մեր առաջին ծայրից ծայր գաղտնիության համակարգն է, որը փորձում է լուծել այս խնդիրը՝ ներառելով տվյալների ազդանշաններ, մեքենայական ուսուցում և մատնահետքերի ավանդական տեխնիկա՝ բոլոր տվյալները քարտեզագրելու և դասակարգելու Facebook-ում: Նկարագրված համակարգը գործում է արտադրական միջավայրում՝ ստանալով F2 միջին գնահատականը 0,9+ տարբեր գաղտնիության դասերում՝ միաժամանակ մշակելով մեծ քանակությամբ տվյալների ռեսուրսներ տասնյակ պահեստներում: Ներկայացնում ենք Facebook-ի ArXiv թղթի թարգմանությունը՝ մեքենայական ուսուցման վրա հիմնված տվյալների մասշտաբային դասակարգման անվտանգության և գաղտնիության համար:

Ներածություն

Այսօր կազմակերպությունները հավաքում և պահում են մեծ քանակությամբ տվյալներ տարբեր ձևաչափերով և վայրերում [1], այնուհետև տվյալները սպառվում են շատ վայրերում, երբեմն պատճենվում կամ պահվում են մի քանի անգամ, ինչի արդյունքում արժեքավոր և զգայուն բիզնես տեղեկատվությունը ցրվում է բազմաթիվ ձեռնարկությունների տվյալների մեջ: խանութներ. Երբ կազմակերպությունից պահանջվում է բավարարել որոշակի իրավական կամ կարգավորող պահանջներ, օրինակ՝ համապատասխանությունը քաղաքացիական դատավարության կանոնակարգերին, անհրաժեշտ է դառնում տվյալներ հավաքել պահանջվող տվյալների գտնվելու վայրի վերաբերյալ: Երբ գաղտնիության կանոնակարգում ասվում է, որ կազմակերպությունը պետք է քողարկի Սոցիալական ապահովության բոլոր համարները (SSN)՝ չլիազորված կազմակերպությունների հետ անձնական տեղեկությունները կիսելիս, բնական առաջին քայլը բոլոր SSN-ները կազմակերպության տվյալների պահեստներում որոնելն է: Նման հանգամանքներում տվյալների դասակարգումը դառնում է կարևոր [1]: Դասակարգման համակարգը թույլ կտա կազմակերպություններին ավտոմատ կերպով կիրառել գաղտնիության և անվտանգության քաղաքականությունը, ինչպիսիք են մուտքի վերահսկման քաղաքականությունը, տվյալների պահպանումը: Facebook-ը ներկայացնում է մի համակարգ, որը մենք ստեղծել ենք Facebook-ում, որն օգտագործում է տվյալների բազմաթիվ ազդանշաններ, մասշտաբային համակարգի ճարտարապետություն և մեքենայական ուսուցում՝ զգայուն իմաստային տվյալների տեսակները հայտնաբերելու համար:

Տվյալների հայտնաբերումը և դասակարգումը տվյալների որոնման և պիտակավորման գործընթացն է, որպեսզի համապատասխան տեղեկատվությունը հնարավորության դեպքում հնարավոր լինի արագ և արդյունավետ առբերել: Ընթացիկ գործընթացը բավականին մեխանիկական բնույթ է կրում և բաղկացած է համապատասխան օրենքների կամ կանոնակարգերի ուսումնասիրությունից, որոշելու, թե տեղեկատվության որ տեսակները պետք է համարվեն զգայուն և որոնք են զգայունության տարբեր մակարդակները, և համապատասխանաբար դասակարգերի և դասակարգման քաղաքականությունների կառուցում [1]: Տվյալների կորստի կանխարգելումը (DLP) այնուհետև մատնահետքեր է վերցնում տվյալները և վերահսկում է ներքևի վերջնակետերը՝ մատնահետքեր ստանալու համար: Երբ գործ ունենք ակտիվների համար ծանր պահեստի հետ՝ պետաբայթ տվյալների հետ, այս մոտեցումը պարզապես չի մասշտաբավորվում:

Մեր նպատակն է ստեղծել տվյալների դասակարգման համակարգ, որը կտարածվի և՛ կայուն, և՛ անցողիկ օգտագործողի տվյալների վրա՝ առանց տվյալների տեսակի կամ ձևաչափի լրացուցիչ սահմանափակումների: Սա համարձակ նպատակ է, և, բնականաբար, այն գալիս է մարտահրավերներով: Տվյալ տվյալների գրառումը կարող է լինել հազարավոր նիշերի երկարություն:

Անվտանգության և գաղտնիության համար տվյալների մասշտաբային դասակարգում
Նկար 1. Առցանց և օֆլայն կանխատեսման հոսքեր

Հետևաբար, մենք պետք է այն արդյունավետ կերպով ներկայացնենք՝ օգտագործելով մի շարք առանձնահատկություններ, որոնք հետագայում կարող են համակցվել և հեշտությամբ տեղափոխվել: Այս հատկանիշները ոչ միայն պետք է ապահովեն ճշգրիտ դասակարգում, այլև ապահովեն ճկունություն և ընդարձակում՝ ապագայում տվյալների նոր տեսակներ հեշտությամբ ավելացնելու և հայտնաբերելու համար: Երկրորդ, դուք պետք է գործ ունենաք մեծ օֆլայն աղյուսակների հետ: Երկարատև տվյալները կարող են պահվել աղյուսակներում, որոնք ունեն բազմաթիվ petabyte չափեր: Սա կարող է հանգեցնել սկանավորման ավելի դանդաղ արագության: Երրորդ, մենք պետք է պահպանենք խիստ SLA դասակարգումը անկայուն տվյալների վերաբերյալ: Սա ստիպում է համակարգին լինել բարձր արդյունավետ, արագ և ճշգրիտ: Վերջապես, մենք պետք է տրամադրենք ցածր ուշացման տվյալների դասակարգում անկայուն տվյալների համար իրական ժամանակում դասակարգում իրականացնելու համար, ինչպես նաև ինտերնետի օգտագործման դեպքերի համար:

Այս փաստաթուղթը նկարագրում է, թե ինչպես ենք մենք վերաբերվում վերը նշված մարտահրավերներին, և ներկայացնում է արագ և մասշտաբային դասակարգման համակարգ, որը դասակարգում է բոլոր տեսակի, ձևաչափերի և աղբյուրների տվյալների տարրերը՝ հիմնվելով ընդհանուր հատկանիշների վրա: Մենք ընդլայնեցինք համակարգի ճարտարապետությունը և ստեղծեցինք մեքենայական ուսուցման հատուկ մոդել՝ անցանց և առցանց տվյալները արագ դասակարգելու համար: Այս փաստաթուղթը կազմակերպված է հետևյալ կերպ. Բաժին 2-ը ներկայացնում է համակարգի ընդհանուր դիզայնը: Բաժին 3-ում քննարկվում են մեքենայական ուսուցման համակարգի մասերը: 4-րդ և 5-րդ բաժինները ընդգծում են հարակից աշխատանքը և նախանշում աշխատանքի ապագա ուղղությունները:

ճարտարապետություն

Մշտական ​​և ֆեյսբուքյան մասշտաբի առցանց տվյալների մարտահրավերներին դիմակայելու համար դասակարգման համակարգն ունի երկու առանձին հոսքեր, որոնք մենք մանրամասն կքննարկենք:

Կայուն տվյալներ

Սկզբում համակարգը պետք է իմանա Facebook-ի բազմաթիվ տեղեկատվական ակտիվների մասին: Յուրաքանչյուր պահոցի համար հավաքագրվում են որոշ հիմնական տեղեկություններ, ինչպիսիք են տվյալ տվյալները պարունակող տվյալների կենտրոնը, այդ տվյալները պարունակող համակարգը և տվյալ տվյալների պահոցում տեղակայված ակտիվները: Սա ստեղծում է մետատվյալների կատալոգ, որը թույլ է տալիս համակարգին արդյունավետ կերպով առբերել տվյալները՝ առանց այլ ինժեներների կողմից օգտագործվող հաճախորդների և ռեսուրսների ծանրաբեռնման:

Այս մետատվյալների կատալոգը ապահովում է հեղինակավոր աղբյուր բոլոր սկանավորված ակտիվների համար և թույլ է տալիս հետևել տարբեր ակտիվների կարգավիճակին: Օգտագործելով այս տեղեկատվությունը, պլանավորման առաջնահերթությունը սահմանվում է համակարգից հավաքված տվյալների և ներքին տեղեկատվության հիման վրա, ինչպիսիք են ակտիվի վերջին հաջող սկանավորման ժամանակը և դրա ստեղծման ժամանակը, ինչպես նաև այդ ակտիվի համար նախկին հիշողության և պրոցեսորի պահանջները, եթե այն նախկինում սկանավորվել է: Այնուհետև յուրաքանչյուր տվյալների ռեսուրսի համար (քանի որ ռեսուրսները հասանելի են դառնում), աշխատանք է կանչվում ռեսուրսը իրականում սկանավորելու համար:

Յուրաքանչյուր աշխատանք կազմված երկուական ֆայլ է, որն իրականացնում է Բեռնուլիի նմուշառում յուրաքանչյուր ակտիվի համար հասանելի վերջին տվյալների վրա: Ակտիվը բաժանվում է առանձին սյունակների, որտեղ յուրաքանչյուր սյունակի դասակարգման արդյունքը մշակվում է ինքնուրույն: Բացի այդ, համակարգը սկանավորում է սյունակներում առկա ցանկացած հագեցած տվյալ: JSON-ը, զանգվածները, կոդավորված կառույցները, URL-ները, բազային 64 սերիականացված տվյալները և ավելին բոլորը սկանավորվում են: Սա կարող է զգալիորեն մեծացնել սկանավորման կատարման ժամանակը, քանի որ մեկ աղյուսակը կարող է պարունակել հազարավոր ներդիր սյունակներ բլբի մեջ json.

Տվյալների ակտիվում ընտրված յուրաքանչյուր տողի համար դասակարգման համակարգը հանում է float և տեքստային օբյեկտները բովանդակությունից և կապում է յուրաքանչյուր օբյեկտ այն սյունակին, որտեղից այն վերցվել է: Հատկանիշի արդյունահանման քայլի արդյունքը տվյալների ակտիվում հայտնաբերված յուրաքանչյուր սյունակի բոլոր հատկանիշների քարտեզն է:

Ինչի համար են նշանները:

Առանձնահատկությունների հայեցակարգը առանցքային է: Լողացող և տեքստային հատկանիշների փոխարեն մենք կարող ենք փոխանցել հում տողերի նմուշներ, որոնք ուղղակիորեն արդյունահանվում են յուրաքանչյուր տվյալների ռեսուրսից: Բացի այդ, մեքենայական ուսուցման մոդելները կարող են ուղղակիորեն վերապատրաստվել յուրաքանչյուր նմուշի վրա, այլ ոչ թե հարյուրավոր առանձնահատկությունների հաշվարկներ, որոնք միայն փորձում են մոտավորել նմուշը: Դրա համար կան մի քանի պատճառներ.

  1. Գաղտնիությունը նախ. Ամենակարևորը, առանձնահատկությունների հայեցակարգը մեզ թույլ է տալիս հիշողության մեջ պահել միայն այն օրինաչափությունները, որոնք մենք առբերում ենք: Սա ապահովում է, որ մենք նմուշները պահում ենք մեկ նպատակով և երբեք չենք գրանցում դրանք մեր սեփական ջանքերով: Սա հատկապես կարևոր է անկայուն տվյալների համար, քանի որ ծառայությունը պետք է պահպանի որոշակի դասակարգման վիճակ՝ նախքան կանխատեսում տրամադրելը:
  2. Հիշողություն. որոշ նմուշներ կարող են ունենալ հազարավոր նիշեր: Նման տվյալների պահպանումը և դրանք համակարգի մասեր փոխանցելը անհարկի սպառում է բազմաթիվ լրացուցիչ բայթեր: Երկու գործոնները կարող են համակցվել ժամանակի ընթացքում, հաշվի առնելով, որ կան բազմաթիվ տվյալների ռեսուրսներ հազարավոր սյունակներով:
  3. Հատկությունների համախմբում. Առանձնահատկությունները հստակ ներկայացնում են յուրաքանչյուր սկանավորման արդյունքները մի շարք առանձնահատկությունների միջոցով, ինչը թույլ է տալիս համակարգին հարմար եղանակով համատեղել նույն տվյալների ռեսուրսի նախորդ սկանավորման արդյունքները: Սա կարող է օգտակար լինել տվյալների մեկ ռեսուրսից սկանավորման արդյունքները մի քանի գործարկումների ընթացքում հավաքելու համար:

Այնուհետև առանձնահատկություններն ուղարկվում են կանխատեսման ծառայություն, որտեղ մենք օգտագործում ենք կանոնների վրա հիմնված դասակարգում և մեքենայական ուսուցում՝ յուրաքանչյուր սյունակի տվյալների պիտակները կանխատեսելու համար: Ծառայությունը հիմնված է ինչպես կանոնների դասակարգիչների, այնպես էլ մեքենայական ուսուցման վրա և ընտրում է լավագույն կանխատեսումը, որը տրված է յուրաքանչյուր կանխատեսման օբյեկտից:

Կանոնների դասակարգիչները ձեռքով էվրիստիկա են, նրանք օգտագործում են հաշվարկներ և գործակիցներ՝ օբյեկտը 0-ից 100-ի միջակայքում նորմալացնելու համար: Այդ տվյալների հետ կապված յուրաքանչյուր տվյալների տեսակի և սյունակի անվան համար նման սկզբնական միավոր ստեղծելուց հետո այն չի ներառվում որևէ «արգելքի մեջ»: ցուցակներ», կանոնների դասակարգիչը ընտրում է ամենաբարձր նորմալացված միավորը բոլոր տվյալների տեսակների մեջ:

Դասակարգման բարդության պատճառով բացառապես ձեռքով էվրիստիկայի վրա հիմնվելը հանգեցնում է դասակարգման ցածր ճշգրտության, հատկապես չկառուցված տվյալների համար: Այդ պատճառով մենք մշակել ենք մեքենայական ուսուցման համակարգ՝ չկառուցված տվյալների դասակարգման հետ աշխատելու համար, ինչպիսիք են օգտատիրոջ բովանդակությունը և հասցեն: Մեքենայական ուսուցումը հնարավորություն է տվել սկսել հեռանալ ձեռքով էվրիստիկայից և կիրառել լրացուցիչ տվյալների ազդանշաններ (օրինակ՝ սյունակների անվանումները, տվյալների ծագումը)՝ զգալիորեն բարելավելով հայտնաբերման ճշգրտությունը: Մենք ավելի ուշ կխորանանք մեր մեքենայական ուսուցման ճարտարապետության մեջ:

Կանխատեսման ծառայությունը պահպանում է արդյունքները յուրաքանչյուր սյունակի համար՝ սկանավորման ժամանակի և վիճակի վերաբերյալ մետատվյալների հետ միասին: Ցանկացած սպառող և ներքևի գործընթացներ, որոնք կախված են այս տվյալներից, կարող են կարդալ դրանք ամեն օր հրապարակված տվյալների բազայից: Այս հավաքածուն միավորում է այս բոլոր սկանավորման աշխատանքների կամ իրական ժամանակի տվյալների կատալոգի API-ների արդյունքները: Հրապարակված կանխատեսումները հիմք են հանդիսանում գաղտնիության և անվտանգության քաղաքականության ավտոմատ կիրառման համար:

Վերջապես, այն բանից հետո, երբ կանխատեսման ծառայությունը գրի բոլոր տվյալները և բոլոր կանխատեսումները պահպանվեն, մեր Data Catalog API-ն կարող է իրական ժամանակում վերադարձնել ռեսուրսի բոլոր տվյալների տիպի կանխատեսումները: Ամեն օր համակարգը հրապարակում է տվյալների բազա, որը պարունակում է բոլոր վերջին կանխատեսումները յուրաքանչյուր ակտիվի համար:

Անկայուն տվյալներ

Թեև վերը նշված գործընթացը նախատեսված է կայուն ակտիվների համար, ոչ մշտական ​​երթևեկությունը նույնպես համարվում է կազմակերպության տվյալների մաս և կարող է կարևոր լինել: Այդ իսկ պատճառով, համակարգը տրամադրում է առցանց API՝ ցանկացած ընդհատվող տրաֆիկի համար իրական ժամանակում դասակարգման կանխատեսումներ ստեղծելու համար: Իրական ժամանակի կանխատեսման համակարգը լայնորեն օգտագործվում է ելքային տրաֆիկի, ներգնա տրաֆիկի դասակարգման համար մեքենայական ուսուցման մոդելների և գովազդատուների տվյալների մեջ:

Այստեղ API-ն ընդունում է երկու հիմնական փաստարկ՝ խմբավորման բանալին և չմշակված տվյալները, որոնք պետք է կանխատեսվեն: Ծառայությունն իրականացնում է նույն օբյեկտի որբերումը, ինչպես նկարագրված է վերևում և խմբավորում է օբյեկտները նույն բանալիով: Այս հատկանիշներն աջակցվում են նաև ձախողման վերականգնման համար կայուն քեշում: Խմբավորման յուրաքանչյուր բանալի համար ծառայությունը ապահովում է, որ տեսել է բավականաչափ նմուշներ՝ նախքան կանխատեսման ծառայություն կանչելը, հետևելով վերը նկարագրված գործընթացին:

Օպտիմալացում

Որոշ պահեստներ սկանավորելու համար մենք օգտագործում ենք գրադարաններ և տեխնիկա՝ օպտիմիզացնելու ընթերցումը տաք պահոցից [2] և համոզվելու, որ նույն պահեստից օգտվող այլ օգտվողների կողմից որևէ խափանում չկա:

Չափազանց մեծ աղյուսակների համար (50+ պետաբայթ), չնայած բոլոր օպտիմիզացումներին և հիշողության արդյունավետությանը, համակարգը աշխատում է ամեն ինչ սկանավորելու և հաշվարկելու համար, մինչև հիշողությունը սպառվի: Ի վերջո, սկանավորումն ամբողջությամբ հաշվարկվում է հիշողության մեջ և չի պահվում սկանավորման ընթացքում: Եթե ​​մեծ աղյուսակները պարունակում են հազարավոր սյունակներ՝ տվյալների չկառուցված զանգվածներով, ապա աշխատանքը կարող է ձախողվել հիշողության անբավարար ռեսուրսների պատճառով՝ ամբողջ աղյուսակի վրա կանխատեսումներ կատարելիս: Սա կհանգեցնի ծածկույթի կրճատմանը: Դրա դեմ պայքարելու համար մենք օպտիմիզացրել ենք համակարգը, որպեսզի օգտագործի սկանավորման արագությունը՝ որպես վստահված անձի՝ պարզելու, թե որքանով է համակարգը կառավարում ընթացիկ ծանրաբեռնվածությունը: Մենք օգտագործում ենք արագությունը որպես կանխատեսող մեխանիզմ՝ հիշողության խնդիրները տեսնելու և առանձնահատկությունների քարտեզը կանխատեսելիորեն հաշվարկելու համար: Միևնույն ժամանակ, մենք սովորականից ավելի քիչ տվյալներ ենք օգտագործում:

Տվյալների ազդանշաններ

Դասակարգման համակարգը նույնքան լավն է, որքան տվյալներից ստացվող ազդանշանները: Այստեղ մենք կանդրադառնանք դասակարգման համակարգի կողմից օգտագործվող բոլոր ազդանշաններին:

  • Բովանդակության վրա հիմնված. Իհարկե, առաջին և ամենակարևոր ազդանշանը բովանդակությունն է: Բեռնուլիի նմուշառումն իրականացվում է տվյալների յուրաքանչյուր ակտիվի վրա, որը մենք սկանավորում և արդյունահանում ենք առանձնահատկություններ՝ հիմնվելով տվյալների բովանդակության վրա: Բովանդակությունից բխում են բազմաթիվ նշաններ. Հնարավոր է ցանկացած քանակությամբ լողացող օբյեկտ, որը ներկայացնում է հաշվարկներ, թե քանի անգամ է տեսել որոշակի նմուշի տեսակը: Օրինակ՝ մենք կարող ենք ունենալ նմուշում տեսած նամակների քանակի նշաններ կամ նմուշի մեջ տեսանելի քանի զմայլիկի նշաններ: Այս առանձնահատկությունների հաշվարկները կարող են նորմալացվել և միավորվել տարբեր սկանավորման ընթացքում:
  • Տվյալների ծագումը. Կարևոր ազդանշան, որը կարող է օգնել, երբ բովանդակությունը փոխվել է մայր աղյուսակից: Ընդհանուր օրինակ է հեշացված տվյալները: Երբ երեխայի աղյուսակի տվյալները հաշված են, դրանք հաճախ գալիս են մայր աղյուսակից, որտեղ դրանք մնում են պարզ: Lineage տվյալները օգնում են դասակարգել տվյալների որոշակի տեսակներ, երբ դրանք հստակ չեն կարդացվում կամ փոխարկվում են վերին հոսքի աղյուսակից:
  • Անոտացիաներ. Մեկ այլ բարձրորակ ազդանշան, որն օգնում է բացահայտել չկառուցված տվյալները: Իրականում, ծանոթագրությունները և ծագման տվյալները կարող են աշխատել միասին՝ տարբեր տվյալների ակտիվներում ատրիբուտները տարածելու համար: Անոտացիաները օգնում են բացահայտել չկառուցված տվյալների աղբյուրը, մինչդեռ տոհմային տվյալները կարող են օգնել հետևել այդ տվյալների հոսքին ամբողջ պահեստում:
  • Տվյալների ներարկումը տեխնիկա է, որտեղ հատուկ, անընթեռնելի նիշերը դիտավորյալ ներմուծվում են հայտնի տվյալների տեսակների հայտնի աղբյուրներում: Այնուհետև, երբ մենք սկանավորում ենք բովանդակությունը նույն անընթեռնելի նիշերի հաջորդականությամբ, մենք կարող ենք եզրակացնել, որ բովանդակությունը գալիս է տվյալ տվյալների հայտնի տեսակից: Սա մեկ այլ որակական տվյալների ազդանշան է, որը նման է ծանոթագրություններին: Բացառությամբ, որ բովանդակության վրա հիմնված հայտնաբերումն օգնում է հայտնաբերել մուտքագրված տվյալները:

Չափման չափումներ

Կարևոր բաղադրիչը չափումների չափման խիստ մեթոդաբանությունն է: Դասակարգման բարելավման կրկնության հիմնական չափորոշիչները յուրաքանչյուր պիտակի ճշգրտությունն ու հետկանչումն են, որոնցից ամենակարևորը F2 միավորն է:

Այս ցուցանիշները հաշվարկելու համար անհրաժեշտ է տվյալների ակտիվների պիտակավորման անկախ մեթոդաբանություն, որը անկախ է բուն համակարգից, բայց կարող է օգտագործվել դրա հետ ուղղակի համեմատության համար: Ստորև մենք նկարագրում ենք, թե ինչպես ենք հավաքում հիմնարար ճշմարտությունը Facebook-ից և օգտագործում այն ​​մեր դասակարգման համակարգը մարզելու համար:

Հուսալի տվյալների հավաքում

Ստորև թվարկված յուրաքանչյուր աղբյուրից մենք վստահելի տվյալներ ենք կուտակում սեփական աղյուսակում: Յուրաքանչյուր աղյուսակ պատասխանատու է տվյալ աղբյուրից վերջին դիտարկված արժեքների համախմբման համար: Յուրաքանչյուր աղբյուր ունի տվյալների որակի ստուգումներ՝ համոզվելու համար, որ յուրաքանչյուր աղբյուրի համար դիտարկվող արժեքները բարձրորակ են և պարունակում են տվյալների վերջին տեսակի պիտակներ:

  • Գրանցման հարթակի կոնֆիգուրացիաներ. փեթակների աղյուսակների որոշ դաշտեր լցված են որոշակի տեսակի տվյալներով: Այս տվյալների օգտագործումը և տարածումը ծառայում է որպես ճշմարտության հուսալի աղբյուր:
  • Ձեռքով պիտակավորում. համակարգը պահպանող մշակողները, ինչպես նաև արտաքին պիտակավորողները վերապատրաստվում են սյունակները պիտակավորելու համար: Սա սովորաբար լավ է աշխատում պահեստի բոլոր տեսակի տվյալների համար և կարող է լինել ճշմարտության հիմնական աղբյուր որոշ չկառուցված տվյալների համար, ինչպիսիք են հաղորդագրության տվյալները կամ օգտվողի բովանդակությունը:
  • Ծնողների աղյուսակների սյունակները կարող են նշվել կամ նշվել որպես որոշակի տվյալներ պարունակող, և մենք կարող ենք հետևել այդ տվյալներին երեխաների աղյուսակներում:
  • Կատարման թելերի բեռնում. Facebook-ում կատարման թելերը պարունակում են հատուկ տեսակի տվյալներ: Օգտագործելով մեր սկաները որպես ծառայության ճարտարապետություն, մենք կարող ենք նմուշառել հոսքեր, որոնք ունեն տվյալների հայտնի տեսակներ և ուղարկել դրանք համակարգի միջոցով: Համակարգը խոստանում է չպահել այս տվյալները։
  • Նմուշային աղյուսակներ. Խոշոր փեթակների աղյուսակները, որոնք, ինչպես հայտնի է, պարունակում են տվյալների ամբողջ կորպուսը, կարող են օգտագործվել նաև որպես ուսումնական տվյալներ և փոխանցվել սկաների միջոցով որպես ծառայություն: Սա հիանալի է տվյալների տեսակների ամբողջական տիրույթ ունեցող աղյուսակների համար, այնպես որ սյունակի պատահական նմուշառումը համարժեք է տվյալ տվյալների տիպի ամբողջ հավաքածուի նմուշառմանը:
  • Սինթետիկ տվյալներ. մենք նույնիսկ կարող ենք օգտագործել գրադարաններ, որոնք տվյալներ են ստեղծում անմիջապես: Սա լավ է աշխատում պարզ, հանրային տվյալների տեսակների համար, ինչպիսիք են հասցեն կամ GPS-ը:
  • Տվյալների կառավարիչներ. Գաղտնիության ծրագրերը սովորաբար օգտագործում են տվյալների կառավարիչներ՝ տվյալների կտորներին քաղաքականություն ձեռքով վերագրելու համար: Սա ծառայում է որպես ճշմարտության բարձր ճշգրիտ աղբյուր:

Մենք միավորում ենք ճշմարտության բոլոր հիմնական աղբյուրը մեկ կորպուսի մեջ այդ բոլոր տվյալների հետ: Վավերականության ամենամեծ մարտահրավերը համոզվելն է, որ այն ներկայացնում է տվյալների պահեստը: Հակառակ դեպքում դասակարգման շարժիչները կարող են գերլարվել: Դրա դեմ պայքարելու համար վերը նշված բոլոր աղբյուրներն օգտագործվում են մոդելների վերապատրաստման կամ չափումների հաշվարկման ժամանակ հավասարակշռություն ապահովելու համար: Բացի այդ, մարդկային պիտակավորողները միատեսակ նմուշառում են պահեստի տարբեր սյունակներ և համապատասխան կերպով նշում են տվյալները, որպեսզի հիմնական ճշմարտության հավաքագրումը մնա անաչառ:

Շարունակական ինտեգրում

Արագ կրկնում և բարելավում ապահովելու համար կարևոր է միշտ իրական ժամանակում չափել համակարգի աշխատանքը: Մենք այսօր կարող ենք չափել դասակարգման յուրաքանչյուր բարելավում համակարգի համեմատ, այնպես որ մենք կարող ենք տակտիկապես ուղղորդել ապագա բարելավումները տվյալների հիման վրա: Այստեղ մենք նայում ենք, թե ինչպես է համակարգը լրացնում հետադարձ կապը, որը տրամադրվում է վավեր տվյալների միջոցով:

Երբ պլանավորման համակարգը հանդիպում է ակտիվի, որն ունի վստահելի աղբյուրի պիտակ, մենք պլանավորում ենք երկու առաջադրանք: Առաջինն օգտագործում է մեր արտադրական սկաները և, հետևաբար, մեր արտադրական հնարավորությունները: Երկրորդ առաջադրանքն օգտագործում է վերջին կառուցման սկաները՝ վերջին հնարավորություններով: Յուրաքանչյուր առաջադրանք գրում է իր արդյունքը իր աղյուսակում՝ նշելով տարբերակները դասակարգման արդյունքների հետ մեկտեղ:

Ահա թե ինչպես ենք իրական ժամանակում համեմատում թողարկման թեկնածուի և արտադրության մոդելի դասակարգման արդյունքները:

Մինչ տվյալների հավաքածուները համեմատում են RC և PROD հատկանիշները, կանխատեսման ծառայության ML դասակարգման շարժիչի շատ տատանումներ գրանցվում են: Ամենավերջին կառուցված մեքենայական ուսուցման մոդելը, արտադրության ներկայիս մոդելը և ցանկացած փորձնական մոդել: Նույն մոտեցումը մեզ թույլ է տալիս «կտրել» մոդելի տարբեր տարբերակներ (ագնոստիկ մեր կանոնների դասակարգիչների համար) և համեմատել չափումները իրական ժամանակում: Սա հեշտացնում է որոշել, թե երբ է ML փորձարկումը պատրաստ գնալու արտադրության:

Ամեն գիշեր, այդ օրվա համար հաշվարկված RC հատկանիշներն ուղարկվում են ML ուսումնական խողովակաշար, որտեղ մոդելը վերապատրաստվում է RC-ի վերջին հատկանիշների վրա և գնահատում է իր կատարումը գետնի ճշմարտության տվյալների հիման վրա:

Ամեն առավոտ մոդելն ավարտում է ուսուցումը և ինքնաբերաբար հրապարակվում է որպես փորձնական մոդել: Այն ավտոմատ կերպով ներառվում է փորձարարական ցանկում:

Որոշ արդյունքներ

Ավելի քան 100 տարբեր տեսակի տվյալներ պիտակավորված են բարձր ճշգրտությամբ: Լավ կառուցված տեսակները, ինչպիսիք են էլ. փոստերը և հեռախոսահամարները, դասակարգվում են 2-ից ավելի f0,95 միավորով: Անվճար տվյալների տեսակները, ինչպիսիք են օգտատերերի կողմից ստեղծված բովանդակությունը և անունը, նույնպես շատ լավ են գործում՝ F2 միավորները գերազանցում են 0,85-ը:

Մշտական ​​և անկայուն տվյալների մեծ թվով առանձին սյունակներ ամեն օր դասակարգվում են բոլոր պահեստներում: Ավելի քան 500 տերաբայթ ամեն օր սկանավորվում է ավելի քան 10 տվյալների պահեստներում: Այս պահոցների մեծ մասն ունի ավելի քան 98% ծածկույթ:

Ժամանակի ընթացքում դասակարգումը դարձել է շատ արդյունավետ, քանի որ դասակարգման աշխատանքները շարունակական անցանց հոսքում տևում են միջինը 35 վայրկյան՝ ակտիվի սկանավորումից մինչև յուրաքանչյուր սյունակի համար կանխատեսումների հաշվարկը:

Անվտանգության և գաղտնիության համար տվյալների մասշտաբային դասակարգում
Բրինձ. 2. Դիագրամ, որը նկարագրում է շարունակական ինտեգրման հոսքը՝ հասկանալու համար, թե ինչպես են RC օբյեկտները ստեղծվում և ուղարկվում մոդելին:

Անվտանգության և գաղտնիության համար տվյալների մասշտաբային դասակարգում
Նկար 3. Մեքենայի ուսուցման բաղադրիչի բարձր մակարդակի դիագրամ:

Մեքենայի ուսուցման համակարգի բաղադրիչ

Նախորդ բաժնում մենք խորապես ուսումնասիրեցինք համակարգի ընդհանուր ճարտարապետությունը՝ ընդգծելով մասշտաբը, օպտիմալացումը և անցանց և առցանց տվյալների հոսքերը: Այս բաժնում մենք կանդրադառնանք կանխատեսման ծառայությանը և նկարագրելու ենք մեքենայական ուսուցման համակարգը, որն ապահովում է կանխատեսման ծառայությունը:

Ավելի քան 100 տվյալների տեսակների և որոշ չկառուցված բովանդակության դեպքում, ինչպիսիք են հաղորդագրության տվյալները և օգտագործողի բովանդակությունը, զուտ ձեռքով էվրիստիկայի օգտագործումը հանգեցնում է ենթապարամետրային դասակարգման ճշգրտության, հատկապես չկառուցված տվյալների համար: Այդ պատճառով մենք նաև մշակել ենք մեքենայական ուսուցման համակարգ՝ չկառուցված տվյալների բարդությունների դեմ պայքարելու համար: Մեքենայական ուսուցման օգտագործումը թույլ է տալիս սկսել հեռանալ ձեռքով էվրիստիկայից և աշխատել գործառույթների և տվյալների լրացուցիչ ազդանշանների հետ (օրինակ՝ սյունակների անունները, տվյալների ծագումը)՝ բարելավելու ճշգրտությունը:

Իրականացված մոդելը առանձին ուսումնասիրում է վեկտորային ներկայացումները [3] խիտ և նոսր օբյեկտների վրա։ Այնուհետև դրանք միավորվում են՝ ձևավորելով վեկտոր, որն անցնում է մի շարք խմբաքանակի նորմալացման [4] և ոչ գծային քայլերով՝ վերջնական արդյունք ստանալու համար: Վերջնական արդյունքը յուրաքանչյուր պիտակի համար [0-1]-ի միջև լողացող կետի թիվ է, որը ցույց է տալիս հավանականությունը, որ օրինակը պատկանում է զգայունության այդ տեսակին: Մոդելի համար PyTorch-ի օգտագործումը թույլ տվեց մեզ ավելի արագ շարժվել՝ թիմից դուրս գտնվող մշակողներին թույլ տալով արագ կատարել և փորձարկել փոփոխությունները:

Ճարտարապետությունը նախագծելիս կարևոր էր նոսր (օրինակ՝ տեքստ) և խիտ (օրինակ՝ թվային) առարկաները մոդելավորել առանձին՝ նրանց բնորոշ տարբերությունների պատճառով: Վերջնական ճարտարապետության համար կարևոր էր նաև պարամետրերի մաքրում կատարելը, որպեսզի գտնեք ուսուցման արագության, խմբաքանակի չափի և այլ հիպերպարամետրերի օպտիմալ արժեքը: Կարևոր հիպերպարամետր էր նաև օպտիմիզատորի ընտրությունը։ Մենք գտանք, որ հայտնի օպտիմիզատոր է Adamհաճախ հանգեցնում է չափից ավելի հարմարեցման, մինչդեռ մոդելը հետ SGD ավելի կայուն: Կային լրացուցիչ նրբերանգներ, որոնք պետք է ուղղակիորեն ներառեինք մոդելի մեջ։ Օրինակ՝ ստատիկ կանոններ, որոնք ապահովում էին մոդելի դետերմինիստական ​​կանխատեսումը, երբ հատկանիշն ունի որոշակի արժեք։ Այս ստատիկ կանոնները սահմանվում են մեր հաճախորդների կողմից: Մենք պարզեցինք, որ դրանք ուղղակիորեն մոդելի մեջ ներառելը հանգեցրեց ավելի ինքնամփոփ և ամուր ճարտարապետության՝ ի տարբերություն այս հատուկ եզրային դեպքերը կարգավորելու հետմշակման քայլի իրականացմանը: Նաև նկատի ունեցեք, որ այս կանոններն անջատված են մարզումների ժամանակ, որպեսզի չխանգարեն գրադիենտ վայրէջքի վերապատրաստման գործընթացին:

Problems

Մարտահրավերներից մեկը բարձրորակ, հավաստի տվյալների հավաքագրումն էր։ Մոդելը վստահության կարիք ունի յուրաքանչյուր դասի համար, որպեսզի այն կարողանա սովորել առարկաների և պիտակների միջև կապերը: Նախորդ բաժնում մենք քննարկեցինք տվյալների հավաքագրման մեթոդները և՛ համակարգի չափման, և՛ մոդելային ուսուցման համար: Վերլուծությունը ցույց տվեց, որ տվյալների դասերը, ինչպիսիք են վարկային քարտերի և բանկային հաշիվների համարները, այնքան էլ տարածված չեն մեր պահեստում: Սա դժվարացնում է մոդելների պատրաստման համար մեծ քանակությամբ հուսալի տվյալների հավաքագրումը: Այս խնդիրը լուծելու համար մենք մշակել ենք այս դասերի համար սինթետիկ հիմքային ճշմարտության տվյալներ ստանալու գործընթացներ: Մենք ստեղծում ենք նման տվյալներ զգայուն տեսակների համար, ներառյալ SSN, վարկային քարտերի համարները и IBAN- ը- թվեր, որոնց համար մոդելը նախկինում չէր կարող կանխատեսել: Այս մոտեցումը թույլ է տալիս մշակել զգայուն տվյալների տեսակները՝ առանց իրական զգայուն տվյալների թաքցման հետ կապված գաղտնիության ռիսկերի:

Բացի վերգետնյա ճշմարտության խնդիրներից, կան բաց ճարտարապետական ​​խնդիրներ, որոնց վրա մենք աշխատում ենք, օրինակ փոխել մեկուսացումը и վաղ կանգառ. Փոփոխության մեկուսացումը կարևոր է ապահովելու համար, որ երբ ցանցի տարբեր մասերում տարբեր փոփոխություններ են կատարվում, ազդեցությունը մեկուսացված է որոշակի դասերի վրա և լայն ազդեցություն չի ունենում ընդհանուր կանխատեսման կատարողականի վրա: Վաղ դադարեցման չափանիշների բարելավումը նույնպես կարևոր է, որպեսզի մենք կարողանանք դադարեցնել վերապատրաստման գործընթացը կայուն կետում բոլոր դասերի համար, այլ ոչ թե մի կետում, որտեղ որոշ դասեր գերբեռնում են, իսկ մյուսները՝ ոչ:

Առանձնահատկությունների կարևորությունը

Երբ մոդելի մեջ ներդրվում է նոր առանձնահատկություն, մենք ցանկանում ենք իմանալ դրա ընդհանուր ազդեցությունը մոդելի վրա: Մենք նաև ցանկանում ենք համոզվել, որ կանխատեսումները մարդկային մեկնաբանելի են, որպեսզի կարողանանք հստակ հասկանալ, թե ինչ հատկանիշներ են օգտագործվում յուրաքանչյուր տեսակի տվյալների համար: Այդ նպատակով մենք մշակել և ներդրել ենք ըստ դասարանի գործառույթների կարևորությունը PyTorch մոդելի համար: Նկատի ունեցեք, որ սա տարբերվում է ընդհանուր հատկանիշի կարևորությունից, որը սովորաբար աջակցվում է, քանի որ այն մեզ չի ասում, թե որ հատկանիշներն են կարևոր որոշակի դասի համար: Մենք չափում ենք օբյեկտի կարևորությունը՝ հաշվարկելով օբյեկտի վերադասավորումից հետո կանխատեսման սխալի աճը։ Հատկանիշը «կարևոր է», երբ արժեքների փոխանակումը մեծացնում է մոդելի սխալը, քանի որ այս դեպքում մոդելը հենվում էր հատկանիշի վրա՝ իր կանխատեսումը կատարելու համար: Հատկանիշը «կարևոր չէ», երբ դրա արժեքները խառնելով մոդելի սխալը թողնում է անփոփոխ, քանի որ այս դեպքում մոդելն անտեսել է այն [5]:

Յուրաքանչյուր դասի համար հատկանիշի կարևորությունը մեզ թույլ է տալիս մոդելը դարձնել մեկնաբանելի, որպեսզի կարողանանք տեսնել, թե ինչ է նայում մոդելը պիտակը կանխատեսելիս: Օրինակ, երբ վերլուծում ենք ADDR, ապա երաշխավորում ենք, որ հասցեի հետ կապված նշանը, ինչպես, օրինակ Հասցեների գծերի քանակը, յուրաքանչյուր դասի համար հատկանիշի կարևորության աղյուսակում բարձր տեղ է զբաղեցնում, որպեսզի մեր մարդկային ինտուիցիան լավ համընկնի մոդելի սովորածի հետ:

Գնահատում

Հաջողության համար կարևոր է մեկ չափանիշ սահմանել: Մենք ընտրեցինք F2 - հավասարակշռությունը հիշողության և ճշգրտության միջև (հետկանչի կողմնակալությունը մի փոքր ավելի մեծ է): Հետկանչումն ավելի կարևոր է գաղտնիության օգտագործման դեպքում, քան ճշգրտությունը, քանի որ թիմի համար կարևոր է բաց չթողնել որևէ զգայուն տվյալ (միաժամանակ ապահովելով ողջամիտ ճշգրտություն): Մեր մոդելի F2 կատարողականի իրական գնահատումը դուրս է այս փաստաթղթի շրջանակներից: Այնուամենայնիվ, զգույշ կարգավորմամբ մենք կարող ենք հասնել բարձր (0,9+) F2 միավորների ամենակարևոր զգայուն դասերի համար:

Հարակից աշխատանք

Կան բազմաթիվ ալգորիթմներ՝ չկառուցված փաստաթղթերի ավտոմատ դասակարգման համար՝ օգտագործելով տարբեր մեթոդներ, ինչպիսիք են օրինակների համընկնումը, փաստաթղթերի նմանության որոնումը և մեքենայական ուսուցման տարբեր մեթոդներ (Bayesian, որոշումների ծառեր, k-մոտ հարևաններ և շատ ուրիշներ) [6]: Սրանցից որևէ մեկը կարող է օգտագործվել որպես դասակարգման մաս: Այնուամենայնիվ, խնդիրը մասշտաբայնությունն է: Այս հոդվածում դասակարգման մոտեցումը կողմնակալ է ճկունության և կատարողականի նկատմամբ: Սա մեզ թույլ է տալիս ապագայում աջակցել նոր դասերին և պահպանել ցածր ուշացում:

Մեծ աշխատանք կա նաև տվյալների մատնահետքերի վրա։ Օրինակ, հեղինակները [7]-ում նկարագրել են լուծում, որը կենտրոնանում է զգայուն տվյալների արտահոսքի հայտնաբերման խնդրի վրա: Հիմնական ենթադրությունն այն է, որ տվյալները կարող են մատնահետք վերցնել՝ դրանք համապատասխանեցնելու հայտնի զգայուն տվյալների մի շարքին: Հեղինակները [8]-ում նկարագրում են գաղտնիության արտահոսքի նմանատիպ խնդիր, սակայն դրանց լուծումը հիմնված է Android-ի հատուկ ճարտարապետության վրա և դասակարգվում է միայն այն դեպքում, եթե օգտատիրոջ գործողությունները հանգեցնում են անձնական տեղեկատվության փոխանակման կամ հիմքում ընկած հավելվածի կողմից օգտատիրոջ տվյալների արտահոսքի: Իրավիճակն այստեղ փոքր-ինչ այլ է, քանի որ օգտատիրոջ տվյալները կարող են նաև խիստ չկառուցված լինել: Հետեւաբար, մեզ ավելի բարդ տեխնիկա է պետք, քան մատնահետքերը:

Վերջապես, որոշ զգայուն տվյալների համար տվյալների պակասը հաղթահարելու համար մենք ներկայացրեցինք սինթետիկ տվյալներ: Տվյալների ավելացման վերաբերյալ մեծ գրականություն կա, օրինակ, [9] հեղինակները ուսումնասիրել են թրեյնինգի ընթացքում աղմուկի ներարկման դերը և դրական արդյունքներ են նկատել վերահսկվող ուսուցման մեջ: Գաղտնիության նկատմամբ մեր մոտեցումը տարբեր է, քանի որ աղմկոտ տվյալների ներմուծումը կարող է հակաարդյունավետ լինել, և փոխարենը մենք կենտրոնանում ենք բարձրորակ սինթետիկ տվյալների վրա:

Ամփոփում

Այս հոդվածում մենք ներկայացրել ենք մի համակարգ, որը կարող է դասակարգել տվյալների մի մասը: Սա թույլ է տալիս մեզ ստեղծել համակարգեր՝ գաղտնիության և անվտանգության քաղաքականության կիրառման համար: Մենք ցույց ենք տվել, որ լայնածավալ ենթակառուցվածքը, շարունակական ինտեգրումը, մեքենայական ուսուցումը և տվյալների բարձր որակի ապահովումը առանցքային դեր են խաղում գաղտնիության պահպանման մեր բազմաթիվ նախաձեռնությունների հաջողության մեջ:

Հետագա աշխատանքի համար շատ ուղղություններ կան։ Սա կարող է ներառել ոչ սխեմատիկ տվյալների (ֆայլերի) աջակցություն, դասակարգել ոչ միայն տվյալների տիպը, այլև զգայունության մակարդակը, ինչպես նաև ուսուցման ընթացքում ինքնուրույն վերահսկվող ուսուցման օգտագործումը՝ ճշգրիտ սինթետիկ օրինակներ ստեղծելով: Ինչն իր հերթին կօգնի մոդելին առավելագույն չափով նվազեցնել կորուստները։ Հետագա աշխատանքը կարող է կենտրոնանալ նաև հետաքննության աշխատանքային գործընթացի վրա, որտեղ մենք դուրս ենք գալիս հայտնաբերման սահմաններից և տրամադրում ենք գաղտնիության տարբեր խախտումների հիմնական պատճառների վերլուծություն: Սա կօգնի այնպիսի դեպքերում, ինչպիսիք են զգայունության վերլուծությունը (այսինքն՝ տվյալների տեսակի գաղտնիության զգայունությունը բարձր է (օրինակ՝ օգտատիրոջ IP) կամ ցածր (օրինակ՝ Facebook-ի ներքին IP)):

Մատենագիտություն

  1. Դեյվիդ Բեն-Դավիթ, Թամար Դոմանի և Աբիգեյլ Թարեմ: Ձեռնարկությունների տվյալների դասակարգում` օգտագործելով իմաստային վեբ տեխնոլոգիաներ: Peter F.Ï Patel-Schneider, Yue Pan, Pascal Hitzler, Peter Mika, Lei Zhang, Jeff Z. Pan, Ian Horrocks և Birte Glimm, խմբագիրներ, Իմաստային վեբ – ISWC 2010, էջ 66–81, Berlin, Heidelberg, 2010. Springer Berlin Heidelberg.
  2. Սուբրամանյան Մուրալիդար, Ուայաթ Լլոյդ, Սաբյասաչի Ռոյ, Կորի Հիլ, Էռնեստ Լին, Վեյվեն Լյու, Սատադրու Պան, Շիվա Շանկար, Վիշվանաթ Սիվակումար, Լինպենգ Թանգ և Սանջև Կումար: f4. Facebook-ի ջերմ BLOB պահեստավորման համակարգը: Մեջ Օպերացիոն համակարգերի նախագծման և ներդրման USENIX 11-րդ սիմպոզիում (OSDI 14), էջեր 383–398, Broomfield, CO, October 2014. USENIX Association.
  3. Թոմաս Միկոլով, Իլյա Սուցկվեր, Կայ Չեն, Գրեգ Ս Կորադո և Ջեֆ Դին: Բառերի և բառակապակցությունների բաշխված պատկերացումները և դրանց կազմությունը: C. J. C. Burges-ում, L. Bottou, M. Welling, Z. Ghahramani և K. Q. Weinberger, խմբագիրներ, Նյարդային տեղեկատվության մշակման համակարգերում առաջընթաց 26, էջ 3111–3119։ Curran Associates, Inc., 2013 թ.
  4. Սերգեյ Իոֆե և Քրիստիան Սեգեդի. Խմբաքանակի նորմալացում. Խորը ցանցի ուսուցման արագացում՝ նվազեցնելով ներքին կովարիատիվ տեղաշարժը: Ֆրենսիս Բախում և Դեյվիդ Բլայում, խմբագիրներ, Մեքենայի ուսուցման 32-րդ միջազգային գիտաժողովի նյութեր, հատոր 37 Մեքենայի ուսուցման հետազոտության նյութեր, էջեր 448–456, Lille, France, 07–09 Jul 2015 PMLR.
  5. Լեո Բրեյման. Պատահական անտառներ. Մախ. Սովորեք., 45 (1): 5–32, Հոկտեմբեր 2001:
  6. Թայր Նու Ֆյու. Դասակարգման տեխնիկայի հետազոտություն տվյալների արդյունահանման մեջ:
  7. X. Shu, D. Yao և E. Bertino: Գաղտնիության պահպանմամբ զգայուն տվյալների բացահայտում: IEEE գործարքներ տեղեկատվական դատաբժշկական փորձաքննության և անվտանգության վերաբերյալ, 10(5):1092–1103, 2015.
  8. Չժեմին Յանգ, Մին Յանգ, Յուան Չժան, Գուոֆեյ Գու, Պեն Նինգ և Սյաոյանգ Վանգ: Appintent. Անդրոիդում զգայուն տվյալների փոխանցման վերլուծություն՝ գաղտնիության արտահոսքի հայտնաբերման համար: էջեր 1043–1054, 11 2013 թ.
  9. Qizhe Xie, Zihang Dai, Eduard H. Hovy, Minh-Thang Luong և Quoc V. Le. Չվերահսկվող տվյալների ավելացում:

Անվտանգության և գաղտնիության համար տվյալների մասշտաբային դասակարգում
Պարզեք մանրամասները, թե ինչպես կարելի է զրոյից կամ Level Up՝ հմտությունների և աշխատավարձի առումով պահանջված մասնագիտություն ստանալ՝ անցնելով SkillFactory առցանց դասընթացներ.

Ավելի շատ դասընթացներ

Source: www.habr.com

Добавить комментарий