logo

Apriori algoritmus

Az apriori algoritmus arra az algoritmusra utal, amelyet az objektumok közötti társítási szabályok kiszámítására használnak. Azt jelenti, hogy két vagy több objektum hogyan kapcsolódik egymáshoz. Más szóval azt mondhatjuk, hogy az apriori algoritmus egy asszociációs szabály, amely azt elemzi, hogy az A terméket vásárlók B terméket is vásároltak-e.

Az apriori algoritmus elsődleges célja a különböző objektumok közötti asszociációs szabály létrehozása. Az asszociációs szabály leírja, hogy két vagy több objektum hogyan kapcsolódik egymáshoz. Az apriori algoritmust gyakori mintabányászatnak is nevezik. Általában az Apriori algoritmust egy hatalmas számú tranzakcióból álló adatbázison használja. Értsük meg az apriori algoritmust egy példa segítségével; Tegyük fel, hogy elmegy a Big Bazarba, és különféle termékeket vásárol. Segítségével a vásárlók könnyedén megvásárolhatják termékeiket és növelik a Big Bazar értékesítési teljesítményét. Ebben az oktatóanyagban az apriori algoritmust példákkal tárgyaljuk.

Bevezetés

A fogalom jobb megértése érdekében példát veszünk. Biztosan észrevetted, hogy a Pizza bolt eladója pizza, üdítő és kenyérpálcika kombinációt készít együtt. Kedvezményt is kínál azoknak a vásárlóknak, akik megvásárolják ezeket a kombókat. Gondolkozott már azon, hogy miért teszi ezt? Szerinte a pizzát vásárló vásárlók üdítőt és kenyérrudat is vásárolnak. A kombók készítésével azonban megkönnyíti a vásárlók dolgát. Ezzel párhuzamosan az értékesítési teljesítményét is növeli.

Hasonlóképpen, elmész a Big Bazarba, ahol kekszet, chipseket és csokoládét találsz csomagolva. Ez azt mutatja, hogy a boltos kényelmessé teszi a vásárlók számára, hogy ezeket a termékeket egy helyen vásárolják meg.

A fenti két példa a legjobb példa a társulási szabályokra

  • Támogatás
  • Bizalom
  • Emel
  • Vegyünk egy példát ennek a fogalomnak a megértéséhez.

    Fentebb már tárgyaltuk; szüksége van egy hatalmas adatbázisra, amely sok tranzakciót tartalmaz. Tegyük fel, hogy 4000 ügyfél tranzakciója van egy Big Bazarban. Ki kell számolnia két termék támogatását, önbizalmát és emelését, és mondhatja, hogy Keksz és Csokoládé. Ennek az az oka, hogy az ügyfelek gyakran együtt vásárolják meg ezt a két terméket.

    A 4000 tranzakcióból 400 tartalmaz kekszet, 600 pedig csokoládét, és ebben a 600 tranzakcióban van egy 200, amely kekszet és csokoládét tartalmaz. Ezen adatok felhasználásával megtudjuk a támogatást, a bizalmat és az emelést.

    Támogatás

    A támogatás bármely termék alapértelmezett népszerűségére utal. A támogatást az adott terméket tartalmazó tranzakciók számának az összes tranzakció számával való elosztásának hányadosaként találja meg. Ezért kapunk

    Támogatás (Keksz) = (Kekszre vonatkozó tranzakciók) / (Összes tranzakció)

    = 400/4000 = 10 százalék.

    Bizalom

    A bizalom arra utal, hogy a vásárlók együtt vásároltak kekszet és csokoládét is. Tehát el kell osztania a kekszet és csokoládét egyaránt tartalmazó tranzakciók számát a tranzakciók teljes számával a bizalom megszerzéséhez.

    Ennélfogva,

    Bizalom = (Tranzakciók keksszel és csokoládéval egyaránt) / (Összes kekszet érintő tranzakció)

    = 200/400

    = 50 százalék.

    Ez azt jelenti, hogy a kekszet vásárló vásárlók 50 százaléka csokoládét is vásárolt.

    Emel

    Tekintsük a fenti példát; A lift a csokoládé eladási arányának növekedését jelenti a keksz értékesítése során. Az emelés matematikai egyenletei az alábbiakban találhatók.

    Emelkedés = (bizalom (keksz – csokoládé)/ (támogatás (keksz))

    = 50/10 = 5

    Ez azt jelenti, hogy ötször nagyobb a valószínűsége annak, hogy az emberek kekszet és csokoládét együtt vásárolnak, mint annak, ha egyedül vásárolják meg a kekszet. Ha az emelési érték egy alatt van, az megköveteli, hogy az emberek valószínűleg ne vásárolják meg a két terméket együtt. Minél nagyobb az érték, annál jobb a kombináció.

    Hogyan működik az Apriori algoritmus az adatbányászatban?

    Ezt az algoritmust egy példa segítségével fogjuk megérteni

    Tekintsünk egy Big Bazar forgatókönyvet, ahol a termékkészlet P = {rizs, hüvelyes, olaj, tej, alma}. Az adatbázis hat tranzakciót tartalmaz, ahol az 1 a termék jelenlétét, a 0 pedig a termék hiányát jelenti.

    Tranzakció azonosítója Rizs Impulzus Olaj Tej alma
    t1 1 1 1 0 0
    t2 0 1 1 1 0
    t3 0 0 0 1 1
    t4 1 1 0 1 0
    t5 1 1 1 0 1
    t6 1 1 1 1 1

    Az Apriori algoritmus a megadott feltételezéseket teszi

    • Egy gyakori elemkészlet minden részhalmazának gyakorinak kell lennie.
    • A ritkán előforduló elemkészlet részhalmazainak ritkanak kell lenniük.
    • Rögzítse a támogatási küszöbszintet. A mi esetünkben 50 százalékban rögzítettük.

    1. lépés

    Készítsen gyakorisági táblázatot az összes tranzakcióban megjelenő összes termékről. Most rövidítse le a gyakorisági táblázatot, hogy csak azokat a termékeket adja hozzá, amelyek támogatási küszöbértéke meghaladja az 50 százalékot. Megtaláljuk a megadott gyakorisági táblázatot.

    Termék Gyakoriság (tranzakciók száma)
    rizs (R) 4
    impulzus (P) 5
    Olaj (O) 4
    tej (M) 4

    A fenti táblázat a vásárlók által gyakran vásárolt termékeket tartalmazza.

    2. lépés

    Hozzon létre termékpárokat, például RP, RO, RM, PO, PM, OM. Megkapja a megadott gyakorisági táblázatot.

    Itemset Gyakoriság (tranzakciók száma)
    RP 4
    RO 3
    RM 2
    UTÁN 4
    DÉLUTÁN 3
    RÓL RŐL 2

    3. lépés

    Ugyanezen 50 százalékos támogatási küszöb megvalósítása, és vegye figyelembe az 50 százalékot meghaladó termékeket. Esetünkben ez több mint 3

    Így RP-t, RO-t, PO-t és PM-et kapunk

    hashtable versus hashmap

    4. lépés

    Most keressen egy három termékből álló készletet, amelyet az ügyfelek együtt vásárolnak meg. A megadott kombinációt kapjuk.

    1. Az RP és RO RPO-t adnak
    2. A PO és a PM POM-ot ad

    5. lépés

    Számítsa ki a két elemhalmaz gyakoriságát, és megkapja a megadott gyakorisági táblázatot.

    Itemset Gyakoriság (tranzakciók száma)
    RPO 4
    POM 3

    Ha megvalósítja a küszöbérték feltételezését, akkor kitalálhatja, hogy az ügyfelek három termékből álló halmaza RPO.

    Megfontoltunk egy egyszerű példát az adatbányászat apriori algoritmusának megvitatására. A valóságban több ezer ilyen kombinációt találsz.

    Hogyan javítható az Apriori algoritmus hatékonysága?

    Az Apriori algoritmus hatékonyságának növelésére különféle módszereket alkalmaznak

    Hash alapú elemhalmaz számlálás

    A hash-alapú elemkészlet-számlálás során ki kell zárnia azt a k-elemkészletet, amelynek az egyenértékű kivonatozócsoport-száma a küszöbértéknél kisebb, ritka elemkészlet.

    Tranzakciócsökkentés

    A tranzakciócsökkentés során a gyakori X-elemkészletet nem tartalmazó tranzakció értéktelenné válik a következő vizsgálatok során.

    Apriori algoritmus az adatbányászatban

    Korábban már tárgyaltunk egy példát az apriori algoritmusra a gyakori elemhalmaz generálásával kapcsolatban. Az Apriori algoritmusnak számos alkalmazása van az adatbányászatban.

    Az adatbányászat társítási szabályainak megtalálásához szükséges elsődleges követelmények az alábbiakban találhatók.

    Használj Brute Force-t

    Elemezze az összes szabályt, és keresse meg az egyes szabály támogatási és megbízhatósági szintjeit. Ezután távolítsa el azokat az értékeket, amelyek kisebbek, mint a küszöbérték támogatási és megbízhatósági szintjei.

    A kétlépcsős megközelítések

    A kétlépéses megközelítés jobb megoldás az asszociációs szabályok megtalálására, mint a Brute Force módszer.

    1. lépés

    Ebben a cikkben már tárgyaltuk, hogyan hozható létre a gyakorisági táblázat, és hogyan számítható ki a küszöbtámogatásnál nagyobb támogatási értékkel rendelkező elemkészlet.

    2. lépés

    Társítási szabályok létrehozásához a gyakori elemkészletek bináris partícióját kell használnia. Ki kell választania azokat, amelyeknek a legmagasabb megbízhatósági szintje van.

    A fenti példában látható, hogy az RPO kombináció volt a gyakori elemkészlet. Most megtudjuk az összes szabályt az RPO használatával.

    RP-O, RO-P, PO-R, O-RP, P-RO, R-PO

    Láthatja, hogy hat különböző kombináció létezik. Ezért ha n elemed van, akkor 2 leszn- 2 jelölt egyesületi szabályzat.

    Az Apriori algoritmus előnyei

    • Nagy tételkészletek kiszámítására szolgál.
    • Egyszerűen érthető és alkalmazható.

    Az Apriori algoritmusok hátrányai

    • Az apriori algoritmus költséges módszer a támogatás megtalálására, mivel a számításnak az egész adatbázison át kell haladnia.
    • Néha nagyszámú jelöltszabályra van szükség, így ez számítási szempontból drágább lesz.