Otimizando Inferências do YOLO26 com o Motor DeepSparse da Neural Magic

Ao implementar modelos de object detection, como o Ultralytics YOLO26, em diversos hardwares, podes deparar-te com problemas únicos como a otimização. É aqui que a integração do YOLO26 com o Motor DeepSparse da Neural Magic entra em ação. Ele transforma a forma como os modelos YOLO26 são executados e permite um desempenho de nível de GPU diretamente em CPUs.

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

Fim da vida útil 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 informações adicionais, consulta o aviso publicado no Readme no repositório GitHub sparseml.

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 drasticamente as necessidades computacionais, mantendo a precisão. O DeepSparse oferece uma solução ágil para a execução eficiente e escalável de neural network em vários dispositivos.

Benefícios da Integração do DeepSparse da Neural Magic com o YOLO26

Antes de mergulharmos em como implementar o YOLO26 usando o DeepSparse, vamos compreender os benefícios de usar o DeepSparse. Algumas das principais vantagens incluem:

  • Velocidade de Inferência Melhorada: Atinge até 525 FPS (no YOLO11n), acelerando significativamente as capacidades de inferência do YOLO em comparação com métodos tradicionais.

Neural Magic DeepSparse inference acceleration

  • Eficiência Otimizada do Modelo: Usa poda e quantização para melhorar a eficiência do YOLO26, reduzindo o tamanho do modelo e os requisitos computacionais enquanto mantém a accuracy.

Neural Magic model optimization and pruning

  • Alto Desempenho em CPUs Padrão: Oferece desempenho semelhante ao de uma 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 a integração simples do YOLO26 em aplicações, incluindo funcionalidades de anotação de imagem e vídeo.

  • Suporte para Vários Tipos de Modelos: Compatível tanto com modelos YOLO26 padrão como com modelos otimizados por esparsidade, aumentando a flexibilidade de implementação.

  • Solução Económica e Escalável: Reduz as despesas operacionais e oferece uma 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 é inspirada na eficiência do cérebro humano na computação de redes neuronais. Adota dois princípios fundamentais do cérebro, conforme a seguir:

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

  • Localidade de Referência: O DeepSparse utiliza um método de execução único, dividindo a rede em Colunas de Tensores (Tensor Columns). Estas colunas são executadas em profundidade, cabendo inteiramente na cache da CPU. Esta abordagem imita a eficiência do cérebro, minimizando o movimento de dados e maximizando o uso da cache da CPU.

How Neural Magic's DeepSparse Technology Works

Criar Uma Versão Esparsa do YOLO26 Treinada num Dataset Personalizado

O SparseZoo, um repositório de modelos de código aberto da Neural Magic, oferece uma coleção de checkpoints de modelos YOLO26 pré-esparsificados. Com o SparseML, perfeitamente integrado com o Ultralytics, podes ajustar facilmente estes checkpoints esparsos nos teus datasets específicos usando uma interface de linha de comandos simples.

Consulta a documentação do SparseML YOLO26 da Neural Magic para 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 mergulhares nas instruções de utilização, não te esqueças de verificar a gama de modelos YOLO26 oferecidos pela Ultralytics. Isto ajudar-te-á a escolher o modelo mais adequado para os requisitos do teu projeto. Eis como podes começar.

Passo 1: Instalação

Para instalar os pacotes necessários, execute:

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

Passo 2: Exportar o YOLO26 para Formato ONNX

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

Exportação de Modelo
# Export YOLO26 model to ONNX format
yolo task=detect mode=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 implementar e executar inferências usando o DeepSparse. Isto pode ser feito facilmente com a sua intuitiva Python API:

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: Benchmarking de Desempenho

É importante verificar se o teu modelo YOLO26 está a ter um desempenho ótimo no DeepSparse. Podes fazer benchmark do desempenho do teu modelo para analisar o throughput e a latência:

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

Passo 5: Funcionalidades Adicionais

O DeepSparse fornece funcionalidades adicionais para a integração prática do YOLO26 em aplicações, tais como anotação de imagem e avaliação de datasets.

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"

Executar o comando annotate processa a tua imagem especificada, detetando objetos e guardando 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

Após executar o comando eval, receberás métricas de saída detalhadas como precision, recall e mAP (mean Average Precision). Isto fornece uma visão abrangente do desempenho do teu modelo no dataset e é particularmente útil para ajustar e otimizar os teus modelos YOLO26 para casos de uso específicos, garantindo alta precisão e eficiência.

Resumo

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

Para informações mais detalhadas e utilização avançada, visita a documentação do DeepSparse da Neural Magic. Podes também explorar o guia de integração do YOLO26 e ver uma sessão de demonstração no YouTube.

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

FAQ

O que é o Motor DeepSparse da Neural Magic e como ele otimiza o desempenho do YOLO26?

O Motor DeepSparse 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 integrar o DeepSparse com o YOLO26, podes alcançar um desempenho semelhante ao de uma GPU em CPUs padrão, melhorando significativamente a velocidade de inferência, a eficiência do modelo e o desempenho geral, mantendo a precisão. Para mais detalhes, consulta a secção DeepSparse da Neural Magic.

Como posso instalar os pacotes necessários para implementar o YOLO26 usando o DeepSparse da Neural Magic?

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

pip install deepsparse[yolov8]

Uma vez instalado, segue os passos fornecidos na secção Instalação para configurar o teu ambiente e começar a usar o DeepSparse com o YOLO26.

Como converto modelos YOLO26 para o formato ONNX para usar com o DeepSparse?

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

yolo task=detect mode=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 Motor DeepSparse. Mais informações sobre a exportação de modelos podem ser encontradas na secção Exportação de Modelo.

Como faço o benchmark do desempenho do YOLO26 no Motor DeepSparse?

Fazer o benchmark do desempenho do YOLO26 no DeepSparse ajuda-te a analisar o throughput e a latência para garantir que o teu modelo está otimizado. Podes usar o seguinte comando CLI para executar um benchmark:

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

Este comando fornecer-te-á métricas de desempenho vitais. Para mais detalhes, vê a secção Benchmarking de Desempenho.

Porque devo usar o DeepSparse da Neural Magic com o YOLO26 para tarefas de deteção de objetos?

Integrar o DeepSparse da Neural Magic com o YOLO26 oferece vários benefícios:

  • Velocidade de Inferência Melhorada: Atinge até 525 FPS (no YOLO11n), demonstrando as capacidades de otimização do DeepSparse.
  • Eficiência Otimizada do Modelo: Usa técnicas de esparsidade, poda e quantização para reduzir o tamanho do modelo e as necessidades computacionais enquanto mantém a precisão.
  • Alto Desempenho em CPUs Padrão: Oferece um desempenho semelhante ao de uma 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 tanto modelos YOLO26 padrão como otimizados por esparsidade.
  • Económico: Reduz as despesas operacionais através da utilização eficiente de recursos.

Para um mergulho mais profundo nestas vantagens, visita a secção Benefícios da Integração do DeepSparse da Neural Magic com o YOLO26.

Comentários