Descubra por que a poda e a quantização são essenciais para otimizar modelos de visão computacional e permitir um desempenho mais rápido em dispositivos de borda.

Descubra por que a poda e a quantização são essenciais para otimizar modelos de visão computacional e permitir um desempenho mais rápido em dispositivos de borda.
Os dispositivos de borda estão se tornando cada vez mais comuns com o avanço da tecnologia. De smartwatches que rastreiam sua frequência cardíaca a drones aéreos que monitoram ruas, os sistemas de borda podem processar dados em tempo real localmente dentro do próprio dispositivo.
Este método é frequentemente mais rápido e seguro do que enviar dados para a nuvem, especialmente para aplicações que envolvem dados pessoais, como deteção de placas de matrícula ou rastreamento de gestos. Estes são exemplos de visão computacional, um ramo da inteligência artificial (IA) que permite que as máquinas interpretem e compreendam informações visuais.
No entanto, uma consideração importante é que tais aplicações exigem modelos de Visão de IA capazes de lidar com computação pesada, usando recursos mínimos e operando de forma independente. A maioria dos modelos de visão computacional são desenvolvidos para sistemas de alto desempenho, tornando-os menos adequados para implantação direta em dispositivos edge.
Para preencher essa lacuna, os desenvolvedores geralmente aplicam otimizações direcionadas que adaptam o modelo para ser executado de forma eficiente em hardware menor. Esses ajustes são críticos para implementações de borda no mundo real, onde a memória e o poder de processamento são limitados.
Curiosamente, modelos de visão computacional como o Ultralytics YOLO11 já são projetados com a eficiência de ponta em mente, tornando-os ótimos para tarefas em tempo real. No entanto, seu desempenho pode ser ainda mais aprimorado usando técnicas de otimização de modelo, como pruning e quantização, permitindo uma inferência ainda mais rápida e menor uso de recursos em dispositivos com restrições.
Neste artigo, analisaremos mais de perto o que são poda e quantização, como funcionam e como podem ajudar os modelos YOLO a ter desempenho em implementações de borda no mundo real. Vamos começar!
Ao preparar modelos de Visão de IA para implantação em dispositivos de borda, um dos principais objetivos é tornar o modelo leve e confiável, sem sacrificar o desempenho. Isso geralmente envolve reduzir o tamanho do modelo e as demandas computacionais para que ele possa operar de forma eficiente em hardware com memória, energia ou capacidade de processamento limitadas. Duas maneiras comuns de fazer isso são a poda e a quantização.
A poda é uma técnica de otimização de modelos de IA que ajuda a tornar as redes neurais menores e mais eficientes. Em muitos casos, partes de um modelo, como certas conexões ou nós, não contribuem muito para suas previsões finais. A poda funciona identificando e removendo essas partes menos importantes, o que reduz o tamanho do modelo e acelera seu desempenho.
Por outro lado, a quantização é uma técnica de otimização que reduz a precisão dos números que um modelo usa. Em vez de depender de números de ponto flutuante de 32 bits de alta precisão, o modelo muda para formatos menores e mais eficientes, como inteiros de 8 bits. Essa mudança ajuda a diminuir o uso de memória e acelera a inferência, o processo em que o modelo faz previsões.
Agora que temos uma melhor compreensão do que são pruning e quantização, vamos percorrer como ambos funcionam.
A poda é feita usando um processo conhecido como análise de sensibilidade. Ele identifica quais partes dos modelos de redes neurais, como certos pesos, neurônios ou canais, contribuem menos para a previsão de saída final. Essas partes podem ser removidas com efeito mínimo na precisão. Após a poda, o modelo geralmente é re-treinado para ajustar seu desempenho. Este ciclo pode ser repetido para encontrar o equilíbrio certo entre seu tamanho e precisão.
Enquanto isso, a quantização de modelos se concentra em como o modelo lida com os dados. Começa com a calibração, onde o modelo é executado em dados de amostra para aprender a faixa de valores que precisa processar. Esses valores são então convertidos de ponto flutuante de 32 bits para formatos de precisão mais baixa, como inteiros de 8 bits.
Existem várias ferramentas disponíveis que facilitam o uso de pruning e quantização em projetos de IA do mundo real. A maioria das frameworks de IA, como PyTorch e TensorFlow, incluem suporte integrado para estas técnicas de otimização, permitindo que os desenvolvedores as integrem diretamente no processo de implantação do modelo.
Depois que um modelo é otimizado, ferramentas como o ONNX Runtime podem ajudar a executá-lo de forma eficiente em várias plataformas de hardware, como servidores, desktops e dispositivos de borda. Além disso, a Ultralytics oferece integrações que permitem que os modelos YOLO sejam exportados em formatos adequados para quantização, facilitando a redução do tamanho do modelo e o aumento do desempenho.
Os modelos Ultralytics YOLO, como o YOLO11, são amplamente reconhecidos por sua detecção de objetos rápida e em uma única etapa, tornando-os ideais para tarefas de IA de Visão em tempo real. Eles já são projetados para serem leves e eficientes o suficiente para implantação na borda. No entanto, as camadas responsáveis pelo processamento de recursos visuais, chamadas de camadas convolucionais, ainda podem exigir considerável poder de computação durante a inferência.
Você pode estar se perguntando: se o YOLO11 já está otimizado para uso na borda, por que ele precisa de mais otimização? Simplificando, nem todos os dispositivos de borda são iguais. Alguns são executados em hardware muito minimalista, como pequenos processadores embutidos que consomem menos energia do que uma lâmpada LED padrão.
Nesses casos, mesmo um modelo simplificado como o YOLO11 precisa de otimização adicional para garantir um desempenho suave e confiável. Técnicas como pruning e quantização ajudam a reduzir o tamanho do modelo e acelerar a inferência sem afetar significativamente a precisão, tornando-os ideais para ambientes tão restritos.
Para facilitar a aplicação destas técnicas de otimização, a Ultralytics suporta várias integrações que podem ser usadas para exportar modelos YOLO para vários formatos como ONNX, TensorRT, OpenVINO, CoreML e PaddlePaddle. Cada formato é projetado para funcionar bem com tipos específicos de hardware e ambientes de implementação.
Por exemplo, o ONNX é frequentemente usado em fluxos de trabalho de quantização devido à sua compatibilidade com uma ampla gama de ferramentas e plataformas. O TensorRT, por outro lado, é altamente otimizado para dispositivos NVIDIA e oferece suporte à inferência de baixa precisão usando INT8, tornando-o ideal para implantação de alta velocidade em GPUs de borda.
À medida que a visão computacional continua a expandir-se para várias aplicações no mundo real, os modelos YOLO otimizados tornam possível executar tarefas como deteção de objetos, segmentação de instâncias e rastreamento de objetos em hardware menor e mais rápido. Em seguida, vamos discutir alguns casos de uso em que a poda e a quantização tornam essas tarefas de visão computacional mais eficientes e práticas.
Muitos espaços industriais, bem como áreas públicas, dependem do monitoramento em tempo real para se manterem seguros e protegidos. Locais como estações de trânsito, instalações de manufatura e grandes instalações ao ar livre precisam de sistemas de Visão de IA que possam detectar pessoas ou veículos de forma rápida e precisa. Frequentemente, esses locais operam com conectividade limitada e restrições de hardware, o que dificulta a implantação de modelos grandes.
Nesses casos, um modelo de Visão de IA otimizado como o YOLO11 é uma ótima solução. Seu tamanho compacto e desempenho rápido o tornam perfeito para ser executado em dispositivos de borda de baixa potência, como câmeras embutidas ou sensores inteligentes. Esses modelos podem processar dados visuais diretamente no dispositivo, permitindo a detecção em tempo real de violações de segurança, acesso não autorizado ou atividade anormal, sem depender do acesso constante à nuvem.
Os canteiros de obras são ambientes dinâmicos e imprevisíveis, cheios de máquinas pesadas, trabalhadores em movimento e atividade constante. As condições podem mudar rapidamente devido a mudanças de horários, movimentação de equipamentos ou até mesmo mudanças repentinas no clima. Em um ambiente tão dinâmico, a segurança do trabalhador pode parecer um desafio contínuo.
O monitoramento em tempo real desempenha um papel crucial, mas os sistemas tradicionais geralmente dependem do acesso à nuvem ou de hardware caro que pode não ser prático no local. É aqui que modelos como o YOLO11 podem ser impactantes. O YOLO11 pode ser otimizado para rodar em dispositivos de borda pequenos e eficientes que funcionam diretamente no local, sem necessidade de conexão com a internet.
Por exemplo, considere um grande estaleiro de construção, como uma expansão de uma autoestrada que se estende por vários hectares. Neste tipo de ambiente, rastrear manualmente cada veículo ou equipamento pode ser difícil e demorado. Um drone equipado com uma câmara e um modelo YOLO11 otimizado pode ajudar, detetando e seguindo automaticamente os veículos, monitorizando o fluxo de tráfego e identificando problemas de segurança, como acesso não autorizado ou comportamento de condução inseguro.
Aqui estão algumas vantagens importantes que os métodos de otimização de modelos de visão computacional, como pruning e quantização, oferecem:
Embora a poda e a quantização ofereçam muitas vantagens, elas também vêm com certas compensações que os desenvolvedores devem considerar ao otimizar modelos. Aqui estão algumas limitações a serem lembradas:
A poda e a quantização são técnicas úteis que ajudam os modelos YOLO a terem um melhor desempenho em dispositivos edge. Elas reduzem o tamanho do modelo, diminuem suas necessidades computacionais e aceleram as previsões, tudo sem uma perda notável de precisão.
Esses métodos de otimização também oferecem aos desenvolvedores a flexibilidade de ajustar modelos para diferentes tipos de hardware sem precisar reconstruí-los completamente. Com alguns ajustes e testes, torna-se mais fácil aplicar a Visão de IA em situações do mundo real.
Junte-se à nossa crescente comunidade! Explore nosso repositório GitHub para saber mais sobre IA. Pronto para iniciar seus projetos de visão computacional? Confira nossas opções de licenciamento. Descubra a IA na agricultura e a Visão de IA na área da saúde visitando nossas páginas de soluções!