• Aucun résultat trouvé

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

N/A
N/A
Protected

Academic year: 2022

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

Copied!
44
0
0

Texte intégral

(1)

Data Mining

Master 2 Informatique UAG

U. Fayyad, G. Piatetsky-Shapiro, P. Smyth, R. Uthurusamy, editors, Advances in Knowledge Discovery and Data Mining, AAAI/MIT Press, 1996

Gilbert Saporta, Data mining et statistique décisionnelle, Éditions Technip, 2005.

Jiawei Han, Micheline Kamber, Data Mining : Concepts and Techniques, Morgan Kaufmann, David T. Connolly & C.

Begg, Systèmes de bases de données, Eyrolles, 2005.

Ian Witten and Eibe Frank, Data Mining, Practical Machine Learning Tools and Techniques, 2nd edition, Morgan Kaufman, 2005.

David Hand, Heikki Mannila, Padhraic Smith, Principles of Data Mining, MIT Press, 2001.

Bibliographie (1)

Bibliographie (2)

Cynthia Gibas et Per Jambeck, Introduction à la bioinformatique, O'Reilly, 2001.

Anna Tramontano, Introduction to Bioinformatics, Chapman &

Hall/CRC, 2006.

Jason Wang, Mohammed Zaki, Hannu Toivonen and Dennis Shasha, Data Mining in Bioinformatics, series: Advanced Information and Knowledge Processing, Springer, 2005.

Marcus A. Maloof, Machine Learning and Data Mining for Computer Security: Methods and Applications (Advanced Information and Knowledge Processing), Springer, 2006.

Jaideep Vaidya, Chris Clifton, Michael Zhu, Privacy Preserving Data Mining (Advances in Information Security), Springer, 2006.

Sites (1)

KD Nuggets

http://www.kdnuggets.com/

The Data Mine

http://www.andypryke.com/university/TheDataMine.html Conférences – Journaux

ACM SIGKDD - Knowledge Discovery and Data Mining ACM Special Interest Group http://www.acm.org/sigkdd/

DMKD http://www.kluweronline.com/issn/1384-5810

Sites (2)

Systèmes

SPSS (SPSS Clementine)

http://www.spss.com/SPSSBI/Clementine/

SAS (Entreprise Miner) http://www.sas.com/

RapidMiner http://rapid-i.com Weka

http://www.cs.waikato.ac.nz/~ml/

BioConductor

http://www.bioconductor.org/

Plan du cours

1.  Principes

2.  Exemples d'application 3.  Tâches standard 4.  Datawarehousing 5.  Pré-traitement

6.  Classification supervisée

(2)

Fouille de données ou : - Data Mining

- Knowledge Discovery in Databases (KDD)

- Extraction automatique de connaissances à partir de données (ECD)

1.1 - Introduction Motivation

Explosion du volume des données

  outils et technologie de stockage performants

  recueil de données volumineux (transactions de ventes, cartes de crédit, images …) : giga et tera- octets

  Wal-Mart : 20 millions de transactions, 483 processeurs parallèles

  nécessité d'en tirer des connaissances utiles

Domaine connexe : Data Warehousing

"data rich but information poor situation"

Data Warehousing : technologies comprenant extraction, pré-traitement, chargement Extract, Transform, Load (ETL) nettoyage

intégration/agrégation des données interrogation des données agrégées On Line Analysis Processing (OLAP)

Une définition du data mining

"un processus non trivial d'extraction de modèles valides, nouveaux, potentiellement utiles et compréhensibles à partir de données "

(Fayyad 1996)

  non pas décrire et vérifier des hypothèses mais, générer une hypothèse

en recherchant des modèles

1.2 - Exemples d'application et types de problème (1)

  Marketing

Marketing ciblé, CRM (Customer Relationship Management), Ventes croisées, Segmentation des marchés

  Quel type de clients achètent quels types de produits?

  Y-a-t-il des liens de causalité entre l’achat d’un produit P et d’un autre produit P’?

  Quel est le comportement des clients au cours du temps o  utiliser des données recueillies pour un produit similaire o  recherche d'associations/correlations entre produits o  chercher des segments parmi clients

Domaine d'application et types de problème (2)

  Analyse et gestion des risques, Détection de fraudes Assurance,

Domaine Bancaire : cartes de crédit, accord de crédit Telecommunications

Systèmes informatiques, Réseaux

  Peut-on caractériser les assurés qui font des déclarations d’accident frauduleuses?

  Détecter l'utilisation de cartes de crédit frauduleuse

  Quels sont les clients "à risque" pour l'accord de crédit?

(3)

Domaine d'application et types de problème (3)

  Santé, Médécine

  Etude de l'influence de certaines médications sur l’évolution d’une maladie

  Recherche des médicaments les plus efficaces

  Astronomie

Domaine d'application et types de problème (4)

  Sécurité informatique

Détection traditionnelle basée sur des signatures connues Détecter automatiquement de nouvelles intrusions

  Différencier intrusion et mauvaise utilisation :

  Classifier les intrusions

  Chercher des modèles prédictifs de mauvaises utilisations

  Construire des profils normaux, des séquences fréquentes

  Identifier des déviations dans les comportements

Domaine d'application et types de problème (5)

  Biologie - Génomique

Analyse des données d'expression de biopuces (micro-arrays)

  Identifier des similarités dans des séquences d’ADN

  Rechercher le rôle de certains gènes dans une pathologie

  Rechercher le rôle de certains gènes dans l'effet de médications

  Rechercher des gènes qui s'expriment de la même manière

Domaine d'application et types de problème (4)

  Télécommunications

  Problème du churn

  Recherche d'anomalies sur un réseau

  Web Mining

  Etudier le contenu, la structure ou l’usage des pages web

  Text mining (news group, email, tous documents)

  E-learning

Un exemple en marketing

Une compagnie de téléphone mobile doit tester sur le marché un nouveau produit ; le produit ne peut être offert initialement qu'à quelques centaines d'abonnés.

Il est exclus d'envoyer un courrier à tous les abonnés

Il faudrait pouvoir "prédire" qui va probablement acheter le produit Expérience passée : 2 à 3% des clientssont à même de répondre

positivement en achetant le produit

Pour 500 réponses positives : sans modèle, il faut entre 17000 et 25000 prospects

Un exemple en marketing (suite)

apprentissage par l'exemple

  ensemble d'apprentissage : ensembles des enregistrements obtenus lors du lancement d'un produit similaire

  préparation des données : choix des données entre 3 bases de données (appels détaillés, marketing, données démographiques) construction de plusieurs champs ajoutés comme les minutes

d'utilisation, la fréquence des appels, …

  phase de data mining : extraction d'un modèle qui décrit les clients probables du nouveau produit

  évaluation et interprétation du modèle

  mise en œuvre (déploiement)

(4)

  Comprendre le problème

connaissance du domaine, buts poursuivis, données disponibles, déploiment des résultats

  Explorer : visualiser, questionner

  Créer le réservoir de données

Nettoyage et Intégration (60% du travail) Réduction et Transformation

  Choisir la(les) fonctionnalité(s)

description, classification, classement, regression, association,

  Choisir la (les) méthodes (algorithmes)

  Effectuer l'extraction : recherche des modèles intéressants

  Evaluation du modèle

  Présentation des résultats

Les étapes du processus (1) CRISP-DM: Data Mining Process

Business

understanding Data evaluation

Data preparation

Modeling Evaluation

Deployment Data

Les étapes du processus (2)

Nettoyage

Intégration

Entrepôt Sélection et transformation Data Mining

Evaluation

Connaissances

Quelles types de données sont fouillées?

  BD relationnelles

  Datawarehouses : relationnel, cube multi-dimension

  Données de transactions

  BD orientées objet, spatiales, multimedia, textuelles

  Données temporelles et séries temporelles

  Données du Web

mais le plus souvent, pré-traitées et intégrées dans une table sur laquelle la recherche d'un modèle est réalisée

1.3 - Les différentes tâches/modèles

Objectif : Décrire ou Prédire

  Description : Caractérisation – Discrimination

  requêtes SQL

  requêtes OLAP

  description analytique

  mesures statistiques

Les différentes tâches/modèles (2)

  Analyse d'association (corrélation et causalité) : découvrir des règles d'association :

X  Y

où X et Y sont des conjonctions de termes attributs-valeurs ou des prédicats

pain=1 et café=1  beurre=1 [support = 5%, confiance = 70%]

age>20 et age<29 et revenu>1000  achètePC="oui"

[support = 2%, confiance = 60%]

(5)

Les différentes tâches/modèles (3)

  Classification ou Apprentissage non supervisé (clustering) trouver des groupes ou classes d'objets tels que la similarité intra-classe est élevée et la simlilarité inter-classes est faible (pas de variable identifiant la classe)

segmentation des clients cluster de gènes

Les différentes tâches/modèles (4)

  Classement/Prédiction ou Apprentissage supervisé (supervised classification)

apprendre une fonction qui associe une donnée à une classe prédéfinie

classer les clients "vagabonds" en fonction de leurs caractéristiques prédire un comportement frauduleux

  Recherche de séquences temporelles

  Analyse de flux

  Analyse de déviations

  Recherche de correlations

Autres fonctionnalités du data mining 1.4 - Data Warehousing

  Qu’est-ce qu’un data warehouse?

  Un modèle de données multi-dimensions

  Opérations OLAP typiques

  Architecture d’un data warehouse

Qu’est-ce qu’un data warehouse?

  Un réservoir de données maintenu indépendant des BD opérationnelles, permettant d'organiser et de consolider les données disparates d’une même organisation et d'en faciliter l'analyse

  Un DW doit être capable d'incorporer toutes les données disponibles d'une organisation

  Data warehousing : processus de construction (intégration) et de mise en œuvre d'un DW (outils OLAP)

BD opérationnelles vs DW

  BD opérationnelles :

  OLTP et gestion des requêtes

  opération journalières des utilisateurs

  manipulent des données courantes

  se réfèrent souvent à un modèle conceptuel EA

  opèrent par transactions courtes

  DW :

  support pour l'analyse de données et l'aide à la décision

  manipulent des données d'archive

  peuvent présenter les données selon différentes dimensions permettent l'agrégation et manipulent les données à divers degrés de granularité (OLAP)

  se réfèrent souvent à un modèle conceptuel en étoile ou flocon

(6)

1.5 - Préparation des données

  Nécessité de préparer les données Données réelles endommagées

Incomplètes, Bruitées, Incohérentes

  Nettoyage

  Intégration et transformation

  Réduction

  Discrétisation

Tâches principales pour la préparation

  Nettoyage

compléter les valeurs manquantes, lisser les données bruitées, supprimer les déviations, et corriger les incohérences

  Intégration

intégrer des sources de données multiples

  Transformation

normaliser (ex. pour le calcul de distances)

  Réduction

réduire le volume des données (agréger, supprimer une dimension…)

  Discrétisation

pour les attributs numériques, permet de réduire le volume

Valeurs manquantes

on peut

  ignorer le tuple

  compléter la valeur à la main

  utiliser une constante globale

  utiliser la valeur moyenne

  utiliser la valeur moyenne pour les exemples d'une même classe

  utiliser la valeur la plus probable

Données bruitées

on peut

  trier et partitionner (discrétiser)

  classifier (exceptions)

  appliquer un modèle de prédiction (ex : une fonction de régression)

Données bruitées

Partitionnement et Lissage

les valeurs triées sont réparties

  en largeur (distance)

  la suite triée est partitionnée en N intervalles de même amplitude

  amplitude de chaque intervalle W = (max -min)/N.

  solution la plus simple, mais les exceptions peuvent dominer

ou

  en profondeur (fréquence)

  la suite triée est partitionnée en N intervalles contenant le même nombre d'exemples

Données bruitées

Tri et Partitionner : un exemple

données triées 4, 8, 9, 15, 21, 21, 24, 25, 26, 28, 29, 34 Partition en profondeur :

- part 1: 4, 8, 9, 15 - part 2: 21, 21, 24, 25 - part 3: 26, 28, 29, 34

Lissage par les moyennes : chaque valeur de la partition est remplacée par la moyenne

- part 1: 9, 9, 9, 9 - part 2: 23, 23, 23, 23 - part 3: 29, 29, 29, 29

Lissage par les extremes : : chaque valeur de la partition est remplacée par la valeur extreme la plus proche

- part 1: 4, 4, 4, 15 - part 2: 21, 21, 25, 25 - part 3: 26, 26, 26, 34

(7)

Données bruitées Regression

x y

y = x + 1 X1

Y1 Y1’

les données sont lissées de manière à approcher une fonction

Régression linéaire Régression linéaire multiple

Intégration – Données redondantes

  Détection de données redondantes par analyse de corrélation

par exemple : redondance entre attribut

mesure la corrélation entre les attributs A et B rA,B >0 implique que A et B sont positivement corrélés rA,B <0 implique que A et B sont négativement corrélés

Transformation

  Les transformations appliquées :

  Le lissage qui supprime les données bruitées

  L'agrégation qui calcule des sommes, des moyennes

  La généralisation qui remonte dans une hiérarchie de concept

  La normalisation qui ramène les valeurs dans un intervalle donné

  La construction d'attributs

Réduction

  permet d'obtenir une représentation réduite d'ensembles volumineux de données

  stratégies appliquées

  agrégation

  réduction

  compression

  discrétisation

Réduction de dimension

  suppression d'attributs : de nombreux attributs non pertinents détériorent les performances des algorithmes par ex, les algorithmes d'induction d'arbres

  pour assurer de bonnes performances aux algorithmes d'extraction

(arbres de décision, classifieurs de bayes, … )

  supprimer des données non pertinentes

  supprimer des données redondantes

Discrétisation

  permet de réduire le nombre de valeurs d'un attribut continue en divisant le domaine de valeurs en intervalles

  utile pour la classification et les arbres de décision (algorithmes qui manipulent des variables catégorielles)

  des techniques de discrétisation peuvent être appliquées récursivement pour fournir un partitionnement hiérarchique de l'attribut

(8)

Discrétisation non supervisée

  Ou discrétisation aveugle (indépendamment d'une valeur de classe)

  partitionnement en largeur

  partitionnement en profondeur

Discrétisation supervisée

  prend en compte la classification

  utilise l'entropie pour mesurer l'information et obtenir un critère de "pureté"

  discrétise en intervalles "purs"

Discretisation basée sur l'entropie

A.  Principes

B. 

Classement par induction d’arbres de décision

C. 

Approche probabiliste - Classifieurs Bayésiens

D. 

KNN

E. 

Approche par rétro-propagation

F. 

Approche évolutionnaire

G. 

Approche par règles d’association

1.6 Classification supervisée

(en : classification) Apprentissage supervisé

 

tâche de prédiction

 

prédit des variables catégorielles

 

construit un modèle de classement (classifieur) des données

 

en se basant sur un ensemble appelé ensemble d'apprentissage (EA) (training

set)

 

utilise le modèle pour classer de nouvelles données

Classement

(9)

Apprentissage non supervisé versus supervisé

 

Classification (en: Clustering) :

Apprentissage non-supervisé

  les classes ne sont pas connues

  étant donné un ensemble de mesures, observations, ... est recherchée l'existence de groupes (classes) regroupant des données similaires

 

Classement (en : Classification):

Apprentissage supervisé

 

supervision: les données de l'EA (observations, mesures, etc.) sont accompagnées d'étiquettes indiquant la classe de chaque donnée

 

une nouvelle donnée est classifiée selon le modèle appris à partir de l'EA

Apprentissage non supervisé versus supervisé (2)

  Classement

 

prédit des variables catégorielles

 

construit un modèle de classification des données

  Régression

 

modélise des fonctions à valeurs numériques continues

 

prédit des valeurs inconnues ou manquantes

Apprentissage supervisé

Modélisation prédictive Apprentissage supervisé Modélisation prédictive (2)

  Modèle prédictif ( versus descriptif )

 

une variable est exprimée comme une fonction des autres Y = f(X1, . . ., Xn)

 

la valeur de cette variable cible peut être prédite à partir des valeurs des autres variables prédictives

 

Y variable catégorielle  Classement Y variable quantitative  Régression

Classement : Apprentissage supervisé

 

construit un modèle de classement des données en se basant sur un ensemble appelé

ensemble d'apprentissage (EA) (training set)

 

teste sa précision sur un ensemble de test (ET) (test set)

 

utilise le modèle pour classifier de nouvelles données

Dans une table (relationnelle)

  les classes sont représentées par les valeurs d'un attribut particulier : attribut-cible ou attribut de classe

  les autres attributs sont appelés attributs prédictifs

  tâche d'apprentissage ou de classement :

extraire un modèle qui permette d'assigner une classe prédéfinie aux tuples selon une condition sur les attributs prédictifs

Classement et Bases de données

(10)

Classement - Exemple Règles de Classification

  de la forme IF-THEN

  une règle prédit une classe à partir des attributs prédictifs

si A1, ..., Ap sont les attributs prédictifs et G est l'attribut de classe, les règles sont de la forme :

A1= a1 ∧... ∧ Ap= ap  G= gk si on suppose que A1, ..., Ap sont à valeurs discrètes

Classement en deux étapes

1. Construction du modèle sur l'ensemble

d'apprentissage (EA)

2. Evaluation de la précision (accuracy) du

modèle pour classifier de nouveaux objets

Classement (1):

Construction du modèle

EA

Algorithmes de Classement

IF Age=“31..40”

AND Revenu = élevé THEN Achète = oui

Classifieur (Modèle)

Classement – étape 2

 

Evaluation de la précision du modèle pour classifier de nouveaux objets

 

la valeur de l'attribut-cible connue pour chaque exemple de l'ET est comparée à la classe prédite par le modèle

 

ET doit être indépendant de EA, sinon risque de sur-évaluation (over-fitting)

  la valeur prédictive du modèle est évalué sur les exemples de l'ET

  première mesure de la valeur prédictive souvent utilisée : la précision (accuracy), fréquence des exemples correctement classifiés

  et aussi, les faux positifs, faux négatifs

(11)

Méthodes

 Arbres/Règles de décision

 Modèles probabilistes : Naïve Bayes, Réseaux de Bayes

 Lazy approaches : K-Nearest Neighbor

 Réseaux neuronaux

 Algorithmes génétiques

 …

Classement par inférence de règles rudimentaires

One R Règle-1

  Inférence d'une ensemble de règles dont chacune teste un attribut particulier Att=val  Classe

  Chaque règle porte sur une seule valeur d'attribut

  La classe prédite est celle qui apparaît le plus souvent dans l'EA

  On déduit toute les règles possibles pour un attribut et on choisit celle dont le taux d'erreur est le plus petit

Inférence de règles rudimentaires

A. 

Principes

B.  Classement par induction d’arbres de décision C. 

Approche probabiliste - Classifieurs Bayésiens

D. 

KNN

E. 

Approche par rétro-propagation

F. 

Approche évolutionnaire

G. 

Approche par règles d’association

Classification supervisée

Classement par induction d’arbres de décision

  Apprentissage inductif

  rechercher dans un espace d'hypothèses implicitement défini par la représentation de l'hypothèse

  trouver la meilleure hypothèse : celle qui correspond au mieux aux exemples de l'EA

  conjecture : la meilleure hypothèse pour l'EA est aussi la meilleure pour les exemples non connus

Arbres de décision

  pour variables à valeurs discrètes

  structure d’arbre de type organigramme

  un noeud représente un test sur un attribut

  une branche correspond à un résultat de test

  les feuilles représentent les classes ou les distributions de classe

  utilisation : classement d’une donnée inconnue, en comparant la valeur de ses attributs avec les noeuds de l’arbre

(12)

Quand rechercher un arbre de décision?

  Instances décrites par des attributs à valeurs discrètes

  Attribut de classe à valeurs discrètes

  Hypothèses disjointes

  Exemple :

  Prédire le risque de crédit

  Prédire le "churn"

  Prédire une pathologie

Génération d’un arbre de décision

  En deux étapes

  construction

 au début : tous les exemples sont à la racine

 les exemples sont ensuite répartis selon le résultat du test effectué sur l’attribut choisi

  élagage

 identifier et supprimer les branches qui contiennent bruit et exceptions

Ensemble d’apprentissage Résulat : un arbre de décision pour achète_ordinateur

age?

etudiant degSolvabilité

<=30 >40

non oui non oui

oui 30..40

non oui excellent bon

Extraction de règles de classification

  Chaque règle est de la forme IF-THEN

  Une règle est créée pour chaque chemin de la racine à une feuille

  Chaque terme attribut-valeur constitue un opérande de la conjonction en partie gauche

  Chaque feuille correspond à une classe à prédire

IF age = “<=30” AND etudiant = “non”

THEN achète_ordinateur = “non”

IF age = “<=30” AND etudiant = “oui”

THEN achète_ordinateur = “oui”

IF age = “31…40”

THEN achète_ordinateur = “oui”

IF age = “>40”

AND degSolvabilité = “excellent”

THEN achète_ordinateur = “non”

IF age = “>40”

AND degSolvabilité = = “bon”

THEN achète_ordinateur = “oui”

age?

etudiant degSolvabilité

<=30 >40

non oui non oui

oui 30..40

Extraction de règles de classification à partir des arbres de décision

non oui excellent bon

(13)

Induction d'un arbre de décision ID3 [Quinlan 1986]

  a évolué jusqu'aux versions C4.5 et C5.0

  principe de base :

 construire récursivement un arbre de la racine aux feuilles

  à chaque noeud, choisir le meilleur attribut parmi ceux restant

  quel est le meilleur?

ID3 (2)

  au début, tous les exemples sont à la racine attributs catégoriels, ou continues et discrétisées

  les exemples sont ensuite répartis sur des branches pour chaque valeur de l'attribut choisi comme test

  le processus est répété sur l'EA correspondant à chaque nœud descendant

ID3 (3)

  les attributs de test sont choisis selon un critère heuristique ou un critère statistique

  le processus de partitionnement (split) s’arrête lorsque

 tous les exemples de chaque noeud appartiennent à la même classe . il ne reste aucun exemple à classifier

ou

 il ne reste plus d’attribut pour base de partitionnement le scrutin majoritaire est utilisé pour classifier le noeud

Algorithmes d’induction d’un arbre de décision

  ID3 (Quinlan 1986)

  CART

  C4.5 (Quinlan 1993) et C5.0

  SLIQ (Mehta et al 1996)

  SPRINT (Shafer et al 1996)

  RAINFOREST (Gehrke, Ramakrishnan & Ganti 1998)

Critères de sélection d’un attribut de test

Information gain (ID3/C4.5)

 

critère heuristique

 

mesure la réduction d'entropie

Index Gini (CART, SLIQ, SPRINT)

 

critère statistique

 

mesure l'impureté d'un noeud

Sélection d’un attribut de test (1)

Le meilleur attribut

  intuitivement : celui qui partitionne le mieux les instances en classes, celui qui maximise la distance entre les groupes obtenus après partitionnement

  celui qui minimise l'information (le nombre de tests) nécessaire pour classifier les exemples selon la partition résultante et qui reflète le désordre minimum dans cette partition donc garantit que l'arbre résultant sera simple

  plus formellement : déterminer une mesure de séparabilité

(14)

Approche théorie de l'information - L'entropie

Soit S l'ensemble d'exemples

Supposons que l'attribut à prédire prenne M valeurs distinctes définissant M classes C1, …, CM

L'entropie E(S) est définie par

où pi désigne la proportion d'exemples de S appartenant à Ci

Fonction d'entropie

Entropie

p+

Gain d'information

mesure d'efficacité d'un attribut A : gain d'information réduction de l'entropie obtenue en partitionnant selon A

où A prend les valeurs a1, … aM et Sk est le sous-ensemble de S pour lequels l'attribut A prend la valeur ak

InfoGain(S,A)=E(S)Sk SE(Sk)

k=1 k=M

Sélection d'un attribut par calcul de la mesure Infogain

Class P: achète_ordinateur = “oui”

Class N: achète_ordinateur = “non”

E(S) =-9/14 log(9/14) - 5/14 log(5/14) =0.94

Inconvénient de InfoGain

favorise les éclatements en un grand nombre de partitions, chacune étant pure

par exemple :

attribut date avec N valeurs, N grand Infogain(date) maximum

si on suppose que date suffit à prédire la classe

Autre mesure : Gain Ratio (C4.5)

  introduit une information de partitionnement

  ajuste InfoGain avec l'entropie du partitionnement

  pénalise un éclatement dans un grand nombre de petites partitions

SplitInfo(S,A)=− Sk Slog2Sk

k=1 S

k=M

GainRatio(S,A)=InfoGain(S,A) SplitInfo(S,A)

(15)

Sélection d’un attribut de test (2)

Si un ensemble d'exemples S contient M classes, l'index Gini de S est défini par :

où pj est la fréquence relative de la classe j dans S (CART, SLIQ, SPRINT)

Index Gini

Gini

p+

Index Gini

C1 0

C2 6

Gini=0

C1 1

C2 5

Gini=0.278

C1 2

C2 4

Gini=0.444

C1 3

C2 3

Gini=0.500

Index Gini d'une partition

 

Si un ensemble S est partitionné en sous- ensembles S

1

…S

P

de tailles respectives N

1

…N

P

, l'index Gini de la partition est défini par

 

L'attribut qui produit l'index Gini minimum est le meilleur

A N2 N1

N1 N2

C1 0 4

C2 6 0

Gini=0

N1 N2

C1 6 2

C2 2 0

Gini=0.3

N1 N2

C1 4 2

C2 4 0

Gini=0.4 N1 N2

C1 3 4

C2 3 0

Gini=0.3

Index Gini d'une partition Principes de recherche dans

l'espace d'hypothèses (ID3)

(16)

Principes de recherche dans l'espace d'hypothèses (ID3)

  Une seule hypothèse est solution

  Pas de backtrack

  Biais : recherche de l'arbre de plus court

Pourquoi rechercher l'arbre le plus court?

+

 Règles plus courtes, plus compréhensibles, plus simples

 Une hypothèse courte a peu de chances d'être une coincidence

 Une hypothèse longue qui correspond parfaitement aux données a des chances d'être une coincidence -

 Difficile de définir une hypothèse courte

 Que peut-on dire des ensembles de faible volume basés sur des hypothèses courtes?

Divers problèmes

  Eviter la sur-évaluation

  Traiter les variables continues

  Traiter les valeurs manquantes

  Attribuer des coûts différents pour certains attributs

Sur-évaluation (Overfitting)

Si on ajoute du bruit au jeu de données

age?

etudiant degSolvabilité

<=30 >40

non oui non oui

31..40

non oui excellent bon

degSolvabilité

non oui

bon excellent

Sur-évaluation (Overfitting)

Sur-évaluation de l'ensemble d'apprentissage : une hypothèse est meilleure qu'un autre sur l'EA, mais moins bonne sur l'ensemble des données

  données bruitées et d'anomalies

  combinatoire très importante l'arbre de décision

  arbres trop complexes, incompréhensibles qui peuvent outre-passer les données

  mauvaise prédiction sur des exemples nouveaux

Solution : Elaguer (pruning)

(17)

Sur-évaluation (Overfitting)

Soit une hypothèse h

 sur l'ensemble d'apprentissage: errortrain(h)

 sur l'ensemble D des données: errorD(h)

Hypothese h sur-évalue l'EA s'il existe une autre hypothese h’∈H telle que

errortrain(h) < errortrain(h’) et

errorD(h) > errorD(h’)

Sur-évaluation (Overfitting)

Elagage

Pour éviter l'over-fitting

  arrêter le développement vertical de l'arbre (pré-élagage)

  développer l'arbre puis l'élaguer (post-élagage)

  Minimum description length (MDL):

minimiser

size(tree) + size(misclassifications(tree))

Pré-élagage

appliquer des règles qui limitent la profondeur des branches, par exemple

  fixer un seuil limite du nombre de noeuds au dessus duquel un chemin ne peut plus être développé

  fixer un seuil limite du nombre d'enregistrements en dessous duquel un nœud ne peut plus être éclaté

Post-élagage

Développer l'arbre à son maximum

  puis, élaguer des branches jusqu'à leur taille minimum pour ne pas compromettre leur valeur, par exemple

  utiliser une heuristique ou l'intervention de l'utilisateur, par exemple, utiliser un ensemble de données différent de l'ensemble d'apprentissage pour tester si un sous-arbre améliore

suffisamment l'exactitude entière (estimer le taux d'erreur)

Extensions de l'algorithme de base

  traiter les variables continues

  discrétisation en un ensemble d'intervalles

  gérer les valeurs manquantes

  les remplacer par la valeur la plus fréquente

  assigner une probabilité pi à chaque valeur possible, assigner une fraction pi des exemples à chaque sous-nœud

(18)

Taux d'erreur

Taux d'exemples mal classés

taux d'erreur apparent : sur l'ensemble d'apprentissage estimation du taux d'erreur réel : sur un ensemble de test ET doit être issu du même ensemble que EA

et

doit refléter la population à laquelle le classifieur doit être appliqué en termes de distribution

Un ET n'est pas toujours disponible

Alternative à l'éclatement EA/ET : Validation croisée

Estimation du taux d'erreur

  diviser l'ensemble des données en ensemble d'apprentissage (2/3) et ensemble de test (1/3)

  utiliser la validation croisée (cross-validation)

  utiliser toutes les données dans l'ensemble d'apprentissage

Validation croisée

  Principe

  l'ensemble des exemples est partitionné en k parties d'effectifs égaux

  apprentissage et test en k étapes

  à chaque étape :

 utiliser k-1 parties comme EA et 1 comme ET(k-fold cross-validation)

 calculer le taux d'erreur ek

  taux d'erreur estimé : moyenne des ek

  on prend souvent K=10

Différentes erreurs

prédire un exemple dans C alors qu'il appartient à non C prédire un exemple dans non C alors qu'il appartient à C Vrai positif (True Positive) :

exemple prédit dans C et appartenant à C Vrai négatif (True Negative) :

exemple prédit dans nonC et appartenant à nonC Faux positif (False Positive) :

exemple prédit dans C et appartenant à nonC Faux négatif (False Negative) :

exemple prédit dans nonC et appartenant à C

Matrice de confusion

C C

C TP FN

C FP TN

FP + FN TP + FP + TN + FN

P N

P TP FN

N FP TN

Matrice de confusion

(19)

Mesures et objectifs

  diagnostic médical : classer un sujet dans la classe dans laquelle il a la probabilité la plus grande de se placer

on recherche Ci de manière à avoir p(Ci/H) maximum

  test médical : comparer le taux de sujets non malades dont le test est positif au taux des sujets malades dont le test est négatif

  accord de crédit : identifier la proportion des clients qui deviennent "à risque" alors que le crédit leur a été accordé

Sensibilité, Recall, Précision, …

A  C

  Sensibilité (Se), Recall, Taux de TP,

  Spécificité (Sp), Taux de TN

  Taux de FP

  Précision

Différents coûts d'erreur

  exemples :

  accord de crédit

  prévision de consommation électrique

  diagnostiques

  . . .

  pondérer différemment les erreurs : FN ou FP

Mesures standard

Correctly Classified Instances 579 84.7731 % Incorrectly Classified Instances 104 15.2269 % Total Number of Instances 683

=== Detailed Accuracy By Class ===

TP Rate FP Rate Precision Recall F-Measure Class 0.85 0.018 0.586 0.85 0.694 diaporthe-stem-canker 1 0 1 1 1 charcoal-rot 0.95 0 1 0.95 0.974 rhizoctonia-root-rot

Arbres de décision : Avantages

  sont peu coûteux à construire : ils font peu de parcours des données et supportent de nombreuses variables prédictives

  facilement interprétables

  efficaces dans le cas d'une majorité de variables qualitatives

  ont une valeur prédictive comparable aux autres méthodes dans la plupart des applications

Inconvénients

  critère naïf pour le choix de l'attribut de partitionnement :

  ce critère ne tient pas compte des incidences produites sur les partitionnements ultérieurs

  le choix n'est pas remis en question

  le processus est

  séquentiel donc un partitionnement dépend toujours du précédent

  univarié (il ne s'intéresse qu'à une variable à chaque nœud)

  donc limitation du nombre de règles explorées et détection difficile des relations entre attributs

  les algorithmes comme ID3 ou C4.5 nécessitent des données stockées en mémoire

(20)

C5.0

  construit l'arbre " en profondeur d'abord"

  utilise GainRatio

  nécessite que la base entière réside en mémoire

Adaptation au Data Mining

  BD : des millions d'exemples et des centaines d'attributs

  Approches Data Mining:

SLIQ (Mehta et al. 1996)

construit un index pour chaque attribut ; seules la liste de classes et la liste-attribut courante sont en mémoire

SPRINT (J. Shafer et al. 1996)

construit une liste-attribut qui contient la classe RainForest (Gehrke, Ramakrishnan & Ganti 1998)

s'adapte à l'espace mémoire disponible

construit une liste AVC (attribut-valeur, classe) indiquant la distribution dans les classes de chaque attribut

A. 

Principes

B. 

Classement par induction d’arbres de décision

C.  Approche probabiliste - Classifieurs Bayésiens D. 

KNN

E. 

Approche par rétro-propagation

F. 

Approche évolutionnaire

G. 

Approche par règles d’association

Classification supervisée

Approche probabiliste - Classifieurs Bayésiens

Classifieur statistique qui prédit la probabilité pour un exemple d'appartenir à une classe

  basé sur la Théorie de Bayes (probabilités conditionnelles)

  approche la plus utilisée pour certains types d’apprentissage, car

aussi performante que arbres de décision et réseaux de neurones

  deux formes : Classement naïve, Classement par Réseaux bayésiens

Intérêt des méthodes bayésiennes

  fournissent une perspective utile pour comprendre des algorithmes d’apprentissage qui ne manipulent pas explicitement des probabilités

  sont incrémentales: chaque exemple dans EA peut augmenter ou réduire la probabilité qu’une hypothèse soit correcte ; une hypothèse n’est pas éliminée car

inconsistante avec un seul exemple

Inconvénients

  nécessitent une connaissance initiale de nombreuses probabilités

Si elles ne sont pas connues à l’avance, elles sont souvent estimées à l’aide de la

connaissance du contexte, des données disponibles et de suppositions sur la forme des distributions sous-jacentes

  nécessitent un temps de calcul important pour déterminer l’hypothèse optimale

(21)

Théorème de Bayes

  étant donné deux évènements X et Y, la probabilité conditionnelle de X sachant Y, notée P(X/Y) vérifie :

  en classement, on cherche à évaluer P(H/D) où H est une hypothèse et

D représente les données de l’ensemble d’observations (EA) P(H) appelée probabilité a priori,

interprétée comme la probabilité initiale que H soit vraie sans avoir observé l’ensemble d’apprentissage traduit une éventuelle connaissance du contexte

Exemple

  Deux hypothèses

H1 : contracter la maladie H2 : ne pas contracter la maladie

Les observations : résultats de tests Positif ou Négatif Sur la population :

0.8% ont la maladie Le test de lab. retourne

un résultat positif correct dans seulement 98% des cas un résultat négatif correct dans seulement 97% des cas Un nouveau patient pour lequel le test retourne Positif Quel diagnostic peut-on faire?

Solution : P(H1/positif) maximum?

P(positif/malade)=0.98 P(malade)=0.008 P(négatif/non_malade)=0.97 P(positif/non_malade)=0.03 P(négatif/malade)=0.02

P(malade/positif)=

P(positif/malade)*P(malade)/P(positif)

P(positif/malade)*P(malade)=0.98*0.008 = 0.0078

P(non_malade/positif) =

P(positif/non malade)*P(non_malade)/P(positif) P(positif/non malade)*P(non_malade)=

0.003*0.992= 0.00298 HMAP=malade

  pour le classement : l'objectif est de classifier, dans une classe C, un exemple défini par une conjonction de termes attributs-valeurs A1, ..., Ap sur les attributs prédictifs i.e maximiser la probabilité suivante :

  le théorème permet d’écrire :

Théorème de Bayes et Classement

(22)

Calcul des probabilités a posteriori

  P(A1∧…∧ Ap) est le même pour toutes les classes

  P(C) fréquence relative de chaque classe

  P(C/A1∧…∧ Ap) maximum ssi P(A1∧…∧ Ap/C)·P(C) maximum mais calcul de P(A1∧…∧ Ap/C) très coûteux

Classifieur de Bayes naïf

  basée sur l'hypothèse que les variables A1, ..., Ap sont indépendantes 2 à 2

(I)

  Un exemple est classifié dans C si est maximum

  réduit le temps de calcul de manière significative Le nombre de calculs à effectuer est égal au produit : Nombre de valeurs d’attributs prédictifs

*

Nombre de valeurs d’attribut-cible Algorithme

- calcul des P(Cj) et P(Ai/Cj) à partir des fréquences de ces éléments dans l’EA pour chaque classe Cj

- ensuite un nouvel exemple est classifié en appliquant la formule (I)

Classifieur de Bayes naïf

Classifieur de Bayes naïf

P(achète_ordinateur/age<=30 ∧ revenu=moyen ∧ étudiant=non ∧ deg_solvabilité=bon) est maximum ssi p1=P(achète_ordinateur)

*P(age<=30/achète_ordinateur)

*P(revenu=moyen/achète_ordinateur)

*P( étudiant=non/achète_ordinateur)

*P( deg_solvabilité=bon/achète_ordinateur) est maximum p1=9/14 *2/9*4/9*3/9*6/9=0.141

Comment peut-on conclure?

(23)

Réponse

On calcule p2=P(¬achète_ordinateur)

*P(age<=30/ ¬ achète_ordinateur)

*P(revenu=moyen/ ¬ achète_ordinateur)

*P( étudiant=non/ ¬ achète_ordinateur)

*P( deg_solvabilité=bon/ ¬ achète_ordinateur) p2 = 5/14*3/5*2/5*4/5*2/5=0.274

Le classifieur de Bayes naïf assigne la classe

¬achète_ordinateur à cet exemple

Question

Une personne sur mille est un génie.

Un test de QI est positif si la personne est un génie, négatif sinon.

Le test n’est pas fiable à 100%

génie normal positif 0.99 0.10 négatif 0.01 0.90 Une personne passe le test, résultat positif.

Quelle est la probabilité pour que cette personne soit réellement un génie ?

Classifieur de Bayes naïf

pas de recherche explicite dans l’espace des solutions mais

calcul de fréquences des combinaisons variées dans l’EA nécessite le calcul préalable de nombreuses probabilités repose sur l’hypothèse d’indépendance des variables réduit la complexité si les variables sont corrélées

Réseaux bayésiens

un réseau bayésien décrit des hypothèses

d’indépendance conditionnelle qui s’appliquent à des sous-ensembles de variables,

accompagnées de probabilités conditionnelles graphe orienté acyclique

  Nœud - variable

  Arc – dépendance entre variables la structure du réseau peut être

  connue à l’avance ou

  inférée à partir des données

Réseaux bayésiens

  Un réseau bayésien est utilisé pour inférer la distribution de probabilité d’une variable cible, prédisant la probabilité de chaque classe, étant donnée la valeur d’autres variables

P(FeuDeForet=vrai)= P(FeuDeForet=vrai/parents(FeuDeForet))=

P(FeuDeForet=vrai/Orage, FeuDeCamp, Eclairs)

  difficile si toutes les variables n’ont pas des valeurs connues

  solutions approximatives : méthode du gradient

Réseaux bayésiens

(24)

Autre exemple

  Classification de pannes d'ordinateurs

  Couleur de voyant (Rouge, Vert)

  Équipement défaillant (UC,MC,PE)

  Envoie d'un dépanneur selon la classe

  Calcul de probabilités sur le training set

Exemple de réseau

Rouge Vert

Voyant

Panne

UC MC PE

Dépanneur

Pierre Paul

Rouge

?

0.32 0.68

0.12 0.44 0.44

0.09 0.09 0.82

0.70

0.60 0.40

0.30 0.

50 0.50

Intérêt des classifieurs Bayésiens

Classifieurs bayésiens naïfs et

Réseaux bayésiens

  sont basés sur le calcul des probabilités a posteriori

  permettent de calculer une probabilité a posteriori à une hypothèse candidate en se basant sur la probabilité a priori et les données observées

A. 

Principes

B. 

Classement par induction d’arbres de décision

C. 

Approche probabiliste - Classifieurs Bayésiens

D. Lazy approaches : KNN, KBR

E. 

Approche par rétro-propagation

F. 

Approche évolutionnaire

G. 

Approche par règles d’association

Classification supervisée

Apprentissage basé sur les instances

  lazy evaluation methods

  Les exemples de l’EA sont stockés et le processus d’évaluation est retardé au moment où un nouvel exemple doit être classifié

  Par exemple, les méthodes suivantes :

  k-nearest neighbors

  Raisonnement à base de cas

Algorithme k-Nearest Neighbor

  ne construit pas un classifieur

  conserve tous les exemples de l'EA

  peut être très lent

  accorde la même importance à tous les attributs

(25)

Algorithme k-Nearest Neighbor

Apprentissage par analogie

  chaque exemple est représenté par un point dans l’espace de dim n

  k-nearest neighbour : pour un nouvel exemple x, l’algorithme cherche k exemples de l’EA les plus proches (distance euclidienne)

  x est classifié dans la classe la plus représentée parmi les K voisins

_ + _

+ _ _ +

_ _

+

. . .

. .

Classement

Soumission d'un tuple inconnu Recherche des k plus proches voisins

Assignation de la classe la plus représentative parmi les k voisins

  Vote majoritaire (classe la plus fréquente)

  Plus grande similarité à la classe

  …

Les attributs ont le même poids

centrer et réduire pour éviter les biais

certains peuvent être moins classant que d'autres

Apprentissage paresseux

rien n'est préparé avant le classement tous les calculs sont fait lors du classement nécessité de technique d'indexation pour large BD

Calcul du score d'une classe

peut changer les résultats; variantes possibles

Raisonnement à base de cas (KBR)

  Apprentissage par analogie

  chaque exemple est représenté par une description symbolique complexe

  pour un nouvel exemple x, l’algorithme cherche un cas identique dans l’EA

  Si un cas identique est trouvé, il est retourné

  Sinon, des cas similaires sont recherchés ( en termes de sous- graphes, par exemple) et sont combinés pour proposer une solution

  problèmes ouverts

  définir des métriques de similarité, des techniques d’indexation des cas de l’EA, des méthodes pour combiner les solutions

A. 

Principes

B. 

Classement par induction d’arbres de décision

C. 

Approche probabiliste - Classifieurs Bayésiens

D. 

KNN

E.  Approche par rétro-propagation F. 

Approche évolutionnaire

G. 

Approche par règles d’association

Classification supervisée Réseaux de neurones - Retropropagation

  apprendre un R.N : ajuster les poids à attribuer aux connexions de manière à prédire la classe d'un exemple apprentissage connexionniste

  algorithme le plus utilisé : retropropagation (1980) permet l'apprentissage d'un réseau multi-couches appliqué à de nombreux cas pratiques (reconnaissances de

formes, caractères, mots)

(26)

Réseau de neurones

  Tentative de reproduction des structures du cerveau afin de raisonner

  Ensemble d'unités transformant des entrées en sorties (neurones) connectées, où chaque connexion à un poids associé

  La phase d'apprentissage permet d'ajuster les poids pour produire la bonne sortie (la classe en classification)

Σ wi Ei +b f Entrée E1

Entrée En

Sortie Entrée Ei

w1 w

i

wn

Un neurone

 

Induit un ensemble de valeurs en sortie à partir d'un ensemble de valeurs en entrée

 

Réalise une combinaison linéaire des entrées suivie d ’une fonction de transfert

  Fonction Sigma (Σ wi Ei)

  Biais optionnel b

  Fonction Sigmoïde f(Σ) = 1/(1+e- Σ)

Data Mining : Concepts et Techniques - 3- Modélisation prédictive 153

Un neurone

Le vecteur x en entrée est transformé en sortie y par le moyen de la fonction f

f

Somme pondérée Vecteur x

en entrée

Sortie y Fonction

d'activation Vecteur des

poids w

w0 w1 wn x0

x1 xn

Biais

Retropropagation

Les entrées

correspondent aux attributs des exemples Elles sont placées sur

une couche (input layer) et alimentées simultanément Les sorties du niveau

entrée alimentent un niveau caché …

Apprentissage

 

Découverte de modèles complexes avec affinage progressif

 

Le réseau s'adapte lors de la phase d ’apprentissage

 

Plusieurs algorithmes possibles

 

le plus utilisé = rétropropagation

 

modification des poids w

i

par rétropropagation

Topologie

Choix du nombre de couches

entrées, 1 ou 2 couches cachées, sorties

Choix du nombre de neurones par couche

dépend des entrées et sorties couches cachées intermédiaires

Normalisation des variables d'entrées

Variable continue centrée réduite [-1,+1]

Variable discrète codée ou valeurs attribuées aux entrées

Sorties booléenne codant les classes

(27)

Rétropropagation

Initialiser les poids et les biais

tirage aléatoire sur [-1,+1]

Propager les entrées en avant

Un exemple est appliqué aux entrées Le réseau calcul les sorties

Propager les erreurs en arrière

Sortie devant délivrer T: Err = O(1-O)(T-O) Cellule cachée : Err = O(1-O) Σk wk*Errk

Corriger poids et biais de sorte à réduire les erreurs

Δwij = λ*Errj*Oi ; Δbj = λ*Errj

Apprentissage par retropropagation

  Objectif

  Obtenir un ensemble de poids qui permettent de classifier correctement presque tous les exemples de l'EA

  Etapes

  initialiser les poids aléatoirement

  introduire un tuple à la fois

  pour chaque neurone

 calculer l'entrée comme fonction linéaire des entrées

 calculer la sortie à l'aide de la fonction d'activation

 calculer l'erreur

 mettre à jour les poids et le biais par retro-propagation

Retropropagation des erreurs

wjk Oj

Interprétation d'un RN

Interprétation difficile

Méthodes d'extraction de règles :

élagage : suppression de liens ayant un moindre effet sur l'exactitude de la Classement

regroupement des valeurs d'activation communes recherche de règles liant les valeurs d'activation et la sortie recherche de règles liant les valeurs d'activation et l'entrée combinaison des deux pour obtenir des règles liant entrée et

sortie

Avantages – Inconvénients des RN

  Avantages

  valeur prédictive en général élévé

  robuste

  variable de classe à valeurs discrètes, réelles, vectorielles

  Inconvénients

  temps d'apprentissage assez long

  difficulté d'interprétation

  difficulté à incorporer la connaissance du domaine

A. 

Principes

B. 

Classement par induction d’arbres de décision

C. 

Approche probabiliste - Classifieurs Bayésiens

D. 

KNN

E. 

Approche par rétro-propagation

F.  Approche évolutionnaire

G. 

Approche par règles d’association

Classification supervisée

(28)

Méthodes évolutionnaires

  Algorithmes évolutionnaires

  Algorithmes génétiques

  Algorithmes génétiques et Data Mining

Méthodes évolutionnaires

  Algorithmes évolutionnaires

  Algorithmes génétiques

  Algorithmes génétiques et Data Mining

Algorithmes évolutionnaires

  inspirés de la théorie de l'évolution des espèces et de la génétique

  basés sur le concept de sélection naturelle élaboré par Charles Darwin (1859)

  vocabulaire :

  individu (solution potentielle, règle, …)

  population

  gènes

  chromosomes

  parents, descendants

  reproduction, croisement, mutation

Sélection naturelle

  apparition, par hasard, de nouvelles espèces due à la sélection de variations individuelles

  les individus les plus adaptés tendent

  à survivre plus longtemps

  à se reproduire

Algorithmes évolutionnaires Algorithmes évolutionnaires

  approche originale

  ne recherchent pas une solution analytique exacte ou une bonne approximation numérique,

  ne permettent pas de trouver à coup sûr la solution optimale de l’espace de recherche,

  mais fournissent des solutions qui sont généralement meilleures que celles obtenues par des méthodes plus classiques, pour un même temps de calcul

(29)

Algorithmes évolutionnaires

(Evolutionnary computation)

 

Algorithmes génétiques

 

Programmation génétique

 

Programmation évolutionnaire

 

Stratégies d’évolution

Méthodes évolutionnaires

  Algorithmes évolutionnaires

  Algorithmes génétiques

  Algorithmes génétiques et Data Mining

Algorithmes génétiques (AG)

  développés par J.H. Holland (années 60)

  basés sur la théorie de l’évolution et génétique moderne

  utilisent un codage des paramètres et non les paramètres eux_mêmes

  n'utilisent que les valeurs de la fonction (d'évaluation) étudiée

  utilisent des règles de transition probabilistes et non déterministes

Codage

 

variables codées en binaire

sous forme de gènes dans un chromosome

 

opérateurs génétiques (croisement, mutation) appliqués aux chromosomes

Codage

Codage des variables :

définir et de coder le problème

  une variable d’optimisation xi --- un gène.

  une allèle --- valeur d'un gène

  un site (locus) --- position dans le chromosome

  un chromosome --- ensemble de gènes

  un dispositif est représenté par un individu (individual) constitué d’un chromosome

  population = ensemble de N individus qui sont destinés à évoluer

Métaphore

Un problème à résoudre

 

un individu  une solution

 

fonction d'évaluation (fitness )  mesure de

profit, d'utilité, de qualité à maximiser

(30)

Codage Exemples

Applications

  optimisation de fonctions numériques difficiles (discontinues, multimodales, bruitées…),

  traitement d’image (alignement de photos satellites, reconnaissance de suspects…),

  optimisation d’emplois du temps,

  optimisation de design,

  optimisation de réseaux (câbles, fibres optiques, mais aussi eau, gaz…)

  apprentissage des réseaux de neurones

  apprenstissage de classifieurs

  data mining

Fonctionnement d'un AG

1. codage du problème sous forme d'une chaîne binaire 2. génération aléatoire d'une population ( ensemble de

solutions possibles)

3. calcul d'une valeur de fitness pour chaque individu 4. sélection des individus devant se reproduire selon leur

valeur de fitness

5. croisement et mutation produisent un nouvelle génération

6. itération à partir de 3 avec la nouvelle population

Sélection – Elimination

  génération : population à un instant t donné

  évaluation de la génération

  sélection à partir de la fonction de fitness

  les individus sélectionnés se reproduisent

Sélection - Recombinaison

(31)

Croisement

Nouvelle chaîne 1

Nouvelle chaîne 2 descendant (offspring) Site decroisement

Chaîne 1

Chaîne 2 (parent)

Mutation

  reproduction et croisement à la base des AG

  au sein d'un pool génétique donné, il est possible que la solution recherchée ne soit pas présente

  l'opérateur de mutation permet l'émergence de nouvelles configurations génétiques, en élargissant le pool, ces mutations améliorent les possibilités de trouver une solution optimale

Mutation

Site demutation

Chaîne Nouvelle chaîne

Le croisement

  favorise l’exploration de l’espace de recherche

  considérons deux gènes A et B pouvant être améliorés par mutation

il est peu probable que les deux gènes améliorés A’ et B’

apparaissent par mutation dans un même individu. Mais l’opérateur de croisement permettra de combiner rapidement A’ et B’ dans la descendance de deux parents portant chacun un des gènes mutants

Squelette d’un A.G. Démonstrations

  Optimisation de formes géométriques

  Optimisation de la forme d'une lentille optique

  Optimisation de

  Le problème du voyageur de commerce

(32)

Optimisation de la forme d'une

lentille Optimisation de la forme d'une

lentille

Optimisation de la forme d'une

lentille Problème du voyageur de

commerce

Problème d'optimisation classique :

étant donné une liste de villes, un voyageur de commerce doit passer dans chacune une seule fois

  recherche du trajet le plus court possible

  énumération exhaustive exclue : N villes

N-1 possibilités pour la seconde étape N-2 pour la troisième

(N-1)! combinaisons

  un AG trouve trouve une très bonne solution en testant seulement quelques milliers de solutions

Paramètres de l'algorithme génétique :

  individu : chaîne qui représente un trajet valide dans laquelle chaque gène représente une

ville

et deux gènes ont des valeurs différentes

  fitness : distance parcourue sur un trajet

Problème du voyageur de

commerce Algorithmes génétiques et Data

Mining

 

optimisation de paramètres pour des algorithmes d'extraction

 

déterminer un "bon" ensemble de poids pour un RN

 

déterminer un "bon" ensemble d'attributs pour un algorithme de classification . . . ou

 

algorithmes d'extraction

(33)

  Découverte de règles IF . . . THEN

  classification

  association

  Quelle sorte de population est manipulée?

  Quels sont les individus?

  Comment est construite la fitness?

  Quels critères doit-elle optimiser?

AG = algo d’extraction?

 

Conventions

 

une règle candidate R ---- un individu

 

qualité d'une règle R ---- fitness(R)

 

les critères pris en compte dépendent de la tâche d'extraction

AG et extraction de règles

Exemple

IF Age=“31..40” AND Revenu = élevé THEN Solvabilité = bon

AG et extraction de règles

IF Age=“31..40” AND Revenu = élevé THEN DegSolvabilité = bon

Age = "<=30" codé 100 Age = “31..40” codé 010 Age = “>40” codé 001 (codage de position)

Codages des règles

Un individu

 peut représenter

  une règle de classification simple

  une formule du premier orde

  un ensemble de règles

 peut être de longueur fixe ou variable

 code un gène pour un attribut

exemple

gène K attribut Ak

  wk = 0 ou wk=1 permet de faire varier la longueur de la règle

  Ok opérateur > < = ≠ ∈ ∉ ⊂

  Vk ensemble de valeurs du domaine de l'attribut Ak

Références

Documents relatifs

Couhault, L’office d’armes dans la monarchie des Habsbourgs au XVIe siècle, entre mythes et réalités, Paris, Classiques Garnier, à paraître.. C ROUZET , Denis, «

collaborateurs, la promotion du basketball, dont les valeurs correspondent à celles de l’enseigne, et le bonheur des pratiquants, sont les objectifs principaux de ce tournoi

Elle assure les prérequis en méthodologie, biostatistique, évaluation de qualité et neurophysiologie dans l'un des 2 domaines de spécialisation : conception,

Complexit´ e des op´ erations pr´ ec´ edentes Pour un arbre binaire de taille n,. la complexit´ e dans le pire des

L’insertion et la suppression utilisent la rotation ` a gauche et ` a droite d’un arbre lorsqu’il est trop d´ es´ equilibr´ e :.

La puissance moyenne mesurée par le radar associée à l’onde incidente et celle réfléchie est la même2. Les ondes issues des deux sources ne sont

La stratégie du joueur A qui joue le premier est simple : si le nombre initial de jetons n’est pas un multiple de 4, par exemple 4*a+b avec b=1 ou 2 ou 3, il prend b jetons de façon

- A l'appel de la fonction, l'exécution du programme est transférée à la première instruction de cette fonction. - La fonction se termine, après l'instruction return ou