Académique Documents
Professionnel Documents
Culture Documents
Rapport de Synthèse Bibliographique
Rapport de Synthèse Bibliographique
Sujet :
Il existe plusieurs technologies pour l’analyse des images multi-spectrale telles que les Réseaux de
Neurones Convolutifs et les Réseaux de Neurones Récurrents. Nous allons aborder dans cette section
ces méthodes avec plus de détails.
CNN [1] est le modèle fondamental de l'apprentissage automatique et est utilisé dans certaines des
applications les plus courantes aujourd'hui. Il est servi dans : la reconnaissance des formes, l’analyse
vidéo, Natural Language Processing, Détection d’Anomalie, etc.
Malgré les apports de cette méthode, CNN souffre de plusieurs limites telles que [2]:
Page 1 sur 17
• Classification des images avec différentes positions : les CNN ont généralement des difficultés à
classer les images si elles contiennent un certain degré d'inclinaison ou de rotation (Exemple :
ConvNet) ou avec des arrière-plans différents, et/ou sous des conditions de luminosité différentes.
• Exemples contradictoires : Les CNN sont sensibles aux images bruitées [3].
Le cadre de coordonnées est essentiellement un modèle mental qui garde une trace de l'orientation et
les différentes caractéristiques d'un objet. Par exemple, si nous regardons la figure suivante, nous
pouvons identifier que l'image de droite, si elle est retournée, nous donnera l'image de gauche. En
ajustant mentalement notre cadre de coordonnées dans le cerveau, nous sommes capables de voir les
deux visages, quelle que soit l'orientation de l'image. C'est là que le cadre de coordonnées humain
permet aux humains de voir les deux visages.
Un réseau neuronal convolutif est nettement plus lent en raison d'une opération de maxpool.
Si le CNN a plusieurs couches, le processus de formation prend beaucoup de temps si
l'ordinateur ne se compose pas d'un GPU performant.
Page 2 sur 17
Un ConvNet nécessite un grand ensemble de données pour traiter et former le réseau de
neurones.
Les RNN utilisent les sorties précédentes comme entrées supplémentaires et sont parfaitement
adaptés au traitement de données séquentielles. Généralement, elles se présentent sous la forme
suivante :
Les réseaux de neurones récurrents (ou RNN) sont les premiers réseaux de neurones du genre qui
peuvent aider à analyser et à apprendre des séquences de données plutôt qu'un simple apprentissage
basé sur des instances. Comme toutes les autres techniques de ML, elle présente certains
inconvénients qui laissent la porte ouverte à l'amélioration.
L'image ci-dessus [4] montre assez bien à quoi ressemble un bloc RNN typique. Les RNN prennent
également la sortie du nœud précédent comme entrée dans l'état actuel : cela aide à obtenir le
contexte correct, mais échoue sur un aspect : minimiser la fonction de perte. Ci-dessous les fonctions
d'activation généralement utilisées avec les RNN.
Les RNN sont déployés dans : la Translation linguistique, les séries temporelles, la Robotique,
Reconnaissance et Synthèse vocale, Text-to-Video, etc.
Page 3 sur 17
Maintenant, le problème avec ces fonctions d'activation (voir figure ci-dessus [4]) est que chaque fois
qu'elles sont utilisées dans un entraînement séquentiel, les poids (ou les gradients) rendent le
processus un peu délicat. Voici notre première limitation.
Lorsqu’il s'agit de paralléliser les entraînements dans RNN ou d'un simple empilement
d'entraînements est dû à la caractéristique fondamentale de RNN, c'est-à-dire qu'ils sont connectés.
Cela signifie que les RNN nécessitent la sortie du nœud précédent pour effectuer le calcul sur le
nœud actuel. En raison de cette connexion, les RNN ne conviennent pas à la mise en parallèle ou à
l'empilement avec d'autres modèles. Les dépenses de calcul globales qui en découlent ne peuvent
jamais être justifiées par un gain de précision.
L'un des problèmes fondamentaux des RNN est qu'ils sont récurrents. Cela signifie qu'ils prendront
beaucoup de temps pour s'entraîner. La vitesse de formation globale de RNN est assez faible par
rapport aux réseaux à anticipation. Deuxièmement, comme RNN doit calibrer les sorties précédentes
ainsi que les entrées de courant dans une fonction de changement d'état par nœud, il est assez difficile
à mettre en œuvre. La complexité de la formation rend parfois plus difficile la personnalisation du
training d’un RNN.
Page 4 sur 17
Comme discuté précédemment, il est assez difficile de former des RNN sur des séquences trop
longues, en particulier lors de l'utilisation d'activations ReLU ou tanh. C'est une autre raison
d'introduire les réseaux basés sur GRU [5].
4. Le Concept d’Attention
L’Attention en Machine Learning [7] [8], c'est la capacité de mettre en évidence et d'utiliser
dynamiquement les parties saillantes de l'information à portée de main - de la même manière que
dans le cerveau humain - qui fait de l'attention un concept si attrayant.
Un Processus qui « lit » des données brutes (telles que des mots source dans une phrase
source) et les convertit en représentations distribuées, avec un vecteur de caractéristiques
associé à chaque position de mot.
Une liste de vecteurs de caractéristiques stockant la sortie du lecteur. Cela peut être
compris comme une "mémoire" contenant une séquence de faits, qui peuvent être récupérés
plus tard, pas nécessairement dans le même ordre, sans avoir à les visiter tous.
Un processus qui « exploite » le contenu de la mémoire pour exécuter séquentiellement
une tâche, ayant à chaque pas de temps la capacité de porter l'attention sur le contenu d'un
élément de la mémoire (ou de quelques-uns, avec un poids différent).
5. Mécanisme d’Attention
Le mécanisme d'attention a été introduit par [9] pour résoudre le problème de goulot d'étranglement
qui se pose avec l'utilisation d'un vecteur de codage de longueur fixe, où le décodeur aurait un accès
limité aux informations fournies par l'entrée. On pense que cela devient particulièrement
problématique pour les séquences longues et/ou complexes, où la dimensionnalité de leur
représentation serait forcée d'être la même que pour les séquences plus courtes ou plus simples.
Page 5 sur 17
Le mécanisme d'attention de [9] est divisé en calcul des scores d'alignement, des poids et du vecteur
de contexte :
Les Scores d'alignement : Le modèle d'alignement prend les états cachés encodés, et la sortie
précédente du décodeur, pour calculer un score qui indique dans quelle mesure les éléments
de la séquence d'entrée s'alignent avec la sortie actuelle à la position. Le modèle d'alignement
est représenté par une fonction qui peut être implémenté par un réseau de neurones
feedforward.
Les Poids : Les poids sont calculés en appliquant une opération softmax aux scores
d'alignement précédemment calculés.
Le Vecteur de contexte : Un vecteur de contexte unique est introduit dans le décodeur à
chaque pas de temps. Il est calculé par une somme pondérée de tous les états cachés de
l'encodeur : Bahdanau et al. implémentait un RNN pour l'encodeur et le décodeur. Cependant,
le mécanisme d'attention peut être reformulé sous une forme générale qui peut être appliquée
à toute tâche séquence à séquence (abrégé en seq2seq), où les informations ne sont pas
nécessairement liées de manière séquentielle.
En d'autres termes, la base de données n'a pas à être constituée des états RNN cachés à
différentes étapes, mais peut contenir n'importe quel type d'informations à la place.
Chaque vecteur de requête est mis en correspondance avec une base de données de clés pour
calculer une valeur de score. Cette opération de mise en correspondance est calculée comme
le produit scalaire de la requête spécifique considérée avec chaque vecteur clé.
Les scores sont passés par une opération softmax pour générer les poids :
L'attention générale est ensuite calculée par une somme pondérée des vecteurs de valeur où
chaque vecteur de valeur est apparié avec une clé correspondante.
Dans le contexte de la traduction automatique, chaque mot d'une phrase d'entrée se verrait attribuer
ses propres vecteurs de requête, de clé et de valeur. Ces vecteurs sont générés en multipliant la
représentation du codeur du mot spécifique considéré avec trois matrices de poids différentes qui
auraient été générées pendant la formation.
Page 6 sur 17
Essentiellement, lorsque le mécanisme d'attention généralisée est présenté avec une séquence de
mots, il prend le vecteur de requête attribué à un mot spécifique dans la séquence et le note par
rapport à chaque clé de la base de données. Ce faisant, il capture la relation entre le mot considéré et
les autres dans la séquence. Ensuite, il met à l'échelle les valeurs en fonction des pondérations
d'attention (calculées à partir des scores) pour conserver l'attention sur les mots pertinents pour la
requête. Ce faisant, il produit une sortie d'attention pour le mot considéré.
7. L'attention au transformateur
Les principaux composants utilisés par le Transformateur attention sont les suivants :
Page 7 sur 17
Figure 2 - La Structure Codeur-Décodeur dans l'architecture du Transformateur
Page 8 sur 17
Feed-Forward : cela consiste en deux transformations linéaires avec une activation ReLU
entre les deux : FFN ( x )=max ( 0 , xW 1+b 1 , ) W 2+ b 2
Bien que les transformations linéaires soient les mêmes dans différentes positions, elles
utilisent des paramètres différents d'une couche à l'autre. Une autre façon de décrire cela est
comme deux convolutions avec une taille de noyau 1.
Positional Encoding : Étant donné que Transformer ne contient ni récurrence ni convolution,
certaines informations sur la position relative ou absolue des jetons dans la séquence sont
nécessaires pour injecter. Des « encodages de position » sont ajoutés aux plongements
d'entrée au bas des piles des codeurs et des décodeurs. Les encodages positionnels ont la
même dimension dmodel que les plongements, de sorte que les deux peuvent être additionnés.
Des fonctions sinus et cosinus de différentes fréquences sont utilisées.
8. Le Codeur
Page 9 sur 17
Figure 3 - Le Bloc Codeur du Transformateur
Le codeur est composé d'un empilement de N = 6 couches identiques. Chaque couche comporte deux
sous-couches. Le premier est un mécanisme d'auto-attention à plusieurs têtes, et le second est un
réseau d'anticipation simple, entièrement connecté en fonction de la position. Nous utilisons une
connexion résiduelle autour de chacune des deux sous-couches, suivie d'une normalisation de couche.
Autrement dit, la sortie de chaque sous-couche est LayerNorm(x + Sublayer(x)), où Sublayer(x) est
la fonction mise en œuvre par la sous-couche elle-même.
Pour faciliter ces connexions résiduelles, toutes les sous-couches du modèle, ainsi que les couches
d'intégration, produisent des sorties de dimension dmodel = 512.
9. Le Décodeur
Page 10 sur 17
Figure 4 - Le Bloc Décodeur du Transformateur
Le Décodeur est également composé d'un empilement de N = 6 couches identiques. En plus des deux
sous-couches dans chaque couche d'encodeur, le décodeur insère une troisième sous-couche, qui
effectue une attention multi-tête sur la sortie de la pile d'encodeur. Semblable à l'encodeur, nous
utilisons des connexions résiduelles autour de chacune des sous-couches, suivies d'une normalisation
de couche. Nous modifions également la sous-couche d'auto-attention dans la pile du décodeur pour
empêcher les positions de s'occuper des positions suivantes. Ce masquage, combiné au fait que les
plongements de sortie sont décalés d'une position, assure que le les prédictions pour la position i ne
peuvent dépendre que des sorties connues aux positions inférieures à i.
Page 11 sur 17
10. Domaines d’application
1) a residual-post-norm
method combined with cosine
attention to improve training
stability; 2) A log-spaced
ImageNet-22K-ext + Objects-365
continuous position bias
V2 + ImageNet-1K + mageNet-V2
method to effectively transfer
Swin explore large-scale image classification, COCO object
models pre-trained using low-
Transformer models in computer detection, ADE20K se-
resolution images to
v2 [13] vision mantic segmentation, and
downstream
Kinetics-400 video action clas-
tasks with high-resolution
sification.
inputs; 3) A self-supervised
pretraining method, SimMIM,
to reduce the needs of vast la-
beled images.
Data Efficient ImageNet ; iNaturalist 2018;
Teacher-student strategy
Image iNaturalist 2019; Flowers-102;
image classification specific to
Transformer Stanford Cars; CIFAR-100; CIFAR-
transformers
(DeiT) [14] 10
Free Language Modeling;
Attention Image Autoregressive
Key and Value were combined CIFAR10, Enwik8, ImageNet-1K
Transformer Modeling; Image
[15] Classification
Page 12 sur 17
viT ILSVRC-2012 ImageNet; ReaL
image classification &
Transformer labels; Oxford-IIIT Pets; VTAB;
recognition
[16] Flowers-102; CIFAR-100; CIFAR-10
Texture
image super-resolution GANs ; Single Image
Transformer
(SR), SuperResolution (SISR)
Network for
recover realistic methods; Reference-based RefSR dataset + CUFED5
Image Super-
textures from a low- Image SuperResolution
Resolution
resolution (LR) image. (RefSR) methods
(TTSR) [17]
TransUnet
Medical Image
Transformer Transformers + Unet Synapse multi-organ CT dataset
Segmentation
[19]
Conclusion
Page 13 sur 17
Certes, les Transformateurs est une technologie novatrice pouvant surpasser les inconvénients des
Réseaux RNN et CNN mais c’est une technique qui reste assez complexe surtout pour le choix des
matrices, des équations au niveau des codeurs, décodeurs et FFN (FeedForward Network) afin de
garantir de meilleurs résultats.
Bibliographie
[1] Prabhu, «Understanding of Convolutional Neural Network (CNN) — Deep Learning,» medium.com, 04
may 2018. [En ligne]. Available: https://medium.com/@RaghavPrabhu/understanding-of-convolutional-
neural-network-cnn-deep-learning-99760835f148. [Accès le 02 juin 2022].
[3] B. X. M. J. R. P. Hossein Hosseini, «On the Limitation of Convolutional Neural Networks in Recognizing
Negative Images,» p. 7, 2017 août 2017.
[5] S. C. J. C. Kai Guo, «Gated Recurrent Unit for Video Denoising,» p. 5, 17 octobre 2022.
[7] S. Cristina, «What is Attention?,» Machine Learning Mastery, 14 Octobre 2022. [En ligne]. Available:
https://machinelearningmastery.com/what-is-attention/. [Accès le 22 Octobre 2022].
[8] Y. B. A. C. Ian Goodfellow, Deep Learning (Adaptive Computation and Machine Learning series), New
York: The MIT Press, 2016.
[9] K. C. Y. B. Dzmitry Bahdanau, «Neural Machine Translation by Jointly Learning to Align and Translate,»
International Conference on Learning Representations (ICLR), p. 15, 2014.
Page 14 sur 17
Capacity and Resolution,» p. 15, 11 avril 2022.
[15] W. T. N. S. C. H. H. G. R. Z. J. S. Shuangfei Zhai, «An Attention Free Transformer,» p. 29, 2021 septembre
2021.
[17] H. Y. J. F. H. L. B. G. Fuzhi Yang, «Learning Texture Transformer Network for Image Super-Resolution,» p.
10, 22 juin 2020.
[20] P. O. I. H. V. M. P. Jeya Maria Jose Valanarasu, «Medical Transformer: Gated Axial-Attention for Medical
Image Segmentation,» p. 18, 06 juillet 2022.
[21] Z. Q. Z. S. Hao Chen, «Remote Sensing Image Change Detection with Transformers,» p. 14, 2021 juillet
2021.
[22] A. Z. Bruno Korbar, «End-to-end Tracking with a Multi-query Transformer,» p. 29, 2022 octobre 2022.
Page 15 sur 17