Ultralytics YOLO27:
Integrazioni

Registra gli esperimenti con Ultralytics YOLO usando l'integrazione con MLflow

Scopri come l'integrazione e il logging con MLflow possono migliorare i tuoi esperimenti con Ultralytics YOLO, consentendo un monitoraggio più efficace per le applicazioni di computer vision.

ABAbirami Vina9 min read
Logging degli esperimenti con Ultralytics YOLO tramite l'integrazione con MLflow

Puoi considerare un progetto di computer vision come un puzzle. In sostanza, insegni alle macchine a comprendere i dati visivi mettendo insieme i pezzi del puzzle, come raccogliere un dataset, addestrare un modello e distribuirlo. Quando tutto combacia, ottieni un sistema in grado di analizzare e interpretare efficacemente immagini e video.

Ma, proprio come in un vero puzzle, non ogni parte di un progetto di computer vision è semplice. Attività come il monitoraggio degli esperimenti (tenere traccia delle impostazioni, delle configurazioni e dei dati) e la registrazione dei log (acquisire risultati e metriche delle prestazioni) possono richiedere molto tempo e impegno. Sebbene questi passaggi siano fondamentali per migliorare e perfezionare i tuoi modelli di computer vision, a volte possono sembrare un collo di bottiglia.

È qui che entrano in gioco i modelli Ultralytics YOLO e la loro integrazione con MLflow. Modelli come Ultralytics YOLO11 supportano un'ampia gamma di attività di computer vision, tra cui il rilevamento degli oggetti, la segmentazione delle istanze e la classificazione delle immagini. Queste funzionalità consentono di creare applicazioni di computer vision interessanti. Poter contare su integrazioni come quella con MLflow permette agli ingegneri della computer vision di concentrarsi sul modello, invece di perdersi nei dettagli.

In particolare, l'integrazione MLflow semplifica il processo registrando diverse metriche, parametri e artefatti durante l'addestramento. In questo articolo analizzeremo come funziona l'integrazione MLflow, quali vantaggi offre e come puoi usarla per ottimizzare i tuoi flussi di lavoro Ultralytics YOLO.

Che cos'è MLflow?#

MLflow è una piattaforma open source (sviluppata da Databricks) progettata per semplificare e gestire l'intero ciclo di vita del machine learning. Comprende il processo di sviluppo, distribuzione e manutenzione dei modelli di machine learning.

MLflow include i seguenti componenti principali:

  • Monitoraggio degli esperimenti: questo componente si concentra sulla registrazione di dettagli importanti, come le impostazioni del modello, i risultati e i file di ogni esecuzione di addestramento. Ti aiuta a confrontare i modelli, vedere come le modifiche influiscono sulle prestazioni e trovare quello migliore.
  • Registro dei modelli: è come un sistema di archiviazione per i tuoi modelli, in cui puoi tenere traccia delle diverse versioni e organizzarle in fasi come test, staging e produzione.
  • Pacchettizzazione dei progetti: MLflow semplifica il raggruppamento dei tuoi progetti di machine learning, inclusi codice, impostazioni e strumenti necessari, così da poterli condividere e utilizzare in modo coerente tra team e ambienti diversi.
  • Distribuzione dei modelli: MLflow offre strumenti per distribuire rapidamente i modelli addestrati su dispositivi come workstation o piattaforme cloud quali AWS e Azure, rendendoli pronti per l'uso nel mondo reale.

Componenti di MLflow

Fig. 1 Componenti di MLflow.

I componenti di MLflow rendono il processo di machine learning più semplice ed efficiente da gestire. Grazie a questa integrazione, Ultralytics consente di usare la funzionalità di monitoraggio degli esperimenti di MLflow per registrare parametri, metriche e artefatti durante l'addestramento dei modelli YOLO. In questo modo è semplice monitorare e confrontare diverse versioni dei modelli YOLO.

L'integrazione MLflow semplifica l'addestramento#

Ora che abbiamo visto cos'è MLflow, analizziamo i dettagli dell'integrazione MLflow e le funzionalità che offre.

L'integrazione MLflow è progettata per rendere il processo di addestramento più efficiente e organizzato, monitorando e registrando automaticamente gli aspetti importanti dei tuoi esperimenti di computer vision. Supporta tre tipi principali di registrazione: metriche, parametri e artefatti.

Ecco una panoramica più dettagliata di ogni tipo di registrazione:

  • Registrazione delle metriche: le metriche sono valori quantitativi che misurano le prestazioni del tuo modello durante l'addestramento. Ad esempio, metriche come accuratezza, precisione, richiamo o perdita vengono monitorate al termine di ogni epoca (un passaggio completo attraverso il tuo dataset).
  • Registrazione dei parametri: i parametri sono le impostazioni che definisci prima dell'inizio dell'addestramento del modello, come il learning rate, la dimensione del batch (il numero di campioni elaborati in un singolo passaggio di addestramento) e il numero di epoche. Questi parametri influenzano significativamente il comportamento e le prestazioni del tuo modello.
  • Registrazione degli artefatti: gli artefatti sono gli output o i file generati durante l'addestramento. Includono file essenziali come i pesi del modello (i valori numerici appresi dal modello durante l'addestramento), i file di configurazione (che memorizzano le impostazioni di addestramento) e altri dati rilevanti.

Funzionalità principali di registrazione dell'integrazione MLflow

Fig. 2. Funzionalità principali di registrazione dell'integrazione MLflow. Immagine dell'autore.

Come funziona l'integrazione MLflow#

Puoi consultare la documentazione Ultralytics per istruzioni dettagliate sull'attivazione dell'integrazione MLflow. Una volta configurata, l'integrazione monitora e registra automaticamente i dettagli principali dei tuoi esperimenti di addestramento, come illustrato sopra. Questo elimina la necessità di un monitoraggio manuale e ti aiuta a concentrarti sul perfezionamento dei modelli.

Con l'integrazione MLflow, tutte le tue esecuzioni di addestramento vengono archiviate in un unico posto, rendendo più semplice confrontare i risultati e valutare diverse configurazioni. Confrontando i risultati registrati, puoi identificare le configurazioni con le migliori prestazioni e usare queste informazioni per migliorare i tuoi modelli. In questo modo il tuo flusso di lavoro è più efficiente, ben documentato e riproducibile.

In particolare, ogni sessione di addestramento viene organizzata in un esperimento, che funge da contenitore per più esecuzioni. All'interno di un esperimento puoi visualizzare tutte le esecuzioni associate, confrontarne le prestazioni fianco a fianco e analizzare le tendenze tra configurazioni diverse.

Ad esempio, se stai testando diversi learning rate o dimensioni del batch con Ultralytics YOLOv8, tutte le esecuzioni correlate vengono raggruppate nello stesso esperimento per semplificare il confronto e l'analisi, come mostrato di seguito.

Visualizzazione degli esperimenti usando l'integrazione MLflow

Fig. 3. Puoi visualizzare gli esperimenti usando l'integrazione MLflow.

A livello della singola esecuzione, MLflow fornisce informazioni dettagliate sulla specifica sessione di addestramento. Puoi visualizzare metriche come accuratezza, perdita e precisione nel corso delle epoche, controllare i parametri di addestramento utilizzati (ad esempio, dimensione del batch e learning rate) e accedere agli artefatti generati, come i pesi del modello e i file di configurazione. Questi dettagli vengono archiviati in un formato organizzato, rendendo semplice rivedere o riprodurre qualsiasi esecuzione.

Scegliere l'integrazione MLflow: perché si distingue#

Mentre consulti la documentazione Ultralytics ed esplori le integrazioni disponibili, potresti chiederti: cosa distingue l'integrazione MLflow e perché dovrei sceglierla per il mio flusso di lavoro?

Poiché integrazioni come TensorBoard offrono anch'esse strumenti per monitorare le metriche e visualizzare i risultati, è importante comprendere le qualità uniche che distinguono l'integrazione MLflow.

Ecco perché MLflow potrebbe essere la scelta ideale per i tuoi progetti YOLO:

  • Interfaccia intuitiva: la dashboard di MLflow semplifica la visualizzazione degli esperimenti, il confronto delle esecuzioni e l'analisi dei risultati, aiutandoti a identificare rapidamente le configurazioni con le migliori prestazioni.
  • Registrazione di metriche personalizzate: gli ingegneri della computer vision possono registrare metriche personalizzate oltre a quelle standard, consentendo un'analisi più approfondita e specifica per le esigenze del progetto.
  • Supporto per flussi di lavoro multilingue: MLflow è compatibile con diversi linguaggi di programmazione, tra cui Python, R e Java, facilitando l'integrazione in pipeline di machine learning diversificate.

Applicazioni pratiche di Ultralytics YOLO11 e dell'integrazione MLflow#

Per comprendere meglio quando puoi usare l'integrazione MLflow, consideriamo un'applicazione di AI nel settore sanitario in cui devi addestrare Ultralytics YOLO11 per rilevare tumori in immagini radiografiche o di scansioni TC.

In uno scenario del genere, il dataset sarebbe composto da immagini mediche annotate. Dovresti sperimentare diverse configurazioni, ad esempio regolando i learning rate, le dimensioni dei batch e le tecniche di pre-elaborazione delle immagini, per raggiungere un'accuratezza ottimale. Poiché nel settore sanitario la posta in gioco è alta e precisione e affidabilità sono fondamentali, monitorare manualmente ogni esperimento può diventare rapidamente ingestibile.

Rilevamento dei tumori con Ultralytics YOLO11

Fig. 4 Rilevamento dei tumori usando Ultralytics YOLO11.

L'integrazione MLflow affronta questa sfida registrando automaticamente parametri, metriche e artefatti di ogni esperimento. Ad esempio, se modifichi il learning rate o applichi una nuova strategia di augmentation, MLflow registra queste modifiche insieme alle metriche delle prestazioni. Inoltre, MLflow salva i pesi e le configurazioni dei modelli addestrati, assicurando che i modelli con buone prestazioni possano essere facilmente riprodotti e distribuiti.

Questo è solo un esempio di come l'integrazione MLflow migliori la gestione degli esperimenti nelle applicazioni di vision AI. Le stesse funzionalità si applicano ad altre applicazioni di computer vision, tra cui:

  • Guida autonoma: Ultralytics YOLO11 può essere usato per rilevare e classificare pedoni, veicoli e segnali stradali in tempo reale, migliorando la sicurezza e l'efficienza dei sistemi di guida autonoma.
  • Analisi del retail: i modelli di rilevamento degli oggetti possono monitorare il comportamento dei clienti, tenere traccia del posizionamento dei prodotti e ottimizzare l'inventario analizzando l'attività nei punti vendita tramite flussi video.
  • Sicurezza e videosorveglianza: i modelli possono essere addestrati per rilevare anomalie o monitorare l'attività in tempo reale in aree sensibili, aumentando la sicurezza.

Vantaggi dell'integrazione MLflow#

L'integrazione MLflow con i modelli YOLO rende la gestione degli esperimenti di machine learning più semplice ed efficiente. Automatizzando le attività principali e mantenendo tutto organizzato, ti permette di concentrarti sulla creazione e sul miglioramento dei tuoi modelli. Ecco una panoramica dei vantaggi principali:

  • Scalabilità per progetti di grandi dimensioni: la piattaforma gestisce in modo efficiente più esperimenti e modelli, risultando adatta a team più grandi e flussi di lavoro complessi.
  • Cronologia dettagliata degli esperimenti: la piattaforma conserva una cronologia completa degli esperimenti, consentendoti di rivedere le esecuzioni passate, analizzare le configurazioni precedenti e imparare dai risultati ottenuti in precedenza.
  • Opzioni per disabilitare e reimpostare: la registrazione di MLflow può essere facilmente disabilitata quando non serve e le impostazioni possono essere ripristinate ai valori predefiniti, offrendo la flessibilità necessaria per adattarsi a diverse esigenze del flusso di lavoro.

Punti chiave#

L'integrazione MLflow rende la gestione e l'ottimizzazione degli esperimenti Ultralytics YOLO più semplici ed efficienti. Monitorando automaticamente dettagli importanti come parametri, metriche e artefatti, semplifica il processo ed elimina la complessità della gestione manuale degli esperimenti.

Che tu stia lavorando a soluzioni sanitarie come il rilevamento dei tumori, migliorando sistemi di guida autonoma o potenziando l'analisi del retail, questa integrazione aiuta a mantenere tutto organizzato e riproducibile. Grazie alla sua interfaccia intuitiva e alla sua flessibilità, MLflow consente agli sviluppatori di concentrarsi sulla creazione di modelli migliori e sull'innovazione nelle applicazioni di vision AI.

Unisciti alla nostra community e dai un'occhiata al nostro repository GitHub per saperne di più sull'AI. Puoi anche esplorare altre applicazioni della computer vision nella produzione o dell'AI nelle auto a guida autonoma nelle nostre pagine dedicate alle soluzioni.

Explore solutions

Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più
Visione artificiale per immagini aeree

Visione artificiale per immagini aeree

Traduci immagini di droni e aeree in informazioni in tempo reale per agricoltura, acquacoltura, monitoraggio ambientale, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Porta la visione artificiale al monitoraggio aereo con i modelli Ultralytics YOLO. Potenzia droni, flussi di lavoro aerospaziali, conservazione ambientale e industrie geospaziali con soluzioni di computer vision.
Scopri di più

Proteggi ogni sito con i modelli Ultralytics YOLO. La visione artificiale alimenta il monitoraggio del perimetro, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Computer vision nella robotica

Computer vision nella robotica

Potenzia macchine più intelligenti con i modelli Ultralytics YOLO. La Vision AI nella robotica abilita la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Computer vision nella logistica

Computer vision nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. La Vision AI abilita l'ispezione dei pacchi, lo smistamento, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Computer vision nel commercio al dettaglio

Computer vision nel commercio al dettaglio

Reinventa il commercio al dettaglio con i modelli Ultralytics YOLO. La Vision AI potenzia il tracciamento dell'inventario, il monitoraggio degli scaffali, la gestione delle code e analisi più intelligenti dei clienti.
Scopri di più
Computer vision nel settore sanitario

Computer vision nel settore sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. La Vision AI nel settore sanitario abilita imaging medico più rapido, diagnosi più intelligenti e monitoraggio dei pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La Vision AI supporta il controllo qualità, il rilevamento dei difetti, la conformità ai DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La vision AI migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli per strade più intelligenti.
Scopri di più
Computer vision in agricoltura

Computer vision in agricoltura

Porta la vision AI nell'agricoltura intelligente con i modelli Ultralytics YOLO. Abilita il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'AI!

Inizia il tuo percorso verso il futuro del machine learning