Type de couches de neurones
Dans les réseaux de neurones artificiels, chaque couche a un rôle spécifique qui contribue à l’apprentissage et à la représentation des données. En fonction de leur fonction, de leur type et de leur structure, les couches peuvent être classées en plusieurs catégories. Chacune de ces couches joue un rôle essentiel dans le traitement de l’information à travers les différents types de réseaux neuronaux.
Couches d’entrée (Input Layer)
La couche d’entrée est le point de départ du réseau. Elle reçoit les données brutes sous forme de vecteurs numériques, sans transformation préalable.
Couches de base (fully connected)
Les couches pleinement connectées sont les blocs fondamentaux des réseaux de neurones, où chaque neurone est connecté à tous les neurones de la couche précédente.
Couches de régularisation
Ces couches permettent de limiter le surapprentissage en introduisant du bruit ou en désactivant aléatoirement certaines connexions pendant l’entraînement.
- Dropout : Désactive aléatoirement des neurones pendant l’entraînement.
- GaussianDropout : Applique un bruit gaussien pendant l’entraînement.
- GaussianNoise : Ajoute un bruit gaussien aux entrées pendant l’entraînement.
- AlphaDropout : Dropout spécifique pour les activations SELU, conserve la moyenne/variance.
Couches de convolution (Convolutional Layers)
Utilisées principalement pour l’analyse d’images ou de signaux, les couches convolutives extraient automatiquement des motifs locaux à partir des données d’entrée.
Couches de pooling (Pooling Layers)
Les couches de pooling réduisent la dimensionnalité des données en conservant les informations les plus importantes, ce qui permet de limiter le surapprentissage et d’accélérer le traitement.
- MaxPooling1D : Réduit la taille des séquences en prenant le maximum sur des segments.
- MaxPooling2D : Réduction spatiale des images, conserve les caractéristiques dominantes.
- MaxPooling3D : Similaire à MaxPooling2D mais pour données 3D (vidéo, IRM, etc).
- AveragePooling1D : Réduit les séquences en prenant la moyenne de chaque segment.
- AveragePooling2D : Réduction d’image par moyenne, plus douce que max pooling.
- AveragePooling3D : Réduction 3D basée sur les moyennes de blocs volumétriques.
- GlobalAveragePooling2D : Moyenne sur toute la carte de caractéristiques.
- GlobalMaxPooling2D : Max sur toute la carte de caractéristiques.
Couches récurrentes (Recurrent Layers)
Ces couches permettent au réseau de traiter des séquences de données (texte, audio, séries temporelles) en conservant un état entre les étapes temporelles.
Couches d’embedding
Les embeddings convertissent des indices (comme des mots ou catégories) en vecteurs continus denses représentant leur signification dans un espace de caractéristiques.
Couches normalisatrices (Normalization Layers)
La normalisation stabilise et accélère l’entraînement en garantissant que les données gardent une distribution contrôlée à travers le réseau.
Couches de rééchantillonnage / Upsampling
Ces couches permettent d’augmenter la résolution spatiale ou temporelle d’un signal ou d’une image, notamment dans les architectures de type autoencodeur ou GAN.
Couches de reshaping / manipulation
Ces couches modifient la structure ou la forme des tenseurs sans en changer les données, ce qui est utile pour l’adaptation entre différentes architectures.
Couches d’attention
Les couches d’attention permettent au modèle de se concentrer sur certaines parties des données d’entrée en apprenant où porter son attention, très utilisées dans les architectures modernes comme les Transformers.