Académique Documents
Professionnel Documents
Culture Documents
Introduction Apprentissage Automatique
Introduction Apprentissage Automatique
II-RÉGRESSION
III-Classication
IV- KNN
V-SVM Linéaires
VI-DEEP LEARNING
Ghislain PANDRY
Chercheur, Traitement du signal
Exemple
Chatbot, voiture autonome, système de diagnostic médical, système
de reconnaissance d'images, robot humanoïde etc
Composants de l'apprentissage
Un problème d'apprentissage fait intervenir trois composants
essentiels :
La tâche à résoudre (classier des champignons, ordonner des
lms, jouer au Go, etc.)
Les exemples de la tâche (champignons classés, lms ordonnés
selon utilisateur, etc.)
La mesure de performance (nombre d'erreurs, distance entre
ordres, etc.)
En apprentissage supervisé, les exemples sont des instances de la
tâche étiquetées par leur solution.
Apprentissage Oine
L'apprentissage se déroule en deux parties distinctes :
La phase d'entraînement : l'agent apprend une tâche à partir
d'une série d'exemples ;
La phase de test : Les performances de l'agent sont mesurées
sur une nouvelle série d'exemples.
Apprentissage Oine
L'apprentissage se déroule de manière continue en tours. Durant
chaque tour,
L'agent reçoit un exemple non étiqueté (ex : un champignon)
L'agent prédit sa solution (ex : je crois qu'il est comestible)
L'agent reçoit la réponse (ex : en fait, il est toxique) et mesure
sa performance jusqu'à présent.
Ghislain PANDRY Chapitre 1: INTRODUCTION A L'APPRE
I-MACHINE LEARNING
II-RÉGRESSION
III-Classication I-1 : Dénition
IV- KNN I-2 : Problèmes de l'apprentissage automatique
V-SVM Linéaires
VI-DEEP LEARNING
I-2-1 : Régression
La régression permet la prédiction de réponses continues.
I-2-2 : Classication
La classication permet de classer des éléments dans des catégories
discrètes connues.
I-2-2 : Clustering
Le clustering permet d'identier des groupes, des associations dans
les jeux de données.
II-1-1 : Dénition
En sciences statistiques ou encore en apprentissage automatique, le
terme régression fait référence aux techniques d'estimation de la
relation entre des variables quantitatives : une variable dépendante
ou expliquée et une ou plusieurs variables indépendantes ou
explicatives. C'est donc une méthode de modélisation d'une
réponse, la variable dépendante ou expliquée, en fonction de
prédicteurs, les variables indépendantes. La régression est très
largement utilisée pour :
Expliquer ou quantier une relation entre des variables ;
Réaliser des prédictions de réponses continues à partir de
données.
Minimisation
En remplaçant ybi par son expression, on va chercher à minimiser la
somme des erreurs quadratiques, c'est la méthode des moindres
carrés ordinaires :
Pn
min i=1 (yi − (b + ax))2
a,b (1)
III-1-1 :Dénition
Dans un problème de classication, l'objectif est de classer un objet
en cherchant à prédire la valeur d'une variable discrète qualitative
ou quantitative. Par exemple on cherchera à savoir :
si un risque cardiovasculaire y est possible (y = 1)ou pas
(y = 0) en fonction de l'âge (X ) et du poids (X ) d'un
1 2
IV-1-1 :Dénition
KNN est un algorithme d'apprentissage non-paramétrique. Il est
non-paramétrique parce
qu'il n'y a pas d'hypothèse pour la distribution sous-jacente
des données ;
la structure du modèle est déterminée à partir de l'ensemble de
données ;
cela sera très utile dans la pratique où la plupart des ensembles
de données du monde réel ne suivent pas les hypothèses
théoriques mathématiques.
Dissimilarité : Distance
Une mesure de distance (âge, poids, taille, etc.) est une
dissimilarité, mais l'inverse n'est pas nécessairement vrai.
Propriété d'une distance :
d(x, y ) ≥ 0
d(x, y ) = 0 ssi x = y
d(x, y ) = d(y , x)
d(x, z) ≤ d(x, y ) + d(y , z)
Mesures de distance
Soit i et j deux objets p-dimensionnels dénis par p attributs
quantitatifs comme suit i = (xi , xi , · · · , xip ) et
1 2
j = (xj 1 , xj 2 , · · · , xjp )
distance de Minkowski :d(i, j) =q
p
(| xi 1 − xj 1 |q + | xi 2 − xj 2 |q + · · · + | xip − xjp |q )
Choix de K
Dans la problématique de l'apprentissage, le nombre m est ni ; il
faut alors trouver un compromis entre une valeur faible de k , qui
semble moins favorable, et une valeur exagérément grande. Diverses
considérations théoriques et expérimentales mènent à l'heuristique
suivante : choisir k autour de m/C où m/C est le nombre moyen
p
Problème de choix
Réponse
Pour juger la qualité d'un hyperplan en tant que séparateur on
utilise la distance entre les exemples d'apprentissage et ce
séparateur. Plus précisément, la marge d'un problème
d'apprentissage est dénie comme la distance entre le plus proche
exemple d'apprentissage et l'hyperplan de séparation. Pour un
hyperplan H on a : Marge(H) = minxi d(xi , H)
Réponse
Réponse
vecteurs de support
Les éléments de la classe 1 les plus proches de ce séparateur se
trouvent à la même distance du séparateur que les éléments les plus
proches de la classe 2 (cette distance est égale à la marge). Ces
éléments, soit d'une classe soit de l'autre, s'appellent vecteurs de
support .
Réseau de neurones
Un réseau neuronal est un système inspirée du fonctionnement des
neurones biologiques qui a une propension naturelle à stocker des
connaissances et à les rendre utilisables. Il présente les
connaissances acquises par le réseau à travers un processus
d'apprentissage. En général, un réseau de neurones est constitué
d'un ensemble de neurones inter-connectés interagissant de manière
non linéaire. La sortie de chaque neurone est une combinaison non
linéaire de ses entrées et qui est dénie en fonction de la nature et
de la structure du réseau.
Neurone
Un neurone à p entrées est une fonction f : Rp+1 × Rp → R dénie
par :
g :R→R
W ∈ Rp+1 , W = (ω1 , · · · , ω3 )
x ∈ Rp , f (W , x) = g ( pi=1 ωi xi + ωp+1 ) avec
P
x = (x1 , · · · , xp )
Cette dénition est inspirée du neurone biologique, les poids jouant
le rôle de synapses, le vecteur x celui des entrées et W celui des
coecients ou poids. Le coecient ωp+ est appelé le biais et
1
Neurone Simple
U
n neurone est une application non linéaire en ses paramètres qui, à
un vecteur x d'entrée associe une sortie f (x). Plus précisément, le
j ime neurone articiel fj s'écrit :
r =1
(6)
X
fj (x) = ϕ(< wj , x >= wjr x r
p
Naissance du MLP
Lorsque nous parlons de perceptrons multicouches ou de réseaux de
neurones, nous faisons référence au type de réseau de neurones le
plus simple et le plus courant . Les MLP ont été initialement
inspirés par le Perceptron , un algorithme d' apprentissage
automatique supervisé pour la classication binaire. Le Perceptron
n'était capable que de gérer des données séparables linéairement,
c'est pourquoi la perception multicouche a été introduite pour
surmonter cette limitation. Le réseau MLP est le réseau de neurone
le plus utilisé. Cela est du à sa capacité d'apprendre de l'ensemble
des données d'entraînement et à son ecacité à résoudre des
problèmes de classication non linéaire et de reconnaissance de
formes.
Dénition MLP
Un MLP est un réseau neuronal capable de gérer à la fois des
données séparables linéairement et non linéairement séparables. Il
appartient à une classe de réseaux de neurones connus sous le nom
de réseaux de neurones feed-forward, qui connectent les neurones
d'une couche à la couche suivante de manière directe sans aucune
boucle.
Caractéristiques MLP
Un MLP est un réseau de neurones articiels et se compose donc
de neurones interconnectés qui traitent les données à travers trois
couches ou plus. La structure de base d'un MLP consiste en une
couche d'entrée, une ou plusieurs couches cachées et une couche de
sortie, une fonction d'activation et un ensemble de poids et biais. Il
n'y a pas de neurone articiel dans la couche d'entrée du MLP. Les
données entrent dans le réseau via la couche d'entrée, traversent les
couches cachées et dénissent par sortir du réseau par la couche de
sortie. L'architecture de ce réseau est illustrée par la Fig.60
N
(W ((j − 1)N + i) × xi ) + B(j) (7)
X
yj =
i=1
1
Yj = σ(yj ) = (8)
1 + e −yj
df (ω)
ωt = ωt−1 − α (9)
dω
Le processus de correction pondérée continuera à mettre à jour les
poids du modèle avec les autres données de la base d'apprentissage.
La formation du réseau se poursuivra jusqu'à ce que l'erreur nale
atteigne une plage acceptable ou atteigne une valeur prédéterminée
de temps d'apprentissage.
Composition
Les briques élémentaires du Deep Learning sont les réseaux
neuronaux. Ces briques sont combinées pour former des réseaux de
neurones profonds.
Fonctions d'activation
Les fonctions d'activation introduisent une étape supplémentaire à
chaque couche lors de la propagation vers l'avant, mais son calcul
en vaut la peine.
Remarques
Supposons que nous ayons un réseau de neurones fonctionnant sans
les fonctions d'activation. Dans ce cas, chaque neurone n'eectuera
qu'une transformation linéaire sur les entrées en utilisant les poids
et les biais. C'est parce que peu importe le nombre de couches
cachées que nous attachons dans le réseau neuronal ; toutes les
couches se comporteront de la même manière car la composition de
deux fonctions linéaires est elle-même une fonction linéaire. Bien
que le réseau de neurones devienne plus simple, l'apprentissage de
toute tâche complexe est impossible, et notre modèle ne serait
qu'un modèle de régression linéaire.
Vanish gradiant
Comme la fonction sigmoïde, certaines fonctions d'activation
écrasent un grand espace d'entrée dans un petit espace de sortie
entre 0 et 1.
Par conséquent, un changement important dans l'entrée de la
fonction sigmoïde entraînera un petit changement dans la sortie.
Par conséquent, la dérivée devient petite. Pour les réseaux peu
profonds avec seulement quelques couches qui utilisent ces
activations, ce n'est pas un gros problème.
Cependant, lorsque plusieurs couches sont utilisées, le gradient peut
être trop petit pour que l'entraînement fonctionne ecacement.
Explosion du gradient
L'explosion du grandient est un problème où des gradients d'erreur
importants s'accumulent et entraînent de très grandes mises à jour
des poids du modèle de réseau neuronal pendant la formation.
Un réseau instable peut se produire lorsque les gradients explosent
et que l'apprentissage ne peut pas être terminé.
Les valeurs des poids peuvent également devenir si importantes
qu'elles débordent et se traduisent par des valeurs appelées NaN.
Fonction de Heaviside
La fonction de Heaviside dépend d'une valeur seuil qui décide si un
neurone doit être activé ou non.
L'entrée fournie à la fonction d'activation est comparée à un certain
seuil ; si l'entrée est supérieure à celle-ci, alors le neurone est activé,
sinon il est désactivé, ce qui signie que sa sortie n'est pas
transmise à la couche cachée suivante.
Limites
Voici quelques-unes des limitations de la fonction d'étape binaire :
Il ne peut pas fournir de sorties multi-valeurs, par exemple, il
ne peut pas être utilisé pour des problèmes de classication
multi-classes ;
Le gradient de la fonction échelon est nul, ce qui gêne le
processus de rétropropagation.
Remarque
Une fonction d'activation linéaire présente deux problèmes
majeurs :
Il n'est pas possible d'utiliser la rétropropagation car la dérivée
de la fonction est une constante et n'a aucun rapport avec
l'entrée x.
Toutes les couches du réseau neuronal s'eondreront en une
seule si une fonction d'activation linéaire est utilisée. Quel que
soit le nombre de couches du réseau de neurones, la dernière
couche sera toujours une fonction linéaire de la première
couche. Donc, essentiellement, une fonction d'activation
linéaire transforme le réseau de neurones en une seule couche.
Remarque 1
La fonction d'activation sigmoïde/logistique est l'une des fonctions
les plus utilisées :
Il est couramment utilisé pour les modèles où nous devons
prédire la probabilité en tant que sortie. Étant donné que la
probabilité de quoi que ce soit n'existe qu'entre 0 et 1, le
sigmoïde est le bon choix en raison de sa plage.
La fonction est diérentiable et fournit un gradient lisse,
c'est-à-dire qu'elle empêche les sauts dans les valeurs de sortie.
Ceci est représenté par une forme en S de la fonction
d'activation sigmoïde.
Remarque 2
La gure ci-dessus, les valeurs de gradient ne sont signicatives que
pour la plage -3 à 3, et le graphique devient beaucoup plus plat
dans d'autres régions.
Cela implique que pour des valeurs supérieures à 3 ou inférieures à
-3, la fonction aura de très petits gradients. Lorsque la valeur du
gradient approche de zéro, le réseau cesse d'apprendre et soure du
problème du "vanish gradient" .
tangente hyperbolique
La fonction Tanh est très similaire à la fonction d'activation
sigmoïde/logistique, et a même la même forme en S avec une
diérence de plage de sortie de -1 à 1. Dans Tanh, plus l'entrée est
grande (plus positive), plus la valeur de sortie est proche. sera à 1,
alors que plus l'entrée est petite (plus négative), plus la sortie sera
proche de -1.
e x − e −x
f (x) = x −x
(12)
e +e
Remarque
Les avantages de l'utilisation de cette fonction d'activation sont :
La sortie de la fonction d'activation de tanh est centrée sur
zéro ; par conséquent, nous pouvons facilement mapper les
valeurs de sortie comme fortement négatives, neutres ou
fortement positives.
Habituellement utilisé dans les couches cachées d'un réseau de
neurones car ses valeurs se situent entre -1 et 1 ; par
conséquent, la moyenne de la couche cachée s'avère être 0 ou
très proche de celle-ci. Cela aide à centrer les données et
facilite beaucoup l'apprentissage de la couche suivante.
Remarque
bien que sigmoïde et tanh soient tous deux confrontés à un
problème de "vanish gradient", tanh est centré sur zéro et les
gradients ne sont pas limités à se déplacer dans une certaine
direction. Par conséquent, en pratique, la non-linéarité tanh est
toujours préférée à la non-linéarité sigmoïde.
Fonction Softmax
La fonction Softmax est décrite comme une combinaison de
plusieurs sigmoïdes.
Il calcule les probabilités relatives. Semblable à la fonction
d'activation sigmoïde/logistique, la fonction SoftMax renvoie la
probabilité de chaque classe.
Elle est le plus souvent utilisée comme fonction d'activation de la
dernière couche du réseau de neurones dans le cas d'une
classication multi-classes.
exp(xi )
f (x) = P (13)
j exp(xj )
Swish
C'est une fonction développée par des chercheurs de Google.
Swish correspond ou surpasse systématiquement la fonction
d'activation ReLU sur les réseaux profonds appliqués à divers
domaines diciles tels que la classication des images , la
traduction automatique, etc.
x
f (x) = (14)
1 + e −x
Remarque
Voici quelques avantages de la fonction d'activation Swish par
rapport à ReLU :
Swish est une fonction lisse qui signie qu'elle ne change pas
brusquement de direction comme le fait ReLU près de x = 0.
Au contraire, elle se plie en douceur de 0 vers des valeurs < 0,
puis vers le haut.
Les petites valeurs négatives ont été mises à zéro dans la
fonction d'activation ReLU. Cependant, ces valeurs négatives
peuvent toujours être pertinentes pour capturer les modèles
sous-jacents aux données. Les grandes valeurs négatives sont
mises à zéro pour des raisons de rareté, ce qui en fait une
situation gagnant-gagnant.
La fonction swish étant non monotone améliore l'expression
des données d'entrée et du poids
Ghislain PANDRY
à apprendre.
Chapitre 1: INTRODUCTION A L'APPRE
I-MACHINE LEARNING
II-RÉGRESSION
III-Classication VI-1 : Perceptron simple
IV- KNN VI-2 : Perceptron multicouche
V-SVM Linéaires
VI-DEEP LEARNING
ReLU
ReLU signie unité linéaire rectiée.
Bien qu'il donne l'impression d'une fonction linéaire, ReLU a une
fonction dérivée et permet la rétropropagation tout en le rendant
simultanément ecace en termes de calcul.
Le problème ici est que la fonction ReLU n'active pas tous les
neurones en même temps.
Les neurones ne seront désactivés que si la sortie de la
transformation linéaire est inférieure à 0.
f (x) = max(0, x) (15)
Remarque
Les avantages de l'utilisation de ReLU comme fonction d'activation
sont les suivants :
Étant donné que seul un certain nombre de neurones sont
activés, la fonction ReLU est beaucoup plus ecace en termes
de calcul par rapport aux fonctions sigmoïde et tanh.
ReLU accélère la convergence de la descente de gradient vers
le minimum global de la fonction de perte en raison de sa
propriété linéaire et non saturante.
Remarque
Les avantages de Leaky ReLU sont les mêmes que ceux de ReLU,
en plus du fait qu'il permet la rétropropagation, même pour les
valeurs d'entrée négatives.
En faisant cette modication mineure pour les valeurs d'entrée
négatives, le gradient du côté gauche du graphique s'avère être une
valeur non nulle. Par conséquent, nous ne rencontrerions plus de
neurones morts dans cette région.
Remarque
Les limitations auxquelles cette fonction est confrontée incluent :
Les prédictions peuvent ne pas être cohérentes pour les valeurs
d'entrée négatives.
Le gradient pour les valeurs négatives est une petite valeur qui
rend l'apprentissage des paramètres du modèle chronophage.
Remarque
La fonction ReLU paramétrée est utilisée lorsque la fonction ReLU
qui fuit ne parvient toujours pas à résoudre le problème des
neurones morts et que les informations pertinentes ne sont pas
transmises avec succès à la couche suivante.
La limitation de cette fonction est qu'elle peut fonctionner
diéremment pour diérents problèmes en fonction de la valeur du
paramètre de pente a.
1 si x ≥ 0
(
sa dérivée est : f ′ (x) =
f (x) + α sinon x < 0
Remarque
ELU est une alternative solide pour ReLU en raison des avantages
suivants :
ELU devient lisse lentement jusqu'à ce que sa sortie soit égale
à −α alors que RELU se lisse fortement.
Évite le problème ReLU mort en introduisant une courbe
logarithmique pour les valeurs négatives d'entrée. Cela aide le
réseau à pousser les pondérations et les biais dans la bonne
direction.
Remarque
Les limitations de la fonction ELU sont les suivantes :
Il augmente le temps de calcul en raison de l'opération
exponentielle incluse ;
Aucun apprentissage de la valeur 'α' n'a lieu ;
Problème de gradient explosif.
Remarque
Le principal avantage de SELU par rapport à ReLU :
La normalisation interne est plus rapide que la normalisation
externe, ce qui signie que le réseau converge plus rapidement.
SELU est une fonction d'activation relativement récente et a
besoin de plus d'articles sur des architectures telles que les
CNN et les RNN, où elle est relativement explorée.
couches cachées ;
2 Les fonctions Sigmoïde/Logistique et Tanh ne doivent pas être
sigmoïde/logistique
3 Classication multiclasse-Softmax
4 Classication multilabel-Sigmoïde