While certain instances of vandalism or policy violations can be relatively easily detected using Machine Learning/AI-based tools, most sophisticated patrolling requires human judgment. The goal of this project is to study the feasibility of using AI-based tools to simplify the way that patrollers discover and prioritize content that requires their attention.
In this task, we are going to create and test a recommender system that matches revisions with patrollers. To do this, we are going to rely on existing ML/AI tools, such as the Revert Risk and Peacock (also known as Tone Check) language detection model scores, to identify revisions that require patrolling. Unlike the [[ https://www.mediawiki.org/wiki/Moderator_Tools/Automoderator | Automoderator ]] or [[ https://www.mediawiki.org/wiki/Edit_check/Tone_Check | Tone Check ]] tools that focus on cases with really high scores (e.g., score > 0.95)—i.e., in cases where the vandalism or policy violation is very clear—in this case, we are going to consider milder scores (e.g., 0.5 < score < 0.9), and try to identify a set of experienced users that can review that content.
The input for this RecSys will be: revision_id, score_p, where score_p is the probability returned by some of the aforementioned models. The output of the RecSys will be a set of N users that are likely to review the revision.
For ground truth, we are going to use the revision history and try to predict which user patrolled a given revision.
The goals for Q1 FY25-26 are to:
[x] [[ https://gitlab.wikimedia.org/dsaez/recsysmoderators/-/blob/main/0_getData_for_analysis.ipynb?ref_type=heads | Create the dataset ]]
[x] [[ https://docs.google.com/presentation/d/12TIxPBo5kF6w0ooVCYX5RJULcsn4RQO25Rb3ln_ejDE/edit?usp=sharing | Define metrics ]] (using recall@K)
[x] Build a RecSys algorithm
[x] [[ https://docs.google.com/presentation/d/1idJ4btAoRTYsYbI78IsAqkBl3UxQU1gbbz8h64Mugo8/edit?usp=sharing | Run an experiment to understand the complexity of the problem ]]
[x] [[ https://gitlab.wikimedia.org/dsaez/recsysmoderators/-/blob/main/3_A_user_to_rev_recsys.ipynb?ref_type=heads | Share a notebook for testing initial recommendations ]]
This work is highly related to proposals by @fkaelin and @pablo T392210. I'm going to coordinate with them to avoid duplicating efforts.