La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Lassociation Plan Définition et Objectifs Association simple Association séquentielle Filtrage collaboratif Autres méthodes.

Présentations similaires


Présentation au sujet: "Lassociation Plan Définition et Objectifs Association simple Association séquentielle Filtrage collaboratif Autres méthodes."— Transcription de la présentation:

1 Lassociation

2 Plan Définition et Objectifs Association simple Association séquentielle Filtrage collaboratif Autres méthodes Applications Exemple

3 Définition et Objectifs Rechercher les relations « stables » existant entre les caractéristiques dun invididu Applications typiques Personnalisation Connaissant certaines caractéristiques individuelles dun client, comment prévoir les produits qui vont lintéresser ? Vente croisée Si un client a déjà acheté certains produits, quels sont les autres produits qui pourraient lintéresser ?

4 Caractérisation Lassociation est un problème non supervisé (comme la segmentation) La nature fondamentale du problème est un calcul de probabilité conditionnelle. En fonction des applications : Les résultats attendus Règles dassociation Recommandations directes La méthode utilisée Ou comment estimer P(.|.) ?

5 Association simple

6 Méthode issue dune application: Le market basket analysis (analyse du panier de la ménagère) Définition Découverte de règles du type « Un client qui achète les produits A et B va également acheter le produit C, avec une probabilité p »

7 Caractérisation Application Cest un problème typique de vente croisée Méthode Uniquement basée sur les données (méthode descriptive ensembliste) Pas dapproche probabiliste formalisée (hypothèse de distribution, etc.)

8 Difficultés pratiques Les données Les références produits Nombre Organisation hiérarchique Les transactions Volumes énormes : tickets de caisse, visites de pages web Conséquence Nombre de règles potentiellement énorme Evaluer la pertinence des règles

9 Evaluation des règles Forme des règles Les clients qui achètent X achètent aussi Y Deux critères fondamentaux Support Nombre de cas où X et Y sont présents Confiance Support (X et Y) / Support (X) (autrement dit P(Y|X))

10 Formalisation Notations (1) ={x 1, x 2, …x n } est le catalogue des articles X est un itemset (ensemble darticles) T=(id,xT) est une transaction ssi id est un identifiant xT est un itemset D est lensemble des transactions, appelé base de données

11 Formalisation Notations (2) Une transaction T=(id,xT) supporte X ssi X xT (noté aussi X T) Le support dun itemset X est le pourcentage de transactions de D qui supportent X Une règle associative est une expression X Y, où X et Y sont disjoints

12 Exemple NomNotationExemple CatalogueD{crèmerie, poissonnerie, fruits, papeterie, boucherie,conserves, surgelés, bière, vin, eau} ItemsetX{crèmerie, eau} TransactionT(10225, {crèmerie,conserves,eau}) Base de données D(10221, {fruits,crèmerie, eau}) (10222, {fruits,eau, poissonnerie, papeterie}) (10223, {conserves,crèmerie, eau}) (10224, {fruits, surgelés, crèmerie, eau}) (10225, {crèmerie, conserves, eau}) SupportSupp(X)80% Règle associative X=>Y {crèmerie, eau} {fruits}

13 Reformulation du problème Rechercher les règles associatives qui sont vraies dans la base de données Intuitivement, X=>Y est dautant plus vraie que le pourcentage de transactions contenant Y parmi les transactions contenant X est proche de 1 Sexprime par la confiance de la règle: Confiance(X=>Y) = Supp(X Y)/Supp(X) i.e. P(Y T|X T)

14 Retour à lexemple (1) NomNotationExemple CatalogueD{crèmerie, poissonnerie, fruits, papeterie, boucherie,conserves, surgelés, bière, vin, eau} ItemsetX{crèmerie, eau} TransactionT(10225, {crèmerie,conserves,eau}) Base de données D (10221, {fruits,crèmerie, eau}) (10222, {fruits,eau, poissonnerie, papeterie}) (10223, {conserves,crèmerie, eau}) (10224, {fruits, surgelés, crèmerie, eau}) (10225, {crèmerie, conserves, eau}) SupportSupp(X)80% Règle associative X=>Y {crèmerie, eau} {fruits} Confiance (X=>Y)=50%

15 Retour à lexemple (2) NomNotationExemple CatalogueD{crèmerie, poissonnerie, fruits, papeterie, boucherie,conserves, surgelés, bière, vin, eau} ItemsetX{crèmerie, eau} TransactionT(10225, {crèmerie,conserves,eau}) Base de données D (10221, {fruits,crèmerie, eau}) (10222, {fruits,eau, poissonnerie, papeterie}) (10223, {conserves,crèmerie, eau}) (10224, {fruits, surgelés, crèmerie, eau}) (10225, {crèmerie, conserves, eau}) SupportSupp(X)80% Règle associative X=>Y {crèmerie, eau} {fruits} Confiance (papeterie=>poissonnerie)=100%

16 Sélection des règles (suite) La confiance dune règle nest pas une mesure suffisante Les règles doivent être : Bien représentées (support élevé) Fiables (confiance élevée)

17 Résumé NomDéfinition ou formuleCommentaire Support dune règle Supp(X Y)=Supp(X Y) Nombre de transactions pour lesquels les deux membres de la règle sont présents. Confiance dune règle Conf(X Y)= Supp(X Y)/Supp(X) Probabilité conditionnelle quune transaction contienne les articles Y, sachant quelle contient les articles X. Itemset fréquent Un itemset dont le support est supérieur à un seuil fixé, minsupp Pour la recherche dune règle « intéressante », la condition la plus restrictive est que litemset associé soit fréquent. La recherche ditemsets fréquents est donc la premièré étape essentielle de la recherche de règles.

18 Mise en oeuvre Principe Rechercher les itemsets fréquents Z Chercher les décompositions de Z en X et Y ayant une confiance élevée Difficultés Espace de recherche énorme Nb références~ k.10 4 Nb transactions ~ k.10 6 Le nombre ditemsets est le nombre de parties dun ensemble (2 N ) ! Calcul du support : évaluer pour chaque transaction si un itemset y est présent ou pas

19 Algorithme APriori IBM Projet QUEST (datamining) A conduit au développement de IntelligentMiner Idée fondamentale (très simple) Tous les sous-ensembles dun itemset fréquent sont fréquents Les surensembles dun itemset non fréquent ne sont pas fréquents (contraposée)

20 Principe dAPriori

21 Algorithme APriori 1.Recherche des singletons fréquents (i.e. les articles les plus consommés) 2.Soit L k = {itemsets fréquents à k éléments} A partir de L k, on calcule un ensemble de candidats C k+1 On considère deux éléments de L k qui diffèrent par un seul élément et on en fait lunion pour obtenir un candidat c k+1 On considère alors tous les sous-ensembles à k éléments de c k+1. Sils sont tous dans L k, on conserve c k+1 dans C k+1. Sinon, on passe au candidat suivant. 3.Les éléments de C k+1 de support supérieur à minsupp forment L k+1.

22 Exemple L 2 ={{1,2}, {1,3}, {1,4}, {2,3}, {2,4}} Construction de C 3 {1,2,3} OK {1,2,4} OK {1,3,4} rejeté ({3,4} L 2 ) {2,3,4} rejeté ({3,4} L 2 ) C 3 ={{1,2,3}, {1,2,4}} Test de support sur C 3 : passe seulement sur {1,2,4}

23 Apport dinformation dune règle NomNotationExemple CatalogueD{crèmerie, poissonnerie, fruits, papeterie, boucherie,conserves, surgelés, bière, vin, eau} ItemsetX{crèmerie, eau} TransactionT(10225, {crèmerie,conserves,eau}) Base de données D(10221, {fruits,crèmerie, eau}) (10222, {fruits,eau, poissonnerie, papeterie}) (10223, {conserves,crèmerie, eau}) (10224, {fruits, surgelés, crèmerie, eau}) (10225, {crèmerie, conserves, eau}) SupportSupp(X)80% Règle associative X=>Y {crèmerie, eau} {fruits} Confiance ({fruits,crèmerie}=> {eau})=100% Mais Support({eau})=100% !!!

24 Apport dinformation dune règle Lift = Confiance(X Y)/Support(Y) Exemple Nombre de transactions : 1000 Transactions contenant {Lait}: 200 Transactions contenant {Bière}: 50 Transactions contenant {Lait,Bière}: 20 Support(Y) = 50/1000 = 5% Confiance(X Y) = 20/200 = 10% Lift = 10%/5% = 2

25 Améliorations de lalgorithme APriori Noyau de lalgorithme Apriori : Utiliser les (k – 1)-itemsets fréquents pour générer des k-itemsets candidats Parcourir la base de données pour calculer le support des candidats et les évaluer. Limites Génération des candidats toujours énorme Parcours de la BD pour évaluer le support Améliorations possibles Ordonner les articles Elimination des candidats contenant des sous-ensembles non- fréquents Supprimer les transactions ne contenant pas ditemsets fréquents

26 Améliorations de lalgorithme APriori Algorithme FP Growth (Han, Pei, Yin 2000) Avantage : recherche densembles fréquents sans génération de candidats Principe : résumer la BD sous forme dun arbre (Frequent Pattern Tree) Démarche : Parcourir une fois la BD pour ordonner les articles par fréquence décroissante Organiser les transactions de la base (triées suivant lordre précédent) en un arbre

27 Construction de larbre FP IDArticles 1{A,B} 2{B,C,D} 3{A,C,D,E} 4{A,D,E} 5{A,B,C} 6{A,B,C,D} 7{B,C} 8{A,B,C} 9{A,B,D} 10{B,C,E} A:1 B:1 A:1 B:1 C:1 D:1 B:1

28 Construction de larbre FP IDArticles 1{A,B} 2{B,C,D} 3{A,C,D,E} 4{A,D,E} 5{A,B,C} 6{A,B,C,D} 7{B,C} 8{A,B,C} 9{A,B,D} 10{B,C,E} A:7B:1 C:1 D:1 B:5C:1 D:1 C:3D:1

29 Exploration de larbre FP Préconditions pour C AB:3 A:1 B:1 Itemsets fréquents contenant C ABC:3 AC:4 BC:4 A:7B:1 C:1 D:1 B:5C:1 D:1 C:3D:1

30 Introduction de hiérarchies Vêtements Ville Chaussures Villes peut être valide, même si: Chemises Chaussures Villes Pantalons Chaussures Villes ne sont pas valides

31 Conclusion Recherche de règles dassociation Approche ensembliste Apparentée à linterrogation de base de données Peu ou pas de fondement statistique Distribution sous-jacente ? Significativité des règles ? Lune des méthodes de datamining les plus utilisées Consommation (supermarchés) Analyse de pannes Web usage mining

32 Association séquentielle

33 Application typique : Web usage Mining Analyse des séquences de navigation sur un site (A B C A C B) Forme générale dune séquence daction: Le client a effectué laction A, puis simultanément les actions B et C, puis laction D. Notion de simultanéité : même commande, même visite, même période de temps ?

34 Association séquentielle Web Usage Mining Utilisation de fichiers « access log » Equivalence : « panier de la ménagère » ~ « comportement dun visiteur sur un serveur » Applications reconception ou modification dynamique de la structure dun site préchargement des données

35 Recherche de séquences Support = 60% (3 clients) =>

36 Filtrage collaboratif

37 Le filtrage collaboratif Ou filtrage par communauté de préférence Méthode développée pour une application concrète : estimation de lintérêt de clients pour un produit donné. Utilisé essentiellement pour des produits culturels : livres (Amazon), films (moviecritic)

38 Exemple: Amazon

39 Position du problème Système de recommandation Conseiller un produit culturel à quelquun Le conseil est bon si le produit a plu à la personne Différent de la recommandation commerciale classique où le conseil est bon si le produit recommandé est acheté Comment évaluer la qualité dun tel système ?

40 Evaluation dun système de recommandation La recommandation est bonne si le spectateur : Va voir le film Confirme quil lui a plu Le système est comparé avec : Recommandation aléatoire Recommandation majoritaire (hit-parade)

41 Améliorer la recommandation majoritaire Hit-parade conditionnel Exemple : proposer aux jeunes le hit-parade des jeunes Filtrer la population sur laquelle on établit le hit-parade Filtrage par communautés de préférence Sélectionner ceux qui ont les mêmes goûts que le spectateur considéré

42 Principe du filtrage collaboratif

43 Avantages & Inconvénients Avantages Aucune connaissance sur les spectateurs nest nécessaire Aucune analyse des contenus nest nécessaire Inconvénients Nécessite un volume de données initial important (impossible de conseiller quelquun qui na vu aucun film) Ne permet pas de prendre en compte la proximité entre les contenus (pour gérer les cas de faible intersection)

44 Formalisation Un algorithme de filtrage collaboratif se définit par : Le calcul de la proximité entre deux personnes (« spectateurs ») La méthode de filtrage (sélection des individus dits « proches ») La méthode de prévision (production dune note pour un film)

45 Formalisation On utilise en général Un coefficient de corrélation entre deux utilisateurs comme proximité, Un seuillage comme méthode de filtrage Une moyenne pondérée par les distances comme méthode de prévision

46 Exemple de formalisation Proximité La proximité entre lutilisateur a et lutilisateur u est calculée comme un coefficient de corrélation entre leurs notations (représente la notation de lutilisateur a pour larticle i, représente la moyenne des notes de lutilisateur a, et lécart-type des notes de lutilisateur a. Sélection On sélectionne comme « voisins » de lutilisateur a ceux dont la proximité est supérieure à un certain seuil. Prévision La prévision de note du système pour lutilisateur a et larticle i est calculée comme la moyenne des notes que larticle i a obtenu parmi les voisins de lutilisateur a. (noter quon a recentré les notes par rapport à la moyenne des notes de chaque utilisateur considéré).

47 GroupLens Créé en 1995 à lUniversity of Minnesota Site de recommandation Fonctionnement Evaluation de 15 films minimum Proposition de recommandations

48 Améliorations Problème Intersection des évaluations vide Ceux qui ont acheté ces livres …= Idée Organisation arborescente des contenus Ceux qui ont acheté Ces livres ou … des livres dans cette catégorie ou … des livres dans cet ensemble de catégories

49 Autres techniques

50 Les réseaux bayésiens Aujourdhui Une présentation intuitive Sur un exemple Cours Classification Formalisation complète

51 Etude club-java.com Site de contenu technique sur Java Objectif de lapplication Personnaliser les contenus offerts aux visiteurs A partir dun modèle de leurs préférences

52 Introduction aux réseaux bayésiens Un modèle graphique probabiliste de connaissances Acquisition de la connaissance Utilisation de la connaissance

53 Modèles graphiques probabilistes de connaissance Mainissue Solution Usage JavaUser Field Le graphe représente la structure de la connaissance le principal problème perçu (MainIssue) dépend du domaine dactivité (Field) et de lusage de Java (Usage) le principal problème perçu (MainIssue) dépend du domaine dactivité (Field) et de lusage de Java (Usage) La connaissance est quantifiée par des probabilités P(MainIssue|Field, Usage) Le réseau bayésien est une distribution de probabilités factorisée suivant le graphe P(Field).P(JavaUser|Field).P(Usage|JavaUser).P(MainIssue|Field,Usage).P(Solution|FieldUsage)

54 54 Mainissue Solution Usage JavaUser Field Apprentissage de la structure Expertise Données ?? Apprentissage de la structure Expertise Données ?? Acquisition de la connaissance Apprentissage des paramètres Données Expertise ?? Apprentissage des paramètres Données Expertise ?? P(Field=Telecommunications), P(Field=Computing),... P(MainIssue=LackofTools|Field=Computing, Usage=B2C), P(MainIssue=LackofTools|Field=Computing, Usage=B2B),... P(Field=Telecommunications), P(Field=Computing),... P(MainIssue=LackofTools|Field=Computing, Usage=B2C), P(MainIssue=LackofTools|Field=Computing, Usage=B2B),...

55 55 Mainissue Solution Usage JavaUser Field Utilisation de la connaissance Field observation(e) Probabilité (X|e) ? Mise à jour des probabilités : P(X|e) Calculer la probabilité de variables non observées, à partir dune information partielle Inférences avancées Maximum a posteriori Analyse de sensibilité Gain dinformation etc. Mise à jour des probabilités : P(X|e) Calculer la probabilité de variables non observées, à partir dune information partielle Inférences avancées Maximum a posteriori Analyse de sensibilité Gain dinformation etc.

56 56 Données Environ 1000 questionnaires 21 questions, la plupart à réponses multiples 116 questions à réponse simple Environ 1000 questionnaires 21 questions, la plupart à réponses multiples 116 questions à réponse simple Q1.1 For what kind of application do you feel Java may be useful for ? B2B Customer care … Q2.15 What kind of tools or solutions are you using ? Application servers Java-enabled databases... Q1.1 For what kind of application do you feel Java may be useful for ? B2B Customer care … Q2.15 What kind of tools or solutions are you using ? Application servers Java-enabled databases...

57 57 JESS 99 : Connaissances Analyse des données Axes factoriels principaux Classification hiérarchique Expertise Pas dexpertise spécifique Connaissance de bon sens Les données sont supposées représenter : la distribution des visiteurs de Jess par extension, celle des utilisateurs de Java Analyse des données Axes factoriels principaux Classification hiérarchique Expertise Pas dexpertise spécifique Connaissance de bon sens Les données sont supposées représenter : la distribution des visiteurs de Jess par extension, celle des utilisateurs de Java

58 58 Mise au point du modèle Apprentissage de structure apprentissage automatique addition manuelle de liens : bon sens, évolution Apprentissage de paramètres apprentissage automatique Outil utilisé Bayesian Knowledge Discoverer Apprentissage de structure apprentissage automatique addition manuelle de liens : bon sens, évolution Apprentissage de paramètres apprentissage automatique Outil utilisé Bayesian Knowledge Discoverer

59 59 Le modèle obtenu Mainissue Solution Usage JavaUser Field Tools History Team Success Dept Size Function Knowledge Need

60 60

61 61

62 62

63 63

64 64 Principe Personnalisation du site Club-Java Principe Personnalisation du site Club-Java Exemple de mise en oeuvre fonctionnelle La mise en ligne du modèle 1. navigation 2. observation 3. inférence 4. recommandation


Télécharger ppt "Lassociation Plan Définition et Objectifs Association simple Association séquentielle Filtrage collaboratif Autres méthodes."

Présentations similaires


Annonces Google