Wykład 2 - ZMiTAC - Politechnika Śląska
Transkrypt
Wykład 2 - ZMiTAC - Politechnika Śląska
Sztuczne sieci neuronowe Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 311 Wykład 2 PLAN: - Repetitio (brevis) - Perceptron Rosenblatta - Sieci neuronowe i problem separowalności liniowej Sieć neuronowa warstwowa Działanie sztucznego neuronu ti x1 x2 xJ wi1 wi2 ni Σ wiJ f(ni) yi J ni = ∑ wij x j − ti , yi = f (ni ) j =1 ti − próg aktywacji neuronu Działanie neuronu (cd.) Równania : J ni = ∑ wij x j − ti , j =1 yi = f (ni ) dla uproszczenia zapisu przedstawiamy jako : J yi = f ∑ wij x j j =0 gdzie : wi 0 = −ti , x0 = 1 Działanie neuronu (cd.) Równania : J ni = ∑ wij x j − ti , j =1 yi = f (ni ) lub jako : yi = f (ni ) J ni = ∑ wij x j j =0 gdzie : wi 0 = −ti , x0 = 1 Działanie neuronu (cd.) Przedstawmy wektory w i oraz x jako : [ ] [ x = 1, x1 ,..., x j ,..., x J , w i = wi 0 , wi1 ,..., wij ,..., wiJ Wówczas : ni = w i ∗ x lub : T ni = w i x ] Perceptron Rosenblatta 1 x1 x2 xJ wi1 wi0 wi2 Σ ni f(ni) 0 ⇔ ni ≤ 0 ( ) wiJ yi = f ni = 1 ⇔ n > 0 i yi Separowalność liniowa • Definicja: Problem jest separowalny liniowo jeżeli da się go przedstawić jako podział dychotomiczny za pomocą pewnej hiperpłaszczyzny Perceptron Rosenblatta a separowalność liniowa • Perceptron Rosenblatta dokonuje podziału dychotomicznego przestrzeni wejściowej L⊂ℜJ, x∈L • W zadaniach rozpoznawania Perceptron Rosenblatta dzieli przestrzeń wejściową L na część należącą do pewnej klasy abstrakcji (obiekt rozpoznany) gdy yi= 1 oraz część do niej nie należącą gdy yi=0. Perceptron Rosenblatta a separowalność liniowa (cd.) • Granica podziału wyznaczona jest poprzez hiperpłaszczyznę określoną w przestrzeni L równaniem: J ∑w x j =0 ij j = 0, x0 = 1, wi 0 = −ti Wniosek: PR nadaje się do rozwiązywania problemów separowalnych liniowo Przypadek 2D • Dla wymiaru przestrzeni wejściowej J=2 hiperpłaszczyzną tą jest prosta o równaniu: wi 0 + wi1 x1 + wi 2 x2 = 0 • Jeżeli wi2≠0, wówczas: wi 0 wi1 x2 = − − x1 wi 2 wi 2 Przypadek 2D (cd.) 8 x2 6 4 2 − wi 0 wi 2 -15 -10 0 -5 -2 0 + - α 5 x1 10 15 -4 wi 0 wi1 x2 = − − x1 wi 2 wi 2 wi1 tgα = − wi 2 Perceptron Rosenblatta a separowalność liniowa (AND) F = x AND y y 1,2 0 1 1 + 0,8 - 0,6 0,4 0,2 0 0 0 0 0,2 0,4 0,6 0,8 1 x 1,2 Wniosek: jest to funkcja separowalna liniowo Perceptron Rosenblatta a separowalność liniowa (XOR) F = x XOR y y 1,2 + 1 1 0 - 0,8 0,6 0,4 0,2 0 0 0 0,2 + 1 0,4 0,6 0,8 1 x 1,2 Wniosek: nie jest to funkcja separowalna liniowo Sieć z warstwą ukrytą Wprowadzenie dodatkowej warstwy elementów perceptronowych zwiększa zakres stosowalności nieliniowej sieci x1 yi1 yi x2 yi2 Sieć perceptronów z warstwą ukrytą rozwiązuje problem (XOR) F = x XOR y y 1,2 F = yi1 AND yi2 + 1 1 yi1= 0 0 - 0,8 yi2= 1 0,6 0,4 yi1= 1 yi2= 0 0 - 0,2 0 0 0,2 + 1 0,4 0,6 0,8 1 x 1,2 Typy zadań realizowalnych przez sieć z jedną warstwą ukrytą • Sieć dwuwarstwowa (z jedną warstwą ukrytą) może dokonywać w przestrzeni wejściowej klasyfikacji dowolnych obszarów jednospójnych, wypukłych (tzn. takich, które powstają przez wydzielenie dowolną liczbą hiperpłaszczyzn) • Obszary takie nazywamy SIMPLEKSAMI • Każdej hiperpłaszczyźnie tworzącej simpleks odpowiada jeden neuron ukryty • (W ogólności) sieć taka nie potrafi dokonywać klasyfikacji obszarów niejednospójnych ani wklęsłych Typy zadań realizowalnych przez sieć z dwoma warstwami ukrytymi • Sieć trójwarstwowa (z dwoma warstwami ukrytymi) może dokonywać w przestrzeni wejściowej klasyfikacji dowolnych obszarów, gdyż dowolny obszar da się przedstawić jako sumę lub różnicę pewnych simpleksów klasyfikowanych w drugiej warstwie ukrytej • Każdemu simpleksowi odpowiada jeden neuron w drugiej warstwie ukrytej • Neuron warstwy wyjściowej dokonuje wycięcia jednego wierzchołka hipersześcianu o wymiarze równym ilości simpleksów, a to jest zawsze problemem separowalnym liniowo Wniosek ogólny • Sieć nieliniowa trójwarstwowa (z dwoma warstwami ukrytymi) może realizować dowolnie złożoną klasyfikację przestrzeni wejściowej w zbiór klas abstrakcji • Aby to mogła zrobić musi istnieć metoda odpowiedniego ustawiania hiperpłaszczyzn, poprzez modyfikacje współczynników wagowych – jest to uczenie sieci Metoda wstecznej propagacji błędów (back propagation) • Stosuje się ją do perceptronów wielowarstwowych • Funkcja aktywacji: sigmoidalna 1 Oi = − βni 1+ e • lub tangens hiperboliczny −αni αni 1 − e Oi = tgh = −αni 2 1+ e Własności funkcji sigmoidalnej • Ciągła, niemalejąca, nieliniowa, • Różniczkowalna: (l ) ∂Oi (l ) (l ) = βOi (1 − Oi ) (l ) ∂ni • Dowolnie blisko aproksymuje funkcję progową 1(ni): 1 lim β →∞ 1 + e − βni = 1(ni ) Własności funkcji tangensa hiperbolicznego • • • • • Ciągła Niemalejąca Nieliniowa Różniczkowalna: Dowolnie blisko aproksymuje funkcję sgn(ni): αni lim tgh = sgn (ni ) α →∞ 2