Machine Learning
6. SupportVector Machines
Année universitaire 2020-2021 Master IPS
Plan
 Introduction
 Apprentissage supervisé
◦ Régression linéaire
◦ Régression logistique
◦ KNN
◦ Naïve Bayes
◦ Random forrest
◦ SVM
◦ Réseaux de neurones
MIPS 2020-2021 2
Plan
 Introduction
 Apprentissage supervisé
◦ Régression linéaire
◦ Régression logistique
◦ KNN
◦ Naïve Bayes
◦ Random forrest
◦ SVM
◦ Réseaux de neurones
MIPS 2020-2021 3
INTRODUCTION
Rappel
 Apprentissage supervisé
◦ Le plus fréquemment utilisé
◦ L’apprentissage se fait en se basant sur des données
labélisées (i.e. pour lesquelles la valeur à prédire est
déjà connue)
 Régression : la variable à prédire est quantitative
continue
 Classement : la variable à prédire est qualitative
5
MIPS 2020-2021
Rappel
 Apprentissage supervisé
◦ Régression
 Prédiction du nombre de vente d’un produit pour les
prochaines semaines
 Prédiction de l’âge d’une personne en se basant sur sa photo
◦ Classement
 Prédiction si une transaction bancaire est frauduleuse ou pas
 Prédiction de la nature d’une tumeur
 Prédiction si un email est un spam ou pas 6
MIPS 2020-2021
Rappel
 Apprentissage supervisé
◦ Régression
 Régression linéaire, Arbres de décision, Régression
polynomiale, Régression rigide, Régression lasso, Réseaux de
neurones
◦ Classement
 Arbres de décision, KNN, Régression logistique, Naïve
Bayes, SVM, Réseaux de neurones
7
MIPS 2020-2021
SUPPORTVECTOR
MACHINES
 Machines à vecteurs de support ou Séparateur
àVaste Marge
 Basé sur les travaux deVapnik en 1995
 Objectif
◦ Trouver l’hyperplan qui sépare linéairement les
observations appartenant aux deux classes à
discriminer A et B
SVM
9
Une solution possible Une 2e solution
SVM
10
B1
B2
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
B2
Une infinité de solutions possibles!
SVM
11
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
B1 ou B2?
SVM
12
B1
B2
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
 B1 ou B2?
◦ L’hyperplan qui a
la plus grande
marge aura plus
probablement une
meilleure
performance i.e.
plus robuste
SVM
13
B1
B2
b11
b12
b21
b22
margin
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
 B1 ou B2?
◦ Retenir
l’hyperplan qui
maximise la marge
 Séparateur à
vaste marge
SVM
14
B1
B2
b11
b12
b21
b22
margin
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
 B1 ou B2?
◦ Les points sur
lesquels
« s’appuient » les
droites marges
sont les vecteurs
supports
(support vectors)
SVM
15
B1
B2
b11
b12
b21
b22
margin
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
SVM
 Chercher l’hyperplan optimal  chercher
l’hyperplan d’équation a . x + b = 0 (. dénote le
produit scalaire) qui satisfait les deux conditions
suivantes:
1. a.x + b > 0 ssi x ∈ A et a.x + b ≤ 0 ssi x ∈ B
2. Il est le plus loin possible de toutes les observations
(i.e. robuste)
◦ Distance d’une observation x à l’hyperplan =
MIPS 2020-2021 16
SVM
 Étant donnée les observations (xi , yi)
◦ Si yi = 1 alors xi ∈ A
◦ Si yi = -1 alors xi ∈ B
 Chercher l’hyperplan optimal d’équation a . x +
b = 0  trouver le (a,b) t.q
◦ ∀ i yi(a. xi+b) ≥ 1 (i.e. robustesse)
◦ est minimum (i.e. marge maximale)
MIPS 2020-2021 17
SVM
MIPS 2020-2021 18
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
 a.x + b = 1 et
a.x + b = -1
peuvent être
simplifiés en:
y(a.x + b) = 1
SVM
 est minimum (i.e. marge maximale)
MIPS 2020-2021 19
https://towardsdatascience.com/linear-svm-classifier-step-by-step-theoretical-explanation-with-python-implementation-69767437e0e6
• Maximiser la marge  max( )
 min( )  min( )
–
SVM
 Étant donnée les observations (xi , yi)
◦ Si yi = 1 alors xi ∈ A
◦ Si yi = -1 alors xi ∈ B
 Chercher l’hyperplan optimal d’équation a . x +
b = 0  trouver le couple (a , b) tel que
◦ ∀ i yi(a. xi+b) ≥ 1 (i.e. robustesse)
◦ est minimum (i.e. marge maximale)
 Problème d’optimisation sous contraintes
MIPS 2020-2021 20
SVM
 La résolution du problème aboutit à la fonction
◦ Si f(x) > 0 alors x ∈ A (y = 1)
◦ Si f(x) ≤ 0 alors x ∈ B (y = -1)
MIPS 2020-2021 21
Stéphane Tufféry, « Data mining et statistique décisionnelle », TECHNIP, 2010
SVM
 La résolution du problème aboutit à la fonction
◦ Seuls les vecteurs supports ont un non nul
 i.e. l’hyperplan optimal ne dépend que de ces vecteurs
supports  généralement favorable à la robustesse du
modèle
◦ Moins il y a de vecteurs supports plus le modèle est
robuste
MIPS 2020-2021 22
Stéphane Tufféry, « Data mining et statistique décisionnelle », TECHNIP, 2010
SUPPORTVECTOR
MACHINES: CAS NON
SÉPARABLES
 Si non parfaitement séparables?
SVM: Cas non séparables
24
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
 Si non parfaitement séparables?
SVM: Cas non séparables
25
 Certaines observations
sont du « mauvais
côté » de la frontière
 Utiliser un terme
mesurant l’erreur de
classement pour
chaque observation
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
 Si non parfaitement séparables?
◦ Définir pour chaque observation xi un terme ξi
 ξi = 0 si l’observation est du « bon côté » de la marge
 ξi < 1 si l’observation est du « bon côté » de la frontière
mais déborde de la marge
 ξi > 1 si l’observation est du « mauvais côté » de la
frontière mal classée i.e. mal classée
SVM: Cas non séparables
26
 Si non parfaitement séparables?
◦ Les contraintes de recherche de (a , b) deviennent
 ∀ i yi(a. xi+b) ≥ 1 - ξi
 est minimum
◦ C est un paramètre coût qui détermine la tolérance
aux erreurs: plus il est grand, plus la sensibilité aux
erreurs est grande et donc plus l’ajustement du
modèle aux erreurs est grande
SVM: Cas non séparables
27
 Si non parfaitement séparables?
◦ Les contraintes de recherche de (a , b) deviennent
 ∀ i yi(a. xi+b) ≥ 1 - ξi
 est minimum
◦ C est un paramètre coût qui détermine la tolérance
aux erreurs
 Si trop grand  risque de sur-apprentissage
 Si trop petit  risque de sous-apprentissage
SVM: Cas non séparables
28
 Si non parfaitement séparables?
◦ La résolution du problème aboutit à la fonction
SVM: Cas non séparables
29
 Si non linéairement séparables?
SVM: Cas non séparables
30
Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
 Si non linéairement séparables?
◦ Effectuer une transformation ϕ pour passer à un
espace de dimension assez grande pour que les
classes à discriminer soient linéairement séparables
 l’équation de l’hyperplan optimal devient
◦ k(x , x’) = Φ(x). Φ(x’) est le noyau
SVM: Cas non séparables
31
 Si non linéairement séparables?
◦ Sélectionner un noyau parmi plusieurs
 Noyau linéaire: k(x , x’) = x.x’
 Noyau gaussien: k(x , x’) =
 σ est un paramètre à fixer ni trop petit (risque de sur-
apprentissage) ni trop grand (risque de sous-apprentissage)
SVM: Cas non séparables
32
 Si non linéairement séparables?
◦ Sélectionner un noyau parmi plusieurs
 Noyau linéaire: k(x , x’) = x.x’
 Noyau gaussien: k(x , x’) =
 Noyau polynomial: k(x , x’) = (x.x’)d
 Noyau sigmoïdal: k(x , x’) = tanh(ϗ(x.x’)+θ)
 ϗ : gain θ: seuil
SVM: Cas non séparables
33
 Robustesse des modèles obtenus
 Peu affecté par les points aberrants
 Capacité à traiter un grand nombre de variables ou
quand le nb variables >> nb observations
 Capacité à modéliser les phénomènes non linéaires
 Paramétrage permet un certain contrôle
(paramètres C et σ)
Avantages des SVM
34
 Difficulté à fixer les bonnes valeurs des paramètres
 Opacité des modèles obtenus (notamment pour les
noyaux non linéaires)
 Difficulté à traiter les grands datasets (m≥100.000 ;
privilégier la régression logistique)
 Temps de calculs assez longs
Inconvénients des SVM
35
Machine Learning
6. SupportVector Machines
Année universitaire 2020-2021 Master IPS

Machine Learning Support Vector Machines.pdf

  • 1.
    Machine Learning 6. SupportVectorMachines Année universitaire 2020-2021 Master IPS
  • 2.
    Plan  Introduction  Apprentissagesupervisé ◦ Régression linéaire ◦ Régression logistique ◦ KNN ◦ Naïve Bayes ◦ Random forrest ◦ SVM ◦ Réseaux de neurones MIPS 2020-2021 2
  • 3.
    Plan  Introduction  Apprentissagesupervisé ◦ Régression linéaire ◦ Régression logistique ◦ KNN ◦ Naïve Bayes ◦ Random forrest ◦ SVM ◦ Réseaux de neurones MIPS 2020-2021 3
  • 4.
  • 5.
    Rappel  Apprentissage supervisé ◦Le plus fréquemment utilisé ◦ L’apprentissage se fait en se basant sur des données labélisées (i.e. pour lesquelles la valeur à prédire est déjà connue)  Régression : la variable à prédire est quantitative continue  Classement : la variable à prédire est qualitative 5 MIPS 2020-2021
  • 6.
    Rappel  Apprentissage supervisé ◦Régression  Prédiction du nombre de vente d’un produit pour les prochaines semaines  Prédiction de l’âge d’une personne en se basant sur sa photo ◦ Classement  Prédiction si une transaction bancaire est frauduleuse ou pas  Prédiction de la nature d’une tumeur  Prédiction si un email est un spam ou pas 6 MIPS 2020-2021
  • 7.
    Rappel  Apprentissage supervisé ◦Régression  Régression linéaire, Arbres de décision, Régression polynomiale, Régression rigide, Régression lasso, Réseaux de neurones ◦ Classement  Arbres de décision, KNN, Régression logistique, Naïve Bayes, SVM, Réseaux de neurones 7 MIPS 2020-2021
  • 8.
  • 9.
     Machines àvecteurs de support ou Séparateur àVaste Marge  Basé sur les travaux deVapnik en 1995  Objectif ◦ Trouver l’hyperplan qui sépare linéairement les observations appartenant aux deux classes à discriminer A et B SVM 9
  • 10.
    Une solution possibleUne 2e solution SVM 10 B1 B2 Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 11.
    B2 Une infinité desolutions possibles! SVM 11 Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 12.
    B1 ou B2? SVM 12 B1 B2 Tan,Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 13.
     B1 ouB2? ◦ L’hyperplan qui a la plus grande marge aura plus probablement une meilleure performance i.e. plus robuste SVM 13 B1 B2 b11 b12 b21 b22 margin Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 14.
     B1 ouB2? ◦ Retenir l’hyperplan qui maximise la marge  Séparateur à vaste marge SVM 14 B1 B2 b11 b12 b21 b22 margin Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 15.
     B1 ouB2? ◦ Les points sur lesquels « s’appuient » les droites marges sont les vecteurs supports (support vectors) SVM 15 B1 B2 b11 b12 b21 b22 margin Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 16.
    SVM  Chercher l’hyperplanoptimal  chercher l’hyperplan d’équation a . x + b = 0 (. dénote le produit scalaire) qui satisfait les deux conditions suivantes: 1. a.x + b > 0 ssi x ∈ A et a.x + b ≤ 0 ssi x ∈ B 2. Il est le plus loin possible de toutes les observations (i.e. robuste) ◦ Distance d’une observation x à l’hyperplan = MIPS 2020-2021 16
  • 17.
    SVM  Étant donnéeles observations (xi , yi) ◦ Si yi = 1 alors xi ∈ A ◦ Si yi = -1 alors xi ∈ B  Chercher l’hyperplan optimal d’équation a . x + b = 0  trouver le (a,b) t.q ◦ ∀ i yi(a. xi+b) ≥ 1 (i.e. robustesse) ◦ est minimum (i.e. marge maximale) MIPS 2020-2021 17
  • 18.
    SVM MIPS 2020-2021 18 Tan,Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“  a.x + b = 1 et a.x + b = -1 peuvent être simplifiés en: y(a.x + b) = 1
  • 19.
    SVM  est minimum(i.e. marge maximale) MIPS 2020-2021 19 https://towardsdatascience.com/linear-svm-classifier-step-by-step-theoretical-explanation-with-python-implementation-69767437e0e6 • Maximiser la marge  max( )  min( )  min( ) –
  • 20.
    SVM  Étant donnéeles observations (xi , yi) ◦ Si yi = 1 alors xi ∈ A ◦ Si yi = -1 alors xi ∈ B  Chercher l’hyperplan optimal d’équation a . x + b = 0  trouver le couple (a , b) tel que ◦ ∀ i yi(a. xi+b) ≥ 1 (i.e. robustesse) ◦ est minimum (i.e. marge maximale)  Problème d’optimisation sous contraintes MIPS 2020-2021 20
  • 21.
    SVM  La résolutiondu problème aboutit à la fonction ◦ Si f(x) > 0 alors x ∈ A (y = 1) ◦ Si f(x) ≤ 0 alors x ∈ B (y = -1) MIPS 2020-2021 21 Stéphane Tufféry, « Data mining et statistique décisionnelle », TECHNIP, 2010
  • 22.
    SVM  La résolutiondu problème aboutit à la fonction ◦ Seuls les vecteurs supports ont un non nul  i.e. l’hyperplan optimal ne dépend que de ces vecteurs supports  généralement favorable à la robustesse du modèle ◦ Moins il y a de vecteurs supports plus le modèle est robuste MIPS 2020-2021 22 Stéphane Tufféry, « Data mining et statistique décisionnelle », TECHNIP, 2010
  • 23.
  • 24.
     Si nonparfaitement séparables? SVM: Cas non séparables 24 Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 25.
     Si nonparfaitement séparables? SVM: Cas non séparables 25  Certaines observations sont du « mauvais côté » de la frontière  Utiliser un terme mesurant l’erreur de classement pour chaque observation Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 26.
     Si nonparfaitement séparables? ◦ Définir pour chaque observation xi un terme ξi  ξi = 0 si l’observation est du « bon côté » de la marge  ξi < 1 si l’observation est du « bon côté » de la frontière mais déborde de la marge  ξi > 1 si l’observation est du « mauvais côté » de la frontière mal classée i.e. mal classée SVM: Cas non séparables 26
  • 27.
     Si nonparfaitement séparables? ◦ Les contraintes de recherche de (a , b) deviennent  ∀ i yi(a. xi+b) ≥ 1 - ξi  est minimum ◦ C est un paramètre coût qui détermine la tolérance aux erreurs: plus il est grand, plus la sensibilité aux erreurs est grande et donc plus l’ajustement du modèle aux erreurs est grande SVM: Cas non séparables 27
  • 28.
     Si nonparfaitement séparables? ◦ Les contraintes de recherche de (a , b) deviennent  ∀ i yi(a. xi+b) ≥ 1 - ξi  est minimum ◦ C est un paramètre coût qui détermine la tolérance aux erreurs  Si trop grand  risque de sur-apprentissage  Si trop petit  risque de sous-apprentissage SVM: Cas non séparables 28
  • 29.
     Si nonparfaitement séparables? ◦ La résolution du problème aboutit à la fonction SVM: Cas non séparables 29
  • 30.
     Si nonlinéairement séparables? SVM: Cas non séparables 30 Tan, Steinbach, Kumar, Eick, “NN-classifiers and Support Vector Machines“
  • 31.
     Si nonlinéairement séparables? ◦ Effectuer une transformation ϕ pour passer à un espace de dimension assez grande pour que les classes à discriminer soient linéairement séparables  l’équation de l’hyperplan optimal devient ◦ k(x , x’) = Φ(x). Φ(x’) est le noyau SVM: Cas non séparables 31
  • 32.
     Si nonlinéairement séparables? ◦ Sélectionner un noyau parmi plusieurs  Noyau linéaire: k(x , x’) = x.x’  Noyau gaussien: k(x , x’) =  σ est un paramètre à fixer ni trop petit (risque de sur- apprentissage) ni trop grand (risque de sous-apprentissage) SVM: Cas non séparables 32
  • 33.
     Si nonlinéairement séparables? ◦ Sélectionner un noyau parmi plusieurs  Noyau linéaire: k(x , x’) = x.x’  Noyau gaussien: k(x , x’) =  Noyau polynomial: k(x , x’) = (x.x’)d  Noyau sigmoïdal: k(x , x’) = tanh(ϗ(x.x’)+θ)  ϗ : gain θ: seuil SVM: Cas non séparables 33
  • 34.
     Robustesse desmodèles obtenus  Peu affecté par les points aberrants  Capacité à traiter un grand nombre de variables ou quand le nb variables >> nb observations  Capacité à modéliser les phénomènes non linéaires  Paramétrage permet un certain contrôle (paramètres C et σ) Avantages des SVM 34
  • 35.
     Difficulté àfixer les bonnes valeurs des paramètres  Opacité des modèles obtenus (notamment pour les noyaux non linéaires)  Difficulté à traiter les grands datasets (m≥100.000 ; privilégier la régression logistique)  Temps de calculs assez longs Inconvénients des SVM 35
  • 36.
    Machine Learning 6. SupportVectorMachines Année universitaire 2020-2021 Master IPS