Dare impulso ai progetti di CV con gli strumenti open source di Hugging Face
Scopri con noi una nuova analisi di un intervento principale di YOLO Vision 2024, incentrato sull’esplorazione di come gli strumenti open source di Hugging Face stiano promuovendo lo sviluppo dell’AI.

Scegliere gli algoritmi giusti è solo una parte della creazione di soluzioni di computer vision efficaci. Gli ingegneri AI lavorano spesso con grandi dataset, eseguono il fine-tuning dei modelli per attività specifiche e ottimizzano i sistemi AI per ottenere prestazioni efficaci nel mondo reale. Con la rapida adozione delle applicazioni AI, cresce anche la necessità di strumenti che semplifichino questi processi.
A YOLO Vision 2024 (YV24), l'evento ibrido annuale promosso da Ultralytics, esperti di AI e appassionati di tecnologia si sono riuniti per esplorare le ultime innovazioni nella computer vision. L'evento ha dato vita a discussioni su vari argomenti, tra cui i modi per accelerare lo sviluppo delle applicazioni AI.
Uno dei momenti salienti dell'evento è stato un keynote su Hugging Face, una piattaforma AI open source che semplifica l'addestramento, l'ottimizzazione e il deployment dei modelli. Pavel Iakubovskii, Machine Learning Engineer presso Hugging Face, ha spiegato come i suoi strumenti migliorino i flussi di lavoro per attività di computer vision come il rilevamento di oggetti nelle immagini, la categorizzazione delle immagini in gruppi diversi e la generazione di previsioni senza un addestramento preliminare su esempi specifici (zero-shot learning).
Hugging Face Hub ospita e offre accesso a diversi modelli di computer vision come Ultralytics YOLO11. In questo articolo riepilogheremo i punti chiave dell'intervento di Pavel e vedremo come gli sviluppatori possono usare gli strumenti open source di Hugging Face per creare e distribuire rapidamente modelli AI.

Fig. 1. Pavel sul palco a YV24.
Hugging Face Hub accelera lo sviluppo dell'AI#
Pavel ha iniziato il suo intervento presentando Hugging Face come una piattaforma AI open source che offre modelli pre-addestrati per una vasta gamma di applicazioni. Questi modelli sono progettati per diversi ambiti dell'AI, tra cui l'elaborazione del linguaggio naturale (NLP), la computer vision e l'AI multimodale, consentendo ai sistemi di elaborare diversi tipi di dati, come testo, immagini e audio.
Pavel ha spiegato che Hugging Face Hub ospita ormai oltre 1 milione di modelli e che gli sviluppatori possono trovare facilmente quelli adatti ai loro progetti specifici. Hugging Face punta a semplificare lo sviluppo dell'AI offrendo strumenti per l'addestramento, il fine-tuning e il deployment dei modelli. Quando gli sviluppatori possono sperimentare con modelli diversi, il processo di integrazione dell'AI nelle applicazioni reali diventa più semplice.
Sebbene inizialmente Hugging Face fosse noto per l'NLP, da allora si è espanso nella computer vision e nell'AI multimodale, consentendo agli sviluppatori di affrontare una gamma più ampia di attività AI. Dispone inoltre di una solida community in cui gli sviluppatori possono collaborare, condividere informazioni e ricevere supporto tramite forum, Discord e GitHub.
Esplorare i modelli Hugging Face per le applicazioni di computer vision#
Entrando più nel dettaglio, Pavel ha spiegato come gli strumenti di Hugging Face semplifichino la creazione di applicazioni di computer vision. Gli sviluppatori possono usarli per attività come la classificazione delle immagini, il rilevamento degli oggetti e le applicazioni di visione-linguaggio.
Ha inoltre sottolineato che molte di queste attività di computer vision possono essere gestite con modelli pre-addestrati disponibili su Hugging Face Hub, risparmiando tempo perché si riduce la necessità di addestrare i modelli da zero. Hugging Face offre infatti oltre 13.000 modelli pre-addestrati per attività di classificazione delle immagini, inclusi modelli per la classificazione degli alimenti, degli animali domestici e per il rilevamento delle emozioni.
Sottolineando l'accessibilità di questi modelli, ha detto: "Probabilmente non hai nemmeno bisogno di addestrare un modello per il tuo progetto: potresti trovarne uno sull'Hub già addestrato da qualcuno della community."
Modelli Hugging Face per il rilevamento degli oggetti#
Riportando un altro esempio, Pavel ha spiegato come Hugging Face possa aiutare nel rilevamento degli oggetti, una funzione fondamentale della computer vision utilizzata per identificare e localizzare gli oggetti all'interno delle immagini. Anche con una quantità limitata di dati annotati, i modelli pre-addestrati disponibili su Hugging Face Hub possono rendere più efficiente il rilevamento degli oggetti.
Ha inoltre fornito una rapida panoramica di diversi modelli progettati per questa attività che puoi trovare su Hugging Face:
- Modelli di rilevamento degli oggetti in tempo reale: negli ambienti dinamici, dove la velocità è fondamentale, modelli come Detection Transformer (DETR) offrono funzionalità di rilevamento degli oggetti in tempo reale. DETR è addestrato sul dataset COCO ed è progettato per elaborare in modo efficiente caratteristiche multiscala, risultando adatto alle applicazioni in cui i tempi sono critici.
- Modelli visione-linguaggio: questi modelli combinano l'elaborazione di immagini e testo, consentendo ai sistemi AI di associare le immagini alle descrizioni o di riconoscere oggetti al di là dei dati di addestramento. Tra gli esempi figurano CLIP e SigLIP, che migliorano la ricerca di immagini collegando il testo agli elementi visivi e consentono alle soluzioni AI di identificare nuovi oggetti comprendendone il contesto.
- Modelli di rilevamento degli oggetti zero-shot: possono identificare oggetti mai visti prima comprendendo la relazione tra immagini e testo. Tra gli esempi figurano OwlVit, GroundingDINO e OmDet, che usano lo zero-shot learning per rilevare nuovi oggetti senza la necessità di dati di addestramento annotati.
Come usare i modelli Hugging Face#
Pavel ha poi spostato l'attenzione sull'utilizzo pratico dei modelli Hugging Face, spiegando tre modi in cui gli sviluppatori possono sfruttarli: esplorare i modelli, testarli rapidamente e personalizzarli ulteriormente.
Ha mostrato come gli sviluppatori possano consultare i modelli direttamente su Hugging Face Hub senza scrivere codice, rendendo semplice testarli all'istante tramite un'interfaccia interattiva. "Puoi provarlo senza scrivere nemmeno una riga di codice o scaricare il modello sul tuo computer", ha aggiunto Pavel. Poiché alcuni modelli sono grandi, eseguirli sull'Hub aiuta a evitare i limiti di spazio di archiviazione e di elaborazione.

Fig. 2. Come usare i modelli Hugging Face.
Inoltre, l'API di inferenza di Hugging Face consente agli sviluppatori di eseguire modelli AI con semplici chiamate API. È ideale per test rapidi, progetti proof-of-concept e prototipazione rapida senza la necessità di una configurazione complessa.
Per i casi d'uso più avanzati, gli sviluppatori possono usare il framework Hugging Face Transformers, uno strumento open source che offre modelli pre-addestrati per attività di testo, visione e audio, supportando sia PyTorch sia TensorFlow. Pavel ha spiegato che, con sole due righe di codice, gli sviluppatori possono recuperare un modello da Hugging Face Hub e collegarlo a uno strumento di pre-elaborazione, come un processore di immagini, per analizzare i dati delle immagini nelle applicazioni di Vision AI.
Ottimizzare i flussi di lavoro AI con Hugging Face#
Pavel ha poi spiegato come Hugging Face possa semplificare i flussi di lavoro AI. Uno degli argomenti principali che ha trattato è stata l'ottimizzazione del meccanismo di attenzione in Transformers, una funzionalità fondamentale dei modelli di deep learning che li aiuta a concentrarsi sulle parti più rilevanti dei dati di input. Questo migliora la precisione delle attività di elaborazione del linguaggio e di computer vision. Tuttavia, può richiedere molte risorse.
Ottimizzare il meccanismo di attenzione può ridurre significativamente l'uso della memoria migliorando al contempo la velocità. Pavel ha osservato: "Ad esempio, passando a un'implementazione dell'attenzione più efficiente, potresti ottenere prestazioni fino a 1,8 volte più veloci."
Hugging Face offre il supporto integrato per implementazioni del meccanismo di attenzione più efficienti all'interno del framework Transformers. Gli sviluppatori possono abilitare queste ottimizzazioni specificando semplicemente un'implementazione alternativa dell'attenzione durante il caricamento di un modello.
Optimum e Torch Compile#
Ha parlato anche della quantizzazione, una tecnica che rende più piccoli i modelli AI riducendo la precisione dei numeri che usano senza compromettere eccessivamente le prestazioni. Questo consente ai modelli di usare meno memoria e di funzionare più velocemente, rendendoli più adatti ai dispositivi con potenza di elaborazione limitata, come smartphone e sistemi embedded.
Per migliorare ulteriormente l'efficienza, Pavel ha presentato la libreria Hugging Face Optimum, un insieme di strumenti progettati per ottimizzare e distribuire i modelli. Con poche righe di codice, gli sviluppatori possono applicare tecniche di quantizzazione e convertire i modelli in formati efficienti come scambio di reti neurali aperte (ONNX), consentendo loro di funzionare senza problemi su diversi tipi di hardware, inclusi server cloud e dispositivi edge.

Fig. 3. Pavel ha parlato della libreria Optimum e delle sue funzionalità.
Infine, Pavel ha menzionato i vantaggi di Torch Compile, una funzionalità di PyTorch che ottimizza il modo in cui i modelli AI elaborano i dati, rendendoli più veloci ed efficienti. Hugging Face integra Torch Compile nelle proprie librerie Transformers e Optimum, consentendo agli sviluppatori di sfruttare questi miglioramenti delle prestazioni con modifiche minime al codice.
Ottimizzando la struttura computazionale del modello, Torch Compile può ridurre i tempi di inferenza e aumentare la frequenza dei fotogrammi da 29 a 150 fotogrammi al secondo senza compromettere precisione o qualità.
Distribuire i modelli con gli strumenti Hugging Face#
Proseguendo, Pavel ha accennato brevemente a come gli sviluppatori possano estendere e distribuire modelli di Vision AI usando gli strumenti Hugging Face dopo aver selezionato il modello giusto e scelto l'approccio migliore per lo sviluppo.
Ad esempio, gli sviluppatori possono distribuire applicazioni AI interattive usando Gradio e Streamlit. Gradio consente agli sviluppatori di creare interfacce basate sul Web per i modelli di machine learning, mentre Streamlit aiuta a creare applicazioni interattive per i dati con semplici script Python.
Pavel ha inoltre osservato: “Non devi iniziare a scrivere tutto da zero”, riferendosi alle guide, ai notebook di addestramento e agli script di esempio forniti da Hugging Face. Queste risorse aiutano gli sviluppatori a iniziare rapidamente senza dover creare tutto da zero.

Fig. 4. Pavel illustra le funzionalità di Hugging Face a YV24.
I vantaggi di Hugging Face Hub#
Concludendo il keynote, Pavel ha riassunto i vantaggi dell'utilizzo di Hugging Face Hub. Ha sottolineato come semplifichi la gestione dei modelli e la collaborazione. Ha inoltre richiamato l'attenzione sulla disponibilità di guide, notebook e tutorial, che possono aiutare principianti ed esperti a comprendere e implementare i modelli AI.
"Sull'Hub sono già disponibili moltissimi spazi interessanti. Puoi trovarne di simili, clonare il codice condiviso, modificare alcune righe, sostituire il modello con il tuo e reinviarlo", ha spiegato, incoraggiando gli sviluppatori a sfruttare la flessibilità della piattaforma.
Punti chiave#
Durante il suo intervento a YV24, Pavel ha condiviso come Hugging Face offra strumenti a supporto dell'addestramento, dell'ottimizzazione e del deployment dei modelli AI. Ad esempio, innovazioni come Transformers, Optimum e Torch Compile possono aiutare gli sviluppatori a migliorare le prestazioni dei modelli.
Con l'aumento dell'efficienza dei modelli AI, i progressi nella quantizzazione e nel deployment edge rendono più semplice eseguirli su dispositivi con risorse limitate. Questi miglioramenti, combinati con strumenti come Hugging Face e modelli avanzati di computer vision come Ultralytics YOLO11, sono fondamentali per creare applicazioni di Vision AI scalabili e ad alte prestazioni.
Unisciti alla nostra community in crescita! Esplora il nostro repository GitHub per saperne di più sull'AI e consulta le nostre licenze YOLO per iniziare i tuoi progetti di Vision AI. Ti interessano innovazioni come la computer vision nel settore sanitario o la computer vision in agricoltura? Visita le nostre pagine sulle soluzioni per saperne di più!









