Algorytm kaskadowej korelacji

Slides:



Advertisements
Podobne prezentacje
Sieć jednokierunkowa wielowarstwowa
Advertisements

Mechanizm wnioskowania rozmytego
SIECI NEURONOWE Sztuczne sieci neuronowe są to układy elektroniczne lub optyczne, złożone z jednostek przetwarzających, zwanych neuronami, połączonych.
Metody rozwiązywania układów równań liniowych
Zadanie z dekompozycji
SZTUCZNE SIECI NEURONOWE
Inteligencja Obliczeniowa Sieci dynamiczne cd.
Inteligencja Obliczeniowa Otwieranie czarnej skrzynki.
Katedra Informatyki Stosowanej UMK
Uczenie konkurencyjne.
Inteligencja Obliczeniowa Sieci dynamiczne.
Inteligencja Obliczeniowa Perceptrony o dużym marginesie błędu
Inteligencja Obliczeniowa Sieci o zmiennej strukturze.
Inteligencja Obliczeniowa Perceptrony
SIECI NEURONOWE Wykład III.
o radialnych funkcjach bazowych
Metoda węzłowa w SPICE.
Sztuczne sieci neuronowe
Sztuczne sieci neuronowe w doświadczeniach nad fizyką spinową w CERN
Metody Sztucznej Inteligencji w Sterowaniu 2009/2010Optymalizacja miary efektywności działania sztucznych sieci neuronowych Dr hab. inż. Kazimierz Duzinkiewicz,
Czy potrafimy obliczyć wartość wyjścia sieci znając wartości jej wejść? Tak, przy założeniu, że znamy aktualne wartości wag i progów dla poszczególnych.
Metody Sztucznej Inteligencji w Sterowaniu 2009/2010 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania.
mgr inż. Rafał Komański styczeń 2004
Mirosław ŚWIERCZ Politechnika Białostocka, Wydział Elektryczny
Sieci Hopfielda.
Sieci neuronowe jednokierunkowe wielowarstwowe
Sztuczne sieci neuronowe (SSN)
Zastosowanie technologii CUDA w sztucznej inteligencji
Klasyfikacja dokumentów za pomocą sieci radialnych
formalnie: Budowa i zasada funkcjonowania sztucznych sieci neuronowych
Systemy wspomagania decyzji
Sztuczne Sieci Neuronowe
Systemy Wspomagania Decyzji
formalnie: Uczenie nienadzorowane
Wspomaganie decyzji nie zwalnia od decyzji...
Uczenie w Sieciach Rekurencyjnych
Systemy wspomagania decyzji
Modelowanie i Identyfikacja 2011/2012 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Warstwowe.
Modelowanie i identyfikacja 2010/2011Optymalizacja miary efektywności działania sztucznych sieci neuronowych Dr hab. inż. Kazimierz Duzinkiewicz, Katedra.
Perceptrony proste liniowe - Adaline
Spis treści W świecie algortmów -Budowa algorytmu
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
Algorytmika.
Mateusz Wawrzyniak & Michał Warzocha
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe  Dr hab. inż. Kazimierz Duzinkiewicz,
Metody sztucznej inteligencji – technologie rozmyte i neuronoweReguła propagacji wstecznej  Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów.
SZTUCZNA INTELIGENCJA
© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania Modelowanie i podstawy identyfikacji 2015/2016 Modele neuronowe – podstawy,
GeneracjeTechnologia Architektura przetwarzania 0. Przekaźniki elektromechaniczne 1. Lampy elektronowe 2. Tranzystory 3. Układy scalone 3.5.Układy dużej.
Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Perceptrony proste nieliniowe i wielowarstwowe © Kazimierz Duzinkiewicz, dr hab.
Algorytmy, sposoby ich zapisu.1 Algorytm to uporządkowany opis postępowania przy rozwiązywaniu problemu z uwzględnieniem opisu danych oraz opisu kolejnych.
Belief Nets Autor: inż. 2013r źródło tła:
Machine learning Lecture 6
Inteligencja Obliczeniowa Perceptrony o dużym marginesie błędu
Systemy neuronowo – rozmyte
formalnie: Sieci jednokierunkowe: architektura, uczenie, zastosowania
Kognitywne właściwości sieci neuronowych
Perceptrony o dużym marginesie błędu
Problem ustalania grafiku ciąg dalszy
Metody sztucznej inteligencji
Sieci o zmiennej strukturze
Perceptrony o dużym marginesie błędu
Systemy Ekspertowe i Sztuczna Inteligencja trudne pytania
Inteligencja Obliczeniowa Perceptrony
Programowanie sieciowe Laboratorium 3
Programowanie sieciowe Laboratorium 4
Programowanie sieciowe Laboratorium 3
Perceptrony wielowarstwowe, wsteczna propagacja błędów
Zapis prezentacji:

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 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)

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

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

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

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.

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

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

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

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

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)

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

Kaskadowa korelacja - architektura

Kaskadowa korelacja - architektura

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)

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

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

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ć)

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

Problem „dwóch spiral”

Problem „dwóch spiral”

Problem „dwóch spiral”

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