Uczenie się pojedynczego neuronu. Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0. Wówczas: W 1 x 1 + w 2 x 2 + = 0

Podobne dokumenty
Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Metody Sztucznej Inteligencji II

Sieci neuronowe w Statistica. Agnieszka Nowak - Brzezioska

FUNKCJA LINIOWA. A) B) C) D) Wskaż, dla którego funkcja liniowa określona wzorem jest stała. A) B) C) D)

FUNKCJA KWADRATOWA. Zad 1 Przedstaw funkcję kwadratową w postaci ogólnej. Postać ogólna funkcji kwadratowej to: y = ax + bx + c;(

8. Neuron z ciągłą funkcją aktywacji.

1. Logika, funkcje logiczne, preceptron.

Najprostsze modele sieci z rekurencją. sieci Hopfielda; sieci uczone regułą Hebba; sieć Hamminga;

Sztuczne sieci neuronowe Ćwiczenia. Piotr Fulmański, Marta Grzanek

POWTÓRKA ROZDZIAŁU III FUNKCJA LINIOWA

ALGORYTMY SZTUCZNEJ INTELIGENCJI

Zastosowania sieci neuronowych

Otrzymaliśmy w ten sposób ograniczenie na wartości parametru m.

6. Perceptron Rosenblatta

Projekt Sieci neuronowe

Przekształcanie wykresów.

FUNKCJA LINIOWA, RÓWNANIA I UKŁADY RÓWNAŃ LINIOWYCH

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Podstawy sztucznej inteligencji

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Lista 3 Funkcje. Środkowa częśd podanej funkcji, to funkcja stała. Jej wykresem będzie poziomy odcinek na wysokości 4.

FUNKCJA LINIOWA - WYKRES

Inteligentne systemy przeciw atakom sieciowym

wiedzy Sieci neuronowe

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

FUNKCJA LINIOWA - WYKRES. y = ax + b. a i b to współczynniki funkcji, które mają wartości liczbowe

Egzamin ustny z matematyki semestr II Zakres wymaganych wiadomości i umiejętności

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Funkcja liniowa -zadania. Funkcja liniowa jest to funkcja postaci y = ax + b dla x R gdzie a, b R oraz

Kurs ZDAJ MATURĘ Z MATEMATYKI MODUŁ 5 Zadania funkcje cz.1

Funkcja liniowa - podsumowanie

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Na rysunku przedstawiony jest wykres funkcji f(x) określonej dla x [-7, 8].

1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda

Prawdopodobieństwo czerwonych = = 0.33

3. FUNKCJA LINIOWA. gdzie ; ół,.

Szukanie rozwiązań funkcji uwikłanych (równań nieliniowych)

Sieci neuronowe w Statistica

Uczenie sieci neuronowych i bayesowskich

Zadanie 3 Oblicz jeżeli wiadomo, że liczby 8 2,, 1, , tworzą ciąg arytmetyczny. Wyznacz różnicę ciągu. Rozwiązanie:

Elementy inteligencji obliczeniowej

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

ROZKŁAD MATERIAŁU DO II KLASY LICEUM (ZAKRES ROZSZERZONY) A WYMAGANIA PODSTAWY PROGRAMOWEJ.

Za rozwiązanie wszystkich zadań można otrzymać łącznie 45 punktów.

Matematyka licea ogólnokształcące, technika

ZAGADNIENIA NA EGZAMIN POPRAWKOWY Z MATEMATYKI W KLASIE II TECHNIKUM.

Definicja perceptronu wielowarstwowego

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Zastosowania sieci neuronowych

Wymagania na egzamin poprawkowy z matematyki w roku szkolnym 2017/2018 klasa pierwsza Branżowa Szkoła

? 14. Dana jest funkcja. Naszkicuj jej wykres. Dla jakich argumentów funkcja przyjmuje wartości dodatnie? 15. Dana jest funkcja f x 2 a x

Wymagania edukacyjne matematyka klasa 1 zakres podstawowy 1. LICZBY RZECZYWISTE

Sieć Hopfielda. Sieci rekurencyjne. Ewa Adamus. ZUT Wydział Informatyki Instytut Sztucznej Inteligencji i Metod Matematycznych.

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Zad. 1 Liczba jest równa A B C D. Zad. 2 Liczba log16 jest równa A 3log2 + log8 B log4 + 2log3 C 3log4 log4 D log20 log4

ZAGADNIENIA PROGRAMOWE I WYMAGANIA EDUKACYJNE DO TESTU PRZYROSTU KOMPETENCJI Z MATEMATYKI DLA UCZNIA KLASY II

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV

FUNKCJA LINIOWA. Zadanie 1. (1 pkt) Na rysunku przedstawiony jest fragment wykresu pewnej funkcji liniowej y = ax + b.

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane cd.

TEMAT: PRZEKSZTAŁCENIA WYKRESÓW FUNKCJI PRZESUNIĘCIE O WEKTOR

Funkcje IV. Wymagania egzaminacyjne:

Rozpoznawanie wzorców. Dr inż. Michał Bereta p. 144 / 10, Instytut Informatyki

ZAGADNIENIA NA EGZAMIN POPRAWKOWY Z MATEMATYKI W KLASIE II TECHNIKUM.

Oprogramowanie Systemów Obrazowania SIECI NEURONOWE

Uczenie sieci typu MLP

Wstęp do sieci neuronowych, wykład 04. Skierowane sieci neuronowe. Algorytmy konstrukcyjne dla sieci skierowanych

Kształcenie w zakresie podstawowym. Klasa 2

Funkcja liniowa i prosta podsumowanie

Agnieszka Nowak Brzezińska

Siły wewnętrzne - związki różniczkowe

METODY ROZWIĄZYWANIA RÓWNAŃ NIELINIOWYCH

Lekcja 5: Sieć Kohonena i sieć ART

Technikum Nr 2 im. gen. Mieczysława Smorawińskiego w Zespole Szkół Ekonomicznych w Kaliszu

Geometria analityczna

Dopasowanie prostej do wyników pomiarów.

Zadanie 3. Na prostej o równaniu y = 2x 3 znajdź punkt P, którego odległość od punktu A = ( 2, -1 ) jest najmniejsza. Oblicz AP

Agnieszka Nowak Brzezińska Wykład III

Klasa 1 technikum. Poniżej przedstawiony został podział wymagań na poszczególne oceny szkolne:

ZADANIA ZAMKNIETE W zadaniach 1-25 wybierz i zaznacz na karcie odpowiedzi poprawna

Następnie przypominamy (dla części studentów wprowadzamy) podstawowe pojęcia opisujące funkcje na poziomie rysunków i objaśnień.

Wymagania na egzamin poprawkowy z matematyki w roku szkolnym 2018/2019 klasa 1 b BS

Metody numeryczne I Równania nieliniowe

Ogólny schemat blokowy układu ze sprzężeniem zwrotnym

Indukcja matematyczna

M10. Własności funkcji liniowej

Wstęp do teorii sztucznej inteligencji Wykład III. Modele sieci neuronowych.

1) 2) 3) 5) 6) 7) 8) 9) 10) 11) 12) 13) 14) 15) 16) 17) 18) 19) 20) 21) 22) 23) 24) 25)

Zajęcia nr 1 (1h) Dwumian Newtona. Indukcja. Zajęcia nr 2 i 3 (4h) Trygonometria

Po zapoznaniu się z funkcją liniową możemy przyjśd do badania funkcji kwadratowej.

Metody wypełniania braków w danych ang. Missing values in data

Regresja logistyczna (LOGISTIC)

S O M SELF-ORGANIZING MAPS. Przemysław Szczepańczyk Łukasz Myszor

AUTORKA: ELŻBIETA SZUMIŃSKA NAUCZYCIELKA ZESPOŁU SZKÓŁ OGÓLNOKSZTAŁCĄCYCH SCHOLASTICUS W ŁODZI ZNANE RÓWNANIA PROSTEJ NA PŁASZCZYŹNIE I W PRZESTRZENI

a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9] a[10]

METODY INŻYNIERII WIEDZY

Funkcja jest różnowartościowa w zbiorze A wtedy i tylko wtedy, gdy różnym argumentom funkcja ta przyporządkowuje różne wartości.

IX Olimpiada Matematyczna Gimnazjalistów

Praca kontrolna z matematyki nr 1 Liceum Ogólnokształcące dla Dorosłych Semestr 5 Rok szkolny 2014/2015

ZADANIE 1. ZADANIE 2 Wyznacz wzór funkcji f (x) = 2x 2 + bx + c w postaci kanonicznej wiedzac, że jej miejsca zerowe sa niami równania x 3 = ZADANIE 3

Transkrypt:

Uczenie się pojedynczego neuronu W0 X0=1 W1 x1 W2 s f y x2 Wp xp p x i w i=x w+wo i=0 Jeśli zastosowana zostanie funkcja bipolarna s y: y=-1 gdy z<0 y=1 gdy z>=0 Wówczas: W 1 x 1 + w 2 x 2 + = 0 Algorytm uczenia perceptronu: 1. Wybierz losowe początkowe wagi neuronu. 2. Ucz perceptron, wykorzystując kolejne elementy xi zbioru uczącego Z. 3. Oblicz wartośd wyjściową yi perceptornu zgodnie z formułą: y = f(x w + ) 4. Jeżeli wartośd yi różni się od wartości wzorcowej d(xi), dokonaj modyfikacji wag według formuły: W(t+1) = w(t) + d(x i )*x i 5. Wród do punktu 2. Algorytm powtarza się tak długo, aż dla wszystkich obserwacji błąd na wyjściu będzie mniejszy od założonej tolerancji. Dany zbiór uczący może zostad użyty wielokrotnie.

Przykład: Przypuśdmy, że chcemy zbudowad SN, która klasyfikuje punkty na punkty ujemne i dodatnie. Jeśli mamy 3 punkty: X1 = (1,2) oraz x3=(0,-1) które mają byd klasyfikowane jako dodatnie, oraz punkt x2=(-1,2) klasyfikowany jako ujemny. To ich reprezentacja będzie następująca, jeśli założymy też ze początkowo wektor wag wynosi w=(1,- 0.8) Y = 1 x -0.8 A więc wykres funkcji prostopadłej do tej będzie Y = -x -0.8 Wówczas powiemy, że d(x1)=1, d(x3)=1, zaś d(x2)=-1. Wówczas klasyfikacja jednoznaczna tych punktów będzie następująca: 3 2 1 0-10 -5-1 0 5 10-2 dodatnie ujemne w Liniowy (w) I jak widad, nie będzie możliwe jednoznaczne klasyfikowanie punktów linią i wektorem wag bowiem punkty x1 i x3 (dodatnie, niebieskie kwadraty) nie są w jednej osi. Zatem trzeba zmodyfikowad wektor wag. Y = f(x w + ) Zatem y1 = sgn(x1 w(0)) = sgn (1,2)(1,-0.8)=sgn(1*1 + 2 * (-0.8)) = sgn(1 1.6) = sgn(-0.6) = -1 W(1) = w(0) + d(x1) *x1 = (1,-0.8) + 1*(1,2) = (2,1.2) Teraz mam klasyfikację taką: 3 2 1 0-10 -5-1 0 5 10-2 dodatnie ujemne w Liniowy (w)

Nadal nie mamy dobrej klasyfikacji dla punktów. Zatem musimy ponownie liczyd wagi. Zatem Y2 = sgn(x2 w(1)) = sgn (-1,2)(2,1.2)= sgn(-2 +2.4) = sgn(0.4) = 1 W(2) = w(1) + d(x2) *x2 = (2,1.2) + (-1)*(1,-2) = (3,-0.8) Teraz mam klasyfikację taką: 2.5 2 1.5 1 0.5 0-10 -5-0.5 0 5 10-1 -1.5 dodatnie ujemne w Liniowy (w) Nadal nie mamy dobrej klasyfikacji dla punktów. Zatem musimy ponownie liczyd wagi. Zatem Y3 = sgn(x3 w(2)) = sgn (0,-1)(3,-0.8)= sgn(0-0.8) = sgn(-0.8) = -1 W(3) = w(2) + d(x3) *x3 = (3,-0.8) + (-1)*(0,-1) = (3,0.2) Teraz mam klasyfikację taką: 2.5 2 1.5 1 0.5 0-10 -5-0.5 0 5 10-1 -1.5 dodatnie ujemne w Liniowy (w)

Zadanie dla studentów: Nasz neuron będzie wyglądał następująco: Funkcja realizowana przez taki neuron wygląda następująco: z=w1*x+w2 Widad wyraźnie, że wzór ten powstaje z ogólnego wzoru na prostą przechodzącą przez punkt (0,0): 0=A*x+B*y W naszym przypadku y=1. Nauka neuronu sprowadza się do znalezienia takiego A i B, żeby wszystkie wzorce, które mają byd przez neuron interpretowane jako 1 znajdowały się po dodatniej (wskazywanej przez wektor prostopadły) stronie tej prostej, natomiast te, które mają zwracad -1, były po przeciwnej. Wektorem prostopadłym do tej prostej jest wektor mający współrzędne równe współczynnikom przy x i y, czyli A i B, a przekładając to na neuron są to wagi w1 i w2. I może od razu mały przykład. Mamy następujący zbiór uczący: Wejście: -4-1 -1 1 1 1 3 1 Przyjmijmy, że na początku wektor wag jest równy=*3,1+. Wyjście Graficzna interpretacja jest następująca (na czerwono zostały zaznaczone punkty które mają zwrócid 1, na niebiesko te które zwracają -1): Dzięki temu, że wszystkie współrzędne y są równe 1 jest możliwe znalezienie prostej przechodzącej przez początek układu współrzędnych rozdzielającej wszystkie punkty. Dla punktu P1: jeśli x=-4 to y = w1 * x + w2 = -4 * 3 + 1 = -11 Dla punktu P2: jeśli x=-1 to y = w1 * x + w2 = -1 * 3 + 1 = -2 Dla punktu P3: jeśli x=1 to y = w1 * x + w2 = 1 * 3 + 1 = 4 Dla punktu P4: jeśli x=3 to y = w1 * x + w2 = 3 * 3 + 1 = 10 Wiadomo, że neuron działa tak, że jeśli dostanie wartośd mniejszą od 0 to y = -1 a jeśli większą od zera to y = 1. W takim razie: Skoro punkt 1: sgn(y) = sgn(-11) = -1 Skoro punkt 2: sgn(y) = sgn(-2) = -1

Skoro punkt 3: sgn(y) = sgn(4) = 1 Skoro punkt 4: sgn(y) = sgn(10) =1 Z powyższego rysunku widad, że punkty 1,3 i 4 są przez neuron dobrze klasyfikowane. Niestety dla drugiego punktu siec zwraca -1 zamiast 1. Aby to naprawid należy zmodyfikowad wektor wag dodając do niego wektor wzorca przemnożony przez pewną stałą. Stała ta powinna byd równa 2*ni (źródło: *I+), gdzie ni jest współczynnikiem określającym szybkośd uczenia. Do dalszych rozważao przyjmijmy ni równe 1. Nowy wektor wag będzie więc równy: [w]=[3,1]+[-1,1]*2=[1,3] Dla punktu P1: jeśli x=-4 to y = w1 * x + w2 = -4 * 1 + 3 = -1 Dla punktu P2: jeśli x=-1 to y = w1 * x + w2 = -1 * 1 + 3 = 2 Dla punktu P3: jeśli x=1 to y = w1 * x + w2 = 1 * 1 + 3 = 4 Dla punktu P4: jeśli x=3 to y = w1 * x + w2 = 3 * 1 + 3 = 6 Skoro punkt 1: sgn(y) = sgn(-1) = -1 Skoro punkt 2: sgn(y) = sgn(2) = 1 Skoro punkt 3: sgn(y) = sgn(4) = 1 Skoro punkt 4: sgn(y) = sgn(6) =1 Jeśli w2 = [1,3] to prosta o równaniu: y = 1 * x + 3 A tak to wygląda graficznie: Okazuje się, że tak otrzymana linia decyzyjna (zaznaczona grubą krechą) zapewnia nam poprawne klasyfikowanie wszystkich wzorców. A co zrobid w przeciwnym przypadku, gdy dla jakiegoś wzorca sied zwraca 1 zamiast -1. Odpowiedź jest bardzo prosta: jeżeli jakiś wzorzec znalazł się po dodatniej stronie wykresu, chod nie powinien to jego symetryczne odbicie (względem początku układu współrzędnych) powinno się tam znaleźd. Z tego wynika, że w takim przypadku też trzeba do wektora wag dodad podwojony wektor wzorca, ale z przeciwnym znakiem. Obrazuje to przykład: Przed modyfikacja mamy następującą sytuację (punkt niebieski: 1,1; punkt czerwony 2,1; początkowy wektor wag: [4,-1]):

Nowy wektor wag będzie więc równy: [w]=[4,-1]-[1,1]*2=[2,-3] Graficzna interpretacja: W ten sposób otrzymaliśmy linię decyzyjną, która poprawnie rozpoznaje nam wzrorce. Podsumowując: celem nauczenia neuronu dowolnych wzorców (oczywiście muszą byd liniowo separowalne) należy na wejście neuronu podawad po kolei wszystkie wzorce i sprawdzad, czy oczekiwane wyjście jest równe od otrzymanego. Gdy warunek ten nie jest spełniony należy skorygowad wagi: [w1,w2]nowe=[w1,w2]stare+2*[x,y], gdy otrzymano -1 dla 'dodatniego' wzorca lub [w1,w2]nowe=[w1,w2]stare-2*[x,y], gdy otrzymano 1 dla 'ujemnego' wzorca Można to uogólnid: *w1,w2+nowe=*w1,w2+stare+2*,oczekiwane wyjście-**x,y+ Gdy po n iteracjach okarze się, że wszystkie wzorce zwracają to co powinny możemy zakooczyd naukę neuronu. I mały przykład: Mamy następujące wzorce: - punkty niebieskie: [-1,1+*1,1+, dla których sied ma zwracad -1 - punkt czerwony: *3,1+,dla którego sied ma zwracad 1 Początkowe wartości wag: w1=3,w2=1. Na wykresie wygląda to następująco:

Krok 1 Sied niepoprawnie klasyfikuje punkt 2 - oczekiwane wyjście: -1, otrzymane: 1 Modyfikacja wektora wag: [w]=[3,1]-2*[1,1]=[1,-1] Krok 2 Proszę zauważyd (patrz poprzedni wykres), że punkt 2 leży na lini decyzyjnej. Gdybyśmy mieli trochę inną funkcję aktywacji, która dla sumy ważonej równej 0 zwracałaby -1 to na tym kroku moglibyśmy zakooczyd naukę. Nasza funkcja aktywacji wymaga jednak wartości sumy ważonej ostro mniejszej od zera. Modyfikacja wektora wag: [w]=[1,-1]-2*[1,1]=[-1,-3] Krok 3 Sied niepoprawnie klasyfikuje punkt 3 - oczekiwane wyjście: 1, otrzymane: -1 Modyfikacja wektora wag: [w]=[-1,-3]+2*[3,1]=[5,-1] Krok 4 Sied niepoprawnie klasyfikuje punkt 2 - oczekiwane wyjście: -1, otrzymane: 1 Modyfikacja wektora wag: [w]=[5,-1]-2*[1,1]=[3,-3] Krok 5 Podobna sytuacja jak w kroku 2. Linia decyzyjna przechodzi przez punkt 2. Modyfikacja wektora wag: [w]=[3,-3]-2*[1,1]=[1,-5]

Krok 6 Sied niepoprawnie klasyfikuje punkt 3 - oczekiwane wyjście: 1, otrzymane: -1 Modyfikacja wektora wag: [w]=[1,-5]+2*[3,1]=[7,-3] Krok 7 Sied niepoprawnie klasyfikuje punkt 2 - oczekiwane wyjście: -1, otrzymane: 1 Modyfikacja wektora wag: [w]=[7,-3]-2*[1,1]=[5,-5] Krok 8 I znowu powtarza się sytuacja z kroków 2 i 5 Modyfikacja wektora wag: [w]=[5,-5]-2*[1,1]=[3,-7] Krok 9 Tym oto sposobem otrzymaliśmy prostą, która rozdziela nam punkty niebieskie od czerwonych.