Algorithmes Massih-Reza AMINI Préface de Francis Bach Apprentissage machine de la théorie à la pratique Concepts fondamentaux en Machine Learning © Groupe Eyrolles, 2015, ISBN : 978-2-212-13800-9 livre 20 décembre 2014 11:28 Page vii Table des matières Table des figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi Liste des algorithmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvi Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xvii Avant-propos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Concepts étudiés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Organisation du livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 3 C Introduction à la théorie de l’apprentissage 1.1 Minimisation du Risque Empirique . . . . 1.1.1 Hypothèse et définitions . . . . . . . . . 1.1.2 Énoncé du principe . . . . . . . . . . . 1.2 Consistance du principe MRE . . . . . . 5 ................................. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.1 Estimation de l’erreur de généralisation sur un ensemble de test . . . . . . 1.2.2 Borne uniforme sur l’erreur de généralisation . . . . . . . . . . . . . . . 1.2.3 Minimisation du risque structurel . . . . . . . . . . . . . . . . . . . . 1.3 Borne sur l’erreur de généralisation dépendante des données . . . . . . . 1.3.1 Complexité de Rademacher . . . . . . . . . . . . . . . . . . . . . . . 1.3.2 Lien entre la complexité de Rademacher et la dimension VC . . . . . . . . 7 7 9 9 12 13 23 25 25 26 1.3.3 Différentes étapes d’obtention d’une borne de généralisation avec la complexité de Rademacher . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.4 Propriétés de la complexité de Rademacher . . . . . . . . . . . . . . . . 29 34 livre 20 décembre 2014 11:28 Page viii Apprentissage machine, de la théorie à la pratique C Algorithmes d’optimisation convexe sans contrainte . . . . . . . . . . . . . . . . . . . . . . 2.1 Algorithme du gradient . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 Mode batch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.2 Mode en-ligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Méthode de quasi-Newton . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Direction de Newton . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.2 Formule de Broyden-Fletcher-Goldfarb-Shanno . . . . . . . . . . . . . 2.3 Recherche linéaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Conditions de Wolfe . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2 Algorithme de recherche linéaire basé sur une stratégie de retour en arrière . 2.4 Méthode du gradient conjugué . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Directions conjuguées . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Algorithme du gradient conjugué . . . . . . . . . . . . . . . . . . . . . 37 41 41 43 45 45 46 50 50 56 57 58 60 C Classification bi-classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1 Perceptron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.1 éorème de convergence du perceptron . . . . . . . . . . . . . . . . . 3.1.2 Perceptron à marge et lien avec le principe MRE . . . . . . . . . . . . . 3.2 Adaline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1 Lien avec la régression linéaire et le principe MRE . . . . . . . . . . . . 3.3 Régression logistique . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3.1 Lien avec le principe MRE . . . . . . . . . . . . . . . . . . . . . . . . 3.4 Séparateurs à vaste marge . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.1 Marge dure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.2 Marge souple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.4.3 Borne de généralisation à base de marge . . . . . . . . . . . . . . . . . 3.5 Adaboost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 Lien avec le principe MRE . . . . . . . . . . . . . . . . . . . . . . . . 3.5.2 Échantillonnage par rejet . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.3 Étude théorique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 64 67 69 71 71 73 74 76 76 82 84 88 90 92 93 C Classification multi-classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1 Formalisme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 Erreurs de classification . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.2 Borne sur l’erreur de généralisation . . . . . . . . . . . . . . . . . . . . 4.2 Approches pures ou non agrégées . . . . . . . . . . . . . . . . . . . . . 4.2.1 Séparateurs à vaste marge multi-classes . . . . . . . . . . . . . . . . . . 4.2.2 AdaBoost multi-classes . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 Perceptron multi-couches . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Modèles combinés à base des algorithmes binaires . . . . . . . . . . . . viii 99 100 100 101 104 105 110 113 118 livre 20 décembre 2014 11:28 Page ix Table des matières 4.3.1 Un contre tous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 4.3.2 Un contre un . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 4.3.3 Codes correcteurs d’erreur . . . . . . . . . . . . . . . . . . . . . . . . 121 C Apprentissage semi-supervisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 5.1 Cadre non supervisé et hypothèses de base . . . . . . . . . . . . . . . . 124 5.1.1 Mélange de densités . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 5.1.2 Estimer les paramètres du mélange . . . . . . . . . . . . . . . . . . . . 125 5.1.3 Hypothèses de base en apprentissage semi-supervisé . . . . . . . . . . . 133 5.2 Méthodes génératives . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 5.2.1 Extension des critères à base de vraisemblance au cas semi-supervisé . . . . 136 5.2.2 Algorithme CEM semi-supervisé . . . . . . . . . . . . . . . . . . . . 136 5.2.3 Application : apprentissage semi-supervisé d’un classifieur Naive Bayes . . . 138 5.3 Méthodes discriminantes . . . . . . . . . . . . . . . . . . . . . . . . . 141 5.3.1 Algorithme auto-apprenant . . . . . . . . . . . . . . . . . . . . . . . 141 5.3.2 Séparateurs à vaste marge transductifs . . . . . . . . . . . . . . . . . . 144 5.3.3 Borne transductive sur l’erreur du classifieur de Bayes . . . . . . . . . . . 147 5.3.4 Apprentissage multi-vues basé sur le pseudo-étiquetage . . . . . . . . . . 151 5.4 Méthodes graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 153 5.4.1 Propagation des étiquettes . . . . . . . . . . . . . . . . . . . . . . . . 154 5.4.2 Marche aléatoire markovienne . . . . . . . . . . . . . . . . . . . . . . 157 C Apprentissage de fonctions d’ordonnancement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 6.1 Formalisme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162 6.1.1 Fonctions d’erreur d’ordonnancement . . . . . . . . . . . . . . . . . . . 162 6.1.2 Ordonnancement d’instances . . . . . . . . . . . . . . . . . . . . . . . 166 6.1.3 Ordonnancement d’alternatives . . . . . . . . . . . . . . . . . . . . . . 167 6.2 Approches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 6.2.1 Par point . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 6.2.2 Par paire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 6.3 Apprentissage avec des données interdépendantes . . . . . . . . . . . . 188 6.3.1 Borne de test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 6.3.2 Borne de généralisation . . . . . . . . . . . . . . . . . . . . . . . . . 190 6.3.3 Estimation des bornes pour quelques exemples d’application . . . . . . . . 197 A A Rappels de probabilités . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 A.1 Mesure de probabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 A.1.1 Espace probabilisable . . . . . . . . . . . . . . . . . . . . . . . . . . 203 A.1.2 Espace probabilisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 A.2 Probabilité conditionnelle . . . . . . . . . . . . . . . . . . . . . . . . . 205 ix livre 20 décembre 2014 11:28 Page x Apprentissage machine, de la théorie à la pratique A.2.1 Formule de Bayes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 A.2.2 Indépendance en probabilité . . . . . . . . . . . . . . . . . . . . . . . 207 A.3 Variables aléatoires réelles . . . . . . . . . . . . . . . . . . . . . . . . . 207 A.3.1 Fonction de répartition . . . . . . . . . . . . . . . . . . . . . . . . . 208 A.3.2 Espérance et variance d’une variable aléatoire . . . . . . . . . . . . . . . 209 A.3.3 Inégalités de concentration . . . . . . . . . . . . . . . . . . . . . . . . 210 A B Codes programmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 B.1 Structures de données . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 B.1.1 Base de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215 B.1.2 Structure des hyper-paramètres . . . . . . . . . . . . . . . . . . . . . . 216 B.2 Structure pour une représentation creuse . . . . . . . . . . . . . . . . . 217 B.3 Lancement des programmes . . . . . . . . . . . . . . . . . . . . . . . . 219 B.4 Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 B.4.1 Algorithme BGFS (chapitre 2, section 2.2.2) . . . . . . . . . . . . . . . 221 B.4.2 Recherche linéaire (chapitre 2, section 2.3) . . . . . . . . . . . . . . . . 224 B.4.3 Gradient conjugué (chapitre 2, section 2.4) . . . . . . . . . . . . . . . . 226 B.4.4 Perceptron (chapitre 3, section 3.1) . . . . . . . . . . . . . . . . . . . . 228 B.4.5 Adaline (chapitre 3, section 3.2) . . . . . . . . . . . . . . . . . . . . . 229 B.4.6 Régression logistique (chapitre 3, section 3.3) . . . . . . . . . . . . . . . 230 B.4.7 AdaBoost (chapitre 3, section 3.5) . . . . . . . . . . . . . . . . . . . . 232 B.4.8 AdaBoost M2 (chapitre 4, section 4.2.2) . . . . . . . . . . . . . . . . . 235 B.4.9 Perceptron multi-couches (chapitre 4, section 4.2.3) . . . . . . . . . . . . 238 B.4.10 K-moyennes (chapitre 5, section 5.1.2) . . . . . . . . . . . . . . . . . . 241 B.4.11 Naïve-Bayes semi-supervisé (chapitre 5, section 5.2.3) . . . . . . . . . . . 243 B.4.12 Auto-apprentissage (chapitre 5, section 5.3.1) . . . . . . . . . . . . . . . 246 B.4.13 Auto-apprentissage à une passe (chapitre 5, section 5.3.1) . . . . . . . . . 249 B.4.14 PRank (chapitre 6, section 6.2.1) . . . . . . . . . . . . . . . . . . . . . 250 B.4.15 RankBoost (ordonnancement bipartite - chapitre 6, section 6.2.2) . . . . . 252 Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 x