Tout savoir sur Underfitting
Pendant leur phase de construction, les algorithmes de Machine Learning doivent être entraînés. Ils améliorent leurs performances en apprenant des schémas présents dans les données. Il arrive toutefois que le modèle s’ajuste mal aux données d’apprentissage, entraînant de mauvais résultats face à des données inconnues. Selon les cas, il peut s’agir d’overfitting ou d’underfitting.
Qu’est-ce que l’underfitting ?
En Machine Learning (ML), l’underfitting, sous-ajustement en français, survient lorsqu’un modèle ne parvient pas à capturer les structures sous-jacentes des données de manière adéquate. Cela se produit lorsque le modèle est trop simple ou trop limité pour saisir la complexité des relations présentes dans les données d’entraînement. Il produit des prédictions peu fiables. Sa performance est aussi médiocre sur le training set que sur de nouvelles données. On parle également de Bias ou biais.
Différence entre underfitting et overfitting
L’overfitting est caractéristique d’un modèle qui s’adapte trop précisément aux données d’entraînement. L’algorithme capture même le bruit ou les variations aléatoires. Au final, si le taux d’erreur sur le training set est bas, la performance est insatisfaisante sur un nouveau jeu de données.
L’importance des données dans le Machine Learning
Les données jouent un rôle central dans le domaine du Machine Learning. Leur qualité et leur quantité ont une importance primordiale, car elles déterminent la capacité des modèles à identifier des schémas et à généraliser. Des datasets complets et représentatifs garantissent des modèles bien ajustés et donc une plus grande précision des prédictions.
Comment se manifeste-t-il dans le contexte de l’apprentissage automatique ?
Il est essentiel de détecter un sous-ajustement, car il peut compromettre sérieusement les performances du modèle. Certains symptômes sont caractéristiques de ce phénomène.
Des performances médiocres sur les données d’entraînement et de test
Comme le modèle ne s’ajuste pas au training set, les prédictions sont peu fiables et peu précises. Le modèle ne généralise pas efficacement sur des données inconnues et de validation.
Un modèle trop simple
Un modèle sous-ajusté est souvent trop simpliste pour représenter les schémas complexes présents dans les données. Par exemple, un modèle linéaire utilisé pour modéliser une relation non linéaire entre les variables est susceptible de conduire à un sous-ajustement. Cette simplicité excessive limite la capacité de l’algorithme à capturer la variabilité et la diversité des données, ce qui entraîne une performance insatisfaisante et des prédictions peu fiables.
Un biais élevé et une variance faible
Un biais élevé indique que le modèle ne parvient pas à capturer les tendances générales des données. Une variance basse indique que le modèle est peu sensible aux fluctuations ou aux variations dans les données. Trop rigide, il a tendance à mal s’adapter à de nouveaux datasets.
Quelles sont les principales causes de l’underfitting ?
Le sous-ajustement peut résulter de divers facteurs influençant les capacités prédictives des algorithmes.
La simplicité du modèle
Lorsque l’on parle de simplicité à propos d’un modèle, on fait référence à l’utilisation d’algorithmes trop simples pour saisir la complexité des données ou des relations sous-jacentes entre les variables. Le modèle manque alors de la capacité pour représenter les nuances et les schémas présents dans les training data. Par conséquent, il va sous-estimer la complexité des relations entre les variables et conduire à une mauvaise performance et à un sous-ajustement.
Des données de mauvaise qualité ou insuffisantes
Un data set de mauvaise qualité contient des erreurs, des incohérences ou est incomplet. Il peut également arriver que la quantité soit insuffisante pour refléter correctement la complexité des schémas. Ces anomalies peuvent entraîner un sous-ajustement, car le modèle ne peut pas apprendre efficacement. Il risque de produire des résultats peu fiables et se retrouver limité face à des données inconnues.
Présence de bruit dans les données
Cette expression fait référence à la présence d’informations erronées, d’outliers ou de valeurs aberrantes ne représentant pas le véritable modèle de données. Le bruit peut provenir par exemple d’erreurs de mesure ou de saisie de données.
Un déséquilibre dans les données
Il se produit lorsque les différentes classes ou catégories dans un ensemble de données sont représentées de manière inégale. Plus spécifiquement, lorsque certaines classes sont beaucoup plus fréquentes que d’autres. L’algorithme va alors avoir tendance à privilégier les classes majoritaires, conduisant à un biais dans la prédiction.
Un mauvais réglage des hyperparamètres
Il peut arriver que les hyperparamètres, comme le taux d’apprentissage ou les paramètres de régularisation, soient mal ajustés. Dans ce cas, ils limitent la capacité du modèle à s’adapter de manière optimale aux données.
Comment reconnaître l’underfitting ?
L’observation de la courbe d’apprentissage peut permettre de détecter un sous-ajustement. Cet outil visuel essentiel est utilisé pour évaluer la performance d’un modèle de ML durant le processus d’entraînement. La courbe représente l’évolution de la métrique d’évaluation en fonction du nombre d’itérations ou d’échantillons d’entraînement observés par le modèle.
Dans le cas d’un modèle sous-adapté, la courbe présente une perte d’apprentissage faible au démarrage. Elle augmente ensuite progressivement avec l’ajout d’exemples et tombe soudainement au minimum à la fin du processus.
Comment prévenir l’underfitting ?
Pour éviter l’underfitting, les Data Scientist doivent mettre en place des méthodes leur permettant de trouver le juste équilibre.
Augmenter la durée de l’entraînement
La prolonger permet au modèle de mieux saisir les schémas complexes des données. Attention toutefois à ne pas tomber dans l’excès inverse et risquer le surajustement.
Utiliser des modèles plus complexes
L’utilisation d’algorithmes complexes peut contribuer à prévenir l’underfitting. Il faut alors adopter des méthodes sophistiquées ou augmenter la capacité des algorithmes existants. Pour cela, on peut augmenter la profondeur des réseaux de neurones ou utiliser une approche non linéaire plus avancée.
Opter pour des datasets plus larges
Il s’agit de choisir des ensembles plus grands, capables de capter la diversité et la variabilité des données réelles. Les Data Scientist doivent inclure plus d’exemples représentatifs de l’ensemble des scénarios possibles dans le domaine d’étude. La généralisation et l’identification de schémas complexes sont ainsi facilitées.
Sélectionner des caractéristiques pertinentes
La sélection de caractéristiques est une étape cruciale pour éviter l’underfitting. Les Data Scientist doivent identifier les caractéristiques ayant une influence significative sur la variable cible, éliminer les redondances et utiliser une technique de sélection adaptée.
Ajuster les hyperparamètres
Il s’agit d’explorer des paramètres comme le nombre d’itérations, la taille des lots et la régularisation pour déterminer les valeurs optimales. Ce sont celles qui permettent au modèle de s’adapter aux données et de s’appliquer correctement sur un nouveau dataset.
Comment choisir la bonne architecture de modèle pour minimiser l’underfitting ?
L’un des points clés pour éviter l’underfitting est de sélectionner l’architecture qui équilibre la complexité du modèle avec sa capacité à généraliser sur de nouveaux datasets.
Évaluez la complexité du modèle
C’est une étape cruciale pour assurer sa capacité à saisir les schémas complexes des données sans sous-ajuster, mais aussi surajuster :
- En surveillant attentivement les courbes d’apprentissage ;
- en utilisant des méthodes de validation croisée ;
- en analysant la capacité de généralisation du modèle sur un nouvel ensemble.
Tester différentes architectures
Expérimenter différentes architectures de modèles est essentiel. Cela implique d’explorer une gamme variée d’architectures, depuis les algorithmes linéaires aux réseaux de neurones profonds ou récurrents, et d’ajuster les paramètres clés.
Adopter des méthodes ensemblistes
L’ensemble learning est efficace pour améliorer la précision et la robustesse des modèles prédictifs. Les algorithmes ensemblistes les plus courants sont :
- Le Bagging, ou Bootstrap Aggregating, une méthode ensembliste parallèle ;
- le Boosting, une méthode ensembliste séquentielle ;
- la forêt aléatoire, ou random forest, une amélioration du Bagging associée au concept de sous-espace aléatoire.
Surveiller les courbes d’apprentissage
Comme nous l’avons vu, celles-ci sont un indicateur visuel de sous-ajustement. En les surveillant, il est possible de détecter les signes et de réajuster en conséquence.
Appliquer la validation croisée
Cette technique de validation permet d’évaluer l’approche choisie, et de vérifier qu’elle généralise bien sûr des datasets distincts. Il s’agit de diviser l’ensemble en plis, puis d’entraîner l’algorithme sur un groupe tout en le validant sur d’autres.
Quels sont les défis futurs liés à l’underfitting dans le domaine de l’IA ?
Malgré les progrès constants de l’IA, elle reste confrontée à des difficultés pour capturer de manière adéquate la complexité des données sans sous-ajuster. Ainsi, dans le contexte Big Data, une exploration continue des architectures et des techniques d’ensemble est essentielle pour minimiser les problèmes d’ajustement.
L’un des défis prometteurs est l’intégration de techniques de Machine Learning automatisé. Aussi appelé ML automatisé ou AutoML, ce processus permet d’automatiser des tâches fastidieuses et répétitives du développement d’algorithmes. Il permet de créer efficacement des approches ML à grande échelle de très bonne qualité.
Parvenir à un équilibre entre underfitting et overfitting requiert de l’expérience et de solides compétences en Data Science et en Intelligence Artificielle. IA School propose des cursus complets et diplômants dans ces domaines très porteurs. Ainsi, le Master en Intelligence Artificielle et Big Data est construit autour de deux parcours : Data Analyst et Data Scientist.