Ultralytics YOLO27:

Otimizar inferências do YOLO26 com o DeepSparse Engine da Neural Magic#

Ao implementar modelos de deteção de objetos, como o Ultralytics YOLO26, em diferentes hardwares, podes deparar-te com desafios específicos, como a otimização. É aqui que entra a integração do YOLO26 com o DeepSparse Engine da Neural Magic. Esta integração transforma a forma como os modelos YOLO26 são executados e permite obter diretamente em CPUs um desempenho ao nível de GPU.

Este guia mostra-te como implementar o YOLO26 usando o DeepSparse da Neural Magic, como executar inferências e também como avaliar o desempenho para garantir que está otimizado.

Fim de vida do SparseML

A Neural Magic foi adquirida pela Red Hat em janeiro de 2025 e está a descontinuar as versões comunitárias das suas bibliotecas deepsparse, sparseml, sparsezoo e sparsify. Para obteres informações adicionais, consulta o aviso publicado no Readme do repositório sparsify no GitHub.

DeepSparse da Neural Magic#

Neural Magic's DeepSparse Overview

O DeepSparse da Neural Magic é um runtime de inferência concebido para otimizar a execução de redes neuronais em CPUs. Aplica técnicas avançadas, como esparsidade, poda e quantização, para reduzir significativamente as exigências computacionais, mantendo a precisão. O DeepSparse oferece uma solução ágil para a execução eficiente e escalável de redes neuronais em vários dispositivos.

Vantagens de integrar o DeepSparse da Neural Magic com o YOLO26#

Antes de explicarmos como implementar o YOLO26 usando o DeepSparse, vamos compreender as vantagens da utilização do DeepSparse. Algumas das principais vantagens incluem:

  • Maior velocidade de inferência: atinge até 525 FPS (no YOLO11n), acelerando significativamente as capacidades de inferência do YOLO em comparação com os métodos tradicionais.

Neural Magic DeepSparse inference acceleration

  • Eficiência otimizada do modelo: utiliza poda e quantização para melhorar a eficiência do YOLO26, reduzindo o tamanho do modelo e os requisitos computacionais, mantendo a precisão.

Neural Magic model optimization and pruning

  • Alto desempenho em CPUs comuns: oferece um desempenho semelhante ao de GPU em CPUs, proporcionando uma opção mais acessível e económica para várias aplicações.

  • Integração e implementação simplificadas: oferece ferramentas fáceis de utilizar para integrar facilmente o YOLO26 em aplicações, incluindo funcionalidades de anotação de imagens e vídeos.

  • Suporte para vários tipos de modelos: é compatível tanto com modelos YOLO26 padrão como com modelos YOLO26 otimizados para esparsidade, proporcionando flexibilidade na implementação.

  • Solução económica e escalável: reduz as despesas operacionais e permite a implementação escalável de modelos avançados de deteção de objetos.

Como funciona a tecnologia DeepSparse da Neural Magic?#

A tecnologia DeepSparse da Neural Magic inspira-se na eficiência do cérebro humano no processamento de redes neuronais. Adota os dois princípios fundamentais seguintes do cérebro:

  • Esparsidade: o processo de esparsificação envolve a remoção, por poda, de informações redundantes de redes de aprendizagem profunda, resultando em modelos menores e mais rápidos sem comprometer a precisão. Esta técnica reduz significativamente o tamanho e as necessidades computacionais da rede.

  • Localidade de referência: o DeepSparse utiliza um método de execução exclusivo, dividindo a rede em colunas Tensor. Estas colunas são executadas em profundidade, cabendo inteiramente na cache da CPU. Esta abordagem imita a eficiência do cérebro, minimizando a movimentação de dados e maximizando a utilização da cache da CPU.

How Neural Magic's DeepSparse Technology Works

Criar uma versão esparsa do YOLO26 treinada num conjunto de dados personalizado#

O SparseZoo, um repositório de modelos de código aberto da Neural Magic, disponibiliza uma coleção de checkpoints de modelos YOLO26 previamente esparsificados. Com o SparseML, integrado de forma simples com a Ultralytics, os utilizadores podem ajustar estes checkpoints esparsos nos seus conjuntos de dados específicos através de uma interface de linha de comandos simples.

Consulta a documentação do SparseML YOLO26 da Neural Magic para obteres mais detalhes.

Utilização: implementar o YOLO26 usando o DeepSparse#

A implementação do YOLO26 com o DeepSparse da Neural Magic envolve alguns passos simples. Antes de consultares as instruções de utilização, não te esqueças de verificar o conjunto de modelos YOLO26 disponibilizados pela Ultralytics. Isto ajudar-te-á a escolher o modelo mais adequado aos requisitos do teu projeto. Eis como podes começar.

Passo 1: Instalação#

Para instalares os pacotes necessários, executa:

Instalação
# Install the required packages
pip install deepsparse[yolov8]

Passo 2: Exportar o YOLO26 para o formato ONNX#

O DeepSparse Engine requer modelos YOLO26 no formato ONNX. Exportar o teu modelo para este formato é essencial para a compatibilidade com o DeepSparse. Usa o comando seguinte para exportar modelos YOLO26:

Exportação do modelo
# Export YOLO26 model to ONNX format
yolo detect export model=yolo26n.pt format=onnx opset=13

Este comando guardará o modelo yolo26n.onnx no teu disco.

Passo 3: Implementar e executar inferências#

Com o teu modelo YOLO26 no formato ONNX, podes implementá-lo e executar inferências usando o DeepSparse. Isto pode ser feito facilmente com a sua API intuitiva em Python:

Implementar e executar inferências
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)

Passo 4: Avaliar o desempenho#

É importante verificar se o teu modelo YOLO26 está a funcionar de forma ideal no DeepSparse. Podes avaliar o desempenho do teu modelo para analisar o débito e a latência:

Avaliação de referência
# Benchmark performance
deepsparse.benchmark model_path="path/to/yolo26n.onnx" --scenario=sync --input_shapes="[1,3,640,640]"

Passo 5: Funcionalidades adicionais#

O DeepSparse disponibiliza funcionalidades adicionais para a integração prática do YOLO26 em aplicações, como a anotação de imagens e a avaliação de conjuntos de dados.

Funcionalidades adicionais
# 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"

A execução do comando annotate processa a imagem especificada, deteta objetos e guarda a imagem anotada com caixas delimitadoras e classificações. A imagem anotada será armazenada numa pasta annotation-results. Isto ajuda a fornecer uma representação visual das capacidades de deteção do modelo.

Neural Magic annotation feature interface

Depois de executares o comando eval, receberás métricas de saída detalhadas, como precisão, revocação e mAP (Precisão média). Isto proporciona uma visão abrangente do desempenho do teu modelo no conjunto de dados e é particularmente útil para ajustar e otimizar os teus modelos YOLO26 para casos de utilização específicos, garantindo elevada precisão e eficiência.

Resumo#

Este guia explorou a integração do YOLO26 da Ultralytics com o DeepSparse Engine da Neural Magic. Destacou como esta integração melhora o desempenho do YOLO26 em plataformas com CPU, oferecendo eficiência ao nível de GPU e técnicas avançadas de esparsidade de redes neuronais.

Para mais informações detalhadas e uso avançado, visita o repositório DeepSparse da Neural Magic. Também podes explorar o guia de integração do YOLO26 e assistir a uma sessão de demonstração no YouTube.

Além disso, para obteres uma compreensão mais ampla das várias integrações do YOLO26, visita a página do guia de integrações da Ultralytics, onde podes descobrir várias outras possibilidades interessantes de integração.

Perguntas frequentes#

  • O DeepSparse Engine da Neural Magic é um runtime de inferência concebido para otimizar a execução de redes neuronais em CPUs através de técnicas avançadas, como esparsidade, poda e quantização. Ao integrares o DeepSparse com o YOLO26, podes obter um desempenho semelhante ao de GPU em CPUs comuns, melhorando significativamente a velocidade de inferência, a eficiência do modelo e o desempenho geral, mantendo a precisão. Para obteres mais detalhes, consulta a secção sobre o DeepSparse da Neural Magic.

  • A instalação dos pacotes necessários para implementar o YOLO26 com o DeepSparse da Neural Magic é simples. Podes instalá-los facilmente usando a CLI. Eis o comando que precisas de executar:

    pip install deepsparse[yolov8]

    Depois de instalares os pacotes, segue os passos indicados na secção Instalação para configurares o teu ambiente e começares a usar o DeepSparse com o YOLO26.

  • Para converter modelos YOLO26 para o formato ONNX, necessário para a compatibilidade com o DeepSparse, podes usar o seguinte comando da CLI:

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

    Este comando exportará o teu modelo YOLO26 (yolo26n.pt) para um formato (yolo26n.onnx) que pode ser utilizado pelo DeepSparse Engine. Podes encontrar mais informações sobre a exportação de modelos na secção Exportação do modelo.

  • Avaliar o desempenho do YOLO26 no DeepSparse ajuda-te a analisar o débito e a latência para garantir que o teu modelo está otimizado. Podes usar o seguinte comando da CLI para executar uma avaliação:

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

    Este comando fornecer-te-á métricas essenciais de desempenho. Para obteres mais detalhes, consulta a secção Avaliar o desempenho.

  • A integração do DeepSparse da Neural Magic com o YOLO26 oferece várias vantagens:

    • Maior velocidade de inferência: atinge até 525 FPS (no YOLO11n), demonstrando as capacidades de otimização do DeepSparse.
    • Eficiência otimizada do modelo: utiliza técnicas de esparsidade, poda e quantização para reduzir o tamanho do modelo e as necessidades computacionais, mantendo a precisão.
    • Alto desempenho em CPUs comuns: oferece um desempenho semelhante ao de GPU em hardware de CPU económico.
    • Integração simplificada: ferramentas fáceis de utilizar para uma implementação e integração simples.
    • Flexibilidade: suporta modelos YOLO26 padrão e modelos YOLO26 otimizados para esparsidade.
    • Económico: reduz as despesas operacionais através da utilização eficiente dos recursos.

    Para explorares estas vantagens em maior profundidade, visita a secção Vantagens de integrar o DeepSparse da Neural Magic com o YOLO26.

Comentários