CAF : Lettre ouverte à G. Attal

Après plus d’un an de mobil­i­sa­tion con­tre les pra­tiques de nota­tion des allo­cataires de la CAF, les col­lec­tifs La Quad­ra­ture du net, Stop Con­trôles et Chang­er de Cap [1], et après avoir détail­lé le fonc­tion­nement de l’algorithme de la CAF et son cadre poli­tique, nous pub­lions aujourd’hui le code source de cet algo­rithme de nota­tion. Nous vous invi­tons aus­si à con­sul­ter ici notre page de présen­ta­tion sur l’utilisation d’algorithmes sim­i­laires au sein d’autres admin­is­tra­tions.

Les détails tech­niques de l’algorithme (code, liste de vari­ables et leurs pondéra­tions) et de la méthodolo­gie employée pour la con­struc­tion de pro­fils-types sont présen­tés dans cette annexe méthodologique.

Petit à petit, la lumière se fait sur un sys­tème de sur­veil­lance de masse par­ti­c­ulière­ment per­ni­cieux [2] : l’utilisation par la CAF d’un algo­rithme de nota­tion des allo­cataires visant à prédire quel·les allo­cataires seraient (in)dignes de con­fi­ance et doivent être contrôlé·es.

Pour rap­pel, cet algo­rithme, con­stru­it à par­tir de l’analyse des cen­taines de don­nées que la CAF détient sur chaque allo­cataire [3], assigne un “score de sus­pi­cion” à chaque allo­cataire. Ce score, mis à jour chaque pre­mier du mois, est com­pris entre zéro et un. Plus il est proche de un, plus l’algorithme juge qu’un·e allo­cataire est suspect·e : un con­trôle est déclenché lorsqu’il se rap­proche de sa valeur max­i­male [4].

Nos cri­tiques por­tent tant sur la nature de cette sur­veil­lance pré­dic­tive aux accents dystopiques que sur le fait que l’algorithme cible délibéré­ment les plus pré­caires [5]. Face à la mon­tée de la con­tes­ta­tion, les dirigeant·es de la CAF se sont réfugié·es der­rière l’opacité entourant l’algorithme pour min­imiser tant cet état de fait que leur respon­s­abil­ité dans l’établissement d’une poli­tique de con­trôle délibéré­ment dis­crim­i­na­toire. Un directeur de la CAF est allé jusqu’à avancer que “l’algorithme est neu­tre” et serait même “l’inverse d’une dis­crim­i­na­tion” puisque “nul ne peut expli­quer pourquoi un dossier est ciblé” [6].

C’est pourquoi nous avons batail­lé de longs mois pour que la CAF nous donne accès au code source de l’algorithme, c’est à dire la “for­mule” util­isée par ses dirigeant·es pour not­er les allo­cataires [7]. Nous espérons que sa pub­li­ca­tion mette un terme à ces con­tre-vérités afin, qu’enfin, puisse s’installer un débat autour des dérives poli­tiques ayant amené une insti­tu­tion sociale à recourir à de telles pra­tiques.

La lec­ture du code source des deux mod­èles util­isés entre 2010 et 2018 — la CAF a refusé de nous trans­met­tre la ver­sion actuelle de son algo­rithme — con­firme tout d’abord l’ampleur du sys­tème de sur­veil­lance de détec­tion des allo­cataires “suspect·es mis en place par la CAF.

Sit­u­a­tion famil­iale, pro­fes­sion­nelle, finan­cière, lieu de rési­dence, type et mon­tants des presta­tions reçues, fréquence des con­nex­ions à l’espace web, délai depuis le dernier déplace­ment à l’accueil, nom­bre de mails échangés, délai depuis le dernier con­trôle, nom­bre et types de déc­la­ra­tions : la liste de la quar­an­taine de paramètres pris en compte par l’algorithme, disponible ici, révèle le degré d’intrusion de la sur­veil­lance à l’oeuvre.

Elle s’attache à la fois aux don­nées déclarées par un·e allo­cataire, à celles liées à la ges­tion de son dossier et celles con­cer­nant ses inter­ac­tions, au sens large, avec la CAF. Chaque paramètre est enfin analysé selon un his­torique dont la durée est vari­able. Visant tant les allo­cataires que leurs proches, elle porte sur les plus de 32 mil­lions de per­son­nes, dont 13 mil­lions d’enfants, vivant dans un foy­er béné­fi­ciant d’une presta­tion de la CAF.

Quant à la ques­tion du ciblage des plus pré­caires, la pub­li­ca­tion du code source vient don­ner la preuve défini­tive du car­ac­tère dis­crim­i­nant des critères retenus. Ain­si, par­mi les vari­ables aug­men­tant le « score de sus­pi­cion », on trou­ve notam­ment :

  • Le fait de dis­pos­er de revenus faibles,
  • Le fait d’être au chô­mage,
  • Le fait d’être allo­cataire du RSA,
  • Le fait d’habiter dans un quarti­er “défa­vorisé[8],
  • Le fait de con­sacr­er une par­tie impor­tante de ses revenus à son loy­er,
  • Le fait de ne pas avoir de tra­vail ou de revenus sta­bles.

Comble du cynisme, l’algorithme vise délibéré­ment les per­son­nes en sit­u­a­tion de hand­i­cap : le fait de béné­fici­er de l’Allocation Adulte Hand­i­capé (AAH) tout en tra­vail­lant est un des paramètres impac­tant le plus forte­ment, et à la hausse, le score d’un·e allo­cataire.

Bien enten­du, ces fac­teurs sont cor­rélés et ne peu­vent être con­sid­érés indépen­dam­ment les uns des autres. Il est ain­si prob­a­ble qu’une per­son­ne aux faibles revenus ait con­nu des péri­odes de chô­mage ou béné­fi­cie de min­i­ma soci­aux etc.

Dis­posant tant des paramètres que de leurs pondéra­tions, nous avons pu con­stru­ire dif­férents pro­fils-types d’allocataires pour lesquels nous avons cal­culé les scores de sus­pi­cion [9]. Entre les dif­férents pro­fils-types, nous avons seule­ment fait vari­er les paramètres liées à la sit­u­a­tion pro­fes­sion­nelle, aux revenus, aux presta­tions reçues, à la sit­u­a­tion mar­i­tale ou de hand­i­cap.

Nous tenons à pré­cis­er que pour réalis­er ces sim­u­la­tions, nous devons faire de nom­breuses hypothès­es dont il est par­fois dif­fi­cile de savoir si elles sont justes ou non. Ain­si, les scores simulés ci-dessous sont don­nés à titre indi­catif seule­ment. Nos résul­tats sont toute­fois cohérents avec les analy­ses de Vin­cent Dubois basées sur des sta­tis­tiques agrégées [10]. Dans un souci de trans­parence, nous détail­lons leur con­struc­tion — et ses lim­ites — dans une annexe méthodologique [11].

Les pro­fils-types cor­re­spon­dent tous à des foy­ers com­prenant deux enfants à charge et sont cen­sés cor­re­spon­dre à :

  1. Une famille “aisée” aux revenus sta­bles et élevés,
  2. Une famille “mod­este” dont les deux par­ents gag­nent le SMIC,
  3. Un par­ent isolé gag­nant aus­si le SMIC,
  4. Une famille dont les deux par­ents sont béné­fi­ci­aires des min­i­ma soci­aux,
  5. Une famille dont un des par­ents est travailleur·se en sit­u­a­tion de hand­i­cap : pour ce pro­fil, nous simu­lons le score de la per­son­ne béné­fi­ciant de l’AAH trimes­tri­al­isée.

Les résul­tats sont éclairants comme le mon­tre le graphique ci-dessous. Les “scores de sus­pi­cion” des foy­ers les plus aisés sont bien plus faibles que ceux des foy­ers béné­fi­ciant des min­i­ma soci­aux ou de l’AAH trimes­tri­al­isée.

On observe égale­ment le ciblage des familles mono­parentales, dont 80% sont des femmes [12]. Nos sim­u­la­tions indiquent que ce ciblage se fait indi­recte­ment — la CAF ayant peut-être jugé que l’inclusion d’une vari­able “mère céli­bataire” était trop risquée poli­tique­ment — en inté­grant des vari­ables comme le revenu total du foy­er et le nom­bre de mois en activ­ité cumulés sur un an des respon­s­ables du foy­er, dont la nature vient mécanique­ment défa­voris­er les foy­ers ne com­prenant pas deux par­ents [13].

Il y a quelques mois, la CAF cher­chait à min­imiser la stig­ma­ti­sa­tion des plus pré­caires engen­drée par son algo­rithme en expli­quant que “les scores de risques les plus élevés” ne con­cer­nent pas “tou­jours les per­son­nes les plus pau­vres” car “le score de risque n’intègre pas comme seule don­née la sit­u­a­tion finan­cière” [14]. Nos analy­ses vien­nent démon­tr­er à quel point ce raison­nement est fal­lac­i­eux.

Ce que mon­tre notre graphique c’est juste­ment que les vari­ables socio-économiques ont un poids prépondérant dans le cal­cul du score, désa­van­tageant struc­turelle­ment les per­son­nes en sit­u­a­tion de pré­car­ité. Ain­si, le risque d’être con­trôlé suite à un événe­ment con­sid­éré comme “fac­teur de risque” par l’algorithme – démé­nage­ment, sépa­ra­tion, décès – se révèle inex­is­tant pour un allo­cataire aisé puisque son score est ini­tiale­ment proche de zéro. A l’inverse, pour un allo­cataire du RSA dont le score est déjà par­ti­c­ulière­ment élevé, le moin­dre de ces évène­ments risque de faire bas­culer son score au-delà du seuil à par­tir duquel un con­trôle est déclenché.

Pire, la plu­part des vari­ables non finan­cières sont en fait liées à des sit­u­a­tions d’instabilité et d’écart à la norme – sépa­ra­tion récente, démé­nage­ments, change­ments de loy­ers mul­ti­ples, mod­i­fi­ca­tion répétée de l’activité pro­fes­sion­nelle, perte de revenus, erreurs déclar­a­tives, faible nom­bre de con­nex­ions web… – dont tout laisse à penser qu’elles sont elles-mêmes liées à des sit­u­a­tions de pré­car­ité. A l’opposé de ce que veut faire croire la CAF, tout indique que cet algo­rithme fonc­tionne plutôt comme une “dou­ble peine” : il cible celles et et ceux qui, par­mi les plus pré­caires, tra­versent une péri­ode par­ti­c­ulière­ment com­pliquée.

La CAF ayant refusé de nous com­mu­ni­quer la ver­sion la plus récente de son algo­rithme, nous nous atten­dons à ce que ses dirigeant·es réagis­sent en avançant qu’iels dis­posent d’un nou­veau mod­èle plus “équitable”. En antic­i­pa­tion, nous tenons à clar­i­fi­er un point fon­da­men­tal : il ne peut exis­ter de mod­èle de l’algorithme qui ne cible pas les plus défavorisé·es, et plus large­ment celles et ceux qui s’écartent de la norme définie par ses con­cep­teurs.

Comme nous l’expliquions ici de manière détail­lée, si l’algorithme de la CAF a été pro­mu au nom de la “lutte con­tre la fraude”, il a en réal­ité été conçu pour détecter les “indus” (trop-perçus). Ce choix a été fait pour des ques­tions de rentabil­ité : les indus sont plus nom­breux et plus faciles à détecter que des cas de fraude dont la car­ac­téri­sa­tion néces­site, en théorie, de prou­ver une inten­tion [15].

Or, ces indus ont pour cause prin­ci­pale des erreurs déclar­a­tives involon­taires, dont toutes les études mon­trent qu’elles se con­cen­trent prin­ci­pale­ment sur les per­son­nes aux min­i­ma soci­aux et de manière plus générale sur les allo­cataires en dif­fi­culté. Cette con­cen­tra­tion s’explique d’abord par le fait que ces presta­tions sont encadrées par des règles com­plex­es — fruit des poli­tiques suc­ces­sives de “lutte con­tre l’assistanat” — mul­ti­pli­ant le risque d’erreurs pos­si­bles. Pour repren­dre les ter­mes d’un directeur de la lutte con­tre la fraude de la CNAF : “ce sont les presta­tions sociales elles-mêmes qui génèrent le risque […] ceci est d’autant plus vrai pour les presta­tions liées à la pré­car­ité […], très trib­u­taires de la sit­u­a­tion famil­iale, finan­cière et pro­fes­sion­nelle des béné­fi­ci­aires.” [16].

Nul besoin donc de con­naître le détail de la for­mule de l’algorithme pour prédire quelles pop­u­la­tions seront ciblées car c’est l’objectif poli­tique de l’algorithme — détecter les trop-perçus — qui le déter­mine. C’est pourquoi laiss­er s’installer un débat autour de l’inclusion de telle ou telle vari­able est un jeu de dupes sta­tis­tiques. La CAF pour­ra tou­jours sub­stituer à une vari­able jugée poli­tique­ment “sen­si­ble” d’autres critères jugés “accept­a­bles” per­me­t­tant d’aboutir au même résul­tat, comme elle sem­ble déjà le faire pour les mères céli­bataires [17].

Dire cela, c’est enfin dépass­er le débat tech­nique et recon­naître que cet algo­rithme n’est que le reflet de la dif­fu­sion de logiques ges­tion­naires et poli­cières au sein de nos admin­is­tra­tions sociales au nom des poli­tiques de “lutte con­tre la fraude.

C’est en trans­for­mant les allo­cataires en “assisté·es”, puis en risques pour la survie de notre sys­tème social que le dis­cours de “lutte con­tre l’assistanat” a fait de leur con­trôle un impératif de “bonne ges­tion” [18]. Qu’importe que toutes les esti­ma­tions mon­trent que la “fraude sociale” est mar­ginale et que c’est au con­traire le non-recours aux aides qui se révèle être un phénomène mas­sif.

Devenu objec­tif insti­tu­tion­nel, le con­trôle doit être ratio­nal­isé. Le numérique devient alors l’outil priv­ilégié de “la lutte con­tre la fraude sociale” par la capac­ité qu’il offre aux dirigeant·es de répon­dre aux injonc­tions de résul­tats tout en offrant un ali­bi tech­nique quant aux pra­tiques de dis­crim­i­na­tion général­isée que leur tenue impose.

Ces logiques sont sail­lantes dans la réponse écrite par la CAF pour s’opposer à la trans­mis­sion du code de son algo­rithme, avant d’y être con­trainte par la Com­mis­sion d’Accès aux Doc­u­ments Admin­is­trat­ifs (CADA). Elle assume ouverte­ment un dis­cours polici­er en avançant comme prin­ci­pal argu­ment que cette com­mu­ni­ca­tion con­sis­terait en une atteinte à la sécu­rité publique” car “en iden­ti­fi­ant les critères con­sti­tu­ant des fac­teurs de ciblage, des fraudeurs pour­raient organ­is­er et mon­ter des dossiers fraud­uleux”.

Enfin, un chiffre trans­mis dans la même réponse témoigne de l’emballement ges­tion­naire à l’œuvre et vient soulign­er la dis­pro­por­tion entre les moyens tech­niques déployés et les enjeux financiers. L’algorithme est entraîné pour détecter des trop-perçus s’élevant à 600 euros sur deux ans. Soit donc, 32 mil­lions d’intimités vio­lées par un algo­rithme à la recherche de… 25 euros par mois.

L’Assurance mal­adie, l’Assurance vieil­lesse, les Mutu­al­ités Sociales Agri­coles ou dans une moin­dre mesure Pôle Emploi : toutes utilisent ou dévelop­pent des algo­rithmes en tout point sim­i­laires. À l’heure où ces pra­tiques de nota­tion se généralisent, il appa­raît néces­saire de penser une lutte à grande échelle.

C’est pourquoi nous avons décidé de faire de ces pra­tiques de con­trôle algo­rith­mique une pri­or­ité pour l’année à venir. Vous trou­verez ici notre page dédiée à ce sujet, que nous ali­menterons régulière­ment.

Notes

1Vous pou­vez les con­tac­ter à stop.controles@protonmail.com et contact@changerdecap.net.
2La CAF n’est pas la seule admin­is­tra­tion à utilis­er ce type d’algorithmes, mais elle fut la pre­mière à le faire. Nous revien­drons bien­tôt sur une vision plus glob­ale de l’utilisation de ce type d’algorithmes par les admin­is­tra­tions sociales dans leur ensem­ble.
3Si l’algorithme lui-même n’utilise que quelques dizaines de vari­ables pour cal­culer la note des allo­cataires, celles-ci sont sélec­tion­nées après une phase dite d’“entraîne­ment” mobil­isant plus de 1000 infor­ma­tions par allo­cataire. Pour des détails tech­niques voir l’article de Pierre Collinet Le dat­a­min­ing dans les caf : une réal­ité, des per­spec­tives, écrit en 2013 et disponible ici.
4Les con­trôles à la CAF sont de trois types. Les con­trôles automa­tisés sont des procé­dures de véri­fi­ca­tion des déc­la­ra­tions des allo­cataires (revenus, sit­u­a­tion pro­fes­sion­nelle..), organ­isés via à l’interconnexion des fichiers admin­is­trat­ifs (impôts, pôle emploi…). Ce sont de loin les plus nom­breux. Les con­trôles sur pièces con­sis­tent en la demande de pièces jus­ti­fica­tives sup­plé­men­taires à l’allocataire. Enfin les con­trôles sur place sont les moins nom­breux mais les plus intrusifs. Réal­isé par un.e contrôleur.se de la CAF, ils con­sis­tent en un con­trôle appro­fon­di de la sit­u­a­tion de l’allocataire. Ce sont ces derniers qui sont aujourd’hui en très grande majorité déclenchés par l’algorithme suite à une dégra­da­tion de la note d’un allo­cataire (Voir Vin­cent Dubois, Con­trôler les assistés, p.258).
5Voir avant tout le livre de Vin­cent Dubois pub­lié en 2021. Con­trôler les assistés. Genès­es et usage d’un mot d’ordre”. Sur le sur-con­trôle des pop­u­la­tions les plus pré­caires, voir le chapitre 10. Sur l’histoire poli­tique de la lutte con­tre l’assistanat, et le rôle majeur que joua en France Nico­las Sarkozy, voir le chapitre 2. Sur l’évolution des poli­tiques de con­trôles, leur cen­tral­i­sa­tion suite à l’introduction de l’algorithme et la déf­i­ni­tion des cibles, voir pages 177 et 258. Sur la con­tes­ta­tion des plans nationaux de ciblages par les directeurs de CAF locales, voir page 250.
6Extrait de la réponse d’un directeur de la CAF aux cri­tiques opposées par le Défenseur des Droits à l’utilisation de cet algo­rithme.
7La CAF nous avait ini­tiale­ment com­mu­niqué un code source “caviardé” dans lequel la qua­si-total­ité des noms de vari­ables étaient masqués. Nous avons finale­ment obtenu le code de deux ver­sions de l’algorithme. La pre­mière a été util­isée entre 2010 et 2014. La sec­onde entre 2014 et 2018. Six vari­ables ont tout de même été occultées du mod­èle “2010” et 3 du mod­èle “2014”.
8Con­cer­nant la vari­able liée au lieu de rési­dence, cette dernière fait a pri­ori par­tie des vari­ables masquées dans le code reçu. Elle est toute fois men­tion­nées dans la réponse de la CAF à la CADA, ce pourquoi il nous paraît raisonnable de l’inclure ici. Voir notre annexe méthodologique pour une dis­cus­sion détail­lée de la for­mule.
9Pour ce faire, nous avons simulé les don­nées néces­saires – une trentaine de vari­ables – pour chaque “pro­fil-type” puis util­isé l’algorithme pour cal­culer leur note. Met­tre un lien vers nos sim­u­la­tions.
10Le sur-ciblage des per­son­nes en sit­u­a­tion de hand­i­cap – béné­fi­ci­aires de l’AAH – ne con­cerne que celles dis­posant d’un tra­vail. C’est ain­si que ces résul­tats sont com­pat­i­bles avec les analy­ses du chapitre 10 du livre Con­trôler les assistés de Vin­cent Dubois qui regroupent l’ensemble des per­son­nes en sit­u­a­tion de hand­i­cap. Voir notre annexe méthodologique pour une dis­cus­sion détail­lée de ce point.
11Voir notam­ment une méthodolo­gie alter­na­tive util­isée par Light­House Reports dans son arti­cle sur Rot­ter­dam pour lequel les jour­nal­istes dis­po­saient non seule­ment de la for­mule mais aus­si de don­nées sur les per­son­nes visées. Elle est disponible ici.
12Voir la note de l’Insee disponible ici.
13A revenus égaux, un par­ent seul gagne moins que deux par­ents. Quant au nom­bre de mois d’activité sur une année, il ne dépassera jamais 12 par an pour une famille mono­parentale mais peut aller jusqu’à 24 pour un cou­ple. Ce ciblage est par­ti­c­ulière­ment fort dans les mois qui suiv­ent une sépa­ra­tion, ce type d’évènement dégradant forte­ment le score d’un·e allo­cataire. Voir nos analy­ses addi­tion­nelles en annexe méthodologique.
14C’est ce qu’elle a déjà fait dans son Vrai/Faux” sur le dat­a­min­ing où elle expli­quait que “les scores de risques les plus élevés” ne con­cer­nent pas “tou­jours les per­son­nes les plus pau­vres” car “le score de risque n’intègre pas comme seule don­née la sit­u­a­tion finan­cière”.
15Les témoignages col­lec­tés par Stop Con­trôles ou Chang­er de Cap mon­trent que la néces­sité de prou­ver l’intentionnalité pour qual­i­fi­er un indu de fraude – dont les con­séquences pour un•e allo­cataire sont plus lour­des – est très régulière­ment bafouée.
16Voir Daniel Buchet. 2006. Du con­trôle des risques à la maitrise des risques. Disponible ici.
17Il serait ain­si rel­a­tive­ment facile pour la CAF de sup­primer la référence directe aux min­i­ma soci­aux ou à l’AAH dans son algo­rithme en se lim­i­tant à l’utilisation de la vari­able “faits généra­teurs trimestriels”. Cette dernière ne con­cerne que les allo­ca­tions néces­si­tant une déc­la­ra­tion de ressources trimestrielles : AAH trimestrielle, APL, RSA et prime d’activité. S’agissant du ciblage des allo­cataires du RSA et de l’AAH, la CAF pour­rait ain­si pré­ten­dre, sans trop per­dre de pré­ci­sion, avoir mod­i­fié son algo­rithme en ne retenant dans le cal­cul que cette vari­able “faits généra­teurs trimestriels” tout en con­tin­u­ant à cibler les per­son­nes aux min­i­ma soci­aux.
18Voir avant tout le livre de Vin­cent Dubois pub­lié en 2021. “Con­trôler les assistés. Genès­es et usage d’un mot d’ordre”. Sur le sur-con­trôle des pop­u­la­tions les plus pré­caires, voir le chapitre 10. Sur l’histoire poli­tique de la “lutte con­tre l’assistanat”, et le rôle majeur que joua en France Nico­las Sarkozy, voir le chapitre 2. Sur l’évolution des poli­tiques de con­trôles, leur cen­tral­i­sa­tion suite à l’introduction de l’algorithme et la déf­i­ni­tion des cibles, voir pages 177 et 258. Sur la con­tes­ta­tion des plans nationaux de ciblages par les directeurs de CAF locales, voir page 250.