Introdução ao Prophet


A classe Prophet da bilbioteca fbprophet é uma ferramenta de previsão de séries temporais desenvolvida pelo Facebook para simplificar a modelagem e previsão de dados de séries temporais com sazonalidade. Ela é especialmente útil quando se trabalha com séries temporais que possuem componentes sazonais complexos e feriados irregulares. O Prophet é projetado para ser fácil de usar e eficaz em previsões de curto e médio prazo.

Principais recursos e funcionalidades

  1. Modelagem Flexível: O Prophet permite a inclusão de múltiplos componentes sazonais, como sazonalidade anual, sazonalidade semanal e feriados, tornando-o flexível para modelar diferentes tipos de sazonalidades.

  2. Tratamento de Dados Ausentes: Ele lida de forma robusta com dados ausentes e valores atípicos, o que é comum em muitas séries temporais do mundo real.

  3. Previsões em Múltiplos Componentes: O Prophet pode retornar previsões desagregadas em vários componentes, como tendência, sazonalidade, feriados e componentes de erro.

  4. Inclusão de Feriados: A classe Prophet permite que você inclua informações sobre feriados em suas previsões, o que é particularmente útil para séries temporais que são influenciadas por feriados específicos.

  5. Interface Simples: Possui uma interface simples e amigável para especificar os componentes do modelo, tornando a modelagem de séries temporais acessível mesmo para pessoas sem um profundo conhecimento em estatística.

Exemplo

from fbprophet import Prophet
import pandas as pd
 
# Criar um DataFrame pandas com uma coluna de datas (ds) e uma coluna de valores (y)
df = pd.read_csv('seu_dataset.csv')
 
# Inicializar o modelo Prophet
model = Prophet()
 
# Ajustar o modelo aos dados
model.fit(df)
 
# Criar um DataFrame com datas futuras para previsões
future = model.make_future_dataframe(periods=365)  # Prever 1 ano no futuro
 
# Realizar as previsões
forecast = model.predict(future)
 
# Visualizar as previsões
fig = model.plot(forecast)

Explicação do exemplo:

  1. Carregamos os dados de séries temporais de um arquivo CSV em um DataFrame do Pandas.

  2. Inicializamos um objeto Prophet.

  3. Ajustamos o modelo aos dados de séries temporais usando o método fit.

  4. Criamos um DataFrame para datas futuras usando o método make_future_dataframe.

  5. Realizamos as previsões com o método predict.

  6. Visualizamos as previsões com um gráfico.

O Prophet é amplamente utilizado em diversas aplicações, como previsão de vendas, previsão de tráfego na web, previsão de métricas de negócios, entre outros. Ele oferece uma maneira intuitiva e eficaz de lidar com previsões de séries temporais, especialmente quando os dados têm componentes sazonais complexos e feriados.

Referências