L’era dell’Algoritmo e le frontiere del “trusting” digitale
L’entrata in vigore del Regolamento generale sulla protezione dei dati (GDPR) e, soprattutto, la fine del suo periodo transitorio prima dell’applicabilità del regime sanzionatorio, hanno introdotto piccole e grandi trasformazioni che incidono praticamente su tutta una serie di comportamenti dei gestori di informazioni e, di conseguenza, su tutti noi. La tutela della privacy, già definita come uno dei diritti fondamentali nell’Unione Europea poiché riconosciuta come parte integrante della dignità umana e della libertà personale, nell’era dell’Algoritmo si adegua a strumento di “tutela dinamica” dei dati personali estendendo i diritti degli utenti sulle informazioni che li riguardano (ad esempio con la possibilità di trasferire i propri dati da un servizio online ad un altro, la limitazione o opposizione ai trattamenti, e così via).
La questione ha contorni decisamente ampi, tanto da spingersi al di là dei confini della legislazione locale verso i temi fondamentali del vivere civile e del ruolo delle Istituzioni preposte alla loro regolamentazione.
Per averne un’idea plastica sarà sufficiente evocare il recente affaire Cambridge Analytica. Facebook, una gigantesca compagnia internazionale che garantisce le comunicazioni a miliardi di persone su tutto il globo è stata sfruttata, più o meno consapevolmente, per manipolare più o meno efficacemente, gli esiti delle elezioni presidenziali della più grande potenza democratica mondiale. Chi aveva il compito di controllarne l’operato, su quali leggi internazionali si sarebbe dovuto basare questo lavoro di controllo?
Quando si parla di immense quantità di informazioni sensibili raccolte attraverso strumenti informatici e digitali, i tradizionali rapporti fra contenuto e contenitore, materia e strumento, operatore e controllore terzo vengono superati in un modo e con una facilità che lasciano sbalorditi. È un po’ come in quell’immagine mutuata dalla fisica quantistica e entrata nel comune repertorio retorico: l’osservatore modifica l’oggetto osservato. Il gestore dei dati ne è il manipolatore. Colui che dovrebbe poter controllare il gestore, nel momento in cui viene fornito degli eventuali strumenti che gli consentono di farlo, si trova nella paradossale condizione di assumere a sua volta, con tutti i rischi del caso, il potere di gestore.
Questo avviene perché la tecnologia, e la Tecnica che ne è divenuta il paradigma, hanno ormai assunto un ruolo di totale predominanza. Chi dispone di una certa tecnologia ha in mano il potere che essa concede. Non è più come per un esercito che incrementa la propria forza aggiungendo armi e uomini all’arsenale e che viene limitato dagli strumenti di difesa dell’avversario; adesso è l’arsenale, divenuto globale, a detenere il potere, e chi può gestirlo ha a disposizione tutto il potere. Un eventuale controllore terzo, per poter svolgere il proprio compito, deve prendere il controllo totale di quel potere totale. Il rischio che stiamo correndo è che non ci sia più spazio per le mediazioni, né per i ruoli.
E allora, conseguentemente, di chi ci si potrà fidare nell’immediato futuro, e su quali dinamiche si baserà l’attribuzione della fiducia, del “trust”? Un’ipotesi non troppo peregrina è che il trust potrà non essere più affidato ad uno o più attori di questo scenario, ma ad una combinazione di trasparenza e tecnologia. Ma, e qui si aprono gli scenari più diversi, quale tecnologia? implementata su quali principi tecnici?
Un approccio fortemente innovativo in questo senso è stato adottato nel recente progetto “OpenMined” che, utilizzando una ingegnosa combinazione di tecnologie, propone nuove dinamiche di “trusting” per le più immediate applicazioni pratiche, nell’ambito dell’intelligenza artificiale (AI). I criteri ed i metodi suggeriti, infatti, consentono di coniugare un alto grado di trasparenza sul funzionamento dell’architettura tecnologica e un estremo livello di riservatezza ad ogni utilizzatore.
Il progetto OpenMined: la decentralizzazione totale.
Quando si ragiona della necessità di cambiare il proprio “mindset” per affrontare le attuali sfide tecnologiche, l’intuizione sembra assolutamente convincente. Quando scopriamo le idee di qualcuno che lo sta facendo, però, ci sentiamo sempre presi in contropiede. Il recente progetto “OpenMined” e la sua comunità di supporto fanno esattamente questo effetto.
Il claim del progetto è molto esplicativo: “OpenMined is a community focused on building open-source technology for the decentralized ownership of data and intelligence”.
La mission del progetto, che conta al momento su una community di sviluppatori di quasi 150 persone ed il cui sito Internet esiste soltanto dallo scorso maggio, è davvero sfidante: rendere accessibile agli utenti, che forniscono i dati, e agli sviluppatori di soluzioni di machine learning, che sviluppano modelli ed eseguono training delle proprie soluzioni su tali dati, una nuova tecnologia in grado di preservare integralmente la privacy di tutte le parti coinvolte. Se a tutto ciò si aggiunge che ogni partecipante può essere remunerato per collaborare in modo costruttivo al miglioramento delle applicazioni, senza dover vendere i propri dati, allora effettivamente due sono le possibilità: o c’è un trucco o è “magia”.
Ogni aspetto di questo progetto ha come elementi costitutivi molte delle caratteristiche auspicate in scenari di innovazione e ricerca responsabile. Intanto, la progettazione è iniziata aggregando una comunità composta non soltanto da tecnici e l’intera produzione viene continuamente rilasciata in open-source perché il progetto possa divenire un framework il più possibile condiviso. La soluzione, inoltre, sottende ai tanto citati elementi “privacy by design” e “privacy by default” del Regolamento generale sulla protezione dei dati (GDPR). Utilizza in modo particolarmente innovativo le tecnologie più interessanti, e spesso piuttosto controverse, e lo fa in modo molto integrato. Insomma, se corre un rischio, è quello di avere alzato troppo le aspettative cercando di convincere che un particolare utilizzo della tecnologia possa risolvere “auto-magica-mente” molte spinose questioni.
Lo stato dell’arte dello sviluppo di applicazioni in ambito AI è riconducibile a caratteristiche e dinamiche piuttosto consolidate: la necessità di disporre di molti dati e il bisogno di una estesa capacità di calcolo per la loro gestione. Le questioni più dirimenti in questo approccio sono principalmente riconducibili al tema della proprietà dei dati e a quello della possibilità, per i loro produttori, di esercitare forme di controllo sull’effettivo trattamento e sulle reali finalità della gestione delle informazioni raccolte. L’importanza di questi aspetti è più o meno amplificata dalla tipologia di dati raccolti: medici, comportamentali, politici, sulle abitudini di acquisto, sessuali e così via.
I dati prodotti dalle persone e raccolti attraverso applicazioni, smartphone o dispositivi IoT, sono concessi, più o meno consciamente, al gestore del progetto il quale spesso, anche soltanto per eseguirne il trattamento concordato con l’utente, li affida ad aziende terze. I servizi cloud offerti da Amazon, Google o Microsoft sono, ad esempio, sempre più frequentemente la risposta tecnologia alla complessità di gestione di grandi volumi di dati, comportando maggiore competitività rispetto ad altre soluzioni e a quelle completamente realizzate in autonomia. La scelta dell’affidamento dei propri dati a fornitori esterni di servizi è quindi spesso condizionata da considerazioni tecniche ed economiche dovute alla quantità di risorse necessarie per la memorizzazione e la gestione delle informazioni, con tutte le loro immaginabili implicazioni in termini di privacy.
Considerazioni simili sono da tenere presenti anche per le questioni connesse alla pura capacità di calcolo. Fenomeno ormai consolidato è infatti la concentrazione di questa capacità in un oligopolio di grandi fornitori cui un’ampia tipologia di utenti è sempre più incentivata a rivolgersi. Tali dinamiche, inoltre, sono simili in ogni ambito di applicazione: dalle startup alle grandi aziende, dai centri di ricerca privati a quelli pubblici.
Il progetto OpenMined: una tecnologia basata sulla “magia”.
“Ogni tecnologia sufficientemente avanzata è indistinguibile dalla magia.” (Arthur C.Clarke).
Le novità del progetto OpenMined costituiscono una forma di innovazione che può essere definita “incrementale” poiché sviluppa, con una particolare inventiva, paradigmi tecnologici preesistenti, dei quali rappresenta una certa continuità. L’effetto innovativo è però fortemente incrementato dal fatto che le tecnologie su cui si basa sono considerate a loro volta “radicali” poiché, indipendentemente dalla loro longevità, il loro potenziale di innovazione si sta realizzando proprio in questo periodo.
Deep learning, Federated learning, Homomorphic Encryption, Blockchain Smart Contracts: tutte queste tecnologie, di cui si forniscono in calce alcune note tecniche, concorrono infatti alla realizzazione di una nuova architettura che mira a consentire di implementare soluzioni di intelligenza artificiale in grado di gestire apprendimento efficace ed efficiente. Il tutto, consentendo di utilizzare potenza di calcolo distribuita nel rispetto della privacy dei fornitori di dati e, contemporaneamente, della proprietà industriale dell’azienda che ne propone i modelli.
“With OpenMined, an AI can be trained in environments that are not secure on data it never has access to“. Nell’approccio proposto da OpenMined le questioni che sembrano “magia” sono molte:
Privacy e proprietà dei dati degli utenti.
I dati, prodotti dagli utenti, possono rimanere esclusivamente di loro proprietà e nel loro pieno controllo. Non vi sono necessità tecniche che richiedono la condivisione o il passaggio di dati intelligibili alle parti coinvolte. Ciò semplifica, in molti casi fino ad eliminare, la redazione di accordi legali che impegnino le parti a mantenere riservatezza. I sistemi di machine learning proposti possono eseguire il proprio training su dati trattati matematicamente in modo tale da non essere più intelligibili, pur continuando a rimanere utili ai processi di apprendimento.
Riservatezza e proprietà intellettuale dei modelli di AI.
I modelli progettati, da enti di ricerca, startup o aziende private, possono essere distribuiti a centri di calcolo o, capillarmente, ai singoli utenti con adeguate capacità di elaborazione perché siano sottoposti al training necessario per migliorarne l’efficienza. Tecnicamente, però, tale modello può essere adottato impedendo agli utilizzatori di avere informazioni su di esso. In tal modo, quindi, la tecnologia non può essere sottratta o copiata o utilizzata senza esplicita autorizzazione del proprietario, salvaguardando investimenti economici e conoscenze tecnologiche.
Remunerazione di partecipazione.
La soluzione tecnologica proposta da OpenMined permette, nativamente, di implementare un sistema di pagamento affidabile che può consentire agli utenti di essere ricompensati per aver partecipato, collaborando con propri dati e calcoli, all’apprendimento del sistema e quindi al suo complessivo miglioramento. La ricompensa può essere commisurata alla performance di cui hanno garantito l’aumento ed è assegnata in modo trasparente e palese.
Inoltre, il rapporto tra i vari soggetti non necessita di essere regolamentato dalla sottoscrizione di contratti giuridici. L’architettura della soluzione proposta si basa fortemente su tecnologie che, avendo componenti blockchain-based, ne ereditano molte delle peculiarità. Il concetto di “trust” tra i partecipanti quindi non richiede fiducia, ma è espresso come insieme di vincoli il cui rispetto può, anzi deve, essere algoritmicamente verificabile e verificato.
Politiche di controllo: l'”Oracolo”.
L’intera architettura basa il proprio funzionamento su una componente logico/matematica che viene definita “Oracolo”. Tale struttura ha il compito di gestire autonomamente la corretta distribuzione delle chiavi di crittografia necessarie e utilizza smart-contract per garantire il massimo livello di “trust” tra tutte le componenti della soluzione. È quindi immaginabile come un “soggetto di garanzia”. La gestione dell’infrastruttura tecnologica dell’oracolo è quindi, ovviamente, l’elemento più sensibile dell’architettura e, almeno per il momento, la community che sta sviluppando OpenMined considera impossibile imporgli vincoli. Riporre “fiducia” in lui diviene così ineludibile; ma si tratta ovviamente di una fiducia relativa, perché osservabile via smart-contract.
L’entità cui viene delegata la gestione dell’oracolo, quindi, può essere un soggetto, pubblico o privato, che abbia interesse a rivestire un ruolo di garanzia tra tutte le componenti e gli utenti coinvolti. Tale ruolo potrebbe essere rivestito, ad esempio, da un ente pubblico a garanzia dei processi di sviluppo di modelli di AI in ambito medico a partire da dati di pazienti, senza che questi siano ceduti dai pazienti ai soggetti che effettuino la ricerca. In altri contesti, come negli ampi scenari della business analisys, la corretta gestione dell’oracolo potrebbe essere assegnata a soggetti terzi e vincolata ad impegni economici direttamente proporzionali alla dimensione del progetto e alla sensibilità dei dati trattati.
Alcune note tecniche.
Le meraviglie prospettate dalla soluzione OpenMined sono basate su una pletora di tecnologie, ognuna delle quali è spesso descritta come “disruptive” alludendo alla loro potenzialità di modificare radicalmente, ed in tempi molto contenuti, logiche di mercato, equilibri tra domanda ed offerta di prodotti e servizi, rapporti tra aziende o gruppi di potere dominanti ed emergenti:
– Deep learning
– Federated learning
– Homomorphic Encryption
– Blockchain Smart Contracts
Deep Learning.
OpenMined fa diretto riferimento al modello delle reti neurali artificiali. Il tema però si può declinare anche in altre forme di apprendimento automatico. In sostanza, si assume che la funzione fondamentale per l’apprendimento sia la capacità del sistema AI di generare, a partire da un insieme di dati di input, un insieme di dati di output in grado di rappresentare la risposta ad un problema per il quale non si conosca direttamente un algoritmo.
Un esempio tipico, in questi scenari, è la predizione del valore più plausibile della quotazione in borsa di una certa azione a partire dallo storico del suo andamento, semmai esteso a quello dell’intero mercato azionario: l’insieme di input è lo storico degli andamenti del mercato, l’output il valore previsto per la quotazione del giorno successivo.
In ambito sanitario, invece, uno scenario altrettanto tipico riguarda l’analisi di una MRI (magnetic resonance imaging) per identificare l’eventuale presenza di anomalie: l’insieme di input può essere costituito dai pixel dell’immagine e l’output da un indicatore di anomalia.
La possibilità di migliorare l’efficacia di questi sistemi, attraverso l’apprendimento, si basa sulla capacità del modello di modificare il valore, numerico, di una serie di indicatori interni dello stato del sistema stesso, nel tentativo di allineare i propri risultati a quelli indicati come corretti durante le fasi di apprendimento.
Federated learning.
Un modello di apprendimento è definito “federato” quando non richiede che i dati su cui insiste l’elaborazione siano centralizzati in un’unica struttura dati: una serie di dispositivi di calcolo possono lavorare in modo indipendente su una propria porzione di dati. Il fornitore dell’applicazione condivide il proprio modello di previsione con gli utenti, i quali possono personalizzarne il comportamento, consentendogli di lavorare sui propri dati, direttamente sui propri dispositivi. Questa tecnica solleva gli utenti dal dover continuamente condividere i propri dati con il fornitore dell’applicazione, tra l’altro evitando di introdurre problemi di traffico dati e ritardi nell’elaborazione. Al verificarsi delle condizioni previste dallo sviluppatore di questo tipo di applicazioni, i dispositivi degli utenti ed il cloud del fornitore possono scambiarsi informazioni per collaborare nel miglioramento dell’applicazione.
Sia Google che Apple utilizzano un simile approccio per aumentare, e personalizzare, la capacità predittiva delle parole digitate sulle tastiere di smartphone e tablet. In questo scenario, tradizionalmente, non si ha una garanzia “matematica” del mantenimento della privacy degli utenti, alcuni dati vanno comunque al produttore dell’applicazione. Nell’approccio di OpenMined si ha invece questa garanzia matematica.
Crittografia omomorfica.
La crittografia omomorfica è una particolare forma di crittografia che dispone di proprietà di sicurezza molto particolari. Come ogni forma robusta di crittografia moderna, garantisce matematicamente che un dato cifrato possa essere recuperato in modo piuttosto semplice esclusivamente dal proprietario di una apposita “chiave”. La mancata conoscenza di questa informazione rende molto difficile il recupero del dato di partenza: con le attuali potenze di calcolo arriva a richiedere anche migliaia di anni.
L’uso della crittografia forte consente al proprietario di un certo dato di cifrare le proprie informazioni e consegnarle ad un proprio fornitore perché le memorizzi per lui, avendo la ragionevole certezza che quest’ultimo non possa capire cosa stia effettivamente memorizzando.
In uno schema di crittografia omomorfica, in più, il proprietario dei dati può richiedere a chi li stia memorizzando per lui di eseguire delle operazioni matematiche sui dati che sta detenendo. Il fornitore sarà in grado di eseguirle correttamente, ma non sarà in grado di comprenderne il significato, il valore ed i risultati.
Blockchain e smart contracts.
In estrema sintesi, una blockchain non è altro che un database di informazioni distribuito in un elevato numero di installazioni, ognuna delle quali replica una propria copia integrale delle informazioni. Una serie di vincoli matematici assicura a tutti i soggetti che nessuno potrà modificare o cancellare i dati di questo database senza aver condiviso e veder riconosciuta la liceità della propria richiesta.
Uno “smart contract” tecnicamente è un blocco di codice, memorizzato nella blockchain e per questo non alterabile. L’esistenza di tale codice consente di implementare meccanismi di esecuzione di istruzioni in modo verificabile da tutti i nodi della rete. Ogni partecipante ha infatti la garanzia che alcune informazioni nella blockchain sono state correttamente processate da algoritmi verificabili e che i corretti output sono stati memorizzati nella blockchain in modo affidabile.
—————