O que é o sobreajuste na visão por computador e como o evitar?

Abdelrahman Elgendy

6 min. de leitura

13 de março de 2025

Saiba o que é o sobreajuste na visão computacional e como evitá-lo utilizando o aumento de dados, a regularização e modelos pré-treinados.

Os modelos de visão por computador são concebidos para reconhecer padrões, detetar objectos e analisar imagens. No entanto, o seu desempenho depende da sua capacidade de generalização para dados não vistos. A generalização é a capacidade do modelo de funcionar bem em novas imagens, e não apenas naquelas em que foi treinado. Um problema comum na formação destes modelos é o sobreajuste, em que um modelo aprende demasiado com os seus dados de formação, incluindo ruído desnecessário, em vez de identificar padrões significativos.

Quando isto acontece, o modelo tem um bom desempenho nos dados de treino, mas tem dificuldades com novas imagens. Por exemplo, um modelo de deteção de objectos treinado apenas em imagens de alta resolução e bem iluminadas pode falhar quando lhe são apresentadas imagens desfocadas ou com sombras em condições reais. O sobreajuste limita a adaptabilidade de um modelo, limitando a sua utilização em aplicações do mundo real, como a condução autónoma, a imagiologia médica e os sistemas de segurança.

Neste artigo, vamos explorar o que é o sobreajuste, porque é que acontece e como o evitar. Também veremos como os modelos de visão por computador, como o Ultralytics YOLO11, ajudam a reduzir o sobreajuste e a melhorar a generalização.

O que é o sobreajuste?

O sobreajuste ocorre quando um modelo memoriza os dados de treino em vez de aprender padrões que se aplicam amplamente a novas entradas. O modelo fica demasiado concentrado nos dados de treino, pelo que tem dificuldade em lidar com novas imagens ou situações que nunca viu antes.

Na visão computacional, o sobreajuste pode afetar diferentes tarefas. Um modelo de classificação treinado apenas em imagens claras e brilhantes pode ter dificuldades em condições de pouca luz. Um modelo de deteção de objectos que aprende com imagens perfeitas pode falhar em cenas com muita gente ou desarrumadas. Da mesma forma, um modelo de segmentação de instâncias pode funcionar bem em ambientes controlados, mas ter problemas com sombras ou objectos sobrepostos.

Isto torna-se um problema nas aplicações de IA do mundo real, onde os modelos devem ser capazes de generalizar para além das condições de treino controladas. Os carros autónomos, por exemplo, têm de ser capazes de detetar peões em diferentes condições de iluminação, clima e ambientes. Um modelo que se ajuste demasiado ao seu conjunto de treino não terá um desempenho fiável em cenários tão imprevisíveis.

Quando e porque é que ocorre o sobreajuste?

O sobreajuste ocorre normalmente devido a conjuntos de dados desequilibrados, complexidade excessiva do modelo e sobretreino. Eis as principais causas:

  • Dados de treino limitados: Conjuntos de dados pequenos fazem com que os modelos memorizem padrões em vez de os generalizarem. Um modelo treinado com apenas 50 imagens de aves pode ter dificuldade em detetar espécies de aves fora desse conjunto de dados.

  • Modelos complexos com demasiados parâmetros: As redes profundas com um número excessivo de camadas e neurónios tendem a memorizar pequenos detalhes em vez de se concentrarem nas caraterísticas essenciais.

  • Falta de aumento de dados: Sem transformações como o corte, a inversão ou a rotação, um modelo só pode aprender com as suas imagens de treino exactas.

  • Formação prolongada: Se um modelo percorrer os dados de treino demasiadas vezes, conhecidas como épocas, memoriza pormenores em vez de aprender padrões gerais, tornando-o menos adaptável.

  • Rótulos inconsistentes ou com ruído: Dados incorretamente rotulados fazem com que um modelo aprenda os padrões errados. Isto é comum em conjuntos de dados rotulados manualmente.

Uma abordagem equilibrada da complexidade do modelo, da qualidade do conjunto de dados e das técnicas de formação garante uma melhor generalização.

Sobreajuste vs. subajuste

O sobreajuste e o subajuste são duas questões completamente polares na aprendizagem profunda.

__wf_reserved_inherit
Figura 1. Comparação de subadaptação, aprendizagem óptima e sobreadaptação em modelos de visão por computador.

O sobreajuste ocorre quando um modelo é demasiado complexo, tornando-o demasiado concentrado nos dados de treino. Em vez de aprender padrões gerais, memoriza pequenos detalhes, mesmo irrelevantes, como o ruído de fundo. Isto faz com que o modelo tenha um bom desempenho nos dados de treino, mas tenha dificuldades com novas imagens, o que significa que não aprendeu verdadeiramente a reconhecer padrões que se aplicam a diferentes situações.

A subadaptação ocorre quando um modelo é demasiado básico, pelo que não detecta padrões importantes nos dados. Isto pode ocorrer quando o modelo tem muito poucas camadas, não tem tempo de treino suficiente ou os dados são limitados. Como resultado, não consegue reconhecer padrões importantes e faz previsões incorrectas. Isto leva a um fraco desempenho nos dados de treino e de teste, porque o modelo não aprendeu o suficiente para compreender corretamente a tarefa. 

Um modelo bem treinado encontra o equilíbrio entre complexidade e generalização. Deve ser suficientemente complexo para aprender padrões relevantes, mas não tão complexo que memorize dados em vez de reconhecer relações subjacentes.

Como identificar o sobreajuste

Eis alguns sinais que indicam que um modelo está a sofrer de sobreajuste:

  • Se a exatidão do treino for significativamente superior à exatidão da validação, é provável que o modelo esteja sobreajustado.
  • Uma diferença cada vez maior entre a perda de formação e a perda de validação é outro indicador forte.
  • O modelo está demasiado confiante nas respostas erradas, mostrando que memorizou pormenores em vez de compreender padrões.

Para garantir uma boa generalização de um modelo, é necessário testá-lo em diversos conjuntos de dados que reflictam as condições do mundo real.

Como evitar o sobreajuste na visão computacional

O sobreajuste não é inevitável e pode ser evitado. Com as técnicas corretas, os modelos de visão por computador podem aprender padrões gerais em vez de memorizar dados de treino, tornando-os mais fiáveis em aplicações do mundo real. 

Eis cinco estratégias-chave para evitar o sobreajuste na visão computacional.

Aumentar a diversidade de dados com dados aumentados e sintéticos

A melhor forma de ajudar um modelo a funcionar bem com novos dados é expandir o conjunto de dados utilizando o aumento de dados e dados sintéticos. Os dados sintéticos são gerados por computador em vez de serem recolhidos a partir de imagens do mundo real. Ajudam a preencher as lacunas quando não existem dados reais suficientes.

__wf_reserved_inherit
Figura 2. A combinação de dados do mundo real e sintéticos reduz o sobreajuste e melhora a precisão da deteção de objectos.

O aumento de dados altera ligeiramente as imagens existentes, invertendo, rodando, cortando ou ajustando o brilho, para que o modelo não memorize apenas detalhes, mas aprenda a reconhecer objectos em diferentes situações.

Os dados sintéticos são úteis quando as imagens reais são difíceis de obter. Por exemplo, os modelos de carros autónomos podem ser treinados em cenas de estrada geradas por computador para aprender a detetar objectos em diferentes condições meteorológicas e de iluminação. Isto torna o modelo mais flexível e fiável sem necessitar de milhares de imagens do mundo real.

Otimizar a complexidade e a arquitetura do modelo

Uma rede neural profunda, que é um tipo de modelo de aprendizagem automática que tem muitas camadas que processam dados em vez de uma única camada, nem sempre é melhor. Quando um modelo tem demasiadas camadas ou parâmetros, memoriza os dados de treino em vez de reconhecer padrões mais amplos. A redução da complexidade desnecessária pode ajudar a evitar o sobreajuste.

Para o conseguir, uma abordagem é a poda, que remove neurónios e ligações redundantes, tornando o modelo mais simples e mais eficiente. 

Outra é simplificar a arquitetura, reduzindo o número de camadas ou neurónios. Os modelos pré-treinados como o YOLO11 foram concebidos para generalizar bem as tarefas com menos parâmetros, o que os torna mais resistentes ao sobreajuste do que treinar um modelo profundo de raiz.

Encontrar o equilíbrio correto entre a profundidade e a eficiência do modelo ajuda-o a aprender padrões úteis sem se limitar a memorizar dados de treino.

Aplicar técnicas de regularização

As técnicas de regularização evitam que os modelos se tornem demasiado dependentes de caraterísticas específicas nos dados de treino. Eis algumas das técnicas mais utilizadas:

  • O Dropout desliga partes aleatórias do modelo durante o treino para que este aprenda a reconhecer diferentes padrões em vez de depender demasiado de algumas caraterísticas.

  • O decaimento do peso (regularização L2) desencoraja valores de peso extremos, mantendo a complexidade do modelo sob controlo.

  • A normalização de lotes ajuda a estabilizar o treinamento, garantindo que o modelo seja menos sensível a variações no conjunto de dados.

Estas técnicas ajudam a manter a flexibilidade e a adaptabilidade de um modelo, reduzindo o risco de sobreajuste e preservando a exatidão.

Monitorizar a formação com validação e paragem precoce

Para evitar o sobreajuste, é importante acompanhar a forma como o modelo aprende e garantir que generaliza bem para novos dados. Aqui estão algumas técnicas para ajudar com isso:

  • Paragem antecipada: Termina automaticamente o treino quando o modelo deixa de melhorar, para que não continue a aprender detalhes desnecessários.

  • Validação cruzada: Divide os dados em partes e treina o modelo em cada uma delas. Isto ajuda-o a aprender padrões em vez de memorizar imagens específicas.

Estas técnicas ajudam o modelo a manter-se equilibrado para que aprenda o suficiente para ser exato sem se concentrar demasiado apenas nos dados de treino.

Utilizar modelos pré-treinados e melhorar a rotulagem do conjunto de dados

Em vez de treinar de raiz, utilizar modelos pré-treinados como o YOLO11 pode reduzir o sobreajuste. O YOLO11 é treinado em conjuntos de dados de grande escala, o que lhe permite generalizar bem em diferentes condições.

__wf_reserved_inherit
Figura 3. Os modelos de visão por computador pré-treinados aumentam a precisão e evitam o sobreajuste.

O ajuste fino de um modelo pré-treinado ajuda-o a manter o que já sabe enquanto aprende novas tarefas, para que não se limite a memorizar os dados de treino.

Além disso, é essencial garantir uma rotulagem de alta qualidade do conjunto de dados. Dados mal rotulados ou desequilibrados podem induzir os modelos a aprender padrões incorrectos. A limpeza dos conjuntos de dados, a correção de imagens mal rotuladas e o equilíbrio das classes melhoram a precisão e reduzem o risco de sobreajuste. Outra abordagem eficaz é o treino contraditório, em que o modelo é exposto a exemplos ligeiramente alterados ou mais difíceis, concebidos para testar os seus limites.

Principais conclusões

O sobreajuste é um problema comum na visão computacional. Um modelo pode funcionar bem em dados de treino mas ter dificuldades com imagens do mundo real. Para evitar este problema, técnicas como o aumento de dados, a regularização e a utilização de modelos pré-treinados como o YOLO11 ajudam a melhorar a precisão e a adaptabilidade.

Ao aplicar estes métodos, os modelos de IA podem manter-se fiáveis e ter um bom desempenho em diferentes ambientes. À medida que a aprendizagem profunda melhora, garantir que os modelos generalizam corretamente será fundamental para o sucesso da IA no mundo real.

Junte-se à nossa comunidade em crescimento! Explore o nosso repositório GitHub para saber mais sobre IA. Pronto para iniciar os seus próprios projectos de visão computacional? Veja as nossas opções de licenciamento. Descubra a IA de visão na condução autónoma e a IA nos cuidados de saúde visitando as nossas páginas de soluções!

Vamos construir juntos o futuro
da IA!

Comece a sua viagem com o futuro da aprendizagem automática

Comece gratuitamente
Ligação copiada para a área de transferência