AutoGP.jl
Automated Bayesian model discovery for time series data
Install / Use
/learn @probsys/AutoGP.jlREADME
AutoGP.jl
This package contains the Julia reference implementation of AutoGP, a method for automatically discovering Gaussian process models of univariate time series data, as described in
Sequential Monte Carlo Learning for Time Series Structure Discovery.<br/> Saad, F A; Patton, B J; Hoffmann, M D.; Saurous, R A; Mansinghka, V K.<br/> ICML 2023: Proc. The 40th International Conference on Machine Learning.<br/> Proceedings of Machine Learning Research vol. 202, pages 29473-29489, 2023.
Whereas traditional Gaussian process software packages focus on inferring the numeric parameters for a fixed (user-specified) covariance kernel function, AutoGP learns both covariance kernel functions and numeric parameters for a given dataset. The plots below show two examples of online time series structure discovery using AutoGP, which discovers periodic components, trends, and smoothly-varying temporal components.
<img style="float: left" src="./docs/src/assets/tsdl.161.gif" width="49%"/> <img style="float: center" src="./docs/src/assets/tsdl.533.gif" width="49%"/>
Installing
AutoGP can be installed using the Julia package manager. From the Julia
REPL (version 1.8+), type ] to enter the Pkg REPL mode and run
pkg> add AutoGP
Alternatively, use the terminal command
julia -e 'import Pkg; Pkg.add("AutoGP")'.
Tutorials
Please see https://probsys.github.io/AutoGP.jl
Developer Notes
Building Documentation
$ julia --project=. docs/make.jl
$ python3 -m http.server --directory docs/build/ --bind localhost 9090
Building From Clone
- Obtain Julia 1.8 or later.
- Clone this repository.
- Set environment variable:
export JULIA_PROJECT=/path/to/AutoGP.jl - Instantiate dependencies:
julia -e 'using Pkg; Pkg.instantiate()' - Build PyCall:
PYTHON= julia -e 'using Pkg; Pkg.build("PyCall")' - Verify import works:
julia -e 'import AutoGP; import PyPlot; println("success!")'
Citation
@inproceedings{saad2023icml,
title = {Sequential {Monte} {Carlo} Learning for Time Series Structure Discovery},
author = {Saad, Feras A. and Patton, Brian J. and Hoffmann, Matthew D. and Saurous, Rif A. and Mansinghka, V. K.},
booktitle = {Proceedings of the 40th International Conference on Machine Learning},
series = {Proceedings of Machine Learning Research},
volume = {202},
pages = {29473--29489},
year = {2023},
publisher = {PMLR},
}
Related Skills
YC-Killer
2.7kA library of enterprise-grade AI agents designed to democratize artificial intelligence and provide free, open-source alternatives to overvalued Y Combinator startups. If you are excited about democratizing AI access & AI agents, please star ⭐️ this repository and use the link in the readme to join our open source AI research team.
best-practices-researcher
The most comprehensive Claude Code skills registry | Web Search: https://skills-registry-web.vercel.app
groundhog
400Groundhog's primary purpose is to teach people how Cursor and all these other coding agents work under the hood. If you understand how these coding assistants work from first principles, then you can drive these tools harder (or perhaps make your own!).
last30days-skill
19.1kAI agent skill that researches any topic across Reddit, X, YouTube, HN, Polymarket, and the web - then synthesizes a grounded summary
