Questo sito web utilizza cookie tecnici e, previo Suo consenso, cookie di profilazione, nostri e di terze parti. Chiudendo questo banner, scorrendo questa pagina o cliccando qualunque suo elemento acconsente all'uso dei cookie. Leggi la nostra Cookie Policy per esteso.OK

gli scenari tecnologici

Visione computerizzata, così l’AI (deep learning) può davvero cambiare la società

Una breve storia e uno sguardo sul futuro della visione computerizzata, considerando i cambiamenti determinati negli ultimi anni dall’utilizzo dei big data, gli obiettivi che si stanno raggiungendo e le sfide da affrontare prossimamente. Un articolo della nota scienziata Barbara Caputo

18 Lug 2018

Barbara Caputo

Professore associato al dipartimento di Ingegneria Informatica, Automatica e Gestionale Antonio Ruberti dell’Università “La Sapienza” di Roma, ricercatrice all’IIT-Istituto Italiano di Tecnologia


La visione computerizzata è uno dei campi in cui l’intelligenza artificiale potrebbe, davvero e a tutti gli effetti, svolgere un ruolo importante e concreto per la società. Questo al netto dell’hype che avvertiamo intorno al tema intelligenza artificiale e che, per molti altri campi di applicazione, potrebbe scontrarsi presto con la (deludente) realtà.

Il boom di big data “visivi”

Consideriamo il fenomeno. Flickr ospita ad oggi oltre 6 miliardi di foto; su Facebook vengono caricati giornalmente circa 300 milioni di immagini; la BBC converte più di 400 ore di programmazione per il suo servizio internet iPlayer; YouTube registra oltre 3 miliardi di ore di visualizzazioni di video ogni mese.

Ma tale fenomeno di produzione e diffusione massiva di immagini, e in generale di dati visivi, non è ristretto solo ai social media e alle attività online. Anche la dimensione delle collezioni di immagini e video digitali offline dei privati cittadini sta crescendo vertiginosamente, grazie alle accresciute capacità di memoria di smartphone, tablet e laptop. Si stima che in media ogni famiglia abbia immagazzinato nei propri dispositivi elettronici dotati di telecamere materiale foto e video per un totale di circa 3 TeraBytes.

L’incontro tra visione computerizzata e deep learning

Di fronte a questa enorme mole di immagini l’uso dell’intelligenza artificiale diventa chiave per poterne usufruire, definendo e fornendo nuove soluzioni che rendano possibile la catalogazione, l’analisi e la comprensione automatica dei dati visivi. In particolare, i risultati più interessanti stanno emergendo dall’incontro recente di due settori di ricerca, la visione computerizzata e gli algoritmi di apprendimento profondo (deep learning), che stanno definendo i primi strumenti rivoluzionari per la comprensione e l’analisi automatica di immagini. Grazie ad essi siamo in grado di riconoscere in modo automatico quali oggetti sono presenti in una foto, oppure di stimare l’età e la classe sociale di una persona a partire unicamente da una sua immagine, oppure comprendere all’interno di un video le posizioni di potere tra più persone.

Cos’è la visione computerizzata

La visione computerizzata è un campo di ricerca interdisciplinare, il cui scopo è quello di sviluppare algoritmi in grado di ottenere in maniera autonoma una comprensione delle immagini pari, o superiore, a quella degli esseri umani. Tale “comprensione” è determinata dal capire, a partire dalla visualizzazione di una immagine, quali oggetti essa contiene e in quale posizione si trovano nell’immagine; quali sono le proprietà degli oggetti in essa contenuta e quali sono le relazioni e i legami tra tali oggetti; e così via. Ad esempio, l’analisi automatica di un’immagine scattata in una qualsiasi zona di Roma potrebbe determinare se il paesaggio nella foto rappresenta la veduta di un ambiente cittadino o una spiaggia.

In generale, se una foto è stata scattata in un centro abitato, il sistema di visione computerizzata potrebbe riconoscere la città in cui la foto è stata realizzata, localizzare e riconoscere gli edifici di rilevanza storica in essa contenuti, e separare gli edifici dalla strada, dalle macchine e dal marciapiede. Inoltre, potrebbe localizzare i pedoni e le macchine presenti, e per ciascuna categoria contarli e, se la risoluzione dell’immagine lo permette, identificarli a partire da particolari del loro viso (per le persone) e dalla loro targa (per le macchine).

Questo campo di ricerca è nato negli anni sessanta, inizialmente come attività collaterale dell’intelligenza artificiale. Infatti, mentre da un lato si realizzavano grandi sforzi innovativi nello sviluppo dei sistemi autonomi intelligenti, dall’altro lato il problema della comprensione automatica delle immagini veniva sottovalutato. Nel 1966 Seymour Papert, professore al Massachusset Institute of Technology (MIT), USA, lanciò l’iniziativa di un progetto estivo sulla visione, indirizzato a studenti in cerca di tirocini e il cui scopo era quello di costruire un insieme di programmi in grado di creare una mappa tra l’immagine generata da una telecamera collegata ad un computer, e una descrizione testuale degli oggetti visualizzati e del contesto in cui essi si trovavano. Papert avrebbe voluto integrare tale sistema in un sistema autonomo intelligente, come un robot, capace di ragionare ed elaborare piani e strategie sulla base delle informazioni raccolte da tale sistema visivo. Più’ di sessant’anni dopo, la sfida è ancora aperta, avendo a disposizione sistemi automatici di visione che non sono ancora in grado di raggiungere le capacità di comprensione di un’immagine pari a quella di un bambino di tre anni.

La visione computerizzata con deep learning per classificare immagini

Nel 2012, per la prima volta un algoritmo basato sul deep learning partecipò alla ImageNet Large Scale Recognition Challenge, una competizione aperta ai ricercatori del campo della visione computerizzata di tutto il mondo, il cui obiettivo era quello di classificare correttamente tramite un algoritmo immagini rappresentanti 1000 oggetti differenti, e dove era possibile utilizzare un database di circa 1 milione e mezzo di immagini per “allenare” nell’apprendimento l’algoritmo. Questo algoritmo, sviluppato dai ricercatori dell’università di Toronto e basato sulle reti neurali convolutive di tipo profondo, vinse la competizione con uno scarto del 10% in più rispetto al metodo classificatosi secondo. In tutte le competizioni precedenti, lo scarto medio tra il primo e secondo classificato non era mai stato maggiore del 5%. Da quell’anno, nessun algoritmo non basato sul deep learning è mai riuscito a piazzarsi tra i primi tre classificati.

Questo aneddoto dà una stima quantitativa dell’impatto che ha avuto il deep learning sulla visione artificiale negli ultimi cinque anni. Le reti neurali convolutive sono algoritmi di classificazione introdotti negli anni 80, che cercano di imitare il funzionamento delle strutture neurali dei sistemi biologici. L’idea di rendere tali strutture molto profonde, insieme ai progressi impressionanti nel campo computazionale raggiunti negli ultimi anni, hanno reso possibile l’utilizzo di questi algoritmi con enorme profitto.

Un ingrediente fondamentale del successo del deep learning è la sua capacità, unica nel panorama dell’intelligenza artificiale, di apprendere da grandissime quantità di immagini senza incorrere in problemi di memoria, convergenza o complessità computazionale, imparando in maniera dinamica come rappresentare l’informazione contenuta nelle immagini, insieme a come usarla per riconoscere il contenuto delle immagini. Questo permette di imparare in maniera ottimale entrambe le componenti allo stesso tempo, ottenendo descrittori più’ espressivi di quelli che erano stati sviluppati nel passato combinati a classificatori capaci di sfruttarli al meglio. Ad oggi il deep learning è il paradigma di apprendimento dominante nella visione computerizzata, l’ingrediente fondamentale responsabile dei recenti sviluppi nel campo e del fiorire di prodotti, start-up e investimenti importanti da parte di aziende multinazionali come Microsoft, Google, Facebook e Amazon.

La visione computerizzata per la sicurezza

La diffusione capillare delle immagini digitali nel nostro quotidiano, insieme alla popolarità dei social network e alla diffusione sempre maggiore sul territorio di telecamere di sorveglianza, ha avuto un impatto fortissimo anche sul comportamento della criminalità organizzata. Immagini e video di propaganda vengono diffusi sul web tramite svariati profili, con legami più o meno forti con le organizzazioni stesse. Questo permette loro di raggiungere in maniera diretta e spesso spettacolare i principali canali di comunicazione televisivi. Nel recente passato, tutto ciò è corrisposto ad importanti tentativi di influenzare e parzialmente controllare la narrativa dell’informazione nei paesi occidentali.

Allo stesso tempo, però, l’utilizzo diffuso di immagini e video può essere monitorato in maniera efficace dalle agenzie nazionali ed internazionali di controllo del territorio per identificare individui affiliati o simpatizzanti delle organizzazioni criminali. Si pensi ad esempio alle immagini postate dagli utenti dai propri profili social, come Facebook, Instagram e/o Twitter: tecniche automatiche di controllo basate su algoritmi di visione artificiale, possono permettere di riconoscere se le immagini contengono materiale di propaganda, e dare avvio ad analisi di tipo aggregato in modo da determinare se sia opportuno segnalare o meno l’utente per ulteriori controlli.

Similmente, l’analisi automatica di immagini e video trovati nei dispositivi elettronici di un sospetto possono rivelare informazioni rilevanti ai fini dell’indagine. Nel caso di immagini che siano state private dei loro metadati, ovvero dell’informazione normalmente associata al file di ciascuna immagine con dati sul luogo in cui ciascuna foto sia stata scattata, la visione computerizzata permette di riconoscere all’interno delle immagini informazioni riguardo il tipo di vegetazione presente, lo stile degli edifici, i cartelloni pubblicitari, la lingua e i caratteri utilizzati in tali cartelloni e così via. Un’analisi di questo tipo aiuta a formulare ipotesi dettagliate sul luogo ove le immagini sono state acquisite, ovvero di definire una geolocalizzazione automatica delle foto digitali.

Infine, la presenza oramai capillare di telecamere di sorveglianza nelle città e nei luoghi pubblici come stazioni, aeroporti e centri commerciali, offre potenzialmente la possibilità di identificare individui sospetti, o comportamenti sospetti, anche nel caso in cui il viso della persona di interesse non sia chiaramente distinguibile, perché il sistema di visione computerizzata può analizzare le caratteristiche biometriche della postura, della corporatura e della camminata. I sistemi sono in grado di filtrare terabytes di informazione non rilevante in maniera efficace ed efficiente, in modo da concentrare le risorse computazionali esclusivamente sulle parti dei filmati che hanno maggiore probabilità di contenere informazioni rilevanti, e solo su quelle applicare algoritmi specializzati nella re-identificazione di soggetti, stabilendo, così, con una probabilità sufficientemente alta se un individuo ripreso da una telecamera nell’aeroporto ‘X’ sia o meno lo stesso individuo ripreso da un’altra telecamera nella stazione ‘Y’.

Questi sono solo alcuni esempi delle possibili applicazioni della visione computerizzata moderna nel campo della sicurezza. I progressi ottenuti nel campo grazie all’utilizzo di algoritmi di deep learning, fortemente legati alla possibilità di utilizzare grandi quantità di dati, permettono ad oggi di affrontare queste sfide con ragionevoli possibilità di successo.

Le nuove sfide per la visione computerizzata

I progressi ottenuti fino ad ora, e l’accelerazione fortissima portata nel campo dall’avvento del deep learning, non deve però farci dimenticare quali sfide rimangono aperte per la ricerca di base in questo campo. Limitandoci a quelle più rilevanti per le applicazioni discusse sopra, possiamo elencare:

  • Il riconoscimento di classi molto simili tra loro: mentre possiamo considerare come acquisita la capacità di localizzare e riconoscere in maniera efficace gli oggetti a un livello generico (ad esempio cani, gatti, automobili, motociclette, etc), resta aperto il problema della distinzione degli oggetti all’interno di classi molto simili tra loro. Si pensi ad esempio di dovere distinguere automaticamente tra tipi diversi di arbusti sulla base del loro fogliame, o di riconoscere diversi tipi di uccelli, o diversi modelli di motociclette. Questo tipo di categorie hanno tendenzialmente molte caratteristiche visive in comune, e la sfida è quella di riuscire a disegnare algoritmi in grado di imparare automaticamente quali sono i particolari visivi che distinguono le classi l’una dall’altra.
  • La re-identificazione di persone su larga scala temporale: i sistemi di re-identificazioni moderni basati sulla visione computerizzata tendono a concentrarsi su scale temporali molto ristrette, in cui è possibile ipotizzare che il soggetto di interesse stia indossando gli stessi indumenti e che l’illuminazione in cui vengono acquisite le immagini sia sostanzialmente costante. La sfida è allargare queste assunzioni ed arrivare a sistemi in grado di riconoscere individui anche a distanza di tempo (giorni, settimane o mesi), ovvero in presenza di differenze significative nell’abbigliamento e nelle condizioni di illuminazione, o nel caso in cui le immagini siano state acquisite da differenti sistemi di sorveglianza, dotati di telecamere con caratteristiche tecniche differenti.
  • L’apprendimento incrementale di nuove classi in nuovi domini visivi: un limite del machine learning moderno è quello di assumere che la statistica dei dati su cui avviene l’apprendimento sia la stessa di quella dei dati su cui avverrà l’utilizzo dell’algoritmo stesso, una volta terminata la fase di training. Questo è irrealistico: per quanto possa essere grande la conoscenza pregressa con cui equipaggiare un sistema, ci saranno sempre cose nuove da fare imparare, sia come nuovi esempi all’interno delle classi di oggetti che già si conoscono, sia come classi del tutto nuove, non previste nel design iniziale dell’algoritmo. La sfida è quella di riuscire a introdurre nuovi paradigmi di apprendimento nelle architetture di tipo deep, in grado di aggiornarsi dinamicamente e mantenendo un costo computazionale e di memoria limitato.

La chiave per affrontare queste sfide risiederà sempre di più nell’utilizzare grandi quantità di dati, e nello sviluppare allo stesso tempo architetture di deep learning ottimizzate in grado di modellare in maniera efficiente ed efficace i dati. Per potere fare progressi sarà quindi fondamentale possedere dati ed essere muniti di capacità computazionale hardware.

Articoli correlati