asocia ní pravidla -...
Post on 09-Mar-2018
215 Views
Preview:
TRANSCRIPT
Biomedical Data Processing G r o u p
Asociační pravidla
Informační a komunikační technologie
ve zdravotnictví
Biomedical Data Processing G r o u p
Definice pojmů
Stavový prostor S
je množina uzlů(stavů), kde cílem je najít stav splňující danoupodmínku g.
Formálně je problém zadán trojicí (s0,g,O):
s0 je počáteční stavg je cílová podmínka (tj. hledaný stav s splňuje g(s))O je množina operátorů měnících stav Stavový prostor je potom definován rekurzivně: s0S, je-li sS, oO a o(s) je definováno potom o(s)�S o(s) je potomek uzlu s
Prohledávání stavového prostoru:
hledá se stav daných vlastností
Biomedical Data Processing G r o u p
Prohledávání stavového prostoru - do šířky
Breadth-First Search – jde po patrech
seznam q se chová jako fronta
Úplný algoritmus
pokud nejsou nekonečné cesty nebo je lze detekovat.
Složitost nalezení cílového uzlu v hloubce d:
nalezení cílového uzlu v hloubce d při b potomcích každéhouzlu: čas O(bd), pamět O(bd)
Biomedical Data Processing G r o u p
Prohledávání stavového prostoru - do šířky
A
B C D
E F G H I J K L
1. OPEN(A), CLOSE(0)
2. OPEN(B,C,D), CLOSE(A)
3. OPEN(C,D,E,F,G), CLOSE(A,B)
4. OPEN(D,E,F,G,H,I), CLOSE(A,B,C)
5. OPEN(E,F,G,H,I,J,K,L), CLOSE(A,B,C,D)
Biomedical Data Processing G r o u p
Prohledávání stavového prostoru - do hloubky
Depth-First Search (backtracking)
jde zvoleným směrem, návrat v případě neúspěchu
seznam q se chová jako zásobník
Úplný algoritmus
pokud nejsou nekonečné cesty nebo je lze detekovat.
Složitost nalezení cílového uzlu v hloubce d:
čas záleží na směru (může prohledat až celý stavovýprostor, ale také může jít přímo)
paměť O(d)
Biomedical Data Processing G r o u p
Prohledávání stavového prostoru - do hloubky
A
B C D
E F G H I J K L
M N
1. OPEN(A), CLOSE(0)
2. OPEN(B,C,D), CLOSE(A)
3. OPEN(E,F,G,C,D), CLOSE(A,B)
4. OPEN(M,N,F,G,C,D), CLOSE(A,B,E)
5. OPEN(N,F,G,C,D), CLOSE(A,B,E,M)
Biomedical Data Processing G r o u p
Prohledávání stavového prostoru - Gradientní algoritmus
Hill-climbing
Expanduje ten uzel, který byl vyhodnocen jako nejlepší
Vyhodnocuj jeho následovníky
Záleží jak hodnotící funkce postihuje vlastnosti charakter úlohy – kvalita použitých heuristik
Biomedical Data Processing G r o u p
Definice pojmů
Dolování v relačních datech
Relační tabulka
R=(H, RB)kde H je záhlaví relační tabulky a B je její tělo
Tělo relační tabulky
množina n-tic řádků RB(t) = {r1, r2, ..., rm(t)},
Doména atributu
množina skalárních hodnot téhož typu, jichž může atribut nabýt
Biomedical Data Processing G r o u p
Rozhodovací pravidla
Aproximace diskrétních cílových veličin
Aproximační fce je ve tvaru množiny rozhodovacíchpravidel
Jetliže <podmínka> pak <třída>
selektor – jednoduchý test hondoty atributu (=,<,>,≠)podmínka – konjunkce selektorů
Pravidla mají stejnou expresivitu jako stromy
stromy – rozděl a panuj – dělení, čistě shora dolůpravidla – odděl a panuj – pokrytí, konstrukce oběma směry
Biomedical Data Processing G r o u p
Rozhodovací pravidla
AQ algoritmus (Michalski)
for each class Ci
Ei = Pi Ni (PixNi – positivní x negativní příklady)pravidloBase(Ci) = emptyrepeat {find-set-of-rules}
- find one rule R covering some positive example and nonegative one
- add R to pravidlaBase(Ci)- delete from Pi all positive examples covered by R
until Pi is empty
Podstatná je find-one-rule procedura
Jedná se o proces generalizace – přístup zdola-nahoru
Biomedical Data Processing G r o u p
Rozhodovací pravidla
find-one-rule
zvol náhodně pozitivní příklad (zrno) generuj všechny maximální generalizace zrna
Pokrývá co nejvíce pozitivních příkladů Nebokrývá žádný negativní příklad
vyber nejlepší generalizaci (preferenční heuristika)
zrno 1:if (a1=y)^(b=s) ^(c=n) then +g1 ~ if (a=y) then +
zrno 2:if (a=x) ^(b=r) ^(c=m) then +g1 ~ if (a=x) ^(b=r) then +g2 ~ if (b=r) ^(c=m) then +-nrz6
-ntz5
-msx4
+nsy3
+nry2
+mrx1
vcba#
Biomedical Data Processing G r o u p
Rozhodovací pravidla
AQ algoritmus
závisí na volbě zrnanení vhodný pro domény s chybami/šumem
CN2
Clark a Niblett 1989přístup shora dolů – tzv. paprskové prohledávánímůže generovat neuspořádané množiny pravidelnebo uspořádané množiny pravidel – rozhodovací seznami
Biomedical Data Processing G r o u p
Asociační pravidla
Definice:
Snaha zjistit mezi položkami takový vztah, že přítomnost jednénebo více položek implikuje přítomnost jiných položek v téžetransakci – pravděpodobnostní tvrzení o spoluvýskytu událostív datech
A B kde A,B jsou vzájemně disjunktní množiny položek množiny I
Charakter logické implikace
if <antecedent> then <sukcedent> Ant, Suc jsou konjunkce selektorů
Generalizovaná asociační pravidla
význam: Ant a Suc jsou v asociaci dle metriky definované nad čtyřpolní tabulkou
Biomedical Data Processing G r o u p
Asociační pravidla
Asociační vs. rozhodovací pravidla
deskripce vs. klasifikace (predikce)Sukcedent může obsahovat libovolné atributy, nejen třídu if teplota=nízká the vlhkost=normální if obloha=proměnlivo then třída=ano
Asociační pravidla neřeší problém pokrytí
některých příkladů se nemusí dotknout žádné pravidlo jde o nalezení zajímavých společných výskytů hodnot
Rozhodovací pravidla
aproximace diskrétní cílové funkce
Biomedical Data Processing G r o u p
Asociační pravidla
Pojmy:
Položky: I = {I1,I2,…,Im}Transakce: D = {t1,t2,…,tn}, tj I případy, objekty
Množiny položek: {Ii1,Ii2,…,Iik} I konjunkce selektorů, analogie podmínky
Podpora množiny položek: (relativní četnost transakcíobsahujících danou množinu položek)
Frekventovaná množina položek: četnost výskytů danémnožiny položek je vyšší než zvolený práh
Podpora Spolehlivost
Biomedical Data Processing G r o u p
Asociační pravidla
Motivace získávání asociačních pravidel
Úloha „Analýza nákupního košíku“ Snažíme se zjistit závislosti mezi jednotlivými
prodejními položkami (př. asoc. pravidla: „pokud si zákazník kupuje mléko, zpravidla si koupí chleba“)
Využití výsledků pro rozmisťování zboží, vytváření nabídkových katalogů, marketingové rozhodování apod.
Biomedical Data Processing G r o u p
Asociační pravidla
Analýza nákupního košíku
Cíl: nalézt položky kupované společně
chleba máslo ; podpora = 60%, spolehlivost = 75 %
pivo, mlékot5
pivo, chlebat4
chleba, mléko, máslot3
chleba, máslot2
chleba, aspik, máslot1
VěciTransakce
Biomedical Data Processing G r o u p
Asociační pravidla
Metriky pro asociační pravidla
n = a+b+c+dl = b+dk = a+c
s = c+ddcnon(Ant)r = a+bbaAnt
non(Suc)Suc
( )
1 2
a a dpodpora příčinná podporan n
a a dspolehlivost příčinná spolehlivostr a b b d
apokrytík
Biomedical Data Processing G r o u p
Asociační pravidla
Metriky pro asociační pravidla – WEKA
SPOLEHLIVOST (CONFIDENCE) podíl příkladů pokrytých LHS které jsou současně pokryté i RHS
ZDVIH (LIFT) Stupeň o nějž pravidlo zvyšuje přesnost defaultní predikce své RHS
PÁKA (LEVERAGE) Podíl příkladů, které jsou pravidlem pokryté dostatečně nad rámec příkladů
pokrytých za předpokladu nezávislosti LHS a RHS
PŘESVĚDČIVOST (CONVICTION) Podobná zdvihu, ale uvažuje příklady nehokryté RHS pravidla – musí
pracovat s převráceným poměrem četností
a nl i f tr k
r lc o n v ic t io nb n
1( )
leveragen a r k n
Biomedical Data Processing G r o u p
Asociační pravidla
Příklady metrik
0.450.9
10
1
Ant a Suc jsou nezávislé
podporaspolehlivostzdvihpákapřesvědčivost
1000100900
50050450
50050450
100090010098989990
11110
1000500500
50045050
50050450
0.010.91
9.090.01
9.9
závislost, ale můžebýt náhodná
podporaspolehlivostzdvihpákapřesvědčivost
0.450.9
1.80.2
5
silná závislost
podporaspolehlivostzdvihpákapřesvědčivost
Biomedical Data Processing G r o u p
Nalezení asociačních pravidel
Silná pravidla
pravidla s vysokou (předem určenou) hodnotou a spolehlivostí
Cíl
nalézt taková pravidla, která jsou „silná“
Dolování asociačních pravidel
nalezení silných pravidel
Biomedical Data Processing G r o u p
Nalezení asociačních pravidel
Dva kroky procesu nalezení asociačních pravidel:
Generování frekventovaných vzorů nalezení predikátů, které mají podporu vyšší, než je zadaná
minimální podpora nalezení silných množin
Generování asociačních pravidel vygenerování asoc. pravidel s využitím silných množin odstranění pravidel, jejichž spolehlivost (confidence) nedosahuje
předem určené minimální hodnoty (minconf)
Biomedical Data Processing G r o u p
Nalezení asociačních pravidel
Definice frekventovaného vzoru
fp je frekventovaný vzor, konjunkce predikátů tvara1 ^ a2 ^ … ^ an
jednotlivé predikáty odpovídají hodnotám určitého počtu řádků, v případě kvantitativních atributů musí být hodnota uvnitřurčitého intervalu
fp je množina frekventovaných vzorůs(x) je podpora
FP = {fp | s(fp) ≥ minsup}
Biomedical Data Processing G r o u p
Nalezení asociačních pravidel
Definice silných asociačních pravidel
ar … asociační pravidlo tvaru A B, kde A, B jsou konjunkce predikátů tvaru a1 ^ a2 ^ … ^ an
c(ar) … spolehlivost pravidlas(ar)… podpora pravidla
Poté je množina silných pravidel AR definována jako:
AR = {ar | c(ar) ≥ minconf ^s(ar) ≥ minsup}
Biomedical Data Processing G r o u p
Nalezení asociačních pravidel
Faktory, určující výkon dolovacího algoritmu:
Efektivita generování frekventovaných vzorůČasová a paměťová náročnost generování frekventovaných
vzorůDruhý krok (generování asociačních pravidel) je jednoduchý a
nemá v konečném důsledku větší vliv na výkon dolovacího algoritmu
Biomedical Data Processing G r o u p
Nalezení asociačních pravidel
Algoritmus APRIORI
algoritmus „prochází“ postupně databázi a počítá podporu prokandidáty
v každém kroku generování tzv. kandidátů a poté kontrolaminimální podpory.
v dalším kroku vznik kandidátů o velikosti o jednu větší, než vpředchozím kroku atd.
konec při nenalezení kandidátů dané velikosti funkce AprioriGen generuje všechny možné k množiny
(kandidáty) z frekventovaných množin poté vylučuje z výběru ty množiny, jejichž některá podmnožina není
frekventovaná („podpora k-množiny nemůže být větší, než podpora její podmnožiny“)
Biomedical Data Processing G r o u p
Apriori algoritmus
Výpočet podpory pro všechny prvky z množiny C1
for (k=2;;k++) begin
Lk-1={ kandidáti z Ck-1, kteří mají podporu vyšší nežminimální}
if (množina Lk-1 je prázdná) break
Ck = AprioriGen(Lk-1);
for each (transakce t) begin
Ct = subset(Ck, t);
for each (kandidáti c є Ct) zvyš o 1 podporu kandidáta c
end
end
Biomedical Data Processing G r o u p
Apriori algoritmus
Biomedical Data Processing G r o u p
Další typy asociačních pravidel
Víceúrovňová asociační pravidla
nad položkami v transakcích je definována konceptuálníhierarchie, která je sdružuje do tzv. konceptů (jablko, pomeranč = ovoce)
Asociační pravidla založená na omezeních
Zobecněná asociační pravidla
Biomedical Data Processing G r o u p
Děkuji za pozornost
top related