Sintonize na YOLO Vision 2025!
25 de setembro de 2025
10:00 — 18:00 BST
Evento híbrido
Yolo Vision 2024
Glossário

ONNX (Open Neural Network Exchange)

Descubra como o ONNX aprimora a portabilidade e a interoperabilidade do modelo de IA, permitindo a implantação perfeita de modelos Ultralytics YOLO em diversas plataformas.

ONNX (Open Neural Network Exchange) é um formato de código aberto para representar modelos de aprendizado de máquina (ML). Desenvolvido em conjunto por empresas como Microsoft e Facebook, o ONNX atua como um tradutor universal, permitindo que os desenvolvedores movam modelos entre diferentes estruturas e ferramentas de ML. Essa interoperabilidade é crucial para otimizar a jornada do desenvolvimento do modelo à produção. Em vez de ficar preso a um único ecossistema, as equipes podem treinar um modelo em uma estrutura, como PyTorch, e implantá-lo para inferência usando outra, como TensorFlow ou um mecanismo de inferência especializado. Os modelos Ultralytics YOLO, por exemplo, podem ser facilmente exportados para o formato ONNX, proporcionando máxima flexibilidade para implantação em várias plataformas.

Como o ONNX Funciona

O ONNX fornece uma definição padrão para um grafo computacional, juntamente com uma lista de operadores integrados. Quando você converte um modelo para o formato ONNX, sua arquitetura—composta por camadas e operações matemáticas—é mapeada para este padrão universal. O resultante .onnx o arquivo contém tanto a estrutura da rede quanto os dados treinados pesos do modelo.

Este ficheiro padronizado pode então ser carregado por qualquer ferramenta que suporte a especificação ONNX. Isto inclui:

Aplicações no Mundo Real do ONNX

A flexibilidade do ONNX o torna inestimável em muitos cenários de visão computacional e ML.

  1. Implantação de IA em Dispositivos Edge: Um desenvolvedor pode treinar um modelo complexo de detecção de objetos como o Ultralytics YOLO11 em um desktop poderoso com GPUs NVIDIA. Para que o aplicativo seja executado em um dispositivo edge de baixa potência, como um Raspberry Pi ou uma câmera inteligente usada em análise de varejo, o modelo é exportado para ONNX. Ele pode então ser otimizado por um runtime como ONNX Runtime ou OpenVINO para um desempenho eficiente no hardware de destino, sem a necessidade do ambiente PyTorch original.

  2. Integrando Modelos em Diversas Aplicações: Considere uma empresa de saúde que constrói um modelo de análise de imagem médica usando Python e TensorFlow. A infraestrutura de software existente do hospital é construída usando C# e .NET. Em vez de reescrever o modelo, a equipe o exporta para ONNX. O aplicativo C# pode então usar o ONNX Runtime para .NET para integrar os recursos do modelo diretamente, reduzindo significativamente o tempo e a complexidade do desenvolvimento.

ONNX vs. Conceitos Relacionados

É importante distinguir o ONNX de termos relacionados:

  • Formatos Específicos da Framework: Formatos como o do PyTorch .pt ou SavedModel do TensorFlow são nativos de suas respectivas estruturas. ONNX atua como um intermediário, permitindo a conversão entre esses formatos ou a implantação por meio de um tempo de execução comum. TorchScript é outro formato para serialização de modelos PyTorch, às vezes usado como uma alternativa ou precursor para a exportação ONNX.
  • Engines/Tempos de Execução de Inferência: Ferramentas como ONNX Runtime, TensorRT e OpenVINO são bibliotecas de software projetadas para executar modelos de ML de forma eficiente. Muitos desses engines podem consumir modelos ONNX, muitas vezes aplicando otimizações adicionais (como quantização ou fusão de grafos) para alvos de hardware específicos. O ONNX fornece a entrada de modelo padronizada para esses engines.

Em resumo, o ONNX é um padrão vital para garantir flexibilidade e interoperabilidade no pipeline de operações de aprendizado de máquina (MLOps), permitindo que os desenvolvedores escolham as melhores ferramentas para treinamento e implantação sem serem limitados pelas limitações da estrutura. Plataformas como o Ultralytics HUB aproveitam esses formatos para simplificar a jornada do desenvolvimento do modelo para a aplicação no mundo real. Para saber mais, visite o site oficial do ONNX e explore o projeto no GitHub.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora
Link copiado para a área de transferência