Wstęp do sieci neuronowych laboratorium 01 Organizacja zajęć. Perceptron prosty



Podobne dokumenty
Wstęp do sieci neuronowych, wykład 01 Neuron biologiczny. Model perceptronu prostego.

Wprowadzenie do Sieci Neuronowych Laboratorium 01 Organizacja zajęć. Perceptron.

Wstęp do sieci neuronowych, wykład 01 Neuron biologiczny. Model perceptronu prostego.

Wprowadzenie do Sieci Neuronowych Laboratorium 01 Organizacja zajęć. Perceptron.

Wprowadzenie do Sieci Neuronowych lista zadań 1

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

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

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

Wstęp do sieci neuronowych, wykład 01 Neuron biologiczny. Model perceptronu prostego.

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

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

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

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

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

Wprowadzenie do Sieci Neuronowych Laboratorium 04 Algorytmy konstrukcyjne dla sieci skierowanych

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

Wprowadzenie do Sieci Neuronowych Laboratorium 02 Perceptron prosty cd

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

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

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

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

Uczenie sieci neuronowych i bayesowskich

Wstęp do sieci neuronowych, wykład 12 Wykorzystanie sieci rekurencyjnych w optymalizacji grafowej

Elektroniczne materiały dydaktyczne do przedmiotu Wstęp do Sieci Neuronowych

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

KARTA MODUŁU KSZTAŁCENIA

synaptycznych wszystko to waży 1.5 kg i zajmuje objętość około 1.5 litra. A zużywa mniej energii niż lampka nocna.

Wstęp do Sieci Neuronowych

Nowoczesne metody nauczania przedmiotów ścisłych

Wykład wprowadzający

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

Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

Wstęp do sztucznych sieci neuronowych

Podstawy Sztucznej Inteligencji (PSZT)

Wstęp do sieci neuronowych, wykład 10 Sieci rekurencyjne. Autoasocjator Hopfielda

wiedzy Sieci neuronowe

Elementy inteligencji obliczeniowej

ID1SII4. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

Zagadnienia optymalizacji i aproksymacji. Sieci neuronowe.

Sieci neuronowe i algorytmy uczenia Czyli co i jak andrzej.rusiecki.staff.iiar.pwr.wroc.pl s.

Sieci neuronowe do przetwarzania informacji / Stanisław Osowski. wyd. 3. Warszawa, Spis treści

Wstęp do sieci neuronowych, wykład 9 Sieci rekurencyjne. Autoasocjator Hopfielda

Zastosowania sieci neuronowych

Temat: Sieci neuronowe oraz technologia CUDA

Wprowadzenie do Sieci Neuronowych Laboratorium 05 Algorytm wstecznej propagacji błędu

Inteligentne systemy informacyjne

PRZEWODNIK PO PRZEDMIOCIE

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

KARTA MODUŁU KSZTAŁCENIA

PRZEWODNIK PO PRZEDMIOCIE

Metody Sztucznej Inteligencji II

PRZEWODNIK PO PRZEDMIOCIE

Rozdział 1 Sztuczne sieci neuronowe. Materiały do zajęć dydaktycznych - na podstawie dokumentacji programu Matlab opracował Dariusz Grzesiak

Zapisywanie algorytmów w języku programowania

Wstęp do sieci neuronowych, wykład 09, Walidacja jakości uczenia. Metody statystyczne.

Sieci neuronowe i ich ciekawe zastosowania. Autor: Wojciech Jamrozy III rok SMP / Informatyka

Inżynieria danych I stopień Praktyczny Studia stacjonarne Wszystkie specjalności Katedra Inżynierii Produkcji Dr Małgorzata Lucińska

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

Zastosowanie optymalizacji rojem cząstek (PSO) w procesie uczenia wielowarstwowej sieci neuronowej w problemie lokalizacyjnym

Zastosowania sieci neuronowych

Sztuczne sieci neuronowe (SNN)

IMPLEMENTACJA SIECI NEURONOWYCH MLP Z WALIDACJĄ KRZYŻOWĄ

Zastosowanie sieci neuronowych w problemie klasyfikacji wielokategorialnej. Adam Żychowski

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

Wprowadzenie do Sieci Neuronowych Laboratorium 06 Algorytm wstecznej propagacji błędu

Wstęp do Sieci Neuronowych

Zastosowanie optymalizacji rojem cząstek (PSO) w procesie uczenia wielowarstwowej sieci neuronowej w problemie lokalizacyjnym, kontynuacja badań

Systemy uczące się Lab 4

Sieci neuronowe jako sposób na optymalizacje podejmowanych decyzji. Tomasz Karczyoski Wydział W-08 IZ

Metody numeryczne. materiały do wykładu dla studentów

SIECI NEURONOWE Liniowe i nieliniowe sieci neuronowe

Techniki uczenia maszynowego nazwa przedmiotu SYLABUS

Sztuczne sieci neuronowe. Krzysztof A. Cyran POLITECHNIKA ŚLĄSKA Instytut Informatyki, p. 335

MATLAB Neural Network Toolbox przegląd

ZACHODNIOPOMORSKI UNIWERSYTET TECHNOLOGICZNY W SZCZECINIE

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

Deep Learning na przykładzie Deep Belief Networks

Uczenie sieci typu MLP

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

WYKORZYSTANIE SIECI NEURONOWEJ DO BADANIA WPŁYWU WYDOBYCIA NA SEJSMICZNOŚĆ W KOPALNIACH WĘGLA KAMIENNEGO. Stanisław Kowalik (Poland, Gliwice)

SIECI NEURONOWE Wprowadzenie

sieci jednowarstwowe w MATLABie LABORKA Piotr Ciskowski

Podstawy sztucznej inteligencji

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

Informatyka I stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Uniwersytet Mikołaja Kopernika. Wydział Matematyki i Informatyki. Jarosław Piersa piersaj(at)mat.uni.torun.pl

Literatura. Sztuczne sieci neuronowe. Przepływ informacji w systemie nerwowym. Budowa i działanie mózgu

KARTA KURSU. Kod Punktacja ECTS* 1

1. Logika, funkcje logiczne, preceptron.

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

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Optymalizacja optymalizacji

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

Inteligentne systemy przeciw atakom sieciowym

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

Wstęp do sieci neuronowych, wykład 13-14, Walidacja jakości uczenia. Metody statystyczne.

WYKŁAD 4 PLAN WYKŁADU. Sieci neuronowe: Algorytmy uczenia & Dalsze zastosowania. Metody uczenia sieci: Zastosowania

Przykładowa prezentacja

DEKOMPOZYCJA HIERARCHICZNEJ STRUKTURY SZTUCZNEJ SIECI NEURONOWEJ I ALGORYTM KOORDYNACJI

Transkrypt:

Wstęp do sieci neuronowych laboratorium 01 Organizacja zajęć. Perceptron prosty Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2012-10-03 Projekt pn. Wzmocnienie potencjału dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych realizowany w ramach Poddziałania 4.1.1 Programu Operacyjnego Kapitał Ludzki

Program przedmiotu Zaliczenie Litaratura 1 Organizacja zajęć Program przedmiotu Zaliczenie Litaratura 2 Perceptrony prosty Uczenie perceptronu 3 rachunkowe programistyczne

O czym będzie Organizacja zajęć Program przedmiotu Zaliczenie Litaratura Sieci neuronowe matematyczne i informatyczne modele dla biologicznych komórek nerwowych i całych sieci nerwowych wraz z ich zastosowaniem w problemach obliczeniowych. Dużo programowania (implementowanie algorytmów), Trochę matematyki, Małe zadania do zaimplementowania na zajęciach (język dowolny, ściągawki będą w Matlabie / Octavie), Programy zaliczeniowe pisane głównie w domu, prezentowane i omawiane na zajęciach,

Program zajęć Organizacja zajęć Program przedmiotu Zaliczenie Litaratura Pojedynczy neuron (model perceptronu prostego, maszyny liniowej, Adaline), Sieci skierowane, algorytmy konstrukcyjne dla sieci skierowanych, Algorytm wstecznej propagacji błędu (BEP), Uczenie bez nauczyciela (samoorganizacja topologiczna, analiza składowych głównych (PCA)), Sieci rekurencyjne (sieć Hopfielda, maszyny Boltzmanna i symulowane wyżarzanie), (*) Wielowartościowe sieci neuronowe, sieci zespolone, (*) Algorytmy genetyczne.

Zaliczenie Organizacja zajęć Program przedmiotu Zaliczenie Litaratura Zaliczenie laboratoriów na podstawie implementowania omawianych algorytmów, Terminowość w oddawaniu zadań, Obecność wymagana!

Zaliczenie Organizacja zajęć Program przedmiotu Zaliczenie Litaratura Każde zadanie jest punktowane za 1 punkt. Dopuszczane są oceny wymierne (czyt. ułamkowe za brzydko napisane zadania) oraz powyżej jednego punktu za wybitnie programy, Podczas sprawdzania programów należy mieć kod źródłowy. Lub prezentacja programu w trakcie zajęć (+0.2p). ocena punkty dst 3p. db 4p. bdb 5p. bdb+ 6p. lub więcej + następny slajd

Wymagania na ocenę BDB+ Program przedmiotu Zaliczenie Litaratura Na ocenę bdb+ wymagane są: zadania z różnych działów, przynajmniej jeden program do końca października, przynajmniej dwa programy do końca listopada, przynajmniej trzy programy do końca stycznia, wszystkie programy przed egzaminem.

Literatura Organizacja zajęć Program przedmiotu Zaliczenie Litaratura R. Rojas Neural Networks, A Systematic Introduction, Springer 1996, P. Peretto, Introduction to Modeling Neural Networks, Cambridge University Press 1994, T. Schreiber, Notatki do wykładu WSN, E. Izhikevich, Dynamical Systems in Neuroscience, 2007 Massachusetts Institute of Technology C. Bishop, Neural Networks for Pattern Recognition, Oxford University Press 1995.

Perceptrony prosty Uczenie perceptronu 1 Organizacja zajęć Program przedmiotu Zaliczenie Litaratura 2 Perceptrony prosty Uczenie perceptronu 3 rachunkowe programistyczne

Dynamika perceptronu Perceptrony prosty Uczenie perceptronu Perceptron układ składający się z n wejść x 1,.., x n, (argumenty do funkcji x i R), n wag w 1,.., w n stowarzyszonych z wejściami w i R, funkcji aktywacji f : R R (funkcja polarna z progiem θ) { +1 s θ f (s) = 1 s < θ

Dynamika perceptronu Perceptrony prosty Uczenie perceptronu Dostając na wejściu x = (x 1,.., x n ), perceptron zwróci wartość: O(x 1,..., x n ) = f ( n { +1 n w i x i ) = i=1 w ix i θ 1 n i=1 w ix i < θ i=1

Model perceptronu Organizacja zajęć Perceptrony prosty Uczenie perceptronu out

Zagadnienie uczenia perceptronu Perceptrony prosty Uczenie perceptronu Dane: Cel: perceptron progowy o n wejściach, n nieznanych wagach w 1,.., w n i progu θ, zbiór k przykładów uczących E (i) = (E (i) (i) 1,...,.E N ), i = 1..k, poprawne odpowiedzi {+1, 1} odpowiadające przykładom uczącym T (1),...,.T (k), znaleźć zestaw wag w 1,.., w n i próg θ, takie aby perceptron klasyfikował poprawnie wszystkie przykłady uczące (lub możliwie najwięcej, gdy nie da się wszystkich)

Perceptrony prosty Uczenie perceptronu Simple Perceptron Learning Algorithm Podstawowy algorytm uczenia: 1 Losujemy wagi w i małe, blisko 0. 2 Wybieramy kolejny (lub losowy zalecane) przykład E (j) i odpowiadającą mu poprawną odpowiedź T (j), 3 Obliczamy O wynik działania sieci na E (j) 4 Obliczamy ERR = T (j) O 5 Jeżeli ERR = 0 (klasyfikacja jest poprawna), to wróć do 2, 6 W przeciwnym wypadku uaktualniamy wszystkie wagi zgodnie ze wzorem η > 0 jest stałą uczenia. w i = w i + η ERR E (j) i θ = θ ERR 7 Jeżeli sieć klasyfikuje poprawnie wszystkie (większość) przykłady, to kończymy, wpw wracamy do 2.

Pocket Learning Algorithm Perceptrony prosty Uczenie perceptronu 1 Losujemy wagi i próg wokół 0, przypisujemy układowi wag zerowy czas życia i zapisujemy go w kieszonce jako rekordzistę, 2 Przebiegamy przykłady losując z listy, 3 Dla wybranego przykładu E (j) sprawdzamy, czy E (j) jest dobrze klasyfikowany (ERR = T (j) O = 0), Jeśli tak, zwiększamy mu czas życia o jeden. Jeżeli jest to wynik lepszy niż u rekordzisty, zapominamy starego rekordzistę i zapisujemy w kieszonce nowy układ wag. Wracamy do 2. Jeśli nie, to korygujemy wagi i próg: w i = w i + η ERR E (j) i θ = θ ERR Nowemu układowi wag przypisujemy zerowy czas życia. Wracamy do 2. 4 Algorytm kończymy po przebiegnięciu odpowiedniej liczby iteracji. Zwracamy najbardziej żywotny zestaw wag.

Perceptrony prosty Uczenie perceptronu Pocket Learning Algorithm with Ratchet 1 Losujemy wagi i próg wokół 0, przypisujemy układowi wag zerowy czas życia i zapisujemy go jako rekordzistę, 2 Przebiegamy przykłady losując z listy, oznaczmy go E (j), 3 Sprawdzamy czy E (j) jest dobrze klasyfikowany ERR = T j O, Jeśli tak, zwiększamy mu czas życia o jeden. Jeżeli jest to wynik lepszy niż u rekordzisty i klasyfikuje on więcej przykładów niż rekordzista, to zapominamy starego rekordzistę i zapisujemy nowy układ wag. Wracamy do 2. Jeśli nie, to korygujemy wagi i próg: w i := w i + η ERR E (j) i θ := θ ERR Nowemu układowi wag przypisujemy zerowy czas życia. Wracamy do 2. 4 Algorytm kończymy po przebiegnięciu odpowiedniej liczby iteracji. Zwracamy najbardziej żywotny zestaw wag.

rachunkowe programistyczne 1 Organizacja zajęć Program przedmiotu Zaliczenie Litaratura 2 Perceptrony prosty Uczenie perceptronu 3 rachunkowe programistyczne

Zadanie 1 Organizacja zajęć rachunkowe programistyczne Wagi perceptronu wynoszą w 1 = +1, w 2 = 0.5, w 3 = 1.4. Próg funkcji aktywującej wynosi θ = +1.5 Jaką odpowiedź zwróci perceptron dla wejścia x = (3, 4, 5)?

Zadanie 2 Organizacja zajęć rachunkowe programistyczne Pokaż, że definicje perceptronu progowego i z biasem są równoważne.

Zadanie 3 Organizacja zajęć rachunkowe programistyczne Pokaż, że oraz σ(s) = 1 1 + exp( s) 2σ(s) 1 = 1 exp( s) 1 + exp( s) σ (s) = σ(s)(1 σ(s))

Zadanie 1. Klasyfikacja punktów rachunkowe programistyczne Napisz program, który nauczy perceptron klasyfikacji na zadanej liście przykładów (wyklikanych lub z pliku). Plik może być listą punktów (na R 2, R 3, R 4 ) oraz poprawną klasyfikacją punktu. Klasyfikacja binarna: 0 lub 1 (+1, -1), Możliwość wczytania (lub wyklikania) parametrów innych punktów (tj. z poza listy uczącej) i wyświetlenia ich wraz z oznaczeniem klasy, Informacja o oczekiwanej (z listy) jak i faktycznej (tj. zwróconej przez perceptron) klasyfikacji, Podstawowe statystyki poprawności działania (np. procent poprawnie klasyfikowanych przykładów), Wykres prostej / płaszczyzny separującej.

rachunkowe programistyczne Zadanie 2. Rozpoznawanie cyfr / liter / obrazów Napisz program, który wykorzystuje kilka (-naście) perceptronów (lub maszynę liniową) do rozpoznawania cyfr lub liter. Wskazówki: Cyfry powinny być wyświetlane jako układy pikseli na matrycy o niewielkich wymiarach, Program dodatkowo powinien mieć możliwość wyklikania cyfry i automatycznej klasyfikacji.

rachunkowe programistyczne Zadanie 3. Neuron Hodgkina-Huxleya (dla ambitnych) Zapoznaj się z modelem komórki neuronowej opisanym w terminach układów dynamicznych. Informacje o modelu można znaleźć w rozdziale drugim książki E. Izhikevich Dynamical Systems in Neuroscience, 2007 MIT Press. Napisz program symulujący dynamikę neuronu Hodgkina-Huxleya.