Aix-Marseille Université Laboratoire d’Informatique Fondamentale de Marseille Thèse présentée pour obtenir le grade de Docteur d’Aix-Marseille Université Délivré par l’Université de Provence Spécialité: Informatique par Guillaume Stempfel Robustesse des Séparateurs Linéaires au Bruit de Classification Thèse soutenue publiquement le 09 Octobre 2009 Mme M. M. M. M. M. Florence d’Alché-Buc, Université d’Évry-Val d’Essonne François Denis, Aix-Marseille Université Rémi Gilleron, Université Charles-de-Gaulle Lille 3 Yves Grandvalet, Université de Technologie de Compiègne Jérome Mainka, Antidot Liva Ralaivola, Aix-Marseille Université (Examinatrice) (Examinateur) (Rapporteur) (Rapporteur) (Examinateur) (Directeur de Thèse) Table des matières Table des matières iii Introduction I 1 11 Préliminaires 1 Classification supervisée et bruit de classification 1.1 1.2 1.3 1.4 1.5 Bases de la Classification Supervisée . . . . . . Bruit de Classification . . . . . . . . . . . . . . . Bruit Cccn et Semi-supervisé . . . . . . . . . . . . Une Heuristique pour Estimer les Taux de Bruit Le Cadre PAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Bornes de Généralisation et Complexité de Classes de Concepts 2.1 2.2 Dimension de Vapnik-Chervonenkis . . . . . . . . . . . . . Complexité de Rademacher . . . . . . . . . . . . . . . . . . 31 33 36 Structure Type pour l’Établissement d’une Borne de Généralisation . . . . . . . . . . . . . . . . . . . . . . . . . 38 2.2.1 3 Noyaux de Mercer et Réduction de Dimension 3.1 3.2 3.3 II 13 14 19 23 24 25 Noyaux de Mercer et Astuce du Noyau . . . . . . . . . . . Réduction de Dimension par Projections Déterministes Réduction de Dimension par Projections Aléatoires . . Perceptrons et Bruit de Classification 4 Un Premier Algorithme : le Perceptron Linéaire 41 42 45 48 51 L’Algorithme du Perceptron . . . . . . . . . . . . . . . . . Perceptron et Bruit de Classification . . . . . . . . . . . 53 54 56 5 Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau 63 4.1 4.2 5.1 5.2 5.3 5.4 5.5 Un Nouveau Modèle d’Altération des Données : le Bruit Mixte . . . . . . . . . . . . . . . . . . . . . . . . . . . . Perceptrons et Tolérance au Bruit Mixte . . . . . . . . . Perceptrons et Projections Aléatoires, vers la Dimension Infinie . . . . . . . . . . . . . . . . . . . . . . . . . . . . Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 67 75 77 80 iii III Machines à Vecteurs de Support et Bruit de Classification 6 Machines à Vecteurs de Support et Tolérance au Bruit 6.1 6.2 6.3 6.4 6.5 Machines à Vecteurs de Support . Optimisation dans le Dual . . . . Optimisation dans le Primal . . . Algorithme par Plans Sécants . . Tolérance au Bruit des Svm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 85 86 91 92 94 99 7 nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 101 7.1 7.2 7.3 7.4 7.5 7.6 Les Svm ne sont pas Cn-tolérantes . . . . . . . . . . . . Un Programme d’Optimisation pour les Svm Bruitées Analyse de la Solution de nSvm . . . . . . . . . . . . . . Résoudre nSvm . . . . . . . . . . . . . . . . . . . . . . . . . Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.1 Données Synthétiques . . . . . . . . . . . . . . . . . . 7.5.2 Problèmes Uci . . . . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 111 114 120 122 122 123 124 8 Un Algorithme à Plans Sécants pour la Résolution de nSvm 127 8.1 8.2 8.3 8.4 8.5 8.6 Description Haut Niveau de l’Approche L’Algorithme Scpa . . . . . . . . . . . . . Analyse de la Convergence de Scpa . . . Simulations . . . . . . . . . . . . . . . . . . Simulations . . . . . . . . . . . . . . . . . . . . . . . Simulations Semi-Supervisées Asymétriques . . . . . . 8.5.1 . 8.5.2 Application Pratique au Jeu de Données Images Corel . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 129 130 134 137 137 138 141 145 A Annexes 149 A.1 Preuve du Lemme 5.2 . . . . . . . . . . . . . . . . . . . . . . 149 A.2 Preuve du Lemme 8.1 . . . . . . . . . . . . . . . . . . . . . . 150 A.3 Borne de Chernoff . . . . . . . . . . . . . . . . . . . . . . . 151 iv Bibliographie 153 Résumé 165 Introduction Généralement considérée comme une des disciplines de l’intelligence artificielle, l’apprentissage automatique est fortement lié, entre autres, aux statistiques, à la théorie des probabilités, aux sciences cognitives et bien sûr à l’informatique théorique. Elle consiste en la conception et l’analyse de méthodes non triviales, d’algorithmes permettant à une machine, à partir d’un ensemble de données ou de mesures, d’effectuer automatiquement des tâches complexes comme la prise intelligente de décision ou la reconnaissance de motifs. Le champ des applications de l’apprentissage automatique est très large et se situe dans des domaines aussi divers que la biologie, la chimie, la robotique, la linguistique et les technologies web. Citons quelques exemples de problèmes qu’il est possible de résoudre en utilisant des techniques relevant de l’apprentissage automatique. D’abord, considérons un site internet de vente par correspondance. Celui-ci souhaite mettre en place un système de recommandation automatique, en conseillant à un acheteur des produits pouvant l’intéresser. Une des approches possibles consiste, à partir des commandes précédemment effectuées et des pages visitées par chaque utilisateur, à identifier des groupes de clients au comportement proche grâce à une méthode d’apprentissage non supervisée ou de clustering. Ainsi, on pourra orienter l’internaute vers des produits commandés par des utilisateurs aux centres d’intérêt similaires. Second exemple, la poste américaine s’est intéressée dans les années 1980 au problème de la reconnaissance de chiffres manuscrits, afin d’être capable de diriger automatiquement le courrier en fonction du code postal. On dispose au départ d’une base de données (un ensemble d’apprentissage) constituée de quelques milliers de chiffres, provenant de scripteurs différents, et identifiés, par un être humain, comme appartenant à une classe donnée, c’est-à-dire comme étant un 0, un 1, un 8... A partir de ces exemples munis d’une classe, ou étiquette, l’objectif est de calculer une fonction capable d’associer automatiquement une classe (de catégoriser) à un chiffre manuscrit ne provenant pas de l’ensemble d’apprentissage. C’est à ce type de problèmes de classification supervisée que nous nous intéressons dans ce manuscrit. Enfin, dernier exemple, la conception d’un mini-hélicoptère capable de voler à l’envers en vol stationnaire. Une stratégie envisageable consiste à avoir recours à l’apprentissage par renforcement. L’hélicoptère va effectuer des vols successifs et sera récompensé (positivement ou négativement) suivant ses actions à chaque étape d’un vol. Par exemple, la récompense sera positive lorsque l’hélicoptère réussira à se retourner. Ainsi, l’hélicoptère va, au cours de cette séquence d’expériences (autrement dit de ces vols successifs), rechercher le comportement lui permettant de maximiser les récompenses obtenues jusqu’à atteindre le maximum, lorsque le véhicule est en vol stationnaire inversé. 1 2 Introduction C’est à la classification supervisée que nous nous intéressons dans ce document. Cet ensemble de problèmes peut être globalement résumé de la manière suivante : on dispose initialement d’une certaine quantité d’exemples décrit par un ensemble de variables (ou attributs), constituant un échantillon d’apprentissage, chaque exemple étant associé à une étiquette. Le but est alors de construire, grâce à cet échantillon, une fonction de classification (une fonction associant une classe à une description) pouvant prédire correctement la classe de nouveaux exemples qui lui seront présentés, c’est-à-dire de généraliser au mieux. De nombreux types d’algorithmes ont été proposés pour résoudre ces problèmes de catégorisation. Tout d’abord, la méthode des k plus proches voisins (Cover et Hart [1967]). Cette méthode, qualifiée de paresseuse puisque ne nécessitant pas d’apprentissage à proprement parler, consiste à choisir la classe majoritaire parmi les k exemples (de l’ensemble d’apprentissage) les plus proches de l’exemple que nous cherchons à classifier. Les k-plusproches voisins permettent ainsi une classification extrêmement simple. Le choix de la distance utilisée est crucial, la qualité de la classification en dépendant grandement. Autre famille d’algorithmes utilisée pour la classification supervisée, les arbres de décision, qui sont encore très populaires. Ces procédures construisent des classifieurs ayant la forme d’arbre : chaque noeud représente une règle de décision, et chaque feuille une classe. Pour classer un exemple, il suffit donc de parcourir l’arbre depuis la racine, en choisissant à chaque noeud, selon la règle de décision associée, la branche correspondant à l’exemple que l’on classe, jusqu’à arriver à une feuille et renvoyer l’étiquette correspondante. Il existe plusieurs algorithmes pour l’apprentissage d’arbres de décision ; on peut citer parmi les plus répandus CART (Breiman et coll. [1984]) et C4.5 (Quinlan [1993]). Ces algorithmes présentent l’avantage d’être assez performants en général et surtout de produire des classifieurs très facilement lisibles et interprétables, y compris pour des non-initiés, et peuvent ainsi être facilement destinés à la sélection d’attributs. Le classifieur naïf de Bayes est un classifieur probabiliste introduit dans Minsky [1961] et qui utilise la règle de Bayes. Le qualificatif ’naïf’ provient d’une l’hypothèse très forte : chaque caractéristique descriptive des données est considérée comme indépendante de toutes les autres étant donné la classe. L’apprentissage se fait ensuite en maximisant la vraisemblance. Malgré l’hypothèse naïve, le comportement de l’algorithme s’avère souvent satisfaisant, y compris sur des données complexes, et même en présence d’un échantillon d’apprentissage de taille réduite. Introduit dans Rosenblatt [1958] ; Block [1962], le perceptron linéaire est un algorithme destiné à la classification linéaire binaire (à deux classes), c’est-à-dire au calcul d’hyperplans de séparation. Le fonctionnement de l’algorithme est simple : il repose sur une mise à jour itérative du classifieur à l’aide d’un exemple mal classé. Si les données d’apprentissage sont séparables linéairement, alors l’algorithme est prouvé convergent avec une une borne polynomiale sur le nombre maximal d’itérations (Minsky et Papert [1969]). Par contre, dans le cas contraire, l’algorithme échoue à produire un hyperplan séparateur. Introduction Par palier ce défaut, il est possible de combiner des perceptrons sous la forme de perceptrons multi-couches (ces classifieurs font partie de la famille des réseaux de neurones artificiels, Hopfield [1988]). Inspiré schématiquement par le fonctionnement de neurones biologiques, le perceptron multi-couches est composé d’une succession de couches de neurones (de perceptrons linéaires), chaque neurone étant relié aux neurones de la couche précédente par des synapses et calculant une somme pondérée des sorties des neurones de la couche précédente. La phase d’apprentissage consiste à rechercher pour chaque neurone la pondération optimale pour l’ensemble d’apprentissage considéré. Les perceptrons multi-couches permettent d’aborder des problèmes non linéaires plus complexes mais ils présentent deux inconvénients principaux. Tout d’abord, l’apprentissage est difficile à mettre en oeuvre puisqu’il demande la minimisation d’une fonction de coût non-convexe. Ensuite, interpréter le classifieur obtenu est une tâche très ardue. Basés également sur la combinaison de classifieurs simples (par exemple, des arbres de décision constitués d’une unique règle de décision), les algorithmes de boosting se sont fortement développé dans les années 1990 (Adaboost, Freund et Schapire [1997]). Ces procédures consistent à construire itérativement un classifieur complexe à partir de classifieurs faibles (c’est-à-dire ayant un taux d’erreur éventuellement proche de 50% sur l’ensemble d’apprentissage). A chaque itération, le poids de chaque exemple de l’échantillon d’apprentissage est modifié en fonction de la décision du classifieur fort (fonction qui combine les classifieurs faibles calculés lors des itérations précédentes). Enfin, dernier algorithme d’apprentissage que nous abordons, les machines à vecteurs de support (ou Svm, Vapnik [1998]). Ce programme d’optimisation produit un séparateur linéaire qui tente de classifier correctement les exemples de l’échantillon d’apprentissage, tout en maximisant la marge (c’est-à-dire la distance entre le classifieur et les exemples d’apprentissage). Maximiser la marge permet, en effet, de bénéficier de bonnes propriétés théoriques de généralisation. Ces bonnes propriétés théoriques proviennent également des caractéristiques parcimonieuses des Svm (Vapnik [1995]), c’est-à-dire de la possibilité d’exprimer le classifieur calculé en fonction d’un nombre réduit d’instances d’apprentissage. Nous différencions deux types de Svm : si les Svm à marge dure sont uniquement destinées à la classification de problèmes linéaires, les CSvm (ou Svm à marge douce), par l’ajout de variables d’écart au programme d’optimisation, permettent quelques erreurs sur l’échantillon d’apprentissage afin de maximiser la marge, et donc d’aborder des problèmes qui ne sont pas totalement linéairement séparables. Le travail présenté ici s’intéresse à l’apprentissage de séparateurs linéaires et donc se concentre particulièrement aux algorithmes du perceptron linéaire et des machines à vecteurs de support à marge douce. Les arguments nous permettant de nous limiter à l’apprentissage d’hyperplans sont multiples : tout d’abord, ces algorithmes d’apprentissage sont simples à mettre en oeuvre et relativement répandus. Ensuite, de cette manière, nous limitons la complexité de la classe de fonctions considérée. Contrôler cette complexité est un enjeu important, puisqu’elle influe directement sur 3 4 Introduction les capacités théoriques de généralisation d’un classifieur. Toutefois, ces deux algorithmes paraissent présenter des limitations assez nettes : l’algorithme du perceptron linéaire ne converge pas si l’échantillon d’apprentissage n’est pas séparable. Et, même si le classifieur calculé par Csvm peut faire quelques erreurs sur l’ensemble d’apprentissage, elles ne peuvent, a priori, apprendre des fonctions de classification complexes. Le monde n’est malheureusement pas linéairement séparable. Nous avons alors recours à l’astuce du noyau. Ce ’truc’ permet, sous condition du choix d’un noyau de Mercer adéquat, de plonger les données dans un espace virtuel de très grande dimension (potentiellement infinie) où ces données sont linéairement séparables. Ainsi, il devient possible d’utiliser un algorithme de classification linéaire classique dans l’espace de plongement, et de calculer ainsi une fonction qui classe correctement l’ensemble d’apprentissage même si celui-ci n’est pas linéairement séparable. Cette stratégie est très intéressante, puisque des méthodes simples comme le perceptron linéaire peuvent ainsi s’appliquer sur des problèmes plus complexes, et donc nous évite le recours à l’apprentissage d’un perceptron multi-couches, par exemple, beaucoup plus lourd à mettre en oeuvre. En conclusion, nous parlons donc dans ce manuscrit essentiellement de classification linéaire, tout en gardant toujours à l’esprit que l’astuce du noyau rend possible son extension à des problèmes non linéairement séparables. Nous nous intéressons à l’apprentissage de séparateurs linéaires dans un cadre particulier, celui du bruit. Il n’est pas rare, en pratique, que les données dont nous disposons pour l’apprentissage soient altérées, par un ensemble de processus que nous regrouperons sous la dénomination de bruit. Par exemple, supposons que nos données soient obtenues par un ensemble de capteurs. L’un de ces capteurs est malheureusement défectueux, sans que l’on soit capable de le détecter. Les informations enregistrées, qui constituent l’ensemble d’apprentissage, s’avèrent donc être en partie erronées. Autre exemple, un problème de bioinformatique où l’on souhaite apprendre la fonction de protéines. L’ensemble d’apprentissage est constitué par un spécialiste humain, en décrivant du mieux possible un certain nombre de protéines. Malheureusement, cette description est difficile à effectuer, certains attributs peuvent être impossibles à évaluer, d’autres erronés. Ainsi, les descriptions de certains exemples s’avèrent être fausses ou incomplètes. Dans ces deux exemples, l’altération des données d’apprentissage risque d’induire nos algorithmes en erreur, et donc de faire échouer l’apprentissage. Pourtant, à condition d’être capable de gérer ce bruit, il est probablement encore possible d’extraire des caractéristiques intéressantes de ces données. La gestion du bruit est donc un enjeu très important en apprentissage. Parmi les travaux s’étant attaqués à l’apprentissage dans le cadre de bruit, on peut tout d’abord citer ceux s’intéressant à une altération de la description des données par un bruit blanc gaussien (pour illustrer, l’apprentissage de réseaux de neurones dans Saad et Solla [1996]). De son coté, Dempster et coll. [1977] s’intéresse à l’apprentissage de bayésiens par l’algorithme Em dans le cadre de données incomplètes. D’autres articles se sont intéressés à la détection d’outliers, c’est-à-dire d’exemples aberrants (Hawkins [1980] ; Aggarwal et Yu [2001]). On peut également Introduction citer les travaux ayant pour sujet le bruit malicieux (Kearns et Li [1988]). Sous cette hypothèse de bruit, une certaine proportion des exemples est décrite de manière aléatoire. Ainsi, dans ce cadre, Servedio [2003] s’intéresse au boosting alors que Auer et Cesa-Bianchi [1998] se concentre sur l’apprentissage en ligne de perceptrons. Notre intérêt se porte particulièrement sur le bruit de classification, c’està-dire sur un processus de bruit modifiant la classe de certains exemples de l’ensemble d’apprentissage. Le problème est alors rendu plus difficile puisque la procédure d’apprentissage est induite en erreur par ces exemples mal classés et que l’objectif reste, en ayant accès uniquement à ces données bruitées, de produire un classifieur capable de prédire correctement la classe (et donc de faire très peu d’erreurs) de nouvelles données qui seront fournies. Nous nous limitons par la suite à des problèmes binaires (i.e, à deux classes). Parmi les bruits de classification que l’on peut relever dans la littérature, on peut citer le bruit monotone, altérant plus fortement les données proches de la surface de décision (Bylander [1998]). Autre exemple, le bruit de classification constant par morceaux (ou Cpcn, Decatur [1997]). Dans ce cadre, l’espace de description est partitionné, à chaque partition étant associé une probabilité de voir un exemple être bruité. Nous nous concentrons particulièrement sur deux types de bruits de classification : d’abord, le bruit de classification uniforme (ou Cn, Angluin et Laird [1988]), où tous les exemples ont la même probabilité de voir leur classe inversée. Ensuite, le bruit de classification constant par classe (ou Cccn, Decatur [1997]), où cette probabilité dépend de la classe (positive ou négative) de l’exemple considéré. Au-delà des arguments classiques (être capable de notamment pallier les erreurs d’étiquetage), savoir gérer le bruit Cccn permet d’aborder différents problèmes d’apprentissage. Tout d’abord, le cadre semi-supervisé asymmétrique (Denis [1998]) où l’on dispose uniquement d’exemples d’une classe (disons positifs) et non étiquetés, peut se ramener à un problème Cccn. Ce type de problèmes est courant dans les domaines (par exemple, biologie) où l’étiquetage d’une donnée s’avère particulièrement fastidieux. Il suffit alors d’étiqueter en tant que négatifs la totalité des exemples sans étiquette. Nous sommes alors en présence d’un cas de classification Cccn particulier avec un bruit nul sur les négatifs, et strictement supérieur à 0 sur les positifs. Ainsi, les théorèmes que l’on obtiendra dans le cadre Cccn seront immédiatement extensibles à ce type de problèmes semi-supervisés. Deuxième type de problèmes que l’on peut aborder via des algorithmes tolérant, est l’apprentissage multi-instances, de sacs de données (Zhou [2004]). Les données se présentent comme étant un ensemble de descriptions. Une donnée est étiqueté comme positive si au moins une des données qui la compose est positive. En illustration, prenons un site web, où chaque page comporte plusieurs photos. Nous cherchons les photos où apparaissent des chats. Pour constituer l’ensemble d’apprentissage, au lieu d’effectuer l’étiquetage photo par photo, il est possible d’étiqueter page par page, dans le but d’économiser du temps humain. Une page est considérée comme positive si au moins une des photos qui la compose représente effectivement un chat. Pour aborder ce type de problèmes, il suffit d’étiqueter comme positives l’ensemble des descrip- 5 6 Introduction tions composant une donnée positif, et comme négatives celles composant une donnée négative. On se retrouve ainsi dans un cadre Cccn avec un bruit non nul sur les négatifs (Lawrence et Schölkopf [2001]). Parmi les contributions ayant attrait sur la tolérance au bruit de classification, on peut citer les travaux sur les requêtes statistiques (Kearns [1998]), l’apprentissage d’arbres de décision (Sakakibara [1993]), sur le boosting (Lugosi et Vayatis [2003] ; Kalai et Servedio [2005]), sur le classifieur naïf de Bayes (Denis et coll. [2006]) où au discriminant linéaire de Fisher (Lawrence et Schölkopf [2001]). Deux problèmes nous intéressent particulièrement. D’abord l’apprentissage de perceptrons linéaires sur des problèmes altérés par un bruit de classification uniforme. De nombreux articles dans les années 90, se sont intéressés à ce problème, par exemple Bylander [1994] ; Blum et coll. [1996] ; Cohen [1997]. Ces algorithmes sont basés sur l’utilisation de la régularité du bruit de classification pour calculer un vecteur de mise à jour à chaque itération du perceptron. Ils sont accompagnés d’analyses théoriques démontrant que leur complexité en temps et en échantillonnage sont polynomiales, notamment en fonction de la dimension de l’espace. Or, dans le cadre de l’utilisation de méthodes à noyau, l’espace utilisé pour l’apprentissage est l’espace de plongement, de très grande dimension, potentiellement infinie. Dans ce dernier cas, la convergence de ces algorithmes n’est théoriquement plus assurée. Nous nous efforçons donc de proposer un algorithme d’apprentissage basé sur un perceptron linéaire tolérant au bruit Cn et dont les complexités en échantillonnage et en temps sont indépendantes de la dimension de l’espace. Ensuite, l’apprentissage de séparateurs à large marge dans le cadre du bruit de classification constant par classe. Intuitivement, les CSvm semblent, grâce à la marge douce, capables de gérer un bruit de classification sur les données. En effet, sous certaines conditions, CSvm tolère un bruit de classification uniforme. Les articles de Steinwart [2002] et Bartlett et coll. [2005] exposent ces conditions, Malheureusement, celles-ci ne nous satisfont pas. Elles consistent notamment en une condition d’universalité du noyau. Même si certains noyaux usuels sont universels (comme le noyau gaussien), ce n’est pas le cas pour, par exemple, le noyau linéaire. Lorsqu’on aborde des problèmes spécifiques, et que l’on veut créer un noyau ad-hoc, il paraît très contraignant de s’assurer de l’universalité du noyau conçu. De plus, l’algorithme CSvm n’est pas adapté à des problèmes Cccn, puisque la minimisation du risque empirique n’est pas une stratégie valide dans ce cadre. Nous recherchons donc une approche permettant d’obtenir des classifieurs à large marge, via l’usage de machines à vecteurs de support, sur des données altérées par un bruit Cccn. L’objectif du travail présenté ici est donc d’étudier l’apprentissage de séparateurs linéaires (autrement dit d’hyperplans qui permettent d’envisager l’usage de noyaux) sur des données altérées par différents processus de bruit de classification. Nous proposons des algorithmes d’apprentissage efficaces, dérivés de techniques existantes, mais rendus (et prouvés) tolérants à certains types de bruit donné. Par efficace, nous entendons capable d’apprendre à partir des données bruitées, une fonction de classification performante sur des données non altérées, en temps raisonnable et donc Introduction avec un accès à seulement un nombre restreint d’exemples d’apprentissage. Autre objectif, afin de pouvoir s’adapter à un spectre de problèmes le plus large possible, nous essayons au maximum de rendre les bornes de convergence de nos algorithmes indépendantes de la dimension de l’espace, et ce afin de légitimer l’utilisation de tout type de noyau de Mercer. Enfin, afin de montrer leur efficacité pratique, nos procédures passeront systématiquement à l’épreuve du benchmark sur des données Uci. Divers travaux issues de cette thèse ont été publiés en Conférences Nationales (Stempfel et Ralaivola [2007a] ; Stempfel et coll. [2008] ; Stempfel et Ralaivola [2009a]) et Internationales (Stempfel et Ralaivola [2007b, 2009b]). Un travail annexe a également été publié dans Ralaivola et coll. [2009]. Stempfel et coll. [2008] a reçu le prix du Meilleur Papier Jeune Chercheur de CAp 2008. Ce mémoire sera organisé en 3 parties et 8 chapitres : La première partie introduit quelques généralités nécessaires au développement du sujet de ce manuscrit. Dans le Chapitre 1, nous abordons les notions de base relatives à la classification supervisée, en précisant les raisons nous poussant à nous limiter au cas des séparateurs linéaires, et à la classification binaire (ou à deux classes). Nous détaillons les deux types de bruit de classification auxquels nous nous intéressons : le bruit de classification uniforme, processus inversant les étiquettes des exemples de l’échantillon avec une probabilité donnée, et le bruit de classification constant par classe (ou Cccn), où l’inversion d’une étiquette se fait selon une probabilité dépendant de la classe de l’exemple considéré. Nous exposons également quelques applications possibles du bruit Cccn, ainsi qu’une heuristique permettant d’estimer les taux de bruit altérant les données lorsque ceux-ci sont inconnus. Enfin, nous définissons le cadre Pac (ou probablement approximativement correct), cadre théorique permettant de caractériser les algorithmes capables d’apprendre une classe de concepts de manière efficace, c’est-à-dire en temps polynomial (en fonction de la dimension de l’espace, d’un paramètre de confiance et d’un paramètre de précision) et à l’aide d’un échantillon de taille polynomiale. Nous essayons autant que possible de travailler à l’intérieur de ce cadre par la suite. Le second Chapitre, plus technique, est consacré aux bornes de généralisation et aux complexités de classes de fonctions. Nous abordons essentiellement deux mesures de complexité : dans un premier temps, la mesure apparue à la naissance l’apprentissage statistique, la dimension de Vapnik-Chervonenkis. Seconde grandeur à laquelle nous nous intéressons, notamment pour son aspect dépendant des données, aspect permettant d’élaborer des bornes plus précises : la complexité de Rademacher. Pourquoi s’intéresser à ces notions de complexité de classe de fonctions ? Tout simplement parce qu’elles seront à la base de nos démonstrations, permettant de produire des bornes de précision pour un estimateur, des bornes uniformes sur un ensemble de fonctions. Grâce à ces mesures de complexité, nous avons la capacité de proposer des bornes supérieures sur les complexités en échantillonnage de nos algorithmes. Le Chapitre 3 est lui dédié à l’usage des noyaux de Mercer et à la réduction de dimension. Évidemment, le parti-pris de nous limiter à la classe des séparateurs linéaires interdit a priori d’aborder beaucoup de problèmes réels, en l’oc- 7 8 Introduction currence dès l’instant où les données ne sont pas totalement séparables par un hyperplan. Pourtant, l’usage de noyaux de Mercer (et l’astuce du noyau que nous développerons plus tard) permet l’apprentissage sur des distributions non linéairement séparables avec des algorithmes de séparation linéaire. Un noyau bien choisi a pour effet de plonger les données dans un espace de dimension potentiellement infinie où elles seront linéairement séparables. Néanmoins, de manière générale, les complexités des algorithmes d’apprentissage dépendent (selon une fonction croissante) de la dimension de l’espace de description. Nous nous intéressons également à la réduction de dimension. Etant donné que travailler dans un espace de très grande dimension (à plus forte raison, un espace de dimension infinie) peut remettre en cause certaines assurances théoriques obtenues lors de l’analyse d’algorithmes. Une stratégie convenable peut être de projeter les données dans un espace de dimension inférieure. Nous évoquons donc différentes méthodes de projection, qu’elles soient déterministes (Analyse en Composantes Principales, Décomposition de Gram-Schmidt) ou aléatoires, consistant dans la génération ’au hasard’ d’un espace de projection. Dans la seconde partie, nous présentons les premiers travaux de ce mémoire concernant l’apprentissage de perceptrons dans le cadre précis du bruit de classification uniforme. Dans le Chapitre 4, nous présentons l’algorithme du perceptron linéaire, algorithme itératif de classification par hyperplans créé à la fin des années 1950 et inspiré par le fonctionnement de neurones biologiques. La procédure consiste à corriger le vecteur de classification à l’aide d’un exemple mal classé, et de réitérer l’opération jusqu’à ce que la totalité de l’échantillon soit correctement classifié. Malheureusement, cet algorithme n’est adapté qu’au cas où les données sont linéairement séparables. Or, sur des échantillons altérés par un bruit de classification, cette condition n’est généralement pas vérifiée. A la fin des années 1990, quelques travaux ont traité la question de l’extension du perceptron linéaire au problème du bruit de classification uniforme. Étant donné qu’il est a priori, par la faute du processus d’altération, impossible de savoir si un point est en réalité mal classé ou non, la stratégie proposée est de calculer un exemple virtuel, estimation d’un point qu’on sait être mal classé. La régularité statistique du bruit de classification permet de générer, avec une grande probabilité, un tel point à condition que l’échantillon d’apprentissage soit suffisamment grand pour que l’estimation soit suffisamment précise. Nous présentons ainsi plusieurs algorithmes de type Pac implémentant cette stratégie. Néanmoins, tous ont le défaut d’être assortis de complexités tant en échantillonnage qu’en temps dépendant de la dimension de l’espace de description. Or, comme évoqué plus haut, l’intérêt des algorithmes de séparation linéaire repose sur la possibilité d’utiliser des noyaux de Mercer pour aborder des problèmes non linéaires. Si la complexité d’un algorithme dépend de la dimension de l’espace, alors les garanties de convergence ne sont pas théoriquement assurées selon les mêmes arguments. Dans le Chapitre 5, nous proposons un algorithme de type Pac, tolérant au bruit de classification uniforme, et doté de complexités indépendantes de la dimension de l’espace de description des données. Il consiste à projeter les données à partir de l’espace de départ, potentiellement infini, dans un espace de dimension inférieure, dimension qui ne dépend que de la marge de séparation des données, Introduction puis d’apprendre avec un algorithme classique de perceptron tolérant au bruit sur les données projetées. L’usage de projections aléatoires permet de conserver, avec une grande probabilité, les données presque linéairement séparables, et ce tout en contrôlant l’erreur du séparateur idéal. La difficulté de la démonstration repose essentiellement dans la preuve qu’un algorithme du perceptron tolérant au bruit de classification uniforme est capable d’apprendre également sur des données bruitées rendues approximativement séparables par l’étape de projection. L’efficacité de notre approche est appuyée par des simulations sur des jeux de test issus de la base de données Uci. Toutefois, ces algorithmes directement inspirés du perceptron linéaire ne permettent pas d’apprendre un hyperplan à grande marge, hyperplan optimal du point de vue de l’erreur de généralisation. C’est à ce problème particulier que nous nous intéressons dans la troisième partie. Dans le Chapitre 6, nous rappelons l’algorithme des machines à vecteurs de support (ou CSvm). CSvm consiste en la résolution d’un programme quadratique convexe sous contraintes, qui met en jeu des variables d’écart laissant la possibilité à l’algorithme, dans un objectif de maximisation de la marge, de faire des erreurs sur quelques unes des données d’apprentissage. Les sections suivantes seront consacrées aux méthodes de résolution du programme quadratique CSvm (dans l’espace dual, dans l’espace primal par une méthode de Newton puis approche par plans sécants). Intuitivement, un tel programme présente des propriétés de tolérance au bruit, notamment dans un cadre de bruit de classification uniforme. Et en effet, des travaux antérieurs montrent que sous certaines conditions, notamment relatives au noyau utilisé, CSvm est capable d’apprendre sur de telles données. Malheureusement, ces conditions ne sont pas vérifiées dans certains cas très simples, même sur des données linéairement séparables. Nous fournissons un tel exemple, et prouvons l’échec de CSvm sur cette distribution dans le Chapitre 7, consacré également à l’introduction d’une nouvelle fonction de perte permettant de remanier CSvm et de transformer ce programme quadratique en un programme tolérant au bruit de classification, que nous baptisons nSvm. Cette nouvelle fonction de perte est construite comme un estimateur des variables d’écart de l’échantillon non bruité. Ainsi, résoudre ce nouveau problème d’optimisation doit conduire à la production d’un classifieur performant du point de vue de la généralisation. Nous étendons, dans ce chapitre, l’étude du bruit de classification au processus plus complexe Cccn, et nous prouvons que nSvm est capable d’apprendre sur une distribution Cccn avec une précision arbitrairement petite, en temps polynomial et à l’aide d’un nombre d’exemples polynomial. Malheureusement, la nouvelle fonction de perte que nous avons définie n’est pas convexe, rendant ainsi difficile en pratique la résolution optimale de nSvm. Toutefois, dans un premier temps, nous proposons une méthode de type Quasi-Newton pour laquelle les résultats expérimentaux, notamment lors de simulations Uci, sont tout à fait satisfaisants. Cette approche ne permettant pas d’obtenir aisément un théorème de convergence, dans le Chapitre 8, nous adaptons une méthode à plans sécants pour la résolution de nSvm. De prime abord, il semble que la non-convexité est rédhibitoire pour la convergence théorique de l’algorithme. Il n’en est rien. En effet, la perte nSvm et sa sous différentielle se 9 10 Introduction trouvent être des estimateurs non biaisés de la perte CSvm non bruitée et de sa sous-différentielle. Ainsi, sous réserve d’une taille d’échantillon suffisante, la convergence en un nombre d’itérations polynomial de l’algorithme à plans sécants est conservée. Enfin, pour clore ce manuscrit et afin de démontrer le bien fondé de notre approche nSvm, nous adjoignons quelques simulations sur des données Uci, tant dans un cadre de classification supervisée qu’en semi-supervisée asymétrique, ainsi qu’une petite application sur des images Corel. Première partie Préliminaires 11 1 Classification supervisée et bruit de classification Sommaire 1.1 1.2 1.3 1.4 1.5 Bases de la Classification Supervisée . . . . . . . . Bruit de Classification . . . . . . . . . . . . . . . . . Bruit Cccn et Semi-supervisé . . . . . . . . . . . . . . Une Heuristique pour Estimer les Taux de Bruit Le Cadre PAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 19 23 24 25 Ce mémoire se positionne dans le cadre de l’apprentissage statistique, discipline dont les fondements mathématiques ont été posés par Vladimir Vapnik dans les années 1970. Plus spécifiquement, nous nous intéressons au problème de la classification supervisée sous bruit de classification. Dans ce premier chapitre, nous présentons quelques notions de base relatives à cette problématique, notions auxquelles nous faisons référence tout au long de ce mémoire de thèse. Pourquoi s’intéresser à la classification de données bruitées ? Imaginons un système simple de filtrage de spams dont le but est de déterminer à partir des caractéristiques d’un mail (expéditeur, sujet, corps. . .) s’il s’agit d’un spam. Afin de disposer d’une masse de données suffisante pour l’apprentissage, l’utilisateur devra alors annoter, en tant que mail régulier ou non, un échantillon de messages, étiquetage qui peut s’avérer en partie imparfait. L’algorithme d’apprentissage devra donc élaborer, à partir de ces données plus ou moins correctement étiquetées, une fonction de classification permettant de trier automatiquement les futures réceptions. Une autre stratégie d’étiquetage est possible : l’objectif de la procédure d’apprentissage reste le même mais l’utilisateur n’étiquette que certains mails considérés comme du spam, et ne s’intéressera pas aux autres, laissés sans annotations. Le données de l’ensemble d’apprentissage sont constituées uniquement d’exemples étiquetés comme spams et d’exemples non étiquetés : on parle alors d’apprentissage semi-supervisé asymétrique ou d’apprentissage à partir de données positives et non étiquetées (Denis [1998] ; Letouzey et coll. [2000] ; Liu et coll. [2003] ; Denis et coll. [2003] ; Fung et Lu [2006] ; Magnan [2006]). 13 Chapitre 1. Classification supervisée et bruit de classification 14 Ce chapitre introduit quelques concepts qui permettent d’aborder et de formaliser ce type de problèmes, et sera organisé de la manière suivante : – Pour commencer, nous présentons rapidement les différentes facettes de l’apprentissage à partir d’exemples, avant de nous concentrer plus particulièrement sur la classification supervisée. Nous insistons spécialement sur la séparation linéaire et introduisons les définitions y ayant trait. – Dans la seconde partie, nous introduisons le concept de bruit de classification, avant de développer plus en détail les bruits Cn et Cccn qui nous intéressent tout au long de ce mémoire. Nous évoquons également les travaux relatifs à d’autres processus d’altération des étiquettes. – Puis, nous illustrons la pertinence de l’étude du processus de bruit Cccn, notamment par l’extension de ce cadre à des problèmes de classification semi-supervisée asymétrique. – Ensuite, nous proposons une heuristique (introduite par Blum et Mitchell [1998]) pour évaluer les taux de bruit altérant les données, dans le cas où ceux-ci sont inconnus. – La cinquième et dernière partie du chapitre présente le cadre théorique d’apprentissage Pac. Créé pour caractériser les algorithmes capables d’apprendre efficacement une classe de concepts déterministes, nous l’adaptons selon nos besoins au cadre de la classification linéaire sous bruit de classification. 1.1 Bases de la Classification Supervisée La rapide augmentation des capacités de stockage ces dernières années conjuguée à la multiplication des bases de données à divers niveaux (administration, banques, sites internet. . .) ont conduit à la constitution de très gros ensembles de données. Comment utiliser intelligemment ces gigantesques masses d’informations à notre disposition ? Les méthodes de data mining répondent en partie à cette question, en permettant d’extraire des caractéristiques intéressantes de ces bases de données. Mais quid de méthodes capables, à partir de ces données existantes, de généraliser à d’autres données de même origine ? L’apprentissage automatique apporte un certain nombre de réponses à cette question. Nous nous intéressons à la frange de l’apprentissage qui consiste à fournir un modèle, une fonction, permettant d’associer automatiquement des données (par exemple des messages électroniques) à un élément d’un ensemble Y . Nous nous devons de faire la distinction entre deux types d’approches : – Soit Y est un ensemble discret, et nous allons tenter d’associer les données à une étiquette qualitative (ou une classe) (par exemple couleurs, vrai/faux, primaire/secondaire/supérieur. . .) . La tâche d’apprentissage prend le nom de classification. – Soit Y est continu, et l’on va alors essayer d’apprendre une quantité : prix, pression atmosphérique, poids. . . On parle ici de régression. 1.1. Bases de la Classification Supervisée X 15 Y Fig. 1.1 – Représentation des relations entre descriptions et classes dans le cadre de la classification supervisée. Dans ce mémoire, les travaux présentés traitent exclusivement de classification. Une nouvelle fois, nous pouvons faire un distinguo entre deux aspects très différents de ce type de méthodes : – Première hypothèse, Y , l’ensemble des classes, est initialement connu. L’apprentissage (qui porte le nom de classification supervisée ou de catégorisation) consiste, en ayant accès à quelques exemples déjà classées (l’échantillon d’apprentissage), à construire une fonction qui classe les données dans Y . – Autre hypothèse, Y est originellement inconnu. Le processus d’apprentissage consiste alors à déterminer un ensemble de classes, permettant ainsi de répartir les données dont on dispose entre ces différentes classes. Nous nous intéressons, tout au long de ce mémoire à la classification supervisée, que nous allons formaliser (en nous inspirant de Cristianini et Shawe-Taylor [2000]) ci-après : Soit un espace de description X , domaine défini comme le produit cartésien de m (avec m pouvant être infini) ensembles, chaque ensemble permettant de représenter un attribut : j X = Πm j =1 X . Chacun de ces attributs peut être, par exemple, binaire, ordinal, numérique ou symbolique. X est l’espace dans lequel sont décrites les données dont nous disposons. Soient un ensemble fini de classes Y , et une distribution de probabilité inconnue D sur X × Y . L’échantillon d’apprentissage est un ensemble fini d’exemples, c’est-à-dire de couples descriptionétiquette tirés (en général identiquement et indépendamment distribués, iid) selon la distribution D . Nous avons donc uniquement une connaissance partielle, donnée par cet ensemble d’apprentissage, de la distribution D . Nous notons S = {(x1 , y1 ) . . . (xn , yn )} un échantillon de n données, avec xi description de l’exemple i et yi sa classe (illustré sur la Figure 1.1). À partir de cet échantillon S, l’objectif de l’apprentissage est de construire un classifieur (ou un concept) f : X → Y , c’est-à-dire une fonction qui associe une classe à un exemple, décrivant au mieux la relation entre les descriptions et les classes des données. Ce classifieur se doit ainsi de présenter une bonne qualité de généralisation, et donc, étant donné un nouvel Chapitre 1. Classification supervisée et bruit de classification 16 exemple, jamais rencontré, tiré selon D , il doit être capable de prédire correctement sa classe. Pour juger de la qualité d’un classifieur, nous allons donc avoir recours à une fonction de perte, notée `( f (x), y) qui attribue un coût à la décision. Classiquement, la perte 0-1, qui mesure le nombre d’erreurs faites sur un ensemble de données, en d’autres termes le risque empirique (calculé sur l’échantillon d’apprentissage), est utilisée pour définir l’erreur de généralisation : `0−1 ( f ( x ), y ) = 0 si f (x) = y 1 sinon Ici, la perte vaut 1 si la fonction de classification se trompe sur l’étiquette de x, et 0 sinon. Néanmoins, il nous est tout à fait possible de choisir une autre fonction de coût spécifique à une tâche plus précise, qui pénalise plus particulièrement certains types d’erreur par exemple. Nous ferons usage, par la suite, notamment de la perte hinge. Le type de perte considéré dans les chapitres suivants ne sera spécifié que dans les cas pouvant présenter des ambiguïtés. Nous pouvons maintenant définir le risque réel d’une fonction f , c’est-àdire l’espérance de la perte sur la distribution : Définition 1.1 Soit une distribution D sur X × Y , soient f : X → Y , et ` : Y 2 → R. Le risque du classifieur f du point de vue de la perte ` sur la distribution D est : R` ( f ) = E(x,y)∼D `( f (x), y). Notons que R`0−1 ( f ) correspond à l’erreur de généralisation du classifieur f , c’està-dire que R`0−1 ( f ) = P(x,y)∼D ( f (x) 6= y) . C’est ce risque, que nous essaierons de minimiser pour mener à bien notre tâche d’apprentissage et donc de classification. Malheureusement, le cadre classique de la classification supervisée ne donne pas d’accès à la distribution qui reste inconnue, mais seulement à un échantillon fini de données. Il n’est donc pas possible de calculer le risque réel. Intervient alors le Principe de Minimisation du Risque Empirique (ou Erm), qui préconise la sélection d’un classifieur avec un risque faible sur l’échantillon d’apprentissage (risque empirique, représenté Figure 1.2), classifieur qui se doit d’avoir également un risque réel faible. L’apprentissage consistera donc en premier lieu à minimiser ce risque empirique : Définition 1.2 Soient un échantillon S de n ∈ N exemples (x1 , y1 ) . . . (xn , yn ), f : X → Y , et ` : Y 2 → R. Le risque empirique du classifieur f du point de vue de la perte ` sur l’échantillon S est : emp R` n ( f , S) = 1 ∑ n `( f (xi ), yi ). i =1 Nous appellerons erreur empirique le risque empirique associé à la perte `0−1 . Le principe Erm jouera un rôle central dans l’élaboration des algorithmes que nous allons aborder dans ce mémoire. Toutefois, et nous reviendrons 1.1. Bases de la Classification Supervisée X Fig. 1.2 – Classifieur ayant un risque empirique de 0.25 sur l’échantillon représenté plus en détails sur cet aspect dans le chapitre 2, il est absolument nécessaire, lors de l’apprentissage, de contrôler de la complexité de la classe de fonctions dans laquelle nous recherchons le classifieur, par exemple en faisant intervenir un terme de régularisation. En effet, minimiser le risque empirique, alors que l’on dispose d’une classe de fonctions très riche, peut conduire à du sur-apprentissage (c’est-à-dire à l’apprentissage par coeur de l’échantillon) et donc à une capacité de généralisation médiocre. Cette constatation justifie notre intérêt pour une classe de fonctions (dont la complexité est contrôlable) particulière, la classe des séparateurs linéaires, ou hyperplans que nous noterons W . Dans le cadre de la séparation linéaire, nous supposons que l’espace de description X est un espace de Hilbert, muni d’un produit scalaire (hermitien), noté h, i. Un hyperplan (sous-entendu affine) de X est un sous-espace vectoriel de X pouvant être décrit par une équation linéaire de la forme hw, xi + b = 0 avec w ∈ X et b ∈ R. Pour simplifier les écritures, nous notons (w, b) l’hyperplan d’équation hw, xi + b = 0. Nous définissons alors formellement un l’ensemble des hyperplans W dans X : W = {(w, b)| w ∈ X , b ∈ R} Cette classe est évidemment particulièrement adaptée à la classification binaire, c’est-à-dire à des problèmes à deux classes (classes positive et négative), puisqu’elle sépare l’espace de description en 2 sous-espaces. Nous posons donc dans ce cadre un ensemble de classes Y = { +1, −1} et on parle alors de classification binaire entre des exemples positifs, de classe +1, et des exemples négatifs, de classe −1. Néanmoins, notons tout de même que des extensions sont possibles à la classification multi-classes, mais elles ne feront pas l’objet d’une étude ici. L’étiquetage des données dans le cadre de la classification binaire est extrêmement simple : d’un coté de l’hyperplan, les données sont positives, de l’autre, elles sont négatives. Pour une description x ∈ X , le classifieur f = (w, b) ∈ W étiquettera x de la manière suivante, avec sign ( x ) = 1 si x > 0 et −1 sinon : 17 Chapitre 1. Classification supervisée et bruit de classification 18 γ w γ Fig. 1.3 – Échantillon correspondant à une distribution linéairement séparable par un vecteur w et une marge γ. Les points positifs (resp. négatifs) sont représentés en blanc (resp. noir). f (x) = sign (hw, xi + b) . Une notion importante en classification linéaire pour caractériser la difficulté d’un problème (et qui peut entrer en jeu dans le cadre de la régularisation, voir Chapitre 6) est la notion de marge, c’est-à-dire de séparabilité du problème. Les classes négatives et positives sont-elles facilement séparables ? Existe-t-il un ’espace’ important entre les exemples positifs et négatifs ? Dans ce mémoire, nous essaierons autant que possible de nous ramener à des distributions linéairement séparables, c’est-à-dire des distributions telles que pour tout échantillon, il existe un hyperplan qui classifie correctement la totalité de l’échantillon, donc avec une erreur empirique nulle. Nous définissons formellement ce qu’est une distribution linéairement séparable avec une marge γ > 0 (voir illustration, Figure 1.3) : Définition 1.3 Soit γ > 0. Une distribution D sur X × Y est linéairement séparable avec une marge γ si et seulement si il existe (w, b) ∈ W : Pr(x,y)∼D [y(hw, xi + b) < kwk γ] = 0 Dans ce cas, remarquons que l’étiquetage induit par ces distributions est déterministe, c’est-à-dire que deux descriptions identiques ont forcément la même classe. De la même manière, nous pouvons définir ce qu’est un échantillon linéairement séparable avec une marge γ : Définition 1.4 Soit γ un réel positif. Un échantillon S ∈ (X × Y )n est linéairement séparable avec une marge γ si et seulement si il existe (w, b) ∈ W , tel que pour tout exemple (x, y) de S : y(hw, xi + b) ≥ kwk γ Enfin, nous terminons cette section par l’introduction de l’ensemble des distributions sur X × Y séparables avec une marge au moins γ, que nous notons D γ : Définition 1.5 Soit γ > 0. D γ est l’ensemble des distributions D sur X × Y tel qu’il existe 1.2. Bruit de Classification 19 (w, b) ∈ W vérifiant pour tout exemple (x, y) ∼ D : y(hw, xi + b) ≥ kwk γ Il va de fait qu’un échantillon tiré selon une distribution appartenant à D γ sera séparable avec une marge au moins égale à γ. Dans la suite du mémoire, nous nous concentrerons principalement sur ce type de distributions et sur les algorithmes permettant de les apprendre. 1.2 Bruit de Classification Lorsqu’on s’attaque à des problèmes de classification sur des données réelles, il est tout à fait possible d’être confronté à des erreurs d’étiquetage, c’est-à-dire à des exemples s’étant vus attribuer une mauvaise classe. Par exemple, une erreur de mesure lors d’une expérience, ou un cas anormal, ne pouvant a priori pas se produire. Il est donc important de savoir prendre en compte ce type de phénomènes, de gérer ces distributions altérées et donc de définir un cadre théorique à ce que nous appellerons apprentissage sous bruit de classification. Dans le cadre de la classification supervisée classique, l’algorithme a accès à un échantillon S tiré selon une distribution D . Sous bruit de classification, nous avons seulement accès à un échantillon bruité Sσ , où certains exemples de l’échantillon S auront vus leur étiquette inversée selon un processus donné. Le but est alors d’apprendre, à partir de l’échantillon bruité, un classifieur qui minimise le risque sur la distribution D . En d’autres termes, l’idée est en quelque sorte d’effacer le bruit qui altère les données. Les processus de bruit ayant été étudiés dans la littérature sont nombreux. Nous allons en énumérer quelques uns, de manière non exhaustive, et uniquement dans le cadre de la classification supervisée binaire. Bruit de classification le plus simple, d’aucuns diront le plus naïf, le bruit de classification uniforme (que nous noterons Cn par la suite) est un processus où la classe de chacun des exemples est inversée avec une probabilité constante qui ne dépend pas de la description considérée. Pour tout taux de bruit uniforme η < 21 , étant donné un échantillon S = {(x1 , y1 ) . . . (xn , yn )} de n exemples tirés, on obtient l’echantillon bruité par un bruit de classification uniforme Sσ = {(x1 , σ1 y1 ) . . . (xn , σn yn )}, avec : Définition 1.6 (Angluin et Laird [1988]) σi = 1 avec probabilité 1 − η −1 avec probabilité η Un exemple d’échantillon altéré par un bruit de classification uniforme est décrit par la Figure 1.4. Sur un tel cas, les données bruitées ne sont plus linéairement séparables, et un algorithme de classification linéaire classique, tel que le perceptron ou les Svm à marges dures (voir Chapitre 6), ne convergera pas et ne produira donc pas de classifieur correct. C’est pourquoi il est intéressant de développer des algorithmes spécifiques à 20 Chapitre 1. Classification supervisée et bruit de classification η = 0.25 w Fig. 1.4 – Échantillon linéairement séparable par un vecteur w mais altéré par un bruit de classification uniforme de paramètre η = 0.25. Les points positifs (resp. négatifs) sont représentés en blanc (resp. noir). ce type de problèmes. De nombreux travaux se sont intéressés à ce type de bruit de classification notamment Angluin et Laird [1988] ; Bylander [1994] ; Blum et coll. [1996] ; Bylander [1998] ; Kearns [1998] ; Ralaivola et coll. [2006]. Nous reviendrons plus tard sur un certain nombre d’entre eux. Pour la suite du mémoire, nous définissons une notation pour les distributions initialement linéairement séparables avec une marge γ, mais altérées par un bruit de classification uniforme : Notation : Soit γ > 0. Pour η ∈ [0, 0.5[, soit la transformation U η , modifiant un exemple (x, y) comme suit : (x, y) avec prob. 1 − η η U (x, y) = (x, σy) := (x, −y) avec prob. η L’ensemble des distributions U γ,η est définie comme U γ,η = U η ( D γ ). Nous définissons maintenant la notion de vecteur consistant avec le bruit de classification uniforme, c’est-à-dire un classifieur qui ne ferait aucune erreur si la distribution n’était pas bruitée, et qui en plus séparerait les données avec une grande marge. Obtenir un tel vecteur sera notre objectif lors de l’apprentissage de distributions Cn. Définition 1.7 (CN-consistance) Un hyperplan (w∗ , b) est CN-consistant sur D ∈ U γ,η si Pr(x,y)∼D [y (hw∗ , xi + b) < kw∗ k γ] = η. Le second type de bruit auquel nous nous intéresserons est le bruit de classification différencié par classe (ou Cccn, Decatur [1997] ; Denis et coll. [2006] ; Magnan et coll. [2007]). Dans ce cadre, l’étiquette d’un exemple est inversée selon une probabilité dépendant de sa classe réelle. On peut en effet penser que, sur certains problèmes, il n’y a aucune raison que 1.2. Bruit de Classification 21 η + = 0.125 w η − = 0.50 Fig. 1.5 – Échantillon linéairement séparable par un vecteur w altéré par un bruit de classification différencié par classe de paramètre η = (0.125, 0.5). Les points positifs (resp. négatifs) sont représentés en blanc (resp. noir). les exemples positifs soient bruités de la même manière que les exemples négatifs. Nous contraignons les niveaux de bruits Cccn que nous étudions à appartenir à l’ensemble N : N = (η + , η − )tels que η + ≥ 0, η − ≥, η + + η − < 1 (1.1) Nous pouvons alors définir ce qu’est un échantillon altéré par un processus Cccn. Définition 1.8 Soit η = (η + , η − ) ∈ N , étant donné un échantillon S = {(x1 , y1 ) . . . (xn , yn )} de n exemples, on obtiendra l’echantillon bruité par un bruit de classification Cccn Sσ = {(x1 , σ1 y1 ) . . . (xn , σn yn )}, avec : σi = 1 avec probabilité 1 − η yi −1 avec probabilité η yi avec yi η = η + si yi = +1 η − sinon La Figure 1.5 illustre ce processus abordé notamment dans le Chapitre 7. Comme pour le bruit Cn, nous introduisons deux définitions supplémentaires relatives au bruit Cccn : S oient γ > 0 et η = (η + , η − ) ∈ N . Soit la transformation U η fiant un exemple (x, y) comme suit : (x, y) avec proba. 1 − η y η U (x, y) = (x, σy) := (x, −y) avec proba. η y L’ensemble des distributions U γ,η U γ,η + ,η − + ,η − est définie comme = Uη + ,η − (D γ ). + ,η − , modi- Chapitre 1. Classification supervisée et bruit de classification 22 Un hyperplan (w∗ , b) est Cccn-consistant sur D ∈ U γ,η si, pour un exemple (x, y) tiré selon D , Définition 1.9 (Cccn-consistance) + ,η − Pr [y (hw∗ , xi + b) < kw∗ k γ] = η −y . avec η y = η + si y = +1 et η − sinon. C’est principalement à ces deux types de bruit que nous nous intéresserons. Dans le cadre Cn, l’objectif de la minimisation du risque empirique est de trouver une solution à un programme linéaire tel que le nombre d’erreurs sur l’échantillon soit le plus petit possible. Or, il est prouvé par Amaldi et Kann [1996] que résoudre un tel problème est NP-difficile. La recherche d’algorithmes performants sur ce type de données est donc un problème complexe. Notons, pour terminer, que le principe de minimisation du risque empirique est toujours valide sur des problème Cn. Le η risque R`0−1 (selon la perte 0 − 1) d’un classifieur f calculé sur les données bruitées est en effet linéairement relié au risque réel R de f : R`0−1 ( f ) = (1 − 2η ) R`0−1 ( f ) + η. η Ce n’est pas le cas dans le cadre d’un bruit Cccn (η + , η − ), puisque le η + ,η − risque R`0−1 d’un classifieur f calculé sur la distribution bruitée s’écrit : η + ,η − R `0−1 ( f ) = 1 − η + − η − R `0−1 ( f ) + η + p + η − ( 1 − p ) (1.2) où p = P [ f (x) = +1]. Ainsi, le principe de minimisation du risque empirique n’est pas adapté aux problèmes Cccn, problèmes que nous devrons donc aborder de manière différente. De nombreux travaux traitent d’autres processus d’altération. Le bruit constant par morceaux (ou Cpcn) (voir Decatur [1997] ; Ralaivola et coll. [2006]) est une généralisation de Cccn. L’espace de description est alors partitionné, et sur chaque partie s’exerce une altération uniforme. Probablement plus réaliste, le bruit de classification monotone (Bylander [1998]) est un processus qui altère plus fortement les données proches du séparateur ayant servi à étiqueter les données. Même si ce n’est pas un processus de bruit, de nombreux travaux se sont intéressés à la condition de bruit faible de Tsybakov (Tsybakov [2001] ; Bartlett et coll. [2005]), sur lequel nous reviendrons plus tard. Enfin, bien qu’il ne s’agisse pas d’un bruit de classification stricto sensu, nous évoquons rapidement le bruit malicieux (Kearns et Li [1988] ; Auer et Cesa-Bianchi [1998] ; Servedio [2003]). Ici le processus n’affecte pas seulement, avec une certaine probabilité, l’étiquette d’un exemple, mais également sa description. Si un exemple est altéré, la description et l’étiquette qui lui seront attribuées le sont de manière arbitraire. Evidemment c’est sur des données bruitées, même faiblement, par ce type de phénomènes que l’apprentissage est le plus difficile. Théoriquement, le niveau maximal de bruit malicieux pour atteindre une précision (un risque réel) sur les données non bruitées de ε est de 1−ε ε (Kearns et Li [1988]). 1.3. Bruit Cccn et Semi-supervisé 1.3 Bruit Cccn et Semi-supervisé Au-delà de la simple gestion du bruit de classification, l’étude de l’apprentissage de distributions altérées par un bruit Cccn trouve son application dans une grande variété de problèmes, par exemple dans le domaine de la classification semi-supervisée : l’objectif est alors l’apprentissage d’un classifieur à partir d’un échantillon où seulement une partie des données est étiquetée. Plus spécifiquement, le bruit de classification Cccn est intéressant dans le cadre de l’apprentissage semi-supervisé asymétrique, lorsque les exemples étiquetés appartiennent tous à la même classe (Denis [1998] ; Letouzey et coll. [2000]). Dans cette situation, où la totalité des m données étiquetées sont négatives, l’échantillon d’apprentissage S peut être décrit de la manière suivante : S = S−1 ∪ Sunl avec la partie étiquetée S−1 = {(xi , −1)}im=1 et la partie non étiquetée Sunl = {xi }in=m+1 , en supposant que les données de S−1 sont correctes (i.e non bruitée). La stratégie que nous suggérons pour aborder ce problème est d’étiqueter comme positives la totalité des données contenues dans Sunl , et donc obtenir un ensemble de données positives S+1 = {(xi , +1)}in=m+1 . Le nouvel échantillon d’apprentissage résultant de cet étiquetage est noté S = S+1 ∪ S−1 . Ainsi, comme Sunl peut contenir (et contient probablement) des exemples négatifs, les données de S sont bruitées par un processus Cccn avec η − > 0 (à condition que les points initialement étiquetés soient iid parmi les exemples négatifs de la distribution) et η + = 0 (il n’y a pas d’exemples théoriquement positifs étiquetés comme négatifs). Cette approche pour l’apprentissage à partir de données négatives et non étiquetées a été implémentée avec succès (via un algorithme du perceptron) par Magnan [2006]. On notera également alors que l’apprentissage multi-instance peut se ramener à l’apprentissage sous bruit Cccn. En effet, en classification multi-instance, l’ensemble d’apprentissage se présente sous la forme S = {(xi , yi )} où chaque xi est un sac, un ensemble de descriptions. En d’autres j termes, xi = {x1i , . . . , xini } où xi ∈ X , et xi est de classe +1 si et seulement si au moins un élément de l’ensemble est effectivement positif. Une stratégie pour prendre en charge ce type de problème est tout simplement de ’décomposer’ chaque sac de données (xi , yi ) en ni couples étij quetés (xi , yi ) et de considérer alors le problème d’apprendre à partir de j n,ni S = {(xi , yi )}i,j =1 . Alors, les descriptions négatives de S sont en effet réellement négatives, tandis que certains exemples positifs s’avèrent être de faux positifs (rappelons qu’il suffit qu’un sac contienne un exemple positif pour qu’il soit annoté comme positif). Si chaque sac contient environ le même ratio d’exemples positifs, alors on peut ramener le problème à un apprentissage Cccn sur un échantillon S avec η + = 0 et η − > 0 (malgré l’aspect non-iid de l’échantillon obtenu). Dans la suite du mémoire, nous étudierons notamment l’apprentissage dans le cadre général du bruit de classification Cccn, tout en gardant à l’esprit ces deux applications pratiques comme étant des motivations 23 Chapitre 1. Classification supervisée et bruit de classification 24 w w Fig. 1.6 – A gauche, un problème de classification semi-supervisée composé de points non-étiquetés (en rouge) et étiquetés négativement (en noir) par un classifieur optimal w. Il suffit d’étiqueter positivement tous les points non-étiquetés (à droite) pour obtenir un problème Cccn avec un bruit nul sur les positifs et un bruit de 0.5 sur les négatifs. supplémentaires que nous développerons dans la partie simulations du Chapitre 8. 1.4 Une Heuristique pour Estimer les Taux de Bruit Dans la suite de ce mémoire, nous considérons, dans la quasi-totalité des cas, que les algorithmes ont accès aux taux de bruit réels altérant les données. Cette hypothèse ne semble pas irréaliste puisque pour qu’il soit possible d’aborder des problèmes réels, il doit exister un expert capable de nous fournir l’estimation du bruit, i.e. les données non bruitées (à partir desquelles le bruit peut-être aisément déduit) – sinon, il ne sera pas possible de faire mieux qu’apprendre la distribution bruitée telle quelle (sans enlever le bruit). Nous nous en remettons toutefois à une stratégie, introduite dans Blum et Mitchell [1998], pour estimer les paramètres de bruit les plus probables, parmi un ensemble de candidats, à partir des données d’apprentissage. Cette procédure consiste à calculer plusieurs hypothèses hi à l’aide de notre algorithme, chacune avec un taux de bruit différent passé en paramètre, et donc à choisir l’hyperplan hi qui minimise l’expression suivante (les probabilités sont ici estimées directement sur l’échantillon bruité) : M = P(x,σy)∈Sσ [ hi (x) = 1|σy = −1] + P(x,σy)∈Sσ [ hi (x) = −1|σy = 1] . Cette quantité est linéairement et positivement reliée à une mesure du risque réel de hi (voir Blum et Mitchell [1998] pour plus de détails). Ainsi, choisir le classifieur optimal du point de vue de M mènera probablement à la sélection d’une hypothèse possédant une erreur de généralisation relativement faible. En conséquence, le taux de bruit pris en paramètre pour apprendre ce classifieur optimal devraient être proches des bruits réels altérant l’échantillon. 1.5. Le Cadre PAC 1.5 25 Le Cadre PAC Introduit en 1984 par Valiant [1984], le cadre d’apprentissage Pac (ou probablement approximativement correct) fournit un cadre théorique pour l’apprenabilité de problèmes de classification supervisée binaires, avec un ensemble de classes Y = {−1, +1}. Plus particulièrement, l’apprentissage Pac considère les problèmes déterministes, c’est-à-dire des distributions qu’il est possible de séparer sans erreur. Nous allons maintenant introduire quelques notations pour définir précisément ce formalisme. Soit D une distribution inconnue sur un espace de description X de dimension quelconque. Nous appellerons concept un sous-ensemble de X . Pour un concept c donné, une description x se verra attribuer une étiquette positive si elle appartient au concept c, et une étiquette négative dans le cas contraire. Enfin, une classe de concept C sera définie comme étant un ensemble de concepts de X . En utilisant cette notion de concept, nous pouvons donc maintenant définir formellement ce que signifie apprendre. La tâche d’apprentissage consiste alors à identifier un concept c à partir d’un échantillon (donc d’un ensemble de descriptions) étiqueté selon l’appartenance de ses éléments à c ou non. On modélise la génération (i.e le tirage) des exemples en utilisant un oracle EX (c, D). A chaque appel, l’oracle retourne un exemple (x, c(x)), avec x tiré selon la distribution D et c(x) étiquette de x selon le concept c : c(x) = 1 si x appartient à c −1 sinon Pourquoi un tel formalisme ? Savoir identifier les ensembles de fonctions de séparations (ou concepts) qu’il est possible d’apprendre efficacement est un enjeu important en classification. Le cadre théorique proposé par Valiant permet de caractériser les classes de concepts Pac-apprenables de manière efficace, notamment en imposant des contraintes de polynomialité sur le temps d’exécution et le nombre d’appels à l’oracle effectués. Commençons par définir informellement ce qu’est la Pac-apprenabilité. Une classe de concepts C est Pac-apprenable si pour tout c ∈ C , et pour toute distribution D , on peut calculer, avec une grande probabilité, à partir de l’oracle EX (c, D) une approximation assez précise de c (d’où le terme probablement approximativement correct). Plus formellement : Définition 1.10 Une classe de concepts C de X est dite efficacement Pac-apprenable par une classe d’hypothèses H s’il existe un algorithme A et 2 polynômes p et q tel que pour tout c ∈ C , pour toute distribution D sur X , pour tout paramètre de précision ε ∈]0, 1], pourtout paramètre de confiance δ ∈]0, 1], A calcule en un nombre 1 1 1 1 polynomial p ε , δ d’appels à EX (c, D) et en temps polynomial q ε , δ une hypothèse h de H telle que PD ( R(h) > ε) < δ, où R(h) est le risque de la fonction h. Cette définition mérite que l’on y accorde quelques lignes explicatives. Tout d’abord, une première remarque : les polynômes p et q sont également dépendants de la taille du concept c que l’on veut apprendre Valiant Chapitre 1. Classification supervisée et bruit de classification 26 [1984]. Afin de simplifier les notations, nous ne ferons pas apparaître ce paramètre dans la suite de cette section. Notons également que l’algorithme A cherche une hypothèse, non pas dans l’espace de concepts C mais dans un ensemble de concepts différent, que nous notons H. En effet, il n’est pas toujours possible, pour obtenir une bonne approximation de c, d’utiliser directement comme espace de recherche la classe de concepts C . Par exemple, lorsque C est très grande, ou lorsqu’elle contient des concepts complexes à apprendre. Il est d’usage de se limiter à une classe d’hypothèses pour laquelle des algorithmes d’apprentissage peuvent être mis en oeuvre. La confiance δ contrôle la probabilité que l’algorithme A produise un classifieur correct, et la précision ε contrôle la qualité du classifieur h appris, du point de vue de l’erreur de généralisation. Nous nous concentrons par la suite à l’apprentissage de distributions altérées par des bruits de classification. L’extension du formalisme Pac au cadre du bruit Cn (bruit uniforme) nous intéresse donc tout particulièrement. Définie par Angluin et Laird [1988], cette notion de Cnapprenabilité nécessite l’introduction d’un nouvel oracle EX η qui sera interrogé par l’algorithme d’apprentissage : Définition 1.11 Soient un paramètre de bruit η ∈ [0, 1], un concept c ∈ C et une distribution D sur X . L’oracle EX η (c, D) retourne à chaque appel une paire (x, cη (x)) telle que x est tiré selon D et cη (x) est défini par : c(x) avec probabilité 1 − η η c (x) = −c(x) avec probabilité η La Cn-apprenabilité peut alors être définie de la façon suivante : Définition 1.12 Une classe de concept C de X est efficacement Cn-apprenable par une classe de représentation H si et seulement si il existe un algorithme A et deux polynômes p et q tels que pour tout concept c ∈ C , pour toute distribution D sur X , pour tout ε, δ ∈]0, 1] et pour tout η ∈ [0, 0.5[, avec un accès à EX η (c, D), ε,δ et à une borne supérieure η0 6= 12 sur η , l’algorithme A calcule avec une probabilité 1 − δ une hypothèse h de H telle que R(h) ≤ ε. A requiert au plus p appels à EX η (c, D) et s’arrête en temps q 1ε , 1δ , 1−12η0 . 1 1 1 ε , δ , 1−2η0 Notons que dans cette définition, l’algorithme n’est pas censé avoir accès au niveau de bruit réel appliqué sur les données mais uniquement à une borne supérieure η0 . Selon les travaux de Angluin et Laird [1988], cette condition n’est pas restrictive puisqu’il est possible de calculer une borne supérieure sur η lorsqu’aucune n’est fournie. Maintenant que les notions standards de l’apprentissage Pac sont définies, il nous reste à introduire une Cn-apprenabilité adaptée aux problèmes que nous allons considérer par la suite. Tout d’abord, nous nous intéresserons essentiellement aux séparateurs linéaires et donc à des distributions linéairement séparables. Pour une distribution D donnée, nous considérerons la classe de concepts W D,γ , c’est-à-dire la classe des séparateurs linéaires séparant la distribution D avec une marge au moins égale à γ avec γ réel positif. 1.5. Le Cadre PAC 27 C η = 0.2 c h X H EX η (c, D) 1 p( ε1 , δ1 , 1−2η ) 0 ε, δ, η0 1 ) q( ε1 , δ1 , 1−2η 0 Algorithme A Fig. 1.7 – Illustration d’une classe de concepts CN-apprenable par un Algorithme A Plus formellement : W D,γ = {(w, b) ∈ W | Px∼D [ |hw, xi + b| < k wk γ] = 0} . Nous supposerons également que les algorithmes ont accès au niveau de bruit réel appliqué sur la distribution. Cette hypothèse peut paraître forte, mais nous détaillerons plus tard comment ce bruit peut être estimé. Enfin, nous permettrons à l’algorithme une convergence en temps polynomial en fonction, non seulement des paramètres de bruit, de confiance et de précision, mais également en fonction de l’inverse de la marge. Notons d’ailleurs, comme l’ont fait remarquer Blum et coll. [1996] ou Cohen [1997], qu’une dépendance polynomiale dans la marge peut cacher, dans certains cas peu naturels, une dépendance exponentielle dans la dimension de l’espace. Ces algorithmes ne peuvent donc pas être considérés comme polynomiaux au sens strict du terme. Nous reviendrons plus en détail sur les travaux de Blum et Cohen au Chapitre 4. Dans ce cadre de bruit Cn, nous définissons un oracle spécifique à l’étude des séparateurs linéaires : Définition 1.13 Soient un paramètre de bruit η ∈ [0, 21 [, un concept (w, b) ∈ W et une distribution D sur X . L’oracle EX η ((w, b), D) retourne à chaque appel une paire (x, cη (x)) telle que x est tiré selon D et cη (x) est défini par : sign (hw, xi + b) avec probabilité 1 − η η c (x) = − sign (hw, xi + b) avec probabilité η Nous pouvons maintenant introduire le γ-Pac-apprentissage de distributions linéairement séparables altérées par un bruit de classification uniforme. La définition suivante est illustrée par la Figure 1.7 : Définition 1.14 Un algorithme A γ-Cn-apprend efficacement les distributions linéairement séparables, si pour tout γ > 0, il existe deux polynômes p et q tel que, pour toute distribution D ∈ D γ , pour tout concept (w, b) ∈ W D,γ , pour tout ε, δ ∈]0, 1] et pour tout η 6= 0.5, avec un accès à EX η ((w, b), D), ε, δ, η, l’algorithme A Chapitre 1. Classification supervisée et bruit de classification 28 calcule avec une probabilité 1 − δ une hypothèse h telle que R(h) ≤ ε. A re1 1 1 1 quiert au plus p ε , δ , 1−2η , γ appels à EX η ((w, b), D) et s’arrête en temps q 1ε , 1δ , 1−12η , γ1 . Enfin, nous étudierons également l’apprenabilité de classifieurs linéaires sous bruit de classification différencié par classe (ou Cccn). Rappelons que le processus Cccn consiste à inverser l’étiquette d’un exemple avec une probabilité dépendant de sa classe, positive ou négative. Naturellement, nous définissons un oracle Cccn, de manière similaire à ce qui a été fait pour Cn : Définition 1.15 Soient un paramètre de bruit η = (η + , η − ) ∈ N , un concept (w, b) ∈ W et une distribution D . L’oracle EX η ((w, b), D) retourne à chaque appel une paire (x, cη (x)) telle que x est tiré selon D et cη (x) est défini par : y avec probabilité 1 − η y η c (x) = −y avec probabilité η y où y = sign (hw, xi + b). Pour terminer les définitions relatives au cadre d’apprentissage Pac, nous définissons le γ-Pac-apprentissage de distributions linéairement séparables altérées par un bruit de classification différencié par classe η = (η + , η − ) ∈ N . Notons que la complexité en temps de l’algorithme, ainsi que le nombre d’interrogations de l’oracle autorisées sont dépendants du processus de bruit, selon 1−η +1−η − . Définition 1.16 Un algorithme A γ-Cccn-apprend efficacement les distributions linéairement séparables, si pour tout γ > 0, il existe deux polynômes p et q tels que pour toute distribution D ∈ D γ , pour tout concept (w, b) ∈ W D,γ , pour tout ε, δ ∈ ]0, 1] et pour tout η ∈ N , avec un accès à EX η ((w, b), D), ε,δ, η, l’algorithme A calcule avec uneprobabilité 1 − δune hypothèse h telle que R(h) ≤ ε. A requiert au plus p 1ε , 1δ , 1−η +1−η − , γ1 temps q 1ε , 1δ , 1−η +1−η − , γ1 . appels à EX η ((w, b), D) et s’arrête en Comme pour le bruit Cn, nous considérons que l’algorithme a un accès à η, et donc connaît les niveaux de bruit affectant la distribution. Nous développerons dans la suite du manuscrit une heuristique pour évaluer en pratique ces paramètres. Le Pac-apprentissage de concepts linéaires sous bruit de classification a été par le passé l’objet d’intérêts variés, mêlant diverses classes de concepts et divers processus de bruit, par exemple Angluin et Laird [1988] ; Kearns et Li [1993] ; Bylander [1994] ; Blum et coll. [1996] ; Decatur [1997] ; Bylander [1998] ; Bshouty et coll. [1999] ; Dunagan et Vempala [2004] ; Goldberg [2005]. Nous reviendrons plus tard sur certains de ces travaux, notamment ceux concernant l’apprentissage de perceptrons sous bruit Cn. Pour terminer cette section, signalons qu’il existe une équivalence entre la Pac-apprenabilité de concepts sous bruits Cn et Cccn (ainsi que sous bruit constant par morceaux Cpcn), équivalence prouvée par Ralaivola 1.5. Le Cadre PAC et coll. [2006]. L’intérêt pour le processus de bruit Cccn peut donc sembler hors de propos, puisqu’un algorithme Pac sur des distributions Cn est un algorithme Pac sur des problèmes Cccn. Néanmoins, la preuve de cette équivalence, même si elle est constructive, et qu’une stratégie est proposée pour transformer un problème Cccn en Cn, semble difficile à mettre en oeuvre en pratique. Proposer des algorithmes ad-hoc pour les problèmes Cccn semble donc être une stratégie souhaitable dès lors que l’on se trouvera dans une vision applicative de l’apprentissage. 29 2 Bornes de Généralisation et Complexité de Classes de Concepts Sommaire 2.1 2.2 Dimension de Vapnik-Chervonenkis . . . . . . . . . . . . . . Complexité de Rademacher . . . . . . . . . . . . . . . . . . . . 33 36 Structure Type pour l’Établissement d’une Borne de Généralisation . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 2.2.1 Étant donné que, dans le cadre d’apprentissage dans lequel nous nous plaçons, nous n’avons accès qu’à un ensemble fini de données, et que la mesure de la qualité d’un classifieur ou d’un estimateur se fait par rapport à la distribution, il est essentiel d’être capable de généraliser les mesures empiriques effectuées sur un échantillon (qu’il soit d’apprentissage ou de test). Par exemple, nous sommes capables d’évaluer l’erreur d’un classifieur sur l’échantillon d’apprentissage, mais la mesure qui nous intéresse particulièrement est la qualité de généralisation de ce classifieur par rapport à de nouveaux exemples tirés selon la distribution. Comment ces deux quantités sont-elles reliées ? Être capable de borner la précision d’un estimateur par rapport à son espérance, uniformément, sur toute une classe de fonctions nous est indispensable à plusieurs reprises dans ce manuscrit. Ce chapitre est consacré à l’introduction de quelques notions permettant l’obtention de bornes théoriques sur la distance entre une estimation et l’espérance de l’estimateur (erreur de généralisation par exemple). Comme cela a été rapidement évoqué dans le premier chapitre, la mise en oeuvre du principe de minimisation du risque empirique doit s’accompagner d’un contrôle de la complexité de la classe de fonctions considérée. En effet, si un classifieur avec un risque empirique très faible s’avère être un objectif raisonnable, il ne faut pas oublier que cette minimisation à outrance peut conduire à un sur-apprentissage. Un risque empirique nul peut en effet signifier un apprentissage par coeur de l’échantillon d’apprentissage, et donc la production un classifieur très complexe, avec une 31 32 Chapitre 2. Bornes de Généralisation et Complexité de Classes de Concepts Fig. 2.1 – Illustration de la nécessité de contrôler la complexité de la fonction de classification. En haut, le classifieur de droite, plus complexe, a un risque empirique plus faible. Néanmoins, celui de gauche possède une meilleure capacité de généralisation, et ne se trompe sur aucun des trois nouveaux exemples ajoutés, tirés selon la même distribution que l’échantillon d’apprentissage (en bas). faible capacité de généralisation (illustration sur la Figure 2.1). Comme nous allons le voir, il est possible d’écrire le risque réel d’un classifieur f comme étant borné supérieurement par la somme du risque empirique sur un échantillon S donné et d’une fonction C dépendant de la complexité de la classe de fonctions F dans laquelle on a effectué notre recherche de classifieur : emp R`0−1 ( f ) ≤ R`0−1 ( f , S) + C (F ) La stratégie à implémenter pour minimiser l’erreur de généralisation consiste donc à minimiser les deux termes de la somme conjointement, et pas seulement le terme de risque empirique. Il est essentiel d’être capable de calculer des bornes de généralisation pour évaluer les performances en généralisation d’un classifieur, ou dans d’autres conditions pour faire de la sélection de modèles (et, par exemple, éviter le sur-apprentissage). De manière générale, les bornes de généralisation auront la forme suivante : un estimateur calculé sur un échantillon des données, plus un terme qui sera grand si la fonction de classification appartient à une classe de fonctions complexe. C’est à ce second terme, mettant en jeu la complexité (ou la capacité) de la classe de fonctions considérée, que nous nous intéressons dans ce chapitre. Nous abordons 2.1. Dimension de Vapnik-Chervonenkis deux notions assez différentes de complexité de classes de fonction. Nous les utilisons au gré du mémoire et notamment pour l’établissement de bornes de généralisation. Ces bornes sont capitales, puisqu’elles déterminent directement les complexités en temps et en échantillonnage de nos algorithmes dans le modèle Pac : – Dans la première partie, nous décrivons la mesure originelle de capacité pour produire ce type de borne. Elément central de la théorie de l’apprentissage statistique de Vapnik, la dimension Vc (ou Vc-dim) est historiquement la mesure utilisée pour évaluer la complexité d’une classe de fonctions. Par la suite, nous évoquerons également, dans notre cadre de la classification linéaire, les bornes de généralisation faisant intervenir la marge de séparation. – Dans la seconde partie, nous nous intéresserons à la complexité de Rademacher. Apparue plus récemment dans la littérature, la complexité de Rademacher est une alternative à la Vc-dim, alternative ayant la qualité appréciable d’être dépendante des données considérées, qui permet d’obtenir des bornes plus précises. Nous présentons également ici quelques résultats structuraux relatifs à cette mesure. 2.1 Dimension de Vapnik-Chervonenkis Dans cette section, nous abordons principalement une mesure pour l’évaluation de la complexité (ou l’expressivité) d’une classe de fonctions, la dimension de Vapnik-Chervonenkis (que nous notons également Vc-dim), dans le cadre de la classification supervisée binaire. La Vc-dimension est un des éléments de base de la théorie de l’apprentissage statistique, et tient donc une place importante dès les prémices de la discipline, par exemple dans Vapnik et Chervonenkis [1971] ; Vapnik [1982]. Comme évoqué en introduction du chapitre, il est très important, lors de l’apprentissage, de faire un compromis entre la recherche d’un pouvoir de modélisation important qui permet de calculer un classifieur avec un risque empirique faible, et le contrôle de la complexité de la classe de fonction dans laquelle on effectue la recherche, afin d’éviter le surapprentissage. En effet, choisir une classe de fonctions de trop grande capacité peut permettre de séparer n’importe quel ensemble de points étiquetés sans que cela témoigne pour autant d’une quelconque qualité de généralisation Dès 1971, la théorie de l’apprentissage s’est évertuée à donner des bornes de généralisation pour pouvoir, a priori, et sans avoir besoin d’avoir accès à un ensemble de test, évaluer la qualité d’un classifieur. La première permet de borner le risque d’un classifieur en fonction de son risque empirique : Théorème 2.1 Soit X un espace de description, soit Y = {+1, −1} un ensemble de classes et soit D une distribution sur X × Y . Soit S un échantillon de n ∈ N exemples tirés iid selon D , soit F un ensemble de fonctions de classification de X vers Y . Alors pour f ∈ F , avec une probabilité 1 − δ, 33 Chapitre 2. Bornes de Généralisation et Complexité de Classes de Concepts 34 s R `0−1 ( f ) ≤ emp R `0−1 ( f , S ) + δ h ln 2n h + 1 − ln 4 n où h est la dimension de Vapnik-Chervonenkis de F . L’erreur de généralisation dépend donc de 3 quantités : l’erreur empirique du classifieur sur l’ensemble d’apprentissage, la taille de l’échantillon d’apprentissage (plus l’échantillon est grand, plus on a d’assurances pour la généralisation), et la Vc-dimension de la classe de fonctions considérée. Si on est capable de calculer cette Vc-dimension, alors il est aisé de calculer une borne de généralisation. Mais comment mesurer cette quantité ? Ici intervient la notion de pulvérisation. Pour un ensemble S de n exemples, il existe 2n étiquetages possibles. Une classe de fonctions F pulvérise S si et seulement si, pour tout étiquetage dans {+1, −1}n de S, il existe une fonction f ∈ F qui classifie correctement les données de S. La dimension Vc se définit alors facilement. Définition 2.1 Soit X un espace de description, soit Y = {+1, −1}, soit F un ensemble de fonctions de classification de X vers Y . La dimension de Vapnik-Chervonenkis est le cardinal du plus grand ensemble de points pouvant être pulvérisé par F . Cette définition est plutôt intuitive. Une classe de fonctions pouvant pulvériser un grand nombre de points est très expressive et donc susceptible de mener à un apprentissage par coeur puisque séparer n’importe quel échantillon de données peut s’avérer trivial. La classe de concepts qui nous intéresse prioritairement tout au long de ce mémoire est la classe des hyperplans. Le théorème suivant est donc particulièrement important : Soit X un espace vectoriel de dimension d ∈ N. La Vc-dim de la classe des hyperplans W dans X est d + 1. Théorème 2.2 (Blumer et coll. [1989]) D’autres exemples sont disponibles dans Blumer et coll. [1989] notamment. Par exemple, dans un espace vectoriel de dimension d, la dimension Vc de la classe des boules est d + 1 (Dudley [1979]). Une illustration est disponible sur la Figure 2.2. La Vc-dimension va notamment nous permettre de borner, uniformément sur un ensemble de fonctions, la différence entre la valeur estimée d’une fonction (ou d’une fonction indicatrice) sur un échantillon donné et son espérance sur la distribution, à condition que l’échantillon soit suffisamment grand. Ainsi, le théorème 2.3 , auquel nous faisons appel à maintes reprises au cours du mémoire, nous donne une borne minimale polynomiale sur la taille de l’échantillon, dépendante de la dimension de VapnikChervonenkis, afin d’obtenir une estimation suffisamment précise. Nous avons au préalable besoin de définir la notion de pseudo-dimension. Définition 2.2 Soit F ⊆ RX . La pseudo-dimension de F est la VC dimension de {(x, y) → sign ( f (x) − y) : f ∈ F }. 2.1. Dimension de Vapnik-Chervonenkis Fig. 2.2 – Illustration de la Vc-dimension pour 2 classes de concepts en dimension 2, à gauche, la classe des hyperplans, à droite la classe des boules. Il est possible de pulvériser un ensemble de 3 points via la classe des hyperplans (en haut et au centre, à gauche). Par contre, il est impossible de pulvériser un ensemble de 4 points (en bas à gauche). La Vcdimension des hyperplans en dimension 2 est donc 3. Le même raisonnement illustre, à droite, que la Vc-dimension de la classe de fonctions contenant les boules et les antiboules en dimension 2 est 3. 35 Chapitre 2. Bornes de Généralisation et Complexité de Classes de Concepts 36 Si F = f ϕ (x)| ϕ ∈ Φ est de pseudo-dimension h et que R ∈ R+ est tel que | ϕ(x)| ≤ R pour tout ϕ et x, et si un échantillon aléatoire de 9 8R2 2h ln 4R ε + ln δ M ≥ m0 (h, R, δ, ε) = ε2 Théorème 2.3 (Vapnik [1998]) exemples i.i.d est tiré selon une distribution donnée, alors avec probabilité 1 − δ, la moyenne empirique sur l’échantillon de toute fonction indicatrice f ϕ (x) > α est distante d’au plus Rε de son espérance et la moyenne empirique de tout f ϕ est est distante d’au plus ε de son espérance. Pour les classifieurs linéaires, la borne donnée plus haut dépend de la dimension de l’espace. Or, on pourrait vouloir travailler (et nous travaillerons, notamment dans le Chapitre 3) dans un espace de dimension infinie. Dans ce cas, on dispose d’une autre quantité qui a une influence sur la qualité de généralisation : la marge de classification. Intuitivement (voir Figure 2.3), un classifieur linéaire avec une marge importante devrait avoir une qualité de généralisation supérieure à un séparateur ayant une marge plus faible. La marge joue alors le rôle d’un ’espace de sûreté’ vide, où il est peu probable de tirer un grand nombre de points. Cette intuition est en effet confirmée par le théorème suivant : Soit X un espace de description, soit Y = {+1, −1} un ensemble de classes et soit D une distribution sur X × Y . Soit S un échantillon de n ∈ N exemples tirés iid selon D , soit F un ensemble de fonctions de classification de X vers Y . f ∈ F est un classifieur avec une marge γ sur S (c’est à dire tel que y f (x) > γ pour tout (xi , yi ) de S). Alors, avec une probabilité 1 − δ, Théorème 2.4 (Vapnik [1998]) emp R `0−1 ( f ) ≤ R γ ( f , S ) + v u u c ln2 t n γ − ln δ γ2 n où R est une borne sur la norme des exemples de la distribution, c une constante, et 1 emp Rγ ( f , S) = card ({(x, y) ∈ S|y f (x) ≤ γ}) . |S| Maximiser la marge (donc rechercher un classifieur performant sur les données d’apprentissage, mais avec la marge la plus grande possible) est donc une stratégie valide pour obtenir un classifieur avec une erreur de généralisation faible. Nous la mettrons en oeuvre dans les Chapitres 6 à 8. 2.2 Complexité de Rademacher Travailler avec des arguments de Vc-dimension peut poser plusieurs inconvénients majeurs. Tout d’abord, l’obtention d’une nouvelle borne grâce à des arguments de théorie-Vc est, généralement, fastidieux. De plus, il est généralement nécessaire de disposer de masses de données considérables pour obtenir des bornes significatives (c’est-à-dire suffisamment précises pour être pertinentes). Il n’est en effet pas rare que des bornes d’erreur de généralisation prennent des valeurs très largement supérieures à 1, même 2.2. Complexité de Rademacher γ Fig. 2.3 – Illustration intuitive de l’importance de la marge pour la généralisation. Le classifieur en trait plein, avec une marge γ, semble avoir une capacité de généralisation supérieure à celle du classifieur en pointillé, qui possède une marge plus faible. si l’apprentissage s’est fait sur un ensemble de plusieurs milliers de données (alors que, par exemple dans le cadre de la perte 0 − 1, le risque représente la probabilité de se tromper). Ensuite, le raisonnement se fait dans le pire des cas, et il n’y a pas de prise en compte de la distribution des données. D’autres mesures sont possibles, dépendant cette fois-ci des données, donc donnant a priori accès à des bornes plus précises (même si elles peuvent encore s’avérer très larges), et constituant des alternatives récentes et intéressantes à la dimension Vc, par exemple la divergence maximale (Bartlett et coll. [2000]). Nous nous intéressons pour notre part à la complexité de Rademacher Koltchinskii et Panchenko [2000, 2002] ; Bartlett et coll. [2002] ; Bartlett et Mendelson [2002]. La complexité de Rademacher tire son nom de l’utilisation, pour sa définition de variables de Rademacher : Définition 2.3 Une variable de Rademacher κ est une variable aléatoire telle que : 1 avec probabilité 21 κ= −1 sinon La complexité de Rademacher empirique (calculée sur un échantillon de taille n) se définit comme suit : Définition 2.4 Soit S = {x1 . . . xn }. Soit F une classe de fonctions de X dans R. La complexité de Rademacher empirique de F est : # " 2 n R̂n (F , S) = Eκ sup ∑ κi f (xi ) n f ∈F i =1 où κ = [ κ1 . . . κn ] est un vecteur de n variables de Rademacher indépendantes. Notons qu’il existe une autre mesure comparable, la complexité de Gauss (Bartlett et Mendelson [2002]), où utilisation est faite de variables gaussiennes plutôt que de variables de Rademacher. En quoi R̂(F , S) est-elle une mesure de complexité ? Intuitivement, elle mesure combien un étiquetage aléatoire des données d’un échantillon 37 Chapitre 2. Bornes de Généralisation et Complexité de Classes de Concepts 38 peut être corrélé avec une fonction de classification appartenant à F, mesure qui se rapproche de la notion de pulvérisation, à la différence que S est un échantillon tiré suivant D alors pour la Vc-dim, on considère le supS, f ∈F . La complexité de Rademacher se définit comme l’espérance sur un échantillon de la complexité de Rademacher empirique : Définition 2.5 Soit D une distribution de probabilité sur X . Soit F une classe de fonctions de X dans R. La complexité de Rademacher de F est : # " 2 n Rn (F ) = Ex1 ...xn Eκ sup ∑ κi f (xi ) = Rn (F ) = ES R̂n (F , S) n f ∈F i =1 où κ = [ κ1 . . . κn ] est un vecteur de n variables de Rademacher indépendantes. Nous ferons usage à plusieurs reprises de la complexité de Rademacher. Pour mieux cerner la fonction jouée par cette mesure, nous donnons un aperçu de la manière dont elle nous sera utile pour établir une borne de généralisation (pas nécessairement en utilisant la perte `0−1 ), uniforme pour une classe de fonctions donnée. Avant de donner la structure ’type’ de ces démonstrations, nous introduisons l’inégalité de concentration de McDiarmid, une généralisation de la borne de Chernoff, que nous utilisons régulièrement dans ce mémoire : Soit X1 . . . Xn n variables aléatoires indépendantes à valeur dans un ensemble A. Supposons que f : An → R satisfait : sup f ( x1 . . . xn ) − f ( x1 , . . . xi−1 , x 0 , xi+1 . . . xn ) ≤ ci , Théorème 2.5 (McDiarmid [1989]) i x1 ,...xn ,xi0 pour tout i ≤ n. Alors, pour tout t > 0, P [ f ( X1 , . . . , Xn ) − E f ( X1 , . . . , Xn ) ≥ t] ≤ exp −2t2 ∑in=1 c2i 2.2.1 Structure Type pour l’Établissement d’une Borne de Généralisation Soit X un espace de description, soit Y l’espace des classes et D une distribution sur X × Y . Soit F une famille de fonctions. Soit n un entier positif et S un échantillon de n données tirées identiquement et indépendamment selon D , avec S = {(x1 , y1 ) . . . (xn , yn )}. Soit la fonction de perte ` : X × Y → R. On définit la perte moyenne sur l’échantillon µ : X n × F → R, telle que µ(S, c) = n1 ∑in=1 `(c(xi ), yi ). Objectif : Borner, avec une grande probabilité l’expression suivante : ∆(S) = sup | ES∼D µ(S, c) − µ(S, c)| c∈F On veut donc s’assurer que µ (la perte empirique) est proche de son espérance (la perte réelle) pour n’importe quelle fonction de F . L’étape clé de la démonstration, ici, se base sur la constatation suivante : ∆(S) ≤ | ∆(S) − ES∼D ∆(S)| + ES∼D ∆(S). 2.2. Complexité de Rademacher 39 Etape 1 Nous allons donc d’abord borner non pas ∆(S) mais la quantité | ∆(S) − ES∼D ∆(S)|. À condition d’être capable de borner par t la variation maximale de ∆(S) lorsqu’un exemple de l’échantillon S est modifié, il est possible d’appliquer simplement l’inégalité de McDiarmid et de conclure que : 2ε2 P [| ∆(S) − ES∼D ∆(S)| > ε] < δ = exp − 2 nt . Etape 2 Reste maintenant à déterminer une borne sur ES∼D ∆(S). C’est dans ce calcul qu’interviendra la complexité de Rademacher, puisque : ES ∆(S) = ES∼D sup ES0 ∼D µ(S0 , c) − µ(S, c) c∈F ≤ ES∼D sup ES0 ∼D µ(S0 , c) − µ(S, c) c∈F Pour ’sortir’ la seconde espérance du sup et donc obtenir une expression proche d’une complexité de Rademacher, nous allons avoir besoin d’utiliser l’inégalité de Jensen : Théorème 2.6 Soit f une fonction convexe sur ] a, b[ et X une variable aléatoire d’espérance finie, à valeurs dans ] a, b[. Alors l’inégalité suivante est vraie : f ( E( X )) ≤ E [ f ( X )] . Ce théorème implique, avec κ vecteur de Rademacher ES∼D ∆(S) ≤ ES∼D ES0 ∼D sup µ(S0 , c) − µ(S, c) c∈F 1 n ≤ ES,S0 ∼D sup ∑ `(c(xi ), yi ) − `(c(xi0 ), yi0 ) n c∈F i =1 1 n 0 0 ≤ ES,S0 ∼D,κ sup ∑ κ (`(c(xi ), yi ) − `(c(xi ), yi )) c∈F n i =1 (S et S’ sont iid) 2 n ≤ ES∼D,κ sup ∑ κi `(c(xi ), yi ) n c∈F i =1 (inég. triangulaire) Conclusion : on se retrouve alors avec pour expression une complexité de Rademacher, qu’il suffira de calculer pour obtenir la borne sur ∆(S), borne qui sera de la forme : ∆(S) ≤ δ + R(F` ), avec F` = {(x, y) → `(c(x), y)|c ∈ F }. Nous donnons ici quelques résultats structurels qui nous seront extrêmement utiles pour manipuler ces complexités de Rademacher, notamment dans le Chapitre 7, et qui nous permettront de calculer ∆(S) et d’obtenir ainsi notre borne uniforme : 40 Chapitre 2. Bornes de Généralisation et Complexité de Classes de Concepts Théorème 2.7 (Bartlett et Mendelson [2002] Théorème 12) Soient F , F1 . . . Fk , H des classes de fonctions de X dans R. Alors : – Si F ⊆ H, Rn (F ) ≤ Rn (H) – Rn (F ) = Rn (convF ) = Rn (absconvF ) – Pour tout c ∈ R, Rn (cF ) = |c| Rn (F ) – Si φ : R → R est Lipschitzienne de constante Lφ , et qu’elle satisfait φ(0) = 0, alors Rn (φ ◦ F ) ≤ 2Lφ Rn (F ) – Rn ∑ik=1 Fi ≤ ∑ik=1 Rn (Fi ) Enfin, nous introduisons une dernière proposition définissant une borne sur la complexité de Rademacher de la classe des hyperplans sans biais (i.e de la forme hw, xi = 0), que nous utiliserons dans la suite du mémoire : La complexité de Rademacher Rn , (sur un échantillon de taille n, tel que chaque description ait une norme de au plus R) de la classe de fonctions {x → hw, xi w ∈ X , k wk W } (les hyperplans d’équation hw, xi = 0 tels que k wk ≤ W) est bornée par Proposition 2.1 (Bartlett et Mendelson [2002] Lemme 22) 2WR √ . n 3 Noyaux de Mercer et Réduction de Dimension Sommaire 3.1 3.2 3.3 Noyaux de Mercer et Astuce du Noyau . . . . . . . . . . . . Réduction de Dimension par Projections Déterministes Réduction de Dimension par Projections Aléatoires . . 42 45 48 Dans les Chapitres 1 et 2, il a été établi que contrôler la complexité de la classe de fonctions considérée était important, et que se limiter à la classe des séparateurs linéaires était une bonne stratégie pour contrôler cette complexité. Néanmoins, de nombreux problèmes ne sont pas naturellement linéairement séparables. Comment traiter ces problèmes tout en conservant les bonnes qualités de généralisation des séparateurs linéaires ? C’est tout l’intérêt de l’astuce du noyau (ou kernel trick). En effet, grâce au choix d’un noyau de Mercer adéquat, il est possible de plonger les données dans un espace de généralement grande dimension (potentiellement infinie), où il sera possible de séparer les données linéairement et donc où il sera possible d’utiliser des algorithmes de séparation linéaire sur des données non linéairement séparables à l’origine. Un autre enjeu apparaît alors, étant donné que la dimension Vc des séparateurs linéaires est directement fonction de la dimension de l’espace dans lequel se trouvent les données (donc dans le cas de plongement des données, la dimension de l’espace de plongement). Nous abordons donc ici plusieurs méthodes pour réduire la dimension de l’espace de description, en conservant au maximum la structure des données dans l’espace (par exemple, conservation approximative de la séparabilité linéaire dans un espace de plongement). Ce chapitre est structuré en trois parties : – Dans la première section, nous introduisons les noyaux de Mercer et l’astuce du noyau. Nous expliquons comment des algorithmes de séparation linéaire peuvent ainsi aisément s’étendre à des problèmes non linéaires. Nous donnons enfin quelques exemples parmi les noyaux les plus répandus dans la littérature. 41 Chapitre 3. Noyaux de Mercer et Réduction de Dimension 42 11 00 00 11 (0,1) 1 0 0 (1,1,1) 1 (1,1) (0,1,0) 11 00 00 11 00 11 1 0 0 1 (0,0) (1,0) (0,0,0) (1,0,0) Fig. 3.1 – Exemple de plongement des données dans un espace de dimension supérieure. Les données ne sont initialement (à gauche) pas séparables dans un espace de dimension 2. Elles le deviennent une fois plongées dans un espace de dimension 3. – Dans une seconde section, nous nous concentrons sur les techniques de réduction de dimension déterministes. Nous abordons notamment les stratégies classiques que sont l’analyse en composantes principales (ou Pca) et la décomposition de Gram-Schmidt (Gs) dans leurs versions kernelisées. – Enfin, une nouvelle stratégie pour la réduction de dimension a été la cible d’un intérêt récent (par exemple Vempala [2004] ; Balcan et coll. [2004]). Contrairement aux projections déterministes, le choix du vecteur de projection se fait aléatoirement (d’où le nom de projections aléatoires). Nous introduisons notamment un important théorème, qui nous sera particulièrement utile dans le Chapitre 5, montrant qu’un nombre suffisant de vecteurs aléatoires permet d’obtenir une projection permettant de conserver approximativement les distances. 3.1 Noyaux de Mercer et Astuce du Noyau Comment mettre à profit le fait que l’erreur empirique soit un bon estimateur des qualités de généralisation pour les séparateurs linéaires dans un cadre plus général de classification ? Comment utiliser les algorithmes classiques de séparation linéaire (perceptron, régression logistique, analyse discriminante linéaire, Svm. . .) sur des distributions plus complexes, non linéairement séparables ? Une réponse possible est de faire appel aux noyaux de Mercer, dont nous donnons la définition : Définition 3.1 Soit X un sous-espace compact de Rn . La fonction K : X 2 → R est un noyau de Mercer si et seulement si K est symétrique définie positive (Sdp). Autrement dit, pour toute fonction g ∈ L2 , Z K (x1 , x2 ) g(x1 ) g(x2 )dx1 dx2 ≥ 0 En quoi cette définition peut-elle nous aider à traiter des problèmes de classification non linéaire ? Nous allons avoir recours à une astuce utilisant la semi-définie positivité des noyaux de Mercer. La Sdp implique l’existence d’un espace de Hilbert induit, auquel nous n’avons pas forcément 3.1. Noyaux de Mercer et Astuce du Noyau accès, de dimension possiblement infini (le plongement peut être également vu en tant qu’espace fonctionnel, voir par exemple Cristianini et Shawe-Taylor [2000]). L’astuce du noyau (ou kernel trick) consiste à plonger les données dans cet espace de dimension supérieure, où les données seront, dans l’idéal, séparables linéairement. L’illustration de cette astuce est donnée Figure 3.1. Plus formellement : Théorème 3.1 Soit X un espace de description. Une fonction symétrique K : X 2 → R est semidéfinie positive si et seulement si il existe φ : X → H (avec H Hilbert) telle que K peut être exprimée comme un produit scalaire : K (xi , x j ) = hφ(xi ), φ(x j )i. Afin de profiter de cette propriété et ainsi utiliser des algorithmes de séparation linéaires sur des données non linéairement séparables, il suffit de trouver une fonction noyau telle que les données soient linéairement séparables dans l’espace de plongement induit. Précisons qu’en général, la fonction de plongement est sous-jacente et donc inconnue, nous avons seulement accès à la fonction noyau, c’est-à-dire au produit scalaire dans l’espace de plongement (à la fonction de similarité). Le choix du noyau, et donc de l’espace de plongement, est en conséquence un problème important. Si l’on dispose d’informations suffisantes sur le problème que l’on veut résoudre, alors il est possible de construire un noyau ad-hoc, spécifique au problème donné (stratégie très utilisée en bio-informatique). Dans ce cas, il est possible de contrôler certaines caractéristiques du noyau, par exemple la dimension de l’espace de plongement. Mais construire un tel noyau est une procédure difficile qui nécessite des connaissances a priori importantes sur le problème qui nous est posé. Dans le cas où ces connaissances ne seraient pas disponibles (ce qui est régulièrement le cas, en pratique), alors une stratégie envisageable est de se tourner vers un noyau générique (par exemple, de type gaussien) en réglant les hyperparamètres par validation croisée. L’espace de plongement associé au noyau ainsi sélectionné peut s’avérer être de dimension infinie. Nous ne traiterons pas plus dans ce mémoire cette question (capitale) du choix du noyau, cette problématique s’avérant être trop éloignée du sujet central de cette thèse. Pour être kernelizable, c’est-à-dire transformable en méthode à noyau et ainsi profiter de l’idée d’espace induit, un algorithme doit pouvoir s’exprimer en terme de produits scalaires entre les données, et ne doit pas demander d’accès direct aux descriptions. C’est le cas de la plupart des algorithmes de séparation linéaire (perceptron, machine à vecteur de support, analyse discriminante linéaire. . .). Rappelons que dans le contexte de la classification supervisée, l’algorithme n’a accès qu’à un échantillon des données. Dans le cadre des méthodes à noyau, afin de profiter du plongement l’espace induit, l’algorithme ne disposera le plus souvent que de la matrice de similarité entre les exemples dans l’espace de plongement, la matrice de Gram : Définition 3.2 Soit une fonction symétrique K : X 2 → R, soit un ensemble de n données S = {x1 , . . . , xn }. La matrice de Gram G = ( Gij ) de K sur l’échantillon S est telle que : 43 Chapitre 3. Noyaux de Mercer et Réduction de Dimension 44 ∀i, j ≤ n Gij = K (xi , x j ) La semi-définie positivité (ou Sdp) de la fonction noyau implique également la Sdp de la matrice de Gram. Théorème 3.2 Soit X un espace de description. Une fonction symétrique K (xi , x j ) : est semi-définie positive si et seulement si K ( x1 , x1 ) K ( x1 , x2 ) ... ∀n ∈ N, ∀S = {x1 , . . . , xn } ∈ X n ,G = K (x2 , x1 ) ... ... X2 → R ... ... ... est semi-définie positive. Autrement dit, toutes les valeurs propres de la matrice de Gram sont positives ou nulles. Cette caractéristique nous sera extrêmement utile dans le Chapitre 7. La Sdp est donc un point crucial de l’apprentissage par méthodes à noyau. Signalons néanmoins que certains travaux se sont attaqués à l’apprentissage avec des fonctions de similarité non définies-positives (citons pour l’exemple Balcan et Blum [2006]). Dans la suite du mémoire, nous nous concentrerons exclusivement sur des fonctions Sdp. Il existe un certain nombre de noyaux de Mercer standard, qui apparaissent régulièrement dans la littérature. En voici quelques exemples pour clore cette section : – Le noyau gaussien, dont l’espace de plongement correspondant est de dimension infinie, défini pour une largeur s ∈ R+ : K (xi , x j ) = exp − ! x i − x j 2 2s2 – Le noyau polynomial de degré p ∈ N+ : K ( xi , x j ) = h xi , x j i + 1 p . On notera que le produit scalaire standard est un cas particulier avec p = 1. Ces deux noyaux seront ceux qui reviendront le plus souvent tout au long de ce mémoire. On peut également citer des opérateurs plus spécifiques définis par exemple sur les chaînes de caractères (comme le noyau spectral (Fortuna [2004] qui compte le nombre de sous-chaînes communes entre deux chaînes), les signaux ou les graphes (voir Gärtner et coll. [2003]). Nous concluons cette partie en introduisant une dernière notation. Soit une fonction de plongement φ : X → X 0 avec X , X 0 espaces de descriptions. Soit D une distribution sur X . Nous noterons φ(D) le plongement de D dans X 0 défini par la transformation φ. 3.2. Réduction de Dimension par Projections Déterministes 3.2 Réduction de Dimension par Projections Déterministes L’astuce du noyau permet donc de plonger (virtuellement) les données dans un espace de grande dimension, possiblement infini. Or la complexité en temps et en échantillonnage d’un algorithme d’apprentissage peut dépendre de la dimension de l’espace dans lequel le processus d’apprentissage se déroule. Ainsi, certains algorithmes d’apprentissage linéaire sous bruit de classification comme le perceptron (voir Chapitre 4) ne permettent pas en théorie l’utilisation de noyau à plongement infini. Afin de pouvoir exploiter au mieux les nombreux algorithmes déjà existants, il est donc nécessaire de savoir apprendre y compris dans des espaces de très grande dimension. En conséquence il se pose la question suivante : Comment réduire la dimension de l’espace de plongement, en conservant, à tout le moins approximativement, la séparabilité linéaire des données ? Dans cette section, nous introduisons trois algorithmes déterministes pour la réduction de dimension (revenant à une sélection de variables). Pour commencer, nous évoquons la version noyau (ou kernelisée) de l’analyse en composantes principales, la Kpca, étudiée notamment par Schölkopf et coll. [1998] ; Mika et coll. [1999] ; Rosipal et Trejo [2000] ; Tipping [2001]. L’analyse en composante principale est une méthode répandue dans le domaine de l’analyse de données. Elle consiste à rechercher dans l’espace de description des données un sous-espace de faible dimension préservant au mieux la structure des données d’origine lorsqu’elles y sont projetées, c’est-à-dire en limitant au maximum l’erreur de reconstruction (la distance moyenne entre un point et son projeté). Cette stratégie permet (si le sousespace calculé est de dimension suffisante) la conservation approximative des caractéristiques de l’échantillon, telle que la séparabilité linéaire. De manière informelle, l’algorithme de projection par Pca se déroule en 2 étapes : 1. Rechercher les vecteurs propres de la matrice de covariance, et les classer par ordre de valeur propre décroissante (voir Figure 3.2) 2. Projeter les exemples de l’échantillon dans l’espace engendré par les vecteurs propres extraits La recherche des vecteurs engendrant les sous-espaces principaux, pour un échantillon de n descriptions S = {x1 , . . . , xn } s’effectue en tentant de minimiser l’erreur de reconstruction : n vT 2 ∑ xTj vv − x j v =1 min . j =1 2 Il suffit d’écrire le lagrangien L = ∑nj=1 x Tj vv − x j − λ(v T v − 1) et de remarquer que celui ci s’annule pour v T Cv = λ avec C la matrice de covariance de l’échantillon : 45 46 Chapitre 3. Noyaux de Mercer et Réduction de Dimension v2 v1 Fig. 3.2 – Illustration d’une Pca sur un ensemble de points. L’algorithme extrait tout d’abord le vecteur selon lequel la variance des données est maximisée (v1 ) puis son vecteur orthogonal à v2 . C= 1 n n ∑ x j xTj . j =1 Cette matrice est semi-définie positive, et peut donc être diagonalisée avec des valeurs propres λi (pour un vecteur propre vi ) non négatives : λi vi = Cvi . L’analyse en composantes principales peut s’écrire facilement en terme de produits scalaires, ce qui la rend aisément kernelisable puisqu’il est possible d’écrire le problème comme : vi = 1 nλi n ∑ h x j , vi i x j . (3.1) j =1 A priori, effectuer une Pca dans l’espace de plongement d’une fonction noyau parait donc tout à fait raisonnable. Toute solution au problème 3.1 peut s’écrire vi = ∑nj=1 αij x j avec αij ∈ R. Notons αi le vecteur (αi1 . . . αin ). Quelques calculs matriciels permettent de montrer que le problème Kpca peut s’exprimer en fonction de la matrice de Gram G et s’écrire simplement : Gαi = λi αi Ainsi, il est possible d’extraire jusqu’à n valeurs propres non nulles, ainsi que leurs vecteurs propres associés. Notons qu’effectuer une projection sur les k premiers vecteurs extraits par Kpca est optimal du point de vue de l’erreur de reconstruction pour une réduction de l’espace de plongement à k dimensions. A priori, Kpca est donc un algorithme intéressant pour réduire la dimension de l’espace tout en conservant au maximum ses caractéristiques. Malheureusement, la kernelisation de l’analyse en composantes principales présente un défaut important : l’extraction de valeurs propres faisant intervenir la matrice de Gram, les calculs matriciels nécessaires sont lourds. La complexité en temps de l’algorithme est en O(n3 ), et par conséquent, le temps de calcul peut devenir très rapidement rédhibitoire, dès l’instant où apparaît la nécessité de s’attaquer à des jeux de données de grande taille. Un calcul approché, via la méthode de Nyström, du spectre de la matrice 3.2. Réduction de Dimension par Projections Déterministes de Gram permet la mise en oeuvre d’une Kpca rapide en pratique, avec une complexité en O(n) (voir Drineas et Mahoney [2005]). Nous utiliserons une seconde technique pour effectuer la réduction de dimension de l’espace de plongement : le procédé de Gram-Schmidt (ou Gs), proposé, dans sa version kernelisée, sous le nom de Kpca par matching pursuit par Hussain et Shawe-Taylor [2009]. Initialement, Gs (Algorithme 1) est un algorithme itératif permettant d’orthonormaliser une famille libre de vecteurs {x1 . . . xn }. A chaque étape, on sélectionne un vecteur auquel on enlève la composante dépendantes des vecteurs précédemment sélectionnés. Algorithme 1 : Procédé d’orthonormalisation de Gram-Schmidt Entrée: {x1 . . . xn }, k Sortie: {v1 . . . vk } orthonormale i=1 répéter 1 vi = xi − ∑ij− =1 i = i+1 jusqu’à i = k hv j ,xi i v hv j ,v j i j Nous nous intéressons plus particulièrement à la version noyau de l’algorithme, Kgs (pour Kernel Gram-Schmidt, Lodhi et Guo [2002] ; ShaweTaylor et Cristianini [2004] ; Zheng [2006] ; He [2009]). Dans ce cadre, la base de vecteurs à normaliser est, étant donné une fonction de plongement φ, {φ(x1 ) . . . φ(xn ) }. Le premier vecteur choisi par l’algorithme est : φ ( xi ) v1 = . k φ(xi )k Le i −ème vecteur est obtenu en enlevant à φ(xi ) les composantes dépendant de v1 , . . . , vi−1 dans le but de le rendre orthogonal à chacune d’elle : i −1 φ(xi ) − ∑ hv j , φ(xi )iq j = (I − Vi−1 VTi−1 )φ(xi ) j =1 avec Vi−1 la matrice dont les i colonnes sont les vecteurs v1 , . . . , vi−1 . On peut maintenant écrire le vecteur normalisé vi et le vecteur φ(xi ) en fonction de la base {v1 , . . . , vi } : (I − Vi−1 VTi−1 )φ(xi ) vi = ( I − V i−1 V T ) φ ( xi ) , i−1 φ ( xi ) = V i VTi−1 φ(xi ) ( I − V i−1 V T ) φ ( xi ) i−1 . Pour limiter au maximum l’erreur de reconstruction et parce qu’on ne va pas jusqu’à i = n, le choix du i-ème vecteur ne se fait pas de manière aléatoire. On sélectionne le vecteur φ(xi ) ayant la composante indépendante 47 Chapitre 3. Noyaux de Mercer et Réduction de Dimension 48 de v1 , . . . , vi−1 (le résidu) la plus importante. Comme pour Kpca, l’idée est de projeter les données sur les k (avec k très inférieur à n) premiers vecteurs extraits grâce à Kgs. Il suffira ensuite de recalculer la matrice de Gram pour les données projetées. Evidemment, l’analyse en composantes principales étant optimale du point de vue de l’erreur de reconstruction, Kgs ne peut prétendre à la concurrencer sur ce point. Par contre, la complexité de Kgs joue fortement en sa faveur, puisque l’algorithme ne nécessite pas de calculs matriciels difficiles, puisque l’on travaille à chaque itération sur des matrices de taille au plus k × k, et donc il n’est pas nécessaire de manipuler des matrices dont la taille dépend du nombre de données de l’échantillon. La complexité globale de la procédure est ainsi en O(k2 n). De plus, Kgs possède des qualités de parcimonie pouvant être profitables au point de vue statistique. Le dernier algorithme déterministe pour la réduction de dimension que nous évoquerons rapidement dans cette partie est le Partial Least Squares (Pls) (voir par exemple Rosipal et Trejo [2001] ; Barkerl et Rayens [2003]). Bien qu’initialement non destiné à la classification (l’algorithme était conçu pour la linéarisation de modèles non-linéaires), Pls possède des caractéristiques proches de l’analyse en corrélation canonique et, surtout, du discriminant linéaire de Fisher (Lda). Son utilisation à des fins de discrimination parait donc tout à fait fondée. Contrairement à Pca, nous cherchons ici à distinguer la variance intra-classe de la variance inter-classe. De plus, contrairement à Lda, elle permet une sélection de variable, et donc une réduction de dimension. Pls extrait les directions les plus intéressantes, non pas dans le but de limiter l’erreur de reconstruction, mais dans l’idée de favoriser au maximum la discrimination entre les données positives et négatives . Malheureusement pour ces algorithmes déterministes, les résultats théoriques, notamment sur l’erreur de reconstruction pour Kpca (Blanchard et coll. [2007]) ou sur la concentration des valeurs propres de la matrice de Gram (Shawe-Taylor et coll. [2002]), peuvent s’avérer triviaux selon la distribution ou l’échantillonnage des données considérés. Or, dans le cadre Pac, nous recherchons des résultats valables sans condition autre que la séparabilité linéaire avec marge γ > 0 sur la distribution. Afin de légitimer théoriquement nos résultats, nous nous tournerons alors vers d’autres stratégies pour la réduction de dimension. 3.3 Réduction de Dimension par Projections Aléatoires À l’origine répandues notamment dans le domaine des algorithmes d’approximation, les projections aléatoires permettent de réduire substantiellement la dimension de l’espace tout en conservant de manière au mieux la structure du problème. Dans cette section, nous considérons seulement des espaces de descriptions dans Rd avec d ∈ N ∪ ∞ L’algorithme présenté dans cette section a été appliqué à la séparation li- 3.3. Réduction de Dimension par Projections Aléatoires γ + − Fig. 3.3 – Illustration d’une distribution approximativement séparable avec une marge γ. Les deux ellipses représentent les distributions des données respectivement positives et négatives. Seule la partie grisée ne respecte pas la condition de marge. néaire avec marge, et étendu aux méthodes à noyau dans Balcan et coll. [2004] ; Blum [2005]. A la base de ces travaux se trouve le lemme de Johnson-Lindenstrauss. De manière informelle, étant donné un ensemble de n points dans un espace de dimension quelconque, si nous projetons ces points dans un espace engendré par des vecteurs tirés aléatoirement 1 de dimension d ∈ N, alors d = O ε2 log n est suffisant pour conserver les distances entre descriptions deux-à-deux avec un facteur 1 ± ε. Le bien fondé de cette approche repose donc sur l’observation suivante : si un problème de classification est séparable avec une grande marge (observation notamment valable dans un espace de plongement associé à un noyau donné), alors une projection aléatoire dans un espace de plus faible dimension devrait, par le lemme de Johnson-Lindenstrauss, préserver approximativement la séparabilité linéaire du problème avec une grande probabilité (illustration : Figure 3.3). Plus formellement, le lemme suivant donne, pour une distribution linéairement séparable avec une marge γ, une dimension de projection suffisant à conserver une séparabilité linéaire approximative : Lemme 3.1 (Balcan et coll. [2004]) Soit γ > 0, et soit une distribution D ∈ D γ . Si on tire 8 1 1 d≥ + ln ε γ2 δ exemples v1 , . . . , vd iid selon D , et qu’on note ϕ la projection de X vers {v1 , . . . , vd }, alors, avec une probabilité supérieure à 1 − δ, il existe un vecteur w0 dans l’espace engendré par {v1 , . . . , vd } tel que : Pr(x,y)∼D γ hw0 , ϕ(x)i < <ε yi 2 kw0 k k ϕ(x)k Pour pouvoir aborder les problèmes qui nous intéressent, il reste à étendre ce lemme à la classification par méthodes à noyau. Etant donnés un noyau de Mercer K avec une fonction de plongement ϕ : X → X 0 et une distribution D , Balcan et coll. [2004] propose une projection F1 : X → Rd (que nous ne détaillerons pas ici). L’espace de projection est construit en tirant aléatoirement d vecteurs selon D . Alors, si la distribution D est linéairement séparable dans l’espace de plongement X 0 , la projection F1 (D) est également (presque) linéairement séparable : 49 Chapitre 3. Noyaux de Mercer et Réduction de Dimension 50 Soit X , X 0 deux ensembles de description, soit K : X 2 → R, soit ϕ : X → X 0 la fonction de plongement associée à K. Soit D une distribution telle que ϕ(D) soit linéairement séparable dans X 0 avec une marge γ, alors avec probabilité 1 − δ, la projection F1 : X → Rd1 avec 8 1 1 d1 ≥ + ln ε γ2 δ Théorème 3.3 (Balcan et coll. [2004]) définie comme F1 : x → (K (x, x1 ), . . . , K (x, xd1 )) avec x1 , . . . , xd1 tirés iid de D , est telle qu’il existe un vecteur w0 ∈ Rd1 : hw0 , F1 (x)i γ Pr(x,y)∼D yi < <ε 2 kw0 k k F1 (x)k Pour cette première transformation, la dimension de l’espace de projection dépend linéairement de l’inverse de 1ε . Balcan et coll. [2004] proposent un second type de projection ’améliorée’ afin d’obtenir une dépendance logarithmique en la précision. Nous allons donc procéder à 2 projections aléatoires successives. La première F10 , semblable (à une orthonormalisation près) à celle du théorème 3.3, en sélectionnant les dimensions de projections selon la distribution des données. Puis dans cet espace intermédiaire, tirer aléatoirement (selon une loi uniforme) les vecteurs pour construire le second espace de projection. Nous noterons cette seconde projection F2 : Rd1 → Rd2 . La composée de ces deux projections, F3 : X → Rd2 avec F3 = F2 ◦ F10 a les mêmes qualités, en terme de conservation de la structure de l’espace de plongement que F1 , mais avec une dimension de projection substantiellement plus petite, caractéristique extrêmement intéressante d’un point de vue calculatoire. Soit X un ensemble de description, soit K : X 2 → R, soit ϕ : X → X 0 la fonction de plongement associée à K. Soit D une distribution telle que ϕ(D) soit linéairement séparable dans X 0 avec une marge γ, alors avec probabilité 1 − δ, la projection F3 : X → Rd3 avec 1 1 d3 = O log γ2 εδ Théorème 3.4 (Balcan et coll. [2004]) est telle qu’il existe un vecteur w0 ∈ Rd2 : hw0 , xi γ Pr(x,y)∼D yi < <ε 4 kxk kw0 k Ce dernier théorème clôt ce Chapitre 3. Les techniques de réduction de dimension, et en particulier les projections aléatoires, seront utilisées dans l’algorithme proposé dans le Chapitre 5. En effet, apprendre une distribution linéaire dans un espace de très grande dimension pose problème au niveau des complexités théoriques en temps et échantillonnage. Les projections aléatoires nous permettront, tout en contrôlant la séparabilité du problème résultant, et ainsi en gardant l’apprentissage possible, de nous ramener dans un espace de travail de dimension plus raisonnable. Deuxième partie Perceptrons et Bruit de Classification 51 4 Un Premier Algorithme : le Perceptron Linéaire Sommaire 4.1 4.2 L’Algorithme du Perceptron . . . . . . . . . . . . . . . . . . . Perceptron et Bruit de Classification . . . . . . . . . . . . 54 56 Après avoir introduit, dans la première partie du mémoire, diverses notions de base, nous abordons dans ce quatrième chapitre un premier algorithme pour la classification, l’algorithme du perceptron linéaire. Introduit par Rosenblatt [1958], le perceptron est, initialement, inspiré du fonctionnement des neurones biologiques. Algorithme exclusivement destiné à la classification linéaire binaire, le perceptron, qui constitue un des algorithmes originels de ce domaine de l’apprentissage, n’est constitué que d’un seul neurone (schéma Figure 4.1). Le perceptron peut être étendu à la classification non linéaire, en utilisant un nombre plus important de neurones, et en les organisant sur plusieurs couches. On parlera alors de perceptron multicouches (appartenant à la famille des réseaux de neurones, voir Figure 4.2). Cette partie, dans laquelle nous ne traitons que du perceptron linéaire, sans aborder le modèle plus complexe des réseaux de neurones est organisée comme suit : x1 x2 x3 w1 Σ w2 sign y w3 Fig. 4.1 – Schéma du perceptron linéaire. À partir d’un ensemble d’entrées, l’algorithme calcule un vecteur w = (w1 , w2 , w3 ) . Pour une entrée x = ( x1 , x2 , x3 ),. l’attribution de la classe se fait selon le signe de hw, xi. 53 Chapitre 4. Un Premier Algorithme : le Perceptron Linéaire 54 Fig. 4.2 – Illustration d’un perceptron multicouches. On distingue trois couches de neurones successives : une couche d’entrée, une couche cachée et une couche de sortie. Pour le perceptron linéaire, il n’y a pas de couche cachée. – Dans la première section, nous introduisons rapidement l’algorithme itératif du perceptron. Nous donnons également la borne de convergence théorique de l’algorithme. – Dans la seconde section, nous nous intéressons à quelques travaux antérieurs sur l’apprentissage de perceptrons. Nous détaillons en particulier deux algorithmes destinés à la classification sur des données altérées par du bruit de classification uniforme. 4.1 L’Algorithme du Perceptron L’algorithme du perceptron est un algorithme itératif, destiné à la classification linéaire, et inspiré du fonctionnement des neurones biologiques. Commençons par rappeler quelques éléments du cadre dans lequel nous nous plaçons : la classification supervisée binaire. Nous considérons des descriptions dans un espace de Hilbert X associées à une étiquette positive ou négative et donc un espace de classe Y = {+1, −1}. L’algorithme du perceptron (Algorithme 2), schématisé sur la Figure 4.1 a pour objectif l’apprentissage d’un séparateur linéaire, et présente une garantie de convergence uniquement dans le cas où l’échantillon d’apprentissage est linéairement séparable. Il fonctionne comme suit : tant qu’il existe, dans l’échantillon d’apprentissage, un exemple incorrectement classifié par le vecteur courant calculé par l’algorithme, alors on effectue une mise à jour de l’hyperplan à l’aide de l’exemple mal classé. En d’autres termes, l’algorithme prend en compte le fait qu’une description xi est mal classée pour modifier le classifieur courant et faire en sorte que xi soit correctement (ou moins mal) classifié à l’itération suivante. L’algorithme d’apprentissage est donc extrêmement simple, et surtout, pour revenir à nos objectifs initiaux, est un algorithme facilement convertible en méthode à noyau. L’algorithme ne s’arrête que lorsque la totalité de l’échantillon est classée correctement ce qui implique l’impossibilité d’utiliser l’algorithme du perceptron sur des données non linéairement séparables. Ainsi, sur des données affectées par un bruit de classification, il est fort probable que l’algorithme ne converge pas. Par contre, si les données peuvent être classifiées correctement par un hyperplan, la condition d’arrêt est atteinte avec 4.1. L’Algorithme du Perceptron 55 w∗ w w∗ w w∗ w w∗ w Fig. 4.3 – Schéma décrivant l’algorithme itératif du perceptron linéaire. Soit un échantillon de données étiqueté par un vecteur w∗ , les exemples positifs en blanc, les négatifs en noir. 1) Le vecteur courant w ne classifie pas correctement bien la totalité de l’échantillon, notamment l’exemple positif cerclé de rouge. 2) On utilise cet exemple pour mettre à jour le vecteur de classification w. 3) L’exemple négatif (en rouge) est mal classé par w. 4) La mise à jour du classifieur est effectuée grâce à cet exemple mal classé. L’échantillon est alors correctement classé par w et l’algorithme s’arrête. Chapitre 4. Un Premier Algorithme : le Perceptron Linéaire 56 Algorithme 2 : Algorithme du perceptron linéaire Entrée: Un échantillon S = {(x1 , y1 ), . . . , (xn , yn )} Sortie: Un hyperplan (w, b) t=0 w0 = 0, b0 = 0 tant que ∃i, yi (hwt , xi i + b) ≤ 0 faire wt+1 = wt + yi kxxi k i bt + 1 = bt + y i t = t+1 fin tant que retourner (wt , bt ) certitude, et ce en un nombre d’itérations maximal dépendant de la marge de séparation du problème : Soit S ∈ (X × Y )n un échantillon de n points {(x1 , y1 ), . . . , (xn , yn )} séparable avec une marge γ > 0. Soit R ∈ R tel que pour tout i, k xi k ≤ R. Alors, l’algorithme du perceptron s’arrête en au plus Théorème 4.1 (Minsky et Papert [1969]) R2 itérations. γ2 La vitesse de convergence de l’algorithme ne dépend donc que de la marge de séparation de l’échantillon (la taille de l’échantillon, ni les choix successifs des exemples mal classés pour la mise à jour notamment ne rentrent absolument pas en compte). La difficulté intrinsèque d’un problème de classification repose donc, comme signalé dans le Chapitre 2, dans la taille de la marge qui fait office de mesure de ’séparabilité’ du problème. Nous fermons cette section sur l’algorithme standard du perceptron sur cette remarque, et allons aborder dans la suivante quelques raffinements qui adaptent ce classifieur au problème du bruit de classification. 4.2 Perceptron et Bruit de Classification L’algorithme du perceptron n’est pas adapté, de par son critère d’arrêt, à des problèmes non séparables linéairement, et donc notamment à des problèmes linéairement séparables affectés par un bruit de classification. Dans cette section, nous abordons quelques modifications apportées à l’algorithme originel pour passer outre l’altération des données provoquée par le bruit de classification dans sa version uniforme. Le premier algorithme que nous étudions est proposé par Bylander [1994, 1998]. Dans cette partie, nous recherchons un hyperplan sans biais, qui passe par l’origine, donc de la forme (w, 0). Cette hypothèse peut se faire sans perte de généralité (il suffit de rajouter une dimension égale à 1 à toutes les descriptions pour ’simuler’ un biais). Nous considérons également que les exemples de l’échantillon d’apprentissage S = {(x1 , y1 ), . . . , (xn , yn )} sont normalisés, c’est-à-dire que pour tout x ∈ X , kxk = 1. 4.2. Perceptron et Bruit de Classification 57 Algorithme 3 : Cnoise-Update Bylander [1998] Entrée: • S = {(x1 , y1 ), . . . , (xn , yn )} : échantillon d’apprentissage • w : classifieur courant • ν : réel positif proche de zéro ou nul Sortie: un vecteur de mise à jour z 1 1 µ← yx, µ0 ← yx ∑ |S| (x,y)∈S |S| (x,y)∈S∧∑ y hw,xi≤0 i si hw, µi ≤ ν kwk alors z←µ sinon hw, µi − ν kwk a← hw, µi − hw, µ0 i b← −hw, µ0 i + ν kwk hw, µi − hw, µ0 i z ← aµ0 + bµ fin si si hw, zi > 0 alors z ← z−w fin si retourner z hw, zi {étape de projection} hw, wi L’algorithme conserve l’approche mise en oeuvre pour le perceptron, en proposant une mise à jour itérative du classifieur, la principale difficulté provenant ici du choix d’un exemple mal classé pour cette mise à jour. En effet, dans le cadre du bruit de classification uniforme, il est a priori impossible de savoir si un exemple est correctement classé ou non, puisqu’il peut avoir vu son étiquette inversée. Par contre, un grand nombre de points doit permettre, en quelque sorte, d’effacer le bruit de classification en tirant parti de sa régularité statistique. Pour ce faire, l’algorithme calcule un exemple virtuel, mal classé avec une grande probabilité, sous la forme d’une moyenne pondérée des exemples de l’ensemble d’apprentissage, et l’utilise pour modifier le classifieur courant (voir Figure 4.4). Bylander [1998] propose une telle fonction de mise à jour, dénommée Cnoise-Update, explicitée dans l’Algorithme 3. Essayons d’éclaircir le calcul en détaillant les notations utilisées et les différentes étapes de l’algorithme : – µ est la moyenne des yx effectuée sur la totalité des exemples de l’échantillon d’apprentissage – µ0 est la même moyenne, mais effectuée sur les points de l’échantillon mal classés par le classifieur courant – Si l’expression hw, µ i ≤ ν kwk est vraie, cela signifie que le point virtuel µ n’est pas classé par le vecteur w avec une marge suffisante pour être utilisé lors de la mise à jour du classifieur sans mettre en péril la convergence de l’algorithme. 58 Chapitre 4. Un Premier Algorithme : le Perceptron Linéaire w∗ w w∗ w w∗ w w∗ w Fig. 4.4 – Schéma décrivant l’algorithme itératif du perceptron linéaire tolérant au bruit. Soit un échantillon de données bruité étiqueté par un vecteur w∗ , les exemples positifs en blanc, les négatifs en noir. 1) On calcule un point virtuel mal classé (en rouge) par le vecteur courant w. 2) On utilise cet exemple pour mettre à jour le vecteur de classification w. 3) Un nouvel exemple virtuel est calculé (en rouge) et est mal classé par w. 4) La mise à jour du classifieur est effectuée grâce à cet ’exemple’ mal classé. L’algorithme évalue l’erreur empirique sur l’échantillon et conclut qu’il est alors (presque dans sa totalité) correctement classé par w provoquant ainsi l’arrêt de l’algorithme. 4.2. Perceptron et Bruit de Classification 59 – Dans le cas contraire, on calcule z tel que hw, zi = ν kwk. Vérifier que les valeurs choisies pour a, b puis z mènent à cette égalité est immédiat. – Enfin, l’algorithme se termine par une étape de projection permettant de s’assurer que le point virtuel z est mal classé par w. Pourquoi cet algorithme converge vers une solution acceptable, qui classifie correctement la quasi-totalité de l’échantillon ? Le théorème qui suit explique que, si le vecteur courant n’est pas, a priori, assez précis sur l’échantillon (c’est-à-dire si l’estimation du nombre d’erreurs est trop importante), Cnoise-Update calcule un vecteur de mise à jour z qui a deux propriétés principales : – z est un exemple virtuel positif mal classé par le vecteur courant w – z est correctement classé, avec une borne minimum sur la marge, par l’hyperplan cible w∗ z est donc, avec une grande probabilité, un exemple virtuel mal classé par w et est ainsi un bon candidat en tant que vecteur de mise à jour : Soit γ ∈ [0, 1], η ∈ [0, 0.5[, ε ∈]0, 1]. Soit D ∈ U γ,η . Si w∗ est un vecteur unitaire Cn-consistant sur D , si un échantillon S de m ≥ εγ(1−2η ) m0 10(n + 1), 2, δ, exemples est tiré à partir de D alors avec probabi4 Théorème 4.2 (Bylander [1998]) lité 1 − δ, pour tout vecteur w avec une précision inférieure à 1 − η − 34 ε(1 − 2η ), Cnoise-Update(S , wt , εγ(1−2η ) ) 4 hw, zi ≤ 0, retourne un vecteur de mise à jour z tel que hw∗ , zi ≥ εγ(1 − 2η ) . 4 La principale caractéristique de l’algorithme du perceptron, l’existence d’une borne de convergence dépendante, en particulier, de la marge de classification, est conservée. En effet, avec une grande probabilité, si l’échantillon est suffisamment grand, l’algorithme fournira un vecteur à la précision arbitrairement grande après au plus (εγ(116 itérations (où γ −2η ))2 est la marge du problème, ε la précision voulue et η le niveau de bruit de classification). Le nombre d’itérations maximal nécessaire à l’algorithme pour converger reste donc polynomial : Soit γ ∈ [0, 1], η ∈ [0, 0.5[, ε ∈]0, 1]. Soit D ∈ U γ,η . Si est un vecteur unitaire Cn-consistant sur D , si un échantillon S de εγ(1−2η ) m ≥ m0 10(n + 1), 2, δ, exemples sont tirés à partir de D et si l’al4 gorithme du perceptron utilise des vecteurs de mise à jour calculés par Cnoiseεγ(1−2η ) Update(S , wt , ) avec au moins (εγ(116 mises à jour sur l’échantillon, 4 −2η ))2 alors le vecteur wt avec la meilleure précision sur l’échantillon fait une erreur inférieure à 1 − η − (1 − 2η )ε avec probabilité au moins 1 − δ. Théorème 4.3 (Bylander [1998]) w∗ Malheureusement, comme remarqué par Blum et coll. [1996], la polynomialité en fonction de la marge n’est pas équivalente à une polynomialité en fonction de la dimension de l’espace. En effet, il est possible en considérant l’espace de descriptions X = {0, 1}d de construire un échantillon ayant une marge exponentiellement petite en fonction de la dimension d. Par exemple, en fixant l’étiquette d’un exemple à +1 si la première dimension vaut 1, à −1 si la seconde dimension vaut 1, +1 si la troisième vaut 60 Chapitre 4. Un Premier Algorithme : le Perceptron Linéaire w∗ w Fig. 4.5 – Échantillon linéairement séparable par un vecteur w∗ sur lequel on a calculé un hyperplan épais w. Les points situés hors de l’hyperplan sont bien classés, ceux situés dans l’hyperplan sont considérés comme de classe indéterminée. 1 et ainsi de suite. Dans ce cas précis, l’algorithme, dans le pire des cas, pourrait avoir besoin d’un nombre exponentiel d’itérations. Pour pallier ce défaut, Blum et coll. [1996] propose un algorithme qui produit un hyperplan épais (voir Figure 4.5) qui satisfait les 2 propriétés suivantes : – Les points situés hors de l’hyperplan sont classifiés correctement avec une bonne confiance (ceux situés ’dans’ l’hyperplan épais étant indéterminés) – Une fraction polynomiale de l’échantillon d’apprentissage se trouve hors de l’hyperplan épais L’algorithme propose de booster ce type de classifieurs, de les combiner pour obtenir une hypothèse avec un risque faible. L’algorithme d’apprentissage d’un hyperplan épais fonctionne en deux temps : – D’abord un traitement des données afin que tout hyperplan épais vérifie la seconde propriété, en supprimant un certain nombre de points considérés comme outliers. Cette étape s’avère toutefois être très lourde calculatoirement. Une optimisation de l’algorithme, proposée par Dunagan et Vempala [2001], permet de diminuer le nombre maximal d’outliers à supprimer. – Puis une modification de l’algorithme du perceptron (dans sa version classique ou dans sa version tolérante au bruit de Bylander), qui apprend un hyperplan épais. Cet algorithme est prouvé tolérant (au sens Pac) au bruit de classification uniforme, et possède des complexités en échantillonnage et en temps indépendantes de la marge de classification, ce qui le rend polynomial au sens strict du terme. Signalons qu’un autre algorithme aux propriétés identiques a été proposé par Cohen [1997]. Néanmoins, toutes ces procédures sont extrêmement complexes à mettre en oeuvre, et d’autres contributions proposent des méthodes différentes 4.2. Perceptron et Bruit de Classification pour l’apprentissage de perceptrons en temps polynomial, mais sans s’adresser au problème du bruit de classification. Citons pour l’exemple : – Dans Blum et Dunagan [2002], il est prouvé qu’appliquer une légère perturbation (bruit blanc gaussien) sur les données d’un problème linéairement séparable permet de pallier la difficulté de la marge exponentielle. Sur ces données modifiées, l’algorithme du perceptron converge en temps polynomial ou ne converge pas du tout. Si l’algorithme n’a pas vérifié le critère d’arrêt après un nombre donné d’itérations, il suffit de rebruiter les données et de relancer l’algorithme. – Dunagan et Vempala [2004] proposent un algorithme polynomial indépendant de la marge en 3 étapes : D’abord une phase de perceptron classique. Si l’algorithme n’a pas convergé en un nombre donné d’itérations, on effectue une phase de perceptron modifié (de Blum). On va alors utiliser l’hyperplan épais ainsi calculé pour effectuer une transformation linéaire, une mise à l’échelle augmentant artificiellement la taille de la marge de séparation. On réitère alors le processus tant que le perceptron classique utilisé lors de l’étape 1 n’a pas convergé. 61 5 Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau Sommaire 5.1 5.2 5.3 5.4 5.5 Un Nouveau Modèle d’Altération des Données : le Bruit Mixte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Perceptrons et Tolérance au Bruit Mixte . . . . . . . . . . Perceptrons et Projections Aléatoires, vers la Dimension Infinie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 67 75 77 80 L’algorithme du perceptron (ainsi que ses dérivés tolérants au bruit de classification) voient leurs champs d’application élargis par l’utilisation de noyaux de Mercer (et donc une extension à la classification non linéaire), permettant ainsi d’aborder des problèmes plus variés. Malheureusement, comme vu précédemment, les complexités en échantillonnage des perceptrons tolérants au bruit dépendent polynomialement de la dimension de l’espace (via la dimension Vc) dans lequel les données se trouvent. Cette caractéristique rend invalides les garanties théoriques présentées antérieurement dans le cadre de l’utilisation de noyaux gaussiens, puisque les données se retrouveraient virtuellement plongées dans un espace de Hilbert de dimension infinie, et donc l’algorithme demanderait, en théorie, un échantillon de taille infinie pour obtenir des garanties sur l’erreur de généralisation. L’argument selon lequel il est possible de se limiter à l’espace fini engendré par les n exemples de l’échantillon d’apprentissage ne résout en rien le problème, √ puisque dans les faits la dimension de l’espace d doit être inférieure à n (qui est la vitesse de convergence optimale sans hypothèses fortes supplémentaires, voir par exemple le Théorème 2.1). Dans ce chapitre, nous proposons un nouvel algorithme, Rp-Learn, pour apprendre des classifieurs linéaires sur des données Cn dans des espaces de Hilbert de dimension quelconque, potentiellement infinie (et donc ainsi 63 64 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau Algorithme 4 : Rp-learn Entrée: • S = {(x1 , y1 ) . . . (xn , yn )} in X × {−1, +1} • d, dimension de projection Sortie: • une projection aléatoire π =: X → X 0 , X 0 = espace engendré parhvi1 , . . . , vid i • classifieur dans l’espace de projection f ( x ) = w · π ( x ), w ∈ X 0 définir une projection aléatoire π : X → X 0 apprendre un classifieur linéaire w à partir de S = {(π (x1 ), y1 ) . . . (π (xm ), ym )} retourner π, w légitimer l’utilisation de noyaux, sans préalables sur la dimension de l’espace de plongement). L’algorithme Rp-learn fonctionne, pour l’apprentissage sur des échantillons linéairement séparables, de la manière suivante, en 2 étapes : 1) une étape de projections aléatoires, permettant de diminuer fortement la dimension de l’espace de description. 2) apprentissage d’un classifieur linéaire sur les données bruitées projetées grâce à un algorithme du perceptron modifié de type Bylander [1998]. Malheureusement, l’échantillon (et donc la distribution) résultant de la projection aléatoire peut ne plus être linéairement séparable. Il est donc nécessaire d’introduire un nouveau modèle de bruit, le bruit mixte, afin de modéliser ce phénomène. Nous reprenons alors l’analyse de Bylander, pour montrer que son algorithme tolérant au bruit Cn est également tolérant au bruit mixte. L’objectif de ce chapitre est donc de montrer que Rp-learn (Algorithme 4) γ-Cn-apprend en dimension quelconque les distributions linéairement séparables par un hyperplan de marge γ. Nous fournissons toutefois une borne sur la complexité d’échantillonnage de l’algorithme, borne dépendant donc des paramètres Pac classiques (précision, confiance, taux de bruit) et de la marge de classification du problème, sans faire apparaître la dimension de l’espace initial à aucun moment. Nous nous concentrons donc sur l’extension des résultats de Bylander [1994] à des espaces de description de dimension infinie, et n’avons pas pour but d’obtenir des complexités en échantillonnage et en temps indépendantes de la marge. La remarque de Blum et coll. [1996] sur la possible dépendance exponentielle de la marge en fonction de la dimension de l’espace est donc toujours valide dans notre approche. Toutefois, étant donné que les cas où la marge peut effectivement s’avérer exponentielle semblent très particuliers, construits ad-hoc, cette limitation ne nous paraît pas dramatique. Une des stratégies implémentables afin de pallier cette limitation est de bruiter préalablement les descriptions comme proposé dans Blum et Dunagan [2002]. Ici, nous considérons uniquement des hyperplans séparateurs sans biais, 5.1. Un Nouveau Modèle d’Altération des Données : le Bruit Mixte dans un espace de Hilbert X . De plus, nous supposons que les exemples de X sont normalisés (sans perte de généralité), c’est-à-dire que pour tout x dans X , kxk = 1. Ce chapitre sera organisé en quatre sections, comme suit : – Nous commençons par introduire le modèle de bruit mixte, entre le bruit de classification uniforme et le bruit malicieux. – Dans la seconde partie, nous montrons que l’algorithme proposé par Bylander, basé sur la fonction Cnoise-Update, et tolérant au bruit Cn est également tolérant au bruit mixte. – Ensuite, nous montrons comment combiner les projections aléatoires avec l’algorithme du perceptron pour obtenir une procédure d’apprentissage tolérante au bruit de classification uniforme et théoriquement valide en dimension quelconque. – Enfin, nous soulignons la validité de notre approche en y adjoignant un ensemble de simulations sur des données Uci ainsi que sur des problèmes synthétiques. Les résultats présentés dans ce chapitre ont fait l’objet de publications dans Stempfel et Ralaivola [2007a,b] . 5.1 Un Nouveau Modèle d’Altération des Données : le Bruit Mixte Dans cette première partie, nous définissons un nouveau modèle de bruit, que nous nommons bruit mixte. Nous travaillons sur des distributions linéairement séparables altérées par un bruit de classification, mais qui ont subi une projection aléatoire. Or, la projection aléatoire ’déforme’ l’espace, et les données initialement linéairement séparables ne le sont plus qu’approximativement (voir Chapitre 3). Comment modéliser cette portion de la distribution, donc de l’échantillon, qui sera maintenant mal classée par le classifieur optimal (du point de vue de la généralisation), ce bruit de projection ? Afin de répondre à cette question, nous prenons le parti de considérer que ces données ne possèdent aucune propriété statistique exploitable, et qu’il s’agit d’un bruit incompressible (même s’il est peut-être possible de le caractériser plus précisément). Il est donc possible de ramener ce phénomène de bruit de projection à un bruit malicieux, déjà évoqué dans le Chapitre 1. Le bruit mixte, que nous définissions ici, est donc composé d’un bruit de classification uniforme et d’un bruit malicieux (voir Figure 5.1). Nous l’utilisons dans ce manuscrit uniquement comme un outil de preuve. Néanmoins, il peut s’avérer intrinsèquement intéressant, en permettant de modéliser des distributions bruitées presque uniformément. Notons que le bruit malicieux est indépendant du bruit de classification, puisque les étiquettes des exemples considérés ne rentrent pas en ligne de compte lors du tirage des vecteurs de projection aléatoire. Nous définissons l’ensemble des distributions linéairement séparables avec une marge γ et altérées par un bruit mixte (η, θ ) : Définition 5.1 Pour θ ∈ [0, 1), la transformation aléatoire U θ modifie un exemple (x, y) en 65 66 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau (xη,θ , yη,θ ) tel que (xi , yi ) avec probabilité (1 − θ ) θ θ ( xi , yi ) = (x0 , y0 ) avec probabilité θ, et avec x0 , y0 dans X × Y Ajoutons que rien ne peut être dit à propos de (x0 , y0 ). L’ensemble des distributions U γ,η,θ est défini comme (avec U η et D γ définis dans le Chapitre 1) U γ,η,θ := U θ (U η ( D γ )) . Une distribution D de U γ,η,θ , altérée par un bruit mixte, est donc un mélange de deux distributions distinctes. La première est une distribution linéairement séparable par une marge γ altérée par un bruit CN de taux η, à laquelle nous ferons référence comme étant la partie Cn de la distribution D . Nous ne pouvons supposer aucune régularité statistique à propos de la seconde distribution, . Nous parlerons ici de partie Mn (pour malicious noise) de D . Il est évident que le taux de bruit malicieux, de par sa nature totalement aléatoire, ne pourra être trop élevé, sous peine d’empêcher tout apprentissage. Si la distribution initialement bruitée appartient, pour un γ et un η donnés, à U γ,η , nous fixons le taux maximal de bruit malicieux accepté par l’algorithme à θmax (γ, η ) = γ(1 − 2η ) . 8 Cette valeur est choisie judicieusement pour obtenir les assurances théoriques sur la convergence de l’algorithme. Un échantillon altéré par un bruit mixte le sera de la manière suivante : Définition 5.2 Soient θ ∈ [0, 1[, η ∈ [0, 12 [, γ > 0, pour toute distribution D ∈ D γ , pour un échantillon S = {(x1 , y1 ) . . . (xn , yn )} de n ∈ N exemples tirés η,θ = selon D , l’échantillon bruité n o par un bruit mixte de paramètre (η, θ ) S η,θ η,θ η,θ η,θ (x1 , y1 ) . . . (xn , yn ) obtenu est tel que : avec probabilité (1 − θ )(1 − η ) ( xi , yi ) η,θ η,θ (x , −y ) avec probabilité (1 − θ )η ( xi , yi ) = i0 0 i (x , y ) avec probabilité θ, et avec x0 , y0 dans X × Y Pour simplifier les écritures et calculs, nous nous permettons un abus de notation et introduisons la fonction θ : X × Y → {0, 1 } permettant de déterminer si un exemple a été altéré par un bruit malicieux et définie comme suit : Pour un exemple (x, y) ∈ X × Y , θ (x, y) = 1 si (x, y) est altéré par un bruit malicieux 0 sinon Sur une distribution à bruit mixte, notre objectif est d’être performant, c’est-à-dire minimiser l’erreur de généralisation, sur la partie Cn, la seule à partir de laquelle il est possible d’inférer quelque chose. Nous définissons donc ce qu’est un classifieur Cn-consistant sur les distributions à bruit mixte : 5.2. Perceptrons et Tolérance au Bruit Mixte 67 w Fig. 5.1 – Échantillon altéré par un bruit mixte. Initialement linéairement séparable par le vecteur w, les points ont été soumis à un bruit mixte composé d’un bruit de classification uniforme de paramètre η = 0.2 et d’un bruit malicieux de paramètre θ = 0.1. Les points affectés par un bruit malicieux sont cerclés de rouge. Soit γ > 0, η ∈ [0, 0.5[, θ ∈ [0, θmax (γ, η )[. Soit D ∈ U γ,η,θ . Soit w∗ ∈ X . Si Pr(x,y)∼ D [yhw∗ , xi ≤ γ k w∗ k |θ (x, y) = 0] = η alors w∗ est dit être Cnconsistant. Définition 5.3 (Cn-consistance sur les Distributions à Bruit Mixte) Nous allons maintenant pouvoir nous atteler à l’apprentissage de classifieurs linéaires sur ces distributions. 5.2 Perceptrons et Tolérance au Bruit Mixte Dans cette section, nous montrons que l’ajout de (une quantité raisonnable) de bruit malicieux au bruit de classification uniforme ne remet pas en cause la convergence de l’algorithme du perceptron si celui-ci utilise la mise à jour Cnoise-Update, (Algorithme 3). Nous étendons donc l’analyse effectuée par Bylander au bruit mixte, en suivant la structure de sa démonstration. Cette analyse repose sur un choix approprié de paramètres, afin qu’il soit possible, avec suffisamment d’exemples et une forte probabilité, de limiter l’influence du bruit malicieux et donc ainsi d’adapter l’algorithme de Bylander. Pour commencer, précisons que sur des données affectées par un bruit mixte, de par le caractère incontrôlable du bruit malicieux, il sera impossible d’obtenir un classifieur parfait. Nous définissons donc la précision minimale ε min , dépendante de la marge du problème et des taux de bruit mixte, comme étant la limite pouvant être théoriquement atteinte par notre algorithme sans en altérer la convergence. Cette borne, qui peut probablement être précisée, est d’ores et déjà fixée judicieusement en vue de la preuve des propriétés théoriques de notre algorithme. ε min (γ, η, θ ) = 64θ . γ(1 − η ) 18 − θ En supposant que le niveau de bruit malicieux est inférieur à θmax , nous 68 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau démontrons que le perceptron modifié peut atteindre n’importe quelle précision ε > ε min (γ, η, θ ). Nous utilisons, pour faciliter la lecture des preuves, E [ f (x, y)] pour E(x,y)∼D [ f (x, y)] et Ê [ f (x, y)] pour E(x,y)∈S [ f (x, y)] = 1 ∑ f (x, y). m (x,y )∈S Le premier lemme de cette démonstration va nous permettre de nous assurer que notre échantillon d’apprentissage est suffisamment important pour : – être capable de contrôler (et donc de limiter) le taux empirique de bruit malicieux – obtenir une partie Cn, une partie ’utile’, de l’échantillon assez grande pour qu’un apprentissage soit possible. Lemme 5.1 Soit γ > 0, η ∈ [0, 0.5[ et δ ∈]0, 1]. Soit θ ∈ [0, θmax (γ, η )[, ε ∈]0, 1] et D ∈ D γ,η,θ . Soit m0 > 1. Si un échantillon S de taille m ≥ m1 (m0 , γ, θ, ε, δ) = m0 642 2 1−θ− 2 εγ 64 ( εγ ) ln 2 δ est tiré selon D alors, avec probabilité au moins 1 − δ : εγ 1) Ê [θ (x, y)] − E [θ (x, y)] ≤ 64 2) |{(x, y) ∈ S|θ (x, y) = 0}| > m0 . Démonstration. La preuve repose sur des arguments standards relatifs aux bornes de Chernoff (voir Annexe A.3). En appliquant simplement une inégalité de concentration de Chernoff, on obtient : θ 1 max 2 Pr Ê [θ (x, y)] − E [θ (x, y)] ≥ ≤ 2 exp − mθmax . 2 2 Les valeurs choisies pour m et θmax suffisent à prouver la première partie du lemme. Il suffit de remarquer alors que, avec une grande probabilité, εγ m |{(x, y) ∈ S|θ (x, y) = 1}| < θ + 64 pour montrer la seconde. La possibilité d’obtenir des algorithmes tolérant le bruit de classification uniforme nous est offerte par la régularité statistique de ce type d’altération. Bylander utilise notamment une moyenne des produits scalaires entre le classifieur courant et les exemples de l’échantillon pour calculer son vecteur de mise à jour. Ce vecteur ne fera progresser l’apprentissage vers un meilleur classifieur du point de vue de la généralisation, que si la moyenne calculée sur l’échantillon est proche de l’espérance sur la distribution. Dans le cadre Cn, un échantillon de grande taille suffit à assurer cette précision. Lorsqu’on ajoute du bruit malicieux, le Lemme suivant montre que cette propriété est conservée. 5.2. Perceptrons et Tolérance au Bruit Mixte Lemme 5.2 Soient γ > 0, η ∈ [0, 0.5[ et δ ∈]0, 1]. Soient θ ∈ [0, θmax (γ, η )[ tel que ε min (γ, η, θ ) < 1 − 2η, et ε ∈]ε min (γ, η, θ ), 1 − 2η ]. Soit D ∈ U γ,η,θ . Soit 3δ εγ δ M (n, γ, η, θ, ε, δ) = m1 m0 10(n + 1), 2, , , γ, θ, ε, 4 16 4 et w un vecteur unitaire. Si S un échantillon de taille m > M (n, γ, η, θ, ε, δ) est tiré à partir de D alors, avec probabilité 1 − δ, ∀ R ∈ [−1, 1] : Ê[yhw, xi1≤ R (hw, xi)] − E[yhw, xi1≤ R (hw, xi)] ≤ εγ 8 où 1≤ R (α) = 1 si α ≤ R et 0 sinon. Démonstration. La preuve, sans difficulté majeure mais très technique, est reléguée en annexe A.1. Sur une distribution Cn, un vecteur unitaire Cn-consistant w∗ classe correctement l’espérance des exemples de la distribution. Cette caractéristique permet notamment de générer un point virtuel, qui sera bien classé par w∗ , et qui sera utilisé comme vecteur de mise à jour. Perdre cette propriété sur des données altérées par un bruit mixte mettrait en péril la convergence de l’algorithme. Heureusement, le Lemme qui suit prouve qu’il n’en est rien : Lemme 5.3 Soient γ > 0, η ∈ [0, 0.5[, θ ∈ [0, θmax (γ, η )[. Supposons que D ∈ U γ,η,θ . Si le vecteur unitaire w∗ est CN-consistant sur la portion Cn de D , alors E [yhw∗ , xi] ≥ (1 − 2η ) (1 − θ ) γ − θ. Démonstration. E [yhw∗ , xi] = E [yhw∗ , xi|θ (x, y) = 0] Pr (θ (x, y) = 0) + E [yhw∗ , xi|θ (x, y) = 1] Pr (θ (x, y) = 1) = E [yhw∗ , xi|θ (x, y) = 0] (1 − θ ) + E [yhw∗ , xi|θ (x, y) = 1] θ ≥ E [yhw∗ , xi|θ (x, y) = 0] (1 − θ ) − θ (car w∗ unitaire) ≥ (1 − 2η ) (1 − θ ) γ − θ ≥0 (Par définition de θmax ) Au cours de la démonstration, Bylander fait usage du lemme suivant, qui montre que, pour tout vecteur w n’ayant pas une trop grande précision, la moyenne pondérée entre l’espérance de yx d’un exemple mal classé par w et celle d’un exemple sur la distribution (on retrouve ici la philosophie de calcul du vecteur de mise à jour) est : – Correctement classifié par w∗ ; – Mal classé par w. 69 70 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau Soient γ > 0, η ∈ [0, 0.5[, ε ∈]0, 1 − 2η ]. Soit D ∈ U γ,η . Soit w un vecteur unitaire quelconque. Si le vecteur unitaire w∗ est CN-consistant sur D , et si w est tel que Lemme 5.4 (Bylander [1998]) Pr(x,y)∼D [yhw, xi < γ] < η + ε alors les deux inégalités suivantes sont vraies : h i (1 − 2η ) E yhw∗ , xi1yhw,xi≤0 + ηE [yhw∗ , xi]≥εγ h i (1 − 2η ) E yhw, xi1yhw,xi≤0 + ηE [yhw, xi] ≤0 (5.1) (5.2) Nous étendons ce lemme au cas du bruit mixte en relâchant légèrement les bornes du résultat : l’exemple virtuel n’est plus ici nécessairement mal classé, mais peut être seulement classé avec une marge trop faible par le vecteur w. Lemme 5.5 Soient γ > 0, η ∈ [0, 0.5[ and δ ∈]0, 1]. Soit θ ∈ [0, θmax (γ, η )[ tels que 4(1−2η ) 4(1−2η ) ε min (γ, η, θ ) < , et ε ∈]ε min (γ, η, θ ), 3 ]. Soit D ∈ U γ,η,θ . Soit w 3 γ,η,θ un vecteur arbitraire et D ∈ U . Si le vecteur unitaire w∗ est CN-consistant sur la portion CN de D , et si w est tel que Pr(x,y)∼D [yhw, xi < γ|θ (x, y) = 0] < η + 3ε 4 i h 5εγ (1 − 2η ) E yhw∗ , xi1yhw,xi≤0 + ηE [yhw∗ , xi]≥ 8 (1 − 2η ) E [yhw, xi1yhw, xi ≤ 0] + ηE [yhw, xi] ≤ηθ (5.3) (5.4) Démonstration. Pour la première inégalité, on a h i (1 − 2η ) E yhw∗ , xi1yhw,xi≤0 + ηE [yhw∗ , xi] i h = (1 − 2η ) E yhw∗ , xi1yhw,xi≤0 |θ (x, y) = 1 Pr [θ (x, y) = 1] + ηE [yhw∗ , xi|θ (x, y) = 1] Pr [θ (x, y) = 1] h i + (1 − 2η ) E yhw∗ , xi1yhw,xi≤0 |θ (x, y) = 0 Pr [θ (x, y) = 0] + ηE [yhw∗ , xi|θ (x, y) = 0] Pr [θ (x, y) = 0] 3 ≥ (1 − θ ) εγ (par le Lemme 5.4 eq. 5.1) 4 h i + (1 − 2η ) E yhw∗ , xi1yhw,xi≤0 |θ (x, y) = 1 Pr [θ (x, y) = 1] + ηE [yhw∗ , xi| θ (x, y) = 1] Pr [θ (x, y) = 1] 3 ≥ (1 − θ ) εγ − (1 − 2η ) θ − ηθ 4 3 ≥ (1 − θ ) εγ − (1 − η ) θ 4 5εγ ≥ 8 (par définition of ε) 5.2. Perceptrons et Tolérance au Bruit Mixte 71 Pour la seconde : h i (1 − 2η ) E yhw, xi1yhw,xi≤0 + ηE [yhw, xi] h i = (1 − 2η ) E yhw, xi1yhw,xi≤0 |θ (x, y) = 1 Pr [θ (x, y) = 1] + ηE [yhw, xi|θ (x, y) = 1] Pr [θ (x, y) = 1] h i + (1 − 2η ) E yhw, xi1yhw,xi≤0 |θ (x, y) = 0 Pr [θ (x, y) = 0] + ηE [yhw, xi|θ (x, y) = 0] Pr [θ (x, y) = 0] ≤0 (par le Lemme 5.4 eq.5.2) h i + (1 − 2η ) E yhw, xi1yhw,xi≤0 |θ (x, y) = 1 Pr [θ (x, y) = 1] + ηE [yhw, xi| θ (x, y) = 1] Pr [θ (x, y) = 1] ≤ 0 + ηθ Nous pouvons maintenant énoncer le lemme central de cette démonstration et montrer que l’Algorithme 3, Cnoise-Update produit, sur une distribution altérée par du bruit mixte un vecteur pouvant être utilisé comme vecteur de mise à jour par l’algorithme du perceptron, c’est-à-dire un vecteur : – mal classé par le classifieur courant – classé correctement par l’hyperplan cible, en d’autres termes le vecteur Cn-consistant sur la partie Cn de la distribution. L’appel itératif à l’Algorithme 3 (rappelé en Algorithme 5) peut donc, a priori, permettre l’apprentissage d’un hyperplan séparateur sur des données affectées par un bruit mixte. Lemme 5.6 Soient γ > 0, η ∈ [0, 0.5[ et δ ∈ (0, 1). Soit θ ∈ [0, θmax (γ, η )[ tel que ε min (γ, η, θ ) < 34 (1 − η ). Soit D ∈ U γ,η,θ et w∗ l’hyperplan cible (kw∗ k = 1). ∀ε ∈ ε min (γ, η, θ ), 34 (1 − η ) , pour tout échantillon S de taille M(n, γ, η, θ, δ, ε), avec probabilité au moins 1 − δ, ∀w ∈ X si w est tel que Pr(x,y)∼D [yhw, xi < γ|θ (x, y) = 0] < η + alors Cnoise-update (Algorithme 3), paramétré avec S , w, teur z tel que 3ε 4 εγ 4 , produit un vec- 1. hw, zi ≤ 0 2. hw∗ , zi ≥ εγ 4 . Démonstration. L’étape de projection de l’algorithme garantit que hw, zi ≤ 0. Seule la seconde inégalité n’est donc pas trivialement vraie. Nous allons procéder en deux étapes, dépendantes de la norme de w, pour la démontrer. Cas 1. Supposons pour commencer que hw, µi < kwk εγ 4 : z prend la valeur µ, et, si nécessaire, est projeté sur l’hyperplan w. Il n’existe pas de fonction linéaire faisant une erreur inférieure à η sur la portion Cn de D , et donc n’importe quel vecteur de X possède une 72 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau Algorithme 5 : Rappel de Cnoise-Update Bylander [1998] Entrée: • S = {(x1 , y1 ), . . . , (xn , yn )} : échantillon d’apprentissage • w : classifieur courant • ν : réel positif proche de zéro ou nul Sortie: un vecteur de mise à jour z 1 1 µ← yx, µ0 ← yx ∑ |S| (x,y)∈S |S| (x,y)∈S∧∑ y hw,xi≤0 i si hw, µi ≤ ν kwk alors z←µ sinon hw, µi − ν kwk a← hw, µi − hw, µ0 i b← −hw, µ0 i + ν kwk hw, µi − hw, µ0 i z ← aµ0 + bµ fin si si hw, zi > 0 alors z ← z−w fin si retourner z hw, zi {étape de projection} hw, wi précision globale sur D d’au moins (1 − θ )η. Par hypothèse, sur la portion Cn de D , w a une précision de, au moins, 1 − η − 3ε 4 et donc une précision 3ε globale de, au plus, 1 − (1 − θ ) η + 4 + θ. Le calcul suivant : 1 − (1 − θ ) ⇔ ⇔ ⇔ ⇔ 3ε +η 4 + θ ≥ (1 − θ ) η 3ε 4 3ε 1 − 2η + 2θη ≥ (1 − θ ) −θ 4 3ε (1 − 2η ) (1 − θ ) ≥ (1 − θ ) − 2θ 4 3ε (1 − 2η ) (1 − θ ) γ − θ ≥ (1 − θ ) γ − (2γ + 1) θ, 4 1 − 2(1 − θ ) η + θ ≥ (1 − θ ) permet, via le Lemme 5.3, de montrer que E [yhw∗ , xi] ≥ (1 − θ ) 3ε γ − (2γ + 1) θ. 4 Etant donné que θ < θmax (γ, η ) et ε > ε min (γ, η, θ ), et selon les définitions de θmax (γ, η ) et ε min (γ, η, θ ), nous obtenons E [yhw∗ , xi] ≥ 5εγ . 8 Appliquer le Lemme 5.2 et remarquer que |S| ≥ M(n, γ, η, θ, δ, ε) permet de conclure que hw∗ , zi est, avec une probabilité d’au moins 1 − δ, distant 5.2. Perceptrons et Tolérance au Bruit Mixte d’au plus εγ 8 73 de son espérance. Ainsi, εγ . 2 hw∗ , µi ≥ À nouveau, deux cas se posent à nous : Si hw, µi < 0, alors le lemme est prouvé. Si 0 < hw, µi < kwk εγ 4 , alors z prend la valeur µ et, si nécessaire, est projeté sur w. Soit zk = µ − z (zk est parallèle à w). Alors, ⇔ ⇒ ⇒ ⇒ hw∗ , µi hw∗ , zi + hw∗ , zik hw∗ , zi hw∗ , zi hw∗ , zi ≥ ≥ ≥ ≥ ≥ εγ 2 εγ 2 εγ 2 − zk εγ 2 − kµk εγ 4 . Le lemme est ainsi démontré, ce qui clôt notre analyse du cas 1. Cas 2. Dans cette seconde hypothèse, nous supposerons que hw, µi ≥ kwk εγ 4 . Soit a ≥ 0 et b ≥ 0 deux réels choisis tels que ah w w εγ , µ0 i + bh , µi = 4 kwk kwk et a + b = 1. hw, µ0 i est négatif et, selon l’hypothèse, h kw , µi ≥ εγ 4 donc il wk existe toujours de tels a et b. Remarquons alors que Cnoise-update affecte z = aµ0 + bµ et ensuite projette z sur l’hyperplan w. Parce que hw, zi = ∗ kwk εγ 4 avant projection, alors celle-ci ne fera pas décroître h w , z i de plus ∗ de εγ 4 (rappelons que w est un vecteur unitaire). En développant, on obtient : w w w w 0 ah , µ i + bh , µi = a Ê yh , xi1≤0 (yhw, xi) + b Ê yh , xi . kwk kwk kwk kwk Comme, par le lemme 5.2, les estimations empiriques sont, avec probabilité 1 − δ, précises à εγ 8 près, il s’ensuit que : w w εγ aE yh , xi1≤0 yhw, xi + bE yh , xi ≥ . 8 kwk kwk Le Lemme 5.5 implique que si a0 = η 1− η et b0 = 1−2η 1− η , alors w w ηθ a E yh , xi1≤0 (yhw, xi + b0 E[yh , xi] ≤ 1−η kwk kwk 0 et donc quantité inférieure à εγ 8 . Donc lorsque a ≤ 1−η , cela doit être le cas, puisqu’un a plus grand impliquerait que l’on ait une espérance plus εγ grande que εγ 8 et une moyenne empirique inférieure à 4 . η Le Lemme 5.5 a également pour conséquence le fait que choisir a0 = and b0 = 1−2η 1− η entraîne : a0 E[(yhw∗ , xi)1yhw,xi≤0 ] + b0 E[yhw∗ , xi] ≥ 5εγ 8 η 1− η 74 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau Parce que a0 ≥ a et b0 ≤ b, et puisque le Lemme 5.3 implique E [yhw∗ , xi] ≥ 5εγ , 8 il s’ensuit que aE[(yhw∗ , xi)1yhw,xi≤0 ] + bE[yhw∗ , xi] ≥ et ahw∗ , µ0 i + bhw∗ , µi ≥ 5εγ 8 εγ . 2 Alors, lorsque z est projeté sur l’hyperplan w, hw∗ , zi ≥ εγ 4 et h w, z i = 0. Par conséquent, disposer d’un échantillon de m exemples, implique , avec probabilité 1 − δ, que hw∗ , zi ≥ εγ 4 et h w, z i ≤ 0 pour le vecteur z calculé par Cnoise-update. Nous mettons ainsi un point final à cette démonstration. Finalement, nous pouvons énoncer le théorème pour l’apprentissage de distributions altérée par du bruit mixte via l’utilisation de Cnoise-Update. Nous fournissons une borne polynomiale sur la complexité en échantillonnage de l’algorithme, dépendant de la marge, du taux de bruit Cn, du taux de bruit malicieux, et des paramètres Pac classiques, la précision et la confiance. Théorème 5.1 Soient γ > 0, η ∈ [0, 0.5[ et δ ∈]0, 1]. Soit θ ∈ [0, θmax (γ, η )[ tel que ε min (γ, η, θ ) < 1 − 2η. Soit D ∈ U γ,η,θ et w∗ l’hyperplan cible unitaire (CNconsistant sur la partie Cn de D ). ∀ε ∈ (ε min (γ, η, θ ), 1 − 2η ], ∀w ∈ X , lorsqu’est fourni un échantillon S de taille au moins M(n, γ, η, θ, δ, ε), si l’algorithme du perceptron fait au moins ε216γ2 appels à CNoise-Update pour calculer des vecteurs de mise à jour, alors le vecteur wi avec la plus grande précision sur la partie Cn de l’échantillon est tel que, avec probabilité 1 − δ, Pr(x,y)∼D [yhwi , xi| θ (x, y) = 0] < 1 − η − ε. Démonstration. Par le lemme 5.6, avec probabilité 1 − δ, si wi a une précision inférieure à 1 − η − 3ε 4 sur la partie Cn de S alors Cnoiseεγ update( X, wi , 16 ) produit un vecteur de mise à jour zi tel que : 1. hw∗ , zi i ≥ εγ 4 2. hwi , zi i ≤ 0. La longueur d’une séquence (z1 , . . . , zl ) où chaque zi satisfait l’équation 16 16 1 est au plus (εγ (Block [1962] ; Novikoff [1962]). Alors, si plus de (εγ )2 )2 vecteurs de mise à jour sont calculés, au moins un de ces vecteurs de mise à jour ne satisfait pas l’équation 1, et donc au moins un w est tel que Pr(x,y)∈S [yhwi , xi| θ (x, y) = 0] < 1 − η − 3εγ . 4 La précision de wi sur l’échantillon S est la moyenne empirique d’une fonction indicatrice. Par le Théorème 2.3, il est possible de borner la distance entre la moyenne empirique d’une fonction indicatrice et son espérance avec probabilité 1 − δ. Donc, avec probabilité 1 − δ, l’estimation 5.3. Perceptrons et Projections Aléatoires, vers la Dimension Infinie empirique de la précision de chaque wi sur la part Cn de la distribution est distante d’au plus εγ 16 de son espérance. Étant donné qu’il existe au moins un wi avec une précision 1 − η − 3ε 4 sur la portion Cn, sa précision sur la partie Cn de l’échantillon est d’au moins 1 − η − 13ε 16 . La précision sur la totalité de la distribution est supérieure à 13ε 13ε ε 1 − (1 − θ ) η − − θ ≥ 1 − (1 − θ ) η − − . 16 16 32 Pour tout autre wi ayant une meilleure précision sur l’échantillon aura un précision sur la distribution d’au minimum 13ε 5ε 1 − (1 − θ ) η − − 16 32 et donc une précision sur la portion Cn de D d’au moins 1 − η − ε. Il est possible de tirer une autre conséquence de ce résultat. Si l’apprentissage est possible sur des distributions altérées par du bruit mixte, cela implique que l’algorithme du perceptron est capable d’apprendre sur des distributions initialement non linéairement séparables et bruitées par un processus Cn (avec une condition sur l’erreur minimale qu’un hyperplan peut atteindre sur la distribution non bruitées et avec une précision maximale fonction de cette erreur minimale). 5.3 Perceptrons et Projections Aléatoires, vers la Dimension Infinie Après avoir démontré que l’algorithme du perceptron peut apprendre sur des distributions à bruit mixte, sous condition que le taux de bruit malicieux soit contrôlé, nous allons montrer que, en combinant cet algorithme aux projections aléatoires (voir Algorithme 4), il est possible d’apprendre les distributions Cn sans condition sur la dimension de l’espace (précisons que, dans cette section, nous considérerons que la dimension de l’espace de description est quelconque et donc potentiellement infinie). Pour ce faire, nous nous ramènerons au Théorème 3.4 sur les projections aléatoires produit dans le Chapitre 3. Une projection aléatoire peut transformer une distribution linéairement séparable dans un espace de dimension quelconque en une distribution presque linéairement séparable dans un espace de dimension finie. Nous considérons ici que cette transformation produit un bruit de projection, dans une proportion que nous sommes capables de contrôler. Ainsi, la distribution résultante de la projection peut être considérée comme une distribution altérée par un bruit mixte. Or, étant donné : – que le nouvel espace est de dimension finie, – qu’il est possible de contrôler le taux de bruit malicieux, il est a priori possible d’utiliser un algorithme tolérant au bruit mixte pour apprendre sur une distribution Cn projetée. Le théorème suivant donne une complexité en échantillonnage indépendante de la dimension (seule 75 76 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau apparaît la dimension de l’espace de projection, exprimée en terme de marge, de confiance et de précision) pour l’apprentissage de perceptrons (et de perceptrons à noyau) sur des distributions linéairement séparables altérées par un bruit de classification uniforme. Théorème 5.2 Soient γ > 0, η ∈ [0, 0.5[ et D ∈ U γ,η . ∀ε ∈]0, 1 − 2η ], ∀δ ∈]0, 1], si un échantillon S de K 1 2 γ δ ε m > M( + ln , , η, , ) εγ(1 − 2η ) γ2 δ 2 2 2 exemples est tiré à partir de hD , Rp-learn, i en utilisant la projection F3 et une 8 1 2 dimension de projection de θ γ2 + ln δ , produit, avec probabilité au moins 1 − δ, un classifieur w tel que Pr(x,y)∼D [yhw, xi < 0] < η + ε. (Ici, K = 8 ∗ 2080 est une constante.) Démonstration. Fixons γ, η, D ∈ U γ,η et ε. Définissons le niveau de bruit malicieux, donc en fait le bruit de projection θ= γε(1 − 2η ) . 2080 D’abord, il est immédiat de s’assurer que θ ≤ θmax (γ, η ), ε min ≤ min( 2ε , 1 − 2η ) et, ainsi θ ≤ ε min (γ, η, θ ), θ ≤ 2ε . (Les hypothèses du Théorème 5.1 sont vérifiées.) Pour appliquer le Théorème 3.4, nous choisissons n= 2 8 1 [ 2 + ln ], θ γ δ ce qui garantit, avec probabilité 1 − 2δ , que la projection D 0 de D dans un sous-espace aléatoire de dimension n est une distribution avec une partie Cn de poids 1 − θ et une seconde partie de poids θ corrompue par du bruit de projection. D 0 peut alors être considérée comme un élément de γ U 2 ,η,θ . Les choix de θ et n donnent K = 2080 × 8. Par le Théorème 5.1, avec un échantillon de m exemples (avec m fixé comme dans l’énoncé du Théorème), et avec probabilité 1 − 2δ , l’algorithme d’apprentissage qui fait appel itérativement à Cnoise-Update produit en temps polynomial un classifieur avec précision au moins 2ε sur la portion Cn de la distribution. Alors, la précision du classifieur sur des exemples tirés de D est, avec probabilité 1 − 2δ − 2δ = 1 − δ, au moins ε ε δ 1 − (1 − θ ) − θ ≥ 1 − − = 1 − δ. 2 2 2 Le Théorème 5.2 est alors démontré. 5.4. Simulations Nous terminons cette section par quelques remarques : tout d’abord, il est également possible d’apprendre avec un bruit malicieux initial θinit inférieur à θmax . Dans ce cas, il faut évidemment limiter le bruit engendré par les projections aléatoires à θmax − θinit . Il est également possible de proposer un théorème équivalent sans nécessairement avoir besoin de prouver la tolérance au bruit mixte de l’algorithme du perceptron modifié. Il suffit de tirer un grand nombre (mais polynomial) d’échantillons, et pour chacun, calculer une projection aléatoire. Avec une grande probabilité, pour au moins un des échantillons projetés, il existe un vecteur Cn-consistant, qui pourra donc être appris par un algorithme Cn standard. Evidemment, de très nombreux retirages d’échantillons sont nécessaires, et il en résulte une complexité en échantillonnage et en temps très élevés. L’analyse théorique de cet algorithme est disponible dans Stempfel [2006]. 5.4 Simulations Les expériences effectuées pour montrer la validité de l’approche Rp-learn sont constituées de tests sur des données Uci et de tests sur des données synthétiques. Nous avons choisi de procéder à des tests numériques sur des données ’réelles’ en faisant usage de 5 benchmarks Uci (en l’occurrence Banana, Breast Cancer, Diabetis, German, Heart) prétraités (notamment normalisés) et rendus disponibles par Gunnar Rätsch à l’adresse suivante : http ://ida.first.fraunhofer.de/projects/bench/benchmarks.htm. Pour chacun de ces problèmes, nous disposons d’un ensemble de données étiquetées divisé 100 fois en 2 ensembles, apprentissage et test. Pour chacun de ces problèmes, nous ne disposons au mieux que de quelques centaines d’exemples, taille d’échantillon extrêmement éloignée de la valeur théorique nécessaire pour la production d’un classifieur à la précision raisonnable. De plus, la totalité de ces jeux de données ont intrinsèquement une erreur de Bayes non nulle (chevauchement des classes positives et négatives), alors que l’algorithme Rp-Learn réclame en principe des données linéairement séparables dans l’espace de plongement. Nous avons décidé de tester 3 procédures de projections : aléatoires, Kernel PCA (KPCA), Kernel Gram-Schmidt (KGS) (voir Chapitre 3 pour plus de détails). L’idée est, pour cette première série de tests, de comparer les qualités en généralisation de l’algorithme suivant le type de projection utilisé. Intuitivement, les projections aléatoires devraient plus ’déformer’ l’espace que les projections déterministes. Afin d’étendre l’algorithme à la séparation non-linéaire, nous ferons usage de noyaux gaussiens, et donc d’espace de plongement à dimension infinie. Nous avons conservé pour chacun des problèmes, dans le but de nous éviter une phase de validation croisée fastidieuse, la largeur de noyau optimale pour la classification Svm sélectionnée par Gunnar Rätsch. Pour mettre notre algorithme au défi de la tolérance au bruit (et notamment afin de vérifier que la tolérance au bruit du perceptron n’est pas, en 77 78 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau pratique, annihilée par la réduction de dimension), nous avons, pour notre protocole, altéré les données avec des bruits de classification uniforme de taux 0.0, 0,05, 0.10, 0.15, 0.20, 0.25, 0.30. Nous considérons que l’algorithme a accès au taux de bruit théorique sur les données. Cette hypothèse est très forte, mais peut-être levée grâce à l’heuristique présentée dans le Chapitre 1. Reste à déterminer la dimension que nous allons choisir pour l’espace de projection. Nous ne pourrons échapper ici à une validation croisée fonctionnant comme suit : Pour un ensemble d’apprentissage donné, nous apprenons sur les 20 premiers pour-cent de l’échantillon, et testons sur les 80 restants, puis apprenons sur une seconde portion de l’échantillon et testons sur la partie restante, et ainsi de suite... Nous sélectionnons à chaque fois la dimension optimale du point de vue de l’erreur de test. Nous réitérons le processus sur les 5 premiers ensembles d’apprentissage, et nous choisissons ensuite la médiane comme étant la dimension de projection retenue pour estimer l’erreur de généralisation. Les dimensions testées seront 2, 5, 10,15, 20, 25, 50, 75, 100, 125, 150, 200. Les vecteurs de projection sont choisis aléatoirement parmi l’ensemble d’apprentissage. En effet, nous n’avons pas accès à la distribution des données , nous devons donc choisir les vecteurs de projection parmi les données disponibles. Signalons que nous réutilisons ces exemples utilisés comme vecteurs de projection pendant la procédure d’apprentissage. On introduit alors une part de non-iid (les données étant projetées selon des exemples appartenant à l’échantillon d’apprentissage), mais cela ne semble pas rédhibitoire en pratique. Les résultats obtenus sont décrits sur la Figure 5.2. Nous remarquons d’abord que les classifieurs produits sans bruit de classification ont une précision comparable aux Svm de Rätsch, avec une variance très raisonnable. L’étape de projection n’altère donc pas, a priori, les capacités de généralisation de l’algorithme du perceptron modifié. De plus, lorsque le taux de bruit de classification ajouté artificiellement augmente, le précision ne décroît que de manière très raisonnable, avec une variance somme toute limitée. Et pourtant, les conditions théoriques sont loin d’être remplies : les tailles d’échantillon sont très inférieures aux bornes théoriques, la marge de séparation n’est absolument pas contrôlée dans l’espace de plongement, et nous utilisons des exemples de l’échantillon d’apprentissage pour effectuer les projections (ce qui est rendu possible en pratique par la bonne stabilité de l’approche)... Notons également qu’il n’y a pas, à proprement parler, de gain de précision considérable (l’écart existe, mais est assez mineur) à utiliser des projections déterministes plutôt que des aléatoires. Nous ne produisons pas ici les dimensions d’espace de projection retenues, puisqu’au vu des résultats, il paraît difficile d’en tirer des conclusions (particulièrement à cause d’une instabilité assez forte). Le comportement de Rp-learn est donc très satisfaisant sur des données Uci. Nous avons ajouté cinq simulations supplémentaires sur des jeux de données synthétiques en dimension 2. Étant que les données ont été générées aléatoirement et uniformément dans un rectangle [−10; 10] × [−10; 10], puis étiquetées selon un concept donné, la sélection de la projection est ici sans importance (nous avons choisi KGS). 5.4. Simulations 79 0.6 Noise level 0 0.05 0.10 0.15 0.20 0.25 0.30 0.5 error 0.4 0.3 0.2 0.1 0 an t ar he rm ge er nc a -c is st et ab di ea br na na ba 0.6 Noise level 0 0.05 0.10 0.15 0.20 0.25 0.30 0.5 error 0.4 0.3 0.2 0.1 0 an t ar he rm ge er nc a -c is st et ab di ea br na na ba 0.6 Noise level 0 0.05 0.10 0.15 0.20 0.25 0.30 0.5 error 0.4 0.3 0.2 0.1 0 t ar he an rm ge is t-c s ea et ab di br na na ba er c an Fig. 5.2 – Erreur de généralisation estimée sur les jeux de données UCI avec projections aléatoires, Kpca et Kgs projection sous différents niveaux de bruit Cn ; l’écart type est également représenté. 80 Chapitre 5. Rp-learn, un Algorithme pour l’Apprentissage de Perceptrons à Noyau Pour chacun des problèmes, nous disposons de 50 ensembles d’apprentissage et de 50 ensembles de test contenant chacun 2000 exemples. Nous n’imposons pas de marge de séparation lors de la génération des données. Nous avons altéré les données avec un bruit de 0.2, testé 12 largeurs de noyaux gaussiens (de 10.0 à 0.25) et 12 dimensions de projection (de 5 à 200). Pour chaque problème, nous avons sélectionné le couple largeurdimension qui minimisait le taux d’erreur du classifieur sur les données de tests. La Figure 5.3 représente graphiquement les résultats obtenus. Ces simulations appuient une nouvelle fois l’efficacité de Rp-learn pour l’apprentissage de distributions bruitées non linéaires (et loin d’être triviales). Des simulations sur ces mêmes distributions mais avec un taux de bruit de 0.4, montrent des taux d’erreur très faibles (globalement aux alentours de 10 pour cent, sur les distributions les plus complexes) et donc une excellente tolérance au bruit. 5.5 Conclusion Nous avons proposé un algorithme faisant usage de projections aléatoires pour l’apprentissage de perceptrons en dimension quelconque. L’algorithme est accompagné d’un théorème de type Pac et est en conséquence prouvé polynomial en échantillonnage et en temps, et sa complexité ne dépend pas de la dimension de l’espace initial légitimant ainsi l’utilisation de noyaux, et notamment de noyaux à espace de plongement infini. Quelques autres travaux d’apprentissage faisant usage des projections. Kpca est utilisé pour sélectionner les variables, et pour ses propriétés de régularisation, dans l’algorithme Kernel Projection Machine de Zwald et coll. [2004]. Rahimi et Recht [2007] proposent de calculer un espace de faible dimension via deux types de projections (Fourrier aléatoires et Binning). Enfin, un travail plus pratique (et sans analyse théorique) sur l’intérêt des projections aléatoires en classification supervisée a été proposé dans Fradkin et Madigan [2003]. Plusieurs pistes nous semblent intéressantes à creuser : d’abord, qu’est-il possible de dire théoriquement si on utilise des projections déterministes en lieu et place des projections aléatoires. Intuitivement, ces techniques paraissent plus efficaces, même si les résultats de nos simulations dans la Section 5.4 ne le montrent pas particulièrement. Une question se pose également à propos d’une caractérisation plus précise du bruit engendré par les projections aléatoires, le bruit malicieux étant le pire des cas possibles. Ensuite, dans quelle mesure est-ce fondé théoriquement d’utiliser les mêmes données pour calculer les vecteurs de projection pour l’apprentissage proprement dit. Enfin, nous recherchons ici un classifieur Cn-consistant, mais sans propriété de marge. Il serait donc intéressant de proposer un algorithme permettant d’apprendre un hyperplan à large marge. C’est à ce problème que nous nous intéressons par la suite, et auquel nous tentons d’apporter des réponses dans les Chapitres 7 et 8. 5.5. Conclusion Fig. 5.3 – Problèmes synthétiques : la première colonne montre les concepts ayant servi à l’étiquetage des données (avec en blanc les positifs, et en noir les négatifs). La seconde colonne montre les concepts appris Rp-learn sous un bruit de classification uniforme de 0.20 et une projection via KGS 81 Troisième partie Machines à Vecteurs de Support et Bruit de Classification 83 6 Machines à Vecteurs de Support et Tolérance au Bruit Sommaire 6.1 6.2 6.3 6.4 6.5 Machines à Vecteurs de Support Optimisation dans le Dual . . . . Optimisation dans le Primal . . . Algorithme par Plans Sécants . Tolérance au Bruit des Svm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 91 92 94 99 Dans le Chapitre 4, nous avons abordé l’apprentissage de séparateurs linéaires. Néanmoins, l’algorithme du perceptron ne permet pas, a priori, de maximiser la marge. Or, un classifieur à large marge offre des garanties théoriques de généralisation intéressantes (voir Chapitre 1). Nous allons aborder dans cette partie probablement le plus connu d’entre eux : les Machines à Vecteurs de Support (ou Svm). Les Svm ne sont pas à proprement parler un algorithme, mais un programme d’optimisation convexe, dont la résolution permet de produire un classifieur à large marge et parcimonieux sur l’échantillon d’apprentissage. Algorithme de classification linéaire, les Svm à marge dure calculent un classifieur à marge maximale sur des données linéairement séparables. À leur coté, les Svm à marge douce (ou CSvm) maximisent également la marge, tout en permettant au classifieur linéaire de faire quelques erreurs (l’échantillon d’apprentissage n’étant donc plus forcément linéairement séparable) ou de classer certains exemples avec une marge plus faible. Les machines à vecteurs de support furent un des moteurs de l’intérêt de la communauté pour les méthodes à noyaux. L’intérêt pour ces méthodes est multiple, d’abord par la convexité du programme mathématique à optimiser, impliquant l’inexistence de minima locaux, et donc l’assurance de savoir résoudre le problème à l’aide d’algorithmes d’optimisation efficaces. Ensuite, par les qualités de généralisation assurées par la théorie de l’apprentissage statistique pour les classifieurs à grande marge. Enfin, et 85 Chapitre 6. Machines à Vecteurs de Support et Tolérance au Bruit 86 surtout, par l’extension naturelle à l’usage de noyaux qui permettent alors d’aborder des problèmes non linéaires. Une question primordiale se pose : comment résoudre efficacement le programme CSvm ? En effet, trouver un programme permettant d’obtenir un classifieur à marge maximale est une chose, savoir le résoudre efficacement en est un autre. Parce que les Svm sont une des méthodes phares en classification, de nombreux travaux se sont intéressés à leur résolution. Des méthodes diverses (une résolution tantôt dans l’espace primal tantôt dans le dual) ont été ainsi proposées, avec en toile de fond la capacité d’optimiser rapidement le problème, et donc de pouvoir efficacement apprendre sur des jeux de données de grande taille. De nombreux autres travaux ne traitant pas de Svm se sont également intéressés à ce problème de maximisation de la marge de séparation. On peut notamment citer l’algorithme itératif de Cristianini (dans Friess et coll. [1998]) ou certains algorithmes de boosting (par exemple Schapire et coll. [1998]). Nous organisons ce chapitre comme suit : – D’abord, nous présentons le programme Svm classique, puis la version à marges douces CSvm. Nous donnons différentes formulations de ces problèmes, dans l’espace primal et dans l’espace dual. – Ensuite, nous parlons des méthodes de résolution du Svm dans l’espace dual, et notamment de la méthode Smo (ou Sequential Minimal Optimization), méthode d’optimisation locale itérative, et algorithme classique pour l’optimisation Svm (Platt [1998a]). – Puis, dans le but d’être capable de prendre en charge des problèmes d’apprentissage à grande échelle, nous évoquons les méthodes de résolution dans le primal. Nous nous attardons particulièrement sur une méthode d’optimisation de type Newton proposée par Chapelle [2007]. – Nous abordons également une méthode plus récente, l’algorithme de résolution par plans sécants. Particulièrement efficace sur des jeux de données de grande taille, l’algorithme est basé sur la construction d’une approximation linéaire par morceaux de la fonction de perte Svm, construction effectuée à l’aide de sous-gradients de la fonction de perte. – Enfin, nous présentons plusieurs travaux qui abordent l’étude des machines à vecteurs de support dans le cadre du bruit de classification. Il s’avère que CSvm tolère un bruit uniforme, mais seulement sous un certain nombre de conditions restrictives. 6.1 Machines à Vecteurs de Support Le premier modèle de machines à vecteurs de support dont nous allons parler est le modèle le plus simple : les Svm à marge dure. Applicables uniquement à un échantillon S de données linéairement séparable, elles se posent sous la forme d’un problème d’optimisation convexe consistant en la minimisation d’une fonction quadratique sous des contraintes d’inégalités linéaires (contraintes permettant de classer correctement tous les exemples de l’échantillon). 6.1. Machines à Vecteurs de Support 87 Le programme Svm permet donc, étant donné un échantillon S = {(x1 , y1 ), . . . , (xn , yn )} de trouver l’hyperplan de plus grande marge (donc de plus petite norme) classifiant correctement la totalité des données de S: minhw, wi w,b sous contraintes yi (hw, xi i + b) ≥ 1 i = 1, . . . , n La contrainte yi (hw, xi i + b) ≥ 1 signifie que l’on souhaite que w classe non seulement la description xi correctement (c’est-à-dire de la classe yi ), mais également qu’il la classe avec une marge de séparation suffisante. À l’optimal du programme (w∗ , b∗), pour la totalité des exemples positifs (resp. négatifs), on a hw∗ , xi ≥ 1 − b∗ (resp. hw∗ , xi < −1 − b∗ ). Ainsi, la marge géométrique définie comme : 1 γ= 2 min (x,1)∈S hw∗ , xi kw∗ k − max (x,−1)∈S hw∗ , xi kw∗ k est à l’optimum du programme : γ= 1 k w∗ k Ainsi résoudre le programme Svm permet de produire un hyperplan classifiant correctement les données, avec une marge de k w1 ∗ k . Le programme est couramment utilisé sous sa forme duale, où l’on recherche alors un vecteur α de taille n, chacun des αi étant un lagrangien associé à un exemple de l’échantillon. Les descriptions de l’échantillon n’apparaissent ainsi que sous la forme d’un produit scalaire, permettant de manière très aisée l’utilisation de noyaux de Mercer ; n max ∑ αi − α sous contraintes i =1 1 n yi y j αi α j h xi , x j i 2 i,j∑ =1 ∑ αi yi = 0 i =1 αi ≥ 0, i = 1, . . . , n Si on note α∗ l’optimum du programme ci-dessus alors le vecteur w∗ = n ∑ yi αi∗ xi i =1 définit l’hyperplan de marge maximale sur l’échantillon S. Remarquons que ce vecteur s’exprime en fonction des exemples de l’échantillon ayant un lagrangien non nul. Or, les exemples dotés de cette caractéristique sont généralement en nombre très limité, bien inférieur à la taille de l’échantillon (on parle alors de parcimonie des machines à vecteurs de support, 88 Chapitre 6. Machines à Vecteurs de Support et Tolérance au Bruit w∗ γ γ Fig. 6.1 – Classifieur optimal w∗ séparant un échantillon avec une marge γ. Les exemples cerclés de rouge sont les vecteurs de support de l’hyperplan w∗ . propriété sur laquelle nous ne nous attarderons pas). Puisqu’ils suffisent à définir l’hyperplan optimal, ils portent le nom de vecteurs de support (voir Figure 6.1). Le biais optimal b∗ s’obtient analytiquement à l’aide des conditions d’optimalité du lagrangien d’un des vecteur de support. Néanmoins, les Svm à marge dure sont destinées exclusivement à des données linéairement séparables (au moins dans l’espace de plongement, dans le cadre de l’utilisation de méthodes à noyau). Pour pouvoir prendre en charge des problèmes non séparables linéairement, il est nécessaire de modifier le programme afin de maximiser la marge tout en permettant à l’algorithme de produire un classifieur qui fait quelques erreurs de marge (mauvaise classification ou classification avec une marge insuffisante). La fonction objectif est alors modifiée pour prendre en compte les deux aspects : la maximisation de la marge comme pour les Svm à marge dure, mais également une minimisation de l’erreur empirique. Un paramètre réel positif noté C permet de moduler le poids donné au terme de régularisation (maximisation de la marge) par rapport au terme d’attache aux données (classer au mieux les données de l’échantillon d’apprentissage). Fixer ce paramètre de façon optimale est d’ailleurs un problème difficile, nécessitant souvent lors de simulations pratiques une validation croisée. Malheureusement, il est difficile d’utiliser la perte 0 − 1 pour le terme d’attache aux données. En effet, cela poserait des problèmes conséquents pour l’optimisation, puisque cette fonction de perte n’est pas continue et donc pas convexe. Alors, pour les Svm qui nous intéressent, la perte 0 − 1 est remplacée par une surrogée convexe, la perte hinge (ou perte charnière, illustration Figure 6.2). Un exemple suffisamment bien classé se verra attribuer une pénalisation nulle, et plus il sera mal classé, plus la pénalisation associée sera importante. Le programme CSvm (ou Svm à marge douce) s’écrit donc en associant une variable d’écart ξ i à chaque exemple (xi , yi ) qui mesure à quel point l’exemple est mal classifié. L’erreur empirique s’exprime sous la forme de la somme des variables d’écart sur l’échantillon. Pour un hyperplan (w, b), un exemple (x, y), la pénalisation ξ associée sera : 6.1. Machines à Vecteurs de Support 89 ℓ(γ) 1 O γ 1 Fig. 6.2 – En trait plein, la fonction (convexe) de perte hinge en fonction de γ utilisée par les CSvm en lieu en place de la perte 0 − 1 (en bleu). γ est défini, ici, pour un exemple (x, y) et un classifieur (w, b), γ = (yhw, xi + b) ( ξ= 0 1 − y (hw, xi + b) si y (hw, xi + b) ≥ 1 sinon Le programme CSvm à marge douce s’écrit alors : C 1 min hw, wi + n w,b 2 n ∑ ξi i =1 sous contraintes yi (w, xi + b) ≥ 1 − ξ i ξ i ≥ 0, i = 1, . . . , n Comme pour le problème à marge dure, nous introduisons la version duale de CSvm, à laquelle nous aurons recours dans le Chapitre 7 : n max ∑ αi − α i =1 1 n yi y j αi α j h xi , x j i 2 i,j∑ =1 n sous contraintes ∑ yi αi = 0 i =1 C ≥ αi ≥ 0, i = 1, . . . , n n où δij = 1 si i = j et 0 sinon. Enfin, en notant α∗ l’optimum du programme ci-dessus, alors le vecteur w∗ = n ∑ yi αi∗ xi i =1 définit l’hyperplan optimal du problème primal Csvm, c’est-à-dire l’hyperplan qui allie, selon le choix de C, un risque empirique faible et une marge importante. L’ensemble des vecteurs de support sont ici, non seulement, et comme pour les Svm à marge dure, les exemples classifiés avec 90 Chapitre 6. Machines à Vecteurs de Support et Tolérance au Bruit w∗ ξi ξj γ γ Fig. 6.3 – Classifieur optimal w∗ séparant approximativement un échantillon avec une marge douce γ. Les exemples cerclés de rouge sont les vecteurs de support de l’hyperplan w∗ . Deux exemples sont mal (ou pas assez bien) classés et se voient associer des variables d’écart non nulles une marge kw1∗ k mais également les exemples mal (ou insuffisamment bien) classés (voir illustration Figure 6.3). Il existe une formulation équivalente du problème CSvm, non contrainte celle-ci. C’est cette formulation que nous utiliserons principalement dans la suite. Afin de faciliter l’écriture nous introduisons la fonction de perte suivante ` : R → R, ( ∀γ ∈ R, `(γ) = si γ ≥ 1 sinon 0 1−γ x,y ainsi que le réel γw,b défini pour un hyperplan (w, b) ∈ W et un exemple (x, y) ∈ X × Y comme x,y γw,b = y (hw, xi + b) . Nous définissons la fonction objectif GCSvm : W → R définie par rapport à un échantillon S = {(x1 , y1 ), . . . , (xn , yn )} comme GCSvm (w, b) = hw, wi + C n n ∑ `(γw,b ). xi ,yi (6.1) i =1 Pour simplifier les notations par la suite, nous noterons L le terme d’attache aux données de la fonction objectif de CSvm : L= 1 n xi ,yi `(γw,b ). ∑ n i =1 Le problème CSvm s’exprime alors sous la forme du programme d’optimisation suivant : min GCSvm (w, b) w,b 6.2. Optimisation dans le Dual 6.2 Optimisation dans le Dual Les méthodes ’historiques’ de résolution du problème CSvm prennent place dans l’espace dual, l’expression duale du programme ne faisant intervenir les exemples que sous la forme de produits scalaires, rendant ainsi triviale l’utilisation de noyaux de Mercer. Les méthodes naïves d’optimisation par montée de gradient (ou montée de gradient stochastique) s’avèrent être une solution acceptable mais le choix du pas de gradient peut poser problème : un pas trop petit entraînera une convergence très lente de l’algorithme alors qu’un pas trop grand peut provoquer des oscillations et empêcher la convergence (remarquons tout de même qu’une méthode de gradient conjugué projeté fonctionne de manière appréciable, voir Wen et coll. [2003]). La plupart des algorithmes d’optimisation dans l’espace dual prennent le parti d’une optimisation itérative locale avec, à chaque étape, une maximisation effectuée sur un sous ensemble de variables. On peut citer par exemple Smo (qui sélectionne les variables deux à deux), Svmlight (où le sous-ensemble choisi est de taille plus importante), ou les algorithmes à contraintes actives qui sélectionnent au fur et à mesure les vecteurs support candidats. Le point clé de ces algorithmes réside dans le choix de la décomposition effectuée (et donc dans le choix des sous-ensembles sélectionnés à chaque étape) afin de pouvoir, à partir d’une optimisation locale, retrouver le maximum global de la fonction objectif Csvm duale tout en restant efficace en pratique. Un algorithme classique de résolution dans l’espace dual est l’algorithme Smo pour Sequent Minimal Optimisation. Cette approche consiste à décomposer le problème et d’optimiser itérativement le programme dual en maximisant à chaque étape la fonction objectif en fonction de deux lagrangiens seulement (chacun d’entre eux étant associé à un unique exemple). La puissance de cette méthode réside dans le fait que l’optimisation en fonction de deux exemples admet une solution analytique, ce qui permet de s’épargner l’utilisation d’un optimiseur quadratique (les performances de certains algorithmes utilisant un solveur quadratique, comme Svmlight sont néanmoins de très bonne qualité). Etant donné que le problème est convexe, la progression maximum local après maximum local permet d’atteindre après un nombre fini d’itérations, le maximum global de la fonction objectif, et donc de trouver l’hyperplan de marge optimale. L’algorithme commence avec une solution admissible triviale. A chaque étape, Smo choisit deux exemples (en fait, deux lagrangiens associés à des exemples), recherche les paramètres optimaux pour ces exemples, tout en s’assurant que les contraintes (et notamment ∑in=1 αi yi = 0) restent vérifiées, et modifient en conséquence le vecteur courant. Seuls les deux lagrangiens considérés à une étape t peuvent être modifiés, les autres restant inchangés. Le choix des points est fait selon une heuristique, alors que l’optimisation locale se fait de manière analytique. Chaque étape de l’optimisation est donc peu coûteuse calculatoirement, et même si la convergence est plus lente en termes de nombre d’étapes, 91 Chapitre 6. Machines à Vecteurs de Support et Tolérance au Bruit 92 elle se trouve être assez nettement accélérée par rapport à une montée de gradient standard. De plus, il n’est pas nécessaire de stocker la matrice de Gram en mémoire, puisque aucune opération matricielle n’intervient à quelque moment que ce soit dans l’algorithme. La vitesse de convergence dépend fortement de l’heuristique choisie pour la sélection des couples de points à chaque itération. A l’optimum, le saut de dualité (c’est-à-dire la différence entre la valeur de la fonction objectif du primal et celle du dual) est nul. Ainsi, un choix intelligent pour les couples d’exemples à considérer est de sélectionner celui qui viole le plus les conditions de Krush-Kuhn-Tucker et donc qui contribuent le plus au saut de dualité. Malheureusement, le calcul des conditions KKT est coûteux, et les heuristiques utilisées en pratique sont plus facilement implémentables. Proposée par Platt [1998a,b], l’heuristique classique consiste à sélectionner d’abord un point parmi ceux qui violent les conditions KKT. Ensuite, le second exemple doit être sélectionné afin de faire progresser au maximum l’optimisation. Nous ne détaillerons pas plus cette heuristique ici et fermons cette présentation succincte de l’optimisation dans l’espace duale pour Csvm. 6.3 Optimisation dans le Primal La majorité des premiers articles sur la résolution du programme Svm traitent essentiellement d’optimisation effectuée dans le dual. Or, il est tout à fait possible d’apprendre des machines à vecteurs de support directement dans le primal, stratégie notamment étudiée par Mangasarian [2001] ; Keerthi et DeCoste [2005]. Toutefois, ces travaux ne considéraient que le cas linéaire et ne s’attaquaient donc pas à l’usage de noyaux. Chapelle [2007] étend ces études à la classification non linéaire, en montrant que le problème CSvm sous sa forme non contrainte peut aisément être écrit en terme de produits scalaires puis résolu efficacement en utilisant une méthode de Newton. Si résoudre exactement le programme primal ou le programme dual est équivalent, ce n’est absolument pas le cas lorsque l’on se contente (comme souvent en pratique) de solutions approchées. Étant donné que la quantité minimisée dans le primal est directement celle désirée, il semble intuitivement préférable de travailler dans le primal. Par exemple, une descente de gradient avec early stopping (arrêt de l’optimisation avant la convergence) présente de meilleurs résultats dans le primal. L’idée est donc de minimiser le problème CSvm non contraint, dans le primal, en utilisant une optimisation de type Newton. Le théorème de représentation (Kimeldorf et Wahba [1970]), nous permet de nous ramener à la recherche d’une combinaison linéaire de fonctions noyau évaluées par rapport aux exemples de l’échantillon. Soit K un noyau de Mercer et S un échantillon de n exemples. Alors, nous recherchons une solution de la forme n f (x) = ∑ β i K ( xi , x ) i =1 6.3. Optimisation dans le Primal 93 ℓ(γ) 1 ℓh(γ) O γ 1 Fig. 6.4 – Approximation quadratique (ou perte huber) continue `h (en bleu) de la perte hinge ` (en rouge). Le réglage du paramètre h permet d’avoir une approximation plus ou moins précise. avec β i ∈ R pour tout i, ce qui permet de réécrire la fonction objectif 0 GCSvm sous la forme suivante GCSvm , avec λ > 0 et `h fonction de perte différentiable que nous définirons quelques lignes plus tard : G CSvm0 n ( β) = ∑ i,j=1 n β i β j K ( xi , x j ) + ∑ ` h i =1 n yi , ∑ K ( xi , x j ) β j ! . j =1 Malheureusement, il est ici impossible de conserver telle quelle la perte hinge utilisée dans CSvm puisqu’elle ne remplit pas cette condition de différentiabilité. La perte `h utilisée par Chapelle est une approximation quadratique indéfiniment dérivable de la hinge, inspirée par la perte Huber, et définie comme suit (voir l’illustration sur la Figure 6.4), pour un h fixé dans R+ : `h (y, t) = 0 (1−yt+h)2 4h 1 − yt si yt > 1 + h si |1 − yt| ≤ h si yt < 1 − h. Il est alors aisé de calculer (bien que nous ne les reproduirons pas ici) le gradient et le hessien de la fonction objectif du primal, ainsi que le vecteur de mise à jour utilisé lors de l’optimisation. La complexité de l’algorithme de résolution en faisant usage de la perte `h est dans le pire des cas de l’ordre de n3 et dépend dans le cas général polynomialement du nombre d’exemples se trouvant dans la partie quadratique de la perte. D’autres pertes ont été proposée, pour l’approximation de la perte hinge, mais ne permettent pas de gain de complexité très appréciable par rapport à la Huberloss. Chapitre 6. Machines à Vecteurs de Support et Tolérance au Bruit 94 6.4 Algorithme par Plans Sécants Dans cette section, nous présentons d’abord l’algorithme Cpa de résolution de CSvm tel qu’il a été décrit par Franc et Sonnenburg [2007] puis nous introduisons la borne de convergence de l’algorithme. La difficulté principale lors de la résolution du problème CSvm réside au niveau de la non différentiabilité en un point de la perte hinge. Lors de l’optimisation, il est donc nécessaire de prendre en compte la non différentiabilité de la fonction de risque L (c’est-à-dire la perte globale sur l’échantillon). L’idée générale de Cpa consiste à approcher cette fonction non différentiable par une fonction linéaire par morceaux , définie comme un maximum sur un ensemble d’approximations linéaires (plans sécants ou plans sécants) construit itérativement. L’efficacité de Cpa repose sur le fait, qu’en pratique, un nombre réduit de plans sécants est suffisant pour obtenir une bonne approximation de la fonction de risque autour de l’optimal. L’algorithme (ou ses dérivés) a été intégré avec réussite dans plusieurs logiciels, par exemple, le solveur Svmperf (se reporter à [Joachims, 2006] pour plus de détails). Les résultats sont convaincants, le solveur étant capable d’apprendre des classifieurs performants sur jeux de données de très grande taille (jusqu’à plusieurs millions d’exemples) en un temps de calcul demeurant très raisonnable. Toutefois, notons que c’est dans la classification linéaire que l’algorithme par plans sécants trouve son efficacité optimale (travailler avec des noyaux de Mercer nécessite un stockage de la matrice de Gram). Il est important de noter que seul le terme de risque est approché, alors que le terme de régularisation reste inchangé. En effet, celui-ci est dérivable, quadratique et ne présente donc pas de difficulté particulière pour l’optimisation. Nous allons donc substituer à la fonction de risque empirique L une approximation linéaire par morceaux Lt (que nous préciserons plus tard). Il est alors possible de définir un nouveau programme à résoudre : argmin GtCSvm (w) := w 1 kwk2 + CLt (w) 2 (6.2) Pour terminer de définir la fonction objectif de ce nouveau problème, il reste à calculer intelligemment l’approximation Lt de la fonction de risque. Pour ce faire, celle-ci n’étant pas différentiable en tout points, nous allons utiliser des sous-gradients, dont nous rappelons ci-dessous la définition (voir Figure 6.5). Définition 6.1 Soit f : X → R une fonction convexe à valeurs réelles définie sur un ouvert dans Rn . Un vecteur w est un sous-gradient en x0 ∈ X si pour tout x ∈ X : f (x) − f (x0 ) ≥ hw, x − x0 i. L’ensemble de tous les sous-gradients en x0 est appelée sous-différentielle en x0 , et est notée ∂ f (x0 ). Par définition de la perte hinge, L est une fonction convexe. Par consé- 6.4. Algorithme par Plans Sécants 95 0 Fig. 6.5 – 3 sous-gradients en un point de non-différentiabilité d’une fonction convexe. x0 0 Fig. 6.6 – Sous-approximation linéaire en x0 d’une fonction convexe quent, elle peut être approchée en tout point w̃, par un sous-estimateur linéaire calculé à l’aide d’un sous-gradient (voir Figure 6.6), comme suit : ∀w L(w) ≥ L(w̃) + haw̃ , w − w̃i (6.3) où aw̃ est un (n’importe quel) sous-gradient de L en w̃. Similairement à ce qui est fait dans [Franc et Sonnenburg, 2007], simplifions l’écriture en notant bw̃ = L(w̃) − hã, w̃i et donc pour tout w̃, nous obtenons : L(w) ≥ L(w̃) + haw̃ , wi + bw̃ . (6.4) Par la suite, nous désignons un plan sécant haw̃ , wi + bw̃ = 0 sous l’écriture d’un couple (aw̃ , bw̃ ) ∈ X × R. La génération d’un plan sécant demande donc le calcul en w̃ d’un sous-gradient aw̃ . Bien heureusement, obtenir aw̃ est une opération peu coûteuse. Il suffit de choisir un sousgradient de la fonction hinge : 96 Chapitre 6. Machines à Vecteurs de Support et Tolérance au Bruit ∂`(γ) = ∂γ 1 0 si γ ≤ 1 sinon. Le calcul du sous-gradient de la fonction de risque est alors immédiat : aw̃ = − 1 n πi yi xi n i∑ =1 (6.5) avec πi = 1 si yi hw̃ · xi i ≤ 1 et 0 sinon. Le point clé de l’algorithme Cpa repose sur le fait qu’une meilleure approximation de L peut être obtenue en calculant itérativement un ensemble de t plans sécants (awi , bwi ) à t points (w1 , . . . , wt ). Ainsi, une sous-approximation linéaire Lt sera définie comme étant le maximum sur l’ensemble des t plans sécants : Lt (w) = max 0, max {hawi , wi + bwi } 1...t (6.6) Remarquons par ailleurs que la fonction de risque, par définition de la hinge loss, demeure positive en tout point. Il est donc possible d’ajouter un plan sécant d’équation w = 0 pour forcer Lt à rester positive. Notons également que l’approximation Lt de L est exacte aux points w1 . . . wt et que pour tout w ∈ X , L(w) > Lt (w). Lt est donc effectivement une sousapproximation de L. Le problème 6.2 peut alors se reformuler en utilisant les plans sécants sous la forme quadratique suivante : (w∗ , ψ∗ ) = argminw,ψ sous contraintes ∀i < t 1 kwk2 + Cψ 2 ψ ≥ h a w i , w i + bw i (6.7) ψ>0 Alors que le problème Svm standard possède autant de contraintes qu’il existe d’exemples dans l’échantillon, ici, nous pouvons noter que le nombre de contraintes est seulement égal au nombre de plans sécants générés (nombre qui dépend de la précision désirée pour l’approximation). Evidemment, avec un nombre de contraintes pouvant être sensiblement plus faible, l’optimisation sera plus rapide. Il reste à définir la stratégie à mettre en oeuvre pour choisir les plans sécants que l’on va ajouter itérativement pour obtenir une bonne approximation (tout en contrôlant le nombre de plans sécants nécessaires). Définir une condition d’arrêt est quelque chose de simple : il suffit de stopper l’algorithme lorsqu’on obtient, pour une précision ε initialement fixée, une distance entre le risque réel et l’optimal de l’approximation linéaire inférieure à ε : GCSvm (wt ) − GtCSvm (wt ) ≤ ε (6.8) 6.4. Algorithme par Plans Sécants 97 0 x1 0 0 x1 0 0 0 0 x2 x3 0 x1 x2 x3 x3 Fig. 6.7 – Fonctionnement schématique de l’algorithme Cpa pour minimiser une fonction convexe quelconque : On ajoute successivement 3 plans sécants en x1 , x2 , x3 , et l’algorithme s’arrête lorsque l’approximation linéaire est suffisamment proche de la fonction à minimiser. Or, comme GtCSvm est une sous-approximation, GtCSvm (wt+1 ) < GCSvm (w∗ ) (où, nous le rappelons, wt+1 est l’optimal de GtCSvm et w∗ est l’optimal +1 98 Chapitre 6. Machines à Vecteurs de Support et Tolérance au Bruit Algorithme 6 : Algorithme Cutting-Plane Joachims [2006] Entrée: S = {(xi , yi )}in=1 , C > 0, ε > 0 Sortie: w, ψ t=0 répéter wt , ξ t = argminw,ξ ≥0 12 hw, wi + Cψ s.t. ψ ≥ hawi , wi + bwi , i = 0, . . . , t − 1 Calcul d’un plan sécant hawt , xi + bwt = 0 avec : 1 n 1 si γ ≤ 1 x ,y awt = − ∑ πi (γwi t i )yi xi , avec π (γ) = (6.9) 0 sinon. n i =1 bw t = 1 n x ,y `(γwi t i ) − hawt , wt i ∑ n i =1 (6.10) jusqu’à GCSvm (wt ) − GtCSvm (wt ) < ε de GCSvm ), il est possible de conclure immédiatement que satisfaire le critère 6.8 implique GCSvm (wt+1 ) − GCSvm (w∗ ) < ε. Cette inégalité implique, comme il le sera montré dans le Chapitre 7, que wt+1 est proche de w. À chaque itération i, l’algorithme minimise le programme 6.7 avec i contraintes. Si le critère d’arrêt est satisfait en l’optimum wi+1 de GiCSvm , alors l’algorithme stoppe et wi+1 est un classifieur satisfaisant. Sinon, l’algorithme ajoute un nouveau plan sécant au point wi+1 et recalcule le minimum du programme 6.7 avec i + 1 contraintes. En conséquence, à chaque itération l’approximation devient plus précise autour de l’optimum précédent de la fonction linéaire par morceaux. Ainsi, l’optimum de GtCSvm grandit à chaque ajout de plan sécant, et étant donné que Lt est une sous approximation de L, l’optimum de GtCSvm se rapproche de G. Notons que, de ce fait, on ne cherche à être précis qu’autour de l’optimum de la fonction objectif. Il est en effet inutile d’avoir une excellente approximation en des zones de l’espace qui ne contiennent pas de bons classifieurs du point de vue de la fonction de risque. Nous pouvons maintenant énoncer l’algorithme complet, décrit dans l’Algorithme 6 et schématisé en Figure 6.4. L’intérêt que nous portons à l’algorithme Cpa ne se situe pas tant au niveau de sa capacité à traiter de grands jeux de données, qu’au niveau de la borne de convergence polynomiale obtenue par Joachims [2006] après analyse théorique de l’algorithme. En effet, il est prouvé que pour obtenir une approximation de l’optimum (à une précision) arbitrairement grande, un nombre polynomial de plans sécants (dépendant uniquement du paramètre C, de la norme maximale des exemples de l’échantillon et de la précision désirée ε) est suffisant. Pour tout ε > 0, pour tout C > 0 et pour tout échantillon S = {(x1 , y1 ), . . . , (xn , yn )} (où pour tout i < n, kxi k ≤ R), l’Algorithme 6 Théorème 6.1 (Joachims [2006]) 6.5. Tolérance au Bruit des Svm 99 satisfait le critère d’arrêt après au plus max 2C 8C3 R2 , ε ε2 itérations. Ainsi, puisque le programme quadratique résolu à chaque itération est un problème simple car convexe et peu contraint, et donc un programme qu’il est possible de résoudre en temps polynomial, la complexité globale de l’algorithme est polynomiale. Ce point s’avère essentiel pour l’efficacité pratique de l’algorithme, mais également pour un hypothétique théorème de Pac-apprentissage pour les Svm. Pour conclure cette section 6.4, notons que Franc et Sonnenburg [2007] ont proposé une optimisation de l’algorithme Cpa qui sélectionne de manière plus fine le plan sécant ajouté à chaque itération. Bien que cette amélioration accélère significativement, selon les auteurs, en pratique la convergence de l’algorithme, la borne de convergence ne semble toutefois pas être abaissée. 6.5 Tolérance au Bruit des Svm Dans cette section, nous étudions rapidement quelques travaux ayant été effectués précédemment et s’intéressant à l’apprentissage de machines à vecteurs de support dans un cadre de bruit de classification. Cet intérêt n’est pas direct, puisque ces articles se concentrent essentiellement sur la Bayes-consistance des Svm à marges douces. Nous allons commencer pour éclaircir ce que nous entendons par Bayes-consistance : un classifieur Bayes-consistant est un classifieur ayant un risque égal au risque de Bayes, donc au risque minimal qu’il est possible d’atteindre sur la distribution. Steinwart [2002] montre que les machines à vecteur de support 1-norme (donc CSvm) sont Bayes-consistantes sur toutes distributions à condition que : – le paramètre de régularisation (paramètre C) soit choisi de manière appropriée (une stratégie permettant de fixer C est proposée dans l’article), – le noyau utilisé appartient à une classe spécifique, la classe des noyaux universels. Un noyau universel k est un noyau tel que, pour toute fonction g sur l’ensemble de description X et pour tout ε réel positif, il est une fonction f dans l’espace fonctionnel (Rkhs) associé à k telle que k f − gk∞ ≤ ε. Le noyau gaussien notamment vérifie cette condition, mais il n’est pas le seul : noyau de Vovk, noyau de Fourier régularisé... Steinwart propose ensuite une stratégie pour choisir le paramètre de régularisation, avec un exemple pour le noyau gaussien. Bartlett et coll. [2005] voit, parmi d’autres pertes, la perte hinge comme une surrogée convexe de la perte 0 − 1. L’article montre que la hinge est dans une classe de fonctions de perte garantissant qu’un classifieur sera Bayes-consistant à condition que la fonction minimisant le φ-risque 100 Chapitre 6. Machines à Vecteurs de Support et Tolérance au Bruit (c’est à dire minimisant l’erreur selon la perte considérée) appartienne à la classe de classifieurs considérée par la procédure d’apprentissage. Autrement dit, pour les CSvm, le classifieur produit sera Bayes-consistant si la fonction minimisant la perte hinge sur l’ensemble de toutes les fonctions mesurables est effectivement un hyperplan dans l’espace de plongement. Evidemment, cette condition semble très ardue à vérifier a priori. L’étude est ensuite étendue à un échantillon fini sous condition de bruit faible de Tsybakov (Mammen et Tsybakov [1999]), qui peut être vu comme un phénomène de bruit de classification : les données sont alors altérées selon un processus η : X → 0, 12 comme suit : pour un exemple (x, y), on obtiendra l’exemple bruité (x, σy) avec ( 1 avec probabilité 1 − η (x) σ= . −1 sinon Quel rapport entre Bayes-consistance et tolérance au bruit de classification ? Notons d’abord que le processus de bruit de classification uniforme respecte la condition de bruit faible de Tsybakov, et donc que ce dernier est une généralisation du bruit Cn. Or, dans le cas du bruit Cn, la minimisation du risque est une stratégie valide. Plus clairement, la recherche d’un classifieur de risque minimal, donc Bayes-consistant, conduira à la production d’un classifieur Cn-consistant. Les CSvm sont donc naturellement tolérantes au bruit de classification uniforme sous certaines conditions, développées plus haut. Toutefois, ces conditions ne nous satisfont pas. En effet, la condition d’universalité du noyau nous semble très restrictive. Par exemple, le noyau linéaire, utilisé couramment en classification de textes, n’est pas universel. De plus, prenons l’exemple de la création d’un noyau ad-hoc, spécifiquement pour un problème donné. Il semble difficile d’imposer comme condition nécessaire lors de la construction du noyau son l’universalité. Dans la prochaine section, nous proposons un exemple de distribution linéairement séparable et affecté par un bruit Cn sur lequel CSvm échoue à produire un classifieur Cn-consistant (le noyau linéaire, comme tous les noyaux polynomiaux, n’étant pas universel). Ensuite, ces résultats sont vrais à la limite, avec un accès à la distribution des données, ou à un échantillon de taille infinie. Qu’en est il lorsque l’algorithme a uniquement, comme dans le cadre classique de la classification supervisée, à sa disposition un échantillon fini de données ? De plus, ces résultats ne sont pas, a priori extensibles à des processus de bruit Cccn par exemple, puisque minimiser le risque n’est pas une approche adaptée à ce type de problèmes. 7 nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées Sommaire 7.1 7.2 7.3 7.4 7.5 7.6 Les Svm ne sont pas Cn-tolérantes . . . . . . . . . . . . Un Programme d’Optimisation pour les Svm Bruitées Analyse de la Solution de nSvm . . . . . . . . . . . . . . Résoudre nSvm . . . . . . . . . . . . . . . . . . . . . . . . . . Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.1 Données Synthétiques . . . . . . . . . . . . . . . . . . . . 7.5.2 Problèmes Uci . . . . . . . . . . . . . . . . . . . . . . . . . Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 111 114 120 122 122 123 124 Dans le Chapitre 6, nous avons abordé les capacités de tolérance au bruit de classification uniforme de CSvm. Dans le cadre général, sans hypothèses contraignantes par exemple sur l’universalité du noyau utilisé, les machines à vecteur de support classiques ne produisent pas à coup sûr des hyperplans Cn-consistants (voir Définition 1.7). Même si, comme démontré dans les Chapitres 4 et 5, il est possible d’obtenir de tels hyperplans, via des algorithmes basés sur le perceptron, notamment. Toutefois, de telles procédures n’ont pas pour objectif de produire des classifieurs à large marge, qui garantiraient de bonnes qualités de généralisation. Dans le cadre Cn et sans noyau universel, la difficulté pour l’apprentissage de CSvm réside essentiellement dans le trop fort poids attribué par la perte hinge à des exemples bruités qui sont en réalité bien classés et donc pénalisés à tort. Pour parer à cela, nous estimons, grâce à un échantillon de taille suffisante, la perte telle qu’elle aurait dû être si les données n’avaient point été bruitées, et d’utiliser cette estimation en lieu et place de la perte hinge dans le programme CSvm pour essayer de retrouver, à partir des données altérées, le classifieur optimal du CSvm obtenu sur les données non bruitées. Nous quittons donc le cadre Pac, pour nous concentrer sur la recherche d’un classifieur consistant avec les données d’apprentissage. 101 Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 102 Dans un souci de généralité, nous considérons, plutôt que le bruit Cn classique, le bruit de classification constant par classe, extension qui ne modifie en rien le type d’approche que nous mettons en oeuvre, ni l’idée de la preuve de convergence. Au passage, notons qu’il n’y a aucune raison que CSvm fonctionne correctement sur les problèmes Cccn. En effet, le principe de minimisation du risque empirique implémenté via la perte hinge par CSvm n’est absolument plus valide sur les problèmes Cccn (voir équation 1.2). Ce chapitre est organisé comme suit : – Pour commencer, nous exhibons une distribution linéairement séparable, altérée par un bruit de classification uniforme sur laquelle CSvm n’est pas capable de produire un classifieur Cn-consistant. – Ensuite, nous présentons nSvm, un programme d’optimisation permettant d’apprendre des classifieurs à large marge sur des données Cccn. Basé sur l’utilisation d’une fonction objectif (ayant l’inconvénient d’être non convexe) de la perte CSvm non bruitée, il nous permet si la taille de l’échantillon d’apprentissage est suffisamment importante d’approcher le classifieur optimal du problème Svm non bruité. – Nous prouvons cette propriété de robustesse au bruit Cccn de notre approche dans la section suivante. La preuve ’repose’ essentiellement sur le recours aux inégalités de concentration ainsi qu’à la complexité de Rademacher. – Nous présentons ensuite la méthode choisie pour la résolution du problème non convexe nSvm, et nous en introduisons également une version convexe approchée, Cvx-nSvm. – Enfin, dans la dernière section, nous proposons un ensemble de simulations, à la fois sur des données synthétiques et Uci, montrant la pertinence de notre approche. nSvm et sa relaxation convexe Cvx-nSvm s’avèrent en effet régulièrement plus performants sur des problèmes Cccn que les CSvm classiques. Les travaux présentés dans ce chapitre ont été publiés à CAp 2008 et ICANN 09 dans Stempfel et coll. [2008] ; Stempfel et Ralaivola [2009b]. 7.1 Les Svm ne sont pas Cn-tolérantes Au premier abord, l’usage de marges douces pourrait amener à penser que le problème CSvm est naturellement tolérant au bruit de classification uniforme sur des distributions linéairement séparables. Cette intuition s’avère fausse, il existe des distributions linéairement séparables sur lesquelles Csvm échoue à produire un classifieur consistant. Pour montrer ce fait, nous introduisons une distribution de données que nous nommons distribution à double-marge. Soient les 5 points suivants : x A = [−1; ε], x B = [1; ε], xC = [−1; −ε], x D = [1; −ε] et x E = [1; −1] ainsi que leurs classes associées y A = y B = +1 et yC = y D = y E = −1. Nous définissons la D2-margin sur X × Y , où X = R2 . Soit ε > 0. Définition 7.1 (Distribution à double-marge) Étant donné p A , p B , pC , p D , p E > 0 tels que p A + p B + pC + p D + p E = 1, un exemple est tiré selon la distribution D2-margin avec : P [(x, y) = (xi , yi )] = pi . Il 7.1. Les Svm ne sont pas Cn-tolérantes xA ε 103 xB +1 −1 xC −ε xD −1 xE Fig. 7.1 – Problème des 5 points à double marge. x A et x B sont positifs, les autres négatifs. Étant donné un paramètre ε fixé et un bruit de classification η, le programme CSvm favorisera, quel que soit le paramètre de régularisation C un hyperplan vertical à un classifieur Cn-consistant. existe deux ’marges’ de séparation possibles pour un classifieur. Soit la fonction de classific ation a une petite marge horizontale, et classe correctement la totalité des points non bruités de l’échantillon. Soit une seconde marge, plus grande, mais qui ne permet pas de classer correctement toutes les données (erreurs sur x B et xC ). La Figure 7.1 décrit cette distribution D2-margin . Notons que, pour ε > 0, D2-margin est linéairement séparable. Nous montrons alors que, si un certain niveau de bruit de classification est appliqué à la distribution, un algorithme CSvm classique favorise un séparateur vertical plutôt qu’une classifieur Cn-consistant pour des valeurs de η, ε, p A , p B , pC , p D et p E bien définies. C’est ce que nous utiliserons pour prouver la proposition suivante. Nous introduisons d’abord une notion légèrement différente de tolérance au bruit, puisque nous nous intéressons ici à la consistance sur une distribution. Soit A un algorithme d’apprentissage. A est dit tolérant au bruit de classification uniforme, si pour tout γ > 0, pour tout taux de bruit η < 21 , pour toute distribution D ∈ D γ,η , alors A, en ayant accès à D , produit un classifieur Cn-consistant avec D . Définition 7.2 (Tolérance au bruit de classification) Proposition 7.1 CSvm n’est pas tolérant au bruit de classification uniforme : Il existe γ > 0, η < 21 et une distribution D ∈ D γ,η tels que, pour tout paramètre de régularisation C, CSvm, en ayant accès à D , produit un classifieur qui n’est pas Cn-consistant avec D . Pour prouver cette proposition, il suffit de montrer qu’existe au moins une distribution telle que CSvm n’est pas consistant avec la version non bruitée S de Sσ même si le nombre de données est grand. La preuve fonctionne en deux temps : 1. nous considérons que CSvm a un accès direct à la distribution D2-margin bruitée ; Le problème d’optimisation Csvm peut ainsi s’écrire en fonction du taux de bruit η et des paramètres de D2-margin ; 104 Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 2. nous proposons un ensemble de valeurs pour ε, p A , p B , pC , p D , p E et η tel que, quelle que soit la valeur de C , la fonction objectif GCsvm pour toute hypothèse Cn-consistante est toujours supérieure à la valeur de la fonction objectif pour une autre hypothèse ayant une erreur supérieure à min{ p A , p B , pC , p D , p E } ; en conséquence, il n’est pas possible d’apprendre un classifieur ne faisant pas d’erreur sur cette distribution séparable lorsqu’elle est altérée par du bruit de classification Autrement dit, CSvm favorise la mauvaise marge si le taux de bruit et la valeur de ε sont telles que c’est le meilleur moyen de minimiser GCsvm . La preuve de la Proposition 7.1 suivra le plan suivant : – Nous introduisons deux familles de classifieurs H A (sous-ensemble des classifieurs Cn-consistants) et H B (sous-ensemble des classifieurs non Cn-consistants). – Nous recherchons les conditions nécessaires pour qu’un classifieur (w, b) soit Cn-consistant. – Nous montrons que tout classifieur Cn-consistant n’est pas meilleur qu’au moins un classifieur de H A du point de vue de la fonction objectif GCSvm . – En conséquence, nous nous limitons à l’étude des classifieurs Cnconsistant appartenant à H A . – Nous montrons, que, du point de vue de la pénalisation hinge, et donc de la fonction de perte, il y a 3 familles de classifieurs dans H A . – Pour chacun des trois cas, nous calculons une condition sur les paramètres du problème à double-marge tels que tout classifieur de H A soit, du point de vue de la fonction objectif CSvm et pour toute valeur de C, moins bon qu’au moins un classifieur de H B . – Nous proposons des paramètres pour le problème double-marge remplissant les conditions calculées à l’étape précédente. – Nous concluons que, pour toute valeur de C, l’optimal de la fonction objectif CSvm n’est pas un classifieur Cn-consistant. Preuve de la Proposition 7.1 Soit la fonctionnelle suivante : GCsvm (w, b) = 1 hw, wi + CE(x,y)∼ D [`(y(hw, xi + b))]. 2 Elle peut s’interpréter comme la fonction objectif CSvm dans le cas où on a accès à la distribution bruitée de D2-margin : GCsvm (w, b) = 1 hw, wi + C ∑ pi [(1 − η )`(yi (hw, xi i + b)) 2 i = A,B,C,D,E +η `(−yi (hw, xi i + b))] . Lorsque nous avons ainsi accès à la distribution, notre intérêt est, a priori, de minimiser GCSvm lorsque C = +∞, c’est-à-dire lorsque les exemples mal (ou pas assez bien) classés sont très fortement pénalisés. Ainsi, nous forçons l’algorithme à classer correctement la totalité de la distribution non bruitée, et donc à produire un classifieur Cn-consistant. Remarquons que notre analyse est vraie lorsque C → +∞. 7.1. Les Svm ne sont pas Cn-tolérantes xi Coord. xi Étiquette yi yi hw, xi i Perte pt. Perte pt. bruité xA [−1; ε] +1 ελ (1 − ελ)+ (1 + ελ)+ xi Coord. xi Étiquette yi yi hw, xi i Perte pt. Perte pt. bruité xA [−1; ε] +1 λ (1 − λ ) + (1 + λ ) + xB [1; ε] +1 ελ (1 − ελ)+ (1 + ελ)+ xB [1; ε] +1 −λ (1 + λ ) + (1 − λ ) + 105 xC [−1; −ε] -1 +ελ (1 − ελ)+ (1 + ελ)+ xC [−1; −ε] -1 −λ (1 + λ ) + (1 − λ ) + xD [1; −ε] -1 +ελ (1 − ελ)+ (1 + ελ)+ xD [1; −ε] -1 λ (1 − λ ) + (1 + λ ) + xE [1; −1] -1 +λ (1 − λ ) + (1 + λ ) + xE [1; −1] -1 λ (1 − λ ) + (1 + λ ) + Tab. 7.1 – Pertes associées à chacun des 5 points constituant l’exemple à double marge, qu’ils soient bruités (ligne 6) ou non (ligne 5) pour, en haut (resp. en bas) un hyperplan horizontal (resp. vertical) (w, 0), w = [0; λ] (resp. (w, 0), w = [−λ, 0]). On rappelle que ( x )+ = x si x > 0 et 0 sinon. Dans cette démonstration, nous nous intéressons, dans un premier temps, et afin de rendre plus facile la lecture de la preuve, à deux familles de vecteurs en particulier : – l’ensemble des classifieurs non biaisés H A = {(w, 0)|w = [0; λ], λ > 0} . Ces classifieurs sont Cn-consistants et intuitivement les meilleurs sur les données non bruitées. – l’ensemble des classifieurs non biaisés H B = {(w, 0)|w = [−λ; 0], λ > 0} . Ces hyperplans favorisent la grande marge de séparation classifiant incorrectement les points x B et xC . Dans le Tableau 7.1, nous donnons la pénalisation hinge de chacun des points de la distribution à double-marge bruitée pour ces deux familles de classifieurs. Nous souhaitons nous limiter à considérer les éléments de H A , même si H A ne contient pas la totalité des classifieurs Cn-consistants sur la distribution à double-marge. Un classifieur d’équation hw, xi + b = 0, avec w = [ a; λ] est consistant si et seulement si les points x A , x B , xC , x D , x E sont classifiés correctement : Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 106 − a + λε + b ≥ 0 a + λε + b ≥ 0 − a − λε + b < 0 a − λε + b < 0 a−λ+b < 0 (a) ([x A = [−1; ε]]) (b) ([x B = [1; ε]]) (c) ([xC = [−1; −ε]]) (d) ([x D = [1; −ε]]) (e) ([x E = [1; −1]]) On en déduit des conditions nécessaires sur λ, a et b pour que le classifieur soit Cn-consistant : 1. λ > 0 par (a) et (c) 2. a ∈ [−λε, λε] par (a) et (d) ; (b) et (c) 3. b ∈ [−λε, λε] par (a) et (b) ; (c) et (d) Lemme 7.1 Soit le classifieur (w, b) (avec w = [ a; λ]) Cn-consistant sur les données d’apprentissage. Alors le classifieur (w0 , 0) ∈ H A , avec w0 = (0, λ) est tel que : GCSvm (w, b) − GCSvm (w0 , 0) ≥ −2Cλε. Démonstration. Tout d’abord, notons que kw0 k ≤ kwk. Nous rappelons que la fonction de perte hinge est Lipschitzienne. Ainsi, pour tout exemple (x, y) avec x = [ x1 ; x2 ] : ` (y(h w, xi + b)) − ` yh w0 , xi ≥ −|hw, xi + b − hw0 , xi| Il suffit de remarquer que pour tout exemple de la distribution considérée | x1 | < 1 pour conclure, après quelques calculs que : GCSvm (w, b) − GCSvm (w0 , 0) ≥ −| ax1 | − |b| ≥ −2Cελ Ainsi, nous avons démontré que (w, b) n’est pas, du point de vue de la fonction objectif de CSvm, un bien meilleur classifieur que (w0 , 0) Objectif : Nous nous concentrons maintenant sur les éléments de H A et de H B . Nous établissons des conditions suffisantes telles que pour tout élément (w, 0) de H A , il existe un classifieur (w0 , 0) dans H B tel que, pour tout paramètre C, GCSvm (w, 0) > GCSvm (w0 , 0) + 2Cελ. (7.1) Dans ce cas, il n’existe pas de paramètre C, tel que l’algorithme produit un classifieur Cn-consistant. En effet, le lemme 7.1 nous montre que pour tout classifieur Cn-consistant (w00 , b), il existe (w, 0) ∈ H A tel que 7.1. Les Svm ne sont pas Cn-tolérantes xi Perte pt. Perte pt. bruité xA (1 − ελ)+ (1 + ελ)+ 107 xB (1 − ελ)+ (1 + ελ)+ xi Perte pt. Perte pt. bruité xA 0 2 xB 2 0 xC (1 − ελ)+ (1 + ελ) xC 2 0 xD 0 2 xD (1 − ελ)+ (1 + ελ) xE 0 (1 + λ ) xE 0 2 Tab. 7.2 – Pertes associées à chacun des 5 points constituant l’exemple à double marge, qu’ils soient bruités (ligne 3) ou non (ligne 2) pour, en haut (resp. en bas) pour un hyperplan horizontal (resp. vertical) (w, 0), w = [0; λ], λ ≥ 1 (resp. (w0 , 0), w0 = [−1, 0]). GCSvm (w00 , b) − GCSvm (w, 0) ≥ −2Cλε. Ainsi, si l’équation 7.1 est vérifiée, on a : GCSvm (w00 , b) − GCSvm (w0 , 0) > 0 et (w00 , b), comme tous les autres classifieurs Cn-consistants n’est pas une solution du programme CSvm. Nous supposons dans la suite, pour des raisons que nous expliciterons plus tard, que pE η ε< . (7.2) 2 + (1 − p E )(1 − 2η ) Soit (w, 0) ∈ H A , w = [0; λ]. Pour commencer, notons qu’il y a 3 types de vecteurs dans H A du point de vue de la hinge loss, qui dépendent de la valeur choisie pour λ (voir Figure 7.2 et Tableau 7.1). (i) Si λ > 1ε , alors seuls les points bruités sont pénalisés (c’est à dire se voient attribuer une perte non nulle dans la fonction objectif CSvm). (ii) Si λ ∈ [1, 1ε ], alors sont également pénalisés les points non bruités situés en x A , x B , xC , x D . (iii) Si λ < 1, alors la totalité des points, bruités ou non, sera pénalisée. Nous pouvons aborder les cas (i ) et (ii ) simultanément en vue de raccourcir la preuve, mais devrons traiter le cas (iii ) séparément. Lemme 7.2 Soit (w, 0) ∈ H A avec w = [0; λ] et λ ≥ 1. Alors, pour (w0 , 0) ∈ H B avec w0 = [−1; 0], GCSvm (w, 0) − 2Cελ > GCSvm (w0 , 0). si 2η ( p A + p D + p E ) + 2(1 − η )( p B + pC ) ≤ (1 − p E + p E η ) + ((1 − p E )(2ηε − ε) + p E η − 2ε) (7.3) Démonstration. Un hyperplan w = (λ, 0), avec λ ≥ 1, classe correctement, mais avec une marge pouvant être trop petite x A , x B , x D , x D , x E . Ainsi, la 108 Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées xA xB w xC hw, xi = 1 xD hw, xi = −1 xE xA xB hw, xi = 1 w xC xD xEhw, xi = −1 hw, xi = 1 xA xB w xC xD xE hw, xi = −1 Fig. 7.2 – Schéma décrivant les trois cas de classification étudiés pour montrer la non tolérance des CSVM au bruit de classification. w est un vecteur sans biais qui classifie correctement tous les exemples non bruités, la variation de sa norme dépendant du cas considéré. 7.1. Les Svm ne sont pas Cn-tolérantes fonction objectif du programme Csvm s’écrit : λ +C ∑ η pi `(−yi hw, xi i) 2 i = A,B,C,D,E GCsvm (w) = +C ∑ (1 − η ) pi `(yi hw, xi i) i = A,B,C,D peut être minorée par l’expression suivante (voir Tableau 7.2) : λ +C ∑ η pi (1 + yi hw, xi i) 2 i = A,B,C,D,E GCsvm (w, 0) ≥ ∑ +C (1 − η ) pi (1 − yi hw, xi i) i = A,B,C,D λ + C (( p A + p B + pC + p D )(1 + 2ηλε − ελ) + p E (η + ηλ)) 2 (car `(γ) ≥ 1 − γ) λ ≥ + C ((1 − p E + p E η ) + ((1 − p E )(2ηε − ε) + p E η ) λ)) 2 ≥ λ + C ((1 − p E + p E η ) + ((1 − p E )(2ηε − ε) + p E η − 2ε) λ)) 2 1 ≥ + C ((1 − p E + p E η ) + ((1 − p E )(2ηε − ε) + p E η − 2ε)) 2 (par eq. 7.2) GCsvm (w, 0) − 2Cλε ≥ Calculons maintenant la valeur de la fonction objectif pour l’élément de B w0 = (−1, 0) (voir Tableau 7.2). GCsvm (w0 , 0) = 1 + C ∑ η pi `(−yi hw0 , xi i) + C ∑ (1 − η ) pi `(yi hw0 , xi i) 2 i = A,D,E i = B,C GCsvm (w0 , 0) = 1 + C (2η ( p A + p D + p E ) + 2(1 − η )( p B + pC )) 2 Alors, si l’expression 7.3 est vérifiée, on a bien GCSvm (w, 0) − 2Cλε > GCSvm (w0 , 0). Lemme 7.3 Soit (w, 0) ∈ H A avec w = [0; λ] et λ < 1. Alors, pour (w0 , 0) ∈ H B avec w0 = [λ; 0], GCSvm (w, 0) − 2Cελ > GCSvm (w0 , 0). si (( p A + p D + p E )(2η − 1) + ( p B + pC )(1 − 2η )) ≤ ((1 − p E )(2ηε − ε) + p E (2η − 1) − 2ε) (7.4) 109 110 Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées xi Perte pt. Perte pt. bruité xA 1 − ελ 1 + ελ xB 1 − ελ 1 + ελ xC 1 − ελ 1 + ελ xA 1−λ 1+λ xB 1+λ 1−λ xC 1+λ 1−λ xi Perte pt. Perte pt. bruité xD 1 − ελ 1 + ελ xD 1−λ 1+λ xE 1−λ 1+λ xE 1−λ 1+λ Tab. 7.3 – Pertes associées à chacun des 5 points constituant l’exemple à double marge, qu’ils soient bruités (ligne 3) ou non (ligne 2) pour, en haut (resp. en bas) pour un hyperplan horizontal (resp. vertical) (w, 0), w = [0; λ], λ < 1 (resp. (w0 , 0), w0 = [−λ, 0]). Démonstration. Un hyperplan w = (λ, 0), avec λ < 1, classe correctement, mais avec une marge trop petite les exemples x A , x B , xC , x D , x E . Ainsi, la fonction objectif du programme Csvm : GCsvm (w, 0) = λ +C ∑ η pi `(−yi hw, xi i) 2 i = A,B,C,D,E ∑ +C (1 − η ) pi `(yi hw, xi i) i = A,B,C,D,E peut s’écrire de la manière suivante (voir Tableau 7.3) : GCsvm (w, 0) = λ + ∑ pi (1 + yi hw, xi i) 2 i= A,B,C,D,E +C ∑ (1 − η ) pi (1 − yi hw, xi i) i = A,B,C,D,E λ + C (( p A + p B + pC + p D )(1 + 2ηλε − ελ ) 2 + p E (1 + 2ηλ − λ)) λ = + C (1 + ((1 − p E )(2ηε − ε) + p E (2η − 1)) λ)) 2 = Calculons maintenant la valeur de la fonction objectif pour l’élément de B w0 = (−λ, 0) (voir Tableau 7.3). GCsvm (w0 , 0) = λ +C ∑ η pi `(−yi hw0 , xi i) 2 i = A,B,C,D,E +C ∑ (1 − η ) pi `(yi hw0 , xi i) i = A,B,C,D,E λ + C (( p A + p D + p E )(1 − λ + 2ηλ) + ( p B + pC )(1 + λ − 2ηλ)) 2 λ = + C (1 + (( p A + p D + p E )(2η − 1) + ( p B + pC )(1 − 2η )) λ)) 2 GCsvm (w0 , 0) = 7.2. Un Programme d’Optimisation pour les Svm Bruitées 111 et donc, GCsvm (w) − 2Cλε = λ + C (( p A + p D + p E )(1 − λ + 2ηλ) 2 +( p B + pC )(1 + λ − 2ηλ) − 2ε) Alors, si l’expression 7.4 est vérifiée, on a en effet GCSvm (w, 0) − 2ε > GCSvm (w0 , 0) pour tout λ < 1. Nous avons donc montré que pour tout classifieur Cn-consistant, il existait, pour tout C, un classifieur dans H B avec une meilleure fonction objectif GCSvm à condition que : 1. L’équation 7.3 soit vérifiée 2. L’équation 7.4 soit vérifiée 3. L’équation 7.2 soit vérifiée ce qui revient, si en fixant η et ε au système d’inéquations linéaires suivant : 2η 2η − 1 0 1 2 − 2η 1 − 2η 0 1 2 − 2η 1 − 2η 0 1 2η 2η − 1 0 1 1 + 2ηε − ε 2ηε − ε 1−η 1 pA pB pC pD pE 1 + 2ηε − 3ε 2ηε − 3ε ≤ 1 − 2η + 2ε 1 Des valeurs de η = 0.4, p A = p E = 0.4, p B = pC = 0.05, p D = 0.1 et ε = 0.01 satisfont ces contraintes. Sur le problème double-marge ainsi instancié, même en ayant droit à un accès à la distribution, CSvm échoue donc à produire un classifieur consistant avec les données non bruitées. La non-universalité du noyau linéaire est un donc un réel problème pour l’apprentissage de Svm sur des problèmes soumis à un bruit de classification uniforme. 7.2 Un Programme d’Optimisation pour les Svm Bruitées L’analyse effectuée dans le Chapitre 6 montre que les CSvm sont tolérantes au bruit Cn mais au prix de conditions contraignantes. Ceci est dû, notamment, à une mauvaise évaluation du terme d’attache aux données de la fonction objectif de CSvm. S’il était possible d’estimer la valeur, à partir de l’échantillon bruité, des variables d’écart x ,y ξ i = `(γwi i ) non bruitées (donc de la perte CSvm sur l’échantillon non bruité), alors on pourrait apprendre de manière précise un hyperplan Cccn-consistant Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 112 à large marge. Nous allons montrer dans cette section qu’une telle estimation existe. Nous supposons que nous sommes à la recherche dans ce chapitre d’hyperplans sans biais, et ce, sans perte de généralité. Commençons par fixer un paramètre de bruit Cccn η = (η + η − ) ∈ N (c’est à dire tels que η + + η − < 1). Nous considérons un échantillon S = { (x1 , y1 ), . . . , (xn , yn )}, un vecteur de bruit de paramètre η. Nous définissons un vecteur de bruit σ = [σ1 . . . σn ] de paramètre η tel que : ( 1 avec probabilité 1 − η yi σi = −1 avec probabilité η yi η η Nous notons l’échantillon bruité Sη = (x1 , σ1 y1 ), . . . , (xn , σn yn ) . Nous introduisons alors une nouvelle fonction de perte `ˆ : R × Y → R, dépendant notamment de la classe de l’exemple auquel elle s’applique, pour y = +1 et y = −1 : ˆ γ, y) = Kη [(1 − η −y )`(γ) − η y `(−γ)] `( (7.5) avec Kη , Kη = 1 1 − η+ − η− . L’approche choisie se base sur le fait que `ˆ peut être utilisée pour estimer la perte hinge ` sur des données bruitées. Cette nouvelle perte peut également s’écrire sous la forme de deux fonctions, dépendant uniquement de γ, chacune étant définie par l’étiquette de l’exemple considéré (voir Figure 7.3) : `ˆ y : R → R, ˆ γ, y) `ˆ y (γ) = `( Une propriété de cette fonction de perte que nous exploiterons par la suite, notamment pour l’analyse théorique, est qu’elle est Lipschitzienne avec une constante qui nous est donnée par le lemme suivant, et nous définissons, pour plus de lisibilité, une constante supplémentaire Lη telle que : Lη = 1 + η + − η − . Lemme 7.4 Soit y ∈ Y . Pour tout γ1 , γ2 ∈ R, ˆ ˆ ` ( γ ) − ` ( γ ) y 1 y 2 ≤ Kη Lη | γ1 − γ2 |. En d’autres termes, `ˆ y est Lipschitzienne de constante Kη Lη . Démonstration. Pour démontrer ce lemme, il suffit de calculer la pente minimum (puisque `ˆ y est décroissante sur R pour tout y) de `ˆ y . Nous avons alors (cf. Figure. 7.3) : −y −Kη (1 − η ) si γ < −1 d`ˆ y (γ) = −Kη (1 − η −y + η y ) si −1 < γ < 1 dγ −Kη η y si γ > 1 (7.6) 7.2. Un Programme d’Optimisation pour les Svm Bruitées 113 Remarquer que (1 − η −y + η y ) < (1 + |η + − η − |) suffit à terminer la preuve. Lemme 7.5 Pour tout w ∈ X , pour tout (x, y) ∈ X × Y , et avec σ vecteur de bruit de x,σy paramètre η et de taille 1 affectant l’exemple (x, y), `ˆ σy (γw ) est un estimateur x,y non biaisé de `(γw ) : x,σy x,y Eσ `ˆ σy (γw ) = `(γw ). Démonstration. La preuve est sans difficultés majeures : x,σy x,y x,y Eσ `ˆ σy (γw ) = (1 − η y )`ˆ y (γw ) + η y `ˆ −y (−γw ) (Par définition du processus de bruit) x,y x,y y −y = Kη (1 − η ) (1 − η )`(γw ) − η y `(−γw ) x,y x,y (Par définition de `ˆ ) +η y (1 − η y )`(−γw ) − η −y `(γw ) x,y x,y = Kη (1 − η y )(1 − η −y )`(γw ) − η y η −y `(γw ) = Kη (1 − η y − η −y )`(γw ) x,y x,y = `(γw ). (Par définition de Kη ) Ce lemme nous dit donc que, pour un paramètre w donné, il est possible d’estimer les variables d’écart non bruitées à partir de l’échantillon bruité. En utilisant cette nouvelle perte `ˆ , nous proposons alors un nouveau problème d’optimisation, dérivé de CSvm, basé sur les données bruitées. Nous appellerons nSvm (pour noisy Svm) cette nouvelle stratégie d’apprentissage, qui consiste à résoudre le problème suivant : 1 C min hw, wi + w 2 n n ˆ γw ∑ `( xi ,σi yi , σi yi ). (7.7) i =1 Ajoutons quelques petites remarques relatives à ce nouveau problème : (i) si les taux de bruit sont tels que η + = 0 et η − = 0 alors le problème (7.7) revient exactement au programme classique CSvm (6.1), (ii) par linéarité de l’espérance, l’espérance de la fonction objectif de (7.7) par rapport au processus de bruit est la fonction objectif (6.1). (iii) notons également que même si la fonction objectif CSvm est convexe (ce qui est une propriété importante pour l’optimisation), celle de (7.7) ne l’est pas nécessairement, à cause de la non convexité de `ˆ (voir (7.5) et Figure 7.3). (iv) notons également que `ˆ , contrairement à `, peut prendre une valeur négative, ce qui peut paraître incongru au premier abord pour une fonction de perte. Malgré tout, cette caractéristique ne s’avérera pas être un problème pour l’optimisation par la suite. La prochaine section s’intéresse à l’analyse théorique des propriétés de la fonction objectif non convexe de (7.7), et plus précisément à son minimum. Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 114 7 6 5 4 3 2 1 0 -1 -2 -3 η=(0.0,0.4) η=(0.1,0.3) η=(0.2,0.2) η=(0.3,0.1) η=(0.4,0.0) -3 -2 -1 0 1 2 3 2 3 γ 7 6 5 4 3 2 1 0 -1 -2 -3 η=(0.0,0.4) η=(0.1,0.3) η=(0.2,0.2) η=(0.3,0.1) η=(0.4,0.0) -3 -2 -1 0 1 γ Fig. 7.3 – `ˆ +1 (resp. `ˆ −1 ) en haut (resp : en bas) en fonction de γ pour différentes valeurs de (η + , η − ) (voir (7.5)) ; `ˆ y est non convexe et Lipschitz avec constante Kη (1 + |η + − η − |) (cf. lemma 7.4). On notera que lorsque η + = 0 (resp. η − = 0), la perte `+ (resp. `− ) revient à la perte hinge. 7.3 Analyse de la Solution de nSvm La question à laquelle nous nous intéressons dans cette section est de savoir dans quelle mesure la solution de (7.7) est proche de la solution du problème CSvm non bruité (pour la même valeur de C et pour le même échantillon S = { (x1 , y1 ), . . . , (xn , yn )}). Nous montrons, en utilisant essentiellement des inégalités de concentration ainsi que la convexité de la fonction objectif (6.1) que, à condition qu’un nombre suffisant de données d’apprentissage soit disponible, un classifieur minimisant le programme (7.7) est proche de la solution optimale de (6.1). Hypothèses : Afin de simplifier les preuves, nous supposerons par la suite qu’il existe un réel R > 0 tel que tout exemple x tiré de la distribution 7.3. Analyse de la Solution de nSvm 115 D vérifie hx, xi ≤ R2 . Cela revient à supposer que la totalité des exemples de la distribution se situe dans une boule de rayon R. La première étape de notre démonstration consiste à démontrer que l’estimation de la perte hinge non bruitée grâce à l’estimateur proposé dans la section précédente peut être, si l’échantillon d’apprentissage est suffisamment grand, arbitrairement précise. Cette preuve s’effectue au moyen d’arguments de complexité de Rademacher, sur le modèle présenté dans le chapitre 2. Nous introduisons alors les notations suivantes : µ(S , w) = 1 n 1 n ˆ xi ,σi yi xi ,yi `( γ ) , µ̂ (S , σ, w, ) = `(γw , σi yi ). w n i∑ n i∑ =1 =1 (7.8) Nous montrons que l’espérance (par rapport au processus de bruit) du risque nSvm sur les données bruitées, pour tout hyperplan w, est proche du risque CSvm calculé sur les données non bruitées. Pour ce faire, nous introduisons, pour une distribution D sur X × Y , et pour un processus de bruit Cccn de paramètre (η + , η − ) altérant les données , une distribution sur X × Y × {−1, 1} de triplets ( X, Y, σ ) (avec P(σ = 1|Y = y) = 1 − η y ) ; conditionné sur Yσ = t pour t = {−1, +1}. Nous définissons ainsi D XYσ|Yσ=t sur X × Y × {−1, 1}. Alors, pour un vecteur donné t = [t1 · · · tn ] avec ti ∈ {+1, −1}, DSn σ |Yσ =t = ⊗in=1 D XYσ|Yσ=ti est la distribution des échantillons S = {( Xi , Yi )}in=1 et du vecteur de bruit σ = [σ1 · · · σn ] tel que Yi σi = ti . Notons que tous les triplets ( Xi , Yi , σi ) tels que ti = 1 (ti = −1) partagent la même distribution – et sont, bien sûr, indépendants. La signin fication de DS| se déduit de DSn σ |Yσ =t . Le conditionnement à Y σ est Yσ =t nécessaire puisque la fonction de perte associée à un exemple est dépendante de la classe de cet exemple. Lemme 7.6 Soit t = [t1 . . . tn ] un vecteur donné dans {−1, +1}n . Pour toute distribution D , ∀(η + , η − ) ∈ N , ∀δ ∈]0, 1], ∀ε ∈ R+ , pour tout échantillon aléatoire S et vecteur de bruit σ de taille n tirés selon DSn σ |Yσ =t si n> 8Kη2 (1 + RW )2 L2η ε2 ln 4 δ alors, avec probabilité au moins 1 − δ, pour tout w ∈ X tel que kwk ≤ W. |µ(S , w) − µ̂(S , w, σ )| < ε. (7.9) Démonstration. Dans la suite, les espérances font référence aux distribun tions DSn σ |Yσ =t et DS| , n+ (n− ) étant le nombre de ti égaux à 1 (−1). Yσ =t L’objectif, nous le rappelons, est d’établir une borne supérieure uniforme (par rapport à w) sur |ES σ µ(S , w, σ ) − µ(S , w)| et sur |ES σ µ̂(S , w, σ ) − µ̂(S , w, σ )| (= |ES µ(S , w) − µ̂(S , w, σ )| par le Lemme 7.5). Notons que, si nous sommes capable de définir une borne inférieure sur la taille d’échantillon 116 Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées d’apprentissage pour que cette dernière quantité soit inférieure à un ε > 0 donné, alors cette taille d’échantillon sera également suffisante pour que la première quantité soit également inférieure à ε. Nous allons donc borner, comme expliqué dans le Chapitre 2, l’expression ∆(S , σ ) définie comme suit ∆(S , σ ) = sup |ES ,σ µ̂(S , w, σ ) − µ̂(S , w, σ )| . w∈X ,kwk≤W Comme, par hypothèse, kwk ≤ W et kxk ≤ R, les marges maximales et minimales pour un w donné sur un exemple quelconque (x, y) sont respectivement γmin = − RW et γmax = RW. Alors, étant donné que `ˆ y est une fonction décroissante en fonction de γ et selon la définition de `ˆ (cf. équation (7.5)), `ˆ prend ses valeurs dans l’intervalle ˆ γmax ); `( ˆ γmin )] [`( ⊆ −Kη max(η + , η − )(1 + RW ); Kη (1 − min(η + , η − ))(1 + RW ) . x ,y Alors, étant donné que γwi i = yi hw, xi i, la variation maximale de x ,y `ˆ ti (σi γwi i ) lorsqu’on modifie un triplet (xi , yi , σi ) est au plus Kη (1 + RW ) max(η + , η − ) + max(1 − η + , 1 − η − ) = Kη Lη (1 + RW ). Donc, par définition de µ̂(S , σ, w), la variation maximale de ∆(S , σ ) lorsque l’on change un (xi , yi , σi ) est au plus Kη Lη (1 + RW )/n. En utilisant le Théorème 2.5, nous avons ainsi (les triplets ( Xi , Yi , σi ) sont indépendants entre eux) ! n εo nε2 P |∆(S , σ ) − ES σ ∆(S , σ )| ≥ , ≤ 2 exp − 2 2 4 8Kη Lη (1 + RW )2 qui est borné par δ/2 pour le choix de n fait dans le lemme. Nous obtenons alors la borne supérieure suivante sur ES σ ∆(S , σ ) (le sup est pris sur l’ensemble des vecteurs w ∈ X , kwk ≤ W), avec κ vecteur de n n variables de Rademacher S 0 σ 0 ∼ DSn σ |Yσ =t , et, ainsi, S 0 ∼ DS| : Yσ =t ES σ ∆(S , σ ) = ES σ sup ES 0 σ 0 µ̂(S 0 , σ 0 , w) − µ̂(S , σ, w) ≤ ES σ sup ES 0 σ 0 µ̂(S 0 , σ 0 , w) − µ̂(S , σ, w) ≤ ES σ S 0 σ 0 sup µ̂(S 0 , σ 0 , w) − µ̂(S , σ, w) n n 1 = ESS 0 sup ∑ `ˆ ti (ti hw, xi0 i) − ∑ `ˆ ti (ti hw, xi i) i =1 n i =1 (ineg. triangul.) (ineg. Jensen) n ((7.8) et S , S 0 ∼ DS| ) Yσ =t n 1 = ESS 0 κ sup ∑ κi `ˆ ti (ti hw, xi0 i) − `ˆ ti (ti hw, xi i) i =1 n (xi et xi0 sont i.i.d) n 2 ≤ ES κ sup ∑ κi `ˆ ti (ti hw, xi i) (ineg. triangul.) i =1 n # " 2 ≤ ES + κ sup ∑ κi `ˆ +1 (hw, xi i) + ES − κ sup ∑ κi `ˆ −1 (−hw, xi i) , i:t =+1 i:t =−1 n i i 7.3. Analyse de la Solution de nSvm 117 − n n où S + ∼ DS| et S − ∼ DS| . Notons que si il n’y a Yσ =[1...1] Yσ =[−1...−1] pas d’exemples positifs (resp. négatifs) dans l’échantillon d’apprentissage bruité, alors le premier (resp. le second) terme de la borne ci-dessus est nul. + Pour obtenir une borne supérieure sur ES σ ∆(S , σ ), nous introduisons Qn+ (W ) défini comme + n 2 ˆ + + Qn (W ) = + ES κ sup ∑ κi `+1 (hw, xi i) , n w,kwk≤W i =1 et nous observons que + + n n 2 2 Qn+ (W ) ≤ + ES + κ sup ∑ κi `ˆ +1 (hw, xi i) − 1 + + Eκ ∑ κi i =1 i =1 n n (ineg. triangul.) + n 2 2 ≤ + ES + κ sup ∑ κi `ˆ +1 (hw, xi i) − 1 + √ , (i) i =1 n n+ h i n comme Eκ |∑in=1 κi |2 = Eκ ∑i,j κ κ = n et que pour toute variable i j =1 p 2 2 aléatoire X, 0 ≤ V(| X |) = E(| X | ) − E (| X |), alors, E(| X |) ≤ E(| X |2 ). Le Lemme 7.4 nous dit que `ˆ +1 (γ) − 1 est Lipschitz avec constante Kη Lη et `ˆ +1 (0) − 1 = 0. Le premier terme de l’inégalité (i ) est la complexité de ˆ −1 Rademacher de la classe de fonctions définie par la composition de `() et l’ensemble des hyperplans sans biais w tels que kwk ≤ W. En utilisant la Proposition 2.1, nous obtenons : Q n + (W ) ≤ 4Kη Lη WR 2(2Kη Lη WR + 1) 2 √ √ +√ = , + + n n n+ tandis qu’une inégalité similaire existe pour Qn− (W ). Ainsi : n+ 2(2Kη Lη WR + 1) n− 2(2Kη Lη WR + 1) √ √ + n n n+ n− 4(2Kη Lη WR + 1) √ ≤ n ES σ ∆(S , σ ) ≤ qui, pour la valeur de n établie dans le lemme est majorée par ε/4. En conséquence, avec probabilité au moins 1 − δ/2, l’inégalité suivante est vraie uniformément sur w, kwk ≤ W : |ES σ µ̂(S , σ, w) − µ̂(S , σ, w)| ≤ ε ε ε ε + ES σ ∆(S , σ ) ≤ + = . 4 4 4 2 En conclusion, |ES σ µ(S , w) − µ(S , w)| ≤ ε/2 avec probabilité 1 − δ/2. Noter que ES σ µ(S , w) = ES µ(S , w) = ES σ µ̂(S , σ, w) et utiliser le fait que |µ(S , w) − µ̂(S , σ, w)| ≤ |ES σ µ(S , w) − µ(S , w)| + |ES σ µ̂(S , σ, w) − µ̂(S , σ, w)| met fin à la preuve. Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 118 La proposition suivante permet de s’affranchir du conditionnement par rapport à Yσ. Proposition 7.2 Sous les mêmes hypothèses que dans le Lemme 7.6, pour S tiré selon D (sans conditionnement sur Yσ), et pour un vecteur aléatoire σ, l’inégalité suivante est vraie avec probabilité au moins 1 − δ : |µ(S , w) − µ̂(S , σ, w)| < ε, ∀w ∈ X , kwk ≤ W. (7.10) Démonstration. Si Φ désigne l’événement décrit par l’équation (7.9), alors il suffit de constater que ∀t ∈ {−1, +1}n , PSσ ∼ DSn σ |Yσ =t (Φ) ≥ 1 − δ. Ainsi, PS∼ D (Φ) = ET [ES σ ∼ DSn σ |Yσ =T 1Φ ] = ∑ ES σ ∼ DSn σ |Yσ =t 1Φ P(Yσ = t) t = ∑ PS σ ∼ DSn σ |Yσ =t (Φ)P(Yσ = t) t ≥ ∑(1 − δ)P(Yσ = t) = 1 − δ. t Cette proposition établit la proximité entre les fonctionnelles de nSvm et de CSvm, justifiant donc la stratégie mise en oeuvre, qui consiste en la minimisation de la fonction objectif de nSvm lorsque les données bruitées sont disponibles. Le prochain lemme s’intéresse, pour tout W > 0, la proximité des solutions de : min w,kwk≤W min w,kwk≤W GCSvm (w) := G nSvm (w) := 1 C hw, wi + 2 n 1 C hw, wi + 2 n n ∑ `(γw xi ,yi ), et (7.11) , σi yi ). (7.12) i =1 n ˆ γw ∑ `( xi ,σi yi i =1 Ce lemme dit que le minimum global wσ de G nSvm (w) est tel que GCSvm (wσ ) est proche de la valeur optimale de GCSvm . Notons que l’hypothèse faite sur la norme maximale des vecteurs w candidats peut être faite sans perte de généralité. En fait, dans les simulations, nous utilisons des procédures d’optimisation initialisées à une solution admissible w = 0 et minimisent la fonction objectif à chaque étape de l’optimisation. Parce que la valeur de la fonction objectif en 0 est C, elle ne peut être supérieure à C à chaque étape et, donc, il est inutile de considérer des vecteurs w tels que √ kwk > 2C. Lemme 7.7 Avec les mêmes hypothèses que dans le Lemme 7.6, si w∗ est la solution optimale de (8.7) apprise sur les données non bruitées et wσ réalise le minimum de G nSvm (lancés respectivement sur S et sa version bruitée S σ ) alors, avec probabilité au moins 1 − δ, 0 ≤ G (wσ ) − G (w∗ ) ≤ ε. 7.3. Analyse de la Solution de nSvm 119 Démonstration. Il suffit d’utiliser le fait que, par définition de l’optimum de GCSvm w∗ , 0 ≤ GCSvm (wσ ) − G nSvm (w∗ ) et, avec probabilité 1 − δ : GCSvm (wσ ) − GCSvm (w∗ ) = GCSvm (wσ ) − G nSvm (wσ ) + G nSvm (wσ ) − G nSvm (w∗ ) + G nSvm (w∗ ) − GCSvm (w∗ ) ε ε ≤ +0+ 2 2 = ε. En conséquence, nous obtenons une borne sur la proximité des solutions des problèmes nSvm et CSvm. Lemme 7.8 Pour toute distribution D sur X × Y , ∀(η + , η − )N , ∀δ ∈ (0, 1], ∀ε ∈ R+ , pour tout échantillon aléatoire S de n exemples tirés à partir de D et pour tout vecteur (de taux (η + , η − )) σ = {σ1 , . . . , σn }, il existe N (η + , η − , δ, ε, C, R) ∈ N tel que si n > N alors, avec probabilité au moins 1 − δ, −1 kwσ − w∗ k2 ≤ 2λmin (K )ε, où λmin (K ) est la plus petite valeur propre strictement positive de la matrice de Gram K = hxi , x j ii,j Démonstration. Nous donnons simplement ici une idée de la preuve, étant donné que de grandes parties sont communes avec les lemmes précédents (notamment la partie établissant la valeur précise de N pour prendre C en compte). Nous supposons que, pour le choix de N effectué dans l’énoncé du lemme : 0 ≤ GCSvm (wσ ) − GCSvm (w∗ ) ≤ ε, où GCSvm est la fonction objectif de (6.1). Toutefois, formuler le problème CSvm avec une telle paramétrisation peut mener à un problème n’étant pas strictement convexe. Pour éviter cette situation, nous considérons que w = ∑xi ∈ A αi xi où A est un sous ensemble de X tel que tous les vecteurs de A sont linéairement indépendants, et génèrent le même espace que celui engendré par {x1 , . . . , xn }. Alors, nous notons GαCSvm (α), la fonction objectif de Csvm, avec α ∈ Aα = { α | x i ∈ A ∨ α i = 0}. GαCSvm (α) = 1 T C α Kα + 2 n n ∑ `(yi αT ki ) i où K est la matrice de Gram relative à l’échantillon S et k i sa i-ème colonne. Nous avons alors, pour tout α, d ∈ Aα : Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 120 1 T d Kd + d T Kα 2" # C n `(σi yi (α + d)T k i ) − `(σi yi αT k i ) + n i∑ =1 GαCSvm (α + d) − GαCSvm (α) = Si H = Cn ∑in=1 `(σi yi α T k i ) et ∂H est la sous-différentielle de H alors, pour tout g ∈ ∂H, pour tout d ∈ Aα : 1 T d Kd + d T Kα + d T g 2 1 = dT Kd + dT (Kα + g) 2 GαCSvm (α + d) − GαCSvm (α) ≥ Si l’on note Γα = {Kα + g|g ∈ ∆α } la sous-différentielle de GαCSvm en α, à l’optimum α∗ de Gα , nous avons 0 ∈ Γα∗ et donc, pour tout d ∈ Aα : 1 T d Kd + p pour tout p ∈ Γα 2 1 ≥ dT Kd 2 1 ≥ λmin (K ) kdk2 2 GαCSvm (α∗ + d) − GαCSvm (α∗ ) ≥ Choisir un N assez grand de telle sorte que GCSvm (wσ ) − GCSvm (w∗ ) ≤ ε avec une grande probabilité, suffit à conclure que kwσ − w∗ k < 2λmin (K )−1 ε. 7.4 Résoudre nSvm Dans cette section, nous proposons deux méthodes de résolution pour le problème nSvm : une optimisation de type quasi-Newton et une relaxation convexe de la perte non convexe `ˆ . Afin de résoudre en pratique le problème d’apprentissage nSvm, nous avons recours à une procédure de minimisation basée sur la méthode Bfgs quasi-Newton dans le primal, rapidement évoquée dans le Chapitre 6. Il suffit donc de remplacer la fonction de perte hinge par la fonction de type Hüber deux fois différentiable dans la fonction objectif nSvm, pour obtenir ainsi un problème de minimisation dont la fonction objectif est dérivable, pour lequel il est plus aisé de trouver un minimum local. Une seconde stratégie envisageable pour la minimisation de la fonctionnelle de coût (7.7) serait de se ramener à une procédure concave-convexe (Cccp) comme cela a pu être proposé par Collobert et coll. [2006]. La perte rampe introduite dans ce travail pour les Svm transductives est également non convexe, et ressemble à la perte modifiée que nous utilisons dans nSvm. 7.4. Résoudre nSvm 121 6 Cvx-nSvm nSvm 5 4 3 2 1 0 -1 -2 -3 -2 -1 0 1 2 3 γ Fig. 7.4 – `ˆ +1 (γ) pour (η + , η − ) = (0.20, 0.20) et sa relaxation convexe `˜ +1 . Par conséquent, comme Collobert and al. le suggèrent, le recours à un algorithme de type Cccp pourrait s’avérer être une stratégie intéressante pour le passage à l’échelle de nSvm. Revenons à notre méthode d’optimisation. Parce que la perte utilisée ici dans la fonction objectif est non convexe, trouver le minimum global de cette fonction est un problème difficile ; une stratégie pour éviter l’obtention d’une solution locale non satisfaisante du problème (7.7) est de lancer plusieurs fois l’optimisation à partir d’initialisations différentes et sélectionner la solution conduisant à une valeur minimale de la fonction objectif. Toutefois, dans les simulations effectuées, nous avons choisi comme point de départ le vecteur w = 0 avec des résultats acceptables. Afin d’éviter l’instabilité numérique provoquée par la nature non convexe de la fonction objectif, nous proposons par ailleurs une relaxation convexe du problème d’apprentissage, ce qui nous permet d’obtenir un nouveau problème nettement plus facile à minimiser. Nous introduisons alors `˜ , une majoration convexe de `ˆ (voir Figure 7.4) définie, pour un vecteur de bruit σ de taux (η + , η − ), un hyperplan w et un exemple (xi , yi ), comme xi ,σi yi x ,σ y x ,σ y ˜ γw `( , σi yi ) = Kη max (1 − η −σi yi )`(γwi i i ), −η σi yi `(−γwi i i ) (7.13) La nouvelle version convexe de nSvm, que nous appellerons Cvx-nSvm, est alors définie comme suit : 1 C min hw, wi + n w,b 2 n ˜ γw ∑ `( xi ,σi yi , σi yi ). (7.14) i =1 Comme pour nSvm, nous avons recours en pratique à la Huber-loss, deux fois différentiable, pour remplacer la perte hinge dans l’expression de la fonction objectif de Cvx-nSvm afin de pouvoir mettre en oeuvre la résolution par Quasi-Newton. Théoriquement, la justification de l’utilisation de `˜ repose sur l’hypothèse (non vérifiée autrement qu’expérimentalement) que les solutions de nSvm et Cvx-nSvm sont proches l’une de l’autre. Il semblerait, d’après nos simulations que Cvx-nSvm conserve une partie Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 122 10 10 5 5 0 0 -5 -5 -10 0 2 4 6 8 10 -10 0 10 10 5 5 0 0 -5 -5 -10 0 2 4 6 8 10 -10 0 2 4 6 8 10 2 4 6 8 10 Fig. 7.5 – Expériences sur un échantillon synthétique linéairement séparable, sans bruit (en haut à gauche) et altéré par un bruit Cccn de taux (5, 5), (10, 10) et (20, 20) (en haut à droite, en bas à gauche et en en bas à droite). Le classifieur calculé par nSvm (resp. CSvm) est représenté en trait gras (resp. fin). nSvm produit, pour tous ces problèmes, un classifieur avec une erreur de généralisation faible tandis que CSvm est incapable d’apprendre un classifieur correct dès que le bruit dépasse (10, 10) : l’hyperplan séparateur calculé par nSvm passe à travers le cluster du haut, qui est en effet la surface de décision réelle, alors que celui produit par CSvm favorise la ’fausse’ marge maximale. des propriétés de tolérance au bruit de classification de nSvm, notamment sur l’échantillon issu d’une distribution double-marge. 7.5 Simulations Afin d’illustrer la validité théorique de nos approches, nous avons produit trois ensembles d’expériences effectuées sur des problèmes synthétiques et des problèmes Uci. Pour tous ces protocoles, l’algorithme aura accès aux taux de bruit théoriques altérant les données (nous verrons comment il est possible de les évaluer empiriquement dans le Chapitre 8). 7.5.1 Données Synthétiques Nous fournissons d’abord les résultats de simulations numériques effectuées sur un problème synthétique linéairement séparable. Ce problème, choisi pour mettre en évidence les failles de CSvm sur des données soumises à un bruit de classification, est une implémentation des distributions à double-marge présentées dans le Chapitre 6 : l’échantillon considéré contient 400 exemples divisés en deux clusters séparés par une grande 7.5. Simulations marge, alors que l’hyperplan utilisé pour l’étiquetage des données passe au travers de l’un des clusters (voir Figure 7.5). Les expériences ont été conduites pour des niveaux de bruit uniforme (c’est-à-dire un processus Cccn tel que η + = η − ) variant de 0 à 0.20. A priori, le bruit uniforme est un cadre plus restrictif, dans lequel le principe de minimisation du risque empirique est encore valide, et qui paraît donc plus facile à gérer pour CSvm. Évidemment, lorsque le taux de bruit est nul, les deux algorithmes (CSvm et nSvm) produisent exactement la même solution, avec une erreur de généralisation quasi nulle. Dans ce chapitre, nous considérons que l’algorithme a accès aux taux de bruit réel sur les données. Il s’agit d’une hypothèse forte, que nous nous efforcerons de lever dans le dernier chapitre du manuscrit en ayant recours à une méthode d’évaluation de η + et η − . Pour chaque taux de bruit, nous avons testé 25 valeurs (à partir de 0.0025 jusqu’à 800000 avec une progression géométrique) pour le paramètre de régularisation C de CSvm et 5 valeurs (de 0.0025 à 25) pour notre algorithme nSvm. Le paramètre h de la perte hinge approchée (de type hüber) a été fixé arbitrairement à 0.1. L’optimisation de nSvm a été faîte sans redémarrage, la solution retournée par l’algorithme peut donc correspondre à un minimum local (peut-être mauvais) de (7.7). La précision (l’erreur de généralisation) est estimée sur un échantillon de test généré selon la même distribution et composé de 400 exemples. Si le taux de bruit uniforme est inférieur à 0.10, nous constatons qu’il est possible de trouver empiriquement un paramètre C tel que CSvm ait un comportement satisfaisant, c’est à dire produise un classifieur proche du classifieur optimal dans le contexte non bruité. Mais, dès l’instant où le niveau de bruit dépasse cette limite, pour toutes les valeurs de C ayant été testées, l’algorithme favorise des hyperplans peu performants, avec une erreur de généralisation supérieure à 20 pour cent. Ces classifieurs correspondent à des hyperplans séparant les deux clusters, et non les deux classes, avec une grande marge. Les expériences similaires effectuées avec l’algorithme nSvm montrent la tolérance au bruit de notre approche. Pour la totalité des taux de bruit testés, nous obtenons, avec un paramètre C fixé à C = 2.5, des classifieurs très satisfaisants du point de vue de l’erreur de généralisation (même si la taille d’échantillon est ici relativement petite) et proches de l’hyperplan cible. Précisons également que l’approximation convexe Cvx-nSvm produit des hyperplans proches de ceux produits par nSvm sur cet échantillon ; la tolérance au bruit de nSvm n’est donc pas affectée par la relaxation convexe que nous avons proposée. Enfin, des tests supplémentaires ont montré que nSvm est également très performant (tout comme sa relaxation convexe Cvx-nSvm) sur des taux de bruit plus élevés (de 0.25 à 0.35), à condition que la taille de l’échantillon soit plus importante (pour information, 1500 dans nos simulations). 7.5.2 Problèmes Uci En complément de ces expériences sur des données synthétiques, nous avons également ajouté des simulations sur 8 jeux de données Uci, pré- 123 Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées 124 traités par Gunnar Rätsch. Ces simulations numériques consistent, comme dans le Chapitre 5, à ajouter un bruit Cccn (avec des bruits allant de 0 à 0.40) aux données, et ainsi apprendre sur les données bruitées avec CSvm, Cvx-nSvm et nSvm. Toutes les expériences ont été ici effectuées en utilisant un noyau linéaire (donc sans plongement des données), afin de mettre l’accent sur les difficultés qu’a CSvm pour gérer le bruit de classification sans utilisation de noyaux universels. Plusieurs valeurs (de 0.005 à 1000) pour le paramètre C ont été testées, pour chaque problème et niveau de bruit, nous avons choisi la valeur qui minimise l’erreur de généralisation de Csvm. Pour mette en lumière la tolérance au bruit de nSvm, nous avons recherché, parmi toutes les valeurs testées, le paramètre minimisant l’erreur de généralisation sur chaque problème non bruité et nous l’avons conservé pour les expériences effectuées sur le jeu de données bruitées avec nSvm et Cvx-nSvm. Les résultats sont disponibles dans la Table 7.4, qui résume les taux d’erreur et les écarts types calculés sur chacun des problèmes considérés. Après une analyse rapide des résultats, il apparaît que, même si CSvm se comporte de manière satisfaisante sur certains problèmes, tout spécialement lorsque η + et η − sont proches l’un de l’autre, nSvm est régulièrement plus performant. Les résultats sont particulièrement convaincants lorsque un bruit important affecte les exemples négatifs tandis que les exemples positifs restent inaltérés. L’objectif de départ, prouver la stabilité pratique de notre algorithme nSvm, paraît ainsi rempli : les performances de nSvm sont en définitive, même sous des taux de bruit relativement élevés, assez proches des performances de Csvm sur les échantillons initiaux, tout en conservant un écart type assez faible. Pour ce qui est de la relaxation convexe Cvx-nSvm, même si ses performances sont moyennes sur quelques problèmes (image pour l’exemple), les résultats obtenus sont les jeux de données Uci sont généralement assez proches des précisions calculées par nSvm. Ainsi, la relaxation convexe semble ne pas trop affecter les propriétés de tolérance au bruit de nSvm. De plus, elle bat quasi systématiquement les Svm à marge douce classiques. En conclusion, si nous voulons conserver une fonction objectif convexe pour des raisons algorithmiques, Cvx-nSvm est une alternative intéressante à nSvm. 7.6 Conclusion Dans ce chapitre, nous avons proposé une alternative efficace aux Svm à marge douce pour la résolution de problèmes altérés par des bruits de classification Cn et Cccn. Ce nouveau programme d’optimisation, que nous avons appelé nSvm, se base sur le programme standard Csvm. Il consiste à modifier la fonction objectif de ce dernier en utilisant un estimateur (non convexe) des variables d’écart du problème non bruité. Une analyse théorique appuie les propriétés de tolérance au bruit de notre algorithme et montre que la distance entre la solution optimale de nSvm et le classifieur optimal peut être controlée. Parce que trouver le minimum glo- 7.6. Conclusion (η + , η − ) (0.0, 0.0) (0.0, 0.2) (0.0, 0.4) (0.2, 0.0) (0.2, 0.4) (0.4, 0) (0.4, 0.2) (η + , η − ) (0.0, 0.0) (0.0, 0.2) (0.0, 0.4) (0.2, 0.0) (0.2, 0.4) (0.4, 0.0) (0.4, 0.2) 125 Alg. All CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm Breast-Cancer 27.94 ± 4.86 27.55 ± 5.12 28.13±4.7 28.0 ±4.71 52.01 ± 12.64 28.75±4.57 28.08 ±5.2 28.62 ± 4.68 28.1±4.51 29.0±4.69 41.82 ± 10.33 30.94±5.56 28.79± 5.65 28.64 ± 4.59 28.92±4.76 29.01±5.06 28.65 ± 4.61 30.58±5.91 29.39±6.23 Alg. CSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm CSvm nSvm Cvx-nSvm Image 15.17 ± 0.93 20.98 ± 2.75 15.98±1.35 16.04± 2.69 27.24 ± 1.22 17.57±3.72 17.41 ±4.2 18.02 ± 1.13 16.38±5.7 18.72 ±4.43 27.46 ± 0.98 18.68±8.8 24.51±4.85 40.05 ± 4.69 18.75±4.58 20.11 ± 4.02 33.44 ± 6.34 22.17±8.78 24.05±3.96 Diabetis 23.3 ± 1.59 25.18 ± 2.08 23.69±1.74 23.67± 1.83 44.74 ± 1.81 24.02±1.79 24.18±2.03 25.0 ± 2.37 23.63±1.64 23.95±2.22 33.83 ± 9.93 26.04±2.96 25.87±2.62 33.93 ± 2.93 24.1±1.91 26.26 ± 4.29 33.49 ± 3.56 26.29±2.8 26.1 ± 3.18 Splice 16.11 ± 0.56 19.2 ± 1.02 17.1±0.71 17.24 ±0.88 29.64 ± 2.14 18.71 ±0.68 18.62±0.78 18.24 ± 1.1 16.93±0.66 16.96±0.68 28.08 ± 2.17 23.67±1.73 22.18±1.36 28.3 ± 2.14 18.08±0.91 19.03 ±0.85 27.84 ± 2.42 23.33±2.08 22.23±1.87 German 24.03 ± 2.24 25.32 ± 2.65 24.67±2.04 24.51±2.19 44.77 ± 7.81 26.06±2.47 25.66±2.54 27.93 ± 3.12 24.4±2.31 24.74±2.9 37.39 ± 6.39 28.32±3.14 28.59±2.77 29.82 ± 1.95 25.36±2.4 28.01±3.05 29.82 ± 1.95 28.8 ±2.96 28.17±2.68 Thyroid 9.97 ± 2.55 10.27 ± 2.86 10.63±3.1 10.89± 2.67 27.32 ± 11.9 12.21±4.19 12.25 ± 3.84 14.75 ± 3.99 15.12±5.5 15.07± 4.76 23.59 ± 16.9 20.09±8.47 21.49±7.75 21.09 ± 5.81 17.24±6.76 18.19± 6.67 21.31 ± 6.12 21.84±8.87 22.53±7.37 Heart 15.31 ± 3.17 18.11 ± 4.02 16.19±3.78 17.22±4.12 30.1 ± 6.48 17.68±3.88 20.09±7.17 18.78 ± 3.9 16.63±4.01 16.24±3.58 29.97 ± 8.1 20.73±5.27 26.43±12.31 27.97 ± 6.42 17.18±3.75 22.86± 8.44 26.96 ± 7.06 21.66 ±7.08 25.39± 10.31 Titanic 22.65 ± 1.1 22.57 ± 0.33 22.89±1.78 22.79± 1.5 48.77 ± 20.29 23.04±1.97 24.85 ±8.93 24.07 ± 3.55 22.82±1.46 23.45±2.88 33.97 ± 17.98 26.36±8.17 25.94±7.85 29.58 ± 4.3 23.82±3.18 25.26±4.36 27.59 ± 4.84 24.66±3.78 26.18±4.6 Tab. 7.4 – Résultats des simulations sur les jeux de données Uci Breast-Cancer, Diabetis, Flare-Solar, German, Heart, Image, Splice, Thyroid and Titanic altérés par un bruit Cccn obtenus avec les algorithmes CSvm, nSvm et Cvx-Svm. 126 Chapitre 7. nSvm, ou l’Apprentissage de CSvm sur des Données Bruitées bal d’une fonction non convexe est en général un problème difficile (même si les solutions que nous obtenons lors de la résolution nSvm sont tout à fait satisfaisantes), nous fournissons une approximation convexe, appelée Cvx-nSvm. Des simulations numériques sur un échantillon d’apprentissage piégeux pour CSvm ainsi que sur 8 jeux de données Uci montrent la bonne tolérance au bruit de notre approche, y compris sur des données structurellement difficiles ou très bruitées. Malheureusement, il est très difficile d’obtenir des assurances théoriques sur la convergence de l’algorithme ainsi que sur sa complexité (en échantillonnage et en temps), que ça soit dans le cas d’une résolution via une méthode de type quasi-Newton, ou même par le biais de la relaxation convexe (sur laquelle nous n’avons effectué aucune analyse théorique). La prochaine étape consiste donc à proposer une méthode de résolution efficace (au sens de possédant une complexité en temps que l’on est capable de ’borner’) pour le problème nSvm. 8 Un Algorithme à Plans Sécants pour la Résolution de nSvm Sommaire 8.1 8.2 8.3 8.4 8.5 8.6 Description Haut Niveau de l’Approche L’Algorithme Scpa . . . . . . . . . . . . . . . Analyse de la Convergence de Scpa . . . Simulations . . . . . . . . . . . . . . . . . . . Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.5.1 Simulations Semi-Supervisées Asymétriques . . . . . . 8.5.2 Application Pratique au Jeu de Données Images Corel Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 129 130 134 137 137 138 141 Dans le chapitre précédent, nous avons proposé un nouveau programme quadratique pour apprendre des classifieurs linéaires à grande marge sur des données bruitées par un processus Cccn. Les méthodes d’optimisation quasi-Newton, si elles offrent des résultats tout à fait convenables en pratique ne permettent pas d’obtenir des bornes de convergence pour l’optimisation. Or, pour les CSvm classiques, les algorithmes à plans sécants (introduits au Chapitre 6) ont l’avantage de posséder ce genre de caractéristiques. Cette famille de méthode pourrait être aisément adaptée à la résolution du programme convexe Cvx-Svm. Néanmoins, les simulations effectuées à l’aide de cet algorithme dans le Chapitre 7 ne s’étaient avérées que modérément convaincantes et nous préférons nous concentrer sur la résolution du problème nSvm original. Nous proposons donc un algorithme à plans sécants pour la minimisation de nSvm. La principale difficulté ici réside dans la non convexité du programme nSvm : La convergence de l’algorithme à plans sécants est-elle conservée ? Nous répondons positivement à cette question dans ce chapitre, organisé de la manière suivante : – Dans une première section, nous explicitons, sans rentrer dans les détails, notre approche pour la résolution de nSvm. 127 Chapitre 8. Un Algorithme à Plans Sécants pour la Résolution de nSvm 128 – Ensuite, nous détaillons notre algorithme, Scpa pour Statistical CutingPlane Algorithm, basé sur une procédure à plans sécants classique. Nous introduisons alors le théorème qui établit que la convergence de Scpa est polynomiale. – La section suivante est dévolue à la preuve de ce théorème. Elle repose, comme plusieurs autres dans ce mémoire, sur la régularité du processus de bruit ainsi que sur des arguments de Vc-dimension. – Enfin des simulations viennent appuyer notre approche, à la fois sur des jeux de données Uci et sur des ensembles d’apprentissage synthétiques. Nous essayons également de répondre au problème de l’estimation des taux de bruit. En effet, si nous supposions jusqu’ici que les taux de bruit étaient connus, nous appliquons ici l’heuristique proposée dans le Chapitre 1 pour les évaluer dans le cas général. Les travaux abordés dans ce chapitre ont été publiés dans Stempfel et Ralaivola [2009a]. 8.1 Description Haut Niveau de l’Approche Les algorithmes standard d’optimisation non contrainte, tels que les méthodes Quasi-Newton, peuvent être mis en oeuvre pour la résolution de nSvm et la recherche d’un minimum local de G nSvm (cf. (7.7)). Plutôt que de prendre ce parti, nous préférons nous en remettre à une méthode par faisceaux ou bundle method [Joachims, 2006 ; Franc et Sonnenburg, 2007 ; Smola et coll., 2008] basée sur l’usage de plans sécants pour résoudre nSvm, méthode décrite plus haut. Grâce à cette stratégie, nous obtiendrons un algorithme au temps d’exécution et à la complexité d’échantillonnage polynomiaux, ainsi que des garanties sur la qualité du classifieur appris par rapport à l’objectif non bruité GCSvm (cf. (7.11)). Notre approche repose sur l’algorithme proposé par Joachims [2006] pour la minimisation de GCSvm . Nous fournissons ainsi une procédure d’optimisation itérative calculant une fonction objectif convexe qui sera incrémentalement affinée, et pour laquelle l’optimisation produira une séquence de vecteurs w1 , . . . , wt convergeant vers un vecteur proche de celui réalisant le minimum de la fonction objectif GCSvm . Cet objectif convexe est construit selon le terme (pas forcément convexe) de perte de G nSvm en utilisant des plans sécants, dont les propriétés statistiques garantissent théoriquement notre procédure. Parce qu’ils nous fournissent ces assurances, nous appellerons ces plans sécants plans sécants statistiques. L’ingrédient clé permettant la bonne marche de notre algorithme est le fait que, si un échantillon de taille suffisante est disponible, G nSvm ne constitue pas seulement une estimation uniforme de GCSvm à l’ordre 0 mais aussi à l’ordre 1 (i.e. pour l’estimateur de la sous-différentielle), caractéristique très importante puisque les sous-gradients interviennent dans le calcul des plans sécants. 8.2. L’Algorithme Scpa 129 Algorithme 7 : Scpa : Svm à Plans Sécants Statistiques. input S σ = {(xi , σi yi )}in=1 , C > 0, ε0 > 0, η ∈ N output w, ψ t=0 répéter σ , i = 0, . . . , t − 1 wt = argminw 21 hw, wi + Cψ s.t. ψ ≥ haσwi , wi + bw i σ Calculer awt selon (8.2). σ selon (8.3). Calculer bw t nSvm (wt ) − Gt (wt ) < 2ε jusqu’à G 8.2 L’Algorithme Scpa Nous détaillons à présent notre approche pour l’apprentissage d’un hyperplan séparateur à large marge à partir de données bruitées. Rappelons tout d’abord que la fonctionnelle L est définie comme (rappelons que x,y γw = yhw, xi) 1 n ˆ xi ,σi yi L(w) = ∑ `( γw , σi γi ). (8.1) n i =1 L est le terme de perte G nSvm (cf. équation (7.7)) et G nSvm (w) = 1 hw, wi + CL(w). 2 Selon la description haut-niveau donnée précédemment, L est utilisée pour le calcul des plans sécants, qui repose sur ses sous-gradients. En w, nous choisissons, comme sous-gradient de L : aσw = − Kη n n ∑ (1 − η −σi yi )π i − η σi yi π i σi yi xi , x ,σ ,y x ,σi ,yi avec π = 1 si γwi i i < 1 et 0 sinon et π i = 1 si γwi ainsi que, pour calculer le plan sécant : σ bw = Kη n n ∑ (8.2) i =1 > −1 et 0 sinon, (1 − η −σi yi )`(σi γi ) − η σi yi `(−σi γi ) − haσw , wi (8.3) i =1 La fonction objectif convexe mentionnée dans la description haut niveau est définie, étant donné une série de t plans sécants, comme Lt (w) = max (0, hawi , wi + bwi ) . i Nous définissons alors la fonction objective réduite Gt définie selon Lt : Gt (w) = 1 hw, wi + CLt (w) 2 (8.4) Nous pouvons alors introduire l’Algorithme 7 et le théorème qui donne ses propriétés de convergence. Chapitre 8. Un Algorithme à Plans Sécants pour la Résolution de nSvm 130 Théorème 8.1 Pour toute distribution D sur X × Y , ∀η ∈ N , ∀δ ∈]0, 1], ∀C ∈ R+ , ∀ε ∈ R+ , pour tout échantillon S de n exemples tirés selon D et pour tout vecteur de bruit σ = [σ1 , . . . , σn ] (de taux (η + ,η − )), si √ 32Kη2 L2η (1 + 2 2CR)2 M 4 n> ln , ε 02 δ ε ε 0 avec ε = min 12 , 24C et M = (20d + 2) ln 16R2 CL2η Kη2 ε0 + ln 18 , δ alors, avec probabilité au moins 1 − δ, après au plus 16C 512CR3 t = max , ε ε2 itérations de l’Algorithme 7, l’inégalité suivante est vraie CSvm ∗ (w ) − GCSvm (wt ) < ε G où w∗ (resp. wt ) est le minimum de GCSvm (resp. Gt ). Selon ce théorème, si la taille de l’échantillon est suffisante, alors, avec grande probabilité, Scpa produit un classifieur arbitrairement proche du classifieur optimal de CSvm non bruitée après un nombre polynomial d’itérations. Avant de détailler la preuve de convergence de l’algorithme, il faut remarquer que lorsque le bruit (η + , η − ) est nul alors l’Algorithme 7 revient à l’algorithme plans sécants générique pour CSvm proposé par Joachims [2006]. 8.3 Analyse de la Convergence de Scpa La preuve, qui reprend en partie la structure de la démonstration de convergence de Ocas (Franc et Sonnenburg [2007]), repose sur la proximité entre les sous-différentielles des fonctions objectifs de CSvm et nSvm et donc entre les plans sécants calculés sur celles-ci. En fait, l’approximation linéaire par morceaux Gt est, avec grande probabilité, proche de la fonction objectif non bruitée GCSvm à condition que le nombre de plans sécants et la taille de l’échantillon soient suffisamment grands. Ainsi, le lemme suivant établit que : – G nSvm non biaisé et uniforme de GCSvm σest un estimateur σ CSvm en w0 – E σ h a w 0 , w i + bw 0 est un plan sécant de G – Si un échantillon suffisamment grand est disponible alors G nSvm , aσw , et σ sont proches de leurs espérances. bw Lemme 8.1 Pour toute distribution D sur X × Y , ∀η ∈ N , ∀δ ∈]0, 1], ∀ε ∈ R+ , pour tout échantillon aléatoire S de n exemples tirés selon D , pour tout vecteur de bruit σ = [σ1 , . . . , σn ] (de taux (η + ,η − )), si n> 32Kη2 L2η (1 + 2WR)2 M alors, avec probabilité au moins 1 − δ, ε 02 ln 4 δ 8.3. Analyse de la Convergence de Scpa 131 x y O Fig. 8.1 – Avec grande probabilité , ce cas de figure ne peut se produire au cours de l’exécution de Scpa. Ici, le plan sécant calculé (en rouge) sur la fonction objectif G nSvm (en noir) est très éloigné du cutting plane de GCSvm (en bleu) calculé au même point. Or, avec grande probabilité, nous prouvons que un plan sécant calculé dur G nSvm est presque un plan sécant de CSvm. (a) Eσ G nSvm (w) = GCSvm (w), ∀w, kwk ≤ W (b) Eσ aσw est un sous-gradient de GCSvm en w σ , ∀ w, w ≤ W et GCSvm (w) = Eσ [haσw , wi + bw ] k k nSvm ε CSvm (c) G (w) − G (w) < , ∀w, kwk ≤ W 4 σ 0 σ σ σ < 3ε0 , ∀ w, w0 , (d) |Eσ [haw , w i + bw ] − haw , w0 i − bw | 0 avec M et ε définis dans le Théorème 8.1, et W ∈ R+ . kwk , kw0 k ≤ W Démonstration. Nous ne détaillerons pas la preuve de ce lemme ici afin de faciliter la lecture. Celle-ci est disponible en annexe. Étant donné la non convexité de la fonction objectif sur laquelle nous travaillons, le risque est de calculer un ’mauvais’ plan sécant (c’est-à-dire un plan très différent de l’hyperplan qui aurait été calculé sur CSvm), calcul qui mettrait à mal la suite de l’exécution de l’algorithme (voir Figure 8.1). Le lemme précédent nous assure que ce cas de figure ne peut arriver qu’avec une faible probabilité. Scpa est un algorithme itératif, et sa convergence repose sur la propriété suivante : à chaque étape, l’algorithme progresse vers une solution avec une valeur objectif plus élevée. Concentrons nous maintenant sur les améliorations de l’approximation linéaire par morceaux à chaque itération. D’abord, nous devons étudier les propriétés du critère d’arrêt. Scpa s’ar nSvm rête lorsque G (wt ) − Gt (wt ) < 2ε . Le lemme suivant définit quelques caractéristiques de ce critère d’arrêt. Lemme 8.2 Sous les mêmes hypothèses que dans le Lemme 8.1, les propositions suivantes sont vraies avec probabilité au moins 1 − δ (a) Si GCSvm (wt ) − Gt (wt ) < ε alors la condition d’arrêt est vérifiée. 4 Chapitre 8. Un Algorithme à Plans Sécants pour la Résolution de nSvm 132 (b) Si la condition d’arrêt est vérifiée alors GCSvm (wt ) − Gt (wt ) < 3ε 4. Démonstration. Les preuves sont immédiates. Pour (a) : ε CSvm (wt ) − Gt (wt ) < G 4 ε nSvm ⇒ G (wt ) − Gt (wt ) < + G nSvm (wt ) − GCSvm (wt ) 4 ε ⇒ G nSvm (wt ) − Gt (wt ) < (Lemme 8.1.(c)) 2 Pour (b) : ε nSvm (wt ) − Gt (wt ) < G 2 ε CSvm ⇒ G (wt ) − Gt (wt ) < + G nSvm (wt ) − GCSvm (wt ) 2 3ε CSvm ⇒ G (wt ) − Gt (wt ) < (Lemme 8.1.(c)) 4 En d’autres termes, tant que le critère d’arrêt n’est pas satisfait, la perte linéaire par morceaux estimée sur les données bruitées n’est pas une approximation suffisamment précise de la perte convexe CSvm sur les données non bruitées : ε C |Eσ L(wt ) − Lt (wt )| ≥ . (8.5) 4 Le lemme suivant nous permet d’ôter la valeur absolue. Lemme 8.3 Sous les mêmes hypothèses que dans le Lemme 8.1, les inégalités suivantes sont vraies avec grande probabilité : Si la condition d’arrêt est violée, alors Eσ L ( w t ) − L t ( w t ) > ε . 4C Démonstration. Par le Lemme 8.2, |Eσ L(wt ) − Lt (wt )| > Eσ L ( w t ) − L t ( w t ) < − ε 4C . Ainsi, ε 4C ε + L t ( w t ) − Eσ L t ( w t ) 4C ε ⇒ Eσ L ( w t ) − Eσ L t ( w t ) < − + 3ε0 (Lemme 8.1.(d)) 4C ⇒ Eσ L ( w t ) − Eσ L t ( w t ) < 0 ⇒ Eσ L ( w t ) − Eσ L t ( w t ) < − Pour conclure la preuve, il suffit de faire appel au Lemme 8.1.(b). Puisque Eσ Lt (wt ) est un maximum sur un ensemble constitué de plans sécants de la fonction convexe Eσ L(wt ), Eσ Lt (wt ) est un sous estimateur de Eσ L(wt ), ce qui est en contradiction avec la dernière inégalité. Une première étape pour l’estimation des progrès effectués à chaque itération consiste à évaluer à quel point un nouveau plan sécant viole les contraintes imposées par les autres plans sécants. 8.3. Analyse de la Convergence de Scpa Lemme 8.4 133 Sous les mêmes hypothèses que celles du Lemme 8.1, si l’équation (8.5) est vérifiée alors ε σ haσwt , wt i + bw . (8.6) − Lt (wt ) ≥ t 8C Démonstration. La preuve repose sur le fait que, par définition, ∀t, σ Eσ haσwt , wt i + bw = Eσ L ( w t ). t |Eσ L(wt ) − Lt (wt )| ≥ ε 4C (Lemme 8.3) ε 4C ⇒ Eσ L ( w t ) − L t ( w t ) ≥ ε σ ⇒ Eσ haσwt , wt i + bw − Lt (wt ) ≥ t 4C ε σ σ ⇒ h a w t , w t i + bw t − L t ≥ , 8C (Lemme 8.1) ce qui met fin à la preuve. Nous avons ainsi une borne inférieure disant à quel point chaque nouveau plan sécant ajouté se situe au dessus de Lt en wt . Il reste maintenant à borner le nombre d’itérations nécessaires pour atteindre une certaine précision. A cette fin, nous nous en remettons à un lemme de Franc et Sonnenburg [2007], qui fait usage des progrès effectués à chaque étape de l’algorithme. Lemme 8.5 (Franc et Sonnenburg [2007]) Soit hawt , wi + bwt = 0 le nouveau plan sécant satisfaisant l’inégalité h w t , a w t i + bw t − L t ( w t ) ≥ ε . C Alors, l’amélioration de la fonction objectif réduite Gt peut être minorée par Gt+1 (wt+1 ) − Gt (wt ) ≥ min ε ε2 , 2 3 2 8C R . Ainsi, le Lemme 8.5 peut être appliqué directement à l’équation (8.6). Cela implique, sous les hypothèses du Lemme 8.1, qu’à chaque étape le progrès de minw Gt (w) est au minimum de ε ε2 min , . 16 512C2 R3 Initialement, le seul plan sécant est l’hyperplan 0, et donc l’optimum du problème réduit est G0 (w0 ) = 0. Finalement, sa valeur ne peut être supérieure à Gt (0) = C. En conclusion, la somme des améliorations ne peut excéder C, et le nombre maximal d’itérations tmax est borné supérieurement par : tmax ≤ max 16C 512CR3 , ε ε2 . (8.7) Chapitre 8. Un Algorithme à Plans Sécants pour la Résolution de nSvm 134 Lemme 8.6 Sous les mêmes hypothèses que dans le Lemme 8.1, Scpa s’arrête après au plus tmax itérations avec grande probabilité, et l’inégalité suivante est vérifiée : 3ε CSvm (wt ) − Gt (wt ) < . G 4 Démonstration. Immédiate à partir du Lemme 8.2.(a) et (8.7). La dernière étape de cette preuve consiste à prouver le Théorème 8.1, et donc à montrer que le classifieur produit par Scpa est presque optimal sur les données non bruitées. Preuve du Théorème 8.1 Soit wt = argminw Gt (w) l’optimum de la fonction linéaire par morceau estimée et w̃t = argminw Eσ Gt (w) l’optimum de son espérance. D’après le Lemme 8.6, lorsque l’algorithme s’arrête, on aura : 3ε CSvm (wt ) − Gt (wt ) < G 4 3ε CSvm ⇒G (wt ) − Gt (wt ) < 4 3ε ⇒ GCSvm (wt ) − Gt (w̃t ) < 4 3ε CSvm ⇒G (wt ) − Eσ Gt (w̃t ) < + Gt (w̃t ) − Eσ Gt (w̃t ) 4 3ε ⇒ GCSvm (wt ) − Eσ Gt (w̃t ) < (Lemme 8.1.(d)) + 3ε0 4 ⇒ GCSvm (wt ) − Eσ Gt (w̃t ) < ε ⇒ GCSvm (wt ) − GCSvm (w∗ ) < ε. La dernière ligne provient du fait que EGt est un sous estimateur de GCSvm . Alors, la valeur optimale de EGt est inférieure à l’optimal de GCSvm . Pour conclure la preuve, nous remarquons que nous√avons besoin de considérer uniquement les vecteurs w tels que kwk ≤ 2C. En fait, pour √ 0 0 tout vecteur w avec kw k > 2C, G nSvm (w0 ) > G nSvm (0) et donc w0 n’est pas un optimum de G nSvm . 8.4 Simulations Afin de mettre en valeur le bien fondé de notre approche, nous avons procédé à un ensemble d’expériences sur des problèmes Uci. Dans un premier temps, la probabilité de mauvais étiquetage est connue de l’algorithme. Nous proposerons ensuite une méthode pour évaluer les niveaux de bruit lorsqu’ils sont inconnus. Un premier ensemble d’expériences a été réalisé sur 8 des problèmes Uci, prétraités et rendus disponibles par Gunnar Rätsch. Ces simulations numériques consistent en l’ajout d’un bruit conditionnel par classe (avec des taux allant de 0 à 0.40) aux données, puis en l’apprentissage d’un classifieur linéaire (on considère donc une nouvelle fois ici les Svm à noyau 8.4. Simulations 135 linéaire) sur les jeux de données bruités avec CSvm et Scpa. Plusieurs valeurs (de 0.005 à 1000) pour le paramètre C ont été testées. Pour chaque problème et pour chaque niveau de bruit, et dans le but de mettre en valeur la tolérance de Scpa, nous avons choisi : (a) pour Csvm, la valeur qui minimise l’erreur de généralisation sur toutes les valeurs testées, (b) pour Scpa, le paramètre qui minimise l’erreur de généralisation de Csvm sur les données non bruitées. Les résultats sont récapitulés dans le Tableau 8.4. Celui-ci montre que Scpa offre de meilleures performances sur les données bruitées que CSvm de manière régulière. C’est particulièrement clair lorsque les bruits par classe sont déséquilibrés, spécialement sur les problèmes Diabetis et German. Il semblerait donc que les estimations de plans sécants faites tout au long de l’optimisation sont assez précises, même si les données sont présentes en nombre réduit, pour permettre la construction d’une approximation linéaire par morceaux convenable. Il est difficile de mettre en oeuvre une comparaison entre les résultats obtenus dans ce tableau et ceux obtenus sur les mêmes jeux de données dans le Chapitre 7 (résolution par méthode Quasi-Newton). D’abord, nous avions été contraints à avoir recours à une approximation deux fois dérivable de la perte hinge (huberloss). Ainsi, le problème résolu n’est donc pas exactement le même dans les deux chapitres. Ensuite, les conditions d’arrêt des algorithmes par cutting-planes et par Quasi-Newton ne sont pas identiques. Etant donné que Scpa converge plus rapidement, la précision choisie pour la condition d’arrêt est plus importante. Ces deux arguments peuvent expliquer les meilleures performances de Scpa ainsi que les taux d’erreurs variables de CSvm selon que l’on utilise la résolution par plans sécants, ou par Quasi-Newton. Cette propriété semble en effet vraie en pratique. Un ensemble de simulations sur deux jeux de données synthétiques : le problème à doublemarge décrit dans les simulations du Chapitre 7 avec un noyau linéaire ainsi qu’un problème polynomial (i.e un problème séparable par un polynôme de degré 3) avec un noyau polynomial (noyau, nous le rappelons non universel) Pour chaque problème, 3 ensembles d’apprentissage et 3 ensembles de tests de taille 400, 1500 and 10000 ont été générés, tandis que 7 niveaux de bruit de classification Cccn ont été ajoutés. Ici, nous nous concentrons sur 3 mesures de qualité pour l’estimation : d’abord, le taux d’erreur du classifieur appris par Scpa. Ensuite, nous comparons les estimations aσ des pentes bruitées de 10000 plans sécants aléatoires w1 . . . w10000 à leur pente théorique a calculée sur les données bruitées (nous utiliserons alors comme mesure de similarité le cosinus entre les pentes). En d’autres termes S= 1 10000 cos awi , aσwi . ∑ 10000 i=1 Enfin, nous calculons la précision T de l’estimateur de la perte L par rapport au risque réel R : 1 10000 | L(wi ) − Lt (wi )| T= 1− . 10000 i∑ L ( wi ) =1 136 Chapitre 8. Un Algorithme à Plans Sécants pour la Résolution de nSvm (η + , η − ) (0.0, 0.0) (0.0, 0.2) (0.0, 0.4) (0.2, 0.0) (0.2, 0.2) (0.2, 0.4) (0.4, 0.0) (0.4, 0.2) (η + , η − ) (0.0, 0.0) (0.0, 0.2) (0.0, 0.4) (0.2, 0.0) (0.2, 0.2) (0.2, 0.4) (0.4, 0) (0.4, 0.2) Alg. All CSvm Scpa CSvm Scpa CSvm Scpa CSvm Scpa CSvm Scpa CSvm Scpa CSvm Scpa B.-Cancer 26.26 ± 4.41 29.35 ± 4.19 26.74 ± 4.73 40.62 ± 6.61 27.21 ± 4.57 25.95 ± 4.47 26.75 ± 4.55 27.13 ± 4.24 28.06 ± 5.02 37.55 ± 8.13 29.35 ± 5.71 26.36 ± 4.73 26.83 ± 4.63 26.44 ± 4.67 29.21 ± 4.91 Diabetis 23.46 ± 1.67 25.43 ± 2.22 23.75 ± 1.74 35.47 ± 3.69 24.21 ± 1.96 25.35 ± 2.61 23.6 ± 1.67 24.53 ± 1.94 24.51 ± 2.01 32.14 ± 3.86 26.47 ± 2.67 27.39 ± 2.07 24.3 ± 1.82 26.93 ± 2.21 26.34 ± 2.34 German 24.12 ± 2.24 27.72 ± 2.59 24.63 ± 2.17 40.2 ± 3.09 25.47 ± 2.37 25.2 ± 2.25 24.34 ± 2.17 25.71 ± 2.88 25.53 ± 2.28 35.84 ± 3.84 27.97 ± 2.65 27.12 ± 2.03 24.95 ± 2.36 26.56 ± 2.55 27.13 ± 2.39 Alg. All CSvm Scpa CSvm Scpa CSvm Scpa CSvm Scpa CSvm Scpa CSvm Scpa CSvm Scpa Image 15.34 ± 0.95 22.2 ± 2.65 15.56 ± 0.9 26.8 ± 0.9 17.16 ± 2.55 18.77 ± 1.66 16.25 ± 1.21 20.82 ± 3.91 16.5 ± 1.65 27.32 ± 0.84 16.5 ± 1.65 38.35 ± 1.49 16.37 ± 1.35 36.34 ± 7.42 18.48 ± 3.16 Splice 16.7 ± 0.58 19.42 ± 1.13 17.48 ± 0.67 42.4 ± 12.3 18.67 ± 0.87 18.89 ± 0.79 17.45 ± 0.66 19.08 ± 1.01 18.67 ± 0.71 29.39 ± 2.6 18.67 ± 0.71 29.62 ± 2.31 18.48 ± 0.65 29.25 ± 2.96 23.06 ± 1.61 Thyroid 10.2 ± 2.55 10.35 ± 2.71 10.47 ± 2.87 30.75 ± 2.04 11.59 ± 3.59 14.95 ± 3.8 12.53 ± 3.57 15.12 ± 4.33 13.87 ± 4.43 25.93 ± 19.71 14.35 ± 4.09 21.56 ± 5.4 14.28 ± 4.79 19.91 ± 4.7 17.93 ± 5.2 Heart 15.27 ± 3.21 16.54 ± 3.83 15.93 ± 3.69 20.41 ± 4.03 16.54 ± 3.43 15.69 ± 3.22 15.67 ± 3.52 16.56 ± 3.24 17.19 ± 3.99 19.81 ± 4.37 19.7 ± 4.1 17.36 ± 3.43 16.35 ± 3.78 18.02 ± 4.16 19.81 ± 4.13 Titanic 22.63 ± 1.05 22.8 ± 1.45 23.0 ± 2.06 26.63 ± 15.36 23.16 ± 2.26 22.87 ± 1.21 22.83 ± 1.73 22.94 ± 1.99 23.63 ± 2.86 34.48 ± 17.63 23.07 ± 2.03 25.08 ± 3.63 23.25 ± 2.5 25.55 ± 3.88 24.84 ± 5.82 Tab. 8.1 – Erreur de classification de CSvm et Scpa sur 8 problèmes Uci altérés par du bruit Cccn. Les résultats sont disponibles dans le Tableau 8.2. En conclusion, même avec un échantillon d’apprentissage de petite taille et sous bruit conséquent, les estimations du risque sont proches du risque réel, et les pentes des plans sécants bruités semblent également très précises (presque exactes sous tous les taux de bruit testés avec un échantillon de 1500 exemples). C’est sans surprise que nous remarquerons que agrandir la taille de l’échantillon permet d’améliorer la précision des esti- 8.5. Simulations mateurs, et donc, par voie de conséquences, celle de Scpa. Avec un échantillon de 10000 descriptions, même avec un haut niveau de bruit, l’algorithme apprend presque parfaitement le concept cible et produit alors un classifieur avec une erreur de généralisation négligeable. 8.5 Simulations 8.5.1 Simulations Semi-Supervisées Asymétriques Dans le but d’illustrer les liens (voir Chapitre 1) entre apprentissage semisupervisé et apprentissage supervisé sous bruit de classification, nous avons effectué un ensemble d’expériences sur 5 jeux de données Uci (déjà usités dans nombre de simulations précédentes). Pour ces expériences, Scpa se voit donner accès à uniquement une (parfois petite) portion de données étiquetées (uniquement positivement). Nous considérons ainsi que seulement une fraction ρ+ des exemples positifs de l’échantillon (exemples choisis uniformément parmi les exemples positifs de l’ensemble d’apprentissage) sont initialement étiquetés, tandis que la partie restante de l’échantillon demeure sans classe. Pour nous attaquer à ce type de problèmes d’apprentissage, nous prenons la décision d’étiqueter les données sans classe comme négatives (ainsi, les exemples négatifs de l’échantillon sont composés d’exemples effectivement négatifs, mais également d’exemples positifs mal étiquetés). Notre ensemble d’apprentissage peut en conséquence être considéré comme un échantillon altéré par un bruit de classification Cccn de taux (η + , η − ) = (1 − ρ+ , 0) et peut alors être appris par Scpa. Nous effectuons les simulations sur 100 ensembles d’apprentissage et de tests pour chaque jeu de données (seulement 20 pour splice et image), avec successivement 70, 50, 30 et 10 % de données positives étiquetées. Le paramètre de régularisation C est fixé, de manière totalement arbitraire, pour toutes les simulations à 3000 (valeur permettant d’obtenir une qualité de généralisation correcte sur les 5 jeux de données considérés ici, une validation croisée sérieuse s’avérant coûteuse à mettre en place). L’apprentissage se fait alors sur chaque échantillon d’apprentissage en utilisant un noyau linéaire et notre approche par Scpa. Nous ne supposons plus, dans ces tests que le bruit réel sur les données est connu, et nous faisons appel à la stratégie introduite dans la section 1.4 du Chapitre 1 pour l’estimer. Nous testons alors plusieurs niveaux de bruit, à partir de 0.1 à 0.9, tandis que l’algorithme considérera toujours que le bruit sur les données négatives est nul. La qualité de généralisation du classifieur est évaluée sur les ensembles de test. Les résultats sont disponibles dans la Table 8.5.1 ainsi que sur la Figure 8.5.1. D’abord, il faut remarquer que l’heuristique proposée pour estimer le niveau de bruit produit des résultats tout à fait acceptables en pratique. Dans les faits, le plus souvent, l’algorithme réussit à estimer le niveau de bruit avec une erreur inférieure à 10 %. De plus, l’écart type de l’estimateur est dans la quasi-totalité des cas petit. Même lorsque l’estimation n’est pas vraiment précise (par exemple, sur le jeu de données titanic avec 70 % des 137 138 Chapitre 8. Un Algorithme à Plans Sécants pour la Résolution de nSvm exemples positifs étiquetés), l’algorithme semble conserver ses propriétés de tolérance au bruit. Notons également que, spécialement sur diabetis et titanic, les performances en généralisation ne semblent pas être trop altérées, même lorsque l’ensemble d’exemples positifs est relativement petit. 8.5.2 Application Pratique au Jeu de Données Images Corel Une autre application possible de Scpa est le problème de l’apprentissage multi-instance (voir le Chapitre 7). Pour illustrer notre approche, nous nous intéressons à une question abordée dans Lawrence et Schölkopf [2001], qui consiste à effacer le ciel dans des images. Nous formulons le problème comme une tâche de classification où chaque pixel peut être classifié en tant que ’ciel’ ou ’non ciel’. Une approche classique (mais extrêmement coûteuse en terme de temps pour l’étiquetage) serait de construire un ensemble d’apprentissage contenant des exemples de pixels ’ciel’ et ’non ciel’. Ici, il suffit de dire si une image contient ou non du ciel. Ainsi, nous étiquetons comme positifs la totalité des pixels contenus dans une image ’ciel’, et comme négatifs les pixels appartenant à une image ’nonciel’. En conséquence, tous les exemples négatifs sont effet des pixels ’nonciel’ (il n’y a pas de bruit de classification sur les exemples positifs). Mais, étant donné que certains pixels tirés d’une image ’ciel’ (et donc étiquetés positivement) ne font pas partie du motif ’ciel’ (par exemple les bâtiments, animaux, voitures. . .), une partie de l’échantillon est mal étiquetée, et finalement, nous pouvons considérer une partie des exemples négatifs comme bruités, altérés par un processus Cccn. Nous avons effectué des tests préliminaires de notre approche Scpa sur un jeu de données tiré de Corel Gallery. Dans notre ensemble d’apprentissage, nous avons 20 images ’ciel’ et 18 ’non-ciel’, décrites par 1500 pixels tirés aléatoirement. Chaque pixel est décrit par 51 attributs : ses niveaux rouge, vert, bleu (rgb) et les niveaux rgb de 16 de ses voisins (voir Figure 8.5.2 pour plus de détails). Ainsi, nous obtenons un ensemble d’apprentissage de 57000 instances étiquetées. Nous apprenons alors un classifieur linéaire sur cet échantillon avec notre algorithme et un noyau linéaire. À nouveau, nous estimons les taux de bruit grâce à l’heuristique introduite dans la Section 1.4 : Scpa choisit ici un paramètre η − estimé égal à 0.10. Nous avons ainsi étiqueté 4 images supplémentaires avec le classifieur calculé. Afin d’effacer le ciel, les pixels classifiés positivement sont remplacés par des pixels blancs. Les résultats sont visibles sur la Figure 8.5.2. Pour terminer cette section, remarquons que même si l’échantillon d’apprentissage est altéré par un bruit qui n’est clairement pas uniforme sur les négatifs (un pixel bruité doit être situé, a priori, près d’autres pixels bruités), le comportement de Scpa reste globalement satisfaisant. Afin d’améliorer le rendu des photos produites par notre algorithme, nous post-traitons les pixels classifiés par Scpa. Nous supposons qu’il existe une régularité dans les motifs de type ciel. Si un pixel a au moins 6 de ses voisins (à distance 1) blancs (resp. non blanc), ce pixel devrait être également blanc (resp. non blanc), et nous le remplaçons par un pixel blanc (resp. non blanc) dans l’image. 8.5. Simulations 139 Diabetis 1 0.8 0.6 0.4 0.2 0 0 0.2 0.4 0.6 0.8 1 0.8 1 0.8 1 0.8 1 0.8 1 Image 1 0.8 0.6 0.4 0.2 0 0 0.2 0.4 0.6 Splice 1 0.8 0.6 0.4 0.2 0 0 0.2 0.4 0.6 Thyroid 1 0.8 0.6 0.4 0.2 0 0 0.2 0.4 0.6 Titanic 1 0.8 0.6 0.4 0.2 0 0 0.2 0.4 0.6 Fig. 8.2 – Estimation des taux de bruit ajoutés sur les exemples positifs lors des simulations semi-supervisées asymétriques sur 5 jeux de données Uci . Le taux de bruit réel est représenté en abscisse et l’estimation moyenne en ordonnée. L’écart-type de l’estimation est également représentée sur les dessins. 140 Chapitre 8. Un Algorithme à Plans Sécants pour la Résolution de nSvm Fig. 8.3 – Grille 9x9 explicitant la description d’un pixel sous forme d’un vecteur d’attributs numériques. Un pixel (en l’occurrence rouge) est ainsi représenté par 51 attributs : les 3 niveaux rgb du pixel considéré, et les 3 niveaux rgb de 16 voisins à distance 2,3 et 4, représentés ici noircis. Fig. 8.4 – Application de Scpa à la tâche d’effacement du ciel sur 4 images. Sur la gauche, nous fournissons les images Corel initiales. Au centre se trouvent ces image où seuls les pixels étiquetés négativement par notre algorithme sont affichés. Sur la droite, les photos produites ont été corrigées grâce à la stratégie décrite ci-dessous. 8.6. Conclusion De plus, il semble clair que l’utilisation d’un noyau non linéaire devrait mener à des résultats pratiques de qualité supérieure et rendre ainsi inutile le postprocessing que nous avons proposé. 8.6 Conclusion Dans cette section, nous avons étendu l’analyse du programme nSvm à sa résolution. Parce que trouver le minimum global d’une fonction non convexe est un problème usuellement difficile (même si les méthodes basées sur une descente de gradient produisent des performances tout à fait honnêtes sur nSvm), nous introduisons un algorithme alternatif, appelé Scpa, faisant usage d’un algorithme à plans sécants itératif. Scpa utilise la régularité statistique du modèle de bruit pour calculer une approximation linéaire par morceaux de la fonction objectif non bruitée de CSvm. Une analyse théorique démontre la tolérance au bruit de Scpa et introduit une borne polynomiale sur la vitesse de convergence de l’algorithme. De plus, des simulations Uci mettent en valeur une efficacité pratique, ainsi qu’un faible temps de calcul. Nous nous référons également à une stratégie pour estimer les taux de bruit lorsqu’ils sont indéterminés, qui donne des résultats convaincants. 141 142 Chapitre 8. Un Algorithme à Plans Sécants pour la Résolution de nSvm η+ η− Taille Erreur S T 0 0 0 0.1 0 0 0 0.2 0.2 0.1 0 0.3 0.3 0 0.2 0.4 0.4 0.2 400 1500 10000 400 1500 10000 400 1500 10000 400 1500 10000 400 1500 10000 400 1500 10000 400 1500 10000 0.5 0.1 0.0 2.5 1.0 0.4 12.75 0.3 0.2 0.8 0.8 0.1 16.3 1.1 0.2 15.5 14.7 0.9 20.0 3.7 1.3 1.0 1.0 1.0 0.99 0.99 0.99 0.98 0.99 0.99 0.97 0.97 0.99 0.98 0.97 0.99 0.95 0.99 0.99 0.98 0.94 0.99 1.0 1.0 1.0 0.92 0.93 0.98 0.78 0.81 0.96 0.88 0.97 0.98 0.84 0.87 0.93 0.89 0.92 0.96 0.90 0.94 0.97 η+ η− Taille Scpa Erreur S T 0 0 0.1 0.2 0.2 0.1 0 0.3 0.3 0 0.2 0.4 0.4 0.2 400 1500 10000 400 1500 10000 400 1500 10000 400 1500 10000 400 1500 10000 400 1500 10000 400 1500 10000 2.8 0.9 0.4 11.5 2.1 1.1 7.0 10.1 2.1 10.0 6.7 1.6 13.5 5.1 1.8 28.0 7.9 1.9 16.8 6.2 3.2 1.0 1.0 1.0 0.99 1.0 1.0 0.99 0.99 1.0 0.98 1.0 1.0 0.99 1.0 1.0 0.93 0.99 1.0 0.98 0.98 1.0 1.0 1.0 1.0 0.90 0.97 0.99 0.90 0.91 0.98 0.87 0.96 0.97 0.95 0.96 0.98 0.87 0.90 0.98 0.86 0.84 0.92 Tab. 8.2 – Simulations sur 2 jeux synthétiques (en haut : double marge, en bas : polynomial) altérés par un processus Cccn. Le tableau décrit le taux d’erreur de Scpa et la précision des estimateurs des plans séquents non bruités. 8.6. Conclusion Datasets Diabetis Image Splice Thyroid Titanic 143 ρ+ 0.70 0.50 0.30 0.01 0.70 0.50 0.30 0.10 0.70 0.50 0.30 0.10 0.70 0.50 0.30 0.10 0.70 0.50 0.30 0.10 p+ 0.35 0.35 0.35 0.35 0.57 0.57 0.57 0.57 0.48 0.48 0.48 0.48 0.30 0.30 0.30 0.30 0.32 0.32 0.32 0.32 ρ 0.24 0.17 0.10 0.03 0.40 0.29 0.17 0.05 0.34 0.24 0.17 0.05 0.21 0.15 0.09 0.03 0.23 0.16 0.10 0.03 η+ 0.30 0.50 0.70 0.90 0.30 0.50 0.70 0.90 0.30 0.50 0.70 0.90 0.30 0.50 0.70 0.90 0.30 0.50 0.70 0.90 Est. η + 0.46 ± 0.11 0.61 ± 0.10 0.75 ± 0.08 0.88 ± 0.04 0.25 ± 0.06 0.48 ± 0.04 0.65 ± 0.07 0.90 ± 0.02 0.36 ± 0.07 0.50 ± 0.07 0.66 ± 0.07 0.84 ± 0.06 0.38 ± 0.14 0.52 ± 0.14 0.65 ± 0.16 0.69 ± 0.18 0.43 ± 0.17 0.54 ± 0.19 0.67 ± 0.15 0.80 ± 0.15 Erreur 26.84 ± 3.2 27.44 ± 3.6 27.37 ± 3.3 29.93 ± 3.5 16.59 ± 1.6 17.33 ± 2.2 20.26 ± 3.8 24.82 ± 3.5 19.75 ± 1.2 22.99 ± 2.0 26.67 ± 3.5 34.89 ± 4.9 12.93 ± 4.4 14.48 ± 2.2 17.80 ± 4.7 24.47 ± 6.5 23.55 ± 2.6 23.65 ± 3.0 24.27 ± 3.6 28.75 ± 7.9 Tab. 8.3 – Expériences semi-supervisées asymétriques sur 5 problèmes Uci. Nous notons ρ+ le taux d’étiquetage des données positives, p+ , ρ le taux d’étiquetage sur l’ensemble de l’échantillon. Ces taux correspondent à un bruit de classification η + = 1 − ρ+ sur les exemples positifs. Le tableau donne l’estimation moyenne du taux de bruit (sur 100 ensembles d’apprentissage pour chaque problème) comme décrit dans la section 1.4 du premier Chapitre et l’erreur de généralisation moyenne faîte par Scpa sur 100 ensembles de tests. Conclusion 9 Dans ce mémoire, nous avons étudié l’apprentissage de séparateurs linéaires sur des distributions altérées par des bruits de classification de divers types. Les travaux antérieurs dérivés de l’algorithme du perceptron linéaire, effectués dans le cadre du bruit de classification uniforme, proposaient des procédures capables de Pac apprendre ce type de distributions qui, cependant, étaient dépendantes de la dimension de l’espace de descriptions des données. La justification théorique de l’usage de noyaux de Mercer, et donc de l’extension à la classification non linéaire est alors rendu invalide. Nous avons, pour parer à cet inconvénient, proposé une procédure en deux temps, composée d’une étape de projections aléatoires puis d’un apprentissage sur les données projetées via un perceptron tolérant au bruit de classification. Cet algorithme, Rp-Learn, a été prouvé tolérant au bruit Cn avec des complexités en échantillonnage et en temps polynomiales. Toutefois, les algorithmes de type perceptron ne permettent pas de calculer un classifieur à large marge, et de profiter ainsi de bonnes qualités théoriques de généralisation. Nous étudions donc la robustesse des machines à vecteurs de support à marge douce (ou CSvm). Un certain nombre de travaux se sont intéressé (de manière souvent indirecte) à la tolérance au bruit Cn des Svm. Sous certaines conditions, notamment en rapport avec le noyau utilisé, les Svm produisent un classifieur optimal sur des données altérées par du bruit Cn. Ces conditions sont contraignantes, et ne sont pas vérifiées dans le cas linéaire, comme le prouve l’exemple à double marge proposé dans ce mémoire. Pourtant, en pratique, les performances des Svm sont généralement très satisfaisantes sous cette condition de bruit. Nous étendons notre analyse au cadre Cccn, et proposons une nouvelle fonction de perte (non convexe) constituant un estimateur de la perte hinge Svm non bruitée. Nous prouvons qu’en utilisant cette perte modifiée dans une nouveau programme d’optimisation nSvm, nous sommes capables, sous couvert d’un échantillon d’apprentissage de taille suffisante, de calculer un classifieur proche du classifieur optimal que les Svm auraient produit si les données n’avaient pas été bruitées. Les premières simulations effectuées avec un algorithme de type quasiNewton se sont avérées être plutôt convaincantes, puisque nSvm est plus performant que CSvm sur la quasi-totalité des expériences menées malgré la non convexité de la fonction objectif. Toutefois, l’analyse théorique de ce type d’algorithme d’optimisation est assez difficile. Nous nous en remettons donc à une procédure de type plans sécants (également connue sous 145 146 Chapitre 9. Conclusion le nom de cutting-plane ou méthode bundle). L’optimisation se fait alors de manière itérative, et nous prouvons que, si l’ensemble d’apprentissage est suffisamment important, l’algorithme converge après un nombre polynomial d’itérations vers une solution proche de l’optimum. Néanmoins, l’usage de noyaux peut être rendu compliqué par la dépendance en la dimension de l’espace de la complexité en échantillonnage de l’algorithme (celle-ci est due à la non différentiabilité de la perte hinge). On pourrait penser qu’une procédure de type projections aléatoires puis apprentissage pourrait être une solution envisageable. Enfin, les expériences préliminaires convaincantes menées à la fois sur des échantillons semi-supervisés asymétriques et sur les données images Corel montrent l’étendue des applications possibles pour des algorithmes tolérants au bruit de classification. Ces performances méritent probablement qu’on porte un intérêt à des algorithmes Cccn (peut-être partiellement modifiés) y compris dans un but totalement applicatif. Pour ce qui est des perspectives, plusieurs questions se posent. Tout d’abord, est-il possible de s’affranchir de la dimension de l’espace dans la borne théorique sur la taille de l’échantillon d’apprentissage pour la convergence de l’algorithme Scpa ? À l’heure actuelle, la nondifférentiabilité de la perte hinge pose problème. Il est peut-être possible d’appliquer la stratégie utilisée dans Rp-Learn pour résoudre ce problème, en faisant usage de projections aléatoires pour réduire la dimension de l’espace de description. Il serait intéressant d’étendre les résultats obtenus sur les Svm tolérantes au bruit à d’autres programme d’optimisation utilisant une perte convexe. Il ne semble pas exister de difficulté théorique majeure à cette extension dès lors que la fonctionnelle de coût est Lipschitzienne (ce qui exclut notamment une perte exponentielle). Sans hypothèse sur la taille de l’espace considéré, cette condition est a priori nécessaire pour pouvoir obtenir une borne théorique sur la taille de l’échantillon d’apprentissage suffisant pour s’affranchir du bruit. L’extension des résultats obtenus pour nSvm à des bruits de classification plus complexes semble, a priori, chose aisée du point de vue théorique à condition que l’algorithme ait accès à la fonction de bruit altérant les données. La difficulté est alors transposée dans l’estimation, en pratique, de cette fonction de bruit. Nous avons remarqué dans ce mémoire que, s’il était facile d’estimer le taux de bruit de classification dans le cas Cn, la procédure était plus complexe si les données étaient altérées par un bruit de classification Cccn. Ainsi, cette estimation du processus de bruit s’avère difficile à mettre en oeuvre si celui-ci est très irrégulier. Nous nous sommes limités dans ce manuscrit pour Rp-Learn à une étude théorique en cas d’utilisation de projections aléatoires. On peut penser, même si les performances pratiques sont bonnes, que des projections déterministes permettrait de diminuer encore la taille de l’espace de projection. Il pourrait être intéressant de savoir dans quels cas ces projections déterministes (telles que Pca) peuvent s’avérer nettement plus performantes au niveau de l’erreur de reconstruction, à dimension de projection équivalente. De plus, pousser notre intérêt pour les Partial Least Squares, 147 puisque cet algorithme semble être plus adapté à la classification, devrait être une bonne stratégie. Enfin, une dernière question se pose à propos de la possibilité de proposer, comme pour le perceptron, un théorème de type Pac pour l’apprentissage de Svm bruitées. Les résultats obtenus à l’heure actuelle pour nSvm montrent que, si la taille de l’échantillon est suffisamment grande, l’algorithme produit un classifieur pour lequel la fonction objectif CSvm prend une valeur proche de son optimum global. Cette notion de précision n’est pas la précision au sens Pac du terme, qui est relative à l’erreur de généralisation. La question qui se pose est de savoir si il est possible de réexprimer ce théorème, sous certaines conditions (comme la séparabilité linéaire de la distribution non bruitée), avec les notions de précision et de confiance telles qu’elles sont définies dans le cadre Pac. A Annexes Sommaire A.1 Preuve du Lemme 5.2 . . . . . . . . . . . . . . . . . . . . . . . . . 149 A.2 Preuve du Lemme 8.1 . . . . . . . . . . . . . . . . . . . . . . . . . 150 A.3 Borne de Chernoff . . . . . . . . . . . . . . . . . . . . . . . . . 151 A.1 Preuve du Lemme 5.2 Démonstration. Par le Lemme 5.1, nous savons que 3δ εγ |{x ∈ S|θ (x, y) = 0}| > m0 10(n + 1), 2, , 4 16 avec une probabilité au moins 1 − 3δ 4 . Donc, grâce au Théorème 2.3, avec 3δ δ probabilité 1 − 4 − 4 , ∀ R ∈ [−1, 1], nous pouvons conclure que : Ê [yhw, xi1≤ R ω |θ (x, y) = 0] − E [yhw, xi1≤ R ω |θ (x, y) = 0] ≤ εγ . 16 (A.1) Dans le but de simplifier l’écriture, nous abrégerons l’expression yhw, xi en tant que ω. Nous rappelons que x et w sont normalisés, et donc uni- 149 Annexe A. Annexes 150 taires. Nous avons alors : Ê[ω1≤ R ω ] − E[ω1≤ R ω ] = Ê[ω1≤ R ω |θ (x, y) = 0] Pr(x,y)∈S [θ (x, y) = 0] − Pr(x,y)∼D [θ (x, y) = 0] + Ê[ω1≤ R ω |θ (x, y) = 0] − E[ω1≤ R ω |θ (x, y) = 0] Pr(x,y)∼D [θ (x, y) = 0] + Ê[ω1≤ R ω |θ (x, y) = 1] Pr(x,y)∈S [θ (x, y) = 1] − Pr(x,y)∼D [θ (x, y) = 1] + Ê[ω1≤ R ω |θ (x, y) = 1] − E[ω1≤ R ω |θ (x, y) = 1] Pr(x,y)∼D [θ (x, y) = 1] ≤ Ê[ω1≤ R ω |θ (x, y) = 0] Pr(x,y)∈S [θ (x, y) = 0] − Prx∼D [θ (x, y) = 0] (≤ εγ 64 par le Lemme 5.1) + Ê[ω1≤ R ω |θ (x, y) = 0] − E[ω1≤ R ω |θ (x, y) = 0] Pr(x,y)∼D [θ (x, y) = 0] (≤ εγ 16 par l’équation A.1) + Ê[ω1≤ R ω |θ (x, y) = 1] Pr(x,y)∈S [θ (x, y) = 1] − Pr(x,y)∼ D [θ (x, y) = 1] (≤ εγ 64 par le Lemme 5.1) + Ê[ω1≤ R ω |θ (x, y) = 1] − E[ω1≤ R ω |θ (x, y) = 1] Pr(x,y)∼ D [θ (x, y) = 1] εγ ε εγ ≤ 1× + (1 − θ ) + 1 × + 2θ (avec probabilité 1 − δ) 64 16 64 6ε + 2θ ≤ 2ε (d’après les valeurs choisies pour ε min and θmax ) ≤ 64 A.2 Preuve du Lemme 8.1 Ici, nous donnons la structure de la preuve du Lemme 8.1. Preuve du Lemme 8.1.a Immédiat à partir du Lemme 7.5. Preuve du Lemme 8.1.b Quelques calculs montrent que Eσ aσw = − 1 n πi yi xi n i∑ =1 avec πi = 1 if `(γi ) < 1 et 0 sinon, ainsi que σ E σ bw = 1 n `(γi ) − hEσ aσw , wi. n i∑ =1 Il suffit de se ramener à Joachims [2006] pour obtenir l’expression d’un sous-gradient de GCSvm et pour ainsi montrer le lemme. Preuve du Lemme 8.1.c Voir Lemme 7.6. Preuve du Lemme 8.1.d La perte utilisée par nSvm n’étant pas dérivable en tout point, la dérivée de la fonction objectif de nSvm n’est pas continue. Il est donc impossible d’utiliser les propriétés structurelles de la complexité de Rademacher relatives à la Lipschitzianité, comme cela a été le cas dans la preuve du Lemme 7.6. Nous avons recours ici à des arguments de Vc-théorie. A.3. Borne de Chernoff Introduisons Qw,w0 : X × Y × {−1, 1} → R, avec σyhw, xi si σyhw0 , xi ≤ 1 Qw,w0 (x, y, σ ) = 0 sinon 151 (A.2) Si nous bornons la distance entre Qw,w0 et son espérance pour tout w, w0 , alors il s’ensuit immédiatement une borne uniforme sur la précision de haσw , w0 i. Dans cette optique, nous nous en remettons à un lemme classique de la théorie VC : Lemma 1. Vapnik [1982] Si un ensemble de fonctions { f φ |φ ∈ Φ} a une pseudo-dimension de D et un rang de R, alors ∀ε < 1, ∀γ < 1, si un échantillons aléatoire de 9 8R2 2D ln 4R ε + ln δ m≥ ε2 exemples iid est tiré, alors avec probabilité 1 − δ, la moyenne empirique de chaque fonction f φ > Kη est distante d’au plus Rε de son espérance and et la moyenne empirique de chaque fonction indicatrice est distante d’au plus ε de son espérance. Il suffit, pour obtenir une borne sur la pseudo-dimension of { Qw,w0 |w, w0 }, de disposer d’une borne sur la précision de tout estimateur empirique. Nous faisons appel à un lemme de Bylander [1998]. Lemma 2 ( Bylander [1998]). La pseudo-dimension de { Qw,w0 |w, w0 } est inférieure à 10(n + 1) Alors, par définition de la taille n de l’échantillon S, nous concluons que 1 ε0 . ∑ Qw,w0 (xi , yi σi ) − Eσ Qw,w0 (xi , yi σi ) < n i 2Kη Lη WR Cela implique, pour tout w,w’, kEσ [haσw , w0 i] − haw , w0 ik < ε0 . Ainsi, la première inégalité est vraie. Étant donné que la preuve du Lemme σ ] = b et donc, la borne |E [ bσ ] − b | < 2ε0 avec 7.6 montre l’égalité Eσ [bw w σ w w probabilité au moins 1 − δ est immédiate. A.3 Théorème A.1 Borne de Chernoff Soit X1 , . . . , Xn n variables de Bernouilli identiquement et indépendamment distribuées avec E[ Xi ] = Pr [ Xi = 1] = p. Alors : 1 Pr p − ∑ Xi > α ≤ 2 exp −2nα2 n Bibliographie C. C. Aggarwal et P. S. Yu, « Outlier detection for high dimensional data », p. 37–46, 2001. (Cité page 4.) E. Amaldi et V. Kann, « On the approximability of some NP-hard minimization problems for linear systems », Electronic Colloquium on Computational Complexity (ECCC), vol. 3, no 015, 1996, adresse : citeseer.ist.psu.edu/article/ amaldi96approximability.html. (Cité page 22.) D. Angluin et P. Laird, « Learning from Noisy Examples », Machine Learning, vol. 2, 1988. (Cité pages 5, 19, 20, 26 et 28.) P. Auer et N. Cesa-Bianchi, « On-line learning with malicious noise and the closure algorithm », Annals of Mathematics and Artificial Intelligence, vol. 23, no 1-2, p. 83–99, 1998, ISSN 1012-2443. (Cité pages 5 et 22.) M.-F. Balcan, A. Blum et S. Vempala, « Kernels as Features : on Kernels, Margins, and Low-dimensional Mappings », Dans Proc. of the 15th Conf. on Algorithmic Learning Theory, 2004. (Cité pages 42, 49 et 50.) M. Balcan et A. Blum, « On a theory of learning with similarity functions », Dans In International Conference on Machine Learning, p. 73–80, 2006. (Cité page 44.) M. Barkerl et W. Rayens, « Partial Least Squares For Discrimination », Journal of Chemometrics, vol. 17, p. 166–173, 2003. (Cité page 48.) P. L. Bartlett et S. Mendelson, « Rademacher and gaussian complexities : Risk bounds and structural results », Journal of Machine Learning Research, vol. 3, p. 463–482, 2002. (Cité pages 37 et 40.) 153 Bibliographie 154 P. L. Bartlett, S. Boucheron et G. Lugosi, « Model selection and error estimation », Dans COLT ’00 : Proceedings of the Thirteenth Annual Conference on Computational Learning Theory, p. 286–297, Morgan Kaufmann Publishers Inc., 2000, ISBN 155860703X, adresse : http://portal.acm.org/ citation.cfm?id=755312. (Cité page 37.) P. L. Bartlett, O. Bousquet et S. Mendelson, « Local rademacher complexities », Dans Annals of Statistics, p. 44–58, 2002. (Cité page 37.) P. L. Bartlett, M. I. Jordan et J. M. McAuliffe, Large margin classifiers : Convex loss, low noise, and convergence rates, adresse : citeseer.ist.psu.edu/756335.html, 2005. (Cité pages 6, 22 et 99.) G. Blanchard, O. Bousquet et L. Zwald, « Statistical properties of kernel principal component analysis », Mach. Learn., vol. 66, no 2-3, p. 259–294, 2007, ISSN 0885-6125, doi : http: //dx.doi.org/10.1007/s10994-006-6895-9. (Cité page 48.) H. D. Block, « The perceptron : A model for brain functioning », Reviews of Modern Physics, vol. 34, p. 123–135, 1962. (Cité pages 2 et 74.) A. Blum et J. Dunagan, « Smoothed analysis of the perceptron algorithm for linear programming », Dans Proc. of the 13th Symp. on Discrete Algorithms, 2002, adresse : citeseer.ist.psu.edu/blum02smoothed.html. (Cité pages 61 et 64.) A. Blum et T. Mitchell, « Combining Labeled and Unlabeled Data with Co-Training », Dans Proc. of the 11th Conf. on Computational Learning Theory, p. 92–100, 1998. (Cité pages 14 et 24.) A. Blum, A. M. Frieze, R. Kannan et S. Vempala, « A Polynomial-Time Algorithm for Learning Noisy Linear Threshold Functions », Dans Proc. of 37th IEEE Symposium on Foundations of Computer Science, p. 330–338, 1996, adresse : citeseer.ist.psu.edu/ blum96polynomialtime.html. (Cité pages 6, 20, 27, 28, 59, 60 et 64.) A. Blum, « Random projection, margins, kernels, and feature-selection », LNCS, vol. 3940, p. 2006, 2005. (Cité page 49.) Bibliographie A. Blumer, A. Ehrenfeucht, D. Haussler et M. K. Warmuth, « Learnability and the vapnik-chervonenkis dimension », J. ACM, vol. 36, no 4, p. 929–965, 1989, ISSN 0004-5411, doi : http://doi. acm.org/10.1145/76359.76371. (Cité page 34.) L. Breiman, J. Friedman, R. Olshen et C. Stone, Classification and Regression Trees, Wadsworth and Brooks, Monterey, CA, 1984. (Cité page 2.) N. H. Bshouty, N. Eiron et E. Kushilevitz, « PAC learning with nasty noise », Dans Algorithmic Learning Theory, 10th International Conference, ALT ’99, Tokyo, Japan, December 1999, Proceedings, vol. 1720, p. 206–218, Springer, 1999, adresse : citeseer.ist.psu.edu/bshouty99pac.html. (Cité page 28.) T. Bylander, « Learning Linear Threshold Functions in the Presence of Classification Noise », Dans Proc. of 7th Annual Workshop on Computational Learning Theory, p. 340–347, ACM Press, New York, NY, 1994, 1994. (Cité pages 6, 20, 28, 56 et 64.) T. Bylander, Learning Noisy Linear Threshold Functions, Submitted for journal publication, adresse : http://www.cs.utsa. edu/~bylander/pubs/learning-noisy-ltfs.ps.gz, 1998. (Cité pages 5, 20, 22, 28, 56, 57, 59, 64, 70, 72 et 151.) O. Chapelle, « Training a support vector machine in the primal », Neural Comput., vol. 19, no 5, p. 1155–1178, 2007, ISSN 0899-7667, doi : http://dx.doi.org/10.1162/neco.2007.19.5.1155. (Cité pages 86 et 92.) E. Cohen, « Learning Noisy Perceptrons by a Perceptron in Polynomial Time », Dans Proc. of 38th IEEE Symposium on Foundations of Computer Science, p. 514–523, 1997. (Cité pages 6, 27 et 60.) R. Collobert, F. Sinz, J. Weston et L. Bottou, « Trading convexity for scalability », Dans ICML ’06 : Proceedings of the 23rd international conference on Machine learning, p. 201–208, New York, NY, USA, ACM, 2006. (Cité page 120.) T. Cover et P. Hart, « Nearest neighbor pattern classification », Information Theory, IEEE Transactions on, vol. 13, no 1, p. 21–27, 1967. (Cité page 2.) 155 Bibliographie 156 N. Cristianini et J. Shawe-Taylor, An Introduction to Support Vector Machines and other Kernel-Based Learning Methods, Cambridge University Press, 2000. (Cité pages 15 et 43.) S. E. Decatur, « Pac Learning with Constant-Partition Classification Noise and Applications to Decision Tree Induction », Dans Proc. of the 14th Int. Conf. on Machine Learning, 1997. (Cité pages 5, 20, 22 et 28.) A. P. Dempster, N. M. Laird et D. B. Rubin, « Maximum likelihood from incomplete data via the EM algorithm », J. of the Royal Statistics Society, vol. 39, no 1, 1977. (Cité page 4.) F. Denis, C. N. Magnan et L. Ralaivola, « Efficient learning of naive bayes classifiers under class-conditional classification noise », Dans Proc. of the 23rd Int. Conf. on Machine Learning, 2006. (Cité pages 6 et 20.) F. Denis, A. Laurent, R. Gilleron et M. Tommasi, « Text classification and co-training from positive and unlabeled examples », Dans Proceedings of the ICML 2003 Workshop : The Continuum from Labeled to Unlabeled Data, p. 80–87, 2003. (Cité page 13.) F. Denis, « Pac learning from positive statistical queries », Dans Proc. 9th International Conference on Algorithmic Learning Theory ALT ’98, p. 112–126, Springer-Verlag, 1998. (Cité pages 5, 13 et 23.) P. Drineas et M. W. Mahoney, « On the nyström method for approximating a gram matrix for improved kernel-based learning », J. Mach. Learn. Res., vol. 6, p. 2153–2175, 2005, ISSN 1533-7928. (Cité page 47.) R. Dudley, « Balls in Rk do not cut all subsets of k+2 points », Advances in mathematics 31, p. 306–308, 1979. (Cité page 34.) Dunagan et Vempala, « Optimal outlier removal in high-dimensional spaces », Dans STOC : ACM Symposium on Theory of Computing (STOC), 2001, adresse : citeseer.ist.psu.edu/dunagan02optimal.html. (Cité page 60.) Bibliographie J. Dunagan et S. Vempala, « Polynomial-time rescaling algorithm for solving linear programs », Dans Proc. of the ACM Symposium on Theory of Computing (STOC), 2004. (Cité pages 28 et 61.) B. Fortuna, « String kernels », PASCAL EPrints [http ://eprints.pascal-network.org/perl/oai2] (United Kingdom), 2004, adresse : http://eprints.pascal-network.org/ archive/00000734/. (Cité page 44.) D. Fradkin et D. Madigan, « Experiments with random projections for machine learning », Dans Proc. of the 9th ACM SIGKDD int. conf. on Knowledge discovery and data mining, 2003, adresse : citeseer.ist.psu.edu/ fradkin03experiments.html. (Cité page 80.) V. Franc et S. Sonnenburg, « Optimized cutting plane algorithm for support vector machines », Rapport technique, Fraunhofer Institut Reichnerarchitektur und Softwaretechnik, 2007. (Cité pages 94, 95, 99, 128, 130 et 133.) Y. Freund et R. E. Schapire, « A decision-theoretic generalization of on-line learning and an application to boosting », Journal of Computer and System Sciences, vol. 55, no 1, p. 119–139, 1997. (Cité page 3.) T. Friess, N. Cristianini et N. Campbell, « The Kernel-Adatron Algorithm : a Fast and Simple Learning Procedure for Support Vector Machines », Dans Machine Learning : Proc. of the 15th Int. Conf., J. Shavlik (coordinateur), Morgan Kaufmann Publishers, 1998. (Cité page 86.) G. P. C. Fung et H. Lu, « Text classification without negative examples revisit », IEEE Trans. on Knowl. and Data Eng., vol. 18, no 1, p. 6–20, 2006, ISSN 1041-4347, doi : http://dx.doi.org/10.1109/TKDE.2006.16, Member-Yu, Jeffrey X. and Fellow-Yu, Philip S. (Cité page 13.) T. Gärtner, P. A. Flach et S. Wrobel, « On Graph Kernels : Hardness Results and Efficient Alternatives », Dans Proc. of the 16th Annual Conf. on Computational Learning Theory and 7th Kernel Workshop, 2003. (Cité page 44.) P. Goldberg, Some Discriminant-based PAC Algorithm, 157 Bibliographie 158 Personal communication, 2005. (Cité page 28.) D. M. Hawkins, Identification of outliers, Chapman and Hall, London ; New York :, 1980. (Cité page 4.) Y. He, « Modified generalized discriminant analysis using kernel gramschmidt orthogonalization in difference space for face recognition », International Workshop on Knowledge Discovery and Data Mining, vol. 0, p. 36–39, 2009, doi : http://doi.ieeecomputersociety.org/10.1109/ WKDD.2009.56. (Cité page 47.) J. J. Hopfield, « Neural networks and physical systems with emergent collective computational abilities », p. 457–464, 1988. (Cité page 3.) Z. Hussain et J. Shawe-Taylor, « Theory of matching pursuit », PASCAL EPrints [http ://eprints.pascal-network.org/perl/oai2] (United Kingdom), 2009. (Cité page 47.) T. Joachims, « Training linear svms in linear time », Dans KDD ’06 : Proceedings of the 12th ACM SIGKDD international conference on Knowledge discovery and data mining, p. 217–226, New York, NY, USA, ACM, 2006, ISBN 1-59593-339-5. (Cité pages 94, 98, 128, 130 et 150.) A. Kalai et R. Servedio, « Boosting in the presence of noise », Journal of Computer and System Sciences, vol. 71, no 3, p. 266–290, 2005. (Cité page 6.) M. Kearns, « Efficient noise-tolerant learning from statistical queries », J. ACM, vol. 45, no 6, p. 983–1006, 1998, ISSN 0004-5411, doi : http:// doi.acm.org/10.1145/293347.293351. (Cité pages 6 et 20.) M. Kearns et M. Li, « Learning in the presence of malicious errors », Dans Proc. of the 20th A.C.M. Symposium on the Theory of Computing, 1988. (Cité pages 5 et 22.) M. Kearns et M. Li, « Learning in the presence of malicious errors », Bibliographie SIAM Journal on Computing, vol. 22, no 4, p. 807–837, 1993. (Cité page 28.) S. S. Keerthi et D. DeCoste, « A modified finite newton method for fast solution of large scale linear svms », J. Mach. Learn. Res., vol. 6, p. 341–361, 2005, ISSN 1533-7928. (Cité page 92.) G. S. Kimeldorf et G. Wahba, « A correspondence between bayesian estimation on stochastic processes and smoothing by splines », Annals of Mathematical Statistics, vol. 41, p. 495–502, 1970. (Cité page 92.) V. Koltchinskii et D. Panchenko, « Rademacher processes and bounding the risk of function learning », Dans High Dimensional Probability II, p. 443–459, Birkhäuser, 2000. (Cité page 37.) V. Koltchinskii et D. Panchenko, « Empirical margin distributions and bounding the generalization error of combined classifiers », Annals of Statistics, vol. 30, p. 2002, 2002. (Cité page 37.) N. Lawrence et B. Schölkopf, « Estimating a Kernel Fisher Discriminant in the Presence of Label Noise », Dans In Proc. of the 18 th Int. Conf. on Machine Learning, p. 306–313, 2001. (Cité pages 6 et 138.) F. Letouzey, F. Denis et R. Gilleron, « Learning from positive and unlabeled examples », Dans Procs. of the 11th International Conference on Algorithmic Learning Theory, p. 71–85, 2000. (Cité pages 13 et 23.) B. Liu, Y. Dai, X. Li, W. S. Lee et P. S. Yu, « Building text classifiers using positive and unlabeled examples », Dans In : Intl. Conf. on Data Mining, p. 179–186, 2003. (Cité page 13.) H. Lodhi et Y. Guo, « Gram-schmidt kernels applied to structure activity analysis for drug design », Dans BIOKDD, p. 37–42, 2002. (Cité page 47.) G. Lugosi et N. Vayatis, « The bayes-risk consistency of regularized boosting methods », Annals of Statistics, 2003, adresse : citeseer.ist.psu.edu/ article/lugosi03bayesrisk.html. (Cité page 6.) 159 Bibliographie 160 C. Magnan, « Asymmetrical Semi-Supervised Learning and Prediction of Disulfide Connectivity in Proteins », RIA, New Methods in Machine Learning : Theory and applications, vol. 20, no 6, p. 673–695, 2006. (Cité pages 13 et 23.) C. N. Magnan, C. Capponi et F. cois Denis, « A protocol to detect local affinities involved in proteins distant interactions », Dans 2007 IEEE International Conference on Bioinformatics and Biomedicine, p. 252–257, IEEE Computer Society, 2007, ISBN 0-7695-3031-1. (Cité page 20.) E. Mammen et A. B. Tsybakov, « Smooth discrimination analysis », The Annals of Statistics, vol. 27, no 6, p. 1808–1829, 1999. (Cité page 100.) O. L. Mangasarian, « A finite newton method for classification problems », Rapport technique, Data Mining Institute, Computer Sciences Department, University of Wisconsin, 2001. (Cité page 92.) C. McDiarmid, « On the method of bounded differences », Survey in Combinatorics, p. 148–188, 1989. (Cité page 38.) S. Mika, B. Schölkopf, A. J. Smola, K.-R. Müller, M. Scholz et G. Rätsch, « Kernel PCA and De-Noising in Feature Spaces », Dans Adv. in Neural Information Processing Systems, 1999. (Cité page 45.) M. Minsky et S. Papert, Perceptrons : an Introduction to Computational Geometry, MIT Press, 1969. (Cité pages 2 et 56.) M. Minsky, « Steps toward artificial intelligence », Dans Computers and Thought, vol. 49, p. 406–450, 1961. (Cité page 2.) A. B. J. Novikoff, « On convergence proofs on perceptrons », Dans Proc. of the Symp. on the Mathematical Theory of Automata, p. 615–622, 1962. (Cité page 74.) J. C. Platt, Bibliographie « Fast training of support vector machines using sequential minimal optimization », Dans Adv. in kernel methods : support vector learning, B. Scholkopf, C. Burges et A. Smola (coordinateurs), MIT Press, 1998a. (Cité pages 86 et 92.) J. Platt, « Sequential Minimal Optimization : a Fast Algorithm for Training Support Vector Machines », Rapport technique 98-14, Microsof Research, April 1998b. (Cité page 92.) J. R. Quinlan, C4.5 : Programs for Machine Learning, Morgan Kaufmann, 1993. (Cité page 2.) A. Rahimi et B. Recht, « Random features for large-scale kernel machines », Proceedings of Neural Information Processing Systems, 2007. (Cité page 80.) L. Ralaivola, F. Denis et C. N. Magnan, « CN=CPCN », Dans Proc. of the 23rd Int. Conf. on Machine Learning, 2006. (Cité pages 20, 22 et 28.) L. Ralaivola, M. Szafranski et G. Stempfel, « Chromatic pac-bayes bounds for non-iid data », Dans AISTATS, p. À paraître, 2009. (Cité page 7.) F. Rosenblatt, « The Perceptron : A probabilistic model for information storage and organization in the brain », Psychological Review, vol. 65, p. 386–407, 1958. (Cité pages 2 et 53.) R. Rosipal et A. Trejo, « Kernel principal component regression with em approach to nonlinear principal components extraction », Rapport technique, University of Paisley, adresse : citeseer.nj.nec. com/article/rosipal00kernel.html, 2000. (Cité page 45.) R. Rosipal et L. J. Trejo, « Kernel Partial Least Squares Regression in Reproducing Kernel Hilbert Spaces », Journal of Machine Learning Research, vol. 2, p. 97–123, 2001. (Cité page 48.) D. Saad et S. A. Solla, « Learning with noise and regularizers in multilayer neural networks », 161 Bibliographie 162 Dans NIPS, p. 260–266, 1996. (Cité page 4.) Y. Sakakibara, « Noise-tolerant occam algorithms and their applications to learning decision trees », Mach. Learn., vol. 11, no 1, p. 37–62, 1993, ISSN 0885-6125. (Cité page 6.) R. E. Schapire, Y. Freund, P. Bartlett et W. S. Lee, « Boosting the Margin : A New Explanation for the Effectiveness of Voting Methods », The Annals of Statistics, vol. 26, no 5, p. 1651–1686, 1998. (Cité page 86.) B. Schölkopf, A. Smola et K.-R. Müller, « Nonlinear component analysis as a kernel eigenvalue problem », Neural Comput., vol. 10, no 5, p. 1299–1319, 1998, ISSN 0899-7667, doi : http://dx.doi.org/10.1162/089976698300017467. (Cité page 45.) R. A. Servedio, « Smooth Boosting and Learning with Malicious Noise », Journal of Machine Learning Research, vol. 4, p. 633–648, 2003. (Cité pages 5 et 22.) J. Shawe-Taylor et N. Cristianini, Kernel Methods for Pattern Analysis, Cambridge University Press, 2004. (Cité page 47.) J. Shawe-Taylor, N. Cristianini et J. Kandola, the concentration of spectral properties, adresse : citeseer.ist. psu.edu/shawe-taylor01concentration.html, 2002. (Cité page 48.) A. J. Smola, S. Vishwanathan et Q. Le, « Bundle Methods for Machine Learning », Dans Advance in Neural Information Processing Systems, vol. 20, 2008. (Cité page 128.) I. Steinwart, « Support vector machines are universally consistent », J. Complex., vol. 18, no 3, p. 768–791, 2002, ISSN 0885-064X, doi : http: //dx.doi.org/10.1006/jcom.2002.0642. (Cité pages 6 et 99.) G. Stempfel, « Apprentissage de perceptrons à noyau sur données bruitées - rapport de master 2 », Rapport technique, Université de Provence, 2006. (Cité page 77.) Bibliographie G. Stempfel et L. Ralaivola, « Apprentissage de perceptrons à noyaux sur données bruitées et projections aléatoires », Dans Actes de la Conférence Apprentissage CAp’07, Grenoble, 2007a. (Cité pages 7 et 65.) G. Stempfel et L. Ralaivola, « Un algorithme par plans sécants pour l’apprentissage de svm sous bruit de classification », Dans Actes de la Conférence Apprentissage CAp’09, Hammamet, 2009a. (Cité pages 7 et 128.) G. Stempfel, L. Ralaivola et F. Denis, « Apprentissage de svm sur données bruitées », Dans Actes de la Conférence Apprentissage CAp’08, Porquerolles, 2008. (Cité pages 7 et 102.) G. Stempfel et L. Ralaivola, « Learning kernel perceptrons on noisy data using random projections », Dans ALT, p. 328–342, 2007b. (Cité pages 7 et 65.) G. Stempfel et L. Ralaivola, « Learning svms from sloppily labeled data », Dans ICANN, p. À paraître, 2009b. (Cité pages 7 et 102.) M. E. Tipping, « Sparse kernel principal component analysis », Dans Adv. in Neural Information Processing Systems, vol. 13, MIT Press, 2001. (Cité page 45.) A. B. Tsybakov, « Optimal aggregation of classiers in statistical learning », Rapport technique, Université Pierre et Marie Curie, 2001. (Cité page 22.) L. Valiant, « A theory of the learnable », Communications of the ACM, vol. 27, p. 1134–1142, 1984. (Cité page 25.) V. Vapnik, Estimation of Dependences Based on Empirical Data, Springer-Verlag, 1982. (Cité pages 33 et 151.) V. Vapnik, The nature of statistical learning theory, Springer, New York, 1995. (Cité page 3.) 163 V. Vapnik, Statistical Learning Theory, John Wiley and Sons, inc., 1998. (Cité pages 3 et 36.) V. Vapnik et A. Chervonenkis, « On the uniform convergence of relative frequencies of events to their probabilities », Theory of Probability and its Applications, vol. 16, p. 264–280, 1971. (Cité page 33.) S. Vempala, The Random Projection Method, American Mathematic Society, 2004. (Cité page 42.) T. Wen, A. Edelman et D. Gorsich, « A fast projected conjugate gradient algorithm for training support vector machines », Contemporary mathematics : theory and applications, p. 245–263, 2003. (Cité page 91.) W. Zheng, « Class-incremental generalized discriminant analysis », Neural Comput., vol. 18, no 4, p. 979–1006, 2006, ISSN 0899-7667, doi : http://dx.doi.org/10.1162/089976606775774633. (Cité page 47.) Z.-H. Zhou, « Multi-instance learning : A survey », Rapport technique, 2004. (Cité page 5.) L. Zwald, R. Vert, G. Blanchard et P. Massart, « Kernel projection machine : a new tool for pattern recognition », Dans Adv. in Neural Information Processing Systems, vol. 17, 2004. (Cité page 80.) Titre Robustesse des Séparateurs Linéaires au Bruit de Classification Résumé Nous nous plaçons dans le cadre de la classification supervisée et nous nous intéressons plus particulièrement l’apprentissage de séparateurs linéaires sous bruit de classification. Ce processus altère les étiquettes des données en provoquant l’inversion de la classe d’un exemple. Nous commençons par étudier l’apprentissage sous bruit uniforme (où la probabilité d’altération est constante sur l’espace de description), puis nous étendons notre analyse au processus CCCN, où la probabilité d’inversion d’une étiquette dépend de la classe initiale de la donnée affectée. Notre intérêt pour le bruit de classification trouve son application dans, bien évidemment, la gestion des erreurs d’étiquetage, mais également dans l’apprentissage semi-supervisé asymétrique (où les données étiquetées appartiennent toutes à la même classe) et l’apprentissage multi-instances. Nous abordons d’abord des algorithmes de type perceptron linéaire et étendons les résultats de tolérance au bruit déjà existants en dimension finie à des espaces de description de dimension quelconque, et ce afin de légitimer l’utilisation de noyaux de Mercer pour la classification non linéaire. Dans un second temps, nous nous intéressons à la problématique des séparateurs à large marge et l’algorithme des machines à vecteurs de support à marges douces (ou CSvm). Après avoir montré que CSvm n’est pas tolérant au bruit de classsification uniforme, nous proposons un estimateur (non convexe) de la perte hinge non bruitée. Nous utilisons cette nouvelle perte dans un programme d’optimisation quadratique, nSvm, et caractérisons la solution du nouveau problème. Nous proposons une stratégie d’optimisation basée sur un algorithme par plans sécants, et appuyons ses propriétés théoriques par des simulations, notamment des problèmes d’apprentissage semi-supervisé asymétrique et multi-instances. Mots-clés Classification Supervisée, Bruit de Classification, Séparateurs Linéaires, Perceptron, Svm, Optimisation Title Learning Linear Separators under Classification Noise Abstract We focus on supervised learning of linear separators under classification noise. This process alters data by switching examples labels. Learning on classification noise data allows to handle labeling errors but also to tackle asymmetric semi-supervised and multi-instances problems. First, we propose an algorithm to learn linear perception in infinite dimensionnal space. Thus, we show that soft-margin support vector machines are not noise tolerant and we propose a non-convex estimator of the noise-free hinge loss. We define a new quadratic optimization program, nSvm, and we characterize the solution of this new problem. We propose a cutting-plane algorithm and we support its theoretical properties by providing simulations. Keywords Supervised Classification, Classification Noise, Linear Separators, Perceptron, Svm, Optimization