Apprendimento automatico contraddittorio: significato, esempi e come funziona
Scopri il mondo degli attacchi avversari di machine learning e il loro impatto sui sistemi di intelligenza artificiale. Scopri come possono sfruttare le vulnerabilità e come costruire le giuste difese.

L'apprendimento automatico contraddittorio è un ramo dell'apprendimento automatico che si concentra sulle vulnerabilità dei modelli di apprendimento automatico a vari attacchi.
Un input contraddittorio è qualsiasi input di apprendimento automatico che mira a ingannare il modello inducendolo a fare previsioni errate o a produrre risultati errati.
Poiché gli attacchi avversari possono avere gravi conseguenze, anche nei settori della sicurezza, delle frodi e della sanità, i ricercatori si concentrano sulla scoperta di diversi metodi di attacco, nonché sullo sviluppo di meccanismi di difesa contro di essi.
Questo post esplora il mondo contraddittorio del machine learning e include esempi, sfide e modi per attaccare e difendere i modelli di intelligenza artificiale.
Che cos'è il machine learning contraddittorio?
L'adversarial machine learning studia una classe di attacchi che mirano a ridurre le prestazioni dei classificatori su compiti specifici. In altre parole, mirano a ingannare la macchina dell’intelligenza artificiale.
Con la sempre maggiore diffusione dell’uso dell’intelligenza artificiale e delle tecniche di apprendimento automatico, aumenta il rischio di attacchi avversari. Ciò rappresenta una minaccia significativa per varie applicazioni basate sull’intelligenza artificiale, tra cui il rilevamento dello spam, gli assistenti personali, la visione artificiale e così via.
Come funzionano gli attacchi avversari
Un attacco contraddittorio è qualsiasi processo progettato per ingannare un modello di machine learning inducendolo a causare previsioni errate. Ciò può accadere durante la formazione, così come in un ambiente di esecuzione dal vivo. In altre parole, se riesci a trovare un modo per ingannare o sabotare il modello, lo hai attaccato con successo.
Che cos'è un esempio contraddittorio?
Un esempio contraddittorio è qualsiasi input appositamente progettato per un modello di machine learning che mira a indurre il modello a commettere un errore o a produrre un output errato.
È possibile creare un esempio contraddittorio apportando lievi modifiche ai dati di input, che sebbene potrebbero non essere visibili all'occhio umano, spesso sono sufficienti per cambiare la comprensione del modello e indurlo a produrre output errati.
Esempi contraddittori vengono utilizzati nelle fasi di addestramento di un modello di intelligenza artificiale e le modifiche apportate vengono generalmente generate utilizzando varie tecniche di ottimizzazione, inclusi metodi basati su gradienti come l'attacco FGSM (Fast Gradient Sign Method), che sfrutta la sensibilità del modello ai cambiamenti in lo spazio di ingresso.
L'obiettivo con gli esempi contraddittori è quello di aggiungere lievi perturbazioni ai dati di input che potrebbero essere appena visibili agli osservatori umani, ma che sono comunque sufficientemente significative da indurre il modello a classificare erroneamente l'input.
Gli attacchi avversari possono verificarsi in diversi settori del machine learning, tra cui il riconoscimento delle immagini e l’elaborazione del linguaggio naturale.
Applicazioni del ML contraddittorio
La capacità di individuare e sfruttare i punti deboli di qualsiasi piattaforma di intelligenza artificiale ha una vasta gamma di usi, poiché l’attaccante è limitato solo dalla sua immaginazione. Ecco alcuni dei tanti modi in cui un hacker può sfruttare una macchina IA compromessa utilizzando metodi di machine learning contraddittori.
- Riconoscimento di immagini e video: Dalla moderazione dei contenuti ai veicoli autonomi e ai sistemi di sorveglianza, molte applicazioni di intelligenza artificiale si basano su algoritmi di riconoscimento di immagini e video. Modificando l'input della macchina e costringendola a classificare erroneamente le cose, un utente malintenzionato può eludere qualsiasi sistema di controllo si basi sulle sue capacità di riconoscimento degli oggetti. Per i veicoli autonomi, tale manipolazione può portare a incidenti stradali.
- Spam Filtering: gli spammer possono aggirare con successo i sistemi di rilevamento dello spam basati sull'intelligenza artificiale ottimizzando le proprie e-mail di spam con strutture diverse, più parole buone, meno parole cattive e così via.
- Rilevamento malware: È altrettanto possibile creare codice informatico dannoso in grado di eludere il rilevamento da parte degli scanner di malware.
- Elaborazione del linguaggio naturale: classificando erroneamente il testo utilizzando l'apprendimento automatico contraddittorio, l'aggressore può manipolare sistemi di consigli basati su testo, rilevatori di notizie false, rilevatori di sentiment e così via.
- Settore Sanitario: Gli aggressori possono manipolare le cartelle cliniche per alterare la diagnosi di un paziente o ingannare il sistema inducendolo a rivelare cartelle cliniche sensibili.
- Rilevamento delle frodi finanziarie: Anche i sistemi di intelligenza artificiale utilizzati nel rilevamento delle frodi finanziarie sono a rischio di attacchi di machine learning da parte di avversari. Ad esempio, un utente malintenzionato può creare dati sintetici che imitano transazioni legittime, rendendo così possibile condurre frodi non rilevate dal modello.
- Sistemi di sicurezza biometrici: Utilizzando dati manipolati, un utente malintenzionato può aggirare i sistemi di sicurezza di rilevamento delle impronte digitali o del volto per ottenere l'accesso non autorizzato a una rete o piattaforma.
- Difesa contraddittoria: Mentre la maggior parte degli usi precedenti riguardano l'attacco a un sistema, la difesa contraddittoria è lo studio degli attacchi contraddittori da utilizzare nella creazione di robusti sistemi di difesa contro gli aggressori della macchina.
Conseguenze del ML contraddittorio
L’apprendimento automatico contraddittorio ha conseguenze che possono influire sull’affidabilità o sulle prestazioni dei sistemi di intelligenza artificiale. Ecco i principali.
- Erode la fiducia: Se gli attacchi avversari dovessero crescere e sfuggire di mano, ciò causerebbe l’erosione della fiducia nei confronti dei sistemi di intelligenza artificiale, poiché il pubblico guarderebbe qualsiasi sistema basato sull’apprendimento automatico con un livello di sospetto.
- Implicazioni etiche: L’applicazione di sistemi di apprendimento automatico a settori quali l’assistenza sanitaria e la giustizia penale solleva questioni etiche, poiché qualsiasi sistema di intelligenza artificiale compromesso può causare gravi danni personali e sociali.
- Implicazioni economiche: Gli attacchi avversari possono portare a perdite finanziarie, aumento dei costi di sicurezza, manipolazione del mercato finanziario e persino danni alla reputazione.
- Maggiore complessità: La minaccia di attacchi avversari aumenta lo sforzo di ricerca e la complessità complessiva dei sistemi di apprendimento automatico.
- Furto di modelli: Un modello di intelligenza artificiale stesso può essere attaccato per sondare e recuperare parametri interni o informazioni sulla sua architettura che possono essere utilizzati per un attacco più serio al sistema.
Tipi di attacchi avversari
Esistono diversi tipi di attacchi di machine learning contraddittori e variano a seconda degli obiettivi dell'aggressore e dell'accesso di cui dispone al sistema. Ecco i principali tipi.
- Attacchi di evasione: Negli attacchi di evasione, gli avversari modificano gli input per indurre il sistema di intelligenza artificiale a classificarli erroneamente. Ciò può comportare l'aggiunta di perturbazioni impercettibili (o rumore intenzionale) alle immagini di input o ad altri dati per ingannare il modello.
- Attacchi di avvelenamento dei dati: Gli attacchi di data-avvelenamento si verificano durante la fase di addestramento di un sistema di intelligenza artificiale. Aggiungendo dati errati (o avvelenati) nel set di dati di addestramento della macchina, il modello diventa meno accurato nelle sue previsioni ed è, quindi, compromesso.
- Attacchi di estrazione del modello: Negli attacchi con inversione di modello, gli avversari sfruttano la capacità di estrarre informazioni sensibili da un modello di intelligenza artificiale addestrato. Manipolando gli input e osservando le risposte del modello, possono ricostruire dati privati, come immagini o testo.
- Attacchi di trasferimento: si riferisce alla capacità di un attacco contro un sistema di machine learning di essere altrettanto efficace contro un altro sistema di machine learning.
Come difendersi dagli attacchi avversari
Esistono diversi meccanismi di difesa che puoi utilizzare per proteggere il tuo modello di intelligenza artificiale dagli attacchi avversari. Ecco alcuni dei più popolari.
- Creare sistemi robusti: Ciò comporta lo sviluppo di modelli di intelligenza artificiale più resistenti agli attacchi degli avversari includendo test e linee guida di valutazione per aiutare gli sviluppatori a identificare i difetti del sistema che potrebbero portare ad attacchi degli avversari. Possono quindi sviluppare difese contro tali attacchi.
- Convalida dell'input: Un altro approccio consiste nel verificare gli input di un modello ML per individuare eventuali vulnerabilità già note. Il modello potrebbe essere progettato per rifiutare input, ad esempio, che contengono modifiche note per indurre le macchine a fare previsioni errate.
- Addestramento contraddittorio: potresti anche introdurre una certa quantità di esempi contraddittori nei dati di addestramento del tuo sistema per aiutare il modello a imparare a rilevare e rifiutare esempi contraddittori in futuro.
- AI spiegabile: In teoria, quanto più gli sviluppatori e gli utenti comprendono meglio come funziona un modello di intelligenza artificiale, tanto più facile sarà per le persone escogitare difese contro gli attacchi. Pertanto, un approccio Explainable AI (XAI) all’apprendimento automatico e allo sviluppo di modelli AI può risolvere molti problemi.
Conclusione
Gli attacchi avversari di machine learning rappresentano una minaccia significativa per l’affidabilità e le prestazioni dei sistemi di intelligenza artificiale. Tuttavia, comprendendo i diversi tipi di attacchi noti e implementando strategie di difesa per prevenirli, gli sviluppatori possono proteggere meglio i propri modelli di intelligenza artificiale dagli attacchi avversari.
Infine, dovresti capire che i campi dell’intelligenza artificiale e dell’apprendimento automatico antagonista sono ancora in crescita. Pertanto, potrebbero esserci ancora altri metodi di attacco avversari che devono ancora diventare di pubblico dominio.
Risorse
- https://en.wikipedia.org/wiki/Adversarial_machine_learning
- https://www.csoonline.com/article/573031/adversarial-machine-learning-explained-how-attackers-disrupt-ai-and-ml-systems.html
- https://medium.com/@durgeshpatel2372001/an-introduction-to-adversarial-machine-learning-820010645df9
- https://insights.sei.cmu.edu/blog/the-challenge-of-adversarial-machine-learning/
- https://viso.ai/deep-learning/adversarial-machine-learning/
- https://www.toptal.com/machine-learning/adversarial-machine-learning-tutorial





