The Competitive Coding Rating Predictor is an ambitious project designed to predict a coder's rating on popular competitive programming platforms such as LeetCode, CodeChef, and Codeforces. Leveraging machine learning models, specifically linear regression, lasso regression, and ridge regression, this repository aims to assist competitive programmers in understanding and improving their performance over time.
The project includes a robust data collection pipeline to gather historical data on user submissions, contest performance, and problem-solving patterns from LeetCode, CodeChef, and Codeforces.
Data preprocessing steps are implemented to clean and transform raw data into a suitable format for training the machine learning models. Model Implementation:
Three distinct machine learning models—linear regression, lasso regression, and ridge regression—are implemented to predict a coder's rating.
The models are trained on the collected data, considering various features such as submission count, accuracy, contest participation, and problem difficulty.
The project incorporates cross-validation techniques to ensure the models' generalization to unseen data.
Evaluation metrics such as Mean Absolute Error (MAE) and R-squared are calculated to assess the accuracy and reliability of the prediction models.
A comparative analysis is provided, showcasing the strengths and weaknesses of linear regression, lasso regression, and ridge regression in predicting competitive programming ratings.
The project includes a simple interactive dashboard that allows users to input their coding statistics, triggering the machine learning models to predict their potential ratings on each platform.
Each model's coefficients and important features are explained in the documentation, providing insights into how various factors contribute to the predicted rating.
The repository actively encourages contributions to improve the accuracy of the models, add new features, and enhance the overall prediction capabilities.
By combining machine learning expertise, data-driven insights, and an interactive dashboard, the Competitive Coding Rating Predictor aims to be a valuable tool for competitive programmers seeking to understand their strengths, weaknesses, and potential growth in the competitive coding community.