Professional Documents
Culture Documents
9 Data Mining Assotiation Rules
9 Data Mining Assotiation Rules
Асоциативни правила
Съдържание
Основни концепции
Формален модел
Сила на асоциативните правила
Алгоритъм Apriori
Разновидности на алгоритъма
Apriori
Въведение
Подхдът е предложен от Agrawal през 1993. Това е
съществен модел на Data Mining, който е
предназначен за откриването на асоциативни връзкки
между множества от обекти (артикули) в бази от
данни. Първоначално задачата за откриване на
асоциативни правила (association rule mining) е била
ориентирана към намирането на типични шаблони от
покупки в супермаркети (купуване на свързани
артикули), затова понякога тя се нарича и “задача за
анализ на пазарната кошница”. Задачата работи с
категорийни, а не с количествени данни.
Min_sup = 50 %
Min_conf = 80 %
itemset:count
1.Scan D C1:{a}:3,{b}:4,{c}:4,{d}:3,{e}:1,{f}:1
F1:{a}:3,{b}:4,{c}:4,{d}:3
C2:{a,b},{a,c},{a,d},{b,c},{b,d},{c,d}
2.Scan D C2:{a,b}:3,{a,c}:3,{a,d}:2,{b,c}:2,{b,d}:3,{c,d}:2
F2:{a,b}:3,{a,c}:3,{b,d}:3
C3:{a,b,c},{a,b,d},{b,c,d},{a,c,d}
3.Scan D C3:{a,b,c}:3,{a,b,d}:2,{b,c,d}:2,{a,c,d}:2
F3:{a,b,c}:3 C4:{a,b,c} -> sup(3/6)
Пример – асоциативни правила
От показания пример следват
асоциативните правила, за които
sup ≥ min_sup. За k =3 правилата
са:
a,b -> c [sup = 3/6, conf = 3/3]
хляб,мляко -> бисквити
a -> b,c [sup = 3/6, conf = 3/3]
хляб – мляко, бисквити
Обобщение на алгоритъма Apriori
Алгоритъмът извършва “послойно” търсене.
k е размерът на най-дългата съвкупност от
артикули (на практика – значително ограничено).
Алгоритъмът изисква не повече от k обхождания на
данните.
Алгоритмът е много бърз. При наличието на някои
условия той изисква линейно време.
Пространството от всички асоциативни правила
нараства експоненциално: O(2m), където m е броя
на артикулите в I (вж.по-горе).
Алгоритъмът разчита на разредеността на данните
в D и наличието на ограбичения за sup и conf.
Алгоритъмът е в състояние да генерира огромно
множество от асоциативни правила.
Разновидности на алгоритъма
Apriori
Разновидностите на алгоритъма Apriori
представляват негови оптимизации,
предложени за съкращаване на броя на
стъпките за сканиране на базата или (и)
броя на множествата-кандидати:
Алгоритъм AprioriTid
Алгоритъм AprioriHybrid
Алгоритъм PARTITION
Алгоритъм DIC, Dynamic Itemset Counting
Разновидности на алгоритъма
Apriori (2)
AprioriTid – особеност на този алгоритъм е, че базата
от данни D не се използва за изброяване на
поддръжката на кандидатите от множества след
първото сканиране. За тази цел се използва кодиране
на кандидатите, изпълнено на предишните сканирания
на D така, че в следващите сканирания размерът на
кодираните съвкупности да бъде много по-малък от
базата от данни и по такъв начин да се икономисат
значителни ресурси.
AprioriHybrid – в по-ранните стъпки на сканиране
алгоритъмът Apriori постига по-голям успех от
AprioriTid, но AprioriTid работи по-добре от Apriori в по-
късните сканирания. Освен това и двата алгортъма
използват една и съща процедура за генериране на
съвкупности от кандидати. Въз основа на тези изводи
е предложен алгоритъмът AprioriHybrid с цел да се
обединят предимствата на двата алгоритъма.
Разновидности на алгоритъма
Apriori (3)
Алгоритъмът PARTITION (A. Savasere, E. Omiecinski
and S. Navathe, 1995 год) – това е алгоритъм с разделяне
(разбиване) и се основава на сканиране на базата от
данни чрез разделянето и на непресичащи се дялове,
всеки от които може да се вмести в оперативната памет.
На първа стъпка във всеки раздел с помощта на
алгоритъма Apriori се определят “локалните” често
срещащи се съвкупности. На втора стъпка се пресмята
поддръжката на всеки набор спрямо цялата база от
транзакции D. По този начин на втория етап се определя
множеството от всички потенциално често срещани
набори.
Алгоритъм DIC, Dynamic Itemset Counting (S. Brin R.
Motwani, J. Ullman и S. Tsur, 1997 год). Алгоритъмът с
основава на разделяне на базата от транзакции на
няколко блока с маркирането на т.нар.”начални точки” и
цикличното и сканиране.