Controllare i costi dell’IA attraverso la gestione agile dei progetti di Data Science

Ottenendo un controllo efficace dei costi dell'IA con la gestione agile dei progetti di Data Science

Un piano per gestire un’organizzazione agile di data science

Introduzione

Il mondo della data science è complesso, con costi nascosti che vanno oltre i limiti di budget. I data scientist rappresentano un investimento significativo per qualsiasi organizzazione. Purtroppo, inefficienze come l’infrastruttura inutilizzata possono sprecare ingenti quantità di investimenti in infrastrutture dati. Le metodologie agili offrono una soluzione, migliorando il flusso di lavoro e riducendo il tempo sprecato. Con l’agile, il processo tradizionale di data science diventa ottimizzato e adattabile, offrendo valore in modo più efficiente. Questo articolo esplora questi costi nascosti e dimostra come le pratiche agili possono rendere le iniziative di data science più economiche.

Sezione 1: I costi nascosti della data science

I data scientist, con la loro conoscenza intricata e competenza nella gestione dei dati, sono una risorsa preziosa e la loro produttività è fondamentale. Meno tempo i data scientist trascorrono sull’innovazione e più su compiti noiosi, maggiore è la spesa senza il ritorno dell’investimento. Inoltre, la tendenza dei data scientist a lavorare sui propri computer per non essere limitati dalla centralizzazione IT o per creare parallelamente una capacità “shadow IT” rende la scoperta della conoscenza onerosa e porta spesso a scenari di reinventare la ruota.

Lo spreco può assumere molte forme. Boston Consulting Group ha scoperto che solo il 44% dei modelli raggiunge la produzione, e una parte significativa del tempo giornaliero di un data scientist può essere sprecata in compiti banali come l’installazione dell’IT. Inoltre, quando i data scientist sono impegnati, i costi dell’infrastruttura aumentano rapidamente. Mentre sono occupati e distratti dall’innovazione, gli investimenti nell’infrastruttura dati possono diventare inutilizzati, sempre attivi e sovradimensionati. Infine, lo spostamento dei dati dentro e fuori il cloud diventa costoso a livello di scale di dati AI. Di conseguenza, i costi del cloud diventano difficili da gestire su più stack, silos ed ambienti.

L’apprendimento automatico – in particolare l’IA generativa – necessita di enormi volumi di elaborazione cloud e costosi GPU. Nel 2023, modelli rilevanti come ChatGPT hanno costato alle organizzazioni come OpenAI circa 700.000 dollari al giorno in costi di elaborazione (SemiAnalysis nel Washington Post [1]). Secondo un calcolo, ChatGPT ha richiesto migliaia di GPU e mesi di addestramento prima di essere mai implementato [2].

La lotta continua. Circa il 56% dei leader della data science ha bisogno di aiuto per scalare correttamente i loro progetti di data science (BCG). Ad esempio, i dati diffusi su più piattaforme cloud non solo aumentano i costi di archiviazione, ma rendono anche difficile l’accesso e la condivisione dei dati tra i team. Questo approccio frammentato può aggravare ulteriormente i budget e compromettere la collaborazione e l’efficienza fondamentali nel ciclo di vita della data science. Come possiamo trasformare queste difficoltà in opportunità? La risposta potrebbe risiedere nell’abbracciare le metodologie agili e un processo di progettazione strutturato.

Sezione 2: Progettazione del processo e metodologia agile nella data science

Oggi, quando l’efficienza e l’adattabilità sono fondamentali, le metodologie agili sono una parte sempre più rilevante dei progetti di data science. I processi agili abbracciano l’adattabilità, la collaborazione e lo sviluppo iterativo, tutti fattori che possono influire significativamente sull’efficienza dei costi di un progetto lungo l’intero ciclo di vita della data science. Un tipico progetto di data science si adatta bene alle pratiche agili poiché naturalmente presenta alcune caratteristiche chiave dell’approccio di gestione agile:

  • Sviluppo incrementale e iterativo – i prodotti di data science vengono costruiti incrementalmente. La maggior parte dei framework comunemente adottati per gestire i progetti di data science ha fasi rigorosamente definite. Ad esempio, CRISP-DM utilizza la comprensione del business, la comprensione dei dati, la preparazione dei dati, la modellizzazione e la valutazione.
  • Focalizzazione sui valori – i modelli predittivi, ma anche la data science in generale, sono intrinsecamente focalizzati sui valori, poiché le raccomandazioni e le intuizioni del modello guidano direttamente le decisioni aziendali.
  • Team autorizzato – il team di data science raggiunge la massima produttività quando gli viene consentito di prioritizzare e organizzare il lavoro all’interno del team. Questo include la selezione di modelli specifici, strumenti, framework, risorse di calcolo, linguaggi di programmazione, ecc.
  • Apprendimento continuo – questo è un altro principio importante dell’agile. Quando iniziamo a lavorare su un modello, abbiamo una certa visione e iniziamo a costruire un prodotto (modello, report, ecc.) in base a questa visione. Dopo la prima iterazione, o dopo una delle fasi del progetto (ad esempio, l’analisi esplorativa dei dati), acquisiamo conoscenze aggiuntive sul problema, il che ci consente di adattare anche la visione di conseguenza.

I progetti di data science richiedono spesso un’interazione tra le fasi. Ad esempio, risultati deludenti del modello possono suggerire di riprendere la raccolta dati per ottenere dati con una migliore capacità predittiva. La metodologia agile abbraccia questa natura ciclica, consentendo ai team di adattare e affinare i processi.

Immagine dell'autore

Ecco una breve panoramica di come potrebbe apparire un processo agile per un tipico progetto di data science:

  • Business Case: Definisci il problema e l’impatto potenziale.
  • Raccolta e analisi preliminare dei dati: Raccogli, analizza e convalida i dati.
  • Modellazione / Analisi esplorativa dei dati: Sviluppa e testa modelli.
  • Operazionalizzazione: Implementa i modelli in produzione.
  • Monitoraggio e analisi: Monitora continuamente, analizza e perfeziona i modelli.

Gli strumenti di project management come Jira consentono alle metodologie agili di assumere forme diverse. Se la piattaforma di data science utilizza i progetti per organizzare le unità di lavoro e il flusso di lavoro utilizza Epiche con sotto-task come Compiti, Storie e Bug, collegare l’epica al tuo progetto può semplificare sia il processo di sviluppo che il tracciamento dei progressi/carichi di lavoro.

In progetti complessi in cui diversi team gestiscono diverse fasi, potrebbe essere più efficiente creare progetti collegati a ticket di Compito. Ogni ticket rappresenta una singola fase o un gruppo di fasi, garantendo una migliore coerenza con flussi di lavoro complessi.

Sezione 3: Infrastrutture, costi e controllo

La gestione delle infrastrutture è cruciale ma spesso sottovalutata nella data science. Le complessità associate alla configurazione e gestione degli ambienti di data science possono comportare costi nascosti significativi, soprattutto quando le risorse sono sottoutilizzate. Quando gli investimenti rimangono inattivi, sempre operativi e sovradimensionati, questi costi si accumulano rapidamente e riducono le opportunità di indirizzare risorse preziose verso percorsi più produttivi.

I modelli di machine learning, in particolare quelli di deep learning, richiedono una quantità immensa di risorse di calcolo: GPU di fascia alta e istanze di calcolo cloud, e i costi possono essere elevati. Inoltre, le piattaforme commerciali potrebbero avere markup che aumentano ulteriormente il prezzo. Un approccio strategico alla pianificazione e all’investimento nelle infrastrutture, bilanciando la necessità di tecnologia all’avanguardia con l’imperativo di controllo dei costi.

Questo problema non solo consuma risorse finanziarie, ma comporta anche una perdita di produttività potenziale e un collo di bottiglia di efficienza quando le risorse sono assegnate in modo inefficiente a vari team. Purtroppo, questa forma di spreco non è sempre evidente e spesso richiede un’attenta gestione e monitoraggio per essere rilevata e mitigata. L’utilizzo di strategie agili può valorizzare in modo più significativo gli investimenti nella data science, trasformando potenziali sprechi in produttività e innovazione. Inoltre, crea una traccia cartacea per il monitoraggio dei costi, l’utilizzo delle risorse e facilita il calcolo del ROI per singoli progetti di data science.

Sezione 4: Scalabilità, gestione dei dati e workflow agile

La scalabilità dei progetti di data science è un compito monumentale e spesso sottovalutato. Secondo i rapporti del settore, solo il 56% dei progetti di data science supera mai la fase sperimentale per creare valore aziendale. Un fattore significativo è il crescere dei costi legati alla memorizzazione e alla gestione dei dati, ma anche i costi derivanti da una varietà di soluzioni hardware e software. Tuttavia, l’adozione di pratiche agili può fungere da salvagente in questo mare che si alza di spese.

Un workflow agile, caratterizzato da sviluppo iterativo e cicli di feedback, consente ai team di data science di individuare inefficienze nella memorizzazione dei dati. Ad esempio, dataset ridondanti che possono essere spesso evitati attraverso sprint iterativi focalizzati sulla consolidazione dei dati. Costruendo incrementalmente sul lavoro precedente e riutilizzando dati e codice, un workflow agile minimizza la necessità di ulteriori risorse di memorizzazione.

Inoltre, le pratiche agili come il controllo delle versioni e i rami di sviluppo consentono una gestione efficiente dei dati. Una corretta versioning facilita il ripristino dei stati precedenti del progetto, evitando la necessità di copie ridondanti multiple e contribuendo al risparmio di spazio di memorizzazione.

L’agilità significa anche una migliore allocazione delle risorse. Attraverso incontri di Scrum e Kanban, i team ottengono una visione trasparente di chi sta facendo cosa, portando a una distribuzione più informata delle risorse e all’utilizzo ottimale delle risorse umane e tecniche, riducendo quindi il tempo inutilizzato e, di conseguenza, i costi inutilizzati.

La mentalità agile si estende anche all’automazione. Lo sviluppo iterativo di pipeline automatizzate per l’estrazione, la trasformazione e il caricamento dei dati (ETL) può eliminare i punti critici manuali uno sprint alla volta, accelerando il processo di scalabilità e riducendo significativamente i costi legati al lavoro manuale e alla correzione degli errori.

Tuttavia, è fondamentale notare che l’agile non è una soluzione universale. I team devono essere adattabili, disposti ad incorporare il feedback e ad apportare pivot necessari. I progetti di data science sono complessi e multifaceted, quindi un’adesione rigida a una sola metodologia può introdurre punti ciechi operazionali e costi imprevisti.

Adottare metodi agili per scalare non significa solo fare le cose più velocemente; significa fare le cose in modo più intelligente. Concentrandosi su miglioramenti iterativi, trasparenza e automazione, si ha una maggiore possibilità di scalare i progetti con successo mantenendo i costi sotto controllo.

Sezione 5: Efficienza, automazione e ruolo di IT

L’efficienza è il perno che tiene insieme la complessa macchina della scienza dei dati. Senza di essa, non solo i costi aumentano, ma anche il tempo per ottenere valore si prolunga, annullando il vantaggio competitivo derivante dall’adozione della scienza dei dati in primo luogo. Uno dei fattori spesso trascurati che svolge un ruolo cruciale nell’incremento dell’efficienza è il ruolo di IT.

Mentre tradizionalmente i dipartimenti IT si concentrano sulla manutenzione dell’integrità del sistema e dell’infrastruttura, la crescita della scienza dei dati amplia il loro ruolo. Essi sono ora strumentali per stabilire flussi di lavoro automatizzati e promuovere l’adozione di pratiche agili, il che ha un impatto diretto sull’efficienza dei costi.

Un modo concreto per aumentare l’efficienza è mappare gli Epics, o grandi blocchi di lavoro, a progetti più piccoli (o l’equivalente unità di lavoro supportata dalla piattaforma di scienza dei dati) e legare i Compiti/Storie ai Progetti, una pratica spesso supportata da metodologie agili. Questa integrazione funge da faro, guidando i team attraverso le complessità dei progetti di scienza dei dati. Ogni Epic può essere scomposto in più piccoli compiti o storie, contribuendo alla definizione del progetto e all’assegnazione degli incarichi. Ciò favorisce non solo la trasparenza ma anche la responsabilizzazione, impulsando quindi l’efficienza.

Le pipeline automatizzate e i meccanismi di CI/CD (Integrazione Continua/Dispiegamento Continuo), spesso supervisionati da IT, migliorano ulteriormente questa efficienza. L’automazione accelera le attività routinarie, liberando ore di tempo dei data scientist per compiti più complessi e innovativi. Qui entra in gioco il ruolo indispensabile di IT. IT può configurare queste pipeline e mantenerle, assicurando che i team di scienza dei dati abbiano tutto ciò di cui hanno bisogno per lavorare efficientemente.

Un altro aspetto di ciò è la gestione delle risorse cloud e della potenza di calcolo. I modelli di apprendimento automatico richiedono intensa elaborazione, che è sia lunga che costosa. Qui, IT può allocare le risorse in modo oculato, in base al piano agile e ai compiti attuali dello sprint. Ciò evita lo spreco di potenza di calcolo, assicurando che venga utilizzata solo la quantità necessaria di risorse, riducendo così i costi.

In breve, il ruolo di IT sta evolvendo per diventare un facilitatore nell’implementazione di pratiche agili nella scienza dei dati, che a loro volta sono cruciali per il controllo dei costi e l’incremento dell’efficienza. Abilitando pratiche agili e automazione attraverso i team di scienza dei dati, IT si pone come un pilastro che supporta il framework agile nella scienza dei dati.

Sezione 6: Le implicazioni più ampie per la strategia aziendale e il vantaggio competitivo

Man mano che la scienza dei dati continua a maturare, diventa un componente centrale sempre più prezioso della strategia aziendale, offrendo opportunità significative di vantaggio competitivo. Con metodologie agili, i team di scienza dei dati possono amplificare questo impatto, promuovendo la scienza dei dati da uno strumento operativo a un asset strategico.

Nel panorama della strategia aziendale, l’agilità si traduce in adattabilità e prontezza nel rispondere ai cambiamenti del mercato. Le organizzazioni con processi agili incorporati nei loro progetti di scienza dei dati trovano più facile adattarsi o scalare, garantendo di rimanere avanti rispetto ai concorrenti. Ad esempio, suddividere progetti complessi in “Epics” o “Ticket di Compito” gestibili aiuta i decision-maker di livello esecutivo a comprendere la traiettoria dei complessi progetti di scienza dei dati e ad allocare le risorse in modo più oculato.

Inoltre, le pratiche agili favoriscono una cultura di miglioramento continuo e innovazione. Alla fine di ogni sprint, i team rivedono i loro progressi e adattano i futuri sprint di conseguenza. Questo processo iterativo favorisce un ambiente in cui il fallimento non viene penalizzato, ma visto come un’opportunità di apprendimento. In un campo come la scienza dei dati, spesso caratterizzato da incertezze e complessità, questa cultura rappresenta un forte vantaggio competitivo

Inoltre, i processi agili aiutano a gestire il rischio, una priorità critica per le organizzazioni che cercano di dominare il loro settore di mercato utilizzando la scienza dei dati. La natura iterativa dell’agile, unita alla sua enfasi sul feedback costante, garantisce che eventuali rischi siano identificati precocemente nel processo. Ciò consente di attuare tempestivamente strategie di mitigazione, assicurando che i progetti non siano solo completati in tempo ma rispettino anche gli standard di qualità attesi.

Concentrandosi su questi principi, le aziende possono sbloccare nuove dimensioni di valore, incidendo significativamente sul loro margine di profitto e posizionandosi come leader nei rispettivi settori.

Sezione 7: Breve Tutorial sulla creazione di un processo di sviluppo dei modelli utilizzando pratiche agili

Navigare nelle complessità dei progetti di scienza dei dati può essere scoraggiante, specialmente quando implica la creazione di modelli di apprendimento automatico. Segui questa guida passo passo per creare un processo di sviluppo dei modelli utilizzando metodologie agili, simili all’integrazione di Jira discussa in precedenza. L’obiettivo è demistificare il processo, rendendolo accessibile ai team di scienza dei dati e consentendo loro di operare in modo più efficiente ed efficace.

Passo 1: Definire l’ambito e gli obiettivi del progetto

Prima di iniziare qualsiasi progetto, rispondi alle seguenti domande per formare la base del tuo progetto agile:

  1. Qual è il problema che stai cercando di risolvere?
  2. Quali sono le metriche di successo?

Passo 2: Suddividi in cicli iterativi o sprint

Dividi il progetto in pezzi più piccoli e gestibili, anche chiamati sprint. Questi possono durare da due a quattro settimane, a seconda della complessità del progetto e della familiarità del team con le attività coinvolte.

Passo 3: Collega agli obiettivi aziendali più ampi (utilizzando epiche o task ticket)

Assicurati che il tuo progetto di data science, suddiviso in sprint, abbia collegamenti chiari agli obiettivi aziendali più ampi. Utilizza epiche o task ticket per mantenere questo allineamento, rendendo più facile per tutti i soggetti coinvolti, specialmente i decision-maker, vedere il quadro generale.

Passo 4: Assegna ruoli e crea team cross-funzionali

Nelle metodologie agili, i team cross-funzionali composti da data scientist, data engineer e business analyst sono fondamentali. Assegna ruoli e responsabilità fin dall’inizio per facilitare una collaborazione fluida.

Passo 5: Utilizza strumenti di project management agili

Strumenti simili a Jira possono essere molto utili per monitorare i progressi. Queste piattaforme consentono l’efficiente allocazione dei compiti e il monitoraggio dell’avanzamento degli sprint.

Passo 6: Favorisci la collaborazione e il feedback costante

Una cultura di comunicazione aperta e feedback costante è fondamentale. Incoraggia i membri del team a esprimere le loro opinioni e preoccupazioni, consentendo al progetto di adattarsi secondo necessità.

Passo 7: Monitora i progressi, adatta secondo necessità

Gli strumenti di project management agili ti aiutano a monitorare facilmente i progressi di un progetto. Sfruttali e se le cose non vanno secondo i piani, la metodologia agile ti consente di adattarti rapidamente. Apporta le necessarie modifiche sia nell’attuale sprint che pianificalo per il prossimo sprint.

Passo 8: Concludi con una retrospettiva e lezioni apprese

Dopo ogni sprint e alla fine del progetto, tieni una riunione di retrospettiva in cui il team discute ciò che è andato bene, cosa non è andato bene e come migliorare nei futuri sprint o progetti.

Conclusioni

In un mondo in cui la data science e l’apprendimento automatico sono sempre più importanti per guidare la strategia aziendale e ottenere un vantaggio competitivo, la gestione dei costi e il miglioramento dell’efficienza non possono essere sottovalutati. Adottare metodologie agili offre un solido quadro di lavoro per affrontare tali sfide in modo proattivo.

Mentre cerchi di ampliare le tue capacità di data science, considera i significativi vantaggi in termini di costi che una metodologia agile ben implementata può apportare alla tua organizzazione.

Ti incoraggiamo a approfondire ulteriormente le metodologie agili e magari a dedicarti anche a qualche ulteriore lettura o formazione pratica, mentre continui il tuo percorso nella data science. Con le pratiche corrette al loro posto, i tuoi progetti di data science non saranno solo un centro di costi, ma un prezioso asset che contribuirà agli obiettivi aziendali più ampi.

Riferimenti

[1] Will Oremus, AI chatbots lose money every time you use them. That is a problem., The Washington Post, giugno 2023, ultimo accesso il 30 agosto 2023, https://www.washingtonpost.com/technology/2023/06/05/chatgpt-hidden-cost-gpu-compute/

[2] Andrej Karpathy, State of GPT, Microsoft BUILD, maggio 23, 2023, https://www.youtube.com/watch?v=bZQun8Y4L2A