Des lignes et des boîtes orange lumineuses dans une grille représentent un réseau de deep learning en intelligence artificielle.

Réseaux neuronaux convolutifs (CNN), Deep Learning et vision par ordinateur

Les réseaux neuronaux convolutifs (CNN) sont des architectures de deep learning utilisées dans diverses applications, notamment le traitement des images et des vidéos, le traitement du langage naturel (NLP) et les systèmes de recommandation.

Les points à retenir du Deep Learning du CNN

  • Un modèle CNN est un type d'algorithme de deep learning qui analyse et apprend des caractéristiques à partir de grandes quantités de données.

  • Le développement et le déploiement d'un modèle CNN est un processus complexe comportant trois étapes : l'entraînement, l'optimisation et l'inférence.

  • La vision par ordinateur combine du matériel et des logiciels optimisés pour les opérations CNN afin d'accélérer le traitement et l'analyse des images.

  • Les technologies de vision par ordinateur extraient des données des vidéos pour les utiliser dans des secteurs tels que l'industrie, les soins de santé et l'administration.

  • L'écosystème de développement de l'IA d'Intel offre des ressources logicielles, des outils et du silicium optimisés pour les opérations de CNN.

author-image

Par

Que sont les CNN et le Deep Learning ?

Un réseau neuronal convolutif est un type d'algorithme de deep learning qui est le plus souvent appliqué, pour analyser et apprendre des caractéristiques visuelles, à partir de grandes quantités de données. Bien qu'ils soient principalement utilisés pour les applications d'IA liées à l'image, les CNN peuvent être utilisés pour d'autres tâches d'IA, notamment dans le traitement du langage naturel et dans les moteurs de recommandation.

L'IA, l'apprentissage par machine et le Deep Learning

Avant de vous plonger dans le fonctionnement des CNN, il est important de comprendre comment ces algorithmes de deep learning se rapportent au domaine plus large de l'IA et les distinctions entre les termes clés couramment utilisés dans ce domaine.

 

  • L'intelligence artificielle : le domaine de l'informatique axé sur les programmes informatiques intelligents capables de sentir, de raisonner, d'agir et de s'adapter.
  • L'apprentissage par machine : un sous-ensemble de l'IA dans lequel les algorithmes peuvent améliorer en performance au fil du temps lorsqu'ils sont mis en présence de plus de données.
  • Le réseau neuronal :une série d'algorithmes utilisés comme processus dans l'apprentissage par machine qui peut reconnaître les signaux et des relations dans de grandes quantités de données. Les réseaux neuronaux utilisent une structure logique inspirée du cerveau humain et constituent la base des algorithmes pour le deep learning.
  • Le Deep learning : un sous-domaine de l'apprentissage par machine dans lequel les réseaux neuronaux multicouches apprennent à partir de grandes quantités de données.

Comment fonctionne les CNN ?

Les réseaux neuronaux convolutifs fonctionnent en ingérant et en traitant de grandes quantités de données dans un format de grille, puis en extrayant des caractéristiques granulaires importantes pour la classification et la détection. Les CNN se composent généralement de trois types de couches : une couche convolutive, une couche de mise en commun et une couche entièrement connectée. Chaque couche a un objectif différent, exécute une tâche sur les données ingérées et apprend des quantités croissantes de complexité.

Les CNN pour les analyses vidéos

Pour mieux comprendre le fonctionnement des CNN, examinons un exemple de CNN utilisé pour l'analyse vidéo, un processus dans lequel les modèles de vision par ordinateur basés sur les CNN analysent les vidéos capturées et en extraient des informations exploitables. La vision par ordinateur est à la fois un sous-domaine du deep learning et de l'apprentissage par machine qui combine des caméras, des ressources en périphérie ou dans le cloud, des logiciels, du deep learning et des CNN pour former des réseaux neuronaux qui guident les systèmes dans leur traitement et leur analyse d'images. Une fois complètement formés, les modèles de vision par ordinateur peuvent effectuer la reconnaissance et la détection d'objets et même suivre le mouvement.

Pour cet exemple d'analyse vidéo, supposons que les données d'entrée sont un ensemble de millions d'images de voitures.

 

  • Les couches convolutives appliquent des filtres aux données d'entrée et apprennent à détecter les caractéristiques. En général, il y a plusieurs couches convolutives connectées via des couches de mise en commun. Les premières couches convolutives extraient des caractéristiques générales ou de bas niveau, telles que les lignes et les bords, tandis que les couches ultérieures apprennent des détails plus fins ou des caractéristiques de haut niveau, telles que les phares ou les pneus d'une voiture.
  • Les couches de mise en commun diminuent la taille de la carte de caractéristiques convolutives afin de réduire les coûts de calcul.
  • Les couches entièrement connectées apprennent des signaux globaux basés sur les caractéristiques de haut niveau fournies par les couches convolutives et de mise en commun et génèrent les signaux globaux pour les voitures. Une fois que les données d'entrée sont passées par la couche entièrement connectée, la dernière couche active le modèle et le réseau neuronal émet ses prédictions.

Comment les CNN sont-ils développés ?

Les CNN sont essentiels pour le deep learning et permettent divers cas d'utilisation dans toutes les industries et dans le monde entier. Mais pour véritablement saisir leur impact, vous devez comprendre comment ils sont développés. Le développement de CNN est un processus long et complexe en trois étapes, qui comprend : l'apprentissage, l'optimisation et l'inférence. Intel travaille directement avec les développeurs et les scientifiques des données pour trouver de nouvelles méthodes de rationaliser et d'accélérer ce processus afin que les nouvelles solutions puissent être opérationnelles plus rapidement et plus facilement.

Formation

La formation des réseaux neuronaux est généralement la partie la plus longue et la plus difficile de la création de CNN pour le deep learning. Au cours de la phase d'apprentissage supervisé, les développeurs enseignent au réseau comment accomplir une tâche spécifique, telle que la classification d'images. Il s'agit de rassembler un vaste ensemble de données comprenant des milliers ou des millions d'images, d'alimenter le réseau avec ces images et de permettre au réseau de prédire ce que l'image représente. Si la prédiction est erronée, les neurones doivent être mis à jour avec la bonne réponse afin que les prédictions futures pour la même image soient exactes. Ce processus se poursuit jusqu'à ce que le développeur soit satisfait de l'exactitude des prédictions du réseau neuronal. Cependant, Intel a créé un kit d'outils pour raccourcir considérablement ce processus : le kit d'outils du développeur Intel® oneAPI DL Frame. Il offre des blocs de construction déjà optimisés pour rationaliser la conception, la formation et la validation des réseaux neuronaux.

Optimisation

De nombreux développeurs optimisent le réseau neuronal ignorant qu'il s'agit d'une étape du développement appelée optimisation. Lorsqu'elle est effectuée correctement, l'optimisation peut simplifier considérablement le modèle de réseau et améliorer les performances d'inférence. La distribution Intel® du kit d'outils OpenVINO™ permet aux développeurs de convertir et d'optimiser leurs modèles de réseaux neuronaux qui sont développés à l'aide de cadres populaires tels que TensorFlow, PyTorch et Caffe. L'outil d'optimisation postformation contenu dans le kit d'outils permet de réduire la taille du modèle tout en améliorant la latence avec une faible dégradation de l'exactitude et sans recyclage.

Inférence

Une fois qu'un réseau neuronal a été formé et optimisé, il est déployé en tant que modèle pour effectuer des inférences, c'est-à-dire classer, reconnaître et traiter de nouvelles entrées et faire de nouvelles prédictions. Grâce à la distribution Intel® du kit d'outils OpenVINO™ Inference Engine, les développeurs peuvent optimiser les performances en compilant le réseau optimisé et en gérant les opérations d'inférence sur des appareils spécifiques. Il optimise également de manière automatique à travers la découverte d'appareils, l'équilibrage de la charge et le parallélisme d'inférence sur les CPU, GPU et autres appareils matériels Intel®. Affichez les résultats du banc d'essai des performances de la distribution Intel® du kit d'outils OpenVINO™.

Le Deep Learning et les CNN continueront à faire partie des outils d'IA les plus puissants pour les développeurs et les entreprises à l'avenir.

Utilisations globales des CNN, du Deep Learning et de la vision par ordinateur

Des constructeurs automobiles aux administrations municipales, en passant par les aéroports et les magasins de détail, les entreprises de tous les domaines exploitent les modèles de vision par ordinateur de diverses manières. Le nombre de cas d'utilisation de la vision par ordinateur basée sur le deep learning ne fera qu'augmenter, car la technologie de calcul continue de progresser et l'IA peut être accélérée à moindre coût. Voici quelques usages ordinaires des CNN, du deep learning et de la vision par ordinateur dans le monde.

Industriel : détection des défauts

La détection manuelle des défauts dans la fabrication industrielle est coûteuse, sujette à des erreurs humaines et réalisée dans des environnements dangereux ou difficiles. Il est difficile de trouver des inspecteurs qualifiés pour cette tâche. C'est pourquoi certains fabricants commencent à explorer l'utilisation des technologies de deep learning, d'inférence, de vision artificielle et de vision par ordinateur pour automatiser la détection des défauts sur les chaînes de montage.

Par exemple, le soudage à l'arc robotisé est essentiel à la fabrication moderne de machines lourdes, mais il est sujet à des défauts tels que la porosité des soudures. Les soudures poreuses entraînent des faiblesses qui sont difficiles à inspecter, et il peut être nécessaire de retravailler les soudures ou de mettre les matériaux au rebut. Pour remédier à ce problème perpétuel, Intel a créé une solution de détection automatisée des défauts de soudure basée sur le système de vision EOS d'ADLINK avec la pile logicielle IdO ADLINK Edge et le modèle de reconnaissance d'action de la distribution Intel® du kit d'outils OpenVINO™. Au cœur de la solution se trouve un modèle de reconnaissance des actions de l'IA basé sur un réseau neuronal et formés sur des soudures avec et sans défauts de porosité. Il détecte les défauts de porosité en temps quasi réel, ce qui permet d'agir immédiatement. L'utilisation de cette solution peut aider les fabricants à réduire les délais, le gaspillage et les coûts tout en augmentant la productivité. 1

Sécurité des travailleurs : détection des EPI.

Dans les industries qui présentent un risque accru de blessures pour les employés, comme la construction, on ne saurait trop insister sur l'importance pour les travailleurs de porter des équipements de protection individuelle (EPI) - casques, chaussures spéciales, gilets, lunettes et harnais. Il est souvent difficile pour les superviseurs de sites de vérifier la conformité des EPI. En formant un modèle de deep learning CNN pour la détection d'objets, les développeurs peuvent permettre aux technologies de vision par ordinateur d'identifier et de déterminer si les travailleurs respectent leurs obligations en matière d'EPI.

Le module SecurOS de détection de casque proposé par les systèmes de sécurité intelligents (ISS) aide les entreprises à créer des espaces plus sûrs pour leurs travailleurs. Il utilise des algorithmes de réseaux neuronaux, la distribution Intel® du kit d'outils OpenVINO™ et des technologies de vision par ordinateur pour détecter si les travailleurs portent leur casque de protection ou leur casque de chantier. Si l'EPI n'est pas détecté, la solution envoie des alertes en temps quasi réel pour informer les superviseurs de la non-conformité d'un travailleur.

Villes intelligentes et sécurisées : contrôle et sécurité routière

Assurer la sécurité des citoyens et des passagers est toujours une priorité pour les autorités municipales et les responsables des transports publics.

La mise en œuvre de systèmes vidéo basés sur le deep learning peut fournir des niveaux de détails supplémentaires qui sont susceptibles de faire passer la sécurité à un niveau supérieur. Par exemple, en gérant le trafic dans les grandes villes à l'aide d'informations plus granulaires, les responsables des transports en commun sont en mesure de suivre les camions transportant des matières dangereuses et de les détourner des zones encombrées et à forte densité de population.

Une autre façon pour les villes intelligentes d'améliorer la sécurité publique, tout en augmentant la durabilité, est de réduire les embouteillages. La grande métropole de Taipei, à Taïwan, a récemment mis en œuvre une solution de contrôle de la circulation qui a permis de réduire les embouteillages de 10 à 15 %.2 La solution de signalisation intelligente permet la collecte et l'inférence de données visuelles à la périphérie - à l'intérieur des signaux de contrôle de la circulation - pour obtenir des informations en temps réel sur la circulation et contribuer à réduire les coûts d'infrastructure. Optimisée avec la distribution Intel® du kit d'outils OpenVINO™, la solution utilise un processeur Intel® Pentium® embarqué pour les charges de travail de vision industrielle. En outre, parce que l'inférence a lieu dans les appareils de signalisation routière, moins d'infrastructure de réseau était nécessaire, ce qui a permis au bureau d'ingénierie de la circulation de la ville de réduire les coûts de communication du réseau de 85 pourcent.

Vente au détail : gestion des stocks en rayon

Les acheteurs d'aujourd'hui ont de grandes attentes en matière de recherche et d'achat des produits qu'ils désirent. Une gestion faible signifie des ventes perdues et des clients mécontents. Traditionnellement, la gestion des stocks se fait manuellement, une tâche qui prend du temps et qui est sujette à l'erreur humaine. L'automatisation de l'inspection des rayons avec une gestion en temps réel via l'IA et la vision par ordinateur peut rendre la gestion des stocks plus rapide et plus précise.

Un fournisseur de solutions basé sur Intel utilise le deep learning et la vision par ordinateur pour sa solution hybride de gestion des stocks de détail. La solution utilise des réseaux neuronaux profonds optimisés par la distribution Intel® du kit d'outils OpenVINO™ et Intel® DevCloud pour la périphérie afin d'effectuer une détection de produits au niveau SKU via des caméras fixes. L'inférence à Edge est gérée par un processeur évolutif Intel® Xeon®, et un PC léger servant de passerelle. Grâce à la détection et aux notifications à la demande et en temps quasi réel, la solution permet aux détaillants d'accélérer la gestion des stocks et de le réaliser avec une granularité et une exactitude exceptionnelles.

Soins de santé : imagerie médicale accélérée

L'analyse visuelle des scanners de tomographie et d'autres types d'imagerie médicale peut être une tâche manuelle fastidieuse pour les radiologues, en particulier lorsque le volume de patients est élevé. L'application d'algorithmes d'IA aux appareils d'imagerie peut aider à signaler les cas critiques et à les classer par ordre de priorité pour les radiologues, ce qui pourrait accélérer le diagnostic, améliorer les résultats et réduire les coûts des soins de santé. Le besoin d'une imagerie alimentée par l'IA n'a jamais été aussi évident qu'au début de la pandémie de COVID-19. Dans les systèmes de santé, il y avait un besoin urgent d'outils de dépistage rapides et efficaces, pour identifier les patients infectés, afin d'assurer leur isolement et leur traitement. Toutefois, les professionnels de santé ont indiqué que les goulets d'étranglement les plus importants en matière de tri et de diagnostic étaient dus à la rareté et au long délai de traitement des tests viraux. Pour aider les cliniciens à détecter le COVID-19 chez les patients, DarwinAI a développé l'architecture CNN COVID-Net avec des optimisations réalisées à l'aide de la distribution Intel® du kit d'outils OpenVINO™. Lorsque les développeurs de DarwinAI ont testé l'architecture du modèle de réseau neuronal, ils ont obtenu un taux d'exactitude de 98,1 % tout en ayant une complexité architecturale et informatique relativement faible.3 Cela a permis aux radiologues de diagnostiquer un plus grand nombre de patients.

Pourquoi choisir Intel pour l'IA

Des infrastructures d'IA aux modèles de réseaux neuronaux optimisés, en passant par les outils de développement pour l'inférence de deep learning, sans oublier les accélérateurs et l'infrastructure de stockage optimisés pour l'IA, le portefeuille de bout en bout d'Intel comprend tout ce dont les développeurs et les entreprises ont besoin pour créer et déployer des applications d'IA à grande échelle.

Les produits logiciels d'Intel® destinés aux développeurs d'IA comprennent :

 

Les produits matériels Intel® AI comprennent :

 

Alimenter l'avenir avec les CNN et le deep learning

Le Deep Learning et les CNN continueront à faire partie des outils d'IA les plus puissants pour les développeurs et les entreprises à l'avenir. Les entreprises seront toujours amenées à trouver des solutions nouvelles et innovantes pour les aider à relever leurs uniques défis. Nombreux sont celles qui se tourneront vers des technologies reposant sur le deep learning et les CNN, comme la vision par ordinateur, l'IA, la réalité augmentée et la réalité virtuelle, pour trouver des solutions. À mesure que l'IA progresse, Intel s'engage à faire en sorte que les développeurs, les scientifiques des données, les chercheurs et les ingénieurs des données puissent préparer, construire, déployer et mettre à l'échelle leurs solutions d'IA de la manière la plus transparente possible.

Questions-Réponses

Un réseau neuronal convolutif est un type d'algorithme de deep learning qui est le plus souvent appliqué, pour analyser et apprendre des caractéristiques visuelles, à partir de grandes quantités de données. Bien qu'ils soient principalement utilisés pour les applications d'IA liées à l'image, les CNN peuvent être utilisés pour d'autres tâches d'IA, notamment dans le traitement du langage naturel et dans les moteurs de recommandation.

Les réseaux neuronaux convolutifs fonctionnent en ingérant et en traitant de grandes quantités de données visuelles dans un format de grille, puis en extrayant des caractéristiques granulaires importantes pour la classification et la détection. Tous les CNN ont une couche convolutive, une couche de mise en commun et une couche entièrement connectée. Chaque couche a un objectif différent, exécute une tâche sur les données ingérées et apprend des quantités croissantes de complexité.