Overfitting e Underfitting

20

Fiz algumas pesquisas sobre sobreaquecimento e desajustamento e compreendi o que elas são exatamente, mas não consigo encontrar os motivos.

Quais são as principais razões para sobreajustar e não adequar?

Por que enfrentamos esses dois problemas no treinamento de um modelo?

Goktug
fonte
1
Você pode encontrar O que é um exemplo do mundo real de “sobreajuste”? útil
Silverfish

Respostas:

30

Vou tentar responder da maneira mais simples. Cada um desses problemas tem sua própria origem principal:

Sobreajuste: Os dados são barulhentos, o que significa que existem alguns desvios da realidade (devido a erros de medição, fatores influentes aleatórios, variáveis ​​não observadas e correlações de lixo) que dificultam a visualização de sua verdadeira relação com os fatores explicativos. Além disso, geralmente não está completo (não temos exemplos de tudo).

Como exemplo, digamos que estou tentando classificar meninos e meninas com base na sua altura, só porque essa é a única informação que tenho sobre eles. Todos sabemos que, embora os meninos sejam mais altos, em média, do que as meninas, existe uma enorme região de sobreposição, tornando impossível separá-los perfeitamente com esse pouco de informação. Dependendo da densidade dos dados, um modelo suficientemente complexo pode ser capaz de obter uma taxa de sucesso melhor nessa tarefa do que é teoricamente possível no treinamentoconjunto de dados porque ele pode traçar limites que permitem que alguns pontos sejam independentes. Portanto, se tivermos apenas uma pessoa com 2,04 metros de altura e ela for uma mulher, o modelo poderá desenhar um pequeno círculo em torno dessa área, o que significa que uma pessoa aleatória com 2,04 metros de altura provavelmente será uma mulher.

A razão subjacente para tudo isso é confiar demais nos dados de treinamento (e no exemplo, o modelo diz que, como não há homem com 2,04 de altura, isso só é possível para mulheres).

A falta de adequação é o problema oposto, no qual o modelo falha em reconhecer as complexidades reais em nossos dados (isto é, as mudanças não aleatórias em nossos dados). O modelo assume que o ruído é maior do que realmente é e, portanto, usa uma forma muito simplista. Portanto, se o conjunto de dados tiver muito mais meninas do que meninos por qualquer motivo, o modelo poderá classificá-las todas como meninas.

Nesse caso, o modelo não confiava em dados suficientes e apenas supunha que os desvios são todos ruídos (e, no exemplo, o modelo assume que os meninos simplesmente não existem).

Resumindo, enfrentamos esses problemas porque:

  • Não temos informações completas.
  • Não sabemos o quão barulhentos são os dados (não sabemos o quanto devemos confiar neles).
  • Não conhecemos antecipadamente a função subjacente que gerou nossos dados e, portanto, a complexidade ideal do modelo.
Luis Da Silva
fonte
2
bem-vindo ao CV. boa resposta, o que me faz querer del minha resposta ...
Haitao Du
1
Eu acho que a parte referente a "desenhar limites" e "círculos" é um pouco confusa ...
Easymode44 03/03
Eu argumentaria apenas que o exemplo de previsão de altura entre homens e mulheres se enquadra na falta de adequação, e não na super adequação.
Digio
6

Sobreajuste é quando um modelo estima muito bem a variável que você está modelando nos dados originais, mas não estima muito bem no novo conjunto de dados (espera, validação cruzada, previsão etc.). Você tem muitas variáveis ​​ou estimadores em seu modelo (variáveis ​​simuladas etc.) e isso faz com que seu modelo se torne sensível demais ao ruído nos dados originais. Como resultado do ajuste excessivo no ruído nos dados originais, o modelo prevê mal.

A falta de ajuste é quando um modelo não estima bem a variável nos dados originais ou nos novos dados. Estão faltando no seu modelo algumas variáveis ​​necessárias para melhor estimar e prever o comportamento da sua variável dependente.

O equilíbrio entre over e underfitting é desafiador e às vezes sem uma linha de chegada clara. Na modelagem de séries temporais de econometria, esse problema é resolvido muito bem com modelos de regularização (LASSO, Ridge Regression, Elastic-Net) que são atendidos especificamente para reduzir o overfitting, respectivamente, reduzindo o número de variáveis ​​em seu modelo, reduzindo a sensibilidade dos coeficientes a seus dados ou uma combinação de ambos.

Sympa
fonte
5

Talvez durante sua pesquisa você tenha encontrado a seguinte equação:

Error = IrreducibleError + Bias² + Variance.

Por que enfrentamos esses dois problemas no treinamento de um modelo?

O problema de aprendizagem em si é basicamente uma troca entre preconceito e variação .

Quais são as principais razões para sobreajustar e não adequar?

Curto: Ruído.

Longo: O erro irredutível : Erros / flutuações de medição nos dados, bem como a parte da função de destino que não pode ser representada pelo modelo. Remensurar a variável de destino ou alterar o espaço da hipótese (por exemplo, selecionar um modelo diferente) altera esse componente.

Editar (para vincular às outras respostas): Modele o desempenho conforme a complexidade varia:

.

onde errorD é o erro em toda a distribuição D (na prática, estimado com conjuntos de testes).

Laksan Nathan
fonte
3
Eu acho que você deveria definir sua terminologia. O OP não usa os termos "preconceito" ou "variação" na pergunta, você não usa os termos "sobreajuste" ou "sobrealimentação" em sua resposta (exceto em uma citação da pergunta). Eu acho que essa seria uma resposta muito mais clara se você explicar a relação entre esses termos.
Gregor
4

Quase todos os problemas estatísticos podem ser declarados da seguinte forma:

  1. (y,x)f^y^=f^(x)

  2. f^ff

y=f(x)+ε

f^y^yf^εff

f^f~f

Se você observar o problema estatístico dessa maneira, o ajuste do modelo é sempre um equilíbrio entre ajuste insuficiente e excesso e qualquer solução é sempre um compromisso. Enfrentamos esse problema porque nossos dados são aleatórios e barulhentos.

mpiktas
fonte
2

Quais são as principais razões para sobreajustar e não adequar?

Para o ajuste excessivo, o modelo é muito complexo para ajustar bem os dados de treinamento. Para um ajuste insuficiente, o modelo é muito simples.

Por que enfrentamos esses dois problemas no treinamento de um modelo?

É difícil escolher o modelo "certo" e os parâmetros para os dados.

Haitao Du
fonte
0

O sobreajuste e a falta de ajuste são basicamente explicações inadequadas dos dados por um modelo hipotético e podem ser vistos como o modelo superexplicando ou subexplicando os dados. Isso é criado pelo relacionamento entre o modelo usado para explicar os dados e o modelo que os gera. Em nossa tentativa de explicar, não podemos acessar o modelo subjacente, de modo que nosso julgamento é guiado por outro fator: as incertezas ou as barras de erro.

Quando, em uma tentativa de ajustar toda a variação, usamos um modelo muito complexo, estamos nos ajustando demais. Isso é criado por termos livre arbítrio na escolha do modelo e com muita importância para as barras de erro (ou tentando explicar toda a variabilidade, que é a mesma). Ao nos restringirmos a um modelo que é muito simples para descrever os dados e não atribuir importância suficiente às barras de erro (ou não explicar a variabilidade), estamos com pouco desempenho.

Como alguém pode evitar esses dois? Modelos apoiados por informações (não derivados dos dados, mas de conhecimento prévio do problema) e incertezas significativas.

pedrofigueira
fonte
0

Em poucas palavras, o excesso de ajuste aparece como uma conseqüência dos padrões que aparecem no conjunto de dados de treinamento, mas não estão presentes em toda a população (eles pareceram sem sorte). Se você usar um modelo simples (pense em regressão linear, por exemplo), risco de ajuste excessivo é baixo, pois o número de padrões possíveis que ele pode detectar é pequeno e, portanto, a chance de um desses aparecer aleatoriamente na amostra também não é grande. Um exemplo disso pode ocorrer se você tentar estudar as correlações 1.000.000 de variáveis ​​em uma população que faz uma amostra de 100 indivíduos. Alguns dos recursos podem apresentar aleatoriamente uma enorme correlação amostral, apesar de serem completamente independentes um do outro

Outro motivo para o sobreajuste é a amostragem tendenciosa (os "padrões falsos de amostra" estão lá porque a amostra não é realmente aleatória). Por exemplo, se você deseja estudar o tamanho médio de um determinado tipo de cogumelo indo até lá e encontrando-os na natureza , é provável que você o superestime (é mais fácil encontrar cogumelos maiores)

Underfitting é, por outro lado, um fenômeno bastante mais simples. Pode significar duas coisas muito básicas: A) Não temos dados suficientes para o modelo aprender o padrão da população ou B) Nosso modelo não é poderoso o suficiente para refleti-lo.

y=ax+ϵϵ

y=x2+ϵ

David
fonte
0

Resposta curta:

O principal motivo para o ajuste excessivo é usar um modelo complexo quando você tem um pequeno conjunto de treinamento.

O principal motivo para a falta de ajuste é o uso de um modelo muito simples e que não pode ter um bom desempenho no conjunto de treinamento.


Principal motivo para sobreajuste?

  • Os modelos com alta capacidade podem superajustar memorizando as propriedades do conjunto de treinamento que não os servem bem no conjunto de teste.

-Deep Learning book, Goodfellow et al.

O objetivo do aprendizado de máquina é treinar um modelo no conjunto de treinamento, na esperança de que ele funcione tão bem quanto nos dados de teste. Mas obter um bom desempenho no conjunto de treinamento sempre se traduz em um bom desempenho no conjunto de testes? Não será, porque seus dados de treinamento são limitados . Se você tiver dados limitados, seu modelo poderá encontrar alguns padrões que funcionam para esse conjunto de treinamento limitado, mas esses padrões não generalizam para outros casos (por exemplo, conjunto de testes). Isso pode ser resolvido por:

A- Fornecer um conjunto de treinamento maior ao modelo para reduzir a chance de ter padrões arbitrários no conjunto de treinamento.

B- Usando um modelo mais simples para que o modelo não consiga encontrar esses padrões arbitrários no conjunto de treinamento. Um modelo mais complexo poderá encontrar padrões mais complicados; portanto, você precisa de mais dados para garantir que seu conjunto de treinamento seja grande o suficiente para não conter padrões arbitrários.

(por exemplo, imagine que você queira ensinar um modelo para detectar navios de caminhões e tiver 10 imagens de cada. Se a maioria dos navios de suas imagens estiver na água, seu modelo poderá aprender a classificar qualquer imagem com fundo azul como navio. em vez de aprender a aparência de um navio. Agora, se você tiver 10.000 imagens de navios e caminhões, é mais provável que o seu conjunto de treinamento contenha navios e caminhões em uma variedade de cenários e seu modelo não pode mais depender apenas do fundo azul.)

Principal motivo para underfitting?

  • A falta de ajuste ocorre quando o modelo não é capaz de obter um valor de erro suficientemente baixo no conjunto de treinamento.

  • Modelos com baixa capacidade podem ter dificuldades para se ajustar ao conjunto de treinamento.

-Deep Learning book, Goodfellow et al.

A falta de ajuste ocorre quando o modelo não é bom o suficiente para aprender o conjunto de treinamento, o que significa que o modelo é muito simples. Sempre que começamos a resolver um problema, queremos um modelo que seja pelo menos capaz de obter um bom desempenho no conjunto de treinamento e depois começamos a pensar em reduzir o excesso de ajuste. Geralmente, a solução para o ajuste insuficiente é bastante direta: use um modelo mais complexo.

Soroush
fonte
0

Considere um exemplo em que temos uma equação de hipótese / modelo,

y=q*X+c,

onde X = lista de características, y = etiqueta eq e c são os coeficientes que precisamos treinar.

Se surgirmos os valores do coeficiente tais que sejam grandes o suficiente e começarmos a suprimir o valor dos recursos (ou seja, X) nesse caso, sempre obteremos o valor constante de y, independentemente de qualquer valor X. Isso é chamado de modelo altamente tendencioso ou pouco adequado.

Considere outro exemplo complexo de hipótese,

y=q*X+r*sqr(X)+s*cube(X)+c, where q,r,s and c are the coefficients.

Após identificar o melhor valor dos coeficientes, é possível que, para os dados de treinamento, possamos obter a perda mínima. É apenas porque tornamos nosso modelo tão complexo e fortemente acoplado que ele se comporta muito bem com os dados de treinamento. Considerando que, com os dados invisíveis, o wwe pode obter resultados bastante opostos. Isso é chamado de modelo altamente variado ou com excesso de ajuste.

O modelo tendencioso precisa de mais complexidade na seleção de modelos, enquanto o modelo altamente variado precisa diminuir na complexidade na seleção de modelos. A técnica de regularização pode nos ajudar a identificar o nível adequado de complexidade do modelo e, por meio dessa técnica, podemos superar os dois problemas.

vipin bansal
fonte
Você pode usar a formatação matemática em sua resposta. Mais informações: math.meta.stackexchange.com/questions/5020/…
Sycorax diz Reinstate Monica