The backend uses scikit-learn’s QuantileTransformer to convert raw MCQ and FRQ scores into percentile values by learning from a dataset of past scores. When users input their scores on the frontend, the data is sent to a Flask API, where the backend applies the transformer to map the scores to a uniform distribution. This effectively shows each user's percentile ranking compared to the data, which is then returned and displayed on the frontend.
View the how the score predictor work, step-by-step!