Tenho uma pergunta relacionada à modelagem de séries temporais curtas. Não é uma questão se modelá-los , mas como. Que método você recomendaria para modelar séries temporais (muito) curtas (por exemplo, comprimento )? Por "melhor", quero dizer aqui o mais robusto, que é o menos propenso a erros devido ao fato de um número limitado de observações. Com séries curtas, observações únicas podem influenciar a previsão; portanto, o método deve fornecer uma estimativa cautelosa dos erros e uma possível variabilidade relacionada à previsão. Em geral, estou interessado em séries temporais univariadas, mas também seria interessante conhecer outros métodos.
35
Mcomp
pacote para R), 504 têm 20 ou menos observações, especificamente 55% das séries anuais. Assim, você pode procurar a publicação original e ver o que funcionou bem para dados anuais. Ou até mesmo vasculhe as previsões originais enviadas para a competição M3, que estão disponíveis noMcomp
pacote (listaM3Forecast
).Respostas:
É muito comum métodos de previsão extremamente simples, como "prever a média histórica", para superar os métodos mais complexos. Isso é ainda mais provável em séries temporais curtas. Sim, em princípio, você pode ajustar um modelo ARIMA ou ainda mais complexo a 20 ou menos observações, mas é provável que você se ajuste demais e obtenha previsões muito ruins.
Então: comece com uma referência simples, por exemplo,
Avalie-os em dados fora da amostra. Compare qualquer modelo mais complexo com esses benchmarks. Você pode se surpreender ao ver como é difícil superar esses métodos simples. Além disso, compare a robustez de diferentes métodos com esses métodos simples, por exemplo, avaliando não apenas a precisão média fora da amostra, mas também a variação do erro , usando sua medida de erro favorita .
Sim, como Rob Hyndman escreve em seu post ao qual Aleksandr se vincula , o teste fora da amostra é um problema em si para pequenas séries - mas não há realmente nenhuma boa alternativa. ( Não use o ajuste dentro da amostra, o que não é um guia para a precisão da previsão .) A AIC não ajudará na mediana e na caminhada aleatória. No entanto, você pode usar a validação cruzada de série temporal , que a AIC aproxima, de qualquer maneira.
fonte
Estou novamente usando uma pergunta como uma oportunidade para aprender mais sobre séries temporais - um dos (muitos) tópicos de meu interesse. Após uma breve pesquisa, parece-me que existem várias abordagens para o problema da modelagem de pequenas séries temporais.
A primeira abordagem é usar modelos de séries temporais lineares / padrão (AR, MA, ARMA etc.), mas prestar atenção a determinados parâmetros, conforme descrito neste post [1] por Rob Hyndman, que não precisa de introdução em séries temporais e previsão mundial. A segunda abordagem, referida pela maioria da literatura relacionada que eu vi, sugere o uso de modelos de séries temporais não lineares , em particular os modelos de limiares [2], que incluem o modelo autoregressivo de limiar (TAR) , o TAR auto-existente ( SETAR) , modelo de média móvel autoregressiva de limiar (TARMA) e modelo TARMAX , que estende o TARmodelo a séries temporais exógenas. Excelentes visões gerais dos modelos de séries temporais não lineares, incluindo modelos de limiar, podem ser encontrados neste artigo [3] e neste artigo [4].
Finalmente, outro trabalho de pesquisa relacionado ao IMHO [5] descreve uma abordagem interessante, baseada na representação de Volterra-Weiner de sistemas não lineares - veja isto [6] e isso [7]. Argumenta-se que essa abordagem é superior a outras técnicas no contexto de séries temporais curtas e barulhentas .
Referências
fonte
Os seguintes métodos qualitativos funcionam bem na prática para dados muito curtos ou inexistentes:
Um dos melhores métodos que eu sei que funciona muito bem é o uso de analogias estruturadas (quinta na lista acima), onde você procura produtos similares / análogos na categoria que você está tentando prever e usa-os para prever previsões de curto prazo . Veja este artigo para obter exemplos e o artigo do SAS sobre "como fazer isso" usando, é claro, o SAS. Uma limitação é que a previsão por analogias funcionará apenas se você tiver boas analogias, caso contrário, poderá confiar na previsão de julgamento. Aqui está outro vídeo do software Forecastpro sobre como usar uma ferramenta como o Forecastpro para fazer previsões por analogia. Escolher uma analogia é mais arte do que ciência e você precisa de conhecimentos de domínio para selecionar produtos / situações análogas.
Dois excelentes recursos para previsão de produtos novos ou curtos:
O seguinte é para fins ilustrativos. Acabei de ler o sinal e o ruídopor Nate Silver, na medida em que há um bom exemplo da bolha e da previsão do mercado imobiliário dos EUA e do Japão (mercado análogo ao dos EUA). No gráfico abaixo, se você parar em 10 pontos de dados e usar um dos métodos de extrapolação (smooting exponencial / ets / arima ...) e ver para onde isso o levará e onde o real terminou. Novamente, o exemplo que apresentei é muito mais complexo que a simples extrapolação de tendências. Isso é apenas para destacar os riscos da extrapolação de tendências usando pontos de dados limitados. Além disso, se o seu produto tiver um padrão sazonal, você deverá usar algum tipo de situação análoga ao produto para prever. Li um artigo que penso na pesquisa do Journal of Business que, se você tiver 13 semanas de vendas de produtos farmacêuticos, poderá prever dados com maior precisão usando produtos análogos.
fonte
A suposição de que o número de observações é crítica veio de um comentário ofensivo do GEP Box sobre o tamanho mínimo da amostra para identificar um modelo. Uma resposta mais sutil, no que me diz respeito, é que o problema / qualidade da identificação do modelo não se baseia apenas no tamanho da amostra, mas na proporção entre sinal e ruído nos dados. Se você tiver uma forte relação sinal / ruído, precisará de menos observações. Se você tem baixo s / n, precisará de mais amostras para identificar. Se o seu conjunto de dados for mensal e você tiver 20 valores, não será possível identificar empiricamente um modelo sazonal NO ENTANTO, se você acha que os dados podem ser sazonais, você poderá iniciar o processo de modelagem especificando um ar (12) e, em seguida, fazer o diagnóstico do modelo ( testes de significância) para reduzir ou aumentar seu modelo estruturalmente deficiente
fonte
Com dados muito limitados, eu estaria mais inclinado a ajustar os dados usando técnicas bayesianas.
A estacionariedade pode ser um pouco complicada quando se lida com modelos de séries temporais bayesianas. Uma opção é impor restrições aos parâmetros. Ou, você não poderia. Isso é bom se você quiser apenas observar a distribuição dos parâmetros. No entanto, se você quiser gerar a previsão preditiva posterior, poderá ter muitas previsões que explodem.
A documentação do Stan fornece alguns exemplos em que eles colocam restrições nos parâmetros dos modelos de séries temporais para garantir a estacionariedade. Isso é possível para os modelos relativamente simples que eles usam, mas pode ser praticamente impossível em modelos de séries temporais mais complicados. Se você realmente deseja impor a estacionariedade, pode usar um algoritmo Metropolis-Hastings e eliminar quaisquer coeficientes inadequados. No entanto, isso exige que muitos valores próprios sejam calculados, o que tornará as coisas mais lentas.
fonte
O problema, como você sabiamente apontou, é o "excesso de ajuste" causado por procedimentos fixos baseados em listas. Uma maneira inteligente é tentar manter a equação simples quando você tem uma quantidade insignificante de dados. Depois de muitas luas, descobri que, se você simplesmente usa um modelo AR (1) e deixa a taxa de adaptação (o coeficiente de ar) aos dados, as coisas podem funcionar razoavelmente bem. Por exemplo, se o coeficiente de ar estimado for próximo de zero, isso significa que a média geral seria apropriada. se o coeficiente estiver próximo de +1,0, significa que o último valor (ajustado por uma constante é mais apropriado. Se o coeficiente estiver próximo de -1,0, o negativo do último valor (ajustado por uma constante) seria a melhor previsão. Se o coeficiente for diferente, significa que uma média ponderada do passado recente é apropriada.
É exatamente com isso que o AUTOBOX começa e descarta anomalias, pois ajusta o parâmetro estimado quando um "pequeno número de observações" é encontrado.
Este é um exemplo da "arte da previsão" quando uma abordagem orientada a dados puros pode ser inaplicável.
A seguir, é apresentado um modelo automático para os 12 pontos de dados, sem preocupação com anomalias. com Real / Ajuste e Previsão aqui e plot residual aqui
fonte