Sono i big data, bellezza
di Luca Magri e Giovanni Naldi
Quante informazioni facciamo affluire quotidianamente negli archivi dei portali web, delle
compagnie telefoniche o di qualche social network? Come possono essere utilizzati tutti questi dati?
In effetti, confessiamolo, più di una volta abbiamo avuto l’impressione, per esempio durante
qualche ricerca in rete, che “qualcuno” abbia tenuto traccia delle nostre abitudini o dei nostri gusti
(o solo delle nostre richieste). Se poi, per rilassarci un po’, ci dedichiamo alla visione di qualche
evento sportivo potremmo fare l’esperienza di essere sommersi da un diluvio di dati. Un esempio
tipico riguarda le partite dell’NBA, il campionato professionistico americano di pallacanestro:
rimbalzi, tiri liberi, falli, passaggi,… il tutto riferito a ogni minuto di gioco e passati al vaglio degli
analisti sportivi.
Le due situazioni descritte brevemente rappresentano altrettanti esempi di “big data”, termine
introdotto recentemente per indicare una raccolta di dataset (ovvero di collezioni di dati) complessa
e di grandi dimensioni.
La qualifica di “big” è legata alla mole che solitamente hanno questi archivi (per esempio si stima
che ogni giorno gli utenti della rete informatica producano la bellezza di 1030 bytes), e, soprattutto,
al fatto che molto spesso i dati in questione possono essere descritti come punti in spazi di
dimensione estremamente alta. Per esempio, nel caso dei giocatori di pallacanestro possiamo
associare a ogni giocatore un vettore che contenga indici statistici riguardanti alcune caratteristiche
(normalizzate rispetto al numero di minuti giocati): punti segnati, rimbalzi, assists, blocchi, palle
perse, falli fatti,… Ogni giocatore sarà quindi rappresentato da un punto in uno spazio di
dimensione uguale al numero di caratteristiche prese in considerazione.
Il caso di dati rappresentabili con vettori o con sequenze alfanumeriche, per esempio si pensi alle
sequenze dei circa tre miliardi nucleotidi di base che compongono il DNA umano, è un caso
fortunato. “Siamo abituati a pensare ai dati come a dei vettori di numeri e coordinate” spiega Jesse
Johnson un matematico della Oklahoma State University in una intervista per il Quanta Magazine,
“ma i dati che provengono da Twitter o da Facebook non assomigliano affatto a questi oggetti
matematici. C’è bisogno di un modo più sofisticato per trasformare questi dati in vettori o bisogna
trovare un modo più generale per analizzarli” conclude Johnson.
Gli fa eco Simon DeDeo, ricercatore del Lab for Social Minds del Santa Fe Institute, a cui è spettato
analizzare i 300 anni di pratiche archiviate nella London’s Old Bailey (la corte criminale centrale di
Galles e Inghilterra) e che sostiene di trovarsi di fronte a un problema del tutto nuovo, dal momento
che i big data hanno poco a che spartire con i tradizionali dataset con cui di solito si confrontano i
fisici: “in fisica di solito si ha un solo tipo di dati e per di più si conosce molto approfonditamente il
sistema che li ha prodotti, ora invece abbiamo questi nuovi dati multimodali che sono stati raccolti
prima di avere un’ipotesi di studio”.
Riassumiamo allora brevemente le caratteristiche dei big data riprendendo una definizione, seppur
non precisa, utilizzata comunemente: la definizione delle tre V. I big data sono definiti da:
1. Volume. Memorizzare e gestione di grandi quantità di dati (si parla facilmente di terabye o
pentabyte).
2. Velocità. Le informazioni cambiano dinamicamente attraverso l’acquisizione di nuove collezioni
di dati e da fonti differenti. Inoltre la velocità si riferisce anche alla necessità di elaborare
rapidamente le nuove informazioni legandole alle informazioni già acquisite (si pensi per esempio
alla necessità di identificare una frode).
3. Varietà. I dati sono di qualsiasi tipo, dati strutturati e non strutturati come, ad esempio, dati di
testo, dati dei sensori, dati audio, file di log, dati video e altri ancora.
Sottolineiamo infine che le difficoltà per il trattamento dei big data sono più di una semplice
questione di dimensioni: occorre gestire ed elaborare informazioni eterogenee, dinamiche e
provenienti da sorgenti differenti. Ovviamente la prima domanda che sorge è: perché raccogliere
tutti questi dati? In che modo possono esserci utili?
Un esempio considerato esemplare dagli esperti di marketing è il caso della multinazionale
Walmart, la più grande catena di distribuzione di beni di consumo del mondo. Questa azienda
colleziona ogni ora i dati relativi alle proprie transazioni commerciali e li relaziona a fattori quali
luogo, composizione del carrello, disponibilità a magazzino, frequenza degli acquisti e altro ancora.
Se, per esempio, un cliente ha acquistato in passato l’attrezzatura per il barbecue e in seguito
alcuni prodotti accessori, potrebbe essere interessato ad articoli non ancora acquistati. Analizzando
la disponibilità dei prodotti, le informazioni meteo, i dati relativi alla localizzazione del cliente, un
sistema automatizzato invierà dei buoni sconto per invogliare il cliente all’acquisto, ma solo se il
tempo sarà buono, se ha già preso il barbecue e se si trova in un raggio di pochi chilometri da un
punto di vendita.
Un esempio differente riguarda uno studio recente nato nell’ambito di una collaborazione tra
University of Limerick e University of Oxford, e pubblicato sui Proceedings of the National
Academy of Sciences of the United States of America. In particolare viene proposto un nuovo
modello matematico per descrivere l'utilizzo di applicazioni da parte degli utenti di Facebook.
Questo lavoro si basa su un insieme di dati rilevati ogni ora dal 25 Giugno 2007 al 14 Agosto 2007
e sul numero di volte in cui una applicazione Facebook era installata (nel 2007 erano disponibili
2705 applicazioni). All’epoca, gli utenti di Facebook potevano vedere in ogni momento una lista
delle applicazioni più installate e un elenco delle applicazioni recentemente installate dai propri
“amici”. La domanda dello studio: è possibile capire ciò che rende un’applicazione più “installata”
di un'altra? Il modello proposto si basa su due possibili dati che possono influenzare l’utente: una
preferenza ad installare applicazioni sulla base dell'elenco delle attuali applicazioni “best seller” e
una preferenza che si basa invece sulla popolarità delle applicazioni installate dai propri amici.
L’utilizzo dei big ha permesso di identificare i parametri del modello e di concludere che, sebbene
gli utenti sembrino influenzati da entrambi i meccanismi, l’effetto dominante sulla dinamica delle
installazioni è causato dal comportamento recente degli altri utenti amici. In altri termini, la
tendenza di copiare il comportamento degli amici è di gran lunga il meccanismo dominante. Forse
questo non meraviglia: quante volte abbiamo ascoltato una canzone poco nota o letto un libro
perché consigliati da un amico?
Non si pensi che i big data siano ristretti ai social network piuttosto che alle azioni mirate di
marketing, il loro utilizzo sta crescendo “selvaggiamente” in numerosissime discipline: dalla
biologia molecolare alla genomica, dalla scienza dei materiali alle strategie di estrazione del
petrolio e dei gas naturali, dalle scienze sociali all’astrofisica.
Un altro esempio interessante, che ha creato un notevole dibattito sull’utilizzo dei big data, riguarda
l’epidemiologia. Nel 2009 appare infatti sulla prestigiosa rivista Nature uno studio in cui si
“pretendeva” di prevedere l’andamento di epidemie influenzali. Il problema della descrizione
precoce della dinamica di tali epidemie è certamente uno dei problemi importanti
dell’epidemiologia e della gestione della salute pubblica. Riuscire a mitigare e prevedere l’impatto
di eventi del genere è di grande interesse sociale, sanitario ed economico. Lo studio in questione si
proponeva di arrivare a una previsione di tale dinamica in modo rapido e con un basso costo
attraverso l’analisi di big-data relativi alle ricerche degli utenti web attraverso due dei principali
motori di ricerca (google e Yahoo).
Ovviamente la selezione veniva fatta attraverso parole chiave nelle ricerche che potevano essere in
relazione con l’influenza: sintomi, medicinali, complicazioni e via dicendo. I risultati sono apparsi
sorprendenti: il metodo proposto appariva in grado di monitorare l’andamento dell’influenza in una
popolazione fornendo anche una stima settimanale dell’attività influenzale in ogni regione degli
Stati Uniti (con un ritardo nella segnalazione di circa un giorno). Il metodo introdotto appariva
decisamente più efficiente rispetto ai metodi di previsione tradizionali come quello adottato dal
CDC (US Centers for Disease Control and Prevention) e basato su dati sia virologici che clinici
(basti pensare che la segnalazione dell’andamento dell’epidemia influenzale da parte del CDC viene
fornita con una o due settimane di ritardo). Anche negli anni successivi il metodo GFT (Google Flu
Trends) riesce a produrre ottime stime dell’andamento di malattie influenzali o simili e viene
sperimentato anche fuori dagli Stati Uniti.
Previsioni a confronto tra il nuovo metodo Google flu trends (GFT) ed il metodo classico del
Centro CDC nel periodo 2004-2008 (questi dati sono serviti per calibrare il metodo GFT).
L’entusiasmo per l’uso dei big data in epidemiologia cresce e sistemi simili vengono introdotti
(ovviamente anche l’ormai immancabile Twitter viene coinvolto ma con risultati modesti). Tale
entusiasmo dura fino al Febbraio 2013, quando sempre su Nature si segnala infatti che la
previsione del numero di visite mediche dovute a sindromi di tipo influenzale secondo il sistema
GFT risulta essere il doppio rispetto alla previsione, poi risultata più vicina alla realtà, fatta dal
CDC. Si apre una interessante discussione che mette in evidenza la potenzialità in ambito
scientifico dei big data ma anche la necessità di evitare la “Big data hubris”: occorre una
interazione con metodi tradizionali (non solo dati, anche se tanti, ma anche modelli e comprensione
delle variabili in gioco).
Le possibilità scientifiche offerte dai big-data appaino enormi ma occorrono metodologie adeguate.
La previsione sbagliata da GFT nel 2013 con una stima molto piu' alta rispetto ai metodi
tradizionali.
Ronald Coifman, matematico in forza alla Yale University, auspica (forse esagerando?) per i big
data l’avvento di una rivoluzione della stessa portata che ebbe l’introduzione del calcolo
infinitesimale nel panorama scientifico del XVII secolo e crede che la matematica moderna, in
particolar modo la geometria, possa aiutare a identificare le strutture nascoste all’interno dei grossi
archivi.
È proprio un’intuizione geometrica quella che sta alla base della TDA (topological data analysis) un
insieme di tecniche sviluppate per l’analisi di grossi dataset, da Gunnar Carlsson matematico di
Stanford. L’idea di base è che i dati possano essere visti come punti di un opportuno spazio
topologico, ossia di uno spazio in cui è ben definita una nozione di vicinanza, in modo che più i
punti sono vicini tra loro più i dati che rappresentano sono simili. Così facendo si riescono a
“codificare” archivi di dimensioni alte in una struttura di grafo: una collezione di punti e di
connessioni tra di essi che ne codificano le mutue distanze. Questa rappresentazione ha il vantaggio
di ridurre la dimensionalità dei dati di partenza, permettendo anche di visualizzare i dataset e di
coglierne, anche visivamente, la struttura.
Per spiegare i vantaggi offerti da questa possibilità Carlsson immagina di dover cercare un
martello in un garage immerso completamente nel buio e di avere a disposizione soltanto una
piccola torcia per far luce.
Alla fine dopo aver illuminato ogni possibile angolo forse si riuscirà a trovare il martello, ma non
sarebbe forse meglio accendere direttamente la luce della stanza in modo da avere un punto di vista
globale? In questo modo non solo troveremo il martello ma anche lo scatolino dei chiodi lì accanto.
Processare i dati con la TDA sarebbe quindi come accendere la luce sui nostri dataset per coglierne
a colpo d’occhio l’organizzazione interna.
Le fonti di luce con cui la TDA riesce a fare chiarezza nel groviglio dei big data appartengono alla
costellazione della geometria algebrica che, semplificando, si occupa di tradurre proprietà
topologiche nel linguaggio dell’Algebra, col grande vantaggio di renderle accessibili per una
elaborazione con un computer.
Certamente la rappresentazione topologica di dimensione bassa prodotta dalla TDA, avverte
Carlsson, non potrà essere completamente fedele ai dati, ma se si al suo interno si evidenziano delle
caratteristiche topologiche interessanti, quasi sicuramente queste saranno presenti anche nei dati
originali, e saranno fondamentali per comprenderne meglio la natura. La TDA è stata con successo
applicata alla genomica, ma la sua flessibilità le consente di essere applicata a svariati campi
d’indagine tra cui l’analisi del gioco dei professionisti NBA di cui si parlava all’inizio. Ma come
funziona? Cercheremo di dare qualche altra indicazione prossimamente, almeno per i più curiosi.
La nuova classificazione dei giocatori NBA in base alle dinamiche utilizzate nel gioco, ogni nodo
rappresenta uno o più giocatori considerati vicini, gli archi di collegamento indicano similarità
(per esempio un arco congiunge nodi che hanno giocatori in comune)
Luca Magri, Giovanni Naldi
Dipartimento di Matematica “F. Enriques", Università degli studi di Milano
Pubblicato sul sito Maddmaths! in due parti: Prima puntata 28settembre 2014; seconda puntata
21 ottobre 2014