Yolo Vision Shenzhen
Shenzhen
Junte-se agora

Como treinar, validar, prever, exportar e fazer benchmark com os modelos Ultralytics YOLO

Nuvola Ladi

Leitura de 3 minutos

24 de julho de 2024

Saiba como treinar, validar, prever, exportar e fazer benchmark com os modelosYOLO Ultralytics !

Vamos mergulhar no mundo do Ultralytics e explorar os diferentes modos disponíveis para os diferentes modelos YOLO . Quer esteja a treinar modelos de deteção de objectos personalizados ou a trabalhar na segmentação, compreender estes modos é um passo crucial. Vamos lá começar!

Nadocumentação Ultralytics , encontrará vários modos que pode utilizar para os seus modelos, quer seja para treinar, validar, prever, exportar, comparar ou track. Cada um destes modos tem uma finalidade única e ajuda-o a otimizar o desempenho e a implementação do seu modelo.

Modo de treino

Primeiro, vamos dar uma olhada no modo de treino. É aqui que você constrói e aprimora seu modelo. Você pode encontrar instruções detalhadas e guias em vídeo na documentação, facilitando o início do treino de seus modelos personalizados.

O treino de modelos envolve fornecer a um modelo um novo conjunto de dados, permitindo-lhe aprender vários padrões. Uma vez treinado, o modelo pode ser utilizado em tempo real para detect novos objectos com os quais foi treinado. Antes de iniciar o processo de formação, é essencial anotar o conjunto de dados no formato YOLO .

Modo de validação

De seguida, vamos mergulhar no modo de validação. A validação é essencial para ajustar os hiperparâmetros e garantir o bom desempenho do modelo. Ultralytics oferece uma variedade de opções de validação, incluindo configurações automatizadas, suporte multimétrico e compatibilidade com a API Python . É possível até mesmo executar a validação diretamente pela interface de linha de comandoCLI) com o comando abaixo.

Por que validar?

A validação é crucial para:

  • Precisão: Garantir que seu modelo detecte objetos com precisão.
  • Conveniência: Agilização do processo de validação.
  • Flexibilidade: Oferecendo múltiplos métodos de validação.
  • Ajuste de Hiperparâmetros: Otimização do seu modelo para um melhor desempenho.

Ultralytics também fornece exemplos de utilizadores que pode copiar e colar nos seus scripts Python . Estes exemplos incluem parâmetros como o tamanho da imagem, o tamanho do lote, o dispositivoCPU ou GPU) e a intersecção sobre a uniãoIoU).

Modo de previsão

Depois de o modelo ser treinado e validado, é altura de fazer previsões. O modo Prever permite executar a inferência em novos dados e ver seu modelo em ação. Este modo é perfeito para testar o desempenho do seu modelo em dados do mundo real.

Com o snippet de código python abaixo, você poderá executar previsões em suas imagens!

Modo de exportação

Depois de validar e prever, pode querer implementar o seu modelo. O modo de exportação permite-lhe converter o seu modelo em vários formatos, como ONNX ou TensorRT, facilitando a implementação em diferentes plataformas.

Modo de benchmark

Finalmente, temos o modo de benchmark. O benchmarking é essencial para avaliar o desempenho do seu modelo em vários cenários. Este modo ajuda você a tomar decisões informadas sobre alocação de recursos, otimização e eficiência de custos.

Como realizar benchmarking

Para executar um parâmetro de referência, pode utilizar os exemplos de utilizador fornecidos na documentação. Estes exemplos abrangem métricas chave e formatos de exportação, incluindo ONNX e TensorRT. Também pode especificar parâmetros como a quantização de inteiros (INT8) ou a quantização de ponto flutuante (FP16) para ver como as diferentes definições afectam o desempenho.

Exemplo de benchmarking no mundo real

Vejamos um exemplo real de benchmarking. Quando avaliamos nosso modelo PyTorch , notamos uma velocidade de inferência de 68 milissegundos em uma GPU RTX 3070. Depois de exportar para o TorchScript, a velocidade de inferência cai para 4 milissegundos, mostrando uma melhoria significativa.

Para os modelos ONNX , atingimos uma velocidade de inferência de 21 milissegundos. Testando esses modelos em uma CPU (uma Intel i9 13ª geração), vemos resultados variados. TorchScript funciona a 115 milissegundos, enquanto ONNX tem um melhor desempenho a 84 milissegundos. Finalmente, OpenVINO optimizado para hardware Intel atinge uns incríveis 23 milissegundos.

__wf_reserved_inherit
Fig. 1. Nicolai Nielsen demonstra como efetuar a avaliação comparativa com os modelosYOLO Ultralytics .

A importância do benchmarking

A avaliação de desempenho demonstra como diferentes hardwares e formatos de exportação podem impactar o desempenho do seu modelo. É crucial avaliar seus modelos, especialmente se você planeja implementá-los em hardware personalizado ou dispositivos de borda. Este processo garante que seu modelo seja otimizado para o ambiente de destino, proporcionando o melhor desempenho possível.

Conclusão

Em resumo, os modos da documentação Ultralytics são ferramentas poderosas para treinar, validar, prever, exportar e avaliar comparativamente os seus modelos YOLO . Cada modo desempenha um papel vital na otimização do seu modelo e na sua preparação para a implementação.

Não se esqueça de explorar e participar da nossa comunidade e experimentar os trechos de código fornecidos em seus projetos. Com essas ferramentas, você pode criar modelos de alto desempenho e garantir que eles sejam executados de forma eficiente em qualquer ambiente.

Vamos construir o futuro
da IA juntos!

Comece sua jornada com o futuro do aprendizado de máquina

Comece gratuitamente