• Aucun résultat trouvé

Les règles d’association - Terminologie

N/A
N/A
Protected

Academic year: 2022

Partager "Les règles d’association - Terminologie"

Copied!
69
0
0

Texte intégral

(1)

Intelligence Artificielle

Fouille de données : Règles d’association

Maria Malek

D ´epartement Informatiques

(2)

Les règles d’association - Terminologie

Domaine décrit par une liste d’atomes appelée items.

Intelligence Artificielle – p. 2/10

(3)

Les règles d’association - Terminologie

Domaine décrit par une liste d’atomes appelée items.

Application : panier de ménagère dans un supermarché : [vin, fromage, chocolat]

(4)

Les règles d’association - Terminologie

Domaine décrit par une liste d’atomes appelée items.

Application : panier de ménagère dans un supermarché : [vin, fromage, chocolat]

Un ensemble d’items est une suite d’items exprimée dans un ordre donné

Intelligence Artificielle – p. 2/10

(5)

Les règles d’association - Terminologie

Domaine décrit par une liste d’atomes appelée items.

Application : panier de ménagère dans un supermarché : [vin, fromage, chocolat]

Un ensemble d’items est une suite d’items exprimée dans un ordre donné

Une transaction est un ensemble d’items, exemples

(6)

Les règles d’association - Terminologie

Domaine décrit par une liste d’atomes appelée items.

Application : panier de ménagère dans un supermarché : [vin, fromage, chocolat]

Un ensemble d’items est une suite d’items exprimée dans un ordre donné

Une transaction est un ensemble d’items, exemples

T1 [vin, fromage, viande]

Intelligence Artificielle – p. 2/10

(7)

Les règles d’association - Terminologie

Domaine décrit par une liste d’atomes appelée items.

Application : panier de ménagère dans un supermarché : [vin, fromage, chocolat]

Un ensemble d’items est une suite d’items exprimée dans un ordre donné

Une transaction est un ensemble d’items, exemples

T1 [vin, fromage, viande]

T2 [vin, fromage, chocolat]

(8)

Les règles d’association - Terminologie

Domaine décrit par une liste d’atomes appelée items.

Application : panier de ménagère dans un supermarché : [vin, fromage, chocolat]

Un ensemble d’items est une suite d’items exprimée dans un ordre donné

Une transaction est un ensemble d’items, exemples

T1 [vin, fromage, viande]

T2 [vin, fromage, chocolat]

Un ensemble D de transactions correspond à un ensemble d’apprentissage

Intelligence Artificielle – p. 2/10

(9)

Les règles d’association - Objectif

Objectif : chercher les associations à partir de D

(10)

Les règles d’association - Objectif

Objectif : chercher les associations à partir de D

T1 vin f romage

Intelligence Artificielle – p. 3/10

(11)

Les règles d’association - Objectif

Objectif : chercher les associations à partir de D

T1 vin f romage

T2 vinf romage jambon

(12)

Les règles d’association - Définition

Ensemble d’items fréquents : motif fréquent dans la base de transactions

Intelligence Artificielle – p. 4/10

(13)

Les règles d’association - Définition

Ensemble d’items fréquents : motif fréquent dans la base de transactions

minSupp un paramètre

(14)

Les règles d’association - Définition

Ensemble d’items fréquents : motif fréquent dans la base de transactions

minSupp un paramètre

Trouver tous les ensembles d’items fréquents de longueurs différentes, exemple

Intelligence Artificielle – p. 4/10

(15)

Les règles d’association - Définition

Ensemble d’items fréquents : motif fréquent dans la base de transactions

minSupp un paramètre

Trouver tous les ensembles d’items fréquents de longueurs différentes, exemple

1. Si ABCD est un ensemble d’items fréquent

(16)

Les règles d’association - Définition

Ensemble d’items fréquents : motif fréquent dans la base de transactions

minSupp un paramètre

Trouver tous les ensembles d’items fréquents de longueurs différentes, exemple

1. Si ABCD est un ensemble d’items fréquent 2. Construire la règle AB CD ssi

support(ABCD)/support(AB) minConf

Intelligence Artificielle – p. 4/10

(17)

Les règles d’association - Définition

Ensemble d’items fréquents : motif fréquent dans la base de transactions

minSupp un paramètre

Trouver tous les ensembles d’items fréquents de longueurs différentes, exemple

1. Si ABCD est un ensemble d’items fréquent 2. Construire la règle AB CD ssi

support(ABCD)/support(AB) minConf

3. minConf est un paramètre

(18)

Les règles d’association - Algorithmes

Terminologie

Intelligence Artificielle – p. 5/10

(19)

Les règles d’association - Algorithmes

Terminologie

Lk est l’ensemble constitué des sous-ensembles d’items fréquents de longueur k.

(20)

Les règles d’association - Algorithmes

Terminologie

Lk est l’ensemble constitué des sous-ensembles d’items fréquents de longueur k.

Ck est un ensemble constitué des sous-ensembles d’items candidats de longueur k, notons bien que

Lk Ck

Intelligence Artificielle – p. 5/10

(21)

Les règles d’association - Algorithmes

Terminologie

Lk est l’ensemble constitué des sous-ensembles d’items fréquents de longueur k.

Ck est un ensemble constitué des sous-ensembles d’items candidats de longueur k, notons bien que

Lk Ck

Propri ´et ´e Soit Xk un sous-ensemble d’items fréquent, tous les sous-ensembles d’items contenus dans Xk et qui soient de longueurs inférieurs à k sont fréquents.

(22)

Les règles d’association - Algorithmes

Terminologie

Lk est l’ensemble constitué des sous-ensembles d’items fréquents de longueur k.

Ck est un ensemble constitué des sous-ensembles d’items candidats de longueur k, notons bien que

Lk Ck

Propri ´et ´e Soit Xk un sous-ensemble d’items fréquent, tous les sous-ensembles d’items contenus dans Xk et qui soient de longueurs inférieurs à k sont fréquents.

1. Si ABCD est un ensemble d’items fréquent

Intelligence Artificielle – p. 5/10

(23)

Les règles d’association - Algorithmes

Terminologie

Lk est l’ensemble constitué des sous-ensembles d’items fréquents de longueur k.

Ck est un ensemble constitué des sous-ensembles d’items candidats de longueur k, notons bien que

Lk Ck

Propri ´et ´e Soit Xk un sous-ensemble d’items fréquent, tous les sous-ensembles d’items contenus dans Xk et qui soient de longueurs inférieurs à k sont fréquents.

(24)

Les règles d’association - Apriori

Calculer L1

Intelligence Artificielle – p. 6/10

(25)

Les règles d’association - Apriori

Calculer L1 k 2

(26)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

Intelligence Artificielle – p. 6/10

(27)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1)

(28)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1)

2. TantQue t D

Intelligence Artificielle – p. 6/10

(29)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1)

2. TantQue t D

(a) Ct sousEns(Ck, t)

(30)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1)

2. TantQue t D

(a) Ct sousEns(Ck, t)

(b) TantQue c Ct

Intelligence Artificielle – p. 6/10

(31)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1)

2. TantQue t D

(a) Ct sousEns(Ck, t)

(b) TantQue c Ct

i. c.count++

(32)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1)

2. TantQue t D

(a) Ct sousEns(Ck, t)

(b) TantQue c Ct

i. c.count++

3. Lk ← {c Ck|c.count minSup}

Intelligence Artificielle – p. 6/10

(33)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1)

2. TantQue t D

(a) Ct sousEns(Ck, t)

(b) TantQue c Ct

i. c.count++

3. Lk ← {c Ck|c.count minSup}

(34)

Les règles d’association - Apriori

Calculer L1 k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1)

2. TantQue t D

(a) Ct sousEns(Ck, t)

(b) TantQue c Ct

i. c.count++

3. Lk ← {c Ck|c.count minSup}

4. k k + 1

RETOURNER Sk Lk

Intelligence Artificielle – p. 6/10

(35)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre :

(36)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre : 1. insert into Ck

Intelligence Artificielle – p. 7/10

(37)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre : 1. insert into Ck

2. select p[1], p[2], ..p[k 1], q[k 1]

(38)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre : 1. insert into Ck

2. select p[1], p[2], ..p[k 1], q[k 1]

3. from p,q

Intelligence Artificielle – p. 7/10

(39)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre : 1. insert into Ck

2. select p[1], p[2], ..p[k 1], q[k 1]

3. from p,q

4. Where p[1] = q[1]..p[k 2] = q[k 2],p[k 1] < q[k 1]

(40)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre : 1. insert into Ck

2. select p[1], p[2], ..p[k 1], q[k 1]

3. from p,q

4. Where p[1] = q[1]..p[k 2] = q[k 2],p[k 1] < q[k 1]

L’algorithme sousEns calcule le sous ensemble Ct Ck,

la phase effacer

Intelligence Artificielle – p. 7/10

(41)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre : 1. insert into Ck

2. select p[1], p[2], ..p[k 1], q[k 1]

3. from p,q

4. Where p[1] = q[1]..p[k 2] = q[k 2],p[k 1] < q[k 1]

L’algorithme sousEns calcule le sous ensemble Ct Ck,

la phase effacer

1. Si L3 = {{123}, {124}, {134}, {135}, {234}},

(42)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre : 1. insert into Ck

2. select p[1], p[2], ..p[k 1], q[k 1]

3. from p,q

4. Where p[1] = q[1]..p[k 2] = q[k 2],p[k 1] < q[k 1]

L’algorithme sousEns calcule le sous ensemble Ct Ck,

la phase effacer

1. Si L3 = {{123}, {124}, {134}, {135}, {234}}, 2. la phase joindre donne comme résultat

C4 = {{1234}, {1345}}

Intelligence Artificielle – p. 7/10

(43)

Les règles d’association - Apriori - Suite

L’algorithme apriori-gen, la phase joindre : 1. insert into Ck

2. select p[1], p[2], ..p[k 1], q[k 1]

3. from p,q

4. Where p[1] = q[1]..p[k 2] = q[k 2],p[k 1] < q[k 1]

L’algorithme sousEns calcule le sous ensemble Ct Ck,

la phase effacer

1. Si L3 = {{123}, {124}, {134}, {135}, {234}}, 2. la phase joindre donne comme résultat

(44)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

Intelligence Artificielle – p. 8/10

(45)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

(46)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

Intelligence Artificielle – p. 8/10

(47)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(48)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(a) Ct ← {c Ck|(c[1].c[2]..c[k 1])

t.ensemble (c[1].c[2]..c[k 2].c[k]) t.ensemble}

Intelligence Artificielle – p. 8/10

(49)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(a) Ct ← {c Ck|(c[1].c[2]..c[k 1])

t.ensemble (c[1].c[2]..c[k 2].c[k]) t.ensemble}

(b) TantQue c Ct

(50)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(a) Ct ← {c Ck|(c[1].c[2]..c[k 1])

t.ensemble (c[1].c[2]..c[k 2].c[k]) t.ensemble}

(b) TantQue c Ct

i. c.count++

Intelligence Artificielle – p. 8/10

(51)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(a) Ct ← {c Ck|(c[1].c[2]..c[k 1])

t.ensemble (c[1].c[2]..c[k 2].c[k]) t.ensemble}

(b) TantQue c Ct

i. c.count++

(c) Si Ct <> φ Alors

(52)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(a) Ct ← {c Ck|(c[1].c[2]..c[k 1])

t.ensemble (c[1].c[2]..c[k 2].c[k]) t.ensemble}

(b) TantQue c Ct

i. c.count++

(c) Si Ct <> φ Alors

i. Cˆk + < t.T ID, Ct >

Intelligence Artificielle – p. 8/10

(53)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(a) Ct ← {c Ck|(c[1].c[2]..c[k 1])

t.ensemble (c[1].c[2]..c[k 2].c[k]) t.ensemble}

(b) TantQue c Ct

i. c.count++

(c) Si Ct <> φ Alors

(54)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(a) Ct ← {c Ck|(c[1].c[2]..c[k 1])

t.ensemble (c[1].c[2]..c[k 2].c[k]) t.ensemble}

(b) TantQue c Ct

i. c.count++

(c) Si Ct <> φ Alors

i. Cˆk + < t.T ID, Ct >

3. Lk ← {c Ck|c.count minSup}, k k + 1

RETOURNER Sk Lk

Intelligence Artificielle – p. 8/10

(55)

Les règles d’association - AprioriTid

Calculer L1, Cˆ1 D, k 2

TantQue Lk1 <> φ

1. Ck apriori gen(Lk1), Cˆk φ

2. TantQue t Cˆk1

(a) Ct ← {c Ck|(c[1].c[2]..c[k 1])

t.ensemble (c[1].c[2]..c[k 2].c[k]) t.ensemble}

(b) TantQue c Ct

i. c.count++

(c) Si Ct <> φ Alors

(56)

Génération de règles - 1

Approche descendante de génération fondée sur deux propriétés :

Intelligence Artificielle – p. 9/10

(57)

Génération de règles - 1

Approche descendante de génération fondée sur deux propriétés :

1. Redondance simple : Nous testons les règles ayant le nombre de conditions minimal pour un

sous-ensemble fréquent, exemple :

(58)

Génération de règles - 1

Approche descendante de génération fondée sur deux propriétés :

1. Redondance simple : Nous testons les règles ayant le nombre de conditions minimal pour un

sous-ensemble fréquent, exemple :

R1 A B, C

Intelligence Artificielle – p. 9/10

(59)

Génération de règles - 1

Approche descendante de génération fondée sur deux propriétés :

1. Redondance simple : Nous testons les règles ayant le nombre de conditions minimal pour un

sous-ensemble fréquent, exemple :

R1 A B, C

R2 A, B C

(60)

Génération de règles - 1

Approche descendante de génération fondée sur deux propriétés :

1. Redondance simple : Nous testons les règles ayant le nombre de conditions minimal pour un

sous-ensemble fréquent, exemple :

R1 A B, C

R2 A, B C

confiance(R1)=support(ABC)/support(A),

Intelligence Artificielle – p. 9/10

(61)

Génération de règles - 1

Approche descendante de génération fondée sur deux propriétés :

1. Redondance simple : Nous testons les règles ayant le nombre de conditions minimal pour un

sous-ensemble fréquent, exemple :

R1 A B, C

R2 A, B C

confiance(R1)=support(ABC)/support(A), confiance(R2)=support(ABC)/support(AB),

(62)

Génération de règles - 1

Approche descendante de génération fondée sur deux propriétés :

1. Redondance simple : Nous testons les règles ayant le nombre de conditions minimal pour un

sous-ensemble fréquent, exemple :

R1 A B, C

R2 A, B C

confiance(R1)=support(ABC)/support(A), confiance(R2)=support(ABC)/support(AB), confiance(R2)>confinace(R1).

Intelligence Artificielle – p. 9/10

(63)

Génération de règles - 2

Approche descendante de génération fondée sur deux propriétés :

(64)

Génération de règles - 2

Approche descendante de génération fondée sur deux propriétés :

1. Redondance stricte : Nous commençons par la recherche par les ensembles fréquents les plus grands, exemple :

Intelligence Artificielle – p. 10/10

(65)

Génération de règles - 2

Approche descendante de génération fondée sur deux propriétés :

1. Redondance stricte : Nous commençons par la recherche par les ensembles fréquents les plus grands, exemple :

R1 A B, C, D

(66)

Génération de règles - 2

Approche descendante de génération fondée sur deux propriétés :

1. Redondance stricte : Nous commençons par la recherche par les ensembles fréquents les plus grands, exemple :

R1 A B, C, D

R2 A B, C

Intelligence Artificielle – p. 10/10

(67)

Génération de règles - 2

Approche descendante de génération fondée sur deux propriétés :

1. Redondance stricte : Nous commençons par la recherche par les ensembles fréquents les plus grands, exemple :

R1 A B, C, D

R2 A B, C

confiance(R1)=support(ABCD)/support(A),

(68)

Génération de règles - 2

Approche descendante de génération fondée sur deux propriétés :

1. Redondance stricte : Nous commençons par la recherche par les ensembles fréquents les plus grands, exemple :

R1 A B, C, D

R2 A B, C

confiance(R1)=support(ABCD)/support(A), confiance(R2)=support(ABC)/support(A),

Intelligence Artificielle – p. 10/10

(69)

Génération de règles - 2

Approche descendante de génération fondée sur deux propriétés :

1. Redondance stricte : Nous commençons par la recherche par les ensembles fréquents les plus grands, exemple :

R1 A B, C, D

R2 A B, C

confiance(R1)=support(ABCD)/support(A), confiance(R2)=support(ABC)/support(A),

Références

Documents relatifs

Ainsi, par exemple, cette vision de l’aéroport du futur imaginée par le cabinet de conseil en innovation teague, inven- teur – entre autres – du Polaroid, de la console de jeu

attribut, chaque branche sortant de ce nœud correspond à une valeur possible de l’attribut en question. Intelligence Artificielle

• Savoir expliquer quels sont les enjeux de la recherche dans le domaine... Histoire en

Les avancées significatives apportées par l'apprentissage de réseaux neuronaux profonds (par exemple dans les domaines de la vision par ordinateur ou du traitement automatique

 Distance de pcman du plus proche fontôme + 1/(distance pacman de la nourriture la plus proche).  Distance de pcman du plus proche fontôme + 1000/(distance pacman de la

Les étudiants ayant acquis à la fin de la 1ère année du Master Informatique des connaissances approfondies théoriques et pratiques dans divers domaines

Lieu de formation : Mons Lancement au 1er trimestre 2018 - 2019 1500 Euros (gratuit pour les étudiants UMONS) Eligible au PAE.

Exempt de timbre, art.198 du code des taxes. Cycle de conférences à