Algorithme de scoring de la CAF
Nous présentons ici le code source envoyé par la CAF des deux versions de l'algorithme descoring utilisées respectivement entre 2010 et 2014 puis 2014 et 2018 ainsi que le fichier utilisé pour simuler les scores de risques tels que présentés dans cet article.
Nous présentons ici les détails méthodologiques relatifs à notre article présentant le code source de l'algorithme de notation des allocataires de la CAF.
Des documents acquis de haute lutte
Cet article se base sur le code source de deux versions de l'algorithme. La première a été utilisée entre 2010 et 2014, la seconde entre 2014 et 2018.
L'accès à ces deux versions nous a pris plusieurs mois de travail et d'attente. Elles ont été obtenues via des demandes dites CADA, du nom de la Commission d'Accès aux Documents Administratifs. Après plusieurs demandes sans succès faites auprès de la CAF, nous avons saisi la CADA qui a donné un avis favorable à la communication des deux versions antérieures de l'algorithme. Elle nous a par contre refusé l'accès à la version utilisée actuellement, suivant les demandes de la CAF qui arguait que cela aurait pu aider d'éventuels fraudeurs.
Durant ces longs mois, la CAF aura tout essayé pour nous refuser cet accès. Son principal argument : la communication du code source serait une « atteinte à la sécurité publique » car « en identifiant les critères constituant des facteurs de ciblage, des fraudeurs pourraient organiser et monter des dossiers frauduleux ».
Selon le même argumentaire, elle a d'ailleurs masqué 6 variables du modèle 2010 et 3 du modèle 2014 au motif que ces variables sont encore utilisées dans le modèle actuel. Un argumentaire nauséabond à deux titres. Premièrement, la CAF assume pleinement les logiques policières de ses pratiques de contrôle : pour ses dirigeant·es, les allocataires sont devenu·es des « risques » dont il faut se protéger à tout prix.
Deuxièment, comme nous l'expliquions ici, cet argument est méprisant et insultant. La CAF croit-elle vraiment que des millions d'allocataires précaires - au coeur du ciblage de l'algorithme - pourraient décider, d’un coup, de sortir de la pauvreté afin d’augmenter leur note et de « flouer » l’algorithme ?
Les modèles communiqués et leur entraînement
Les modèles 2010 et 2014 sont des modèles de régression logistique. Le score attribué par le modèle, compris entre zéro et un, correspond à la probabilité qu'un·e allocataire ait reçu des indus (trop-perçus). Ainsi plus le score est proche de un, plus l'algorithme juge qu'un·e allocataire est suspect·e. Cet algorithme sert ainsi à sélectionner les personnes que la CAF juge indignes de confiance et qui feront l'objet d'un contrôle. Le contrôle est déclenché si la note se dégrade trop, c'est à dire si sa valeur se rapproche de un.
La création de l'algorithme passe par une phase « d'entraînement » lors de laquelle l'algorithme « apprend » à reconnaître des &. Cet entraînement se fait sur la base de l'enquête « d’évaluation du paiement à bon droit »1. Cette base comprend plus de 10 000 dossiers ayant fait l'objet d'un contrôle. L'algorithme est entraîné en « comparant » les dossiers pour lesquels des indus ont été détectés et les autres.
Techniquement, l'algorithme est calibré pour cibler le risque d’indus de plus 6 mois et d’un montant supérieur mensuel à 600€.
Etendue des données personnelles traitées pour l'utilisation de ces modèles
Une remarque importante : dans sa stratégie de communication, la CAF cherche à minimiser l'étendue des données personnelles traitées pour l'utilisation de son algorithme. Dans un Vrai/Faux assez trompeur, la CAF écrit notamment qu'il serait faux de dire que le modèle utilise plus de « 1000 données concernant les allocataires ». Certes les modèles utilisés contiennent une trentaine de variables. Mais deux choses sont sciemment omises par la CAF.
Premièrement, l'entraînement du modèle - la sélection des variables retenues - utilise une « base d'apprentissage » contenant plus de 1000 données par allocataire. C'est un directeur de la lutte contre la fraude de la CAF qui l'explique le mieux: «Après le travail de récupération des informations, les statisticiens chargés de la modélisation disposaient d’environ un millier d’informations par allocataire contrôlé. Pour rechercher des éléments déterminants qui signalent le risque d’apparition d’un indu, la base d’apprentissage contient toutes les données habituelles des fichiers statistiques, à savoir les informations sur la situation familiale de l’allocataire, son activité, ses ressources et ses droits aux prestations légales versées par les Caf ». Ainsi le modèle nécessite bien plus de variables que la trentaine retenues à la fin : ces dernières sont une sélection de variables choisies en fonction de leur capacité à prédire les indus.
Deuxièmement, les variables utilisées dans la formule sont construites à partir d'un nombre bien plus grand de variables comme le montre le code. Un exemple parmi d'autres : pour construire la variable « Nb mois en activité sur 12 mois du responsable et du conjoint », la CAF va aller vérifier mois par mois la variable activité pour deux personnes. Sa construction nécessite donc le traitement de 24 variables. Ceci se répète pour l'ensemble des variables prenant en compte un historique.
Il est donc faux - et trompeur - d'avancer, comme le fait la CAF dans le Vrai/Faux mentionné ci-avant, que le modèle ne nécessite « qu'une quarantaine [de variables qui] sont utilisées pour calculer le score de risque. ».
Les variables et leur impact
Le modèle 2010 comprend 37 variables, dont 6 ont été masquées par la CAF, et se décline en 5 sous-modèles : risque familial, de logement, professionnel, global et ressources. Le modèle 2014 comprend un unique modèle et 35 variables dont 3 ont été masquées par la CAF.