Nous sommes tous entourés par un certain nombre de services de recommandations intelligents.
Lorsque vous écoutez votre playlist Hip Hop LoFi sur Spotify pendant que vous travaillez, ou lisez des articles sur Quora, ou commandez un clavier sans fil sur Amazon, vous êtes observé. Les IA découvrent quels produits vous proposer, ou déterminent la position optimale d’une publicité. Une fois le contenu affiché, le service, site web ou application surveille votre réaction (le fait d’appuyer sur le bouton j’aime, d’ajouter aux favoris, le nombre de vues, de liens cliqués, etc.) et rapporte ce score au service que vous utilisez. Cela garantit l’amélioration continue du modèle d’IA derrière ce service et sa capacité à sélectionner le meilleur élément de contenu en fonction des données contextuelles qu’il collecte. La liste des domaines dans lesquels de tels systèmes sont utilisés est très vaste, allant des films, des livres, de la musique, des actualités aux recommandations des moteurs de recherche et aux labélisations sociales.
Comment ça marche ?
En résumé, nous pouvons définir trois approches principales :
- Basé sur le contenu : pour cela, le système collecte les données à la fois des utilisateurs et des éléments extérieurs. Les propriétés de ces éléments ou des utilisateurs sont en fait les fonctionnalités que vous intégrez à votre modèle ; Ainsi, ce que vous faites vraiment dans cette approche est de calculer la similitude entre les utilisateurs et les éléments pour construire une recommandation.
- Filtrage collaboratif : pour cette approche, les seules choses dont vous avez besoin sont les identifiants article/utilisateur et les notes attribuées par les utilisateurs aux différents éléments. En effet, nous apprenons de tous les éléments qu’un utilisateur a aimés et de tous les différents utilisateurs qui ont aimé un article spécifique. Ces notes seront considérées comme les points communs entre les personnes et les éléments qui permettront de faire une recommandation juste.
- Recommendation hydride : comme vous l’avez peut-être deviné d’après son nom, le principe est assez simple ; Utiliser à la fois le filtrage collaboratif et la recommandation basée sur le contenu pour un meilleur résultat. L’un des exemples est l’algorithme de recommandation Matchbox développé par Microsoft Research. Même s’il existe aujourd’hui des algorithmes plus sophistiqués, Matchbox est un excellent point de départ pour comprendre les principes de l’approche hybride.
Certains systèmes utilisent l’apprentissage par renforcement pour choisir le produit qui convient le mieux à un utilisateur spécifique en fonction du comportement collectif et des scores de tous les autres clients. Un exemple de ce cas de figure peut être les éléments de contenu, tels que des articles de presse, des films spécifiques ou des produits. Ceux-ci nous sont recommandés en fonction de nos goûts, et ces recommandations sont toujours plus précises.
Il existe également des approches exotiques basées sur LDA (Latent Dirichlet Allocation – Allocation de Dirichlet Latente). LDA est un algorithme de modélisation de sujets visant à regrouper votre corpus de documents en un nombre restreint de collections (appelées sujets), pour une meilleure analyse. Le résultat est généralement composé de deux matrices, une distribution sujet par document et une distribution terme par sujet. Cela ressemble à quelque chose comme ça:
document 1 – Sujet 1, Sujet 3
document 2 – Sujet 2, Sujet 1
(distribution sujet-par-document)
Pour adapter l’approche de modélisation thématique, le système considère l’utilisateur comme un document et les éléments qu’il a commandés/aimés/lus comme des termes. Ainsi, il essaie de trouver des utilisateurs et des éléments similaires sur la base d’un regroupement antérieur.
Problèmes connus
La question qui est la plus abordée est l’éthique et l’usage responsable. Outre les règles RGPD et le fait que vos données personnelles soient collectées, il existe des aspects plus importants du problème.
Données démographiques des utilisateurs
Utiliser des catégories comme le sexe, la race, la religion ou l’âge est généralement interdit pour des raisons réglementaires, mais lorsque c’est autorisé, d’un point de vue éthique, vous ne devez pas utiliser ces paramètres comme éléments dans votre système de recommandation. Imaginez simplement un moteur de recherche proposant des articles en fonction de votre âge et de votre religion, et ne montrant pas une information importante qui pourrait vous intéresser simplement parce que vous êtes trop vieux.
Informations locales
Les informations sur la ville/le code postal ou le quartier ne propagent pas à elles seules les biais. Mais ils peuvent être fortement corrélés avec les caractéristiques du paragraphe précédent, ainsi un ingénieur intelligent peut deviner votre race ou votre religion en fonction de votre emplacement.
Perception de l’équité par les utilisateurs
Cette fonctionnalité est très délicate à gérer. Imaginez que votre application soit construite en utilisant tous les principes éthiques, mais son apparence est fortement corrélée aux fonctionnalités mentionnées ci-dessus. Vous devez en fait également tenir compte de la perception des utilisateurs et prévoir les différents scénarios où le contenu de votre application peut varier dynamiquement.
Biais involontaire dans les fonctionnalités
C’est l’aspect le plus compliqué à appréhender, et surtout à gérer. En tant que chercheur en PNL, je peux fournir un exemple concret de propagation de biais dans les caractéristiques textuelles.
Il existe trois types de biais (préexistants, techniques et émergents) et les vectorisations de mots peuvent être confrontées aux trois types. Il est scientifiquement prouvé que des paramètres discriminatoires tels que le sexisme et les stéréotypes ethniques dans le le jeu d’apprentissage (celui que vous avez utilisé pour construire votre vectorisation, comme Wikipédia ou les tweets) sont transférés aux vecteurs de mots, indiquant la présence d’un biais préexistant. Les vecteurs de mots créés par différents modèles donnent des résultats différents sur les tests de référence, ce qui correspond au biais technique. Et enfin, les généralisations sur les interactions sociales basées sur la distance des mots immanents dans un espace de vectorisation, ou en insérant les vecteurs dans un autre modèle de prédiction ou d’inférence, pourraient conduire à ce que les décisions s’écartent des impératifs sociaux communs, ce qui est un exemple de biais émergeant.
Responsabilité
La confiance se construit sur la notion d’engagements tenus. Par conséquent, avant de développer votre IA, vous devez analyser votre audience et votre utilisation des réseaux pour comprendre tous les engagements directs et indirects que vous pourriez avoir. Voici la liste des cas d’utilisation qui pourraient avoir un effet négatif d’un point de vue éthique, et auxquels vous devez donc être extrêmement attentif lors de l’élaboration de votre stratégie :
- Finance : contrats de prêts, financiers et d’assurance
- Éducation : classement scolaires et les établissements d’enseignement
- Démocratie et participation civique : contenu pour les utilisateurs dans le but d’influencer les opinions
- Évaluation de la récompense par un tiers : éléments pour lesquels la récompense est basée sur une évaluation par un tiers de l’utilisateur
- Intolérance à l’exploration : toute situation dans laquelle le comportement d’exploration de votre IA peut être dommageable
Outils
Un excellent exemple d’outil vous permettant de créer un moteur de recommandations sophistiqué est le Personalizer de Microsoft.
Azure Personalizer est un service basé sur le cloud qui aide vos applications à choisir le meilleur élément de contenu à montrer à vos utilisateurs. Vous pouvez utiliser le service Personalizer pour déterminer quel produit suggérer aux acheteurs ou pour déterminer la position optimale pour une publicité. Une fois le contenu présenté à l’utilisateur, votre application surveille la réaction de l’utilisateur et rapporte un score de récompense au service Personalizer. Cela garantit l’amélioration continue du modèle d’apprentissage automatique et la capacité de Personalizer à sélectionner le meilleur contenu en fonction des informations contextuelles qu’il reçoit.
Ce qui est génial avec cet outil, c’est qu’il permet de construire votre système sur la base des meilleures pratiques, telles que :
- Considérez la légalité et l’éthique de l’utilisation de fonctionnalités particulières pour certaines applications ; ainsi que si certaines fonctionnalités, apparemment inoffensives, sont mandataires pour d’autres tandis que vous souhaitez les éviter.
- Expliquez clairement aux consommateurs que l’analyse des données et les algorithmes sont utilisés pour personnaliser le contenu qu’ils voient.
- Réfléchissez à cette question : mes consommateurs se soucieraient-ils et seraient-ils satisfaits si j’utilisais ces connaissances pour adapter le contenu à leurs besoins ? Est-ce que ce serait une bonne chose si je leur montrais comment la décision de mettre en évidence ou de cacher des choses spécifiques a été prise ?
- Utilisez des données comportementales au lieu de données basées sur d’autres critères de classification ou de segmentation.
Les informations démographiques étaient traditionnellement utilisées par les commerciaux pour des raisons historiques – les attributs démographiques semblaient simples à collecter et à exploiter avant l’ère numérique, – mais vous vous demandez peut être dans quelle mesure les informations démographiques sont pertinentes lorsque vous disposez de réelles données d’interaction, contextuelles et historiques, qui se rapportent plus étroitement aux préférences et l’identité des utilisateurs.
- Réfléchissez à la manière d’éviter que les fonctionnalités ne soient « usurpées » par des utilisateurs malveillants, qui, si elles sont exploitées en grand nombre, peuvent conduire à utiliser votre IA de manière trompeuse pour perturber, embarrasser et harceler délibérément certaines catégories d’utilisateurs.
- Lorsque cela est approprié et faisable, créez votre logiciel pour permettre à vos clients de décider ou non d’utiliser certaines fonctions privées. Celles-ci peuvent être regroupées, telles que « Informations de localisation », « Informations sur l’appareil », « Historique des achats passés », etc.
Dans ce court article, nous avons discuté des biais qui peuvent être propagés intentionnellement ou non dans les systèmes de recommandation que vous construisez. Nous avons également vu les principes les plus importants et les meilleures pratiques de conception d’une IA éthique. J’espère que vous le trouverez utile et que certains lecteurs, après avoir lu cet article, auront une meilleure vision de la façon de mettre en œuvre l’IA de manière responsable. Ensemble pour un monde meilleur !
Ecrit par Alibek Jakupov, Data scientist et Microsoft MVP Artifical Intelligence.