SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
ok
ok
Plan
Définition de FP
Algorithme Apriori
Applications de FP
FP Growth
Etape de FP Growth
Exemple
Test avec pyfpgrowth
ok
Définition
Pattern (set of items, sequence, etc.), qui aparait fréquemment dans
une base de données (TI pixels)
Grace à fp mining nous pouvons répondre à:
Quels sont les produits qui ont souvent été achetés ensemble?
(lait et sucre)
Quelle est la prochaine cible après l'achat d'un PC
ok
Application de FP mining
FP mining peut servir à plusieurs tâches essentielles de fouile de
données :
association, corrélation, causalité
périodicité partielle, associations cycliques / temporelles
Applications:
analyse de données de paniers, marketing croisé, conception de catalogue,
analyse perte, classification, web log squence, analyse de l'ADN, etc.
ok
Algorithme Apriori
Proposé par Agrawal & Srikant 1994
Un algorithme de niveau similaire à celui de Mannila et al. 1994.
Idée principale:
Un sous-ensemble d'un ensemble d’item fréquent doit être fréquent
Par exemple, si {lait, sucre, café} est fréquent, {lait, café} doit être fréquent
lui aussi.
On remarque Si un sous ensemble est rare (pas fréquent), son sur-
ensemble peut ne pas l’ être !
ok
Algorithme Apriori
Le problème de la découverte de motifs fréquents dans ce cas consiste, étant donné un
contexte d’extraction défini
par un ensemble d’objets décrits par la liste de leurs attributs et un seuil de support
minimal minsup, à découvrir tous les motifs qui apparaissent plus de minsup fois dans
la
base. L’extraction des motifs fréquents consiste à parcourir itérativement par
niveaux l’ensemble des motifs. Durant chaque itération ou niveau k, un ensemble de
motifs candidats est créé en joignant les motifs fréquents découverts durant l’itération
précédente k-1 ; les supports de ces motifs sont calculés et les motifs non fréquents
sont
supprimés. Dans cette approche le problème de recherche de motifs fréquents est
exponentiel par rapport au nombre d’attributs. En effet, s’il y a n attributs, il y a 2n
motifs
possibles et dans le pire des cas ils sont tous fréquents. Ainsi la quantité énorme de
motifs
fréquents extraits requiert la mise en place d'un post-traitement efficace afin de cibler
les
motifs fréquents les plus utiles.
ok
Algorithme Apriori
L'algorithme Apriori:
Utilise des éléments fréquents (k-1) pour générer des k-itemsets
fréquents
L’étape importante d'Apriori: la génération des candidats et donc ensemble
de candidats énormes:
10^4 éléments fréquents 1-itemset va générer plus que 10^7 candidats 2-
itemsets
Pour trouver un motif fréquent de taille 100, par exemple {a1, a2, ..., a100},
il faut générer 2^100 cad environ 10^30 candidats.
Plusieurs parcours (scan) de la base de données:
Besoins (n +1) parcours, n est la longueur du motif le plus long
ok
FP Growth
Compression d’une base de données volumineuse en une structure
d'arbre compact (FP-tree).
fortement condensé, mais complet pour l’FP mining(aucune perte de
donnée)
éviter les plusieurs parcours de bases de données qui sont coûteuses
et les réduire en 2.
Évitez la génération de candidats: test sur sous-base de données
seulement!
ok
Fp tree
Ne casse jamais un long motif (pattern) d’une transaction.
Préserve des informations complètes pour l’FP mining.
Réduit les informations non pertinentes - les items peu fréquents sont
éliminés
Tri décroissante de fréquence: les items les plus fréquents sont plus
susceptibles d'être partagés.
Ne jamais dépasser la taille la base de données d'origine
ok
Pourquoi FP growth
Les études de performance montre que:
FPGrowth est plus rapide que Apriori, et aussi que la tree-projection
Pas de génération ni de test des candidats.
Utilise une structure de données compacte (FP-Tree)
Élimine les parcours répétée de la base de données
Opération basique dans la construction du FP-tree.
ok
Etape de FP growth
Construire FP tree:
1- Parcourir la base de donnée la première fois pour avoir les fréquence
des 1-itemset.
2- Trier les itemset en ordre décroissent selon leurs fréquence.
3- Un deuxième parcours pour la construction de l’FP Tree.
4- Construire conditional pattern base pour chaque noeud .
5- Construire conditional FP-tree pour chaque noeud.
6- Générer les motifs les plus fréquents
ok
Exemple
ok
Exemple
ok
Exemple
ok
Exemple
ok
Exemple
ok
Exemple
ok
Exemple
ok
Exemple
ok
Exercice
Min support count 1
Transactions items
T1 1, 2, 4, 3
T2 1, 4, 3
T3 1, 4
ok
pyfpgrowth
Démo
ok

Contenu connexe

Tendances

BigData_TP4 : Cassandra
BigData_TP4 : CassandraBigData_TP4 : Cassandra
BigData_TP4 : CassandraLilia Sfaxi
 
La classification des Emails utilisant le modèle MapReduce
La classification des Emails utilisant le modèle MapReduce La classification des Emails utilisant le modèle MapReduce
La classification des Emails utilisant le modèle MapReduce Nour El Houda Megherbi
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...ENSET, Université Hassan II Casablanca
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLwebreaker
 
Apprentissage supervisé.pdf
Apprentissage supervisé.pdfApprentissage supervisé.pdf
Apprentissage supervisé.pdfhanamettali
 
Ben harrath arijtp3 les règles d'association
Ben harrath arijtp3 les règles d'association Ben harrath arijtp3 les règles d'association
Ben harrath arijtp3 les règles d'association ARIJ BenHarrath
 
BigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceBigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceLilia Sfaxi
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
Data Mining (Partie 1).pdf
Data Mining (Partie 1).pdfData Mining (Partie 1).pdf
Data Mining (Partie 1).pdfOuailChoukhairi
 
Intégration des données avec Talend ETL
Intégration des données avec Talend ETLIntégration des données avec Talend ETL
Intégration des données avec Talend ETLLilia Sfaxi
 
Chapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfChapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfZizoAziz
 
Merise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMerise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMajid CHADAD
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisionsMariem Chaaben
 
Projet BI - 2 - Conception base de données
Projet BI - 2 - Conception base de donnéesProjet BI - 2 - Conception base de données
Projet BI - 2 - Conception base de donnéesJean-Marc Dupont
 

Tendances (20)

BigData_TP4 : Cassandra
BigData_TP4 : CassandraBigData_TP4 : Cassandra
BigData_TP4 : Cassandra
 
La classification des Emails utilisant le modèle MapReduce
La classification des Emails utilisant le modèle MapReduce La classification des Emails utilisant le modèle MapReduce
La classification des Emails utilisant le modèle MapReduce
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
 
Base des données réparties
Base des données répartiesBase des données réparties
Base des données réparties
 
Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1 Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1
 
Cours datamining
Cours dataminingCours datamining
Cours datamining
 
Telecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQLTelecharger Exercices corrigés PL/SQL
Telecharger Exercices corrigés PL/SQL
 
5.5 Clustering
5.5 Clustering5.5 Clustering
5.5 Clustering
 
Apprentissage supervisé.pdf
Apprentissage supervisé.pdfApprentissage supervisé.pdf
Apprentissage supervisé.pdf
 
Chapitre 2 hadoop
Chapitre 2 hadoopChapitre 2 hadoop
Chapitre 2 hadoop
 
Ben harrath arijtp3 les règles d'association
Ben harrath arijtp3 les règles d'association Ben harrath arijtp3 les règles d'association
Ben harrath arijtp3 les règles d'association
 
BigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-ReduceBigData_TP1: Initiation à Hadoop et Map-Reduce
BigData_TP1: Initiation à Hadoop et Map-Reduce
 
TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
Data Mining (Partie 1).pdf
Data Mining (Partie 1).pdfData Mining (Partie 1).pdf
Data Mining (Partie 1).pdf
 
Intégration des données avec Talend ETL
Intégration des données avec Talend ETLIntégration des données avec Talend ETL
Intégration des données avec Talend ETL
 
Chapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdfChapitre 4-Apprentissage non supervisé (1) (1).pdf
Chapitre 4-Apprentissage non supervisé (1) (1).pdf
 
Data Mining
Data MiningData Mining
Data Mining
 
Merise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMerise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigés
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisions
 
Projet BI - 2 - Conception base de données
Projet BI - 2 - Conception base de donnéesProjet BI - 2 - Conception base de données
Projet BI - 2 - Conception base de données
 

Similaire à FP Growth Algorithm

Jabes 2019 - Session parallele "Comment et pourquoi faciliter la coconstructi...
Jabes 2019 - Session parallele "Comment et pourquoi faciliter la coconstructi...Jabes 2019 - Session parallele "Comment et pourquoi faciliter la coconstructi...
Jabes 2019 - Session parallele "Comment et pourquoi faciliter la coconstructi...ABES
 
Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...Ippon
 
Visite guidée au pays de la donnée - Traitement automatique des données
Visite guidée au pays de la donnée - Traitement automatique des donnéesVisite guidée au pays de la donnée - Traitement automatique des données
Visite guidée au pays de la donnée - Traitement automatique des donnéesGautier Poupeau
 
Quel algo ml_pour_mon_probleme
Quel algo ml_pour_mon_problemeQuel algo ml_pour_mon_probleme
Quel algo ml_pour_mon_problemePaul Blondel
 
Quel algo ml_pour_mon_probleme
Quel algo ml_pour_mon_problemeQuel algo ml_pour_mon_probleme
Quel algo ml_pour_mon_problemePaul Blondel
 
machine learning.docx
machine learning.docxmachine learning.docx
machine learning.docxRachidaGzl
 
Plan de reprise d’activité
Plan de reprise d’activitéPlan de reprise d’activité
Plan de reprise d’activitéExam PM
 

Similaire à FP Growth Algorithm (7)

Jabes 2019 - Session parallele "Comment et pourquoi faciliter la coconstructi...
Jabes 2019 - Session parallele "Comment et pourquoi faciliter la coconstructi...Jabes 2019 - Session parallele "Comment et pourquoi faciliter la coconstructi...
Jabes 2019 - Session parallele "Comment et pourquoi faciliter la coconstructi...
 
Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...Démystifions le machine learning avec spark par David Martin pour le Salon B...
Démystifions le machine learning avec spark par David Martin pour le Salon B...
 
Visite guidée au pays de la donnée - Traitement automatique des données
Visite guidée au pays de la donnée - Traitement automatique des donnéesVisite guidée au pays de la donnée - Traitement automatique des données
Visite guidée au pays de la donnée - Traitement automatique des données
 
Quel algo ml_pour_mon_probleme
Quel algo ml_pour_mon_problemeQuel algo ml_pour_mon_probleme
Quel algo ml_pour_mon_probleme
 
Quel algo ml_pour_mon_probleme
Quel algo ml_pour_mon_problemeQuel algo ml_pour_mon_probleme
Quel algo ml_pour_mon_probleme
 
machine learning.docx
machine learning.docxmachine learning.docx
machine learning.docx
 
Plan de reprise d’activité
Plan de reprise d’activitéPlan de reprise d’activité
Plan de reprise d’activité
 

FP Growth Algorithm

  • 1. ok
  • 2. ok Plan Définition de FP Algorithme Apriori Applications de FP FP Growth Etape de FP Growth Exemple Test avec pyfpgrowth
  • 3. ok Définition Pattern (set of items, sequence, etc.), qui aparait fréquemment dans une base de données (TI pixels) Grace à fp mining nous pouvons répondre à: Quels sont les produits qui ont souvent été achetés ensemble? (lait et sucre) Quelle est la prochaine cible après l'achat d'un PC
  • 4. ok Application de FP mining FP mining peut servir à plusieurs tâches essentielles de fouile de données : association, corrélation, causalité périodicité partielle, associations cycliques / temporelles Applications: analyse de données de paniers, marketing croisé, conception de catalogue, analyse perte, classification, web log squence, analyse de l'ADN, etc.
  • 5. ok Algorithme Apriori Proposé par Agrawal & Srikant 1994 Un algorithme de niveau similaire à celui de Mannila et al. 1994. Idée principale: Un sous-ensemble d'un ensemble d’item fréquent doit être fréquent Par exemple, si {lait, sucre, café} est fréquent, {lait, café} doit être fréquent lui aussi. On remarque Si un sous ensemble est rare (pas fréquent), son sur- ensemble peut ne pas l’ être !
  • 6. ok Algorithme Apriori Le problème de la découverte de motifs fréquents dans ce cas consiste, étant donné un contexte d’extraction défini par un ensemble d’objets décrits par la liste de leurs attributs et un seuil de support minimal minsup, à découvrir tous les motifs qui apparaissent plus de minsup fois dans la base. L’extraction des motifs fréquents consiste à parcourir itérativement par niveaux l’ensemble des motifs. Durant chaque itération ou niveau k, un ensemble de motifs candidats est créé en joignant les motifs fréquents découverts durant l’itération précédente k-1 ; les supports de ces motifs sont calculés et les motifs non fréquents sont supprimés. Dans cette approche le problème de recherche de motifs fréquents est exponentiel par rapport au nombre d’attributs. En effet, s’il y a n attributs, il y a 2n motifs possibles et dans le pire des cas ils sont tous fréquents. Ainsi la quantité énorme de motifs fréquents extraits requiert la mise en place d'un post-traitement efficace afin de cibler les motifs fréquents les plus utiles.
  • 7. ok Algorithme Apriori L'algorithme Apriori: Utilise des éléments fréquents (k-1) pour générer des k-itemsets fréquents L’étape importante d'Apriori: la génération des candidats et donc ensemble de candidats énormes: 10^4 éléments fréquents 1-itemset va générer plus que 10^7 candidats 2- itemsets Pour trouver un motif fréquent de taille 100, par exemple {a1, a2, ..., a100}, il faut générer 2^100 cad environ 10^30 candidats. Plusieurs parcours (scan) de la base de données: Besoins (n +1) parcours, n est la longueur du motif le plus long
  • 8. ok FP Growth Compression d’une base de données volumineuse en une structure d'arbre compact (FP-tree). fortement condensé, mais complet pour l’FP mining(aucune perte de donnée) éviter les plusieurs parcours de bases de données qui sont coûteuses et les réduire en 2. Évitez la génération de candidats: test sur sous-base de données seulement!
  • 9. ok Fp tree Ne casse jamais un long motif (pattern) d’une transaction. Préserve des informations complètes pour l’FP mining. Réduit les informations non pertinentes - les items peu fréquents sont éliminés Tri décroissante de fréquence: les items les plus fréquents sont plus susceptibles d'être partagés. Ne jamais dépasser la taille la base de données d'origine
  • 10. ok Pourquoi FP growth Les études de performance montre que: FPGrowth est plus rapide que Apriori, et aussi que la tree-projection Pas de génération ni de test des candidats. Utilise une structure de données compacte (FP-Tree) Élimine les parcours répétée de la base de données Opération basique dans la construction du FP-tree.
  • 11. ok Etape de FP growth Construire FP tree: 1- Parcourir la base de donnée la première fois pour avoir les fréquence des 1-itemset. 2- Trier les itemset en ordre décroissent selon leurs fréquence. 3- Un deuxième parcours pour la construction de l’FP Tree. 4- Construire conditional pattern base pour chaque noeud . 5- Construire conditional FP-tree pour chaque noeud. 6- Générer les motifs les plus fréquents
  • 20. ok Exercice Min support count 1 Transactions items T1 1, 2, 4, 3 T2 1, 4, 3 T3 1, 4
  • 22. ok