PJE : Analyse de comportements avec Twitter Classification supervisée



Documents pareils
Projet SINF2275 «Data mining and decision making» Projet classification et credit scoring

Algorithmes d'apprentissage

Introduction au datamining

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

Introduction au Data-Mining

Raisonnement probabiliste

Apprentissage Automatique

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

Le Data Mining au service du Scoring ou notation statistique des emprunteurs!

données en connaissance et en actions?

Introduction au Data-Mining

Pourquoi l apprentissage?

L apprentissage automatique

APPORT DES RESEAUX BAYESIENS DANS LA PREVENTION DE LA DELINQUANCE

ESSEC. Cours «Management bancaire» Séance 3 Le risque de crédit Le scoring

Bases de données documentaires et distribuées Cours NFE04

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Soutenance de stage Laboratoire des Signaux et Systèmes

Lois de probabilité. Anita Burgun

Une méthode de classification supervisée sans paramètre pour l apprentissage sur les grandes bases de données

Cours de méthodes de scoring

Résumé des communications des Intervenants

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

Organisé par StatSoft France et animé par Dr Diego Kuonen, expert en techniques de data mining.

Qu est-ce qu une probabilité?

Travaux pratiques avec RapidMiner

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

Méthodes de Simulation

MASTER SIS PRO : logique et sécurité DÉTECTION D INTRUSIONS. Odile PAPINI, LSIS. Université de Toulon et du Var. papini@univ-tln.

Introduction aux outils BI de SQL Server Fouille de données avec SQL Server Analysis Services (SSAS)

Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé

Quantification Scalaire et Prédictive

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

Coup de Projecteur sur les Réseaux de Neurones

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

La classification automatique de données quantitatives

INF6304 Interfaces Intelligentes

Filtrage stochastique non linéaire par la théorie de représentation des martingales

Laboratoire 4 Développement d un système intelligent

L'intelligence d'affaires: la statistique dans nos vies de consommateurs

Conception d un lecteur de musique intelligent basé sur l apprentissage automatique.

Cours 1 : Qu est-ce que la programmation?

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

Arbres binaires de décision

Economie de l incertain et de l information Partie 1 : Décision en incertain probabilisé Chapitre 1 : Introduction à l incertitude et théorie de

INTRODUCTION AU DATA MINING

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

Classification non supervisée

4.2 Unités d enseignement du M1

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

Probabilité. Table des matières. 1 Loi de probabilité Conditions préalables Définitions Loi équirépartie...

Transmission d informations sur le réseau électrique

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

1 er Avril 2015 Data Science & Big Data Etat de l art Donner plus d intelligence aux données

Probabilités conditionnelles

Exercices sur le chapitre «Probabilités»

$SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU

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

Manipulation de données avec SAS Enterprise Guide et modélisation prédictive avec SAS Enterprise Miner

Réseaux bayésiens. 3 e édition Patrick Naïm, Pierre-Henri Wuillemin, Philippe Leray, Olivier Pourret, Anna Becker

Probabilités. C. Charignon. I Cours 3

LES GENERATEURS DE NOMBRES ALEATOIRES

Agenda de la présentation

Probabilités sur un univers fini

Rapport de Stage. Titre : Clustering à l aide d une représentation supervisée

ANALYSE STATISTIQUE PRÉDICTIVE

Théorie et Codage de l Information (IF01) exercices Paul Honeine Université de technologie de Troyes France

Table des matières. I Mise à niveau 11. Préface

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

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Évaluation et implémentation des langages

K. Ammar, F. Bachoc, JM. Martinez. Séminaire ARISTOTE - 23 octobre Palaiseau

Précision d un résultat et calculs d incertitudes

Travailler avec les télécommunications

Calculs de probabilités conditionelles

Analyses de Variance à un ou plusieurs facteurs Régressions Analyse de Covariance Modèles Linéaires Généralisés

Biostatistiques Biologie- Vétérinaire FUNDP Eric Depiereux, Benoît DeHertogh, Grégoire Vincke

TSTI 2D CH X : Exemples de lois à densité 1

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

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

Modélisation aléatoire en fiabilité des logiciels

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

Exercices supplémentaires sur l introduction générale à la notion de probabilité

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

I.D.S. Systèmes de détection d intrusion - Link Analysis. par: FOUQUIN MATHIEU. responsable: AKLI ADJAOUTE DEVÈZE BENJAMIN.

Baccalauréat S Antilles-Guyane 11 septembre 2014 Corrigé

Préparée au Laboratoire d'analyse et d'architecture des Systèmes du CNRS. Spécialité : Systèmes Automatiques. Par CLAUDIA VICTORIA ISAZA NARVAEZ

Espaces probabilisés

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

Introduction à l approche bootstrap

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

6. Hachage. Accès aux données d'une table avec un temps constant Utilisation d'une fonction pour le calcul d'adresses

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

LES MODELES DE SCORE

Les algorithmes de fouille de données

NON-LINEARITE ET RESEAUX NEURONAUX

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

Christophe CANDILLIER Cours de DataMining mars 2004 Page 1

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

TESTS D'HYPOTHESES Etude d'un exemple

Transcription:

PJE : Analyse de comportements avec Twitter Classification supervisée Arnaud Liefooghe arnaud.liefooghe@univ-lille1.fr Master 1 Informatique PJE2 2015-16 B. Derbel L. Jourdan A. Liefooghe 1

2

Agenda Partie 1: SVN & API Twitter (B. Derbel) Partie 3 (A. Liefooghe) 16/12: Rapport et soutenance Partie 2: Classif mots clés & knn (L.Jourdan) Classification bayésienne & analyse exp. Partie 4: Interface utilisateur (B. Derbel) 3

Agenda 03/11: C-TD & TP Classification bayésienne 10/11: C-TD & TP Classification bayésienne (variantes) 17/11: C-TD & TP Analyse expérimentale 4

Contenu Classification supervisée Classification bayésienne Exemple : Classification de texte 5

Sources et références Apprentissage artificiel : Concepts et algorithmes, A. Cornuéjols et L. Miclet Fouille de données, F. Decomité Fouille de données, P. Preux Apprentissage à partir d'exemples, F. Denis et R. Gilleron 6

Classification supervisée 7

Classification supervisée vs. non-supervisée Clustering Le but est de regrouper des objets similaires (pas d'attribut particulier) Fouille supervisée Il existe un attribut particulier : la classe Le but est de «deviner» la classe d'un exemple en ne connaissant que la valeur de ses autres attributs 8

Classification supervisée vs. non-supervisée Clustering On conserve toutes les données Fouille supervisée On modélise : les données servent à construire le modèle et sont (généralement) oubliées ensuite 9

2 types de classifieurs Classifieurs qui utilisent directement les exemples pour prédire la classe d une donnée Classifieurs pour lesquels on a d abord construit un modèle et qui, ensuite, utilisent ce modèle pour effectuer leur classification/prédiction 10

Problèmes Méthode d induction du classifieur? Comment utiliser le classifieur obtenu? Comment évaluer la qualité du classifieur obtenu : taux d erreur (ou de succès)? Comment traiter les attributs manquants dans le jeu d apprentissage? dans une donnée à classer? Comment estimer la tolérance au bruit? Le bruit concerne ici la valeur des attributs de l exemple avec lequel on construit le classifieur 11

Vocabulaire Classification : prévoir une classe discrète Prédiction : prévoir une valeur continue (degré de confiance) 12

Principe Une instance = une suite de valeurs d attributs et une classe (a1, a2,..., an, c) À l aide d un ensemble d exemples, on veut construire un modèle des données (classifieur, prédicteur,...) On demande à ce classifieur de trouver la classe de nouveaux exemples 13

Principe Modèle : découvrir la structure des données Quels sont les attributs importants pour deviner une classe? 14

Mode opératoire Etape 1 : Construction du modèle à partir de l ensemble d apprentissage (training set) Etape 2 : Evaluation de la qualité/précision du classifieur Etape 3 : Utilisation du modèle pour la classification de nouvelles instances 15

Schéma Nouvel exemple 3 Classifieur 3 Classe 2 Exemples 1 Algo 16

1 - Construction du modèle Chaque instance est supposée appartenir à une classe prédéfinie La classe d une instance est déterminée par l attribut «classe» L ensemble des instances d apprentissage est utilisé dans la construction du modèle Le modèle est représenté par des règles de classification, arbres de décision, formules mathématiques,... 17

2 - Évaluation du modèle Estimer le taux d erreur La classe connue d une instance test est comparée avec le résultat du modèle Taux d erreur = pourcentage de tests incorrectement classés par le modèle 18

3 - Utilisation du modèle Classification de nouvelles instances (inconnues) 19

Domaines d application Délivrance de crédit Diagnostic médical Prédiction du cours d une action Optimisation d un envoi de courrier... 20

La classification dans le processus du data-mining Collecte, préparation des données Données d apprentissage Évaluation, validation 21

Apprentissage On manipule : Des données Des hypothèses On veut trouver la meilleure hypothèse en fonction des données disponibles 22

Quelques méthodes de classification Arbres de décision : minimiser l erreur de classification Classification bayésienne (classifieur naïf, réseaux bayésiens) : hypothèse la plus probable Réseaux de neurones : minimiser l erreur quadratique... 23

Qu est-ce qu un bon classifieur? Intuition : classifieurs binaires discrets 4 cas Vrai positif : exp. positif classé positif Faux négatif : exp. positif classé négatif Vrai négatif : exp. négatif classé négatif Faux positif : exp. positif classé négatif 24

Matrice de confusion vrai classe classé positif négatif positif VP FP négatif FN VN total P N 25

Taux Proportion de positifs bien classés tp-rate = VP / P Proportion de négatifs mal classés fp-rate = FP / N 26

Figure 1 F B A = tous négatifs B = tous positifs tp-rate D C E C = k% positifs D = conservateur E < aléatoire A F = class. idéal 0 0 fp-rate 1 27

Classification bayésienne 28

Principe On doit inférer (deviner) des quantités gouvernées (décrites) par des probabilités : on veut se servir de ces probabilités pour guider l inférence Cadre plus général que la classification 29

Classification bayésienne À chaque hypothèse : On associe une probabilité (probabilité d être la solution) L observation d une (ou de plusieurs) instances peut modifier cette probabilité On peut parler de l hypothèse la plus probable, au vu des instances 30

Buts (possibles) Formaliser les méthodes et les intuitions Préciser la notion de plus probable Nouveaux algorithmes d apprentissage Analyse d autres algorithmes ne manipulant pas explicitement des probabilités 31

Classification bayésienne Approche probabiliste Basée sur les probabilités conditionnelles (et la règle de Bayes) Connaissances a priori Prévision du futur à partir du passé Suppose l'indépendance des attributs 32

Classification bayésienne Différente de l approche basée sur les fréquences! Fréquences : on estime la probabilité d'occurrence d un événement Bayésienne : on estime la probabilité d'occurrence d un événement sachant qu une hypothèse préliminaire est vérifiée (connaissance) 33

Probabilités La probabilité d un événement A est notée P(A) Elle est comprise entre 0 et 1 La probabilité d un événement certain vaut 1 La probabilité d un événement impossible vaut 0 Si A et B sont indépendants P(A B) = P(A) + P(B) P(non A) = 1 - P(A) 34

Probabilités conditionnelles P(A B) = Probabilité que l'événement A survienne si l'événement B survient P(A B) = P(A B) / P(B) P(A B) = P(A B) P(B) = P(B A) P(A) 35

Probabilités conditionnelles 36

Exemple 99% des sujets atteint d une maladie M sont positifs à un test de dépistage La maladie M touche 10% de la population Quelle est la fraction de la population des sujets malades positifs au test de dépistage? P(M)=0.1, P(T M)=0.99 P(T M) = P(T M) P(M) = 0.99 0.1 = 9.9% 37

Indépendance Deux événements sont indépendants si la connaissance de l un ne modifie pas la probabilité de l autre Si A et B sont indépendants, alors : P(A B) = P(A) Deux événements A et B sont indépendants si P(A B) = P(A) P(B), P(A), P(B) > 0 38

Théorème de Bayes P(A B) = P(A B) / P(B) P(A B) = P(B A) P(A) Donc, P(A B) = P(B A) P(A) / P(B) 39

Problématique On veut calculer, pour chaque classe, la probabilité pour que ce soit la solution, sachant qu on a observé (a1,...,an) Garder la meilleure Rejeter les hypothèses de probabilité nulle Tout garder (traitements ultérieurs) 40

Problématique Quelle est l hypothèse la plus probable, au vu de l ensemble d apprentissage? Pour une instance donnée, au vu de l ensemble d apprentissage, quelle sera la classification la plus probable de cet exemple? 41

Classifieur bayésien optimal Classification optimale si les probabilités de chaque hypothèse sont connues Pas souvent le cas : Trop d hypothèses, trop de calculs, trop d estimations Simplification? 42

Application à la classification P(ck a1,...,an) = P(a1,...,an ck) P(ck) / P(a1,...,an) P(a1,...,an ck), P(a1,...,an) et P(ck) peuvent être estimées sur les instances de l'ensemble d apprentissage 43

Application à la classification P(ck a1,...,an) = P(a1,...,an ck) P(ck) / P(a1,...,an) P(ck) proportion d instances de la classe ck P(a1,...,an) proportion d instances d attributs (a1,...,an) P(a1,...,an ck) nb fois où on rencontre (a1,...,an) dans les instances de la classe ck (vraissemblance) 44

Quelques observations P(c k a 1,...,a n ) = P(a 1,...,a n c k ) P(c k ) / P(a 1,...,a n ) P(c k a 1,...,a n ) croît quand P(c k ) croît : plus c k est probable, plus il y a de chances qu elle soit la classe P(c k a 1,...,a n ) croît quand P(a 1,...,a n c k ) croît : si (a 1,...,a n ) arrive souvent quand c k est la classe, alors il y a des chances que c k soit la classe P(c k a 1,...,a n ) décroît quand P(a 1,...,a n ) croît : si (a 1,...,a n ) est courant, il nous apprend peu sur c k 45

Classification bayésienne C = (c 1,...,c k ) ensemble de classes (chacune munie d une probabilité) (a 1,...,a n ) un ensemble d attributs Retourner la classe ayant la probabilité la plus forte après l observation de (a 1,...,a n ) Hypothèse Maximale A Posteriori : h MAP h MAP = argmax ck C P(a 1,...,a n c k ) P(c k )/P(a 1,...,a n ) 46

Hypothèses MAP, ML h MAP = argmaxck C P(a1,...,an ck) P(ck) / P(a1,...,an) P(a1,...,an) est constant hmap = argmaxck C P(a1,...,an ck) P(ck) Maximum de vraisemblance h ML = argmaxck C P(a1,...,an ck) 47

Classifieur bayésien naïf Appliquer le théorème de Bayes pour définir un algorithme de classification simple et efficace (en pratique) Caractéristiques : Classification supervisée Classes discrètes 48

Classifieur bayésien naïf On suppose que tous les attributs sont indépendants (eg. absence d information) P(a1,...,an ck) = P(ai ck) hmap = argmaxck C P(ai ck) P(ck) P(ai ck) estimé à partir de l ensemble d apprentissage 49

Classifieur bayésien naïf Attribut discret P(ai c) = nic / nc nic = nombre d instances de la classe c qui ont comme valeur ai pour l attribut considéré nc = nombre d instances de la classe c 50

Classifieur bayésien naïf Attributs binaires : 2n valeurs à estimer Attributs indépendants Naïf : hypothèse d indépendance (jamais vérifiée, simplification) Procédure sub-optimale, mais intérêt pratique Validité? Robustesse? 51

Classifieur bayésien naïf Soit X = (a1,...,an) l exemple à classer Estimer P(X ck) P(ck) pour chaque classe ck Affecter à X la classe ck telle que la probabilité P(X ck) P(ck) est la plus grande 52

Exemple: contrôle fiscal Faut-il effectuer un contrôle fiscal? Echantillon Contrôler? salaire impôts étudiant contrôle < 30 < 20 % oui négatif 30-50 < 20 % non positif 30-50 < 20 % oui positif 30-50 > 20 % non négatif > 50 < 20 % non positif 35 6 % oui? 53

Exemple: contrôle fiscal À classer : X = (sal=35, imp=6%,etu=oui) P(pos X)? P(neg X)? Positif : P(sal=30-50 pos) P(imp<20% pos) P(etu=oui pos) P(pos) = (2/3 1 1/3) 3/5 = 0.13 Négatif : P(sal=30-50 neg) P(imp<20% neg) P(etu=oui neg) P(neg) = (1/2 1/2 1/2) 2/5 = 0.05 On effectuera donc un contrôle! 54

Exemple: tennis Ciel, Température,Humidité,vent,Jouer? Soleil,Chaud,Forte,faible,Non Soleil,Chaud,Forte,Fort,Non Couvert,Chaud,Forte,faible,Oui Pluie,Doux,Forte,faible,Oui Pluie,Frais,Normale,faible,Oui Pluie,Frais,Normale,Fort,Non Couvert,Frais,Normale,Fort,Oui Soleil,Doux,Forte,faible,Non Soleil,Frais,Normale,faible,Oui Pluie,Doux,Normale,faible,Oui Soleil,Doux,Normale,Fort,Oui Couvert,Doux,Forte,Fort,Oui Couvert,Chaud,Normale,faible,Oui Pluie,Doux,Forte,Fort,Non 55

Exemple: tennis Quelle classe attribuer à : (Soleil,Frais,Forte,Fort)? 56

Exemple: tennis X = (Soleil,Frais,Forte,Fort) P(X oui) P(oui) = 2/9 3/9 3/9 3/9 9/14 = 0.00529 P(X non) P(non) = 3/5 1/5 4/5 3/5 5/14 oui non P(h) 9/14 5/14 Soleil 2/9 3/5 Frais 3/9 1/5 Forte 3/9 4/5 Fort 3/9 3/5 = 0.02057 57

Exemple: tennis Confiance accordée à la classification P(non X) = 0.02057 / (0.02057+0.00529) = 0.795 58

Remarques Pas de construction de modèle Pas d explication Efficacité comparable à celle d autres algorithmes 59

Qualités du classifieur bayésien naïf Prédiction : comparable aux autres algorithmes Vitesse : linéaire en apprentissage, constant en classification Robustesse (bruit) : très bonne Changement d échelle : les exemples ne sont pas en mémoire centrale mémoire = nb attributs x nb classes) Lisibilité : nulle (occupation 60

Aller plus loin...? Deux cas extrêmes Hypothèse d indépendance des attributs : classifieur naïf, programmable mais approximatif Dépendance des attributs deux-à-deux : trop complexe 61

Aller plus loin...? Certains attributs sont liés par l intermédiaire de la classe (ou d un autre attribut) Fixer un petit nombre de dépendances entre les attributs 62

Classification de texte 63

Classification de textes Algo basé sur le classifieur bayésien naïf Simplifications supplémentaires Modèle de données modifié Classification supervisée Méthode efficace, mise en œuvre facile 64

Classification de textes Les exemples sont des textes, munis d une classe : Lettres : {V. Hugo, Napoléon} quel auteur? AFP{sujets} quel sujet? News {Newsgroups} quel groupe? Mails : {Spam, Non Spam} filtrer (certains filtres d emails performants) 65

Classification de textes Comment transformer un texte brut en schéma (attributs,valeurs)? Quel sens donner à P(ck A), A étant un texte? 66

Représentation Texte : suite de caractères, lettres, chiffres, ponctuation, espaces,... Représentation pour classification bayésienne? Attributs? 67

Première possibilité Schéma (attributs,valeurs) Un attribut est une position dans le texte Valeur de l attribut : le mot présent en cette position Exemple : il était une fois... a1 a2 a3 a4 P(c k ) P(a 1 = il c k ) P(a 2 = était c k )... 68

Première possibilité Remarques P(a1= il ck) grand quand ck = conte Hypothèse d indépendance très simplificatrice (voir fausse!) : il était une fois caractéristique des contes Simplification nécessaire Probas sur les mots, pas sur les textes 69

Première possibilité Quel sens donner à P(c k A)? Impossible! P(a i =w j c k ) a i : position dans le texte 100 positions w j : mot du texte 20000 mots c k : classe 2 classes 4 millions de probabilités à estimer! Il faudrait plus de 4 millions de textes! 70

Deuxième possibilité La probabilité de rencontrer un mot dans un texte est indépendante de sa position Attribut = mot du vocabulaire Booléen : présence/absence du mot On ne se préoccupe ni de l ordre de mots, ni de leur organisation dans le texte, ni de leur nombre d occurrences 71

Deuxième possibilité P(ai=mj ck) = P(mj ck) = njk / nk njk : nombre de fois où le mot mj apparaît dans un texte de la classe ck nk : nombre total de mots des textes de la classe ck 72

Représentation Abstraction de l ordre des mots, de la syntaxe, et de la sémantique des textes 73

Classification de textes Texte suite de mots sac de mots Algorithme (apprentissage) : Pour chaque classe ck, estimer P(ck) = nk / n nk : nombre de textes de la classe ck n : nombre total de texte Pour tout mot mj, estimer P(mj ck) 74

Classification de textes Algorithme (classification) : D : texte à classifier Pour chaque mot m j de D P(m j c k ) pour chaque classe c k Pour chaque classe c k P(c k D) = j D P(m j c k ) P(c k ) Retourner la classe c k maximisant P(c k D) 75

Classification de textes Complexité : O(n log(n)), avec n nombre de mots total (recherche d un mot) Simplifications abusives? Efficace? 76