- Introduction
- Key Features
- Miner and Validator Functionality
- Roadmap
- Running Miners and Validators
- Community
- License
Welcome to Sportstensor, where cutting-edge technology meets sports analytics. We're pioneering the world's most accurate decentralized sports prediction algorithm, powered by the Bittensor network. Our subnet tackles the challenges of high-quality data sourcing, complex data analysis and limited access to advanced machine learning models.
Traditionally, the most accurate sports prediction models have been proprietary, restricting innovation to isolated silos. Collectively, miners and validators are redefining what's possible in this field with the collaborative power of decentralization.
🔑 Open source model development
- Sportstensor continuously builds and develops base models for various sports
- Available on HuggingFace for miners to train and improve on
🏅 Advanced sports analytics
- Strategic planning and performance analysis with predictions made
- Insights and predictions based on historical and real-time data
💰 Performance-based incentives
- Rewards for comprehensive dataset sourcing
- Incentives for developing high-performance predictive models
🌐 User-friendly integration
- Intuitive front-end application
- Seamless access to miner predictions
📈 Scalable improvement
- Dashboard for miner rankings and proximity to target prediction accuracy
- Designed to foster continous model enhancement for world class results
- Receives requests from the Validator containing specific information such as team names and match details.
- Accesses historical data and current statistics relevant to the teams involved in the query from sports databases.
- Utilizes trained machine learning models to analyze the data and predict outcomes such as match scores.
- Submits the predicted score and relevant analysis back to the Validator for confirmation and further action.
- Collects predictions from the Miner, which include the anticipated outcomes and relevant statistical analyses of sports events.
- Compares the Miner's predictions with the actual outcomes of the matches, which are sourced from trusted sports databases and official results.
- Logs the results of the validations for auditing and continuous improvement of the predictive system on the Sportstensor platform
- Launch on testnet (172)
- Develop baseline model for soccer (Major League Soccer)
- Develop baseline model for baseball (Major League Baseball)
- Launch website (sportstensor.com)
- Begin marketing for brand awareness and interest
- Launch front-end application
- Introduce next level of prediction queries and validation metrics
- Collaborations and partnerships with synergistic companies and subnets
- Build our proprietary database for miners
- Achieve competitive baseline prediction accuracy
- Build proprietary LLM chatbot hooked up to miner predictions
- Monetize predictions through front-end
- Market and sales expansion
- Further develop baseline models
- Expand to basketball and NFL to cover the whole year for sports
- Explore niche sports such as eSports and UFC
- Monetize API access to predictions and proprietary database
- Build super secret Sportstensor tool 😉
- Python 3.8+
- Pip
- CPU
- If running on runpod,
runpod/pytorch:2.2.1-py3.10-cuda12.1.1-devel-ubuntu22.04
is a good base template.
- To start, clone the repository and
cd
to it:
git clone https://github.com/xzistance/sportstensor/
cd sportstensor
- Install pm2 if you don't already have it: pm2.io.
- Next, install the
Sportstensor
package:pip install -e .
pm2 start neurons/miner.py --name Sportstensor-miner -- \
--netuid {netuid} \
--wallet.name {wallet} \
--wallet.hotkey {hotkey} \
--axon.port {port} \
--axon.external_ip {ip} \
--blacklist.force_validator_permit
- Home and Away Score Accuracy (Max 0.25 each):
The scoring function calculates the absolute difference between the predicted and actual scores for both the home and away teams. The difference for each team is normalized by a maximum score difference parameter to maintain a scale between 0 and 1. Each team's score accuracy contributes up to 0.25 to the total score. A smaller difference results in a higher score, meaning a perfect prediction (no difference) results in the full 0.25 points.
- Correct Winner Prediction (Max 0.5):
The function determines the winner based on the predicted scores and compares this to the actual match outcome. If the predicted winner matches the actual winner, the full 0.5 points are awarded. If not, no points are awarded for this part of the prediction. Total Score Calculation:
The total prediction score is the sum of the individual scores for the home team, away team, and the correct winner prediction. The maximum possible score is 1.0, achieved by perfectly predicting the home and away scores (0.25 + 0.25) and correctly identifying the match winner (0.5).
- Python 3.8+
- Pip
- CPU
- If running on runpod,
runpod/pytorch:2.2.1-py3.10-cuda12.1.1-devel-ubuntu22.04
is a good base template.
- Utilizing wandb. Set environment variable with
export WANDB_API_KEY=<your API key>
. Alternatively, you can disable wandb with --wandb.off
- To start, clone the repository and
cd
to it:
git clone https://github.com/xzistance/sportstensor/
cd sportstensor
- Install pm2 if you don't already have it: pm2.io.
- Next, install the
Sportstensor
package:pip install -e .
pm2 start vali_auto_update.sh --name Sportstensor-validator -- \
--netuid {netuid} \
--wallet.name {wallet} \
--wallet.hotkey {hotkey} \
--axon.port {port} \
--logging.trace
Note: you might need to adjust "python" to "python3" within the vali_auto_update.sh
depending on your preferred system python.
pm2 start neurons/validator.py --name Sportstensor-validator -- \
--netuid {netuid} \
--wallet.name {wallet} \
--wallet.hotkey {hotkey} \
--axon.port {port} \
--logging.trace
Join the vibrant Bittensor community and find our channel #פ • pe • 41
on Discord.
The Sportstensor subnet is released under the MIT License.