Apprentissage par transfert en images
Apprentissage par transfert en images
(MACS)
MEMOIRE DE FIN D’ETUDES
Introduction générale 1
2 Méthodes de régularisation 20
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2 Méthodes Stochastiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.1 Description du modèle . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.2 Dropout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.3 DropConnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.4 Apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.5 Complexité du réseau DropConnect . . . . . . . . . . . . . . . . . . . . . . 24
2.2.6 Normalisation par lots(batch normalization) . . . . . . . . . . . . . . . . . 25
2.2.7 Réseaux convolutifs normalisés par lots(batch normalized CNN) . . . . . . 26
2.3 Méthodes déterministes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3.1 Régularisation ℓ2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3.2 Régularisation ℓ1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
i
3 Apprentissage par transfert 30
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.2 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3 Une brève histoire de l’apprentissage par transfert . . . . . . . . . . . . . . . . . . 30
3.4 Notations et définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.5 Catégorisation des techniques d’apprentissage par transfert . . . . . . . . . . . . . 32
3.6 Les approches de l’apprentissage par transfert . . . . . . . . . . . . . . . . . . . . 34
3.6.1 Apprentissage par transfert inductif . . . . . . . . . . . . . . . . . . . . . 35
3.6.2 Apprentissage par transfert transductif . . . . . . . . . . . . . . . . . . . . 37
3.6.3 Apprentissage par transfert non supervisé . . . . . . . . . . . . . . . . . . 38
3.6.4 Transfert négatif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.7 Apprentissage par transfert profond . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.8 Apprentissage par transfert via la régularisation ℓ1 . . . . . . . . . . . . . . . . . 39
3.8.1 Préliminaire et notion de base . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.8.2 Méthode de transfert des paramètres . . . . . . . . . . . . . . . . . . . . . 42
3.8.3 Propriétés théoriques du transfert LASSO . . . . . . . . . . . . . . . . . . 45
Conclusion générale 66
APPENDICES 67
.1 Complexité de Readmacher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
.2 Apprentissage et Inférence avec les réseaux normalisés par lots . . . . . . . . . . . 68
Bibliographie 68
ii
Table des figures
iii
Liste des tableaux
iv
Remerciement
Je tiens à remercier toutes les personnes qui ont contribué au succès de mon stage et qui
m’ont aidée lors de la rédaction de ce mémoire.
Je voudrais dans un premier temps remercier, mes directeurs de mémoire, Ettaouil Mohamed
professeur de mathématiques appliquées à la Faculté des Sciences et Techniques de Fès, pour
sa patience, sa disponibilité et surtout ses judicieux conseils, qui ont contribué à alimenter ma
réflexion, et Joudar Nour-eddine professeur à l’École Nationale Supérieur des Arts et Métiers de
Rabat pour m’avoir accordé des entretiens et avoir répondu à mes questions. Il été d’un grand
soutien dans l’élaboration de ce mémoire. Il a partagé ses connaissances et expériences dans ce
milieu, tout en m’accordant sa confiance et une large indépendance dans l’exécution de missions
valorisantes. Ainsi que pour m’avoir relu et corrigé mon mémoire. Ses conseils de rédaction ont
été très précieux.
Je remercier également Les membres du jury : Monsieur EL KHAOULANI EL IDRISSI
Rachid, professeur à la Faculté des sciences et techniques de Fès et Madame CHAIBI Ghizlane,
professeur à la Faculté des sciences et techniques de Fès, qui m’ont honoré en acceptant d’évaluer
et de juger mon travail.
Je tiens à témoigner toute ma reconnaissance aux personnes suivantes, pour leur aide dans
la réalisation de ce mémoire : Je remercie mes très chers parents Belkacem et Aicha, qui ont
toujours été là pour moi. Je remercie ma sœur Fatima, et mes frères Brahim et Mohammed,
pour leurs encouragements.
Enfin, je remercie mes amis Ahlam et Lahcen qui ont toujours été là pour moi. Leur soutien
inconditionnel et leurs encouragements ont été d’une grande aide.
À tous ces intervenants, je présente mes remerciements, mon respect et ma gratitude.
v
Dédicace
Je dédie ce travail
A mes parents qui m’ont soutenu et encouragé durant ces années d’études.
A mes frères, ma sœur, mes grands parents et ceux qui ont partagé avec moi tous les moments
d’émotion lors de la réalisation de ce travail.
A tous mes amis qui m’ont toujours encouragé, et à qui je souhaite plus de succès.
Merci !
vi
Introduction générale
Depuis les années 1950, un petit groupe d’intelligence artificielle (IA) [17], souvent appelé Ap-
prentissage automatique(Machine Learning)[40],[63],[8] a révolutionné un certain nombre de do-
maines au cours des dernières décennies. Les réseaux de neurones (NN)[20],[45],[25] sont un sous-
domaine de ML, et ce dernier qui a engendré l’apprentissage profond(Deep Learning) [33],[42],[36],
[68],[22]. Les réseaux de neurones convolutifs [19],[24],[29] est l’un des réseaux de neurones les
plus représentatifs dans le domaine de l’apprentissage profond. La vision par ordinateur [49] ba-
sée sur des réseaux de neurones convolutifs a permis aux gens d’accomplir ce qui était considéré
comme impossible au cours des derniers siècles, comme la reconnaissance faciale[5], les véhicules
autonomes[31], les supermarchés en libre-service[50] et les traitements médicaux intelligents[51].
En revanche, le scénario idéal de l’apprentissage automatique est qu’il existe de nombreuses
instances d’apprentissage étiquetées[10], qui ont la même distribution que les données de test.
Cependant, la collection des données d’apprentissage suffisantes est souvent coûteuse, chrono-
phage ou même irréaliste dans de nombreux scénarios. L’apprentissage semi-supervisé[69] peut
en partie résoudre ce problème en assouplissant le besoin de données étiquetées en masse. En
règle générale, une approche semi-supervisée ne nécessite qu’un nombre limité de données éti-
quetées et utilise une grande quantité de données non étiquetées pour améliorer la précision de
l’apprentissage, mais dans de nombreux cas, les instances non étiquetées sont également difficiles
à collecter, ce qui rend généralement les modèles traditionnels résultants insatisfaisants.
L’insuffisance des données d’apprentissage est un problème incontournable dans certains do-
maines particuliers[12],[21]. La collection des données est complexe et coûteuse, ce qui rend
extrêmement difficile la création d’un ensemble de données annotées à grande échelle et de haute
qualité. Par exemple, chaque échantillon dans l’ensemble de données bio-informatiques démontre
souvent un essai clinique ou un patient douloureux. De plus, même si nous obtenons un ensemble
de données d’entraînement en payant un prix élevé, il est très facile de le rendre obsolète et ne
peut donc pas être appliqué efficacement dans les nouvelles tâches.
L’apprentissage par transfert[41],[58],[70],[37] assouplit l’hypothèse selon laquelle les données
d’entraînement doivent être indépendantes et distribuées de manière identique (i.i.d.)[67] avec
les données de test, ce qui nous motive à utiliser l’apprentissage par transfert pour contrer le
problème des données d’entraînement insuffisantes.
Dans l’apprentissage par transfert, les données d’apprentissage et les données de test ne
doivent pas nécessairement être i.i.d., et le modèle dans le domaine cible n’a pas besoin d’être
formé à partir de zéro, ce qui peut réduire considérablement la demande de données d’appren-
tissage et le temps d’apprentissage dans le domaine cible.
Notre projet est organisé comme suit :
1. Le premier chapitre est consacré à l’étude de quelques algorithmes d’apprentissage dans les
réseaux profonds, ainsi que les caractéristiques de chaque algorithme. Nous allons aborder
aussi les réseaux de neurones convolutifs(CNNs) ainsi que leur avantage par rapport aux
réseau de neurones artificiels entièrement connectés dans le cadre de traitement des images.
1
2. Les modèles de réseau neuronal (NN) sont bien adaptés aux domaines où de grands
ensembles de données étiquetées sont disponibles, car leur capacité peut facilement être
augmentée en ajoutant plus de couches ou plus d’unités dans chaque couche. Cependant,
les grands réseaux avec des millions ou des milliards de paramètres peuvent facilement
sur-ajusté(Overfitting). En conséquence, des méthodes de régularisation des réseaux de
neurones ont été développées, et qui feront l’objet du deuxième chapitre.
3. Le troisième chapitre qui est le noyau de ce projet où nous allons étudier l’apprentis-
sage par transfert. Ce type d’apprentissage a été introduit essentiellement pour résoudre
le problème de manque des données ainsi pour assouplit l’hypothèse selon laquelle les
données d’apprentissage doivent être indépendantes et distribuées de manière identique
(i.i.d.) avec les données de test.
4. Dans le quatrième chapitre, nous effectuerons des expériences visant à illustrer et justifier
l’importance de l’apprentissage par transfert et nous verrons que cela résout un gros
problème, surtout en ce qui concerne l’imagerie médicale lorsqu’il y a un réel manque de
données, particulièrement en cas de nouvelle épidémie.
2
Chapitre 1
Réseaux de neurones profonds
3
1.2. APPRENTISSAGE ET OPTIMISATION DANS LES RÉSEAUX PROFONDS
avec :
xi est l’entrée i.
di est la sortie attendue(désirée) associe à xi .
On veut minimiser l’erreur quadratique(SE) :
n n
1X 1X
E(w) = (di − yi )2 = Ei (1.1)
2 2
i=1 i=1
avec :
Ei = (di − yi )2 est l’erreur pour l’entrée xi (appelé aussi l’erreur local).
yi est la sortie produite par le réseau pour l’exemple(la donnée) i.
W est la matrice des poids synaptiques du réseau.
Remarque 1.1.1:
Ici on a choisi l’erreur quadratique. Il existe différentes formules pour calculer l’erreur
entre la sortie attendue di et la sortie produite par le réseau yi = F (xi ). Par exemple,
l’erreur absolue moyenne donnée par :
n
1X
E(w) = |di − yi | (1.2)
n
i=1
Le choix de la fonction erreur dépend du problème, par exemple si la sortie produite est
une probabilité ỹi avec 0 ≤ ỹi ≤ 1, Alors la fonction erreur adaptée est l’entropie croisée
binaire
n
1X
E(w) = − (yi ln(ỹi ) + (1 − ỹi ) ln(1 − ỹi )) (1.3)
n
i=1
Remarque 1.2.1
(a) Évidemment, plus on choisit le point initial w0 proche d’un minimum local,
plus l’algorithme va aboutir rapidement. Cependant, comme on ne sait pas
où est ce minimum local (c’est ce que l’on cherche), le plus simple est de
choisir un w0 au hasard.
(b) Le choix du pas δk est crucial. On sait que l’on peut choisir δk assez petit
de façon à avoir E(wk+1 ) < E(wk ) car dans la direction de −∇E(wk ) la
fonction E décroît. On peut fixer à l’avance un pas δ commun à toutes les
itérations, par exemple δ = 0.01. On pourrait également tester à chaque
itération plusieurs valeurs de δ par balayage (δ = 0.001, puis δ = 0.002...)
et choisir pour δk celui en lequel E prend la plus petite valeur.
Il faut donc calculer une somme de n termes à chaque itération, ce qui pose des problèmes
d’efficacité pour de grandes valeurs de n.
Pour diminuer la quantité de calculs, l’idée est de considérer à chaque itération un seul
gradient Ei à la place de E. C’est-à-dire :
pour une seule erreur Ei (correspondant à la donnée numéro i). L’itération suivante se
basera sur l’erreur Ei+1 .
Quel est l’intérêt de cette méthode ?
Dans la méthode de gradient classique, on calcule à chaque itération un « gros » gradient
(associe à la totalité des n données) qui nous rapproche d’un grand pas vers le minimum.
Ici on calcule n « petits » gradients qui nous rapprochent du minimum.
3. Descente par lot(mini-batch). [48] Il existe une méthode intermédiaire entre la descente
de gradient classique (qui tient compte de toutes les données à chaque itération) et la
descente de gradient stochastique (qui n’utilise qu’une seule donnée à chaque itération).
La descente de gradient par lots (mini-lots, mini-batch) est une méthode intermé-
diaire : on divise les données par paquets de taille m. Pour chaque paquet (appelé «
lot(batch) »), on calcule un gradient et on effectue une itération.
Au bout de n/m itérations, on a parcouru tout le jeu de données : cela s’appelle une
époque(epoche).
La formule est donc :
Remarque 1.2.2
1. Moment(Momentum SGD)
L’objectif principal de la méthode dite de Moment [48] est d’accélérer le processus de
descente de gradient, et ceci en rajoutant un vecteur de vélocité.
La formule de la descente de gradient avec moment est :
2. Nesterov
Dans la méthode précédente, le moment et le gradient sont calculés au même point wk .
La méthode de Nesterov [48] est une variante de cette méthode. Elle consiste à appliquer
d’abord le moment, pour obtenir un point wk′ , puis de calculer le gradient en ce point (et
non en wk ).
La formule est donc :
wk′ ← wk + µvk
vk+1 ← µvk − δ∇E(wk′ )
wk+1 ← wk + vk+1
C’est un petit avantage par rapport à la méthode du moment puisqu’on calcule le gradient
au point wk′ qui est censé être plus près de la solution wmin que wk .
1. Adagrad. [48] Le principe de la méthode Adagrad est de faire que le taux d’apprentissage
s’adapte aux paramètres, faisant de sorte qu’il s’ajuste automatiquement, en fonction de
"l’éparsité" des paramètres. Adagrad abaisse progressivement le taux d’apprentissage mais
pas de la même manière pour tous les paramètres : les dimensions à pente plus prononcée
voient leur taux abaissé plus rapidement que celles à pente douce. Plus formellement, le
pas est décrit par :
(∇E(wk ))i
∀i, (wk+1 )i ← (wk )i − α qP , α>0
k 2
j=1 (∇E(w ))
j i
3. Adam. Adam [48] est l’un des algorithmes les plus récents et les plus efficaces pour
l’optimisation par descente de gradient. Le principe est le même que pour Adagrad et
RMSProp : il adapte automatiquement le taux d’apprentissage pour chaque paramètre.
Sa particularité est de calculer (mk , vk ) des "estimations adaptatives des moments". Il
Ici mk est le premier moment du gradient (la moyenne) et vk est son second moment
(variance non-centrée). ϵ est un paramètre de précision. Les paramètres β1 et β2 sont
utilisés pour réaliser des moyennes d’exécution sur les moments mk et vk respectivement.
1.4 Rétropagation
Les poids dans le réseau de neurones sont au préalable initialisés avec des valeurs aléatoires.
On considère ensuite la base d’apprentissage X définie précédemment. L’algorithme de rétropa-
gation du gradient[30] suit les étapes suivantes :
(n−1) (n)
2. On propage le signal en avant dans les couches du réseau de neurones xk → xj avec
n le numéro de la couche, et k et j les numéros des neurones sur leur couche respective.
5. On calcule alors l’erreur entre la sortie donnée par le réseau yi et le vecteur di désiré à la
sortie pour cet échantillon. Pour chaque neurone i dans la couche de sortie, on calcule :
esortie
i = g ′ (hsortie
i )(yi − di )
(n) (n−1)
6. On propage l’erreur vers l’arrière ei → ej , grâce à la formule :
(n−1) (n−1)
X (n) (n)
ej = g ′(n−1) (hj ) wij ei
i
ou
(n) (sortie) ∂yi
ei = ei = (yi − di ) (n)
∂hi
Démonstration. Par le théorème de Tonelli[9], f ⊗g : (x, y) 7→ f (y)g(x) est intégrable sur Rd ×Rd
et ||f ⊗ g||L1 (Rd ×Rd ) = ||f ||L1 (Rd ) ||g||L1 (Rd ) .
L’application :
ϕ : (x, y) 7→ (x − y, y)
est un C 1 −difféomorphisme de Rd × Rd de jacobien 1, donc par le théorème de changement de
variable :
Donc, la fonction y 7→ f (y)g(x − y) est Lebesque intégrable sur Rd × Rd et la conclusion est une
conséquence directe du théorème de Fubini.
y 7→ f (y)g(x − y) et y 7→ g(y)f (x − y)
Z
(f ⋆ g) ⋆ h(x) = (f ⋆ g)(y)h(x − y)dy
d
ZR Z
= f (z)g(y − z)dz h(x − y)dy (1)
Rd Rd
ϕ(x, y, z) = (x − y − z, y, z)
qui vérifie |det(Dϕ)| = 1, (f ⊗ g ⊗ h ◦ ϕ) est également intégrable. Par le théorème de Fubini
cette fonction est intégrable par rapport à (y, z) et pour presque tout x ∈ Rd
Z
f ⋆ (g ⋆ h)(x) = (h ⊗ g ⊗ f ) ◦ ϕ(x, y, z)dydz
Rd ×Rd
Soit (f (n))n∈Z et (g(n))n∈Z deux suites de nombres réels. Le produit de convolution est
la suite (h(n))n∈Z dont le terme général est défini par :
+∞
X
h(n) = (f ⋆ g)(n) = f (n − k)g(k) (1.12)
k=−∞
Remarque 1.5.1
1. Lorsque l’on suppose que les termes de g sont nuls en dehors des indices appartenant
à [−K, +K] :
XK
h(n) = (f ⋆ g)(n) = f (n − k)g(k) (1.13)
k=−K
c’est le cas le plus utilisé, en effet la suite (g(n))n∈Z représente le motif( Kernel)
2. Le produit de convolution dans le cas discret est commutatif et associatif.
Notations 1.5.1:
on désigne par :
I : une image.
A : la matrice associé a l’image I.
M : le motifs(kernel, filtre, masque).
coefficient :
1. On centre le motif retourné sur la position du coefficient à calculer
2. On multiplie chaque coefficient de A par le coefficient du motif retourné en face
3. La somme de ces produits donne un coefficient de A ⋆ M .
Exemple 1.5.1:
• Convolution restreinte. On ne s’autorise pas à rajouter des zéros virtuels. Pour cette convo-
lution la matrice B est donc de taille (n − 2) × (p − 2)
1.5.3 Pooling
Le pooling (regroupement de termes) consiste à transformer une matrice en une matrice plus
petite tout en essayant d’en garder les caractéristiques principales.
Un pooling de taille k transforme une matrice de taille n × p en une matrice de taille k fois plus
petite, c’est-à-dire de taille n/k × p/k. Une sous-matrice de taille k × k de la matrice de départ
produit un seul coefficient de la matrice d’arrivée.
Le max-pooling, qui ne retient que la valeur la plus élevée par sous-matrice, permet de détecter
la présence d’une caractéristique (par exemple un pixel blanc dans une image noire). Tandis que
le pooling en moyenne prend en compte tous les termes de chaque sous-matrice (par exemple
avec 4 pixels d’une image de ciel, on retient la couleur moyenne).
Les poids du neurone correspondent aux coefficients d’une matrice de convolution(le motif) :
m11 m12 m13
m21 m23 m23 (1.15)
m31 m32 m33
s = g(a11 m33 +a12 m32 +a13 m31 +a21 m23 +a22 m22 +a23 m21 +a31 m13 +a32 m12 +a33 m11 ) (1.16)
avec g est la fonction d’activation.
Imaginons que l’entrée soit une image ou un tableau de dimension 2, pour nous ce sera une
matrice A. Alors un neurone de convolution est relié à une sous-matrice 3 × 3 de A.
il y a donc np neurones de convolutions, chacun ayant 9 arêtes (car le motif est de taille 3 × 3).
Les poids sont communs à tous les neurones (ce sont les coefficients de M). Ainsi, pour une couche
de convolution, il y a seulement 9 poids à déterminer pour définir la couche de convolution (bien
que le nombre de neurones puisse être très grand).
Remarque 1.5.2:
Convolution à plusieurs filtres à partir de plusieurs canaux. C’est le cas général dans
la pratique. Une entrée donnée par plusieurs canaux A = (A1 , A2 , ..., Ak ), associée à des motifs
M1 , M2 , ..., Ml (qui sont donc chacun des 3−tenseurs de taille (3, 3, k)) produit une sortie de
taille n × p × l, correspondant à (A ⋆ M1 , A ⋆ M2 , ..., A ⋆ Ml ). Si l’entrée A est de taille (n, p, k)
alors la sortie est de taille (n, p, l).
sur cette figure chaque motif Mi est représenté par carré 3 × 3, alors qu’en fait chacun devrait
être une boîte en 3 dimensions de taille 3 × 3 × k.
Nous résumons les résultats obtenu par les deux réseau(CNN et FCNN) dans le tableau
suivant :
d’après le tableau ci-dessus, l’exactitude obtenue par le réseau CNN est 99.07% ce qui
très bon, Cependant le résultat obtenue par le réseau FCNN est 94.86%. Le nombre de
paramètre du réseau CNN est plus petit que ceux du réseau FCNNN. On conclut que en
traitement d’images, les réseaux CNNs sont beaucoup mieux que les FCNN, car les CNNs
permettent d’améliorer les performances et de réduire la complexité spatiale et temporelle.
1.7 Conclusion
Dans ce chapitre, on a étudié quelques algorithme d’apprentissage profond ainsi que
leurs avantages, puis on a abordé les réseaux de neurones convolutifs et leurs avantages par
rapport aux réseaux entièrement connectés en traitement d’images. Les réseaux profonds
peuvent contenir des millions et des milliards de paramètres, ce qui peut engendrer le pro-
blème de sur-apprentissage(Overfitting). Dans le chapitre suivant, on va étudier quelques
méthodes de régularisation qui peuvent limiter le problème de sur-apprentissage.
2.1 Introduction
L’un des problèmes les plus courants auxquels sont confrontés les professionnels de la
science des données est d’éviter le sur-apprentissage, c’est la situation où notre modèle
fonctionnait exceptionnellement bien sur les données d’apprentissage mais n’était pas en
mesure de prédire les données de test. Durant ce chapitre, nous comprendrons le concept
de sur-apprentissage et comment la régularisation aide à surmonter le même problème.
Nous examinerons ensuite quelques techniques de régularisation différentes incluant des
méthodes stochastiques et des méthodes déterministes.
Problèmes :
1. Le sous-apprentissage(Underfitting). Révèle une conception correcte de l’ar-
chitecture du réseau mais une mauvaise mise en œuvre. On obtient alors des poids
qui ne répondent pas correctement au problème. Cela peut être dû aux raisons
suivantes :
20
2.2. MÉTHODES STOCHASTIQUES
4. la fonction erreur entropie croisée : E(y, o) = − ki=1 yi log(oi ) prend une probabi-
P
lités o et les étiquettes y comme entrée.
on pose
θ = {Wf , W, Ws }
2.2.2 Dropout
Le Dropout [23] est une technique pour améliorer l’apprentissage d’un réseau com-
plètement connecter(FCANN) et en particulier pour prévenir le sur-apprentissage. L’idée
est de désactiver certains neurones d’une couche lors des étapes de l’apprentissage. Ces
neurones sont choisis au hasard et sont désactivés temporairement pour une itération (par
exemple on peut choisir à chaque itération de désactiver un neurone avec une probabi-
lité 12 ). Cela signifie que l’on retire toute arête entrante et toute arête sortante de ces
neurones, ce qui revient à mettre les poids à zéro tant pour l’évaluation que pour la ré-
tropropagation. Lors de l’itération suivante on choisit de nouveau au hasard les neurones
à désactiver.
Appliquer un Dropout à une couche de neurones revient à désactiver chaque neurone sui-
vant une loi de Bernoulli de paramètre p(B(p)) où 0 ≤ p ≤ 1 est un réel fixé. C’est à dire
que chaque élément de la sortie d’une couche est conservé avec une probabilité p, sinon
mis à 0 avec une probabilité q = (1 − p).
Lorsque Dropout est appliqué aux sorties d’une couche entièrement connectée, nous pou-
vons écrire :
r = m ⊙ g(W x) (2.2)
où ⊙ désigne le produit élément par élément et m est un vecteur de masque binaire de
taille d avec chaque élément j tiré indépendamment de mj ⇝ B(p).
Remarque 2.2.1
2.2.3 DropConnect
On va reprendre le même principe que précédemment. Mais au lieu de désactiver
des neurones, on va simplement désactiver les connexions entrantes (toujours de façon
aléatoire) sur une couche depuis la précédente. D’un point de vue du réseau , cela revient
à instancier les valeurs des poids des connexions à 0.
DropConnect [61] est la généralisation de Dropout dans laquelle chaque connexion, plutôt
que chaque unité de sortie, peut être désactivé avec une probabilité de p. DropConnect
est similaire à Dropout car il introduit une parcimonie dynamique dans le modèle, mais
diffère en ce que la parcimonie est sur les poids W , plutôt que sur les vecteurs de sortie
d’une couche. En d’autres termes, la couche entièrement connectée avec DropConnect
devient une couche peu connectée dans laquelle les connexions sont choisies au hasard
lors de la phase d’apprentissage.
Pour une couche DropConnect, la sortie est donnée par :
r = g((M ⊙ W )x) (2.4)
où M est une matrice binaire codant les informations de connexion et Mij ⇝ B(p).
Chaque élément du masque M est dessiné indépendamment pour chaque exemple lors
de l’apprentissage, instanciant essentiellement une connectivité différente pour chaque
exemple vu. De plus, les biais sont également masqués pendant l’apprentissage.
étant donné les paramètres θ = {Wf ; W ; Ws } et un masque tiré au hasard M . Le modèle
global h(x, θ, M ) fait correspondre les données d’entrée x à une sortie o à travers une
séquence d’opérations. La valeur correcte de o est obtenue en additionnant sur tous les
masques possibles M :
o = EM [h(x, θ, M )] (2.5)
X
= p(M )h(x, θ, M ) (2.6)
M
la sortie est un mélange de 2|M | réseau différent, chaque sortie avec une probabilité p(M )
si p = 21 ,alors les probabilités sont égaux pour tout les M , et :
1 X
o= h(x, θ, M ) (2.7)
|M | M
1 X
= s(g((M ⊙ W )v), Ws ) (2.8)
|M | M
2.2.4 Apprentissage
L’apprentissage du modèle décrit ci-dessus commence par la sélection d’un exemple x
dans l’ensemble d’apprentissage X et l’extraction des caractéristiques pour cet exemple,
v. Ces caractéristiques sont les entrées de la couche de DropConnect où une matrice de
masque M est d’abord tirée d’une distribution de Bernoulli de paramètre p pour masquer
les éléments de la matrice de pondération et les biais dans la couche DropConnect. Un
élément clé pour réussie l’apprentissage avec DropConnect est la sélection d’un masque
différent pour chaque exemple d’apprentissage.
Étant donné une base d’apprentissage S = {x1 , ..., xl } avec les étiquette {y1 , ..., yl },
nous définissons le réseau DropConnect comme un modèle mixte :
X
o = EM [h(x, θ, M )] = p(M )h(x, θ, M ) (2.9)
M
Pour un échantillon S = {x1 , ..., xl } engendré par une distribution D sur un en-
semble X et une classe de fonctions à valeurs réelles F dans le domaine X, la
complexité empirique de Rademacher de F est la variable aléatoire :
ℓ
2X
hatRℓ (F) = Eσ [supf ∈F | σi f (xi )||x1 , ..., xl ] (2.11)
ℓ i=1
Remarque 2.2.2
Le résultat important de ce théorème est que la complexité est une fonction linéaire.
Formellement, l’opération qui implémente la normalisation par lots est une transformation
avec i, k ∈ {1, 2, ..., m} × {1, 2..., d} appelée transformation de normalisation par lots. La
sortie y k = BNγ,β (xk ) de la transformée est ensuite transmis à d’autres couches de réseau,
(k)
tandis que la sortie normalisée x̂i reste interne au calque courant.
Remarque 2.2.3
1. Les paramètres (γ (k) , β (k) ) sont optimisés comme tous les autres paramètres du
réseaux par descente de gradient.
2. BNγ,β (x) dépend à la fois de l’exemple d’apprentissage et des autres exemples
du mini-lot.
∂E ∂E ∂y i ∂E
i
= i
· i = i ·γ
∂ x̂ ∂y ∂ x̂ ∂y
m
∂E X ∂E 1 2 3
2
= i
· (xi − µB ) · (− (σB + ϵ)− 2 )
∂σB i=1
∂ x̂ 2
m
∂E X ∂E −1
= · p
∂µB i=1
∂ x̂i 2
σB +ϵ
∂E ∂E 1 ∂E 2(xi − µB ) ∂E 1
i
= i
·p 2 + 2 · + ·
∂x ∂ x̂ σB + ϵ ∂σB m ∂µB m
m
∂E X ∂E i
= · x̂
∂γ i=1
∂y i
m
∂E X ∂E
=
∂β i=1
∂y i
Ainsi, la transformée BN est une transformation différentiable qui introduit des activa-
tions normalisées dans le réseau. Cela garantit que pendant l’apprentissage du modèle, les
couches peuvent continuer à apprendre sur les distributions d’entrée qui présentent moins
de décalage de covariable interne, accélérant ainsi l’apprentissage. De plus, la transformée
affine apprise appliquée à ces activations normalisées permet à la transformée BN de re-
présenter la transformation d’identité et préserve la capacité du réseau.
z = g(W u + b) (2.17)
où W et b sont des paramètres appris du modèle, et g(·) est la fonction d’activation non
linéaire(sigmoïde ou ReLU). Cette formulation couvre à la fois les couches entièrement
2.3.2 Régularisation ℓ1
Dans le cas de la régularisation ℓ1 [56] également connue sous le nom de régression
LASSO, nous utilisons simplement un autre terme de régularisation Ω. Ce terme est la
norme ℓ1 c’est à dire la somme des valeurs absolues des paramètres de poids dans une
matrice de poids :
XX
Ω(w) = ||w||1 = |wij | (2.23)
i j
2.4 Conclusion
Dans ce chapitre on a abordé essentiellement le problème de sur-apprentissage, et on
a décrit quelques méthodes qui permettent de limiter ce problème. On a vu que l’insuf-
fisance de données aboutit au problème de sous-apprentissage. En général ? lorsque on a
3.1 Introduction
L’apprentissage par transfert vise à améliorer les performances des apprenants cibles
dans des domaines cibles en transférant les connaissances contenues dans des domaines
sources différents mais liés. De cette manière, la dépendance vis-à-vis d’un grand nombre
de données du domaine cible peut être réduite pour la construction des apprenants cibles.
En raison des vastes perspectives d’application, l’apprentissage par transfert est devenu un
domaine populaire et prometteur de l’apprentissage automatique. Durant ce chapitre nous
allons étudier en détaille l’apprentissage par transfert, ainsi que les différents catégories
de ce type d’apprentissage.
3.2 Motivation
L’étude de l’apprentissage par transfert est motivée par le fait que les gens peuvent
appliquer intelligemment les connaissances acquises précédemment pour résoudre de nou-
veaux problèmes plus rapidement ou avec de meilleures solutions.
De nombreuses méthodes d’apprentissage automatique ne fonctionnent bien que sous une
hypothèse commune : les données d’apprentissage et de test sont tirées de la même espace
caractéristique X et la même distribution P (X). Lorsque la distribution change, la plu-
part des modèles statistiques doivent être reconstruits à partir de zéro à l’aide de données
d’apprentissage nouvellement collectées. Dans de nombreuses applications du monde réel,
il est coûteux ou impossible de se souvenir des données d’apprentissage nécessaires et de
reconstruire les modèles. Ce serait bien de réduire le besoin et l’effort de se souvenir des
données d’apprentissage. Dans de tels cas, le transfert de connaissances ou l’apprentissage
par transfert entre les domaines de tâches serait souhaitable.
30
3.4. NOTATIONS ET DÉFINITIONS
Un domaine D est la donnée d’un couple {X , P (X)} où X est un espace de carac-
téristique et P (X) est une distribution de probabilité marginale avec
X = {x1 , x2 , ..., xn } ∈ X est un échantillon d’apprentissage.
Étant donné un domaine D = {X , P (X)}, une tâche T est la donnée d’un couple
T = {Y, f (·)} où Y est l’espace d’étiquette et f (·) est la fonction de prédiction,
avec :
f : X → Y
X 7→ f (X)
Remarque 3.4.1
Dans la plus part des cas 0 ≤ nt << ns .
f : Xt → Yt
Xt 7→ ft (Xt )
tué. De même, nous sommes intéressés à savoir dans quelles situations, les connaissances
ne doivent pas être transférées. Dans certaines situations, lorsque le domaine source et
le domaine cible ne sont pas liés l’un à l’autre, le transfert par force brute peut échouer.
Dans le pire des cas, cela peut même nuire aux performances d’apprentissage dans le
domaine cible, ce qu’on appelle le "transfert négatif". La plupart des travaux actuels sur
l’apprentissage par transfert se concentrent sur « Que veut-on transférer » et « Comment
va-t-on réaliser le transfert », en supposant implicitement que les domaines source et cible
sont liés l’un à l’autre. Cependant, comment éviter le transfert négatif est une question
ouverte importante qui attire de plus en plus l’attention à l’avenir.
En 2010 SJ PAN et al.[41] ont classer l’apprentissage par transfert en trois classes qui
sont : l’apprentissage par transfert inductif, l’apprentissage par transfert transductif et
l’apprentissage par transfert non supervisé.
On se basant sur la définition de l’apprentissage par transfert, nous résumons la rela-
tion entre l’apprentissage automatique traditionnel et divers cadres d’apprentissage par
transfert dans le tableau 3.1 en fonction de situations différentes entre les domaines et les
tâches source et cible.
type de TL domaines connexes Domaine source étiquette Domaine cible étiquette Taches
TL inductif apprentissage multi-tache disponible non disponible Régression,
classification
apprentissage autodidacte non disponible disponible Régression,
classification
TL transdnductif adaptation de domaine, disponible non disponible Régression,
classification
TL non supervisé non disponible non disponible clustring
Table 3.1 – Relation entre l’apprentissage traditionnel et divers cadres d’apprentissage par
transfert
1. Dans le cadre de l’apprentissage par transfert inductif, la tâche cible est différent de
la tâche source, que les domaines source et cible soient identiques ou non. Dans ce
cas, certaines données étiquetées dans le domaine cible sont nécessaires pour induire
un modèle prédictif objectif à utiliser dans le domaine cible ft (·). De plus, selon dif-
férentes situations de données étiquetées et non étiquetées dans le domaine source,
nous pouvons encore catégoriser le cadre d’apprentissage par transfert inductif en
deux cas :
(a) De nombreuses données étiquetées dans le domaine source sont disponibles.
Dans ce cas, le cadre d’apprentissage par transfert inductif est similaire au cadre
d’apprentissage multi-tâche. Cependant, le cadre d’apprentissage par transfert
inductif vise uniquement à atteindre des performances élevées dans la tâche cible
en transférant les connaissances de la tâche source, tandis que l’apprentissage
multi-tâche [1] tente d’apprendre simultanément la tâche cible et la tâche source.
(b) Aucune donnée étiquetée dans le domaine source n’est disponible. Dans ce cas,
le cadre d’apprentissage par transfert inductif est similaire à l’autodidacte(slef-
taught learning) [44]. Dans le cadre de l’apprentissage autodidacte, les espaces
d’étiquettes entre les domaines source et cible peuvent être différents, ce qui
implique que les informations secondaires du domaine source ne peuvent pas
être utilisées directement. Ainsi, il est similaire au cadre d’apprentissage par
transfert inductif où les données étiquetées dans le domaine source ne sont pas
disponibles.
certaines relations entre les données dans les domaines source et cible sont similaires.
Ainsi, la connaissance à transférer est la relation entre les données.
Le tableau 3.2 montre les cas où les différentes approches sont utilisées pour chaque
contexte d’apprentissage par transfert.
i. Dans la première étape, les vecteurs de base de niveau supérieur b = {b1 , b2 , ..., bs }
sont appris sur les données du domaine source en résolvant le problème d’op-
timisation :
2
X
min xsi − ajsi bj + β||asi ||1 (3.2)
a,b
j 2
s.t. ||bj ||2 ≤ 1, ∀j ∈ {1, ..., s} (3.3)
où ajsi est la nouvelle représentation de la base bj pour l’entrée xsi , et β est
le paramètre de régularisation.
ii. après l’apprentissage des vecteurs de base b, dans la seconde étape, on résout
le problème d’optimisation :
2
X
a∗ti = arg min xti − ajti bj + β||ati ||1 (3.4)
ati
j 2
Enfin, des algorithmes discriminatifs peuvent être appliqués a a∗ti avec les
étiquettes correspondantes pour former des modèles de classification ou de
régression à utiliser dans le domaine cible. Un inconvénient de cette méthode
est que les vecteurs de base dits de niveau supérieur appris sur le domaine
source dans le problème d’optimisation peuvent ne pas convenir à une utili-
sation dans le domaine cible
3. Transfert de connaissances des paramètres.
La plupart des approches de transfert de paramètres pour le transfert inductif
suppose que les modèles individuels pour les tâches connexes doivent partager cer-
tains paramètres ou distributions antérieures d’hyperparamètres. La plupart des
approches décrites dans cette section, y compris un cadre de régularisation et un
cadre bayésien hiérarchique, sont conçues pour fonctionner dans le cadre d’un ap-
prentissage multitâche. Cependant, ils peuvent être facilement modifiés pour l’ap-
prentissage par transfert. Ainsi, dans l’apprentissage multitâche, les poids des fonc-
tions de perte pour les données source et cible sont les mêmes. En revanche, dans
l’apprentissage par transfert, les poids des fonctions de perte pour différents do-
maines peuvent être différents. Intuitivement, nous pouvons attribuer un poids
plus important à la fonction de perte du domaine cible pour nous assurer que nous
pouvons obtenir de meilleures performances dans le domaine cible.
4. Transférer les connaissances relationnelles.
Différente des trois autres contextes, l’approche de transfert de connaissances re-
lationnelles traite des problèmes d’apprentissage par transfert dans des domaines
relationnels, où les données ne sont pas i.i.d. et peuvent être représentés par de
multiples relations Cette approche ne suppose pas que les données tirées de chaque
dans le cadre du transfert transductive, on veut faire l’apprentissage d’un modèle optimale
pour le domaine cible en minimisant le risque :
X
θ∗ = arg min P (Dt ) [l(x, y, θ)] (3.7)
θ∈Θ
(x,y)∈Dt
puisque aucune donnée étiquette n’est observé dans le domaine cible, nous devons plutôt
apprendre un modèle à partir des données du domaine source. Si P (Ds ) = P (Dt ) alors
nous pouvons simplement apprendre le modèle en résolvant le problème d’optimisation
suivant pour une utilisation dans le domaine cible
X
θ∗ = arg min P (Ds ) [l(x, y, θ)] (3.8)
θ∈Θ
(x,y)∈Ds
L’apprentissage par transfert profond basé sur le réseau fait référence à la réutilisation
du réseau partiel qui a été pré-formé dans le domaine source, y compris sa structure de
réseau et ses paramètres de connexion, le transfère pour faire partie du réseau neuronal
profond utilisé dans le domaine cible.
Figure 3.3 – Schéma d’apprentissage par transfert basé sur les réseaux
Démonstration.
n
!
[
P max Xi > t = P [Xi > t]
i=1,...,n
i=1
n
X
≤ P [Xi > t]
i=1
t2
= n exp − 2
2σ
Exemple :
Soit f : x ∈ R 7→ |x|. Calculons les sous-différentielle de f en tout point x de R.
1 si x > 0
∂|x| = −1 si x < 0
[−1, 1] si x = 0
notation matricielle :
f ∗ := Xβ ∗ et ϵ := y − f ∗
avec f ∗ = (f ∗ (Xi )) ∈ Rn , X = (ψj (Xi )) ∈ Rn×p , β ∗ = (βj∗ ) ∈ Rp , y = (Yi ) ∈ Rn .
on pose :
S := supp(β ∗j ) = {j ∈ {1, 2, ..., p} : βj∗ ̸= 0} et s = |S|
dans une grande dimension, l’approche raisonnable pour estimer β ∗ consiste à supposer
la parcimonieuse de β ∗ c’est à dire s << p, et de résoudre le problème LASSO :
( n
)
1 X
min (Yi − fβ (Xi ))2 + λ||β||1
β∈Rp 2n i=1
On pose
n
1 X
L(β, β̃) := 2
(Yi − fβ (Xi )) + λ α||β||1 + (1 − α)||β − β̃||1 (3.15)
2n i=1
Remarque 3.8.1
Les contours sont des polygones pointés en βj = 0 et βj = β̃j de sorte que cette
estimation peut se réduire à zéro et à l’estimation initiale. Le paramètre de régularisation
α ; contrôle les forces de retrait à zéro et l’estimation initiale.
pour b ≥ 0.
0 pour −γ2 ≤ z ≤ γ1
b pour −γ1 + b ≤ z ≤ −γ2 + b
T (z, γ1 , γ2 , b) =
z − γ2 sgn(b)pour −γ2 + b ≤ z ≤ −γ2
z − γ sgn(z)pour sinon
1
pour b ≤ 0.
Démonstration. La fonction L(β, β̃) est convexe comme somme de fonctions convexes, par
contre elle n’est pas différentiable car
x 7→ |x|
on pose !2
n n
1 X X
g(βj ) = Yi − βk ψk (Xi ) − βj ψj (Xi )
2n i=1 k=1,k̸=j
on a alors : Pn
1 t ψj2 (Xi )
∂βj g(βj ) = − Xj (y − X−j β−j ) + βj i=1
n n
avec Pn 2
i=1 ψj (Xi )
=1 pour chaque j ∈ {1, 2, ..., p}
n
d’autre part on a :
λα si βj > 0
∂βj (λα|βj |) = [−λα, λα] si βj = 0
−λα si β < 0
j
et
λ(1 − α) si βj − β̃j > 0
∂βj λ(1 − α)|βj − β̃j | = [−λ(1 − α), λ(1 + α)] si βj − β̃j = 0
−λ(1 − α) si βj − β̃j < 0
on pose :
1 t
z= X (y − X−j β−j ), γ1 = λ, γ2 = λ(2α − 1), b = βj
n j
ainsi il y a 9 cas à distingué :
cas 1 : βj = 0 =⇒ ∂βj (λα|βj |) = [−λα, λα]
1. sous cas 1 :βj > β˜j =⇒ ∂βj (λ(1 − α)|βj − β˜j |) = λ(1 − α)
2. sous cas 2 :β˜j > βj =⇒ ∂βj (λ(1 − α)|βj − β˜j |) = −λ(1 − α)
3. sous cas 3 :β˜j = βj =⇒ ∂(λ(1 − α)|βj − β˜j |) = [−λ(1 − α), λ(1 − α)]
cas 3 : βj < 0 =⇒ ∂βj (λα|βj |) = −λα
1. sous cas 1 :βj > β˜j =⇒ ∂βj (λ(1 − α)|βj − β˜j |) = λ(1 − α)
2. sous cas 2 :β˜j > βj =⇒ ∂βj (λ(1 − α)|βj − β˜j |) = −λ(1 − α)
3. sous cas 3 :β˜j = βj =⇒ ∂(λ(1 − α)|βj − β˜j |) = [−λ(1 − α), λ(1 − α)]
En discutant toutes les cas possible on trouve que :
v t n1 X t Xv
ϕ = ϕ(B) := inf >0
v∈B ||v||22
Supposons que l’hypothèse 1 est vérifiée , et que la condition GRE est vérifiée pour
B = B(α, c, ∆), avec :
Démonstration.
On suppose l’hypothèse 1 est vérifiée et que la condition GRE [Link] soit aussi
vérifiée pour le même ensemble B. Alors, avec une probabilité au moins 1 − νn,c , on
a:
||β̂ − β ∗ ||22 = O((α + c)2 λ2n s + (1 − α)λn ||∆||1 )
lorsque λn → 0.
puisque s
2ϕ(1 − α)||∆||1
1+ >1
(α + c)2 λn s
on a
" s #2
2 2
(α + c) λ s 2ϕ(1 − α)||∆|| 1
||β̂ − β ∗ ||22 ≤ 2
n
2 1+ 2
ϕ (α + c) λn s
4(α + c)2 λ2n s 8(1 − α)ϕ||∆||1
= +
ϕ2 ϕ
2 2
= O((α + c) λn s + (1 − α)λn ||∆||1 ).
On suppose les meme condition que le théorème [Link], on suppose de plus que la
condition dite beta-min
" s #2
2 2
(α + c) λ s 2ϕ(1 − α)||∆|| 1
|βs∗ | > n
1+ 1+
ϕ2 (α + c)2 λn s
1 t
X r(β̃) ≤ λ ∀j s.t. β̃j = 0
n j
et
1
−λ (1 − α) − αsgn(β̃j ) ≤ Xjt r(β̃) ≤ λ (1 − α) + αsgn(β̃) ∀j β̃j ̸= 0
n
de plus, il existe une solution nulle β̂ = 0 si et seulement si :
1 t
X r(0) ≤ λ ∀j s.t. β̃j = 0
n j
et
1
−λ (1 − α) − αsgn(β̃j ) ≤ Xjt r(0) ≤ λ α − (1 − α)sgn(β̃) ∀j β̃j ̸= 0
n
On suppose que l’hypothèse 1 est vérifiée et que la condition GRE est vérifiée pour
ϕ′ = ϕ′ (B ′ ) et B ′ = B ′ (1, c′ , 0) on X ′ , y, et β̃ ∗ . on suppose les même hypothèses que
le théorème [Link]. Alors avec une probabilité au moins 1 − νn,c − νm,c′
s !2
(α + c)2 λ2n s 4(1 − α)(1 + c′ )ϕλm s′ 2(1 − α)ϕ||∆∗ ||1
||β̂ − β ∗ ||22 ≤ 1+ 1+ +
ϕ2 (α + c)2 ϕ′ λn s (α + c)2 λn s
2(1 + c′ )λm s̃
||∆||1 = ||β̃ − β ∗ ||1 ≤ ||β̃ − β̃ ∗ ||1 + ||β̃ ∗ − β ∗ ||1 ≤ + ||∆∗ ||1
ϕ′
4.1 Introduction
Les CNNs sont utilisées pour des problèmes de classification majeurs dans le cadre
desquels les caractéristiques sont automatiquement acquises du niveau inférieur au niveau
supérieur sur la croissance successive des couches du réseau. L’apprentissage par trans-
fert est le processus qui consiste à transférer les connaissances apprises en résolvant un
problème pour en résoudre un autre qui est connexe. L’apprentissage par transfert est
bénéfique lorsqu’il n’y a pas suffisamment de données relatives à l’apprentissage et qu’il
réduit également la complexité des calculs. Il fournit une bonne précision de classification
sur une base de données réduite. Dans notre application, l’architecture VGG16 qui est
pré-formée sur une énorme base de données ImageNet avec plus d’un million d’images
appartenant à 1000 catégories différentes est utilisée pour classifier les images d’entrée.
Ensuite, la classification se fait au moyen de la couche entièrement connectée et de l’ac-
tivation Softmax.
Dans le présent chapitre, nous illustrerons l’importance de l’apprentissage par transfert
dans les réseaux neuronaux convolutifs. Nous emploierons VGG16 pour la classification
des images.
Notre application se décline en deux volets :
1. La première partie est consacrée à la comparaison entre le VGG16 brute, c’est-à-
dire sans transfert, puis le VGG16 préformé c’est-à-dire en utilisant le transfert des
connaissances, à l’aide des bases de données "CIFAR10", " MNIST " et la base
"Flowers recognition".
2. Afin de mieux comprendre l’importance du transfert des connaissances, nous nous
penchons sur la question des lacunes dans les données, Il s’agit du cas où il n’y a
pas suffisamment de données pour construire un modèle performant à zéros. Nous
appliquerons l’apprentissage de transfert pour dépister la "pneumonie", c’est-à-dire
classer les personnes qui ont une pneumonie et celles qui n’en ont pas au moyen de
la base de données Chest X_Ray. Celle-ci contient 5863 au total, ce qui ne suffit
pas à construire un modèle à zéro.
51
4.3. MATRICE DE CONFUSION
automatique et de vision par ordinateur. C’est l’un des ensembles de données les plus
largement utilisés pour la recherche en apprentissage automatique. L’ensemble de données
CIFAR-10 contient 60 000 images couleur 32 × 32 × 3 dans 10 classes différentes répartie
de la manière suivante.
1. 50 000 données d’apprentissage.
2. 10 000 données de tests
Les 10 classes différentes représentent les avions, les voitures, les oiseaux, les chats, les
cerfs, les chiens, les grenouilles, les chevaux, les bateaux et les camions. Il y a 6000 images
de chaque classe.
chest X_Ray
Pour les problèmes de classification biomédicale de l’image, il est difficile d’obtenir une
quantité aussi importante de données étiquetées, car il faut des médecins experts pour
classer chaque image, ce qui est une tâche coûteuse et chronophage. L’apprentissage par
transfert est un moyen détourné pour surmonter cet [Link] cette technique, pour
résoudre un problème concernant un ensemble de données restreint ; un modèle fondé sur
un ensemble de données volumineux est réutilisé et les poids du réseau déterminés dans ce
modèle sont appliqués. Les Modèles CNNs formés sur un grand ensemble de données tel
que ImageNet , qui inclut plus de 14 millions d’images, sont fréquemment utilisées pour
la classification biomédicale des images.
Le jeu de données est organisé en 3 dossiers (train, test, val) et contient des sous-dossiers
pour chaque catégorie d’image (Pneumonia/Normal). Il y a 5 863 images radiographiques
(JPEG) et 2 catégories (Pneumonie/Normal).
Vrai positif (TP) : mesure dans quelle mesure le modèle prédit correctement la classe
positive.
Faux positif (FP) : Des faux positifs se produisent lorsque le modèle prédit qu’une ins-
tance appartient à une classe qu’elle n’appartient pas en réalité.
Vrai négatif (TN) : Les vrais négatifs sont les résultats que le modèle prédit correctement
comme étant négatifs.
Faux négatif (FN) : Un faux négatif se produit lorsqu’un modèle prédit qu’une instance
est négative alors qu’elle est en réalité positive.
Les faux négatifs peuvent s’avérer très coûteux, particulièrement en médecine. Par
exemple, si un test de dépistage du cancer prévoit qu’un patient n’a pas le cancer, il
pourrait conduire à une progression de la maladie sans traitement. Les faux négatifs sont
souvent plus graves que les faux positifs, de sorte qu’il est important d’en tenir compte
dans l’évaluation du rendement d’un modèle de classification.
Numéro individuel 1 2 3 4 5 6 7 8 9 10 11 12
Classement réel 1 1 1 1 1 1 1 1 0 0 0 0
Supposons que nous ayons un classificateur qui distingue d’une façon ou d’une autre
les personnes atteintes ou non du cancer, nous pouvons prendre les 12 personnes et les
soumettre à l’évaluation. Le classificateur procède alors à 9 prédictions précises et au taux
3 : Selon les prévisions, deux personnes atteintes de cancer seraient exemptes de cancer
(échantillons 1 et 2) et une personne sans cancer serait atteinte de cancer (échantillon 9).
Numéro individuel 1 2 3 4 5 6 7 8 9 10 11 12
Classement réel 1 1 1 1 1 1 1 1 0 0 0 0
Classement prévu 0 0 1 1 1 1 1 1 1 0 0 0
Si l’on compare l’ensemble de classification actuel à l’ensemble de classification prévu, il
existe quatre résultats différents qui pourraient donner lieu à une colonne particulière.
Tout d’abord, si la classification effective est positive et que la classification prévue est
positive (1.1), c’est ce qu’on appelle un vrai résultat positif puisque l’échantillon positif a
été correctement identifié par le classificateur. Deuxièmement, si la classification effective
est positive et la classification estimée négative (1,0), il s’agit d’un faux négatif parce que
l’échantillon positif est identifié par erreur par le classificateur comme négatif. Troisième-
ment, si la classification effective est négative et que la classification anticipée est positive
(0,1), il s’agit d’un faux positif parce que l’échantillon négatif est identifié à tort par le
classificateur comme positif. Quatrièmement, lorsque la classification réelle est négative
et que la classification prévue est négative (0,0), il s’agit d’un vrai résultat négatif, car
l’échantillon négatif est correctement identifié par le classificateur comme négatif.
Numéro individuel 1 2 3 4 5 6 7 8 9 10 11 12
Classement réel 1 1 1 1 1 1 1 1 0 0 0 0
Classement prévu 0 0 1 1 1 1 1 1 1 0 0 0
Résultat FN FN TP TP TP TP TP TP FP TN TN TN
TP : La valeur réelle et la valeur prédite doivent être identiques. Donc concernant la classe
Setosa, la valeur de la cellule 1 est la valeur TP.
FN : la somme des valeurs des lignes correspondantes à l’exception de la valeur TP,
FN = (cellule 2+cellule3) = (0 + 0) = 0
FP : La somme des valeurs de la colonne correspondante à l’exception de la valeur TP.
FP = (cellule 4+cellule 7) = (0 + 0) = 0
TN : la somme des valeurs de toutes les colonnes et lignes, à l’exception des valeurs de
cette classe pour laquelle nous calculons les valeurs.
TN = (cellule 5 + cellule 6 + cellule 8 + cellule 9)= 17 + 1 + 0 + 11 = 29
De même, pour la classe Versicolor , virginica.
Pourquoi la matrice de confusion ?
La matrice de confusion nous permet d’évaluer le rappel, la précision, l’exactitude et la
courbe AUC-ROC sont les mesures de mesure de la performance d’un modèle de deep
learning, et cela grâce aux paramètres que nous allons définir ci-après.
QUESTION :Quelle mesure devrait être employée pour évaluer les perfor-
mances d’un modèle d’apprentissage profond ?
4.4 Métriques
4.4.1 Exactitude
L’exactitude (accuracy) du modèle est un indicateur de rendement du modèle d’ap-
prentissage automatique, ce qui correspond au rapport entre les vrais positifs et les vrais
négatifs et toutes les observations positives et négatives. Autrement dit, la précision in-
dique la fréquence à laquelle il faut s’attendre à ce que notre modèle de machine learning
prédit avec précision un résultat sur le nombre total de fois où il a fait des prévisions.
(T P + T N )
accuracy =
(T P + F N + T N + F P )
pour les exemples donnés ci-dessus :
Lorsque l’ensemble de données n’est pas équilibré, une autre mesure de l’AUC (la
région sous la courbe ROC) est plus robuste que la mesure de précision. L’AUC tient
compte de la distribution des classes dans un ensemble de données asymétriques.
4.4.2 Précision
Le score de précision du modèle mesure la proportion d’étiquettes positives qui sont
en fait correctes. Autrement dit, pour tous les cas déclarés positifs, quel pourcentage était
exact ? La précision est aussi reconnue comme valeur prédictive positive. La précision est
principalement utilisée quand on a besoin de prédire la classe positive et que le coût des
faux positifs est plus élevé que celui des faux négatifs comme dans le diagnostic médical.
Le score de précision est une mesure utile de la réussite prédictive quand les classes sont
fortement déséquilibrées. D’un point de vue mathématique, il représente la relation entre
le vrai positif et la somme du vrai positif et du faux positif.
TP
precision =
(F P + T P )
pour les exemples donnés ci-dessus :
4.4.3 Rappel
La score de rappel (Racall) du modèle représente la capacité du modèle à prédire avec
précision les résultats positifs parmi les résultats positifs réels. Autrement dit, « dans tous
les cas vraiment positifs, quel pourcentage a été classifié correctement ?». Cela diffère de
la précision qui mesure le nombre de prédictions faites par les modèles qui sont réellement
positives sur toutes les prédictions positives faites. En d’autres mots, il mesure la capacité
de notre modèle d’apprentissage automatique d’identifier tous les vrais positifs parmi tous
les positifs présents dans un ensemble de données. Plus le taux de rappel est élevé, plus
le modèle de machine learning est efficace pour repérer les exemples positifs et négatifs.
Le rappel est aussi désigné sous le nom de sensibilité ou de taux positifs réels. Un taux de
mémorisation élevé indique que la tendance est bonne pour repérer les exemples positifs.
Le rappel est souvent utilisé conjointement avec d’autres mesures du rendement,
comme l’exactitude et la précision, afin de brosser un tableau complet du rendement
du modèle.
TP
rappel =
FN + TP
pour les exemples donnés ci-dessus :
4.4.4 F1-score
Le score F1 du modèle représente la note du modèle en fonction de la note de précision
et de mémorisation. Le score F1 est un moyen harmonique pondéré de précision et de
mémoire de sorte que le meilleur score est 1 et le pire est 0. En général, le score F1 est
inférieur aux mesures de précision car celles-ci incluent la précision et le rappel dans leur
calcul. En règle générale, il convient d’utiliser la moyenne pondérée F1 pour comparer
les modèles de classification, et non la précision globale. Le F1-score est une métrique de
performance du modèle d’apprentissage automatique qui donne un poids égal à la fois à
la précision et au rappel pour mesurer ses performances en termes de précision, il s’agit
donc d’une solution de rechange aux mesures de précision (nous n’avons pas besoin de
connaître le nombre total d’observations). Il est souvent utilisé en tant que valeur unique
qui fournit des informations de haut niveau sur la qualité des résultats du modèle. Il
s’agit d’une mesure utile du modèle dans les scénarios où des tentatives sont faites pour
optimiser la précision ou la note de rappel, ce qui nuit au rendement du modèle.
prcision × rappel
F 1 = 2.
prcision + rappel
TP
= 1
T P + 2 (F P + F N )
pour les exemples donnés ci-dessus :
Remarque 4.4.2
les différentes combinaisons de rappel et de précision ont les significations suivantes :
• haut rappel + haute précision : la classe est parfaitement gérée par le modèle.
• faible rappel + haute précision : le modèle ne peut pas bien détecter la classe
mais est très fiable lorsqu’il le fait.
• rappel élevé + faible précision : la classe est bien détectée mais le modèle
inclut également des points d’autres classes.
• faible rappel + faible précision : la classe est mal gérée par le modèle.
4.6.1 CIFAR10
Prédiction sur un échantillon de 10 000 Données, constitue par 1 000 pour chaque
classe
paramètres entrainables paramètres non entrainables temps d’exécution
Sans Transfert 15 111 242 0 1h 45min
Avec Transfert 396 554 14 714 688 40 min
total de paramètres 15 111 242 15 111 242
4.6.2 MNIST
Prédiction sur un échantillon de 10 000 Données.
Trois expériences ont été réalisées pour la comparaison entre l’apprentissage tradition-
nel et l’apprentissage par transfert, la première sur la base du CIFAR10, la deuxième sur
le MNIST et la troisième sur la reconnaissance des fleurs. Dans les trois cas on voit que
l’apprentissage par transfert diminué un peut l’exactitude, par exemple la première expé-
rimentation sans transfert a obtenu une exactitude de 92% tab.4.6.1 sur les données de
test cependant lorsqu’on a utilisé le transfert cette exactitude diminue à 81%, même chose
pour la base MNIST, sans transfert a obtenu une exactitude de 100% tab.4.6.2 et avec
transfert cette exactitude est diminuée à 95%. Les paramètres obtenus avec le transfert
sont légèrement moins élevés que ceux sans transfert, mais deux choses très importantes
ont été gagnées avec le transfert :
4.6.5 Résultats
Nous avons évalué notre modèle en utilisant 624 images radiographiques frontales
du thorax. L’ensemble de tests contient 234 cas normaux et 390 cas de pneumonie. On
trouvera au tableau 4.6.5 le rapport classification. La figure.4.6.5 montre la matrice de
confusion de notre réseau.
D’après la matrice de confusion 4.6.5, on voit que parmi 390 personnes infectées, notre
réseau à prédire correctement 376 personnes, autrement dit un pourcentage de 96.4%, et
parmi 234 personnes normales notre réseau a prédit correctement 200 personnes.
D’après le tableau 4.6.5, on voit que l’exactitude de notre réseau est 92%, le score de
Rappel est 96% . En comparant avec d’autres résultats de la littérature, Enes Ayan et al
.[3] ils ont obtenue une exactitude de 87% et un score de Rappel 89%. Rachna Jain et al
.[28] ont obtenue une exactitude de 87.17% et un score de Rappel 96% . Gaobo Liang et
al.[35] ont obtenue une exactitude de 90.5% et un score de Rappel 95.1% . Cette différence
de performance est une conséquence des couches qu’on a ajoutées au VGG16 préformé,
et la régularisation qu’on a utilisée, Dropout pour les couches entièrement connectées,
la normalisation par lot pour les couches de convolution, ainsi que l’augmentation des
données.
4.7 Conclusion
Dans le présent chapitre, une comparaison a été faite entre l’apprentissage classique et
l’apprentissage par transfert ; la première partie utilise des bases de données standard et
constate seulement que l’apprentissage par transfert réduit légèrement les performances,
mais notre objectif d’exploité un modèle de l’apprentissage profond préformé et l’utilise
dans un modèle cible, et on a remarqué que l’apprentissage par transfert réduit consi-
dérablement la complexité(spatiale et temporelle), de plus dans le cas du problème du
manque des données qui est un problème très connue surtout dans le domaine de l’ima-
gerie médicale, nous ne pouvons pas construire un modèle d’apprentissage profond à zéro
parce qu’il engendrera le problème du sous-apprentissage (under-fitting). Dans ce cas,
l’utilisation de l’apprentissage par transfert résout ce problème et donne de bons résultats
de performance, dont il est question dans la deuxième partie de notre application.
Tout au long de ce projet nous avons été amenés à concevoir et traité deux grands
problèmes souvent rencontrés en deep learning qui sont :
1. Le sur-apprentissage(Overfitting)
2. Le sous-apprentissage(Underfitting) et plus précisément le problème de manque de
données.
Initialement, nous étudions quelques algorithmes d’apprentissage et leurs bénéfices. Les
réseaux de neurones convolutifs et leurs propres avantages dans le traitement d’images
ont également fait l’objet de discussions. Nous avons ensuite vu des méthodes visant
à limiter le problème de sur-apprentissage. Dans le troisième chapitre, le concept d’ap-
prentissage par transfert a été introduit, ce qui résout essentiellement le problème du
sous-apprentissage et plus spécifiquement le problème de l’absence de données. Enfin on
a mené une expérience qui comporte deux volets :
1. Nous avons comparé l’apprentissage par transfert et l’apprentissage traditionnel à
l’aide de trois bases de données.
2. On a utilisé la base de données radiographiques thoraciques contenant des images
médicales afin de comprendre l’importance de l’apprentissage par transfert.
66
.1. COMPLEXITÉ DE READMACHER
.1 Complexité de Readmacher
pour démontrer le théorème [Link], on aura besoins des résultat suivant :
Soit R̂ℓ (G)la classe des fonctions réelles Rd → R de dimension d’entrée F, c’est-à-
dire que G = {F}dj=1 et HB est une fonction de transformation linéaire paramétré
par W avec ||W || ≤ B alors :
√
R̂ℓ (H ◦ G) ≤ dB R̂ℓ (F (2)
Démonstration.
" ℓ
#
2X
R̂ℓ (H ◦ G) = Eσ sup σi h ◦ g(xi )
h∈H,g∈G ℓ i=1
" * ℓ
+#
2X
= Eσ sup W, σi g(xi )
h∈H,g∈G ℓ i=1
" ℓ #n
2 X
≤ BEσ sup σij f j (xi )
f j ∈F ℓ i=1
j=1
# n
ℓ
√ 2 X
= B dEσ sup σi f (xi )
f ∈F ℓ i=1
j=1
√
= dB R̂ℓ (F)
avec :
hM = (M ⋆ W )v
on a :
" ℓ
#
√ 2X
EM (R̂ℓ [hM ◦ g]) = 2( kdBs )EM,σ sup σi W T DM g(xi )
h∈H,g∈G ℓ i=1
" * ℓ
+#
√ 2X
= 2( kdBs )EM,σ sup DM W, σi g(xi )
h∈H,g∈G ℓ i=1
n
ℓ
√ h i 2X
≤ 2( kdBs )EM max ||DM W || Eσ sup σi g j (xi )
W j
g ∈G ℓ i=1 j=1
√ √
≤ Bh p nd( nR̂ℓ (G))
√
= pn dBh R̂ℓ (G)
où DM dans l’équation est une matrice diagonale avec des éléments diagonaux égaux à
m. d’ou √ √
R̂ℓ (F) ≤ p(2 kBs n dBh )R̂ℓ (G)
tillon. En utilisant plutôt des moyennes mobiles, nous pouvons suivre la précision d’un
modèle pendant qu’il s’entraîne. Étant donné que les moyennes et les variances sont fixes
lors de l’inférence, la normalisation est simplement une transformée linéaire appliquée à
chaque activation. Il peut en outre être composé avec la mise à l’échelle par γ et déca-
lage de β, pour donner une seule transformée linéaire qui remplace BN (x). L’algorithme5
résume la procédure d’apprentissage des réseaux normalisés par lots.
fin pour
4 : Apprentissage de NBN tr pour optimiser les paramètres θ {γ , β }K
S
k k k=1
inf
5 : NBN ←− NBN tr
[1] Andreas Argyriou, Theodoros Evgeniou, and Massimiliano Pontil. Multi-task feature
learning. Advances in neural information processing systems, 19, 2006.
[2] Andrew Arnold, Ramesh Nallapati, and William W Cohen. A comparative study of
methods for transductive transfer learning. In Seventh IEEE international conference
on data mining workshops (ICDMW 2007), pages 77–82. IEEE, 2007.
[3] Enes Ayan and Halil Murat Ünver. Diagnosis of pneumonia from chest x-ray images
using deep learning. In 2019 Scientific Meeting on Electrical-Electronics & Biomedical
Engineering and Computer Science (EBBT), pages 1–5. Ieee, 2019.
[4] Shai Ben-David, John Blitzer, Koby Crammer, Alex Kulesza, Fernando Pereira, and
Jennifer Wortman Vaughan. A theory of learning from different domains. Machine
learning, 79(1) :151–175, 2010.
[5] Arthur Benton. Facial recognition 1990. Cortex, 26(4) :491–499, 1990.
[6] Himanshu Sharad Bhatt, Shourya Roy, Arun Rajkumar, and Sriranjani Ramakrish-
nan. Learning transferable feature representations using neural networks. In Procee-
dings of the 57th Annual Meeting of the Association for Computational Linguistics,
pages 4124–4134, 2019.
[7] Peter J Bickel, Ya’acov Ritov, and Alexandre B Tsybakov. Simultaneous analysis of
lasso and dantzig selector. The Annals of statistics, 37(4) :1705–1732, 2009.
[8] Mario Bkassiny, Yang Li, and Sudharman K Jayaweera. A survey on machine-
learning techniques in cognitive radios. IEEE Communications Surveys & Tutorials,
15(3) :1136–1159, 2012.
[9] Sylvie Boldo, François Clément, Vincent Martin, Micaela Mayero, and Houda
Mouhcine. Lebesgue induction and tonelli’s theorem in coq. arXiv preprint
arXiv :2202.05040, 2022.
[10] Rich Caruana and Alexandru Niculescu-Mizil. An empirical comparison of supervised
learning algorithms. In Proceedings of the 23rd international conference on Machine
learning, pages 161–168, 2006.
[11] Benjamin M Case, Colin Gallagher, and Shuhong Gao. A note on sub-gaussian
random variables. Cryptology ePrint Archive, 2019.
[12] Jonghyun Choi, Abhishek Sharma, David W Jacobs, and Larry S Davis. Data in-
sufficiency in sketch versus photo face recognition. In 2012 IEEE Computer So-
ciety Conference on Computer Vision and Pattern Recognition Workshops, pages
1–8. IEEE, 2012.
[13] Tyler Cody and Peter Beling. A systems theory of transfer learning. 07 2021.
70
BIBLIOGRAPHIE
[14] Corinna Cortes, Marius Kloft, and Mehryar Mohri. Learning kernels using local
rademacher complexity. Advances in neural information processing systems, 26, 2013.
[15] Wenyuan Dai, Qiang Yang, Gui-Rong Xue, and Yong Yu. Boosting for transfer
learning. volume 227, pages 193–200, 01 2007.
[16] Gwendoline De Bie, Gabriel Peyré, and Marco Cuturi. Stochastic deep networks. In
International Conference on Machine Learning, pages 1556–1565. PMLR, 2019.
[17] Stephanie Dick. Artificial intelligence. 2019.
[18] Ahmed Fawzy Gad, Ahmed Fawzy Gad, and Suresh John. Practical computer vision
applications using deep learning with CNNs. Springer, 2018.
[19] Jiuxiang Gu, Zhenhua Wang, Jason Kuen, Lianyang Ma, Amir Shahroudy, Bing
Shuai, Ting Liu, Xingxing Wang, Gang Wang, Jianfei Cai, et al. Recent advances in
convolutional neural networks. Pattern recognition, 77 :354–377, 2018.
[20] Kevin Gurney. An introduction to neural networks. CRC press, 2018.
[21] Misgina Tsighe Hagos and Shri Kant. Transfer learning based detection of diabetic
retinopathy from small dataset. arXiv preprint arXiv :1905.07203, 2019.
[22] William Grant Hatcher and Wei Yu. A survey of deep learning : Platforms, applica-
tions and emerging research trends. IEEE Access, 6 :24411–24432, 2018.
[23] David P Helmbold and Philip M Long. Surprising properties of dropout in deep
networks. In Conference on Learning Theory, pages 1123–1146. PMLR, 2017.
[24] El Houssaine Hssayni, Nour-Eddine Joudar, and Mohamed Ettaouil. Convolutional
neural networks : Architecture optimization and regularization. In International
Conference on Digital Technologies and Applications, pages 180–189. Springer, 2022.
[25] Mohammed Amine Janati Idrissi, Hassan Ramchoun, Youssef Ghanou, and Mohamed
Ettaouil. Genetic algorithm for neural network architecture optimization. In 2016
3rd International conference on logistics operations management (GOL), pages 1–4.
IEEE, 2016.
[26] Sergey Ioffe and Christian Szegedy. Batch normalization : Accelerating deep network
training by reducing internal covariate shift. In International conference on machine
learning, pages 448–456. PMLR, 2015.
[27] Anil K Jain, Jianchang Mao, and K Moidin Mohiuddin. Artificial neural networks :
A tutorial. Computer, 29(3) :31–44, 1996.
[28] Rachna Jain, Preeti Nagrath, Gaurav Kataria, V Sirish Kaushik, and D Jude He-
manth. Pneumonia detection in chest x-ray images using convolutional neural net-
works and transfer learning. Measurement, 165 :108046, 2020.
[29] Nour-Eddine Joudar, Mohamed Ettaouil, et al. Krr-cnn : kernels redundancy re-
duction in convolutional neural networks. Neural Computing and Applications,
34(3) :2443–2454, 2022.
[30] Ben Krose and Patrick van der Smagt. An introduction to neural networks. 2011.
[31] Sampo Kuutti, Richard Bowden, Yaochu Jin, Phil Barber, and Saber Fallah. A survey
of deep learning applications to autonomous vehicle control. IEEE Transactions on
Intelligent Transportation Systems, 22(2) :712–733, 2020.
[32] Hang-Chin Lai and Lai-Jiu Lin. Moreau-rockafellar type theorem for convex set
functions. Journal of mathematical analysis and applications, 132(2) :558–571, 1988.
[33] Yann LeCun, Yoshua Bengio, and Geoffrey Hinton. Deep learning. nature,
521(7553) :436–444, 2015.
[34] Gen Li, Yuantao Gu, and Jie Ding. L1 regularization in two-layer neural networks.
IEEE Signal Processing Letters, PP :1–1, 11 2021.
[35] Gaobo Liang and Lixin Zheng. A transfer learning method with deep residual network
for pediatric pneumonia diagnosis. Computer methods and programs in biomedicine,
187 :104964, 2020.
[36] Geert Litjens, Thijs Kooi, Babak Ehteshami Bejnordi, Arnaud Arindra Adiyoso Setio,
Francesco Ciompi, Mohsen Ghafoorian, Jeroen Awm Van Der Laak, Bram Van Gin-
neken, and Clara I Sánchez. A survey on deep learning in medical image analysis.
Medical image analysis, 42 :60–88, 2017.
[37] Jie Lu, Vahid Behbood, Peng Hao, Hua Zuo, Shan Xue, and Guangquan Zhang.
Transfer learning using computational intelligence : A survey. Knowledge-Based Sys-
tems, 80 :14–23, 2015.
[38] Ping Luo, Xinjiang Wang, Wenqi Shao, and Zhanglin Peng. Towards understanding
regularization in batch normalization. arXiv preprint arXiv :1809.00846, 2018.
[39] Ping Luo, Xinjiang Wang, Wenqi Shao, and Zhanglin Peng. Understanding regulari-
zation in batch normalization. 09 2018.
[40] Tom M Mitchell and Tom M Mitchell. Machine learning, volume 1. McGraw-hill
New York, 1997.
[41] Sinno Jialin Pan and Qiang Yang. A survey on transfer learning. IEEE Transactions
on knowledge and data engineering, 22(10) :1345–1359, 2009.
[42] Samira Pouyanfar, Saad Sadiq, Yilin Yan, Haiman Tian, Yudong Tao, Maria Presa
Reyes, Mei-Ling Shyu, Shu-Ching Chen, and Sundaraja S Iyengar. A survey on
deep learning : Algorithms, techniques, and applications. ACM Computing Surveys
(CSUR), 51(5) :1–36, 2018.
[43] R Meena Prakash, N Thenmoezhi, and M Gayathri. Face recognition with convo-
lutional neural network and transfer learning. In 2019 International Conference on
Smart Systems and Inventive Technology (ICSSIT), pages 861–864. IEEE, 2019.
[44] Rajat Raina, Alexis Battle, Honglak Lee, Benjamin Packer, and Andrew Y Ng. Self-
taught learning : transfer learning from unlabeled data. In Proceedings of the 24th
international conference on Machine learning, pages 759–766, 2007.
[45] Hassan Ramchoun, Youssef Ghanou, Mohamed Ettaouil, and Mohammed Amine
Janati Idrissi. Multilayer perceptron : Architecture optimization and training. 2016.
[46] Morten Arendt Rasmussen and Rasmus Bro. A tutorial on the lasso approach to
sparse modeling. Chemometrics and Intelligent Laboratory Systems, 119 :21–31, 2012.
[47] Ricardo Ribani and Mauricio Marengoni. A survey of transfer learning for convolu-
tional neural networks. In 2019 32nd SIBGRAPI conference on graphics, patterns
and images tutorials (SIBGRAPI-T), pages 47–57. IEEE, 2019.
[48] Sebastian Ruder. An overview of gradient descent optimization algorithms. arXiv
preprint arXiv :1609.04747, 2016.
[49] Linda G Shapiro, George C Stockman, et al. Computer vision, volume 3. Prentice
Hall New Jersey, 2001.
[50] Piyush Sharma, Akiko Ueno, and Russel Kingshott. Self-service technology in
supermarkets–do frontline staff still matter ? Journal of Retailing and Consumer
Services, 59 :102356, 2021.
[51] Dinggang Shen, Guorong Wu, and Heung-Il Suk. Deep learning in medical image
analysis. Annual review of biomedical engineering, 19 :221, 2017.
[52] Naum Zuselevich Shor. Minimization methods for non-differentiable functions, vo-
lume 3. Springer Science & Business Media, 2012.
[53] Masaaki Takada and Hironori Fujisawa. Transfer learning via ℓ1 regularization. 06
2020.
[54] Srikanth Tammina. Transfer learning using vgg-16 with deep convolutional neural
network for classifying images. International Journal of Scientific and Research Pu-
blications (IJSRP), 9(10) :143–150, 2019.
[55] Chuanqi Tan, Fuchun Sun, Tao Kong, Wenchang Zhang, Chao Yang, and Chunfang
Liu. A survey on deep transfer learning. In International conference on artificial
neural networks, pages 270–279. Springer, 2018.
[56] Rob Tibshirani, T Hastie, and M Wainwright. Statistical learning and sparsity, 2019.
[57] Robert Tibshirani. Regression shrinkage and selection via the lasso. Journal of the
Royal Statistical Society : Series B (Methodological), 58(1) :267–288, 1996.
[58] Lisa Torrey and Jude Shavlik. Transfer learning. In Handbook of research on machine
learning applications and trends : algorithms, methods, and techniques, pages 242–
264. IGI global, 2010.
[59] Paul Tseng. Convergence of a block coordinate descent method for nondifferentiable
minimization. Journal of optimization theory and applications, 109(3) :475–494, 2001.
[60] Dimpy Varshni, Kartik Thakral, Lucky Agarwal, Rahul Nijhawan, and Ankush Mit-
tal. Pneumonia detection using cnn based feature extraction. In 2019 IEEE interna-
tional conference on electrical, computer and communication technologies (ICECCT),
pages 1–7. IEEE, 2019.
[61] Li Wan, Matthew Zeiler, Sixin Zhang, Yann Le Cun, and Rob Fergus. Regulariza-
tion of neural networks using dropconnect. In International conference on machine
learning, pages 1058–1066. PMLR, 2013.
[62] Donghui Wang, Yanan Li, Yuetan Lin, and Yueting Zhuang. Relational knowledge
transfer for zero-shot learning. In Thirtieth AAAI Conference on Artificial Intelli-
gence, 2016.
[63] H Wang, Z Lei, X Zhang, B Zhou, and J Peng. Machine learning basics. Deep
learning, pages 98–164, 2016.
[64] Eric W Weisstein. Convolution. https ://mathworld. wolfram. com/, 2003.
[65] Xuetong Wu, Jonathan H Manton, Uwe Aickelin, and Jingge Zhu. A bayesian
approach to (online) transfer learning : Theory and algorithms. arXiv preprint
arXiv :2109.01377, 2021.
[66] LI Xuhong, Yves Grandvalet, and Franck Davoine. Explicit inductive bias for trans-
fer learning with convolutional networks. In International Conference on Machine
Learning, pages 2825–2834. PMLR, 2018.
[67] Yuki Yoshida and Masato Okada. Data-dependence of plateau phenomenon in lear-
ning with neural network—statistical mechanical analysis. Advances in Neural In-
formation Processing Systems, 32, 2019.
[68] Qingchen Zhang, Laurence T Yang, Zhikui Chen, and Peng Li. A survey on deep
learning for big data. Information Fusion, 42 :146–157, 2018.
[69] Xiaojin Jerry Zhu. Semi-supervised learning literature survey. 2005.
[70] Fuzhen Zhuang, Zhiyuan Qi, Keyu Duan, Dongbo Xi, Yongchun Zhu, Hengshu Zhu,
Hui Xiong, and Qing He. A comprehensive survey on transfer learning. Proceedings
of the IEEE, 109(1) :43–76, 2020.