1 / 23

Algorytm kaskadowej korelacji

Algorytm kaskadowej korelacji. Marta Wilczak. O czym mowa. Nowa architektura, a zarazem algorytm uczenia z nadzorem dla sieci neuronowych Stworzona przez Scott’a E. Fahlman’a

tyson
Download Presentation

Algorytm kaskadowej korelacji

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Algorytm kaskadowej korelacji Marta Wilczak

  2. O czym mowa. • Nowa architektura, a zarazem algorytm uczenia z nadzorem dla sieci neuronowych • Stworzona przez Scott’a E. Fahlman’a • Zamiast dostosowywać wagi w sieciach o ustalonej topologii, zaczyna z minimalną siecią, dodaje ukryte neurony jeden po drugim • Przewaga nad innymi algorytmami: • szybko się uczy • sieć sama ustala swój rozmiar i topologię • nie wymaga wstecznej propagacji sygnałów błędów (back-propagation)

  3. Dlaczego powstał. • W celu rozwiązania pewnych problemów i ograniczeń, które występują w popularnym backprop’ie • „wolny krok” z jakim backprop uczy się z próbek • nawet przy prostych problemach (benchmark), może wymagać wielu tysięcy epok, aby wyuczyć się poządanego zachowania. • Step-size problem • Moving target problem

  4. Problemy spowolniające backprop – STEP-SIZE • Co to jest i dlaczego występuje: • Backprop oblicza dla każdej wagi, jedynie pierwszą częściową pochodną całej funkcji błędu • Mając te pochodne, możemy wykonywać zejście według gradientu w przestrzeni wag, zmniejszając błąd z każdym krokiem • Można łatwo dowieść, że biorąc maleńkie kroczki, w końcu dojdziemy do lokalnego minimum funkcji błędu

  5. Problemy spowolniające backprop – STEP-SIZE • Aby szybko uczyć sieć, nie chcemy brać malutkich kroczków, tylko największe jakie możemy • Niestety, jeśli weźmiemy za duży krok, sieć może nie zbiec się do dobrego rozwiązania • Żeby wybrać rozsądny krok, musimy znać nie tylko nachylenie funkcji błędu, ale również jej krzywiznę w pobliżu bierzącego punktu w przestrzeni wag • Takich informacji mogą dostarczyć pochodne wyższych rzędów • Takie informacje nie są dostępne w standardowym backprop’ie

  6. Problemy spowolniające backprop – STEP-SIZE • Algorytm Fahlman’a, quickprop, jest jednym z proponowanych i odnoszących duże sukcesy sposobem w radzeniu sobie z problemem STEP-SIZE • Jak działa quickprop: • oblicza pochodne jak backprop • zamiast prostego (gradient descent), korzysta z metody Newtona przy aktualizacji wag.

  7. Problemy spowolniające backprop – MOVING TARGET • Co to jest i kiedy występuje: • każdy neuron próbuje ewaluować w detektor cechy, odgrywający użyteczną rolę w obliczeniach • ale to zadanie jest niezwykle skomplikowane, bo wszystkie neurony zmieniają się w tym samym czasie • ukryte neurony w poszczególnych warstwach sieci nie mogą komunikować się bezpośrednio • dostają jedynie wejście i sygnał błędu propagowany spowrotem z wyjść • sygnał błędu opisuje jakoś problem, który dany neuron próbuje rozwiązać, ale ten problem nieustannie się zmienia

  8. Problemy spowolniające backprop – MOVING TARGET • Zamiast szybko i prosto zmierzać do przybrania jakiejś użytecznej roli – złożony „taniec” pomiędzy neuronami • Zwiększanie liczby neuronów warstw ukrytych = spowalnianie procesu uczenia (backprop) • Częściowo odpowiedzialny za to jest MOVING-TARGET • Efekt stada

  9. Problemy spowolniające backprop – MOVING TARGET • Jak rozwiązać? • Pozwolić jedynie niektórym wagom lub neuronom zmieniać się naraz • Kaskadowa korelacja wykorzystuje ekstremalną wersję tej zasady • Może się zdawać, że trzymając większość sieci w zamrożeniu przez większość czasu spowolni uczenie – testy dowodzą, że nie • Każdy neuron nie zamrożony, może szybko wybrać użyteczną rolę w całościowym rozwiązaniu i dostosować się do jej wypełniania

  10. Kaskadowa korelacja - opis • Kaskadowa architektura • Algorytm uczenia • tworzenie i instalowanie nowych neuronów • próbujemy zmaksymalizować wielkość korelacji pomiędzy wyjściem nowego neuronu a sygnałem błędu na wyjściach sieci

  11. Kaskadowa korelacja - architektura • Rozpoczynamy od jakichś wejść i jednego lub więcej wyjść • Liczba wejść lub wyjść narzucona jest przez rodzaj problemu i reprezentację IO jaką wybrał eksperymentator • Każde wejście połączone jest z każdym wyjściowym neuronem poprzez połączenia o dostrajalnych wagach • Neurony wyjściowe mogą produkować na wyjścia liniową sumę ważonych wejść lub stosować jakąś nieliniową funkcję aktywacji • Autor używał zawsze sigmoidalnej f.a. (tangens hiperboliczny)

  12. Kaskadowa korelacja - architektura • Każdy nowy neuron dostaje połączenia z wszystkimi oryginalnymi wejściami oraz od każdego istniejącego już neuronu • Jak tylko zainstalujemy – zamrażamy wagi wejściowe • Każdy nowo dodany neuron = nowa jednoneuronowa warstwa • Potężne, wysoce wyspecjalizowane neurony, możliwe głębokie sieci

  13. Kaskadowa korelacja - architektura

  14. Kaskadowa korelacja - architektura

  15. Kaskadowa korelacja - uczenie • na początku trenujemy połączenia wejście-wyjście na całym zestawie uczącym • dowolny uczący algorytm dla jednowarstwowej sieci (np. dla perceptronu) • autor używa Quickprop • jeśli po ustalonej liczbie cykli uczących nie nastąpiła widoczna redukcja błędu, uruchamiamy sieć jeszcze raz, żeby zmierzyć błąd • jeśli jesteśmy zadowoleni z działania sieci, przerywamy szkolenie • jeśli nie, dodajemy nowy ukryty neuron korzystając z algorytmu „tworzenia neurona” • nowy neuron jest instalowany, jego wagi wejściowe są zamrażane, a wagi wszystkich wyjść sieci są ponownie trenowane (używając np. Quickpropa)

  16. Kaskadowa korelacja – algorytm „tworzenia neurona” • aby utworzyć nowy neuron ukryty zaczynamy z neuronem KANDYDUJĄCYM, który otrzymuje TESTOWE połączenie wejściowe • wyjście nie jest jeszcze podłączone do sieci ! • zapuszczamy wiele przejść zestawów uczących dostosowując wagi wejściowe neuronu KANDYDUJĄCEGO po każdym przejściu

  17. Kaskadowa korelacja – algorytm „tworzenia neurona” • celem dostosowania wag jest: zmaksymalizować S • S – suma (po wszystkich wyjściach) wielkości korelacji pomiędzy wyjściem neuronu KANDYDUJĄCEGO (V) a błędem na danym wyjściu • o – neuron wyjściowy • p – osobnik uczący

  18. Kaskadowa korelacja – algorytm „tworzenia neurona” • ulepszenie – pula neuronów KANDYDUJĄCYCH • każdy o innych losowych początkowych wagach • każdy może mieć inną funkcję aktywacji • Korzyści: • zmniejsza szansę na zamontowanie do sieci „bezużytecznego” neurony (który „utknie” podczas trenowania) • możliwość obliczeń równoległych podczas szkolenia neuronów kandydujących (neurony te nie wymieniają między sobą informacji, ani nie mają wpływu na całą sieć)

  19. Problem „dwóch spiral” • zaproponowany przez Alexis’a Wieland’a (MITRE Corp.) • 198 XY, spirala oplatająca środek 3 razy • Wieland, zmodyfikowana wersja backprop’a: 150,000 – 200,000 epok • Lang i Witbrock, • 2-5-5-5-1, dodatkowe połączenia między różnymi warstwami (nie tylko od tej bezpośrednio poprzedzającej): zwykły backprop – 20,000 epok, backprop ze zmodyfikowaną funkcją błędu – 12,000 epok, quickprop – 8000 epok • 2-5-5-1, quickprop – 60,000 epok • Kaskadowa Korelacja (sigmoidalna funkcja aktywacji), 12-19 neuronów ukrytych – średnio 1700 epok

  20. Problem „dwóch spiral”

  21. Problem „dwóch spiral”

  22. Problem „dwóch spiral”

  23. Bibliografia • ‘The Cascade-Correlation Learning Architecture’ Scott E. Fahlman and Christian Lebiere, 29.07.1991, CMU-CS-90-100 • ‘The Cascade-Correlation Neural Network Growing Algorithm using the Matlab Enviroment’ Jose Demisio Simoes da Silva • ‘En Evolving Cascade Neural Network Technique for Cleaning Sleep Electroencephalograms’, Computer Science Department, University of Exeter

More Related