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 h H f ( h = L( D)) 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 {, C,... C } 1 k 4
Wprowadzenie Schemat indukcji klasyfikatora D indukcja klasyfikatora klasyfikator Modyfikacja parametrów algorytmu Strojenie algorytmu Optymalizacja parametrów algorytmu 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 Testowanie stop 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 Testowanie 6 stop
Wprowadzenie Zastosowania metod uczenia maszynowego (2) Odkrywanie wiedzy w rozproszonych zasobach informacyjnych (ang.: Knowledge Discovery in Distributed Databases, KDDD) Celem uczenia się z przykładów jest przygotowanie algorytmu indukcji generującego hipotezę, h=l(d), gdzie D=D 1,,D K, która będzie optymalna z punktu widzenia przyjętego kryterium oceny 7
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 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 10
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. Incremental search Decremental search Metody przeszukiwania wsadowego II. Sampling techniques Similarity based methods Metody oparte na grupowaniu Heurystyki, metaheurystyki, przeszukiwanie ewolucyjne 11
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={x ij } (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 x ij X (i=1,...,n; j=1,...,n) do przedziału [0,1] oraz zaokrąglenie x ij do najbliższej wartości całkowitej. Krok 2: Obliczenie wartości s j = N = i 1 x ij, j = 1,..., n Krok 3: Dla przykładów z X, należących do klasy decyzyjnej c l (l=1,,k), obliczenie wartości współczynnika podobieństwa I i : n + 1 x x i + = =, =, 1 c l I i x n ijs j gdzie i j= 1 1,..., N : Krok 4: Grupowanie przykładów z X opisanymi identycznymi wartościami współczynnika w grupy. Krok 5: Niech Y 1,,Y t będą otrzymanymi grupami przykładów takimi, że D = U t Y i i=1 oraz i j : i, j= 1,..., t Y i Y j = Zakłada się utworzenie zredukowanego zbioru danych S przez wybór wektorów referencyjnych z Y i zgodnie z następującymi regułami: Jeżeli Y i =1 to S=S Y i Jeżeli 12 Y i >1 to S=S {x i }, gdzie x i jest wybranym/wskazanym wektorem referencyjnym z Y i.
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 13 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 h H, g G f ( h = L( D, g))
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 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 Testowanie stop
Zwiększanie efektywności metod uczenia maszynowego Redukcja danych Zintegrowane uczenie lub Agentowy algorytm uczenia populacji oparty na architekturze A-Team Agentowy algorytm redukcji danych oparty na agentach programowych 15
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. 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 2. Procedura lokalnego przeszukiwania z pamięcią ruchów zabronionych dla przestrzeni atrybutów 3. Procedura lokalnego przeszukiwania dla przestrzeni przykładów i atrybutów 20
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 Algorytm cancer 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
% 100 90 80 70 Średnia jakość klasyfikacji klasyfikatora opartego na wybranym algorytmie redukcji danych heart sonar Eksperyment obliczeniowy (2) Wyniki eksperymentu 60 50 dane oryg. SC SS MSS kca % Średnia jakość klasyfikacji klasyfikatora opartego na 100 wybranym algorytmie redukcji danych 90 SC - algorytm grupowania oparty na podobieństwie SS - algorytm warstwowania MSS - zmodyfikowany algorytm warstwowania kca - algorytm k-means 80 70 credit cancer 60 50 % 100 dane oryg. SC SS MSS kca Średnia jakość klasyfikacji klasyfikatora opartego na wybranym algorytmie redukcji danych 90 80 70 customer adult 60 50 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 Full dataset SC SS kca CNN ENN Meta-learning Customer 73,21 72,18 66,18 71,86 57,08 67,58 72,57 Adult 82,43 86,83 82,21 86,43 70,36 79,99 82,39 Waveform 71,01 78,03 73,87 76,87 64,36 70,55 71,11 Shuttle 99,90 99,95 99,68 99,95 97,17 99,87 99,68 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
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