Skip to main content

Exploiter le potentiel de l’apprentissage profond dans le système ArcGIS

Comment pouvez-vous exploiter le potentiel des données massives? Grâce aux outils d’apprentissage profond d’ArcGIS, vous pouvez créer des algorithmes capables de faire des prévisions et de repérer des tendances dans des quantités massives de données. Apprenez les meilleures pratiques dans ce domaine de pointe de l’intelligence artificielle (IA) pour vous assurer que vos algorithmes sont efficaces et produisent des résultats précis.

L’intelligence artificielle, l’apprentissage automatique et l’apprentissage profond transforment notre façon de vivre et de travailler. Grâce à leur capacité à traiter de grandes quantités de données et à effectuer des tâches plus rapidement et parfois plus précisément que les humains, ces technologies de pointe créent de nouvelles possibilités et prédisent les tendances à venir dans des domaines clés tels que les soins de santé, les finances, la technologie et la géographie. Bien que l’IA, l’apprentissage automatique et l’apprentissage profond soient liés et puissent se chevaucher à certains égards, il existe des différences importantes. Dans le présent billet de blogue, je définirai ces concepts afin d’en faciliter la compréhension, en mettant l’accent sur l’apprentissage profond et les meilleures pratiques pour en exploiter le plein potentiel dans le système ArcGIS.

Différences entre l’intelligence artificielle, l’apprentissage automatique et l’apprentissage profond

La figure 1 illustre l’intersection entre ces trois concepts. L’IA est un vaste domaine qui englobe diverses approches visant à faire exécuter par des ordinateurs des tâches qui requièrent normalement l’intelligence humaine. L’apprentissage automatique est un sous-ensemble de l’IA qui consiste à entraîner des ordinateurs à apprendre à partir de données et à dégager des tendances. L’apprentissage profond est un type d’apprentissage automatique qui utilise des réseaux de neurones artificiels pour apprendre et faire des prévisions, en particulier pour des tâches complexes telles que la reconnaissance d’images et de la parole.

L’IA, l’apprentissage automatique et l’apprentissage profond peuvent être visualisés comme un ensemble de cercles concentriques, avec l’IA dans le cercle le plus extérieur et l’apprentissage profond dans le cercle le plus intérieur.

Figure 1 : Intersection entre l’IA, l’apprentissage automatique et l’apprentissage profond.

Pourquoi l’apprentissage profond est-il important et comment fonctionne-t-il?

L’apprentissage profond a révolutionné de nombreux aspects de notre société au cours de la dernière décennie, qu’il s’agisse de repérer et de classer des objets dans des images ou de permettre des conversations fluides avec Siri et Alexa. De plus, il s’agit d’une technologie importante à la base des voitures autonomes, permettant à celles-ci de reconnaître un panneau d’arrêt ou de distinguer un piéton d’un réverbère. L’apprentissage profond s’appuie sur des réseaux de neurones artificiels, c’est-à-dire des algorithmes informatiques inspirés de la structure et du fonctionnement du cerveau humain. Un réseau de neurones, illustré à la figure 2, se compose de plusieurs couches de nœuds interconnectés, chacun d’entre eux exécutant un calcul simple sur les données qu’il reçoit. Les sorties d’une couche servent d’entrées à la suivante, ce qui permet au réseau d’apprendre des relations de plus en plus complexes entre les entrées et les sorties. C’est pourquoi on parle d’apprentissage « profond » : le réseau est capable d’apprendre des représentations profondes des données et de faire des prévisions sur cette base.

 

La couche d’entrée d’un réseau de neurones se compose d’un ensemble de nœuds, chacun d’entre eux étant connecté aux nœuds de la couche suivante. Les ensembles de nœuds du réseau de neurones situés entre les couches d’entrée et de sortie sont des couches cachées.

Figure 2 : Les réseaux de neurones artificiels sont constitués de couches de nœuds interconnectés.

Les réseaux de neurones traditionnels ne contiennent que 2 ou 3 couches cachées, tandis que les réseaux plus complexes et plus profonds peuvent comporter jusqu’à 150 couches cachées, voire plus. Chaque couche cachée augmente la complexité des attributs appris. Par exemple, dans un réseau de neurones de reconnaissance d’images, la première couche cachée pourrait apprendre à détecter les bords et la dernière, à détecter les formes complexes propres de l’objet que vous tentez de reconnaître.

Différences entre l’apprentissage automatique et l’apprentissage profond

L’apprentissage profond est une forme spécialisée d’apprentissage automatique. Alors qu’un flux de travaux d’apprentissage automatique nécessite l’extraction manuelle des attributs pertinents des images, un flux de travaux d’apprentissage profond extrait automatiquement ces attributs et les utilise pour créer un modèle qui catégorise les objets de l’image (comme le montre la figure 3). L’une des caractéristiques de l’apprentissage profond est sa capacité à s’améliorer continuellement au fil du temps, à mesure qu’il est exposé à davantage de données. Il est donc particulièrement bien adapté aux applications complexes et en évolution rapide, pour lesquelles les méthodes traditionnelles d’apprentissage automatique peuvent avoir du mal à suivre.

Avec l’apprentissage automatique (flux de travaux supérieur), les objets à classer, par exemple les bicyclettes, doivent d’abord être extraits manuellement. Avec l’apprentissage profond (flux de travaux inférieur), l’identification des objets est effectuée par le réseau de neurones.

Figure 3 : Une approche d’apprentissage automatique (en haut) opposée à une approche d’apprentissage profond (en bas) pour catégoriser les bicyclettes.

Intégration de l’IA dans ArcGIS

L’intégration de l’IA dans les systèmes d’information géographique (SIG) a permis d’améliorer l’analyse des données. Résultat? Il est possible de prendre de meilleures décisions et de trouver des solutions à des problèmes concrets dans divers domaines, tels que les interventions d’urgence et la gestion des catastrophes. En outre, les SIG alimentés par l’IA peuvent automatiser les tâches fastidieuses, de sorte que les ressources ont le temps de se consacrer à des activités plus importantes. ArcGIS est un système interopérable qui permet l’intégration de méthodes et de techniques complémentaires s’appuyant sur Python ou R. Dans ArcGIS Pro, l’apprentissage automatique est un composant central de nombreux outils de géotraitement qui contribuent à résoudre des problèmes de classification (p. ex., machines à vecteurs de support), d’agrégation (p. ex., agrégation basée sur la densité) et de prévision (p. ex., régression et classification basées sur une forêt).

L’utilisation de l’apprentissage profond dans ArcGIS présente de nombreux avantages, notamment la possibilité d’analyser une variété de données géospatiales (p. ex., des images satellitaires, l’imagerie en mouvement, etc.) et d’effectuer un flux de travaux de bout en bout (figure 4) : de la préparation des données au partage des résultats avec des collègues et des parties prenantes par le biais de couches web, de cartes, d’applications et de tableaux de bord, en passant par l’analyse exploratoire des données, l’entraînement de modèles et l’exécution d’analyses spatiales. En outre, ArcGIS Living Atlas donne accès à une vaste collection de modèles d’apprentissage profond préalablement entraînés et validés par Esri, qui peuvent s’avérer précieux pour votre flux de travaux d’apprentissage profond.

Voici un exemple de flux de travaux d’apprentissage profond pouvant être exécuté dans ArcGIS : gestion des images, étiquetage et préparation des données, entraînement du modèle, inférence à partir du modèle, analyse des résultats et partage des résultats avec les travailleurs sur le terrain ou par le biais d’applications de surveillance.

Figure 4 : Un flux de travaux d’apprentissage profond de bout en bout dans le système ArcGIS.

Meilleures pratiques en matière d’apprentissage profond

L’apprentissage profond est un domaine qui évolue rapidement. Pour en exploiter le plein potentiel, il est important de suivre les meilleures pratiques, qui comprennent les étapes suivantes :

  1.  Choisissez le matériel approprié : les algorithmes d’apprentissage profond nécessitent d’importantes ressources informatiques; il est donc essentiel de s’équiper d’un matériel capable de répondre aux exigences du modèle choisi. Nous recommandons une unité de traitement graphique (UTG) avec suffisamment de mémoire (8 Go ou plus) pour accélérer le temps de traitement.
  2.  Planifiez le stockage des données : une infrastructure correctement conçue et maintenue est nécessaire pour stocker et gérer les grands volumes de données nécessaires à l’entraînement des modèles d’apprentissage profond. Il s’agit d’une étape essentielle pour s’assurer que les données sont correctement formatées, efficacement stockées, évolutives et abordables. En ce qui concerne l’apprentissage profond, il est possible de recourir à l’une ou l’autre de ces options modernes de stockage de données en nuage : Amazon S3, Google Cloud et Microsoft Azure.
  3.  Prétraitez vos données : le prétraitement des données brutes peut contribuer à améliorer les performances des modèles d’apprentissage profond. Il peut s’agir de tâches telles que la normalisation et l’augmentation.
  4.  Sélectionnez des données d’entraînement de haute qualité : pour que les algorithmes d’apprentissage profond soient efficaces, ils doivent être entraînés à partir de données de haute qualité. Les données d’entraînement doivent être diversifiées et représentatives du problème que vous tentez de résoudre. Certains outils offerts dans le Gestionnaire d’échantillons d’entraînement d’ArcGIS Pro peuvent être d’une grande aide à cette étape.
  5.  Divisez vos données en ensembles d’entraînement et de validation : vous devez disposer d’un ensemble de données de validation afin d’évaluer correctement les performances de votre modèle. Voici un exemple de répartition courante : 90 % pour l’entraînement et 10 % pour la validation. Toutefois, la répartition optimale dépend de facteurs tels que la structure du modèle et le volume de données d’entraînement.
  6.  Sélectionnez un modèle : il existe de nombreux types d’algorithmes d’apprentissage profond, chacun ayant ses propres forces et faiblesses. Pour sélectionner le modèle le mieux adapté à un problème particulier, il faut tenir compte du type de données avec lesquelles vous travaillez, de la nature du problème et des ressources informatiques à votre disposition. Pour en savoir plus sur les modèles d’apprentissage profond disponibles et leurs cas d’utilisation, consultez la documentation en ligne d’ArcGIS Pro.
  7.  Réglez les hyperparamètres : les hyperparamètres sont des paramètres définis avant l’entraînement du modèle (c’est-à-dire qu’ils ne sont pas appris à partir de données pendant l’entraînement). Ils régissent le processus d’apprentissage et l’architecture globale du modèle. Certains des hyperparamètres courants dans le domaine de l’apprentissage profond sont le taux d’apprentissage, la taille de lot, le nombre d’époques et la fonction d’activation.
  8.  Surveillez les performances du modèle : une surveillance régulière des performances d’un modèle permet de s’assurer qu’il fonctionne comme prévu. Il peut s’agir de contrôler des paramètres précis tels que l’exactitude, la perte d’entraînement et la perte de validation. Dans ArcGIS Pro, l’outil Calculer la précision de la détection des objets calcule la précision d’un modèle d’apprentissage profond en comparant les objets détectés aux données de référence sur le terrain.
  9.  Cessez l’entraînement : vous pouvez également suivre les performances du modèle sur un ensemble de validation et cesser l’entraînement lorsque les performances commencent à se dégrader (p. ex., lorsque la perte s’accentue ou que la précision diminue). Cette approche permet d’éviter le surapprentissage, c’est-à-dire que le modèle devient trop spécialisé par rapport aux données d’entraînement et ne donne pas de bons résultats sur des données inconnues.
  10. Testez votre modèle sur de nouvelles données : il est important de tester votre modèle sur un ensemble de données qu’il n’a jamais vu auparavant afin d’obtenir une estimation plus réaliste de ses performances. Cela peut vous aider à relever des problèmes ou à établir les limites de votre modèle.

En suivant ces meilleures pratiques, vous serez en mesure d’exploiter le plein potentiel de l’apprentissage profond dans le système ArcGIS et d’obtenir des résultats optimaux.