owd lato1213

36
7/28/2019 OWD Lato1213 http://slidepdf.com/reader/full/owd-lato1213 1/36  POLI Odkry „Eksploracj ECHNIKA RZESZOWSKA Katedra Informatyki i Automatyki  anie wiedzy z dan Krzysztof Ś wider  Materiały pomocnicze do przedmiotów: danych” i „Systemy wspomagania Semestr letni 2012/2013 ch decyzji”

Upload: krzysztofswider

Post on 03-Apr-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 1/36

 

POLI

Odkry

„Eksploracj

ECHNIKA RZESZOWSKAKatedra Informatyki i Automatyki 

anie wiedzy z dan

Krzysztof Ś wider 

 Materiały pomocnicze do przedmiotów:

danych” i „Systemy wspomagania

Semestr letni 2012/2013

ch

decyzji”

Page 2: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 2/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

2

Page 3: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 3/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

3

Spis treści

1  SYSTEMY ANALIZY DANYCH ........................................................................................ 4 1.1  Rozwój systemów analitycznych................................................................................................ 4 

1.2  Zapytania i raporty .................................................................................................................... 5 

1.3  Odkrywanie wiedzy z danych .................................................................................................... 6 

1.4  Przetwarzanie analityczne on-line ............................................................................................. 6 

1.5  Eksploracja danych .................................................................................................................... 8 

1.6  Wspomaganie decyzji na podstawie analizy danych ................................................................ 10 

2  WYBRANE METODY WSTĘPNEJ OBRÓBKI DANYCH ......................................... 11 2.1  Istota wstępnej obróbki .......................................................................................................... 11 

2.2  Czyszczenie danych .................................................................................................................. 11 

2.3  Integracja danych .................................................................................................................... 13 

2.4  Transformacja ......................................................................................................................... 15 

2.5  Redukcja .................................................................................................................................. 17 

3  HURTOWNIE DANYCH I APLIKACJE OLAP ........................................................... 19 

3.1  Pojęcie oraz cechy hurtowni danych ........................................................................................ 19 

3.2  Modele danych dla aplikacji OLAP ........................................................................................... 20 

3.3  Kostki danych .......................................................................................................................... 21 

3.4  Aplikacje OLAP ........................................................................................................................ 22 

4  KLASYFIKACJA I REGRESJA ....................................................................................... 24 4.1  Istota i modele klasyfikacji ...................................................................................................... 24 

4.2  Regresja................................................................................................................................... 25 

4.3  Generowanie drzew decyzyjnych ............................................................................................ 26 

5  METODY WYKORZYSTUJĄCE UCZENIE BEZ NADZORU.................................... 31 

5.1  Grupowanie ............................................................................................................................. 31 

6   ANALIZA ASOCJACJI ..................................................................................................... 33 

6.1  Częste wzorce .......................................................................................................................... 33 

6.2  Reguły asocjacji ....................................................................................................................... 33 

6.3  Odkrywanie częstych zbiorów ................................................................................................. 35 

Page 4: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 4/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

4

1  Systemy analizy danych

1.1  Rozwój systemów analitycznych

W ostatnich dekadach znacząco wzrosła liczba systemów zarządzania

przedsiębiorstwami klasy ERP wyposażonych w bazę danych a coraz częściej tak że w

hurtownie danych. Umożliwiają one efektywne zarządzanie dużymi zbiorami stale

napływających danych. Rozwój systemów przeznaczonych do gromadzenia i przetwarzania

informacji dodatkowo przyśpieszyło pojawienie się Internetu jako nowej możliwości

pozyskiwania danych w postaci elektronicznej na niespotykaną dotychczas skalę.

Większość przedsiębiorstw komercyjnych funkcjonuje w warunkach szybkiego postępu

oraz konkurencji rynkowej. Wymogi klientów szybko się zmieniają, stąd konkurujące firmy

muszą stale poszukiwać nowych produktów oraz sposobów zwiększania swojego udziału na

rynkach. Podstawowym zasobem firm do osiągnięcia tych celów staje się wiedza o własnej

kondycji oraz o otaczającym świecie. Wiedza taka może w szczególności posłużyć do

wczesnego wykrywania pewnych trendów, czy też przewidywania bądź objaśniania pewnych

zjawisk. Jednym ze sposobów zdobywania wiedzy jest analiza dużych ilości danych, które

firmy gromadzą w swoich systemach komputerowych. Dotychczasowe narzędzia

przetwarzania danych takie jak: SQL czy klasyczne aplikacje baz danych (formularze,

raporty) są przeznaczone głównie do wspomagania codziennej (operacyjnej) działalności firm

i instytucji. Możliwości analizowania danych przy użyciu takich aplikacji są ograniczone i

sprowadzają się głównie do sporządzania zestawień i wykresów. Tymczasem działalność na

poziomie decyzyjnym wymaga nie tylko danych ale przede wszystkim wiedzy. Dlatego we

współczesnych systemach informacyjnych, coraz więcej uwagi poświęca się pozyskiwaniu

wiedzy z danych przy użyciu nowej generacji technik analizy. W ostatnich latach pojawiło się pojęcie odkrywania wiedzy z danych (knowledge discovery from data - KDD), jako dziedziny

rozwoju systemów przetwarzania danych, która obejmuje szereg zaawansowanych technik 

takich jak: hurtownie danych, technologia OLAP oraz eksploracja danych (data mining).

Systemy odkrywania wiedzy z danych są tak że określane jako systemy analityczne stanowiąc

 jednocześnie ważny kierunek rozwoju współczesnych baz danych (rys.1.1). Z reguły

wykorzystuje się przy tym technologie baz danych oraz wybrane metody sztucznej

inteligencji i statystyki, a analiza dotyczy danych o znacznej objętości.

Stosowane obecnie techniki analizy danych można zatem zaliczyć do jednej z trzech

kategorii obejmujących: (i) zapytania i raporty, (ii) analizę OLAP oraz (iii) eksplorację 

Page 5: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 5/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

5

danych. O ile jednak zapytania i raporty są zaliczane do klasycznych aplikacji baz danych to

analiza OLAP oraz eksploracja danych reprezentują nowy kierunek rozwoju współczesnych

systemów analitycznych określany jako odkrywanie wiedzy z danych. Systemy te w

większym stopniu niż tradycyjne aplikacje baz danych mogą być wykorzystane do

wspomagania strategicznych decyzji w przedsiębiorstwach.

Rys.1.1 Systemy analityczne a rozwój technologii baz danych.

1.2  Zapytania i raporty

Zapytania i raporty to znane z kursu baz danych mechanizmy pozwalające na szybki i

uporządkowany dostęp do danych przechowywanych w bazie. Przykładem zapytania może

być użycie polecenia SELECT w języku SQL lub kwerendy w programie MS Access,

podczas gdy przykładem raportu może być raport uzyskany przy pomocy specjalizowanego

narzędzia (na przykład takiego jakie udostępnia MS Access).

Rys. 1.2 Schemat przetwarzania zapytania.

Page 6: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 6/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

6

Zapytania i raporty są rodzajem analizy sterowanej całkowicie przez analityka, który

musi sformułować konkretne zapytania, bądź utworzyć aplikacje raportujące (rys.1.2).

Oznacza to, że analiza jest w pełni nakierowana na ten problem, który w danej chwili bada

analityk, a uzyskane wyniki nie wykraczają poza ściśle określony, wcześniej zaplanowany

obszar.

1.3  Odkrywanie wiedzy z danych

Metody stosowane do odkrywania wiedzy z danych wykraczają poza klasyczne

aplikacje baz danych oparte na zapytaniach SQL i charakteryzują się ograniczeniem wpływu

analityka na proces analizy oraz uzyskiwane wyniki.

Rys.1.3 Ogólny schemat odkrywania wiedzy z danych.

Rysunek 1.3 przedstawia ogólny schemat wieloetapowego odkrywania wiedzy z

danych. Do analizy wykorzystuje się różne źródła danych, jak np.: bazy danych, pliki

tekstowe i inne. Dane źródłowe są często organizowane w specjalne bazy przeznaczone do

analizy, nazywane hurtowniami danych, a wyselekcjonowane dane są poddawane zabiegom

analitycznym. Wynikiem są różnego rodzaju modele i wzorce zwykle prezentowane wprzejrzystej formie z użyciem grafiki. Ocena i interpretacja wyników jest zadaniem analityka.

Ogólnym celem jest pozyskanie potrzebnej wiedzy, która często jest ukryta w danych. Wiedza

 jest tutaj rozumiana jako pewne zależności, modele, reguły, wzorce, itp. wynikające z danych.

1.4  Przetwarzanie analityczne on-line 

W przypadku przetwarzania analitycznego on-line, określanego tak że jako analiza

OLAP, dane są organizowane w dużych zbiorach w ten sposób aby możliwa była ich

Page 7: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 7/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

7

efektywna analiza, dzięki możliwości przeglądania wzdłuż pewnych aspektów

semantycznych nazywanych wymiarami. Typowe wymiary to: czas, produkt , klient itp.

Stosując technologię OLAP można przeglądać dane nie tylko w różnych wymiarach, ale

na różnych poziomach hierarchii w pojedynczego wymiaru. Np. wymiar klient  można

rozpatrywać na następujących poziomach hierarchii:  państwo, region, miasto czy konkretny

sklep. Liczba wymiarów może być różna, choć często na rysunkach dane zorganizowane

wielowymiarowo przedstawia się w postaci sześcianów nazywanych kostkami OLAP lub

kostkami danych (data cubes). Aby przybliżyć niektóre praktyczne możliwości OLAP,

rozważymy prosty przykład analizy sprzedaży.

Rys.1.4 Przykładowa analiza OLAP.

Załóżmy, że pewna firma sprzedaje na terytorium Polski produkty: X, Y i Z w

kilkunastu miastach położonych w 4 regionach: północnym, centralnym, zachodnim oraz

południowo-wschodnim. Co kwartał dokonywana jest analiza wyników sprzedaży

poszczególnych produktów, a analityk ma do dyspozycji aplikację OLAP za pomocą której

dokonuje tej analizy. Przypuśćmy tak że, że w 3 kwartale 2007 r. wzrost sprzedaży

poszczególnych produktów wyglądał w sposób pokazany na wykresie z rys 1.4a. Sam w sobie

wykres ten ma charakter wyłącznie ilościowy i nie dostarcza żadnych informacji na temat

przyczyn małego wzrostu sprzedaży produktu Z. Z drugiej strony wykorzystywana tu

aplikacja OLAP daje możliwość podjęcia próby „objaśnienia” zaistniałego stanu rzeczy

dzięki możliwości stopniowego (on-line) przechodzenia do kolejnych wykresów pokazanych

na rys. b) i c). W szczególności analiza sprzedaży samego tylko produktu Z w

poszczególnych regionach (b), a następnie miastach (c), pozwala uzyskać znacznie więcej

informacji o występującym problemie.

Z reguły przygotowanie aplikacji OLAP wymaga zbudowania hurtowni danych 

zorganizowanej według określonego modelu.

Page 8: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 8/36

 

1.5  Eksploracja danyc

Technologia OLAP p

wszystkim w zakresie tzw. „

 jeszcze bardziej ograniczone,Tymczasem współczesne sy

bardziej zaawansowanych n

grupowanie, wyszukiwanie

udostępniają metody i tech

odkrywanie wiedzy z danyc

modeli oraz odkrywanie wzo

różnych źródeł a w szczególn

Cechą charakterystycz

„dotrzeć” do wiedzy na tyle

przewidzieć jej istnienia. Istni

eksploracji danych, a do na

klastry, reguły asocjacyjne i i

na rys. 1.5.

Rys.1

Źródłem danych do an

(HD) zasoby WWW oraz in

reguły poddawane wstępnej o

odpowiada za dostarczenie

eksplorację (motor) zawiera

klasyfikacji, predykcji, grupo

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

8

ozwala wspomagać system podejmowan

objaśniania zachowań”. Możliwości zapyta

ponieważ w praktyce ograniczają się dostemy wspomagania decyzji, wymagają 

arzędzi analitycznych, które umożliwiłyb

zęstych wzorców, analizę asocjacji itd.

iki „eksploracji danych”. Zadaniem ekspl

, a stosowane metody i techniki umożliw

rców i trendów na podstawie danych. Dane

ści mogą być wcześniej zapisane w hurtown

ą systemów eksploracji danych jest to,

krytej w danych, iż sam analityk nie byłby

eją różne metody reprezentowania wiedzy u

bardziej znanych należą: model regresji,

ne. Typową architekturę systemu eksplorac

.5 Architektura systemu eksploracji danych

 

lizy mogą być tradycyjne (relacyjne) BD,

e źródła (pliki tekstowe, arkusze kalkulacy

róbce pod k ątem przygotowania do analizy

anych zgodny z żądaniami użytkownika.

komponenty funkcjonalne zapewniające w

ania, odkrywania wzorców itd. Moduł oce

ia decyzji przede

oraz raportów są 

analizy ilościowej.astosowania coraz

np. klasyfikację,

Takie możliwości

oracji danych jest

iają konstruowanie

mogą pochodzić z

i danych.

że pozwalają one

w stanie wcześniej

zyskanej w wyniku

drzewa decyzyjne,

i danych pokazano

.

hurtownie danych

 jne itp). Dane są z

serwer HD lub BD

Moduł realizujący

ykonywanie zadań 

y wzorców stosuje

Page 9: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 9/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

9

się na ogół pewne miary użyteczności odkrywanej wiedzy i we współpracy z modułem

eksploracji wpływa na wyszukiwanie najbardziej interesujących (użytecznych) wzorców.

Interfejs zapewnia integracje użytkownika z systemem eksploracji, w tym możliwość 

sformułowania zadań eksploracji, wizualizację wzorców ich ocenę przydatności itp.

Dodatkowo architektura systemu ED może obejmować specjalną bazę wiedzy wspomagającą 

proces analizy oraz ocenę użyteczności uzyskanych wyników.

Używając metod i technik ED można realizować różnorodne funkcje określone przez

charakter i rodzaj wzorców otrzymanych w wyniku eksploracji. Ogólnie zadania zrealizowane

w ED można podzielić na 2 klasy:

•  eksploracja opisowa (descriptive mining)

•  eksploracja predykcyjna ( predictive mining)

 Eksploracja opisowa służy do tego, aby uzyskać ogólny pogląd na pewne właściwości

danych w analizowanym zbiorze. Natomiast eksploracja predykcyjna zakłada wykorzystanie

istniejących danych do przewidywania (predykcji) niektórych wartości przyszłych (nowych)

danych.

Do typowych metod stosowanych w wielu współczesnych systemów eksploracji danych

należą: klasyfikacja i predykcja, grupowanie, analiza asocjacji i inne. Wybrane spośród nich

zostaną przedstawione bliżej w dalszej części tego opracowania.

W stosunku do dwóch scharakteryzowanych wcześniej metod analizowania danych, tj.

zapytań /raportów oraz analizy wielowymiarowej OLAP, techniki eksploracji danych

zakładają istotne zredukowanie roli analityka w formułowaniu zadania analizy. Odkrywaniewiedzy jest tutaj w większym stopniu procesem samoczynnym, to jest zdeterminowanym

przez same dane (rys.1.6).

Rys.1.6 Eksploracja danych a inne metody analizy.

Warto zauważyć, że w przypadku eksploracji danych udział analityka jest zredukowany

nie tylko w formułowaniu problemu, ale tak że w samym przebiegu analizy.

Page 10: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 10/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

10

1.6  Wspomaganie decyzji na podstawie analizy danych

Historycznie relacyjne systemy zarządzania bazami danych koncentrowały się na

przetwarzaniu transakcji (OLTP - OnLine Transaction Processing) (rys 1.7).

Rys.1.7 Rozwój systemów wspomagania decyzji.

Technologia hurtowni danych umożliwiła opracowanie hurtowni danych (data

warehouse) oraz składnic danych (data mart ) celem wykorzystywania ich w systemach

wspomagania decyzji. Technologia OLAP oraz eksploracja danych umożliwiają 

wykorzystanie danych gromadzonych w bazach OLTP i hurtowniach do analizy. Opracowano

zaawansowane metody i narzędzia pozwalające stosować w praktyce techniki OLAP i

eksplorację danych.

Page 11: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 11/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

11

Brakującewartości

2  Wybrane metody wstępnej obróbki danych

2.1  Istota wstępnej obróbki

Przypuśćmy że mamy przeanalizować dane pewnej firmy handlowej ze szczególnym

uwzględnieniem sprzedaży w poszczególnych oddziałach. W typowym przypadku

rozpoczynamy przeglądamy bazy lub hurtowni danych w celu wyszukania tych atrybutów,

które zamierzamy wykorzystać w analizie. Mogą nimi być np.: identyfikator transakcji, cena,

liczba sprzedanych sztuk, wartość transakcji itp. Z dużym prawdopodobieństwem może się 

okazać, że niektóre z pól które powinny zawierać dane są puste. Może tak że brakować 

istotnych atrybutów, jak na przykład informacji, czy pewien artykuł był sprzedany w

normalnym trybie, czy na wyprzedaży. Ponadto możemy spotkać błędne dane, wartości spoza

zakresu oraz inne niepożądane sytuacje. Podsumowując, dane, które mają być poddaneanalizie mogą okazać się :

•  niekompletne – brakuje wartości interesujących nas atrybutów bądź całych atrybutów,

•  zakłócone – występują wartości błędne lub znacząco odbiegające od spodziewanych,

•  niespójne – zawierające sprzeczności (np. oznaczenie kodu tego samego działu

odbywa się na różne sposoby).

Kolejne problemy pojawiają się wówczas, gdy maja być analizowane dane z różnych

źródeł, co z reguły polega na łączeniu różnych baz danych, kostek danych lub plików.

Typowym przykładem jest sytuacja, atrybuty odnoszące się do tych samych danych mają wróżnych bazach różne nazwy np. id_klienta oraz klient_id . Niejednorodność może pojawić się 

tak że w zapisie wartości atrybutów, np.: K/M, kobieta /mężczyzna, 0/1 itp.

Istnieje szereg metod mających na celu polepszenie jakości danych wykorzystywanych do

analizy. Celem jest zwiększenie skuteczności analizy, a wyróżnić można następujące typowe

metody wstępnej obróbki:

1)  czyszczenie danych,

2)  integracja danych,

3)  transformacja danych,

4)  redukcja danych.

2.2  Czyszczenie danych

Procedury czyszczenia danych polegają na próbach wypełniania brakujących wartości

atrybutów, wygładzania występujących szumów (zakłóceń) oraz likwidowania sprzeczno ści.

W celu ilustracji problemu brakujących wartości rozważymy firmę sprzedającą artykuły

elektroniczne. Załóżmy, że przeglądając dane za pewien okres stwierdzono

brak wartości pewnych atrybutów, np. dochód_klienta. Celem zaradzenia tej

takiej sytuacji, można zastosować różnorodne zabiegi, podobne do tych jakie

Page 12: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 12/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

12

Problemzakłóconych

danych

Pojemnikowanie

scharakteryzowano poniżej.

Zignorowanie krotki. Nie jest to metoda zbyt atrakcyjna, gdy brakuje jedynie pojedynczych

wartości; zawodzi zwłaszcza wtedy, gdy występują istotne różnice w brakujących

wartościach atrybutów.

Ręczne wpisanie brakujących wartości. Jest to podejście czasochłonne, a w przypadku

znacznych braków i dużych baz danych trudno wykonalne.

Użycie globalnej stałej do wypełniania brakujących wartości. Chodzi o zastąpienie

brakujących wartości stałą etykietą typu „nieznana wartość”.

Użycie średniej wartości atrybutu Jeśli na przykład średni dochód klienta wynosi 50 tys., to

taka właśnie wartość służy do wypełniania brakujących wartości atrybutu

dochód_klienta. Można tak że użyć średniej obowiązującej dla krotek tej samej klasy np.

brakujący dochód zastępujemy dochodem jaki mają klienci o takim samym ryzyku

kredytowym.

Użycie najbardziej najprawdopodobniej wartości. Może być ona wyznaczona za pomocą 

regresji lub drzewa decyzyjnego.

Zakłócenie to pewien losowy błąd mierzonej wartości. Powstaje zatem

problem wygładzenia danych w celu pozbycia się zakłócenia wartości

pewnego atrybutu numerycznego jak np. cena. Istnieje kilka technik 

rozwiązywania tego problemu, wśród których wyróżnić można: pojemnikowanie,

grupowanie, regresję.

W przypadku  pojemnikowania wygładza się posortowane dane przezsprawdzenie ich sąsiedztwa (wartości leżących wokół nich).

Posortowane wartości są umieszczane w pojemnikach. Można to zilustrować w następującym

przykładzie.

 Przykład 2.1

Wartości pewnego atrybutu są sortowane:

4 8 15 21 21 24 25 28 34,

a następnie dzielone na pojemniki:

Pojemnik I: 4 8 15

Pojemnik II: 21 21 24

Pojemnik III: 25 28 34

Wygładzanie wg średnich pojemnika polega na zastąpieniu każdej wartości pojemnika

wartością średnią:

Pojemnik I: 9 9 9

Pojemnik II: 22 22 22

Pojemnik III: 29 29 29

Page 13: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 13/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

13

Grupowanie

Regresja

Problem

sprzeczności

danych

Wygładzanie można tak że przeprowadzić wykorzystując wartości graniczne. Wartość 

najmniejsza i największa zostają wtedy wybrane jako graniczne a pozostałe zastąpione przez

najbliższą wartość graniczną. Otrzymujemy wtedy:

Pojemnik I: 4 4 15

Pojemnik II: 21 21 24Pojemnik III: 25 25 34

W przypadku ogólnym, im większy jest zakres, którym się zajmujemy, tym lepszy jest

efekt wygładzania. Alternatywą pokazanego sposobu jest zastosowanie pojemników

 jednakowej szerokości; w takim przypadku zakres wartości umieszczonych w pojemniku jest

stały.

Poprzez grupowanie można wykryć (zidentyfikować) tzw. wartości

izolowane. W tym przypadku wartości zbliżone do siebie są organizowane

w grupy określane tak że jako klastry (clusters). Intuicyjnie wnioskuje się wówczas, że

wartości, które wypadają poza klaster mogą zostać uznane za izolowane, co oznacza, że ze

znacznym prawdopodobieństwem zostały one zakłócone.

Użycie regresji pozwala na wygładzanie danych przez dopasowanie do

funkcji.  Regresja liniowa polega ona na znajdowaniu w pewnym sensie

optymalnej prostej dopasowanej do 2 zmiennych, w ten sposób, że w oparciu o jedną zmienną 

można wyznaczać drugą. Większość metod wygładzania stanowi jednocześnie metodę 

redukcji np. technika pojemnikowania pozwala zmniejszyć liczbę różnych wartości danego

atrybutu.W istniejących danych mogą wystąpić pewne niespójności. Część z nich

może być usunięta ręcznie, jak np. błędy powstałe w wyniku wprowadzania

danych. Można tak że użyć narzędzi inżynierii wiedzy w celu wykrycia

ograniczeń. Do wykrycia wartości sprzecznych z ograniczeniami można zastosować 

zależności funkcjonalne pomiędzy atrybutami. Sprzeczności mogą pojawić się w danych np.

w wyniku integracji, kiedy pewien atrybut nosił różne nazwy w różnych bazach danych.

2.3  Integracja danych

Eksploracja danych często wymaga przeprowadza integracji, tj. połączenia danych z

wielu źródeł tak aby mogły być poddane wspólnej analizie. Dane takie muszą być 

przekształcone w jedną, spójną strukturę. Przykładami źródeł mogą być: bazy danych,

struktury wielowymiarowe (kostki), pliki tekstowe oraz inne zasoby (rys.2.1).

Page 14: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 14/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

14

Rys.2.1  Źródła integrowanych danych.

Dokonując integracji należy pamiętać o kilku kwestiach. Po pierwsze należy odrzucić 

sztywny schemat integracji, gdyż może być ona wtedy trudna do wykonania. Jednym

z istotnych problemów jest dopasowanie encji z różnych baz danych. Chodzi o to aby ustalić,

że pewien atrybut o nazwie identyfikator klienta id_klienta, z jednej bazy danych oraz

nr_klienta z innej, odnoszą się do tej samej encji. Pomocne mogą okazać się tu tzw. metadane 

czyli „dane o danych”, dostępne zazwyczaj w bazach i hurtowniach danych. Kolejną ważną 

kwestią jest nadmiarowość danych. Jeżeli wartość pewnego atrybutu może być 

wywnioskowana na podstawie wartości innych atrybutów to może okazać się, że jest on

zbędny. Niespójności w nazewnictwie mogą tak że wywołać nadmiarowość w zbiorze

wynikowym, co może zostać wykryte z użyciem analizy korelacji. Załóżmy, że interesują nas

związki pomiędzy dwoma atrybutami  A i  B. Analiza korelacyjna, bazując na dostępnych

danych, może zmierzyć jak bardzo jeden atrybut implikuje drugi. W szczególności

współczynnik korelacji pomiędzy atrybutami A i B może być obliczony wg równania:

, =∑ ሺ −   ҧሻሺ − തሻ

ୀଵ

 

gdzie:

- liczba krotek,

,ഥ ത – średnie wartości atrybutów A i B,

, – odchylenia standardowe wartości atrybutów A i B.

Jeżeli wartość wyrażenia z prawej strony jest większa od 0, to mówimy, że atrybuty

 A i B są dodatnio skorelowane. Znaczy to tyle, że jeśli wartości atrybutu  A rosną, to rosną 

tak że wartości  B. Im większa wartość parametru r  A,B obliczonego z tego równania, tym

bardziej jeden atrybut implikuje (określa) drugi. A zatem wysoka wartość  r  A,B  wskazuje, że

atrybut  A (lub  B) jest nadmiarowy i może być usunięty. Jeżeli wartość współczynnikakorelacji wynosi 0 to atrybuty A i  B są niezależne. Jeśli natomiast r  A,B < 0, A i B są ujemnie

Page 15: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 15/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

15

skorelowane czyli jeżeli wartość jednego rośnie, to drugiego maleje. Można zatem, używając

tej zależności, sprawdzić wzajemną korelację wspomnianych wyżej atrybutów id_klienta i

nr_klienta.

Innym problemem nadmiarowości jest wykrywanie powielających się krotek, tzn.

sytuacji, w której w zbiorze danych pojawiają się krotki identyczne.

Kolejną istotną sprawą dotyczącą integracji jest wykrywanie konfliktów pomiędzy

wartościami. Dla tej samej encji, wartości atrybutów pochodzących z różnych źródeł mogą się 

różnić, co wynika z różnic reprezentowaniu tych wartości w każdym ze źródeł, ich

skalowaniu lub kodowaniu, np. wartości atrybutu waga mogą być przechowywane w jednej

bazie w jednostkach metrycznych, a w innej w funtach, cena pobytu w hotelu może nie tylko

być wyrażona w różnych walutach a tak że obejmować różne usługi (np. darmowe śniadanie)

itp. Taka semantyczna (znaczeniowa) jednorodność danych, stanowi spore wyzwanie dla

metod integracji. Należy podkreślić, że staranna integracja danych z różnych źródeł pomaga

zlikwidować (lub co najmniej zminimalizować) nadmiarowości i niespójności w zbiorze

wynikowym. Ma to znaczny wpływ na skuteczność i szybkość przyszłego procesu

eksploracji.

2.4  Transformacja

Podczas transformacji dane zostają przekształcone oraz skonsolidowane do postaci

odpowiedniej dla zastosowanej w konkretnym przypadku procedury eksploracji. Wszczególności w ramach transformacji może powstać potrzeba:

•  wygładzania (zagadnienie to omówiono w podrozdziale poświęconym oczyszczaniu

danych);

•  agregacji – dane poddaje się operacji sumowania oraz zespalania. Na przykład, dane

dotyczące dziennych obrotów mogą być zsumowane w celu uzyskania obrotu

miesięcznego i rocznego;

•  generalizacja (uogólnianie) – zabieg ten polega na zastąpieniu danych

niskopoziomowych danymi poziomu wyższego z zastosowaniem hierarchii pojęć, np.

w przypadku danej takiej jak wiek, podawanej w latach, można zastosować pojęcia na

wyższym poziomie hierarchii, np.: „młody”, „średni”, „starszy”,

•  normalizacja – polega na takim przeskalowaniu wartości aby należały do pewnego

założonego zakresu np. < −1, 1 >;

•  tworzenie atrybutów – czyli tworzenie cech, tj. dodawanie do bazy nowych atrybutów

na podstawie atrybutów istniejących. Ogólnym celem tego procesu jest poprawienie

wydajności eksploracji,

Wygładzanie stanowi jedną z form usuwania zakłóceń i zostało omówione w podrozdziale

poświęconym czyszczeniu danych, natomiast agregacja oraz generalizacja zostaną krótko

Page 16: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 16/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

16

przedstawione w podrozdziale dotyczącym redukcji danych. Tutaj zajmiemy się normalizacją 

i tworzeniem atrybutów.

 Normalizacja

Jak już wspomniano, atrybut jest normalizowany w ten sposób, że jego wartości są 

skalowane tak, aby należały do pewnego wąskiego, określonego przedziału. Normalizacja jest

użyteczna zwłaszcza wtedy, gdy algorytm klasyfikacji korzysta z sieci neuronowych lub

algorytmów związanych z pomiarem odległości, takich jak np. grupowanie Przyjrzymy się 

trzem metodom normalizacji:

•  normalizacja typu MIN-MAX,

•  normalizacja wg wartości,

•  normalizacja przez skalowanie dziesiętne.

Normalizacja typu MIN-MAX. Polega na liniowej transformacji danych. Załóżmy, że min A i

max A oznaczają odpowiednio najmniejszą i największą wartość atrybutu A. Normalizacja tego

typu odwzorowuje wartość v atrybutu  A na wartość v' należącą do przedziału [new_min A,...,

new_max A] wg następującej zależności:

ᇱ =− min 

∗ ሺ __ − __ ሻ + _min 

Normalizacja tego typu zachowuje związki pomiędzy oryginalnymi wartościami atrybutu.

Jeśli jednak w przyszłości do normalizacji zostanie przeznaczona wartości spoza pierwotnego

zakresu zmienności atrybutu A, to może wystąpić błąd przekroczenia założonego przedziału.

 Przykład 2.2

Załóżmy, że wartości z przedziału: min A = 12 000, max A = 98 000 chcemy odwzorować na

zakres <0,0...1,0> stosując normalizację MIN-MAX. Zatem wartość  v = 73 600 zostanie

przekształcona na v' = [(73 600 – 12 000)/(98 000 – 12 000)]* (1 – 0) + 0 = 0,716

Normalizacja wg wartości (normalizacja typu zero średnia). Metoda oparta jest na

średniej i odchyleniu standardowym atrybutu A. Pewna wartość v atrybutu A jest

normalizowana do v' z zależności:

ᇱ =−   ҧ

 

gdzie:

− ℎ ś

  ҧ − ś ś

Metoda ta jest użyteczna, gdy nie znamy rzeczywistych wartości min i max atrybutu  A lub

istnieją wartości izolowane (nietypowe), które mogłyby dominować podczas normalizacji

typu MIN-MAX.

Page 17: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 17/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

17

 Przykład 2.3

Załóżmy, że średnia atrybutu  A = 64000 a odchylenie 16000. Wówczas dla v=73600

otrzymujemy v' = (73600-64000)/16000 = 0,6.

Normalizacja przez skalowanie dziesiętne. Odbywa się ona przez przesunięcie przecinka

dziesiętnego w wartości atrybutu A. Liczba miejsc, o jak ą należy przesunąć przecinek, zależy

od maksymalnej wartości bezwzględnej atrybutu A. Wartość  v atrybutu A zostaje

znormalizowana do v' następująco:

ᇱ =10

 

gdzie

− ł , , ż maxሺ| |ሻ < 1 

 Przykład 2.4

Załóżmy, że zarejestrowane wartości atrybutu A zajmują zakres od -917 do 986. Największa

wartość bezwzględna atrybutu A wynosi 986, dlatego każdą wartość dzielimy przez 1000, tzn.

 j = 3. Wówczas wartość 986 zostanie znormalizowana do 0,986, a wartość – 917 do -0,917.

Zauważmy, że normalizacja może w pewnym stopniu zmienić oryginalne dane.

Konieczne jest tak że zachowanie parametrów normalizacji (takich jak  średnia i odchylenie

standardowe), tak aby dane wprowadzone w przyszłości były normalizowane w jednakowy

sposób.

Tworzenie atrybutówTechnika tworzenia atrybutów polega na konstruowaniu nowych atrybutów z

atrybutów istniejących w celu polepszenia wydajności i lepszego zrozumienia danych,

z którymi pracujemy. Na przykład możemy zdecydować się na dodanie atrybutu pole

powierzchni obliczając jego wartości na podstawie atrybutów szerokość i długość. Atrybuty

nowo utworzone pozwalają wyszukiwać brakujące informacje o związkach pomiędzy

atrybutami, co tak że może być użyteczne w procesie odkrywania wiedzy.

2.5  Redukcja

Złożona analiza dużych ilości danych może trwać tak długo, że analiza stanie się 

niepraktyczna lub niewykonalna. Aby temu zaradzić, można stosować pewne techniki

redukcji danych. Służą one uzyskaniu zbioru danych, który jest znacznie mniejszy

objętościowo a jednocześnie zapewnia integralność tak jak dane oryginalne. Inaczej mówiąc,

drążenie danych zredukowanych powinno być bardziej wydajne, a jednocześnie dawać takie

same (lub prawie takie same) wyniki analizy. Do strategii redukcji zalicza się na przykład

agregację kostek danych dotyczącą danych zorganizowanych wielowymiarowo. Z kolei w

przypadku redukcji wymiarów ma miejsce wykrywanie i usuwanie atrybutów nieistotnych,

Page 18: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 18/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

18

mało istotnych lub nadmiarowych. Inną możliwość stanowi kompresja, gdzie korzysta się z

mechanizmów kodowania aby zredukować wielkość zbioru danych. W pewnych sytuacjach

może być dokonana redukcja numeryczna, która polega na zastępowaniu lub przybliżaniu

danych z wykorzystaniem alternatywnych, oszczędniejszych reprezentacji. Redukcja

numeryczna może być w szczególności dokonana przez próbkowanie bądź zastosowanie

histogramów. Przykładem może być model parametryczny, w przypadku którego

przechowuje się tylko parametry modelu zamiast właściwych danych. Mogą to być tak że

zabiegi nieparametryczne jak próbkowanie bądź zastosowanie histogramów. Ważnymi

sposobami dokonywania redukcji są tak że dyskretyzacja i tworzenie hierarchii pojęć. W

przypadku dyskretyzacji pierwotne wartości atrybutów są zastępowane całymi przedziałami

lub pojęciami wyższego poziomu. Hierarchie pojęć umożliwiają eksplorację danych na

różnych poziomach abstrakcji.

Page 19: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 19/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

19

Hurtownie danych i aplikacje OLAP

3.1  Pojęcie oraz cechy hurtowni danych

Najprościej hurtownię danych można zdefiniować jako bazę danych z przeznaczeniem

do analizy. W praktyce hurtownie buduje się wykorzystując technologie baz danych. Dane

mogą pochodzić z wielu różnych źródeł zarówno będących własnością danej firmy jak i

pochodzących z zewnątrz (rys.3.1).

Rys.3.1 Hurtownia danych.

Do istotnych cech odróżniających hurtownię od bazy operacyjnej zalicza się:

••••  znacznie większą objętość,

••••  ograniczenie możliwości manipulowania danymi przez zwykłego użytkownika tylko

do odczytu,

••••  uwzględnienie czasu (konsekwentnie przechowuje się tak że dane archiwalne).

Często pojawia się sytuacja gdy analizie poddawany jest tylko pewien fragment

funkcjonowania firmy, w jakimś sensie ograniczony tematycznie. Wówczas zamiast

wykorzystywać globalną hurtownię wystarczy wcześniej wydzielić szereg hurtowni

tematycznych nazywanych tak że składnicami danych (data mart ). Można wówczas mówić o

architekturze systemu hurtowni co ilustruje rys.3.2.

Page 20: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 20/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

20

Rys.3.2 Architektura systemu hurtowni danych.

3.2  Modele danych dla aplikacji OLAP

W przypadku gdy hurtownia danych jest wykorzystywana przez aplikacje OLAP, dane

organizuje się w tabele relacyjne zgodne z pewnymi schematami. Przykładem jest schemat 

(model) gwiazdy (rys.3.3).

Rys.3.3 Schemat gwiazdy.

Schemat gwiazdy składa się z pojedynczej tabeli faktów połączonej z pewną liczbą tabel

wymiarów. W praktyce wykorzystuje się bazę relacyjną oraz mechanizm kluczy obcych.

Tabela faktów zawiera przede wszystkim dane numerycznie odnoszące się do tzw. miar, np.:

ilość, kwota, wielkość rabatu itp. Pozostałe atrybuty w tabeli faktów to klucze obce

zapewniające połączenie z tabelami wymiarów. Z kolei tabele wymiarów charakteryzują dane

wzdłuż pewnych wielkości semantycznych (wymiarów). Do typowych przykładów

wymiarów należą: czas, produkt oraz klient . W praktyce liczba wymiarów może być różna niż 

trzy. Wymiary pozwalają analizować dane na różnych poziomach hierarchii, np wymiar czas 

może mieć następujące poziomy hierarchii: rok , kwartał , miesiąc oraz dzień.

Page 21: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 21/36

 

Schemat gwiazdy nie jes

hurtowni danych. Innym, zna

3.3  Kostki danych

Ze względu na wielow

kostki danych (data cubes) na

W przedstawionym p

Atrybuty „model” i „grupa” t

poziomu „grupa” są to: pral

określonego poziomu hierarch

Dzięki możliwości w

obliczeń podsumowujących h

odpowiednia do przetwarzan

OLAP wykorzystujące wiedz

umożliwić wszechstronną p

hierarchii). Przykładami oper

których ideę zilustrowano na

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

21

t jedynym modelem jaki może być użyty

ym przykładem jest model płatka śniegu.

ymiarowość danych często mówi się, że dan

zywane tak że kostkami OLAP (rys.3.4).

Rys.3.4 Przykład kostki danych.

rzykładzie „klient”, „czas” i „produkt” to

orzą hierarchię wymiaru produkt. Wartości

i, lodówki i telewizory) tworzą tzw. ucze

ii wymiaru.

lądu w wielowymiarowe dane oraz wyko

urtownia danych stosująca model gwiazdy

a analitycznego on-line (OLAP). Przewid

ę z dziedziny, z której pochodzą badane

ezentację tych danych (szczególnie na r

acji OLAP są: rozwijanie (drill down) oraz

ys.3.5.

do projektowania

tworzą tzw.

nazwy wymiarów.

tych atrybutów (dla

stników (members)

ywania wstępnych

wydaje się w pełni

iano tzw. operacje

rzez dane tak, aby

óżnych poziomach

 zwijanie (roll up),

Page 22: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 22/36

 

Ry

 

Można na przykład „roz

i w ten sposób otrzymać pods

ale w stosunku do wymiaru k 

poszczególne miasta w region

3.4  Aplikacje OLAP

Aplikacja analityczna

Dane pochodzące z różnych

wstępnej obróbce obejmując

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

22

s.3.5 Istota operacji rozwijania i zwijania. 

wijać” dane o sprzedaży podsumowane poc

umowania miesięczne. Postępując w pewny

lient można uzyskać bardziej ogólną kwotę 

ie.

ys.3.6 Ogólny schemat aplikacji OLAP. 

OLAP (rys.3.6) wykorzystuje dane zgroma

źródeł (bazy relacyjne, pliki tekstowe, i

ej ekstrakcję, transformację i ładowanie

ątkowo kwartałami

m sensie odwrotnie

sprzedaży sumując

zone w hurtowni.

tp.) poddawane są 

 ETL - Extraction,

Page 23: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 23/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

23

Transformation, Loading). Użytkownicy aplikacji analitycznej OLAP wykorzystują dane

zorganizowane wielowymiarowo w postaci kostek. Użytkownicy mogą wykonywać 

różnorodne operacje na danych takie jak roll-up oraz drill down, obserwując przedstawione w

postaci tabelarycznej bądź graficznej. Warto zaznaczyć, że interfejsem użytkownika jest z

reguły przyjazna w obsłudze aplikacja (wykorzystywany jest m.in. program MS Excel).

Zadaniem administratora systemu analitycznego jest jego utrzymywanie, zwłaszcza w

zakresie systematycznego zasilania danymi.

Page 24: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 24/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

24

4  Klasyfikacja i regresja

4.1  Istota i modele klasyfikacji

Klasyfikacja polega na poszukiwaniu modelu opisującego pewne klasy, który

umożliwiłby predykcję (przewidywanie), do jakiej klasy należy zaliczyć analizowane obiekty.

Model powstaje na podstawie zbioru danych trenujących, których przynależność do danej

klasy jest z góry określona. Generowanie modelu w przypadku klasyfikacji odbywa się 

metodą uczenia nadzorowanego, określanego tak że jako uczenie z nauczycielem (supervised 

learning). Oznacza to w szczególności, że wymagany jest zbiór uczący, w którym każdy

obiekt (przypadek), charakteryzowany przez pewną liczbę atrybutów opisowych, jest

 jednocześnie zaliczony do pewnej klasy wskazanej przez atrybut klasyfikujący (zmienną 

celu). Zbiór uczący powinien zawierać możliwie reprezentatywną grupę przykładów, tak abyskuteczność klasyfikowania była zadowalająca. Klasy zmiennej celu powinny być dyskretne,

tzn. nie można zastosować klasyfikacji tam, gdzie zmienna celu przyjmuje wartości ciągłe.

Jednym z możliwych sposobów zapisu modelu klasyfikacji jest zbiór reguł postaci

<iloczyn_predykatów> => <klasa>,

co ilustruje następujący przykład:

wiek(X, młody) and dochód(X, wysoki) => klasa (X, A);

wiek(X, młody) and dochód (X, niski) => klasa (X, B);

wiek (X, średni) => klasa (X, C);

wiek (X, stary) => klasa (X, C).

Tak zapisany zbiór reguł jest przykładem modelu klasyfikacji, który przypisuje nieznany

obiekt X do jednej z klas A, B lub C. Warto tak że zwrócić uwagę, że wartości atrybutów

wiek , dochód oraz klasa nie są liczbowe, gdyż charakterystyczne dla metod klasyfikacji jest

to, że operują one nie tylko na atrybutach ilościowych, ale tak że jakościowych.

Często spotykanym rodzajem modelu klasyfikacji są drzewa decyzyjne (rys.4.1).

Rys. 4.1 Przykład drzewa decyzyjnego.

Page 25: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 25/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

25

Drzewo decyzyjne jest reprezentowane przez strukturę drzewiastą, w której każdy z

węzłów nie będących liściem reprezentuje test wartości pewnego atrybutu. W przykładzie na

rys. 4.1. korzeń opisany etykietą  wiek , zaleca sprawdzenie wartości tego atrybutu dla całej

populacji analizowanej grupy ludzi. Poszczególne gałęzie (krawędzie) odpowiadają różnym

wynikom testu. Na przykład gałąź  młody wychodząca z węzła wiek  prowadzi do węzła

dochód , a gałąź   średni,stary prowadzi do liścia C. Obie te gałęzie rozdzielają całą 

analizowaną populację na dwie grupy. Dla pierwszej z nich będzie testowany kolejny atrybut

w węźle dochód  a druga stanowi klasę docelową C. W efekcie przedstawione na rysunku

drzewo decyzyjne dokonuje klasyfikacji przydzielając klasyfikowanym obiektom jedną 

spośród klas: A, B lub C, którym odpowiadają liście drzewa.

Drzewa decyzyjne są jednym z przykładów reprezentowania wiedzy uzyskanej w

procesie eksploracji danych. Aby otrzymać drzewo należy przygotować zbiór danych

uczących, a następnie zastosować jeden spośród istniejących algorytmów generowania

drzewa. Uzyskane drzewo może być użyte do klasyfikacji nowych danych.

Do znanych metod klasyfikacji należą tak że sieci neuronowe. Przykład sieci, która

przypisuje obiekty z rozważanego przykładu do klas A, B i C pokazano na rys.4.2.

Rys. 4.2 Model klasyfikacji w postaci sieci neuronowej.

Sieć neuronowa stanowi zbiór tzw. neuronów (jednostek przetwarzania), połączonych

ze sobą. Neurony tworzą warstwy. Warstwa wejściowa jest związana z zadanymi wartościami

parametrów, a warstwa wyjściowa odpowiada klasom.

4.2  Regresja

Metoda regresji znajduje zastosowanie tam, gdzie mamy do czynienia z predykcją 

numeryczną. W takich przypadkach wykorzystuje się model regresji w postaci równania

otrzymanego na podstawie pewnego zbioru znanych wartości liczbowych. Mając równanie

Page 26: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 26/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

26

można wyznaczyć wartości nieznane. W przykładzie na rys. 4.3, na podstawie dużego zbioru

danych o wysokości dochodów i wydatków pewnej grupy osób, wygenerowano równanie

regresji w postaci linii prostej.

Rys. 4.3 Prosty przykład modelu regresji.

Linia reprezentuje model uzyskany na podstawie danych rzeczywistych. Równanie

może posłużyć dalej do przewidywania wydatków osób, których dochód jest nam znany.

Zarówno klasyfikacja, jak i regresja mogą wymagać analizy tzw. istotności atrybutów, która

ma na celu wskazanie tych, które nie mają wpływu na proces predykcji i mogą być 

wykluczone z dalszego przetwarzania.

4.3  Generowanie drzew decyzyjnych

Procedurę generowania drzewa decyzyjnego można zilustrować na przykładzie

algorytmu CART [Breiman i in.. 1984] oraz zbioru uczącego zawartego w tab. 4.1. Algorytm

generuje regularne drzewa binarne, to znaczy, że każdy węzeł decyzyjny ma dokładnie dwóch

synów. W procesie generowania rekordy ze zbioru uczącego są rekurencyjnie dzielone na

podzbiory z podobnymi wartościami zmiennej celu, przy czym w każdym węźle decyzyjnym

rozważane są wszystkie możliwe podziały i wybierany ten który okazuje się najlepszy według

następującego kryterium:

ሺ / ሻ = 2 ∑ | ሺ / ሻ − ሺ / ሻ|#௦௬ୀଵ , (4.1)

gdzie

- lewy potomek węzła t ,

- prawy potomek węzła t ,

=liczba rekordów w ௧ై 

liczba rekordów w zbiorze uczącym,

= liczba rekordów w ௧ౌ liczba rekordów w zbiorze uczącym

,

Page 27: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 27/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

27

ሺ / ሻ =liczba rekordów należących do klasy w ௧ై 

liczba rekordów w t ,

ሺ / ሻ =liczba rekordów należących do klasy w ௧ౌ 

liczba rekordów w t .

Tabela 4.1

Klient Oszczędności Majątek Dochód (tys.$) Ryzyko kredytowe

1 średnie duży 75 małe

2 małe mały 50 duże

3 duże średni 25 duże

4 średnie średni 50 małe

5 małe średni 100 małe

6 duże duży 25 małe

7 małe mały 25 duże

8 średnie średni 75 małe

Zależność 4.1 mówi, że optymalny podział to ten, który maksymalizuje wartość 

ሺ / ሻ po wszystkich możliwych podziałach w węźle t . W naszym przykładzie wszystkie

osiem rekordów ze zbioru uczącego w tab. 4.1 wchodzi do korzenia. Możliwe podziały w

korzeniu, które rozważa algorytm CART pokazano tab.4.2.

Tabela 4.2

Podział Lewe poddrzewo Prawe poddrzewo

1 oszczędności = małe oszczędności∈

{średnie,duże}

2 oszczędności = średnie oszczędności ∈ {małe,duże}

3 oszczędności = duże oszczędności ∈ {małe,średnie}

4 majątek = mały majątek ∈ {średni,duży}

5 majątek = średni majątek ∈ {mały,duży}

6 majątek = duży majątek ∈ {mały,średni}

7 dochód ≤ 25 dochód > 25

8 dochód ≤ 50 dochód > 50

9 dochód ≤ 75 dochód > 75

W tab.4.3 zestawiono wartości pośrednie wpływające na wielkość  ሺ / ሻ w

przypadku każdego z podziałów z tab.4.2. Pomocniczo wprowadzono wielkość  ሺ / ሻ =

∑ | ሺ / ሻ − ሺ / ሻ|#௦௬ୀଵ . Czynnik ten jest duży gdy suma odległości pomiędzy ሺ / ሻ 

oraz ሺ / ሻ liczona dla wszystkich (w naszym przypadku dwóch) klas jest odpowiednio

duża. Teoretyczną wartością maksymalną dla ሺ / ሻ jest k , gdzie k  jest liczbą klas (w

naszym przykładzie k =2). Z kolei czynnik  2 jest duży gdy i są duże tzn. liczby

przypadków trafiających do lewego i prawego poddrzewa są w miarę wyrównane.

Teoretyczną wartością maksymalną dla 2 jest 2*0,5*0,5=0,5. W ten sposób kryteriumሺ / ሻ preferuje te podziały w węzłach, które są jednorodne dla wszystkich klas, a tak że

Page 28: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 28/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

28

wyrównane pod względem liczby przypadków zaliczonych do lewego oraz prawego węzła-

potomka.

Tabela 4.3

Podział ሺ / ሻ  ሺ / ሻ    ሺ / ሻ  ሺ / ሻ 

1 0,375 0,625 0,333 0,8 0,46875 0,934 0,4378

0,667 0,2

2 0,375 0,625 1 0,4 0,46875 1,2 0,5625

0 0,6

3 0,25 0,75 0,5 0,667 0,375 0,334 0,1253

0,5 0,333

4 0,25 0,75 0 0,833 0,375 1,667 0,6248

1 0,167

5 0,5 0,5 0,75 0,5 0,5 0,5 0,25

0,25 0,56 0,25 0,75 1 0,5 0,375 1 0,375

0 0,5

7 0,375 0,625 0,333 0,8 0,46875 0,934 0,4378

0,667 0,2

8 0,625 0,375 0,4 1 0,46875 1,2 0,5625

0,6 0

9 0,875 0,125 0,571 1 0,21875 0,858 0,1877

0,429 0

W naszym przykładzie czynnik  2 osiągnął maksymalną teoretyczną wartość dlapodziału 5, natomiast dla ሺ / ሻ maksymalna teoretyczna wartość nie występuje. Jeśli chodzi

o wartość kryterium najlepszego podziału ሺ / ሻ, to wynosi ona 0,6248 i została

zaobserwowana dla podziału 4. Oznacza to, że, według algorytmu CART, taki właśnie

podział zbioru przykładów uczących powinien być dokonany w węźle-korzeniu (rys.4.4).

Lewy fragment budowanego drzewa okazał się liściem, ponieważ oba przypadki, które

trafiły do tego węzła mają duże ryzyko kredytowe. Prawy segment okazuje się bardziej

różnorodny, dlatego wymagany jest dalszy jego podział. W nowej tabeli możliwych

podziałów (tab.4.4) dostępne są wszystkie dotychczasowe podziały z wyjątkiem podziału 4.

Rys. 4.4 Drzewo decyzyjne konstruowane przez CART po pierwszym podziale.

Page 29: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 29/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

29

Lewy fragment budowanego drzewa okazał się liściem, ponieważ oba przypadki, które

trafiły do tego węzła mają duże ryzyko kredytowe. Prawy segment jest bardziej różnorodny

(zawiera przypadki przypisane do różnych klas), dlatego wymagany jest dalszy jego podział.

W nowej tabeli możliwych podziałów w węźle decyzyjnym A (tab.4.4) dostępne są wszystkie

dotychczasowe podziały z wyjątkiem podziału 4. Jak widać, dla dwóch podziałów (3 i 7)

występuje największa wartość  ሺ / ሻ, równa 0,4444. W takim przypadku wybierany jest

arbitralnie jeden z podziałów, np. 3, co prowadzi do struktury drzewa pokazanej na rys. 4,5.

Tabela 4.4

Podział ሺ / ሻ  ሺ / ሻ    ሺ / ሻ  ሺ / ሻ 

1 0,167 0,833 1 0,8 0,2782 0,4 0,1113

0 0,2

2 0,5 0,5 1 0,667 0,5 0,6666 0,3333

0 0,333

3 0,333 0,667 0,5 1 0,4444 1 0,4444

0,5 0

5 0,667 0,333 0,75 1 0,4444 0,5 0,2222

0,25 0

6 0,333 0,667 1 0,75 0,4444 0,5 0,2222

0 0,25

7 0,333 0,667 0,5 1 0,4444 1 0,4444

0,5 0

8 0,5 0,5 0,667 1 0,5 0,6666 0,3333

0,333 0

9 0,833 0,167 0,8 1 0,2782 0,4 0,1113

0,2 0

W węźle decyzyjnym B na rys. 4.5 pozostały dwa przypadki, dla których jedynym

możliwym podziałem jest podział ze względu na atrybut majątek  (du ż  y lub  średni).

Uproszczenie wynika stąd, że wartości atrybutów: oszczędno ści oraz dochód  są dla tych

przypadków jednakowe. Po podziale w węźle B otrzymujemy końcową postać drzewa

pokazaną na rys. 4.6.

Page 30: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 30/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

30

Rys. 4.5 Drzewo decyzyjne po podziale w węźle A.

Rys. 4.6 Drzewo decyzyjne po podziale w węźle B (postać końcowa).

Przedstawiony przykład, w sposób intuicyjny pokazuje działanie algorytmu CART. W

przypadku ogólnym, algorytm ten rekurencyjnie odwiedza istniejące węzły decyzyjne i

stosuje przedstawioną procedurę do ustalenia najlepszych podziałów w tych węzłach.

Page 31: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 31/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

31

5  Metody wykorzystujące uczenie bez nadzoru

5.1  Grupowanie

Grupowanie polega na łączeniu obiektów o podobnych charakterystykach w grupy

nazywane tak że klastrami (clusters). Obiekty w obrębie jednego klastra są do siebie podobne

wg pewnych kryteriów, natomiast obiekty należące do różnych klastrów wg tych samych

kryteriów odpowiednio różnią się między sobą.

Do typowych zastosowań grupowania należą handel oraz marketing, gdzie bardzo

przydatne może okazać się wyodrębnienie charakterystycznych grup klientów. Warto

zaznaczyć, że grupowanie nie tylko stanowi sam cel w sobie znajdując konkretne

zastosowania, ale może być tak że użyte wespół z innymi technikami eksploracji danych np.

do wyodrębniania klas w problemach klasyfikacji.

W odróżnieniu od klasyfikacji za pomocą drzew decyzyjnych, gdzie analiza dotyczyła

obiektów zaliczonych do z góry określonych klas (dane uczące miały etykiety klasy), w

przypadku grupowania żaden przydział klas nie jest z góry znany. Tutaj żadne etykiety w

danych uczących nie występują i to sam proces grupowania ma doprowadzić do

wygenerowania takich etykiet, czyli automatycznego wyodrębnienia grup określanych często

 jako klastry (rys 5.1).

Rys. 5.1 Intuicyjna ilustracja grupowania.

.

Analizowane obiekty poddajemy grupowaniu (klasteryzacji) według następujących zasad: (i)

zmaksymalizować podobieństwo wewnątrz grupy oraz (ii) zminimalizować podobieństwo w

różnych grupach.

Klastry tworzone są zatem tak, że obiekty jednego klastra są „blisko siebie” jeśli

chodzi o wartości ich cech, natomiast obiekty w różnych klastrach powinny być odpowiednio

od siebie oddalone. Inną ważną cechą grupowania jest to, że w odróżnieniu od klasyfikacji,

Page 32: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 32/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

32

gdzie występuje uczenie nadzorowane (z nauczycielem) tutaj mamy do czynienia z uczeniem

nienadzorowanym (bez nauczyciela).

W niektórych zastosowaniach warto rozważyć możliwość wspólnego zastosowania

klasyfikacji i grupowania, które użyte na różnych etapach analizy mogą wzajemnie się 

uzupełniać. W szczególności można najpierw użyć grupowania do wyodrębnienia klastrów i

przypisania do każdego z nich wyróżniającego go atrybutu (etykiety). W kolejnej fazie

analizy zaetykietowane grupy traktuje się jako klasy, a następnie metodą uczenia

nadzorowanego wykorzystuje się zaetykietowane obiekty do budowy modelu klasyfikacji.

Page 33: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 33/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

33

6  Analiza asocjacji

Klasycznym przykładem zastosowania analizy asocjacji jest tzw. analiza koszykowa.

Rozważa się duży zbiór transakcji sklepowych, z których każda składa się z zestawu

artykułów zakupionych przez pewnego klienta i stanowiących zawartość koszyka. Zadaniepolega na uzyskaniu odpowiedzi na pytania takie jak: „które z artykułów pojawiają się w

koszykach z odpowiednio wysok ą częstotliwością?” oraz „czy istnieją zależności pomiędzy

grupami artykułów w tym sensie, że pojawienie się jakiejś grupy artykułów w koszyku

pociąga za sobą pojawienie się innej grupy?”. Kluczowym etapem analizy asocjacji jest

odkrywanie częstych wzorców w zbiorach transakcji.

6.1  Częste wzorce

Odkrywanie odpowiednio często występujących elementów w dużych zbiorach lub

strukturach danych nazywamy eksploracją (dr ąż eniem) częstych wzorców. Przykładem są 

grupy towarów pojawiające się wystarczająco często w analizowanym zbiorze transakcji

sklepowych, jednak pojęcie to jest bardziej uniwersalne i obejmuje m.in.:

1.  Częste zbiory pozycji (np. grupy artykułów w koszyku zakupów);

2.  Częste podsekwencje (np. kolejność dokonywania zakupów);

3.  Częste podstruktury (podgrafy, poddrzewa).

6.2  Reguły asocjacji

Poszukiwanie zależności między grupami wymaga wygenerowania tzw. reguł 

asocjacyjnych. Warto rozpocząć od prostego, intuicyjnego określenia reguły asocjacyjnej,

 jako wyrażenia postaci:

, B A⇒  

gdzie  A i  B stanowią grupy elementów pewnego zbioru. Rozważmy następujący przykład

reguły:

{komputer } => { program}.

Reguła ta mówi, że kupowanie komputera „pociąga za sobą” kupowanie programu. Reguła

taka może być wygenerowana na podstawie analizy dużego zbioru transakcji, a o jej wartości

(stopniu, w jakim okazuje się interesująca) stanowią 2 parametry: wsparcie i  zaufanie.

Przyjmijmy dalej, że wsparcie tej reguły wynosi 1%, a zaufanie 50%. Pierwszy parametr

mówi, że 1% procent wszystkich transakcji analizowanych zawiera oba te artykuły. Parametr

zaufanie określa fakt, że jeśli klient kupuje komputer to istnieje 50%-owa szansa, że kupi

tak że oprogramowanie.

Zwykle podaje się bardziej formalne definicje reguł asocjacyjnych oraz wsparcia izaufania. Niech  I={I1, I2, I3,…,In} oznacza pewien globalny zbiór pozycji (np. artykułów

Page 34: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 34/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

34

oferowanych przez sklep). Rozważmy dalej bazę  D składającą się z transakcji T , gdzie T  

oznacza zbiór pozycji, taki że ⊂ . Z każdą transakcją związany jest jej identyfikator

oznaczony TID. Załóżmy dalej, że  A to zbiór pozycji. Mówimy, że transakcja T zawiera  A 

wtedy i tylko wtedy gdy zbiór  A zawiera się w zbiorze T . Reguła asocjacyjna to wyrażenie

postaci :

, B A⇒  

gdzie  I  A ⊂ ,  I  B ⊂ , ∅. Reguła  B A⇒ pojawia się w zbiorze D transakcji ze wsparciem s,

 jeśli s wyraża procentowy udział tych transakcji, które zawierają jednocześnie zbiory A i B w

stosunku do wszystkich transakcji w zbiorze  D. Jeśli oznaczyć symbolem  B A∪ zbiór

złożony z elementów A oraz elementów B, to można formalnie zapisać, że wsparcie reguły to

prawdopodobieństwo wspólnego pojawienia się w transakcji obu stron reguły, tj.

ሺ ⇒ ሻ = ሺ ⋃ ሻ. 

Reguła  B A⇒  ma zaufanie c w zbiorze transakcji D, jeśli c stanowi procentowy udział

transakcji zawierających B w zbiorze wszystkich transakcji zawierających A, tj.

ሺ ⇒ ሻ = ሺ / ሻ = ሺ ⋃ ሻ/ ሺ ሻ.

Aby spośród wszystkich reguł uzyskanych w wyniku działania algorytmu eksploracji danych

wybrać tylko część, która wydaje się najbardziej interesująca, zadaje się progi minimalnegowsparcia i minimalnego zaufania. Reguły, których wartości wsparcia i zaufania przekraczają 

minimalne progi nazywamy mocnymi. Podstawą analizy asocjacji (powiązań) pomiędzy

kupowanymi artykułami w pewnym zbiorze transakcji jest wygenerowanie reguł

asocjacyjnych, które spełniają warunek minimalnego wsparcia i minimalnego zaufania, co

oznacza, że policzone dla nich wartości wsparcia i zaufania przewyższają zadane minimalne

progi.

 Przykład 6.1

Przyjmijmy, że zbiór  I ={mleko, chleb, ser, masło, jajka} stanowi zbiór pozycji (artykułów),

natomiast zbiór transakcji D jest następujący:

1. {mleko, chleb, ser}

2. {mleko, chleb, masło}

3. {mleko, masło}

4. {mleko, ser}

Zbiór pozycji pojawiających się w transakcji i złożony z k  pozycji nazywać będziemy k -

zbiorem. A zatem w transakcji: T  = {mleko, chleb, masło} podzbiory jednoelementowe:

{mleko} {chleb} oraz {masło} to 1-zbiory, podzbiory dwuelementowe {mleko, chleb},

{mleko, masło} oraz {chleb, masło} to 2-zbiory a zbiór {mleko, chleb, masło} to 3-zbiór.

Page 35: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 35/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

35

Wśród wszystkich transakcji z naszego przykładu można wyodrębnić następujące

podzbiory pozycji:

1-zbiory:

{mleko), wsparcie = 100%

{chleb}, wsparcie = 50%{ser}, wsparcie = 50%

{masło}, wsparcie = 50%

2-zbiory:

{mleko, chleb}, wsparcie = 50%

{mleko, ser}, wsparcie = 50%

{chleb, ser}, wsparcie = 25%

{mleko, masło}, wsparcie = 50%

{chleb, masło}, wsparcie = 25%

3-zbiory:

{mleko, chleb, ser}, wsparcie = 25%{mleko, chleb, masło}, wsparcie = 25%.

Zgodnie z definicją zbiorem częstym nazywamy zbiór, który ma wsparcie większe niż zadany

próg minimalnego wsparcia. Jeśli przyjąć minimalne wsparcie = 60%, to jedynym częstym

zbiorem pozycji w całej bazie D jest {mleko}. Przy obniżeniu progu minimalnego wsparcia

do 30% zbiorami częstymi są:

1-zbiory: {mleko}, {chleb}, {ser}, {masło}

2-zbiory: {mleko, chleb}, {mleko, ser}, {mleko, masło}.

Rozważymy jeszcze następujące dwie reguły asocjacji otrzymane na podstawie częstego

zbioru {mleko, chleb}:

{mleko} => {chleb} [wsparcie = 50%, zaufanie = 50%]

{chleb} => {mleko} [wsparcie = 50% , zaufanie = 100%].

Jeśli przyjąć minimalny próg wsparcia 30% oraz minimalny próg zaufania 60%, tylko ostatnia

z tych reguł jest regułą mocną.

W praktyce generowanie reguł asocjacyjnych jest procesem dwuetapowym. Pierwszy

etap stanowi generowanie częstych zbiorów. Zgodnie z definicją każdy z tych zbiorów

pozycji ma pojawić się z częstotliwością przewyższającą wcześniej ustalony próg

minimalnego wsparcia. Zadaniem drugiego etapu jest otrzymanie reguł asocjacyjnych napodstawie częstych zbiorów. Wygenerowane reguły muszą spełniać warunek minimalnego

wsparcia i minimalnego zaufania.

6.3  Odkrywanie częstych zbiorów

Przykładem klasycznej procedury odkrywania częstych zbiorów jest algorytm  Apriori.

Nazwa algorytmu podkreśla istotę zastosowanej metody, która wykorzystuje wstępną 

(a’priori) wiedzę o właściwościach częstych zbiorów pozycji. W szczególności wykorzystuje

się tzw. własno ść Apriori, która głosi, że wszystkie niepuste podzbiory częstych zbiorów

Page 36: OWD Lato1213

7/28/2019 OWD Lato1213

http://slidepdf.com/reader/full/owd-lato1213 36/36

Politechnika Rzeszowska - Katedra Informatyki i Automatyki

 pozycji są tak  ż e częste. Własność ta należy do klasy tzw. własności antymonotonicznych, w

tym sensie, że jeżeli określony zbiór nie spełnia pewnego testu, wówczas tak że wszystkie jego

nadzbiory nie spełniają tego testu.

W algorytmie wykorzystującym własność Apriori zastosowano iteracyjną strategię 

przeszukiwania wszerz, przy czym k -zbiory pozycji są wykorzystywane do analizy (k+1)-

zbiorów. Procedura rozpoczyna się od przeglądania bazy transakcji celem wyodrębnienia

wszystkich 1-zbiorów, których wsparcie przewyższa zadany, minimalny próg. Wynik jest

zapisywany w zbiorze ଵ. Następnie, wykorzystując ଵ generowany jest zbiór wszystkich

częstych 2-zbiorów ଶ, który zostaje z kolei użyty do otrzymania ଷ itd. Procedura taka

powtarza się, aż do powstania sytuacji, w której nie można otrzymać więcej częstych

zbiorów. Warto zwrócić uwagę, że otrzymanie każdego wymaga pełnego skanowania

bazy. Własność Apriori jest wykorzystywana w algorytmie na etapie otrzymywania na

podstawie ିଵ dla ≥ 2 . Proces ten jest dwuetapowy i obejmuje ł ączenie oraz przycinanie 

zbiorów.

W fazie łączenia celem otrzymania generowany jest zbiór kandydujących k -zbiorów

pozycji, przy pomocy specjalnego połączenia zbioru ିଵ z samym sobą. Powstały zbiór

kandydatów oznaczmy jako . Niech ponadto ଵ i ଶ oznaczają zbiory pozycji z ିଵ, a ሾ ሿ 

oznacza j-tą pozycję w (np. ଵሾ − 2ሿ oznacza przedostatnią pozycję w ଵ). Przyjmuje się 

dalej, że pozycje wewnątrz transakcji są uporządkowane w porządku leksykograficznym. Dla

(k -1)-zbioru pozycji oznacza to, że pozycje zostały uporządkowane tak, że ሾ1ሿ <

ሾ2ሿ < ⋯ < ሾ − 1ሿ. Połączenie ିଵ ⋈ ିଵ następuje dla tych zbiorów pozycji w ିଵ,dla których (k -2) pierwsze pozycje są takie same. Oznacza to, że elementy ଵ i ଶ zbioru ିଵ 

są łączone jeśli ሺ ଵሾ1ሿ = ଶሾ1ሿሻ ∧ ሺ ଵሾ2ሿ = ଶሾ2ሿሻ ∧ … ∧ ሺ ଵሾ − 2ሿ = ଶሾ − 2ሿሻ ∧

ሺ ଵሾ − 1ሿ < ଶሾ − 1ሿሻ. Warunek  ଵሾ − 1ሿ < ଶሾ − 1ሿ ma uchronić przed generowaniem

duplikatów. Wynikiem połączenia ଵ i ଶ jest zbiór złożony z k pozycji ଵሾ1ሿ  ଵሾ2ሿ … ଵሾ −

1 2 −1  .

W fazie przycinania otrzymywany jest zbiór będący podzbiorem . Oznacza to, że

nie wszystkie zbiory kandydujące wchodzące w skład otrzymane w fazie łączenia są 

częste, ale zbiór ten zawiera wszystkie częste k -zbiory. Wyznaczenie zbioru następuje

poprzez skanowanie bazy transakcji celem ustalenia liczby wystąpień każdego z kandydatów.

Jednak zbiór może mieć na tyle duży rozmiar, że operacja skanowania bazy spowoduje

znaczący spadek efektywności algorytmu. Redukcja wielkości zbioru jest możliwa, jeśli

zastosować własność Apriori, zgodnie z którą każdy ሺ − 1ሻ-zbiór pozycji, który nie jest

częsty nie może być podzbiorem częstego –zbioru. Zatem jeśli pewien ሺ − 1ሻ-podzbiór

kandydującego -zbioru nie jest częsty (nie należy do ିଵ), to ten zbiór kandydujący nie

może być częsty i można go usunąć z .