Coder Social home page Coder Social logo

dushyantkhosla / ts-forecasting-ensemble Goto Github PK

View Code? Open in Web Editor NEW
20.0 4.0 4.0 13.06 MB

CentOS based Docker container for Time Series Analysis and Modeling.

Jupyter Notebook 99.71% Shell 0.03% Dockerfile 0.03% Python 0.23%
time-series forecasting arima sarimax prophet python3 jupyter-notebooks data-science

ts-forecasting-ensemble's Introduction

Build Time Series Forecasting Ensembles

This CentOS-based container running on Python3 has the tools necessary to build an ensemble of time-series forecacasting models. Inside the /home folder, there are sample data and notebooks with examples on building the following models

  • ETS, TBATS and AUTO.ARIMA (Using R through rpy2)
  • ARIMA, ARIMAX, SARIMAX (Using statsmodels)
  • Prophet (using Facebook's Python Library)
  • tsfresh from Blue Yonder for automated feature extraction from time-series data.

Forecasting tl;dr

These are the steps

  • Explore

    • Plot the data
    • Clean outliers, Impute missing values if needed
  • Transform

    • Take the natural log if needed
  • Decompose

    • Check if the time-series has any overall trend or seasonality
    • Plot the decomposed series
  • Check for Stationarity and find $d$

    • Is the series stationary?
    • Run the Augmented Dickey Fuller test,
    • Check ACF & PACF plots to
    • Determine order of differencing needed to stationarize the series
  • Check for Autocorrelations and find $p, q$

    • Examine ACF and PACF plots
  • Fit ARIMA/SARIMAX model over a grid

    • Use (p, d, q) and set up a grid search
    • Find the best model using
      • AIC/BIC
      • Out of Sample Prediction Error
    • Check your Residuals, they should be ~$N(0, 1)$ and look like white noise
  • Make predictions

PS: that ARIMA models assume non-seasonal series, so you'll need to de-seasonalize the series before modeling

Recommended Reading

ts-forecasting-ensemble's People

Contributors

dushyantkhosla avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

ts-forecasting-ensemble's Issues

Proposal

HI @dushyantkhosla
I'm a developer on Home-Assistant with a focus on adding data science tools to the platform. I'm particularly interested in adding forecasting, and have looked into fbprophet. Also we have a means to integrate docker containerised applications to the platform, see Hassio.
I would like to know if you are interested in collaborating to demonstrate a proof of principle, using your container to perform prediction on Home-Assistant data? We would need to expose the prediction via a rest API, similar to https://unplu.gg/test_api
Cheers
Robin

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.