Machine Learning Operations (MLOps)
Scopri gli elementi essenziali di MLOps per ottimizzare l'implementazione dell'IA. Impara a gestire CI/CD, versioning dei dati e monitoraggio con Ultralytics e la nostra piattaforma.
Il Machine Learning Operations (MLOps) è un insieme di pratiche, principi e tecnologie che semplifica il processo
di trasferimento dei modelli di machine learning (ML) dallo
sviluppo sperimentale alla distribuzione affidabile in produzione. Combinando la natura esplorativa della scienza dei dati con la
rigorosa disciplina del DevOps, MLOps mira a unificare il ciclo di rilascio delle
applicazioni di intelligenza artificiale (AI).
Mentre lo sviluppo tradizionale di software si concentra principalmente sul versioning del codice, MLOps introduce
ulteriori complessità nella gestione di dati su larga scala e nell'evoluzione dei comportamenti dei modelli. Questo approccio olistico garantisce che i
sistemi di AI rimangano scalabili, accurati e governati durante il loro intero ciclo di vita.
I pilastri di MLOps
Il successo delle implementazioni MLOps si basa sul colmare il divario tra tre discipline distinte: ingegneria dei dati,
apprendimento automatico e DevOps.
-
Integrazione e consegna continua (CI/CD): proprio come il software standard utilizza
pipeline CI/CD per automatizzare i test e l'
implementazione, le pipeline MLOps automatizzano l'addestramento e la convalida dei modelli. Ciò garantisce che le modifiche al codice o ai dati
attivino automaticamente le fasi di verifica delle
prestazioni del modello prima che gli aggiornamenti raggiungano la
produzione.
-
Versioni dei dati e dei modelli: nella codifica tradizionale, si crea una versione solo del codice sorgente. In MLOps, i team
devono utilizzare strumenti come DVC (Data Version Control) per track nei
dati di addestramento insieme agli iperparametri del modello.
Ciò garantisce la
riproducibilità,
consentendo agli ingegneri di ricreare qualsiasi versione specifica del modello dalla cronologia.
-
Monitoraggio continuo: una volta implementati, i modelli possono degradarsi a causa del
concept drift, ovvero il cambiamento delle proprietà statistiche della
variabile target nel tempo. MLOps prevede l'impostazione di
sistemi di osservabilità per track quali la
latenza e l'accuratezza dell'inferenza, avvisando automaticamente i
team quando è necessario un nuovo addestramento.
Applicazioni nel mondo reale
MLOps è la spina dorsale dell'intelligenza artificiale aziendale moderna, che consente alle aziende di scalare in modo affidabile da un singolo modello a migliaia di
endpoint distribuiti.
-
Manutenzione predittiva nella produzione: le fabbriche utilizzano la
visione artificiale per identificare i difetti sulle
linee di assemblaggio. Una pipeline MLOps garantisce che, con l'introduzione di nuove linee di prodotti, i
modelli di rilevamento degli oggetti vengano riqualificati con nuove
immagini, versionati e distribuiti automaticamente sui dispositivi edge della fabbrica senza tempi di inattività. Ciò garantisce che il
controllo qualità
rimanga coerente anche al variare delle condizioni di produzione.
-
Inventario intelligente nel settore retail: i rivenditori utilizzano telecamere per track le scorte track . Poiché l'illuminazione dei negozi e
il packaging dei prodotti cambiano frequentemente, la deriva del modello è un
rischio costante. I sistemi MLOps monitorano i
punteggi di affidabilità; se l'affidabilità diminuisce, il sistema
segna le immagini per l'annotazione e avvia un ciclo di riqualificazione sul cloud, inviando un modello aggiornato ai negozi per
mantenere la gestione automatizzata dell'inventario.
Implementazione di MLOps con Ultralytics
Un passaggio fondamentale in qualsiasi flusso di lavoro MLOps è il
monitoraggio degli esperimenti. Ciò garantisce che ogni
esecuzione di addestramento venga registrata con la sua configurazione specifica, consentendo ai team di riprodurre i risultati o di ripristinare le versioni precedenti
se necessario.
L'esempio seguente mostra come addestrare un
modello YOLO26, l'ultimo modello all'avanguardia di
Ultralytics per tutti i nuovi progetti, abilitando al contempo il tracciamento del progetto. Questo crea naturalmente gli artefatti
necessari per una pipeline di produzione.
from ultralytics import YOLO
# Load the YOLO26 model (recommended for superior speed and accuracy)
model = YOLO("yolo26n.pt")
# Train the model while specifying project and name for organized logging
# This creates a structured directory of artifacts (weights, charts, args)
# which is essential for reproducibility in MLOps pipelines.
results = model.train(data="coco8.yaml", epochs=10, project="mlops_experiments", name="run_v1")
Organizzando le sessioni di formazione in progetti specifici, i team possono integrare facilmente strumenti come
MLflow o
TensorBoard per visualizzare le metriche delle prestazioni nel
tempo. Man mano che le organizzazioni crescono, spesso migrano questi flussi di lavoro sulla
Ultralytics , che fornisce un'interfaccia unificata per la gestione dei
set di dati, la formazione da remoto e l'implementazione di modelli in vari formati come
TensorRT per una velocità di inferenza ottimizzata.
MLOps e concetti correlati
Per implementare queste pratiche in modo efficace, è importante distinguere MLOps dai termini correlati nell'ecosistema.
-
MLOps vs. DevOps: DevOps si concentra sulla
distribuzione continua di applicazioni software. MLOps estende questi principi aggiungendo "Dati" e
"Modello" come elementi di primaria importanza. In DevOps, una modifica al codice attiva una build; in MLOps, anche una modifica nella distribuzione dei dati
o un calo di precisione possono attivare una
nuova esecuzione della pipeline.
-
MLOps vs. Model Serving:
Il Model Serving si riferisce specificatamente all'
infrastruttura utilizzata per ospitare un modello ed elaborare le
richieste di inferenza. MLOps è il termine più ampio
che comprende il serving, ma include anche le fasi di formazione, governance e monitoraggio.
-
MLOps vs. AutoML:
L'apprendimento automatico (AutoML)
si concentra sull'automazione del processo di creazione dei modelli (ad esempio, la selezione degli algoritmi). MLOps gestisce il ciclo di vita di quel
modello dopo che è stato creato e rende operativa la pipeline che esegue gli strumenti AutoML.