Introduzione al Machine Learning: un modello in 5 step

da | Nov 4, 2022

Il Machine Learning sembra essere diventato negli ultimi anni uno dei migliori “strumenti” in grado di aumentare considerevolmente la competitività aziendale. Per stare al passo dei migliori, incrementare l’efficienza e moltiplicare la redditività, le imprese devono dunque necessariamente rimanere aggiornate.

Questo primo articolo sarà un’introduzione al Machine Learning: faremo chiarezza su cosa sia, quali strumenti utilizzi e come funzioni nella pratica. Introdurremo inoltre il modello circolare in 5 step che adottiamo per aiutare i nostri clienti.

Come affrontare un progetto di Machine Learning

Analogamente allo sviluppo agile, ampiamente utilizzato nell’ambito dell’ingegneria del software, una metodologia di lavoro dimostratasi molto efficace nell’affrontare progetti di machine learning è quella di procedere per piccoli passi, in modo iterativo.

L’intero progetto può essere quindi diviso in cinque diverse fasi di azione: l’incontro conoscitivo, la fase di approfondimento, lo sviluppo di un modello di machine learning, la fase di test ed infine la produzione.

Incontro conoscitivo

L’incontro conoscitivo è il primo punto di contatto tra data scientist e azienda.

Lo scopo di questo incontro è trovare la miglior intersezione tra l’insieme dei bisogni dell’azienda e quello dei problemi che possono essere affrontati efficacemente con le tecniche di machine learning.

Per questo motivo è richiesta la presenza di una persona con profonde conoscenze dei problemi e dei bisogni dell’azienda, che possa quindi dare una stima del ritorno sull’investimento (ROI) associato ad un particolare progetto.

Un modello di machine learning può essere estremamente performante, ma se l’impatto economico o produttivo relativamente al business è basso, il progetto avrà uno scarso valore.

Allo stesso modo possono esistere problemi molto impattanti sul business, ma non adatti ad un approccio analitico. In questi casi, un modello di machine learning sarà poco efficace ed ancora una volta il progetto avrà complessivamente uno scarso valore.

Proprio per questo il dialogo è l’elemento fondamentale dell’incontro conoscitivo: in questo contesto possono infatti nascere nuove idee, anche grazie al fatto che le varie intuizioni vengono analizzate sotto la luce di competenze diverse e possono così maturare e concretizzarsi in progetti reali.

Al fine di valutare al meglio le possibilità di un approccio di machine learning ad un determinato problema, durante l’incontro conoscitivo è fondamentale la presenza di personale che conosca quali sono i dati a disposizione dell’azienda, dove e come reperirli, ed infine quanto essi siano affidabili e puliti.

Fase di approfondimento

Il fine della fase di approfondimento è quello di definire gli obiettivi di uno o più idee maturate durante l’incontro conoscitivo. In questo contesto ci si chiede:

  • Se altre aziende nello stesso settore utilizzino già tecniche di ML. In caso positivo è di assoluto beneficio studiare i casi passati per poter accelerare notevolmente la fase iniziale del progetto, riducendo i tempi di attesa del primo test.
  • Di che tipologia sono i dati disponibili? Un modello di machine learning può utilizzare praticamente ogni tipologia di dato digitale esistente ma, per ciascuna di esse, esistono algoritmi più o meno adatti. Esempi di tipologie di dato sono: dati audio e video, traffico web, tabelle o database relazionali, database non relazionali, letture di sensori fisici, etc.
  • Come e se il problema in analisi viene affrontato al presente.
  • Esistono dati esterni potenzialmente rilevanti per il progetto? Spesso sono disponibili online dataset anche open access che possono contribuire a migliorare l’efficacia di un modello di machine learning, come ad esempio dati meteo, di borsa, occorrenza di festività, dati geografici, dati demografici, di traffico, news, etc.

Durante questa fase è inoltre importante, quando possibile, suddividere l’intero progetto in step più piccoli, in modo da ottenere nel più breve tempo possibile feedback riguardanti l’efficacia di un dato modello. Questo permette di iterare più velocemente tra le fasi del progetto, riducendo il tempo necessario a giungere ad un modello in grado di creare valore.

Lo scopo della fase di approfondimento è quello di redigere una tabella di inizio progetto, nella quale vengono indicati uno o più obiettivi del progetto di machine learning, quali sono i dati disponibili, le tecnologie abilitanti (requisiti hardware e software) ed infine il personale coinvolto.

“Il Machine Learning sembra essere diventato negli ultimi anni uno dei migliori “strumenti” in grado di aumentare considerevolmente la competitività aziendale”

Sviluppo del modello

Una volta completata la tabella di inizio progetto è possibile iniziare a strutturare un modello di machine learning.

Il punto di partenza consiste nel definire in modo formale una metrica di ottimizzazione, ovvero generare un singolo numero che permetta di quantificare la bontà di un modello rispetto ad un altro. Tanto sarà più alto questo numero, tanto migliore sarà il modello.

Per un obiettivo complesso, il fatto che la metrica consista in un singolo numero non significa che si consideri un singolo aspetto del problema, ma che i molteplici aspetti vengano sommati tra loro in modo pesato alla loro importanza.

La ricerca di una buona metrica di ottimizzazione è di fondamentale importanza in quanto essa è anello di congiunzione che collega da una parte l’obiettivo del business e dall’altra un modello statistico. Una buona metrica permette di confrontare rapidamente modelli diversi e di ottimizzare un determinato modello in maniera mirata ed allineata con le reali esigenze del Committente.

Una volta definita la metrica si procede alla costruzione di una baseline, ovvero un modello molto semplice per risolvere il problema di interesse.

Quando possibile, è vantaggioso utilizzare come baseline il metodo con cui il Committente affronta il problema al presente. Avere una baseline è importante per quantificare, qualora esistano, i benefici di un approccio di machine learning alla risoluzione del problema.

Si procede infine alla creazione di diversi modelli di machine learning di complessità sempre crescente, confrontando continuamente i risultati ottenuti con quelli risultanti dal modello di baseline.

In questa fase si ricerca il trade-off migliore tra potere predittivo e risorse necessarie affinché un determinato modello possa funzionare.

Test e user feedback

Appena il modello di machine learning raggiunge un’efficacia sufficiente può cominciare la fase di test. Il modello deve infatti guadagnarsi la fiducia del committente attraverso risultati concreti.

Il test sul campo viene eseguito in modo progressivo per limitare i rischi, in step separati:

  • Cold start: ll modello funziona in parallelo alla vecchia soluzione ed i risultati vengono monitorati. Non vengono però prese azioni in funzione dell’output del modello.
  • Test ristretto: Il modello viene testato su una piccola porzione dell’attività e se ne verifica l’efficacia limitando i rischi. In questa fase è necessario che il Committente segua l’operazione a stretto contatto con il team di data science attraverso personale interno qualificato, così da trovare rapidamente pregi e difetti del modello e poter introdurre modifiche mirate.
  • Test produzione: Il modello viene testato su tutta l’attività ed i risultati vengono monitorati costantemente.

Produzione

Una volta terminata la fase di test il modello di machine learning viene inserito nel ciclo di lavoro del Committente, iniziando quindi a produrre valore.

Questa integrazione può avvenire modificando il software utilizzato quotidianamente dall’azienda o andando a sviluppare un applicativo o una dashboard ad hoc.

È importante sottolineare che un progetto di machine learning di successo fornisce soluzioni, non modelli: i risultati statistici in output dal modello devono infatti essere tradotti in azioni concrete, che producano valore.

Sandro Pinna
Sandro Pinna
Dopo la laurea in Governo d’Impresa mi sono dedicato a molte attività, tutte di diversa tipologia, ma alla fine mi sono dedicato a quello che più mi appassionava: il digital marketing.

Potrebbe piacerti anche