Adversarial machine learning: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m fix "più" |
Nessun oggetto della modifica |
||
Riga 23:
===Fast Gradient Sign Method (FGSM)===
Uno dei primissimi attacchi proposti per la generazione di esempi avversari è stato proposto dai ricercatori di Google Ian J. Goodfellow, Jonathon Shlens e Christian Szegedy.<ref>{{cita
<math>adv_x = x + \epsilon \cdot sign(\Delta_xJ(\theta, x, y))</math><ref name=":11">{{Cita web|titolo=Adversarial example using FGSM TensorFlow Core|url=https://www.tensorflow.org/tutorials/generative/adversarial_fgsm|accesso=24 ottobre 2021|sito=TensorFlow|lingua=en}}</ref>
Riga 58:
== Difese ==
Sono stati proposti diversi meccanismi di difesa contro gli attacchi di tipo adversarial. Tuttavia, è importante ricordare che, come in tutti gli altri contesti applicativi della sicurezza informatica, anche nell'adversarial machine learning i meccanismi di difesa dovranno essere aggiornati per contrastare i più recenti attacchi sviluppati contro di loro, in quella che in gergo è definita come "arms race" (corsa alle armi).
[[File:
Alcune strategie di difesa dipendono dal modello e dal tipo di apprendimento. Ad esempio, nel caso dell'addestramento supervisionato, uno dei metodi maggiormente noti per contrastare attacchi di tipo obfuscation è quello dell'adversarial training<ref>{{Cita pubblicazione|nome=Ian J.|cognome=Goodfellow|nome2=Jonathon|cognome2=Shlens|nome3=Christian|cognome3=Szegedy|data=20 marzo 2015|titolo=Explaining and Harnessing Adversarial Examples|rivista=arXiv:1412.6572 [cs, stat]|accesso=17 giugno 2021|url=http://arxiv.org/abs/1412.6572}}</ref>. Esso consiste nel ri-addestrare il modello includendo alcuni campioni malevoli, a cui è tuttavia associata la loro corretta classe di appartenenza. In questo modo il modello imparerà ad associare il campione alla sua reale classe, nonostante le perturbazioni ad esso applicate. Questa tecnica può risultare efficace in molti casi e non richiede cambiamenti speciali al modello. Tuttavia, è necessario calibrare il quantitativo totale di campioni adversarial, in quanto un numero troppo basso potrebbe risultare in un modello poco resistente agli attacchi, mentre un numero troppo elevato potrebbe causare l'[[overfitting]] del modello su quel dataset specifico<ref>{{Cita pubblicazione|nome=Kathrin|cognome=Grosse|nome2=Nicolas|cognome2=Papernot|nome3=Praveen|cognome3=Manoharan|data=16 giugno 2016|titolo=Adversarial Perturbations Against Deep Neural Networks for Malware Classification|rivista=arXiv:1606.04435 [cs]|accesso=17 giugno 2021|url=http://arxiv.org/abs/1606.04435}}</ref>. Un'altra strategia proposta in letteratura è quella del distillation, una tecnica che in origine era stata sviluppata con lo scopo di generare una [[Apprendimento profondo|rete neurale artificiale profonda]] a partire da una più grande<ref>{{Cita pubblicazione|nome=Geoffrey|cognome=Hinton|nome2=Oriol|cognome2=Vinyals|nome3=Jeff|cognome3=Dean|data=9 marzo 2015|titolo=Distilling the Knowledge in a Neural Network|rivista=arXiv:1503.02531 [cs, stat]|accesso=17 giugno 2021|url=http://arxiv.org/abs/1503.02531}}</ref>. Nel [[Caso d'uso (informatica)|caso d'uso]] originale, questo veniva fatto con lo scopo di ottenere una rete neurale meno dispendiosa, in quanto più piccola. Questa strategia è stata in seguito applicata nel contesto dell'adversarial machine learning. L'intuizione è che, diminuendone la dimensione, la rete neurale ottenuta riesca a generalizzare meglio la conoscenza appresa da quella più grande, e sia pertanto più resistente alle perturbazioni<ref>{{Cita pubblicazione|nome=Nicolas|cognome=Papernot|nome2=Patrick|cognome2=McDaniel|nome3=Xi|cognome3=Wu|data=14 marzo 2016|titolo=Distillation as a Defense to Adversarial Perturbations against Deep Neural Networks|rivista=arXiv:1511.04508 [cs, stat]|accesso=17 giugno 2021|url=http://arxiv.org/abs/1511.04508}}</ref>.
Altri metodi noti includono:
* sistemi di classificazione che combinano più modelli insieme<ref>{{Cita pubblicazione|nome=Battista|cognome=Biggio|nome2=Giorgio|cognome2=Fumera|nome3=Fabio|cognome3=Roli|data=2010|titolo=Multiple Classifier Systems for Robust Classifier Design in Adversarial Environments|rivista=Journal of Machine Learning and Cybernetics|volume=1|pp=27–41|accesso=17 giugno 2021|url=http://pralab.diee.unica.it/en/node/671
* algoritmi di apprendimento che permettono di preservare la privacy dei dati usati (attraverso ad esempio l'utilizzo di tecniche di privacy differenziale<ref>{{Cita pubblicazione|nome=Battista|cognome=Biggio|nome2=Igino|cognome2=Corona|nome3=Blaine|cognome3=Nelson|data=29 gennaio 2014|titolo=Security Evaluation of Support Vector Machines in Adversarial Environments|rivista=arXiv:1401.7727 [cs]|accesso=17 giugno 2021|url=http://arxiv.org/abs/1401.7727}}</ref><ref>{{Cita pubblicazione|nome=Benjamin I. P.|cognome=Rubinstein|nome2=Peter L.|cognome2=Bartlett|nome3=Ling|cognome3=Huang|data=30 novembre 2009|titolo=Learning in a Large Function Space: Privacy-Preserving Mechanisms for SVM Learning|rivista=arXiv:0911.5708 [cs]|accesso=17 giugno 2021|url=http://arxiv.org/abs/0911.5708}}</ref>);
* algoritmi di apprendimento intelligenti in grado di anticipare le mosse di un attaccante<ref>{{Cita pubblicazione|nome=Ofer|cognome=Dekel|nome2=Ohad|cognome2=Shamir|nome3=Lin|cognome3=Xiao|data=1º novembre 2010|titolo=Learning to classify with missing and corrupted features|rivista=Machine Learning|volume=81|numero=2|pp=149–178|lingua=en|accesso=17 giugno 2021|doi=10.1007/s10994-009-5124-8|url=https://doi.org/10.1007/s10994-009-5124-8}}</ref>;
|