Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Soothsayer: Using Neuralprophet, Axon, Nx and L...

Soothsayer: Using Neuralprophet, Axon, Nx and Livebook to Forecast Business Data in Elixir

Talk I gave at ElixirConf US 2024 in Orlando, Florida.

georgeguimaraes

August 30, 2024
Tweet

More Decks by georgeguimaraes

Other Decks in Programming

Transcript

  1. USING NEURALPROPHET, AXON, NX AND LIVEBOOK TO FORECAST BUSINESS DATA

    IN ELIXIR George Guimarães Principal Engineer at CloudWalk Elixir Advocate
  2. PROPHET • Facebook Project • Predicts time series, paper from

    2017 • Simple to use • Written using Stan, a statistical modeling platform and language • https://github.com/tmbb/ulam_ex
  3. NEURALPROPHET • Stanford project, paper from 2021 • Rewritten using

    neural networks (PyTorch) • As with Prophet, focused on “understability”, “explainability” • breaks the prediction into reasonable components • trend, seasonalities, holidays/events • easy for a human to review • Simple to use
  4. LAGGED REGRESSION Effect of variables known in the past. Modeled

    very similarly to Auto Regression. • Other variables in your “vicinity" that may be good predictors of behaviours • sales for A/C units: temperature
  5. • SourceLevel, startup doing Engineering Ops, spin-off from Plataformatec •

    time-series data to predict and/or analise • Engineering Management metrics like Pull Requests, Lead Times, “activity” levels for individuals and teams • Great tools in Python, but no tools in Elixir • So…
  6. ROADMAP • Fill in missing data • Add Fourier series

    for seasons TBD Done Preprocessor • Piecewise Linear Trend • Multiplicative Seasonality • Custom seasons (monthly, for instance) • Auto regressor • Lagged and future regressors • Adding holidays/events • Global Linear Trend • Additive Seasonality Components • Make it easier to generate component output • Make it easier to use Nx.serving • Use the same testing data as NeuralProphet General