Curated Proofs Markets: A Walk-Through of Ocean’s Core Token Mechanics

How Ocean maximizes a supply of relevant AI data & services

Trent McConaghy
Ocean Protocol

--

[Update Sep 2021: the article below describes the design presented in the Ocean V1 whitepaper. What was actually shipped was different, based on learnings as we went along. However the goals remain the same, and there are still echoes of this design in Ocean Data Farming.]

Introduction

This article describes Ocean Protocol’s token mechanics via step-by-step examples of how users earn tokens by curating data and making it available. The appendix has video and slides.

Ocean’s objective function (block reward function) is to maximize the supply of relevant AI data/services.

Ocean uses curation markets to signal how relevant an AI dataset or service might be. Curation markets leverage the wisdom of the crowd: people stake on datasets they believe in. In other words, they put their money where their mouth is. In traditional curation markets, the main action for actors is stake and unstake as a means of signaling. Ocean builds on this by binding those staking actions with actual work of making a service available. This is a new token mechanic that we call Curated Proofs Markets (CPMs).

CPMs bind together:

  1. Predicted popularity: a belief in of how popular a service (eg dataset) will be, using curation markets.
  2. Proofed popularity: number of times that a service (eg dataset) was actually used, where each use is verified with a cryptographic proofs.

CPMs do curation on cryptographic proofs.

People earn tokens if they bet on an AI dataset / service and make it available when asked.

Ocean tokens are the main tokens of the network, the unit for buying/selling services and for block rewards. We denote Ocean tokens as “Ọ”. We also need tokens to measure stake in each given dataset/service. For this, we use drops. Drops are derivative tokens of Ocean tokens denoted in “Ḍ”. For example, 100 drops of stake in dataset X is “100 ḌX”. Drops relate to Ocean tokens via curation markets’ bonding curves.

The rest of this article explains what usage of a CPM looks like to users, via a step-by-step example on commons (free) data. There are many other use cases beyond of course, from leveraging marketplaces to privacy-preserving compute.

Claim a Dataset

Meet Alice! She has dataset X.

Now, on the Ocean network she claims copyright on dataset X, and stakes 50 Ocean tokens (50 Ọ) to do so. The Ocean network now holds a pointer to X, that Alice manages.

Now it’s time to vet Alice’s copyright claim. We have a 5 day period for others to check that Alice does indeed have copyright on X. Two other actors check, and they’re both ok with the claim. (If one actor wasn’t ok, that actor would stake a challenge to Alice, and we would go through a cycle to see who was right. But let’s focus on the happy path!) The 5 day period concludes. Now Alice’s copyright claim is ok in the eyes of the network.

Curation Markets and Drops

Drops are the token inside each curation market. They are a measure of the a user’s attention: if a user cares about dataset X, he will stake on dataset X to get drops of X, that is, ḌX. Because there is scarcity of Ocean tokens (Ọ), there is scarcity of drops, which mirrors a user’s scarcity of attention. In short, ḌX are a proxy for mindshare in X.

Drops have value for block rewards and for un-staking, as we shall see later in this walk-through.

Every different dataset and compute service gets its own drops. Therefore a user of Ocean will not only hold Ọ in their crypto wallet, they may also hold ḌX, ḌY, or in general a variety of drops for the datasets and compute services that they’ve staked.

Initiate Curation

Let’s return to the example with Alice.

In the last step, Alice submitted a dataset X, and it passed the vetting period. Now that X is “ok”, the curation market for X is initialized. In X’s curation market, there is a variable supply of Ḍ. Initially, X has zero Ḍ.

The main relation in a curation market is its bonding curve, as shown below. The bonding curve relates the price to buy more drops of X (y-axis) as a function of the current supply of drops (x-axis). As people stake more interest in X, its ḌX supply goes up according to the bonding curve. Bonding curves can take whatever shape the creator wishes. But to reward early adopters, a bonding curve typically makes it more expensive to buy ḌX as more people stake in it; this is the positive slope in the curve.

Back to Alice. Recall that she just staked 50 Ọ. We’re at the far left of the bonding curve because 0 ḌX have been generated. There, each ḌX costs 0.1 Ọ. Alice has staked 50 Ọ, therefore she gained 50 Ọ / 0.1 Ọ/ḌX = 500 ḌX. The supply for ḌX increases from 0 to 500.

Invest More

Alice has high confidence in the popularity of X. So, she wants to purchase 500 more ḌX by staking more Ọ tokens. This would make the supply go from 500 ḌX to 1000 ḌX. In that range, the price is (0.1 + 0.2 Ọ/ḌX)/2 = 0.15 Ọ/ḌX. She buys 500 of them for a total cost of 500 ḌX * 0.15 ḌX/Ọ = 75 Ọ.

Make Data Available, Block Rewards 1

Alice makes dataset X available for download.

Now, Meet Bob! He’s a data scientist. (Aka statistician.)

Bob downloads the dataset for free, from Alice. Alice gets block rewards (on average) because she (a) staked on X, and (b) served it when requested. That is, she fulfilled both requirements in the curated proofs market setting — predicting the service’s need with stake, and provably delivering it.

The amount of reward is (Alice’s stake in X) / difficulty = 1000 ḌX / difficulty. We can think of “difficulty” as the Ocean equivalent to Bitcoin’s hash rate, a measure of the total “power” in the network that’s used to normalize individual contributions. Details are in the Ocean whitepaper.

Referral / Curation

Bob the data scientist now has dataset X. He adds it to his AI modeling problem — training a TensorFlow deep neural network to classify between Doge dogs and all other dogs. He finds that it’s really useful: before, 10% of the time his networks would fail to classify the doge on the left-out test set. Now, it’s only 1% of the time. YES! Doge classifier FTW. (Doge image from here.)

Bob realizes that others will find the dataset useful too. So, he decides to stake in X by 1000 ḌX. This would increase the supply from 1000 ḌX to 2000 ḌX. The average price as the supply changes is (0.2+0.4)/2 = 0.3 Ọ/ḌX. Therefore he spends 0.3 Ọ/ḌX * 1000 ḌX = 300 Ọ, and gets 1000 ḌX.

Now that Bob has invested stake, he wants to make his stake work for him. So he makes X available for download too.

Block Rewards II

Meet Joe! He loves data.

Joe queries Ocean for interesting datasets, and comes across dataset X. Joe decides he wants to play with X. So, on the Ocean network he requests X.

There are two providers of X available: Alice and Bob. Bob is randomly chosen by the network.

Then, Bob makes X available to Joe as promised. Joe downloads it. (If he didn’t, he’d lose his stake in X.) Then, Bob gets block rewards (on average) because he staked on X, and served it when requested. Reward = Bob’s stake in X / difficulty = 1000 ḌX / difficulty. Notice how Alice and Bob get the same reward on average because they have both staked 1000 ḌX. However, Bob had to pay more for that stake in X than Alice, because she was an earlier adopter.

Joe likes the dataset too. He believes in its future popularity. So he stakes 1000 ḌX, at an average price of (0.4+0.6)/2 = 0.5 Ọ / ḌX. Therefore for 1000 drops he stakes 1000 * 0.5 = 500 Ọ.

Block Rewards III: Payoff on Average

Another 100 people download the dataset. It’s becoming popular! Alice, Bob and Joe serve up X ⅓ time each on average, and therefore get equal rewards (because equal Ḍ).

Sell Stake I

Alice considers selling 500 ḌX. Supply is currently 3000 ḌX, therefore average price is (5+6) / 2 = 5.5 Ọ / 10 ḌX. She sells, getting (5.5) * (50) = 275 Ọ. Wow! She originally invested 50 + 75 = 125 Ọ, and she already got that back, and more! Plus she has retained half her ḌX. Early adopter FTW!

Sell Stake II

Joe considers selling 100 ḌX. Average price is (5+3) / 2 = 4 Ọ per 10 ḌX. He’d get (4) * (100) = 400 Ọ. Recall that he spent 5 Ọ/10 ḌX or 500 Ọ for 1000 ḌX. So he’d lose money. He doesn’t sell. He’s a late adopter. Instead, he waits, he thinks others might want to invest.

Conclusion

This article described Ocean Protocol’s token mechanics via step-by-step examples of how users earn tokens by curating data and making it available.

Note: In the current design of Ocean, block rewards are a logarithmic function of stake. The examples here use a linear function, to make it easier for the reader to follow.

Further Reading

Appendix: Video

Appendix: Slides

Follow Ocean Protocol via our Newsletter and Twitter; chat with us on Telegram or Discord; and build on Ocean starting at our docs.

--

--