Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałIrena Skiba Został zmieniony 9 lat temu
1
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Warstwowe sieci jednokierunkowe - perceptrony Warstwowe sieci jednokierunkowe zostały nazwane perceptronami przez Franka Rosenblatta i Charlesa Wightmana, którzy jako pierwsi badali je w latach 50 i 60 ubiegłego stulecia Sieci te można scharakteryzować w następujący sposób: Podstawowym elementem perceptronu jest sztuczny neuron, którego funkcją pobudzania (propagacji) jest funkcją sumy a funkcja aktywacji ma na ogół charakter nieliniowy; może to być jednak również funkcja liniowa Poszczególne neurony sieci ułożone są w warstwy; każdy neuron należy do jednej i tylko jednej warstwy. Neurony należące do jednej warstwy nie są ze sobą połączone
2
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 2 Warstwy ułożone są jedna za drugą - określone jest ich uporządkowanie. Połączenia pomiędzy neuronami poszczególnych warstw są asymetryczne (jednokierunkowe) i skierowane zawsze zgodnie z uporządkowaniem warstw Warstwowe sieci jednokierunkowe - perceptrony Sygnały wejściowe dostarczane są do sieci przez wejścia (warstwę wejściową), umiejscowione przed pierwszą warstwą neuronów Ograniczymy się na początek do rozważenia jednowarstwowych sieci jednokierunkowych. Są one często nazywane perceptronami prostymi
3
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 3 Perceptrony proste Struktury lub
4
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 4 Realizowane przetwarzanie Przypadki funkcji aktywacji: przekaźnikowa (perceptron prosty progowy) – zadania klasyfikacji liniowa (perceptron prosty liniowy) – zadania filtracji, predykcji Perceptrony proste nieliniowa (perceptron prosty nieliniowy) – zadania klasyfikacji, w ograniczonym zakresie aproksymacji (modelowania relacji we-wy)
5
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 5 Realizowane przetwarzanie Funkcja przekaźnikowa symetryczna Perceptron prosty progowy Funkcja przekaźnikowa niesymetryczna
6
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 6 gdzie: Perceptron prosty progowy Wagi warstwy perceptronu prostego można zapisać w postaci macierzy, a progi w postaci wektora
7
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 7 Perceptron prosty progowy Notacja 1 Neuron 1 Neuron k Neuron s Próg Wejście 1 Wejście j Wejście m
8
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 8 Perceptron prosty progowy Notacja 2 (rozszerzona przestrzeń wejść i wag) Neuron 1 Neuron k Neuron s Wejście 0 - próg Wejście 1Wejście 2 Wejście m
9
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 9 W perceptronie prostym - poszczególne neurony warstwy są niezależne ponieważ nie istnieją połączenia pomiędzy neuronami warstwy. Można zatem rozpatrywać poszczególne neurony warstwy jako niezależne sieci z m lub m + 1 wejściami (w zależności od notacji). Indeks k można wówczas opuścić - macierz wag staje się wektorem a wektor progów skalarem Perceptron prosty progowy Notacja 1 Notacja 2
10
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 10 Perceptron prosty progowy Pojedynczy perceptron jest najprostszą formą sieci neuronowej używanej do klasyfikacji wzorców, które posiadają własność liniowej separowalności tzn. wzorce należące do dwóch różnych klas leżą po przeciwnych stronach hiperpłaszczyzny w przestrzeni atrybutów klasyfikowanych obiektów Pojedynczy perceptron prosty progowy można nauczyć rozpoznawania wzorców należących do dwóch klas. Używając większej liczby neuronów można wykorzystywać perceptron prosty progowy do klasyfikacji wzorców należących do większej liczby klas
11
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 11 Perceptron prosty progowy Algorytm modyfikacji wag i progu oparty na odpowiedniej regule uczenia podał Rosenblatt (1958, 1962) – zaproponowana reguła uczenia nazywa się regułą perceptronu Rosenblatt'a Rosenblatt udowodnił też, że jeżeli wzorce (wektory) używane do uczenia perceptronu prostego progowego są wybierane z dwóch liniowo separowalnych zbiorów (klas) wówczas algorytm uczenia wykorzystujący regułę perceptronu jest zbieżny – sieć można nauczyć zadania klasyfikacji wzorców do dwóch klas w skończonej liczbie epok
12
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 12 Przykład zadania klasyfikacji: Interesuje nas czy pokazywana litera należy do zbioru liter „C”? – przykład klasyfikacji do dwóch zbiorów Niech: Litery „C” zapisywane w matrycach 4x4 – czy należą do zbioru liter „C”?... TAK NIE TAK? Perceptron prosty progowy - zadanie klasyfikacji
13
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 13 W jaki sposób pokazujemy sieci litery ze zbiorów C i nieC? Wejścia do sieci neuronowej: wektory 16 bitowe jedynek (1) i zer (0)
14
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 14 Tak Zewnętrzny obraz rozwiązywania zadania Sieć neuronowa
15
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 15 Jak można opisać zadanie klasyfikacji? Badamy pewien zbiór obiektów (przestrzeń rozważań) – w naszym przykładzie: zbiór dużych liter drukowanych Każdy z obiektów zbioru charakteryzujemy za pomocą n atrybutów lub cech p i, takich jak na przykład ciężar, wysokość, gęstość czy częstotliwość – w naszym przykładzie: 16 atrybutów przyjmujących wartości ze zbioru {0,1} i określanych, czy pole o numerze k (k=1,2,....., 16) w obszarze zapisu litery jest zajęte zapisem litery czy też nie Każdy z elementów przestrzeni rozważań X może być przedstawiony jako punkt n - wymiarowej przestrzeni tych atrybutów – w naszym przykładzie: jest to przestrzeń 16 wymiarowa p n p 1
16
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 16 Jak można opisać zadanie klasyfikacji? – c.d. x n x 1 Potrafimy (my ludzie) rozróżniać elementy różnych zbiorów przestrzeni rozważań – w naszym przykładzie potrafimy wskazać, które z pokazywanych liter należą do zbioru dużych liter C drukowanych (np.klasa 1) a które nie należą (np. klasa 0) Duże litery C Potrafimy znaleźć w n – wymiarowej przestrzeni atrybutów obiektów rozważań hiperpłaszczyznę, która rozdziela interesujący nas zbiór i pozostałe elementy przestrzeni rozważań – w naszym przykładzie: potrafimy znaleźć hiperpłaszczyznę rozdzielającą zbiór dużych liter C drukowanych od innych liter Klasa 1 Klasa 0 Hiperpłaszczyzna rozdzielająca Równanie hiperpłaszczyzny rozdzielającej Nie (Duże litery C)
17
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 17 Jak można opisać zadanie klasyfikacji? – c.d. Hiperpłaszczyzna rozdzielająca – miejsce geometryczne punktów przestrzeni atrybutów obiektów przestrzeni rozważań dla którego: Możemy policzyć: p n p 1 Klasa 1 Klasa 0 p1p1 w1w1 pnpn wnwn n y 0
18
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 18 Jak można opisać zadanie klasyfikacji? – c.d. Zadanie klasyfikacji: znaleźć taki zbiór wag lub modyfikowalnych współczynników, że wyjście perceptronu jest 1, jeżeli wektor wzorca (sygnał wejściowy) należy do klasy 1, a 0, jeżeli wektor wzorca należy do klasy 0
19
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 19 Proces uczenia perceptronu prostego progowego - uczenie zadania klasyfikacji Uczenie perceptronu prostego prowadzi się metodą z nauczycielem (pod nadzorem) Pożądaną sytuację, jaką chcielibyśmy uzyskać w wyniku procesu uczenia perceptronu progowego można zapisać następującą równością:
20
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 20 Inaczej: Pożądaną sytuację, jaką chcielibyśmy uzyskać w wyniku procesu uczenia można zapisać następującą równością: Perceptron prosty progowy – istota zadania klasyfikacji FA: przekaźnikowa symetryczna FA: przekaźnikowa niesymetryczna
21
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 21 Perceptron prosty progowy – istota zadania klasyfikacji Kiedy proces uczenia doprowadzi do takiej sytuacji? - najpierw przypadek bez progu Argumentem funkcji aktywacji jest iloczyn skalarny dwóch wektorów w i p
22
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 22 Perceptron prosty progowy – istota zadania klasyfikacji Z określenia funkcji aktywacji wynika, że wyjście perceptronu progowego przyjmuje tylko jedną z dwóch wartości "wysoką" lub "niską" i zmienia swoją wartość dla wartości argumentu równej zero, czyli kiedy: gdzie: - kąt pomiędzy wektorem wag a wektorem wzorca wejściowego
23
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 23 Perceptron prosty progowy – istota zadania klasyfikacji Warunki te można odczytać w następujący sposób: Na wyjściu perceptronu progowego pojawia się,,stan wysoki", jeżeli rzut wektora wzorca wejściowego na kierunek wektora wag jest równy zero lub dodatni Na wyjściu perceptronu progowego pojawia się,,stan niski", jeżeli rzut wektora wzorca wejściowego na kierunek wektora wag jest ujemny Granicą pomiędzy dodatnimi i ujemnymi rzutami wektorów p na kierunek wektora w jest hiperpłaszczyzna przechodząca przez początek układu współrzędnych i do której wektor w jest ortogonalny
24
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 24 Perceptron prosty progowy – istota zadania klasyfikacji Ilustracja graficzna p2p2 Hiperplaszczyzna rozdzielająca W p1p1 p1p1 p2p2 p3p3 p4p4
25
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 25 Perceptron prosty progowy – istota zadania klasyfikacji Warunek uzyskania pożądanego rezultatu uczenia da się spełnić, jeżeli będzie istniała hiperpłaszczyzna rozdzielająca wzorce wejściowe mające wzorce docelowe wysokie i niskie. w wzorce wejściowe mające dawać wzorce wyjściowe niskie wzorce wejściowe mające dawać wzorce wyjściowe wysokie p1p1 p2p2
26
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 26 Kiedy proces uczenia doprowadzi do pożądanej sytuacji? - przypadek z progiem Wyjście perceptronu progowego zmienia swoją wartość dla wartości argumentu równej zero, czyli kiedy: Perceptron prosty progowy – istota zadania klasyfikacji
27
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 27 Perceptron prosty progowy – istota zadania klasyfikacji Na hiperpłaszczyznę rozdzielającą można popatrzeć jako na miejsce geometryczne punktów (wektorów) p spełniających określone warunki. W rozważanym uprzednio przypadku (b = 0), można było powiedzieć, że jest to miejsce geometryczne wektorów p ortogonalnych do wektora w (rzut wektorów p na kierunek wektora wag równy zeru). Dla przypadku b 0 wynika, że jest to miejsce geometryczne wektorów p, których rzut na kierunek wektora w przy danym b spełnia warunek:
28
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 28 Perceptron prosty progowy – istota zadania klasyfikacji Ilustracja graficzna w Hiperpłaszczyzna Hiperpłaszczyzna rozdzielająca p 1 p 2 p3p3 p1p1 p2p2 p5p5 p4p4
29
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 29 Ponownie: Warunek uzyskania pożądanego rezultatu uczenia da się spełnić, jeżeli będzie istniała hiperpłaszczyzna rozdzielająca wzorce wejściowe mające wzorce docelowe wysokie i niskie. w p1p1 p2p2 wzorce wejściowe mające dawać wzorce wyjściowe niskie wzorce wejściowe mające dawać wzorce wyjściowe wysokie
30
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 30 Jak uzyskać taki rezultat? - Reguła uczenia perceptronu prostego progowego Zajmujemy się problemami liniowo separowalnymi pokażemy w jaki sposób można znaleźć odpowiednie wagi i progi za pomocą reguł uczenia Ogólna reguła modyfikacji wag i progów: lub
31
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 31 Reguła Rosenblatt'a: Parametr jest nazywany współczynnikiem szybkości uczenia. Nadawana jest mu wartość dodatnia i można nim wpływać na szybkość zbieżności procesu uczenia Reguła uczenia perceptronu prostego progowego
32
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 32 Uczenie perceptronu prostego progowego
33
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 33 Perceptrony proste progowe - algorytm uczenia (jeden z możliwych) Krok 1. Nadaj wagom i progom wartości początkowe; mogą to być wartości losowe lub nadane w sposób celowy; należy jednak przestrzegać zasady, aby nie były to wartości jednakowe oraz by były niezbyt duże Krok 2. Określ wartość współczynnika szybkości uczenia Krok 3. Rozpocznij kolejną epokę uczenia perceptronu prostego Krok 4. Pokaż sieci kolejny i-ty wzorzec wejściowy Krok 5. Oblicz wzorzec wyjściowy rzeczywisty a(:,i) Krok 6. Oblicz wektor błędów odpowiedzi e(:,i) = t(:,i) ‑ a(:,i).
34
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 34 Perceptrony proste progowe - algorytm uczenia (jeden z możliwych) Krok 7. Dla kolejnych neuronów, wykonaj: Jeżeli e(k,i) = 0; weź kolejne k (kolejny neuron) Jeżeli e(k,i) 0; przeprowadź modyfikacje wartości wag i progów według reguły perceptronu; weź kolejne k (kolejny neuron) Krok 8. Jeżeli był to ostatni wzorzec uczący przejdź do kroku 9 Jeżeli nie był to ostatni wzorzec uczący; przejdź do kroku 4
35
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 35 Krok 9. Jeżeli dla wszystkich (wszystkich par uczących, wszystkich neuronów) spełniony był warunek: e(k,i) = 0; zakończ uczenie Jeżeli nie dla wszystkich (wszystkich par uczących, wszystkich neuronów) spełniony był warunek: e(k,i) = 0; przejdź do kroku 3 (lub kroku 2). Perceptrony proste progowe - algorytm uczenia (jeden z możliwych)
36
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 36 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Przykład – percept1 Rozważamy prosty problem klasyfikacji – mamy dwuelementowe wektory, które chcemy klasyfikować do dwóch klas. Zbiór uczący liczy cztery wektory, którym przypisane są wzorce docelowe 1 i 0.
37
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 37 Do rozwiązywania tego zadania klasyfikacji użyjemy perceptronu prostego progowego z niesymetryczną funkcją przekaźnikową (odpowiedzi 0 i 1). Sieć będzie składała się z jednego neuronu (klasyfikacja do dwóch klas) o dwóch wejściach (elementy zbioru są dwuelementowe) Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
38
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 38 Ogólna struktura Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy W przykładzie:
39
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 39 O sposobach definiowania sieci neuronowej w przyborniku Neural Network środowiska MATLAB/Simulink Dodatek 1
40
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 40 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Wprowadzimy do przestrzeni roboczej MATLAB'a bloki zbiorów uczących >> P=[-0.5, -0.5, 0.3, 0.0; -0.5, 0.5, -0.5, 1.0] P =iowaniu -0.5000 -0.5000 0.3000 0 -0.5000 0.5000 -0.5000 1.0000 >> T=[1,1,0,0] T = 1 1 0 0 Po zdefiniowaniu sieci dla rozważanego przykładu
41
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 41 Zbiór uczący możemy obejrzeć: >> plotpv(P,T,V) Odpowiedzi 1 Odpowiedzi 0 >> V=[-2,2,-2,2] V = -2 2 -2 2 Określenie zakresu skal Rysowanie zbioru uczącego Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
42
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 42 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy >> init(percept1) Inicjalizacja sieci >> percept1.IW{1} ans = -0.1795 0.7873 >> percept1.b{1} ans = 0.8338 Odczytanie wartości wag i progów po inicjalizacji sieci Przepisanie wag i progów do macierzy IW i wektora b >> IW = percept1.IW{1,1} IW = -0.1795 0.7873 >> b = percept1.b{1} b = 0.8338 Prosta decyzyjna po inicjalizacji Rysowanie prostej decyzyjnej >> plotpc(IW,b)
43
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 43 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy >> A = sim(percept1, P) A = 1 1 1 1 Odpowiedzi sieci – wzorce wyjściowe rzeczywiste Błędy odpowiedzi >> E = T - A E = 0 0 -1 -1 Były błędy – potrzebna modyfikacja wag i progów >> dIW = learnp([ ],P,[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) dIW = -0.3000 -0.5000 >> db = learnp([ ],[1,1,1,1],[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) db = -2
44
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 44 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Nowe wartości wag i progów >> IW = IW + dIW IW = -0.4795 0.2873 >> b = b + db b = -1.1662 Położenie prostej decyzyjnej po pierwszej epoce uczenia Rysowanie prostej decyzyjnej >> plotpc(IW,b)
45
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 45 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Odpowiedzi sieci – wzorce wyjściowe rzeczywiste po pierwszej epoce uczenia >> A = sim(percept1, P) A = 0 0 0 0 Błędy odpowiedzi po pierwszej epoce uczenia >> E = T - A E = 1 1 0 0 Przepisanie wag i progów >> percept1.IW{1,1} = IW; >> percept1.b{1} = b; Po pierwszej epoce uczenia – były błędy; potrzebna modyfikacja wag i progów >> dIW = learnp([ ],P,[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) dIW = -1 0 >> db = learnp([ ],[1,1,1,1],[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) db = 2
46
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 46 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Nowe wartości wag i progów >> IW = IW + dIW IW = -1.4795 0.2873 >> b = b + db b = 0.8338 Położenie prostej decyzyjnej po drugiej epoce uczenia Rysowanie prostej decyzyjnej >> plotpc(IW,b)
47
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 47 Odpowiedzi sieci – wzorce wyjściowe rzeczywiste po drugiej epoce uczenia Błędy odpowiedzi po drugiej epoce uczenia Przepisanie wag i progów >> percept1.IW{1,1} = IW; >> percept1.b{1} = b; >> A = sim(percept1, P) A = 1 1 1 1 >> E = T - A E = 0 0 -1 -1 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Po drugiej epoce uczenia – były błędy; potrzebna modyfikacja wag i progów >> dIW = learnp([ ],P,[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) dIW = -0.3000 -0.5000 >> db = learnp([ ],[1,1,1,1],[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) db = -2
48
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 48 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Nowe wartości wag i progów >> IW = IW + dIW IW = -1.7795 -0.2127 >> b = b + db b = -1.1662 Położenie prostej decyzyjnej po trzeciej epoce uczenia Rysowanie prostej decyzyjnej >> plotpc(IW,b)
49
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 49 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Odpowiedzi sieci – wzorce wyjściowe rzeczywiste po trzeciej epoce uczenia Błędy odpowiedzi po trzeciej epoce uczenia Przepisanie wag i progów >> percept1.IW{1,1} = IW; >> percept1.b{1} = b; >> A = sim(percept1, P) A = 0 0 0 0 >> E = T - A E = 1 1 0 0 Po trzeciej epoce uczenia – były błędy; potrzebna modyfikacja wag i progów >> dIW = learnp([ ],P,[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) dIW = -1 0 >> db = learnp([ ],[1,1,1,1],[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) db = 2
50
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 50 Nowe wartości wag i progów >> IW = IW + dIW IW = -2.7795 -0.2127 >> b = b + db b = 0.8338 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Położenie prostej decyzyjnej po czwartej epoce uczenia Rysowanie prostej decyzyjnej >> plotpc(IW,b)
51
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 51 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Odpowiedzi sieci – wzorce wyjściowe rzeczywiste po czwartej epoce uczenia Błędy odpowiedzi po czwartej epoce uczenia Przepisanie wag i progów >> percept1.IW{1,1} = IW; >> percept1.b{1} = b; >> A = sim(percept1, P) A = 1 1 1 1 >> E = T - A E = 0 0 -1 -1 Po czwartej epoce uczenia – były błędy; potrzebna modyfikacja wag i progów >> dIW = learnp([ ],P,[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) dIW = -0.3000 -0.5000 >> db = learnp([ ],[1,1,1,1],[ ],[ ],[ ],[ ],E,[ ],[ ],[ ],[ ],[ ]) db = -2
52
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 52 Nowe wartości wag i progów >> IW = IW + dIW IW = -3.0795 -0.7127 >> b = b + db b = -1.1662 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy Położenie prostej decyzyjnej po piątej epoce uczenia Rysowanie prostej decyzyjnej >> plotpc(IW,b)
53
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 53 Odpowiedzi sieci – wzorce wyjściowe rzeczywiste po piątej epoce uczenia Błędy odpowiedzi po piątej epoce uczenia Przepisanie wag i progów >> percept1.IW{1,1} = IW; >> percept1.b{1} = b; >> A = sim(percept1, P) A = 1 1 0 0 >> E = T - A E = 0 0 0 0 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
54
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 54 Perceptron prosty progowy - wybrane zagadnienia Klasyfikacja z wykorzystaniem wielu neuronów – przykład: percept2 - rozmiary wzorców (liczba atrybutów), które sieć powinna klasyfikować mogą być powiększane - liczba klas do których sieć powinna klasyfikować też może być powiększana Skutki - zadanie klasyfikacji staje się bardziej złożone - czas uczenia będzie dłuższy
55
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 55 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy wybrane zagadnienia
56
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 56 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy wybrane zagadnienia
57
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 57 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy wybrane zagadnienia Wynik uczenia po 10 epokach
58
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 58 Perceptron prosty progowy - wybrane zagadnienia Występowanie wzorców oddalonych wśród wzorców uczących – przykład: percept3
59
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 59 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy wybrane zagadnienia
60
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 60 Perceptron prosty progowy - wybrane zagadnienia Występowanie wzorców liniowo nieseparowalnych oddalonych wśród wzorców uczących – przykład: percept4
61
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 61 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy wybrane zagadnienia Jeden z wyników uczenia po wielu epokach Wynik symulacji Poprawne
62
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 62 Koniec materiału prezentowanego podczas wykładu Dziękuję za uczestnictwo w wykładzie i uwagę
63
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 63 Dodatek 1 O sposobach definiowania sieci neuronowej w przyborniku Neural Netowrk środowiska MATLAB/Simulink
64
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 64 Perceptron progowy może być utworzony za pomocą funkcji >> help newp NEWP Create a perceptron. Syntax net = newp net = newp(pr,s,tf,lf) newp Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy NET = NEWP creates a new network with a dialog box (?) I składnia II składnia PR - Rx2 matrix of min and max values for R input elements S - Number of neurons TF - Transfer function, default = 'hardlim' LF - Learning function, default = 'learnp'
65
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 65 Zdefiniowanie sieci percept1 korzystając z funkcji newp >> percept1 = newp([-2,2;-2,2],1,'hardlim','learnp'); Bez średnika – pojawi się informacja o zdefiniowanej strukturze Z średnikiem – nie pojawi się informacja o zdefiniowanej strukturze Wprowadzone dane: reguła uczenia - learnp funkcja aktywacji - hardlim jeden neuron wektor wejściowy 2 – elementowy; zakres zmian elementów od –2 do 2 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
66
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 66 Informacja o strukturze sieci percept1 Działy informacji percept1 = Neural Network object: architecture: subobject structures: functions: parameters: weight and bias values: other: Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy >> percept1 = newp([-2,2;-2,2],1,'hardlim','learnp');
67
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 67 architecture: numInputs: 1 numLayers: 1 biasConnect: [1] inputConnect: [1] layerConnect: [0] outputConnect: [1] targetConnect: [1] numOutputs: 1 (read-only) numTargets: 1 (read-only) numInputDelays: 0 (read-only) numLayerDelays: 0 (read-only) Liczba wejść (źródeł sygnałów wejściowych) Liczba warstw w sieci Występowanie połączeń neuronów warstw z progami (0 lub 1) Występowanie połączeń warstw z wejściami (macierze z elementami 0 lub 1) Występowanie połączeń warstw między sobą (macierze z elementami 0 lub 1) Występowanie połączeń warstw z wyjściami sieci (elementy 0 lub 1) Występowanie połączeń warstw z wyjściami docelowymi (elementy 0 lub 1) Liczba wyjść Liczba wyjść docelowych Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
68
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 68 subobject structures: inputs: {1x1 cell} of inputs layers: {1x1 cell} of layers outputs: {1x1 cell} containing 1 output targets: {1x1 cell} containing 1 target biases: {1x1 cell} containing 1 bias inputWeights: {1x1 cell} containing 1 input weight layerWeights: {1x1 cell} containing no layer weights Komórka informacji o poszczególnych wejściach Komórka informacji o poszczególnych wyjściach Komórka informacji o poszczególnych warstwach Komórka informacji o poszczególnych celach Komórka informacji o poszczególnych progach Komórka informacji o wagach wejściowych Komórka informacji o wagach warstwowych Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
69
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 69 Odczytywanie informacji o wejściach >> percept1.inputs ans = [1x1 struct] Struktura wejść – 1 wejście >> percept1.inputs{1} ans = range: [2x2 double] size: 2 userdata: [1x1 struct] Informacja o pierwszym wejściu Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
70
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 70 Odczytywanie informacji o warstwach >> percept1.layers ans = [1x1 struct] Struktura warstw – 1 warstwa >> percept1.layers{1} ans = dimensions: 1 distanceFcn: '' distances: [] initFcn: 'initwb' netInputFcn: 'netsum' positions: 0 size: 1 topologyFcn: 'hextop' transferFcn: 'hardlim' userdata: [1x1 struct] Informacja o warstwie Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
71
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 71 Określenie funkcji inicjalizacji dla macierzy wag >> percept1.inputWeights{1,1} ans = delays: 0 initFcn: 'initzero' learn: 1 learnFcn: 'learnp' learnParam: [ ] size: [1 2] userdata: [1x1 struct] weightFcn: 'dotprod' Odczytywanie informacji o macierzy wag warstwy >> percept1.inputWeights{1,1}.initFcn = 'rands'; >> percept1.inputWeights{1,1} ans = delays: 0 initFcn: 'rands' learn: 1 learnFcn: 'learnp' learnParam: [] size: [1 2] userdata: [1x1 struct] weightFcn: 'dotprod' Ponowne odczytywanie informacji o macierzy wag warstwy Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
72
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 72 Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy >> percept1.biases{1} ans = initFcn: 'initzero' learn: 1 learnFcn: 'learnp' learnParam: [ ] size: 1 userdata: [1x1 struct] Odczytywanie informacji o wektorze progów >> percept1.biases{1}.initFcn = 'rands'; Określenie funkcji inicjalizacji dla wektora progów Ponowne odczytywanie informacji o macierzy wag warstwy >> percept1.biases{1} ans = initFcn: 'rands' learn: 1 learnFcn: 'learnp' learnParam: [ ] size: 1 userdata: [1x1 struct]
73
Metody Sztucznej Inteligencji – technologie rozmyte i neuronowe Sieci jednowarstwowe - perceptrony proste progowe Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 73 >> percept1.outputs{1} ans = size: 1 userdata: [1x1 struct] Odczytywanie informacji o wektorze wyjść >> percept1.targets{1} ans = size: 1 userdata: [1x1 struct] Odczytywanie informacji o wektorze celów Przybornik Neural Network w środowisku MATLAB/Simulink Perceptron prosty progowy
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.