nileq's blog

By nileq, history, 18 hours ago, translation, In English

Hi, Codeforces!


Remember this post?

If not, let me remind you. For the last 3–4 days, I have been building a browser extension for Codeforces that shows your pure rank without cheaters.


How does it work?

The idea is simple:

  1. The extension gets the Codeforces contest standings.
  2. It goes through each handle.
  3. It makes a prediction using an ML model based on the user’s performance in previous contests.

Some of the features include: skipped contests, unusually fast rating deltas (+100, +200 after previously gaining only +10 or +20), rating behavior after the first 5 contests when the rating becomes more stable, and other signals. You can check the full list of features in cheating_dataset.csv, which I used to train the classifier.

Interestingly, this extension may also be useful for finding suspicious users after a contest, since the model seems to be fairly accurate.


Examples

Now let me show some examples:

Let’s take a user with a high score. The higher the score, the more confident the model is. For example: studyyyzz.

Let’s check this user:

Maybe the model only catches obvious cases? Let’s take a user with a lower score. For example: HubRis504.

As you can see, it works quite well.


FAQ

  • How can I install this extension?
    To install the extension, check this post.

  • Is the model always correct?
    No. This is an ML model, and ML models cannot be 100% accurate by nature. Please do not accuse people just because the model predicted that they might be suspicious.

  • Can I improve it?
    Yes, of course. It is open-source. You can check the implementation and improve it here: click

  • Vote: I like it
  • -4
  • Vote: I do not like it