Comment une IA peut devenir raciste ?

La question ne se pose plus. « oui » une IA peut devenir raciste !

Mais comment cela est-il possible et comment s’arranger pour que cela n’arrive pas ?

Tout d’abord une IA c’est quoi ? Tout simplement des valeurs en entrées, des valeurs en sorties et plein de calculs matriciels entre.

Pour simplifier, une IA ajuste des poids dans une grosse matrice pour se rapprocher au plus près des valeurs de sorties. Pour éviter un surapprentissage, les ajustements se font de manière réduite sur chaque poids dans la matrice.

Dans le cas de la fraude bancaire, 99,9% des cas ne sont pas des actions « frauduleuse ». Si on donne a une IA ces données sans traitement, l’IA va se retrouver à ajuster ses poids dans 1 cas sur 999 pour la détection de fraude, les 999 itérations s’occupant de détecter les cas « normaux ». L’IA ne détectera au final jamais rien.

On pratique alors de l’oversampling, c’est à a dire qu’on va lui présenter autant d’actions frauduleuses que d’actions « normales » pour que les poids soient ajustés correctement.

Mais je ne vois pas le rapport avec le racisme ?

On fait cet effort avec nos données de sortie car sinon nous n’arrivons à rien. Nous ne pensons pas à le faire pour nos valeurs en entrée.

Prenons un exemple concret. Imaginons que vous essayez de déterminer si une personne fraude des allocations et que vous avez 80% d’une nationalité dans votre jeu de données, quel va être l’impact ?

L’IA n’a pas de notion éthique et la nationalité a le même impact que toute les autres variables. Si elle se répète fréquemment en entrée et est toujours associée à un résultat « dossier frauduleux » alors cette nationalité a plus de chance d’avoir un dossier susceptible de fraude selon elle. Son calcul matriciel va donc se faire en conséquence.

Il suffit tout simplement de supprimer cette donnée en entrée !

Cette vision est naïve. Pensez-vous qu’il n’est pas possible de faire d’autres corrélations d’information ? Secteur géographique, salaire, nombre d’enfants, âge, au final tout est bon pour faire de la discrimination. Si la discrimination ne se fait pas sur la nationalité, elle se fera sur le secteur géographique car dans le cas de « ghetto », on peut déduire cela en partie !

Pour autant si l’on supprime toutes ces données, on perd tout la substance pour réussir à déterminer un résultat.

Une IA révélatrice des biais de notre propre société

Mais au final si elle se comporte comme telle, elle n’est que le reflet de nos propres préjugés. Si la police ne fait que des contrôles sur des canadiens alors oui il y a plus de chance d’avoir des canadiens en prison. De ce fait nous auto alimenterons une croyance fantasmée que les canadiens sont des criminels. L’IA reflétera statistiquement ce biais sans comprendre l’enjeux qu’il y a derrière.

Mais alors que faire pour éviter cela ?

La réponse la plus simple est d’avoir un jeu de donnée sans aucune discrimination ! Il faudrait alors changer notre société avant de pouvoir utiliser l’IA… cela me semble un poil compliqué.

D’autre solutions pourraient aussi être envisagé

  • Ne pas avoir de jeux de données ! Laisser l’IA se faire sa propre opinion. Ce n’est pas malheureusement pas toujours possible dans certains contextes.
  • Avoir un adversarial network éthique ! 🙂 Une IA qui rentre en compétition avec la première pour vérifier l’éthique ! Encore faut-il pouvoir mesurer qu’est-ce qu’un comportement éthique.
  • Reposer son IA sur des blocs d’extraction d’informations d’autres IA qui ont été entrainés sans aucun biais.

Bref… c’est tout un programme !