Di solito parliamo di dati, database e di business intelligence. Oggi parliamo di machine learning, uno dei temi più caldi negli ambiti della tecnologia, dell’innovazione e del business. Immaginiamo la domanda di molti: è solo la buzzword del momento, oppure dietro la moda c’è della sostanza? Il machine learning ha un forte collegamento con la business intelligence. Questo legame diventerà sempre più profondo. Alla fine la business intelligence – comunque dotata di propria dignità – si posizionerà come tramite tra il machine learning e l’intelligenza artificiale.
Parliamo di una business intelligence in fase di transizione, guidata fondamentalmente da temi cui abbiamo già accennato: analytics, tecniche di visualizzazione e navigazione dei risultati, database no-SQL, big data e – appunto – machine learning. La business intelligence diventa un componente di un continuum di sistemi interagenti tra loro, dedicati a fornire supporto alle decisioni.
Un esperto di intelligenza artificiale, a questo punto, vedrebbe un ulteriore passaggio: il sistema che prende decisioni da solo, potenzialmente capace di affrontare problemi più complessi e di generare soluzioni che forse la mente umana – magari ad eccezione di qualche genio – non può neppure immaginare. È inevitabile pensare che, tra le righe, si parla di sistemi che a modo loro sono capaci di sfiorare il concetto di “pensiero autonomo”, con tutte le implicazioni etiche cui abbiamo fatto cenno nel post Per un’etica dell’AI.
Analizziamo lo scenario attuale e alcune probabili evoluzioni, partendo dalla domanda di base: che cosa è il machine learning, cioè l’apprendimento automatico? In breve parliamo della creazione di sistemi informatici e algoritmi che si basano su osservazioni di dati – storici o in tempo reale – per derivarne una nuova conoscenza.
Dal punto di vista dei vantaggi teorici, possedere un certo livello di conoscenza predittiva è un progresso enorme. Sapendo come evolve lo scenario, dove stanno andando le cose, si può adattare la propria azienda o crearne una nuova, far evolvere il proprio modello di business per creare o mantenere un vantaggio sulla concorrenza.
La attività di apprendimento può avvenire catturando caratteristiche rilevanti provenienti da database o da valori rilevati da sensori, per analizzarle e valutarne le relazioni tra le variabili osservate, arrivando alla definizione di tendenze, trend e comportamenti, fino a modellarne i modelli sottostanti.
Il primo accenno a tale idea è di Arthur Samuel – pioniere americano nei campi dell’intelligenza artificiale – che nel 1959 definì il machine learning come “campo di studi per dotare i computer della capacità di imparare, acquisire nuove competenza, senza la necessità di essere esplicitamente programmati per un determinato compito”.
Una definizione formale è stata successivamente fornita da Tom M. Mitchell nel 1998. Essa include qualunque programma per computer che sia in grado di migliorare le proprie prestazioni su un certo compito attraverso la sua stessa esperienza. Più precisamente: “un programma apprende da una certa esperienza E se: nel rispetto di una classe di compiti T, con una misura di prestazione P, la prestazione P misurata nello svolgere il compito T è migliorata dall’esperienza E”.
Ad esempio, un programma per computer che impara a giocare a dama potrebbe migliorare la propria performance, misurata attraverso i risultati ottenuti nel gioco stesso, facendo esperienza giocando ripetutamente contro sé stesso.
Il tema dell’apprendimento automatico può essere considerato, ad oggi, il Sacro Graal del filone degli analytics. Probabilmente il più promettente per il futuro. Vista l’ampiezza del tema, agli aspetti architetturali e tecnologici del machine learning dedicheremo ulteriori post.
Nel passato, implementare una soluzione di machine learning era complesso oltre che costoso, con la necessità di coinvolgere figure professionali come i data scientist su progetti di durata non banale. Oggi è disponibile la potenza a basso costo e on-demand sul cloud, con la quale abbattere alcune di queste barriere. E la possibilità di sperimentare è uno degli aspetti più fascinosi del nostro lavoro in ambito IT.
La tendenza a scavare nel mondo degli analytics per ottenere vantaggi competitivi, come detto prima, nasce da motivazioni abbastanza evidenti. Si sta verificando ciò che accadde al mondo della BI ai suoi inizi: il machine learning ha una curva di apprendimento con una pendenza abbastanza ripida e notevoli barriere economiche, tecnologiche, di visione e di cultura. Possiamo dire che si tratti di una sfida di livello “enterprise”.
Una analisi convenzionale – basata su strumenti standard e facili della BI, tecnologia oggi disponibile a basso costo – consente di creare misure e indicatori (KPI) secondo percorsi tipicamente lineari e mono-focali. Viceversa una analisi evoluta, potenzialmente proveniente da considerazioni “data-driven” ma non generata da cervello umano potrebbe andare, anche contemporaneamente, in direzioni diverse secondo differenti modelli di pensiero e di logica. I risultati sono poi da validare, ma si tratta di un bel passo avanti.
Non più solo analisi convenzionali, basate su ragionamenti lineari e relative correlazioni tra variabili, caratterizzati dalla facile rappresentazione in un grafico o in un pivot, con eventuali scenari what-if, ma analisi evolute in cui macchine scansionino enormi moli di dati alla ricerca, ad esempio, di pattern nascosti.
Potenzialmente, si va ben oltre l’analisi di dati storici che può pilotare una persona, fino a scoprire connessioni non ovvie o addirittura dannatamente nascoste, che oltrepassino le nostre capacità di ragionamento. Macchine che ci dicono, senza una nostra precedente richiesta, ciò che è importante nei dati analizzati. Algoritmi che decidono autonomamente quali analisi proseguire in profondità, stimando che cosa approfondire e che cosa ritenere non fruttifero. Autonomamente. Quasi un ribaltamento di ruoli.
Ricerche hanno già dimostrato che analisi data-driven possono fornire decisioni più precise ed efficaci rispetto a quelle prese da un umano (in futuro racconteremo alcuni casi di studio significativi). Sembra umiliante per il cervello umano, ma è così.
Abbiamo parlato di data lake, ma in questo scenario una macchina può affrontare pure un data ocean uscendo dal seminario dei dati di una singola azienda. Questo scenario rappresenta una sfida fantastica, di alto livello, ancora non tentata fino in fondo. Una sfida in pieno divenire.