Metody redukcji danych

Transkrypt

Metody redukcji danych
Algorytmy redukcji danych w uczeniu
maszynowym i eksploracji danych
Dr inŜ. Ireneusz Czarnowski
Akademia Morska w Gdyni
Plan seminarium
Wprowadzenie
Redukcja danych
Zintegrowany model uczenia maszynowego
Algorytm redukcji danych oparty na agentach programowych
Idea algorytmu
ZałoŜenia implementacyjne
Wyniki eksperymentów obliczeniowych
Odkrywanie wiedzy w rozproszonych zasobach informacyjnych
Architektura proponowanego systemu
Wyniki eksperymentów obliczeniowych
Zakończenie
2
Wprowadzenie
Uczenie maszynowe
Uczenie maszynowe
To konstruowanie programów komputerowych, które uczą się rozwiązywania zadania na
podstawie doświadczenia (przykładów, instancji, informacji trenującej)
Uogólnienie pozyskanego doświadczenia na przypadki nie występujące w informacji trenującej
jest szczególnym zagadnieniem uczenia maszynowego
Uczenie się systemu
Autonomiczna zmiana zachodząca w systemie na podstawie doświadczenia (informacji
trenującej) prowadząca do poprawy jego działania
Zadaniem systemu uczącego się z przykładów jest uczenie się pojęć, czyli sposobu
klasyfikowania obiektów. Ten rodzaj uczenia nazywany jest równieŜ uczeniem pod nadzorem.
Uczenie się z przykładów (ang. learning from examples) jest jedną ze strategii
uczenia maszynowego – paradygmat uczenia się z indukcji
3
Wprowadzenie
Uczenie się z przykładów i klasyfikacja
W wyniku uczenia się z przykładów system uczący generuje hipotezę h∈H, która
nazywana jest klasyfikatorem
Algorytm uczenia maszynowego L generujący klasyfikator na podstawie zbioru
przykładów D nazywany jest algorytmem indukcji
Celem uczenia się z przykładów jest przygotowanie algorytmu indukcji generującego
hipotezę, h=L(D), która będzie optymalna z punktu widzenia przyjętego kryterium oceny
h = arg max f (h = L( D ))
h∈H
Klasyfikatory, jako metody algorytmiczne, wykorzystywane są do podejmowanie decyzji
o przynaleŜności obiektu do jednej z klas decyzyjnych – podstawowy cel w problemie
klasyfikacji obiektów
h : D → {∅, C1 ,...C k }
4
Wprowadzenie
Schemat indukcji klasyfikatora
D
indukcja
klasyfikatora
klasyfikator
Testowanie
Modyfikacja parametrów algorytmu
Strojenie algorytmu
Optymalizacja parametrów algorytmu
stop
Np.: dobór współczynników wagowych sieci neuronowej,
dobór parametrów drzewa decyzyjnego, weryfikacja
czynników mających wpływ na jakość działania algorytmu
5
Wprowadzenie
Zastosowania metod uczenia maszynowego (1)
Odkrywanie wiedzy z danych (ang. : Knowledge Discovery in Databases, KDD)
i jego techniki zgłębiania danych
KDD to proces wielofazowy obejmujący między innymi przygotowanie i
przetworzenie danych oraz eksplorację danych
D
Przetwarzanie
danych
Dane
przetworzone
indukcja
klasyfikatora
klasyfikator
Schemat indukcji klasyfikatora w KDD
6
Testowanie
stop
Wprowadzenie
Zastosowania metod uczenia maszynowego (2)
Odkrywanie wiedzy w rozproszonych zasobach informacyjnych (ang.:
Knowledge Discovery in Distributed Databases, KDDD)
7
Celem uczenia się z przykładów jest przygotowanie algorytmu indukcji generującego
hipotezę, h=L(D), gdzie D=D1,…,DK, która będzie optymalna z punktu widzenia
przyjętego kryterium oceny
Wprowadzenie
Ograniczenia metod uczenia maszynowego
Brak zdolności do modyfikowania przestrzeni danych
Brak wpływu na postać, reprezentację i jakość wykorzystywanych danych
Niezadowalająca efektywność metod uczenia maszynowego
Ograniczenia wynikające z przetwarzania duŜych zbiorów danych
Naturalne rozproszenie danych
8
Wprowadzenie
Zwiększanie efektywności metod uczenia maszynowego
Redukcja danych
Zintegrowane uczenie – integracja fazy przetwarzania danych z fazą uczenia
(indukcji klasyfikatora)
9
Redukcja danych
Wprowadzenie
Celem redukcji danych jest identyfikacja i eliminacja nieistotnych i
nadmiarowych informacji w zbiorze danych i pozostawienie w nim
wektorów referencyjnych zwanych teŜ prototypami
Optymalnym zbiorem prototypów S nazywamy taki podzbiór zbioru D, w którym
obiekty są opisane na zbiorze atrybutów A’⊂A i dla którego algorytm indukcji L
będzie osiągał ekstremum przyjętej funkcji kryterialnej
Redukcja danych moŜe przyczynić się do
10
Zwiększenia efektywności uczenia
Zmniejszenia czasu uczenia
Wyeliminowania szumów i błędów ze zbioru uczącego
Zmniejszenia wymagań co do zasobów obliczeniowych
Zmniejszenie złoŜoności struktury reprezentacji wiedzy o rozwaŜanym problemie
Wskazanie kompromisu pomiędzy poziomem kompresji danych uczących a
wartością przyjętej funkcji oceny klasyfikatora
Redukcja danych
Metody redukcji danych
Redukcja atrybutów
Metody dokładne
Metody typu „filter”
Metody typu „wrapper”
Heurystyczne metody oceny podzbiorów atrybutów
Redukcja przykładów
I.
II. 11
„Incremental search”
„Decremental search”
Metody przeszukiwania wsadowego
„Sampling techniques”
„Similarity based methods”
Metody oparte na grupowaniu
Heurystyki, metaheurystyki, przeszukiwanie ewolucyjne
Algorytm grupowania danych oparty na podobieństwie
Niech N jest liczbą przykładów w zbiorze D, n - jest liczbą atrybutów, N – jest liczbą przykładów w
zbiorze D, X={xij} (gdzie i=1,...,N, j=1,...,n+1) jest macierzą o n+1 kolumnach i N wierszach
zawierającą wszystkie przykłady z D (n+1 element tablicy jest wartością atrybutu decyzyjnego
przypisanego do danego przykładu).
Krok 1: Normalizacja wartości xij⊂X (i=1,...,N; j=1,...,n) do przedziału [0,1] oraz zaokrąglenie xij
do najbliższej wartości całkowitej.
Krok 2: Obliczenie wartości
N
sj =
∑ x , j = 1,..., n
ij
i =1
Krok 3: Dla przykładów z X, należących do klasy decyzyjnej cl (l=1,…,k), obliczenie wartości
współczynnika podobieństwa Ii:
∀ x:xi ,n+1 = cl I i =
n+1
∑ x s , gdzie i = 1,..., N
ij
j
j =1
Krok 4: Grupowanie przykładów z X opisanymi identycznymi wartościami współczynnika w
grupy.
t
Krok 5: Niech Y1,…,Yt będą otrzymanymi grupami przykładów takimi, że D =
Yi
i =1
oraz ∀ i ≠ j :i , j =1,...,t Yi ∩ Y j = ∅
U
Zakłada się utworzenie zredukowanego zbioru danych S przez wybór wektorów referencyjnych z
Yi zgodnie z następującymi regułami:
Jeżeli |Yi|=1 to S=S∪Yi
Jeżeli
12 |Yi|>1 to S=S∪{xi}, gdzie xi jest wybranym/wskazanym wektorem referencyjnym z Yi.
Redukcja danych
Redukcja danych w przestrzeni atrybutów i przestrzeni przykładów
Typowy proces redukcji danych
Metody redukcji danych w obu wymiarach
Sekwencyjne wykonywanie redukcji dla kaŜdej przestrzeni
Integracja metod selekcji wektorów oraz selekcji atrybutów
Metody ewolucyjne
Sparametryzowanie przestrzeni aproksymacyjnej
Przestrzeń aproksymacyjna wyznacza sposób opisu pojęcia w przestrzeni D. Definicja
przestrzeni aproksymacyjnej moŜe wskazywać, które obiekty uznajemy za waŜne a
które za mniej waŜne
Uwzględniając sparametryzowanie przestrzeni aproksymacyjne problem uczenia się z
przykładów moŜemy zapisać następująco
h = arg max f (h = L( D, g ))
h∈H , g∈G
13
Zintegrowany model uczenia maszynowego
D
wstępne
obróbka danych
przetwarzanie
danych
indukcja
klasyfikatora
klasyfikator
Adaptacja przez zmianę opisu
- selekcja atrybutów
- wyszukiwanie nowych cech
- poszerzanie lub kompresja zbioru danych
- eliminacja informacji redundantnej i nieistotnej
- selekcja prototypów
Testowanie
stop
Warianty modeli uczenia zintegrowanego
Zintegrowanie fazy selekcji przykładów z fazą uczenia
Zintegrowanie fazy selekcji atrybutów z fazą uczenia
Zintegrowanie selekcji przykładów i selekcji atrybutów z fazą uczenia
14
Zwiększanie efektywności metod uczenia maszynowego
Redukcja danych
Agentowy algorytm uczenia populacji
oparty na architekturze A-Team
lub
15
Zintegrowane uczenie
Agentowy algorytm redukcji danych
oparty na agentach programowych
Algorytm redukcji danych oparty na agentach programowych
A-Team dla proponowanego algorytmu
Architektura A-Team:
Wspólna, współdzielona
pamięć
Agent nadzorujący
Agent
optymalizacyjny
Agent
optymalizacyjny
Agent
optymalizacyjny
Agent
optymalizacyjny
Agent
optymalizacyjny
16
Algorytm redukcji danych oparty na agentach programowych
Podstawowe załoŜenia algorytmu
Agenty programowe kooperują i współdzielą pamięć celem rozwiązania
problemu optymalizacyjnego
Populacja potencjalnych rozwiązań problemu zapisana jest we wspólnej,
współdzielonej pamięci
Rozwiązania w trakcie obliczeń są optymalizowane przez niezaleŜnych
agentów
Agenty poprawiają rozwiązania, które odczytywane są z pamięci wspólnej
KaŜdy agent jest implementacją algorytmu poprawy
Funkcjonalność algorytmu jest realizowana przez dwa typy agentów:
Agent optymalizacyjny – ang. optimizing agent
Agent nadzorujący – ang. solution manager
Najlepsze rozwiązanie w populacji traktowane jest jako rozwiązanie
problemu
17
Algorytm redukcji danych oparty na agentach programowych
Środowisko agentów programowych proponowanego algorytmu
18
Algorytm redukcji danych oparty na agentach programowych
ZałoŜenia algorytmu
Rozwiązaniem problemu jest wektor składający się z numerów przykładów
wybranych z oryginalnego zbioru danych oraz z numerów atrybutów wybranych z
oryginalnego zbioru atrybutów
Populacja początkowa tworzona jest w sposób losowy
Przykłady wybierane są z klastrów (grup)
Podział przykładów na grupy odbywa się w oparciu o wybrany algorytm grupowania
Prototypy wybierane są z grup w procesie ewolucyjnego przeszukiwania
Atrybuty są wybierane w procesie ewolucyjnego przeszukiwania
Rozwiązania są oceniane w oparciu o jakość klasyfikacji klasyfikatora (hipotezy)
utworzonego przy uŜyciu zredukowanego zbioru danych
Do poprawy rozwiązania z populacji wybierane są losowo
Poprawione rozwiązanie zastępuje rozwiązanie najgorsze w bieŜącej populacji
19
Algorytm redukcji danych oparty na agentach programowych
Algorytm poprawy
Rozwiązania poprawiane są w oparciu o trzy rodzaje zaimplementowanych
procedur poprawy
1.
2.
3.
20
a) Procedura lokalnego przeszukiwania z pamięcią ruchów zabronionych dla przestrzeni
przykładów
b) Procedura prostego lokalnego przeszukiwania dla przestrzeni przykładów
Procedura lokalnego przeszukiwania z pamięcią ruchów zabronionych dla przestrzeni
atrybutów
Procedura lokalnego przeszukiwania dla przestrzeni przykładów i atrybutów
Eksperyment obliczeniowy (1)
Cel eksperymentu
Celem eksperymentu obliczeniowego była ocena efektywności
proponowanego agentowego algorytmu uczenia populacji przeznaczonego
do redukcji danych w oparciu o model uczenia zintegrowanego
Dane benchmarkowe
Cleveland heart disease (303 obiektów, 13 atrybutów, 2 klasy)
Credit approval (690, 15, 2)
Wisconsin breast cancer (699, 9, 2)
Sonar (208, 60,2)
Test 10 krotnej walidacji skrośnej
21
Eksperyment obliczeniowy (1)
Wyniki eksperymentu (1)
A – oryginalny, niezredukowany zbiór danych
B – selekcja atrybutów na etapie wstępnego przetwarzania danych
C – model uczenia zintegrowanego - selekcja przykładów zintegrowana z fazą uczenia
D – model uczenia zintegrowanego (selekcja przykładów zintegrowana z fazą uczenia) z
selekcji atrybutów na etapie wstępnego przetwarzania danych
E – model uczenia zintegrowanego (selekcja atrybutów zintegrowana z fazą uczenia) z
selekcji przykładów na etapie wstępnego przetwarzania danych
F – model pełnego uczenia zintegrowanego
22
Eksperyment obliczeniowy (1)
Wyniki eksperymentu (2)
Porównanie wybranych klasyfikatorów oraz wybranych metod redukcji danych
cancer
Algorytm
heart
credit
sonar
Accur.
|S|/|D|
Accur.
|S|/|D|
Accur.
|S|/|D|
Accur.
|S|/|D|
Proposed approach
98.1%
20%
93.0%
60%
92.6%
30%
88.8%
90%
K-NN [18]
96.28%
100%
81.19%
100%
84.78%
100%
58.8% [14]
100%
CNN [18]
95.71%
7.09%
73.95%
30.84%
77.68%
24.22%
74.12%
32.85%
SNN [18]
93.85%
8.35%
76.25%
33.88%
81.31%
28.38%
79.81%
28.26%
IB2 [18]
95.71%
7.09%
73.96%
30.29%
78.26%
24.15%
80.88%
33.87%
IB3 [18]
96.57%
3.47%
81.16%
11.11%
85.22%
4.78%
69.38%
12.02%
DROP3 [18]
96.14%
3.58%
80.84%
12.76%
83.91%
5.96%
78%
26.87%
RMHC [15]
70.9%
7%
82.3%
3%
-
-
-
-
GA-KJ [14]
95.5%
33.4%
74.7%
33.1%
-
-
55.3
52.6
1NN+RELIEF [13]
72.12%
100%
77.85%
100%
79.57%
100%
-
-
IB3+RELIEF [13]
73.25%
100%
79.94%
100%
71.75%
100%
-
-
ID3+FSS [9]
94.53%
100%
-
-
-
-
-
-
ID3 [5]
94.3%
100%
C4.5+BFS [5]
95.28%
100%
-
-
-
-
-
-
C4.5 [7]
94,7%
100%
77.8%
100%
85.5%
100%
76.9%
100%
23
Eksperyment obliczeniowy (1)
Wyniki eksperymentu - wnioski
Redukcja danych moŜe przyczynić się do zwiększenie efektywności
algorytmów indukcji
Zredukowany zbiór danych zachowuje cechy analizowanych danych
Model uczenia zintegrowanego gwarantuje lepsze rezultaty niŜ model
uczenia oparty na podejściu dwuetapowym (brak integracji)
Wybór modelu uczenia ma wpływ na jakość klasyfikacji
Wybór algorytmu uczenia maszynowego nie jest decydującym czynnikiem z
punktu widzenia efektywności zintegrowanego systemu klasyfikującego
Algorytm redukcji danych oparty na agentach programowych jest
konkurencyjny w stosunku do innych algorytmów redukcji danych
24
Eksperyment obliczeniowy (2)
Cel eksperymentu
Celem eksperymentu obliczeniowego była ocena wpływu doboru algorytmu
grupowania na efektywności agentowego algorytmu selekcji prototypów
Porównywane algorytmy grupowania
Algorytm grupowania oparty na podobieństwie
Algorytm warstwowania (ang. stratification-based clustering algorithm)
Zmodyfikowany algorytm warstwowania
Algorytm k-means
Dane benchmarkowe
Cleveland heart disease (303 obiektów, 13 atrybutów, 2 klasy)
Sonar (208, 60,2)
Credit approval (690, 15, 2)
Wisconsin breast cancer (699, 9, 2)
Customer (24000, 36, 2)
Adult (30162, 14,2)
25
Średnia jakość klasyfikacji klasyfikatora opartego na
wybranym algorytmie redukcji danych
%
100
Eksperyment obliczeniowy (2)
90
Wyniki eksperymentu
80
heart
sonar
70
60
SC - algorytm grupowania oparty na
podobieństwie
50
dane oryg.
SC
SS
MSS
kCA
SS - algorytm warstwowania
Średnia jakość klasyfikacji klasyfikatora opartego na
wybranym algorytmie redukcji danych
%
100
kCA - algorytm k-means
90
80
credit
cancer
70
60
50
dane oryg.
SC
SS
MSS
kCA
Średnia jakość klasyfikacji klasyfikatora opartego na
wybranym algorytmie redukcji danych
%
100
90
80
customer
adult
70
60
50
MSS - zmodyfikowany algorytm warstwowania
26
dane oryg.
SC
SS
MSS
kCA
Eksperyment obliczeniowy (2)
Wyniki eksperymentu - wnioski
Wybór metody grupowania w algorytmie selekcji prototypów opartym na
grupowaniu jest waŜnym czynnikiem mającym wpływ na jakość klasyfikatora
Selekcja prototypów bazująca na grupowaniu opartym na podobieństwie
jest gwarantem uzyskania wysokiej jakości klasyfikacji
Algorytm selekcji prototypów bazujący na grupowaniu opartym na
podobieństwie jest algorytmem konkurencyjnym w stosunku do innych
algorytmów redukcji danych
27
Odkrywanie wiedzy w rozproszonych zasobach informacyjnych
Typowe podejścia do KDDD
Typowe podejścia do KDDD
Migracja danych z rozproszonych repozytoriów
Dwuetapowe podejście
Lokalne przetwarzanie danych
Agregacja wyników lokalnego przetwarzania na poziomie globalnym
Techniki meta-uczenia (ang. meta-learning)
Migracja na poziom globalny danych istotnych (ang. relevant data),
prototypów, wektorów referencyjnych
28
Odkrywanie wiedzy w rozproszonych zasobach informacyjnych
Architektura dwupoziomowego przetwarzania dla KDDD
29
Odkrywanie wiedzy w rozproszonych zasobach informacyjnych
Agenty w rozproszonym systemie klasyfikującym
30
Eksperyment obliczeniowy (3)
Cel eksperymentu
Celem eksperymentu obliczeniowego była ocena efektywności agentowego
algorytmu uczenia populacji dedykowanego KDDD przy załoŜeniu
dwupoziomowego przetwarzania opartego na redukcji danych przez selekcję
prototypów
Porównywane podejścia KDDD
Selekcja prototypów na poziomie lokalnym z uŜyciem algorytmów CNN, ENN
Selekcja prototypów na poziomie lokalnym z uŜyciem algorytmów grupowania
Dane benchmarkowe
Customer (24000 obiektów, 36 atrybutów, 2 klasy)
Adult (30162, 14,2)
Waveform (30000, 21, 2)
Shuttle (58000, 9, 7)
Test 10 krotnej walidacji skrośnej oraz podział zbioru uczącego na niezaleŜne
zbiory danych (rozproszone repozytoria)
31
Eksperyment obliczeniowy (3)
Wyniki eksperymentu
Średnia jakość klasyfikacji dla wybranych modeli uczenia w KDDD
Customer
Adult
Waveform
Shuttle
Full
dataset
73,21
82,43
71,01
99,90
SC
72,18
86,83
78,03
99,95
SS
66,18
82,21
73,87
99,68
kCA
71,86
86,43
76,87
99,95
CNN
57,08
70,36
64,36
97,17
Full dataset – migracja danych z poziomu lokalnego na poziom globalny
SC - algorytm grupowania oparty na podobieństwie
SS - algorytm warstwowania
kCA - algorytm k-means
CNN – selekcja przykładów oparta na algorytmie CNN
ENN – selekcja przykładów oparta na algorytmie CNN
Meta-learning – agregacja klasyfikatorów poziomu lokalnego
32
ENN
Meta-learning
67,58
72,57
79,99
82,39
70,55
71,11
99,87
99,68
Eksperyment obliczeniowy (3)
Wyniki eksperymentu - wnioski
Rodzaj algorytmu redukcji danych ma wpływ na jakość klasyfikacji w KDDD
Algorytm redukcji danych oparty na podobieństwie jest konkurencyjny w
stosunku do innych algorytmów redukcji danych w zastosowaniu do
KDDD
Proponowane agentowe podejście do klasyfikacji w środowisku
rozproszonym oparte na redukcji danych okazało się konkurencyjnym w
stosunku do standardowych podejść tj. związanych z migracją danych z
niezaleŜnych repozytoriów na poziom globalny oraz obejmujących tzw.
meta-uczenie
Zaproponowany agentowe algorytmy uczenia populacji poszerzają rodzinę
algorytmów redukcji danych i jest efektywną i uŜyteczną alternatywą dla
problemów uczenia w KDDD
33
Inne uzyskane wyniki badań
Analiza efektywności algorytmów redukcji danych opartych na grupowaniu
Implementacja i analiza agentowego algorytmu uczenia populacji do
rozwiązania problemu wielokryterialnej redukcji danych
Zaproponowanie i ewaluacja strategii selekcji prototypów w rozproszonych
zasobach informacyjnych z uwzględnieniem homogenicznych i
heterogenicznych zredukowanych zbiorów danych
Implementacja procedur poprawy, opartych na przeszukiwaniu z ruchami
zabronionymi oraz symulowanym wyŜarzaniu, przeznaczonych do redukcji
danych
Analiza wpływu doboru parametrów w agentowym algorytmie uczenia
populacji na jakość rozwiązań
34
Bibliografia
Czarnowski I. (2011) Distributed Learning with Data Reduction. In: Nguyen N.T. (ed.),
Transactions on CCI IV, LNCS 6660, Springer, pp.3-121
Czarnowski I., Jędrzejowicz P. (2010) An Approach to Data Reduction and Integrated Machine
Classification. New Generation Computing 28(1) 21-40 (JCR 2009 impact factor: 0.364)
Czarnowski I. (2011) Cluster-based Instance Selection for Machine Classification. Knowledge and
Information Systems. (in print, on-line first), doi:10.1007/s10115-010-0375-z (JCR 2009 impact
factor: 2.211)
Czarnowski I., Jędrzejowicz P. (2011) An Agent-based Framework for Distributed Learning.
Engineering Applications of Artificial Intelligence 24, 93-102 (JCR 2009 impact factor: 1.444)
Czarnowski I., Jędrzejowicz P. (2011) Application of Agent-based Simulated Annealing and Tabu
Search Procedures to Solving the Data Reduction Problem. International Journal of Applied
Mathematics and Computer Science - AMCS, 21(1), 57-68 (JCR 2009 impact factor: 0.684)
Czarnowski I. (2010) Prototype Selection Algorithms for Distributed Learning. Pattern
Recognition 43(6) 2292-2300 (JCR 2009 impact factor: 2.554)
Czarnowski I., Jędrzejowicz P. (2007) An Agent-based Approach to the Multiple-objective Selection
of Reference Vectors. In: Perner P. (Ed.): Proceedings of the 5th International Conference on
Machine Learning and Data Mining in Pattern Recognition MLDM'2007, LNAI 4571, Springer,
pp.548-562
35

Podobne dokumenty