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