Consensus-based Weights
This guide describes how to use the consensus-based weights feature (also called "liquid alpha").
With this feature, a subnet validator's dividends are better correlated to the performance of the subnet miner on which the subnet validator is setting the weights. In this context, see also the documentation for the Commit Reveal feature, as both these features help the subnet validators find new subnet miners that perform well and bond to them quickly.
Technical paper, blog
- See Amplifying the Weight-copying Penalty in Bittensor, a working paper (PDF).
- Blog post: Consensus-based Weights.
- Subtensor document section: Validator bonding.
Collab notebooks
A subnet owner can run the weight_copy/liquid_alpha_diagnostic.ipynb
in the Python notebook below to experiment and choose the right values for the hyperparameters alpha_low
, alpha_high
, and commit_reveal_interval
.
- For commit reveal diagnostic: https://colab.research.google.com/github/opentensor/developer-docs/blob/main/static/weight_copy/commit_reveal_diagnostic.ipynb?authuser=5
- For liquid alpha diagnostic: https://colab.research.google.com/github/opentensor/developer-docs/blob/main/static/weight_copy/liquid_alpha_diagnostic.ipynb?authuser=5
- GitHub directory with Python notebooks.
Description
Currently, while calculating the dividends to a subnet validator, a quantity called , defined as an instantaneous bond value of a subnet validator with the subnet miner , is used.
A subnet validator maintains an instantaneous bond value on each subnet miner. However, while calculating a subnet validator's dividends, instead of directly using the instantaneous bond value , we use , an exponential moving average (EMA) of the bond value, weighted over the current epoch and the previous epoch. See the below equation for how this EMA is computed, where is the current epoch time and is the previous epoch time: