Învățarea adversară a mașinilor

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

Învățarea automată contradictorie (contradictorie automată) Învățarea este o serie de tehnici menite să compromită buna funcționare a unui sistem informatic care utilizează algoritmi de învățare automată , prin construirea intrărilor speciale capabile să păcălească astfel de algoritmi [1] : mai precis, scopul acestor tehnici este de a provoca clasificarea greșită într-unul dintre acești algoritmi. Mai mult, în cazul specific al învățării supravegheate , este posibil să se construiască intrări speciale capabile să scurgă informații despre setul de instruire utilizat sau să permită clonarea modelului însuși [2] .

Mod atac

Cele trei moduri de atac cele mai frecvente sunt cele de otrăvire, ofuscare și extracție model.

Otrăvire

Scopul unui atac otrăvitor este de a reduce precizia unui model dat cât mai mult posibil pentru toate intrările posibile [3] . Variante ale acestui tip de atac există pentru diferite modele, atât în ​​cazul „ învățării supravegheate [3] [4] [5] că ceea ce nesupravegheat [6] [7] : în primul caz, otrăvirea modelului are loc în timpul fazei de instruire a algoritmului. Din punct de vedere al securității cibernetice , otrăvirea face parte dintr-o clasă de atacuri definite ca negarea serviciului .

Exemplu: grupare

În cazul specific al grupării , scopul unui atac contradictoriu este de a maximiza distanța (definită printr-o măsură adecvată) între clustere care ar fi obținută prin partiționarea unui set de date folosind un algoritm specific de grupare și cele care ar fi produse în schimb prin rularea aceluiași algoritm pe un set de date , obținut din uniunea dintre Și , unde este este setul de intrări rău intenționate introduse de atacator. Prin urmare, scopul este de a rezolva următoarea problemă de optimizare:

unde este este măsura distanței inter-cluster adoptată, este setul de clustere obținut pe setul de date original și este definit ca , unde este este funcția de grupare aleasă și căreia i se aplică proiecția , care restricționează ieșirea în cluster doar la eșantioanele originale aparținând . Proiecția este necesară deoarece scopul atacului este de a agrava gruparea pentru intrări legitime [6] .

Ofuscare - Ofuscare sau evaziune

Scopul unui atac de ofuscare (aka evaziune ) este de a încălca integritatea unui model de învățare automată. În timpul unui atac de ofuscare, atacatorul modifică un anumit eșantion cu scopul de a obține ca rezultat din clasificator o clasă diferită de clasa sa reală de apartenență; alternativ, atacul ar putea încerca mai simplu să scadă încrederea modelului pentru eșantionul respectiv [8] . Mai formal, putem descrie un atac de ofuscare ca fiind următoarea problemă de optimizare:

Sf

unde este este un vector care conține perturbarea care trebuie adăugată probei , este funcția aproximativă a algoritmului și este clasa țintă pe care vrea atacatorul să o obțină .

Exemplu: rețele neuronale artificiale

În cazul specific al rețelelor neuronale artificiale , o metodă de calcul începând de la eșantion este de a exploata matricea iacobiană a . Poate fi folosit pentru a construi o hartă de evidență , adică o hartă care include caracteristicile care trebuie integrate în perturbația exprimată prin vector , pentru ca o anumită ieșire să fie reprodusă de . În cele din urmă, după generarea acestor hărți, trebuie făcute modificările corespunzătoare sau la reprezentarea sa vectorială [8] [9] .

Extragerea modelului - Extragerea modelului

Ultima clasă de atacuri este cea a extragerii modelului (cunoscută și sub numele de furtul modelelor ). În timp ce otrăvirea și ofuscarea se încadrează în categoriile de atacuri care încălcau, respectiv, funcționarea generală a unui model și integritatea unui model pentru anumite intrări, în cazul extragerii modelului, pe de altă parte, este considerată o încălcare a confidențialitate . Astfel de atacuri pot fi folosite atât pentru a clona un anumit model [2] (care ar putea fi protejat prin drepturi de autor ), cât și pentru a deduce informații private sau sensibile despre setul de date utilizat în timpul instruirii sale [10] [11] [12] [13] [14 ] . ] .

Exemplu: clonarea unui model

Este posibil să clonați un model de învățare automată dat (de exemplu, un model de procesare a limbajului natural ) folosind un număr finit de interogări pentru modelul însuși [15] [16] . Ideea este de a profita de rezultatele primite de la modelul original pentru a antrena un model de clonă. Mai mult, în unele cazuri este posibilă și utilizarea interogărilor generate aleatoriu [2] .

Modelarea amenințărilor - Modelarea amenințărilor

În paralel cu alte probleme de securitate IT, chiar și în cazul învățării automate contradictorii, este important să se definească un model de amenințare . Modelarea amenințărilor este un proces prin care încercăm să identificăm și să cuantificăm vulnerabilitățile și potențialele amenințări cu care s-ar putea confrunta un sistem informatic [17] . În cazul specific al învățării automate contradictorii, suntem interesați de tipul de cunoștințe pe care un atacator îl are asupra modelului și de abilitățile de control și manipulare pe care le poate exercita asupra modelului și a seturilor de date pe care acesta din urmă funcționează.

În ceea ce privește cunoștințele atacatorului despre un model dat, acesta poate fi împărțit în următoarele categorii [6] :

  • cunoașterea setului de date (în cazul învățării supravegheate, setul de date este cel utilizat pentru instruire);
  • cunoașterea algoritmului;
  • cunoașterea setului de caracteristici ( spațiul caracteristicilor );
  • cunoașterea parametrilor externi care ar putea fi utilizați pentru a configura algoritmul;
  • cunoașterea totală a modelului.

În ceea ce privește abilitățile adversarului, acestea pot fi clasificate ca fiind cauzale sau exploratorii , în cazul învățării supravegheate [18] [19] , sau numai ca cauzative în cazul învățării nesupravegheate [6] :

  • capacitatea cauzală înseamnă, în cazul învățării supravegheate, posibilitatea de a influența atât setul de date utilizat pentru instruire, cât și cel utilizat pentru test, în timp ce, în cazul învățării nesupravegheate (de exemplu, gruparea), înseamnă capacitatea de a influența sau modifica setul de date unic;
  • prin abilități exploratorii înțelegem posibilitatea atacatorului de a descoperi informații suplimentare despre modelul atacat manipulând doar setul de date de testare.

În cele din urmă, atacatorul poate fi limitat la numărul maxim de modificări pe care le poate face intrărilor. Motivul acestei alte limitări constă în faptul că modificări excesive ar putea altera sau distorsiona excesiv intrarea: acest lucru este valabil mai ales în cazul atacurilor de ofuscare, în care un atacator dorește să ofenseze o anumită intrare în așa fel încât să fie etichetat de model ca aparținând unei alte clase, dar fără ca acesta să fie de fapt transformat într-un membru al acelei clase. Luați în considerare, de exemplu, un atacator care intenționează să modifice un malware pentru a se asigura că este capabil să se sustragă unui clasificator: obiectivul atacatorului este, în acest caz, de a face programul rău intenționat să apară ca „legal” pentru ochi. , cu toate acestea, păstrând funcționalitatea sa originală (rău intenționată); atacatorul va fi, prin urmare, limitat în numărul și tipul de modificări pe care le poate face programului.

Apărări

Au fost propuse mai multe mecanisme de apărare împotriva atacurilor contradictorii. Cu toate acestea, este important să ne amintim că, la fel ca în toate celelalte contexte de aplicații de securitate IT, chiar și în procesul de învățare contradictorie, mecanismele de apărare vor trebui actualizate pentru a contracara cele mai recente atacuri dezvoltate împotriva lor, în ceea ce este definit în jargon ca „ cursa înarmărilor ".

„Cursa armamentelor” dintre dezvoltatorii de apărare și atacatori.

Unele strategii de apărare depind de modelul și tipul de învățare. De exemplu, în cazul antrenamentului supravegheat, una dintre cele mai cunoscute metode de combatere a atacurilor de ofuscare este cea a antrenamentului adversar [20] . Acesta constă în re-instruirea modelului prin includerea unor eșantioane malefice, cărora le este asociată clasa corectă. În acest fel, modelul va învăța să asocieze eșantionul la clasa sa reală, în ciuda perturbărilor aplicate acestuia. Această tehnică poate fi eficientă în multe cazuri și nu necesită modificări speciale ale modelului. Cu toate acestea, este necesar să se calibreze cantitatea totală de eșantioane contradictorii, întrucât un număr prea mic ar putea avea ca rezultat un model care nu este foarte rezistent la atac, în timp ce un număr prea mare ar putea provoca modelarea excesivă a acelui set de date specific [21] . O altă strategie propusă în literatură este cea a distilării, o tehnică care a fost inițial dezvoltată cu scopul de a genera o rețea neuronală artificială profundă pornind de la una mai mare [22] . În cazul de utilizare original, acest lucru a fost făcut cu scopul de a obține o rețea neuronală mai puțin costisitoare, deoarece este mai mică. Această strategie a fost aplicată ulterior în contextul învățării automate contradictorii. Intuiția este că, prin scăderea dimensiunii sale, rețeaua neuronală obținută este capabilă să generalizeze mai bine cunoștințele învățate de la cea mai mare și, prin urmare, este mai rezistentă la perturbații [23] .

Alte metode cunoscute includ:

  • sisteme de clasificare care combină mai multe modele împreună [24] [25] ;
  • algoritmi de învățare care permit păstrarea confidențialității datelor utilizate (de exemplu, prin utilizarea tehnicilor de confidențialitate diferențiale [26] [27] );
  • algoritmi de învățare inteligenți capabili să anticipeze mișcările unui atacator [28] ;

La acestea se adaugă metode nespecifice precum igienizarea intrărilor [29] sau detectarea automată a ușilor din spate [30] .

Impact

În ultimele decenii, tehnicile de învățare automată au fost utilizate în diferite domenii de aplicare, de la științele naturii la inginerie, de la dezvoltarea agenților inteligenți la medicină [31] . Cu toate acestea, introducerea lor în probleme tipice de securitate IT (de exemplu, identificarea e-mailurilor care conțin phishing [32] ) a ridicat unele probleme cu privire la securitatea sau fiabilitatea lor în contexte extrem de contradictorii . Acestea din urmă nu includ doar aplicații clasice de securitate cibernetică, ci și zone emergente în care securitatea este foarte importantă, de exemplu cea a vehiculelor automate [33] .

Un exemplu practic: analiza malware-ului

Una dintre cele mai promițătoare aplicații ale învățării automate este cea a analizei automate a malware-ului . În special, mai multe lucrări au aplicat algoritmi de grupare pentru a determina automat familia căreia îi aparțin probele [34] [35] [36] . Cu toate acestea, întrucât analiza malware-ului este o activitate cu o puternică componentă adversară, orice sistem automat de învățare trebuie să ia în considerare în mod necesar potențialele atacuri contradictorii. De fapt, s-a demonstrat cum inserarea câtorva eșantioane în setul de date (care ar putea fi colectate din greșeală de un pot de miere ) poate compromite rezultatul întregului proces de grupare [7] .

Elemente conexe

Notă

  1. ^ (EN) Alexey Kurakin, Ian J. Goodfellow și Samy Bengio, Adversarial Machine Learning at Scale , 3 noiembrie 2016. Accesat la 14 iunie 2021.
  2. ^ a b c Kalpesh Krishna, Gaurav Singh Tomar și Ankur P. Parikh, Thieves on Sesame Street! Extragerea modelului de API-uri bazate pe BERT , în arXiv: 1910.12366 [cs] , 12 octombrie 2020. Adus 15 iunie 2021 .
  3. ^ a b Battista Biggio, Blaine Nelson și Pavel Laskov, Poisoning Attacks against Support Vector Machines , în arXiv: 1206.6389 [cs, stat] , 25 martie 2013. Accesat la 15 iunie 2021 .
  4. ^ Benjamin IP Rubinstein, Blaine Nelson și Ling Huang, ANTIDOT: înțelegerea și apărarea împotriva otrăvirii detectoarelor de anomalii , în Proceedings of the 9th ACM SIGCOMM conference on Internet treatment , Association for Computing Machinery, 4 noiembrie 2009, pp. 1-14, DOI : 10.1145 / 1644893.1644895 . Adus la 15 iunie 2021 .
  5. ^ Shike Mei și Xiaojin Zhu, Utilizarea predării automate pentru a identifica atacurile optime stabilite de formare asupra cursanților de mașini , în Proceedings of the Twenty-Ninth AAAI Conference on Artificial Intelligence , AAAI Press, 25 ianuarie 2015, pp. 2871–2877, DOI : 10.5555 / 2886521.2886721 . Adus la 15 iunie 2021 .
  6. ^ a b c d Battista Biggio, Ignazio Pillai și Samuel Rota Bulò, Este sigură gruparea datelor în setările contradictorii? , în Proceedings of the 2013 ACM workshop on Artificial intelligence and security , Association for Computing Machinery, 4 noiembrie 2013, pp. 87–98, DOI : 10.1145 / 2517312.2517321 . Adus la 15 iunie 2021 .
  7. ^ a b Battista Biggio, Konrad Rieck și Davide Ariu, Poisoning comportamental malware clustering , în Proceedings of the 2014 Workshop on Artificial Intelligent and Security Workshop , Association for Computing Machinery, 7 noiembrie 2014, pp. 27-36, DOI : 10.1145 / 2666652.2666666 . Adus la 15 iunie 2021 .
  8. ^ a b Nicolas Papernot, Patrick McDaniel și Somesh Jha, The Limitations of Deep Learning in Adversarial Settings , în arXiv: 1511.07528 [cs, stat] , 23 noiembrie 2015. Accesat la 15 iunie 2021 .
  9. ^ (EN) Kathrin Grosse, Nicolas Papernot și Praveen Manoharan, Exemple adversare pentru detectarea malware-ului în securitatea computerelor - ESORICS 2017, Springer International Publishing, 2017, pp. 62–79, DOI : 10.1007 / 978-3-319-66399-9_4 . Adus la 16 iunie 2021 .
  10. ^ Samuel Yeom, Irene Giacomelli și Matt Fredrikson, Privacy Risk in Machine Learning: Analizing the Connection to Overfitting , în arXiv: 1709.01604 [cs, stat] , 4 mai 2018. Adus 16 iunie 2021 .
  11. ^ Reza Shokri, Marco Stronati și Congzheng Song, Membership Inference Attacks against Machine Learning Models , în arXiv: 1610.05820 [cs, stat] , 31 martie 2017. Adus 16 iunie 2021 .
  12. ^ Xi Wu, Matthew Fredrikson și Somesh Jha, A Methodology for Formalizing Model-Inversion Attacks , în 2016 IEEE 29th Computer Security Foundations Symposium (CSF) , 2016-06, pp. 355-370, DOI : 10.1109 / CSF.2016.32 . Adus la 16 iunie 2021 .
  13. ^ Matt Fredrikson, Somesh Jha și Thomas Ristenpart, Model Inversion Attacks that Exploit Information Confidence Information and Basic Countermeasures , în Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security , Association for Computing Machines , 12 octombrie 2015, pp. 1322–1333, DOI : 10.1145 / 2810103.2813677 . Adus la 16 iunie 2021 .
  14. ^ Giuseppe Ateniese, Giovanni Felici și Luigi V. Mancini, Hacking Smart Machines with Smarter Ones: How to Extract Data Meanful from Machine Learning Classifiers , în arXiv: 1306.4447 [cs, stat] , 19 iunie 2013. Accesat 16 iunie 2021 .
  15. ^ Florian Tramèr, Fan Zhang și Ari Juels, Stealing Machine Learning Models via Prediction APIs , în arXiv: 1609.02943 [cs, stat] , 2 octombrie 2016. Accesat la 16 iunie 2021 .
  16. ^ Tribhuvanesh Orekondy, Bernt Schiele și Mario Fritz, Knockoff Nets: Stealing Functionality of Black-Box Models , în arXiv: 1812.02766 [cs] , 6 decembrie 2018. Accesat 16 iunie 2021 .
  17. ^ (EN) Josh Fruhlinger, Modificarea amenințării explicată: un proces de anticipare a atacurilor cibernetice asupra CSO Online, 15 aprilie 2020. Accesat la 16 iunie 2021.
  18. ^ Ling Huang, Anthony D. Joseph și Blaine Nelson, Adversarial machine learning , în Proceedings of the 4th ACM workshop on Security and artificial intelligence , Association for Computing Machinery, 21 octombrie 2011, pp. 43–58, DOI : 10.1145 / 2046684.2046692 . Adus la 16 iunie 2021 .
  19. ^ Battista Biggio, Giorgio Fumera și Fabio Roli, Evaluarea securității clasificatorilor de tipare sub atac , în IEEE Transactions on Knowledge and Data Engineering , vol. 26, n. 4, 2014-04, pp. 984–996, DOI : 10.1109 / TKDE.2013.57 . Adus la 16 iunie 2021 .
  20. ^ Ian J. Goodfellow, Jonathon Shlens și Christian Szegedy, Explicarea și valorificarea exemplelor adversare , în arXiv: 1412.6572 [cs, stat] , 20 martie 2015. Accesat la 17 iunie 2021 .
  21. ^ Kathrin Grosse, Nicolas Papernot și Praveen Manoharan, Perturbări adversare împotriva rețelelor neuronale profunde pentru clasificarea malware-ului , în arXiv: 1606.04435 [cs] , 16 iunie 2016. Adus 17 iunie 2021 .
  22. ^ Geoffrey Hinton, Oriol Vinyals și Jeff Dean, Distilling the Knowledge in a Neural Network , în arXiv: 1503.02531 [cs, stat] , 9 martie 2015. Accesat la 17 iunie 2021 .
  23. ^ Nicolas Papernot, Patrick McDaniel și Xi Wu, Distillation as a Defense to Adversarial Perturbations against Deep Neural Networks , în arXiv: 1511.04508 [cs, stat] , 14 martie 2016. Accesat la 17 iunie 2021 .
  24. ^ Battista Biggio, Giorgio Fumera și Fabio Roli, Sisteme de clasificare multiplă pentru proiectarea robustă a clasificatorului în medii adversare , în Jurnalul de învățare automată și cibernetică , vol. 1, 2010, pp. 27–41. Adus la 17 iunie 2021 .
  25. ^ Metodele ansamblului supravegheat și nesupravegheat și aplicațiile lor , vol. 245, Springer Berlin / Heidelberg, 2009. Accesat la 17 iunie 2021 .
  26. ^ Battista Biggio, Igino Corona și Blaine Nelson, Security Evaluation of Support Vector Machines in Adversarial Environments , în arXiv: 1401.7727 [cs] , 29 ianuarie 2014. Accesat la 17 iunie 2021 .
  27. ^ Benjamin IP Rubinstein, Peter L. Bartlett și Ling Huang, Learning in a Large Function Space: Privacy-Preserving Mechanisms for SVM Learning , în arXiv: 0911.5708 [cs] , 30 noiembrie 2009. Accesat la 17 iunie 2021 .
  28. ^ (EN) Ofer Dekel, Ohad Shamir și Lin Xiao, Învățarea clasificării cu trăsături lipsă și corupte , în Învățarea automată, vol. 81, nr. 2, 1 noiembrie 2010, pp. 149–178, DOI : 10.1007 / s10994-009-5124-8 . Adus la 17 iunie 2021 .
  29. ^ (RO) Ce este igienizarea intrărilor? | Definiție Webopedia , pe Webopedia , 7 august 2020. Adus la 17 iunie 2021 .
  30. ^ TrojAI , la www.iarpa.gov . Adus la 17 iunie 2021 .
  31. ^ (EN) Kajaree Das, R. Behera, A Survey on Machine Learning: Concept, Algorithms and Applications , nedefinit, 2017. Accesat la 17 iunie 2021.
  32. ^ Saeed Abu-Nimeh, Dario Nappa și Xinlei Wang, O comparație a tehnicilor de învățare automată pentru detectarea phishingului , în Proceedings of the anti-phishing working groups 2nd anual eCrime researchers summit , Association for Computing Machinery, 4 octombrie 2007, pp. 60–69, DOI : 10.1145 / 1299015.1299021 . Adus la 17 iunie 2021 .
  33. ^ Ivan Studnia, Vincent Nicomette și Eric Alata, Sondaj privind amenințările la adresa securității și mecanismele de protecție în rețelele auto încorporate , în 2013 A 43-a conferință anuală IEEE / IFIP privind sistemele și rețelele de încredere (DSN-W) , 2013-06, pp. 1-12, DOI : 10.1109 / DSNW.2013.6615528 . Adus la 17 iunie 2021 .
  34. ^ (EN) Michael Bailey, Jon Oberheide și Jon Andersen, Clasificare automată și analiză a programelor malware de Internet în progresele recente în detectarea intruziunilor, Springer, 2007, pp. 178–197, DOI : 10.1007 / 978-3-540-74320-0_10 . Adus la 17 iunie 2021 .
  35. ^ (EN) Konrad Rieck, Philipp Trinius și Carsten Willems, Analiza automată a comportamentului malware folosind învățarea automată , în Journal of Computer Security, vol. 19, nr. 4, 1 ianuarie 2011, pp. 639–668, DOI : 10.3233 / JCS-2010-0410 . Adus la 17 iunie 2021 .
  36. ^ (EN) Konrad Rieck, Thorsten Holz și Carsten Willems, Învățarea și clasificarea comportamentului malware în detectarea intruziunilor și a malware-ului și evaluarea vulnerabilității, Springer, 2008, pp. 108-125, DOI : 10.1007 / 978-3-540-70542-0_6 . Adus la 17 iunie 2021 .
Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT