Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

Overfitting

Explore as causas e os sintomas do sobreajuste na aprendizagem automática. Aprenda a evitar a alta variância e melhorar a generalização usando Ultralytics .

O sobreajuste ocorre na aprendizagem automática quando um modelo aprende os dados de treino muito bem, capturando ruído e flutuações aleatórias em vez da distribuição de dados subjacente. Em vez de aprender padrões gerais que se aplicam a dados novos e não vistos, um modelo sobreajustado memoriza efetivamente os exemplos específicos no conjunto de treino. Isso resulta em excelente desempenho nos dados de treino, mas fraca generalização para cenários do mundo real. É frequentemente descrito como "alta variância", o que significa que as previsões do modelo variam significativamente dependendo do conjunto de dados específico usado para o treino.

Por que ocorre o sobreajuste

A principal causa do sobreajuste é a complexidade excessiva do modelo em relação à quantidade de dados disponíveis. Se uma rede neural for muito grande — ou seja, tiver muitas camadas ou parâmetros —, ela poderá memorizar facilmente os exemplos de treino. Outros fatores que contribuem para isso incluem:

  • Dados de treino insuficientes: pequenos conjuntos de dados podem conter correlações espúrias que não existem na população mais ampla. Modelos treinados com dados limitados são propensos a aprender esses padrões acidentais.
  • Ruído de dados e valores atípicos: Altos níveis de ruído ou valores atípicos não representativos nos dados de treino podem induzir o modelo em erro, fazendo com que ele ajuste os seus parâmetros internos para se adequar às anomalias, em vez do sinal verdadeiro.
  • Duração prolongada do treino: treinar por demasiados épocas permite que o modelo continue a refinar os seus pesos até se ajustar ao ruído no conjunto de treino. Isto é frequentemente monitorizado utilizando dados de validação.

Overfitting vs. Underfitting

É importante distinguir o sobreajuste do subajuste. Enquanto o sobreajuste envolve a aprendizagem de demasiados detalhes (incluindo ruído), o subajuste ocorre quando um modelo é demasiado simples para capturar a estrutura subjacente dos dados. Um modelo subajustado tem um desempenho fraco tanto nos dados de treino como nos novos dados, resultando frequentemente num elevado viés. O equilíbrio entre estes dois extremos é conhecido como compromisso entre viés e variância.

Prevenção do sobreajuste

Os engenheiros utilizam várias técnicas para mitigar o sobreajuste e melhorar a robustez do modelo:

  • Regularização: Técnicas como regularização L1/L2 ou adição de camadas de dropout introduzem penalidades ou aleatoriedade durante o treino, impedindo que o modelo se torne excessivamente dependente de características específicas.
  • Paragem antecipada: monitorizar a função de perda num conjunto de validação permite que o treino seja interrompido assim que o desempenho em dados não vistos parar de melhorar, mesmo que a precisão do treino continue a aumentar.
  • Aumento de dados: aumentar artificialmente o tamanho e a diversidade do conjunto de treino usando o aumento de dados torna mais difícil para o modelo memorizar imagens exatas.
  • Validação cruzada: O uso de técnicas como a validação cruzada k-fold garante que o modelo seja testado em diferentes subconjuntos de dados, fornecendo uma estimativa mais confiável do seu desempenho.

Exemplos do Mundo Real

O sobreajuste pode ter consequências graves ao implementar IA em ambientes de produção:

  • Diagnósticodetect : Na IA na área da saúde, um modelo treinado para detetar cancro de pele pode se ajustar excessivamente às condições de iluminação ou às marcações da régua presentes nas imagens de treino. Quando implementado em uma clínica com iluminação ou equipamentos diferentes, o modelo pode falhar na identificação correta de lesões malignas, pois se baseou em pistas irrelevantes do ambiente.
  • Previsão financeira: Um modelo de previsão do preço das ações pode se ajustar excessivamente às tendências históricas do mercado que foram impulsionadas por um evento específico e não repetível (como uma crise económica pontual). Esse modelo provavelmente não conseguiria prever com precisão os movimentos futuros das ações, pois memorizou anomalias passadas em vez de aprender a dinâmica fundamental do mercado.

Exemplo de código: Paragem antecipada com YOLO26

Usando a Ultralytics ou scripts de treino locais, é possível evitar o sobreajuste definindo uma tolerância de interrupção antecipada. Isso interrompe o treino se a adequação da validação não melhorar por um número definido de épocas.

from ultralytics import YOLO

# Load the YOLO26 model (latest generation)
model = YOLO("yolo26n.pt")

# Train with early stopping enabled (patience=50 epochs)
# If validation metrics don't improve for 50 epochs, training stops.
results = model.train(data="coco8.yaml", epochs=100, patience=50)

Conceitos Relacionados

  • Generalização: A capacidade de um modelo se adaptar e ter um bom desempenho em dados novos, anteriormente não vistos, que é o oposto do sobreajuste.
  • Validação cruzada: técnica para avaliar como os resultados de uma análise estatística serão generalizados para um conjunto de dados independente.
  • Regularização: Métodos utilizados para reduzir erros, ajustando uma função adequadamente ao conjunto de treino fornecido e evitando o sobreajuste.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora