IA en 2024 : OpenAI, les géants tech, et les poids plumes

IA en 2024 : OpenAI, les Géants Tech, et les Poids Plumes

2024 s’annonce électrique dans l’arène de l’intelligence artificielle! OpenAI monte sur le ring, défendant son titre contre une cohorte de géants tech et de challenger. Je me risque à faire 5 prédictions, ou plutôt anticipations, sur le match AI qui va animer nos conversation cette année.

1. OpenAI : l’homme à abattre

OpenAI: toujours leader malgré les turbulences

Le 30 novembre 2022, OpenAI a pris tous les géants de la tech par surprise. En 2024, avec plus de 100 millions d’utilisateurs actif mensuel, 1,3B$ de revenus, et quelques remous à la tête de la compagnie, le statut de pionnier d’OpenAI semble intact. Tout ça me laisse penser qu’il va continuer à leader le marché, à la manière d’Apple pour les smartphones et de Google pour les moteurs de recherche. 

La contre-attaque des titans tech

Les géants comme Google et Apple essaient de riposter avec leurs propres innovations. Google intègre à ses services Gemini, son modèle d’IA multimodal avancé, optimisé pour textes, images, audios et vidéos​. Pour rattraper son retard, Apple mise gros sur l’IA (+1B$ par an) pour enrichir l’expérience utilisateur sur des appareils clés comme l’iPhone et l’iPad. Meta (Facebook) peaufine LLAMA 3, espérant tailler des croupières à GPT-4. Amazon mise évidemment beaucoup sur l’IA avec AWS (Bedrock, Rekognition, Code Whisper…) et sur Anthropic, avec un investissement de 4B$.

Microsoft et OpenAI: un partenariat gagnante

Avec un investissement de plusieurs milliards de dollars – en cash et en serveur Azure, Microsoft tire son épingle du jeu par son partenariat  avec OpenAI, et en intégrant GPT et DALL-E dans son portefeuille de produits. Cette alliance stratégique, n’empêche pas Microsoft de travailler sur ses propres projets d’IA (VALL-E, Phi) et Copilot, sa version maison de ChatGPT qui vient de débarquer sur Android et iPhone.

2. Les défis de l’IA matérielle : OpenAI et Apple

L’aventure périlleuse d’OpenAI dans le hardware

J’adore la philosophie de design de Jony Ive pour les produits Apple – simplicité, l’élégance, la fonctionnalité et l’innovation. Mais même avec lui, OpenAI risque de se heurter aux réalités du développement de matériel, un secteur où la société n’a pas encore fait ses preuves. OpenAI s’est forgé une solide réputation grâce à ses modèles d’IA, mais la conception, la production et la distribution de matériel intelligent sont d’un tout autre ordre. 

L’avantage potentiel d’Apple

Même s’il a un an de retard, Apple se positionne avantageusement pour intégrer la puissance de l’IA dans les appareils qu’on utilise tous les jours. La firme de Cupertino est rarement la première à lancer de nouvelles innovations, mais son habileté à fusionner technologie de pointe et interface utilisateur intuitive pourrait donner un produit unique d’intelligence artificielle. La maturité d’Apple en matière d’intégration de l’hardware et du software pourrait lui conférer une longueur d’avance face aux défis auxquels OpenAI pourrait se confronter.

3. La montée de la compétence en prompt AI

La nouvelle littératie technologique

L’année 2024 marque un tournant dans la manière dont nous interagissons avec les machines. La compétence en prompt AI devient aussi essentielle que savoir effectuer une recherche sur Internet. Pour  Logan Kilpatrick (OpenAI), la capacité à communiquer clairement avec une IA est devenue prépondérante, déplaçant l’importance de la compétence technique vers l’efficacité de la communication humaine. La maîtrise des prompts AI met en évidence la nécessité de savoir interagir avec les intelligences artificielles par le biais du langage naturel.

Communication critique pour l’interaction AI

Avec la génération de l’IA, les compétences traditionnelles en lecture, écriture et parole restent fondamentales, mais doivent être complétées par la capacité à formuler précisément des demandes à une une machine. La fluidité de la communication humaine-IA devient aussi importante que la capacité à coder ou à analyser des données. Je ne serais pas étonné que cette nouvelle compétence langagière soit enseigné bientôt à l’école.

Formation et adaptabilité: clés de la compétence AI

Alors que l’IA se fraye un chemin dans la prise de décision en entreprise, la curiosité et l’adaptabilité émergent comme des qualités essentielles. Les travailleurs devront se former et comprendre les nuances des outils d’IA pour les utiliser à bon escient et anticiper leurs implications. Les compétences en prompt AI ne seront plus l’apanage de quelques initiés mais vont devenir impératives pour tous, induisant une transformation profonde des perspectives de marché du travail, d’éducation et de formation professionnelle. 

4. L’Impact transformateur de l’IA sur le marché du travail

Révolution des rôles et compétences

L’avancée de l’intelligence artificielle va transformer le marché du travail en 2024, pour atteindre un point de basculement majeur. Alors qu’on imaginait des robots remplacer les métiers manuels, ce sont finalement les emplois de cols blancs qui sont le plus touchés. D’après une étude de Pew, près d’un cinquième des travailleurs américains occupent des postes hautement exposés à l’IA, notamment des analystes budget, des spécialistes de la manipulation de données et des développeurs Web. L’IA reconfigurent ces métiers, exigeant non seulement l’automatisation, mais également l’amélioration des capacités analytiques humaines.

Défis et opportunités dans l’automatisation

La Gen AI en particulier présente des défis uniques pour les professions intellectuelles. Une étude de Pearson a découvert que, en Inde, certaines tâches des emplois de cols blancs pourraient être automatisées à un taux de 30 % ou plus, contre moins de 1 % pour les emplois de cols bleus. Des analyses menées par la Harvard Business School et le Boston Consulting Group montrent qu’avec l’utilisation de GPT-4, des consultants ont vu leur productivité s’accroître de façon significative en termes de vitesse et de qualité, bien que pour des problématiques plus complexes, la précision des réponses générées puisse être affectée.

Adaptation et stratégies futures

Pour anticiper les bouleversements induits par l’IA, l’adaptabilité devient donc essentielle. Les professionnels vont devoir se tourner vers la formation continue et le développement de compétences qui sont en synergie avec l’IA — comme la pensée critique et la résolution de problèmes. Les entreprises, de leur côté, peuvent s’appuyer sur l’IA pour non seulement automatiser les fonctions routinières, mais également optimiser la prise de décisions stratégiques. C’est l’opportunité pour les travailleurs d’investir dans des tâches à plus forte valeur ajoutée et cultiver des compétences intrinsèquement humaines.

5. L’ascension des mini-modèles d’IA

Un futur redéfini par les mini-modèles

En 2024, l’ascension des mini-modèles d’IA annonce un changement de paradigme dans le monde de l’intelligence artificielle. Après l’ère des colosses comme GPT-4, avec ses 1,7 trillion de paramètres, l’attention se tourne vers des solutions plus petites, agiles et économiques. Ces modèles compacts, avec des capacités allant de 2,7 à 3 milliards de paramètres pour des entités comme Phi-2 de Microsoft et Dolly v2-3b de Databricks, respectivement, offrent des avantages incontestables: une empreinte écologique réduite, une intégration dans des dispositifs variés, et une spécialisation accrue.

Personnalisation à la portée de la main

Imaginez un futur où chaque smartphone et objet connecté héberge un mini-modèle d’IA personnalisé, capable de s’adapter et de se spécialiser selon les besoins et les habitudes de son utilisateur. Ces assistants AI ultra-personnalisés pourraient gérer des tâches variées, allant de la gestion de l’emploi du temps à des recommandations sur mesure, en passant par l’analyse de données de santé, offrant ainsi une expérience utilisateur hyper individualisée et intuitive.

Révolution dans le monde professionnel

Dans le domaine professionnel, les mini-modèles d’IA se profilent comme les nouveaux artisans de la productivité et de l’innovation. Chaque métier, chaque tâche en entreprise pourrait bénéficier de son propre modèle AI spécialisé, conçu pour optimiser les processus, faciliter la prise de décision, et stimuler la créativité. Des modèles d’IA dédiés pourraient transformer des secteurs entiers, des ingénieurs utilisant des modèles spécialisés dans l’optimisation de la conception, aux médecins s’appuyant sur des AI pour des diagnostics plus précis.

Comment limiter les biais dans un produit de machine learning

Ce que Twilio a réussi pour les communications et Stripe pour le paiement sur Internet, une compagnie pourrait offrir un jour aux développeurs un système d’APIs aussi simple pour intégrer des fonctions d’intelligence artificielle dans une application. Open AI et Hugging Face rendent déjà disponible des modèles qui sont de plus en plus avancés, et des plateformes de machine learning no-code font leur apparition.

L’accessibilité grandissante de ces technologies rend d’autant plus important le besoin de comprendre les risques liés aux biais de machine learning. C’est aussi une opportunité unique de développer des produits intelligents qui ont un impact positif sur notre société. Je propose de clore ce dernier chapitre avec un partage de conseils optimistes et réalistes sur les responsabilités d’un gestionnaire de produit en machine learning.

Un grand merci pour leur généreuse contribution à cette réflexion:

On a déjà tout dit sur le biais en machine learning

Selon Maria Luciana Axente, AI for Good Lead à PwC UK et invitée au podcast de Sama, le sujet du biais en machine learning serait déjà bien maîtrisé, et il faudrait davantage parler d’éthique en AI. Il y a en effet énormément de publications académiques sur le sujet – 927 000 résultats sur Google Scholar. Mais les solutions pour limiter les biais en machine learning sont-elles forcément bien comprises et appliquées par ceux qui développent des applications?

Le sujet est tellement vaste, que c’est facile de s’y perdre. Ce qui était mon cas pour les dernières semaines où j’ai croisé le lapin blanc lors de mes recherches. Pour me concentrer sur les bonnes pratiques de gestion de produit avec du machine learning, j’ai essayé de contenir les discussions sur le biais autour de 5 grands points:

  • Une définition du biais machine learning
  • Les questions à se poser avant de commencer
  • Le travail sur les données pour réduire les biais
  • Les bonnes pratiques pour réduire les biais
  • Les outils pour un machine learning plus responsable

Une définition du biais en machine learning

Si on se réfère à Wikipédia, un biais peut-être une ligne oblique ou un moyen détourné. En statistique, c’est un écart de valeur. En psychologie sociale, on parle de biais cognitif. En méthodologie scientifique, un biais est une erreur dans la méthode qui engendre des résultats erronés. Enfin, un biais algorithmique est le fait que le résultat d’un algorithme d’apprentissage ne soit pas neutre, loyal ou équitable.

Dans mes discussions sur le biais en machine learning, j’ai souvent eu des références au biais cognitif et à l’aspect culturel (homme/femme, blanc/noir, riche/pauvre…). À chaque fois, le biais est assimilé à un préjugé, et une discrimination consciente ou inconsciente.

Pour y voir plus clair, on pourrait imaginer un recensement de tous les cas de figure de biais selon le contexte d’application d’un algorithme, ce qui serait un travail colossal.

Ça aiderait d’avoir une liste de tous les cas possibles de biais dans tous les domaines d’activité.

Jérôme Pasquero

Pour commencer quelque part, Catalyst a identifié 11 types de biais inconscients ou implicites pour aider à combattre la discrimination des femmes en emploi:

  1. Le biais d’affinité
  2. L’âgisme
  3. Biais d’attribution
  4. Biais de beauté
  5. Biais de confirmation
  6. Biais de conformité
  7. L’effet de contraste
  8. Le biais du genre
  9. L’effet de halo
  10. Le préjugé du nom
  11. Le biais du poids

Les questions à se poser avant de commencer

Même si nous sommes tous conscients de l’aspect négatif des biais, la réalité est qu’un gestionnaire de produits de machine learning n’a pas toujours le temps de se poser ces questions et d’analyser l’impact potentiel sur la société en général et la compagnie en particulier.

Quand on part un produit avec une composante ML, on a tellement de choses à faire que la gestion du biais n’est pas une super haute priorité.

Jérôme Pasquero

Pourtant, l’intelligence artificielle est mise en position de prendre des décisions de plus en plus importantes sans supervision humaine et qui affectent notre vie de tous les jours. Par exemple, dans le cas de l’évaluation du crédit des particuliers ou des probabilités de récidive des criminels, des algorithmes d’intelligence artificielle sont utilisés pour prendre des décisions qui sont critiques pour les personnes affectées.

Il est primordial de s’assurer que les décisions prises par les applications de machine learning sont équitables et n’introduisent pas de biais indésirables pour les personnes affectées.

Philippe Bouzaglou

Les personnes à impliquer dans la discussion.

Il faut s’entourer d’experts du domaine dans lequel on opère et des gens que nos systèmes affectent pour s’assurer de réduire les zones d’ombre, et identifier les questions qu’on ne se posait pas.

Philipe Beaudoin

Prendre en compte le contexte.

Le préjudice se produit dans un contexte. Ce n’est donc qu’en tenant compte de son utilisation que l’on peut mesurer le préjudice.

Mrs X

Il faut être proactif.

Si elle est nécessaire en machine learning, la traçabilité ne règle pas tous les problèmes. C’est mieux d’être proactif dès le début du projet.

Jérôme Pasquero

Mettre en accord le système avec les valeurs de la compagnie.

La pratique numéro 1 est de se poser les questions difficiles à tous les niveaux, sur l’éthique, les biais, les valeurs de l’entreprise et la manière dont elles sont reflétées par les décisions que le système de machine learning prend.

Philipe Beaudoin

Les tableaux de bord à mettre en place.

Si on ne trouve pas les réponses à nos questions, il faut engager les frais nécessaires pour développer les dashboards et outils qui permettront d’avoir la réponse.

Philipe Beaudoin

Le travail sur les données pour réduire les biais

Pour Kate Crawford, autrice de l’Atlas du AI, pour combattre les biais en AI on devrait davantage se poser de questions sur les pratiques fondamentales de classification et sur les données d’entraînement qui les accompagnent – ImageNet, UTKFace et DiF. Ces classifications héritent d’une vision politique et de normes sociales archaïques, tant en termes de race que de genre. ImageNet Roulette est une mise en perspective provocative de l’impact de ces biais.

Il faut mettre en place des solutions pour gérer l’ambiguïté du monde avec une classification qui prend en compte tout l’éventail de couleurs qui nous entoure.

Kate Crawford

Le Dr Sasha Luccioni et David Rolnick viennent de publier un papier sur la mauvaise représentation de la biodiversité par ImageNet et les résultats sont incroyables: 12 % des images ne contiennent pas réellement les espèces qu’elles sont censées contenir et certaines classes contiennent plus de 90% de labels erronés. La faible qualité de ces données est un problème majeur quand on sait qu’elles servent de référence principale pour développer de nombreux modèles de machine learning.

Le problème est quand le biais est basé sur des préjugés, car les données avaient déjà incorporé ces préjugés.

Jérôme Pasquero

L’origine des données compte tout autant que le volume de données.

On doit vérifier les données entrantes sur lesquelles on entraîne l’algorithme. Ces données devraient être balancées et adéquatement représenter la population sur laquelle l’algorithme sera appliqué. On doit également s’assurer d’avoir le plus grand nombre de données entrantes pour que les biais qui apparaissent se perdent dans la foule de données.

Philippe Bouzaglou

La manière de classer les données.

Les gens veulent éviter les cas catastrophiques qui touchent au racisme ou au sexisme. Une des solutions est de diversifier le plus possible le profil des personnes qui annotent les données.

Jérôme Pasquero

Obtenir des données en situation réelle.

N’utilisez pas d’anecdotes pour guider votre développement, mais des données recueillies dans une application réelle avec de vrais utilisateurs. Lorsque de telles données ne sont pas disponibles, essayez d’obtenir la plus proche approximation possible.

Mrs X

Les bonnes pratiques pour réduire les biais

Tester, apprendre et itérer rapidement.

Il ne faut pas perdre du temps à optimiser les modèles ou bloquer le déploiement en production en attendant de produire le modèle avec un score très élevé. Le plus rapidement que l’on a du feedback de l’utilisateur final, le plus vite qu’on obtient des pistes sur les améliorations potentielles ou la validation d’hypothèse de travail de départ.

Salma Naccache

Rester pragmatique.

Pensez à l’utilisation réelle du produit dans le contexte où il sera déployé. Acceptez le fait que la perfection peut conduire à l’inaction, donc comparez toujours le nouveau système au système précédent et s’il s’agit d’une amélioration, effectuez le changement.

Mrs X

Être réaliste.

Concentrez-vous sur les dommages réels que le système peut causer, tels qu’ils sont signalés par les utilisateurs réels, et non sur les dommages imaginaires sortis à travers des hypothèses faites par vous, des universitaires ou un groupe de défenseurs quelconque.

Mrs X

Contrairement à un produit traditionnel, qu’on peut laisser aller avec un minimum de supervision et qui opérera bien dans le cadre pour lequel il a été conçu, une application avec du machine learning a besoin de suivi constant.

Un système de ML se rapproche beaucoup d’une organisation (d’un paquet d’humains, mais en plus naïfs — avec moins de “gros bon sens”) et il faut le monitorer et le contrôler de la même façon qu’on monitor et contrôle une organisations/une compagnie.

Philipe Beaudoin

Prévoir des ressources pour le suivi dans le temps.

Une des différences primordiales d’un système de ML comparé à un système traditionnel c’est que la majorité des coûts de développement pourraient être engendrés après le déploiement, parce qu’il faudra développer les outils requis pour répondre à nos questions.

Philipe Beaudoin

Les outils pour un machine learning plus responsable

Comme on l’a vu dans l’article sur la gestion de produit avec du machine learning, on manque de processus de tests en continu pour ce type d’application, qui font pourtant la force du développement logiciel traditionnel. Le problème est que les outils adaptés pour faire ces tests et analyser les biais qui pourraient être engendrés sont pas ou peu disponibles.

Les produits pour tester un modèle et essayer d’identifier les biais potentiels ne sont qu’à leurs balbutiements, et ils sont plus orientés pour le NLP, mais pas encore pour le computing vision.

Jérôme Pasquero

Les grands joueurs de la tech se sont positionnés sur le thème du “AI responsable”: Amazon, Google, Microsoft. Ils proposent des conseils et des frameworks pour essayer de développer du machine learning plus responsable, éthique et juste. Mais les bonnes pratiques qu’ils partagent offrent des solutions plutôt conceptuelles.

Quelques outils qui s’attaquent à une partie du problème (sélection arbitraire):

  • Giskard: Open-source and self-hosted CI/CD platform for ML teams.
  • Azimuth: Open source application to perform dataset and error analyses.
  • Tensorleap: Analysis, debugging, and optimization platform for deep neural networks.
  • Armilla AI: QA for ML Platform to govern, validate and monitor algorithms.
  • Credo AI: Responsible AI Platform
  • Fiddler AI: Model performance management.

La plupart de ces outils offrent trois grandes fonctionnalités:

  1. Expliquer des biais potentiels et aider à les corriger
  2. Expliquer pourquoi un modèle prend certaines décisions (explicabilité)
  3. Vérifier la conformité de modèles à différentes normes pour le suivi d’audit (traçabilité)

En plus de la détection de biais, ces outils permettent d’expliquer pourquoi un modèle prend certaines décisions. Ils vérifient également la conformité des modèles à différentes normes où une compagnie pourrait être auditée, comme en finance ou en assurance.

Il est important d’expliquer aux utilisateurs, de manière claire et concise quelles sont les données qui sont utilisées et leur donner le choix de souscrire ou non à ce type d’application.

Salma Naccache

Conclusion

Finalement, mon analyse n’a rien de représentatif ni de scientifique dans sa démarche. Pire, je dois bien admettre un important biais dans les personnes que j’ai interviewées, car je les connais personnellement et je partage certaines valeurs avec elles.

Mais ces cinq personnes partagent toutes un certain optimisme pour le développement de produits de machine learning qui sont plus respectueux de leurs utilisateurs. Ça ne les empêche pas d’être réalistes sur les défis de la profession et les risques encourus à prendre le sujet trop à la légère.

Machine learning responsable: entre optimisme et réalisme

Dans la plupart des cas, les algorithmes ont été créés par un ingénieur dans des conditions de laboratoire sans égard aux répercussions lors de leur application.

On doit voir à ce que le remplacement des humains dans ces processus de décision serve à réduire les préjugés et biais présents dans le système et non à les amplifier.

Philippe Bouzaglou

Limiter les risques pour la compagnie.

Les risques liés au développement de systèmes de ML sont beaucoup plus grands que ceux liés aux logiciels traditionnels. Si on ne le fait pas de manière responsable, c’est un passif très important pour l’entreprise. Une dette sournoise qui n’apparaît pas dans les livres, mais qui peut faire très mal le jour où le système dérape.

Philipe Beaudoin

Apporter plus de transparence.

Il y a un grand potentiel pour l’IA de contribuer à l’amélioration des habitudes de vie des utilisateurs des produits qui en implémentent. En contrepartie, il faut s’assurer que les données personnelles soient anonymisées, et que la vie privée des utilisateurs soit respectée.

Salma Naccache

Aider à faire des choix plus responsables

La situation planétaire et la conjoncture économique actuelle demandent que l’IA soit exploitée dans le but d’encourager les gens à faire des choix écoresponsables ou à adapter des habitudes de vies écoconscientes.

Salma Naccache

La sécurité des applications de machine learning amène le succès.

Plus le degré de sécurité d’une IA est élevé, plus on lui confiera des missions dans des environnements complexes.

Mrs X

La sécurité des applications de machine learning augmente les revenus.

Que vous soyez motivé par le profit ou par le désir de voir votre système largement utilisé, plus votre système est sûr, plus les gens paieront pour l’utiliser.

Mrs X

La bonne nouvelle est que les personnes qui développent des modèles de machine learning sont très sensibles à l’impact des biais.

Pour beaucoup de professionnels, les critères éthiques sont importants pour choisir de travailler pour une compagnie.

Jérôme Pasquero

Lutte contre les biais: arbitrer ou laisser faire

Même si ce n’est pas dans le top des priorités des gestionnaires de produits en machine learning, il y a un consensus sur la nécessité de combattre les biais pour limiter les conséquences sur la compagnie et la société.

Deux choses peuvent aider à diminuer les biais et plus largement l’impact négatif que peut engendrer un produit avec du machine learning.

  1. Le gouvernement avec la mise en place de règles très claires (localisation, accessibilité…)
  2. Gestion de risque de la compagnie (impact PR)

Au fil de mes discussions, je me suis rendu compte que la gouvernance nécessaire pour appliquer les solutions n’est pas vue de la même manière par tout le monde.

D’un côté, il y a les adeptes de la gouvernance interne, où les compagnies devraient être les seuls maîtres à bord et décider ce qui a un impact négatif ou non.

De l’autre, il y a les pro gouvernance externe, des interventionnistes pour qui des standards d’algorithmes responsables devraient être mis en place par les institutions publiques et ensuite imposés aux compagnies.

La solution pour combattre les biais en machine learning est probablement à la rencontre des deux visions. L’industrie pourrait établir des standards clairs, en collaboration avec des institutions publiques (cf. Ethics guidelines for trustworthy AI), et offrir aux utilisateurs une transparence de l’origine des modèles (cf. Model Cards).

Plénitude ou béatitude

Dans le livre AI2041, le Dr Kai-Fu Lee analyse l’impact futur des applications en intelligence artificielle. Dans sa conclusion, il est particulièrement optimiste et va jusqu’à parler d’une société qui grâce au AI va rentrer dans l’âge de la plénitude. À contrario, dans son Atlas du AI, Kate Crawford décrit une certaine béatitude de la profession et une société qui n’est pas consciente des ravages de la technologie.

Ni en état de plénitude ni de béatitude, j’ai le sentiment que nous devons simplement continuer à nous informer sur l’impact des biais en machine learning, et être conscient des opportunités et défis de développer des applications plus inclusives et responsables.

Quelles sont les compétences pour développer un produit en machine learning

Dans ma quête pour comprendre les défis de développement d’un produit de machine learning, j’ai demandé à 5 professionnels en intelligence artificielle de m’aider à identifier les compétences clés spécifiques à ce type de projet. Loin d’être une étude scientifique, ces témoignages donnent une bonne idée des talents qu’on devrait retrouver autour de la table.

Un grand merci pour leur généreuse contribution à cette réflexion:

Les qualités professionnelles pour un produit de machine learning

L’évolution la plus importante dans le domaine et le passage d’un métier lié au pur développement de modèle de machine learning, à un ensemble de métiers qui couvrent tout le cycle de développement de produits avec des composantes de machine learning.

  • Le mouton à 5 pattes
  • Les qualités à développer
  • Les défis ont changé

Le mouton à 5 pattes

Dans l’idéal, le responsable d’un produit avec du machine learning maîtrisera les trois composantes essentielles que sont les données, le modèle et le logiciel. Certaines compagnies s’orientent vers un scientifique de données fullstack pour développeur leur produit de machine learning.

Un profil fullstack devra explorer les données et réaliser l’approche scientifique pour le développement des modèles. Il devra être à l’aise à produire un cadre conceptuel pour le développement et le paramétrage de modèles.

Salma Naccache

La difficulté est de trouver autant de qualités dans une seule personne. C’est surtout un risque pour la pérennité du produit, dont la maintenance dépendrait entièrement de cette personne. Une équipe pluridisciplinaire est mieux adaptée pour couvrir les défis du cycle de vie du produit.

C’est idéal d’avoir dans l’équipe un mélange de profils qui connaissent les algorithmes de ML, les techniques opérationnelles et qui possèdent l’expertise du domaine d’activité de l’application.

Philippe Bouzaglou

Science de données

Les compétences en science des données sont évidemment un prérequis en machine learning.

Il faut se mettre le nez dans les données avant de se lancer et de développer du gros ML.

Philipe Beaudoin

Le scientifique de données explore les données pour en identifier les caractéristiques, les lacunes et recommander le type de modèles, les paramètres et les métriques de performance à suivre.

Salma Naccache

Développement logiciel

Pour développement un produit avec du machine learning, il faut des compétences en machine learning et évidemment en développement logiciel.

Ça prend de très bons ingénieurs en développement logiciel. On n’y échappe pas!

Jérôme Pasquero

Il y a de plus en plus de gens qui ont commencé dans le logiciel et qui se sont lancés dans le machine learning.

Ce sont des profils que j’aime beaucoup, car ils savent programmer et ils ont compris les subtilités du machine learning.

Jérôme Pasquero

La pluridisciplinarité des équipes de développement en ML rend le rôle du lead technique d’autant plus important pour assurer une bonne communication et une exploitation optimale des ressources matérielles et logicielles.

Le lead technique s’assure de l’interopérabilité des modèles qui sont produits par l’équipe ML et exploité par l’équipe d’ingénierie logicielle.

Salma Naccache

Ingénierie de données

Des compétences en ingénierie de données sont nécessaires pour bien gérer un système de machine learning.

L’ingénieur de données orchestre l’ingestion et l’exploitation efficace des données, qui sont ensuite exploitées par le scientifique de données et l’ingénieur ML.

Salma Naccache

Les trois missions principales de l’ingénieur de données sont de:

  • Connecter les sources de données ensemble jusqu’au système,
  • Mettre en place l’infrastructure permettant de faire un réapprentissage régulier,
  • Développer les outils diagnostiques pour garder un œil sur le système

Il faut s’assurer que le projet ne “pourisse” pas quelques mois après avoir été exécuté.

Philipe Beaudoin

ML Ops

Quand un DevOps rencontre du machine learning, il devient un ML Ops.

Le ML Ops s’assure que les modèles qui roulent en production soient accessibles et exploitables à tout moment et de manière fluide, tout en réduisant les temps et les capacités de calcul.

Salma Naccache

Gestion de produit ML

En plus de la gestion de projet et du développement logiciel, le gestionnaire de produit en machine learning doit être à l’aise avec la gestion de cycle de vie et le suivi de performance des modèles.

Le gestionnaire de produit doit comprendre le besoin des clients, être à l’aise à participer dans les discussions autour du développement de modèles ML pour prioriser les tâches, et délivrer des feuilles de route qui sont réalisables dans les temps alloués.

Salma Naccache

En machine learning, le gestionnaire de produit qui a une expertise dans le domaine d’activité de l’application (ex. imagerie médicale) aura plus de facilité à interpréter les résultats dans le contexte réel de l’application du logiciel.

Les qualités à développer

Conception de pipeline

Le machine learning consiste à construire des pipelines réutilisables qui permettent une expérimentation continue où toutes les étapes du processus doivent être claires et tous les résultats documentés. Contrairement au code qui peut être autodocumenté, si le pipeline ne fournit pas un historique clair de ce qui a été réalisé, beaucoup de temps peut être perdu à répéter les mêmes expériences inutilement.

Il faut investir beaucoup de temps dans l’ingénierie des processus et des pipelines plutôt que de tester des idées de façon ponctuelle.

Mrs X

Pragmatisme

Le ML est un vaste domaine avec des centaines d’articles explorant chaque petit aspect du modèle. Les équipes peuvent se perdre dans les détails et finir par passer un temps disproportionné sur des aspects qui ont peu d’impact sur leur objectif. L’objectif doit être clair pour tous et l’approche adoptée doit être la plus simple possible pour atteindre l’objectif.

Il ne faut pas utiliser des choses complexes lorsque les choses les plus simples suffisent… ce qui est le cas dans un nombre surprenant de cas.

Mrs X

Pilotage par les métriques

La réussite d’un projet de machine learning passe par une bonne communication des métriques clés avec les équipes – ingénierie et machine learning, et avec les exécutifs de la compagnie qui doivent comprendre l’impact du projet. Des tableaux de bord plus abstraits pour l’exécutif et plus détaillés pour la gestion de produit.

Il faut que toute la chaîne de management – gestion de produit jusqu’à l’exécutif, comprenne les spécificités d’un système à base de ML et des nouveaux risques que ça pose.

Philipe Beaudoin

Une grande partie de la réussite du projet dépend de l’existence de mesures et de pipelines d’évaluation clairs qui permettent de choisir une solution rationnelle et sans artifice.

Mrs X

On doit poser régulièrement des questions éthiques – comme sur les biais qu’on souhaite éviter, et s’assurer que nos tableaux de bord permettent de répondre à ces questions.

Philipe Beaudoin

Les défis ont changé

On trouve maintenant en libre accès sur GitHub des modèles fournis par de grands joueurs de l’industrie, comme OpenAI et Hugging Face. Ces ressources rendent finalement des profils en développement logiciel mieux équipés que quelqu’un qui a étudié l’architecture de modèle au doctorat.

Avant, C’était surtout une « game » pour arriver avec une meilleure architecture des modèles. Aujourd’hui, il est davantage question de savoir si on a les bonnes données, si on sait les intégrer dans en produit et l’entraîner correctement.

Jérôme Pasquero

Comment gérer un produit avec du machine learning

Suite à mon article sur les biais en machine learning et le développement responsable des produits en AI, j’ai interrogé cinq personnes qui vivent ces défis au quotidien. Data Scientist, Product Manager et responsable d’équipe, ils/elles ont en moyenne 10 ans d’expérience en intelligence artificielle dans des PME et très grandes compagnies.

Pour identifier l’origine du biais en ML, j’ai cherchais à comprendre avec mes interlocuteurs les défis propres au développement ce type de produit. Nos échanges étaient tellement riches – et ils auraient pu continuer encore longtemps, que j’ai découpé les principaux apprentissages en trois articles:

  1. Comment gérer un produit avec du machine learning
  2. Quelles sont les compétences pour développer un produit de machine learning
  3. Comment limiter les biais dans un produit de machine learning

Un grand merci pour leur généreuse contribution à cette réflexion:

Boom des développements en machine learning

Aidés par un afflux massif d’argent, les développements en machine learning ont explosé ces cinq dernières années. Tous produits confondus, les startups en intelligence artificielle ont récolté 144 milliards de dollars d’investissement entre 2017 et 2021.

On manque encore de recul, mais on sait déjà qu’il est difficile d’appliquer exactement à un produit de machine learning tout ce qu’on a appris depuis 30 ans pour le développement logiciel traditionnel. À l’aide de mes cinq experts, j’ai donc identifié quatre points importants pour aider à bien gérer les défis spécifiques d’un produit de machine learning

  • Gérer l’imprévisible
  • Tester en continu
  • Limiter la complexité
  • Faire face au hype
  • Gagner en maturité

Gérer l’imprévisible

Logiciel traditionnel vs logiciel de machine learning: la plus grande différence, c’est le côté imprévisible des résultats. Avec du machine learning, les données qui sont ajoutées en continu transforment le produit en véritable machine vivante qui n’évolue pas forcément dans le sens qu’on avait prévu.

On ne sait pas si un modèle va marcher et comment l’application va réagir.

Combien de temps et combien de données ça va prendre? Est-ce que ça va être biaisé? Est-ce que ça va être bien accueilli par les utilisateurs? Est-ce qu’ils vont y faire confiance? Est-ce qu’il y a risque de défaillance catastrophique?… Toutes ces choses-là sont beaucoup moins problématiques dans du développement software traditionnel, où on a une meilleure idée de ce que la technologie est capable de faire et combien de temps ça va prendre pour le développement.

Jérôme Pasquero

Instabilité des modèles de machine learning.

Si on souhaite effectuer des tests approfondis du modèle avant son déploiement, on risque d’avoir un problème avec les modèles qui s’adaptent continuellement à de nouvelles données, car le modèle continuera à évoluer et on ne disposerait pas d’une version figée que on pourrait tester.

Mrs X

Entraîner les modèles avec plus de données.

On essaie habituellement de montrer le plus de données entrantes possible à l’application pendant la phase d’entraînement, pour essayer de couvrir tous les cas qu’elle risque de rencontrer une fois déployée.

Philippe Bouzaglou

Attention aux cygnes noirs.

De nombreux modèles ML génèrent des résultats dans un espace ouvert (comme les modèles de langage ou les images génératives). Dans ces cas, il peut y avoir des événements extrêmement rares qui pourraient causer un gros problème. Par exemple, générer une image ou un texte pornographique dans une application destinée aux jeunes. Cela empêche l’utilisation de ML dans de nombreux cas ou oblige les développeurs à vraiment contraindre les modèles à des domaines sûrs.

Mrs X

Par rapport à un logiciel traditionnel, il faut tenir compte des risques plus élevés de l’utilisation du machine learning. Une fois dans les mains du public, il peut y avoir des abus ou détournement du produit, et des risques d’atteintes à l’image de la compagnie.


Tester en continu

Il faut reconnaître le manque de maturité du développement en machine learning, tant au niveau des outils, des processus, que des professionnels en intelligence artificielle. D’où l’importance d’apprendre de bonnes pratiques du développement de logiciels traditionnels pour mieux gérer le cycle de vie des produits en machine learning. Ça passe notamment par la mise en place de batteries de tests adaptés et en continu pour s’assurer que les nouvelles données n’engendrent pas de comportements non voulus.

Passer de la théorie de l’école à la pratique de l’industrie.

Les spécialistes en AI sortent tout juste de l’école avec des MS et PHD, qui manquent d’expérience de l’industrie. On doit gagner en maturité pour appliquer un peu plus des techniques de software development au développement de machine learning.

Jérôme Pasquero

Adapter les tests de logiciels traditionnels aux logiciels à base de machine learning.

En programmation traditionnelle on se donne des spécifications, des balises, et on teste notre logiciel en continu pour s’assurer qu’elles soient respectées. En programmation ML on fait ça très peu: on donne un objectif unique, on optimise le système et on utilise le résultat.

Philipe Beaudoin

Tester en continu pour réduire les bugs en continu.

Un logiciel moindrement complexe a une panoplie d’objectifs et de contraintes qui évoluent au fil du temps et de nos apprentissages (lire: des bugs qu’on rencontre ou des comportements imprévus du système). En programmation traditionnelle quand ça arrive on ajoute des tests, on fixe, et ça ne revient plus. En programmation ML on a un peu le bec à l’eau.

Philipe Beaudoin

Gérer le cycle de vie d’un logiciel tout en gérant le cycle de vie des modèles de machine learning.

Le défi est encore plus dur lorsque l’on développe des modèles qui sont spécifiques aux individus, en contraste avec les modèles qui capturent le comportement de groupe. Les modèles individuels dépendent de données granulaires collectées dans des contextes assez complexes, pour inférer des décisions ou des recommandations adaptées aux spécificités des individus. C’est encore plus complexe quand le produit doit s’adapter en temps réel.

Salma Naccache

Limiter la complexité

Complexité des modèles

Il est parfois facile de se dire qu’on va développer un « moonshot » qui va tout régler. Comme pour le développement de produits traditionnels, il est préférable de travailler un produit de ML en itération en associant plusieurs modèles simples, plutôt qu’un gros modèle complexe.

Demande à un data scientist combien de données il a besoin pour son modèle, et il sera incapable de te répondre dès le début du projet.

Éviter de vouloir tout régler avec un modèle très puissant.

On se rend compte qu’on n’a pas assez de données, ou que son modèle est trop compliqué. On essaie d’attaquer des cas de figure extrêmes qui augmentent les besoins en performance, en mémoire, en data pour l’entraînement. Au final, on te ramasse avec un monstre qui n’est plus gérable.

Jérôme Pasquero

Un modèle simple permet d’expliquer plus facilement les résultats.

Si le modèle est très complexe, ce qui est la norme en ML, nous ne pouvons pas retracer la raison pour laquelle une décision a été prise. Il sera difficile de travailler dans certaines applications où les utilisateurs ou la réglementation exigent des explications.

Mrs X

Complexité des équipes

Beaucoup de personnes sont impliquées dans le développement d’un produit de ML (data engineer, data scientist, ML ops, solution architect, backend/frontend developer…). La complexité des projets rend d’autant plus important le rôle de gestionnaire de produit (PM), qui est sensible aux différents enjeux de développement du produit et s’assure d’une bonne communication entre les équipes impliquées.

Communiquer clairement les besoins et les contraintes.

L’équipe ingénierie ML doit s’assurer de produire les modèles, les maintenir, et définir clairement le type, les contraintes et les différents scénarios pour aider l’équipe d’ingénierie logicielle à intégrer les résultats dans le produit final. L’équipe ingénierie ML doit être capable d’abstraire les différents enjeux, afin que l’équipe d’ingénierie logicielle, ainsi que l’équipe produit puissent évaluer quel aspect du produit doit être amélioré ou fixé par une équipe ou l’autre.

Salma Naccache

Faire face au hype

À la fin des années 2000, une compagnie devait absolument avoir une page Facebook. La question de savoir pourquoi et du ROI était souvent secondaire. L’intelligence artificielle vit aujourd’hui le même hype, où les équipes produit ont la pression pour incorporer à tout prix du machine learning.

En ML aussi, le mieux est l’ennemi du bien. Comme pour gestion de produit traditionnel, c’est parfois mieux de commencer à « faker » – de manière manuelle ou semi-automatique, apprendre des premiers usages et ensuite développer les fonctionnalités logicielles.

La première règle du machine learning, est de le faire sans machine learning.

On a la pression pour utiliser du ML, alors qu’on n’a pas encore besoin et qu’on peut simplement hard coder les règles. Le produit est assez efficace sans. Si on n’y arrive vraiment pas sans modèle, c’est là qu’on peut commencer à regarder comment utiliser le ML. Il faut absolument éviter de baser tout ton produit sur un modèle qu’on n’a pas encore développé.

Jérôme Pasquero

La réaction du public peut être imprévisible face à une bête que le monde ne comprend pas vraiment.

L’intelligence artificielle suscite beaucoup d’attention de la part du public. Cela crée à la fois un élan positif pour affirmer qu’il y a de l’IA dans les applications, mais, à l’inverse, beaucoup de craintes, que ce soit de la part des utilisateurs ou des entreprises, qui s’inquiètent d’un « backlash » exagéré dû au battage médiatique associé à l’IA.

Mrs X

Gagner en maturité

Pour finir sur une note optimiste, avec tous les efforts actuels, les pratiques de développement de produit avec du machine learning devraient rapidement gagner en maturité. Compétences, outils et processus de développement spécifiques aux produits en ML devraient à terme amener un standard de qualité similaire au développement de logiciels traditionnels. Dans le prochain article, on verra ensemble quelles sont les compétences clés pour mener à bien le développement d’un produit de machine learning.

En illustration de cette maturité croissante dans le développement de produits avec du machine learning, AskAïa se distingue comme un cas d’étude exemplaire. Utilisant l’IA pour simplifier le parcours d’immigration au Canada, AskAïa démontre comment l’innovation technologique, couplée à une compréhension approfondie des processus complexes, peut aboutir à des solutions efficaces et sécurisées. Ce succès illustre parfaitement la convergence entre l’avancée théorique et l’application pratique dans le domaine de l’intelligence artificielle.


Français / Anglais

  • machine learning (ML) = apprentissage machine
  • artificial intelligence (AI) = intelligence artificielle (IA)
  • data science = science des données
  • software development = développement logiciel
  • bug = bogue

Biais en machine learning et développement responsable des produits en AI

La lecture récente de « AI 2041 » – un livre d’anticipation et de vulgarisation de l’intelligence artificielle écris à quatre mains par Kai-Fu Lee et Chen Qiufan, m’a interpellé sur les biais dans le machine learning, l’éthique des gestionnaires de produits et les solutions pour un développement responsable du AI. 

Le potentiel immense du machine learning et de ses dérivés est excitant. Mais en tant que gars qui développe des produits, je me demande comment s’assurer que leur impact sur la société reste positif. 

Qualité des données et impact en machine learning

Mon ami Philippe Bouzaglou m’a fait découvrir le machine learning il y a 10 ans pour ma compagnie (Seevibes). Twitter était une mine d’or de données non structurée que l’on filtré et qualifié en temps réel grâce à l’expertise en NLP de Philippe. Nous avions développé un des modèles de lookalike les plus performants pour Twitter (grosse fierté).

Au-delà du tooling et de la disponibilité de modèles, la qualité des données était le principal défi pour réussir des projets de machine learning. Un défi qui s’est confirmé ensuite en collaborant à des applications de machine learning dans l’industrie de la musique (LANDR), du transport (Bus.com) et des télécommunications (Fizz).

Je me concentrais sur la qualité des données pour avoir un modèle performant, mais sans me poser la question de l’impact sur les humains qui allaient ensuite utiliser le produit.

Conséquences des biais en intelligence artificielle

On veut faire un « meilleur monde » avec la tech, mais la plupart du temps on ne sauve pas de vie. Personne n’a vu son coeur repartir grâce à un spreadsheet plus performant. Par contre, le biais dans le machine learning impacte la vie de millions de personnes. 

Le simple fait de prendre une photo en soirée avec des amis noirs, et l’on constate rapidement que les algorithmes dans notre smartphone à 1000$ ne sont pas adaptés à tout le monde. On retrouvait ce biais dès les débuts de la photographie en couleurs.

Les problèmes de détection de couleur de peau sont récurrents, autant pour la détection et le suivi de mouvement pour un simple distributeur de savon et une webcam d’ordinateur. Le sujet pourrait presque faire sourire s’il n’avait pas des conséquences plus graves.

Dans le premier chapitre de « AI 2041 », l’histoire de « The Golden Elephant » imagine un futur où l’algorithme d’une assurance punit une jeune fille pour avoir côtoyé une personne de classe sociale inférieure. 

Ce futur est déjà là, car les personnes appartenant aux classes socio-économiques inférieures aux États-Unis sont soumises à des outils de prise de décision plus automatisés que les personnes appartenant aux classes supérieures. 

On voit des disparités raciales dans les outils d’évaluation des risques au détriment de la communauté noire. Le machine learning peut aussi engendrer du sexisme avec des algorithmes qui associent les femmes au shopping et les hommes au tir, qui un impact avéré dans le recrutement de postes en technologies.

Comment faire de l’intelligence artificielle responsable

Heureusement, il existe de bonnes pratiques pour mitiger les biais conscient et inconscient des produits de AI que l’on développe.

Les auteurs de « AI, COVID-19, and Inequality » recommandent de chercher à comprendre comment des biais peuvent être introduits à chaque étape de développement:

  1. Dans la définition du problème
  2. Dans les données utilisées
  3. Dans le choix et la configuration des algorithmes
  4. Dans l’évaluation et l’interprétation des résultats

Brookings a publié un rapport très fourni sur « Détection et atténuation des biais algorithmiques : Meilleures pratiques et politiques pour réduire les préjudices aux consommateurs ». Il propose des modèles de questions pour aider à évaluer l’impact des biais d’un projet de machine learning: 

  • Que fera la décision automatisée?
  • Comment les biais potentiels seront-ils détectés?
  • Quelles sont les motivations de l’opérateur?
  • Comment les autres parties prenantes sont-elles impliquées?
  • La diversité a-t-elle été prise en compte dans la conception et l’exécution

L’Union européenne a également défini des « Lignes directrices éthiques pour une IA digne de confiance » autour de sept principes de gouvernance:

  1. Contrôle et suivi humain
  2. Robustesse technique et sécurité
  3. Protection de la vie privée et gouvernance des données
  4. Transparence
  5. Diversité, non-discrimination et équité
  6. Bien-être environnemental et sociétal
  7. Imputabilité

Pour un machine learning équitable

Si on continu à avoir quatre gars blancs dans une pièce pour définir et tester les produits de AI, c’est évident que les problèmes de biais vont perdurer. La diversité des profils, autant dans l’origine, la culture et le parcours, est l’assurance de ne pas répéter les mêmes erreurs. 

Pour atténuer l’impact des biais dans le machine learning, nous devons faire un compromis entre la précision et l’équité, et prendre en compte le coût pour la société. Construire un monde meilleur pour les humains, c’est s’autorisé à être moins parfait pour être plus juste.


Ressources et liens

Publications

Livres

Podcasts

Vidéos


Français / Anglais

  • machine learning = apprentissage machine
  • artificial intelligence (AI) = intelligence artificielle (IA)