Quando ci domandiamo: “che film guardo questa sera?” troviamo la risposta grazie ai suggerimenti del servizio di streaming a cui siamo abbonati. Alla domanda: “come posso migliorare il comfort della mia sala?” Diamo risposta cercando “arredo sala” sul nostro e-commerce preferito. Prima di metterci in viaggio, guardiamo il navigatore. Si tratta di piccoli gesti quotidiani di centinaia di milioni di persone che nell’insieme costituiscono un flusso continuo di decisioni supportate dai dati; nel caso specifico dai “Big Data“.
Che ci piaccia o no, l’analisi di Big Data crea valore. Ma i dati devono essere “Big” per essere utili? Solo le grandi società di Internet possono estrarre valore dai dati? Veramente, a noi non resta che rinunciare ad una fetta della nostra privacy per usufruire dei loro servizi?
Non tutti i dati sono uguali: come uscire dal paradosso dei Big Data
Data, Big non vuol dire migliore
No, assolutamente no. I dati non devono essere per forza “Big”, devono “solo” essere sufficienti, per quantità e qualità, a descrivere il fenomeno che vogliamo analizzare. Per convincersi di questo fatto, basta pensare alle grandi scoperte che si sono susseguite a partire dal XVII secolo.
Galileo Galilei
Galileo Galilei formulò il “principio di relatività” [1] che permise a Isaac Newton di formulare la “teoria della meccanica classica” [2] su un “pugno” di dati facilmente riproducibili da chiunque adottando il metodo sperimentale. Sono certo che vi ricordate di quando a scuola avete ripetuto gli esperimenti di Galileo facendo rotolare biglie d’acciaio su un piano inclinato e prendendo nota dei tempi che impiegavano a scendere. A fare la differenza, infatti, è proprio il metodo scientifico: la raccolta di dati empirici (le “sensate esperienze” di Galileo) da analizzare in modo rigoroso tramite la matematica (le “dimostrazioni necessarie” di Galileo).
La cometa di Halley
Il metodo scientifico, infatti, si può applicare a tutto. Tra i primi a capirlo, fu Edmond Halley, astronomo, matematico e fisico inglese contemporaneo di I. Newton. La cometa di Halley si chiama così proprio perché E. Halley ne predisse la ricomparsa nel 1758 basandosi sugli avvistamenti di comete nel 1456, 1531, 1607 e 1682. Là dove i suoi contemporanei avevano visto quattro eventi isolati, lui vide un pattern che si ripeteva. Lo stesso E. Halley, nel 1693 aiutò il governo britannico a stabilire il “giusto prezzo” delle rendite vitalizie basandosi sull’età dell’acquirente. Per farlo analizzò in modo rigoroso l’età alla morte dei cittadini di una città polacca (Wroclaw) nota per tenere una documentazione meticolosa. Pochi dati, di alta qualità, analizzati in modo rigoroso possono aiutarci a predire fenomeni naturali e a prendere decisioni.
L‘analisi di dati sportivi
Se la storia di E. Halley non vi ha appassionato, forse vi convincerà il mondo dell’analisi di dati sportivi. La storia racconta che nel 2001, quando ancora non si parlava di “Big Data” e il Machine Learning era ancora nei laboratori delle università, la squadra di baseball degli Oakland Athletics non avrebbe dovuto avere il budget per formare una squadra in grado di competere nel campionato professionistico del 2002, ma riuscì a mettere insieme una squadra che vinse 20 partire consecutive, battendo il record della lega professionistica americana. Billy Beane, general manager degli Oakland Athletics, avevano assemblato la squadra analizzando in modo innovativo le statistiche dei giocatori.
Billy Beane aveva assunto Bill James, noto come il creatore delle sabermetrics [3], che aveva osservato come le statistiche (come la media in battuta), utilizzate a quel tempo per stabilire il valore di mercato dei giocatori, erano scarsamente correlate alla capacità del giocatore di contribuire alla vittoria della squadra. B. James raccomandò a B. Beane di non comprare costosi battitori con alte medie in battuta, ma di concentrarsi su giocatori a basso costo con “alte percentuali in base”, un nuovo indicatore fortemente correlato alla capacità di fare fuoricampo al momento giusto. Appassionante, vero? Se vi è piaciuto, vi consiglio di guardate Moneyball, il film tratto da questa storia.
“Small Data”, come ricavare valore anche da pochi dati
A questo punto, però, potreste obiettare che sto parlando di statistica e non di Machine Learning o Intelligenza Artificiale. Queste tecniche sono effettivamente voraci di dati, ma vorrei sfatare il falso mito che le si possa usare solo con i Big Data. Gartner ha di recente coniato il termine “Small Data” [4] proprio per catturare una tendenza crescente nell’impiego di tecniche capaci di ricavare valore anche da pochi dati. In parte, Gartner usa il termine “Small Data” per fare riferimento proprio al rinnovato entusiasmo per le tecniche statistiche illustrate nella prima parte di questo articolo, ma nel contesto degli “Small Data” annovera anche tecniche di Machine Learning e Intelligenza Artificiale.
Normalmente un sistema di Machine Learning addestra un’Intelligenza Artificiale a compiere un certo task mostrandogli un numero estremamente grande di campioni. Ad esempio, nel riconoscimento di immagini si raccolgono milioni di immagini che ritraggono decine di migliaia di oggetti e si addestra un “modello” che data un’immagine restituisce il nome dell’oggetto mostrato. Potrà stupirvi, ma se a tale modello chiedete di classificare un’immagine che ritrae un oggetto per cui non lo avete addestrato, il modello restituisce comunque il nome di uno degli oggetti che conosce. Se ad esempio avete addestrato un modello per riconoscere, tra gli altri oggetti, “strisce pedonali” e “cavalli”, vi aspettereste che data una foto di una zebra vi dica almeno che “sembra” un cavallo, invece potrebbe tranquillamente dirvi che è una “striscia pedonale”.
La capacità di generalizzare che manca all’AI
Alle Intelligenze Artificiali costruite sui Big Data manca, tipicamente, la capacità di “generalizzare”. Gli esseri umani, invece, sono molto bravi nel farlo. La ragione sembra essere la nostra capacità di costruire collegamenti tra quello che abbiamo imparato in passato e quello che dobbiamo ancora imparare. Quando da bambini abbiamo imparato la parola “zebra” non l’abbiamo fatto vedendone diverse centinaia in tutte le possibili pose, ma collegando l’idea di cavallo a quella di strisce bianche e nere. Sapevamo riconoscere un cavallo. Avevamo le nozioni di striscia, di bianco e di nero. Le abbiamo “solo” collegate.
Il campo dell’Intelligenza Artificiale prova da oltre 40 anni a realizzare sistemi capaci di “generalizzare” e proprio in questi anni alcune di queste tecniche stanno arrivando ad una maturità sufficiente ad un loro impiego industriale. Semplificando, l’idea dei modelli addestrati con gli “small data” è: prendo un modello addestrato con i Big Data per assolvere ad un certo compito, lo addestro con “pochi” dati, che non ha mai visto, relativi a un compito simile, e ottengo un modello per risolvere il nuovo compito.
Per confronto, l’approccio Big Data avrebbe addestrato il nuovo modello da zero raccogliendo milioni di esempi del nuovo compito. L’approccio Small Data, invece, riutilizza la conoscenza appresa nel risolvere il primo compito e adatta il modello utilizzando centinaia, se non decine, di esempi del nuovo compito.
Se si riesce a trovare un modello già addestrato su Big Data sufficientemente vicino al problema che serve risolvere, i vantaggi delle tecniche Small Data sono chiari. Già dopo pochi esempi, il modello Small Data inizia ad avere una discreta accuratezza. Inoltre, il modello “small data” impara più in fretta di uno addestrato da zero e, di conseguenza, raggiunge accuratezze maggiori a parità di tempo e risorse impiegate.
Casi di successo sono stati riportati nei settori del riconoscimento di immagini, della comprensione del linguaggio naturale e del parlato. Ad esempio, nei corsi di Data Science applicata, che tengo come professore del Politecnico, mostro come sia facile realizzare un modello “Small Data” che riconosce una decina di stili pittorici (come “futurismo”, “impressionismo”, e “neoclassicismo”) a partire da InceptionV3 [5], un famoso modello addestrato su ImageNet (una raccolta di 14.197.122 immagini annotate con 21841 oggetti). Come primo passo, si prende InceptionV3, una modello di Deep Learning, e si elimina l’ultimo strato (la parte finale che effettua la classificazione) per avere accesso allo strato che riconosce le texture. Poi si addestra un classificatore base di Machine Learning (ad esempio un albero di decisione) a riconoscere gli stili. In pochi minuti si ottiene un modello “Small Data” con altissima accuratezza.
In modo molto simile, si possono realizzare in decine di minuti modelli “Small Data” per l’elaborazione del linguaggio naturale a partire da BERT [6], un modello addestrato sull’intera Wikipedia, capace di distinguere il significato delle parole “vecchia” e “porta” in due frasi come “la vecchia porta la bambina a scuola” e “la vecchia porta cigola”. Un altro esempio popolare è quello in cui si mostra come addestrare un modello in grado di riconoscere il tedesco parlato partendo da uno addestrato a riconoscere l’inglese.
Conclusioni
Tra i settori che più stanno beneficiando dei modelli “Small Data” spicca quello della sanità. Sono numerose le applicazioni nel settore del riconoscimento di immagini mediche. Un gruppo di ricerca di Google [7] ha mostrato come modelli “Small Data” addestrati adattando modelli sviluppati per ImageNet raggiungano, a una frazione del costo, accuratezze paragonabili a modelli “Big Data” addestrati da zero.
A limitare l’applicabilità di queste tecniche sono la possibile mancanza di modelli già addestrati su problemi sufficientemente simili a quello per cui li si vuole adattare e l’alto rischio di addestrare modelli troppo sensibili ai pochi esempi forniti. La strada per le applicazioni industriali per gli “Small Data” sembra, però, aperta e sta attraendo un crescente interesse. Se ne avete l’opportunità, vi invito a percorrerla. Gli Small Data sono alla portata di tutti.
Note
[1] G. Galilei. Dialogo sopra i due massimi sistemi del mondo. 1639
[2] I. Newton. Philosopiae Naturalis Principia Mathematica. 1687
[3] John T. Saccoman; Gabriel R. Costa; Michael R. Huber (2009). Practicing Sabermetrics: Putting the Science of Baseball Statistics to Work. United States of America: McFarland & Company. ISBN 978-0-7864-4177-8.
[4] https://www.gartner.com/en/newsroom/press-releases/2021-05-19-gartner-says-70-percent-of-organizations-will-shift-their-focus-from-big-to-small-and-wide-data-by-2025
[5] https://keras.io/api/applications/inceptionv3/
[6] https://ai.googleblog.com/2018/11/open-sourcing-bert-state-of-art-pre.html
[7] https://ai.googleblog.com/2019/12/understanding-transfer-learning-for.html