TimesFM - modelo baseado em séries temporais do Google com 200 milhões de parâmetros e contexto de 16k
(github.com/google-research)- TimesFM é um grande modelo pré-treinado para previsão de séries temporais desenvolvido pelo Google Research, usando uma arquitetura somente decodificador
- A versão mais recente, 2.5, oferece 200 milhões de parâmetros, comprimento de contexto de 16k e previsão de horizon de até 1k
- Inclui vários recursos, como previsão contínua de quantis, entrada de covariáveis (XReg) e backends Flax e PyTorch
- O modelo é disponibilizado via Hugging Face e também pode ser usado com integração ao BigQuery
- Como um modelo de base de uso geral para previsão de dados de séries temporais, oferece escalabilidade e eficiência tanto para pesquisa quanto para uso prático
Visão geral do TimesFM
- TimesFM (Time Series Foundation Model) é um modelo pré-treinado para previsão de séries temporais desenvolvido pelo Google Research
- Baseia-se no artigo da ICML 2024 “A decoder-only foundation model for time-series forecasting”
- Os checkpoints do modelo são fornecidos por meio da coleção no Hugging Face e também são oficialmente integrados ao BigQuery
- A versão aberta não é um produto oficial do Google
Versões do modelo e principais atualizações
- A versão mais recente é o TimesFM 2.5; as versões anteriores (1.0, 2.0) estão armazenadas no diretório
v1e podem ser instaladas comtimesfm==1.3.0 -
Atualização de 15 de setembro de 2025
- Lançamento do modelo TimesFM 2.5
- Número de parâmetros reduzido para 200M (menos da metade em relação aos 500M anteriores)
- Comprimento de contexto expandido para 16k (aumentado a partir de 2048)
- Suporte a previsão contínua de quantis (continuous quantile forecast) com horizon de até 1k, incluindo um quantile head opcional de 30M
- Remoção do indicador
frequency - Adição de novas flags de previsão (forecasting flags)
- API de inferência (inference API) atualizada
- Itens previstos para adição futura
- Suporte ao modelo em versão Flax (inferência mais rápida)
- Restauração do suporte a covariáveis (covariate)
- Reforço de docstrings, documentação e notebooks
-
Atualização de 29 de outubro de 2025
- O suporte a entrada de covariáveis (covariate) via XReg foi adicionado novamente ao TimesFM 2.5
Como instalar
- Clone o repositório GitHub e use
uvpara criar um ambiente virtual e instalar os pacotes- É possível instalar backends opcionais entre
torch,flaxexreg - Dependendo do SO e do acelerador (CPU, GPU, TPU, Apple Silicon), é possível escolher PyTorch ou JAX (Flax)
- É possível instalar backends opcionais entre
Exemplo de código
- É fornecido um exemplo de carregamento do modelo TimesFM 2.5 baseado em PyTorch (200M de parâmetros)
- Usa
timesfm.TimesFM_2p5_200M_torch.from_pretrained("google/timesfm-2.5-200m-pytorch") - Com
ForecastConfig, é possível configurar normalização de entrada (normalize_inputs), uso do head contínuo de quantis, forçar valores positivos (infer_is_positive) e correção de cruzamento de quantis (fix_quantile_crossing), entre outros - Ao chamar
forecast(), são retornados dois resultados: point forecast e quantile forecastpoint_forecast.shape: (2, 12)quantile_forecast.shape: (2, 12, 10) — incluindo média e quantis de 10 a 90
- Usa
1 comentários
Comentários no Hacker News
A ideia de um modelo geral de séries temporais parece um pouco estranha
Fico me perguntando como o mesmo modelo conseguiria prever com confiabilidade tanto o preço dos ovos na Itália quanto a inflação global ao mesmo tempo
Além disso, também parece problemático o fato de ser difícil confiar no resultado se ele não explicar a base da previsão
Um evento não sazonal, como uma guerra no Oriente Médio afetando a inflação, é algo que o modelo não consegue capturar
Segundo o apêndice 8 do paper, eles geram dados sintéticos com modelos estatísticos tradicionais, como tendência linear, ARMA e padrões sazonais de seno e cosseno
No fim, como a arquitetura é um Transformer, ela encontra padrões específicos de cada problema com base no contexto de entrada, como um LLM
Muitos anunciantes simplesmente traçavam uma linha reta a partir dos números atuais, mas isso era impreciso porque não considerava o dia da semana nem a sazonalidade
Já os modelos de séries temporais eram muito mais precisos e, ao treinar com os dados da campanha inteira, conseguiam fornecer intervalos de confiança de 95%
O sinal e o expoente mudam lentamente, então seria possível prever isso e estimar a mantissa com a lei de Benford
Seria bom adicionar (2024) ao título
Isso já foi apresentado no blog do Google Research e não é exatamente uma notícia nova
O post de blog relacionado pode ser visto na página do TimesFM no GitHub
Parece ser muito menor do que em LLMs, então gostaria de saber se pesquisadores independentes ou laboratórios universitários também conseguiriam treinar isso
Como referência, há projetos parecidos como Nixtla e Prophet
Houve a pergunta: “Dá para explicar em nível ELI5? E quantos pontos de dados isso consegue ler?”
Fico curioso se a série temporal é dada apenas como um conjunto de números, sem contexto
Parece que o modelo olha para os dados, estima de que categoria se trata (ação, tendência de busca etc.) e então produz uma previsão adequada
Mas imagino que ele seja fraco em categorias que não estavam nos dados de treinamento
Pessoalmente, prefiro modelos simples como ARIMA ou modelos baseados em teoria
A questão central é o quanto a arquitetura e o método de treinamento conseguem generalizar
Esse modelo já estava aberto havia alguns meses, então fiquei curioso se existe algum caso real de alguém ter construído algo com base nele
Se eu tiver séries temporais de radiação solar passada e previsões meteorológicas, será que dá para usar a previsão do tempo futura para prever o preço da eletricidade?
Ou seja, a pergunta é se dá para usar os dados no tempo X de uma série para prever o tempo X de outra série, ou se ele lida apenas com padrões internos de uma única série temporal
Mas, se os dados de treinamento forem poucos, ele talvez acabe aprendendo apenas padrões do tipo “subindo para a direita”, então parece haver limitações
Eu tinha perdido esse projeto; será que existe alguma competição relacionada?
Séries temporais e ML sempre foram difíceis para mim, então queria tentar na prática
Um colega disse que usou esse modelo para prever quando o CEO publicaria algo no Slack, e que foi bem divertido
Pessoalmente, acho que rodar LLM + pandas + um loop próprio de experimentação pode gerar resultados melhores do que esse modelo
Não existe um limite definido, e na verdade acho bem provável que essa afirmação esteja errada