Introduction aux réseaux de neurones

Ajouter à la bibliothèque

H3730 V1 Article de référence

Introduction aux réseaux de neurones

Auteur(s) : Daniel ETIEMBLE, Fabrice AUZANNEAU

Date de publication : 10 mars 2023 | Read in english

Ajouter à la bibliothèque Ajouter à la bibliothèque

Logo Techniques de l'Ingenieur Cet article est réservé aux abonnés
Pour explorer cet article plus en profondeur Consulter un extrait gratuit

Déjà abonné ?

Présentation

RÉSUMÉ

Cet article est une introduction aux réseaux de neurones. Après un bref historique, le neurone artificiel est présenté avec les différentes fonctions d’activation. Le principe des réseaux est introduit avec les étapes apprentissage et inférence. Le perceptron monocouche avec des exemples d’implantation des fonctions logiques ET et OU, puis le perceptron multicouche sont introduits, avec les principes des algorithmes de rétropropagation du gradient pour la mise à jour des poids des neurones. Les caractéristiques des réseaux de neurones profonds sont présentées, notamment les réseaux convolutionnels (CNN) et des réseaux récurrents. L’implantation des réseaux de neurones est abordée : programmation à l’aide de bibliothèques comme TensorFlow et supports matériels (processeurs neuronaux, opérateurs matériels spécialisés, formats de données réduits, etc.). Les caractéristiques permettant d’utiliser des réseaux de neurones pour l’embarqué sont présentées.

Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.

Lire l'article

AUTEUR(S)

  • Daniel ETIEMBLE : Ingénieur de l’INSA de Lyon - Professeur émérite à l’université Paris Saclay

  • Fabrice AUZANNEAU : Ingénieur chercheur en IA embarquée - CEA List

 INTRODUCTION

S’inspirant du fonctionnement des neurones du cerveau, les réseaux de neurones artificiels sont définis dans les années 1940. Le perceptron est introduit en 1957, puis le perceptron multicouche en 1986. Ils ont disparu de l’actualité pendant une période avant de revenir au premier plan dans les années 2000 avec les réseaux de neurones profonds.

Le neurone artificiel est présenté avec les différentes fonctions d’activation. Le fonctionnement du perceptron monocouche est présenté avec les exemples d’implantation des fonctions logiques OU et ET ainsi que ses limites. Les caractéristiques des perceptrons multicouches sont détaillées avec notamment les principes de la rétropropation de gradient qui permet la mise à jour des poids des neurones des différentes couches.

Les réseaux de neurones profonds ont marqué une étape décisive dans le développement et l’utilisation des réseaux de neurones. Les réseaux de neurones convolutionnels (CNN) sont détaillés ; les couches convolution et pooling précédant les couches complètement connectées qui permettent de restreindre les tailles de données en extrayant les caractéristiques spatiales simples (comme des contours) que les couches suivantes combinent pour former des concepts plus complexes et abstraits : assemblage de contours en motifs, de motifs en parties d’objets, de parties d’objets en objets, etc. C’est ce qui permet d’utiliser des milliers de configurations différentes en entrées du réseau. Les caractéristiques de réseaux récurrents, permettant la reconnaissance de séquences d’entrée, sont également présentées.

L’implantation des réseaux de neurones a des aspects logiciels et matériels :

  • programmation. Des bibliothèques logicielles comme TensorFlow, Caffee, Torch et PyTorch sont utilisables sur ordinateurs avec CPU multicœurs sans ou avec GPU. Les différentes opérations sont définies sous forme d’un graphe : l’exécution du programme place les différentes opérations sur CPU, GPU ou tout autre processeur ou accélérateur spécifique et définit les méthodes pour leur exécution ;

  • support matériel. Des opérateurs matériels spécialisés (convolution, pooling) sont disponibles sous forme d’IP pour les systèmes sur puce (SoC) ; des processeurs neuronaux sont disponibles (processeurs neuronaux d’ARM, TPU de Google). Par ailleurs, des formats de données réduits comme les flottants 16 bits sont intégrés dans des processeurs neuronaux ou GPU pour réduire l’empreinte mémoire et la consommation et accélérer les calculs.

Les réseaux de neurones sont de plus en plus utilisés dans les applications embarquées. Les contraintes des composants embarqués impliquent de réduire et d’optimiser les réseaux...

Cet article est réservé aux abonnés
Logo Techniques de l'Ingenieur

Cet article est réservé aux abonnés. Il vous reste 92 % à découvrir.

Cet article est réservé aux abonnés Consulter un extrait gratuit

Déjà abonné ?


MOTS-CLÉS

apprentissage   |   réseau de neurones   |   perceptron   |   inférence   |   réseau convolutionnel   |   réseau récurrent   |   implémentation des réseaux neuronaux   |   RN pour l'embarqué

DOI (DIGITAL OBJECT IDENTIFIER)

https://doi.org/10.51257/a-v1-h3730

Lecture en cours
Introduction aux réseaux de neurones

Article inclus dans l'offre

"Technologies logicielles Architectures des systèmes"

( 408 articles )

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques.

Services

Quiz, médias, tableaux, formules, vidéos, etc.

Des modules pratiques

Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses.

Des avantages inclus

Un ensemble de services exclusifs en complément des ressources.

Voir le détail de l'offre

Dans les ressources documentaires

Plateformes de développement faible coût pour la domotique, la robotique et le prototypage des systèmes embarqués

Les plateformes bas-coût sont populaires pour la formation en électronique et informatique sur des applic...

Méthodes formelles pour la vérification des systèmes embarqués

Les systèmes embarqués sont soumis à de nombreuses contraintes et certains sont en interaction étroite av...

Introduction à la conception conjointe matériel/logiciel - Une vision générale

Cet article introduit la conception conjointe matériel/logiciel des systèmes intégrés sur ...

UML pour le temps réel : le langage et les méthodes

UML est utilisé industriellement pour le développement de logiciels. Son introduction plus récente dans l...

Tous les livres blancs
Toutes les actualités

Inscrivez-vous aux newsletters !

Contactez-nous