Como comparar a precisão de dois modelos diferentes usando significância estatística


10

Estou trabalhando na previsão de séries temporais. I tem dois conjuntos de dados D1={x1,x2,....xn} e D2={xn+1,xn+2,xn+3,....,xn+k} . Eu tenho três modelos de previsão: M1,M2,M3 . Todos aqueles modelo são treinados utilizando amostras no conjunto de dadosD1 , e o seu desempenho é medida utilizando as amostras em conjunto de dadosD2 . Digamos que as métricas de desempenho sejam MSE (ou qualquer outra coisa). O MSE desses modelos quando medidos para o conjunto de dadosD2 sãoMSE1,MSE2, eMSE3 . Como posso testar se a melhoria de um modelo em relação a outro é estatisticamente significativa.

Por exemplo, digamos MSE1=200 , MSE2=205 , MSE3=210 e o número total de amostras no conjunto de dados D2 base no qual esses MSE são calculados é 2000. Como posso testar que MSE1 , MSE2 e MSE3 são significativamente diferentes. Eu apreciaria muito se alguém puder me ajudar nesse problema.

Respostas:


1

Uma das postagens vinculadas acima alude ao uso de um teste de razão de verossimilhança, embora seus modelos precisem ser aninhados um para o outro para que funcione (ou seja, todos os parâmetros em um dos modelos devem estar presentes no modelo em que você está testando) .

O RMSE é claramente uma medida de quão bem o modelo se ajusta aos dados. No entanto, o mesmo acontece com a razão de verossimilhança. A probabilidade de uma determinada pessoa, diz a Sra. Chen, é a probabilidade de uma pessoa com todos os seus parâmetros ter o resultado que obteve. A probabilidade conjunta do conjunto de dados é a probabilidade da Sra. Chen * A probabilidade da Sra. Gundersen * A probabilidade da Sra. Johnson * ... etc.

Adicionar uma covariável, ou qualquer número de covariáveis, não pode realmente piorar a taxa de probabilidade, não acho. Mas pode melhorar a taxa de probabilidade em uma quantidade não significativa. Modelos que se encaixam melhor terão uma probabilidade maior. Você pode testar formalmente se o modelo A se encaixa melhor no modelo B. Você deve ter algum tipo de função de teste LR disponível em qualquer software que use, mas basicamente, a estatística do teste LR é -2 * a diferença dos logs das probabilidades, e é distribuído qui-quadrado com df = a diferença no número de parâmetros.

Além disso, comparar o AIC ou BIC dos dois modelos e encontrar o mais baixo também é aceitável. AIC e BIC são basicamente as probabilidades de log penalizadas pelo número de parâmetros.

Não tenho certeza sobre o uso de um teste t para os RMSEs, e na verdade eu me apoiaria a menos que você possa encontrar algum trabalho teórico que tenha sido feito na área. Basicamente, você sabe como os valores do RMSE são distribuídos assintoticamente? Não tenho certeza. Algumas discussões adicionais aqui:

http://www.stata.com/statalist/archive/2012-11/index.html#01017


0

Essa resposta não leva em consideração o fato de que seus dados formam uma série temporal, mas não acho que isso seja um problema.

Ao usar o RMSE, este post sugere o uso do teste t: Testando a significância do RMSE dos modelos

Você também pode usar a correlação de Pearson para avaliar seu ajuste. De acordo com este post, você pode usar o teste t de Wolfe para isso: Significância estatística do aumento da correlação

Atualmente, estou tentando aprender sobre o mesmo problema. Eu gostaria de receber respostas mais detalhadas.


0

Existem duas maneiras principais de fazer isso, mas primeiro vou desafiar a ideia de que você deseja escolher apenas uma. Muito provavelmente, um modelo de conjunto dos três modelos separados alcançará o melhor desempenho de todos.

A principal, talvez a melhor, maneira de fazer isso é usar o modelo para obter intervalos de confiança em torno da métrica de avaliação. Isso geralmente é feito via bootstrapping ( ou Poisson ).

A outra maneira é usar um teste estatístico. Todo teste faz suposições diferentes, e elas geralmente são usadas para comparar um valor ou amostra retirada de uma distribuição, em vez de uma única avaliação pontual. Muitos desses testes estatísticos exigem formalmente independência, o que você normalmente não tem ao comparar vários resultados do mesmo modelo ou vários modelos ao longo de dados de séries temporais.

Com a previsão de séries temporais especificamente, você deve fazer o backtesting com validação cruzada e avaliar o erro de trem e teste a cada momento ( exemplo ). Quando você faz isso, duvido que seus modelos tenham um desempenho tão semelhante que você precise de um teste estatístico para diferenciar; provavelmente, você verá grandes diferenças.

Observe também que as métricas de avaliação histórica (comparando dados reais com previsão) são insuficientes para a avaliação de previsão. Dadas duas previsões que se encaixam perfeitamente em dados históricos conhecidos, mas uma também corresponde às crenças anteriores sobre o futuro e a outra claramente viola (por exemplo, se uma desaparecer até zero, mas você tiver motivos para acreditar que isso não pode acontecer), você preferirá a previsão que melhor corresponde ao seu anterior.

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.