4 septembre 2021

Quelle quantité de données ai-je besoin pour mon projet d'IA ?

L'intelligence artificielle (IA) et les divers algorithmes d'apprentissage qui y sont associés peuvent encore sembler obscurs et mystérieux pour les non-spécialistes. Pourtant, leur présence est de plus en plus fréquente dans notre vie quotidienne, qu'il s'agisse des systèmes de navigation, de l'autocomplétion des phrases dans les services de messagerie ou des recommandations avancées dans votre application de streaming préférée. Cette relative opacité s'explique généralement par la méconnaissance de ces technologies et en particulier de leur fonctionnement. Il n'est pas toujours évident de savoir ce qui est nécessaire pour former et construire ce type d'algorithmes, à la fois en termes de données et d'infrastructure. Dans cet article, nous tenterons de clarifier brièvement les besoins réels d'un "algorithme d'IA" en termes de données. Notons toutefois qu'il n'existe pas de règle universelle en la matière, et que la réponse dépend de nombreux facteurs, tels que le problème (prévisions météorologiques, remplissage automatique de documents fiscaux ou prédiction de l'itinéraire le plus court dans une application de navigation) ou le type d'algorithme d'apprentissage envisagé (régression linéaire, machine learning classique ou réseaux neuronaux), etc.<br>

Comme indiqué précédemment, la complexité du problème est le premier facteur qui influe sur la quantité de données nécessaires pour atteindre une précision donnée. L'objectif principal d'un algorithme d'apprentissage est de saisir les liens entre les différentes caractéristiques des données d'apprentissage (les attributs). Plus les relations sont complexes, plus l'algorithme doit disposer d'un grand nombre de données d'échantillonnage. Par exemple, la prédiction du nombre de personnes en vacances en fonction de la période de l'année ou l'identification de diverses impuretés et défauts à la surface de produits métallurgiques ne nécessitent pas la même quantité de données d'apprentissage. La complexité de l'algorithme lui-même est également un facteur important. L'intelligence artificielle va des algorithmes simples, tels que les régressions linéaires, aux algorithmes complexes, tels que les réseaux neuronaux, en passant par les algorithmes de machine learning plus "classiques", tels que les forêts aléatoires. Plus l'algorithme est complexe, plus la quantité de données nécessaires à son apprentissage est importante. Il en va de même pour l'architecture des réseaux neuronaux, dont la complexité est reflétée par le nombre de couches de neurones et le nombre de neurones par couche.

Même s'il n'existe pas de vérité absolue quant à la quantité de données nécessaires, il existe des règles de base permettant d'estimer l'ordre de grandeur de la taille de l'échantillon approprié. L'une des plus répandues (mais controversée... à juste titre) est la règle des 10 : considérons qu'un modèle a besoin d'environ dix fois plus d'observations qu'il n'a de degrés de liberté (un degré de liberté peut être un paramètre du modèle, une caractéristique des données, ou une classe dans le cas de la classification). Si l'on applique ce principe dans le cas de problèmes linéaires, le nombre de degrés de liberté est principalement le nombre d'attributs des données (dimensionnalité du problème). Dans un réseau neuronal, en revanche, le nombre de degrés de liberté augmente considérablement, en raison du nombre élevé de paramètres à calculer. Ce dernier varie en fonction du type exact d'algorithme, mais dépend en tout cas de la taille de chaque couche de neurones et du nombre de couches. Pour un problème complexe tel que la reconnaissance d'objets en haute définition, des milliers d'images par classe peuvent facilement être nécessaires.

Comme on peut facilement le deviner, en général, plus l'ensemble de données est riche et diversifié, mieux c'est. Toutefois, il existe des alternatives si vous ne disposez pas de suffisamment de données pour entraîner votre algorithme à atteindre des niveaux de précision élevés. Parmi celles-ci, il est possible d'exploiter des modèles préformés en étendant un modèle formé pour une tâche globale afin de remplir une nouvelle tâche (mais suffisamment similaire) grâce à un processus appelé "apprentissage par transfert". Par exemple, un modèle pré-entraîné pour la détection de bord d'objet ou de texte à partir d'une image peut être affiné pour la détection de plaques d'immatriculation. D'autres techniques incluent l'utilisation de données provenant de sources externes (éventuellement publiques) (par exemple, des données météorologiques), ou l'utilisation de méthodes d'augmentation des données pour générer des données synthétiques basées sur des transformations effectuées sur des données réelles (par exemple, l'enrichissement d'ensembles de données d'images avec des images recadrées, retournées ou pivotées de manière aléatoire). Cette dernière méthode est régulièrement utilisée pour les problèmes de reconnaissance/détection d'objets, pour lesquels il n'est pas toujours facile de collecter une grande base de données étiquetée.

Enfin, il ne faut pas oublier que la qualité est au moins aussi importante (sinon plus) que la quantité. Une centaine d'observations propres et variées seront toujours bien meilleures qu'un million d'observations très bruyantes ou parfaitement uniformes, d'où la distinction entre "données" et "informations". L'ajout de données, même de bonne qualité, peut même parfois conduire à une saturation des performances du modèle, voire à une réduction de celles-ci (par exemple, en raison d'un déséquilibre des classes).

En conclusion, la complexité du problème et le nombre de variables explicatives sont des critères décisifs pour déterminer la quantité de données nécessaires. Mais d'autres aspects, tels que la qualité et la variété des données, jouent également un rôle clé. S'il existe des règles empiriques pour fournir des estimations approximatives, rien ne peut (à ce stade) remplacer l'expertise humaine dans ce processus.

Vous vous demandez comment l'IA peut vous apporter de nouvelles opportunités dans votre entreprise ? N'hésitez pas à contacter nos spécialistes de l'IA.

Laetitia Josse, chef de projet

Vous souhaitez lancer un projet ?

Parlons-en