Augmentation des données
Améliorez vos modèles d'apprentissage automatique grâce à l'augmentation des données. Découvrez des techniques permettant d'augmenter la précision, de réduire l'overfitting et d'améliorer la robustesse.
L'augmentation des données est une technique cruciale de l'apprentissage machine (ML) utilisée pour augmenter artificiellement la taille et la diversité d'un ensemble de données d'apprentissage. Pour ce faire, on crée des versions modifiées de points de données existants ou on génère de nouveaux exemples synthétiques à partir de ceux-ci. L'objectif principal est d'améliorer les performances, les capacités de généralisation et la robustesse des modèles d'apprentissage automatique, en particulier dans des domaines tels que la vision artificielle (CV) où l'acquisition d'ensembles de données vastes et variés peut être coûteuse et prendre du temps. En entraînant des modèles comme Ultralytics YOLO sur des données augmentées, les développeurs peuvent les aider à apprendre à gérer un plus large éventail de variations rencontrées dans les scénarios du monde réel, conduisant à une meilleure précision sur des données non vues.
Importance et avantages
L'augmentation des données est un élément fondamental du flux de travail de ML pour plusieurs raisons :
- Amélioration de la généralisation du modèle : En exposant le modèle à des exemples plus variés, l'augmentation l'aide à apprendre des modèles sous-jacents plutôt que de mémoriser des exemples de formation spécifiques, ce qui permet d'obtenir de meilleures performances sur de nouvelles données.
- Réduction du surajustement: Il y a surajustement lorsqu'un modèle donne de bons résultats sur les données d'apprentissage, mais de mauvais résultats sur les données inédites. L'augmentation agit comme une technique de régularisation, rendant plus difficile l'adaptation excessive du modèle à l'ensemble limité de données d'origine.
- Robustesse accrue : Les modèles formés avec des données augmentées sont généralement plus résistants aux variations des données d'entrée, telles que les changements d'éclairage, de point de vue, d'échelle ou les occlusions partielles.
- Réduction des besoins en matière de collecte de données : Il permet aux développeurs d'obtenir de meilleurs résultats avec des ensembles de données initiaux plus petits, ce qui permet d'économiser le temps et les ressources associés à la collecte et à l'étiquetage des données. Vous trouverez d'autres conseils sur la formation des modèles dans notre documentation.
Techniques et outils
La mise en œuvre de l'augmentation des données est facilitée par diverses bibliothèques et structures. Pour les tâches de vision par ordinateur, les outils les plus populaires sont les suivants :
Les modèles Ultralytics intègrent plusieurs techniques d'augmentation intégrées efficaces pendant la formation. Les utilisateurs peuvent gérer leurs ensembles de données et tirer parti de ces fonctionnalités grâce à des plateformes telles que Ultralytics HUB.
Applications dans le monde réel
L'augmentation des données est largement appliquée dans de nombreux domaines de l'intelligence artificielle :
- L'IA dans les soins de santé: Dans l'analyse de l'imagerie médicale, comme la détection de tumeurs dans les scanners, les ensembles de données sont souvent limités en raison de préoccupations liées à la protection de la vie privée et de la rareté de certaines conditions. Les techniques d'augmentation telles que la rotation, la mise à l'échelle et l'ajustement de la luminosité permettent de créer des exemples d'apprentissage diversifiés, ce qui aide les modèles à détecter de manière fiable les anomalies malgré les variations de l'équipement d'imagerie ou de la position du patient. La précision diagnostique des systèmes d'analyse d'images médicales s'en trouve améliorée.
- L'IA pour l'automobile: Le développement de systèmes robustes de détection d'objets pour les véhicules autonomes nécessite des données d'entraînement couvrant divers scénarios de conduite. L'augmentation simule différentes conditions météorologiques (par exemple, en ajoutant de la pluie ou du brouillard synthétique), des variations d'éclairage (jour, nuit, aube/crépuscule) et des occlusions (par exemple, des piétons ou des véhicules partiellement cachés), ce qui rend les systèmes de perception plus fiables dans des environnements réels imprévisibles.
- L'IA dans l'agriculture: Pour des tâches telles que la détection des maladies des cultures ou le comptage des fruits, l'augmentation peut simuler les variations d'éclairage dues aux conditions météorologiques ou à l'heure de la journée, les différents stades de croissance ou les angles de caméra des drones ou des robots terrestres, ce qui permet de mettre au point des solutions d'agriculture de précision plus robustes.
- L'IA dans la fabrication: Dans le domaine du contrôle de la qualité, l'augmentation peut créer des variations dans l'orientation des produits, l'éclairage et les défauts mineurs afin de former des modèles pour une détection plus fiable des anomalies sur les chaînes de production.
Augmentation des données et données synthétiques
Bien que l'augmentation des données et la génération de données synthétiques visent toutes deux à améliorer les ensembles de données d'apprentissage, elles diffèrent fondamentalement :
- Augmentation des données : Modifie les données réelles existantes par le biais de transformations. Elle augmente la variance autour des points de données observés mais n'introduit généralement pas de scénarios entièrement nouveaux non représentés dans les données d'origine.
- Données synthétiques : Il s'agit de créer des données artificielles entièrement nouvelles à partir de zéro, souvent à l'aide de simulations, d'infographies ou de modèles génératifs tels que les réseaux adverbiaux génératifs (GAN) ou les modèles de diffusion. Les données synthétiques peuvent représenter des scénarios qui sont rares ou impossibles à saisir dans le monde réel, ce qui permet de combler les lacunes que l'augmentation ne peut combler.
Dans la pratique, l'augmentation des données est souvent plus facile à mettre en œuvre et moins coûteuse en termes de calcul que la génération de données synthétiques de haute fidélité. Les deux techniques peuvent être utiles et sont parfois utilisées en combinaison pour créer des ensembles de données d'entraînement très diversifiés et robustes pour des applications d'IA exigeantes.
Comment fonctionne l'augmentation des données
L'idée centrale de l'augmentation des données est d'appliquer diverses transformations aux échantillons de données d'origine afin de générer de nouveaux exemples d'apprentissage plausibles. Ces transformations devraient idéalement refléter les variations que le modèle pourrait rencontrer au cours de l'inférence. Pour les données d'images, qui constituent un objectif principal de la vision par ordinateur, les techniques d'augmentation courantes sont les suivantes :
Bien qu'elles soient largement utilisées dans les CV, les techniques d'augmentation sont également appliquées dans d'autres domaines. Par exemple, dans le traitement du langage naturel (NLP), des méthodes telles que le remplacement des synonymes, la rétro-traduction (traduction d'un texte dans une autre langue et inversement) et l'insertion/suppression aléatoire de mots permettent d'augmenter les données textuelles.