Makina Blog
Open-source et IA : un duo gagnant !
L'essor de l'intelligence artificielle n'aurait probablement pas été possible sans l'écosystème du Libre : code open-source, open data et open science ont permis de la rendre accessible et d'améliorer les technologies en mutualisant les efforts. Nous revenons ici sur ce duo gagnant et inspirant !
La dynamique de l'écosystème du Libre porte ces dernières années le développement des technologies dites d'"intelligence artificielle" (IA). Qu'il s'agisse de la création, de l'entraînement, ou de l'évaluation de modèles, les communautés du Libre sont largement mobilisées.
L'essor des solutions d'IA ne peut être simplement attribué à l'augmentation des puissances de calcul ou à l'émergence de nouveaux algorithmes. Le succès actuel des techniques d'IA s'appuie sur une nouvelle culture de création et de partage. Une culture que nous partageons pleinement, celle du Libre !
Trois conditions ont été réunies autour de ce succès :
- La publication accessible à tou·te·s de nouveaux algorithmes et de leur évaluation, notamment au travers de prépublications (open science)
- La mise à disposition de leur implémentation en open-source
- Ainsi que le partage de jeux de données libres volumineux et variés (open data)
Un des derniers exemples en date marquant est la création du plus grand modèle de traitement du langage jamais entraîné, Bloom. Ou plus en lien avec nos activités de cartographie à Makina Corpus, le projet ODEON initié par l'IGN afin de déterminer automatiquement l'occupation du sol à partir d'images aériennes et satellitaires (voir la présentation en ligne). Dans ces deux projets, des appels à concevoir en commun ont été lancés, accompagnés d'une mise à disposition des modèles et des données.
Un aspect intéressant de cette conception en commun est d'apporter des réponses aux exigences actuelles en terme d'explicabilité des algorithmes.
L'enjeu de l'explicabilité
L'objectif est de permettre aux usagers des algorithmes non seulement de les comprendre, mais aussi de les discuter, voire de les contester.
Pour atteindre cet objectif, l'explicabilité ne peut se réduire à l'accès au code source, ni même à la compréhension des modèles. Même si ces deux conditions y participent.
En faisant appel aux communautés de l'open-source pour concevoir ces solutions basées sur des algorithmes d'intelligence artificielle, nous nous assurons dès la conception de produire la documentation minimale à la communication sur la solution, afin d'embarquer dans le projet des profils divers qui eux-mêmes auront chacun besoin d'éléments explicatifs différents.
En effet, l'explication d'un algorithme, a fortiori d'intelligence artificielle, ne se limite pas seulement aux aspects techniques. Les explications partagées doivent s'adapter au public qui les reçoit, tenir compte de leur usage de la solution et de leur niveau de compréhension des technologies employées.
Le sujet est vaste, nous n'avons pas la prétention de le traiter dans ce court paragraphe. Nous vous recommandons donc plusieurs vidéos permettant d'approfondir la réflexion :
- L'atelier AMI IA - Explicabilité des algorithmes organisé par Etalab
- La conférence "Expliquer les algorithmes : oui c'est possible (et c'est même souhaitable)" au Salon de la Data 2022
Les projets phares
Aujourd'hui, plus de 14000 projets open-source sont référencés sur Github derrière le mot-clé "artificial intelligence". Beaucoup de ces projets sont développés en Python, portés par trois projets phares.
Au milieu de tous ces projets, trois projets se démarquent particulièrement : Scikit-learn, PyTorch et Tensorflow (et son interface simplifiée, Keras) .
Scikit-learn (dont l'INRIA est un important contributeur) est la bibliothèque de référence pour l'apprentissage automatique (machine-learning) en Python. Elle permet d'accéder simplement à de nombreux algorithmes et outils, le tout étant très bien documenté et pensé pour faciliter les implémentations.
Pytorch (développé par Méta) et Tensorflow (développé par Google) sont, quant à elles, deux bibliothèques permettant de créer, entraîner, évaluer, interagir avec des réseaux de neurones. Ce sont actuellement les deux outils utilisés pour le développement de solutions d'apprentissage profond (deep-learning), leur popularité est à peu près équivalente.
Une nouvelle plateforme spécifiquement dédiée aux solutions d'intelligence artificielle, une sorte de "Github du machine-learning", est en train de voir le jour : Huggingface. Et cela suscite tellement d'enthousiasme qu'elle est en ce moment le cinquième projet le plus actif sur Github. Plus que le code, l'accès à des modèles pré-entraînés, est un des enjeux majeurs du moment !
Si vous souhaitez échanger avec nous sur l'importance de l'open-source dans l'essor des solutions d'intelligence artificielle ou si vous avez besoin d'aide dans le développement et la mise en place de votre solution, n'hésitez pas à nous contacter .
Formations associées
Formations IA / Data Science
Formation Machine Learning
À distance (FOAD) Du 25 au 29 novembre 2024
Voir la formationFormations IA / Data Science
Formation Mise en place de projets Deep Learning avec Keras
Toulouse Du 19 au 21 mars 2025
Voir la formationFormations IA / Data Science
Formation Python scientifique
Nantes Du 27 au 21 janvier 2025
Voir la formationActualités en lien
Vidéo : l'importance du logiciel libre dans l’essor du Deep Learning
Visionnez la vidéo de la conférence de Bérengère Mathieu, Data Scientist Makina Corpus, à l'Open Source Expérience 2021 : l'importance du logiciel libre dans l’essor du Deep Learning.
Série d'articles : IA & cartographie
Tour d'horizon de l'apport de l’intelligence artificielle à la cartographie ! Quand dans une discussion sont lancés les mots "intelligence artificielle" et "cartographie", il y a fort à parier que les protagonistes en viennent rapidement à parler de conduite assistée et voitures autonomes.
Série d'articles : ces innovations qui permettent à l'IA de sortir des laboratoires - 1/5
Introduction qui présente une série de quatre publications sur la problématique de l'intégration d'algorithmes d'intelligence artificielle au sein d'applications métiers