Classification Profonde et Réseaux de Neurones
Classification Profonde et Réseaux de Neurones
MÉMOIRE PRÉSENTÉ À
APPLIQUÉES
PRÉSENTÉ PAR
YOUSSEF BARKAOUI
MARS 2022
UniversitéduQuébecàTroisͲRivières
Servicedelabibliothèque
Avertissement
L’auteurdecemémoireoudecettethèseaautorisél’UniversitéduQuébec
à TroisͲRivières à diffuser, à des fins non lucratives, une copie de son
mémoireoudesathèse.
Cettediffusionn’entraînepasunerenonciationdelapartdel’auteuràses
droitsdepropriétéintellectuelle,incluantledroitd’auteur,surcemémoire
oucettethèse.Notamment,lareproductionoulapublicationdelatotalité
oud’unepartieimportantedecemémoireoudecettethèserequiertson
autorisation.
Table des matières
Résumé 7
Abstract 8
Avant-propos 9
Introduction 10
2 Optimisation 32
1
2.5 Batch Normalisation . . . . . . . . . . . . . . . . . . . . . . 38
2.6 Dropout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.7 Rétropropagation . . . . . . . . . . . . . . . . . . . . . . . . 40
3 État de l’art 49
3.1 EfficientNet . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.2 ViT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.3 Autoencodeur . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4 Deep Clustering 60
4.1 Principes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
4.3 Optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . 66
2
4.4.2 Information mutuelle normalisée (NMI) . . . . . . . . 68
6 Conclusion et Perspectives 82
Bibliographie 84
3
Table des figures
1 Descente de gradient . . . . . . . . . . . . . . . . . . . . . . 34
4
2 Descente de gradient stochastique . . . . . . . . . . . . . . . . 34
4 Back-propagation . . . . . . . . . . . . . . . . . . . . . . . . . 41
5 l’algorithme DeepCluster . . . . . . . . . . . . . . . . . . . . 63
7 l’algorithme t-SNE . . . . . . . . . . . . . . . . . . . . . . . . 70
5
Liste des acronymes et d’abréviations
6
Résumé
7
Abstract
8
Avant-propos
9
Introduction
10
1 Intérêt et mise en contexte
11
et simple de réseau neuronal est le réseau neuronal à action directe. Il
contient plusieurs neurones, disposés en couches. Les nœuds des couches
adjacentes sont reliés entre eux par des connexions ou des arêtes. Toutes
ces connexions sont associées à des poids. Un exemple est illustré à la figure
1[b].
[a] [b]
12
d’être explorés et sont souvent utilisés dans une application spécifique. Les
modèles de réseaux de neurones les plus connus sont les suivants : Le per-
ceptron multicouche (MLP) [29] qui est le modèle le plus basique et qui n’a
pas connu de succès pendant longtemps, car il reste généralement bloqué
dans un optimum local lors de la formation, le réseau neuronal convolutif
(CNN) [2] est surtout utilisé pour la reconnaissance faciale - la recherche et
l’édition d’images, le réseau neuronal récurrent (RNN) [72] est appliqué à
la traduction automatique, à la reconnaissance vocale et à la prédiction de
séries temporelles. L’autocodeur (AE) [78] est un célèbre modèle de réduc-
tion de la dimensionnalité et les réseaux adversariaux génératifs (GAN) [32]
sont utilisés pour générer de nouvelles instances synthétiques de données
qui peuvent passer pour des données réelles[31].
13
Il s’agit manifestement d’un problème d’approximation de fonction. En
tant que tel, il peut être considéré soit comme un problème d’analyse
numérique, soit comme un problème de statistique.
La procédure standard d’apprentissage supervisé est la suivante :
1. Choisir un espace d’hypothèses, l’ensemble des fonctions d’essai, qui sera
noté Hm . En analyse numérique classique, on utilise souvent des polynômes
ou des polynômes par morceaux. En apprentissage automatique moderne,
il est beaucoup plus courant d’utiliser des modèles de réseaux de neurones.
L’indice m caractérise la taille du modèle. Il peut s’agir du nombre de
paramètres ou de neurones, et sera précisé ultérieurement pour chaque
modèle.
2. Choisissez une fonction de perte. Notre objectif principal est d’ajuster
les données. Par conséquent, le choix le plus populaire est le « risque em-
pirique »[85] :
1 1
R̂n (f ) = (f (xi ) − yi )2 = (f (xi ) − f ∗ (xi ))2
n i n i
14
1.2.2 Fondements théoriques
15
On commencera par annoncer le lemme 1 qui prouve l’existence des ap-
proximations des fonctions lipschitziennes dans le cas d’une seule dimen-
sion, puis on étendra ce résultat dans le lemme 2 pour les dimensions
supérieures.
=
16
scalaires (α1 , . . . , αN ) tel que
N
sup |g(x) − h(x)| ≤ , avec h= α i 1 Ri
x∈U
i=1
[0,1]d
|f (x) − g(x)|dx ≤ 2
17
Après avoir démontré l’existence d’un réseau de neurone approximant toute
fonction lipschitzienne et intégrable d’une profondeur fini, mais ne précisant
pas la largeur.
Le théorème d’approximation universelle stipule que toute fonction con-
tinue f : [0, 1]n → [0, 1] peut être approximée arbitrairement bien par un
réseau neuronal comportant au moins une couche cachée avec un nombre
fini de poids, ce que nous allons illustrer dans les prochaines sous-sections.
Mathématiquement, la forme classique du théorème d’approximation uni-
verselle pour une largeur arbitraire et une profondeur bornée est la suiv-
ante.
f = W2 ◦ σ ◦ W1 ,
18
également être approximée par un réseau de plus grande profondeur en
utilisant la même construction pour la première couche et en approximant
la fonction d’identité avec les couches ultérieures. Donc ce théorème dé-
montre la capacité d’un réseau neuronal peu profond (de 2 couches cachées
au maximum) à approximer n’importe quelle fonction continue. Cepen-
dant, le théorème ne tient pas en considération la largeur, car un tel réseau
neuronal pourrait avoir un très grand nombre d’unités cachées
Le théorème de représentation de Kolmogorov-Arnold (ou théorème de su-
perposition) stipule que toute fonction continue multivariable peut être
représentée comme une superposition de fonctions continues d’une variable[46].
Théorème 3. Kolmogorov-Arnold:
Toute fonction continue f : [0, 1]n → R peut s’écrire comme suit
Zm
m
f (x) = f (x1 , . . . , .., xn ) = φq Ψq (xq )
q=1 q=1
Dans les sections précédentes, nous nous sommes concentrés sur le cadre
des réseaux de neurones limités en profondeur. Ensuite, nous verrons des
résultats intéressants pour les réseaux neuronaux limités en largeur.
19
Rn
|f (x) − FA (x)| dx <
20
une ReLU ou sigmoid [46]. Cependant, la preuve n’est pas une modifica-
tion simple des preuves fournies ci-dessus, mais plutôt des méthodes bien
spécifiques au choix de la fonction d’activation. Le compromis entre la
profondeur, la largeur et l’erreur d’approximation est toujours un sujet
de recherche actif. Par exemple, en 2017, Lu et al. [68] ont prouvé un
théorème d’approximation universel pour les réseaux de neurones profonds
limités en largeur avec ReLU qui peuvent approximer toute fonction inté-
grable de Lebesgue sur un espace d’entrée à n dimensions. Peu de temps
après, Hanin [40] a amélioré ce résultat en utilisant des réseaux ReLU pour
approximer toute fonction convexe continue de variables d’entrée à n di-
mensions.
Les réseaux neuronaux peuvent également être considérés comme des sys-
tèmes dynamiques. La manière la plus directe de relier pratiquement
n’importe quel réseau neuronal aux systèmes dynamiques consiste à con-
sidérer les poids apprenables comme l’état d’un système discret, provenant
d’un espace de paramètres euclidien. La carte est définie par la mise à jour
des poids pour chaque étape de la descente de gradient. Cela ouvre la voie
à une compréhension plus approfondie du fonctionnement de l’opération
de rétropropagation, qui à son tour éclaire la compréhension des réseaux
neuronaux en général.
21
térisant l’état d’un neurone. D’après [14], on peut modéliser l’évolution de
N neurones, donnée par un système dynamique déterministe,
dX
= Fγ (X, t), temps continue, (1)
dt
où,
X(t + 1) = Fγ [X(t), t], temps discret . (2)
La variable X = {Xi }N
i=1 représente l’état dynamique d’un réseau de N
Ceci s’accorde particulièrement bien avec les RNN, où les activations cachées
suivent une formule de récursion dans chaque couche du réseau. Dans [101],
ces réseaux étaient considérés comme continus dans le temps, où les auteurs
considéraient un RNN respectant les équations suivantes :
dx N I
ẋi = = −xi + Jik rk + Bik uk (3)
dt k k
N ri = h(xi ) (4)
22
largeur N est définie par l’équation
Bien que les réseaux de neurones artificiels figurent parmi les outils de
prédiction les plus puissants aujourd’hui, leur raisonnement interne est très
complexe et encore peu compris. Jusqu’à présent, il n’existe pas dans
la littérature d’outil complet basé sur une théorie solide qui explique ou
interprète leur structure interne ou leur paradigme d’apprentissage. Les
réseaux d’apprentissage profond sont souvent qualifiés de "boîtes noires"
[1, 94]. La raison en est que ces modèles sont généralement extrêmement
grands et compliqués, contenant un très grand nombre de paramètres à
optimiser. Leur manque d’interprétabilité est également considéré comme
leur malédiction. Le mystère de la dynamique interne des ANN crée un défi
pour la communauté de l’IA [66] car ces modèles sont utilisés pour des prises
de décision à fort enjeu et pénètrent des domaines critiques tels que les soins
de santé, le système de justice pénale, les voitures à conduite autonome
et les marchés financiers. L’incapacité d’interpréter et de comprendre les
ANNs semble problématique [90, 66].
23
iade de techniques qui tentent d’expliquer le phénomène d’apprentissage
des ANNs, mais ces techniques sont généralement erronées et trompeuses,
et elles fournissent peu d’indications pour "opening the black box prob-
lem". En d’autres termes, ces méthodes explicatives ne peuvent en général
pas corriger les idées fausses intégrées dans les modèles ANN pendant la
formation.
24
tion s’accélère ou se ralentit en fonction de la profondeur du réseau.
25
lar Vector Canonical Correlation Analysis for Deep Learning Dynamics
and Interpretability " (SVCCA) a été proposée, cette technique est basée
sur la décomposition en valeurs singulières et la corrélation canonique.
Cet outil permet de comparer les représentations internes et peut égale-
ment suggérer de nouveaux régimes de formation pour éviter l’overfitting
et réduire l’énorme coût de calcul. Une question importante lors de la
comparaison des représentations est la suivante : "Des réseaux neuronaux
différents apprennent-ils les mêmes représentations ?", c’est-à-dire que si
nous formons différents réseaux neuronaux (par exemple, une architecture
ou une initialisation différente) sur la même tâche, convergeront-ils vers la
même représentation ? Bien que la technique SVCCA dans [84] soit simple,
l’article montre qu’il est possible d’aligner l’espace d’activation neuronale
de différents réseaux neuronaux dans certains cas. La même idée a été
discutée dans [53] où les auteurs proposent l’utilisation de l’alignement du
noyau centré (CKA) [22, 20] comme mesure de similarité entre représenta-
tions. Les auteurs ont montré empiriquement que pour les modèles CNN
les plus courants formés sur des ensembles de données d’images, différents
modèles apprennent des représentations similaires.
Avant de procéder à formaliser les théories d’apprentissage profond, on
présentera les approches d’interprétabilité de ces systèmes qui semblent
être les plus acceptées dans la communauté scientifique au cours des cinq
dernières années.
26
plication, car il n’est pas facile à comprendre. Au lieu de cela, nous devons
utiliser un modèle d’explication plus simple, que nous définissons comme
toute approximation interprétable du modèle original. Nous montrons ci-
dessous que six méthodes d’explication actuelles de la littérature utilisent
toutes le même modèle d’explication. Cette unité jusqu’alors non appré-
ciée à des implications intéressantes, que nous décrivons dans les sections
suivantes.
27
La méthode LIME interprète les prédictions des modèles individuels en
se basant sur une approximation locale du modèle autour d’une prédic-
tion donnée. Le modèle d’explication linéaire local que LIME utilise ad-
hère exactement à l’équation 1 et est donc une méthode d’attribution de
caractéristiques additives. LIME désigne les entrées simplifiées x comme
des "entrées interprétables", et la correspondance x = hx (x ) convertit un
vecteur binaire d’entrées interprétables dans l’espace d’entrée original. Dif-
férents types de mappings hx sont utilisés pour différents espaces d’entrée.
Pour les caractéristiques de texte de type sac de mots, hx convertit un
vecteur de 1 ou 0 (présent ou non) en nombre de mots d’origine si l’entrée
simplifiée est égale à un, ou à zéro si l’entrée simplifiée est égale à zéro.
Pour les images, hx traite l’image comme un ensemble de super-pixels ; il
associe ensuite 1 au fait de laisser le super-pixel à sa valeur d’origine et
0 au fait de remplacer le super-pixel par une moyenne des pixels voisins
(ceci est censé représenter l’absence). Pour trouver φ, LIME minimise la
fonction objective suivante :
28
en entrées originales, où 1 indique qu’une entrée prend sa valeur originale,
et 0 indique qu’elle prend la valeur de référence. La valeur de référence,
bien que choisie par l’utilisateur, représente une valeur de fond typique
non informative pour la caractéristique du réseau. DeepLIFT utilise une
propriété de "sommation à delta" qui stipule :
n
CΔxi Δo = Δo
i=1
z
Rj = jk Rk
k j zjk
29
dessus pour tous les neurones du réseau, il est facile de vérifier la propriété
de conservation par couche j Rj = k Rk , et par extension la propriété
de conservation globale i Ri = f (x).
|z |! (M − |z | − 1)!
φi (f, x) = [fx (z ) − fx (z \i)]
z ⊆x
M!
Lundberg et al. [69] proposent les valeurs SHAP comme une mesure unifiée
de l’importance des caractéristiques. Il s’agit des valeurs de Shapley d’une
fonction d’espérance conditionnelle du modèle original ; elles sont donc
la solution de l’équation du théorème SHAP, où fx (z ) = f (hx (z )) =
E [f (z) | zS ], et S est l’ensemble des indices non nuls dans z (figure 1
). Cette définition des valeurs SHAP comporte implicitement un mappage
d’entrée simplifié, hx (z ) = zS , où zS a des valeurs manquantes pour les car-
actéristiques ne faisant pas partie de l’ensemble S. Comme la plupart des
modèles ne peuvent pas gérer des modèles arbitraires de valeurs d’entrée
manquantes, nous approximons f (zS ) par E [f (z) | zS ]. Cette définition
des valeurs SHAP est conçue pour s’aligner étroitement sur la régression
de Shapley, l’échantillonnage de Shapley et les attributions quantitatives de
caractéristiques d’influence d’entrée, tout en permettant également des con-
nexions avec LIME, DeepLIFT et la propagation de pertinence en couches.
30
nant les idées des méthodes actuelles d’attribution additive des caractéris-
tiques, nous pouvons les approximer. Les auteurs décrivent deux méth-
odes d’approximation indépendantes du modèle, l’une déjà connue (valeurs
d’échantillonnage de Shapley) et l’autre nouvelle (Kernel SHAP). Ils décrivent
également quatre méthodes d’approximation spécifiques au type de modèle,
dont deux sont nouvelles (Max SHAP, Deep SHAP). Lors de l’utilisation de
ces méthodes, l’indépendance des caractéristiques et la linéarité du mod-
èle sont deux hypothèses facultatives qui simplifient le calcul des valeurs
attendues (notez que S̄ est l’ensemble des caractéristiques qui ne sont pas
dans S ) :
f (hx (z )) = E [f (z) | zS ]
= EzS̄|zS [f (z)]
≈ EzbarS [f (z)]
≈ f ([zS , E [zS̄ ]]) .
31
Figure 2 – Schéma explicatif de l’attribution des valeurs SHAP à chaque
caractéristique [69]
2 Optimisation
Nous pouvons traiter la perte NLL comme une extension de la perte d’entropie
croisée de la classification binaire à la classification multi-classes. Si nous
supposons que y est un vecteur à un coup qui indique à quelle classe ap-
partient un exemple, yi = 1i∈Cj où i est l’étiquette. la perte NLL est donc:
N
(y, ŷ) = − i=1 yi log(ŷi )
32
lorsque Q est utilisé pour approximer P . Formellement, il est décrit comme
suit :
Le gradient de la divergence KL :
33
nées par :
34
l’optimisation par descente de gradient.
Le problème avec tels hyperparamètres est qu’ils doivent être choisis manuelle-
ment pour chaque session d’apprentissage donnée et qui peuvent varier
considérablement en fonction du problème à traiter ou du modèle utilisé.
Pour lutter contre ce problème, il existe de nombreux types d’algorithmes
de descente de gradient adaptatifs tels que Adagrad, Adadelta, RMSprop
et Adam [52].
Une des premiers majeurs contributions qui ont amélioré la descente du
gradient fut l’ajout du momentum. En effet, le momentum ou le moment
permet de continuer dans la même direction qu’à l’itération précédente,
ce qui permet d’accélérer l’optimisation. En particulier, cette méthode est
très efficace lorsque que la direction du gradient reste relativement la même.
35
cycle d’apprentissage.
Adam gt2 indique le carré par éléments carré ou le produit
Hadamrd (gt ◦ gt )ij = (gt gt )ij = (gt )ij (gt )ij . Les bons paramètres
par défaut pour les problèmes d’apprentissage automatique testés
par les auteurs sont α= 0,001, β1 = 0.9, β2 = 0.999 et = 10−8 .
inputs : α : Stepsize
β1 , β2 ∈ [0, 1): Taux de décroissance exponentielle pour
les estimations du moment.
f (θ) : Fonction objectif stochastique avec des
paramètres θ
θ0 : Vecteur initial des paramètres
output: θ minimize F
m0 ← 0 (Initialisation du vecteur de moment 1);
v0 ← 0 (Initialiser le vecteur du 2ème moment);
t ← 0(Initialiser le pas de temps);
while θt non convergé do
t←t+1 ;
gt ← ∇θ ft (t−1 ) (Obtenir les gradients par rapport à l’objectif
stochastique au pas de temps t)
mt ← β1 .mt−1 + (1 − β1 ) − gt (Mise à jour de l’estimation
du premier moment biaisé)
vt ← β2 − vt−1 + (1 − β2 ) − gt2 (Mise à jour de l’estimation
biaisée du second moment brut)
m̂t ← mt /(1 − β1t )(Calculer la première estimation du
moment corrigée du biais)
v̂t ← vt /(1 − β2t ) (Calcul de la deuxième estimation brute du
moment corrigée du biais)
√
θt ← θt−1 − α.m̂t /( v̂t + ) (Mise à jour des paramètres)
end
return θt ;
Algorithme 3: Algorithme Adam [52]
36
2.3 Barème des taux d’apprentissage
ηt = η0 .γ t/ (12)
ηt = η0 .γ t/ (13)
37
2.4 Décroissance des poids
2
Ω(θ) = θ
1
ˆ(F (θ, x), y) = (F (θ, x), y) + λΩ(θ)
2
La décroissance des poids est la méthode de régularisation par défaut
utilisée pour la formation des réseaux de neurones. réseaux neuronaux.
Habituellement, nous fixons λ à 0,0004. En cas de normalisation supplé-
mentaire, telle que Dropout et la normalisation par lots , un λ plus petit
accélérera la formation.
Comme son nom l’indique, cette technique vise à normaliser chaque exem-
ple du lot selon les paramètres de distribution de ce dernier. C’est-à-dire,
enlever la moyenne et diviser par l’écart-type. Plus formellement :
xi = √ xi E[X]
V ar[X]+
38
2.6 Dropout
(l)
rj = Bernoulli(p)
(l)
ĥ(l) = rj ∗ h(l)
39
2.7 Rétropropagation
1 2
J(W, b; x, y) = hW,b (x) − y
2
donc la fonction de perte general:
sl+1
1
m
λ
nl −1
sl 2
(i) (i) (l)
J(W, b) = J W, b; x , y + Wji
m i=1 2 l=1 i=1 j=1
m sl+1
1 1 (i) 2 λ
nl −1
sl 2
= hW,b x −y (i)
+
(l)
Wji
m i=1 2 2 l=1 i=1 j=1
40
BackProp
inputs : Un réseau de l couches, la fonction d’activation de
chaque couche l et de sortie hn = σ(WnT hn−1 + bn )
output: Calculer le gradient g de la couche de sortie
g ← ∂(y,ŷ
∂ ŷ
for i ← l do
Calculer le gradient pour la couche actuelle
∂ε(y,ŷ)
∂Wl
= ∂ε(y,ŷ)
∂hl ∂Wl
∂hl ∂hl
= g ∂W l
;
∂ε(y,ŷ)
∂bl
= ∂ε(y,y) ∂hl
∂hl ∂bl
= g ∂h
∂bl
l
;
Calculer le gradient
∂ε(y,ŷ)
∂Wl
and ∂ε(y,ŷ)
∂bl
;
Propager le gradient dans la couche inferieure ;
g ← ∂ε(y,ŷ) ∂hl
∂hl ∂hl−1
= g ∂h∂hl−1
l
end
Algorithme 4: Back-propagation
où hn est la sortie de la nme couche, σ(x) est une fonction d’activation non
linéaire, et Wn , bn sont les paramètres de cette couche. Pour h0 , hn−1 est
la donnée d’entrée X. Au sommet d’un perceptron multicouche se trouve
une couche de transformation logistique ou une couche de transformation
softmax pour transformer la sortie dans la plage [0, 1]. Le gradient de la
fonction de perte peut ensuite être propagé vers le bas du modèle pour
mettre à jour les paramètres.
41
Si nous fixons toutes les transformations à la fonction sigmoïde σ(x) =
1
1+e−x
, nous pouvons traiter le perceptron multicouche comme plusieurs
couches de modèles de régression logistique.
42
serait plus efficace si nous concevoir un réseau qui intègre une certaine con-
naissance du domaine. Un réseau convolutif est capable de résoudre ces
trois problèmes.
Yann LeCun [61] et d’autres chercheurs ont initialement proposé des réseaux
convolutifs dans le cadre d’une structure de réseau célèbre, LeNet-5 [62]
contenant 7 couches, qui a été utilisée pour résoudre avec succès le problème
de la classification numérique manuscrite. Formellement, pour une image
bidimensionnelle I et d’un noyau de convolution bidimensionnel K m,n , la
sortie S est :
s[i, j] = (I ∗ K)[i, j] = m n I[m, n]K[i − m, j − n]
= m n I[i − m, j − n]K[m, n]
+∞
s(t) = (f ∗ g)(t) = −∞
f (τ )g(t − τ )dτ .
L’essence de l’idée des CNN est la couche convolutive. Les couches con-
volutives sont constituées d’un groupe de noyaux (kernels ou filtres) dont
les poids (ou paramètres) peuvent être appris. L’opération de convolution
est un produit scalaire sur des vecteurs, qui est présenté dans l’Équation
ci-dessus. Lorsque la convolution est étendue aux images couleur, chaque
canal couleur est convolué séparément par le noyau correspondant. ce qui
signifie qu’une image couleur à trois canaux nécessite trois noyaux distincts
ou un noyau tridimensionnel.
43
Un exemple d’une opération de convolution bidimensionnelle est illustré
dans la figure 3. Les dimensions de la carte de caractéristiques (sortie
de la convolution) dans l’exemple sont de 3x2 parce que la convolution
est additionnée sur tous les canaux de taille 2x2, c’est-à-dire que le filtre
2x2 sélectionné sélectionné a 24 valeurs et le produit scalaire est pris par
ces valeurs et la zone correspondante zone correspondante de taille 3x2
de l’image. Comme l’image est plus grande dans les dimensions x et y,
le filtre est glissé sur l’image, de sorte que l’image entière est convoluée
séquentiellement.
44
La taille du noyau peut varier en fonction de l’implémentation, mais elle
est généralement inférieure que la taille de l’entrée. Lorsque la taille du
noyau est plus petite que l’entrée, on dit que la convolution a des inter-
actions ou des poids épars. Cette propriété est importante pour les CNN
car les images peuvent avoir des millions de pixels, mais même de petits
morceaux de l’image peuvent être utilisés pour extraire des caractéristiques
importantes de l’image, comme les bords. Grâce à cette propriété, les filtres
peuvent extraire des caractéristiques significatives de l’image, avec moins
de paramètres qu’en ayant à d’enregistrer les paramètres pour chaque pixel.
σ(x) = max(0, x)
45
2.9.3 Couche Pooling
46
2.9.4 Réseaux de convolution remarquables
47
filtres à noyau 3×3, l’un après l’autre. L’entrée de la couche cov1
est une image RVB de taille fixe 224 x 224. L’image passe par une
pile de couches convolutionnelles, où les filtres ont été utilisés avec
un champ réceptif très petit : 3×3 (qui est la plus petite taille pour
capturer la notion de gauche/droite, haut/bas, centre). Dans l’une
des configurations, il utilise également des filtres de convolution 1×1,
qui peuvent être vus comme une transformation linéaire des canaux
d’entrée (suivie d’une non-linéarité). Le pas de convolution est fixé à
1 pixel ; le remplissage spatial de la couche de convolution d’entrée est
tel que la résolution spatiale est préservée après convolution, c’est-à-
dire que le remplissage est de 1 pixel pour les couches de convolution
3×3. La mise en commun spatiale est effectuée par cinq couches de
max-pooling, qui suivent certaines des couches de convolution (toutes
les couches de convolution ne sont pas suivies de max-pooling). Le
max-pooling est effectué sur une fenêtre de 2×2 pixels, avec un pas
de 2.
48
pré-entraînés avec l’ImageNet. De plus, les implémentations facile-
ment disponibles de l’architecture ont permis des exécutions simples à
travers les différentes couches de l’architecture. L’architecture Xcep-
tion, où les couches de convolution séparable sont les couches de con-
volution séparable en profondeur modifiées. L’architecture Xception
comprend également les couches résiduelles et la normalisation par
lots. L’architecture Xception est divisée en 14 blocs différents qui
sont séparés par les couches résiduelles. par les couches résiduelles.
Les couches de l’implémentation suivent également la séparation en 14
blocs dans leur dénomination. dans leur dénomination, en regroupant
les couches par le bloc correspondant auquel elles appartiennent.
3 État de l’art
3.1 EfficientNet
Pour adapter un réseau neuronal à une tâche plus robuste, la façon la plus
naturelle de procéder est d’ajouter des couches. Cependant, nous avons
également le contrôle sur la largeur des couches et la résolution de notre
entrée. En pratique, cependant, il n’est pas évident de mettre à l’échelle
ces trois composants ; l’article d’EfficientNet[102] présente une méthode de
principe Compound Scaling du modèle qui permet d’obtenir un meilleur
compromis précision-FLOP.
Un réseau neuronal convolutif peut être considéré comme un empilement ou
une composition de différentes couches convolutives. De plus, ces couches
peuvent être divisées en différentes é[Link] a été précédemment
décrit ResNet a cinq étapes, et toutes les couches de chaque étape ont le
même type de convolution. Par conséquent, un CNN peut être représenté
mathématiquement comme suit :
49
N = FiLi X Hi ,Wi ,Ci
i=1...s
avec i=1...s désigne la composition ou l’empilement des couches, FiLi
représente la couche Fi répétée Li fois à l’étape i, (Hi , Wi , Ci ) représente
la dimension de l’entrée à la couche X.
L’augmentation de la profondeur, en empilant davantage de couches convo-
lutionnelles, permet au réseau d’apprendre des caractéristiques plus com-
plexes. Cependant, les réseaux plus profonds ont tendance à souffrir de
gradients évanescents(Vanishing gradient) et deviennent difficiles à former.
Bien que de nouvelles techniques telles que la normalisation des lots et les
connexions sautées(ResNet) soient efficaces pour résoudre ce problème, les
études empiriques suggèrent que les gains de précision réels obtenus en aug-
mentant uniquement la profondeur du réseau se saturent rapidement. Par
exemple, ResNet-1000 fournit la même précision que ResNet-100 malgré
toutes les couches supplémentaires.
L’augmentation de la largeur des réseaux permet aux couches d’apprendre
des caractéristiques plus fines. Ce concept a été largement utilisé dans
de nombreux travaux tels que Wide ResNet et Mobile Net. Cependant,
comme dans le cas de l’augmentation de la profondeur, l’augmentation de
la largeur empêche le réseau d’apprendre des caractéristiques complexes,
ce qui entraîne une diminution des gains de précision.
Une résolution d’entrée plus élevée fournit un plus grand nombre de détails
sur l’image et améliore donc la capacité du modèle à raisonner sur des ob-
jets plus petits et à extraire des motifs plus fins. Mais comme les autres
dimensions de mise à l’échelle, elle ne permet qu’un gain de précision limité.
La figure 5 donne (a) un exemple de réseau de base ; (b)-(d) sont des mises
à l’échelle conventionnelles qui n’augmentent qu’une seule dimension du
réseau : la largeur, la profondeur ou la résolution. largeur, la profondeur
ou la résolution. (e) est la méthode Compound composée que l’article
50
propose et qui met uniformément à l’échelle les trois dimensions avec un
rapport fixe.
i.e.
N (d, w, r) = F̂id·L̂i Xr·Ĥi ,r·Ŵi ,w·Ĉi )
i=1...s
51
Dans cet article, les auteurs proposent le Compound Scaling, qui utilise un
coefficient composé φ pour mettre à l’échelle de manière uniforme la largeur,
la profondeur et la résolution du réseau de manière raisonnée : Profondeur
: d = αφ Largeur : w = β φ Résolution : r = γ φ s.t. α · β 2 · γ 2 ≈ 2
α ≥ 1, β ≥ 1, γ ≥ 1
où α, β, γ sont des constantes qui peuvent être déterminées par une recherche
sur une petite grille. Intuitivement, φ est un coefficient spécifié par l’utilisateur
qui contrôle combien de ressources supplémentaires sont disponibles pour
la mise à l’échelle du modèle, tandis que α, β, γ spécifient comment affecter
ces ressources supplémentaires à la largeur, la profondeur et la résolution
du réseau respectivement.
3.2 ViT
52
pour être précis les dépendances globales, car la fenêtre de référence des
transformateurs est une gamme complète. Ceci a été réalisé en utilisant
une variante du mécanisme d’attention appelé auto-attention (à têtes mul-
tiples) qui est très important pour leur succès. Un autre avantage des
modèles Tranformer est qu’ils sont hautement parallélisables.
Une fonction d’attention peut être décrite comme la mise en correspon-
dance d’une requête et d’un ensemble de paires clé-valeur avec une sortie,
où la requête, les clés, les valeurs et la sortie sont toutes des vecteurs. La
sortie est calculée comme une somme pondérée des valeurs, où le poids
attribué à chaque valeur est calculé par une fonction de compatibilité de
la requête avec la clé correspondante. Le nom attention provient de la
fonction Scaled Dot-Product Attention. L’entrée consiste en des requêtes
et des clés de dimension dk et de valeurs de dimension dv . Nous calculons
les produits scalaires de la requête avec toutes les clés, divisons chacun
√
par dk et appliquons une fonction softmax pour obtenir les poids sur les
valeurs.
QK T
Attention(Q, K, V ) = softmax( √ )V
dk
avec Q, K et V sont respectivement les matrices requêtes, clés et valeurs.
Les principales contributions de cet article de Google [27] ne concernent pas
une nouvelle architecture, mais plutôt l’application de cette architecture au
domaine de la vision par ordinateur. C’est la méthode d’entraînement et
le jeu de données utilisé pour pré-entraîner le réseau qui ont permis à ViT
d’obtenir d’excellents résultats par rapport a l’état d’art sur ImageNet.
Pour traiter les images 2D, nous remodelons l’image x ∈ RH×W ×C en une
2
séquence de patchs aplatis de 2D xp ∈ RN ×(P ·C ) , où (H, W ) est la résolu-
tion de l’image originale, C est le nombre de canaux, (P, P ) est la résolution
de chaque patch d’image, et N = HW/P 2 est le nombre de patchs résul-
53
tant, qui sert également de longueur de séquence d’entrée effective pour le
Transformateur. Le transformateur utilise une taille constante de vecteur
latent D à travers toutes ses couches, nous aplatissons donc les patchs et
les cartographions en dimensions D avec une projection linéaire entraîn-
able comme précise ci dessous Nous désignons la sortie de cette projection
comme étant l’intégration des patchs.
y = LN (z0L )
54
z = MSA (LN (z−1 )) + z−1 , = 1...L
3.3 Autoencodeur
55
Figure 6 – Schéma explicatif des différentes composantes des AE [25]
56
On note X l’espace des entrées, X l’espace des sorties et L l’espace
latent. l’encodeur φ : X → L
le décodeur θ : L → X
2
φ, θ = arg min X − (θ ◦ φ)X
φ,ψ
avec σ est une fonction d’activation élément par élément (comme la fonction
logistique Sigmoid, ou la RELU, unité linéaire rectifiée). W, W des matri-
ces de poids et b, b des vecteurs de biais et x, x les données de l’entrée et
de sortie successivement. Les poids et les biais sont généralement initialisés
au hasard, puis mis à jour de manière itérative pendant la formation via la
rétropropagation. Ensuite, l’étape de décodeur de l’autoencodeur met en
correspondance h à la reconstruction x de la même forme que x.
57
optimise la fonction suivante :
L(φ, θ, x) = DKL (qφ (z|x)||pθ (z)) − Eqφ (z|x) log pθ (x|z) avec DKL la diver-
P (x)
gence Kullback–Leibler (DKL (P Q) := x∈X P (x) log Q(x) ).
La figure 7 illustre les composantes de l’autoencodeur ainsi que la distribu-
tion de probabilité inférée dans chacune de ces composantes.
58
d’apprendre des représentations utiles :
n m ∂ x̂i 2
JAE (θ, ψ) = L (xi , xi ) + λ
i=1 i=1 ∂x F ,
n
JAE (θ, ψ) = L (xi , xi ) + λ x̂ 1
i=1
n
où x̂ 1 := i=1 |x̂i |, la norme L1 .
59
Dans la section suivante, nous utiliserons une familles des au-
toencodeurs pour le clustering profond ou deep clustering.
4 Deep Clustering
Le but de cette partie est d’améliorer les résultats de l’intégration des méth-
odes de classification dans la couche latente des autoencodeurs[25].
Fondamentalement, il y a deux façons d’utiliser les caractéristiques pro-
fondes pour le clustering. La première consiste au regroupement des carac-
téristiques cachées qui sont extraites d’un réseau profond bien entraîné [3].
Cependant, ces approches ne peuvent pas exploiter pleinement la puissance
du réseau neuronal profond pour le clustering. L’autre consiste à intégrer
une méthode de clustering existante dans les modèles DL,qui est une ap-
proche de bout en bout. Par exemple, intègrer l’algorithme K-means dans
les autoencodeurs profonds et effectuer l’affectation des clusters dans les
couches intermédiaires [37].
4.1 Principes
Aljalbout et al.[3] ont introduit une approche en boucle fermée dans laque-
lle l’entraînement de l’autoencodeur et le Kmeans sont effectués dans une
boucle itérative. Leur réseau profond apprend d’abord les représenta-
tions des entrées pour obtenir leurs caractéristiques, ensuite ces représenta-
tions apprises sont transmises comme entrée de Kmeans. Leur objectif est
d’utiliser les représentations des données pour améliorer le regroupement,
et d’exploiter les résultats du regroupement pour fournir des indices sur les
étiquettes lors de l’apprentissage des représentations.
Cependant, cette méthode n’est pas adaptée aux grands ensembles de don-
nées vu le coût de calcul et de mémoire qui nécessitent l’exécution itérative
60
d’un algorithme de clustering pendant l’apprentissage et la préformation
du réseau DEC[37].
Dans [105], les auteurs proposent un cadre général pour intégrer les méth-
odes traditionnelles de clustering dans les modèles d’apprentissage profond
et développent un algorithme pour optimiser les objectifs non convexes
et non linéaires sous-jacents en utilisons la méthode ADMM (Alternat-
ing Direction of Multiplier Method). Un algorithme simple, mais puissant
qui convient bien à l’optimisation convexe distribuée, et en particulier aux
problèmes rencontrés en statistique appliquée et en apprentissage automa-
tique. Il prend la forme d’une procédure de décomposition-coordination,
dans laquelle les solutions de petits sous-problèmes locaux sont coordonnées
pour trouver une solution à un grand problème problème global. L’ADMM
peut être considérée comme une tentative de combiner les avantages de
la décomposition duale et des méthodes lagrangiennes augmentées pour
l’optimisation sous contraintes, deux approches antérieures [105].
Les auteurs [Link] et al. ont considéré dans l’article [105] le problème
général d’optimisation suivant:
61
a:
min h(x) + o(z)
2
min : X − X̂ F + λ × Gw (Y )
2 ρ 2
Lρ (θ, Y, U, w) = X − X̂ F + λ × Gw (Y ) + Y − φθ1 (X) + U F
2
62
DeepCluster {w ∈ W : w = argminw Gw (Y)}
inputs : Donnees d’entrees X, taux d’apprentissage η,
hyperparametres ρ, λ
output: Regroupement des donnees
Initialiser les paramètres de la DAE θ, les paramètres du
modèle de clustering w ;
while non convergé do
mettre a jour θ : θ = θ − ηdθ
mettre a jour Y
Y = argminY λ ∗ Gw (Y) + ρ2 Y − fθ1 (X) + U 2F
mettre a jour U : U = U + Y − fθ1 (X)
mettre a jour w : w = argminw Gw (Y)
end
return θ, w
Algorithme 5: l’algorithme DeepCluster
n
2
Lr = xi − gW (zi ) 2
i=1
63
ImpDeepCluster
inputs : Donnees d’entrees X, nombre de clusters K,Interval de
mis a jour T , seuil d’arret δ, maximum d’iterations
M axIter
output: les poids de l’autoencodeur W, W , les centres des
clusters μ, et les etiquettes s
Initialiser les paramètres μ, W, W
for iter ∈ {0, 1, ..., M axIter} do
if iter%T == 0 then
Calculer les points incorporés {zi = fW (xi )}ni = 1
sold ← s
si = argmax(qij )
end
if sum(sold = s)/n ≤ δ then
Arret
end
end
return μ, W, W
Algorithme 6: l’algorithme Improved DeepCluster
Guo et al. [38] ont également proposé une méthode de clustering avec
Deep Clustering AutoEncoder (DCAE) . Pour se faire, tout d’abord, ils
ont préparé un réseau DCAE avec une couche de regroupement utilisant
la divergence KL pour appliquer une distribution cible, puis ils ont formé
un modèle DCAE pour apprendre la représentation des caractéristiques et
ont ensuite formé un modèle DCAE pour apprendre la représentation des
caractéristiques des images. Grâce à un processus itératif, ils ont introduit
les caractéristiques apprises dans un algorithme Kmeans pour regrouper
les points de données dans leurs centroïdes identiques. L’apprentissage
de l’espace des caractéristiques et le processus de regroupement sont deux
procédures distinctes, et leur procédure de regroupement ne contribue pas
à la fonction de perte globale. De plus, la divergence KL n’est peut-être pas
la méthode la plus efficace pour le clustering, car elle n’est pas symétrique
et, par conséquent, la distance entre le point de données A et le point de
données B n’est pas la même que celle entre B et A .
Dans cette étude, la fonction objectif (perte) des méthodes de cluster-
64
ing par apprentissage profond est principalement composée de la perte du
réseau profond et de la perte du clustering. Tout d’abord, L’autoencodeur
est entraîné avec la perte de reconstruction standard à erreur quadratique
moyenne. Par la suite, les auteurs utilisent l’algorithme de perte de k-
Means pour obtenir des données uniformément réparties autour des centres
de clusters. finalement, les auteurs utilisent la distribution t de Student
comme noyau pour mesurer la similarité entre les points et les centroïdes.
L = Lr + γLc
65
pour que la structure de DEC soit complète.
−1
1 + z i − μj 2
qij = 2 −1
j 1 + z i − μj
pij
Lc = KL(P Q) = pij log
i j
qij
4.3 Optimisation
∂Lc K
=2 (1 + zi − μj 2 )−1 (pij − qij )(zi − μj )
∂zi j=1
66
∂Lc n
=2 (1 + zi − μj 2 )−1 (qij − pij )(zi − μj )
∂μj i=1
λ ∂Lc
m
μj = μ j −
m i=1 ∂μj
λ ∂Lr
m
W = W −
m i=1 ∂W
Pour justifier nos méthodes, deux approches d’évaluation sont utilisées pour
calculer la qualité du cluster : La précision (ACC) et l’information mutuelle
normalisée (NMI), qui distinguent les résultats de clustering générés par
notre méthode DeepCluster et les étiquettes réelles.
La précision du clustering est une mesure largement utilisée pour évaluer les
résultats du clustering. Elle est calculée à l’aide des résultats de clustering
obtenus et des étiquettes réelles en utilisant la forme suivante [89] :
n
i=1 δ (yi , map (ci ))
Accuracy =
n
67
map (ci ) est la fonction de permutation qui fait correspondre les étiquettes
de cluster obtenues aux étiquettes de vérité fondamentale correspondantes.
La NMI est une autre métrique utilisée pour mesurer la qualité du cluster-
ing. Elle est définie entre deux variables aléatoires comme [89] :
I(X; Y )
NMI(X; Y ) = %
H(X)H(Y )
68
ACC NMI
Guo et. al [38] 88,97 % 88, 49%
JND [25] 90, 25% 89, 47%
Y.B. Proposée 97, 48% 93, 73%
méthodes à petits lots convergent vers des minima plats caractérisés par de
petites valeurs propres positives. On a observé que l’ensemble des fonctions
de perte des réseaux neuronaux profonds est tel que les méthodes qui trait-
ent des grands échantillons sont presque invariablement attirées vers des
régions présentant des minima aigus et qui, contrairement aux méthodes à
petits lots, sont incapables d’échapper aux bassins de ces minima.
Les résultats que nous avons obtenus ont été principalement inspirés de
Smith et al. [96] "Don’t Decay the Learning Rate, Increase the Batch
Size". Les auteurs de [96] suggèrent que nous pouvons souvent obtenir les
avantages de la décroissance du taux d’apprentissage en augmentant plutôt
la taille du lot pendant la formation.
Ils soutiennent cette affirmation avec des expériences sur les bases de don-
nées CIFAR-10 et ImageNet[96], et avec une gamme d’optimiseurs, y com-
pris la descente de gradient stochastique et Adam en augmentant le taux
d’apprentissage et le paramètre de momentum m, tout en mettant à l’échelle
B ∝ /(1 − m).
On note que nous avons réalisé plusieurs expériences avec différents hy-
perparamètres, qui ont abouti aux résultats décrits dans le tableau 2 en
augmentant la taille du lot à B=512 avec un taux d’apprentissage η = 10−3
en fixant l’intervalle de mis à jour à 40 images.
69
sur des paires d’objets de grande dimension de telle sorte que des ob-
jets similaires se voient attribuer une probabilité plus élevée tandis que
des points différents se voient attribuer une probabilité plus faible pj|i =
exp(− xi −xj 2 /2σi2 )
2 /2σ 2 ) . Deuxièmement, t-SNE définit une distribution de
k=i exp(− xi −xk i
que pi|j tend à converger facilement, ceci rend les similarités entre les points
énormes à cause de l’utilisation de la distance euclidienne.
On note que t-SNE est fondamentalement de complexité en temps O(N 2 )en
raison de la nécessité de calculer des distances par paires ce qui vient à itérer
sur l’ensemble des points par deux boucles emboîtées. Le prochain para-
graphe introduira une méthode linéaire efficace et plus rapide que la t-SNE.
On introduit ci-dessous l’algorithme de la méthode .
tSNE
inputs : Donnees d’entrees Y, nobmre de points N
output: Nuage de points des clusters
a) Calculer les probabilités
pi|j indice de similarités des points
b) Calculer la matrice de probabilités jointes
p +p
pi j = pij = j|i2N i|j
c) Calculer la matrice qij pour les points yi
d) utiliser la descente pour mettre a jourN les points yi
N pij
et minimiser la fonction de perte de i j pij log qij
Algorithme 7: l’algorithme t-SNE
70
Figure 8 – Visualisation des résultats du clustering sur un sous-ensemble
de MNIST pendant la 50eme époque
71
les modèles d’apprentissage profond supervisés pour améliorer la générali-
sation.
Guo et al.[39] essaye donc d’exploiter ces deux ingrédients afin d’améliorer
la performance du clustering et le rendre plus robuste à ce type d’instance.
On entend par l’augmentation des données une technique utilisée pour ac-
croître la quantité de données en ajoutant des copies légèrement modifiées
de données existantes ou des données synthétiques nouvellement créées à
partir de données existantes.
Elle agit comme un régularisateur et permet de réduire le sur-ajustement
lors de l’apprentissage d’un modèle d’apprentissage automatique. Elle per-
met aussi d’améliorer la précision de prédiction des modèles en ajoutant
72
davantage de données d’entraînement dans les modèles et augmenter la ca-
pacité de généralisation des modèles.
Les techniques les plus simples de l’augmentation des données sont :
• rotation aléatoire
• remise à l’échelle
• recadrage
• zooming
• modification du contraste
• ajout de bruit
• effacement aléatoire
Il existe des modèles plus avancés d’augmentation des données qui ne sont
pas utilisées par [39] sont :
73
• Les réseaux adversaires génératifs (GAN) : Les algorithmes GAN peu-
vent apprendre des modèles à partir d’ensembles de données d’entrée
et créer automatiquement de nouveaux exemples qui ressemblent aux
données d’entraînement.
Perez et al. [79] suggèrent que l’augmentation des données lors de l’apprentissage
aide à généraliser le classificateur en montrant empiriquement que l’augmentation
aide à prévenir le sur-ajustement.
74
problème est que, souvent, nous ne disposons pas d’une mesure facilement
calculable de la « facilité » des échantillons.
Ces deux définitions sont en quelque sorte liées : si nous sommes plus
certains de la variable cachée, nous pouvons être plus sûrs de la prédic-
tion. Elles sont différentes dans la mesure où la certitude n’implique pas
n’implique pas l’exactitude, et les variables cachées peuvent ne pas être
directement pertinentes à ce qui rend la sortie d’un échantillon facile à
prédire.
L’article [56] se concentre donc sur la deuxième définition : les échantillons
faciles sont ceux dont la sortie peut être prédite facilement (sa probabilité
est élevée, ou elle se situe loin de la marge du cluster).
n
min L (fw (xi ) , yi )
w
i=1
75
de l’auto-apprentissage est le suivant
n
min vi L (fw (xi ) , yi ) + g (λ, vi )
w,v
i=1
avec vi ∈ [0, 1]
n
min vi L (fw (xi ) , yi ) − λvi
w,v
i=1
avec vi ∈ {0, 1}
Étant donné les poids des exemples v, la minimisation sur w est un prob-
lème de minimisation des pertes pondérées. Et lorsque le paramètre de
modèle w est fixé, le vi optimal est déterminé par la forme fermée
⎧
⎪
⎨1, si Li < λ
vi =
⎪
⎩ 0, sinon
76
SPL (wt+1 , vt+1 ) = n
1
argmin r(w) + ni=1 vi f (xi , yi ; w) − K i=1 vi
w∈Rd ,v∈{0,1}n
inputs: D = {(x1 , y1 ) , (x2 , y2 ) , . . . , (xn , yn )} , w0 , K0 .
t ← 0, K ← K0
while vi = 1∀i = 1, .., N do
mettre a jour h∗i = argmaxhi ∈H wt P hi (xi , yi , hi )
mettre a jour wt+1 en utilisant la recherche alternative
convexe pour minimizer l’objectif
n
1 2 1
2
w + C
n
n
v
i=1 i iξ − K i=1 vi
t ← t + 1, K ← μ K
end
Algorithme 8: Algorithme d’apprentissage self-paced
1
n
2
min vi fw (xi ) − yi 2 −λvi , avec vi ∈ {0, 1}
v,w n
i=1
1
n
2
min vi fw (xi ) − Msi 2 − λvi
v,w n
i=1
avec vi ∈ {0, 1}
77
et
1
n
2
min fw (xi ) − Msi 2
s n
i=1
t
λ = μ L t + σ Lt
T
Rd → Rd
T:
xi → x̂i = T (xi )
1
n
2
Lr = x̂i − hu (fw (x̂i )) 2
n i=1
78
1
n 2
ASPCDA minv,w n i=1 vi fw (xi ) − Msi 2 − λvi
79
5.4 Expérimentations et résultats
80
Dans la phase de pré-entraînement, pour améliorer les résultats du bench-
mark de Guo et al.[39], nous avons utilisé un autoencodeur composé de huit
couches entièrement connectées et activées par ReLU. L’autoencodeur est
entraîné pendant 500 époques en utilisant l’optimiseur SGD avec un taux
d’apprentissage η = 1,0.
Pendant le paramétrage, l’encodeur possède quatre couches avec le nombre
maximal d’itérations fixé à T=100. Dans chaque itération, nous entraînons
l’encodeur pendant une époque en utilisant l’optimiseur Adam avec un taux
d’apprentissage initial de η =0,0001 et une taille du lot comprise princi-
palement entre 32 à 512 avec un seuil du critère d’arrêt fixé à δ= 0.001.
Les résultats de l’optimisation des fonctions de perte de l’entraînement fig.9
et de clustering fig.10 diminuent rapidement vers 0 lorsque l’itération de
formation augmente. En d’autres termes, cette méthode converge dans la
pratique.
Les résultats obtenus (disponible sur le présent répertoire [Link]
com/youssefbar/memoire) au paramétrage précédemment mentionné de
l’architecture sont quasi identiques à celles du benchmark de Guo et al.[39]
avec une précision de 0.98 ±0.009.
81
6 Conclusion et Perspectives
82
formateurs en vision[27] et les réseaux de neurones à graphe hiérarchique
de classification[11].
83
References
[2] Saad Albawi, Tareq Abed Mohammed, and Saad Al-Zawi. Understanding
of a convolutional neural network. In 2017 International Conference on
Engineering and Technology (ICET), pages 1–6. Ieee, 2017.
[3] Elie Aljalbout, Vladimir Golkov, Yawar Siddiqui, Maximilian Strobel, and
Daniel Cremers. Clustering with deep learning: Taxonomy and new meth-
ods. arXiv preprint arXiv:1801.07648, 2018.
[6] Martin Arjovsky, Soumith Chintala, and Léon Bottou. Wasserstein genera-
tive adversarial networks. In International conference on machine learning,
pages 214–223. PMLR, 2017.
[8] Arturs Backurs, Yihe Dong, Piotr Indyk, Ilya Razenshteyn, and Tal Wag-
ner. Scalable nearest neighbor search for optimal transport. In Interna-
tional Conference on Machine Learning, pages 497–506. PMLR, 2020.
84
[9] Ari S Benjamin, David Rolnick, and Konrad Kording. Measuring and
regularizing networks in function space. arXiv preprint arXiv:1805.08289,
2018.
[10] Mariusz Bojarski, Davide Del Testa, Daniel Dworakowski, Bernhard Firner,
Beat Flepp, Prasoon Goyal, Lawrence D Jackel, Mathew Monfort, Urs
Muller, Jiakai Zhang, et al. End to end learning for self-driving cars. arXiv
preprint arXiv:1604.07316, 2016.
[12] Daniel B Burkhardt, Jay S Stanley, Ana Luisa Perdigoto, Scott A Gigante,
Kevan C Herold, Guy Wolf, Antonio J Giraldez, David van Dijk, and Smita
Krishnaswamy. Quantifying the effect of experimental perturbations in
single-cell rna-sequencing data using graph signal processing. BioRxiv,
page 532846, 2019.
[15] Liqun Chen, Zhe Gan, Yu Cheng, Linjie Li, Lawrence Carin, and Jingjing
Liu. Graph optimal transport for cross-domain alignment. In International
Conference on Machine Learning, pages 1542–1553. PMLR, 2020.
[16] Zhi Chen, Yijie Bei, and Cynthia Rudin. Concept whitening for inter-
pretable image recognition. Nature Machine Intelligence, 2(12):772–782,
2020.
[17] François Chollet. Xception: Deep learning with depthwise separable con-
volutions. In Proceedings of the IEEE conference on computer vision and
pattern recognition, pages 1251–1258, 2017.
[18] Taco Cohen, Mario Geiger, Jonas Köhler, and Max Welling. Convolutional
networks for spherical signals. arXiv preprint arXiv:1709.04893, 2017.
85
[19] Ronald R Coifman and Stéphane Lafon. Diffusion maps. Applied and
computational harmonic analysis, 21(1):5–30, 2006.
[21] Corinna Cortes and Vladimir Vapnik. Support vector machine. Machine
learning, 20(3):273–297, 1995.
[22] Nello Cristianini, Jaz Kandola, Andre Elisseeff, and John Shawe-Taylor.
On kernel target alignment. In Innovations in machine learning, pages
205–256. Springer, 2006.
[26] Daxiang Dong, Hua Wu, Wei He, Dianhai Yu, and Haifeng Wang. Multi-
task learning for multiple language translation. In Proceedings of the 53rd
Annual Meeting of the Association for Computational Linguistics and the
7th International Joint Conference on Natural Language Processing (Vol-
ume 1: Long Papers), pages 1723–1732, 2015.
86
derer, Georg Heigold, Sylvain Gelly, et al. An image is worth 16x16
words: Transformers for image recognition at scale. arXiv preprint
arXiv:2010.11929, 2020.
[29] Matt W Gardner and SR Dorling. Artificial neural networks (the mul-
tilayer perceptron)—a review of applications in the atmospheric sciences.
Atmospheric environment, 32(14-15):2627–2636, 1998.
[30] Aude Genevay, Lénaic Chizat, Francis Bach, Marco Cuturi, and Gabriel
Peyré. Sample complexity of sinkhorn divergences. In The 22nd Interna-
tional Conference on Artificial Intelligence and Statistics, pages 1574–1583.
PMLR, 2019.
[31] Ian Goodfellow, Yoshua Bengio, and Aaron Courville. Deep learning. MIT
press, 2016.
[32] Ian Goodfellow, Jean Pouget-Abadie, Mehdi Mirza, Bing Xu, David
Warde-Farley, Sherjil Ozair, Aaron Courville, and Yoshua Bengio. Gener-
ative adversarial nets. Advances in neural information processing systems,
27, 2014.
[34] Alex Graves, Abdel-rahman Mohamed, and Geoffrey Hinton. Speech recog-
nition with deep recurrent neural networks. In 2013 IEEE international
conference on acoustics, speech and signal processing, pages 6645–6649.
Ieee, 2013.
87
[35] Alexander Grigor’yan, Jiaxin Hu, and Ka-Sing Lau. Heat kernels on met-
ric measure spaces. In Geometry and Analysis of Fractals, volume 88 of
PROMS, pages 147–207, 2014.
[37] Xifeng Guo, Long Gao, Xinwang Liu, and Jianping Yin. Improved deep
embedded clustering with local structure preservation. In Ijcai, pages 1753–
1759, 2017.
[38] Xifeng Guo, Xinwang Liu, En Zhu, and Jianping Yin. Deep clustering
with convolutional autoencoders. In International conference on neural
information processing, pages 373–382. Springer, 2017.
[39] Xifeng Guo, Xinwang Liu, En Zhu, Xinzhong Zhu, Miaomiao Li, Xin Xu,
and Jianping Yin. Adaptive self-paced deep clustering with data augmenta-
tion. IEEE Transactions on Knowledge and Data Engineering, 32(9):1680–
1693, 2019.
[40] Boris Hanin. Universal function approximation by deep neural nets with
bounded width and relu activations. Mathematics, 7(10):992, 2019.
[41] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual
learning for image recognition. In Proceedings of the IEEE conference on
computer vision and pattern recognition, pages 770–778, 2016.
[42] Geoffrey E Hinton, Nitish Srivastava, Alex Krizhevsky, Ilya Sutskever, and
Ruslan R Salakhutdinov. Improving neural networks by preventing co-
adaptation of feature detectors. arXiv preprint arXiv:1207.0580, 2012.
[43] Martin Hofmann. Support vector machines-kernels and the kernel trick.
Notes, 26(3):1–16, 2006.
88
[44] Lu Hongtao and Zhang Qinchuan. Applications of deep convolutional neu-
ral network in computer vision. Journal of Data Acquisition and Processing,
31(1):1–17, 2016.
[45] Sara Hooker, Dumitru Erhan, Pieter-Jan Kindermans, and Been Kim. A
benchmark for interpretability methods in deep neural networks. arXiv
preprint arXiv:1806.10758, 2018.
[46] Kurt Hornik, Maxwell Stinchcombe, and Halbert White. Multilayer feed-
forward networks are universal approximators. Neural networks, 2(5):359–
366, 1989.
[47] Taicheng Huang, Zonglei Zhen, and Jia Liu. Semantic relatedness emerges
in deep convolutional neural networks designed for object recognition.
Frontiers in computational neuroscience, 15:16, 2021.
[48] Jay S. Stanley III, Scott Gigante, Guy Wolf, and Smita Krishnaswamy.
Harmonic Alignment, pages 316–324.
[51] Taeksoo Kim, Moonsu Cha, Hyunsoo Kim, Jung Kwon Lee, and Jiwon
Kim. Learning to discover cross-domain relations with generative adver-
sarial networks. In International Conference on Machine Learning, pages
1857–1865. PMLR, 2017.
[52] Diederik P Kingma and Jimmy Ba. Adam: A method for stochastic opti-
mization. arXiv preprint arXiv:1412.6980, 2014.
89
[53] Simon Kornblith, Mohammad Norouzi, Honglak Lee, and Geoffrey Hinton.
Similarity of neural network representations revisited. In International
Conference on Machine Learning, pages 3519–3529. PMLR, 2019.
[54] Alex Krizhevsky, Ilya Sutskever, and Geoffrey E Hinton. Imagenet clas-
sification with deep convolutional neural networks. Advances in neural
information processing systems, 25:1097–1105, 2012.
[56] M Kumar, Benjamin Packer, and Daphne Koller. Self-paced learning for
latent variable models. Advances in neural information processing systems,
23:1189–1197, 2010.
[57] John Lafferty, Guy Lebanon, and Tommi Jaakkola. Diffusion kernels on
statistical manifolds. Journal of Machine Learning Research, 6(1), 2005.
[58] Isaac E Lagaris, Aristidis Likas, and Dimitrios I Fotiadis. Artificial neu-
ral networks for solving ordinary and partial differential equations. IEEE
transactions on neural networks, 9(5):987–1000, 1998.
[59] Tam Le, Viet Huynh, Nhat Ho, Dinh Phung, and Makoto Yamada. On
scalable variant of wasserstein barycenter. ArXiv Preprint, 2019:2, 1910.
[60] Yann LeCun. 1.1 deep learning hardware: past, present, and future. In
2019 IEEE International Solid-State Circuits Conference-(ISSCC), pages
12–19. IEEE, 2019.
[61] Yann LeCun, Yoshua Bengio, and Geoffrey Hinton. Deep learning. nature,
521(7553):436–444, 2015.
[62] Yann LeCun, LD Jackel, Leon Bottou, A Brunot, Corinna Cortes, John
Denker, Harris Drucker, Isabelle Guyon, UA Muller, Eduard Sackinger,
90
et al. Comparison of learning algorithms for handwritten digit recognition.
In International conference on artificial neural networks, volume 60, pages
53–60. Perth, Australia, 1995.
[63] Roy R Lederman and Ronen Talmon. Common manifold learning using
alternating-diffusion. submitted, Tech. Report YALEUIDCSITR1497, 2014.
[64] William Leeb and Ronald Coifman. Hölder–lipschitz norms and their duals
on spaces with semigroups, with applications to earth mover’s distance.
Journal of Fourier Analysis and Applications, 22(4):910–953, 2016.
[65] Ofir Lindenbaum, Arie Yeredor, Moshe Salhov, and Amir Averbuch. Multi-
view diffusion maps. Information Fusion, 55:127–149, 2020.
[67] Hanxiao Liu, Zihang Dai, David R. So, and Quoc V. Le. Pay attention to
mlps, 2021.
[68] Zhou Lu, Hongming Pu, Feicheng Wang, Zhiqiang Hu, and Liwei Wang.
The expressive power of neural networks: A view from the width. In
Proceedings of the 31st International Conference on Neural Information
Processing Systems, pages 6232–6240, 2017.
[69] Scott M Lundberg and Su-In Lee. A unified approach to interpreting model
predictions. In Proceedings of the 31st international conference on neural
information processing systems, pages 4768–4777, 2017.
[70] Yunqian Ma and Yun Fu. Manifold learning theory and applications. CRC
press, 2011.
[71] Leland McInnes, John Healy, and James Melville. Umap: Uniform mani-
fold approximation and projection for dimension reduction. arXiv preprint
arXiv:1802.03426, 2018.
91
[72] Tomáš Mikolov, Martin Karafiát, Lukáš Burget, Jan Černockỳ, and San-
jeev Khudanpur. Recurrent neural network based language model. In
Eleventh annual conference of the international speech communication as-
sociation, 2010.
[73] Riccardo Miotto, Fei Wang, Shuang Wang, Xiaoqian Jiang, and Joel T
Dudley. Deep learning for healthcare: review, opportunities and challenges.
Briefings in bioinformatics, 19(6):1236–1246, 2018.
[75] Kevin R Moon, Jay S Stanley III, Daniel Burkhardt, David van Dijk, Guy
Wolf, and Smita Krishnaswamy. Manifold learning-based methods for ana-
lyzing single-cell rna-sequencing data. Current Opinion in Systems Biology,
7:36–46, 2018.
[76] Kevin R Moon, David van Dijk, Zheng Wang, Scott Gigante, Daniel B
Burkhardt, William S Chen, Kristina Yim, Antonia van den Elzen,
Matthew J Hirn, Ronald R Coifman, et al. Visualizing structure and
transitions in high-dimensional biological data. Nature biotechnology,
37(12):1482–1492, 2019.
[77] Debarghya Mukherjee, Aritra Guha, Justin M Solomon, Yuekai Sun, and
Mikhail Yurochkin. Outlier-robust optimal transport. In International
Conference on Machine Learning, pages 7850–7860. PMLR, 2021.
[79] Luis Perez and Jason Wang. The effectiveness of data augmentation in
image classification using deep learning. arXiv preprint arXiv:1712.04621,
2017.
92
[80] Joshua C Peterson, Paul Soulos, Aida Nematzadeh, and Thomas L Grif-
fiths. Learning hierarchical visual representations in deep neural networks
using hierarchical linguistic labels. arXiv preprint arXiv:1805.07647, 2018.
[82] Ben Poole, Subhaneil Lahiri, Maithra Raghu, Jascha Sohl-Dickstein, and
Surya Ganguli. Exponential expressivity in deep neural networks through
transient chaos. In Advances in neural information processing systems,
pages 3360–3368, 2016.
[83] Svetlozar T Rachev. Probability metrics and the stability of stochastic mod-
els, volume 269. Wiley, 1991.
[84] Maithra Raghu, Justin Gilmer, Jason Yosinski, and Jascha Sohl-Dickstein.
Svcca: Singular vector canonical correlation analysis for deep learning dy-
namics and interpretability, 2017.
[85] Joan Bruna Raman Arora, Sanjeev Arova. Theory of deep learning, 2021.
[86] Qing Rao and Jelena Frtunikj. Deep learning for self-driving cars: Chances
and challenges. In Proceedings of the 1st International Workshop on Soft-
ware Engineering for AI in Autonomous Systems, pages 35–38, 2018.
[87] Marco Tulio Ribeiro, Sameer Singh, and Carlos Guestrin. " why should i
trust you?" explaining the predictions of any classifier. In Proceedings of
the 22nd ACM SIGKDD international conference on knowledge discovery
and data mining, pages 1135–1144, 2016.
[88] David Rolnick and Konrad Kording. Reverse-engineering deep relu net-
works. In International Conference on Machine Learning, pages 8178–8187.
PMLR, 2020.
93
[89] Simone Romano, James Bailey, Nguyen Xuan Vinh, and Karin Verspoor.
Standardized mutual information for clustering comparisons: One step fur-
ther in adjustment for chance. In Proceedings of the 31st International
Conference on International Conference on Machine Learning - Volume
32, ICML’14, page II–1143–II–1151. [Link], 2014.
[90] Cynthia Rudin. Stop explaining black box machine learning models for
high stakes decisions and use interpretable models instead. Nature Machine
Intelligence, 1(5):206–215, 2019.
[92] Andrew M Saxe, James L McClelland, and Surya Ganguli. Exact solutions
to the nonlinear dynamics of learning in deep linear neural networks. arXiv
preprint arXiv:1312.6120, 2013.
[93] Avanti Shrikumar, Peyton Greenside, and Anshul Kundaje. Learning im-
portant features through propagating activation differences. In Interna-
tional Conference on Machine Learning, pages 3145–3153. PMLR, 2017.
[94] Ravid Shwartz-Ziv and Naftali Tishby. Opening the black box of deep
neural networks via information. arXiv preprint arXiv:1703.00810, 2017.
[95] Karen Simonyan and Andrew Zisserman. Very deep convolutional networks
for large-scale image recognition. arXiv preprint arXiv:1409.1556, 2014.
[96] Samuel L Smith, Pieter-Jan Kindermans, Chris Ying, and Quoc V Le.
Don’t decay the learning rate, increase the batch size. arXiv preprint
arXiv:1711.00489, 2017.
[97] Justin Solomon, Fernando De Goes, Gabriel Peyré, Marco Cuturi, Adrian
Butscher, Andy Nguyen, Tao Du, and Leonidas Guibas. Convolutional
wasserstein distances: Efficient optimal transportation on geometric do-
mains. ACM Transactions on Graphics (TOG), 34(4):1–11, 2015.
94
[98] Nitish Srivastava, Geoffrey Hinton, Alex Krizhevsky, Ilya Sutskever, and
Ruslan Salakhutdinov. Dropout: a simple way to prevent neural networks
from overfitting. The journal of machine learning research, 15(1):1929–
1958, 2014.
[99] Ruoyu Sun. Optimization for deep learning: theory and algorithms. arXiv
preprint arXiv:1912.08957, 2019.
[100] Xin Sun, Junyu Shi, Lipeng Liu, Junyu Dong, Claudia Plant, Xinhua
Wang, and Huiyu Zhou. Transferring deep knowledge for object recog-
nition in low-quality underwater videos. Neurocomputing, 275:897–908,
2018.
[101] David Sussillo and Omri Barak. Opening the black box: low-dimensional
dynamics in high-dimensional recurrent neural networks. Neural computa-
tion, 25(3):626–649, 2013.
[102] Mingxing Tan and Quoc Le. Efficientnet: Rethinking model scaling for
convolutional neural networks. In International Conference on Machine
Learning, pages 6105–6114. PMLR, 2019.
[105] Kai Tian, Shuigeng Zhou, and Jihong Guan. Deepcluster: A general clus-
tering framework based on deep learning. In ECML/PKDD, 2017.
[106] Devis Tuia and Gustau Camps-Valls. Kernel manifold alignment for domain
adaptation. PloS one, 11(2):e0148655, 2016.
[107] Laurens Van der Maaten and Geoffrey Hinton. Visualizing data using t-sne.
Journal of machine learning research, 9(11), 2008.
95
[108] Ashish Vaswani, Noam Shazeer, Niki Parmar, Jakob Uszkoreit, Llion Jones,
Aidan N Gomez, Łukasz Kaiser, and Illia Polosukhin. Attention is all you
need. In Advances in neural information processing systems, pages 5998–
6008, 2017.
[111] Chang Wang, Peter Krafft, Sridhar Mahadevan, Y Ma, and Y Fu. Manifold
alignment. In Manifold Learning: Theory and Applications, pages 95–120.
CRC Press Boca Raton, FL, USA, 2011.
[112] Chang Wang and Sridhar Mahadevan. Manifold alignment using procrustes
analysis. In Proceedings of the 25th international conference on Machine
learning, pages 1120–1127, 2008.
[113] Chang Wang and Sridhar Mahadevan. Manifold alignment without cor-
respondence. In Twenty-First International Joint Conference on Artificial
Intelligence, 2009.
[115] Xiang Zhang and Yann LeCun. Text understanding from scratch. arXiv
preprint arXiv:1502.01710, 2015.
[116] Jun-Yan Zhu, Taesung Park, Phillip Isola, and Alexei A Efros. Unpaired
image-to-image translation using cycle-consistent adversarial networks. In
Proceedings of the IEEE international conference on computer vision, pages
2223–2232, 2017.
96