MachineLearning Merged
MachineLearning Merged
Mustapha El Ossmani
Ecole Nationale Supérieure des Arts et Métiers de Meknès
Université Moulay Ismail
Filière GI-IADS
2023-2024
1 Définition et introduction
2 Régression linéaire
Cost function
Normal equations
Gradient descent
3 Maximisation de la vraisemblance
1 Définition et introduction
2 Régression linéaire
Cost function
Normal equations
Gradient descent
3 Maximisation de la vraisemblance
Années 90, le ML se distinct comme un domaine à part en se basant beaucoup plus sur des
méthodes et modèles empruntés aux statistiques et à la théorie des probabilités.
ML est largement utilisé en IA et en sciences des données : vision par ordinateur, traitement
du langage naturel, reconnaissance vocale, diagnostic médical, tendances de consommation,
auto-conduite, moteurs de recherche, etc.
• Target/Label
• Output variable
• Dependent variable
• Real estate : area, distance from city centre, floor number, ... + price (continuous)
• Image : pixel=3 features (RGB) + cat or dog (categorical)
An image of 100x100 pixels in color contains 30000 features (too much!)
F (x ) = y
categorical continuous
• Features • Target
• Input variables • Output variable
• Independent variables • Dependent variable
F (x ) = y
F : Predictive/Decision model
Choosing a model :
• F (x ) = a0 + a1 x (Linear regression)
• F (x ) = a0 + a1 x + a2 x 2 (polynomial)
• F (x ) = a0 + a1 x1 + a2 x2 + a3 x3 (multivariable)
1
• F (x ) = (classification)
1+e −(a0 +a1 x )
• ANN, SVM, Random Forest, CNN, · · ·
Training
L’apprentissage (Training) est le processus permettant de déterminer les poids a tels que les écarts
entre la sortie estimée F (x (i)) et la sortie observée y (i) soient les plus petit possible.
2
Coefficient of determination (R ∈ [0, 1]) required to be close to 1
2
R = 1 − RSE
Data splitting
Biais : Variance :
• Erreur introduite par des approximations simplificatrices
• La sensibilité d’un modèle aux variations dans les données d’entraînement.
ou des hypothèses erronées dans le processus d’apprentissage.
• Une variance élevée est susceptible de surajuster les données d’entraînement,
• Un biais élevé a tendance à sous-ajuster les données d’entraînement,
⇓
⇓
- il peut être trop sensible aux détails spécifiques aux données d’entraînement,
- il ne capture pas correctement la complexité du problème.
- il ne généralise pas bien sur de nouvelles données.
- mauvaise performance sur les data ( training & tests or others).
• Problème de sur apprentissage "overfitting".
• Problème de sous apprentisage "underfitting"
Biais Variance
1 Définition et introduction
2 Régression linéaire
Cost function
Normal equations
Gradient descent
3 Maximisation de la vraisemblance
Hypothèse
F (x ) = a0 + a1 x ,
1 Définition et introduction
2 Régression linéaire
Cost function
Normal equations
Gradient descent
3 Maximisation de la vraisemblance
Modèle linéaire F : Rp → R,
F (x ) = a0 + a1 x1 + · · · + ap xp
Minimiser les écarts entre les sorties estimées F (x (i) ) et les sorties observées y (i) pour
i = 1, · · · , m :
m
1 X 2
J(a) = F (x (i) ) − y (i) Mean square loss
2m i=1
La division par 2m est pour normaliser.
On écrit aussi
m 2
X (F (x (i) )−y (i) )
J(a) = Ji (a) où Ji (a) = 2m .
i=1
1 Définition et introduction
2 Régression linéaire
Cost function
Normal equations
Gradient descent
3 Maximisation de la vraisemblance
X t Xa = X t Y
où X t X est une matrice de dimension p × p.
Les poids optimaux exacts 4a0 + 58a1 = 295
58a0 + 910a1 = 4645
−1
a = XtX XtY .
1 Définition et introduction
2 Régression linéaire
Cost function
Normal equations
Gradient descent
3 Maximisation de la vraisemblance
Small learning rate (Slow convergence) Big learning rate (May not converge)
1 Définition et introduction
2 Régression linéaire
Cost function
Normal equations
Gradient descent
3 Maximisation de la vraisemblance
p(x (i)) peux être assimilé à une constante puisqu’il ne dépend pas de a.
p(x (i)) peux être assimilé à une constante puisqu’il ne dépend pas de a.
On trouve alors le problème dit de maximisation de la vraisemblance (likelihood maximization)
m
Y
arg max p(y (i)/x (i), a)
a
M. El Ossmani (ENSAM) i=1Learning
Machine 2023-2024 33 / 36
Maximisation de la vraisemblance
Le problème devient
m
!
X [F (x (i)) − y (i)]2 √
arg max − − ln 2πσ
a
i=1
2σ 2
On retrouve la méthode des moindres ! carrés
m
2
X
arg min (F (x (i)) − y (i))
a
i=1
Mustapha El Ossmani
Ecole Nationale Supérieure des Arts et Métiers de Meknès
Université Moulay Ismaïl
Filière : GI-IADS
2023-2024
1 Régression logistique
2 Cost function
3 Régularisation
5 Multiclasse
6 K-nearest neighbors
1 Régression logistique
2 Cost function
3 Régularisation
5 Multiclasse
6 K-nearest neighbors
0
1
1
0
⇒
1 1
t 1
F(x) = x a F(x) = t
1+e−x a
∈ [0, 1]
Transformation 0.5 Seuil
sigmoïde
S(z) = 1+e1 −z
0 0
x F (x ) = S(x t a) x
Seuil d’affectation
• Si F(x) ≥ 0.5 alors x est affecté à 1
• Si F(x) < 0.5 alors x est affecté à 0
1
a0
x1 a1
xta S(x t a) F (x )
x2 a2
1
ap F (x ) = 1+e −x t a
∈ [0, 1]
xp
1 Régression logistique
2 Cost function
3 Régularisation
5 Multiclasse
6 K-nearest neighbors
∇a J = X t (F (X ) − Y )
1 Régression logistique
2 Cost function
3 Régularisation
5 Multiclasse
6 K-nearest neighbors
1 1 1
F (x ) = 1+e −(a0 +a1 x1 +a2 x2 )
F (x ) = 1+e −p2 (x )
F (x ) = 1+e −p10 (x )
a = a − α∇a J
où ∇a J = X t (F (X ) − Y ) + 2βã.
Il est alors nécessaire de choisir β de façon à assurer un compromis entre l’erreur de biais et
l’erreur de variance.
Dans la pratique, on teste différentes valeurs de β, puis on choisit celle qui réalise un bon score
sur les données de test.
1 Régression logistique
2 Cost function
3 Régularisation
5 Multiclasse
6 K-nearest neighbors
0.167 0.000
0.167 0.000
0.333 0.000
0.500 0.000
Tpr = 3/6 = 0.5 et Fpr = 0/14 = 0
0.167 0.000
0.333 0.000
0.500 0.000
0.500 0.071
0.667 0.071
0.667 0.143
Tpr
0.667 0.214
0.833 0.214
0.833 0.286
0.833 0.357
0.833 0.429
1.000 0.429
1.000 0.500
1.000 0.572
1.000 0.643
1.000 0.714 Fpr=1-specificity
1.000 0.786
1.000 0.857
1.000 0.929
1.000 1.000
M. El Ossmani (ENSAM) Machine Learning 2023-2024 19 / 31
Sommaire
1 Régression logistique
2 Cost function
3 Régularisation
5 Multiclasse
6 K-nearest neighbors
• Chaque droite sépare (parfois avec des erreurs) les points d’une classe de tous les autres.
t 1
ex a
1 x t a2
F (x ) = X t (k) e
ex a
t 3
ex a
k∈{1,2,3}
yK
Pour une observation, on cherche alors à maximiser la vraisemblance (likelihood)
suivante :
K K
(F (x ))ykk
Y Y
p(y/x ) = p(yk /x )yk =
k=1 k=1
Ceci revient à minimiser la "negative log-likelihood function"
K K
!
yk
Y X
− log (F (x ))k = − yk log(F (x )k )
k=1 k=1
The cross-entropy error function over a training set of size m can be calculated as:
m X
X K
J(a) = − yk (i) log(F (x (i))k )
i=1 k=1
1 Régression logistique
2 Cost function
3 Régularisation
5 Multiclasse
6 K-nearest neighbors
Principe de K-NN : dis moi qui sont tes voisins, je te dirais qui tu es!
M. El Ossmani (ENSAM) Machine Learning 2023-2024 28 / 31
Algorithme (KNN)
Mustapha El Ossmani
Ecole Nationale Supérieure des Arts et Métiers de Meknès
Université Moulay Ismail
Filière GI-IADS
2023-2024
1 Perceptron
3 Backpropagation
4 Validation croisée
1 Perceptron
3 Backpropagation
4 Validation croisée
La fonction Softmax:
S : RK −→ ]0, 1[K
1 T
z 7−→ S(z) = e z1 , · · · , e zk , · · · , e zK
K
X
zk
e
k=1
1 Perceptron
3 Backpropagation
4 Validation croisée
output layer
10
X 5 -2
1
3
0.25
1
3
-0.25 -2 0.5
FW : RN −→ RK
7−→ FW (x ) = f2 W (2) f1 W (1) · x + b (1) + b (2)
x
Cross-Entropy Loss
K
X
L(FW (x ), y ) = − yk × log(ŷk )
k=1
1 Perceptron
3 Backpropagation
4 Validation croisée
La fonction loss
1 2 1 2
L(ŷ , y ) = (ŷ1 − y1 ) + (ŷ2 − y2 )
2 2
Backward Pass
∂L ∂L
Calculer et
∂z3 ∂z4
∂L ∂L ∂L
Calculer , , et
Forward pass ∂w1 ∂w2 ∂b3
∂L ∂L ∂L
Calculer , , et
La sortie de la couche cachée ∂v1 ∂v2 ∂b4
z1 = u1 x + b1 et a1 = f1 (z1 ) ∂L ∂L ∂z3 ∂L ∂z4 ∂L ∂L ∂z3 ∂L ∂z4
z2 = u2 x + b2 et a2 = f1 (z2 ) = + et = +
∂z1 ∂z3 ∂z1 ∂z4 ∂z1 ∂z2 ∂z3 ∂z2 ∂z4 ∂z2
∂L ∂L ∂L ∂L
La sortie de la couche de sortie Calculer , , , et
∂u1 ∂b1 ∂u2 ∂b2
z3 = w1 a1 + w2 a2 + b3 et a3 = f2 (z3 ) = ŷ1
z4 = v1 a1 + v2 a2 + b4 et a4 = f2 (z4 ) = ŷ2
M. El Ossmani (ENSAM) Machine Learning 2023-2024 12 / 28
Algorithme de Backpropagation
Exemple
∂L
δ3 := = (a3 − y1 )f2′ (z3 )
∂z3
∂L ∂L
δ4 := = (a4 − y2 )f2′ (z4 ) δ1 := = δ3 w1 f1′ (z1 ) + δ4 v1 f1′ (z1 )
∂z4 ∂z1
∂L ∂L
= δ3 a1 δ2 := = δ3 w2 f1′ (z2 ) + δ4 v2 f1′ (z2 )
∂w1 ∂z2
∂L ∂L
= δ3 a2 = δ1 x
∂w2 ∂u1
∂L ∂L
= δ3 = δ1
∂b3 ∂b1
∂L ∂L
= δ4 a1 = δ2 x
∂v1 ∂u2
∂L ∂L
= δ4 a2 = δ2
∂v2 ∂b2
∂L
= δ4
∂b4
M. El Ossmani (ENSAM) Machine Learning 2023-2024 13 / 28
Algorithme de Backpropagation
La fonction objectif (Loss function)
J
1X
E (W ) = L(FW (x j ), y j )
J j=1
sortie.
M. El Ossmani (ENSAM) Machine Learning 2023-2024 14 / 28
Algorithme de Backpropagation
1 Perceptron
3 Backpropagation
4 Validation croisée
Leave-One-Out score 1
Leave-One-Out score 1
score 2
Leave-One-Out score 1
score 2
score 10
Cette méthode est couteuse lorsqu’il s’agit d’un nombre très grand d’échatillons.
M. El Ossmani (ENSAM) Machine Learning 2023-2024 22 / 28
Validation croisée
{score1, }
{score1, score2, }
1 Perceptron
3 Backpropagation
4 Validation croisée
Les hyper-paramètres sont des paramètres qui ne sont pas directement appris dans le modèle. Les
exemples typiques incluent le paramètre de régularisation, l’architecture du réseau, ...
grid={
’learning_rate’: ["constant", "invscaling", "adaptive"],
’hidden_layer_sizes’: [(100,1), (100,2), (100,3)],
’alpha’: [10.0 ** -np.arange(1, 7)],
’activation’: ["logistic", "relu", "Tanh"] }
Utilisation :
model_cv=GridSearchCV(model,grid,cv=10)
model_cv.fit(X,y)