Bayesian structural time series (BSTS) é uma estrutura estatística para modelagem e previsão de dados de séries temporais. Ela integra modelos de espaço de estados com inferência bayesiana, permitindo a decomposição de uma série em componentes de tendência, sazonalidade e regressão, ao mesmo tempo em que fornece distribuições posteriores completas para todos os parâmetros. Essa abordagem é particularmente valorizada por sua capacidade de lidar com dados ausentes, incorporar informações prévias e quantificar a incerteza em previsões e estimativas de efeitos causais.
O método foi popularizado em meados da década de 2010 por meio de trabalhos acadêmicos e implementações de código aberto, notavelmente o pacote CausalImpact desenvolvido pelo Google. O BSTS tornou-se uma ferramenta padrão em áreas como econometria, epidemiologia e análise de marketing, onde compreender o impacto de intervenções ou eventos em uma série temporal é crucial. Sua flexibilidade e natureza probabilística o distinguem de métodos clássicos de séries temporais, como o ARIMA, que frequentemente exigem estacionariedade e tratam os parâmetros como fixos.
Componentes Principais
Os modelos BSTS são construídos sobre uma representação de espaço de estados, onde uma série temporal observada \( y_t \) é expressa como uma função de um vetor de estado latente \( \alpha_t \). A equação de observação é tipicamente \( y_t = Z_t^T \alpha_t + \varepsilon_t \), e o estado evolui de acordo com \( \alpha_{t+1} = T_t \alpha_t + R_t \eta_t \), com termos de erro \( \varepsilon_t \) e \( \eta_t \) assumidos como gaussianos. O vetor de estado pode incluir múltiplos componentes: uma tendência linear local, um componente sazonal (frequentemente modelado com termos de Fourier ou variáveis dummy) e coeficientes de regressão para preditores externos.
Uma característica-chave é o uso de priors spike-and-slab nos coeficientes de regressão. Essa distribuição prévia permite que o modelo realize seleção de variáveis automaticamente, encolhendo coeficientes irrelevantes para zero enquanto retém preditores importantes. Isso é especialmente útil quando o número de covariáveis potenciais é grande em relação ao tamanho da amostra, um cenário comum em estudos observacionais.
Inferência Bayesiana e Computação
A inferência no BSTS é conduzida por meio de métodos de Markov chain Monte Carlo (MCMC), tipicamente usando amostragem de Gibbs. A estrutura de espaço de estados permite uma amostragem eficiente dos estados latentes via filtro de Kalman e suavizador, enquanto os coeficientes de regressão e parâmetros de variância são atualizados condicionalmente. A abordagem bayesiana produz uma distribuição posterior para cada quantidade, possibilitando intervalos de credibilidade para previsões e estimativas de efeitos.
Uma vantagem prática é o tratamento natural de observações ausentes. Em uma estrutura de espaço de estados, valores ausentes são tratados como variáveis latentes e são imputados durante o processo de amostragem, evitando a necessidade de etapas separadas de imputação. Isso é particularmente benéfico para conjuntos de dados do mundo real com lacunas devido a atrasos de relatórios ou problemas de coleta de dados.
Análise de Impacto Causal
Uma aplicação proeminente do BSTS é a estimativa de impacto causal, conforme implementada no pacote CausalImpact em R. O método constrói um controle sintético para uma unidade tratada ajustando um modelo BSTS a um conjunto de séries temporais de controle durante um período pré-intervenção. O modelo aprende a relação entre a série tratada e os controles, então prevê o resultado contrafactual para o período pós-intervenção. A diferença entre os valores observados e previstos fornece uma estimativa do efeito causal, completa com intervalos de incerteza.
Essa abordagem tem sido amplamente utilizada na avaliação do efeito de campanhas de marketing, mudanças de políticas ou intervenções de saúde pública. Por exemplo, pesquisadores a aplicaram para medir o impacto de gastos com publicidade nas vendas ou o efeito de uma nova lei em acidentes de trânsito. A força do método reside em sua capacidade de levar em conta tendências e sazonalidade sem exigir um experimento randomizado.
Implementações de Software
Vários pacotes de software implementam o BSTS. O pacote original CausalImpact, lançado pelo Google em 2014, permanece popular em R. O pacote bsts em R, também do Google, fornece uma estrutura mais geral para construir modelos de espaço de estados personalizados. Em Python, a biblioteca pycausalimpact oferece um port do CausalImpact, e a biblioteca statsmodels inclui alguma funcionalidade de espaço de estados, embora com menos ênfase em seleção bayesiana de variáveis.
Essas ferramentas reduziram a barreira de entrada, permitindo que profissionais sem profunda expertise em estatística bayesiana apliquem o BSTS. No entanto, os usuários ainda precisam fazer escolhas de modelagem, como o número de componentes sazonais ou a distribuição prévia para coeficientes de regressão, o que pode influenciar os resultados.
Limitações e Considerações
O BSTS é computacionalmente intensivo em comparação com métodos clássicos, especialmente para séries longas ou muitas covariáveis, devido à amostragem MCMC. Diagnósticos de convergência são necessários para garantir estimativas posteriores confiáveis. O método também assume linearidade e erros gaussianos, o que pode não se aplicar a dados de contagem ou distribuições altamente assimétricas, embora existam extensões para famílias de Poisson e outras.
Outra limitação é a dependência da escolha das séries de controle em aplicações causais. Se os controles são preditores ruins ou são eles próprios afetados pela intervenção, as estimativas contrafactuais podem ser enviesadas. Apesar desses desafios, o BSTS permanece uma ferramenta robusta e flexível, preenchendo a lacuna entre a econometria tradicional e as abordagens modernas de aprendizado de máquina.
Conceitos Relacionados
O BSTS está relacionado a campos mais amplos de aprendizado de máquina e inteligência artificial, particularmente em aplicações de previsão. Ele compartilha fundamentos conceituais com modelos sequência-a-sequência e arquiteturas codificador-decodificador, que também lidam com dependências temporais, embora o BSTS enfatize interpretabilidade e quantificação de incerteza. O método também se conecta a técnicas de aumento de dados, já que a imputação de dados ausentes é uma característica central. No contexto de IA generativa, o BSTS pode ser usado para gerar cenários contrafactuais realistas, embora não seja uma abordagem baseada em redes neurais.