Ultralytics YOLO27: Entre na lista de espera.
Licenciar o YOLO
Guias

Poda e quantização em visão computacional: um guia rápido

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

Abirami VinaAbirami Vina10 min de leitura
Poda e quantização em visão computacional

Com o avanço da tecnologia, os dispositivos de borda estão se tornando cada vez mais comuns. De smartwatches que monitoram a frequência cardíaca a drones aéreos que vigiam ruas, os sistemas de borda podem processar dados localmente, em tempo real, no próprio dispositivo.

Esse método costuma ser mais rápido e seguro do que enviar dados para a nuvem, especialmente em aplicações que envolvem dados pessoais, como a detecção de placas de veículos ou o rastreamento de gestos. Esses são exemplos de visão computacional, um ramo da inteligência artificial (IA) que permite às máquinas interpretar e entender informações visuais.

Placas detectadas em carros e em uma van amarela trafegando por uma rodovia com várias faixas

Fig. 1. Um exemplo de deteção de matrículas. (Fonte)

No entanto, é importante considerar que essas aplicações exigem modelos de IA visual capazes de realizar cálculos intensivos, usar o mínimo de recursos e operar de forma independente. A maioria dos modelos de visão computacional é desenvolvida para sistemas de alto desempenho, o que os torna menos adequados para implementação direta em dispositivos de edge.

Para colmatar essa lacuna, os programadores costumam aplicar otimizações específicas que adaptam o modelo para funcionar com eficiência em hardware mais pequeno. Esses ajustes são fundamentais para implementações reais em dispositivos de edge, onde a memória e a capacidade de processamento são limitadas.

Curiosamente, modelos de visão computacional como o Ultralytics YOLO11 já são concebidos para serem eficientes em dispositivos de edge, o que os torna excelentes para tarefas em tempo real. No entanto, o seu desempenho pode ser ainda melhorado com técnicas de otimização de modelos, como a poda e a quantização, permitindo inferências ainda mais rápidas e um menor consumo de recursos em dispositivos com recursos limitados.

Neste artigo, vamos analisar mais detalhadamente o que são a poda e a quantização, como funcionam e como podem ajudar os modelos YOLO a ter um melhor desempenho em implementações reais em dispositivos de edge. Vamos começar!

Poda e quantização: técnicas fundamentais para a otimização de modelos#

Ao preparar modelos de IA visual para implementação em dispositivos de edge, um dos principais objetivos é tornar o modelo leve e fiável sem sacrificar o desempenho. Muitas vezes, isso implica reduzir o tamanho e os requisitos computacionais do modelo para que este possa funcionar com eficiência em hardware com memória, energia ou capacidade de processamento limitadas. Duas formas comuns de o fazer 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 neuronais mais pequenas e eficientes. Em muitos casos, algumas partes de um modelo, como determinadas ligações ou nós, contribuem pouco para as previsões finais. A poda identifica e remove essas partes menos importantes, reduzindo o tamanho do modelo e acelerando o seu desempenho.

Por outro lado, a quantização é uma técnica de otimização que reduz a precisão dos números usados pelo modelo. Em vez de usar números de vírgula flutuante de 32 bits de alta precisão, o modelo passa a usar formatos mais pequenos e eficientes, como inteiros de 8 bits. Esta alteração ajuda a reduzir o uso de memória e a acelerar a inferência, o processo em que o modelo faz previsões.

Uma visão geral da poda e da quantização

Fig. 2. Uma visão geral da poda e da quantização. (Fonte)

Como funcionam a poda e a quantização#

Agora que compreendemos melhor o que são a poda e a quantização, vamos ver como funcionam.

A poda é realizada através de um processo conhecido como análise de sensibilidade. Este identifica as partes dos modelos de redes neuronais, como determinados pesos, neurónios ou canais, que menos contribuem para a previsão da saída final. Essas partes podem ser removidas com um efeito mínimo na precisão. Após a poda, o modelo é normalmente treinado novamente para ajustar o seu desempenho. Este ciclo pode ser repetido para encontrar o equilíbrio certo entre o tamanho e a precisão do modelo.

Entretanto, a quantização de modelos centra-se na forma como o modelo processa os dados. O processo começa com a calibração, em que o modelo é executado com dados de amostra para aprender o intervalo de valores que precisa de processar. Em seguida, esses valores são convertidos de números de vírgula flutuante de 32 bits para formatos de menor precisão, como inteiros de 8 bits.

A quantização ajuda a reduzir o tamanho e a complexidade do modelo

Fig. 3. A quantização ajuda a reduzir o tamanho e a complexidade do modelo. (Fonte)

Existem várias ferramentas que facilitam a utilização da poda e da quantização em projetos de IA reais. A maioria das frameworks de IA, como PyTorch e TensorFlow, inclui suporte integrado para estas técnicas de otimização, permitindo que os programadores as integrem diretamente no processo de implementação do modelo.

Depois que um modelo é otimizado, ferramentas como o ONNX Runtime podem ajudar a executá-lo com eficiência em várias plataformas de hardware, como servidores, computadores e dispositivos de borda. Além disso, a Ultralytics oferece integrações que permitem exportar modelos YOLO em formatos adequados à quantização (por exemplo, quantize=8 para INT8, quando o formato oferece suporte), facilitando a redução do tamanho do modelo e o aumento do desempenho.

Visão geral da otimização de modelos Ultralytics YOLO#

Os modelos Ultralytics YOLO, como o YOLO11, são amplamente reconhecidos pela deteção de objetos rápida e em etapa única, o que os torna ideais para tarefas de IA visual em tempo real. Já são concebidos para serem suficientemente leves e eficientes para a implementação em dispositivos de edge. No entanto, as camadas responsáveis pelo processamento de características visuais, chamadas camadas convolucionais, ainda podem exigir bastante capacidade computacional durante a inferência.

Podes perguntar-te: se o Ultralytics YOLO11 já está otimizado para dispositivos de edge, por que razão precisa de mais otimização? Resumindo, nem todos os dispositivos de edge são iguais. Alguns funcionam com hardware muito limitado, como pequenos processadores integrados que consomem menos energia do que uma lâmpada LED comum.

Nesses casos, até mesmo um modelo otimizado como o Ultralytics YOLO11 precisa de otimização adicional para garantir um desempenho estável e confiável. Técnicas como poda e quantização ajudam a reduzir o tamanho do modelo e acelerar a inferência sem afetar significativamente a precisão, o que as torna ideais para esses ambientes com recursos limitados.

Para facilitar a aplicação destas técnicas de otimização, a Ultralytics suporta várias integrações que podem ser utilizadas para exportar modelos YOLO para vários formatos, como ONNX, TensorRT, OpenVINO, CoreML e PaddlePaddle. Cada formato foi concebido para funcionar bem com tipos específicos de hardware e ambientes de implementação.

Por exemplo, o ONNX é muito usado em fluxos de trabalho de quantização por ser compatível com uma ampla variedade de ferramentas e plataformas. Já o TensorRT é altamente otimizado para dispositivos NVIDIA e oferece suporte à inferência de baixa precisão usando INT8, o que o torna ideal para implantação em alta velocidade em GPUs de borda.

Casos de utilização relevantes da otimização de modelos Ultralytics YOLO#

À medida que a visão computacional se expande para várias aplicações do mundo real, os modelos YOLO otimizados permitem executar tarefas como deteção de objetos, segmentação de instâncias e rastreamento de objetos em hardware mais pequeno e rápido. A seguir, vamos abordar alguns casos de utilização em que a poda e a quantização tornam estas tarefas de visão computacional mais eficientes e práticas.

Videovigilância inteligente com o Ultralytics YOLO11#

Muitos espaços industriais, bem como áreas públicas, dependem da monitorização em tempo real para manter a segurança. Locais como estações de transporte, fábricas e grandes instalações ao ar livre precisam de sistemas de IA visual capazes de detetar pessoas ou veículos de forma rápida e precisa. Muitas vezes, estes locais têm conectividade limitada e restrições de hardware, o que dificulta a implementação de modelos grandes.

Nestes casos, um modelo de IA visual otimizado como o Ultralytics YOLO11 é uma excelente solução. O tamanho compacto e o desempenho rápido tornam-no perfeito para funcionar em dispositivos de edge de baixo consumo, como câmaras integradas ou sensores inteligentes. Estes modelos podem processar dados visuais diretamente no dispositivo, permitindo detetar em tempo real violações de segurança, acessos não autorizados ou atividades anormais, sem depender de uma ligação constante à nuvem.

O Ultralytics YOLO11 a monitorizar espaços públicos, como estações de metro

Fig. 4. O Ultralytics YOLO11 pode ser utilizado para monitorizar espaços públicos, como estações de metro.

Reforçar a segurança em estaleiros de construção com o Ultralytics YOLO11#

Os estaleiros de construção são ambientes imprevisíveis e de ritmo acelerado, repletos de maquinaria pesada, trabalhadores em movimento e atividade constante. As condições podem mudar rapidamente devido a alterações nos horários, ao movimento dos equipamentos ou até a mudanças súbitas do tempo. Num ambiente tão dinâmico, garantir a segurança dos trabalhadores pode parecer um desafio constante.

A monitorização em tempo real desempenha um papel fundamental, mas os sistemas tradicionais dependem muitas vezes do acesso à nuvem ou de hardware dispendioso que pode não ser prático no local. É neste contexto que modelos como o Ultralytics YOLO11 podem fazer a diferença. O YOLO11 pode ser otimizado para funcionar em dispositivos de edge pequenos e eficientes, diretamente no local e sem precisar de ligação à Internet.

Por exemplo, considera um grande estaleiro de construção, como as obras de alargamento de uma autoestrada que se estendem por vários hectares. Neste tipo de cenário, acompanhar manualmente cada veículo ou equipamento pode ser difícil e demorado. Um drone equipado com uma câmara e um modelo Ultralytics YOLO11 otimizado pode ajudar a detetar e seguir veículos automaticamente, monitorizar o fluxo de trânsito e identificar problemas de segurança, como acessos não autorizados ou condução perigosa.

Análise de imagens de drone de um estaleiro de construção

Fig. 5. Análise de imagens de drone de um estaleiro de construção. (Fonte)

Vantagens e desvantagens da poda e da quantização em visão computacional#

Eis algumas das principais vantagens das técnicas de otimização de modelos de visão computacional, como a poda e a quantização:

  • Implementação económica: Modelos mais pequenos e eficientes podem reduzir a necessidade de hardware dispendioso e de alto desempenho, tornando a IA mais acessível e escalável em diferentes casos de utilização.
  • Menor latência: Ao simplificar a arquitetura do modelo e reduzir a sobrecarga computacional, estas técnicas podem ajudar a obter tempos de resposta mais rápidos em aplicações em tempo real.
  • Eficiência energética: A redução da carga computacional também diminui o consumo de energia, o que é especialmente útil em sistemas móveis ou alimentados por bateria.

Embora a poda e a quantização ofereçam muitas vantagens, também implicam algumas contrapartidas que os programadores devem considerar ao otimizar modelos. Eis algumas limitações a ter em conta:

  • Compromissos de precisão: Se a poda for demasiado agressiva ou se for usada uma quantização com muito poucos bits, a precisão do modelo, medida por métricas como mAP, pode diminuir.
  • Limitações de hardware: Nem todos os dispositivos suportam igualmente bem formatos de menor precisão, como INT8. Isso pode limitar onde e como um modelo otimizado pode ser implementado.
  • Complexidade de implementação: Obter bons resultados exige muitas vezes um ajuste cuidadoso e específico para cada modelo. Os programadores podem ter de treinar novamente o modelo e realizar testes extensivos para manter o desempenho e, ao mesmo tempo, melhorar a eficiência.

Principais conclusões#

Poda e quantização são técnicas úteis que ajudam os modelos YOLO a ter melhor desempenho em dispositivos de borda. Elas reduzem o tamanho do modelo, diminuem suas necessidades de computação e aceleram as previsões, geralmente com uma pequena perda de precisão.

Estes métodos de otimização também dão aos programadores a flexibilidade para ajustar modelos a diferentes tipos de hardware sem terem de os reconstruir completamente. Com alguns ajustes e testes, torna-se mais fácil aplicar a IA visual a situações do mundo real.

Junta-te à nossa comunidade, que não para de crescer! Explora o nosso repositório GitHub para saberes mais sobre IA. Queres começar os teus projetos de visão computacional? Consulta as nossas opções de licenciamento. Descobre a IA na agricultura e a IA visual na área da saúde nas nossas páginas de soluções!

Escrito por

Abirami Vina
Abirami Vina

Criador de conteúdo · Ultralytics

Ao iniciar a carreira como engenheira de visão computacional, Abirami Vina construiu uma base sólida em IA de visão e machine learning. Ela é criadora de conteúdo da Ultralytics e fundadora e redatora-chefe da Scribe of AI, onde produz conteúdo técnico de alta qualidade para empresas focadas em IA. Movida pela paixão por tornar a IA compreensível e envolvente, seu trabalho aproxima a tecnologia de ponta do impacto no mundo real.

Comentários

Faça uma pergunta, compartilhe seus resultados ou ajude alguém.

Explore as soluções

Visão computacional no desporto

Visão computacional no desporto

Descubra como o Ultralytics YOLO impulsiona a visão computacional no esporte com rastreamento de jogadores e bolas, análise de desempenho, insights para treinadores e reabilitação de atletas.
Saiba mais
Visão computacional para imagens aéreas

Visão computacional para imagens aéreas

Transforma imagens de drones e aéreas em informações em tempo real para a agricultura, a aquacultura, a conservação e a análise geoespacial com Ultralytics YOLO.
Saiba mais
Visão computacional no setor aeroespacial

Visão computacional no setor aeroespacial

Aplica visão computacional na indústria aeroespacial com Ultralytics YOLO para inspecionar aeronaves, detetar objetos estranhos na pista (FOD), apoiar operações aeroportuárias em terra e detetar defeitos em materiais compósitos.
Saiba mais
Visão computacional na segurança

Visão computacional na segurança

Protege todas as instalações com os modelos Ultralytics YOLO. A IA visual permite monitorizar perímetros, detetar ameaças, reconhecer matrículas e melhorar a segurança no local de trabalho.
Saiba mais
Visão computacional na robótica

Visão computacional na robótica

Potencia máquinas mais inteligentes com os modelos Ultralytics YOLO. A IA visual na robótica permite navegação autónoma, perceção, rastreamento de objetos e controlo em tempo real.
Saiba mais
Visão computacional na logística

Visão computacional na logística

Otimize a logística com os modelos Ultralytics YOLO. A IA de visão permite inspecionar pacotes, fazer triagem, rastrear veículos e monitorar a segurança em tempo real nos armazéns.
Saiba mais
Visão computacional no varejo

Visão computacional no varejo

Reinvente o varejo com os modelos Ultralytics YOLO. A IA de visão permite rastrear o estoque, monitorar prateleiras, gerenciar filas e obter insights mais inteligentes sobre clientes.
Saiba mais
Visão computacional na área da saúde

Visão computacional na área da saúde

Desenvolva soluções de saúde com os modelos Ultralytics YOLO. A IA de visão na área da saúde permite obter imagens médicas mais rapidamente, diagnósticos mais inteligentes e monitoramento de pacientes.
Saiba mais
Visão computacional na manufatura

Visão computacional na manufatura

Otimize a manufatura com modelos Ultralytics YOLO. A IA visual impulsiona o controle de qualidade, a detecção de defeitos, a conformidade com o uso de EPI e a automação da linha de montagem.
Saiba mais
Visão computacional no setor automotivo

Visão computacional no setor automotivo

Aplique visão computacional no setor automotivo com modelos Ultralytics YOLO. A IA visual aumenta a segurança viária, aprimora a assistência ao condutor e viabiliza a automação de veículos para estradas mais inteligentes.
Saiba mais
Visão computacional na agricultura

Visão computacional na agricultura

Leve a IA de visão à agricultura inteligente com os modelos Ultralytics YOLO. Aprimore o monitoramento de plantações, o rastreamento de animais e a agricultura de precisão para obter safras maiores e mais inteligentes.
Saiba mais

Vamos construir juntos o futuro da IA!

Comece sua jornada rumo ao futuro do aprendizado de máquina