Nell’ultimo decennio, l’industria e la società sono state radicalmente trasformate dalla rivoluzione digitale in corso. In questo contesto, l’UE ha riconosciuto l’intelligenza artificiale come un’area di importanza strategica per lo sviluppo economico futuro dell’Unione, contribuendo alla trasformazione digitale della nostra società, fornendo opportunità per un maggiore sviluppo tecnologico e l’inserimento di attività analitiche avanzate in tutti i settori produttivi, in particolare nelle imprese e nella pubblica amministrazione.
Figura 1: Stratificazione di alcuni concetti chiave del mondo dell’AI. Il Deep Learning è ottenuto utilizzando un particolare tipo di Reti Neurali Artificiali, le quali a loro volta sono uno dei tanti modelli di Machine Learning. Quest’ultimo rappresenta una delle strade più promettenti per lo sviluppo dell’AI.
Alcuni dei concetti chiave che caratterizzano l’universo dell’IA e le relazioni che intercorrono fra di essi sono rappresentati in Figura 1.
Un glossario per l’intelligenza artificiale: da Algoritmo a Unsupervised Learning
Vediamo ora le definizioni di questi concetti, a partire dall’IA stessa.
Intelligenza artificiale (IA)
«AI is whatever hasn’t been done yet.»
(Larry Tesler, 1970)
Con il termine Intelligenza Artificiale (IA o, in lingua inglese, AI, Artificial Intelligence) si intende l’insieme di modelli numerici, algoritmi e tecnologie che riproducono la percezione, il ragionamento e l’apprendimento umano, nonché l’interazione fra uomo e computer. L’area di ricerca dell’IA nasce oltre 60 anni fa. Fino ad allora si riteneva che solo gli umani fossero in grado di perseguire obiettivi in totale autonomia e prendere decisioni in merito.
È importante innanzitutto osservare che la definizione di AI è variata nel corso degli anni, e ancora oggi non esiste una definizione di IA universalmente riconosciuta. La più diffusa scuola di pensiero considera oggi l’IA come l’insieme di quelle abilità mostrate dai sistemi hardware e software che, a un osservatore umano, possono apparire come pertinenza esclusiva dell’intelligenza umana (o più in generale, animale). Ne consegue che i confini dell’IA non soltanto sono soggettivi (la percezione di cosa sia prerogativa umana dipende da persona a persona), ma variano anche nel tempo e si spostano sempre più in là man mano che nuovi obiettivi vengono raggiunti. Questo aspetto, noto come “AI effect”, è stato ben sintetizzato dalla frase dell’informatico statunitense Larry Tesler riportata sopra. Oggi si considerano a tutti gli effetti come domini dell’IA la visione artificiale, il riconoscimento del linguaggio, lo sviluppo di sistemi esperti. In conclusione, quando si legge e si scrive di IA è sempre opportuno prestare attenzione al contesto di utilizzo del termine, e non dimenticare che il concetto stesso di IA è fortemente dibattuto fra scienziati e filosofi.
Machine Learning (ML)
«Machine Learning is the field of study that gives computers the ability to learn without being explicitly programmed.»
(Arthur Samuel, 1959)
«A computer program is said to learn from experience E with respect to some task T and some performance measure P if its performance on T, as measured by P, improves with experience E.»
(Tom M. Mitchell, 1997)
Contrariamente all’IA, il concetto di ML è storicamente stato meglio definito. Con esso si intende lo studio di algoritmi in grado di migliorare in modo automatico le proprie performance attraverso l’esperienza (ossia attraverso l’esposizione a dati). Il ML rappresenta una delle possibili strade verso l’IA, e forse – almeno ad oggi – la più promettente. Uno degli strumenti principali alla base del successo del ML è rappresentato dalle reti neurali artificiali (Artificial Neural Networks, ANN). Le ANN, sviluppate a partire dagli anni ’60, hanno visto una rapidissima diffusione negli ultimi 15 anni per via dei grandi successi ottenuti in molti campi dell’IA. Oltre alle ANN, altri importanti modelli di ML sono i Gaussian Processes, le Support Vector Machines e i Decision Trees.
Artificial Neural Networks (ANN)
Consideriamo, come esempio paradigmatico di algoritmo di ML, quello delle ANN. Una ANN è costituita da unità di elaborazione fondamentali (i neuroni artificiali), che eseguono delle operazioni elementari sugli input ricevuti. Queste operazioni consistono nel moltiplicare gli input per dei pesi (weights), sommarli fra di loro e sottrarvi una costante, detta bias. In seguito, il risultato viene processato mediante una funzione non lineare, detta “funzione di attivazione” (spesso di tipo sigmoide, come la tangente iperbolica), a evocazione del comportamento non lineare dei neuroni biologici. Il segnale così elaborato viene poi trasmesso in cascata ad altri neuroni. Nelle maggior parte dei casi, i neuroni sono organizzati in strati (layers). Il primo layer riceve l’input del modello (come, ad esempio, i pixel di una foto) e, dopo averlo trasformato attraverso semplici calcoli, lo passa al layer successivo. Il dato passa dunque attraverso successive trasformazioni, fino a raggiungere il layer finale. I neuroni appartenenti a tale layer forniscono l’output della ANN (come, ad esempio, una descrizione testuale del contenuto della foto). L’architettura di una ANN di esempio, con due layer intermedi, è rappresentata in Figura 2.
Figura 2 Rappresentazione di una ANN. A sinistra è rappresentato un neurone artificiale, dove i valori -rappresentano gli input del neurone, l’esito della trasformazione affine (moltiplicazione per i pesi e sottrazione del ) e l’output del neurone. La funzione di attivazione considerata in figura è la tangente iperbolica (tanh). A destra è rappresentata invece l’intera ANN.
L’output della rete è quindi determinato dall’insieme dei suoi “parametri”, costituiti da pesi e bias. Quando la rete nasce, i suoi parametri sono assegnati in modo randomico, e randomici saranno dunque anche i suoi output. È possibile però “addestrare” l’ANN, modificando opportunamente i suoi parametri per far sì che i suoi output si avvicinino il più possibile a quelli attesi. Tale operazione, detta training è eseguita sfruttando un dataset di input (training dataset), per cui gli output attesi sono noti. Il training consiste in un processo iterativo di ottimizzazione matematica, mediante il quale i parametri vengono corretti sulla scorta di una funzione obiettivo (loss function), data dalla discrepanza fra output osservati e output appartenenti al training dataset. I processi di training e testing sono riassunti in Figura 3. Con riferimento alla definizione di Mitchell sopra riportata, quando si parla di ANN, l’esperienza E è fornita dal training dataset, il task T consiste nel predire gli output in esso contenuti, e la misura P è data dalla loss function.
Figura 3 Rappresentazione del processo di training e testing di una ANN. Il training dataset viene utilizzato per addestrare la ANN, mediante un processo iterativo nel quale a ciascun passo viene valutata la loss function, vengono calcolati i gradienti rispetto ai parametri, i quali vengono poi aggiornati mediante un opportuno algoritmo di ottimizzazione. Quando l’addestramento è concluso, le performance della rete sono valutate rispetto a un testing dataset.
Deep Learning (DL)
Con il termine Deep Learning (“apprendimento profondo”) si intende una famiglia di algoritmi di Machine Learning basati su reti neurali con un alto numero di strati (layer). Un esempio di deep ANN è mostrato in Figura 4. Con l’aumentare della profondità della rete, essa diventa più adatta a descrivere modelli progressivamente più astratti. Secondo una comune interpretazione, nell’analizzare ad esempio la foto di un cane, i primi strati permetterebbero di identificare i bordi, quelli successivi elementi quali occhi, naso e zampe e infine gli ultimi strati l’intero animale.
Figura 4. Rappresentazione di una “deep ANN”, lo strumento base del Deep Learning
Dati e Fisica, due aspetti complementari
Gli algoritmi di ML permettono, come detto, di fornire risposte senza essere esplicitamente programmate per rispondere a un dato interrogativo, ma apprendendo a farlo in modo autonomo sulla scorta dei dati disponibili. Molte volte, tuttavia, i dati non sono l’unica fonte di informazione di cui si dispone. Oltre ad essi, può essere disponibile una conoscenza della “fisica” del problema, ossia delle leggi (basate su principi primi oppure su osservazioni empiriche) espresse nella forma di relazioni causa-effetto. I modelli di IA, e in particolare di ML, possono beneficiare di questa conoscenza per migliorare la stabilità e l’affidabilità delle proprie risposte.
Quando poi si ha una profonda conoscenza delle leggi che governano un dato fenomeno o processo (naturale, sociale, economico, biologico, fisico, industriale) è possibile costruire modelli basati unicamente sui principi primi. Queste leggi vengono tradotte in opportuni modelli matematici (tipicamente sotto forma di equazioni differenziali – si pensi ad esempio alle leggi della dinamica di Newton), la cui soluzione (eventualmente approssimata) viene ottenuta attraverso software specializzati. Si parla in questi casi di physics-based models (modelli basati sulla fisica), in antitesi ai data-driven models (modelli basati sui dati), come ad esempio le ANN. Va osservato che qui il termine fisica va inteso in senso lato, facendo riferimento a qualunque genere di processo o fenomeno del mondo reale.
Figura 5. Due approcci modellistici a confronto: modelli basati sulla fisica (in alto) e modelli basati sui dati (in basso). Mentre i secondi sono delle “black-box”, dal momento che l’algoritmo estrae in modo automatico ma non comprensibile dall’uomo la ricchezza contenuta nei dati, i primi sono delle “white box”, basate su principi primi, conoscenza fisica e comprensione meccanicistica dei processi rappresentati.
L’universo physics-based e quello data-driven, d’altra parte, non sono inconciliabili fra loro (vedi Figura 5). Al contrario, molte interazioni sinergiche sono possibili. In Figura 6 è rappresentata una mappa di possibili contatti fra modellistica guidata dalla fisica e ML. La prima, ad esempio, può regolarizzare i modelli di ML imponendo il soddisfacimento di determinate leggi fisiche, oppure aggiungendo dati generati mediante simulazioni al computer ai dataset esistenti (data augmentation). I metodi data-driven, dal canto loro, possono essere di supporto ai modelli basati sulla fisica generando dei surrogati che ne approssimo gli output in tempo reale, quantificando l’incertezza deli output stessi, oppure supportando l’identificazione dei parametri fisici da cui i modelli dispendono.
Figura 6. Le sinergie fra modelli basati sulla fisica e modelli di ML basati sui dati, per la realizzazione della data-models fusion.
Quando si tratta di decidere se affidarsi ai modelli basati sulla fisica o sui dati, non esiste una risposta univocamente valida. Molto spesso, il punto di ottimo sta nel mezzo: basarsi sulla conoscenza fisica – se disponibile – quando si ha un ragionevole grado di confidenza in essa, e utilizzare i dati disponibili per colmare il gap di conoscenza. Tale cooperazione virtuosa prende il nome di data-models fusion (vedi Figura 5). Come dire che esperienza (quella espressa dai dati) e teoria (quella codificata dalle leggi fisiche) trovano maggiore efficacia nella loro sintesi. Alcuni esempi di modelli basati sulla fisica o sulla fusione dati e fisica sono rappresentati in Figura 7 e Figura 8.
Sia che ci si affidi ai modelli fisici che a quelli basati sui dati, non va dimenticato che entrambi sono inevitabilmente caratterizzati da incertezza (di natura epistemica, di misura o aleatoria). L’insieme delle tecniche che permettono di quantificare e – quando possibile – controllare tale incertezza, costituiscono il campo di studi dell’Uncertainty Quantification (UQ). Un’adeguata quantificazione dell’incertezza è fondamentale per un utilizzo affidabile e consapevole dell’IA.
Figura 7 Due esempi di modelli basati sulla fisica. A sinistra, un modello matematico di un cuore umano, che descrive in una logica multi-scala i processi fisici che concorrono alla funzione cardiaca, dalla biochimica subcellulare, all’elettrofisiologia e alla meccanica dell’organo (credits: iHEART team, https://iheart.polimi.it/). A destra, un modello idrodinamico e aerodinamico di un’imbarcazione a vela, in grado di descrivere e quantificare le forze scambiate nelle interazioni scafo-fluido e vela-vento (credits: CMCS Chair – Prof. A.Quarteroni, EPFL, Lausanne).
Figura 8. Un esempio di modello che coniuga la conoscenza “fisica” del processo con i dati che fluiscono in tempo reale. La figura rappresenta una schermata di epiMOX, una piattaforma sviluppata presso il Laboratorio MOX e che permette di visualizzare e analizzare i dati relativi all’evoluzione della pandemia COVID-19 a livello nazionale e regionale, rappresentare indicatori critici ed effettuare previsioni e analisi di scenario sull’evoluzione futura della pandemia (https://www.epimox.polimi.it/).
.
I Gemelli Digitali (Digital Twins)
La sempre maggior diffusione dell’IA e dei modelli matematici sta portando all’affermazione del paradigma del digital twin (il “gemello digitale”). Citando l’AIAA Institute Position Paper 2020, il digital twin è definito come un insieme di costrutti di informazioni virtuali che mimano struttura, contesto e comportamento di un individuo (o un asset fisico), aggiornato dinamicamente grazie ai dati che gli derivano dal suo physical twin durante l’itero ciclo di vita e grazie a decisioni informate che generano valore. Elemento caratterizzante del digital twin è il dialogo bidirezionale e continuativo con l’entità fisica rappresentata: da una parte, il gemello digitale fornisce informazioni per monitorare e controllare attivamente il gemello fisico, dall’altra le misure prese tramite opportuni sensori aggiornano in tempo reale la rappresentazione interna del gemello digitale, rendendolo (auspicabilmente) una replica sempre più accurata della controparte fisica (vedi Figura 9).
Figura 9. Un esempio di physical twin in ambito sanitario. Nel caso considerato in figura, il “gemello fisico” è rappresentato dal cuore di uno specifico paziente. L’insieme dei dati clinici derivanti dal gemello fisico permette di definire la sua replica digitale, ossia una rappresentazione al computer del cuore o di una sua parte. Le simulazioni al computer effettuate mediante tale gemello digitale forniscono al medico informazioni preziose per la diagnosi e la cura personalizzata del paziente specifico.
Gestire in modo efficiente l’immensa mole di dati che fluisce dagli asset fisici verso le loro repliche virtuali e saperne estrarre conoscenza sono aspetti cruciali per il successo del paradigma del digital twin. Tecnologie abilitanti per l’affermazione dei gemelli digitali sono infatti l’Internet of Things (IoT), il cloud computing e i Big Data. La diffusione capillare di queste tecnologie e il costo sempre più basso delle risorse di calcolo e storage sono da considerarsi fra le ragioni per la recente diffusione dei digital twin nei contesti industriali. Come affermato da Tim Barrett (CEO di CISCO) il XXI secolo può essere definito come l’era degli zettabyte (1 Zettabyte = 1021 byte = 1 triliardo di byte, l’equivalente di 36 milioni di anni di video in alta definizione!).
I digital twin ricoprono un ruolo fondamentale nel contesto della System-of-Systems Engineering (SoSE), l’insieme delle metodologie che permettono di integrare sistemi disegnati per scopi isolati in un unico macrosistema, riunendo le risorse e le capacità dei singoli sottosistemi creando così un sistema più complesso le cui funzionalità e performance sono superiori alla somma di quelle delle singole componenti. Come esempio, si pensi al caccia F-35, composto da 200000 parti, costruite da 1600 fornitori distinti, che dialogano per mezzo di 3500 circuiti integrati su cui vengono eseguite oltre 20 milioni di righe di codice. L’azione coordinata di questo incredibile numero di componenti non sarebbe possibile senza un modello virtuale della complessa rete di interazione che le collega e che monitora in tempo reale i fenomeni meccanici, aerodinamici, acustici ed elettronici legati al funzionamento del mezzo. Altri contesti in cui l’utilizzo di digital twin è ormai consolidato sono l’industria manifatturiera, quella dei trasporti e il settore delle smart cities.
Il paradigma del digital twin, concepito e sviluppato in ambito industriale, sta più di recente venendo adottato anche in ambito sanitario. La spesa sanitaria è in rapida espansione (+7% di crescita ogni anno), un tasso che porterebbe a superare l’intero PIL europeo entro il 2070. Fondamentale quindi ricercare nuove tecnologie per migliorare la prevenzione e la cura. Un ruolo chiave a questo scopo può essere ricoperto dall’IA e dai Big Data, mediante il monitoraggio continuo delle persone per mezzo di sensori indossabili (wearable devices), verso quello che è stato battezzato l’IoH (Internet of Health). Lo sviluppo di gemelli digitali di pazienti specifici (detti anche human avatars) potrebbe rivoluzionare l’industria sanitaria, fornendo in tempo reale indicazioni per la prevenzione, la diagnosi e la cura dei pazienti in modo totalmente personalizzato.
In ciascuno degli ambiti sopra menzionati, tuttavia, i Big Data da soli non bastano: i digital twins devono incorporare capacità di estrarre conoscenza dai dati grezzi, potere predittivo, interpretabilità e conoscenza di dominio (ossia della “fisica” del processo in esame). Per dotare i gemelli digitali di tali caratteristiche, l’elemento vincente è costituito dai modelli matematici basati sulla fisica (physics based). Essi permettono, in primo luogo, di filtrare i dati, rimuovere il rumore ed estrarre le feature di interesse, e in secondo luogo di fornire previsioni, studiare scenari di azione, quantificare l’incertezza degli outcome, e definire strategie ottime di azione. Il Premio Nobel per la Fisica Eugene Paul Wigner (1902 – 1995) parlava di “unreasonable effectiveness of physics based models”. Se già negli anni ’60 egli affermava che “the enormous usefulness of mathematics in the natural sciences is something bordering on the mysterious”, le storie di successo a cui abbiamo assistito nei successivi 60 anni non hanno che dato credito a questa visione.
Ringraziamenti: Questo lavoro è stato preparato nell’ambito del Working Group “Data & Artificial Intelligence” promosso da Assolombarda