b/View

Machine learning. Apprendimento di reti neurali, fine della black box?

Alessandro Polli  |  Gennaio 9, 2018

Le architetture delle reti neurali multilivello, così come le metodologie per il loro apprendimento, hanno raggiunto livelli di complessità tali da far nascere il problema di «cosa» una rete neurale profonda sta effettivamente apprendendo. Anzi, comprendere i meccanismi attraverso cui apprende una rete neurale è una sfida cruciale.

Perché è importante comprendere tali meccanismi? In un paper di Ribeiro et al. del 2016 è riportato il seguente esempio concreto. In un esperimento di riconoscimento immagini, una rete neurale multilivello è stata addestrata per distinguere le immagini raffiguranti un lupo da quelle raffiguranti un husky. I risultati sono incoraggianti: dopo la fase di apprendimento, la rete classifica correttamente un nuovo set di immagini nel 90% dei casi, anche se non è chiaro «come» la rete pervenga a questo risultato.

Successivi test hanno poi accertato che l’algoritmo di classificazione lavorava prevalentemente sullo sfondo dell’immagine: poiché in quelle raffiguranti un lupo lo sfondo di solito è innevato, il classificatore in realtà individuava lo sfondo innevato e soltanto dopo classificava l’immagine. Ovviamente, le misure standard di accuratezza non catturano questa «logica» di classificazione.

Comprendere il modello di apprendimento di una rete neurale è di fondamentale importanza per conferire trasparenza alle previsioni e alle decisioni prese da un algoritmo e quindi considerarle affidabili. Trasparenza e affidabilità che assumono centralità anche alla luce del nuovo Regolamento Generale sulla Protezione dei Dati (General Data Protection Regulation, GDPR) che entrerà in vigore nell’Unione Europea a maggio. Anche se, secondo il data scientist e blogger Shirin Glander, «è ancora ampiamente dibattuto se l’Art. 22 includa un ‘diritto alla spiegazione’ delle decisioni prese tramite algoritmi, probabilmente non saranno tollerati ancora a lungo modelli black box le cui decisioni influenzano direttamente la vita delle persone». E questo vale sia in casi più blandi, come la concessione di prestiti, sia in casi molto più critici, quali decisioni mediche e decisioni in campo penale – dove si profila la c.d. giustizia predittiva, di cui ci siamo già occupati.

I metodi di analisi del modello di apprendimento di una rete sono sostanzialmente due: quello proposto da due ricercatori del Carl R. Woese Institute for Genomic Biology, Finnegan e Song, che in un paper pubblicato su bioRxiv lo scorso anno hanno proposto l’utilizzo di metodi matematici avanzati (quali il metodo di massima entropia e la distribuzione di Gibbs, abitualmente utilizzati in meccanica statistica) e l’approccio proposto da Ribeiro et al. nel paper citato all’inizio, applicabile ad ogni tecnica di classificazione (random forest, gradient boosting, reti neurali) e ad ogni struttura di dati.

Il metodo proposto da Ribeiro et al. − denominato LIME, che sta per Local Interpretable Model-agnostic Explanations – si basa su tre assunti: il modello di apprendimento del classificatore è spiegato localmente e non globalmente; la spiegazione è completamente basata sui dati di input e sull’adattamento locale di una semplice funzione lineare alla previsione.

Su un piano operativo, il LIME lavora su ogni unità statistica separatamente. I dati di input che caratterizzano ciascuna unità sono riprodotti con leggere modifiche un certo numero di volte. Questi dati, a loro volta, costituiscono un nuovo training set che, sottoposto all’algoritmo di classificazione, consentirà di ottenere una qualche partizione del nuovo insieme. L’aspetto più interessante in questa fase è che, procedendo nella maniera descritta, è possibile accertare quanto leggere modifiche nella struttura dei dati di input si riflettono sul risultato finale. Le previsioni sono a questo punto approssimate tramite un semplice modello lineare, consentendo di isolare le caratteristiche più importanti del modello di apprendimento dell’algoritmo.

In sintesi, al di là delle ovvie differenze nei due approcci, la soluzione che si sta profilando al problema dell’individuazione del meccanismo di apprendimento di una rete neurale multilivello comporta l’applicazione di metodi di ricampionamento sui dati di partenza (jacknife, bootstrap, test di permutazione) e quella di tecniche di sensitivity analysis.

Fonte: Codecentric blog