0Pricing
Learn AI with Python · Aula

Modelos ARIMA e SARIMA

Componentes AR, MA e I, seleção de parâmetros com ACF/PACF e ajuste de ARIMA com statsmodels.

Modelos ARIMA e SARIMA é uma aula grátis de Learn AI with Python no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Learn AI with Python, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Learn AI with Python inclui 4 aulas no total.

O que é ARIMA?

ARIMA modela uma série estacionária usando três partes: o componente AutoRegressive (autorregressivo) (p), a integração/diferenciação (d) e uma média móvel dos erros (q), representadas como ARIMA(p, d, q).

AR(p): autorregressivo

O termo AR prevê o próximo valor a partir de uma combinação linear de seus próprios p valores anteriores. Se o valor de hoje depender fortemente dos últimos dias, você precisará de um p diferente de zero.

Exemplo: p=2 usa as duas observações mais recentes como variáveis preditoras.

I(d): integração / diferenciação

O termo I é a ordem de diferenciação d necessária para tornar a série estacionária — exatamente o d que você encontrou com o teste ADF na lição anterior. d=1 remove uma tendência linear.

MA(q): média móvel

O termo MA modela o próximo valor usando os q erros de previsão anteriores (choques). Ele captura correções de curto prazo no ruído que a parte AR não consegue explicar.

Ajustando ARIMA no statsmodels

Passe sua série como endog e a tupla de ordem escolhida.

from statsmodels.tsa.arima.model import ARIMA

model = ARIMA(endog=series, order=(p, d, q))
fit = model.fit()
print(fit.summary())

Fazendo previsões

Depois do ajuste, gere valores futuros com forecast ou get_forecast, que também fornece intervalos de confiança.

preds = fit.forecast(steps=12)        # next 12 periods
fc = fit.get_forecast(steps=12)
ci = fc.conf_int()                    # confidence intervals

Gráficos ACF e PACF

Para escolher p e q, examine os gráficos de autocorrelação:

  • ACF (autocorrelação) ajuda a escolher q (ordem MA).
  • PACF (autocorrelação parcial) ajuda a escolher p (ordem AR).

Procure a defasagem em que a correlação sofre um corte acentuado.

from statsmodels.graphics.tsaplots import plot_acf, plot_pacf

plot_acf(series.diff().dropna())
plot_pacf(series.diff().dropna())

AIC e BIC para selecionar a ordem

AIC e BIC avaliam o ajuste do modelo, penalizando sua complexidade. Quanto menor, melhor. Ajuste vários candidatos (p,d,q) e escolha aquele com o menor AIC/BIC; o BIC penaliza parâmetros adicionais com mais intensidade.

print("AIC:", fit.aic)
print("BIC:", fit.bic)

Busca em grade das ordens

Uma abordagem comum percorre pequenos intervalos de p, d e q, ajusta cada combinação e mantém aquela com o menor AIC. Bibliotecas como pmdarima.auto_arima automatizam essa busca.

best = None
for p in range(3):
    for q in range(3):
        try:
            f = ARIMA(series, order=(p, 1, q)).fit()
            if best is None or f.aic < best[1]:
                best = ((p, 1, q), f.aic)
        except Exception:
            pass
print(best)

SARIMA para sazonalidade

SARIMA adiciona um componente sazonal: (P, D, Q, m), em que m é a duração da estação (12 para dados mensais com padrão anual). Ele lida com padrões repetitivos que o ARIMA simples não consegue tratar.

from statsmodels.tsa.statespace.sarimax import SARIMAX

model = SARIMAX(series,
    order=(1, 1, 1),
    seasonal_order=(1, 1, 1, 12))
fit = model.fit()

ARIMA versus SARIMA

  • ARIMA(p,d,q): tendência e dependência de curto prazo, sem sazonalidade.
  • SARIMA(p,d,q)(P,D,Q,m): adiciona termos sazonais para ciclos repetitivos.

Se a sua decomposição mostrou uma sazonalidade clara, escolha SARIMA.

Verificação rápida

Teste seus conhecimentos sobre ARIMA.

Recapitulação

Você aprendeu ARIMA(p,d,q): AR usa valores anteriores, I é a ordem de diferenciação e MA usa erros anteriores. Você ajustou o modelo com ARIMA(endog, order=...), escolheu as ordens usando ACF/PACF e AIC/BIC e ampliou o modelo para SARIMA para lidar com a sazonalidade. A seguir: Prophet para previsões automatizadas.

Perguntas Frequentes

A aula “Modelos ARIMA e SARIMA” é grátis?

Sim — o texto completo de “Modelos ARIMA e SARIMA” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Learn AI with Python, atualize para CoddyKit PRO. O curso de Learn AI with Python inclui 4 aulas no total.

O que vou aprender em “Modelos ARIMA e SARIMA”?

Componentes AR, MA e I, seleção de parâmetros com ACF/PACF e ajuste de ARIMA com statsmodels. Você pratica Learn AI with Python com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Learn AI with Python?

Nenhuma experiência prévia é necessária. Learn AI with Python no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Modelos ARIMA e SARIMA”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Learn AI with Python?

Sim. Cada aula de Learn AI with Python inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Componentes de séries temporais e estacionariedade
  2. Modelos ARIMA e SARIMA
  3. Prophet para previsão automatizada
  4. LSTM para previsão de séries temporais
← Voltar para Learn AI with Python