IA frugale : trois règles « simples » pour optimiser les algorithmes
Dans ce conseil, Théo Alves Da Costa, Manager Data Science chez Ekimetrics, présente trois règles « simples » pour tirer le meilleur parti de l’IA en entreprise, sans exploser les coûts économiques et écologiques.
Cela vous semblera sans doute paradoxal, surtout venant d’un Data Scientist dont le métier consiste justement à créer des algorithmes, mais lorsque l’on souhaite lancer un projet d’IA la première question à se poser est la suivante : « Peut-on se passer de l’IA ? ». Dans de nombreux cas et pour au moins trois raisons – éthique et biais, empreinte environnementale, facilité de maintenance et d’industrialisation –, il est préférable d’inviter la frugalité dans le débat. Alors, peut-on faire mieux avec moins ? La réponse est assurément oui et, pour cela, il suffit de suivre 3 règles simples.
Règle n° 1 : Penser intelligence humaine avant intelligence artificielle
Ne nous y trompons pas, l’IA peut apporter une réelle valeur ajoutée aux projets de l’entreprise. Mais l’intégrer de façon systématique sans évaluer les différents risques, coûts et bénéfices se révèle souvent une erreur qui peut coûter cher, à la fois en termes de ressources et d’investissements, pour un résultat pas toujours probant. Il convient de poser avant tout la question de la finalité d’un projet IA et de savoir si le problème peut être résolu de façon plus simple, peut-être avec des règles édictées par des équipes métiers ou un algorithme de machine learning plus sobre. Ce qui est sûr c’est que lorsque l’IA est introduite dans un projet aux seules fins d’image ou de notoriété, l’échec est inévitable. De même, si la valeur générée se révèle inférieure à son impact (social, éthique, environnemental, et financier), alors il est peut-être préférable de renoncer et de revenir à un modèle algorithmique plus basique.
Prenons un cas d’usage parmi les plus courants, qui consiste à travailler sur des algorithmes de prédiction de demande, afin d’éviter le gâchis d’une surproduction ou d’améliorer sa gestion des stocks. Si vous donnez le sujet à un Data Scientist, celui-ci va créer un modèle algorithmique souvent beaucoup trop complexe par rapport au besoin exprimé. Parfois un cercle d’experts réuni autour d’une même table et armé d’une analyse des données historiques descriptives – ainsi que de leurs intuitions métiers – peut réussir à créer des règles de gestion plus performantes que les algorithmes d’IA complexes. Un autre avantage au passage, c’est que ces règles vont pouvoir être mises en production beaucoup plus rapidement.
Dans de nombreux cas, il ne faut pas succomber aux promesses d’un algorithme magique avant d’avoir testé des règles de gestion simples, qui par ailleurs serviront ensuite de référence de performance (ou baseline). Faire confiance à l’intelligence humaine plutôt qu’à l’intelligence artificielle est donc sans aucun doute, la première règle à suivre.
Règle n° 2 : Passer d’une méthodologie Model-Centric à une méthodologie Data-Centric
Si le recours à un modèle algorithmique devient nécessaire du fait d’un trop grand nombre de paramètres à prendre en compte, la collaboration entre Data Scientists et experts métiers doit rester incontournable. Avant de lancer le projet, l’entreprise doit faire sa mue pour passer d’une méthodologie Model-Centric (qui se concentre sur l’algorithme) à un modèle Data-Centric IA (qui se concentre sur les données), consistant à travailler en amont, de façon fine et intelligente, les données qui viendront alimenter l’algorithme. Cela semble plutôt logique. Il existe même un proverbe en Data Science qui rappelle l’importance de se concentrer sur les données : « Garbage In, Garbage Out » (GIGO), selon lequel des données d’entrée défectueuses ou absurdes produisent des sorties absurdes.
Cependant, pendant de nombreuses années, la communauté IA s’est concentrée sur la création d’algorithmes de plus en plus performants au détriment d’une réflexion approfondie sur les données qui les nourrissaient, forgeant inconsciemment des réflexes model-centric dans la tête de toute une génération de Data Scientists : « ça ne fonctionne pas comme je le voulais, aucune importance, ajoutons 200 arbres à notre forêt aléatoire. Et, si cela n’est toujours pas suffisant, passons aux réseaux de neurones ».
C’est seulement en 2021 qu’Andrew Ng, fondateur de Coursera et responsable de la formation de millions de Data Scientists à travers le monde, a remis les pendules à l’heure en rappelant les principes fondamentaux d’une IA Data-Centric : travailler en amont sur la qualité de la donnée et intégrer naturellement à l’algorithme les hypothèses métiers. Enfin, il faut accepter avec humilité qu’il soit rare de parvenir à coder un algorithme performant à 100 %. Plutôt que de perdre inutilement de l’énergie, de l’argent et des ressources pour atteindre cette chimère, l’entreprise doit donc se concentrer sur le seul résultat attendu, à savoir un algorithme suffisamment utile et utilisé pour faciliter la prise de décision des métiers. Cette démarche donne ainsi une plus grande importance à l’UX design. Il s’agit d’éduquer et concevoir des interfaces utilisateurs pensées pour rendre l’IA acceptable et construire la confiance dans l’algorithme. Les suggestions de ce dernier pourront ainsi être systématiquement confrontées à l’avis des experts utilisateurs, seuls capables de les arbitrer. Là encore, l’intelligence humaine restera la meilleure conseillère !
Règles n° 3 : Réduire l’impact énergétique des algorithmes autant que possible
Enfin, dans certains cas, l’exploitation de données volumineuses et non structurées (images, textes, vidéos, etc.) rend le recours à des méthodes algorithmiques incontournables, telles que les réseaux de neurones. Au-delà de la consommation énergétique importante que ces derniers peuvent générer, leur apprentissage prend du temps et se révèle coûteux. Des méthodes émergent aujourd’hui, pour les compresser, afin de les rendre plus frugaux.
L’une d’entre elles est connue sous le nom de « Pruning » ou « élagage » et consiste, comme son nom l’indique, à sectionner certaines branches du réseau de neurones pour ne conserver que les informations réellement nécessaires à la résolution du « use case » au détriment d’une légère perte de performance. Devenu moins lourd, le modèle s’entraîne plus vite et consomme moins.
Avec la « Quantization », on vient cette fois simplifier l’information qui circule dans les neurones, en arrondissant les valeurs numériques, et ainsi alléger le poids de l’algorithme.
Enfin, une dernière méthode, la « Distillation », est celle qui a pu nous donner jusqu’à présent les meilleurs résultats. Il s’agit, pour simplifier, de commencer par entraîner l’algorithme d’IA complexe et énergivore, puis de le laisser transférer ce premier apprentissage à un modèle distillé ou « élève », moins puissant et donc moins consommateur de ressources, afin qu’il poursuive le travail. En recourant à cette méthode, on parvient à réduire le nombre de paramètres et l’impact de l’algorithme de façon significative, tout en préservant une belle cohérence dans les résultats. Par exemple l’algorithme DistillBERT, une version distillée de l’algorithme BERT de Google AI créé par Hugging Face, utilise 40 % de paramètres en moins, s’entraîne 60 % plus rapidement et conserve 95 % des performances de l’algorithme original.
D’autres méthodes de compression sont actuellement à l’étude dans les centres des recherches, poussées par l’émergence du calcul d'algorithmes « on device » pour préserver notamment la vie privée ; le calcul n’est jamais effectué dans un supercalculateur dans le cloud, mais reste sur le téléphone ou sur un équipement peu puissant. Reste à savoir si ces techniques s’imposeront chez les fabricants de produits high tech et ceux des machines industrielles.