ZASTOSOWANIE REGUŁ ASOCJACYJNYCH DO EKSPLORACJI BAZ DANYCH RYSZARD BUDZI SKI ANDRZEJ SZARANEK Uniwersytet Szczeci ski Wydział Nauk Ekonomicznych i Zarz dzania Streszczenie W artykule omówiono teori i zastosowanie praktyczne wybranych metod eksploracji reguł asocjacyjnych. Przedstawiono zarys rozwoju systemów wspomagaj cych podejmowanie decyzji w przedsi biorstwach, omówiono genez i potrzeby wykorzystania reguł asocjacyjnych, oraz przedstawiono przykład ich działania. Słowa kluczowe: reguły asocjacyjne, eksploracja baz danych, KDD 1. Wprowadzenie Ogromny post p technologiczny ostatnich lat oraz zwi zane z nim rozpowszechnienie si systemów komputerowych w licznych przedsi biorstwach zaowocowało nagromadzeniem si bardzo du ych zasobów danych jakie przechowywane s w bazach danych. Ilo informacji z czasem przerosła ludzkie mo liwo ci analizy oraz utrudniła podejmowanie decyzji na ich podstawie. Sytuacja taka sprawiała, e w ci gu ostatnich lat systemy informatyczne ewoluowały zwi kszaj c swoj funkcjonalno i niezawodno. Pocz tkowo byli my wiadkami powstawania systemów wspomagania decyzji (ang. Decision Support Systems), w których znacz c rol odgrywała wiedza cz ciowo pochodz ca z baz danych, a cz ciowo od ekspertów w danej dziedzinie. Wyniki analiz dostarczane były w postaci raportów np.: w postaci warto ci sprzedanych produktów w okre lonym kwartale. Kolejne systemy pozwalały u ytkownikowi na zadawanie zapyta oraz na analiz zawarto ci baz danych np. przy pomocy technologii OLAP (ang. Online Analytical Processing). OLAP umo liwiała wielowymiarow prezentacj agregowanych danych z po ród wybranych atrybutów pochodz cych z jednej lub wielu relacji. U ytkownik miał mo liwo przygotowania pewnej hipotezy, której poprawno nast pnie weryfikował stosuj c metodologi OLAP. Jako tego typu systemów zale na była od wiedzy i kreatywno ci ekspertów, którzy definiowali hipotezy. Obecnie now i ci gle rozwijaj c si gał systemów informatycznych stanowi systemy automatycznie poszukuj ce wiedzy w ród zbiorów ogromnych ilo ci danych gromadzonych w bazach danych. Dziedzina informatyki badaj ca tego typu oprogramowanie znana jest pod nazw odkrywania wiedzy w bazach danych (ang. Knowledge Discovery in Databases) w skrócie KDD. Z KDD ci le zwi zane s technologie eksploracji danych (ang. Data Mining). Odkrywanie wiedzy nie wymaga od u ytkownika zakładania adnych hipotez, gdy s generowane automatycznie i weryfikowane przez system komputerowy. Zadaniem eksperta jest jedynie ocena wygenerowanej wiedzy, zazwyczaj w postaci reguł, sprowadzaj ca si do odrzucenia lub przyj cia wyników na podstawie okre lonych wska ników statystycznych.
POLSKIE STOWARZYSZENIE ZARZ DZANIA WIEDZ Seria: Studia i Materiały, nr 5, 2006 5 Eksploracja danych (ang. Data mining ) definiowana jest jako zbiór technik odkrywania nietrywialnych zale no ci i schematów w du ych zbiorach danych. Do metod eksploracji danych zalicza si : klasyfikacj, odkrywanie sekwencji, klastrowanie, odkrywanie charakterystyk, wykrywanie zmian i odchyle, odkrywanie podobie stw w przebiegach czasowych, odkrywanie asocjacji. 2. Zastosowanie reguł asocjacyjnych Eksploracja reguł asocjacyjnych stosowana jest do rozwi zywania problemów w licznych dziedzinach nauki, ekonomii, marketingu oraz wielu innych zwi zanych z naszym codziennym yciem. Najbardziej znanym przykładem wykorzystania odkrywania reguł asocjacyjnych jest analiza koszykowa. Przykładowo mo na uzyska reguł : gdy ludzie kupuj wie e pieczywo, w 30% przypadków kupuj równie jogurt. Tego typu wiedza pomaga kierownikom sklepu podejmowa słuszne decyzje dotycz ce, np.: promocji i obni ek cen zwykle nie ma sensu dokonywa jednocze nie obni ki na pieczywo i jogurty. Lepiej obni y cen jednego produktu, aby zwi kszy sprzeda obu. reklam i akcji marketingowych w niektórych przypadkach pokazanie w reklamie dwóch produktów jednocze nie daje lepszy efekt ni prezentowanie ich oddzielnie. Mo na równie obok produktu lub nawet na opakowaniu produktu umie ci reklam produktu z nim powi zanego. Pełniejsze zaspokajanie potrzeb dodatkowo utrwala w kliencie pozytywne wra enie. rozmieszczenia produktów na półkach sklepowych umieszczenie na jednej półce produktów o silnie skorelowanej sprzeda y zwi kszy ich sprzeda. W niektórych sytuacjach jednak bardziej skuteczne okazuje si du e oddalenie produktów, gdy klient pokonuj c drog mi dzy nimi musi min regały z innymi towarami. Wyszukiwanie reguł asocjacyjnych ma za zadanie zwi kszy wydajno systemów baz danych pod wzgl dem funkcjonalno ci umo liwiaj c zadawanie zło onych zapyta przykładowo w postaci: Znajd wszystkie reguły, których konsekwencj jest sprzeda produktu X. Znajomo reguł tego typu pozwoli podnie sprzeda produktu X. Znajd wszystkie reguły, które powstały w wyniku sprzeda y produktu X. Odkryj te reguły, które powstały w konsekwencji sprzeda y produktu X. Powy sze reguły maj okre li jaki wpływ na sprzeda wskazanych produktów mo e mie zaprzestanie sprzeda y produktu X. Znajd wszystkie reguły, które powstały w wyniku sprzeda y X, a które spowodowały, e wzrosła sprzeda Y. Tego typu zapytania mog wskaza jakie produkty nale y sprzedawa razem z X tak by wzrosła sprzeda Y. Znajd wszystkie reguły, które wi ze sob produkty umieszczone na półce A oraz półce B w sklepie.
6 Ryszard Budzi ski, Andrzej Szaranek Zastosowanie reguł asocjacyjnych do eksploracji baz danych Obecnie towary kupowane w supermarketach posiadaj kody kreskowe, które umo liwiaj sprzedawcom detalicznym ledzenie sprzeda y produktów i je eli sklep posiada karty lojalno ciowe mo liwe jest analizowanie zakupów dokonywanych przez poszczególnych klientów. Statystyczny klient odwiedza ten sam sklep wiele razy w ci gu roku. Transakcja odnosi si do pojedynczej wizyty i jest powi zana z okre lon dat i list zakupów. Poprzez analiz koszykow sprzedawca mo e wyci ga informacje, które pozwol usprawni jego działalno. Przykładem mo e tutaj by sytuacja, w której klienci kupuj cy produkty dla niemowl t kupuj te gotowe zupy w kartonach. Taka informacja mo e by wykorzystana np. w marketingu bezpo rednim (wysłanie ulotki z ofert promocyjn gotowych zup w kartonach do osób, które kupowały produkty dla dzieci). 3. Teoria reguł asocjacyjnych Zbiory cz ste daj informacj o tym, e pewne elementy wyst puj razem w okre lonej cz ci transakcji z bazy danych. Na bazie zbiorów cz stych mo na zdefiniowa reguły asocjacyjne 1. Pozwalaj one przedstawi odkrywan wiedz w postaci implikacji. Przy zało eniu, e zbiory cz ste A,B zawieraj elementy transakcji z bazy D, A B =, A =, oraz B = reguła asocjacyjna ma posta A B. Zbiór A nazywany jest poprzednikiem reguły, a zbiór B nast pnikiem reguły. Taka reguła oznacza, e zbiór B ma tendencj do wyst powania razem w transakcji ze zbiorem A. Długo reguły jest sumaryczn liczb elementów wyst puj cych w poprzedniku i nast pniku reguły, tzn. A B. Reguła o długo ci k b dzie okre lana jako k-reguła. Dla reguł asocjacyjnych wyst puj dwie podstawowe miary przydatno ci: wsparcie i zaufanie. Sposób ich obliczania wygl da nast puj co: wsparcie( A B) = wsparcie( A B) (1) zaufanie( A B) = wsparcie( A B) / wsparcie( A) (2) Wsparcie okre la w jakiej cz ci transakcji z bazy danych wyst puje dana zale no. Zaufanie okre la z jakim prawdopodobie stwem wyst powanie w transakcji poprzednika implikuje wyst pienie nast pnika. Przykładowo reguła uzyskana z danych o sprzeda y w sklepie spo ywczym: chleb maslo, dzem o wsparciu 5% i zaufaniu 80% oznacza, e 80% ludzi, którzy kupili chleb, kupiło równie masło i d em. Natomiast sytuacja taka zachodzi w 5% wszystkich transakcji w sklepie. Przykładowo je eli np. produkt {mleko} pojawia si w wielu transakcjach, gdzie wyst puje równie {margaryna, mleko}, mo na stworzy nast puj c reguł asocjacyjn : {chleb, margaryna} {mleko). Procent transakcji które składaj si z {chleb, margaryna} i jednocze nie zawieraj {mleko} b dzie okre lany jako zaufanie. Wsparciem tej reguły jest liczba transakcji, które zawieraj {chleb, margaryna} oraz {mleko}. Towary znajduj ce si w koszyku klienta mog by pogrupowane w ró nej wielko ci podzbiory, np. koszyk składaj cy si z nast puj cych towarów: {chleb, margaryna, mleko} mo e by uło ony w podzbiory jednoelementowe, tj. {chleb}, {margaryna}, {mleko}; podzbiory dwuelementowe {chleb, margaryna}, {chleb, mleko}, {margaryna, mleko} oraz podzbiór trójelementowy {chleb, margaryna, mleko}. Niektóre zestawy takie jak np. {chleb, margaryna} b d pojawiały si w wielu ró nych koszykach. Wsparcie okre lane b dzie tutaj jako liczba transakcji, w których 1 http://www.statconsulting.com.pl/assoc_rules_pl.html
POLSKIE STOWARZYSZENIE ZARZ DZANIA WIEDZ Seria: Studia i Materiały, nr 5, 2006 7 pojawia si dany zestaw. Ka da reguła asocjacyjna mo e mie wiele pozycji w poprzednikach, oraz wiele pozycji po stronie nast pników. Reguła {mleko) - {chleb, margaryna} posiada poprzednik {mleko}, oraz nast pniki {chleb, margaryna}. Wsparcie takiej reguły jest takie samo jak wsparcie reguły {chleb, margaryna} {mleko}, lecz jej zaufanie mo e by inne. IDTransakcji Tabela 1. Przykładowe transakcje Zakupione_Towary 1 chleb, mleko, pasta do z bów 2 chleb, mleko, margaryna 3 baton, chleb, kawa, margaryna 4 mleko, mi so 5 herbata, ciastka, pizza 6 mleko, kurczak w dzony, ziemniaki 7 margaryna, mleko, ciastka, chleb, kakao 8 margaryna, herbata 9 kawa, margaryna, mleko, makaron, chleb 10 boczek, jaja W powy szej tabeli zestaw {chleb, margaryna} posiada wsparcie 4, dlatego, e wyst puje w czterech transakcjach (2, 3, 4, 9). Zestaw {mleko} posiada wsparcie 6. zaufanie dla reguły {chleb, margaryna} {mleko} wynosi 75%, poniewa 3 z transakcji zawieraj cych {chleb, margaryna} zawiera równie {mleko}. Zaufanie dla reguły {mleko} - {chleb, margaryna} wynosi 50%, poniewa mleko pojawia si w sze ciu transakcjach i tylko trzy z nich zawiera {chleb, margaryna}. 4. Metody i algorytmy odkrywania reguł asocjacyjnych Problem odkrywania reguł asocjacyjnych sprowadza si do wygenerowania wszystkich tych reguł, które posiadaj współczynniki wsparcia oraz pewno ci wy sze od zadanych przez u ytkownika (minimalne wsparcie i minimalna pewno ). Eksploracja reguł sprowadza si zatem do dwóch zasadniczych podproblemów: znalezienie wszystkich kombinacji atrybutów, które maj wi ksze wsparcie od pewnego zadanego z góry progu zwanego minimalnym wsparciem (ang. minsupport). Te kombinacje nazywamy du ymi zbiorami elementów l zbiorami (ang. large itemsets). Wszystkie kombinacje nie spełniaj ce powy szych kryteriów (poni ej zadanego progu) nazywane s małymi zbiorami elementów zbiorami (ang. small itemsets). dla danych du ych zbiorów l-zbiorów (zbiorów cz stych) Y = i 1, i 2,..., i k gdzie k 2 generowane s wszystkie reguły, które wykorzystuj elementy ze zbioru Y. Przesłank dla wszystkich tych reguł powinien by podzbiór X ze zbioru Y, gdzie X posiada k-1 elementów a konkluzj jest podzbiór atrybutów Y-X. Do wygenerowania reguły
8 Ryszard Budzi ski, Andrzej Szaranek Zastosowanie reguł asocjacyjnych do eksploracji baz danych X i j conf X, gdzie X = i 1, i 2,..., i j-1, i j+1,...i k nale y uwzgl dni wsparcie zbioru Y i podzieli przez wsparcie zbioru X. Je li uzyskany stosunek jest wi kszy od conf, wówczas reguła jest akceptowana ze współczynnikiem conf, w przeciwnym wypadku reguła jest odrzucana. Maj c okre lone zbiory cz ste rozwi zanie drugiego podproblemu jest w wi kszo ci przypadków zadaniem prostym. Nale y zauwa y, e je li zbiór Y jest zbiorem cz stym, wówczas ka dy jego podzbiór jest równie zbiorem cz stym. Reguły wywiedzione ze zbioru Y spełniaj wszystkie ograniczenia, gdy zbiór Y jest sum elementów b d cych konkluzjami b d przesłankami ka dej w ten sposób utworzonej reguły. Do odkrywania reguł asocjacyjnych stworzono algorytmy, z których dwa najcz ciej stosowane zostan omówione. Algorytm Apriori, oraz jego modyfikacja AprioriTid2, zostały zaproponowane jako rozwini cie koncepcji wcze niejszych algorytmów AIS3 i SETM4. Na jego przykładzie zostanie zaprezentowana zasada działania wi kszo ci algorytmów do odkrywania reguł asocjacyjnych. Algorytm Apriori wykonuje wielokrotny odczyt danych wej ciowych. Podczas pierwszego czytania danych zliczane s wsparcia pojedynczych elementów, czyli zbiorów jednoelementowych. Pozwala to okre li czy s cz ste, tzn. czy spełniaj warunek minimalnego wsparcia. Przed ka dym kolejnym odczytem danych wykorzystywane s zbiory cz ste z poprzedniego odczytu jako baza do generacji nowych zbiorów, które s potencjalnie cz ste. S to tzw. zbiory kandyduj ce. W trakcie odczytu obliczane jest wsparcie tych zbiorów. Nast pnie zostaj okre lone zbiory s rzeczywi cie cz ste. Staj si one baz dla kolejnej fazy odczytu. Ten proces powtarza si a do chwili, gdy nie zostanie znaleziony aden nowy zbiór cz sty. Algorytmy Apriori i AprioriTid ró ni si zasadniczo od wcze niejszych algorytmów AIS i SETM metod generowania zbiorów potencjalnie cz stych. W przypadku algorytmów AIS i SETM, zbiory kandyduj ce s tworzone na bie co podczas odczytu danych. W szczególno ci, po wczytaniu transakcji, znajdywane s zbiory cz ste z poprzedniego odczytu, które wyst puj w tej transakcji. Nowe zbiory kandyduj ce wyznaczane s przez rozszerzanie znalezionych zbiorów o pozostałe elementy znajduj ce si w transakcji. Jednak wad tego rozwi zania jest niepotrzebne generowanie zbyt du ej liczby zbiorów, które okazuj si nie by cz ste. Algorytmy Apriori i AprioriTid tworz zbiory kandyduj ce wył cznie w oparciu o zbiory cz ste znalezione podczas poprzedniego odczytu danych. W procesie generacji zbiorów kandyduj cych nie s uwzgl dniane transakcje z bazy danych. Jak wiadomo podzbiór zbioru cz stego jest cz sty. Z tego powodu k-zbiory kandyduj ce mog zosta utworzone poprzez ł czenie (k-1)-zbiorów. Dodatkowo mo na usuwa zbiory, których jakikolwiek podzbiór nie jest cz sty. Takie podej cie prowadzi do generowania znacznie mniejszej liczby zbiorów kandyduj cych. Algorytm AprioriTid ma dodatkow cech polegaj c na tym, e baza danych jest u ywana do liczenia wsparcia tylko podczas pierwszego odczytu. Do tworzenia nowych zbiorów i obliczania ich wsparcia u ywane s dodatkowe informacje opisuj ce zbiory wygenerowane w poprzedniej fazie. W kolejnych fazach algorytmu rozmiar tych informacji staje si znacznie mniejszy od bazy 2 http://www.ru.lv/~peter/zinatne/pub/dbis2004.pps 3 Suh-Ying Wur, Yungho Leu - "An Effective Boolean Algorithm for Mining Association Rules in Large Databases" 6th International Conference on Database Systems for Advanced Applications str. 179 4 Ibidium
POLSKIE STOWARZYSZENIE ZARZ DZANIA WIEDZ Seria: Studia i Materiały, nr 5, 2006 9 danych, oszcz dzaj c czas potrzebny do odczytu danych. W dalszej cz ci zostanie to wyja nione bardziej precyzyjnie. Bibliografia 1. Rakesh Agrawal, Srikant Ramakrishnan, 1994. Fast Algorithms for Mining Association Rules. IBM Research Raport RJ9839, IBM Almaden Research Center 2. Heikki Mannila, Hannu Toivonen, 1997. Levelwise Search and Borders of Theoriesin Knowledge Discovery. Department of Computer Science, University of Helsinki, Finland. 3. Suh-Ying Wur, Yungho Leu. An Effective Boolean Algorithm for Mining Association Rules in Large Databases. 6 th International Conference on Database Systems for Advanced Applications. 4. http://www.kie.ae.poznan.pl/~marek/edu/zw/zasoby/8.pdf 5. http://www.ploug.org.pl/konf_99/pdf/7.pdf 6. http://www.ru.lv/~peter/zinatne/pub/dbis2004.pps 7. http://www.webmining.pl/webmining/techniki13.html
10 Ryszard Budzi ski, Andrzej Szaranek Zastosowanie reguł asocjacyjnych do eksploracji baz danych APPLICATION OF ASSOCIATION RULES FOR EXPLORATION OF THE DATA BASES Summary The article describes basic ideas of selected methods of association algorithms. There is a short description of development of Decision Support Systems its genesis and importance. There is also and practical usage of association rules. Keywords: Decision Support Systems, Association Rules, Data Base Exploration, KDD RYSZARD BUDZI SKI rbudzinski.ps.pl Uniwersytet Szczeci ski Instytut Informatyki w Zarz dzaniu ul. Mickiewicza 64 71-101 Szczecin ANDRZEJ SZARANEK andrzej_szary@o2.pl Uniwersytet Szczeci ski Wydział Nauk Ekonomicznych i Zarz dzania ul. Mickiewicza 64, Szczecin