logo

Apriori algoritmus

Algoritmus apriori sa vzťahuje na algoritmus, ktorý sa používa na výpočet asociačných pravidiel medzi objektmi. Znamená to, ako spolu súvisia dva alebo viac objektov. Inými slovami, môžeme povedať, že apriori algoritmus je asociačné pravidlo, ktoré analyzuje, že ľudia, ktorí si kúpili produkt A, kúpili aj produkt B.

Primárnym cieľom apriorného algoritmu je vytvoriť asociačné pravidlo medzi rôznymi objektmi. Asociačné pravidlo popisuje, ako sú dva alebo viac objektov navzájom prepojené. Apriori algoritmus sa tiež nazýva časté dolovanie vzorov. Vo všeobecnosti používate algoritmus Apriori na databáze, ktorá pozostáva z veľkého počtu transakcií. Poďme pochopiť apriori algoritmus pomocou príkladu; Predpokladajme, že pôjdete na Veľký bazár a kúpite si rôzne produkty. Pomáha zákazníkom jednoducho nakupovať ich produkty a zvyšuje predajnú výkonnosť Veľkého bazáru. V tomto návode budeme diskutovať o apriori algoritme s príkladmi.

Úvod

Berieme príklad, aby sme tento koncept lepšie pochopili. Určite ste si všimli, že predavač v pizzerii vyrába kombináciu pizze, nealkoholického nápoja a tyčinky. Svojim zákazníkom, ktorí si tieto kombá kúpia, tiež ponúka zľavu. Zamysleli ste sa niekedy nad tým, prečo to robí? Myslí si, že zákazníci, ktorí si kupujú pizzu, kupujú aj nealko a tyčinky. Tým, že robí kombá, to však zákazníkom uľahčuje. Zároveň zvyšuje aj svoju predajnú výkonnosť.

Podobne pôjdete na Veľký bazár, kde nájdete sušienky, hranolky a čokoládu zviazané dohromady. Ukazuje, že obchodník umožňuje zákazníkom nakupovať tieto produkty na rovnakom mieste.

Vyššie uvedené dva príklady sú najlepšími príkladmi pravidiel asociácie v

  • podpora
  • Dôvera
  • Zdvihnite
  • Zoberme si príklad na pochopenie tohto pojmu.

    previesť int na reťazec

    Už sme diskutovali vyššie; potrebujete obrovskú databázu obsahujúcu veľké množstvo transakcií. Predpokladajme, že máte 4 000 transakcií zákazníkov vo veľkom bazári. Musíte vypočítať Support, Confidence a Lift pre dva produkty a môžete povedať Sušienky a Čokoláda. Je to preto, že zákazníci často kupujú tieto dva položky spolu.

    Zo 4 000 transakcií obsahuje 400 sušienky, zatiaľ čo 600 obsahuje čokoládu a týchto 600 transakcií zahŕňa 200, ktorá zahŕňa sušienky a čokolády. Pomocou týchto údajov zistíme podporu, dôveru a nárast.

    podpora

    Podpora sa vzťahuje na predvolenú popularitu akéhokoľvek produktu. Podporu nájdete ako podiel delenia počtu transakcií zahŕňajúcich daný produkt celkovým počtom transakcií. Preto dostávame

    Podpora (sušienky) = (transakcie týkajúce sa sušienok) / (celkový počet transakcií)

    = 400/4000 = 10 percent.

    Dôvera

    Dôvera sa týka možnosti, že zákazníci kúpili spolu sušienky aj čokoládu. Takže musíte vydeliť počet transakcií, ktoré obsahujú sušienky aj čokolády, celkovým počtom transakcií, aby ste získali istotu.

    teda

    Dôvera = (Transakcie týkajúce sa sušienok aj čokolády) / (Celkový počet transakcií zahŕňajúcich sušienky)

    = 200/400

    = 50 percent.

    Znamená to, že 50 percent zákazníkov, ktorí si kúpili sušienky, si kúpilo aj čokoládu.

    Zdvihnite

    Zvážte vyššie uvedený príklad; výťah označuje zvýšenie pomeru predaja čokolád pri predaji sušienok. Matematické rovnice zdvihu sú uvedené nižšie.

    Pozdvihnutie = (dôvera (sušienky - čokolády)/ (podpora (sušienky)

    = 50/10 = 5

    To znamená, že pravdepodobnosť, že si ľudia kúpia sušienky aj čokoládu spolu, je päťkrát vyššia ako pravdepodobnosť, že si kúpia sušienky samotné. Ak je hodnota výťahu nižšia ako jedna, je nepravdepodobné, že by ľudia kúpili obe položky spolu. Čím väčšia hodnota, tým lepšia je kombinácia.

    Ako funguje algoritmus Apriori pri dolovaní údajov?

    Tento algoritmus pochopíme pomocou príkladu

    Zvážte scenár Big Bazar, kde je sada produktov P = {ryža, strukoviny, olej, mlieko, jablko}. Databáza obsahuje šesť transakcií, kde 1 predstavuje prítomnosť produktu a 0 predstavuje neprítomnosť produktu.

    ID transakcie Ryža Pulz Olejové mlieko Apple
    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

    Algoritmus Apriori vytvára dané predpoklady

    • Všetky podmnožiny častej množiny položiek musia byť časté.
    • Podmnožiny množiny zriedkavých položiek musia byť zriedkavé.
    • Opravte prahovú úroveň podpory. V našom prípade sme to zafixovali na 50 percent.

    Krok 1

    Vytvorte tabuľku frekvencií všetkých produktov, ktoré sa objavujú vo všetkých transakciách. Teraz skráťte tabuľku frekvencie a pridajte len tie produkty s prahovou úrovňou podpory nad 50 percent. Nájdeme danú frekvenčnú tabuľku.

    Produkt Frekvencia (počet transakcií)
    Ryža (R) 4
    pulz (P) 5
    olej (O) 4
    mlieko (M) 4

    Vyššie uvedená tabuľka uvádzala produkty, ktoré zákazníci často kupujú.

    Krok 2

    mapa v jave

    Vytvorte dvojice produktov ako RP, RO, RM, PO, PM, OM. Dostanete danú tabuľku frekvencií.

    Súbor položiek Frekvencia (počet transakcií)
    RP 4
    RO 3
    RM 2
    PO 4
    POPOLUDNIE 3
    O 2

    Krok 3

    Implementácia rovnakej prahovej podpory 50 percent a zváženie produktov, ktoré majú viac ako 50 percent. V našom prípade je to viac ako 3

    Takto získame RP, RO, PO a PM

    Krok 4

    Teraz hľadajte súpravu troch produktov, ktoré si zákazníci kúpia spolu. Dostaneme danú kombináciu.

    1. RP a RO dávajú RPO
    2. PO a PM daj POM

    Krok 5

    Vypočítajte frekvenciu týchto dvoch sád položiek a dostanete tabuľku frekvencií.

    Súbor položiek Frekvencia (počet transakcií)
    RPO 4
    POM 3

    Ak implementujete prahový predpoklad, môžete zistiť, že skupina troch produktov zákazníkov je RPO.

    Uvažovali sme o jednoduchom príklade na diskusiu o apriori algoritme pri dolovaní údajov. V skutočnosti nájdete tisíce takýchto kombinácií.

    veľkosť môjho monitora

    Ako zlepšiť efektivitu Apriori algoritmu?

    Pre efektívnosť Apriori algoritmu sa používajú rôzne metódy

    Počítanie množiny položiek na báze hash

    Pri počítaní množín položiek na základe hash je potrebné vylúčiť množinu k-položiek, ktorej ekvivalentný počet hašovacích skupín je menší ako prahová hodnota, čo je zriedkavá množina položiek.

    Zníženie transakcie

    Pri redukcii transakcií sa transakcia, ktorá nezahŕňa žiadnu častú sadu X položiek, v nasledujúcich skenoch stane nehodnotnou.

    Apriori algoritmus v dolovaní dát

    Už sme diskutovali o príklade apriorného algoritmu súvisiaceho s častým generovaním množiny položiek. Algoritmus Apriori má mnoho aplikácií v oblasti dolovania údajov.

    Primárne požiadavky na nájdenie pravidiel asociácie pri dolovaní údajov sú uvedené nižšie.

    Použite hrubú silu

    Analyzujte všetky pravidlá a nájdite podporu a úrovne spoľahlivosti pre jednotlivé pravidlá. Potom odstráňte hodnoty, ktoré sú nižšie ako prahová podpora a úrovne spoľahlivosti.

    Dvojstupňové prístupy

    Dvojstupňový prístup je lepšou možnosťou na nájdenie pravidiel asociácií ako metóda Brute Force.

    eol v pythone

    Krok 1

    V tomto článku sme už diskutovali o tom, ako vytvoriť tabuľku frekvencie a vypočítať množiny položiek s vyššou hodnotou podpory ako prahová podpora.

    Krok 2

    Ak chcete vytvoriť pravidlá asociácie, musíte použiť binárny oddiel častých sád položiek. Musíte si vybrať tie, ktoré majú najvyššiu úroveň spoľahlivosti.

    Vo vyššie uvedenom príklade môžete vidieť, že kombinácia RPO bola častou množinou položiek. Teraz zistíme všetky pravidlá pomocou RPO.

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

    Môžete vidieť, že existuje šesť rôznych kombinácií. Preto, ak máte n prvkov, budú 2n- 2 pravidlá združenia kandidátov.

    Výhody Apriori algoritmu

    • Používa sa na výpočet veľkých sád položiek.
    • Jednoduché na pochopenie a aplikáciu.

    Nevýhody Apriori algoritmov

    • Algoritmus Apriori je nákladná metóda na nájdenie podpory, pretože výpočet musí prejsť celou databázou.
    • Niekedy potrebujete veľké množstvo kandidátskych pravidiel, takže to bude výpočtovo drahšie.