Oggi voglio diventare un po’ filosofico e parlare di come la spiegabilità e il rischio si intersecano nell’apprendimento automatico.
In breve, spiegabilità nell'apprendimento automatico è l'idea di poter spiegare a un utente umano (non necessariamente esperto dal punto di vista tecnico) come un modello sta prendendo le sue decisioni. Un albero decisionale è un esempio di un modello facilmente spiegabile (a volte chiamato “scatola bianca”), in cui è possibile indicare “Il modello divide i dati tra case la cui superficie è maggiore di uno o inferiore o uguale a uno” e così via . Altri tipi di modelli più complessi possono essere “scatola grigia” o “scatola nera”: sempre più difficili da comprendere fino a diventare impossibili per un utente umano.
Una lezione fondamentale nella mia formazione sull'apprendimento automatico è sempre stata che la nostra relazione con i modelli (che di solito erano modelli in stile albero potenziati) dovrebbe essere, al massimo, “Fiducia, ma verifica”. Quando addestri un modello, non prendere le previsioni iniziali per valore nominale, ma dedica un po' di tempo a calciare le gomme. Testare il comportamento del modello su valori anomali molto strani, anche quando è improbabile che si verifichino in natura. Traccia l'albero stesso, se è abbastanza superficiale. Utilizza tecniche come l'importanza delle funzionalità, i valori di Shapley e LIME per verificare che il modello stia facendo le sue inferenze utilizzando caratteristiche che corrispondono alla tua conoscenza dell'argomento e della logica. Le suddivisioni delle funzionalità in un dato albero erano allineate con ciò che sai sull'argomento? Quando modelli i fenomeni fisici, puoi anche confrontare il comportamento del tuo modello con ciò che sappiamo scientificamente su come funzionano le cose. Non fidarti solo che il tuo modello affronti i problemi nel modo giusto, ma controlla.
Non fidarti solo che il tuo modello affronti i problemi nel modo giusto, ma controlla.
Con l’esplosione della rilevanza delle reti neurali, il più grande compromesso che abbiamo dovuto considerare è che questo tipo di spiegabilità diventa incredibilmente difficile e cambia in modo significativo a causa del modo in cui funziona l’architettura.
I modelli di rete neurale applicano funzioni ai dati di input in ogni strato intermedio, mutando i dati in una miriade di modi prima di restituirli infine ai valori target nello strato finale. L’effetto di ciò è che, a differenza delle suddivisioni di un modello basato su alberi, gli strati intermedi tra input e output spesso non sono ragionevolmente interpretabili dall’uomo. Potresti essere in grado di trovare un nodo specifico in qualche livello intermedio e osservare come il suo valore influenza l'output, ma collegarlo a input reali e concreti che un essere umano può comprendere di solito fallirà a causa di quanto astratti sono gli strati anche di un semplice livello. NN sono.
Ciò è facilmente illustrato dal problema “husky vs lupo”. Una rete neurale convoluzionale è stata addestrata per distinguere tra foto di husky e lupi, ma dopo un'indagine si è scoperto che il modello faceva delle scelte in base al colore dello sfondo. Le foto di addestramento degli husky avevano meno probabilità di essere in ambienti innevati rispetto ai lupi, quindi ogni volta che il modello riceveva un'immagine con uno sfondo innevato, prevedeva la presenza di un lupo. Il modello utilizzava informazioni a cui gli esseri umani coinvolti non avevano pensato e sviluppava la sua logica interna basandosi su caratteristiche errate.
Ciò significa che i test tradizionali di “questo modello 'pensa' al problema in un modo che si allinea con la realtà fisica o intuitiva?” diventare obsoleto. Non possiamo dire in che modo il modello sta facendo le sue scelte nello stesso modo, ma invece finiamo per fare affidamento maggiormente su approcci per tentativi ed errori. Esistono strategie sperimentali sistematiche per questo, essenzialmente testando un modello rispetto a molti controfattuali per determinare quali tipi e gradi di variazione in un input produrranno cambiamenti in un output, ma questo è necessariamente arduo e ad alta intensità di calcolo.
Non possiamo dire in che modo il modello sta facendo le sue scelte nello stesso modo, ma invece finiamo per fare affidamento maggiormente su approcci per tentativi ed errori.
Non intendo sostenere che gli sforzi per comprendere in qualche modo come le reti neurali fanno quello che fanno siano senza speranza. Molti studiosi sono molto interessati AI spiegabile, nota in letteratura come XAI. Le variazioni nei tipi di modelli disponibili oggi significano che ci sono molti approcci che possiamo e dobbiamo perseguire. I meccanismi di attenzione sono un progresso tecnologico che ci aiuta a capire a quali parti di un input il modello presta maggiore attenzione o da cui è guidato, il che può essere utile. Anthropic ha appena pubblicato un rapporto molto interessante che approfondisce l'interpretabilità di Claude, tentando di capire quali parole, frasi o immagini innescano l'attivazione più forte per gli LLM a seconda delle istruzioni che utilizzano codificatori automatici sparsi. Strumenti che ho descritto sopra, compreso Shapley e CALCEpuò essere applicato anche ad alcune varietà di reti neurali, come le CNN, sebbene i risultati possano essere difficili da interpretare. Ma più aggiungiamo complessità, per definizione, più difficile sarà per uno spettatore o un utente umano comprendere e interpretare come funziona il modello.
Un ulteriore elemento importante in questo caso è riconoscere che molte reti neurali incorporano la casualità, quindi non è sempre possibile fare affidamento sul modello per restituire lo stesso output quando vede lo stesso input. In particolare, i modelli di intelligenza artificiale generativa possono intenzionalmente generare output diversi dallo stesso input, in modo che sembrino più “umani” o creativi: possiamo aumentare o diminuire l’estremità di questa variazione sintonizzazione della “temperatura”. Ciò significa che a volte il nostro modello sceglierà di restituire non l’output più probabilisticamente desiderabile, ma qualcosa di “sorprendente”, che aumenta la creatività dei risultati.
In queste circostanze, possiamo ancora adottare in parte l’approccio per tentativi ed errori per cercare di sviluppare la nostra comprensione di ciò che il modello sta facendo e perché, ma diventa esponenzialmente più complesso. Invece dell’unica modifica all’equazione rappresentata da un input diverso, ora abbiamo cambiamenti nell’input più una variabilità sconosciuta dovuta alla casualità. Il tuo cambiamento di input ha cambiato la risposta o è stato il risultato della casualità? Spesso è impossibile saperlo veramente.
Il tuo cambiamento di input ha cambiato la risposta o è stato il risultato della casualità?
Quindi, dove ci porta questo? Perché vogliamo sapere in primo luogo come il modello ha effettuato la sua inferenza? Perché questo è importante per noi come sviluppatori di machine learning e utenti di modelli?
Se costruiamo l’apprendimento automatico che ci aiuterà a fare scelte e a modellare i comportamenti delle persone, allora la responsabilità dei risultati dovrà ricadere su di noi. A volte le previsioni dei modelli passano attraverso un mediatore umano prima di essere applicate al nostro mondo, ma sempre più spesso vediamo modelli lasciati liberi e inferenze nella produzione utilizzate senza ulteriore revisione. Il grande pubblico ha un accesso più immediato che mai a modelli di machine learning di enorme complessità.
Per me, quindi, capire come e perché il modello fa quello che fa è una due diligence, proprio come testare per assicurarsi che un giocattolo fabbricato non abbia vernice al piombo su di esso, o che un pezzo di macchinario non si spezzi durante il normale utilizzo e si rompa. la mano di qualcuno. È molto più difficile verificarlo, ma garantire che non sto lanciando nel mondo un prodotto che peggiori la vita è una posizione morale a cui mi impegno. Se stai costruendo un modello di machine learning, sei responsabile di ciò che fa quel modello e dell'effetto che ha sulle persone e sul mondo. Di conseguenza, per essere davvero sicuri che il tuo modello sia sicuro da usare, è necessario un certo livello di comprensione su come e perché restituisce gli output che restituisce.
Se stai costruendo un modello di machine learning, sei responsabile di ciò che fa quel modello e dell'effetto che ha sulle persone e sul mondo.
Per inciso, i lettori potrebbero ricordare da il mio articolo sull’EU AI Act che vi siano requisiti secondo i quali le previsioni dei modelli siano soggette alla supervisione umana e che non prendano decisioni con effetto discriminatorio sulla base di caratteristiche protette. Quindi, anche se non ci si sente vincolati dall'argomento morale, per molti di noi esiste anche una motivazione legale.
Anche quando utilizziamo le reti neurali, possiamo comunque utilizzare strumenti per comprendere meglio come il nostro modello sta effettuando le scelte: dobbiamo solo prenderci il tempo e lavorare per arrivarci.
Filosoficamente, potremmo (e le persone lo fanno) sostenere che i progressi nell’apprendimento automatico oltre un livello base di sofisticazione richiedono la rinuncia al nostro desiderio di comprenderlo tutto. Questo potrebbe essere vero! Ma non dovremmo ignorare i compromessi che ciò crea e i rischi che accettiamo. Nel migliore dei casi, il tuo modello di intelligenza artificiale generativa farà principalmente quello che ti aspetti (magari se tieni sotto controllo la temperatura e il tuo modello è molto poco creativo) e non farà molte cose inaspettate, o nel peggiore dei casi scatenerai un disastro perché il modello reagisce in modi che non avresti immaginato sarebbero potuti accadere. Ciò potrebbe significare che sembri sciocco, o potrebbe significare la fine della tua attività, o potrebbe significare un vero danno fisico alle persone. Quando accetti che la spiegabilità del modello è irraggiungibile, questo è il tipo di rischi che ti stai assumendo. Non puoi dire “oh, i modelli faranno il modello” quando hai costruito questa cosa e hai preso la decisione consapevole di rilasciarla o di utilizzare le sue previsioni.
Varie aziende tecnologiche, grandi e piccole, hanno accettato che l’intelligenza artificiale generativa a volte produrrà risultati errati, pericolosi, discriminatori e altrimenti dannosi, e hanno deciso che ne vale la pena per i benefici percepiti: lo sappiamo perché i modelli di intelligenza artificiale generativa che abitualmente si comportano in modo indesiderabile i modi sono stati resi pubblici al grande pubblico. Personalmente, mi dà fastidio che l’industria tecnologica abbia scelto, senza alcuna chiara considerazione o conversazione, di esporre il pubblico a questo tipo di rischio, ma il genio è fuori dalla lampada.
A mio avviso, perseguire XAI e cercare di metterlo al passo con il progresso dell'intelligenza artificiale generativa è un obiettivo nobile, ma non credo che arriveremo a un punto in cui la maggior parte delle persone potrà facilmente capire come questi modelli fanno quello che fanno, solo perché le architetture sono così complicate e stimolanti. Di conseguenza, penso che dobbiamo anche implementare la mitigazione del rischio, garantendo che i responsabili dei modelli sempre più sofisticati che influenzano quotidianamente le nostre vite siano responsabili di questi prodotti e della loro sicurezza. Poiché i risultati sono spesso imprevedibili, abbiamo bisogno di strutture per proteggere le nostre comunità dagli scenari peggiori.
Non dovremmo considerare tutti i rischi come insostenibili, ma dobbiamo avere gli occhi chiari sul fatto che il rischio esiste e che le sfide di spiegabilità per l’intelligenza artificiale all’avanguardia significano che il rischio dell’apprendimento automatico è più difficile da misurare e anticipare rispetto a mai prima. L’unica scelta responsabile è bilanciare questo rischio con i benefici reali che questi modelli generano (senza dare per scontati i benefici previsti o promessi di qualche versione futura) e prendere decisioni ponderate di conseguenza.
Fonte: towardsdatascience.com