Présentation

Article

1 - POSITIONNEMENT DES RÉSEAUX DE NEURONES

2 - GRANDES CARACTÉRISTIQUES DES RÉSEAUX DE NEURONES

3 - RÉSEAUX DE NEURONES PROFONDS

4 - FORMATS DE DONNÉES

5 - OPÉRATIONS SPÉCIFIQUES

6 - EXTENSION DU JEU D’INSTRUCTIONS INTEL64

7 - OPÉRATEURS SPÉCIALISÉS : TENSEURS ET CŒURS TENSEURS

8 - PROCESSEURS NEURONAUX

9 - CALCUL, MÉMORISATION ET COMMUNICATION

10 - REMARQUES POUR CONCLURE

Article de référence | Réf : H1098 v1

Opérations spécifiques
Supports matériels pour les réseaux de neurones profonds

Auteur(s) : Daniel ETIEMBLE

Date de publication : 10 août 2021

Pour explorer cet article
Télécharger l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !

Sommaire

Présentation

Version en anglais En anglais

RÉSUMÉ

Les applications de l’intelligence artificielle, utilisant notamment les réseaux de neurones profonds, ont conduit au développement de supports matériels pour accélérer leur exécution. Après un bref rappel des principes de ces réseaux, notamment les réseaux de neurones convolutionnels, les différents opérateurs nécessitant une accélération sont présentés. Les spécificités permettant l’utilisation d’une précision numérique réduite sont présentées, avec les formats de données correspondant. Les différentes techniques d’accélération sont présentées : ajout d’instructions, développement de composants matériels (opérateurs spécialisés à intégrer dans des systèmes sur puce, processeurs neuronaux) avec des exemples de circuits disponibles chez ARM, Intel, Google, NVidia, Xilinx.

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

Lire l’article

ABSTRACT

Hardware supports for Deep Neural Networks

Deep neural networks, widely used in artificial intelligence applications, have led to the development of hardware supports to accelerate their execution. After a brief review of the fundamentals of these networks, and particularly convolutional neural networks, the different operators which require acceleration are presented. The specificities allowing the use of reduced numerical precision are presented, with the corresponding data formats. The different acceleration techniques are presented: addition of instructions, development of hardware components (specialized operators to be integrated in systems-on-chip, neural processors) with examples of circuits available at ARM, Intel, Google, NVidia, Xilinx.

Auteur(s)

INTRODUCTION

Avec l’importance croissante des applications de l’intelligence artificielle, les réseaux de neurones profonds sont de plus en plus utilisés. Ils ont vu le développement de supports matériels et logiciels significatifs. Les grands opérateurs (Google, Microsoft, etc.) et les fournisseurs de circuits (ARM, Intel, NVidia, Xilinx) ainsi que de très nombreuses petites sociétés ou startups proposent des solutions matérielles pour accélérer l’exécution des applications utilisant des réseaux de neurones profonds. L’objectif de l’article est d’expliciter les caractéristiques de ces solutions matérielles en relation avec les grandes caractéristiques des réseaux de neurones.

Sans prétendre à une présentation théorique ou exhaustive, les principes de base des réseaux de neurones (RN) sont rappelés : structure d’un RN, structure d’un neurone, fonction d’activation ainsi que les deux phases d’utilisation d’un RN (Apprentissage et Inférence). Les réseaux de neurones sont utilisés à plusieurs niveaux : centre de données, serveurs au bord du réseau (edge devices), smartphones et composants de l’Internet des Objets (IoT) avec des contraintes de performance et de consommation énergétique différentes, conduisant à différents supports matériels.

Alors que les flottants 32 bits sont le format numérique de base pour les réseaux de neurones, les contraintes de performance et de consommation ont conduit à l’utilisation de formats entiers 8 bits et 16 bits et de formats flottants réduits (F16, BF16, TF32) qui sont présentés. Les opérateurs spécifiques des réseaux de neurones convolutionnels sont présentés : convolution, pooling, couches complètement connectées (denses).

Des exemples de supports matériels sont présentés : les instructions IA du jeu d’instructions Intel pour le calcul en entier, les cœurs tenseurs de NVidia, les processeurs neuronaux d’ARM (Ethos), d’Intel (Nirvana NPP-T), de Google (TPU) et le système sur puce Xilinx VC 1902.

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

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

KEYWORDS

deep neural networks   |   hardware operators   |   numerical precision   |   neuronal processors   |   acceleration devices for systems-on-chip

DOI (Digital Object Identifier)

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


Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

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

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Version en anglais En anglais

5. Opérations spécifiques

5.1 Convolutions

Le principe des convolutions est illustré dans la figure 13. Un filtre 2*2 est utilisé avec une carte d’activation de taille 3*3. En partant du coin supérieur gauche de la carte d’activation, le filtre est appliqué sur la carte d’activation et génère une valeur placée au coin supérieur de la carte résultat. Puis le filtre est décalé d’une position à droite pour la valeur suivante de la carte résultat. Lorsque le filtre atteint le dernier placement, on recommence à partir de la ligne suivante. Avec un filtre 2*2 sur une carte d’activation 3*3, on obtient une carte d’activation résultat 2*2. Cet exemple utilise un pas de 1 dans le décalage du filtre. Un pas supérieur à 1 peut être utilisé.

Dans le cas général, un filtre k * k appliqué sur une carte d’activation m * m génère une carte d’activation (m+1-k) * (m+1-k). C’est ce qui explique que la taille des cartes de convolution successives diminue, comme le montre la figure 6.

La figure 13 montre également qu’une convolution peut être transformée en un produit vecteur-matrice, après transformation de la carte d’activation en une matrice de Toepliz. L’efficacité de cette approche dépend du processeur utilisé. Avec des CPU ayant une hiérarchie de caches, la transformation de la matrice en matrice de Toepliz provoque trop de défauts de caches pour tirer profit du produit matrice-vecteur. Avec des GPU qui n’ont pas de caches, cette transformation peut être profitable.

Le tableau 2 (d’après ) fournit un certain nombre de données chiffrées sur les tailles de niveaux de convolution dans plusieurs CNN de référence. Selon la présentation à CICC 2017 ...

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

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

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

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS

Lecture en cours
Opérations spécifiques
Sommaire
Sommaire

BIBLIOGRAPHIE

  • (1) - NIELSEN (M.) -   Neural Network and Deep Learning,  -  http://neuralnetworksanddeeplearning.com/

  • (2) - TensorFlow -      -  https://www.tensorflow.org/

  • (3) - Caffe -      -  https://www.tensorflow.org/

  • (4) - PyTorch -      -  https://pytorch.org/

  • (5) - COURBARIAUX (M.), HUBARA (I.), SOUDRY (D.), EL-YANIV (R.), BENGIO (Y.) -   Binarized Neural Networks: Training Neural Networks with Weights and Activations Constrained to +1 or −1,  -  https://arxiv.org/abs/1602.02830

  • (6) - CHOI (J.), VENKATARAMANI (S.), SRINIVASAN (V.), GOPALAKRISHNAN (K.), WANG (Z.), CHUANG (P.) -   Accurate And Efficient 2-Bit Quantized Neural Networks,  -  Proceedings of the 2nd SysML Conference, Palo Alto, CA, USA (2019), https://mlsys.org/Conferences/2019/doc/2019/168.pdf

  • ...

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

Pour explorer cet article
Téléchargez l'extrait gratuit

Vous êtes déjà abonné ?Connectez-vous !


L'expertise technique et scientifique de référence

La plus importante ressource documentaire technique et scientifique en langue française, avec + de 1 200 auteurs et 100 conseillers scientifiques.
+ de 10 000 articles et 1 000 fiches pratiques opérationnelles, + de 800 articles nouveaux ou mis à jours chaque année.
De la conception au prototypage, jusqu'à l'industrialisation, la référence pour sécuriser le développement de vos projets industriels.

Cet article fait partie de l’offre

Technologies logicielles Architectures des systèmes

(239 articles en ce moment)

Cette offre vous donne accès à :

Une base complète d’articles

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

Des services

Un ensemble d'outils exclusifs en complément des ressources

Un Parcours Pratique

Opérationnel et didactique, pour garantir l'acquisition des compétences transverses

Doc & Quiz

Des articles interactifs avec des quiz, pour une lecture constructive

ABONNEZ-VOUS