YOLO Vision 2026:
Guias

O que é overfitting na visão computacional e como evitá-lo?

Aprenda o que é overfitting na visão computacional e como evitá-lo usando aumento de dados, regularização e modelos pré-treinados.

ABAbdelrahman Elgendy6 min read
Overfitting em modelos de visão computacional e como evitá-lo

Os modelos de Computer vision são projetados para reconhecer padrões, detectar objetos e analisar imagens. No entanto, o seu desempenho depende de quão bem eles conseguem generalize para novos dados. 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 ao treinar estes modelos é o overfitting, em que o modelo aprende demasiado com os seus dados de treino, incluindo ruído desnecessário, em vez de identificar padrões significativos.

Quando isso acontece, o modelo tem um bom desempenho nos dados de treino, mas tem dificuldades com novas imagens. Por exemplo, um modelo de object detection treinado apenas com imagens de alta resolução e bem iluminadas pode falhar quando confrontado com imagens desfocadas ou com sombras em condições reais. O sobreajuste limita a adaptabilidade de um modelo, restringindo o seu uso em aplicações do mundo real, como condução autónoma, imagem médica e sistemas de segurança.

Neste artigo, vamos explorar o que é o overfitting, porque é que acontece e como evitá-lo. Também vamos ver como modelos de visão computacional como Ultralytics YOLO11 ajudam a reduzir o overfitting e a melhorar a generalização.

O que é overfitting?#

O overfitting ocorre quando um modelo memoriza os dados de treinamento em vez de aprender padrões que se aplicam amplamente a novas entradas. O modelo fica focado demais nos dados de treinamento, por isso tem dificuldade com novas imagens ou situações que nunca viu antes.

Na visão computacional, o overfitting pode afetar diferentes tarefas. Um modelo de classificação treinado apenas em imagens claras e brilhantes pode ter dificuldades em condições de baixa luminosidade. Um modelo de detecção de objetos que aprende com imagens perfeitas pode falhar em cenas lotadas ou bagunçadas. Da mesma forma, um modelo de segmentação de instâncias pode funcionar bem em ambientes controlados, mas ter problemas com sombras ou objetos sobrepostos.

Isso se torna um problema em aplicações de IA do mundo real, onde os modelos devem ser capazes de generalizar além das condições de treinamento controladas. Carros autônomos, por exemplo, precisam ser capazes de detectar pedestres em diferentes condições de iluminação, clima e ambientes. Um modelo que sofre overfitting em seu conjunto de treinamento não terá um desempenho confiável em cenários imprevisíveis como esses.

Quando e por que o overfitting acontece?#

O overfitting geralmente ocorre devido a conjuntos de dados desequilibrados, complexidade excessiva do modelo e treinamento excessivo. Aqui estão as principais causas:

  • Dados de treinamento limitados: Conjuntos de dados pequenos fazem com que os modelos memorizem padrões em vez de generalizá-los. Um modelo treinado em apenas 50 imagens de pássaros pode ter dificuldade em detectar espécies de pássaros fora desse conjunto de dados.
  • Modelos complexos com muitos parâmetros: Redes profundas com camadas e neurônios excessivos tendem a memorizar detalhes refinados em vez de focar em recursos essenciais.
  • Falta de data augmentation: Sem transformações como recorte, inversão ou rotação, um modelo pode aprender apenas a partir das suas imagens de treino exatas.
  • Treino prolongado: Se um modelo passar pelos dados de treino demasiadas vezes, conhecido como epochs, ele memoriza detalhes em vez de aprender padrões gerais, tornando-se menos adaptável.
  • Rótulos inconsistentes ou ruidosos: Dados rotulados incorretamente fazem com que um modelo aprenda padrões errados. Isso é comum em conjuntos de dados rotulados manualmente.

Uma abordagem bem equilibrada em relação à complexidade do modelo, qualidade do conjunto de dados e técnicas de treinamento garante uma melhor generalização.

Overfitting vs. underfitting#

Overfitting e underfitting são dois problemas completamente opostos no aprendizado profundo.

Comparison of underfitting, optimal learning, and overfitting in computer vision models

Fig 1. Comparação de underfitting, aprendizagem ótima e overfitting em modelos de visão computacional.

O overfitting acontece quando um modelo é complexo demais, tornando-o excessivamente focado nos dados de treinamento. Em vez de aprender padrões gerais, ele memoriza pequenos detalhes, até mesmo os irrelevantes, como ruído de fundo. Isso faz com que o modelo tenha um bom desempenho nos dados de treinamento, mas sofra com novas imagens, o que significa que ele não aprendeu verdadeiramente a reconhecer padrões que se aplicam em situações diferentes.

O underfitting acontece quando um modelo é básico demais, perdendo padrões importantes nos dados. Isso pode ocorrer quando o modelo tem poucas camadas, pouco tempo de treinamento ou os dados são limitados. Como resultado, ele falha em reconhecer padrões importantes e faz previsões imprecisas. Isso leva a um desempenho ruim tanto nos dados de treinamento quanto nos de teste, porque o modelo não aprendeu o suficiente para entender a tarefa adequadamente.

Um modelo bem treinado encontra o equilíbrio entre complexidade e generalização. Ele deve ser complexo o suficiente para aprender padrões relevantes, mas não tão complexo a ponto de memorizar dados em vez de reconhecer as relações subjacentes.

Como identificar o overfitting#

Aqui estão alguns sinais que indicam que um modelo está sofrendo overfitting:

  • Se a precisão do treinamento for significativamente maior que a precisão da validação, é provável que o modelo esteja com overfitting.
  • Uma lacuna crescente entre a perda de treinamento e a perda de validação é outro forte indicador.
  • O modelo está confiante demais em respostas erradas, mostrando que memorizou detalhes em vez de entender padrões.

Para garantir que um modelo generalize bem, ele precisa ser testado em conjuntos de dados diversos que reflitam as condições do mundo real.

Como evitar o overfitting em visão computacional#

O overfitting não é inevitável e pode ser evitado. Com as técnicas certas, os modelos de visão computacional podem aprender padrões gerais em vez de memorizar os dados de treinamento, tornando-os mais confiáveis em aplicações reais.

Aqui estão cinco estratégias principais para evitar o overfitting em visão computacional.

Aumente a diversidade de dados com aumento e dados sintéticos#

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

Combining real-world and synthetic data to reduce overfitting and improve detection accuracy

Fig 2. A combinação de dados do mundo real e sintéticos reduz o overfitting e melhora a precisão da deteção de objetos.

O data augmentation altera ligeiramente as imagens existentes, invertendo, girando, cortando ou ajustando o brilho, para que o modelo não apenas memorize detalhes, mas aprenda a reconhecer objetos em situações diferentes.

Dados sintéticos são úteis quando imagens reais são difíceis de obter. Por exemplo, modelos de carros autônomos podem treinar em cenas de estrada geradas por computador para aprender a detectar objetos em diferentes condições climáticas e de iluminação. Isso torna o modelo mais flexível e confiável sem a necessidade de milhares de imagens do mundo real.

Otimize a complexidade e a arquitetura do modelo#

Uma rede neural network profunda, que é um tipo de modelo de machine learning 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, ele memoriza os dados de treino em vez de reconhecer padrões mais amplos. Reduzir a complexidade desnecessária pode ajudar a evitar o overfitting.

Para conseguir isto, uma abordagem é pruning, que remove neurónios e conexões redundantes, tornando o modelo mais enxuto e eficiente.

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

Encontrar o equilíbrio certo entre a profundidade do modelo e a eficiência ajuda-o a aprender padrões úteis sem apenas memorizar os dados de treinamento.

Aplique técnicas de regularização#

Regularization techniques evitam que os modelos se tornem demasiado dependentes de características específicas nos dados de treino. Aqui estão algumas técnicas comummente utilizadas:

  • Dropout desliga partes aleatórias do modelo durante o treinamento para que ele aprenda a reconhecer diferentes padrões, em vez de depender demais de alguns poucos recursos.
  • Weight decay (L2 regularization) desencoraja valores de peso extremos, mantendo a complexidade do modelo sob controle.
  • Batch normalization ajuda a estabilizar o treinamento, garantindo que o modelo seja menos sensível a variações no conjunto de dados.

Essas técnicas ajudam a manter a flexibilidade e a adaptabilidade de um modelo, reduzindo o risco de overfitting enquanto preservam a precisão.

Monitore o treinamento com validação e early stopping#

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

  • Early stopping: Finaliza automaticamente o treinamento quando o modelo para de melhorar, para que ele não continue aprendendo detalhes desnecessários.
  • Cross-validation: Divide os dados em partes e treina o modelo em cada uma delas. Isso o ajuda a aprender padrões em vez de memorizar imagens específicas.

Essas técnicas ajudam o modelo a manter o equilíbrio para que ele aprenda o suficiente para ser preciso sem ficar focado demais apenas nos dados de treinamento.

Use modelos pré-treinados e melhore a rotulagem de conjuntos de dados#

Em vez de treinar do zero, usar modelos pré-treinados como o Ultralytics YOLO11 pode reduzir o overfitting. O YOLO11 é treinado em conjuntos de dados em larga escala, permitindo que ele generalize bem sob diferentes condições.

Pretrained computer vision models enhancing accuracy and preventing overfitting

Fig 3. Os modelos de visão computacional pré-treinados aumentam a precisão e evitam o overfitting.

O ajuste fino de um modelo pré-treinado ajuda-o a manter o que já sabe enquanto aprende novas tarefas, para que ele não apenas memorize os dados de treinamento.

Além disso, garantir a rotulagem de conjuntos de dados de alta qualidade é essencial. Dados incorretamente rotulados ou desequilibrados podem induzir os modelos em erro, fazendo-os aprender padrões incorretos. Limpar conjuntos de dados, corrigir imagens mal rotuladas e equilibrar classes melhora a precisão e reduz o risco de overfitting. Outra abordagem eficaz é o adversarial training, onde o modelo é exposto a exemplos ligeiramente alterados ou mais desafiantes concebidos para testar os seus limites.

Principais pontos#

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

Ao aplicar esses métodos, os modelos de IA podem permanecer confiáveis e ter um bom desempenho em diferentes ambientes. À medida que o aprendizado profundo melhora, garantir que os modelos generalizem corretamente será fundamental para o sucesso da IA no mundo real.

Junta-te à nossa crescente community! Explora o nosso GitHub repository para saberes mais sobre AI. Estás pronto para iniciar os teus próprios projetos de visão computacional? Consulta as nossas licensing options. Descobre vision AI in self-driving e AI in healthcare visitando as nossas páginas de soluções!

Explore solutions

Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.
Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.
Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.
Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.
Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.
Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.
Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.
Sabe mais
Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.
Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.
Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.
Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.
Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.
Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.
Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.
Sabe mais
Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.
Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.
Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.
Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.
Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.
Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.
Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.
Sabe mais

Vamos construir o futuro da IA juntos!

Começa a tua jornada com o futuro da aprendizagem automática