frequent pattern growth algorithm data mining
Detaljan vodič o algoritmu rasta čestih uzoraka koji predstavlja bazu podataka u obliku FP stabla. Uključuje usporedbu rasta FP-a i apriorija:
Apriori algoritam je detaljno objašnjeno u našem prethodnom vodiču. U ovom uputstvu naučit ćemo o učestalom rastu uzorka - FP rast je metoda iskopavanja čestih skupova predmeta.
kopirajte DVD na tvrdi disk besplatno
Kao što svi znamo, Apriori je algoritam za učestalo rudarenje uzoraka koji se usredotočuje na generiranje skupova predmeta i otkrivanje najčešćeg skupa predmeta. To uvelike smanjuje veličinu skupa stavki u bazi podataka, međutim, Apriori ima i svoje nedostatke.
Pročitajte našu Čitava serija treninga za rudarenje podataka za cjelovito poznavanje koncepta.
Što ćete naučiti:
- Nedostaci algoritma Apriori
- Algoritam čestog rasta uzorka
- FP stablo
- Česti koraci algoritma uzorka
- Primjer FP-algoritma rasta
- Prednosti algoritma rasta FP
- Mane algoritma rasta FP
- FP rast vs Apriori
- ECLAT
- Zaključak
- Preporučena literatura
Nedostaci algoritma Apriori
- Korištenje Apriorija treba generaciju skupova kandidata. Ovi su skupovi stavki možda velikog broja ako je skup predmeta u bazi podataka velik.
- Apriori treba višestruko skeniranje baze podataka kako bi provjerilo podršku za svaki generirani skup predmeta, što dovodi do visokih troškova.
Ti se nedostaci mogu prevladati pomoću algoritma rasta FP.
Algoritam čestog rasta uzorka
Ovaj algoritam je poboljšanje Apriorijeve metode. Generira se čest obrazac bez potrebe za generiranjem kandidata. FP algoritam rasta predstavlja bazu podataka u obliku stabla koje se naziva stablo učestalih uzoraka ili FP stablo.
Ova struktura stabla održat će povezanost između skupova predmeta. Baza podataka je fragmentirana pomoću jedne česte stavke. Taj se fragmentirani dio naziva 'fragment uzorka'. Analiziraju se skupovi predmeta ovih fragmentiranih uzoraka. Tako se ovom metodom usporedno smanjuje traženje čestih skupova predmeta.
FP stablo
Stablo učestalih uzoraka je struktura nalik stablu koja se izrađuje s početnim skupovima predmeta baze podataka. Svrha FP stabla je minirati najčešći obrazac. Svaki čvor FP stabla predstavlja stavku skupa stavki.
Korijenski čvor predstavlja nulu, dok donji čvorovi predstavljaju skupove predmeta. Povezivanje čvorova s donjim čvorovima koji su skupovi predmeta s ostalim skupovima predmeta održavaju se tijekom formiranja stabla.
Česti koraci algoritma uzorka
Metoda rasta čestih uzoraka omogućuje nam pronalazak učestalog uzorka bez generiranja kandidata.
Pogledajmo korake koji su slijeđeni za miniranje čestog uzorka koristeći algoritam učestalog rasta uzorka:
# 1) Prvi korak je skeniranje baze podataka kako bi se pronašli događaji skupova predmeta u bazi podataka. Ovaj je korak isti kao i prvi korak Apriorija. Brojanje skupova 1 predmeta u bazi podataka naziva se brojem podrške ili učestalošću skupa 1 predmeta.
#dva) Drugi je korak konstrukcija FP stabla. Za to stvorite korijen stabla. Korijen je predstavljen nulom.
kako postaviti vatrozid na mrežu
# 3) Sljedeći je korak ponovno skeniranje baze podataka i ispitivanje transakcija. Ispitajte prvu transakciju i saznajte skup predmeta u njoj. Skup predmeta s maksimalnim brojem uzima se na vrhu, sljedeći skup s manjim brojem i tako dalje. To znači da se grana stabla gradi s nizovima stavki transakcija u silaznom redoslijedu brojanja.
# 4) Ispituje se sljedeća transakcija u bazi podataka. Skupovi predmeta poredani su prema padajućem redoslijedu brojanja. Ako je bilo koji skup predmeta ove transakcije već prisutan u drugoj grani (na primjer u 1. transakciji), tada bi ova grana transakcije dijelila zajednički prefiks korijenu.
To znači da je zajednički skup predmeta povezan s novim čvorom drugog skupa stavki u ovoj transakciji.
# 5) Također, broj stavki se povećava kako se javlja u transakcijama. Broj zajedničkih i novih čvorova povećava se za 1 dok se stvaraju i povezuju u skladu s transakcijama.
# 6) Sljedeći je korak miniranje stvorenog FP stabla. U tu svrhu najprije se ispituje najniži čvor zajedno s vezama najnižih čvorova. Najniži čvor predstavlja duljinu uzorka frekvencije 1. Od toga pređite stazu u FP stablu. Ova staza ili staze nazivaju se uvjetnom osnovom uzorka.
Uvjetna baza uzoraka je podbaza podataka koja se sastoji od staza prefiksa u FP stablu koje se javljaju s najnižim čvorom (sufiksom).
# 7) Konstruirajte uvjetno FP stablo, koje je formirano brojem skupova predmeta na putanji. Skupovi predmeta koji ispunjavaju podršku praga razmatrani su u uvjetnom FP stablu.
# 8) Učestali uzorci generiraju se iz uvjetnog FP stabla.
Primjer FP-algoritma rasta
Prag podrške = 50%, povjerenje = 60%
stol 1
Transakcija | Popis predmeta |
---|---|
Korištenje memorije | |
T1 | I1, I2, I3 |
T2 | I2, I3, I4 |
T3 | I4, I5 |
T4 | I1, I2, I4 |
T5 | I1, I2, I3, I5 |
T6 | I1, I2, I3, I4 |
Riješenje:
Prag potpore = 50% => 0,5 * 6 = 3 => min_sup = 3
1. Brojanje svake stavke
Tablica 2
Artikal | Računati |
---|---|
I1 | 4 |
I2 | 5 |
I3 | 4 |
I4 | 4 |
I5 | dva |
2. Poredajte skup predmeta u padajućem redoslijedu.
Tablica 3
Artikal | Računati |
---|---|
I2 | 5 |
I1 | 4 |
I3 | 4 |
I4 | 4 |
3. Izgraditi FP stablo
c ++ kompajler za pomrčinu
- S obzirom na nulu korijenskog čvora.
- Prvo skeniranje Transakcije T1: I1, I2, I3 sadrži tri stavke {I1: 1}, {I2: 1}, {I3: 1}, gdje je I2 kao dijete povezan s korijenom, I1 je povezan s I2 i I3 je povezan s I1.
- T2: I2, I3, I4 sadrži I2, I3 i I4, gdje je I2 povezan s korijenom, I3 je povezan s I2, a I4 je povezan s I3. Ali ova bi grana dijelila I2 čvor toliko uobičajen koliko se već koristi u T1.
- Povećajte broj I2 za 1 i I3 je povezan kao dijete s I2, I4 je povezan kao dijete s I3. Brojanje je {I2: 2}, {I3: 1}, {I4: 1}.
- T3: I4, I5. Slično tome, nova grana s I5 povezana je s I4 tijekom stvaranja djeteta.
- T4: I1, I2, I4. Slijed će biti I2, I1 i I4. I2 je već povezan s korijenskim čvorom, stoga će se povećati za 1. Slično tome, I1 će se povećati za 1 jer je već povezan s I2 u T1, dakle {I2: 3}, {I1: 2}, {I4: 1}.
- T5: I1, I2, I3, I5. Slijed će biti I2, I1, I3 i I5. Tako {I2: 4}, {I1: 3}, {I3: 2}, {I5: 1}.
- T6: I1, I2, I3, I4. Slijed će biti I2, I1, I3 i I4. Tako {I2: 5}, {I1: 4}, {I3: 3}, {I4 1}.
4. Rudarstvo FP-stabla sažeto je prikazano u nastavku:
- Stavka I5 s najnižim čvorom ne uzima se u obzir jer nema minimalni broj podrške, stoga se briše.
- Sljedeći donji čvor je I4. I4 se javlja u 2 grane, {I2, I1, I3:, I41}, {I2, I3, I4: 1}. Stoga će, uzimajući I4 kao sufiks, staze prefiksa biti {I2, I1, I3: 1}, {I2, I3: 1}. Ovo čini uvjetnu osnovu uzorka.
- Uvjetni obrazac uzorka smatra se bazom podataka transakcija, konstruira se FP-stablo. Sadržavat će {I2: 2, I3: 2}, I1 se ne uzima u obzir jer ne udovoljava broju min podrške.
- Ovaj put generirat će sve kombinacije čestih obrazaca: {I2, I4: 2}, {I3, I4: 2}, {I2, I3, I4: 2}
- Za I3, put prefiksa bio bi: {I2, I1: 3}, {I2: 1}, to će generirati FP-stablo s dva čvora: {I2: 4, I1: 3} i generiraju se česti uzorci: {I2 , I3: 4}, {I1: I3: 3}, {I2, I1, I3: 3}.
- Za I1 put prefiksa bio bi: {I2: 4} to će generirati FP-stablo jednog čvora: {I2: 4} i generiraju se česti uzorci: {I2, I1: 4}.
Artikal | Uvjetna baza uzoraka | Uvjetno FP-stablo | Generirani česti obrasci |
---|---|---|---|
I4 | {I2, I1, I3: 1}, {I2, I3: 1} | {I2: 2, I3: 2} | {I2, I4: 2}, {I3, I4: 2}, {I2, I3, I4: 2} |
I3 | {I2, I1: 3}, {I2: 1} | {I2: 4, I1: 3} | {I2, I3: 4}, {I1: I3: 3}, {I2, I1, I3: 3} |
I1 | {I2: 4} | {I2: 4} | {I2, I1: 4} |
Dijagram dat u nastavku prikazuje uvjetno FP stablo povezano s uvjetnim čvorom I3.
Prednosti algoritma rasta FP
- Ovaj algoritam treba skenirati bazu podataka samo dva puta u usporedbi s Apriorijem koji skenira transakcije za svaku iteraciju.
- Uparivanje stavki se ne vrši u ovom algoritmu, što ga čini bržim.
- Baza podataka pohranjena je u kompaktnoj verziji u memoriji.
- Učinkovit je i skalabilan za rudarstvo i dugih i kratkih čestih uzoraka.
Mane algoritma rasta FP
- FP Tree je glomazniji i teže se izrađuje od Apriorija.
- Možda je skupo.
- Kad je baza podataka velika, algoritam se možda neće smjestiti u dijeljenu memoriju.
FP rast vs Apriori
Rast FP-a | Apriorno |
---|---|
Generiranje uzoraka | |
FP rast generira obrazac konstruiranjem FP stabla | Apriori generira uzorak spajanjem predmeta u pojedinačne, parove i trojke. |
Generacija kandidata | |
Ne postoji generacija kandidata | Apriori koristi generaciju kandidata |
Postupak | |
Proces je brži u odnosu na Apriori. Vrijeme izvođenja postupka linearno se povećava s povećanjem broja skupova predmeta. | Proces je usporeno sporiji od rasta FP-a, vrijeme izvođenja eksponencijalno se povećava s povećanjem broja skupova predmeta |
Spremljena je kompaktna verzija baze podataka | Kombinacije kandidata spremaju se u memoriju |
ECLAT
Gornja metoda, rast Apriorija i FP-a, rudari česte skupove predmeta koristeći horizontalni format podataka. ECLAT je metoda vađenja čestih skupova predmeta koristeći vertikalni format podataka. Pretvorit će podatke u vodoravnom formatu podataka u vertikalni format.
Na primjer,Korištenje rasta Apriorija i FP-a:
Transakcija | Popis predmeta |
---|---|
T1 | I1, I2, I3 |
T2 | I2, I3, I4 |
T3 | I4, I5 |
T4 | I1, I2, I4 |
T5 | I1, I2, I3, I5 |
T6 | I1, I2, I3, I4 |
ECLAT će imati format tablice kao:
Artikal | Skup transakcija |
---|---|
I1 | {T1, T4, T5, T6} |
I2 | {T1, T2, T4, T5, T6} |
I3 | {T1, T2, T5, T6} |
I4 | {T2, T3, T4, T5} |
I5 | {T3, T5} |
Ovom će se metodom u vertikalnom formatu podataka formirati skupovi predmeta od 2, 3 skupa i k skupova predmeta. Ovaj postupak s k povećava se za 1 dok se ne pronađu skupovi kandidata koji su kandidati. Uz Apriori se koriste neke tehnike optimizacije, poput diffseta.
Ova metoda ima prednost u odnosu na Apriori jer ne zahtijeva skeniranje baze podataka kako bi se pronašla podrška za k + 1 skupove predmeta. To je zato što će skup transakcija sadržavati broj pojavljivanja svake stavke u transakciji (podrška). Usko grlo dolazi kada postoje brojne transakcije koje oduzimaju ogromnu memoriju i računanje za presijecanje skupova.
Zaključak
Apriori algoritam koristi se za pravila udruživanja rudnika. Djeluje po principu, 'neprazni podskupovi učestalih skupova predmeta također moraju biti česti'. Oblikuje kandidate za k-itemset iz (k-1) skupova predmeta i skenira bazu podataka kako bi pronašao česte skupove predmeta.
Algoritam čestog rasta uzorka metoda je pronalaženja čestih obrazaca bez generiranja kandidata. Izrađuje FP stablo, umjesto da koristi strategiju generiranja i testiranja Apriorija. Fokus algoritma FP Growth usmjeren je na fragmentiranje putova predmeta i rudarstvo čestih obrazaca.
Nadamo se da su vam ovi vodiči iz serije Data Mining obogatili vaše znanje o Data Mining-u !!
Preporučena literatura
- Tehnike rudarstva podataka: algoritam, metode i vrhunski alati za miniranje podataka
- Apriori algoritam u rudarstvu podataka: provedba s primjerima
- Primjeri algoritma stabla odlučivanja u rudarstvu podataka
- Primjeri rudarenja podataka: Najčešća primjena rudarstva podataka 2021
- Rudarstvo podataka: proces, tehnike i glavni problemi u analizi podataka
- Proces rudarenja podataka: uključeni modeli, koraci i izazovi
- Uzorak pitanja za certifikacijski ispit za testiranje softvera CSTE
- Data Mining vs Machine Learning vs Artificial Intelligence vs Deep Learning