Opportunità di crescita economica e maggiore livello di benessere per ogni individuo sono i due ambiti nei quali le applicazioni di intelligenza artificiale faranno la differenza. a patto che se ne faccia un buon uso e che il patrimonio informativo non si concentri nelle mani di pochi soggetti globali. L'intelligenza artificiale rientra dunque fra le tecnologie che creeranno un enorme impatto sociale ed economico vi è sicuramente anche l’intelligenza artificiale (AI, da Artificial Intelligence), poiché, già oggi, sta ridefinendo il modo in cui lavoriamo, viviamo e risolviamo i problemi.
Di seguito, analizziamo alcuni aspetti rilevanti degli scenari internazionali e nazionali, l'impatto e i possibili obiettivi futuri dell'AI, con una panoramica sulle architetture di sviluppo per Machine e Deep Learning. Ci accompagnano in questa analisi Giovanni Miragliotta dell’Osservatorio Artificial Intelligence e Manuel Roveri del Politecnico di Milano.
- Intelligenza artificiale: gli scenari internazionali
- L'Europa per l'AI, con AI-Watch e Claire
- La strategia nazionale per l'Intelligenza artificiale
- I 7 settori chiave dell’AI
- Il mercato dell’AI in Italia
- Chatbot e Virtual Assistant guidano le soluzioni
- L’impatto dell’AI sulla società civile
- Gli obiettivi futuri per l’AI
- Le architetture per lo sviluppo di Machine e Deep Learning
- L’architettura IT a quattro livelli
- Il Cloud semplifica l’applicazione dell’AI
- L'Intelligenza artificiale verso l’Edge Computing
Intelligenza artificiale: gli scenari internazionali
L’AI è stata definita dalla Commissione Europea una priorità assoluta, anche in virtù degli importanti impegni finanziari da parte delle principali economie mondiali quali Cina, Stati Uniti e Canada, ognuna con un proprio approccio strategico. Anche l’Europa ha recentemente presentato un piano per uno sviluppo comunitario e un libro bianco per un’AI che sia affidabile e sicura con l’uomo al centro del suo sviluppo.
Già gli Stati membri si erano impegnati a definire strategie nazionali in linea con i principi etici portati avanti dall’Unione Europea e, dal luglio 2019, anche l’Italia ha una propria Strategia Nazionale per l’Intelligenza Artificiale.
Un passo importante che farà da traino a un mercato che in Italia, oggi, è in una fase poco più che embrionale, ma con un grande potenziale di crescita. Da questo documento, infatti, si produrrà nei prossimi mesi il Piano Italiano per l’AI, da cui ci si aspetta l’attivazione di investimenti pubblici dedicati allo sviluppo delle tecnologie e delle applicazioni di AI per circa un miliardo di euro entro il 2025.
Un altro aspetto importante per lo sviluppo di applicazioni di intelligenza artificiale è l’iniezione di fiducia che le istituzioni danno alle imprese italiane. Nel corso del 2019, le imprese hanno mostrato una maggior consapevolezza e hanno incominciato a sviluppare numerosi progetti di AI, creando un mercato di 200 milioni di euro.
Questi dati sono la sintesi della ricerca dell’Osservatorio Artificial Intelligence della School of Management del Politecnico di Milano, che da tre anni sta monitorando il mondo dell’AI, sotto diversi aspetti, ed è per questo un documento di riferimento, non solo a livello nazionale.
L'Europa per l'AI, con AI-Watch e Claire
AI-Watch è l’Osservatorio Europeo sull’intelligenza artificiale, che nasce per la necessità della Commissione di “seguire sistematicamente gli sviluppi relativi all’AI, per esempio le politiche degli Stati membri, l’adozione dell’AI e il suo impatto sul mercato del lavoro e sulle capacità relative”. Ciò comporta la necessità per AI-Watch di interagire con una pluralità di attori quali pmi, società civile, unioni sindacali, mondo accademico, enti pubblici. Al proposito l’Osservatorio Artificial Intelligence del Politecnico di Milano - dal quale abbiamo tratto questa definizione - sta avviando una collaborazione per studiare l’impatto dell’AI sulle imprese.
Claire (Confederation of Laboratories for Artificial Intelligence Research in Europe) è invece un network di ricercatori, laboratori e associazioni scientifiche con obiettivi specifici: investire sulla ricerca di base, fornire infrastrutture alle pmi e promuovere un studio interdisciplinare sugli impatti dell’AI.
Il Governo italiano è stato uno dei primi a patrocinare Claire e AIxIA, l’Associazione Italiana per l’Intelligenza Artificiale, è stata la prima ad aderire. Oggi, ne fanno parte anche il Laboratorio Aiis (Artificial Intelligence and Intelligent Systems) del Cini (Consorzio Interuniversitario Nazionale per l’Informatica) e la Fondazione Bruno Kessler, oltre alle altre realtà europee.
La strategia nazionale per l'intelligenza artificiale
L’intelligenza artificiale, si sa, è una potente leva di competitività sul fronte economico, con importanti risvolti su quello occupazionale. Per questo si è resa necessaria una strategia nazionale che ne seguisse lo sviluppo. Così, un gruppo di 30 esperti italiani ha messo a punto il documento, indicando visione e obiettivi.
«L’evoluzione di una tecnologia dirompente come l’AI deve essere governata abbracciando una visione organica, per evitare gli utilizzi potenzialmente dannosi per l’uomo e per la società nel suo complesso. L’obiettivo è accompagnare il Paese non solo nella Quarta Rivoluzione Industriale ma anche verso una vera e propria Società 5.0, sempre più digitale, in cui l’AI generi opportunità di crescita e di benessere per tutti gli individui, in linea con l’articolo 3 della Costituzione italiana», si legge nel documento ufficiale.
L’utilizzo etico dell’intelligenza artificiale è il punto centrale della strategia, che mira a contrastare squilibri sociali e territoriali potenzialmente derivanti da un uso inconsapevole dell’AI. A questo riguardo è stata posta particolare attenzione alle esigenze delle piccole e medie imprese, considerato il ruolo che rivestono nel nostro Paese in termini sia occupazionali sia di valore aggiunto.
I sette settori chiave dell’AI
Considerando l’assetto produttivo italiano, il Governo ha identificato sette settori chiave, ai quali verrà data massima priorità: Industria e manifattura; Agroalimentare; Turismo e cultura; Infrastrutture e reti energetiche; Salute e previdenza sociale; Città e mobilità intelligenti; Pubblica amministrazione.
Verso questi settori il Governo intende indirizzare gli investimenti, al fine di massimizzare l’efficacia degli interventi messi in campo e l’adozione dell’AI in Italia.
Nell’ambito di Industria e Manifattura, le applicazioni riguarderanno la robotica intelligente per il controllo di processi industriali, l’embedded AI per il settore automotive, le applicazioni in ambito IoT, smart object e smart vehicle.
Oggi, dopo banche e finanza, il settore manifatturiero è il secondo mercato per diffusione di applicazioni di AI con il 13% di share, insieme alle utility.
Il mercato dell’AI in Italia
Con una survey che ha coinvolto 205 aziende, di cui l’86% grandi e il 14% di medie dimensioni, principalmente nel settore manifatturiero (26%), Gdo&Retail (10%) e bancario (10%), il Politecnico di Milano, attraverso l’Osservatorio Artificial Intelligence, ha fotografato il mercato dell’AI in Italia che, tra software, hardware e servizi, nel 2019 ha raggiunto il valore 200 milioni di euro.
La maggior parte della spesa è dedicata a software, seguita dai servizi (per l’integrazione, la personalizzazione, la consulenza e la formazione). La spesa in hardware è invece ancora contenuta per la diffusione di soluzioni spesso as-a-service, che non richiedono investimenti diretti in hardware computazionale e di archiviazione, ma anche perché la maggior parte dei progetti è ancora in fase di prototipo e non richiede una potenza computazionale superiore.
Tra i diversi settori, l’AI è diffusa in particolare nelle banche e finanza (25% del mercato), nella manifattura (13%), nelle utility (13%) e nelle assicurazioni (12%). Rispetto a un anno fa, le imprese italiane hanno mostrato una maggior consapevolezza: il 90% ha compreso che l’AI può replicare specifiche capacità dell’intelligenza umana e ben il 79% vede l’AI come un’opportunità. Tant’è che cresce la maturità dei progetti sviluppati dalle aziende, anche se solo il 20% è a regime e l’11% in via di implementazione. Tuttavia, sono ancora molte le imprese che si trovano in una fase di avvicinamento. Poco più della metà del campione ha adottato un approccio esplorativo per identificare un business case in base alle priorità, mentre il 47% ha ricevuto una spinta dalla filiera: clienti che richiedono servizi e prodotti più innovativi, fornitori tecnologici, competitor.
Il motivo principale che frena l’avvio di un progetto di AI è la mancanza di competenze, per l’89% delle organizzazioni, seguita dalla reperibilità di figure specializzate sul mercato del lavoro e dai problemi di compliance nella privacy.
Chatbot e Virtual Assistant guidano le soluzioni
La quota principale della spesa (il 33%) è dedicata a progetti di Intelligent Data Processing, gli algoritmi per analizzare ed estrarre informazioni dai dati, seguiti da quelli di Natural Language Processing e di Chatbot/Virtual Assistant (28%) in grado di comprendere il linguaggio naturale ed eventualmente fornire risposte a un interlocutore.
In quest’ultima classe il 12% delle aziende ha già progetti a regime, che spesso non si limitano al solo servizio di assistenza ai clienti, ma sono utilizzati in ambito HR (risorse umane) per la selezione dei candidati o per migliorare l’interazione con comandi vocali.
Faticano, invece, a diffondersi le soluzioni di AI nei sistemi di Robotic Process Automation (RPA): solo nel 5% dei casi l’AI guida i processi di RPA in modo autonomo e intelligente. Sono rare anche le soluzioni fisiche di AI, come gli Autonomous Vehicle, gli Autonomous Robot e gli Intelligent Object, il cui potenziale è ancora inesplorato, anche se non mancano le prime sperimentazioni.
L’impatto dell’AI sulla società civile, tra occupazione e disuguaglianze
Il fronte occupazionale ha da subito monopolizzato l’attenzione per l’impatto che l’AI potrebbe avere sul saldo occupazionale, ovvero il bilancio tra posti di lavoro creati e distrutti dall’AI e dalla sua evoluzione nel tempo.
«Oggi, però, sta iniziando ad affermarsi l’opinione secondo cui l’AI non genererà scompensi di rilievo e, anzi, rappresenti una necessità per garantire gli attuali livelli di benessere a fronte dell’invecchiamento della popolazione attiva», spiega Giovanni Miragliotta, direttore dell’Osservatorio Artificial Intelligence. «Si evidenzia però un rischio di polarizzazione e di inasprimento delle disuguaglianze sociali, in virtù della forte domanda di competenze specialistiche. A questo va aggiunto lo squilibrio che deriva dalla concentrazione del patrimonio informativo nelle mani di pochi soggetti globali. Questo è davvero il terreno su cui dovrebbero concentrarsi le riflessioni e le azioni degli enti governativi, nazionali e internazionali».
Gli obiettivi futuri per l’AI
Gli obiettivi da raggiungere, indicati dalla Strategia Nazionale per l’Intelligenza Artificiale, riguardano alcuni punti precisi. Prima di tutto, c'è l'obiettivo di incrementare gli investimenti, pubblici e privati, nell’AI e nelle tecnologie correlate.
Segue quello di potenziare l’ecosistema della ricerca e dell’innovazione nel campo dell’AI e di sostenere l’adozione delle tecnologie digitali basate sull’AI, oltre a rafforzare l’offerta educativa a ogni livello, per portare l’AI al servizio della forza lavoro.
Da non tralasciare vi è poi anche l'intento di sfruttare il potenziale dell’economia dei dati, vero e proprio carburante per l’AI, di consolidare il quadro normativo ed etico che regola lo sviluppo dell’AI e di promuovere la consapevolezza e la fiducia nell’AI tra i cittadini.
Infine, nella strategia nazionale è indicato anche l'obiettivo di rilanciare la Pubblica amministrazione e rendere più efficienti le politiche pubbliche, infine, favorire la cooperazione europea e internazionale per un’AI responsabile e inclusiva.
Le architettura per lo sviluppo di Machine e Deep Learning
Sul fronte tecnologico, architetture distribuite composte da Edge e Cloud Computing capaci di elaborare il più possibile i dati presso i sistemi Edge rappresentano la principale direzione che stanno prendendo le piattaforme per lo sviluppo di Machine e Deep Learning, secondo Manuel Roveri, professore associato del Deib, il Dipartimento di Elettronica e Informatica e Bioingegneria del Politecnico di Milano.
Negli ultimi anni l’evoluzione tecnologica delle soluzioni Cloud e delle infrastrutture di computazione ha intercettato in un modo sempre più deciso e virtuoso la crescente richiesta di soluzioni di machine learning per utenti e aziende. Infatti, l’approccio Cloud di queste soluzioni garantisce scalabilità, affidabilità, migliori prestazioni, ed un abbassamento dei costi legati alla componente IT permettendo, nel frattempo, agli sviluppatori di applicazioni di machine learning basate su queste soluzioni di concentrarsi sulle specifiche necessità applicative e sugli obiettivi di business.
L’architettura IT a quattro livelli
Come mostrato nello schema qui sotto, è possibile organizzare l’architettura IT per machine learning in quattro differenti livelli: Machine Learning Framework, Computing Framework, Virtual Machine Manager, Computing Cluster. Il livello più basso, il Computing Cluster, contiene i server per l’elaborazione e lo storage. Parallelizzazione e scalabilità sono aspetti chiave di questo livello per supportare l’elaborazione e l’addestramento di modelli di machine learning (in particolare per le reti di Deep Learning che richiedono elevata computazione e occupazione di memoria).
Oltre alle General Purpose Cpu, i server per l’elaborazione possono avere (e talvolta sono strettamente necessarie) delle Graphics Processing Unit (Gpu) che sono in grado di aumentare le prestazioni grazie alla struttura altamente parallelizzata dell’elaborazione. I server per lo storage devono supportare i multiple storage system che includono distributed/parallel file system per rendere più efficiente l’accesso ai dati, un altro aspetto chiave nei sistemi basati su reti di Deep Learning che richiedono un’enorme quantità di dati per essere addestrate.
Esempi di framework
Computing Framework | Standalone (OS) | |
Machine Learning | Spark Mllib, BigDL, Mahout | Scikit-learn, Torch, Pandas, Numpy, Matplotlib |
Deep Learning | TensorFlowOnSpark, Deeplearning4j, BigDL | TensorFlow, Caffe, Apache MXNet, Keras, Theano, Microsoft CNTK, Pytorch |
Virtual machine manager
Il livello di Virtual Machine Manager permette la virtualizzazione delle risorse hardware attraverso Hypervisor o Container.
Il concetto chiave di questo livello è la scalabilità della soluzione che viene implementata aggiungendo (in modo automatico o semiautomatico) Virtual Machine per l’elaborazione di soluzioni di machine learning. Esempi di Virtual Machine Manager per questo livello sono VMware, Xen, Kvm, HyperX, Kybernetes.
Computing framework
Il livello successivo, cioè il Computing Framework, ha come scopo quello di fornire una piattaforma di computazione per l’elaborazione di soluzioni di machine learning. Questi framework sono tipicamente composti da differenti moduli quali, ad esempio, Cluster Manager, Data Storage, Data Processing Engine, Graph Computation e Programming Language Interpreter.
L’aspetto chiave di questo livello è che un’applicazione di machine learning (che può richiedere elevata computazione e numerosi accessi ai dati) operante in un Computing Framework viene distribuita e gestita tra le differenti macchine virtuali fornite dal Virtual Machine Manager per aumentarne le prestazioni.
Esempi di questi Computing Framework sono Hadoop, Spark e Flink, mentre esempi di moduli di Cluster Manager e Data Storage sono Apache Mesos, Hadoop Yarn e Hdfs, Hbase, Amazon S3, Cassandra, Mongo DB, Spark Sql, rispettivamente.
Machine learning framework
Il livello più alto, cioè il Machine Learning Framework, è quello che contiene i framework di Machine e Deep Learning. I framework di machine learning tipicamente coprono tematiche di classificazione, regressione, clustering, anomaly detection e data preparation e possono anche includere soluzioni basate su reti neurali. Differentemente, i framework di Deep Learning si focalizzano sulle reti neurali profonde (ad esempio, le Convolutional Neural Network).
I framework per Machine e Deep Learning si caratterizzano inoltre per la capacità di operare su un Computing Framework (il livello precedente dell’architettura) o per la possibilità di operare in modalità standalone, e quindi direttamente nel Sistema operativo della Virtual Machine. Esempi di framework per Machine e Deep Learning sono mostrati nella tabella sottostante.
È importante notare che i framework di Deep Learning sono tipicamente sviluppati per poter essere eseguiti e sfruttare architetture basate su Gpu, mentre i framework standalone sono tipicamente organizzati come librerie software o shell.
Il Cloud semplifica l’applicazione dell’AI
Grazie all’approccio Cloud, questa architettura a quattro livelli semplifica l’accesso a soluzioni di Machine/Deep Learning sia per la fase di progettazione (potendo sfruttare soluzioni di Machine/Deep Learning messe a disposizione dai framework) sia nella messa a punto del progetto, dove la complessità e la scalabilità della soluzione IT e gestita attraverso la virtualizzazione delle risorse. In questo scenario, tutti i principali player in ambito Cloud forniscono in modalità servizio, cioè as-a-service: soluzioni di machine learning (machine-learning-as-a-service), piattaforme per machine learning (ML-platform-as-a-service) e infrastrutture per machine learning (ML-infrastructure-as-a-service).
La scelta di quale modalità di servizio utilizzare per sviluppare la propria soluzione di Machine/Deep Learning dipenderà dalla flessibilità richiesta e dalle competenze richieste per sviluppare tale soluzione.
Utilizzare servizi in modalità machine-learning-as-a-service richiede minime conoscenze in ambito Machine/Deep Learning, ma permette di sfruttare solo i modelli e le funzionalità predefinite.
Un approccio basato su ML-platform-as-a-service richiede di scegliere e configurare modelli di Machine/Deep Learning che però sono già messi a disposizione dal framework o platform considerati.
Infine, un approccio basato su ML-infrastructure-as-a-service garantisce la massima flessibilità in termini sia hardware sia software, ma richiede di progettare e sviluppare tutte le componenti di Machine/Deep Learning partendo da librerie e shell a disposizione.
Se ti interessano le possibili combinazioni tra modellistica matematica e intelligenza artificiale, leggi anche questo articolo
Intelligenza artificiale verso l’Edge Computing
Nonostante il Cloud rappresenti attualmente la principale piattaforma tecnologica per il machine learning, inviare tutti i dati al Cloud per l’elaborazione non è la soluzione ammissibile quando l’elaborazione dei dati induce una decisione che deve essere presa in tempi rapidi (ad esempio, generare allerte/allarmi). Questo è esattamente lo scenario in cui recentemente si è inserito l’Edge Computing, il cui scopo è portare la computazione (e in particolare la computazione intelligente) il più possibile vicino a dove i dati sono generati.
L’Edge Computing può essere considerato come un piccolo Cloud vicino ai sensori per garantire elaborazioni rapide, rimuovendo la necessità di trasferire tutti dati al Cloud. In questo modo è possibile attivare delle azioni/reazioni in tempi rapidi, ridurre la banda di trasmissione richiesta e, di conseguenza, ridurre i consumi energetici legati alla trasmissione.
Il futuro del machine learning sarà quindi quello di architetture distribuite composte da Edge e Cloud Computing capaci di elaborare il più possibile i dati presso i sistemi Edge (così anche da garantire privacy e security) e di trasferire presso il Cloud solo le informazioni aggregate o rilevanti per decisioni strategiche.