Apprentissage supervisé...Séminaire TSI 28/09/2006 / Marc Boullé – p 14 research & development...

41
research & development Apprentissage supervisé Marc Boullé Séminaire TSI – 28/09/2006

Transcript of Apprentissage supervisé...Séminaire TSI 28/09/2006 / Marc Boullé – p 14 research & development...

research & development

Apprentissage supervisé

Marc Boullé

Séminaire TSI – 28/09/2006

Séminaire TSI 28/09/2006 / Marc Boullé – p 2 research & development France Telecom Group

Exemple introductif

Méthodologie

Quelques techniques de modélisation

Exemple final

Conclusion

Plan de la présentation

Séminaire TSI 28/09/2006 / Marc Boullé – p 3 research & development France Telecom Group

Exemple introductif

Séminaire TSI 28/09/2006 / Marc Boullé – p 4 research & development France Telecom Group

Manger des champignons, en évitant de mourir

donc savoir discerner • les champignons comestibles

• des champignons empoisonnés

Spécifier un objectif

Séminaire TSI 28/09/2006 / Marc Boullé – p 5 research & development France Telecom Group

Cueillette de champignonsEtiquetage par un pharmacien

Collecter les données

Séminaire TSI 28/09/2006 / Marc Boullé – p 6 research & development France Telecom Group

Mesurer une série d'indicateursHauteur/largeur du pied/chapeauCouleur du pied/chapeauType de solOdeurPoidsPrésence d'un bulbe

Préparer les données

Séminaire TSI 28/09/2006 / Marc Boullé – p 7 research & development France Telecom Group

Après analyse des indicateurs, la règlesuivante est retenue:

Si un champignon estrouge

oujaune

alors il estempoisonné

Modéliser

Séminaire TSI 28/09/2006 / Marc Boullé – p 8 research & development France Telecom Group

Evaluer les résultats

Test de la règle apprise sur une nouvelle cueillette

Séminaire TSI 28/09/2006 / Marc Boullé – p 9 research & development France Telecom Group

Suite à l'évaluation peu concluante, il n'y a pas eu de déploiement

Déployer la solution

Séminaire TSI 28/09/2006 / Marc Boullé – p 10 research & development France Telecom Group

Méthodologie

Séminaire TSI 28/09/2006 / Marc Boullé – p 11 research & development France Telecom Group

Méthodologie CRISP-DM

CRISP-DM: Cross-Industry Standard Process for Data MiningMéthodologie proposée par Daimler-Chrysler, SPSS et NCR

Etapes du processusSpécification d'un objectifCollecte des donnéesPréparation des donnéesModélisationEvaluationDéploiement

Séminaire TSI 28/09/2006 / Marc Boullé – p 12 research & development France Telecom Group

Spécification d'un objectif

Définition précise d'un objectif métierPar exemple: améliorer le ciblage des clients intéressés par une nouvelle offre

Recensement des critères de succès (amélioration d'au moins 50% de l'efficacité d'un ciblage)des ressources disponibles (SI, expertise…)des contraintes (problèmes légaux, intelligibilité des résultats…)…

Formulation en projet Data MiningClassification supervisé, régression

Définition d'un plan préalable pour atteindre les objectifs

Séminaire TSI 28/09/2006 / Marc Boullé – p 13 research & development France Telecom Group

Collecte des données

Identifier les sources de données disponibles

Décrire macroscopiquement les données (volumétrie…)

Explorer les données (statistiques descriptives)

Vérifier la qualité des données (valeurs manquantes…)

Séminaire TSI 28/09/2006 / Marc Boullé – p 14 research & development France Telecom Group

Préparation des données

Construire le jeu données pour la modélisation, à partir des données dans leur format natif

Passer des données de SGBD à des données formatées en table

Sélection des donnéesinstances représentatives, variables pertinentes, nettoyage

Construction de variables en prenant en compte la connaissance métier

Formatage d'une table instances*variables pour la modélisation

Séminaire TSI 28/09/2006 / Marc Boullé – p 15 research & development France Telecom Group

ModélisationConstruire un modèle de classification Y=f(X)

Sélectionner une technique de modélisationArbres de décision, réseaux de neurones, Support VectorMachines…

Spécifier un protocole d'évaluationCritère d'évaluation: taux d'erreur, aire sous la courbe de ROC…Séparer un échantillon d'apprentissage, de validation et de test

Construire le modèleConstruire le modèle sur l'échantillon d'apprentissageUtiliser l'échantillon de validation s'il y a des paramètres à ajuster

EvaluerEvaluer les performances en généralisation sur l'échantillon de test

Train dataset

Validation dataset

Test dataset

Séminaire TSI 28/09/2006 / Marc Boullé – p 16 research & development France Telecom Group

Evaluation

Evaluation de l'impact des résultats de modélisationEvaluation de l'atteinte des objectifs du projetRecensement de toutes les contraintesSi possible, évaluation d'un prototype de solution en grandeur réelle

Déterminer les étapes suivantesArrêter ou passer au déploiement

Séminaire TSI 28/09/2006 / Marc Boullé – p 17 research & development France Telecom Group

Déploiement

Utilisation des résultats du projetIntégration dans les processus des connaissances apprisesIntégration applicative dans le SI

Définir un plan d'audit des résultats et de maintenance

Rapport de fin de projet, et revue de projet

Séminaire TSI 28/09/2006 / Marc Boullé – p 18 research & development France Telecom Group

Quelques techniques de modélisation

Séminaire TSI 28/09/2006 / Marc Boullé – p 19 research & development France Telecom Group

Apprentissage supervisé

Variables explicatives X=(X1, X2, …,XK)Variable à expliquer Y

Y catégorielle: classification superviséeY numérique: régression

Instances di= x1i, x2i, …,xKi,yiEchantillon d'apprentissage D=(d1, d2, …,dN )

Apprendre: rechercher f(X)=YEspace d'hypothèse H={f}Critère d'évaluation E(f,D)Algorithme d'optimisation 0

0.5

1

0 0.5 1

0

0.5

1

0 0.5 1

Séminaire TSI 28/09/2006 / Marc Boullé – p 20 research & development France Telecom Group

Apprendre et sur-apprendre

ApprendreModéliser les régularités "réelles" présentes dans les donnéesModélisation pertinente, bonne généralisation

Sur-apprendreModéliser les régularités "accidentelles" locales à l'échantillon d'apprentissagePas de bonne généralisation

0

0.5

1

0 0.5 1

0

0.5

1

0 0.5 1

Séminaire TSI 28/09/2006 / Marc Boullé – p 21 research & development France Telecom Group

Techniques de modélisation

Contraintes liées à chaque techniqueFormat des entréesBiais de chaque méthodeTemps d'apprentissage, de déploiement…

Quelques techniques• Arbre de décision• Réseaux de neurones• Support Vector Machines• Plus proches voisins• Bayesien Naïf• Ensembles de modèles

Séminaire TSI 28/09/2006 / Marc Boullé – p 22 research & development France Telecom Group

Arbres de décision: principe

Hiérarchie de décisions élémentairesNœud: variable de décisionArc: décision suivant valeur de la variableFeuille: valeur prédite

Séminaire TSI 28/09/2006 / Marc Boullé – p 23 research & development France Telecom Group

Arbres de décision

ApprentissagePrétraitement intégré: discrétisation, groupement de valeursCritère d'évaluation des variablesAlgorithme d'élagage avec ensemble de validation

CaractéristiquesVariables numériques et catégorielles en entréeSimple et interprétable (si arbre de petite taille)Rapide à apprendre

Séminaire TSI 28/09/2006 / Marc Boullé – p 24 research & development France Telecom Group

Réseaux de neurones: principe

Inspiration biologique

Modélisation d'un neuroneAdditionneur pour les entréesFonction de transfertActivation en sortie

Réseau de neuronesArchitecture multi-couches

• Entrée, Cachée, Sortie

Séminaire TSI 28/09/2006 / Marc Boullé – p 25 research & development France Telecom Group

Réseaux de neurones

ApprentissageChoix de l'architecture (nombre de couches, nombres de neurones)Algorithme de rétro-propagation de gradientUtilisation d'un ensemble de validation

CaractéristiquesVariables en entrée numériques, normaliséesApproximateur universelIl peut y avoir plusieurs variables à expliquer simultanémentBoîte noireLong à apprendre

Séminaire TSI 28/09/2006 / Marc Boullé – p 26 research & development France Telecom Group

Support Vector Machines: principe

Séparation des classes par un hyperplan

Maximisation de la "marge"

Séparation non linéaire enRemplaçant le produit scalaire x.x' par un noyau k(x,x')

• Polynomial: k(x,x')= (x,x'+1)d

• Gaussien: k(x,x')= exp(-||x-x'||2/2σ2)• …

Marge "douce"Dans le cas de classes non séparables,

autoriser des exceptions

Séminaire TSI 28/09/2006 / Marc Boullé – p 27 research & development France Telecom Group

Support Vector Machines

ApprentissageOptimisation quadratique avec optimum globalChoix du noyau, et de la marge (par validation croisée)

CaractéristiquesVariables en entrée numériquesAdapté aux grands nombres de variablesBoîte noireLong à apprendre

Séminaire TSI 28/09/2006 / Marc Boullé – p 28 research & development France Telecom Group

Plus proches voisins: principe

Une instance se comporte comme ses voisines

0

0.5

1

0 0.5 10

0.5

1

0 0.5 1

Séminaire TSI 28/09/2006 / Marc Boullé – p 29 research & development France Telecom Group

Plus proches voisins

ApprentissageChoix de la distanceChoix du nombre de voisinsApprendre: mémoriser la base d'apprentissage

CaractéristiquesVariables en entrée numériquesAdapté au problèmes de type reconnaissance des formesSensible aux variables bruitées ou redondantesCoûteux en déploiement

Séminaire TSI 28/09/2006 / Marc Boullé – p 30 research & development France Telecom Group

Bayésien naïf: principe

Prédicteur Bayesien: optimal

Hypothèse naïveIndépendance des variables descriptives sachant Y

( )( ) ( )

( )

||

kk

P Y P X YP Y X

P X=

( )max |P Y X

( ) ( ) ( )( )

||

P Y P X YP Y X

P X=

Séminaire TSI 28/09/2006 / Marc Boullé – p 31 research & development France Telecom Group

Bayésien naïf

ApprentissagePrétraitement souhaitable: discrétisation, groupement de valeursEvaluation univariée des probabilités conditionnelles

CaractéristiquesVariables numériques et catégorielles en entréeLimité par son hypothèse "idiote" (mais souvent performant en pratique)Facile à utiliserRapide à apprendre

Séminaire TSI 28/09/2006 / Marc Boullé – p 32 research & development France Telecom Group

Ensemble de modèles

Agréger les prédictions de plusieurs classifieurs

Variété de solutionsBoostingBaggingMoyennage Bayesien

CaractéristiquesPlus performantPlus long à apprendrePlus long à déployer

Séminaire TSI 28/09/2006 / Marc Boullé – p 33 research & development France Telecom Group

Exemple final

Séminaire TSI 28/09/2006 / Marc Boullé – p 34 research & development France Telecom Group

SPAM: Spécification d'un objectif

ObjectifFiltrer les mails de type SPAM

Critères de succèsPrédiction de SPAM >=99% et de non-SPAM >= 95%Filtrage en moins de 1/10s par mailRéactualisation du modèle de filtrage quotidiennement

Formulation en projet Data MiningCollecte d'une base de mails étiquetés en SPAM et non-SPAMApprentissage automatique d'un classifieur

Séminaire TSI 28/09/2006 / Marc Boullé – p 35 research & development France Telecom Group

SPAM: Collecte des données

Rechercher une base de mails représentativeBase publiqueServeur de mail de l'entrepriseBoîte de mail utilisateur

Etiqueter les mails en SPAM et non-SPAM

Evaluation préliminaireTaux de SPAMVolumétrie disponible

Séminaire TSI 28/09/2006 / Marc Boullé – p 36 research & development France Telecom Group

SPAM: Préparation des données

Choisir une représentationSac de mots, avec ou sans lemmatisationBigrammes, trigrammes, n-grammesIndicateur de présence/absence, ou compteur d'occurrences

Sélection des donnéesSuppression des mots rares

Nouvelles variablesNombre total de motsPrésence de pièces jointesPrésence d'une adresse e-mailNom de domaine de l'expéditeur

Séminaire TSI 28/09/2006 / Marc Boullé – p 37 research & development France Telecom Group

SPAM: Modélisation

Choix de deux classifieursSVM: pour une bonne performanceBayesien naïf, pour la simplicité en apprentissage et en déploiement

EvaluationMatrice de confusion

• Taux de faux positifs (classe prédite SPAM et observée non SPAM)• Taux de faux négatifs (classe prédite non-SPAM et observée SPAM)

Utiliser 70% des données en apprentissage et 30% en test

Tester plusieurs représentations (mots, n-grammes…)

Séminaire TSI 28/09/2006 / Marc Boullé – p 38 research & development France Telecom Group

SPAM: Evaluation

Evaluer si les objectifs sont atteintsTaux de faux positifs et de faux négatifsTemps d'apprentissageTemps de déploiement

Si objectifs atteints, implémenter un prototypePériode de test sur un panel d'utilisateurs

DéterminerSi la solution est satisfaisanteLes contraintes sur la maintenance des modèles

Séminaire TSI 28/09/2006 / Marc Boullé – p 39 research & development France Telecom Group

SPAM: Déploiement

Rapport de fin de projet

Industrialisation du prototype et diffusion

Séminaire TSI 28/09/2006 / Marc Boullé – p 40 research & development France Telecom Group

Conclusion

Séminaire TSI 28/09/2006 / Marc Boullé – p 41 research & development France Telecom Group

Apprentissage supervisé

Données (X,Y) -> modèle Y=f(X)Classification supervisée ou régression selon Y

Importance de la méthodologieObjectif, Données, Préparation, Modélisation, Evaluation, DéploiementImportance particulière de la préparation des données

Large variété de techniques de modélisationIl n'y a pas de modèle universelCaractéristiques variées

• Contraintes, niveau d'expertise nécessaire, performances, temps d'apprentissage, de déploiement…