Can one Line of Python Win a Contest at Microprediction.Org?
Perhaps, and that's by design.
MicroWriter(write_key=new_key(difficulty=10)).submit(name='die.json',values= sorted(([k-2.5 for k in range(6)]*38)[:225]) )
Oops, forgot:
pip install microprediction
and the imports. Here's a more readable and functional attempt:
from microprediction import new_key, MicroWriter
write_key = new_key(difficulty=10)
mw = MicroWriter(write_key=write_key)
die_rolls = [k-2.5 for k in range(6)]*50
values = sorted( die_rolls[:mw.num_predictions] )
res = mw.submit(name='die.json',values=values)
print('https://api.microprediction.org/home/'+write_key)
That was easy.
Click on the link or enter the key in your dashboard at Microprediction.Org. Take great pleasure in the fact that the tiny amount of human common sense you applied enables you to leap over some far more sophisticated algorithms ... many of whom do very well on other parts of the Microprediction.Org obstacle course only to fall flat on their face when it comes to predicting the outcome of a simple die roll.
Moral of this short story: inexpensive, easily accessible but effective collective intelligence can arise from the use of advanced mathematics - some of the world's best parameter search algorithms lie behind the API at Microprediction.Org for example. But algorithmic intelligence is more powerful, robust and cost effective when sprinkled with short bursts of surgically applied generalized human intelligence. Including yours.
The necessity of human involvement doesn't mean that anyone wanting a prediction needs to pay for expensive middle-men. To predict any source of live data, just publish it periodically at Microprediction.Org like so:
领英推荐
from microprediction import MicroPoll, new_key
difficult_key = new_key(difficulty=12)
print(difficult_key)
feed = MicroPoll(write_key = difficult_key,
name = 'my_stream.json',
func = my_feed_func,
interval = 20)
feed.run()
Now a watched pot never boils. Don't wait for this script to run. It is a long weekend. Get outside and enjoy the sun.
The script will spend a long time burning a key with stream creation privilege (see MUID.org if you care). That is your ticket to this world of prescient quasi-human fauna. Letting everyone crash this community garden of automated time series algorithms (and less-automated ones) would violate social distancing guidelines. Don't lose your key.
But after many hours, the program will proceed to the next line and start publishing the output of your function every twenty minutes. Algorithms will notice your feed, though many will ignore it until they feel there is enough history to have a go. Still, perhaps within days, you will be able to visit Microprediction.Org to see what an intelligent combination of people and machines have to say about the future of your number 1 minute, 5 minutes, 15 minutes or 1 hr ahead. Just enter your key in the dashboard.
About me
Hi I'm the author of Microprediction: Building an Open AI Network published by MIT Press. I create open-source Python packages such as timemachines, precise and humpday for benchmarking, and I maintain a live prediction exchange at www.microprediction.org which you can participate in (see docs). I also develop portfolio techniques for Intech Investments unifying hierarchical and optimization perspectives.
Helping to build a decentralized prediction network
4 年July prizes totaling $4,000 https://dev.microprediction.org/july.html Crawling quickstart: https://dev.microprediction.org/crawling.html Article with more details on navigation: https://www.dhirubhai.net/pulse/economical-statistics-how-modify-prediction-crawlers-cotton-phd/ High level explanation of Microprediction.Org mechanics https://www.dhirubhai.net/pulse/short-introduction-z-streams-peter-cotton-phd/