Ultralytics YOLO27:

Ottimizzazione delle inferenze di YOLO26 con il motore DeepSparse di Neural Magic#

Quando distribuisci modelli di rilevamento degli oggetti come Ultralytics YOLO26 su hardware diversi, puoi incontrare problemi specifici, come l'ottimizzazione. È qui che entra in gioco l'integrazione di YOLO26 con il motore DeepSparse di Neural Magic. Questa integrazione trasforma il modo in cui vengono eseguiti i modelli YOLO26 e abilita prestazioni a livello GPU direttamente sulle CPU.

Questa guida mostra come distribuire YOLO26 usando DeepSparse di Neural Magic, come eseguire inferenze e come analizzare le prestazioni per assicurarti che il modello sia ottimizzato.

EOL di SparseML

Neural Magic è stata acquisita da Red Hat a gennaio 2025 e sta deprecando le versioni community delle librerie deepsparse, sparseml, sparsezoo e sparsify. Per ulteriori informazioni, consulta l'avviso pubblicato nel Readme del repository GitHub sparsify.

DeepSparse di Neural Magic#

Neural Magic's DeepSparse Overview

DeepSparse di Neural Magic è un runtime di inferenza progettato per ottimizzare l'esecuzione delle reti neurali sulle CPU. Applica tecniche avanzate come sparsità, pruning e quantizzazione per ridurre drasticamente il carico computazionale mantenendo la precisione. DeepSparse offre una soluzione agile per un'esecuzione efficiente e scalabile delle reti neurali su vari dispositivi.

Vantaggi dell'integrazione di DeepSparse di Neural Magic con YOLO26#

Prima di vedere come distribuire YOLO26 usando DeepSparse, analizziamo i vantaggi dell'utilizzo di DeepSparse. Tra i principali vantaggi ci sono:

  • Maggiore velocità di inferenza: raggiunge fino a 525 FPS (su YOLO11n), accelerando significativamente le capacità di inferenza di YOLO rispetto ai metodi tradizionali.

Neural Magic DeepSparse inference acceleration

  • Efficienza del modello ottimizzata: utilizza pruning e quantizzazione per migliorare l'efficienza di YOLO26, riducendo le dimensioni del modello e i requisiti computazionali e mantenendo la precisione.

Neural Magic model optimization and pruning

  • Elevate prestazioni sulle CPU standard: offre prestazioni simili a quelle delle GPU sulle CPU, fornendo un'opzione più accessibile ed economica per varie applicazioni.

  • Integrazione e distribuzione semplificate: offre strumenti intuitivi per integrare facilmente YOLO26 nelle applicazioni, incluse funzionalità di annotazione di immagini e video.

  • Supporto per vari tipi di modelli: è compatibile sia con i modelli YOLO26 standard sia con quelli ottimizzati per la sparsità, offrendo flessibilità nella distribuzione.

  • Soluzione economica e scalabile: riduce i costi operativi e consente la distribuzione scalabile di modelli avanzati per il rilevamento degli oggetti.

Come funziona la tecnologia DeepSparse di Neural Magic?#

La tecnologia DeepSparse di Neural Magic si ispira all'efficienza del cervello umano nel calcolo delle reti neurali. Adotta i seguenti due principi chiave del cervello:

  • Sparsità: il processo di sparsificazione prevede l'eliminazione delle informazioni ridondanti dalle reti di deep learning, ottenendo modelli più piccoli e veloci senza compromettere la precisione. Questa tecnica riduce significativamente le dimensioni della rete e il fabbisogno computazionale.

  • Località del riferimento: DeepSparse utilizza un metodo di esecuzione unico, suddividendo la rete in colonne Tensor. Queste colonne vengono eseguite in profondità, rimanendo interamente nella cache della CPU. Questo approccio riproduce l'efficienza del cervello, riducendo al minimo lo spostamento dei dati e massimizzando l'utilizzo della cache della CPU.

How Neural Magic's DeepSparse Technology Works

Creazione di una versione sparsa di YOLO26 addestrata su un dataset personalizzato#

SparseZoo, un repository open source di modelli sviluppato da Neural Magic, offre una raccolta di checkpoint YOLO26 già sottoposti a sparsificazione. Con SparseML, integrato perfettamente con Ultralytics, puoi eseguire facilmente il fine-tuning di questi checkpoint sparsi sui tuoi dataset specifici usando un'interfaccia a riga di comando semplice.

Per ulteriori dettagli, consulta la documentazione di SparseML YOLO26 di Neural Magic.

Utilizzo: distribuzione di YOLO26 con DeepSparse#

La distribuzione di YOLO26 con DeepSparse di Neural Magic prevede alcuni semplici passaggi. Prima di consultare le istruzioni per l'utilizzo, dai un'occhiata alla gamma di modelli YOLO26 offerti da Ultralytics. Questo ti aiuterà a scegliere il modello più adatto ai requisiti del tuo progetto. Ecco come iniziare.

Passaggio 1: installazione#

Per installare i pacchetti richiesti, esegui:

Installazione
# Install the required packages
pip install deepsparse[yolov8]

Passaggio 2: esportazione di YOLO26 nel formato ONNX#

DeepSparse Engine richiede modelli YOLO26 nel formato ONNX. Esportare il modello in questo formato è essenziale per la compatibilità con DeepSparse. Usa il comando seguente per esportare i modelli YOLO26:

Esportazione del modello
# Export YOLO26 model to ONNX format
yolo detect export model=yolo26n.pt format=onnx opset=13

Questo comando salverà il modello yolo26n.onnx sul disco.

Passaggio 3: distribuzione ed esecuzione delle inferenze#

Con il modello YOLO26 nel formato ONNX, puoi distribuirlo ed eseguire inferenze usando DeepSparse. Puoi farlo facilmente con la sua intuitiva API Python:

Distribuzione ed esecuzione delle inferenze
from deepsparse import Pipeline

# Specify the path to your YOLO26 ONNX model
model_path = "path/to/yolo26n.onnx"

# Set up the DeepSparse Pipeline
yolo_pipeline = Pipeline.create(task="yolov8", model_path=model_path)

# Run the model on your images
images = ["path/to/image.jpg"]
pipeline_outputs = yolo_pipeline(images=images)

Passaggio 4: analisi delle prestazioni#

È importante verificare che il modello YOLO26 funzioni in modo ottimale su DeepSparse. Puoi analizzare le prestazioni del modello per esaminare throughput e latenza:

Benchmark
# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

Passaggio 5: funzionalità aggiuntive#

DeepSparse offre funzionalità aggiuntive per l'integrazione pratica di YOLO26 nelle applicazioni, come l'annotazione delle immagini e la valutazione dei dataset.

Funzionalità aggiuntive
# For image annotation
deepsparse.yolov8.annotate --source "path/to/image.jpg" --model_filepath "path/to/yolo26n.onnx"

# For evaluating model performance on a dataset
deepsparse.yolov8.eval --model_path "path/to/yolo26n.onnx"

L'esecuzione del comando annotate elabora l'immagine specificata, rileva gli oggetti e salva l'immagine annotata con riquadri di delimitazione e classificazioni. L'immagine annotata verrà memorizzata in una cartella annotation-results. Questo aiuta a fornire una rappresentazione visiva delle capacità di rilevamento del modello.

Neural Magic annotation feature interface

Dopo aver eseguito il comando eval, riceverai metriche dettagliate come precisione, recall e mAP (precisione media). Questo offre una panoramica completa delle prestazioni del modello sul dataset ed è particolarmente utile per eseguire il fine-tuning e ottimizzare i modelli YOLO26 per casi d'uso specifici, garantendo elevata precisione ed efficienza.

Questa guida ha illustrato l'integrazione di YOLO26 di Ultralytics con il motore DeepSparse di Neural Magic. Ha evidenziato come questa integrazione migliori le prestazioni di YOLO26 sulle piattaforme CPU, offrendo efficienza a livello GPU e tecniche avanzate di sparsità delle reti neurali.

Per informazioni più dettagliate e un utilizzo avanzato, visita il DeepSparse repository by Neural Magic. Puoi anche explore the YOLO26 integration guide e watch a walkthrough session on YouTube.

Inoltre, per comprendere meglio le varie integrazioni di YOLO26, visita la pagina della guida alle integrazioni di Ultralytics, dove puoi scoprire molte altre interessanti possibilità di integrazione.

FAQ#

  • Il motore DeepSparse di Neural Magic è un runtime di inferenza progettato per ottimizzare l'esecuzione delle reti neurali sulle CPU attraverso tecniche avanzate come sparsità, pruning e quantizzazione. Integrando DeepSparse con YOLO26, puoi ottenere prestazioni simili a quelle delle GPU su CPU standard, migliorando significativamente la velocità di inferenza, l'efficienza del modello e le prestazioni complessive, mantenendo la precisione. Per ulteriori dettagli, consulta la sezione DeepSparse di Neural Magic.

  • Installare i pacchetti necessari per distribuire YOLO26 con DeepSparse di Neural Magic è semplice. Puoi installarli facilmente usando la CLI. Ecco il comando da eseguire:

    pip install deepsparse[yolov8]

    Dopo l'installazione, segui i passaggi indicati nella sezione Installazione per configurare l'ambiente e iniziare a usare DeepSparse con YOLO26.

  • Per convertire i modelli YOLO26 nel formato ONNX, necessario per la compatibilità con DeepSparse, puoi usare il seguente comando CLI:

    yolo detect export model=yolo26n.pt format=onnx opset=13

    Questo comando esporterà il modello YOLO26 (yolo26n.pt) in un formato (yolo26n.onnx) utilizzabile dal motore DeepSparse. Ulteriori informazioni sull'esportazione dei modelli sono disponibili nella sezione Esportazione del modello.

  • L'analisi delle prestazioni di YOLO26 su DeepSparse ti aiuta a esaminare throughput e latenza per assicurarti che il modello sia ottimizzato. Puoi usare il seguente comando CLI per eseguire un benchmark:

    deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

    Questo comando fornirà metriche essenziali sulle prestazioni. Per ulteriori dettagli, consulta la sezione Analisi delle prestazioni.

  • L'integrazione di DeepSparse di Neural Magic con YOLO26 offre diversi vantaggi:

    • Maggiore velocità di inferenza: raggiunge fino a 525 FPS (su YOLO11n), dimostrando le capacità di ottimizzazione di DeepSparse.
    • Efficienza del modello ottimizzata: utilizza tecniche di sparsità, pruning e quantizzazione per ridurre le dimensioni del modello e il fabbisogno computazionale mantenendo la precisione.
    • Elevate prestazioni sulle CPU standard: offre prestazioni simili a quelle delle GPU su hardware CPU economico.
    • Integrazione semplificata: strumenti intuitivi per una facile distribuzione e integrazione.
    • Flessibilità: supporta sia i modelli YOLO26 standard sia quelli ottimizzati per la sparsità.
    • Convenienza economica: riduce i costi operativi attraverso un utilizzo efficiente delle risorse.

    Per un approfondimento su questi vantaggi, visita la sezione Vantaggi dell'integrazione di DeepSparse di Neural Magic con YOLO26.

Commenti