la fouille des flux d'informations

64
La fouille des flux d'informations La fouille des flux d'informations Yves Lechevallier, Alzennyr Da Silva, Fabrice Yves Lechevallier, Alzennyr Da Silva, Fabrice Rossi Rossi INRIA-AxIS, France INRIA-AxIS, France Francisco De Carvalho Francisco De Carvalho CIn-UFPE, Brésil CIn-UFPE, Brésil Rosanna Verde, Rosanna Verde, Antonio Balzanella Antonio Balzanella SUN,Italie SUN,Italie

Upload: galvin-hatfield

Post on 30-Dec-2015

49 views

Category:

Documents


6 download

DESCRIPTION

La fouille des flux d'informations. Yves Lechevallier, Alzennyr Da Silva, Fabrice Rossi INRIA-AxIS, France Francisco De Carvalho CIn-UFPE, Brésil Rosanna Verde, Antonio Balzanella SUN,Italie. Plan. Introduction/ Flux d’information Fouille de flux de données - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: La fouille des flux d'informations

La fouille des flux d'informationsLa fouille des flux d'informations

Yves Lechevallier, Alzennyr Da Silva, Fabrice RossiYves Lechevallier, Alzennyr Da Silva, Fabrice Rossi

INRIA-AxIS, FranceINRIA-AxIS, France

Francisco De CarvalhoFrancisco De Carvalho

CIn-UFPE, BrésilCIn-UFPE, Brésil

Rosanna Verde, Rosanna Verde, Antonio BalzanellaAntonio Balzanella SUN,ItalieSUN,Italie

Page 2: La fouille des flux d'informations

AAFD 2010 2

PlanPlan

Introduction/ Flux d’information Fouille de flux de données Classification de flux évolutifs Extraction des données d’usage/ Web Mining Classification de données évolutives Détermination du nombre de classes Conclusions

Page 3: La fouille des flux d'informations

AAFD 2010 3

Les méthodes d’analyse des flux d’informations doivent résoudre les deux contraintes suivantes :

•l'ensemble des données ne peut pas être stocké;•les résultats des analyses doivent être rapidement disponibles.

Par exemple: Les opérations financières, les données du Web, les consommations d'électricité, les données des capteurs à distance

Aujourd'hui, dans de nombreux domaines, d’énormes quantités de données sont recueillies du fait de la rapide croissance des moyens d'acquisition de ces données.

Introduction / Flux d’informationsIntroduction / Flux d’informations

Page 4: La fouille des flux d'informations

AAFD 2010 4

Un flux d’information est un échantillon de taille infinie d’unités de collecte zm=(tm,(xm,ym)) où

tm est l’instant de unité de collecte xm est l’unité statistique ou l’étiquette de cette

unité statistique ym est le vecteur de description de cette unité de

collecte

xm est l’élément d’une population. On peut dire aussi que xm est un individu.

Définition d’un flux d’informationsDéfinition d’un flux d’informations

Page 5: La fouille des flux d'informations

AAFD 2010 5

Flux d’informationsFlux d’informations

A partir de ce flux d’informations si la population est finie on peut construire un échantillon Y(xm) sur chaque unité statistique xm de cette population.

Y(xm)=((tm1,(xm1,ym1)), …, (tmi,(xmi,ymi)), ..)

avec xml=xm et l=1,…,i,…

Y(xm) est un flux de données si l’ensemble des unités de collecte associées à cette unité statistique est un échantillon de taille infinie, sinon c’est une série temporelle.

Page 6: La fouille des flux d'informations

AAFD 2010 6

PlanPlan

Introduction/ Flux d’information Fouille de flux de données Classification de flux évolutifs Extraction des données d’usage/ Web Mining Classification de données évolutives Détermination du nombre de classes Conclusions

Page 7: La fouille des flux d'informations

AAFD 2010 7

Un flux

Flux de données univarié

Flux de données multivariés

Multiples flux de données univariés

est un ensemble d’observations dont les valeurs réelles sont ordonnées par une

grille temporelle discrète.

Flux de donnéesFlux de données

Page 8: La fouille des flux d'informations

AAFD 2010 8

Flux de données / Série temporelleFlux de données / Série temporelle

L’échantillonnage de ce flux de données permet de modéliser ce flux par une série temporelle.

Par exemple l’échantillonnage de Vitter permet de maintenir un échantillon de taille N sur ce flux de données.

L’approche de Babcock permet de maintenir un échantillonnage intégrant une fonction d’oubli.

Page 9: La fouille des flux d'informations

AAFD 2010 9

Flux de données / fenêtreFlux de données / fenêtre

Découpage du flux en fenêtres disjointes{

Page 10: La fouille des flux d'informations

AAFD 2010 10

Fouille dans un flux de donnéesFouille dans un flux de données

L’objectif est

d’extraire des connaissances

à partir d’un flux de données,

temporellement ordonné,

et en évolution rapide;

Page 11: La fouille des flux d'informations

AAFD 2010 11

Fouille dans un flux de donnéesFouille dans un flux de données

Temps réduit pour le traitement de nouvelles observations

Utilisation de peu de mémoire Un seul passage des données Les connaissances sur ce flux doivent être

disponible en permanence et/ou sur demande.

Contraintes des flux sur les méthodes de fouille de donnés

Page 12: La fouille des flux d'informations

AAFD 2010 12

Analyse d’un ensemble de flux de Analyse d’un ensemble de flux de donnéesdonnéesSoit un ensemble de n flux de données

ni YYYS ,...,,..,1 ),(),...,,(),...,,(),,( 2211 tytytytyY jji

tttT j ,...,,...,1

est un flux de données où les valeurs sont ordonnées par une discrète grille

Page 13: La fouille des flux d'informations

AAFD 2010 13

PlanPlan

Introduction/ Flux d’information Fouille de flux de données Classification de flux évolutifs Extraction des données d’usage/ Web Mining Classification de données évolutives Détermination du nombre de classes Conclusions

Page 14: La fouille des flux d'informations

AAFD 2010 14

Classification d’un ensemble de flux de données

Trouver un ensemble de classes de flux de données homogènes formant une partition P=(C1,..,CK).

Chaque flux est affecté à une classe Ck

L’objectif est de maximiser l'homogénéité au sein de chaque classe et l'hétérogénéité entre ces classes.

Page 15: La fouille des flux d'informations

AAFD 2010 15

Classification de flux évolutifsClassification de flux évolutifs

Cette classification doit contenir des résumés des données permettre de découvrir la structure de

regroupement au cours du temps détecter les changements dans les proximités

entre les flux au cours du temps être capable de faire face à l'évolution des flux de

données.

Page 16: La fouille des flux d'informations

AAFD 2010 16

StratégieStratégie

La stratégie de classification se décompose en trois étapes:

On-line:

Off-line – à la demande des utilisateurs

• classification locale réalisée sur les fenêtres disjointes

• Mise à jour de la matrice d’adjacence

• Mise à jour de la partition en k classes de l’ensemble des flux de données .

Page 17: La fouille des flux d'informations

AAFD 2010 17

Classification localeClassification localeSur chaque fenêtre la méthode des Nuées Dynamique est appliquée et

fourni les résultats suivants: - une partition locale des flux - un ensemble local des prototypes (résumés des flux dans cette fenêtre)

1

2

3

4

5

6

7

8

9

Partition localePrototypes

C1

C2

C3

Page 18: La fouille des flux d'informations

AAFD 2010 18

Mise à jour de la matrice A d’adjacence

Pour chaque classe locale de la fenêtre courante:

Sélectionner les paires (Yi,Yj) de flux classés dans la même classe locale. Pour chaque paire (Yi,Yj) ajouter la valeur 1 à A(i,j) et à A(j,i) de A.

Y1 Y 2 Y 3 Y 4,…

Y1 160 50 5 5

Y 2 50 160 10 45

Y 3 5 10 160 55

Y 4 5 45 55 160

Y 5,… 55 5 50 45

Δt1 Δt2 Δt3 Δt4 Δt5 Δt6

1 8 1 7 5 4

2 6 2 8 7 2

6 4 4 6 8 1

4 3 7 1 1 5

5 7 3 2 2 7

3 5 5 3 4 8

7 1 6 5 6 6

8 2 8 4 3 3

A(2,1)=A(2,1)+1

A(1,2)=A(1,2)+1

Page 19: La fouille des flux d'informations

AAFD 2010 19

Mise à jour du graphe

Y 1 Y 2 Y 3 Y n

Y 1 160 50 1 5

Y 2 50 160 10 45

Y 3 1 10 160 55

Y 4 5 45 55 160

Y 5 55 0 50 45

Y n 45 50 40 10

Les nœuds du graphe sont les flux

Les éléments de la matrice d’adjacence représente les nombre d’arêtes liant les deux flux. GRAPH

A = MATRICE D’ADJACENCE

Page 20: La fouille des flux d'informations

AAFD 2010 20

La partition globaleLa partition globale

A partir de cette matrice de proximités il est possible de construire une partition de cet ensemble de flux.

Cette partition peut être obtenue par :

Une analyse (MDS) à partir de la matrice d’adjacence A Puis faire K-means sur les coordonnées factorielles

ou bien

• Faire K-médoides ou une MDS sur la matrice des proximités

Page 21: La fouille des flux d'informations

AAFD 2010 21

Analyse multidimensionnelle

MDS génère une représentation d’un ensemble de points dans un espace de dimension plus réduite

Sachant que la matrice d’adjacence A représente une similarité entre deux flux. Il est facile de transformer cette similarité en distance par:

D(i,l) = MAX(A) - A(i,l)

Page 22: La fouille des flux d'informations

AAFD 2010 22

K-means sur l’ensemble des projections des points dans cet espace réduit

K-means donne une partition à partir de ces facteurs.

Page 23: La fouille des flux d'informations

La stratégie de classification proposée est également en mesure de fournir la structure de classification sur des intervalles de temps spécifiés par l’utilisateur.{Requête de classification

w91 w92 w93 w94 w95 w96 w97 w98 w99w90

Fournir des résultats au cours du temps

Page 24: La fouille des flux d'informations

La matrice d’adjacence A est stockée pour chaque fenêtre

A3A1

A(3,1)=A3-A1

Fournir la classification dans l’intervalle de temps [32t ; 4t]Il faut calculer la matrice A(3,1) entre les matrices A1 et A3 par

L’étape de classification off-line est appliquée sur cette matrice

Fournir des résultats au cours du temps

Page 25: La fouille des flux d'informations

Classification On line sur deux ensembles de données

76 séries chronologiques de Yahoo Finance, qui représentent le prix quotidien de clôture des actions ordinaires .

179 séries chronologiques qui représentent la fourniture en électricité à plusieurs endroits en Australie.

Données financièresDonnées sur la fourniture d’électricité

Exemples

Page 26: La fouille des flux d'informations

Impact du nombre de classes locales sur deux indices de validation interne:

Le nombre de classes dans les partitions locales n'a aucune influence sur les résultas de la classification finale en fonction des valeurs des deux indices (DB et CH)

Validation interne

Page 27: La fouille des flux d'informations

AAFD 2010 27

PlanPlan

Introduction/ Flux d’information Fouille de flux de données Classification de flux évolutifs Extraction des données d’usage/ Web Mining Classification de données évolutives Détermination du nombre de classes Conclusions

Page 28: La fouille des flux d'informations

AAFD 2010 28

Flux d’informationsFlux d’informations

L’ensemble Y(xm) des unités de collecte associées à chaque unité statistique xm est fini.

Les unités statistiques sont issues d’une population de taille infinie.

Y(xm)=((tm1,(xm1,ym1)), …, (tmN,(xmN,ymN)) avec xml=xm et l=1,…,i,…N

Page 29: La fouille des flux d'informations

AAFD 2010 29

Quelques mots sur le Web MiningQuelques mots sur le Web Mining

Se décline en trois domaines d’application :- Web Content Mining (contenu des documents)

- Web Structure Mining (structure des documents)

- Web Usage Mining (comportement des utilisateurs)

Motivations pour le Web Usage Mining :- Cache « intelligent »

- Personnalisation des pages

- Reconception du site

- « Comprendre » l’internaute

Page 30: La fouille des flux d'informations

AAFD 2010 30

MotivationMotivation

La plupart des méthodes du WUM (Web Usage Mining) prennent en compte toute la période qui enregistre les traces d’usage : – les résultats obtenus sont ceux qui

prédominent sur la totalité de la période Inconvénients :

– certains types de comportements peuvent être ignorés par les méthodes classiques

Page 31: La fouille des flux d'informations

AAFD 2010 31

ObjectifObjectif

Réaliser une analyse portant sur des sous-périodes significatives de temps :– identifier le changement de comportement des

utilisateurs– étudier l’évolution temporelle des profils de ces

utilisateurs

Utilisation des résumés pour représenter les profils

Page 32: La fouille des flux d'informations

AAFD 2010 32

Formatage des données d’usageFormatage des données d’usageLe clic est l’unité de collecte

[remotehost] [name] [login] [date] [url] [status] [size] [remotehost] [name] [login] [date] [url] [status] [size] [referrer] [agent][referrer] [agent]

remotehost remotehost adresse électronique de l’utilisateur; cette adresse correspondant souvent au nom de domaine d’un serveur

si l’utilisateur est connecté à internet via un fournisseur d’accès ou une entreprise

name/loginname/login supposent que l’utilisateur se soit lui-même identifié

datedate  date et heure précises de réception de la requête

URLURL adresse de la page visitée sur le site (www.<…>)

statusstatus code retour qui indique si l’action s’est bien déroulée

size size  indique la taille du fichier retourné

referrerreferrer  signale l’adresse de laquelle a effectué la requête, la page de provenance

agentagent  le navigateur et le type de système d’exploitation de l’utilisateur

Page 33: La fouille des flux d'informations

AAFD 2010 33

Prétraitement de donnéesPrétraitement de données

Tanasa & Trousse (Advanced Data Preprocessing for Intersites Web UsageMining, IEEE Intelligent Systems, vol. 19, n° 2, pp. 56-65, April 2004)Tanasa’s Thesis (2005)

IIS

ECLF

ECLF

Fusion Structuration

Identification des utilisateursIdentification des sessionsIdentification des navigationsIdentification des requêtesIdentification des robots

Sélection des sourcesExtraction des donnéesMarquage source serveurMarquage source fichier

Transformation

Prétraitement classique Prétraitement avancé

Sélection requête non robotConstruction entrepôt

Extension

Données externes aux fichiers logs

IIS

ECLF

ECLF

Fusion Structuration

Identification des utilisateursIdentification des sessionsIdentification des navigationsIdentification des requêtesIdentification des robots

Sélection des sourcesExtraction des donnéesMarquage source serveurMarquage source fichier

Transformation

Prétraitement classique Prétraitement avancé

Sélection requête non robotConstruction entrepôt

Extension

Données externes aux fichiers logs

Structuration et transformation des données (clic, session, navigation, url, etc.)Stockage de ces informations dans un entrepôt de données

Page 34: La fouille des flux d'informations

AAFD 2010 34

PlanPlan

Introduction/ Flux d’information Fouille de flux de données Classification de flux évolutifs Extraction des données d’usage/ Web Mining Classification de données évolutives Détermination du nombre de classes Conclusions

Page 35: La fouille des flux d'informations

AAFD 2010 35

Dans le cadre des flux de donnéesDans le cadre des flux de données

temps

Not

re

prop

ositi

on

(P1, P2, …, Pk)

Classification locale

L’évolution des classes sera détectée en comparant la classification globale avec la classification localeDiviser la période analysée en sous périodes significatives : mois de l’annéemois de l’année

Classification globale

Page 36: La fouille des flux d'informations

AAFD 2010 36

(b) Étape d’affectation

Pour chaque objet si de calculer l’indice l de la classe d’affectation qui vérifie

(a) Initialisation

Choisir K prototypes L1,...,LK distincts de

(c) Étape de représentation

Pour chaque classe k rechercher le prototype Lk de qui minimise

),(minarg iK1,...,k kLl x

kCs

sk LLCw ),(),( x

Répéter (b) et (c) jusqu’à la convergence

Algorithme des Nuées dynamiques« k-means batch »

Page 37: La fouille des flux d'informations

AAFD 2010 37

Algorithme k-means

Initialisation Prendre K points de p ),,( 0100

KLLL

Une étape t de calcul On associe à la réalisation xt la classe

k dont le représentant le plus proche tlt

KlxLk ,minarg

,,1

On modifie le représentant de la classe k par11

k

tktkk

t n

xLnL

avec nk est le nombre de réalisations déjà mises dans la classe k.

tt LL ,1condition d’arrêt il faut

On suppose que nous avons un échantillon de taille infinie.

 A la réalisation xt nous ne disposons que de l'information connue

sur l’échantillon de taille t .

Page 38: La fouille des flux d'informations

AAFD 2010 38

Classification par sous-périodes de Classification par sous-périodes de tempstemps

Paramètres de l’algorithme:– Nombre de classes – Nombre maximum d’essais

Classifications non supervisées

proposées:1. Classification globale (CG)

2. Classification locale précédente (CGL1)

3. Classification locale dépendante (CGL2)

4. Classification locale indépendante (CLI)

Page 39: La fouille des flux d'informations

AAFD 2010 39

Classification globale (CG)Classification globale (CG)

Page 40: La fouille des flux d'informations

AAFD 2010 40

Classification locale précédente (CGL1)Classification locale précédente (CGL1)

Page 41: La fouille des flux d'informations

AAFD 2010 41

. . . . . .

22emeeme sous-périodesous-période

11ereere sous- sous-périodepériode

33emeeme sous-périodesous-période

44emeeme sous-périodesous-période

NNemeeme sous-périodesous-période

PP11, P, P22, …, P, …, P1010

Classification locale dépendante(CGL2)Classification locale dépendante(CGL2)

Page 42: La fouille des flux d'informations

AAFD 2010 42

Classification locale dépendante(CGL2)Classification locale dépendante(CGL2)

Page 43: La fouille des flux d'informations

AAFD 2010 43

Classification locale indépendante(CLI)Classification locale indépendante(CLI)

Page 44: La fouille des flux d'informations

AAFD 2010 44

Comparaison des stratégies de classificationComparaison des stratégies de classification

Page 45: La fouille des flux d'informations

AAFD 2010 45

Analyse d’un site académiqueAnalyse d’un site académique

Page 46: La fouille des flux d'informations

AAFD 2010 46

Analyse des résultats par les prototypesAnalyse des résultats par les prototypes

Pour comprendre l’évolution des classes par sous-périodes, nous avons:

– réalisé un suivi des prototypes des classes (mois par mois) pour les classifications

• Locale indépendante (CLI)• Locale dépendante (CLG2)

– projeté ces prototypes dans le plan factoriel obtenu sur la population totale

Page 47: La fouille des flux d'informations

AAFD 2010 47

Suivi des prototypes des classesSuivi des prototypes des classes

Classification locale indépendante (CLI) Classification locale dépendante (CLG2)

Page 48: La fouille des flux d'informations

AAFD 2010 48

Variance intra-classes (W)Variance intra-classes (W)

Variance intra-classes : indépendante (trait noir), dépendante (trait rouge) et globale (trait bleu).

Page 49: La fouille des flux d'informations

AAFD 2010 49

Critères d’évaluation (validation interne):

– Pour une analyse entre deux partitions• l’indice de Rand corrigé (Hubert et Arabie (1985))

– Pour une analyse classe par classe• F-mesure (van Rijsbergen (1979))

Analyse des résultats par les partitionsAnalyse des résultats par les partitions

Page 50: La fouille des flux d'informations

AAFD 2010 50

Résultats avec l’indice de Rand corrigéRésultats avec l’indice de Rand corrigé

Page 51: La fouille des flux d'informations

AAFD 2010 51

Résultats avec la Résultats avec la F-mesureF-mesure

Page 52: La fouille des flux d'informations

AAFD 2010 52

Détection et suivi des Détection et suivi des changementschangements

Page 53: La fouille des flux d'informations

AAFD 2010 53

Interprétation des changementsInterprétation des changements

Page 54: La fouille des flux d'informations

AAFD 2010 54

Interprétation des changementsInterprétation des changements

Page 55: La fouille des flux d'informations

AAFD 2010 55

Stratégie d’évolution du nombre de Stratégie d’évolution du nombre de classesclasses

Appliquer l’algorithme SOM (Kohonen, 1995) avec une grille contenant 200 neurones initialisés par une ACP (Elemento, 1999)

Appliquer une CAH avec le critère de Ward sur les prototypes (neurones) obtenus par l’algorithme SOM (Murtagh, 1995)

Tracer le graphique des gains d'inertie intra-classe obtenus à chaque itération de l'algorithme CAH

Le nombre de classes à retenir sera obtenu par :- L'application des différents indices de détermination du

nombre de classes [1-8]- Le coude dans la décroissance des valeurs du gain

d'inertie intra-classe, repéré à l'aide des dérivées premières et secondes [D] (Lebart et al., 1995)

Page 56: La fouille des flux d'informations

AAFD 2010 56

PlanPlan

Introduction/ Flux d’information Fouille de flux de données Classification de flux évolutifs Extraction des données d’usage/ Web Mining Classification de données évolutives Détermination du nombre de classes Conclusions

Page 57: La fouille des flux d'informations

AAFD 2010 57

Détermination du nombre de classesDétermination du nombre de classes

Question largement exploitée dans la littérature (Milligan & Cooper, 1985), (Dubes, 1987) (Halkidi & Vazirgiannis, 2001)

"Une classification ne peut pas être vraie ou fausse, ni probable ou improbable, mais seulement profitable ou non profitable" (Williams & Lance, 1965)

Découverte du vrai nombre de classes ?- Nombre de clusters acceptable/utile dans un but précis

Page 58: La fouille des flux d'informations

AAFD 2010 58

Les indices utilisés…Les indices utilisés…

la pseudo-statistique de Calinski et Harabasz (CH) [ou G1* sur R]

l'indice de Baker et Hubert (BH) [ou G2* sur R] l'indice de Hubert et Levin (HL) [ou G3* sur R] l'indice Silhouette (S) l'indice de Davies et Bouldin (DB) l'indice de Krzanowski et Lai (KL) l'indice de Hartigan (H) la statistique Gap (G) stratégie de détermination du nombre de classes basée sur les

dérivées première et seconde (D)

*Package clusterSim de R : http://cran.r-project.org/web/packages/clusterSimM

Page 59: La fouille des flux d'informations

AAFD 2010 59

Expérimentation sur des données Expérimentation sur des données artificiellesartificielles

Page 60: La fouille des flux d'informations

AAFD 2010 60

Expérimentation sur des données Expérimentation sur des données artificiellesartificiellesLe nombre de classes est donné pour chaque

indice et pour chaque fenêtre.

Meilleure performance:•l'indice de Hartigan•la stratégie basée sur des dérivées

Page 61: La fouille des flux d'informations

AAFD 2010 61

Critère de la dérivée avec des données Critère de la dérivée avec des données artificiellesartificielles

Les différences premières et secondes des inerties intra-classes relatives des partitions contenant de 2 à 30 classes :

Page 62: La fouille des flux d'informations

AAFD 2010 62

Expérimentation sur des données Expérimentation sur des données réellesréelles

Nombre de classes suggéré par les différents indices pour le jeu de données d'usage du CIn-UFPE :

Page 63: La fouille des flux d'informations

AAFD 2010 63

Résultat obtenu par le critère des dérivées Résultat obtenu par le critère des dérivées pour la première fenêtre analyséepour la première fenêtre analysée

Les différences premières et secondes des inerties intra-classes relatives des partitions contenant de 2 à 30 classes :

Page 64: La fouille des flux d'informations

AAFD 2010 64

Caractéristiques et avantages de Caractéristiques et avantages de l'approchel'approche

1 Stratégie basée sur des fenêtres disjointes2 Indépendance de la méthode de classification3 Processus de détection des changements basé

sur l'extension4 Résumé des données au cours du temps5 Application des algorithmes non incrémentaux

dans un processus incrémental6 Applicabilité dans un processus opérationnel7 Généricité d'application dans d'autres domaines