Le processus d’un projet de Deep Learning (DL) classique commence par l’identification du problème métier et la formulation de la question ou de l’énoncé du problème. Vient ensuite une série d’étapes, notamment la préparation (ou le prétraitement) des données, l’entraînement des modèles, l’optimisation des hyperparamètres et l’évaluation des modèles. Il s’agit d’un processus itératif et le modèle optimal n’est souvent obtenu qu’après de multiples itérations et expérimentations.
Déterminer le modèle le plus adapté aux données nécessite beaucoup de temps, d’efforts et d’expertise dans tout le processus de Deep Learning. L’outil Entraîner à l’aide d’AutoDL automatise l’ensemble de ce processus et identifie les meilleurs réseaux neuronaux avec le meilleur jeu d’hyperparamètres correspondant aux données. Les sections ci-après décrivent de façon détaillée chacune des étapes du processus de Deep Learning.
Processus Entraîner à l’aide d’AutoDL
L’outil Entraîner à l’aide d’AutoDL automatise les éléments suivants :
- Augmentation des données : les projets de Deep Learning aboutis nécessitent de très grands volumes de données en entrée de haute qualité pour résoudre un problème spécifique. Cependant, il est difficile dans la réalité d’obtenir des données classées et étiquetées en grand nombre. Les techniques d’augmentation des données s’appliquent en vue d’augmenter la quantité de données ainsi que leur diversité afin qu’elles ressemblent à celles du monde réel. L’augmentation des données peut nécessiter des transformations géométriques, des inversions, du rognage, des conversions et l’injection de bruit, entre autres. Toutes ces tâches peuvent demander un temps et des efforts considérables de la part du spécialiste du Deep Learning. Cette étape est généralement longue et fastidieuse et peut nécessiter des connaissances et une expérience approfondies et spécialisées.
- Déduction automatique de la taille de lot : la sortie de l’outil Exporter les données d’entraînement pour le Deep Learning est un dossier contenant un jeu de données d’entraînement de Deep Learning. Ces données exportées comportent un grand nombre d’images, qui doivent être envoyées par lots en fonction des ressources de calcul disponibles. L’outil automatise le processus de calcul de la taille de lot optimale pour entraîner le modèle de Deep Learning en fonction des ressources disponibles.
- Entraînement et sélection des modèles : à l’étape d’entraînement des modèles, le spécialiste du Deep Learning choisit le réseau de Deep Learning approprié en fonction du problème et des caractéristiques des données. Il commence ensuite le processus itératif d’entraînement des modèles pour les adapter aux données, ce qui implique souvent de tester différents réseaux neuronaux de Deep Learning. Chacun de ces algorithmes peut avoir plusieurs hyperparamètres différents, qui sont des valeurs spécifiées manuellement par le spécialiste du Deep Learning et déterminant le mode d’apprentissage du modèle. Ces hyperparamètres sont ensuite optimisés (autrement dit, ajustés) dans le but d’améliorer les performances de l’algorithme et d’obtenir de meilleurs résultats. Il s’agit d’un processus itératif nécessitant le temps et l’expertise d’un spécialiste du Deep Learning. Les différents modèles de réseaux neuronaux incluent des modèles de détection d’objets tels que SingleShotDetector et RetinaNet, YoloV3, FasterRCNN et MMDetection. Les modèles de classification de pixels tels que les modèles UnetClassifier, PSPNetClassifier, DeepLab et MMSegmentation conviennent mieux à certaines données en particulier. Il est difficile de prévoir quels modèles seront efficaces sur un jeu de données spécifique. Vous devez donc essayer tous les modèles pour en comparer les performances avant de choisir le modèle qui convient le mieux aux données.
- Optimisation des hyperparamètres : bien que la plupart des étapes précédentes soient des étapes itératives, l’étape qui s’avère souvent la plus difficile lors de l’entraînement de modèles de Machine Learning est celle de l’optimisation des hyperparamètres.
On peut considérer les hyperparamètres comme des leviers fournis avec chaque modèle. Les hyperparamètres qui sont utilisés dans l’entraînement des modèles incluent la déduction d’une vitesse d’apprentissage et d’un backbone approprié.
- Évaluation des modèles : l’étape finale du processus de Deep Learning réside dans l’évaluation des modèles. Au cours de cette étape, vous vérifiez que les réseaux neuronaux de Deep Learning entraînés et optimisés sont correctement généralisés pour des données auxquelles ils n’ont pas été adaptés. Ces données inédites sont souvent considérées comme un jeu de validation ou de test et sont conservées séparément du reste des données utilisées pour entraîner le modèle. L’objectif de cette étape finale est de s’assurer que les réseaux de Deep Learning fournissent une exactitude prédictive acceptable sur de nouvelles données.
Dans un processus de Deep Learning, il est clair qu’il existe à chaque étape des degrés variables d’intervention humaine, de prise de décision et de choix.
- Les données appropriées ont-elles été collectées pour résoudre le problème ? En quantité suffisante ?
- Qu’est-ce qu’une classe d’arrière-plan au regard des données ?
- Par quoi remplacer les éventuelles données incorrectement étiquetées ?
- Pour combien d’époques le modèle de Deep Learning doit-il être entraîné ?
- Quel réseau neuronal de Deep Learning faut-il utiliser ?
- Quel est le niveau de performance acceptable pour le modèle ?
- Quelle est la meilleure combinaison d’hyperparamètres pour un modèle donné ?
Cette dernière décision est susceptible d’impliquer des centaines, voire des milliers de combinaisons d’hyperparamètres pouvant être itérés. Si vous entraînez et optimisez de nombreux réseaux de Deep Learning, le processus tout entier commence à devenir ingérable et improductif. En outre, plusieurs des étapes du processus de Deep Learning nécessitent une expertise et une compréhension technique des méthodes de Data Science, des statistiques et des algorithmes de Deep Learning. La conception et l’exécution des projets de Deep Learning, de par leur nature, peuvent être longues, fastidieuses, coûteuses et souvent très dépendantes de spécialistes du Deep Learning et de data scientists formés.
La dernière décennie a vu l’essor rapide des technologies de Deep Learning, qu’il s’agisse de leurs applications diverses ou des nombreuses recherches qu’elles suscitent. Certains des principaux moteurs à l’origine de cette croissance sont la maturité des algorithmes et méthodes de Deep Learning eux-mêmes, la génération et la prolifération de volumes colossaux de données à partir desquels les algorithmes apprennent, l’abondance de ressources informatiques abordables pour exécuter les algorithmes, et la prise de conscience croissante par les entreprises du fait que les algorithmes de Deep Learning sont adaptés à des structures de données et problèmes complexes.
De nombreuses organisations souhaitent adopter les technologies de Deep Learning pour exploiter leurs données et en retirer de nouvelles informations exploitables. Il existe pourtant un déséquilibre entre le nombre d’applications potentielles du Deep Learning et le nombre de spécialistes experts et qualifiés dans ce domaine qui sont capables de les traiter. C’est pourquoi on assiste à une demande croissante de démocratisation des technologies de Deep Learning dans les organisations, par le biais de la création d’outils qui les rendent largement accessibles au sein de l’organisation et qui peuvent être utilisés clé en main aussi bien par des non-experts que par des spécialistes du domaine.
Récemment, AutoDL (Automated Deep Learning) a émergé comme un moyen de satisfaire la très forte demande de mise en place du Deep Learning à tous les niveaux d’expérience et de compétence des organisations. AutoDL vise à créer un système unique pour automatiser (autrement dit, éliminer l’intervention humaine) au maximum le processus de Deep Learning, y compris la préparation des données, l’augmentation des données, la sélection des modèles, l’optimisation des hyperparamètres et l’évaluation des modèles. Cette approche peut profiter aux non-experts en rendant plus abordables les technologies de Deep Learning, mais également aux spécialistes experts du domaine en éliminant certaines des tâches les plus fastidieuses et longues du processus de Deep Learning.
AutoDL pour les non-experts en Deep Learning (analystes SIG, analystes opérationnels ou analystes de données qui sont spécialisés dans un domaine) : l’utilisation d’AutoDL a pour principal avantage d’éliminer certaines des étapes du processus de Deep Learning qui demandent le plus d’expertise et de compréhension technique. Les analystes spécialisés dans un domaine peuvent définir leur problème métier et collecter les données appropriées, laissant alors l’ordinateur apprendre à faire le reste. Ils n’ont pas besoin de disposer de connaissances approfondies des techniques de Data Science pour le nettoyage et l’augmentation des données, ni de savoir ce que font tous les réseaux neuronaux de Deep Learning, ni de consacrer du temps à explorer différents réseaux et différentes configurations d’hyperparamètres. Ces analystes peuvent exploiter leurs connaissances techniques dans le cadre d’un problème métier ou scénario précis, plutôt que porter leur action sur le processus de Deep Learning proprement dit. En outre, dans leur organisation, ils peuvent être moins dépendants des data scientists et des ingénieurs en Deep Learning formés, car ils peuvent créer et utiliser des modèles avancés par eux-mêmes, souvent sans qu’aucune expérience en matière de codage ne soit nécessaire.
AutoDL pour les experts en Deep Learning (data scientists ou ingénieurs en Deep Learning) : AutoDL peut être extrêmement utile aux experts en Deep Learning, bien que les raisons puissent être moins évidentes. Par exemple, les experts en Deep Learning n’ont pas besoin de consacrer autant de temps à assister les spécialistes des autres domaines dans leur organisation et peuvent ainsi se concentrer sur leur propre travail de Deep Learning plus avancé. Concernant les projets de Deep Learning des experts en la matière, AutoDL peut permettre d’économiser un temps considérable et de renforcer la productivité. Il est possible d’automatiser une grande partie des étapes chronophages du processus de Deep Learning (par exemple, l’augmentation des données, la sélection des modèles et l’optimisation des hyperparamètres). Le temps gagné grâce à l’automatisation d’un grand nombre de ces étapes exploratrices répétitives peut être consacré à des tâches techniques plus avancées ou à des tâches nécessitant davantage d’intervention humaine (par exemple, collaboration avec des spécialistes d’autres domaines, compréhension du problème métier ou interprétation des résultats du Deep Learning).
Outre le gain de temps apporté, AutoDL peut également renforcer la productivité des spécialistes du Deep Learning car il élimine certains des choix et des expérimentations subjectifs inhérents au processus de Deep Learning. Par exemple, un spécialiste du Deep Learning abordant un nouveau projet dispose probablement de la formation et de l’expertise qui l’aideront à choisir les nouvelles fonctionnalités à concevoir, ainsi qu’à déterminer le meilleur réseau de Deep Learning pour un problème spécifique et les hyperparamètres les plus efficaces. Toutefois, il se peut qu’il néglige la conception de certaines nouvelles fonctionnalités ou qu’il ne teste pas toutes les combinaisons possibles d’hyperparamètres pendant qu’il exécute le processus de Deep Learning. De plus, le spécialiste du Deep Learning peut fausser le processus de sélection de fonctionnalités ou le choix de l’algorithme, car il préfèrera un réseau de Deep Learning en particulier suite à ses travaux précédents ou aux résultats obtenus dans d’autres scénarios de Deep Learning qu’il a rencontrés. En réalité, aucun algorithme de Deep Learning n’est optimal avec tous les jeux de données. Certains algorithmes de Deep Learning sont plus sensibles que d’autres à la sélection des hyperparamètres, et de nombreux problèmes métier présentent des degrés variables de complexité et des besoins différents en matière d’interprétation par les algorithmes de Deep Learning utilisés pour les résoudre. AutoDL peut aider à réduire une partie de cette influence humaine en appliquant de nombreux réseaux de Deep Learning différents au même jeu de données, puis en déterminant celui qui s’avère le plus efficace.
Un spécialiste du Deep Learning peut également se servir d’AutoDL comme référence ou point de départ initial dans un projet de Deep Learning. Il peut l’utiliser afin de développer automatiquement un modèle de référence pour un jeu de données, ce qui peut lui apporter des informations préliminaires sur un problème spécifique. Il peut ensuite décider d’ajouter ou de supprimer certaines entités dans le jeu de données en entrée ou de s’intéresser à un réseau de Deep Learning en particulier pour en optimiser les hyperparamètres. En ce sens, un spécialiste du Deep Learning formé peut percevoir AutoDL comme un moyen d’affiner ses choix initiaux afin de pouvoir se concentrer sur l’amélioration des performances du système de Deep Learning dans son ensemble. Il s’agit d’un processus très courant dans la pratique, au cours duquel les experts en Deep Learning développent une référence orientée sur les données avec AutoDL, puis exploitent cette référence en intégrant leur expertise pour affiner les résultats.
En définitive, démocratiser le Deep Learning via AutoML dans une organisation permet aux experts spécialisés dans un domaine de se concentrer sur le problème métier et d’obtenir des résultats exploitables, permet à davantage d’analystes de créer des modèles plus performants, et peut limiter le nombre d’experts en Deep Learning que l’organisation doit recruter. Cela peut également renforcer la productivité des spécialistes du Deep Learning et des data scientists formés, leur permettant de concentrer leur expertise sur la multitude d’autres tâches qui en ont le plus besoin.
Interpréter les rapports en sortie
L’outil Entraîner à l’aide d’AutoDL génère des paquetages de Deep Learning entraînés (.dlpk) et affiche un tableau de classement inclus dans la fenêtre des résultats de l’outil.
Le tableau de classement affiche les modèles évalués et leur valeur de mesure. Dans le cas du problème de détection d’objets, le modèle avec le score de précision moyen le plus élevé est considéré comme le meilleur modèle, tandis qu’en cas de problème de classification de pixels, le modèle avec la précision la plus élevée est considéré comme le meilleur.
Vous avez un commentaire à formuler concernant cette rubrique ?