# microprediction [docs](https://microprediction.github.io/microprediction/), [client](https://github.com/microprediction/microprediction) and [beer money](https://www.microprediction.org/leaderboard.html) ![deploy](https://github.com/microprediction/microprediction/workflows/deploy/badge.svg)
Packages and a platform for effecting autonomous prediction using lightweight markets instead of models because:
- *Markets are better at prediction than models* ([discuss](https://www.linkedin.com/posts/petercotton_tldr-activity-6983896509490610176-JTJB?utm_source=share&utm_medium=member_desktop)) - just harder to create and wield, until now.
- Small "microprediction" ([glossary](https://microprediction.github.io/microprediction/glossary)) markets are surprisingly accurate ([prove me wrong](https://github.com/microprediction/building_an_open_ai_network/discussions/19)).
### Provocations (more in the [book](https://mitpress.mit.edu/books/microprediction))
- No timeseries model should ever be called SOTA again ([discuss](https://www.linkedin.com/posts/petercotton_timeseries-forecasting-timeseriesanalysis-activity-6987561356862353408-iy2Z?utm_source=share&utm_medium=member_desktop)).
- Prediction capability shouldn't be limited by the capabilities of a single mind, algorithm or company ([discuss](https://www.linkedin.com/posts/petercotton_machinelearning-reinforcementlearning-datascience-activity-6992560556863803392-FOM6?utm_source=share&utm_medium=member_desktop))
- Somebody's algorithm or data will find signal in your model residuals, someday ([instructions](https://microprediction.github.io/microprediction/residuals)).
- Most of "AI" will be done analogously, eventually, though this will take work. See the [book](https://mitpress.mit.edu/books/microprediction) or [challenge me](https://github.com/microprediction/building_an_open_ai_network/discussions).
![](https://github.com/microprediction/microprediction/blob/master/docs/assets/images/cotton_microprediction_3d_down.png)
## Try it out ([docs](https://microprediction.github.io/microprediction/), [install](https://github.com/microprediction/microprediction/blob/master/INSTALL.md) and live [help](https://microprediction.github.io/microprediction/meet.html))
If you would like to see how *easy* it is to wield a *new kind of market* to effect turnkey distributional prediction, see the [docs](https://microprediction.github.io/microprediction/) and, therein, observe that you can receive live [help](https://microprediction.github.io/microprediction/meet.html) getting started on Fridays, or in the [slack channel](https://microprediction.github.io/microprediction/slack.html). Key points:
- No barriers to entry. To predict, just open this [notebook](https://github.com/microprediction/microprediction/blob/master/notebook_examples_submission/enter_microprediction_contest.ipynb) and run it, or cut and paste a [one line bash command](https://microprediction.github.io/microprediction/setup).
- The microprediction platform makes it [pretty trivial](https://microprediction.github.io/microprediction/publish.html) to initiate your own bespoke market too. Just ask Thomas Hjelde Thorensen who recently [posted](https://www.linkedin.com/posts/thomashthoresen_datascience-microprediction-timeseriesforecasting-activity-6999971006274514944-lDID?utm_source=share&utm_medium=member_desktop) about his experience.
- [Many algorithms](https://www.microprediction.org/leaderboard.html) already competing to predict [other streams](https://www.microprediction.org/browse_streams.html) can easily predict yours too.
- Many more will do so in the future. Anyone can [launch a new algorithm](https://microprediction.github.io/microprediction/predict.html) using anything they like in the Julia, R or Python [ecosystem](https://www.microprediction.com/blog/popular-timeseries-packages) for example (it's a data interface).
Too hard? If you have a CSV with historical data (one column per variable) you can just send it to me (chat in [slack](https://microprediction.github.io/microprediction/slack.html) say). You can also just grab data, see the [reader](https://github.com/microprediction/microprediction/blob/master/microprediction/reader.py).
# The [TimeMachines](https://github.com/microprediction/timemachines), [Precise](https://github.com/microprediction/precise), and [HumpDay](https://github.com/microprediction/humpday) packages
I also maintain three benchmarking packages to help me, and maybe you, surf the open-source wave.
| Topic | Package | Elo ratings | Methods | Data sources |
|------------------------|-------------------|-------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------|
| Univariate time-series | [timemachines](https://github.com/microprediction/timemachines) | [Timeseries Elo ratings](https://microprediction.github.io/timeseries-elo-ratings/html_leaderboards/univariate-k_003.html) | Most popular packages ([list](https://github.com/microprediction/timemachines/tree/main/timemachines/skaters)) | [microprediction streams](https://www.microprediction.org/browse_streams.html) |
| Global derivative-free optimization | [humpday](https://github.com/microprediction/humpday) | [Optimizer Elo ratings](https://microprediction.github.io/optimizer-elo-ratings/html_leaderboards/overall.html) | Most popular packages ([list](https://github.com/microprediction/humpday/tree/main/humpday/optimizers)) | A mix of classic and new [objectives](https://github.com/microprediction/humpday/tree/main/humpday/objectives) |
| Covariance, precision, correlation | [precise](https://github.com/microprediction/precise) | See [notebooks](https://github.com/microprediction/precise/tree/main/examples_colab_notebooks) | [cov](https://github.com/microprediction/precise/blob/main/LISTING_OF_COV_SKATERS.md) and [portfolio](https://github.com/microprediction/precise/blob/main/LISTING_OF_MANAGERS.md) lists |Stocks, electricity etc |
These packages aspire to advance online autonomous prediction in a small way, but also help me notice if anyone else does.
### How [microprediction.org](https://www.microprediction.org/browse_streams.html) "house" algorithms use these packages
Advances in time-series prediction funnel down into microprediction algorithms in various ways:
1. The "[/skaters](https://github.com/microprediction/timemachines/tree/main/timemachines/skaters)" provide canonical, single-line of code access to functionality drawn from packages like [river](https://github.com/online-ml/river), [pydlm](https://github.com/wwrechard/pydlm), [tbats](https://github.com/intive-DataScience/tbats), [pmdarima](http://alkaline-ml.com/pmdarima/), [statsmodels.tsa](https://www.statsmodels.org/stable/tsa.html), [neuralprophet](https://neuralprophet.com/), Facebook [Prophet](https://facebook.github.io/prophet/),
Uber's [orbit](https://eng.uber.com/orbit/), Facebook's [greykite](https://engineering.linkedin.com/blog/2021/greykite--a-flexible--intuitive--and-fast-forecasting-library) and more.
2. The [StreamSkater](https://microprediction.github.io/microprediction/predict-using-python-streamskater.html) makes it easy to use any "skater".
3. Choices are sometimes advised by [Elo ratings](https://microprediction.github.io/timeseries-elo-ratings/html_leaderboards/special-k_003.html), but anyone can do what they want.
4. It's not too hard to use my [HumpDay](https://github.com/microprediction/humpday) package for offline meta-param tweaking, et cetera.
5. It's not too hard to use my [precise](https://github.com/microprediction/precise) package for online ensembling.
There are other ways. Look for CODE badges on [leaderboards](https://www.microprediction.org/leaderboard.html).
### Some microprediction platform repos
- The [muid](https://github.com/microprediction/muid) identifier package is explained in this [video](https://vimeo.com/397352413).
- [microconventions](https://github.com/microprediction/microconventions) captures things common to client and server, and may answer many of your more specific questions about prediction horizons, et cetera.
- [rediz](https://github.com/microprediction/rediz) contains server side code. For the brave.
- There are other rats and mice like [getjson](https://github.com/microprediction/getjson), [runthis](https://github.com/microprediction/runthis) and [momentum](https://github.com/microprediction/momentum).
# Some of my other packages:
- [winning](https://github.com/microprediction/winning) - A recently published fast algorithm for inferring relative ability from win probability.
- [embarrassingly](https://github.com/microprediction/embarrassingly) - A speculative approach to robust optimization that sends impure objective functions to optimizers.
- [pandemic](https://github.com/microprediction/pandemic) - Ornstein-Uhlenbeck epidemic simulation (related [paper](https://arxiv.org/abs/2005.10311))
- [firstdown](https://github.com/microprediction/firstdown) - The repo that aspires to ruin the great game of football. See Wilmott [paper](https://github.com/microprediction/firstdown/blob/main/wilmott_paper/44-49_Cotton_PDF5_Jan22%20(2).pdf).
- [m6](https://github.com/microprediction/m6) - Illustrates fast numerical rank probability calculations, using [winning](https://github.com/microprediction/winning). However since the rules changed, this isn't that useful for M6 anymore. The [precise](https://github.com/microprediction/precise) package is way more useful, and put one person on the podium!
# About me ([home](https://github.com/microprediction/home))
- [blog](https://microprediction.medium.com)
- [slack channel](https://microprediction.github.io/microprediction/slack.html)
- [office hours](https://microprediction.github.io/microprediction/meet.html)
- [papers, articles etc](https://github.com/microprediction/home)
Raw data
{
"_id": null,
"home_page": "https://github.com/microprediction/microprediction",
"name": "microprediction",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "microprediction",
"author_email": "info@microprediction.org",
"download_url": "https://files.pythonhosted.org/packages/38/38/e50b5014dd12098396e3e67401b6de9f7893f7e3ad68c324a023579a623b/microprediction-1.1.33.tar.gz",
"platform": null,
"description": "\n# microprediction [docs](https://microprediction.github.io/microprediction/), [client](https://github.com/microprediction/microprediction) and [beer money](https://www.microprediction.org/leaderboard.html) ![deploy](https://github.com/microprediction/microprediction/workflows/deploy/badge.svg) \nPackages and a platform for effecting autonomous prediction using lightweight markets instead of models because:\n\n - *Markets are better at prediction than models* ([discuss](https://www.linkedin.com/posts/petercotton_tldr-activity-6983896509490610176-JTJB?utm_source=share&utm_medium=member_desktop)) - just harder to create and wield, until now. \n - Small \"microprediction\" ([glossary](https://microprediction.github.io/microprediction/glossary)) markets are surprisingly accurate ([prove me wrong](https://github.com/microprediction/building_an_open_ai_network/discussions/19)).\n\n### Provocations (more in the [book](https://mitpress.mit.edu/books/microprediction))\n\n- No timeseries model should ever be called SOTA again ([discuss](https://www.linkedin.com/posts/petercotton_timeseries-forecasting-timeseriesanalysis-activity-6987561356862353408-iy2Z?utm_source=share&utm_medium=member_desktop)). \n- Prediction capability shouldn't be limited by the capabilities of a single mind, algorithm or company ([discuss](https://www.linkedin.com/posts/petercotton_machinelearning-reinforcementlearning-datascience-activity-6992560556863803392-FOM6?utm_source=share&utm_medium=member_desktop)) \n- Somebody's algorithm or data will find signal in your model residuals, someday ([instructions](https://microprediction.github.io/microprediction/residuals)).\n- Most of \"AI\" will be done analogously, eventually, though this will take work. See the [book](https://mitpress.mit.edu/books/microprediction) or [challenge me](https://github.com/microprediction/building_an_open_ai_network/discussions).\n\n \n ![](https://github.com/microprediction/microprediction/blob/master/docs/assets/images/cotton_microprediction_3d_down.png)\n\n## Try it out ([docs](https://microprediction.github.io/microprediction/), [install](https://github.com/microprediction/microprediction/blob/master/INSTALL.md) and live [help](https://microprediction.github.io/microprediction/meet.html))\n\nIf you would like to see how *easy* it is to wield a *new kind of market* to effect turnkey distributional prediction, see the [docs](https://microprediction.github.io/microprediction/) and, therein, observe that you can receive live [help](https://microprediction.github.io/microprediction/meet.html) getting started on Fridays, or in the [slack channel](https://microprediction.github.io/microprediction/slack.html). Key points:\n\n - No barriers to entry. To predict, just open this [notebook](https://github.com/microprediction/microprediction/blob/master/notebook_examples_submission/enter_microprediction_contest.ipynb) and run it, or cut and paste a [one line bash command](https://microprediction.github.io/microprediction/setup). \n - The microprediction platform makes it [pretty trivial](https://microprediction.github.io/microprediction/publish.html) to initiate your own bespoke market too. Just ask Thomas Hjelde Thorensen who recently [posted](https://www.linkedin.com/posts/thomashthoresen_datascience-microprediction-timeseriesforecasting-activity-6999971006274514944-lDID?utm_source=share&utm_medium=member_desktop) about his experience. \n - [Many algorithms](https://www.microprediction.org/leaderboard.html) already competing to predict [other streams](https://www.microprediction.org/browse_streams.html) can easily predict yours too. \n - Many more will do so in the future. Anyone can [launch a new algorithm](https://microprediction.github.io/microprediction/predict.html) using anything they like in the Julia, R or Python [ecosystem](https://www.microprediction.com/blog/popular-timeseries-packages) for example (it's a data interface). \n\n\nToo hard? If you have a CSV with historical data (one column per variable) you can just send it to me (chat in [slack](https://microprediction.github.io/microprediction/slack.html) say). You can also just grab data, see the [reader](https://github.com/microprediction/microprediction/blob/master/microprediction/reader.py). \n\n# The [TimeMachines](https://github.com/microprediction/timemachines), [Precise](https://github.com/microprediction/precise), and [HumpDay](https://github.com/microprediction/humpday) packages \n\nI also maintain three benchmarking packages to help me, and maybe you, surf the open-source wave. \n\n| Topic | Package | Elo ratings | Methods | Data sources | \n|------------------------|-------------------|-------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------| \n| Univariate time-series | [timemachines](https://github.com/microprediction/timemachines) | [Timeseries Elo ratings](https://microprediction.github.io/timeseries-elo-ratings/html_leaderboards/univariate-k_003.html) | Most popular packages ([list](https://github.com/microprediction/timemachines/tree/main/timemachines/skaters)) | [microprediction streams](https://www.microprediction.org/browse_streams.html) |\n| Global derivative-free optimization | [humpday](https://github.com/microprediction/humpday) | [Optimizer Elo ratings](https://microprediction.github.io/optimizer-elo-ratings/html_leaderboards/overall.html) | Most popular packages ([list](https://github.com/microprediction/humpday/tree/main/humpday/optimizers)) | A mix of classic and new [objectives](https://github.com/microprediction/humpday/tree/main/humpday/objectives) |\n| Covariance, precision, correlation | [precise](https://github.com/microprediction/precise) | See [notebooks](https://github.com/microprediction/precise/tree/main/examples_colab_notebooks) | [cov](https://github.com/microprediction/precise/blob/main/LISTING_OF_COV_SKATERS.md) and [portfolio](https://github.com/microprediction/precise/blob/main/LISTING_OF_MANAGERS.md) lists |Stocks, electricity etc | \n\nThese packages aspire to advance online autonomous prediction in a small way, but also help me notice if anyone else does. \n\n### How [microprediction.org](https://www.microprediction.org/browse_streams.html) \"house\" algorithms use these packages\nAdvances in time-series prediction funnel down into microprediction algorithms in various ways:\n\n1. The \"[/skaters](https://github.com/microprediction/timemachines/tree/main/timemachines/skaters)\" provide canonical, single-line of code access to functionality drawn from packages like [river](https://github.com/online-ml/river), [pydlm](https://github.com/wwrechard/pydlm), [tbats](https://github.com/intive-DataScience/tbats), [pmdarima](http://alkaline-ml.com/pmdarima/), [statsmodels.tsa](https://www.statsmodels.org/stable/tsa.html), [neuralprophet](https://neuralprophet.com/), Facebook [Prophet](https://facebook.github.io/prophet/), \n Uber's [orbit](https://eng.uber.com/orbit/), Facebook's [greykite](https://engineering.linkedin.com/blog/2021/greykite--a-flexible--intuitive--and-fast-forecasting-library) and more. \n \n2. The [StreamSkater](https://microprediction.github.io/microprediction/predict-using-python-streamskater.html) makes it easy to use any \"skater\". \n\n3. Choices are sometimes advised by [Elo ratings](https://microprediction.github.io/timeseries-elo-ratings/html_leaderboards/special-k_003.html), but anyone can do what they want. \n\n4. It's not too hard to use my [HumpDay](https://github.com/microprediction/humpday) package for offline meta-param tweaking, et cetera. \n\n5. It's not too hard to use my [precise](https://github.com/microprediction/precise) package for online ensembling. \n\nThere are other ways. Look for CODE badges on [leaderboards](https://www.microprediction.org/leaderboard.html). \n\n### Some microprediction platform repos\n\n- The [muid](https://github.com/microprediction/muid) identifier package is explained in this [video](https://vimeo.com/397352413). \n- [microconventions](https://github.com/microprediction/microconventions) captures things common to client and server, and may answer many of your more specific questions about prediction horizons, et cetera. \n- [rediz](https://github.com/microprediction/rediz) contains server side code. For the brave. \n- There are other rats and mice like [getjson](https://github.com/microprediction/getjson), [runthis](https://github.com/microprediction/runthis) and [momentum](https://github.com/microprediction/momentum). \n\n# Some of my other packages: \n\n- [winning](https://github.com/microprediction/winning) - A recently published fast algorithm for inferring relative ability from win probability. \n- [embarrassingly](https://github.com/microprediction/embarrassingly) - A speculative approach to robust optimization that sends impure objective functions to optimizers.\n- [pandemic](https://github.com/microprediction/pandemic) - Ornstein-Uhlenbeck epidemic simulation (related [paper](https://arxiv.org/abs/2005.10311))\n- [firstdown](https://github.com/microprediction/firstdown) - The repo that aspires to ruin the great game of football. See Wilmott [paper](https://github.com/microprediction/firstdown/blob/main/wilmott_paper/44-49_Cotton_PDF5_Jan22%20(2).pdf). \n- [m6](https://github.com/microprediction/m6) - Illustrates fast numerical rank probability calculations, using [winning](https://github.com/microprediction/winning). However since the rules changed, this isn't that useful for M6 anymore. The [precise](https://github.com/microprediction/precise) package is way more useful, and put one person on the podium! \n\n\n# About me ([home](https://github.com/microprediction/home))\n - [blog](https://microprediction.medium.com)\n - [slack channel](https://microprediction.github.io/microprediction/slack.html) \n - [office hours](https://microprediction.github.io/microprediction/meet.html)\n - [papers, articles etc](https://github.com/microprediction/home)\n\n\n\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Client for www.microprediction.org turnkey community prediction",
"version": "1.1.33",
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "aad922d70ca1d141e8694d9aea4a9e1e42af79f0d3c8452e5dc5e4607a4f1f89",
"md5": "5abe9aca43474182d9af9e597510c413",
"sha256": "2739149300315a9d87ca0bb83d26b1b6202b941a89eb0ad64326f3c93f8ced12"
},
"downloads": -1,
"filename": "microprediction-1.1.33-py3-none-any.whl",
"has_sig": false,
"md5_digest": "5abe9aca43474182d9af9e597510c413",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 85070,
"upload_time": "2023-01-26T21:15:11",
"upload_time_iso_8601": "2023-01-26T21:15:11.739270Z",
"url": "https://files.pythonhosted.org/packages/aa/d9/22d70ca1d141e8694d9aea4a9e1e42af79f0d3c8452e5dc5e4607a4f1f89/microprediction-1.1.33-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3838e50b5014dd12098396e3e67401b6de9f7893f7e3ad68c324a023579a623b",
"md5": "ee7c7c206d16d2a97ecea778ab392fc5",
"sha256": "414bc4f7e4539adf8cd7edbfb444f2b57437a2024ebfcade933f659cc698708f"
},
"downloads": -1,
"filename": "microprediction-1.1.33.tar.gz",
"has_sig": false,
"md5_digest": "ee7c7c206d16d2a97ecea778ab392fc5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 66815,
"upload_time": "2023-01-26T21:15:13",
"upload_time_iso_8601": "2023-01-26T21:15:13.905441Z",
"url": "https://files.pythonhosted.org/packages/38/38/e50b5014dd12098396e3e67401b6de9f7893f7e3ad68c324a023579a623b/microprediction-1.1.33.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-26 21:15:13",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "microprediction",
"github_project": "microprediction",
"travis_ci": true,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "microprediction"
}