1. Biais d apprentissage des arbres de décision 2. Evaluation empirique 3. Sur-apprentissage 4. Techniques d élagage

Documents pareils
Algorithmes d'apprentissage

Arbres binaires de décision

Pourquoi l apprentissage?

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Algorithmes de recherche

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Cours de Master Recherche

chapitre 4 Nombres de Catalan

Définitions. Numéro à préciser. (Durée : )

Arbres de Décision. 1 Introduction

Les algorithmes de fouille de données

Fast and furious decision tree induction

Data Mining. Vincent Augusto École Nationale Supérieure des Mines de Saint-Étienne. Data Mining. V. Augusto.

Chapitre 7. Récurrences

Les arbres binaires de recherche

Data Mining. Bibliographie (1) Sites (1) Bibliographie (2) Plan du cours. Sites (2) Master 2 Informatique UAG

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Algorithmique, Structures de données et langage C

Apprentissage. Intelligence Artificielle NFP106 Année Plan. Apprentissage. Apprentissage

Architecture des Systèmes d Information Architecture des Systèmes d Information

Optimisation for Cloud Computing and Big Data

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

CH.6 Propriétés des langages non contextuels

Conception. Génie Logiciel. Renaud Marlet. LaBRI / INRIA (d'après A.-M. Hugues) màj 17/04/2007

TABLE DES MATIÈRES. PRINCIPES D EXPÉRIMENTATION Planification des expériences et analyse de leurs résultats. Pierre Dagnelie

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Raisonnement probabiliste

données en connaissance et en actions?

Etude des propriétés empiriques du lasso par simulations

Arbres binaires de recherche

Les structures de données. Rajae El Ouazzani

Optimisation Combinatoire (Méthodes approchées) II. Recherche Locale simple (Les bases)

Analyse Combinatoire

Laboratoire d Automatique et Productique Université de Batna, Algérie

Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement

Les technologies du Big Data

ARBRES BINAIRES DE RECHERCHE

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

1 Recherche en table par balayage

Intelligence Artificielle Planification

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Déroulement d un projet en DATA MINING, préparation et analyse des données. Walid AYADI

Cours de Génie Logiciel

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : hivert

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

SYSTÈME DE GESTION DE FICHIERS

Algorithmique avec Algobox


1 Modélisation d être mauvais payeur

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

SYSTÈME DE GESTION DE FICHIERS SGF - DISQUE

Apprentissage incrémental par sélection de données dans un flux pour une application de sécurité routière

Déploiement générique d applications sur plates-formes hétérogènes distribuées

Quelques algorithmes simples dont l analyse n est pas si simple

Jade. Projet Intelligence Artificielle «Devine à quoi je pense»

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Vers une Optimisation de l Algorithme AntTreeStoch

6 - Le système de gestion de fichiers F. Boyer, UJF-Laboratoire Lig, Fabienne.Boyer@imag.fr

Calcul de développements de Puiseux et application au calcul du groupe de monodromie d'une courbe algébrique plane

Quelques Algorithmes simples

Centre CPGE TSI - Safi 2010/2011. Algorithmique et programmation :

Generic deployment of applications on heterogeneous distributed platforms

Master IMA - UMPC Paris 6 RDMM - Année Fiche de TP

Projet de programmation (IK3) : TP n 1 Correction

Algorithmique I. Algorithmique I p.1/??

LOGO. Module «Big Data» Extraction de Connaissances à partir de Données. Claudia MARINICA MCF, ETIS UCP/ENSEA/CNRS

Diagrammes de Package, de déploiement et de composants UML

Programmer en JAVA. par Tama

Coup de Projecteur sur les Réseaux de Neurones

Un ordonnanceur stupide

Quantification Scalaire et Prédictive

Introduction au Data-Mining

Méthodes d apprentissage statistique «Machine Learning»

Windows Internet Name Service (WINS)

Sécurité par compression! ReSIST Gilles RICHARD IRIT

Les algorithmes SLIQ et SSDM

Eric Bertrand 08/11/06 Maître de conférence 1

Travaux pratiques avec RapidMiner

Stratégie de recherche adaptative en programmation par contrainte

4 Exemples de problèmes MapReduce incrémentaux

Ebauche Rapport finale

ÉPREUVE COMMUNE DE TIPE Partie D

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Technique de compression des images médicales 4D

Formation Excel, Niveau initiation, module 1 DUREE DE LA FORMATION OBJECTIFS DE LA FORMATION

LES GENERATEURS DE NOMBRES ALEATOIRES

Probabilités. I Petits rappels sur le vocabulaire des ensembles 2 I.1 Définitions... 2 I.2 Propriétés... 2

ASR1 TD7 : Un microprocesseur RISC 16 bits

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/ Présentation. 1.2 Ressources

Master d'informatique. Réseaux. Supervision réseaux

PROBABILITES ET STATISTIQUE I&II

Programmation Par Contraintes

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

CRÉER, ROUTER ET GÉRER UNE NEWSLETTER, UN ING

Introduction au maillage pour le calcul scientifique

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Initiation à la programmation en Python

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

Transcription:

Plan Arbre de décision Evaluation de l apprentissage - Elagage 1. Biais d apprentissage des arbres de décision 2. Evaluation empirique 3. Sur-apprentissage 4. Techniques d élagage 1. Biais d apprentissage des arbres de décision Biais en apprentissage [Mitchell, 97] Biais de Préférence / Biais de Langage Biais de préférence Dynamique: ordonne les hypothèses de l espace de recherche: heuristique de recherche Biais de Langage Souvent statique, s implémente à travers le langage d hypothèses (langage cible) Restriction a priori de l espace de recherche Rasoir d Occam: un biais de préférence Rasoir d Occam : pour Moins d hypothèses courtes que d hypothèses longues 2 fois moins de chaînes de bits de longueur n que de longueur n+1, n>=0 Si une hypothèse courte colle aux données, cela a moins de chance d être une coïncidence Justification / compromis Toutes autres choses étant égales par ailleurs, des modèles complexes semblent se généraliser moins bien Rasoir d Occam : contre taille(h) repose sur H - définition circulaire? Une représentation interne à l algorithme définit quelles h sont courtes arbitraires? Il y a beaucoup de manières de définir de petits ensembles d hypothèses 2. Evaluation empirique 1

Evaluation empirique des hypothèses produites Evaluation / ensemble d apprentissage Estimation de l'erreur réelle d'une hypothèse Matrice de confusion ou de contingence Evaluation de la prédictivité des hypothèses produites : ensemble d exemples séparés en ensemble d apprentissage A et ensemble test T. Apprentissage d une hypothèse H avec A Evaluation de la prédiction de H sur T TP : «True Positive» = nombre de positifs classés positifs FP : «False Positive» = nombre de négatifs classés positifs TN : «True Negative» = nombre de négatifs classés négatifs FN : «False Negative» = nombre de positifs classés négatifs Estimation de l'erreur réelle d'une hypothèse Erreur(h) = (erreurs)/(nombre total)*100 = (FP+FN)/(TP+TN+FP+FN)*100 Exemple : Découpage des données Données d'apprentissage utilisées par les algorithmes d'apprentissage pour générer les classeurs Données d'optimisation ou de validation utilisées pour optimiser les paramètres de ces classeurs Erreur(h) = (FP+FN)/(TP+TN+FP+FN)*100 = 30% Données de test utilisées pour calculer les taux d'erreurs sur classeurs optimisés Ensemble test Pour prédire les performances d'un classeur sur les données non observées, on a besoin de données non utilisées pour la construction de ce classeur : l'ensemble test doit être indépendant de l'ensemble d'apprentissage les deux ensembles doivent avoir des exemples représentatifs du problème Prédiction des performances Quelques méthodes : Hold-out Hold-out stratifié Hold-out répété Validation croisée Leave-one-out... 2

Hold-out Un sous-ensemble pour le test, le reste pour l'apprentissage /validation (ex: 1/3-2/3) Stratifié : équilibre des classes respecté Répété : l'erreur est la moyenne sur plusieurs hold-out (estimation de la variance de l'estimateur) Dilemme : Pour obtenir un bon classeur, utiliser le plus de données possible Pour avoir une bonne estimation de l'erreur, utiliser le plus de données de test possible k-validation croisée (k-fold cross-validation) Décider du nombre k fixe de partitions des exemples Couper les données en k partitions égales Utiliser une partition pour le test, les k-1 autres pour l'apprentissage Répéter le processus k fois (par permutation circulaire) Erreur = moyenne des erreurs sur les k partitions k-validation croisée (k-fold cross-validation) Souvent stratifiée : répartition homogène des différentes classes entre les k blocs (pour le maintient des probabilités a priori) En pratique : 10 partitions très utilisées (bon compromis entre le nombre d'exemples pour l'apprentissage et pour le test) Variante: 5 x validation 2 blocs Répétition de 5 processus de validation croisées en 2 blocs: Apprentissage sur 50% et test sur 50% => cette dernière procédure semble plus efficace dans certains cas (montré expérimentalement) Leave-one-out Cas particulier de la k-validation croisée où k = nombre d'exemples Avantage : chaque itération utilise un nombre élevé de données pour la phase d'apprentissage déterministe : pas de variance Inconvénients : algorithme d'apprentissage exécuté n fois pb de garantie de la stratification des exemples => utilisé quand n < 100 Méthode indiquée pour un faible nombre d exemples disponibles (N < 100) Sur-apprentissage - Exemple 3. Sur-apprentissage 3

Arbre de décision et sur-apprentissage Si bruit dans les exemples ou trop peu d exemples, les performances des hypothèses produites peuvent se dégrader sur l ensemble de test, tout en restant excellentes sur l ensemble d apprentissage calage ou «overfitting» Plus précisément: l hypothèse h sur-apprend étant donné un ensemble d apprentissage D si il existe une autre hypothèse h telle que erreur_d(h) < erreur_d(h ) mais erreur_test(h) > erreur_test(h ) Causes: ensemble d apprentissage trop petit, bruit, coïncidence, Sur-apprentissage en apprentissage supervisé Elagage : on perd de la précision sur l ensemble d apprentissage, mais on gagne en terme de prédiction. A priori Sélectionner les attributs pertinents (i.e., utile à la construction du modèle). Pb: demande une mesure permettant de prédire quels attributs sont pertinents Pré-élagage : décide ou non de continuer à développer un certain nœud. On sélectionne un ensemble de validation V, et on stoppe quand la performance de h se dégrade sur V Post-élagage Construit le modèle complet, puis élague les éléments qui contribuent au sur-apprentissage Arbre de décision - même exemple Sur-apprentissage dans les arbres de décisions: exemple Arbre : Supposons qu arrive le nouvel exemple: <Soleil,Chaud, Elevée, Fort, oui> L arbre construit lui assigne une classe incorrecte Comment l arbre doit-il être mis à jour? Apprentissage d arbre de décision : Comment éviter le sur-apprentissage? 4.Techniques d élagage 4

Apprentissage d arbre de décision : Comment éviter le sur-apprentissage? A priori: Filtre d attribut, développement de wrapper pour la sélection de sous-ensembles d attributs pertinents. Pré-élagage : Arrête le développement de l'arbre avant que tous les exemples de l'ensemble d'apprentissage soient bien classés Post-élagage: Construire l arbre complet et enlever les nœuds qui sont non nécessaires Apprentissage d'arbres de décision et surapprentissage Méthodes pour évaluer les sous-arbres à élaguer (pre ou postpruning): Validation croisée : sélectionner un ensemble de validation pour évaluer l utilité de T Test statistique : évaluer si la régularité observée a une chance d être due au hasard (test du chi2 ou de fisher). Minimum Description Length (MDL) Complexité additionnelle de T plus grande que celle de retenir des exceptions? Compromis: coder le modèle contre coder l erreur résiduelle Reduced-Error Pruning (REP) Post-élagage, approche par Validation Croisée Enlever de sous-arbre de racine noeud Noeud devient une feuille (avec pour étiquette la classe majoritaire des exemples de ce noeud) Algorithme Reduced-Error-Pruning (D) Partitionner D en D_train (training / growing ), D_validation (validation / pruning ) Construire l'arbre complet T en utilisant ID3 sur D_train JUSQU'A CE QUE la précision sur D_validation baisse DO FOR chaque noeud interne candidat de T Temp[candidat] Elague(T, candidat) Précision[candidat] Test (Temp[candidat], D_validation) T T in Temp avec la meilleure précision (algorithme glouton) RETURN T (élagué) Effets de Reduced-Error Pruning Réduction de l erreur sur l ensemble de test NB: ATTENTION, D_validation est différent de Dtrain er Dtest Pour et contre +: Produit le plus petit sous-arbre de T le plus précis - : utilise moins de données pour construire T Etant donné le nb des exemples disponibles, peut-on se permettre d utiliser un D_validation? Elagage de règles Méthode très fréquemment utilisée Variantes utilisées dans C4.5 Indépendant de la manière dont les règles ont été obtenues Algorithme Rule-Post-Pruning (D) Construire un arbre de décision T sans élagage Convertir T en un ensemble de règles équivalentes (une pour chaque chemin de la racine à une feuille) Elague (généralise) chaque règle indépendamment en effaçant toutes les préconditions dont l effacement améliore l erreur apparente Trier les règles obtenues par leur précision Les appliquer dans l ordre à D_test Critères d évaluation de règles 5

Critères d évaluation de règles Sensibilité Spécifité Critères d évaluation de règles Proportion de Positifs (TP+FN) classés correctement : TP Sensibilité ou Rappel (Recall) = TP FN Proportion de Négatifs (TN+FP) classés correctement : TN Spécificité = TN FP Proportion des classés Positifs (TP+FP) correctement classés : TP Précision = TP FP Convertir un arbre de décision en règles Syntaxe d une règle : Prémisses : préconditions (conjonction des tests de la racine à une feuille) Conclusion : étiquette de classe Avantage des ensembles de règles vs. Arbres de décision Avantages Facile à comprendre Souvent de meilleurs résultats que les arbres de décision représentable en logique d ordre un possibilité d ajouter de la connaissance du domaine Inconvénients Pb si la taille de l ensemble d apprentissage augmente Pb si bruit dans les données Exemple : SI (Ciel = Soleil) et (Humidité = Elevée) ALORS PlayTennis = non SI (Ciel = Soleil) et (Humidité = Normale) ALORS PlayTennis = oui Extensions et Biblio Traitement des variables continues Traitement des valeurs manquantes en TP Référence biblio : T. Mitchell, Machine Learning, sections 3.6-3.8 6