Prophet – previsão de séries temporais do Facebook: guia completo de análise de dados
Introdução ao Prophet
Prophet é uma poderosa biblioteca de código aberto desenvolvida pela equipe do Facebook (Meta) para previsão de séries temporais. A biblioteca foi criada para resolver problemas práticos de previsão em cenários reais de negócios, onde os dados podem conter lacunas, outliers e padrões sazonais complexos.
A principal vantagem do Prophet está na sua capacidade de identificar e modelar automaticamente padrões temporais complexos, sem a necessidade de um conhecimento profundo de métodos estatísticos. Isso torna a biblioteca acessível a uma ampla gama de analistas e profissionais de dados.
História de criação e desenvolvimento da biblioteca
O Prophet foi apresentado pela primeira vez em 2017 por pesquisadores do Facebook Core Data Science Team. A biblioteca foi criada para resolver problemas específicos da empresa na previsão de várias métricas, desde a atividade dos usuários até o planejamento de infraestrutura.
Os principais desenvolvedores foram Sean Taylor e Ben Letham, que buscaram criar uma ferramenta que combinasse rigor estatístico com aplicabilidade prática. Em 2018, foi lançada a versão para R e, posteriormente, a biblioteca foi portada para Python.
Fundamentos matemáticos e princípios de funcionamento
Modelo aditivo do Prophet
Modelagem da tendência
O Prophet suporta dois tipos de tendências:
Tendência linear: [ g(t) = (k + a(t)^T \delta) \cdot t + (m + a(t)^T \gamma) ]
Tendência logística: [ g(t) = \frac{C(t)}{1 + \exp(-(k + a(t)^T \delta)(t - (m + a(t)^T \gamma)))} ]
onde [ C(t) ] é a capacidade máxima (carrying capacity), [ k ] é a taxa de crescimento base, [ \delta ] são as mudanças na taxa de crescimento nos pontos de mudança de tendência.
Componente sazonal
A sazonalidade é modelada usando séries de Fourier:
onde [ P ] é o período de sazonalidade, [ N ] é o número de harmônicos (fourier_order).
Instalação e configuração do ambiente
Instalação básica
pip install prophet
Instalação com dependências adicionais
pip install prophet[plot]
pip install plotly # para visualização interativa
Instalação para diferentes sistemas operacionais
Windows:
pip install pystan
pip install prophet
macOS:
brew install gcc
pip install prophet
Linux (Ubuntu/Debian):
sudo apt-get install build-essential
pip install prophet
Importando a biblioteca
from prophet import Prophet
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from prophet.plot import plot_plotly, plot_components_plotly