Skip to content

SaranaAbidueva/Dota2-prediction

Repository files navigation

Dota 2 Pro games result prediction

Dota 2 is a highly competitive multiplayer online battle arena (MOBA) game that hosts numerous tournaments worldwide.

Objective The goal is to predict the winner of a match based on various factors, including the draft, team composition, players' MMR ratings, and their win rates with the selected heroes.

Such predictions could be valuable for better betting strategies.

Data Sources

Train Tutorial

  1. activate virtual env
venv\Scripts\activate
  1. install requirements
pip install -r requirements.txt
  1. change config.py:
  • root - path to your project.
  • year_month - which data you want to download - for example, 202411 is November 2024.
  1. Download data to local .csv files (takes few hours and around 700 Mb memory).
mlflow run . --entry-point data-downloading --env-manager local --experiment-name catboost2411 --run-name download_data
  1. Transform data for training
mlflow run . --entry-point data-collecting --env-manager local --experiment-name catboost2411 --run-name transform_data
  1. Find best hyperparameters with catboost
mlflow run . --entry-point hyperparameter-tuning --env-manager local --experiment-name catboost2411 --run-name hyperparameter_tuning
  1. Check metrics (Accuracy, F1, ROC-AUC)
mlflow ui
  1. Train best model
mlflow run . --entry-point train-best-model --env-manager local --experiment-name catboost2411 --run-name train_best_model
  1. Run streamlit locally
streamlit run deploy/streamlit_app.py
  1. Enter match ID (the same ID on bet sites)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages