Sunteți pe pagina 1din 15

Eclat

(depth-first search algorithm)

Enea Elena Alexandra


ABD
Cuprins

 Introducere
 Caracteristici
 Algoritmul Eclat
 Exemple
 Avantaje
 Dezavantaje
Introducere

 Acesta a fost introdus inițial de Zaki, Parthasarathy, Li și Ogihara într-o


serie de lucrări scrise în 1997.
Caracteristici

Are la bază un set de reguli de asociere

 Este o metodă de data-mining care a fost la început


dezvoltată pentru analiza coșului de cumpărături.
 A fost realizat pentru a îmbunătății performanțele
algoritmului Apriori
 Algoritmul Eclat (Transformarea claselor de echivalență) este un algoritm de
căutare în profunzime care utilizează intersecția.

 Este un algoritm potrivit atât pentru execuția secvențială, cât și paralelă.


 Datele sunt pastrate in format vertical, astfel pentru fiecare item se
realizeaza o lista cu tranzacțiile din care face parte. (TID-list)
 Generarea itemseturilor frecvente
 Pentru fiecare item se pastreaza o lista de tranzactii
ids (tids)
 Calcularea suportului pentru fiecare set de itemuri prin
intersectia a 2 dintre liste.
Algoritmul Eclat
• Numerele de elemente sunt
stocate in Fk ca si date de intrare
• Datele de iesire sunt reprezentate
de un set de elemente frecvente.
• Cautarea de elemente incepe de
jos in sus.
• Mai intai se ia Fk+1 ca baza de
date goale. Apoi se gaseste
suportul pentru elementele
individuale
• Se compara suportul pentru toate
articolele cu suport minim
• Elementele sunt puse in Fk+1, care
apoi este verificat daca este gol
sau nu;
• Apoi se reaplica abordarea pe
Fk+1
Exemplu de aplicare a algoritmului
 Suportul minim este 2

 Seturile de elemente frecvente sunt {{T1, T2}, {T3, T4},


{T1, T3, T4}, {T2, T3} }
Exemple
Avantaje

 Eclat este un algoritm destul de nou ce reduce atât costurile de intrare/ieșire


prin realizare unui număr mic de treceri prin baza de date, și de asemenea
reușește să minimizeze costurile de calcul prin utilizarea unor scheme eficiente
de căutare.
 Algoritmul este deosebit de eficient atunci când este descoperit că seturile de
elemente ce se repetă sunt destul de lungi.
 Algoritmul este o opțiune destul de atractivă și interesantă pentru
implementarea directă în baze de date SQL deoarece utilizează operațiuni simple
de intersecție. În același timp această tehnică păstrează scalabilitatea liniară
privind numărul de tranzacții in baza de date.
 Nu este necesara scanarea bazei de date pentru a gasi pragul de suport al setului
de elemente(k+1) pentru k ≥ 0
Dezavantaje

 Seturile de tranzactii pot fi foarte mari, prin urmare scumpe in ceea ce


priveste memoria.
Vă mulțumesc pentru atenție!

S-ar putea să vă placă și