Addestramento personalizzato dei modelli Ultralytics YOLO su Lightning AI

Abirami Vina

3 minuti di lettura

13 gennaio 2025

Scoprite come Lightning AI, presentato a YOLO Vision 2024, semplifica lo sviluppo di AI scalabili con una formazione, una distribuzione e una collaborazione più rapide.

Che siate sviluppatori di IA esperti o che abbiate appena iniziato a esplorare l'IA visiva, è fondamentale disporre di un ambiente affidabile per giocare e sperimentare con modelli di computer vision come Ultralytics YOLO11. Per ambiente si intendono gli strumenti, le risorse e le infrastrutture necessarie per progettare, testare e distribuire in modo efficiente i modelli di IA. 

Sebbene numerose piattaforme online offrano diversi strumenti di IA, molte non forniscono un ambiente unificato per l'intero ciclo di vita dell'IA, dalla preparazione dei dati alla distribuzione dei modelli. È qui che interviene Lightning AI, una piattaforma all-in-one per lo sviluppo dell'IA, per semplificare il processo dalla preparazione dei dati alla distribuzione.

L'importanza di semplificare lo sviluppo dell'IA è stata illustrata a YOLO Vision 2024 (YV24), un evento ibrido annuale ospitato da Ultralytics e incentrato sui progressi dell'IA e della computer vision. Luca Antiga, CTO di Lightning AI, ha tenuto una conferenza dal titolo"Going YOLO on Lightning Studios", in cui ha spiegato come addestrare i modelli YOLO di Ultralytics in modo rapido, fluido e senza farsi coinvolgere dalle complessità tecniche di Lightning AI.

In questo articolo, approfondiremo i punti chiave dell'intervento di Luca, dalle applicazioni reali di computer vision alle dimostrazioni dal vivo sull'addestramento e la distribuzione dei modelli Ultralytics YOLO con Lightning AI. Iniziamo!

Utilizzo di Lightning AI e Ultralytics YOLO per semplificare lo sviluppo dell'IA

Luca ha iniziato il suo intervento condividendo i suoi pensieri e il suo apprezzamento per l'influenza dei modelli YOLO in vari settori. Ha sottolineato come i modelli YOLO possano essere applicati in settori come la produzione e l'agricoltura. Ha detto: "Apprezzo l'impatto che YOLO ha avuto sulla comunità dei costruttori - persone che devono risolvere problemi reali e pratici - e questo mi è molto vicino".

Collegando questo aspetto al crescente interesse per la formazione sull'IA, ha presentato Lightning AI, una piattaforma progettata per rendere lo sviluppo di modelli di IA più veloce, semplice e accessibile a tutti. È particolarmente utile per supportare i progressi iterativi dell'IA, aiutando gli sviluppatori a perfezionare e migliorare i modelli.

Figura 1. Luca Antiga presenta a distanza Lightning Studios a YV24.

Ha inoltre sottolineato che Lightning AI è simile a PyTorch Lightning, un framework che semplifica il processo di formazione dei modelli di IA. Tuttavia, la differenza sta nel fatto che Lightning AI è una piattaforma più completa che fornisce un insieme più ampio di strumenti e funzionalità per l'intero processo di sviluppo dell'IA, non solo per la formazione dei modelli di IA. 

Un componente essenziale di Lightning AI è Lightning Studios, che offre uno spazio di lavoro intuitivo per progettare, addestrare e distribuire modelli di IA, rendendo l'intero flusso di lavoro fluido ed efficiente. Si può pensare a Lightning Studios come a un ambiente di sviluppo riproducibile per l'IA che funziona nel cloud. Ad esempio, offre un ambiente simile a Jupyter Notebook che può essere duplicato e condiviso con un altro sviluppatore, contribuendo a migliorare la collaborazione. 

Luca ha poi approfondito i vantaggi di Lightning Studios, affermando: "La replica dell'ambiente non è più un problema. Se dovete passare da una macchina con CPU [Central Processing Unit] a una macchina con GPU [Graphics Processing Unit] o lanciare la formazione su un migliaio di macchine, il vostro ambiente sarà persistente".

Creazione di Lightning Studios per la formazione e lo sviluppo

Luca ha poi dimostrato quanto velocemente si possa iniziare a lavorare con Lightning Studios. Con pochi clic, è possibile aprire un nuovo studio e avere accesso a strumenti e ambienti come Jupyter Notebooks e VS Code, tutti impostati e pronti per la codifica. Ha mostrato la facilità con cui è possibile passare da una macchina all'altra. Se l'attività su cui si sta lavorando richiede più potenza, è possibile passare facilmente da una CPU a una GPU più potente. La GPU rimarrà attiva solo quando è in uso, altrimenti entrerà in modalità sleep, risparmiando i crediti.

Luca ha anche menzionato i vantaggi dell'uso dei modelli di studio. Si tratta di ambienti di codifica dell'IA preconfezionati dalla comunità, che possono essere utilizzati senza dover configurare nulla. La creazione di un ambiente per i progetti di IA può richiedere molto tempo e gli Studio Templates possono contribuire ad aumentare la produttività. Questi ambienti sono precaricati con tutto il necessario per i progetti di IA, come le dipendenze installate, i pesi dei modelli, i dati, il codice, ecc.

Figura 2. Luca spiega cosa sono i modelli di Studio.

Formazione dei modelli Ultralytics YOLO su Lightning Studios

Luca è poi passato alla demo dal vivo, evidenziando come sia possibile utilizzare Lightning Studio per addestrare i modelli Ultralytics YOLO. Ha aperto un modello di Studio, che aveva già installato tutte le dipendenze, e ha avviato una macchina con quattro GPU per accelerare il processo di addestramento. Per quanto riguarda i dati, ha detto che è possibile scegliere di memorizzarli direttamente sulla macchina o di inviarli in streaming dal cloud, rendendo il processo di addestramento più rapido ed efficiente.

Nel giro di pochi secondi, la macchina era pronta e Luca ha dato rapidamente il via alla sessione di allenamento. Durante la dimostrazione, un piccolo problema ha causato un arresto imprevisto della macchina, ma Lightning Studios ha ripreso senza problemi dal punto in cui era stata interrotta, assicurandosi che nessun progresso andasse perso. Luca ha sottolineato come questa affidabilità favorisca la fluidità dei flussi di lavoro, anche in caso di interruzioni impreviste.

Proseguendo con la demo, ha mostrato quanto sia facile monitorare i progressi dell'allenamento utilizzando TensorBoard, uno strumento per visualizzare le metriche di apprendimento automatico in tempo reale. Lightning Studio lo rende ancora più semplice, generando automaticamente URL che consentono all'utente o ai suoi colleghi nello stesso spazio di lavoro di accedere alle visualizzazioni di TensorBoard senza alcuna configurazione aggiuntiva. Questo semplifica la collaborazione e mantiene tutti sulla stessa pagina. 

Figura 3. Diagramma di flusso dell'addestramento dei modelli Ultralytics YOLO su Lightning Studios. Immagine dell'autore.

Distribuzione dei modelli YOLO di Ultralytics con Lit Serve

Dopo la dimostrazione, Luca ha spostato l'attenzione su un nuovo progetto, LitServe, lanciato di recente da Lightning AI. LitServe semplifica il processo di acquisizione di un modello addestrato e la sua trasformazione in un servizio scalabile utilizzabile da altri, eliminando la necessità di complesse pipeline di distribuzione. È stato progettato per gestire tutto, dal confezionamento del modello alla sua distribuzione con il minimo sforzo.

Per dimostrarlo in tempo reale, Luca ha dato al pubblico una rapida dimostrazione utilizzando un modello Ultralytics YOLOv8 pre-addestrato. È stato in grado di creare una semplice API per gestire le richieste in arrivo e restituire le previsioni delle immagini in pochi secondi. Ciò significa che chiunque può inviare un ping a questa API con un'immagine e ricevere risultati per attività di computer vision come il rilevamento di oggetti quasi istantaneamente. Dietro le quinte, il modello YOLOv8 di Ultralytics viene distribuito come servizio, gestendo in modo efficiente le richieste, elaborando le immagini e fornendo previsioni con una latenza minima.

Figura 4. Luca mostra LitServe di Lightning AI durante YV24.

Ha eseguito un'inferenza su un'immagine di pizza e Ultralytics YOLOv8 ha identificato con successo oggetti come la pizza, un cucchiaio e un tavolo da pranzo. Ha spiegato che mentre la prima richiesta richiede un tempo leggermente più lungo a causa di un "avvio a freddo", le richieste successive sono molto più veloci una volta che il sistema si è riscaldato.

Luca ha poi chiesto: "E se volessi esporre questo modello al mondo esterno?". Ha spiegato come il plugin API Builder renda semplice la trasformazione del modello in un servizio vivo e pronto per la produzione. Grazie a funzioni quali domini personalizzati, maggiore sicurezza e integrazione perfetta, è possibile rendere il modello accessibile a chiunque.

I principali vantaggi dell'utilizzo di Lightning Studios

Per concludere il suo intervento, Luca ha parlato della scalabilità e della flessibilità di Lightning Studio per lo sviluppo dell'intelligenza artificiale. Ha ricordato come la piattaforma sia in grado di addestrare i modelli su più macchine, fino a 10.000 nodi, con un addestramento fault-tolerant che riprende automaticamente dopo qualsiasi interruzione. 

Ad esempio, se un lavoro di formazione su un cluster di GPU viene interrotto a causa di un problema hardware o di un riavvio del server, Lightning Studios fa in modo che il processo riprenda esattamente da dove era stato interrotto. Questo lo rende ideale per progetti di intelligenza artificiale su larga scala, come l'addestramento di modelli di deep learning su dataset enormi come ImageNet o COCO.

Ecco altri vantaggi chiave di Lightning Studios di cui ha parlato Luca:

  • Crediti GPU mensili gratuiti: Agli utenti vengono forniti 15 crediti GPU gratuiti ogni mese, che si ricaricano automaticamente, garantendo la possibilità di sperimentare e sviluppare senza costi aggiuntivi.
  • Collaborazione migliorata: Gli spazi di team condivisi e gli ambienti riproducibili di Lightning Studio consentono ai membri del team di lavorare insieme senza problemi, garantendo coerenza ed efficienza tra i progetti.
  • Opzioni di istanza flessibili: Offre la flessibilità di scegliere tra istanze interrompibili e non interrompibili, consentendo agli utenti di risparmiare sui costi delle macchine GPU con opzioni interrompibili.
  • Integrazione con gli strumenti esistenti: La piattaforma si integra con strumenti di sviluppo remoto come SSH (Secure Socket Shell) e VS Code, offrendo la flessibilità di lavorare in locale o nel cloud.

Punti di forza

Il keynote di Luca a YV24 ha evidenziato come l'IA, combinata con strumenti come i modelli YOLO di Ultralytics e Lightning AI, stia cambiando il modo in cui risolviamo i problemi del mondo reale. Questi strumenti rendono più facile per gli sviluppatori addestrare e distribuire modelli che sono stati progettati per affrontare problemi specifici in una serie di settori.

Ha illustrato come Lightning Studios renda l'intero processo di sviluppo più veloce e accessibile, consentendo agli sviluppatori di creare facilmente soluzioni potenti. Al centro di piattaforme all'avanguardia come Lightning AI, i modelli di computer vision stanno trasformando il modo in cui le soluzioni di AI affrontano le sfide. In particolare, con l'ultimo modello Ultralytics YOLO11, gli sviluppatori possono creare soluzioni che hanno un impatto significativo.

Unitevi alla nostra comunità per rimanere aggiornati sull'IA e sui suoi usi pratici. Consultate il nostro repository GitHub per esplorare le innovazioni in settori come l'IA nelle auto a guida autonoma e la computer vision nella sanità.

Costruiamo insieme il futuro
dell'IA!

Iniziate il vostro viaggio nel futuro dell'apprendimento automatico

Iniziare gratuitamente
Link copiato negli appunti