
L'interfaccia Domino Model Monitor in Domino 4.6
Credito: Domino Data Lab
MLOps è la controparte delle operazioni di machine learning a DevOps e DataOps. Ma, in tutto il settore, le definizioni per MLOps possono variare. Alcuni vedono MLOps come un focus sulla gestione degli esperimenti ML. Altri vedono il punto cruciale di MLOps come l'impostazione di pipeline CI/CD (integrazione continua/consegna continua) per modelli e dati allo stesso modo di DevOps per il codice. Altri fornitori e clienti ritengono che gli MLOps dovrebbero concentrarsi sulla cosiddetta ingegneria delle funzionalità, il processo di trasformazione specializzato per i dati utilizzati per addestrare i modelli ML. Per altri, MLOps riguarda tutto dopo lo sviluppo del modello, incluso il mantenimento dei modelli in un repository, la loro distribuzione e il monitoraggio della loro integrità operativa, prestazioni e accuratezza.
Domino, da un capo all'altro
Alcuni fornitori vedono MLOps come comprendente tutto quanto sopra. Uno di questi fornitori è Domino Data Lab, che oggi annuncia una nuova versione, Domino 4.6, della sua piattaforma MLOps end-to-end. E poiché Domino si concentra su tutti gli aspetti delle operazioni di apprendimento automatico, non ne ha aggiunti di nuovi, ma ne ha invece notevolmente migliorati alcuni: monitoraggio dei modelli, implementazione del cloud e ambienti di calcolo distribuito supportati per lo sviluppo e la formazione dei modelli.
I miglioramenti del monitoraggio raccontano la storia di due città MLOps. In uno, i clienti reali che stanno ancora introducendo il ML nelle loro attività o anche solo prendendo a calci le gomme del ML. Per loro è sufficiente la sola presenza del monitoraggio. Dall'altro lato, i clienti vivono che sono passati al machine learning su larga scala, con centinaia o addirittura migliaia di modelli distribuiti. Per questa coorte, il monitoraggio deve essere scalabile.
Monitoraggio, cloud e calcolo, oddio
ZDNet ha parlato con il co-fondatore e CEO di Domino Data Lab Nick Elprin, che ci ha fornito i dettagli su Domino 4.6. Per prima cosa ha spiegato, per quel gruppo che necessita di monitoraggio del modello ad alte prestazioni, che Domino Model Monitor (DMM – illustrato nello screenshot sopra) è stato migliorato per essere elastico e scalabile. In effetti, afferma Elprin, gli utenti godranno di miglioramenti fino a 100 volte superiori nelle prestazioni della deriva dei dati di Domino e del rilevamento della deriva del modello. Il rilevamento della deriva è fondamentale per mantenere i modelli accurati ed equi. Nelle applicazioni di marketing, ciò può aumentare la soddisfazione del cliente. Altri scenari includono un'approvazione più responsabile di vantaggi e reclami o un rilevamento delle frodi più accurato.
Domino 4.6 supporta anche l'implementazione del cloud su Microsoft Azure e Google Cloud, invece che solo su Amazon Web Services. In particolare, la connessione ai dati in Azure Data Lake Storage (ADLS) e Google Cloud Storage (GCS) è ora supportata oltre ai dati in Amazon S3. Inoltre, il monitoraggio si estende ai modelli distribuiti ai livelli Infrastructure as a Service (Iaas) e Kubernetes di tutti e tre i provider di cloud. Elprin ha spiegato che queste funzionalità sono state aggiunte in risposta diretta alla domanda dei clienti con strategie multi-cloud, cercando di evitare il blocco a qualsiasi provider cloud specifico.
Infine, in risposta alla sempre maggiore necessità di potenza di calcolo per addestrare più modelli, più rapidamente, Domino sta estendendo il supporto di calcolo per includere Ray e Dask, anziché solo Apache Spark. Ray è un framework di esecuzione distribuito in grado di parallelizzare i carichi di lavoro su CPU e core su una singola macchina, su un'infrastruttura cloud o su cluster Kubernetes. Dask è una libreria di elaborazione parallela Python che implementa versioni scalate e parallelizzate delle comuni librerie di data science Python come NumPy, Pandas e scikit-learn. Ray e Dask possono essere usati singolarmente o, usando il nome appropriato Dask on Ray, possono essere combinati.
Rompere il codice
Nella sua discussione con ZDNet, Elprin ha spiegato alcuni dei principali differenze, secondo lui, tra DevOps e MLOps. Farò del mio meglio per riassumere questa spiegazione qui.
Per cominciare, i modelli ML non sono mero codice; utilizzano più dati e richiedono un'elaborazione molto più intensiva rispetto a un'applicazione tipica e al codice basato su server. Inoltre, la scienza dei dati è come la ricerca: gli scienziati dei dati devono sperimentare, provando molte librerie Python (o R), vari algoritmi e, più in generale, approcci o idee diversi, prima di ottenere qualcosa che funzioni. Questo è paragonabile al modo in cui gli scienziati naturali devono testare varie ipotesi nel proprio lavoro. Inoltre, con i modelli, non puoi semplicemente scrivere unit test, poiché i modelli sono più probabilistici che deterministici.
Con tutto questo in mente, la mossa di Domino per migliorare le sue capacità di monitoraggio e supportare numerosi ambienti cloud e di elaborazione, ha perfettamente senso. I data scientist non devono solo eseguire il debug del codice e assicurarsi che sia in esecuzione. Hanno bisogno di sperimentarlo, monitorarlo, distribuirlo e valutarne continuamente l'efficacia. Ecco perché MLOps è una categoria a sé stante, e apparentemente perché Domino adotta un approccio scorecard alle funzionalità MLOps, piuttosto che un approccio checklist.
Domino afferma che i clienti esistenti possono eseguire l'aggiornamento alla versione 4.6 immediatamente.
< h3>Argomenti correlati:
Big Data Analytics Trasformazione digitale CXO Internet of Things Innovation Enterprise Software