prophet  by facebook

Forecasting tool for time series data

created 8 years ago
19,456 stars

Top 2.3% on sourcepulse

GitHubView on GitHub
Project Summary

Prophet is an open-source forecasting procedure designed for time series data exhibiting strong seasonality and multiple seasonal patterns, such as yearly, weekly, and daily cycles, along with holiday effects. Developed by Facebook's Core Data Science team, it offers robustness to missing data, trend shifts, and outliers, making it suitable for researchers and practitioners needing reliable forecasts at scale.

How It Works

Prophet employs an additive model that fits non-linear trends using piecewise linear or logistic growth. It incorporates yearly, weekly, and daily seasonality, plus custom holiday effects, through Fourier series. The underlying model is implemented in Stan, allowing for efficient sampling and uncertainty estimation. This approach provides flexibility in modeling complex seasonal patterns and trend changes.

Quick Start & Requirements

  • Python: pip install prophet (Python 3.7+ required). For Anaconda users: conda install -c conda-forge prophet.
  • R: install.packages('prophet') (CRAN version is outdated). For the latest release: remotes::install_github('facebook/prophet@*release', subdir = 'R').
  • Dependencies: Requires a C++ compiler (Rtools for Windows R users, gcc/g++ for Linux Python users). Cmdstanr backend is available for R. Apple M2 support is included in recent versions.
  • Resources: At least 4GB RAM recommended for installation, 2GB for usage.

Highlighted Details

  • Supports multiple seasonalities (yearly, weekly, daily) and holiday effects.
  • Robust to missing data, trend shifts, and outliers.
  • Offers uncertainty intervals for forecasts.
  • Includes plotting capabilities and cross-validation tools.

Maintenance & Community

Prophet is actively maintained by Meta AI. The project provides extensive documentation, an issue tracker, and a contributing guide. Links to community resources are available on the project's homepage.

Licensing & Compatibility

Prophet is released under the MIT license, permitting commercial use and integration with closed-source projects.

Limitations & Caveats

The CRAN R version is significantly outdated. While recent Python versions support Apple Silicon (M1/M2), installation on Windows may require specific C++ toolchain setup. The project's future plans are discussed in a blog post, indicating ongoing development.

Health Check
Last commit

1 week ago

Responsiveness

1 week

Pull Requests (30d)
0
Issues (30d)
2
Star History
331 stars in the last 90 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems), Nathan Lambert Nathan Lambert(AI Researcher at AI2), and
1 more.

tianshou by thu-ml

0.1%
9k
PyTorch RL library for algorithm development and application
created 7 years ago
updated 1 day ago
Starred by Chip Huyen Chip Huyen(Author of AI Engineering, Designing Machine Learning Systems), Didier Lopes Didier Lopes(Founder of OpenBB), and
1 more.

qlib by microsoft

0.7%
28k
AI platform for quantitative investment research and production
created 5 years ago
updated 4 days ago
Feedback? Help us improve.