O que é um exemplo do mundo real de "sobreajuste"?


107

Eu meio que entendo o que significa "sobreajustar", mas preciso de ajuda para descobrir um exemplo do mundo real que se aplique à sobreajuste.


12
Talvez você possa explicar o que "meio que entende" sobre "o que significa excesso de ajuste", para que as pessoas possam abordar as partes que você não entende sem ter que adivinhar o que elas podem ser.
goangit

3
@ssdecontrol A correlação espúria não é excessiva. De fato, a correlação espúria não precisa envolver um modelo explícito, e o modelo implícito é geralmente uma linha reta com dois parâmetros.
Nick Cox

1
@ whuber: Talvez seja mais apropriado discutir sobre a meta, mas fiquei surpreso ao ver que você converteu este post em wiki da comunidade. Isso não significa que o OP não terá aumento de reputação para futuros votos positivos? Para mim, parece quase um "castigo" para ele; qual foi a razão para isso?
ameba

4
@amoeba Não é punição: esta pergunta, como afirmado, obviamente não tem uma resposta correta ou canônica. Em sua forma original, como uma pergunta não relacionada à CW, ficou fora de tópico como resultado - e deveria ter sido rapidamente encerrado, mas porque pode haver valor em ter alguns bons exemplos criados coletivamente pela comunidade, conferindo status à CW em vez de fechar, parece ser uma solução razoável.
whuber

17
Até agora, poucas dessas respostas (apenas duas em 11!) Tentam abordar a questão, que pede um exemplo do mundo real . Isso significa não uma simulação, não um exemplo teórico, não um desenho animado, mas um modelo seriamente aplicado aos dados reais. Observe também que a pergunta tenta explicitamente afastar as respostas das explicações sobre o que é o excesso de ajuste.
whuber

Respostas:


96

Aqui está um bom exemplo de modelos de séries temporais de eleições presidenciais da xkcd: insira a descrição da imagem aqui

Houve apenas 56 eleições presidenciais e 43 presidentes. Não há muitos dados para aprender. Quando o espaço do preditor se expande para incluir itens como dentes falsos e o valor dos nomes em Scrabble, é muito fácil para o modelo deixar de ajustar os recursos generalizáveis ​​dos dados (o sinal) e começar a combinar o ruído. Quando isso acontece, o ajuste nos dados históricos pode melhorar, mas o modelo falhará miseravelmente quando usado para fazer inferências sobre futuras eleições presidenciais.


15
Eu acho que você deve adicionar algo sobre o viés de amostra para explicar como isso se relaciona com o ajuste excessivo. Apenas um recorte e colagem do desenho animado está faltando a explicação.
Neil Slater

5
Um bom recurso deste exemplo é que ele demonstra a diferença entre super ajuste e complexidade. A regra "assim como a Califórnia, assim como a nação" é simples, mas ainda está desajustada.
precisa

2
O @TomMinka, na verdade, o super ajuste pode ser causado pela complexidade (um modelo complexo demais para caber em dados muito simples, portanto, parâmetros adicionais se encaixam no que estiver disponível) ou, como você apontou, por recursos ruidosos que ganham mais peso na decisão do que o pertinente características. E existem muitas outras fontes possíveis de sobreajuste (variação intrínseca dos dados ou modelo, dados não pertinentes para representar a meta de destino etc.). Eu acho que devemos dizer que há overfitting s , não apenas overfitting (que implica que há apenas uma causa, que muitas vezes não é correto).
gaborous

80

Meu favorito era o exemplo do Matlab de população do censo dos EUA em relação ao tempo:

  • Um modelo linear é muito bom
  • Um modelo quadrático está mais próximo
  • Um modelo quártico prevê a aniquilação total a partir do próximo ano

(Pelo menos, sinceramente, espero que este seja um exemplo de sobreajuste)

http://www.mathworks.com/help/curvefit/examples/polynomial-curve-fitting.html#zmw57dd0e115insira a descrição da imagem aqui


1
Apenas para ficar claro exatamente embaixo da plotagem, eles dizem: "O comportamento do ajuste polinomial de sexto grau além do intervalo de dados o torna uma má escolha para extrapolação e você pode rejeitá-lo. "
usεr11852

49

O estudo de Chen et al. (2013) encaixa dois cúbicos em uma suposta descontinuidade na expectativa de vida em função da latitude.

Chen Y., Ebenstein, A., Greenstone, M. e Li, H. 2013. Evidências sobre o impacto da exposição sustentada à poluição do ar na expectativa de vida da política do rio Huai na China. Anais da Academia Nacional de Ciências 110: 12936–12941. abstrato

Apesar de ter sido publicado em um excelente periódico, etc., de seu apoio tácito por pessoas ilustres, etc., eu ainda o apresentaria como um exemplo prima facie de ajuste excessivo.

Um sinal revelador é a implausibilidade dos cúbicos. A instalação de um cúbico implica implicitamente que há alguma razão pela qual a expectativa de vida varia como um polinômio de terceiro grau da latitude em que você mora. Isso parece bastante implausível: não é fácil imaginar um mecanismo físico plausível que cause esse efeito.

Veja também a seguinte postagem no blog para uma análise mais detalhada deste artigo: Evidências sobre o impacto do uso sustentado da regressão polinomial na inferência causal (uma alegação de que o aquecimento do carvão está reduzindo a vida útil em 5 anos para meio bilhão de pessoas) .


5
+1 Andrew Gelman até escreveu uma ou duas postagens no blog sobre por que é implausível. Aqui está um: andrewgelman.com/2013/08/05/…
Sycorax

@ user777 O blog Gelman é provavelmente o que eu ouvi sobre isso pela primeira vez. Mas achei mais apropriado fornecer a referência, acrescentar alguns detalhes aos meus comentários pessoais e deixar que as pessoas julgassem por si mesmas.
Nick Cox

1
Cortei uma edição do @DW que introduziu comentários sobre a expectativa de vida em diferentes países, o que não é exatamente o que o jornal trata.
Nick Cox

2
Outro exemplo que acho ilustrativo (embora potencialmente mais inventivo do que o "mundo real") são as competições de previsão que realizam resultados intermediários - como o kaggle. Normalmente, existem pessoas que otimizam os resultados para a tabela de classificação, mas não são os vencedores da amostra de espera. Rob Hyndman tem alguma discussão sobre isso. Isso leva uma perspectiva um pouco mais profunda do que eu acho que o OP quer aqui.
Andy W

2
Eu estava prestes a publicar o papel Gelman & Imbens que saiu disso: nber.org/papers/w20405 (fechado, infelizmente)
shadowtalker

38

Em um artigo de 14 de março de 2014 na Science , David Lazer, Ryan Kennedy, Gary King e Alessandro Vespignani identificaram problemas no Google Tendências da Gripe que eles atribuem ao sobreajuste.

Figura

Aqui está como eles contam a história, incluindo a explicação da natureza do ajuste excessivo e por que causou a falha do algoritmo:

Em fevereiro de 2013, ... A Nature informou que a TFG previa mais que o dobro da proporção de consultas médicas por doenças semelhantes à influenza (ILI) do que os Centros de Controle e Prevenção de Doenças (CDC) ... Isso aconteceu apesar do fato de a GFT ter sido construída para prever relatórios do CDC. ...

Essencialmente, a metodologia foi encontrar as melhores correspondências entre 50 milhões de termos de pesquisa para ajustar 1152 pontos de dados. As chances de encontrar termos de pesquisa que correspondam à propensão da gripe, mas não são estruturalmente relacionadas e, portanto, não prevêem o futuro, eram bastante altas. Os desenvolvedores de GFT, de fato, relatam eliminar termos de pesquisa sazonais não relacionados à gripe, mas fortemente correlacionados com os dados do CDC, como os referentes ao basquete do ensino médio. Isso deveria ter sido um aviso de que o big data estava superando o pequeno número de casos - uma preocupação padrão na análise de dados. Esse método ad hoc de descartar termos de pesquisa peculiares falhou quando a GFT perdeu completamente a pandemia não sazonal de influenza A – H1N1 de 2009.

[Enfase adicionada.]


3
Infelizmente, este exemplo tem alguns problemas. O artigo sugere duas razões bastante diferentes pelas quais a GFT estava fazendo previsões ruins: adaptação excessiva e alterações no mecanismo de pesquisa. Os autores admitem que não estão em posição de determinar qual razão (se houver) está correta, portanto é essencialmente especulação. Além disso, o parágrafo sobre ajuste excessivo refere-se à versão original do sistema, enquanto as previsões no gráfico foram feitas com um sistema modificado.
Tom Minka 12/12

1
@ Tom O artigo não está escrito como se a alegação de sobreajuste fosse especulação: os autores afirmam isso sem rodeios. Eu acho que é uma afirmação razoável. Eles também abordam o motivo pelo qual precisam ser um tanto especulativos: o Google não era aberto ou transparente sobre o algoritmo. Parece-me irrelevante para o presente objetivo se o ajuste excessivo ocorreu apenas em uma versão ou em várias, mas, pelo que me lembro, os autores também abordam isso e apontam evidências de ajuste contínuo no algoritmo atual.
whuber

2
O artigo diz apenas que o excesso de ajustes é uma preocupação padrão na análise de dados. Não alega que o excesso de ajuste foi o motivo. A referência (2) entra em mais detalhes, mas novamente diz que o ajuste excessivo é apenas um "problema possível", com a declaração "Como o algoritmo de pesquisa e os termos de consulta resultantes que foram usados ​​para definir os modelos GFT originais e atualizados permanecem não revelados, é difícil identificar as razões para o desempenho abaixo do ideal do sistema e fazer recomendações para melhorias. "
Tom Minka

@ Tom sustentarei a citação aqui apresentada, que é precisa, como suporte adequado para o motivo pelo qual o modelo da gripe do Google é digno de consideração no contexto atual.
whuber

Discussão interessante. Acrescentarei apenas que o gráfico pode suportar melhor o argumento se as linhas forem rotuladas.
Rolando2

32

Vi essa imagem há algumas semanas e achei que era bastante relevante para a questão em questão.

imagem meme

Em vez de ajustar linearmente a sequência, ela foi ajustada com um polinômio quártico, que tinha um ajuste perfeito, mas resultou em uma resposta claramente ridícula.


12
Isso não responde à pergunta conforme solicitado e pode ser melhor como um comentário ou não ser publicado. Isso não fornece um exemplo real de sobreajuste (que é o que a pergunta fazia). Também não explica como a imagem de exemplo é relevante para o ajuste excessivo. Finalmente, é muito curto. Preferimos respostas completas e detalhadas que respondam à pergunta que foi feita - não apenas à discussão relacionada à pergunta.
DW

9
Na verdade, este é exatamente um caso de sobreajuste devido ao modelo muito complexo, pois é possível construir uma infinidade de funções de ordem superior (não linear) para gerar um número infinito de últimos termos diferentes da sequência enquanto ainda ajusta o outros termos (conhecidos), usando uma interpolação de Lagrange, conforme explicado aqui .
gaborous

@ user1121352 No desenho animado, o polinômio de alta ordem é o verdadeiro modelo, portanto não se trata de um ajuste excessivo. Uma resposta como "9" (o próximo número ímpar) ou "11" (o próximo primo ímpar) seria realmente sob -fitting porque ele usa um modelo demasiado simples para prever o próximo valor. O desenho ilustra o caso oposto, de que um modelo mais complexo poderia ser verdadeiro.
Sycorax

8
O polinômio quártico (como interpretado por mim) pretende ser uma solução ridícula, já que a resposta óbvia que alguém dará antes de ver a solução ridícula seria 9 (ou qualquer outro valor OEIS). Eu assumi que o formato "doge" transmitia o sarcasmo, mas vemos claramente a Lei de Poe em ação aqui.
March Ho

2
Este é exatamente o ponto que estou tentando enfatizar, que é que não sabemos qual é a verdadeira função. Se você está conduzindo uma análise original, não possui um recurso como o OEIS para apelar à verdade: é isso que seu modelo está tentando estabelecer. Eu aprecio que o desenho animado esteja tentando sarcasmo, mas a colocação do desenho animado nessa discussão em particular expõe uma sutileza importante à pergunta sobre adaptação excessiva e modelagem estatística em geral. A intenção do criador original é irrelevante porque você a recontextualizou aqui!
Sycorax

22

Para mim, o melhor exemplo é o sistema ptolemaico em astronomia. Ptolomeu assumiu que a Terra está no centro do universo e criou um sistema sofisticado de órbitas circulares aninhadas, o que explicaria muito bem os movimentos de objetos no céu. Os astrônomos tiveram que continuar adicionando círculos para explicar o desvio, até que um dia ficou tão complicado que as pessoas começaram a duvidar. Foi quando Copernicus apresentou um modelo mais realista.

Este é o melhor exemplo de sobreajuste para mim. Você não pode ajustar o processo de geração de dados (DGP) aos dados. Você pode ajustar demais o modelo mal especificado. Quase todos os nossos modelos em ciências sociais são mal especificados, portanto a chave é lembrar disso e mantê-los parcimoniosos. Não tente capturar todos os aspectos do conjunto de dados, mas tente capturar os recursos essenciais através da simplificação.


15
Isso não parece ser um exemplo de ajuste excessivo. Não há nada de errado com o sistema ptolemaico como modelo preditivo: ele é complicado apenas porque o sistema de coordenadas é geocêntrico e não originário do centro de massa galáctico. O problema, portanto, é que um ajuste preciso e legítimo foi feito com um modelo excessivamente complicado. (As elipses são muito mais simples que os epiciclos.) É um verdadeiro desafio encontrar modelos não-lineares parcimoniosos!
whuber

1
Você terminará com muitos círculos para modelar as órbitas das luas de Júpiter no sistema ptolomaico.
Aksakal

17
Isso mesmo - mas, aparentemente, isso não é necessariamente um super ajuste. O teste ácido está nas previsões de valores futuros, que nesse sistema funcionaram bem o suficiente para permanecer por 1.400 anos. Os dados são super adaptados não quando o modelo é muito complicado, mas quando é tão flexível que, ao capturar detalhes estranhos, produz previsões muito mais imprecisas do que seria esperado de uma análise dos resíduos do modelo em seus dados de treinamento.
whuber

2
Aksakal: Você certamente pode. Considere o exemplo de @ arnaud e suponha que o processo de geração de dados fosse . O aprendizado que o levaria a ajustar esse modelo a esses dez pontos de dados na expectativa de melhores previsões para novos dados do que o modelo linear simples? EY=k=09βkxi
Scortchi

2
@Aksakal: 10 parâmetros: (digitado corretamente agora!). É claro que o erro não pode ser estimado ou suponha que ele seja conhecido. Se está incomodando, considere um polinômio de oitava ordem em ; o ponto é o mesmo. xEY=k=09βkxkx
Scortchi

22

Digamos que você tenha 100 pontos em um gráfico.

Você poderia dizer: hmm, eu quero prever o próximo.

  • com uma linha
  • com um polinômio de segunda ordem
  • com um polinômio de 3ª ordem
  • ...
  • com um polinômio de 100ª ordem

Aqui você pode ver uma ilustração simplificada para este exemplo: insira a descrição da imagem aqui

Quanto maior a ordem polinomial, melhor será o ajuste dos pontos existentes.

No entanto, os polinômios de alta ordem, apesar de parecerem melhores modelos para os pontos, estão na verdade os superando. Ele modela o ruído e não a verdadeira distribuição de dados.

Como conseqüência, se você adicionar um novo ponto ao gráfico com sua curva perfeitamente ajustada, provavelmente estará mais distante da curva do que se você usasse um polinômio de ordem mais simples e mais simples.


"Como conseqüência, se você adicionar um novo ponto ao gráfico com sua curva perfeitamente ajustada, provavelmente estará mais distante da curva do que se você usasse um polinômio mais simples de ordem baixa" - além disso, isso ainda é verdade mesmo se o O processo de geração de dados para o novo ponto (ou seja, o relacionamento na população) era na verdade um polinômio de alta potência como o que você (super) montou.
quer

19
As imagens aqui estão realmente incorretas - por exemplo, o polinômio de 9 graus só foi plotado como uma função linear por partes, mas eu suspeito que, na realidade, ele deve balançar descontroladamente para cima e para baixo nos intervalos entre os pontos. Você também verá esse efeito no polinômio de 5 graus.
Ken Williams

17

A análise que pode ter contribuído para o desastre de Fukushima é um exemplo de ajuste excessivo. Existe uma relação bem conhecida na Ciência da Terra que descreve a probabilidade de terremotos de um certo tamanho, dada a frequência observada de terremotos "menores". Isso é conhecido como o relacionamento Gutenberg-Richter e fornece um ajuste de log linear por muitas décadas. A análise do risco de terremoto nas proximidades do reator (este diagrama do excelente livro de Nate Silver "The Signal and the Noise") mostra uma "torção" nos dados. Ignorar a torção leva a uma estimativa do risco anualizado de um terremoto de magnitude 9 como cerca de 1 em 300 - definitivamente algo para se preparar. Contudo, o ajuste excessivo de uma linha de dupla inclinação (como aparentemente foi feito durante a avaliação de risco inicial para os reatores) reduz a previsão de risco para cerca de 1 em 13.000 anos. Não se poderia culpar os engenheiros por não projetarem os reatores para resistir a um evento tão improvável - mas definitivamente se deve culpar os estatísticos que superestimularam (e depois extrapolaram) os dados ...

insira a descrição da imagem aqui


É conclusivo que o modelo de dupla inclinação estava super ajustado? A torção é proeminente; Eu acho que se cada segmento de linha fosse estimado em, digamos, 3 pontos cada, você obteria melhores previsões no período de espera do que estimando uma única linha. (É claro que a observação subsequente de um evento "1 em 13.000 anos" argumenta contra isso! Mas isso é difícil de interpretar, pois não reexaminaríamos esse modelo se isso não tivesse acontecido.) Se houvesse razões físicas para ignorar a percepção de que o excesso de ajuste é mais forte - não sei até que ponto esses dados geralmente correspondem ao relacionamento ideal entre Gutenberg e Richter.
Silverfish

Isso muito ilustrar graficamente os perigos da extrapolação, e a necessidade de uma função perda que leva em conta a gravidade das consequências de um erro ...
Silverfish

3
O problema é que realmente poucos dados são usados ​​para alguns dos últimos pontos - para que eles tenham muita incerteza. Observando atentamente os dados, você pode ver que houve um único evento 7.9, depois vários 7.7s. Pouco se sabe sobre terremotos maiores que 8,0, pois eles não são frequentes - mas quando você observa um terremoto de 9,0 (o terremoto de Tohoku que causou o tsunami), você pode tirar sua própria conclusão. A linha reta pode ser conservadora - mas quando se trata de segurança nuclear, o conservador é bom.
Floris

1
@Floris Bom ponto. Teria sido melhor se eles tivessem usado um gráfico de caixa que mostrasse não apenas as frequências observadas, mas também intervalos de confiança para essas frequências. Provavelmente, seria possível obter caixas muito estreitas à esquerda no diagrama e caixas muito largas à direita. (Tais intervalos de confiança podem ser calculados assumindo que cada frequência segue uma distribuição de Poisson.)
user763305

3
@ user763305 - sim, tenho certeza de que adicionar intervalos de confiança mostraria que uma linha reta não é inconsistente com os dados (ou seja, que você não pode rejeitar a hipótese nula de que os dados seguem uma linha reta).
Floris

15

"Agh! Pat está saindo da empresa. Como vamos encontrar um substituto?"

Anúncio de emprego:

Procura-se: Engenheiro Eletricista. Pessoa andrógina de 42 anos, formada em Engenharia Elétrica, matemática e pecuária. Deve ter 68 cm de altura, com cabelos castanhos, uma toupeira sobre o olho esquerdo e propenso a diatribes prolongadas contra gansos e uso indevido da palavra "conselho".

Em um sentido matemático, o ajuste excessivo geralmente se refere à criação de um modelo com mais parâmetros do que o necessário, resultando em um melhor ajuste para um conjunto de dados específico, mas sem capturar detalhes relevantes necessários para ajustar outros conjuntos de dados da classe de interesse.

No exemplo acima, o pôster não consegue diferenciar as características relevantes das irrelevantes. É provável que as qualificações resultantes sejam atendidas apenas pela pessoa que eles já sabem que é adequada para o trabalho (mas não o deseja mais).


8
Embora divertida, essa resposta não fornece informações sobre o significado de sobreajuste no sentido estatístico. Talvez você possa expandir sua resposta para esclarecer a relação entre esses atributos muito particulares e a modelagem estatística.
precisa

Marcar com +1. Eu concordo com @ user777 apenas em pequena medida. Talvez uma frase traga o exemplo conciso para casa. Mas adicionar muito vai tirar a simplicidade.
Ndogan 11/12

Eu acho que essa é uma ótima resposta - ela exibe o tipo muito comum de adaptação excessiva que memoriza os dados de treinamento, especialmente o caso comum em que a quantidade de dados de treinamento é insuficiente para saturar o poder expressivo do modelo.
Ken Williams

14

Este é inventado, mas espero que ilustre o caso.

Exemplo 1

Primeiro, vamos criar alguns dados aleatórios. Aqui você tem variáveis, cada uma extraída de uma distribuição normal padrão, com casos:k=100n=100

set.seed(123)
k <- 100
data <- replicate(k, rnorm(100))
colnames(data) <- make.names(1:k)
data <- as.data.frame(data)

Agora, vamos ajustar uma regressão linear a ela:

fit <- lm(X1 ~ ., data=data)

E aqui está um resumo dos dez primeiros preditores:

> summary(fit)

Call:
lm(formula = X1 ~ ., data = data)

Residuals:
ALL 100 residuals are 0: no residual degrees of freedom!

Coefficients:
              Estimate Std. Error t value Pr(>|t|)
(Intercept) -1.502e-01         NA      NA       NA
X2           3.153e-02         NA      NA       NA
X3          -6.200e-01         NA      NA       NA
X4           7.087e-01         NA      NA       NA
X5           4.392e-01         NA      NA       NA
X6           2.979e-01         NA      NA       NA
X7          -9.092e-02         NA      NA       NA
X8          -5.783e-01         NA      NA       NA
X9           5.965e-01         NA      NA       NA
X10         -8.289e-01         NA      NA       NA
...
Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 99 and 0 DF,  p-value: NA

os resultados parecem bem estranhos, mas vamos traçar isso.

insira a descrição da imagem aqui

Isso é ótimo, os valores ajustados se encaixam perfeitamente nos valores . A variação do erro é literalmente zero. Mas, não nos convença, vamos verificar qual é a soma das diferenças absolutas entre e os valores ajustados:X1X1

> sum(abs(data$X1-fitted(fit)))
[1] 0

É zero, então as parcelas não estavam mentindo para nós: o modelo se encaixa perfeitamente. E qual é a precisão na classificação?

> sum(data$X1==fitted(fit))
[1] 100

Obtemos 100 dos 100 valores ajustados que são idênticos a . E conseguimos isso com números totalmente aleatórios ajustados a outros números totalmente aleatórios.X1

Exemplo 2

Mais um exemplo. Vamos criar mais alguns dados:

data2 <- cbind(1:10, diag(10))
colnames(data2) <- make.names(1:11)
data2 <- as.data.frame(data2)

então fica assim:

   X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11
1   1  1  0  0  0  0  0  0  0   0   0
2   2  0  1  0  0  0  0  0  0   0   0
3   3  0  0  1  0  0  0  0  0   0   0
4   4  0  0  0  1  0  0  0  0   0   0
5   5  0  0  0  0  1  0  0  0   0   0
6   6  0  0  0  0  0  1  0  0   0   0
7   7  0  0  0  0  0  0  1  0   0   0
8   8  0  0  0  0  0  0  0  1   0   0
9   9  0  0  0  0  0  0  0  0   1   0
10 10  0  0  0  0  0  0  0  0   0   1

e agora vamos ajustar uma regressão linear a isso:

fit2 <- lm(X1~., data2)

então temos as seguintes estimativas:

> summary(fit2)

Call:
lm(formula = X1 ~ ., data = data2)

Residuals:
ALL 10 residuals are 0: no residual degrees of freedom!

Coefficients: (1 not defined because of singularities)
            Estimate Std. Error t value Pr(>|t|)
(Intercept)       10         NA      NA       NA
X2                -9         NA      NA       NA
X3                -8         NA      NA       NA
X4                -7         NA      NA       NA
X5                -6         NA      NA       NA
X6                -5         NA      NA       NA
X7                -4         NA      NA       NA
X8                -3         NA      NA       NA
X9                -2         NA      NA       NA
X10               -1         NA      NA       NA
X11               NA         NA      NA       NA

Residual standard error: NaN on 0 degrees of freedom
Multiple R-squared:      1, Adjusted R-squared:    NaN 
F-statistic:   NaN on 9 and 0 DF,  p-value: NA

como você pode ver, temos , ou seja, "100% de variação explicada". A regressão linear nem precisou usar o 10º preditor. A partir dessa regressão, vemos que pode ser previsto usando a função:R2=1X1

X1=10+X2×9+X3×8+X4×7+X5×6+X6×5+X7×4+X8×3+X9×2

então é:X1=1

10+1×9+0×8+0×7+0×6+0×5+0×4+0×3+0×2

É bastante auto-explicativo. Você pode pensar no Exemplo 1 como semelhante ao Exemplo 2, mas com algum "ruído" adicionado. Se você possui dados grandes o suficiente e os utiliza para "prever" algo, às vezes um único "recurso" pode convencê-lo de que você tem um "padrão" que descreve bem sua variável dependente, embora possa ser apenas uma coincidência. No Exemplo 2, nada é realmente previsto, mas exatamente o mesmo aconteceu no Exemplo 1, apenas os valores das variáveis ​​foram diferentes.

Exemplos da vida real

O exemplo real disso é prever ataques terroristas em 11 de setembro de 2001, observando "padrões" em números sorteados aleatoriamente por geradores de números pseudoaleatórios por computador pelo Global Consciousness Project ou "mensagens secretas" em "Moby Dick" que revelam fatos sobre assassinatos de pessoas famosas (inspirado por achados semelhantes na Bíblia ).

Conclusão

Se você se esforçar bastante, encontrará "padrões" para qualquer coisa. No entanto, esses padrões não permitem que você aprenda nada sobre o universo e não ajudam a chegar a conclusões gerais. Eles se encaixam perfeitamente aos seus dados, mas seriam inúteis, pois não se encaixam em nada além dos dados em si. Eles não permitem que você faça previsões razoáveis ​​fora da amostra, porque o que eles fariam é que eles preferem imitar a descrever os dados.


5
Eu sugiro colocar os exemplos da vida real no topo desta resposta. Essa é a parte que é realmente relevante para a questão - o resto é molho.
shadowtalker

8

Um problema comum que resulta em super adaptação na vida real é que, além dos termos para um modelo especificado corretamente, podemos ter acrescentado algo estranho: poderes irrelevantes (ou outras transformações) dos termos corretos, variáveis ​​irrelevantes ou interações irrelevantes.

Isso acontece na regressão múltipla se você adicionar uma variável que não deve aparecer no modelo especificado corretamente, mas não deseja descartá-la porque tem medo de induzir o viés de variável omitida . Obviamente, você não tem como saber que a incluiu de maneira errada, pois não pode ver toda a população, apenas sua amostra, portanto não pode ter certeza de qual é a especificação correta. (Como o @Scortchi aponta nos comentários, pode não haver uma especificação de modelo "correta" - nesse sentido, o objetivo da modelagem é encontrar uma especificação "suficientemente boa"; para evitar ajustes excessivos, é necessário evitar a complexidade do modelo. maior do que pode ser sustentado a partir dos dados disponíveis.) Se você quiser um exemplo real de sobreajuste, isso acontece semprevocê joga todos os preditores em potencial em um modelo de regressão, se algum deles, de fato, não tiver relação com a resposta, uma vez que os efeitos de outros sejam eliminados.

Com esse tipo de sobreajuste, a boa notícia é que a inclusão desses termos irrelevantes não apresenta viés para seus estimadores e, em amostras muito grandes, os coeficientes dos termos irrelevantes devem ser próximos de zero. Mas também há más notícias: como as informações limitadas de sua amostra agora estão sendo usadas para estimar mais parâmetros, elas só podem ser feitas com menos precisão - aumentando os erros padrão nos termos genuinamente relevantes. Isso também significa que eles provavelmente estarão mais longe dos valores verdadeiros do que as estimativas de uma regressão especificada corretamente, o que, por sua vez, significa que, se dados novos valores de suas variáveis ​​explicativas, as previsões do modelo com excesso de ajustes tenderão a ser menos precisas do que para o modelo especificado corretamente.

Aqui está um gráfico do PIB logarítmico em relação à população logarítmica de 50 estados dos EUA em 2010. Uma amostra aleatória de 10 estados foi selecionada (destacada em vermelho) e, para essa amostra, ajustamos um modelo linear simples e um polinômio de grau 5. Para a amostra pontos, o polinômio possui graus extras de liberdade que permitem "contornar" os dados observados mais próximos do que a linha reta. Mas os 50 estados como um todo obedecem a uma relação quase linear, portanto, o desempenho preditivo do modelo polinomial nos 40 pontos fora da amostra é muito ruim se comparado ao modelo menos complexo, principalmente ao extrapolar. O polinômio estava efetivamente ajustando parte da estrutura aleatória (ruído) da amostra, que não se generalizou para a população em geral. Foi particularmente pobre em extrapolar além do intervalo observado da amostra.esta revisão desta resposta.)

Extrapolação de modelo excessivamente complexo

Problemas semelhantes afetam a regressão em relação a múltiplos preditores. Para observar alguns dados reais, é mais fácil com a simulação do que com amostras do mundo real, pois dessa forma você controla o processo de geração de dados (efetivamente, você vê a "população" e o verdadeiro relacionamento). Nesse Rcódigo, o modelo verdadeiro é mas também são fornecidos dados sobre variáveis ​​irrelevantes eyi=2x1,i+5+ϵix2x3. Eu projetei a simulação para que as variáveis ​​preditoras sejam correlacionadas, o que seria uma ocorrência comum em dados da vida real. Ajustamos os modelos corretamente especificados e com excesso de ajustes (inclui os preditores irrelevantes e suas interações) em uma parte dos dados gerados e, em seguida, comparamos o desempenho preditivo em um conjunto de validação. A multicolinearidade dos preditores torna a vida ainda mais difícil para o modelo com excesso de ajuste, pois fica mais difícil separar os efeitos de , e , mas observe que isso não influencia nenhum dos estimadores de coeficiente.x1x2x3

require(MASS) #for multivariate normal simulation    
nsample <- 25   #sample to regress 
nholdout <- 1e6  #to check model predictions
Sigma <- matrix(c(1, 0.5, 0.4, 0.5, 1, 0.3, 0.4, 0.3, 1), nrow=3)
df <- as.data.frame(mvrnorm(n=(nsample+nholdout), mu=c(5,5,5), Sigma=Sigma))
colnames(df) <- c("x1", "x2", "x3")
df$y <- 5 + 2 * df$x1 + rnorm(n=nrow(df)) #y = 5 + *x1 + e

holdout.df <- df[1:nholdout,]
regress.df <- df[(nholdout+1):(nholdout+nsample),]

overfit.lm <- lm(y ~ x1*x2*x3, regress.df)
correctspec.lm <- lm(y ~ x1, regress.df)
summary(overfit.lm)
summary(correctspec.lm)

holdout.df$overfitPred <- predict.lm(overfit.lm, newdata=holdout.df)
holdout.df$correctSpecPred <- predict.lm(correctspec.lm, newdata=holdout.df)
with(holdout.df, sum((y - overfitPred)^2)) #SSE
with(holdout.df, sum((y - correctSpecPred)^2))

require(ggplot2)
errors.df <- data.frame(
    Model = rep(c("Overfitted", "Correctly specified"), each=nholdout),
    Error = with(holdout.df, c(y - overfitPred, y - correctSpecPred)))
ggplot(errors.df, aes(x=Error, color=Model)) + geom_density(size=1) +
    theme(legend.position="bottom")

Aqui estão meus resultados de uma execução, mas é melhor executar a simulação várias vezes para ver o efeito de diferentes amostras geradas.

>     summary(overfit.lm)

Call:
lm(formula = y ~ x1 * x2 * x3, data = regress.df)

Residuals:
     Min       1Q   Median       3Q      Max 
-2.22294 -0.63142 -0.09491  0.51983  2.24193 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)
(Intercept) 18.85992   65.00775   0.290    0.775
x1          -2.40912   11.90433  -0.202    0.842
x2          -2.13777   12.48892  -0.171    0.866
x3          -1.13941   12.94670  -0.088    0.931
x1:x2        0.78280    2.25867   0.347    0.733
x1:x3        0.53616    2.30834   0.232    0.819
x2:x3        0.08019    2.49028   0.032    0.975
x1:x2:x3    -0.08584    0.43891  -0.196    0.847

Residual standard error: 1.101 on 17 degrees of freedom
Multiple R-squared: 0.8297,     Adjusted R-squared: 0.7596 
F-statistic: 11.84 on 7 and 17 DF,  p-value: 1.942e-05

Essas estimativas de coeficiente para o modelo com excesso de ajustes são terríveis - devem ser cerca de 5 para a interceptação, 2 para e 0 para o restante. Mas os erros padrão também são grandes. Os valores corretos para esses parâmetros estão bem dentro dos intervalos de confiança de 95% em cada caso. O é 0,8297 que sugere um ajuste razoável.R 2x1R2

>     summary(correctspec.lm)

Call:
lm(formula = y ~ x1, data = regress.df)

Residuals:
    Min      1Q  Median      3Q     Max 
-2.4951 -0.4112 -0.2000  0.7876  2.1706 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   4.7844     1.1272   4.244 0.000306 ***
x1            1.9974     0.2108   9.476 2.09e-09 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 1.036 on 23 degrees of freedom
Multiple R-squared: 0.7961,     Adjusted R-squared: 0.7872 
F-statistic:  89.8 on 1 and 23 DF,  p-value: 2.089e-09

As estimativas do coeficiente são muito melhores para o modelo especificado corretamente. Mas observe que o é menor, em 0,7961, pois o modelo menos complexo tem menos flexibilidade para ajustar as respostas observadas. é mais perigoso do que útil neste caso !R 2R2R2

>     with(holdout.df, sum((y - overfitPred)^2)) #SSE
[1] 1271557
>     with(holdout.df, sum((y - correctSpecPred)^2))
[1] 1052217

O mais alto na amostra em que regredimos mostrou como o modelo com excesso de ajuste produziu previsões, , mais próximas do observado do que o modelo especificado corretamente. Mas isso é porque estava adaptando a esses dadosy yR2y^y(e tinha mais graus de liberdade para fazê-lo do que o modelo especificado corretamente, portanto, poderia produzir um ajuste "melhor"). Observe a Soma dos erros quadráticos para as previsões no conjunto de validação, das quais não usamos para estimar os coeficientes de regressão, e podemos ver o quão pior o desempenho do modelo com excesso de ajustes. Na realidade, o modelo corretamente especificado é aquele que faz as melhores previsões. Não devemos basear nossa avaliação do desempenho preditivo nos resultados do conjunto de dados que usamos para estimar os modelos. Aqui está um gráfico de densidade dos erros, com a especificação correta do modelo produzindo mais erros próximos de 0:

Erros de previsão no conjunto de holdout

A simulação representa claramente muitas situações relevantes da vida real (imagine qualquer resposta da vida real que dependa de um único preditor e imagine incluir "preditores" estranhos no modelo), mas tem o benefício de poder jogar com o processo de geração de dados , os tamanhos das amostras, a natureza do modelo com excesso de equipamento e assim por diante. Essa é a melhor maneira de examinar os efeitos do sobreajuste, pois para os dados observados geralmente não há acesso ao DGP, e ainda são dados "reais" no sentido em que você pode examiná-los e usá-los. Aqui estão algumas idéias que vale a pena experimentar:

  • Execute a simulação várias vezes e veja como os resultados diferem. Você encontrará mais variabilidade usando amostras pequenas do que amostras grandes.
  • Tente alterar o tamanho da amostra. Se aumentado para, digamos, n <- 1e6então o modelo com excesso de equipamento eventualmente estima coeficientes razoáveis ​​(cerca de 5 para interceptação, cerca de 2 para , cerca de 0 para todo o resto) e seu desempenho preditivo, medido pelo SSE, não segue o modelo corretamente especificado. . Por outro lado, tente ajustar uma amostra muito pequena (lembre-se de que você precisa deixar graus de liberdade suficientes para estimar todos os coeficientes) e verá que o modelo com excesso de ajuste tem um desempenho terrível, tanto para estimar coeficientes quanto para prever novos dados.x1
  • Tente reduzir a correlação entre as variáveis ​​preditoras jogando com os elementos fora da diagonal da matriz de variância-covariância Sigma. Lembre-se de mantê-lo positivo semi-definido (o que inclui ser simétrico). Você deve descobrir que, se reduzir a multicolinearidade, o modelo com excesso de ajuste não apresenta um desempenho tão ruim. Mas lembre-se de que preditores correlatos ocorrem na vida real.
  • Tente experimentar a especificação do modelo com excesso de ajuste. E se você incluir termos polinomiais?
  • E se você simular dados para uma região diferente de preditores, em vez de ter sua média em torno de 5? Se o processo correto de geração de dados para ainda estiver , veja quão bem os modelos ajustados aos dados originais podem prever isso . Dependendo de como você gera os valores , você pode achar que a extrapolação com o modelo com excesso de ajuste produz previsões muito piores que o modelo especificado corretamente.y x iydf$y <- 5 + 2*df$x1 + rnorm(n=nrow(df))yxi
  • E se você alterar o processo de geração de dados para que agora dependa, fracamente, de , e talvez das interações também? Esse pode ser um cenário mais realista que, dependendo apenas de . Se você usar, por exemplo , e são "quase irrelevantes", mas não completamente. (Observe que eu desenhei todas as variáveis do mesmo intervalo, por isso faz sentido comparar seus coeficientes dessa forma.) Então o modelo simples envolvendo apenas sofre o viés de variável omitido, embora como e não sejam particularmente importantes, isso não é muito grave. Em uma amostra pequena, por exemplox 2 x 3 x 1 x 2 x 3 x x 1 x 2 x 3 x 1 x 2 x 3yx2x3x1df$y <- 5 + 2 * df$x1 + 0.1*df$x2 + 0.1*df$x3 + rnorm(n=nrow(df))x2x3xx1x2x3nsample <- 25, o modelo completo ainda está sobreajustado, apesar de ser uma melhor representação da população subjacente e, em simulações repetidas, seu desempenho preditivo no conjunto de validação ainda é consistentemente pior. Com esses dados limitados, é mais importante obter uma boa estimativa do coeficiente de do que gastar informações com o luxo de estimar os coeficientes menos importantes. Como os efeitos de e são tão difíceis de discernir em uma amostra pequena, o modelo completo está efetivamente usando a flexibilidade de seus graus extras de liberdade para "ajustar o ruído" e isso generaliza mal. Mas comx1x2x3nsample <- 1e6, ele pode estimar os efeitos mais fracos muito bem e simulações mostram que o modelo complexo tem poder preditivo que supera o simples. Isso mostra como o "overfitting" é um problema de complexidade do modelo e dos dados disponíveis.

1
(-1) É bastante importante entender que o ajuste excessivo não resulta apenas da inclusão de termos "irrelevantes" ou "estranhos" que não apareceriam em um modelo especificado corretamente. De fato, pode-se argumentar que em muitas aplicações a idéia de um modelo verdadeiro simples não faz muito sentido e o desafio da modelagem preditiva é construir um modelo cuja complexidade seja proporcional à quantidade de dados disponíveis.
Scortchi

1
Vou enviar sua foto ao meu congressista em apoio à reforma da imigração
protótipo

1
(+1) Acho que as edições melhoram a explicação do ajuste excessivo sem sacrificar a compreensibilidade.
Scortchi

1
@ Aksakal Tentei abordar a questão: "Preciso de ajuda sobre como criar um exemplo do mundo real que se aplique ao excesso de ajuste". Não está claro se foi solicitado ao OP que encontrasse um artigo publicado que se adequasse demais, ou - um significado mais natural de "criar" - para construir seu próprio exemplo. Se o ajuste excessivo é ruim, por que na vida real alguém se ajustaria demais? Minha resposta, que um analista pode preferir errar em um modelo superespecificado versus subespecífico (devido ao medo de OVB ou suspeita de que um relacionamento seja curvilíneo) é um exemplo. O gráfico / simulação mostra simplesmente a consequência: previsão ruim fora da amostra
Silverfish

1
@ Akksakal Não está claro para mim que um modelo polinomial é "irreal" para o gráfico. A característica dominante é linear, mas sabemos que é completamente linear? Se tivéssemos acesso a um milhão de unidades políticas hipotéticas e eu tivesse que arriscar minha vida de qualquer maneira, prefiro apostar que detectaríamos um ligeiro relacionamento curvilíneo do que todos os termos polinomiais seriam insignificantes. Apesar disso, ajustado para baixo n, apenas um modelo linear evita o ajuste excessivo. (Nós não podemos resolver este devido à dificuldade de amostragem da população teoricamente infinita de "possíveis estados dos EUA", o que é uma vantagem de dados simulados!)
Silverfish

4

Quando eu estava tentando entender isso, comecei a pensar em termos de analogias com a descrição de objetos reais, então acho que é o "mundo real" possível, se você quiser entender a ideia geral:

Digamos que você queira descrever para alguém o conceito de cadeira, para que eles obtenham um modelo conceitual que permita prever se um novo objeto encontrado é uma cadeira. Você vai à Ikea, pega uma amostra de cadeiras e começa a descrevê-las usando duas variáveis: é um objeto com quatro pernas onde você pode sentar. Bem, isso também pode descrever um banquinho, uma cama ou muitas outras coisas. Seu modelo é insuficiente, como se você tentasse modelar uma distribuição complexa com poucas variáveis ​​- muitas coisas que não são de cadeira serão identificadas como cadeiras. Então, vamos aumentar o número de variáveis, acrescentar que o objeto precisa ter um back, por exemplo. Agora você tem um modelo bastante aceitável que descreve seu conjunto de cadeiras, mas é geral o suficiente para permitir que um novo objeto seja identificado como um. Seu modelo descreve os dados e é capaz de fazer previsões. No entanto, digamos que você tenha um conjunto em que todas as cadeiras sejam pretas ou brancas e feitas de madeira. Você decide incluir essas variáveis ​​em seu modelo e, de repente, ele não identifica uma cadeira amarela de plástico como uma cadeira. Assim, você ajustou demais o seu modelo, incluiu recursos do seu conjunto de dados como se fossem recursos de cadeiras em geral (se preferir, identificou "ruído" como "sinal", interpretando a variação aleatória da sua amostra como uma característica de todas as "cadeiras do mundo real"). Portanto, você aumenta sua amostra e espera incluir novos materiais e cores ou diminui o número de variáveis ​​em seus modelos. t identifique uma cadeira plástica amarela como cadeira. Assim, você ajustou demais o seu modelo, incluiu recursos do seu conjunto de dados como se fossem recursos de cadeiras em geral (se preferir, identificou "ruído" como "sinal", interpretando a variação aleatória da sua amostra como uma característica de todas as "cadeiras do mundo real"). Portanto, você aumenta sua amostra e espera incluir novos materiais e cores ou diminui o número de variáveis ​​em seus modelos. t identifique uma cadeira plástica amarela como cadeira. Assim, você ajustou demais o seu modelo, incluiu recursos do seu conjunto de dados como se fossem recursos de cadeiras em geral (se preferir, identificou "ruído" como "sinal", interpretando a variação aleatória da sua amostra como uma característica de todas as "cadeiras do mundo real"). Portanto, você aumenta sua amostra e espera incluir novos materiais e cores ou diminui o número de variáveis ​​em seus modelos.

Pode ser uma analogia simplista e uma análise mais aprofundada, mas acho que funciona como uma conceituação geral ... Deixe-me saber se alguma parte precisa de esclarecimentos.


Você poderia explicar com mais detalhes a idéia de "ruído" e "sinal" e o fato de que o modelo sobreaquecido descreve o ruído, pois estou tendo problemas para entender isso.
quirik

4

Na modelagem preditiva, a idéia é usar os dados disponíveis para descobrir as tendências existentes e que podem ser generalizadas para dados futuros. Ao incluir variáveis ​​em seu modelo que tenham algum efeito menor e não significativo, você estará abandonando essa ideia. O que você está fazendo é considerar as tendências específicas em sua amostra específica que só existem por causa de ruído aleatório, em vez de uma tendência subjacente verdadeira. Em outras palavras, um modelo com muitas variáveis ​​se ajusta ao ruído, em vez de descobrir o sinal.

Aqui está uma ilustração exagerada do que estou falando. Aqui os pontos são os dados observados e a linha é o nosso modelo. Veja que um ajuste perfeito - que modelo incrível! Mas nós realmente descobrimos a tendência ou estamos apenas nos adaptando ao barulho? Provavelmente o último.

insira a descrição da imagem aqui


4

Uma forma de sobreajuste é bastante comum nos esportes, ou seja, identificar padrões para explicar resultados passados ​​por fatores que não têm ou, na melhor das hipóteses, um poder vago para prever resultados futuros. Uma característica comum desses "padrões" é que eles geralmente são baseados em poucos casos, de modo que o puro acaso é provavelmente a explicação mais plausível para o padrão.

Os exemplos incluem coisas como (as "aspas" são compostas por mim, mas geralmente são parecidas)

A equipe A venceu todos os jogos X desde que o treinador começou a usar sua jaqueta vermelha mágica.

Semelhante:

Não devemos nos barbear durante os playoffs, porque isso nos ajudou a vencer os últimos X jogos.

Menos supersticioso, mas também uma forma de sobreajuste:

O Borussia Dortmund nunca perdeu um jogo em casa na Liga dos Campeões contra um adversário espanhol quando perdeu o jogo fora da Bundesliga por mais de dois gols, tendo marcado pelo menos uma vez.

Semelhante:

Roger Federer venceu todas as suas aparições na Copa Davis aos adversários europeus quando ele chegou às meias-finais do Aberto da Austrália daquele ano.

Os dois primeiros são absurdos bastante óbvios (pelo menos para mim). Os dois últimos exemplos podem perfeitamente ser verdadeiros na amostra (ou seja, no passado), mas eu ficaria muito feliz em apostar contra um oponente que deixasse essa "informação" afetar substancialmente suas chances de Dortmund vencer o Madri se perdessem 4: 1 no Schalke no sábado anterior ou Federer derrotando Djokovic, mesmo que ele tenha vencido o Aberto da Austrália naquele ano.


3

Aqui está um exemplo do "mundo real", não no sentido em que alguém o encontrou na pesquisa, mas no sentido de que ele usa conceitos cotidianos sem muitos termos específicos de estatística. Talvez essa maneira de dizer seja mais útil para algumas pessoas cujo treinamento é em outros campos.

Imagine que você tenha um banco de dados com dados sobre pacientes com uma doença rara. Você é um estudante de medicina e deseja ver se consegue reconhecer os fatores de risco para esta doença. Houve 8 casos da doença neste hospital, e você registrou 100 informações aleatórias sobre eles: idade, raça, ordem de nascimento, eles tiveram sarampo quando criança, qualquer que seja. Você também registrou os dados de 8 pacientes sem essa doença.

Você decide usar a seguinte heurística para fatores de risco: se um fator assume um determinado valor em mais de um de seus pacientes doentes, mas em 0 de seus controles, você o considera um fator de risco. (Na vida real, você usaria um método melhor, mas eu quero mantê-lo simples). Você descobre que 6 de seus pacientes são vegetarianos (mas nenhum dos controles é vegetariano), 3 têm ancestrais suecos e dois deles têm um distúrbio de fala gaguejante. Dos outros 97 fatores, não há nada que ocorra em mais de um paciente, mas não está presente entre os controles.

Anos depois, alguém mais se interessa por essa doença órfã e replica sua pesquisa. Como ele trabalha em um hospital maior, que possui uma cooperação de compartilhamento de dados com outros hospitais, ele pode usar dados de 106 casos, em oposição aos seus 8 casos. E ele descobre que a prevalência de gagos é a mesma no grupo de pacientes e no grupo de controle; a gagueira não é um fator de risco.

O que aconteceu aqui é que seu pequeno grupo teve 25% de gagos por acaso. Sua heurística não tinha como saber se isso é clinicamente relevante ou não. Você definiu critérios para decidir quando considera um padrão nos dados "interessante" o suficiente para ser incluído no modelo e, de acordo com esses critérios, a gagueira era interessante o suficiente.

Seu modelo foi super ajustado, porque incluiu por engano um parâmetro que não é realmente relevante no mundo real. Ele se encaixa bem na sua amostra - os 8 pacientes + 8 controles - muito bem, mas não se encaixa nos dados do mundo real. Quando um modelo descreve sua amostra melhor do que descreve a realidade, é chamado de sobreajustado.

Se você tivesse escolhido um limiar de 3 em 8 pacientes com um recurso, isso não teria acontecido - mas você teria uma chance maior de perder algo realmente interessante. Especialmente na medicina, onde muitas doenças acontecem apenas em uma pequena fração das pessoas que exibem fator de risco, é difícil fazer isso. E existem métodos para evitá-lo (basicamente, compare com uma segunda amostra e veja se o poder explicativo permanece o mesmo ou cai), mas esse é um tópico para outra pergunta.


Muito reminiscente de xkcd.com/882
Floris

3

Aqui está um exemplo real de sobreajuste que ajudei a perpetrar e depois tentei (sem sucesso) evitar:

Eu tinha vários milhares de séries temporais independentes e bivariadas, cada uma com no máximo 50 pontos de dados, e o projeto de modelagem envolveu a adaptação de uma auto-regressão vetorial (VAR) a cada uma. Nenhuma tentativa foi feita para regularizar as observações, estimar os componentes de variação ou algo assim. Os pontos temporais foram medidos ao longo de um único ano, de modo que os dados estavam sujeitos a todos os tipos de efeitos sazonais e cíclicos que apareceram apenas uma vez em cada série temporal.

Um subconjunto dos dados exibiu uma taxa implausivelmente alta de causalidade de Granger em comparação com o restante dos dados. As verificações pontuais revelaram que os picos positivos estavam ocorrendo um ou dois atrasos nesse subconjunto, mas ficou claro a partir do contexto que ambos os picos foram causados ​​diretamente por uma fonte externa e que um pico não estava causando o outro. As previsões fora da amostra usando esses modelos provavelmente estariam erradas, porque os modelos foram superalimentados: em vez de "suavizar" os picos calculando a média deles no restante dos dados, havia poucas observações suficientes de que os picos estavam realmente dirigindo as estimativas.

No geral, não acho que o projeto tenha sido mal, mas acho que não produziu resultados que foram tão úteis quanto poderiam ter sido. Parte da razão disso é que o procedimento de VARs independentes, mesmo com apenas um ou dois atrasos, estava tendo dificuldade em distinguir dados e ruído, e assim se adequava a eles à custa de fornecer informações sobre o antigo.


1

Muitas pessoas inteligentes neste segmento - muitas muito mais versadas em estatística do que eu. Mas ainda não vejo um exemplo fácil de entender para o leigo. O exemplo presidencial não chega a ser bem aceito em termos de adaptação excessiva típica, porque, embora tecnicamente seja adequado a cada uma de suas reivindicações malucas, geralmente um modelo de adaptação excessiva se adapta - TODO - ao ruído fornecido, não apenas a um elemento dele.

Eu realmente gosto do gráfico na explicação da troca de viés e variação na wikipedia: http://en.wikipedia.org/wiki/Bias%E2%80%93variance_tradeoff

(O gráfico mais baixo é o exemplo de sobreajuste).

Estou com dificuldade para pensar em um exemplo do mundo real que não soa como mumbo-jumbo completo. A idéia é que os dados sejam em parte causados ​​por variáveis ​​mensuráveis ​​e compreensíveis - parte do ruído aleatório. Tentar modelar esse ruído como um padrão fornece imprecisão.

Um exemplo clássico é a modelagem baseada exclusivamente em R ^ 2 no MS Excel (você está tentando ajustar uma equação / modelo literalmente o mais próximo possível dos dados usando polinômios, por mais absurdo que seja).

Digamos que você esteja tentando modelar as vendas de sorvetes em função da temperatura. Você tem dados do "mundo real". Você plota os dados e tenta maximizar R ^ 2. Você verá que, usando dados do mundo real, a equação de ajuste mais próxima não é linear ou quadrática (o que faria sentido lógico). Como quase todas as equações, os termos polinomiais mais absurdos que você adiciona (x ^ 6 -2x ^ 5 + 3x ^ 4 + 30x ^ 3-43,2x ^ 2-29x) - mais próximos se ajustam aos dados. Então, como isso relaciona sensivelmente a temperatura às vendas de sorvete? Como você explicaria esse polinômio ridículo? A verdade é que não é o verdadeiro modelo. Você superestima os dados.

Você está levando em consideração o ruído - que pode ter sido devido a promoções de vendas ou alguma outra variável ou "ruído" como uma borboleta batendo as asas no cosmos (algo nunca previsível) - e tentou modelar isso com base na temperatura. Agora, normalmente, se o seu ruído / erro não atingir a média de zero ou se correlacionar automaticamente, etc, significa que existem mais variáveis ​​por aí --- e, eventualmente, você obtém um ruído geralmente distribuído aleatoriamente, mas ainda assim, é o melhor que posso explique.


2
Os 'modelos' posteriores no comic presidencial não caber todo o barulho dado.
Ben Voigt

A história em quadrinhos não é análoga à maioria dos cenários de sobreajuste na minha opinião, mesmo que as regras ridículas prevejam com precisão todos os presidentes anteriores. A maioria das previsões não está prevendo uma variável dicotômica. Também menciona com humor a própria regra que será quebrada na próxima eleição - em outras palavras, o modelo de excesso de ajuste é garantido errado o tempo todo, tornando-o um preditor perfeito do futuro. A maioria dos modelos de excesso de ajuste não se baseia em uma variável incorreta que pode ser testada por ser estranha - geralmente é baseada em muitas variáveis ​​no modelo, todas usadas aleatoriamente para reduzir R ^ 2.
precisa

0

A maioria dos métodos de otimização possui alguns fatores de correção, também conhecidos como hiperparâmetros. Um exemplo real:

Nmin=5,  finc=1.1,  fdec=0.5,  αstart=0.1,  fα=0.99.

Isso é excessivo ou apenas adequado a um conjunto específico de problemas?


0

Estudar para um exame memorizando as respostas para o exame do ano passado.


0

Minha favorita é a "fórmula 3964" descoberta antes da competição de futebol da Copa do Mundo em 1998:

O Brasil venceu o campeonato em 1970 e 1994. Resuma esses 2 números e você terá 3964; A Alemanha venceu em 1974 e 1990, somando novamente 3964; o mesmo aconteceu com a Argentina vencendo em 1978 e 1986 (1978 + 1986 = 3964).

Esse é um fato muito surpreendente, mas todos podem ver que não é aconselhável basear qualquer previsão futura nessa regra. E, de fato, a regra determina que o vencedor da Copa do Mundo em 1998 deveria ter sido a Inglaterra desde 1966 + 1998 = 3964 e a Inglaterra venceu em 1966. Isso não aconteceu e o vencedor foi a França.


-2

Um pouco intuitivo, mas talvez ajude. Digamos que você queira aprender um novo idioma. Como você aprende? em vez de aprender as regras de um curso, você usa exemplos. Especificamente, programas de TV. Você gosta de programas de crimes e assiste a algumas séries de programas de policiais. Então, você faz outro programa de crimes e assiste a algumas séries desse tipo. No terceiro show, você vê - você sabe quase tudo, sem problemas. Você não precisa das legendas em inglês.

Mas então você experimenta o seu idioma recém-aprendido na rua na sua próxima visita e percebe que não pode falar de outra coisa senão dizer "oficial! Aquele homem pegou minha bolsa e atirou nessa senhora!". Enquanto o seu 'erro de treinamento' era zero, o seu 'erro de teste' é alto, devido ao 'ajuste excessivo' do idioma, estudando apenas um subconjunto limitado de palavras e assumindo o suficiente.


8
Isso não é exagero, é apenas aprender um subconjunto de idiomas. O excesso de ajuste seria se depois de assistir ao crime mostrar que você aprende um idioma inteiro, mas estranho, que coincide com o inglês em todos os tópicos relacionados ao crime, mas é totalmente sem sentido (ou talvez chinês) quando você fala sobre qualquer outro tópico.
Ameba
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.