Skip to content

Latest commit

 

History

History
77 lines (50 loc) · 3.76 KB

README.md

File metadata and controls

77 lines (50 loc) · 3.76 KB

pysf version License

pysf

Supervised forecasting of sequential data in Python.

Intro

Supervised forecasting is the machine learning task of making predictions for sequential data like time series (forecasting) by exploiting independent examples of the same underlying relationship (supervised learning). Learning is flexible enough to incorporate metadata as well as sequential data.

Package features

  • Store and safely manipulate multi-series data and its metadata in a custom data container.
  • Define your own machine learning prediction strategies to operate on this data. Make use of tuning and pipelining objects to build composite prediction strategies. Use the widely-adopted fit/predict workflow throughout.
  • Plug in classical forecasting or supervised learning-based predictors into a framework that adapts them to the supervised forecasting task. Interface with popular machine learning & forecasting frameworks, such as scikit-learn, keras and statsmodels.
  • Empirically estimate multiple predictors' generalisation performance using nested resampling schemes, in a statistically sound manner. Compare predictors to baselines.

Getting started

Documentation

Installation

You can install pysf using the pip package management system. If you have pip installed, simply run

pip install pysf

to install the latest release of pysf.

In addition to the package, you will need the following prerequisites to take advantage of pysf's full functionality.

Prerequisites:

These are also required, but should be part of your Python distribution:

  • abc
  • logging

To use keras for deep learning:

  • Make sure you install keras and at least one backend engine. pysf has been tested against TensorFlow and Theano as backends.
  • If using TensorFlow as a backend, you will typically need to install dask 0.15 or higher.

Contributions

How to cite

Coming soon!

How to contribute

We welcome contributions!

  • You can suggest new features or report bugs by creating a new issue. Please check the list of issues first.
  • If you have made a change for an open issue, please submit a pull request linking to that issue.
  • If you would like to improve the documentation, please go right ahead and submit a pull request.

Contributors

  • Ahmed Guecioueur (@ahmedgc) is the original author of this package.

Copyright and license

Code and documentation copyright 2018 Ahmed Guecioueur. Code released under the BSD-3-Clause License.