Apprentissage automatique et fouille de données (part 3)

Documents pareils
Coup de Projecteur sur les Réseaux de Neurones

4.2 Unités d enseignement du M1

L utilisation d un réseau de neurones pour optimiser la gestion d un firewall

Optimisation de la compression fractale D images basée sur les réseaux de neurones

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

L apprentissage automatique

Chapitre 6 Apprentissage des réseaux de neurones et régularisation

Machines virtuelles Cours 1 : Introduction

Théorie et codage de l information

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Christophe CANDILLIER Cours de DataMining mars 2004 Page 1

Continuité et dérivabilité d une fonction

CHAPITRE I. Modélisation de processus et estimation des paramètres d un modèle

La classification automatique de données quantitatives

Algèbre binaire et Circuits logiques ( )

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

Druais Cédric École Polytechnique de Montréal. Résumé

Détection de la défaillance des entreprises tunisiennes par la régression logistique semi paramétrique et les réseaux de neurones

Chp. 4. Minimisation d une fonction d une variable

Projet de Traitement du Signal Segmentation d images SAR

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

chargement d amplitude variable à partir de mesures Application à l approche fiabiliste de la tolérance aux dommages Modélisation stochastique d un d

Programmation linéaire

ALGORITHME GENETIQUE ET MODELE DE SIMULATION POUR L'ORDONNANCEMENT D'UN ATELIER DISCONTINU DE CHIMIE

Analyse de grandes bases de données en santé

Résolution d équations non linéaires

Une comparaison de méthodes de discrimination des masses de véhicules automobiles

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

CONCOURS D ENTREE A L ECOLE DE 2007 CONCOURS EXTERNE. Cinquième épreuve d admissibilité STATISTIQUE. (durée : cinq heures)

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

Méthodes de quadrature. Polytech Paris-UPMC. - p. 1/48

Pourquoi l apprentissage?

Apprentissage Automatique

Modélisation du comportement habituel de la personne en smarthome

Remerciements : Avant tout, louange à Dieu le tout puissant de m avoir aidé et permis d achever ce modeste travail.

Programmation Linéaire - Cours 1

IFT1215 Introduction aux systèmes informatiques

Méthodes de Simulation

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

ANALYSE STATISTIQUE PRÉDICTIVE

SudoClick Reconnaissance de grilles de sudoku pour téléphones portables

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Limitations of the Playstation 3 for High Performance Cluster Computing

Simulation de variables aléatoires

Cours de Master Recherche

Analyse stochastique de la CRM à ordre partiel dans le cadre des essais cliniques de phase I

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

Conception de réseaux de télécommunications : optimisation et expérimentations

intelligence artificielle et cognitique"

Programme scientifique Majeure INTELLIGENCE NUMERIQUE. Mentions Image et Réalité Virtuelle Intelligence Artificielle et Robotique

Health Monitoring pour la Maintenance Prévisionnelle, Modélisation de la Dégradation

Outils pour les réseaux de neurones et contenu du CD-Rom

Les algorithmes de fouille de données

Processus d Informatisation

L exclusion mutuelle distribuée

Figure 3.1- Lancement du Gambit

Quatrième partie IV. Test. Test 15 février / 71

Master d Informatique M1 Université Paris 7 - Denis Diderot Travail de Recherche Encadré Surf Bayesien

Identification de nouveaux membres dans des familles d'interleukines

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

L ANALYSE EN COMPOSANTES PRINCIPALES (A.C.P.) Pierre-Louis GONZALEZ

Introduction au datamining

Master IAD Module PS. Reconnaissance de la parole (suite) Alignement temporel et Programmation dynamique. Gaël RICHARD Février 2008

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Algorithmes d'apprentissage

Théorie des Jeux Et ses Applications

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Conversion d un entier. Méthode par soustraction

Hubert & Bruno Lundi 12 octobre 2009 SAINT-QUENTIN (02)

Optimisation et programmation mathématique. Professeur Michel de Mathelin. Cours intégré : 20 h

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

Objets Combinatoires élementaires

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

LES DIFFÉRENTS FORMATS AUDIO NUMÉRIQUES

COURS SYRRES RÉSEAUX SOCIAUX INTRODUCTION. Jean-Loup Guillaume

Sommaire. Introduction Définition Historique Domaine d application.2. 4.Les Travaux réalisés sur les domaines d application.

Appel à manifestation d intérêt

ASR1 TD7 : Un microprocesseur RISC 16 bits

Résumé des communications des Intervenants

Les algorithmes de base du graphisme

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

APPORT DES RESEAUX BAYESIENS DANS LA PREVENTION DE LA DELINQUANCE

Contributions à l expérimentation sur les systèmes distribués de grande taille

La programmation à mémoire adaptative ou l évolution des algorithmes évolutifs

Programmation par contraintes. Laurent Beaudou

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

Algorithmique des Systèmes Répartis Protocoles de Communications

Chapitre 3 : Principe des tests statistiques d hypothèse. José LABARERE

Compression et Transmission des Signaux. Samson LASAULCE Laboratoire des Signaux et Systèmes, Gif/Yvette

Analyse de la vidéo. Chapitre La modélisation pour le suivi d objet. 10 mars Chapitre La modélisation d objet 1 / 57

Renforcement des trois compétences : compréhension orale, expression orale et expression écrite à partir de documents et vidéos.

Première partie. Préliminaires : noyaux itérés. MPSI B 6 juin 2015

Plan. Data mining (partie 2) Data Mining : Utilisateur ou Statisticien? Data Mining : Cocktail de techniques. Master MIAGE - ENITE.

Théorèmes de Point Fixe et Applications 1

Projet Active Object

Calculs de probabilités conditionelles

Arbres binaires de décision

Introduction au Data-Mining

Transcription:

Apprentissage automatique et fouille de données (part 3) Telecom Saint-Etienne Elisa Fromont 1

Apprentissage par optimisation Apprentissage par exploration Induction de règles par couverture séquentielle PLI Inférence grammaticale Apprentissage par optimisation SVM (surfaces séparatrices linéaires) Apprentissage de réseaux connexionnistes Arbres de décision Réseaux bayésiens Modèles de Markov cachés (HMM) A la limite : Apprentissage par évolution simulée Approches symboliques Les résultats de l apprentissage sont interprétables Approches numériques traiter directement des données sous forme de nombres - Avantage : méthodes souvent beaucoup plus efficaces - Inconvénient : résultats (modèles prédictifs ou descriptifs) beaucoup plus difficiles à interpréter (pas toujours une traduction symbolique possible) 2

Apprentissage de réseaux connexionnistes (= réseaux de neurones artificiels) 1943 : présentation par W. MC Culloch (chercheur en neurologie américain) et W. Pitts du neurone formel, abstraction du neurone physiologique. 1958 : F. Rosenblatt développe le modèle du perceptron = réseau de neurones possédant deux couches de neurones : une première couche relative à la perception et une seconde liée à la prise de décision L objectif initial (cognitivisme) : analyse des différentes étapes du processus en jeu dans la production d une pensée rationnelle afin de tenter d en reproduire les aspects les plus complexes. 3

Composant d un réseau : neurone Réseaux : modélisés selon les systèmes neuronaux biologiques Système complexe construit à partir d unités simples 1 unité = neurone formel - Plusieurs entrées et sorties permettent de le connecter à d autres neurones - Quand le signal d entrée est suffisamment fort (= activation), le neurone se déclenche (i.e., il propage le signal) - Valeurs manipulées réelles ou binaires (0/1 ou -1/1) - Le calcul des «sorties» en fonction des «entrées» peut-être déterministe ou probabiliste 4

Réseaux connexionnistes Constitués de : neurones connections entre neurones (peuvent être pondérées) entrées / sorties Les réseaux peuvent apprendre à associer les entrées et sorties des neurones en adaptant les poids Ex (classification) : - Entrées : pixels d une photo - Sorties = classification d une photo (personne? arbre? ) Types de réseaux : feed forward : neurones connectés dans un sens (orientés de l'entrée vers la sortie) récurrents : sortie d un neurone utilisée comme entrée d'un neurone d une «couche» précédente 5

Le perceptron (à seuil) [1958] Type le plus simple de réseaux de neurones Simule 1 neurone Entrée : vecteur X de R d = (x 1,, x d ) + un vecteur de poids w = (w 1,, w d ) associé à chaque information Sortie O = égale à 1 si la somme des (entrée poids) est strictement supérieure à une valeur seuil θ (aussi appelé biais), 0 sinon Pour homogénéiser les notations, on peut voir le seuil θ comme une entrée normale de coefficient x 0 (souvent pris égal à 1) de poids w 0 (qui donne la valeur du seuil w 0 = -θ). Schématiquement : x 1 x 2 x 3 x 4 x 5 w 1 w 5 θ O = 1 si σ > θ O = 0 (ou -1) sinon calcule σ = w i x i 6

Perceptron à deux entrées Entrée représentée dans un espace 2-D Le perceptron apprend une fonction de la forme : Si w1x1 + w2x2 -w0x0 (ax+by >c) alors +, sinon - i.e., crée une séparation linéaire entre les classes + et - + - 7

Perceptrons à n entrées En général, les perceptrons construisent un hyperplan dans un espace à n dimensions Un coté de l hyperplan = +, autre coté = - Classes doivent être linéairement séparables pour pouvoir être apprises par un perceptron Ex : apprentissage de fonctions booléennes encoder vrai/faux comme 1, 0 Y a t-il un perceptron permettant d encoder : 1. A B? 2. A B? 3. A xor B? 0,1 1,1 0,0 1,0 8

Fonctions de transfert (ou fonctions d activation) (a) : seuil (fonction de Heavyside) (b) : linéaire par morceaux (c) : sigmoïde g(x) = (1 + e βx ) - 1 (d) : gaussienne 9

Fonction de sortie : sigmoïde Change de manière continue (au lieu d une seule fois pour la fonction seuil) Offre des avantages pour entrainer des réseaux multicouche x 1 x 2 x 3 x 4 x 5 w 1 w 5 f ( x) 1 = 1 + e x f(x) 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0-3 -2-1 0 1 2 3 X 10

Fonctions de sortie non linéaires La fonction sigmoïde (non linéaire) permet d obtenir des séparations non linéaires e.g., 5 aires pour 5 classes a,b,c,d,e Représentation très puissante Comparée aux surfaces de décisions créées par les arbres de décision, IBL,... e c b d a 11

Apprentissage de réseaux connexionistes Protocole : Données présentées séquentiellement (apprentissage incrémental) Suite des données utilisées (> nb d exemples) : - Tirage aléatoire avec remise dans l ensemble des exemples disponibles - Plusieurs passages successifs sur la totalité de cet ensemble Codage des exemples : Entrée : vecteur x de R d = (x 1,, x d ) Sortie désirée : vecteur u T = (u 1,,u C ) ( C = nombre de classes du problème) Exemple z = (x,u) : si l exemple est de la classe 1, u 1 = 1 et u T = (1, 0, 0,, 0) Algorithme : pour chaque neurone, comparer le résultat qui était attendu pour les exemples avec le résultat obtenu puis minimiser l'erreur quadratique commise en modifiant les poids 12

Apprentissage à partir du perceptron : Algorithme de Widrow-Hoff = apprentissage par correction d erreur si α = 1 (appelé descente de gradient si α 1) Idée : on modifie les poids de i = α*(u - y)*xi après chaque exemple Inconvénient : mieux (plus efficace) mais attention au sur-apprentissage si répété trop de fois Entrée : n poids (w 1, w n ) reliant les n entrées à notre neurone ayant des valeurs quelconques prises aléatoirement m exemples (x,u) où x est un vecteur à n composantes x i et u son vecteur de classe Le taux d'apprentissage alpha α (0 α 1 : arbitraire) Sortie : les n poids modifiés POUR TOUT exemple = (x,u) Calculer la sortie y du neurone POUR 1 <= i <= n wi = wi + α*(u- y)*xi FIN POUR FIN POUR 13

Ex : apprentissage du OU les descriptions appartiennent à {0,1} 2, les entrées du perceptron appartiennent à {0,1} 3, la première composante correspond à l'entrée x 0 et vaut toujours 1, les deux composantes suivantes correspondent aux variables x 1 et x 2. On suppose qu'à l'initialisation, les poids suivants ont été choisis : w 0 =0 ; w 1 = 1 et w 2 = -1. On suppose que les exemples sont présentés dans l'ordre lexicographique. α = 1. Etiquette de sortie l exemple étape w 0 w 1 w 2 Entrée Σ 0 2w i x i o c w 0 w 1 w 2 init 0 1-1 1 0 1-1 100 0 0 0 0+0x1 1+0x0-1+0x0 2 0 1-1 101-1 0 1 0+1x1 1+1x 0-1+1x1 3 1 1 0 110 2 1 1 1 1 0 4 1 1 0 111 2 1 1 1 1 0 5 1 1 0 100 1 1 0 1+(-1)x1 1+(-1)x0 0+(-1)x0 6 0 1 0 101 0 0 1 0+1x1 1+1x0 0+1x1 7 1 1 1 110 2 1 1 1 1 1 8 1 1 1 111 3 1 1 1 1 1 9 1 1 1 100 1 1 0 1+(-1)x1 1+(-1)x0 1 +(-1)x0 10 0 1 1 101 1 1 1 0 1 1 14 Plus aucune modification des poids à partir de là.

Théorème Si l échantillon d entrée S est linéairement séparable et si les exemples sont présentés équitablement (la procédure du choix des exemples n en exclut aucun), la procédure d apprentissage par correction d erreur converge vers un perceptron linéaire à seuil qui calcul S. (preuve admise ) Que se passe-t-il si l échantillon d entrée n est pas linéairement séparable?? pas de convergence. 15

Réseau multicouche Approxime n importe qu elle fonction f : R d R C Augmente la puissance de représentation en combinant des neurones en un réseau Couche de sortie -1-1 +1-1 sortie Couche cachée +1 +1 Entrées -1-1 X Y neurone 1 neurone 2 16

Architecture multicouche feedforward Chaque couche a pour entrées les sorties de la couche précédente (couche inférieure) Les unités d une couche sont reliées à toutes celles de la couche supérieure Couches successives = différentes représentations des entrées Souvenez vous de l importance des représentations... Les réseaux à deux couches sont très populaires (ex : le réseau du T précédent possède 2 couches de neurones) 17

1 couche vs multicouche 18

Transmission de l information dans un réseaux multicouche Règle de propagation : σj = w(0,j) + i source(j) w(i,j) yi Source(j) Dest(j) 1 1 i w(i,j) j w(j,k) k n m Pour la couche d entrée σi = xi w(0,j) 0 19

Apprentissage par réseaux connexionnistes algorithme de retropropagation du gradient Minimise l erreur par descente de gradient (cf : perceptron) Principe : l erreur à une sortie d une couche est attribuée 1. aux poids des connections avec cette couche Adapter ces poids 2. aux entrées de cette couche (sauf pour la première) - Rétro-propager l erreur aux entrées - Utiliser le même principe pour adapter les poids de la couche précédente Processus itératif, peut être lent Source(j) 1 w(i,j) i n 0 j w(0,j) Dest(j) 1 w(j,k) k m 20

Algorithme : utilisation de la règle du généralisée (pas prouvée ici) Règle dictant le changement de poids entre le neurone i et le neurone j w(i,j) = α*δj*yi = proportionnelle à une mesure d erreur δj caractéristique du neurone j et à la valeur d entrée yi Pour les connexions aboutissant aux neurones de sortie : δj = (uj yj) yj (1-yj) Calcul de l erreur aux unités cachés récursivement par descente de gradient : δj = yj (1-yj) k dest(j) δk w(j,k) 21

Algorithme du perceptron multicouche TANT QUE l apprentissage n a pas convergé FAIRE tirer au hasard un exemple d apprentissage POUR chaque couche en partant de la dernière couche FAIRE POUR chaque neurone de cette couche FAIRE calculer δj POUR chaque connexion w(i,j) menant au neurone j FAIRE calculer w(i,j) = α*δj*yi fin POUR fin POUR fin POUR POUR chaque connexion w(i,j) faire w(i,j) w(i,j) + w(i,j) fin POUR fin TANT QUE 22

Intérêt des réseaux connexionistes Utiles pour modéliser des fonctions complexes, non linéaires dont les entrées/sorties sont numériques Les entrées/sorties symboliques sont représentables en utilisant un encodage spécial cf. true/false = 1/-1 Les réseaux à 2 ou 3 couches peuvent approximer un très grand nombre de fonctions (si il y a suffisamment de neurones dans les couches cachées) Robuste au bruit Mais : risque de sur-apprentissage! - Si l apprentissage est trop long - Evité grâce à l utilisation d un ensemble de validation Exemples d utilisation: typique: reconnaissance d image, reconnaissance de la parole, - ex: images: une entrée par pixel (voir http://www.cs.cmu.edu/~tom/faces.html ) Moins typique : problèmes symboliques - cas où les arbres de décisions fonctionneraient aussi - les performances des réseaux et des arbres sont comparables 23

Limitations Comment choisir l architecture d un réseau?? Nombre de neurones cachés? Nombre de couches cachées? Interconnections? Construction ad hoc, essai/erreur, méthodes heuristiques (ne trouvent pas forcement l architecture idéale) Algorithmes constructifs (on part d un réseau minimal et on ajoute des neurones et des couches) ex : utilisation d algorithmes génétiques Comment choisir les paramètres? α? (par exemple utilisation d algorithmes génétiques) Pouvoir explicatif des réseaux très limité ( boîte noire ) Modèle = poids dans un réseau Pas d explication simple de la raison pour laquelle un réseau fait une certaine prédiction - Contraste avec par ex : arbres de décisions (peuvent fournir la règle qui a été utilisée) Les réseaux ne sont pas facilement convertibles en modèles symboliques (arbres, ensemble de règles) 24

Applications: Optical Character Recognition 25

Applications industrielles Reconnaissance de codes postaux (AT&T, la Poste) Contrôle de paramètres de processus de production industrielle de pâte à papier (Siemens) Prévision de consommation d eau (Générale des eaux) Logiciels d aide à la décision Prévisions météorologiques 26

Exercice (construction «à la main») 1. Construire un perceptron à seuil à deux entrées qui implémente la fonction booléenne A B 2. Construire un réseau à 2 couches qui implémente A XOR B 27

Exercice 3. Pour un vecteur d entrée X T =(x1, x2) = (1,1), α= 1, u = 0, fonction sigmoïde Calculer la valeur des sorties à chaque neurone Calculer la valeur des nouveaux poids/sorties après une étape de rétropropagation x2 x1 X0=1 w(1,4) w(1,3) w(2,4) w(2,3) w(0,4) w(0,3) X0=1 4 3 w(4,5) w(3,5) w(0,5) 5 w(0,3) = 0,2 w(0,4) = -0,3 w(0,5) = 0,4 w(1,3) = 0,1 w(1,4) = -0,2 w(3,5) = 0,5 w(2,3) = 0,3 w(2,4) = 0,4 w(4,5) = -0,4 28