Apprentissage automatique Classification linéaire - fonction discriminante
TYPES D APPRENTISSAGE apprentissage supervisé, classification, régression L apprentissage supervisé est lorsqu on a une cible à prédire RAPPEL classification : la cible est un indice de classe t {1,..., K} - exemple : reconnaissance de caractères x : vecteur des intensités de tous les pixels de l image t : identité du caractère régression : la cible est un nombre réel t R - exemple : prédiction de la valeur d une action à la bourse x : vecteur contenant l information sur l activité économique de la journée t : valeur d une action à la bourse le lendemain 2
TYPES D APPRENTISSAGE apprentissage supervisé, classification, régression L apprentissage supervisé est lorsqu on a une cible à prédire RAPPEL classification : la cible est un indice de classe t {1,..., K} - exemple : reconnaissance de caractères x : vecteur des intensités de tous les pixels de l image t : identité du caractère régression : la cible est un nombre réel t R - exemple : prédiction de la valeur d une action à la bourse x : vecteur contenant l information sur l activité économique de la journée t : valeur d une action à la bourse le lendemain 2
CLASSIFICATION surface de décision, région de décision On chercher à diviser l espace des entrées x en différentes régions de décision R k chaque région de décision est associée à une classe les frontières entre les régions sont des surfaces de décision C k R j R i R k x B 3 x A ˆx
CLASSIFICATION classification binaire, séparabilité linéaire Cas spécial : classification binaire C 1 classe correspond à t = 1 R 1 classe C 2 correspond à t = 0 (ou t = -1) R 2 Cas spécial : classification linéaire la surface de décision entre chaque paire de régions de décision est linéaire, i.e. un hyperplan (droite pour D=2) on dit qu un problème est linéairement séparable si une surface linéaire permet de classifier parfaitement 4
FONCTION DISCRIMINANTE fonction discriminante, vecteur de poids, biais On souhaite apprendre une fonction discriminante qui prend x en entrée et donne sa classe en sortie Dans le cas binaire, on va s intéresser aux fonctions discriminantes qui : 1. calculent une transformation linéaire de l entrée C k y(x) = w T x + w 0 vecteur de poids biais 5 2. retourne si y(x) 0 ou retourne sinon C 1 C 2
FONCTION DISCRIMINANTE fonction discriminante, vecteur de poids, biais y > 0 y = 0 y < 0 x 2 R 2 R 1 y(x) = w T x + w 0 w x y(x) w = r x 6 x = x + r w w w w 0 w x 1
SÉPARABILITÉ LINÉAIRE séparabilité linéaire Est-ce que l hypothèse de séparabilité linéaire est raisonnable? en haute dimensionnalité (grande valeur de D), possiblement! Théorème : soit D+1 entrées x n, on peut toujours les séparer linéairement en 2 classes, quelque soit la valeur de leurs cibles t n Condition : chaque sous-ensemble de D entrées est linéairement indépendant On peut également utiliser une représentation elle est non-linéaire φ(x) qui 7
FONCTION DISCRIMINANTE entraînement Idéalement, on voudrait entraîner y(x) en minimisant directement le taux d erreur de classification sur l ensemble d entraînement malheureusement, on peut démontrer que c est un problème NP-difficile On va donc devoir attaquer le problème indirectement ceci va donner lieu à différents algorithmes d apprentissage 8
Apprentissage automatique Classification linéaire - méthode des moindres carrés
MÉTHODE DES MOINDRES CARRÉS méthode des moindres carrés On va traiter la classification comme un problème de régression on pourrait prédire directement la valeur de la cible (t = 1 vs. t = -1) C 1 C 2 si y(x) 0 on classifie dans sinon On parle de moindres carrés puisque la régression minimise la différence au carré entre t et y(x) 10
RÉGULARISATION régularisation, weight decay, régression de Ridge On peut montrer que la solution (maximum a posteriori) est alors : RAPPEL w = ( λi + Φ T Φ ) 1 Φ T t. dans le cas λ = 0, on retrouve la solution tu maximum de vraisemblance si λ > 0, permet également d avoir une solution plus stable numériquement (si n est pas inversible) Φ T Φ 11
MÉTHODE DES MOINDRES CARRÉS méthode des moindres carrés Pour la cas à plus de deux classes, on va traiter la classification comme un problème de régression à prédiction multiple la cible va être un vecteur binaire indiquant à quelle classe appartient l entrée exemple : s il y a K=5 classes et qu une entrée est de la classe C 2 t = (0, 1, 0, 0, 0) T on classifie dans la classe C k dont la valeur de y(x) k est la plus élevée 12
MÉTHODE DES MOINDRES CARRÉS méthode des moindres carrés Pour la cas à plus de deux classes, on va traiter la classification comme un problème de régression à prédiction multiple la cible va être un vecteur binaire indiquant à quelle classe appartient l entrée exemple : s il y a K=5 classes et qu une entrée est de la classe C 2 t = (0, 1, 0, 0, 0) T on classifie dans la classe C k dont la valeur de y(x) k est la plus élevée 12
PRÉDICTIONS MULTIPLES modèle pour prédictions multiples Le modèle doit maintenant prédire un vecteur : RAPPEL y(x, w) = W T φ(x) où W est une matrice M K Chaque colonne de W peut être vu comme le vecteur w k du modèle y(x,w k ) pour la k e cible 13
PRÉDICTIONS MULTIPLES modèle pour prédictions multiples Le modèle doit maintenant prédire un vecteur : RAPPEL y(x, w) = W T φ(x) où W est une matrice M K Chaque colonne de W peut être vu comme le vecteur w k du modèle y(x,w k ) pour la k e cible classe 13
MAXIMUM DE VRAISEMBLANCE formulation probabiliste pour prédictions multiples On peut démontrer que le maximum de vraisemblance est : ( ) RAPPEL W ML = ( Φ T Φ ) 1 Φ T T On peut voir le résultat comme la concaténation (colonne par colonne) des solutions pour chaque tâche ( ) w k = ( Φ T Φ ) 1 Φ T t k 14 où t k = (t 1,k,..., t N,k ) T iva
Apprentissage automatique Classification linéaire - analyse discriminante linéaire
ANALYSE DISCRIMINANTE LINÉAIRE analyse discriminante linéaire En classification binaire, on cherche en fait une projection y = w T x. telle que le seuil projetées possible y w 0 lassifier di sépare bien le plus d entrées 16
ANALYSE DISCRIMINANTE LINÉAIRE analyse discriminante linéaire L analyse discriminante linéaire cherche plutôt à bien séparer la projection de moyennes, i.e. on maximise : w T (m 2 m 1 ) où m k = w T m k et C m 1 = 1 N 1 n C 1 x n, m 2 = 1 N 2 n C 2 x n. 17
ANALYSE DISCRIMINANTE LINÉAIRE variance intra-classe Jusqu à maintenant, le problème est mal posé il suffit d augmenter w infiniment pour maximiser on pourrait imposer que w soit de norme 1, mais ceci n est pas entièrement satisfaisant En plus, on C va tenter de réduire les variances intraclasse des entrées projetées s 2 k = n C k (y n m k ) 2 18
ANALYSE DISCRIMINANTE LINÉAIRE variance intra-classe, inter-classe On combine ces idées en maximisant plutôt J(w) = (m 2 m 1 ) 2 s 2 1 + s2 2 On peut montrer que la solution est telle que w / S 1 W (m 1 m 2 ) où la matrice de covariance intra-classe est S W = n C 1 (x n m 1 )(x n m 1 ) T + n C 2 (x n m 2 )(x n m 2 ) T 19
ANALYSE DISCRIMINANTE LINÉAIRE variance intra-classe, inter-classe On combine ces idées en maximisant plutôt J(w) = (m 2 m 1 ) 2 s 2 1 + s2 2 On peut montrer que la solution est telle que w / S 1 W (m 1 m 2 ) où la matrice de covariance intra-classe est équivalent à une variance inter-classe S W = n C 1 (x n m 1 )(x n m 1 ) T + n C 2 (x n m 2 )(x n m 2 ) T 19
ANALYSE DISCRIMINANTE LINÉAIRE analyse discriminante linéaire 4 4 2 2 0 0 2 2 2 2 6 Sans minimisation intra-classe w / (m 1 m 2 ) 2 2 6 Avec minimisation intra-classe w / S 1 W (m 1 m 2 ) 20
ANALYSE DISCRIMINANTE LINÉAIRE analyse discriminante linéaire Une fois w calculé, il suffit de trouver un seuil de classification un chois possible est (w T m 1 + w T m 2 )/2 On peut voir l analyse discriminante linéaire comme un cas particulier des moindres carrés voir section 4.1.5 Il est possible de généraliser au cas à plus de 2 classes voir section 4.1.6 21
Apprentissage automatique Classification linéaire - approche probabiliste générative
APPROCHE PROBABILISTE approche probabiliste Prenons plutôt une approche probabiliste on suppose que nos données ont été générées d un modèle probabiliste donné on cherche les paramètres de ce modèle qui maximisent la vraisemblance des données d entraînement Deux options : approche générative : on choisit un modèle pour p(x,t) approche discriminante : on choisit un modèle pour p(t x) 23
APPROCHE PROBABILISTE approche probabiliste Prenons plutôt une approche probabiliste on suppose que nos données ont été générées d un modèle probabiliste donné on cherche les paramètres de ce modèle qui maximisent la vraisemblance des données d entraînement Deux options : approche générative : on choisit un modèle pour p(x,t) approche discriminante : on choisit un modèle pour p(t x) 23
APPROCHE PROBABILISTE GÉNÉRATIVE approche probabiliste générative On va supposer que les données ont été générées selon le processus suivant (cas binaire) : pour n = 1... N 1 denotes c and t n = 0 deno - assigne t n =1 avec probabilité p(c 1 ) = π, et t n =0 avec probabilité p(c 2 ) = 1 π. 1 and hence - si t n =1, génère x n de la loi de probabilité )p(x n C 1 ) = N (x n µ 1, Σ). - sinon (t n =0), génère x n de la loi de probabilité p(x n C 2 ) = )N (x n µ 2, Σ) En mots : les entrées sont des échantillons d une loi gaussienne, mais de moyennes différentes pour les différentes classes 24
APPROCHE PROBABILISTE GÉNÉRATIVE maximum de vraisemblance La probabilité des données d entraînement devient N p(t π, µ 1, µ 2, Σ) = [πn (x n µ 1, Σ)] t n [(1 π)n (x n µ 2, Σ)] 1 t n n=1 Pour entraîner le classifieur, on cherche les paramètres maximise la (log-)vraisemblance (, µ 1, µ 2, ) 25
APPROCHE PROBABILISTE GÉNÉRATIVE maximum de vraisemblance La probabilité des données d entraînement devient N p(t π, µ 1, µ 2, Σ) = [πn (x n µ 1, Σ)] t n [(1 π)n (x n µ 2, Σ)] 1 t n n=1 Cas : on prend le logarithme et garde les termes avec N {t n ln π + (1 t n ) ln(1 π)} n=1 26
APPROCHE PROBABILISTE GÉNÉRATIVE maximum de vraisemblance La probabilité des données d entraînement devient N p(t π, µ 1, µ 2, Σ) = [πn (x n µ 1, Σ)] t n [(1 π)n (x n µ 2, Σ)] 1 t n n=1 Cas : puis cherche le maximum en annulant la dérivée N 27 π = 1 N n=1 t n = N 1 N = N 1 N 1 + N 2 nb. de la classe nb. de la classe C 1 C 2
APPROCHE PROBABILISTE GÉNÉRATIVE maximum de vraisemblance La probabilité des données d entraînement devient N p(t π, µ 1, µ 2, Σ) = [πn (x n µ 1, Σ)] t n [(1 π)n (x n µ 2, Σ)] 1 t n n=1 Cas N µ 1 : on prend le logarithme et garde les termes avec µ 1 N t n ln N (x n µ 1, Σ) = 1 2 t n (x n µ 1 ) T Σ 1 (x n µ 1 ) + const. n=1 n=1 28
APPROCHE PROBABILISTE GÉNÉRATIVE maximum de vraisemblance La probabilité des données d entraînement devient N p(t π, µ 1, µ 2, Σ) = [πn (x n µ 1, Σ)] t n [(1 π)n (x n µ 2, Σ)] 1 t n n=1 Cas µ 1 : puis cherche le maximum en annulant la dérivée µ 1 = 1 N 1 N t n x n n=1 29
APPROCHE PROBABILISTE GÉNÉRATIVE maximum de vraisemblance La probabilité des données d entraînement devient N p(t π, µ 1, µ 2, Σ) = [πn (x n µ 1, Σ)] t n [(1 π)n (x n µ 2, Σ)] 1 t n n=1 Cas µ 2 : de façon similaire, on obtient pour µ 2 µ 2 = 1 N (1 t n )x n N 2 n=1 30
APPROCHE PROBABILISTE GÉNÉRATIVE maximum de vraisemblance Cas : plus compliqué à démontrer, mais on obtient = N 1 N S 1 + N 2 N S 2 1 S 1 = 1 N 1 n C 1 (x n µ 1 )(x n µ 1 ) T covariance empirique de classe C 1 covariance empirique de classe C2 S 2 = 1 N 2 n C 2 (x n µ 2 )(x n µ 2 ) T 31
APPROCHE PROBABILISTE GÉNÉRATIVE règle de Bayes Une fois, µ 1, µ 2, calculés, on peut classifier de nouvelles entrées à l aide de la règle de Bayes p(c 1 x) = p(x C 1 )p(c 1 ) p(x C 1 )p(c 1 ) + p(x C 2 )p(c 2 ) Si p(c 1 x) 0.5, on classifie dans la classe C 1, sinon on classifie dans la classe C 2 1 32
APPROCHE PROBABILISTE GÉNÉRATIVE fonction sigmoïde 1 On peut aussi écrire C C C p(c 1 x) = 1 1 + exp( a) = σ(a) 0.5 où fonction sigmoïde 0 5 0 5 a = ln p(x C 1)p(C 1 ) p(x C 2 )p(c 2 ) d function defined by σ(a) = 1 1 + exp( a) 33
{ APPROCHE PROBABILISTE GÉNÉRATIVE { forme classification linéaire Dans le cas où )p(x n C 1 ) et p(x n C 2 ) sont gaussiennes p(c 1 x) = σ(w T x + w 0 ) où w = Σ 1 (µ 1 µ 2 ) w 0 = 1 2 µt 1 Σ 1 µ 1 + 1 2 µt 2 Σ 1 µ 2 + ln p(c 1) p(c 2 ). 34
{ APPROCHE PROBABILISTE GÉNÉRATIVE { forme classification linéaire Dans le cas où )p(x n C 1 ) et p(x n C 2 ) sont gaussiennes p(c 1 x) = σ(w T x + w 0 ) où w = Σ 1 (µ 1 µ 2 ) w 0 = 1 2 µt 1 Σ 1 µ 1 + 1 2 µt 2 Σ 1 µ 2 + ln p(c 1) p(c 2 ). 1 34
APPROCHE PROBABILISTE GÉNÉRATIVE forme classification linéaire Puisque (0) = 0.5, alors la règle p(c 1 x) 0.5 est w T x + w 0 équivalente à 0 On retrouve donc la forme d un classifieur linéaire 35
APPROCHE PROBABILISTE GÉNÉRATIVE extensions On peut généraliser au cas à multiples classes voir fin des sections 4.2 et 4.2.1 On peut généraliser à des lois )p(x n C 1 ) et p(x n C 2 ) autre que gaussiennes observations binaires, voir section 4.2.3 cas général (famille exponentielle), voir section 4.2.4 36
Apprentissage automatique Classification linéaire - approche probabiliste discriminante
APPROCHE PROBABILISTE approche probabiliste Prenons plutôt une approche probabiliste on suppose que nos données ont été générées d un modèle probabiliste donné on cherche les paramètres de ce modèle qui maximisent la vraisemblance des données d entraînement Deux options : approche générative : on choisit un modèle pour p(x,t) approche discriminante : on choisit un modèle pour p(t x) 38
APPROCHE PROBABILISTE approche probabiliste Prenons plutôt une approche probabiliste on suppose que nos données ont été générées d un modèle probabiliste donné on cherche les paramètres de ce modèle qui maximisent la vraisemblance des données d entraînement Deux options : approche générative : on choisit un modèle pour p(x,t) approche discriminante : on choisit un modèle pour p(t x) 38
APPROCHE PROBABILISTE DISCRIMINANTE { approche probabiliste discriminante, régression logistique Dans le cas génératif, on a vu que la probabilité de classifier dans la classe prend la forme C 1 p(c 1 x) = σ(w T x + w 0 ) Dans le cas discriminant, l idée est d utiliser directement cette forme comme modèle de p(t x) plutôt que maximiser la probabilité jointe p(x,t), on maximise la probabilité conditionnelle p(t x) 39 on appel ce modèle la régression logistique
APPROCHE PROBABILISTE DISCRIMINANTE maximum de vraisemblance Cas génératif : on cherche (, µ 1, µ 2, ) qui maximise N p(t π, µ 1, µ 2, Σ) = [πn (x n µ 1, Σ)] t n [(1 π)n (x n µ 2, Σ)] 1 t n n=1 Cas discriminant : on cherche directement w qui maximise p(t w) = N n=1 y t n n {1 y n } 1 t n où y n = p(c 1 x n ) 40
APPROCHE PROBABILISTE DISCRIMINANTE fonctions de bases On peut facilement remplacer la représentation de l entrée à l aide de fonctions de bases (comme pour la régression) p(c 1 φ) = y(φ) = σ ( w T φ ) est équivalent à (x) ). Here ( ) is the Si les fonctions de bases sont non-linéaires, peut rendre les classes linéairement séparables 41
APPROCHE PROBABILISTE DISCRIMINANTE fonctions de bases 1 1 2 fonctions de bases gaussiennes j x 2 φ 2 { (x µ j) 2 } 0 µ 2 0.5 exp 2s 2 1 µ 1 0 1 0 1 x 1 espace représenté par x 0 0.5 1 φ 1 espace représenté par 42
APPROCHE PROBABILISTE DISCRIMINANTE cross-entropie Maximiser la vraisemblance est équivalent à minimiser la logvraisemblance négative E(w) = ln p(t w) = Malheureusement, minimiser cette fonction ne se fait pas analytiquement N n=1 on va devoir trouver le minimum de façon numérique {t n ln y n + (1 t n ) ln(1 y n )} { cross-entropie (binaire) 43
APPROCHE PROBABILISTE DISCRIMINANTE descente de gradient Descente de gradient initialise la valeur de w aléatoirement durant I itérations - déplace w dans la direction opposée du gradient, w w re(w) E(w) w 1 w 0 44
APPROCHE PROBABILISTE DISCRIMINANTE descente de gradient On peut montrer que le gradient est simplement N E(w) = (y n t n )φ n n=1 où y n = p(c 1 φ n ) e logarithm of th Le nombre d itérations (I) de descente de gradient est un hyper-paramètre on utilise un ensemble de validation pour déterminer quand arrêter 45
APPROCHE PROBABILISTE DISCRIMINANTE extensions La descente de gradient stochastique est souvent préférée en pratique, parce que plus rapide à converger on met à jour w individuellement pour chaque exemple voir section 3.1.3 (description pour la régression) On peut aussi généraliser au cas à multiples classes voir section 4.3.4 46
Apprentissage automatique Classification linéaire - classification à multiples classes
CLASSIFICATION À MULTIPLES CLASSES classification à multiples classes Il est possible d utiliser plusieurs classifieurs binaires pour résoudre un problème de classification à plus de 2 classes Approche one-versus-rest : entraîne K-1 classifieurs, chacun distinguant les entrées d une classe vs. les entrées de toutes les autres classes Approche one-versus-one : entraîne K(K-1)/2 classifieurs, chacun distinguant les entrées d une classe vs. les entrées d une seule autre classe 48
CLASSIFICATION À MULTIPLES CLASSES one-versus-rest? R 1 R 2 C 1 R 3 not C 1 C 2 49 not C 2
CLASSIFICATION À MULTIPLES CLASSES one-versus-one C 1 C 3 R 1 C 1? R 3 C 3 R 2 C 2 C 2 50
CLASSIFICATION À MULTIPLES CLASSES classification à multiples classes Il est possible de résoudre les ambiguïtés en pondérant les votes des classifieurs binaires cas probabiliste : pondérer par la probabilité p(c 1 x) L idéal serait d utiliser la version de l algorithme adaptée à la classification à multiples classes directement 51
Apprentissage automatique Classification linéaire - résumé
MÉTHODE DES MOINDRES CARRÉS résumé de la méthode des moindres carrés Modèle : y(x, w) =w T x + w 0 p(t x, w, β) = N (t y(x, w), β 1 ) ( Entraînement : w = λi + Φ T ) 1 Φ Φ T t. (t = 1 vs. t = -1) (maximum de vraisemblance si λ=0 ou maximum a posteriori si λ>0) Hyper-paramètre : λ Prédiction : si y(x,w) 0, sinon C 1 C 2 53
ANALYSE DISCRIMINANTE LINÉAIRE résumé de l analyse discriminante Modèle : Entraînement : w S 1 W (m 1 m 2 ) w y(x, w) =w T x + w 0 w w 2 w 0 = (w T m 1 + w T m 2 )/2 m 1 = 1 N 1 C n C 1 x n, m 2 = 1 N 2 n C 2 x n. S W = n C 1 (x n m 1 )(x n m 1 ) T + n C 2 (x n m 2 )(x n m 2 ) T Prédiction : si y(x,w) 0, sinon C 1 C 2 54
APPROCHE PROBABILISTE GÉNÉRATIVE { résumé de l approche probabiliste générative Modèle : y(x, w) =w T x + w 0 p(xc n, C 1 ) = πn (x n µ 1, Σ). µ 1 = 1 N 1 N n=1 t n x n µ 2 = 1 N (1 t n )x n N 2 n=1 p(x C n, C 2 ) = (1 π)n (x n µ 2, Σ) Entraînement : (t = 1 vs. t = 0) w = Σ 1 (µ 1 µ 2 ) = N 1 N S 1 + N 2 N S 2 1 p(c 1 )= N 1 N =1 p(c 2) w 0 = 1 2 µt 1 Σ 1 µ 1 + 1 2 µt 2 Σ 1 µ 2 + ln p(c 1) p(c 2 ). 55 Prédiction : si y(x,w) 0, sinon C 1 C 2
APPROCHE { PROBABILISTE DISCRIMINANTE résumé de l approche probabiliste discriminante (régression logistique) Modèle : y(x, w) =w T x + w 0 p(c 1 x) = σ(w T x + w 0 ) Entraînement : descente de gradient (t = 1 vs. t = 0) initialise la valeur de w aléatoirement durant I itérations - X w w (y n t n ) n n 56 Prédiction : si y(x,w) 0, sinon C 1 C 2
MOINDRES CARRÉS VS. RÉGRESSION LOGISTIQUE moindres carrés vs. régression logistique Les résultats pourront être différents entre les algorithmes 4 4 moindres carrés 2 2 rég. logistique 0 0 2 2 4 4 6 6 8 4 2 0 2 4 6 8 8 4 2 0 2 4 6 8 57